top
1100px
classic

/*BOXES*/

html body.tc-body .bluebox {display:block;background-color:#eef;padding:5px;padding-left:20px;padding-top:10px;margin-top:5px;margin-bottom:5px;width:95%;color:#000;}

html body.tc-body .graybox {display:block;background-color:#eee;padding:5px;padding-left:20px;padding-top:10px;margin-top:5px;margin-bottom:5px;width:95%;color:#000;}

body p {<<colour foreground>>;}
code {color: #b0a;background-color:#eee;}

/*TIGHT NOTES*/

html body.tc-body h1, html body.tc-body h2, html body.tc-body h3, html body.tc-body h4 { margin-top: 0.3em; margin-bottom: 0.3em; }

/*FONT SUBTITLES*/

.serif {font-family: 'Arial', sans-serif; color: <<colour tiddler-editor-border>>font-size:10pt;}

html body.tc-body .serif a.tc-tiddlylink-external {font-family: 'Arial', sans-serif;font-size:12pt; line-height:normal;font-weight:normal;color:#666;}

/*FONT STUFF (colors)*/

html body.tc-body .lightgraybk {background:#eee;padding:1px 4px px 4px;margin-bottom:2px;font-family:'Arial', sans-serif;}

.red {color:red;}
html body.tc-body .blue a {color:blue;}

/*FONT STUFF SOURCES*/

html body.tc-body .source {color:#777;font-size:10pt;}

/*ICON COLORS*/

html body.tc-body .tc-image-edit-button {stroke: white;fill:#555;}
html body.tc-body .tc-image-chevron-up {stroke: white;fill:#ccc;}
html body.tc-body .tc-image-chevron-down {stroke: white;fill:#ccc;}
html body.tc-body .tc-image-fold-button {stroke: white;fill:#ccc;}
html body.tc-body .tc-image-close-button {stroke: white;fill:#555;}
html body.tc-body .tc-image-unfold-button {stroke: white;fill:#ccc;}
html body.tc-body .tc-image-preview-open {stroke: white;fill:#f29;font-size:150%;}
html body.tc-body .tc-image-delete-button {stroke: white;fill:#ff2222;}
html body.tc-body .tc-image-cancel-button {stroke: white;fill:#ffdd55;}
html body.tc-body .tc-image-done-button {stroke: white;fill:#094;}

/*INDENTING*/

html body.tc-body .indent1 {margin-left:1.5em;display:block;}

/*LINKS*/

html body.tc-body a.tc-tiddlylink {text-decoration: none;font-style: normal;font-weight: normal;} 
html body.tc-body a.tc-tiddlylink-external {text-decoration: none;font-weight: normal;}
html body.tc-body a.tc-tiddlylink-visited {text-decoration: none;font-weight: normal;}

html body.tc-body .source a.tc-tiddlylink-external {font-weight: normal;font-size:10pt;}

/*LISTS BASIC*/

html body.tc-body ul li {color: <<colour foreground>>;}
html body.tc-body ol li {color:<<colour foreground>>;}

/*TIDDLER TITLES*/

.tc-tiddler-missing .tc-title { font-style: normal; font-weight: bold; }

/*VIEWTEMPLATE FONT SIZE*/

html body.tc-body .viewtemplatebigtext {font-size:110%;}

/*HIDE SECTIONS FOR PRINTING*/

@media print {#tc-page-background {display: none ! important;}} 
@media print {.tc-tags-wrapper {display: none ! important;}} 

 @media print { body.tc-body {background-color: transparent;}}
 @media print {.tc-image-chevron-up {display: none ! important;}} 
 @media print {.tc-image-chevron-down {display: none ! important;}} 
 @media print {button.sidebar-toggle {display: none ! important;}} 
@media print {.hideprint {display: none ! important;}} 
@media print {.tc-btn-invisible {display: none ! important;}} 

@media print {

.story-river {
margin: 0;
padding: 0;
}

html body.tc-body .tc-tiddler-frame {
margin: 0;
border-bottom: 1px solid #fff;
padding: 5px;}

html body.tc-body a.tc-tiddlylink-external:hover {
border: 1px solid <<colour tiddler-border>>;
}

html body.tc-body .tc-tiddler-info {
padding: 14px 42px 14px 42px;
background-color: <<colour tiddler-info-background>>;}

}
<$vars journalTitleTemplate={{$:/config/NewJournal/Title}} journalTags={{$:/config/NewJournal/Tags}} journalText="">
<$wikify name="journalTitle" text="""<$macrocall $name="now" format=<<journalTitleTemplate>>/>""">
<$reveal type="nomatch" state=<<journalTitle>> text="">
<$action-sendmessage $message="tm-new-tiddler" title=<<journalTitle>> tags="" text={{{ [<journalTitle>get[]] }}}/>
</$reveal>
<$reveal type="match" state=<<journalTitle>> text="">
<$action-sendmessage $message="tm-new-tiddler" title=<<journalTitle>> tags="" text=<<journalText>>/>
</$reveal>
</$wikify>
</$vars>
<$button class="tc-btn-invisible" popup="$:/SamplePopupState">{{$:/core/images/chevron-down}}</$button>

<$reveal type="popup" state="$:/SamplePopupState" class="tc-tiddler-body tc-drop-down tc-popup-keep">

<$checkbox tiddler="$:/core/ui/EditTemplate/title" tag="$:/tags/EditTemplate"> title</$checkbox><br>
<$checkbox tiddler="$:/core/ui/EditTemplate/tags" tag="$:/tags/EditTemplate"> tags</$checkbox><br>
<$checkbox tiddler="$:/core/ui/EditTemplate/type" tag="$:/tags/EditTemplate"> type</$checkbox><br>
<$checkbox tiddler="$:/core/ui/EditTemplate/fields" tag="$:/tags/EditTemplate"> fields</$checkbox><br>
<$checkbox tiddler="$:/config/TextEditor/EnableToolbar" field="text" checked="yes" unchecked="no" default="no"> toolbar</$checkbox><br>
<$checkbox tiddler="$:/.giffmex/EditTemplate/custom" tag="$:/tags/EditTemplate"> custom</$checkbox>

''Open / close the sidebar:'' <$list filter="[[$:/state/sidebar]get[text]] +[else[yes]!match[no]]" variable="ignore"><$button set="$:/state/sidebar" setTo="no" tooltip={{$:/language/Buttons/HideSideBar/Hint}} aria-label={{$:/language/Buttons/HideSideBar/Caption}} class="tc-btn-invisible">{{$:/core/images/chevron-right}}</$button>
</$list><$list filter="[[$:/state/sidebar]get[text]] +[else[yes]match[no]]" variable="ignore">
<$button set="$:/state/sidebar" setTo="yes" tooltip={{$:/language/Buttons/ShowSideBar/Hint}} aria-label={{$:/language/Buttons/ShowSideBar/Caption}} class="tc-btn-invisible">{{$:/core/images/chevron-left}}</$button>
</$list>

''Click the link below to edit the''<br> [[Custom area|$:/.giffmex/EditTemplate/custom]]

{{$:/core/ui/EditorToolbar/editor-height-dropdown}}

</$reveal>
"""
This is where you can add your own items you want visible in the edit template. For example:

Grab symbol code: e.g.,  &#9830; `&#9830;`  &#9733; `&#9733;`

Grab snippets: e.g., `tiddlywiki --rendertiddlers [!is[system]] $:/core/templates/static.tiddler.html static text/plain --rendertiddler $:/core/templates/static.template.css static/static.css text/plain`
"""
<br>
toolbar
\define tagreset2() 
<$list filter="[tag[$:/giffmex/titleview]sort[created]] -[[$(currentTiddler)$]]" variable="removeme">
<$action-listops  $tiddler=<<removeme>> $tags="+[remove[$:/tags/ViewTemplate]]"/>
</$list>
<$action-deletefield dummy/>
\end

\define switchStoryView(storyview,default)
<$select tiddler='$storyview$' default='$default$'>
<option value="zoomin"><$text text='one tiddler only'/></option>
<option value="classic"><$text text='multiple tiddlers'/></option>
</$select>
\end

''Choose how to view titles:''

<$list filter="[tag[$:/giffmex/titleview]sort[caption]]">

<$list filter="[all[current]tag[$:/tags/ViewTemplate]]">
<$checkbox field=dummy checked="yes" unchecked="yes" default="yes"></$checkbox>
<$view field="caption"/><br/> 
</$list>

<$list filter="[all[current]!tag[$:/tags/ViewTemplate]]">
<$checkbox tag="$:/tags/ViewTemplate" xinvertTag="yes" checkactions=<<tagreset2>>/> <$view field="caption"/><br/> 
</$list>

</$list>
<br>

''Choose how to view tiddlers in each column''

Left column: <<switchStoryView $:/view zoomin>>

Right column: <<switchStoryView $:/_sq/Stories/config/Story2-storyview classic>>

''Left column to right column width ratio:''

{{$:/config/sq/Stories/storyRiverRatio}} : <$text text={{{[[100]subtract{$:/config/sq/Stories/storyRiverRatio}]}}}/>

<$range tiddler="$:/config/sq/Stories/storyRiverRatio" min="20" max="80" default="50" increment="5"/> 
<!--
''Right column font-size''

Tiddler: {{$:/config/sq/Stories/story2/fontsize-title}}px

<$range tiddler="$:/config/sq/Stories/story2/fontsize-title" min="6" max="40" default="14" increment="1"/> 

Body: {{$:/config/sq/Stories/story2/fontsize-body}}px

<$range tiddler="$:/config/sq/Stories/story2/fontsize-body" min="6" max="40" default="15" increment="1"/> 

-->
\define tagreset() 
<$list filter="[tag[$:/giffmex/refs]sort[created]] -[[$(currentTiddler)$]]" variable="removeme">
<$action-listops  $tiddler=<<removeme>> $tags="+[remove[$:/tags/ViewTemplate]]"/>
</$list>
<$action-deletefield dummy/>
\end

''Choose how to view references:''

<$list filter="[tag[$:/giffmex/refs]sort[caption]]">
<$list filter="[all[current]tag[$:/tags/ViewTemplate]]">
<$checkbox field=dummy checked="yes" unchecked="yes" default="yes"></$checkbox>
<$view field="caption"/><br/> 
</$list>
<$list filter="[all[current]!tag[$:/tags/ViewTemplate]]">
<$checkbox tag="$:/tags/ViewTemplate" xinvertTag="yes" checkactions=<<tagreset>>/> <$view field="caption"/><br/> 
</$list>
</$list>

{{Hint for Muffin tutorial}}

<br>Note that the gray boxes in the context and transclude options are links to their respective tiddlers.
{
    "Hint for Muffin tutorial": "hide",
    "Muffin 1": "hide",
    "Muffin 2": "hide"
}
\define delete-edittemplate-state-tiddlers() <$action-deletetiddler $filter="[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<newFieldNameInputTiddler>] [<newFieldNameSelectionTiddler>] [<newTagNameTiddler>] [<newTagNameInputTiddler>] [<newTagNameSelectionTiddler>] [<typeInputTiddler>] [<typeSelectionTiddler>]"/>
\define save-tiddler-actions()
<$action-sendmessage $message="tm-add-tag" $param={{{ [<newTagNameTiddler>get[text]] }}}/>
<$action-sendmessage $message="tm-add-field" $name={{{ [<newFieldNameTiddler>get[text]] }}} $value={{{ [<newFieldValueTiddler>get[text]] }}}/>
<<delete-edittemplate-state-tiddlers>>
<$action-sendmessage $message="tm-save-tiddler"/>
\end
\define cancel-delete-tiddler-actions(message)
<<delete-edittemplate-state-tiddlers>>
<$action-sendmessage $message="tm-$message$-tiddler"/>
<$list filter="[all[current]links[]is[missing]]"><$action-createtiddler $basetitle=<<currentTiddler>>/></$list>

\end
<div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class={{{ tc-tiddler-frame tc-tiddler-edit-frame [<currentTiddler>is[tiddler]then[tc-tiddler-exists]] [<currentTiddler>is[missing]!is[shadow]then[tc-tiddler-missing]] [<currentTiddler>is[shadow]then[tc-tiddler-exists tc-tiddler-shadow]] [<currentTiddler>is[system]then[tc-tiddler-system]] [{!!class}] [<currentTiddler>tags[]encodeuricomponent[]addprefix[tc-tagged-]] +[join[ ]] }}}>
<$fieldmangler>
<$vars storyTiddler=<<currentTiddler>> newTagNameTiddler=<<qualify "$:/temp/NewTagName">> newFieldNameTiddler=<<qualify "$:/temp/NewFieldName">> newFieldValueTiddler=<<qualify "$:/temp/NewFieldValue">> newFieldNameInputTiddler=<<qualify "$:/temp/NewFieldName/input">> newFieldNameSelectionTiddler=<<qualify "$:/temp/NewFieldName/selected-item">> newTagNameInputTiddler=<<qualify "$:/temp/NewTagName/input">> newTagNameSelectionTiddler=<<qualify "$:/temp/NewTagName/selected-item">> typeInputTiddler=<<qualify "$:/temp/Type/input">> typeSelectionTiddler=<<qualify "$:/temp/Type/selected-item">>>
<$keyboard key="((cancel-edit-tiddler))" actions=<<cancel-delete-tiddler-actions "cancel">>>
<$keyboard key="((save-tiddler))" actions=<<save-tiddler-actions>>>
<$list filter="[all[shadows+tiddlers]tag[$:/tags/EditTemplate]!has[draft.of]]" variable="listItem">
<$set name="tv-config-toolbar-class" filter="[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]">
<$transclude tiddler=<<listItem>>/>
</$set>
</$list>
</$keyboard>
</$keyboard>
</$vars>
</$fieldmangler>
</div>
<span class="viewtemplatebigtext">

<$reveal type="nomatch" stateTitle=<<folded-state>> text="hide" tag="div" retain="yes" animate="yes">

<hr>

<$vars searchme=<<currentTiddler>> searchspx={{{ [<currentTiddler>escaperegexp[]]}}} >

<$list filter="[!is[system]all[current]backlinks[]!tag[outlines]!tag[hide]sort[title]] -[is[current]]"><$link><$view field="title"/></$link><span class="indent1"><$link><span class="graybox"><$context term=<<searchme>> /></span></$link></span></$list>
</$vars>

</$reveal>

</span>

<span class="viewtemplatebigtext">

<$reveal type="nomatch" stateTitle=<<folded-state>> text="hide" tag="div" retain="yes" animate="yes">

<hr>

<$vars searchme=<<currentTiddler>> searchspx={{{ [<currentTiddler>escaperegexp[]]}}} >

<$list filter="[!is[system]all[current]backlinks[]!tag[hide]sort[title]] -[is[current]]"><$link><$view field="title" /></$link><br></$list>
</$vars>

</$reveal>

</span>
<span class="viewtemplatebigtext">

<$reveal type="nomatch" stateTitle=<<folded-state>> text="hide" tag="div" retain="yes" animate="yes">

<hr>

<$vars searchme=<<currentTiddler>> searchspx={{{ [<currentTiddler>escaperegexp[]]}}} >

<<tabs '[!is[system]all[current]backlinks[]!tag[hide]sort[title]] -[is[current]]' '' '$:/state/tab/strolltabs' 'tc-vertical'>>
</$vars>

</$reveal>

</span>
<span class="viewtemplatebigtext">

<$reveal type="nomatch" stateTitle=<<folded-state>> text="hide" tag="div" retain="yes" animate="yes">

<hr>

<$list filter="[!is[system]all[current]backlinks[]!tag[hide]!tag[outlines]sort[title]] -[is[current]]"><$link><$view field="title"/></$link><span class="indent1"><$link><span class="graybox"><$transclude field="text" mode="block" /></span></$link></span></$list>

</$reveal>

</span>
<span class="viewtemplatebigtext">

<$reveal type="nomatch" stateTitle=<<folded-state>> text="hide" tag="div" retain="yes" animate="yes">

<hr>

<$list filter="[!is[system]all[current]backlinks[]!tag[hide]!tag[outlines]sort[title]] -[is[current]]"><$link><$view field="title"/></$link>
<$reveal type="nomatch" stateTitle="$:/.giffmex/TiddlyBlinkFoldData" stateIndex=<<currentTiddler>> text="show">
<$button class=<<tv-config-toolbar-class>> setTitle="$:/.giffmex/TiddlyBlinkFoldData" setIndex=<<currentTiddler>> setTo="show">{{$:/core/images/unfold-button}}</$button><br/>
</$reveal>
<$reveal type="match" stateTitle="$:/.giffmex/TiddlyBlinkFoldData" stateIndex=<<currentTiddler>> text="show">
<$button class=<<tv-config-toolbar-class>> setTitle="$:/.giffmex/TiddlyBlinkFoldData" setIndex=<<currentTiddler>> setTo="hide">{{$:/core/images/fold-button}}</$button>
<span class="indent1">
<$link><span class="graybox">

<$transclude field="text" mode="block" /></span></$link></span>
</$reveal>
</$list>

</$reveal>

</span>
\define title-styles()
fill:$(foregroundColor)$;
\end
\define config-title()
$:/config/ViewToolbarButtons/Visibility/$(listItem)$
\end
<div class="tc-tiddler-title">
<div class="tc-titlebar">
<span class="tc-tiddler-controls">
<$list filter="[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]" variable="listItem"><$reveal type="nomatch" state=<<config-title>> text="hide"><$set name="tv-config-toolbar-class" filter="[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]"><$transclude tiddler=<<listItem>>/></$set></$reveal></$list>
</span>
<$set name="tv-wikilinks" value={{$:/config/Tiddlers/TitleLinks}}>
<$link>
<$set name="foregroundColor" value={{!!color}}>
<span class="tc-tiddler-title-icon" style=<<title-styles>>>
<$transclude tiddler={{!!icon}}/>
</span>
</$set>
<$list filter="[all[current]removeprefix[$:/]]">
<h2 class="tc-title" title={{$:/language/SystemTiddler/Tooltip}}>
<span class="tc-system-title-prefix">$:/</span><$text text=<<currentTiddler>>/>
</h2>
</$list>
<br><$list filter="[all[current]!prefix[$:/]]">
<h2 class="tc-title">
<$view field="title"/>
</h2>
</$list>
</$link>
</$set>
</div>

<$reveal type="nomatch" text="" default="" state=<<tiddlerInfoState>> class="tc-tiddler-info tc-popup-handle" animate="yes" retain="yes">

<$list filter="[all[shadows+tiddlers]tag[$:/tags/TiddlerInfoSegment]!has[draft.of]] [[$:/core/ui/TiddlerInfo]]" variable="listItem"><$transclude tiddler=<<listItem>> mode="block"/></$list>

</$reveal>
</div>
\define button()
<$button  tooltip={{$:/language/Buttons/NewHere/Hint}}  class=<<tv-config-toolbar-class>> actions=<<actions>>>
{{$:/core/images/new-button}}
</$button>
\end

\define actions()
<$action-sendmessage $message="tm-new-tiddler" title=<<journalTitle>> text="""[[$(tid)$]]"""/>
\end

<$wikify name=tid text=<<currentTiddler>>>
<<button>>
</$wikify>
\whitespace trim

\define journalButtonActions()
<$action-sendmessage $message="tm-new-tiddler" title=<<now """$(journalTitleTemplate)$""">> text="""[[$(tid)$]]""" />
\end

\define journalButtonTags()
[[$(currentTiddlerTag)$]] $(journalTags)$
\end

\define journalButton()
<$button tooltip={{$:/language/Buttons/NewJournalHere/Hint}}
   aria-label={{$:/language/Buttons/NewJournalHere/Caption}}
   class=<<tv-config-toolbar-class>>
   actions=<<journalButtonActions>>>
   <$list filter="[<tv-config-toolbar-icons>match[yes]]">
      {{$:/core/images/new-journal-button}}
   </$list>
   <$list filter="[<tv-config-toolbar-text>match[yes]]">
      <span class="tc-btn-text">
         <$text text={{$:/language/Buttons/NewJournalHere/Caption}}/>
      </span>
   </$list>
</$button>
\end

<$set name="journalTitleTemplate" value={{$:/config/NewJournal/Title}}>
<$set name="tid" value=<<currentTiddler>>>
<<journalButton>>
</$set>
</$set>
Built from branch 'tiddlywiki-com' at commit 1a6be5ae09de1289727e9a981560d295cf8f361a of https://github.com/Jermolene/TiddlyWiki5.git at 2020-04-15 15:19:44 UTC
yes
400
Contents
comptext
yes
yes
top
top
YYYY / 0MM / 0DD / 0hh:0mm:0ss /
show
show
reveal
hide
show
show
show
yes
yes
50
no
tc-btn-rounded
$:/.giffmex/ui/EditTemplate
reveal
hide
reveal
hide
<div class="tc-control-panel">
<$macrocall $name="tabs" tabsList="[all[shadows+tiddlers]tag[$:/tags/ControlPanel]!has[draft.of]]" default="$:/core/ui/ControlPanel/Info" explicitState="$:/state/tab-1749438307"/>
</div>






{
    "tiddlers": {
        "$:/Acknowledgements": {
            "title": "$:/Acknowledgements",
            "text": "TiddlyWiki incorporates code from these fine OpenSource projects:\n\n* [[The Stanford Javascript Crypto Library|http://bitwiseshiftleft.github.io/sjcl/]]\n* [[The Jasmine JavaScript Test Framework|http://pivotal.github.io/jasmine/]]\n* [[Normalize.css by Nicolas Gallagher|http://necolas.github.io/normalize.css/]]\n\nAnd media from these projects:\n\n* World flag icons from [[Wikipedia|http://commons.wikimedia.org/wiki/Category:SVG_flags_by_country]]\n"
        },
        "$:/core/copyright.txt": {
            "title": "$:/core/copyright.txt",
            "type": "text/plain",
            "text": "TiddlyWiki created by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright (c) 2004-2007, Jeremy Ruston\nCopyright (c) 2007-2020, UnaMesa Association\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n* Redistributions of source code must retain the above copyright notice, this\n  list of conditions and the following disclaimer.\n\n* Redistributions in binary form must reproduce the above copyright notice,\n  this list of conditions and the following disclaimer in the documentation\n  and/or other materials provided with the distribution.\n\n* Neither the name of the copyright holder nor the names of its\n  contributors may be used to endorse or promote products derived from\n  this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
        },
        "$:/core/icon": {
            "title": "$:/core/icon",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path d=\"M64 0l54.56 32v64L64 128 9.44 96V32L64 0zm21.127 95.408c-3.578-.103-5.15-.094-6.974-3.152l-1.42.042c-1.653-.075-.964-.04-2.067-.097-1.844-.07-1.548-1.86-1.873-2.8-.52-3.202.687-6.43.65-9.632-.014-1.14-1.593-5.17-2.157-6.61-1.768.34-3.546.406-5.34.497-4.134-.01-8.24-.527-12.317-1.183-.8 3.35-3.16 8.036-1.21 11.44 2.37 3.52 4.03 4.495 6.61 4.707 2.572.212 3.16 3.18 2.53 4.242-.55.73-1.52.864-2.346 1.04l-1.65.08c-1.296-.046-2.455-.404-3.61-.955-1.93-1.097-3.925-3.383-5.406-5.024.345.658.55 1.938.24 2.53-.878 1.27-4.665 1.26-6.4.47-1.97-.89-6.73-7.162-7.468-11.86 1.96-3.78 4.812-7.07 6.255-11.186-3.146-2.05-4.83-5.384-4.61-9.16l.08-.44c-3.097.59-1.49.37-4.82.628-10.608-.032-19.935-7.37-14.68-18.774.34-.673.664-1.287 1.243-.994.466.237.4 1.18.166 2.227-3.005 13.627 11.67 13.732 20.69 11.21.89-.25 2.67-1.936 3.905-2.495 2.016-.91 4.205-1.282 6.376-1.55 5.4-.63 11.893 2.276 15.19 2.37 3.3.096 7.99-.805 10.87-.615 2.09.098 4.143.483 6.16 1.03 1.306-6.49 1.4-11.27 4.492-12.38 1.814.293 3.213 2.818 4.25 4.167 2.112-.086 4.12.46 6.115 1.066 3.61-.522 6.642-2.593 9.833-4.203-3.234 2.69-3.673 7.075-3.303 11.127.138 2.103-.444 4.386-1.164 6.54-1.348 3.507-3.95 7.204-6.97 7.014-1.14-.036-1.805-.695-2.653-1.4-.164 1.427-.81 2.7-1.434 3.96-1.44 2.797-5.203 4.03-8.687 7.016-3.484 2.985 1.114 13.65 2.23 15.594 1.114 1.94 4.226 2.652 3.02 4.406-.37.58-.936.785-1.54 1.01l-.82.11zm-40.097-8.85l.553.14c.694-.27 2.09.15 2.83.353-1.363-1.31-3.417-3.24-4.897-4.46-.485-1.47-.278-2.96-.174-4.46l.02-.123c-.582 1.205-1.322 2.376-1.72 3.645-.465 1.71 2.07 3.557 3.052 4.615l.336.3z\" fill-rule=\"evenodd\"/></svg>"
        },
        "$:/core/images/add-comment": {
            "title": "$:/core/images/add-comment",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-add-comment tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 56H36a8 8 0 100 16h20v20a8 8 0 1016 0V72h20a8 8 0 100-16H72V36a8 8 0 10-16 0v20zm-12.595 58.362c-6.683 7.659-20.297 12.903-36.006 12.903-2.196 0-4.35-.102-6.451-.3 9.652-3.836 17.356-12.24 21.01-22.874C8.516 94.28 0 79.734 0 63.5 0 33.953 28.206 10 63 10s63 23.953 63 53.5S97.794 117 63 117c-6.841 0-13.428-.926-19.595-2.638z\"/></svg>"
        },
        "$:/core/images/advanced-search-button": {
            "title": "$:/core/images/advanced-search-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-advanced-search-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M74.565 87.985A47.776 47.776 0 0148 96C21.49 96 0 74.51 0 48S21.49 0 48 0s48 21.49 48 48c0 9.854-2.97 19.015-8.062 26.636l34.347 34.347a9.443 9.443 0 010 13.36 9.446 9.446 0 01-13.36 0l-34.36-34.358zM48 80c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32z\"/><circle cx=\"48\" cy=\"48\" r=\"8\"/><circle cx=\"28\" cy=\"48\" r=\"8\"/><circle cx=\"68\" cy=\"48\" r=\"8\"/></g></svg>"
        },
        "$:/core/images/auto-height": {
            "title": "$:/core/images/auto-height",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-auto-height tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M67.987 114.356l-.029-14.477a4 4 0 00-2.067-3.494l-15.966-8.813-1.933 7.502H79.9c4.222 0 5.564-5.693 1.786-7.58L49.797 71.572 48.01 79.15h31.982c4.217 0 5.564-5.682 1.795-7.575L49.805 55.517l-1.795 7.575h31.982c4.212 0 5.563-5.67 1.805-7.57l-16.034-8.105 2.195 3.57V35.614l9.214 9.213a4 4 0 105.656-5.656l-16-16a4 4 0 00-5.656 0l-16 16a4 4 0 105.656 5.656l9.13-9.13v15.288a4 4 0 002.195 3.57l16.035 8.106 1.804-7.57H48.01c-4.217 0-5.564 5.682-1.795 7.574l31.982 16.059 1.795-7.575H48.01c-4.222 0-5.564 5.693-1.787 7.579l31.89 15.923 1.787-7.578H47.992c-4.133 0-5.552 5.504-1.933 7.501l15.966 8.813-2.067-3.494.029 14.436-9.159-9.158a4 4 0 00-5.656 5.656l16 16a4 4 0 005.656 0l16-16a4 4 0 10-5.656-5.656l-9.185 9.184zM16 20h96a4 4 0 100-8H16a4 4 0 100 8z\"/></svg>"
        },
        "$:/core/images/blank": {
            "title": "$:/core/images/blank",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-blank tc-image-button\" viewBox=\"0 0 128 128\"/>"
        },
        "$:/core/images/bold": {
            "title": "$:/core/images/bold",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-bold tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M41.146 51.81V21.87h26.353c2.51 0 4.93.21 7.26.628 2.33.418 4.392 1.165 6.185 2.24 1.793 1.076 3.227 2.57 4.302 4.482 1.076 1.913 1.614 4.363 1.614 7.35 0 5.379-1.613 9.263-4.84 11.653-3.227 2.39-7.35 3.586-12.37 3.586H41.146zM13 0v128h62.028a65.45 65.45 0 0016.762-2.151c5.438-1.434 10.278-3.645 14.52-6.633 4.244-2.988 7.62-6.842 10.13-11.563 2.51-4.721 3.764-10.308 3.764-16.762 0-8.008-1.942-14.85-5.826-20.527-3.884-5.677-9.77-9.65-17.658-11.921 5.737-2.75 10.069-6.275 12.997-10.577 2.928-4.303 4.392-9.681 4.392-16.135 0-5.976-.986-10.995-2.958-15.059-1.972-4.063-4.75-7.32-8.336-9.77-3.585-2.45-7.888-4.213-12.907-5.289C84.888.538 79.33 0 73.235 0H13zm28.146 106.129V70.992H71.8c6.095 0 10.995 1.404 14.7 4.212 3.705 2.81 5.558 7.5 5.558 14.073 0 3.347-.568 6.096-1.703 8.247-1.136 2.151-2.66 3.854-4.572 5.11-1.912 1.254-4.123 2.15-6.633 2.688-2.51.538-5.139.807-7.888.807H41.146z\"/></svg>"
        },
        "$:/core/images/cancel-button": {
            "title": "$:/core/images/cancel-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-cancel-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 76.314l-16.97 16.97a7.999 7.999 0 01-11.314 0c-3.118-3.118-3.124-8.19 0-11.313L52.686 65l-16.97-16.97a7.999 7.999 0 010-11.314c3.118-3.118 8.19-3.124 11.313 0L64 53.686l16.97-16.97a7.999 7.999 0 0111.314 0c3.118 3.118 3.124 8.19 0 11.313L75.314 65l16.97 16.97a7.999 7.999 0 010 11.314c-3.118 3.118-8.19 3.124-11.313 0L64 76.314zM64 129c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 1 0 29.654 0 65c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 17 64 17 16 38.49 16 65s21.49 48 48 48z\"/></svg>"
        },
        "$:/core/images/chevron-down": {
            "title": "$:/core/images/chevron-down",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-down tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64.053 85.456a7.889 7.889 0 01-5.6-2.316L2.473 27.16a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0L64.05 66.344l50.382-50.382a7.92 7.92 0 0111.195 0c3.085 3.086 3.092 8.105 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.317z\"/><path d=\"M64.053 124.069a7.889 7.889 0 01-5.6-2.316l-55.98-55.98a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0l50.382 50.382 50.382-50.382a7.92 7.92 0 0111.195 0c3.085 3.086 3.092 8.104 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.316z\"/></g></svg>"
        },
        "$:/core/images/chevron-left": {
            "title": "$:/core/images/chevron-left",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-left tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M47.544 64.053c0-2.027.77-4.054 2.316-5.6l55.98-55.98a7.92 7.92 0 0111.196 0c3.085 3.086 3.092 8.105 0 11.196L66.656 64.05l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.085-8.105 3.092-11.196 0l-55.98-55.98a7.892 7.892 0 01-2.317-5.595z\"/><path d=\"M8.931 64.053c0-2.027.77-4.054 2.316-5.6l55.98-55.98a7.92 7.92 0 0111.196 0c3.085 3.086 3.092 8.105 0 11.196L28.041 64.05l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.085-8.104 3.092-11.196 0l-55.98-55.98a7.892 7.892 0 01-2.316-5.595z\"/></g></svg>"
        },
        "$:/core/images/chevron-right": {
            "title": "$:/core/images/chevron-right",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-right tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M83.456 63.947c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196L64.344 63.95 13.963 13.567a7.92 7.92 0 010-11.195c3.086-3.085 8.105-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.317 5.595z\"/><path d=\"M122.069 63.947c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l50.382-50.382-50.382-50.382a7.92 7.92 0 010-11.195c3.086-3.085 8.104-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.316 5.595z\"/></g></svg>"
        },
        "$:/core/images/chevron-up": {
            "title": "$:/core/images/chevron-up",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-up tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M63.947 44.544c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.105 3.092-11.196 0L63.95 63.656l-50.382 50.382a7.92 7.92 0 01-11.195 0c-3.085-3.086-3.092-8.105 0-11.196l55.98-55.98a7.892 7.892 0 015.595-2.317z\"/><path d=\"M63.947 5.931c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.105 3.092-11.196 0L63.95 25.041 13.567 75.423a7.92 7.92 0 01-11.195 0c-3.085-3.086-3.092-8.104 0-11.196l55.98-55.98a7.892 7.892 0 015.595-2.316z\"/></g></svg>"
        },
        "$:/core/images/clone-button": {
            "title": "$:/core/images/clone-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-clone-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M32.265 96v24.002A7.996 7.996 0 0040.263 128h79.74a7.996 7.996 0 007.997-7.998v-79.74a7.996 7.996 0 00-7.998-7.997H96V48h12.859a2.99 2.99 0 012.994 2.994v57.865a2.99 2.99 0 01-2.994 2.994H50.994A2.99 2.99 0 0148 108.859V96H32.265z\"/><path d=\"M40 56h-7.993C27.588 56 24 52.418 24 48c0-4.41 3.585-8 8.007-8H40v-7.993C40 27.588 43.582 24 48 24c4.41 0 8 3.585 8 8.007V40h7.993C68.412 40 72 43.582 72 48c0 4.41-3.585 8-8.007 8H56v7.993C56 68.412 52.418 72 48 72c-4.41 0-8-3.585-8-8.007V56zM8 0C3.58 0 0 3.588 0 8v80c0 4.419 3.588 8 8 8h80c4.419 0 8-3.588 8-8V8c0-4.419-3.588-8-8-8H8zM19 16A2.997 2.997 0 0016 19.001v57.998A2.997 2.997 0 0019.001 80h57.998A2.997 2.997 0 0080 76.999V19.001A2.997 2.997 0 0076.999 16H19.001z\"/></g></svg>"
        },
        "$:/core/images/close-all-button": {
            "title": "$:/core/images/close-all-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-close-all-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M28 111.314l-14.144 14.143a8 8 0 01-11.313-11.313L16.686 100 2.543 85.856a8 8 0 0111.313-11.313L28 88.686l14.144-14.143a8 8 0 0111.313 11.313L39.314 100l14.143 14.144a8 8 0 01-11.313 11.313L28 111.314zM28 39.314L13.856 53.457A8 8 0 012.543 42.144L16.686 28 2.543 13.856A8 8 0 0113.856 2.543L28 16.686 42.144 2.543a8 8 0 0111.313 11.313L39.314 28l14.143 14.144a8 8 0 01-11.313 11.313L28 39.314zM100 39.314L85.856 53.457a8 8 0 01-11.313-11.313L88.686 28 74.543 13.856A8 8 0 0185.856 2.543L100 16.686l14.144-14.143a8 8 0 0111.313 11.313L111.314 28l14.143 14.144a8 8 0 01-11.313 11.313L100 39.314zM100 111.314l-14.144 14.143a8 8 0 01-11.313-11.313L88.686 100 74.543 85.856a8 8 0 0111.313-11.313L100 88.686l14.144-14.143a8 8 0 0111.313 11.313L111.314 100l14.143 14.144a8 8 0 01-11.313 11.313L100 111.314z\"/></g></svg>"
        },
        "$:/core/images/close-button": {
            "title": "$:/core/images/close-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-close-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M65.086 75.41l-50.113 50.113c-3.121 3.121-8.192 3.126-11.316.002-3.118-3.118-3.123-8.19.002-11.316l50.114-50.114L3.659 13.982C.538 10.86.533 5.79 3.657 2.666c3.118-3.118 8.19-3.123 11.316.002l50.113 50.114L115.2 2.668c3.121-3.121 8.192-3.126 11.316-.002 3.118 3.118 3.123 8.19-.002 11.316L76.4 64.095l50.114 50.114c3.121 3.121 3.126 8.192.002 11.316-3.118 3.118-8.19 3.123-11.316-.002L65.086 75.409z\"/></svg>"
        },
        "$:/core/images/close-others-button": {
            "title": "$:/core/images/close-others-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-close-others-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48zm0-16c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32zm0-16c8.837 0 16-7.163 16-16s-7.163-16-16-16-16 7.163-16 16 7.163 16 16 16z\"/></svg>"
        },
        "$:/core/images/copy-clipboard": {
            "title": "$:/core/images/copy-clipboard",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-copy-clipboard tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"33\" height=\"8\" x=\"40\" y=\"40\" rx=\"4\"/><rect width=\"17\" height=\"8\" x=\"40\" y=\"82\" rx=\"4\"/><rect width=\"17\" height=\"8\" x=\"40\" y=\"54\" rx=\"4\"/><rect width=\"33\" height=\"8\" x=\"40\" y=\"96\" rx=\"4\"/><rect width=\"12\" height=\"8\" x=\"40\" y=\"68\" rx=\"4\"/><path d=\"M40 16H24c-4.419 0-8 3.59-8 8a8.031 8.031 0 000 .01v95.98a8.03 8.03 0 000 .01c0 4.41 3.581 8 8 8h80a7.975 7.975 0 005.652-2.34 7.958 7.958 0 002.348-5.652v-16.016c0-4.414-3.582-7.992-8-7.992-4.41 0-8 3.578-8 7.992V112H32V32h64v8.008C96 44.422 99.582 48 104 48c4.41 0 8-3.578 8-7.992V23.992a7.963 7.963 0 00-2.343-5.651A7.995 7.995 0 00104.001 16H88c0-4.41-3.585-8-8.007-8H48.007C43.588 8 40 11.582 40 16zm4-1.004A4.001 4.001 0 0148 11h32c2.21 0 4 1.797 4 3.996v4.008A4.001 4.001 0 0180 23H48c-2.21 0-4-1.797-4-3.996v-4.008z\"/><rect width=\"66\" height=\"16\" x=\"62\" y=\"64\" rx=\"8\"/><path d=\"M84.657 82.343l-16-16v11.314l16-16a8 8 0 10-11.314-11.314l-16 16a8 8 0 000 11.314l16 16a8 8 0 1011.314-11.314z\"/></g></svg>"
        },
        "$:/core/images/delete-button": {
            "title": "$:/core/images/delete-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-delete-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\" transform=\"translate(12)\"><rect width=\"105\" height=\"16\" y=\"11\" rx=\"8\"/><rect width=\"48\" height=\"16\" x=\"28\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"8\" y=\"16\" rx=\"8\"/><rect width=\"88\" height=\"16\" x=\"8\" y=\"112\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"80\" y=\"16\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"56\" y=\"16\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"32\" y=\"16\" rx=\"8\"/></g></svg>"
        },
        "$:/core/images/done-button": {
            "title": "$:/core/images/done-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-done-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M42.26 111.032c-2.051.001-4.103-.78-5.668-2.345L2.662 74.758a8 8 0 01-.005-11.32c3.118-3.117 8.192-3.12 11.32.007l28.278 28.278 72.124-72.124a8.002 8.002 0 0111.314-.001c3.118 3.118 3.124 8.19 0 11.315l-77.78 77.78a7.978 7.978 0 01-5.658 2.343z\"/></svg>"
        },
        "$:/core/images/down-arrow": {
            "title": "$:/core/images/down-arrow",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-down-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M64.177 100.069a7.889 7.889 0 01-5.6-2.316l-55.98-55.98a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0l50.382 50.382 50.382-50.382a7.92 7.92 0 0111.195 0c3.086 3.086 3.092 8.104 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.316z\"/></svg>"
        },
        "$:/core/images/download-button": {
            "title": "$:/core/images/download-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-download-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48z\" class=\"tc-image-download-button-ring\"/><path d=\"M34.35 66.43l26.892 27.205a4.57 4.57 0 006.516 0L94.65 66.43a4.7 4.7 0 000-6.593 4.581 4.581 0 00-3.258-1.365h-8.46c-2.545 0-4.608-2.087-4.608-4.661v-15.15c0-2.575-2.063-4.662-4.608-4.662H55.284c-2.545 0-4.608 2.087-4.608 4.662v15.15c0 2.574-2.063 4.661-4.608 4.661h-8.46c-2.545 0-4.608 2.087-4.608 4.662a4.69 4.69 0 001.35 3.296z\"/></g></svg>"
        },
        "$:/core/images/edit-button": {
            "title": "$:/core/images/edit-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-edit-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M95.627 10.059l-5.656 5.657 11.313 11.313 5.657-5.656-11.314-11.314zm5.657-5.657l1.966-1.966c3.123-3.122 8.194-3.129 11.319-.005 3.117 3.118 3.122 8.192-.005 11.32l-1.966 1.965-11.314-11.314zm-16.97 16.97l-60.25 60.25a8.12 8.12 0 00-.322.342c-.1.087-.198.179-.295.275-5.735 5.735-10.702 22.016-10.702 22.016s16.405-5.09 22.016-10.702c.095-.096.186-.193.272-.292a8.12 8.12 0 00.345-.325l60.25-60.25-11.314-11.313zM35.171 124.19c6.788-.577 13.898-2.272 23.689-5.348 1.825-.573 3.57-1.136 6.336-2.04 16-5.226 21.877-6.807 28.745-7.146 8.358-.413 13.854 2.13 17.58 8.699a4 4 0 006.959-3.946c-5.334-9.406-13.745-13.296-24.933-12.744-7.875.39-14.057 2.052-30.835 7.533-2.739.894-4.46 1.45-6.25 2.012-19.46 6.112-30.77 7.072-39.597 1.747a4 4 0 10-4.132 6.85c6.333 3.82 13.754 5.12 22.438 4.383z\"/></g></svg>"
        },
        "$:/core/images/erase": {
            "title": "$:/core/images/erase",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-erase tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60.087 127.996l63.015-63.015c6.535-6.535 6.528-17.115-.003-23.646L99.466 17.702c-6.539-6.538-17.117-6.532-23.646-.003L4.898 88.62c-6.535 6.534-6.528 17.115.003 23.646l15.73 15.73h39.456zm-34.95-7.313l-14.324-14.325c-3.267-3.268-3.268-8.564-.008-11.824L46.269 59.07l35.462 35.462-26.15 26.15H25.137z\"/></svg>"
        },
        "$:/core/images/excise": {
            "title": "$:/core/images/excise",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-excise tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 107.314l-2.343 2.343a8 8 0 11-11.314-11.314l16-16a8 8 0 0111.314 0l16 16a8 8 0 11-11.314 11.314L72 107.314v14.284c0 3.536-3.582 6.402-8 6.402s-8-2.866-8-6.402v-14.284zM0 40.007C0 35.585 3.59 32 8 32c4.418 0 8 3.588 8 8.007v31.986C16 76.415 12.41 80 8 80c-4.418 0-8-3.588-8-8.007V40.007zm32 0C32 35.585 35.59 32 40 32c4.418 0 8 3.588 8 8.007v31.986C48 76.415 44.41 80 40 80c-4.418 0-8-3.588-8-8.007V40.007zm48 0C80 35.585 83.59 32 88 32c4.418 0 8 3.588 8 8.007v31.986C96 76.415 92.41 80 88 80c-4.418 0-8-3.588-8-8.007V40.007zm-24-32C56 3.585 59.59 0 64 0c4.418 0 8 3.588 8 8.007v31.986C72 44.415 68.41 48 64 48c-4.418 0-8-3.588-8-8.007V8.007zm56 32c0-4.422 3.59-8.007 8-8.007 4.418 0 8 3.588 8 8.007v31.986c0 4.422-3.59 8.007-8 8.007-4.418 0-8-3.588-8-8.007V40.007z\"/></svg>"
        },
        "$:/core/images/export-button": {
            "title": "$:/core/images/export-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-export-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.003 128H119.993a7.984 7.984 0 005.664-2.349v.007A7.975 7.975 0 00128 120V56c0-4.418-3.59-8-8-8-4.418 0-8 3.58-8 8v56H16V56c0-4.418-3.59-8-8-8-4.418 0-8 3.58-8 8v64c0 4.418 3.59 8 8 8h.003zm48.62-100.689l-8.965 8.966c-3.125 3.125-8.195 3.13-11.319.005-3.118-3.118-3.122-8.192.005-11.319L58.962 2.346A7.986 7.986 0 0164.625 0l-.006.002c2.05-.001 4.102.78 5.666 2.344l22.618 22.617c3.124 3.125 3.129 8.195.005 11.319-3.118 3.118-8.192 3.122-11.319-.005l-8.965-8.966v61.256c0 4.411-3.582 8-8 8-4.41 0-8-3.582-8-8V27.311z\"/></svg>"
        },
        "$:/core/images/file": {
            "title": "$:/core/images/file",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-file tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M111.968 30.5H112V120a8 8 0 01-8 8H24a8 8 0 01-8-8V8a8 8 0 018-8h57v.02a7.978 7.978 0 015.998 2.337l22.627 22.627a7.975 7.975 0 012.343 5.516zM81 8H24v112h80V30.5H89c-4.418 0-8-3.578-8-8V8z\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"36\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"52\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"68\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"84\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"100\" rx=\"4\"/><rect width=\"40\" height=\"8\" x=\"32\" y=\"20\" rx=\"4\"/></svg>"
        },
        "$:/core/images/fixed-height": {
            "title": "$:/core/images/fixed-height",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fixed-height tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60 35.657l-9.172 9.171a4 4 0 11-5.656-5.656l16-16a4 4 0 015.656 0l16 16a4 4 0 01-5.656 5.656L68 35.657v57.686l9.172-9.171a4 4 0 115.656 5.656l-16 16a4 4 0 01-5.656 0l-16-16a4 4 0 115.656-5.656L60 93.343V35.657zM16 116h96a4 4 0 100-8H16a4 4 0 100 8zm0-96h96a4 4 0 100-8H16a4 4 0 100 8z\"/></svg>"
        },
        "$:/core/images/fold-all-button": {
            "title": "$:/core/images/fold-all-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold-all tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"64\" rx=\"8\"/><path d=\"M64.03 20.004c-2.05 0-4.102.78-5.667 2.344L35.746 44.966c-3.125 3.124-3.13 8.194-.005 11.318 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.965 16.966 16.965c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.191-.005-11.318L69.687 22.348a7.986 7.986 0 00-5.663-2.346zM64.03 85.002c-2.05-.001-4.102.78-5.667 2.344l-22.617 22.617c-3.125 3.125-3.13 8.195-.005 11.319 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.966 16.966 16.966c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.192-.005-11.319L69.687 87.346A7.986 7.986 0 0064.024 85z\"/></g></svg>"
        },
        "$:/core/images/fold-button": {
            "title": "$:/core/images/fold-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><path d=\"M64.03 25.004c-2.05 0-4.102.78-5.667 2.344L35.746 49.966c-3.125 3.124-3.13 8.194-.005 11.318 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.965 16.966 16.965c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.191-.005-11.318L69.687 27.348a7.986 7.986 0 00-5.663-2.346zM64.005 67.379c-2.05 0-4.102.78-5.666 2.344L35.722 92.34c-3.125 3.125-3.13 8.195-.006 11.32 3.118 3.117 8.192 3.121 11.32-.006L64 86.69l16.965 16.965c3.125 3.125 8.195 3.13 11.319.005 3.118-3.118 3.122-8.192-.005-11.319L69.663 69.723A7.986 7.986 0 0064 67.377z\"/></g></svg>"
        },
        "$:/core/images/fold-others-button": {
            "title": "$:/core/images/fold-others-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold-others tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" y=\"56.031\" rx=\"8\"/><path d=\"M86.632 79.976c-2.05 0-4.102.78-5.666 2.345L64 99.286 47.034 82.321a7.986 7.986 0 00-5.662-2.346l.005.001c-2.05 0-4.102.78-5.666 2.345l-22.618 22.617c-3.124 3.125-3.129 8.195-.005 11.319 3.118 3.118 8.192 3.122 11.319-.005l16.966-16.966 16.965 16.966a7.986 7.986 0 005.663 2.346l-.005-.002c2.05 0 4.102-.78 5.666-2.344l16.965-16.966 16.966 16.966c3.125 3.124 8.194 3.129 11.319.005 3.118-3.118 3.122-8.192-.005-11.319L92.289 82.321a7.986 7.986 0 00-5.663-2.346zM86.7 48.024c-2.05 0-4.102-.78-5.666-2.345L64.07 28.714 47.103 45.679a7.986 7.986 0 01-5.663 2.346l.005-.001c-2.05 0-4.101-.78-5.666-2.345L13.162 23.062c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L41.44 28.714l16.966-16.966a7.986 7.986 0 015.662-2.346l-.005.002c2.05 0 4.102.78 5.666 2.344l16.966 16.966 16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L92.358 45.679a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
        },
        "$:/core/images/folder": {
            "title": "$:/core/images/folder",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-folder tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.694 128H8C3.58 128 0 124.414 0 119.996V48.004C0 43.584 3.584 40 7.999 40H16v-8c0-4.418 3.578-8 8-8h32a8 8 0 018 8v8h40.001c4.418 0 7.999 3.586 7.999 8.004V59.83l-8-.082v-7.749A4 4 0 0099.997 48H56V36c0-2.21-1.793-4-4.004-4H28.004A4 4 0 0024 36v12H12.003A4 4 0 008 52v64a4 4 0 004.003 4h46.76l-3.069 8z\"/><path d=\"M23.873 55.5h96.003c4.417 0 7.004 4.053 5.774 9.063l-13.344 54.374c-1.228 5.005-5.808 9.063-10.223 9.063H6.08c-4.417 0-7.003-4.053-5.774-9.063L13.65 64.563c1.228-5.005 5.808-9.063 10.223-9.063zm1.78 8.5h87.994c2.211 0 3.504 2.093 2.891 4.666l-11.12 46.668c-.614 2.577-2.902 4.666-5.115 4.666H12.31c-2.211 0-3.504-2.093-2.891-4.666l11.12-46.668C21.152 66.09 23.44 64 25.653 64z\"/></g></svg>"
        },
        "$:/core/images/full-screen-button": {
            "title": "$:/core/images/full-screen-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-full-screen-button tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M0 8a8 8 0 018-8h32a8 8 0 110 16H16v24a8 8 0 11-16 0V8zM128 120a8 8 0 01-8 8H88a8 8 0 110-16h24V88a8 8 0 1116 0v32zM8 128a8 8 0 01-8-8V88a8 8 0 1116 0v24h24a8 8 0 110 16H8zM120 0a8 8 0 018 8v32a8 8 0 11-16 0V16H88a8 8 0 110-16h32z\"/></svg>"
        },
        "$:/core/images/github": {
            "title": "$:/core/images/github",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-github tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M63.938 1.607c-35.336 0-63.994 28.69-63.994 64.084 0 28.312 18.336 52.329 43.768 60.802 3.202.59 4.37-1.388 4.37-3.088 0-1.518-.056-5.55-.087-10.897-17.802 3.871-21.558-8.591-21.558-8.591-2.911-7.404-7.108-9.375-7.108-9.375-5.81-3.973.44-3.895.44-3.895 6.424.453 9.803 6.606 9.803 6.606 5.709 9.791 14.981 6.963 18.627 5.322.582-4.138 2.236-6.963 4.063-8.564-14.211-1.617-29.153-7.117-29.153-31.672 0-6.995 2.495-12.718 6.589-17.195-.66-1.621-2.856-8.14.629-16.96 0 0 5.37-1.722 17.597 6.57 5.104-1.424 10.58-2.132 16.022-2.16 5.438.028 10.91.736 16.022 2.16 12.22-8.292 17.582-6.57 17.582-6.57 3.493 8.82 1.297 15.339.64 16.96 4.102 4.477 6.578 10.2 6.578 17.195 0 24.618-14.966 30.035-29.22 31.62 2.295 1.98 4.342 5.89 4.342 11.87 0 8.564-.079 15.476-.079 17.576 0 1.715 1.155 3.71 4.4 3.084 25.413-8.493 43.733-32.494 43.733-60.798 0-35.394-28.657-64.084-64.006-64.084\"/></svg>"
        },
        "$:/core/images/gitter": {
            "title": "$:/core/images/gitter",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-gitter tc-image-button\" viewBox=\"0 0 18 25\"><path d=\"M15 5h2v10h-2zM10 5h2v20h-2zM5 5h2v20H5zM0 0h2v15H0z\"/></svg>"
        },
        "$:/core/images/globe": {
            "title": "$:/core/images/globe",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-globe tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M72.811 37.128v2.554c0 2.196.978 6.881 0 8.832-1.466 2.928-4.65 3.54-6.394 5.867-1.182 1.577-4.618 10.601-3.69 12.92 3.969 9.922 11.534 3.187 17.962 9.293.864.821 2.887 2.273 3.296 3.296 3.29 8.223-7.576 15.009 3.757 26.3 1.245 1.24 3.813-3.817 4.079-4.614.852-2.563 6.725-5.45 9.088-7.053 2.02-1.37 4.873-2.667 6.328-4.745 2.27-3.244 1.48-7.514 3.098-10.745 2.139-4.274 3.828-9.635 5.998-13.966 3.898-7.781 4.721 2.093 5.067 2.439.358.357 1.011 0 1.517 0 .094 0 1.447.099 1.516 0 .65-.935-1.043-17.92-1.318-19.297-1.404-7.01-6.944-15.781-11.865-20.5-6.274-6.015-7.09-16.197-18.259-14.954-.204.022-5.084 10.148-7.777 13.512-3.728 4.657-2.47-4.153-6.526-4.153-.081 0-1.183-.103-1.253 0-.586.88-1.44 3.896-2.306 4.417-.265.16-1.722-.239-1.846 0-2.243 4.3 8.256 2.212 5.792 7.952-2.352 5.481-6.328-1.997-6.328 8.56M44.467 7.01c9.685 6.13.682 12.198 2.694 16.215 1.655 3.303 4.241 5.395 1.714 9.814-2.063 3.608-6.87 3.966-9.623 6.723-3.04 3.044-5.464 8.94-6.79 12.911-1.617 4.843 14.547 6.866 12.063 11.008-1.386 2.311-6.746 1.466-8.437.198-1.165-.873-3.593-.546-4.417-1.78-2.613-3.915-2.26-8.023-3.625-12.128-.938-2.822-6.313-2.12-7.844-.593-.523.522-.33 1.792-.33 2.505 0 5.285 7.12 3.316 7.12 6.46 0 14.636 3.927 6.534 11.14 11.336 10.036 6.683 7.844 7.303 14.946 14.404 3.673 3.673 7.741 3.686 9.425 9.294 1.602 5.331-9.327 5.339-11.716 7.448-1.123.991-2.813 4.146-4.219 4.615-1.792.598-3.234.496-4.944 1.78-2.427 1.82-3.9 4.932-4.02 4.81-2.148-2.147-3.52-15.479-3.89-18.257-.588-4.42-5.59-5.54-6.986-9.03-1.57-3.927 1.524-9.52-1.129-13.761-6.52-10.424-11.821-14.5-15.35-26.292-.942-3.148 3.342-6.529 4.877-8.833 1.877-2.816 2.662-5.854 4.746-8.635C22.147 24.19 40.855 9.461 43.857 8.635l.61-1.625z\"/><path d=\"M64 126c34.242 0 62-27.758 62-62 0-34.242-27.758-62-62-62C29.758 2 2 29.758 2 64c0 34.242 27.758 62 62 62zm0-6c30.928 0 56-25.072 56-56S94.928 8 64 8 8 33.072 8 64s25.072 56 56 56z\"/></g></svg>"
        },
        "$:/core/images/heading-1": {
            "title": "$:/core/images/heading-1",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-1 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M14 30h13.25v30.104H61.7V30h13.25v75.684H61.7V71.552H27.25v34.132H14V30zm70.335 13.78c2.544 0 5.017-.212 7.42-.636 2.403-.424 4.576-1.13 6.52-2.12 1.942-.99 3.603-2.261 4.981-3.816 1.378-1.555 2.28-3.463 2.703-5.724h9.858v74.2h-13.25V53.32H84.335v-9.54z\"/></svg>"
        },
        "$:/core/images/heading-2": {
            "title": "$:/core/images/heading-2",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-2 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm119.52 75.684H74.85c.07-6.148 1.555-11.519 4.452-16.112 2.897-4.593 6.855-8.586 11.872-11.978a133.725 133.725 0 017.526-5.141 59.6 59.6 0 007.208-5.353c2.19-1.908 3.993-3.975 5.406-6.201 1.413-2.226 2.155-4.788 2.226-7.685 0-1.343-.159-2.774-.477-4.293a11.357 11.357 0 00-1.855-4.24c-.919-1.307-2.19-2.403-3.816-3.286-1.625-.883-3.745-1.325-6.36-1.325-2.403 0-4.399.477-5.989 1.431-1.59.954-2.862 2.261-3.816 3.922-.954 1.66-1.66 3.622-2.12 5.883-.46 2.261-.724 4.7-.795 7.314H76.23c0-4.099.548-7.897 1.643-11.395 1.095-3.498 2.738-6.519 4.93-9.063 2.19-2.544 4.857-4.54 8.002-5.989C93.95 30.724 97.606 30 101.775 30c4.523 0 8.303.742 11.342 2.226 3.039 1.484 5.494 3.357 7.367 5.618 1.873 2.261 3.198 4.717 3.975 7.367.777 2.65 1.166 5.176 1.166 7.579 0 2.968-.46 5.653-1.378 8.056a25.942 25.942 0 01-3.71 6.625 37.5 37.5 0 01-5.3 5.565 79.468 79.468 0 01-6.148 4.77 165.627 165.627 0 01-6.36 4.24 94.28 94.28 0 00-5.883 4.028c-1.802 1.343-3.374 2.738-4.717 4.187-1.343 1.449-2.261 2.986-2.756 4.611h36.146v10.812z\"/></svg>"
        },
        "$:/core/images/heading-3": {
            "title": "$:/core/images/heading-3",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-3 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm88.885 32.224c1.979.07 3.957-.07 5.936-.424 1.979-.353 3.745-.972 5.3-1.855a10.365 10.365 0 003.763-3.657c.954-1.555 1.431-3.463 1.431-5.724 0-3.18-1.078-5.724-3.233-7.632-2.155-1.908-4.929-2.862-8.32-2.862-2.12 0-3.958.424-5.513 1.272a11.318 11.318 0 00-3.869 3.445c-1.025 1.449-1.784 3.074-2.279 4.876a18.335 18.335 0 00-.636 5.565H75.381c.141-3.604.813-6.943 2.014-10.017 1.201-3.074 2.844-5.742 4.93-8.003 2.084-2.261 4.61-4.028 7.578-5.3C92.871 30.636 96.228 30 99.973 30a29.2 29.2 0 018.533 1.272c2.791.848 5.3 2.085 7.526 3.71s4.01 3.692 5.353 6.201c1.343 2.509 2.014 5.388 2.014 8.639 0 3.745-.848 7.014-2.544 9.805-1.696 2.791-4.346 4.823-7.95 6.095v.212c4.24.848 7.544 2.95 9.911 6.307s3.551 7.438 3.551 12.243c0 3.533-.707 6.696-2.12 9.487a21.538 21.538 0 01-5.724 7.102c-2.403 1.943-5.194 3.445-8.374 4.505-3.18 1.06-6.537 1.59-10.07 1.59-4.31 0-8.074-.618-11.289-1.855s-5.9-2.986-8.056-5.247c-2.155-2.261-3.798-4.982-4.929-8.162-1.13-3.18-1.731-6.713-1.802-10.6h12.084c-.141 4.523.972 8.286 3.34 11.289 2.366 3.003 5.917 4.505 10.652 4.505 4.028 0 7.402-1.148 10.123-3.445 2.72-2.297 4.081-5.565 4.081-9.805 0-2.897-.565-5.194-1.696-6.89a10.97 10.97 0 00-4.452-3.869c-1.837-.883-3.904-1.431-6.2-1.643a58.067 58.067 0 00-7.05-.212v-9.01z\"/></svg>"
        },
        "$:/core/images/heading-4": {
            "title": "$:/core/images/heading-4",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-4 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8 30h13.25v30.104H55.7V30h13.25v75.684H55.7V71.552H21.25v34.132H8V30zm76.59 48.548h22.471V45.9h-.212L84.59 78.548zm43.46 9.54h-9.54v17.596H107.06V88.088h-31.8V76.11l31.8-44.626h11.448v47.064h9.54v9.54z\"/></svg>"
        },
        "$:/core/images/heading-5": {
            "title": "$:/core/images/heading-5",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-5 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm77.755 1.484h38.372v10.812H92.765L88.95 61.164l.212.212c1.625-1.837 3.692-3.233 6.201-4.187 2.509-.954 5-1.431 7.473-1.431 3.675 0 6.96.618 9.858 1.855 2.897 1.237 5.335 2.968 7.314 5.194s3.48 4.858 4.505 7.897c1.025 3.039 1.537 6.325 1.537 9.858 0 2.968-.477 6.024-1.43 9.169a25.161 25.161 0 01-4.559 8.586c-2.085 2.58-4.752 4.7-8.003 6.36-3.25 1.66-7.137 2.491-11.66 2.491-3.604 0-6.943-.477-10.017-1.431-3.074-.954-5.777-2.385-8.109-4.293-2.332-1.908-4.187-4.258-5.565-7.049-1.378-2.791-2.138-6.06-2.279-9.805h12.084c.353 4.028 1.731 7.12 4.134 9.275 2.403 2.155 5.583 3.233 9.54 3.233 2.544 0 4.7-.424 6.466-1.272 1.767-.848 3.198-2.014 4.293-3.498 1.095-1.484 1.873-3.215 2.332-5.194.46-1.979.69-4.099.69-6.36 0-2.05-.284-4.01-.849-5.883-.565-1.873-1.413-3.516-2.544-4.929-1.13-1.413-2.597-2.544-4.399-3.392-1.802-.848-3.904-1.272-6.307-1.272-2.544 0-4.929.477-7.155 1.431-2.226.954-3.834 2.738-4.823 5.353H75.805l7.95-40.598z\"/></svg>"
        },
        "$:/core/images/heading-6": {
            "title": "$:/core/images/heading-6",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-6 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm106.587 20.246c-.283-3.039-1.36-5.494-3.233-7.367-1.873-1.873-4.399-2.809-7.579-2.809-2.19 0-4.08.406-5.67 1.219a12.435 12.435 0 00-4.029 3.233c-1.095 1.343-1.979 2.88-2.65 4.611a37.696 37.696 0 00-1.643 5.459 46.08 46.08 0 00-.9 5.671 722.213 722.213 0 00-.478 5.247l.212.212c1.625-2.968 3.87-5.176 6.731-6.625 2.862-1.449 5.954-2.173 9.275-2.173 3.675 0 6.96.636 9.858 1.908 2.897 1.272 5.353 3.021 7.367 5.247 2.014 2.226 3.551 4.858 4.611 7.897 1.06 3.039 1.59 6.325 1.59 9.858 0 3.604-.583 6.943-1.749 10.017-1.166 3.074-2.844 5.76-5.035 8.056-2.19 2.297-4.805 4.081-7.844 5.353-3.039 1.272-6.395 1.908-10.07 1.908-5.441 0-9.91-1.007-13.409-3.021-3.498-2.014-6.254-4.77-8.268-8.268-2.014-3.498-3.41-7.597-4.187-12.296-.777-4.7-1.166-9.77-1.166-15.211 0-4.452.477-8.94 1.431-13.462.954-4.523 2.526-8.639 4.717-12.349 2.19-3.71 5.07-6.731 8.64-9.063C92.676 31.166 97.075 30 102.304 30c2.968 0 5.76.495 8.374 1.484 2.615.99 4.93 2.367 6.943 4.134 2.014 1.767 3.657 3.887 4.93 6.36 1.271 2.473 1.978 5.23 2.12 8.268h-12.085zm-11.66 46.852c2.19 0 4.099-.442 5.724-1.325a12.869 12.869 0 004.081-3.445c1.095-1.413 1.908-3.056 2.438-4.929.53-1.873.795-3.798.795-5.777s-.265-3.887-.795-5.724c-.53-1.837-1.343-3.445-2.438-4.823-1.095-1.378-2.456-2.491-4.08-3.339-1.626-.848-3.534-1.272-5.725-1.272-2.19 0-4.116.406-5.777 1.219-1.66.813-3.056 1.908-4.187 3.286-1.13 1.378-1.979 2.986-2.544 4.823-.565 1.837-.848 3.78-.848 5.83 0 2.05.283 3.993.848 5.83.565 1.837 1.413 3.48 2.544 4.929a12.39 12.39 0 004.187 3.445c1.66.848 3.586 1.272 5.777 1.272z\"/></svg>"
        },
        "$:/core/images/help": {
            "title": "$:/core/images/help",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-help tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M36.055 111.441c-5.24 4.396-15.168 7.362-26.555 7.362-1.635 0-3.24-.06-4.806-.179 7.919-2.64 14.062-8.6 16.367-16.014C8.747 92.845 1.05 78.936 1.05 63.5c0-29.547 28.206-53.5 63-53.5s63 23.953 63 53.5-28.206 53.5-63 53.5c-10.055 0-19.56-2-27.994-5.559zm35.35-33.843a536.471 536.471 0 00.018-4.682 199.02 199.02 0 00-.023-3.042c.008-1.357.595-2.087 3.727-4.235.112-.077 1.085-.74 1.386-.948 3.093-2.133 5.022-3.786 6.762-6.187 2.34-3.228 3.558-7.077 3.558-11.649 0-13.292-9.86-21.952-21.455-21.952-11.103 0-22.499 9.609-24.066 22.295a6.023 6.023 0 1011.956 1.477c.806-6.527 6.972-11.726 12.11-11.726 5.265 0 9.408 3.64 9.408 9.906 0 3.634-1.1 5.153-5.111 7.919l-1.362.93c-2.682 1.84-4.227 3.1-5.7 4.931-2.109 2.62-3.242 5.717-3.258 9.314.013.892.02 1.86.022 2.981a470.766 470.766 0 01-.022 4.943 6.023 6.023 0 1012.046.12l.003-.395zm-6.027 24.499a7.529 7.529 0 100-15.058 7.529 7.529 0 000 15.058z\"/></svg>"
        },
        "$:/core/images/home-button": {
            "title": "$:/core/images/home-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-home-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M112.985 119.502c.01-.165.015-.331.015-.499V67.568c3.137 2.948 8.076 2.884 11.134-.174a7.999 7.999 0 00-.002-11.316L70.396 2.343A7.978 7.978 0 0064.734 0a7.957 7.957 0 00-5.656 2.343L33 28.42V8.007C33 3.585 29.41 0 25 0c-4.418 0-8 3.59-8 8.007V44.42L5.342 56.078c-3.125 3.125-3.12 8.198-.002 11.316a7.999 7.999 0 0011.316-.003l.344-.343v52.945a8.11 8.11 0 000 .007c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8a8.11 8.11 0 00-.015-.498zM97 112V51.574L64.737 19.31 33 51.048V112h64z\"/></svg>"
        },
        "$:/core/images/import-button": {
            "title": "$:/core/images/import-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-import-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M114.832 60.436s3.235-3.27 6.921.417c3.686 3.686.231 7.14.231 7.14l-42.153 42.92s-30.765 32.367-58.798 4.333C-7 87.213 24.59 55.623 24.59 55.623L67.363 12.85s22.725-24.6 43.587-3.738c20.862 20.862-3.96 43.09-3.96 43.09l-35.04 35.04S49.903 112.546 36.426 99.07c-13.476-13.477 11.83-35.523 11.83-35.523l35.04-35.04s3.902-3.902 7.78-.023c3.879 3.878.118 7.921.118 7.921l-35.04 35.04s-13.212 13.212-8.872 17.551c4.34 4.34 16.77-9.653 16.77-9.653l35.04-35.04s16.668-14.598 3.966-27.3c-13.893-13.892-27.565 3.702-27.565 3.702l-42.91 42.91s-23.698 23.698-3.658 43.738 43.012-4.385 43.012-4.385l42.895-42.533z\"/></svg>"
        },
        "$:/core/images/info-button": {
            "title": "$:/core/images/info-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-info-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\" transform=\"translate(.05)\"><path d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48z\"/><circle cx=\"64\" cy=\"32\" r=\"8\"/><rect width=\"16\" height=\"56\" x=\"56\" y=\"48\" rx=\"8\"/></g></svg>"
        },
        "$:/core/images/italic": {
            "title": "$:/core/images/italic",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-italic tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M66.711 0h22.41L62.408 128H40z\"/></svg>"
        },
        "$:/core/images/left-arrow": {
            "title": "$:/core/images/left-arrow",
            "created": "20150315234410875",
            "modified": "20150315235324760",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-left-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M0 64.177c0-2.026.771-4.054 2.317-5.6l55.98-55.98a7.92 7.92 0 0111.195.001c3.086 3.085 3.092 8.104.001 11.195L19.111 64.175l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.086-8.105 3.092-11.196.001l-55.98-55.98A7.892 7.892 0 010 64.177z\"/></svg>"
        },
        "$:/core/images/line-width": {
            "title": "$:/core/images/line-width",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-line-width tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M16 18h96a2 2 0 000-4H16a2 2 0 100 4zm0 17h96a4 4 0 100-8H16a4 4 0 100 8zm0 21h96a6 6 0 000-12H16a6 6 0 100 12zm0 29h96c5.523 0 10-4.477 10-10s-4.477-10-10-10H16c-5.523 0-10 4.477-10 10s4.477 10 10 10zm0 43h96c8.837 0 16-7.163 16-16s-7.163-16-16-16H16c-8.837 0-16 7.163-16 16s7.163 16 16 16z\"/></svg>"
        },
        "$:/core/images/link": {
            "title": "$:/core/images/link",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-link tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M42.263 69.38a31.919 31.919 0 006.841 10.13c12.5 12.5 32.758 12.496 45.255 0l22.627-22.628c12.502-12.501 12.497-32.758 0-45.255-12.5-12.5-32.758-12.496-45.254 0L49.104 34.255a32.333 32.333 0 00-2.666 3.019 36.156 36.156 0 0121.94.334l14.663-14.663c6.25-6.25 16.382-6.254 22.632-.004 6.248 6.249 6.254 16.373-.004 22.631l-22.62 22.62c-6.25 6.25-16.381 6.254-22.631.004a15.93 15.93 0 01-4.428-8.433 11.948 11.948 0 00-7.59 3.48l-6.137 6.137z\"/><path d=\"M86.35 59.234a31.919 31.919 0 00-6.84-10.13c-12.5-12.5-32.758-12.497-45.255 0L11.627 71.732c-12.501 12.5-12.496 32.758 0 45.254 12.5 12.5 32.758 12.497 45.255 0L79.51 94.36a32.333 32.333 0 002.665-3.02 36.156 36.156 0 01-21.94-.333l-14.663 14.663c-6.25 6.25-16.381 6.253-22.63.004-6.25-6.249-6.255-16.374.003-22.632l22.62-22.62c6.25-6.25 16.381-6.253 22.631-.003a15.93 15.93 0 014.428 8.432 11.948 11.948 0 007.59-3.48l6.137-6.136z\"/></g></svg>"
        },
        "$:/core/images/linkify": {
            "title": "$:/core/images/linkify",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-linkify-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M17.031 31.919H9.048V96.85h7.983v6.92H0V25h17.031v6.919zm24.66 0h-7.983V96.85h7.983v6.92H24.66V25h17.03v6.919zM67.77 56.422l11.975-3.903 2.306 7.096-12.063 3.903 7.628 10.379-6.12 4.435-7.63-10.467-7.45 10.2-5.943-4.523L58.1 63.518 45.95 59.35l2.306-7.096 12.064 4.17V43.825h7.45v12.596zM86.31 96.85h7.982V31.92H86.31V25h17.031v78.77H86.31v-6.92zm24.659 0h7.983V31.92h-7.983V25H128v78.77h-17.031v-6.92z\"/></svg>"
        },
        "$:/core/images/list-bullet": {
            "title": "$:/core/images/list-bullet",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list-bullet tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M11.636 40.273c6.427 0 11.637-5.21 11.637-11.637C23.273 22.21 18.063 17 11.636 17 5.21 17 0 22.21 0 28.636c0 6.427 5.21 11.637 11.636 11.637zm0 34.909c6.427 0 11.637-5.21 11.637-11.637 0-6.426-5.21-11.636-11.637-11.636C5.21 51.91 0 57.12 0 63.545c0 6.427 5.21 11.637 11.636 11.637zm0 34.909c6.427 0 11.637-5.21 11.637-11.636 0-6.427-5.21-11.637-11.637-11.637C5.21 86.818 0 92.028 0 98.455c0 6.426 5.21 11.636 11.636 11.636zM34.91 22.818H128v11.637H34.91V22.818zm0 34.91H128v11.636H34.91V57.727zm0 34.908H128v11.637H34.91V92.636z\"/></svg>"
        },
        "$:/core/images/list-number": {
            "title": "$:/core/images/list-number",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list-number tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M33.84 22.356H128v11.77H33.84v-11.77zm0 35.31H128v11.77H33.84v-11.77zm0 35.311H128v11.77H33.84v-11.77zM.38 42.631v-2.223h.998c.826 0 1.445-.14 1.858-.42.413-.28.619-.948.619-2.002V22.769c0-1.442-.193-2.336-.58-2.683-.385-.347-1.477-.52-3.275-.52v-2.143c3.502-.147 6.252-.955 8.25-2.423h2.117v22.865c0 .921.15 1.575.449 1.963.3.387.949.58 1.948.58h.998v2.223H.38zm-.3 35.356v-1.902c7.19-6.554 10.786-12.58 10.786-18.08 0-1.562-.326-2.81-.979-3.744-.652-.934-1.524-1.402-2.616-1.402-.893 0-1.655.317-2.287.952-.633.634-.95 1.364-.95 2.192 0 .974.247 1.829.74 2.563.106.16.16.28.16.36 0 .147-.16.28-.48.4-.213.08-.752.308-1.618.681-.839.374-1.358.561-1.558.561-.24 0-.512-.37-.819-1.111A6.2 6.2 0 010 57.064c0-1.949.849-3.544 2.547-4.785 1.698-1.242 3.798-1.862 6.302-1.862 2.463 0 4.53.67 6.202 2.012 1.67 1.341 2.506 3.093 2.506 5.256a8.644 8.644 0 01-.849 3.724c-.566 1.201-1.92 3.053-4.064 5.556a165.471 165.471 0 01-6.272 6.938h11.445l-1.019 5.726h-2.117c.08-.28.12-.534.12-.76 0-.388-.1-.631-.3-.731-.2-.1-.599-.15-1.198-.15H.08zm12.124 19.207c1.745.04 3.236.637 4.474 1.792 1.239 1.154 1.858 2.773 1.858 4.855 0 2.99-1.132 5.393-3.396 7.208-2.263 1.815-5 2.723-8.209 2.723-2.01 0-3.669-.384-4.974-1.151C.652 111.853 0 110.849 0 109.607c0-.774.27-1.398.809-1.872.54-.474 1.128-.71 1.768-.71.639 0 1.162.2 1.568.6.406.4.782 1.055 1.128 1.962.466 1.268 1.239 1.902 2.317 1.902 1.265 0 2.287-.477 3.066-1.431.78-.955 1.169-2.686 1.169-5.196 0-1.709-.12-3.023-.36-3.944-.24-.921-.792-1.382-1.658-1.382-.586 0-1.185.307-1.797.921-.493.494-.932.741-1.319.741-.333 0-.602-.147-.809-.44-.206-.294-.31-.574-.31-.841 0-.32.104-.594.31-.821.207-.227.69-.594 1.449-1.102 2.876-1.922 4.314-4.017 4.314-6.287 0-1.188-.306-2.092-.919-2.713a3.001 3.001 0 00-2.217-.93c-.799 0-1.525.263-2.177.79-.653.528-.979 1.158-.979 1.892 0 .641.253 1.235.76 1.782.172.2.259.367.259.5 0 .121-.57.428-1.708.922-1.139.494-1.854.74-2.147.74-.413 0-.75-.333-1.009-1-.26-.668-.39-1.282-.39-1.842 0-1.749.93-3.224 2.787-4.425 1.858-1.202 3.965-1.802 6.322-1.802 2.064 0 3.851.447 5.363 1.341 1.511.895 2.267 2.116 2.267 3.664 0 1.362-.57 2.623-1.708 3.784a13.387 13.387 0 01-3.945 2.784z\"/></svg>"
        },
        "$:/core/images/list": {
            "title": "$:/core/images/list",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M87.748 128H23.999c-4.418 0-7.999-3.59-7.999-8.007V8.007C16 3.585 19.588 0 24 0h80c4.419 0 8 3.59 8 8.007V104H91.25c-.965 0-1.84.392-2.473 1.025a3.476 3.476 0 00-1.029 2.476V128zm8-.12l15.88-15.88h-15.88v15.88zM40 15.508A3.502 3.502 0 0143.5 12h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 20h-55a3.498 3.498 0 01-3.5-3.509v-.982zM32 22a6 6 0 100-12 6 6 0 000 12zm8 9.509A3.502 3.502 0 0143.5 28h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 36h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 44h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 52h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 60h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 68h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 76h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 84h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 92h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 100h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.505 3.505 0 0143.497 108h33.006A3.497 3.497 0 0180 111.509v.982A3.505 3.505 0 0176.503 116H43.497A3.497 3.497 0 0140 112.491v-.982zM32 38a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12z\"/></svg>"
        },
        "$:/core/images/locked-padlock": {
            "title": "$:/core/images/locked-padlock",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-locked-padlock tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M96.472 64H105v32.01C105 113.674 90.674 128 73.001 128H56C38.318 128 24 113.677 24 96.01V64h8c.003-15.723.303-47.731 32.16-47.731 31.794 0 32.305 32.057 32.312 47.731zm-15.897 0H48.44c.002-16.287.142-32 15.719-32 15.684 0 16.977 16.136 16.415 32zM67.732 92.364A8.503 8.503 0 0064.5 76a8.5 8.5 0 00-3.498 16.25l-5.095 22.77H72.8l-5.07-22.656z\"/></svg>"
        },
        "$:/core/images/mail": {
            "title": "$:/core/images/mail",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mail tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M122.827 104.894a7.986 7.986 0 01-2.834.516H8.007c-.812 0-1.597-.12-2.335-.345l34.163-34.163 20.842 20.842a3.998 3.998 0 003.418 1.134 4.003 4.003 0 003.395-1.134L88.594 70.64c.075.09.155.176.24.26l33.993 33.994zm5.076-6.237c.064-.406.097-.823.097-1.247v-64c0-.669-.082-1.318-.237-1.94L94.23 65.006c.09.075.177.154.261.239l33.413 33.413zm-127.698.56A8.023 8.023 0 010 97.41v-64c0-.716.094-1.41.271-2.071l33.907 33.906L.205 99.218zM5.93 25.684a8.012 8.012 0 012.078-.273h111.986c.766 0 1.507.108 2.209.308L64.083 83.837 5.93 25.683z\"/></svg>"
        },
        "$:/core/images/menu-button": {
            "title": "$:/core/images/menu-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-menu-button tc-image-button\" viewBox=\"0 0 128 128\"><rect width=\"128\" height=\"16\" y=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"56\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"96\" rx=\"8\"/></svg>"
        },
        "$:/core/images/mono-block": {
            "title": "$:/core/images/mono-block",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mono-block tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M23.965 32.967h.357c.755 0 1.328.192 1.72.577.39.384.586.947.586 1.688 0 .824-.206 1.418-.618 1.782-.413.363-1.094.545-2.045.545h-6.31c-.965 0-1.65-.178-2.056-.535-.405-.356-.608-.954-.608-1.792 0-.811.203-1.391.608-1.74.406-.35 1.09-.525 2.055-.525h.734l-.86-2.453H8.471l-.902 2.453h.734c.95 0 1.632.178 2.044.535.413.356.619.933.619 1.73 0 .824-.206 1.418-.619 1.782-.412.363-1.094.545-2.044.545h-5.41c-.964 0-1.649-.182-2.054-.545-.406-.364-.608-.958-.608-1.782 0-.741.195-1.304.587-1.688.391-.385.964-.577 1.719-.577h.356l5.62-15.641H6.835c-.95 0-1.632-.182-2.044-.546-.412-.363-.619-.95-.619-1.76 0-.825.207-1.42.619-1.783.412-.363 1.094-.545 2.044-.545h7.863c1.244 0 2.118.67 2.62 2.013v.063l6.647 18.2zM12.98 17.326l-3.04 8.848h6.08l-3.04-8.848zm22.402 9.372v6.395h3.145c2.223 0 3.788-.245 4.697-.734.908-.49 1.362-1.307 1.362-2.453 0-1.16-.433-1.985-1.3-2.474-.866-.49-2.383-.734-4.55-.734h-3.354zm10.693-2.327c1.524.559 2.642 1.324 3.355 2.295.713.972 1.07 2.212 1.07 3.722 0 1.272-.308 2.432-.923 3.48-.615 1.049-1.496 1.909-2.642 2.58a7.499 7.499 0 01-2.254.849c-.832.174-2.01.262-3.533.262H30.202c-.922 0-1.583-.182-1.981-.545-.399-.364-.598-.958-.598-1.782 0-.741.189-1.304.566-1.688.378-.385.93-.577 1.657-.577h.356V17.326h-.356c-.727 0-1.28-.196-1.657-.587-.377-.392-.566-.965-.566-1.72 0-.81.203-1.401.608-1.771.406-.37 1.062-.556 1.971-.556h9.645c2.95 0 5.19.573 6.72 1.72 1.53 1.145 2.296 2.823 2.296 5.031 0 1.09-.234 2.052-.703 2.883-.468.832-1.163 1.513-2.086 2.045zM35.381 17.2v5.284h2.83c1.72 0 2.932-.203 3.638-.609.706-.405 1.06-1.09 1.06-2.054 0-.909-.319-1.573-.955-1.992-.636-.42-1.667-.63-3.093-.63h-3.48zm35.863-3.816c.28-.503.566-.86.86-1.07.293-.21.664-.314 1.111-.314.685 0 1.17.182 1.457.545.287.364.43.986.43 1.866l.042 5.452c0 .964-.157 1.614-.472 1.95-.314.335-.884.503-1.709.503-.587 0-1.037-.14-1.352-.42-.314-.28-.584-.796-.807-1.551-.364-1.328-.944-2.282-1.74-2.862-.797-.58-1.901-.87-3.313-.87-2.153 0-3.802.727-4.948 2.18-1.147 1.454-1.72 3.558-1.72 6.311 0 2.74.58 4.844 1.74 6.311 1.16 1.468 2.817 2.202 4.97 2.202 1.467 0 3.085-.49 4.854-1.468 1.768-.978 2.883-1.467 3.344-1.467.545 0 1.003.23 1.373.692.37.46.556 1.034.556 1.719 0 1.23-1.084 2.39-3.25 3.48-2.167 1.09-4.606 1.636-7.318 1.636-3.662 0-6.625-1.21-8.89-3.627-2.264-2.419-3.396-5.578-3.396-9.478 0-3.76 1.146-6.884 3.438-9.372 2.293-2.488 5.2-3.732 8.723-3.732.992 0 1.97.112 2.935.335.964.224 1.992.574 3.082 1.049zm10.22 19.583V17.326h-.356c-.755 0-1.328-.196-1.72-.587-.39-.392-.586-.965-.586-1.72 0-.81.21-1.401.629-1.771.42-.37 1.097-.556 2.034-.556h5.178c2.922 0 5.06.126 6.416.377 1.356.252 2.51.671 3.46 1.258 1.691 1.007 2.988 2.443 3.89 4.31.9 1.865 1.352 4.021 1.352 6.467 0 2.586-.514 4.847-1.541 6.783-1.028 1.936-2.485 3.4-4.372 4.393-.853.447-1.852.772-2.998.975-1.147.203-2.852.304-5.116.304h-6.269c-.965 0-1.65-.178-2.055-.535-.406-.356-.608-.954-.608-1.792 0-.741.195-1.304.587-1.688.391-.385.964-.577 1.72-.577h.356zm5.41-15.725v15.725h1.195c2.642 0 4.592-.646 5.85-1.94 1.258-1.292 1.887-3.28 1.887-5.965 0-2.641-.64-4.612-1.918-5.912-1.28-1.3-3.205-1.95-5.777-1.95-.335 0-.59.003-.765.01a7.992 7.992 0 00-.472.032zm35.067-.126h-9.75v5.368h3.69v-.252c0-.797.175-1.39.524-1.782.35-.392.88-.587 1.594-.587.629 0 1.142.178 1.54.534.4.357.598.808.598 1.353 0 .028.007.118.021.272.014.154.021.308.021.462v4.34c0 .936-.167 1.607-.503 2.013-.335.405-.88.608-1.635.608-.713 0-1.251-.19-1.615-.567-.363-.377-.545-.936-.545-1.677v-.377h-3.69v6.269h9.75v-2.495c0-.937.178-1.608.534-2.013.357-.405.94-.608 1.75-.608.798 0 1.367.2 1.71.597.342.399.513 1.073.513 2.024v5.074c0 .755-.146 1.258-.44 1.51-.293.251-.873.377-1.74.377h-17.172c-.923 0-1.583-.182-1.982-.545-.398-.364-.597-.958-.597-1.782 0-.741.189-1.304.566-1.688.377-.385.93-.577 1.656-.577h.357V17.326h-.357c-.712 0-1.261-.2-1.646-.598-.384-.398-.576-.968-.576-1.709 0-.81.203-1.401.608-1.771.405-.37 1.062-.556 1.97-.556h17.173c.853 0 1.43.13 1.73.388.3.258.45.772.45 1.54v4.698c0 .95-.174 1.631-.524 2.044-.35.412-.915.618-1.698.618-.81 0-1.394-.21-1.75-.629-.357-.419-.535-1.097-.535-2.033v-2.202zM19.77 47.641c.267-.504.55-.86.85-1.07.3-.21.675-.314 1.122-.314.685 0 1.17.181 1.457.545.287.363.43.985.43 1.866l.042 5.451c0 .965-.157 1.615-.472 1.95-.314.336-.891.504-1.73.504-.587 0-1.045-.144-1.373-.43-.329-.287-.598-.8-.807-1.541-.378-1.342-.958-2.3-1.74-2.873-.783-.573-1.88-.86-3.292-.86-2.153 0-3.799.727-4.938 2.181-1.14 1.454-1.709 3.557-1.709 6.311s.598 4.882 1.793 6.385C10.599 67.248 12.294 68 14.488 68c.503 0 1.077-.06 1.72-.179a23.809 23.809 0 002.264-.555v-3.313h-2.37c-.95 0-1.624-.175-2.023-.524-.398-.35-.597-.93-.597-1.74 0-.84.199-1.437.597-1.793.399-.357 1.073-.535 2.024-.535h7.569c.978 0 1.667.175 2.065.524.398.35.598.937.598 1.762 0 .74-.2 1.31-.598 1.708-.398.399-.975.598-1.73.598h-.335v5.242c0 .447-.05.758-.147.933-.098.174-.293.353-.587.534-.797.476-2.062.895-3.795 1.258a25.576 25.576 0 01-5.263.546c-3.662 0-6.625-1.21-8.89-3.628-2.264-2.418-3.397-5.577-3.397-9.477 0-3.76 1.147-6.884 3.44-9.372 2.292-2.488 5.199-3.732 8.721-3.732.979 0 1.954.112 2.925.335.972.224 2.003.573 3.093 1.049zm15.84 3.941v4.823h6.857v-4.823h-.336c-.754 0-1.331-.195-1.73-.587-.398-.391-.597-.964-.597-1.719 0-.825.206-1.419.619-1.782.412-.364 1.093-.545 2.044-.545h5.41c.95 0 1.624.181 2.023.545.398.363.597.957.597 1.782 0 .755-.192 1.328-.576 1.72-.385.39-.947.586-1.688.586h-.357v15.642h.357c.755 0 1.328.192 1.719.576.391.385.587.947.587 1.688 0 .825-.203 1.419-.608 1.782-.405.364-1.09.546-2.055.546h-5.41c-.964 0-1.649-.179-2.054-.535-.405-.357-.608-.954-.608-1.793 0-.74.2-1.303.598-1.688.398-.384.975-.576 1.73-.576h.335v-6.186h-6.856v6.186h.335c.755 0 1.331.192 1.73.576.398.385.597.947.597 1.688 0 .825-.206 1.419-.618 1.782-.412.364-1.094.546-2.044.546h-5.41c-.964 0-1.65-.179-2.055-.535-.405-.357-.608-.954-.608-1.793 0-.74.196-1.303.587-1.688.392-.384.965-.576 1.72-.576h.356V51.582h-.356c-.741 0-1.304-.195-1.688-.587-.385-.391-.577-.964-.577-1.719 0-.825.2-1.419.598-1.782.398-.364 1.073-.545 2.023-.545h5.41c.936 0 1.614.181 2.033.545.42.363.63.957.63 1.782 0 .755-.2 1.328-.598 1.72-.399.39-.975.586-1.73.586h-.335zm31.754 0v15.642h3.523c.95 0 1.632.178 2.044.534.412.357.618.933.618 1.73 0 .811-.21 1.402-.629 1.772-.419.37-1.097.556-2.033.556H58.433c-.95 0-1.632-.182-2.044-.546-.412-.363-.619-.957-.619-1.782 0-.81.203-1.39.608-1.74.406-.35 1.09-.524 2.055-.524h3.523V51.582h-3.523c-.95 0-1.632-.181-2.044-.545-.412-.363-.619-.95-.619-1.761 0-.825.203-1.412.608-1.761.406-.35 1.09-.524 2.055-.524h12.455c.992 0 1.684.174 2.075.524.392.35.587.936.587 1.761 0 .81-.202 1.398-.608 1.761-.405.364-1.09.545-2.054.545h-3.523zm30.496 0v11.994c0 1.873-.122 3.228-.367 4.067a5.876 5.876 0 01-1.227 2.244c-.74.852-1.768 1.495-3.082 1.929-1.314.433-2.893.65-4.738.65-1.3 0-2.555-.126-3.764-.378a16.843 16.843 0 01-3.491-1.132c-.615-.28-1.017-.643-1.206-1.09-.188-.448-.283-1.175-.283-2.18v-4.32c0-1.202.175-2.04.525-2.516.349-.475.957-.713 1.824-.713 1.244 0 1.929.915 2.054 2.747.014.321.035.566.063.733.168 1.622.545 2.73 1.133 3.324.587.594 1.523.89 2.81.89 1.593 0 2.714-.422 3.364-1.268.65-.845.975-2.386.975-4.623V51.582H88.93c-.95 0-1.632-.181-2.044-.545-.413-.363-.619-.95-.619-1.761 0-.825.2-1.412.598-1.761.398-.35 1.086-.524 2.065-.524h10.693c.979 0 1.667.174 2.065.524.399.35.598.936.598 1.761 0 .81-.206 1.398-.619 1.761-.412.364-1.093.545-2.044.545h-1.761zm14.644 0v6.353l6.48-6.478c-.728-.084-1.238-.29-1.531-.619-.294-.328-.44-.85-.44-1.562 0-.825.198-1.419.597-1.782.398-.364 1.073-.545 2.023-.545h5.137c.95 0 1.625.181 2.023.545.399.363.598.957.598 1.782 0 .769-.2 1.345-.598 1.73-.398.384-.982.576-1.75.576h-.483l-6.101 6.06c1.132.839 2.167 1.94 3.103 3.302.937 1.363 2.034 3.456 3.292 6.28h.692c.825 0 1.44.188 1.845.566.405.377.608.943.608 1.698 0 .825-.206 1.419-.619 1.782-.412.364-1.093.546-2.044.546h-2.579c-1.132 0-2.048-.762-2.746-2.286-.126-.28-.224-.503-.294-.67-.923-1.958-1.768-3.467-2.537-4.53a16.616 16.616 0 00-2.705-2.914l-1.97 1.887v3.92h.335c.755 0 1.331.193 1.73.577.398.385.597.947.597 1.688 0 .825-.206 1.419-.618 1.782-.413.364-1.094.546-2.045.546h-5.41c-.964 0-1.649-.179-2.054-.535-.405-.357-.608-.954-.608-1.793 0-.74.196-1.303.587-1.688.391-.384.965-.576 1.72-.576h.356V51.582h-.357c-.74 0-1.303-.195-1.687-.587-.385-.391-.577-.964-.577-1.719 0-.825.2-1.419.598-1.782.398-.364 1.072-.545 2.023-.545h5.41c.936 0 1.614.181 2.033.545.42.363.63.957.63 1.782 0 .755-.2 1.328-.598 1.72-.399.39-.975.586-1.73.586h-.336zM13.44 96.326l4.005-11.889c.251-.782.6-1.352 1.048-1.709.447-.356 1.041-.534 1.782-.534h3.271c.95 0 1.632.182 2.044.545.413.363.619.957.619 1.782 0 .755-.2 1.328-.598 1.72-.398.39-.975.587-1.73.587h-.335l.587 15.641h.357c.754 0 1.32.192 1.698.577.377.384.566.947.566 1.687 0 .825-.2 1.42-.598 1.783-.398.363-1.072.545-2.023.545h-4.718c-.95 0-1.624-.178-2.023-.535-.398-.356-.597-.954-.597-1.793 0-.74.192-1.303.576-1.687.385-.385.954-.577 1.709-.577h.335l-.293-12.79-3.061 9.52c-.224.712-.542 1.226-.954 1.54-.413.315-.982.472-1.709.472-.727 0-1.303-.157-1.73-.472-.426-.314-.751-.828-.975-1.54l-3.04-9.52-.294 12.79h.336c.755 0 1.324.192 1.709.577.384.384.576.947.576 1.687 0 .825-.202 1.42-.608 1.783-.405.363-1.076.545-2.013.545H2.621c-.937 0-1.608-.182-2.013-.545-.405-.364-.608-.958-.608-1.783 0-.74.192-1.303.577-1.687.384-.385.954-.577 1.708-.577h.336l.608-15.641h-.336c-.754 0-1.331-.196-1.73-.588-.398-.39-.597-.964-.597-1.719 0-.825.206-1.419.619-1.782.412-.363 1.093-.545 2.044-.545h3.27c.728 0 1.311.175 1.752.524.44.35.8.923 1.08 1.72l4.109 11.888zm30.454 2.054V86.828H42.74c-.922 0-1.583-.182-1.981-.546-.398-.363-.598-.95-.598-1.76 0-.812.2-1.402.598-1.773.398-.37 1.059-.555 1.981-.555h5.955c.909 0 1.566.185 1.97.555.406.37.609.961.609 1.772 0 .741-.192 1.31-.577 1.709-.384.398-.933.598-1.646.598h-.356v19.038c0 .657-.07 1.069-.21 1.237-.14.167-.454.251-.943.251h-2.097c-.67 0-1.143-.07-1.415-.21-.273-.14-.507-.384-.703-.733l-8.722-15.327v11.385h1.216c.909 0 1.559.175 1.95.524.392.35.587.93.587 1.74 0 .825-.199 1.42-.597 1.783-.399.363-1.045.545-1.94.545h-6.017c-.909 0-1.566-.182-1.971-.545-.406-.364-.608-.958-.608-1.783 0-.74.188-1.303.566-1.687.377-.385.936-.577 1.677-.577h.336V86.828h-.336c-.713 0-1.265-.2-1.656-.598-.392-.398-.587-.968-.587-1.709 0-.81.206-1.401.618-1.772.413-.37 1.066-.555 1.96-.555h3.44c.824 0 1.383.108 1.677.325.293.216.622.653.985 1.31l7.989 14.551zM64.66 86.366c-1.803 0-3.218.727-4.245 2.18-1.028 1.455-1.541 3.474-1.541 6.06 0 2.586.517 4.613 1.551 6.08 1.034 1.468 2.446 2.202 4.235 2.202 1.804 0 3.222-.73 4.257-2.19 1.034-1.461 1.551-3.492 1.551-6.092 0-2.586-.513-4.605-1.54-6.06-1.028-1.453-2.45-2.18-4.268-2.18zm0-4.864c3.44 0 6.27 1.23 8.492 3.69 2.223 2.46 3.334 5.598 3.334 9.414 0 3.844-1.104 6.99-3.313 9.436-2.208 2.446-5.046 3.669-8.513 3.669-3.424 0-6.255-1.234-8.491-3.701-2.237-2.467-3.355-5.602-3.355-9.404 0-3.83 1.108-6.971 3.323-9.424 2.216-2.454 5.057-3.68 8.523-3.68zM87.461 98.17v4.298h2.16c.908 0 1.555.175 1.94.524.384.35.576.93.576 1.74 0 .825-.196 1.42-.587 1.783-.392.363-1.035.545-1.93.545h-7.254c-.922 0-1.583-.182-1.981-.545-.399-.364-.598-.958-.598-1.783 0-.74.189-1.303.566-1.687.378-.385.93-.577 1.657-.577h.356V86.828h-.356c-.713 0-1.262-.2-1.646-.598-.385-.398-.577-.968-.577-1.709 0-.81.203-1.401.608-1.772.406-.37 1.063-.555 1.971-.555h8.66c3.424 0 6.014.657 7.768 1.97 1.754 1.315 2.631 3.25 2.631 5.809 0 2.697-.873 4.738-2.62 6.122-1.748 1.384-4.34 2.076-7.78 2.076h-3.564zm0-11.343v6.625h2.977c1.65 0 2.89-.28 3.722-.839.832-.559 1.248-1.397 1.248-2.516 0-1.048-.43-1.855-1.29-2.421-.86-.566-2.086-.85-3.68-.85h-2.977zm27.267 20.568l-1.636 1.636a12.37 12.37 0 011.772-.44c.58-.098 1.15-.147 1.709-.147 1.104 0 2.268.164 3.491.492 1.223.329 1.967.493 2.233.493.447 0 1.03-.15 1.75-.45.72-.301 1.206-.452 1.458-.452.517 0 .947.2 1.29.598.342.398.513.898.513 1.5 0 .796-.472 1.474-1.415 2.033-.944.56-2.1.839-3.47.839-.937 0-2.139-.22-3.607-.66-1.467-.441-2.53-.661-3.187-.661-.992 0-2.11.272-3.354.817-1.244.546-2.013.818-2.307.818a2.14 2.14 0 01-1.53-.597c-.42-.399-.63-.878-.63-1.437 0-.391.134-.807.4-1.247.265-.44.733-1.01 1.404-1.709l2.118-2.139c-2.335-.852-4.194-2.386-5.578-4.602-1.384-2.215-2.075-4.763-2.075-7.642 0-3.802 1.104-6.909 3.312-9.32 2.209-2.411 5.053-3.617 8.534-3.617 3.467 0 6.304 1.209 8.513 3.627 2.208 2.418 3.312 5.522 3.312 9.31 0 3.774-1.097 6.884-3.291 9.33-2.195 2.446-4.977 3.67-8.345 3.67a22.5 22.5 0 01-1.384-.043zm1.195-21.03c-1.803 0-3.218.727-4.246 2.18-1.027 1.455-1.54 3.474-1.54 6.06 0 2.586.516 4.613 1.55 6.08 1.035 1.468 2.447 2.202 4.236 2.202 1.803 0 3.222-.73 4.256-2.19 1.035-1.461 1.552-3.492 1.552-6.092 0-2.586-.514-4.605-1.541-6.06-1.028-1.453-2.45-2.18-4.267-2.18z\"/></svg>"
        },
        "$:/core/images/mono-line": {
            "title": "$:/core/images/mono-line",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mono-line tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60.437 84.523h.908c1.922 0 3.381.489 4.378 1.468.997.979 1.495 2.411 1.495 4.298 0 2.1-.525 3.612-1.575 4.538-1.05.925-2.785 1.388-5.206 1.388h-16.07c-2.456 0-4.2-.454-5.232-1.361-1.032-.908-1.548-2.43-1.548-4.565 0-2.065.516-3.542 1.548-4.432 1.032-.89 2.776-1.334 5.232-1.334h1.869l-2.19-6.247H20.983l-2.296 6.247h1.87c2.42 0 4.155.453 5.205 1.361 1.05.908 1.575 2.376 1.575 4.405 0 2.1-.525 3.612-1.575 4.538-1.05.925-2.785 1.388-5.206 1.388H6.781c-2.456 0-4.2-.463-5.233-1.388C.516 93.9 0 92.389 0 90.289c0-1.887.498-3.32 1.495-4.298.997-.979 2.456-1.468 4.378-1.468h.908l14.308-39.83h-4.271c-2.42 0-4.156-.462-5.206-1.387-1.05-.926-1.575-2.42-1.575-4.485 0-2.1.525-3.613 1.575-4.538 1.05-.926 2.785-1.388 5.206-1.388h20.021c3.168 0 5.392 1.708 6.674 5.125v.16l16.924 46.343zm-27.976-39.83L24.72 67.225h15.483l-7.742-22.53zM89.506 68.56v16.284h8.008c5.66 0 9.646-.623 11.96-1.869 2.313-1.245 3.47-3.328 3.47-6.246 0-2.955-1.103-5.055-3.31-6.3-2.207-1.246-6.069-1.869-11.586-1.869h-8.542zm27.229-5.926c3.88 1.423 6.727 3.372 8.542 5.846 1.815 2.474 2.723 5.633 2.723 9.477 0 3.239-.783 6.193-2.35 8.862-1.565 2.67-3.808 4.859-6.726 6.567-1.709.997-3.622 1.718-5.74 2.163-2.118.445-5.116.667-8.996.667h-27.87c-2.349 0-4.03-.463-5.045-1.388-1.014-.926-1.521-2.438-1.521-4.538 0-1.887.48-3.32 1.441-4.298.961-.979 2.367-1.468 4.218-1.468h.907v-39.83h-.907c-1.851 0-3.257-.498-4.218-1.494-.961-.997-1.441-2.456-1.441-4.378 0-2.065.516-3.568 1.548-4.512 1.032-.943 2.705-1.414 5.018-1.414h24.56c7.51 0 13.214 1.459 17.111 4.377 3.898 2.92 5.847 7.19 5.847 12.814 0 2.776-.597 5.223-1.789 7.341-1.192 2.118-2.963 3.853-5.312 5.206zm-27.23-18.26v13.455h7.208c4.378 0 7.466-.516 9.264-1.549 1.797-1.032 2.696-2.776 2.696-5.232 0-2.313-.81-4.004-2.43-5.072-1.619-1.068-4.244-1.602-7.874-1.602h-8.863z\"/></svg>"
        },
        "$:/core/images/new-button": {
            "title": "$:/core/images/new-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 72H8.007C3.591 72 0 68.418 0 64c0-4.41 3.585-8 8.007-8H56V8.007C56 3.591 59.582 0 64 0c4.41 0 8 3.585 8 8.007V56h47.993c4.416 0 8.007 3.582 8.007 8 0 4.41-3.585 8-8.007 8H72v47.993c0 4.416-3.582 8.007-8 8.007-4.41 0-8-3.585-8-8.007V72z\"/></svg>"
        },
        "$:/core/images/new-here-button": {
            "title": "$:/core/images/new-here-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-here-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.838 20.935l-3.572.938c-3.688.968-8.23 4.43-10.136 7.731L3.37 96.738c-1.905 3.3-.771 7.524 2.534 9.432l33.717 19.466c3.297 1.904 7.53.78 9.435-2.521l38.76-67.134c1.905-3.3 2.632-8.963 1.623-12.646L83.285 20.88c-1.009-3.68-4.821-5.884-8.513-4.915l-7.603 1.995.043.287c.524 3.394 2.053 7.498 4.18 11.55.418.163.829.36 1.23.59a8.864 8.864 0 014.438 8.169c.104.132.21.264.316.395l-.386.318a8.663 8.663 0 01-1.082 3.137c-2.42 4.192-7.816 5.608-12.051 3.163-4.12-2.379-5.624-7.534-3.476-11.671-2.177-4.394-3.788-8.874-4.543-12.964z\"/><path d=\"M69.554 44.76c-5.944-7.476-10.74-17.196-11.955-25.059-1.68-10.875 3.503-18.216 15.082-18.04 10.407.158 19.975 5.851 24.728 13.785 5.208 8.695 2.95 17.868-6.855 20.496l-2.037-7.601c4.232-1.134 4.999-4.248 2.24-8.853-3.37-5.626-10.465-9.848-18.146-9.965-6.392-.097-8.31 2.62-7.323 9.01.999 6.465 5.318 15.138 10.582 21.65l-.072.06c.559 1.553-4.17 6.44-5.938 4.888l-.005.004-.028-.034a1.323 1.323 0 01-.124-.135 2.618 2.618 0 01-.149-.205z\"/><rect width=\"16\" height=\"48\" x=\"96\" y=\"80\" rx=\"8\"/><rect width=\"48\" height=\"16\" x=\"80\" y=\"96\" rx=\"8\"/></g></svg>"
        },
        "$:/core/images/new-image-button": {
            "title": "$:/core/images/new-image-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-image-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M81.362 73.627l15.826-27.41a2.626 2.626 0 00-.962-3.59l-50.01-28.872a2.626 2.626 0 00-3.588.961L30.058 36.49l10.04-5.261c3.042-1.595 6.771.114 7.55 3.46l3.607 17.702 9.88.85a5.25 5.25 0 014.571 3.77c.034.115.1.344.199.671.165.553.353 1.172.562 1.843.595 1.914 1.23 3.85 1.872 5.678.207.588.412 1.156.614 1.701.625 1.685 1.209 3.114 1.725 4.207.255.54.485.977.726 1.427.214.212.547.425 1.011.622 1.141.482 2.784.74 4.657.758.864.008 1.71-.034 2.492-.11.448-.043.753-.085.871-.104.315-.053.625-.077.927-.076zM37.47 2.649A5.257 5.257 0 0144.649.725l63.645 36.746a5.257 5.257 0 011.923 7.178L73.47 108.294a5.257 5.257 0 01-7.177 1.923L2.649 73.47a5.257 5.257 0 01-1.924-7.177L37.471 2.649zm42.837 50.49a5.25 5.25 0 105.25-9.092 5.25 5.25 0 00-5.25 9.093zM96 112h-7.993c-4.419 0-8.007-3.582-8.007-8 0-4.41 3.585-8 8.007-8H96v-7.993C96 83.588 99.582 80 104 80c4.41 0 8 3.585 8 8.007V96h7.993c4.419 0 8.007 3.582 8.007 8 0 4.41-3.585 8-8.007 8H112v7.993c0 4.419-3.582 8.007-8 8.007-4.41 0-8-3.585-8-8.007V112zM33.347 51.791c7.428 7.948 9.01 10.69 7.449 13.394-1.56 2.703-13.838-2.328-16.094 1.58-2.256 3.908-.907 3.258-2.437 5.908l19.73 11.39s-5.605-8.255-4.235-10.628c2.515-4.356 8.77-1.256 10.365-4.019 2.414-4.181-5.103-9.639-14.778-17.625z\"/></svg>"
        },
        "$:/core/images/new-journal-button": {
            "title": "$:/core/images/new-journal-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-journal-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M102.545 112.818v11.818c0 1.306 1.086 2.364 2.425 2.364h6.06c1.34 0 2.425-1.058 2.425-2.364v-11.818h12.12c1.34 0 2.425-1.058 2.425-2.363v-5.91c0-1.305-1.085-2.363-2.424-2.363h-12.121V90.364c0-1.306-1.086-2.364-2.425-2.364h-6.06c-1.34 0-2.425 1.058-2.425 2.364v11.818h-12.12c-1.34 0-2.425 1.058-2.425 2.363v5.91c0 1.305 1.085 2.363 2.424 2.363h12.121zM60.016 4.965c-4.781-2.76-10.897-1.118-13.656 3.66L5.553 79.305A9.993 9.993 0 009.21 92.963l51.04 29.468c4.78 2.76 10.897 1.118 13.655-3.66l40.808-70.681a9.993 9.993 0 00-3.658-13.656L60.016 4.965zm-3.567 27.963a6 6 0 106-10.393 6 6 0 00-6 10.393zm31.697 17.928a6 6 0 106-10.392 6 6 0 00-6 10.392z\"/><text class=\"tc-fill-background\" font-family=\"Helvetica\" font-size=\"47.172\" font-weight=\"bold\" transform=\"rotate(30 25.742 95.82)\"><tspan x=\"42\" y=\"77.485\" text-anchor=\"middle\"><<now \"DD\">></tspan></text></g></svg>"
        },
        "$:/core/images/opacity": {
            "title": "$:/core/images/opacity",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-opacity tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M102.362 65a51.595 51.595 0 01-1.942 6H82.584a35.867 35.867 0 002.997-6h16.78zm.472-2c.423-1.961.734-3.963.929-6H87.656a35.78 35.78 0 01-1.368 6h16.546zm-3.249 10a51.847 51.847 0 01-3.135 6H75.812a36.205 36.205 0 005.432-6h18.341zm-4.416 8c-1.424 2.116-3 4.12-4.71 6H60.46a35.843 35.843 0 0012.874-6h21.834zm-7.513-34h16.107C101.247 20.627 79.033 0 52 0 23.281 0 0 23.281 0 52c0 25.228 17.965 46.26 41.8 51h20.4a51.66 51.66 0 0015.875-6H39v-2h42.25a52.257 52.257 0 007.288-6H39v-2h4.539C27.739 83.194 16 68.968 16 52c0-19.882 16.118-36 36-36 18.186 0 33.222 13.484 35.656 31zm.22 2h16.039a52.823 52.823 0 010 6H87.877a36.483 36.483 0 000-6z\"/><path d=\"M76 128c28.719 0 52-23.281 52-52s-23.281-52-52-52-52 23.281-52 52 23.281 52 52 52zm0-16c19.882 0 36-16.118 36-36S95.882 40 76 40 40 56.118 40 76s16.118 36 36 36z\"/><path d=\"M37 58h53v4H37v-4zm3-8h53v4H40v-4zm0-8h53v4H40v-4zm-8 24h53v4H32v-4zm-2 8h53v4H30v-4zm-3 8h53v4H27v-4z\"/></g></svg>"
        },
        "$:/core/images/open-window": {
            "title": "$:/core/images/open-window",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-open-window tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M16 112h88.994c3.87 0 7.006 3.59 7.006 8 0 4.418-3.142 8-7.006 8H7.006C3.136 128 0 124.41 0 120a9.321 9.321 0 010-.01V24.01C0 19.586 3.59 16 8 16c4.418 0 8 3.584 8 8.01V112z\"/><path d=\"M96 43.196V56a8 8 0 1016 0V24c0-4.41-3.585-8-8.007-8H72.007C67.588 16 64 19.582 64 24c0 4.41 3.585 8 8.007 8H84.57l-36.3 36.299a8 8 0 00-.001 11.316c3.117 3.117 8.19 3.123 11.316-.003L96 43.196zM32 7.999C32 3.581 35.588 0 40 0h80c4.419 0 8 3.588 8 8v80c0 4.419-3.588 8-8 8H40c-4.419 0-8-3.588-8-8V8z\"/></g></svg>"
        },
        "$:/core/images/options-button": {
            "title": "$:/core/images/options-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-options-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M110.488 76a47.712 47.712 0 01-5.134 12.384l6.724 6.724c3.123 3.123 3.132 8.192.011 11.313l-5.668 5.668c-3.12 3.12-8.186 3.117-11.313-.01l-6.724-6.725c-3.82 2.258-7.98 4-12.384 5.134v9.505c0 4.417-3.578 8.007-7.992 8.007h-8.016C55.58 128 52 124.415 52 119.993v-9.505a47.712 47.712 0 01-12.384-5.134l-6.724 6.725c-3.123 3.122-8.192 3.131-11.313.01l-5.668-5.668c-3.12-3.12-3.116-8.186.01-11.313l6.725-6.724c-2.257-3.82-4-7.98-5.134-12.384H8.007C3.591 76 0 72.422 0 68.01v-8.017C0 55.58 3.585 52 8.007 52h9.505a47.712 47.712 0 015.134-12.383l-6.724-6.725c-3.123-3.122-3.132-8.191-.011-11.312l5.668-5.669c3.12-3.12 8.186-3.116 11.313.01l6.724 6.725c3.82-2.257 7.98-4 12.384-5.134V8.007C52 3.591 55.578 0 59.992 0h8.016C72.42 0 76 3.585 76 8.007v9.505a47.712 47.712 0 0112.384 5.134l6.724-6.724c3.123-3.123 8.192-3.132 11.313-.01l5.668 5.668c3.12 3.12 3.116 8.186-.01 11.312l-6.725 6.725c2.257 3.82 4 7.979 5.134 12.383h9.505c4.416 0 8.007 3.578 8.007 7.992v8.017c0 4.411-3.585 7.991-8.007 7.991h-9.505zM64 96c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32z\"/></svg>"
        },
        "$:/core/images/paint": {
            "title": "$:/core/images/paint",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-paint tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M83.527 76.19C90.43 69.287 91.892 59 87.91 50.665l37.903-37.902c2.919-2.92 2.913-7.659 0-10.572a7.474 7.474 0 00-10.572 0L77.338 40.093c-8.335-3.982-18.622-2.521-25.526 4.383l31.715 31.715zm-2.643 2.644L49.169 47.119S8.506 81.243 0 80.282c0 0 3.782 5.592 6.827 8.039 14.024-5.69 37.326-24.6 37.326-24.6l.661.66S19.45 90.222 9.18 92.047c1.222 1.44 4.354 4.053 6.247 5.776 5.417-1.488 34.733-28.57 34.733-28.57l.661.66-32.407 31.022 5.285 5.286L56.106 75.2l.662.66s-27.864 30.536-28.684 32.432c0 0 6.032 6.853 7.569 7.824.702-2.836 27.884-33.485 27.884-33.485l.661.66s-20.597 23.755-24.964 36.732c3.21 3.549 7.5 5.137 10.926 6.298-2.19-11.817 30.724-47.487 30.724-47.487z\"/></svg>"
        },
        "$:/core/images/palette": {
            "title": "$:/core/images/palette",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-palette tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M80.247 39.182a93.52 93.52 0 00-16.228-1.4C28.662 37.781 0 57.131 0 81.002c0 9.642 4.676 18.546 12.58 25.735C23.504 91.19 26.34 72.395 36.89 63.562c15.183-12.713 26.538-7.828 26.538-7.828l16.82-16.552zm26.535 9.655c13.049 7.913 21.257 19.392 21.257 32.166 0 9.35.519 17.411-11.874 25.08-10.797 6.681-3.824-6.536-11.844-10.898s-19.946 1.308-18.213 7.906c3.2 12.181 19.422 11.455 6.314 16.658-13.107 5.202-18.202 4.476-28.403 4.476-7.821 0-15.315-.947-22.243-2.68 9.844-4.197 27.88-12.539 33.354-19.456C82.788 92.409 87.37 80 83.324 72.484c-.194-.359 11.215-11.668 23.458-23.647zM1.134 123.867l-.66.002c33.479-14.94 22.161-64.226 58.818-64.226.317 1.418.644 2.944 1.062 4.494-25.907-4.166-23.567 48.031-59.22 59.73zm.713-.007c38.872-.506 78.152-22.347 78.152-44.813-9.27 0-14.073-3.48-16.816-7.942-16.597-7.003-30.365 45.715-61.336 52.755zm65.351-64.008c-4.45 4.115 4.886 16.433 11.318 11.318l45.27-45.27c11.317-11.318 0-22.635-11.318-11.318-11.317 11.318-33.518 34.405-45.27 45.27z\"/></svg>"
        },
        "$:/core/images/permalink-button": {
            "title": "$:/core/images/permalink-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-permalink-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M80.483 48l-7.387 32h-25.58l7.388-32h25.58zm3.694-16l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L100.598 32h3.403c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8h-7.096l-7.387 32H104c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H85.824l-5.624 24.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L69.402 96h-25.58L38.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L27.402 96h-3.403C19.59 96 16 92.418 16 88c0-4.41 3.581-8 8-8h7.096l7.387-32H24C19.59 48 16 44.418 16 40c0-4.41 3.581-8 8-8h18.177l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L58.598 32h25.58z\"/></svg>"
        },
        "$:/core/images/permaview-button": {
            "title": "$:/core/images/permaview-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-permaview-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M81.483 48l-1.846 8h-5.58l1.847-8h5.58zm3.694-16l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L101.598 32h2.403c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8h-6.096l-1.847 8h7.944c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H92.364l-1.846 8H104c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H86.824l-5.624 24.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L70.402 96h-5.58L59.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L48.402 96h-5.58L37.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L26.402 96h-2.403C19.59 96 16 92.418 16 88c0-4.41 3.581-8 8-8h6.096l1.847-8h-7.944C19.59 72 16 68.418 16 64c0-4.41 3.581-8 8-8h11.637l1.846-8H24C19.59 48 16 44.418 16 40c0-4.41 3.581-8 8-8h17.177l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L57.598 32h5.58L68.8 7.642c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L79.598 32h5.58zM53.904 48l-1.847 8h5.58l1.846-8h-5.579zm22.039 24l-1.847 8h-5.58l1.847-8h5.58zm-27.58 0l-1.846 8h5.579l1.847-8h-5.58z\"/></svg>"
        },
        "$:/core/images/picture": {
            "title": "$:/core/images/picture",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-picture tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M112 68.233v-48.23A4.001 4.001 0 00107.997 16H20.003A4.001 4.001 0 0016 20.003v38.31l9.241-14.593c2.8-4.422 9.023-5.008 12.6-1.186l18.247 20.613 13.687-6.407a8 8 0 018.903 1.492 264.97 264.97 0 002.92 2.739 249.44 249.44 0 006.798 6.066 166.5 166.5 0 002.106 1.778c2.108 1.747 3.967 3.188 5.482 4.237.748.518 1.383.92 2.044 1.33.444.117 1.046.144 1.809.05 1.873-.233 4.238-1.144 6.723-2.547a36.016 36.016 0 003.205-2.044c.558-.4.93-.686 1.07-.802.376-.31.765-.577 1.165-.806zM0 8.007A8.01 8.01 0 018.007 0h111.986A8.01 8.01 0 01128 8.007v111.986a8.01 8.01 0 01-8.007 8.007H8.007A8.01 8.01 0 010 119.993V8.007zM95 42a8 8 0 100-16 8 8 0 000 16zM32 76c15.859 4.83 20.035 7.244 20.035 12S32 95.471 32 102.347c0 6.876 1.285 4.99 1.285 9.653H68s-13.685-6.625-13.685-10.8c0-7.665 10.615-8.34 10.615-13.2 0-7.357-14.078-8.833-32.93-12z\"/></svg>"
        },
        "$:/core/images/plugin-generic-language": {
            "title": "$:/core/images/plugin-generic-language",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M61.207 68.137c-4.324 2.795-6.999 6.656-6.999 10.921 0 7.906 9.19 14.424 21.042 15.336 2.162 3.902 8.598 6.785 16.318 7.01-5.126-1.125-9.117-3.742-10.62-7.01C92.805 93.487 102 86.967 102 79.059c0-8.53-10.699-15.445-23.896-15.445-6.599 0-12.572 1.729-16.897 4.524zm12.794-14.158c-4.324 2.795-10.298 4.524-16.897 4.524-2.619 0-5.14-.272-7.497-.775-3.312 2.25-8.383 3.69-14.067 3.69l-.255-.002c4.119-.892 7.511-2.747 9.478-5.13-6.925-2.704-11.555-7.617-11.555-13.228 0-8.53 10.699-15.445 23.896-15.445C70.301 27.613 81 34.528 81 43.058c0 4.265-2.675 8.126-6.999 10.921zM64 0l54.56 32v64L64 128 9.44 96V32L64 0z\"/></svg>"
        },
        "$:/core/images/plugin-generic-plugin": {
            "title": "$:/core/images/plugin-generic-plugin",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M40.397 76.446V95.34h14.12l-.001-.005a6.912 6.912 0 005.364-11.593l.046-.023a6.912 6.912 0 119.979.526l.086.055a6.914 6.914 0 004.408 10.948l-.023.092h21.32V75.568l-.15.038a6.912 6.912 0 00-11.593-5.364l-.022-.046a6.912 6.912 0 11.526-9.979l.055-.086a6.914 6.914 0 0010.948-4.408c.079.018.158.038.236.059v-15.74h-21.32l.023-.094a6.914 6.914 0 01-4.408-10.947 10.23 10.23 0 00-.086-.055 6.912 6.912 0 10-9.979-.526l-.046.023a6.912 6.912 0 01-5.364 11.593l.001.005h-14.12v12.847A6.912 6.912 0 0129.5 59.843l-.054.086a6.912 6.912 0 10-.526 9.979l.023.046a6.912 6.912 0 0111.455 6.492zM64 0l54.56 32v64L64 128 9.44 96V32L64 0z\"/></svg>"
        },
        "$:/core/images/plugin-generic-theme": {
            "title": "$:/core/images/plugin-generic-theme",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M29.408 91.472L51.469 69.41l-.004-.005a2.22 2.22 0 01.004-3.146c.87-.87 2.281-.872 3.147-.005l9.465 9.464a2.22 2.22 0 01-.005 3.147c-.87.87-2.28.871-3.147.005l-.005-.005-22.061 22.062a6.686 6.686 0 11-9.455-9.455zM60.802 66.38c-2.436-2.704-4.465-5.091-5.817-6.869-6.855-9.014-10.313-4.268-14.226 0-3.913 4.268 1.03 7.726-2.683 10.741-3.713 3.015-3.484 4.06-9.752-1.455-6.267-5.516-6.7-7.034-3.823-10.181 2.877-3.147 5.281 1.808 11.159-3.785 5.877-5.593.94-10.55.94-10.55s12.237-25.014 28.588-23.167c16.351 1.848-6.186-2.392-11.792 17.226-2.4 8.4.447 6.42 4.998 9.968 1.394 1.086 6.03 4.401 11.794 8.685l20.677-20.676 1.615-4.766 7.84-4.689 3.151 3.152-4.688 7.84-4.766 1.615-20.224 20.223c12.663 9.547 28.312 22.146 28.312 26.709 0 7.217-3.071 11.526-9.535 9.164-4.693-1.715-18.768-15.192-28.753-25.897l-2.893 2.893-3.151-3.152 3.029-3.029zM63.953 0l54.56 32v64l-54.56 32-54.56-32V32l54.56-32z\"/></svg>"
        },
        "$:/core/images/preview-closed": {
            "title": "$:/core/images/preview-closed",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-preview-closed tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M.088 64a7.144 7.144 0 001.378 5.458C16.246 88.818 39.17 100.414 64 100.414c24.83 0 47.753-11.596 62.534-30.956A7.144 7.144 0 00127.912 64C110.582 78.416 88.304 87.086 64 87.086 39.696 87.086 17.418 78.416.088 64z\"/><rect width=\"4\" height=\"16\" x=\"62\" y=\"96\" rx=\"4\"/><rect width=\"4\" height=\"16\" x=\"78\" y=\"93\" rx=\"4\" transform=\"rotate(-5 80 101)\"/><rect width=\"4\" height=\"16\" x=\"46\" y=\"93\" rx=\"4\" transform=\"rotate(5 48 101)\"/><rect width=\"4\" height=\"16\" x=\"30\" y=\"88\" rx=\"4\" transform=\"rotate(10 32 96)\"/><rect width=\"4\" height=\"16\" x=\"94\" y=\"88\" rx=\"4\" transform=\"rotate(-10 96 96)\"/><rect width=\"4\" height=\"16\" x=\"110\" y=\"80\" rx=\"4\" transform=\"rotate(-20 112 88)\"/><rect width=\"4\" height=\"16\" x=\"14\" y=\"80\" rx=\"4\" transform=\"rotate(20 16 88)\"/></g></svg>"
        },
        "$:/core/images/preview-open": {
            "title": "$:/core/images/preview-open",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-preview-open tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64.11 99.588c-24.83 0-47.754-11.596-62.534-30.957a7.148 7.148 0 010-8.675C16.356 40.596 39.28 29 64.11 29c24.83 0 47.753 11.596 62.534 30.956a7.148 7.148 0 010 8.675c-14.78 19.36-37.703 30.957-62.534 30.957zm46.104-32.007c1.44-1.524 1.44-3.638 0-5.162C99.326 50.9 82.439 44 64.147 44S28.968 50.9 18.08 62.42c-1.44 1.523-1.44 3.637 0 5.16C28.968 79.1 45.855 86 64.147 86s35.179-6.9 46.067-18.42z\"/><path d=\"M63.5 88C76.479 88 87 77.479 87 64.5S76.479 41 63.5 41 40 51.521 40 64.5 50.521 88 63.5 88z\"/></g></svg>"
        },
        "$:/core/images/print-button": {
            "title": "$:/core/images/print-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-print-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M112 71V30.5h-.032c-.035-2-.816-3.99-2.343-5.516L86.998 2.357A7.978 7.978 0 0081 .02V0H24a8 8 0 00-8 8v63h8V8h57v14.5c0 4.422 3.582 8 8 8h15V71h8z\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"36\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"52\" rx=\"4\"/><rect width=\"40\" height=\"8\" x=\"32\" y=\"20\" rx=\"4\"/><path d=\"M0 80.005C0 71.165 7.156 64 16 64h96c8.836 0 16 7.155 16 16.005v31.99c0 8.84-7.156 16.005-16 16.005H16c-8.836 0-16-7.155-16-16.005v-31.99zM104 96a8 8 0 100-16 8 8 0 000 16z\"/></g></svg>"
        },
        "$:/core/images/quote": {
            "title": "$:/core/images/quote",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-quote tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M51.219 117.713V62.199H27.427c0-8.891 1.683-16.401 5.047-22.53 3.365-6.127 9.613-10.754 18.745-13.878V2c-7.45.961-14.36 3.184-20.728 6.669-6.368 3.484-11.835 7.87-16.401 13.157C9.524 27.113 5.98 33.241 3.456 40.21.933 47.18-.21 54.63.03 62.56v55.153H51.22zm76.781 0V62.199h-23.791c0-8.891 1.682-16.401 5.046-22.53 3.365-6.127 9.613-10.754 18.745-13.878V2c-7.45.961-14.359 3.184-20.727 6.669-6.369 3.484-11.836 7.87-16.402 13.157-4.566 5.287-8.11 11.415-10.634 18.384-2.523 6.97-3.665 14.42-3.424 22.35v55.153H128z\"/></svg>"
        },
        "$:/core/images/refresh-button": {
            "title": "$:/core/images/refresh-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-refresh-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M106.369 39.433c10.16 20.879 6.57 46.764-10.771 64.106-21.87 21.87-57.327 21.87-79.196 0-21.87-21.87-21.87-57.326 0-79.196a8 8 0 1111.314 11.314c-15.621 15.62-15.621 40.947 0 56.568 15.62 15.621 40.947 15.621 56.568 0C97.72 78.79 99.6 58.175 89.924 42.73l-6.44 12.264a8 8 0 11-14.166-7.437L84.435 18.76a8 8 0 0110.838-3.345l28.873 15.345a8 8 0 11-7.51 14.129l-10.267-5.457zm-8.222-12.368c-.167-.19-.336-.38-.506-.57l.96-.296-.454.866z\"/></svg>"
        },
        "$:/core/images/right-arrow": {
            "title": "$:/core/images/right-arrow",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-right-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M99.069 64.173c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l50.382-50.382-50.382-50.382a7.92 7.92 0 010-11.195c3.086-3.085 8.104-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.316 5.595z\"/></svg>"
        },
        "$:/core/images/rotate-left": {
            "title": "$:/core/images/rotate-left",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-rotate-left tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"32\" height=\"80\" rx=\"8\"/><rect width=\"80\" height=\"32\" x=\"48\" y=\"96\" rx=\"8\"/><path d=\"M61.32 36.65c19.743 2.45 35.023 19.287 35.023 39.693a4 4 0 01-8 0c0-15.663-11.254-28.698-26.117-31.46l3.916 3.916a4 4 0 11-5.657 5.657L49.172 43.142a4 4 0 010-5.657l11.313-11.313a4 4 0 115.657 5.656l-4.821 4.822z\"/></g></svg>"
        },
        "$:/core/images/save-button": {
            "title": "$:/core/images/save-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-save-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M120.783 34.33c4.641 8.862 7.266 18.948 7.266 29.646 0 35.347-28.653 64-64 64-35.346 0-64-28.653-64-64 0-35.346 28.654-64 64-64 18.808 0 35.72 8.113 47.43 21.03l2.68-2.68c3.13-3.13 8.197-3.132 11.321-.008 3.118 3.118 3.121 8.193-.007 11.32l-4.69 4.691zm-12.058 12.058a47.876 47.876 0 013.324 17.588c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48c14.39 0 27.3 6.332 36.098 16.362L58.941 73.544 41.976 56.578c-3.127-3.127-8.201-3.123-11.32-.005-3.123 3.124-3.119 8.194.006 11.319l22.617 22.617a7.992 7.992 0 005.659 2.347c2.05 0 4.101-.783 5.667-2.349l44.12-44.12z\"/></svg>"
        },
        "$:/core/images/size": {
            "title": "$:/core/images/size",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-size tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M92.343 26l-9.171 9.172a4 4 0 105.656 5.656l16-16a4 4 0 000-5.656l-16-16a4 4 0 10-5.656 5.656L92.343 18H22a4 4 0 00-4 4v70.343l-9.172-9.171a4 4 0 10-5.656 5.656l16 16a4 4 0 005.656 0l16-16a4 4 0 10-5.656-5.656L26 92.343V22l-4 4h70.343zM112 52v64l4-4H52a4 4 0 100 8h64a4 4 0 004-4V52a4 4 0 10-8 0z\"/></svg>"
        },
        "$:/core/images/spiral": {
            "title": "$:/core/images/spiral",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-spiral tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M64.534 68.348c3.39 0 6.097-2.62 6.476-5.968l-4.755-.538 4.75.583c.377-3.07-1.194-6.054-3.89-7.78-2.757-1.773-6.34-2.01-9.566-.7-3.46 1.403-6.14 4.392-7.35 8.148l-.01.026c-1.3 4.08-.72 8.64 1.58 12.52 2.5 4.2 6.77 7.2 11.76 8.27 5.37 1.15 11.11-.05 15.83-3.31 5.04-3.51 8.46-9.02 9.45-15.3 1.05-6.7-.72-13.63-4.92-19.19l.02.02c-4.42-5.93-11.2-9.82-18.78-10.78-7.96-1.01-16.13 1.31-22.59 6.43-6.81 5.39-11.18 13.41-12.11 22.26-.98 9.27 1.87 18.65 7.93 26.02 6.32 7.69 15.6 12.56 25.74 13.48 10.54.96 21.15-2.42 29.45-9.4l.01-.01c8.58-7.25 13.94-17.78 14.86-29.21.94-11.84-2.96-23.69-10.86-32.9-8.19-9.5-19.95-15.36-32.69-16.27-13.16-.94-26.24 3.49-36.34 12.34l.01-.01c-10.41 9.08-16.78 22.1-17.68 36.15-.93 14.44 4.03 28.77 13.79 39.78 10.03 11.32 24.28 18.2 39.6 19.09 15.73.92 31.31-4.56 43.24-15.234 12.23-10.954 19.61-26.44 20.5-43.074a4.785 4.785 0 00-4.52-5.03 4.778 4.778 0 00-5.03 4.52c-.75 14.1-7 27.2-17.33 36.45-10.03 8.98-23.11 13.58-36.3 12.81-12.79-.75-24.67-6.48-33-15.89-8.07-9.11-12.17-20.94-11.41-32.827.74-11.52 5.942-22.15 14.43-29.54l.01-.01c8.18-7.17 18.74-10.75 29.35-9.998 10.21.726 19.6 5.41 26.11 12.96 6.24 7.273 9.32 16.61 8.573 25.894-.718 8.9-4.88 17.064-11.504 22.66l.01-.007c-6.36 5.342-14.44 7.92-22.425 7.19-7.604-.68-14.52-4.314-19.21-10.027-4.44-5.4-6.517-12.23-5.806-18.94.67-6.3 3.76-11.977 8.54-15.766 4.46-3.54 10.05-5.128 15.44-4.44 5.03.63 9.46 3.18 12.32 7.01l.02.024c2.65 3.5 3.75 7.814 3.1 11.92-.59 3.71-2.58 6.925-5.45 8.924-2.56 1.767-5.61 2.403-8.38 1.81-2.42-.516-4.42-1.92-5.53-3.79-.93-1.56-1.15-3.3-.69-4.75l-4.56-1.446L59.325 65c.36-1.12 1.068-1.905 1.84-2.22.25-.103.48-.14.668-.13.06.006.11.015.14.025.01 0 .01 0-.01-.01a1.047 1.047 0 01-.264-.332c-.15-.29-.23-.678-.18-1.11l-.005.04c.15-1.332 1.38-2.523 3.035-2.523-2.65 0-4.79 2.144-4.79 4.787s2.14 4.785 4.78 4.785z\"/></svg>"
        },
        "$:/core/images/stamp": {
            "title": "$:/core/images/stamp",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-stamp tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M49.733 64H16.01C11.584 64 8 67.583 8 72.003V97h112V72.003A8 8 0 00111.99 64H78.267A22.813 22.813 0 0175.5 53.077c0-6.475 2.687-12.324 7.009-16.497A22.818 22.818 0 0087 22.952C87 10.276 76.703 0 64 0S41 10.276 41 22.952c0 5.103 1.669 9.817 4.491 13.628 4.322 4.173 7.009 10.022 7.009 16.497 0 3.954-1.002 7.675-2.767 10.923zM8 104h112v8H8v-8z\"/></svg>"
        },
        "$:/core/images/star-filled": {
            "title": "$:/core/images/star-filled",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-star-filled tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M61.836 96.823l37.327 27.287c2.72 1.99 6.379-.69 5.343-3.912L90.29 75.988l-1.26 3.91 37.285-27.345c2.718-1.993 1.32-6.327-2.041-6.33l-46.113-.036 3.3 2.416L67.176 4.416c-1.04-3.221-5.563-3.221-6.604 0L46.29 48.603l3.3-2.416-46.113.036c-3.362.003-4.759 4.337-2.04 6.33L38.72 79.898l-1.26-3.91-14.216 44.21c-1.036 3.223 2.622 5.901 5.343 3.912l37.326-27.287h-4.078z\"/></svg>"
        },
        "$:/core/images/storyview-classic": {
            "title": "$:/core/images/storyview-classic",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-classic tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16C19.581 16 16 19.578 16 23.992v16.016C16 44.422 19.588 48 24 48h80c4.419 0 8-3.578 8-7.992V23.992c0-4.414-3.588-7.992-8-7.992H24zm0 48C19.581 64 16 67.59 16 72c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24zm0 32C19.581 96 16 99.59 16 104c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24z\"/></svg>"
        },
        "$:/core/images/storyview-pop": {
            "title": "$:/core/images/storyview-pop",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-pop tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16C19.581 16 16 19.578 16 23.992v16.016C16 44.422 19.588 48 24 48h80c4.419 0 8-3.578 8-7.992V23.992c0-4.414-3.588-7.992-8-7.992H24zm-7.99 40C11.587 56 8 59.578 8 63.992v16.016C8 84.422 11.584 88 16.01 88h95.98c4.424 0 8.01-3.578 8.01-7.992V63.992c0-4.414-3.584-7.992-8.01-7.992H16.01zM24 96C19.581 96 16 99.59 16 104c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24zm0-32C19.581 64 16 67.59 16 72c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24z\"/></svg>"
        },
        "$:/core/images/storyview-zoomin": {
            "title": "$:/core/images/storyview-zoomin",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-zoomin tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16A8 8 0 0016 24.009V71.99C16 76.414 19.588 80 24 80h80a8 8 0 008-8.009V24.01c0-4.423-3.588-8.009-8-8.009H24z\"/></svg>"
        },
        "$:/core/images/strikethrough": {
            "title": "$:/core/images/strikethrough",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-strikethrough tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M92.794 38.726h15.422c-.229-6.74-1.514-12.538-3.856-17.393-2.342-4.855-5.54-8.881-9.596-12.08-4.055-3.199-8.767-5.54-14.136-7.025C75.258.743 69.433 0 63.15 0a62.76 62.76 0 00-16.364 2.142C41.474 3.57 36.733 5.74 32.564 8.653c-4.17 2.913-7.511 6.626-10.025 11.138-2.513 4.512-3.77 9.853-3.77 16.022 0 5.597 1.115 10.252 3.342 13.965 2.228 3.712 5.198 6.74 8.91 9.081 3.713 2.342 7.911 4.227 12.595 5.655a194.641 194.641 0 0014.308 3.77c4.855 1.085 9.624 2.142 14.308 3.17 4.683 1.028 8.881 2.37 12.594 4.027 3.713 1.656 6.683 3.798 8.91 6.425 2.228 2.628 3.342 6.055 3.342 10.281 0 4.456-.914 8.111-2.742 10.967a19.953 19.953 0 01-7.197 6.768c-2.97 1.657-6.311 2.828-10.024 3.513a60.771 60.771 0 01-11.052 1.028c-4.57 0-9.025-.571-13.366-1.713-4.34-1.143-8.139-2.913-11.394-5.312-3.256-2.4-5.884-5.455-7.883-9.168-1.999-3.712-2.998-8.139-2.998-13.28H15c0 7.426 1.342 13.852 4.027 19.278 2.684 5.426 6.34 9.881 10.966 13.365 4.627 3.484 9.996 6.083 16.107 7.797 6.112 1.713 12.595 2.57 19.449 2.57 5.597 0 11.223-.657 16.878-1.97 5.655-1.314 10.767-3.428 15.336-6.34 4.57-2.914 8.31-6.683 11.224-11.31 2.913-4.626 4.37-10.195 4.37-16.707 0-6.054-1.115-11.08-3.342-15.079-2.228-3.998-5.198-7.31-8.91-9.938-3.713-2.627-7.911-4.712-12.595-6.254a170.83 170.83 0 00-14.308-4.027 549.669 549.669 0 00-14.308-3.17c-4.683-.971-8.881-2.2-12.594-3.684-3.713-1.485-6.683-3.399-8.91-5.74-2.228-2.342-3.342-5.398-3.342-9.168 0-3.998.771-7.34 2.313-10.024 1.543-2.685 3.599-4.826 6.17-6.426 2.57-1.599 5.51-2.741 8.824-3.427a49.767 49.767 0 0110.11-1.028c8.453 0 15.393 1.97 20.819 5.912 5.426 3.94 8.596 10.31 9.51 19.106z\"/><path d=\"M5 54h118v16H5z\"/></g></svg>"
        },
        "$:/core/images/subscript": {
            "title": "$:/core/images/subscript",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-subscript tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M2.272 16h19.91l21.649 33.675L66.414 16h18.708L53.585 61.969l33.809 49.443H67.082L43.296 74.93l-24.187 36.48H0L33.808 61.97 2.272 16zM127.91 128.412H85.328c.059-5.168 1.306-9.681 3.741-13.542 2.435-3.86 5.761-7.216 9.978-10.066a112.388 112.388 0 016.325-4.321 50.09 50.09 0 006.058-4.499c1.841-1.603 3.356-3.34 4.543-5.211 1.188-1.871 1.812-4.024 1.871-6.46 0-1.128-.133-2.33-.4-3.607a9.545 9.545 0 00-1.56-3.564c-.772-1.098-1.84-2.019-3.207-2.761-1.366-.743-3.148-1.114-5.345-1.114-2.02 0-3.697.4-5.033 1.203-1.337.801-2.406 1.9-3.208 3.296-.801 1.396-1.395 3.044-1.781 4.944-.386 1.9-.609 3.95-.668 6.147H86.486c0-3.445.46-6.637 1.38-9.577.921-2.94 2.302-5.478 4.143-7.617 1.841-2.138 4.083-3.815 6.726-5.033 2.643-1.217 5.716-1.826 9.22-1.826 3.802 0 6.979.623 9.533 1.87 2.554 1.248 4.617 2.822 6.191 4.722 1.574 1.9 2.688 3.965 3.341 6.192.653 2.227.98 4.35.98 6.37 0 2.494-.386 4.75-1.158 6.77a21.803 21.803 0 01-3.118 5.568 31.516 31.516 0 01-4.454 4.677 66.788 66.788 0 01-5.167 4.009 139.198 139.198 0 01-5.346 3.563 79.237 79.237 0 00-4.944 3.386c-1.514 1.128-2.836 2.3-3.964 3.518-1.129 1.218-1.9 2.51-2.317 3.876h30.379v9.087z\"/></svg>"
        },
        "$:/core/images/superscript": {
            "title": "$:/core/images/superscript",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-superscript tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M2.272 16h19.91l21.649 33.675L66.414 16h18.708L53.585 61.969l33.809 49.443H67.082L43.296 74.93l-24.187 36.48H0L33.808 61.97 2.272 16zM127.91 63.412H85.328c.059-5.168 1.306-9.681 3.741-13.542 2.435-3.86 5.761-7.216 9.978-10.066a112.388 112.388 0 016.325-4.321 50.09 50.09 0 006.058-4.499c1.841-1.603 3.356-3.34 4.543-5.211 1.188-1.871 1.812-4.024 1.871-6.46 0-1.128-.133-2.33-.4-3.607a9.545 9.545 0 00-1.56-3.564c-.772-1.098-1.84-2.019-3.207-2.761-1.366-.743-3.148-1.114-5.345-1.114-2.02 0-3.697.4-5.033 1.203-1.337.801-2.406 1.9-3.208 3.296-.801 1.396-1.395 3.044-1.781 4.944-.386 1.9-.609 3.95-.668 6.147H86.486c0-3.445.46-6.637 1.38-9.577.921-2.94 2.302-5.478 4.143-7.617 1.841-2.138 4.083-3.815 6.726-5.033 2.643-1.217 5.716-1.826 9.22-1.826 3.802 0 6.979.623 9.533 1.87 2.554 1.248 4.617 2.822 6.191 4.722 1.574 1.9 2.688 3.965 3.341 6.192.653 2.227.98 4.35.98 6.37 0 2.494-.386 4.75-1.158 6.77a21.803 21.803 0 01-3.118 5.568 31.516 31.516 0 01-4.454 4.677 66.788 66.788 0 01-5.167 4.009 139.198 139.198 0 01-5.346 3.563 79.237 79.237 0 00-4.944 3.386c-1.514 1.128-2.836 2.3-3.964 3.518-1.129 1.218-1.9 2.51-2.317 3.876h30.379v9.087z\"/></svg>"
        },
        "$:/core/images/tag-button": {
            "title": "$:/core/images/tag-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-tag-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M18.164 47.66l.004 4.105c.003 3.823 2.19 9.097 4.885 11.792l61.85 61.85c2.697 2.697 7.068 2.69 9.769-.01L125.767 94.3a6.903 6.903 0 00.01-9.77L63.928 22.683c-2.697-2.697-7.976-4.88-11.796-4.881l-27.076-.007a6.902 6.902 0 00-6.91 6.91l.008 9.96.287.033c3.73.411 8.489-.044 13.365-1.153a9.702 9.702 0 0111.14-3.662l.291-.13.128.285a9.7 9.7 0 013.3 2.17c3.796 3.796 3.801 9.945.012 13.734-3.618 3.618-9.386 3.777-13.204.482-5.365 1.122-10.674 1.596-15.309 1.237z\"/><path d=\"M47.633 39.532l.023.051c-9.689 4.356-21.584 6.799-30.396 5.828C5.273 44.089-1.028 36.43 2.443 24.078 5.562 12.976 14.3 4.361 24.047 1.548c10.68-3.083 19.749 1.968 19.749 13.225h-8.623c0-4.859-3.078-6.573-8.735-4.94-6.91 1.995-13.392 8.383-15.694 16.577-1.915 6.818.417 9.653 7.46 10.43 7.126.785 17.531-1.352 25.917-5.121l.027.06.036-.017c1.76-.758 6.266 6.549 3.524 7.74a2.8 2.8 0 01-.075.03z\"/></g></svg>"
        },
        "$:/core/images/theme-button": {
            "title": "$:/core/images/theme-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-theme-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.854 66.945a122.626 122.626 0 01-3.9-4.819c-11.064-14.548-16.645-6.888-22.96 0-6.315 6.888 1.664 12.47-4.33 17.335-5.993 4.866-5.623 6.552-15.737-2.35-10.115-8.9-10.815-11.351-6.172-16.43 4.644-5.08 8.524 2.918 18.01-6.108 9.485-9.026 1.517-17.026 1.517-17.026S42.03-2.824 68.42.157c26.39 2.982-9.984-3.86-19.031 27.801-3.874 13.556.72 10.362 8.066 16.087 1.707 1.33 6.428 4.732 12.671 9.318-6.129 5.879-11.157 10.669-14.273 13.582zm11.641 12.947c16.013 17.036 37.742 37.726 45.117 40.42 10.432 3.813 15.388-3.141 15.388-14.79 0-7.151-23.83-26.542-43.924-41.769-7.408 7.156-13.376 12.953-16.58 16.139z\"/><path d=\"M11.069 109.828L46.31 74.587a3.56 3.56 0 115.037-5.032l15.098 15.098a3.56 3.56 0 11-5.032 5.037l-35.24 35.241c-4.171 4.17-10.933 4.17-15.104 0-4.17-4.17-4.17-10.933 0-15.103zM124.344 6.622l5.034 5.034-7.49 12.524-7.613 2.58L61.413 79.62l-5.034-5.034 52.861-52.862 2.58-7.614 12.524-7.49z\"/></g></svg>"
        },
        "$:/core/images/timestamp-off": {
            "title": "$:/core/images/timestamp-off",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-timestamp-off tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M58.25 11C26.08 11 0 37.082 0 69.25s26.08 58.25 58.25 58.25c32.175 0 58.25-26.082 58.25-58.25S90.425 11 58.25 11zm0 100.5C34.914 111.5 16 92.586 16 69.25 16 45.92 34.914 27 58.25 27s42.25 18.92 42.25 42.25c0 23.336-18.914 42.25-42.25 42.25zM49.704 10a5 5 0 010-10H66.69a5 5 0 015 5c.006 2.757-2.238 5-5 5H49.705z\"/><path d=\"M58.25 35.88c-18.777 0-33.998 15.224-33.998 33.998 0 18.773 15.22 34.002 33.998 34.002 18.784 0 34.002-15.23 34.002-34.002 0-18.774-15.218-33.998-34.002-33.998zm-3.03 50.123H44.196v-34H55.22v34zm16.976 0H61.17v-34h11.025v34z\"/></g></svg>"
        },
        "$:/core/images/timestamp-on": {
            "title": "$:/core/images/timestamp-on",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-timestamp-on tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M58.25 11C26.08 11 0 37.082 0 69.25s26.08 58.25 58.25 58.25c32.175 0 58.25-26.082 58.25-58.25S90.425 11 58.25 11zm0 100.5C34.914 111.5 16 92.586 16 69.25 16 45.92 34.914 27 58.25 27s42.25 18.92 42.25 42.25c0 23.336-18.914 42.25-42.25 42.25zM49.704 10a5 5 0 010-10H66.69a5 5 0 015 5c.006 2.757-2.238 5-5 5H49.705z\"/><path d=\"M13.41 27.178a5.005 5.005 0 01-7.045-.613 5.008 5.008 0 01.616-7.047l9.95-8.348a5 5 0 016.429 7.661l-9.95 8.348zm89.573 0a5.005 5.005 0 007.045-.613 5.008 5.008 0 00-.616-7.047l-9.95-8.348a5 5 0 00-6.428 7.661l9.95 8.348zM65.097 71.072c0 3.826-3.09 6.928-6.897 6.928-3.804.006-6.9-3.102-6.903-6.928 0 0 4.76-39.072 6.903-39.072s6.897 39.072 6.897 39.072z\"/></g></svg>"
        },
        "$:/core/images/tip": {
            "title": "$:/core/images/tip",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-tip tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 128.242c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64-35.346 0-64 28.654-64 64 0 35.346 28.654 64 64 64zm11.936-36.789c-.624 4.129-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349C54.33 94.05 58.824 95.82 64 95.82c5.175 0 9.67-1.769 11.936-4.366zm0 4.492c-.624 4.13-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zm0 4.456c-.624 4.129-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zm0 4.492c-.624 4.13-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zM64.3 24.242c11.618 0 23.699 7.82 23.699 24.2S75.92 71.754 75.92 83.576c0 5.873-5.868 9.26-11.92 9.26s-12.027-3.006-12.027-9.26C51.973 71.147 40 65.47 40 48.442s12.683-24.2 24.301-24.2z\"/></svg>"
        },
        "$:/core/images/transcludify": {
            "title": "$:/core/images/transcludify",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-transcludify-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M0 59.482c.591 0 1.36-.089 2.306-.266a10.417 10.417 0 002.75-.932 6.762 6.762 0 002.306-1.907c.651-.828.976-1.863.976-3.104V35.709c0-2.01.414-3.74 1.242-5.19.828-1.448 1.833-2.66 3.016-3.636s2.425-1.7 3.726-2.173c1.3-.473 2.424-.71 3.37-.71h8.073v7.451h-4.88c-1.241 0-2.232.207-2.97.621-.74.414-1.302.932-1.686 1.552a4.909 4.909 0 00-.71 1.996c-.089.71-.133 1.39-.133 2.04v16.677c0 1.715-.325 3.134-.976 4.258-.65 1.123-1.434 2.025-2.35 2.705-.917.68-1.863 1.168-2.839 1.464-.976.296-1.818.473-2.528.532v.178c.71.059 1.552.207 2.528.443.976.237 1.922.68 2.839 1.33.916.651 1.7 1.583 2.35 2.795.65 1.212.976 2.853.976 4.923v16.144c0 .65.044 1.33.133 2.04.089.71.325 1.375.71 1.996.384.621.946 1.139 1.685 1.553.74.414 1.73.62 2.972.62h4.879v7.452h-8.073c-.946 0-2.07-.237-3.37-.71-1.301-.473-2.543-1.197-3.726-2.173-1.183-.976-2.188-2.188-3.016-3.637-.828-1.449-1.242-3.179-1.242-5.19V74.119c0-1.42-.325-2.572-.976-3.46-.65-.886-1.419-1.581-2.306-2.084a8.868 8.868 0 00-2.75-1.02C1.36 67.377.591 67.288 0 67.288v-7.806zm24.66 0c.591 0 1.36-.089 2.306-.266a10.417 10.417 0 002.75-.932 6.762 6.762 0 002.306-1.907c.65-.828.976-1.863.976-3.104V35.709c0-2.01.414-3.74 1.242-5.19.828-1.448 1.833-2.66 3.016-3.636s2.425-1.7 3.726-2.173c1.3-.473 2.424-.71 3.37-.71h8.073v7.451h-4.88c-1.241 0-2.232.207-2.97.621-.74.414-1.302.932-1.686 1.552a4.909 4.909 0 00-.71 1.996c-.089.71-.133 1.39-.133 2.04v16.677c0 1.715-.325 3.134-.976 4.258-.65 1.123-1.434 2.025-2.35 2.705-.917.68-1.863 1.168-2.839 1.464-.976.296-1.818.473-2.528.532v.178c.71.059 1.552.207 2.528.443.976.237 1.922.68 2.839 1.33.916.651 1.7 1.583 2.35 2.795.65 1.212.976 2.853.976 4.923v16.144c0 .65.044 1.33.133 2.04.089.71.325 1.375.71 1.996.384.621.946 1.139 1.685 1.553.74.414 1.73.62 2.972.62h4.879v7.452h-8.073c-.946 0-2.07-.237-3.37-.71-1.301-.473-2.543-1.197-3.726-2.173-1.183-.976-2.188-2.188-3.016-3.637-.828-1.449-1.242-3.179-1.242-5.19V74.119c0-1.42-.325-2.572-.976-3.46-.65-.886-1.419-1.581-2.306-2.084a8.868 8.868 0 00-2.75-1.02c-.946-.177-1.715-.266-2.306-.266v-7.806zm43.965-3.538L80.6 52.041l2.306 7.097-12.063 3.903 7.628 10.378-6.12 4.435-7.63-10.467-7.45 10.201-5.943-4.524 7.628-10.023-12.152-4.17 2.306-7.096 12.064 4.17V43.347h7.451v12.596zm34.425 11.344c-.65 0-1.449.089-2.395.266-.946.177-1.863.488-2.75.931a6.356 6.356 0 00-2.262 1.908c-.62.828-.931 1.862-.931 3.104v17.564c0 2.01-.414 3.74-1.242 5.189-.828 1.449-1.833 2.661-3.016 3.637s-2.425 1.7-3.726 2.173c-1.3.473-2.424.71-3.37.71h-8.073v-7.451h4.88c1.241 0 2.232-.207 2.97-.621.74-.414 1.302-.932 1.686-1.553a4.9 4.9 0 00.71-1.995c.089-.71.133-1.39.133-2.04V72.432c0-1.715.325-3.134.976-4.258.65-1.124 1.434-2.01 2.35-2.661.917-.65 1.863-1.124 2.839-1.42.976-.295 1.818-.502 2.528-.62v-.178c-.71-.059-1.552-.207-2.528-.443-.976-.237-1.922-.68-2.839-1.33-.916-.651-1.7-1.583-2.35-2.795-.65-1.212-.976-2.853-.976-4.923V37.66c0-.651-.044-1.331-.133-2.04a4.909 4.909 0 00-.71-1.997c-.384-.62-.946-1.138-1.685-1.552-.74-.414-1.73-.62-2.972-.62h-4.879V24h8.073c.946 0 2.07.237 3.37.71 1.301.473 2.543 1.197 3.726 2.173 1.183.976 2.188 2.188 3.016 3.637.828 1.449 1.242 3.178 1.242 5.189v16.943c0 1.419.31 2.572.931 3.46a6.897 6.897 0 002.262 2.084 8.868 8.868 0 002.75 1.02c.946.177 1.745.266 2.395.266v7.806zm24.66 0c-.65 0-1.449.089-2.395.266-.946.177-1.863.488-2.75.931a6.356 6.356 0 00-2.262 1.908c-.62.828-.931 1.862-.931 3.104v17.564c0 2.01-.414 3.74-1.242 5.189-.828 1.449-1.833 2.661-3.016 3.637s-2.425 1.7-3.726 2.173c-1.3.473-2.424.71-3.37.71h-8.073v-7.451h4.88c1.241 0 2.232-.207 2.97-.621.74-.414 1.302-.932 1.686-1.553a4.9 4.9 0 00.71-1.995c.089-.71.133-1.39.133-2.04V72.432c0-1.715.325-3.134.976-4.258.65-1.124 1.434-2.01 2.35-2.661.917-.65 1.863-1.124 2.839-1.42.976-.295 1.818-.502 2.528-.62v-.178c-.71-.059-1.552-.207-2.528-.443-.976-.237-1.922-.68-2.839-1.33-.916-.651-1.7-1.583-2.35-2.795-.65-1.212-.976-2.853-.976-4.923V37.66c0-.651-.044-1.331-.133-2.04a4.909 4.909 0 00-.71-1.997c-.384-.62-.946-1.138-1.685-1.552-.74-.414-1.73-.62-2.972-.62h-4.879V24h8.073c.946 0 2.07.237 3.37.71 1.301.473 2.543 1.197 3.726 2.173 1.183.976 2.188 2.188 3.016 3.637.828 1.449 1.242 3.178 1.242 5.189v16.943c0 1.419.31 2.572.931 3.46a6.897 6.897 0 002.262 2.084 8.868 8.868 0 002.75 1.02c.946.177 1.745.266 2.395.266v7.806z\"/></svg>"
        },
        "$:/core/images/twitter": {
            "title": "$:/core/images/twitter",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-twitter tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M41.626 115.803A73.376 73.376 0 012 104.235c2.022.238 4.08.36 6.166.36 12.111 0 23.258-4.117 32.105-11.023-11.312-.208-20.859-7.653-24.148-17.883a25.98 25.98 0 0011.674-.441C15.971 72.881 7.061 62.474 7.061 49.997c0-.108 0-.216.002-.323a25.824 25.824 0 0011.709 3.22c-6.936-4.617-11.5-12.5-11.5-21.433 0-4.719 1.274-9.142 3.5-12.945 12.75 15.579 31.797 25.83 53.281 26.904-.44-1.884-.67-3.85-.67-5.868 0-14.22 11.575-25.75 25.852-25.75a25.865 25.865 0 0118.869 8.132 51.892 51.892 0 0016.415-6.248c-1.93 6.012-6.029 11.059-11.366 14.246A51.844 51.844 0 00128 25.878a52.428 52.428 0 01-12.9 13.33c.05 1.104.075 2.214.075 3.33 0 34.028-26 73.265-73.549 73.265\"/></svg>"
        },
        "$:/core/images/underline": {
            "title": "$:/core/images/underline",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-underline tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M7 117.421h114.248V128H7v-10.579zm97.871-18.525V0h-16.26v55.856c0 4.463-.605 8.576-1.816 12.338-1.212 3.762-3.03 7.046-5.452 9.851-2.423 2.806-5.452 4.974-9.086 6.504-3.635 1.53-7.939 2.296-12.912 2.296-6.25 0-11.159-1.786-14.73-5.356-3.57-3.571-5.356-8.417-5.356-14.538V0H23v65.038c0 5.356.542 10.234 1.626 14.633 1.084 4.4 2.965 8.194 5.643 11.382 2.678 3.188 6.185 5.643 10.52 7.365 4.337 1.721 9.756 2.582 16.26 2.582 7.27 0 13.582-1.435 18.938-4.304 5.356-2.87 9.755-7.365 13.199-13.486h.382v15.686h15.303z\"/></svg>"
        },
        "$:/core/images/unfold-all-button": {
            "title": "$:/core/images/unfold-all-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unfold-all tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"64\" rx=\"8\"/><path d=\"M63.945 60.624c-2.05 0-4.101-.78-5.666-2.345L35.662 35.662c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L63.94 41.314l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.603 58.279a7.986 7.986 0 01-5.663 2.346zM64.004 124.565c-2.05 0-4.102-.78-5.666-2.345L35.721 99.603c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.191-3.122 11.318.005L64 105.255l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.662 122.22a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
        },
        "$:/core/images/unfold-button": {
            "title": "$:/core/images/unfold-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unfold tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><path d=\"M63.945 63.624c-2.05 0-4.101-.78-5.666-2.345L35.662 38.662c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L63.94 44.314l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.603 61.279a7.986 7.986 0 01-5.663 2.346zM64.004 105.682c-2.05.001-4.102-.78-5.666-2.344L35.721 80.721c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.191-3.122 11.318.005L64 86.373l16.966-16.966c3.124-3.125 8.194-3.13 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319l-22.617 22.617a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
        },
        "$:/core/images/unlocked-padlock": {
            "title": "$:/core/images/unlocked-padlock",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unlocked-padlock tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M48.627 64H105v32.01C105 113.674 90.674 128 73.001 128H56C38.318 128 24 113.677 24 96.01V64h6.136c-10.455-12.651-27.364-35.788-4.3-55.142 24.636-20.672 45.835 4.353 55.777 16.201 9.943 11.85-2.676 22.437-12.457 9.892-9.78-12.545-21.167-24.146-33.207-14.043-12.041 10.104-1.757 22.36 8.813 34.958 2.467 2.94 3.641 5.732 3.865 8.134zm19.105 28.364A8.503 8.503 0 0064.5 76a8.5 8.5 0 00-3.498 16.25l-5.095 22.77H72.8l-5.07-22.656z\"/></svg>"
        },
        "$:/core/images/up-arrow": {
            "title": "$:/core/images/up-arrow",
            "created": "20150316000544368",
            "modified": "20150316000831867",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-up-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M63.892.281c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.104 3.092-11.196 0L63.894 19.393 13.513 69.774a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l55.98-55.98A7.892 7.892 0 0163.893.28z\"/></svg>"
        },
        "$:/core/images/video": {
            "title": "$:/core/images/video",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-video tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 12c-34.91 0-55.273 2.917-58.182 5.833C2.91 20.75 0 41.167 0 64.5c0 23.333 2.91 43.75 5.818 46.667C8.728 114.083 29.091 117 64 117c34.91 0 55.273-2.917 58.182-5.833C125.09 108.25 128 87.833 128 64.5c0-23.333-2.91-43.75-5.818-46.667C119.272 14.917 98.909 12 64 12zm-9.084 32.618c-3.813-2.542-6.905-.879-6.905 3.698v31.368c0 4.585 3.099 6.235 6.905 3.698l22.168-14.779c3.813-2.542 3.806-6.669 0-9.206L54.916 44.618z\"/></svg>"
        },
        "$:/core/images/warning": {
            "title": "$:/core/images/warning",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-warning tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M57.072 11c3.079-5.333 10.777-5.333 13.856 0l55.426 96c3.079 5.333-.77 12-6.928 12H8.574c-6.158 0-10.007-6.667-6.928-12l55.426-96zM64 37c-4.418 0-8 3.582-8 7.994v28.012C56 77.421 59.59 81 64 81c4.418 0 8-3.582 8-7.994V44.994C72 40.579 68.41 37 64 37zm0 67a8 8 0 100-16 8 8 0 000 16z\"/></svg>"
        },
        "$:/language/Buttons/AdvancedSearch/Caption": {
            "title": "$:/language/Buttons/AdvancedSearch/Caption",
            "text": "advanced search"
        },
        "$:/language/Buttons/AdvancedSearch/Hint": {
            "title": "$:/language/Buttons/AdvancedSearch/Hint",
            "text": "Advanced search"
        },
        "$:/language/Buttons/Cancel/Caption": {
            "title": "$:/language/Buttons/Cancel/Caption",
            "text": "cancel"
        },
        "$:/language/Buttons/Cancel/Hint": {
            "title": "$:/language/Buttons/Cancel/Hint",
            "text": "Discard changes to this tiddler"
        },
        "$:/language/Buttons/Clone/Caption": {
            "title": "$:/language/Buttons/Clone/Caption",
            "text": "clone"
        },
        "$:/language/Buttons/Clone/Hint": {
            "title": "$:/language/Buttons/Clone/Hint",
            "text": "Clone this tiddler"
        },
        "$:/language/Buttons/Close/Caption": {
            "title": "$:/language/Buttons/Close/Caption",
            "text": "close"
        },
        "$:/language/Buttons/Close/Hint": {
            "title": "$:/language/Buttons/Close/Hint",
            "text": "Close this tiddler"
        },
        "$:/language/Buttons/CloseAll/Caption": {
            "title": "$:/language/Buttons/CloseAll/Caption",
            "text": "close all"
        },
        "$:/language/Buttons/CloseAll/Hint": {
            "title": "$:/language/Buttons/CloseAll/Hint",
            "text": "Close all tiddlers"
        },
        "$:/language/Buttons/CloseOthers/Caption": {
            "title": "$:/language/Buttons/CloseOthers/Caption",
            "text": "close others"
        },
        "$:/language/Buttons/CloseOthers/Hint": {
            "title": "$:/language/Buttons/CloseOthers/Hint",
            "text": "Close other tiddlers"
        },
        "$:/language/Buttons/ControlPanel/Caption": {
            "title": "$:/language/Buttons/ControlPanel/Caption",
            "text": "control panel"
        },
        "$:/language/Buttons/ControlPanel/Hint": {
            "title": "$:/language/Buttons/ControlPanel/Hint",
            "text": "Open control panel"
        },
        "$:/language/Buttons/CopyToClipboard/Caption": {
            "title": "$:/language/Buttons/CopyToClipboard/Caption",
            "text": "copy to clipboard"
        },
        "$:/language/Buttons/CopyToClipboard/Hint": {
            "title": "$:/language/Buttons/CopyToClipboard/Hint",
            "text": "Copy this text to the clipboard"
        },
        "$:/language/Buttons/Delete/Caption": {
            "title": "$:/language/Buttons/Delete/Caption",
            "text": "delete"
        },
        "$:/language/Buttons/Delete/Hint": {
            "title": "$:/language/Buttons/Delete/Hint",
            "text": "Delete this tiddler"
        },
        "$:/language/Buttons/Edit/Caption": {
            "title": "$:/language/Buttons/Edit/Caption",
            "text": "edit"
        },
        "$:/language/Buttons/Edit/Hint": {
            "title": "$:/language/Buttons/Edit/Hint",
            "text": "Edit this tiddler"
        },
        "$:/language/Buttons/Encryption/Caption": {
            "title": "$:/language/Buttons/Encryption/Caption",
            "text": "encryption"
        },
        "$:/language/Buttons/Encryption/Hint": {
            "title": "$:/language/Buttons/Encryption/Hint",
            "text": "Set or clear a password for saving this wiki"
        },
        "$:/language/Buttons/Encryption/ClearPassword/Caption": {
            "title": "$:/language/Buttons/Encryption/ClearPassword/Caption",
            "text": "clear password"
        },
        "$:/language/Buttons/Encryption/ClearPassword/Hint": {
            "title": "$:/language/Buttons/Encryption/ClearPassword/Hint",
            "text": "Clear the password and save this wiki without encryption"
        },
        "$:/language/Buttons/Encryption/SetPassword/Caption": {
            "title": "$:/language/Buttons/Encryption/SetPassword/Caption",
            "text": "set password"
        },
        "$:/language/Buttons/Encryption/SetPassword/Hint": {
            "title": "$:/language/Buttons/Encryption/SetPassword/Hint",
            "text": "Set a password for saving this wiki with encryption"
        },
        "$:/language/Buttons/ExportPage/Caption": {
            "title": "$:/language/Buttons/ExportPage/Caption",
            "text": "export all"
        },
        "$:/language/Buttons/ExportPage/Hint": {
            "title": "$:/language/Buttons/ExportPage/Hint",
            "text": "Export all tiddlers"
        },
        "$:/language/Buttons/ExportTiddler/Caption": {
            "title": "$:/language/Buttons/ExportTiddler/Caption",
            "text": "export tiddler"
        },
        "$:/language/Buttons/ExportTiddler/Hint": {
            "title": "$:/language/Buttons/ExportTiddler/Hint",
            "text": "Export tiddler"
        },
        "$:/language/Buttons/ExportTiddlers/Caption": {
            "title": "$:/language/Buttons/ExportTiddlers/Caption",
            "text": "export tiddlers"
        },
        "$:/language/Buttons/ExportTiddlers/Hint": {
            "title": "$:/language/Buttons/ExportTiddlers/Hint",
            "text": "Export tiddlers"
        },
        "$:/language/Buttons/SidebarSearch/Hint": {
            "title": "$:/language/Buttons/SidebarSearch/Hint",
            "text": "Select the sidebar search field"
        },
        "$:/language/Buttons/Fold/Caption": {
            "title": "$:/language/Buttons/Fold/Caption",
            "text": "fold tiddler"
        },
        "$:/language/Buttons/Fold/Hint": {
            "title": "$:/language/Buttons/Fold/Hint",
            "text": "Fold the body of this tiddler"
        },
        "$:/language/Buttons/Fold/FoldBar/Caption": {
            "title": "$:/language/Buttons/Fold/FoldBar/Caption",
            "text": "fold-bar"
        },
        "$:/language/Buttons/Fold/FoldBar/Hint": {
            "title": "$:/language/Buttons/Fold/FoldBar/Hint",
            "text": "Optional bars to fold and unfold tiddlers"
        },
        "$:/language/Buttons/Unfold/Caption": {
            "title": "$:/language/Buttons/Unfold/Caption",
            "text": "unfold tiddler"
        },
        "$:/language/Buttons/Unfold/Hint": {
            "title": "$:/language/Buttons/Unfold/Hint",
            "text": "Unfold the body of this tiddler"
        },
        "$:/language/Buttons/FoldOthers/Caption": {
            "title": "$:/language/Buttons/FoldOthers/Caption",
            "text": "fold other tiddlers"
        },
        "$:/language/Buttons/FoldOthers/Hint": {
            "title": "$:/language/Buttons/FoldOthers/Hint",
            "text": "Fold the bodies of other opened tiddlers"
        },
        "$:/language/Buttons/FoldAll/Caption": {
            "title": "$:/language/Buttons/FoldAll/Caption",
            "text": "fold all tiddlers"
        },
        "$:/language/Buttons/FoldAll/Hint": {
            "title": "$:/language/Buttons/FoldAll/Hint",
            "text": "Fold the bodies of all opened tiddlers"
        },
        "$:/language/Buttons/UnfoldAll/Caption": {
            "title": "$:/language/Buttons/UnfoldAll/Caption",
            "text": "unfold all tiddlers"
        },
        "$:/language/Buttons/UnfoldAll/Hint": {
            "title": "$:/language/Buttons/UnfoldAll/Hint",
            "text": "Unfold the bodies of all opened tiddlers"
        },
        "$:/language/Buttons/FullScreen/Caption": {
            "title": "$:/language/Buttons/FullScreen/Caption",
            "text": "full-screen"
        },
        "$:/language/Buttons/FullScreen/Hint": {
            "title": "$:/language/Buttons/FullScreen/Hint",
            "text": "Enter or leave full-screen mode"
        },
        "$:/language/Buttons/Help/Caption": {
            "title": "$:/language/Buttons/Help/Caption",
            "text": "help"
        },
        "$:/language/Buttons/Help/Hint": {
            "title": "$:/language/Buttons/Help/Hint",
            "text": "Show help panel"
        },
        "$:/language/Buttons/Import/Caption": {
            "title": "$:/language/Buttons/Import/Caption",
            "text": "import"
        },
        "$:/language/Buttons/Import/Hint": {
            "title": "$:/language/Buttons/Import/Hint",
            "text": "Import many types of file including text, image, TiddlyWiki or JSON"
        },
        "$:/language/Buttons/Info/Caption": {
            "title": "$:/language/Buttons/Info/Caption",
            "text": "info"
        },
        "$:/language/Buttons/Info/Hint": {
            "title": "$:/language/Buttons/Info/Hint",
            "text": "Show information for this tiddler"
        },
        "$:/language/Buttons/Home/Caption": {
            "title": "$:/language/Buttons/Home/Caption",
            "text": "home"
        },
        "$:/language/Buttons/Home/Hint": {
            "title": "$:/language/Buttons/Home/Hint",
            "text": "Open the default tiddlers"
        },
        "$:/language/Buttons/Language/Caption": {
            "title": "$:/language/Buttons/Language/Caption",
            "text": "language"
        },
        "$:/language/Buttons/Language/Hint": {
            "title": "$:/language/Buttons/Language/Hint",
            "text": "Choose the user interface language"
        },
        "$:/language/Buttons/Manager/Caption": {
            "title": "$:/language/Buttons/Manager/Caption",
            "text": "tiddler manager"
        },
        "$:/language/Buttons/Manager/Hint": {
            "title": "$:/language/Buttons/Manager/Hint",
            "text": "Open tiddler manager"
        },
        "$:/language/Buttons/More/Caption": {
            "title": "$:/language/Buttons/More/Caption",
            "text": "more"
        },
        "$:/language/Buttons/More/Hint": {
            "title": "$:/language/Buttons/More/Hint",
            "text": "More actions"
        },
        "$:/language/Buttons/NewHere/Caption": {
            "title": "$:/language/Buttons/NewHere/Caption",
            "text": "new here"
        },
        "$:/language/Buttons/NewHere/Hint": {
            "title": "$:/language/Buttons/NewHere/Hint",
            "text": "Create a new tiddler tagged with this one"
        },
        "$:/language/Buttons/NewJournal/Caption": {
            "title": "$:/language/Buttons/NewJournal/Caption",
            "text": "new journal"
        },
        "$:/language/Buttons/NewJournal/Hint": {
            "title": "$:/language/Buttons/NewJournal/Hint",
            "text": "Create a new journal tiddler"
        },
        "$:/language/Buttons/NewJournalHere/Caption": {
            "title": "$:/language/Buttons/NewJournalHere/Caption",
            "text": "new journal here"
        },
        "$:/language/Buttons/NewJournalHere/Hint": {
            "title": "$:/language/Buttons/NewJournalHere/Hint",
            "text": "Create a new journal tiddler tagged with this one"
        },
        "$:/language/Buttons/NewImage/Caption": {
            "title": "$:/language/Buttons/NewImage/Caption",
            "text": "new image"
        },
        "$:/language/Buttons/NewImage/Hint": {
            "title": "$:/language/Buttons/NewImage/Hint",
            "text": "Create a new image tiddler"
        },
        "$:/language/Buttons/NewMarkdown/Caption": {
            "title": "$:/language/Buttons/NewMarkdown/Caption",
            "text": "new Markdown tiddler"
        },
        "$:/language/Buttons/NewMarkdown/Hint": {
            "title": "$:/language/Buttons/NewMarkdown/Hint",
            "text": "Create a new Markdown tiddler"
        },
        "$:/language/Buttons/NewTiddler/Caption": {
            "title": "$:/language/Buttons/NewTiddler/Caption",
            "text": "new tiddler"
        },
        "$:/language/Buttons/NewTiddler/Hint": {
            "title": "$:/language/Buttons/NewTiddler/Hint",
            "text": "Create a new tiddler"
        },
        "$:/language/Buttons/OpenWindow/Caption": {
            "title": "$:/language/Buttons/OpenWindow/Caption",
            "text": "open in new window"
        },
        "$:/language/Buttons/OpenWindow/Hint": {
            "title": "$:/language/Buttons/OpenWindow/Hint",
            "text": "Open tiddler in new window"
        },
        "$:/language/Buttons/Palette/Caption": {
            "title": "$:/language/Buttons/Palette/Caption",
            "text": "palette"
        },
        "$:/language/Buttons/Palette/Hint": {
            "title": "$:/language/Buttons/Palette/Hint",
            "text": "Choose the colour palette"
        },
        "$:/language/Buttons/Permalink/Caption": {
            "title": "$:/language/Buttons/Permalink/Caption",
            "text": "permalink"
        },
        "$:/language/Buttons/Permalink/Hint": {
            "title": "$:/language/Buttons/Permalink/Hint",
            "text": "Set browser address bar to a direct link to this tiddler"
        },
        "$:/language/Buttons/Permaview/Caption": {
            "title": "$:/language/Buttons/Permaview/Caption",
            "text": "permaview"
        },
        "$:/language/Buttons/Permaview/Hint": {
            "title": "$:/language/Buttons/Permaview/Hint",
            "text": "Set browser address bar to a direct link to all the tiddlers in this story"
        },
        "$:/language/Buttons/Print/Caption": {
            "title": "$:/language/Buttons/Print/Caption",
            "text": "print page"
        },
        "$:/language/Buttons/Print/Hint": {
            "title": "$:/language/Buttons/Print/Hint",
            "text": "Print the current page"
        },
        "$:/language/Buttons/Refresh/Caption": {
            "title": "$:/language/Buttons/Refresh/Caption",
            "text": "refresh"
        },
        "$:/language/Buttons/Refresh/Hint": {
            "title": "$:/language/Buttons/Refresh/Hint",
            "text": "Perform a full refresh of the wiki"
        },
        "$:/language/Buttons/Save/Caption": {
            "title": "$:/language/Buttons/Save/Caption",
            "text": "ok"
        },
        "$:/language/Buttons/Save/Hint": {
            "title": "$:/language/Buttons/Save/Hint",
            "text": "Confirm changes to this tiddler"
        },
        "$:/language/Buttons/SaveWiki/Caption": {
            "title": "$:/language/Buttons/SaveWiki/Caption",
            "text": "save changes"
        },
        "$:/language/Buttons/SaveWiki/Hint": {
            "title": "$:/language/Buttons/SaveWiki/Hint",
            "text": "Save changes"
        },
        "$:/language/Buttons/StoryView/Caption": {
            "title": "$:/language/Buttons/StoryView/Caption",
            "text": "storyview"
        },
        "$:/language/Buttons/StoryView/Hint": {
            "title": "$:/language/Buttons/StoryView/Hint",
            "text": "Choose the story visualisation"
        },
        "$:/language/Buttons/HideSideBar/Caption": {
            "title": "$:/language/Buttons/HideSideBar/Caption",
            "text": "hide sidebar"
        },
        "$:/language/Buttons/HideSideBar/Hint": {
            "title": "$:/language/Buttons/HideSideBar/Hint",
            "text": "Hide sidebar"
        },
        "$:/language/Buttons/ShowSideBar/Caption": {
            "title": "$:/language/Buttons/ShowSideBar/Caption",
            "text": "show sidebar"
        },
        "$:/language/Buttons/ShowSideBar/Hint": {
            "title": "$:/language/Buttons/ShowSideBar/Hint",
            "text": "Show sidebar"
        },
        "$:/language/Buttons/TagManager/Caption": {
            "title": "$:/language/Buttons/TagManager/Caption",
            "text": "tag manager"
        },
        "$:/language/Buttons/TagManager/Hint": {
            "title": "$:/language/Buttons/TagManager/Hint",
            "text": "Open tag manager"
        },
        "$:/language/Buttons/Timestamp/Caption": {
            "title": "$:/language/Buttons/Timestamp/Caption",
            "text": "timestamps"
        },
        "$:/language/Buttons/Timestamp/Hint": {
            "title": "$:/language/Buttons/Timestamp/Hint",
            "text": "Choose whether modifications update timestamps"
        },
        "$:/language/Buttons/Timestamp/On/Caption": {
            "title": "$:/language/Buttons/Timestamp/On/Caption",
            "text": "timestamps are on"
        },
        "$:/language/Buttons/Timestamp/On/Hint": {
            "title": "$:/language/Buttons/Timestamp/On/Hint",
            "text": "Update timestamps when tiddlers are modified"
        },
        "$:/language/Buttons/Timestamp/Off/Caption": {
            "title": "$:/language/Buttons/Timestamp/Off/Caption",
            "text": "timestamps are off"
        },
        "$:/language/Buttons/Timestamp/Off/Hint": {
            "title": "$:/language/Buttons/Timestamp/Off/Hint",
            "text": "Don't update timestamps when tiddlers are modified"
        },
        "$:/language/Buttons/Theme/Caption": {
            "title": "$:/language/Buttons/Theme/Caption",
            "text": "theme"
        },
        "$:/language/Buttons/Theme/Hint": {
            "title": "$:/language/Buttons/Theme/Hint",
            "text": "Choose the display theme"
        },
        "$:/language/Buttons/Bold/Caption": {
            "title": "$:/language/Buttons/Bold/Caption",
            "text": "bold"
        },
        "$:/language/Buttons/Bold/Hint": {
            "title": "$:/language/Buttons/Bold/Hint",
            "text": "Apply bold formatting to selection"
        },
        "$:/language/Buttons/Clear/Caption": {
            "title": "$:/language/Buttons/Clear/Caption",
            "text": "clear"
        },
        "$:/language/Buttons/Clear/Hint": {
            "title": "$:/language/Buttons/Clear/Hint",
            "text": "Clear image to solid colour"
        },
        "$:/language/Buttons/EditorHeight/Caption": {
            "title": "$:/language/Buttons/EditorHeight/Caption",
            "text": "editor height"
        },
        "$:/language/Buttons/EditorHeight/Caption/Auto": {
            "title": "$:/language/Buttons/EditorHeight/Caption/Auto",
            "text": "Automatically adjust height to fit content"
        },
        "$:/language/Buttons/EditorHeight/Caption/Fixed": {
            "title": "$:/language/Buttons/EditorHeight/Caption/Fixed",
            "text": "Fixed height:"
        },
        "$:/language/Buttons/EditorHeight/Hint": {
            "title": "$:/language/Buttons/EditorHeight/Hint",
            "text": "Choose the height of the text editor"
        },
        "$:/language/Buttons/Excise/Caption": {
            "title": "$:/language/Buttons/Excise/Caption",
            "text": "excise"
        },
        "$:/language/Buttons/Excise/Caption/Excise": {
            "title": "$:/language/Buttons/Excise/Caption/Excise",
            "text": "Perform excision"
        },
        "$:/language/Buttons/Excise/Caption/MacroName": {
            "title": "$:/language/Buttons/Excise/Caption/MacroName",
            "text": "Macro name:"
        },
        "$:/language/Buttons/Excise/Caption/NewTitle": {
            "title": "$:/language/Buttons/Excise/Caption/NewTitle",
            "text": "Title of new tiddler:"
        },
        "$:/language/Buttons/Excise/Caption/Replace": {
            "title": "$:/language/Buttons/Excise/Caption/Replace",
            "text": "Replace excised text with:"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Macro": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Macro",
            "text": "macro"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Link": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Link",
            "text": "link"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Transclusion": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Transclusion",
            "text": "transclusion"
        },
        "$:/language/Buttons/Excise/Caption/Tag": {
            "title": "$:/language/Buttons/Excise/Caption/Tag",
            "text": "Tag new tiddler with the title of this tiddler"
        },
        "$:/language/Buttons/Excise/Caption/TiddlerExists": {
            "title": "$:/language/Buttons/Excise/Caption/TiddlerExists",
            "text": "Warning: tiddler already exists"
        },
        "$:/language/Buttons/Excise/Hint": {
            "title": "$:/language/Buttons/Excise/Hint",
            "text": "Excise the selected text into a new tiddler"
        },
        "$:/language/Buttons/Heading1/Caption": {
            "title": "$:/language/Buttons/Heading1/Caption",
            "text": "heading 1"
        },
        "$:/language/Buttons/Heading1/Hint": {
            "title": "$:/language/Buttons/Heading1/Hint",
            "text": "Apply heading level 1 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading2/Caption": {
            "title": "$:/language/Buttons/Heading2/Caption",
            "text": "heading 2"
        },
        "$:/language/Buttons/Heading2/Hint": {
            "title": "$:/language/Buttons/Heading2/Hint",
            "text": "Apply heading level 2 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading3/Caption": {
            "title": "$:/language/Buttons/Heading3/Caption",
            "text": "heading 3"
        },
        "$:/language/Buttons/Heading3/Hint": {
            "title": "$:/language/Buttons/Heading3/Hint",
            "text": "Apply heading level 3 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading4/Caption": {
            "title": "$:/language/Buttons/Heading4/Caption",
            "text": "heading 4"
        },
        "$:/language/Buttons/Heading4/Hint": {
            "title": "$:/language/Buttons/Heading4/Hint",
            "text": "Apply heading level 4 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading5/Caption": {
            "title": "$:/language/Buttons/Heading5/Caption",
            "text": "heading 5"
        },
        "$:/language/Buttons/Heading5/Hint": {
            "title": "$:/language/Buttons/Heading5/Hint",
            "text": "Apply heading level 5 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading6/Caption": {
            "title": "$:/language/Buttons/Heading6/Caption",
            "text": "heading 6"
        },
        "$:/language/Buttons/Heading6/Hint": {
            "title": "$:/language/Buttons/Heading6/Hint",
            "text": "Apply heading level 6 formatting to lines containing selection"
        },
        "$:/language/Buttons/Italic/Caption": {
            "title": "$:/language/Buttons/Italic/Caption",
            "text": "italic"
        },
        "$:/language/Buttons/Italic/Hint": {
            "title": "$:/language/Buttons/Italic/Hint",
            "text": "Apply italic formatting to selection"
        },
        "$:/language/Buttons/LineWidth/Caption": {
            "title": "$:/language/Buttons/LineWidth/Caption",
            "text": "line width"
        },
        "$:/language/Buttons/LineWidth/Hint": {
            "title": "$:/language/Buttons/LineWidth/Hint",
            "text": "Set line width for painting"
        },
        "$:/language/Buttons/Link/Caption": {
            "title": "$:/language/Buttons/Link/Caption",
            "text": "link"
        },
        "$:/language/Buttons/Link/Hint": {
            "title": "$:/language/Buttons/Link/Hint",
            "text": "Create wikitext link"
        },
        "$:/language/Buttons/Linkify/Caption": {
            "title": "$:/language/Buttons/Linkify/Caption",
            "text": "wikilink"
        },
        "$:/language/Buttons/Linkify/Hint": {
            "title": "$:/language/Buttons/Linkify/Hint",
            "text": "Wrap selection in square brackets"
        },
        "$:/language/Buttons/ListBullet/Caption": {
            "title": "$:/language/Buttons/ListBullet/Caption",
            "text": "bulleted list"
        },
        "$:/language/Buttons/ListBullet/Hint": {
            "title": "$:/language/Buttons/ListBullet/Hint",
            "text": "Apply bulleted list formatting to lines containing selection"
        },
        "$:/language/Buttons/ListNumber/Caption": {
            "title": "$:/language/Buttons/ListNumber/Caption",
            "text": "numbered list"
        },
        "$:/language/Buttons/ListNumber/Hint": {
            "title": "$:/language/Buttons/ListNumber/Hint",
            "text": "Apply numbered list formatting to lines containing selection"
        },
        "$:/language/Buttons/MonoBlock/Caption": {
            "title": "$:/language/Buttons/MonoBlock/Caption",
            "text": "monospaced block"
        },
        "$:/language/Buttons/MonoBlock/Hint": {
            "title": "$:/language/Buttons/MonoBlock/Hint",
            "text": "Apply monospaced block formatting to lines containing selection"
        },
        "$:/language/Buttons/MonoLine/Caption": {
            "title": "$:/language/Buttons/MonoLine/Caption",
            "text": "monospaced"
        },
        "$:/language/Buttons/MonoLine/Hint": {
            "title": "$:/language/Buttons/MonoLine/Hint",
            "text": "Apply monospaced character formatting to selection"
        },
        "$:/language/Buttons/Opacity/Caption": {
            "title": "$:/language/Buttons/Opacity/Caption",
            "text": "opacity"
        },
        "$:/language/Buttons/Opacity/Hint": {
            "title": "$:/language/Buttons/Opacity/Hint",
            "text": "Set painting opacity"
        },
        "$:/language/Buttons/Paint/Caption": {
            "title": "$:/language/Buttons/Paint/Caption",
            "text": "paint colour"
        },
        "$:/language/Buttons/Paint/Hint": {
            "title": "$:/language/Buttons/Paint/Hint",
            "text": "Set painting colour"
        },
        "$:/language/Buttons/Picture/Caption": {
            "title": "$:/language/Buttons/Picture/Caption",
            "text": "picture"
        },
        "$:/language/Buttons/Picture/Hint": {
            "title": "$:/language/Buttons/Picture/Hint",
            "text": "Insert picture"
        },
        "$:/language/Buttons/Preview/Caption": {
            "title": "$:/language/Buttons/Preview/Caption",
            "text": "preview"
        },
        "$:/language/Buttons/Preview/Hint": {
            "title": "$:/language/Buttons/Preview/Hint",
            "text": "Show preview pane"
        },
        "$:/language/Buttons/PreviewType/Caption": {
            "title": "$:/language/Buttons/PreviewType/Caption",
            "text": "preview type"
        },
        "$:/language/Buttons/PreviewType/Hint": {
            "title": "$:/language/Buttons/PreviewType/Hint",
            "text": "Choose preview type"
        },
        "$:/language/Buttons/Quote/Caption": {
            "title": "$:/language/Buttons/Quote/Caption",
            "text": "quote"
        },
        "$:/language/Buttons/Quote/Hint": {
            "title": "$:/language/Buttons/Quote/Hint",
            "text": "Apply quoted text formatting to lines containing selection"
        },
        "$:/language/Buttons/RotateLeft/Caption": {
            "title": "$:/language/Buttons/RotateLeft/Caption",
            "text": "rotate left"
        },
        "$:/language/Buttons/RotateLeft/Hint": {
            "title": "$:/language/Buttons/RotateLeft/Hint",
            "text": "Rotate image left by 90 degrees"
        },
        "$:/language/Buttons/Size/Caption": {
            "title": "$:/language/Buttons/Size/Caption",
            "text": "image size"
        },
        "$:/language/Buttons/Size/Caption/Height": {
            "title": "$:/language/Buttons/Size/Caption/Height",
            "text": "Height:"
        },
        "$:/language/Buttons/Size/Caption/Resize": {
            "title": "$:/language/Buttons/Size/Caption/Resize",
            "text": "Resize image"
        },
        "$:/language/Buttons/Size/Caption/Width": {
            "title": "$:/language/Buttons/Size/Caption/Width",
            "text": "Width:"
        },
        "$:/language/Buttons/Size/Hint": {
            "title": "$:/language/Buttons/Size/Hint",
            "text": "Set image size"
        },
        "$:/language/Buttons/Stamp/Caption": {
            "title": "$:/language/Buttons/Stamp/Caption",
            "text": "stamp"
        },
        "$:/language/Buttons/Stamp/Caption/New": {
            "title": "$:/language/Buttons/Stamp/Caption/New",
            "text": "Add your own"
        },
        "$:/language/Buttons/Stamp/Hint": {
            "title": "$:/language/Buttons/Stamp/Hint",
            "text": "Insert a preconfigured snippet of text"
        },
        "$:/language/Buttons/Stamp/New/Title": {
            "title": "$:/language/Buttons/Stamp/New/Title",
            "text": "Name as shown in menu"
        },
        "$:/language/Buttons/Stamp/New/Text": {
            "title": "$:/language/Buttons/Stamp/New/Text",
            "text": "Text of snippet. (Remember to add a descriptive title in the caption field)."
        },
        "$:/language/Buttons/Strikethrough/Caption": {
            "title": "$:/language/Buttons/Strikethrough/Caption",
            "text": "strikethrough"
        },
        "$:/language/Buttons/Strikethrough/Hint": {
            "title": "$:/language/Buttons/Strikethrough/Hint",
            "text": "Apply strikethrough formatting to selection"
        },
        "$:/language/Buttons/Subscript/Caption": {
            "title": "$:/language/Buttons/Subscript/Caption",
            "text": "subscript"
        },
        "$:/language/Buttons/Subscript/Hint": {
            "title": "$:/language/Buttons/Subscript/Hint",
            "text": "Apply subscript formatting to selection"
        },
        "$:/language/Buttons/Superscript/Caption": {
            "title": "$:/language/Buttons/Superscript/Caption",
            "text": "superscript"
        },
        "$:/language/Buttons/Superscript/Hint": {
            "title": "$:/language/Buttons/Superscript/Hint",
            "text": "Apply superscript formatting to selection"
        },
        "$:/language/Buttons/ToggleSidebar/Hint": {
            "title": "$:/language/Buttons/ToggleSidebar/Hint",
            "text": "Toggle the sidebar visibility"
        },
        "$:/language/Buttons/Transcludify/Caption": {
            "title": "$:/language/Buttons/Transcludify/Caption",
            "text": "transclusion"
        },
        "$:/language/Buttons/Transcludify/Hint": {
            "title": "$:/language/Buttons/Transcludify/Hint",
            "text": "Wrap selection in curly brackets"
        },
        "$:/language/Buttons/Underline/Caption": {
            "title": "$:/language/Buttons/Underline/Caption",
            "text": "underline"
        },
        "$:/language/Buttons/Underline/Hint": {
            "title": "$:/language/Buttons/Underline/Hint",
            "text": "Apply underline formatting to selection"
        },
        "$:/language/ControlPanel/Advanced/Caption": {
            "title": "$:/language/ControlPanel/Advanced/Caption",
            "text": "Advanced"
        },
        "$:/language/ControlPanel/Advanced/Hint": {
            "title": "$:/language/ControlPanel/Advanced/Hint",
            "text": "Internal information about this TiddlyWiki"
        },
        "$:/language/ControlPanel/Appearance/Caption": {
            "title": "$:/language/ControlPanel/Appearance/Caption",
            "text": "Appearance"
        },
        "$:/language/ControlPanel/Appearance/Hint": {
            "title": "$:/language/ControlPanel/Appearance/Hint",
            "text": "Ways to customise the appearance of your TiddlyWiki."
        },
        "$:/language/ControlPanel/Basics/AnimDuration/Prompt": {
            "title": "$:/language/ControlPanel/Basics/AnimDuration/Prompt",
            "text": "Animation duration"
        },
        "$:/language/ControlPanel/Basics/AutoFocus/Prompt": {
            "title": "$:/language/ControlPanel/Basics/AutoFocus/Prompt",
            "text": "Default focus field for new tiddlers"
        },
        "$:/language/ControlPanel/Basics/Caption": {
            "title": "$:/language/ControlPanel/Basics/Caption",
            "text": "Basics"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint",
            "text": "Use &#91;&#91;double square brackets&#93;&#93; for titles with spaces. Or you can choose to <$button set=\"$:/DefaultTiddlers\" setTo=\"[list[$:/StoryList]]\">retain story ordering</$button>"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt",
            "text": "Default tiddlers"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint",
            "text": "Choose which tiddlers are displayed at startup"
        },
        "$:/language/ControlPanel/Basics/Language/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Language/Prompt",
            "text": "Hello! Current language:"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt",
            "text": "Title of new journal tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt",
            "text": "Text for new journal tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt",
            "text": "Tags for new journal tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt",
            "text": "Title of new tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt",
            "text": "Tags for new tiddlers"
        },
        "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt",
            "text": "Number of overridden shadow tiddlers"
        },
        "$:/language/ControlPanel/Basics/RemoveTags": {
            "title": "$:/language/ControlPanel/Basics/RemoveTags",
            "text": "Update to current format"
        },
        "$:/language/ControlPanel/Basics/RemoveTags/Hint": {
            "title": "$:/language/ControlPanel/Basics/RemoveTags/Hint",
            "text": "Update the tags configuration to the latest format"
        },
        "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt",
            "text": "Number of shadow tiddlers"
        },
        "$:/language/ControlPanel/Basics/Subtitle/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Subtitle/Prompt",
            "text": "Subtitle"
        },
        "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt",
            "text": "Number of system tiddlers"
        },
        "$:/language/ControlPanel/Basics/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Tags/Prompt",
            "text": "Number of tags"
        },
        "$:/language/ControlPanel/Basics/Tiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Tiddlers/Prompt",
            "text": "Number of tiddlers"
        },
        "$:/language/ControlPanel/Basics/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Title/Prompt",
            "text": "Title of this ~TiddlyWiki"
        },
        "$:/language/ControlPanel/Basics/Username/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Username/Prompt",
            "text": "Username for signing edits"
        },
        "$:/language/ControlPanel/Basics/Version/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Version/Prompt",
            "text": "~TiddlyWiki version"
        },
        "$:/language/ControlPanel/EditorTypes/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Caption",
            "text": "Editor Types"
        },
        "$:/language/ControlPanel/EditorTypes/Editor/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Editor/Caption",
            "text": "Editor"
        },
        "$:/language/ControlPanel/EditorTypes/Hint": {
            "title": "$:/language/ControlPanel/EditorTypes/Hint",
            "text": "These tiddlers determine which editor is used to edit specific tiddler types."
        },
        "$:/language/ControlPanel/EditorTypes/Type/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Type/Caption",
            "text": "Type"
        },
        "$:/language/ControlPanel/Info/Caption": {
            "title": "$:/language/ControlPanel/Info/Caption",
            "text": "Info"
        },
        "$:/language/ControlPanel/Info/Hint": {
            "title": "$:/language/ControlPanel/Info/Hint",
            "text": "Information about this TiddlyWiki"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt",
            "text": "Type shortcut here"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption",
            "text": "add shortcut"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Caption",
            "text": "Keyboard Shortcuts"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Hint": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Hint",
            "text": "Manage keyboard shortcut assignments"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption",
            "text": "No keyboard shortcuts assigned"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint",
            "text": "remove keyboard shortcut"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/All": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/All",
            "text": "All platforms"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac",
            "text": "Macintosh platform only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac",
            "text": "Non-Macintosh platforms only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux",
            "text": "Linux platform only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux",
            "text": "Non-Linux platforms only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows",
            "text": "Windows platform only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows",
            "text": "Non-Windows platforms only"
        },
        "$:/language/ControlPanel/LayoutSwitcher/Caption": {
            "title": "$:/language/ControlPanel/LayoutSwitcher/Caption",
            "text": "Layout"
        },
        "$:/language/ControlPanel/LoadedModules/Caption": {
            "title": "$:/language/ControlPanel/LoadedModules/Caption",
            "text": "Loaded Modules"
        },
        "$:/language/ControlPanel/LoadedModules/Hint": {
            "title": "$:/language/ControlPanel/LoadedModules/Hint",
            "text": "These are the currently loaded tiddler modules linked to their source tiddlers. Any italicised modules lack a source tiddler, typically because they were setup during the boot process."
        },
        "$:/language/ControlPanel/Palette/Caption": {
            "title": "$:/language/ControlPanel/Palette/Caption",
            "text": "Palette"
        },
        "$:/language/ControlPanel/Palette/Editor/Clone/Caption": {
            "title": "$:/language/ControlPanel/Palette/Editor/Clone/Caption",
            "text": "clone"
        },
        "$:/language/ControlPanel/Palette/Editor/Clone/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Editor/Clone/Prompt",
            "text": "It is recommended that you clone this shadow palette before editing it"
        },
        "$:/language/ControlPanel/Palette/Editor/Delete/Hint": {
            "title": "$:/language/ControlPanel/Palette/Editor/Delete/Hint",
            "text": "delete this entry from the current palette"
        },
        "$:/language/ControlPanel/Palette/Editor/Names/External/Show": {
            "title": "$:/language/ControlPanel/Palette/Editor/Names/External/Show",
            "text": "Show color names that are not part of the current palette"
        },
        "$:/language/ControlPanel/Palette/Editor/Prompt/Modified": {
            "title": "$:/language/ControlPanel/Palette/Editor/Prompt/Modified",
            "text": "This shadow palette has been modified"
        },
        "$:/language/ControlPanel/Palette/Editor/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Editor/Prompt",
            "text": "Editing"
        },
        "$:/language/ControlPanel/Palette/Editor/Reset/Caption": {
            "title": "$:/language/ControlPanel/Palette/Editor/Reset/Caption",
            "text": "reset"
        },
        "$:/language/ControlPanel/Palette/HideEditor/Caption": {
            "title": "$:/language/ControlPanel/Palette/HideEditor/Caption",
            "text": "hide editor"
        },
        "$:/language/ControlPanel/Palette/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Prompt",
            "text": "Current palette:"
        },
        "$:/language/ControlPanel/Palette/ShowEditor/Caption": {
            "title": "$:/language/ControlPanel/Palette/ShowEditor/Caption",
            "text": "show editor"
        },
        "$:/language/ControlPanel/Parsing/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Caption",
            "text": "Parsing"
        },
        "$:/language/ControlPanel/Parsing/Hint": {
            "title": "$:/language/ControlPanel/Parsing/Hint",
            "text": "Here you can globally disable/enable wiki parser rules. For changes to take effect, save and reload your wiki. Disabling certain parser rules can prevent <$text text=\"TiddlyWiki\"/> from functioning correctly. Use [[safe mode|https://tiddlywiki.com/#SafeMode]] to restore normal operation."
        },
        "$:/language/ControlPanel/Parsing/Block/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Block/Caption",
            "text": "Block Parse Rules"
        },
        "$:/language/ControlPanel/Parsing/Inline/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Inline/Caption",
            "text": "Inline Parse Rules"
        },
        "$:/language/ControlPanel/Parsing/Pragma/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Pragma/Caption",
            "text": "Pragma Parse Rules"
        },
        "$:/language/ControlPanel/Plugins/Add/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Add/Caption",
            "text": "Get more plugins"
        },
        "$:/language/ControlPanel/Plugins/Add/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Add/Hint",
            "text": "Install plugins from the official library"
        },
        "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint": {
            "title": "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint",
            "text": "This plugin is already installed at version <$text text=<<installedVersion>>/>"
        },
        "$:/language/ControlPanel/Plugins/AlsoRequires": {
            "title": "$:/language/ControlPanel/Plugins/AlsoRequires",
            "text": "Also requires:"
        },
        "$:/language/ControlPanel/Plugins/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Caption",
            "text": "Plugins"
        },
        "$:/language/ControlPanel/Plugins/Disable/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Disable/Caption",
            "text": "disable"
        },
        "$:/language/ControlPanel/Plugins/Disable/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Disable/Hint",
            "text": "Disable this plugin when reloading page"
        },
        "$:/language/ControlPanel/Plugins/Disabled/Status": {
            "title": "$:/language/ControlPanel/Plugins/Disabled/Status",
            "text": "(disabled)"
        },
        "$:/language/ControlPanel/Plugins/Downgrade/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Downgrade/Caption",
            "text": "downgrade"
        },
        "$:/language/ControlPanel/Plugins/Empty/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Empty/Hint",
            "text": "None"
        },
        "$:/language/ControlPanel/Plugins/Enable/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Enable/Caption",
            "text": "enable"
        },
        "$:/language/ControlPanel/Plugins/Enable/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Enable/Hint",
            "text": "Enable this plugin when reloading page"
        },
        "$:/language/ControlPanel/Plugins/Install/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Install/Caption",
            "text": "install"
        },
        "$:/language/ControlPanel/Plugins/Installed/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Installed/Hint",
            "text": "Currently installed plugins:"
        },
        "$:/language/ControlPanel/Plugins/Languages/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Languages/Caption",
            "text": "Languages"
        },
        "$:/language/ControlPanel/Plugins/Languages/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Languages/Hint",
            "text": "Language pack plugins"
        },
        "$:/language/ControlPanel/Plugins/NoInfoFound/Hint": {
            "title": "$:/language/ControlPanel/Plugins/NoInfoFound/Hint",
            "text": "No ''\"<$text text=<<currentTab>>/>\"'' found"
        },
        "$:/language/ControlPanel/Plugins/NotInstalled/Hint": {
            "title": "$:/language/ControlPanel/Plugins/NotInstalled/Hint",
            "text": "This plugin is not currently installed"
        },
        "$:/language/ControlPanel/Plugins/OpenPluginLibrary": {
            "title": "$:/language/ControlPanel/Plugins/OpenPluginLibrary",
            "text": "open plugin library"
        },
        "$:/language/ControlPanel/Plugins/ClosePluginLibrary": {
            "title": "$:/language/ControlPanel/Plugins/ClosePluginLibrary",
            "text": "close plugin library"
        },
        "$:/language/ControlPanel/Plugins/PluginWillRequireReload": {
            "title": "$:/language/ControlPanel/Plugins/PluginWillRequireReload",
            "text": "(requires reload)"
        },
        "$:/language/ControlPanel/Plugins/Plugins/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Plugins/Caption",
            "text": "Plugins"
        },
        "$:/language/ControlPanel/Plugins/Plugins/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Plugins/Hint",
            "text": "Plugins"
        },
        "$:/language/ControlPanel/Plugins/Reinstall/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Reinstall/Caption",
            "text": "reinstall"
        },
        "$:/language/ControlPanel/Plugins/Themes/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Themes/Caption",
            "text": "Themes"
        },
        "$:/language/ControlPanel/Plugins/Themes/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Themes/Hint",
            "text": "Theme plugins"
        },
        "$:/language/ControlPanel/Plugins/Update/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Update/Caption",
            "text": "update"
        },
        "$:/language/ControlPanel/Plugins/Updates/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Updates/Caption",
            "text": "Updates"
        },
        "$:/language/ControlPanel/Plugins/Updates/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Updates/Hint",
            "text": "Available updates to installed plugins"
        },
        "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption",
            "text": "Update <<update-count>> plugins"
        },
        "$:/language/ControlPanel/Plugins/SubPluginPrompt": {
            "title": "$:/language/ControlPanel/Plugins/SubPluginPrompt",
            "text": "With <<count>> sub-plugins available"
        },
        "$:/language/ControlPanel/Saving/Caption": {
            "title": "$:/language/ControlPanel/Saving/Caption",
            "text": "Saving"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description",
            "text": "Permit automatic saving for the download saver"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint",
            "text": "Enable Autosave for Download Saver"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/Caption": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/Caption",
            "text": "Download Saver"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/Hint": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/Hint",
            "text": "These settings apply to the HTML5-compatible download saver"
        },
        "$:/language/ControlPanel/Saving/General/Caption": {
            "title": "$:/language/ControlPanel/Saving/General/Caption",
            "text": "General"
        },
        "$:/language/ControlPanel/Saving/General/Hint": {
            "title": "$:/language/ControlPanel/Saving/General/Hint",
            "text": "These settings apply to all the loaded savers"
        },
        "$:/language/ControlPanel/Saving/Hint": {
            "title": "$:/language/ControlPanel/Saving/Hint",
            "text": "Settings used for saving the entire TiddlyWiki as a single file via a saver module"
        },
        "$:/language/ControlPanel/Saving/GitService/Branch": {
            "title": "$:/language/ControlPanel/Saving/GitService/Branch",
            "text": "Target branch for saving"
        },
        "$:/language/ControlPanel/Saving/GitService/CommitMessage": {
            "title": "$:/language/ControlPanel/Saving/GitService/CommitMessage",
            "text": "Saved by TiddlyWiki"
        },
        "$:/language/ControlPanel/Saving/GitService/Description": {
            "title": "$:/language/ControlPanel/Saving/GitService/Description",
            "text": "These settings are only used when saving to <<service-name>>"
        },
        "$:/language/ControlPanel/Saving/GitService/Filename": {
            "title": "$:/language/ControlPanel/Saving/GitService/Filename",
            "text": "Filename of target file (e.g. `index.html`)"
        },
        "$:/language/ControlPanel/Saving/GitService/Path": {
            "title": "$:/language/ControlPanel/Saving/GitService/Path",
            "text": "Path to target file (e.g. `/wiki/`)"
        },
        "$:/language/ControlPanel/Saving/GitService/Repo": {
            "title": "$:/language/ControlPanel/Saving/GitService/Repo",
            "text": "Target repository (e.g. `Jermolene/TiddlyWiki5`)"
        },
        "$:/language/ControlPanel/Saving/GitService/ServerURL": {
            "title": "$:/language/ControlPanel/Saving/GitService/ServerURL",
            "text": "Server API URL"
        },
        "$:/language/ControlPanel/Saving/GitService/UserName": {
            "title": "$:/language/ControlPanel/Saving/GitService/UserName",
            "text": "Username"
        },
        "$:/language/ControlPanel/Saving/GitService/GitHub/Caption": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitHub/Caption",
            "text": "~GitHub Saver"
        },
        "$:/language/ControlPanel/Saving/GitService/GitHub/Password": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitHub/Password",
            "text": "Password, OAUTH token, or personal access token (see [[GitHub help page|https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line]] for details)"
        },
        "$:/language/ControlPanel/Saving/GitService/GitLab/Caption": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitLab/Caption",
            "text": "~GitLab Saver"
        },
        "$:/language/ControlPanel/Saving/GitService/GitLab/Password": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitLab/Password",
            "text": "Personal access token for API (see [[GitLab help page|https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html]] for details)"
        },
        "$:/language/ControlPanel/Saving/GitService/Gitea/Caption": {
            "title": "$:/language/ControlPanel/Saving/GitService/Gitea/Caption",
            "text": "Gitea Saver"
        },
        "$:/language/ControlPanel/Saving/GitService/Gitea/Password": {
            "title": "$:/language/ControlPanel/Saving/GitService/Gitea/Password",
            "text": "Personal access token for API (via Gitea’s web interface: `Settings | Applications | Generate New Token`)"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading",
            "text": "Advanced Settings"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir",
            "text": "Backup Directory"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ControlPanel": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ControlPanel",
            "text": "~TiddlySpot Control Panel"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Backups": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Backups",
            "text": "Backups"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Caption": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Caption",
            "text": "~TiddlySpot Saver"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Description": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Description",
            "text": "These settings are only used when saving to http://tiddlyspot.com or a compatible remote server"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Filename": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Filename",
            "text": "Upload Filename"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Heading": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Heading",
            "text": "~TiddlySpot"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Hint": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Hint",
            "text": "//The server URL defaults to `http://<wikiname>.tiddlyspot.com/store.cgi` and can be changed to use a custom server address, e.g. `http://example.com/store.php`.//"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Password": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Password",
            "text": "Password"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ReadOnly": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ReadOnly",
            "text": "The ~TiddlySpot service is currently only available in read-only form. Please see http://tiddlyspot.com/ for the latest details. The ~TiddlySpot saver can still be used to save to compatible servers."
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL",
            "text": "Server URL"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir",
            "text": "Upload Directory"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/UserName": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/UserName",
            "text": "Wiki Name"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Caption": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Caption",
            "text": "Autosave"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description",
            "text": "Do not save changes automatically"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description",
            "text": "Save changes automatically"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Hint": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Hint",
            "text": "Attempt to automatically save changes during editing when using a supporting saver"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Caption": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Caption",
            "text": "Camel Case Wiki Links"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Hint": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Hint",
            "text": "You can globally disable automatic linking of ~CamelCase phrases. Requires reload to take effect"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Description": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Description",
            "text": "Enable automatic ~CamelCase linking"
        },
        "$:/language/ControlPanel/Settings/Caption": {
            "title": "$:/language/ControlPanel/Settings/Caption",
            "text": "Settings"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Caption": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Caption",
            "text": "Editor Toolbar"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Hint": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Hint",
            "text": "Enable or disable the editor toolbar:"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Description": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Description",
            "text": "Show editor toolbar"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Caption": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Caption",
            "text": "Tiddler Info Panel Mode"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Hint": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Hint",
            "text": "Control when the tiddler info panel closes:"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description",
            "text": "Tiddler info panel closes automatically"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description",
            "text": "Tiddler info panel stays open until explicitly closed"
        },
        "$:/language/ControlPanel/Settings/Hint": {
            "title": "$:/language/ControlPanel/Settings/Hint",
            "text": "These settings let you customise the behaviour of TiddlyWiki."
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption",
            "text": "Navigation Address Bar"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint",
            "text": "Behaviour of the browser address bar when navigating to a tiddler:"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description",
            "text": "Do not update the address bar"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description",
            "text": "Include the target tiddler"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description",
            "text": "Include the target tiddler and the current story sequence"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Caption",
            "text": "Navigation History"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Hint",
            "text": "Update browser history when navigating to a tiddler:"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/No/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/No/Description",
            "text": "Do not update history"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description",
            "text": "Update history"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption",
            "text": "Permalink/permaview Mode"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint",
            "text": "Choose how permalink/permaview is handled:"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description",
            "text": "Copy permalink/permaview URL to clipboard"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description",
            "text": "Update address bar with permalink/permaview URL"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption",
            "text": "Performance Instrumentation"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint",
            "text": "Displays performance statistics in the browser developer console. Requires reload to take effect"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description",
            "text": "Enable performance instrumentation"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption",
            "text": "Toolbar Button Style"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint",
            "text": "Choose the style for toolbar buttons:"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless",
            "text": "Borderless"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed",
            "text": "Boxed"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded",
            "text": "Rounded"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Caption": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Caption",
            "text": "Toolbar Buttons"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Hint": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Hint",
            "text": "Default toolbar button appearance:"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description",
            "text": "Include icon"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description",
            "text": "Include text"
        },
        "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption": {
            "title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption",
            "text": "Default Sidebar Tab"
        },
        "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint": {
            "title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint",
            "text": "Specify which sidebar tab is displayed by default"
        },
        "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption": {
            "title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption",
            "text": "Default More Sidebar Tab"
        },
        "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint": {
            "title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint",
            "text": "Specify which More sidebar tab is displayed by default"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption",
            "text": "Tiddler Opening Behaviour"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint",
            "text": "Navigation from //within// the story river"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint",
            "text": "Navigation from //outside// the story river"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove",
            "text": "Open above the current tiddler"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow",
            "text": "Open below the current tiddler"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop",
            "text": "Open at the top of the story river"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom",
            "text": "Open at the bottom of the story river"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Caption": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Caption",
            "text": "Tiddler Titles"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Hint": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Hint",
            "text": "Optionally display tiddler titles as links"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/No/Description": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/No/Description",
            "text": "Do not display tiddler titles as links"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description",
            "text": "Display tiddler titles as links"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Caption": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Caption",
            "text": "Wiki Links"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Hint": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Hint",
            "text": "Choose whether to link to tiddlers that do not exist yet"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Description": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Description",
            "text": "Enable links to missing tiddlers"
        },
        "$:/language/ControlPanel/StoryView/Caption": {
            "title": "$:/language/ControlPanel/StoryView/Caption",
            "text": "Story View"
        },
        "$:/language/ControlPanel/StoryView/Prompt": {
            "title": "$:/language/ControlPanel/StoryView/Prompt",
            "text": "Current view:"
        },
        "$:/language/ControlPanel/Stylesheets/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Caption",
            "text": "Stylesheets"
        },
        "$:/language/ControlPanel/Stylesheets/Expand/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Expand/Caption",
            "text": "Expand All"
        },
        "$:/language/ControlPanel/Stylesheets/Hint": {
            "title": "$:/language/ControlPanel/Stylesheets/Hint",
            "text": "This is the rendered CSS of the current stylesheet tiddlers tagged with <<tag \"$:/tags/Stylesheet\">>"
        },
        "$:/language/ControlPanel/Stylesheets/Restore/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Restore/Caption",
            "text": "Restore"
        },
        "$:/language/ControlPanel/Theme/Caption": {
            "title": "$:/language/ControlPanel/Theme/Caption",
            "text": "Theme"
        },
        "$:/language/ControlPanel/Theme/Prompt": {
            "title": "$:/language/ControlPanel/Theme/Prompt",
            "text": "Current theme:"
        },
        "$:/language/ControlPanel/TiddlerFields/Caption": {
            "title": "$:/language/ControlPanel/TiddlerFields/Caption",
            "text": "Tiddler Fields"
        },
        "$:/language/ControlPanel/TiddlerFields/Hint": {
            "title": "$:/language/ControlPanel/TiddlerFields/Hint",
            "text": "This is the full set of TiddlerFields in use in this wiki (including system tiddlers but excluding shadow tiddlers)."
        },
        "$:/language/ControlPanel/Toolbars/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/Caption",
            "text": "Toolbars"
        },
        "$:/language/ControlPanel/Toolbars/EditToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/EditToolbar/Caption",
            "text": "Edit Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/EditToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/EditToolbar/Hint",
            "text": "Choose which buttons are displayed for tiddlers in edit mode. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Toolbars/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/Hint",
            "text": "Select which toolbar buttons are displayed"
        },
        "$:/language/ControlPanel/Toolbars/PageControls/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/PageControls/Caption",
            "text": "Page Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/PageControls/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/PageControls/Hint",
            "text": "Choose which buttons are displayed on the main page toolbar. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption",
            "text": "Editor Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint",
            "text": "Choose which buttons are displayed in the editor toolbar. Note that some buttons will only appear when editing tiddlers of a certain type. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption",
            "text": "View Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint",
            "text": "Choose which buttons are displayed for tiddlers in view mode. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Tools/Download/Full/Caption": {
            "title": "$:/language/ControlPanel/Tools/Download/Full/Caption",
            "text": "Download full wiki"
        },
        "$:/language/Date/DaySuffix/1": {
            "title": "$:/language/Date/DaySuffix/1",
            "text": "st"
        },
        "$:/language/Date/DaySuffix/2": {
            "title": "$:/language/Date/DaySuffix/2",
            "text": "nd"
        },
        "$:/language/Date/DaySuffix/3": {
            "title": "$:/language/Date/DaySuffix/3",
            "text": "rd"
        },
        "$:/language/Date/DaySuffix/4": {
            "title": "$:/language/Date/DaySuffix/4",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/5": {
            "title": "$:/language/Date/DaySuffix/5",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/6": {
            "title": "$:/language/Date/DaySuffix/6",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/7": {
            "title": "$:/language/Date/DaySuffix/7",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/8": {
            "title": "$:/language/Date/DaySuffix/8",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/9": {
            "title": "$:/language/Date/DaySuffix/9",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/10": {
            "title": "$:/language/Date/DaySuffix/10",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/11": {
            "title": "$:/language/Date/DaySuffix/11",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/12": {
            "title": "$:/language/Date/DaySuffix/12",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/13": {
            "title": "$:/language/Date/DaySuffix/13",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/14": {
            "title": "$:/language/Date/DaySuffix/14",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/15": {
            "title": "$:/language/Date/DaySuffix/15",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/16": {
            "title": "$:/language/Date/DaySuffix/16",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/17": {
            "title": "$:/language/Date/DaySuffix/17",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/18": {
            "title": "$:/language/Date/DaySuffix/18",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/19": {
            "title": "$:/language/Date/DaySuffix/19",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/20": {
            "title": "$:/language/Date/DaySuffix/20",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/21": {
            "title": "$:/language/Date/DaySuffix/21",
            "text": "st"
        },
        "$:/language/Date/DaySuffix/22": {
            "title": "$:/language/Date/DaySuffix/22",
            "text": "nd"
        },
        "$:/language/Date/DaySuffix/23": {
            "title": "$:/language/Date/DaySuffix/23",
            "text": "rd"
        },
        "$:/language/Date/DaySuffix/24": {
            "title": "$:/language/Date/DaySuffix/24",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/25": {
            "title": "$:/language/Date/DaySuffix/25",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/26": {
            "title": "$:/language/Date/DaySuffix/26",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/27": {
            "title": "$:/language/Date/DaySuffix/27",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/28": {
            "title": "$:/language/Date/DaySuffix/28",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/29": {
            "title": "$:/language/Date/DaySuffix/29",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/30": {
            "title": "$:/language/Date/DaySuffix/30",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/31": {
            "title": "$:/language/Date/DaySuffix/31",
            "text": "st"
        },
        "$:/language/Date/Long/Day/0": {
            "title": "$:/language/Date/Long/Day/0",
            "text": "Sunday"
        },
        "$:/language/Date/Long/Day/1": {
            "title": "$:/language/Date/Long/Day/1",
            "text": "Monday"
        },
        "$:/language/Date/Long/Day/2": {
            "title": "$:/language/Date/Long/Day/2",
            "text": "Tuesday"
        },
        "$:/language/Date/Long/Day/3": {
            "title": "$:/language/Date/Long/Day/3",
            "text": "Wednesday"
        },
        "$:/language/Date/Long/Day/4": {
            "title": "$:/language/Date/Long/Day/4",
            "text": "Thursday"
        },
        "$:/language/Date/Long/Day/5": {
            "title": "$:/language/Date/Long/Day/5",
            "text": "Friday"
        },
        "$:/language/Date/Long/Day/6": {
            "title": "$:/language/Date/Long/Day/6",
            "text": "Saturday"
        },
        "$:/language/Date/Long/Month/1": {
            "title": "$:/language/Date/Long/Month/1",
            "text": "January"
        },
        "$:/language/Date/Long/Month/2": {
            "title": "$:/language/Date/Long/Month/2",
            "text": "February"
        },
        "$:/language/Date/Long/Month/3": {
            "title": "$:/language/Date/Long/Month/3",
            "text": "March"
        },
        "$:/language/Date/Long/Month/4": {
            "title": "$:/language/Date/Long/Month/4",
            "text": "April"
        },
        "$:/language/Date/Long/Month/5": {
            "title": "$:/language/Date/Long/Month/5",
            "text": "May"
        },
        "$:/language/Date/Long/Month/6": {
            "title": "$:/language/Date/Long/Month/6",
            "text": "June"
        },
        "$:/language/Date/Long/Month/7": {
            "title": "$:/language/Date/Long/Month/7",
            "text": "July"
        },
        "$:/language/Date/Long/Month/8": {
            "title": "$:/language/Date/Long/Month/8",
            "text": "August"
        },
        "$:/language/Date/Long/Month/9": {
            "title": "$:/language/Date/Long/Month/9",
            "text": "September"
        },
        "$:/language/Date/Long/Month/10": {
            "title": "$:/language/Date/Long/Month/10",
            "text": "October"
        },
        "$:/language/Date/Long/Month/11": {
            "title": "$:/language/Date/Long/Month/11",
            "text": "November"
        },
        "$:/language/Date/Long/Month/12": {
            "title": "$:/language/Date/Long/Month/12",
            "text": "December"
        },
        "$:/language/Date/Period/am": {
            "title": "$:/language/Date/Period/am",
            "text": "am"
        },
        "$:/language/Date/Period/pm": {
            "title": "$:/language/Date/Period/pm",
            "text": "pm"
        },
        "$:/language/Date/Short/Day/0": {
            "title": "$:/language/Date/Short/Day/0",
            "text": "Sun"
        },
        "$:/language/Date/Short/Day/1": {
            "title": "$:/language/Date/Short/Day/1",
            "text": "Mon"
        },
        "$:/language/Date/Short/Day/2": {
            "title": "$:/language/Date/Short/Day/2",
            "text": "Tue"
        },
        "$:/language/Date/Short/Day/3": {
            "title": "$:/language/Date/Short/Day/3",
            "text": "Wed"
        },
        "$:/language/Date/Short/Day/4": {
            "title": "$:/language/Date/Short/Day/4",
            "text": "Thu"
        },
        "$:/language/Date/Short/Day/5": {
            "title": "$:/language/Date/Short/Day/5",
            "text": "Fri"
        },
        "$:/language/Date/Short/Day/6": {
            "title": "$:/language/Date/Short/Day/6",
            "text": "Sat"
        },
        "$:/language/Date/Short/Month/1": {
            "title": "$:/language/Date/Short/Month/1",
            "text": "Jan"
        },
        "$:/language/Date/Short/Month/2": {
            "title": "$:/language/Date/Short/Month/2",
            "text": "Feb"
        },
        "$:/language/Date/Short/Month/3": {
            "title": "$:/language/Date/Short/Month/3",
            "text": "Mar"
        },
        "$:/language/Date/Short/Month/4": {
            "title": "$:/language/Date/Short/Month/4",
            "text": "Apr"
        },
        "$:/language/Date/Short/Month/5": {
            "title": "$:/language/Date/Short/Month/5",
            "text": "May"
        },
        "$:/language/Date/Short/Month/6": {
            "title": "$:/language/Date/Short/Month/6",
            "text": "Jun"
        },
        "$:/language/Date/Short/Month/7": {
            "title": "$:/language/Date/Short/Month/7",
            "text": "Jul"
        },
        "$:/language/Date/Short/Month/8": {
            "title": "$:/language/Date/Short/Month/8",
            "text": "Aug"
        },
        "$:/language/Date/Short/Month/9": {
            "title": "$:/language/Date/Short/Month/9",
            "text": "Sep"
        },
        "$:/language/Date/Short/Month/10": {
            "title": "$:/language/Date/Short/Month/10",
            "text": "Oct"
        },
        "$:/language/Date/Short/Month/11": {
            "title": "$:/language/Date/Short/Month/11",
            "text": "Nov"
        },
        "$:/language/Date/Short/Month/12": {
            "title": "$:/language/Date/Short/Month/12",
            "text": "Dec"
        },
        "$:/language/RelativeDate/Future/Days": {
            "title": "$:/language/RelativeDate/Future/Days",
            "text": "<<period>> days from now"
        },
        "$:/language/RelativeDate/Future/Hours": {
            "title": "$:/language/RelativeDate/Future/Hours",
            "text": "<<period>> hours from now"
        },
        "$:/language/RelativeDate/Future/Minutes": {
            "title": "$:/language/RelativeDate/Future/Minutes",
            "text": "<<period>> minutes from now"
        },
        "$:/language/RelativeDate/Future/Months": {
            "title": "$:/language/RelativeDate/Future/Months",
            "text": "<<period>> months from now"
        },
        "$:/language/RelativeDate/Future/Second": {
            "title": "$:/language/RelativeDate/Future/Second",
            "text": "1 second from now"
        },
        "$:/language/RelativeDate/Future/Seconds": {
            "title": "$:/language/RelativeDate/Future/Seconds",
            "text": "<<period>> seconds from now"
        },
        "$:/language/RelativeDate/Future/Years": {
            "title": "$:/language/RelativeDate/Future/Years",
            "text": "<<period>> years from now"
        },
        "$:/language/RelativeDate/Past/Days": {
            "title": "$:/language/RelativeDate/Past/Days",
            "text": "<<period>> days ago"
        },
        "$:/language/RelativeDate/Past/Hours": {
            "title": "$:/language/RelativeDate/Past/Hours",
            "text": "<<period>> hours ago"
        },
        "$:/language/RelativeDate/Past/Minutes": {
            "title": "$:/language/RelativeDate/Past/Minutes",
            "text": "<<period>> minutes ago"
        },
        "$:/language/RelativeDate/Past/Months": {
            "title": "$:/language/RelativeDate/Past/Months",
            "text": "<<period>> months ago"
        },
        "$:/language/RelativeDate/Past/Second": {
            "title": "$:/language/RelativeDate/Past/Second",
            "text": "1 second ago"
        },
        "$:/language/RelativeDate/Past/Seconds": {
            "title": "$:/language/RelativeDate/Past/Seconds",
            "text": "<<period>> seconds ago"
        },
        "$:/language/RelativeDate/Past/Years": {
            "title": "$:/language/RelativeDate/Past/Years",
            "text": "<<period>> years ago"
        },
        "$:/language/Docs/ModuleTypes/allfilteroperator": {
            "title": "$:/language/Docs/ModuleTypes/allfilteroperator",
            "text": "A sub-operator for the ''all'' filter operator."
        },
        "$:/language/Docs/ModuleTypes/animation": {
            "title": "$:/language/Docs/ModuleTypes/animation",
            "text": "Animations that may be used with the RevealWidget."
        },
        "$:/language/Docs/ModuleTypes/authenticator": {
            "title": "$:/language/Docs/ModuleTypes/authenticator",
            "text": "Defines how requests are authenticated by the built-in HTTP server."
        },
        "$:/language/Docs/ModuleTypes/bitmapeditoroperation": {
            "title": "$:/language/Docs/ModuleTypes/bitmapeditoroperation",
            "text": "A bitmap editor toolbar operation."
        },
        "$:/language/Docs/ModuleTypes/command": {
            "title": "$:/language/Docs/ModuleTypes/command",
            "text": "Commands that can be executed under Node.js."
        },
        "$:/language/Docs/ModuleTypes/config": {
            "title": "$:/language/Docs/ModuleTypes/config",
            "text": "Data to be inserted into `$tw.config`."
        },
        "$:/language/Docs/ModuleTypes/filteroperator": {
            "title": "$:/language/Docs/ModuleTypes/filteroperator",
            "text": "Individual filter operator methods."
        },
        "$:/language/Docs/ModuleTypes/global": {
            "title": "$:/language/Docs/ModuleTypes/global",
            "text": "Global data to be inserted into `$tw`."
        },
        "$:/language/Docs/ModuleTypes/info": {
            "title": "$:/language/Docs/ModuleTypes/info",
            "text": "Publishes system information via the [[$:/temp/info-plugin]] pseudo-plugin."
        },
        "$:/language/Docs/ModuleTypes/isfilteroperator": {
            "title": "$:/language/Docs/ModuleTypes/isfilteroperator",
            "text": "Operands for the ''is'' filter operator."
        },
        "$:/language/Docs/ModuleTypes/library": {
            "title": "$:/language/Docs/ModuleTypes/library",
            "text": "Generic module type for general purpose JavaScript modules."
        },
        "$:/language/Docs/ModuleTypes/macro": {
            "title": "$:/language/Docs/ModuleTypes/macro",
            "text": "JavaScript macro definitions."
        },
        "$:/language/Docs/ModuleTypes/parser": {
            "title": "$:/language/Docs/ModuleTypes/parser",
            "text": "Parsers for different content types."
        },
        "$:/language/Docs/ModuleTypes/route": {
            "title": "$:/language/Docs/ModuleTypes/route",
            "text": "Defines how individual URL patterns are handled by the built-in HTTP server."
        },
        "$:/language/Docs/ModuleTypes/saver": {
            "title": "$:/language/Docs/ModuleTypes/saver",
            "text": "Savers handle different methods for saving files from the browser."
        },
        "$:/language/Docs/ModuleTypes/startup": {
            "title": "$:/language/Docs/ModuleTypes/startup",
            "text": "Startup functions."
        },
        "$:/language/Docs/ModuleTypes/storyview": {
            "title": "$:/language/Docs/ModuleTypes/storyview",
            "text": "Story views customise the animation and behaviour of list widgets."
        },
        "$:/language/Docs/ModuleTypes/texteditoroperation": {
            "title": "$:/language/Docs/ModuleTypes/texteditoroperation",
            "text": "A text editor toolbar operation."
        },
        "$:/language/Docs/ModuleTypes/tiddlerdeserializer": {
            "title": "$:/language/Docs/ModuleTypes/tiddlerdeserializer",
            "text": "Converts different content types into tiddlers."
        },
        "$:/language/Docs/ModuleTypes/tiddlerfield": {
            "title": "$:/language/Docs/ModuleTypes/tiddlerfield",
            "text": "Defines the behaviour of an individual tiddler field."
        },
        "$:/language/Docs/ModuleTypes/tiddlermethod": {
            "title": "$:/language/Docs/ModuleTypes/tiddlermethod",
            "text": "Adds methods to the `$tw.Tiddler` prototype."
        },
        "$:/language/Docs/ModuleTypes/upgrader": {
            "title": "$:/language/Docs/ModuleTypes/upgrader",
            "text": "Applies upgrade processing to tiddlers during an upgrade/import."
        },
        "$:/language/Docs/ModuleTypes/utils": {
            "title": "$:/language/Docs/ModuleTypes/utils",
            "text": "Adds methods to `$tw.utils`."
        },
        "$:/language/Docs/ModuleTypes/utils-node": {
            "title": "$:/language/Docs/ModuleTypes/utils-node",
            "text": "Adds Node.js-specific methods to `$tw.utils`."
        },
        "$:/language/Docs/ModuleTypes/widget": {
            "title": "$:/language/Docs/ModuleTypes/widget",
            "text": "Widgets encapsulate DOM rendering and refreshing."
        },
        "$:/language/Docs/ModuleTypes/wikimethod": {
            "title": "$:/language/Docs/ModuleTypes/wikimethod",
            "text": "Adds methods to `$tw.Wiki`."
        },
        "$:/language/Docs/ModuleTypes/wikirule": {
            "title": "$:/language/Docs/ModuleTypes/wikirule",
            "text": "Individual parser rules for the main WikiText parser."
        },
        "$:/language/Docs/PaletteColours/alert-background": {
            "title": "$:/language/Docs/PaletteColours/alert-background",
            "text": "Alert background"
        },
        "$:/language/Docs/PaletteColours/alert-border": {
            "title": "$:/language/Docs/PaletteColours/alert-border",
            "text": "Alert border"
        },
        "$:/language/Docs/PaletteColours/alert-highlight": {
            "title": "$:/language/Docs/PaletteColours/alert-highlight",
            "text": "Alert highlight"
        },
        "$:/language/Docs/PaletteColours/alert-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/alert-muted-foreground",
            "text": "Alert muted foreground"
        },
        "$:/language/Docs/PaletteColours/background": {
            "title": "$:/language/Docs/PaletteColours/background",
            "text": "General background"
        },
        "$:/language/Docs/PaletteColours/blockquote-bar": {
            "title": "$:/language/Docs/PaletteColours/blockquote-bar",
            "text": "Blockquote bar"
        },
        "$:/language/Docs/PaletteColours/button-background": {
            "title": "$:/language/Docs/PaletteColours/button-background",
            "text": "Default button background"
        },
        "$:/language/Docs/PaletteColours/button-border": {
            "title": "$:/language/Docs/PaletteColours/button-border",
            "text": "Default button border"
        },
        "$:/language/Docs/PaletteColours/button-foreground": {
            "title": "$:/language/Docs/PaletteColours/button-foreground",
            "text": "Default button foreground"
        },
        "$:/language/Docs/PaletteColours/dirty-indicator": {
            "title": "$:/language/Docs/PaletteColours/dirty-indicator",
            "text": "Unsaved changes indicator"
        },
        "$:/language/Docs/PaletteColours/code-background": {
            "title": "$:/language/Docs/PaletteColours/code-background",
            "text": "Code background"
        },
        "$:/language/Docs/PaletteColours/code-border": {
            "title": "$:/language/Docs/PaletteColours/code-border",
            "text": "Code border"
        },
        "$:/language/Docs/PaletteColours/code-foreground": {
            "title": "$:/language/Docs/PaletteColours/code-foreground",
            "text": "Code foreground"
        },
        "$:/language/Docs/PaletteColours/download-background": {
            "title": "$:/language/Docs/PaletteColours/download-background",
            "text": "Download button background"
        },
        "$:/language/Docs/PaletteColours/download-foreground": {
            "title": "$:/language/Docs/PaletteColours/download-foreground",
            "text": "Download button foreground"
        },
        "$:/language/Docs/PaletteColours/dragger-background": {
            "title": "$:/language/Docs/PaletteColours/dragger-background",
            "text": "Dragger background"
        },
        "$:/language/Docs/PaletteColours/dragger-foreground": {
            "title": "$:/language/Docs/PaletteColours/dragger-foreground",
            "text": "Dragger foreground"
        },
        "$:/language/Docs/PaletteColours/dropdown-background": {
            "title": "$:/language/Docs/PaletteColours/dropdown-background",
            "text": "Dropdown background"
        },
        "$:/language/Docs/PaletteColours/dropdown-border": {
            "title": "$:/language/Docs/PaletteColours/dropdown-border",
            "text": "Dropdown border"
        },
        "$:/language/Docs/PaletteColours/dropdown-tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/dropdown-tab-background-selected",
            "text": "Dropdown tab background for selected tabs"
        },
        "$:/language/Docs/PaletteColours/dropdown-tab-background": {
            "title": "$:/language/Docs/PaletteColours/dropdown-tab-background",
            "text": "Dropdown tab background"
        },
        "$:/language/Docs/PaletteColours/dropzone-background": {
            "title": "$:/language/Docs/PaletteColours/dropzone-background",
            "text": "Dropzone background"
        },
        "$:/language/Docs/PaletteColours/external-link-background-hover": {
            "title": "$:/language/Docs/PaletteColours/external-link-background-hover",
            "text": "External link background hover"
        },
        "$:/language/Docs/PaletteColours/external-link-background-visited": {
            "title": "$:/language/Docs/PaletteColours/external-link-background-visited",
            "text": "External link background visited"
        },
        "$:/language/Docs/PaletteColours/external-link-background": {
            "title": "$:/language/Docs/PaletteColours/external-link-background",
            "text": "External link background"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground-hover",
            "text": "External link foreground hover"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground-visited": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground-visited",
            "text": "External link foreground visited"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground",
            "text": "External link foreground"
        },
        "$:/language/Docs/PaletteColours/foreground": {
            "title": "$:/language/Docs/PaletteColours/foreground",
            "text": "General foreground"
        },
        "$:/language/Docs/PaletteColours/menubar-background": {
            "title": "$:/language/Docs/PaletteColours/menubar-background",
            "text": "Menu bar background"
        },
        "$:/language/Docs/PaletteColours/menubar-foreground": {
            "title": "$:/language/Docs/PaletteColours/menubar-foreground",
            "text": "Menu bar foreground"
        },
        "$:/language/Docs/PaletteColours/message-background": {
            "title": "$:/language/Docs/PaletteColours/message-background",
            "text": "Message box background"
        },
        "$:/language/Docs/PaletteColours/message-border": {
            "title": "$:/language/Docs/PaletteColours/message-border",
            "text": "Message box border"
        },
        "$:/language/Docs/PaletteColours/message-foreground": {
            "title": "$:/language/Docs/PaletteColours/message-foreground",
            "text": "Message box foreground"
        },
        "$:/language/Docs/PaletteColours/modal-backdrop": {
            "title": "$:/language/Docs/PaletteColours/modal-backdrop",
            "text": "Modal backdrop"
        },
        "$:/language/Docs/PaletteColours/modal-background": {
            "title": "$:/language/Docs/PaletteColours/modal-background",
            "text": "Modal background"
        },
        "$:/language/Docs/PaletteColours/modal-border": {
            "title": "$:/language/Docs/PaletteColours/modal-border",
            "text": "Modal border"
        },
        "$:/language/Docs/PaletteColours/modal-footer-background": {
            "title": "$:/language/Docs/PaletteColours/modal-footer-background",
            "text": "Modal footer background"
        },
        "$:/language/Docs/PaletteColours/modal-footer-border": {
            "title": "$:/language/Docs/PaletteColours/modal-footer-border",
            "text": "Modal footer border"
        },
        "$:/language/Docs/PaletteColours/modal-header-border": {
            "title": "$:/language/Docs/PaletteColours/modal-header-border",
            "text": "Modal header border"
        },
        "$:/language/Docs/PaletteColours/muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/muted-foreground",
            "text": "General muted foreground"
        },
        "$:/language/Docs/PaletteColours/notification-background": {
            "title": "$:/language/Docs/PaletteColours/notification-background",
            "text": "Notification background"
        },
        "$:/language/Docs/PaletteColours/notification-border": {
            "title": "$:/language/Docs/PaletteColours/notification-border",
            "text": "Notification border"
        },
        "$:/language/Docs/PaletteColours/page-background": {
            "title": "$:/language/Docs/PaletteColours/page-background",
            "text": "Page background"
        },
        "$:/language/Docs/PaletteColours/pre-background": {
            "title": "$:/language/Docs/PaletteColours/pre-background",
            "text": "Preformatted code background"
        },
        "$:/language/Docs/PaletteColours/pre-border": {
            "title": "$:/language/Docs/PaletteColours/pre-border",
            "text": "Preformatted code border"
        },
        "$:/language/Docs/PaletteColours/primary": {
            "title": "$:/language/Docs/PaletteColours/primary",
            "text": "General primary"
        },
        "$:/language/Docs/PaletteColours/select-tag-background": {
            "title": "$:/language/Docs/PaletteColours/select-tag-background",
            "text": "`<select>` element background"
        },
        "$:/language/Docs/PaletteColours/select-tag-foreground": {
            "title": "$:/language/Docs/PaletteColours/select-tag-foreground",
            "text": "`<select>` element text"
        },
        "$:/language/Docs/PaletteColours/sidebar-button-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-button-foreground",
            "text": "Sidebar button foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover",
            "text": "Sidebar controls foreground hover"
        },
        "$:/language/Docs/PaletteColours/sidebar-controls-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground",
            "text": "Sidebar controls foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-foreground-shadow": {
            "title": "$:/language/Docs/PaletteColours/sidebar-foreground-shadow",
            "text": "Sidebar foreground shadow"
        },
        "$:/language/Docs/PaletteColours/sidebar-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-foreground",
            "text": "Sidebar foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover",
            "text": "Sidebar muted foreground hover"
        },
        "$:/language/Docs/PaletteColours/sidebar-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground",
            "text": "Sidebar muted foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-background-selected",
            "text": "Sidebar tab background for selected tabs"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-background": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-background",
            "text": "Sidebar tab background"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-border-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-border-selected",
            "text": "Sidebar tab border for selected tabs"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-border": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-border",
            "text": "Sidebar tab border"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-divider": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-divider",
            "text": "Sidebar tab divider"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected",
            "text": "Sidebar tab foreground for selected tabs"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground",
            "text": "Sidebar tab foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover",
            "text": "Sidebar tiddler link foreground hover"
        },
        "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground",
            "text": "Sidebar tiddler link foreground"
        },
        "$:/language/Docs/PaletteColours/site-title-foreground": {
            "title": "$:/language/Docs/PaletteColours/site-title-foreground",
            "text": "Site title foreground"
        },
        "$:/language/Docs/PaletteColours/static-alert-foreground": {
            "title": "$:/language/Docs/PaletteColours/static-alert-foreground",
            "text": "Static alert foreground"
        },
        "$:/language/Docs/PaletteColours/tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-background-selected",
            "text": "Tab background for selected tabs"
        },
        "$:/language/Docs/PaletteColours/tab-background": {
            "title": "$:/language/Docs/PaletteColours/tab-background",
            "text": "Tab background"
        },
        "$:/language/Docs/PaletteColours/tab-border-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-border-selected",
            "text": "Tab border for selected tabs"
        },
        "$:/language/Docs/PaletteColours/tab-border": {
            "title": "$:/language/Docs/PaletteColours/tab-border",
            "text": "Tab border"
        },
        "$:/language/Docs/PaletteColours/tab-divider": {
            "title": "$:/language/Docs/PaletteColours/tab-divider",
            "text": "Tab divider"
        },
        "$:/language/Docs/PaletteColours/tab-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-foreground-selected",
            "text": "Tab foreground for selected tabs"
        },
        "$:/language/Docs/PaletteColours/tab-foreground": {
            "title": "$:/language/Docs/PaletteColours/tab-foreground",
            "text": "Tab foreground"
        },
        "$:/language/Docs/PaletteColours/table-border": {
            "title": "$:/language/Docs/PaletteColours/table-border",
            "text": "Table border"
        },
        "$:/language/Docs/PaletteColours/table-footer-background": {
            "title": "$:/language/Docs/PaletteColours/table-footer-background",
            "text": "Table footer background"
        },
        "$:/language/Docs/PaletteColours/table-header-background": {
            "title": "$:/language/Docs/PaletteColours/table-header-background",
            "text": "Table header background"
        },
        "$:/language/Docs/PaletteColours/tag-background": {
            "title": "$:/language/Docs/PaletteColours/tag-background",
            "text": "Tag background"
        },
        "$:/language/Docs/PaletteColours/tag-foreground": {
            "title": "$:/language/Docs/PaletteColours/tag-foreground",
            "text": "Tag foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-background",
            "text": "Tiddler background"
        },
        "$:/language/Docs/PaletteColours/tiddler-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-border",
            "text": "Tiddler border"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover",
            "text": "Tiddler controls foreground hover"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected",
            "text": "Tiddler controls foreground for selected controls"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground",
            "text": "Tiddler controls foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-background",
            "text": "Tiddler editor background"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-border-image": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-border-image",
            "text": "Tiddler editor border image"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-border",
            "text": "Tiddler editor border"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-fields-even": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-even",
            "text": "Tiddler editor background for even fields"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd",
            "text": "Tiddler editor background for odd fields"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-background",
            "text": "Tiddler info panel background"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-border",
            "text": "Tiddler info panel border"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-tab-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-tab-background",
            "text": "Tiddler info panel tab background"
        },
        "$:/language/Docs/PaletteColours/tiddler-link-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-link-background",
            "text": "Tiddler link background"
        },
        "$:/language/Docs/PaletteColours/tiddler-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-link-foreground",
            "text": "Tiddler link foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground",
            "text": "Tiddler subtitle foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-title-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-title-foreground",
            "text": "Tiddler title foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-new-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-new-button",
            "text": "Toolbar 'new tiddler' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-options-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-options-button",
            "text": "Toolbar 'options' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-save-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-save-button",
            "text": "Toolbar 'save' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-info-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-info-button",
            "text": "Toolbar 'info' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-edit-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-edit-button",
            "text": "Toolbar 'edit' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-close-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-close-button",
            "text": "Toolbar 'close' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-delete-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-delete-button",
            "text": "Toolbar 'delete' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-cancel-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-cancel-button",
            "text": "Toolbar 'cancel' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-done-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-done-button",
            "text": "Toolbar 'done' button foreground"
        },
        "$:/language/Docs/PaletteColours/untagged-background": {
            "title": "$:/language/Docs/PaletteColours/untagged-background",
            "text": "Untagged pill background"
        },
        "$:/language/Docs/PaletteColours/very-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/very-muted-foreground",
            "text": "Very muted foreground"
        },
        "$:/language/EditTemplate/Body/External/Hint": {
            "title": "$:/language/EditTemplate/Body/External/Hint",
            "text": "This tiddler shows content stored outside of the main TiddlyWiki file. You can edit the tags and fields but cannot directly edit the content itself"
        },
        "$:/language/EditTemplate/Body/Placeholder": {
            "title": "$:/language/EditTemplate/Body/Placeholder",
            "text": "Type the text for this tiddler"
        },
        "$:/language/EditTemplate/Body/Preview/Type/Output": {
            "title": "$:/language/EditTemplate/Body/Preview/Type/Output",
            "text": "output"
        },
        "$:/language/EditTemplate/Field/Remove/Caption": {
            "title": "$:/language/EditTemplate/Field/Remove/Caption",
            "text": "remove field"
        },
        "$:/language/EditTemplate/Field/Remove/Hint": {
            "title": "$:/language/EditTemplate/Field/Remove/Hint",
            "text": "Remove field"
        },
        "$:/language/EditTemplate/Field/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Field/Dropdown/Caption",
            "text": "field list"
        },
        "$:/language/EditTemplate/Field/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Field/Dropdown/Hint",
            "text": "Show field list"
        },
        "$:/language/EditTemplate/Fields/Add/Button": {
            "title": "$:/language/EditTemplate/Fields/Add/Button",
            "text": "add"
        },
        "$:/language/EditTemplate/Fields/Add/Button/Hint": {
            "title": "$:/language/EditTemplate/Fields/Add/Button/Hint",
            "text": "Add the new field to the tiddler"
        },
        "$:/language/EditTemplate/Fields/Add/Name/Placeholder": {
            "title": "$:/language/EditTemplate/Fields/Add/Name/Placeholder",
            "text": "field name"
        },
        "$:/language/EditTemplate/Fields/Add/Prompt": {
            "title": "$:/language/EditTemplate/Fields/Add/Prompt",
            "text": "Add a new field:"
        },
        "$:/language/EditTemplate/Fields/Add/Value/Placeholder": {
            "title": "$:/language/EditTemplate/Fields/Add/Value/Placeholder",
            "text": "field value"
        },
        "$:/language/EditTemplate/Fields/Add/Dropdown/System": {
            "title": "$:/language/EditTemplate/Fields/Add/Dropdown/System",
            "text": "System fields"
        },
        "$:/language/EditTemplate/Fields/Add/Dropdown/User": {
            "title": "$:/language/EditTemplate/Fields/Add/Dropdown/User",
            "text": "User fields"
        },
        "$:/language/EditTemplate/Shadow/Warning": {
            "title": "$:/language/EditTemplate/Shadow/Warning",
            "text": "This is a shadow tiddler. Any changes you make will override the default version from the plugin <<pluginLink>>"
        },
        "$:/language/EditTemplate/Shadow/OverriddenWarning": {
            "title": "$:/language/EditTemplate/Shadow/OverriddenWarning",
            "text": "This is a modified shadow tiddler. You can revert to the default version in the plugin <<pluginLink>> by deleting this tiddler"
        },
        "$:/language/EditTemplate/Tags/Add/Button": {
            "title": "$:/language/EditTemplate/Tags/Add/Button",
            "text": "add"
        },
        "$:/language/EditTemplate/Tags/Add/Button/Hint": {
            "title": "$:/language/EditTemplate/Tags/Add/Button/Hint",
            "text": "add tag"
        },
        "$:/language/EditTemplate/Tags/Add/Placeholder": {
            "title": "$:/language/EditTemplate/Tags/Add/Placeholder",
            "text": "tag name"
        },
        "$:/language/EditTemplate/Tags/ClearInput/Caption": {
            "title": "$:/language/EditTemplate/Tags/ClearInput/Caption",
            "text": "clear input"
        },
        "$:/language/EditTemplate/Tags/ClearInput/Hint": {
            "title": "$:/language/EditTemplate/Tags/ClearInput/Hint",
            "text": "Clear tag input"
        },
        "$:/language/EditTemplate/Tags/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Tags/Dropdown/Caption",
            "text": "tag list"
        },
        "$:/language/EditTemplate/Tags/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Tags/Dropdown/Hint",
            "text": "Show tag list"
        },
        "$:/language/EditTemplate/Title/BadCharacterWarning": {
            "title": "$:/language/EditTemplate/Title/BadCharacterWarning",
            "text": "Warning: avoid using any of the characters <<bad-chars>> in tiddler titles"
        },
        "$:/language/EditTemplate/Title/Exists/Prompt": {
            "title": "$:/language/EditTemplate/Title/Exists/Prompt",
            "text": "Target tiddler already exists"
        },
        "$:/language/EditTemplate/Title/Relink/Prompt": {
            "title": "$:/language/EditTemplate/Title/Relink/Prompt",
            "text": "Update ''<$text text=<<fromTitle>>/>'' to ''<$text text=<<toTitle>>/>'' in the //tags// and //list// fields of other tiddlers"
        },
        "$:/language/EditTemplate/Title/References/Prompt": {
            "title": "$:/language/EditTemplate/Title/References/Prompt",
            "text": "The following references to this tiddler will not be automatically updated:"
        },
        "$:/language/EditTemplate/Type/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Type/Dropdown/Caption",
            "text": "content type list"
        },
        "$:/language/EditTemplate/Type/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Type/Dropdown/Hint",
            "text": "Show content type list"
        },
        "$:/language/EditTemplate/Type/Delete/Caption": {
            "title": "$:/language/EditTemplate/Type/Delete/Caption",
            "text": "delete content type"
        },
        "$:/language/EditTemplate/Type/Delete/Hint": {
            "title": "$:/language/EditTemplate/Type/Delete/Hint",
            "text": "Delete content type"
        },
        "$:/language/EditTemplate/Type/Placeholder": {
            "title": "$:/language/EditTemplate/Type/Placeholder",
            "text": "content type"
        },
        "$:/language/EditTemplate/Type/Prompt": {
            "title": "$:/language/EditTemplate/Type/Prompt",
            "text": "Type:"
        },
        "$:/language/Exporters/StaticRiver": {
            "title": "$:/language/Exporters/StaticRiver",
            "text": "Static HTML"
        },
        "$:/language/Exporters/JsonFile": {
            "title": "$:/language/Exporters/JsonFile",
            "text": "JSON file"
        },
        "$:/language/Exporters/CsvFile": {
            "title": "$:/language/Exporters/CsvFile",
            "text": "CSV file"
        },
        "$:/language/Exporters/TidFile": {
            "title": "$:/language/Exporters/TidFile",
            "text": "\".tid\" file"
        },
        "$:/language/Docs/Fields/_canonical_uri": {
            "title": "$:/language/Docs/Fields/_canonical_uri",
            "text": "The full URI of an external image tiddler"
        },
        "$:/language/Docs/Fields/bag": {
            "title": "$:/language/Docs/Fields/bag",
            "text": "The name of the bag from which a tiddler came"
        },
        "$:/language/Docs/Fields/caption": {
            "title": "$:/language/Docs/Fields/caption",
            "text": "The text to be displayed on a tab or button"
        },
        "$:/language/Docs/Fields/color": {
            "title": "$:/language/Docs/Fields/color",
            "text": "The CSS color value associated with a tiddler"
        },
        "$:/language/Docs/Fields/component": {
            "title": "$:/language/Docs/Fields/component",
            "text": "The name of the component responsible for an [[alert tiddler|AlertMechanism]]"
        },
        "$:/language/Docs/Fields/current-tiddler": {
            "title": "$:/language/Docs/Fields/current-tiddler",
            "text": "Used to cache the top tiddler in a [[history list|HistoryMechanism]]"
        },
        "$:/language/Docs/Fields/created": {
            "title": "$:/language/Docs/Fields/created",
            "text": "The date a tiddler was created"
        },
        "$:/language/Docs/Fields/creator": {
            "title": "$:/language/Docs/Fields/creator",
            "text": "The name of the person who created a tiddler"
        },
        "$:/language/Docs/Fields/dependents": {
            "title": "$:/language/Docs/Fields/dependents",
            "text": "For a plugin, lists the dependent plugin titles"
        },
        "$:/language/Docs/Fields/description": {
            "title": "$:/language/Docs/Fields/description",
            "text": "The descriptive text for a plugin, or a modal dialogue"
        },
        "$:/language/Docs/Fields/draft.of": {
            "title": "$:/language/Docs/Fields/draft.of",
            "text": "For draft tiddlers, contains the title of the tiddler of which this is a draft"
        },
        "$:/language/Docs/Fields/draft.title": {
            "title": "$:/language/Docs/Fields/draft.title",
            "text": "For draft tiddlers, contains the proposed new title of the tiddler"
        },
        "$:/language/Docs/Fields/footer": {
            "title": "$:/language/Docs/Fields/footer",
            "text": "The footer text for a wizard"
        },
        "$:/language/Docs/Fields/hide-body": {
            "title": "$:/language/Docs/Fields/hide-body",
            "text": "The view template will hide bodies of tiddlers if set to: ''yes''"
        },
        "$:/language/Docs/Fields/icon": {
            "title": "$:/language/Docs/Fields/icon",
            "text": "The title of the tiddler containing the icon associated with a tiddler"
        },
        "$:/language/Docs/Fields/library": {
            "title": "$:/language/Docs/Fields/library",
            "text": "Indicates that a tiddler should be saved as a JavaScript library if set to: ''yes''"
        },
        "$:/language/Docs/Fields/list": {
            "title": "$:/language/Docs/Fields/list",
            "text": "An ordered list of tiddler titles associated with a tiddler"
        },
        "$:/language/Docs/Fields/list-before": {
            "title": "$:/language/Docs/Fields/list-before",
            "text": "If set, the title of a tiddler before which this tiddler should be added to the ordered list of tiddler titles, or at the start of the list if this field is present but empty"
        },
        "$:/language/Docs/Fields/list-after": {
            "title": "$:/language/Docs/Fields/list-after",
            "text": "If set, the title of the tiddler after which this tiddler should be added to the ordered list of tiddler titles, or at the end of the list if this field is present but empty"
        },
        "$:/language/Docs/Fields/modified": {
            "title": "$:/language/Docs/Fields/modified",
            "text": "The date and time at which a tiddler was last modified"
        },
        "$:/language/Docs/Fields/modifier": {
            "title": "$:/language/Docs/Fields/modifier",
            "text": "The tiddler title associated with the person who last modified a tiddler"
        },
        "$:/language/Docs/Fields/name": {
            "title": "$:/language/Docs/Fields/name",
            "text": "The human readable name associated with a plugin tiddler"
        },
        "$:/language/Docs/Fields/plugin-priority": {
            "title": "$:/language/Docs/Fields/plugin-priority",
            "text": "A numerical value indicating the priority of a plugin tiddler"
        },
        "$:/language/Docs/Fields/plugin-type": {
            "title": "$:/language/Docs/Fields/plugin-type",
            "text": "The type of plugin in a plugin tiddler"
        },
        "$:/language/Docs/Fields/revision": {
            "title": "$:/language/Docs/Fields/revision",
            "text": "The revision of the tiddler held at the server"
        },
        "$:/language/Docs/Fields/released": {
            "title": "$:/language/Docs/Fields/released",
            "text": "Date of a TiddlyWiki release"
        },
        "$:/language/Docs/Fields/source": {
            "title": "$:/language/Docs/Fields/source",
            "text": "The source URL associated with a tiddler"
        },
        "$:/language/Docs/Fields/subtitle": {
            "title": "$:/language/Docs/Fields/subtitle",
            "text": "The subtitle text for a wizard"
        },
        "$:/language/Docs/Fields/tags": {
            "title": "$:/language/Docs/Fields/tags",
            "text": "A list of tags associated with a tiddler"
        },
        "$:/language/Docs/Fields/text": {
            "title": "$:/language/Docs/Fields/text",
            "text": "The body text of a tiddler"
        },
        "$:/language/Docs/Fields/throttle.refresh": {
            "title": "$:/language/Docs/Fields/throttle.refresh",
            "text": "If present, throttles refreshes of this tiddler"
        },
        "$:/language/Docs/Fields/title": {
            "title": "$:/language/Docs/Fields/title",
            "text": "The unique name of a tiddler"
        },
        "$:/language/Docs/Fields/toc-link": {
            "title": "$:/language/Docs/Fields/toc-link",
            "text": "Suppresses the tiddler's link in a Table of Contents tree if set to: ''no''"
        },
        "$:/language/Docs/Fields/type": {
            "title": "$:/language/Docs/Fields/type",
            "text": "The content type of a tiddler"
        },
        "$:/language/Docs/Fields/version": {
            "title": "$:/language/Docs/Fields/version",
            "text": "Version information for a plugin"
        },
        "$:/language/Docs/Fields/_is_skinny": {
            "title": "$:/language/Docs/Fields/_is_skinny",
            "text": "If present, indicates that the tiddler text field must be loaded from the server"
        },
        "$:/language/Filters/AllTiddlers": {
            "title": "$:/language/Filters/AllTiddlers",
            "text": "All tiddlers except system tiddlers"
        },
        "$:/language/Filters/RecentSystemTiddlers": {
            "title": "$:/language/Filters/RecentSystemTiddlers",
            "text": "Recently modified tiddlers, including system tiddlers"
        },
        "$:/language/Filters/RecentTiddlers": {
            "title": "$:/language/Filters/RecentTiddlers",
            "text": "Recently modified tiddlers"
        },
        "$:/language/Filters/AllTags": {
            "title": "$:/language/Filters/AllTags",
            "text": "All tags except system tags"
        },
        "$:/language/Filters/Missing": {
            "title": "$:/language/Filters/Missing",
            "text": "Missing tiddlers"
        },
        "$:/language/Filters/Drafts": {
            "title": "$:/language/Filters/Drafts",
            "text": "Draft tiddlers"
        },
        "$:/language/Filters/Orphans": {
            "title": "$:/language/Filters/Orphans",
            "text": "Orphan tiddlers"
        },
        "$:/language/Filters/SystemTiddlers": {
            "title": "$:/language/Filters/SystemTiddlers",
            "text": "System tiddlers"
        },
        "$:/language/Filters/ShadowTiddlers": {
            "title": "$:/language/Filters/ShadowTiddlers",
            "text": "Shadow tiddlers"
        },
        "$:/language/Filters/OverriddenShadowTiddlers": {
            "title": "$:/language/Filters/OverriddenShadowTiddlers",
            "text": "Overridden shadow tiddlers"
        },
        "$:/language/Filters/SessionTiddlers": {
            "title": "$:/language/Filters/SessionTiddlers",
            "text": "Tiddlers modified since the wiki was loaded"
        },
        "$:/language/Filters/SystemTags": {
            "title": "$:/language/Filters/SystemTags",
            "text": "System tags"
        },
        "$:/language/Filters/StoryList": {
            "title": "$:/language/Filters/StoryList",
            "text": "Tiddlers in the story river, excluding <$text text=\"$:/AdvancedSearch\"/>"
        },
        "$:/language/Filters/TypedTiddlers": {
            "title": "$:/language/Filters/TypedTiddlers",
            "text": "Non wiki-text tiddlers"
        },
        "GettingStarted": {
            "title": "GettingStarted",
            "text": "\\define lingo-base() $:/language/ControlPanel/Basics/\nWelcome to ~TiddlyWiki and the ~TiddlyWiki community\n\nBefore you start storing important information in ~TiddlyWiki it is vital to make sure that you can reliably save changes. See https://tiddlywiki.com/#GettingStarted for details\n\n!! Set up this ~TiddlyWiki\n\n<div class=\"tc-control-panel\">\n\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n</div>\n\nSee the [[control panel|$:/ControlPanel]] for more options.\n"
        },
        "$:/language/Help/build": {
            "title": "$:/language/Help/build",
            "description": "Automatically run configured commands",
            "text": "Build the specified build targets for the current wiki. If no build targets are specified then all available targets will be built.\n\n```\n--build <target> [<target> ...]\n```\n\nBuild targets are defined in the `tiddlywiki.info` file of a wiki folder.\n\n"
        },
        "$:/language/Help/clearpassword": {
            "title": "$:/language/Help/clearpassword",
            "description": "Clear a password for subsequent crypto operations",
            "text": "Clear the password for subsequent crypto operations\n\n```\n--clearpassword\n```\n"
        },
        "$:/language/Help/default": {
            "title": "$:/language/Help/default",
            "text": "\\define commandTitle()\n$:/language/Help/$(command)$\n\\end\n```\nusage: tiddlywiki [<wikifolder>] [--<command> [<args>...]...]\n```\n\nAvailable commands:\n\n<ul>\n<$list filter=\"[commands[]sort[title]]\" variable=\"command\">\n<li><$link to=<<commandTitle>>><$macrocall $name=\"command\" $type=\"text/plain\" $output=\"text/plain\"/></$link>: <$transclude tiddler=<<commandTitle>> field=\"description\"/></li>\n</$list>\n</ul>\n\nTo get detailed help on a command:\n\n```\ntiddlywiki --help <command>\n```\n"
        },
        "$:/language/Help/deletetiddlers": {
            "title": "$:/language/Help/deletetiddlers",
            "description": "Deletes a group of tiddlers",
            "text": "<<.from-version \"5.1.20\">> Deletes a group of tiddlers identified by a filter.\n\n```\n--deletetiddlers <filter>\n```\n"
        },
        "$:/language/Help/editions": {
            "title": "$:/language/Help/editions",
            "description": "Lists the available editions of TiddlyWiki",
            "text": "Lists the names and descriptions of the available editions. You can create a new wiki of a specified edition with the `--init` command.\n\n```\n--editions\n```\n"
        },
        "$:/language/Help/fetch": {
            "title": "$:/language/Help/fetch",
            "description": "Fetch tiddlers from wiki by URL",
            "text": "Fetch one or more files over HTTP/HTTPS, and import the tiddlers matching a filter, optionally transforming the incoming titles.\n\n```\n--fetch file <url> <import-filter> <transform-filter>\n--fetch files <url-filter> <import-filter> <transform-filter>\n--fetch raw-file <url> <transform-filter>\n--fetch raw-files <url-filter> <transform-filter>\n```\n\nThe \"file\" and \"files\" variants fetch the specified files and attempt to import the tiddlers within them (the same processing as if the files were dragged into the browser window). The \"raw-file\" and \"raw-files\" variants fetch the specified files and then store the raw file data in tiddlers, without applying the import logic.\n\nWith the \"file\" and \"raw-file\" variants only a single file is fetched and the first parameter is the URL of the file to read.\n\nWith the \"files\" and \"raw-files\" variants, multiple files are fetched and the first parameter is a filter yielding a list of URLs of the files to read. For example, given a set of tiddlers tagged \"remote-server\" that have a field \"url\" the filter `[tag[remote-server]get[url]]` will retrieve all the available URLs.\n\nFor the \"file\" and \"files\" variants, the `<import-filter>` parameter specifies a filter determining which tiddlers are imported. It defaults to `[all[tiddlers]]` if not provided.\n\nFor all variants, the `<transform-filter>` parameter specifies an optional filter that transforms the titles of the imported tiddlers. For example, `[addprefix[$:/myimports/]]` would add the prefix `$:/myimports/` to each title.\n\nPreceding the `--fetch` command with `--verbose` will output progress information during the import.\n\nNote that TiddlyWiki will not fetch an older version of an already loaded plugin.\n\nThe following example retrieves all the non-system tiddlers from https://tiddlywiki.com and saves them to a JSON file:\n\n```\ntiddlywiki --verbose --fetch file \"https://tiddlywiki.com/\" \"[!is[system]]\" \"\" --rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[!is[system]]\"\n```\n\nThe following example retrieves the \"favicon\" file from tiddlywiki.com and saves it in a file called \"output.ico\". Note that the intermediate tiddler \"Icon Tiddler\" is quoted in the \"--fetch\" command because it is being used as a transformation filter to replace the default title, while there are no quotes for the \"--savetiddler\" command because it is being used directly as a title.\n\n```\ntiddlywiki --verbose --fetch raw-file \"https://tiddlywiki.com/favicon.ico\" \"[[Icon Tiddler]]\" --savetiddler \"Icon Tiddler\" output.ico\n```\n\n"
        },
        "$:/language/Help/help": {
            "title": "$:/language/Help/help",
            "description": "Display help for TiddlyWiki commands",
            "text": "Displays help text for a command:\n\n```\n--help [<command>]\n```\n\nIf the command name is omitted then a list of available commands is displayed.\n"
        },
        "$:/language/Help/import": {
            "title": "$:/language/Help/import",
            "description": "Import tiddlers from a file",
            "text": "Import tiddlers from TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` or other local files. The deserializer must be explicitly specified, unlike the `load` command which infers the deserializer from the file extension.\n\n```\n--import <filepath> <deserializer> [<title>] [<encoding>]\n```\n\nThe deserializers in the core include:\n\n* application/javascript\n* application/json\n* application/x-tiddler\n* application/x-tiddler-html-div\n* application/x-tiddlers\n* text/html\n* text/plain\n\nThe title of the imported tiddler defaults to the filename.\n\nThe encoding defaults to \"utf8\", but can be \"base64\" for importing binary files.\n\nNote that TiddlyWiki will not import an older version of an already loaded plugin.\n"
        },
        "$:/language/Help/init": {
            "title": "$:/language/Help/init",
            "description": "Initialise a new wiki folder",
            "text": "Initialise an empty [[WikiFolder|WikiFolders]] with a copy of the specified edition.\n\n```\n--init <edition> [<edition> ...]\n```\n\nFor example:\n\n```\ntiddlywiki ./MyWikiFolder --init empty\n```\n\nNote:\n\n* The wiki folder directory will be created if necessary\n* The \"edition\" defaults to ''empty''\n* The init command will fail if the wiki folder is not empty\n* The init command removes any `includeWikis` definitions in the edition's `tiddlywiki.info` file\n* When multiple editions are specified, editions initialised later will overwrite any files shared with earlier editions (so, the final `tiddlywiki.info` file will be copied from the last edition)\n* `--editions` returns a list of available editions\n"
        },
        "$:/language/Help/listen": {
            "title": "$:/language/Help/listen",
            "description": "Provides an HTTP server interface to TiddlyWiki",
            "text": "Serves a wiki over HTTP.\n\nThe listen command uses NamedCommandParameters:\n\n```\n--listen [<name>=<value>]...\n```\n\nAll parameters are optional with safe defaults, and can be specified in any order. The recognised parameters are:\n\n* ''host'' - optional hostname to serve from (defaults to \"127.0.0.1\" aka \"localhost\")\n* ''path-prefix'' - optional prefix for paths\n* ''port'' - port number on which to listen; non-numeric values are interpreted as a system environment variable from which the port number is extracted (defaults to \"8080\")\n* ''credentials'' - pathname of credentials CSV file (relative to wiki folder)\n* ''anon-username'' - the username for signing edits for anonymous users\n* ''username'' - optional username for basic authentication\n* ''password'' - optional password for basic authentication\n* ''authenticated-user-header'' - optional name of header to be used for trusted authentication\n* ''readers'' - comma separated list of principals allowed to read from this wiki\n* ''writers'' - comma separated list of principals allowed to write to this wiki\n* ''csrf-disable'' - set to \"yes\" to disable CSRF checks (defaults to \"no\")\n* ''root-tiddler'' - the tiddler to serve at the root (defaults to \"$:/core/save/all\")\n* ''root-render-type'' - the content type to which the root tiddler should be rendered (defaults to \"text/plain\")\n* ''root-serve-type'' - the content type with which the root tiddler should be served (defaults to \"text/html\")\n* ''tls-cert'' - pathname of TLS certificate file (relative to wiki folder)\n* ''tls-key'' - pathname of TLS key file (relative to wiki folder)\n* ''debug-level'' - optional debug level; set to \"debug\" to view request details (defaults to \"none\")\n* ''gzip'' - set to \"yes\" to enable gzip compression for some http endpoints (defaults to \"no\")\n\nFor information on opening up your instance to the entire local network, and possible security concerns, see the WebServer tiddler at TiddlyWiki.com.\n\n"
        },
        "$:/language/Help/load": {
            "title": "$:/language/Help/load",
            "description": "Load tiddlers from a file",
            "text": "Load tiddlers from TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` or other local files. The processing applied to incoming files is determined by the file extension. Use the alternative `import` command if you need to specify the deserializer and encoding explicitly.\n\n```\n--load <filepath> [noerror]\n--load <dirpath> [noerror]\n```\n\nBy default, the load command raises an error if no tiddlers are found. The error can be suppressed by providing the optional \"noerror\" parameter.\n\nTo load tiddlers from an encrypted TiddlyWiki file you should first specify the password with the PasswordCommand. For example:\n\n```\ntiddlywiki ./MyWiki --password pa55w0rd --load my_encrypted_wiki.html\n```\n\nNote that TiddlyWiki will not load an older version of an already loaded plugin.\n"
        },
        "$:/language/Help/makelibrary": {
            "title": "$:/language/Help/makelibrary",
            "description": "Construct library plugin required by upgrade process",
            "text": "Constructs the `$:/UpgradeLibrary` tiddler for the upgrade process.\n\nThe upgrade library is formatted as an ordinary plugin tiddler with the plugin type `library`. It contains a copy of each of the plugins, themes and language packs available within the TiddlyWiki5 repository.\n\nThis command is intended for internal use; it is only relevant to users constructing a custom upgrade procedure.\n\n```\n--makelibrary <title>\n```\n\nThe title argument defaults to `$:/UpgradeLibrary`.\n"
        },
        "$:/language/Help/notfound": {
            "title": "$:/language/Help/notfound",
            "text": "No such help item"
        },
        "$:/language/Help/output": {
            "title": "$:/language/Help/output",
            "description": "Set the base output directory for subsequent commands",
            "text": "Sets the base output directory for subsequent commands. The default output directory is the `output` subdirectory of the edition directory.\n\n```\n--output <pathname>\n```\n\nIf the specified pathname is relative then it is resolved relative to the current working directory. For example `--output .` sets the output directory to the current working directory.\n\n"
        },
        "$:/language/Help/password": {
            "title": "$:/language/Help/password",
            "description": "Set a password for subsequent crypto operations",
            "text": "Set a password for subsequent crypto operations\n\n```\n--password <password>\n```\n\n''Note'': This should not be used for serving TiddlyWiki with password protection. Instead, see the password option under the [[ServerCommand]].\n"
        },
        "$:/language/Help/render": {
            "title": "$:/language/Help/render",
            "description": "Renders individual tiddlers to files",
            "text": "Render individual tiddlers identified by a filter and save the results to the specified files.\n\nOptionally, the title of a template tiddler can be specified. In this case, instead of directly rendering each tiddler, the template tiddler is rendered with the \"currentTiddler\" variable set to the title of the tiddler that is being rendered.\n\nA name and value for an additional variable may optionally also be specified.\n\n```\n--render <tiddler-filter> [<filename-filter>] [<render-type>] [<template>] [<name>] [<value>]\n```\n\n* ''tiddler-filter'': A filter identifying the tiddler(s) to be rendered\n* ''filename-filter'': Optional filter transforming tiddler titles into pathnames. If omitted, defaults to `[is[tiddler]addsuffix[.html]]`, which uses the unchanged tiddler title as the filename\n* ''render-type'': Optional render type: `text/html` (the default) returns the full HTML text and `text/plain` just returns the text content (ie it ignores HTML tags and other unprintable material)\n* ''template'': Optional template through which each tiddler is rendered\n* ''name'': Name of optional variable\n* ''value'': Value of optional variable\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nNotes:\n\n* The output directory is not cleared of any existing files\n* Any missing directories in the path to the filename are automatically created.\n* When referring to a tiddler with spaces in its title, take care to use both the quotes required by your shell and also TiddlyWiki's double square brackets : `--render \"[[Motovun Jack.jpg]]\"`\n* The filename filter is evaluated with the selected items being set to the title of the tiddler currently being rendered, allowing the title to be used as the basis for computing the filename. For example `[encodeuricomponent[]addprefix[static/]]` applies URI encoding to each title, and then adds the prefix `static/`\n* The `--render` command is a more flexible replacement for both the `--rendertiddler` and `--rendertiddlers` commands, which are deprecated\n\nExamples:\n\n* `--render \"[!is[system]]\" \"[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]\"` -- renders all non-system tiddlers as files in the subdirectory \"tiddlers\" with URL-encoded titles and the extension HTML\n\n"
        },
        "$:/language/Help/rendertiddler": {
            "title": "$:/language/Help/rendertiddler",
            "description": "Render an individual tiddler as a specified ContentType",
            "text": "(Note: The `--rendertiddler` command is deprecated in favour of the new, more flexible `--render` command)\n\nRender an individual tiddler as a specified ContentType, defaulting to `text/html` and save it to the specified filename.\n\nOptionally the title of a template tiddler can be specified, in which case the template tiddler is rendered with the \"currentTiddler\" variable set to the tiddler that is being rendered (the first parameter value).\n\nA name and value for an additional variable may optionally also be specified.\n\n```\n--rendertiddler <title> <filename> [<type>] [<template>] [<name>] [<value>]\n```\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny missing directories in the path to the filename are automatically created.\n\nFor example, the following command saves all tiddlers matching the filter `[tag[done]]` to a JSON file titled `output.json` by employing the core template `$:/core/templates/exporters/JsonFile`.\n\n```\n--rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[tag[done]]\"\n```\n"
        },
        "$:/language/Help/rendertiddlers": {
            "title": "$:/language/Help/rendertiddlers",
            "description": "Render tiddlers matching a filter to a specified ContentType",
            "text": "(Note: The `--rendertiddlers` command is deprecated in favour of the new, more flexible `--render` command)\n\nRender a set of tiddlers matching a filter to separate files of a specified ContentType (defaults to `text/html`) and extension (defaults to `.html`).\n\n```\n--rendertiddlers '<filter>' <template> <pathname> [<type>] [<extension>] [\"noclean\"]\n```\n\nFor example:\n\n```\n--rendertiddlers '[!is[system]]' $:/core/templates/static.tiddler.html ./static text/plain\n```\n\nBy default, the pathname is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny files in the target directory are deleted unless the ''noclean'' flag is specified. The target directory is recursively created if it is missing.\n"
        },
        "$:/language/Help/save": {
            "title": "$:/language/Help/save",
            "description": "Saves individual raw tiddlers to files",
            "text": "Saves individual tiddlers identified by a filter in their raw text or binary format to the specified files.\n\n```\n--save <tiddler-filter> <filename-filter>\n```\n\n* ''tiddler-filter'': A filter identifying the tiddler(s) to be saved\n* ''filename-filter'': Optional filter transforming tiddler titles into pathnames. If omitted, defaults to `[is[tiddler]]`, which uses the unchanged tiddler title as the filename\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nNotes:\n\n* The output directory is not cleared of any existing files\n* Any missing directories in the path to the filename are automatically created.\n* When saving a tiddler with spaces in its title, take care to use both the quotes required by your shell and also TiddlyWiki's double square brackets : `--save \"[[Motovun Jack.jpg]]\"`\n* The filename filter is evaluated with the selected items being set to the title of the tiddler currently being saved, allowing the title to be used as the basis for computing the filename. For example `[encodeuricomponent[]addprefix[static/]]` applies URI encoding to each title, and then adds the prefix `static/`\n* The `--save` command is a more flexible replacement for both the `--savetiddler` and `--savetiddlers` commands, which are deprecated\n\nExamples:\n\n* `--save \"[!is[system]is[image]]\" \"[encodeuricomponent[]addprefix[tiddlers/]]\"` -- saves all non-system image tiddlers as files in the subdirectory \"tiddlers\" with URL-encoded titles\n"
        },
        "$:/language/Help/savetiddler": {
            "title": "$:/language/Help/savetiddler",
            "description": "Saves a raw tiddler to a file",
            "text": "(Note: The `--savetiddler` command is deprecated in favour of the new, more flexible `--save` command)\n\nSaves an individual tiddler in its raw text or binary format to the specified filename.\n\n```\n--savetiddler <title> <filename>\n```\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny missing directories in the path to the filename are automatically created.\n"
        },
        "$:/language/Help/savetiddlers": {
            "title": "$:/language/Help/savetiddlers",
            "description": "Saves a group of raw tiddlers to a directory",
            "text": "(Note: The `--savetiddlers` command is deprecated in favour of the new, more flexible `--save` command)\n\nSaves a group of tiddlers in their raw text or binary format to the specified directory.\n\n```\n--savetiddlers <filter> <pathname> [\"noclean\"]\n```\n\nBy default, the pathname is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nThe output directory is cleared of existing files before saving the specified files. The deletion can be disabled by specifying the ''noclean'' flag.\n\nAny missing directories in the pathname are automatically created.\n"
        },
        "$:/language/Help/savewikifolder": {
            "title": "$:/language/Help/savewikifolder",
            "description": "Saves a wiki to a new wiki folder",
            "text": "<<.from-version \"5.1.20\">> Saves the current wiki as a wiki folder, including tiddlers, plugins and configuration:\n\n```\n--savewikifolder <wikifolderpath> [<filter>]\n```\n\n* The target wiki folder must be empty or non-existent\n* The filter specifies which tiddlers should be included. It is optional, defaulting to `[all[tiddlers]]`\n* Plugins from the official plugin library are replaced with references to those plugins in the `tiddlywiki.info` file\n* Custom plugins are unpacked into their own folder\n\nA common usage is to convert a TiddlyWiki HTML file into a wiki folder:\n\n```\ntiddlywiki --load ./mywiki.html --savewikifolder ./mywikifolder\n```\n"
        },
        "$:/language/Help/server": {
            "title": "$:/language/Help/server",
            "description": "Provides an HTTP server interface to TiddlyWiki (deprecated in favour of the new listen command)",
            "text": "Legacy command to serve a wiki over HTTP.\n\n```\n--server <port> <root-tiddler> <root-render-type> <root-serve-type> <username> <password> <host> <path-prefix> <debug-level>\n```\n\nThe parameters are:\n\n* ''port'' - port number on which to listen; non-numeric values are interpreted as a system environment variable from which the port number is extracted (defaults to \"8080\")\n* ''root-tiddler'' - the tiddler to serve at the root (defaults to \"$:/core/save/all\")\n* ''root-render-type'' - the content type to which the root tiddler should be rendered (defaults to \"text/plain\")\n* ''root-serve-type'' - the content type with which the root tiddler should be served (defaults to \"text/html\")\n* ''username'' - the default username for signing edits\n* ''password'' - optional password for basic authentication\n* ''host'' - optional hostname to serve from (defaults to \"127.0.0.1\" aka \"localhost\")\n* ''path-prefix'' - optional prefix for paths\n* ''debug-level'' - optional debug level; set to \"debug\" to view request details (defaults to \"none\")\n\nIf the password parameter is specified then the browser will prompt the user for the username and password. Note that the password is transmitted in plain text so this implementation should only be used on a trusted network or over HTTPS.\n\nFor example:\n\n```\n--server 8080 $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n\nThe username and password can be specified as empty strings if you need to set the hostname or pathprefix and don't want to require a password.\n\n\n```\n--server 8080 $:/core/save/all text/plain text/html \"\" \"\" 192.168.0.245\n```\n\nUsing an address like this exposes your system to the local network. For information on opening up your instance to the entire local network, and possible security concerns, see the WebServer tiddler at TiddlyWiki.com.\n\nTo run multiple TiddlyWiki servers at the same time you'll need to put each one on a different port. It can be useful to use an environment variable to pass the port number to the Node.js process. This example references an environment variable called \"MY_PORT_NUMBER\":\n\n```\n--server MY_PORT_NUMBER $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n"
        },
        "$:/language/Help/setfield": {
            "title": "$:/language/Help/setfield",
            "description": "Prepares external tiddlers for use",
            "text": "//Note that this command is experimental and may change or be replaced before being finalised//\n\nSets the specified field of a group of tiddlers to the result of wikifying a template tiddler with the `currentTiddler` variable set to the tiddler.\n\n```\n--setfield <filter> <fieldname> <templatetitle> <rendertype>\n```\n\nThe parameters are:\n\n* ''filter'' - filter identifying the tiddlers to be affected\n* ''fieldname'' - the field to modify (defaults to \"text\")\n* ''templatetitle'' - the tiddler to wikify into the specified field. If blank or missing then the specified field is deleted\n* ''rendertype'' - the text type to render (defaults to \"text/plain\"; \"text/html\" can be used to include HTML tags)\n"
        },
        "$:/language/Help/unpackplugin": {
            "title": "$:/language/Help/unpackplugin",
            "description": "Unpack the payload tiddlers from a plugin",
            "text": "Extract the payload tiddlers from a plugin, creating them as ordinary tiddlers:\n\n```\n--unpackplugin <title>\n```\n"
        },
        "$:/language/Help/verbose": {
            "title": "$:/language/Help/verbose",
            "description": "Triggers verbose output mode",
            "text": "Triggers verbose output, useful for debugging\n\n```\n--verbose\n```\n"
        },
        "$:/language/Help/version": {
            "title": "$:/language/Help/version",
            "description": "Displays the version number of TiddlyWiki",
            "text": "Displays the version number of TiddlyWiki.\n\n```\n--version\n```\n"
        },
        "$:/language/Import/Imported/Hint": {
            "title": "$:/language/Import/Imported/Hint",
            "text": "The following tiddlers were imported:"
        },
        "$:/language/Import/Listing/Cancel/Caption": {
            "title": "$:/language/Import/Listing/Cancel/Caption",
            "text": "Cancel"
        },
        "$:/language/Import/Listing/Hint": {
            "title": "$:/language/Import/Listing/Hint",
            "text": "These tiddlers are ready to import:"
        },
        "$:/language/Import/Listing/Import/Caption": {
            "title": "$:/language/Import/Listing/Import/Caption",
            "text": "Import"
        },
        "$:/language/Import/Listing/Select/Caption": {
            "title": "$:/language/Import/Listing/Select/Caption",
            "text": "Select"
        },
        "$:/language/Import/Listing/Status/Caption": {
            "title": "$:/language/Import/Listing/Status/Caption",
            "text": "Status"
        },
        "$:/language/Import/Listing/Title/Caption": {
            "title": "$:/language/Import/Listing/Title/Caption",
            "text": "Title"
        },
        "$:/language/Import/Listing/Preview": {
            "title": "$:/language/Import/Listing/Preview",
            "text": "Preview:"
        },
        "$:/language/Import/Listing/Preview/Text": {
            "title": "$:/language/Import/Listing/Preview/Text",
            "text": "Text"
        },
        "$:/language/Import/Listing/Preview/TextRaw": {
            "title": "$:/language/Import/Listing/Preview/TextRaw",
            "text": "Text (Raw)"
        },
        "$:/language/Import/Listing/Preview/Fields": {
            "title": "$:/language/Import/Listing/Preview/Fields",
            "text": "Fields"
        },
        "$:/language/Import/Listing/Preview/Diff": {
            "title": "$:/language/Import/Listing/Preview/Diff",
            "text": "Diff"
        },
        "$:/language/Import/Listing/Preview/DiffFields": {
            "title": "$:/language/Import/Listing/Preview/DiffFields",
            "text": "Diff (Fields)"
        },
        "$:/language/Import/Listing/Rename/Tooltip": {
            "title": "$:/language/Import/Listing/Rename/Tooltip",
            "text": "Rename tiddler before importing"
        },
        "$:/language/Import/Listing/Rename/Prompt": {
            "title": "$:/language/Import/Listing/Rename/Prompt",
            "text": "Rename to:"
        },
        "$:/language/Import/Listing/Rename/ConfirmRename": {
            "title": "$:/language/Import/Listing/Rename/ConfirmRename",
            "text": "Rename tiddler"
        },
        "$:/language/Import/Listing/Rename/CancelRename": {
            "title": "$:/language/Import/Listing/Rename/CancelRename",
            "text": "Cancel"
        },
        "$:/language/Import/Listing/Rename/OverwriteWarning": {
            "title": "$:/language/Import/Listing/Rename/OverwriteWarning",
            "text": "A tiddler with this title already exists."
        },
        "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible": {
            "title": "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible",
            "text": "Blocked incompatible or obsolete plugin."
        },
        "$:/language/Import/Upgrader/Plugins/Suppressed/Version": {
            "title": "$:/language/Import/Upgrader/Plugins/Suppressed/Version",
            "text": "Blocked plugin (due to incoming <<incoming>> not being newer than existing <<existing>>)."
        },
        "$:/language/Import/Upgrader/Plugins/Upgraded": {
            "title": "$:/language/Import/Upgrader/Plugins/Upgraded",
            "text": "Upgraded plugin from <<incoming>> to <<upgraded>>."
        },
        "$:/language/Import/Upgrader/State/Suppressed": {
            "title": "$:/language/Import/Upgrader/State/Suppressed",
            "text": "Blocked temporary state tiddler."
        },
        "$:/language/Import/Upgrader/System/Suppressed": {
            "title": "$:/language/Import/Upgrader/System/Suppressed",
            "text": "Blocked system tiddler."
        },
        "$:/language/Import/Upgrader/System/Warning": {
            "title": "$:/language/Import/Upgrader/System/Warning",
            "text": "Core module tiddler."
        },
        "$:/language/Import/Upgrader/System/Alert": {
            "title": "$:/language/Import/Upgrader/System/Alert",
            "text": "You are about to import a tiddler that will overwrite a core module tiddler. This is not recommended as it may make the system unstable."
        },
        "$:/language/Import/Upgrader/ThemeTweaks/Created": {
            "title": "$:/language/Import/Upgrader/ThemeTweaks/Created",
            "text": "Migrated theme tweak from <$text text=<<from>>/>."
        },
        "$:/language/AboveStory/ClassicPlugin/Warning": {
            "title": "$:/language/AboveStory/ClassicPlugin/Warning",
            "text": "It looks like you are trying to load a plugin designed for ~TiddlyWiki Classic. Please note that [[these plugins do not work with TiddlyWiki version 5.x.x|https://tiddlywiki.com/#TiddlyWikiClassic]]. ~TiddlyWiki Classic plugins detected:"
        },
        "$:/language/BinaryWarning/Prompt": {
            "title": "$:/language/BinaryWarning/Prompt",
            "text": "This tiddler contains binary data"
        },
        "$:/language/ClassicWarning/Hint": {
            "title": "$:/language/ClassicWarning/Hint",
            "text": "This tiddler is written in TiddlyWiki Classic wiki text format, which is not fully compatible with TiddlyWiki version 5. See https://tiddlywiki.com/static/Upgrading.html for more details."
        },
        "$:/language/ClassicWarning/Upgrade/Caption": {
            "title": "$:/language/ClassicWarning/Upgrade/Caption",
            "text": "upgrade"
        },
        "$:/language/CloseAll/Button": {
            "title": "$:/language/CloseAll/Button",
            "text": "close all"
        },
        "$:/language/ColourPicker/Recent": {
            "title": "$:/language/ColourPicker/Recent",
            "text": "Recent:"
        },
        "$:/language/ConfirmCancelTiddler": {
            "title": "$:/language/ConfirmCancelTiddler",
            "text": "Do you wish to discard changes to the tiddler \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmDeleteTiddler": {
            "title": "$:/language/ConfirmDeleteTiddler",
            "text": "Do you wish to delete the tiddler \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmOverwriteTiddler": {
            "title": "$:/language/ConfirmOverwriteTiddler",
            "text": "Do you wish to overwrite the tiddler \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmEditShadowTiddler": {
            "title": "$:/language/ConfirmEditShadowTiddler",
            "text": "You are about to edit a ShadowTiddler. Any changes will override the default system making future upgrades non-trivial. Are you sure you want to edit \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmAction": {
            "title": "$:/language/ConfirmAction",
            "text": "Do you wish to proceed?"
        },
        "$:/language/Count": {
            "title": "$:/language/Count",
            "text": "count"
        },
        "$:/language/DefaultNewTiddlerTitle": {
            "title": "$:/language/DefaultNewTiddlerTitle",
            "text": "New Tiddler"
        },
        "$:/language/Diffs/CountMessage": {
            "title": "$:/language/Diffs/CountMessage",
            "text": "<<diff-count>> differences"
        },
        "$:/language/DropMessage": {
            "title": "$:/language/DropMessage",
            "text": "Drop here (or use the 'Escape' key to cancel)"
        },
        "$:/language/Encryption/Cancel": {
            "title": "$:/language/Encryption/Cancel",
            "text": "Cancel"
        },
        "$:/language/Encryption/ConfirmClearPassword": {
            "title": "$:/language/Encryption/ConfirmClearPassword",
            "text": "Do you wish to clear the password? This will remove the encryption applied when saving this wiki"
        },
        "$:/language/Encryption/PromptSetPassword": {
            "title": "$:/language/Encryption/PromptSetPassword",
            "text": "Set a new password for this TiddlyWiki"
        },
        "$:/language/Encryption/Username": {
            "title": "$:/language/Encryption/Username",
            "text": "Username"
        },
        "$:/language/Encryption/Password": {
            "title": "$:/language/Encryption/Password",
            "text": "Password"
        },
        "$:/language/Encryption/RepeatPassword": {
            "title": "$:/language/Encryption/RepeatPassword",
            "text": "Repeat password"
        },
        "$:/language/Encryption/PasswordNoMatch": {
            "title": "$:/language/Encryption/PasswordNoMatch",
            "text": "Passwords do not match"
        },
        "$:/language/Encryption/SetPassword": {
            "title": "$:/language/Encryption/SetPassword",
            "text": "Set password"
        },
        "$:/language/Error/Caption": {
            "title": "$:/language/Error/Caption",
            "text": "Error"
        },
        "$:/language/Error/EditConflict": {
            "title": "$:/language/Error/EditConflict",
            "text": "File changed on server"
        },
        "$:/language/Error/Filter": {
            "title": "$:/language/Error/Filter",
            "text": "Filter error"
        },
        "$:/language/Error/FilterSyntax": {
            "title": "$:/language/Error/FilterSyntax",
            "text": "Syntax error in filter expression"
        },
        "$:/language/Error/FilterRunPrefix": {
            "title": "$:/language/Error/FilterRunPrefix",
            "text": "Filter Error: Unknown prefix for filter run"
        },
        "$:/language/Error/IsFilterOperator": {
            "title": "$:/language/Error/IsFilterOperator",
            "text": "Filter Error: Unknown operand for the 'is' filter operator"
        },
        "$:/language/Error/FormatFilterOperator": {
            "title": "$:/language/Error/FormatFilterOperator",
            "text": "Filter Error: Unknown suffix for the 'format' filter operator"
        },
        "$:/language/Error/LoadingPluginLibrary": {
            "title": "$:/language/Error/LoadingPluginLibrary",
            "text": "Error loading plugin library"
        },
        "$:/language/Error/NetworkErrorAlert": {
            "title": "$:/language/Error/NetworkErrorAlert",
            "text": "`<h2>''Network Error''</h2>It looks like the connection to the server has been lost. This may indicate a problem with your network connection. Please attempt to restore network connectivity before continuing.<br><br>''Any unsaved changes will be automatically synchronised when connectivity is restored''.`"
        },
        "$:/language/Error/RecursiveTransclusion": {
            "title": "$:/language/Error/RecursiveTransclusion",
            "text": "Recursive transclusion error in transclude widget"
        },
        "$:/language/Error/RetrievingSkinny": {
            "title": "$:/language/Error/RetrievingSkinny",
            "text": "Error retrieving skinny tiddler list"
        },
        "$:/language/Error/SavingToTWEdit": {
            "title": "$:/language/Error/SavingToTWEdit",
            "text": "Error saving to TWEdit"
        },
        "$:/language/Error/WhileSaving": {
            "title": "$:/language/Error/WhileSaving",
            "text": "Error while saving"
        },
        "$:/language/Error/XMLHttpRequest": {
            "title": "$:/language/Error/XMLHttpRequest",
            "text": "XMLHttpRequest error code"
        },
        "$:/language/InternalJavaScriptError/Title": {
            "title": "$:/language/InternalJavaScriptError/Title",
            "text": "Internal JavaScript Error"
        },
        "$:/language/InternalJavaScriptError/Hint": {
            "title": "$:/language/InternalJavaScriptError/Hint",
            "text": "Well, this is embarrassing. It is recommended that you restart TiddlyWiki by refreshing your browser"
        },
        "$:/language/InvalidFieldName": {
            "title": "$:/language/InvalidFieldName",
            "text": "Illegal characters in field name \"<$text text=<<fieldName>>/>\". Fields can only contain lowercase letters, digits and the characters underscore (`_`), hyphen (`-`) and period (`.`)"
        },
        "$:/language/LayoutSwitcher/Description": {
            "title": "$:/language/LayoutSwitcher/Description",
            "text": "Open the layout switcher"
        },
        "$:/language/LazyLoadingWarning": {
            "title": "$:/language/LazyLoadingWarning",
            "text": "<p>Trying to load external content from ''<$text text={{!!_canonical_uri}}/>''</p><p>If this message doesn't disappear, either the tiddler content type doesn't match the type of the external content, or you may be using a browser that doesn't support external content for wikis loaded as standalone files. See https://tiddlywiki.com/#ExternalText</p>"
        },
        "$:/language/LoginToTiddlySpace": {
            "title": "$:/language/LoginToTiddlySpace",
            "text": "Login to TiddlySpace"
        },
        "$:/language/Manager/Controls/FilterByTag/None": {
            "title": "$:/language/Manager/Controls/FilterByTag/None",
            "text": "(none)"
        },
        "$:/language/Manager/Controls/FilterByTag/Prompt": {
            "title": "$:/language/Manager/Controls/FilterByTag/Prompt",
            "text": "Filter by tag:"
        },
        "$:/language/Manager/Controls/Order/Prompt": {
            "title": "$:/language/Manager/Controls/Order/Prompt",
            "text": "Reverse order"
        },
        "$:/language/Manager/Controls/Search/Placeholder": {
            "title": "$:/language/Manager/Controls/Search/Placeholder",
            "text": "Search"
        },
        "$:/language/Manager/Controls/Search/Prompt": {
            "title": "$:/language/Manager/Controls/Search/Prompt",
            "text": "Search:"
        },
        "$:/language/Manager/Controls/Show/Option/Tags": {
            "title": "$:/language/Manager/Controls/Show/Option/Tags",
            "text": "tags"
        },
        "$:/language/Manager/Controls/Show/Option/Tiddlers": {
            "title": "$:/language/Manager/Controls/Show/Option/Tiddlers",
            "text": "tiddlers"
        },
        "$:/language/Manager/Controls/Show/Prompt": {
            "title": "$:/language/Manager/Controls/Show/Prompt",
            "text": "Show:"
        },
        "$:/language/Manager/Controls/Sort/Prompt": {
            "title": "$:/language/Manager/Controls/Sort/Prompt",
            "text": "Sort by:"
        },
        "$:/language/Manager/Item/Colour": {
            "title": "$:/language/Manager/Item/Colour",
            "text": "Colour"
        },
        "$:/language/Manager/Item/Fields": {
            "title": "$:/language/Manager/Item/Fields",
            "text": "Fields"
        },
        "$:/language/Manager/Item/Icon/None": {
            "title": "$:/language/Manager/Item/Icon/None",
            "text": "(none)"
        },
        "$:/language/Manager/Item/Icon": {
            "title": "$:/language/Manager/Item/Icon",
            "text": "Icon"
        },
        "$:/language/Manager/Item/RawText": {
            "title": "$:/language/Manager/Item/RawText",
            "text": "Raw text"
        },
        "$:/language/Manager/Item/Tags": {
            "title": "$:/language/Manager/Item/Tags",
            "text": "Tags"
        },
        "$:/language/Manager/Item/Tools": {
            "title": "$:/language/Manager/Item/Tools",
            "text": "Tools"
        },
        "$:/language/Manager/Item/WikifiedText": {
            "title": "$:/language/Manager/Item/WikifiedText",
            "text": "Wikified text"
        },
        "$:/language/MissingTiddler/Hint": {
            "title": "$:/language/MissingTiddler/Hint",
            "text": "Missing tiddler \"<$text text=<<currentTiddler>>/>\" -- click {{||$:/core/ui/Buttons/edit}} to create"
        },
        "$:/language/No": {
            "title": "$:/language/No",
            "text": "No"
        },
        "$:/language/OfficialPluginLibrary": {
            "title": "$:/language/OfficialPluginLibrary",
            "text": "Official ~TiddlyWiki Plugin Library"
        },
        "$:/language/OfficialPluginLibrary/Hint": {
            "title": "$:/language/OfficialPluginLibrary/Hint",
            "text": "The official ~TiddlyWiki plugin library at tiddlywiki.com. Plugins, themes and language packs are maintained by the core team."
        },
        "$:/language/PageTemplate/Description": {
            "title": "$:/language/PageTemplate/Description",
            "text": "the default ~TiddlyWiki layout"
        },
        "$:/language/PageTemplate/Name": {
            "title": "$:/language/PageTemplate/Name",
            "text": "Default ~PageTemplate"
        },
        "$:/language/PluginReloadWarning": {
            "title": "$:/language/PluginReloadWarning",
            "text": "Please save {{$:/core/ui/Buttons/save-wiki}} and reload {{$:/core/ui/Buttons/refresh}} to allow changes to ~JavaScript plugins to take effect"
        },
        "$:/language/RecentChanges/DateFormat": {
            "title": "$:/language/RecentChanges/DateFormat",
            "text": "DDth MMM YYYY"
        },
        "$:/language/Shortcuts/Input/AdvancedSearch/Hint": {
            "title": "$:/language/Shortcuts/Input/AdvancedSearch/Hint",
            "text": "Open the ~AdvancedSearch panel from within the sidebar search field"
        },
        "$:/language/Shortcuts/Input/Accept/Hint": {
            "title": "$:/language/Shortcuts/Input/Accept/Hint",
            "text": "Accept the selected item"
        },
        "$:/language/Shortcuts/Input/AcceptVariant/Hint": {
            "title": "$:/language/Shortcuts/Input/AcceptVariant/Hint",
            "text": "Accept the selected item (variant)"
        },
        "$:/language/Shortcuts/Input/Cancel/Hint": {
            "title": "$:/language/Shortcuts/Input/Cancel/Hint",
            "text": "Clear the input field"
        },
        "$:/language/Shortcuts/Input/Down/Hint": {
            "title": "$:/language/Shortcuts/Input/Down/Hint",
            "text": "Select the next item"
        },
        "$:/language/Shortcuts/Input/Tab-Left/Hint": {
            "title": "$:/language/Shortcuts/Input/Tab-Left/Hint",
            "text": "Select the previous Tab"
        },
        "$:/language/Shortcuts/Input/Tab-Right/Hint": {
            "title": "$:/language/Shortcuts/Input/Tab-Right/Hint",
            "text": "Select the next Tab"
        },
        "$:/language/Shortcuts/Input/Up/Hint": {
            "title": "$:/language/Shortcuts/Input/Up/Hint",
            "text": "Select the previous item"
        },
        "$:/language/Shortcuts/SidebarLayout/Hint": {
            "title": "$:/language/Shortcuts/SidebarLayout/Hint",
            "text": "Change the sidebar layout"
        },
        "$:/language/Switcher/Subtitle/theme": {
            "title": "$:/language/Switcher/Subtitle/theme",
            "text": "Switch Theme"
        },
        "$:/language/Switcher/Subtitle/layout": {
            "title": "$:/language/Switcher/Subtitle/layout",
            "text": "Switch Layout"
        },
        "$:/language/Switcher/Subtitle/language": {
            "title": "$:/language/Switcher/Subtitle/language",
            "text": "Switch Language"
        },
        "$:/language/Switcher/Subtitle/palette": {
            "title": "$:/language/Switcher/Subtitle/palette",
            "text": "Switch Palette"
        },
        "$:/language/SystemTiddler/Tooltip": {
            "title": "$:/language/SystemTiddler/Tooltip",
            "text": "This is a system tiddler"
        },
        "$:/language/SystemTiddlers/Include/Prompt": {
            "title": "$:/language/SystemTiddlers/Include/Prompt",
            "text": "Include system tiddlers"
        },
        "$:/language/TagManager/Colour/Heading": {
            "title": "$:/language/TagManager/Colour/Heading",
            "text": "Colour"
        },
        "$:/language/TagManager/Count/Heading": {
            "title": "$:/language/TagManager/Count/Heading",
            "text": "Count"
        },
        "$:/language/TagManager/Icon/Heading": {
            "title": "$:/language/TagManager/Icon/Heading",
            "text": "Icon"
        },
        "$:/language/TagManager/Icons/None": {
            "title": "$:/language/TagManager/Icons/None",
            "text": "None"
        },
        "$:/language/TagManager/Info/Heading": {
            "title": "$:/language/TagManager/Info/Heading",
            "text": "Info"
        },
        "$:/language/TagManager/Tag/Heading": {
            "title": "$:/language/TagManager/Tag/Heading",
            "text": "Tag"
        },
        "$:/language/Tiddler/DateFormat": {
            "title": "$:/language/Tiddler/DateFormat",
            "text": "DDth MMM YYYY at hh12:0mmam"
        },
        "$:/language/UnsavedChangesWarning": {
            "title": "$:/language/UnsavedChangesWarning",
            "text": "You have unsaved changes in TiddlyWiki"
        },
        "$:/language/Yes": {
            "title": "$:/language/Yes",
            "text": "Yes"
        },
        "$:/language/Modals/Download": {
            "title": "$:/language/Modals/Download",
            "subtitle": "Download changes",
            "footer": "<$button message=\"tm-close-tiddler\">Close</$button>",
            "help": "https://tiddlywiki.com/static/DownloadingChanges.html",
            "text": "Your browser only supports manual saving.\n\nTo save your modified wiki, right click on the download link below and select \"Download file\" or \"Save file\", and then choose the folder and filename.\n\n//You can marginally speed things up by clicking the link with the control key (Windows) or the options/alt key (Mac OS X). You will not be prompted for the folder or filename, but your browser is likely to give it an unrecognisable name -- you may need to rename the file to include an `.html` extension before you can do anything useful with it.//\n\nOn smartphones that do not allow files to be downloaded you can instead bookmark the link, and then sync your bookmarks to a desktop computer from where the wiki can be saved normally.\n"
        },
        "$:/language/Modals/SaveInstructions": {
            "title": "$:/language/Modals/SaveInstructions",
            "subtitle": "Save your work",
            "footer": "<$button message=\"tm-close-tiddler\">Close</$button>",
            "help": "https://tiddlywiki.com/static/SavingChanges.html",
            "text": "Your changes to this wiki need to be saved as a ~TiddlyWiki HTML file.\n\n!!! Desktop browsers\n\n# Select ''Save As'' from the ''File'' menu\n# Choose a filename and location\n#* Some browsers also require you to explicitly specify the file saving format as ''Webpage, HTML only'' or similar\n# Close this tab\n\n!!! Smartphone browsers\n\n# Create a bookmark to this page\n#* If you've got iCloud or Google Sync set up then the bookmark will automatically sync to your desktop where you can open it and save it as above\n# Close this tab\n\n//If you open the bookmark again in Mobile Safari you will see this message again. If you want to go ahead and use the file, just click the ''close'' button below//\n"
        },
        "$:/config/NewJournal/Title": {
            "title": "$:/config/NewJournal/Title",
            "text": "DDth MMM YYYY"
        },
        "$:/config/NewJournal/Text": {
            "title": "$:/config/NewJournal/Text",
            "text": ""
        },
        "$:/config/NewJournal/Tags": {
            "title": "$:/config/NewJournal/Tags",
            "text": "Journal\n"
        },
        "$:/language/Notifications/Save/Done": {
            "title": "$:/language/Notifications/Save/Done",
            "text": "Saved wiki"
        },
        "$:/language/Notifications/Save/Starting": {
            "title": "$:/language/Notifications/Save/Starting",
            "text": "Starting to save wiki"
        },
        "$:/language/Notifications/CopiedToClipboard/Succeeded": {
            "title": "$:/language/Notifications/CopiedToClipboard/Succeeded",
            "text": "Copied to clipboard!"
        },
        "$:/language/Notifications/CopiedToClipboard/Failed": {
            "title": "$:/language/Notifications/CopiedToClipboard/Failed",
            "text": "Failed to copy to clipboard!"
        },
        "$:/language/Search/DefaultResults/Caption": {
            "title": "$:/language/Search/DefaultResults/Caption",
            "text": "List"
        },
        "$:/language/Search/Filter/Caption": {
            "title": "$:/language/Search/Filter/Caption",
            "text": "Filter"
        },
        "$:/language/Search/Filter/Hint": {
            "title": "$:/language/Search/Filter/Hint",
            "text": "Search via a [[filter expression|https://tiddlywiki.com/static/Filters.html]]"
        },
        "$:/language/Search/Filter/Matches": {
            "title": "$:/language/Search/Filter/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/Matches": {
            "title": "$:/language/Search/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/Matches/All": {
            "title": "$:/language/Search/Matches/All",
            "text": "All matches:"
        },
        "$:/language/Search/Matches/Title": {
            "title": "$:/language/Search/Matches/Title",
            "text": "Title matches:"
        },
        "$:/language/Search/Search": {
            "title": "$:/language/Search/Search",
            "text": "Search"
        },
        "$:/language/Search/Search/TooShort": {
            "title": "$:/language/Search/Search/TooShort",
            "text": "Search text too short"
        },
        "$:/language/Search/Shadows/Caption": {
            "title": "$:/language/Search/Shadows/Caption",
            "text": "Shadows"
        },
        "$:/language/Search/Shadows/Hint": {
            "title": "$:/language/Search/Shadows/Hint",
            "text": "Search for shadow tiddlers"
        },
        "$:/language/Search/Shadows/Matches": {
            "title": "$:/language/Search/Shadows/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/Standard/Caption": {
            "title": "$:/language/Search/Standard/Caption",
            "text": "Standard"
        },
        "$:/language/Search/Standard/Hint": {
            "title": "$:/language/Search/Standard/Hint",
            "text": "Search for standard tiddlers"
        },
        "$:/language/Search/Standard/Matches": {
            "title": "$:/language/Search/Standard/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/System/Caption": {
            "title": "$:/language/Search/System/Caption",
            "text": "System"
        },
        "$:/language/Search/System/Hint": {
            "title": "$:/language/Search/System/Hint",
            "text": "Search for system tiddlers"
        },
        "$:/language/Search/System/Matches": {
            "title": "$:/language/Search/System/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/SideBar/All/Caption": {
            "title": "$:/language/SideBar/All/Caption",
            "text": "All"
        },
        "$:/language/SideBar/Contents/Caption": {
            "title": "$:/language/SideBar/Contents/Caption",
            "text": "Contents"
        },
        "$:/language/SideBar/Drafts/Caption": {
            "title": "$:/language/SideBar/Drafts/Caption",
            "text": "Drafts"
        },
        "$:/language/SideBar/Explorer/Caption": {
            "title": "$:/language/SideBar/Explorer/Caption",
            "text": "Explorer"
        },
        "$:/language/SideBar/Missing/Caption": {
            "title": "$:/language/SideBar/Missing/Caption",
            "text": "Missing"
        },
        "$:/language/SideBar/More/Caption": {
            "title": "$:/language/SideBar/More/Caption",
            "text": "More"
        },
        "$:/language/SideBar/Open/Caption": {
            "title": "$:/language/SideBar/Open/Caption",
            "text": "Open"
        },
        "$:/language/SideBar/Orphans/Caption": {
            "title": "$:/language/SideBar/Orphans/Caption",
            "text": "Orphans"
        },
        "$:/language/SideBar/Recent/Caption": {
            "title": "$:/language/SideBar/Recent/Caption",
            "text": "Recent"
        },
        "$:/language/SideBar/Shadows/Caption": {
            "title": "$:/language/SideBar/Shadows/Caption",
            "text": "Shadows"
        },
        "$:/language/SideBar/System/Caption": {
            "title": "$:/language/SideBar/System/Caption",
            "text": "System"
        },
        "$:/language/SideBar/Tags/Caption": {
            "title": "$:/language/SideBar/Tags/Caption",
            "text": "Tags"
        },
        "$:/language/SideBar/Tags/Untagged/Caption": {
            "title": "$:/language/SideBar/Tags/Untagged/Caption",
            "text": "untagged"
        },
        "$:/language/SideBar/Tools/Caption": {
            "title": "$:/language/SideBar/Tools/Caption",
            "text": "Tools"
        },
        "$:/language/SideBar/Types/Caption": {
            "title": "$:/language/SideBar/Types/Caption",
            "text": "Types"
        },
        "$:/SiteSubtitle": {
            "title": "$:/SiteSubtitle",
            "text": "a non-linear personal web notebook"
        },
        "$:/SiteTitle": {
            "title": "$:/SiteTitle",
            "text": "My ~TiddlyWiki"
        },
        "$:/language/Snippets/ListByTag": {
            "title": "$:/language/Snippets/ListByTag",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "List of tiddlers by tag",
            "text": "<<list-links \"[tag[task]sort[title]]\">>\n"
        },
        "$:/language/Snippets/MacroDefinition": {
            "title": "$:/language/Snippets/MacroDefinition",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "Macro definition",
            "text": "\\define macroName(param1:\"default value\",param2)\nText of the macro\n\\end\n"
        },
        "$:/language/Snippets/Table4x3": {
            "title": "$:/language/Snippets/Table4x3",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "Table with 4 columns by 3 rows",
            "text": "|! |!Alpha |!Beta |!Gamma |!Delta |\n|!One | | | | |\n|!Two | | | | |\n|!Three | | | | |\n"
        },
        "$:/language/Snippets/TableOfContents": {
            "title": "$:/language/Snippets/TableOfContents",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "Table of Contents",
            "text": "<div class=\"tc-table-of-contents\">\n\n<<toc-selective-expandable 'TableOfContents'>>\n\n</div>"
        },
        "$:/language/ThemeTweaks/ThemeTweaks": {
            "title": "$:/language/ThemeTweaks/ThemeTweaks",
            "text": "Theme Tweaks"
        },
        "$:/language/ThemeTweaks/ThemeTweaks/Hint": {
            "title": "$:/language/ThemeTweaks/ThemeTweaks/Hint",
            "text": "You can tweak certain aspects of the ''Vanilla'' theme."
        },
        "$:/language/ThemeTweaks/Options": {
            "title": "$:/language/ThemeTweaks/Options",
            "text": "Options"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout",
            "text": "Sidebar layout"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid",
            "text": "Fixed story, fluid sidebar"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed",
            "text": "Fluid story, fixed sidebar"
        },
        "$:/language/ThemeTweaks/Options/StickyTitles": {
            "title": "$:/language/ThemeTweaks/Options/StickyTitles",
            "text": "Sticky titles"
        },
        "$:/language/ThemeTweaks/Options/StickyTitles/Hint": {
            "title": "$:/language/ThemeTweaks/Options/StickyTitles/Hint",
            "text": "Causes tiddler titles to \"stick\" to the top of the browser window"
        },
        "$:/language/ThemeTweaks/Options/CodeWrapping": {
            "title": "$:/language/ThemeTweaks/Options/CodeWrapping",
            "text": "Wrap long lines in code blocks"
        },
        "$:/language/ThemeTweaks/Settings": {
            "title": "$:/language/ThemeTweaks/Settings",
            "text": "Settings"
        },
        "$:/language/ThemeTweaks/Settings/FontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/FontFamily",
            "text": "Font family"
        },
        "$:/language/ThemeTweaks/Settings/CodeFontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/CodeFontFamily",
            "text": "Code font family"
        },
        "$:/language/ThemeTweaks/Settings/EditorFontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/EditorFontFamily",
            "text": "Editor font family"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImage": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImage",
            "text": "Page background image"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment",
            "text": "Page background image attachment"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll",
            "text": "Scroll with tiddlers"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed",
            "text": "Fixed to window"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize",
            "text": "Page background image size"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto",
            "text": "Auto"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover",
            "text": "Cover"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain",
            "text": "Contain"
        },
        "$:/language/ThemeTweaks/Metrics": {
            "title": "$:/language/ThemeTweaks/Metrics",
            "text": "Sizes"
        },
        "$:/language/ThemeTweaks/Metrics/FontSize": {
            "title": "$:/language/ThemeTweaks/Metrics/FontSize",
            "text": "Font size"
        },
        "$:/language/ThemeTweaks/Metrics/LineHeight": {
            "title": "$:/language/ThemeTweaks/Metrics/LineHeight",
            "text": "Line height"
        },
        "$:/language/ThemeTweaks/Metrics/BodyFontSize": {
            "title": "$:/language/ThemeTweaks/Metrics/BodyFontSize",
            "text": "Font size for tiddler body"
        },
        "$:/language/ThemeTweaks/Metrics/BodyLineHeight": {
            "title": "$:/language/ThemeTweaks/Metrics/BodyLineHeight",
            "text": "Line height for tiddler body"
        },
        "$:/language/ThemeTweaks/Metrics/StoryLeft": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryLeft",
            "text": "Story left position"
        },
        "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint",
            "text": "how far the left margin of the story river<br>(tiddler area) is from the left of the page"
        },
        "$:/language/ThemeTweaks/Metrics/StoryTop": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryTop",
            "text": "Story top position"
        },
        "$:/language/ThemeTweaks/Metrics/StoryTop/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryTop/Hint",
            "text": "how far the top margin of the story river<br>is from the top of the page"
        },
        "$:/language/ThemeTweaks/Metrics/StoryRight": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryRight",
            "text": "Story right"
        },
        "$:/language/ThemeTweaks/Metrics/StoryRight/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryRight/Hint",
            "text": "how far the left margin of the sidebar <br>is from the left of the page"
        },
        "$:/language/ThemeTweaks/Metrics/StoryWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryWidth",
            "text": "Story width"
        },
        "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint",
            "text": "the overall width of the story river"
        },
        "$:/language/ThemeTweaks/Metrics/TiddlerWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth",
            "text": "Tiddler width"
        },
        "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint",
            "text": "within the story river"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint",
            "text": "Sidebar breakpoint"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint",
            "text": "the minimum page width at which the story<br>river and sidebar will appear side by side"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarWidth",
            "text": "Sidebar width"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint",
            "text": "the width of the sidebar in fluid-fixed layout"
        },
        "$:/language/TiddlerInfo/Advanced/Caption": {
            "title": "$:/language/TiddlerInfo/Advanced/Caption",
            "text": "Advanced"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint",
            "text": "none"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading",
            "text": "Plugin Details"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint",
            "text": "This plugin contains the following shadow tiddlers:"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading",
            "text": "Shadow Status"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint",
            "text": "The tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> is not a shadow tiddler"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint",
            "text": "The tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> is a shadow tiddler"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source",
            "text": "It is defined in the plugin <$link to=<<pluginTiddler>>><$text text=<<pluginTiddler>>/></$link>"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint",
            "text": "It is overridden by an ordinary tiddler"
        },
        "$:/language/TiddlerInfo/Fields/Caption": {
            "title": "$:/language/TiddlerInfo/Fields/Caption",
            "text": "Fields"
        },
        "$:/language/TiddlerInfo/List/Caption": {
            "title": "$:/language/TiddlerInfo/List/Caption",
            "text": "List"
        },
        "$:/language/TiddlerInfo/List/Empty": {
            "title": "$:/language/TiddlerInfo/List/Empty",
            "text": "This tiddler does not have a list"
        },
        "$:/language/TiddlerInfo/Listed/Caption": {
            "title": "$:/language/TiddlerInfo/Listed/Caption",
            "text": "Listed"
        },
        "$:/language/TiddlerInfo/Listed/Empty": {
            "title": "$:/language/TiddlerInfo/Listed/Empty",
            "text": "This tiddler is not listed by any others"
        },
        "$:/language/TiddlerInfo/References/Caption": {
            "title": "$:/language/TiddlerInfo/References/Caption",
            "text": "Backlinks"
        },
        "$:/language/TiddlerInfo/References/Empty": {
            "title": "$:/language/TiddlerInfo/References/Empty",
            "text": "No tiddlers link to this one"
        },
        "$:/language/TiddlerInfo/Tagging/Caption": {
            "title": "$:/language/TiddlerInfo/Tagging/Caption",
            "text": "Tagging"
        },
        "$:/language/TiddlerInfo/Tagging/Empty": {
            "title": "$:/language/TiddlerInfo/Tagging/Empty",
            "text": "No tiddlers are tagged with this one"
        },
        "$:/language/TiddlerInfo/Tools/Caption": {
            "title": "$:/language/TiddlerInfo/Tools/Caption",
            "text": "Tools"
        },
        "$:/language/Docs/Types/application/javascript": {
            "title": "$:/language/Docs/Types/application/javascript",
            "description": "JavaScript code",
            "name": "application/javascript",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/application/json": {
            "title": "$:/language/Docs/Types/application/json",
            "description": "JSON data",
            "name": "application/json",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/application/x-tiddler-dictionary": {
            "title": "$:/language/Docs/Types/application/x-tiddler-dictionary",
            "description": "Data dictionary",
            "name": "application/x-tiddler-dictionary",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/image/gif": {
            "title": "$:/language/Docs/Types/image/gif",
            "description": "GIF image",
            "name": "image/gif",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/jpeg": {
            "title": "$:/language/Docs/Types/image/jpeg",
            "description": "JPEG image",
            "name": "image/jpeg",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/png": {
            "title": "$:/language/Docs/Types/image/png",
            "description": "PNG image",
            "name": "image/png",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/svg+xml": {
            "title": "$:/language/Docs/Types/image/svg+xml",
            "description": "Structured Vector Graphics image",
            "name": "image/svg+xml",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/x-icon": {
            "title": "$:/language/Docs/Types/image/x-icon",
            "description": "ICO format icon file",
            "name": "image/x-icon",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/text/css": {
            "title": "$:/language/Docs/Types/text/css",
            "description": "Static stylesheet",
            "name": "text/css",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/text/html": {
            "title": "$:/language/Docs/Types/text/html",
            "description": "HTML markup",
            "name": "text/html",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/language/Docs/Types/text/plain": {
            "title": "$:/language/Docs/Types/text/plain",
            "description": "Plain text",
            "name": "text/plain",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/language/Docs/Types/text/vnd.tiddlywiki": {
            "title": "$:/language/Docs/Types/text/vnd.tiddlywiki",
            "description": "TiddlyWiki 5",
            "name": "text/vnd.tiddlywiki",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/language/Docs/Types/text/x-tiddlywiki": {
            "title": "$:/language/Docs/Types/text/x-tiddlywiki",
            "description": "TiddlyWiki Classic",
            "name": "text/x-tiddlywiki",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/languages/en-GB/icon": {
            "title": "$:/languages/en-GB/icon",
            "type": "image/svg+xml",
            "text": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 60 30\" width=\"1200\" height=\"600\">\n<clipPath id=\"t\">\n\t<path d=\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\"/>\n</clipPath>\n<path d=\"M0,0 v30 h60 v-30 z\" fill=\"#00247d\"/>\n<path d=\"M0,0 L60,30 M60,0 L0,30\" stroke=\"#fff\" stroke-width=\"6\"/>\n<path d=\"M0,0 L60,30 M60,0 L0,30\" clip-path=\"url(#t)\" stroke=\"#cf142b\" stroke-width=\"4\"/>\n<path d=\"M30,0 v30 M0,15 h60\" stroke=\"#fff\" stroke-width=\"10\"/>\n<path d=\"M30,0 v30 M0,15 h60\" stroke=\"#cf142b\" stroke-width=\"6\"/>\n</svg>\n"
        },
        "$:/languages/en-GB": {
            "title": "$:/languages/en-GB",
            "name": "en-GB",
            "description": "English (British)",
            "author": "JeremyRuston",
            "core-version": ">=5.0.0\"",
            "text": "Stub pseudo-plugin for the default language"
        },
        "$:/core/modules/commander.js": {
            "title": "$:/core/modules/commander.js",
            "text": "/*\\\ntitle: $:/core/modules/commander.js\ntype: application/javascript\nmodule-type: global\n\nThe $tw.Commander class is a command interpreter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParse a sequence of commands\n\tcommandTokens: an array of command string tokens\n\twiki: reference to the wiki store object\n\tstreams: {output:, error:}, each of which has a write(string) method\n\tcallback: a callback invoked as callback(err) where err is null if there was no error\n*/\nvar Commander = function(commandTokens,callback,wiki,streams) {\n\tvar path = require(\"path\");\n\tthis.commandTokens = commandTokens;\n\tthis.nextToken = 0;\n\tthis.callback = callback;\n\tthis.wiki = wiki;\n\tthis.streams = streams;\n\tthis.outputPath = path.resolve($tw.boot.wikiPath,$tw.config.wikiOutputSubDir);\n};\n\n/*\nLog a string if verbose flag is set\n*/\nCommander.prototype.log = function(str) {\n\tif(this.verbose) {\n\t\tthis.streams.output.write(str + \"\\n\");\n\t}\n};\n\n/*\nWrite a string if verbose flag is set\n*/\nCommander.prototype.write = function(str) {\n\tif(this.verbose) {\n\t\tthis.streams.output.write(str);\n\t}\n};\n\n/*\nAdd a string of tokens to the command queue\n*/\nCommander.prototype.addCommandTokens = function(commandTokens) {\n\tvar params = commandTokens.slice(0);\n\tparams.unshift(0);\n\tparams.unshift(this.nextToken);\n\tArray.prototype.splice.apply(this.commandTokens,params);\n};\n\n/*\nExecute the sequence of commands and invoke a callback on completion\n*/\nCommander.prototype.execute = function() {\n\tthis.executeNextCommand();\n};\n\n/*\nExecute the next command in the sequence\n*/\nCommander.prototype.executeNextCommand = function() {\n\tvar self = this;\n\t// Invoke the callback if there are no more commands\n\tif(this.nextToken >= this.commandTokens.length) {\n\t\tthis.callback(null);\n\t} else {\n\t\t// Get and check the command token\n\t\tvar commandName = this.commandTokens[this.nextToken++];\n\t\tif(commandName.substr(0,2) !== \"--\") {\n\t\t\tthis.callback(\"Missing command: \" + commandName);\n\t\t} else {\n\t\t\tcommandName = commandName.substr(2); // Trim off the --\n\t\t\t// Accumulate the parameters to the command\n\t\t\tvar params = [];\n\t\t\twhile(this.nextToken < this.commandTokens.length && \n\t\t\t\tthis.commandTokens[this.nextToken].substr(0,2) !== \"--\") {\n\t\t\t\tparams.push(this.commandTokens[this.nextToken++]);\n\t\t\t}\n\t\t\t// Get the command info\n\t\t\tvar command = $tw.commands[commandName],\n\t\t\t\tc,err;\n\t\t\tif(!command) {\n\t\t\t\tthis.callback(\"Unknown command: \" + commandName);\n\t\t\t} else {\n\t\t\t\tif(this.verbose) {\n\t\t\t\t\tthis.streams.output.write(\"Executing command: \" + commandName + \" \" + params.join(\" \") + \"\\n\");\n\t\t\t\t}\n\t\t\t\t// Parse named parameters if required\n\t\t\t\tif(command.info.namedParameterMode) {\n\t\t\t\t\tparams = this.extractNamedParameters(params,command.info.mandatoryParameters);\n\t\t\t\t\tif(typeof params === \"string\") {\n\t\t\t\t\t\treturn this.callback(params);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif(command.info.synchronous) {\n\t\t\t\t\t// Synchronous command\n\t\t\t\t\tc = new command.Command(params,this);\n\t\t\t\t\terr = c.execute();\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\tthis.callback(err);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.executeNextCommand();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Asynchronous command\n\t\t\t\t\tc = new command.Command(params,this,function(err) {\n\t\t\t\t\t\tif(err) {\n\t\t\t\t\t\t\tself.callback(err);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tself.executeNextCommand();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\terr = c.execute();\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\tthis.callback(err);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\n/*\nGiven an array of parameter strings `params` in name:value format, and an array of mandatory parameter names in `mandatoryParameters`, returns a hashmap of values or a string if error\n*/\nCommander.prototype.extractNamedParameters = function(params,mandatoryParameters) {\n\tmandatoryParameters = mandatoryParameters || [];\n\tvar errors = [],\n\t\tparamsByName = Object.create(null);\n\t// Extract the parameters\n\t$tw.utils.each(params,function(param) {\n\t\tvar index = param.indexOf(\"=\");\n\t\tif(index < 1) {\n\t\t\terrors.push(\"malformed named parameter: '\" + param + \"'\");\n\t\t}\n\t\tparamsByName[param.slice(0,index)] = $tw.utils.trim(param.slice(index+1));\n\t});\n\t// Check the mandatory parameters are present\n\t$tw.utils.each(mandatoryParameters,function(mandatoryParameter) {\n\t\tif(!$tw.utils.hop(paramsByName,mandatoryParameter)) {\n\t\t\terrors.push(\"missing mandatory parameter: '\" + mandatoryParameter + \"'\");\n\t\t}\n\t});\n\t// Return any errors\n\tif(errors.length > 0) {\n\t\treturn errors.join(\" and\\n\");\n\t} else {\n\t\treturn paramsByName;\t\t\n\t}\n};\n\nCommander.initCommands = function(moduleType) {\n\tmoduleType = moduleType || \"command\";\n\t$tw.commands = {};\n\t$tw.modules.forEachModuleOfType(moduleType,function(title,module) {\n\t\tvar c = $tw.commands[module.info.name] = {};\n\t\t// Add the methods defined by the module\n\t\tfor(var f in module) {\n\t\t\tif($tw.utils.hop(module,f)) {\n\t\t\t\tc[f] = module[f];\n\t\t\t}\n\t\t}\n\t});\n};\n\nexports.Commander = Commander;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/commands/build.js": {
            "title": "$:/core/modules/commands/build.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/build.js\ntype: application/javascript\nmodule-type: command\n\nCommand to build a build target\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"build\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\t// Get the build targets defined in the wiki\n\tvar buildTargets = $tw.boot.wikiInfo.build;\n\tif(!buildTargets) {\n\t\treturn \"No build targets defined\";\n\t}\n\t// Loop through each of the specified targets\n\tvar targets;\n\tif(this.params.length > 0) {\n\t\ttargets = this.params;\n\t} else {\n\t\ttargets = Object.keys(buildTargets);\n\t}\n\tfor(var targetIndex=0; targetIndex<targets.length; targetIndex++) {\n\t\tvar target = targets[targetIndex],\n\t\t\tcommands = buildTargets[target];\n\t\tif(!commands) {\n\t\t\treturn \"Build target '\" + target + \"' not found\";\n\t\t}\n\t\t// Add the commands to the queue\n\t\tthis.commander.addCommandTokens(commands);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/clearpassword.js": {
            "title": "$:/core/modules/commands/clearpassword.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/clearpassword.js\ntype: application/javascript\nmodule-type: command\n\nClear password for crypto operations\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"clearpassword\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\t$tw.crypto.setPassword(null);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/deletetiddlers.js": {
            "title": "$:/core/modules/commands/deletetiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/deletetiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to delete tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"deletetiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filter\";\n\t}\n\tvar self = this,\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\twiki.deleteTiddler(title);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/editions.js": {
            "title": "$:/core/modules/commands/editions.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/editions.js\ntype: application/javascript\nmodule-type: command\n\nCommand to list the available editions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"editions\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this;\n\t// Output the list\n\tthis.commander.streams.output.write(\"Available editions:\\n\\n\");\n\tvar editionInfo = $tw.utils.getEditionInfo();\n\t$tw.utils.each(editionInfo,function(info,name) {\n\t\tself.commander.streams.output.write(\"    \" + name + \": \" + info.description + \"\\n\");\n\t});\n\tthis.commander.streams.output.write(\"\\n\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/fetch.js": {
            "title": "$:/core/modules/commands/fetch.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/fetch.js\ntype: application/javascript\nmodule-type: command\n\nCommands to fetch external tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"fetch\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing subcommand and url\";\n\t}\n\tswitch(this.params[0]) {\n\t\tcase \"raw-file\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\traw: true,\n\t\t\t\turl: this.params[1],\n\t\t\t\ttransformFilter: this.params[2] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"file\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\turl: this.params[1],\n\t\t\t\timportFilter: this.params[2],\n\t\t\t\ttransformFilter: this.params[3] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"raw-files\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\traw: true,\n\t\t\t\turlFilter: this.params[1],\n\t\t\t\ttransformFilter: this.params[2] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"files\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\turlFilter: this.params[1],\n\t\t\t\timportFilter: this.params[2],\n\t\t\t\ttransformFilter: this.params[3] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t}\n\treturn null;\n};\n\nCommand.prototype.fetchFiles = function(options) {\n\tvar self = this;\n\t// Get the list of URLs\n\tvar urls;\n\tif(options.url) {\n\t\turls = [options.url]\n\t} else if(options.urlFilter) {\n\t\turls = this.commander.wiki.filterTiddlers(options.urlFilter);\n\t} else {\n\t\treturn \"Missing URL\";\n\t}\n\t// Process each URL in turn\n\tvar next = 0;\n\tvar getNextFile = function(err) {\n\t\tif(err) {\n\t\t\treturn options.callback(err);\n\t\t}\n\t\tif(next < urls.length) {\n\t\t\tself.fetchFile(urls[next++],options,getNextFile);\n\t\t} else {\n\t\t\toptions.callback(null);\n\t\t}\n\t};\n\tgetNextFile(null);\n\t// Success\n\treturn null;\n};\n\nCommand.prototype.fetchFile = function(url,options,callback,redirectCount) {\n\tif(redirectCount > 10) {\n\t\treturn callback(\"Error too many redirects retrieving \" + url);\n\t}\n\tvar self = this,\n\t\tlib = url.substr(0,8) === \"https://\" ? require(\"https\") : require(\"http\");\n\tlib.get(url).on(\"response\",function(response) {\n\t    var type = (response.headers[\"content-type\"] || \"\").split(\";\")[0],\n\t    \tdata = [];\n\t    self.commander.write(\"Reading \" + url + \": \");\n\t    response.on(\"data\",function(chunk) {\n\t        data.push(chunk);\n\t        self.commander.write(\".\");\n\t    });\n\t    response.on(\"end\",function() {\n\t        self.commander.write(\"\\n\");\n\t        if(response.statusCode === 200) {\n\t\t        self.processBody(Buffer.concat(data),type,options,url);\n\t\t        callback(null);\n\t        } else {\n\t        \tif(response.statusCode === 302 || response.statusCode === 303 || response.statusCode === 307) {\n\t        \t\treturn self.fetchFile(response.headers.location,options,callback,redirectCount + 1);\n\t        \t} else {\n\t\t        \treturn callback(\"Error \" + response.statusCode + \" retrieving \" + url)\t        \t\t\n\t        \t}\n\t        }\n\t   \t});\n\t   \tresponse.on(\"error\",function(e) {\n\t\t\tconsole.log(\"Error on GET request: \" + e);\n\t\t\tcallback(e);\n\t   \t});\n\t});\n\treturn null;\n};\n\nCommand.prototype.processBody = function(body,type,options,url) {\n\tvar self = this;\n\t// Collect the tiddlers in a wiki\n\tvar incomingWiki = new $tw.Wiki();\n\tif(options.raw) {\n\t\tvar typeInfo = type ? $tw.config.contentTypeInfo[type] : null,\n\t\t\tencoding = typeInfo ? typeInfo.encoding : \"utf8\";\n\t\tincomingWiki.addTiddler(new $tw.Tiddler({\n\t\t\ttitle: url,\n\t\t\ttype: type,\n\t\t\ttext: body.toString(encoding)\n\t\t}));\n\t} else {\n\t\t// Deserialise the file to extract the tiddlers\n\t\tvar tiddlers = this.commander.wiki.deserializeTiddlers(type || \"text/html\",body.toString(\"utf8\"),{});\n\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\tincomingWiki.addTiddler(new $tw.Tiddler(tiddler));\n\t\t});\n\t}\n\t// Filter the tiddlers to select the ones we want\n\tvar filteredTitles = incomingWiki.filterTiddlers(options.importFilter || \"[all[tiddlers]]\");\n\t// Import the selected tiddlers\n\tvar count = 0;\n\tincomingWiki.each(function(tiddler,title) {\n\t\tif(filteredTitles.indexOf(title) !== -1) {\n\t\t\tvar newTiddler;\n\t\t\tif(options.transformFilter) {\n\t\t\t\tvar transformedTitle = (incomingWiki.filterTiddlers(options.transformFilter,null,self.commander.wiki.makeTiddlerIterator([title])) || [\"\"])[0];\n\t\t\t\tif(transformedTitle) {\n\t\t\t\t\tself.commander.log(\"Importing \" + title + \" as \" + transformedTitle)\n\t\t\t\t\tnewTiddler = new $tw.Tiddler(tiddler,{title: transformedTitle});\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tself.commander.log(\"Importing \" + title)\n\t\t\t\tnewTiddler = tiddler;\n\t\t\t}\n\t\t\tself.commander.wiki.importTiddler(newTiddler);\n\t\t\tcount++;\n\t\t}\n\t});\n\tself.commander.log(\"Imported \" + count + \" tiddlers\")\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/help.js": {
            "title": "$:/core/modules/commands/help.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/help.js\ntype: application/javascript\nmodule-type: command\n\nHelp command\n\n\\*/\n(function(){\n\n/*jshint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"help\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar subhelp = this.params[0] || \"default\",\n\t\thelpBase = \"$:/language/Help/\",\n\t\ttext;\n\tif(!this.commander.wiki.getTiddler(helpBase + subhelp)) {\n\t\tsubhelp = \"notfound\";\n\t}\n\t// Wikify the help as formatted text (ie block elements generate newlines)\n\ttext = this.commander.wiki.renderTiddler(\"text/plain-formatted\",helpBase + subhelp);\n\t// Remove any leading linebreaks\n\ttext = text.replace(/^(\\r?\\n)*/g,\"\");\n\tthis.commander.streams.output.write(text);\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/import.js": {
            "title": "$:/core/modules/commands/import.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/import.js\ntype: application/javascript\nmodule-type: command\n\nCommand to import tiddlers from a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"import\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 2) {\n\t\treturn \"Missing parameters\";\n\t}\n\tvar filename = self.params[0],\n\t\tdeserializer = self.params[1],\n\t\ttitle = self.params[2] || filename,\n\t\tencoding = self.params[3] || \"utf8\",\n\t\ttext = fs.readFileSync(filename,encoding),\n\t\ttiddlers = this.commander.wiki.deserializeTiddlers(null,text,{title: title},{deserializer: deserializer});\n\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\tself.commander.wiki.importTiddler(new $tw.Tiddler(tiddler));\n\t});\n\tthis.commander.log(tiddlers.length + \" tiddler(s) imported\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/init.js": {
            "title": "$:/core/modules/commands/init.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/init.js\ntype: application/javascript\nmodule-type: command\n\nCommand to initialise an empty wiki folder\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"init\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar fs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\t// Check that we don't already have a valid wiki folder\n\tif($tw.boot.wikiTiddlersPath || ($tw.utils.isDirectory($tw.boot.wikiPath) && !$tw.utils.isDirectoryEmpty($tw.boot.wikiPath))) {\n\t\treturn \"Wiki folder is not empty\";\n\t}\n\t// Loop through each of the specified editions\n\tvar editions = this.params.length > 0 ? this.params : [\"empty\"];\n\tfor(var editionIndex=0; editionIndex<editions.length; editionIndex++) {\n\t\tvar editionName = editions[editionIndex];\n\t\t// Check the edition exists\n\t\tvar editionPath = $tw.findLibraryItem(editionName,$tw.getLibraryItemSearchPaths($tw.config.editionsPath,$tw.config.editionsEnvVar));\n\t\tif(!$tw.utils.isDirectory(editionPath)) {\n\t\t\treturn \"Edition '\" + editionName + \"' not found\";\n\t\t}\n\t\t// Copy the edition content\n\t\tvar err = $tw.utils.copyDirectory(editionPath,$tw.boot.wikiPath);\n\t\tif(!err) {\n\t\t\tthis.commander.streams.output.write(\"Copied edition '\" + editionName + \"' to \" + $tw.boot.wikiPath + \"\\n\");\n\t\t} else {\n\t\t\treturn err;\n\t\t}\n\t}\n\t// Tweak the tiddlywiki.info to remove any included wikis\n\tvar packagePath = $tw.boot.wikiPath + \"/tiddlywiki.info\",\n\t\tpackageJson = JSON.parse(fs.readFileSync(packagePath));\n\tdelete packageJson.includeWikis;\n\tfs.writeFileSync(packagePath,JSON.stringify(packageJson,null,$tw.config.preferences.jsonSpaces));\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/listen.js": {
            "title": "$:/core/modules/commands/listen.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/listen.js\ntype: application/javascript\nmodule-type: command\n\nListen for HTTP requests and serve tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Server = require(\"$:/core/modules/server/server.js\").Server;\n\nexports.info = {\n\tname: \"listen\",\n\tsynchronous: true,\n\tnamedParameterMode: true,\n\tmandatoryParameters: [],\n};\n\nvar Command = function(params,commander,callback) {\n\tvar self = this;\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this;\n\tif(!$tw.boot.wikiTiddlersPath) {\n\t\t$tw.utils.warning(\"Warning: Wiki folder '\" + $tw.boot.wikiPath + \"' does not exist or is missing a tiddlywiki.info file\");\n\t}\n\t// Set up server\n\tthis.server = new Server({\n\t\twiki: this.commander.wiki,\n\t\tvariables: self.params\n\t});\n\tvar nodeServer = this.server.listen();\n\t$tw.hooks.invokeHook(\"th-server-command-post-start\",this.server,nodeServer,\"tiddlywiki\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/load.js": {
            "title": "$:/core/modules/commands/load.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/load.js\ntype: application/javascript\nmodule-type: command\n\nCommand to load tiddlers from a file or directory\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"load\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar tiddlers = $tw.loadTiddlersFromPath(self.params[0]),\n\t\tcount = 0;\n\t$tw.utils.each(tiddlers,function(tiddlerInfo) {\n\t\t$tw.utils.each(tiddlerInfo.tiddlers,function(tiddler) {\n\t\t\tself.commander.wiki.importTiddler(new $tw.Tiddler(tiddler));\n\t\t\tcount++;\n\t\t});\n\t});\n\tif(!count && self.params[1] !== \"noerror\") {\n\t\tself.callback(\"No tiddlers found in file \\\"\" + self.params[0] + \"\\\"\");\n\t} else {\n\t\tself.callback(null);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/makelibrary.js": {
            "title": "$:/core/modules/commands/makelibrary.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/makelibrary.js\ntype: application/javascript\nmodule-type: command\n\nCommand to pack all of the plugins in the library into a plugin tiddler of type \"library\"\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"makelibrary\",\n\tsynchronous: true\n};\n\nvar UPGRADE_LIBRARY_TITLE = \"$:/UpgradeLibrary\";\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar wiki = this.commander.wiki,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\tupgradeLibraryTitle = this.params[0] || UPGRADE_LIBRARY_TITLE,\n\t\ttiddlers = {};\n\t// Collect up the library plugins\n\tvar collectPlugins = function(folder) {\n\t\t\tvar pluginFolders = $tw.utils.getSubdirectories(folder) || [];\n\t\t\tfor(var p=0; p<pluginFolders.length; p++) {\n\t\t\t\tif(!$tw.boot.excludeRegExp.test(pluginFolders[p])) {\n\t\t\t\t\tpluginFields = $tw.loadPluginFolder(path.resolve(folder,\"./\" + pluginFolders[p]));\n\t\t\t\t\tif(pluginFields && pluginFields.title) {\n\t\t\t\t\t\ttiddlers[pluginFields.title] = pluginFields;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tcollectPublisherPlugins = function(folder) {\n\t\t\tvar publisherFolders = $tw.utils.getSubdirectories(folder) || [];\n\t\t\tfor(var t=0; t<publisherFolders.length; t++) {\n\t\t\t\tif(!$tw.boot.excludeRegExp.test(publisherFolders[t])) {\n\t\t\t\t\tcollectPlugins(path.resolve(folder,\"./\" + publisherFolders[t]));\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.pluginsPath,$tw.config.pluginsEnvVar),collectPublisherPlugins);\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.themesPath,$tw.config.themesEnvVar),collectPublisherPlugins);\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.languagesPath,$tw.config.languagesEnvVar),collectPlugins);\n\t// Save the upgrade library tiddler\n\tvar pluginFields = {\n\t\ttitle: upgradeLibraryTitle,\n\t\ttype: \"application/json\",\n\t\t\"plugin-type\": \"library\",\n\t\t\"text\": JSON.stringify({tiddlers: tiddlers})\n\t};\n\twiki.addTiddler(new $tw.Tiddler(pluginFields));\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/output.js": {
            "title": "$:/core/modules/commands/output.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/output.js\ntype: application/javascript\nmodule-type: command\n\nCommand to set the default output location (defaults to current working directory)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"output\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar fs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 1) {\n\t\treturn \"Missing output path\";\n\t}\n\tthis.commander.outputPath = path.resolve(process.cwd(),this.params[0]);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/password.js": {
            "title": "$:/core/modules/commands/password.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/password.js\ntype: application/javascript\nmodule-type: command\n\nSave password for crypto operations\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"password\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing password\";\n\t}\n\t$tw.crypto.setPassword(this.params[0]);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/render.js": {
            "title": "$:/core/modules/commands/render.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/render.js\ntype: application/javascript\nmodule-type: command\n\nRender individual tiddlers and save the results to the specified files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"render\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing tiddler filter\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\ttiddlerFilter = this.params[0],\n\t\tfilenameFilter = this.params[1] || \"[is[tiddler]addsuffix[.html]]\",\n\t\ttype = this.params[2] || \"text/html\",\n\t\ttemplate = this.params[3],\n\t\tvarName = this.params[4],\n\t\tvarValue = this.params[5],\n\t\ttiddlers = wiki.filterTiddlers(tiddlerFilter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(template || title),\n\t\t\tvariables = {currentTiddler: title};\n\t\tif(varName) {\n\t\t\tvariables[varName] = varValue || \"\";\n\t\t}\n\t\tvar widgetNode = wiki.makeWidget(parser,{variables: variables}),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\tvar text = type === \"text/html\" ? container.innerHTML : container.textContent,\n\t\t\tfilepath = path.resolve(self.commander.outputPath,wiki.filterTiddlers(filenameFilter,$tw.rootWidget,wiki.makeTiddlerIterator([title]))[0]);\n\t\tif(self.commander.verbose) {\n\t\t\tconsole.log(\"Rendering \\\"\" + title + \"\\\" to \\\"\" + filepath + \"\\\"\");\n\t\t}\n\t\t$tw.utils.createFileDirectories(filepath);\n\t\tfs.writeFileSync(filepath,text,\"utf8\");\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/rendertiddler.js": {
            "title": "$:/core/modules/commands/rendertiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/rendertiddler.js\ntype: application/javascript\nmodule-type: command\n\nCommand to render a tiddler and save it to a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"rendertiddler\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\ttitle = this.params[0],\n\t\tfilename = path.resolve(this.commander.outputPath,this.params[1]),\n\t\ttype = this.params[2] || \"text/html\",\n\t\ttemplate = this.params[3],\n\t\tname = this.params[4],\n\t\tvalue = this.params[5],\n\t\tvariables = {};\n\t$tw.utils.createFileDirectories(filename);\n\tif(template) {\n\t\tvariables.currentTiddler = title;\n\t\ttitle = template;\n\t}\n\tif(name && value) {\n\t\tvariables[name] = value;\n\t}\n\tfs.writeFile(filename,this.commander.wiki.renderTiddler(type,title,{variables: variables}),\"utf8\",function(err) {\n\t\tself.callback(err);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/rendertiddlers.js": {
            "title": "$:/core/modules/commands/rendertiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/rendertiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to render several tiddlers to a folder of files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"rendertiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\ttemplate = this.params[1],\n\t\toutputPath = this.commander.outputPath,\n\t\tpathname = path.resolve(outputPath,this.params[2]),\t\t\n\t\ttype = this.params[3] || \"text/html\",\n\t\textension = this.params[4] || \".html\",\n\t\tdeleteDirectory = (this.params[5] || \"\").toLowerCase() !== \"noclean\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\tif(deleteDirectory) {\n\t\t$tw.utils.deleteDirectory(pathname);\n\t}\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(template),\n\t\t\twidgetNode = wiki.makeWidget(parser,{variables: {currentTiddler: title}}),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\tvar text = type === \"text/html\" ? container.innerHTML : container.textContent,\n\t\t\texportPath = null;\n\t\tif($tw.utils.hop($tw.macros,\"tv-get-export-path\")) {\n\t\t\tvar macroPath = $tw.macros[\"tv-get-export-path\"].run.apply(self,[title]);\n\t\t\tif(macroPath) {\n\t\t\t\texportPath = path.resolve(outputPath,macroPath + extension);\n\t\t\t}\n\t\t}\n\t\tvar finalPath = exportPath || path.resolve(pathname,encodeURIComponent(title) + extension);\n\t\t$tw.utils.createFileDirectories(finalPath);\n\t\tfs.writeFileSync(finalPath,text,\"utf8\");\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/save.js": {
            "title": "$:/core/modules/commands/save.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/save.js\ntype: application/javascript\nmodule-type: command\n\nSaves individual tiddlers in their raw text or binary format to the specified files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"save\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename filter\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\ttiddlerFilter = this.params[0],\n\t\tfilenameFilter = this.params[1] || \"[is[tiddler]]\",\n\t\ttiddlers = wiki.filterTiddlers(tiddlerFilter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.commander.wiki.getTiddler(title),\n\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"},\n\t\t\tfilepath = path.resolve(self.commander.outputPath,wiki.filterTiddlers(filenameFilter,$tw.rootWidget,wiki.makeTiddlerIterator([title]))[0]);\n\t\tif(self.commander.verbose) {\n\t\t\tconsole.log(\"Saving \\\"\" + title + \"\\\" to \\\"\" + filepath + \"\\\"\");\n\t\t}\n\t\t$tw.utils.createFileDirectories(filepath);\n\t\tfs.writeFileSync(filepath,tiddler.fields.text,contentTypeInfo.encoding);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savelibrarytiddlers.js": {
            "title": "$:/core/modules/commands/savelibrarytiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savelibrarytiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the subtiddlers of a bundle tiddler as a series of JSON files\n\n--savelibrarytiddlers <tiddler> <tiddler-filter> <pathname> <skinnylisting>\n\nThe tiddler identifies the bundle tiddler that contains the subtiddlers.\n\nThe tiddler filter specifies the plugins to be included.\n\nThe pathname specifies the pathname to the folder in which the JSON files should be saved. The filename is the URL encoded title of the subtiddler.\n\nThe skinnylisting specifies the title of the tiddler to which a JSON catalogue of the subtiddlers will be saved. The JSON file contains the same data as the bundle tiddler but with the `text` field removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savelibrarytiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\tcontainerTitle = this.params[0],\n\t\tfilter = this.params[1],\n\t\tbasepath = this.params[2],\n\t\tskinnyListTitle = this.params[3];\n\t// Get the container tiddler as data\n\tvar containerData = self.commander.wiki.getTiddlerDataCached(containerTitle,undefined);\n\tif(!containerData) {\n\t\treturn \"'\" + containerTitle + \"' is not a tiddler bundle\";\n\t}\n\t// Filter the list of plugins\n\tvar pluginList = [];\n\t$tw.utils.each(containerData.tiddlers,function(tiddler,title) {\n\t\tpluginList.push(title);\n\t});\n\tvar filteredPluginList;\n\tif(filter) {\n\t\tfilteredPluginList = self.commander.wiki.filterTiddlers(filter,null,self.commander.wiki.makeTiddlerIterator(pluginList));\n\t} else {\n\t\tfilteredPluginList = pluginList;\n\t}\n\t// Iterate through the plugins\n\tvar skinnyList = [];\n\t$tw.utils.each(filteredPluginList,function(title) {\n\t\tvar tiddler = containerData.tiddlers[title];\n\t\t// Save each JSON file and collect the skinny data\n\t\tvar pathname = path.resolve(self.commander.outputPath,basepath + encodeURIComponent(title) + \".json\");\n\t\t$tw.utils.createFileDirectories(pathname);\n\t\tfs.writeFileSync(pathname,JSON.stringify(tiddler),\"utf8\");\n\t\t// Collect the skinny list data\n\t\tvar pluginTiddlers = JSON.parse(tiddler.text),\n\t\t\treadmeContent = (pluginTiddlers.tiddlers[title + \"/readme\"] || {}).text,\n\t\t\tdoesRequireReload = !!self.commander.wiki.doesPluginInfoRequireReload(pluginTiddlers),\n\t\t\ticonTiddler = pluginTiddlers.tiddlers[title + \"/icon\"] || {},\n\t\t\ticonType = iconTiddler.type,\n\t\t\ticonText = iconTiddler.text,\n\t\t\ticonContent;\n\t\tif(iconType && iconText) {\n\t\t\ticonContent = $tw.utils.makeDataUri(iconText,iconType);\n\t\t}\n\t\tskinnyList.push($tw.utils.extend({},tiddler,{\n\t\t\ttext: undefined,\n\t\t\treadme: readmeContent,\n\t\t\t\"requires-reload\": doesRequireReload ? \"yes\" : \"no\",\n\t\t\ticon: iconContent\n\t\t}));\n\t});\n\t// Save the catalogue tiddler\n\tif(skinnyListTitle) {\n\t\tself.commander.wiki.setTiddlerData(skinnyListTitle,skinnyList);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savetiddler.js": {
            "title": "$:/core/modules/commands/savetiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savetiddler.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the content of a tiddler to a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savetiddler\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\ttitle = this.params[0],\n\t\tfilename = path.resolve(this.commander.outputPath,this.params[1]),\n\t\ttiddler = this.commander.wiki.getTiddler(title);\n\tif(tiddler) {\n\t\tvar type = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"};\n\t\t$tw.utils.createFileDirectories(filename);\n\t\tfs.writeFile(filename,tiddler.fields.text,contentTypeInfo.encoding,function(err) {\n\t\t\tself.callback(err);\n\t\t});\n\t} else {\n\t\treturn \"Missing tiddler: \" + title;\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savetiddlers.js": {
            "title": "$:/core/modules/commands/savetiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savetiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save several tiddlers to a folder of files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"savetiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\tpathname = path.resolve(this.commander.outputPath,this.params[1]),\n\t\tdeleteDirectory = (this.params[2] || \"\").toLowerCase() !== \"noclean\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\tif(deleteDirectory) {\n\t\t$tw.utils.deleteDirectory(pathname);\n\t}\n\t$tw.utils.createDirectory(pathname);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.commander.wiki.getTiddler(title),\n\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"},\n\t\t\tfilename = path.resolve(pathname,encodeURIComponent(title));\n\t\tfs.writeFileSync(filename,tiddler.fields.text,contentTypeInfo.encoding);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savewikifolder.js": {
            "title": "$:/core/modules/commands/savewikifolder.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savewikifolder.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the current wiki as a wiki folder\n\n--savewikifolder <wikifolderpath> [<filter>]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savewikifolder\",\n\tsynchronous: true\n};\n\nvar fs,path;\nif($tw.node) {\n\tfs = require(\"fs\");\n\tpath = require(\"path\");\n}\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing wiki folder path\";\n\t}\n\tvar wikifoldermaker = new WikiFolderMaker(this.params[0],this.params[1],this.commander);\n\treturn wikifoldermaker.save();\n};\n\nfunction WikiFolderMaker(wikiFolderPath,wikiFilter,commander) {\n\tthis.wikiFolderPath = wikiFolderPath;\n\tthis.wikiFilter = wikiFilter || \"[all[tiddlers]]\";\n\tthis.commander = commander;\n\tthis.wiki = commander.wiki;\n\tthis.savedPaths = []; // So that we can detect filename clashes\n}\n\nWikiFolderMaker.prototype.log = function(str) {\n\tif(this.commander.verbose) {\n\t\tconsole.log(str);\n\t}\n};\n\nWikiFolderMaker.prototype.tiddlersToIgnore = [\n\t\"$:/boot/boot.css\",\n\t\"$:/boot/boot.js\",\n\t\"$:/boot/bootprefix.js\",\n\t\"$:/core\",\n\t\"$:/library/sjcl.js\",\n\t\"$:/temp/info-plugin\"\n];\n\n/*\nReturns null if successful, or an error string if there was an error\n*/\nWikiFolderMaker.prototype.save = function() {\n\tvar self = this;\n\t// Check that the output directory doesn't exist\n\tif(fs.existsSync(this.wikiFolderPath) && !$tw.utils.isDirectoryEmpty(this.wikiFolderPath)) {\n\t\treturn \"The unpackwiki command requires that the output wiki folder be empty\";\n\t}\n\t// Get the tiddlers from the source wiki\n\tvar tiddlerTitles = this.wiki.filterTiddlers(this.wikiFilter);\n\t// Initialise a new tiddlwiki.info file\n\tvar newWikiInfo = {};\n\t// Process each incoming tiddler in turn\n\t$tw.utils.each(tiddlerTitles,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tif(self.tiddlersToIgnore.indexOf(title) !== -1) {\n\t\t\t\t// Ignore the core plugin and the ephemeral info plugin\n\t\t\t\tself.log(\"Ignoring tiddler: \" + title);\n\t\t\t} else {\n\t\t\t\tvar type = tiddler.fields.type,\n\t\t\t\t\tpluginType = tiddler.fields[\"plugin-type\"];\n\t\t\t\tif(type === \"application/json\" && pluginType) {\n\t\t\t\t\t// Plugin tiddler\n\t\t\t\t\tvar libraryDetails = self.findPluginInLibrary(title);\n\t\t\t\t\tif(libraryDetails) {\n\t\t\t\t\t\t// A plugin from the core library\n\t\t\t\t\t\tself.log(\"Adding built-in plugin: \" + libraryDetails.name);\n\t\t\t\t\t\tnewWikiInfo[libraryDetails.type] = newWikiInfo[libraryDetails.type]  || [];\n\t\t\t\t\t\t$tw.utils.pushTop(newWikiInfo[libraryDetails.type],libraryDetails.name);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// A custom plugin\n\t\t\t\t\t\tself.log(\"Processing custom plugin: \" + title);\n\t\t\t\t\t\tself.saveCustomPlugin(tiddler);\n\t\t\t\t\t}\t\t\t\t\n\t\t\t\t} else {\n\t\t\t\t\t// Ordinary tiddler\n\t\t\t\t\tself.saveTiddler(\"tiddlers\",tiddler);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\t// Save the tiddlywiki.info file\n\tthis.saveJSONFile(\"tiddlywiki.info\",newWikiInfo);\n\tself.log(\"Writing tiddlywiki.info: \" + JSON.stringify(newWikiInfo,null,$tw.config.preferences.jsonSpaces));\n\treturn null;\n};\n\n/*\nTest whether the specified tiddler is a plugin in the plugin library\n*/\nWikiFolderMaker.prototype.findPluginInLibrary = function(title) {\n\tvar parts = title.split(\"/\"),\n\t\tpluginPath, type, name;\n\tif(parts[0] === \"$:\") {\n\t\tif(parts[1] === \"languages\" && parts.length === 3) {\n\t\t\tpluginPath = \"languages\" + path.sep + parts[2];\n\t\t\ttype = parts[1];\n\t\t\tname = parts[2];\n\t\t} else if(parts[1] === \"plugins\" || parts[1] === \"themes\" && parts.length === 4) {\n\t\t\tpluginPath = parts[1] + path.sep + parts[2] + path.sep + parts[3];\n\t\t\ttype = parts[1];\n\t\t\tname = parts[2] + \"/\" + parts[3];\n\t\t}\n\t}\n\tif(pluginPath && type && name) {\n\t\tpluginPath = path.resolve($tw.boot.bootPath,\"..\",pluginPath);\n\t\tif(fs.existsSync(pluginPath)) {\n\t\t\treturn {\n\t\t\t\tpluginPath: pluginPath,\n\t\t\t\ttype: type,\n\t\t\t\tname: name\n\t\t\t};\n\t\t}\n\t}\n\treturn false;\n};\n\nWikiFolderMaker.prototype.saveCustomPlugin = function(pluginTiddler) {\n\tvar self = this,\n\t\tpluginTitle = pluginTiddler.fields.title,\n\t\ttitleParts = pluginTitle.split(\"/\"),\n\t\tdirectory = $tw.utils.generateTiddlerFilepath(titleParts[titleParts.length - 1],{\n\t\t\tdirectory: path.resolve(this.wikiFolderPath,pluginTiddler.fields[\"plugin-type\"] + \"s\")\n\t\t}),\n\t\tpluginInfo = pluginTiddler.getFieldStrings({exclude: [\"text\",\"type\"]});\n\tthis.saveJSONFile(directory + path.sep + \"plugin.info\",pluginInfo);\n\tself.log(\"Writing \" + directory + path.sep + \"plugin.info: \" + JSON.stringify(pluginInfo,null,$tw.config.preferences.jsonSpaces));\n\tvar pluginTiddlers = JSON.parse(pluginTiddler.fields.text).tiddlers; // A hashmap of tiddlers in the plugin\n\t$tw.utils.each(pluginTiddlers,function(tiddler) {\n\t\tself.saveTiddler(directory,new $tw.Tiddler(tiddler));\n\t});\n};\n\nWikiFolderMaker.prototype.saveTiddler = function(directory,tiddler) {\n\tvar fileInfo = $tw.utils.generateTiddlerFileInfo(tiddler,{\n\t\tdirectory: path.resolve(this.wikiFolderPath,directory),\n\t\twiki: this.wiki\n\t});\n\t$tw.utils.saveTiddlerToFileSync(tiddler,fileInfo);\n};\n\nWikiFolderMaker.prototype.saveJSONFile = function(filename,json) {\n\tthis.saveTextFile(filename,JSON.stringify(json,null,$tw.config.preferences.jsonSpaces));\n};\n\nWikiFolderMaker.prototype.saveTextFile = function(filename,data) {\n\tthis.saveFile(filename,\"utf8\",data);\n};\n\nWikiFolderMaker.prototype.saveFile = function(filename,encoding,data) {\n\tvar filepath = path.resolve(this.wikiFolderPath,filename);\n\t$tw.utils.createFileDirectories(filepath);\n\tfs.writeFileSync(filepath,data,encoding);\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/server.js": {
            "title": "$:/core/modules/commands/server.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/server.js\ntype: application/javascript\nmodule-type: command\n\nDeprecated legacy command for serving tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Server = require(\"$:/core/modules/server/server.js\").Server;\n\nexports.info = {\n\tname: \"server\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tvar self = this;\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(!$tw.boot.wikiTiddlersPath) {\n\t\t$tw.utils.warning(\"Warning: Wiki folder '\" + $tw.boot.wikiPath + \"' does not exist or is missing a tiddlywiki.info file\");\n\t}\n\t// Set up server\n\tthis.server = new Server({\n\t\twiki: this.commander.wiki,\n\t\tvariables: {\n\t\t\tport: this.params[0],\n\t\t\thost: this.params[6],\n\t\t\t\"root-tiddler\": this.params[1],\n\t\t\t\"root-render-type\": this.params[2],\n\t\t\t\"root-serve-type\": this.params[3],\n\t\t\tusername: this.params[4],\n\t\t\tpassword: this.params[5],\n\t\t\t\"path-prefix\": this.params[7],\n\t\t\t\"debug-level\": this.params[8]\n\t\t}\n\t});\n\tvar nodeServer = this.server.listen();\n\t$tw.hooks.invokeHook(\"th-server-command-post-start\",this.server,nodeServer,\"tiddlywiki\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/setfield.js": {
            "title": "$:/core/modules/commands/setfield.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/setfield.js\ntype: application/javascript\nmodule-type: command\n\nCommand to modify selected tiddlers to set a field to the text of a template tiddler that has been wikified with the selected tiddler as the current tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"setfield\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 4) {\n\t\treturn \"Missing parameters\";\n\t}\n\tvar self = this,\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\tfieldname = this.params[1] || \"text\",\n\t\ttemplatetitle = this.params[2],\n\t\trendertype = this.params[3] || \"text/plain\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(templatetitle),\n\t\t\tnewFields = {},\n\t\t\ttiddler = wiki.getTiddler(title);\n\t\tif(parser) {\n\t\t\tvar widgetNode = wiki.makeWidget(parser,{variables: {currentTiddler: title}});\n\t\t\tvar container = $tw.fakeDocument.createElement(\"div\");\n\t\t\twidgetNode.render(container,null);\n\t\t\tnewFields[fieldname] = rendertype === \"text/html\" ? container.innerHTML : container.textContent;\n\t\t} else {\n\t\t\tnewFields[fieldname] = undefined;\n\t\t}\n\t\twiki.addTiddler(new $tw.Tiddler(tiddler,newFields));\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/unpackplugin.js": {
            "title": "$:/core/modules/commands/unpackplugin.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/unpackplugin.js\ntype: application/javascript\nmodule-type: command\n\nCommand to extract the shadow tiddlers from within a plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"unpackplugin\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing plugin name\";\n\t}\n\tvar self = this,\n\t\ttitle = this.params[0],\n\t\tpluginData = this.commander.wiki.getTiddlerDataCached(title);\n\tif(!pluginData) {\n\t\treturn \"Plugin '\" + title + \"' not found\";\n\t}\n\t$tw.utils.each(pluginData.tiddlers,function(tiddler) {\n\t\tself.commander.wiki.addTiddler(new $tw.Tiddler(tiddler));\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/verbose.js": {
            "title": "$:/core/modules/commands/verbose.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/verbose.js\ntype: application/javascript\nmodule-type: command\n\nVerbose command\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"verbose\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tthis.commander.verbose = true;\n\t// Output the boot message log\n\tthis.commander.streams.output.write(\"Boot log:\\n  \" + $tw.boot.logMessages.join(\"\\n  \") + \"\\n\");\n\treturn null; // No error\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/version.js": {
            "title": "$:/core/modules/commands/version.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/version.js\ntype: application/javascript\nmodule-type: command\n\nVersion command\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"version\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tthis.commander.streams.output.write($tw.version + \"\\n\");\n\treturn null; // No error\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/config.js": {
            "title": "$:/core/modules/config.js",
            "text": "/*\\\ntitle: $:/core/modules/config.js\ntype: application/javascript\nmodule-type: config\n\nCore configuration constants\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.preferences = {};\n\nexports.preferences.notificationDuration = 3 * 1000;\nexports.preferences.jsonSpaces = 4;\n\nexports.textPrimitives = {\n\tupperLetter: \"[A-Z\\u00c0-\\u00d6\\u00d8-\\u00de\\u0150\\u0170]\",\n\tlowerLetter: \"[a-z\\u00df-\\u00f6\\u00f8-\\u00ff\\u0151\\u0171]\",\n\tanyLetter:   \"[A-Za-z0-9\\u00c0-\\u00d6\\u00d8-\\u00de\\u00df-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]\",\n\tblockPrefixLetters:\t\"[A-Za-z0-9-_\\u00c0-\\u00d6\\u00d8-\\u00de\\u00df-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]\"\n};\n\nexports.textPrimitives.unWikiLink = \"~\";\nexports.textPrimitives.wikiLink = exports.textPrimitives.upperLetter + \"+\" +\n\texports.textPrimitives.lowerLetter + \"+\" +\n\texports.textPrimitives.upperLetter +\n\texports.textPrimitives.anyLetter + \"*\";\n\nexports.htmlEntities = {quot:34, amp:38, apos:39, lt:60, gt:62, nbsp:160, iexcl:161, cent:162, pound:163, curren:164, yen:165, brvbar:166, sect:167, uml:168, copy:169, ordf:170, laquo:171, not:172, shy:173, reg:174, macr:175, deg:176, plusmn:177, sup2:178, sup3:179, acute:180, micro:181, para:182, middot:183, cedil:184, sup1:185, ordm:186, raquo:187, frac14:188, frac12:189, frac34:190, iquest:191, Agrave:192, Aacute:193, Acirc:194, Atilde:195, Auml:196, Aring:197, AElig:198, Ccedil:199, Egrave:200, Eacute:201, Ecirc:202, Euml:203, Igrave:204, Iacute:205, Icirc:206, Iuml:207, ETH:208, Ntilde:209, Ograve:210, Oacute:211, Ocirc:212, Otilde:213, Ouml:214, times:215, Oslash:216, Ugrave:217, Uacute:218, Ucirc:219, Uuml:220, Yacute:221, THORN:222, szlig:223, agrave:224, aacute:225, acirc:226, atilde:227, auml:228, aring:229, aelig:230, ccedil:231, egrave:232, eacute:233, ecirc:234, euml:235, igrave:236, iacute:237, icirc:238, iuml:239, eth:240, ntilde:241, ograve:242, oacute:243, ocirc:244, otilde:245, ouml:246, divide:247, oslash:248, ugrave:249, uacute:250, ucirc:251, uuml:252, yacute:253, thorn:254, yuml:255, OElig:338, oelig:339, Scaron:352, scaron:353, Yuml:376, fnof:402, circ:710, tilde:732, Alpha:913, Beta:914, Gamma:915, Delta:916, Epsilon:917, Zeta:918, Eta:919, Theta:920, Iota:921, Kappa:922, Lambda:923, Mu:924, Nu:925, Xi:926, Omicron:927, Pi:928, Rho:929, Sigma:931, Tau:932, Upsilon:933, Phi:934, Chi:935, Psi:936, Omega:937, alpha:945, beta:946, gamma:947, delta:948, epsilon:949, zeta:950, eta:951, theta:952, iota:953, kappa:954, lambda:955, mu:956, nu:957, xi:958, omicron:959, pi:960, rho:961, sigmaf:962, sigma:963, tau:964, upsilon:965, phi:966, chi:967, psi:968, omega:969, thetasym:977, upsih:978, piv:982, ensp:8194, emsp:8195, thinsp:8201, zwnj:8204, zwj:8205, lrm:8206, rlm:8207, ndash:8211, mdash:8212, lsquo:8216, rsquo:8217, sbquo:8218, ldquo:8220, rdquo:8221, bdquo:8222, dagger:8224, Dagger:8225, bull:8226, hellip:8230, permil:8240, prime:8242, Prime:8243, lsaquo:8249, rsaquo:8250, oline:8254, frasl:8260, euro:8364, image:8465, weierp:8472, real:8476, trade:8482, alefsym:8501, larr:8592, uarr:8593, rarr:8594, darr:8595, harr:8596, crarr:8629, lArr:8656, uArr:8657, rArr:8658, dArr:8659, hArr:8660, forall:8704, part:8706, exist:8707, empty:8709, nabla:8711, isin:8712, notin:8713, ni:8715, prod:8719, sum:8721, minus:8722, lowast:8727, radic:8730, prop:8733, infin:8734, ang:8736, and:8743, or:8744, cap:8745, cup:8746, int:8747, there4:8756, sim:8764, cong:8773, asymp:8776, ne:8800, equiv:8801, le:8804, ge:8805, sub:8834, sup:8835, nsub:8836, sube:8838, supe:8839, oplus:8853, otimes:8855, perp:8869, sdot:8901, lceil:8968, rceil:8969, lfloor:8970, rfloor:8971, lang:9001, rang:9002, loz:9674, spades:9824, clubs:9827, hearts:9829, diams:9830 };\n\nexports.htmlVoidElements = \"area,base,br,col,command,embed,hr,img,input,keygen,link,meta,param,source,track,wbr\".split(\",\");\n\nexports.htmlBlockElements = \"address,article,aside,audio,blockquote,canvas,dd,div,dl,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,hr,li,noscript,ol,output,p,pre,section,table,tfoot,ul,video\".split(\",\");\n\nexports.htmlUnsafeElements = \"script\".split(\",\");\n\n})();\n",
            "type": "application/javascript",
            "module-type": "config"
        },
        "$:/core/modules/deserializers.js": {
            "title": "$:/core/modules/deserializers.js",
            "text": "/*\\\ntitle: $:/core/modules/deserializers.js\ntype: application/javascript\nmodule-type: tiddlerdeserializer\n\nFunctions to deserialise tiddlers from a block of text\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nUtility function to parse an old-style tiddler DIV in a *.tid file. It looks like this:\n\n<div title=\"Title\" creator=\"JoeBloggs\" modifier=\"JoeBloggs\" created=\"201102111106\" modified=\"201102111310\" tags=\"myTag [[my long tag]]\">\n<pre>The text of the tiddler (without the expected HTML encoding).\n</pre>\n</div>\n\nNote that the field attributes are HTML encoded, but that the body of the <PRE> tag is not encoded.\n\nWhen these tiddler DIVs are encountered within a TiddlyWiki HTML file then the body is encoded in the usual way.\n*/\nvar parseTiddlerDiv = function(text /* [,fields] */) {\n\t// Slot together the default results\n\tvar result = {};\n\tif(arguments.length > 1) {\n\t\tfor(var f=1; f<arguments.length; f++) {\n\t\t\tvar fields = arguments[f];\n\t\t\tfor(var t in fields) {\n\t\t\t\tresult[t] = fields[t];\t\t\n\t\t\t}\n\t\t}\n\t}\n\t// Parse the DIV body\n\tvar startRegExp = /^\\s*<div\\s+([^>]*)>(\\s*<pre>)?/gi,\n\t\tendRegExp,\n\t\tmatch = startRegExp.exec(text);\n\tif(match) {\n\t\t// Old-style DIVs don't have the <pre> tag\n\t\tif(match[2]) {\n\t\t\tendRegExp = /<\\/pre>\\s*<\\/div>\\s*$/gi;\n\t\t} else {\n\t\t\tendRegExp = /<\\/div>\\s*$/gi;\n\t\t}\n\t\tvar endMatch = endRegExp.exec(text);\n\t\tif(endMatch) {\n\t\t\t// Extract the text\n\t\t\tresult.text = text.substring(match.index + match[0].length,endMatch.index);\n\t\t\t// Process the attributes\n\t\t\tvar attrRegExp = /\\s*([^=\\s]+)\\s*=\\s*(?:\"([^\"]*)\"|'([^']*)')/gi,\n\t\t\t\tattrMatch;\n\t\t\tdo {\n\t\t\t\tattrMatch = attrRegExp.exec(match[1]);\n\t\t\t\tif(attrMatch) {\n\t\t\t\t\tvar name = attrMatch[1];\n\t\t\t\t\tvar value = attrMatch[2] !== undefined ? attrMatch[2] : attrMatch[3];\n\t\t\t\t\tresult[name] = value;\n\t\t\t\t}\n\t\t\t} while(attrMatch);\n\t\t\treturn result;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports[\"application/x-tiddler-html-div\"] = function(text,fields) {\n\treturn [parseTiddlerDiv(text,fields)];\n};\n\nexports[\"application/json\"] = function(text,fields) {\n\tvar incoming,\n\t\tresults = [];\n\ttry {\n\t\tincoming = JSON.parse(text);\n\t} catch(e) {\n\t\tincoming = [{\n\t\t\ttitle: \"JSON error: \" + e,\n\t\t\ttext: \"\"\n\t\t}]\n\t}\n\tif(!$tw.utils.isArray(incoming)) {\n\t\tincoming = [incoming];\n\t}\n\tfor(var t=0; t<incoming.length; t++) {\n\t\tvar incomingFields = incoming[t],\n\t\t\tfields = {};\n\t\tfor(var f in incomingFields) {\n\t\t\tif(typeof incomingFields[f] === \"string\") {\n\t\t\t\tfields[f] = incomingFields[f];\n\t\t\t}\n\t\t}\n\t\tresults.push(fields);\n\t}\n\treturn results;\n};\n\n/*\nParse an HTML file into tiddlers. There are three possibilities:\n# A TiddlyWiki classic HTML file containing `text/x-tiddlywiki` tiddlers\n# A TiddlyWiki5 HTML file containing `text/vnd.tiddlywiki` tiddlers\n# An ordinary HTML file\n*/\nexports[\"text/html\"] = function(text,fields) {\n\t// Check if we've got a store area\n\tvar storeAreaMarkerRegExp = /<div id=[\"']?storeArea['\"]?( style=[\"']?display:none;[\"']?)?>/gi,\n\t\tmatch = storeAreaMarkerRegExp.exec(text);\n\tif(match) {\n\t\t// If so, it's either a classic TiddlyWiki file or an unencrypted TW5 file\n\t\t// First read the normal tiddlers\n\t\tvar results = deserializeTiddlyWikiFile(text,storeAreaMarkerRegExp.lastIndex,!!match[1],fields);\n\t\t// Then any system tiddlers\n\t\tvar systemAreaMarkerRegExp = /<div id=[\"']?systemArea['\"]?( style=[\"']?display:none;[\"']?)?>/gi,\n\t\t\tsysMatch = systemAreaMarkerRegExp.exec(text);\n\t\tif(sysMatch) {\n\t\t\tresults.push.apply(results,deserializeTiddlyWikiFile(text,systemAreaMarkerRegExp.lastIndex,!!sysMatch[1],fields));\n\t\t}\n\t\treturn results;\n\t} else {\n\t\t// Check whether we've got an encrypted file\n\t\tvar encryptedStoreArea = $tw.utils.extractEncryptedStoreArea(text);\n\t\tif(encryptedStoreArea) {\n\t\t\t// If so, attempt to decrypt it using the current password\n\t\t\treturn $tw.utils.decryptStoreArea(encryptedStoreArea);\n\t\t} else {\n\t\t\t// It's not a TiddlyWiki so we'll return the entire HTML file as a tiddler\n\t\t\treturn deserializeHtmlFile(text,fields);\n\t\t}\n\t}\n};\n\nfunction deserializeHtmlFile(text,fields) {\n\tvar result = {};\n\t$tw.utils.each(fields,function(value,name) {\n\t\tresult[name] = value;\n\t});\n\tresult.text = text;\n\tresult.type = \"text/html\";\n\treturn [result];\n}\n\nfunction deserializeTiddlyWikiFile(text,storeAreaEnd,isTiddlyWiki5,fields) {\n\tvar results = [],\n\t\tendOfDivRegExp = /(<\\/div>\\s*)/gi,\n\t\tstartPos = storeAreaEnd,\n\t\tdefaultType = isTiddlyWiki5 ? undefined : \"text/x-tiddlywiki\";\n\tendOfDivRegExp.lastIndex = startPos;\n\tvar match = endOfDivRegExp.exec(text);\n\twhile(match) {\n\t\tvar endPos = endOfDivRegExp.lastIndex,\n\t\t\ttiddlerFields = parseTiddlerDiv(text.substring(startPos,endPos),fields,{type: defaultType});\n\t\tif(!tiddlerFields) {\n\t\t\tbreak;\n\t\t}\n\t\t$tw.utils.each(tiddlerFields,function(value,name) {\n\t\t\tif(typeof value === \"string\") {\n\t\t\t\ttiddlerFields[name] = $tw.utils.htmlDecode(value);\n\t\t\t}\n\t\t});\n\t\tif(tiddlerFields.text !== null) {\n\t\t\tresults.push(tiddlerFields);\n\t\t}\n\t\tstartPos = endPos;\n\t\tmatch = endOfDivRegExp.exec(text);\n\t}\n\treturn results;\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "tiddlerdeserializer"
        },
        "$:/core/modules/editor/engines/framed.js": {
            "title": "$:/core/modules/editor/engines/framed.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/engines/framed.js\ntype: application/javascript\nmodule-type: library\n\nText editor engine based on a simple input or textarea within an iframe. This is done so that the selection is preserved even when clicking away from the textarea\n\n\\*/\n(function(){\n\n/*jslint node: true,browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\nfunction FramedEngine(options) {\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\t// Create our hidden dummy text area for reading styles\n\tthis.dummyTextArea = this.widget.document.createElement(\"textarea\");\n\tif(this.widget.editClass) {\n\t\tthis.dummyTextArea.className = this.widget.editClass;\n\t}\n\tthis.dummyTextArea.setAttribute(\"hidden\",\"true\");\n\tthis.parentNode.insertBefore(this.dummyTextArea,this.nextSibling);\n\tthis.widget.domNodes.push(this.dummyTextArea);\n\t// Create the iframe\n\tthis.iframeNode = this.widget.document.createElement(\"iframe\");\n\tthis.parentNode.insertBefore(this.iframeNode,this.nextSibling);\n\tthis.iframeDoc = this.iframeNode.contentWindow.document;\n\t// (Firefox requires us to put some empty content in the iframe)\n\tthis.iframeDoc.open();\n\tthis.iframeDoc.write(\"\");\n\tthis.iframeDoc.close();\n\t// Style the iframe\n\tthis.iframeNode.className = this.dummyTextArea.className;\n\tthis.iframeNode.style.border = \"none\";\n\tthis.iframeNode.style.padding = \"0\";\n\tthis.iframeNode.style.resize = \"none\";\n\tthis.iframeDoc.body.style.margin = \"0\";\n\tthis.iframeDoc.body.style.padding = \"0\";\n\tthis.widget.domNodes.push(this.iframeNode);\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.iframeDoc.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.iframeDoc.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\tif(this.widget.editTabIndex) {\n\t\tthis.iframeNode.setAttribute(\"tabindex\",this.widget.editTabIndex);\n\t}\n\tif(this.widget.editAutoComplete) {\n\t\tthis.domNode.setAttribute(\"autocomplete\",this.widget.editAutoComplete);\n\t}\n\tif(this.widget.isDisabled === \"yes\") {\n\t\tthis.domNode.setAttribute(\"disabled\",true);\n\t}\t\n\t// Copy the styles from the dummy textarea\n\tthis.copyStyles();\n\t// Add event listeners\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"click\",handlerObject: this,handlerMethod: \"handleClickEvent\"},\n\t\t{name: \"input\",handlerObject: this,handlerMethod: \"handleInputEvent\"},\n\t\t{name: \"keydown\",handlerObject: this.widget,handlerMethod: \"handleKeydownEvent\"},\n\t\t{name: \"focus\",handlerObject: this,handlerMethod: \"handleFocusEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.iframeDoc.body.appendChild(this.domNode);\n}\n\n/*\nCopy styles from the dummy text area to the textarea in the iframe\n*/\nFramedEngine.prototype.copyStyles = function() {\n\t// Copy all styles\n\t$tw.utils.copyStyles(this.dummyTextArea,this.domNode);\n\t// Override the ones that should not be set the same as the dummy textarea\n\tthis.domNode.style.display = \"block\";\n\tthis.domNode.style.width = \"100%\";\n\tthis.domNode.style.margin = \"0\";\n\t// In Chrome setting -webkit-text-fill-color overrides the placeholder text colour\n\tthis.domNode.style[\"-webkit-text-fill-color\"] = \"currentcolor\";\n};\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nFramedEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode) {\n\t\t\tthis.updateDomNodeText(text);\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nUpdate the DomNode with the new text\n*/\nFramedEngine.prototype.updateDomNodeText = function(text) {\n\tthis.domNode.value = text;\n};\n\n/*\nGet the text of the engine\n*/\nFramedEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nFramedEngine.prototype.fixHeight = function() {\n\t// Make sure styles are updated\n\tthis.copyStyles();\n\t// Adjust height\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\tvar newHeight = $tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t\tthis.iframeNode.style.height = (newHeight + 14) + \"px\"; // +14 for the border on the textarea\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t\tthis.iframeNode.style.height = (fixedHeight + 14) + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nFramedEngine.prototype.focus  = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a focus event\n*/\nFramedEngine.prototype.handleFocusEvent = function(event) {\n\tif(this.widget.editCancelPopups) {\n\t\t$tw.popup.cancel(0);\t\n\t}\n};\n\n/*\nHandle a click\n*/\nFramedEngine.prototype.handleClickEvent = function(event) {\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nFramedEngine.prototype.handleInputEvent = function(event) {\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\tif(this.widget.editInputActions) {\n\t\tthis.widget.invokeActionString(this.widget.editInputActions);\n\t}\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nFramedEngine.prototype.createTextOperation = function() {\n\tvar operation = {\n\t\ttext: this.domNode.value,\n\t\tselStart: this.domNode.selectionStart,\n\t\tselEnd: this.domNode.selectionEnd,\n\t\tcutStart: null,\n\t\tcutEnd: null,\n\t\treplacement: null,\n\t\tnewSelStart: null,\n\t\tnewSelEnd: null\n\t};\n\toperation.selection = operation.text.substring(operation.selStart,operation.selEnd);\n\treturn operation;\n};\n\n/*\nExecute a text operation\n*/\nFramedEngine.prototype.executeTextOperation = function(operation) {\n\t// Perform the required changes to the text area and the underlying tiddler\n\tvar newText = operation.text;\n\tif(operation.replacement !== null) {\n\t\tnewText = operation.text.substring(0,operation.cutStart) + operation.replacement + operation.text.substring(operation.cutEnd);\n\t\t// Attempt to use a execCommand to modify the value of the control\n\t\tif(this.iframeDoc.queryCommandSupported(\"insertText\") && this.iframeDoc.queryCommandSupported(\"delete\") && !$tw.browser.isFirefox) {\n\t\t\tthis.domNode.focus();\n\t\t\tthis.domNode.setSelectionRange(operation.cutStart,operation.cutEnd);\n\t\t\tif(operation.replacement === \"\") {\n\t\t\t\tthis.iframeDoc.execCommand(\"delete\",false,\"\");\n\t\t\t} else {\n\t\t\t\tthis.iframeDoc.execCommand(\"insertText\",false,operation.replacement);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.domNode.value = newText;\n\t\t}\n\t\tthis.domNode.focus();\n\t\tthis.domNode.setSelectionRange(operation.newSelStart,operation.newSelEnd);\n\t}\n\tthis.domNode.focus();\n\treturn newText;\n};\n\nexports.FramedEngine = FramedEngine;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/editor/engines/simple.js": {
            "title": "$:/core/modules/editor/engines/simple.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/engines/simple.js\ntype: application/javascript\nmodule-type: library\n\nText editor engine based on a simple input or textarea tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\nfunction SimpleEngine(options) {\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.widget.document.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.widget.document.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\tif(this.widget.editClass) {\n\t\tthis.domNode.className = this.widget.editClass;\n\t}\n\tif(this.widget.editTabIndex) {\n\t\tthis.domNode.setAttribute(\"tabindex\",this.widget.editTabIndex);\n\t}\n\tif(this.widget.editAutoComplete) {\n\t\tthis.domNode.setAttribute(\"autocomplete\",this.widget.editAutoComplete);\n\t}\n\tif(this.widget.isDisabled === \"yes\") {\n\t\tthis.domNode.setAttribute(\"disabled\",true);\n\t}\n\t// Add an input event handler\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"focus\", handlerObject: this, handlerMethod: \"handleFocusEvent\"},\n\t\t{name: \"input\", handlerObject: this, handlerMethod: \"handleInputEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.parentNode.insertBefore(this.domNode,this.nextSibling);\n\tthis.widget.domNodes.push(this.domNode);\n}\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nSimpleEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode || text === \"\") {\n\t\t\tthis.updateDomNodeText(text);\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nUpdate the DomNode with the new text\n*/\nSimpleEngine.prototype.updateDomNodeText = function(text) {\n\tthis.domNode.value = text;\n};\n\n/*\nGet the text of the engine\n*/\nSimpleEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nSimpleEngine.prototype.fixHeight = function() {\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\t$tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nSimpleEngine.prototype.focus  = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nSimpleEngine.prototype.handleInputEvent = function(event) {\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\tif(this.widget.editInputActions) {\n\t\tthis.widget.invokeActionString(this.widget.editInputActions);\n\t}\n\treturn true;\n};\n\n/*\nHandle a dom \"focus\" event\n*/\nSimpleEngine.prototype.handleFocusEvent = function(event) {\n\tif(this.widget.editCancelPopups) {\n\t\t$tw.popup.cancel(0);\n\t}\n\tif(this.widget.editFocusPopup) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNode,\n\t\t\ttitle: this.widget.editFocusPopup,\n\t\t\twiki: this.widget.wiki,\n\t\t\tforce: true\n\t\t});\n\t}\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nSimpleEngine.prototype.createTextOperation = function() {\n\treturn null;\n};\n\n/*\nExecute a text operation\n*/\nSimpleEngine.prototype.executeTextOperation = function(operation) {\n};\n\nexports.SimpleEngine = SimpleEngine;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/editor/factory.js": {
            "title": "$:/core/modules/editor/factory.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/factory.js\ntype: application/javascript\nmodule-type: library\n\nFactory for constructing text editor widgets with specified engines for the toolbar and non-toolbar cases\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DEFAULT_MIN_TEXT_AREA_HEIGHT = \"100px\"; // Minimum height of textareas in pixels\n\n// Configuration tiddlers\nvar HEIGHT_MODE_TITLE = \"$:/config/TextEditor/EditorHeight/Mode\";\nvar ENABLE_TOOLBAR_TITLE = \"$:/config/TextEditor/EnableToolbar\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nfunction editTextWidgetFactory(toolbarEngine,nonToolbarEngine) {\n\n\tvar EditTextWidget = function(parseTreeNode,options) {\n\t\t// Initialise the editor operations if they've not been done already\n\t\tif(!this.editorOperations) {\n\t\t\tEditTextWidget.prototype.editorOperations = {};\n\t\t\t$tw.modules.applyMethods(\"texteditoroperation\",this.editorOperations);\n\t\t}\n\t\tthis.initialise(parseTreeNode,options);\n\t};\n\n\t/*\n\tInherit from the base widget class\n\t*/\n\tEditTextWidget.prototype = new Widget();\n\n\t/*\n\tRender this widget into the DOM\n\t*/\n\tEditTextWidget.prototype.render = function(parent,nextSibling) {\n\t\t// Save the parent dom node\n\t\tthis.parentDomNode = parent;\n\t\t// Compute our attributes\n\t\tthis.computeAttributes();\n\t\t// Execute our logic\n\t\tthis.execute();\n\t\t// Create the wrapper for the toolbar and render its content\n\t\tif(this.editShowToolbar) {\n\t\t\tthis.toolbarNode = this.document.createElement(\"div\");\n\t\t\tthis.toolbarNode.className = \"tc-editor-toolbar\";\n\t\t\tparent.insertBefore(this.toolbarNode,nextSibling);\n\t\t\tthis.renderChildren(this.toolbarNode,null);\n\t\t\tthis.domNodes.push(this.toolbarNode);\n\t\t}\n\t\t// Create our element\n\t\tvar editInfo = this.getEditInfo(),\n\t\t\tEngine = this.editShowToolbar ? toolbarEngine : nonToolbarEngine;\n\t\tthis.engine = new Engine({\n\t\t\t\twidget: this,\n\t\t\t\tvalue: editInfo.value,\n\t\t\t\ttype: editInfo.type,\n\t\t\t\tparentNode: parent,\n\t\t\t\tnextSibling: nextSibling\n\t\t\t});\n\t\t// Call the postRender hook\n\t\tif(this.postRender) {\n\t\t\tthis.postRender();\n\t\t}\n\t\t// Fix height\n\t\tthis.engine.fixHeight();\n\t\t// Focus if required\n\t\tif(this.editFocus === \"true\" || this.editFocus === \"yes\") {\n\t\t\tthis.engine.focus();\n\t\t}\n\t\t// Add widget message listeners\n\t\tthis.addEventListeners([\n\t\t\t{type: \"tm-edit-text-operation\", handler: \"handleEditTextOperationMessage\"}\n\t\t]);\n\t};\n\n\t/*\n\tGet the tiddler being edited and current value\n\t*/\n\tEditTextWidget.prototype.getEditInfo = function() {\n\t\t// Get the edit value\n\t\tvar self = this,\n\t\t\tvalue,\n\t\t\ttype = \"text/plain\",\n\t\t\tupdate;\n\t\tif(this.editIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(this.editTitle,this.editIndex,this.editDefault);\n\t\t\tupdate = function(value) {\n\t\t\t\tvar data = self.wiki.getTiddlerData(self.editTitle,{});\n\t\t\t\tif(data[self.editIndex] !== value) {\n\t\t\t\t\tdata[self.editIndex] = value;\n\t\t\t\t\tself.wiki.setTiddlerData(self.editTitle,data);\n\t\t\t\t}\n\t\t\t};\n\t\t} else {\n\t\t\t// Get the current tiddler and the field name\n\t\t\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\t\t\tif(tiddler) {\n\t\t\t\t// If we've got a tiddler, the value to display is the field string value\n\t\t\t\tvalue = tiddler.getFieldString(this.editField);\n\t\t\t\tif(this.editField === \"text\") {\n\t\t\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\";\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise, we need to construct a default value for the editor\n\t\t\t\tswitch(this.editField) {\n\t\t\t\t\tcase \"text\":\n\t\t\t\t\t\tvalue = \"Type the text for the tiddler '\" + this.editTitle + \"'\";\n\t\t\t\t\t\ttype = \"text/vnd.tiddlywiki\";\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"title\":\n\t\t\t\t\t\tvalue = this.editTitle;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tvalue = \"\";\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif(this.editDefault !== undefined) {\n\t\t\t\t\tvalue = this.editDefault;\n\t\t\t\t}\n\t\t\t}\n\t\t\tupdate = function(value) {\n\t\t\t\tvar tiddler = self.wiki.getTiddler(self.editTitle),\n\t\t\t\t\tupdateFields = {\n\t\t\t\t\t\ttitle: self.editTitle\n\t\t\t\t\t};\n\t\t\t\tupdateFields[self.editField] = value;\n\t\t\t\tself.wiki.addTiddler(new $tw.Tiddler(self.wiki.getCreationFields(),tiddler,updateFields,self.wiki.getModificationFields()));\n\t\t\t};\n\t\t}\n\t\tif(this.editType) {\n\t\t\ttype = this.editType;\n\t\t}\n\t\treturn {value: value || \"\", type: type, update: update};\n\t};\n\n\t/*\n\tHandle an edit text operation message from the toolbar\n\t*/\n\tEditTextWidget.prototype.handleEditTextOperationMessage = function(event) {\n\t\t// Prepare information about the operation\n\t\tvar operation = this.engine.createTextOperation();\n\t\t// Invoke the handler for the selected operation\n\t\tvar handler = this.editorOperations[event.param];\n\t\tif(handler) {\n\t\t\thandler.call(this,event,operation);\n\t\t}\n\t\t// Execute the operation via the engine\n\t\tvar newText = this.engine.executeTextOperation(operation);\n\t\t// Fix the tiddler height and save changes\n\t\tthis.engine.fixHeight();\n\t\tthis.saveChanges(newText);\n\t};\n\n\t/*\n\tCompute the internal state of the widget\n\t*/\n\tEditTextWidget.prototype.execute = function() {\n\t\t// Get our parameters\n\t\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t\tthis.editField = this.getAttribute(\"field\",\"text\");\n\t\tthis.editIndex = this.getAttribute(\"index\");\n\t\tthis.editDefault = this.getAttribute(\"default\");\n\t\tthis.editClass = this.getAttribute(\"class\");\n\t\tthis.editPlaceholder = this.getAttribute(\"placeholder\");\n\t\tthis.editSize = this.getAttribute(\"size\");\n\t\tthis.editRows = this.getAttribute(\"rows\");\n\t\tthis.editAutoHeight = this.wiki.getTiddlerText(HEIGHT_MODE_TITLE,\"auto\");\n\t\tthis.editAutoHeight = this.getAttribute(\"autoHeight\",this.editAutoHeight === \"auto\" ? \"yes\" : \"no\") === \"yes\";\n\t\tthis.editMinHeight = this.getAttribute(\"minHeight\",DEFAULT_MIN_TEXT_AREA_HEIGHT);\n\t\tthis.editFocusPopup = this.getAttribute(\"focusPopup\");\n\t\tthis.editFocus = this.getAttribute(\"focus\");\n\t\tthis.editTabIndex = this.getAttribute(\"tabindex\");\n\t\tthis.editCancelPopups = this.getAttribute(\"cancelPopups\",\"\") === \"yes\";\n\t\tthis.editInputActions = this.getAttribute(\"inputActions\");\n\t\tthis.editRefreshTitle = this.getAttribute(\"refreshTitle\");\n\t\tthis.editAutoComplete = this.getAttribute(\"autocomplete\");\n\t\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t\t// Get the default editor element tag and type\n\t\tvar tag,type;\n\t\tif(this.editField === \"text\") {\n\t\t\ttag = \"textarea\";\n\t\t} else {\n\t\t\ttag = \"input\";\n\t\t\tvar fieldModule = $tw.Tiddler.fieldModules[this.editField];\n\t\t\tif(fieldModule && fieldModule.editTag) {\n\t\t\t\ttag = fieldModule.editTag;\n\t\t\t}\n\t\t\tif(fieldModule && fieldModule.editType) {\n\t\t\t\ttype = fieldModule.editType;\n\t\t\t}\n\t\t\ttype = type || \"text\";\n\t\t}\n\t\t// Get the rest of our parameters\n\t\tthis.editTag = this.getAttribute(\"tag\",tag) || \"input\";\n\t\tthis.editType = this.getAttribute(\"type\",type);\n\t\t// Make the child widgets\n\t\tthis.makeChildWidgets();\n\t\t// Determine whether to show the toolbar\n\t\tthis.editShowToolbar = this.wiki.getTiddlerText(ENABLE_TOOLBAR_TITLE,\"yes\");\n\t\tthis.editShowToolbar = (this.editShowToolbar === \"yes\") && !!(this.children && this.children.length > 0) && (!this.document.isTiddlyWikiFakeDom);\n\t};\n\n\t/*\n\tSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n\t*/\n\tEditTextWidget.prototype.refresh = function(changedTiddlers) {\n\t\tvar changedAttributes = this.computeAttributes();\n\t\t// Completely rerender if any of our attributes have changed\n\t\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.placeholder || changedAttributes.size || changedAttributes.autoHeight || changedAttributes.minHeight || changedAttributes.focusPopup ||  changedAttributes.rows || changedAttributes.tabindex || changedAttributes.cancelPopups || changedAttributes.inputActions || changedAttributes.refreshTitle || changedAttributes.autocomplete || changedTiddlers[HEIGHT_MODE_TITLE] || changedTiddlers[ENABLE_TOOLBAR_TITLE] || changedAttributes.disabled) {\n\t\t\tthis.refreshSelf();\n\t\t\treturn true;\n\t\t} else if (changedTiddlers[this.editRefreshTitle]) {\n\t\t\tthis.engine.updateDomNodeText(this.getEditInfo().value);\n\t\t} else if(changedTiddlers[this.editTitle]) {\n\t\t\tvar editInfo = this.getEditInfo();\n\t\t\tthis.updateEditor(editInfo.value,editInfo.type);\n\t\t}\n\t\tthis.engine.fixHeight();\n\t\tif(this.editShowToolbar) {\n\t\t\treturn this.refreshChildren(changedTiddlers);\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\t/*\n\tUpdate the editor with new text. This method is separate from updateEditorDomNode()\n\tso that subclasses can override updateEditor() and still use updateEditorDomNode()\n\t*/\n\tEditTextWidget.prototype.updateEditor = function(text,type) {\n\t\tthis.updateEditorDomNode(text,type);\n\t};\n\n\t/*\n\tUpdate the editor dom node with new text\n\t*/\n\tEditTextWidget.prototype.updateEditorDomNode = function(text,type) {\n\t\tthis.engine.setText(text,type);\n\t};\n\n\t/*\n\tSave changes back to the tiddler store\n\t*/\n\tEditTextWidget.prototype.saveChanges = function(text) {\n\t\tvar editInfo = this.getEditInfo();\n\t\tif(text !== editInfo.value) {\n\t\t\teditInfo.update(text);\n\t\t}\n\t};\n\n\t/*\n\tHandle a dom \"keydown\" event, which we'll bubble up to our container for the keyboard widgets benefit\n\t*/\n\tEditTextWidget.prototype.handleKeydownEvent = function(event) {\n\t\t// Check for a keyboard shortcut\n\t\tif(this.toolbarNode) {\n\t\t\tvar shortcutElements = this.toolbarNode.querySelectorAll(\"[data-tw-keyboard-shortcut]\");\n\t\t\tfor(var index=0; index<shortcutElements.length; index++) {\n\t\t\t\tvar el = shortcutElements[index],\n\t\t\t\t\tshortcutData = el.getAttribute(\"data-tw-keyboard-shortcut\"),\n\t\t\t\t\tkeyInfoArray = $tw.keyboardManager.parseKeyDescriptors(shortcutData,{\n\t\t\t\t\t\twiki: this.wiki\n\t\t\t\t\t});\n\t\t\t\tif($tw.keyboardManager.checkKeyDescriptors(event,keyInfoArray)) {\n\t\t\t\t\tvar clickEvent = this.document.createEvent(\"Events\");\n\t\t\t\t    clickEvent.initEvent(\"click\",true,false);\n\t\t\t\t    el.dispatchEvent(clickEvent);\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t// Propogate the event to the container\n\t\tif(this.propogateKeydownEvent(event)) {\n\t\t\t// Ignore the keydown if it was already handled\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\treturn true;\n\t\t}\n\t\t// Otherwise, process the keydown normally\n\t\treturn false;\n\t};\n\n\t/*\n\tPropogate keydown events to our container for the keyboard widgets benefit\n\t*/\n\tEditTextWidget.prototype.propogateKeydownEvent = function(event) {\n\t\tvar newEvent = this.document.createEventObject ? this.document.createEventObject() : this.document.createEvent(\"Events\");\n\t\tif(newEvent.initEvent) {\n\t\t\tnewEvent.initEvent(\"keydown\", true, true);\n\t\t}\n\t\tnewEvent.keyCode = event.keyCode;\n\t\tnewEvent.which = event.which;\n\t\tnewEvent.metaKey = event.metaKey;\n\t\tnewEvent.ctrlKey = event.ctrlKey;\n\t\tnewEvent.altKey = event.altKey;\n\t\tnewEvent.shiftKey = event.shiftKey;\n\t\treturn !this.parentDomNode.dispatchEvent(newEvent);\n\t};\n\n\treturn EditTextWidget;\n\n}\n\nexports.editTextWidgetFactory = editTextWidgetFactory;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/editor/operations/bitmap/clear.js": {
            "title": "$:/core/modules/editor/operations/bitmap/clear.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/clear.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to clear the image\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"clear\"] = function(event) {\n\tvar ctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.globalAlpha = 1;\n\tctx.fillStyle = event.paramObject.colour || \"white\";\n\tctx.fillRect(0,0,this.canvasDomNode.width,this.canvasDomNode.height);\n\t// Save changes\n\tthis.strokeEnd();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "bitmapeditoroperation"
        },
        "$:/core/modules/editor/operations/bitmap/resize.js": {
            "title": "$:/core/modules/editor/operations/bitmap/resize.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/resize.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to resize the image\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"resize\"] = function(event) {\n\t// Get the new width\n\tvar newWidth = parseInt(event.paramObject.width || this.canvasDomNode.width,10),\n\t\tnewHeight = parseInt(event.paramObject.height || this.canvasDomNode.height,10);\n\t// Update if necessary\n\tif(newWidth > 0 && newHeight > 0 && !(newWidth === this.currCanvas.width && newHeight === this.currCanvas.height)) {\n\t\tthis.changeCanvasSize(newWidth,newHeight);\n\t}\n\t// Update the input controls\n\tthis.refreshToolbar();\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "bitmapeditoroperation"
        },
        "$:/core/modules/editor/operations/bitmap/rotate-left.js": {
            "title": "$:/core/modules/editor/operations/bitmap/rotate-left.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/rotate-left.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to rotate the image left by 90 degrees\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"rotate-left\"] = function(event) {\n\t// Rotate the canvas left by 90 degrees\n\tthis.rotateCanvasLeft();\n\t// Update the input controls\n\tthis.refreshToolbar();\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "bitmapeditoroperation"
        },
        "$:/core/modules/editor/operations/text/excise.js": {
            "title": "$:/core/modules/editor/operations/text/excise.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/excise.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to excise the selection to a new tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"excise\"] = function(event,operation) {\n\tvar editTiddler = this.wiki.getTiddler(this.editTitle),\n\t\teditTiddlerTitle = this.editTitle;\n\tif(editTiddler && editTiddler.fields[\"draft.of\"]) {\n\t\teditTiddlerTitle = editTiddler.fields[\"draft.of\"];\n\t}\n\tvar excisionTitle = event.paramObject.title || this.wiki.generateNewTitle(\"New Excision\");\n\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\tthis.wiki.getCreationFields(),\n\t\tthis.wiki.getModificationFields(),\n\t\t{\n\t\t\ttitle: excisionTitle,\n\t\t\ttext: operation.selection,\n\t\t\ttags: event.paramObject.tagnew === \"yes\" ?  [editTiddlerTitle] : []\n\t\t}\n\t));\n\toperation.replacement = excisionTitle;\n\tswitch(event.paramObject.type || \"transclude\") {\n\t\tcase \"transclude\":\n\t\t\toperation.replacement = \"{{\" + operation.replacement+ \"}}\";\n\t\t\tbreak;\n\t\tcase \"link\":\n\t\t\toperation.replacement = \"[[\" + operation.replacement+ \"]]\";\n\t\t\tbreak;\n\t\tcase \"macro\":\n\t\t\toperation.replacement = \"<<\" + (event.paramObject.macro || \"translink\") + \" \\\"\\\"\\\"\" + operation.replacement + \"\\\"\\\"\\\">>\";\n\t\t\tbreak;\n\t}\n\toperation.cutStart = operation.selStart;\n\toperation.cutEnd = operation.selEnd;\n\toperation.newSelStart = operation.selStart;\n\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/make-link.js": {
            "title": "$:/core/modules/editor/operations/text/make-link.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/make-link.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to make a link\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"make-link\"] = function(event,operation) {\n\tif(operation.selection) {\n\t\toperation.replacement = \"[[\" + operation.selection + \"|\" + event.paramObject.text + \"]]\";\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t} else {\n\t\toperation.replacement = \"[[\" + event.paramObject.text + \"]]\";\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t}\n\toperation.newSelStart = operation.selStart + operation.replacement.length;\n\toperation.newSelEnd = operation.newSelStart;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/prefix-lines.js": {
            "title": "$:/core/modules/editor/operations/text/prefix-lines.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/prefix-lines.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to add a prefix to the selected lines\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"prefix-lines\"] = function(event,operation) {\n\tvar targetCount = parseInt(event.paramObject.count + \"\",10);\n\t// Cut just past the preceding line break, or the start of the text\n\toperation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart);\n\t// Cut to just past the following line break, or to the end of the text\n\toperation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd);\n\t// Compose the required prefix\n\tvar prefix = $tw.utils.repeat(event.paramObject.character,targetCount);\n\t// Process each line\n\tvar lines = operation.text.substring(operation.cutStart,operation.cutEnd).split(/\\r?\\n/mg);\n\t$tw.utils.each(lines,function(line,index) {\n\t\t// Remove and count any existing prefix characters\n\t\tvar count = 0;\n\t\twhile(line.charAt(0) === event.paramObject.character) {\n\t\t\tline = line.substring(1);\n\t\t\tcount++;\n\t\t}\n\t\t// Remove any whitespace\n\t\twhile(line.charAt(0) === \" \") {\n\t\t\tline = line.substring(1);\n\t\t}\n\t\t// We're done if we removed the exact required prefix, otherwise add it\n\t\tif(count !== targetCount) {\n\t\t\t// Apply the prefix\n\t\t\tline =  prefix + \" \" + line;\n\t\t}\n\t\t// Save the modified line\n\t\tlines[index] = line;\n\t});\n\t// Stitch the replacement text together and set the selection\n\toperation.replacement = lines.join(\"\\n\");\n\tif(lines.length === 1) {\n\t\toperation.newSelStart = operation.cutStart + operation.replacement.length;\n\t\toperation.newSelEnd = operation.newSelStart;\n\t} else {\n\t\toperation.newSelStart = operation.cutStart;\n\t\toperation.newSelEnd = operation.newSelStart + operation.replacement.length;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/replace-all.js": {
            "title": "$:/core/modules/editor/operations/text/replace-all.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/replace-all.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to replace the entire text\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"replace-all\"] = function(event,operation) {\n\toperation.cutStart = 0;\n\toperation.cutEnd = operation.text.length;\n\toperation.replacement = event.paramObject.text;\n\toperation.newSelStart = 0;\n\toperation.newSelEnd = operation.replacement.length;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/replace-selection.js": {
            "title": "$:/core/modules/editor/operations/text/replace-selection.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/replace-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to replace the selection\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"replace-selection\"] = function(event,operation) {\n\toperation.replacement = event.paramObject.text;\n\toperation.cutStart = operation.selStart;\n\toperation.cutEnd = operation.selEnd;\n\toperation.newSelStart = operation.selStart;\n\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/save-selection.js": {
            "title": "$:/core/modules/editor/operations/text/save-selection.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/save-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to save the current selection in a specified tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"save-selection\"] = function(event,operation) {\n\tvar tiddler = event.paramObject.tiddler,\n\t\tfield = event.paramObject.field || \"text\";\n\tif(tiddler && field) {\n\t\tthis.wiki.setText(tiddler,field,null,operation.text.substring(operation.selStart,operation.selEnd));\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/wrap-lines.js": {
            "title": "$:/core/modules/editor/operations/text/wrap-lines.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/wrap-lines.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to wrap the selected lines with a prefix and suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"wrap-lines\"] = function(event,operation) {\n\t// Cut just past the preceding line break, or the start of the text\n\toperation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart);\n\t// Cut to just past the following line break, or to the end of the text\n\toperation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd);\n\t// Add the prefix and suffix\n\toperation.replacement = event.paramObject.prefix + \"\\n\" +\n\t\t\t\toperation.text.substring(operation.cutStart,operation.cutEnd) + \"\\n\" +\n\t\t\t\tevent.paramObject.suffix + \"\\n\";\n\toperation.newSelStart = operation.cutStart + event.paramObject.prefix.length + 1;\n\toperation.newSelEnd = operation.newSelStart + (operation.cutEnd - operation.cutStart);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/wrap-selection.js": {
            "title": "$:/core/modules/editor/operations/text/wrap-selection.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/wrap-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to wrap the selection with the specified prefix and suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"wrap-selection\"] = function(event,operation) {\n\tif(operation.selStart === operation.selEnd) {\n\t\t// No selection; check if we're within the prefix/suffix\n\t\tif(operation.text.substring(operation.selStart - event.paramObject.prefix.length,operation.selStart + event.paramObject.suffix.length) === event.paramObject.prefix + event.paramObject.suffix) {\n\t\t\t// Remove the prefix and suffix\n\t\t\toperation.cutStart = operation.selStart - event.paramObject.prefix.length;\n\t\t\toperation.cutEnd = operation.selEnd + event.paramObject.suffix.length;\n\t\t\toperation.replacement = \"\";\n\t\t\toperation.newSelStart = operation.cutStart;\n\t\t\toperation.newSelEnd = operation.newSelStart;\n\t\t} else {\n\t\t\t// Wrap the cursor instead\n\t\t\toperation.cutStart = operation.selStart;\n\t\t\toperation.cutEnd = operation.selEnd;\n\t\t\toperation.replacement = event.paramObject.prefix + event.paramObject.suffix;\n\t\t\toperation.newSelStart = operation.selStart + event.paramObject.prefix.length;\n\t\t\toperation.newSelEnd = operation.newSelStart;\n\t\t}\n\t} else if(operation.text.substring(operation.selStart,operation.selStart + event.paramObject.prefix.length) === event.paramObject.prefix && operation.text.substring(operation.selEnd - event.paramObject.suffix.length,operation.selEnd) === event.paramObject.suffix) {\n\t\t// Prefix and suffix are already present, so remove them\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t\toperation.replacement = operation.selection.substring(event.paramObject.prefix.length,operation.selection.length - event.paramObject.suffix.length);\n\t\toperation.newSelStart = operation.selStart;\n\t\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n\t} else {\n\t\t// Add the prefix and suffix\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t\toperation.replacement = event.paramObject.prefix + operation.selection + event.paramObject.suffix;\n\t\toperation.newSelStart = operation.selStart;\n\t\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/filterrunprefixes/all.js": {
            "title": "$:/core/modules/filterrunprefixes/all.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/all.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nUnion of sets without de-duplication.\nEquivalent to = filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.all = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tresults.push.apply(results, operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/and.js": {
            "title": "$:/core/modules/filterrunprefixes/and.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/and.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nIntersection of sets.\nEquivalent to + filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.and = function(operationSubFunction,options) {\n\treturn function(results,source,widget) {\n\t\t// This replaces all the elements of the array, but keeps the actual array so that references to it are preserved\n\t\tsource = options.wiki.makeTiddlerIterator(results.toArray());\n\t\tresults.clear();\n\t\tresults.pushTop(operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/else.js": {
            "title": "$:/core/modules/filterrunprefixes/else.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/else.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nEquivalent to ~ filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.else = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tif(results.length === 0) {\n\t\t\t// Main result so far is empty\n\t\t\tresults.pushTop(operationSubFunction(source,widget));\n\t\t}\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/except.js": {
            "title": "$:/core/modules/filterrunprefixes/except.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/except.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nDifference of sets.\nEquivalent to - filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.except = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tresults.remove(operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/filter.js": {
            "title": "$:/core/modules/filterrunprefixes/filter.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/filter.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.filter = function(operationSubFunction,options) {\n\treturn function(results,source,widget) {\n\t\tif(results.length > 0) {\n\t\t\tvar resultsToRemove = [];\n\t\t\tresults.each(function(result) {\n\t\t\t\tvar filtered = operationSubFunction(options.wiki.makeTiddlerIterator([result]),widget);\n\t\t\t\tif(filtered.length === 0) {\n\t\t\t\t\tresultsToRemove.push(result);\n\t\t\t\t}\n\t\t\t});\n\t\t\tresults.remove(resultsToRemove);\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/intersection.js": {
            "title": "$:/core/modules/filterrunprefixes/intersection.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/intersection.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.intersection = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tif(results.length !== 0) {\n\t\t\tvar secondRunResults = operationSubFunction(source,widget);\n\t\t\tvar firstRunResults = results.toArray();\n\t\t\tresults.clear();\n\t\t\t$tw.utils.each(firstRunResults,function(title) {\n\t\t\t\tif(secondRunResults.indexOf(title) !== -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/or.js": {
            "title": "$:/core/modules/filterrunprefixes/or.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/or.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nEquivalent to a filter run with no prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.or = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tresults.pushTop(operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/reduce.js": {
            "title": "$:/core/modules/filterrunprefixes/reduce.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/reduce.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.reduce = function(operationSubFunction,options) {\n\treturn function(results,source,widget) {\n\t\tif(results.length > 0) {\n\t\t\tvar accumulator = \"\";\n\t\t\tvar index = 0;\n\t\t\tresults.each(function(title) {\n\t\t\t\tvar list = operationSubFunction(options.wiki.makeTiddlerIterator([title]),{\n\t\t\t\t\t\tgetVariable: function(name) {\n\t\t\t\t\t\t\tswitch(name) {\n\t\t\t\t\t\t\t\tcase \"currentTiddler\":\n\t\t\t\t\t\t\t\t\treturn \"\" + title;\n\t\t\t\t\t\t\t\tcase \"accumulator\":\n\t\t\t\t\t\t\t\t\treturn \"\" + accumulator;\n\t\t\t\t\t\t\t\tcase \"index\":\n\t\t\t\t\t\t\t\t\treturn \"\" + index;\n\t\t\t\t\t\t\t\tcase \"revIndex\":\n\t\t\t\t\t\t\t\t\treturn \"\" +  (results.length - 1 - index);\n\t\t\t\t\t\t\t\tcase \"length\":\n\t\t\t\t\t\t\t\t\treturn \"\" + results.length;\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn widget.getVariable(name);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\tif(list.length > 0) {\n\t\t\t\t\taccumulator = \"\" + list[0];\n\t\t\t\t}\n\t\t\t\t++index;\n\t\t\t});\n\t\t\tresults.clear();\n\t\t\tresults.push(accumulator);\t\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filters/addprefix.js": {
            "title": "$:/core/modules/filters/addprefix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/addprefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for adding a prefix to each title in the list. This is\nespecially useful in contexts where only a filter expression is allowed\nand macro substitution isn't available.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.addprefix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(operator.operand + title);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/addsuffix.js": {
            "title": "$:/core/modules/filters/addsuffix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/addsuffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for adding a suffix to each title in the list. This is\nespecially useful in contexts where only a filter expression is allowed\nand macro substitution isn't available.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.addsuffix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title + operator.operand);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/after.js": {
            "title": "$:/core/modules/filters/after.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/after.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler from the current list that is after the tiddler named in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.after = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar index = results.indexOf(operator.operand);\n\tif(index === -1 || index > (results.length - 2)) {\n\t\treturn [];\n\t} else {\n\t\treturn [results[index + 1]];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/all/current.js": {
            "title": "$:/core/modules/filters/all/current.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/current.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[current]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.current = function(source,prefix,options) {\n\tvar currTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\");\n\tif(currTiddlerTitle) {\n\t\treturn [currTiddlerTitle];\n\t} else {\n\t\treturn [];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/missing.js": {
            "title": "$:/core/modules/filters/all/missing.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/missing.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[missing]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.missing = function(source,prefix,options) {\n\treturn options.wiki.getMissingTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/orphans.js": {
            "title": "$:/core/modules/filters/all/orphans.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/orphans.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[orphans]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.orphans = function(source,prefix,options) {\n\treturn options.wiki.getOrphanTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/shadows.js": {
            "title": "$:/core/modules/filters/all/shadows.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/shadows.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[shadows]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadows = function(source,prefix,options) {\n\treturn options.wiki.allShadowTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/tags.js": {
            "title": "$:/core/modules/filters/all/tags.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/tags.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[tags]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tags = function(source,prefix,options) {\n\treturn Object.keys(options.wiki.getTagMap());\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/tiddlers.js": {
            "title": "$:/core/modules/filters/all/tiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/tiddlers.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[tiddlers]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tiddlers = function(source,prefix,options) {\n\treturn options.wiki.allTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all.js": {
            "title": "$:/core/modules/filters/all.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for selecting tiddlers\n\n[all[shadows+tiddlers]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar allFilterOperators;\n\nfunction getAllFilterOperators() {\n\tif(!allFilterOperators) {\n\t\tallFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"allfilteroperator\",allFilterOperators);\n\t}\n\treturn allFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.all = function(source,operator,options) {\n\t// Get our suboperators\n\tvar allFilterOperators = getAllFilterOperators();\n\t// Cycle through the suboperators accumulating their results\n\tvar results = [],\n\t\tsubops = operator.operand.split(\"+\");\n\t// Check for common optimisations\n\tif(subops.length === 1 && subops[0] === \"\") {\n\t\treturn source;\n\t} else if(subops.length === 1 && subops[0] === \"tiddlers\") {\n\t\treturn options.wiki.each;\n\t} else if(subops.length === 1 && subops[0] === \"shadows\") {\n\t\treturn options.wiki.eachShadow;\n\t} else if(subops.length === 2 && subops[0] === \"tiddlers\" && subops[1] === \"shadows\") {\n\t\treturn options.wiki.eachTiddlerPlusShadows;\n\t} else if(subops.length === 2 && subops[0] === \"shadows\" && subops[1] === \"tiddlers\") {\n\t\treturn options.wiki.eachShadowPlusTiddlers;\n\t}\n\t// Do it the hard way\n\tfor(var t=0; t<subops.length; t++) {\n\t\tvar subop = allFilterOperators[subops[t]];\n\t\tif(subop) {\n\t\t\t$tw.utils.pushTop(results,subop(source,operator.prefix,options));\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/backlinks.js": {
            "title": "$:/core/modules/filters/backlinks.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/backlinks.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning all the backlinks from a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.backlinks = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlerBacklinks(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/before.js": {
            "title": "$:/core/modules/filters/before.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/before.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler from the current list that is before the tiddler named in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.before = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar index = results.indexOf(operator.operand);\n\tif(index <= 0) {\n\t\treturn [];\n\t} else {\n\t\treturn [results[index - 1]];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/commands.js": {
            "title": "$:/core/modules/filters/commands.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/commands.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the commands available in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.commands = function(source,operator,options) {\n\tvar results = [];\n\t$tw.utils.each($tw.commands,function(commandInfo,name) {\n\t\tresults.push(name);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/compare.js": {
            "title": "$:/core/modules/filters/compare.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/compare.js\ntype: application/javascript\nmodule-type: filteroperator\n\nGeneral purpose comparison operator\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.compare = function(source,operator,options) {\n\tvar suffixes = operator.suffixes || [],\n\t\ttype = (suffixes[0] || [])[0],\n\t\tmode = (suffixes[1] || [])[0],\n\t\ttypeFn = $tw.utils.makeCompareFunction(type,{defaultType: \"number\"}),\n\t\tmodeFn = modes[mode] || modes.eq,\n\t\tinvert = operator.prefix === \"!\",\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tif(modeFn(typeFn(title,operator.operand)) !== invert) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\nvar modes = {\n\t\"eq\": function(value) {return value === 0;},\n\t\"ne\": function(value) {return value !== 0;},\n\t\"gteq\": function(value) {return value >= 0;},\n\t\"gt\": function(value) {return value > 0;},\n\t\"lteq\": function(value) {return value <= 0;},\n\t\"lt\": function(value) {return value < 0;}\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/contains.js": {
            "title": "$:/core/modules/filters/contains.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/contains.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for finding values in array fields\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.contains = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldname = (operator.suffix || \"list\").toLowerCase();\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\tvar list = tiddler.getFieldList(fieldname);\n\t\t\t\tif(list.indexOf(operator.operand) === -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\tvar list = tiddler.getFieldList(fieldname);\n\t\t\t\tif(list.indexOf(operator.operand) !== -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/count.js": {
            "title": "$:/core/modules/filters/count.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/count.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the number of entries in the current list.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.count = function(source,operator,options) {\n\tvar count = 0;\n\tsource(function(tiddler,title) {\n\t\tcount++;\n\t});\n\treturn [count + \"\"];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/days.js": {
            "title": "$:/core/modules/filters/days.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/days.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects tiddlers with a specified date field within a specified date interval.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.days = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName = operator.suffix || \"modified\",\n\t\tdayInterval = (parseInt(operator.operand,10)||0),\n\t\tdayIntervalSign = $tw.utils.sign(dayInterval),\n\t\ttargetTimeStamp = (new Date()).setHours(0,0,0,0) + 1000*60*60*24*dayInterval,\n\t\tisWithinDays = function(dateField) {\n\t\t\tvar sign = $tw.utils.sign(targetTimeStamp - (new Date(dateField)).setHours(0,0,0,0));\n\t\t\treturn sign === 0 || sign === dayIntervalSign;\n\t\t};\n\n\tif(operator.prefix === \"!\") {\n\t\ttargetTimeStamp = targetTimeStamp - 1000*60*60*24*dayIntervalSign;\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\t\tif(!isWithinDays($tw.utils.parseDate(tiddler.fields[fieldName]))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\t\tif(isWithinDays($tw.utils.parseDate(tiddler.fields[fieldName]))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/duplicateslugs.js": {
            "title": "$:/core/modules/filters/duplicateslugs.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/duplicateslugs.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter function for [duplicateslugs[]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.duplicateslugs = function(source,operator,options) {\n\tvar slugs = Object.create(null), // Hashmap by slug of title, replaced with \"true\" if the duplicate title has already been output\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tvar slug = options.wiki.slugify(title);\n\t\tif(slug in slugs) {\n\t\t\tif(slugs[slug] !== true) {\n\t\t\t\tresults.push(slugs[slug]);\n\t\t\t\tslugs[slug] = true;\n\t\t\t}\n\t\t\tresults.push(title);\n\t\t} else {\n\t\t\tslugs[slug] = title;\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/each.js": {
            "title": "$:/core/modules/filters/each.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/each.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects one tiddler for each unique value of the specified field.\nWith suffix \"list\", selects all tiddlers that are values in a specified list field.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.each = function(source,operator,options) {\n\tvar results =[] ,\n\tvalue,values = {},\n\tfield = operator.operand || \"title\";\n\tif(operator.suffix === \"value\" && field === \"title\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!$tw.utils.hop(values,title)) {\n\t\t\t\tvalues[title] = true;\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else if(operator.suffix !== \"list-item\") {\n\t\tif(field === \"title\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && !$tw.utils.hop(values,title)) {\n\t\t\t\t\tvalues[title] = true;\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvalue = tiddler.getFieldString(field);\n\t\t\t\t\tif(!$tw.utils.hop(values,value)) {\n\t\t\t\t\t\tvalues[value] = true;\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\t$tw.utils.each(\n\t\t\t\t\toptions.wiki.getTiddlerList(title,field),\n\t\t\t\t\tfunction(value) {\n\t\t\t\t\t\tif(!$tw.utils.hop(values,value)) {\n\t\t\t\t\t\t\tvalues[value] = true;\n\t\t\t\t\t\t\tresults.push(value);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/eachday.js": {
            "title": "$:/core/modules/filters/eachday.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/eachday.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects one tiddler for each unique day covered by the specified date field\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.eachday = function(source,operator,options) {\n\tvar results = [],\n\t\tvalues = [],\n\t\tfieldName = operator.operand || \"modified\";\n\t// Function to convert a date/time to a date integer\n\tvar toDate = function(value) {\n\t\tvalue = (new Date(value)).setHours(0,0,0,0);\n\t\treturn value+0;\n\t};\n\tsource(function(tiddler,title) {\n\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\tvar value = toDate($tw.utils.parseDate(tiddler.fields[fieldName]));\n\t\t\tif(values.indexOf(value) === -1) {\n\t\t\t\tvalues.push(value);\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/editiondescription.js": {
            "title": "$:/core/modules/filters/editiondescription.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/editiondescription.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the descriptions of the specified edition names\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.editiondescription = function(source,operator,options) {\n\tvar results = [];\n\tif($tw.node) {\n\t\tvar editionInfo = $tw.utils.getEditionInfo();\n\t\tif(editionInfo) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif($tw.utils.hop(editionInfo,title)) {\n\t\t\t\t\tresults.push(editionInfo[title].description || \"\");\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/editions.js": {
            "title": "$:/core/modules/filters/editions.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/editions.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the available editions in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.editions = function(source,operator,options) {\n\tvar results = [];\n\tif($tw.node) {\n\t\tvar editionInfo = $tw.utils.getEditionInfo();\n\t\tif(editionInfo) {\n\t\t\t$tw.utils.each(editionInfo,function(info,name) {\n\t\t\t\tresults.push(name);\n\t\t\t});\n\t\t}\n\t\tresults.sort();\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/else.js": {
            "title": "$:/core/modules/filters/else.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/else.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing an empty input list with a constant, passing a non-empty input list straight through\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.else = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tif(results.length === 0) {\n\t\treturn [operator.operand];\n\t} else {\n\t\treturn results;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/decodeuricomponent.js": {
            "title": "$:/core/modules/filters/decodeuricomponent.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/decodeuricomponent.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for applying decodeURIComponent() to each item.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter functions\n*/\n\nexports.decodeuricomponent = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar value = title;\n\t\ttry {\n\t\t\tvalue = decodeURIComponent(title);\n\t\t} catch(e) {\n\t\t}\n\t\tresults.push(value);\n\t});\n\treturn results;\n};\n\nexports.encodeuricomponent = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(encodeURIComponent(title));\n\t});\n\treturn results;\n};\n\nexports.decodeuri = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar value = title;\n\t\ttry {\n\t\t\tvalue = decodeURI(title);\n\t\t} catch(e) {\n\t\t}\n\t\tresults.push(value);\n\t});\n\treturn results;\n};\n\nexports.encodeuri = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(encodeURI(title));\n\t});\n\treturn results;\n};\n\nexports.decodehtml = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.htmlDecode(title));\n\t});\n\treturn results;\n};\n\nexports.encodehtml = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.htmlEncode(title));\n\t});\n\treturn results;\n};\n\nexports.stringify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.stringify(title,(operator.suffix === \"rawunicode\")));\n\t});\n\treturn results;\n};\n\nexports.jsonstringify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.jsonStringify(title,(operator.suffix === \"rawunicode\")));\n\t});\n\treturn results;\n};\n\nexports.escaperegexp = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.escapeRegExp(title));\n\t});\n\treturn results;\n};\n\nexports.escapecss = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t// escape any character with a special meaning in CSS using CSS.escape()\n\t\tresults.push(CSS.escape(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/enlist.js": {
            "title": "$:/core/modules/filters/enlist.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/enlist.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning its operand parsed as a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.enlist = function(source,operator,options) {\n\tvar allowDuplicates = false;\n\tswitch(operator.suffix) {\n\t\tcase \"raw\":\n\t\t\tallowDuplicates = true;\n\t\t\tbreak;\n\t\tcase \"dedupe\":\n\t\t\tallowDuplicates = false;\n\t\t\tbreak;\n\t}\n\tvar list = $tw.utils.parseStringArray(operator.operand,allowDuplicates);\n\tif(operator.prefix === \"!\") {\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t\treturn results;\n\t} else {\n\t\treturn list;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/field.js": {
            "title": "$:/core/modules/filters/field.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/field.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for comparing fields for equality\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.field = function(source,operator,options) {\n\tvar results = [],indexedResults,\n\t\tfieldname = (operator.suffix || operator.operator || \"title\").toLowerCase();\n\tif(operator.prefix === \"!\") {\n\t\tif(operator.regexp) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && !operator.regexp.exec(text)) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && text !== operator.operand) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tif(operator.regexp) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && !!operator.regexp.exec(text)) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tif(source.byField && operator.operand) {\n\t\t\t\tindexedResults = source.byField(fieldname,operator.operand);\n\t\t\t\tif(indexedResults) {\n\t\t\t\t\treturn indexedResults\n\t\t\t\t}\n\t\t\t}\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && text === operator.operand) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/fields.js": {
            "title": "$:/core/modules/filters/fields.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/fields.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the fields on the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.fields = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName,\n\t\tsuffixes = (operator.suffixes || [])[0] || [],\n\t\toperand = $tw.utils.parseStringArray(operator.operand);\n\t\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tif(suffixes.indexOf(\"include\") !== -1) {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t(operand.indexOf(fieldName) !== -1) ? $tw.utils.pushTop(results,fieldName) : \"\";\n\t\t\t\t}\n\t\t\t} else if (suffixes.indexOf(\"exclude\") !== -1) {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t(operand.indexOf(fieldName) !== -1) ? \"\" : $tw.utils.pushTop(results,fieldName);\n\t\t\t\t}\n\t\t\t} // else if\n\t\t\telse {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t$tw.utils.pushTop(results,fieldName);\n\t\t\t\t}\n\t\t\t} // else\n\t\t} // if (tiddler)\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/filter.js": {
            "title": "$:/core/modules/filters/filter.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/filter.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning those input titles that pass a subfilter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.filter = function(source,operator,options) {\n\tvar filterFn = options.wiki.compileFilter(operator.operand),\n\t\tresults = [],\n\t\ttarget = operator.prefix !== \"!\";\n\tsource(function(tiddler,title) {\n\t\tvar list = filterFn.call(options.wiki,options.wiki.makeTiddlerIterator([title]));\n\t\tif((list.length > 0) === target) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/format/date.js": {
            "title": "$:/core/modules/filters/format/date.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/format/date.js\ntype: application/javascript\nmodule-type: formatfilteroperator\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.date = function(source,operand,options) {\n\tvar results = [];\t\n\tsource(function(tiddler,title) {\n\t\tvar value = $tw.utils.parseDate(title);\n\t\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\t\tresults.push($tw.utils.formatDateString(value,operand || \"YYYY MM DD 0hh:0mm\"));\n\t\t}\n\t});\t\n\treturn results;\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "formatfilteroperator"
        },
        "$:/core/modules/filters/format/relativedate.js": {
            "title": "$:/core/modules/filters/format/relativedate.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/format/relativedate.js\ntype: application/javascript\nmodule-type: formatfilteroperator\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.relativedate = function(source,operand,options) {\n\tvar results = [];\t\n\tsource(function(tiddler,title) {\n\t\tvar value = $tw.utils.parseDate(title);\n\t\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\t\tresults.push($tw.utils.getRelativeDate((new Date()) - (new Date(value))).description);\n\t\t}\n\t});\t\n\treturn results;\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "formatfilteroperator"
        },
        "$:/core/modules/filters/format.js": {
            "title": "$:/core/modules/filters/format.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/format.js\ntype: application/javascript\nmodule-type: filteroperator\nFilter operator for formatting strings\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar formatFilterOperators;\n\nfunction getFormatFilterOperators() {\n\tif(!formatFilterOperators) {\n\t\tformatFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"formatfilteroperator\",formatFilterOperators);\n\t}\n\treturn formatFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.format = function(source,operator,options) {\n\t// Dispatch to the correct formatfilteroperator\n\tvar formatFilterOperators = getFormatFilterOperators();\n\tif(operator.suffix) {\n\t\tvar formatFilterOperator = formatFilterOperators[operator.suffix];\n\t\tif(formatFilterOperator) {\n\t\t\treturn formatFilterOperator(source,operator.operand,options);\n\t\t} else {\n\t\t\treturn [$tw.language.getString(\"Error/FormatFilterOperator\")];\n\t\t}\n\t} else {\n\t\t// Return all unchanged if the suffix is missing\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t\treturn results;\n\t}\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/get.js": {
            "title": "$:/core/modules/filters/get.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/get.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing tiddler titles by the value of the field specified in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.get = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tvar value = tiddler.getFieldString(operator.operand);\n\t\t\tif(value) {\n\t\t\t\tresults.push(value);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/getindex.js": {
            "title": "$:/core/modules/filters/getindex.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/getindex.js\ntype: application/javascript\nmodule-type: filteroperator\n\nreturns the value at a given index of datatiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.getindex = function(source,operator,options) {\n\tvar data,title,results = [];\n\tif(operator.operand){\n\t\tsource(function(tiddler,title) {\n\t\t\ttitle = tiddler ? tiddler.fields.title : title;\n\t\t\tdata = options.wiki.extractTiddlerDataItem(tiddler,operator.operand);\n\t\t\tif(data) {\n\t\t\t\tresults.push(data);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/getvariable.js": {
            "title": "$:/core/modules/filters/getvariable.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/getvariable.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing input values by the value of the variable with the same name, or blank if the variable is missing\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.getvariable = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.widget.getVariable(title) || \"\");\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/has.js": {
            "title": "$:/core/modules/filters/has.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/has.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a tiddler has the specified field or index\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.has = function(source,operator,options) {\n\tvar results = [],\n\t\tinvert = operator.prefix === \"!\";\n\n\tif(operator.suffix === \"field\") {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || (tiddler && (!$tw.utils.hop(tiddler.fields,operator.operand)))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,operator.operand)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\telse if(operator.suffix === \"index\") {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || (tiddler && (!$tw.utils.hop(options.wiki.getTiddlerDataCached(tiddler,Object.create(null)),operator.operand)))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(options.wiki.getTiddlerDataCached(tiddler,Object.create(null)),operator.operand)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\telse {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || !$tw.utils.hop(tiddler.fields,operator.operand) || (tiddler.fields[operator.operand].length === 0)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,operator.operand) && (tiddler.fields[operator.operand].length !== 0)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\t\t\t\t\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/haschanged.js": {
            "title": "$:/core/modules/filters/haschanged.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/haschanged.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returns tiddlers from the list that have a non-zero changecount.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.haschanged = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.getChangeCount(title) === 0) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.getChangeCount(title) > 0) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/indexes.js": {
            "title": "$:/core/modules/filters/indexes.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/indexes.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the indexes of a data tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.indexes = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar data = options.wiki.getTiddlerDataCached(title);\n\t\tif(data) {\n\t\t\t$tw.utils.pushTop(results,Object.keys(data));\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/insertbefore.js": {
            "title": "$:/core/modules/filters/insertbefore.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/insertbefore.js\ntype: application/javascript\nmodule-type: filteroperator\n\nInsert an item before another item in a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOrder a list\n*/\nexports.insertbefore = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar target = options.widget && options.widget.getVariable(operator.suffix || \"currentTiddler\");\n\tif(target !== operator.operand) {\n\t\t// Remove the entry from the list if it is present\n\t\tvar pos = results.indexOf(operator.operand);\n\t\tif(pos !== -1) {\n\t\t\tresults.splice(pos,1);\n\t\t}\n\t\t// Insert the entry before the target marker\n\t\tpos = results.indexOf(target);\n\t\tif(pos !== -1) {\n\t\t\tresults.splice(pos,0,operator.operand);\n\t\t} else {\n\t\t\tresults.push(operator.operand);\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/is/binary.js": {
            "title": "$:/core/modules/filters/is/binary.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/binary.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[binary]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.binary = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isBinaryTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isBinaryTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/blank.js": {
            "title": "$:/core/modules/filters/is/blank.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/blank.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[blank]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.blank = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!title) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/current.js": {
            "title": "$:/core/modules/filters/is/current.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/current.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[current]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.current = function(source,prefix,options) {\n\tvar results = [],\n\t\tcurrTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\");\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title !== currTiddlerTitle) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title === currTiddlerTitle) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/draft.js": {
            "title": "$:/core/modules/filters/is/draft.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/draft.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[draft]] analagous to [has[draft.of]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.draft = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!tiddler || !$tw.utils.hop(tiddler.fields,\"draft.of\")) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,\"draft.of\") && (tiddler.fields[\"draft.of\"].length !== 0)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\t\t\t\t\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/image.js": {
            "title": "$:/core/modules/filters/is/image.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/image.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[image]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.image = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isImageTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isImageTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/missing.js": {
            "title": "$:/core/modules/filters/is/missing.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/missing.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[missing]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.missing = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/orphan.js": {
            "title": "$:/core/modules/filters/is/orphan.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/orphan.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[orphan]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.orphan = function(source,prefix,options) {\n\tvar results = [],\n\t\torphanTitles = options.wiki.getOrphanTitles();\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(orphanTitles.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(orphanTitles.indexOf(title) !== -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/shadow.js": {
            "title": "$:/core/modules/filters/is/shadow.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/shadow.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[shadow]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadow = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isShadowTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isShadowTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/system.js": {
            "title": "$:/core/modules/filters/is/system.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/system.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[system]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.system = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isSystemTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isSystemTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/tag.js": {
            "title": "$:/core/modules/filters/is/tag.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/tag.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[tag]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tag = function(source,prefix,options) {\n\tvar results = [],\n\t\ttagMap = options.wiki.getTagMap();\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!$tw.utils.hop(tagMap,title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif($tw.utils.hop(tagMap,title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/tiddler.js": {
            "title": "$:/core/modules/filters/is/tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/tiddler.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[tiddler]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tiddler = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/variable.js": {
            "title": "$:/core/modules/filters/is/variable.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/variable.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[variable]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.variable = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!(title in options.widget.variables)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title in options.widget.variables) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is.js": {
            "title": "$:/core/modules/filters/is.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking tiddler properties\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar isFilterOperators;\n\nfunction getIsFilterOperators() {\n\tif(!isFilterOperators) {\n\t\tisFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"isfilteroperator\",isFilterOperators);\n\t}\n\treturn isFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.is = function(source,operator,options) {\n\t// Dispatch to the correct isfilteroperator\n\tvar isFilterOperators = getIsFilterOperators();\n\tif(operator.operand) {\n\t\tvar isFilterOperator = isFilterOperators[operator.operand];\n\t\tif(isFilterOperator) {\n\t\t\treturn isFilterOperator(source,operator.prefix,options);\n\t\t} else {\n\t\t\treturn [$tw.language.getString(\"Error/IsFilterOperator\")];\n\t\t}\n\t} else {\n\t\t// Return all tiddlers if the operand is missing\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t\treturn results;\n\t}\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/limit.js": {
            "title": "$:/core/modules/filters/limit.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/limit.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for chopping the results to a specified maximum number of entries\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.limit = function(source,operator,options) {\n\tvar results = [];\n\t// Convert to an array\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\t// Slice the array if necessary\n\tvar limit = Math.min(results.length,parseInt(operator.operand,10));\n\tif(operator.prefix === \"!\") {\n\t\tresults = results.slice(-limit);\n\t} else {\n\t\tresults = results.slice(0,limit);\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/links.js": {
            "title": "$:/core/modules/filters/links.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/links.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning all the links from a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.links = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlerLinks(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/list.js": {
            "title": "$:/core/modules/filters/list.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/list.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddlers whose title is listed in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.list = function(source,operator,options) {\n\tvar results = [],\n\t\ttr = $tw.utils.parseTextReference(operator.operand),\n\t\tcurrTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tlist = options.wiki.getTiddlerList(tr.title || currTiddlerTitle,tr.field,tr.index);\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tresults = list;\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/listed.js": {
            "title": "$:/core/modules/filters/listed.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/listed.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all tiddlers that have the selected tiddlers in a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.listed = function(source,operator,options) {\n\tvar field = operator.operand || \"list\",\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.findListingsOfTiddler(title,field));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/listops.js": {
            "title": "$:/core/modules/filters/listops.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/listops.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for manipulating the current selection list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOrder a list\n*/\nexports.order = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.operand.toLowerCase() === \"reverse\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.unshift(title);\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t}\n\treturn results;\n};\n\n/*\nReverse list\n*/\nexports.reverse = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.unshift(title);\n\t});\n\treturn results;\n};\n\n/*\nFirst entry/entries in list\n*/\nexports.first = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(0,count);\n};\n\n/*\nLast entry/entries in list\n*/\nexports.last = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(-count);\n};\n\n/*\nAll but the first entry/entries of the list\n*/\nexports.rest = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(count);\n};\nexports.butfirst = exports.rest;\nexports.bf = exports.rest;\n\n/*\nAll but the last entry/entries of the list\n*/\nexports.butlast = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(0,-count);\n};\nexports.bl = exports.butlast;\n\n/*\nThe nth member of the list\n*/\nexports.nth = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(count - 1,count);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/lookup.js": {
            "title": "$:/core/modules/filters/lookup.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/lookup.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that looks up values via a title prefix\n\n[lookup:<field>[<prefix>]]\n\nPrepends the prefix to the selected items and returns the specified field value\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.lookup = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.wiki.getTiddlerText(operator.operand + title) || operator.suffix);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/match.js": {
            "title": "$:/core/modules/filters/match.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/match.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title matches a string\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.match = function(source,operator,options) {\n\tvar results = [],\n\t\tsuffixes = (operator.suffixes || [])[0] || [];\n\tif(suffixes.indexOf(\"caseinsensitive\") !== -1) {\n\t\tif(operator.prefix === \"!\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title.toLowerCase() !== (operator.operand || \"\").toLowerCase()) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title.toLowerCase() === (operator.operand || \"\").toLowerCase()) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tif(operator.prefix === \"!\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title !== operator.operand) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title === operator.operand) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/math.js": {
            "title": "$:/core/modules/filters/math.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/math.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for math. Unary/binary operators work on each item in turn, and return a new item list.\n\nSum/product/maxall/minall operate on the entire list, returning a single item.\n\nNote that strings are converted to numbers automatically. Trailing non-digits are ignored.\n\n* \"\" converts to 0\n* \"12kk\" converts to 12\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.negate = makeNumericBinaryOperator(\n\tfunction(a) {return -a}\n);\n\nexports.abs = makeNumericBinaryOperator(\n\tfunction(a) {return Math.abs(a)}\n);\n\nexports.ceil = makeNumericBinaryOperator(\n\tfunction(a) {return Math.ceil(a)}\n);\n\nexports.floor = makeNumericBinaryOperator(\n\tfunction(a) {return Math.floor(a)}\n);\n\nexports.round = makeNumericBinaryOperator(\n\tfunction(a) {return Math.round(a)}\n);\n\nexports.trunc = makeNumericBinaryOperator(\n\tfunction(a) {return Math.trunc(a)}\n);\n\nexports.untrunc = makeNumericBinaryOperator(\n\tfunction(a) {return Math.ceil(Math.abs(a)) * Math.sign(a)}\n);\n\nexports.sign = makeNumericBinaryOperator(\n\tfunction(a) {return Math.sign(a)}\n);\n\nexports.add = makeNumericBinaryOperator(\n\tfunction(a,b) {return a + b;}\n);\n\nexports.subtract = makeNumericBinaryOperator(\n\tfunction(a,b) {return a - b;}\n);\n\nexports.multiply = makeNumericBinaryOperator(\n\tfunction(a,b) {return a * b;}\n);\n\nexports.divide = makeNumericBinaryOperator(\n\tfunction(a,b) {return a / b;}\n);\n\nexports.remainder = makeNumericBinaryOperator(\n\tfunction(a,b) {return a % b;}\n);\n\nexports.max = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.max(a,b);}\n);\n\nexports.min = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.min(a,b);}\n);\n\nexports.fixed = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toFixed.call(a,Math.min(Math.max(b,0),100));}\n);\n\nexports.precision = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toPrecision.call(a,Math.min(Math.max(b,1),100));}\n);\n\nexports.exponential = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toExponential.call(a,Math.min(Math.max(b,0),100));}\n);\n\nexports.power = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.pow(a,b);}\n);\n\nexports.log = makeNumericBinaryOperator(\n\tfunction(a,b) {\n\t\tif(b) {\n\t\t\treturn Math.log(a)/Math.log(b);\n\t\t} else {\n\t\t\treturn Math.log(a);\n\t\t}\n\t}\n);\n\nexports.sum = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return accumulator + value},\n\t0 // Initial value\n);\n\nexports.product = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return accumulator * value},\n\t1 // Initial value\n);\n\nexports.maxall = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return Math.max(accumulator,value)},\n\t-Infinity // Initial value\n);\n\nexports.minall = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return Math.min(accumulator,value)},\n\tInfinity // Initial value\n);\n\nfunction makeNumericBinaryOperator(fnCalc) {\n\treturn function(source,operator,options) {\n\t\tvar result = [],\n\t\t\tnumOperand = $tw.utils.parseNumber(operator.operand);\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push($tw.utils.stringifyNumber(fnCalc($tw.utils.parseNumber(title),numOperand)));\n\t\t});\n\t\treturn result;\n\t};\n}\n\nfunction makeNumericReducingOperator(fnCalc,initialValue) {\n\tinitialValue = initialValue || 0;\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push(title);\n\t\t});\n\t\treturn [$tw.utils.stringifyNumber(result.reduce(function(accumulator,currentValue) {\n\t\t\treturn fnCalc(accumulator,$tw.utils.parseNumber(currentValue));\n\t\t},initialValue))];\n\t};\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/minlength.js": {
            "title": "$:/core/modules/filters/minlength.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/minlength.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for filtering out titles that don't meet the minimum length in the operand\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.minlength = function(source,operator,options) {\n\tvar results = [],\n\t\tminLength = parseInt(operator.operand || \"\",10) || 0;\n\tsource(function(tiddler,title) {\n\t\tif(title.length >= minLength) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/modules.js": {
            "title": "$:/core/modules/filters/modules.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/modules.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the titles of the modules of a given type in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.modules = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.each($tw.modules.types[title],function(moduleInfo,moduleName) {\n\t\t\tresults.push(moduleName);\n\t\t});\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/moduletypes.js": {
            "title": "$:/core/modules/filters/moduletypes.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/moduletypes.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the module types in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.moduletypes = function(source,operator,options) {\n\tvar results = [];\n\t$tw.utils.each($tw.modules.types,function(moduleInfo,type) {\n\t\tresults.push(type);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/next.js": {
            "title": "$:/core/modules/filters/next.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/next.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler whose title occurs next in the list supplied in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.next = function(source,operator,options) {\n\tvar results = [],\n\t\tlist = options.wiki.getTiddlerList(operator.operand);\n\tsource(function(tiddler,title) {\n\t\tvar match = list.indexOf(title);\n\t\t// increment match and then test if result is in range\n\t\tmatch++;\n\t\tif(match > 0 && match < list.length) {\n\t\t\tresults.push(list[match]);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/plugintiddlers.js": {
            "title": "$:/core/modules/filters/plugintiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/plugintiddlers.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the titles of the shadow tiddlers within a plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.plugintiddlers = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar pluginInfo = options.wiki.getPluginInfo(title) || options.wiki.getTiddlerDataCached(title,{tiddlers:[]});\n\t\tif(pluginInfo && pluginInfo.tiddlers) {\n\t\t\t$tw.utils.each(pluginInfo.tiddlers,function(fields,title) {\n\t\t\t\tresults.push(title);\n\t\t\t});\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/prefix.js": {
            "title": "$:/core/modules/filters/prefix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/prefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title starts with a prefix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.prefix = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(0,operator.operand.length) !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(0,operator.operand.length) === operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/previous.js": {
            "title": "$:/core/modules/filters/previous.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/previous.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler whose title occurs immediately prior in the list supplied in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.previous = function(source,operator,options) {\n\tvar results = [],\n\t\tlist = options.wiki.getTiddlerList(operator.operand);\n\tsource(function(tiddler,title) {\n\t\tvar match = list.indexOf(title);\n\t\t// increment match and then test if result is in range\n\t\tmatch--;\n\t\tif(match >= 0) {\n\t\t\tresults.push(list[match]);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/range.js": {
            "title": "$:/core/modules/filters/range.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/range.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for generating a numeric range.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.range = function(source,operator,options) {\n\tvar results = [];\n\t// Split the operand into numbers delimited by these symbols\n\tvar parts = operator.operand.split(/[,:;]/g),\n\t\tbeg, end, inc, i, fixed = 0;\n\tfor (i=0; i<parts.length; i++) {\n\t\t// Validate real number\n\t\tif(!/^\\s*[+-]?((\\d+(\\.\\d*)?)|(\\.\\d+))\\s*$/.test(parts[i])) {\n\t\t\treturn [\"range: bad number \\\"\" + parts[i] + \"\\\"\"];\n\t\t}\n\t\t// Count digits; the most precise number determines decimal places in output.\n\t\tvar frac = /\\.\\d+/.exec(parts[i]);\n\t\tif(frac) {\n\t\t\tfixed = Math.max(fixed,frac[0].length-1);\n\t\t}\n\t\tparts[i] = parseFloat(parts[i]);\n\t}\n\tswitch(parts.length) {\n\t\tcase 1:\n\t\t\tend = parts[0];\n\t\t\tif (end >= 1) {\n\t\t\t\tbeg = 1;\n\t\t\t}\n\t\t\telse if (end <= -1) {\n\t\t\t\tbeg = -1;\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tinc = 1;\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tbeg = parts[0];\n\t\t\tend = parts[1];\n\t\t\tinc = 1;\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tbeg = parts[0];\n\t\t\tend = parts[1];\n\t\t\tinc = Math.abs(parts[2]);\n\t\t\tbreak;\n\t}\n\tif(inc === 0) {\n\t\treturn [\"range: increment 0 causes infinite loop\"];\n\t}\n\t// May need to count backwards\n\tvar direction = ((end < beg) ? -1 : 1);\n\tinc *= direction;\n\t// Estimate number of resulting elements\n\tif((end - beg) / inc > 10000) {\n\t\treturn [\"range: too many steps (over 10K)\"];\n\t}\n\t// Avoid rounding error on last step\n\tend += direction * 0.5 * Math.pow(0.1,fixed);\n\tvar safety = 10010;\n\t// Enumerate the range\n\tif (end<beg) {\n\t\tfor(i=beg; i>end; i+=inc) {\n\t\t\tresults.push(i.toFixed(fixed));\n\t\t\tif(--safety<0) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tfor(i=beg; i<end; i+=inc) {\n\t\t\tresults.push(i.toFixed(fixed));\n\t\t\tif(--safety<0) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tif(safety<0) {\n\t\treturn [\"range: unexpectedly large output\"];\n\t}\n\t// Reverse?\n\tif(operator.prefix === \"!\") {\n\t\tresults.reverse();\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/reduce.js": {
            "title": "$:/core/modules/filters/reduce.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/reduce.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator evaluates a subfilter for each item, making the running total available in the variable `accumulator`, and the current index available in the variable `index`\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.reduce = function(source,operator,options) {\n\t// Accumulate the list\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\t// Run the filter over each item\n\tvar filterFn = options.wiki.compileFilter(operator.operand),\n\t\taccumulator = operator.operands[1] || \"\";\n\tfor(var index=0; index<results.length; index++) {\n\t\tvar title = results[index],\n\t\t\tlist = filterFn.call(options.wiki,options.wiki.makeTiddlerIterator([title]),{\n\t\t\t\tgetVariable: function(name) {\n\t\t\t\t\tswitch(name) {\n\t\t\t\t\t\tcase \"currentTiddler\":\n\t\t\t\t\t\t\treturn \"\" + title;\n\t\t\t\t\t\tcase \"accumulator\":\n\t\t\t\t\t\t\treturn \"\" + accumulator;\n\t\t\t\t\t\tcase \"index\":\n\t\t\t\t\t\t\treturn \"\" + index;\n\t\t\t\t\t\tcase \"revIndex\":\n\t\t\t\t\t\t\treturn \"\" + (results.length - 1 - index);\n\t\t\t\t\t\tcase \"length\":\n\t\t\t\t\t\t\treturn \"\" + results.length;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn options.widget.getVariable(name);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\tif(list.length > 0) {\n\t\t\taccumulator = \"\" +  list[0];\n\t\t}\n\t}\n\tif(results.length > 0) {\n\t\treturn [accumulator];\n\t} else {\n\t\treturn [];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/regexp.js": {
            "title": "$:/core/modules/filters/regexp.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/regexp.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for regexp matching\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.regexp = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldname = (operator.suffix || \"title\").toLowerCase(),\n\t\tregexpString, regexp, flags = \"\", match,\n\t\tgetFieldString = function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\treturn tiddler.getFieldString(fieldname);\n\t\t\t} else if(fieldname === \"title\") {\n\t\t\t\treturn title;\n\t\t\t} else {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t};\n\t// Process flags and construct regexp\n\tregexpString = operator.operand;\n\tmatch = /^\\(\\?([gim]+)\\)/.exec(regexpString);\n\tif(match) {\n\t\tflags = match[1];\n\t\tregexpString = regexpString.substr(match[0].length);\n\t} else {\n\t\tmatch = /\\(\\?([gim]+)\\)$/.exec(regexpString);\n\t\tif(match) {\n\t\t\tflags = match[1];\n\t\t\tregexpString = regexpString.substr(0,regexpString.length - match[0].length);\n\t\t}\n\t}\n\ttry {\n\t\tregexp = new RegExp(regexpString,flags);\n\t} catch(e) {\n\t\treturn [\"\" + e];\n\t}\n\t// Process the incoming tiddlers\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tvar text = getFieldString(tiddler,title);\n\t\t\tif(text !== null) {\n\t\t\t\tif(!regexp.exec(text)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tvar text = getFieldString(tiddler,title);\n\t\t\tif(text !== null) {\n\t\t\t\tif(!!regexp.exec(text)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/removeprefix.js": {
            "title": "$:/core/modules/filters/removeprefix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/removeprefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for removing a prefix from each title in the list. Titles that do not start with the prefix are removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.removeprefix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(title.substr(0,operator.operand.length) === operator.operand) {\n\t\t\tresults.push(title.substr(operator.operand.length));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/removesuffix.js": {
            "title": "$:/core/modules/filters/removesuffix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/removesuffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for removing a suffix from each title in the list. Titles that do not end with the suffix are removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.removesuffix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(title && title.substr(-operator.operand.length) === operator.operand) {\n\t\t\tresults.push(title.substr(0,title.length - operator.operand.length));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/sameday.js": {
            "title": "$:/core/modules/filters/sameday.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/sameday.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects tiddlers with a modified date field on the same day as the provided value.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sameday = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName = operator.suffix || \"modified\",\n\t\ttargetDate = (new Date($tw.utils.parseDate(operator.operand))).setHours(0,0,0,0);\n\t// Function to convert a date/time to a date integer\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tif(tiddler.getFieldDay(fieldName) === targetDate) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/search.js": {
            "title": "$:/core/modules/filters/search.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/search.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for searching for the text in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.search = function(source,operator,options) {\n\tvar invert = operator.prefix === \"!\";\n\tif(operator.suffixes) {\n\t\tvar hasFlag = function(flag) {\n\t\t\t\treturn (operator.suffixes[1] || []).indexOf(flag) !== -1;\n\t\t\t},\n\t\t\texcludeFields = false,\n\t\t\tfieldList = operator.suffixes[0] || [],\n\t\t\tfirstField = fieldList[0] || \"\", \n\t\t\tfirstChar = firstField.charAt(0),\n\t\t\tfields;\n\t\tif(firstChar === \"-\") {\n\t\t\tfields = [firstField.slice(1)].concat(fieldList.slice(1));\n\t\t\texcludeFields = true;\n\t\t} else if(fieldList[0] === \"*\"){\n\t\t\tfields = [];\n\t\t\texcludeFields = true;\n\t\t} else {\n\t\t\tfields = fieldList.slice(0);\n\t\t}\n\t\treturn options.wiki.search(operator.operand,{\n\t\t\tsource: source,\n\t\t\tinvert: invert,\n\t\t\tfield: fields,\n\t\t\texcludeField: excludeFields,\n\t\t\tcaseSensitive: hasFlag(\"casesensitive\"),\n\t\t\tliteral: hasFlag(\"literal\"),\n\t\t\twhitespace: hasFlag(\"whitespace\"),\n\t\t\tanchored: hasFlag(\"anchored\"),\n\t\t\tregexp: hasFlag(\"regexp\"),\n\t\t\twords: hasFlag(\"words\")\n\t\t});\n\t} else {\n\t\treturn options.wiki.search(operator.operand,{\n\t\t\tsource: source,\n\t\t\tinvert: invert\n\t\t});\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/shadowsource.js": {
            "title": "$:/core/modules/filters/shadowsource.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/shadowsource.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the source plugins for shadow tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadowsource = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar source = options.wiki.getShadowSource(title);\n\t\tif(source) {\n\t\t\t$tw.utils.pushTop(results,source);\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/slugify.js": {
            "title": "$:/core/modules/filters/slugify.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/slugify.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for slugifying a tiddler title\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.slugify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.wiki.slugify(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/sort.js": {
            "title": "$:/core/modules/filters/sort.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/sort.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for sorting\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sort = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",false,false);\n\treturn results;\n};\n\nexports.nsort = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",false,true);\n\treturn results;\n};\n\nexports.sortan = function(source, operator, options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results, operator.operand || \"title\", operator.prefix === \"!\",false,false,true);\n\treturn results;\n};\n\nexports.sortcs = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",true,false);\n\treturn results;\n};\n\nexports.nsortcs = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",true,true);\n\treturn results;\n};\n\nvar prepare_results = function (source) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/sortsub.js": {
            "title": "$:/core/modules/filters/sortsub.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/sortsub.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for sorting by a subfilter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sortsub = function(source,operator,options) {\n\t// Compile the subfilter\n\tvar filterFn = options.wiki.compileFilter(operator.operand);\n\t// Collect the input titles and the corresponding sort keys\n\tvar inputTitles = [],\n\t\tsortKeys = [];\n\tsource(function(tiddler,title) {\n\t\tinputTitles.push(title);\n\t\tvar r = filterFn.call(options.wiki,function(iterator) {\n\t\t\titerator(options.wiki.getTiddler(title),title);\n\t\t},{\n\t\t\tgetVariable: function(name) {\n\t\t\t\tif(name === \"currentTiddler\") {\n\t\t\t\t\treturn title;\n\t\t\t\t} else {\n\t\t\t\t\treturn options.widget.getVariable(name);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tsortKeys.push(r[0] || \"\");\n\t});\n\t// Rather than sorting the titles array, we'll sort the indexes so that we can consult both arrays\n\tvar indexes = new Array(inputTitles.length);\n\tfor(var t=0; t<inputTitles.length; t++) {\n\t\tindexes[t] = t;\n\t}\n\t// Sort the indexes\n\tvar compareFn = $tw.utils.makeCompareFunction(operator.suffix,{defaultType: \"string\",invert: operator.prefix === \"!\"});\n\tindexes = indexes.sort(function(a,b) {\n\t\treturn compareFn(sortKeys[a],sortKeys[b]);\n\t});\n\t// Make the results array in order\n\tvar results = [];\n\t$tw.utils.each(indexes,function(index) {\n\t\tresults.push(inputTitles[index]);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/splitbefore.js": {
            "title": "$:/core/modules/filters/splitbefore.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/splitbefore.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that splits each result on the first occurance of the specified separator and returns the unique values.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.splitbefore = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar parts = title.split(operator.operand);\n\t\tif(parts.length === 1) {\n\t\t\t$tw.utils.pushTop(results,parts[0]);\n\t\t} else {\n\t\t\t$tw.utils.pushTop(results,parts[0] + operator.operand);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/storyviews.js": {
            "title": "$:/core/modules/filters/storyviews.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/storyviews.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the story views in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.storyviews = function(source,operator,options) {\n\tvar results = [],\n\t\tstoryviews = {};\n\t$tw.modules.applyMethods(\"storyview\",storyviews);\n\t$tw.utils.each(storyviews,function(info,name) {\n\t\tresults.push(name);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/strings.js": {
            "title": "$:/core/modules/filters/strings.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/strings.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for strings. Unary/binary operators work on each item in turn, and return a new item list.\n\nSum/product/maxall/minall operate on the entire list, returning a single item.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.length = makeStringBinaryOperator(\n\tfunction(a) {return [\"\" + (\"\" + a).length];}\n);\n\nexports.uppercase = makeStringBinaryOperator(\n\tfunction(a) {return [(\"\" + a).toUpperCase()];}\n);\n\nexports.lowercase = makeStringBinaryOperator(\n\tfunction(a) {return [(\"\" + a).toLowerCase()];}\n);\n\nexports.sentencecase = makeStringBinaryOperator(\n\tfunction(a) {return [$tw.utils.toSentenceCase(a)];}\n);\n\nexports.titlecase = makeStringBinaryOperator(\n\tfunction(a) {return [$tw.utils.toTitleCase(a)];}\n);\n\nexports.trim = function(source,operator,options) {\n\tvar result = [],\n\t\tsuffix = operator.suffix || \"\",\n\t\toperand = (operator.operand || \"\"),\n\t\tfnCalc;\n\tif(suffix === \"prefix\") {\n\t\tfnCalc = function(a,b) {return [$tw.utils.trimPrefix(a,b)];}\n\t} else if(suffix === \"suffix\") {\n\t\tfnCalc = function(a,b) {return [$tw.utils.trimSuffix(a,b)];}\n\t} else {\n\t\tif(operand === \"\") {\n\t\t\tfnCalc = function(a) {return [$tw.utils.trim(a)];}\n\t\t} else {\n\t\t\tfnCalc = function(a,b) {return [$tw.utils.trimSuffix($tw.utils.trimPrefix(a,b),b)];}\n\t\t}\n\t}\n\tsource(function(tiddler,title) {\n\t\tArray.prototype.push.apply(result,fnCalc(title,operand));\n\t});\n\treturn result;\n};\n\nexports.split = makeStringBinaryOperator(\n\tfunction(a,b) {return (\"\" + a).split(b);}\n);\n\nexports[\"enlist-input\"] = makeStringBinaryOperator(\n\tfunction(a,o,s) {return $tw.utils.parseStringArray(\"\" + a,(s === \"raw\"));}\n);\n\nexports.join = makeStringReducingOperator(\n\tfunction(accumulator,value,operand) {\n\t\tif(accumulator === null) {\n\t\t\treturn value;\n\t\t} else {\n\t\t\treturn accumulator + operand + value;\n\t\t}\n\t},null\n);\n\nfunction makeStringBinaryOperator(fnCalc) {\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tArray.prototype.push.apply(result,fnCalc(title,operator.operand || \"\",operator.suffix || \"\"));\n\t\t});\n\t\treturn result;\n\t};\n}\n\nfunction makeStringReducingOperator(fnCalc,initialValue) {\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push(title);\n\t\t});\n\t\tif(result.length === 0) {\n\t\t\treturn [];\n\t\t}\n\t\treturn [result.reduce(function(accumulator,currentValue) {\n\t\t\treturn fnCalc(accumulator,currentValue,operator.operand || \"\");\n\t\t},initialValue) || \"\"];\n\t};\n}\n\nexports.splitregexp = function(source,operator,options) {\n\tvar result = [],\n\t\tsuffix = operator.suffix || \"\",\n\t\tflags = (suffix.indexOf(\"m\") !== -1 ? \"m\" : \"\") + (suffix.indexOf(\"i\") !== -1 ? \"i\" : \"\"),\n\t\tregExp;\n\ttry {\n\t\tregExp = new RegExp(operator.operand || \"\",flags);\t\t\n\t} catch(ex) {\n\t\treturn [\"RegExp error: \" + ex];\n\t}\n\tsource(function(tiddler,title) {\n\t\tArray.prototype.push.apply(result,title.split(regExp));\n\t});\t\t\n\treturn result;\n};\n\nexports[\"search-replace\"] = function(source,operator,options) {\n\tvar results = [],\n\t\tsuffixes = operator.suffixes || [],\n\t\tflagSuffix = (suffixes[0] ? (suffixes[0][0] || \"\") : \"\"),\n\t\tflags = (flagSuffix.indexOf(\"g\") !== -1 ? \"g\" : \"\") + (flagSuffix.indexOf(\"i\") !== -1 ? \"i\" : \"\"),\n\t\tisRegExp = (suffixes[1] && suffixes[1][0] === \"regexp\") ? true : false,\n\t\tsearchTerm,\n\t\tregExp;\n\t\n\tsource(function(tiddler,title) {\n\t\tif(title && (operator.operands.length > 1)) {\n\t\t\t//Escape regexp characters if the operand is not a regular expression\n\t\t\tsearchTerm = isRegExp ? operator.operand : $tw.utils.escapeRegExp(operator.operand);\n\t\t\ttry {\n\t\t\t\tregExp = new RegExp(searchTerm,flags);\n\t\t\t} catch(ex) {\n\t\t\t\treturn [\"RegExp error: \" + ex];\n\t\t\t}\n\t\t\tresults.push(\n\t\t\t\ttitle.replace(regExp,operator.operands[1])\n\t\t\t);\n\t\t} else {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\nexports.pad = function(source,operator,options) {\n\tvar results = [],\n\t\ttargetLength = operator.operand ? parseInt(operator.operand) : 0,\n\t\tfill = operator.operands[1] || \"0\";\n\n\tsource(function(tiddler,title) {\n\t\tif(title && title.length) {\n\t\t\tif(title.length >= targetLength) {\n\t\t\t\tresults.push(title);\n\t\t\t} else {\n\t\t\t\tvar padString = \"\",\n\t\t\t\t\tpadStringLength = targetLength - title.length;\n\t\t\t\twhile (padStringLength > padString.length) {\n\t\t\t\t\tpadString += fill;\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t//make sure we do not exceed the specified length\n\t\t\t\tpadString = padString.slice(0,padStringLength);\n\t\t\t\tif(operator.suffix && (operator.suffix === \"suffix\")) {\n\t\t\t\t\ttitle = title + padString;\n\t\t\t\t} else {\n\t\t\t\t\ttitle = padString + title;\n\t\t\t\t}\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/subfilter.js": {
            "title": "$:/core/modules/filters/subfilter.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/subfilter.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning its operand evaluated as a filter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.subfilter = function(source,operator,options) {\n\tvar list = options.wiki.filterTiddlers(operator.operand,options.widget,source);\n\tif(operator.prefix === \"!\") {\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t\treturn results;\n\t} else {\n\t\treturn list;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/subtiddlerfields.js": {
            "title": "$:/core/modules/filters/subtiddlerfields.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/subtiddlerfields.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the fields on the selected subtiddlers of the plugin named in the operand\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.subtiddlerfields = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar subtiddler = options.wiki.getSubTiddler(operator.operand,title);\n\t\tif(subtiddler) {\n\t\t\tfor(var fieldName in subtiddler.fields) {\n\t\t\t\t$tw.utils.pushTop(results,fieldName);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/suffix.js": {
            "title": "$:/core/modules/filters/suffix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/suffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title ends with a suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.suffix = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(-operator.operand.length) !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(-operator.operand.length) === operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/tag.js": {
            "title": "$:/core/modules/filters/tag.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/tag.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking for the presence of a tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tag = function(source,operator,options) {\n\tvar results = [],indexedResults;\n\tif((operator.suffix || \"\").toLowerCase() === \"strict\" && !operator.operand) {\n\t\t// New semantics:\n\t\t// Always return copy of input if operator.operand is missing\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t} else {\n\t\t// Old semantics:\n\t\tvar tiddlers;\n\t\tif(operator.prefix === \"!\") {\n\t\t\t// Returns a copy of the input if operator.operand is missing\n\t\t\ttiddlers = options.wiki.getTiddlersWithTag(operator.operand);\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddlers.indexOf(title) === -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t// Returns empty results if operator.operand is missing\n\t\t\tif(source.byTag) {\n\t\t\t\tindexedResults = source.byTag(operator.operand);\n\t\t\t\tif(indexedResults) {\n\t\t\t\t\treturn indexedResults;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttiddlers = options.wiki.getTiddlersWithTag(operator.operand);\n\t\t\t\tsource(function(tiddler,title) {\n\t\t\t\t\tif(tiddlers.indexOf(title) !== -1) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tresults = options.wiki.sortByList(results,operator.operand);\n\t\t\t}\n\t\t}\t\t\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/tagging.js": {
            "title": "$:/core/modules/filters/tagging.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/tagging.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all tiddlers that are tagged with the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tagging = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlersWithTag(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/tags.js": {
            "title": "$:/core/modules/filters/tags.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/tags.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all the tags of the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tags = function(source,operator,options) {\n\tvar tags = {};\n\tsource(function(tiddler,title) {\n\t\tvar t, length;\n\t\tif(tiddler && tiddler.fields.tags) {\n\t\t\tfor(t=0, length=tiddler.fields.tags.length; t<length; t++) {\n\t\t\t\ttags[tiddler.fields.tags[t]] = true;\n\t\t\t}\n\t\t}\n\t});\n\treturn Object.keys(tags);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/then.js": {
            "title": "$:/core/modules/filters/then.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/then.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing any titles with a constant\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.then = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(operator.operand);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/title.js": {
            "title": "$:/core/modules/filters/title.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/title.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for comparing title fields for equality\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.title = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields.title !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tresults.push(operator.operand);\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/untagged.js": {
            "title": "$:/core/modules/filters/untagged.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/untagged.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all the selected tiddlers that are untagged\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.untagged = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && $tw.utils.isArray(tiddler.fields.tags) && tiddler.fields.tags.length > 0) {\n\t\t\t\t$tw.utils.pushTop(results,title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!tiddler || !tiddler.hasField(\"tags\") || ($tw.utils.isArray(tiddler.fields.tags) && tiddler.fields.tags.length === 0)) {\n\t\t\t\t$tw.utils.pushTop(results,title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/variables.js": {
            "title": "$:/core/modules/filters/variables.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/variables.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the active variables\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.variables = function(source,operator,options) {\n\tvar names = [];\n\tfor(var variable in options.widget.variables) {\n\t\tnames.push(variable);\n\t}\n\treturn names.sort();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/wikiparserrules.js": {
            "title": "$:/core/modules/filters/wikiparserrules.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/wikiparserrules.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the wiki parser rules in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.wikiparserrules = function(source,operator,options) {\n\tvar results = [],\n\t\toperand = operator.operand;\n\t$tw.utils.each($tw.modules.types.wikirule,function(mod) {\n\t\tvar exp = mod.exports;\n\t\tif(!operand || exp.types[operand]) {\n\t\t\tresults.push(exp.name);\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/x-listops.js": {
            "title": "$:/core/modules/filters/x-listops.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/x-listops.js\ntype: application/javascript\nmodule-type: filteroperator\n\nExtended filter operators to manipulate the current list.\n\n\\*/\n(function () {\n\n\t/*jslint node: true, browser: true */\n\t/*global $tw: false */\n\t\"use strict\";\n\n\t/*\n\tFetch titles from the current list\n\t*/\n\tvar prepare_results = function (source) {\n\tvar results = [];\n\t\tsource(function (tiddler, title) {\n\t\t\tresults.push(title);\n\t\t});\n\t\treturn results;\n\t};\n\n\t/*\n\tMoves a number of items from the tail of the current list before the item named in the operand\n\t*/\n\texports.putbefore = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn (index === -1) ?\n\t\t\tresults.slice(0, -1) :\n\t\t\tresults.slice(0, index).concat(results.slice(-count)).concat(results.slice(index, -count));\n\t};\n\n\t/*\n\tMoves a number of items from the tail of the current list after the item named in the operand\n\t*/\n\texports.putafter = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn (index === -1) ?\n\t\t\tresults.slice(0, -1) :\n\t\t\tresults.slice(0, index + 1).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n\t};\n\n\t/*\n\tReplaces the item named in the operand with a number of items from the tail of the current list\n\t*/\n\texports.replace = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn (index === -1) ?\n\t\t\tresults.slice(0, -count) :\n\t\t\tresults.slice(0, index).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n\t};\n\n\t/*\n\tMoves a number of items from the tail of the current list to the head of the list\n\t*/\n\texports.putfirst = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn results.slice(-count).concat(results.slice(0, -count));\n\t};\n\n\t/*\n\tMoves a number of items from the head of the current list to the tail of the list\n\t*/\n\texports.putlast = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn results.slice(count).concat(results.slice(0, count));\n\t};\n\n\t/*\n\tMoves the item named in the operand a number of places forward or backward in the list\n\t*/\n\texports.move = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1),\n\t\t\tmarker = results.splice(index, 1),\n\t\t\toffset =  (index + count) > 0 ? index + count : 0;\n\t\treturn results.slice(0, offset).concat(marker).concat(results.slice(offset));\n\t};\n\n\t/*\n\tReturns the items from the current list that are after the item named in the operand\n\t*/\n\texports.allafter = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand);\n\t\treturn (index === -1) ? [] :\n\t\t\t(operator.suffix) ? results.slice(index) :\n\t\t\tresults.slice(index + 1);\n\t};\n\n\t/*\n\tReturns the items from the current list that are before the item named in the operand\n\t*/\n\texports.allbefore = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand);\n\t\treturn (index === -1) ? [] :\n\t\t\t(operator.suffix) ? results.slice(0, index + 1) :\n\t\t\tresults.slice(0, index);\n\t};\n\n\t/*\n\tAppends the items listed in the operand array to the tail of the current list\n\t*/\n\texports.append = function (source, operator) {\n\t\tvar append = $tw.utils.parseStringArray(operator.operand, \"true\"),\n\t\t\tresults = prepare_results(source),\n\t\t\tcount = parseInt(operator.suffix) || append.length;\n\t\treturn (append.length === 0) ? results :\n\t\t\t(operator.prefix) ? results.concat(append.slice(-count)) :\n\t\t\tresults.concat(append.slice(0, count));\n\t};\n\n\t/*\n\tPrepends the items listed in the operand array to the head of the current list\n\t*/\n\texports.prepend = function (source, operator) {\n\t\tvar prepend = $tw.utils.parseStringArray(operator.operand, \"true\"),\n\t\t\tresults = prepare_results(source),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,prepend.length);\n\t\treturn (prepend.length === 0) ? results :\n\t\t\t(operator.prefix) ? prepend.slice(-count).concat(results) :\n\t\t\tprepend.slice(0, count).concat(results);\n\t};\n\n\t/*\n\tReturns all items from the current list except the items listed in the operand array\n\t*/\n\texports.remove = function (source, operator) {\n\t\tvar array = $tw.utils.parseStringArray(operator.operand, \"true\"),\n\t\t\tresults = prepare_results(source),\n\t\t\tcount = parseInt(operator.suffix) || array.length,\n\t\t\tp,\n\t\t\tlen,\n\t\t\tindex;\n\t\tlen = array.length - 1;\n\t\tfor (p = 0; p < count; ++p) {\n\t\t\tif (operator.prefix) {\n\t\t\t\tindex = results.indexOf(array[len - p]);\n\t\t\t} else {\n\t\t\t\tindex = results.indexOf(array[p]);\n\t\t\t}\n\t\t\tif (index !== -1) {\n\t\t\t\tresults.splice(index, 1);\n\t\t\t}\n\t\t}\n\t\treturn results;\n\t};\n\n\t/*\n\tReturns all items from the current list sorted in the order of the items in the operand array\n\t*/\n\texports.sortby = function (source, operator) {\n\t\tvar results = prepare_results(source);\n\t\tif (!results || results.length < 2) {\n\t\t\treturn results;\n\t\t}\n\t\tvar lookup = $tw.utils.parseStringArray(operator.operand, \"true\");\n\t\tresults.sort(function (a, b) {\n\t\t\treturn lookup.indexOf(a) - lookup.indexOf(b);\n\t\t});\n\t\treturn results;\n\t};\n\n\t/*\n\tRemoves all duplicate items from the current list\n\t*/\n\texports.unique = function (source, operator) {\n\t\tvar results = prepare_results(source);\n\t\tvar set = results.reduce(function (a, b) {\n\t\t\tif (a.indexOf(b) < 0) {\n\t\t\t\ta.push(b);\n\t\t\t}\n\t\t\treturn a;\n\t\t}, []);\n\t\treturn set;\n\t};\n\n\tvar cycleValueInArray = function(results,operands,stepSize) {\n\t\tvar resultsIndex,\n\t\t\tstep = stepSize || 1,\n\t\t\ti = 0,\n\t\t\topLength = operands.length,\n\t\t\tnextOperandIndex;\t\t\n\t\tfor(i; i < opLength; i++) {\n\t\t\tresultsIndex = results.indexOf(operands[i]);\n\t\t\tif(resultsIndex !== -1) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif(resultsIndex !== -1) {\n\t\t\ti = i + step;\n\t\t\tnextOperandIndex = (i < opLength ? i : i - opLength);\n\t\t\tif(operands.length > 1) {\n\t\t\t\tresults.splice(resultsIndex,1,operands[nextOperandIndex]);\n\t\t\t} else {\n\t\t\t\tresults.splice(resultsIndex,1);\n\t\t\t}\n\t\t} else {\n\t\t\tresults.push(operands[0]);\n\t\t}\n\t\treturn results;\t\t\n\t}\n\n\t/*\n\tToggles an item in the current list.\n\t*/\t\n\texports.toggle = function(source,operator) {\n\t\treturn cycleValueInArray(prepare_results(source),operator.operands);\n\t}\n\n\texports.cycle = function(source,operator) {\n\t\tvar results = prepare_results(source),\n\t\t\toperands = (operator.operand.length ? $tw.utils.parseStringArray(operator.operand, \"true\") : [\"\"]),\n\t\t\tstep = $tw.utils.getInt(operator.operands[1]||\"\",1);\n\t\tif(step < 0) {\n\t\t\toperands.reverse();\n\t\t\tstep = Math.abs(step);\n\t\t}\t\n\t\treturn cycleValueInArray(results,operands,step);\n\t}\n\t\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters.js": {
            "title": "$:/core/modules/filters.js",
            "text": "/*\\\ntitle: $:/core/modules/filters.js\ntype: application/javascript\nmodule-type: wikimethod\n\nAdds tiddler filtering methods to the $tw.Wiki object.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParses an operation (i.e. a run) within a filter string\n\toperators: Array of array of operator nodes into which results should be inserted\n\tfilterString: filter string\n\tp: start position within the string\nReturns the new start position, after the parsed operation\n*/\nfunction parseFilterOperation(operators,filterString,p) {\n\tvar nextBracketPos, operator;\n\t// Skip the starting square bracket\n\tif(filterString.charAt(p++) !== \"[\") {\n\t\tthrow \"Missing [ in filter expression\";\n\t}\n\t// Process each operator in turn\n\tdo {\n\t\toperator = {};\n\t\t// Check for an operator prefix\n\t\tif(filterString.charAt(p) === \"!\") {\n\t\t\toperator.prefix = filterString.charAt(p++);\n\t\t}\n\t\t// Get the operator name\n\t\tnextBracketPos = filterString.substring(p).search(/[\\[\\{<\\/]/);\n\t\tif(nextBracketPos === -1) {\n\t\t\tthrow \"Missing [ in filter expression\";\n\t\t}\n\t\tnextBracketPos += p;\n\t\tvar bracket = filterString.charAt(nextBracketPos);\n\t\toperator.operator = filterString.substring(p,nextBracketPos);\n\t\t// Any suffix?\n\t\tvar colon = operator.operator.indexOf(':');\n\t\tif(colon > -1) {\n\t\t\t// The raw suffix for older filters\n\t\t\toperator.suffix = operator.operator.substring(colon + 1);\n\t\t\toperator.operator = operator.operator.substring(0,colon) || \"field\";\n\t\t\t// The processed suffix for newer filters\n\t\t\toperator.suffixes = [];\n\t\t\t$tw.utils.each(operator.suffix.split(\":\"),function(subsuffix) {\n\t\t\t\toperator.suffixes.push([]);\n\t\t\t\t$tw.utils.each(subsuffix.split(\",\"),function(entry) {\n\t\t\t\t\tentry = $tw.utils.trim(entry);\n\t\t\t\t\tif(entry) {\n\t\t\t\t\t\toperator.suffixes[operator.suffixes.length - 1].push(entry); \n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\t// Empty operator means: title\n\t\telse if(operator.operator === \"\") {\n\t\t\toperator.operator = \"title\";\n\t\t}\n\t\toperator.operands = [];\n\t\tfunction parseOperand(bracketType) {\n\t\t\tvar operand = {};\n\t\t\tswitch (bracketType) {\n\t\t\t\tcase \"{\": // Curly brackets\n\t\t\t\t\toperand.indirect = true;\n\t\t\t\t\tnextBracketPos = filterString.indexOf(\"}\",p);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"[\": // Square brackets\n\t\t\t\t\tnextBracketPos = filterString.indexOf(\"]\",p);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"<\": // Angle brackets\n\t\t\t\t\toperand.variable = true;\n\t\t\t\t\tnextBracketPos = filterString.indexOf(\">\",p);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"/\": // regexp brackets\n\t\t\t\t\tvar rex = /^((?:[^\\\\\\/]*|\\\\.)*)\\/(?:\\(([mygi]+)\\))?/g,\n\t\t\t\t\t\trexMatch = rex.exec(filterString.substring(p));\n\t\t\t\t\tif(rexMatch) {\n\t\t\t\t\t\toperator.regexp = new RegExp(rexMatch[1], rexMatch[2]);\n\t// DEPRECATION WARNING\n\tconsole.log(\"WARNING: Filter\",operator.operator,\"has a deprecated regexp operand\",operator.regexp);\n\t\t\t\t\t\tnextBracketPos = p + rex.lastIndex - 1;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthrow \"Unterminated regular expression in filter expression\";\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif(nextBracketPos === -1) {\n\t\t\t\tthrow \"Missing closing bracket in filter expression\";\n\t\t\t}\n\t\t\tif(!operator.regexp) {\n\t\t\t\toperand.text = filterString.substring(p,nextBracketPos);\n\t\t\t\toperator.operands.push(operand);\n\t\t\t}\n\t\t\tp = nextBracketPos + 1;\n\t\t}\n\t\t\n\t\tp = nextBracketPos + 1;\n\t\tparseOperand(bracket);\n\t\t\n\t\t// Check for multiple operands\n\t\twhile(filterString.charAt(p) === \",\") {\n\t\t\tp++;\n\t\t\tif(/^[\\[\\{<\\/]/.test(filterString.substring(p))) {\n\t\t\t\tnextBracketPos = p;\n\t\t\t\tp++;\n\t\t\t\tparseOperand(filterString.charAt(nextBracketPos));\n\t\t\t} else {\n\t\t\t\tthrow \"Missing [ in filter expression\";\n\t\t\t}\n\t\t}\n\t\t\n\t\t// Push this operator\n\t\toperators.push(operator);\n\t} while(filterString.charAt(p) !== \"]\");\n\t// Skip the ending square bracket\n\tif(filterString.charAt(p++) !== \"]\") {\n\t\tthrow \"Missing ] in filter expression\";\n\t}\n\t// Return the parsing position\n\treturn p;\n}\n\n/*\nParse a filter string\n*/\nexports.parseFilter = function(filterString) {\n\tfilterString = filterString || \"\";\n\tvar results = [], // Array of arrays of operator nodes {operator:,operand:}\n\t\tp = 0, // Current position in the filter string\n\t\tmatch;\n\tvar whitespaceRegExp = /(\\s+)/mg,\n\t\toperandRegExp = /((?:\\+|\\-|~|=|\\:(\\w+))?)(?:(\\[)|(?:\"([^\"]*)\")|(?:'([^']*)')|([^\\s\\[\\]]+))/mg;\n\twhile(p < filterString.length) {\n\t\t// Skip any whitespace\n\t\twhitespaceRegExp.lastIndex = p;\n\t\tmatch = whitespaceRegExp.exec(filterString);\n\t\tif(match && match.index === p) {\n\t\t\tp = p + match[0].length;\n\t\t}\n\t\t// Match the start of the operation\n\t\tif(p < filterString.length) {\n\t\t\toperandRegExp.lastIndex = p;\n\t\t\tmatch = operandRegExp.exec(filterString);\n\t\t\tif(!match || match.index !== p) {\n\t\t\t\tthrow $tw.language.getString(\"Error/FilterSyntax\");\n\t\t\t}\n\t\t\tvar operation = {\n\t\t\t\tprefix: \"\",\n\t\t\t\toperators: []\n\t\t\t};\n\t\t\tif(match[1]) {\n\t\t\t\toperation.prefix = match[1];\n\t\t\t\tp = p + operation.prefix.length;\n\t\t\t\tif(match[2]) {\n\t\t\t\t\toperation.namedPrefix = match[2];\n\t\t\t\t}\n\t\t\t}\n\t\t\tif(match[3]) { // Opening square bracket\n\t\t\t\tp = parseFilterOperation(operation.operators,filterString,p);\n\t\t\t} else {\n\t\t\t\tp = match.index + match[0].length;\n\t\t\t}\n\t\t\tif(match[4] || match[5] || match[6]) { // Double quoted string, single quoted string or unquoted title\n\t\t\t\toperation.operators.push(\n\t\t\t\t\t{operator: \"title\", operands: [{text: match[4] || match[5] || match[6]}]}\n\t\t\t\t);\n\t\t\t}\n\t\t\tresults.push(operation);\n\t\t}\n\t}\n\treturn results;\n};\n\nexports.getFilterOperators = function() {\n\tif(!this.filterOperators) {\n\t\t$tw.Wiki.prototype.filterOperators = {};\n\t\t$tw.modules.applyMethods(\"filteroperator\",this.filterOperators);\n\t}\n\treturn this.filterOperators;\n};\n\nexports.getFilterRunPrefixes = function() {\n\tif(!this.filterRunPrefixes) {\n\t\t$tw.Wiki.prototype.filterRunPrefixes = {};\n\t\t$tw.modules.applyMethods(\"filterrunprefix\",this.filterRunPrefixes);\n\t}\n\treturn this.filterRunPrefixes;\n}\n\nexports.filterTiddlers = function(filterString,widget,source) {\n\tvar fn = this.compileFilter(filterString);\n\treturn fn.call(this,source,widget);\n};\n\n/*\nCompile a filter into a function with the signature fn(source,widget) where:\nsource: an iterator function for the source tiddlers, called source(iterator), where iterator is called as iterator(tiddler,title)\nwidget: an optional widget node for retrieving the current tiddler etc.\n*/\nexports.compileFilter = function(filterString) {\n\tvar filterParseTree;\n\ttry {\n\t\tfilterParseTree = this.parseFilter(filterString);\n\t} catch(e) {\n\t\treturn function(source,widget) {\n\t\t\treturn [$tw.language.getString(\"Error/Filter\") + \": \" + e];\n\t\t};\n\t}\n\t// Get the hashmap of filter operator functions\n\tvar filterOperators = this.getFilterOperators();\n\t// Assemble array of functions, one for each operation\n\tvar operationFunctions = [];\n\t// Step through the operations\n\tvar self = this;\n\t$tw.utils.each(filterParseTree,function(operation) {\n\t\t// Create a function for the chain of operators in the operation\n\t\tvar operationSubFunction = function(source,widget) {\n\t\t\tvar accumulator = source,\n\t\t\t\tresults = [],\n\t\t\t\tcurrTiddlerTitle = widget && widget.getVariable(\"currentTiddler\");\n\t\t\t$tw.utils.each(operation.operators,function(operator) {\n\t\t\t\tvar operands = [],\n\t\t\t\t\toperatorFunction;\n\t\t\t\tif(!operator.operator) {\n\t\t\t\t\toperatorFunction = filterOperators.title;\n\t\t\t\t} else if(!filterOperators[operator.operator]) {\n\t\t\t\t\toperatorFunction = filterOperators.field;\n\t\t\t\t} else {\n\t\t\t\t\toperatorFunction = filterOperators[operator.operator];\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t$tw.utils.each(operator.operands,function(operand) {\n\t\t\t\t\tif(operand.indirect) {\n\t\t\t\t\t\toperand.value = self.getTextReference(operand.text,\"\",currTiddlerTitle);\n\t\t\t\t\t} else if(operand.variable) {\n\t\t\t\t\t\toperand.value = widget.getVariable(operand.text,{defaultValue: \"\"});\n\t\t\t\t\t} else {\n\t\t\t\t\t\toperand.value = operand.text;\n\t\t\t\t\t}\n\t\t\t\t\toperands.push(operand.value);\n\t\t\t\t});\n\n\t\t\t\t// Invoke the appropriate filteroperator module\n\t\t\t\tresults = operatorFunction(accumulator,{\n\t\t\t\t\t\t\toperator: operator.operator,\n\t\t\t\t\t\t\toperand: operands.length > 0 ? operands[0] : undefined,\n\t\t\t\t\t\t\toperands: operands,\n\t\t\t\t\t\t\tprefix: operator.prefix,\n\t\t\t\t\t\t\tsuffix: operator.suffix,\n\t\t\t\t\t\t\tsuffixes: operator.suffixes,\n\t\t\t\t\t\t\tregexp: operator.regexp\n\t\t\t\t\t\t},{\n\t\t\t\t\t\t\twiki: self,\n\t\t\t\t\t\t\twidget: widget\n\t\t\t\t\t\t});\n\t\t\t\tif($tw.utils.isArray(results)) {\n\t\t\t\t\taccumulator = self.makeTiddlerIterator(results);\n\t\t\t\t} else {\n\t\t\t\t\taccumulator = results;\n\t\t\t\t}\n\t\t\t});\n\t\t\tif($tw.utils.isArray(results)) {\n\t\t\t\treturn results;\n\t\t\t} else {\n\t\t\t\tvar resultArray = [];\n\t\t\t\tresults(function(tiddler,title) {\n\t\t\t\t\tresultArray.push(title);\n\t\t\t\t});\n\t\t\t\treturn resultArray;\n\t\t\t}\n\t\t};\n\t\tvar filterRunPrefixes = self.getFilterRunPrefixes();\n\t\t// Wrap the operator functions in a wrapper function that depends on the prefix\n\t\toperationFunctions.push((function() {\n\t\t\tvar options = {wiki: self};\n\t\t\tswitch(operation.prefix || \"\") {\n\t\t\t\tcase \"\": // No prefix means that the operation is unioned into the result\n\t\t\t\t\treturn filterRunPrefixes[\"or\"](operationSubFunction, options);\n\t\t\t\tcase \"=\": // The results of the operation are pushed into the result without deduplication\n\t\t\t\t\treturn filterRunPrefixes[\"all\"](operationSubFunction, options);\n\t\t\t\tcase \"-\": // The results of this operation are removed from the main result\n\t\t\t\t\treturn filterRunPrefixes[\"except\"](operationSubFunction, options);\n\t\t\t\tcase \"+\": // This operation is applied to the main results so far\n\t\t\t\t\treturn filterRunPrefixes[\"and\"](operationSubFunction, options);\n\t\t\t\tcase \"~\": // This operation is unioned into the result only if the main result so far is empty\n\t\t\t\t\treturn filterRunPrefixes[\"else\"](operationSubFunction, options);\n\t\t\t\tdefault: \n\t\t\t\t\tif(operation.namedPrefix && filterRunPrefixes[operation.namedPrefix]) {\n\t\t\t\t\t\treturn filterRunPrefixes[operation.namedPrefix](operationSubFunction, options);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\t\tresults.clear();\n\t\t\t\t\t\t\tresults.push($tw.language.getString(\"Error/FilterRunPrefix\"));\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t}\n\t\t})());\n\t});\n\t// Return a function that applies the operations to a source iterator of tiddler titles\n\treturn $tw.perf.measure(\"filter: \" + filterString,function filterFunction(source,widget) {\n\t\tif(!source) {\n\t\t\tsource = self.each;\n\t\t} else if(typeof source === \"object\") { // Array or hashmap\n\t\t\tsource = self.makeTiddlerIterator(source);\n\t\t}\n\t\tvar results = new $tw.utils.LinkedList();\n\t\t$tw.utils.each(operationFunctions,function(operationFunction) {\n\t\t\toperationFunction(results,source,widget);\n\t\t});\n\t\treturn results.toArray();\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikimethod"
        },
        "$:/core/modules/indexers/backlinks-indexer.js": {
            "title": "$:/core/modules/indexers/backlinks-indexer.js",
            "text": "/*\\\ntitle: $:/core/modules/indexers/backlinks-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers' backlinks\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\n\nfunction BacklinksIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nBacklinksIndexer.prototype.init = function() {\n\tthis.index = null;\n}\n\nBacklinksIndexer.prototype.rebuild = function() {\n\tthis.index = null;\n}\n\nBacklinksIndexer.prototype._getLinks = function(tiddler) {\n\tvar parser =  this.wiki.parseText(tiddler.fields.type, tiddler.fields.text, {});\n\tif(parser) {\n\t\treturn this.wiki.extractLinks(parser.tree);\n\t}\n\treturn [];\n}\n\nBacklinksIndexer.prototype.update = function(updateDescriptor) {\n\tif(!this.index) {\n\t\treturn;\n\t}\n\tvar newLinks = [],\n\t    oldLinks = [],\n\t    self = this;\n\tif(updateDescriptor.old.exists) {\n\t\toldLinks = this._getLinks(updateDescriptor.old.tiddler);\n\t}\n\tif(updateDescriptor.new.exists) {\n\t\tnewLinks = this._getLinks(updateDescriptor.new.tiddler);\n\t}\n\n\t$tw.utils.each(oldLinks,function(link) {\n\t\tif(self.index[link]) {\n\t\t\tdelete self.index[link][updateDescriptor.old.tiddler.fields.title];\n\t\t}\n\t});\n\t$tw.utils.each(newLinks,function(link) {\n\t\tif(!self.index[link]) {\n\t\t\tself.index[link] = Object.create(null);\n\t\t}\n\t\tself.index[link][updateDescriptor.new.tiddler.fields.title] = true;\n\t});\n}\n\nBacklinksIndexer.prototype.lookup = function(title) {\n\tif(!this.index) {\n\t\tthis.index = Object.create(null);\n\t\tvar self = this;\n\t\tthis.wiki.forEachTiddler(function(title,tiddler) {\n\t\t\tvar links = self._getLinks(tiddler);\n\t\t\t$tw.utils.each(links, function(link) {\n\t\t\t\tif(!self.index[link]) {\n\t\t\t\t\tself.index[link] = Object.create(null);\n\t\t\t\t}\n\t\t\t\tself.index[link][title] = true;\n\t\t\t});\n\t\t});\n\t}\n\tif(this.index[title]) {\n\t\treturn Object.keys(this.index[title]);\n\t} else {\n\t\treturn [];\n\t}\n}\n\nexports.BacklinksIndexer = BacklinksIndexer;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "indexer"
        },
        "$:/core/modules/indexers/field-indexer.js": {
            "title": "$:/core/modules/indexers/field-indexer.js",
            "text": "/*\\\ntitle: $:/core/modules/indexers/field-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers with each field value\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\nvar DEFAULT_MAXIMUM_INDEXED_VALUE_LENGTH = 128;\n\nfunction FieldIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nFieldIndexer.prototype.init = function() {\n\tthis.index = null;\n\tthis.maxIndexedValueLength = DEFAULT_MAXIMUM_INDEXED_VALUE_LENGTH;\n\tthis.addIndexMethods();\n}\n\n// Provided for testing\nFieldIndexer.prototype.setMaxIndexedValueLength = function(length) {\n\tthis.index = null;\n\tthis.maxIndexedValueLength = length;\n};\n\nFieldIndexer.prototype.addIndexMethods = function() {\n\tvar self = this;\n\tthis.wiki.each.byField = function(name,value) {\n\t\tvar titles = self.wiki.allTitles(),\n\t\t\tlookup = self.lookup(name,value);\n\t\treturn lookup && lookup.filter(function(title) {\n\t\t\treturn titles.indexOf(title) !== -1;\n\t\t});\n\t};\n\tthis.wiki.eachShadow.byField = function(name,value) {\n\t\tvar titles = self.wiki.allShadowTitles(),\n\t\t\tlookup = self.lookup(name,value);\n\t\treturn lookup && lookup.filter(function(title) {\n\t\t\treturn titles.indexOf(title) !== -1;\n\t\t});\n\t};\n\tthis.wiki.eachTiddlerPlusShadows.byField = function(name,value) {\n\t\tvar lookup = self.lookup(name,value);\n\t\treturn lookup ? lookup.slice(0) : null;\n\t};\n\tthis.wiki.eachShadowPlusTiddlers.byField = function(name,value) {\n\t\tvar lookup = self.lookup(name,value);\n\t\treturn lookup ? lookup.slice(0) : null;\n\t};\n};\n\n/*\nTear down and then rebuild the index as if all tiddlers have changed\n*/\nFieldIndexer.prototype.rebuild = function() {\n\t// Invalidate the index so that it will be rebuilt when it is next used\n\tthis.index = null;\n};\n\n/*\nBuild the index for a particular field\n*/\nFieldIndexer.prototype.buildIndexForField = function(name) {\n\tvar self = this;\n\t// Hashmap by field name of hashmap by field value of array of tiddler titles\n\tthis.index = this.index || Object.create(null);\n\tthis.index[name] = Object.create(null);\n\tvar baseIndex = this.index[name];\n\t// Update the index for each tiddler\n\tthis.wiki.eachTiddlerPlusShadows(function(tiddler,title) {\n\t\tif(name in tiddler.fields) {\n\t\t\tvar value = tiddler.getFieldString(name);\n\t\t\t// Skip any values above the maximum length\n\t\t\tif(value.length < self.maxIndexedValueLength) {\n\t\t\t\tbaseIndex[value] = baseIndex[value] || [];\n\t\t\t\tbaseIndex[value].push(title);\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nUpdate the index in the light of a tiddler value changing; note that the title must be identical. (Renames are handled as a separate delete and create)\nupdateDescriptor: {old: {tiddler: <tiddler>, shadow: <boolean>, exists: <boolean>},new: {tiddler: <tiddler>, shadow: <boolean>, exists: <boolean>}}\n*/\nFieldIndexer.prototype.update = function(updateDescriptor) {\n\tvar self = this;\n\t// Don't do anything if the index hasn't been built yet\n\tif(this.index === null) {\n\t\treturn;\n\t}\n\t// Remove the old tiddler from the index\n\tif(updateDescriptor.old.tiddler) {\n\t\t$tw.utils.each(this.index,function(indexEntry,name) {\n\t\t\tif(name in updateDescriptor.old.tiddler.fields) {\n\t\t\t\tvar value = updateDescriptor.old.tiddler.getFieldString(name),\n\t\t\t\t\ttiddlerList = indexEntry[value];\n\t\t\t\tif(tiddlerList) {\n\t\t\t\t\tvar index = tiddlerList.indexOf(updateDescriptor.old.tiddler.fields.title);\n\t\t\t\t\tif(index !== -1) {\n\t\t\t\t\t\ttiddlerList.splice(index,1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\t// Add the new tiddler to the index\n\tif(updateDescriptor[\"new\"].tiddler) {\n\t\t$tw.utils.each(this.index,function(indexEntry,name) {\n\t\t\tif(name in updateDescriptor[\"new\"].tiddler.fields) {\n\t\t\t\tvar value = updateDescriptor[\"new\"].tiddler.getFieldString(name);\n\t\t\t\tif(value.length < self.maxIndexedValueLength) {\n\t\t\t\t\tindexEntry[value] = indexEntry[value] || [];\n\t\t\t\t\tindexEntry[value].push(updateDescriptor[\"new\"].tiddler.fields.title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\t\t\n\t}\n};\n\n// Lookup the given field returning a list of tiddler titles\nFieldIndexer.prototype.lookup = function(name,value) {\n\t// Fail the lookup if the value is too long\n\tif(value.length >= this.maxIndexedValueLength) {\n\t\treturn null;\n\t}\n\t// Update the index if it has yet to be built\n\tif(this.index === null || !this.index[name]) {\n\t\tthis.buildIndexForField(name);\n\t}\n\treturn this.index[name][value] || [];\n};\n\nexports.FieldIndexer = FieldIndexer;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "indexer"
        },
        "$:/core/modules/indexers/tag-indexer.js": {
            "title": "$:/core/modules/indexers/tag-indexer.js",
            "text": "/*\\\ntitle: $:/core/modules/indexers/tag-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers with each tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\nfunction TagIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nTagIndexer.prototype.init = function() {\n\tthis.subIndexers = [\n\t\tnew TagSubIndexer(this,\"each\"),\n\t\tnew TagSubIndexer(this,\"eachShadow\"),\n\t\tnew TagSubIndexer(this,\"eachTiddlerPlusShadows\"),\n\t\tnew TagSubIndexer(this,\"eachShadowPlusTiddlers\")\n\t];\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.addIndexMethod();\n\t});\n};\n\nTagIndexer.prototype.rebuild = function() {\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.rebuild();\n\t});\n};\n\nTagIndexer.prototype.update = function(updateDescriptor) {\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.update(updateDescriptor);\n\t});\n};\n\nfunction TagSubIndexer(indexer,iteratorMethod) {\n\tthis.indexer = indexer;\n\tthis.iteratorMethod = iteratorMethod;\n\tthis.index = null; // Hashmap of tag title to {isSorted: bool, titles: [array]} or null if not yet initialised\n}\n\nTagSubIndexer.prototype.addIndexMethod = function() {\n\tvar self = this;\n\tthis.indexer.wiki[this.iteratorMethod].byTag = function(tag) {\n\t\treturn self.lookup(tag).slice(0);\n\t};\n};\n\nTagSubIndexer.prototype.rebuild = function() {\n\tvar self = this;\n\t// Hashmap by tag of array of {isSorted:, titles:[]}\n\tthis.index = Object.create(null);\n\t// Add all the tags\n\tthis.indexer.wiki[this.iteratorMethod](function(tiddler,title) {\n\t\t$tw.utils.each(tiddler.fields.tags,function(tag) {\n\t\t\tif(!self.index[tag]) {\n\t\t\t\tself.index[tag] = {isSorted: false, titles: [title]};\n\t\t\t} else {\n\t\t\t\tself.index[tag].titles.push(title);\n\t\t\t}\n\t\t});\t\t\n\t});\n};\n\nTagSubIndexer.prototype.update = function(updateDescriptor) {\n\tthis.index = null;\n};\n\nTagSubIndexer.prototype.lookup = function(tag) {\n\t// Update the index if it has yet to be built\n\tif(this.index === null) {\n\t\tthis.rebuild();\n\t}\n\tvar indexRecord = this.index[tag];\n\tif(indexRecord) {\n\t\tif(!indexRecord.isSorted) {\n\t\t\tif(this.indexer.wiki.sortByList) {\n\t\t\t\tindexRecord.titles = this.indexer.wiki.sortByList(indexRecord.titles,tag);\n\t\t\t}\t\t\t\n\t\t\tindexRecord.isSorted = true;\n\t\t}\n\t\treturn indexRecord.titles;\n\t} else {\n\t\treturn [];\n\t}\n};\n\n\nexports.TagIndexer = TagIndexer;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "indexer"
        },
        "$:/core/modules/info/platform.js": {
            "title": "$:/core/modules/info/platform.js",
            "text": "/*\\\ntitle: $:/core/modules/info/platform.js\ntype: application/javascript\nmodule-type: info\n\nInitialise basic platform $:/info/ tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.getInfoTiddlerFields = function(updateInfoTiddlersCallback) {\n\tvar mapBoolean = function(value) {return value ? \"yes\" : \"no\";},\n\t\tinfoTiddlerFields = [];\n\t// Basics\n\tinfoTiddlerFields.push({title: \"$:/info/browser\", text: mapBoolean(!!$tw.browser)});\n\tinfoTiddlerFields.push({title: \"$:/info/node\", text: mapBoolean(!!$tw.node)});\n\tinfoTiddlerFields.push({title: \"$:/info/startup-timestamp\", text: $tw.utils.stringifyDate(new Date())});\n\tif($tw.browser) {\n\t\t// Document location\n\t\tvar setLocationProperty = function(name,value) {\n\t\t\t\tinfoTiddlerFields.push({title: \"$:/info/url/\" + name, text: value});\t\t\t\n\t\t\t},\n\t\t\tlocation = document.location;\n\t\tsetLocationProperty(\"full\", (location.toString()).split(\"#\")[0]);\n\t\tsetLocationProperty(\"host\", location.host);\n\t\tsetLocationProperty(\"hostname\", location.hostname);\n\t\tsetLocationProperty(\"protocol\", location.protocol);\n\t\tsetLocationProperty(\"port\", location.port);\n\t\tsetLocationProperty(\"pathname\", location.pathname);\n\t\tsetLocationProperty(\"search\", location.search);\n\t\tsetLocationProperty(\"origin\", location.origin);\n\t\t// Screen size\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/screen/width\", text: window.screen.width.toString()});\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/screen/height\", text: window.screen.height.toString()});\n \t\t// Dark mode through event listener on MediaQueryList\n \t\tvar mqList = window.matchMedia(\"(prefers-color-scheme: dark)\"),\n \t\t\tgetDarkModeTiddler = function() {return {title: \"$:/info/darkmode\", text: mqList.matches ? \"yes\" : \"no\"};};\n \t\tinfoTiddlerFields.push(getDarkModeTiddler());\n \t\tmqList.addListener(function(event) {\n \t\t\tupdateInfoTiddlersCallback([getDarkModeTiddler()]);\n \t\t});\n\t\t// Language\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/language\", text: navigator.language || \"\"});\n\t}\n\treturn infoTiddlerFields;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "info"
        },
        "$:/core/modules/keyboard.js": {
            "title": "$:/core/modules/keyboard.js",
            "text": "/*\\\ntitle: $:/core/modules/keyboard.js\ntype: application/javascript\nmodule-type: global\n\nKeyboard handling utilities\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar namedKeys = {\n\t\"cancel\": 3,\n\t\"help\": 6,\n\t\"backspace\": 8,\n\t\"tab\": 9,\n\t\"clear\": 12,\n\t\"return\": 13,\n\t\"enter\": 13,\n\t\"pause\": 19,\n\t\"escape\": 27,\n\t\"space\": 32,\n\t\"page_up\": 33,\n\t\"page_down\": 34,\n\t\"end\": 35,\n\t\"home\": 36,\n\t\"left\": 37,\n\t\"up\": 38,\n\t\"right\": 39,\n\t\"down\": 40,\n\t\"printscreen\": 44,\n\t\"insert\": 45,\n\t\"delete\": 46,\n\t\"0\": 48,\n\t\"1\": 49,\n\t\"2\": 50,\n\t\"3\": 51,\n\t\"4\": 52,\n\t\"5\": 53,\n\t\"6\": 54,\n\t\"7\": 55,\n\t\"8\": 56,\n\t\"9\": 57,\n\t\"firefoxsemicolon\": 59,\n\t\"firefoxequals\": 61,\n\t\"a\": 65,\n\t\"b\": 66,\n\t\"c\": 67,\n\t\"d\": 68,\n\t\"e\": 69,\n\t\"f\": 70,\n\t\"g\": 71,\n\t\"h\": 72,\n\t\"i\": 73,\n\t\"j\": 74,\n\t\"k\": 75,\n\t\"l\": 76,\n\t\"m\": 77,\n\t\"n\": 78,\n\t\"o\": 79,\n\t\"p\": 80,\n\t\"q\": 81,\n\t\"r\": 82,\n\t\"s\": 83,\n\t\"t\": 84,\n\t\"u\": 85,\n\t\"v\": 86,\n\t\"w\": 87,\n\t\"x\": 88,\n\t\"y\": 89,\n\t\"z\": 90,\n\t\"numpad0\": 96,\n\t\"numpad1\": 97,\n\t\"numpad2\": 98,\n\t\"numpad3\": 99,\n\t\"numpad4\": 100,\n\t\"numpad5\": 101,\n\t\"numpad6\": 102,\n\t\"numpad7\": 103,\n\t\"numpad8\": 104,\n\t\"numpad9\": 105,\n\t\"multiply\": 106,\n\t\"add\": 107,\n\t\"separator\": 108,\n\t\"subtract\": 109,\n\t\"decimal\": 110,\n\t\"divide\": 111,\n\t\"f1\": 112,\n\t\"f2\": 113,\n\t\"f3\": 114,\n\t\"f4\": 115,\n\t\"f5\": 116,\n\t\"f6\": 117,\n\t\"f7\": 118,\n\t\"f8\": 119,\n\t\"f9\": 120,\n\t\"f10\": 121,\n\t\"f11\": 122,\n\t\"f12\": 123,\n\t\"f13\": 124,\n\t\"f14\": 125,\n\t\"f15\": 126,\n\t\"f16\": 127,\n\t\"f17\": 128,\n\t\"f18\": 129,\n\t\"f19\": 130,\n\t\"f20\": 131,\n\t\"f21\": 132,\n\t\"f22\": 133,\n\t\"f23\": 134,\n\t\"f24\": 135,\n\t\"firefoxminus\": 173,\n\t\"semicolon\": 186,\n\t\"equals\": 187,\n\t\"comma\": 188,\n\t\"dash\": 189,\n\t\"period\": 190,\n\t\"slash\": 191,\n\t\"backquote\": 192,\n\t\"openbracket\": 219,\n\t\"backslash\": 220,\n\t\"closebracket\": 221,\n\t\"quote\": 222\n};\n\nfunction KeyboardManager(options) {\n\tvar self = this;\n\toptions = options || \"\";\n\t// Save the named key hashmap\n\tthis.namedKeys = namedKeys;\n\t// Create a reverse mapping of code to keyname\n\tthis.keyNames = [];\n\t$tw.utils.each(namedKeys,function(keyCode,name) {\n\t\tself.keyNames[keyCode] = name.substr(0,1).toUpperCase() + name.substr(1);\n\t});\n\t// Save the platform-specific name of the \"meta\" key\n\tthis.metaKeyName = $tw.platform.isMac ? \"cmd-\" : \"win-\";\n\tthis.shortcutKeysList = [], // Stores the shortcut-key descriptors\n\tthis.shortcutActionList = [], // Stores the corresponding action strings\n\tthis.shortcutParsedList = []; // Stores the parsed key descriptors\n\tthis.lookupNames = [\"shortcuts\"];\n\tthis.lookupNames.push($tw.platform.isMac ? \"shortcuts-mac\" : \"shortcuts-not-mac\")\n\tthis.lookupNames.push($tw.platform.isWindows ? \"shortcuts-windows\" : \"shortcuts-not-windows\");\n\tthis.lookupNames.push($tw.platform.isLinux ? \"shortcuts-linux\" : \"shortcuts-not-linux\");\n\tthis.updateShortcutLists(this.getShortcutTiddlerList());\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tself.handleShortcutChanges(changes);\n\t});\n}\n\n/*\nReturn an array of keycodes for the modifier keys ctrl, shift, alt, meta\n*/\nKeyboardManager.prototype.getModifierKeys = function() {\n\treturn [\n\t\t16, // Shift\n\t\t17, // Ctrl\n\t\t18, // Alt\n\t\t20, // CAPS LOCK\n\t\t91, // Meta (left)\n\t\t93, // Meta (right)\n\t\t224 // Meta (Firefox)\n\t]\n};\n\n/*\nParses a key descriptor into the structure:\n{\n\tkeyCode: numeric keycode\n\tshiftKey: boolean\n\taltKey: boolean\n\tctrlKey: boolean\n\tmetaKey: boolean\n}\nKey descriptors have the following format:\n\tctrl+enter\n\tctrl+shift+alt+A\n*/\nKeyboardManager.prototype.parseKeyDescriptor = function(keyDescriptor) {\n\tvar components = keyDescriptor.split(/\\+|\\-/),\n\t\tinfo = {\n\t\t\tkeyCode: 0,\n\t\t\tshiftKey: false,\n\t\t\taltKey: false,\n\t\t\tctrlKey: false,\n\t\t\tmetaKey: false\n\t\t};\n\tfor(var t=0; t<components.length; t++) {\n\t\tvar s = components[t].toLowerCase(),\n\t\t\tc = s.charCodeAt(0);\n\t\t// Look for modifier keys\n\t\tif(s === \"ctrl\") {\n\t\t\tinfo.ctrlKey = true;\n\t\t} else if(s === \"shift\") {\n\t\t\tinfo.shiftKey = true;\n\t\t} else if(s === \"alt\") {\n\t\t\tinfo.altKey = true;\n\t\t} else if(s === \"meta\" || s === \"cmd\" || s === \"win\") {\n\t\t\tinfo.metaKey = true;\n\t\t}\n\t\t// Replace named keys with their code\n\t\tif(this.namedKeys[s]) {\n\t\t\tinfo.keyCode = this.namedKeys[s];\n\t\t}\n\t}\n\tif(info.keyCode) {\n\t\treturn info;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nParse a list of key descriptors into an array of keyInfo objects. The key descriptors can be passed as an array of strings or a space separated string\n*/\nKeyboardManager.prototype.parseKeyDescriptors = function(keyDescriptors,options) {\n\tvar self = this;\n\toptions = options || {};\n\toptions.stack = options.stack || [];\n\tvar wiki = options.wiki || $tw.wiki;\n\tif(typeof keyDescriptors === \"string\" && keyDescriptors === \"\") {\n\t\treturn [];\n\t}\n\tif(!$tw.utils.isArray(keyDescriptors)) {\n\t\tkeyDescriptors = keyDescriptors.split(\" \");\n\t}\n\tvar result = [];\n\t$tw.utils.each(keyDescriptors,function(keyDescriptor) {\n\t\t// Look for a named shortcut\n\t\tif(keyDescriptor.substr(0,2) === \"((\" && keyDescriptor.substr(-2,2) === \"))\") {\n\t\t\tif(options.stack.indexOf(keyDescriptor) === -1) {\n\t\t\t\toptions.stack.push(keyDescriptor);\n\t\t\t\tvar name = keyDescriptor.substring(2,keyDescriptor.length - 2),\n\t\t\t\t\tlookupName = function(configName) {\n\t\t\t\t\t\tvar keyDescriptors = wiki.getTiddlerText(\"$:/config/\" + configName + \"/\" + name);\n\t\t\t\t\t\tif(keyDescriptors) {\n\t\t\t\t\t\t\tresult.push.apply(result,self.parseKeyDescriptors(keyDescriptors,options));\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t$tw.utils.each(self.lookupNames,function(platformDescriptor) {\n\t\t\t\t\tlookupName(platformDescriptor);\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tresult.push(self.parseKeyDescriptor(keyDescriptor));\n\t\t}\n\t});\n\treturn result;\n};\n\nKeyboardManager.prototype.getPrintableShortcuts = function(keyInfoArray) {\n\tvar self = this,\n\t\tresult = [];\n\t$tw.utils.each(keyInfoArray,function(keyInfo) {\n\t\tif(keyInfo) {\n\t\t\tresult.push((keyInfo.ctrlKey ? \"ctrl-\" : \"\") + \n\t\t\t\t   (keyInfo.shiftKey ? \"shift-\" : \"\") + \n\t\t\t\t   (keyInfo.altKey ? \"alt-\" : \"\") + \n\t\t\t\t   (keyInfo.metaKey ? self.metaKeyName : \"\") + \n\t\t\t\t   (self.keyNames[keyInfo.keyCode]));\n\t\t}\n\t});\n\treturn result;\n}\n\nKeyboardManager.prototype.checkKeyDescriptor = function(event,keyInfo) {\n\treturn keyInfo &&\n\t\t\tevent.keyCode === keyInfo.keyCode && \n\t\t\tevent.shiftKey === keyInfo.shiftKey && \n\t\t\tevent.altKey === keyInfo.altKey && \n\t\t\tevent.ctrlKey === keyInfo.ctrlKey && \n\t\t\tevent.metaKey === keyInfo.metaKey;\n};\n\nKeyboardManager.prototype.checkKeyDescriptors = function(event,keyInfoArray) {\n\tfor(var t=0; t<keyInfoArray.length; t++) {\n\t\tif(this.checkKeyDescriptor(event,keyInfoArray[t])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\nKeyboardManager.prototype.getEventModifierKeyDescriptor = function(event) {\n\treturn event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey ? \"ctrl\" : \n\t\tevent.shiftKey && !event.ctrlKey && !event.altKey && !event.metaKey ? \"shift\" : \n\t\tevent.ctrlKey && event.shiftKey && !event.altKey && !event.metaKey ? \"ctrl-shift\" : \n\t\tevent.altKey && !event.shiftKey && !event.ctrlKey && !event.metaKey ? \"alt\" : \n\t\tevent.altKey && event.shiftKey && !event.ctrlKey && !event.metaKey ? \"alt-shift\" : \n\t\tevent.altKey && event.ctrlKey && !event.shiftKey && !event.metaKey ? \"ctrl-alt\" : \n\t\tevent.altKey && event.shiftKey && event.ctrlKey && !event.metaKey ? \"ctrl-alt-shift\" : \n\t\tevent.metaKey && !event.ctrlKey && !event.shiftKey && !event.altKey ? \"meta\" : \n\t\tevent.metaKey && event.ctrlKey && !event.shiftKey && !event.altKey ? \"meta-ctrl\" :\n\t\tevent.metaKey && event.ctrlKey && event.shiftKey && !event.altKey ? \"meta-ctrl-shift\" :\n\t\tevent.metaKey && event.ctrlKey & event.shiftKey && event.altKey ? \"meta-ctrl-alt-shift\" : \"normal\";\n};\n\nKeyboardManager.prototype.getShortcutTiddlerList = function() {\n\treturn $tw.wiki.getTiddlersWithTag(\"$:/tags/KeyboardShortcut\");\n};\n\nKeyboardManager.prototype.updateShortcutLists = function(tiddlerList) {\n\tthis.shortcutTiddlers = tiddlerList;\n\tfor(var i=0; i<tiddlerList.length; i++) {\n\t\tvar title = tiddlerList[i],\n\t\t\ttiddlerFields = $tw.wiki.getTiddler(title).fields;\n\t\tthis.shortcutKeysList[i] = tiddlerFields.key !== undefined ? tiddlerFields.key : undefined;\n\t\tthis.shortcutActionList[i] = tiddlerFields.text;\n\t\tthis.shortcutParsedList[i] = this.shortcutKeysList[i] !== undefined ? this.parseKeyDescriptors(this.shortcutKeysList[i]) : undefined;\n\t}\n};\n\nKeyboardManager.prototype.handleKeydownEvent = function(event) {\n\tvar key, action;\n\tfor(var i=0; i<this.shortcutTiddlers.length; i++) {\n\t\tif(this.shortcutParsedList[i] !== undefined && this.checkKeyDescriptors(event,this.shortcutParsedList[i])) {\n\t\t\tkey = this.shortcutParsedList[i];\n\t\t\taction = this.shortcutActionList[i];\n\t\t}\n\t}\n\tif(key !== undefined) {\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\t$tw.rootWidget.invokeActionString(action,$tw.rootWidget);\n\t\treturn true;\n\t}\n\treturn false;\n};\n\nKeyboardManager.prototype.detectNewShortcuts = function(changedTiddlers) {\n\tvar shortcutConfigTiddlers = [],\n\t\thandled = false;\n\t$tw.utils.each(this.lookupNames,function(platformDescriptor) {\n\t\tvar descriptorString = \"$:/config/\" + platformDescriptor + \"/\";\n\t\tObject.keys(changedTiddlers).forEach(function(configTiddler) {\n\t\t\tvar configString = configTiddler.substr(0, configTiddler.lastIndexOf(\"/\") + 1);\n\t\t\tif(configString === descriptorString) {\n\t\t\t\tshortcutConfigTiddlers.push(configTiddler);\n\t\t\t\thandled = true;\n\t\t\t}\n\t\t});\n\t});\n\tif(handled) {\n\t\treturn $tw.utils.hopArray(changedTiddlers,shortcutConfigTiddlers);\n\t} else {\n\t\treturn false;\n\t}\n};\n\nKeyboardManager.prototype.handleShortcutChanges = function(changedTiddlers) {\n\tvar newList = this.getShortcutTiddlerList();\n\tvar hasChanged = $tw.utils.hopArray(changedTiddlers,this.shortcutTiddlers) ? true :\n\t\t($tw.utils.hopArray(changedTiddlers,newList) ? true :\n\t\t(this.detectNewShortcuts(changedTiddlers))\n\t);\n\t// Re-cache shortcuts if something changed\n\tif(hasChanged) {\n\t\tthis.updateShortcutLists(newList);\n\t}\n};\n\nexports.KeyboardManager = KeyboardManager;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/language.js": {
            "title": "$:/core/modules/language.js",
            "text": "/*\\\ntitle: $:/core/modules/language.js\ntype: application/javascript\nmodule-type: global\n\nThe $tw.Language() manages translateable strings\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreate an instance of the language manager. Options include:\nwiki: wiki from which to retrieve translation tiddlers\n*/\nfunction Language(options) {\n\toptions = options || \"\";\n\tthis.wiki = options.wiki || $tw.wiki;\n}\n\n/*\nReturn a wikified translateable string. The title is automatically prefixed with \"$:/language/\"\nOptions include:\nvariables: optional hashmap of variables to supply to the language wikification\n*/\nLanguage.prototype.getString = function(title,options) {\n\toptions = options || {};\n\ttitle = \"$:/language/\" + title;\n\treturn this.wiki.renderTiddler(\"text/plain\",title,{variables: options.variables});\n};\n\n/*\nReturn a raw, unwikified translateable string. The title is automatically prefixed with \"$:/language/\"\n*/\nLanguage.prototype.getRawString = function(title) {\n\ttitle = \"$:/language/\" + title;\n\treturn this.wiki.getTiddlerText(title);\n};\n\nexports.Language = Language;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/macros/changecount.js": {
            "title": "$:/core/modules/macros/changecount.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/changecount.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return the changecount for the current tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"changecount\";\n\nexports.params = [];\n\n/*\nRun the macro\n*/\nexports.run = function() {\n\treturn this.wiki.getChangeCount(this.getVariable(\"currentTiddler\")) + \"\";\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/contrastcolour.js": {
            "title": "$:/core/modules/macros/contrastcolour.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/contrastcolour.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to choose which of two colours has the highest contrast with a base colour\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"contrastcolour\";\n\nexports.params = [\n\t{name: \"target\"},\n\t{name: \"fallbackTarget\"},\n\t{name: \"colourA\"},\n\t{name: \"colourB\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(target,fallbackTarget,colourA,colourB) {\n\tvar rgbTarget = $tw.utils.parseCSSColor(target) || $tw.utils.parseCSSColor(fallbackTarget);\n\tif(!rgbTarget) {\n\t\treturn colourA;\n\t}\n\tvar rgbColourA = $tw.utils.parseCSSColor(colourA),\n\t\trgbColourB = $tw.utils.parseCSSColor(colourB);\n\tif(rgbColourA && !rgbColourB) {\n\t\treturn rgbColourA;\n\t}\n\tif(rgbColourB && !rgbColourA) {\n\t\treturn rgbColourB;\n\t}\n\tif(!rgbColourA && !rgbColourB) {\n\t\t// If neither colour is readable, return a crude inverse of the target\n\t\treturn [255 - rgbTarget[0],255 - rgbTarget[1],255 - rgbTarget[2],rgbTarget[3]];\n\t}\n\t// Colour brightness formula derived from http://www.w3.org/WAI/ER/WD-AERT/#color-contrast\n\tvar brightnessTarget = rgbTarget[0] * 0.299 + rgbTarget[1] * 0.587 + rgbTarget[2] * 0.114,\n\t\tbrightnessA = rgbColourA[0] * 0.299 + rgbColourA[1] * 0.587 + rgbColourA[2] * 0.114,\n\t\tbrightnessB = rgbColourB[0] * 0.299 + rgbColourB[1] * 0.587 + rgbColourB[2] * 0.114;\n\treturn Math.abs(brightnessTarget - brightnessA) > Math.abs(brightnessTarget - brightnessB) ? colourA : colourB;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/csvtiddlers.js": {
            "title": "$:/core/modules/macros/csvtiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/csvtiddlers.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output tiddlers matching a filter to CSV\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"csvtiddlers\";\n\nexports.params = [\n\t{name: \"filter\"},\n\t{name: \"format\"},\n];\n\n/*\nRun the macro\n*/\nexports.run = function(filter,format) {\n\tvar self = this,\n\t\ttiddlers = this.wiki.filterTiddlers(filter),\n\t\ttiddler,\n\t\tfields = [],\n\t\tt,f;\n\t// Collect all the fields\n\tfor(t=0;t<tiddlers.length; t++) {\n\t\ttiddler = this.wiki.getTiddler(tiddlers[t]);\n\t\tfor(f in tiddler.fields) {\n\t\t\tif(fields.indexOf(f) === -1) {\n\t\t\t\tfields.push(f);\n\t\t\t}\n\t\t}\n\t}\n\t// Sort the fields and bring the standard ones to the front\n\tfields.sort();\n\t\"title text modified modifier created creator\".split(\" \").reverse().forEach(function(value,index) {\n\t\tvar p = fields.indexOf(value);\n\t\tif(p !== -1) {\n\t\t\tfields.splice(p,1);\n\t\t\tfields.unshift(value)\n\t\t}\n\t});\n\t// Output the column headings\n\tvar output = [], row = [];\n\tfields.forEach(function(value) {\n\t\trow.push(quoteAndEscape(value))\n\t});\n\toutput.push(row.join(\",\"));\n\t// Output each tiddler\n\tfor(var t=0;t<tiddlers.length; t++) {\n\t\trow = [];\n\t\ttiddler = this.wiki.getTiddler(tiddlers[t]);\n\t\t\tfor(f=0; f<fields.length; f++) {\n\t\t\t\trow.push(quoteAndEscape(tiddler ? tiddler.getFieldString(fields[f]) || \"\" : \"\"));\n\t\t\t}\n\t\toutput.push(row.join(\",\"));\n\t}\n\treturn output.join(\"\\n\");\n};\n\nfunction quoteAndEscape(value) {\n\treturn \"\\\"\" + value.replace(/\"/mg,\"\\\"\\\"\") + \"\\\"\";\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/displayshortcuts.js": {
            "title": "$:/core/modules/macros/displayshortcuts.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/displayshortcuts.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to display a list of keyboard shortcuts in human readable form. Notably, it resolves named shortcuts like `((bold))` to the underlying keystrokes.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"displayshortcuts\";\n\nexports.params = [\n\t{name: \"shortcuts\"},\n\t{name: \"prefix\"},\n\t{name: \"separator\"},\n\t{name: \"suffix\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(shortcuts,prefix,separator,suffix) {\n\tvar shortcutArray = $tw.keyboardManager.getPrintableShortcuts($tw.keyboardManager.parseKeyDescriptors(shortcuts,{\n\t\twiki: this.wiki\n\t}));\n\tif(shortcutArray.length > 0) {\n\t\tshortcutArray.sort(function(a,b) {\n\t\t    return a.toLowerCase().localeCompare(b.toLowerCase());\n\t\t})\n\t\treturn prefix + shortcutArray.join(separator) + suffix;\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/jsontiddler.js": {
            "title": "$:/core/modules/macros/jsontiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/jsontiddler.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output a single tiddler to JSON\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"jsontiddler\";\n\nexports.params = [\n\t{name: \"title\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(title) {\n\ttitle = title || this.getVariable(\"currentTiddler\");\n\tvar tiddler = !!title && this.wiki.getTiddler(title),\n\t\tfields = new Object();\n\tif(tiddler) {\n\t\tfor(var field in tiddler.fields) {\n\t\t\tfields[field] = tiddler.getFieldString(field);\n\t\t}\n\t}\n\treturn JSON.stringify(fields,null,$tw.config.preferences.jsonSpaces);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/jsontiddlers.js": {
            "title": "$:/core/modules/macros/jsontiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/jsontiddlers.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output tiddlers matching a filter to JSON\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"jsontiddlers\";\n\nexports.params = [\n\t{name: \"filter\"},\n\t{name: \"spaces\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(filter,spaces) {\n\treturn this.wiki.getTiddlersAsJson(filter,$tw.utils.parseInt(spaces));\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/makedatauri.js": {
            "title": "$:/core/modules/macros/makedatauri.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/makedatauri.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to convert a string of text to a data URI\n\n<<makedatauri text:\"Text to be converted\" type:\"text/vnd.tiddlywiki\">>\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"makedatauri\";\n\nexports.params = [\n\t{name: \"text\"},\n\t{name: \"type\"},\n\t{name: \"_canonical_uri\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(text,type,_canonical_uri) {\n\treturn $tw.utils.makeDataUri(text,type,_canonical_uri);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/now.js": {
            "title": "$:/core/modules/macros/now.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/now.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return a formatted version of the current time\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"now\";\n\nexports.params = [\n\t{name: \"format\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(format) {\n\treturn $tw.utils.formatDateString(new Date(),format || \"0hh:0mm, DDth MMM YYYY\");\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/qualify.js": {
            "title": "$:/core/modules/macros/qualify.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/qualify.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to qualify a state tiddler title according\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"qualify\";\n\nexports.params = [\n\t{name: \"title\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(title) {\n\treturn title + \"-\" + this.getStateQualifier();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/resolvepath.js": {
            "title": "$:/core/modules/macros/resolvepath.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/resolvepath.js\ntype: application/javascript\nmodule-type: macro\n\nResolves a relative path for an absolute rootpath.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"resolvepath\";\n\nexports.params = [\n\t{name: \"source\"},\n\t{name: \"root\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(source, root) {\n\treturn $tw.utils.resolvePath(source, root);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/unusedtitle.js": {
            "title": "$:/core/modules/macros/unusedtitle.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/unusedtitle.js\ntype: application/javascript\nmodule-type: macro\nMacro to return a new title that is unused in the wiki. It can be given a name as a base.\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"unusedtitle\";\n\nexports.params = [\n\t{name: \"baseName\"},\n\t{name: \"options\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(baseName, options) {\n\tif(!baseName) {\n\t\tbaseName = $tw.language.getString(\"DefaultNewTiddlerTitle\");\n\t}\n\treturn this.wiki.generateNewTitle(baseName, options);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/version.js": {
            "title": "$:/core/modules/macros/version.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/version.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return the TiddlyWiki core version number\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"version\";\n\nexports.params = [];\n\n/*\nRun the macro\n*/\nexports.run = function() {\n\treturn $tw.version;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/parsers/audioparser.js": {
            "title": "$:/core/modules/parsers/audioparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/audioparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe audio parser parses an audio tiddler into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar AudioParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"audio\",\n\t\t\tattributes: {\n\t\t\t\tcontrols: {type: \"string\", value: \"controls\"},\n\t\t\t\tstyle: {type: \"string\", value: \"width: 100%; object-fit: contain\"}\n\t\t\t}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"audio/ogg\"] = AudioParser;\nexports[\"audio/mpeg\"] = AudioParser;\nexports[\"audio/mp3\"] = AudioParser;\nexports[\"audio/mp4\"] = AudioParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/binaryparser.js": {
            "title": "$:/core/modules/parsers/binaryparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/binaryparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe binary parser parses a binary tiddler into a warning message and download link\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar BINARY_WARNING_MESSAGE = \"$:/core/ui/BinaryWarning\";\nvar EXPORT_BUTTON_IMAGE = \"$:/core/images/export-button\";\n\nvar BinaryParser = function(type,text,options) {\n\t// Transclude the binary data tiddler warning message\n\tvar warn = {\n\t\ttype: \"element\",\n\t\ttag: \"p\",\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: BINARY_WARNING_MESSAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Create download link based on binary tiddler title\n\tvar link = {\n\t\ttype: \"element\",\n\t\ttag: \"a\",\n\t\tattributes: {\n\t\t\ttitle: {type: \"indirect\", textReference: \"!!title\"},\n\t\t\tdownload: {type: \"indirect\", textReference: \"!!title\"}\n\t\t},\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: EXPORT_BUTTON_IMAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Set the link href to external or internal data URI\n\tif(options._canonical_uri) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: options._canonical_uri\n\t\t};\n\t} else if(text) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: \"data:\" + type + \";base64,\" + text\n\t\t};\n\t}\n\t// Combine warning message and download link in a div\n\tvar element = {\n\t\ttype: \"element\",\n\t\ttag: \"div\",\n\t\tattributes: {\n\t\t\tclass: {type: \"string\", value: \"tc-binary-warning\"}\n\t\t},\n\t\tchildren: [warn, link]\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"application/octet-stream\"] = BinaryParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/csvparser.js": {
            "title": "$:/core/modules/parsers/csvparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/csvparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe CSV text parser processes CSV files into a table wrapped in a scrollable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar CsvParser = function(type,text,options) {\n\t// Table framework\n\tthis.tree = [{\n\t\t\"type\": \"scrollable\", \"children\": [{\n\t\t\t\"type\": \"element\", \"tag\": \"table\", \"children\": [{\n\t\t\t\t\"type\": \"element\", \"tag\": \"tbody\", \"children\": []\n\t\t\t}], \"attributes\": {\n\t\t\t\t\"class\": {\"type\": \"string\", \"value\": \"tc-csv-table\"}\n\t\t\t}\n\t\t}]\n\t}];\n\t// Split the text into lines\n\tvar lines = text.split(/\\r?\\n/mg),\n\t\ttag = \"th\";\n\tfor(var line=0; line<lines.length; line++) {\n\t\tvar lineText = lines[line];\n\t\tif(lineText) {\n\t\t\tvar row = {\n\t\t\t\t\t\"type\": \"element\", \"tag\": \"tr\", \"children\": []\n\t\t\t\t};\n\t\t\tvar columns = lineText.split(\",\");\n\t\t\tfor(var column=0; column<columns.length; column++) {\n\t\t\t\trow.children.push({\n\t\t\t\t\t\t\"type\": \"element\", \"tag\": tag, \"children\": [{\n\t\t\t\t\t\t\t\"type\": \"text\",\n\t\t\t\t\t\t\t\"text\": columns[column]\n\t\t\t\t\t\t}]\n\t\t\t\t\t});\n\t\t\t}\n\t\t\ttag = \"td\";\n\t\t\tthis.tree[0].children[0].children[0].children.push(row);\n\t\t}\n\t}\n};\n\nexports[\"text/csv\"] = CsvParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/htmlparser.js": {
            "title": "$:/core/modules/parsers/htmlparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/htmlparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe HTML parser displays text as raw HTML\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HtmlParser = function(type,text,options) {\n\tvar src;\n\tif(options._canonical_uri) {\n\t\tsrc = options._canonical_uri;\n\t} else if(text) {\n\t\tsrc = \"data:text/html;charset=utf-8,\" + encodeURIComponent(text);\n\t}\n\tthis.tree = [{\n\t\ttype: \"element\",\n\t\ttag: \"iframe\",\n\t\tattributes: {\n\t\t\tsrc: {type: \"string\", value: src},\n\t\t\tsandbox: {type: \"string\", value: \"\"}\n\t\t}\n\t}];\n};\n\nexports[\"text/html\"] = HtmlParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/imageparser.js": {
            "title": "$:/core/modules/parsers/imageparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/imageparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe image parser parses an image into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ImageParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"img\",\n\t\t\tattributes: {}\n\t\t};\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\tif(type === \"image/svg+xml\" || type === \".svg\") {\n\t\t\telement.attributes.src = {type: \"string\", value: \"data:image/svg+xml,\" + encodeURIComponent(text)};\n\t\t} else {\n\t\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t\t}\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"image/svg+xml\"] = ImageParser;\nexports[\"image/jpg\"] = ImageParser;\nexports[\"image/jpeg\"] = ImageParser;\nexports[\"image/png\"] = ImageParser;\nexports[\"image/gif\"] = ImageParser;\nexports[\"image/webp\"] = ImageParser;\nexports[\"image/heic\"] = ImageParser;\nexports[\"image/heif\"] = ImageParser;\nexports[\"image/x-icon\"] = ImageParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/utils/parseutils.js": {
            "title": "$:/core/modules/utils/parseutils.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/parseutils.js\ntype: application/javascript\nmodule-type: utils\n\nUtility functions concerned with parsing text into tokens.\n\nMost functions have the following pattern:\n\n* The parameters are:\n** `source`: the source string being parsed\n** `pos`: the current parse position within the string\n** Any further parameters are used to identify the token that is being parsed\n* The return value is:\n** null if the token was not found at the specified position\n** an object representing the token with the following standard fields:\n*** `type`: string indicating the type of the token\n*** `start`: start position of the token in the source string\n*** `end`: end position of the token in the source string\n*** Any further fields required to describe the token\n\nThe exception is `skipWhiteSpace`, which just returns the position after the whitespace.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nLook for a whitespace token. Returns null if not found, otherwise returns {type: \"whitespace\", start:, end:,}\n*/\nexports.parseWhiteSpace = function(source,pos) {\n\tvar p = pos,c;\n\twhile(true) {\n\t\tc = source.charAt(p);\n\t\tif((c === \" \") || (c === \"\\f\") || (c === \"\\n\") || (c === \"\\r\") || (c === \"\\t\") || (c === \"\\v\") || (c === \"\\u00a0\")) { // Ignores some obscure unicode spaces\n\t\t\tp++;\n\t\t} else {\n\t\t\tbreak;\n\t\t}\n\t}\n\tif(p === pos) {\n\t\treturn null;\n\t} else {\n\t\treturn {\n\t\t\ttype: \"whitespace\",\n\t\t\tstart: pos,\n\t\t\tend: p\n\t\t}\n\t}\n};\n\n/*\nConvenience wrapper for parseWhiteSpace. Returns the position after the whitespace\n*/\nexports.skipWhiteSpace = function(source,pos) {\n\tvar c;\n\twhile(true) {\n\t\tc = source.charAt(pos);\n\t\tif((c === \" \") || (c === \"\\f\") || (c === \"\\n\") || (c === \"\\r\") || (c === \"\\t\") || (c === \"\\v\") || (c === \"\\u00a0\")) { // Ignores some obscure unicode spaces\n\t\t\tpos++;\n\t\t} else {\n\t\t\treturn pos;\n\t\t}\n\t}\n};\n\n/*\nLook for a given string token. Returns null if not found, otherwise returns {type: \"token\", value:, start:, end:,}\n*/\nexports.parseTokenString = function(source,pos,token) {\n\tvar match = source.indexOf(token,pos) === pos;\n\tif(match) {\n\t\treturn {\n\t\t\ttype: \"token\",\n\t\t\tvalue: token,\n\t\t\tstart: pos,\n\t\t\tend: pos + token.length\n\t\t};\n\t}\n\treturn null;\n};\n\n/*\nLook for a token matching a regex. Returns null if not found, otherwise returns {type: \"regexp\", match:, start:, end:,}\n*/\nexports.parseTokenRegExp = function(source,pos,reToken) {\n\tvar node = {\n\t\ttype: \"regexp\",\n\t\tstart: pos\n\t};\n\treToken.lastIndex = pos;\n\tnode.match = reToken.exec(source);\n\tif(node.match && node.match.index === pos) {\n\t\tnode.end = pos + node.match[0].length;\n\t\treturn node;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLook for a string literal. Returns null if not found, otherwise returns {type: \"string\", value:, start:, end:,}\n*/\nexports.parseStringLiteral = function(source,pos) {\n\tvar node = {\n\t\ttype: \"string\",\n\t\tstart: pos\n\t};\n\tvar reString = /(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\")|(?:'([^']*)')/g;\n\treString.lastIndex = pos;\n\tvar match = reString.exec(source);\n\tif(match && match.index === pos) {\n\t\tnode.value = match[1] !== undefined ? match[1] :(\n\t\t\tmatch[2] !== undefined ? match[2] : match[3] \n\t\t\t\t\t);\n\t\tnode.end = pos + match[0].length;\n\t\treturn node;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLook for a macro invocation parameter. Returns null if not found, or {type: \"macro-parameter\", name:, value:, start:, end:}\n*/\nexports.parseMacroParameter = function(source,pos) {\n\tvar node = {\n\t\ttype: \"macro-parameter\",\n\t\tstart: pos\n\t};\n\t// Define our regexp\n\tvar reMacroParameter = /(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\\s>\"'=]+)))/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the parameter\n\tvar token = $tw.utils.parseTokenRegExp(source,pos,reMacroParameter);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the parameter details\n\tnode.value = token.match[2] !== undefined ? token.match[2] : (\n\t\t\t\t\ttoken.match[3] !== undefined ? token.match[3] : (\n\t\t\t\t\t\ttoken.match[4] !== undefined ? token.match[4] : (\n\t\t\t\t\t\t\ttoken.match[5] !== undefined ? token.match[5] : (\n\t\t\t\t\t\t\t\ttoken.match[6] !== undefined ? token.match[6] : (\n\t\t\t\t\t\t\t\t\t\"\"\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t);\n\tif(token.match[1]) {\n\t\tnode.name = token.match[1];\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n/*\nLook for a macro invocation. Returns null if not found, or {type: \"macrocall\", name:, parameters:, start:, end:}\n*/\nexports.parseMacroInvocation = function(source,pos) {\n\tvar node = {\n\t\ttype: \"macrocall\",\n\t\tstart: pos,\n\t\tparams: []\n\t};\n\t// Define our regexps\n\tvar reMacroName = /([^\\s>\"'=]+)/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a double less than sign\n\tvar token = $tw.utils.parseTokenString(source,pos,\"<<\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the macro name\n\tvar name = $tw.utils.parseTokenRegExp(source,pos,reMacroName);\n\tif(!name) {\n\t\treturn null;\n\t}\n\tnode.name = name.match[1];\n\tpos = name.end;\n\t// Process parameters\n\tvar parameter = $tw.utils.parseMacroParameter(source,pos);\n\twhile(parameter) {\n\t\tnode.params.push(parameter);\n\t\tpos = parameter.end;\n\t\t// Get the next parameter\n\t\tparameter = $tw.utils.parseMacroParameter(source,pos);\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a double greater than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\">>\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n/*\nLook for an HTML attribute definition. Returns null if not found, otherwise returns {type: \"attribute\", name:, valueType: \"string|indirect|macro\", value:, start:, end:,}\n*/\nexports.parseAttribute = function(source,pos) {\n\tvar node = {\n\t\tstart: pos\n\t};\n\t// Define our regexps\n\tvar reAttributeName = /([^\\/\\s>\"'=]+)/g,\n\t\treUnquotedAttribute = /([^\\/\\s<>\"'=]+)/g,\n\t\treFilteredValue = /\\{\\{\\{(.+?)\\}\\}\\}/g,\n\t\treIndirectValue = /\\{\\{([^\\}]+)\\}\\}/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Get the attribute name\n\tvar name = $tw.utils.parseTokenRegExp(source,pos,reAttributeName);\n\tif(!name) {\n\t\treturn null;\n\t}\n\tnode.name = name.match[1];\n\tpos = name.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for an equals sign\n\tvar token = $tw.utils.parseTokenString(source,pos,\"=\");\n\tif(token) {\n\t\tpos = token.end;\n\t\t// Skip whitespace\n\t\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t\t// Look for a string literal\n\t\tvar stringLiteral = $tw.utils.parseStringLiteral(source,pos);\n\t\tif(stringLiteral) {\n\t\t\tpos = stringLiteral.end;\n\t\t\tnode.type = \"string\";\n\t\t\tnode.value = stringLiteral.value;\n\t\t} else {\n\t\t\t// Look for a filtered value\n\t\t\tvar filteredValue = $tw.utils.parseTokenRegExp(source,pos,reFilteredValue);\n\t\t\tif(filteredValue) {\n\t\t\t\tpos = filteredValue.end;\n\t\t\t\tnode.type = \"filtered\";\n\t\t\t\tnode.filter = filteredValue.match[1];\n\t\t\t} else {\n\t\t\t\t// Look for an indirect value\n\t\t\t\tvar indirectValue = $tw.utils.parseTokenRegExp(source,pos,reIndirectValue);\n\t\t\t\tif(indirectValue) {\n\t\t\t\t\tpos = indirectValue.end;\n\t\t\t\t\tnode.type = \"indirect\";\n\t\t\t\t\tnode.textReference = indirectValue.match[1];\n\t\t\t\t} else {\n\t\t\t\t\t// Look for a unquoted value\n\t\t\t\t\tvar unquotedValue = $tw.utils.parseTokenRegExp(source,pos,reUnquotedAttribute);\n\t\t\t\t\tif(unquotedValue) {\n\t\t\t\t\t\tpos = unquotedValue.end;\n\t\t\t\t\t\tnode.type = \"string\";\n\t\t\t\t\t\tnode.value = unquotedValue.match[1];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Look for a macro invocation value\n\t\t\t\t\t\tvar macroInvocation = $tw.utils.parseMacroInvocation(source,pos);\n\t\t\t\t\t\tif(macroInvocation) {\n\t\t\t\t\t\t\tpos = macroInvocation.end;\n\t\t\t\t\t\t\tnode.type = \"macro\";\n\t\t\t\t\t\t\tnode.value = macroInvocation;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tnode.type = \"string\";\n\t\t\t\t\t\t\tnode.value = \"true\";\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t} else {\n\t\tnode.type = \"string\";\n\t\tnode.value = \"true\";\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/parsers/pdfparser.js": {
            "title": "$:/core/modules/parsers/pdfparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/pdfparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe PDF parser embeds a PDF viewer\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ImageParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"embed\",\n\t\t\tattributes: {}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:application/pdf;base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"application/pdf\"] = ImageParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/textparser.js": {
            "title": "$:/core/modules/parsers/textparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/textparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe plain text parser processes blocks of source text into a degenerate parse tree consisting of a single text node\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar TextParser = function(type,text,options) {\n\tthis.tree = [{\n\t\ttype: \"codeblock\",\n\t\tattributes: {\n\t\t\tcode: {type: \"string\", value: text},\n\t\t\tlanguage: {type: \"string\", value: type}\n\t\t}\n\t}];\n};\n\nexports[\"text/plain\"] = TextParser;\nexports[\"text/x-tiddlywiki\"] = TextParser;\nexports[\"application/javascript\"] = TextParser;\nexports[\"application/json\"] = TextParser;\nexports[\"text/css\"] = TextParser;\nexports[\"application/x-tiddler-dictionary\"] = TextParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/videoparser.js": {
            "title": "$:/core/modules/parsers/videoparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/videoparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe video parser parses a video tiddler into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar VideoParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"video\",\n\t\t\tattributes: {\n\t\t\t\tcontrols: {type: \"string\", value: \"controls\"},\n\t\t\t\tstyle: {type: \"string\", value: \"width: 100%; object-fit: contain\"}\n\t\t\t}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"video/ogg\"] = VideoParser;\nexports[\"video/webm\"] = VideoParser;\nexports[\"video/mp4\"] = VideoParser;\nexports[\"video/quicktime\"] = VideoParser;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/wikiparser/rules/codeblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/codeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/codeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for code blocks. For example:\n\n```\n\t```\n\tThis text will not be //wikified//\n\t```\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"codeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match and get language if defined\n\tthis.matchRegExp = /```([\\w-]*)\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /(\\r?\\n```$)/mg;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Look for the end of the block\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the block\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\t// Return the $codeblock widget\n\treturn [{\n\t\t\ttype: \"codeblock\",\n\t\t\tattributes: {\n\t\t\t\t\tcode: {type: \"string\", value: text},\n\t\t\t\t\tlanguage: {type: \"string\", value: this.match[1]}\n\t\t\t}\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/codeinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/codeinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/codeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for code runs. For example:\n\n```\n\tThis is a `code run`.\n\tThis is another ``code run``\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"codeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(``?)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar reEnd = new RegExp(this.match[1], \"mg\");\n\t// Look for the end marker\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the text\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"code\",\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\ttext: text\n\t\t}]\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/commentblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/commentblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/commentblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for HTML comments. For example:\n\n```\n<!-- This is a comment -->\n```\n\nNote that the syntax for comments is simplified to an opening \"<!--\" sequence and a closing \"-->\" sequence -- HTML itself implements a more complex format (see http://ostermiller.org/findhtmlcomment.html)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"commentblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /<!--/mg;\n\tthis.endMatchRegExp = /-->/mg;\n};\n\nexports.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\tif(this.match) {\n\t\tthis.endMatchRegExp.lastIndex = startPos + this.match[0].length;\n\t\tthis.endMatch = this.endMatchRegExp.exec(this.parser.source);\n\t\tif(this.endMatch) {\n\t\t\treturn this.match.index;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\t// Don't return any elements\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/commentinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/commentinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/commentinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for HTML comments. For example:\n\n```\n<!-- This is a comment -->\n```\n\nNote that the syntax for comments is simplified to an opening \"<!--\" sequence and a closing \"-->\" sequence -- HTML itself implements a more complex format (see http://ostermiller.org/findhtmlcomment.html)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"commentinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /<!--/mg;\n\tthis.endMatchRegExp = /-->/mg;\n};\n\nexports.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\tif(this.match) {\n\t\tthis.endMatchRegExp.lastIndex = startPos + this.match[0].length;\n\t\tthis.endMatch = this.endMatchRegExp.exec(this.parser.source);\n\t\tif(this.endMatch) {\n\t\t\treturn this.match.index;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\t// Don't return any elements\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/dash.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/dash.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/dash.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for dashes. For example:\n\n```\nThis is an en-dash: --\n\nThis is an em-dash: ---\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"dash\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /-{2,3}(?!-)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar dash = this.match[0].length === 2 ? \"&ndash;\" : \"&mdash;\";\n\treturn [{\n\t\ttype: \"entity\",\n\t\tentity: dash\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/bold.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/bold.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/bold.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - bold. For example:\n\n```\n\tThis is ''bold'' text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except bold \n\\rules only bold \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"bold\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /''/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/''/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"strong\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/italic.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/italic.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/italic.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - italic. For example:\n\n```\n\tThis is //italic// text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except italic\n\\rules only italic\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"italic\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\/\\//mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/\\/\\//mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"em\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - strikethrough. For example:\n\n```\n\tThis is ~~strikethrough~~ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except strikethrough \n\\rules only strikethrough \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"strikethrough\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /~~/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/~~/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"strike\",\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - subscript. For example:\n\n```\n\tThis is ,,subscript,, text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except subscript \n\\rules only subscript \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"subscript\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /,,/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/,,/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"sub\",\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - superscript. For example:\n\n```\n\tThis is ^^superscript^^ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except superscript \n\\rules only superscript \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"superscript\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\^\\^/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/\\^\\^/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"sup\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - underscore. For example:\n\n```\n\tThis is __underscore__ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except underscore \n\\rules only underscore\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"underscore\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /__/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/__/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"u\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/entity.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/entity.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/entity.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for HTML entities. For example:\n\n```\n\tThis is a copyright symbol: &copy;\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"entity\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(&#?[a-zA-Z0-9]{2,8};)/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar entityString = this.match[1];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Return the entity\n\treturn [{type: \"entity\", entity: this.match[0]}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/extlink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/extlink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/extlink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for external links. For example:\n\n```\nAn external link: https://www.tiddlywiki.com/\n\nA suppressed external link: ~http://www.tiddlyspace.com/\n```\n\nExternal links can be suppressed by preceding them with `~`.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"extlink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /~?(?:file|http|https|mailto|ftp|irc|news|data|skype):[^\\s<>{}\\[\\]`|\"\\\\^]+(?:\\/|\\b)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Create the link unless it is suppressed\n\tif(this.match[0].substr(0,1) === \"~\") {\n\t\treturn [{type: \"text\", text: this.match[0].substr(1)}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tattributes: {\n\t\t\t\thref: {type: \"string\", value: this.match[0]},\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t\ttarget: {type: \"string\", value: \"_blank\"},\n\t\t\t\trel: {type: \"string\", value: \"noopener noreferrer\"}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: this.match[0]\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for block-level filtered transclusion. For example:\n\n```\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"filteredtranscludeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{\\{([^\\|]+?)(?:\\|([^\\|\\{\\}]+))?(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}([^\\}]*)\\}(?:\\.(\\S+))?(?:\\r?\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar filter = this.match[1],\n\t\ttooltip = this.match[2],\n\t\ttemplate = $tw.utils.trim(this.match[3]),\n\t\tstyle = this.match[4],\n\t\tclasses = this.match[5];\n\t// Return the list widget\n\tvar node = {\n\t\ttype: \"list\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: filter}\n\t\t},\n\t\tisBlock: true\n\t};\n\tif(tooltip) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: tooltip};\n\t}\n\tif(template) {\n\t\tnode.attributes.template = {type: \"string\", value: template};\n\t}\n\tif(style) {\n\t\tnode.attributes.style = {type: \"string\", value: style};\n\t}\n\tif(classes) {\n\t\tnode.attributes.itemClass = {type: \"string\", value: classes.split(\".\").join(\" \")};\n\t}\n\treturn [node];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for inline filtered transclusion. For example:\n\n```\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"filteredtranscludeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{\\{([^\\|]+?)(?:\\|([^\\|\\{\\}]+))?(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}([^\\}]*)\\}(?:\\.(\\S+))?/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar filter = this.match[1],\n\t\ttooltip = this.match[2],\n\t\ttemplate = $tw.utils.trim(this.match[3]),\n\t\tstyle = this.match[4],\n\t\tclasses = this.match[5];\n\t// Return the list widget\n\tvar node = {\n\t\ttype: \"list\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: filter}\n\t\t}\n\t};\n\tif(tooltip) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: tooltip};\n\t}\n\tif(template) {\n\t\tnode.attributes.template = {type: \"string\", value: template};\n\t}\n\tif(style) {\n\t\tnode.attributes.style = {type: \"string\", value: style};\n\t}\n\tif(classes) {\n\t\tnode.attributes.itemClass = {type: \"string\", value: classes.split(\".\").join(\" \")};\n\t}\n\treturn [node];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for marking areas with hard line breaks. For example:\n\n```\n\"\"\"\nThis is some text\nThat is set like\nIt is a Poem\nWhen it is\nClearly\nNot\n\"\"\"\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"hardlinebreaks\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\"\"\"(?:\\r?\\n)?/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /(\"\"\")|(\\r?\\n)/mg,\n\t\ttree = [],\n\t\tmatch;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tdo {\n\t\t// Parse the run up to the terminator\n\t\ttree.push.apply(tree,this.parser.parseInlineRun(reEnd,{eatTerminator: false}));\n\t\t// Redo the terminator match\n\t\treEnd.lastIndex = this.parser.pos;\n\t\tmatch = reEnd.exec(this.parser.source);\n\t\tif(match) {\n\t\t\tthis.parser.pos = reEnd.lastIndex;\n\t\t\t// Add a line break if the terminator was a line break\n\t\t\tif(match[2]) {\n\t\t\t\ttree.push({type: \"element\", tag: \"br\"});\n\t\t\t}\n\t\t}\n\t} while(match && !match[1]);\n\t// Return the nodes\n\treturn tree;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/heading.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/heading.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/heading.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for headings\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"heading\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(!{1,6})/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar headingLevel = this.match[1].length;\n\t// Move past the !s\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse any classes, whitespace and then the heading itself\n\tvar classes = this.parser.parseClasses();\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tvar tree = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// Return the heading\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"h\" + headingLevel, \n\t\tattributes: {\n\t\t\t\"class\": {type: \"string\", value: classes.join(\" \")}\n\t\t},\n\t\tchildren: tree\n\t}];\n};\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/horizrule.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/horizrule.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/horizrule.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for rules. For example:\n\n```\n---\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"horizrule\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /-{3,}\\r?(?:\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\treturn [{type: \"element\", tag: \"hr\"}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/html.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/html.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/html.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for HTML elements and widgets. For example:\n\n{{{\n<aside>\nThis is an HTML5 aside element\n</aside>\n\n<$slider target=\"MyTiddler\">\nThis is a widget invocation\n</$slider>\n\n}}}\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"html\";\nexports.types = {inline: true, block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextTag = this.findNextTag(this.parser.source,startPos,{\n\t\trequireLineBreak: this.is.block\n\t});\n\treturn this.nextTag ? this.nextTag.start : undefined;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Retrieve the most recent match so that recursive calls don't overwrite it\n\tvar tag = this.nextTag;\n\tthis.nextTag = null;\n\t// Advance the parser position to past the tag\n\tthis.parser.pos = tag.end;\n\t// Check for an immediately following double linebreak\n\tvar hasLineBreak = !tag.isSelfClosing && !!$tw.utils.parseTokenRegExp(this.parser.source,this.parser.pos,/([^\\S\\n\\r]*\\r?\\n(?:[^\\S\\n\\r]*\\r?\\n|$))/g);\n\t// Set whether we're in block mode\n\ttag.isBlock = this.is.block || hasLineBreak;\n\t// Parse the body if we need to\n\tif(!tag.isSelfClosing && $tw.config.htmlVoidElements.indexOf(tag.tag) === -1) {\n\t\t\tvar reEndString = \"</\" + $tw.utils.escapeRegExp(tag.tag) + \">\",\n\t\t\t\treEnd = new RegExp(\"(\" + reEndString + \")\",\"mg\");\n\t\tif(hasLineBreak) {\n\t\t\ttag.children = this.parser.parseBlocks(reEndString);\n\t\t} else {\n\t\t\ttag.children = this.parser.parseInlineRun(reEnd);\n\t\t}\n\t\treEnd.lastIndex = this.parser.pos;\n\t\tvar endMatch = reEnd.exec(this.parser.source);\n\t\tif(endMatch && endMatch.index === this.parser.pos) {\n\t\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t\t}\n\t}\n\t// Return the tag\n\treturn [tag];\n};\n\n/*\nLook for an HTML tag. Returns null if not found, otherwise returns {type: \"element\", name:, attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseTag = function(source,pos,options) {\n\toptions = options || {};\n\tvar token,\n\t\tnode = {\n\t\t\ttype: \"element\",\n\t\t\tstart: pos,\n\t\t\tattributes: {}\n\t\t};\n\t// Define our regexps\n\tvar reTagName = /([a-zA-Z0-9\\-\\$]+)/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a less than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\"<\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the tag name\n\ttoken = $tw.utils.parseTokenRegExp(source,pos,reTagName);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tnode.tag = token.match[1];\n\tif(node.tag.slice(1).indexOf(\"$\") !== -1) {\n\t\treturn null;\n\t}\n\tif(node.tag.charAt(0) === \"$\") {\n\t\tnode.type = node.tag.substr(1);\n\t}\n\tpos = token.end;\n\t// Check that the tag is terminated by a space, / or >\n\tif(!$tw.utils.parseWhiteSpace(source,pos) && !(source.charAt(pos) === \"/\") && !(source.charAt(pos) === \">\") ) {\n\t\treturn null;\n\t}\n\t// Process attributes\n\tvar attribute = $tw.utils.parseAttribute(source,pos);\n\twhile(attribute) {\n\t\tnode.attributes[attribute.name] = attribute;\n\t\tpos = attribute.end;\n\t\t// Get the next attribute\n\t\tattribute = $tw.utils.parseAttribute(source,pos);\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a closing slash\n\ttoken = $tw.utils.parseTokenString(source,pos,\"/\");\n\tif(token) {\n\t\tpos = token.end;\n\t\tnode.isSelfClosing = true;\n\t}\n\t// Look for a greater than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\">\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Check for a required line break\n\tif(options.requireLineBreak) {\n\t\ttoken = $tw.utils.parseTokenRegExp(source,pos,/([^\\S\\n\\r]*\\r?\\n(?:[^\\S\\n\\r]*\\r?\\n|$))/g);\n\t\tif(!token) {\n\t\t\treturn null;\n\t\t}\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\nexports.findNextTag = function(source,pos,options) {\n\t// A regexp for finding candidate HTML tags\n\tvar reLookahead = /<([a-zA-Z\\-\\$]+)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a tag\n\t\tvar tag = this.parseTag(source,match.index,options);\n\t\t// Return success\n\t\tif(tag && this.isLegalTag(tag)) {\n\t\t\treturn tag;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\nexports.isLegalTag = function(tag) {\n\t// Widgets are always OK\n\tif(tag.type !== \"element\") {\n\t\treturn true;\n\t// If it's an HTML tag that starts with a dash then it's not legal\n\t} else if(tag.tag.charAt(0) === \"-\") {\n\t\treturn false;\n\t} else {\n\t\t// Otherwise it's OK\n\t\treturn true;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/image.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/image.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/image.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for embedding images. For example:\n\n```\n[img[https://tiddlywiki.com/fractalveg.jpg]]\n[img width=23 height=24 [https://tiddlywiki.com/fractalveg.jpg]]\n[img width={{!!width}} height={{!!height}} [https://tiddlywiki.com/fractalveg.jpg]]\n[img[Description of image|https://tiddlywiki.com/fractalveg.jpg]]\n[img[TiddlerTitle]]\n[img[Description of image|TiddlerTitle]]\n```\n\nGenerates the `<$image>` widget.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"image\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextImage = this.findNextImage(this.parser.source,startPos);\n\treturn this.nextImage ? this.nextImage.start : undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.nextImage.end;\n\tvar node = {\n\t\ttype: \"image\",\n\t\tattributes: this.nextImage.attributes\n\t};\n\treturn [node];\n};\n\n/*\nFind the next image from the current position\n*/\nexports.findNextImage = function(source,pos) {\n\t// A regexp for finding candidate HTML tags\n\tvar reLookahead = /(\\[img)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a tag\n\t\tvar tag = this.parseImage(source,match.index);\n\t\t// Return success\n\t\tif(tag) {\n\t\t\treturn tag;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\n/*\nLook for an image at the specified position. Returns null if not found, otherwise returns {type: \"image\", attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseImage = function(source,pos) {\n\tvar token,\n\t\tnode = {\n\t\t\ttype: \"image\",\n\t\t\tstart: pos,\n\t\t\tattributes: {}\n\t\t};\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[img`\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[img\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Process attributes\n\tif(source.charAt(pos) !== \"[\") {\n\t\tvar attribute = $tw.utils.parseAttribute(source,pos);\n\t\twhile(attribute) {\n\t\t\tnode.attributes[attribute.name] = attribute;\n\t\t\tpos = attribute.end;\n\t\t\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t\t\tif(source.charAt(pos) !== \"[\") {\n\t\t\t\t// Get the next attribute\n\t\t\t\tattribute = $tw.utils.parseAttribute(source,pos);\n\t\t\t} else {\n\t\t\t\tattribute = null;\n\t\t\t}\n\t\t}\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[` after the attributes\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Get the source up to the terminating `]]`\n\ttoken = $tw.utils.parseTokenRegExp(source,pos,/(?:([^|\\]]*?)\\|)?([^\\]]+?)\\]\\]/g);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\tif(token.match[1]) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: token.match[1].trim()};\n\t}\n\tnode.attributes.source = {type: \"string\", value: (token.match[2] || \"\").trim()};\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/import.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/import.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/import.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for importing variable definitions\n\n```\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"import\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\import[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\tvar self = this;\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the filter terminated by a line break\n\tvar reMatch = /(.*)(\\r?\\n)|$/mg;\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\tthis.parser.pos = reMatch.lastIndex;\n\t// Parse tree nodes to return\n\treturn [{\n\t\ttype: \"importvariables\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: match[1]}\n\t\t},\n\t\tchildren: []\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/list.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/list.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/list.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for lists. For example:\n\n```\n* This is an unordered list\n* It has two items\n\n# This is a numbered list\n## With a subitem\n# And a third item\n\n; This is a term that is being defined\n: This is the definition of that term\n```\n\nNote that lists can be nested arbitrarily:\n\n```\n#** One\n#* Two\n#** Three\n#**** Four\n#**# Five\n#**## Six\n## Seven\n### Eight\n## Nine\n```\n\nA CSS class can be applied to a list item as follows:\n\n```\n* List item one\n*.active List item two has the class `active`\n* List item three\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"list\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /([\\*#;:>]+)/mg;\n};\n\nvar listTypes = {\n\t\"*\": {listTag: \"ul\", itemTag: \"li\"},\n\t\"#\": {listTag: \"ol\", itemTag: \"li\"},\n\t\";\": {listTag: \"dl\", itemTag: \"dt\"},\n\t\":\": {listTag: \"dl\", itemTag: \"dd\"},\n\t\">\": {listTag: \"blockquote\", itemTag: \"div\"}\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Array of parse tree nodes for the previous row of the list\n\tvar listStack = [];\n\t// Cycle through the items in the list\n\twhile(true) {\n\t\t// Match the list marker\n\t\tvar reMatch = /([\\*#;:>]+)/mg;\n\t\treMatch.lastIndex = this.parser.pos;\n\t\tvar match = reMatch.exec(this.parser.source);\n\t\tif(!match || match.index !== this.parser.pos) {\n\t\t\tbreak;\n\t\t}\n\t\t// Check whether the list type of the top level matches\n\t\tvar listInfo = listTypes[match[0].charAt(0)];\n\t\tif(listStack.length > 0 && listStack[0].tag !== listInfo.listTag) {\n\t\t\tbreak;\n\t\t}\n\t\t// Move past the list marker\n\t\tthis.parser.pos = match.index + match[0].length;\n\t\t// Walk through the list markers for the current row\n\t\tfor(var t=0; t<match[0].length; t++) {\n\t\t\tlistInfo = listTypes[match[0].charAt(t)];\n\t\t\t// Remove any stacked up element if we can't re-use it because the list type doesn't match\n\t\t\tif(listStack.length > t && listStack[t].tag !== listInfo.listTag) {\n\t\t\t\tlistStack.splice(t,listStack.length - t);\n\t\t\t}\n\t\t\t// Construct the list element or reuse the previous one at this level\n\t\t\tif(listStack.length <= t) {\n\t\t\t\tvar listElement = {type: \"element\", tag: listInfo.listTag, children: [\n\t\t\t\t\t{type: \"element\", tag: listInfo.itemTag, children: []}\n\t\t\t\t]};\n\t\t\t\t// Link this list element into the last child item of the parent list item\n\t\t\t\tif(t) {\n\t\t\t\t\tvar prevListItem = listStack[t-1].children[listStack[t-1].children.length-1];\n\t\t\t\t\tprevListItem.children.push(listElement);\n\t\t\t\t}\n\t\t\t\t// Save this element in the stack\n\t\t\t\tlistStack[t] = listElement;\n\t\t\t} else if(t === (match[0].length - 1)) {\n\t\t\t\tlistStack[t].children.push({type: \"element\", tag: listInfo.itemTag, children: []});\n\t\t\t}\n\t\t}\n\t\tif(listStack.length > match[0].length) {\n\t\t\tlistStack.splice(match[0].length,listStack.length - match[0].length);\n\t\t}\n\t\t// Process the body of the list item into the last list item\n\t\tvar lastListChildren = listStack[listStack.length-1].children,\n\t\t\tlastListItem = lastListChildren[lastListChildren.length-1],\n\t\t\tclasses = this.parser.parseClasses();\n\t\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\t\tvar tree = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t\tlastListItem.children.push.apply(lastListItem.children,tree);\n\t\tif(classes.length > 0) {\n\t\t\t$tw.utils.addClassToParseTreeNode(lastListItem,classes.join(\" \"));\n\t\t}\n\t\t// Consume any whitespace following the list item\n\t\tthis.parser.skipWhitespace();\n\t}\n\t// Return the root element of the list\n\treturn [listStack[0]];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/macrocallblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/macrocallblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrocallblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for block macro calls\n\n```\n<<name value value2>>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrocallblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /<<([^>\\s]+)(?:\\s*)((?:[^>]|(?:>(?!>)))*?)>>(?:\\r?\\n|$)/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar macroName = this.match[1],\n\t\tparamString = this.match[2];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar params = [],\n\t\treParam = /\\s*(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))/mg,\n\t\tparamMatch = reParam.exec(paramString);\n\twhile(paramMatch) {\n\t\t// Process this parameter\n\t\tvar paramInfo = {\n\t\t\tvalue: paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5] || paramMatch[6]\n\t\t};\n\t\tif(paramMatch[1]) {\n\t\t\tparamInfo.name = paramMatch[1];\n\t\t}\n\t\tparams.push(paramInfo);\n\t\t// Find the next match\n\t\tparamMatch = reParam.exec(paramString);\n\t}\n\treturn [{\n\t\ttype: \"macrocall\",\n\t\tname: macroName,\n\t\tparams: params,\n\t\tisBlock: true\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/macrocallinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/macrocallinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrocallinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for macro calls\n\n```\n<<name value value2>>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrocallinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /<<([^\\s>]+)\\s*([\\s\\S]*?)>>/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar macroName = this.match[1],\n\t\tparamString = this.match[2];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar params = [],\n\t\treParam = /\\s*(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))/mg,\n\t\tparamMatch = reParam.exec(paramString);\n\twhile(paramMatch) {\n\t\t// Process this parameter\n\t\tvar paramInfo = {\n\t\t\tvalue: paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5]|| paramMatch[6]\n\t\t};\n\t\tif(paramMatch[1]) {\n\t\t\tparamInfo.name = paramMatch[1];\n\t\t}\n\t\tparams.push(paramInfo);\n\t\t// Find the next match\n\t\tparamMatch = reParam.exec(paramString);\n\t}\n\treturn [{\n\t\ttype: \"macrocall\",\n\t\tname: macroName,\n\t\tparams: params\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/macrodef.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/macrodef.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrodef.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for macro definitions\n\n```\n\\define name(param:defaultvalue,param2:defaultvalue)\ndefinition text, including $param$ markers\n\\end\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrodef\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\define\\s+([^(\\s]+)\\(\\s*([^)]*)\\)(\\s*\\r?\\n)?/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Move past the macro name and parameters\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the parameters\n\tvar paramString = this.match[2],\n\t\tparams = [];\n\tif(paramString !== \"\") {\n\t\tvar reParam = /\\s*([A-Za-z0-9\\-_]+)(?:\\s*:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))?/mg,\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\twhile(paramMatch) {\n\t\t\t// Save the parameter details\n\t\t\tvar paramInfo = {name: paramMatch[1]},\n\t\t\t\tdefaultValue = paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5] || paramMatch[6];\n\t\t\tif(defaultValue) {\n\t\t\t\tparamInfo[\"default\"] = defaultValue;\n\t\t\t}\n\t\t\tparams.push(paramInfo);\n\t\t\t// Look for the next parameter\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\t}\n\t}\n\t// Is this a multiline definition?\n\tvar reEnd;\n\tif(this.match[3]) {\n\t\t// If so, the end of the body is marked with \\end\n\t\treEnd = /(\\r?\\n\\\\end[^\\S\\n\\r]*(?:$|\\r?\\n))/mg;\n\t} else {\n\t\t// Otherwise, the end of the definition is marked by the end of the line\n\t\treEnd = /($|\\r?\\n)/mg;\n\t\t// Move past any whitespace\n\t\tthis.parser.pos = $tw.utils.skipWhiteSpace(this.parser.source,this.parser.pos);\n\t}\n\t// Find the end of the definition\n\treEnd.lastIndex = this.parser.pos;\n\tvar text,\n\t\tendMatch = reEnd.exec(this.parser.source);\n\tif(endMatch) {\n\t\ttext = this.parser.source.substring(this.parser.pos,endMatch.index);\n\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t} else {\n\t\t// We didn't find the end of the definition, so we'll make it blank\n\t\ttext = \"\";\n\t}\n\t// Save the macro definition\n\treturn [{\n\t\ttype: \"set\",\n\t\tattributes: {\n\t\t\tname: {type: \"string\", value: this.match[1]},\n\t\t\tvalue: {type: \"string\", value: text}\n\t\t},\n\t\tchildren: [],\n\t\tparams: params,\n\t\tisMacroDefinition: true\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/prettyextlink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/prettyextlink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/prettyextlink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for external links. For example:\n\n```\n[ext[https://tiddlywiki.com/fractalveg.jpg]]\n[ext[Tooltip|https://tiddlywiki.com/fractalveg.jpg]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"prettyextlink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextLink = this.findNextLink(this.parser.source,startPos);\n\treturn this.nextLink ? this.nextLink.start : undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.nextLink.end;\n\treturn [this.nextLink];\n};\n\n/*\nFind the next link from the current position\n*/\nexports.findNextLink = function(source,pos) {\n\t// A regexp for finding candidate links\n\tvar reLookahead = /(\\[ext\\[)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a link\n\t\tvar link = this.parseLink(source,match.index);\n\t\t// Return success\n\t\tif(link) {\n\t\t\treturn link;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\n/*\nLook for an link at the specified position. Returns null if not found, otherwise returns {type: \"element\", tag: \"a\", attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseLink = function(source,pos) {\n\tvar token,\n\t\ttextNode = {\n\t\t\ttype: \"text\"\n\t\t},\n\t\tnode = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tstart: pos,\n\t\t\tattributes: {\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t},\n\t\t\tchildren: [textNode]\n\t\t};\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[ext[`\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[ext[\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Look ahead for the terminating `]]`\n\tvar closePos = source.indexOf(\"]]\",pos);\n\tif(closePos === -1) {\n\t\treturn null;\n\t}\n\t// Look for a `|` separating the tooltip\n\tvar splitPos = source.indexOf(\"|\",pos);\n\tif(splitPos === -1 || splitPos > closePos) {\n\t\tsplitPos = null;\n\t}\n\t// Pull out the tooltip and URL\n\tvar tooltip, URL;\n\tif(splitPos) {\n\t\tURL = source.substring(splitPos + 1,closePos).trim();\n\t\ttextNode.text = source.substring(pos,splitPos).trim();\n\t} else {\n\t\tURL = source.substring(pos,closePos).trim();\n\t\ttextNode.text = URL;\n\t}\n\tnode.attributes.href = {type: \"string\", value: URL};\n\tnode.attributes.target = {type: \"string\", value: \"_blank\"};\n\tnode.attributes.rel = {type: \"string\", value: \"noopener noreferrer\"};\n\t// Update the end position\n\tnode.end = closePos + 2;\n\treturn node;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/prettylink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/prettylink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/prettylink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for pretty links. For example:\n\n```\n[[Introduction]]\n\n[[Link description|TiddlerTitle]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"prettylink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\[\\[(.*?)(?:\\|(.*?))?\\]\\]/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Process the link\n\tvar text = this.match[1],\n\t\tlink = this.match[2] || text;\n\tif($tw.utils.isLinkExternal(link)) {\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tattributes: {\n\t\t\t\thref: {type: \"string\", value: link},\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t\ttarget: {type: \"string\", value: \"_blank\"},\n\t\t\t\trel: {type: \"string\", value: \"noopener noreferrer\"}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: text\n\t\t\t}]\n\t\t}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"link\",\n\t\t\tattributes: {\n\t\t\t\tto: {type: \"string\", value: link}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: text\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/quoteblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/quoteblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/quoteblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for quote blocks. For example:\n\n```\n\t<<<.optionalClass(es) optional cited from\n\ta quote\n\t<<<\n\t\n\t<<<.optionalClass(es)\n\ta quote\n\t<<< optional cited from\n```\n\nQuotes can be quoted by putting more <s\n\n```\n\t<<<\n\tQuote Level 1\n\t\n\t<<<<\n\tQuoteLevel 2\n\t<<<<\n\t\n\t<<<\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"quoteblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(<<<+)/mg;\n};\n\nexports.parse = function() {\n\tvar classes = [\"tc-quote\"];\n\t// Get all the details of the match\n\tvar reEndString = \"^\" + this.match[1] + \"(?!<)\";\n\t// Move past the <s\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t\n\t// Parse any classes, whitespace and then the optional cite itself\n\tclasses.push.apply(classes, this.parser.parseClasses());\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tvar cite = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// before handling the cite, parse the body of the quote\n\tvar tree= this.parser.parseBlocks(reEndString);\n\t// If we got a cite, put it before the text\n\tif(cite.length > 0) {\n\t\ttree.unshift({\n\t\t\ttype: \"element\",\n\t\t\ttag: \"cite\",\n\t\t\tchildren: cite\n\t\t});\n\t}\n\t// Parse any optional cite\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tcite = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// If we got a cite, push it\n\tif(cite.length > 0) {\n\t\ttree.push({\n\t\t\ttype: \"element\",\n\t\t\ttag: \"cite\",\n\t\t\tchildren: cite\n\t\t});\n\t}\n\t// Return the blockquote element\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"blockquote\",\n\t\tattributes: {\n\t\t\tclass: { type: \"string\", value: classes.join(\" \") },\n\t\t},\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/rules.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/rules.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/rules.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for rules specifications\n\n```\n\\rules except ruleone ruletwo rulethree\n\\rules only ruleone ruletwo rulethree\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"rules\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\rules[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse whitespace delimited tokens terminated by a line break\n\tvar reMatch = /[^\\S\\n]*(\\S+)|(\\r?\\n)/mg,\n\t\ttokens = [];\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\twhile(match && match.index === this.parser.pos) {\n\t\tthis.parser.pos = reMatch.lastIndex;\n\t\t// Exit if we've got the line break\n\t\tif(match[2]) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the token\n\t\tif(match[1]) {\n\t\t\ttokens.push(match[1]);\n\t\t}\n\t\t// Match the next token\n\t\tmatch = reMatch.exec(this.parser.source);\n\t}\n\t// Process the tokens\n\tif(tokens.length > 0) {\n\t\tthis.parser.amendRules(tokens[0],tokens.slice(1));\n\t}\n\t// No parse tree nodes to return\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/styleblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/styleblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/styleblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for assigning styles and classes to paragraphs and other blocks. For example:\n\n```\n@@.myClass\n@@background-color:red;\nThis paragraph will have the CSS class `myClass`.\n\n* The `<ul>` around this list will also have the class `myClass`\n* List item 2\n\n@@\n```\n\nNote that classes and styles can be mixed subject to the rule that styles must precede classes. For example\n\n```\n@@.myFirstClass.mySecondClass\n@@width:100px;.myThirdClass\nThis is a paragraph\n@@\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"styleblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /@@((?:[^\\.\\r\\n\\s:]+:[^\\r\\n;]+;)+)?(?:\\.([^\\r\\n\\s]+))?\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEndString = \"^@@(?:\\\\r?\\\\n)?\";\n\tvar classes = [], styles = [];\n\tdo {\n\t\t// Get the class and style\n\t\tif(this.match[1]) {\n\t\t\tstyles.push(this.match[1]);\n\t\t}\n\t\tif(this.match[2]) {\n\t\t\tclasses.push(this.match[2].split(\".\").join(\" \"));\n\t\t}\n\t\t// Move past the match\n\t\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t\t// Look for another line of classes and styles\n\t\tthis.match = this.matchRegExp.exec(this.parser.source);\n\t} while(this.match && this.match.index === this.parser.pos);\n\t// Parse the body\n\tvar tree = this.parser.parseBlocks(reEndString);\n\tfor(var t=0; t<tree.length; t++) {\n\t\tif(classes.length > 0) {\n\t\t\t$tw.utils.addClassToParseTreeNode(tree[t],classes.join(\" \"));\n\t\t}\n\t\tif(styles.length > 0) {\n\t\t\t$tw.utils.addAttributeToParseTreeNode(tree[t],\"style\",styles.join(\"\"));\n\t\t}\n\t}\n\treturn tree;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/styleinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/styleinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/styleinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for assigning styles and classes to inline runs. For example:\n\n```\n@@.myClass This is some text with a class@@\n@@background-color:red;This is some text with a background colour@@\n@@width:100px;.myClass This is some text with a class and a width@@\n```\n\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"styleinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /@@((?:[^\\.\\r\\n\\s:]+:[^\\r\\n;]+;)+)?(\\.(?:[^\\r\\n\\s]+)\\s+)?/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /@@/g;\n\t// Get the styles and class\n\tvar stylesString = this.match[1],\n\t\tclassString = this.match[2] ? this.match[2].split(\".\").join(\" \") : undefined;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the run up to the terminator\n\tvar tree = this.parser.parseInlineRun(reEnd,{eatTerminator: true});\n\t// Return the classed span\n\tvar node = {\n\t\ttype: \"element\",\n\t\ttag: \"span\",\n\t\tattributes: {\n\t\t\t\"class\": {type: \"string\", value: \"tc-inline-style\"}\n\t\t},\n\t\tchildren: tree\n\t};\n\tif(classString) {\n\t\t$tw.utils.addClassToParseTreeNode(node,classString);\n\t}\n\tif(stylesString) {\n\t\t$tw.utils.addAttributeToParseTreeNode(node,\"style\",stylesString);\n\t}\n\treturn [node];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/syslink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/syslink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/syslink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for system tiddler links.\nCan be suppressed preceding them with `~`.\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"syslink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = new RegExp(\n\t\t\"~?\\\\$:\\\\/[\" +\n\t\t$tw.config.textPrimitives.anyLetter.substr(1,$tw.config.textPrimitives.anyLetter.length - 2) +\n\t\t\"\\/._-]+\",\n\t\t\"mg\"\n\t);\n};\n\nexports.parse = function() {\n\tvar match = this.match[0];\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Create the link unless it is suppressed\n\tif(match.substr(0,1) === \"~\") {\n\t\treturn [{type: \"text\", text: match.substr(1)}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"link\",\n\t\t\tattributes: {\n\t\t\t\tto: {type: \"string\", value: match}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: match\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/table.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/table.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/table.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for tables.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"table\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\|(?:[^\\n]*)\\|(?:[fhck]?)\\r?(?:\\n|$)/mg;\n};\n\nvar processRow = function(prevColumns) {\n\tvar cellRegExp = /(?:\\|([^\\n\\|]*)\\|)|(\\|[fhck]?\\r?(?:\\n|$))/mg,\n\t\tcellTermRegExp = /((?:\\x20*)\\|)/mg,\n\t\ttree = [],\n\t\tcol = 0,\n\t\tcolSpanCount = 1,\n\t\tprevCell,\n\t\tvAlign;\n\t// Match a single cell\n\tcellRegExp.lastIndex = this.parser.pos;\n\tvar cellMatch = cellRegExp.exec(this.parser.source);\n\twhile(cellMatch && cellMatch.index === this.parser.pos) {\n\t\tif(cellMatch[1] === \"~\") {\n\t\t\t// Rowspan\n\t\t\tvar last = prevColumns[col];\n\t\t\tif(last) {\n\t\t\t\tlast.rowSpanCount++;\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"rowspan\",last.rowSpanCount);\n\t\t\t\tvAlign = $tw.utils.getAttributeValueFromParseTreeNode(last.element,\"valign\",\"center\");\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"valign\",vAlign);\n\t\t\t\tif(colSpanCount > 1) {\n\t\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"colspan\",colSpanCount);\n\t\t\t\t\tcolSpanCount = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[1] === \">\") {\n\t\t\t// Colspan\n\t\t\tcolSpanCount++;\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[1] === \"<\" && prevCell) {\n\t\t\tcolSpanCount = 1 + $tw.utils.getAttributeValueFromParseTreeNode(prevCell,\"colspan\",1);\n\t\t\t$tw.utils.addAttributeToParseTreeNode(prevCell,\"colspan\",colSpanCount);\n\t\t\tcolSpanCount = 1;\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[2]) {\n\t\t\t// End of row\n\t\t\tif(prevCell && colSpanCount > 1) {\n\t\t\t\tif(prevCell.attributes && prevCell.attributes && prevCell.attributes.colspan) {\n\t\t\t\t\t\tcolSpanCount += prevCell.attributes.colspan.value;\n\t\t\t\t} else {\n\t\t\t\t\tcolSpanCount -= 1;\n\t\t\t\t}\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(prevCell,\"colspan\",colSpanCount);\n\t\t\t}\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t\tbreak;\n\t\t} else {\n\t\t\t// For ordinary cells, step beyond the opening `|`\n\t\t\tthis.parser.pos++;\n\t\t\t// Look for a space at the start of the cell\n\t\t\tvar spaceLeft = false;\n\t\t\tvAlign = null;\n\t\t\tif(this.parser.source.substr(this.parser.pos).search(/^\\^([^\\^]|\\^\\^)/) === 0) {\n\t\t\t\tvAlign = \"top\";\n\t\t\t} else if(this.parser.source.substr(this.parser.pos).search(/^,([^,]|,,)/) === 0) {\n\t\t\t\tvAlign = \"bottom\";\n\t\t\t}\n\t\t\tif(vAlign) {\n\t\t\t\tthis.parser.pos++;\n\t\t\t}\n\t\t\tvar chr = this.parser.source.substr(this.parser.pos,1);\n\t\t\twhile(chr === \" \") {\n\t\t\t\tspaceLeft = true;\n\t\t\t\tthis.parser.pos++;\n\t\t\t\tchr = this.parser.source.substr(this.parser.pos,1);\n\t\t\t}\n\t\t\t// Check whether this is a heading cell\n\t\t\tvar cell;\n\t\t\tif(chr === \"!\") {\n\t\t\t\tthis.parser.pos++;\n\t\t\t\tcell = {type: \"element\", tag: \"th\", children: []};\n\t\t\t} else {\n\t\t\t\tcell = {type: \"element\", tag: \"td\", children: []};\n\t\t\t}\n\t\t\ttree.push(cell);\n\t\t\t// Record information about this cell\n\t\t\tprevCell = cell;\n\t\t\tprevColumns[col] = {rowSpanCount:1,element:cell};\n\t\t\t// Check for a colspan\n\t\t\tif(colSpanCount > 1) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"colspan\",colSpanCount);\n\t\t\t\tcolSpanCount = 1;\n\t\t\t}\n\t\t\t// Parse the cell\n\t\t\tcell.children = this.parser.parseInlineRun(cellTermRegExp,{eatTerminator: true});\n\t\t\t// Set the alignment for the cell\n\t\t\tif(vAlign) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"valign\",vAlign);\n\t\t\t}\n\t\t\tif(this.parser.source.substr(this.parser.pos - 2,1) === \" \") { // spaceRight\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"align\",spaceLeft ? \"center\" : \"left\");\n\t\t\t} else if(spaceLeft) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"align\",\"right\");\n\t\t\t}\n\t\t\t// Move back to the closing `|`\n\t\t\tthis.parser.pos--;\n\t\t}\n\t\tcol++;\n\t\tcellRegExp.lastIndex = this.parser.pos;\n\t\tcellMatch = cellRegExp.exec(this.parser.source);\n\t}\n\treturn tree;\n};\n\nexports.parse = function() {\n\tvar rowContainerTypes = {\"c\":\"caption\", \"h\":\"thead\", \"\":\"tbody\", \"f\":\"tfoot\"},\n\t\ttable = {type: \"element\", tag: \"table\", children: []},\n\t\trowRegExp = /^\\|([^\\n]*)\\|([fhck]?)\\r?(?:\\n|$)/mg,\n\t\trowTermRegExp = /(\\|(?:[fhck]?)\\r?(?:\\n|$))/mg,\n\t\tprevColumns = [],\n\t\tcurrRowType,\n\t\trowContainer,\n\t\trowCount = 0;\n\t// Match the row\n\trowRegExp.lastIndex = this.parser.pos;\n\tvar rowMatch = rowRegExp.exec(this.parser.source);\n\twhile(rowMatch && rowMatch.index === this.parser.pos) {\n\t\tvar rowType = rowMatch[2];\n\t\t// Check if it is a class assignment\n\t\tif(rowType === \"k\") {\n\t\t\t$tw.utils.addClassToParseTreeNode(table,rowMatch[1]);\n\t\t\tthis.parser.pos = rowMatch.index + rowMatch[0].length;\n\t\t} else {\n\t\t\t// Otherwise, create a new row if this one is of a different type\n\t\t\tif(rowType !== currRowType) {\n\t\t\t\trowContainer = {type: \"element\", tag: rowContainerTypes[rowType], children: []};\n\t\t\t\ttable.children.push(rowContainer);\n\t\t\t\tcurrRowType = rowType;\n\t\t\t}\n\t\t\t// Is this a caption row?\n\t\t\tif(currRowType === \"c\") {\n\t\t\t\t// If so, move past the opening `|` of the row\n\t\t\t\tthis.parser.pos++;\n\t\t\t\t// Move the caption to the first row if it isn't already\n\t\t\t\tif(table.children.length !== 1) {\n\t\t\t\t\ttable.children.pop(); // Take rowContainer out of the children array\n\t\t\t\t\ttable.children.splice(0,0,rowContainer); // Insert it at the bottom\t\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t// Set the alignment - TODO: figure out why TW did this\n//\t\t\t\trowContainer.attributes.align = rowCount === 0 ? \"top\" : \"bottom\";\n\t\t\t\t// Parse the caption\n\t\t\t\trowContainer.children = this.parser.parseInlineRun(rowTermRegExp,{eatTerminator: true});\n\t\t\t} else {\n\t\t\t\t// Create the row\n\t\t\t\tvar theRow = {type: \"element\", tag: \"tr\", children: []};\n\t\t\t\t$tw.utils.addClassToParseTreeNode(theRow,rowCount%2 ? \"oddRow\" : \"evenRow\");\n\t\t\t\trowContainer.children.push(theRow);\n\t\t\t\t// Process the row\n\t\t\t\ttheRow.children = processRow.call(this,prevColumns);\n\t\t\t\tthis.parser.pos = rowMatch.index + rowMatch[0].length;\n\t\t\t\t// Increment the row count\n\t\t\t\trowCount++;\n\t\t\t}\n\t\t}\n\t\trowMatch = rowRegExp.exec(this.parser.source);\n\t}\n\treturn [table];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/transcludeblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/transcludeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/transcludeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for block-level transclusion. For example:\n\n```\n{{MyTiddler}}\n{{MyTiddler||TemplateTitle}}\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"transcludeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{([^\\{\\}\\|]*)(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}(?:\\r?\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar template = $tw.utils.trim(this.match[2]),\n\t\ttextRef = $tw.utils.trim(this.match[1]);\n\t// Prepare the transclude widget\n\tvar transcludeNode = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {},\n\t\t\tisBlock: true\n\t\t};\n\t// Prepare the tiddler widget\n\tvar tr, targetTitle, targetField, targetIndex, tiddlerNode;\n\tif(textRef) {\n\t\ttr = $tw.utils.parseTextReference(textRef);\n\t\ttargetTitle = tr.title;\n\t\ttargetField = tr.field;\n\t\ttargetIndex = tr.index;\n\t\ttiddlerNode = {\n\t\t\ttype: \"tiddler\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: targetTitle}\n\t\t\t},\n\t\t\tisBlock: true,\n\t\t\tchildren: [transcludeNode]\n\t\t};\n\t}\n\tif(template) {\n\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: template};\n\t\tif(textRef) {\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t} else {\n\t\tif(textRef) {\n\t\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: targetTitle};\n\t\t\tif(targetField) {\n\t\t\t\ttranscludeNode.attributes.field = {type: \"string\", value: targetField};\n\t\t\t}\n\t\t\tif(targetIndex) {\n\t\t\t\ttranscludeNode.attributes.index = {type: \"string\", value: targetIndex};\n\t\t\t}\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/transcludeinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/transcludeinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/transcludeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for inline-level transclusion. For example:\n\n```\n{{MyTiddler}}\n{{MyTiddler||TemplateTitle}}\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"transcludeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{([^\\{\\}\\|]*)(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar template = $tw.utils.trim(this.match[2]),\n\t\ttextRef = $tw.utils.trim(this.match[1]);\n\t// Prepare the transclude widget\n\tvar transcludeNode = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {}\n\t\t};\n\t// Prepare the tiddler widget\n\tvar tr, targetTitle, targetField, targetIndex, tiddlerNode;\n\tif(textRef) {\n\t\ttr = $tw.utils.parseTextReference(textRef);\n\t\ttargetTitle = tr.title;\n\t\ttargetField = tr.field;\n\t\ttargetIndex = tr.index;\n\t\ttiddlerNode = {\n\t\t\ttype: \"tiddler\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: targetTitle}\n\t\t\t},\n\t\t\tchildren: [transcludeNode]\n\t\t};\n\t}\n\tif(template) {\n\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: template};\n\t\tif(textRef) {\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t} else {\n\t\tif(textRef) {\n\t\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: targetTitle};\n\t\t\tif(targetField) {\n\t\t\t\ttranscludeNode.attributes.field = {type: \"string\", value: targetField};\n\t\t\t}\n\t\t\tif(targetIndex) {\n\t\t\t\ttranscludeNode.attributes.index = {type: \"string\", value: targetIndex};\n\t\t\t}\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/typedblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/typedblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/typedblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for typed blocks. For example:\n\n```\n$$$.js\nThis will be rendered as JavaScript\n$$$\n\n$$$.svg\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"150\" height=\"100\">\n  <circle cx=\"100\" cy=\"50\" r=\"40\" stroke=\"black\" stroke-width=\"2\" fill=\"red\" />\n</svg>\n$$$\n\n$$$text/vnd.tiddlywiki>text/html\nThis will be rendered as an //HTML representation// of WikiText\n$$$\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.name = \"typedblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\$\\$\\$([^ >\\r\\n]*)(?: *> *([^ \\r\\n]+))?\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /\\r?\\n\\$\\$\\$\\r?(?:\\n|$)/mg;\n\t// Save the type\n\tvar parseType = this.match[1],\n\t\trenderType = this.match[2];\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Look for the end of the block\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the block\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\t// Parse the block according to the specified type\n\tvar parser = this.parser.wiki.parseText(parseType,text,{defaultType: \"text/plain\"});\n\t// If there's no render type, just return the parse tree\n\tif(!renderType) {\n\t\treturn parser.tree;\n\t} else {\n\t\t// Otherwise, render to the rendertype and return in a <PRE> tag\n\t\tvar widgetNode = this.parser.wiki.makeWidget(parser),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\ttext = renderType === \"text/html\" ? container.innerHTML : container.textContent;\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"pre\",\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: text\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/whitespace.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/whitespace.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/whitespace.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for whitespace specifications\n\n```\n\\whitespace trim\n\\whitespace notrim\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"whitespace\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\whitespace[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\tvar self = this;\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse whitespace delimited tokens terminated by a line break\n\tvar reMatch = /[^\\S\\n]*(\\S+)|(\\r?\\n)/mg,\n\t\ttokens = [];\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\twhile(match && match.index === this.parser.pos) {\n\t\tthis.parser.pos = reMatch.lastIndex;\n\t\t// Exit if we've got the line break\n\t\tif(match[2]) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the token\n\t\tif(match[1]) {\n\t\t\ttokens.push(match[1]);\n\t\t}\n\t\t// Match the next token\n\t\tmatch = reMatch.exec(this.parser.source);\n\t}\n\t// Process the tokens\n\t$tw.utils.each(tokens,function(token) {\n\t\tswitch(token) {\n\t\t\tcase \"trim\":\n\t\t\t\tself.parser.configTrimWhiteSpace = true;\n\t\t\t\tbreak;\n\t\t\tcase \"notrim\":\n\t\t\t\tself.parser.configTrimWhiteSpace = false;\n\t\t\t\tbreak;\n\t\t}\n\t});\n\t// No parse tree nodes to return\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/wikilink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/wikilink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/wikilink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for wiki links. For example:\n\n```\nAWikiLink\nAnotherLink\n~SuppressedLink\n```\n\nPrecede a camel case word with `~` to prevent it from being recognised as a link.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"wikilink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = new RegExp($tw.config.textPrimitives.unWikiLink + \"?\" + $tw.config.textPrimitives.wikiLink,\"mg\");\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get the details of the match\n\tvar linkText = this.match[0];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// If the link starts with the unwikilink character then just output it as plain text\n\tif(linkText.substr(0,1) === $tw.config.textPrimitives.unWikiLink) {\n\t\treturn [{type: \"text\", text: linkText.substr(1)}];\n\t}\n\t// If the link has been preceded with a blocked letter then don't treat it as a link\n\tif(this.match.index > 0) {\n\t\tvar preRegExp = new RegExp($tw.config.textPrimitives.blockPrefixLetters,\"mg\");\n\t\tpreRegExp.lastIndex = this.match.index-1;\n\t\tvar preMatch = preRegExp.exec(this.parser.source);\n\t\tif(preMatch && preMatch.index === this.match.index-1) {\n\t\t\treturn [{type: \"text\", text: linkText}];\n\t\t}\n\t}\n\treturn [{\n\t\ttype: \"link\",\n\t\tattributes: {\n\t\t\tto: {type: \"string\", value: linkText}\n\t\t},\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\ttext: linkText\n\t\t}]\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/wikiparser.js": {
            "title": "$:/core/modules/parsers/wikiparser/wikiparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/wikiparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe wiki text parser processes blocks of source text into a parse tree.\n\nThe parse tree is made up of nested arrays of these JavaScript objects:\n\n\t{type: \"element\", tag: <string>, attributes: {}, children: []} - an HTML element\n\t{type: \"text\", text: <string>} - a text node\n\t{type: \"entity\", value: <string>} - an entity\n\t{type: \"raw\", html: <string>} - raw HTML\n\nAttributes are stored as hashmaps of the following objects:\n\n\t{type: \"string\", value: <string>} - literal string\n\t{type: \"indirect\", textReference: <textReference>} - indirect through a text reference\n\t{type: \"macro\", macro: <TBD>} - indirect through a macro invocation\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar WikiParser = function(type,text,options) {\n\tthis.wiki = options.wiki;\n\tvar self = this;\n\t// Check for an externally linked tiddler\n\tif($tw.browser && (text || \"\") === \"\" && options._canonical_uri) {\n\t\tthis.loadRemoteTiddler(options._canonical_uri);\n\t\ttext = $tw.language.getRawString(\"LazyLoadingWarning\");\n\t}\n\t// Initialise the classes if we don't have them already\n\tif(!this.pragmaRuleClasses) {\n\t\tWikiParser.prototype.pragmaRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"pragma\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.pragmaRuleClasses,\"$:/config/WikiParserRules/Pragmas/\");\n\t}\n\tif(!this.blockRuleClasses) {\n\t\tWikiParser.prototype.blockRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"block\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.blockRuleClasses,\"$:/config/WikiParserRules/Block/\");\n\t}\n\tif(!this.inlineRuleClasses) {\n\t\tWikiParser.prototype.inlineRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"inline\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.inlineRuleClasses,\"$:/config/WikiParserRules/Inline/\");\n\t}\n\t// Save the parse text\n\tthis.type = type || \"text/vnd.tiddlywiki\";\n\tthis.source = text || \"\";\n\tthis.sourceLength = this.source.length;\n\t// Flag for ignoring whitespace\n\tthis.configTrimWhiteSpace = false;\n\t// Set current parse position\n\tthis.pos = 0;\n\t// Instantiate the pragma parse rules\n\tthis.pragmaRules = this.instantiateRules(this.pragmaRuleClasses,\"pragma\",0);\n\t// Instantiate the parser block and inline rules\n\tthis.blockRules = this.instantiateRules(this.blockRuleClasses,\"block\",0);\n\tthis.inlineRules = this.instantiateRules(this.inlineRuleClasses,\"inline\",0);\n\t// Parse any pragmas\n\tthis.tree = [];\n\tvar topBranch = this.parsePragmas();\n\t// Parse the text into inline runs or blocks\n\tif(options.parseAsInline) {\n\t\ttopBranch.push.apply(topBranch,this.parseInlineRun());\n\t} else {\n\t\ttopBranch.push.apply(topBranch,this.parseBlocks());\n\t}\n\t// Return the parse tree\n};\n\n/*\n*/\nWikiParser.prototype.loadRemoteTiddler = function(url) {\n\tvar self = this;\n\t$tw.utils.httpRequest({\n\t\turl: url,\n\t\ttype: \"GET\",\n\t\tcallback: function(err,data) {\n\t\t\tif(!err) {\n\t\t\t\tvar tiddlers = self.wiki.deserializeTiddlers(\".tid\",data,self.wiki.getCreationFields());\n\t\t\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\t\t\ttiddler[\"_canonical_uri\"] = url;\n\t\t\t\t});\n\t\t\t\tif(tiddlers) {\n\t\t\t\t\tself.wiki.addTiddlers(tiddlers);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\n*/\nWikiParser.prototype.setupRules = function(proto,configPrefix) {\n\tvar self = this;\n\tif(!$tw.safemode) {\n\t\t$tw.utils.each(proto,function(object,name) {\n\t\t\tif(self.wiki.getTiddlerText(configPrefix + name,\"enable\") !== \"enable\") {\n\t\t\t\tdelete proto[name];\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nInstantiate an array of parse rules\n*/\nWikiParser.prototype.instantiateRules = function(classes,type,startPos) {\n\tvar rulesInfo = [],\n\t\tself = this;\n\t$tw.utils.each(classes,function(RuleClass) {\n\t\t// Instantiate the rule\n\t\tvar rule = new RuleClass(self);\n\t\trule.is = {};\n\t\trule.is[type] = true;\n\t\trule.init(self);\n\t\tvar matchIndex = rule.findNextMatch(startPos);\n\t\tif(matchIndex !== undefined) {\n\t\t\trulesInfo.push({\n\t\t\t\trule: rule,\n\t\t\t\tmatchIndex: matchIndex\n\t\t\t});\n\t\t}\n\t});\n\treturn rulesInfo;\n};\n\n/*\nSkip any whitespace at the current position. Options are:\n\ttreatNewlinesAsNonWhitespace: true if newlines are NOT to be treated as whitespace\n*/\nWikiParser.prototype.skipWhitespace = function(options) {\n\toptions = options || {};\n\tvar whitespaceRegExp = options.treatNewlinesAsNonWhitespace ? /([^\\S\\n]+)/mg : /(\\s+)/mg;\n\twhitespaceRegExp.lastIndex = this.pos;\n\tvar whitespaceMatch = whitespaceRegExp.exec(this.source);\n\tif(whitespaceMatch && whitespaceMatch.index === this.pos) {\n\t\tthis.pos = whitespaceRegExp.lastIndex;\n\t}\n};\n\n/*\nGet the next match out of an array of parse rule instances\n*/\nWikiParser.prototype.findNextMatch = function(rules,startPos) {\n\t// Find the best matching rule by finding the closest match position\n\tvar matchingRule,\n\t\tmatchingRulePos = this.sourceLength;\n\t// Step through each rule\n\tfor(var t=0; t<rules.length; t++) {\n\t\tvar ruleInfo = rules[t];\n\t\t// Ask the rule to get the next match if we've moved past the current one\n\t\tif(ruleInfo.matchIndex !== undefined  && ruleInfo.matchIndex < startPos) {\n\t\t\truleInfo.matchIndex = ruleInfo.rule.findNextMatch(startPos);\n\t\t}\n\t\t// Adopt this match if it's closer than the current best match\n\t\tif(ruleInfo.matchIndex !== undefined && ruleInfo.matchIndex <= matchingRulePos) {\n\t\t\tmatchingRule = ruleInfo;\n\t\t\tmatchingRulePos = ruleInfo.matchIndex;\n\t\t}\n\t}\n\treturn matchingRule;\n};\n\n/*\nParse any pragmas at the beginning of a block of parse text\n*/\nWikiParser.prototype.parsePragmas = function() {\n\tvar currentTreeBranch = this.tree;\n\twhile(true) {\n\t\t// Skip whitespace\n\t\tthis.skipWhitespace();\n\t\t// Check for the end of the text\n\t\tif(this.pos >= this.sourceLength) {\n\t\t\tbreak;\n\t\t}\n\t\t// Check if we've arrived at a pragma rule match\n\t\tvar nextMatch = this.findNextMatch(this.pragmaRules,this.pos);\n\t\t// If not, just exit\n\t\tif(!nextMatch || nextMatch.matchIndex !== this.pos) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the pragma rule\n\t\tvar subTree = nextMatch.rule.parse();\n\t\tif(subTree.length > 0) {\n\t\t\t// Quick hack; we only cope with a single parse tree node being returned, which is true at the moment\n\t\t\tcurrentTreeBranch.push.apply(currentTreeBranch,subTree);\n\t\t\tsubTree[0].children = [];\n\t\t\tcurrentTreeBranch = subTree[0].children;\n\t\t}\n\t}\n\treturn currentTreeBranch;\n};\n\n/*\nParse a block from the current position\n\tterminatorRegExpString: optional regular expression string that identifies the end of plain paragraphs. Must not include capturing parenthesis\n*/\nWikiParser.prototype.parseBlock = function(terminatorRegExpString) {\n\tvar terminatorRegExp = terminatorRegExpString ? new RegExp(\"(\" + terminatorRegExpString + \"|\\\\r?\\\\n\\\\r?\\\\n)\",\"mg\") : /(\\r?\\n\\r?\\n)/mg;\n\tthis.skipWhitespace();\n\tif(this.pos >= this.sourceLength) {\n\t\treturn [];\n\t}\n\t// Look for a block rule that applies at the current position\n\tvar nextMatch = this.findNextMatch(this.blockRules,this.pos);\n\tif(nextMatch && nextMatch.matchIndex === this.pos) {\n\t\treturn nextMatch.rule.parse();\n\t}\n\t// Treat it as a paragraph if we didn't find a block rule\n\treturn [{type: \"element\", tag: \"p\", children: this.parseInlineRun(terminatorRegExp)}];\n};\n\n/*\nParse a series of blocks of text until a terminating regexp is encountered or the end of the text\n\tterminatorRegExpString: terminating regular expression\n*/\nWikiParser.prototype.parseBlocks = function(terminatorRegExpString) {\n\tif(terminatorRegExpString) {\n\t\treturn this.parseBlocksTerminated(terminatorRegExpString);\n\t} else {\n\t\treturn this.parseBlocksUnterminated();\n\t}\n};\n\n/*\nParse a block from the current position to the end of the text\n*/\nWikiParser.prototype.parseBlocksUnterminated = function() {\n\tvar tree = [];\n\twhile(this.pos < this.sourceLength) {\n\t\ttree.push.apply(tree,this.parseBlock());\n\t}\n\treturn tree;\n};\n\n/*\nParse blocks of text until a terminating regexp is encountered\n*/\nWikiParser.prototype.parseBlocksTerminated = function(terminatorRegExpString) {\n\tvar terminatorRegExp = new RegExp(\"(\" + terminatorRegExpString + \")\",\"mg\"),\n\t\ttree = [];\n\t// Skip any whitespace\n\tthis.skipWhitespace();\n\t//  Check if we've got the end marker\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar match = terminatorRegExp.exec(this.source);\n\t// Parse the text into blocks\n\twhile(this.pos < this.sourceLength && !(match && match.index === this.pos)) {\n\t\tvar blocks = this.parseBlock(terminatorRegExpString);\n\t\ttree.push.apply(tree,blocks);\n\t\t// Skip any whitespace\n\t\tthis.skipWhitespace();\n\t\t//  Check if we've got the end marker\n\t\tterminatorRegExp.lastIndex = this.pos;\n\t\tmatch = terminatorRegExp.exec(this.source);\n\t}\n\tif(match && match.index === this.pos) {\n\t\tthis.pos = match.index + match[0].length;\n\t}\n\treturn tree;\n};\n\n/*\nParse a run of text at the current position\n\tterminatorRegExp: a regexp at which to stop the run\n\toptions: see below\nOptions available:\n\teatTerminator: move the parse position past any encountered terminator (default false)\n*/\nWikiParser.prototype.parseInlineRun = function(terminatorRegExp,options) {\n\tif(terminatorRegExp) {\n\t\treturn this.parseInlineRunTerminated(terminatorRegExp,options);\n\t} else {\n\t\treturn this.parseInlineRunUnterminated(options);\n\t}\n};\n\nWikiParser.prototype.parseInlineRunUnterminated = function(options) {\n\tvar tree = [];\n\t// Find the next occurrence of an inline rule\n\tvar nextMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t// Loop around the matches until we've reached the end of the text\n\twhile(this.pos < this.sourceLength && nextMatch) {\n\t\t// Process the text preceding the run rule\n\t\tif(nextMatch.matchIndex > this.pos) {\n\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,nextMatch.matchIndex));\n\t\t\tthis.pos = nextMatch.matchIndex;\n\t\t}\n\t\t// Process the run rule\n\t\ttree.push.apply(tree,nextMatch.rule.parse());\n\t\t// Look for the next run rule\n\t\tnextMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t}\n\t// Process the remaining text\n\tif(this.pos < this.sourceLength) {\n\t\tthis.pushTextWidget(tree,this.source.substr(this.pos));\n\t}\n\tthis.pos = this.sourceLength;\n\treturn tree;\n};\n\nWikiParser.prototype.parseInlineRunTerminated = function(terminatorRegExp,options) {\n\toptions = options || {};\n\tvar tree = [];\n\t// Find the next occurrence of the terminator\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar terminatorMatch = terminatorRegExp.exec(this.source);\n\t// Find the next occurrence of a inlinerule\n\tvar inlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t// Loop around until we've reached the end of the text\n\twhile(this.pos < this.sourceLength && (terminatorMatch || inlineRuleMatch)) {\n\t\t// Return if we've found the terminator, and it precedes any inline rule match\n\t\tif(terminatorMatch) {\n\t\t\tif(!inlineRuleMatch || inlineRuleMatch.matchIndex >= terminatorMatch.index) {\n\t\t\t\tif(terminatorMatch.index > this.pos) {\n\t\t\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,terminatorMatch.index));\n\t\t\t\t}\n\t\t\t\tthis.pos = terminatorMatch.index;\n\t\t\t\tif(options.eatTerminator) {\n\t\t\t\t\tthis.pos += terminatorMatch[0].length;\n\t\t\t\t}\n\t\t\t\treturn tree;\n\t\t\t}\n\t\t}\n\t\t// Process any inline rule, along with the text preceding it\n\t\tif(inlineRuleMatch) {\n\t\t\t// Preceding text\n\t\t\tif(inlineRuleMatch.matchIndex > this.pos) {\n\t\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,inlineRuleMatch.matchIndex));\n\t\t\t\tthis.pos = inlineRuleMatch.matchIndex;\n\t\t\t}\n\t\t\t// Process the inline rule\n\t\t\ttree.push.apply(tree,inlineRuleMatch.rule.parse());\n\t\t\t// Look for the next inline rule\n\t\t\tinlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t\t\t// Look for the next terminator match\n\t\t\tterminatorRegExp.lastIndex = this.pos;\n\t\t\tterminatorMatch = terminatorRegExp.exec(this.source);\n\t\t}\n\t}\n\t// Process the remaining text\n\tif(this.pos < this.sourceLength) {\n\t\tthis.pushTextWidget(tree,this.source.substr(this.pos));\n\t}\n\tthis.pos = this.sourceLength;\n\treturn tree;\n};\n\n/*\nPush a text widget onto an array, respecting the configTrimWhiteSpace setting\n*/\nWikiParser.prototype.pushTextWidget = function(array,text) {\n\tif(this.configTrimWhiteSpace) {\n\t\ttext = $tw.utils.trim(text);\n\t}\n\tif(text) {\n\t\tarray.push({type: \"text\", text: text});\t\t\n\t}\n};\n\n/*\nParse zero or more class specifiers `.classname`\n*/\nWikiParser.prototype.parseClasses = function() {\n\tvar classRegExp = /\\.([^\\s\\.]+)/mg,\n\t\tclassNames = [];\n\tclassRegExp.lastIndex = this.pos;\n\tvar match = classRegExp.exec(this.source);\n\twhile(match && match.index === this.pos) {\n\t\tthis.pos = match.index + match[0].length;\n\t\tclassNames.push(match[1]);\n\t\tmatch = classRegExp.exec(this.source);\n\t}\n\treturn classNames;\n};\n\n/*\nAmend the rules used by this instance of the parser\n\ttype: `only` keeps just the named rules, `except` keeps all but the named rules\n\tnames: array of rule names\n*/\nWikiParser.prototype.amendRules = function(type,names) {\n\tnames = names || [];\n\t// Define the filter function\n\tvar target;\n\tif(type === \"only\") {\n\t\ttarget = true;\n\t} else if(type === \"except\") {\n\t\ttarget = false;\n\t} else {\n\t\treturn;\n\t}\n\t// Define a function to process each of our rule arrays\n\tvar processRuleArray = function(ruleArray) {\n\t\tfor(var t=ruleArray.length-1; t>=0; t--) {\n\t\t\tif((names.indexOf(ruleArray[t].rule.name) === -1) === target) {\n\t\t\t\truleArray.splice(t,1);\n\t\t\t}\n\t\t}\n\t};\n\t// Process each rule array\n\tprocessRuleArray(this.pragmaRules);\n\tprocessRuleArray(this.blockRules);\n\tprocessRuleArray(this.inlineRules);\n};\n\nexports[\"text/vnd.tiddlywiki\"] = WikiParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/wikiparser/rules/wikirulebase.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/wikirulebase.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/wikirulebase.js\ntype: application/javascript\nmodule-type: global\n\nBase class for wiki parser rules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nThis constructor is always overridden with a blank constructor, and so shouldn't be used\n*/\nvar WikiRuleBase = function() {\n};\n\n/*\nTo be overridden by individual rules\n*/\nWikiRuleBase.prototype.init = function(parser) {\n\tthis.parser = parser;\n};\n\n/*\nDefault implementation of findNextMatch uses RegExp matching\n*/\nWikiRuleBase.prototype.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\treturn this.match ? this.match.index : undefined;\n};\n\nexports.WikiRuleBase = WikiRuleBase;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/pluginswitcher.js": {
            "title": "$:/core/modules/pluginswitcher.js",
            "text": "/*\\\ntitle: $:/core/modules/pluginswitcher.js\ntype: application/javascript\nmodule-type: global\n\nManages switching plugins for themes and languages.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\noptions:\nwiki: wiki store to be used\npluginType: type of plugin to be switched\ncontrollerTitle: title of tiddler used to control switching of this resource\ndefaultPlugins: array of default plugins to be used if nominated plugin isn't found\nonSwitch: callback when plugin is switched (single parameter is array of plugin titles)\n*/\nfunction PluginSwitcher(options) {\n\tthis.wiki = options.wiki;\n\tthis.pluginType = options.pluginType;\n\tthis.controllerTitle = options.controllerTitle;\n\tthis.defaultPlugins = options.defaultPlugins || [];\n\tthis.onSwitch = options.onSwitch;\n\t// Switch to the current plugin\n\tthis.switchPlugins();\n\t// Listen for changes to the selected plugin\n\tvar self = this;\n\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,self.controllerTitle)) {\n\t\t\tself.switchPlugins();\n\t\t}\n\t});\n}\n\nPluginSwitcher.prototype.switchPlugins = function() {\n\t// Get the name of the current theme\n\tvar selectedPluginTitle = this.wiki.getTiddlerText(this.controllerTitle);\n\t// If it doesn't exist, then fallback to one of the default themes\n\tvar index = 0;\n\twhile(!this.wiki.getTiddler(selectedPluginTitle) && index < this.defaultPlugins.length) {\n\t\tselectedPluginTitle = this.defaultPlugins[index++];\n\t}\n\t// Accumulate the titles of the plugins that we need to load\n\tvar plugins = [],\n\t\tself = this,\n\t\taccumulatePlugin = function(title) {\n\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\tif(tiddler && tiddler.isPlugin() && plugins.indexOf(title) === -1) {\n\t\t\t\tplugins.push(title);\n\t\t\t\tvar pluginInfo = JSON.parse(self.wiki.getTiddlerText(title)),\n\t\t\t\t\tdependents = $tw.utils.parseStringArray(tiddler.fields.dependents || \"\");\n\t\t\t\t$tw.utils.each(dependents,function(title) {\n\t\t\t\t\taccumulatePlugin(title);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\taccumulatePlugin(selectedPluginTitle);\n\t// Read the plugin info for the incoming plugins\n\tvar changes = $tw.wiki.readPluginInfo(plugins);\n\t// Unregister any existing theme tiddlers\n\tvar unregisteredTiddlers = $tw.wiki.unregisterPluginTiddlers(this.pluginType);\n\t// Register any new theme tiddlers\n\tvar registeredTiddlers = $tw.wiki.registerPluginTiddlers(this.pluginType,plugins);\n\t// Unpack the current theme tiddlers\n\t$tw.wiki.unpackPluginTiddlers();\n\t// Call the switch handler\n\tif(this.onSwitch) {\n\t\tthis.onSwitch(plugins);\n\t}\n};\n\nexports.PluginSwitcher = PluginSwitcher;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/saver-handler.js": {
            "title": "$:/core/modules/saver-handler.js",
            "text": "/*\\\ntitle: $:/core/modules/saver-handler.js\ntype: application/javascript\nmodule-type: global\n\nThe saver handler tracks changes to the store and handles saving the entire wiki via saver modules.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInstantiate the saver handler with the following options:\nwiki: wiki to be synced\ndirtyTracking: true if dirty tracking should be performed\n*/\nfunction SaverHandler(options) {\n\tvar self = this;\n\tthis.wiki = options.wiki;\n\tthis.dirtyTracking = options.dirtyTracking;\n\tthis.preloadDirty = options.preloadDirty || [];\n\tthis.pendingAutoSave = false;\n\t// Make a logger\n\tthis.logger = new $tw.utils.Logger(\"saver-handler\");\n\t// Initialise our savers\n\tif($tw.browser) {\n\t\tthis.initSavers();\n\t}\n\t// Only do dirty tracking if required\n\tif($tw.browser && this.dirtyTracking) {\n\t\t// Compile the dirty tiddler filter\n\t\tthis.filterFn = this.wiki.compileFilter(this.wiki.getTiddlerText(this.titleSyncFilter));\n\t\t// Count of changes that have not yet been saved\n\t\tvar filteredChanges = self.filterFn.call(self.wiki,function(iterator) {\n\t\t\t\t$tw.utils.each(self.preloadDirty,function(title) {\n\t\t\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\t\t\titerator(tiddler,title);\n\t\t\t\t});\n\t\t});\n\t\tthis.numChanges = filteredChanges.length;\n\t\t// Listen out for changes to tiddlers\n\t\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\t\t// Filter the changes so that we only count changes to tiddlers that we care about\n\t\t\tvar filteredChanges = self.filterFn.call(self.wiki,function(iterator) {\n\t\t\t\t$tw.utils.each(changes,function(change,title) {\n\t\t\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\t\t\titerator(tiddler,title);\n\t\t\t\t});\n\t\t\t});\n\t\t\t// Adjust the number of changes\n\t\t\tself.numChanges += filteredChanges.length;\n\t\t\tself.updateDirtyStatus();\n\t\t\t// Do any autosave if one is pending and there's no more change events\n\t\t\tif(self.pendingAutoSave && self.wiki.getSizeOfTiddlerEventQueue() === 0) {\n\t\t\t\t// Check if we're dirty\n\t\t\t\tif(self.numChanges > 0) {\n\t\t\t\t\tself.saveWiki({\n\t\t\t\t\t\tmethod: \"autosave\",\n\t\t\t\t\t\tdownloadType: \"text/plain\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tself.pendingAutoSave = false;\n\t\t\t}\n\t\t});\n\t\t// Listen for the autosave event\n\t\t$tw.rootWidget.addEventListener(\"tm-auto-save-wiki\",function(event) {\n\t\t\t// Do the autosave unless there are outstanding tiddler change events\n\t\t\tif(self.wiki.getSizeOfTiddlerEventQueue() === 0) {\n\t\t\t\t// Check if we're dirty\n\t\t\t\tif(self.numChanges > 0) {\n\t\t\t\t\tself.saveWiki({\n\t\t\t\t\t\tmethod: \"autosave\",\n\t\t\t\t\t\tdownloadType: \"text/plain\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise put ourselves in the \"pending autosave\" state and wait for the change event before we do the autosave\n\t\t\t\tself.pendingAutoSave = true;\n\t\t\t}\n\t\t});\n\t\t// Set up our beforeunload handler\n\t\t$tw.addUnloadTask(function(event) {\n\t\t\tvar confirmationMessage;\n\t\t\tif(self.isDirty()) {\n\t\t\t\tconfirmationMessage = $tw.language.getString(\"UnsavedChangesWarning\");\n\t\t\t\tevent.returnValue = confirmationMessage; // Gecko\n\t\t\t}\n\t\t\treturn confirmationMessage;\n\t\t});\n\t}\n\t// Install the save action handlers\n\tif($tw.browser) {\n\t\t$tw.rootWidget.addEventListener(\"tm-save-wiki\",function(event) {\n\t\t\tself.saveWiki({\n\t\t\t\ttemplate: event.param,\n\t\t\t\tdownloadType: \"text/plain\",\n\t\t\t\tvariables: event.paramObject\n\t\t\t});\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-download-file\",function(event) {\n\t\t\tself.saveWiki({\n\t\t\t\tmethod: \"download\",\n\t\t\t\ttemplate: event.param,\n\t\t\t\tdownloadType: \"text/plain\",\n\t\t\t\tvariables: event.paramObject\n\t\t\t});\n\t\t});\n\t}\n}\n\nSaverHandler.prototype.titleSyncFilter = \"$:/config/SaverFilter\";\nSaverHandler.prototype.titleAutoSave = \"$:/config/AutoSave\";\nSaverHandler.prototype.titleSavedNotification = \"$:/language/Notifications/Save/Done\";\n\n/*\nSelect the appropriate saver modules and set them up\n*/\nSaverHandler.prototype.initSavers = function(moduleType) {\n\tmoduleType = moduleType || \"saver\";\n\t// Instantiate the available savers\n\tthis.savers = [];\n\tvar self = this;\n\t$tw.modules.forEachModuleOfType(moduleType,function(title,module) {\n\t\tif(module.canSave(self)) {\n\t\t\tself.savers.push(module.create(self.wiki));\n\t\t}\n\t});\n\t// Sort the savers into priority order\n\tthis.savers.sort(function(a,b) {\n\t\tif(a.info.priority < b.info.priority) {\n\t\t\treturn -1;\n\t\t} else {\n\t\t\tif(a.info.priority > b.info.priority) {\n\t\t\t\treturn +1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nSave the wiki contents. Options are:\n\tmethod: \"save\", \"autosave\" or \"download\"\n\ttemplate: the tiddler containing the template to save\n\tdownloadType: the content type for the saved file\n*/\nSaverHandler.prototype.saveWiki = function(options) {\n\toptions = options || {};\n\tvar self = this,\n\t\tmethod = options.method || \"save\";\n\t// Ignore autosave if disabled\n\tif(method === \"autosave\" && ($tw.config.disableAutoSave || this.wiki.getTiddlerText(this.titleAutoSave,\"yes\") !== \"yes\")) {\n\t\treturn false;\n\t}\n\tvar\tvariables = options.variables || {},\n\t\ttemplate = options.template || \"$:/core/save/all\",\n\t\tdownloadType = options.downloadType || \"text/plain\",\n\t\ttext = this.wiki.renderTiddler(downloadType,template,options),\n\t\tcallback = function(err) {\n\t\t\tif(err) {\n\t\t\t\talert($tw.language.getString(\"Error/WhileSaving\") + \":\\n\\n\" + err);\n\t\t\t} else {\n\t\t\t\t// Clear the task queue if we're saving (rather than downloading)\n\t\t\t\tif(method !== \"download\") {\n\t\t\t\t\tself.numChanges = 0;\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t}\n\t\t\t\t$tw.notifier.display(self.titleSavedNotification);\n\t\t\t\tif(options.callback) {\n\t\t\t\t\toptions.callback();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t// Call the highest priority saver that supports this method\n\tfor(var t=this.savers.length-1; t>=0; t--) {\n\t\tvar saver = this.savers[t];\n\t\tif(saver.info.capabilities.indexOf(method) !== -1 && saver.save(text,method,callback,{variables: {filename: variables.filename}})) {\n\t\t\tthis.logger.log(\"Saving wiki with method\",method,\"through saver\",saver.info.name);\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nChecks whether the wiki is dirty (ie the window shouldn't be closed)\n*/\nSaverHandler.prototype.isDirty = function() {\n\treturn this.numChanges > 0;\n};\n\n/*\nUpdate the document body with the class \"tc-dirty\" if the wiki has unsaved/unsynced changes\n*/\nSaverHandler.prototype.updateDirtyStatus = function() {\n\tvar self = this;\n\tif($tw.browser) {\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",this.isDirty());\n\t\t$tw.utils.each($tw.windows,function(win) {\n\t\t\t$tw.utils.toggleClass(win.document.body,\"tc-dirty\",self.isDirty());\n\t\t});\n\t}\n};\n\nexports.SaverHandler = SaverHandler;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/savers/andtidwiki.js": {
            "title": "$:/core/modules/savers/andtidwiki.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/andtidwiki.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the AndTidWiki Android app\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar AndTidWiki = function(wiki) {\n};\n\nAndTidWiki.prototype.save = function(text,method,callback,options) {\n\tvar filename = options && options.variables ? options.variables.filename : null;\n\tif (method === \"download\") {\n\t\t// Support download\n\t\tif (window.twi.saveDownload) {\n\t\t\ttry {\n\t\t\t\twindow.twi.saveDownload(text,filename);\n\t\t\t} catch(err) {\n\t\t\t\tif (err.message === \"Method not found\") {\n\t\t\t\t\twindow.twi.saveDownload(text);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tvar link = document.createElement(\"a\");\n\t\t\tlink.setAttribute(\"href\",\"data:text/plain,\" + encodeURIComponent(text));\n\t\t\tif (filename) {\n\t\t\t    link.setAttribute(\"download\",filename);\n\t\t\t}\n\t\t\tdocument.body.appendChild(link);\n\t\t\tlink.click();\n\t\t\tdocument.body.removeChild(link);\n\t\t}\n\t} else if (window.twi.saveWiki) {\n\t\t// Direct save in Tiddloid\n\t\twindow.twi.saveWiki(text);\n\t} else {\n\t\t// Get the pathname of this document\n\t\tvar pathname = decodeURIComponent(document.location.toString().split(\"#\")[0]);\n\t\t// Strip the file://\n\t\tif(pathname.indexOf(\"file://\") === 0) {\n\t\t\tpathname = pathname.substr(7);\n\t\t}\n\t\t// Strip any query or location part\n\t\tvar p = pathname.indexOf(\"?\");\n\t\tif(p !== -1) {\n\t\t\tpathname = pathname.substr(0,p);\n\t\t}\n\t\tp = pathname.indexOf(\"#\");\n\t\tif(p !== -1) {\n\t\t\tpathname = pathname.substr(0,p);\n\t\t}\n\t\t// Save the file\n\t\twindow.twi.saveFile(pathname,text);\n\t}\n\t// Call the callback\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nAndTidWiki.prototype.info = {\n\tname: \"andtidwiki\",\n\tpriority: 1600,\n\tcapabilities: [\"save\", \"autosave\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.twi && !!window.twi.saveFile;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new AndTidWiki(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/beaker.js": {
            "title": "$:/core/modules/savers/beaker.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/beaker.js\ntype: application/javascript\nmodule-type: saver\n\nSaves files using the Beaker browser's (https://beakerbrowser.com) Dat protocol (https://datproject.org/)\nCompatible with beaker >= V0.7.2\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet up the saver\n*/\nvar BeakerSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nBeakerSaver.prototype.save = function(text,method,callback) {\n\tvar dat = new DatArchive(\"\" + window.location),\n\t\tpathname = (\"\" + window.location.pathname).split(\"#\")[0];\n\tdat.stat(pathname).then(function(value) {\n\t\tif(value.isDirectory()) {\n\t\t\tpathname = pathname + \"/index.html\";\n\t\t}\n\t\tdat.writeFile(pathname,text,\"utf8\").then(function(value) {\n\t\t\tcallback(null);\n\t\t},function(reason) {\n\t\t\tcallback(\"Beaker Saver Write Error: \" + reason);\n\t\t});\n\t},function(reason) {\n\t\tcallback(\"Beaker Saver Stat Error: \" + reason);\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nBeakerSaver.prototype.info = {\n\tname: \"beaker\",\n\tpriority: 3000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.DatArchive && location.protocol===\"dat:\";\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new BeakerSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/custom.js": {
            "title": "$:/core/modules/savers/custom.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/custom.js\ntype: application/javascript\nmodule-type: saver\n\nLooks for `window.$tw.customSaver` first on the current window, then\non the parent window (of an iframe). If present, the saver must define\n\tsave: function(text,method,callback) { ... }\nand the saver may define\n\tpriority: number\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar findSaver = function(window) {\n\ttry {\n\t\treturn window && window.$tw && window.$tw.customSaver;\n\t} catch (err) {\n\t\t// Catching the exception is the most reliable way to detect cross-origin iframe errors.\n\t\t// For example, instead of saying that `window.parent.$tw` is undefined, Firefox will throw\n\t\t//   Uncaught DOMException: Permission denied to access property \"$tw\" on cross-origin object\n\t\tconsole.log({ msg: \"custom saver is disabled\", reason: err });\n\t\treturn null;\n\t}\n}\nvar saver = findSaver(window) || findSaver(window.parent) || {};\n\nvar CustomSaver = function(wiki) {\n};\n\nCustomSaver.prototype.save = function(text,method,callback) {\n\treturn saver.save(text, method, callback);\n};\n\n/*\nInformation about this saver\n*/\nCustomSaver.prototype.info = {\n\tname: \"custom\",\n\tpriority: saver.priority || 4000,\n\tcapabilities: [\"save\",\"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!(saver.save);\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new CustomSaver(wiki);\n};\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/download.js": {
            "title": "$:/core/modules/savers/download.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/download.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via HTML5's download APIs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar DownloadSaver = function(wiki) {\n};\n\nDownloadSaver.prototype.save = function(text,method,callback,options) {\n\toptions = options || {};\n\t// Get the current filename\n\tvar filename = options.variables.filename;\n\tif(!filename) {\n\t\tvar p = document.location.pathname.lastIndexOf(\"/\");\n\t\tif(p !== -1) {\n\t\t\t// We decode the pathname because document.location is URL encoded by the browser\n\t\t\tfilename = decodeURIComponent(document.location.pathname.substr(p+1));\n\t\t}\n\t}\n\tif(!filename) {\n\t\tfilename = \"tiddlywiki.html\";\n\t}\n\t// Set up the link\n\tvar link = document.createElement(\"a\");\n\tif(Blob !== undefined) {\n\t\tvar blob = new Blob([text], {type: \"text/html\"});\n\t\tlink.setAttribute(\"href\", URL.createObjectURL(blob));\n\t} else {\n\t\tlink.setAttribute(\"href\",\"data:text/html,\" + encodeURIComponent(text));\n\t}\n\tlink.setAttribute(\"download\",filename);\n\tdocument.body.appendChild(link);\n\tlink.click();\n\tdocument.body.removeChild(link);\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nDownloadSaver.prototype.info = {\n\tname: \"download\",\n\tpriority: 100\n};\n\nObject.defineProperty(DownloadSaver.prototype.info, \"capabilities\", {\n\tget: function() {\n\t\tvar capabilities = [\"save\", \"download\"];\n\t\tif(($tw.wiki.getTextReference(\"$:/config/DownloadSaver/AutoSave\") || \"\").toLowerCase() === \"yes\") {\n\t\t\tcapabilities.push(\"autosave\");\n\t\t}\n\t\treturn capabilities;\n\t}\n});\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn document.createElement(\"a\").download !== undefined;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new DownloadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/fsosaver.js": {
            "title": "$:/core/modules/savers/fsosaver.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/fsosaver.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via MS FileSystemObject ActiveXObject\n\nNote: Since TiddlyWiki's markup contains the MOTW, the FileSystemObject normally won't be available. \nHowever, if the wiki is loaded as an .HTA file (Windows HTML Applications) then the FSO can be used.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar FSOSaver = function(wiki) {\n};\n\nFSOSaver.prototype.save = function(text,method,callback) {\n\t// Get the pathname of this document\n\tvar pathname = unescape(document.location.pathname);\n\t// Test for a Windows path of the form /x:\\blah...\n\tif(/^\\/[A-Z]\\:\\\\[^\\\\]+/i.test(pathname)) {\t// ie: ^/[a-z]:/[^/]+\n\t\t// Remove the leading slash\n\t\tpathname = pathname.substr(1);\n\t} else if(document.location.hostname !== \"\" && /^\\/\\\\[^\\\\]+\\\\[^\\\\]+/i.test(pathname)) {\t// test for \\\\server\\share\\blah... - ^/[^/]+/[^/]+\n\t\t// Remove the leading slash\n\t\tpathname = pathname.substr(1);\n\t\t// reconstruct UNC path\n\t\tpathname = \"\\\\\\\\\" + document.location.hostname + pathname;\n\t} else {\n\t\treturn false;\n\t}\n\t// Save the file (as UTF-16)\n\tvar fso = new ActiveXObject(\"Scripting.FileSystemObject\");\n\tvar file = fso.OpenTextFile(pathname,2,-1,-1);\n\tfile.Write(text);\n\tfile.Close();\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nFSOSaver.prototype.info = {\n\tname: \"FSOSaver\",\n\tpriority: 120,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\ttry {\n\t\treturn (window.location.protocol === \"file:\") && !!(new ActiveXObject(\"Scripting.FileSystemObject\"));\n\t} catch(e) { return false; }\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new FSOSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/gitea.js": {
            "title": "$:/core/modules/savers/gitea.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/gitea.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the gitea\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GiteaSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGiteaSaver.prototype.save = function(text,method,callback) {\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/Gitea/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"Gitea\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/Gitea/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/Gitea/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/Gitea/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/Gitea/Branch\") || \"master\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/Gitea/ServerURL\") || \"https://gitea\",\n\t\theaders = {\n\t\t\t\"Accept\": \"application/json\",\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Authorization\": \"token \" + password\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/repos/\" + repo + \"/contents\" + path;\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tdata: {\n\t\t\tref: branch\n\t\t},\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar use_put = true;\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif(sha === \"\"){\n\t\t\t\t\tuse_put = false;\n\t\t\t\t}\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tmessage: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: $tw.utils.base64Encode(text),\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: endpoint + \"/repos/\" + repo + \"/branches/\" + branch,\n\t\t\t\ttype: \"GET\",\n\t\t\t\theaders: headers,\n\t\t\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\t\t\tif(xhr.status === 404) {\n\t\t\t\t\t\tcallback(\"Please ensure the branch in the Gitea repo exists\");\n\t\t\t\t\t}else{\n\t\t\t\t\t\tdata[\"branch\"] = branch;\n\t\t\t\t\t\tself.upload(uri + filename, use_put?\"PUT\":\"POST\", headers, data, callback);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\nGiteaSaver.prototype.upload = function(uri,method,headers,data,callback) {\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: method,\n\t\theaders: headers,\n\t\tdata: JSON.stringify(data),\n\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\tcallback(null);\n\t\t}\n\t});\n};\n\n/*\nInformation about this saver\n*/\nGiteaSaver.prototype.info = {\n\tname: \"Gitea\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new GiteaSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/github.js": {
            "title": "$:/core/modules/savers/github.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/github.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the GitHub v3 REST API\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GitHubSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGitHubSaver.prototype.save = function(text,method,callback) {\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/GitHub/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"github\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/GitHub/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/GitHub/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/GitHub/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/GitHub/Branch\") || \"main\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/GitHub/ServerURL\") || \"https://api.github.com\",\n\t\theaders = {\n\t\t\t\"Accept\": \"application/vnd.github.v3+json\",\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Authorization\": \"Basic \" + window.btoa(username + \":\" + password),\n\t\t\t\"If-None-Match\": \"\"\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/repos/\" + repo + \"/contents\" + path;\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tdata: {\n\t\t\tref: branch\n\t\t},\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tmessage: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: $tw.utils.base64Encode(text),\n\t\t\t\tbranch: branch,\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t// Perform a PUT request to save the file\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: uri + filename,\n\t\t\t\ttype: \"PUT\",\n\t\t\t\theaders: headers,\n\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\treturn callback(err);\n\t\t\t\t\t}\n\t\t\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\t\t\tcallback(null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nGitHubSaver.prototype.info = {\n\tname: \"github\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new GitHubSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/gitlab.js": {
            "title": "$:/core/modules/savers/gitlab.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/gitlab.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the GitLab REST API\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: true */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GitLabSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGitLabSaver.prototype.save = function(text,method,callback) {\n\t/* See https://docs.gitlab.com/ee/api/repository_files.html */\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/GitLab/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"gitlab\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/GitLab/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/GitLab/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/GitLab/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/GitLab/Branch\") || \"master\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/GitLab/ServerURL\") || \"https://gitlab.com/api/v4\",\n\t\theaders = {\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Private-Token\": password\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/projects/\" + encodeURIComponent(repo) + \"/repository/\";\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri + \"tree/?path=\" + encodeURIComponent(path.replace(/^\\/+|\\/$/g, '')) + \"&branch=\" + encodeURIComponent(branch.replace(/^\\/+|\\/$/g, '')),\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar requestType = \"POST\";\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\trequestType = \"PUT\";\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tcommit_message: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: text,\n\t\t\t\tbranch: branch,\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t// Perform a request to save the file\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: uri + \"files/\" + encodeURIComponent(path.replace(/^\\/+/, '') + filename),\n\t\t\t\ttype: requestType,\n\t\t\t\theaders: headers,\n\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\treturn callback(err);\n\t\t\t\t\t}\n\t\t\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\t\t\tcallback(null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nGitLabSaver.prototype.info = {\n\tname: \"gitlab\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new GitLabSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/hyperdrive.js": {
            "title": "$:/core/modules/savers/hyperdrive.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/hyperdrive.js\ntype: application/javascript\nmodule-type: saver\n\nSaves files using the Hyperdrive Protocol (https://hypercore-protocol.org/#hyperdrive) Beaker browser beta-1.0 and later (https://beakerbrowser.com)\nCompatible with beaker >= V1.0.0\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet up the saver\n*/\nvar HyperdriveSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nHyperdriveSaver.prototype.save = function(text,method,callback) {\n\tvar dat = beaker.hyperdrive.drive(\"\" + window.location),\n\t\tpathname = (\"\" + window.location.pathname).split(\"#\")[0];\n\tdat.stat(pathname).then(function(value) {\n\t\tif(value.isDirectory()) {\n\t\t\tpathname = pathname + \"/index.html\";\n\t\t}\n\t\tdat.writeFile(pathname,text,\"utf8\").then(function(value) {\n\t\t\tcallback(null);\n\t\t},function(reason) {\n\t\t\tcallback(\"Hyperdrive Saver Write Error: \" + reason);\n\t\t});\n\t},function(reason) {\n\t\tcallback(\"Hyperdrive Saver Stat Error: \" + reason);\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nHyperdriveSaver.prototype.info = {\n\tname: \"beaker-1.x\",\n\tpriority: 3000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.beaker && !!beaker.hyperdrive && location.protocol===\"hyper:\";\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new HyperdriveSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/manualdownload.js": {
            "title": "$:/core/modules/savers/manualdownload.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/manualdownload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via HTML5's download APIs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Title of the tiddler containing the download message\nvar downloadInstructionsTitle = \"$:/language/Modals/Download\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar ManualDownloadSaver = function(wiki) {\n};\n\nManualDownloadSaver.prototype.save = function(text,method,callback) {\n\t$tw.modal.display(downloadInstructionsTitle,{\n\t\tdownloadLink: \"data:text/html,\" + encodeURIComponent(text)\n\t});\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nManualDownloadSaver.prototype.info = {\n\tname: \"manualdownload\",\n\tpriority: 0,\n\tcapabilities: [\"save\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new ManualDownloadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/msdownload.js": {
            "title": "$:/core/modules/savers/msdownload.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/msdownload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via window.navigator.msSaveBlob()\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar MsDownloadSaver = function(wiki) {\n};\n\nMsDownloadSaver.prototype.save = function(text,method,callback) {\n\t// Get the current filename\n\tvar filename = \"tiddlywiki.html\",\n\t\tp = document.location.pathname.lastIndexOf(\"/\");\n\tif(p !== -1) {\n\t\tfilename = document.location.pathname.substr(p+1);\n\t}\n\t// Set up the link\n\tvar blob = new Blob([text], {type: \"text/html\"});\n\twindow.navigator.msSaveBlob(blob,filename);\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nMsDownloadSaver.prototype.info = {\n\tname: \"msdownload\",\n\tpriority: 110,\n\tcapabilities: [\"save\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.navigator.msSaveBlob;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new MsDownloadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/put.js": {
            "title": "$:/core/modules/savers/put.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/put.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by performing a PUT request to the server\n\nWorks with any server which accepts a PUT request\nto the current URL, such as a WebDAV server.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRetrieve ETag if available\n*/\nvar retrieveETag = function(self) {\n\tvar headers = {\n\t\tAccept: \"*/*;charset=UTF-8\"\n\t};\n\t$tw.utils.httpRequest({\n\t\turl: self.uri(),\n\t\ttype: \"HEAD\",\n\t\theaders: headers,\n\t\tcallback: function(err,data,xhr) {\n\t\t\tif(err) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar etag = xhr.getResponseHeader(\"ETag\");\n\t\t\tif(!etag) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tself.etag = etag.replace(/^W\\//,\"\");\n\t\t}\n\t});\n};\n\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar PutSaver = function(wiki) {\n\tthis.wiki = wiki;\n\tvar self = this;\n\tvar uri = this.uri();\n\t// Async server probe. Until probe finishes, save will fail fast\n\t// See also https://github.com/Jermolene/TiddlyWiki5/issues/2276\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"OPTIONS\",\n\t\tcallback: function(err,data,xhr) {\n\t\t\t// Check DAV header http://www.webdav.org/specs/rfc2518.html#rfc.section.9.1\n\t\t\tif(!err) {\n\t\t\t\tself.serverAcceptsPuts = xhr.status === 200 && !!xhr.getResponseHeader(\"dav\");\n\t\t\t}\n\t\t}\n\t});\n\tretrieveETag(this);\n};\n\nPutSaver.prototype.uri = function() {\n\treturn document.location.toString().split(\"#\")[0];\n};\n\n// TODO: in case of edit conflict\n// Prompt: Do you want to save over this? Y/N\n// Merging would be ideal, and may be possible using future generic merge flow\nPutSaver.prototype.save = function(text,method,callback) {\n\tif(!this.serverAcceptsPuts) {\n\t\treturn false;\n\t}\n\tvar self = this;\n\tvar headers = {\n\t\t\"Content-Type\": \"text/html;charset=UTF-8\"\n\t};\n\tif(this.etag) {\n\t\theaders[\"If-Match\"] = this.etag;\n\t}\n\t$tw.utils.httpRequest({\n\t\turl: this.uri(),\n\t\ttype: \"PUT\",\n\t\theaders: headers,\n\t\tdata: text,\n\t\tcallback: function(err,data,xhr) {\n\t\t\tif(err) {\n\t\t\t\t// response is textual: \"XMLHttpRequest error code: 412\"\n\t\t\t\tvar status = Number(err.substring(err.indexOf(':') + 2, err.length))\n\t\t\t\tif(status === 412) { // edit conflict\n\t\t\t\t\tvar message = $tw.language.getString(\"Error/EditConflict\");\n\t\t\t\t\tcallback(message);\n\t\t\t\t} else {\n\t\t\t\t\tcallback(err); // fail\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tself.etag = xhr.getResponseHeader(\"ETag\");\n\t\t\t\tif(self.etag == null) {\n\t\t\t\t\tretrieveETag(self);\n\t\t\t\t}\n\t\t\t\tcallback(null); // success\n\t\t\t}\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nPutSaver.prototype.info = {\n\tname: \"put\",\n\tpriority: 2000,\n\tcapabilities: [\"save\",\"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn /^https?:/.test(location.protocol);\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new PutSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/tiddlyfox.js": {
            "title": "$:/core/modules/savers/tiddlyfox.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/tiddlyfox.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the TiddlyFox file extension\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar TiddlyFoxSaver = function(wiki) {\n};\n\nTiddlyFoxSaver.prototype.save = function(text,method,callback) {\n\tvar messageBox = document.getElementById(\"tiddlyfox-message-box\");\n\tif(messageBox) {\n\t\t// Get the pathname of this document\n\t\tvar pathname = document.location.toString().split(\"#\")[0];\n\t\t// Replace file://localhost/ with file:///\n\t\tif(pathname.indexOf(\"file://localhost/\") === 0) {\n\t\t\tpathname = \"file://\" + pathname.substr(16);\n\t\t}\n\t\t// Windows path file:///x:/blah/blah --> x:\\blah\\blah\n\t\tif(/^file\\:\\/\\/\\/[A-Z]\\:\\//i.test(pathname)) {\n\t\t\t// Remove the leading slash and convert slashes to backslashes\n\t\t\tpathname = pathname.substr(8).replace(/\\//g,\"\\\\\");\n\t\t// Firefox Windows network path file://///server/share/blah/blah --> //server/share/blah/blah\n\t\t} else if(pathname.indexOf(\"file://///\") === 0) {\n\t\t\tpathname = \"\\\\\\\\\" + unescape(pathname.substr(10)).replace(/\\//g,\"\\\\\");\n\t\t// Mac/Unix local path file:///path/path --> /path/path\n\t\t} else if(pathname.indexOf(\"file:///\") === 0) {\n\t\t\tpathname = unescape(pathname.substr(7));\n\t\t// Mac/Unix local path file:/path/path --> /path/path\n\t\t} else if(pathname.indexOf(\"file:/\") === 0) {\n\t\t\tpathname = unescape(pathname.substr(5));\n\t\t// Otherwise Windows networth path file://server/share/path/path --> \\\\server\\share\\path\\path\n\t\t} else {\n\t\t\tpathname = \"\\\\\\\\\" + unescape(pathname.substr(7)).replace(new RegExp(\"/\",\"g\"),\"\\\\\");\n\t\t}\n\t\t// Create the message element and put it in the message box\n\t\tvar message = document.createElement(\"div\");\n\t\tmessage.setAttribute(\"data-tiddlyfox-path\",decodeURIComponent(pathname));\n\t\tmessage.setAttribute(\"data-tiddlyfox-content\",text);\n\t\tmessageBox.appendChild(message);\n\t\t// Add an event handler for when the file has been saved\n\t\tmessage.addEventListener(\"tiddlyfox-have-saved-file\",function(event) {\n\t\t\tcallback(null);\n\t\t}, false);\n\t\t// Create and dispatch the custom event to the extension\n\t\tvar event = document.createEvent(\"Events\");\n\t\tevent.initEvent(\"tiddlyfox-save-file\",true,false);\n\t\tmessage.dispatchEvent(event);\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nInformation about this saver\n*/\nTiddlyFoxSaver.prototype.info = {\n\tname: \"tiddlyfox\",\n\tpriority: 1500,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TiddlyFoxSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/tiddlyie.js": {
            "title": "$:/core/modules/savers/tiddlyie.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/tiddlyie.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via Internet Explorer BHO extenion (TiddlyIE)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar TiddlyIESaver = function(wiki) {\n};\n\nTiddlyIESaver.prototype.save = function(text,method,callback) {\n\t// Check existence of TiddlyIE BHO extension (note: only works after document is complete)\n\tif(typeof(window.TiddlyIE) != \"undefined\") {\n\t\t// Get the pathname of this document\n\t\tvar pathname = unescape(document.location.pathname);\n\t\t// Test for a Windows path of the form /x:/blah...\n\t\tif(/^\\/[A-Z]\\:\\/[^\\/]+/i.test(pathname)) {\t// ie: ^/[a-z]:/[^/]+ (is this better?: ^/[a-z]:/[^/]+(/[^/]+)*\\.[^/]+ )\n\t\t\t// Remove the leading slash\n\t\t\tpathname = pathname.substr(1);\n\t\t\t// Convert slashes to backslashes\n\t\t\tpathname = pathname.replace(/\\//g,\"\\\\\");\n\t\t} else if(document.hostname !== \"\" && /^\\/[^\\/]+\\/[^\\/]+/i.test(pathname)) {\t// test for \\\\server\\share\\blah... - ^/[^/]+/[^/]+\n\t\t\t// Convert slashes to backslashes\n\t\t\tpathname = pathname.replace(/\\//g,\"\\\\\");\n\t\t\t// reconstruct UNC path\n\t\t\tpathname = \"\\\\\\\\\" + document.location.hostname + pathname;\n\t\t} else return false;\n\t\t// Prompt the user to save the file\n\t\twindow.TiddlyIE.save(pathname, text);\n\t\t// Callback that we succeeded\n\t\tcallback(null);\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nInformation about this saver\n*/\nTiddlyIESaver.prototype.info = {\n\tname: \"tiddlyiesaver\",\n\tpriority: 1500,\n\tcapabilities: [\"save\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn (window.location.protocol === \"file:\");\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TiddlyIESaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/twedit.js": {
            "title": "$:/core/modules/savers/twedit.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/twedit.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the TWEdit iOS app\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar TWEditSaver = function(wiki) {\n};\n\nTWEditSaver.prototype.save = function(text,method,callback) {\n\t// Bail if we're not running under TWEdit\n\tif(typeof DeviceInfo !== \"object\") {\n\t\treturn false;\n\t}\n\t// Get the pathname of this document\n\tvar pathname = decodeURIComponent(document.location.pathname);\n\t// Strip any query or location part\n\tvar p = pathname.indexOf(\"?\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\tp = pathname.indexOf(\"#\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\t// Remove the leading \"/Documents\" from path\n\tvar prefix = \"/Documents\";\n\tif(pathname.indexOf(prefix) === 0) {\n\t\tpathname = pathname.substr(prefix.length);\n\t}\n\t// Error handler\n\tvar errorHandler = function(event) {\n\t\t// Error\n\t\tcallback($tw.language.getString(\"Error/SavingToTWEdit\") + \": \" + event.target.error.code);\n\t};\n\t// Get the file system\n\twindow.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem) {\n\t\t// Now we've got the filesystem, get the fileEntry\n\t\tfileSystem.root.getFile(pathname, {create: true}, function(fileEntry) {\n\t\t\t// Now we've got the fileEntry, create the writer\n\t\t\tfileEntry.createWriter(function(writer) {\n\t\t\t\twriter.onerror = errorHandler;\n\t\t\t\twriter.onwrite = function() {\n\t\t\t\t\tcallback(null);\n\t\t\t\t};\n\t\t\t\twriter.position = 0;\n\t\t\t\twriter.write(text);\n\t\t\t},errorHandler);\n\t\t}, errorHandler);\n\t}, errorHandler);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nTWEditSaver.prototype.info = {\n\tname: \"twedit\",\n\tpriority: 1600,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TWEditSaver(wiki);\n};\n\n/////////////////////////// Hack\n// HACK: This ensures that TWEdit recognises us as a TiddlyWiki document\nif($tw.browser) {\n\twindow.version = {title: \"TiddlyWiki\"};\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/upload.js": {
            "title": "$:/core/modules/savers/upload.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/upload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via upload to a server.\n\nDesigned to be compatible with BidiX's UploadPlugin at http://tiddlywiki.bidix.info/#UploadPlugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar UploadSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nUploadSaver.prototype.save = function(text,method,callback) {\n\t// Get the various parameters we need\n\tvar backupDir = this.wiki.getTextReference(\"$:/UploadBackupDir\") || \".\",\n\t\tusername = this.wiki.getTextReference(\"$:/UploadName\"),\n\t\tpassword = $tw.utils.getPassword(\"upload\"),\n\t\tuploadDir = this.wiki.getTextReference(\"$:/UploadDir\") || \".\",\n\t\tuploadFilename = this.wiki.getTextReference(\"$:/UploadFilename\") || \"index.html\",\n\t\turl = this.wiki.getTextReference(\"$:/UploadURL\");\n\t// Bail out if we don't have the bits we need\n\tif(!username || username.toString().trim() === \"\" || !password || password.toString().trim() === \"\") {\n\t\treturn false;\n\t}\n\t// Construct the url if not provided\n\tif(!url) {\n\t\turl = \"http://\" + username + \".tiddlyspot.com/store.cgi\";\n\t}\n\t// Assemble the header\n\tvar boundary = \"---------------------------\" + \"AaB03x\";\t\n\tvar uploadFormName = \"UploadPlugin\";\n\tvar head = [];\n\thead.push(\"--\" + boundary + \"\\r\\nContent-disposition: form-data; name=\\\"UploadPlugin\\\"\\r\\n\");\n\thead.push(\"backupDir=\" + backupDir + \";user=\" + username + \";password=\" + password + \";uploaddir=\" + uploadDir + \";;\"); \n\thead.push(\"\\r\\n\" + \"--\" + boundary);\n\thead.push(\"Content-disposition: form-data; name=\\\"userfile\\\"; filename=\\\"\" + uploadFilename + \"\\\"\");\n\thead.push(\"Content-Type: text/html;charset=UTF-8\");\n\thead.push(\"Content-Length: \" + text.length + \"\\r\\n\");\n\thead.push(\"\");\n\t// Assemble the tail and the data itself\n\tvar tail = \"\\r\\n--\" + boundary + \"--\\r\\n\",\n\t\tdata = head.join(\"\\r\\n\") + text + tail;\n\t// Do the HTTP post\n\tvar http = new XMLHttpRequest();\n\thttp.open(\"POST\",url,true,username,password);\n\thttp.setRequestHeader(\"Content-Type\",\"multipart/form-data; charset=UTF-8; boundary=\" + boundary);\n\thttp.onreadystatechange = function() {\n\t\tif(http.readyState == 4 && http.status == 200) {\n\t\t\tif(http.responseText.substr(0,4) === \"0 - \") {\n\t\t\t\tcallback(null);\n\t\t\t} else {\n\t\t\t\tcallback(http.responseText);\n\t\t\t}\n\t\t}\n\t};\n\ttry {\n\t\thttp.send(data);\n\t} catch(ex) {\n\t\treturn callback($tw.language.getString(\"Error/Caption\") + \":\" + ex);\n\t}\n\t$tw.notifier.display(\"$:/language/Notifications/Save/Starting\");\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nUploadSaver.prototype.info = {\n\tname: \"upload\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new UploadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/server/authenticators/basic.js": {
            "title": "$:/core/modules/server/authenticators/basic.js",
            "text": "/*\\\ntitle: $:/core/modules/server/authenticators/basic.js\ntype: application/javascript\nmodule-type: authenticator\n\nAuthenticator for WWW basic authentication\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nif($tw.node) {\n\tvar util = require(\"util\"),\n\t\tfs = require(\"fs\"),\n\t\turl = require(\"url\"),\n\t\tpath = require(\"path\");\n}\n\nfunction BasicAuthenticator(server) {\n\tthis.server = server;\n\tthis.credentialsData = [];\n}\n\n/*\nReturns true if the authenticator is active, false if it is inactive, or a string if there is an error\n*/\nBasicAuthenticator.prototype.init = function() {\n\t// Read the credentials data\n\tthis.credentialsFilepath = this.server.get(\"credentials\");\n\tif(this.credentialsFilepath) {\n\t\tvar resolveCredentialsFilepath = path.resolve(this.server.boot.wikiPath,this.credentialsFilepath);\n\t\tif(fs.existsSync(resolveCredentialsFilepath) && !fs.statSync(resolveCredentialsFilepath).isDirectory()) {\n\t\t\tvar credentialsText = fs.readFileSync(resolveCredentialsFilepath,\"utf8\"),\n\t\t\t\tcredentialsData = $tw.utils.parseCsvStringWithHeader(credentialsText);\n\t\t\tif(typeof credentialsData === \"string\") {\n\t\t\t\treturn \"Error: \" + credentialsData + \" reading credentials from '\" + resolveCredentialsFilepath + \"'\";\n\t\t\t} else {\n\t\t\t\tthis.credentialsData = credentialsData;\n\t\t\t}\n\t\t} else {\n\t\t\treturn \"Error: Unable to load user credentials from '\" + resolveCredentialsFilepath + \"'\";\n\t\t}\n\t}\n\t// Add the hardcoded username and password if specified\n\tif(this.server.get(\"username\") && this.server.get(\"password\")) {\n\t\tthis.credentialsData = this.credentialsData || [];\n\t\tthis.credentialsData.push({\n\t\t\tusername: this.server.get(\"username\"),\n\t\t\tpassword: this.server.get(\"password\")\n\t\t});\n\t}\n\treturn this.credentialsData.length > 0;\n};\n\n/*\nReturns true if the request is authenticated and assigns the \"authenticatedUsername\" state variable.\nReturns false if the request couldn't be authenticated having sent an appropriate response to the browser\n*/\nBasicAuthenticator.prototype.authenticateRequest = function(request,response,state) {\n\t// Extract the incoming username and password from the request\n\tvar header = request.headers.authorization || \"\";\n\tif(!header && state.allowAnon) {\n\t\t// If there's no header and anonymous access is allowed then we don't set authenticatedUsername\n\t\treturn true;\n\t}\n\tvar token = header.split(/\\s+/).pop() || \"\",\n\t\tauth = $tw.utils.base64Decode(token),\n\t\tparts = auth.split(/:/),\n\t\tincomingUsername = parts[0],\n\t\tincomingPassword = parts[1];\n\t// Check that at least one of the credentials matches\n\tvar matchingCredentials = this.credentialsData.find(function(credential) {\n\t\treturn credential.username === incomingUsername && credential.password === incomingPassword;\n\t});\n\tif(matchingCredentials) {\n\t\t// If so, add the authenticated username to the request state\n\t\tstate.authenticatedUsername = incomingUsername;\n\t\treturn true;\n\t} else {\n\t\t// If not, return an authentication challenge\n\t\tresponse.writeHead(401,\"Authentication required\",{\n\t\t\t\"WWW-Authenticate\": 'Basic realm=\"Please provide your username and password to login to ' + state.server.servername + '\"'\n\t\t});\n\t\tresponse.end();\n\t\treturn false;\n\t}\n};\n\nexports.AuthenticatorClass = BasicAuthenticator;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "authenticator"
        },
        "$:/core/modules/server/authenticators/header.js": {
            "title": "$:/core/modules/server/authenticators/header.js",
            "text": "/*\\\ntitle: $:/core/modules/server/authenticators/header.js\ntype: application/javascript\nmodule-type: authenticator\n\nAuthenticator for trusted header authentication\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction HeaderAuthenticator(server) {\n\tthis.server = server;\n\tthis.header = server.get(\"authenticated-user-header\") ? server.get(\"authenticated-user-header\").toLowerCase() : undefined;\n}\n\n/*\nReturns true if the authenticator is active, false if it is inactive, or a string if there is an error\n*/\nHeaderAuthenticator.prototype.init = function() {\n\treturn !!this.header;\n};\n\n/*\nReturns true if the request is authenticated and assigns the \"authenticatedUsername\" state variable.\nReturns false if the request couldn't be authenticated having sent an appropriate response to the browser\n*/\nHeaderAuthenticator.prototype.authenticateRequest = function(request,response,state) {\n\t// Otherwise, authenticate as the username in the specified header\n\tvar username = request.headers[this.header];\n\tif(!username && !state.allowAnon) {\n\t\tresponse.writeHead(401,\"Authorization header required to login to '\" + state.server.servername + \"'\");\n\t\tresponse.end();\n\t\treturn false;\n\t} else {\n\t\t// authenticatedUsername will be undefined for anonymous users\n\t\tstate.authenticatedUsername = username;\n\t\treturn true;\n\t}\n};\n\nexports.AuthenticatorClass = HeaderAuthenticator;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "authenticator"
        },
        "$:/core/modules/server/routes/delete-tiddler.js": {
            "title": "$:/core/modules/server/routes/delete-tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/delete-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nDELETE /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"DELETE\";\n\nexports.path = /^\\/bags\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]);\n\tstate.wiki.deleteTiddler(title);\n\tresponse.writeHead(204, \"OK\", {\n\t\t\"Content-Type\": \"text/plain\"\n\t});\n\tresponse.end();\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-favicon.js": {
            "title": "$:/core/modules/server/routes/get-favicon.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-favicon.js\ntype: application/javascript\nmodule-type: route\n\nGET /favicon.ico\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/favicon.ico$/;\n\nexports.handler = function(request,response,state) {\n\tresponse.writeHead(200, {\"Content-Type\": \"image/x-icon\"});\n\tvar buffer = state.wiki.getTiddlerText(\"$:/favicon.ico\",\"\");\n\tresponse.end(buffer,\"base64\");\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-file.js": {
            "title": "$:/core/modules/server/routes/get-file.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-file.js\ntype: application/javascript\nmodule-type: route\n\nGET /files/:filepath\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/files\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar path = require(\"path\"),\n\t\tfs = require(\"fs\"),\n\t\tutil = require(\"util\"),\n\t\tsuppliedFilename = decodeURIComponent(state.params[0]),\n\t\tfilename = path.resolve(state.boot.wikiPath,\"files\",suppliedFilename),\n\t\textension = path.extname(filename);\n\tfs.readFile(filename,function(err,content) {\n\t\tvar status,content,type = \"text/plain\";\n\t\tif(err) {\n\t\t\tconsole.log(\"Error accessing file \" + filename + \": \" + err.toString());\n\t\t\tstatus = 404;\n\t\t\tcontent = \"File '\" + suppliedFilename + \"' not found\";\n\t\t} else {\n\t\t\tstatus = 200;\n\t\t\tcontent = content;\n\t\t\ttype = ($tw.config.fileExtensionInfo[extension] ? $tw.config.fileExtensionInfo[extension].type : \"application/octet-stream\");\n\t\t}\n\t\tresponse.writeHead(status,{\n\t\t\t\"Content-Type\": type\n\t\t});\n\t\tresponse.end(content);\n\t});\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-index.js": {
            "title": "$:/core/modules/server/routes/get-index.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-index.js\ntype: application/javascript\nmodule-type: route\n\nGET /\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar zlib = require(\"zlib\");\n\nexports.method = \"GET\";\n\nexports.path = /^\\/$/;\n\nexports.handler = function(request,response,state) {\n\tvar acceptEncoding = request.headers[\"accept-encoding\"];\n\tif(!acceptEncoding) {\n\t\tacceptEncoding = \"\";\n\t}\n\tvar text = state.wiki.renderTiddler(state.server.get(\"root-render-type\"),state.server.get(\"root-tiddler\")),\n\t\tresponseHeaders = {\n\t\t\"Content-Type\": state.server.get(\"root-serve-type\")\n\t};\n\t/*\n\tIf the gzip=yes flag for `listen` is set, check if the user agent permits\n\tcompression. If so, compress our response. Note that we use the synchronous\n\tfunctions from zlib to stay in the imperative style. The current `Server`\n\tdoesn't depend on this, and we may just as well use the async versions.\n\t*/\n\tif(state.server.enableGzip) {\n\t\tif (/\\bdeflate\\b/.test(acceptEncoding)) {\n\t\t\tresponseHeaders[\"Content-Encoding\"] = \"deflate\";\n\t\t\ttext = zlib.deflateSync(text);\n\t\t} else if (/\\bgzip\\b/.test(acceptEncoding)) {\n\t\t\tresponseHeaders[\"Content-Encoding\"] = \"gzip\";\n\t\t\ttext = zlib.gzipSync(text);\n\t\t}\n\t}\n\tresponse.writeHead(200,responseHeaders);\n\tresponse.end(text);\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-login-basic.js": {
            "title": "$:/core/modules/server/routes/get-login-basic.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-login-basic.js\ntype: application/javascript\nmodule-type: route\n\nGET /login-basic -- force a Basic Authentication challenge\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/login-basic$/;\n\nexports.handler = function(request,response,state) {\n\tif(!state.authenticatedUsername) {\n\t\t// Challenge if there's no username\n\t\tresponse.writeHead(401,{\n\t\t\t\"WWW-Authenticate\": 'Basic realm=\"Please provide your username and password to login to ' + state.server.servername + '\"'\n\t\t});\n\t\tresponse.end();\t\t\n\t} else {\n\t\t// Redirect to the root wiki if login worked\n\t\tresponse.writeHead(302,{\n\t\t\tLocation: \"/\"\n\t\t});\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-status.js": {
            "title": "$:/core/modules/server/routes/get-status.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-status.js\ntype: application/javascript\nmodule-type: route\n\nGET /status\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/status$/;\n\nexports.handler = function(request,response,state) {\n\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\tvar text = JSON.stringify({\n\t\tusername: state.authenticatedUsername || state.server.get(\"anon-username\") || \"\",\n\t\tanonymous: !state.authenticatedUsername,\n\t\tread_only: !state.server.isAuthorized(\"writers\",state.authenticatedUsername),\n\t\tspace: {\n\t\t\trecipe: \"default\"\n\t\t},\n\t\ttiddlywiki_version: $tw.version\n\t});\n\tresponse.end(text,\"utf8\");\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-tiddler-html.js": {
            "title": "$:/core/modules/server/routes/get-tiddler-html.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddler-html.js\ntype: application/javascript\nmodule-type: route\n\nGET /:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/([^\\/]+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\t\ttiddler = state.wiki.getTiddler(title);\n\tif(tiddler) {\n\t\tvar renderType = tiddler.getFieldString(\"_render_type\"),\n\t\t\trenderTemplate = tiddler.getFieldString(\"_render_template\");\n\t\t// Tiddler fields '_render_type' and '_render_template' overwrite\n\t\t// system wide settings for render type and template\n\t\tif(state.wiki.isSystemTiddler(title)) {\n\t\t\trenderType = renderType || state.server.get(\"system-tiddler-render-type\");\n\t\t\trenderTemplate = renderTemplate || state.server.get(\"system-tiddler-render-template\");\n\t\t} else {\n\t\t\trenderType = renderType || state.server.get(\"tiddler-render-type\");\n\t\t\trenderTemplate = renderTemplate || state.server.get(\"tiddler-render-template\");\n\t\t}\n\t\tvar text = state.wiki.renderTiddler(renderType,renderTemplate,{parseAsInline: true, variables: {currentTiddler: title}});\n\t\t// Naughty not to set a content-type, but it's the easiest way to ensure the browser will see HTML pages as HTML, and accept plain text tiddlers as CSS or JS\n\t\tresponse.writeHead(200);\n\t\tresponse.end(text,\"utf8\");\n\t} else {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-tiddler.js": {
            "title": "$:/core/modules/server/routes/get-tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nGET /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\t\ttiddler = state.wiki.getTiddler(title),\n\t\ttiddlerFields = {},\n\t\tknownFields = [\n\t\t\t\"bag\", \"created\", \"creator\", \"modified\", \"modifier\", \"permissions\", \"recipe\", \"revision\", \"tags\", \"text\", \"title\", \"type\", \"uri\"\n\t\t];\n\tif(tiddler) {\n\t\t$tw.utils.each(tiddler.fields,function(field,name) {\n\t\t\tvar value = tiddler.getFieldString(name);\n\t\t\tif(knownFields.indexOf(name) !== -1) {\n\t\t\t\ttiddlerFields[name] = value;\n\t\t\t} else {\n\t\t\t\ttiddlerFields.fields = tiddlerFields.fields || {};\n\t\t\t\ttiddlerFields.fields[name] = value;\n\t\t\t}\n\t\t});\n\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\ttiddlerFields.bag = \"default\";\n\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\t\tresponse.end(JSON.stringify(tiddlerFields),\"utf8\");\n\t} else {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-tiddlers-json.js": {
            "title": "$:/core/modules/server/routes/get-tiddlers-json.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddlers-json.js\ntype: application/javascript\nmodule-type: route\n\nGET /recipes/default/tiddlers.json?filter=<filter>\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DEFAULT_FILTER = \"[all[tiddlers]!is[system]sort[title]]\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers.json$/;\n\nexports.handler = function(request,response,state) {\n\tvar filter = state.queryParameters.filter || DEFAULT_FILTER;\n\tif(state.wiki.getTiddlerText(\"$:/config/Server/AllowAllExternalFilters\") !== \"yes\") {\n\t\tif(state.wiki.getTiddlerText(\"$:/config/Server/ExternalFilters/\" + filter) !== \"yes\") {\n\t\t\tconsole.log(\"Blocked attempt to GET /recipes/default/tiddlers.json with filter: \" + filter);\n\t\t\tresponse.writeHead(403);\n\t\t\tresponse.end();\n\t\t\treturn;\n\t\t}\n\t}\n\tif(state.wiki.getTiddlerText(\"$:/config/SyncSystemTiddlersFromServer\") === \"no\") {\n\t\tfilter += \"+[!is[system]]\";\n\t}\n\tvar excludeFields = (state.queryParameters.exclude || \"text\").split(\",\"),\n\t\ttitles = state.wiki.filterTiddlers(filter);\n\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\tvar tiddlers = [];\n\t$tw.utils.each(titles,function(title) {\n\t\tvar tiddler = state.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tvar tiddlerFields = tiddler.getFieldStrings({exclude: excludeFields});\n\t\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\t\ttiddlers.push(tiddlerFields);\n\t\t}\n\t});\n\tvar text = JSON.stringify(tiddlers);\n\tresponse.end(text,\"utf8\");\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/put-tiddler.js": {
            "title": "$:/core/modules/server/routes/put-tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/put-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nPUT /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"PUT\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\tfields = JSON.parse(state.data);\n\t// Pull up any subfields in the `fields` object\n\tif(fields.fields) {\n\t\t$tw.utils.each(fields.fields,function(field,name) {\n\t\t\tfields[name] = field;\n\t\t});\n\t\tdelete fields.fields;\n\t}\n\t// Remove any revision field\n\tif(fields.revision) {\n\t\tdelete fields.revision;\n\t}\n\tstate.wiki.addTiddler(new $tw.Tiddler(state.wiki.getCreationFields(),fields,{title: title},state.wiki.getModificationFields()));\n\tvar changeCount = state.wiki.getChangeCount(title).toString();\n\tresponse.writeHead(204, \"OK\",{\n\t\tEtag: \"\\\"default/\" + encodeURIComponent(title) + \"/\" + changeCount + \":\\\"\",\n\t\t\"Content-Type\": \"text/plain\"\n\t});\n\tresponse.end();\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/server.js": {
            "title": "$:/core/modules/server/server.js",
            "text": "/*\\\ntitle: $:/core/modules/server/server.js\ntype: application/javascript\nmodule-type: library\n\nServe tiddlers over http\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nif($tw.node) {\n\tvar util = require(\"util\"),\n\t\tfs = require(\"fs\"),\n\t\turl = require(\"url\"),\n\t\tpath = require(\"path\"),\n\t\tquerystring = require(\"querystring\");\n}\n\n/*\nA simple HTTP server with regexp-based routes\noptions: variables - optional hashmap of variables to set (a misnomer - they are really constant parameters)\n\t\t routes - optional array of routes to use\n\t\t wiki - reference to wiki object\n*/\nfunction Server(options) {\n\tvar self = this;\n\tthis.routes = options.routes || [];\n\tthis.authenticators = options.authenticators || [];\n\tthis.wiki = options.wiki;\n\tthis.boot = options.boot || $tw.boot;\n\tthis.servername = $tw.utils.transliterateToSafeASCII(this.wiki.getTiddlerText(\"$:/SiteTitle\") || \"TiddlyWiki5\");\n\t// Initialise the variables\n\tthis.variables = $tw.utils.extend({},this.defaultVariables);\n\tif(options.variables) {\n\t\tfor(var variable in options.variables) {\n\t\t\tif(options.variables[variable]) {\n\t\t\t\tthis.variables[variable] = options.variables[variable];\n\t\t\t}\n\t\t}\t\t\n\t}\n\t$tw.utils.extend({},this.defaultVariables,options.variables);\n\t// Initialise CSRF\n\tthis.csrfDisable = this.get(\"csrf-disable\") === \"yes\";\n\t// Initialize Gzip compression\n\tthis.enableGzip = this.get(\"gzip\") === \"yes\";\n\t// Initialise authorization\n\tvar authorizedUserName = (this.get(\"username\") && this.get(\"password\")) ? this.get(\"username\") : \"(anon)\";\n\tthis.authorizationPrincipals = {\n\t\treaders: (this.get(\"readers\") || authorizedUserName).split(\",\").map($tw.utils.trim),\n\t\twriters: (this.get(\"writers\") || authorizedUserName).split(\",\").map($tw.utils.trim)\n\t}\n\t// Load and initialise authenticators\n\t$tw.modules.forEachModuleOfType(\"authenticator\", function(title,authenticatorDefinition) {\n\t\t// console.log(\"Loading server route \" + title);\n\t\tself.addAuthenticator(authenticatorDefinition.AuthenticatorClass);\n\t});\n\t// Load route handlers\n\t$tw.modules.forEachModuleOfType(\"route\", function(title,routeDefinition) {\n\t\t// console.log(\"Loading server route \" + title);\n\t\tself.addRoute(routeDefinition);\n\t});\n\t// Initialise the http vs https\n\tthis.listenOptions = null;\n\tthis.protocol = \"http\";\n\tvar tlsKeyFilepath = this.get(\"tls-key\"),\n\t\ttlsCertFilepath = this.get(\"tls-cert\");\n\tif(tlsCertFilepath && tlsKeyFilepath) {\n\t\tthis.listenOptions = {\n\t\t\tkey: fs.readFileSync(path.resolve(this.boot.wikiPath,tlsKeyFilepath),\"utf8\"),\n\t\t\tcert: fs.readFileSync(path.resolve(this.boot.wikiPath,tlsCertFilepath),\"utf8\")\n\t\t};\n\t\tthis.protocol = \"https\";\n\t}\n\tthis.transport = require(this.protocol);\n}\n\nServer.prototype.defaultVariables = {\n\tport: \"8080\",\n\thost: \"127.0.0.1\",\n\t\"root-tiddler\": \"$:/core/save/all\",\n\t\"root-render-type\": \"text/plain\",\n\t\"root-serve-type\": \"text/html\",\n\t\"tiddler-render-type\": \"text/html\",\n\t\"tiddler-render-template\": \"$:/core/templates/server/static.tiddler.html\",\n\t\"system-tiddler-render-type\": \"text/plain\",\n\t\"system-tiddler-render-template\": \"$:/core/templates/wikified-tiddler\",\n\t\"debug-level\": \"none\",\n\t\"gzip\": \"no\"\n};\n\nServer.prototype.get = function(name) {\n\treturn this.variables[name];\n};\n\nServer.prototype.addRoute = function(route) {\n\tthis.routes.push(route);\n};\n\nServer.prototype.addAuthenticator = function(AuthenticatorClass) {\n\t// Instantiate and initialise the authenticator\n\tvar authenticator = new AuthenticatorClass(this),\n\t\tresult = authenticator.init();\n\tif(typeof result === \"string\") {\n\t\t$tw.utils.error(\"Error: \" + result);\n\t} else if(result) {\n\t\t// Only use the authenticator if it initialised successfully\n\t\tthis.authenticators.push(authenticator);\n\t}\n};\n\nServer.prototype.findMatchingRoute = function(request,state) {\n\tfor(var t=0; t<this.routes.length; t++) {\n\t\tvar potentialRoute = this.routes[t],\n\t\t\tpathRegExp = potentialRoute.path,\n\t\t\tpathname = state.urlInfo.pathname,\n\t\t\tmatch;\n\t\tif(state.pathPrefix) {\n\t\t\tif(pathname.substr(0,state.pathPrefix.length) === state.pathPrefix) {\n\t\t\t\tpathname = pathname.substr(state.pathPrefix.length) || \"/\";\n\t\t\t\tmatch = potentialRoute.path.exec(pathname);\n\t\t\t} else {\n\t\t\t\tmatch = false;\n\t\t\t}\n\t\t} else {\n\t\t\tmatch = potentialRoute.path.exec(pathname);\n\t\t}\n\t\tif(match && request.method === potentialRoute.method) {\n\t\t\tstate.params = [];\n\t\t\tfor(var p=1; p<match.length; p++) {\n\t\t\t\tstate.params.push(match[p]);\n\t\t\t}\n\t\t\treturn potentialRoute;\n\t\t}\n\t}\n\treturn null;\n};\n\nServer.prototype.methodMappings = {\n\t\"GET\": \"readers\",\n\t\"OPTIONS\": \"readers\",\n\t\"HEAD\": \"readers\",\n\t\"PUT\": \"writers\",\n\t\"POST\": \"writers\",\n\t\"DELETE\": \"writers\"\n};\n\n/*\nCheck whether a given user is authorized for the specified authorizationType (\"readers\" or \"writers\"). Pass null or undefined as the username to check for anonymous access\n*/\nServer.prototype.isAuthorized = function(authorizationType,username) {\n\tvar principals = this.authorizationPrincipals[authorizationType] || [];\n\treturn principals.indexOf(\"(anon)\") !== -1 || (username && (principals.indexOf(\"(authenticated)\") !== -1 || principals.indexOf(username) !== -1));\n}\n\nServer.prototype.requestHandler = function(request,response,options) {\n\toptions = options || {};\n\t// Compose the state object\n\tvar self = this;\n\tvar state = {};\n\tstate.wiki = options.wiki || self.wiki;\n\tstate.boot = options.boot || self.boot;\n\tstate.server = self;\n\tstate.urlInfo = url.parse(request.url);\n\tstate.queryParameters = querystring.parse(state.urlInfo.query);\n\tstate.pathPrefix = options.pathPrefix || this.get(\"path-prefix\") || \"\";\n\t// Get the principals authorized to access this resource\n\tvar authorizationType = this.methodMappings[request.method] || \"readers\";\n\t// Check for the CSRF header if this is a write\n\tif(!this.csrfDisable && authorizationType === \"writers\" && request.headers[\"x-requested-with\"] !== \"TiddlyWiki\") {\n\t\tresponse.writeHead(403,\"'X-Requested-With' header required to login to '\" + this.servername + \"'\");\n\t\tresponse.end();\n\t\treturn;\t\t\n\t}\n\t// Check whether anonymous access is granted\n\tstate.allowAnon = this.isAuthorized(authorizationType,null);\n\t// Authenticate with the first active authenticator\n\tif(this.authenticators.length > 0) {\n\t\tif(!this.authenticators[0].authenticateRequest(request,response,state)) {\n\t\t\t// Bail if we failed (the authenticator will have sent the response)\n\t\t\treturn;\n\t\t}\t\t\n\t}\n\t// Authorize with the authenticated username\n\tif(!this.isAuthorized(authorizationType,state.authenticatedUsername)) {\n\t\tresponse.writeHead(401,\"'\" + state.authenticatedUsername + \"' is not authorized to access '\" + this.servername + \"'\");\n\t\tresponse.end();\n\t\treturn;\n\t}\n\t// Find the route that matches this path\n\tvar route = self.findMatchingRoute(request,state);\n\t// Optionally output debug info\n\tif(self.get(\"debug-level\") !== \"none\") {\n\t\tconsole.log(\"Request path:\",JSON.stringify(state.urlInfo));\n\t\tconsole.log(\"Request headers:\",JSON.stringify(request.headers));\n\t\tconsole.log(\"authenticatedUsername:\",state.authenticatedUsername);\n\t}\n\t// Return a 404 if we didn't find a route\n\tif(!route) {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t\treturn;\n\t}\n\t// Receive the request body if necessary and hand off to the route handler\n\tif(route.bodyFormat === \"stream\" || request.method === \"GET\" || request.method === \"HEAD\") {\n\t\t// Let the route handle the request stream itself\n\t\troute.handler(request,response,state);\n\t} else if(route.bodyFormat === \"string\" || !route.bodyFormat) {\n\t\t// Set the encoding for the incoming request\n\t\trequest.setEncoding(\"utf8\");\n\t\tvar data = \"\";\n\t\trequest.on(\"data\",function(chunk) {\n\t\t\tdata += chunk.toString();\n\t\t});\n\t\trequest.on(\"end\",function() {\n\t\t\tstate.data = data;\n\t\t\troute.handler(request,response,state);\n\t\t});\n\t} else if(route.bodyFormat === \"buffer\") {\n\t\tvar data = [];\n\t\trequest.on(\"data\",function(chunk) {\n\t\t\tdata.push(chunk);\n\t\t});\n\t\trequest.on(\"end\",function() {\n\t\t\tstate.data = Buffer.concat(data);\n\t\t\troute.handler(request,response,state);\n\t\t})\n\t} else {\n\t\tresponse.writeHead(400,\"Invalid bodyFormat \" + route.bodyFormat + \" in route \" + route.method + \" \" + route.path.source);\n\t\tresponse.end();\n\t}\n};\n\n/*\nListen for requests\nport: optional port number (falls back to value of \"port\" variable)\nhost: optional host address (falls back to value of \"host\" variable)\nprefix: optional prefix (falls back to value of \"path-prefix\" variable)\n*/\nServer.prototype.listen = function(port,host,prefix) {\n\tvar self = this;\n\t// Handle defaults for port and host\n\tport = port || this.get(\"port\");\n\thost = host || this.get(\"host\");\n\tprefix = prefix || this.get(\"path-prefix\") || \"\";\n\t// Check for the port being a string and look it up as an environment variable\n\tif(parseInt(port,10).toString() !== port) {\n\t\tport = process.env[port] || 8080;\n\t}\n\t// Warn if required plugins are missing\n\tif(!this.wiki.getTiddler(\"$:/plugins/tiddlywiki/tiddlyweb\") || !this.wiki.getTiddler(\"$:/plugins/tiddlywiki/filesystem\")) {\n\t\t$tw.utils.warning(\"Warning: Plugins required for client-server operation (\\\"tiddlywiki/filesystem\\\" and \\\"tiddlywiki/tiddlyweb\\\") are missing from tiddlywiki.info file\");\n\t}\n\t// Create the server\n\tvar server;\n\tif(this.listenOptions) {\n\t\tserver = this.transport.createServer(this.listenOptions,this.requestHandler.bind(this));\n\t} else {\n\t\tserver = this.transport.createServer(this.requestHandler.bind(this));\n\t}\n\t// Display the port number after we've started listening (the port number might have been specified as zero, in which case we will get an assigned port)\n\tserver.on(\"listening\",function() {\n\t\tvar address = server.address();\n\t\t$tw.utils.log(\"Serving on \" + self.protocol + \"://\" + address.address + \":\" + address.port + prefix,\"brown/orange\");\n\t\t$tw.utils.log(\"(press ctrl-C to exit)\",\"red\");\n\t});\n\t// Listen\n\treturn server.listen(port,host);\n};\n\nexports.Server = Server;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/browser-messaging.js": {
            "title": "$:/core/modules/browser-messaging.js",
            "text": "/*\\\ntitle: $:/core/modules/browser-messaging.js\ntype: application/javascript\nmodule-type: startup\n\nBrowser message handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"browser-messaging\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n/*\nLoad a specified url as an iframe and call the callback when it is loaded. If the url is already loaded then the existing iframe instance is used\n*/\nfunction loadIFrame(url,callback) {\n\t// Check if iframe already exists\n\tvar iframeInfo = $tw.browserMessaging.iframeInfoMap[url];\n\tif(iframeInfo) {\n\t\t// We've already got the iframe\n\t\tcallback(null,iframeInfo);\n\t} else {\n\t\t// Create the iframe and save it in the list\n\t\tvar iframe = document.createElement(\"iframe\");\n\t\tiframeInfo = {\n\t\t\turl: url,\n\t\t\tstatus: \"loading\",\n\t\t\tdomNode: iframe\n\t\t};\n\t\t$tw.browserMessaging.iframeInfoMap[url] = iframeInfo;\n\t\tsaveIFrameInfoTiddler(iframeInfo);\n\t\t// Add the iframe to the DOM and hide it\n\t\tiframe.style.display = \"none\";\n\t\tiframe.setAttribute(\"library\",\"true\");\n\t\tdocument.body.appendChild(iframe);\n\t\t// Set up onload\n\t\tiframe.onload = function() {\n\t\t\tiframeInfo.status = \"loaded\";\n\t\t\tsaveIFrameInfoTiddler(iframeInfo);\n\t\t\tcallback(null,iframeInfo);\n\t\t};\n\t\tiframe.onerror = function() {\n\t\t\tcallback(\"Cannot load iframe\");\n\t\t};\n\t\ttry {\n\t\t\tiframe.src = url;\n\t\t} catch(ex) {\n\t\t\tcallback(ex);\n\t\t}\n\t}\n}\n\n/*\nUnload library iframe for given url\n*/\nfunction unloadIFrame(url){\n\t$tw.utils.each(document.getElementsByTagName('iframe'), function(iframe) {\n\t\tif(iframe.getAttribute(\"library\") === \"true\" &&\n\t\t  iframe.getAttribute(\"src\") === url) {\n\t\t\tiframe.parentNode.removeChild(iframe);\n\t\t}\n\t});\n}\n\nfunction saveIFrameInfoTiddler(iframeInfo) {\n\t$tw.wiki.addTiddler(new $tw.Tiddler($tw.wiki.getCreationFields(),{\n\t\ttitle: \"$:/temp/ServerConnection/\" + iframeInfo.url,\n\t\ttext: iframeInfo.status,\n\t\ttags: [\"$:/tags/ServerConnection\"],\n\t\turl: iframeInfo.url\n\t},$tw.wiki.getModificationFields()));\n}\n\nexports.startup = function() {\n\t// Initialise the store of iframes we've created\n\t$tw.browserMessaging = {\n\t\tiframeInfoMap: {} // Hashmap by URL of {url:,status:\"loading/loaded\",domNode:}\n\t};\n\t// Listen for widget messages to control loading the plugin library\n\t$tw.rootWidget.addEventListener(\"tm-load-plugin-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url;\n\t\tif(url) {\n\t\t\tloadIFrame(url,function(err,iframeInfo) {\n\t\t\t\tif(err) {\n\t\t\t\t\talert($tw.language.getString(\"Error/LoadingPluginLibrary\") + \": \" + url);\n\t\t\t\t} else {\n\t\t\t\t\tiframeInfo.domNode.contentWindow.postMessage({\n\t\t\t\t\t\tverb: \"GET\",\n\t\t\t\t\t\turl: \"recipes/library/tiddlers.json\",\n\t\t\t\t\t\tcookies: {\n\t\t\t\t\t\t\ttype: \"save-info\",\n\t\t\t\t\t\t\tinfoTitlePrefix: paramObject.infoTitlePrefix || \"$:/temp/RemoteAssetInfo/\",\n\t\t\t\t\t\t\turl: url\n\t\t\t\t\t\t}\n\t\t\t\t\t},\"*\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Listen for widget messages to control unloading the plugin library\n\t$tw.rootWidget.addEventListener(\"tm-unload-plugin-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url;\n\t\t$tw.browserMessaging.iframeInfoMap[url] = undefined;\n\t\tif(url) {\n\t\t\tunloadIFrame(url);\n\t\t\t$tw.utils.each(\n\t\t\t\t$tw.wiki.filterTiddlers(\"[[$:/temp/ServerConnection/\" + url + \"]] [prefix[$:/temp/RemoteAssetInfo/\" + url + \"/]]\"),\n\t\t\t\tfunction(title) {\n\t\t\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-load-plugin-from-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url,\n\t\t\ttitle = paramObject.title;\n\t\tif(url && title) {\n\t\t\tloadIFrame(url,function(err,iframeInfo) {\n\t\t\t\tif(err) {\n\t\t\t\t\talert($tw.language.getString(\"Error/LoadingPluginLibrary\") + \": \" + url);\n\t\t\t\t} else {\n\t\t\t\t\tiframeInfo.domNode.contentWindow.postMessage({\n\t\t\t\t\t\tverb: \"GET\",\n\t\t\t\t\t\turl: \"recipes/library/tiddlers/\" + encodeURIComponent(title) + \".json\",\n\t\t\t\t\t\tcookies: {\n\t\t\t\t\t\t\ttype: \"save-tiddler\",\n\t\t\t\t\t\t\turl: url\n\t\t\t\t\t\t}\n\t\t\t\t\t},\"*\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Listen for window messages from other windows\n\twindow.addEventListener(\"message\",function listener(event){\n\t\t// console.log(\"browser-messaging: \",document.location.toString())\n\t\t// console.log(\"browser-messaging: Received message from\",event.origin);\n\t\t// console.log(\"browser-messaging: Message content\",event.data);\n\t\tswitch(event.data.verb) {\n\t\t\tcase \"GET-RESPONSE\":\n\t\t\t\tif(event.data.status.charAt(0) === \"2\") {\n\t\t\t\t\tif(event.data.cookies) {\n\t\t\t\t\t\tif(event.data.cookies.type === \"save-info\") {\n\t\t\t\t\t\t\tvar tiddlers = JSON.parse(event.data.body);\n\t\t\t\t\t\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\t\t\t\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler($tw.wiki.getCreationFields(),tiddler,{\n\t\t\t\t\t\t\t\t\ttitle: event.data.cookies.infoTitlePrefix + event.data.cookies.url + \"/\" + tiddler.title,\n\t\t\t\t\t\t\t\t\t\"original-title\": tiddler.title,\n\t\t\t\t\t\t\t\t\ttext: \"\",\n\t\t\t\t\t\t\t\t\ttype: \"text/vnd.tiddlywiki\",\n\t\t\t\t\t\t\t\t\t\"original-type\": tiddler.type,\n\t\t\t\t\t\t\t\t\t\"plugin-type\": undefined,\n\t\t\t\t\t\t\t\t\t\"original-plugin-type\": tiddler[\"plugin-type\"],\n\t\t\t\t\t\t\t\t\t\"module-type\": undefined,\n\t\t\t\t\t\t\t\t\t\"original-module-type\": tiddler[\"module-type\"],\n\t\t\t\t\t\t\t\t\ttags: [\"$:/tags/RemoteAssetInfo\"],\n\t\t\t\t\t\t\t\t\t\"original-tags\": $tw.utils.stringifyList(tiddler.tags || []),\n\t\t\t\t\t\t\t\t\t\"server-url\": event.data.cookies.url\n\t\t\t\t\t\t\t\t},$tw.wiki.getModificationFields()));\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t} else if(event.data.cookies.type === \"save-tiddler\") {\n\t\t\t\t\t\t\tvar tiddler = JSON.parse(event.data.body);\n\t\t\t\t\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler(tiddler));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t},false);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/commands.js": {
            "title": "$:/core/modules/startup/commands.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/commands.js\ntype: application/javascript\nmodule-type: startup\n\nCommand processing\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"commands\";\nexports.platforms = [\"node\"];\nexports.after = [\"story\"];\nexports.synchronous = false;\n\nexports.startup = function(callback) {\n\t// On the server, start a commander with the command line arguments\n\tvar commander = new $tw.Commander(\n\t\t$tw.boot.argv,\n\t\tfunction(err) {\n\t\t\tif(err) {\n\t\t\t\treturn $tw.utils.error(\"Error: \" + err);\n\t\t\t}\n\t\t\tcallback();\n\t\t},\n\t\t$tw.wiki,\n\t\t{output: process.stdout, error: process.stderr}\n\t);\n\tcommander.execute();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/CSSescape.js": {
            "title": "$:/core/modules/startup/CSSescape.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/CSSescape.js\ntype: application/javascript\nmodule-type: startup\n\nPolyfill for CSS.escape()\n\n\\*/\n(function(root,factory){\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"css-escape\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n/*! https://mths.be/cssescape v1.5.1 by @mathias | MIT license */\n// https://github.com/umdjs/umd/blob/master/returnExports.js\nexports.startup = factory(root);\n}(typeof global != 'undefined' ? global : this, function(root) {\n\n\tif (root.CSS && root.CSS.escape) {\n\t\treturn;\n\t}\n\n\t// https://drafts.csswg.org/cssom/#serialize-an-identifier\n\tvar cssEscape = function(value) {\n\t\tif (arguments.length == 0) {\n\t\t\tthrow new TypeError('`CSS.escape` requires an argument.');\n\t\t}\n\t\tvar string = String(value);\n\t\tvar length = string.length;\n\t\tvar index = -1;\n\t\tvar codeUnit;\n\t\tvar result = '';\n\t\tvar firstCodeUnit = string.charCodeAt(0);\n\t\twhile (++index < length) {\n\t\t\tcodeUnit = string.charCodeAt(index);\n\t\t\t// Note: there’s no need to special-case astral symbols, surrogate\n\t\t\t// pairs, or lone surrogates.\n\n\t\t\t// If the character is NULL (U+0000), then the REPLACEMENT CHARACTER\n\t\t\t// (U+FFFD).\n\t\t\tif (codeUnit == 0x0000) {\n\t\t\t\tresult += '\\uFFFD';\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// If the character is in the range [\\1-\\1F] (U+0001 to U+001F) or is\n\t\t\t\t// U+007F, […]\n\t\t\t\t(codeUnit >= 0x0001 && codeUnit <= 0x001F) || codeUnit == 0x007F ||\n\t\t\t\t// If the character is the first character and is in the range [0-9]\n\t\t\t\t// (U+0030 to U+0039), […]\n\t\t\t\t(index == 0 && codeUnit >= 0x0030 && codeUnit <= 0x0039) ||\n\t\t\t\t// If the character is the second character and is in the range [0-9]\n\t\t\t\t// (U+0030 to U+0039) and the first character is a `-` (U+002D), […]\n\t\t\t\t(\n\t\t\t\t\tindex == 1 &&\n\t\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 &&\n\t\t\t\t\tfirstCodeUnit == 0x002D\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\n\t\t\t\tresult += '\\\\' + codeUnit.toString(16) + ' ';\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// If the character is the first character and is a `-` (U+002D), and\n\t\t\t\t// there is no second character, […]\n\t\t\t\tindex == 0 &&\n\t\t\t\tlength == 1 &&\n\t\t\t\tcodeUnit == 0x002D\n\t\t\t) {\n\t\t\t\tresult += '\\\\' + string.charAt(index);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// If the character is not handled by one of the above rules and is\n\t\t\t// greater than or equal to U+0080, is `-` (U+002D) or `_` (U+005F), or\n\t\t\t// is in one of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to\n\t\t\t// U+005A), or [a-z] (U+0061 to U+007A), […]\n\t\t\tif (\n\t\t\t\tcodeUnit >= 0x0080 ||\n\t\t\t\tcodeUnit == 0x002D ||\n\t\t\t\tcodeUnit == 0x005F ||\n\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 ||\n\t\t\t\tcodeUnit >= 0x0041 && codeUnit <= 0x005A ||\n\t\t\t\tcodeUnit >= 0x0061 && codeUnit <= 0x007A\n\t\t\t) {\n\t\t\t\t// the character itself\n\t\t\t\tresult += string.charAt(index);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Otherwise, the escaped character.\n\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character\n\t\t\tresult += '\\\\' + string.charAt(index);\n\n\t\t}\n\t\treturn result;\n\t};\n\n\tif (!root.CSS) {\n\t\troot.CSS = {};\n\t}\n\n\troot.CSS.escape = cssEscape;\n\n}));\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/favicon.js": {
            "title": "$:/core/modules/startup/favicon.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/favicon.js\ntype: application/javascript\nmodule-type: startup\n\nFavicon handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"favicon\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\t\t\n// Favicon tiddler\nvar FAVICON_TITLE = \"$:/favicon.ico\";\n\nexports.startup = function() {\n\t// Set up the favicon\n\tsetFavicon();\n\t// Reset the favicon when the tiddler changes\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,FAVICON_TITLE)) {\n\t\t\tsetFavicon();\n\t\t}\n\t});\n};\n\nfunction setFavicon() {\n\tvar tiddler = $tw.wiki.getTiddler(FAVICON_TITLE);\n\tif(tiddler) {\n\t\tvar faviconLink = document.getElementById(\"faviconLink\");\n\t\tfaviconLink.setAttribute(\"href\",$tw.utils.makeDataUri(tiddler.fields.text,tiddler.fields.type,tiddler.fields._canonical_uri));\n\t}\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/info.js": {
            "title": "$:/core/modules/startup/info.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/info.js\ntype: application/javascript\nmodule-type: startup\n\nInitialise $:/info tiddlers via $:/temp/info-plugin pseudo-plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"info\";\nexports.before = [\"startup\"];\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\nvar TITLE_INFO_PLUGIN = \"$:/temp/info-plugin\";\n\nexports.startup = function() {\n\t// Function to bake the info plugin with new tiddlers\n\tvar updateInfoPlugin = function(tiddlerFieldsArray) {\n\t\t// Get the existing tiddlers\n\t\tvar json = $tw.wiki.getTiddlerData(TITLE_INFO_PLUGIN,{tiddlers: {}});\n\t\t// Add the new ones\n\t\t$tw.utils.each(tiddlerFieldsArray,function(fields) {\n\t\t\tif(fields && fields.title) {\n\t\t\t\tjson.tiddlers[fields.title] = fields;\n\t\t\t}\n\t\t});\n\t\t// Bake the info tiddlers into a plugin. We use the non-standard plugin-type \"info\" because ordinary plugins are only registered asynchronously after being loaded dynamically\n\t\tvar fields = {\n\t\t\ttitle: TITLE_INFO_PLUGIN,\n\t\t\ttype: \"application/json\",\n\t\t\t\"plugin-type\": \"info\",\n\t\t\ttext: JSON.stringify(json,null,$tw.config.preferences.jsonSpaces)\n\t\t};\n\t\t$tw.wiki.addTiddler(new $tw.Tiddler(fields));\n\n\t};\n\t// Collect up the info tiddlers\n\tvar tiddlerFieldsArray = [];\n\t// Give each info module a chance to provide as many info tiddlers as they want as an array, and give them a callback for dynamically updating them\n\t$tw.modules.forEachModuleOfType(\"info\",function(title,moduleExports) {\n\t\tif(moduleExports && moduleExports.getInfoTiddlerFields) {\n\t\t\tArray.prototype.push.apply(tiddlerFieldsArray,moduleExports.getInfoTiddlerFields(updateInfoPlugin));\n\t\t}\n\t});\n\tupdateInfoPlugin(tiddlerFieldsArray);\n\tvar changes = $tw.wiki.readPluginInfo([TITLE_INFO_PLUGIN]);\n\t$tw.wiki.registerPluginTiddlers(\"info\",[TITLE_INFO_PLUGIN]);\n\t$tw.wiki.unpackPluginTiddlers();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/load-modules.js": {
            "title": "$:/core/modules/startup/load-modules.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/load-modules.js\ntype: application/javascript\nmodule-type: startup\n\nLoad core modules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"load-modules\";\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Load modules\n\t$tw.modules.applyMethods(\"utils\",$tw.utils);\n\tif($tw.node) {\n\t\t$tw.modules.applyMethods(\"utils-node\",$tw.utils);\n\t}\n\t$tw.modules.applyMethods(\"global\",$tw);\n\t$tw.modules.applyMethods(\"config\",$tw.config);\n\t$tw.Tiddler.fieldModules = $tw.modules.getModulesByTypeAsHashmap(\"tiddlerfield\");\n\t$tw.modules.applyMethods(\"tiddlermethod\",$tw.Tiddler.prototype);\n\t$tw.modules.applyMethods(\"wikimethod\",$tw.Wiki.prototype);\n\t$tw.wiki.addIndexersToWiki();\n\t$tw.modules.applyMethods(\"tiddlerdeserializer\",$tw.Wiki.tiddlerDeserializerModules);\n\t$tw.macros = $tw.modules.getModulesByTypeAsHashmap(\"macro\");\n\t$tw.wiki.initParsers();\n\t$tw.Commander.initCommands();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/password.js": {
            "title": "$:/core/modules/startup/password.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/password.js\ntype: application/javascript\nmodule-type: startup\n\nPassword handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"password\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t$tw.rootWidget.addEventListener(\"tm-set-password\",function(event) {\n\t\t$tw.passwordPrompt.createPrompt({\n\t\t\tserviceName: $tw.language.getString(\"Encryption/PromptSetPassword\"),\n\t\t\tnoUserName: true,\n\t\t\tsubmitText: $tw.language.getString(\"Encryption/SetPassword\"),\n\t\t\tcanCancel: true,\n\t\t\trepeatPassword: true,\n\t\t\tcallback: function(data) {\n\t\t\t\tif(data) {\n\t\t\t\t\t$tw.crypto.setPassword(data.password);\n\t\t\t\t}\n\t\t\t\treturn true; // Get rid of the password prompt\n\t\t\t}\n\t\t});\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-clear-password\",function(event) {\n\t\tif($tw.browser) {\n\t\t\tif(!confirm($tw.language.getString(\"Encryption/ConfirmClearPassword\"))) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t$tw.crypto.setPassword(null);\n\t});\n\t// Ensure that $:/isEncrypted is maintained properly\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,\"$:/isEncrypted\")) {\n\t\t\t$tw.crypto.updateCryptoStateTiddler();\n\t\t}\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/plugins.js": {
            "title": "$:/core/modules/startup/plugins.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/plugins.js\ntype: application/javascript\nmodule-type: startup\n\nStartup logic concerned with managing plugins\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"plugins\";\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\nvar TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE = \"$:/status/RequireReloadDueToPluginChange\";\n\nvar PREFIX_CONFIG_REGISTER_PLUGIN_TYPE = \"$:/config/RegisterPluginType/\";\n\nexports.startup = function() {\n\t$tw.wiki.addTiddler({title: TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE,text: \"no\"});\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\t// Work out which of the changed tiddlers are plugins that we need to reregister\n\t\tvar changesToProcess = [],\n\t\t\trequireReloadDueToPluginChange = false;\n\t\t$tw.utils.each(Object.keys(changes),function(title) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title),\n\t\t\t\trequiresReload = $tw.wiki.doesPluginRequireReload(title);\n\t\t\tif(requiresReload) {\n\t\t\t\trequireReloadDueToPluginChange = true;\n\t\t\t} else if(tiddler) {\n\t\t\t\tvar pluginType = tiddler.fields[\"plugin-type\"];\n\t\t\t\tif($tw.wiki.getTiddlerText(PREFIX_CONFIG_REGISTER_PLUGIN_TYPE + (tiddler.fields[\"plugin-type\"] || \"\"),\"no\") === \"yes\") {\n\t\t\t\t\tchangesToProcess.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\t// Issue warning if any of the tiddlers require a reload\n\t\tif(requireReloadDueToPluginChange) {\n\t\t\t$tw.wiki.addTiddler({title: TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE,text: \"yes\"});\n\t\t}\n\t\t// Read or delete the plugin info of the changed tiddlers\n\t\tif(changesToProcess.length > 0) {\n\t\t\tvar changes = $tw.wiki.readPluginInfo(changesToProcess);\n\t\t\tif(changes.modifiedPlugins.length > 0 || changes.deletedPlugins.length > 0) {\n\t\t\t\tvar changedShadowTiddlers = {};\n\t\t\t\t// Collect the shadow tiddlers of any deleted plugins\n\t\t\t\t$tw.utils.each(changes.deletedPlugins,function(pluginTitle) {\n\t\t\t\t\tvar pluginInfo = $tw.wiki.getPluginInfo(pluginTitle);\n\t\t\t\t\tif(pluginInfo) {\n\t\t\t\t\t\t$tw.utils.each(Object.keys(pluginInfo.tiddlers),function(title) {\n\t\t\t\t\t\t\tchangedShadowTiddlers[title] = true;\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\t// Collect the shadow tiddlers of any modified plugins\n\t\t\t\t$tw.utils.each(changes.modifiedPlugins,function(pluginTitle) {\n\t\t\t\t\tvar pluginInfo = $tw.wiki.getPluginInfo(pluginTitle);\n\t\t\t\t\tif(pluginInfo) {\n\t\t\t\t\t\t$tw.utils.each(Object.keys(pluginInfo.tiddlers),function(title) {\n\t\t\t\t\t\t\tchangedShadowTiddlers[title] = false;\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\t// (Re-)register any modified plugins\n\t\t\t\t$tw.wiki.registerPluginTiddlers(null,changes.modifiedPlugins);\n\t\t\t\t// Unregister any deleted plugins\n\t\t\t\t$tw.wiki.unregisterPluginTiddlers(null,changes.deletedPlugins);\n\t\t\t\t// Unpack the shadow tiddlers\n\t\t\t\t$tw.wiki.unpackPluginTiddlers();\n\t\t\t\t// Queue change events for the changed shadow tiddlers\n\t\t\t\t$tw.utils.each(Object.keys(changedShadowTiddlers),function(title) {\n\t\t\t\t\t$tw.wiki.enqueueTiddlerEvent(title,changedShadowTiddlers[title]);\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/render.js": {
            "title": "$:/core/modules/startup/render.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/render.js\ntype: application/javascript\nmodule-type: startup\n\nTitle, stylesheet and page rendering\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"render\";\nexports.platforms = [\"browser\"];\nexports.after = [\"story\"];\nexports.synchronous = true;\n\n// Default story and history lists\nvar PAGE_TITLE_TITLE = \"$:/core/wiki/title\";\nvar PAGE_STYLESHEET_TITLE = \"$:/core/ui/PageStylesheet\";\nvar PAGE_TEMPLATE_TITLE = \"$:/core/ui/RootTemplate\";\n\n// Time (in ms) that we defer refreshing changes to draft tiddlers\nvar DRAFT_TIDDLER_TIMEOUT_TITLE = \"$:/config/Drafts/TypingTimeout\";\nvar THROTTLE_REFRESH_TIMEOUT = 400;\n\nexports.startup = function() {\n\t// Set up the title\n\t$tw.titleWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_TITLE_TITLE,{document: $tw.fakeDocument, parseAsInline: true});\n\t$tw.titleContainer = $tw.fakeDocument.createElement(\"div\");\n\t$tw.titleWidgetNode.render($tw.titleContainer,null);\n\tdocument.title = $tw.titleContainer.textContent;\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.titleWidgetNode.refresh(changes,$tw.titleContainer,null)) {\n\t\t\tdocument.title = $tw.titleContainer.textContent;\n\t\t}\n\t});\n\t// Set up the styles\n\t$tw.styleWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_STYLESHEET_TITLE,{document: $tw.fakeDocument});\n\t$tw.styleContainer = $tw.fakeDocument.createElement(\"style\");\n\t$tw.styleWidgetNode.render($tw.styleContainer,null);\n\t$tw.styleElement = document.createElement(\"style\");\n\t$tw.styleElement.innerHTML = $tw.styleContainer.textContent;\n\tdocument.head.insertBefore($tw.styleElement,document.head.firstChild);\n\t$tw.wiki.addEventListener(\"change\",$tw.perf.report(\"styleRefresh\",function(changes) {\n\t\tif($tw.styleWidgetNode.refresh(changes,$tw.styleContainer,null)) {\n\t\t\t$tw.styleElement.innerHTML = $tw.styleContainer.textContent;\n\t\t}\n\t}));\n\t// Display the $:/core/ui/PageTemplate tiddler to kick off the display\n\t$tw.perf.report(\"mainRender\",function() {\n\t\t$tw.pageWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_TEMPLATE_TITLE,{document: document, parentWidget: $tw.rootWidget, recursionMarker: \"no\"});\n\t\t$tw.pageContainer = document.createElement(\"div\");\n\t\t$tw.utils.addClass($tw.pageContainer,\"tc-page-container-wrapper\");\n\t\tdocument.body.insertBefore($tw.pageContainer,document.body.firstChild);\n\t\t$tw.pageWidgetNode.render($tw.pageContainer,null);\n   \t\t$tw.hooks.invokeHook(\"th-page-refreshed\");\n\t})();\n\t// Remove any splash screen elements\n\tvar removeList = document.querySelectorAll(\".tc-remove-when-wiki-loaded\");\n\t$tw.utils.each(removeList,function(removeItem) {\n\t\tif(removeItem.parentNode) {\n\t\t\tremoveItem.parentNode.removeChild(removeItem);\n\t\t}\n\t});\n\t// Prepare refresh mechanism\n\tvar deferredChanges = Object.create(null),\n\t\ttimerId;\n\tfunction refresh() {\n\t\t// Process the refresh\n\t\t$tw.hooks.invokeHook(\"th-page-refreshing\");\n\t\t$tw.pageWidgetNode.refresh(deferredChanges);\n\t\tdeferredChanges = Object.create(null);\n\t\t$tw.hooks.invokeHook(\"th-page-refreshed\");\n\t}\n\t// Add the change event handler\n\t$tw.wiki.addEventListener(\"change\",$tw.perf.report(\"mainRefresh\",function(changes) {\n\t\t// Check if only tiddlers that are throttled have changed\n\t\tvar onlyThrottledTiddlersHaveChanged = true;\n\t\tfor(var title in changes) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\tif(!tiddler || !(tiddler.hasField(\"draft.of\") || tiddler.hasField(\"throttle.refresh\"))) {\n\t\t\t\tonlyThrottledTiddlersHaveChanged = false;\n\t\t\t}\n\t\t}\n\t\t// Defer the change if only drafts have changed\n\t\tif(timerId) {\n\t\t\tclearTimeout(timerId);\n\t\t}\n\t\ttimerId = null;\n\t\tif(onlyThrottledTiddlersHaveChanged) {\n\t\t\tvar timeout = parseInt($tw.wiki.getTiddlerText(DRAFT_TIDDLER_TIMEOUT_TITLE,\"\"),10);\n\t\t\tif(isNaN(timeout)) {\n\t\t\t\ttimeout = THROTTLE_REFRESH_TIMEOUT;\n\t\t\t}\n\t\t\ttimerId = setTimeout(refresh,timeout);\n\t\t\t$tw.utils.extend(deferredChanges,changes);\n\t\t} else {\n\t\t\t$tw.utils.extend(deferredChanges,changes);\n\t\t\trefresh();\n\t\t}\n\t}));\n\t// Fix up the link between the root widget and the page container\n\t$tw.rootWidget.domNodes = [$tw.pageContainer];\n\t$tw.rootWidget.children = [$tw.pageWidgetNode];\n\t// Run any post-render startup actions\n\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction/PostRender\");\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/rootwidget.js": {
            "title": "$:/core/modules/startup/rootwidget.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/rootwidget.js\ntype: application/javascript\nmodule-type: startup\n\nSetup the root widget and the core root widget handlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"rootwidget\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.before = [\"story\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Install the modal message mechanism\n\t$tw.modal = new $tw.utils.Modal($tw.wiki);\n\t$tw.rootWidget.addEventListener(\"tm-modal\",function(event) {\n\t\t$tw.modal.display(event.param,{variables: event.paramObject, event: event});\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-show-switcher\",function(event) {\n\t\t$tw.modal.display(\"$:/core/ui/SwitcherModal\",{variables: event.paramObject, event: event});\n\t});\t\n\t// Install the notification  mechanism\n\t$tw.notifier = new $tw.utils.Notifier($tw.wiki);\n\t$tw.rootWidget.addEventListener(\"tm-notify\",function(event) {\n\t\t$tw.notifier.display(event.param,{variables: event.paramObject});\n\t});\n\t// Install the copy-to-clipboard  mechanism\n\t$tw.rootWidget.addEventListener(\"tm-copy-to-clipboard\",function(event) {\n\t\t$tw.utils.copyToClipboard(event.param);\n\t});\n\t// Install the tm-focus-selector message\n\t$tw.rootWidget.addEventListener(\"tm-focus-selector\",function(event) {\n\t\tvar selector = event.param || \"\",\n\t\t\telement;\n\t\ttry {\n\t\t\telement = document.querySelector(selector);\n\t\t} catch(e) {\n\t\t\tconsole.log(\"Error in selector: \",selector)\n\t\t}\n\t\tif(element && element.focus) {\n\t\t\telement.focus(event.paramObject);\n\t\t}\n\t});\n\t// Install the scroller\n\t$tw.pageScroller = new $tw.utils.PageScroller();\n\t$tw.rootWidget.addEventListener(\"tm-scroll\",function(event) {\n\t\t$tw.pageScroller.handleEvent(event);\n\t});\n\tvar fullscreen = $tw.utils.getFullScreenApis();\n\tif(fullscreen) {\n\t\t$tw.rootWidget.addEventListener(\"tm-full-screen\",function(event) {\n\t\t\tvar fullScreenDocument = event.event ? event.event.target.ownerDocument : document;\n\t\t\tif(event.param === \"enter\") {\n\t\t\t\tfullScreenDocument.documentElement[fullscreen._requestFullscreen](Element.ALLOW_KEYBOARD_INPUT);\n\t\t\t} else if(event.param === \"exit\") {\n\t\t\t\tfullScreenDocument[fullscreen._exitFullscreen]();\n\t\t\t} else {\n\t\t\t\tif(fullScreenDocument[fullscreen._fullscreenElement]) {\n\t\t\t\t\tfullScreenDocument[fullscreen._exitFullscreen]();\n\t\t\t\t} else {\n\t\t\t\t\tfullScreenDocument.documentElement[fullscreen._requestFullscreen](Element.ALLOW_KEYBOARD_INPUT);\n\t\t\t\t}\t\t\t\t\n\t\t\t}\n\t\t});\n\t}\n\t// If we're being viewed on a data: URI then give instructions for how to save\n\tif(document.location.protocol === \"data:\") {\n\t\t$tw.rootWidget.dispatchEvent({\n\t\t\ttype: \"tm-modal\",\n\t\t\tparam: \"$:/language/Modals/SaveInstructions\"\n\t\t});\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup.js": {
            "title": "$:/core/modules/startup.js",
            "text": "/*\\\ntitle: $:/core/modules/startup.js\ntype: application/javascript\nmodule-type: startup\n\nMiscellaneous startup logic for both the client and server.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"startup\";\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\n// Set to `true` to enable performance instrumentation\nvar PERFORMANCE_INSTRUMENTATION_CONFIG_TITLE = \"$:/config/Performance/Instrumentation\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.startup = function() {\n\tvar modules,n,m,f;\n\t// Minimal browser detection\n\tif($tw.browser) {\n\t\t$tw.browser.isIE = (/msie|trident/i.test(navigator.userAgent));\n\t\t$tw.browser.isFirefox = !!document.mozFullScreenEnabled;\n\t}\n\t// Platform detection\n\t$tw.platform = {};\n\tif($tw.browser) {\n\t\t$tw.platform.isMac = /Mac/.test(navigator.platform);\n\t\t$tw.platform.isWindows = /win/i.test(navigator.platform);\n\t\t$tw.platform.isLinux = /Linux/i.test(navigator.platform);\n\t} else {\n\t\tswitch(require(\"os\").platform()) {\n\t\t\tcase \"darwin\":\n\t\t\t\t$tw.platform.isMac = true;\n\t\t\t\tbreak;\n\t\t\tcase \"win32\":\n\t\t\t\t$tw.platform.isWindows = true;\n\t\t\t\tbreak;\n\t\t\tcase \"freebsd\":\n\t\t\t\t$tw.platform.isLinux = true;\n\t\t\t\tbreak;\n\t\t\tcase \"linux\":\n\t\t\t\t$tw.platform.isLinux = true;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t// Initialise version\n\t$tw.version = $tw.utils.extractVersionInfo();\n\t// Set up the performance framework\n\t$tw.perf = new $tw.Performance($tw.wiki.getTiddlerText(PERFORMANCE_INSTRUMENTATION_CONFIG_TITLE,\"no\") === \"yes\");\n\t// Create a root widget for attaching event handlers. By using it as the parentWidget for another widget tree, one can reuse the event handlers\n\t$tw.rootWidget = new widget.widget({\n\t\ttype: \"widget\",\n\t\tchildren: []\n\t},{\n\t\twiki: $tw.wiki,\n\t\tdocument: $tw.browser ? document : $tw.fakeDocument\n\t});\n\t// Execute any startup actions\n\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction\");\n\tif($tw.browser) {\n\t\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction/Browser\");\t\t\n\t}\n\tif($tw.node) {\n\t\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction/Node\");\t\t\n\t}\n\t// Kick off the language manager and switcher\n\t$tw.language = new $tw.Language();\n\t$tw.languageSwitcher = new $tw.PluginSwitcher({\n\t\twiki: $tw.wiki,\n\t\tpluginType: \"language\",\n\t\tcontrollerTitle: \"$:/language\",\n\t\tdefaultPlugins: [\n\t\t\t\"$:/languages/en-GB\"\n\t\t],\n\t\tonSwitch: function(plugins) {\n\t\t\tif($tw.browser) {\n\t\t\t\tvar pluginTiddler = $tw.wiki.getTiddler(plugins[0]);\n\t\t\t\tif(pluginTiddler) {\n\t\t\t\t\tdocument.documentElement.setAttribute(\"dir\",pluginTiddler.getFieldString(\"text-direction\") || \"auto\");\n\t\t\t\t} else {\n\t\t\t\t\tdocument.documentElement.removeAttribute(\"dir\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\t// Kick off the theme manager\n\t$tw.themeManager = new $tw.PluginSwitcher({\n\t\twiki: $tw.wiki,\n\t\tpluginType: \"theme\",\n\t\tcontrollerTitle: \"$:/theme\",\n\t\tdefaultPlugins: [\n\t\t\t\"$:/themes/tiddlywiki/snowwhite\",\n\t\t\t\"$:/themes/tiddlywiki/vanilla\"\n\t\t]\n\t});\n\t// Kick off the keyboard manager\n\t$tw.keyboardManager = new $tw.KeyboardManager();\n\t// Listen for shortcuts\n\tif($tw.browser) {\n\t\t$tw.utils.addEventListeners(document,[{\n\t\t\tname: \"keydown\",\n\t\t\thandlerObject: $tw.keyboardManager,\n\t\t\thandlerMethod: \"handleKeydownEvent\"\n\t\t}]);\n\t}\n\t// Clear outstanding tiddler store change events to avoid an unnecessary refresh cycle at startup\n\t$tw.wiki.clearTiddlerEventQueue();\n\t// Find a working syncadaptor\n\t$tw.syncadaptor = undefined;\n\t$tw.modules.forEachModuleOfType(\"syncadaptor\",function(title,module) {\n\t\tif(!$tw.syncadaptor && module.adaptorClass) {\n\t\t\t$tw.syncadaptor = new module.adaptorClass({wiki: $tw.wiki});\n\t\t}\n\t});\n\t// Set up the syncer object if we've got a syncadaptor\n\tif($tw.syncadaptor) {\n\t\t$tw.syncer = new $tw.Syncer({wiki: $tw.wiki, syncadaptor: $tw.syncadaptor});\n\t}\n\t// Setup the saver handler\n\t$tw.saverHandler = new $tw.SaverHandler({\n\t\twiki: $tw.wiki,\n\t\tdirtyTracking: !$tw.syncadaptor,\n\t\tpreloadDirty: $tw.boot.preloadDirty || []\n\t});\n\t// Host-specific startup\n\tif($tw.browser) {\n\t\t// Install the popup manager\n\t\t$tw.popup = new $tw.utils.Popup();\n\t\t// Install the animator\n\t\t$tw.anim = new $tw.utils.Animator();\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/story.js": {
            "title": "$:/core/modules/startup/story.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/story.js\ntype: application/javascript\nmodule-type: startup\n\nLoad core modules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"story\";\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n// Default story and history lists\nvar DEFAULT_STORY_TITLE = \"$:/StoryList\";\nvar DEFAULT_HISTORY_TITLE = \"$:/HistoryList\";\n\n// Default tiddlers\nvar DEFAULT_TIDDLERS_TITLE = \"$:/DefaultTiddlers\";\n\n// Config\nvar CONFIG_UPDATE_ADDRESS_BAR = \"$:/config/Navigation/UpdateAddressBar\"; // Can be \"no\", \"permalink\", \"permaview\"\nvar CONFIG_UPDATE_HISTORY = \"$:/config/Navigation/UpdateHistory\"; // Can be \"yes\" or \"no\"\nvar CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD = \"$:/config/Navigation/Permalinkview/CopyToClipboard\"; // Can be \"yes\" (default) or \"no\"\nvar CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR = \"$:/config/Navigation/Permalinkview/UpdateAddressBar\"; // Can be \"yes\" (default) or \"no\"\n\n\n// Links to help, if there is no param\nvar HELP_OPEN_EXTERNAL_WINDOW = \"http://tiddlywiki.com/#WidgetMessage%3A%20tm-open-external-window\";\n\nexports.startup = function() {\n\t// Open startup tiddlers\n\topenStartupTiddlers({\n\t\tdisableHistory: $tw.boot.disableStartupNavigation\n\t});\n\tif($tw.browser) {\n\t\t// Set up location hash update\n\t\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\t\tif($tw.utils.hop(changes,DEFAULT_STORY_TITLE) || $tw.utils.hop(changes,DEFAULT_HISTORY_TITLE)) {\n\t\t\t\tupdateLocationHash({\n\t\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_UPDATE_ADDRESS_BAR,\"permaview\").trim(),\n\t\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim()\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t\t// Listen for changes to the browser location hash\n\t\twindow.addEventListener(\"hashchange\",function() {\n\t\t\tvar hash = $tw.utils.getLocationHash();\n\t\t\tif(hash !== $tw.locationHash) {\n\t\t\t\t$tw.locationHash = hash;\n\t\t\t\topenStartupTiddlers({defaultToCurrentStory: true});\n\t\t\t}\n\t\t},false);\n\t\t// Listen for the tm-browser-refresh message\n\t\t$tw.rootWidget.addEventListener(\"tm-browser-refresh\",function(event) {\n\t\t\twindow.location.reload(true);\n\t\t});\n\t\t// Listen for tm-open-external-window message\n\t\t$tw.rootWidget.addEventListener(\"tm-open-external-window\",function(event) {\n\t\t\tvar paramObject = event.paramObject || {},\n\t\t\t\tstrUrl = event.param || HELP_OPEN_EXTERNAL_WINDOW,\n\t\t\t\tstrWindowName = paramObject.windowName,\n\t\t\t\tstrWindowFeatures = paramObject.windowFeatures;\n\t\t\twindow.open(strUrl, strWindowName, strWindowFeatures);\n\t\t});\n\t\t// Listen for the tm-print message\n\t\t$tw.rootWidget.addEventListener(\"tm-print\",function(event) {\n\t\t\t(event.event.view || window).print();\n\t\t});\n\t\t// Listen for the tm-home message\n\t\t$tw.rootWidget.addEventListener(\"tm-home\",function(event) {\n\t\t\twindow.location.hash = \"\";\n\t\t\tvar storyFilter = $tw.wiki.getTiddlerText(DEFAULT_TIDDLERS_TITLE),\n\t\t\t\tstoryList = $tw.wiki.filterTiddlers(storyFilter);\n\t\t\t//invoke any hooks that might change the default story list\n\t\t\tstoryList = $tw.hooks.invokeHook(\"th-opening-default-tiddlers-list\",storyList);\n\t\t\t$tw.wiki.addTiddler({title: DEFAULT_STORY_TITLE, text: \"\", list: storyList},$tw.wiki.getModificationFields());\n\t\t\tif(storyList[0]) {\n\t\t\t\t$tw.wiki.addToHistory(storyList[0]);\n\t\t\t}\n\t\t});\n\t\t// Listen for the tm-permalink message\n\t\t$tw.rootWidget.addEventListener(\"tm-permalink\",function(event) {\n\t\t\tupdateLocationHash({\n\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR,\"yes\").trim() === \"yes\" ? \"permalink\" : \"none\",\n\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim(),\n\t\t\t\ttargetTiddler: event.param || event.tiddlerTitle,\n\t\t\t\tcopyToClipboard: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD,\"yes\").trim() === \"yes\" ? \"permalink\" : \"none\"\n\t\t\t});\n\t\t});\n\t\t// Listen for the tm-permaview message\n\t\t$tw.rootWidget.addEventListener(\"tm-permaview\",function(event) {\n\t\t\tupdateLocationHash({\n\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR,\"yes\").trim() === \"yes\" ? \"permaview\" : \"none\",\n\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim(),\n\t\t\t\ttargetTiddler: event.param || event.tiddlerTitle,\n\t\t\t\tcopyToClipboard: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD,\"yes\").trim() === \"yes\" ? \"permaview\" : \"none\"\n\t\t\t});\t\t\t\t\n\t\t});\n\t}\n};\n\n/*\nProcess the location hash to open the specified tiddlers. Options:\ndisableHistory: if true $:/History is NOT updated\ndefaultToCurrentStory: If true, the current story is retained as the default, instead of opening the default tiddlers\n*/\nfunction openStartupTiddlers(options) {\n\toptions = options || {};\n\t// Work out the target tiddler and the story filter. \"null\" means \"unspecified\"\n\tvar target = null,\n\t\tstoryFilter = null;\n\tif($tw.locationHash.length > 1) {\n\t\tvar hash = $tw.locationHash.substr(1),\n\t\t\tsplit = hash.indexOf(\":\");\n\t\tif(split === -1) {\n\t\t\ttarget = decodeURIComponent(hash.trim());\n\t\t} else {\n\t\t\ttarget = decodeURIComponent(hash.substr(0,split).trim());\n\t\t\tstoryFilter = decodeURIComponent(hash.substr(split + 1).trim());\n\t\t}\n\t}\n\t// If the story wasn't specified use the current tiddlers or a blank story\n\tif(storyFilter === null) {\n\t\tif(options.defaultToCurrentStory) {\n\t\t\tvar currStoryList = $tw.wiki.getTiddlerList(DEFAULT_STORY_TITLE);\n\t\t\tstoryFilter = $tw.utils.stringifyList(currStoryList);\n\t\t} else {\n\t\t\tif(target && target !== \"\") {\n\t\t\t\tstoryFilter = \"\";\n\t\t\t} else {\n\t\t\t\tstoryFilter = $tw.wiki.getTiddlerText(DEFAULT_TIDDLERS_TITLE);\n\t\t\t}\n\t\t}\n\t}\n\t// Process the story filter to get the story list\n\tvar storyList = $tw.wiki.filterTiddlers(storyFilter);\n\t// Invoke any hooks that want to change the default story list\n\tstoryList = $tw.hooks.invokeHook(\"th-opening-default-tiddlers-list\",storyList);\n\t// If the target tiddler isn't included then splice it in at the top\n\tif(target && storyList.indexOf(target) === -1) {\n\t\tstoryList.unshift(target);\n\t}\n\t// Save the story list\n\t$tw.wiki.addTiddler({title: DEFAULT_STORY_TITLE, text: \"\", list: storyList},$tw.wiki.getModificationFields());\n\t// Update history\n\tvar story = new $tw.Story({\n\t\twiki: $tw.wiki,\n\t\tstoryTitle: DEFAULT_STORY_TITLE,\n\t\thistoryTitle: DEFAULT_HISTORY_TITLE\n\t});\n\tif(!options.disableHistory) {\n\t\t// If a target tiddler was specified add it to the history stack\n\t\tif(target && target !== \"\") {\n\t\t\t// The target tiddler doesn't need double square brackets, but we'll silently remove them if they're present\n\t\t\tif(target.indexOf(\"[[\") === 0 && target.substr(-2) === \"]]\") {\n\t\t\t\ttarget = target.substr(2,target.length - 4);\n\t\t\t}\n\t\t\tstory.addToHistory(target);\n\t\t} else if(storyList.length > 0) {\n\t\t\tstory.addToHistory(storyList[0]);\n\t\t}\t\t\n\t}\n}\n\n/*\noptions: See below\noptions.updateAddressBar: \"permalink\", \"permaview\" or \"no\" (defaults to \"permaview\")\noptions.updateHistory: \"yes\" or \"no\" (defaults to \"no\")\noptions.copyToClipboard: \"permalink\", \"permaview\" or \"no\" (defaults to \"no\")\noptions.targetTiddler: optional title of target tiddler for permalink\n*/\nfunction updateLocationHash(options) {\n\t// Get the story and the history stack\n\tvar storyList = $tw.wiki.getTiddlerList(DEFAULT_STORY_TITLE),\n\t\thistoryList = $tw.wiki.getTiddlerData(DEFAULT_HISTORY_TITLE,[]),\n\t\ttargetTiddler = \"\";\n\tif(options.targetTiddler) {\n\t\ttargetTiddler = options.targetTiddler;\n\t} else {\n\t\t// The target tiddler is the one at the top of the stack\n\t\tif(historyList.length > 0) {\n\t\t\ttargetTiddler = historyList[historyList.length-1].title;\n\t\t}\n\t\t// Blank the target tiddler if it isn't present in the story\n\t\tif(storyList.indexOf(targetTiddler) === -1) {\n\t\t\ttargetTiddler = \"\";\n\t\t}\n\t}\n\t// Assemble the location hash\n\tswitch(options.updateAddressBar) {\n\t\tcase \"permalink\":\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler);\n\t\t\tbreak;\n\t\tcase \"permaview\":\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler) + \":\" + encodeURIComponent($tw.utils.stringifyList(storyList));\n\t\t\tbreak;\n\t}\n\t// Copy URL to the clipboard\n\tswitch(options.copyToClipboard) {\n\t\tcase \"permalink\":\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getLocationPath() + \"#\" + encodeURIComponent(targetTiddler));\n\t\t\tbreak;\n\t\tcase \"permaview\":\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getLocationPath() + \"#\" + encodeURIComponent(targetTiddler) + \":\" + encodeURIComponent($tw.utils.stringifyList(storyList)));\n\t\t\tbreak;\n\t}\n\t// Only change the location hash if we must, thus avoiding unnecessary onhashchange events\n\tif($tw.utils.getLocationHash() !== $tw.locationHash) {\n\t\tif(options.updateHistory === \"yes\") {\n\t\t\t// Assign the location hash so that history is updated\n\t\t\twindow.location.hash = $tw.locationHash;\n\t\t} else {\n\t\t\t// We use replace so that browser history isn't affected\n\t\t\twindow.location.replace(window.location.toString().split(\"#\")[0] + $tw.locationHash);\n\t\t}\n\t}\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/windows.js": {
            "title": "$:/core/modules/startup/windows.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/windows.js\ntype: application/javascript\nmodule-type: startup\n\nSetup root widget handlers for the messages concerned with opening external browser windows\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"windows\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n// Global to keep track of open windows (hashmap by title)\n$tw.windows = {};\n\nexports.startup = function() {\n\t// Handle open window message\n\t$tw.rootWidget.addEventListener(\"tm-open-window\",function(event) {\n\t\t// Get the parameters\n\t\tvar refreshHandler,\n\t\t\ttitle = event.param || event.tiddlerTitle,\n\t\t\tparamObject = event.paramObject || {},\n\t\t\twindowTitle = paramObject.windowTitle || title,\n\t\t\ttemplate = paramObject.template || \"$:/core/templates/single.tiddler.window\",\n\t\t\twidth = paramObject.width || \"700\",\n\t\t\theight = paramObject.height || \"600\",\n\t\t\tvariables = $tw.utils.extend({},paramObject,{currentTiddler: title});\n\t\t// Open the window\n\t\tvar srcWindow,\n\t\t    srcDocument;\n\t\t// In case that popup blockers deny opening a new window\n\t\ttry {\n\t\t\tsrcWindow = window.open(\"\",\"external-\" + title,\"scrollbars,width=\" + width + \",height=\" + height),\n\t\t\tsrcDocument = srcWindow.document;\n\t\t}\n\t\tcatch(e) {\n\t\t\treturn;\n\t\t}\n\t\t$tw.windows[title] = srcWindow;\n\t\t// Check for reopening the same window\n\t\tif(srcWindow.haveInitialisedWindow) {\n\t\t\treturn;\n\t\t}\n\t\t// Initialise the document\n\t\tsrcDocument.write(\"<html><head></head><body class='tc-body tc-single-tiddler-window'></body></html>\");\n\t\tsrcDocument.close();\n\t\tsrcDocument.title = windowTitle;\n\t\tsrcWindow.addEventListener(\"beforeunload\",function(event) {\n\t\t\tdelete $tw.windows[title];\n\t\t\t$tw.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t},false);\n\t\t// Set up the styles\n\t\tvar styleWidgetNode = $tw.wiki.makeTranscludeWidget(\"$:/core/ui/PageStylesheet\",{\n\t\t\t\tdocument: $tw.fakeDocument,\n\t\t\t\tvariables: variables,\n\t\t\t\timportPageMacros: true}),\n\t\t\tstyleContainer = $tw.fakeDocument.createElement(\"style\");\n\t\tstyleWidgetNode.render(styleContainer,null);\n\t\tvar styleElement = srcDocument.createElement(\"style\");\n\t\tstyleElement.innerHTML = styleContainer.textContent;\n\t\tsrcDocument.head.insertBefore(styleElement,srcDocument.head.firstChild);\n\t\t// Render the text of the tiddler\n\t\tvar parser = $tw.wiki.parseTiddler(template),\n\t\t\twidgetNode = $tw.wiki.makeWidget(parser,{document: srcDocument, parentWidget: $tw.rootWidget, variables: variables});\n\t\twidgetNode.render(srcDocument.body,srcDocument.body.firstChild);\n\t\t// Function to handle refreshes\n\t\trefreshHandler = function(changes) {\n\t\t\tif(styleWidgetNode.refresh(changes,styleContainer,null)) {\n\t\t\t\tstyleElement.innerHTML = styleContainer.textContent;\n\t\t\t}\n\t\t\twidgetNode.refresh(changes);\n\t\t};\n\t\t$tw.wiki.addEventListener(\"change\",refreshHandler);\n\t\t// Listen for keyboard shortcuts\n\t\t$tw.utils.addEventListeners(srcDocument,[{\n\t\t\tname: \"keydown\",\n\t\t\thandlerObject: $tw.keyboardManager,\n\t\t\thandlerMethod: \"handleKeydownEvent\"\n\t\t}]);\n\t\tsrcWindow.document.documentElement.addEventListener(\"click\",$tw.popup,true);\n\t\tsrcWindow.haveInitialisedWindow = true;\n\t});\n\t// Close open windows when unloading main window\n\t$tw.addUnloadTask(function() {\n\t\t$tw.utils.each($tw.windows,function(win) {\n\t\t\twin.close();\n\t\t});\n\t});\n\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/story.js": {
            "title": "$:/core/modules/story.js",
            "text": "/*\\\ntitle: $:/core/modules/story.js\ntype: application/javascript\nmodule-type: global\n\nLightweight object for managing interactions with the story and history lists.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nConstruct Story object with options:\nwiki: reference to wiki object to use to resolve tiddler titles\nstoryTitle: title of story list tiddler\nhistoryTitle: title of history list tiddler\n*/\nfunction Story(options) {\n\toptions = options || {};\n\tthis.wiki = options.wiki || $tw.wiki;\n\tthis.storyTitle = options.storyTitle || \"$:/StoryList\";\n\tthis.historyTitle = options.historyTitle || \"$:/HistoryList\";\n};\n\nStory.prototype.navigateTiddler = function(navigateTo,navigateFromTitle,navigateFromClientRect) {\n\tthis.addToStory(navigateTo,navigateFromTitle);\n\tthis.addToHistory(navigateTo,navigateFromClientRect);\n};\n\nStory.prototype.getStoryList = function() {\n\treturn this.wiki.getTiddlerList(this.storyTitle) || [];\n};\n\nStory.prototype.addToStory = function(navigateTo,navigateFromTitle,options) {\n\toptions = options || {};\n\tvar storyList = this.getStoryList();\n\t// See if the tiddler is already there\n\tvar slot = storyList.indexOf(navigateTo);\n\t// Quit if it already exists in the story river\n\tif(slot >= 0) {\n\t\treturn;\n\t}\n\t// First we try to find the position of the story element we navigated from\n\tvar fromIndex = storyList.indexOf(navigateFromTitle);\n\tif(fromIndex >= 0) {\n\t\t// The tiddler is added from inside the river\n\t\t// Determine where to insert the tiddler; Fallback is \"below\"\n\t\tswitch(options.openLinkFromInsideRiver) {\n\t\t\tcase \"top\":\n\t\t\t\tslot = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"bottom\":\n\t\t\t\tslot = storyList.length;\n\t\t\t\tbreak;\n\t\t\tcase \"above\":\n\t\t\t\tslot = fromIndex;\n\t\t\t\tbreak;\n\t\t\tcase \"below\": // Intentional fall-through\n\t\t\tdefault:\n\t\t\t\tslot = fromIndex + 1;\n\t\t\t\tbreak;\n\t\t}\n\t} else {\n\t\t// The tiddler is opened from outside the river. Determine where to insert the tiddler; default is \"top\"\n\t\tif(options.openLinkFromOutsideRiver === \"bottom\") {\n\t\t\t// Insert at bottom\n\t\t\tslot = storyList.length;\n\t\t} else {\n\t\t\t// Insert at top\n\t\t\tslot = 0;\n\t\t}\n\t}\n\t// Add the tiddler\n\tstoryList.splice(slot,0,navigateTo);\n\t// Save the story\n\tthis.saveStoryList(storyList);\n};\n\nStory.prototype.saveStoryList = function(storyList) {\n\tvar storyTiddler = this.wiki.getTiddler(this.storyTitle);\n\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\tthis.wiki.getCreationFields(),\n\t\t{title: this.storyTitle},\n\t\tstoryTiddler,\n\t\t{list: storyList},\n\t\tthis.wiki.getModificationFields()\n\t));\n};\n\nStory.prototype.addToHistory = function(navigateTo,navigateFromClientRect) {\n\tvar titles = $tw.utils.isArray(navigateTo) ? navigateTo : [navigateTo];\n\t// Add a new record to the top of the history stack\n\tvar historyList = this.wiki.getTiddlerData(this.historyTitle,[]);\n\t$tw.utils.each(titles,function(title) {\n\t\thistoryList.push({title: title, fromPageRect: navigateFromClientRect});\n\t});\n\tthis.wiki.setTiddlerData(this.historyTitle,historyList,{\"current-tiddler\": titles[titles.length-1]});\n};\n\nStory.prototype.storyCloseTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyCloseAllTiddlers = function() {\n// TBD\n};\n\nStory.prototype.storyCloseOtherTiddlers = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyEditTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyDeleteTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storySaveTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyCancelTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyNewTiddler = function(targetTitle) {\n// TBD\n};\n\nexports.Story = Story;\n\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/storyviews/classic.js": {
            "title": "$:/core/modules/storyviews/classic.js",
            "text": "/*\\\ntitle: $:/core/modules/storyviews/classic.js\ntype: application/javascript\nmodule-type: storyview\n\nViews the story as a linear sequence\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar easing = \"cubic-bezier(0.645, 0.045, 0.355, 1)\"; // From http://easings.net/#easeInOutCubic\n\nvar ClassicStoryView = function(listWidget) {\n\tthis.listWidget = listWidget;\n};\n\nClassicStoryView.prototype.navigateTo = function(historyInfo) {\n\tvar duration = $tw.utils.getAnimationDuration()\n\tvar listElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\tif(duration) {\n\t\t// Scroll the node into view\n\t\tthis.listWidget.dispatchEvent({type: \"tm-scroll\", target: targetElement});\t\n\t} else {\n\t\ttargetElement.scrollIntoView();\n\t}\n};\n\nClassicStoryView.prototype.insert = function(widget) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tif(duration) {\n\t\tvar targetElement = widget.findFirstDomNode();\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(targetElement instanceof Element)) {\n\t\t\treturn;\n\t\t}\n\t\t// Get the current height of the tiddler\n\t\tvar computedStyle = window.getComputedStyle(targetElement),\n\t\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t\t// Reset the margin once the transition is over\n\t\tsetTimeout(function() {\n\t\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t\t{transition: \"none\"},\n\t\t\t\t{marginBottom: \"\"}\n\t\t\t]);\n\t\t},duration);\n\t\t// Set up the initial position of the element\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t\t{opacity: \"0.0\"}\n\t\t]);\n\t\t$tw.utils.forceLayout(targetElement);\n\t\t// Transition to the final position\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t\t{opacity: \"1.0\"}\n\t]);\n\t}\n};\n\nClassicStoryView.prototype.remove = function(widget) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tif(duration) {\n\t\tvar targetElement = widget.findFirstDomNode(),\n\t\t\tremoveElement = function() {\n\t\t\t\twidget.removeChildDomNodes();\n\t\t\t};\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(targetElement instanceof Element)) {\n\t\t\tremoveElement();\n\t\t\treturn;\n\t\t}\n\t\t// Get the current height of the tiddler\n\t\tvar currWidth = targetElement.offsetWidth,\n\t\t\tcomputedStyle = window.getComputedStyle(targetElement),\n\t\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t\t// Remove the dom nodes of the widget at the end of the transition\n\t\tsetTimeout(removeElement,duration);\n\t\t// Animate the closure\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{transform: \"translateX(0px)\"},\n\t\t\t{marginBottom:  currMarginBottom + \"px\"},\n\t\t\t{opacity: \"1.0\"}\n\t\t]);\n\t\t$tw.utils.forceLayout(targetElement);\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t\t{transform: \"translateX(-\" + currWidth + \"px)\"},\n\t\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t\t{opacity: \"0.0\"}\n\t\t]);\n\t} else {\n\t\twidget.removeChildDomNodes();\n\t}\n};\n\nexports.classic = ClassicStoryView;\n\n})();",
            "type": "application/javascript",
            "module-type": "storyview"
        },
        "$:/core/modules/storyviews/pop.js": {
            "title": "$:/core/modules/storyviews/pop.js",
            "text": "/*\\\ntitle: $:/core/modules/storyviews/pop.js\ntype: application/javascript\nmodule-type: storyview\n\nAnimates list insertions and removals\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar PopStoryView = function(listWidget) {\n\tthis.listWidget = listWidget;\n};\n\nPopStoryView.prototype.navigateTo = function(historyInfo) {\n\tvar listElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Scroll the node into view\n\tthis.listWidget.dispatchEvent({type: \"tm-scroll\", target: targetElement});\n};\n\nPopStoryView.prototype.insert = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Reset once the transition is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{transform: \"none\"}\n\t\t]);\n\t\t$tw.utils.setStyle(widget.document.body,[\n\t\t\t{\"overflow-x\": \"\"}\n\t\t]);\n\t},duration);\n\t// Prevent the page from overscrolling due to the zoom factor\n\t$tw.utils.setStyle(widget.document.body,[\n\t\t{\"overflow-x\": \"hidden\"}\n\t]);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{transform: \"scale(2)\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t// Transition to the final position\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{transform: \"scale(1)\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n};\n\nPopStoryView.prototype.remove = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\tremoveElement = function() {\n\t\t\tif(targetElement && targetElement.parentNode) {\n\t\t\t\twidget.removeChildDomNodes();\n\t\t\t}\n\t\t};\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Remove the element at the end of the transition\n\tsetTimeout(removeElement,duration);\n\t// Animate the closure\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{transform: \"scale(1)\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{transform: \"scale(0.1)\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n};\n\nexports.pop = PopStoryView;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "storyview"
        },
        "$:/core/modules/storyviews/zoomin.js": {
            "title": "$:/core/modules/storyviews/zoomin.js",
            "text": "/*\\\ntitle: $:/core/modules/storyviews/zoomin.js\ntype: application/javascript\nmodule-type: storyview\n\nZooms between individual tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar easing = \"cubic-bezier(0.645, 0.045, 0.355, 1)\"; // From http://easings.net/#easeInOutCubic\n\nvar ZoominListView = function(listWidget) {\n\tvar self = this;\n\tthis.listWidget = listWidget;\n\t// Get the index of the tiddler that is at the top of the history\n\tvar history = this.listWidget.wiki.getTiddlerDataCached(this.listWidget.historyTitle,[]),\n\t\ttargetTiddler;\n\tif(history.length > 0) {\n\t\ttargetTiddler = history[history.length-1].title;\n\t}\n\t// Make all the tiddlers position absolute, and hide all but the top (or first) one\n\t$tw.utils.each(this.listWidget.children,function(itemWidget,index) {\n\t\tvar domNode = itemWidget.findFirstDomNode();\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(domNode instanceof Element)) {\n\t\t\treturn;\n\t\t}\n\t\tif((targetTiddler && targetTiddler !== itemWidget.parseTreeNode.itemTitle) || (!targetTiddler && index)) {\n\t\t\tdomNode.style.display = \"none\";\n\t\t} else {\n\t\t\tself.currentTiddlerDomNode = domNode;\n\t\t}\n\t\t$tw.utils.addClass(domNode,\"tc-storyview-zoomin-tiddler\");\n\t});\n};\n\nZoominListView.prototype.navigateTo = function(historyInfo) {\n\tvar duration = $tw.utils.getAnimationDuration(),\n\t\tlistElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Make the new tiddler be position absolute and visible so that we can measure it\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"block\"},\n\t\t{transformOrigin: \"0 0\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{transition: \"none\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n\t// Get the position of the source node, or use the centre of the window as the source position\n\tvar sourceBounds = historyInfo.fromPageRect || {\n\t\t\tleft: window.innerWidth/2 - 2,\n\t\t\ttop: window.innerHeight/2 - 2,\n\t\t\twidth: window.innerWidth/8,\n\t\t\theight: window.innerHeight/8\n\t\t};\n\t// Try to find the title node in the target tiddler\n\tvar titleDomNode = findTitleDomNode(listItemWidget) || listItemWidget.findFirstDomNode(),\n\t\tzoomBounds = titleDomNode.getBoundingClientRect();\n\t// Compute the transform for the target tiddler to make the title lie over the source rectange\n\tvar targetBounds = targetElement.getBoundingClientRect(),\n\t\tscale = sourceBounds.width / zoomBounds.width,\n\t\tx = sourceBounds.left - targetBounds.left - (zoomBounds.left - targetBounds.left) * scale,\n\t\ty = sourceBounds.top - targetBounds.top - (zoomBounds.top - targetBounds.top) * scale;\n\t// Transform the target tiddler to its starting position\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transform: \"translateX(\" + x + \"px) translateY(\" + y + \"px) scale(\" + scale + \")\"}\n\t]);\n\t// Force layout\n\t$tw.utils.forceLayout(targetElement);\n\t// Apply the ending transitions with a timeout to ensure that the previously applied transformations are applied first\n\tvar self = this,\n\t\tprevCurrentTiddler = this.currentTiddlerDomNode;\n\tthis.currentTiddlerDomNode = targetElement;\n\t// Transform the target tiddler to its natural size\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t{opacity: \"1.0\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{zIndex: \"500\"},\n\t]);\n\t// Transform the previous tiddler out of the way and then hide it\n\tif(prevCurrentTiddler && prevCurrentTiddler !== targetElement) {\n\t\tscale = zoomBounds.width / sourceBounds.width;\n\t\tx =  zoomBounds.left - targetBounds.left - (sourceBounds.left - targetBounds.left) * scale;\n\t\ty =  zoomBounds.top - targetBounds.top - (sourceBounds.top - targetBounds.top) * scale;\n\t\t$tw.utils.setStyle(prevCurrentTiddler,[\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t\t{opacity: \"0.0\"},\n\t\t\t{transformOrigin: \"0 0\"},\n\t\t\t{transform: \"translateX(\" + x + \"px) translateY(\" + y + \"px) scale(\" + scale + \")\"},\n\t\t\t{zIndex: \"0\"}\n\t\t]);\n\t\t// Hide the tiddler when the transition has finished\n\t\tsetTimeout(function() {\n\t\t\tif(self.currentTiddlerDomNode !== prevCurrentTiddler) {\n\t\t\t\tprevCurrentTiddler.style.display = \"none\";\n\t\t\t}\n\t\t},duration);\n\t}\n\t// Scroll the target into view\n//\t$tw.pageScroller.scrollIntoView(targetElement);\n};\n\n/*\nFind the first child DOM node of a widget that has the class \"tc-title\"\n*/\nfunction findTitleDomNode(widget,targetClass) {\n\ttargetClass = targetClass || \"tc-title\";\n\tvar domNode = widget.findFirstDomNode();\n\tif(domNode && domNode.querySelector) {\n\t\treturn domNode.querySelector(\".\" + targetClass);\n\t}\n\treturn null;\n}\n\nZoominListView.prototype.insert = function(widget) {\n\tvar targetElement = widget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Make the newly inserted node position absolute and hidden\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"none\"}\n\t]);\n};\n\nZoominListView.prototype.remove = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\tremoveElement = function() {\n\t\t\twidget.removeChildDomNodes();\n\t\t};\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Abandon if hidden\n\tif(targetElement.style.display != \"block\" ) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Set up the tiddler that is being closed\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"block\"},\n\t\t{transformOrigin: \"50% 50%\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{transition: \"none\"},\n\t\t{zIndex: \"0\"}\n\t]);\n\t// We'll move back to the previous or next element in the story\n\tvar toWidget = widget.previousSibling();\n\tif(!toWidget) {\n\t\ttoWidget = widget.nextSibling();\n\t}\n\tvar toWidgetDomNode = toWidget && toWidget.findFirstDomNode();\n\t// Set up the tiddler we're moving back in\n\tif(toWidgetDomNode) {\n\t\t$tw.utils.addClass(toWidgetDomNode,\"tc-storyview-zoomin-tiddler\");\n\t\t$tw.utils.setStyle(toWidgetDomNode,[\n\t\t\t{display: \"block\"},\n\t\t\t{transformOrigin: \"50% 50%\"},\n\t\t\t{transform: \"translateX(0px) translateY(0px) scale(10)\"},\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t\t{opacity: \"0\"},\n\t\t\t{zIndex: \"500\"}\n\t\t]);\n\t\tthis.currentTiddlerDomNode = toWidgetDomNode;\n\t}\n\t// Animate them both\n\t// Force layout\n\t$tw.utils.forceLayout(this.listWidget.parentDomNode);\n\t// First, the tiddler we're closing\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transformOrigin: \"50% 50%\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(0.1)\"},\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t{opacity: \"0\"},\n\t\t{zIndex: \"0\"}\n\t]);\n\tsetTimeout(removeElement,duration);\n\t// Now the tiddler we're going back to\n\tif(toWidgetDomNode) {\n\t\t$tw.utils.setStyle(toWidgetDomNode,[\n\t\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t\t{opacity: \"1\"}\n\t\t]);\n\t}\n\treturn true; // Indicate that we'll delete the DOM node\n};\n\nexports.zoomin = ZoominListView;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "storyview"
        },
        "$:/core/modules/syncer.js": {
            "title": "$:/core/modules/syncer.js",
            "text": "/*\\\ntitle: $:/core/modules/syncer.js\ntype: application/javascript\nmodule-type: global\n\nThe syncer tracks changes to the store and synchronises them to a remote data store represented as a \"sync adaptor\"\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nDefaults\n*/\nSyncer.prototype.titleIsLoggedIn = \"$:/status/IsLoggedIn\";\nSyncer.prototype.titleIsAnonymous = \"$:/status/IsAnonymous\";\nSyncer.prototype.titleIsReadOnly = \"$:/status/IsReadOnly\";\nSyncer.prototype.titleUserName = \"$:/status/UserName\";\nSyncer.prototype.titleSyncFilter = \"$:/config/SyncFilter\";\nSyncer.prototype.titleSyncPollingInterval = \"$:/config/SyncPollingInterval\";\nSyncer.prototype.titleSyncDisableLazyLoading = \"$:/config/SyncDisableLazyLoading\";\nSyncer.prototype.titleSavedNotification = \"$:/language/Notifications/Save/Done\";\nSyncer.prototype.titleSyncThrottleInterval = \"$:/config/SyncThrottleInterval\";\nSyncer.prototype.taskTimerInterval = 1 * 1000; // Interval for sync timer\nSyncer.prototype.throttleInterval = 1 * 1000; // Defer saving tiddlers if they've changed in the last 1s...\nSyncer.prototype.errorRetryInterval = 5 * 1000; // Interval to retry after an error\nSyncer.prototype.fallbackInterval = 10 * 1000; // Unless the task is older than 10s\nSyncer.prototype.pollTimerInterval = 60 * 1000; // Interval for polling for changes from the adaptor\n\n/*\nInstantiate the syncer with the following options:\nsyncadaptor: reference to syncadaptor to be used\nwiki: wiki to be synced\n*/\nfunction Syncer(options) {\n\tvar self = this;\n\tthis.wiki = options.wiki;\n\t// Save parameters\n\tthis.syncadaptor = options.syncadaptor;\n\tthis.disableUI = !!options.disableUI;\n\tthis.titleIsLoggedIn = options.titleIsLoggedIn || this.titleIsLoggedIn;\n\tthis.titleUserName = options.titleUserName || this.titleUserName;\n\tthis.titleSyncFilter = options.titleSyncFilter || this.titleSyncFilter;\n\tthis.titleSavedNotification = options.titleSavedNotification || this.titleSavedNotification;\n\tthis.taskTimerInterval = options.taskTimerInterval || this.taskTimerInterval;\n\tthis.throttleInterval = options.throttleInterval || parseInt(this.wiki.getTiddlerText(this.titleSyncThrottleInterval,\"\"),10) || this.throttleInterval;\n\tthis.errorRetryInterval = options.errorRetryInterval || this.errorRetryInterval;\n\tthis.fallbackInterval = options.fallbackInterval || this.fallbackInterval;\n\tthis.pollTimerInterval = options.pollTimerInterval || parseInt(this.wiki.getTiddlerText(this.titleSyncPollingInterval,\"\"),10) || this.pollTimerInterval;\n\tthis.logging = \"logging\" in options ? options.logging : true;\n\t// Make a logger\n\tthis.logger = new $tw.utils.Logger(\"syncer\" + ($tw.browser ? \"-browser\" : \"\") + ($tw.node ? \"-server\" : \"\")  + (this.syncadaptor.name ? (\"-\" + this.syncadaptor.name) : \"\"),{\n\t\tcolour: \"cyan\",\n\t\tenable: this.logging,\n\t\tsaveHistory: true\n\t});\n\t// Make another logger for connection errors\n\tthis.loggerConnection = new $tw.utils.Logger(\"syncer\" + ($tw.browser ? \"-browser\" : \"\") + ($tw.node ? \"-server\" : \"\")  + (this.syncadaptor.name ? (\"-\" + this.syncadaptor.name) : \"\") + \"-connection\",{\n\t\tcolour: \"cyan\",\n\t\tenable: this.logging\n\t});\n\t// Ask the syncadaptor to use the main logger\n\tif(this.syncadaptor.setLoggerSaveBuffer) {\n\t\tthis.syncadaptor.setLoggerSaveBuffer(this.logger);\n\t}\n\t// Compile the dirty tiddler filter\n\tthis.filterFn = this.wiki.compileFilter(this.wiki.getTiddlerText(this.titleSyncFilter));\n\t// Record information for known tiddlers\n\tthis.readTiddlerInfo();\n\tthis.titlesToBeLoaded = {}; // Hashmap of titles of tiddlers that need loading from the server\n\tthis.titlesHaveBeenLazyLoaded = {}; // Hashmap of titles of tiddlers that have already been lazily loaded from the server\n\t// Timers\n\tthis.taskTimerId = null; // Timer for task dispatch\n\tthis.pollTimerId = null; // Timer for polling server\n\t// Number of outstanding requests\n\tthis.numTasksInProgress = 0;\n\t// Listen out for changes to tiddlers\n\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\t// Filter the changes to just include ones that are being synced\n\t\tvar filteredChanges = self.getSyncedTiddlers(function(callback) {\n\t\t\t$tw.utils.each(changes,function(change,title) {\n\t\t\t\tvar tiddler = self.wiki.tiddlerExists(title) && self.wiki.getTiddler(title);\n\t\t\t\tcallback(tiddler,title);\n\t\t\t});\n\t\t});\n\t\tif(filteredChanges.length > 0) {\n\t\t\tself.processTaskQueue();\n\t\t} else {\n\t\t\t// Look for deletions of tiddlers we're already syncing\t\n\t\t\tvar outstandingDeletion = false\n\t\t\t$tw.utils.each(changes,function(change,title,object) {\n\t\t\t\tif(change.deleted && $tw.utils.hop(self.tiddlerInfo,title)) {\n\t\t\t\t\toutstandingDeletion = true;\n\t\t\t\t}\n\t\t\t});\n\t\t\tif(outstandingDeletion) {\n\t\t\t\tself.processTaskQueue();\n\t\t\t}\n\t\t}\n\t});\n\t// Browser event handlers\n\tif($tw.browser && !this.disableUI) {\n\t\t// Set up our beforeunload handler\n\t\t$tw.addUnloadTask(function(event) {\n\t\t\tvar confirmationMessage;\n\t\t\tif(self.isDirty()) {\n\t\t\t\tconfirmationMessage = $tw.language.getString(\"UnsavedChangesWarning\");\n\t\t\t\tevent.returnValue = confirmationMessage; // Gecko\n\t\t\t}\n\t\t\treturn confirmationMessage;\n\t\t});\n\t\t// Listen out for login/logout/refresh events in the browser\n\t\t$tw.rootWidget.addEventListener(\"tm-login\",function(event) {\n\t\t\tvar username = event && event.paramObject && event.paramObject.username,\n\t\t\t\tpassword = event && event.paramObject && event.paramObject.password;\n\t\t\tif(username && password) {\n\t\t\t\t// Login with username and password\n\t\t\t\tself.login(username,password,function() {});\n\t\t\t} else {\n\t\t\t\t// No username and password, so we display a prompt\n\t\t\t\tself.handleLoginEvent();\t\t\t\t\n\t\t\t}\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-logout\",function() {\n\t\t\tself.handleLogoutEvent();\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-server-refresh\",function() {\n\t\t\tself.handleRefreshEvent();\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-copy-syncer-logs-to-clipboard\",function() {\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getSystemInfo() + \"\\n\\nLog:\\n\" + self.logger.getBuffer());\n\t\t});\n\t}\n\t// Listen out for lazyLoad events\n\tif(!this.disableUI && this.wiki.getTiddlerText(this.titleSyncDisableLazyLoading) !== \"yes\") {\n\t\tthis.wiki.addEventListener(\"lazyLoad\",function(title) {\n\t\t\tself.handleLazyLoadEvent(title);\n\t\t});\t\t\n\t}\n\t// Get the login status\n\tthis.getStatus(function(err,isLoggedIn) {\n\t\t// Do a sync from the server\n\t\tself.syncFromServer();\n\t});\n}\n\n/*\nShow a generic network error alert\n*/\nSyncer.prototype.displayError = function(msg,err) {\n\tif(err === ($tw.language.getString(\"Error/XMLHttpRequest\") + \": 0\")) {\n\t\tthis.loggerConnection.alert($tw.language.getString(\"Error/NetworkErrorAlert\"));\n\t\tthis.logger.log(msg + \":\",err);\n\t} else {\n\t\tthis.logger.alert(msg + \":\",err);\n\t}\n};\n\n/*\nReturn an array of the tiddler titles that are subjected to syncing\n*/\nSyncer.prototype.getSyncedTiddlers = function(source) {\n\treturn this.filterFn.call(this.wiki,source);\n};\n\n/*\nReturn an array of the tiddler titles that are subjected to syncing\n*/\nSyncer.prototype.getTiddlerRevision = function(title) {\n\tif(this.syncadaptor && this.syncadaptor.getTiddlerRevision) {\n\t\treturn this.syncadaptor.getTiddlerRevision(title);\n\t} else {\n\t\treturn this.wiki.getTiddler(title).fields.revision;\t\n\t} \n};\n\n/*\nRead (or re-read) the latest tiddler info from the store\n*/\nSyncer.prototype.readTiddlerInfo = function() {\n\t// Hashmap by title of {revision:,changeCount:,adaptorInfo:}\n\t// \"revision\" is the revision of the tiddler last seen on the server, and \"changecount\" is the corresponding local changecount\n\tthis.tiddlerInfo = {};\n\t// Record information for known tiddlers\n\tvar self = this,\n\t\ttiddlers = this.getSyncedTiddlers();\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tself.tiddlerInfo[title] = {\n\t\t\t\trevision: self.getTiddlerRevision(title),\n\t\t\t\tadaptorInfo: self.syncadaptor && self.syncadaptor.getTiddlerInfo(tiddler),\n\t\t\t\tchangeCount: self.wiki.getChangeCount(title)\n\t\t\t};\n\t\t}\n\t});\n};\n\n/*\nChecks whether the wiki is dirty (ie the window shouldn't be closed)\n*/\nSyncer.prototype.isDirty = function() {\n\tthis.logger.log(\"Checking dirty status\");\n\t// Check tiddlers that are in the store and included in the filter function\n\tvar titles = this.getSyncedTiddlers();\n\tfor(var index=0; index<titles.length; index++) {\n\t\tvar title = titles[index],\n\t\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\tif(this.wiki.tiddlerExists(title)) {\n\t\t\tif(tiddlerInfo) {\n\t\t\t\t// If the tiddler is known on the server and has been modified locally then it needs to be saved to the server\n\t\t\t\tif(this.wiki.getChangeCount(title) > tiddlerInfo.changeCount) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// If the tiddler isn't known on the server then it needs to be saved to the server\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\t// Check tiddlers that are known from the server but not currently in the store\n\ttitles = Object.keys(this.tiddlerInfo);\n\tfor(index=0; index<titles.length; index++) {\n\t\tif(!this.wiki.tiddlerExists(titles[index])) {\n\t\t\t// There must be a pending delete\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nUpdate the document body with the class \"tc-dirty\" if the wiki has unsaved/unsynced changes\n*/\nSyncer.prototype.updateDirtyStatus = function() {\n\tif($tw.browser && !this.disableUI) {\n\t\tvar dirty = this.isDirty();\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",dirty);\n\t\tif(!dirty) {\n\t\t\tthis.loggerConnection.clearAlerts();\n\t\t}\n\t}\n};\n\n/*\nSave an incoming tiddler in the store, and updates the associated tiddlerInfo\n*/\nSyncer.prototype.storeTiddler = function(tiddlerFields) {\n\t// Save the tiddler\n\tvar tiddler = new $tw.Tiddler(tiddlerFields);\n\tthis.wiki.addTiddler(tiddler);\n\t// Save the tiddler revision and changeCount details\n\tthis.tiddlerInfo[tiddlerFields.title] = {\n\t\trevision: this.getTiddlerRevision(tiddlerFields.title),\n\t\tadaptorInfo: this.syncadaptor.getTiddlerInfo(tiddler),\n\t\tchangeCount: this.wiki.getChangeCount(tiddlerFields.title)\n\t};\n};\n\nSyncer.prototype.getStatus = function(callback) {\n\tvar self = this;\n\t// Check if the adaptor supports getStatus()\n\tif(this.syncadaptor && this.syncadaptor.getStatus) {\n\t\t// Mark us as not logged in\n\t\tthis.wiki.addTiddler({title: this.titleIsLoggedIn,text: \"no\"});\n\t\t// Get login status\n\t\tthis.syncadaptor.getStatus(function(err,isLoggedIn,username,isReadOnly,isAnonymous) {\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert(err);\n\t\t\t} else {\n\t\t\t\t// Set the various status tiddlers\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsReadOnly,text: isReadOnly ? \"yes\" : \"no\"});\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsAnonymous,text: isAnonymous ? \"yes\" : \"no\"});\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsLoggedIn,text: isLoggedIn ? \"yes\" : \"no\"});\n\t\t\t\tif(isLoggedIn) {\n\t\t\t\t\tself.wiki.addTiddler({title: self.titleUserName,text: username || \"\"});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Invoke the callback\n\t\t\tif(callback) {\n\t\t\t\tcallback(err,isLoggedIn,username);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tcallback(null,true,\"UNAUTHENTICATED\");\n\t}\n};\n\n/*\nSynchronise from the server by reading the skinny tiddler list and queuing up loads for any tiddlers that we don't already have up to date\n*/\nSyncer.prototype.syncFromServer = function() {\n\tvar self = this,\n\t\tcancelNextSync = function() {\n\t\t\tif(self.pollTimerId) {\n\t\t\t\tclearTimeout(self.pollTimerId);\n\t\t\t\tself.pollTimerId = null;\n\t\t\t}\n\t\t},\n\t\ttriggerNextSync = function() {\n\t\t\tself.pollTimerId = setTimeout(function() {\n\t\t\t\tself.pollTimerId = null;\n\t\t\t\tself.syncFromServer.call(self);\n\t\t\t},self.pollTimerInterval);\n\t\t},\n\t\tsyncSystemFromServer = (self.wiki.getTiddlerText(\"$:/config/SyncSystemTiddlersFromServer\") === \"yes\" ? true : false);\n\tif(this.syncadaptor && this.syncadaptor.getUpdatedTiddlers) {\n\t\tthis.logger.log(\"Retrieving updated tiddler list\");\n\t\tcancelNextSync();\n\t\tthis.syncadaptor.getUpdatedTiddlers(self,function(err,updates) {\n\t\t\ttriggerNextSync();\n\t\t\tif(err) {\n\t\t\t\tself.displayError($tw.language.getString(\"Error/RetrievingSkinny\"),err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif(updates) {\n\t\t\t\t$tw.utils.each(updates.modifications,function(title) {\n\t\t\t\t\tself.titlesToBeLoaded[title] = true;\n\t\t\t\t});\n\t\t\t\t$tw.utils.each(updates.deletions,function(title) {\n\t\t\t\t\tif(syncSystemFromServer || !self.wiki.isSystemTiddler(title)) {\n\t\t\t\t\t\tdelete self.tiddlerInfo[title];\n\t\t\t\t\t\tself.logger.log(\"Deleting tiddler missing from server:\",title);\n\t\t\t\t\t\tself.wiki.deleteTiddler(title);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif(updates.modifications.length > 0 || updates.deletions.length > 0) {\n\t\t\t\t\tself.processTaskQueue();\n\t\t\t\t}\t\t\t\t\n\t\t\t}\n\t\t});\n\t} else if(this.syncadaptor && this.syncadaptor.getSkinnyTiddlers) {\n\t\tthis.logger.log(\"Retrieving skinny tiddler list\");\n\t\tcancelNextSync();\n\t\tthis.syncadaptor.getSkinnyTiddlers(function(err,tiddlers) {\n\t\t\ttriggerNextSync();\n\t\t\t// Check for errors\n\t\t\tif(err) {\n\t\t\t\tself.displayError($tw.language.getString(\"Error/RetrievingSkinny\"),err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Keep track of which tiddlers we already know about have been reported this time\n\t\t\tvar previousTitles = Object.keys(self.tiddlerInfo);\n\t\t\t// Process each incoming tiddler\n\t\t\tfor(var t=0; t<tiddlers.length; t++) {\n\t\t\t\t// Get the incoming tiddler fields, and the existing tiddler\n\t\t\t\tvar tiddlerFields = tiddlers[t],\n\t\t\t\t\tincomingRevision = tiddlerFields.revision + \"\",\n\t\t\t\t\ttiddler = self.wiki.tiddlerExists(tiddlerFields.title) && self.wiki.getTiddler(tiddlerFields.title),\n\t\t\t\t\ttiddlerInfo = self.tiddlerInfo[tiddlerFields.title],\n\t\t\t\t\tcurrRevision = tiddlerInfo ? tiddlerInfo.revision : null,\n\t\t\t\t\tindexInPreviousTitles = previousTitles.indexOf(tiddlerFields.title);\n\t\t\t\tif(indexInPreviousTitles !== -1) {\n\t\t\t\t\tpreviousTitles.splice(indexInPreviousTitles,1);\n\t\t\t\t}\n\t\t\t\t// Ignore the incoming tiddler if it's the same as the revision we've already got\n\t\t\t\tif(currRevision !== incomingRevision) {\n\t\t\t\t\t// Only load the skinny version if we don't already have a fat version of the tiddler\n\t\t\t\t\tif(!tiddler || tiddler.fields.text === undefined) {\n\t\t\t\t\t\tself.storeTiddler(tiddlerFields);\n\t\t\t\t\t}\n\t\t\t\t\t// Do a full load of this tiddler\n\t\t\t\t\tself.titlesToBeLoaded[tiddlerFields.title] = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Delete any tiddlers that were previously reported but missing this time\n\t\t\t$tw.utils.each(previousTitles,function(title) {\n\t\t\t\tif(syncSystemFromServer || !self.wiki.isSystemTiddler(title)) {\n\t\t\t\t\tdelete self.tiddlerInfo[title];\n\t\t\t\t\tself.logger.log(\"Deleting tiddler missing from server:\",title);\n\t\t\t\t\tself.wiki.deleteTiddler(title);\n\t\t\t\t}\n\t\t\t});\n\t\t\tself.processTaskQueue();\n\t\t});\n\t}\n};\n\n/*\nForce load a tiddler from the server\n*/\nSyncer.prototype.enqueueLoadTiddler = function(title) {\n\tthis.titlesToBeLoaded[title] = true;\n\tthis.processTaskQueue();\n};\n\n/*\nLazily load a skinny tiddler if we can\n*/\nSyncer.prototype.handleLazyLoadEvent = function(title) {\n\t// Ignore if the syncadaptor doesn't handle it\n\tif(!this.syncadaptor.supportsLazyLoading) {\n\t\treturn;\n\t}\n\t// Don't lazy load the same tiddler twice\n\tif(!this.titlesHaveBeenLazyLoaded[title]) {\n\t\t// Don't lazy load if the tiddler isn't included in the sync filter\n\t\tif(this.getSyncedTiddlers().indexOf(title) !== -1) {\n\t\t\t// Mark the tiddler as needing loading, and having already been lazily loaded\n\t\t\tthis.titlesToBeLoaded[title] = true;\n\t\t\tthis.titlesHaveBeenLazyLoaded[title] = true;\n\t\t}\n\t}\n};\n\n/*\nDispay a password prompt and allow the user to login\n*/\nSyncer.prototype.handleLoginEvent = function() {\n\tvar self = this;\n\tthis.getStatus(function(err,isLoggedIn,username) {\n\t\tif(!err && !isLoggedIn) {\n\t\t\tif(self.syncadaptor && self.syncadaptor.displayLoginPrompt) {\n\t\t\t\tself.syncadaptor.displayLoginPrompt(self);\n\t\t\t} else {\n\t\t\t\tself.displayLoginPrompt();\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nDispay a password prompt\n*/\nSyncer.prototype.displayLoginPrompt = function() {\n\tvar self = this;\n\tvar promptInfo = $tw.passwordPrompt.createPrompt({\n\t\tserviceName: $tw.language.getString(\"LoginToTiddlySpace\"),\n\t\tcallback: function(data) {\n\t\t\tself.login(data.username,data.password,function(err,isLoggedIn) {\n\t\t\t\tself.syncFromServer();\n\t\t\t});\n\t\t\treturn true; // Get rid of the password prompt\n\t\t}\n\t});\n};\n\n/*\nAttempt to login to TiddlyWeb.\n\tusername: username\n\tpassword: password\n\tcallback: invoked with arguments (err,isLoggedIn)\n*/\nSyncer.prototype.login = function(username,password,callback) {\n\tthis.logger.log(\"Attempting to login as\",username);\n\tvar self = this;\n\tif(this.syncadaptor.login) {\n\t\tthis.syncadaptor.login(username,password,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tself.getStatus(function(err,isLoggedIn,username) {\n\t\t\t\tif(callback) {\n\t\t\t\t\tcallback(err,isLoggedIn);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t} else {\n\t\tcallback(null,true);\n\t}\n};\n\n/*\nAttempt to log out of TiddlyWeb\n*/\nSyncer.prototype.handleLogoutEvent = function() {\n\tthis.logger.log(\"Attempting to logout\");\n\tvar self = this;\n\tif(this.syncadaptor.logout) {\n\t\tthis.syncadaptor.logout(function(err) {\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert(err);\n\t\t\t} else {\n\t\t\t\tself.getStatus();\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nImmediately refresh from the server\n*/\nSyncer.prototype.handleRefreshEvent = function() {\n\tthis.syncFromServer();\n};\n\n/*\nProcess the next task\n*/\nSyncer.prototype.processTaskQueue = function() {\n\tvar self = this;\n\t// Only process a task if the sync adaptor is fully initialised and we're not already performing\n\t// a task. If we are already performing a task then we'll dispatch the next one when it completes\n\tif((!this.syncadaptor.isReady || this.syncadaptor.isReady()) && this.numTasksInProgress === 0) {\n\t\t// Choose the next task to perform\n\t\tvar task = this.chooseNextTask();\n\t\t// Perform the task if we had one\n\t\tif(typeof task === \"object\" && task !== null) {\n\t\t\tthis.numTasksInProgress += 1;\n\t\t\ttask.run(function(err) {\n\t\t\t\tself.numTasksInProgress -= 1;\n\t\t\t\tif(err) {\n\t\t\t\t\tself.displayError(\"Sync error while processing \" + task.type + \" of '\" + task.title + \"'\",err);\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t\tself.triggerTimeout(self.errorRetryInterval);\n\t\t\t\t} else {\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t\t// Process the next task\n\t\t\t\t\tself.processTaskQueue.call(self);\t\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t// No task is ready so update the status\n\t\t\tthis.updateDirtyStatus();\n\t\t\t// And trigger a timeout if there is a pending task\n\t\t\tif(task === true) {\n\t\t\t\tthis.triggerTimeout();\t\t\t\t\n\t\t\t}\n\t\t}\n\t} else {\n\t\tthis.updateDirtyStatus();\t\t\n\t}\n};\n\nSyncer.prototype.triggerTimeout = function(interval) {\n\tvar self = this;\n\tif(!this.taskTimerId) {\n\t\tthis.taskTimerId = setTimeout(function() {\n\t\t\tself.taskTimerId = null;\n\t\t\tself.processTaskQueue.call(self);\n\t\t},interval || self.taskTimerInterval);\n\t}\n};\n\n/*\nChoose the next sync task. We prioritise saves, then deletes, then loads from the server\n\nReturns either a task object, null if there's no upcoming tasks, or the boolean true if there are pending tasks that aren't yet due\n*/\nSyncer.prototype.chooseNextTask = function() {\n\tvar thresholdLastSaved = (new Date()) - this.throttleInterval,\n\t\thavePending = null;\n\t// First we look for tiddlers that have been modified locally and need saving back to the server\n\tvar titles = this.getSyncedTiddlers();\n\tfor(var index=0; index<titles.length; index++) {\n\t\tvar title = titles[index],\n\t\t\ttiddler = this.wiki.tiddlerExists(title) && this.wiki.getTiddler(title),\n\t\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\tif(tiddler) {\n\t\t\t// If the tiddler is not known on the server, or has been modified locally no more recently than the threshold then it needs to be saved to the server\n\t\t\tvar hasChanged = !tiddlerInfo || this.wiki.getChangeCount(title) > tiddlerInfo.changeCount,\n\t\t\t\tisReadyToSave = !tiddlerInfo || !tiddlerInfo.timestampLastSaved || tiddlerInfo.timestampLastSaved < thresholdLastSaved;\n\t\t\tif(hasChanged) {\n\t\t\t\tif(isReadyToSave) {\n\t\t\t\t\treturn new SaveTiddlerTask(this,title); \t\t\t\t\t\n\t\t\t\t} else {\n\t\t\t\t\thavePending = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Second, we check tiddlers that are known from the server but not currently in the store, and so need deleting on the server\n\ttitles = Object.keys(this.tiddlerInfo);\n\tfor(index=0; index<titles.length; index++) {\n\t\ttitle = titles[index];\n\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\ttiddler = this.wiki.tiddlerExists(title) && this.wiki.getTiddler(title);\n\t\tif(!tiddler) {\n\t\t\treturn new DeleteTiddlerTask(this,title);\n\t\t}\n\t}\n\t// Check for tiddlers that need loading\n\ttitle = Object.keys(this.titlesToBeLoaded)[0];\n\tif(title) {\n\t\tdelete this.titlesToBeLoaded[title];\n\t\treturn new LoadTiddlerTask(this,title);\n\t}\n\t// No tasks are ready\n\treturn havePending;\n};\n\nfunction SaveTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"save\";\n}\n\nSaveTiddlerTask.prototype.run = function(callback) {\n\tvar self = this,\n\t\tchangeCount = this.syncer.wiki.getChangeCount(this.title),\n\t\ttiddler = this.syncer.wiki.tiddlerExists(this.title) && this.syncer.wiki.getTiddler(this.title);\n\tthis.syncer.logger.log(\"Dispatching 'save' task:\",this.title);\n\tif(tiddler) {\n\t\tthis.syncer.syncadaptor.saveTiddler(tiddler,function(err,adaptorInfo,revision) {\n\t\t\t// If there's an error, exit without changing any internal state\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\t// Adjust the info stored about this tiddler\n\t\t\tself.syncer.tiddlerInfo[self.title] = {\n\t\t\t\tchangeCount: changeCount,\n\t\t\t\tadaptorInfo: adaptorInfo,\n\t\t\t\trevision: revision,\n\t\t\t\ttimestampLastSaved: new Date()\n\t\t\t};\n\t\t\t// Invoke the callback\n\t\t\tcallback(null);\n\t\t},{\n\t\t\ttiddlerInfo: self.syncer.tiddlerInfo[self.title]\n\t\t});\n\t} else {\n\t\tthis.syncer.logger.log(\" Not Dispatching 'save' task:\",this.title,\"tiddler does not exist\");\n\t\t$tw.utils.nextTick(callback(null));\n\t}\n};\n\nfunction DeleteTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"delete\";\n}\n\nDeleteTiddlerTask.prototype.run = function(callback) {\n\tvar self = this;\n\tthis.syncer.logger.log(\"Dispatching 'delete' task:\",this.title);\n\tthis.syncer.syncadaptor.deleteTiddler(this.title,function(err) {\n\t\t// If there's an error, exit without changing any internal state\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\t// Remove the info stored about this tiddler\n\t\tdelete self.syncer.tiddlerInfo[self.title];\n\t\tif($tw.boot.files){\n\t\t\t// Remove the tiddler from $tw.boot.files\n\t\t\tdelete $tw.boot.files[self.title];\n\t\t}\n\t\t// Invoke the callback\n\t\tcallback(null);\n\t},{\n\t\ttiddlerInfo: self.syncer.tiddlerInfo[this.title]\n\t});\n};\n\nfunction LoadTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"load\";\n}\n\nLoadTiddlerTask.prototype.run = function(callback) {\n\tvar self = this;\n\tthis.syncer.logger.log(\"Dispatching 'load' task:\",this.title);\n\tthis.syncer.syncadaptor.loadTiddler(this.title,function(err,tiddlerFields) {\n\t\t// If there's an error, exit without changing any internal state\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\t// Update the info stored about this tiddler\n\t\tif(tiddlerFields) {\n\t\t\tself.syncer.storeTiddler(tiddlerFields);\n\t\t}\n\t\t// Invoke the callback\n\t\tcallback(null);\n\t});\n};\n\nexports.Syncer = Syncer;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/tiddler.js": {
            "title": "$:/core/modules/tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/tiddler.js\ntype: application/javascript\nmodule-type: tiddlermethod\n\nExtension methods for the $tw.Tiddler object (constructor and methods required at boot time are in boot/boot.js)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.hasTag = function(tag) {\n\treturn this.fields.tags && this.fields.tags.indexOf(tag) !== -1;\n};\n\nexports.isPlugin = function() {\n\treturn this.fields.type === \"application/json\" && this.hasField(\"plugin-type\");\n};\n\nexports.isDraft = function() {\n\treturn this.hasField(\"draft.of\");\n};\n\nexports.getFieldString = function(field) {\n\tvar value = this.fields[field];\n\t// Check for a missing field\n\tif(value === undefined || value === null) {\n\t\treturn \"\";\n\t}\n\t// Parse the field with the associated module (if any)\n\tvar fieldModule = $tw.Tiddler.fieldModules[field];\n\tif(fieldModule && fieldModule.stringify) {\n\t\treturn fieldModule.stringify.call(this,value);\n\t} else {\n\t\treturn value.toString();\n\t}\n};\n\n/*\nGet the value of a field as a list\n*/\nexports.getFieldList = function(field) {\n\tvar value = this.fields[field];\n\t// Check for a missing field\n\tif(value === undefined || value === null) {\n\t\treturn [];\n\t}\n\treturn $tw.utils.parseStringArray(value);\n};\n\n/*\nGet all the fields as a hashmap of strings. Options:\n\texclude: an array of field names to exclude\n*/\nexports.getFieldStrings = function(options) {\n\toptions = options || {};\n\tvar exclude = options.exclude || [];\n\tvar fields = {};\n\tfor(var field in this.fields) {\n\t\tif($tw.utils.hop(this.fields,field)) {\n\t\t\tif(exclude.indexOf(field) === -1) {\n\t\t\t\tfields[field] = this.getFieldString(field);\n\t\t\t}\n\t\t}\n\t}\n\treturn fields;\n};\n\n/*\nGet all the fields as a name:value block. Options:\n\texclude: an array of field names to exclude\n*/\nexports.getFieldStringBlock = function(options) {\n\toptions = options || {};\n\tvar exclude = options.exclude || [],\n\t\tfields = Object.keys(this.fields).sort(),\n\t\tresult = [];\n\tfor(var t=0; t<fields.length; t++) {\n\t\tvar field = fields[t];\n\t\tif(exclude.indexOf(field) === -1) {\n\t\t\tresult.push(field + \": \" + this.getFieldString(field));\n\t\t}\n\t}\n\treturn result.join(\"\\n\");\n};\n\nexports.getFieldDay = function(field) {\n\tif(this.cache && this.cache.day && $tw.utils.hop(this.cache.day,field) ) {\n\t\treturn this.cache.day[field];\n\t}\n\tvar day = \"\";\n\tif(this.fields[field]) {\n\t\tday = (new Date($tw.utils.parseDate(this.fields[field]))).setHours(0,0,0,0);\n\t}\n\tthis.cache.day = this.cache.day || {};\n\tthis.cache.day[field] = day;\n\treturn day;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "tiddlermethod"
        },
        "$:/core/modules/upgraders/plugins.js": {
            "title": "$:/core/modules/upgraders/plugins.js",
            "text": "/*\\\ntitle: $:/core/modules/upgraders/plugins.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that checks that plugins are newer than any already installed version\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar UPGRADE_LIBRARY_TITLE = \"$:/UpgradeLibrary\";\n\nvar BLOCKED_PLUGINS = {\n\t\"$:/themes/tiddlywiki/stickytitles\": {\n\t\tversions: [\"*\"]\n\t},\n\t\"$:/plugins/tiddlywiki/fullscreen\": {\n\t\tversions: [\"*\"]\n\t}\n};\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {},\n\t\tupgradeLibrary,\n\t\tgetLibraryTiddler = function(title) {\n\t\t\tif(!upgradeLibrary) {\n\t\t\t\tupgradeLibrary = wiki.getTiddlerData(UPGRADE_LIBRARY_TITLE,{});\n\t\t\t\tupgradeLibrary.tiddlers = upgradeLibrary.tiddlers || {};\n\t\t\t}\n\t\t\treturn upgradeLibrary.tiddlers[title];\n\t\t};\n\n\t// Go through all the incoming tiddlers\n\t$tw.utils.each(titles,function(title) {\n\t\tvar incomingTiddler = tiddlers[title];\n\t\t// Check if we're dealing with a plugin\n\t\tif(incomingTiddler && incomingTiddler[\"plugin-type\"]) {\n\t\t\t// Check whether the plugin contains JS modules\n\t\t\tvar requiresReload = wiki.doesPluginInfoRequireReload(JSON.parse(incomingTiddler.text)) ? (wiki.getTiddlerText(\"$:/language/ControlPanel/Plugins/PluginWillRequireReload\") + \" \") : \"\";\n\t\t\tmessages[title] = requiresReload;\n\t\t\tif(incomingTiddler.version) {\n\t\t\t\t// Upgrade the incoming plugin if it is in the upgrade library\n\t\t\t\tvar libraryTiddler = getLibraryTiddler(title);\n\t\t\t\tif(libraryTiddler && libraryTiddler[\"plugin-type\"] && libraryTiddler.version) {\n\t\t\t\t\ttiddlers[title] = libraryTiddler;\n\t\t\t\t\tmessages[title] = requiresReload + $tw.language.getString(\"Import/Upgrader/Plugins/Upgraded\",{variables: {incoming: incomingTiddler.version, upgraded: libraryTiddler.version}});\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t// Suppress the incoming plugin if it is older than the currently installed one\n\t\t\t\tvar existingTiddler = wiki.getTiddler(title);\n\t\t\t\tif(existingTiddler && existingTiddler.hasField(\"plugin-type\") && existingTiddler.hasField(\"version\")) {\n\t\t\t\t\t// Reject the incoming plugin by blanking all its fields\n\t\t\t\t\tif($tw.utils.checkVersions(existingTiddler.fields.version,incomingTiddler.version)) {\n\t\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/Plugins/Suppressed/Version\",{variables: {incoming: incomingTiddler.version, existing: existingTiddler.fields.version}});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Check whether the plugin is on the blocked list\n\t\t\tvar blockInfo = BLOCKED_PLUGINS[title];\n\t\t\tif(blockInfo) {\n\t\t\t\tif(blockInfo.versions.indexOf(\"*\") !== -1 || (incomingTiddler.version && blockInfo.versions.indexOf(incomingTiddler.version) !== -1)) {\n\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/Plugins/Suppressed/Incompatible\");\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn messages;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "upgrader"
        },
        "$:/core/modules/upgraders/system.js": {
            "title": "$:/core/modules/upgraders/system.js",
            "text": "/*\\\ntitle: $:/core/modules/upgraders/system.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that suppresses certain system tiddlers that shouldn't be imported\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DONT_IMPORT_LIST = [\"$:/StoryList\",\"$:/HistoryList\"],\n\tDONT_IMPORT_PREFIX_LIST = [\"$:/temp/\",\"$:/state/\",\"$:/Import\"],\n\tWARN_IMPORT_PREFIX_LIST = [\"$:/core/modules/\"];\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {},\n\t\tshowAlert = false;\n\t// Check for tiddlers on our list\n\t$tw.utils.each(titles,function(title) {\n\t\tif(DONT_IMPORT_LIST.indexOf(title) !== -1) {\n\t\t\ttiddlers[title] = Object.create(null);\n\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/System/Suppressed\");\n\t\t} else {\n\t\t\tfor(var t=0; t<DONT_IMPORT_PREFIX_LIST.length; t++) {\n\t\t\t\tvar prefix = DONT_IMPORT_PREFIX_LIST[t];\n\t\t\t\tif(title.substr(0,prefix.length) === prefix) {\n\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/State/Suppressed\");\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor(var t=0; t<WARN_IMPORT_PREFIX_LIST.length; t++) {\n\t\t\t\tvar prefix = WARN_IMPORT_PREFIX_LIST[t];\n\t\t\t\tif(title.substr(0,prefix.length) === prefix && wiki.isShadowTiddler(title)) {\n\t\t\t\t\tshowAlert = true;\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/System/Warning\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\tif(showAlert) {\n\t\tvar logger = new $tw.utils.Logger(\"import\");\n\t\tlogger.alert($tw.language.getString(\"Import/Upgrader/System/Alert\"));\n\t}\n\treturn messages;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "upgrader"
        },
        "$:/core/modules/upgraders/themetweaks.js": {
            "title": "$:/core/modules/upgraders/themetweaks.js",
            "text": "/*\\\ntitle: $:/core/modules/upgraders/themetweaks.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that handles the change in theme tweak storage introduced in 5.0.14-beta.\n\nPreviously, theme tweaks were stored in two data tiddlers:\n\n* $:/themes/tiddlywiki/vanilla/metrics\n* $:/themes/tiddlywiki/vanilla/settings\n\nNow, each tweak is stored in its own separate tiddler.\n\nThis upgrader copies any values from the old format to the new. The old data tiddlers are not deleted in case they have been used to store additional indexes.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar MAPPINGS = {\n\t\"$:/themes/tiddlywiki/vanilla/metrics\": {\n\t\t\"fontsize\": \"$:/themes/tiddlywiki/vanilla/metrics/fontsize\",\n\t\t\"lineheight\": \"$:/themes/tiddlywiki/vanilla/metrics/lineheight\",\n\t\t\"storyleft\": \"$:/themes/tiddlywiki/vanilla/metrics/storyleft\",\n\t\t\"storytop\": \"$:/themes/tiddlywiki/vanilla/metrics/storytop\",\n\t\t\"storyright\": \"$:/themes/tiddlywiki/vanilla/metrics/storyright\",\n\t\t\"storywidth\": \"$:/themes/tiddlywiki/vanilla/metrics/storywidth\",\n\t\t\"tiddlerwidth\": \"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\"\n\t},\n\t\"$:/themes/tiddlywiki/vanilla/settings\": {\n\t\t\"fontfamily\": \"$:/themes/tiddlywiki/vanilla/settings/fontfamily\"\n\t}\n};\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {};\n\t// Check for tiddlers on our list\n\t$tw.utils.each(titles,function(title) {\n\t\tvar mapping = MAPPINGS[title];\n\t\tif(mapping) {\n\t\t\tvar tiddler = new $tw.Tiddler(tiddlers[title]),\n\t\t\t\ttiddlerData = wiki.getTiddlerDataCached(tiddler,{});\n\t\t\tfor(var index in mapping) {\n\t\t\t\tvar mappedTitle = mapping[index];\n\t\t\t\tif(!tiddlers[mappedTitle] || tiddlers[mappedTitle].title !== mappedTitle) {\n\t\t\t\t\ttiddlers[mappedTitle] = {\n\t\t\t\t\t\ttitle: mappedTitle,\n\t\t\t\t\t\ttext: tiddlerData[index]\n\t\t\t\t\t};\n\t\t\t\t\tmessages[mappedTitle] = $tw.language.getString(\"Import/Upgrader/ThemeTweaks/Created\",{variables: {\n\t\t\t\t\t\tfrom: title + \"##\" + index\n\t\t\t\t\t}});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn messages;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "upgrader"
        },
        "$:/core/modules/utils/base64-utf8/base64-utf8.module.js": {
            "text": "(function(){// From https://gist.github.com/Nijikokun/5192472\n//\n// UTF8 Module\n//\n// Cleaner and modularized utf-8 encoding and decoding library for javascript.\n//\n// copyright: MIT\n// author: Nijiko Yonskai, @nijikokun, nijikokun@gmail.com\n!function(r,e,o,t){void 0!==o.module&&o.module.exports?o.module.exports=e.apply(o):void 0!==o.define&&\"function\"===o.define&&o.define.amd?define(\"utf8\",[],e):o.utf8=e.apply(o)}(0,function(){return{encode:function(r){if(\"string\"!=typeof r)return r;r=r.replace(/\\r\\n/g,\"\\n\");for(var e,o=\"\",t=0;t<r.length;t++)if((e=r.charCodeAt(t))<128)o+=String.fromCharCode(e);else if(e>127&&e<2048)o+=String.fromCharCode(e>>6|192),o+=String.fromCharCode(63&e|128);else if(e>55295&&e<57344&&r.length>t+1){var i=e,n=r.charCodeAt(t+1);t++;var d=65536+(i-55296<<10|n-56320);o+=String.fromCharCode(d>>18|240),o+=String.fromCharCode(d>>12&63|128),o+=String.fromCharCode(d>>6&63|128),o+=String.fromCharCode(63&d|128)}else o+=String.fromCharCode(e>>12|224),o+=String.fromCharCode(e>>6&63|128),o+=String.fromCharCode(63&e|128);return o},decode:function(r){if(\"string\"!=typeof r)return r;for(var e=\"\",o=0,t=0;o<r.length;)if((t=r.charCodeAt(o))<128)e+=String.fromCharCode(t),o++;else if(t>191&&t<224)e+=String.fromCharCode((31&t)<<6|63&r.charCodeAt(o+1)),o+=2;else if(t>223&&t<240)e+=String.fromCharCode((15&t)<<12|(63&r.charCodeAt(o+1))<<6|63&r.charCodeAt(o+2)),o+=3;else{var i=(7&t)<<18|(63&r.charCodeAt(o+1))<<12|(63&r.charCodeAt(o+2))<<6|63&r.charCodeAt(o+3);e+=String.fromCharCode(55296+(i-65536>>10))+String.fromCharCode(56320+(i-65536&1023)),o+=4}return e}}},this),function(r,e,o,t){if(void 0!==o.module&&o.module.exports){if(t&&o.require)for(var i=0;i<t.length;i++)o[t[i]]=o.require(t[i]);o.module.exports=e.apply(o)}else void 0!==o.define&&\"function\"===o.define&&o.define.amd?define(\"base64\",t||[],e):o.base64=e.apply(o)}(0,function(r){var e=r||this.utf8,o=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";return{encode:function(r){if(void 0===e)throw{error:\"MissingMethod\",message:\"UTF8 Module is missing.\"};if(\"string\"!=typeof r)return r;r=e.encode(r);for(var t,i,n,d,f,a,h,C=\"\",c=0;c<r.length;)d=(t=r.charCodeAt(c++))>>2,f=(3&t)<<4|(i=r.charCodeAt(c++))>>4,a=(15&i)<<2|(n=r.charCodeAt(c++))>>6,h=63&n,isNaN(i)?a=h=64:isNaN(n)&&(h=64),C+=o.charAt(d)+o.charAt(f)+o.charAt(a)+o.charAt(h);return C},decode:function(r){if(void 0===e)throw{error:\"MissingMethod\",message:\"UTF8 Module is missing.\"};if(\"string\"!=typeof r)return r;r=r.replace(/[^A-Za-z0-9\\+\\/\\=]/g,\"\");for(var t,i,n,d,f,a,h=\"\",C=0;C<r.length;)t=o.indexOf(r.charAt(C++))<<2|(d=o.indexOf(r.charAt(C++)))>>4,i=(15&d)<<4|(f=o.indexOf(r.charAt(C++)))>>2,n=(3&f)<<6|(a=o.indexOf(r.charAt(C++))),h+=String.fromCharCode(t),64!=f&&(h+=String.fromCharCode(i)),64!=a&&(h+=String.fromCharCode(n));return e.decode(h)}}},this,[\"utf8\"]);}).call(exports);",
            "type": "application/javascript",
            "title": "$:/core/modules/utils/base64-utf8/base64-utf8.module.js",
            "module-type": "library"
        },
        "$:/core/modules/utils/crypto.js": {
            "title": "$:/core/modules/utils/crypto.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/crypto.js\ntype: application/javascript\nmodule-type: utils\n\nUtility functions related to crypto.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nLook for an encrypted store area in the text of a TiddlyWiki file\n*/\nexports.extractEncryptedStoreArea = function(text) {\n\tvar encryptedStoreAreaStartMarker = \"<pre id=\\\"encryptedStoreArea\\\" type=\\\"text/plain\\\" style=\\\"display:none;\\\">\",\n\t\tencryptedStoreAreaStart = text.indexOf(encryptedStoreAreaStartMarker);\n\tif(encryptedStoreAreaStart !== -1) {\n\t\tvar encryptedStoreAreaEnd = text.indexOf(\"</pre>\",encryptedStoreAreaStart);\n\t\tif(encryptedStoreAreaEnd !== -1) {\n\t\t\treturn $tw.utils.htmlDecode(text.substring(encryptedStoreAreaStart + encryptedStoreAreaStartMarker.length,encryptedStoreAreaEnd-1));\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nAttempt to extract the tiddlers from an encrypted store area using the current password. If the password is not provided then the password in the password store will be used\n*/\nexports.decryptStoreArea = function(encryptedStoreArea,password) {\n\tvar decryptedText = $tw.crypto.decrypt(encryptedStoreArea,password);\n\tif(decryptedText) {\n\t\tvar json = JSON.parse(decryptedText),\n\t\t\ttiddlers = [];\n\t\tfor(var title in json) {\n\t\t\tif(title !== \"$:/isEncrypted\") {\n\t\t\t\ttiddlers.push(json[title]);\n\t\t\t}\n\t\t}\n\t\treturn tiddlers;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n\n/*\nAttempt to extract the tiddlers from an encrypted store area using the current password. If that fails, the user is prompted for a password.\nencryptedStoreArea: text of the TiddlyWiki encrypted store area\ncallback: function(tiddlers) called with the array of decrypted tiddlers\n\nThe following configuration settings are supported:\n\n$tw.config.usePasswordVault: causes any password entered by the user to also be put into the system password vault\n*/\nexports.decryptStoreAreaInteractive = function(encryptedStoreArea,callback,options) {\n\t// Try to decrypt with the current password\n\tvar tiddlers = $tw.utils.decryptStoreArea(encryptedStoreArea);\n\tif(tiddlers) {\n\t\tcallback(tiddlers);\n\t} else {\n\t\t// Prompt for a new password and keep trying\n\t\t$tw.passwordPrompt.createPrompt({\n\t\t\tserviceName: \"Enter a password to decrypt the imported TiddlyWiki\",\n\t\t\tnoUserName: true,\n\t\t\tcanCancel: true,\n\t\t\tsubmitText: \"Decrypt\",\n\t\t\tcallback: function(data) {\n\t\t\t\t// Exit if the user cancelled\n\t\t\t\tif(!data) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\t// Attempt to decrypt the tiddlers\n\t\t\t\tvar tiddlers = $tw.utils.decryptStoreArea(encryptedStoreArea,data.password);\n\t\t\t\tif(tiddlers) {\n\t\t\t\t\tif($tw.config.usePasswordVault) {\n\t\t\t\t\t\t$tw.crypto.setPassword(data.password);\n\t\t\t\t\t}\n\t\t\t\t\tcallback(tiddlers);\n\t\t\t\t\t// Exit and remove the password prompt\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\t// We didn't decrypt everything, so continue to prompt for password\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/csv.js": {
            "title": "$:/core/modules/utils/csv.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/csv.js\ntype: application/javascript\nmodule-type: utils\n\nA barebones CSV parser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParse a CSV string with a header row and return an array of hashmaps.\n*/\nexports.parseCsvStringWithHeader = function(text,options) {\n\toptions = options || {};\n\tvar separator = options.separator || \",\",\n\t\trows = text.split(/\\r?\\n/mg).map(function(row) {\n\t\t\treturn $tw.utils.trim(row);\n\t\t}).filter(function(row) {\n\t\t\treturn row !== \"\";\n\t\t});\n\tif(rows.length < 1) {\n\t\treturn \"Missing header row\";\n\t}\n\tvar headings = rows[0].split(separator),\n\t\tresults = [];\n\tfor(var row=1; row<rows.length; row++) {\n\t\tvar columns = rows[row].split(separator),\n\t\t\tcolumnResult = Object.create(null);\n\t\tif(columns.length !== headings.length) {\n\t\t\treturn \"Malformed CSV row '\" + rows[row] + \"'\";\n\t\t}\n\t\tfor(var column=0; column<columns.length; column++) {\n\t\t\tvar columnName = headings[column];\n\t\t\tcolumnResult[columnName] = $tw.utils.trim(columns[column] || \"\");\n\t\t}\n\t\tresults.push(columnResult);\t\t\t\n\t}\n\treturn results;\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/diff-match-patch/diff_match_patch.js": {
            "text": "(function(){function diff_match_patch(){this.Diff_Timeout=1;this.Diff_EditCost=4;this.Match_Threshold=.5;this.Match_Distance=1E3;this.Patch_DeleteThreshold=.5;this.Patch_Margin=4;this.Match_MaxBits=32}var DIFF_DELETE=-1,DIFF_INSERT=1,DIFF_EQUAL=0;\ndiff_match_patch.prototype.diff_main=function(a,b,c,d){\"undefined\"==typeof d&&(d=0>=this.Diff_Timeout?Number.MAX_VALUE:(new Date).getTime()+1E3*this.Diff_Timeout);if(null==a||null==b)throw Error(\"Null input. (diff_main)\");if(a==b)return a?[[DIFF_EQUAL,a]]:[];\"undefined\"==typeof c&&(c=!0);var e=c,f=this.diff_commonPrefix(a,b);c=a.substring(0,f);a=a.substring(f);b=b.substring(f);f=this.diff_commonSuffix(a,b);var g=a.substring(a.length-f);a=a.substring(0,a.length-f);b=b.substring(0,b.length-f);a=this.diff_compute_(a,\nb,e,d);c&&a.unshift([DIFF_EQUAL,c]);g&&a.push([DIFF_EQUAL,g]);this.diff_cleanupMerge(a);return a};\ndiff_match_patch.prototype.diff_compute_=function(a,b,c,d){if(!a)return[[DIFF_INSERT,b]];if(!b)return[[DIFF_DELETE,a]];var e=a.length>b.length?a:b,f=a.length>b.length?b:a,g=e.indexOf(f);return-1!=g?(c=[[DIFF_INSERT,e.substring(0,g)],[DIFF_EQUAL,f],[DIFF_INSERT,e.substring(g+f.length)]],a.length>b.length&&(c[0][0]=c[2][0]=DIFF_DELETE),c):1==f.length?[[DIFF_DELETE,a],[DIFF_INSERT,b]]:(e=this.diff_halfMatch_(a,b))?(b=e[1],f=e[3],a=e[4],e=this.diff_main(e[0],e[2],c,d),c=this.diff_main(b,f,c,d),e.concat([[DIFF_EQUAL,\na]],c)):c&&100<a.length&&100<b.length?this.diff_lineMode_(a,b,d):this.diff_bisect_(a,b,d)};\ndiff_match_patch.prototype.diff_lineMode_=function(a,b,c){var d=this.diff_linesToChars_(a,b);a=d.chars1;b=d.chars2;d=d.lineArray;a=this.diff_main(a,b,!1,c);this.diff_charsToLines_(a,d);this.diff_cleanupSemantic(a);a.push([DIFF_EQUAL,\"\"]);for(var e=d=b=0,f=\"\",g=\"\";b<a.length;){switch(a[b][0]){case DIFF_INSERT:e++;g+=a[b][1];break;case DIFF_DELETE:d++;f+=a[b][1];break;case DIFF_EQUAL:if(1<=d&&1<=e){a.splice(b-d-e,d+e);b=b-d-e;d=this.diff_main(f,g,!1,c);for(e=d.length-1;0<=e;e--)a.splice(b,0,d[e]);b+=\nd.length}d=e=0;g=f=\"\"}b++}a.pop();return a};\ndiff_match_patch.prototype.diff_bisect_=function(a,b,c){for(var d=a.length,e=b.length,f=Math.ceil((d+e)/2),g=2*f,h=Array(g),l=Array(g),k=0;k<g;k++)h[k]=-1,l[k]=-1;h[f+1]=0;l[f+1]=0;k=d-e;for(var m=0!=k%2,p=0,x=0,w=0,q=0,t=0;t<f&&!((new Date).getTime()>c);t++){for(var v=-t+p;v<=t-x;v+=2){var n=f+v;var r=v==-t||v!=t&&h[n-1]<h[n+1]?h[n+1]:h[n-1]+1;for(var y=r-v;r<d&&y<e&&a.charAt(r)==b.charAt(y);)r++,y++;h[n]=r;if(r>d)x+=2;else if(y>e)p+=2;else if(m&&(n=f+k-v,0<=n&&n<g&&-1!=l[n])){var u=d-l[n];if(r>=\nu)return this.diff_bisectSplit_(a,b,r,y,c)}}for(v=-t+w;v<=t-q;v+=2){n=f+v;u=v==-t||v!=t&&l[n-1]<l[n+1]?l[n+1]:l[n-1]+1;for(r=u-v;u<d&&r<e&&a.charAt(d-u-1)==b.charAt(e-r-1);)u++,r++;l[n]=u;if(u>d)q+=2;else if(r>e)w+=2;else if(!m&&(n=f+k-v,0<=n&&n<g&&-1!=h[n]&&(r=h[n],y=f+r-n,u=d-u,r>=u)))return this.diff_bisectSplit_(a,b,r,y,c)}}return[[DIFF_DELETE,a],[DIFF_INSERT,b]]};\ndiff_match_patch.prototype.diff_bisectSplit_=function(a,b,c,d,e){var f=a.substring(0,c),g=b.substring(0,d);a=a.substring(c);b=b.substring(d);f=this.diff_main(f,g,!1,e);e=this.diff_main(a,b,!1,e);return f.concat(e)};\ndiff_match_patch.prototype.diff_linesToChars_=function(a,b){function c(a){for(var b=\"\",c=0,f=-1,g=d.length;f<a.length-1;){f=a.indexOf(\"\\n\",c);-1==f&&(f=a.length-1);var h=a.substring(c,f+1);c=f+1;(e.hasOwnProperty?e.hasOwnProperty(h):void 0!==e[h])?b+=String.fromCharCode(e[h]):(b+=String.fromCharCode(g),e[h]=g,d[g++]=h)}return b}var d=[],e={};d[0]=\"\";var f=c(a),g=c(b);return{chars1:f,chars2:g,lineArray:d}};\ndiff_match_patch.prototype.diff_charsToLines_=function(a,b){for(var c=0;c<a.length;c++){for(var d=a[c][1],e=[],f=0;f<d.length;f++)e[f]=b[d.charCodeAt(f)];a[c][1]=e.join(\"\")}};diff_match_patch.prototype.diff_commonPrefix=function(a,b){if(!a||!b||a.charAt(0)!=b.charAt(0))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(f,e)==b.substring(f,e)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e};\ndiff_match_patch.prototype.diff_commonSuffix=function(a,b){if(!a||!b||a.charAt(a.length-1)!=b.charAt(b.length-1))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(a.length-e,a.length-f)==b.substring(b.length-e,b.length-f)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e};\ndiff_match_patch.prototype.diff_commonOverlap_=function(a,b){var c=a.length,d=b.length;if(0==c||0==d)return 0;c>d?a=a.substring(c-d):c<d&&(b=b.substring(0,c));c=Math.min(c,d);if(a==b)return c;d=0;for(var e=1;;){var f=a.substring(c-e);f=b.indexOf(f);if(-1==f)return d;e+=f;if(0==f||a.substring(c-e)==b.substring(0,e))d=e,e++}};\ndiff_match_patch.prototype.diff_halfMatch_=function(a,b){function c(a,b,c){for(var d=a.substring(c,c+Math.floor(a.length/4)),e=-1,g=\"\",h,k,l,m;-1!=(e=b.indexOf(d,e+1));){var p=f.diff_commonPrefix(a.substring(c),b.substring(e)),u=f.diff_commonSuffix(a.substring(0,c),b.substring(0,e));g.length<u+p&&(g=b.substring(e-u,e)+b.substring(e,e+p),h=a.substring(0,c-u),k=a.substring(c+p),l=b.substring(0,e-u),m=b.substring(e+p))}return 2*g.length>=a.length?[h,k,l,m,g]:null}if(0>=this.Diff_Timeout)return null;\nvar d=a.length>b.length?a:b,e=a.length>b.length?b:a;if(4>d.length||2*e.length<d.length)return null;var f=this,g=c(d,e,Math.ceil(d.length/4));d=c(d,e,Math.ceil(d.length/2));if(g||d)g=d?g?g[4].length>d[4].length?g:d:d:g;else return null;if(a.length>b.length){d=g[0];e=g[1];var h=g[2];var l=g[3]}else h=g[0],l=g[1],d=g[2],e=g[3];return[d,e,h,l,g[4]]};\ndiff_match_patch.prototype.diff_cleanupSemantic=function(a){for(var b=!1,c=[],d=0,e=null,f=0,g=0,h=0,l=0,k=0;f<a.length;)a[f][0]==DIFF_EQUAL?(c[d++]=f,g=l,h=k,k=l=0,e=a[f][1]):(a[f][0]==DIFF_INSERT?l+=a[f][1].length:k+=a[f][1].length,e&&e.length<=Math.max(g,h)&&e.length<=Math.max(l,k)&&(a.splice(c[d-1],0,[DIFF_DELETE,e]),a[c[d-1]+1][0]=DIFF_INSERT,d--,d--,f=0<d?c[d-1]:-1,k=l=h=g=0,e=null,b=!0)),f++;b&&this.diff_cleanupMerge(a);this.diff_cleanupSemanticLossless(a);for(f=1;f<a.length;){if(a[f-1][0]==\nDIFF_DELETE&&a[f][0]==DIFF_INSERT){b=a[f-1][1];c=a[f][1];d=this.diff_commonOverlap_(b,c);e=this.diff_commonOverlap_(c,b);if(d>=e){if(d>=b.length/2||d>=c.length/2)a.splice(f,0,[DIFF_EQUAL,c.substring(0,d)]),a[f-1][1]=b.substring(0,b.length-d),a[f+1][1]=c.substring(d),f++}else if(e>=b.length/2||e>=c.length/2)a.splice(f,0,[DIFF_EQUAL,b.substring(0,e)]),a[f-1][0]=DIFF_INSERT,a[f-1][1]=c.substring(0,c.length-e),a[f+1][0]=DIFF_DELETE,a[f+1][1]=b.substring(e),f++;f++}f++}};\ndiff_match_patch.prototype.diff_cleanupSemanticLossless=function(a){function b(a,b){if(!a||!b)return 6;var c=a.charAt(a.length-1),d=b.charAt(0),e=c.match(diff_match_patch.nonAlphaNumericRegex_),f=d.match(diff_match_patch.nonAlphaNumericRegex_),g=e&&c.match(diff_match_patch.whitespaceRegex_),h=f&&d.match(diff_match_patch.whitespaceRegex_);c=g&&c.match(diff_match_patch.linebreakRegex_);d=h&&d.match(diff_match_patch.linebreakRegex_);var k=c&&a.match(diff_match_patch.blanklineEndRegex_),l=d&&b.match(diff_match_patch.blanklineStartRegex_);\nreturn k||l?5:c||d?4:e&&!g&&h?3:g||h?2:e||f?1:0}for(var c=1;c<a.length-1;){if(a[c-1][0]==DIFF_EQUAL&&a[c+1][0]==DIFF_EQUAL){var d=a[c-1][1],e=a[c][1],f=a[c+1][1],g=this.diff_commonSuffix(d,e);if(g){var h=e.substring(e.length-g);d=d.substring(0,d.length-g);e=h+e.substring(0,e.length-g);f=h+f}g=d;h=e;for(var l=f,k=b(d,e)+b(e,f);e.charAt(0)===f.charAt(0);){d+=e.charAt(0);e=e.substring(1)+f.charAt(0);f=f.substring(1);var m=b(d,e)+b(e,f);m>=k&&(k=m,g=d,h=e,l=f)}a[c-1][1]!=g&&(g?a[c-1][1]=g:(a.splice(c-\n1,1),c--),a[c][1]=h,l?a[c+1][1]=l:(a.splice(c+1,1),c--))}c++}};diff_match_patch.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/;diff_match_patch.whitespaceRegex_=/\\s/;diff_match_patch.linebreakRegex_=/[\\r\\n]/;diff_match_patch.blanklineEndRegex_=/\\n\\r?\\n$/;diff_match_patch.blanklineStartRegex_=/^\\r?\\n\\r?\\n/;\ndiff_match_patch.prototype.diff_cleanupEfficiency=function(a){for(var b=!1,c=[],d=0,e=null,f=0,g=!1,h=!1,l=!1,k=!1;f<a.length;)a[f][0]==DIFF_EQUAL?(a[f][1].length<this.Diff_EditCost&&(l||k)?(c[d++]=f,g=l,h=k,e=a[f][1]):(d=0,e=null),l=k=!1):(a[f][0]==DIFF_DELETE?k=!0:l=!0,e&&(g&&h&&l&&k||e.length<this.Diff_EditCost/2&&3==g+h+l+k)&&(a.splice(c[d-1],0,[DIFF_DELETE,e]),a[c[d-1]+1][0]=DIFF_INSERT,d--,e=null,g&&h?(l=k=!0,d=0):(d--,f=0<d?c[d-1]:-1,l=k=!1),b=!0)),f++;b&&this.diff_cleanupMerge(a)};\ndiff_match_patch.prototype.diff_cleanupMerge=function(a){a.push([DIFF_EQUAL,\"\"]);for(var b=0,c=0,d=0,e=\"\",f=\"\",g;b<a.length;)switch(a[b][0]){case DIFF_INSERT:d++;f+=a[b][1];b++;break;case DIFF_DELETE:c++;e+=a[b][1];b++;break;case DIFF_EQUAL:1<c+d?(0!==c&&0!==d&&(g=this.diff_commonPrefix(f,e),0!==g&&(0<b-c-d&&a[b-c-d-1][0]==DIFF_EQUAL?a[b-c-d-1][1]+=f.substring(0,g):(a.splice(0,0,[DIFF_EQUAL,f.substring(0,g)]),b++),f=f.substring(g),e=e.substring(g)),g=this.diff_commonSuffix(f,e),0!==g&&(a[b][1]=f.substring(f.length-\ng)+a[b][1],f=f.substring(0,f.length-g),e=e.substring(0,e.length-g))),0===c?a.splice(b-d,c+d,[DIFF_INSERT,f]):0===d?a.splice(b-c,c+d,[DIFF_DELETE,e]):a.splice(b-c-d,c+d,[DIFF_DELETE,e],[DIFF_INSERT,f]),b=b-c-d+(c?1:0)+(d?1:0)+1):0!==b&&a[b-1][0]==DIFF_EQUAL?(a[b-1][1]+=a[b][1],a.splice(b,1)):b++,c=d=0,f=e=\"\"}\"\"===a[a.length-1][1]&&a.pop();c=!1;for(b=1;b<a.length-1;)a[b-1][0]==DIFF_EQUAL&&a[b+1][0]==DIFF_EQUAL&&(a[b][1].substring(a[b][1].length-a[b-1][1].length)==a[b-1][1]?(a[b][1]=a[b-1][1]+a[b][1].substring(0,\na[b][1].length-a[b-1][1].length),a[b+1][1]=a[b-1][1]+a[b+1][1],a.splice(b-1,1),c=!0):a[b][1].substring(0,a[b+1][1].length)==a[b+1][1]&&(a[b-1][1]+=a[b+1][1],a[b][1]=a[b][1].substring(a[b+1][1].length)+a[b+1][1],a.splice(b+1,1),c=!0)),b++;c&&this.diff_cleanupMerge(a)};\ndiff_match_patch.prototype.diff_xIndex=function(a,b){var c=0,d=0,e=0,f=0,g;for(g=0;g<a.length;g++){a[g][0]!==DIFF_INSERT&&(c+=a[g][1].length);a[g][0]!==DIFF_DELETE&&(d+=a[g][1].length);if(c>b)break;e=c;f=d}return a.length!=g&&a[g][0]===DIFF_DELETE?f:f+(b-e)};\ndiff_match_patch.prototype.diff_prettyHtml=function(a){for(var b=[],c=/&/g,d=/</g,e=/>/g,f=/\\n/g,g=0;g<a.length;g++){var h=a[g][0],l=a[g][1].replace(c,\"&amp;\").replace(d,\"&lt;\").replace(e,\"&gt;\").replace(f,\"&para;<br>\");switch(h){case DIFF_INSERT:b[g]='<ins style=\"background:#e6ffe6;\">'+l+\"</ins>\";break;case DIFF_DELETE:b[g]='<del style=\"background:#ffe6e6;\">'+l+\"</del>\";break;case DIFF_EQUAL:b[g]=\"<span>\"+l+\"</span>\"}}return b.join(\"\")};\ndiff_match_patch.prototype.diff_text1=function(a){for(var b=[],c=0;c<a.length;c++)a[c][0]!==DIFF_INSERT&&(b[c]=a[c][1]);return b.join(\"\")};diff_match_patch.prototype.diff_text2=function(a){for(var b=[],c=0;c<a.length;c++)a[c][0]!==DIFF_DELETE&&(b[c]=a[c][1]);return b.join(\"\")};\ndiff_match_patch.prototype.diff_levenshtein=function(a){for(var b=0,c=0,d=0,e=0;e<a.length;e++){var f=a[e][1];switch(a[e][0]){case DIFF_INSERT:c+=f.length;break;case DIFF_DELETE:d+=f.length;break;case DIFF_EQUAL:b+=Math.max(c,d),d=c=0}}return b+=Math.max(c,d)};\ndiff_match_patch.prototype.diff_toDelta=function(a){for(var b=[],c=0;c<a.length;c++)switch(a[c][0]){case DIFF_INSERT:b[c]=\"+\"+encodeURI(a[c][1]);break;case DIFF_DELETE:b[c]=\"-\"+a[c][1].length;break;case DIFF_EQUAL:b[c]=\"=\"+a[c][1].length}return b.join(\"\\t\").replace(/%20/g,\" \")};\ndiff_match_patch.prototype.diff_fromDelta=function(a,b){for(var c=[],d=0,e=0,f=b.split(/\\t/g),g=0;g<f.length;g++){var h=f[g].substring(1);switch(f[g].charAt(0)){case \"+\":try{c[d++]=[DIFF_INSERT,decodeURI(h)]}catch(k){throw Error(\"Illegal escape in diff_fromDelta: \"+h);}break;case \"-\":case \"=\":var l=parseInt(h,10);if(isNaN(l)||0>l)throw Error(\"Invalid number in diff_fromDelta: \"+h);h=a.substring(e,e+=l);\"=\"==f[g].charAt(0)?c[d++]=[DIFF_EQUAL,h]:c[d++]=[DIFF_DELETE,h];break;default:if(f[g])throw Error(\"Invalid diff operation in diff_fromDelta: \"+\nf[g]);}}if(e!=a.length)throw Error(\"Delta length (\"+e+\") does not equal source text length (\"+a.length+\").\");return c};diff_match_patch.prototype.match_main=function(a,b,c){if(null==a||null==b||null==c)throw Error(\"Null input. (match_main)\");c=Math.max(0,Math.min(c,a.length));return a==b?0:a.length?a.substring(c,c+b.length)==b?c:this.match_bitap_(a,b,c):-1};\ndiff_match_patch.prototype.match_bitap_=function(a,b,c){function d(a,d){var e=a/b.length,g=Math.abs(c-d);return f.Match_Distance?e+g/f.Match_Distance:g?1:e}if(b.length>this.Match_MaxBits)throw Error(\"Pattern too long for this browser.\");var e=this.match_alphabet_(b),f=this,g=this.Match_Threshold,h=a.indexOf(b,c);-1!=h&&(g=Math.min(d(0,h),g),h=a.lastIndexOf(b,c+b.length),-1!=h&&(g=Math.min(d(0,h),g)));var l=1<<b.length-1;h=-1;for(var k,m,p=b.length+a.length,x,w=0;w<b.length;w++){k=0;for(m=p;k<m;)d(w,\nc+m)<=g?k=m:p=m,m=Math.floor((p-k)/2+k);p=m;k=Math.max(1,c-m+1);var q=Math.min(c+m,a.length)+b.length;m=Array(q+2);for(m[q+1]=(1<<w)-1;q>=k;q--){var t=e[a.charAt(q-1)];m[q]=0===w?(m[q+1]<<1|1)&t:(m[q+1]<<1|1)&t|(x[q+1]|x[q])<<1|1|x[q+1];if(m[q]&l&&(t=d(w,q-1),t<=g))if(g=t,h=q-1,h>c)k=Math.max(1,2*c-h);else break}if(d(w+1,c)>g)break;x=m}return h};\ndiff_match_patch.prototype.match_alphabet_=function(a){for(var b={},c=0;c<a.length;c++)b[a.charAt(c)]=0;for(c=0;c<a.length;c++)b[a.charAt(c)]|=1<<a.length-c-1;return b};\ndiff_match_patch.prototype.patch_addContext_=function(a,b){if(0!=b.length){for(var c=b.substring(a.start2,a.start2+a.length1),d=0;b.indexOf(c)!=b.lastIndexOf(c)&&c.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)d+=this.Patch_Margin,c=b.substring(a.start2-d,a.start2+a.length1+d);d+=this.Patch_Margin;(c=b.substring(a.start2-d,a.start2))&&a.diffs.unshift([DIFF_EQUAL,c]);(d=b.substring(a.start2+a.length1,a.start2+a.length1+d))&&a.diffs.push([DIFF_EQUAL,d]);a.start1-=c.length;a.start2-=\nc.length;a.length1+=c.length+d.length;a.length2+=c.length+d.length}};\ndiff_match_patch.prototype.patch_make=function(a,b,c){if(\"string\"==typeof a&&\"string\"==typeof b&&\"undefined\"==typeof c){var d=a;b=this.diff_main(d,b,!0);2<b.length&&(this.diff_cleanupSemantic(b),this.diff_cleanupEfficiency(b))}else if(a&&\"object\"==typeof a&&\"undefined\"==typeof b&&\"undefined\"==typeof c)b=a,d=this.diff_text1(b);else if(\"string\"==typeof a&&b&&\"object\"==typeof b&&\"undefined\"==typeof c)d=a;else if(\"string\"==typeof a&&\"string\"==typeof b&&c&&\"object\"==typeof c)d=a,b=c;else throw Error(\"Unknown call format to patch_make.\");\nif(0===b.length)return[];c=[];a=new diff_match_patch.patch_obj;for(var e=0,f=0,g=0,h=d,l=0;l<b.length;l++){var k=b[l][0],m=b[l][1];e||k===DIFF_EQUAL||(a.start1=f,a.start2=g);switch(k){case DIFF_INSERT:a.diffs[e++]=b[l];a.length2+=m.length;d=d.substring(0,g)+m+d.substring(g);break;case DIFF_DELETE:a.length1+=m.length;a.diffs[e++]=b[l];d=d.substring(0,g)+d.substring(g+m.length);break;case DIFF_EQUAL:m.length<=2*this.Patch_Margin&&e&&b.length!=l+1?(a.diffs[e++]=b[l],a.length1+=m.length,a.length2+=m.length):\nm.length>=2*this.Patch_Margin&&e&&(this.patch_addContext_(a,h),c.push(a),a=new diff_match_patch.patch_obj,e=0,h=d,f=g)}k!==DIFF_INSERT&&(f+=m.length);k!==DIFF_DELETE&&(g+=m.length)}e&&(this.patch_addContext_(a,h),c.push(a));return c};\ndiff_match_patch.prototype.patch_deepCopy=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c],e=new diff_match_patch.patch_obj;e.diffs=[];for(var f=0;f<d.diffs.length;f++)e.diffs[f]=d.diffs[f].slice();e.start1=d.start1;e.start2=d.start2;e.length1=d.length1;e.length2=d.length2;b[c]=e}return b};\ndiff_match_patch.prototype.patch_apply=function(a,b){if(0==a.length)return[b,[]];a=this.patch_deepCopy(a);var c=this.patch_addPadding(a);b=c+b+c;this.patch_splitMax(a);for(var d=0,e=[],f=0;f<a.length;f++){var g=a[f].start2+d,h=this.diff_text1(a[f].diffs),l=-1;if(h.length>this.Match_MaxBits){var k=this.match_main(b,h.substring(0,this.Match_MaxBits),g);-1!=k&&(l=this.match_main(b,h.substring(h.length-this.Match_MaxBits),g+h.length-this.Match_MaxBits),-1==l||k>=l)&&(k=-1)}else k=this.match_main(b,h,\ng);if(-1==k)e[f]=!1,d-=a[f].length2-a[f].length1;else if(e[f]=!0,d=k-g,g=-1==l?b.substring(k,k+h.length):b.substring(k,l+this.Match_MaxBits),h==g)b=b.substring(0,k)+this.diff_text2(a[f].diffs)+b.substring(k+h.length);else if(g=this.diff_main(h,g,!1),h.length>this.Match_MaxBits&&this.diff_levenshtein(g)/h.length>this.Patch_DeleteThreshold)e[f]=!1;else{this.diff_cleanupSemanticLossless(g);h=0;var m;for(l=0;l<a[f].diffs.length;l++){var p=a[f].diffs[l];p[0]!==DIFF_EQUAL&&(m=this.diff_xIndex(g,h));p[0]===\nDIFF_INSERT?b=b.substring(0,k+m)+p[1]+b.substring(k+m):p[0]===DIFF_DELETE&&(b=b.substring(0,k+m)+b.substring(k+this.diff_xIndex(g,h+p[1].length)));p[0]!==DIFF_DELETE&&(h+=p[1].length)}}}b=b.substring(c.length,b.length-c.length);return[b,e]};\ndiff_match_patch.prototype.patch_addPadding=function(a){for(var b=this.Patch_Margin,c=\"\",d=1;d<=b;d++)c+=String.fromCharCode(d);for(d=0;d<a.length;d++)a[d].start1+=b,a[d].start2+=b;d=a[0];var e=d.diffs;if(0==e.length||e[0][0]!=DIFF_EQUAL)e.unshift([DIFF_EQUAL,c]),d.start1-=b,d.start2-=b,d.length1+=b,d.length2+=b;else if(b>e[0][1].length){var f=b-e[0][1].length;e[0][1]=c.substring(e[0][1].length)+e[0][1];d.start1-=f;d.start2-=f;d.length1+=f;d.length2+=f}d=a[a.length-1];e=d.diffs;0==e.length||e[e.length-\n1][0]!=DIFF_EQUAL?(e.push([DIFF_EQUAL,c]),d.length1+=b,d.length2+=b):b>e[e.length-1][1].length&&(f=b-e[e.length-1][1].length,e[e.length-1][1]+=c.substring(0,f),d.length1+=f,d.length2+=f);return c};\ndiff_match_patch.prototype.patch_splitMax=function(a){for(var b=this.Match_MaxBits,c=0;c<a.length;c++)if(!(a[c].length1<=b)){var d=a[c];a.splice(c--,1);for(var e=d.start1,f=d.start2,g=\"\";0!==d.diffs.length;){var h=new diff_match_patch.patch_obj,l=!0;h.start1=e-g.length;h.start2=f-g.length;\"\"!==g&&(h.length1=h.length2=g.length,h.diffs.push([DIFF_EQUAL,g]));for(;0!==d.diffs.length&&h.length1<b-this.Patch_Margin;){g=d.diffs[0][0];var k=d.diffs[0][1];g===DIFF_INSERT?(h.length2+=k.length,f+=k.length,h.diffs.push(d.diffs.shift()),\nl=!1):g===DIFF_DELETE&&1==h.diffs.length&&h.diffs[0][0]==DIFF_EQUAL&&k.length>2*b?(h.length1+=k.length,e+=k.length,l=!1,h.diffs.push([g,k]),d.diffs.shift()):(k=k.substring(0,b-h.length1-this.Patch_Margin),h.length1+=k.length,e+=k.length,g===DIFF_EQUAL?(h.length2+=k.length,f+=k.length):l=!1,h.diffs.push([g,k]),k==d.diffs[0][1]?d.diffs.shift():d.diffs[0][1]=d.diffs[0][1].substring(k.length))}g=this.diff_text2(h.diffs);g=g.substring(g.length-this.Patch_Margin);k=this.diff_text1(d.diffs).substring(0,\nthis.Patch_Margin);\"\"!==k&&(h.length1+=k.length,h.length2+=k.length,0!==h.diffs.length&&h.diffs[h.diffs.length-1][0]===DIFF_EQUAL?h.diffs[h.diffs.length-1][1]+=k:h.diffs.push([DIFF_EQUAL,k]));l||a.splice(++c,0,h)}}};diff_match_patch.prototype.patch_toText=function(a){for(var b=[],c=0;c<a.length;c++)b[c]=a[c];return b.join(\"\")};\ndiff_match_patch.prototype.patch_fromText=function(a){var b=[];if(!a)return b;a=a.split(\"\\n\");for(var c=0,d=/^@@ -(\\d+),?(\\d*) \\+(\\d+),?(\\d*) @@$/;c<a.length;){var e=a[c].match(d);if(!e)throw Error(\"Invalid patch string: \"+a[c]);var f=new diff_match_patch.patch_obj;b.push(f);f.start1=parseInt(e[1],10);\"\"===e[2]?(f.start1--,f.length1=1):\"0\"==e[2]?f.length1=0:(f.start1--,f.length1=parseInt(e[2],10));f.start2=parseInt(e[3],10);\"\"===e[4]?(f.start2--,f.length2=1):\"0\"==e[4]?f.length2=0:(f.start2--,f.length2=\nparseInt(e[4],10));for(c++;c<a.length;){e=a[c].charAt(0);try{var g=decodeURI(a[c].substring(1))}catch(h){throw Error(\"Illegal escape in patch_fromText: \"+g);}if(\"-\"==e)f.diffs.push([DIFF_DELETE,g]);else if(\"+\"==e)f.diffs.push([DIFF_INSERT,g]);else if(\" \"==e)f.diffs.push([DIFF_EQUAL,g]);else if(\"@\"==e)break;else if(\"\"!==e)throw Error('Invalid patch mode \"'+e+'\" in: '+g);c++}}return b};diff_match_patch.patch_obj=function(){this.diffs=[];this.start2=this.start1=null;this.length2=this.length1=0};\ndiff_match_patch.patch_obj.prototype.toString=function(){for(var a=[\"@@ -\"+(0===this.length1?this.start1+\",0\":1==this.length1?this.start1+1:this.start1+1+\",\"+this.length1)+\" +\"+(0===this.length2?this.start2+\",0\":1==this.length2?this.start2+1:this.start2+1+\",\"+this.length2)+\" @@\\n\"],b,c=0;c<this.diffs.length;c++){switch(this.diffs[c][0]){case DIFF_INSERT:b=\"+\";break;case DIFF_DELETE:b=\"-\";break;case DIFF_EQUAL:b=\" \"}a[c+1]=b+encodeURI(this.diffs[c][1])+\"\\n\"}return a.join(\"\").replace(/%20/g,\" \")};\nthis.diff_match_patch=diff_match_patch;this.DIFF_DELETE=DIFF_DELETE;this.DIFF_INSERT=DIFF_INSERT;this.DIFF_EQUAL=DIFF_EQUAL;\n}).call(exports);",
            "type": "application/javascript",
            "title": "$:/core/modules/utils/diff-match-patch/diff_match_patch.js",
            "module-type": "library"
        },
        "$:/core/modules/utils/dom/animations/slide.js": {
            "title": "$:/core/modules/utils/dom/animations/slide.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/animations/slide.js\ntype: application/javascript\nmodule-type: animation\n\nA simple slide animation that varies the height of the element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction slideOpen(domNode,options) {\n\toptions = options || {};\n\tvar duration = options.duration || $tw.utils.getAnimationDuration();\n\t// Get the current height of the domNode\n\tvar computedStyle = window.getComputedStyle(domNode),\n\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\tcurrPaddingBottom = parseInt(computedStyle.paddingBottom,10),\n\t\tcurrPaddingTop = parseInt(computedStyle.paddingTop,10),\n\t\tcurrHeight = domNode.offsetHeight;\n\t// Reset the margin once the transition is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(domNode,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: \"\"},\n\t\t\t{marginTop: \"\"},\n\t\t\t{paddingBottom: \"\"},\n\t\t\t{paddingTop: \"\"},\n\t\t\t{height: \"auto\"},\n\t\t\t{opacity: \"\"}\n\t\t]);\n\t\tif(options.callback) {\n\t\t\toptions.callback();\n\t\t}\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"none\"},\n\t\t{marginTop: \"0px\"},\n\t\t{marginBottom: \"0px\"},\n\t\t{paddingTop: \"0px\"},\n\t\t{paddingBottom: \"0px\"},\n\t\t{height: \"0px\"},\n\t\t{opacity: \"0\"}\n\t]);\n\t$tw.utils.forceLayout(domNode);\n\t// Transition to the final position\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"margin-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"height \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t{marginTop: currMarginTop + \"px\"},\n\t\t{paddingBottom: currPaddingBottom + \"px\"},\n\t\t{paddingTop: currPaddingTop + \"px\"},\n\t\t{height: currHeight + \"px\"},\n\t\t{opacity: \"1\"}\n\t]);\n}\n\nfunction slideClosed(domNode,options) {\n\toptions = options || {};\n\tvar duration = options.duration || $tw.utils.getAnimationDuration(),\n\t\tcurrHeight = domNode.offsetHeight;\n\t// Clear the properties we've set when the animation is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(domNode,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: \"\"},\n\t\t\t{marginTop: \"\"},\n\t\t\t{paddingBottom: \"\"},\n\t\t\t{paddingTop: \"\"},\n\t\t\t{height: \"auto\"},\n\t\t\t{opacity: \"\"}\n\t\t]);\n\t\tif(options.callback) {\n\t\t\toptions.callback();\n\t\t}\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(domNode,[\n\t\t{height: currHeight + \"px\"},\n\t\t{opacity: \"1\"}\n\t]);\n\t$tw.utils.forceLayout(domNode);\n\t// Transition to the final position\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"margin-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"height \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{marginTop: \"0px\"},\n\t\t{marginBottom: \"0px\"},\n\t\t{paddingTop: \"0px\"},\n\t\t{paddingBottom: \"0px\"},\n\t\t{height: \"0px\"},\n\t\t{opacity: \"0\"}\n\t]);\n}\n\nexports.slide = {\n\topen: slideOpen,\n\tclose: slideClosed\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "animation"
        },
        "$:/core/modules/utils/dom/animator.js": {
            "title": "$:/core/modules/utils/dom/animator.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/animator.js\ntype: application/javascript\nmodule-type: utils\n\nOrchestrates animations and transitions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction Animator() {\n\t// Get the registered animation modules\n\tthis.animations = {};\n\t$tw.modules.applyMethods(\"animation\",this.animations);\n}\n\nAnimator.prototype.perform = function(type,domNode,options) {\n\toptions = options || {};\n\t// Find an animation that can handle this type\n\tvar chosenAnimation;\n\t$tw.utils.each(this.animations,function(animation,name) {\n\t\tif($tw.utils.hop(animation,type)) {\n\t\t\tchosenAnimation = animation[type];\n\t\t}\n\t});\n\tif(!chosenAnimation) {\n\t\tchosenAnimation = function(domNode,options) {\n\t\t\tif(options.callback) {\n\t\t\t\toptions.callback();\n\t\t\t}\n\t\t};\n\t}\n\t// Call the animation\n\tchosenAnimation(domNode,options);\n};\n\nexports.Animator = Animator;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/browser.js": {
            "title": "$:/core/modules/utils/dom/browser.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/browser.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser feature detection\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet style properties of an element\n\telement: dom node\n\tstyles: ordered array of {name: value} pairs\n*/\nexports.setStyle = function(element,styles) {\n\tif(element.nodeType === 1) { // Element.ELEMENT_NODE\n\t\tfor(var t=0; t<styles.length; t++) {\n\t\t\tfor(var styleName in styles[t]) {\n\t\t\t\telement.style[$tw.utils.convertStyleNameToPropertyName(styleName)] = styles[t][styleName];\n\t\t\t}\n\t\t}\n\t}\n};\n\n/*\nConverts a standard CSS property name into the local browser-specific equivalent. For example:\n\t\"background-color\" --> \"backgroundColor\"\n\t\"transition\" --> \"webkitTransition\"\n*/\n\nvar styleNameCache = {}; // We'll cache the style name conversions\n\nexports.convertStyleNameToPropertyName = function(styleName) {\n\t// Return from the cache if we can\n\tif(styleNameCache[styleName]) {\n\t\treturn styleNameCache[styleName];\n\t}\n\t// Convert it by first removing any hyphens\n\tvar propertyName = $tw.utils.unHyphenateCss(styleName);\n\t// Then check if it needs a prefix\n\tif($tw.browser && document.body.style[propertyName] === undefined) {\n\t\tvar prefixes = [\"O\",\"MS\",\"Moz\",\"webkit\"];\n\t\tfor(var t=0; t<prefixes.length; t++) {\n\t\t\tvar prefixedName = prefixes[t] + propertyName.substr(0,1).toUpperCase() + propertyName.substr(1);\n\t\t\tif(document.body.style[prefixedName] !== undefined) {\n\t\t\t\tpropertyName = prefixedName;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\t// Put it in the cache too\n\tstyleNameCache[styleName] = propertyName;\n\treturn propertyName;\n};\n\n/*\nConverts a JS format CSS property name back into the dashed form used in CSS declarations. For example:\n\t\"backgroundColor\" --> \"background-color\"\n\t\"webkitTransform\" --> \"-webkit-transform\"\n*/\nexports.convertPropertyNameToStyleName = function(propertyName) {\n\t// Rehyphenate the name\n\tvar styleName = $tw.utils.hyphenateCss(propertyName);\n\t// If there's a webkit prefix, add a dash (other browsers have uppercase prefixes, and so get the dash automatically)\n\tif(styleName.indexOf(\"webkit\") === 0) {\n\t\tstyleName = \"-\" + styleName;\n\t} else if(styleName.indexOf(\"-m-s\") === 0) {\n\t\tstyleName = \"-ms\" + styleName.substr(4);\n\t}\n\treturn styleName;\n};\n\n/*\nRound trip a stylename to a property name and back again. For example:\n\t\"transform\" --> \"webkitTransform\" --> \"-webkit-transform\"\n*/\nexports.roundTripPropertyName = function(propertyName) {\n\treturn $tw.utils.convertPropertyNameToStyleName($tw.utils.convertStyleNameToPropertyName(propertyName));\n};\n\n/*\nConverts a standard event name into the local browser specific equivalent. For example:\n\t\"animationEnd\" --> \"webkitAnimationEnd\"\n*/\n\nvar eventNameCache = {}; // We'll cache the conversions\n\nvar eventNameMappings = {\n\t\"transitionEnd\": {\n\t\tcorrespondingCssProperty: \"transition\",\n\t\tmappings: {\n\t\t\ttransition: \"transitionend\",\n\t\t\tOTransition: \"oTransitionEnd\",\n\t\t\tMSTransition: \"msTransitionEnd\",\n\t\t\tMozTransition: \"transitionend\",\n\t\t\twebkitTransition: \"webkitTransitionEnd\"\n\t\t}\n\t},\n\t\"animationEnd\": {\n\t\tcorrespondingCssProperty: \"animation\",\n\t\tmappings: {\n\t\t\tanimation: \"animationend\",\n\t\t\tOAnimation: \"oAnimationEnd\",\n\t\t\tMSAnimation: \"msAnimationEnd\",\n\t\t\tMozAnimation: \"animationend\",\n\t\t\twebkitAnimation: \"webkitAnimationEnd\"\n\t\t}\n\t}\n};\n\nexports.convertEventName = function(eventName) {\n\tif(eventNameCache[eventName]) {\n\t\treturn eventNameCache[eventName];\n\t}\n\tvar newEventName = eventName,\n\t\tmappings = eventNameMappings[eventName];\n\tif(mappings) {\n\t\tvar convertedProperty = $tw.utils.convertStyleNameToPropertyName(mappings.correspondingCssProperty);\n\t\tif(mappings.mappings[convertedProperty]) {\n\t\t\tnewEventName = mappings.mappings[convertedProperty];\n\t\t}\n\t}\n\t// Put it in the cache too\n\teventNameCache[eventName] = newEventName;\n\treturn newEventName;\n};\n\n/*\nReturn the names of the fullscreen APIs\n*/\nexports.getFullScreenApis = function() {\n\tvar d = document,\n\t\tdb = d.body,\n\t\tresult = {\n\t\t\"_requestFullscreen\": db.webkitRequestFullscreen !== undefined ? \"webkitRequestFullscreen\" :\n\t\t\t\t\t\t\tdb.mozRequestFullScreen !== undefined ? \"mozRequestFullScreen\" :\n\t\t\t\t\t\t\tdb.msRequestFullscreen !== undefined ? \"msRequestFullscreen\" :\n\t\t\t\t\t\t\tdb.requestFullscreen !== undefined ? \"requestFullscreen\" : \"\",\n\t\t\"_exitFullscreen\": d.webkitExitFullscreen !== undefined ? \"webkitExitFullscreen\" :\n\t\t\t\t\t\t\td.mozCancelFullScreen !== undefined ? \"mozCancelFullScreen\" :\n\t\t\t\t\t\t\td.msExitFullscreen !== undefined ? \"msExitFullscreen\" :\n\t\t\t\t\t\t\td.exitFullscreen !== undefined ? \"exitFullscreen\" : \"\",\n\t\t\"_fullscreenElement\": d.webkitFullscreenElement !== undefined ? \"webkitFullscreenElement\" :\n\t\t\t\t\t\t\td.mozFullScreenElement !== undefined ? \"mozFullScreenElement\" :\n\t\t\t\t\t\t\td.msFullscreenElement !== undefined ? \"msFullscreenElement\" :\n\t\t\t\t\t\t\td.fullscreenElement !== undefined ? \"fullscreenElement\" : \"\",\n\t\t\"_fullscreenChange\": d.webkitFullscreenElement !== undefined ? \"webkitfullscreenchange\" :\n\t\t\t\t\t\t\td.mozFullScreenElement !== undefined ? \"mozfullscreenchange\" :\n\t\t\t\t\t\t\td.msFullscreenElement !== undefined ? \"MSFullscreenChange\" :\n\t\t\t\t\t\t\td.fullscreenElement !== undefined ? \"fullscreenchange\" : \"\"\n\t};\n\tif(!result._requestFullscreen || !result._exitFullscreen || !result._fullscreenElement || !result._fullscreenChange) {\n\t\treturn null;\n\t} else {\n\t\treturn result;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/csscolorparser.js": {
            "title": "$:/core/modules/utils/dom/csscolorparser.js",
            "text": "// (c) Dean McNamee <dean@gmail.com>, 2012.\n//\n// https://github.com/deanm/css-color-parser-js\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n// IN THE SOFTWARE.\n\n// http://www.w3.org/TR/css3-color/\nvar kCSSColorTable = {\n  \"transparent\": [0,0,0,0], \"aliceblue\": [240,248,255,1],\n  \"antiquewhite\": [250,235,215,1], \"aqua\": [0,255,255,1],\n  \"aquamarine\": [127,255,212,1], \"azure\": [240,255,255,1],\n  \"beige\": [245,245,220,1], \"bisque\": [255,228,196,1],\n  \"black\": [0,0,0,1], \"blanchedalmond\": [255,235,205,1],\n  \"blue\": [0,0,255,1], \"blueviolet\": [138,43,226,1],\n  \"brown\": [165,42,42,1], \"burlywood\": [222,184,135,1],\n  \"cadetblue\": [95,158,160,1], \"chartreuse\": [127,255,0,1],\n  \"chocolate\": [210,105,30,1], \"coral\": [255,127,80,1],\n  \"cornflowerblue\": [100,149,237,1], \"cornsilk\": [255,248,220,1],\n  \"crimson\": [220,20,60,1], \"cyan\": [0,255,255,1],\n  \"darkblue\": [0,0,139,1], \"darkcyan\": [0,139,139,1],\n  \"darkgoldenrod\": [184,134,11,1], \"darkgray\": [169,169,169,1],\n  \"darkgreen\": [0,100,0,1], \"darkgrey\": [169,169,169,1],\n  \"darkkhaki\": [189,183,107,1], \"darkmagenta\": [139,0,139,1],\n  \"darkolivegreen\": [85,107,47,1], \"darkorange\": [255,140,0,1],\n  \"darkorchid\": [153,50,204,1], \"darkred\": [139,0,0,1],\n  \"darksalmon\": [233,150,122,1], \"darkseagreen\": [143,188,143,1],\n  \"darkslateblue\": [72,61,139,1], \"darkslategray\": [47,79,79,1],\n  \"darkslategrey\": [47,79,79,1], \"darkturquoise\": [0,206,209,1],\n  \"darkviolet\": [148,0,211,1], \"deeppink\": [255,20,147,1],\n  \"deepskyblue\": [0,191,255,1], \"dimgray\": [105,105,105,1],\n  \"dimgrey\": [105,105,105,1], \"dodgerblue\": [30,144,255,1],\n  \"firebrick\": [178,34,34,1], \"floralwhite\": [255,250,240,1],\n  \"forestgreen\": [34,139,34,1], \"fuchsia\": [255,0,255,1],\n  \"gainsboro\": [220,220,220,1], \"ghostwhite\": [248,248,255,1],\n  \"gold\": [255,215,0,1], \"goldenrod\": [218,165,32,1],\n  \"gray\": [128,128,128,1], \"green\": [0,128,0,1],\n  \"greenyellow\": [173,255,47,1], \"grey\": [128,128,128,1],\n  \"honeydew\": [240,255,240,1], \"hotpink\": [255,105,180,1],\n  \"indianred\": [205,92,92,1], \"indigo\": [75,0,130,1],\n  \"ivory\": [255,255,240,1], \"khaki\": [240,230,140,1],\n  \"lavender\": [230,230,250,1], \"lavenderblush\": [255,240,245,1],\n  \"lawngreen\": [124,252,0,1], \"lemonchiffon\": [255,250,205,1],\n  \"lightblue\": [173,216,230,1], \"lightcoral\": [240,128,128,1],\n  \"lightcyan\": [224,255,255,1], \"lightgoldenrodyellow\": [250,250,210,1],\n  \"lightgray\": [211,211,211,1], \"lightgreen\": [144,238,144,1],\n  \"lightgrey\": [211,211,211,1], \"lightpink\": [255,182,193,1],\n  \"lightsalmon\": [255,160,122,1], \"lightseagreen\": [32,178,170,1],\n  \"lightskyblue\": [135,206,250,1], \"lightslategray\": [119,136,153,1],\n  \"lightslategrey\": [119,136,153,1], \"lightsteelblue\": [176,196,222,1],\n  \"lightyellow\": [255,255,224,1], \"lime\": [0,255,0,1],\n  \"limegreen\": [50,205,50,1], \"linen\": [250,240,230,1],\n  \"magenta\": [255,0,255,1], \"maroon\": [128,0,0,1],\n  \"mediumaquamarine\": [102,205,170,1], \"mediumblue\": [0,0,205,1],\n  \"mediumorchid\": [186,85,211,1], \"mediumpurple\": [147,112,219,1],\n  \"mediumseagreen\": [60,179,113,1], \"mediumslateblue\": [123,104,238,1],\n  \"mediumspringgreen\": [0,250,154,1], \"mediumturquoise\": [72,209,204,1],\n  \"mediumvioletred\": [199,21,133,1], \"midnightblue\": [25,25,112,1],\n  \"mintcream\": [245,255,250,1], \"mistyrose\": [255,228,225,1],\n  \"moccasin\": [255,228,181,1], \"navajowhite\": [255,222,173,1],\n  \"navy\": [0,0,128,1], \"oldlace\": [253,245,230,1],\n  \"olive\": [128,128,0,1], \"olivedrab\": [107,142,35,1],\n  \"orange\": [255,165,0,1], \"orangered\": [255,69,0,1],\n  \"orchid\": [218,112,214,1], \"palegoldenrod\": [238,232,170,1],\n  \"palegreen\": [152,251,152,1], \"paleturquoise\": [175,238,238,1],\n  \"palevioletred\": [219,112,147,1], \"papayawhip\": [255,239,213,1],\n  \"peachpuff\": [255,218,185,1], \"peru\": [205,133,63,1],\n  \"pink\": [255,192,203,1], \"plum\": [221,160,221,1],\n  \"powderblue\": [176,224,230,1], \"purple\": [128,0,128,1],\n  \"red\": [255,0,0,1], \"rosybrown\": [188,143,143,1],\n  \"royalblue\": [65,105,225,1], \"saddlebrown\": [139,69,19,1],\n  \"salmon\": [250,128,114,1], \"sandybrown\": [244,164,96,1],\n  \"seagreen\": [46,139,87,1], \"seashell\": [255,245,238,1],\n  \"sienna\": [160,82,45,1], \"silver\": [192,192,192,1],\n  \"skyblue\": [135,206,235,1], \"slateblue\": [106,90,205,1],\n  \"slategray\": [112,128,144,1], \"slategrey\": [112,128,144,1],\n  \"snow\": [255,250,250,1], \"springgreen\": [0,255,127,1],\n  \"steelblue\": [70,130,180,1], \"tan\": [210,180,140,1],\n  \"teal\": [0,128,128,1], \"thistle\": [216,191,216,1],\n  \"tomato\": [255,99,71,1], \"turquoise\": [64,224,208,1],\n  \"violet\": [238,130,238,1], \"wheat\": [245,222,179,1],\n  \"white\": [255,255,255,1], \"whitesmoke\": [245,245,245,1],\n  \"yellow\": [255,255,0,1], \"yellowgreen\": [154,205,50,1]}\n\nfunction clamp_css_byte(i) {  // Clamp to integer 0 .. 255.\n  i = Math.round(i);  // Seems to be what Chrome does (vs truncation).\n  return i < 0 ? 0 : i > 255 ? 255 : i;\n}\n\nfunction clamp_css_float(f) {  // Clamp to float 0.0 .. 1.0.\n  return f < 0 ? 0 : f > 1 ? 1 : f;\n}\n\nfunction parse_css_int(str) {  // int or percentage.\n  if (str[str.length - 1] === '%')\n    return clamp_css_byte(parseFloat(str) / 100 * 255);\n  return clamp_css_byte(parseInt(str));\n}\n\nfunction parse_css_float(str) {  // float or percentage.\n  if (str[str.length - 1] === '%')\n    return clamp_css_float(parseFloat(str) / 100);\n  return clamp_css_float(parseFloat(str));\n}\n\nfunction css_hue_to_rgb(m1, m2, h) {\n  if (h < 0) h += 1;\n  else if (h > 1) h -= 1;\n\n  if (h * 6 < 1) return m1 + (m2 - m1) * h * 6;\n  if (h * 2 < 1) return m2;\n  if (h * 3 < 2) return m1 + (m2 - m1) * (2/3 - h) * 6;\n  return m1;\n}\n\nfunction parseCSSColor(css_str) {\n  // Remove all whitespace, not compliant, but should just be more accepting.\n  var str = css_str.replace(/ /g, '').toLowerCase();\n\n  // Color keywords (and transparent) lookup.\n  if (str in kCSSColorTable) return kCSSColorTable[str].slice();  // dup.\n\n  // #abc and #abc123 syntax.\n  if (str[0] === '#') {\n    if (str.length === 4) {\n      var iv = parseInt(str.substr(1), 16);  // TODO(deanm): Stricter parsing.\n      if (!(iv >= 0 && iv <= 0xfff)) return null;  // Covers NaN.\n      return [((iv & 0xf00) >> 4) | ((iv & 0xf00) >> 8),\n              (iv & 0xf0) | ((iv & 0xf0) >> 4),\n              (iv & 0xf) | ((iv & 0xf) << 4),\n              1];\n    } else if (str.length === 7) {\n      var iv = parseInt(str.substr(1), 16);  // TODO(deanm): Stricter parsing.\n      if (!(iv >= 0 && iv <= 0xffffff)) return null;  // Covers NaN.\n      return [(iv & 0xff0000) >> 16,\n              (iv & 0xff00) >> 8,\n              iv & 0xff,\n              1];\n    }\n\n    return null;\n  }\n\n  var op = str.indexOf('('), ep = str.indexOf(')');\n  if (op !== -1 && ep + 1 === str.length) {\n    var fname = str.substr(0, op);\n    var params = str.substr(op+1, ep-(op+1)).split(',');\n    var alpha = 1;  // To allow case fallthrough.\n    switch (fname) {\n      case 'rgba':\n        if (params.length !== 4) return null;\n        alpha = parse_css_float(params.pop());\n        // Fall through.\n      case 'rgb':\n        if (params.length !== 3) return null;\n        return [parse_css_int(params[0]),\n                parse_css_int(params[1]),\n                parse_css_int(params[2]),\n                alpha];\n      case 'hsla':\n        if (params.length !== 4) return null;\n        alpha = parse_css_float(params.pop());\n        // Fall through.\n      case 'hsl':\n        if (params.length !== 3) return null;\n        var h = (((parseFloat(params[0]) % 360) + 360) % 360) / 360;  // 0 .. 1\n        // NOTE(deanm): According to the CSS spec s/l should only be\n        // percentages, but we don't bother and let float or percentage.\n        var s = parse_css_float(params[1]);\n        var l = parse_css_float(params[2]);\n        var m2 = l <= 0.5 ? l * (s + 1) : l + s - l * s;\n        var m1 = l * 2 - m2;\n        return [clamp_css_byte(css_hue_to_rgb(m1, m2, h+1/3) * 255),\n                clamp_css_byte(css_hue_to_rgb(m1, m2, h) * 255),\n                clamp_css_byte(css_hue_to_rgb(m1, m2, h-1/3) * 255),\n                alpha];\n      default:\n        return null;\n    }\n  }\n\n  return null;\n}\n\ntry { exports.parseCSSColor = parseCSSColor } catch(e) { }\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom.js": {
            "title": "$:/core/modules/utils/dom.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom.js\ntype: application/javascript\nmodule-type: utils\n\nVarious static DOM-related utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nDetermines whether element 'a' contains element 'b'\nCode thanks to John Resig, http://ejohn.org/blog/comparing-document-position/\n*/\nexports.domContains = function(a,b) {\n\treturn a.contains ?\n\t\ta !== b && a.contains(b) :\n\t\t!!(a.compareDocumentPosition(b) & 16);\n};\n\nexports.removeChildren = function(node) {\n\twhile(node.hasChildNodes()) {\n\t\tnode.removeChild(node.firstChild);\n\t}\n};\n\nexports.hasClass = function(el,className) {\n\treturn el && el.hasAttribute && el.hasAttribute(\"class\") && el.getAttribute(\"class\").split(\" \").indexOf(className) !== -1;\n};\n\nexports.addClass = function(el,className) {\n\tvar c = (el.getAttribute(\"class\") || \"\").split(\" \");\n\tif(c.indexOf(className) === -1) {\n\t\tc.push(className);\n\t\tel.setAttribute(\"class\",c.join(\" \"));\n\t}\n};\n\nexports.removeClass = function(el,className) {\n\tvar c = (el.getAttribute(\"class\") || \"\").split(\" \"),\n\t\tp = c.indexOf(className);\n\tif(p !== -1) {\n\t\tc.splice(p,1);\n\t\tel.setAttribute(\"class\",c.join(\" \"));\n\t}\n};\n\nexports.toggleClass = function(el,className,status) {\n\tif(status === undefined) {\n\t\tstatus = !exports.hasClass(el,className);\n\t}\n\tif(status) {\n\t\texports.addClass(el,className);\n\t} else {\n\t\texports.removeClass(el,className);\n\t}\n};\n\n/*\nGet the first parent element that has scrollbars or use the body as fallback.\n*/\nexports.getScrollContainer = function(el) {\n\tvar doc = el.ownerDocument;\n\twhile(el.parentNode) {\t\n\t\tel = el.parentNode;\n\t\tif(el.scrollTop) {\n\t\t\treturn el;\n\t\t}\n\t}\n\treturn doc.body;\n};\n\n/*\nGet the scroll position of the viewport\nReturns:\n\t{\n\t\tx: horizontal scroll position in pixels,\n\t\ty: vertical scroll position in pixels\n\t}\n*/\nexports.getScrollPosition = function(srcWindow) {\n\tvar scrollWindow = srcWindow || window;\n\tif(\"scrollX\" in scrollWindow) {\n\t\treturn {x: scrollWindow.scrollX, y: scrollWindow.scrollY};\n\t} else {\n\t\treturn {x: scrollWindow.document.documentElement.scrollLeft, y: scrollWindow.document.documentElement.scrollTop};\n\t}\n};\n\n/*\nAdjust the height of a textarea to fit its content, preserving scroll position, and return the height\n*/\nexports.resizeTextAreaToFit = function(domNode,minHeight) {\n\t// Get the scroll container and register the current scroll position\n\tvar container = $tw.utils.getScrollContainer(domNode),\n\t\tscrollTop = container.scrollTop;\n    // Measure the specified minimum height\n\tdomNode.style.height = minHeight;\n\tvar measuredHeight = domNode.offsetHeight || parseInt(minHeight,10);\n\t// Set its height to auto so that it snaps to the correct height\n\tdomNode.style.height = \"auto\";\n\t// Calculate the revised height\n\tvar newHeight = Math.max(domNode.scrollHeight + domNode.offsetHeight - domNode.clientHeight,measuredHeight);\n\t// Only try to change the height if it has changed\n\tif(newHeight !== domNode.offsetHeight) {\n\t\tdomNode.style.height = newHeight + \"px\";\n\t\t// Make sure that the dimensions of the textarea are recalculated\n\t\t$tw.utils.forceLayout(domNode);\n\t\t// Set the container to the position we registered at the beginning\n\t\tcontainer.scrollTop = scrollTop;\n\t}\n\treturn newHeight;\n};\n\n/*\nGets the bounding rectangle of an element in absolute page coordinates\n*/\nexports.getBoundingPageRect = function(element) {\n\tvar scrollPos = $tw.utils.getScrollPosition(element.ownerDocument.defaultView),\n\t\tclientRect = element.getBoundingClientRect();\n\treturn {\n\t\tleft: clientRect.left + scrollPos.x,\n\t\twidth: clientRect.width,\n\t\tright: clientRect.right + scrollPos.x,\n\t\ttop: clientRect.top + scrollPos.y,\n\t\theight: clientRect.height,\n\t\tbottom: clientRect.bottom + scrollPos.y\n\t};\n};\n\n/*\nSaves a named password in the browser\n*/\nexports.savePassword = function(name,password) {\n\tvar done = false;\n\ttry {\n\t\twindow.localStorage.setItem(\"tw5-password-\" + name,password);\n\t\tdone = true;\n\t} catch(e) {\n\t}\n\tif(!done) {\n\t\t$tw.savedPasswords = $tw.savedPasswords || Object.create(null);\n\t\t$tw.savedPasswords[name] = password;\n\t}\n};\n\n/*\nRetrieve a named password from the browser\n*/\nexports.getPassword = function(name) {\n\tvar value;\n\ttry {\n\t\tvalue = window.localStorage.getItem(\"tw5-password-\" + name);\n\t} catch(e) {\n\t}\n\tif(value !== undefined) {\n\t\treturn value;\n\t} else {\n\t\treturn ($tw.savedPasswords || Object.create(null))[name] || \"\";\n\t}\n};\n\n/*\nForce layout of a dom node and its descendents\n*/\nexports.forceLayout = function(element) {\n\tvar dummy = element.offsetWidth;\n};\n\n/*\nPulse an element for debugging purposes\n*/\nexports.pulseElement = function(element) {\n\t// Event handler to remove the class at the end\n\telement.addEventListener($tw.browser.animationEnd,function handler(event) {\n\t\telement.removeEventListener($tw.browser.animationEnd,handler,false);\n\t\t$tw.utils.removeClass(element,\"pulse\");\n\t},false);\n\t// Apply the pulse class\n\t$tw.utils.removeClass(element,\"pulse\");\n\t$tw.utils.forceLayout(element);\n\t$tw.utils.addClass(element,\"pulse\");\n};\n\n/*\nAttach specified event handlers to a DOM node\ndomNode: where to attach the event handlers\nevents: array of event handlers to be added (see below)\nEach entry in the events array is an object with these properties:\nhandlerFunction: optional event handler function\nhandlerObject: optional event handler object\nhandlerMethod: optionally specifies object handler method name (defaults to `handleEvent`)\n*/\nexports.addEventListeners = function(domNode,events) {\n\t$tw.utils.each(events,function(eventInfo) {\n\t\tvar handler;\n\t\tif(eventInfo.handlerFunction) {\n\t\t\thandler = eventInfo.handlerFunction;\n\t\t} else if(eventInfo.handlerObject) {\n\t\t\tif(eventInfo.handlerMethod) {\n\t\t\t\thandler = function(event) {\n\t\t\t\t\teventInfo.handlerObject[eventInfo.handlerMethod].call(eventInfo.handlerObject,event);\n\t\t\t\t};\t\n\t\t\t} else {\n\t\t\t\thandler = eventInfo.handlerObject;\n\t\t\t}\n\t\t}\n\t\tdomNode.addEventListener(eventInfo.name,handler,false);\n\t});\n};\n\n/*\nGet the computed styles applied to an element as an array of strings of individual CSS properties\n*/\nexports.getComputedStyles = function(domNode) {\n\tvar textAreaStyles = window.getComputedStyle(domNode,null),\n\t\tstyleDefs = [],\n\t\tname;\n\tfor(var t=0; t<textAreaStyles.length; t++) {\n\t\tname = textAreaStyles[t];\n\t\tstyleDefs.push(name + \": \" + textAreaStyles.getPropertyValue(name) + \";\");\n\t}\n\treturn styleDefs;\n};\n\n/*\nApply a set of styles passed as an array of strings of individual CSS properties\n*/\nexports.setStyles = function(domNode,styleDefs) {\n\tdomNode.style.cssText = styleDefs.join(\"\");\n};\n\n/*\nCopy the computed styles from a source element to a destination element\n*/\nexports.copyStyles = function(srcDomNode,dstDomNode) {\n\t$tw.utils.setStyles(dstDomNode,$tw.utils.getComputedStyles(srcDomNode));\n};\n\n/*\nCopy plain text to the clipboard on browsers that support it\n*/\nexports.copyToClipboard = function(text,options) {\n\toptions = options || {};\n\tvar textArea = document.createElement(\"textarea\");\n\ttextArea.style.position = \"fixed\";\n\ttextArea.style.top = 0;\n\ttextArea.style.left = 0;\n\ttextArea.style.fontSize = \"12pt\";\n\ttextArea.style.width = \"2em\";\n\ttextArea.style.height = \"2em\";\n\ttextArea.style.padding = 0;\n\ttextArea.style.border = \"none\";\n\ttextArea.style.outline = \"none\";\n\ttextArea.style.boxShadow = \"none\";\n\ttextArea.style.background = \"transparent\";\n\ttextArea.value = text;\n\tdocument.body.appendChild(textArea);\n\ttextArea.select();\n\ttextArea.setSelectionRange(0,text.length);\n\tvar succeeded = false;\n\ttry {\n\t\tsucceeded = document.execCommand(\"copy\");\n\t} catch (err) {\n\t}\n\tif(!options.doNotNotify) {\n\t\t$tw.notifier.display(succeeded ? \"$:/language/Notifications/CopiedToClipboard/Succeeded\" : \"$:/language/Notifications/CopiedToClipboard/Failed\");\n\t}\n\tdocument.body.removeChild(textArea);\n};\n\nexports.getLocationPath = function() {\n\treturn window.location.toString().split(\"#\")[0];\n};\n\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/dragndrop.js": {
            "title": "$:/core/modules/utils/dom/dragndrop.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/dragndrop.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser data transfer utilities, used with the clipboard and drag and drop\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOptions:\n\ndomNode: dom node to make draggable\ndragImageType: \"pill\" or \"dom\"\ndragTiddlerFn: optional function to retrieve the title of tiddler to drag\ndragFilterFn: optional function to retreive the filter defining a list of tiddlers to drag\nwidget: widget to use as the contect for the filter\n*/\nexports.makeDraggable = function(options) {\n\tvar dragImageType = options.dragImageType || \"dom\",\n\t\tdragImage,\n\t\tdomNode = options.domNode;\n\t// Make the dom node draggable (not necessary for anchor tags)\n\tif((domNode.tagName || \"\").toLowerCase() !== \"a\") {\n\t\tdomNode.setAttribute(\"draggable\",\"true\");\t\t\n\t}\n\t// Add event handlers\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"dragstart\", handlerFunction: function(event) {\n\t\t\tif(event.dataTransfer === undefined) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// Collect the tiddlers being dragged\n\t\t\tvar dragTiddler = options.dragTiddlerFn && options.dragTiddlerFn(),\n\t\t\t\tdragFilter = options.dragFilterFn && options.dragFilterFn(),\n\t\t\t\ttitles = dragTiddler ? [dragTiddler] : [],\n\t\t\t    \tstartActions = options.startActions;\n\t\t\tif(dragFilter) {\n\t\t\t\ttitles.push.apply(titles,options.widget.wiki.filterTiddlers(dragFilter,options.widget));\n\t\t\t}\n\t\t\tvar titleString = $tw.utils.stringifyList(titles);\n\t\t\t// Check that we've something to drag\n\t\t\tif(titles.length > 0 && event.target === domNode) {\n\t\t\t\t// Mark the drag in progress\n\t\t\t\t$tw.dragInProgress = domNode;\n\t\t\t\t// Set the dragging class on the element being dragged\n\t\t\t\t$tw.utils.addClass(event.target,\"tc-dragging\");\n\t\t\t\t// Invoke drag-start actions if given\n\t\t\t\tif(startActions !== undefined) {\n\t\t\t\t\toptions.widget.invokeActionString(startActions,options.widget,event,{actionTiddler: titleString});\n\t\t\t\t}\n\t\t\t\t// Create the drag image elements\n\t\t\t\tdragImage = options.widget.document.createElement(\"div\");\n\t\t\t\tdragImage.className = \"tc-tiddler-dragger\";\n\t\t\t\tvar inner = options.widget.document.createElement(\"div\");\n\t\t\t\tinner.className = \"tc-tiddler-dragger-inner\";\n\t\t\t\tinner.appendChild(options.widget.document.createTextNode(\n\t\t\t\t\ttitles.length === 1 ? \n\t\t\t\t\t\ttitles[0] :\n\t\t\t\t\t\ttitles.length + \" tiddlers\"\n\t\t\t\t));\n\t\t\t\tdragImage.appendChild(inner);\n\t\t\t\toptions.widget.document.body.appendChild(dragImage);\n\t\t\t\t// Set the data transfer properties\n\t\t\t\tvar dataTransfer = event.dataTransfer;\n\t\t\t\t// Set up the image\n\t\t\t\tdataTransfer.effectAllowed = \"all\";\n\t\t\t\tif(dataTransfer.setDragImage) {\n\t\t\t\t\tif(dragImageType === \"pill\") {\n\t\t\t\t\t\tdataTransfer.setDragImage(dragImage.firstChild,-16,-16);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar r = domNode.getBoundingClientRect();\n\t\t\t\t\t\tdataTransfer.setDragImage(domNode,event.clientX-r.left,event.clientY-r.top);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Set up the data transfer\n\t\t\t\tif(dataTransfer.clearData) {\n\t\t\t\t\tdataTransfer.clearData();\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\tvar jsonData = [];\n\t\t\t\tif(titles.length > 1) {\n\t\t\t\t\ttitles.forEach(function(title) {\n\t\t\t\t\t\tjsonData.push(options.widget.wiki.getTiddlerAsJson(title));\n\t\t\t\t\t});\n\t\t\t\t\tjsonData = \"[\" + jsonData.join(\",\") + \"]\";\n\t\t\t\t} else {\n\t\t\t\t\tjsonData = options.widget.wiki.getTiddlerAsJson(titles[0]);\n\t\t\t\t}\n\t\t\t\t// IE doesn't like these content types\n\t\t\t\tif(!$tw.browser.isIE) {\n\t\t\t\t\tdataTransfer.setData(\"text/vnd.tiddler\",jsonData);\n\t\t\t\t\tdataTransfer.setData(\"text/plain\",titleString);\n\t\t\t\t\tdataTransfer.setData(\"text/x-moz-url\",\"data:text/vnd.tiddler,\" + encodeURIComponent(jsonData));\n\t\t\t\t}\n\t\t\t\tdataTransfer.setData(\"URL\",\"data:text/vnd.tiddler,\" + encodeURIComponent(jsonData));\n\t\t\t\tdataTransfer.setData(\"Text\",titleString);\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\n\t\t\treturn false;\n\t\t}},\n\t\t{name: \"dragend\", handlerFunction: function(event) {\n\t\t\tif(event.target === domNode) {\n\t\t\t\t// Collect the tiddlers being dragged\n\t\t\t\tvar dragTiddler = options.dragTiddlerFn && options.dragTiddlerFn(),\n\t\t\t\t\tdragFilter = options.dragFilterFn && options.dragFilterFn(),\n\t\t\t\t\ttitles = dragTiddler ? [dragTiddler] : [],\n\t\t\t    \t\tendActions = options.endActions;\n\t\t\t\tif(dragFilter) {\n\t\t\t\t\ttitles.push.apply(titles,options.widget.wiki.filterTiddlers(dragFilter,options.widget));\n\t\t\t\t}\n\t\t\t\tvar titleString = $tw.utils.stringifyList(titles);\n\t\t\t\t$tw.dragInProgress = null;\n\t\t\t\t// Invoke drag-end actions if given\n\t\t\t\tif(endActions !== undefined) {\n\t\t\t\t\toptions.widget.invokeActionString(endActions,options.widget,event,{actionTiddler: titleString});\n\t\t\t\t}\n\t\t\t\t// Remove the dragging class on the element being dragged\n\t\t\t\t$tw.utils.removeClass(event.target,\"tc-dragging\");\n\t\t\t\t// Delete the drag image element\n\t\t\t\tif(dragImage) {\n\t\t\t\t\tdragImage.parentNode.removeChild(dragImage);\n\t\t\t\t\tdragImage = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}}\n\t]);\n};\n\nexports.importDataTransfer = function(dataTransfer,fallbackTitle,callback) {\n\t// Try each provided data type in turn\n\tif($tw.log.IMPORT) {\n\t\tconsole.log(\"Available data types:\");\n\t\tfor(var type=0; type<dataTransfer.types.length; type++) {\n\t\t\tconsole.log(\"type\",dataTransfer.types[type],dataTransfer.getData(dataTransfer.types[type]))\n\t\t}\n\t}\n\tfor(var t=0; t<importDataTypes.length; t++) {\n\t\tif(!$tw.browser.isIE || importDataTypes[t].IECompatible) {\n\t\t\t// Get the data\n\t\t\tvar dataType = importDataTypes[t];\n\t\t\t\tvar data = dataTransfer.getData(dataType.type);\n\t\t\t// Import the tiddlers in the data\n\t\t\tif(data !== \"\" && data !== null) {\n\t\t\t\tif($tw.log.IMPORT) {\n\t\t\t\t\tconsole.log(\"Importing data type '\" + dataType.type + \"', data: '\" + data + \"'\")\n\t\t\t\t}\n\t\t\t\tvar tiddlerFields = dataType.toTiddlerFieldsArray(data,fallbackTitle);\n\t\t\t\tcallback(tiddlerFields);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar importDataTypes = [\n\t{type: \"text/vnd.tiddler\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn parseJSONTiddlers(data,fallbackTitle);\n\t}},\n\t{type: \"URL\", IECompatible: true, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\t// Check for tiddler data URI\n\t\tvar match = decodeURIComponent(data).match(/^data\\:text\\/vnd\\.tiddler,(.*)/i);\n\t\tif(match) {\n\t\t\treturn parseJSONTiddlers(match[1],fallbackTitle);\n\t\t} else {\n\t\t\treturn [{title: fallbackTitle, text: data}]; // As URL string\n\t\t}\n\t}},\n\t{type: \"text/x-moz-url\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\t// Check for tiddler data URI\n\t\tvar match = decodeURIComponent(data).match(/^data\\:text\\/vnd\\.tiddler,(.*)/i);\n\t\tif(match) {\n\t\t\treturn parseJSONTiddlers(match[1],fallbackTitle);\n\t\t} else {\n\t\t\treturn [{title: fallbackTitle, text: data}]; // As URL string\n\t\t}\n\t}},\n\t{type: \"text/html\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"text/plain\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"Text\", IECompatible: true, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"text/uri-list\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}}\n];\n\nfunction parseJSONTiddlers(json,fallbackTitle) {\n\tvar data = JSON.parse(json);\n\tif(!$tw.utils.isArray(data)) {\n\t\tdata = [data];\n\t}\n\tdata.forEach(function(fields) {\n\t\tfields.title = fields.title || fallbackTitle;\n\t});\n\treturn data;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/http.js": {
            "title": "$:/core/modules/utils/dom/http.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/http.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser HTTP support\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nA quick and dirty HTTP function; to be refactored later. Options are:\n\turl: URL to retrieve\n\theaders: hashmap of headers to send\n\ttype: GET, PUT, POST etc\n\tcallback: function invoked with (err,data,xhr)\n\treturnProp: string name of the property to return as first argument of callback\n*/\nexports.httpRequest = function(options) {\n\tvar type = options.type || \"GET\",\n\t\turl = options.url,\n\t\theaders = options.headers || {accept: \"application/json\"},\n\t\thasHeader = function(targetHeader) {\n\t\t\ttargetHeader = targetHeader.toLowerCase();\n\t\t\tvar result = false;\n\t\t\t$tw.utils.each(headers,function(header,headerTitle,object) {\n\t\t\t\tif(headerTitle.toLowerCase() === targetHeader) {\n\t\t\t\t\tresult = true;\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn result;\n\t\t},\n\t\treturnProp = options.returnProp || \"responseText\",\n\t\trequest = new XMLHttpRequest(),\n\t\tdata = \"\",\n\t\tf,results;\n\t// Massage the data hashmap into a string\n\tif(options.data) {\n\t\tif(typeof options.data === \"string\") { // Already a string\n\t\t\tdata = options.data;\n\t\t} else { // A hashmap of strings\n\t\t\tresults = [];\n\t\t\t$tw.utils.each(options.data,function(dataItem,dataItemTitle) {\n\t\t\t\tresults.push(dataItemTitle + \"=\" + encodeURIComponent(dataItem));\n\t\t\t});\n\t\t\tif(type === \"GET\" || type === \"HEAD\") {\n\t\t\t\turl += \"?\" + results.join(\"&\");\n\t\t\t} else {\n\t\t\t\tdata = results.join(\"&\");\n\t\t\t}\n\t\t}\n\t}\n\t// Set up the state change handler\n\trequest.onreadystatechange = function() {\n\t\tif(this.readyState === 4) {\n\t\t\tif(this.status === 200 || this.status === 201 || this.status === 204) {\n\t\t\t\t// Success!\n\t\t\t\toptions.callback(null,this[returnProp],this);\n\t\t\t\treturn;\n\t\t\t}\n\t\t// Something went wrong\n\t\toptions.callback($tw.language.getString(\"Error/XMLHttpRequest\") + \": \" + this.status,null,this);\n\t\t}\n\t};\n\t// Make the request\n\trequest.open(type,url,true);\n\tif(headers) {\n\t\t$tw.utils.each(headers,function(header,headerTitle,object) {\n\t\t\trequest.setRequestHeader(headerTitle,header);\n\t\t});\n\t}\n\tif(data && !hasHeader(\"Content-Type\")) {\n\t\trequest.setRequestHeader(\"Content-Type\",\"application/x-www-form-urlencoded; charset=UTF-8\");\n\t}\n\tif(!hasHeader(\"X-Requested-With\")) {\n\t\trequest.setRequestHeader(\"X-Requested-With\",\"TiddlyWiki\");\n\t}\n\ttry {\n\t\trequest.send(data);\n\t} catch(e) {\n\t\toptions.callback(e,null,this);\n\t}\n\treturn request;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/keyboard.js": {
            "title": "$:/core/modules/utils/dom/keyboard.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/keyboard.js\ntype: application/javascript\nmodule-type: utils\n\nKeyboard utilities; now deprecated. Instead, use $tw.keyboardManager\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n[\"parseKeyDescriptor\",\"checkKeyDescriptor\"].forEach(function(method) {\n\texports[method] = function() {\n\t\tif($tw.keyboardManager) {\n\t\t\treturn $tw.keyboardManager[method].apply($tw.keyboardManager,Array.prototype.slice.call(arguments,0));\n\t\t} else {\n\t\t\treturn null\n\t\t}\n\t};\n});\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/modal.js": {
            "title": "$:/core/modules/utils/dom/modal.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/modal.js\ntype: application/javascript\nmodule-type: utils\n\nModal message mechanism\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\nvar navigator = require(\"$:/core/modules/widgets/navigator.js\");\n\nvar Modal = function(wiki) {\n\tthis.wiki = wiki;\n\tthis.modalCount = 0;\n};\n\n/*\nDisplay a modal dialogue\n\ttitle: Title of tiddler to display\n\toptions: see below\nOptions include:\n\tdownloadLink: Text of a big download link to include\n*/\nModal.prototype.display = function(title,options) {\n\toptions = options || {};\n\tthis.srcDocument = options.variables && (options.variables.rootwindow === \"true\" ||\n\t\t\t\toptions.variables.rootwindow === \"yes\") ? document :\n\t\t\t\t(options.event.event && options.event.event.target ? options.event.event.target.ownerDocument : document);\n\tthis.srcWindow = this.srcDocument.defaultView;\n\tvar self = this,\n\t\trefreshHandler,\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\ttiddler = this.wiki.getTiddler(title);\n\t// Don't do anything if the tiddler doesn't exist\n\tif(!tiddler) {\n\t\treturn;\n\t}\n\t// Create the variables\n\tvar variables = $tw.utils.extend({\n\t\t\tcurrentTiddler: title,\n\t\t\t\"tv-story-list\": (options.event && options.event.widget ? options.event.widget.getVariable(\"tv-story-list\") : \"\"),\n\t\t\t\"tv-history-list\": (options.event && options.event.widget ? options.event.widget.getVariable(\"tv-history-list\") : \"\")\n\t\t},options.variables);\n\n\t// Create the wrapper divs\n\tvar wrapper = this.srcDocument.createElement(\"div\"),\n\t\tmodalBackdrop = this.srcDocument.createElement(\"div\"),\n\t\tmodalWrapper = this.srcDocument.createElement(\"div\"),\n\t\tmodalHeader = this.srcDocument.createElement(\"div\"),\n\t\theaderTitle = this.srcDocument.createElement(\"h3\"),\n\t\tmodalBody = this.srcDocument.createElement(\"div\"),\n\t\tmodalLink = this.srcDocument.createElement(\"a\"),\n\t\tmodalFooter = this.srcDocument.createElement(\"div\"),\n\t\tmodalFooterHelp = this.srcDocument.createElement(\"span\"),\n\t\tmodalFooterButtons = this.srcDocument.createElement(\"span\");\n\t// Up the modal count and adjust the body class\n\tthis.modalCount++;\n\tthis.adjustPageClass();\n\t// Add classes\n\t$tw.utils.addClass(wrapper,\"tc-modal-wrapper\");\n\tif(tiddler.fields && tiddler.fields.class) {\n\t\t$tw.utils.addClass(wrapper,tiddler.fields.class);\n\t}\n\t$tw.utils.addClass(modalBackdrop,\"tc-modal-backdrop\");\n\t$tw.utils.addClass(modalWrapper,\"tc-modal\");\n\t$tw.utils.addClass(modalHeader,\"tc-modal-header\");\n\t$tw.utils.addClass(modalBody,\"tc-modal-body\");\n\t$tw.utils.addClass(modalFooter,\"tc-modal-footer\");\n\t// Join them together\n\twrapper.appendChild(modalBackdrop);\n\twrapper.appendChild(modalWrapper);\n\tmodalHeader.appendChild(headerTitle);\n\tmodalWrapper.appendChild(modalHeader);\n\tmodalWrapper.appendChild(modalBody);\n\tmodalFooter.appendChild(modalFooterHelp);\n\tmodalFooter.appendChild(modalFooterButtons);\n\tmodalWrapper.appendChild(modalFooter);\n\tvar navigatorTree = {\n\t\t\"type\": \"navigator\",\n\t\t\"attributes\": {\n\t\t\t\"story\": {\n\t\t\t\t\"name\": \"story\",\n\t\t\t\t\"type\": \"string\",\n\t\t\t\t\"value\": variables[\"tv-story-list\"]\n\t\t\t},\n\t\t\t\"history\": {\n\t\t\t\t\"name\": \"history\",\n\t\t\t\t\"type\": \"string\",\n\t\t\t\t\"value\": variables[\"tv-history-list\"]\n\t\t\t}\n\t\t},\n\t\t\"tag\": \"$navigator\",\n\t\t\"isBlock\": true,\n\t\t\"children\": []\n\t};\n\tvar navigatorWidgetNode = new navigator.navigator(navigatorTree, {\n\t\twiki: this.wiki,\n\t\tdocument : this.srcDocument,\n\t\tparentWidget: $tw.rootWidget\n\t});\n\tnavigatorWidgetNode.render(modalBody,null);\n\t\n\t// Render the title of the message\n\tvar headerWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tfield: \"subtitle\",\n\t\tmode: \"inline\",\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\tattributes: {\n\t\t\t\ttext: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: title\n\t\t}}}],\n\t\tparentWidget: navigatorWidgetNode,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\theaderWidgetNode.render(headerTitle,null);\n\t// Render the body of the message\n\tvar bodyWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tparentWidget: navigatorWidgetNode,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\n\tbodyWidgetNode.render(modalBody,null);\n\t// Setup the link if present\n\tif(options.downloadLink) {\n\t\tmodalLink.href = options.downloadLink;\n\t\tmodalLink.appendChild(this.srcDocument.createTextNode(\"Right-click to save changes\"));\n\t\tmodalBody.appendChild(modalLink);\n\t}\n\t// Render the footer of the message\n\tif(tiddler.fields && tiddler.fields.help) {\n\t\tvar link = this.srcDocument.createElement(\"a\");\n\t\tlink.setAttribute(\"href\",tiddler.fields.help);\n\t\tlink.setAttribute(\"target\",\"_blank\");\n\t\tlink.setAttribute(\"rel\",\"noopener noreferrer\");\n\t\tlink.appendChild(this.srcDocument.createTextNode(\"Help\"));\n\t\tmodalFooterHelp.appendChild(link);\n\t\tmodalFooterHelp.style.float = \"left\";\n\t}\n\tvar footerWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tfield: \"footer\",\n\t\tmode: \"inline\",\n\t\tchildren: [{\n\t\t\ttype: \"button\",\n\t\t\tattributes: {\n\t\t\t\tmessage: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: \"tm-close-tiddler\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\tattributes: {\n\t\t\t\t\ttext: {\n\t\t\t\t\t\ttype: \"string\",\n\t\t\t\t\t\tvalue: $tw.language.getString(\"Buttons/Close/Caption\")\n\t\t\t}}}\n\t\t]}],\n\t\tparentWidget: navigatorWidgetNode,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\tfooterWidgetNode.render(modalFooterButtons,null);\n\t// Set up the refresh handler\n\trefreshHandler = function(changes) {\n\t\theaderWidgetNode.refresh(changes,modalHeader,null);\n\t\tbodyWidgetNode.refresh(changes,modalBody,null);\n\t\tfooterWidgetNode.refresh(changes,modalFooterButtons,null);\n\t};\n\tthis.wiki.addEventListener(\"change\",refreshHandler);\n\t// Add the close event handler\n\tvar closeHandler = function(event) {\n\t\t// Remove our refresh handler\n\t\tself.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t// Decrease the modal count and adjust the body class\n\t\tself.modalCount--;\n\t\tself.adjustPageClass();\n\t\t// Force layout and animate the modal message away\n\t\t$tw.utils.forceLayout(modalBackdrop);\n\t\t$tw.utils.forceLayout(modalWrapper);\n\t\t$tw.utils.setStyle(modalBackdrop,[\n\t\t\t{opacity: \"0\"}\n\t\t]);\n\t\t$tw.utils.setStyle(modalWrapper,[\n\t\t\t{transform: \"translateY(\" + self.srcWindow.innerHeight + \"px)\"}\n\t\t]);\n\t\t// Set up an event for the transition end\n\t\tself.srcWindow.setTimeout(function() {\n\t\t\tif(wrapper.parentNode) {\n\t\t\t\t// Remove the modal message from the DOM\n\t\t\t\tself.srcDocument.body.removeChild(wrapper);\n\t\t\t}\n\t\t},duration);\n\t\t// Don't let anyone else handle the tm-close-tiddler message\n\t\treturn false;\n\t};\n\theaderWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\tbodyWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\tfooterWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\t// Set the initial styles for the message\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{opacity: \"0\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transformOrigin: \"0% 0%\"},\n\t\t{transform: \"translateY(\" + (-this.srcWindow.innerHeight) + \"px)\"}\n\t]);\n\t// Put the message into the document\n\tthis.srcDocument.body.appendChild(wrapper);\n\t// Set up animation for the styles\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{transition: \"opacity \" + duration + \"ms ease-out\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out\"}\n\t]);\n\t// Force layout\n\t$tw.utils.forceLayout(modalBackdrop);\n\t$tw.utils.forceLayout(modalWrapper);\n\t// Set final animated styles\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{opacity: \"0.7\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transform: \"translateY(0px)\"}\n\t]);\n};\n\nModal.prototype.adjustPageClass = function() {\n\tvar windowContainer = $tw.pageContainer ? ($tw.pageContainer === this.srcDocument.body.firstChild ? $tw.pageContainer : this.srcDocument.body.firstChild) : null;\n\tif(windowContainer) {\n\t\t$tw.utils.toggleClass(windowContainer,\"tc-modal-displayed\",this.modalCount > 0);\n\t}\n};\n\nexports.Modal = Modal;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/notifier.js": {
            "title": "$:/core/modules/utils/dom/notifier.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/notifier.js\ntype: application/javascript\nmodule-type: utils\n\nNotifier mechanism\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar Notifier = function(wiki) {\n\tthis.wiki = wiki;\n};\n\n/*\nDisplay a notification\n\ttitle: Title of tiddler containing the notification text\n\toptions: see below\nOptions include:\n*/\nNotifier.prototype.display = function(title,options) {\n\toptions = options || {};\n\t// Create the wrapper divs\n\tvar self = this,\n\t\tnotification = document.createElement(\"div\"),\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\trefreshHandler;\n\t// Don't do anything if the tiddler doesn't exist\n\tif(!tiddler) {\n\t\treturn;\n\t}\n\t// Add classes\n\t$tw.utils.addClass(notification,\"tc-notification\");\n\t// Create the variables\n\tvar variables = $tw.utils.extend({currentTiddler: title},options.variables);\n\t// Render the body of the notification\n\tvar widgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: document,\n\t\tvariables: variables,\n\t\timportPageMacros: true});\n\twidgetNode.render(notification,null);\n\trefreshHandler = function(changes) {\n\t\twidgetNode.refresh(changes,notification,null);\n\t};\n\tthis.wiki.addEventListener(\"change\",refreshHandler);\n\t// Set the initial styles for the notification\n\t$tw.utils.setStyle(notification,[\n\t\t{opacity: \"0\"},\n\t\t{transformOrigin: \"0% 0%\"},\n\t\t{transform: \"translateY(\" + (-window.innerHeight) + \"px)\"},\n\t\t{transition: \"opacity \" + duration + \"ms ease-out, \" + $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out\"}\n\t]);\n\t// Add the notification to the DOM\n\tdocument.body.appendChild(notification);\n\t// Force layout\n\t$tw.utils.forceLayout(notification);\n\t// Set final animated styles\n\t$tw.utils.setStyle(notification,[\n\t\t{opacity: \"1.0\"},\n\t\t{transform: \"translateY(0px)\"}\n\t]);\n\t// Set a timer to remove the notification\n\twindow.setTimeout(function() {\n\t\t// Remove our change event handler\n\t\tself.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t// Force layout and animate the notification away\n\t\t$tw.utils.forceLayout(notification);\n\t\t$tw.utils.setStyle(notification,[\n\t\t\t{opacity: \"0.0\"},\n\t\t\t{transform: \"translateX(\" + (notification.offsetWidth) + \"px)\"}\n\t\t]);\n\t\t// Remove the modal message from the DOM once the transition ends\n\t\tsetTimeout(function() {\n\t\t\tif(notification.parentNode) {\n\t\t\t\tdocument.body.removeChild(notification);\n\t\t\t}\n\t\t},duration);\n\t},$tw.config.preferences.notificationDuration);\n};\n\nexports.Notifier = Notifier;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/popup.js": {
            "title": "$:/core/modules/utils/dom/popup.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/popup.js\ntype: application/javascript\nmodule-type: utils\n\nModule that creates a $tw.utils.Popup object prototype that manages popups in the browser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreates a Popup object with these options:\n\trootElement: the DOM element to which the popup zapper should be attached\n*/\nvar Popup = function(options) {\n\toptions = options || {};\n\tthis.rootElement = options.rootElement || document.documentElement;\n\tthis.popups = []; // Array of {title:,wiki:,domNode:} objects\n};\n\n/*\nTrigger a popup open or closed. Parameters are in a hashmap:\n\ttitle: title of the tiddler where the popup details are stored\n\tdomNode: dom node to which the popup will be positioned (one of domNode or domNodeRect is required)\n\tdomNodeRect: rectangle to which the popup will be positioned\n\twiki: wiki\n\tforce: if specified, forces the popup state to true or false (instead of toggling it)\n\tfloating: if true, skips registering the popup, meaning that it will need manually clearing\n*/\nPopup.prototype.triggerPopup = function(options) {\n\t// Check if this popup is already active\n\tvar index = this.findPopup(options.title);\n\t// Compute the new state\n\tvar state = index === -1;\n\tif(options.force !== undefined) {\n\t\tstate = options.force;\n\t}\n\t// Show or cancel the popup according to the new state\n\tif(state) {\n\t\tthis.show(options);\n\t} else {\n\t\tthis.cancel(index);\n\t}\n};\n\nPopup.prototype.findPopup = function(title) {\n\tvar index = -1;\n\tfor(var t=0; t<this.popups.length; t++) {\n\t\tif(this.popups[t].title === title) {\n\t\t\tindex = t;\n\t\t}\n\t}\n\treturn index;\n};\n\nPopup.prototype.handleEvent = function(event) {\n\tif(event.type === \"click\") {\n\t\t// Find out what was clicked on\n\t\tvar info = this.popupInfo(event.target),\n\t\t\tcancelLevel = info.popupLevel - 1;\n\t\t// Don't remove the level that was clicked on if we clicked on a handle\n\t\tif(info.isHandle) {\n\t\t\tcancelLevel++;\n\t\t}\n\t\t// Cancel\n\t\tthis.cancel(cancelLevel);\n\t}\n};\n\n/*\nFind the popup level containing a DOM node. Returns:\npopupLevel: count of the number of nested popups containing the specified element\nisHandle: true if the specified element is within a popup handle\n*/\nPopup.prototype.popupInfo = function(domNode) {\n\tvar isHandle = false,\n\t\tpopupCount = 0,\n\t\tnode = domNode;\n\t// First check ancestors to see if we're within a popup handle\n\twhile(node) {\n\t\tif($tw.utils.hasClass(node,\"tc-popup-handle\")) {\n\t\t\tisHandle = true;\n\t\t\tpopupCount++;\n\t\t}\n\t\tif($tw.utils.hasClass(node,\"tc-popup-keep\")) {\n\t\t\tisHandle = true;\n\t\t}\n\t\tnode = node.parentNode;\n\t}\n\t// Then count the number of ancestor popups\n\tnode = domNode;\n\twhile(node) {\n\t\tif($tw.utils.hasClass(node,\"tc-popup\")) {\n\t\t\tpopupCount++;\n\t\t}\n\t\tnode = node.parentNode;\n\t}\n\tvar info = {\n\t\tpopupLevel: popupCount,\n\t\tisHandle: isHandle\n\t};\n\treturn info;\n};\n\n/*\nDisplay a popup by adding it to the stack\n*/\nPopup.prototype.show = function(options) {\n\t// Find out what was clicked on\n\tvar info = this.popupInfo(options.domNode);\n\t// Cancel any higher level popups\n\tthis.cancel(info.popupLevel);\n\n\t// Store the popup details if not already there\n\tif(!options.floating && this.findPopup(options.title) === -1) {\n\t\tthis.popups.push({\n\t\t\ttitle: options.title,\n\t\t\twiki: options.wiki,\n\t\t\tdomNode: options.domNode,\n\t\t\tnoStateReference: options.noStateReference\n\t\t});\n\t}\n\t// Set the state tiddler\n\tvar rect;\n\tif(options.domNodeRect) {\n\t\trect = options.domNodeRect;\n\t} else {\n\t\trect = {\n\t\t\tleft: options.domNode.offsetLeft,\n\t\t\ttop: options.domNode.offsetTop,\n\t\t\twidth: options.domNode.offsetWidth,\n\t\t\theight: options.domNode.offsetHeight\n\t\t};\n\t}\n\tvar popupRect = \"(\" + rect.left + \",\" + rect.top + \",\" + \n\t\t\t\trect.width + \",\" + rect.height + \")\";\n\tif(options.noStateReference) {\n\t\toptions.wiki.setText(options.title,\"text\",undefined,popupRect);\n\t} else {\n\t\toptions.wiki.setTextReference(options.title,popupRect);\n\t}\n\t// Add the click handler if we have any popups\n\tif(this.popups.length > 0) {\n\t\tthis.rootElement.addEventListener(\"click\",this,true);\t\t\n\t}\n};\n\n/*\nCancel all popups at or above a specified level or DOM node\nlevel: popup level to cancel (0 cancels all popups)\n*/\nPopup.prototype.cancel = function(level) {\n\tvar numPopups = this.popups.length;\n\tlevel = Math.max(0,Math.min(level,numPopups));\n\tfor(var t=level; t<numPopups; t++) {\n\t\tvar popup = this.popups.pop();\n\t\tif(popup.title) {\n\t\t\tif(popup.noStateReference) {\n\t\t\t\tpopup.wiki.deleteTiddler(popup.title);\n\t\t\t} else {\n\t\t\t\tpopup.wiki.deleteTiddler($tw.utils.parseTextReference(popup.title).title);\n        \t\t}\n\t\t}\n\t}\n\tif(this.popups.length === 0) {\n\t\tthis.rootElement.removeEventListener(\"click\",this,false);\n\t}\n};\n\n/*\nReturns true if the specified title and text identifies an active popup\n*/\nPopup.prototype.readPopupState = function(text) {\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/;\n\treturn popupLocationRegExp.test(text);\n};\n\nexports.Popup = Popup;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/scroller.js": {
            "title": "$:/core/modules/utils/dom/scroller.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/scroller.js\ntype: application/javascript\nmodule-type: utils\n\nModule that creates a $tw.utils.Scroller object prototype that manages scrolling in the browser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nEvent handler for when the `tm-scroll` event hits the document body\n*/\nvar PageScroller = function() {\n\tthis.idRequestFrame = null;\n\tthis.requestAnimationFrame = window.requestAnimationFrame ||\n\t\twindow.webkitRequestAnimationFrame ||\n\t\twindow.mozRequestAnimationFrame ||\n\t\tfunction(callback) {\n\t\t\treturn window.setTimeout(callback, 1000/60);\n\t\t};\n\tthis.cancelAnimationFrame = window.cancelAnimationFrame ||\n\t\twindow.webkitCancelAnimationFrame ||\n\t\twindow.webkitCancelRequestAnimationFrame ||\n\t\twindow.mozCancelAnimationFrame ||\n\t\twindow.mozCancelRequestAnimationFrame ||\n\t\tfunction(id) {\n\t\t\twindow.clearTimeout(id);\n\t\t};\n};\n\nPageScroller.prototype.isScrolling = function() {\n\treturn this.idRequestFrame !== null;\n}\n\nPageScroller.prototype.cancelScroll = function(srcWindow) {\n\tif(this.idRequestFrame) {\n\t\tthis.cancelAnimationFrame.call(srcWindow,this.idRequestFrame);\n\t\tthis.idRequestFrame = null;\n\t}\n};\n\n/*\nHandle an event\n*/\nPageScroller.prototype.handleEvent = function(event) {\n\tif(event.type === \"tm-scroll\") {\n\t\tif(event.paramObject && event.paramObject.selector) {\n\t\t\tthis.scrollSelectorIntoView(null,event.paramObject.selector);\n\t\t} else {\n\t\t\tthis.scrollIntoView(event.target);\t\t\t\n\t\t}\n\t\treturn false; // Event was handled\n\t}\n\treturn true;\n};\n\n/*\nHandle a scroll event hitting the page document\n*/\nPageScroller.prototype.scrollIntoView = function(element,callback) {\n\tvar self = this,\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t    srcWindow = element ? element.ownerDocument.defaultView : window;\n\t// Now get ready to scroll the body\n\tthis.cancelScroll(srcWindow);\n\tthis.startTime = Date.now();\n\t// Get the height of any position:fixed toolbars\n\tvar toolbar = srcWindow.document.querySelector(\".tc-adjust-top-of-scroll\"),\n\t\toffset = 0;\n\tif(toolbar) {\n\t\toffset = toolbar.offsetHeight;\n\t}\n\t// Get the client bounds of the element and adjust by the scroll position\n\tvar getBounds = function() {\n\t\t\tvar clientBounds = typeof callback === 'function' ? callback() : element.getBoundingClientRect(),\n\t\t\t\tscrollPosition = $tw.utils.getScrollPosition(srcWindow);\n\t\t\treturn {\n\t\t\t\tleft: clientBounds.left + scrollPosition.x,\n\t\t\t\ttop: clientBounds.top + scrollPosition.y - offset,\n\t\t\t\twidth: clientBounds.width,\n\t\t\t\theight: clientBounds.height\n\t\t\t};\n\t\t},\n\t\t// We'll consider the horizontal and vertical scroll directions separately via this function\n\t\t// targetPos/targetSize - position and size of the target element\n\t\t// currentPos/currentSize - position and size of the current scroll viewport\n\t\t// returns: new position of the scroll viewport\n\t\tgetEndPos = function(targetPos,targetSize,currentPos,currentSize) {\n\t\t\tvar newPos = targetPos;\n\t\t\t// If we are scrolling within 50 pixels of the top/left then snap to zero\n\t\t\tif(newPos < 50) {\n\t\t\t\tnewPos = 0;\n\t\t\t}\n\t\t\treturn newPos;\n\t\t},\n\t\tdrawFrame = function drawFrame() {\n\t\t\tvar t;\n\t\t\tif(duration <= 0) {\n\t\t\t\tt = 1;\n\t\t\t} else {\n\t\t\t\tt = ((Date.now()) - self.startTime) / duration;\t\n\t\t\t}\n\t\t\tif(t >= 1) {\n\t\t\t\tself.cancelScroll(srcWindow);\n\t\t\t\tt = 1;\n\t\t\t}\n\t\t\tt = $tw.utils.slowInSlowOut(t);\n\t\t\tvar scrollPosition = $tw.utils.getScrollPosition(srcWindow),\n\t\t\t\tbounds = getBounds(),\n\t\t\t\tendX = getEndPos(bounds.left,bounds.width,scrollPosition.x,srcWindow.innerWidth),\n\t\t\t\tendY = getEndPos(bounds.top,bounds.height,scrollPosition.y,srcWindow.innerHeight);\n\t\t\tsrcWindow.scrollTo(scrollPosition.x + (endX - scrollPosition.x) * t,scrollPosition.y + (endY - scrollPosition.y) * t);\n\t\t\tif(t < 1) {\n\t\t\t\tself.idRequestFrame = self.requestAnimationFrame.call(srcWindow,drawFrame);\n\t\t\t}\n\t\t};\n\tdrawFrame();\n};\n\nPageScroller.prototype.scrollSelectorIntoView = function(baseElement,selector,callback) {\n\tbaseElement = baseElement || document.body;\n\tvar element = baseElement.querySelector(selector);\n\tif(element) {\n\t\tthis.scrollIntoView(element,callback);\t\t\n\t}\n};\n\nexports.PageScroller = PageScroller;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/edition-info.js": {
            "title": "$:/core/modules/utils/edition-info.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/edition-info.js\ntype: application/javascript\nmodule-type: utils-node\n\nInformation about the available editions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar fs = require(\"fs\"),\n\tpath = require(\"path\");\n\nvar editionInfo;\n\nexports.getEditionInfo = function() {\n\tif(!editionInfo) {\n\t\t// Enumerate the edition paths\n\t\tvar editionPaths = $tw.getLibraryItemSearchPaths($tw.config.editionsPath,$tw.config.editionsEnvVar);\n\t\teditionInfo = {};\n\t\tfor(var editionIndex=0; editionIndex<editionPaths.length; editionIndex++) {\n\t\t\tvar editionPath = editionPaths[editionIndex];\n\t\t\t// Enumerate the folders\n\t\t\tvar entries = fs.readdirSync(editionPath);\n\t\t\tfor(var entryIndex=0; entryIndex<entries.length; entryIndex++) {\n\t\t\t\tvar entry = entries[entryIndex];\n\t\t\t\t// Check if directories have a valid tiddlywiki.info\n\t\t\t\tif(!editionInfo[entry] && $tw.utils.isDirectory(path.resolve(editionPath,entry))) {\n\t\t\t\t\tvar info;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tinfo = JSON.parse(fs.readFileSync(path.resolve(editionPath,entry,\"tiddlywiki.info\"),\"utf8\"));\n\t\t\t\t\t} catch(ex) {\n\t\t\t\t\t}\n\t\t\t\t\tif(info) {\n\t\t\t\t\t\teditionInfo[entry] = info;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn editionInfo;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils-node"
        },
        "$:/core/modules/utils/fakedom.js": {
            "title": "$:/core/modules/utils/fakedom.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/fakedom.js\ntype: application/javascript\nmodule-type: global\n\nA barebones implementation of DOM interfaces needed by the rendering mechanism.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Sequence number used to enable us to track objects for testing\nvar sequenceNumber = null;\n\nvar bumpSequenceNumber = function(object) {\n\tif(sequenceNumber !== null) {\n\t\tobject.sequenceNumber = sequenceNumber++;\n\t}\n};\n\nvar TW_Node = function (){\n\tthrow TypeError(\"Illegal constructor\");\n};\n\nObject.defineProperty(TW_Node.prototype, 'ELEMENT_NODE', {\n\tget: function() {\n\t\treturn 1;\n\t}\n});\n\nObject.defineProperty(TW_Node.prototype, 'TEXT_NODE', {\n\tget: function() {\n\t\treturn 3;\n\t}\n});\n\nvar TW_TextNode = function(text) {\n\tbumpSequenceNumber(this);\n\tthis.textContent = text + \"\";\n};\n\nTW_TextNode.prototype = Object.create(TW_Node.prototype);\n\nObject.defineProperty(TW_TextNode.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn this.TEXT_NODE;\n\t}\n});\n\nObject.defineProperty(TW_TextNode.prototype, \"formattedTextContent\", {\n\tget: function() {\n\t\treturn this.textContent.replace(/(\\r?\\n)/g,\"\");\n\t}\n});\n\nvar TW_Element = function(tag,namespace) {\n\tbumpSequenceNumber(this);\n\tthis.isTiddlyWikiFakeDom = true;\n\tthis.tag = tag;\n\tthis.attributes = {};\n\tthis.isRaw = false;\n\tthis.children = [];\n\tthis._style = {};\n\tthis.namespaceURI = namespace || \"http://www.w3.org/1999/xhtml\";\n};\n\nTW_Element.prototype = Object.create(TW_Node.prototype);\n\nObject.defineProperty(TW_Element.prototype, \"style\", {\n\tget: function() {\n\t\treturn this._style;\n\t},\n\tset: function(str) {\n\t\tvar self = this;\n\t\tstr = str || \"\";\n\t\t$tw.utils.each(str.split(\";\"),function(declaration) {\n\t\t\tvar parts = declaration.split(\":\"),\n\t\t\t\tname = $tw.utils.trim(parts[0]),\n\t\t\t\tvalue = $tw.utils.trim(parts[1]);\n\t\t\tif(name && value) {\n\t\t\t\tself._style[$tw.utils.convertStyleNameToPropertyName(name)] = value;\n\t\t\t}\n\t\t});\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn this.ELEMENT_NODE;\n\t}\n});\n\nTW_Element.prototype.getAttribute = function(name) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot getAttribute on a raw TW_Element\";\n\t}\n\treturn this.attributes[name];\n};\n\nTW_Element.prototype.setAttribute = function(name,value) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot setAttribute on a raw TW_Element\";\n\t}\n\tthis.attributes[name] = value + \"\";\n};\n\nTW_Element.prototype.setAttributeNS = function(namespace,name,value) {\n\tthis.setAttribute(name,value);\n};\n\nTW_Element.prototype.removeAttribute = function(name) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot removeAttribute on a raw TW_Element\";\n\t}\n\tif($tw.utils.hop(this.attributes,name)) {\n\t\tdelete this.attributes[name];\n\t}\n};\n\nTW_Element.prototype.appendChild = function(node) {\n\tthis.children.push(node);\n\tnode.parentNode = this;\n};\n\nTW_Element.prototype.insertBefore = function(node,nextSibling) {\n\tif(nextSibling) {\n\t\tvar p = this.children.indexOf(nextSibling);\n\t\tif(p !== -1) {\n\t\t\tthis.children.splice(p,0,node);\n\t\t\tnode.parentNode = this;\n\t\t} else {\n\t\t\tthis.appendChild(node);\n\t\t}\n\t} else {\n\t\tthis.appendChild(node);\n\t}\n};\n\nTW_Element.prototype.removeChild = function(node) {\n\tvar p = this.children.indexOf(node);\n\tif(p !== -1) {\n\t\tthis.children.splice(p,1);\n\t}\n};\n\nTW_Element.prototype.hasChildNodes = function() {\n\treturn !!this.children.length;\n};\n\nObject.defineProperty(TW_Element.prototype, \"childNodes\", {\n\tget: function() {\n\t\treturn this.children;\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"firstChild\", {\n\tget: function() {\n\t\treturn this.children[0];\n\t}\n});\n\nTW_Element.prototype.addEventListener = function(type,listener,useCapture) {\n\t// Do nothing\n};\n\nObject.defineProperty(TW_Element.prototype, \"tagName\", {\n\tget: function() {\n\t\treturn this.tag || \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"className\", {\n\tget: function() {\n\t\treturn this.attributes[\"class\"] || \"\";\n\t},\n\tset: function(value) {\n\t\tthis.attributes[\"class\"] = value + \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"value\", {\n\tget: function() {\n\t\treturn this.attributes.value || \"\";\n\t},\n\tset: function(value) {\n\t\tthis.attributes.value = value + \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"outerHTML\", {\n\tget: function() {\n\t\tvar output = [],attr,a,v;\n\t\toutput.push(\"<\",this.tag);\n\t\tif(this.attributes) {\n\t\t\tattr = [];\n\t\t\tfor(a in this.attributes) {\n\t\t\t\tattr.push(a);\n\t\t\t}\n\t\t\tattr.sort();\n\t\t\tfor(a=0; a<attr.length; a++) {\n\t\t\t\tv = this.attributes[attr[a]];\n\t\t\t\tif(v !== undefined) {\n\t\t\t\t\toutput.push(\" \",attr[a],\"=\\\"\",$tw.utils.htmlEncode(v),\"\\\"\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif(this._style) {\n\t\t\tvar style = [];\n\t\t\tfor(var s in this._style) {\n\t\t\t\tstyle.push($tw.utils.convertPropertyNameToStyleName(s) + \":\" + this._style[s] + \";\");\n\t\t\t}\n\t\t\tif(style.length > 0) {\n\t\t\t\toutput.push(\" style=\\\"\",style.join(\"\"),\"\\\"\");\n\t\t\t}\n\t\t}\n\t\toutput.push(\">\");\n\t\tif($tw.config.htmlVoidElements.indexOf(this.tag) === -1) {\n\t\t\toutput.push(this.innerHTML);\n\t\t\toutput.push(\"</\",this.tag,\">\");\n\t\t}\n\t\treturn output.join(\"\");\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"innerHTML\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\treturn this.rawHTML;\n\t\t} else {\n\t\t\tvar b = [];\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tif(node instanceof TW_Element) {\n\t\t\t\t\tb.push(node.outerHTML);\n\t\t\t\t} else if(node instanceof TW_TextNode) {\n\t\t\t\t\tb.push($tw.utils.htmlEncode(node.textContent));\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn b.join(\"\");\n\t\t}\n\t},\n\tset: function(value) {\n\t\tthis.isRaw = true;\n\t\tthis.rawHTML = value;\n\t\tthis.rawTextContent = null;\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"textInnerHTML\", {\n\tset: function(value) {\n\t\tif(this.isRaw) {\n\t\t\tthis.rawTextContent = value;\n\t\t} else {\n\t\t\tthrow \"Cannot set textInnerHTML of a non-raw TW_Element\";\n\t\t}\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"textContent\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\tif(this.rawTextContent === null) {\n\t\t\t\treturn \"\";\n\t\t\t} else {\n\t\t\t\treturn this.rawTextContent;\n\t\t\t}\n\t\t} else {\n\t\t\tvar b = [];\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tb.push(node.textContent);\n\t\t\t});\n\t\t\treturn b.join(\"\");\n\t\t}\n\t},\n\tset: function(value) {\n\t\tthis.children = [new TW_TextNode(value)];\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"formattedTextContent\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\treturn \"\";\n\t\t} else {\n\t\t\tvar b = [],\n\t\t\t\tisBlock = $tw.config.htmlBlockElements.indexOf(this.tag) !== -1;\n\t\t\tif(isBlock) {\n\t\t\t\tb.push(\"\\n\");\n\t\t\t}\n\t\t\tif(this.tag === \"li\") {\n\t\t\t\tb.push(\"* \");\n\t\t\t}\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tb.push(node.formattedTextContent);\n\t\t\t});\n\t\t\tif(isBlock) {\n\t\t\t\tb.push(\"\\n\");\n\t\t\t}\n\t\t\treturn b.join(\"\");\n\t\t}\n\t}\n});\n\nvar document = {\n\tsetSequenceNumber: function(value) {\n\t\tsequenceNumber = value;\n\t},\n\tcreateElementNS: function(namespace,tag) {\n\t\treturn new TW_Element(tag,namespace);\n\t},\n\tcreateElement: function(tag) {\n\t\treturn new TW_Element(tag);\n\t},\n\tcreateTextNode: function(text) {\n\t\treturn new TW_TextNode(text);\n\t},\n\tcompatMode: \"CSS1Compat\", // For KaTeX to know that we're not a browser in quirks mode\n\tisTiddlyWikiFakeDom: true\n};\n\nexports.fakeDocument = document;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/utils/filesystem.js": {
            "title": "$:/core/modules/utils/filesystem.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/filesystem.js\ntype: application/javascript\nmodule-type: utils-node\n\nFile system utilities\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar fs = require(\"fs\"),\n\tpath = require(\"path\");\n\n/*\nReturn the subdirectories of a path\n*/\nexports.getSubdirectories = function(dirPath) {\n\tif(!$tw.utils.isDirectory(dirPath)) {\n\t\treturn null;\n\t}\n\tvar subdirs = [];\n\t$tw.utils.each(fs.readdirSync(dirPath),function(item) {\n\t\tif($tw.utils.isDirectory(path.resolve(dirPath,item))) {\n\t\t\tsubdirs.push(item);\n\t\t}\n\t});\n\treturn subdirs;\n}\n\n/*\nRecursively (and synchronously) copy a directory and all its content\n*/\nexports.copyDirectory = function(srcPath,dstPath) {\n\t// Remove any trailing path separators\n\tsrcPath = path.resolve($tw.utils.removeTrailingSeparator(srcPath));\n\tdstPath = path.resolve($tw.utils.removeTrailingSeparator(dstPath));\n\t// Check that neither director is within the other\n\tif(srcPath.substring(0,dstPath.length) === dstPath || dstPath.substring(0,srcPath.length) === srcPath) {\n\t\treturn \"Cannot copy nested directories\";\n\t}\n\t// Create the destination directory\n\tvar err = $tw.utils.createDirectory(dstPath);\n\tif(err) {\n\t\treturn err;\n\t}\n\t// Function to copy a folder full of files\n\tvar copy = function(srcPath,dstPath) {\n\t\tvar srcStats = fs.lstatSync(srcPath),\n\t\t\tdstExists = fs.existsSync(dstPath);\n\t\tif(srcStats.isFile()) {\n\t\t\t$tw.utils.copyFile(srcPath,dstPath);\n\t\t} else if(srcStats.isDirectory()) {\n\t\t\tvar items = fs.readdirSync(srcPath);\n\t\t\tfor(var t=0; t<items.length; t++) {\n\t\t\t\tvar item = items[t],\n\t\t\t\t\terr = copy(srcPath + path.sep + item,dstPath + path.sep + item);\n\t\t\t\tif(err) {\n\t\t\t\t\treturn err;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\tcopy(srcPath,dstPath);\n\treturn null;\n};\n\n/*\nCopy a file\n*/\nvar FILE_BUFFER_LENGTH = 64 * 1024,\n\tfileBuffer;\n\nexports.copyFile = function(srcPath,dstPath) {\n\t// Create buffer if required\n\tif(!fileBuffer) {\n\t\tfileBuffer = Buffer.alloc(FILE_BUFFER_LENGTH);\n\t}\n\t// Create any directories in the destination\n\t$tw.utils.createDirectory(path.dirname(dstPath));\n\t// Copy the file\n\tvar srcFile = fs.openSync(srcPath,\"r\"),\n\t\tdstFile = fs.openSync(dstPath,\"w\"),\n\t\tbytesRead = 1,\n\t\tpos = 0;\n\twhile (bytesRead > 0) {\n\t\tbytesRead = fs.readSync(srcFile,fileBuffer,0,FILE_BUFFER_LENGTH,pos);\n\t\tfs.writeSync(dstFile,fileBuffer,0,bytesRead);\n\t\tpos += bytesRead;\n\t}\n\tfs.closeSync(srcFile);\n\tfs.closeSync(dstFile);\n\treturn null;\n};\n\n/*\nRemove trailing path separator\n*/\nexports.removeTrailingSeparator = function(dirPath) {\n\tvar len = dirPath.length;\n\tif(dirPath.charAt(len-1) === path.sep) {\n\t\tdirPath = dirPath.substr(0,len-1);\n\t}\n\treturn dirPath;\n};\n\n/*\nRecursively create a directory\n*/\nexports.createDirectory = function(dirPath) {\n\tif(dirPath.substr(dirPath.length-1,1) !== path.sep) {\n\t\tdirPath = dirPath + path.sep;\n\t}\n\tvar pos = 1;\n\tpos = dirPath.indexOf(path.sep,pos);\n\twhile(pos !== -1) {\n\t\tvar subDirPath = dirPath.substr(0,pos);\n\t\tif(!$tw.utils.isDirectory(subDirPath)) {\n\t\t\ttry {\n\t\t\t\tfs.mkdirSync(subDirPath);\n\t\t\t} catch(e) {\n\t\t\t\treturn \"Error creating directory '\" + subDirPath + \"'\";\n\t\t\t}\n\t\t}\n\t\tpos = dirPath.indexOf(path.sep,pos + 1);\n\t}\n\treturn null;\n};\n\n/*\nRecursively create directories needed to contain a specified file\n*/\nexports.createFileDirectories = function(filePath) {\n\treturn $tw.utils.createDirectory(path.dirname(filePath));\n};\n\n/*\nRecursively delete a directory\n*/\nexports.deleteDirectory = function(dirPath) {\n\tif(fs.existsSync(dirPath)) {\n\t\tvar entries = fs.readdirSync(dirPath);\n\t\tfor(var entryIndex=0; entryIndex<entries.length; entryIndex++) {\n\t\t\tvar currPath = dirPath + path.sep + entries[entryIndex];\n\t\t\tif(fs.lstatSync(currPath).isDirectory()) {\n\t\t\t\t$tw.utils.deleteDirectory(currPath);\n\t\t\t} else {\n\t\t\t\tfs.unlinkSync(currPath);\n\t\t\t}\n\t\t}\n\tfs.rmdirSync(dirPath);\n\t}\n\treturn null;\n};\n\n/*\nCheck if a path identifies a directory\n*/\nexports.isDirectory = function(dirPath) {\n\treturn fs.existsSync(dirPath) && fs.statSync(dirPath).isDirectory();\n};\n\n/*\nCheck if a path identifies a directory that is empty\n*/\nexports.isDirectoryEmpty = function(dirPath) {\n\tif(!$tw.utils.isDirectory(dirPath)) {\n\t\treturn false;\n\t}\n\tvar files = fs.readdirSync(dirPath),\n\t\tempty = true;\n\t$tw.utils.each(files,function(file,index) {\n\t\tif(file.charAt(0) !== \".\") {\n\t\t\tempty = false;\n\t\t}\n\t});\n\treturn empty;\n};\n\n/*\nRecursively delete a tree of empty directories\n*/\nexports.deleteEmptyDirs = function(dirpath,callback) {\n\tvar self = this;\n\tfs.readdir(dirpath,function(err,files) {\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\tif(files.length > 0) {\n\t\t\treturn callback(null);\n\t\t}\n\t\tfs.rmdir(dirpath,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tself.deleteEmptyDirs(path.dirname(dirpath),callback);\n\t\t});\n\t});\n};\n\n/*\nCreate a fileInfo object for saving a tiddler:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file on disk (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n\tisEditableFile: true if the tiddler was loaded via non-standard options & marked editable\nOptions include:\n\tdirectory: absolute path of root directory to which we are saving\n\tpathFilters: optional array of filters to be used to generate the base path\n\textFilters: optional array of filters to be used to generate the base path\n\twiki: optional wiki for evaluating the pathFilters,\n\tfileInfo: an existing fileInfo to check against\n\toriginalpath: a preferred filepath if no pathFilters match\n*/\nexports.generateTiddlerFileInfo = function(tiddler,options) {\n\tvar fileInfo = {}, metaExt;\n\t// Propagate the isEditableFile flag\n\tif(options.fileInfo) {\n\t\tfileInfo.isEditableFile = options.fileInfo.isEditableFile || false;\n\t}\n\t// Check if the tiddler has any unsafe fields that can't be expressed in a .tid or .meta file: containing control characters, or leading/trailing whitespace\n\tvar hasUnsafeFields = false;\n\t$tw.utils.each(tiddler.getFieldStrings(),function(value,fieldName) {\n\t\tif(fieldName !== \"text\") {\n\t\t\thasUnsafeFields = hasUnsafeFields || /[\\x00-\\x1F]/mg.test(value);\n\t\t\thasUnsafeFields = hasUnsafeFields || ($tw.utils.trim(value) !== value);\n\t\t}\n\t});\n\t// Check for field values \n\tif(hasUnsafeFields) {\n\t\t// Save as a JSON file\n\t\tfileInfo.type = \"application/json\";\n\t\tfileInfo.hasMetaFile = false;\n\t} else {\n\t\t// Save as a .tid or a text/binary file plus a .meta file\n\t\tvar tiddlerType = tiddler.fields.type || \"text/vnd.tiddlywiki\";\n\t\tif(tiddlerType === \"text/vnd.tiddlywiki\") {\n\t\t\t// Save as a .tid file\n\t\t\tfileInfo.type = \"application/x-tiddler\";\n\t\t\tfileInfo.hasMetaFile = false;\n\t\t} else {\n\t\t\t// Save as a text/binary file and a .meta file\n\t\t\tfileInfo.type = tiddlerType;\n\t\t\tfileInfo.hasMetaFile = true;\n\t\t}\n\t\tif(options.extFilters) {\n\t\t\t// Check for extension override\n\t\t\tmetaExt = $tw.utils.generateTiddlerExtension(tiddler.fields.title,{\n\t\t\t\textFilters: options.extFilters,\n\t\t\t\twiki: options.wiki\n\t\t\t});\n\t\t\tif(metaExt){\n\t\t\t\tif(metaExt === \".tid\") {\n\t\t\t\t\t// Overriding to the .tid extension needs special handling\n\t\t\t\t\tfileInfo.type = \"application/x-tiddler\";\n\t\t\t\t\tfileInfo.hasMetaFile = false;\n\t\t\t\t} else if (metaExt === \".json\") {\n\t\t\t\t\t// Overriding to the .json extension needs special handling\n\t\t\t\t\tfileInfo.type = \"application/json\";\n\t\t\t\t\tfileInfo.hasMetaFile = false;\n\t\t\t\t} else {\n\t\t\t\t\t//If the new type matches a known extention, use that MIME type's encoding\n\t\t\t\t\tvar extInfo = $tw.utils.getFileExtensionInfo(metaExt);\n\t\t\t\t\tfileInfo.type = extInfo ? extInfo.type : null;\n\t\t\t\t\tfileInfo.encoding = $tw.utils.getTypeEncoding(metaExt);\n\t\t\t\t\tfileInfo.hasMetaFile = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Take the file extension from the tiddler content type or metaExt\n\tvar contentTypeInfo = $tw.config.contentTypeInfo[fileInfo.type] || {extension: \"\"};\n\t// Generate the filepath\n\tfileInfo.filepath = $tw.utils.generateTiddlerFilepath(tiddler.fields.title,{\n\t\textension: metaExt || contentTypeInfo.extension,\n\t\tdirectory: options.directory,\n\t\tpathFilters: options.pathFilters,\n\t\twiki: options.wiki,\n\t\tfileInfo: options.fileInfo,\n\t\toriginalpath: options.originalpath\n\t});\n\treturn fileInfo;\n};\n\n/*\nGenerate the file extension for saving a tiddler\nOptions include:\n\textFilters: optional array of filters to be used to generate the extention\n\twiki: optional wiki for evaluating the extFilters\n*/\nexports.generateTiddlerExtension = function(title,options) {\n\tvar self = this,\n\t\textension;\n\t// Check if any of the extFilters applies\n\tif(options.extFilters && options.wiki) { \n\t\t$tw.utils.each(options.extFilters,function(filter) {\n\t\t\tif(!extension) {\n\t\t\t\tvar source = options.wiki.makeTiddlerIterator([title]),\n\t\t\t\t\tresult = options.wiki.filterTiddlers(filter,null,source);\n\t\t\t\tif(result.length > 0) {\n\t\t\t\t\textension = result[0];\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn extension;\n};\n\n/*\nGenerate the filepath for saving a tiddler\nOptions include:\n\textension: file extension to be added the finished filepath\n\tdirectory: absolute path of root directory to which we are saving\n\tpathFilters: optional array of filters to be used to generate the base path\n\twiki: optional wiki for evaluating the pathFilters\n\tfileInfo: an existing fileInfo object to check against\n*/\nexports.generateTiddlerFilepath = function(title,options) {\n\tvar self = this,\n\t\tdirectory = options.directory || \"\",\n\t\textension = options.extension || \"\",\n\t\toriginalpath = options.originalpath || \"\",\n\t\tfilepath;\t\n\t// Check if any of the pathFilters applies\n\tif(options.pathFilters && options.wiki) {\n\t\t$tw.utils.each(options.pathFilters,function(filter) {\n\t\t\tif(!filepath) {\n\t\t\t\tvar source = options.wiki.makeTiddlerIterator([title]),\n\t\t\t\t\tresult = options.wiki.filterTiddlers(filter,null,source);\n\t\t\t\tif(result.length > 0) {\n\t\t\t\t\tfilepath = result[0];\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\tif(!filepath && originalpath !== \"\") {\n\t\t//Use the originalpath without the extension\n\t\tvar ext = path.extname(originalpath);\n\t\tfilepath = originalpath.substring(0,originalpath.length - ext.length);\n\t} else if(!filepath) {\n\t\tfilepath = title;\n\t\t// If the filepath already ends in the extension then remove it\n\t\tif(filepath.substring(filepath.length - extension.length) === extension) {\n\t\t\tfilepath = filepath.substring(0,filepath.length - extension.length);\n\t\t}\n\t\t// Remove any forward or backward slashes so we don't create directories\n\t\tfilepath = filepath.replace(/\\/|\\\\/g,\"_\");\n\t}\n\t//If the path does not start with \".\" or \"..\" and a path seperator, then\n\tif(!/^\\.{1,2}[/\\\\]/g.test(filepath)) {\n\t\t// Don't let the filename start with any dots because such files are invisible on *nix\n\t\tfilepath = filepath.replace(/^\\.+/g,\"_\");\n\t}\n\t// Remove any characters that can't be used in cross-platform filenames\n\tfilepath = $tw.utils.transliterate(filepath.replace(/<|>|~|\\:|\\\"|\\||\\?|\\*|\\^/g,\"_\"));\n\t// Truncate the filename if it is too long\n\tif(filepath.length > 200) {\n\t\tfilepath = filepath.substr(0,200);\n\t}\n\t// If the resulting filename is blank (eg because the title is just punctuation characters)\n\tif(!filepath) {\n\t\t// ...then just use the character codes of the title\n\t\tfilepath = \"\";\t\n\t\t$tw.utils.each(title.split(\"\"),function(char) {\n\t\t\tif(filepath) {\n\t\t\t\tfilepath += \"-\";\n\t\t\t}\n\t\t\tfilepath += char.charCodeAt(0).toString();\n\t\t});\n\t}\n\t// Add a uniquifier if the file already exists\n\tvar fullPath, oldPath = (options.fileInfo) ? options.fileInfo.filepath : undefined,\n\t\tcount = 0;\n\tdo {\n\t\tfullPath = path.resolve(directory,filepath + (count ? \"_\" + count : \"\") + extension);\n\t\tif(oldPath && oldPath == fullPath) {\n\t\t\tbreak;\n\t\t}\n\t\tcount++;\n\t} while(fs.existsSync(fullPath));\n\t// If the last write failed with an error, or if path does not start with:\n\t//\tthe resolved options.directory, the resolved wikiPath directory, or the wikiTiddlersPath directory, \n\t//\tthen encodeURIComponent() and resolve to tiddler directory\n\tvar newPath = fullPath,\n\t\tencode = (options.fileInfo || {writeError: false}).writeError == true;\n\tif(!encode){\n\t\tencode = !(fullPath.indexOf(path.resolve(directory)) == 0 ||\n\t\t\tfullPath.indexOf(path.resolve($tw.boot.wikiPath)) == 0 ||\n\t\t\tfullPath.indexOf($tw.boot.wikiTiddlersPath) == 0);\n\t\t}\n\tif(encode){\n\t\tfullPath = path.resolve(directory, encodeURIComponent(fullPath));\n\t}\n\t// Call hook to allow plugins to modify the final path\n\tfullPath = $tw.hooks.invokeHook(\"th-make-tiddler-path\", newPath, fullPath);\n\t// Return the full path to the file\n\treturn fullPath;\n};\n\n/*\nSave a tiddler to a file described by the fileInfo:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n*/\nexports.saveTiddlerToFile = function(tiddler,fileInfo,callback) {\n\t$tw.utils.createDirectory(path.dirname(fileInfo.filepath));\n\tif(fileInfo.hasMetaFile) {\n\t\t// Save the tiddler as a separate body and meta file\n\t\tvar typeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/plain\"] || {encoding: \"utf8\"};\n\t\tfs.writeFile(fileInfo.filepath,tiddler.fields.text,typeInfo.encoding,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tfs.writeFile(fileInfo.filepath + \".meta\",tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}),\"utf8\",callback);\n\t\t});\n\t} else {\n\t\t// Save the tiddler as a self contained templated file\n\t\tif(fileInfo.type === \"application/x-tiddler\") {\n\t\t\tfs.writeFile(fileInfo.filepath,tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}) + (!!tiddler.fields.text ? \"\\n\\n\" + tiddler.fields.text : \"\"),\"utf8\",callback);\n\t\t} else {\n\t\t\tfs.writeFile(fileInfo.filepath,JSON.stringify([tiddler.getFieldStrings({exclude: [\"bag\"]})],null,$tw.config.preferences.jsonSpaces),\"utf8\",callback);\n\t\t}\n\t}\n};\n\n/*\nSave a tiddler to a file described by the fileInfo:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n*/\nexports.saveTiddlerToFileSync = function(tiddler,fileInfo) {\n\t$tw.utils.createDirectory(path.dirname(fileInfo.filepath));\n\tif(fileInfo.hasMetaFile) {\n\t\t// Save the tiddler as a separate body and meta file\n\t\tvar typeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/plain\"] || {encoding: \"utf8\"};\n\t\tfs.writeFileSync(fileInfo.filepath,tiddler.fields.text,typeInfo.encoding);\n\t\tfs.writeFileSync(fileInfo.filepath + \".meta\",tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}),\"utf8\");\n\t} else {\n\t\t// Save the tiddler as a self contained templated file\n\t\tif(fileInfo.type === \"application/x-tiddler\") {\n\t\t\tfs.writeFileSync(fileInfo.filepath,tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}) + (!!tiddler.fields.text ? \"\\n\\n\" + tiddler.fields.text : \"\"),\"utf8\");\n\t\t} else {\n\t\t\tfs.writeFileSync(fileInfo.filepath,JSON.stringify([tiddler.getFieldStrings({exclude: [\"bag\"]})],null,$tw.config.preferences.jsonSpaces),\"utf8\");\n\t\t}\n\t}\n};\n\n/*\nDelete a file described by the fileInfo if it exits\n*/\nexports.deleteTiddlerFile = function(fileInfo, callback) {\n\t//Only attempt to delete files that exist on disk\n\tif(!fileInfo.filepath || !fs.existsSync(fileInfo.filepath)) {\n\t\treturn callback(null);\n\t}\n\t// Delete the file\n\tfs.unlink(fileInfo.filepath,function(err) {\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\t\n\t\t// Delete the metafile if present\n\t\tif(fileInfo.hasMetaFile && fs.existsSync(fileInfo.filepath + \".meta\")) {\n\t\t\tfs.unlink(fileInfo.filepath + \".meta\",function(err) {\n\t\t\t\tif(err) {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t\treturn $tw.utils.deleteEmptyDirs(path.dirname(fileInfo.filepath),callback);\n\t\t\t});\n\t\t} else {\n\t\t\treturn $tw.utils.deleteEmptyDirs(path.dirname(fileInfo.filepath),callback);\n\t\t}\n\t});\n};\n\n/*\nCleanup old files on disk, by comparing the options values:\n\tadaptorInfo from $tw.syncer.tiddlerInfo\n\tbootInfo from $tw.boot.files\n*/\nexports.cleanupTiddlerFiles = function(options, callback) {\n\tvar adaptorInfo = options.adaptorInfo || {},\n\tbootInfo = options.bootInfo || {},\n\ttitle = options.title || \"undefined\";\n\tif(adaptorInfo.filepath && bootInfo.filepath && adaptorInfo.filepath !== bootInfo.filepath) {\n\t\treturn $tw.utils.deleteTiddlerFile(adaptorInfo, function(err){\n\t\t\tif(err) {\n\t\t\t\tif ((err.code == \"EPERM\" || err.code == \"EACCES\") && err.syscall == \"unlink\") {\n\t\t\t\t\t// Error deleting the previous file on disk, should fail gracefully\n\t\t\t\t\t$tw.syncer.displayError(\"Server desynchronized. Error cleaning up previous file for tiddler: \"+title, err);\n\t\t\t\t\treturn callback(null);\n\t\t\t\t} else {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn callback(null);\n\t\t});\n\t} else {\n\t\treturn callback(null);\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils-node"
        },
        "$:/core/modules/utils/linkedlist.js": {
            "title": "$:/core/modules/utils/linkedlist.js",
            "text": "/*\\\nmodule-type: utils\ntitle: $:/core/modules/utils/linkedlist.js\ntype: application/javascript\n\nThis is a doubly-linked indexed list intended for manipulation, particularly\npushTop, which it does with significantly better performance than an array.\n\n\\*/\n(function(){\n\nfunction LinkedList() {\n\tthis.clear();\n};\n\nLinkedList.prototype.clear = function() {\n\tthis.index = Object.create(null);\n\t// LinkedList performs the duty of both the head and tail node\n\tthis.next = this;\n\tthis.prev = this;\n\tthis.length = 0;\n};\n\nLinkedList.prototype.remove = function(value) {\n\tif($tw.utils.isArray(value)) {\n\t\tfor(var t=0; t<value.length; t++) {\n\t\t\t_removeOne(this,value[t]);\n\t\t}\n\t} else {\n\t\t_removeOne(this,value);\n\t}\n};\n\nLinkedList.prototype.push = function(/* values */) {\n\tfor(var i = 0; i < arguments.length; i++) {\n\t\tvar value = arguments[i];\n\t\tvar node = {value: value};\n\t\tvar preexistingNode = this.index[value];\n\t\t_linkToEnd(this,node);\n\t\tif(preexistingNode) {\n\t\t\t// We want to keep pointing to the first instance, but we want\n\t\t\t// to have that instance (or chain of instances) point to the\n\t\t\t// new one.\n\t\t\twhile (preexistingNode.copy) {\n\t\t\t\tpreexistingNode = preexistingNode.copy;\n\t\t\t}\n\t\t\tpreexistingNode.copy = node;\n\t\t} else {\n\t\t\tthis.index[value] = node;\n\t\t}\n\t}\n};\n\nLinkedList.prototype.pushTop = function(value) {\n\tif($tw.utils.isArray(value)) {\n\t\tfor(var t=0; t<value.length; t++) {\n\t\t\t_removeOne(this,value[t]);\n\t\t}\n\t\tthis.push.apply(this,value);\n\t} else {\n\t\tvar node = _removeOne(this,value);\n\t\tif(!node) {\n\t\t\tnode = {value: value};\n\t\t\tthis.index[value] = node;\n\t\t} else {\n\t\t\t// Put this node at the end of the copy chain.\n\t\t\tvar preexistingNode = node;\n\t\t\twhile(preexistingNode.copy) {\n\t\t\t\tpreexistingNode = preexistingNode.copy;\n\t\t\t}\n\t\t\t// The order of these three statements is important,\n\t\t\t// because sometimes preexistingNode == node.\n\t\t\tpreexistingNode.copy = node;\n\t\t\tthis.index[value] = node.copy;\n\t\t\tnode.copy = undefined;\n\t\t}\n\t\t_linkToEnd(this,node);\n\t}\n};\n\nLinkedList.prototype.each = function(callback) {\n\tfor(var ptr = this.next; ptr !== this; ptr = ptr.next) {\n\t\tcallback(ptr.value);\n\t}\n};\n\nLinkedList.prototype.toArray = function() {\n\tvar output = [];\n\tfor(var ptr = this.next; ptr !== this; ptr = ptr.next) {\n\t\toutput.push(ptr.value);\n\t}\n\treturn output;\n};\n\nfunction _removeOne(list,value) {\n\tvar node = list.index[value];\n\tif(node) {\n\t\tnode.prev.next = node.next;\n\t\tnode.next.prev = node.prev;\n\t\tlist.length -= 1;\n\t\t// Point index to the next instance of the same value, maybe nothing.\n\t\tlist.index[value] = node.copy;\n\t}\n\treturn node;\n};\n\nfunction _linkToEnd(list,node) {\n\t// Sticks the given node onto the end of the list.\n\tlist.prev.next = node;\n\tnode.prev = list.prev;\n\tlist.prev = node;\n\tnode.next = list;\n\tlist.length += 1;\n};\n\nexports.LinkedList = LinkedList;\n\n})();\n",
            "module-type": "utils",
            "type": "application/javascript"
        },
        "$:/core/modules/utils/logger.js": {
            "title": "$:/core/modules/utils/logger.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/logger.js\ntype: application/javascript\nmodule-type: utils\n\nA basic logging implementation\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ALERT_TAG = \"$:/tags/Alert\";\n\n/*\nMake a new logger\n*/\nfunction Logger(componentName,options) {\n\toptions = options || {};\n\tthis.componentName = componentName || \"\";\n\tthis.colour = options.colour || \"white\";\n\tthis.enable = \"enable\" in options ? options.enable : true;\n\tthis.save = \"save\" in options ? options.save : true;\n\tthis.saveLimit = options.saveLimit || 100 * 1024;\n\tthis.saveBufferLogger = this;\n\tthis.buffer = \"\";\n\tthis.alertCount = 0;\n}\n\nLogger.prototype.setSaveBuffer = function(logger) {\n\tthis.saveBufferLogger = logger;\n};\n\n/*\nLog a message\n*/\nLogger.prototype.log = function(/* args */) {\n\tvar self = this;\n\tif(this.enable) {\n\t\tif(this.saveBufferLogger.save) {\n\t\t\tthis.saveBufferLogger.buffer += $tw.utils.formatDateString(new Date(),\"YYYY MM DD 0hh:0mm:0ss.0XXX\") + \":\";\n\t\t\t$tw.utils.each(Array.prototype.slice.call(arguments,0),function(arg,index) {\n\t\t\t\tself.saveBufferLogger.buffer += \" \" + arg;\n\t\t\t});\n\t\t\tthis.saveBufferLogger.buffer += \"\\n\";\n\t\t\tthis.saveBufferLogger.buffer = this.saveBufferLogger.buffer.slice(-this.saveBufferLogger.saveLimit);\t\t\t\n\t\t}\n\t\tif(console !== undefined && console.log !== undefined) {\n\t\t\treturn Function.apply.call(console.log, console, [$tw.utils.terminalColour(this.colour),this.componentName + \":\"].concat(Array.prototype.slice.call(arguments,0)).concat($tw.utils.terminalColour()));\n\t\t}\n\t} \n};\n\n/*\nRead the message buffer\n*/\nLogger.prototype.getBuffer = function() {\n\treturn this.saveBufferLogger.buffer;\n};\n\n/*\nLog a structure as a table\n*/\nLogger.prototype.table = function(value) {\n\t(console.table || console.log)(value);\n};\n\n/*\nAlert a message\n*/\nLogger.prototype.alert = function(/* args */) {\n\tif(this.enable) {\n\t\t// Prepare the text of the alert\n\t\tvar text = Array.prototype.join.call(arguments,\" \");\n\t\t// Create alert tiddlers in the browser\n\t\tif($tw.browser) {\n\t\t\t// Check if there is an existing alert with the same text and the same component\n\t\t\tvar existingAlerts = $tw.wiki.getTiddlersWithTag(ALERT_TAG),\n\t\t\t\talertFields,\n\t\t\t\texistingCount,\n\t\t\t\tself = this;\n\t\t\t$tw.utils.each(existingAlerts,function(title) {\n\t\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\t\tif(tiddler.fields.text === text && tiddler.fields.component === self.componentName && tiddler.fields.modified && (!alertFields || tiddler.fields.modified < alertFields.modified)) {\n\t\t\t\t\t\talertFields = $tw.utils.extend({},tiddler.fields);\n\t\t\t\t}\n\t\t\t});\n\t\t\tif(alertFields) {\n\t\t\t\texistingCount = alertFields.count || 1;\n\t\t\t} else {\n\t\t\t\talertFields = {\n\t\t\t\t\ttitle: $tw.wiki.generateNewTitle(\"$:/temp/alerts/alert\",{prefix: \"\"}),\n\t\t\t\t\ttext: text,\n\t\t\t\t\ttags: [ALERT_TAG],\n\t\t\t\t\tcomponent: this.componentName\n\t\t\t\t};\n\t\t\t\texistingCount = 0;\n\t\t\t\tthis.alertCount += 1;\n\t\t\t}\n\t\t\talertFields.modified = new Date();\n\t\t\tif(++existingCount > 1) {\n\t\t\t\talertFields.count = existingCount;\n\t\t\t} else {\n\t\t\t\talertFields.count = undefined;\n\t\t\t}\n\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler(alertFields));\n\t\t\t// Log the alert as well\n\t\t\tthis.log.apply(this,Array.prototype.slice.call(arguments,0));\n\t\t} else {\n\t\t\t// Print an orange message to the console if not in the browser\n\t\t\tconsole.error(\"\\x1b[1;33m\" + text + \"\\x1b[0m\");\n\t\t}\t\t\n\t}\n};\n\n/*\nClear outstanding alerts\n*/\nLogger.prototype.clearAlerts = function() {\n\tvar self = this;\n\tif($tw.browser && this.alertCount > 0) {\n\t\t$tw.utils.each($tw.wiki.getTiddlersWithTag(ALERT_TAG),function(title) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\tif(tiddler.fields.component === self.componentName) {\n\t\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t\t}\n\t\t});\n\t\tthis.alertCount = 0;\n\t}\n};\n\nexports.Logger = Logger;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/parsetree.js": {
            "title": "$:/core/modules/utils/parsetree.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/parsetree.js\ntype: application/javascript\nmodule-type: utils\n\nParse tree utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.addAttributeToParseTreeNode = function(node,name,value) {\n\tnode.attributes = node.attributes || {};\n\tnode.attributes[name] = {type: \"string\", value: value};\n};\n\nexports.getAttributeValueFromParseTreeNode = function(node,name,defaultValue) {\n\tif(node.attributes && node.attributes[name] && node.attributes[name].value !== undefined) {\n\t\treturn node.attributes[name].value;\n\t}\n\treturn defaultValue;\n};\n\nexports.addClassToParseTreeNode = function(node,classString) {\n\tvar classes = [];\n\tnode.attributes = node.attributes || {};\n\tnode.attributes[\"class\"] = node.attributes[\"class\"] || {type: \"string\", value: \"\"};\n\tif(node.attributes[\"class\"].type === \"string\") {\n\t\tif(node.attributes[\"class\"].value !== \"\") {\n\t\t\tclasses = node.attributes[\"class\"].value.split(\" \");\n\t\t}\n\t\tif(classString !== \"\") {\n\t\t\t$tw.utils.pushTop(classes,classString.split(\" \"));\n\t\t}\n\t\tnode.attributes[\"class\"].value = classes.join(\" \");\n\t}\n};\n\nexports.addStyleToParseTreeNode = function(node,name,value) {\n\t\tnode.attributes = node.attributes || {};\n\t\tnode.attributes.style = node.attributes.style || {type: \"string\", value: \"\"};\n\t\tif(node.attributes.style.type === \"string\") {\n\t\t\tnode.attributes.style.value += name + \":\" + value + \";\";\n\t\t}\n};\n\nexports.findParseTreeNode = function(nodeArray,search) {\n\tfor(var t=0; t<nodeArray.length; t++) {\n\t\tif(nodeArray[t].type === search.type && nodeArray[t].tag === search.tag) {\n\t\t\treturn nodeArray[t];\n\t\t}\n\t}\n\treturn undefined;\n};\n\n/*\nHelper to get the text of a parse tree node or array of nodes\n*/\nexports.getParseTreeText = function getParseTreeText(tree) {\n\tvar output = [];\n\tif($tw.utils.isArray(tree)) {\n\t\t$tw.utils.each(tree,function(node) {\n\t\t\toutput.push(getParseTreeText(node));\n\t\t});\n\t} else {\n\t\tif(tree.type === \"text\") {\n\t\t\toutput.push(tree.text);\n\t\t}\n\t\tif(tree.children) {\n\t\t\treturn getParseTreeText(tree.children);\n\t\t}\n\t}\n\treturn output.join(\"\");\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/performance.js": {
            "title": "$:/core/modules/utils/performance.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/performance.js\ntype: application/javascript\nmodule-type: global\n\nPerformance measurement.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction Performance(enabled) {\n\tthis.enabled = !!enabled;\n\tthis.measures = {}; // Hashmap by measurement name of {time:, invocations:}\n\tthis.logger = new $tw.utils.Logger(\"performance\");\n\tthis.showGreeting();\n}\n\nPerformance.prototype.showGreeting = function() {\n\tif($tw.browser) {\n\t\tthis.logger.log(\"Execute $tw.perf.log(); to see filter execution timings\");\t\t\n\t}\n};\n\n/*\nWrap performance reporting around a top level function\n*/\nPerformance.prototype.report = function(name,fn) {\n\tvar self = this;\n\tif(this.enabled) {\n\t\treturn function() {\n\t\t\tvar startTime = $tw.utils.timer(),\n\t\t\t\tresult = fn.apply(this,arguments);\n\t\t\tself.logger.log(name + \": \" + $tw.utils.timer(startTime).toFixed(2) + \"ms\");\n\t\t\treturn result;\n\t\t};\n\t} else {\n\t\treturn fn;\n\t}\n};\n\nPerformance.prototype.log = function() {\n\tvar self = this,\n\t\ttotalTime = 0,\n\t\torderedMeasures = Object.keys(this.measures).sort(function(a,b) {\n\t\t\tif(self.measures[a].time > self.measures[b].time) {\n\t\t\t\treturn -1;\n\t\t\t} else if (self.measures[a].time < self.measures[b].time) {\n\t\t\t\treturn + 1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t});\n\t$tw.utils.each(orderedMeasures,function(name) {\n\t\ttotalTime += self.measures[name].time;\n\t});\n\tvar results = []\n\t$tw.utils.each(orderedMeasures,function(name) {\n\t\tvar measure = self.measures[name];\n\t\tresults.push({name: name,invocations: measure.invocations, avgTime: measure.time / measure.invocations, totalTime: measure.time, percentTime: (measure.time / totalTime) * 100})\n\t});\n\tself.logger.table(results);\n};\n\n/*\nWrap performance measurements around a subfunction\n*/\nPerformance.prototype.measure = function(name,fn) {\n\tvar self = this;\n\tif(this.enabled) {\n\t\treturn function() {\n\t\t\tvar startTime = $tw.utils.timer(),\n\t\t\t\tresult = fn.apply(this,arguments);\n\t\t\tif(!(name in self.measures)) {\n\t\t\t\tself.measures[name] = {time: 0, invocations: 0};\n\t\t\t}\n\t\t\tself.measures[name].time += $tw.utils.timer(startTime);\n\t\t\tself.measures[name].invocations++;\n\t\t\treturn result;\n\t\t};\n\t} else {\n\t\treturn fn;\n\t}\n};\n\nexports.Performance = Performance;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/utils/pluginmaker.js": {
            "title": "$:/core/modules/utils/pluginmaker.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/pluginmaker.js\ntype: application/javascript\nmodule-type: utils\n\nA quick and dirty way to pack up plugins within the browser.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRepack a plugin, and then delete any non-shadow payload tiddlers\n*/\nexports.repackPlugin = function(title,additionalTiddlers,excludeTiddlers) {\n\tadditionalTiddlers = additionalTiddlers || [];\n\texcludeTiddlers = excludeTiddlers || [];\n\t// Get the plugin tiddler\n\tvar pluginTiddler = $tw.wiki.getTiddler(title);\n\tif(!pluginTiddler) {\n\t\tthrow \"No such tiddler as \" + title;\n\t}\n\t// Extract the JSON\n\tvar jsonPluginTiddler;\n\ttry {\n\t\tjsonPluginTiddler = JSON.parse(pluginTiddler.fields.text);\n\t} catch(e) {\n\t\tthrow \"Cannot parse plugin tiddler \" + title + \"\\n\" + $tw.language.getString(\"Error/Caption\") + \": \" + e;\n\t}\n\t// Get the list of tiddlers\n\tvar tiddlers = Object.keys(jsonPluginTiddler.tiddlers);\n\t// Add the additional tiddlers\n\t$tw.utils.pushTop(tiddlers,additionalTiddlers);\n\t// Remove any excluded tiddlers\n\tfor(var t=tiddlers.length-1; t>=0; t--) {\n\t\tif(excludeTiddlers.indexOf(tiddlers[t]) !== -1) {\n\t\t\ttiddlers.splice(t,1);\n\t\t}\n\t}\n\t// Pack up the tiddlers into a block of JSON\n\tvar plugins = {};\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = $tw.wiki.getTiddler(title),\n\t\t\tfields = {};\n\t\t$tw.utils.each(tiddler.fields,function (value,name) {\n\t\t\tfields[name] = tiddler.getFieldString(name);\n\t\t});\n\t\tplugins[title] = fields;\n\t});\n\t// Retrieve and bump the version number\n\tvar pluginVersion = $tw.utils.parseVersion(pluginTiddler.getFieldString(\"version\") || \"0.0.0\") || {\n\t\t\tmajor: \"0\",\n\t\t\tminor: \"0\",\n\t\t\tpatch: \"0\"\n\t\t};\n\tpluginVersion.patch++;\n\tvar version = pluginVersion.major + \".\" + pluginVersion.minor + \".\" + pluginVersion.patch;\n\tif(pluginVersion.prerelease) {\n\t\tversion += \"-\" + pluginVersion.prerelease;\n\t}\n\tif(pluginVersion.build) {\n\t\tversion += \"+\" + pluginVersion.build;\n\t}\n\t// Save the tiddler\n\t$tw.wiki.addTiddler(new $tw.Tiddler(pluginTiddler,{text: JSON.stringify({tiddlers: plugins},null,4), version: version}));\n\t// Delete any non-shadow constituent tiddlers\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tif($tw.wiki.tiddlerExists(title)) {\n\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t}\n\t});\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\t// Return a heartwarming confirmation\n\treturn \"Plugin \" + title + \" successfully saved\";\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/transliterate.js": {
            "title": "$:/core/modules/utils/transliterate.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/transliterate.js\ntype: application/javascript\nmodule-type: utils\n\nTransliteration static utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nTransliterate string to ASCII\n\n(Some pairs taken from http://semplicewebsites.com/removing-accents-javascript)\n*/\nexports.transliterationPairs = {\n\t\"Á\":\"A\",\n\t\"Ă\":\"A\",\n\t\"Ắ\":\"A\",\n\t\"Ặ\":\"A\",\n\t\"Ằ\":\"A\",\n\t\"Ẳ\":\"A\",\n\t\"Ẵ\":\"A\",\n\t\"Ǎ\":\"A\",\n\t\"Â\":\"A\",\n\t\"Ấ\":\"A\",\n\t\"Ậ\":\"A\",\n\t\"Ầ\":\"A\",\n\t\"Ẩ\":\"A\",\n\t\"Ẫ\":\"A\",\n\t\"Ä\":\"A\",\n\t\"Ǟ\":\"A\",\n\t\"Ȧ\":\"A\",\n\t\"Ǡ\":\"A\",\n\t\"Ạ\":\"A\",\n\t\"Ȁ\":\"A\",\n\t\"À\":\"A\",\n\t\"Ả\":\"A\",\n\t\"Ȃ\":\"A\",\n\t\"Ā\":\"A\",\n\t\"Ą\":\"A\",\n\t\"Å\":\"A\",\n\t\"Ǻ\":\"A\",\n\t\"Ḁ\":\"A\",\n\t\"Ⱥ\":\"A\",\n\t\"Ã\":\"A\",\n\t\"Ꜳ\":\"AA\",\n\t\"Æ\":\"AE\",\n\t\"Ǽ\":\"AE\",\n\t\"Ǣ\":\"AE\",\n\t\"Ꜵ\":\"AO\",\n\t\"Ꜷ\":\"AU\",\n\t\"Ꜹ\":\"AV\",\n\t\"Ꜻ\":\"AV\",\n\t\"Ꜽ\":\"AY\",\n\t\"Ḃ\":\"B\",\n\t\"Ḅ\":\"B\",\n\t\"Ɓ\":\"B\",\n\t\"Ḇ\":\"B\",\n\t\"Ƀ\":\"B\",\n\t\"Ƃ\":\"B\",\n\t\"Ć\":\"C\",\n\t\"Č\":\"C\",\n\t\"Ç\":\"C\",\n\t\"Ḉ\":\"C\",\n\t\"Ĉ\":\"C\",\n\t\"Ċ\":\"C\",\n\t\"Ƈ\":\"C\",\n\t\"Ȼ\":\"C\",\n\t\"Ď\":\"D\",\n\t\"Ḑ\":\"D\",\n\t\"Ḓ\":\"D\",\n\t\"Ḋ\":\"D\",\n\t\"Ḍ\":\"D\",\n\t\"Ɗ\":\"D\",\n\t\"Ḏ\":\"D\",\n\t\"Dz\":\"D\",\n\t\"Dž\":\"D\",\n\t\"Đ\":\"D\",\n\t\"Ƌ\":\"D\",\n\t\"DZ\":\"DZ\",\n\t\"DŽ\":\"DZ\",\n\t\"É\":\"E\",\n\t\"Ĕ\":\"E\",\n\t\"Ě\":\"E\",\n\t\"Ȩ\":\"E\",\n\t\"Ḝ\":\"E\",\n\t\"Ê\":\"E\",\n\t\"Ế\":\"E\",\n\t\"Ệ\":\"E\",\n\t\"Ề\":\"E\",\n\t\"Ể\":\"E\",\n\t\"Ễ\":\"E\",\n\t\"Ḙ\":\"E\",\n\t\"Ë\":\"E\",\n\t\"Ė\":\"E\",\n\t\"Ẹ\":\"E\",\n\t\"Ȅ\":\"E\",\n\t\"È\":\"E\",\n\t\"Ẻ\":\"E\",\n\t\"Ȇ\":\"E\",\n\t\"Ē\":\"E\",\n\t\"Ḗ\":\"E\",\n\t\"Ḕ\":\"E\",\n\t\"Ę\":\"E\",\n\t\"Ɇ\":\"E\",\n\t\"Ẽ\":\"E\",\n\t\"Ḛ\":\"E\",\n\t\"Ꝫ\":\"ET\",\n\t\"Ḟ\":\"F\",\n\t\"Ƒ\":\"F\",\n\t\"Ǵ\":\"G\",\n\t\"Ğ\":\"G\",\n\t\"Ǧ\":\"G\",\n\t\"Ģ\":\"G\",\n\t\"Ĝ\":\"G\",\n\t\"Ġ\":\"G\",\n\t\"Ɠ\":\"G\",\n\t\"Ḡ\":\"G\",\n\t\"Ǥ\":\"G\",\n\t\"Ḫ\":\"H\",\n\t\"Ȟ\":\"H\",\n\t\"Ḩ\":\"H\",\n\t\"Ĥ\":\"H\",\n\t\"Ⱨ\":\"H\",\n\t\"Ḧ\":\"H\",\n\t\"Ḣ\":\"H\",\n\t\"Ḥ\":\"H\",\n\t\"Ħ\":\"H\",\n\t\"Í\":\"I\",\n\t\"Ĭ\":\"I\",\n\t\"Ǐ\":\"I\",\n\t\"Î\":\"I\",\n\t\"Ï\":\"I\",\n\t\"Ḯ\":\"I\",\n\t\"İ\":\"I\",\n\t\"Ị\":\"I\",\n\t\"Ȉ\":\"I\",\n\t\"Ì\":\"I\",\n\t\"Ỉ\":\"I\",\n\t\"Ȋ\":\"I\",\n\t\"Ī\":\"I\",\n\t\"Į\":\"I\",\n\t\"Ɨ\":\"I\",\n\t\"Ĩ\":\"I\",\n\t\"Ḭ\":\"I\",\n\t\"Ꝺ\":\"D\",\n\t\"Ꝼ\":\"F\",\n\t\"Ᵹ\":\"G\",\n\t\"Ꞃ\":\"R\",\n\t\"Ꞅ\":\"S\",\n\t\"Ꞇ\":\"T\",\n\t\"Ꝭ\":\"IS\",\n\t\"Ĵ\":\"J\",\n\t\"Ɉ\":\"J\",\n\t\"Ḱ\":\"K\",\n\t\"Ǩ\":\"K\",\n\t\"Ķ\":\"K\",\n\t\"Ⱪ\":\"K\",\n\t\"Ꝃ\":\"K\",\n\t\"Ḳ\":\"K\",\n\t\"Ƙ\":\"K\",\n\t\"Ḵ\":\"K\",\n\t\"Ꝁ\":\"K\",\n\t\"Ꝅ\":\"K\",\n\t\"Ĺ\":\"L\",\n\t\"Ƚ\":\"L\",\n\t\"Ľ\":\"L\",\n\t\"Ļ\":\"L\",\n\t\"Ḽ\":\"L\",\n\t\"Ḷ\":\"L\",\n\t\"Ḹ\":\"L\",\n\t\"Ⱡ\":\"L\",\n\t\"Ꝉ\":\"L\",\n\t\"Ḻ\":\"L\",\n\t\"Ŀ\":\"L\",\n\t\"Ɫ\":\"L\",\n\t\"Lj\":\"L\",\n\t\"Ł\":\"L\",\n\t\"LJ\":\"LJ\",\n\t\"Ḿ\":\"M\",\n\t\"Ṁ\":\"M\",\n\t\"Ṃ\":\"M\",\n\t\"Ɱ\":\"M\",\n\t\"Ń\":\"N\",\n\t\"Ň\":\"N\",\n\t\"Ņ\":\"N\",\n\t\"Ṋ\":\"N\",\n\t\"Ṅ\":\"N\",\n\t\"Ṇ\":\"N\",\n\t\"Ǹ\":\"N\",\n\t\"Ɲ\":\"N\",\n\t\"Ṉ\":\"N\",\n\t\"Ƞ\":\"N\",\n\t\"Nj\":\"N\",\n\t\"Ñ\":\"N\",\n\t\"NJ\":\"NJ\",\n\t\"Ó\":\"O\",\n\t\"Ŏ\":\"O\",\n\t\"Ǒ\":\"O\",\n\t\"Ô\":\"O\",\n\t\"Ố\":\"O\",\n\t\"Ộ\":\"O\",\n\t\"Ồ\":\"O\",\n\t\"Ổ\":\"O\",\n\t\"Ỗ\":\"O\",\n\t\"Ö\":\"O\",\n\t\"Ȫ\":\"O\",\n\t\"Ȯ\":\"O\",\n\t\"Ȱ\":\"O\",\n\t\"Ọ\":\"O\",\n\t\"Ő\":\"O\",\n\t\"Ȍ\":\"O\",\n\t\"Ò\":\"O\",\n\t\"Ỏ\":\"O\",\n\t\"Ơ\":\"O\",\n\t\"Ớ\":\"O\",\n\t\"Ợ\":\"O\",\n\t\"Ờ\":\"O\",\n\t\"Ở\":\"O\",\n\t\"Ỡ\":\"O\",\n\t\"Ȏ\":\"O\",\n\t\"Ꝋ\":\"O\",\n\t\"Ꝍ\":\"O\",\n\t\"Ō\":\"O\",\n\t\"Ṓ\":\"O\",\n\t\"Ṑ\":\"O\",\n\t\"Ɵ\":\"O\",\n\t\"Ǫ\":\"O\",\n\t\"Ǭ\":\"O\",\n\t\"Ø\":\"O\",\n\t\"Ǿ\":\"O\",\n\t\"Õ\":\"O\",\n\t\"Ṍ\":\"O\",\n\t\"Ṏ\":\"O\",\n\t\"Ȭ\":\"O\",\n\t\"Ƣ\":\"OI\",\n\t\"Ꝏ\":\"OO\",\n\t\"Ɛ\":\"E\",\n\t\"Ɔ\":\"O\",\n\t\"Ȣ\":\"OU\",\n\t\"Ṕ\":\"P\",\n\t\"Ṗ\":\"P\",\n\t\"Ꝓ\":\"P\",\n\t\"Ƥ\":\"P\",\n\t\"Ꝕ\":\"P\",\n\t\"Ᵽ\":\"P\",\n\t\"Ꝑ\":\"P\",\n\t\"Ꝙ\":\"Q\",\n\t\"Ꝗ\":\"Q\",\n\t\"Ŕ\":\"R\",\n\t\"Ř\":\"R\",\n\t\"Ŗ\":\"R\",\n\t\"Ṙ\":\"R\",\n\t\"Ṛ\":\"R\",\n\t\"Ṝ\":\"R\",\n\t\"Ȑ\":\"R\",\n\t\"Ȓ\":\"R\",\n\t\"Ṟ\":\"R\",\n\t\"Ɍ\":\"R\",\n\t\"Ɽ\":\"R\",\n\t\"Ꜿ\":\"C\",\n\t\"Ǝ\":\"E\",\n\t\"Ś\":\"S\",\n\t\"Ṥ\":\"S\",\n\t\"Š\":\"S\",\n\t\"Ṧ\":\"S\",\n\t\"Ş\":\"S\",\n\t\"Ŝ\":\"S\",\n\t\"Ș\":\"S\",\n\t\"Ṡ\":\"S\",\n\t\"Ṣ\":\"S\",\n\t\"Ṩ\":\"S\",\n\t\"Ť\":\"T\",\n\t\"Ţ\":\"T\",\n\t\"Ṱ\":\"T\",\n\t\"Ț\":\"T\",\n\t\"Ⱦ\":\"T\",\n\t\"Ṫ\":\"T\",\n\t\"Ṭ\":\"T\",\n\t\"Ƭ\":\"T\",\n\t\"Ṯ\":\"T\",\n\t\"Ʈ\":\"T\",\n\t\"Ŧ\":\"T\",\n\t\"Ɐ\":\"A\",\n\t\"Ꞁ\":\"L\",\n\t\"Ɯ\":\"M\",\n\t\"Ʌ\":\"V\",\n\t\"Ꜩ\":\"TZ\",\n\t\"Ú\":\"U\",\n\t\"Ŭ\":\"U\",\n\t\"Ǔ\":\"U\",\n\t\"Û\":\"U\",\n\t\"Ṷ\":\"U\",\n\t\"Ü\":\"U\",\n\t\"Ǘ\":\"U\",\n\t\"Ǚ\":\"U\",\n\t\"Ǜ\":\"U\",\n\t\"Ǖ\":\"U\",\n\t\"Ṳ\":\"U\",\n\t\"Ụ\":\"U\",\n\t\"Ű\":\"U\",\n\t\"Ȕ\":\"U\",\n\t\"Ù\":\"U\",\n\t\"Ủ\":\"U\",\n\t\"Ư\":\"U\",\n\t\"Ứ\":\"U\",\n\t\"Ự\":\"U\",\n\t\"Ừ\":\"U\",\n\t\"Ử\":\"U\",\n\t\"Ữ\":\"U\",\n\t\"Ȗ\":\"U\",\n\t\"Ū\":\"U\",\n\t\"Ṻ\":\"U\",\n\t\"Ų\":\"U\",\n\t\"Ů\":\"U\",\n\t\"Ũ\":\"U\",\n\t\"Ṹ\":\"U\",\n\t\"Ṵ\":\"U\",\n\t\"Ꝟ\":\"V\",\n\t\"Ṿ\":\"V\",\n\t\"Ʋ\":\"V\",\n\t\"Ṽ\":\"V\",\n\t\"Ꝡ\":\"VY\",\n\t\"Ẃ\":\"W\",\n\t\"Ŵ\":\"W\",\n\t\"Ẅ\":\"W\",\n\t\"Ẇ\":\"W\",\n\t\"Ẉ\":\"W\",\n\t\"Ẁ\":\"W\",\n\t\"Ⱳ\":\"W\",\n\t\"Ẍ\":\"X\",\n\t\"Ẋ\":\"X\",\n\t\"Ý\":\"Y\",\n\t\"Ŷ\":\"Y\",\n\t\"Ÿ\":\"Y\",\n\t\"Ẏ\":\"Y\",\n\t\"Ỵ\":\"Y\",\n\t\"Ỳ\":\"Y\",\n\t\"Ƴ\":\"Y\",\n\t\"Ỷ\":\"Y\",\n\t\"Ỿ\":\"Y\",\n\t\"Ȳ\":\"Y\",\n\t\"Ɏ\":\"Y\",\n\t\"Ỹ\":\"Y\",\n\t\"Ź\":\"Z\",\n\t\"Ž\":\"Z\",\n\t\"Ẑ\":\"Z\",\n\t\"Ⱬ\":\"Z\",\n\t\"Ż\":\"Z\",\n\t\"Ẓ\":\"Z\",\n\t\"Ȥ\":\"Z\",\n\t\"Ẕ\":\"Z\",\n\t\"Ƶ\":\"Z\",\n\t\"IJ\":\"IJ\",\n\t\"Œ\":\"OE\",\n\t\"ᴀ\":\"A\",\n\t\"ᴁ\":\"AE\",\n\t\"ʙ\":\"B\",\n\t\"ᴃ\":\"B\",\n\t\"ᴄ\":\"C\",\n\t\"ᴅ\":\"D\",\n\t\"ᴇ\":\"E\",\n\t\"ꜰ\":\"F\",\n\t\"ɢ\":\"G\",\n\t\"ʛ\":\"G\",\n\t\"ʜ\":\"H\",\n\t\"ɪ\":\"I\",\n\t\"ʁ\":\"R\",\n\t\"ᴊ\":\"J\",\n\t\"ᴋ\":\"K\",\n\t\"ʟ\":\"L\",\n\t\"ᴌ\":\"L\",\n\t\"ᴍ\":\"M\",\n\t\"ɴ\":\"N\",\n\t\"ᴏ\":\"O\",\n\t\"ɶ\":\"OE\",\n\t\"ᴐ\":\"O\",\n\t\"ᴕ\":\"OU\",\n\t\"ᴘ\":\"P\",\n\t\"ʀ\":\"R\",\n\t\"ᴎ\":\"N\",\n\t\"ᴙ\":\"R\",\n\t\"ꜱ\":\"S\",\n\t\"ᴛ\":\"T\",\n\t\"ⱻ\":\"E\",\n\t\"ᴚ\":\"R\",\n\t\"ᴜ\":\"U\",\n\t\"ᴠ\":\"V\",\n\t\"ᴡ\":\"W\",\n\t\"ʏ\":\"Y\",\n\t\"ᴢ\":\"Z\",\n\t\"á\":\"a\",\n\t\"ă\":\"a\",\n\t\"ắ\":\"a\",\n\t\"ặ\":\"a\",\n\t\"ằ\":\"a\",\n\t\"ẳ\":\"a\",\n\t\"ẵ\":\"a\",\n\t\"ǎ\":\"a\",\n\t\"â\":\"a\",\n\t\"ấ\":\"a\",\n\t\"ậ\":\"a\",\n\t\"ầ\":\"a\",\n\t\"ẩ\":\"a\",\n\t\"ẫ\":\"a\",\n\t\"ä\":\"a\",\n\t\"ǟ\":\"a\",\n\t\"ȧ\":\"a\",\n\t\"ǡ\":\"a\",\n\t\"ạ\":\"a\",\n\t\"ȁ\":\"a\",\n\t\"à\":\"a\",\n\t\"ả\":\"a\",\n\t\"ȃ\":\"a\",\n\t\"ā\":\"a\",\n\t\"ą\":\"a\",\n\t\"ᶏ\":\"a\",\n\t\"ẚ\":\"a\",\n\t\"å\":\"a\",\n\t\"ǻ\":\"a\",\n\t\"ḁ\":\"a\",\n\t\"ⱥ\":\"a\",\n\t\"ã\":\"a\",\n\t\"ꜳ\":\"aa\",\n\t\"æ\":\"ae\",\n\t\"ǽ\":\"ae\",\n\t\"ǣ\":\"ae\",\n\t\"ꜵ\":\"ao\",\n\t\"ꜷ\":\"au\",\n\t\"ꜹ\":\"av\",\n\t\"ꜻ\":\"av\",\n\t\"ꜽ\":\"ay\",\n\t\"ḃ\":\"b\",\n\t\"ḅ\":\"b\",\n\t\"ɓ\":\"b\",\n\t\"ḇ\":\"b\",\n\t\"ᵬ\":\"b\",\n\t\"ᶀ\":\"b\",\n\t\"ƀ\":\"b\",\n\t\"ƃ\":\"b\",\n\t\"ɵ\":\"o\",\n\t\"ć\":\"c\",\n\t\"č\":\"c\",\n\t\"ç\":\"c\",\n\t\"ḉ\":\"c\",\n\t\"ĉ\":\"c\",\n\t\"ɕ\":\"c\",\n\t\"ċ\":\"c\",\n\t\"ƈ\":\"c\",\n\t\"ȼ\":\"c\",\n\t\"ď\":\"d\",\n\t\"ḑ\":\"d\",\n\t\"ḓ\":\"d\",\n\t\"ȡ\":\"d\",\n\t\"ḋ\":\"d\",\n\t\"ḍ\":\"d\",\n\t\"ɗ\":\"d\",\n\t\"ᶑ\":\"d\",\n\t\"ḏ\":\"d\",\n\t\"ᵭ\":\"d\",\n\t\"ᶁ\":\"d\",\n\t\"đ\":\"d\",\n\t\"ɖ\":\"d\",\n\t\"ƌ\":\"d\",\n\t\"ı\":\"i\",\n\t\"ȷ\":\"j\",\n\t\"ɟ\":\"j\",\n\t\"ʄ\":\"j\",\n\t\"dz\":\"dz\",\n\t\"dž\":\"dz\",\n\t\"é\":\"e\",\n\t\"ĕ\":\"e\",\n\t\"ě\":\"e\",\n\t\"ȩ\":\"e\",\n\t\"ḝ\":\"e\",\n\t\"ê\":\"e\",\n\t\"ế\":\"e\",\n\t\"ệ\":\"e\",\n\t\"ề\":\"e\",\n\t\"ể\":\"e\",\n\t\"ễ\":\"e\",\n\t\"ḙ\":\"e\",\n\t\"ë\":\"e\",\n\t\"ė\":\"e\",\n\t\"ẹ\":\"e\",\n\t\"ȅ\":\"e\",\n\t\"è\":\"e\",\n\t\"ẻ\":\"e\",\n\t\"ȇ\":\"e\",\n\t\"ē\":\"e\",\n\t\"ḗ\":\"e\",\n\t\"ḕ\":\"e\",\n\t\"ⱸ\":\"e\",\n\t\"ę\":\"e\",\n\t\"ᶒ\":\"e\",\n\t\"ɇ\":\"e\",\n\t\"ẽ\":\"e\",\n\t\"ḛ\":\"e\",\n\t\"ꝫ\":\"et\",\n\t\"ḟ\":\"f\",\n\t\"ƒ\":\"f\",\n\t\"ᵮ\":\"f\",\n\t\"ᶂ\":\"f\",\n\t\"ǵ\":\"g\",\n\t\"ğ\":\"g\",\n\t\"ǧ\":\"g\",\n\t\"ģ\":\"g\",\n\t\"ĝ\":\"g\",\n\t\"ġ\":\"g\",\n\t\"ɠ\":\"g\",\n\t\"ḡ\":\"g\",\n\t\"ᶃ\":\"g\",\n\t\"ǥ\":\"g\",\n\t\"ḫ\":\"h\",\n\t\"ȟ\":\"h\",\n\t\"ḩ\":\"h\",\n\t\"ĥ\":\"h\",\n\t\"ⱨ\":\"h\",\n\t\"ḧ\":\"h\",\n\t\"ḣ\":\"h\",\n\t\"ḥ\":\"h\",\n\t\"ɦ\":\"h\",\n\t\"ẖ\":\"h\",\n\t\"ħ\":\"h\",\n\t\"ƕ\":\"hv\",\n\t\"í\":\"i\",\n\t\"ĭ\":\"i\",\n\t\"ǐ\":\"i\",\n\t\"î\":\"i\",\n\t\"ï\":\"i\",\n\t\"ḯ\":\"i\",\n\t\"ị\":\"i\",\n\t\"ȉ\":\"i\",\n\t\"ì\":\"i\",\n\t\"ỉ\":\"i\",\n\t\"ȋ\":\"i\",\n\t\"ī\":\"i\",\n\t\"į\":\"i\",\n\t\"ᶖ\":\"i\",\n\t\"ɨ\":\"i\",\n\t\"ĩ\":\"i\",\n\t\"ḭ\":\"i\",\n\t\"ꝺ\":\"d\",\n\t\"ꝼ\":\"f\",\n\t\"ᵹ\":\"g\",\n\t\"ꞃ\":\"r\",\n\t\"ꞅ\":\"s\",\n\t\"ꞇ\":\"t\",\n\t\"ꝭ\":\"is\",\n\t\"ǰ\":\"j\",\n\t\"ĵ\":\"j\",\n\t\"ʝ\":\"j\",\n\t\"ɉ\":\"j\",\n\t\"ḱ\":\"k\",\n\t\"ǩ\":\"k\",\n\t\"ķ\":\"k\",\n\t\"ⱪ\":\"k\",\n\t\"ꝃ\":\"k\",\n\t\"ḳ\":\"k\",\n\t\"ƙ\":\"k\",\n\t\"ḵ\":\"k\",\n\t\"ᶄ\":\"k\",\n\t\"ꝁ\":\"k\",\n\t\"ꝅ\":\"k\",\n\t\"ĺ\":\"l\",\n\t\"ƚ\":\"l\",\n\t\"ɬ\":\"l\",\n\t\"ľ\":\"l\",\n\t\"ļ\":\"l\",\n\t\"ḽ\":\"l\",\n\t\"ȴ\":\"l\",\n\t\"ḷ\":\"l\",\n\t\"ḹ\":\"l\",\n\t\"ⱡ\":\"l\",\n\t\"ꝉ\":\"l\",\n\t\"ḻ\":\"l\",\n\t\"ŀ\":\"l\",\n\t\"ɫ\":\"l\",\n\t\"ᶅ\":\"l\",\n\t\"ɭ\":\"l\",\n\t\"ł\":\"l\",\n\t\"lj\":\"lj\",\n\t\"ſ\":\"s\",\n\t\"ẜ\":\"s\",\n\t\"ẛ\":\"s\",\n\t\"ẝ\":\"s\",\n\t\"ḿ\":\"m\",\n\t\"ṁ\":\"m\",\n\t\"ṃ\":\"m\",\n\t\"ɱ\":\"m\",\n\t\"ᵯ\":\"m\",\n\t\"ᶆ\":\"m\",\n\t\"ń\":\"n\",\n\t\"ň\":\"n\",\n\t\"ņ\":\"n\",\n\t\"ṋ\":\"n\",\n\t\"ȵ\":\"n\",\n\t\"ṅ\":\"n\",\n\t\"ṇ\":\"n\",\n\t\"ǹ\":\"n\",\n\t\"ɲ\":\"n\",\n\t\"ṉ\":\"n\",\n\t\"ƞ\":\"n\",\n\t\"ᵰ\":\"n\",\n\t\"ᶇ\":\"n\",\n\t\"ɳ\":\"n\",\n\t\"ñ\":\"n\",\n\t\"nj\":\"nj\",\n\t\"ó\":\"o\",\n\t\"ŏ\":\"o\",\n\t\"ǒ\":\"o\",\n\t\"ô\":\"o\",\n\t\"ố\":\"o\",\n\t\"ộ\":\"o\",\n\t\"ồ\":\"o\",\n\t\"ổ\":\"o\",\n\t\"ỗ\":\"o\",\n\t\"ö\":\"o\",\n\t\"ȫ\":\"o\",\n\t\"ȯ\":\"o\",\n\t\"ȱ\":\"o\",\n\t\"ọ\":\"o\",\n\t\"ő\":\"o\",\n\t\"ȍ\":\"o\",\n\t\"ò\":\"o\",\n\t\"ỏ\":\"o\",\n\t\"ơ\":\"o\",\n\t\"ớ\":\"o\",\n\t\"ợ\":\"o\",\n\t\"ờ\":\"o\",\n\t\"ở\":\"o\",\n\t\"ỡ\":\"o\",\n\t\"ȏ\":\"o\",\n\t\"ꝋ\":\"o\",\n\t\"ꝍ\":\"o\",\n\t\"ⱺ\":\"o\",\n\t\"ō\":\"o\",\n\t\"ṓ\":\"o\",\n\t\"ṑ\":\"o\",\n\t\"ǫ\":\"o\",\n\t\"ǭ\":\"o\",\n\t\"ø\":\"o\",\n\t\"ǿ\":\"o\",\n\t\"õ\":\"o\",\n\t\"ṍ\":\"o\",\n\t\"ṏ\":\"o\",\n\t\"ȭ\":\"o\",\n\t\"ƣ\":\"oi\",\n\t\"ꝏ\":\"oo\",\n\t\"ɛ\":\"e\",\n\t\"ᶓ\":\"e\",\n\t\"ɔ\":\"o\",\n\t\"ᶗ\":\"o\",\n\t\"ȣ\":\"ou\",\n\t\"ṕ\":\"p\",\n\t\"ṗ\":\"p\",\n\t\"ꝓ\":\"p\",\n\t\"ƥ\":\"p\",\n\t\"ᵱ\":\"p\",\n\t\"ᶈ\":\"p\",\n\t\"ꝕ\":\"p\",\n\t\"ᵽ\":\"p\",\n\t\"ꝑ\":\"p\",\n\t\"ꝙ\":\"q\",\n\t\"ʠ\":\"q\",\n\t\"ɋ\":\"q\",\n\t\"ꝗ\":\"q\",\n\t\"ŕ\":\"r\",\n\t\"ř\":\"r\",\n\t\"ŗ\":\"r\",\n\t\"ṙ\":\"r\",\n\t\"ṛ\":\"r\",\n\t\"ṝ\":\"r\",\n\t\"ȑ\":\"r\",\n\t\"ɾ\":\"r\",\n\t\"ᵳ\":\"r\",\n\t\"ȓ\":\"r\",\n\t\"ṟ\":\"r\",\n\t\"ɼ\":\"r\",\n\t\"ᵲ\":\"r\",\n\t\"ᶉ\":\"r\",\n\t\"ɍ\":\"r\",\n\t\"ɽ\":\"r\",\n\t\"ↄ\":\"c\",\n\t\"ꜿ\":\"c\",\n\t\"ɘ\":\"e\",\n\t\"ɿ\":\"r\",\n\t\"ś\":\"s\",\n\t\"ṥ\":\"s\",\n\t\"š\":\"s\",\n\t\"ṧ\":\"s\",\n\t\"ş\":\"s\",\n\t\"ŝ\":\"s\",\n\t\"ș\":\"s\",\n\t\"ṡ\":\"s\",\n\t\"ṣ\":\"s\",\n\t\"ṩ\":\"s\",\n\t\"ʂ\":\"s\",\n\t\"ᵴ\":\"s\",\n\t\"ᶊ\":\"s\",\n\t\"ȿ\":\"s\",\n\t\"ɡ\":\"g\",\n\t\"ᴑ\":\"o\",\n\t\"ᴓ\":\"o\",\n\t\"ᴝ\":\"u\",\n\t\"ť\":\"t\",\n\t\"ţ\":\"t\",\n\t\"ṱ\":\"t\",\n\t\"ț\":\"t\",\n\t\"ȶ\":\"t\",\n\t\"ẗ\":\"t\",\n\t\"ⱦ\":\"t\",\n\t\"ṫ\":\"t\",\n\t\"ṭ\":\"t\",\n\t\"ƭ\":\"t\",\n\t\"ṯ\":\"t\",\n\t\"ᵵ\":\"t\",\n\t\"ƫ\":\"t\",\n\t\"ʈ\":\"t\",\n\t\"ŧ\":\"t\",\n\t\"ᵺ\":\"th\",\n\t\"ɐ\":\"a\",\n\t\"ᴂ\":\"ae\",\n\t\"ǝ\":\"e\",\n\t\"ᵷ\":\"g\",\n\t\"ɥ\":\"h\",\n\t\"ʮ\":\"h\",\n\t\"ʯ\":\"h\",\n\t\"ᴉ\":\"i\",\n\t\"ʞ\":\"k\",\n\t\"ꞁ\":\"l\",\n\t\"ɯ\":\"m\",\n\t\"ɰ\":\"m\",\n\t\"ᴔ\":\"oe\",\n\t\"ɹ\":\"r\",\n\t\"ɻ\":\"r\",\n\t\"ɺ\":\"r\",\n\t\"ⱹ\":\"r\",\n\t\"ʇ\":\"t\",\n\t\"ʌ\":\"v\",\n\t\"ʍ\":\"w\",\n\t\"ʎ\":\"y\",\n\t\"ꜩ\":\"tz\",\n\t\"ú\":\"u\",\n\t\"ŭ\":\"u\",\n\t\"ǔ\":\"u\",\n\t\"û\":\"u\",\n\t\"ṷ\":\"u\",\n\t\"ü\":\"u\",\n\t\"ǘ\":\"u\",\n\t\"ǚ\":\"u\",\n\t\"ǜ\":\"u\",\n\t\"ǖ\":\"u\",\n\t\"ṳ\":\"u\",\n\t\"ụ\":\"u\",\n\t\"ű\":\"u\",\n\t\"ȕ\":\"u\",\n\t\"ù\":\"u\",\n\t\"ủ\":\"u\",\n\t\"ư\":\"u\",\n\t\"ứ\":\"u\",\n\t\"ự\":\"u\",\n\t\"ừ\":\"u\",\n\t\"ử\":\"u\",\n\t\"ữ\":\"u\",\n\t\"ȗ\":\"u\",\n\t\"ū\":\"u\",\n\t\"ṻ\":\"u\",\n\t\"ų\":\"u\",\n\t\"ᶙ\":\"u\",\n\t\"ů\":\"u\",\n\t\"ũ\":\"u\",\n\t\"ṹ\":\"u\",\n\t\"ṵ\":\"u\",\n\t\"ᵫ\":\"ue\",\n\t\"ꝸ\":\"um\",\n\t\"ⱴ\":\"v\",\n\t\"ꝟ\":\"v\",\n\t\"ṿ\":\"v\",\n\t\"ʋ\":\"v\",\n\t\"ᶌ\":\"v\",\n\t\"ⱱ\":\"v\",\n\t\"ṽ\":\"v\",\n\t\"ꝡ\":\"vy\",\n\t\"ẃ\":\"w\",\n\t\"ŵ\":\"w\",\n\t\"ẅ\":\"w\",\n\t\"ẇ\":\"w\",\n\t\"ẉ\":\"w\",\n\t\"ẁ\":\"w\",\n\t\"ⱳ\":\"w\",\n\t\"ẘ\":\"w\",\n\t\"ẍ\":\"x\",\n\t\"ẋ\":\"x\",\n\t\"ᶍ\":\"x\",\n\t\"ý\":\"y\",\n\t\"ŷ\":\"y\",\n\t\"ÿ\":\"y\",\n\t\"ẏ\":\"y\",\n\t\"ỵ\":\"y\",\n\t\"ỳ\":\"y\",\n\t\"ƴ\":\"y\",\n\t\"ỷ\":\"y\",\n\t\"ỿ\":\"y\",\n\t\"ȳ\":\"y\",\n\t\"ẙ\":\"y\",\n\t\"ɏ\":\"y\",\n\t\"ỹ\":\"y\",\n\t\"ź\":\"z\",\n\t\"ž\":\"z\",\n\t\"ẑ\":\"z\",\n\t\"ʑ\":\"z\",\n\t\"ⱬ\":\"z\",\n\t\"ż\":\"z\",\n\t\"ẓ\":\"z\",\n\t\"ȥ\":\"z\",\n\t\"ẕ\":\"z\",\n\t\"ᵶ\":\"z\",\n\t\"ᶎ\":\"z\",\n\t\"ʐ\":\"z\",\n\t\"ƶ\":\"z\",\n\t\"ɀ\":\"z\",\n\t\"ff\":\"ff\",\n\t\"ffi\":\"ffi\",\n\t\"ffl\":\"ffl\",\n\t\"fi\":\"fi\",\n\t\"fl\":\"fl\",\n\t\"ij\":\"ij\",\n\t\"œ\":\"oe\",\n\t\"st\":\"st\",\n\t\"ₐ\":\"a\",\n\t\"ₑ\":\"e\",\n\t\"ᵢ\":\"i\",\n\t\"ⱼ\":\"j\",\n\t\"ₒ\":\"o\",\n\t\"ᵣ\":\"r\",\n\t\"ᵤ\":\"u\",\n\t\"ᵥ\":\"v\",\n\t\"ₓ\":\"x\",\n\t\"Ё\":\"YO\",\n\t\"Й\":\"I\",\n\t\"Ц\":\"TS\",\n\t\"У\":\"U\",\n\t\"К\":\"K\",\n\t\"Е\":\"E\",\n\t\"Н\":\"N\",\n\t\"Г\":\"G\",\n\t\"Ш\":\"SH\",\n\t\"Щ\":\"SCH\",\n\t\"З\":\"Z\",\n\t\"Х\":\"H\",\n\t\"Ъ\":\"'\",\n\t\"ё\":\"yo\",\n\t\"й\":\"i\",\n\t\"ц\":\"ts\",\n\t\"у\":\"u\",\n\t\"к\":\"k\",\n\t\"е\":\"e\",\n\t\"н\":\"n\",\n\t\"г\":\"g\",\n\t\"ш\":\"sh\",\n\t\"щ\":\"sch\",\n\t\"з\":\"z\",\n\t\"х\":\"h\",\n\t\"ъ\":\"'\",\n\t\"Ф\":\"F\",\n\t\"Ы\":\"I\",\n\t\"В\":\"V\",\n\t\"А\":\"a\",\n\t\"П\":\"P\",\n\t\"Р\":\"R\",\n\t\"О\":\"O\",\n\t\"Л\":\"L\",\n\t\"Д\":\"D\",\n\t\"Ж\":\"ZH\",\n\t\"Э\":\"E\",\n\t\"ф\":\"f\",\n\t\"ы\":\"i\",\n\t\"в\":\"v\",\n\t\"а\":\"a\",\n\t\"п\":\"p\",\n\t\"р\":\"r\",\n\t\"о\":\"o\",\n\t\"л\":\"l\",\n\t\"д\":\"d\",\n\t\"ж\":\"zh\",\n\t\"э\":\"e\",\n\t\"Я\":\"Ya\",\n\t\"Ч\":\"CH\",\n\t\"С\":\"S\",\n\t\"М\":\"M\",\n\t\"И\":\"I\",\n\t\"Т\":\"T\",\n\t\"Ь\":\"'\",\n\t\"Б\":\"B\",\n\t\"Ю\":\"YU\",\n\t\"я\":\"ya\",\n\t\"ч\":\"ch\",\n\t\"с\":\"s\",\n\t\"м\":\"m\",\n\t\"и\":\"i\",\n\t\"т\":\"t\",\n\t\"ь\":\"'\",\n\t\"б\":\"b\",\n\t\"ю\":\"yu\"\n};\n\nexports.transliterate = function(str) {\n\treturn str.replace(/[^A-Za-z0-9\\[\\] ]/g,function(ch) {\n\t\treturn exports.transliterationPairs[ch] || ch\n\t});\n};\n\nexports.transliterateToSafeASCII = function(str) {\n\treturn str.replace(/[^\\x00-\\x7F]/g,function(ch) {\n\t\treturn exports.transliterationPairs[ch] || \"\"\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/utils.js": {
            "title": "$:/core/modules/utils/utils.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/utils.js\ntype: application/javascript\nmodule-type: utils\n\nVarious static utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar base64utf8 = require(\"$:/core/modules/utils/base64-utf8/base64-utf8.module.js\");\n\n/*\nDisplay a message, in colour if we're on a terminal\n*/\nexports.log = function(text,colour) {\n\tconsole.log($tw.node ? exports.terminalColour(colour) + text + exports.terminalColour() : text);\n};\n\nexports.terminalColour = function(colour) {\n\tif(!$tw.browser && $tw.node && process.stdout.isTTY) {\n\t\tif(colour) {\n\t\t\tvar code = exports.terminalColourLookup[colour];\n\t\t\tif(code) {\n\t\t\t\treturn \"\\x1b[\" + code + \"m\";\n\t\t\t}\n\t\t} else {\n\t\t\treturn \"\\x1b[0m\"; // Cancel colour\n\t\t}\n\t}\n\treturn \"\";\n};\n\nexports.terminalColourLookup = {\n\t\"black\": \"0;30\",\n\t\"red\": \"0;31\",\n\t\"green\": \"0;32\",\n\t\"brown/orange\": \"0;33\",\n\t\"blue\": \"0;34\",\n\t\"purple\": \"0;35\",\n\t\"cyan\": \"0;36\",\n\t\"light gray\": \"0;37\"\n};\n\n/*\nDisplay a warning, in colour if we're on a terminal\n*/\nexports.warning = function(text) {\n\texports.log(text,\"brown/orange\");\n};\n\n/*\nLog a table of name: value pairs\n*/\nexports.logTable = function(data) {\n\tif(console.table) {\n\t\tconsole.table(data);\n\t} else {\n\t\t$tw.utils.each(data,function(value,name) {\n\t\t\tconsole.log(name + \": \" + value);\n\t\t});\n\t}\n}\n\n/*\nReturn the integer represented by the str (string).\nReturn the dflt (default) parameter if str is not a base-10 number.\n*/\nexports.getInt = function(str,deflt) {\n\tvar i = parseInt(str,10);\n\treturn isNaN(i) ? deflt : i;\n}\n\n/*\nRepeatedly replaces a substring within a string. Like String.prototype.replace, but without any of the default special handling of $ sequences in the replace string\n*/\nexports.replaceString = function(text,search,replace) {\n\treturn text.replace(search,function() {\n\t\treturn replace;\n\t});\n};\n\n/*\nRepeats a string\n*/\nexports.repeat = function(str,count) {\n\tvar result = \"\";\n\tfor(var t=0;t<count;t++) {\n\t\tresult += str;\n\t}\n\treturn result;\n};\n\n/*\nTrim whitespace from the start and end of a string\nThanks to Steven Levithan, http://blog.stevenlevithan.com/archives/faster-trim-javascript\n*/\nexports.trim = function(str) {\n\tif(typeof str === \"string\") {\n\t\treturn str.replace(/^\\s\\s*/, '').replace(/\\s\\s*$/, '');\n\t} else {\n\t\treturn str;\n\t}\n};\n\nexports.trimPrefix = function(str,unwanted) {\n\tif(typeof str === \"string\" && typeof unwanted === \"string\") {\n\t\tif(unwanted === \"\") {\n\t\t\treturn str.replace(/^\\s\\s*/, '');\n\t\t} else {\n\t\t\t// Safely regexp-escape the unwanted text\n\t\t\tunwanted = unwanted.replace(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n\t\t\tvar regex = new RegExp('^(' + unwanted + ')+');\n\t\t\treturn str.replace(regex, '');\n\t\t}\n\t} else {\n\t\treturn str;\n\t}\n};\n\nexports.trimSuffix = function(str,unwanted) {\n\tif(typeof str === \"string\" && typeof unwanted === \"string\") {\n\t\tif(unwanted === \"\") {\n\t\t\treturn str.replace(/\\s\\s*$/, '');\n\t\t} else {\n\t\t\t// Safely regexp-escape the unwanted text\n\t\t\tunwanted = unwanted.replace(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n\t\t\tvar regex = new RegExp('(' + unwanted + ')+$');\n\t\t\treturn str.replace(regex, '');\n\t\t}\n\t} else {\n\t\treturn str;\n\t}\n};\n\n/*\nConvert a string to sentence case (ie capitalise first letter)\n*/\nexports.toSentenceCase = function(str) {\n\treturn (str || \"\").replace(/^\\S/, function(c) {return c.toUpperCase();});\n}\n\n/*\nConvert a string to title case (ie capitalise each initial letter)\n*/\nexports.toTitleCase = function(str) {\n\treturn (str || \"\").replace(/(^|\\s)\\S/g, function(c) {return c.toUpperCase();});\n}\n\t\n/*\nFind the line break preceding a given position in a string\nReturns position immediately after that line break, or the start of the string\n*/\nexports.findPrecedingLineBreak = function(text,pos) {\n\tvar result = text.lastIndexOf(\"\\n\",pos - 1);\n\tif(result === -1) {\n\t\tresult = 0;\n\t} else {\n\t\tresult++;\n\t\tif(text.charAt(result) === \"\\r\") {\n\t\t\tresult++;\n\t\t}\n\t}\n\treturn result;\n};\n\n/*\nFind the line break following a given position in a string\n*/\nexports.findFollowingLineBreak = function(text,pos) {\n\t// Cut to just past the following line break, or to the end of the text\n\tvar result = text.indexOf(\"\\n\",pos);\n\tif(result === -1) {\n\t\tresult = text.length;\n\t} else {\n\t\tif(text.charAt(result) === \"\\r\") {\n\t\t\tresult++;\n\t\t}\n\t}\n\treturn result;\n};\n\n/*\nReturn the number of keys in an object\n*/\nexports.count = function(object) {\n\treturn Object.keys(object || {}).length;\n};\n\n/*\nDetermine whether an array-item is an object-property\n*/\nexports.hopArray = function(object,array) {\n\tfor(var i=0; i<array.length; i++) {\n\t\tif($tw.utils.hop(object,array[i])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nRemove entries from an array\n\tarray: array to modify\n\tvalue: a single value to remove, or an array of values to remove\n*/\nexports.removeArrayEntries = function(array,value) {\n\tvar t,p;\n\tif($tw.utils.isArray(value)) {\n\t\tfor(t=0; t<value.length; t++) {\n\t\t\tp = array.indexOf(value[t]);\n\t\t\tif(p !== -1) {\n\t\t\t\tarray.splice(p,1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tp = array.indexOf(value);\n\t\tif(p !== -1) {\n\t\t\tarray.splice(p,1);\n\t\t}\n\t}\n};\n\n/*\nCheck whether any members of a hashmap are present in another hashmap\n*/\nexports.checkDependencies = function(dependencies,changes) {\n\tvar hit = false;\n\t$tw.utils.each(changes,function(change,title) {\n\t\tif($tw.utils.hop(dependencies,title)) {\n\t\t\thit = true;\n\t\t}\n\t});\n\treturn hit;\n};\n\nexports.extend = function(object /* [, src] */) {\n\t$tw.utils.each(Array.prototype.slice.call(arguments, 1), function(source) {\n\t\tif(source) {\n\t\t\tfor(var property in source) {\n\t\t\t\tobject[property] = source[property];\n\t\t\t}\n\t\t}\n\t});\n\treturn object;\n};\n\nexports.deepCopy = function(object) {\n\tvar result,t;\n\tif($tw.utils.isArray(object)) {\n\t\t// Copy arrays\n\t\tresult = object.slice(0);\n\t} else if(typeof object === \"object\") {\n\t\tresult = {};\n\t\tfor(t in object) {\n\t\t\tif(object[t] !== undefined) {\n\t\t\t\tresult[t] = $tw.utils.deepCopy(object[t]);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tresult = object;\n\t}\n\treturn result;\n};\n\nexports.extendDeepCopy = function(object,extendedProperties) {\n\tvar result = $tw.utils.deepCopy(object),t;\n\tfor(t in extendedProperties) {\n\t\tif(extendedProperties[t] !== undefined) {\n\t\t\tresult[t] = $tw.utils.deepCopy(extendedProperties[t]);\n\t\t}\n\t}\n\treturn result;\n};\n\nexports.deepFreeze = function deepFreeze(object) {\n\tvar property, key;\n\tif(object) {\n\t\tObject.freeze(object);\n\t\tfor(key in object) {\n\t\t\tproperty = object[key];\n\t\t\tif($tw.utils.hop(object,key) && (typeof property === \"object\") && !Object.isFrozen(property)) {\n\t\t\t\tdeepFreeze(property);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexports.slowInSlowOut = function(t) {\n\treturn (1 - ((Math.cos(t * Math.PI) + 1) / 2));\n};\n\nexports.formatDateString = function(date,template) {\n\tvar result = \"\",\n\t\tt = template,\n\t\tmatches = [\n\t\t\t[/^0hh12/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getHours12(date));\n\t\t\t}],\n\t\t\t[/^wYYYY/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getYearForWeekNo(date),4);\n\t\t\t}],\n\t\t\t[/^hh12/, function() {\n\t\t\t\treturn $tw.utils.getHours12(date);\n\t\t\t}],\n\t\t\t[/^DDth/, function() {\n\t\t\t\treturn date.getDate() + $tw.utils.getDaySuffix(date);\n\t\t\t}],\n\t\t\t[/^YYYY/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getFullYear(),4);\n\t\t\t}],\n\t\t\t[/^aYYYY/, function() {\n\t\t\t\treturn $tw.utils.pad(Math.abs(date.getFullYear()),4);\n\t\t\t}],\n\t\t\t[/^\\{era:([^,\\|}]*)\\|([^}\\|]*)\\|([^}]*)\\}/, function(match) {\n\t\t\t\tvar year = date.getFullYear();\n\t\t\t\treturn year === 0 ? match[2] : (year < 0 ? match[1] : match[3]);\n\t\t\t}],\n\t\t\t[/^0hh/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getHours());\n\t\t\t}],\n\t\t\t[/^0mm/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMinutes());\n\t\t\t}],\n\t\t\t[/^0ss/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getSeconds());\n\t\t\t}],\n\t\t\t[/^0XXX/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMilliseconds(),3);\n\t\t\t}],\n\t\t\t[/^0DD/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getDate());\n\t\t\t}],\n\t\t\t[/^0MM/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMonth()+1);\n\t\t\t}],\n\t\t\t[/^0WW/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getWeek(date));\n\t\t\t}],\n\t\t\t[/^ddd/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Short/Day/\" + date.getDay());\n\t\t\t}],\n\t\t\t[/^mmm/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Short/Month/\" + (date.getMonth() + 1));\n\t\t\t}],\n\t\t\t[/^DDD/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Long/Day/\" + date.getDay());\n\t\t\t}],\n\t\t\t[/^MMM/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Long/Month/\" + (date.getMonth() + 1));\n\t\t\t}],\n\t\t\t[/^TZD/, function() {\n\t\t\t\tvar tz = date.getTimezoneOffset(),\n\t\t\t\tatz = Math.abs(tz);\n\t\t\t\treturn (tz < 0 ? '+' : '-') + $tw.utils.pad(Math.floor(atz / 60)) + ':' + $tw.utils.pad(atz % 60);\n\t\t\t}],\n\t\t\t[/^wYY/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getYearForWeekNo(date) - 2000);\n\t\t\t}],\n\t\t\t[/^[ap]m/, function() {\n\t\t\t\treturn $tw.utils.getAmPm(date).toLowerCase();\n\t\t\t}],\n\t\t\t[/^hh/, function() {\n\t\t\t\treturn date.getHours();\n\t\t\t}],\n\t\t\t[/^mm/, function() {\n\t\t\t\treturn date.getMinutes();\n\t\t\t}],\n\t\t\t[/^ss/, function() {\n\t\t\t\treturn date.getSeconds();\n\t\t\t}],\n\t\t\t[/^XXX/, function() {\n\t\t\t\treturn date.getMilliseconds();\n\t\t\t}],\n\t\t\t[/^[AP]M/, function() {\n\t\t\t\treturn $tw.utils.getAmPm(date).toUpperCase();\n\t\t\t}],\n\t\t\t[/^DD/, function() {\n\t\t\t\treturn date.getDate();\n\t\t\t}],\n\t\t\t[/^MM/, function() {\n\t\t\t\treturn date.getMonth() + 1;\n\t\t\t}],\n\t\t\t[/^WW/, function() {\n\t\t\t\treturn $tw.utils.getWeek(date);\n\t\t\t}],\n\t\t\t[/^YY/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getFullYear() - 2000);\n\t\t\t}]\n\t\t];\n\t// If the user wants everything in UTC, shift the datestamp\n\t// Optimize for format string that essentially means\n\t// 'return raw UTC (tiddlywiki style) date string.'\n\tif(t.indexOf(\"[UTC]\") == 0 ) {\n\t\tif(t == \"[UTC]YYYY0MM0DD0hh0mm0ssXXX\")\n\t\t\treturn $tw.utils.stringifyDate(new Date());\n\t\tvar offset = date.getTimezoneOffset() ; // in minutes\n\t\tdate = new Date(date.getTime()+offset*60*1000) ;\n\t\tt = t.substr(5) ;\n\t}\n\twhile(t.length){\n\t\tvar matchString = \"\";\n\t\t$tw.utils.each(matches, function(m) {\n\t\t\tvar match = m[0].exec(t);\n\t\t\tif(match) {\n\t\t\t\tmatchString = m[1].call(null,match);\n\t\t\t\tt = t.substr(match[0].length);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t});\n\t\tif(matchString) {\n\t\t\tresult += matchString;\n\t\t} else {\n\t\t\tresult += t.charAt(0);\n\t\t\tt = t.substr(1);\n\t\t}\n\t}\n\tresult = result.replace(/\\\\(.)/g,\"$1\");\n\treturn result;\n};\n\nexports.getAmPm = function(date) {\n\treturn $tw.language.getString(\"Date/Period/\" + (date.getHours() >= 12 ? \"pm\" : \"am\"));\n};\n\nexports.getDaySuffix = function(date) {\n\treturn $tw.language.getString(\"Date/DaySuffix/\" + date.getDate());\n};\n\nexports.getWeek = function(date) {\n\tvar dt = new Date(date.getTime());\n\tvar d = dt.getDay();\n\tif(d === 0) {\n\t\td = 7; // JavaScript Sun=0, ISO Sun=7\n\t}\n\tdt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week to calculate weekNo\n\tvar x = new Date(dt.getFullYear(),0,1);\n\tvar n = Math.floor((dt.getTime() - x.getTime()) / 86400000);\n\treturn Math.floor(n / 7) + 1;\n};\n\nexports.getYearForWeekNo = function(date) {\n\tvar dt = new Date(date.getTime());\n\tvar d = dt.getDay();\n\tif(d === 0) {\n\t\td = 7; // JavaScript Sun=0, ISO Sun=7\n\t}\n\tdt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week\n\treturn dt.getFullYear();\n};\n\nexports.getHours12 = function(date) {\n\tvar h = date.getHours();\n\treturn h > 12 ? h-12 : ( h > 0 ? h : 12 );\n};\n\n/*\nConvert a date delta in milliseconds into a string representation of \"23 seconds ago\", \"27 minutes ago\" etc.\n\tdelta: delta in milliseconds\nReturns an object with these members:\n\tdescription: string describing the delta period\n\tupdatePeriod: time in millisecond until the string will be inaccurate\n*/\nexports.getRelativeDate = function(delta) {\n\tvar futurep = false;\n\tif(delta < 0) {\n\t\tdelta = -1 * delta;\n\t\tfuturep = true;\n\t}\n\tvar units = [\n\t\t{name: \"Years\",   duration:      365 * 24 * 60 * 60 * 1000},\n\t\t{name: \"Months\",  duration: (365/12) * 24 * 60 * 60 * 1000},\n\t\t{name: \"Days\",    duration:            24 * 60 * 60 * 1000},\n\t\t{name: \"Hours\",   duration:                 60 * 60 * 1000},\n\t\t{name: \"Minutes\", duration:                      60 * 1000},\n\t\t{name: \"Seconds\", duration:                           1000}\n\t];\n\tfor(var t=0; t<units.length; t++) {\n\t\tvar result = Math.floor(delta / units[t].duration);\n\t\tif(result >= 2) {\n\t\t\treturn {\n\t\t\t\tdelta: delta,\n\t\t\t\tdescription: $tw.language.getString(\n\t\t\t\t\t\"RelativeDate/\" + (futurep ? \"Future\" : \"Past\") + \"/\" + units[t].name,\n\t\t\t\t\t{variables:\n\t\t\t\t\t\t{period: result.toString()}\n\t\t\t\t\t}\n\t\t\t\t),\n\t\t\t\tupdatePeriod: units[t].duration\n\t\t\t};\n\t\t}\n\t}\n\treturn {\n\t\tdelta: delta,\n\t\tdescription: $tw.language.getString(\n\t\t\t\"RelativeDate/\" + (futurep ? \"Future\" : \"Past\") + \"/Second\",\n\t\t\t{variables:\n\t\t\t\t{period: \"1\"}\n\t\t\t}\n\t\t),\n\t\tupdatePeriod: 1000\n\t};\n};\n\n// Convert & to \"&amp;\", < to \"&lt;\", > to \"&gt;\", \" to \"&quot;\"\nexports.htmlEncode = function(s) {\n\tif(s) {\n\t\treturn s.toString().replace(/&/mg,\"&amp;\").replace(/</mg,\"&lt;\").replace(/>/mg,\"&gt;\").replace(/\\\"/mg,\"&quot;\");\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n// Converts all HTML entities to their character equivalents\nexports.entityDecode = function(s) {\n\tvar converter = String.fromCodePoint || String.fromCharCode,\n\t\te = s.substr(1,s.length-2), // Strip the & and the ;\n\t\tc;\n\tif(e.charAt(0) === \"#\") {\n\t\tif(e.charAt(1) === \"x\" || e.charAt(1) === \"X\") {\n\t\t\tc = parseInt(e.substr(2),16);\n\t\t} else {\n\t\t\tc = parseInt(e.substr(1),10);\n\t\t}\n\t\tif(isNaN(c)) {\n\t\t\treturn s;\n\t\t} else {\n\t\t\treturn converter(c);\n\t\t}\n\t} else {\n\t\tc = $tw.config.htmlEntities[e];\n\t\tif(c) {\n\t\t\treturn converter(c);\n\t\t} else {\n\t\t\treturn s; // Couldn't convert it as an entity, just return it raw\n\t\t}\n\t}\n};\n\nexports.unescapeLineBreaks = function(s) {\n\treturn s.replace(/\\\\n/mg,\"\\n\").replace(/\\\\b/mg,\" \").replace(/\\\\s/mg,\"\\\\\").replace(/\\r/mg,\"\");\n};\n\n/*\n * Returns an escape sequence for given character. Uses \\x for characters <=\n * 0xFF to save space, \\u for the rest.\n *\n * The code needs to be in sync with th code template in the compilation\n * function for \"action\" nodes.\n */\n// Copied from peg.js, thanks to David Majda\nexports.escape = function(ch) {\n\tvar charCode = ch.charCodeAt(0);\n\tif(charCode <= 0xFF) {\n\t\treturn '\\\\x' + $tw.utils.pad(charCode.toString(16).toUpperCase());\n\t} else {\n\t\treturn '\\\\u' + $tw.utils.pad(charCode.toString(16).toUpperCase(),4);\n\t}\n};\n\n// Turns a string into a legal JavaScript string\n// Copied from peg.js, thanks to David Majda\nexports.stringify = function(s, rawUnicode) {\n\t/*\n\t* ECMA-262, 5th ed., 7.8.4: All characters may appear literally in a string\n\t* literal except for the closing quote character, backslash, carriage return,\n\t* line separator, paragraph separator, and line feed. Any character may\n\t* appear in the form of an escape sequence.\n\t*\n\t* For portability, we also escape all non-ASCII characters.\n\t*/\n\tvar regex = rawUnicode ? /[\\x00-\\x1f]/g : /[\\x00-\\x1f\\x80-\\uFFFF]/g;\n\treturn (s || \"\")\n\t\t.replace(/\\\\/g, '\\\\\\\\')            // backslash\n\t\t.replace(/\"/g, '\\\\\"')              // double quote character\n\t\t.replace(/'/g, \"\\\\'\")              // single quote character\n\t\t.replace(/\\r/g, '\\\\r')             // carriage return\n\t\t.replace(/\\n/g, '\\\\n')             // line feed\n\t\t.replace(regex, exports.escape);   // non-ASCII characters\n};\n\n// Turns a string into a legal JSON string\n// Derived from peg.js, thanks to David Majda\nexports.jsonStringify = function(s, rawUnicode) {\n\t// See http://www.json.org/\n\tvar regex = rawUnicode ? /[\\x00-\\x1f]/g : /[\\x00-\\x1f\\x80-\\uFFFF]/g;\n\treturn (s || \"\")\n\t\t.replace(/\\\\/g, '\\\\\\\\')            // backslash\n\t\t.replace(/\"/g, '\\\\\"')              // double quote character\n\t\t.replace(/\\r/g, '\\\\r')             // carriage return\n\t\t.replace(/\\n/g, '\\\\n')             // line feed\n\t\t.replace(/\\x08/g, '\\\\b')           // backspace\n\t\t.replace(/\\x0c/g, '\\\\f')           // formfeed\n\t\t.replace(/\\t/g, '\\\\t')             // tab\n\t\t.replace(regex,function(s) {\n\t\t\treturn '\\\\u' + $tw.utils.pad(s.charCodeAt(0).toString(16).toUpperCase(),4);\n\t\t}); // non-ASCII characters\n};\n\n/*\nEscape the RegExp special characters with a preceding backslash\n*/\nexports.escapeRegExp = function(s) {\n    return s.replace(/[\\-\\/\\\\\\^\\$\\*\\+\\?\\.\\(\\)\\|\\[\\]\\{\\}]/g, '\\\\$&');\n};\n\n// Checks whether a link target is external, i.e. not a tiddler title\nexports.isLinkExternal = function(to) {\n\tvar externalRegExp = /^(?:file|http|https|mailto|ftp|irc|news|data|skype):[^\\s<>{}\\[\\]`|\"\\\\^]+(?:\\/|\\b)/i;\n\treturn externalRegExp.test(to);\n};\n\nexports.nextTick = function(fn) {\n/*global window: false */\n\tif(typeof process === \"undefined\") {\n\t\t// Apparently it would be faster to use postMessage - http://dbaron.org/log/20100309-faster-timeouts\n\t\twindow.setTimeout(fn,4);\n\t} else {\n\t\tprocess.nextTick(fn);\n\t}\n};\n\n/*\nConvert a hyphenated CSS property name into a camel case one\n*/\nexports.unHyphenateCss = function(propName) {\n\treturn propName.replace(/-([a-z])/gi, function(match0,match1) {\n\t\treturn match1.toUpperCase();\n\t});\n};\n\n/*\nConvert a camelcase CSS property name into a dashed one (\"backgroundColor\" --> \"background-color\")\n*/\nexports.hyphenateCss = function(propName) {\n\treturn propName.replace(/([A-Z])/g, function(match0,match1) {\n\t\treturn \"-\" + match1.toLowerCase();\n\t});\n};\n\n/*\nParse a text reference of one of these forms:\n* title\n* !!field\n* title!!field\n* title##index\n* etc\nReturns an object with the following fields, all optional:\n* title: tiddler title\n* field: tiddler field name\n* index: JSON property index\n*/\nexports.parseTextReference = function(textRef) {\n\t// Separate out the title, field name and/or JSON indices\n\tvar reTextRef = /(?:(.*?)!!(.+))|(?:(.*?)##(.+))|(.*)/mg,\n\t\tmatch = reTextRef.exec(textRef),\n\t\tresult = {};\n\tif(match && reTextRef.lastIndex === textRef.length) {\n\t\t// Return the parts\n\t\tif(match[1]) {\n\t\t\tresult.title = match[1];\n\t\t}\n\t\tif(match[2]) {\n\t\t\tresult.field = match[2];\n\t\t}\n\t\tif(match[3]) {\n\t\t\tresult.title = match[3];\n\t\t}\n\t\tif(match[4]) {\n\t\t\tresult.index = match[4];\n\t\t}\n\t\tif(match[5]) {\n\t\t\tresult.title = match[5];\n\t\t}\n\t} else {\n\t\t// If we couldn't parse it\n\t\tresult.title = textRef\n\t}\n\treturn result;\n};\n\n/*\nChecks whether a string is a valid fieldname\n*/\nexports.isValidFieldName = function(name) {\n\tif(!name || typeof name !== \"string\") {\n\t\treturn false;\n\t}\n\tname = name.toLowerCase().trim();\n\tvar fieldValidatorRegEx = /^[a-z0-9\\-\\._]+$/mg;\n\treturn fieldValidatorRegEx.test(name);\n};\n\n/*\nExtract the version number from the meta tag or from the boot file\n*/\n\n// Browser version\nexports.extractVersionInfo = function() {\n\tif($tw.packageInfo) {\n\t\treturn $tw.packageInfo.version;\n\t} else {\n\t\tvar metatags = document.getElementsByTagName(\"meta\");\n\t\tfor(var t=0; t<metatags.length; t++) {\n\t\t\tvar m = metatags[t];\n\t\t\tif(m.name === \"tiddlywiki-version\") {\n\t\t\t\treturn m.content;\n\t\t\t}\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nGet the animation duration in ms\n*/\nexports.getAnimationDuration = function() {\n\treturn parseInt($tw.wiki.getTiddlerText(\"$:/config/AnimationDuration\",\"400\"),10) || 0;\n};\n\n/*\nHash a string to a number\nDerived from http://stackoverflow.com/a/15710692\n*/\nexports.hashString = function(str) {\n\treturn str.split(\"\").reduce(function(a,b) {\n\t\ta = ((a << 5) - a) + b.charCodeAt(0);\n\t\treturn a & a;\n\t},0);\n};\n\n/*\nDecode a base64 string\n*/\nexports.base64Decode = function(string64) {\n\treturn base64utf8.base64.decode.call(base64utf8,string64);\n};\n\n/*\nEncode a string to base64\n*/\nexports.base64Encode = function(string64) {\n\treturn base64utf8.base64.encode.call(base64utf8,string64);\n};\n\n/*\nConvert a hashmap into a tiddler dictionary format sequence of name:value pairs\n*/\nexports.makeTiddlerDictionary = function(data) {\n\tvar output = [];\n\tfor(var name in data) {\n\t\toutput.push(name + \": \" + data[name]);\n\t}\n\treturn output.join(\"\\n\");\n};\n\n/*\nHigh resolution microsecond timer for profiling\n*/\nexports.timer = function(base) {\n\tvar m;\n\tif($tw.node) {\n\t\tvar r = process.hrtime();\n\t\tm =  r[0] * 1e3 + (r[1] / 1e6);\n\t} else if(window.performance) {\n\t\tm = performance.now();\n\t} else {\n\t\tm = Date.now();\n\t}\n\tif(typeof base !== \"undefined\") {\n\t\tm = m - base;\n\t}\n\treturn m;\n};\n\n/*\nConvert text and content type to a data URI\n*/\nexports.makeDataUri = function(text,type,_canonical_uri) {\n\ttype = type || \"text/vnd.tiddlywiki\";\n\tvar typeInfo = $tw.config.contentTypeInfo[type] || $tw.config.contentTypeInfo[\"text/plain\"],\n\t\tisBase64 = typeInfo.encoding === \"base64\",\n\t\tparts = [];\n\tif(_canonical_uri) {\n\t\tparts.push(_canonical_uri);\n\t} else {\n\t\tparts.push(\"data:\");\n\t\tparts.push(type);\n\t\tparts.push(isBase64 ? \";base64\" : \"\");\n\t\tparts.push(\",\");\n\t\tparts.push(isBase64 ? text : encodeURIComponent(text));\t\t\n\t}\n\treturn parts.join(\"\");\n};\n\n/*\nUseful for finding out the fully escaped CSS selector equivalent to a given tag. For example:\n\n$tw.utils.tagToCssSelector(\"$:/tags/Stylesheet\") --> tc-tagged-\\%24\\%3A\\%2Ftags\\%2FStylesheet\n*/\nexports.tagToCssSelector = function(tagName) {\n\treturn \"tc-tagged-\" + encodeURIComponent(tagName).replace(/[!\"#$%&'()*+,\\-./:;<=>?@[\\\\\\]^`{\\|}~,]/mg,function(c) {\n\t\treturn \"\\\\\" + c;\n\t});\n};\n\n/*\nIE does not have sign function\n*/\nexports.sign = Math.sign || function(x) {\n\tx = +x; // convert to a number\n\tif (x === 0 || isNaN(x)) {\n\t\treturn x;\n\t}\n\treturn x > 0 ? 1 : -1;\n};\n\n/*\nIE does not have an endsWith function\n*/\nexports.strEndsWith = function(str,ending,position) {\n\tif(str.endsWith) {\n\t\treturn str.endsWith(ending,position);\n\t} else {\n\t\tif (typeof position !== 'number' || !isFinite(position) || Math.floor(position) !== position || position > str.length) {\n\t\t\tposition = str.length;\n\t\t}\n\t\tposition -= ending.length;\n\t\tvar lastIndex = str.indexOf(ending, position);\n\t\treturn lastIndex !== -1 && lastIndex === position;\n\t}\n};\n\n/*\nReturn system information useful for debugging\n*/\nexports.getSystemInfo = function(str,ending,position) {\n\tvar results = [],\n\t\tsave = function(desc,value) {\n\t\t\tresults.push(desc + \": \" + value);\n\t\t};\n\tif($tw.browser) {\n\t\tsave(\"User Agent\",navigator.userAgent);\n\t\tsave(\"Online Status\",window.navigator.onLine);\n\t}\n\tif($tw.node) {\n\t\tsave(\"Node Version\",process.version);\n\t}\n\treturn results.join(\"\\n\");\n};\n\nexports.parseNumber = function(str) {\n\treturn parseFloat(str) || 0;\n};\n\nexports.parseInt = function(str) {\n\treturn parseInt(str,10) || 0;\n};\n\nexports.stringifyNumber = function(num) {\n\treturn num + \"\";\n};\n\nexports.makeCompareFunction = function(type,options) {\n\toptions = options || {};\n\tvar gt = options.invert ? -1 : +1,\n\t\tlt = options.invert ? +1 : -1,\n\t\tcompare = function(a,b) {\n\t\t\tif(a > b) {\n\t\t\t\treturn gt ;\n\t\t\t} else if(a < b) {\n\t\t\t\treturn lt;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t},\n\t\ttypes = {\n\t\t\t\"number\": function(a,b) {\n\t\t\t\treturn compare($tw.utils.parseNumber(a),$tw.utils.parseNumber(b));\n\t\t\t},\n\t\t\t\"integer\": function(a,b) {\n\t\t\t\treturn compare($tw.utils.parseInt(a),$tw.utils.parseInt(b));\n\t\t\t},\n\t\t\t\"string\": function(a,b) {\n\t\t\t\treturn compare(\"\" + a,\"\" +b);\n\t\t\t},\n\t\t\t\"date\": function(a,b) {\n\t\t\t\tvar dateA = $tw.utils.parseDate(a),\n\t\t\t\t\tdateB = $tw.utils.parseDate(b);\n\t\t\t\tif(!isFinite(dateA)) {\n\t\t\t\t\tdateA = new Date(0);\n\t\t\t\t}\n\t\t\t\tif(!isFinite(dateB)) {\n\t\t\t\t\tdateB = new Date(0);\n\t\t\t\t}\n\t\t\t\treturn compare(dateA,dateB);\n\t\t\t},\n\t\t\t\"version\": function(a,b) {\n\t\t\t\treturn $tw.utils.compareVersions(a,b);\n\t\t\t}\n\t\t};\n\treturn (types[type] || types[options.defaultType] || types.number);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/widgets/action-confirm.js": {
            "title": "$:/core/modules/widgets/action-confirm.js",
            "text": "/*\\\n\ntitle: $:/core/modules/widgets/action-confirm.js\ntype: application/javascript\nmodule-type: widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ConfirmWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nConfirmWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nConfirmWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.parentDomNode = parent;\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nConfirmWidget.prototype.execute = function() {\n\tthis.message = this.getAttribute(\"$message\",$tw.language.getString(\"ConfirmAction\"));\n\tthis.prompt = (this.getAttribute(\"$prompt\",\"yes\") == \"no\" ? false : true);\n\tthis.makeChildWidgets();\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nConfirmWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$message\"] || changedAttributes[\"$prompt\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nConfirmWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar invokeActions = true,\n\t\thandled = true;\n\tif(this.prompt) {\n\t\tinvokeActions = confirm(this.message);\n\t}\n\tif(invokeActions) {\n\t\thandled = this.invokeActions(triggeringWidget,event);\n\t}\n\treturn handled;\n};\n\nConfirmWidget.prototype.allowActionPropagation = function() {\n\treturn false;\n};\n\nexports[\"action-confirm\"] = ConfirmWidget;\n\n})();",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-createtiddler.js": {
            "title": "$:/core/modules/widgets/action-createtiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-createtiddler.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to create a new tiddler with a unique name and specified fields.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw:false, require:false, exports:false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CreateTiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCreateTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCreateTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nCreateTiddlerWidget.prototype.execute = function() {\n\tthis.actionBaseTitle = this.getAttribute(\"$basetitle\");\n\tthis.hasBase = !!this.actionBaseTitle;\n\tthis.actionSaveTitle = this.getAttribute(\"$savetitle\");\n\tthis.actionSaveDraftTitle = this.getAttribute(\"$savedrafttitle\");\n\tthis.actionTimestamp = this.getAttribute(\"$timestamp\",\"yes\") === \"yes\";\n\t//Following params are new since 5.1.22\n\tthis.actionTemplate = this.getAttribute(\"$template\");\n\tthis.useTemplate = !!this.actionTemplate;\n\tthis.actionOverwrite = this.getAttribute(\"$overwrite\",\"no\");\n\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nCreateTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nCreateTiddlerWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar title = this.wiki.getTiddlerText(\"$:/language/DefaultNewTiddlerTitle\"), // Get the initial new-tiddler title\n\t\tfields = {},\n\t\tcreationFields,\n\t\tmodificationFields;\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tfields[name] = attribute;\n\t\t}\n\t});\n\tif(this.actionTimestamp) {\n\t\tcreationFields = this.wiki.getCreationFields();\n\t\tmodificationFields = this.wiki.getModificationFields();\n\t}\n\tif(this.hasBase && this.actionOverwrite === \"no\") {\n\t\ttitle = this.wiki.generateNewTitle(this.actionBaseTitle);\n\t} else if (this.hasBase && this.actionOverwrite === \"yes\") {\n\t\ttitle = this.actionBaseTitle\n\t}\n\t// NO $basetitle BUT $template parameter is available\n\t// the title MUST be unique, otherwise the template would be overwritten\n\tif (!this.hasBase && this.useTemplate) {\n\t\ttitle = this.wiki.generateNewTitle(this.actionTemplate);\n\t} else if (!this.hasBase && !this.useTemplate) {\n\t\t// If NO $basetitle AND NO $template use initial title\n\t\t// DON'T overwrite any stuff\n\t\ttitle = this.wiki.generateNewTitle(title);\n\t}\n\tvar templateTiddler = this.wiki.getTiddler(this.actionTemplate) || {};\n\tvar tiddler = this.wiki.addTiddler(new $tw.Tiddler(templateTiddler.fields,creationFields,fields,modificationFields,{title: title}));\n\tif(this.actionSaveTitle) {\n\t\tthis.wiki.setTextReference(this.actionSaveTitle,title,this.getVariable(\"currentTiddler\"));\n\t}\n\tif(this.actionSaveDraftTitle) {\n\t\tthis.wiki.setTextReference(this.actionSaveDraftTitle,this.wiki.generateDraftTitle(title),this.getVariable(\"currentTiddler\"));\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-createtiddler\"] = CreateTiddlerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-deletefield.js": {
            "title": "$:/core/modules/widgets/action-deletefield.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-deletefield.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to delete fields of a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DeleteFieldWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDeleteFieldWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDeleteFieldWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nDeleteFieldWidget.prototype.execute = function() {\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.actionField = this.getAttribute(\"$field\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nDeleteFieldWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$tiddler\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nDeleteFieldWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar self = this,\n\t\ttiddler = this.wiki.getTiddler(self.actionTiddler),\n\t\tremoveFields = {},\n\t\thasChanged = false;\n\tif(this.actionField && tiddler) {\n\t\tremoveFields[this.actionField] = undefined;\n\t\tif(this.actionField in tiddler.fields) {\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\tif(tiddler) {\n\t\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\t\tif(name.charAt(0) !== \"$\" && name !== \"title\") {\n\t\t\t\tremoveFields[name] = undefined;\n\t\t\t\thasChanged = true;\n\t\t\t}\n\t\t});\n\t\tif(hasChanged) {\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,removeFields,this.wiki.getModificationFields()));\t\t\t\n\t\t}\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-deletefield\"] = DeleteFieldWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-deletetiddler.js": {
            "title": "$:/core/modules/widgets/action-deletetiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-deletetiddler.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to delete a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DeleteTiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDeleteTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDeleteTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nDeleteTiddlerWidget.prototype.execute = function() {\n\tthis.actionFilter = this.getAttribute(\"$filter\");\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nDeleteTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$filter\"] || changedAttributes[\"$tiddler\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nDeleteTiddlerWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar tiddlers = [];\n\tif(this.actionFilter) {\n\t\ttiddlers = this.wiki.filterTiddlers(this.actionFilter,this);\n\t}\n\tif(this.actionTiddler) {\n\t\ttiddlers.push(this.actionTiddler);\n\t}\n\tfor(var t=0; t<tiddlers.length; t++) {\n\t\tthis.wiki.deleteTiddler(tiddlers[t]);\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-deletetiddler\"] = DeleteTiddlerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-listops.js": {
            "title": "$:/core/modules/widgets/action-listops.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-listops.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to apply list operations to any tiddler field (defaults to the 'list' field of the current tiddler)\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar ActionListopsWidget = function(parseTreeNode, options) {\n\tthis.initialise(parseTreeNode, options);\n};\n/**\n * Inherit from the base widget class\n */\nActionListopsWidget.prototype = new Widget();\n/**\n * Render this widget into the DOM\n */\nActionListopsWidget.prototype.render = function(parent, nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n/**\n * Compute the internal state of the widget\n */\nActionListopsWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.target = this.getAttribute(\"$tiddler\", this.getVariable(\n\t\t\"currentTiddler\"));\n\tthis.filter = this.getAttribute(\"$filter\");\n\tthis.subfilter = this.getAttribute(\"$subfilter\");\n\tthis.listField = this.getAttribute(\"$field\", \"list\");\n\tthis.listIndex = this.getAttribute(\"$index\");\n\tthis.filtertags = this.getAttribute(\"$tags\");\n};\n/**\n * \tRefresh the widget by ensuring our attributes are up to date\n */\nActionListopsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.$tiddler || changedAttributes.$filter ||\n\t\tchangedAttributes.$subfilter || changedAttributes.$field ||\n\t\tchangedAttributes.$index || changedAttributes.$tags) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n/**\n * \tInvoke the action associated with this widget\n */\nActionListopsWidget.prototype.invokeAction = function(triggeringWidget,\n\tevent) {\n\t//Apply the specified filters to the lists\n\tvar field = this.listField,\n\t\tindex,\n\t\ttype = \"!!\",\n\t\tlist = this.listField;\n\tif(this.listIndex) {\n\t\tfield = undefined;\n\t\tindex = this.listIndex;\n\t\ttype = \"##\";\n\t\tlist = this.listIndex;\n\t}\n\tif(this.filter) {\n\t\tthis.wiki.setText(this.target, field, index, $tw.utils.stringifyList(\n\t\t\tthis.wiki\n\t\t\t.filterTiddlers(this.filter, this)));\n\t}\n\tif(this.subfilter) {\n\t\tvar subfilter = \"[list[\" + this.target + type + list + \"]] \" + this.subfilter;\n\t\tthis.wiki.setText(this.target, field, index, $tw.utils.stringifyList(\n\t\t\tthis.wiki\n\t\t\t.filterTiddlers(subfilter, this)));\n\t}\n\tif(this.filtertags) {\n\t\tvar tiddler = this.wiki.getTiddler(this.target),\n\t\t\toldtags = tiddler ? (tiddler.fields.tags || []).slice(0) : [],\n\t\t\ttagfilter = \"[list[\" + this.target + \"!!tags]] \" + this.filtertags,\n\t\t\tnewtags = this.wiki.filterTiddlers(tagfilter,this);\n\t\tif($tw.utils.stringifyList(oldtags.sort()) !== $tw.utils.stringifyList(newtags.sort())) {\n\t\t\tthis.wiki.setText(this.target,\"tags\",undefined,$tw.utils.stringifyList(newtags));\t\t\t\n\t\t}\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-listops\"] = ActionListopsWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-log.js": {
            "title": "$:/core/modules/widgets/action-log.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-log.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to log debug messages\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LogWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nLogWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLogWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\nLogWidget.prototype.execute = function(){\n\tthis.message = this.getAttribute(\"$$message\",\"debug\");\n\tthis.logAll = this.getAttribute(\"$$all\",\"no\") === \"yes\" ? true : false;\n\tthis.filter = this.getAttribute(\"$$filter\");\n}\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nLogWidget.prototype.refresh = function(changedTiddlers) {\n\tthis.refreshSelf();\n\treturn true;\n};\n\n/*\nInvoke the action associated with this widget\n*/\nLogWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tthis.log();\n\treturn true; // Action was invoked\n};\n\nLogWidget.prototype.log = function() {\n\tvar data = {},\n\t\tdataCount,\n\t\tallVars = {},\n\t\tfilteredVars;\n\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.substring(0,2) !== \"$$\") {\n\t\t\tdata[name] = attribute;\n\t\t}\t\t\n\t});\n\n\tfor(var v in this.variables) {\n\t\tallVars[v] = this.getVariable(v,{defaultValue:\"\"});\n\t}\t\n\tif(this.filter) {\n\t\tfilteredVars = this.wiki.compileFilter(this.filter).call(this.wiki,this.wiki.makeTiddlerIterator(allVars));\n\t\t$tw.utils.each(filteredVars,function(name) {\n\t\t\tdata[name] = allVars[name];\n\t\t});\t\t\n\t}\n\tdataCount = $tw.utils.count(data);\n\n\tconsole.group(this.message);\n\tif(dataCount > 0) {\n\t\t$tw.utils.logTable(data);\n\t}\n\tif(this.logAll || !dataCount) {\n\t\tconsole.groupCollapsed(\"All variables\");\n\t\t$tw.utils.logTable(allVars);\n\t\tconsole.groupEnd();\n\t}\n\tconsole.groupEnd();\n}\n\nexports[\"action-log\"] = LogWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-navigate.js": {
            "title": "$:/core/modules/widgets/action-navigate.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-navigate.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to navigate to a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar NavigateWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nNavigateWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nNavigateWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nNavigateWidget.prototype.execute = function() {\n\tthis.actionTo = this.getAttribute(\"$to\");\n\tthis.actionScroll = this.getAttribute(\"$scroll\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nNavigateWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$to\"] || changedAttributes[\"$scroll\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nNavigateWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tevent = event || {};\n\tvar bounds = triggeringWidget && triggeringWidget.getBoundingClientRect && triggeringWidget.getBoundingClientRect(),\n\t\tsuppressNavigation = event.metaKey || event.ctrlKey || (event.button === 1);\n\tif(this.actionScroll === \"yes\") {\n\t\tsuppressNavigation = false;\n\t} else if(this.actionScroll === \"no\") {\n\t\tsuppressNavigation = true;\n\t}\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.actionTo === undefined ? this.getVariable(\"currentTiddler\") : this.actionTo,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: triggeringWidget,\n\t\tnavigateFromClientRect: bounds && { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: suppressNavigation\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-navigate\"] = NavigateWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-popup.js": {
            "title": "$:/core/modules/widgets/action-popup.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-popup.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to trigger a popup.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ActionPopupWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nActionPopupWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nActionPopupWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nActionPopupWidget.prototype.execute = function() {\n\tthis.actionState = this.getAttribute(\"$state\");\n\tthis.actionCoords = this.getAttribute(\"$coords\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nActionPopupWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$state\"] || changedAttributes[\"$coords\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nActionPopupWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\t// Trigger the popup\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/,\n\t\tmatch = popupLocationRegExp.exec(this.actionCoords || \"\");\n\tif(match) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: null,\n\t\t\tdomNodeRect: {\n\t\t\t\tleft: parseFloat(match[1]),\n\t\t\t\ttop: parseFloat(match[2]),\n\t\t\t\twidth: parseFloat(match[3]),\n\t\t\t\theight: parseFloat(match[4])\n\t\t\t},\n\t\t\ttitle: this.actionState,\n\t\t\twiki: this.wiki\n\t\t});\n\t} else {\n\t\t$tw.popup.cancel(0);\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-popup\"] = ActionPopupWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-sendmessage.js": {
            "title": "$:/core/modules/widgets/action-sendmessage.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-sendmessage.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to send a message\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SendMessageWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSendMessageWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSendMessageWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nSendMessageWidget.prototype.execute = function() {\n\tthis.actionMessage = this.getAttribute(\"$message\");\n\tthis.actionParam = this.getAttribute(\"$param\");\n\tthis.actionName = this.getAttribute(\"$name\");\n\tthis.actionValue = this.getAttribute(\"$value\",\"\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nSendMessageWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(Object.keys(changedAttributes).length) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nSendMessageWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\t// Get the string parameter\n\tvar param = this.actionParam;\n\t// Assemble the attributes as a hashmap\n\tvar paramObject = Object.create(null);\n\tvar count = 0;\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tparamObject[name] = attribute;\n\t\t\tcount++;\n\t\t}\n\t});\n\t// Add name/value pair if present\n\tif(this.actionName) {\n\t\tparamObject[this.actionName] = this.actionValue;\n\t}\n\t// Dispatch the message\n\tthis.dispatchEvent({\n\t\ttype: this.actionMessage,\n\t\tparam: param,\n\t\tparamObject: paramObject,\n\t\ttiddlerTitle: this.getVariable(\"currentTiddler\"),\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tevent: event\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-sendmessage\"] = SendMessageWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-setfield.js": {
            "title": "$:/core/modules/widgets/action-setfield.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-setfield.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to set a single field or index on a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SetFieldWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSetFieldWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSetFieldWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nSetFieldWidget.prototype.execute = function() {\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.actionField = this.getAttribute(\"$field\");\n\tthis.actionIndex = this.getAttribute(\"$index\");\n\tthis.actionValue = this.getAttribute(\"$value\");\n\tthis.actionTimestamp = this.getAttribute(\"$timestamp\",\"yes\") === \"yes\";\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nSetFieldWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$tiddler\"] || changedAttributes[\"$field\"] || changedAttributes[\"$index\"] || changedAttributes[\"$value\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nSetFieldWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar self = this,\n\t\toptions = {};\n\toptions.suppressTimestamp = !this.actionTimestamp;\n\tif((typeof this.actionField == \"string\") || (typeof this.actionIndex == \"string\")  || (typeof this.actionValue == \"string\")) {\n\t\tthis.wiki.setText(this.actionTiddler,this.actionField,this.actionIndex,this.actionValue,options);\n\t}\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tself.wiki.setText(self.actionTiddler,name,undefined,attribute,options);\n\t\t}\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-setfield\"] = SetFieldWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/browse.js": {
            "title": "$:/core/modules/widgets/browse.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/browse.js\ntype: application/javascript\nmodule-type: widget\n\nBrowse widget for browsing for files to import\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar BrowseWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nBrowseWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nBrowseWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar domNode = this.document.createElement(\"input\");\n\tdomNode.setAttribute(\"type\",\"file\");\n\tif(this.browseMultiple) {\n\t\tdomNode.setAttribute(\"multiple\",\"multiple\");\n\t}\n\tif(this.tooltip) {\n\t\tdomNode.setAttribute(\"title\",this.tooltip);\n\t}\n\t// Nw.js supports \"nwsaveas\" to force a \"save as\" dialogue that allows a new or existing file to be selected\n\tif(this.nwsaveas) {\n\t\tdomNode.setAttribute(\"nwsaveas\",this.nwsaveas);\n\t}\n\tif(this.accept) {\n\t\tdomNode.setAttribute(\"accept\",this.accept);\n\t}\n\t// Nw.js supports \"webkitdirectory\" and \"nwdirectory\" to allow a directory to be selected\n\tif(this.webkitdirectory) {\n\t\tdomNode.setAttribute(\"webkitdirectory\",this.webkitdirectory);\n\t}\n\tif(this.nwdirectory) {\n\t\tdomNode.setAttribute(\"nwdirectory\",this.nwdirectory);\n\t}\n\t// Add a click event handler\n\tdomNode.addEventListener(\"change\",function (event) {\n\t\tif(self.message) {\n\t\t\tself.dispatchEvent({type: self.message, param: self.param, files: event.target.files});\n\t\t} else {\n\t\t\tself.wiki.readFiles(event.target.files,{\n\t\t\t\tcallback: function(tiddlerFieldsArray) {\n\t\t\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray)});\n\t\t\t\t},\n\t\t\t\tdeserializer: self.deserializer\n\t\t\t});\n\t\t}\n\t\treturn false;\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nBrowseWidget.prototype.execute = function() {\n\tthis.browseMultiple = this.getAttribute(\"multiple\");\n\tthis.deserializer = this.getAttribute(\"deserializer\");\n\tthis.message = this.getAttribute(\"message\");\n\tthis.param = this.getAttribute(\"param\");\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis.nwsaveas = this.getAttribute(\"nwsaveas\");\n\tthis.accept = this.getAttribute(\"accept\");\n\tthis.webkitdirectory = this.getAttribute(\"webkitdirectory\");\n\tthis.nwdirectory = this.getAttribute(\"nwdirectory\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nBrowseWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.browse = BrowseWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/button.js": {
            "title": "$:/core/modules/widgets/button.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/button.js\ntype: application/javascript\nmodule-type: widget\n\nButton widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ButtonWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nButtonWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nButtonWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this,\n\t\ttag = \"button\",\n\t\tdomNode;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tif(this.buttonTag && $tw.config.htmlUnsafeElements.indexOf(this.buttonTag) === -1) {\n\t\ttag = this.buttonTag;\n\t}\n\tdomNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\t// Assign classes\n\tvar classes = this[\"class\"].split(\" \") || [],\n\t\tisPoppedUp = (this.popup || this.popupTitle) && this.isPoppedUp();\n\tif(this.selectedClass) {\n\t\tif((this.set || this.setTitle) && this.setTo && this.isSelected()) {\n\t\t\t$tw.utils.pushTop(classes,this.selectedClass.split(\" \"));\n\t\t}\n\t\tif(isPoppedUp) {\n\t\t\t$tw.utils.pushTop(classes,this.selectedClass.split(\" \"));\n\t\t}\n\t}\n\tif(isPoppedUp) {\n\t\t$tw.utils.pushTop(classes,\"tc-popup-handle\");\n\t}\n\tdomNode.className = classes.join(\" \");\n\t// Assign other attributes\n\tif(this.style) {\n\t\tdomNode.setAttribute(\"style\",this.style);\n\t}\n\tif(this.tooltip) {\n\t\tdomNode.setAttribute(\"title\",this.tooltip);\n\t}\n\tif(this[\"aria-label\"]) {\n\t\tdomNode.setAttribute(\"aria-label\",this[\"aria-label\"]);\n\t}\n\t// Set the tabindex\n\tif(this.tabIndex) {\n\t\tdomNode.setAttribute(\"tabindex\",this.tabIndex);\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tdomNode.setAttribute(\"disabled\",true);\n\t}\n\t// Add a click event handler\n\tdomNode.addEventListener(\"click\",function (event) {\n\t\tvar handled = false;\n\t\tif(self.invokeActions(self,event)) {\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.to) {\n\t\t\tself.navigateTo(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.message) {\n\t\t\tself.dispatchMessage(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.popup || self.popupTitle) {\n\t\t\tself.triggerPopup(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.set || self.setTitle) {\n\t\t\tself.setTiddler();\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.actions) {\n\t\t\tvar modifierKey = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\t\tself.invokeActionString(self.actions,self,event,{modifier: modifierKey});\n\t\t}\n\t\tif(handled) {\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t}\n\t\treturn handled;\n\t},false);\n\t// Make it draggable if required\n\tif(this.dragTiddler || this.dragFilter) {\n\t\t$tw.utils.makeDraggable({\n\t\t\tdomNode: domNode,\n\t\t\tdragTiddlerFn: function() {return self.dragTiddler;},\n\t\t\tdragFilterFn: function() {return self.dragFilter;},\n\t\t\twidget: this\n\t\t});\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nWe don't allow actions to propagate because we trigger actions ourselves\n*/\nButtonWidget.prototype.allowActionPropagation = function() {\n\treturn false;\n};\n\nButtonWidget.prototype.getBoundingClientRect = function() {\n\treturn this.domNodes[0].getBoundingClientRect();\n};\n\nButtonWidget.prototype.isSelected = function() {\n    return this.setTitle ? (this.setField ? this.wiki.getTiddler(this.setTitle).getFieldString(this.setField) === this.setTo :\n\t\t(this.setIndex ? this.wiki.extractTiddlerDataItem(this.setTitle,this.setIndex) === this.setTo :\n\t\t\tthis.wiki.getTiddlerText(this.setTitle))) || this.defaultSetValue || this.getVariable(\"currentTiddler\") :\n\t\tthis.wiki.getTextReference(this.set,this.defaultSetValue,this.getVariable(\"currentTiddler\")) === this.setTo;\n};\n\nButtonWidget.prototype.isPoppedUp = function() {\n\tvar tiddler = this.popupTitle ? this.wiki.getTiddler(this.popupTitle) : this.wiki.getTiddler(this.popup);\n\tvar result = tiddler && tiddler.fields.text ? $tw.popup.readPopupState(tiddler.fields.text) : false;\n\treturn result;\n};\n\nButtonWidget.prototype.navigateTo = function(event) {\n\tvar bounds = this.getBoundingClientRect();\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.to,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: this,\n\t\tnavigateFromClientRect: { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: event.metaKey || event.ctrlKey || (event.button === 1),\n\t\tevent: event\n\t});\n};\n\nButtonWidget.prototype.dispatchMessage = function(event) {\n\tthis.dispatchEvent({type: this.message, param: this.param, tiddlerTitle: this.getVariable(\"currentTiddler\"), event: event});\n};\n\nButtonWidget.prototype.triggerPopup = function(event) {\n\tif(this.popupTitle) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNodes[0],\n\t\t\ttitle: this.popupTitle,\n\t\t\twiki: this.wiki,\n\t\t\tnoStateReference: true\n\t\t});\n\t} else {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNodes[0],\n\t\t\ttitle: this.popup,\n\t\t\twiki: this.wiki\n\t\t});\n\t}\n};\n\nButtonWidget.prototype.setTiddler = function() {\n\tif(this.setTitle) {\n\t\tthis.setField ? this.wiki.setText(this.setTitle,this.setField,undefined,this.setTo) :\n\t\t\t\t(this.setIndex ? this.wiki.setText(this.setTitle,undefined,this.setIndex,this.setTo) :\n\t\t\t\tthis.wiki.setText(this.setTitle,\"text\",undefined,this.setTo));\n\t} else {\n\t\tthis.wiki.setTextReference(this.set,this.setTo,this.getVariable(\"currentTiddler\"));\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nButtonWidget.prototype.execute = function() {\n\t// Get attributes\n\tthis.actions = this.getAttribute(\"actions\");\n\tthis.to = this.getAttribute(\"to\");\n\tthis.message = this.getAttribute(\"message\");\n\tthis.param = this.getAttribute(\"param\");\n\tthis.set = this.getAttribute(\"set\");\n\tthis.setTo = this.getAttribute(\"setTo\");\n\tthis.popup = this.getAttribute(\"popup\");\n\tthis.hover = this.getAttribute(\"hover\");\n\tthis[\"aria-label\"] = this.getAttribute(\"aria-label\");\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis.style = this.getAttribute(\"style\");\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tthis.selectedClass = this.getAttribute(\"selectedClass\");\n\tthis.defaultSetValue = this.getAttribute(\"default\",\"\");\n\tthis.buttonTag = this.getAttribute(\"tag\");\n\tthis.dragTiddler = this.getAttribute(\"dragTiddler\");\n\tthis.dragFilter = this.getAttribute(\"dragFilter\");\n\tthis.setTitle = this.getAttribute(\"setTitle\");\n\tthis.setField = this.getAttribute(\"setField\");\n\tthis.setIndex = this.getAttribute(\"setIndex\");\n\tthis.popupTitle = this.getAttribute(\"popupTitle\");\n\tthis.tabIndex = this.getAttribute(\"tabindex\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\nButtonWidget.prototype.updateDomNodeClasses = function() {\n\tvar domNodeClasses = this.domNode.className.split(\" \"),\n\t\toldClasses = this.class.split(\" \"),\n\t\tnewClasses;\t\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tnewClasses = this.class.split(\" \");\n\t//Remove classes assigned from the old value of class attribute\n\t$tw.utils.each(oldClasses,function(oldClass){\n\t\tvar i = domNodeClasses.indexOf(oldClass);\n\t\tif(i !== -1) {\n\t\t\tdomNodeClasses.splice(i,1);\n\t\t}\n\t});\n\t//Add new classes from updated class attribute.\n\t$tw.utils.pushTop(domNodeClasses,newClasses);\n\tthis.domNode.className = domNodeClasses.join(\" \");\n}\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nButtonWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.actions || changedAttributes.to || changedAttributes.message || changedAttributes.param || changedAttributes.set || changedAttributes.setTo || changedAttributes.popup || changedAttributes.hover || changedAttributes.selectedClass || changedAttributes.style || changedAttributes.dragFilter || changedAttributes.dragTiddler || (this.set && changedTiddlers[this.set]) || (this.popup && changedTiddlers[this.popup]) || (this.popupTitle && changedTiddlers[this.popupTitle]) || changedAttributes.setTitle || changedAttributes.setField || changedAttributes.setIndex || changedAttributes.popupTitle || changedAttributes.disabled) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedAttributes[\"class\"]) {\n\t\tthis.updateDomNodeClasses();\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.button = ButtonWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/checkbox.js": {
            "title": "$:/core/modules/widgets/checkbox.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/checkbox.js\ntype: application/javascript\nmodule-type: widget\n\nCheckbox widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CheckboxWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCheckboxWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCheckboxWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create our elements\n\tthis.labelDomNode = this.document.createElement(\"label\");\n\tthis.labelDomNode.setAttribute(\"class\",this.checkboxClass);\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"checkbox\");\n\tif(this.getValue()) {\n\t\tthis.inputDomNode.setAttribute(\"checked\",\"true\");\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tthis.inputDomNode.setAttribute(\"disabled\",true);\n\t}\n\tthis.labelDomNode.appendChild(this.inputDomNode);\n\tthis.spanDomNode = this.document.createElement(\"span\");\n\tthis.labelDomNode.appendChild(this.spanDomNode);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.labelDomNode,nextSibling);\n\tthis.renderChildren(this.spanDomNode,null);\n\tthis.domNodes.push(this.labelDomNode);\n};\n\nCheckboxWidget.prototype.getValue = function() {\n\tvar tiddler = this.wiki.getTiddler(this.checkboxTitle);\n\tif(tiddler) {\n\t\tif(this.checkboxTag) {\n\t\t\tif(this.checkboxInvertTag) {\n\t\t\t\treturn !tiddler.hasTag(this.checkboxTag);\n\t\t\t} else {\n\t\t\t\treturn tiddler.hasTag(this.checkboxTag);\n\t\t\t}\n\t\t}\n\t\tif(this.checkboxField) {\n\t\t\tvar value;\n\t\t\tif($tw.utils.hop(tiddler.fields,this.checkboxField)) {\n\t\t\t\tvalue = tiddler.fields[this.checkboxField] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = this.checkboxDefault || \"\";\n\t\t\t}\n\t\t\tif(value === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(value === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\tif(this.checkboxIndex) {\n\t\t\tvar value = this.wiki.extractTiddlerDataItem(tiddler,this.checkboxIndex,this.checkboxDefault || \"\");\n\t\t\tif(value === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(value === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif(this.checkboxTag) {\n\t\t\treturn false;\n\t\t}\n\t\tif(this.checkboxField) {\n\t\t\tif(this.checkboxDefault === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(this.checkboxDefault === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\nCheckboxWidget.prototype.handleChangeEvent = function(event) {\n\tvar checked = this.inputDomNode.checked,\n\t\ttiddler = this.wiki.getTiddler(this.checkboxTitle),\n\t\tfallbackFields = {text: \"\"},\n\t\tnewFields = {title: this.checkboxTitle},\n\t\thasChanged = false,\n\t\ttagCheck = false,\n\t\thasTag = tiddler && tiddler.hasTag(this.checkboxTag),\n\t\tvalue = checked ? this.checkboxChecked : this.checkboxUnchecked;\n\tif(this.checkboxTag && this.checkboxInvertTag === \"yes\") {\n\t\ttagCheck = hasTag === checked;\n\t} else {\n\t\ttagCheck = hasTag !== checked;\n\t}\n\t// Set the tag if specified\n\tif(this.checkboxTag && (!tiddler || tagCheck)) {\n\t\tnewFields.tags = tiddler ? (tiddler.fields.tags || []).slice(0) : [];\n\t\tvar pos = newFields.tags.indexOf(this.checkboxTag);\n\t\tif(pos !== -1) {\n\t\t\tnewFields.tags.splice(pos,1);\n\t\t}\n\t\tif(this.checkboxInvertTag === \"yes\" && !checked) {\n\t\t\tnewFields.tags.push(this.checkboxTag);\n\t\t} else if(this.checkboxInvertTag !== \"yes\" && checked) {\n\t\t\tnewFields.tags.push(this.checkboxTag);\n\t\t}\n\t\thasChanged = true;\n\t}\n\t// Set the field if specified\n\tif(this.checkboxField) {\n\t\tif(!tiddler || tiddler.fields[this.checkboxField] !== value) {\n\t\t\tnewFields[this.checkboxField] = value;\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\t// Set the index if specified\n\tif(this.checkboxIndex) {\n\t\tvar indexValue = this.wiki.extractTiddlerDataItem(this.checkboxTitle,this.checkboxIndex);\n\t\tif(!tiddler || indexValue !== value) {\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\tif(hasChanged) {\n\t\tif(this.checkboxIndex) {\n\t\t\tthis.wiki.setText(this.checkboxTitle,\"\",this.checkboxIndex,value);\n\t\t} else {\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),fallbackFields,tiddler,newFields,this.wiki.getModificationFields()));\n\t\t}\n\t}\n\t// Trigger actions\n\tif(this.checkboxActions) {\n\t\tthis.invokeActionString(this.checkboxActions,this,event);\n\t}\n\tif(this.checkboxCheckActions && checked) {\n\t\tthis.invokeActionString(this.checkboxCheckActions,this,event);\n\t}\n\tif(this.checkboxUncheckActions && !checked) {\n\t\tthis.invokeActionString(this.checkboxUncheckActions,this,event);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nCheckboxWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.checkboxActions = this.getAttribute(\"actions\");\n\tthis.checkboxCheckActions = this.getAttribute(\"checkactions\");\n\tthis.checkboxUncheckActions = this.getAttribute(\"uncheckactions\");\n\tthis.checkboxTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.checkboxTag = this.getAttribute(\"tag\");\n\tthis.checkboxField = this.getAttribute(\"field\");\n\tthis.checkboxIndex = this.getAttribute(\"index\");\n\tthis.checkboxChecked = this.getAttribute(\"checked\");\n\tthis.checkboxUnchecked = this.getAttribute(\"unchecked\");\n\tthis.checkboxDefault = this.getAttribute(\"default\");\n\tthis.checkboxClass = this.getAttribute(\"class\",\"\");\n\tthis.checkboxInvertTag = this.getAttribute(\"invertTag\",\"\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCheckboxWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.tag || changedAttributes.invertTag || changedAttributes.field || changedAttributes.index || changedAttributes.checked || changedAttributes.unchecked || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.disabled) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.checkboxTitle]) {\n\t\t\tthis.inputDomNode.checked = this.getValue();\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.checkbox = CheckboxWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/codeblock.js": {
            "title": "$:/core/modules/widgets/codeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/codeblock.js\ntype: application/javascript\nmodule-type: widget\n\nCode block node widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CodeBlockWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCodeBlockWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCodeBlockWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar codeNode = this.document.createElement(\"code\"),\n\t\tdomNode = this.document.createElement(\"pre\");\n\tcodeNode.appendChild(this.document.createTextNode(this.getAttribute(\"code\")));\n\tdomNode.appendChild(codeNode);\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.domNodes.push(domNode);\n\tif(this.postRender) {\n\t\tthis.postRender();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nCodeBlockWidget.prototype.execute = function() {\n\tthis.language = this.getAttribute(\"language\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCodeBlockWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.codeblock = CodeBlockWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/count.js": {
            "title": "$:/core/modules/widgets/count.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/count.js\ntype: application/javascript\nmodule-type: widget\n\nCount widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CountWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCountWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCountWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.currentCount);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nCountWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.filter = this.getAttribute(\"filter\");\n\t// Execute the filter\n\tif(this.filter) {\n\t\tthis.currentCount = this.wiki.filterTiddlers(this.filter,this).length;\n\t} else {\n\t\tthis.currentCount = \"0\";\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCountWidget.prototype.refresh = function(changedTiddlers) {\n\t// Re-execute the filter to get the count\n\tthis.computeAttributes();\n\tvar oldCount = this.currentCount;\n\tthis.execute();\n\tif(this.currentCount !== oldCount) {\n\t\t// Regenerate and rerender the widget and replace the existing DOM node\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n\n};\n\nexports.count = CountWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/diff-text.js": {
            "title": "$:/core/modules/widgets/diff-text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/diff-text.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to display a diff between two texts\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget,\n\tdmp = require(\"$:/core/modules/utils/diff-match-patch/diff_match_patch.js\");\n\nvar DiffTextWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDiffTextWidget.prototype = new Widget();\n\nDiffTextWidget.prototype.invisibleCharacters = {\n\t\"\\n\": \"↩︎\\n\",\n\t\"\\r\": \"⇠\",\n\t\"\\t\": \"⇥\\t\"\n};\n\n/*\nRender this widget into the DOM\n*/\nDiffTextWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create the diff\n\tvar dmpObject = new dmp.diff_match_patch(),\n\t\tdiffs = dmpObject.diff_main(this.getAttribute(\"source\"),this.getAttribute(\"dest\"));\n\t// Apply required cleanup\n\tswitch(this.getAttribute(\"cleanup\",\"semantic\")) {\n\t\tcase \"none\":\n\t\t\t// No cleanup\n\t\t\tbreak;\n\t\tcase \"efficiency\":\n\t\t\tdmpObject.diff_cleanupEfficiency(diffs);\n\t\t\tbreak;\n\t\tdefault: // case \"semantic\"\n\t\t\tdmpObject.diff_cleanupSemantic(diffs);\n\t\t\tbreak;\n\t}\n\t// Create the elements\n\tvar domContainer = this.document.createElement(\"div\"), \n\t\tdomDiff = this.createDiffDom(diffs);\n\tparent.insertBefore(domContainer,nextSibling);\n\t// Set variables\n\tthis.setVariable(\"diff-count\",diffs.reduce(function(acc,diff) {\n\t\tif(diff[0] !== dmp.DIFF_EQUAL) {\n\t\t\tacc++;\n\t\t}\n\t\treturn acc;\n\t},0).toString());\n\t// Render child widgets\n\tthis.renderChildren(domContainer,null);\n\t// Render the diff\n\tdomContainer.appendChild(domDiff);\n\t// Save our container\n\tthis.domNodes.push(domContainer);\n};\n\n/*\nCreate DOM elements representing a list of diffs\n*/\nDiffTextWidget.prototype.createDiffDom = function(diffs) {\n\tvar self = this;\n\t// Create the element and assign the attributes\n\tvar domPre = this.document.createElement(\"pre\"),\n\t\tdomCode = this.document.createElement(\"code\");\n\t$tw.utils.each(diffs,function(diff) {\n\t\tvar tag = diff[0] === dmp.DIFF_INSERT ? \"ins\" : (diff[0] === dmp.DIFF_DELETE ? \"del\" : \"span\"),\n\t\t\tclassName = diff[0] === dmp.DIFF_INSERT ? \"tc-diff-insert\" : (diff[0] === dmp.DIFF_DELETE ? \"tc-diff-delete\" : \"tc-diff-equal\"),\n\t\t\tdom = self.document.createElement(tag),\n\t\t\ttext = diff[1],\n\t\t\tcurrPos = 0,\n\t\t\tre = /([\\x00-\\x1F])/mg,\n\t\t\tmatch = re.exec(text),\n\t\t\tspan,\n\t\t\tprintable;\n\t\tdom.className = className;\n\t\twhile(match) {\n\t\t\tif(currPos < match.index) {\n\t\t\t\tdom.appendChild(self.document.createTextNode(text.slice(currPos,match.index)));\n\t\t\t}\n\t\t\tspan = self.document.createElement(\"span\");\n\t\t\tspan.className = \"tc-diff-invisible\";\n\t\t\tprintable = self.invisibleCharacters[match[0]] || (\"[0x\" + match[0].charCodeAt(0).toString(16) + \"]\");\n\t\t\tspan.appendChild(self.document.createTextNode(printable));\n\t\t\tdom.appendChild(span);\n\t\t\tcurrPos = match.index + match[0].length;\n\t\t\tmatch = re.exec(text);\n\t\t}\n\t\tif(currPos < text.length) {\n\t\t\tdom.appendChild(self.document.createTextNode(text.slice(currPos)));\n\t\t}\n\t\tdomCode.appendChild(dom);\n\t});\n\tdomPre.appendChild(domCode);\n\treturn domPre;\n};\n\n/*\nCompute the internal state of the widget\n*/\nDiffTextWidget.prototype.execute = function() {\n\t// Make child widgets\n\tvar parseTreeNodes;\n\tif(this.parseTreeNode && this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\tparseTreeNodes = this.parseTreeNode.children;\n\t} else {\n\t\tparseTreeNodes = [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: \"$:/language/Diffs/CountMessage\"}\n\t\t\t}\n\t\t}];\n\t}\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDiffTextWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.source || changedAttributes.dest || changedAttributes.cleanup) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports[\"diff-text\"] = DiffTextWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/draggable.js": {
            "title": "$:/core/modules/widgets/draggable.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/draggable.js\ntype: application/javascript\nmodule-type: widget\n\nDraggable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DraggableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDraggableWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDraggableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Sanitise the specified tag\n\tvar tag = this.draggableTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"div\";\n\t}\n\t// Create our element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = [\"tc-draggable\"];\n\tif(this.draggableClasses) {\n\t\tclasses.push(this.draggableClasses);\n\t}\n\tdomNode.setAttribute(\"class\",classes.join(\" \"));\n\t// Add event handlers\n\t$tw.utils.makeDraggable({\n\t\tdomNode: domNode,\n\t\tdragTiddlerFn: function() {return self.getAttribute(\"tiddler\");},\n\t\tdragFilterFn: function() {return self.getAttribute(\"filter\");},\n\t\tstartActions: self.startActions,\n\t\tendActions: self.endActions,\n\t\twidget: this\n\t});\n\t// Insert the link into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nDraggableWidget.prototype.execute = function() {\n\t// Pick up our attributes\n\tthis.draggableTag = this.getAttribute(\"tag\",\"div\");\n\tthis.draggableClasses = this.getAttribute(\"class\");\n\tthis.startActions = this.getAttribute(\"startactions\");\n\tthis.endActions = this.getAttribute(\"endactions\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDraggableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tag || changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.draggable = DraggableWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/droppable.js": {
            "title": "$:/core/modules/widgets/droppable.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/droppable.js\ntype: application/javascript\nmodule-type: widget\n\nDroppable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DroppableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDroppableWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDroppableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this,\n\t\ttag = this.parseTreeNode.isBlock ? \"div\" : \"span\",\n\t\tdomNode;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\tif(this.droppableTag && $tw.config.htmlUnsafeElements.indexOf(this.droppableTag) === -1) {\n\t\ttag = this.droppableTag;\n\t}\n\t// Create element and assign classes\n\tdomNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\tthis.assignDomNodeClasses();\n\t// Add event handlers\n\tif(this.droppableEnable) {\n\t\t$tw.utils.addEventListeners(domNode,[\n\t\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"}\n\t\t]);\t\t\n\t} else {\n\t\t$tw.utils.addClass(this.domNode,this.disabledClass);\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n\t// Stack of outstanding enter/leave events\n\tthis.currentlyEntered = [];\n};\n\nDroppableWidget.prototype.enterDrag = function(event) {\n\tif(this.currentlyEntered.indexOf(event.target) === -1) {\n\t\tthis.currentlyEntered.push(event.target);\n\t}\n\t// If we're entering for the first time we need to apply highlighting\n\t$tw.utils.addClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDroppableWidget.prototype.leaveDrag = function(event) {\n\tvar pos = this.currentlyEntered.indexOf(event.target);\n\tif(pos !== -1) {\n\t\tthis.currentlyEntered.splice(pos,1);\n\t}\n\t// Remove highlighting if we're leaving externally. The hacky second condition is to resolve a problem with Firefox whereby there is an erroneous dragenter event if the node being dragged is within the dropzone\n\tif(this.currentlyEntered.length === 0 || (this.currentlyEntered.length === 1 && this.currentlyEntered[0] === $tw.dragInProgress)) {\n\t\tthis.currentlyEntered = [];\n\t\tif(this.domNodes[0]) {\n\t\t\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t\t}\n\t}\n};\n\nDroppableWidget.prototype.handleDragEnterEvent  = function(event) {\n\tthis.enterDrag(event);\n\t// Tell the browser that we're ready to handle the drop\n\tevent.preventDefault();\n\t// Tell the browser not to ripple the drag up to any parent drop handlers\n\tevent.stopPropagation();\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDragOverEvent  = function(event) {\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Tell the browser that we're still interested in the drop\n\tevent.preventDefault();\n\t// Set the drop effect\n\tevent.dataTransfer.dropEffect = this.droppableEffect;\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDragLeaveEvent  = function(event) {\n\tthis.leaveDrag(event);\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDropEvent  = function(event) {\n\tvar self = this;\n\tthis.leaveDrag(event);\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\tvar dataTransfer = event.dataTransfer;\n\t// Remove highlighting\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t// Try to import the various data types we understand\n\t$tw.utils.importDataTransfer(dataTransfer,null,function(fieldsArray) {\n\t\tfieldsArray.forEach(function(fields) {\n\t\t\tself.performActions(fields.title || fields.text,event);\n\t\t});\n\t});\n\t// Tell the browser that we handled the drop\n\tevent.preventDefault();\n\t// Stop the drop ripple up to any parent handlers\n\tevent.stopPropagation();\n\treturn false;\n};\n\nDroppableWidget.prototype.performActions = function(title,event) {\n\tif(this.droppableActions) {\n\t\tvar modifierKey = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\tthis.invokeActionString(this.droppableActions,this,event,{actionTiddler: title, modifier: modifierKey});\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nDroppableWidget.prototype.execute = function() {\n\tthis.droppableActions = this.getAttribute(\"actions\");\n\tthis.droppableEffect = this.getAttribute(\"effect\",\"copy\");\n\tthis.droppableTag = this.getAttribute(\"tag\");\n\tthis.droppableEnable = (this.getAttribute(\"enable\") || \"yes\") === \"yes\";\n\tthis.disabledClass = this.getAttribute(\"disabledClass\",\"\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\nDroppableWidget.prototype.assignDomNodeClasses = function() {\n\tvar classes = this.getAttribute(\"class\",\"\").split(\" \");\n\tclasses.push(\"tc-droppable\");\n\tthis.domNode.className = classes.join(\" \");\t\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDroppableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tag || changedAttributes.enable || changedAttributes.disabledClass || changedAttributes.actions || changedAttributes.effect) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedAttributes[\"class\"]) {\n\t\tthis.assignDomNodeClasses();\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.droppable = DroppableWidget;\n\n})();",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/dropzone.js": {
            "title": "$:/core/modules/widgets/dropzone.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/dropzone.js\ntype: application/javascript\nmodule-type: widget\n\nDropzone widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DropZoneWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDropZoneWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDropZoneWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar domNode = this.document.createElement(\"div\");\n\tdomNode.className = this.dropzoneClass || \"tc-dropzone\";\n\t// Add event handlers\n\tif(this.dropzoneEnable) {\n\t\t$tw.utils.addEventListeners(domNode,[\n\t\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"},\n\t\t\t{name: \"paste\", handlerObject: this, handlerMethod: \"handlePasteEvent\"},\n\t\t\t{name: \"dragend\", handlerObject: this, handlerMethod: \"handleDragEndEvent\"}\n\t\t]);\t\t\n\t}\n\tdomNode.addEventListener(\"click\",function (event) {\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n\t// Stack of outstanding enter/leave events\n\tthis.currentlyEntered = [];\n};\n\nDropZoneWidget.prototype.enterDrag = function(event) {\n\tif(this.currentlyEntered.indexOf(event.target) === -1) {\n\t\tthis.currentlyEntered.push(event.target);\n\t}\n\t// If we're entering for the first time we need to apply highlighting\n\t$tw.utils.addClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDropZoneWidget.prototype.leaveDrag = function(event) {\n\tvar pos = this.currentlyEntered.indexOf(event.target);\n\tif(pos !== -1) {\n\t\tthis.currentlyEntered.splice(pos,1);\n\t}\n\t// Remove highlighting if we're leaving externally\n\tif(this.currentlyEntered.length === 0) {\n\t\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t}\n};\n\nDropZoneWidget.prototype.handleDragEnterEvent  = function(event) {\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\tthis.enterDrag(event);\n\t// Tell the browser that we're ready to handle the drop\n\tevent.preventDefault();\n\t// Tell the browser not to ripple the drag up to any parent drop handlers\n\tevent.stopPropagation();\n};\n\nDropZoneWidget.prototype.handleDragOverEvent  = function(event) {\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\t// Tell the browser that we're still interested in the drop\n\tevent.preventDefault();\n\tevent.dataTransfer.dropEffect = \"copy\"; // Explicitly show this is a copy\n};\n\nDropZoneWidget.prototype.handleDragLeaveEvent  = function(event) {\n\tthis.leaveDrag(event);\n};\n\nDropZoneWidget.prototype.handleDragEndEvent = function(event) {\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDropZoneWidget.prototype.handleDropEvent  = function(event) {\n\tvar self = this,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray), autoOpenOnImport: self.autoOpenOnImport, importTitle: self.importTitle});\n\t\t};\n\tthis.leaveDrag(event);\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\tvar self = this,\n\t\tdataTransfer = event.dataTransfer;\n\t// Remove highlighting\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t// Import any files in the drop\n\tvar numFiles = 0;\n\tif(dataTransfer.files) {\n\t\tnumFiles = this.wiki.readFiles(dataTransfer.files,{\n\t\t\tcallback: readFileCallback,\n\t\t\tdeserializer: this.dropzoneDeserializer\n\t\t});\n\t}\n\t// Try to import the various data types we understand\n\tif(numFiles === 0) {\n\t\t$tw.utils.importDataTransfer(dataTransfer,this.wiki.generateNewTitle(\"Untitled\"),readFileCallback);\n\t}\n\t// Tell the browser that we handled the drop\n\tevent.preventDefault();\n\t// Stop the drop ripple up to any parent handlers\n\tevent.stopPropagation();\n};\n\nDropZoneWidget.prototype.handlePasteEvent  = function(event) {\n\tvar self = this,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray), autoOpenOnImport: self.autoOpenOnImport, importTitle: self.importTitle});\n\t\t};\n\t// Let the browser handle it if we're in a textarea or input box\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) == -1 && !event.target.isContentEditable) {\n\t\tvar self = this,\n\t\t\titems = event.clipboardData.items;\n\t\t// Enumerate the clipboard items\n\t\tfor(var t = 0; t<items.length; t++) {\n\t\t\tvar item = items[t];\n\t\t\tif(item.kind === \"file\") {\n\t\t\t\t// Import any files\n\t\t\t\tthis.wiki.readFile(item.getAsFile(),{\n\t\t\t\t\tcallback: readFileCallback,\n\t\t\t\t\tdeserializer: this.dropzoneDeserializer\n\t\t\t\t});\n\t\t\t} else if(item.kind === \"string\") {\n\t\t\t\t// Create tiddlers from string items\n\t\t\t\tvar type = item.type;\n\t\t\t\titem.getAsString(function(str) {\n\t\t\t\t\tvar tiddlerFields = {\n\t\t\t\t\t\ttitle: self.wiki.generateNewTitle(\"Untitled\"),\n\t\t\t\t\t\ttext: str,\n\t\t\t\t\t\ttype: type\n\t\t\t\t\t};\n\t\t\t\t\tif($tw.log.IMPORT) {\n\t\t\t\t\t\tconsole.log(\"Importing string '\" + str + \"', type: '\" + type + \"'\");\n\t\t\t\t\t}\n\t\t\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify([tiddlerFields]), autoOpenOnImport: self.autoOpenOnImport, importTitle: self.importTitle});\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\t// Tell the browser that we've handled the paste\n\t\tevent.stopPropagation();\n\t\tevent.preventDefault();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nDropZoneWidget.prototype.execute = function() {\n\tthis.dropzoneClass = this.getAttribute(\"class\");\n\tthis.dropzoneDeserializer = this.getAttribute(\"deserializer\");\n\tthis.dropzoneEnable = (this.getAttribute(\"enable\") || \"yes\") === \"yes\";\n\tthis.autoOpenOnImport = this.getAttribute(\"autoOpenOnImport\");\n\tthis.importTitle = this.getAttribute(\"importTitle\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDropZoneWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.enable || changedAttributes.autoOpenOnImport || changedAttributes.importTitle || changedAttributes.deserializer || changedAttributes.class) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.dropzone = DropZoneWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-binary.js": {
            "title": "$:/core/modules/widgets/edit-binary.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-binary.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-binary widget; placeholder for editing binary tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar BINARY_WARNING_MESSAGE = \"$:/core/ui/BinaryWarning\";\nvar EXPORT_BUTTON_IMAGE = \"$:/core/images/export-button\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditBinaryWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditBinaryWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditBinaryWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditBinaryWidget.prototype.execute = function() {\n\t// Get our parameters\n\tvar editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tvar tiddler = this.wiki.getTiddler(editTitle);\n\tvar type = tiddler.fields.type;\n\tvar text = tiddler.fields.text;\n\t// Transclude the binary data tiddler warning message\n\tvar warn = {\n\t\ttype: \"element\",\n\t\ttag: \"p\",\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: BINARY_WARNING_MESSAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Create download link based on draft tiddler title\n\tvar link = {\n\t\ttype: \"element\",\n\t\ttag: \"a\",\n\t\tattributes: {\n\t\t\ttitle: {type: \"indirect\", textReference: \"!!draft.title\"},\n\t\t\tdownload: {type: \"indirect\", textReference: \"!!draft.title\"}\n\t\t},\n\t\tchildren: [{\n\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: EXPORT_BUTTON_IMAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Set the link href to internal data URI (no external)\n\tif(text) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: \"data:\" + type + \";base64,\" + text\n\t\t};\n\t}\n\t// Combine warning message and download link in a div\n\tvar element = {\n\t\ttype: \"element\",\n\t\ttag: \"div\",\n\t\tattributes: {\n\t\t\tclass: {type: \"string\", value: \"tc-binary-warning\"}\n\t\t},\n\t\tchildren: [warn, link]\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets([element]);\n};\n\n/*\nRefresh by refreshing our child widget\n*/\nEditBinaryWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports[\"edit-binary\"] = EditBinaryWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-bitmap.js": {
            "title": "$:/core/modules/widgets/edit-bitmap.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-bitmap.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-bitmap widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Default image sizes\nvar DEFAULT_IMAGE_WIDTH = 600,\n\tDEFAULT_IMAGE_HEIGHT = 370,\n\tDEFAULT_IMAGE_TYPE = \"image/png\";\n\n// Configuration tiddlers\nvar LINE_WIDTH_TITLE = \"$:/config/BitmapEditor/LineWidth\",\n\tLINE_COLOUR_TITLE = \"$:/config/BitmapEditor/Colour\",\n\tLINE_OPACITY_TITLE = \"$:/config/BitmapEditor/Opacity\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditBitmapWidget = function(parseTreeNode,options) {\n\t// Initialise the editor operations if they've not been done already\n\tif(!this.editorOperations) {\n\t\tEditBitmapWidget.prototype.editorOperations = {};\n\t\t$tw.modules.applyMethods(\"bitmapeditoroperation\",this.editorOperations);\n\t}\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditBitmapWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditBitmapWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create the wrapper for the toolbar and render its content\n\tthis.toolbarNode = this.document.createElement(\"div\");\n\tthis.toolbarNode.className = \"tc-editor-toolbar\";\n\tparent.insertBefore(this.toolbarNode,nextSibling);\n\tthis.domNodes.push(this.toolbarNode);\n\t// Create the on-screen canvas\n\tthis.canvasDomNode = $tw.utils.domMaker(\"canvas\",{\n\t\tdocument: this.document,\n\t\t\"class\":\"tc-edit-bitmapeditor\",\n\t\teventListeners: [{\n\t\t\tname: \"touchstart\", handlerObject: this, handlerMethod: \"handleTouchStartEvent\"\n\t\t},{\n\t\t\tname: \"touchmove\", handlerObject: this, handlerMethod: \"handleTouchMoveEvent\"\n\t\t},{\n\t\t\tname: \"touchend\", handlerObject: this, handlerMethod: \"handleTouchEndEvent\"\n\t\t},{\n\t\t\tname: \"mousedown\", handlerObject: this, handlerMethod: \"handleMouseDownEvent\"\n\t\t},{\n\t\t\tname: \"mousemove\", handlerObject: this, handlerMethod: \"handleMouseMoveEvent\"\n\t\t},{\n\t\t\tname: \"mouseup\", handlerObject: this, handlerMethod: \"handleMouseUpEvent\"\n\t\t}]\n\t});\n\t// Set the width and height variables\n\tthis.setVariable(\"tv-bitmap-editor-width\",this.canvasDomNode.width + \"px\");\n\tthis.setVariable(\"tv-bitmap-editor-height\",this.canvasDomNode.height + \"px\");\n\t// Render toolbar child widgets\n\tthis.renderChildren(this.toolbarNode,null);\n\t// // Insert the elements into the DOM\n\tparent.insertBefore(this.canvasDomNode,nextSibling);\n\tthis.domNodes.push(this.canvasDomNode);\n\t// Load the image into the canvas\n\tif($tw.browser) {\n\t\tthis.loadCanvas();\n\t}\n\t// Add widget message listeners\n\tthis.addEventListeners([\n\t\t{type: \"tm-edit-bitmap-operation\", handler: \"handleEditBitmapOperationMessage\"}\n\t]);\n};\n\n/*\nHandle an edit bitmap operation message from the toolbar\n*/\nEditBitmapWidget.prototype.handleEditBitmapOperationMessage = function(event) {\n\t// Invoke the handler\n\tvar handler = this.editorOperations[event.param];\n\tif(handler) {\n\t\thandler.call(this,event);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditBitmapWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nJust refresh the toolbar\n*/\nEditBitmapWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nSet the bitmap size variables and refresh the toolbar\n*/\nEditBitmapWidget.prototype.refreshToolbar = function() {\n\t// Set the width and height variables\n\tthis.setVariable(\"tv-bitmap-editor-width\",this.canvasDomNode.width + \"px\");\n\tthis.setVariable(\"tv-bitmap-editor-height\",this.canvasDomNode.height + \"px\");\n\t// Refresh each of our child widgets\n\t$tw.utils.each(this.children,function(childWidget) {\n\t\tchildWidget.refreshSelf();\n\t});\n};\n\nEditBitmapWidget.prototype.loadCanvas = function() {\n\tvar tiddler = this.wiki.getTiddler(this.editTitle),\n\t\tcurrImage = new Image();\n\t// Set up event handlers for loading the image\n\tvar self = this;\n\tcurrImage.onload = function() {\n\t\t// Copy the image to the on-screen canvas\n\t\tself.initCanvas(self.canvasDomNode,currImage.width,currImage.height,currImage);\n\t\t// And also copy the current bitmap to the off-screen canvas\n\t\tself.currCanvas = self.document.createElement(\"canvas\");\n\t\tself.initCanvas(self.currCanvas,currImage.width,currImage.height,currImage);\n\t\t// Set the width and height input boxes\n\t\tself.refreshToolbar();\n\t};\n\tcurrImage.onerror = function() {\n\t\t// Set the on-screen canvas size and clear it\n\t\tself.initCanvas(self.canvasDomNode,DEFAULT_IMAGE_WIDTH,DEFAULT_IMAGE_HEIGHT);\n\t\t// Set the off-screen canvas size and clear it\n\t\tself.currCanvas = self.document.createElement(\"canvas\");\n\t\tself.initCanvas(self.currCanvas,DEFAULT_IMAGE_WIDTH,DEFAULT_IMAGE_HEIGHT);\n\t\t// Set the width and height input boxes\n\t\tself.refreshToolbar();\n\t};\n\t// Get the current bitmap into an image object\n\tif(tiddler && tiddler.fields.type && tiddler.fields.text) {\n\t\tcurrImage.src = \"data:\" + tiddler.fields.type + \";base64,\" + tiddler.fields.text;\t\t\n\t} else {\n\t\tcurrImage.width = DEFAULT_IMAGE_WIDTH;\n\t\tcurrImage.height = DEFAULT_IMAGE_HEIGHT;\n\t\tcurrImage.onerror();\n\t}\n};\n\nEditBitmapWidget.prototype.initCanvas = function(canvas,width,height,image) {\n\tcanvas.width = width;\n\tcanvas.height = height;\n\tvar ctx = canvas.getContext(\"2d\");\n\tif(image) {\n\t\tctx.drawImage(image,0,0);\n\t} else {\n\t\tctx.fillStyle = \"#fff\";\n\t\tctx.fillRect(0,0,canvas.width,canvas.height);\n\t}\n};\n\n/*\n** Change the size of the canvas, preserving the current image\n*/\nEditBitmapWidget.prototype.changeCanvasSize = function(newWidth,newHeight) {\n\t// Create and size a new canvas\n\tvar newCanvas = this.document.createElement(\"canvas\");\n\tthis.initCanvas(newCanvas,newWidth,newHeight);\n\t// Copy the old image\n\tvar ctx = newCanvas.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n\t// Set the new canvas as the current one\n\tthis.currCanvas = newCanvas;\n\t// Set the size of the onscreen canvas\n\tthis.canvasDomNode.width = newWidth;\n\tthis.canvasDomNode.height = newHeight;\n\t// Paint the onscreen canvas with the offscreen canvas\n\tctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n};\n\n/*\n** Rotate the canvas left by 90 degrees\n*/\nEditBitmapWidget.prototype.rotateCanvasLeft = function() {\n\t// Get the current size of the image\n\tvar origWidth = this.currCanvas.width,\n\t\torigHeight = this.currCanvas.height;\n\t// Create and size a new canvas\n\tvar newCanvas = this.document.createElement(\"canvas\"),\n\t\tnewWidth = origHeight,\n\t\tnewHeight = origWidth;\n\tthis.initCanvas(newCanvas,newWidth,newHeight);\n\t// Copy the old image\n\tvar ctx = newCanvas.getContext(\"2d\");\n\tctx.save();\n\tctx.translate(newWidth / 2,newHeight / 2);\n\tctx.rotate(-Math.PI / 2);\n\tctx.drawImage(this.currCanvas,-origWidth / 2,-origHeight / 2);\n\tctx.restore();\n\t// Set the new canvas as the current one\n\tthis.currCanvas = newCanvas;\n\t// Set the size of the onscreen canvas\n\tthis.canvasDomNode.width = newWidth;\n\tthis.canvasDomNode.height = newHeight;\n\t// Paint the onscreen canvas with the offscreen canvas\n\tctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n};\n\nEditBitmapWidget.prototype.handleTouchStartEvent = function(event) {\n\tthis.brushDown = true;\n\tthis.strokeStart(event.touches[0].clientX,event.touches[0].clientY);\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleTouchMoveEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.strokeMove(event.touches[0].clientX,event.touches[0].clientY);\n\t}\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleTouchEndEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.brushDown = false;\n\t\tthis.strokeEnd();\n\t}\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleMouseDownEvent = function(event) {\n\tthis.strokeStart(event.clientX,event.clientY);\n\tthis.brushDown = true;\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleMouseMoveEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.strokeMove(event.clientX,event.clientY);\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nEditBitmapWidget.prototype.handleMouseUpEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.brushDown = false;\n\t\tthis.strokeEnd();\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nEditBitmapWidget.prototype.adjustCoordinates = function(x,y) {\n\tvar canvasRect = this.canvasDomNode.getBoundingClientRect(),\n\t\tscale = this.canvasDomNode.width/canvasRect.width;\n\treturn {x: (x - canvasRect.left) * scale, y: (y - canvasRect.top) * scale};\n};\n\nEditBitmapWidget.prototype.strokeStart = function(x,y) {\n\t// Start off a new stroke\n\tthis.stroke = [this.adjustCoordinates(x,y)];\n};\n\nEditBitmapWidget.prototype.strokeMove = function(x,y) {\n\tvar ctx = this.canvasDomNode.getContext(\"2d\"),\n\t\tt;\n\t// Add the new position to the end of the stroke\n\tthis.stroke.push(this.adjustCoordinates(x,y));\n\t// Redraw the previous image\n\tctx.drawImage(this.currCanvas,0,0);\n\t// Render the stroke\n\tctx.globalAlpha = parseFloat(this.wiki.getTiddlerText(LINE_OPACITY_TITLE,\"1.0\"));\n\tctx.strokeStyle = this.wiki.getTiddlerText(LINE_COLOUR_TITLE,\"#ff0\");\n\tctx.lineWidth = parseFloat(this.wiki.getTiddlerText(LINE_WIDTH_TITLE,\"3\"));\n\tctx.lineCap = \"round\";\n\tctx.lineJoin = \"round\";\n\tctx.beginPath();\n\tctx.moveTo(this.stroke[0].x,this.stroke[0].y);\n\tfor(t=1; t<this.stroke.length-1; t++) {\n\t\tvar s1 = this.stroke[t],\n\t\t\ts2 = this.stroke[t-1],\n\t\t\ttx = (s1.x + s2.x)/2,\n\t\t\tty = (s1.y + s2.y)/2;\n\t\tctx.quadraticCurveTo(s2.x,s2.y,tx,ty);\n\t}\n\tctx.stroke();\n};\n\nEditBitmapWidget.prototype.strokeEnd = function() {\n\t// Copy the bitmap to the off-screen canvas\n\tvar ctx = this.currCanvas.getContext(\"2d\");\n\tctx.drawImage(this.canvasDomNode,0,0);\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\nEditBitmapWidget.prototype.saveChanges = function() {\n\tvar tiddler = this.wiki.getTiddler(this.editTitle) || new $tw.Tiddler({title: this.editTitle,type: DEFAULT_IMAGE_TYPE});\n\t// data URIs look like \"data:<type>;base64,<text>\"\n\tvar dataURL = this.canvasDomNode.toDataURL(tiddler.fields.type),\n\t\tposColon = dataURL.indexOf(\":\"),\n\t\tposSemiColon = dataURL.indexOf(\";\"),\n\t\tposComma = dataURL.indexOf(\",\"),\n\t\ttype = dataURL.substring(posColon+1,posSemiColon),\n\t\ttext = dataURL.substring(posComma+1);\n\tvar update = {type: type, text: text};\n\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getModificationFields(),tiddler,update,this.wiki.getCreationFields()));\n};\n\nexports[\"edit-bitmap\"] = EditBitmapWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-shortcut.js": {
            "title": "$:/core/modules/widgets/edit-shortcut.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-shortcut.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to display an editable keyboard shortcut\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditShortcutWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditShortcutWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditShortcutWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.inputNode = this.document.createElement(\"input\");\n\t// Assign classes\n\tif(this.shortcutClass) {\n\t\tthis.inputNode.className = this.shortcutClass;\t\t\n\t}\n\t// Assign other attributes\n\tif(this.shortcutStyle) {\n\t\tthis.inputNode.setAttribute(\"style\",this.shortcutStyle);\n\t}\n\tif(this.shortcutTooltip) {\n\t\tthis.inputNode.setAttribute(\"title\",this.shortcutTooltip);\n\t}\n\tif(this.shortcutPlaceholder) {\n\t\tthis.inputNode.setAttribute(\"placeholder\",this.shortcutPlaceholder);\n\t}\n\tif(this.shortcutAriaLabel) {\n\t\tthis.inputNode.setAttribute(\"aria-label\",this.shortcutAriaLabel);\n\t}\n\t// Assign the current shortcut\n\tthis.updateInputNode();\n\t// Add event handlers\n\t$tw.utils.addEventListeners(this.inputNode,[\n\t\t{name: \"keydown\", handlerObject: this, handlerMethod: \"handleKeydownEvent\"}\n\t]);\n\t// Link into the DOM\n\tparent.insertBefore(this.inputNode,nextSibling);\n\tthis.domNodes.push(this.inputNode);\n\t// Focus the input Node if focus === \"yes\" or focus === \"true\"\n\tif(this.shortcutFocus === \"yes\" || this.shortcutFocus === \"true\") {\n\t\tthis.focus();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditShortcutWidget.prototype.execute = function() {\n\tthis.shortcutTiddler = this.getAttribute(\"tiddler\");\n\tthis.shortcutField = this.getAttribute(\"field\");\n\tthis.shortcutIndex = this.getAttribute(\"index\");\n\tthis.shortcutPlaceholder = this.getAttribute(\"placeholder\");\n\tthis.shortcutDefault = this.getAttribute(\"default\",\"\");\n\tthis.shortcutClass = this.getAttribute(\"class\");\n\tthis.shortcutStyle = this.getAttribute(\"style\");\n\tthis.shortcutTooltip = this.getAttribute(\"tooltip\");\n\tthis.shortcutAriaLabel = this.getAttribute(\"aria-label\");\n\tthis.shortcutFocus = this.getAttribute(\"focus\");\n};\n\n/*\nUpdate the value of the input node\n*/\nEditShortcutWidget.prototype.updateInputNode = function() {\n\tif(this.shortcutField) {\n\t\tvar tiddler = this.wiki.getTiddler(this.shortcutTiddler);\n\t\tif(tiddler && $tw.utils.hop(tiddler.fields,this.shortcutField)) {\n\t\t\tthis.inputNode.value = tiddler.getFieldString(this.shortcutField);\n\t\t} else {\n\t\t\tthis.inputNode.value = this.shortcutDefault;\n\t\t}\n\t} else if(this.shortcutIndex) {\n\t\tthis.inputNode.value = this.wiki.extractTiddlerDataItem(this.shortcutTiddler,this.shortcutIndex,this.shortcutDefault);\n\t} else {\n\t\tthis.inputNode.value = this.wiki.getTiddlerText(this.shortcutTiddler,this.shortcutDefault);\n\t}\n};\n\n/*\nHandle a dom \"keydown\" event\n*/\nEditShortcutWidget.prototype.handleKeydownEvent = function(event) {\n\t// Ignore shift, ctrl, meta, alt\n\tif(event.keyCode && $tw.keyboardManager.getModifierKeys().indexOf(event.keyCode) === -1) {\n\t\t// Get the shortcut text representation\n\t\tvar value = $tw.keyboardManager.getPrintableShortcuts([{\n\t\t\tctrlKey: event.ctrlKey,\n\t\t\tshiftKey: event.shiftKey,\n\t\t\taltKey: event.altKey,\n\t\t\tmetaKey: event.metaKey,\n\t\t\tkeyCode: event.keyCode\n\t\t}]);\n\t\tif(value.length > 0) {\n\t\t\tthis.wiki.setText(this.shortcutTiddler,this.shortcutField,this.shortcutIndex,value[0]);\n\t\t}\n\t\t// Ignore the keydown if it was already handled\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn true;\t\t\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nfocus the input node\n*/\nEditShortcutWidget.prototype.focus = function() {\n\tif(this.inputNode.focus && this.inputNode.select) {\n\t\tthis.inputNode.focus();\n\t\tthis.inputNode.select();\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget needed re-rendering\n*/\nEditShortcutWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.placeholder || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.style || changedAttributes.tooltip || changedAttributes[\"aria-label\"] || changedAttributes.focus) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedTiddlers[this.shortcutTiddler]) {\n\t\tthis.updateInputNode();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports[\"edit-shortcut\"] = EditShortcutWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-text.js": {
            "title": "$:/core/modules/widgets/edit-text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-text.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-text widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar editTextWidgetFactory = require(\"$:/core/modules/editor/factory.js\").editTextWidgetFactory,\n\tFramedEngine = require(\"$:/core/modules/editor/engines/framed.js\").FramedEngine,\n\tSimpleEngine = require(\"$:/core/modules/editor/engines/simple.js\").SimpleEngine;\n\nexports[\"edit-text\"] = editTextWidgetFactory(FramedEngine,SimpleEngine);\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit.js": {
            "title": "$:/core/modules/widgets/edit.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit.js\ntype: application/javascript\nmodule-type: widget\n\nEdit widget is a meta-widget chooses the appropriate actual editting widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n// Mappings from content type to editor type are stored in tiddlers with this prefix\nvar EDITOR_MAPPING_PREFIX = \"$:/config/EditorTypeMappings/\";\n\n/*\nCompute the internal state of the widget\n*/\nEditWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.editField = this.getAttribute(\"field\",\"text\");\n\tthis.editIndex = this.getAttribute(\"index\");\n\tthis.editClass = this.getAttribute(\"class\");\n\tthis.editPlaceholder = this.getAttribute(\"placeholder\");\n\tthis.editTabIndex = this.getAttribute(\"tabindex\");\n\tthis.editFocus = this.getAttribute(\"focus\",\"\");\n\tthis.editCancelPopups = this.getAttribute(\"cancelPopups\",\"\");\n\tthis.editInputActions = this.getAttribute(\"inputActions\");\n\tthis.editRefreshTitle = this.getAttribute(\"refreshTitle\");\n\tthis.editAutoComplete = this.getAttribute(\"autocomplete\");\n\t// Choose the appropriate edit widget\n\tthis.editorType = this.getEditorType();\n\t// Make the child widgets\n\tthis.makeChildWidgets([{\n\t\ttype: \"edit-\" + this.editorType,\n\t\tattributes: this.parseTreeNode.attributes,\n\t\tchildren: this.parseTreeNode.children\n\t}]);\n};\n\nEditWidget.prototype.getEditorType = function() {\n\t// Get the content type of the thing we're editing\n\tvar type;\n\tif(this.editField === \"text\") {\n\t\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\t\tif(tiddler) {\n\t\t\ttype = tiddler.fields.type;\n\t\t}\n\t}\n\ttype = type || \"text/vnd.tiddlywiki\";\n\tvar editorType = this.wiki.getTiddlerText(EDITOR_MAPPING_PREFIX + type);\n\tif(!editorType) {\n\t\tvar typeInfo = $tw.config.contentTypeInfo[type];\n\t\tif(typeInfo && typeInfo.encoding === \"base64\") {\n\t\t\teditorType = \"binary\";\n\t\t} else {\n\t\t\teditorType = \"text\";\n\t\t}\n\t}\n\treturn editorType;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEditWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// Refresh if an attribute has changed, or the type associated with the target tiddler has changed\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.tabindex || changedAttributes.cancelPopups || changedAttributes.inputActions || changedAttributes.refreshTitle || changedAttributes.autocomplete || (changedTiddlers[this.editTitle] && this.getEditorType() !== this.editorType)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.edit = EditWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/element.js": {
            "title": "$:/core/modules/widgets/element.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/element.js\ntype: application/javascript\nmodule-type: widget\n\nElement widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ElementWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nElementWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nElementWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\t// Neuter blacklisted elements\n\tthis.tag = this.parseTreeNode.tag;\n\tif($tw.config.htmlUnsafeElements.indexOf(this.tag) !== -1) {\n\t\tthis.tag = \"safe-\" + this.tag;\n\t}\n\t// Adjust headings by the current base level\n\tvar headingLevel = [\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\"].indexOf(this.tag);\n\tif(headingLevel !== -1) {\n\t\tvar baseLevel = parseInt(this.getVariable(\"tv-adjust-heading-level\",\"0\"),10) || 0;\n\t\theadingLevel = Math.min(Math.max(headingLevel + 1 + baseLevel,1),6);\n\t\tthis.tag = \"h\" + headingLevel;\n\t}\n\t// Select the namespace for the tag\n\tvar tagNamespaces = {\n\t\t\tsvg: \"http://www.w3.org/2000/svg\",\n\t\t\tmath: \"http://www.w3.org/1998/Math/MathML\",\n\t\t\tbody: \"http://www.w3.org/1999/xhtml\"\n\t\t};\n\tthis.namespace = tagNamespaces[this.tag];\n\tif(this.namespace) {\n\t\tthis.setVariable(\"namespace\",this.namespace);\n\t} else {\n\t\tthis.namespace = this.getVariable(\"namespace\",{defaultValue: \"http://www.w3.org/1999/xhtml\"});\n\t}\n\t// Invoke the th-rendering-element hook\n\tvar parseTreeNodes = $tw.hooks.invokeHook(\"th-rendering-element\",null,this);\n\tthis.isReplaced = !!parseTreeNodes;\n\tif(parseTreeNodes) {\n\t\t// Use the parse tree nodes provided by the hook\n\t\tthis.makeChildWidgets(parseTreeNodes);\n\t\tthis.renderChildren(this.parentDomNode,null);\n\t\treturn;\n\t}\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n\t// Create the DOM node and render children\n\tvar domNode = this.document.createElementNS(this.namespace,this.tag);\n\tthis.assignAttributes(domNode,{excludeEventAttributes: true});\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nElementWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\thasChangedAttributes = $tw.utils.count(changedAttributes) > 0;\n\tif(hasChangedAttributes) {\n\t\tif(!this.isReplaced) {\n\t\t\t// Update our attributes\n\t\t\tthis.assignAttributes(this.domNodes[0],{excludeEventAttributes: true});\t\t\t\n\t\t} else {\n\t\t\t// If we were replaced then completely refresh ourselves\n\t\t\treturn this.refreshSelf();\n\t\t}\n\t}\n\treturn this.refreshChildren(changedTiddlers) || hasChangedAttributes;\n};\n\nexports.element = ElementWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/encrypt.js": {
            "title": "$:/core/modules/widgets/encrypt.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/encrypt.js\ntype: application/javascript\nmodule-type: widget\n\nEncrypt widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EncryptWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEncryptWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEncryptWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.encryptedText);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEncryptWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.filter = this.getAttribute(\"filter\",\"[!is[system]]\");\n\t// Encrypt the filtered tiddlers\n\tvar tiddlers = this.wiki.filterTiddlers(this.filter),\n\t\tjson = {},\n\t\tself = this;\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title),\n\t\t\tjsonTiddler = {};\n\t\tfor(var f in tiddler.fields) {\n\t\t\tjsonTiddler[f] = tiddler.getFieldString(f);\n\t\t}\n\t\tjson[title] = jsonTiddler;\n\t});\n\tthis.encryptedText = $tw.utils.htmlEncode($tw.crypto.encrypt(JSON.stringify(json)));\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEncryptWidget.prototype.refresh = function(changedTiddlers) {\n\t// We don't need to worry about refreshing because the encrypt widget isn't for interactive use\n\treturn false;\n};\n\nexports.encrypt = EncryptWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/entity.js": {
            "title": "$:/core/modules/widgets/entity.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/entity.js\ntype: application/javascript\nmodule-type: widget\n\nHTML entity widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EntityWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEntityWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEntityWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar entityString = this.getAttribute(\"entity\",this.parseTreeNode.entity || \"\"),\n\t\ttextNode = this.document.createTextNode($tw.utils.entityDecode(entityString));\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEntityWidget.prototype.execute = function() {\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEntityWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.entity) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.entity = EntityWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/eventcatcher.js": {
            "title": "$:/core/modules/widgets/eventcatcher.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/eventcatcher.js\ntype: application/javascript\nmodule-type: widget\n\nEvent handler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EventWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEventWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEventWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.elementTag && $tw.config.htmlUnsafeElements.indexOf(this.elementTag) === -1) {\n\t\ttag = this.elementTag;\n\t}\t\n\tvar domNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\t// Assign classes\n\tthis.assignDomNodeClasses();\t\n\t// Add our event handler\n\t$tw.utils.each(this.types,function(type) {\n\t\tdomNode.addEventListener(type,function(event) {\n\t\t\tvar selector = self.getAttribute(\"selector\"),\n\t\t\t\tactions = self.getAttribute(\"actions-\"+type),\n\t\t\t\tselectedNode = event.target,\n\t\t\t\tselectedNodeRect,\n\t\t\t\tcatcherNodeRect,\n\t\t\t\tvariables = {};\n\t\t\tif(selector) {\n\t\t\t\t// Search ancestors for a node that matches the selector\n\t\t\t\twhile(!selectedNode.matches(selector) && selectedNode !== domNode) {\n\t\t\t\t\tselectedNode = selectedNode.parentNode;\n\t\t\t\t}\n\t\t\t\t// If we found one, copy the attributes as variables, otherwise exit\n\t\t\t\tif(selectedNode.matches(selector)) {\n\t\t\t\t\t$tw.utils.each(selectedNode.attributes,function(attribute) {\n\t\t\t\t\t\tvariables[\"dom-\" + attribute.name] = attribute.value.toString();\n\t\t\t\t\t});\n\t\t\t\t\t//Add a variable with a popup coordinate string for the selected node\n\t\t\t\t\tvariables[\"tv-popup-coords\"] = \"(\" + selectedNode.offsetLeft + \",\" + selectedNode.offsetTop +\",\" + selectedNode.offsetWidth + \",\" + selectedNode.offsetHeight + \")\";\n\t\t\t\t\t\n\t\t\t\t\t//Add variables for offset of selected node\n\t\t\t\t\tvariables[\"tv-selectednode-posx\"] = selectedNode.offsetLeft.toString();\n\t\t\t\t\tvariables[\"tv-selectednode-posy\"] = selectedNode.offsetTop.toString();\n\t\t\t\t\tvariables[\"tv-selectednode-width\"] = selectedNode.offsetWidth.toString();\n\t\t\t\t\tvariables[\"tv-selectednode-height\"] = selectedNode.offsetHeight.toString();\n\n\t\t\t\t\t//Add variables for event X and Y position relative to selected node\n\t\t\t\t\tselectedNodeRect = selectedNode.getBoundingClientRect();\t\t\t\t\n\t\t\t\t\tvariables[\"event-fromselected-posx\"] = (event.clientX - selectedNodeRect.left).toString();\n\t\t\t\t\tvariables[\"event-fromselected-posy\"] = (event.clientY - selectedNodeRect.top).toString();\n\n\t\t\t\t\t//Add variables for event X and Y position relative to event catcher node\n\t\t\t\t\tcatcherNodeRect = self.domNode.getBoundingClientRect();\n\t\t\t\t\tvariables[\"event-fromcatcher-posx\"] = (event.clientX - catcherNodeRect.left).toString();\n\t\t\t\t\tvariables[\"event-fromcatcher-posy\"] = (event.clientY - catcherNodeRect.top).toString();\n\t\t\t\t} else {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Execute our actions with the variables\n\t\t\tif(actions) {\n\t\t\t\t// Add a variable for the modifier key\n\t\t\t\tvariables.modifier = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\t\t\t// Add a variable for the mouse button\n\t\t\t\tif(\"button\" in event) {\n\t\t\t\t\tif(event.button === 0) {\n\t\t\t\t\t\tvariables[\"event-mousebutton\"] = \"left\";\n\t\t\t\t\t} else if(event.button === 1) {\n\t\t\t\t\t\tvariables[\"event-mousebutton\"] = \"middle\";\n\t\t\t\t\t} else if(event.button === 2) {\n\t\t\t\t\t\tvariables[\"event-mousebutton\"] = \"right\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tvariables[\"event-type\"] = event.type.toString();\n\t\t\t\tif(typeof event.detail === \"object\" && !!event.detail) {\n\t\t\t\t\t$tw.utils.each(event.detail,function(detailValue,detail) {\n\t\t\t\t\t\tvariables[\"event-detail-\" + detail] = detailValue.toString();\n\t\t\t\t\t});\n\t\t\t\t} else if(!!event.detail) {\n\t\t\t\t\tvariables[\"event-detail\"] = event.detail.toString();\n\t\t\t\t}\n\t\t\t\tself.invokeActionString(actions,self,event,variables);\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t},false);\n\t});\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEventWidget.prototype.execute = function() {\n\tvar self = this;\n\t// Get attributes that require a refresh on change\n\tthis.types = this.getAttribute(\"events\",\"\").split(\" \");\n\tthis.elementTag = this.getAttribute(\"tag\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\nEventWidget.prototype.assignDomNodeClasses = function() {\n\tvar classes = this.getAttribute(\"class\",\"\").split(\" \");\n\tclasses.push(\"tc-eventcatcher\");\n\tthis.domNode.className = classes.join(\" \");\t\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEventWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"events\"] || changedAttributes[\"tag\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedAttributes[\"class\"]) {\n\t\tthis.assignDomNodeClasses();\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.eventcatcher = EventWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/fieldmangler.js": {
            "title": "$:/core/modules/widgets/fieldmangler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/fieldmangler.js\ntype: application/javascript\nmodule-type: widget\n\nField mangler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar FieldManglerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-remove-field\", handler: \"handleRemoveFieldEvent\"},\n\t\t{type: \"tm-add-field\", handler: \"handleAddFieldEvent\"},\n\t\t{type: \"tm-remove-tag\", handler: \"handleRemoveTagEvent\"},\n\t\t{type: \"tm-add-tag\", handler: \"handleAddTagEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nFieldManglerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nFieldManglerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nFieldManglerWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.mangleTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nFieldManglerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nFieldManglerWidget.prototype.handleRemoveFieldEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tdeletion = {};\n\tdeletion[event.param] = undefined;\n\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,deletion));\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleAddFieldEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\taddition = this.wiki.getModificationFields(),\n\t\thadInvalidFieldName = false,\n\t\taddField = function(name,value) {\n\t\t\tvar trimmedName = name.toLowerCase().trim();\n\t\t\tif(!$tw.utils.isValidFieldName(trimmedName)) {\n\t\t\t\tif(!hadInvalidFieldName) {\n\t\t\t\t\talert($tw.language.getString(\n\t\t\t\t\t\t\"InvalidFieldName\",\n\t\t\t\t\t\t{variables:\n\t\t\t\t\t\t\t{fieldName: trimmedName}\n\t\t\t\t\t\t}\n\t\t\t\t\t));\n\t\t\t\t\thadInvalidFieldName = true;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif(!value && tiddler) {\n\t\t\t\t\tvalue = tiddler.fields[trimmedName];\n\t\t\t\t}\n\t\t\t\taddition[trimmedName] = value || \"\";\n\t\t\t}\n\t\t\treturn;\n\t\t};\n\taddition.title = this.mangleTitle;\n\tif(typeof event.param === \"string\") {\n\t\taddField(event.param,\"\");\n\t}\n\tif(typeof event.paramObject === \"object\") {\n\t\tfor(var name in event.paramObject) {\n\t\t\taddField(name,event.paramObject[name]);\n\t\t}\n\t}\n\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,addition));\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleRemoveTagEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tmodification = this.wiki.getModificationFields();\n\tif(tiddler && tiddler.fields.tags) {\n\t\tvar p = tiddler.fields.tags.indexOf(event.param);\n\t\tif(p !== -1) {\n\t\t\tmodification.tags = (tiddler.fields.tags || []).slice(0);\n\t\t\tmodification.tags.splice(p,1);\n\t\t\tif(modification.tags.length === 0) {\n\t\t\t\tmodification.tags = undefined;\n\t\t\t}\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,modification));\n\t\t}\n\t}\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleAddTagEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tmodification = this.wiki.getModificationFields();\n\tif(tiddler && typeof event.param === \"string\") {\n\t\tvar tag = event.param.trim();\n\t\tif(tag !== \"\") {\n\t\t\tmodification.tags = (tiddler.fields.tags || []).slice(0);\n\t\t\t$tw.utils.pushTop(modification.tags,tag);\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,modification));\t\t\t\n\t\t}\n\t} else if(typeof event.param === \"string\" && event.param.trim() !== \"\" && this.mangleTitle.trim() !== \"\") {\n\t\tvar tag = [];\n\t\ttag.push(event.param.trim());\n\t\tthis.wiki.addTiddler(new $tw.Tiddler({title: this.mangleTitle, tags: tag},modification));\n\t}\n\treturn true;\n};\n\nexports.fieldmangler = FieldManglerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/fields.js": {
            "title": "$:/core/modules/widgets/fields.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/fields.js\ntype: application/javascript\nmodule-type: widget\n\nFields widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar FieldsWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nFieldsWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nFieldsWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.text);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nFieldsWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.template = this.getAttribute(\"template\");\n\tthis.sort = this.getAttribute(\"sort\",\"yes\") === \"yes\";\n\tthis.sortReverse = this.getAttribute(\"sortReverse\",\"no\") === \"yes\";\n\tthis.exclude = this.getAttribute(\"exclude\");\n\tthis.include = this.getAttribute(\"include\",null);\n\tthis.stripTitlePrefix = this.getAttribute(\"stripTitlePrefix\",\"no\") === \"yes\";\n\t// Get the value to display\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle);\n\n\t// Get the inclusion and exclusion list\n\tvar excludeArr = (this.exclude) ? this.exclude.split(\" \") : [\"text\"];\n\t// Include takes precedence\n\tvar includeArr = (this.include) ? this.include.split(\" \") : null;\n\n\t// Compose the template\n\tvar text = [];\n\tif(this.template && tiddler) {\n\t\tvar fields = [];\n\t\tif (includeArr) { // Include takes precedence\n\t\t\tfor(var i=0; i<includeArr.length; i++) {\n\t\t\t\tif(tiddler.fields[includeArr[i]]) {\n\t\t\t\t\tfields.push(includeArr[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor(var fieldName in tiddler.fields) {\n\t\t\t\tif(excludeArr.indexOf(fieldName) === -1) {\n\t\t\t\t\tfields.push(fieldName);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.sort) fields.sort();\n\t\tif (this.sortReverse) fields.reverse();\n\t\tfor(var f=0, fmax=fields.length; f<fmax; f++) {\n\t\t\tfieldName = fields[f];\n\t\t\tvar row = this.template,\n\t\t\t\tvalue = tiddler.getFieldString(fieldName);\n\t\t\tif(this.stripTitlePrefix && fieldName === \"title\") {\n\t\t\t\tvar reStrip = /^\\{[^\\}]+\\}(.+)/mg,\n\t\t\t\t\treMatch = reStrip.exec(value);\n\t\t\t\tif(reMatch) {\n\t\t\t\t\tvalue = reMatch[1];\n\t\t\t\t}\n\t\t\t}\n\t\t\trow = $tw.utils.replaceString(row,\"$name$\",fieldName);\n\t\t\trow = $tw.utils.replaceString(row,\"$value$\",value);\n\t\t\trow = $tw.utils.replaceString(row,\"$encoded_value$\",$tw.utils.htmlEncode(value));\n\t\t\ttext.push(row);\n\t\t}\n\t}\n\tthis.text = text.join(\"\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nFieldsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif( changedAttributes.tiddler || changedAttributes.template || changedAttributes.exclude ||\n\t\tchangedAttributes.include || changedAttributes.sort || changedAttributes.sortReverse ||\n\t\tchangedTiddlers[this.tiddlerTitle] || changedAttributes.stripTitlePrefix) {\n\t\t\tthis.refreshSelf();\n\t\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\nexports.fields = FieldsWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/image.js": {
            "title": "$:/core/modules/widgets/image.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/image.js\ntype: application/javascript\nmodule-type: widget\n\nThe image widget displays an image referenced with an external URI or with a local tiddler title.\n\n```\n<$image src=\"TiddlerTitle\" width=\"320\" height=\"400\" class=\"classnames\">\n```\n\nThe image source can be the title of an existing tiddler or the URL of an external image.\n\nExternal images always generate an HTML `<img>` tag.\n\nTiddlers that have a _canonical_uri field generate an HTML `<img>` tag with the src attribute containing the URI.\n\nTiddlers that contain image data generate an HTML `<img>` tag with the src attribute containing a base64 representation of the image.\n\nTiddlers that contain wikitext could be rendered to a DIV of the usual size of a tiddler, and then transformed to the size requested.\n\nThe width and height attributes are interpreted as a number of pixels, and do not need to include the \"px\" suffix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ImageWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nImageWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nImageWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\t// Determine what type of image it is\n\tvar tag = \"img\", src = \"\",\n\t\ttiddler = this.wiki.getTiddler(this.imageSource);\n\tif(!tiddler) {\n\t\t// The source isn't the title of a tiddler, so we'll assume it's a URL\n\t\tsrc = this.getVariable(\"tv-get-export-image-link\",{params: [{name: \"src\",value: this.imageSource}],defaultValue: this.imageSource});\n\t} else {\n\t\t// Check if it is an image tiddler\n\t\tif(this.wiki.isImageTiddler(this.imageSource)) {\n\t\t\tvar type = tiddler.fields.type,\n\t\t\t\ttext = tiddler.fields.text,\n\t\t\t\t_canonical_uri = tiddler.fields._canonical_uri;\n\t\t\t// If the tiddler has body text then it doesn't need to be lazily loaded\n\t\t\tif(text) {\n\t\t\t\t// Render the appropriate element for the image type\n\t\t\t\tswitch(type) {\n\t\t\t\t\tcase \"application/pdf\":\n\t\t\t\t\t\ttag = \"embed\";\n\t\t\t\t\t\tsrc = \"data:application/pdf;base64,\" + text;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image/svg+xml\":\n\t\t\t\t\t\tsrc = \"data:image/svg+xml,\" + encodeURIComponent(text);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsrc = \"data:\" + type + \";base64,\" + text;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if(_canonical_uri) {\n\t\t\t\tswitch(type) {\n\t\t\t\t\tcase \"application/pdf\":\n\t\t\t\t\t\ttag = \"embed\";\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image/svg+xml\":\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\t\n\t\t\t} else {\n\t\t\t\t// Just trigger loading of the tiddler\n\t\t\t\tthis.wiki.getTiddlerText(this.imageSource);\n\t\t\t}\n\t\t}\n\t}\n\t// Create the element and assign the attributes\n\tvar domNode = this.document.createElement(tag);\n\tdomNode.setAttribute(\"src\",src);\n\tif(this.imageClass) {\n\t\tdomNode.setAttribute(\"class\",this.imageClass);\t\t\n\t}\n\tif(this.imageWidth) {\n\t\tdomNode.setAttribute(\"width\",this.imageWidth);\n\t}\n\tif(this.imageHeight) {\n\t\tdomNode.setAttribute(\"height\",this.imageHeight);\n\t}\n\tif(this.imageTooltip) {\n\t\tdomNode.setAttribute(\"title\",this.imageTooltip);\t\t\n\t}\n\tif(this.imageAlt) {\n\t\tdomNode.setAttribute(\"alt\",this.imageAlt);\t\t\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nImageWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.imageSource = this.getAttribute(\"source\");\n\tthis.imageWidth = this.getAttribute(\"width\");\n\tthis.imageHeight = this.getAttribute(\"height\");\n\tthis.imageClass = this.getAttribute(\"class\");\n\tthis.imageTooltip = this.getAttribute(\"tooltip\");\n\tthis.imageAlt = this.getAttribute(\"alt\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nImageWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.source || changedAttributes.width || changedAttributes.height || changedAttributes[\"class\"] || changedAttributes.tooltip || changedTiddlers[this.imageSource]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\t\n\t}\n};\n\nexports.image = ImageWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/importvariables.js": {
            "title": "$:/core/modules/widgets/importvariables.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/importvariables.js\ntype: application/javascript\nmodule-type: widget\n\nImport variable definitions from other tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ImportVariablesWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nImportVariablesWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nImportVariablesWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nImportVariablesWidget.prototype.execute = function(tiddlerList) {\n\tvar widgetPointer = this;\n\t// Got to flush all the accumulated variables\n\tthis.variables = new this.variablesConstructor();\n\t// Get our parameters\n\tthis.filter = this.getAttribute(\"filter\");\n\t// Compute the filter\n\tthis.tiddlerList = tiddlerList || this.wiki.filterTiddlers(this.filter,this);\n\t// Accumulate the <$set> widgets from each tiddler\n\t$tw.utils.each(this.tiddlerList,function(title) {\n\t\tvar parser = widgetPointer.wiki.parseTiddler(title);\n\t\tif(parser) {\n\t\t\tvar parseTreeNode = parser.tree[0];\n\t\t\twhile(parseTreeNode && parseTreeNode.type === \"set\") {\n\t\t\t\tvar node = {\n\t\t\t\t\ttype: \"set\",\n\t\t\t\t\tattributes: parseTreeNode.attributes,\n\t\t\t\t\tparams: parseTreeNode.params,\n\t\t\t\t\tisMacroDefinition: parseTreeNode.isMacroDefinition\n\t\t\t\t};\n\t\t\t\tif (parseTreeNode.isMacroDefinition) {\n\t\t\t\t\t// Macro definitions can be folded into\n\t\t\t\t\t// current widget instead of adding\n\t\t\t\t\t// another link to the chain.\n\t\t\t\t\tvar widget = widgetPointer.makeChildWidget(node);\n\t\t\t\t\twidget.computeAttributes();\n\t\t\t\t\twidget.execute();\n\t\t\t\t\t// We SHALLOW copy over all variables\n\t\t\t\t\t// in widget. We can't use\n\t\t\t\t\t// $tw.utils.assign, because that copies\n\t\t\t\t\t// up the prototype chain, which we\n\t\t\t\t\t// don't want.\n\t\t\t\t\t$tw.utils.each(Object.keys(widget.variables), function(key) {\n\t\t\t\t\t\twidgetPointer.variables[key] = widget.variables[key];\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\twidgetPointer.children = [widgetPointer.makeChildWidget(node)];\n\t\t\t\t\t// No more regenerating children for\n\t\t\t\t\t// this widget. If it needs to refresh,\n\t\t\t\t\t// it'll do so along with the the whole\n\t\t\t\t\t// importvariable tree.\n\t\t\t\t\tif (widgetPointer != this) {\n\t\t\t\t\t\twidgetPointer.makeChildWidgets = function(){};\n\t\t\t\t\t}\n\t\t\t\t\twidgetPointer = widgetPointer.children[0];\n\t\t\t\t}\n\t\t\t\tparseTreeNode = parseTreeNode.children && parseTreeNode.children[0];\n\t\t\t}\n\t\t} \n\t});\n\n\tif (widgetPointer != this) {\n\t\twidgetPointer.parseTreeNode.children = this.parseTreeNode.children;\n\t} else {\n\t\twidgetPointer.makeChildWidgets();\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nImportVariablesWidget.prototype.refresh = function(changedTiddlers) {\n\t// Recompute our attributes and the filter list\n\tvar changedAttributes = this.computeAttributes(),\n\t\ttiddlerList = this.wiki.filterTiddlers(this.getAttribute(\"filter\"),this);\n\t// Refresh if the filter has changed, or the list of tiddlers has changed, or any of the tiddlers in the list has changed\n\tfunction haveListedTiddlersChanged() {\n\t\tvar changed = false;\n\t\ttiddlerList.forEach(function(title) {\n\t\t\tif(changedTiddlers[title]) {\n\t\t\t\tchanged = true;\n\t\t\t}\n\t\t});\n\t\treturn changed;\n\t}\n\tif(changedAttributes.filter || !$tw.utils.isArrayEqual(this.tiddlerList,tiddlerList) || haveListedTiddlersChanged()) {\n\t\t// Compute the filter\n\t\tthis.removeChildDomNodes();\n\t\tthis.execute(tiddlerList);\n\t\tthis.renderChildren(this.parentDomNode,this.findNextSiblingDomNode());\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.importvariables = ImportVariablesWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/keyboard.js": {
            "title": "$:/core/modules/widgets/keyboard.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/keyboard.js\ntype: application/javascript\nmodule-type: widget\n\nKeyboard shortcut widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar KeyboardWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nKeyboardWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nKeyboardWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.tag && $tw.config.htmlUnsafeElements.indexOf(this.tag) === -1) {\n\t\ttag = this.tag;\n\t}\n\t// Create element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = (this[\"class\"] || \"\").split(\" \");\n\tclasses.push(\"tc-keyboard\");\n\tdomNode.className = classes.join(\" \");\n\t// Add a keyboard event handler\n\tdomNode.addEventListener(\"keydown\",function (event) {\n\t\tif($tw.keyboardManager.checkKeyDescriptors(event,self.keyInfoArray)) {\n\t\t\tvar handled = self.invokeActions(self,event);\n\t\t\tif(self.actions) {\n\t\t\t\tself.invokeActionString(self.actions,self,event);\n\t\t\t}\n\t\t\tself.dispatchMessage(event);\n\t\t\tif(handled || self.actions || self.message) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nKeyboardWidget.prototype.dispatchMessage = function(event) {\n\tthis.dispatchEvent({type: this.message, param: this.param, tiddlerTitle: this.getVariable(\"currentTiddler\")});\n};\n\n/*\nCompute the internal state of the widget\n*/\nKeyboardWidget.prototype.execute = function() {\n\tvar self = this;\n\t// Get attributes\n\tthis.actions = this.getAttribute(\"actions\",\"\");\n\tthis.message = this.getAttribute(\"message\",\"\");\n\tthis.param = this.getAttribute(\"param\",\"\");\n\tthis.key = this.getAttribute(\"key\",\"\");\n\tthis.tag = this.getAttribute(\"tag\",\"\");\n\tthis.keyInfoArray = $tw.keyboardManager.parseKeyDescriptors(this.key);\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tif(this.key.substr(0,2) === \"((\" && this.key.substr(-2,2) === \"))\") {\n\t\tthis.shortcutTiddlers = [];\n\t\tvar name = this.key.substring(2,this.key.length -2);\n\t\t$tw.utils.each($tw.keyboardManager.lookupNames,function(platformDescriptor) {\n\t\t\tself.shortcutTiddlers.push(\"$:/config/\" + platformDescriptor + \"/\" + name);\n\t\t});\n\t}\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nKeyboardWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.message || changedAttributes.param || changedAttributes.key || changedAttributes[\"class\"] || changedAttributes.tag) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\t// Update the keyInfoArray if one of its shortcut-config-tiddlers has changed\n\tif(this.shortcutTiddlers && $tw.utils.hopArray(changedTiddlers,this.shortcutTiddlers)) {\n\t\tthis.keyInfoArray = $tw.keyboardManager.parseKeyDescriptors(this.key);\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.keyboard = KeyboardWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/link.js": {
            "title": "$:/core/modules/widgets/link.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/link.js\ntype: application/javascript\nmodule-type: widget\n\nLink widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LinkWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nLinkWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLinkWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Get the value of the tv-wikilinks configuration macro\n\tvar wikiLinksMacro = this.getVariable(\"tv-wikilinks\"),\n\t\tuseWikiLinks = wikiLinksMacro ? (wikiLinksMacro.trim() !== \"no\") : true,\n\t\tmissingLinksEnabled = !(this.hideMissingLinks && this.isMissing && !this.isShadow);\n\t// Render the link if required\n\tif(useWikiLinks && missingLinksEnabled) {\n\t\tthis.renderLink(parent,nextSibling);\n\t} else {\n\t\t// Just insert the link text\n\t\tvar domNode = this.document.createElement(\"span\");\n\t\tparent.insertBefore(domNode,nextSibling);\n\t\tthis.renderChildren(domNode,null);\n\t\tthis.domNodes.push(domNode);\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nLinkWidget.prototype.renderLink = function(parent,nextSibling) {\n\tvar self = this;\n\t// Sanitise the specified tag\n\tvar tag = this.linkTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"a\";\n\t}\n\t// Create our element\n\tvar namespace = this.getVariable(\"namespace\",{defaultValue: \"http://www.w3.org/1999/xhtml\"}),\n\t\tdomNode = this.document.createElementNS(namespace,tag);\n\t// Assign classes\n\tvar classes = [];\n\tif(this.overrideClasses === undefined) {\n\t\tclasses.push(\"tc-tiddlylink\");\n\t\tif(this.isShadow) {\n\t\t\tclasses.push(\"tc-tiddlylink-shadow\");\n\t\t}\n\t\tif(this.isMissing && !this.isShadow) {\n\t\t\tclasses.push(\"tc-tiddlylink-missing\");\n\t\t} else {\n\t\t\tif(!this.isMissing) {\n\t\t\t\tclasses.push(\"tc-tiddlylink-resolves\");\n\t\t\t}\n\t\t}\n\t\tif(this.linkClasses) {\n\t\t\tclasses.push(this.linkClasses);\t\t\t\n\t\t}\n\t} else if(this.overrideClasses !== \"\") {\n\t\tclasses.push(this.overrideClasses)\n\t}\n\tif(classes.length > 0) {\n\t\tdomNode.setAttribute(\"class\",classes.join(\" \"));\n\t}\n\t// Set an href\n\tvar wikilinkTransformFilter = this.getVariable(\"tv-filter-export-link\"),\n\t\twikiLinkText;\n\tif(wikilinkTransformFilter) {\n\t\t// Use the filter to construct the href\n\t\twikiLinkText = this.wiki.filterTiddlers(wikilinkTransformFilter,this,function(iterator) {\n\t\t\titerator(self.wiki.getTiddler(self.to),self.to)\n\t\t})[0];\n\t} else {\n\t\t// Expand the tv-wikilink-template variable to construct the href\n\t\tvar wikiLinkTemplateMacro = this.getVariable(\"tv-wikilink-template\"),\n\t\t\twikiLinkTemplate = wikiLinkTemplateMacro ? wikiLinkTemplateMacro.trim() : \"#$uri_encoded$\";\n\t\twikiLinkText = $tw.utils.replaceString(wikiLinkTemplate,\"$uri_encoded$\",encodeURIComponent(this.to));\n\t\twikiLinkText = $tw.utils.replaceString(wikiLinkText,\"$uri_doubleencoded$\",encodeURIComponent(encodeURIComponent(this.to)));\n\t}\n\t// Override with the value of tv-get-export-link if defined\n\twikiLinkText = this.getVariable(\"tv-get-export-link\",{params: [{name: \"to\",value: this.to}],defaultValue: wikiLinkText});\n\tif(tag === \"a\") {\n\t\tvar namespaceHref = (namespace === \"http://www.w3.org/2000/svg\") ? \"http://www.w3.org/1999/xlink\" : undefined;\n\t\tdomNode.setAttributeNS(namespaceHref,\"href\",wikiLinkText);\n\t}\n\t// Set the tabindex\n\tif(this.tabIndex) {\n\t\tdomNode.setAttribute(\"tabindex\",this.tabIndex);\n\t}\n\t// Set the tooltip\n\t// HACK: Performance issues with re-parsing the tooltip prevent us defaulting the tooltip to \"<$transclude field='tooltip'><$transclude field='title'/></$transclude>\"\n\tvar tooltipWikiText = this.tooltip || this.getVariable(\"tv-wikilink-tooltip\");\n\tif(tooltipWikiText) {\n\t\tvar tooltipText = this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",tooltipWikiText,{\n\t\t\t\tparseAsInline: true,\n\t\t\t\tvariables: {\n\t\t\t\t\tcurrentTiddler: this.to\n\t\t\t\t},\n\t\t\t\tparentWidget: this\n\t\t\t});\n\t\tdomNode.setAttribute(\"title\",tooltipText);\n\t}\n\tif(this[\"aria-label\"]) {\n\t\tdomNode.setAttribute(\"aria-label\",this[\"aria-label\"]);\n\t}\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"click\", handlerObject: this, handlerMethod: \"handleClickEvent\"},\n\t]);\n\t// Make the link draggable if required\n\tif(this.draggable === \"yes\") {\n\t\t$tw.utils.makeDraggable({\n\t\t\tdomNode: domNode,\n\t\t\tdragTiddlerFn: function() {return self.to;},\n\t\t\twidget: this\n\t\t});\n\t}\n\t// Insert the link into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nLinkWidget.prototype.handleClickEvent = function(event) {\n\t// Send the click on its way as a navigate event\n\tvar bounds = this.domNodes[0].getBoundingClientRect();\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.to,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: this,\n\t\tnavigateFromClientRect: { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: event.metaKey || event.ctrlKey || (event.button === 1),\n\t\tmetaKey: event.metaKey,\n\t\tctrlKey: event.ctrlKey,\n\t\taltKey: event.altKey,\n\t\tshiftKey: event.shiftKey,\n\t\tevent: event\n\t});\n\tif(this.domNodes[0].hasAttribute(\"href\")) {\n\t\tevent.preventDefault();\n\t}\n\tevent.stopPropagation();\n\treturn false;\n};\n\n/*\nCompute the internal state of the widget\n*/\nLinkWidget.prototype.execute = function() {\n\t// Pick up our attributes\n\tthis.to = this.getAttribute(\"to\",this.getVariable(\"currentTiddler\"));\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis[\"aria-label\"] = this.getAttribute(\"aria-label\");\n\tthis.linkClasses = this.getAttribute(\"class\");\n\tthis.overrideClasses = this.getAttribute(\"overrideClass\");\n\tthis.tabIndex = this.getAttribute(\"tabindex\");\n\tthis.draggable = this.getAttribute(\"draggable\",\"yes\");\n\tthis.linkTag = this.getAttribute(\"tag\",\"a\");\n\t// Determine the link characteristics\n\tthis.isMissing = !this.wiki.tiddlerExists(this.to);\n\tthis.isShadow = this.wiki.isShadowTiddler(this.to);\n\tthis.hideMissingLinks = (this.getVariable(\"tv-show-missing-links\") || \"yes\") === \"no\";\n\t// Make the child widgets\n\tvar templateTree;\n\tif(this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\ttemplateTree = this.parseTreeNode.children;\n\t} else {\n\t\t// Default template is a link to the title\n\t\ttemplateTree = [{type: \"text\", text: this.to}];\n\t}\n\tthis.makeChildWidgets(templateTree);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nLinkWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.to || changedTiddlers[this.to] || changedAttributes[\"aria-label\"] || changedAttributes.tooltip) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.link = LinkWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/linkcatcher.js": {
            "title": "$:/core/modules/widgets/linkcatcher.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/linkcatcher.js\ntype: application/javascript\nmodule-type: widget\n\nLinkcatcher widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LinkCatcherWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-navigate\", handler: \"handleNavigateEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nLinkCatcherWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLinkCatcherWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nLinkCatcherWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.catchTo = this.getAttribute(\"to\");\n\tthis.catchMessage = this.getAttribute(\"message\");\n\tthis.catchSet = this.getAttribute(\"set\");\n\tthis.catchSetTo = this.getAttribute(\"setTo\");\n\tthis.catchActions = this.getAttribute(\"actions\");\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n\t// When executing actions we avoid trapping navigate events, so that we don't trigger ourselves recursively\n\tthis.executingActions = false;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nLinkCatcherWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.to || changedAttributes.message || changedAttributes.set || changedAttributes.setTo) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\n/*\nHandle a tm-navigate event\n*/\nLinkCatcherWidget.prototype.handleNavigateEvent = function(event) {\n\tif(!this.executingActions) {\n\t\t// Execute the actions\n\t\tif(this.catchTo) {\n\t\t\tthis.wiki.setTextReference(this.catchTo,event.navigateTo,this.getVariable(\"currentTiddler\"));\n\t\t}\n\t\tif(this.catchMessage && this.parentWidget) {\n\t\t\tthis.parentWidget.dispatchEvent({\n\t\t\t\ttype: this.catchMessage,\n\t\t\t\tparam: event.navigateTo,\n\t\t\t\tnavigateTo: event.navigateTo\n\t\t\t});\n\t\t}\n\t\tif(this.catchSet) {\n\t\t\tvar tiddler = this.wiki.getTiddler(this.catchSet);\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,{title: this.catchSet, text: this.catchSetTo}));\n\t\t}\n\t\tif(this.catchActions) {\n\t\t\tthis.executingActions = true;\n\t\t\tvar modifierKey = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\t\tthis.invokeActionString(this.catchActions,this,event,{navigateTo: event.navigateTo, modifier: modifierKey});\n\t\t\tthis.executingActions = false;\n\t\t}\n\t} else {\n\t\t// This is a navigate event generated by the actions of this linkcatcher, so we don't trap it again, but just pass it to the parent\n\t\tthis.parentWidget.dispatchEvent({\n\t\t\ttype: \"tm-navigate\",\n\t\t\tparam: event.navigateTo,\n\t\t\tnavigateTo: event.navigateTo\n\t\t});\n\t}\n\treturn false;\n};\n\nexports.linkcatcher = LinkCatcherWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/list.js": {
            "title": "$:/core/modules/widgets/list.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/list.js\ntype: application/javascript\nmodule-type: widget\n\nList and list item widgets\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\n/*\nThe list widget creates list element sub-widgets that reach back into the list widget for their configuration\n*/\n\nvar ListWidget = function(parseTreeNode,options) {\n\t// Initialise the storyviews if they've not been done already\n\tif(!this.storyViews) {\n\t\tListWidget.prototype.storyViews = {};\n\t\t$tw.modules.applyMethods(\"storyview\",this.storyViews);\n\t}\n\t// Main initialisation inherited from widget.js\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nListWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nListWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n\t// Construct the storyview\n\tvar StoryView = this.storyViews[this.storyViewName];\n\tif(this.storyViewName && !StoryView) {\n\t\tStoryView = this.storyViews[\"classic\"];\n\t}\n\tif(StoryView && !this.document.isTiddlyWikiFakeDom) {\n\t\tthis.storyview = new StoryView(this);\n\t} else {\n\t\tthis.storyview = null;\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nListWidget.prototype.execute = function() {\n\t// Get our attributes\n\tthis.template = this.getAttribute(\"template\");\n\tthis.editTemplate = this.getAttribute(\"editTemplate\");\n\tthis.variableName = this.getAttribute(\"variable\",\"currentTiddler\");\n\tthis.storyViewName = this.getAttribute(\"storyview\");\n\tthis.historyTitle = this.getAttribute(\"history\");\n\t// Compose the list elements\n\tthis.list = this.getTiddlerList();\n\tvar members = [],\n\t\tself = this;\n\t// Check for an empty list\n\tif(this.list.length === 0) {\n\t\tmembers = this.getEmptyMessage();\n\t} else {\n\t\t$tw.utils.each(this.list,function(title,index) {\n\t\t\tmembers.push(self.makeItemTemplate(title));\n\t\t});\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(members);\n\t// Clear the last history\n\tthis.history = [];\n};\n\nListWidget.prototype.getTiddlerList = function() {\n\tvar defaultFilter = \"[!is[system]sort[title]]\";\n\treturn this.wiki.filterTiddlers(this.getAttribute(\"filter\",defaultFilter),this);\n};\n\nListWidget.prototype.getEmptyMessage = function() {\n\tvar parser,\n\t\temptyMessage = this.getAttribute(\"emptyMessage\",\"\");\n\t// this.wiki.parseText() calls \n\t// new Parser(..), which should only be done, if needed, because it's heavy!\n\tif (emptyMessage === \"\") {\n\t\treturn [];\n\t}\n\tparser = this.wiki.parseText(\"text/vnd.tiddlywiki\",emptyMessage,{parseAsInline: true});\n\tif(parser) {\n\t\treturn parser.tree;\n\t} else {\n\t\treturn [];\n\t}\n};\n\n/*\nCompose the template for a list item\n*/\nListWidget.prototype.makeItemTemplate = function(title) {\n\t// Check if the tiddler is a draft\n\tvar tiddler = this.wiki.getTiddler(title),\n\t\tisDraft = tiddler && tiddler.hasField(\"draft.of\"),\n\t\ttemplate = this.template,\n\t\ttemplateTree;\n\tif(isDraft && this.editTemplate) {\n\t\ttemplate = this.editTemplate;\n\t}\n\t// Compose the transclusion of the template\n\tif(template) {\n\t\ttemplateTree = [{type: \"transclude\", attributes: {tiddler: {type: \"string\", value: template}}}];\n\t} else {\n\t\tif(this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\t\ttemplateTree = this.parseTreeNode.children;\n\t\t} else {\n\t\t\t// Default template is a link to the title\n\t\t\ttemplateTree = [{type: \"element\", tag: this.parseTreeNode.isBlock ? \"div\" : \"span\", children: [{type: \"link\", attributes: {to: {type: \"string\", value: title}}, children: [\n\t\t\t\t\t{type: \"text\", text: title}\n\t\t\t]}]}];\n\t\t}\n\t}\n\t// Return the list item\n\treturn {type: \"listitem\", itemTitle: title, variableName: this.variableName, children: templateTree};\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nListWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\tresult;\n\t// Call the storyview\n\tif(this.storyview && this.storyview.refreshStart) {\n\t\tthis.storyview.refreshStart(changedTiddlers,changedAttributes);\n\t}\n\t// Completely refresh if any of our attributes have changed\n\tif(changedAttributes.filter || changedAttributes.template || changedAttributes.editTemplate || changedAttributes.emptyMessage || changedAttributes.storyview || changedAttributes.history) {\n\t\tthis.refreshSelf();\n\t\tresult = true;\n\t} else {\n\t\t// Handle any changes to the list\n\t\tresult = this.handleListChanges(changedTiddlers);\n\t\t// Handle any changes to the history stack\n\t\tif(this.historyTitle && changedTiddlers[this.historyTitle]) {\n\t\t\tthis.handleHistoryChanges();\n\t\t}\n\t}\n\t// Call the storyview\n\tif(this.storyview && this.storyview.refreshEnd) {\n\t\tthis.storyview.refreshEnd(changedTiddlers,changedAttributes);\n\t}\n\treturn result;\n};\n\n/*\nHandle any changes to the history list\n*/\nListWidget.prototype.handleHistoryChanges = function() {\n\t// Get the history data\n\tvar newHistory = this.wiki.getTiddlerDataCached(this.historyTitle,[]);\n\t// Ignore any entries of the history that match the previous history\n\tvar entry = 0;\n\twhile(entry < newHistory.length && entry < this.history.length && newHistory[entry].title === this.history[entry].title) {\n\t\tentry++;\n\t}\n\t// Navigate forwards to each of the new tiddlers\n\twhile(entry < newHistory.length) {\n\t\tif(this.storyview && this.storyview.navigateTo) {\n\t\t\tthis.storyview.navigateTo(newHistory[entry]);\n\t\t}\n\t\tentry++;\n\t}\n\t// Update the history\n\tthis.history = newHistory;\n};\n\n/*\nProcess any changes to the list\n*/\nListWidget.prototype.handleListChanges = function(changedTiddlers) {\n\t// Get the new list\n\tvar prevList = this.list;\n\tthis.list = this.getTiddlerList();\n\t// Check for an empty list\n\tif(this.list.length === 0) {\n\t\t// Check if it was empty before\n\t\tif(prevList.length === 0) {\n\t\t\t// If so, just refresh the empty message\n\t\t\treturn this.refreshChildren(changedTiddlers);\n\t\t} else {\n\t\t\t// Replace the previous content with the empty message\n\t\t\tfor(t=this.children.length-1; t>=0; t--) {\n\t\t\t\tthis.removeListItem(t);\n\t\t\t}\n\t\t\tvar nextSibling = this.findNextSiblingDomNode();\n\t\t\tthis.makeChildWidgets(this.getEmptyMessage());\n\t\t\tthis.renderChildren(this.parentDomNode,nextSibling);\n\t\t\treturn true;\n\t\t}\n\t} else {\n\t\t// If the list was empty then we need to remove the empty message\n\t\tif(prevList.length === 0) {\n\t\t\tthis.removeChildDomNodes();\n\t\t\tthis.children = [];\n\t\t}\n\t\t// Cycle through the list, inserting and removing list items as needed\n\t\tvar hasRefreshed = false;\n\t\tfor(var t=0; t<this.list.length; t++) {\n\t\t\tvar index = this.findListItem(t,this.list[t]);\n\t\t\tif(index === undefined) {\n\t\t\t\t// The list item must be inserted\n\t\t\t\tthis.insertListItem(t,this.list[t]);\n\t\t\t\thasRefreshed = true;\n\t\t\t} else {\n\t\t\t\t// There are intervening list items that must be removed\n\t\t\t\tfor(var n=index-1; n>=t; n--) {\n\t\t\t\t\tthis.removeListItem(n);\n\t\t\t\t\thasRefreshed = true;\n\t\t\t\t}\n\t\t\t\t// Refresh the item we're reusing\n\t\t\t\tvar refreshed = this.children[t].refresh(changedTiddlers);\n\t\t\t\thasRefreshed = hasRefreshed || refreshed;\n\t\t\t}\n\t\t}\n\t\t// Remove any left over items\n\t\tfor(t=this.children.length-1; t>=this.list.length; t--) {\n\t\t\tthis.removeListItem(t);\n\t\t\thasRefreshed = true;\n\t\t}\n\t\treturn hasRefreshed;\n\t}\n};\n\n/*\nFind the list item with a given title, starting from a specified position\n*/\nListWidget.prototype.findListItem = function(startIndex,title) {\n\twhile(startIndex < this.children.length) {\n\t\tif(this.children[startIndex].parseTreeNode.itemTitle === title) {\n\t\t\treturn startIndex;\n\t\t}\n\t\tstartIndex++;\n\t}\n\treturn undefined;\n};\n\n/*\nInsert a new list item at the specified index\n*/\nListWidget.prototype.insertListItem = function(index,title) {\n\t// Create, insert and render the new child widgets\n\tvar widget = this.makeChildWidget(this.makeItemTemplate(title));\n\twidget.parentDomNode = this.parentDomNode; // Hack to enable findNextSiblingDomNode() to work\n\tthis.children.splice(index,0,widget);\n\tvar nextSibling = widget.findNextSiblingDomNode();\n\twidget.render(this.parentDomNode,nextSibling);\n\t// Animate the insertion if required\n\tif(this.storyview && this.storyview.insert) {\n\t\tthis.storyview.insert(widget);\n\t}\n\treturn true;\n};\n\n/*\nRemove the specified list item\n*/\nListWidget.prototype.removeListItem = function(index) {\n\tvar widget = this.children[index];\n\t// Animate the removal if required\n\tif(this.storyview && this.storyview.remove) {\n\t\tthis.storyview.remove(widget);\n\t} else {\n\t\twidget.removeChildDomNodes();\n\t}\n\t// Remove the child widget\n\tthis.children.splice(index,1);\n};\n\nexports.list = ListWidget;\n\nvar ListItemWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nListItemWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nListItemWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nListItemWidget.prototype.execute = function() {\n\t// Set the current list item title\n\tthis.setVariable(this.parseTreeNode.variableName,this.parseTreeNode.itemTitle);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nListItemWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.listitem = ListItemWidget;\n\n})();",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/log.js": {
            "title": "$:/core/modules/widgets/log.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/log.js\ntype: application/javascript\nmodule-type: widget-subclass\n\nWidget to log debug messages\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.baseClass = \"action-log\";\n\nexports.name = \"log\";\n\nexports.constructor = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n}\n\nexports.prototype = {};\n\nexports.prototype.render = function(event) {\n\tObject.getPrototypeOf(Object.getPrototypeOf(this)).render.call(this,event);\t\n\tObject.getPrototypeOf(Object.getPrototypeOf(this)).log.call(this);\n}\n\n})();",
            "type": "application/javascript",
            "module-type": "widget-subclass"
        },
        "$:/core/modules/widgets/macrocall.js": {
            "title": "$:/core/modules/widgets/macrocall.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/macrocall.js\ntype: application/javascript\nmodule-type: widget\n\nMacrocall widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar MacroCallWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nMacroCallWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nMacroCallWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nMacroCallWidget.prototype.execute = function() {\n\t// Get the parse type if specified\n\tthis.parseType = this.getAttribute(\"$type\",\"text/vnd.tiddlywiki\");\n\tthis.renderOutput = this.getAttribute(\"$output\",\"text/html\");\n\t// Merge together the parameters specified in the parse tree with the specified attributes\n\tvar params = this.parseTreeNode.params ? this.parseTreeNode.params.slice(0) : [];\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tparams.push({name: name, value: attribute});\t\t\t\n\t\t}\n\t});\n\t// Get the macro value\n\tvar macroName = this.parseTreeNode.name || this.getAttribute(\"$name\"),\n\t\tvariableInfo = this.getVariableInfo(macroName,{params: params}),\n\t\ttext = variableInfo.text,\n\t\tparseTreeNodes;\n\t// Are we rendering to HTML?\n\tif(this.renderOutput === \"text/html\") {\n\t\t// If so we'll return the parsed macro\n\t\t// Check if we've already cached parsing this macro\n\t\tvar mode = this.parseTreeNode.isBlock ? \"blockParser\" : \"inlineParser\",\n\t\t\tparser;\n\t\tif(variableInfo.srcVariable && variableInfo.srcVariable[mode]) {\n\t\t\tparser = variableInfo.srcVariable[mode];\n\t\t} else {\n\t\t\tparser = this.wiki.parseText(this.parseType,text,\n\t\t\t\t\t\t\t\t{parseAsInline: !this.parseTreeNode.isBlock});\n\t\t\tif(variableInfo.isCacheable && variableInfo.srcVariable) {\n\t\t\t\tvariableInfo.srcVariable[mode] = parser;\n\t\t\t}\n\t\t}\n\t\tvar parseTreeNodes = parser ? parser.tree : [];\n\t\t// Wrap the parse tree in a vars widget assigning the parameters to variables named \"__paramname__\"\n\t\tvar attributes = {};\n\t\t$tw.utils.each(variableInfo.params,function(param) {\n\t\t\tvar name = \"__\" + param.name + \"__\";\n\t\t\tattributes[name] = {\n\t\t\t\tname: name,\n\t\t\t\ttype: \"string\",\n\t\t\t\tvalue: param.value\n\t\t\t};\n\t\t});\n\t\tparseTreeNodes = [{\n\t\t\ttype: \"vars\",\n\t\t\tattributes: attributes,\n\t\t\tchildren: parseTreeNodes\n\t\t}];\n\t} else if(this.renderOutput === \"text/raw\") {\n\t\tparseTreeNodes = [{type: \"text\", text: text}];\n\t} else {\n\t\t// Otherwise, we'll render the text\n\t\tvar plainText = this.wiki.renderText(\"text/plain\",this.parseType,text,{parentWidget: this});\n\t\tparseTreeNodes = [{type: \"text\", text: plainText}];\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nMacroCallWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\t// Rerender ourselves\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.macrocall = MacroCallWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/navigator.js": {
            "title": "$:/core/modules/widgets/navigator.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/navigator.js\ntype: application/javascript\nmodule-type: widget\n\nNavigator widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar IMPORT_TITLE = \"$:/Import\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar NavigatorWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-navigate\", handler: \"handleNavigateEvent\"},\n\t\t{type: \"tm-edit-tiddler\", handler: \"handleEditTiddlerEvent\"},\n\t\t{type: \"tm-delete-tiddler\", handler: \"handleDeleteTiddlerEvent\"},\n\t\t{type: \"tm-save-tiddler\", handler: \"handleSaveTiddlerEvent\"},\n\t\t{type: \"tm-cancel-tiddler\", handler: \"handleCancelTiddlerEvent\"},\n\t\t{type: \"tm-close-tiddler\", handler: \"handleCloseTiddlerEvent\"},\n\t\t{type: \"tm-close-all-tiddlers\", handler: \"handleCloseAllTiddlersEvent\"},\n\t\t{type: \"tm-close-other-tiddlers\", handler: \"handleCloseOtherTiddlersEvent\"},\n\t\t{type: \"tm-new-tiddler\", handler: \"handleNewTiddlerEvent\"},\n\t\t{type: \"tm-import-tiddlers\", handler: \"handleImportTiddlersEvent\"},\n\t\t{type: \"tm-perform-import\", handler: \"handlePerformImportEvent\"},\n\t\t{type: \"tm-fold-tiddler\", handler: \"handleFoldTiddlerEvent\"},\n\t\t{type: \"tm-fold-other-tiddlers\", handler: \"handleFoldOtherTiddlersEvent\"},\n\t\t{type: \"tm-fold-all-tiddlers\", handler: \"handleFoldAllTiddlersEvent\"},\n\t\t{type: \"tm-unfold-all-tiddlers\", handler: \"handleUnfoldAllTiddlersEvent\"},\n\t\t{type: \"tm-rename-tiddler\", handler: \"handleRenameTiddlerEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nNavigatorWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nNavigatorWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nNavigatorWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.storyTitle = this.getAttribute(\"story\");\n\tthis.historyTitle = this.getAttribute(\"history\");\n\tthis.setVariable(\"tv-story-list\",this.storyTitle);\n\tthis.setVariable(\"tv-history-list\",this.historyTitle);\n\tthis.story = new $tw.Story({\n\t\twiki: this.wiki,\n\t\tstoryTitle: this.storyTitle,\n\t\thistoryTitle: this.historyTitle\n\t});\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nNavigatorWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.story || changedAttributes.history) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nNavigatorWidget.prototype.getStoryList = function() {\n\treturn this.storyTitle ? this.wiki.getTiddlerList(this.storyTitle) : null;\n};\n\nNavigatorWidget.prototype.saveStoryList = function(storyList) {\n\tif(this.storyTitle) {\n\t\tvar storyTiddler = this.wiki.getTiddler(this.storyTitle);\n\t\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\t\t{title: this.storyTitle},\n\t\t\tstoryTiddler,\n\t\t\t{list: storyList}\n\t\t));\t\t\n\t}\n};\n\nNavigatorWidget.prototype.removeTitleFromStory = function(storyList,title) {\n\tif(storyList) {\n\t\tvar p = storyList.indexOf(title);\n\t\twhile(p !== -1) {\n\t\t\tstoryList.splice(p,1);\n\t\t\tp = storyList.indexOf(title);\n\t\t}\t\t\n\t}\n};\n\nNavigatorWidget.prototype.replaceFirstTitleInStory = function(storyList,oldTitle,newTitle) {\n\tif(storyList) {\n\t\tvar pos = storyList.indexOf(oldTitle);\n\t\tif(pos !== -1) {\n\t\t\tstoryList[pos] = newTitle;\n\t\t\tdo {\n\t\t\t\tpos = storyList.indexOf(oldTitle,pos + 1);\n\t\t\t\tif(pos !== -1) {\n\t\t\t\t\tstoryList.splice(pos,1);\n\t\t\t\t}\n\t\t\t} while(pos !== -1);\n\t\t} else {\n\t\t\tstoryList.splice(0,0,newTitle);\n\t\t}\t\t\n\t}\n};\n\nNavigatorWidget.prototype.addToStory = function(title,fromTitle) {\n\tif(this.storyTitle) {\n\t\tthis.story.addToStory(title,fromTitle,{\n\t\t\topenLinkFromInsideRiver: this.getAttribute(\"openLinkFromInsideRiver\",\"top\"),\n\t\t\topenLinkFromOutsideRiver: this.getAttribute(\"openLinkFromOutsideRiver\",\"top\")\n\t\t});\n\t}\n};\n\n/*\nAdd a new record to the top of the history stack\ntitle: a title string or an array of title strings\nfromPageRect: page coordinates of the origin of the navigation\n*/\nNavigatorWidget.prototype.addToHistory = function(title,fromPageRect) {\n\tthis.story.addToHistory(title,fromPageRect,this.historyTitle);\n};\n\n/*\nHandle a tm-navigate event\n*/\nNavigatorWidget.prototype.handleNavigateEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-navigating\",event);\n\tif(event.navigateTo) {\n\t\tthis.addToStory(event.navigateTo,event.navigateFromTitle);\n\t\tif(!event.navigateSuppressNavigation) {\n\t\t\tthis.addToHistory(event.navigateTo,event.navigateFromClientRect);\n\t\t}\n\t}\n\treturn false;\n};\n\n// Close a specified tiddler\nNavigatorWidget.prototype.handleCloseTiddlerEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle,\n\t\tstoryList = this.getStoryList();\n\t// Look for tiddlers with this title to close\n\tthis.removeTitleFromStory(storyList,title);\n\tthis.saveStoryList(storyList);\n\treturn false;\n};\n\n// Close all tiddlers\nNavigatorWidget.prototype.handleCloseAllTiddlersEvent = function(event) {\n\tthis.saveStoryList([]);\n\treturn false;\n};\n\n// Close other tiddlers\nNavigatorWidget.prototype.handleCloseOtherTiddlersEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle;\n\tthis.saveStoryList([title]);\n\treturn false;\n};\n\n// Place a tiddler in edit mode\nNavigatorWidget.prototype.handleEditTiddlerEvent = function(event) {\n\tvar editTiddler = $tw.hooks.invokeHook(\"th-editing-tiddler\",event);\n\tif(!editTiddler) {\n\t\treturn false;\n\t}\n\tvar self = this;\n\tfunction isUnmodifiedShadow(title) {\n\t\treturn self.wiki.isShadowTiddler(title) && !self.wiki.tiddlerExists(title);\n\t}\n\tfunction confirmEditShadow(title) {\n\t\treturn confirm($tw.language.getString(\n\t\t\t\"ConfirmEditShadowTiddler\",\n\t\t\t{variables:\n\t\t\t\t{title: title}\n\t\t\t}\n\t\t));\n\t}\n\tvar title = event.param || event.tiddlerTitle;\n\tif(isUnmodifiedShadow(title) && !confirmEditShadow(title)) {\n\t\treturn false;\n\t}\n\t// Replace the specified tiddler with a draft in edit mode\n\tvar draftTiddler = this.makeDraftTiddler(title);\n\t// Update the story and history if required\n\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\tvar draftTitle = draftTiddler.fields.title,\n\t\t\tstoryList = this.getStoryList();\n\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\tthis.replaceFirstTitleInStory(storyList,title,draftTitle);\n\t\tthis.addToHistory(draftTitle,event.navigateFromClientRect);\n\t\tthis.saveStoryList(storyList);\n\t\treturn false;\n\t}\n};\n\n// Delete a tiddler\nNavigatorWidget.prototype.handleDeleteTiddlerEvent = function(event) {\n\t// Get the tiddler we're deleting\n\tvar title = event.param || event.tiddlerTitle,\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tstoryList = this.getStoryList(),\n\t\toriginalTitle = tiddler ? tiddler.fields[\"draft.of\"] : \"\",\n\t\toriginalTiddler = originalTitle ? this.wiki.getTiddler(originalTitle) : undefined,\n\t\tconfirmationTitle;\n\tif(!tiddler) {\n\t\treturn false;\n\t}\n\t// Check if the tiddler we're deleting is in draft mode\n\tif(originalTitle) {\n\t\t// If so, we'll prompt for confirmation referencing the original tiddler\n\t\tconfirmationTitle = originalTitle;\n\t} else {\n\t\t// If not a draft, then prompt for confirmation referencing the specified tiddler\n\t\tconfirmationTitle = title;\n\t}\n\t// Seek confirmation\n\tif((this.wiki.getTiddler(originalTitle) || (tiddler.fields.text || \"\") !== \"\") && !confirm($tw.language.getString(\n\t\t\t\t\"ConfirmDeleteTiddler\",\n\t\t\t\t{variables:\n\t\t\t\t\t{title: confirmationTitle}\n\t\t\t\t}\n\t\t\t))) {\n\t\treturn false;\n\t}\n\t// Delete the original tiddler\n\tif(originalTitle) {\n\t\tif(originalTiddler) {\n\t\t\t$tw.hooks.invokeHook(\"th-deleting-tiddler\",originalTiddler);\n\t\t}\n\t\tthis.wiki.deleteTiddler(originalTitle);\n\t\tthis.removeTitleFromStory(storyList,originalTitle);\n\t}\n\t// Invoke the hook function and delete this tiddler\n\t$tw.hooks.invokeHook(\"th-deleting-tiddler\",tiddler);\n\tthis.wiki.deleteTiddler(title);\n\t// Remove the closed tiddler from the story\n\tthis.removeTitleFromStory(storyList,title);\n\tthis.saveStoryList(storyList);\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\treturn false;\n};\n\n/*\nCreate/reuse the draft tiddler for a given title\n*/\nNavigatorWidget.prototype.makeDraftTiddler = function(targetTitle) {\n\t// See if there is already a draft tiddler for this tiddler\n\tvar draftTitle = this.wiki.findDraft(targetTitle);\n\tif(draftTitle) {\n\t\treturn this.wiki.getTiddler(draftTitle);\n\t}\n\t// Get the current value of the tiddler we're editing\n\tvar tiddler = this.wiki.getTiddler(targetTitle);\n\t// Save the initial value of the draft tiddler\n\tdraftTitle = this.generateDraftTitle(targetTitle);\n\tvar draftTiddler = new $tw.Tiddler({\n\t\t\t\ttext: \"\",\n\t\t\t},\n\t\t\ttiddler,\n\t\t\t{\n\t\t\t\ttitle: draftTitle,\n\t\t\t\t\"draft.title\": targetTitle,\n\t\t\t\t\"draft.of\": targetTitle\n\t\t\t},\n\t\t\tthis.wiki.getModificationFields()\n\t\t);\n\tthis.wiki.addTiddler(draftTiddler);\n\treturn draftTiddler;\n};\n\n/*\nGenerate a title for the draft of a given tiddler\n*/\nNavigatorWidget.prototype.generateDraftTitle = function(title) {\n\treturn this.wiki.generateDraftTitle(title);\n};\n\n// Take a tiddler out of edit mode, saving the changes\nNavigatorWidget.prototype.handleSaveTiddlerEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle,\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tstoryList = this.getStoryList();\n\t// Replace the original tiddler with the draft\n\tif(tiddler) {\n\t\tvar draftTitle = (tiddler.fields[\"draft.title\"] || \"\").trim(),\n\t\t\tdraftOf = (tiddler.fields[\"draft.of\"] || \"\").trim();\n\t\tif(draftTitle) {\n\t\t\tvar isRename = draftOf !== draftTitle,\n\t\t\t\tisConfirmed = true;\n\t\t\tif(isRename && this.wiki.tiddlerExists(draftTitle)) {\n\t\t\t\tisConfirmed = confirm($tw.language.getString(\n\t\t\t\t\t\"ConfirmOverwriteTiddler\",\n\t\t\t\t\t{variables:\n\t\t\t\t\t\t{title: draftTitle}\n\t\t\t\t\t}\n\t\t\t\t));\n\t\t\t}\n\t\t\tif(isConfirmed) {\n\t\t\t\t// Create the new tiddler and pass it through the th-saving-tiddler hook\n\t\t\t\tvar newTiddler = new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,{\n\t\t\t\t\ttitle: draftTitle,\n\t\t\t\t\t\"draft.title\": undefined,\n\t\t\t\t\t\"draft.of\": undefined\n\t\t\t\t},this.wiki.getModificationFields());\n\t\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-saving-tiddler\",newTiddler,tiddler);\n\t\t\t\tthis.wiki.addTiddler(newTiddler);\n\t\t\t\t// If enabled, relink references to renamed tiddler\n\t\t\t\tvar shouldRelink = this.getAttribute(\"relinkOnRename\",\"no\").toLowerCase().trim() === \"yes\";\n\t\t\t\tif(isRename && shouldRelink && this.wiki.tiddlerExists(draftOf)) {\n\t\t\t\t\tthis.wiki.relinkTiddler(draftOf,draftTitle);\n\t\t\t\t}\n\t\t\t\t// Remove the draft tiddler\n\t\t\t\tthis.wiki.deleteTiddler(title);\n\t\t\t\t// Remove the original tiddler if we're renaming it\n\t\t\t\tif(isRename) {\n\t\t\t\t\tthis.wiki.deleteTiddler(draftOf);\n\t\t\t\t}\n\t\t\t\t// #2381 always remove new title & old\n\t\t\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\t\t\tthis.removeTitleFromStory(storyList,draftOf);\n\t\t\t\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\t\t\t\t// Replace the draft in the story with the original\n\t\t\t\t\tthis.replaceFirstTitleInStory(storyList,title,draftTitle);\n\t\t\t\t\tthis.addToHistory(draftTitle,event.navigateFromClientRect);\n\t\t\t\t\tif(draftTitle !== this.storyTitle) {\n\t\t\t\t\t\tthis.saveStoryList(storyList);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Trigger an autosave\n\t\t\t\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\n// Take a tiddler out of edit mode without saving the changes\nNavigatorWidget.prototype.handleCancelTiddlerEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-cancelling-tiddler\", event);\n\t// Flip the specified tiddler from draft back to the original\n\tvar draftTitle = event.param || event.tiddlerTitle,\n\t\tdraftTiddler = this.wiki.getTiddler(draftTitle),\n\t\toriginalTitle = draftTiddler && draftTiddler.fields[\"draft.of\"];\n\tif(draftTiddler && originalTitle) {\n\t\t// Ask for confirmation if the tiddler text has changed\n\t\tvar isConfirmed = true,\n\t\t\toriginalTiddler = this.wiki.getTiddler(originalTitle),\n\t\t\tstoryList = this.getStoryList();\n\t\tif(this.wiki.isDraftModified(draftTitle)) {\n\t\t\tisConfirmed = confirm($tw.language.getString(\n\t\t\t\t\"ConfirmCancelTiddler\",\n\t\t\t\t{variables:\n\t\t\t\t\t{title: draftTitle}\n\t\t\t\t}\n\t\t\t));\n\t\t}\n\t\t// Remove the draft tiddler\n\t\tif(isConfirmed) {\n\t\t\tthis.wiki.deleteTiddler(draftTitle);\n\t\t\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\t\t\tif(originalTiddler) {\n\t\t\t\t\tthis.replaceFirstTitleInStory(storyList,draftTitle,originalTitle);\n\t\t\t\t\tthis.addToHistory(originalTitle,event.navigateFromClientRect);\n\t\t\t\t} else {\n\t\t\t\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\t\t\t}\n\t\t\t\tthis.saveStoryList(storyList);\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\n// Create a new draft tiddler\n// event.param can either be the title of a template tiddler, or a hashmap of fields.\n//\n// The title of the newly created tiddler follows these rules:\n// * If a hashmap was used and a title field was specified, use that title\n// * If a hashmap was used without a title field, use a default title, if necessary making it unique with a numeric suffix\n// * If a template tiddler was used, use the title of the template, if necessary making it unique with a numeric suffix\n//\n// If a draft of the target tiddler already exists then it is reused\nNavigatorWidget.prototype.handleNewTiddlerEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-new-tiddler\", event);\n\t// Get the story details\n\tvar storyList = this.getStoryList(),\n\t\ttemplateTiddler, additionalFields, title, draftTitle, existingTiddler;\n\t// Get the template tiddler (if any)\n\tif(typeof event.param === \"string\") {\n\t\t// Get the template tiddler\n\t\ttemplateTiddler = this.wiki.getTiddler(event.param);\n\t\t// Generate a new title\n\t\ttitle = this.wiki.generateNewTitle(event.param || $tw.language.getString(\"DefaultNewTiddlerTitle\"));\n\t}\n\t// Get the specified additional fields\n\tif(typeof event.paramObject === \"object\") {\n\t\tadditionalFields = event.paramObject;\n\t}\n\tif(typeof event.param === \"object\") { // Backwards compatibility with 5.1.3\n\t\tadditionalFields = event.param;\n\t}\n\tif(additionalFields && additionalFields.title) {\n\t\ttitle = additionalFields.title;\n\t}\n\t// Make a copy of the additional fields excluding any blank ones\n\tvar filteredAdditionalFields = $tw.utils.extend({},additionalFields);\n\tObject.keys(filteredAdditionalFields).forEach(function(fieldName) {\n\t\tif(filteredAdditionalFields[fieldName] === \"\") {\n\t\t\tdelete filteredAdditionalFields[fieldName];\n\t\t}\n\t});\n\t// Generate a title if we don't have one\n\ttitle = title || this.wiki.generateNewTitle($tw.language.getString(\"DefaultNewTiddlerTitle\"));\n\t// Find any existing draft for this tiddler\n\tdraftTitle = this.wiki.findDraft(title);\n\t// Pull in any existing tiddler\n\tif(draftTitle) {\n\t\texistingTiddler = this.wiki.getTiddler(draftTitle);\n\t} else {\n\t\tdraftTitle = this.generateDraftTitle(title);\n\t\texistingTiddler = this.wiki.getTiddler(title);\n\t}\n\t// Merge the tags\n\tvar mergedTags = [];\n\tif(existingTiddler && existingTiddler.fields.tags) {\n\t\t$tw.utils.pushTop(mergedTags,existingTiddler.fields.tags);\n\t}\n\tif(additionalFields && additionalFields.tags) {\n\t\t// Merge tags\n\t\tmergedTags = $tw.utils.pushTop(mergedTags,$tw.utils.parseStringArray(additionalFields.tags));\n\t}\n\tif(templateTiddler && templateTiddler.fields.tags) {\n\t\t// Merge tags\n\t\tmergedTags = $tw.utils.pushTop(mergedTags,templateTiddler.fields.tags);\n\t}\n\t// Save the draft tiddler\n\tvar draftTiddler = new $tw.Tiddler({\n\t\t\ttext: \"\",\n\t\t\t\"draft.title\": title\n\t\t},\n\t\ttemplateTiddler,\n\t\tadditionalFields,\n\t\tthis.wiki.getCreationFields(),\n\t\texistingTiddler,\n\t\tfilteredAdditionalFields,\n\t\t{\n\t\t\ttitle: draftTitle,\n\t\t\t\"draft.of\": title,\n\t\t\ttags: mergedTags\n\t\t},this.wiki.getModificationFields());\n\tthis.wiki.addTiddler(draftTiddler);\n\t// Update the story to insert the new draft at the top and remove any existing tiddler\n\tif(storyList && storyList.indexOf(draftTitle) === -1) {\n\t\tvar slot = storyList.indexOf(event.navigateFromTitle);\n\t\tif(slot === -1) {\n\t\t\tslot = this.getAttribute(\"openLinkFromOutsideRiver\",\"top\") === \"bottom\" ? storyList.length - 1 : slot;\n\t\t}\n\t\tstoryList.splice(slot + 1,0,draftTitle);\n\t}\n\tif(storyList && storyList.indexOf(title) !== -1) {\n\t\tstoryList.splice(storyList.indexOf(title),1);\n\t}\n\tthis.saveStoryList(storyList);\n\t// Add a new record to the top of the history stack\n\tthis.addToHistory(draftTitle);\n\treturn false;\n};\n\n// Import JSON tiddlers into a pending import tiddler\nNavigatorWidget.prototype.handleImportTiddlersEvent = function(event) {\n\t// Get the tiddlers\n\tvar tiddlers = [];\n\ttry {\n\t\ttiddlers = JSON.parse(event.param);\n\t} catch(e) {\n\t}\n\t// Get the current $:/Import tiddler\n\tvar importTitle = event.importTitle ? event.importTitle : IMPORT_TITLE,\n\t\timportTiddler = this.wiki.getTiddler(importTitle),\n\t\timportData = this.wiki.getTiddlerData(importTitle,{}),\n\t\tnewFields = new Object({\n\t\t\ttitle: importTitle,\n\t\t\ttype: \"application/json\",\n\t\t\t\"plugin-type\": \"import\",\n\t\t\t\"status\": \"pending\"\n\t\t}),\n\t\tincomingTiddlers = [];\n\t// Process each tiddler\n\timportData.tiddlers = importData.tiddlers || {};\n\t$tw.utils.each(tiddlers,function(tiddlerFields) {\n\t\ttiddlerFields.title = $tw.utils.trim(tiddlerFields.title);\n\t\tvar title = tiddlerFields.title;\n\t\tif(title) {\n\t\t\tincomingTiddlers.push(title);\n\t\t\timportData.tiddlers[title] = tiddlerFields;\n\t\t}\n\t});\n\t// Give the active upgrader modules a chance to process the incoming tiddlers\n\tvar messages = this.wiki.invokeUpgraders(incomingTiddlers,importData.tiddlers);\n\t$tw.utils.each(messages,function(message,title) {\n\t\tnewFields[\"message-\" + title] = message;\n\t});\n\t// Deselect any suppressed tiddlers\n\t$tw.utils.each(importData.tiddlers,function(tiddler,title) {\n\t\tif($tw.utils.count(tiddler) === 0) {\n\t\t\tnewFields[\"selection-\" + title] = \"unchecked\";\n\t\t\tnewFields[\"suppressed-\" + title] = \"yes\";\n\t\t}\n\t});\n\t// Save the $:/Import tiddler\n\tnewFields.text = JSON.stringify(importData,null,$tw.config.preferences.jsonSpaces);\n\tthis.wiki.addTiddler(new $tw.Tiddler(importTiddler,newFields));\n\t// Update the story and history details\n\tvar autoOpenOnImport = event.autoOpenOnImport ? event.autoOpenOnImport : this.getVariable(\"tv-auto-open-on-import\");  \n\tif(autoOpenOnImport !== \"no\") {\n\t\tvar storyList = this.getStoryList(),\n\t\t\thistory = [];\n\t\t// Add it to the story\n\t\tif(storyList && storyList.indexOf(importTitle) === -1) {\n\t\t\tstoryList.unshift(importTitle);\n\t\t}\n\t\t// And to history\n\t\thistory.push(importTitle);\n\t\t// Save the updated story and history\n\t\tthis.saveStoryList(storyList);\n\t\tthis.addToHistory(history);\n\t}\n\treturn false;\n};\n\n//\nNavigatorWidget.prototype.handlePerformImportEvent = function(event) {\n\tvar self = this,\n\t\timportTiddler = this.wiki.getTiddler(event.param),\n\t\timportData = this.wiki.getTiddlerDataCached(event.param,{tiddlers: {}}),\n\t\timportReport = [];\n\t// Add the tiddlers to the store\n\timportReport.push($tw.language.getString(\"Import/Imported/Hint\") + \"\\n\");\n\t$tw.utils.each(importData.tiddlers,function(tiddlerFields) {\n\t\tvar title = tiddlerFields.title;\n\t\tif(title && importTiddler && importTiddler.fields[\"selection-\" + title] !== \"unchecked\") {\n\t\t\tif($tw.utils.hop(importTiddler.fields,[\"rename-\" + title])) {\n\t\t\t\tvar tiddler = new $tw.Tiddler(tiddlerFields,{title : importTiddler.fields[\"rename-\" + title]});\n\t\t\t} else {\n\t\t\t\tvar tiddler = new $tw.Tiddler(tiddlerFields);\n\t\t\t}\n\t\t\ttiddler = $tw.hooks.invokeHook(\"th-importing-tiddler\",tiddler);\n\t\t\tself.wiki.addTiddler(tiddler);\n\t\t\timportReport.push(\"# [[\" + tiddler.fields.title + \"]]\");\n\t\t}\n\t});\n\t// Replace the $:/Import tiddler with an import report\n\tthis.wiki.addTiddler(new $tw.Tiddler({\n\t\ttitle: event.param,\n\t\ttext: importReport.join(\"\\n\"),\n\t\t\"status\": \"complete\"\n\t}));\n\t// Navigate to the $:/Import tiddler\n\tthis.addToHistory([event.param]);\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n};\n\nNavigatorWidget.prototype.handleFoldTiddlerEvent = function(event) {\n\tvar paramObject = event.paramObject || {};\n\tif(paramObject.foldedState) {\n\t\tvar foldedState = this.wiki.getTiddlerText(paramObject.foldedState,\"show\") === \"show\" ? \"hide\" : \"show\";\n\t\tthis.wiki.setText(paramObject.foldedState,\"text\",null,foldedState);\n\t}\n};\n\nNavigatorWidget.prototype.handleFoldOtherTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix;\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,event.param === title ? \"show\" : \"hide\");\n\t});\n};\n\nNavigatorWidget.prototype.handleFoldAllTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix || \"$:/state/folded/\";\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,\"hide\");\n\t});\n};\n\nNavigatorWidget.prototype.handleUnfoldAllTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix;\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,\"show\");\n\t});\n};\n\nNavigatorWidget.prototype.handleRenameTiddlerEvent = function(event) {\n\tvar options = {},\n\t\tparamObject = event.paramObject || {},\n\t\tfrom = paramObject.from || event.tiddlerTitle,\n\t\tto = paramObject.to;\n\toptions.dontRenameInTags = (paramObject.renameInTags === \"false\" || paramObject.renameInTags === \"no\") ? true : false;\n\toptions.dontRenameInLists = (paramObject.renameInLists === \"false\" || paramObject.renameInLists === \"no\") ? true : false;\n\tthis.wiki.renameTiddler(from,to,options);\n};\n\nexports.navigator = NavigatorWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/password.js": {
            "title": "$:/core/modules/widgets/password.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/password.js\ntype: application/javascript\nmodule-type: widget\n\nPassword widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar PasswordWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nPasswordWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nPasswordWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Get the current password\n\tvar password = $tw.browser ? $tw.utils.getPassword(this.passwordName) || \"\" : \"\";\n\t// Create our element\n\tvar domNode = this.document.createElement(\"input\");\n\tdomNode.setAttribute(\"type\",\"password\");\n\tdomNode.setAttribute(\"value\",password);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nPasswordWidget.prototype.handleChangeEvent = function(event) {\n\tvar password = this.domNodes[0].value;\n\treturn $tw.utils.savePassword(this.passwordName,password);\n};\n\n/*\nCompute the internal state of the widget\n*/\nPasswordWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.passwordName = this.getAttribute(\"name\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nPasswordWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.password = PasswordWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/qualify.js": {
            "title": "$:/core/modules/widgets/qualify.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/qualify.js\ntype: application/javascript\nmodule-type: widget\n\nQualify text to a variable \n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar QualifyWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nQualifyWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nQualifyWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nQualifyWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.qualifyName = this.getAttribute(\"name\");\n\tthis.qualifyTitle = this.getAttribute(\"title\");\n\t// Set context variable\n\tif(this.qualifyName) {\n\t\tthis.setVariable(this.qualifyName,this.qualifyTitle + \"-\" + this.getStateQualifier());\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nQualifyWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name || changedAttributes.title) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.qualify = QualifyWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/radio.js": {
            "title": "$:/core/modules/widgets/radio.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/radio.js\ntype: application/javascript\nmodule-type: widget\n\nSet a field or index at a given tiddler via radio buttons\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar RadioWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRadioWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRadioWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\tvar isChecked = this.getValue() === this.radioValue;\n\t// Create our elements\n\tthis.labelDomNode = this.document.createElement(\"label\");\n\tthis.labelDomNode.setAttribute(\"class\",\n\t\t\"tc-radio \" + this.radioClass + (isChecked ? \" tc-radio-selected\" : \"\")\n\t);\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"radio\");\n\tif(isChecked) {\n\t\tthis.inputDomNode.setAttribute(\"checked\",\"true\");\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tthis.inputDomNode.setAttribute(\"disabled\",true);\n\t}\n\tthis.labelDomNode.appendChild(this.inputDomNode);\n\tthis.spanDomNode = this.document.createElement(\"span\");\n\tthis.labelDomNode.appendChild(this.spanDomNode);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.labelDomNode,nextSibling);\n\tthis.renderChildren(this.spanDomNode,null);\n\tthis.domNodes.push(this.labelDomNode);\n};\n\nRadioWidget.prototype.getValue = function() {\n\tvar value,\n\t\ttiddler = this.wiki.getTiddler(this.radioTitle);\n\tif (this.radioIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.radioTitle,this.radioIndex);\n\t} else {\n\t\tvalue = tiddler && tiddler.getFieldString(this.radioField);\n\t}\n\treturn value;\n};\n\nRadioWidget.prototype.setValue = function() {\n\tif(this.radioIndex) {\n\t\tthis.wiki.setText(this.radioTitle,\"\",this.radioIndex,this.radioValue);\n\t} else {\n\t\tvar tiddler = this.wiki.getTiddler(this.radioTitle),\n\t\t\taddition = {};\n\t\taddition[this.radioField] = this.radioValue;\n\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),{title: this.radioTitle},tiddler,addition,this.wiki.getModificationFields()));\n\t}\n};\n\nRadioWidget.prototype.handleChangeEvent = function(event) {\n\tif(this.inputDomNode.checked) {\n\t\tthis.setValue();\n\t}\n\t// Trigger actions\n\tif(this.radioActions) {\n\t\tthis.invokeActionString(this.radioActions,this,event,{\"actionValue\": this.radioValue});\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nRadioWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.radioTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.radioField = this.getAttribute(\"field\",\"text\");\n\tthis.radioIndex = this.getAttribute(\"index\");\n\tthis.radioValue = this.getAttribute(\"value\");\n\tthis.radioClass = this.getAttribute(\"class\",\"\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\tthis.radioActions = this.getAttribute(\"actions\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRadioWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(($tw.utils.count(changedAttributes) > 0) || changedTiddlers[this.radioTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.radio = RadioWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/range.js": {
            "title": "$:/core/modules/widgets/range.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/range.js\ntype: application/javascript\nmodule-type: widget\n\nRange widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RangeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRangeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRangeWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create our elements\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"range\");\n\tthis.inputDomNode.setAttribute(\"class\",this.elementClass);\n\tif(this.minValue){\n\t\tthis.inputDomNode.setAttribute(\"min\", this.minValue);\n\t}\n\tif(this.maxValue){\n\t\tthis.inputDomNode.setAttribute(\"max\", this.maxValue);\n\t}\n\tif(this.increment){\n\t\tthis.inputDomNode.setAttribute(\"step\", this.increment);\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tthis.inputDomNode.setAttribute(\"disabled\",true);\n\t}\n\tthis.inputDomNode.value = this.getValue();\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name:\"mousedown\", handlerObject:this, handlerMethod:\"handleMouseDownEvent\"},\n\t\t{name:\"mouseup\",   handlerObject:this, handlerMethod:\"handleMouseUpEvent\"},\n\t\t{name:\"change\",    handlerObject:this, handlerMethod:\"handleChangeEvent\"},\n\t\t{name:\"input\",     handlerObject:this, handlerMethod:\"handleInputEvent\"},\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.inputDomNode,nextSibling);\n\tthis.domNodes.push(this.inputDomNode);\n};\n\nRangeWidget.prototype.getValue = function() {\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle),\n\t\tfieldName = this.tiddlerField,\n\t\tvalue = this.defaultValue;\n\tif(tiddler) {\n\t\tif(this.tiddlerIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(tiddler,this.tiddlerIndex,this.defaultValue);\n\t\t} else {\n\t\t\tif($tw.utils.hop(tiddler.fields,fieldName)) {\n\t\t\t\tvalue = tiddler.fields[fieldName] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = this.defaultValue;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nRangeWidget.prototype.getActionVariables = function(options) {\n\toptions = options || {};\n\tvar hasChanged = (this.startValue !== this.inputDomNode.value) ? \"yes\" : \"no\";\n\t// Trigger actions. Use variables = {key:value, key:value ...}\n\t// the \"value\" is needed.\n\treturn $tw.utils.extend({\"actionValue\": this.inputDomNode.value, \"actionValueHasChanged\": hasChanged}, options);\n}\n\n// actionsStart\nRangeWidget.prototype.handleMouseDownEvent = function(event) {\n\tthis.mouseDown = true; // TODO remove once IE is gone.\n\tthis.startValue = this.inputDomNode.value; // TODO remove this line once IE is gone!\n\tthis.handleEvent(event);\n\t// Trigger actions\n\tif(this.actionsMouseDown) {\n\t\tvar variables = this.getActionVariables() // TODO this line will go into the function call below.\n\t\tthis.invokeActionString(this.actionsMouseDown,this,event,variables);\n\t}\n}\n\n// actionsStop\nRangeWidget.prototype.handleMouseUpEvent = function(event) {\n\tthis.mouseDown = false; // TODO remove once IE is gone.\n\tthis.handleEvent(event);\n\t// Trigger actions\n\tif(this.actionsMouseUp) {\n\t\tvar variables = this.getActionVariables()\n\t\tthis.invokeActionString(this.actionsMouseUp,this,event,variables);\n\t}\n\t// TODO remove the following if() once IE is gone!\n\tif ($tw.browser.isIE) {\n\t\tif (this.startValue !== this.inputDomNode.value) {\n\t\t\tthis.handleChangeEvent(event);\n\t\t\tthis.startValue = this.inputDomNode.value;\n\t\t}\n\t}\n}\n\nRangeWidget.prototype.handleChangeEvent = function(event) {\n\tif (this.mouseDown) {  // TODO refactor this function once IE is gone.\n\t\tthis.handleInputEvent(event);\n\t}\n};\n\nRangeWidget.prototype.handleInputEvent = function(event) {\n\tthis.handleEvent(event);\n\t// Trigger actions\n\tif(this.actionsInput) {\n\t\t// \"tiddler\" parameter may be missing. See .execute() below\n\t\tvar variables = this.getActionVariables({\"actionValueHasChanged\": \"yes\"}) // TODO this line will go into the function call below.\n\t\tthis.invokeActionString(this.actionsInput,this,event,variables);\n\t}\n};\n\nRangeWidget.prototype.handleEvent = function(event) {\n\tif(this.getValue() !== this.inputDomNode.value) {\n\t\tif(this.tiddlerIndex) {\n\t\t\tthis.wiki.setText(this.tiddlerTitle,\"\",this.tiddlerIndex,this.inputDomNode.value);\n\t\t} else {\n\t\t\tthis.wiki.setText(this.tiddlerTitle,this.tiddlerField,null,this.inputDomNode.value);\n\t\t}\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nRangeWidget.prototype.execute = function() {\n\t// TODO remove the next 1 lines once IE is gone!\n\tthis.mouseUp = true; // Needed for IE10\n\t// Get the parameters from the attributes\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.tiddlerField = this.getAttribute(\"field\",\"text\");\n\tthis.tiddlerIndex = this.getAttribute(\"index\");\n\tthis.minValue = this.getAttribute(\"min\");\n\tthis.maxValue = this.getAttribute(\"max\");\n\tthis.increment = this.getAttribute(\"increment\");\n\tthis.defaultValue = this.getAttribute(\"default\",\"\");\n\tthis.elementClass = this.getAttribute(\"class\",\"\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t// Actions since 5.1.23\n\t// Next 2 only fire once!\n\tthis.actionsMouseDown = this.getAttribute(\"actionsStart\",\"\");\n\tthis.actionsMouseUp = this.getAttribute(\"actionsStop\",\"\");\n\t// Input fires very often!\n\tthis.actionsInput = this.getAttribute(\"actions\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRangeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.tiddlerTitle]) {\n\t\t\tvar value = this.getValue();\n\t\t\tif(this.inputDomNode.value !== value) {\n\t\t\t\tthis.inputDomNode.value = value;\n\t\t\t}\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.range = RangeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/raw.js": {
            "title": "$:/core/modules/widgets/raw.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/raw.js\ntype: application/javascript\nmodule-type: widget\n\nRaw widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RawWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRawWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRawWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tvar div = this.document.createElement(\"div\");\n\tdiv.innerHTML=this.parseTreeNode.html;\n\tparent.insertBefore(div,nextSibling);\n\tthis.domNodes.push(div);\t\n};\n\n/*\nCompute the internal state of the widget\n*/\nRawWidget.prototype.execute = function() {\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRawWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.raw = RawWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/reveal.js": {
            "title": "$:/core/modules/widgets/reveal.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/reveal.js\ntype: application/javascript\nmodule-type: widget\n\nReveal widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RevealWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRevealWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRevealWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.revealTag && $tw.config.htmlUnsafeElements.indexOf(this.revealTag) === -1) {\n\t\ttag = this.revealTag;\n\t}\n\tvar domNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\tthis.assignDomNodeClasses();\n\tif(this.style) {\n\t\tdomNode.setAttribute(\"style\",this.style);\n\t}\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tif(!domNode.isTiddlyWikiFakeDom && this.type === \"popup\" && this.isOpen) {\n\t\tthis.positionPopup(domNode);\n\t\t$tw.utils.addClass(domNode,\"tc-popup\"); // Make sure that clicks don't dismiss popups within the revealed content\n\t}\n\tif(!this.isOpen) {\n\t\tdomNode.setAttribute(\"hidden\",\"true\");\n\t}\n\tthis.domNodes.push(domNode);\n};\n\nRevealWidget.prototype.positionPopup = function(domNode) {\n\tdomNode.style.position = \"absolute\";\n\tdomNode.style.zIndex = \"1000\";\n\tvar left,top;\n\tswitch(this.position) {\n\t\tcase \"left\":\n\t\t\tleft = this.popup.left - domNode.offsetWidth;\n\t\t\ttop = this.popup.top;\n\t\t\tbreak;\n\t\tcase \"above\":\n\t\t\tleft = this.popup.left;\n\t\t\ttop = this.popup.top - domNode.offsetHeight;\n\t\t\tbreak;\n\t\tcase \"aboveright\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top + this.popup.height - domNode.offsetHeight;\n\t\t\tbreak;\n\t\tcase \"belowright\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\t\t\t\n\t\tcase \"right\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top;\n\t\t\tbreak;\n\t\tcase \"belowleft\":\n\t\t\tleft = this.popup.left + this.popup.width - domNode.offsetWidth;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\n\t\tcase \"aboveleft\":\n\t\t\tleft = this.popup.left - domNode.offsetWidth;\n\t\t\ttop = this.popup.top - domNode.offsetHeight;\n\t\t\tbreak;\t\t\t\n\t\tdefault: // Below\n\t\t\tleft = this.popup.left;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\n\t}\n\tif(!this.positionAllowNegative) {\n\t\tleft = Math.max(0,left);\n\t\ttop = Math.max(0,top);\n\t}\n\tdomNode.style.left = left + \"px\";\n\tdomNode.style.top = top + \"px\";\n};\n\n/*\nCompute the internal state of the widget\n*/\nRevealWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.state = this.getAttribute(\"state\");\n\tthis.revealTag = this.getAttribute(\"tag\");\n\tthis.type = this.getAttribute(\"type\");\n\tthis.text = this.getAttribute(\"text\");\n\tthis.position = this.getAttribute(\"position\");\n\tthis.positionAllowNegative = this.getAttribute(\"positionAllowNegative\") === \"yes\";\n\t// class attribute handled in assignDomNodeClasses()\n\tthis.style = this.getAttribute(\"style\",\"\");\n\tthis[\"default\"] = this.getAttribute(\"default\",\"\");\n\tthis.animate = this.getAttribute(\"animate\",\"no\");\n\tthis.retain = this.getAttribute(\"retain\",\"no\");\n\tthis.openAnimation = this.animate === \"no\" ? undefined : \"open\";\n\tthis.closeAnimation = this.animate === \"no\" ? undefined : \"close\";\n\tthis.updatePopupPosition = this.getAttribute(\"updatePopupPosition\",\"no\") === \"yes\";\n\t// Compute the title of the state tiddler and read it\n\tthis.stateTiddlerTitle = this.state;\n\tthis.stateTitle = this.getAttribute(\"stateTitle\");\n\tthis.stateField = this.getAttribute(\"stateField\");\n\tthis.stateIndex = this.getAttribute(\"stateIndex\");\n\tthis.readState();\n\t// Construct the child widgets\n\tvar childNodes = this.isOpen ? this.parseTreeNode.children : [];\n\tthis.hasChildNodes = this.isOpen;\n\tthis.makeChildWidgets(childNodes);\n};\n\n/*\nRead the state tiddler\n*/\nRevealWidget.prototype.readState = function() {\n\t// Read the information from the state tiddler\n\tvar state,\n\t    defaultState = this[\"default\"];\n\tif(this.stateTitle) {\n\t\tvar stateTitleTiddler = this.wiki.getTiddler(this.stateTitle);\n\t\tif(this.stateField) {\n\t\t\tstate = stateTitleTiddler ? stateTitleTiddler.getFieldString(this.stateField) || defaultState : defaultState;\n\t\t} else if(this.stateIndex) {\n\t\t\tstate = stateTitleTiddler ? this.wiki.extractTiddlerDataItem(this.stateTitle,this.stateIndex) || defaultState : defaultState;\n\t\t} else if(stateTitleTiddler) {\n\t\t\tstate = this.wiki.getTiddlerText(this.stateTitle) || defaultState;\n\t\t} else {\n\t\t\tstate = defaultState;\n\t\t}\n\t} else {\n\t\tstate = this.stateTiddlerTitle ? this.wiki.getTextReference(this.state,this[\"default\"],this.getVariable(\"currentTiddler\")) : this[\"default\"];\n\t}\n\tif(state === null) {\n\t\tstate = this[\"default\"];\n\t}\n\tswitch(this.type) {\n\t\tcase \"popup\":\n\t\t\tthis.readPopupState(state);\n\t\t\tbreak;\n\t\tcase \"match\":\n\t\t\tthis.isOpen = this.text === state;\n\t\t\tbreak;\n\t\tcase \"nomatch\":\n\t\t\tthis.isOpen = this.text !== state;\n\t\t\tbreak;\n\t\tcase \"lt\":\n\t\t\tthis.isOpen = !!(this.compareStateText(state) < 0);\n\t\t\tbreak;\n\t\tcase \"gt\":\n\t\t\tthis.isOpen = !!(this.compareStateText(state) > 0);\n\t\t\tbreak;\n\t\tcase \"lteq\":\n\t\t\tthis.isOpen = !(this.compareStateText(state) > 0);\n\t\t\tbreak;\n\t\tcase \"gteq\":\n\t\t\tthis.isOpen = !(this.compareStateText(state) < 0);\n\t\t\tbreak;\n\t}\n};\n\nRevealWidget.prototype.compareStateText = function(state) {\n\treturn state.localeCompare(this.text,undefined,{numeric: true,sensitivity: \"case\"});\n};\n\nRevealWidget.prototype.readPopupState = function(state) {\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/,\n\t\tmatch = popupLocationRegExp.exec(state);\n\t// Check if the state matches the location regexp\n\tif(match) {\n\t\t// If so, we're open\n\t\tthis.isOpen = true;\n\t\t// Get the location\n\t\tthis.popup = {\n\t\t\tleft: parseFloat(match[1]),\n\t\t\ttop: parseFloat(match[2]),\n\t\t\twidth: parseFloat(match[3]),\n\t\t\theight: parseFloat(match[4])\n\t\t};\n\t} else {\n\t\t// If not, we're closed\n\t\tthis.isOpen = false;\n\t}\n};\n\nRevealWidget.prototype.assignDomNodeClasses = function() {\n\tvar classes = this.getAttribute(\"class\",\"\").split(\" \");\n\tclasses.push(\"tc-reveal\");\n\tthis.domNode.className = classes.join(\" \");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRevealWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.state || changedAttributes.type || changedAttributes.text || changedAttributes.position || changedAttributes.positionAllowNegative || changedAttributes[\"default\"] || changedAttributes.animate || changedAttributes.stateTitle || changedAttributes.stateField || changedAttributes.stateIndex) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar currentlyOpen = this.isOpen;\n\t\tthis.readState();\n\t\tif(this.isOpen !== currentlyOpen) {\n\t\t\tif(this.retain === \"yes\") {\n\t\t\t\tthis.updateState();\n\t\t\t} else {\n\t\t\t\tthis.refreshSelf();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t} else if(this.type === \"popup\" && this.updatePopupPosition && (changedTiddlers[this.state] || changedTiddlers[this.stateTitle])) {\n\t\t\tthis.positionPopup(this.domNode);\n\t\t}\n\t\tif(changedAttributes.style) {\n\t\t\tthis.domNode.style = this.getAttribute(\"style\",\"\");\n\t\t}\n\t\tif(changedAttributes[\"class\"]) {\n\t\t\tthis.assignDomNodeClasses();\n\t\t}\t\t\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\n/*\nCalled by refresh() to dynamically show or hide the content\n*/\nRevealWidget.prototype.updateState = function() {\n\tvar self = this;\n\t// Read the current state\n\tthis.readState();\n\t// Construct the child nodes if needed\n\tvar domNode = this.domNodes[0];\n\tif(this.isOpen && !this.hasChildNodes) {\n\t\tthis.hasChildNodes = true;\n\t\tthis.makeChildWidgets(this.parseTreeNode.children);\n\t\tthis.renderChildren(domNode,null);\n\t}\n\t// Animate our DOM node\n\tif(!domNode.isTiddlyWikiFakeDom && this.type === \"popup\" && this.isOpen) {\n\t\tthis.positionPopup(domNode);\n\t\t$tw.utils.addClass(domNode,\"tc-popup\"); // Make sure that clicks don't dismiss popups within the revealed content\n\n\t}\n\tif(this.isOpen) {\n\t\tdomNode.removeAttribute(\"hidden\");\n        $tw.anim.perform(this.openAnimation,domNode);\n\t} else {\n\t\t$tw.anim.perform(this.closeAnimation,domNode,{callback: function() {\n\t\t\t//make sure that the state hasn't changed during the close animation\n\t\t\tself.readState()\n\t\t\tif(!self.isOpen) {\n\t\t\t\tdomNode.setAttribute(\"hidden\",\"true\");\n\t\t\t}\n\t\t}});\n\t}\n};\n\nexports.reveal = RevealWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/scrollable.js": {
            "title": "$:/core/modules/widgets/scrollable.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/scrollable.js\ntype: application/javascript\nmodule-type: widget\n\nScrollable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ScrollableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.scaleFactor = 1;\n\tthis.addEventListeners([\n\t\t{type: \"tm-scroll\", handler: \"handleScrollEvent\"}\n\t]);\n\tif($tw.browser) {\n\t\tthis.requestAnimationFrame = window.requestAnimationFrame ||\n\t\t\twindow.webkitRequestAnimationFrame ||\n\t\t\twindow.mozRequestAnimationFrame ||\n\t\t\tfunction(callback) {\n\t\t\t\treturn window.setTimeout(callback, 1000/60);\n\t\t\t};\n\t\tthis.cancelAnimationFrame = window.cancelAnimationFrame ||\n\t\t\twindow.webkitCancelAnimationFrame ||\n\t\t\twindow.webkitCancelRequestAnimationFrame ||\n\t\t\twindow.mozCancelAnimationFrame ||\n\t\t\twindow.mozCancelRequestAnimationFrame ||\n\t\t\tfunction(id) {\n\t\t\t\twindow.clearTimeout(id);\n\t\t\t};\n\t}\n};\n\n/*\nInherit from the base widget class\n*/\nScrollableWidget.prototype = new Widget();\n\nScrollableWidget.prototype.cancelScroll = function() {\n\tif(this.idRequestFrame) {\n\t\tthis.cancelAnimationFrame.call(window,this.idRequestFrame);\n\t\tthis.idRequestFrame = null;\n\t}\n};\n\n/*\nHandle a scroll event\n*/\nScrollableWidget.prototype.handleScrollEvent = function(event) {\n\t// Pass the scroll event through if our offsetsize is larger than our scrollsize\n\tif(this.outerDomNode.scrollWidth <= this.outerDomNode.offsetWidth && this.outerDomNode.scrollHeight <= this.outerDomNode.offsetHeight && this.fallthrough === \"yes\") {\n\t\treturn true;\n\t}\n\tif(event.paramObject && event.paramObject.selector) {\n\t\tthis.scrollSelectorIntoView(null,event.paramObject.selector);\n\t} else {\n\t\tthis.scrollIntoView(event.target);\t\t\t\n\t}\n\treturn false; // Handled event\n};\n\n/*\nScroll an element into view\n*/\nScrollableWidget.prototype.scrollIntoView = function(element) {\n\tvar duration = $tw.utils.getAnimationDuration(),\n\tsrcWindow = element ? element.ownerDocument.defaultView : window;\n\tthis.cancelScroll();\n\tthis.startTime = Date.now();\n\tvar scrollPosition = {\n\t\tx: this.outerDomNode.scrollLeft,\n\t\ty: this.outerDomNode.scrollTop\n\t};\n\t// Get the client bounds of the element and adjust by the scroll position\n\tvar scrollableBounds = this.outerDomNode.getBoundingClientRect(),\n\t\tclientTargetBounds = element.getBoundingClientRect(),\n\t\tbounds = {\n\t\t\tleft: clientTargetBounds.left + scrollPosition.x - scrollableBounds.left,\n\t\t\ttop: clientTargetBounds.top + scrollPosition.y - scrollableBounds.top,\n\t\t\twidth: clientTargetBounds.width,\n\t\t\theight: clientTargetBounds.height\n\t\t};\n\t// We'll consider the horizontal and vertical scroll directions separately via this function\n\tvar getEndPos = function(targetPos,targetSize,currentPos,currentSize) {\n\t\t\t// If the target is already visible then stay where we are\n\t\t\tif(targetPos >= currentPos && (targetPos + targetSize) <= (currentPos + currentSize)) {\n\t\t\t\treturn currentPos;\n\t\t\t// If the target is above/left of the current view, then scroll to its top/left\n\t\t\t} else if(targetPos <= currentPos) {\n\t\t\t\treturn targetPos;\n\t\t\t// If the target is smaller than the window and the scroll position is too far up, then scroll till the target is at the bottom of the window\n\t\t\t} else if(targetSize < currentSize && currentPos < (targetPos + targetSize - currentSize)) {\n\t\t\t\treturn targetPos + targetSize - currentSize;\n\t\t\t// If the target is big, then just scroll to the top\n\t\t\t} else if(currentPos < targetPos) {\n\t\t\t\treturn targetPos;\n\t\t\t// Otherwise, stay where we are\n\t\t\t} else {\n\t\t\t\treturn currentPos;\n\t\t\t}\n\t\t},\n\t\tendX = getEndPos(bounds.left,bounds.width,scrollPosition.x,this.outerDomNode.offsetWidth),\n\t\tendY = getEndPos(bounds.top,bounds.height,scrollPosition.y,this.outerDomNode.offsetHeight);\n\t// Only scroll if necessary\n\tif(endX !== scrollPosition.x || endY !== scrollPosition.y) {\n\t\tvar self = this,\n\t\t\tdrawFrame;\n\t\tdrawFrame = function () {\n\t\t\tvar t;\n\t\t\tif(duration <= 0) {\n\t\t\t\tt = 1;\n\t\t\t} else {\n\t\t\t\tt = ((Date.now()) - self.startTime) / duration;\t\n\t\t\t}\n\t\t\tif(t >= 1) {\n\t\t\t\tself.cancelScroll();\n\t\t\t\tt = 1;\n\t\t\t}\n\t\t\tt = $tw.utils.slowInSlowOut(t);\n\t\t\tself.outerDomNode.scrollLeft = scrollPosition.x + (endX - scrollPosition.x) * t;\n\t\t\tself.outerDomNode.scrollTop = scrollPosition.y + (endY - scrollPosition.y) * t;\n\t\t\tif(t < 1) {\n\t\t\t\tself.idRequestFrame = self.requestAnimationFrame.call(srcWindow,drawFrame);\n\t\t\t}\n\t\t};\n\t\tdrawFrame();\n\t}\n};\n\nScrollableWidget.prototype.scrollSelectorIntoView = function(baseElement,selector,callback) {\n\tbaseElement = baseElement || document.body;\n\tvar element = baseElement.querySelector(selector);\n\tif(element) {\n\t\tthis.scrollIntoView(element,callback);\t\t\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nScrollableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create elements\n\tthis.outerDomNode = this.document.createElement(\"div\");\n\t$tw.utils.setStyle(this.outerDomNode,[\n\t\t{overflowY: \"auto\"},\n\t\t{overflowX: \"auto\"},\n\t\t{webkitOverflowScrolling: \"touch\"}\n\t]);\n\tthis.innerDomNode = this.document.createElement(\"div\");\n\tthis.outerDomNode.appendChild(this.innerDomNode);\n\t// Assign classes\n\tthis.outerDomNode.className = this[\"class\"] || \"\";\n\t// Insert element\n\tparent.insertBefore(this.outerDomNode,nextSibling);\n\tthis.renderChildren(this.innerDomNode,null);\n\tthis.domNodes.push(this.outerDomNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nScrollableWidget.prototype.execute = function() {\n\t// Get attributes\n\tthis.fallthrough = this.getAttribute(\"fallthrough\",\"yes\");\n\tthis[\"class\"] = this.getAttribute(\"class\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nScrollableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.scrollable = ScrollableWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/select.js": {
            "title": "$:/core/modules/widgets/select.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/select.js\ntype: application/javascript\nmodule-type: widget\n\nSelect widget:\n\n```\n<$select tiddler=\"MyTiddler\" field=\"text\">\n<$list filter=\"[tag[chapter]]\">\n<option value=<<currentTiddler>>>\n<$view field=\"description\"/>\n</option>\n</$list>\n</$select>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SelectWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSelectWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSelectWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n\tthis.setSelectValue();\n\t$tw.utils.addEventListeners(this.getSelectDomNode(),[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n};\n\n/*\nHandle a change event\n*/\nSelectWidget.prototype.handleChangeEvent = function(event) {\n\t// Get the new value and assign it to the tiddler\n\tif(this.selectMultiple == false) {\n\t\tvar value = this.getSelectDomNode().value;\n\t} else {\n\t\tvar value = this.getSelectValues()\n\t\t\t\tvalue = $tw.utils.stringifyList(value);\n\t}\n\tthis.wiki.setText(this.selectTitle,this.selectField,this.selectIndex,value);\n\t// Trigger actions\n\tif(this.selectActions) {\n\t\tthis.invokeActionString(this.selectActions,this,event);\n\t}\n};\n\n/*\nIf necessary, set the value of the select element to the current value\n*/\nSelectWidget.prototype.setSelectValue = function() {\n\tvar value = this.selectDefault;\n\t// Get the value\n\tif(this.selectIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.selectTitle,this.selectIndex,value);\n\t} else {\n\t\tvar tiddler = this.wiki.getTiddler(this.selectTitle);\n\t\tif(tiddler) {\n\t\t\tif(this.selectField === \"text\") {\n\t\t\t\t// Calling getTiddlerText() triggers lazy loading of skinny tiddlers\n\t\t\t\tvalue = this.wiki.getTiddlerText(this.selectTitle);\n\t\t\t} else {\n\t\t\t\tif($tw.utils.hop(tiddler.fields,this.selectField)) {\n\t\t\t\t\tvalue = tiddler.getFieldString(this.selectField);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif(this.selectField === \"title\") {\n\t\t\t\tvalue = this.selectTitle;\n\t\t\t}\n\t\t}\n\t}\n\t// Assign it to the select element if it's different than the current value\n\tif (this.selectMultiple) {\n\t\tvalue = value === undefined ? \"\" : value;\n\t\tvar select = this.getSelectDomNode();\n\t\tvar values = Array.isArray(value) ? value : $tw.utils.parseStringArray(value);\n\t\tfor(var i=0; i < select.children.length; i++){\n\t\t\tselect.children[i].selected = values.indexOf(select.children[i].value) !== -1\n\t\t}\n\t} else {\n\t\tvar domNode = this.getSelectDomNode();\n\t\tif(domNode.value !== value) {\n\t\t\tdomNode.value = value;\n\t\t}\n\t}\n};\n\n/*\nGet the DOM node of the select element\n*/\nSelectWidget.prototype.getSelectDomNode = function() {\n\treturn this.children[0].domNodes[0];\n};\n\n// Return an array of the selected opion values\n// select is an HTML select element\nSelectWidget.prototype.getSelectValues = function() {\n\tvar select, result, options, opt;\n\tselect = this.getSelectDomNode();\n\tresult = [];\n\toptions = select && select.options;\n\tfor (var i=0; i<options.length; i++) {\n\t\topt = options[i];\n\t\tif (opt.selected) {\n\t\t\tresult.push(opt.value || opt.text);\n\t\t}\n\t}\n\treturn result;\n}\n\n/*\nCompute the internal state of the widget\n*/\nSelectWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.selectActions = this.getAttribute(\"actions\");\n\tthis.selectTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.selectField = this.getAttribute(\"field\",\"text\");\n\tthis.selectIndex = this.getAttribute(\"index\");\n\tthis.selectClass = this.getAttribute(\"class\");\n\tthis.selectDefault = this.getAttribute(\"default\");\n\tthis.selectMultiple = this.getAttribute(\"multiple\", false);\n\tthis.selectSize = this.getAttribute(\"size\");\n\tthis.selectTooltip = this.getAttribute(\"tooltip\");\n\t// Make the child widgets\n\tvar selectNode = {\n\t\ttype: \"element\",\n\t\ttag: \"select\",\n\t\tchildren: this.parseTreeNode.children\n\t};\n\tif(this.selectClass) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"class\",this.selectClass);\n\t}\n\tif(this.selectMultiple) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"multiple\",\"multiple\");\n\t}\n\tif(this.selectSize) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"size\",this.selectSize);\n\t}\n\tif(this.selectTooltip) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"title\",this.selectTooltip);\n\t}\n\tthis.makeChildWidgets([selectNode]);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nSelectWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// If we're using a different tiddler/field/index then completely refresh ourselves\n\tif(changedAttributes.selectTitle || changedAttributes.selectField || changedAttributes.selectIndex || changedAttributes.selectTooltip) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t// If the target tiddler value has changed, just update setting and refresh the children\n\t} else {\n\t\tvar childrenRefreshed = this.refreshChildren(changedTiddlers);\n\t\tif(changedTiddlers[this.selectTitle] || childrenRefreshed) {\n\t\t\tthis.setSelectValue();\n\t\t} \n\t\treturn childrenRefreshed;\n\t}\n};\n\nexports.select = SelectWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/set.js": {
            "title": "$:/core/modules/widgets/set.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/set.js\ntype: application/javascript\nmodule-type: widget\n\nSet variable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SetWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSetWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSetWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nSetWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.setName = this.getAttribute(\"name\",\"currentTiddler\");\n\tthis.setFilter = this.getAttribute(\"filter\");\n\tthis.setSelect = this.getAttribute(\"select\");\n\tthis.setTiddler = this.getAttribute(\"tiddler\");\n\tthis.setSubTiddler = this.getAttribute(\"subtiddler\");\n\tthis.setField = this.getAttribute(\"field\");\n\tthis.setIndex = this.getAttribute(\"index\");\n\tthis.setValue = this.getAttribute(\"value\");\n\tthis.setEmptyValue = this.getAttribute(\"emptyValue\");\n\t// Set context variable\n\tthis.setVariable(this.setName,this.getValue(),this.parseTreeNode.params,!!this.parseTreeNode.isMacroDefinition);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nGet the value to be assigned\n*/\nSetWidget.prototype.getValue = function() {\n\tvar value = this.setValue;\n\tif(this.setTiddler) {\n\t\tvar tiddler;\n\t\tif(this.setSubTiddler) {\n\t\t\ttiddler = this.wiki.getSubTiddler(this.setTiddler,this.setSubTiddler);\n\t\t} else {\n\t\t\ttiddler = this.wiki.getTiddler(this.setTiddler);\t\t\t\n\t\t}\n\t\tif(!tiddler) {\n\t\t\tvalue = this.setEmptyValue;\n\t\t} else if(this.setField) {\n\t\t\tvalue = tiddler.getFieldString(this.setField) || this.setEmptyValue;\n\t\t} else if(this.setIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(this.setTiddler,this.setIndex,this.setEmptyValue);\n\t\t} else {\n\t\t\tvalue = tiddler.fields.text || this.setEmptyValue ;\n\t\t}\n\t} else if(this.setFilter) {\n\t\tvar results = this.wiki.filterTiddlers(this.setFilter,this);\n\t\tif(this.setValue == null) {\n\t\t\tvar select;\n\t\t\tif(this.setSelect) {\n\t\t\t\tselect = parseInt(this.setSelect,10);\n\t\t\t}\n\t\t\tif(select !== undefined) {\n\t\t\t\tvalue = results[select] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = $tw.utils.stringifyList(results);\t\t\t\n\t\t\t}\n\t\t}\n\t\tif(results.length === 0 && this.setEmptyValue !== undefined) {\n\t\t\tvalue = this.setEmptyValue;\n\t\t}\n\t} else if(!value && this.setEmptyValue) {\n\t\tvalue = this.setEmptyValue;\n\t}\n\treturn value || \"\";\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nSetWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name || changedAttributes.filter || changedAttributes.select || changedAttributes.tiddler || (this.setTiddler && changedTiddlers[this.setTiddler]) || changedAttributes.field || changedAttributes.index || changedAttributes.value || changedAttributes.emptyValue ||\n\t   (this.setFilter && this.getValue() != this.variables[this.setName].value)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.setvariable = SetWidget;\nexports.set = SetWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/text.js": {
            "title": "$:/core/modules/widgets/text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/text.js\ntype: application/javascript\nmodule-type: widget\n\nText node widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TextNodeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTextNodeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTextNodeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar text = this.getAttribute(\"text\",this.parseTreeNode.text || \"\");\n\ttext = text.replace(/\\r/mg,\"\");\n\tvar textNode = this.document.createTextNode(text);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTextNodeWidget.prototype.execute = function() {\n\t// Nothing to do for a text node\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTextNodeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.text) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.text = TextNodeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/tiddler.js": {
            "title": "$:/core/modules/widgets/tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/tiddler.js\ntype: application/javascript\nmodule-type: widget\n\nTiddler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTiddlerWidget.prototype.execute = function() {\n\tthis.tiddlerState = this.computeTiddlerState();\n\tthis.setVariable(\"currentTiddler\",this.tiddlerState.currentTiddler);\n\tthis.setVariable(\"missingTiddlerClass\",this.tiddlerState.missingTiddlerClass);\n\tthis.setVariable(\"shadowTiddlerClass\",this.tiddlerState.shadowTiddlerClass);\n\tthis.setVariable(\"systemTiddlerClass\",this.tiddlerState.systemTiddlerClass);\n\tthis.setVariable(\"tiddlerTagClasses\",this.tiddlerState.tiddlerTagClasses);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nCompute the tiddler state flags\n*/\nTiddlerWidget.prototype.computeTiddlerState = function() {\n\t// Get our parameters\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Compute the state\n\tvar state = {\n\t\tcurrentTiddler: this.tiddlerTitle || \"\",\n\t\tmissingTiddlerClass: (this.wiki.tiddlerExists(this.tiddlerTitle) || this.wiki.isShadowTiddler(this.tiddlerTitle)) ? \"tc-tiddler-exists\" : \"tc-tiddler-missing\",\n\t\tshadowTiddlerClass: this.wiki.isShadowTiddler(this.tiddlerTitle) ? \"tc-tiddler-shadow\" : \"\",\n\t\tsystemTiddlerClass: this.wiki.isSystemTiddler(this.tiddlerTitle) ? \"tc-tiddler-system\" : \"\",\n\t\ttiddlerTagClasses: this.getTagClasses()\n\t};\n\t// Compute a simple hash to make it easier to detect changes\n\tstate.hash = state.currentTiddler + state.missingTiddlerClass + state.shadowTiddlerClass + state.systemTiddlerClass + state.tiddlerTagClasses;\n\treturn state;\n};\n\n/*\nCreate a string of CSS classes derived from the tags of the current tiddler\n*/\nTiddlerWidget.prototype.getTagClasses = function() {\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle);\n\tif(tiddler) {\n\t\tvar tags = [];\n\t\t$tw.utils.each(tiddler.fields.tags,function(tag) {\n\t\t\ttags.push(\"tc-tagged-\" + encodeURIComponent(tag));\n\t\t});\n\t\treturn tags.join(\" \");\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\tnewTiddlerState = this.computeTiddlerState();\n\tif(changedAttributes.tiddler || newTiddlerState.hash !== this.tiddlerState.hash) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.tiddler = TiddlerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/transclude.js": {
            "title": "$:/core/modules/widgets/transclude.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/transclude.js\ntype: application/javascript\nmodule-type: widget\n\nTransclude widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TranscludeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTranscludeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTranscludeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTranscludeWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.transcludeTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.transcludeSubTiddler = this.getAttribute(\"subtiddler\");\n\tthis.transcludeField = this.getAttribute(\"field\");\n\tthis.transcludeIndex = this.getAttribute(\"index\");\n\tthis.transcludeMode = this.getAttribute(\"mode\");\n\tthis.recursionMarker = this.getAttribute(\"recursionMarker\",\"yes\");\n\t// Parse the text reference\n\tvar parseAsInline = !this.parseTreeNode.isBlock;\n\tif(this.transcludeMode === \"inline\") {\n\t\tparseAsInline = true;\n\t} else if(this.transcludeMode === \"block\") {\n\t\tparseAsInline = false;\n\t}\n\tvar parser = this.wiki.parseTextReference(\n\t\t\t\t\t\tthis.transcludeTitle,\n\t\t\t\t\t\tthis.transcludeField,\n\t\t\t\t\t\tthis.transcludeIndex,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tparseAsInline: parseAsInline,\n\t\t\t\t\t\t\tsubTiddler: this.transcludeSubTiddler\n\t\t\t\t\t\t}),\n\t\tparseTreeNodes = parser ? parser.tree : this.parseTreeNode.children;\n\t// Set context variables for recursion detection\n\tvar recursionMarker = this.makeRecursionMarker();\n\tif(this.recursionMarker === \"yes\") {\n\t\tthis.setVariable(\"transclusion\",recursionMarker);\n\t}\n\t// Check for recursion\n\tif(parser) {\n\t\tif(this.parentWidget && this.parentWidget.hasVariable(\"transclusion\",recursionMarker)) {\n\t\t\tparseTreeNodes = [{type: \"element\", tag: \"span\", attributes: {\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-error\"}\n\t\t\t}, children: [\n\t\t\t\t{type: \"text\", text: $tw.language.getString(\"Error/RecursiveTransclusion\")}\n\t\t\t]}];\n\t\t}\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nCompose a string comprising the title, field and/or index to identify this transclusion for recursion detection\n*/\nTranscludeWidget.prototype.makeRecursionMarker = function() {\n\tvar output = [];\n\toutput.push(\"{\");\n\toutput.push(this.getVariable(\"currentTiddler\",{defaultValue: \"\"}));\n\toutput.push(\"|\");\n\toutput.push(this.transcludeTitle || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeField || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeIndex || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeSubTiddler || \"\");\n\toutput.push(\"}\");\n\treturn output.join(\"\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTranscludeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedTiddlers[this.transcludeTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.transclude = TranscludeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/vars.js": {
            "title": "$:/core/modules/widgets/vars.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/vars.js\ntype: application/javascript\nmodule-type: widget\n\nThis widget allows multiple variables to be set in one go:\n\n```\n\\define helloworld() Hello world!\n<$vars greeting=\"Hi\" me={{!!title}} sentence=<<helloworld>>>\n  <<greeting>>! I am <<me>> and I say: <<sentence>>\n</$vars>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar VarsWidget = function(parseTreeNode,options) {\n\t// Call the constructor\n\tWidget.call(this);\n\t// Initialise\t\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nVarsWidget.prototype = Object.create(Widget.prototype);\n\n/*\nRender this widget into the DOM\n*/\nVarsWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nVarsWidget.prototype.execute = function() {\n\t// Parse variables\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(val,key) {\n\t\tif(key.charAt(0) !== \"$\") {\n\t\t\tself.setVariable(key,val);\n\t\t}\n\t});\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nVarsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(Object.keys(changedAttributes).length) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports[\"vars\"] = VarsWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/view.js": {
            "title": "$:/core/modules/widgets/view.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/view.js\ntype: application/javascript\nmodule-type: widget\n\nView widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ViewWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nViewWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nViewWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tif(this.text) {\n\t\tvar textNode = this.document.createTextNode(this.text);\n\t\tparent.insertBefore(textNode,nextSibling);\n\t\tthis.domNodes.push(textNode);\n\t} else {\n\t\tthis.makeChildWidgets();\n\t\tthis.renderChildren(parent,nextSibling);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nViewWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.viewTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.viewSubtiddler = this.getAttribute(\"subtiddler\");\n\tthis.viewField = this.getAttribute(\"field\",\"text\");\n\tthis.viewIndex = this.getAttribute(\"index\");\n\tthis.viewFormat = this.getAttribute(\"format\",\"text\");\n\tthis.viewTemplate = this.getAttribute(\"template\",\"\");\n\tthis.viewMode = this.getAttribute(\"mode\",\"block\");\n\tswitch(this.viewFormat) {\n\t\tcase \"htmlwikified\":\n\t\t\tthis.text = this.getValueAsHtmlWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"plainwikified\":\n\t\t\tthis.text = this.getValueAsPlainWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"htmlencodedplainwikified\":\n\t\t\tthis.text = this.getValueAsHtmlEncodedPlainWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"htmlencoded\":\n\t\t\tthis.text = this.getValueAsHtmlEncoded();\n\t\t\tbreak;\n\t\tcase \"urlencoded\":\n\t\t\tthis.text = this.getValueAsUrlEncoded();\n\t\t\tbreak;\n\t\tcase \"doubleurlencoded\":\n\t\t\tthis.text = this.getValueAsDoubleUrlEncoded();\n\t\t\tbreak;\n\t\tcase \"date\":\n\t\t\tthis.text = this.getValueAsDate(this.viewTemplate);\n\t\t\tbreak;\n\t\tcase \"relativedate\":\n\t\t\tthis.text = this.getValueAsRelativeDate();\n\t\t\tbreak;\n\t\tcase \"stripcomments\":\n\t\t\tthis.text = this.getValueAsStrippedComments();\n\t\t\tbreak;\n\t\tcase \"jsencoded\":\n\t\t\tthis.text = this.getValueAsJsEncoded();\n\t\t\tbreak;\n\t\tdefault: // \"text\"\n\t\t\tthis.text = this.getValueAsText();\n\t\t\tbreak;\n\t}\n};\n\n/*\nThe various formatter functions are baked into this widget for the moment. Eventually they will be replaced by macro functions\n*/\n\n/*\nRetrieve the value of the widget. Options are:\nasString: Optionally return the value as a string\n*/\nViewWidget.prototype.getValue = function(options) {\n\toptions = options || {};\n\tvar value = options.asString ? \"\" : undefined;\n\tif(this.viewIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.viewTitle,this.viewIndex);\n\t} else {\n\t\tvar tiddler;\n\t\tif(this.viewSubtiddler) {\n\t\t\ttiddler = this.wiki.getSubTiddler(this.viewTitle,this.viewSubtiddler);\t\n\t\t} else {\n\t\t\ttiddler = this.wiki.getTiddler(this.viewTitle);\n\t\t}\n\t\tif(tiddler) {\n\t\t\tif(this.viewField === \"text\" && !this.viewSubtiddler) {\n\t\t\t\t// Calling getTiddlerText() triggers lazy loading of skinny tiddlers\n\t\t\t\tvalue = this.wiki.getTiddlerText(this.viewTitle);\n\t\t\t} else {\n\t\t\t\tif($tw.utils.hop(tiddler.fields,this.viewField)) {\n\t\t\t\t\tif(options.asString) {\n\t\t\t\t\t\tvalue = tiddler.getFieldString(this.viewField);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvalue = tiddler.fields[this.viewField];\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif(this.viewField === \"title\") {\n\t\t\t\tvalue = this.viewTitle;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nViewWidget.prototype.getValueAsText = function() {\n\treturn this.getValue({asString: true});\n};\n\nViewWidget.prototype.getValueAsHtmlWikified = function(mode) {\n\treturn this.wiki.renderText(\"text/html\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t});\n};\n\nViewWidget.prototype.getValueAsPlainWikified = function(mode) {\n\treturn this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t});\n};\n\nViewWidget.prototype.getValueAsHtmlEncodedPlainWikified = function(mode) {\n\treturn $tw.utils.htmlEncode(this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t}));\n};\n\nViewWidget.prototype.getValueAsHtmlEncoded = function() {\n\treturn $tw.utils.htmlEncode(this.getValueAsText());\n};\n\nViewWidget.prototype.getValueAsUrlEncoded = function() {\n\treturn encodeURIComponent(this.getValueAsText());\n};\n\nViewWidget.prototype.getValueAsDoubleUrlEncoded = function() {\n\treturn encodeURIComponent(encodeURIComponent(this.getValueAsText()));\n};\n\nViewWidget.prototype.getValueAsDate = function(format) {\n\tformat = format || \"YYYY MM DD 0hh:0mm\";\n\tvar value = $tw.utils.parseDate(this.getValue());\n\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\treturn $tw.utils.formatDateString(value,format);\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\nViewWidget.prototype.getValueAsRelativeDate = function(format) {\n\tvar value = $tw.utils.parseDate(this.getValue());\n\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\treturn $tw.utils.getRelativeDate((new Date()) - (new Date(value))).description;\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\nViewWidget.prototype.getValueAsStrippedComments = function() {\n\tvar lines = this.getValueAsText().split(\"\\n\"),\n\t\tout = [];\n\tfor(var line=0; line<lines.length; line++) {\n\t\tvar text = lines[line];\n\t\tif(!/^\\s*\\/\\/#/.test(text)) {\n\t\t\tout.push(text);\n\t\t}\n\t}\n\treturn out.join(\"\\n\");\n};\n\nViewWidget.prototype.getValueAsJsEncoded = function() {\n\treturn $tw.utils.stringify(this.getValueAsText());\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nViewWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.template || changedAttributes.format || changedTiddlers[this.viewTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.view = ViewWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/widget.js": {
            "title": "$:/core/modules/widgets/widget.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/widget.js\ntype: application/javascript\nmodule-type: widget\n\nWidget base class\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreate a widget object for a parse tree node\n\tparseTreeNode: reference to the parse tree node to be rendered\n\toptions: see below\nOptions include:\n\twiki: mandatory reference to wiki associated with this render tree\n\tparentWidget: optional reference to a parent renderer node for the context chain\n\tdocument: optional document object to use instead of global document\n*/\nvar Widget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInitialise widget properties. These steps are pulled out of the constructor so that we can reuse them in subclasses\n*/\nWidget.prototype.initialise = function(parseTreeNode,options) {\n\t// Bail if parseTreeNode is undefined, meaning  that the widget constructor was called without any arguments so that it can be subclassed\n\tif(parseTreeNode === undefined) {\n\t\treturn;\n\t}\n\toptions = options || {};\n\t// Save widget info\n\tthis.parseTreeNode = parseTreeNode;\n\tthis.wiki = options.wiki;\n\tthis.parentWidget = options.parentWidget;\n\tthis.variablesConstructor = function() {};\n\tthis.variablesConstructor.prototype = this.parentWidget ? this.parentWidget.variables : {};\n\tthis.variables = new this.variablesConstructor();\n\tthis.document = options.document;\n\tthis.attributes = {};\n\tthis.children = [];\n\tthis.domNodes = [];\n\tthis.eventListeners = {};\n\t// Hashmap of the widget classes\n\tif(!this.widgetClasses) {\n\t\t// Get widget classes\n\t\tWidget.prototype.widgetClasses = $tw.modules.applyMethods(\"widget\");\n\t\t// Process any subclasses\n\t\t$tw.modules.forEachModuleOfType(\"widget-subclass\",function(title,module) {\n\t\t\tif(module.baseClass) {\n\t\t\t\tvar baseClass = Widget.prototype.widgetClasses[module.baseClass];\n\t\t\t\tif(!baseClass) {\n\t\t\t\t\tthrow \"Module '\" + title + \"' is attemping to extend a non-existent base class '\" + module.baseClass + \"'\";\n\t\t\t\t}\n\t\t\t\tvar subClass = module.constructor;\n\t\t\t\tsubClass.prototype = new baseClass();\n\t\t\t\t$tw.utils.extend(subClass.prototype,module.prototype);\n\t\t\t\tWidget.prototype.widgetClasses[module.name || module.baseClass] = subClass;\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nWidget.prototype.execute = function() {\n\tthis.makeChildWidgets();\n};\n\n/*\nSet the value of a context variable\nname: name of the variable\nvalue: value of the variable\nparams: array of {name:, default:} for each parameter\nisMacroDefinition: true if the variable is set via a \\define macro pragma (and hence should have variable substitution performed)\n*/\nWidget.prototype.setVariable = function(name,value,params,isMacroDefinition) {\n\tthis.variables[name] = {value: value, params: params, isMacroDefinition: !!isMacroDefinition};\n};\n\n/*\nGet the prevailing value of a context variable\nname: name of variable\noptions: see below\nOptions include\nparams: array of {name:, value:} for each parameter\ndefaultValue: default value if the variable is not defined\n\nReturns an object with the following fields:\n\nparams: array of {name:,value:} of parameters passed to wikitext variables\ntext: text of variable, with parameters properly substituted\n*/\nWidget.prototype.getVariableInfo = function(name,options) {\n\toptions = options || {};\n\tvar actualParams = options.params || [],\n\t\tparentWidget = this.parentWidget;\n\t// Check for the variable defined in the parent widget (or an ancestor in the prototype chain)\n\tif(parentWidget && name in parentWidget.variables) {\n\t\tvar variable = parentWidget.variables[name],\n\t\t\toriginalValue = variable.value,\n\t\t\tvalue = originalValue,\n\t\t\tparams = this.resolveVariableParameters(variable.params,actualParams);\n\t\t// Substitute any parameters specified in the definition\n\t\t$tw.utils.each(params,function(param) {\n\t\t\tvalue = $tw.utils.replaceString(value,new RegExp(\"\\\\$\" + $tw.utils.escapeRegExp(param.name) + \"\\\\$\",\"mg\"),param.value);\n\t\t});\n\t\t// Only substitute variable references if this variable was defined with the \\define pragma\n\t\tif(variable.isMacroDefinition) {\n\t\t\tvalue = this.substituteVariableReferences(value);\t\t\t\n\t\t}\n\t\treturn {\n\t\t\ttext: value,\n\t\t\tparams: params,\n\t\t\tsrcVariable: variable,\n\t\t\tisCacheable: originalValue === value\n\t\t};\n\t}\n\t// If the variable doesn't exist in the parent widget then look for a macro module\n\treturn {\n\t\ttext: this.evaluateMacroModule(name,actualParams,options.defaultValue)\n\t};\n};\n\n/*\nSimplified version of getVariableInfo() that just returns the text\n*/\nWidget.prototype.getVariable = function(name,options) {\n\treturn this.getVariableInfo(name,options).text;\n};\n\nWidget.prototype.resolveVariableParameters = function(formalParams,actualParams) {\n\tformalParams = formalParams || [];\n\tactualParams = actualParams || [];\n\tvar nextAnonParameter = 0, // Next candidate anonymous parameter in macro call\n\t\tparamInfo, paramValue,\n\t\tresults = [];\n\t// Step through each of the parameters in the macro definition\n\tfor(var p=0; p<formalParams.length; p++) {\n\t\t// Check if we've got a macro call parameter with the same name\n\t\tparamInfo = formalParams[p];\n\t\tparamValue = undefined;\n\t\tfor(var m=0; m<actualParams.length; m++) {\n\t\t\tif(actualParams[m].name === paramInfo.name) {\n\t\t\t\tparamValue = actualParams[m].value;\n\t\t\t}\n\t\t}\n\t\t// If not, use the next available anonymous macro call parameter\n\t\twhile(nextAnonParameter < actualParams.length && actualParams[nextAnonParameter].name) {\n\t\t\tnextAnonParameter++;\n\t\t}\n\t\tif(paramValue === undefined && nextAnonParameter < actualParams.length) {\n\t\t\tparamValue = actualParams[nextAnonParameter++].value;\n\t\t}\n\t\t// If we've still not got a value, use the default, if any\n\t\tparamValue = paramValue || paramInfo[\"default\"] || \"\";\n\t\t// Store the parameter name and value\n\t\tresults.push({name: paramInfo.name, value: paramValue});\n\t}\n\treturn results;\n};\n\nWidget.prototype.substituteVariableReferences = function(text) {\n\tvar self = this;\n\treturn (text || \"\").replace(/\\$\\(([^\\)\\$]+)\\)\\$/g,function(match,p1,offset,string) {\n\t\treturn self.getVariable(p1,{defaultValue: \"\"});\n\t});\n};\n\nWidget.prototype.evaluateMacroModule = function(name,actualParams,defaultValue) {\n\tif($tw.utils.hop($tw.macros,name)) {\n\t\tvar macro = $tw.macros[name],\n\t\t\targs = [];\n\t\tif(macro.params.length > 0) {\n\t\t\tvar nextAnonParameter = 0, // Next candidate anonymous parameter in macro call\n\t\t\t\tparamInfo, paramValue;\n\t\t\t// Step through each of the parameters in the macro definition\n\t\t\tfor(var p=0; p<macro.params.length; p++) {\n\t\t\t\t// Check if we've got a macro call parameter with the same name\n\t\t\t\tparamInfo = macro.params[p];\n\t\t\t\tparamValue = undefined;\n\t\t\t\tfor(var m=0; m<actualParams.length; m++) {\n\t\t\t\t\tif(actualParams[m].name === paramInfo.name) {\n\t\t\t\t\t\tparamValue = actualParams[m].value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// If not, use the next available anonymous macro call parameter\n\t\t\t\twhile(nextAnonParameter < actualParams.length && actualParams[nextAnonParameter].name) {\n\t\t\t\t\tnextAnonParameter++;\n\t\t\t\t}\n\t\t\t\tif(paramValue === undefined && nextAnonParameter < actualParams.length) {\n\t\t\t\t\tparamValue = actualParams[nextAnonParameter++].value;\n\t\t\t\t}\n\t\t\t\t// If we've still not got a value, use the default, if any\n\t\t\t\tparamValue = paramValue || paramInfo[\"default\"] || \"\";\n\t\t\t\t// Save the parameter\n\t\t\t\targs.push(paramValue);\n\t\t\t}\n\t\t}\n\t\telse for(var i=0; i<actualParams.length; ++i) {\n\t\t\targs.push(actualParams[i].value);\n\t\t}\n\t\treturn (macro.run.apply(this,args) || \"\").toString();\n\t} else {\n\t\treturn defaultValue;\n\t}\n};\n\n/*\nCheck whether a given context variable value exists in the parent chain\n*/\nWidget.prototype.hasVariable = function(name,value) {\n\tvar node = this;\n\twhile(node) {\n\t\tif($tw.utils.hop(node.variables,name) && node.variables[name].value === value) {\n\t\t\treturn true;\n\t\t}\n\t\tnode = node.parentWidget;\n\t}\n\treturn false;\n};\n\n/*\nConstruct a qualifying string based on a hash of concatenating the values of a given variable in the parent chain\n*/\nWidget.prototype.getStateQualifier = function(name) {\n\tthis.qualifiers = this.qualifiers || Object.create(null);\n\tname = name || \"transclusion\";\n\tif(this.qualifiers[name]) {\n\t\treturn this.qualifiers[name];\n\t} else {\n\t\tvar output = [],\n\t\t\tnode = this;\n\t\twhile(node && node.parentWidget) {\n\t\t\tif($tw.utils.hop(node.parentWidget.variables,name)) {\n\t\t\t\toutput.push(node.getVariable(name));\n\t\t\t}\n\t\t\tnode = node.parentWidget;\n\t\t}\n\t\tvar value = $tw.utils.hashString(output.join(\"\"));\n\t\tthis.qualifiers[name] = value;\n\t\treturn value;\n\t}\n};\n\n/*\nCompute the current values of the attributes of the widget. Returns a hashmap of the names of the attributes that have changed\n*/\nWidget.prototype.computeAttributes = function() {\n\tvar changedAttributes = {},\n\t\tself = this,\n\t\tvalue;\n\t$tw.utils.each(this.parseTreeNode.attributes,function(attribute,name) {\n\t\tif(attribute.type === \"filtered\") {\n\t\t\tvalue = self.wiki.filterTiddlers(attribute.filter,self)[0] || \"\";\n\t\t} else if(attribute.type === \"indirect\") {\n\t\t\tvalue = self.wiki.getTextReference(attribute.textReference,\"\",self.getVariable(\"currentTiddler\"));\n\t\t} else if(attribute.type === \"macro\") {\n\t\t\tvalue = self.getVariable(attribute.value.name,{params: attribute.value.params});\n\t\t} else { // String attribute\n\t\t\tvalue = attribute.value;\n\t\t}\n\t\t// Check whether the attribute has changed\n\t\tif(self.attributes[name] !== value) {\n\t\t\tself.attributes[name] = value;\n\t\t\tchangedAttributes[name] = true;\n\t\t}\n\t});\n\treturn changedAttributes;\n};\n\n/*\nCheck for the presence of an attribute\n*/\nWidget.prototype.hasAttribute = function(name) {\n\treturn $tw.utils.hop(this.attributes,name);\n};\n\n/*\nGet the value of an attribute\n*/\nWidget.prototype.getAttribute = function(name,defaultText) {\n\tif($tw.utils.hop(this.attributes,name)) {\n\t\treturn this.attributes[name];\n\t} else {\n\t\treturn defaultText;\n\t}\n};\n\n/*\nAssign the computed attributes of the widget to a domNode\noptions include:\nexcludeEventAttributes: ignores attributes whose name begins with \"on\"\n*/\nWidget.prototype.assignAttributes = function(domNode,options) {\n\toptions = options || {};\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(v,a) {\n\t\t// Check exclusions\n\t\tif(options.excludeEventAttributes && a.substr(0,2) === \"on\") {\n\t\t\tv = undefined;\n\t\t}\n\t\tif(v !== undefined) {\n\t\t\tvar b = a.split(\":\");\n\t\t\t// Setting certain attributes can cause a DOM error (eg xmlns on the svg element)\n\t\t\ttry {\n\t\t\t\tif (b.length == 2 && b[0] == \"xlink\"){\n\t\t\t\t\tdomNode.setAttributeNS(\"http://www.w3.org/1999/xlink\",b[1],v);\n\t\t\t\t} else {\n\t\t\t\t\tdomNode.setAttributeNS(null,a,v);\n\t\t\t\t}\n\t\t\t} catch(e) {\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nMake child widgets correspondng to specified parseTreeNodes\n*/\nWidget.prototype.makeChildWidgets = function(parseTreeNodes) {\n\tthis.children = [];\n\tvar self = this;\n\t$tw.utils.each(parseTreeNodes || (this.parseTreeNode && this.parseTreeNode.children),function(childNode) {\n\t\tself.children.push(self.makeChildWidget(childNode));\n\t});\n};\n\n/*\nConstruct the widget object for a parse tree node\n*/\nWidget.prototype.makeChildWidget = function(parseTreeNode) {\n\tvar WidgetClass = this.widgetClasses[parseTreeNode.type];\n\tif(!WidgetClass) {\n\t\tWidgetClass = this.widgetClasses.text;\n\t\tparseTreeNode = {type: \"text\", text: \"Undefined widget '\" + parseTreeNode.type + \"'\"};\n\t}\n\treturn new WidgetClass(parseTreeNode,{\n\t\twiki: this.wiki,\n\t\tvariables: {},\n\t\tparentWidget: this,\n\t\tdocument: this.document\n\t});\n};\n\n/*\nGet the next sibling of this widget\n*/\nWidget.prototype.nextSibling = function() {\n\tif(this.parentWidget) {\n\t\tvar index = this.parentWidget.children.indexOf(this);\n\t\tif(index !== -1 && index < this.parentWidget.children.length-1) {\n\t\t\treturn this.parentWidget.children[index+1];\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nGet the previous sibling of this widget\n*/\nWidget.prototype.previousSibling = function() {\n\tif(this.parentWidget) {\n\t\tvar index = this.parentWidget.children.indexOf(this);\n\t\tif(index !== -1 && index > 0) {\n\t\t\treturn this.parentWidget.children[index-1];\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRender the children of this widget into the DOM\n*/\nWidget.prototype.renderChildren = function(parent,nextSibling) {\n\tvar children = this.children;\n\tfor(var i = 0; i < children.length; i++) {\n\t\tchildren[i].render(parent,nextSibling);\n\t};\n};\n\n/*\nAdd a list of event listeners from an array [{type:,handler:},...]\n*/\nWidget.prototype.addEventListeners = function(listeners) {\n\tvar self = this;\n\t$tw.utils.each(listeners,function(listenerInfo) {\n\t\tself.addEventListener(listenerInfo.type,listenerInfo.handler);\n\t});\n};\n\n/*\nAdd an event listener\n*/\nWidget.prototype.addEventListener = function(type,handler) {\n\tvar self = this;\n\tif(typeof handler === \"string\") { // The handler is a method name on this widget\n\t\tthis.eventListeners[type] = function(event) {\n\t\t\treturn self[handler].call(self,event);\n\t\t};\n\t} else { // The handler is a function\n\t\tthis.eventListeners[type] = function(event) {\n\t\t\treturn handler.call(self,event);\n\t\t};\n\t}\n};\n\n/*\nDispatch an event to a widget. If the widget doesn't handle the event then it is also dispatched to the parent widget\n*/\nWidget.prototype.dispatchEvent = function(event) {\n\tevent.widget = event.widget || this;\n\t// Dispatch the event if this widget handles it\n\tvar listener = this.eventListeners[event.type];\n\tif(listener) {\n\t\t// Don't propagate the event if the listener returned false\n\t\tif(!listener(event)) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Dispatch the event to the parent widget\n\tif(this.parentWidget) {\n\t\treturn this.parentWidget.dispatchEvent(event);\n\t}\n\treturn true;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nRebuild a previously rendered widget\n*/\nWidget.prototype.refreshSelf = function() {\n\tvar nextSibling = this.findNextSiblingDomNode();\n\tthis.removeChildDomNodes();\n\tthis.render(this.parentDomNode,nextSibling);\n};\n\n/*\nRefresh all the children of a widget\n*/\nWidget.prototype.refreshChildren = function(changedTiddlers) {\n\tvar children = this.children,\n\t\trefreshed = false;\n\tfor (var i = 0; i < children.length; i++) {\n\t\trefreshed = children[i].refresh(changedTiddlers) || refreshed;\n\t}\n\treturn refreshed;\n};\n\n/*\nFind the next sibling in the DOM to this widget. This is done by scanning the widget tree through all next siblings and their descendents that share the same parent DOM node\n*/\nWidget.prototype.findNextSiblingDomNode = function(startIndex) {\n\t// Refer to this widget by its index within its parents children\n\tvar parent = this.parentWidget,\n\t\tindex = startIndex !== undefined ? startIndex : parent.children.indexOf(this);\nif(index === -1) {\n\tthrow \"node not found in parents children\";\n}\n\t// Look for a DOM node in the later siblings\n\twhile(++index < parent.children.length) {\n\t\tvar domNode = parent.children[index].findFirstDomNode();\n\t\tif(domNode) {\n\t\t\treturn domNode;\n\t\t}\n\t}\n\t// Go back and look for later siblings of our parent if it has the same parent dom node\n\tvar grandParent = parent.parentWidget;\n\tif(grandParent && parent.parentDomNode === this.parentDomNode) {\n\t\tindex = grandParent.children.indexOf(parent);\n\t\tif(index !== -1) {\n\t\t\treturn parent.findNextSiblingDomNode(index);\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nFind the first DOM node generated by a widget or its children\n*/\nWidget.prototype.findFirstDomNode = function() {\n\t// Return the first dom node of this widget, if we've got one\n\tif(this.domNodes.length > 0) {\n\t\treturn this.domNodes[0];\n\t}\n\t// Otherwise, recursively call our children\n\tfor(var t=0; t<this.children.length; t++) {\n\t\tvar domNode = this.children[t].findFirstDomNode();\n\t\tif(domNode) {\n\t\t\treturn domNode;\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRemove any DOM nodes created by this widget or its children\n*/\nWidget.prototype.removeChildDomNodes = function() {\n\t// If this widget has directly created DOM nodes, delete them and exit. This assumes that any child widgets are contained within the created DOM nodes, which would normally be the case\n\tif(this.domNodes.length > 0) {\n\t\t$tw.utils.each(this.domNodes,function(domNode) {\n\t\t\tdomNode.parentNode.removeChild(domNode);\n\t\t});\n\t\tthis.domNodes = [];\n\t} else {\n\t\t// Otherwise, ask the child widgets to delete their DOM nodes\n\t\t$tw.utils.each(this.children,function(childWidget) {\n\t\t\tchildWidget.removeChildDomNodes();\n\t\t});\n\t}\n};\n\n/*\nInvoke the action widgets that are descendents of the current widget.\n*/\nWidget.prototype.invokeActions = function(triggeringWidget,event) {\n\tvar handled = false;\n\t// For each child widget\n\tfor(var t=0; t<this.children.length; t++) {\n\t\tvar child = this.children[t];\n\t\t// Invoke the child if it is an action widget\n\t\tif(child.invokeAction) {\n\t\t\tchild.refreshSelf();\n\t\t\tif(child.invokeAction(triggeringWidget,event)) {\n\t\t\t\thandled = true;\n\t\t\t}\n\t\t}\n\t\t// Propagate through through the child if it permits it\n\t\tif(child.allowActionPropagation() && child.invokeActions(triggeringWidget,event)) {\n\t\t\thandled = true;\n\t\t}\n\t}\n\treturn handled;\n};\n\n/*\nInvoke the action widgets defined in a string\n*/\nWidget.prototype.invokeActionString = function(actions,triggeringWidget,event,variables) {\n\tactions = actions || \"\";\n\tvar parser = this.wiki.parseText(\"text/vnd.tiddlywiki\",actions,{\n\t\t\tparentWidget: this,\n\t\t\tdocument: this.document\n\t\t}),\n\t\twidgetNode = this.wiki.makeWidget(parser,{\n\t\t\tparentWidget: this,\n\t\t\tdocument: this.document,\n\t\t\tvariables: variables\n\t\t});\n\tvar container = this.document.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn widgetNode.invokeActions(this,event);\n};\n\n/*\nExecute action tiddlers by tag\n*/\nWidget.prototype.invokeActionsByTag = function(tag,event,variables) {\n\tvar self = this;\n\t$tw.utils.each(self.wiki.filterTiddlers(\"[all[shadows+tiddlers]tag[\" + tag + \"]!has[draft.of]]\"),function(title) {\n\t\tself.invokeActionString(self.wiki.getTiddlerText(title),self,event,variables);\n\t});\n};\n\nWidget.prototype.allowActionPropagation = function() {\n\treturn true;\n};\n\nexports.widget = Widget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/wikify.js": {
            "title": "$:/core/modules/widgets/wikify.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/wikify.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to wikify text into a variable\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar WikifyWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nWikifyWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nWikifyWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nWikifyWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.wikifyName = this.getAttribute(\"name\");\n\tthis.wikifyText = this.getAttribute(\"text\");\n\tthis.wikifyType = this.getAttribute(\"type\");\n\tthis.wikifyMode = this.getAttribute(\"mode\",\"block\");\n\tthis.wikifyOutput = this.getAttribute(\"output\",\"text\");\n\t// Create the parse tree\n\tthis.wikifyParser = this.wiki.parseText(this.wikifyType,this.wikifyText,{\n\t\t\tparseAsInline: this.wikifyMode === \"inline\"\n\t\t});\n\t// Create the widget tree \n\tthis.wikifyWidgetNode = this.wiki.makeWidget(this.wikifyParser,{\n\t\t\tdocument: $tw.fakeDocument,\n\t\t\tparentWidget: this\n\t\t});\n\t// Render the widget tree to the container\n\tthis.wikifyContainer = $tw.fakeDocument.createElement(\"div\");\n\tthis.wikifyWidgetNode.render(this.wikifyContainer,null);\n\tthis.wikifyResult = this.getResult();\n\t// Set context variable\n\tthis.setVariable(this.wikifyName,this.wikifyResult);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nReturn the result string\n*/\nWikifyWidget.prototype.getResult = function() {\n\tvar result;\n\tswitch(this.wikifyOutput) {\n\t\tcase \"text\":\n\t\t\tresult = this.wikifyContainer.textContent;\n\t\t\tbreak;\n\t\tcase \"formattedtext\":\n\t\t\tresult = this.wikifyContainer.formattedTextContent;\n\t\t\tbreak;\n\t\tcase \"html\":\n\t\t\tresult = this.wikifyContainer.innerHTML;\n\t\t\tbreak;\n\t\tcase \"parsetree\":\n\t\t\tresult = JSON.stringify(this.wikifyParser.tree,0,$tw.config.preferences.jsonSpaces);\n\t\t\tbreak;\n\t\tcase \"widgettree\":\n\t\t\tresult = JSON.stringify(this.getWidgetTree(),0,$tw.config.preferences.jsonSpaces);\n\t\t\tbreak;\n\t}\n\treturn result;\n};\n\n/*\nReturn a string of the widget tree\n*/\nWikifyWidget.prototype.getWidgetTree = function() {\n\tvar copyNode = function(widgetNode,resultNode) {\n\t\t\tvar type = widgetNode.parseTreeNode.type;\n\t\t\tresultNode.type = type;\n\t\t\tswitch(type) {\n\t\t\t\tcase \"element\":\n\t\t\t\t\tresultNode.tag = widgetNode.parseTreeNode.tag;\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"text\":\n\t\t\t\t\tresultNode.text = widgetNode.parseTreeNode.text;\n\t\t\t\t\tbreak;\t\n\t\t\t}\n\t\t\tif(Object.keys(widgetNode.attributes || {}).length > 0) {\n\t\t\t\tresultNode.attributes = {};\n\t\t\t\t$tw.utils.each(widgetNode.attributes,function(attr,attrName) {\n\t\t\t\t\tresultNode.attributes[attrName] = widgetNode.getAttribute(attrName);\n\t\t\t\t});\n\t\t\t}\n\t\t\tif(Object.keys(widgetNode.children || {}).length > 0) {\n\t\t\t\tresultNode.children = [];\n\t\t\t\t$tw.utils.each(widgetNode.children,function(widgetChildNode) {\n\t\t\t\t\tvar node = {};\n\t\t\t\t\tresultNode.children.push(node);\n\t\t\t\t\tcopyNode(widgetChildNode,node);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tresults = {};\n\tcopyNode(this.wikifyWidgetNode,results);\n\treturn results;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nWikifyWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// Refresh ourselves entirely if any of our attributes have changed\n\tif(changedAttributes.name || changedAttributes.text || changedAttributes.type || changedAttributes.mode || changedAttributes.output) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\t// Refresh the widget tree\n\t\tif(this.wikifyWidgetNode.refresh(changedTiddlers)) {\n\t\t\t// Check if there was any change\n\t\t\tvar result = this.getResult();\n\t\t\tif(result !== this.wikifyResult) {\n\t\t\t\t// If so, save the change\n\t\t\t\tthis.wikifyResult = result;\n\t\t\t\tthis.setVariable(this.wikifyName,this.wikifyResult);\n\t\t\t\t// Refresh each of our child widgets\n\t\t\t\t$tw.utils.each(this.children,function(childWidget) {\n\t\t\t\t\tchildWidget.refreshSelf();\n\t\t\t\t});\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\t// Just refresh the children\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.wikify = WikifyWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/wiki-bulkops.js": {
            "title": "$:/core/modules/wiki-bulkops.js",
            "text": "/*\\\ntitle: $:/core/modules/wiki-bulkops.js\ntype: application/javascript\nmodule-type: wikimethod\n\nBulk tiddler operations such as rename.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRename a tiddler, and relink any tags or lists that reference it.\n*/\nfunction renameTiddler(fromTitle,toTitle,options) {\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\toptions = options || {};\n\tif(fromTitle && toTitle && fromTitle !== toTitle) {\n\t\t// Rename the tiddler itself\n\t\tvar oldTiddler = this.getTiddler(fromTitle),\n\t\t\tnewTiddler = new $tw.Tiddler(oldTiddler,{title: toTitle},this.getModificationFields());\n\t\tnewTiddler = $tw.hooks.invokeHook(\"th-renaming-tiddler\",newTiddler,oldTiddler);\n\t\tthis.addTiddler(newTiddler);\n\t\tthis.deleteTiddler(fromTitle);\n\t\t// Rename any tags or lists that reference it\n\t\tthis.relinkTiddler(fromTitle,toTitle,options)\n\t}\n}\n\n/*\nRelink any tags or lists that reference a given tiddler\n*/\nfunction relinkTiddler(fromTitle,toTitle,options) {\n\tvar self = this;\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\toptions = options || {};\n\tif(fromTitle && toTitle && fromTitle !== toTitle) {\n\t\tthis.each(function(tiddler,title) {\n\t\t\tvar type = tiddler.fields.type || \"\";\n\t\t\t// Don't touch plugins or JavaScript modules\n\t\t\tif(!tiddler.fields[\"plugin-type\"] && type !== \"application/javascript\") {\n\t\t\t\tvar tags = tiddler.fields.tags ? tiddler.fields.tags.slice(0) : undefined,\n\t\t\t\t\tlist = tiddler.fields.list ? tiddler.fields.list.slice(0) : undefined,\n\t\t\t\t\tisModified = false;\n\t\t\t\tif(!options.dontRenameInTags) {\n\t\t\t\t\t// Rename tags\n\t\t\t\t\t$tw.utils.each(tags,function (title,index) {\n\t\t\t\t\t\tif(title === fromTitle) {\nconsole.log(\"Renaming tag '\" + tags[index] + \"' to '\" + toTitle + \"' of tiddler '\" + tiddler.fields.title + \"'\");\n\t\t\t\t\t\t\ttags[index] = toTitle;\n\t\t\t\t\t\t\tisModified = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif(!options.dontRenameInLists) {\n\t\t\t\t\t// Rename lists\n\t\t\t\t\t$tw.utils.each(list,function (title,index) {\n\t\t\t\t\t\tif(title === fromTitle) {\nconsole.log(\"Renaming list item '\" + list[index] + \"' to '\" + toTitle + \"' of tiddler '\" + tiddler.fields.title + \"'\");\n\t\t\t\t\t\t\tlist[index] = toTitle;\n\t\t\t\t\t\t\tisModified = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif(isModified) {\n\t\t\t\t\tvar newTiddler = new $tw.Tiddler(tiddler,{tags: tags, list: list},self.getModificationFields())\n\t\t\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-relinking-tiddler\",newTiddler,tiddler);\n\t\t\t\t\tself.addTiddler(newTiddler);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n};\n\nexports.renameTiddler = renameTiddler;\nexports.relinkTiddler = relinkTiddler;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikimethod"
        },
        "$:/core/modules/wiki.js": {
            "title": "$:/core/modules/wiki.js",
            "text": "/*\\\ntitle: $:/core/modules/wiki.js\ntype: application/javascript\nmodule-type: wikimethod\n\nExtension methods for the $tw.Wiki object\n\nAdds the following properties to the wiki object:\n\n* `eventListeners` is a hashmap by type of arrays of listener functions\n* `changedTiddlers` is a hashmap describing changes to named tiddlers since wiki change events were last dispatched. Each entry is a hashmap containing two fields:\n\tmodified: true/false\n\tdeleted: true/false\n* `changeCount` is a hashmap by tiddler title containing a numerical index that starts at zero and is incremented each time a tiddler is created changed or deleted\n* `caches` is a hashmap by tiddler title containing a further hashmap of named cache objects. Caches are automatically cleared when a tiddler is modified or deleted\n* `globalCache` is a hashmap by cache name of cache objects that are cleared whenever any tiddler change occurs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar USER_NAME_TITLE = \"$:/status/UserName\",\n\tTIMESTAMP_DISABLE_TITLE = \"$:/config/TimestampDisable\";\n\n/*\nAdd available indexers to this wiki\n*/\nexports.addIndexersToWiki = function() {\n\tvar self = this;\n\t$tw.utils.each($tw.modules.applyMethods(\"indexer\"),function(Indexer,name) {\n\t\tself.addIndexer(new Indexer(self),name);\n\t});\n};\n\n/*\nGet the value of a text reference. Text references can have any of these forms:\n\t<tiddlertitle>\n\t<tiddlertitle>!!<fieldname>\n\t!!<fieldname> - specifies a field of the current tiddlers\n\t<tiddlertitle>##<index>\n*/\nexports.getTextReference = function(textRef,defaultText,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle = tr.title || currTiddlerTitle;\n\tif(tr.field) {\n\t\tvar tiddler = this.getTiddler(title);\n\t\tif(tr.field === \"title\") { // Special case so we can return the title of a non-existent tiddler\n\t\t\treturn title;\n\t\t} else if(tiddler && $tw.utils.hop(tiddler.fields,tr.field)) {\n\t\t\treturn tiddler.getFieldString(tr.field);\n\t\t} else {\n\t\t\treturn defaultText;\n\t\t}\n\t} else if(tr.index) {\n\t\treturn this.extractTiddlerDataItem(title,tr.index,defaultText);\n\t} else {\n\t\treturn this.getTiddlerText(title,defaultText);\n\t}\n};\n\nexports.setTextReference = function(textRef,value,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle = tr.title || currTiddlerTitle;\n\tthis.setText(title,tr.field,tr.index,value);\n};\n\nexports.setText = function(title,field,index,value,options) {\n\toptions = options || {};\n\tvar creationFields = options.suppressTimestamp ? {} : this.getCreationFields(),\n\t\tmodificationFields = options.suppressTimestamp ? {} : this.getModificationFields();\n\t// Check if it is a reference to a tiddler field\n\tif(index) {\n\t\tvar data = this.getTiddlerData(title,Object.create(null));\n\t\tif(value !== undefined) {\n\t\t\tdata[index] = value;\n\t\t} else {\n\t\t\tdelete data[index];\n\t\t}\n\t\tthis.setTiddlerData(title,data,modificationFields);\n\t} else {\n\t\tvar tiddler = this.getTiddler(title),\n\t\t\tfields = {title: title};\n\t\tfields[field || \"text\"] = value;\n\t\tthis.addTiddler(new $tw.Tiddler(creationFields,tiddler,fields,modificationFields));\n\t}\n};\n\nexports.deleteTextReference = function(textRef,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle,tiddler,fields;\n\t// Check if it is a reference to a tiddler\n\tif(tr.title && !tr.field) {\n\t\tthis.deleteTiddler(tr.title);\n\t// Else check for a field reference\n\t} else if(tr.field) {\n\t\ttitle = tr.title || currTiddlerTitle;\n\t\ttiddler = this.getTiddler(title);\n\t\tif(tiddler && $tw.utils.hop(tiddler.fields,tr.field)) {\n\t\t\tfields = Object.create(null);\n\t\t\tfields[tr.field] = undefined;\n\t\t\tthis.addTiddler(new $tw.Tiddler(tiddler,fields,this.getModificationFields()));\n\t\t}\n\t}\n};\n\nexports.addEventListener = function(type,listener) {\n\tthis.eventListeners = this.eventListeners || {};\n\tthis.eventListeners[type] = this.eventListeners[type]  || [];\n\tthis.eventListeners[type].push(listener);\t\n};\n\nexports.removeEventListener = function(type,listener) {\n\tvar listeners = this.eventListeners[type];\n\tif(listeners) {\n\t\tvar p = listeners.indexOf(listener);\n\t\tif(p !== -1) {\n\t\t\tlisteners.splice(p,1);\n\t\t}\n\t}\n};\n\nexports.dispatchEvent = function(type /*, args */) {\n\tvar args = Array.prototype.slice.call(arguments,1),\n\t\tlisteners = this.eventListeners[type];\n\tif(listeners) {\n\t\tfor(var p=0; p<listeners.length; p++) {\n\t\t\tvar listener = listeners[p];\n\t\t\tlistener.apply(listener,args);\n\t\t}\n\t}\n};\n\n/*\nCauses a tiddler to be marked as changed, incrementing the change count, and triggers event handlers.\nThis method should be called after the changes it describes have been made to the wiki.tiddlers[] array.\n\ttitle: Title of tiddler\n\tisDeleted: defaults to false (meaning the tiddler has been created or modified),\n\t\ttrue if the tiddler has been deleted\n*/\nexports.enqueueTiddlerEvent = function(title,isDeleted) {\n\t// Record the touch in the list of changed tiddlers\n\tthis.changedTiddlers = this.changedTiddlers || Object.create(null);\n\tthis.changedTiddlers[title] = this.changedTiddlers[title] || Object.create(null);\n\tthis.changedTiddlers[title][isDeleted ? \"deleted\" : \"modified\"] = true;\n\t// Increment the change count\n\tthis.changeCount = this.changeCount || Object.create(null);\n\tif($tw.utils.hop(this.changeCount,title)) {\n\t\tthis.changeCount[title]++;\n\t} else {\n\t\tthis.changeCount[title] = 1;\n\t}\n\t// Trigger events\n\tthis.eventListeners = this.eventListeners || {};\n\tif(!this.eventsTriggered) {\n\t\tvar self = this;\n\t\t$tw.utils.nextTick(function() {\n\t\t\tvar changes = self.changedTiddlers;\n\t\t\tself.changedTiddlers = Object.create(null);\n\t\t\tself.eventsTriggered = false;\n\t\t\tif($tw.utils.count(changes) > 0) {\n\t\t\t\tself.dispatchEvent(\"change\",changes);\n\t\t\t}\n\t\t});\n\t\tthis.eventsTriggered = true;\n\t}\n};\n\nexports.getSizeOfTiddlerEventQueue = function() {\n\treturn $tw.utils.count(this.changedTiddlers);\n};\n\nexports.clearTiddlerEventQueue = function() {\n\tthis.changedTiddlers = Object.create(null);\n\tthis.changeCount = Object.create(null);\n};\n\nexports.getChangeCount = function(title) {\n\tthis.changeCount = this.changeCount || Object.create(null);\n\tif($tw.utils.hop(this.changeCount,title)) {\n\t\treturn this.changeCount[title];\n\t} else {\n\t\treturn 0;\n\t}\n};\n\n/*\nGenerate an unused title from the specified base\n*/\nexports.generateNewTitle = function(baseTitle,options) {\n\toptions = options || {};\n\tvar c = 0,\n\t\ttitle = baseTitle;\n\twhile(this.tiddlerExists(title) || this.isShadowTiddler(title) || this.findDraft(title)) {\n\t\ttitle = baseTitle + \n\t\t\t(options.prefix || \" \") + \n\t\t\t(++c);\n\t}\n\treturn title;\n};\n\nexports.isSystemTiddler = function(title) {\n\treturn title && title.indexOf(\"$:/\") === 0;\n};\n\nexports.isTemporaryTiddler = function(title) {\n\treturn title && title.indexOf(\"$:/temp/\") === 0;\n};\n\nexports.isImageTiddler = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\t\t\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/vnd.tiddlywiki\"];\n\t\treturn !!contentTypeInfo && contentTypeInfo.flags.indexOf(\"image\") !== -1;\n\t} else {\n\t\treturn null;\n\t}\n};\n\nexports.isBinaryTiddler = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\t\t\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/vnd.tiddlywiki\"];\n\t\treturn !!contentTypeInfo && contentTypeInfo.encoding === \"base64\";\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLike addTiddler() except it will silently reject any plugin tiddlers that are older than the currently loaded version. Returns true if the tiddler was imported\n*/\nexports.importTiddler = function(tiddler) {\n\tvar existingTiddler = this.getTiddler(tiddler.fields.title);\n\t// Check if we're dealing with a plugin\n\tif(tiddler && tiddler.hasField(\"plugin-type\") && tiddler.hasField(\"version\") && existingTiddler && existingTiddler.hasField(\"plugin-type\") && existingTiddler.hasField(\"version\")) {\n\t\t// Reject the incoming plugin if it is older\n\t\tif(!$tw.utils.checkVersions(tiddler.fields.version,existingTiddler.fields.version)) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Fall through to adding the tiddler\n\tthis.addTiddler(tiddler);\n\treturn true;\n};\n\n/*\nReturn a hashmap of the fields that should be set when a tiddler is created\n*/\nexports.getCreationFields = function() {\n\tif(this.getTiddlerText(TIMESTAMP_DISABLE_TITLE,\"\").toLowerCase() !== \"yes\") {\n\t\tvar fields = {\n\t\t\t\tcreated: new Date()\n\t\t\t},\n\t\t\tcreator = this.getTiddlerText(USER_NAME_TITLE);\n\t\tif(creator) {\n\t\t\tfields.creator = creator;\n\t\t}\n\t\treturn fields;\n\t} else {\n\t\treturn {};\n\t}\n};\n\n/*\nReturn a hashmap of the fields that should be set when a tiddler is modified\n*/\nexports.getModificationFields = function() {\n\tif(this.getTiddlerText(TIMESTAMP_DISABLE_TITLE,\"\").toLowerCase() !== \"yes\") {\n\t\tvar fields = Object.create(null),\n\t\t\tmodifier = this.getTiddlerText(USER_NAME_TITLE);\n\t\tfields.modified = new Date();\n\t\tif(modifier) {\n\t\t\tfields.modifier = modifier;\n\t\t}\n\t\treturn fields;\n\t} else {\n\t\treturn {};\n\t}\n};\n\n/*\nReturn a sorted array of tiddler titles.  Options include:\nsortField: field to sort by\nexcludeTag: tag to exclude\nincludeSystem: whether to include system tiddlers (defaults to false)\n*/\nexports.getTiddlers = function(options) {\n\toptions = options || Object.create(null);\n\tvar self = this,\n\t\tsortField = options.sortField || \"title\",\n\t\ttiddlers = [], t, titles = [];\n\tthis.each(function(tiddler,title) {\n\t\tif(options.includeSystem || !self.isSystemTiddler(title)) {\n\t\t\tif(!options.excludeTag || !tiddler.hasTag(options.excludeTag)) {\n\t\t\t\ttiddlers.push(tiddler);\n\t\t\t}\n\t\t}\n\t});\n\ttiddlers.sort(function(a,b) {\n\t\tvar aa = a.fields[sortField].toLowerCase() || \"\",\n\t\t\tbb = b.fields[sortField].toLowerCase() || \"\";\n\t\tif(aa < bb) {\n\t\t\treturn -1;\n\t\t} else {\n\t\t\tif(aa > bb) {\n\t\t\t\treturn 1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t}\n\t});\n\tfor(t=0; t<tiddlers.length; t++) {\n\t\ttitles.push(tiddlers[t].fields.title);\n\t}\n\treturn titles;\n};\n\nexports.countTiddlers = function(excludeTag) {\n\tvar tiddlers = this.getTiddlers({excludeTag: excludeTag});\n\treturn $tw.utils.count(tiddlers);\n};\n\n/*\nReturns a function iterator(callback) that iterates through the specified titles, and invokes the callback with callback(tiddler,title)\n*/\nexports.makeTiddlerIterator = function(titles) {\n\tvar self = this;\n\tif(!$tw.utils.isArray(titles)) {\n\t\ttitles = Object.keys(titles);\n\t} else {\n\t\ttitles = titles.slice(0);\n\t}\n\treturn function(callback) {\n\t\ttitles.forEach(function(title) {\n\t\t\tcallback(self.getTiddler(title),title);\n\t\t});\n\t};\n};\n\n/*\nSort an array of tiddler titles by a specified field\n\ttitles: array of titles (sorted in place)\n\tsortField: name of field to sort by\n\tisDescending: true if the sort should be descending\n\tisCaseSensitive: true if the sort should consider upper and lower case letters to be different\n*/\nexports.sortTiddlers = function(titles,sortField,isDescending,isCaseSensitive,isNumeric,isAlphaNumeric) {\n\tvar self = this;\n\ttitles.sort(function(a,b) {\n\t\tvar x,y,\n\t\t\tcompareNumbers = function(x,y) {\n\t\t\t\tvar result = \n\t\t\t\t\tisNaN(x) && !isNaN(y) ? (isDescending ? -1 : 1) :\n\t\t\t\t\t!isNaN(x) && isNaN(y) ? (isDescending ? 1 : -1) :\n\t\t\t\t\t\t\t\t\t\t\t(isDescending ? y - x :  x - y);\n\t\t\t\treturn result;\n\t\t\t};\n\t\tif(sortField !== \"title\") {\n\t\t\tvar tiddlerA = self.getTiddler(a),\n\t\t\t\ttiddlerB = self.getTiddler(b);\n\t\t\tif(tiddlerA) {\n\t\t\t\ta = tiddlerA.fields[sortField] || \"\";\n\t\t\t} else {\n\t\t\t\ta = \"\";\n\t\t\t}\n\t\t\tif(tiddlerB) {\n\t\t\t\tb = tiddlerB.fields[sortField] || \"\";\n\t\t\t} else {\n\t\t\t\tb = \"\";\n\t\t\t}\n\t\t}\n\t\tx = Number(a);\n\t\ty = Number(b);\n\t\tif(isNumeric && (!isNaN(x) || !isNaN(y))) {\n\t\t\treturn compareNumbers(x,y);\n\t\t} else if($tw.utils.isDate(a) && $tw.utils.isDate(b)) {\n\t\t\treturn isDescending ? b - a : a - b;\n\t\t} else if(isAlphaNumeric) {\n\t\t\treturn isDescending ? b.localeCompare(a,undefined,{numeric: true,sensitivity: \"base\"}) : a.localeCompare(b,undefined,{numeric: true,sensitivity: \"base\"});\n\t\t} else {\n\t\t\ta = String(a);\n\t\t\tb = String(b);\n\t\t\tif(!isCaseSensitive) {\n\t\t\t\ta = a.toLowerCase();\n\t\t\t\tb = b.toLowerCase();\n\t\t\t}\n\t\t\treturn isDescending ? b.localeCompare(a) : a.localeCompare(b);\n\t\t}\n\t});\n};\n\n/*\nFor every tiddler invoke a callback(title,tiddler) with `this` set to the wiki object. Options include:\nsortField: field to sort by\nexcludeTag: tag to exclude\nincludeSystem: whether to include system tiddlers (defaults to false)\n*/\nexports.forEachTiddler = function(/* [options,]callback */) {\n\tvar arg = 0,\n\t\toptions = arguments.length >= 2 ? arguments[arg++] : {},\n\t\tcallback = arguments[arg++],\n\t\ttitles = this.getTiddlers(options),\n\t\tt, tiddler;\n\tfor(t=0; t<titles.length; t++) {\n\t\ttiddler = this.getTiddler(titles[t]);\n\t\tif(tiddler) {\n\t\t\tcallback.call(this,tiddler.fields.title,tiddler);\n\t\t}\n\t}\n};\n\n/*\nReturn an array of tiddler titles that are directly linked within the given parse tree\n */\nexports.extractLinks = function(parseTreeRoot) {\n\t// Count up the links\n\tvar links = [],\n\t\tcheckParseTree = function(parseTree) {\n\t\t\tfor(var t=0; t<parseTree.length; t++) {\n\t\t\t\tvar parseTreeNode = parseTree[t];\n\t\t\t\tif(parseTreeNode.type === \"link\" && parseTreeNode.attributes.to && parseTreeNode.attributes.to.type === \"string\") {\n\t\t\t\t\tvar value = parseTreeNode.attributes.to.value;\n\t\t\t\t\tif(links.indexOf(value) === -1) {\n\t\t\t\t\t\tlinks.push(value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif(parseTreeNode.children) {\n\t\t\t\t\tcheckParseTree(parseTreeNode.children);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\tcheckParseTree(parseTreeRoot);\n\treturn links;\n};\n\n/*\nReturn an array of tiddler titles that are directly linked from the specified tiddler\n*/\nexports.getTiddlerLinks = function(title) {\n\tvar self = this;\n\t// We'll cache the links so they only get computed if the tiddler changes\n\treturn this.getCacheForTiddler(title,\"links\",function() {\n\t\t// Parse the tiddler\n\t\tvar parser = self.parseTiddler(title);\n\t\tif(parser) {\n\t\t\treturn self.extractLinks(parser.tree);\n\t\t}\n\t\treturn [];\n\t});\n};\n\n/*\nReturn an array of tiddler titles that link to the specified tiddler\n*/\nexports.getTiddlerBacklinks = function(targetTitle) {\n\tvar self = this,\n\t\tbacklinksIndexer = this.getIndexer(\"BacklinksIndexer\"),\n\t\tbacklinks = backlinksIndexer && backlinksIndexer.lookup(targetTitle);\n\n\tif(!backlinks) {\n\t\tbacklinks = [];\n\t\tthis.forEachTiddler(function(title,tiddler) {\n\t\t\tvar links = self.getTiddlerLinks(title);\n\t\t\tif(links.indexOf(targetTitle) !== -1) {\n\t\t\t\tbacklinks.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn backlinks;\n};\n\n/*\nReturn a hashmap of tiddler titles that are referenced but not defined. Each value is the number of times the missing tiddler is referenced\n*/\nexports.getMissingTitles = function() {\n\tvar self = this,\n\t\tmissing = [];\n// We should cache the missing tiddler list, even if we recreate it every time any tiddler is modified\n\tthis.forEachTiddler(function(title,tiddler) {\n\t\tvar links = self.getTiddlerLinks(title);\n\t\t$tw.utils.each(links,function(link) {\n\t\t\tif((!self.tiddlerExists(link) && !self.isShadowTiddler(link)) && missing.indexOf(link) === -1) {\n\t\t\t\tmissing.push(link);\n\t\t\t}\n\t\t});\n\t});\n\treturn missing;\n};\n\nexports.getOrphanTitles = function() {\n\tvar self = this,\n\t\torphans = this.getTiddlers();\n\tthis.forEachTiddler(function(title,tiddler) {\n\t\tvar links = self.getTiddlerLinks(title);\n\t\t$tw.utils.each(links,function(link) {\n\t\t\tvar p = orphans.indexOf(link);\n\t\t\tif(p !== -1) {\n\t\t\t\torphans.splice(p,1);\n\t\t\t}\n\t\t});\n\t});\n\treturn orphans; // Todo\n};\n\n/*\nRetrieves a list of the tiddler titles that are tagged with a given tag\n*/\nexports.getTiddlersWithTag = function(tag) {\n\t// Try to use the indexer\n\tvar self = this,\n\t\ttagIndexer = this.getIndexer(\"TagIndexer\"),\n\t\tresults = tagIndexer && tagIndexer.subIndexers[3].lookup(tag);\n\tif(!results) {\n\t\t// If not available, perform a manual scan\n\t\tresults = this.getGlobalCache(\"taglist-\" + tag,function() {\n\t\t\tvar tagmap = self.getTagMap();\n\t\t\treturn self.sortByList(tagmap[tag],tag);\n\t\t});\n\t}\n\treturn results;\n};\n\n/*\nGet a hashmap by tag of arrays of tiddler titles\n*/\nexports.getTagMap = function() {\n\tvar self = this;\n\treturn this.getGlobalCache(\"tagmap\",function() {\n\t\tvar tags = Object.create(null),\n\t\t\tstoreTags = function(tagArray,title) {\n\t\t\t\tif(tagArray) {\n\t\t\t\t\tfor(var index=0; index<tagArray.length; index++) {\n\t\t\t\t\t\tvar tag = tagArray[index];\n\t\t\t\t\t\tif($tw.utils.hop(tags,tag)) {\n\t\t\t\t\t\t\ttags[tag].push(title);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttags[tag] = [title];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\ttitle, tiddler;\n\t\t// Collect up all the tags\n\t\tself.eachShadow(function(tiddler,title) {\n\t\t\tif(!self.tiddlerExists(title)) {\n\t\t\t\ttiddler = self.getTiddler(title);\n\t\t\t\tstoreTags(tiddler.fields.tags,title);\n\t\t\t}\n\t\t});\n\t\tself.each(function(tiddler,title) {\n\t\t\tstoreTags(tiddler.fields.tags,title);\n\t\t});\n\t\treturn tags;\n\t});\n};\n\n/*\nLookup a given tiddler and return a list of all the tiddlers that include it in the specified list field\n*/\nexports.findListingsOfTiddler = function(targetTitle,fieldName) {\n\tfieldName = fieldName || \"list\";\n\tvar titles = [];\n\tthis.each(function(tiddler,title) {\n\t\tvar list = $tw.utils.parseStringArray(tiddler.fields[fieldName]);\n\t\tif(list && list.indexOf(targetTitle) !== -1) {\n\t\t\ttitles.push(title);\n\t\t}\n\t});\n\treturn titles;\n};\n\n/*\nSorts an array of tiddler titles according to an ordered list\n*/\nexports.sortByList = function(array,listTitle) {\n\tvar self = this,\n\t\treplacedTitles = Object.create(null);\n\t// Given a title, this function will place it in the correct location\n\t// within titles.\n\tfunction moveItemInList(title) {\n\t\tif(!$tw.utils.hop(replacedTitles, title)) {\n\t\t\treplacedTitles[title] = true;\n\t\t\tvar newPos = -1,\n\t\t\t\ttiddler = self.getTiddler(title);\n\t\t\tif(tiddler) {\n\t\t\t\tvar beforeTitle = tiddler.fields[\"list-before\"],\n\t\t\t\t\tafterTitle = tiddler.fields[\"list-after\"];\n\t\t\t\tif(beforeTitle === \"\") {\n\t\t\t\t\tnewPos = 0;\n\t\t\t\t} else if(afterTitle === \"\") {\n\t\t\t\t\tnewPos = titles.length;\n\t\t\t\t} else if(beforeTitle) {\n\t\t\t\t\t// if this title is placed relative\n\t\t\t\t\t// to another title, make sure that\n\t\t\t\t\t// title is placed before we place\n\t\t\t\t\t// this one.\n\t\t\t\t\tmoveItemInList(beforeTitle);\n\t\t\t\t\tnewPos = titles.indexOf(beforeTitle);\n\t\t\t\t} else if(afterTitle) {\n\t\t\t\t\t// Same deal\n\t\t\t\t\tmoveItemInList(afterTitle);\n\t\t\t\t\tnewPos = titles.indexOf(afterTitle);\n\t\t\t\t\tif(newPos >= 0) {\n\t\t\t\t\t\t++newPos;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// If a new position is specified, let's move it\n\t\t\t\tif (newPos !== -1) {\n\t\t\t\t\t// get its current Pos, and make sure\n\t\t\t\t\t// sure that it's _actually_ in the list\n\t\t\t\t\t// and that it would _actually_ move\n\t\t\t\t\t// (#4275) We don't bother calling\n\t\t\t\t\t//         indexOf unless we have a new\n\t\t\t\t\t//         position to work with\n\t\t\t\t\tvar currPos = titles.indexOf(title);\n\t\t\t\t\tif(currPos >= 0 && newPos !== currPos) {\n\t\t\t\t\t\t// move it!\n\t\t\t\t\t\ttitles.splice(currPos,1);\n\t\t\t\t\t\tif(newPos >= currPos) {\n\t\t\t\t\t\t\tnewPos--;\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttitles.splice(newPos,0,title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tvar list = this.getTiddlerList(listTitle);\n\tif(!array || array.length === 0) {\n\t\treturn [];\n\t} else {\n\t\tvar titles = [], t, title;\n\t\t// First place any entries that are present in the list\n\t\tfor(t=0; t<list.length; t++) {\n\t\t\ttitle = list[t];\n\t\t\tif(array.indexOf(title) !== -1) {\n\t\t\t\ttitles.push(title);\n\t\t\t}\n\t\t}\n\t\t// Then place any remaining entries\n\t\tfor(t=0; t<array.length; t++) {\n\t\t\ttitle = array[t];\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\ttitles.push(title);\n\t\t\t}\n\t\t}\n\t\t// Finally obey the list-before and list-after fields of each tiddler in turn\n\t\tvar sortedTitles = titles.slice(0);\n\t\tfor(t=0; t<sortedTitles.length; t++) {\n\t\t\ttitle = sortedTitles[t];\n\t\t\tmoveItemInList(title);\n\t\t}\n\t\treturn titles;\n\t}\n};\n\nexports.getSubTiddler = function(title,subTiddlerTitle) {\n\tvar bundleInfo = this.getPluginInfo(title) || this.getTiddlerDataCached(title);\n\tif(bundleInfo && bundleInfo.tiddlers) {\n\t\tvar subTiddler = bundleInfo.tiddlers[subTiddlerTitle];\n\t\tif(subTiddler) {\n\t\t\treturn new $tw.Tiddler(subTiddler);\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRetrieve a tiddler as a JSON string of the fields\n*/\nexports.getTiddlerAsJson = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\n\t\tvar fields = Object.create(null);\n\t\t$tw.utils.each(tiddler.fields,function(value,name) {\n\t\t\tfields[name] = tiddler.getFieldString(name);\n\t\t});\n\t\treturn JSON.stringify(fields);\n\t} else {\n\t\treturn JSON.stringify({title: title});\n\t}\n};\n\nexports.getTiddlersAsJson = function(filter,spaces) {\n\tvar tiddlers = this.filterTiddlers(filter),\n\t\tspaces = (spaces === undefined) ? $tw.config.preferences.jsonSpaces : spaces,\n\t\tdata = [];\n\tfor(var t=0;t<tiddlers.length; t++) {\n\t\tvar tiddler = this.getTiddler(tiddlers[t]);\n\t\tif(tiddler) {\n\t\t\tvar fields = new Object();\n\t\t\tfor(var field in tiddler.fields) {\n\t\t\t\tfields[field] = tiddler.getFieldString(field);\n\t\t\t}\n\t\t\tdata.push(fields);\n\t\t}\n\t}\n\treturn JSON.stringify(data,null,spaces);\n};\n\n/*\nGet the content of a tiddler as a JavaScript object. How this is done depends on the type of the tiddler:\n\napplication/json: the tiddler JSON is parsed into an object\napplication/x-tiddler-dictionary: the tiddler is parsed as sequence of name:value pairs\n\nOther types currently just return null.\n\ntitleOrTiddler: string tiddler title or a tiddler object\ndefaultData: default data to be returned if the tiddler is missing or doesn't contain data\n\nNote that the same value is returned for repeated calls for the same tiddler data. The value is frozen to prevent modification; otherwise modifications would be visible to all callers\n*/\nexports.getTiddlerDataCached = function(titleOrTiddler,defaultData) {\n\tvar self = this,\n\t\ttiddler = titleOrTiddler;\n\tif(!(tiddler instanceof $tw.Tiddler)) {\n\t\ttiddler = this.getTiddler(tiddler);\t\n\t}\n\tif(tiddler) {\n\t\treturn this.getCacheForTiddler(tiddler.fields.title,\"data\",function() {\n\t\t\t// Return the frozen value\n\t\t\tvar value = self.getTiddlerData(tiddler.fields.title,undefined);\n\t\t\t$tw.utils.deepFreeze(value);\n\t\t\treturn value;\n\t\t}) || defaultData;\n\t} else {\n\t\treturn defaultData;\n\t}\n};\n\n/*\nAlternative, uncached version of getTiddlerDataCached(). The return value can be mutated freely and reused\n*/\nexports.getTiddlerData = function(titleOrTiddler,defaultData) {\n\tvar tiddler = titleOrTiddler,\n\t\tdata;\n\tif(!(tiddler instanceof $tw.Tiddler)) {\n\t\ttiddler = this.getTiddler(tiddler);\t\n\t}\n\tif(tiddler && tiddler.fields.text) {\n\t\tswitch(tiddler.fields.type) {\n\t\t\tcase \"application/json\":\n\t\t\t\t// JSON tiddler\n\t\t\t\ttry {\n\t\t\t\t\tdata = JSON.parse(tiddler.fields.text);\n\t\t\t\t} catch(ex) {\n\t\t\t\t\treturn defaultData;\n\t\t\t\t}\n\t\t\t\treturn data;\n\t\t\tcase \"application/x-tiddler-dictionary\":\n\t\t\t\treturn $tw.utils.parseFields(tiddler.fields.text);\n\t\t}\n\t}\n\treturn defaultData;\n};\n\n/*\nExtract an indexed field from within a data tiddler\n*/\nexports.extractTiddlerDataItem = function(titleOrTiddler,index,defaultText) {\n\tvar data = this.getTiddlerDataCached(titleOrTiddler,Object.create(null)),\n\t\ttext;\n\tif(data && $tw.utils.hop(data,index)) {\n\t\ttext = data[index];\n\t}\n\tif(typeof text === \"string\" || typeof text === \"number\") {\n\t\treturn text.toString();\n\t} else {\n\t\treturn defaultText;\n\t}\n};\n\n/*\nSet a tiddlers content to a JavaScript object. Currently this is done by setting the tiddler's type to \"application/json\" and setting the text to the JSON text of the data.\ntitle: title of tiddler\ndata: object that can be serialised to JSON\nfields: optional hashmap of additional tiddler fields to be set\n*/\nexports.setTiddlerData = function(title,data,fields) {\n\tvar existingTiddler = this.getTiddler(title),\n\t\tnewFields = {\n\t\t\ttitle: title\n\t};\n\tif(existingTiddler && existingTiddler.fields.type === \"application/x-tiddler-dictionary\") {\n\t\tnewFields.text = $tw.utils.makeTiddlerDictionary(data);\n\t} else {\n\t\tnewFields.type = \"application/json\";\n\t\tnewFields.text = JSON.stringify(data,null,$tw.config.preferences.jsonSpaces);\n\t}\n\tthis.addTiddler(new $tw.Tiddler(this.getCreationFields(),existingTiddler,fields,newFields,this.getModificationFields()));\n};\n\n/*\nReturn the content of a tiddler as an array containing each line\n*/\nexports.getTiddlerList = function(title,field,index) {\n\tif(index) {\n\t\treturn $tw.utils.parseStringArray(this.extractTiddlerDataItem(title,index,\"\"));\n\t}\n\tfield = field || \"list\";\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\n\t\treturn ($tw.utils.parseStringArray(tiddler.fields[field]) || []).slice(0);\n\t}\n\treturn [];\n};\n\n// Return a named global cache object. Global cache objects are cleared whenever a tiddler change occurs\nexports.getGlobalCache = function(cacheName,initializer) {\n\tthis.globalCache = this.globalCache || Object.create(null);\n\tif($tw.utils.hop(this.globalCache,cacheName)) {\n\t\treturn this.globalCache[cacheName];\n\t} else {\n\t\tthis.globalCache[cacheName] = initializer();\n\t\treturn this.globalCache[cacheName];\n\t}\n};\n\nexports.clearGlobalCache = function() {\n\tthis.globalCache = Object.create(null);\n};\n\n// Return the named cache object for a tiddler. If the cache doesn't exist then the initializer function is invoked to create it\nexports.getCacheForTiddler = function(title,cacheName,initializer) {\n\tthis.caches = this.caches || Object.create(null);\n\tvar caches = this.caches[title];\n\tif(caches && caches[cacheName]) {\n\t\treturn caches[cacheName];\n\t} else {\n\t\tif(!caches) {\n\t\t\tcaches = Object.create(null);\n\t\t\tthis.caches[title] = caches;\n\t\t}\n\t\tcaches[cacheName] = initializer();\n\t\treturn caches[cacheName];\n\t}\n};\n\n// Clear all caches associated with a particular tiddler, or, if the title is null, clear all the caches for all the tiddlers\nexports.clearCache = function(title) {\n\tif(title) {\n\t\tthis.caches = this.caches || Object.create(null);\n\t\tif($tw.utils.hop(this.caches,title)) {\n\t\t\tdelete this.caches[title];\n\t\t}\n\t} else {\n\t\tthis.caches = Object.create(null);\n\t}\n};\n\nexports.initParsers = function(moduleType) {\n\t// Install the parser modules\n\t$tw.Wiki.parsers = {};\n\tvar self = this;\n\t$tw.modules.forEachModuleOfType(\"parser\",function(title,module) {\n\t\tfor(var f in module) {\n\t\t\tif($tw.utils.hop(module,f)) {\n\t\t\t\t$tw.Wiki.parsers[f] = module[f]; // Store the parser class\n\t\t\t}\n\t\t}\n\t});\n\t// Use the generic binary parser for any binary types not registered so far\n\tif($tw.Wiki.parsers[\"application/octet-stream\"]) {\n\t\tObject.keys($tw.config.contentTypeInfo).forEach(function(type) {\n\t\t\tif(!$tw.utils.hop($tw.Wiki.parsers,type) && $tw.config.contentTypeInfo[type].encoding === \"base64\") {\n\t\t\t\t$tw.Wiki.parsers[type] = $tw.Wiki.parsers[\"application/octet-stream\"];\n\t\t\t}\n\t\t});\t\t\n\t}\n};\n\n/*\nParse a block of text of a specified MIME type\n\ttype: content type of text to be parsed\n\ttext: text\n\toptions: see below\nOptions include:\n\tparseAsInline: if true, the text of the tiddler will be parsed as an inline run\n\t_canonical_uri: optional string of the canonical URI of this content\n*/\nexports.parseText = function(type,text,options) {\n\ttext = text || \"\";\n\toptions = options || {};\n\t// Select a parser\n\tvar Parser = $tw.Wiki.parsers[type];\n\tif(!Parser && $tw.utils.getFileExtensionInfo(type)) {\n\t\tParser = $tw.Wiki.parsers[$tw.utils.getFileExtensionInfo(type).type];\n\t}\n\tif(!Parser) {\n\t\tParser = $tw.Wiki.parsers[options.defaultType || \"text/vnd.tiddlywiki\"];\n\t}\n\tif(!Parser) {\n\t\treturn null;\n\t}\n\t// Return the parser instance\n\treturn new Parser(type,text,{\n\t\tparseAsInline: options.parseAsInline,\n\t\twiki: this,\n\t\t_canonical_uri: options._canonical_uri\n\t});\n};\n\n/*\nParse a tiddler according to its MIME type\n*/\nexports.parseTiddler = function(title,options) {\n\toptions = $tw.utils.extend({},options);\n\tvar cacheType = options.parseAsInline ? \"inlineParseTree\" : \"blockParseTree\",\n\t\ttiddler = this.getTiddler(title),\n\t\tself = this;\n\treturn tiddler ? this.getCacheForTiddler(title,cacheType,function() {\n\t\t\tif(tiddler.hasField(\"_canonical_uri\")) {\n\t\t\t\toptions._canonical_uri = tiddler.fields._canonical_uri;\n\t\t\t}\n\t\t\treturn self.parseText(tiddler.fields.type,tiddler.fields.text,options);\n\t\t}) : null;\n};\n\nexports.parseTextReference = function(title,field,index,options) {\n\tvar tiddler,text;\n\tif(options.subTiddler) {\n\t\ttiddler = this.getSubTiddler(title,options.subTiddler);\n\t} else {\n\t\ttiddler = this.getTiddler(title);\n\t\tif(field === \"text\" || (!field && !index)) {\n\t\t\tthis.getTiddlerText(title); // Force the tiddler to be lazily loaded\n\t\t\treturn this.parseTiddler(title,options);\n\t\t}\n\t}\n\tif(field === \"text\" || (!field && !index)) {\n\t\tif(tiddler && tiddler.fields) {\n\t\t\treturn this.parseText(tiddler.fields.type,tiddler.fields.text,options);\t\t\t\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t} else if(field) {\n\t\tif(field === \"title\") {\n\t\t\ttext = title;\n\t\t} else {\n\t\t\tif(!tiddler || !tiddler.hasField(field)) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\ttext = tiddler.fields[field];\n\t\t}\n\t\treturn this.parseText(\"text/vnd.tiddlywiki\",text.toString(),options);\n\t} else if(index) {\n\t\tthis.getTiddlerText(title); // Force the tiddler to be lazily loaded\n\t\ttext = this.extractTiddlerDataItem(tiddler,index,undefined);\n\t\tif(text === undefined) {\n\t\t\treturn null;\n\t\t}\n\t\treturn this.parseText(\"text/vnd.tiddlywiki\",text,options);\n\t}\n};\n\n/*\nMake a widget tree for a parse tree\nparser: parser object\noptions: see below\nOptions include:\ndocument: optional document to use\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.makeWidget = function(parser,options) {\n\toptions = options || {};\n\tvar widgetNode = {\n\t\t\ttype: \"widget\",\n\t\t\tchildren: []\n\t\t},\n\t\tcurrWidgetNode = widgetNode;\n\t// Create set variable widgets for each variable\n\t$tw.utils.each(options.variables,function(value,name) {\n\t\tvar setVariableWidget = {\n\t\t\ttype: \"set\",\n\t\t\tattributes: {\n\t\t\t\tname: {type: \"string\", value: name},\n\t\t\t\tvalue: {type: \"string\", value: value}\n\t\t\t},\n\t\t\tchildren: []\n\t\t};\n\t\tcurrWidgetNode.children = [setVariableWidget];\n\t\tcurrWidgetNode = setVariableWidget;\n\t});\n\t// Add in the supplied parse tree nodes\n\tcurrWidgetNode.children = parser ? parser.tree : [];\n\t// Create the widget\n\treturn new widget.widget(widgetNode,{\n\t\twiki: this,\n\t\tdocument: options.document || $tw.fakeDocument,\n\t\tparentWidget: options.parentWidget\n\t});\n};\n\n/*\nMake a widget tree for transclusion\ntitle: target tiddler title\noptions: as for wiki.makeWidget() plus:\noptions.field: optional field to transclude (defaults to \"text\")\noptions.mode: transclusion mode \"inline\" or \"block\"\noptions.recursionMarker : optional flag to set a recursion marker, defaults to \"yes\"\noptions.children: optional array of children for the transclude widget\noptions.importVariables: optional importvariables filter string for macros to be included\noptions.importPageMacros: optional boolean; if true, equivalent to passing \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\" to options.importVariables\n*/\nexports.makeTranscludeWidget = function(title,options) {\n\toptions = options || {};\n\tvar parseTreeDiv = {tree: [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"div\",\n\t\t\tchildren: []}]},\n\t\tparseTreeImportVariables = {\n\t\t\ttype: \"importvariables\",\n\t\t\tattributes: {\n\t\t\t\tfilter: {\n\t\t\t\t\tname: \"filter\",\n\t\t\t\t\ttype: \"string\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tisBlock: false,\n\t\t\tchildren: []},\n\t\tparseTreeTransclude = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\trecursionMarker: {\n\t\t\t\t\tname: \"recursionMarker\",\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: options.recursionMarker || \"yes\"\n\t\t\t\t\t},\n\t\t\t\ttiddler: {\n\t\t\t\t\tname: \"tiddler\",\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: title\n\t\t\t\t}\n\t\t\t},\n\t\t\tisBlock: !options.parseAsInline};\n\tif(options.importVariables || options.importPageMacros) {\n\t\tif(options.importVariables) {\n\t\t\tparseTreeImportVariables.attributes.filter.value = options.importVariables;\n\t\t} else if(options.importPageMacros) {\n\t\t\tparseTreeImportVariables.attributes.filter.value = \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\";\n\t\t}\n\t\tparseTreeDiv.tree[0].children.push(parseTreeImportVariables);\n\t\tparseTreeImportVariables.children.push(parseTreeTransclude);\n\t} else {\n\t\tparseTreeDiv.tree[0].children.push(parseTreeTransclude);\n\t}\n\tif(options.field) {\n\t\tparseTreeTransclude.attributes.field = {type: \"string\", value: options.field};\n\t}\n\tif(options.mode) {\n\t\tparseTreeTransclude.attributes.mode = {type: \"string\", value: options.mode};\n\t}\n\tif(options.children) {\n\t\tparseTreeTransclude.children = options.children;\n\t}\n\treturn this.makeWidget(parseTreeDiv,options);\n};\n\n/*\nParse text in a specified format and render it into another format\n\toutputType: content type for the output\n\ttextType: content type of the input text\n\ttext: input text\n\toptions: see below\nOptions include:\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.renderText = function(outputType,textType,text,options) {\n\toptions = options || {};\n\tvar parser = this.parseText(textType,text,options),\n\t\twidgetNode = this.makeWidget(parser,options);\n\tvar container = $tw.fakeDocument.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn outputType === \"text/html\" ? container.innerHTML : container.textContent;\n};\n\n/*\nParse text from a tiddler and render it into another format\n\toutputType: content type for the output\n\ttitle: title of the tiddler to be rendered\n\toptions: see below\nOptions include:\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.renderTiddler = function(outputType,title,options) {\n\toptions = options || {};\n\tvar parser = this.parseTiddler(title,options),\n\t\twidgetNode = this.makeWidget(parser,options);\n\tvar container = $tw.fakeDocument.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn outputType === \"text/html\" ? container.innerHTML : (outputType === \"text/plain-formatted\" ? container.formattedTextContent : container.textContent);\n};\n\n/*\nReturn an array of tiddler titles that match a search string\n\ttext: The text string to search for\n\toptions: see below\nOptions available:\n\tsource: an iterator function for the source tiddlers, called source(iterator), where iterator is called as iterator(tiddler,title)\n\texclude: An array of tiddler titles to exclude from the search\n\tinvert: If true returns tiddlers that do not contain the specified string\n\tcaseSensitive: If true forces a case sensitive search\n\tfield: If specified, restricts the search to the specified field, or an array of field names\n\tanchored: If true, forces all but regexp searches to be anchored to the start of text\n\texcludeField: If true, the field options are inverted to specify the fields that are not to be searched\n\tThe search mode is determined by the first of these boolean flags to be true\n\t\tliteral: searches for literal string\n\t\twhitespace: same as literal except runs of whitespace are treated as a single space\n\t\tregexp: treats the search term as a regular expression\n\t\twords: (default) treats search string as a list of tokens, and matches if all tokens are found, regardless of adjacency or ordering\n*/\nexports.search = function(text,options) {\n\toptions = options || {};\n\tvar self = this,\n\t\tt,\n\t\tinvert = !!options.invert;\n\t// Convert the search string into a regexp for each term\n\tvar terms, searchTermsRegExps,\n\t\tflags = options.caseSensitive ? \"\" : \"i\",\n\t\tanchor = options.anchored ? \"^\" : \"\";\n\tif(options.literal) {\n\t\tif(text.length === 0) {\n\t\t\tsearchTermsRegExps = null;\n\t\t} else {\n\t\t\tsearchTermsRegExps = [new RegExp(\"(\" + anchor + $tw.utils.escapeRegExp(text) + \")\",flags)];\n\t\t}\n\t} else if(options.whitespace) {\n\t\tterms = [];\n\t\t$tw.utils.each(text.split(/\\s+/g),function(term) {\n\t\t\tif(term) {\n\t\t\t\tterms.push($tw.utils.escapeRegExp(term));\n\t\t\t}\n\t\t});\n\t\tsearchTermsRegExps = [new RegExp(\"(\" + anchor + terms.join(\"\\\\s+\") + \")\",flags)];\n\t} else if(options.regexp) {\n\t\ttry {\n\t\t\tsearchTermsRegExps = [new RegExp(\"(\" + text + \")\",flags)];\t\t\t\n\t\t} catch(e) {\n\t\t\tsearchTermsRegExps = null;\n\t\t\tconsole.log(\"Regexp error parsing /(\" + text + \")/\" + flags + \": \",e);\n\t\t}\n\t} else {\n\t\tterms = text.split(/ +/);\n\t\tif(terms.length === 1 && terms[0] === \"\") {\n\t\t\tsearchTermsRegExps = null;\n\t\t} else {\n\t\t\tsearchTermsRegExps = [];\n\t\t\tfor(t=0; t<terms.length; t++) {\n\t\t\t\tsearchTermsRegExps.push(new RegExp(\"(\" + anchor + $tw.utils.escapeRegExp(terms[t]) + \")\",flags));\n\t\t\t}\n\t\t}\n\t}\n\t// Accumulate the array of fields to be searched or excluded from the search\n\tvar fields = [];\n\tif(options.field) {\n\t\tif($tw.utils.isArray(options.field)) {\n\t\t\t$tw.utils.each(options.field,function(fieldName) {\n\t\t\t\tif(fieldName) {\n\t\t\t\t\tfields.push(fieldName);\t\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tfields.push(options.field);\n\t\t}\n\t}\n\t// Use default fields if none specified and we're not excluding fields (excluding fields with an empty field array is the same as searching all fields)\n\tif(fields.length === 0 && !options.excludeField) {\n\t\tfields.push(\"title\");\n\t\tfields.push(\"tags\");\n\t\tfields.push(\"text\");\n\t}\n\t// Function to check a given tiddler for the search term\n\tvar searchTiddler = function(title) {\n\t\tif(!searchTermsRegExps) {\n\t\t\treturn true;\n\t\t}\n\t\tvar notYetFound = searchTermsRegExps.slice();\n\n\t\tvar tiddler = self.getTiddler(title);\n\t\tif(!tiddler) {\n\t\t\ttiddler = new $tw.Tiddler({title: title, text: \"\", type: \"text/vnd.tiddlywiki\"});\n\t\t}\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type] || $tw.config.contentTypeInfo[\"text/vnd.tiddlywiki\"],\n\t\t\tsearchFields;\n\t\t// Get the list of fields we're searching\n\t\tif(options.excludeField) {\n\t\t\tsearchFields = Object.keys(tiddler.fields);\n\t\t\t$tw.utils.each(fields,function(fieldName) {\n\t\t\t\tvar p = searchFields.indexOf(fieldName);\n\t\t\t\tif(p !== -1) {\n\t\t\t\t\tsearchFields.splice(p,1);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsearchFields = fields;\n\t\t}\n\t\tfor(var fieldIndex=0; notYetFound.length>0 && fieldIndex<searchFields.length; fieldIndex++) {\n\t\t\t// Don't search the text field if the content type is binary\n\t\t\tvar fieldName = searchFields[fieldIndex];\n\t\t\tif(fieldName === \"text\" && contentTypeInfo.encoding !== \"utf8\") {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tvar str = tiddler.fields[fieldName],\n\t\t\t\tt;\n\t\t\tif(str) {\n\t\t\t\tif($tw.utils.isArray(str)) {\n\t\t\t\t\t// If the field value is an array, test each regexp against each field array entry and fail if each regexp doesn't match at least one field array entry\n\t\t\t\t\tfor(var s=0; s<str.length; s++) {\n\t\t\t\t\t\tfor(t=0; t<notYetFound.length;) {\n\t\t\t\t\t\t\tif(notYetFound[t].test(str[s])) {\n\t\t\t\t\t\t\t\tnotYetFound.splice(t, 1);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tt++;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// If the field isn't an array, force it to a string and test each regexp against it and fail if any do not match\n\t\t\t\t\tstr = tiddler.getFieldString(fieldName);\n\t\t\t\t\tfor(t=0; t<notYetFound.length;) {\n\t\t\t\t\t\tif(notYetFound[t].test(str)) {\n\t\t\t\t\t\t\tnotYetFound.splice(t, 1);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tt++;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\treturn notYetFound.length == 0;\n\t};\n\t// Loop through all the tiddlers doing the search\n\tvar results = [],\n\t\tsource = options.source || this.each;\n\tsource(function(tiddler,title) {\n\t\tif(searchTiddler(title) !== options.invert) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\t// Remove any of the results we have to exclude\n\tif(options.exclude) {\n\t\tfor(t=0; t<options.exclude.length; t++) {\n\t\t\tvar p = results.indexOf(options.exclude[t]);\n\t\t\tif(p !== -1) {\n\t\t\t\tresults.splice(p,1);\n\t\t\t}\n\t\t}\n\t}\n\treturn results;\n};\n\n/*\nTrigger a load for a tiddler if it is skinny. Returns the text, or undefined if the tiddler is missing, null if the tiddler is being lazily loaded.\n*/\nexports.getTiddlerText = function(title,defaultText) {\n\tvar tiddler = this.getTiddler(title);\n\t// Return undefined if the tiddler isn't found\n\tif(!tiddler) {\n\t\treturn defaultText;\n\t}\n\tif(!tiddler.hasField(\"_is_skinny\")) {\n\t\t// Just return the text if we've got it\n\t\treturn tiddler.fields.text || \"\";\n\t} else {\n\t\t// Tell any listeners about the need to lazily load this tiddler\n\t\tthis.dispatchEvent(\"lazyLoad\",title);\n\t\t// Indicate that the text is being loaded\n\t\treturn null;\n\t}\n};\n\n/*\nCheck whether the text of a tiddler matches a given value. By default, the comparison is case insensitive, and any spaces at either end of the tiddler text is trimmed\n*/\nexports.checkTiddlerText = function(title,targetText,options) {\n\toptions = options || {};\n\tvar text = this.getTiddlerText(title,\"\");\n\tif(!options.noTrim) {\n\t\ttext = text.trim();\n\t}\n\tif(!options.caseSensitive) {\n\t\ttext = text.toLowerCase();\n\t\ttargetText = targetText.toLowerCase();\n\t}\n\treturn text === targetText;\n}\n\n/*\nRead an array of browser File objects, invoking callback(tiddlerFieldsArray) once they're all read\n*/\nexports.readFiles = function(files,options) {\n\tvar callback;\n\tif(typeof options === \"function\") {\n\t\tcallback = options;\n\t\toptions = {};\n\t} else {\n\t\tcallback = options.callback;\n\t}\n\tvar result = [],\n\t\toutstanding = files.length,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tresult.push.apply(result,tiddlerFieldsArray);\n\t\t\tif(--outstanding === 0) {\n\t\t\t\tcallback(result);\n\t\t\t}\n\t\t};\n\tfor(var f=0; f<files.length; f++) {\n\t\tthis.readFile(files[f],$tw.utils.extend({},options,{callback: readFileCallback}));\n\t}\n\treturn files.length;\n};\n\n/*\nRead a browser File object, invoking callback(tiddlerFieldsArray) with an array of tiddler fields objects\n*/\nexports.readFile = function(file,options) {\n\tvar callback;\n\tif(typeof options === \"function\") {\n\t\tcallback = options;\n\t\toptions = {};\n\t} else {\n\t\tcallback = options.callback;\n\t}\n\t// Get the type, falling back to the filename extension\n\tvar self = this,\n\t\ttype = file.type;\n\tif(type === \"\" || !type) {\n\t\tvar dotPos = file.name.lastIndexOf(\".\");\n\t\tif(dotPos !== -1) {\n\t\t\tvar fileExtensionInfo = $tw.utils.getFileExtensionInfo(file.name.substr(dotPos));\n\t\t\tif(fileExtensionInfo) {\n\t\t\t\ttype = fileExtensionInfo.type;\n\t\t\t}\n\t\t}\n\t}\n\t// Figure out if we're reading a binary file\n\tvar contentTypeInfo = $tw.config.contentTypeInfo[type],\n\t\tisBinary = contentTypeInfo ? contentTypeInfo.encoding === \"base64\" : false;\n\t// Log some debugging information\n\tif($tw.log.IMPORT) {\n\t\tconsole.log(\"Importing file '\" + file.name + \"', type: '\" + type + \"', isBinary: \" + isBinary);\n\t}\n\t// Give the hook a chance to process the drag\n\tif($tw.hooks.invokeHook(\"th-importing-file\",{\n\t\tfile: file,\n\t\ttype: type,\n\t\tisBinary: isBinary,\n\t\tcallback: callback\n\t}) !== true) {\n\t\tthis.readFileContent(file,type,isBinary,options.deserializer,callback);\n\t}\n};\n\n/*\nLower level utility to read the content of a browser File object, invoking callback(tiddlerFieldsArray) with an array of tiddler fields objects\n*/\nexports.readFileContent = function(file,type,isBinary,deserializer,callback) {\n\tvar self = this;\n\t// Create the FileReader\n\tvar reader = new FileReader();\n\t// Onload\n\treader.onload = function(event) {\n\t\tvar text = event.target.result,\n\t\t\ttiddlerFields = {title: file.name || \"Untitled\"};\n\t\tif(isBinary) {\n\t\t\tvar commaPos = text.indexOf(\",\");\n\t\t\tif(commaPos !== -1) {\n\t\t\t\ttext = text.substr(commaPos + 1);\n\t\t\t}\n\t\t}\n\t\t// Check whether this is an encrypted TiddlyWiki file\n\t\tvar encryptedJson = $tw.utils.extractEncryptedStoreArea(text);\n\t\tif(encryptedJson) {\n\t\t\t// If so, attempt to decrypt it with the current password\n\t\t\t$tw.utils.decryptStoreAreaInteractive(encryptedJson,function(tiddlers) {\n\t\t\t\tcallback(tiddlers);\n\t\t\t});\n\t\t} else {\n\t\t\t// Otherwise, just try to deserialise any tiddlers in the file\n\t\t\tcallback(self.deserializeTiddlers(type,text,tiddlerFields,{deserializer: deserializer}));\n\t\t}\n\t};\n\t// Kick off the read\n\tif(isBinary) {\n\t\treader.readAsDataURL(file);\n\t} else {\n\t\treader.readAsText(file);\n\t}\n};\n\n/*\nFind any existing draft of a specified tiddler\n*/\nexports.findDraft = function(targetTitle) {\n\tvar draftTitle = undefined;\n\tthis.forEachTiddler({includeSystem: true},function(title,tiddler) {\n\t\tif(tiddler.fields[\"draft.title\"] && tiddler.fields[\"draft.of\"] === targetTitle) {\n\t\t\tdraftTitle = title;\n\t\t}\n\t});\n\treturn draftTitle;\n}\n\n/*\nCheck whether the specified draft tiddler has been modified.\nIf the original tiddler doesn't exist, create  a vanilla tiddler variable,\nto check if additional fields have been added.\n*/\nexports.isDraftModified = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(!tiddler.isDraft()) {\n\t\treturn false;\n\t}\n\tvar ignoredFields = [\"created\", \"modified\", \"title\", \"draft.title\", \"draft.of\"],\n\t\torigTiddler = this.getTiddler(tiddler.fields[\"draft.of\"]) || new $tw.Tiddler({text:\"\", tags:[]}),\n\t\ttitleModified = tiddler.fields[\"draft.title\"] !== tiddler.fields[\"draft.of\"];\n\treturn titleModified || !tiddler.isEqual(origTiddler,ignoredFields);\n};\n\n/*\nAdd a new record to the top of the history stack\ntitle: a title string or an array of title strings\nfromPageRect: page coordinates of the origin of the navigation\nhistoryTitle: title of history tiddler (defaults to $:/HistoryList)\n*/\nexports.addToHistory = function(title,fromPageRect,historyTitle) {\n\tvar story = new $tw.Story({wiki: this, historyTitle: historyTitle});\n\tstory.addToHistory(title,fromPageRect);\t\n\tconsole.log(\"$tw.wiki.addToHistory() is deprecated since V5.1.23! Use the this.story.addToHistory() from the story-object!\")\n};\n\n/*\nAdd a new tiddler to the story river\ntitle: a title string or an array of title strings\nfromTitle: the title of the tiddler from which the navigation originated\nstoryTitle: title of story tiddler (defaults to $:/StoryList)\noptions: see story.js\n*/\nexports.addToStory = function(title,fromTitle,storyTitle,options) {\n\tvar story = new $tw.Story({wiki: this, storyTitle: storyTitle});\n\tstory.addToStory(title,fromTitle,options);\n\tconsole.log(\"$tw.wiki.addToStory() is deprecated since V5.1.23! Use the this.story.addToStory() from the story-object!\")\n};\n\n/*\nGenerate a title for the draft of a given tiddler\n*/\nexports.generateDraftTitle = function(title) {\n\tvar c = 0,\n\t\tdraftTitle,\n\t\tusername = this.getTiddlerText(\"$:/status/UserName\"),\n\t\tattribution = username ? \" by \" + username : \"\";\n\tdo {\n\t\tdraftTitle = \"Draft \" + (c ? (c + 1) + \" \" : \"\") + \"of '\" + title + \"'\" + attribution;\n\t\tc++;\n\t} while(this.tiddlerExists(draftTitle));\n\treturn draftTitle;\n};\n\n/*\nInvoke the available upgrader modules\ntitles: array of tiddler titles to be processed\ntiddlers: hashmap by title of tiddler fields of pending import tiddlers. These can be modified by the upgraders. An entry with no fields indicates a tiddler that was pending import has been suppressed. When entries are added to the pending import the tiddlers hashmap may have entries that are not present in the titles array\nReturns a hashmap of messages keyed by tiddler title.\n*/\nexports.invokeUpgraders = function(titles,tiddlers) {\n\t// Collect up the available upgrader modules\n\tvar self = this;\n\tif(!this.upgraderModules) {\n\t\tthis.upgraderModules = [];\n\t\t$tw.modules.forEachModuleOfType(\"upgrader\",function(title,module) {\n\t\t\tif(module.upgrade) {\n\t\t\t\tself.upgraderModules.push(module);\n\t\t\t}\n\t\t});\n\t}\n\t// Invoke each upgrader in turn\n\tvar messages = {};\n\tfor(var t=0; t<this.upgraderModules.length; t++) {\n\t\tvar upgrader = this.upgraderModules[t],\n\t\t\tupgraderMessages = upgrader.upgrade(this,titles,tiddlers);\n\t\t$tw.utils.extend(messages,upgraderMessages);\n\t}\n\treturn messages;\n};\n\n// Determine whether a plugin by title is dynamically loadable\nexports.doesPluginRequireReload = function(title) {\n\treturn this.doesPluginInfoRequireReload(this.getPluginInfo(title) || this.getTiddlerDataCached(title));\n};\n\n// Determine whether a plugin info structure is dynamically loadable\nexports.doesPluginInfoRequireReload = function(pluginInfo) {\n\tif(pluginInfo) {\n\t\tvar foundModule = false;\n\t\t$tw.utils.each(pluginInfo.tiddlers,function(tiddler) {\n\t\t\tif(tiddler.type === \"application/javascript\" && $tw.utils.hop(tiddler,\"module-type\")) {\n\t\t\t\tfoundModule = true;\n\t\t\t}\n\t\t});\n\t\treturn foundModule;\n\t} else {\n\t\treturn null;\n\t}\n};\n\nexports.slugify = function(title,options) {\n\tvar tiddler = this.getTiddler(title),\n\t\tslug;\n\tif(tiddler && tiddler.fields.slug) {\n\t\tslug = tiddler.fields.slug;\n\t} else {\n\t\tslug = $tw.utils.transliterate(title.toString().toLowerCase()) // Replace diacritics with basic lowercase ASCII\n\t\t\t.replace(/\\s+/g,\"-\")                                       // Replace spaces with -\n\t\t\t.replace(/[^\\w\\-\\.]+/g,\"\")                                 // Remove all non-word chars except dash and dot\n\t\t\t.replace(/\\-\\-+/g,\"-\")                                     // Replace multiple - with single -\n\t\t\t.replace(/^-+/,\"\")                                         // Trim - from start of text\n\t\t\t.replace(/-+$/,\"\");                                        // Trim - from end of text\n\t}\n\t// If the resulting slug is blank (eg because the title is just punctuation characters)\n\tif(!slug) {\n\t\t// ...then just use the character codes of the title\n\t\tvar result = [];\n\t\t$tw.utils.each(title.split(\"\"),function(char) {\n\t\t\tresult.push(char.charCodeAt(0).toString());\n\t\t});\n\t\tslug = result.join(\"-\");\n\t}\n\treturn slug;\n};\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "wikimethod"
        },
        "$:/palettes/Blanca": {
            "title": "$:/palettes/Blanca",
            "name": "Blanca",
            "description": "A clean white palette to let you focus",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #66cccc\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #ffffff\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #7897f3\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ccc\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #ffffff\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #7897f3\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #eeeeee\ntab-border-selected: #cccccc\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ffeedd\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: #eee\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #ff9900\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/Blue": {
            "title": "$:/palettes/Blue",
            "name": "Blue",
            "description": "A blue theme",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #fff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333353\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #ddddff\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ffffff\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #5959c0\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: #ccccdd\ntab-border-selected: #ccccdd\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #eeeeff\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #666666\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #ffffff\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #ffffff\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #5959c0\ntoolbar-new-button: #5eb95e\ntoolbar-options-button: rgb(128, 88, 165)\ntoolbar-save-button: #0e90d2\ntoolbar-info-button: #0e90d2\ntoolbar-edit-button: rgb(243, 123, 29)\ntoolbar-close-button: #dd514c\ntoolbar-delete-button: #dd514c\ntoolbar-cancel-button: rgb(243, 123, 29)\ntoolbar-done-button: #5eb95e\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/Muted": {
            "title": "$:/palettes/Muted",
            "name": "Muted",
            "description": "Bright tiddlers on a muted background",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #bbb\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #6f6f70\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #29a6ee\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #c2c1c2\nsidebar-foreground-shadow: rgba(255,255,255,0)\nsidebar-foreground: #d3d2d4\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #6f6f70\nsidebar-tab-background: #666667\nsidebar-tab-border-selected: #999\nsidebar-tab-border: #515151\nsidebar-tab-divider: #999\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: #999\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #d1d0d2\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #d5ad34\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/ContrastLight": {
            "title": "$:/palettes/ContrastLight",
            "name": "Contrast (Light)",
            "description": "High contrast and unambiguous (light version)",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #f00\nalert-border: <<colour background>>\nalert-highlight: <<colour foreground>>\nalert-muted-foreground: #800\nbackground: #fff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: <<colour background>>\nbutton-foreground: <<colour foreground>>\nbutton-border: <<colour foreground>>\ncode-background: <<colour background>>\ncode-border: <<colour foreground>>\ncode-foreground: <<colour foreground>>\ndirty-indicator: #f00\ndownload-background: #080\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: <<colour foreground>>\ndropdown-tab-background: <<colour foreground>>\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #00a\nexternal-link-foreground: #00e\nforeground: #000\nmessage-background: <<colour foreground>>\nmessage-border: <<colour background>>\nmessage-foreground: <<colour background>>\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour foreground>>\nmodal-header-border: <<colour foreground>>\nmuted-foreground: <<colour foreground>>\nnotification-background: <<colour background>>\nnotification-border: <<colour foreground>>\npage-background: <<colour background>>\npre-background: <<colour background>>\npre-border: <<colour foreground>>\nprimary: #00f\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: <<colour background>>\nsidebar-controls-foreground: <<colour foreground>>\nsidebar-foreground-shadow: rgba(0,0,0, 0)\nsidebar-foreground: <<colour foreground>>\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: <<colour foreground>>\nsidebar-tab-background-selected: <<colour background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: <<colour foreground>>\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: <<colour foreground>>\nsidebar-tiddler-link-foreground: <<colour primary>>\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: <<colour foreground>>\ntab-border-selected: <<colour foreground>>\ntab-border: <<colour foreground>>\ntab-divider: <<colour foreground>>\ntab-foreground-selected: <<colour foreground>>\ntab-foreground: <<colour background>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #000\ntag-foreground: #fff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour foreground>>\ntiddler-controls-foreground-hover: #ddd\ntiddler-controls-foreground-selected: #fdd\ntiddler-controls-foreground: <<colour foreground>>\ntiddler-editor-background: <<colour background>>\ntiddler-editor-border-image: <<colour foreground>>\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: <<colour background>>\ntiddler-editor-fields-odd: <<colour background>>\ntiddler-info-background: <<colour background>>\ntiddler-info-border: <<colour foreground>>\ntiddler-info-tab-background: <<colour background>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour foreground>>\ntiddler-title-foreground: <<colour foreground>>\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour foreground>>\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/ContrastDark": {
            "title": "$:/palettes/ContrastDark",
            "name": "Contrast (Dark)",
            "description": "High contrast and unambiguous (dark version)",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #f00\nalert-border: <<colour background>>\nalert-highlight: <<colour foreground>>\nalert-muted-foreground: #800\nbackground: #000\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: <<colour background>>\nbutton-foreground: <<colour foreground>>\nbutton-border: <<colour foreground>>\ncode-background: <<colour background>>\ncode-border: <<colour foreground>>\ncode-foreground: <<colour foreground>>\ndirty-indicator: #f00\ndownload-background: #080\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: <<colour foreground>>\ndropdown-tab-background: <<colour foreground>>\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #00a\nexternal-link-foreground: #00e\nforeground: #fff\nmessage-background: <<colour foreground>>\nmessage-border: <<colour background>>\nmessage-foreground: <<colour background>>\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour foreground>>\nmodal-header-border: <<colour foreground>>\nmuted-foreground: <<colour foreground>>\nnotification-background: <<colour background>>\nnotification-border: <<colour foreground>>\npage-background: <<colour background>>\npre-background: <<colour background>>\npre-border: <<colour foreground>>\nprimary: #00f\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: <<colour background>>\nsidebar-controls-foreground: <<colour foreground>>\nsidebar-foreground-shadow: rgba(0,0,0, 0)\nsidebar-foreground: <<colour foreground>>\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: <<colour foreground>>\nsidebar-tab-background-selected: <<colour background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: <<colour foreground>>\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: <<colour foreground>>\nsidebar-tiddler-link-foreground: <<colour primary>>\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: <<colour foreground>>\ntab-border-selected: <<colour foreground>>\ntab-border: <<colour foreground>>\ntab-divider: <<colour foreground>>\ntab-foreground-selected: <<colour foreground>>\ntab-foreground: <<colour background>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #fff\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour foreground>>\ntiddler-controls-foreground-hover: #ddd\ntiddler-controls-foreground-selected: #fdd\ntiddler-controls-foreground: <<colour foreground>>\ntiddler-editor-background: <<colour background>>\ntiddler-editor-border-image: <<colour foreground>>\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: <<colour background>>\ntiddler-editor-fields-odd: <<colour background>>\ntiddler-info-background: <<colour background>>\ntiddler-info-border: <<colour foreground>>\ntiddler-info-tab-background: <<colour background>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour foreground>>\ntiddler-title-foreground: <<colour foreground>>\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour foreground>>\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/CupertinoDark": {
            "title": "$:/palettes/CupertinoDark",
            "tags": "$:/tags/Palette",
            "name": "Cupertino Dark",
            "description": "A macOS inspired dark palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #FF453A\nalert-border: #FF453A\nalert-highlight: #FFD60A\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #282828\nblockquote-bar: <<colour page-background>>\nbutton-foreground: <<colour background>>\ncode-background: <<colour pre-background>>\ncode-border: <<colour pre-border>>\ncode-foreground: rgba(255, 255, 255, 0.54)\ndirty-indicator: #FF453A\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour tiddler-info-background>>\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: #3F638B\ndropdown-tab-background: #323232\ndropzone-background: #30D158\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: #BF5AF2\nexternal-link-foreground: #32D74B\nforeground: #FFFFFF\nmenubar-background: #464646\nmenubar-foreground: #ffffff\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(255, 255, 255, 0.54)\nmodal-backdrop: <<colour page-background>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour background>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: #98989D\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #323232\npre-background: #464646\npre-border: transparent\nprimary: #0A84FF\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour background>>\nsidebar-controls-foreground-hover: #FF9F0A\nsidebar-controls-foreground: #8E8E93\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground-hover: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground: rgba(255, 255, 255, 0.38)\nsidebar-tab-background-selected: #3F638B\nsidebar-tab-background: <<colour background>>\nsidebar-tab-border-selected: <<colour background>>\nsidebar-tab-border: <<colour background>>\nsidebar-tab-divider: <<colour background>>\nsidebar-tab-foreground-selected: rgba(255, 255, 255, 0.87)\nsidebar-tab-foreground: rgba(255, 255, 255, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(255, 255, 255, 0.7)\nsidebar-tiddler-link-foreground: rgba(255, 255, 255, 0.54)\nsite-title-foreground: #ffffff\nstatic-alert-foreground: #B4B4B4\ntab-background-selected: #3F638B\ntab-background: <<colour page-background>>\ntab-border-selected: <<colour page-background>>\ntab-border: <<colour page-background>>\ntab-divider: <<colour page-background>>\ntab-foreground-selected: rgba(255, 255, 255, 0.87)\ntab-foreground: rgba(255, 255, 255, 0.54)\ntable-border: #464646\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #48484A\ntag-foreground: #323232\ntiddler-background: <<colour background>>\ntiddler-border: transparent\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: #48484A\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: rgba(255, 255, 255, 0.08)\ntiddler-editor-fields-even: rgba(255, 255, 255, 0.1)\ntiddler-editor-fields-odd: rgba(255, 255, 255, 0.04)\ntiddler-info-background: #1E1E1E\ntiddler-info-border: #1E1E1E\ntiddler-info-tab-background: #3F638B\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #FFFFFF\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour very-muted-foreground>>\nvery-muted-foreground: #464646\nselection-background: #3F638B\nselection-foreground: #ffffff\nwikilist-background: <<colour page-background>>\nwikilist-button-background: #3F638B\nwikilist-button-foreground: <<colour foreground>>\nwikilist-button-open: #32D74B\nwikilist-button-open-hover: #32D74B\nwikilist-button-reveal: #0A84FF\nwikilist-button-reveal-hover: #0A84FF\nwikilist-button-remove: #FF453A\nwikilist-button-remove-hover: #FF453A\nwikilist-droplink-dragover: #32D74B\nwikilist-item: <<colour background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-title: <<colour foreground>>\nwikilist-title-svg: <<colour foreground>>\nwikilist-toolbar-foreground: <<colour foreground>>\nwikilist-url: <<colour muted-foreground>>\n"
        },
        "$:/palettes/DarkPhotos": {
            "title": "$:/palettes/DarkPhotos",
            "created": "20150402111612188",
            "description": "Good with dark photo backgrounds",
            "modified": "20150402112344080",
            "name": "DarkPhotos",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: \nbutton-foreground: \nbutton-border: \ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #ddd\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #336438\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #ccf\nsidebar-controls-foreground: #fff\nsidebar-foreground-shadow: rgba(0,0,0, 0.5)\nsidebar-foreground: #fff\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #eee\nsidebar-tab-background-selected: rgba(255,255,255, 0.8)\nsidebar-tab-background: rgba(255,255,255, 0.4)\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: rgba(255,255,255, 0.2)\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #aaf\nsidebar-tiddler-link-foreground: #ddf\nsite-title-foreground: #fff\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ec6\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/DesertSand": {
            "title": "$:/palettes/DesertSand",
            "tags": "$:/tags/Palette",
            "name": "Desert Sand",
            "description": "A desert sand palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #E9E0C7\nblockquote-bar: <<colour muted-foreground>>\nbutton-foreground: <<colour foreground>>\ncode-background: #F3EDDF\ncode-border: #C3BAA1\ncode-foreground: #ab3250\ndiff-delete-background: #bd8b8b\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #91c093\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #ad3434\ndownload-background: #6ca16c\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #E9E0C7\ndropdown-tab-background: #BAB29C\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #313163\nexternal-link-foreground: #555592\nforeground: #2D2A23\nmenubar-background: #CDC2A6\nmenubar-foreground: #5A5446\nmessage-background: #ECE5CF\nmessage-border: #D6CBAA\nmessage-foreground: #5f6e7d\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #8A8885\nmodal-footer-background: #CDC2A6\nmodal-footer-border: #9D998E\nmodal-header-border: #9D998E\nmuted-foreground: #9D998E\nnotification-background: #F0E9D7\nnotification-border: #939189\npage-background: #e0d3af\npre-background: #D6CBAA\npre-border: #CDC2A6\nprimary: #5B6F55\nselection-background: #9D947B\nselection-foreground: <<colour foreground>>\nselect-tag-background: #F0E9D7\nselect-tag-foreground: #2D2A23\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #2D2A23\nsidebar-controls-foreground: #867F69\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #867F69\nsidebar-muted-foreground-hover: #706A58\nsidebar-muted-foreground: #B3A98C\nsidebar-tab-background-selected: #e0d3af\nsidebar-tab-background: #A6A193\nsidebar-tab-border-selected: #C3BAA1\nsidebar-tab-border: #C3BAA1\nsidebar-tab-divider: #CDC2A6\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: #2D2A23\nsidebar-tiddler-link-foreground-hover: #433F35\nsidebar-tiddler-link-foreground: #706A58\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #A6A193\ntab-background-selected: #E9E0C7\ntab-background: #A6A193\ntab-border-selected: #C3BAA1\ntab-border: #C3BAA1\ntab-divider: #CDC2A6\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #2D2A23\ntable-border: #9D998E\ntable-footer-background: #8A8885\ntable-header-background: #B0AA98\ntag-background: #706A58\ntag-foreground: #E3D7B7\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #9D947B\ntiddler-controls-foreground-selected: #706A58\ntiddler-controls-foreground: #C3BAA1\ntiddler-editor-background: #E9E0C7\ntiddler-editor-border-image: #A6A193\ntiddler-editor-border: #A6A193\ntiddler-editor-fields-even: #D6CBAA\ntiddler-editor-fields-odd: #C3BAA1\ntiddler-info-background: #E3D7B7\ntiddler-info-border: #BAB29C\ntiddler-info-tab-background: #E9E0C7\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #867F69\ntiddler-title-foreground: #374464\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #8A8885\nvery-muted-foreground: #CDC2A6\nwikilist-background: <<colour page-background>>\nwikilist-item: #CDC2A6\nwikilist-info: #161512\nwikilist-title: #433F35\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: #706A58\nwikilist-button-open: #7db66a\nwikilist-button-open-hover: #56a556\nwikilist-button-reveal: #5a6c9e\nwikilist-button-reveal-hover: #454591\nwikilist-button-remove: #bc5972\nwikilist-button-remove-hover: #814040\nwikilist-toolbar-background: #CDC2A6\nwikilist-toolbar-foreground: #2D2A23\nwikilist-droplink-dragover: rgba(255,192,192,0.5)\nwikilist-button-background: #A6A193\nwikilist-button-foreground: #161512\n"
        },
        "$:/palettes/GruvboxDark": {
            "title": "$:/palettes/GruvboxDark",
            "name": "Gruvbox Dark",
            "description": "Retro groove color scheme",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "license": "https://github.com/morhetz/gruvbox",
            "text": "alert-background: #cc241d\nalert-border: #cc241d\nalert-highlight: #d79921\nalert-muted-foreground: #504945\nbackground: #3c3836\nblockquote-bar: <<colour muted-foreground>>\nbutton-foreground: <<colour page-background>>\ncode-background: #504945\ncode-border: #504945\ncode-foreground: #fb4934\ndiff-delete-background: #fb4934\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #b8bb26\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #fb4934\ndownload-background: #b8bb26\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #665c54\ndropdown-border: <<colour background>>\ndropdown-tab-background-selected: #ebdbb2\ndropdown-tab-background: #665c54\ndropzone-background: #98971a\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #d3869b\nexternal-link-foreground: #8ec07c\nforeground: #fbf1c7\nmenubar-background: #504945\nmenubar-foreground: <<colour foreground>>\nmessage-background: #83a598\nmessage-border: #83a598\nmessage-foreground: #3c3836\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #504945\nmodal-footer-background: #3c3836\nmodal-footer-border: #3c3836\nmodal-header-border: #3c3836\nmuted-foreground: #d5c4a1\nnotification-background: <<colour primary>>\nnotification-border: <<colour primary>>\npage-background: #282828\npre-background: #504945\npre-border: #504945\nprimary: #d79921\nselect-tag-background: #665c54\nselect-tag-foreground: <<colour foreground>>\nselection-background: #458588\nselection-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour page-background>>\nsidebar-controls-foreground-hover: #7c6f64\nsidebar-controls-foreground: #504945\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #fbf1c7\nsidebar-muted-foreground-hover: #7c6f64\nsidebar-muted-foreground: #504945\nsidebar-tab-background-selected: #bdae93\nsidebar-tab-background: #3c3836\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: #bdae93\nsidebar-tab-divider: <<colour page-background>>\nsidebar-tab-foreground-selected: #282828\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #458588\nsidebar-tiddler-link-foreground: #98971a\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #B48EAD\ntab-background-selected: #ebdbb2\ntab-background: #665c54\ntab-border-selected: #665c54\ntab-border: #665c54\ntab-divider: #bdae93\ntab-foreground-selected: #282828\ntab-foreground: #ebdbb2\ntable-border: #7c6f64\ntable-footer-background: #665c54\ntable-header-background: #504945\ntag-background: #d3869b\ntag-foreground: #282828\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #7c6f64\ntiddler-controls-foreground-selected: <<colour primary>>\ntiddler-controls-foreground: #665c54\ntiddler-editor-background: #32302f\ntiddler-editor-border-image: #282828\ntiddler-editor-border: #282828\ntiddler-editor-fields-even: #504945\ntiddler-editor-fields-odd: #7c6f64\ntiddler-info-background: #32302f\ntiddler-info-border: #ebdbb2\ntiddler-info-tab-background: #ebdbb2\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #7c6f64\ntiddler-title-foreground: #a89984\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #504945\nvery-muted-foreground: #bdae93\nwikilist-background: <<colour page-background>>\nwikilist-button-background: #acacac\nwikilist-button-foreground: <<colour button-foreground>>\nwikilist-item: <<colour background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-toolbar-foreground: <<colour foreground>>\nwikilist-title: <<colour foreground>>\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: <<colour muted-foreground>>\nwikilist-button-open-hover: <<colour primary>>\nwikilist-button-open: <<colour dropzone-background>>\nwikilist-button-remove: <<colour dirty-indicator>>\nwikilist-button-remove-hover: <<colour alert-background>>\nwikilist-droplink-dragover: <<colour dropzone-background>>\nwikilist-button-reveal: <<colour sidebar-tiddler-link-foreground-hover>>\nwikilist-button-reveal-hover: <<colour message-background>>\n"
        },
        "$:/palettes/Nord": {
            "title": "$:/palettes/Nord",
            "name": "Nord",
            "description": "An arctic, north-bluish color palette.",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "license": "MIT, arcticicestudio, https://github.com/arcticicestudio/nord/blob/develop/LICENSE.md",
            "text": "alert-background: #D08770\nalert-border: #D08770\nalert-highlight: #B48EAD\nalert-muted-foreground: #4C566A\nbackground: #3b4252\nblockquote-bar: <<colour muted-foreground>>\nbutton-foreground: <<colour page-background>>\ncode-background: #2E3440\ncode-border: #2E3440\ncode-foreground: #BF616A\ndiff-delete-background: #BF616A\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #A3BE8C\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #BF616A\ndownload-background: #A3BE8C\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour background>>\ndropdown-tab-background-selected: #ECEFF4\ndropdown-tab-background: #4C566A\ndropzone-background: #A3BE8C\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #5E81AC\nexternal-link-foreground: #8FBCBB\nforeground: #d8dee9\nmenubar-background: #2E3440\nmenubar-foreground: #d8dee9\nmessage-background: #2E3440\nmessage-border: #2E3440\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #3b4252\nmodal-footer-background: #3b4252\nmodal-footer-border: #3b4252\nmodal-header-border: #3b4252\nmuted-foreground: #4C566A\nnotification-background: <<colour primary>>\nnotification-border: #EBCB8B\npage-background: #2e3440\npre-background: #2E3440\npre-border: #2E3440\nprimary: #5E81AC\nselect-tag-background: #3b4252\nselect-tag-foreground: <<colour foreground>>\nselection-background: #5E81AC\nselection-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour page-background>>\nsidebar-controls-foreground-hover: #D8DEE9\nsidebar-controls-foreground: #4C566A\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #D8DEE9\nsidebar-muted-foreground-hover: #4C566A\nsidebar-muted-foreground: #4C566A\nsidebar-tab-background-selected: #ECEFF4\nsidebar-tab-background: #4C566A\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: #4C566A\nsidebar-tab-divider: <<colour page-background>>\nsidebar-tab-foreground-selected: #4C566A\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #A3BE8C\nsidebar-tiddler-link-foreground: #81A1C1\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #B48EAD\ntab-background-selected: #ECEFF4\ntab-background: #4C566A\ntab-border-selected: #4C566A\ntab-border: #4C566A\ntab-divider: #4C566A\ntab-foreground-selected: #4C566A\ntab-foreground: #D8DEE9\ntable-border: #4C566A\ntable-footer-background: #2e3440\ntable-header-background: #2e3440\ntag-background: #A3BE8C\ntag-foreground: #4C566A\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: \ntiddler-controls-foreground-selected: #EBCB8B\ntiddler-controls-foreground: #4C566A\ntiddler-editor-background: #2e3440\ntiddler-editor-border-image: #2e3440\ntiddler-editor-border: #3b4252\ntiddler-editor-fields-even: #2e3440\ntiddler-editor-fields-odd: #2e3440\ntiddler-info-background: #2e3440\ntiddler-info-border: #2e3440\ntiddler-info-tab-background: #2e3440\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #4C566A\ntiddler-title-foreground: #81A1C1\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #2d3038\nvery-muted-foreground: #2d3038\nwikilist-background: <<colour page-background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-item: <<colour background>>\nwikilist-title: <<colour foreground>>\nwikilist-info: <<colour muted-foreground>>\nwikilist-button-open: #A3BE8C\nwikilist-button-open-hover: #A3BE8C\nwikilist-button-reveal: #81A1C1\nwikilist-button-reveal-hover: #81A1C1\nwikilist-button-remove: #B48EAD\nwikilist-button-remove-hover: #B48EAD\n"
        },
        "$:/palettes/Rocker": {
            "title": "$:/palettes/Rocker",
            "name": "Rocker",
            "description": "A dark theme",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #000\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #cc0000\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ffffff\nsidebar-foreground-shadow: rgba(255,255,255, 0.0)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #000\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #ffbb99\nsidebar-tiddler-link-foreground: #cc0000\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ffbb99\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #cc0000\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/SolarFlare": {
            "title": "$:/palettes/SolarFlare",
            "name": "Solar Flare",
            "description": "Warm, relaxing earth colours",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": ": Background Tones\n\nbase03: #002b36\nbase02: #073642\n\n: Content Tones\n\nbase01: #586e75\nbase00: #657b83\nbase0: #839496\nbase1: #93a1a1\n\n: Background Tones\n\nbase2: #eee8d5\nbase3: #fdf6e3\n\n: Accent Colors\n\nyellow: #b58900\norange: #cb4b16\nred: #dc322f\nmagenta: #d33682\nviolet: #6c71c4\nblue: #268bd2\ncyan: #2aa198\ngreen: #859900\n\n: Additional Tones (RA)\n\nbase10: #c0c4bb\nviolet-muted: #7c81b0\nblue-muted: #4e7baa\n\nyellow-hot: #ffcc44\norange-hot: #eb6d20\nred-hot: #ff2222\nblue-hot: #2298ee\ngreen-hot: #98ee22\n\n: Palette\n\n: Do not use colour macro for background and foreground\nbackground: #fdf6e3\n    download-foreground: <<colour background>>\n    dragger-foreground: <<colour background>>\n    dropdown-background: <<colour background>>\n    modal-background: <<colour background>>\n    sidebar-foreground-shadow: <<colour background>>\n    tiddler-background: <<colour background>>\n    tiddler-border: <<colour background>>\n    tiddler-link-background: <<colour background>>\n    tab-background-selected: <<colour background>>\n        dropdown-tab-background-selected: <<colour tab-background-selected>>\nforeground: #657b83\n    dragger-background: <<colour foreground>>\n    tab-foreground: <<colour foreground>>\n        tab-foreground-selected: <<colour tab-foreground>>\n            sidebar-tab-foreground-selected: <<colour tab-foreground-selected>>\n        sidebar-tab-foreground: <<colour tab-foreground>>\n    sidebar-button-foreground: <<colour foreground>>\n    sidebar-controls-foreground: <<colour foreground>>\n    sidebar-foreground: <<colour foreground>>\n: base03\n: base02\n: base01\n    alert-muted-foreground: <<colour base01>>\n: base00\n    code-foreground: <<colour base00>>\n    message-foreground: <<colour base00>>\n    tag-foreground: <<colour base00>>\n: base0\n    sidebar-tiddler-link-foreground: <<colour base0>>\n: base1\n    muted-foreground: <<colour base1>>\n        blockquote-bar: <<colour muted-foreground>>\n        dropdown-border: <<colour muted-foreground>>\n        sidebar-muted-foreground: <<colour muted-foreground>>\n        tiddler-title-foreground: <<colour muted-foreground>>\n            site-title-foreground: <<colour tiddler-title-foreground>>\n: base2\n    modal-footer-background: <<colour base2>>\n    page-background: <<colour base2>>\n        modal-backdrop: <<colour page-background>>\n        notification-background: <<colour page-background>>\n        code-background: <<colour page-background>>\n            code-border: <<colour code-background>>\n        pre-background: <<colour page-background>>\n            pre-border: <<colour pre-background>>\n        sidebar-tab-background-selected: <<colour page-background>>\n    table-header-background: <<colour base2>>\n    tag-background: <<colour base2>>\n    tiddler-editor-background: <<colour base2>>\n    tiddler-info-background: <<colour base2>>\n    tiddler-info-tab-background: <<colour base2>>\n    tab-background: <<colour base2>>\n        dropdown-tab-background: <<colour tab-background>>\n: base3\n    alert-background: <<colour base3>>\n    message-background: <<colour base3>>\n: yellow\n: orange\n: red\n: magenta\n    alert-highlight: <<colour magenta>>\n: violet\n    external-link-foreground: <<colour violet>>\n: blue\n: cyan\n: green\n: base10\n    tiddler-controls-foreground: <<colour base10>>\n: violet-muted\n    external-link-foreground-visited: <<colour violet-muted>>\n: blue-muted\n    primary: <<colour blue-muted>>\n        download-background: <<colour primary>>\n        tiddler-link-foreground: <<colour primary>>\n\nalert-border: #b99e2f\ndirty-indicator: #ff0000\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nmessage-border: #cfd6e6\nmodal-border: #999999\nselect-tag-background:\nselect-tag-foreground:\nsidebar-controls-foreground-hover:\nsidebar-muted-foreground-hover:\nsidebar-tab-background: #ded8c5\nsidebar-tiddler-link-foreground-hover:\nstatic-alert-foreground: #aaaaaa\ntab-border: #cccccc\n    modal-footer-border: <<colour tab-border>>\n    modal-header-border: <<colour tab-border>>\n    notification-border: <<colour tab-border>>\n    sidebar-tab-border: <<colour tab-border>>\n    tab-border-selected: <<colour tab-border>>\n        sidebar-tab-border-selected: <<colour tab-border-selected>>\ntab-divider: #d8d8d8\n    sidebar-tab-divider: <<colour tab-divider>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-border: #dddddd\ntiddler-subtitle-foreground: #c0c0c0\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/SolarizedDark": {
            "title": "$:/palettes/SolarizedDark",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "description": "Precision dark colors for machines and people",
            "license": "MIT, Ethan Schoonover, https://github.com/altercation/solarized/blob/master/LICENSE",
            "name": "SolarizedDark",
            "text": "alert-background: #073642\nalert-border: #93a1a1\nalert-highlight: #d33682\nalert-muted-foreground: #d33682\nbackground: #073642\nblockquote-bar: #d33682\nbutton-background: #073642\nbutton-border: #586e75\nbutton-foreground: #93a1a1\ncode-background: #073642\ncode-border: #586e75\ncode-foreground: #93a1a1\ndirty-indicator: inherit\ndownload-background: #859900\ndownload-foreground: #073642\ndragger-background: #073642\ndragger-foreground: #839496\ndropdown-background: #073642\ndropdown-border: #93a1a1\ndropdown-tab-background: #002b36\ndropdown-tab-background-selected: #073642\ndropzone-background: #859900\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: #268bd2\nexternal-link-foreground-hover:\nexternal-link-foreground-visited: #268bd2\nforeground: #839496\nmessage-background: #002b36\nmessage-border: #586e75\nmessage-foreground: #839496\nmodal-backdrop: #657b83\nmodal-background: #002b36\nmodal-border: #586e75\nmodal-footer-background: #073642\nmodal-footer-border: #586e75\nmodal-header-border: #586e75\nmuted-foreground: #93a1a1\nnotification-background: #002b36\nnotification-border: #586e75\npage-background: #073642\npre-background: inherit\npre-border: #657b83\nprimary: #859900\nselect-tag-background: #002b36\nselect-tag-foreground: #839496\nsidebar-button-foreground: #93a1a1\nsidebar-controls-foreground: #93a1a1\nsidebar-controls-foreground-hover: #eee8d5\nsidebar-foreground: #93a1a1\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: #839496\nsidebar-muted-foreground-hover: #93a1a1\nsidebar-tab-background: #002b36\nsidebar-tab-background-selected: #073642\nsidebar-tab-border: #073642\nsidebar-tab-border-selected: #839496\nsidebar-tab-divider: #002b36\nsidebar-tab-foreground: #657b83\nsidebar-tab-foreground-selected: #93a1a1\nsidebar-tiddler-link-foreground: #2aa198\nsidebar-tiddler-link-foreground-hover: #eee8d5\nsite-title-foreground: #d33682\nstatic-alert-foreground: #93a1a1\ntab-background: #073642\ntab-background-selected: #002b36\ntab-border: #586e75\ntab-border-selected: #93a1a1\ntab-divider: #93a1a1\ntab-foreground: #839496\ntab-foreground-selected: #93a1a1\ntable-border: #586e75\ntable-footer-background: #073642\ntable-header-background: #073642\ntag-background: #b58900\ntag-foreground: #002b36\ntiddler-background: #002b36\ntiddler-border: #586e75\ntiddler-controls-foreground: inherit\ntiddler-controls-foreground-hover: #d33682\ntiddler-controls-foreground-selected: #2aa198\ntiddler-editor-background: #002b36\ntiddler-editor-border: #073642\ntiddler-editor-border-image: #002b36\ntiddler-editor-fields-even: #002b36\ntiddler-editor-fields-odd: #073642\ntiddler-info-background: #073642\ntiddler-info-border: #657b83\ntiddler-info-tab-background: #002b36\ntiddler-link-background: #002b36\ntiddler-link-foreground: #2aa198\ntiddler-subtitle-foreground: #839496\ntiddler-title-foreground: #d33682\ntoolbar-cancel-button: #839496\ntoolbar-close-button: #839496\ntoolbar-delete-button: #dc322f\ntoolbar-done-button: #839496\ntoolbar-edit-button: #839496\ntoolbar-info-button: #839496\ntoolbar-new-button: #839496\ntoolbar-options-button: #839496\ntoolbar-save-button: inherit\nuntagged-background: #586e75\nvery-muted-foreground: #586e75\n"
        },
        "$:/palettes/SolarizedLight": {
            "title": "$:/palettes/SolarizedLight",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "description": "Precision colors for machines and people",
            "license": "MIT, Ethan Schoonover, https://github.com/altercation/solarized/blob/master/LICENSE",
            "name": "SolarizedLight",
            "text": "alert-background: #eee8d5\nalert-border: #586e75\nalert-highlight: #d33682\nalert-muted-foreground: #d33682\nbackground: #eee8d5\nblockquote-bar: #d33682\nbutton-background: #eee8d5\nbutton-border: #93a1a1\nbutton-foreground: #586e75\ncode-background: #eee8d5\ncode-border: #93a1a1\ncode-foreground: #586e75\ndirty-indicator: inherit\ndownload-background: #859900\ndownload-foreground: #eee8d5\ndragger-background: #eee8d5\ndragger-foreground: #657b83\ndropdown-background: #eee8d5\ndropdown-border: #586e75\ndropdown-tab-background: #fdf6e3\ndropdown-tab-background-selected: #eee8d5\ndropzone-background: #859900\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: #268bd2\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #268bd2\nforeground: #657b83\nmessage-background: #fdf6e3\nmessage-border: #93a1a1\nmessage-foreground: #657b83\nmodal-backdrop: #839496\nmodal-background: #fdf6e3\nmodal-border: #93a1a1\nmodal-footer-background: #eee8d5\nmodal-footer-border: #93a1a1\nmodal-header-border: #93a1a1\nmuted-foreground: #586e75\nnotification-background: #fdf6e3\nnotification-border: #93a1a1\npage-background: #eee8d5\npre-background: #eee8d5\npre-border: #839496\nprimary: #859900\nselect-tag-background: #fdf6e3\nselect-tag-foreground: #657b83\nsidebar-button-foreground: #586e75\nsidebar-controls-foreground: #586e75\nsidebar-controls-foreground-hover: #d33682\nsidebar-foreground: #586e75\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: #657b83\nsidebar-muted-foreground-hover: #586e75\nsidebar-tab-background: #fdf6e3\nsidebar-tab-background-selected: #eee8d5\nsidebar-tab-border: #eee8d5\nsidebar-tab-border-selected: #657b83\nsidebar-tab-divider: #fdf6e3\nsidebar-tab-foreground: #839496\nsidebar-tab-foreground-selected: #586e75\nsidebar-tiddler-link-foreground: #2aa198\nsidebar-tiddler-link-foreground-hover: #002b36\nsite-title-foreground: #d33682\nstatic-alert-foreground: #586e75\ntab-background: #eee8d5\ntab-background-selected: #fdf6e3\ntab-border: #93a1a1\ntab-border-selected: #586e75\ntab-divider: #586e75\ntab-foreground: #657b83\ntab-foreground-selected: #586e75\ntable-border: #93a1a1\ntable-footer-background: #eee8d5\ntable-header-background: #eee8d5\ntag-background: #b58900\ntag-foreground: #fdf6e3\ntiddler-background: #fdf6e3\ntiddler-border: #93a1a1\ntiddler-controls-foreground: inherit\ntiddler-controls-foreground-hover: #d33682\ntiddler-controls-foreground-selected: #2aa198\ntiddler-editor-background: #fdf6e3\ntiddler-editor-border: #eee8d5\ntiddler-editor-border-image: #fdf6e3\ntiddler-editor-fields-even: #fdf6e3\ntiddler-editor-fields-odd: #eee8d5\ntiddler-info-background: #eee8d5\ntiddler-info-border: #839496\ntiddler-info-tab-background: #fdf6e3\ntiddler-link-background: #fdf6e3\ntiddler-link-foreground: #2aa198\ntiddler-subtitle-foreground: #657b83\ntiddler-title-foreground: #d33682\ntoolbar-cancel-button: #657b83\ntoolbar-close-button: #657b83\ntoolbar-delete-button: #dc322f\ntoolbar-done-button: #657b83\ntoolbar-edit-button: #657b83\ntoolbar-info-button: #657b83\ntoolbar-new-button: #657b83\ntoolbar-options-button: #657b83\ntoolbar-save-button: inherit\nuntagged-background: #586e75\nvery-muted-foreground: #93a1a1\n"
        },
        "$:/palettes/SpartanDay": {
            "title": "$:/palettes/SpartanDay",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "description": "Cold, spartan day colors",
            "name": "Spartan Day",
            "text": "alert-background: <<colour background>>\nalert-border: <<colour very-muted-foreground>>\nalert-highlight: <<colour very-muted-foreground>>\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #FAFAFA\nblockquote-bar: <<colour page-background>>\nbutton-background: transparent\nbutton-foreground: inherit\nbutton-border: <<colour tag-background>>\ncode-background: #ececec\ncode-border: #ececec\ncode-foreground: \ndirty-indicator: #c80000\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #FFFFFF\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: <<colour dropdown-background>>\ndropdown-tab-background: #F5F5F5\ndropzone-background: <<colour tag-background>>\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: \nexternal-link-foreground: \nforeground: rgba(0, 0, 0, 0.87)\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(0, 0, 0, 0.54)\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour very-muted-foreground>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: rgba(0, 0, 0, 0.54)\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #f4f4f4\npre-background: #ececec\npre-border: #ececec\nprimary: #3949ab\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #aeaeae\nsidebar-controls-foreground: #c6c6c6\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(0, 0, 0, 0.54)\nsidebar-muted-foreground-hover: rgba(0, 0, 0, 0.54)\nsidebar-muted-foreground: rgba(0, 0, 0, 0.38)\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: transparent\nsidebar-tab-border-selected: <<colour table-border>>\nsidebar-tab-border: transparent\nsidebar-tab-divider: <<colour table-border>>\nsidebar-tab-foreground-selected: rgba(0, 0, 0, 0.87)\nsidebar-tab-foreground: rgba(0, 0, 0, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(0, 0, 0, 0.87)\nsidebar-tiddler-link-foreground: rgba(0, 0, 0, 0.54)\nsite-title-foreground: rgba(0, 0, 0, 0.87)\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: transparent\ntab-border-selected: <<colour table-border>>\ntab-border: transparent\ntab-divider: <<colour table-border>>\ntab-foreground-selected: rgba(0, 0, 0, 0.87)\ntab-foreground: rgba(0, 0, 0, 0.54)\ntable-border: #d8d8d8\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #ec6\ntag-foreground: <<colour button-foreground>>\ntiddler-background: <<colour background>>\ntiddler-border: #f9f9f9\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: <<colour sidebar-controls-foreground>>\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: #e8e7e7\ntiddler-editor-fields-even: rgba(0, 0, 0, 0.1)\ntiddler-editor-fields-odd: rgba(0, 0, 0, 0.04)\ntiddler-info-background: #F5F5F5\ntiddler-info-border: #F5F5F5\ntiddler-info-tab-background: <<colour tiddler-editor-fields-odd>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #000000\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour very-muted-foreground>>\nvery-muted-foreground: rgba(0, 0, 0, 0.12)\n"
        },
        "$:/palettes/SpartanNight": {
            "title": "$:/palettes/SpartanNight",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "description": "Dark spartan colors",
            "name": "Spartan Night",
            "text": "alert-background: <<colour background>>\nalert-border: <<colour very-muted-foreground>>\nalert-highlight: <<colour very-muted-foreground>>\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #303030\nblockquote-bar: <<colour page-background>>\nbutton-background: transparent\nbutton-foreground: inherit\nbutton-border: <<colour tag-background>>\ncode-background: <<colour pre-background>>\ncode-border: <<colour pre-border>>\ncode-foreground: rgba(255, 255, 255, 0.54)\ndirty-indicator: #c80000\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #424242\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: <<colour dropdown-background>>\ndropdown-tab-background: #050505\ndropzone-background: <<colour tag-background>>\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: #7c318c\nexternal-link-foreground: #9e3eb3\nforeground: rgba(255, 255, 255, 0.7)\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(255, 255, 255, 0.54)\nmodal-backdrop: <<colour page-background>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour background>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: rgba(255, 255, 255, 0.54)\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #212121\npre-background: #2a2a2a\npre-border: transparent\nprimary: #5656f3\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #494949\nsidebar-controls-foreground: #5d5d5d\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground-hover: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground: rgba(255, 255, 255, 0.38)\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: transparent\nsidebar-tab-border-selected: <<colour table-border>>\nsidebar-tab-border: transparent\nsidebar-tab-divider: <<colour table-border>>\nsidebar-tab-foreground-selected: rgba(255, 255, 255, 0.87)\nsidebar-tab-foreground: rgba(255, 255, 255, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(255, 255, 255, 0.7)\nsidebar-tiddler-link-foreground: rgba(255, 255, 255, 0.54)\nsite-title-foreground: rgba(255, 255, 255, 0.7)\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: transparent\ntab-border-selected: <<colour table-border>>\ntab-border: transparent\ntab-divider: <<colour table-border>>\ntab-foreground-selected: rgba(255, 255, 255, 0.87)\ntab-foreground: rgba(255, 255, 255, 0.54)\ntable-border: #3a3a3a\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #ec6\ntag-foreground: <<colour button-foreground>>\ntiddler-background: <<colour background>>\ntiddler-border: rgb(55,55,55)\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: <<colour sidebar-controls-foreground>>\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: rgba(255, 255, 255, 0.08)\ntiddler-editor-fields-even: rgba(255, 255, 255, 0.1)\ntiddler-editor-fields-odd: rgba(255, 255, 255, 0.04)\ntiddler-info-background: #454545\ntiddler-info-border: #454545\ntiddler-info-tab-background: <<colour tiddler-editor-fields-odd>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #FFFFFF\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour very-muted-foreground>>\nvery-muted-foreground: rgba(255, 255, 255, 0.12)\n"
        },
        "$:/palettes/Twilight": {
            "title": "$:/palettes/Twilight",
            "tags": "$:/tags/Palette",
            "author": "Thomas Elmiger",
            "type": "application/x-tiddler-dictionary",
            "name": "Twilight",
            "description": "Delightful, soft darkness.",
            "text": "alert-background: rgb(255, 255, 102)\nalert-border: rgb(232, 232, 125)\nalert-highlight: rgb(255, 51, 51)\nalert-muted-foreground: rgb(224, 82, 82)\nbackground: rgb(38, 38, 38)\nblockquote-bar: rgba(240, 196, 117, 0.7)\nbutton-background: rgb(63, 63, 63)\nbutton-border: rgb(127, 127, 127)\nbutton-foreground: rgb(179, 179, 179)\ncode-background: rgba(0,0,0,0.03)\ncode-border: rgba(0,0,0,0.08)\ncode-foreground: rgb(255, 94, 94)\ndiff-delete-background: #ffc9c9\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #aaefad\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: rgb(255, 94, 94)\ndownload-background: #19a974\ndownload-foreground: rgb(38, 38, 38)\ndragger-background: rgb(179, 179, 179)\ndragger-foreground: rgb(38, 38, 38)\ndropdown-background: rgb(38, 38, 38)\ndropdown-border: rgb(255, 255, 255)\ndropdown-tab-background: rgba(0,0,0,.1)\ndropdown-tab-background-selected: rgba(255,255,255,1)\ndropzone-background: #9eebcf\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: rgb(179, 179, 255)\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: rgb(153, 153, 255)\nforeground: rgb(179, 179, 179)\nmessage-background: <<colour tag-foreground>>\nmessage-border: #96ccff\nmessage-foreground: <<colour tag-background>>\nmodal-backdrop: rgb(179, 179, 179)\nmodal-background: rgb(38, 38, 38)\nmodal-border: rgba(0,0,0,.5)\nmodal-footer-background: #f4f4f4\nmodal-footer-border: rgba(0,0,0,.1)\nmodal-header-border: rgba(0,0,0,.2)\nmuted-foreground: rgb(255, 255, 255)\nnotification-background: <<colour tag-foreground>>\nnotification-border: <<colour tag-background>>\npage-background: rgb(26, 26, 26)\npre-background: rgb(25, 25, 25)\npre-border: rgba(0,0,0,.2)\nprimary: rgb(255, 201, 102)\nselect-tag-background: \nselect-tag-foreground: \nsidebar-button-foreground: rgb(179, 179, 179)\nsidebar-controls-foreground: rgb(153, 153, 153)\nsidebar-controls-foreground-hover: <<colour tiddler-controls-foreground-hover>>\nsidebar-foreground: rgb(141, 141, 141)\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: rgba(0, 0, 0, 0.5)\nsidebar-muted-foreground-hover: rgb(141, 141, 141)\nsidebar-tab-background: rgba(141, 141, 141, 0.2)\nsidebar-tab-background-selected: rgb(26, 26, 26)\nsidebar-tab-border: rgb(127, 127, 127)\nsidebar-tab-border-selected: rgb(127, 127, 127)\nsidebar-tab-divider: rgb(127, 127, 127)\nsidebar-tab-foreground: rgb(179, 179, 179)\nsidebar-tab-foreground-selected: rgb(179, 179, 179)\nsidebar-tiddler-link-foreground: rgb(179, 179, 179)\nsidebar-tiddler-link-foreground-hover: rgb(115, 115, 115)\nsite-title-foreground: rgb(255, 201, 102)\nstatic-alert-foreground: rgba(0,0,0,.3)\ntab-background: rgba(0,0,0,0.125)\ntab-background-selected: rgb(38, 38, 38)\ntab-border: rgb(255, 201, 102)\ntab-border-selected: rgb(255, 201, 102)\ntab-divider: rgb(255, 201, 102)\ntab-foreground: rgb(179, 179, 179)\ntab-foreground-selected: rgb(179, 179, 179)\ntable-border: rgba(255,255,255,.3)\ntable-footer-background: rgba(0,0,0,.4)\ntable-header-background: rgba(0,0,0,.1)\ntag-background: rgb(255, 201, 102)\ntag-foreground: rgb(25, 25, 25)\ntiddler-background: rgb(38, 38, 38)\ntiddler-border: rgba(240, 196, 117, 0.7)\ntiddler-controls-foreground: rgb(128, 128, 128)\ntiddler-controls-foreground-hover: rgba(255, 255, 255, 0.8)\ntiddler-controls-foreground-selected: rgba(255, 255, 255, 0.9)\ntiddler-editor-background: rgb(33, 33, 33)\ntiddler-editor-border: rgb(63, 63, 63)\ntiddler-editor-border-image: rgb(25, 25, 25)\ntiddler-editor-fields-even: rgb(33, 33, 33)\ntiddler-editor-fields-odd: rgb(28, 28, 28)\ntiddler-info-background: rgb(43, 43, 43)\ntiddler-info-border: rgb(25, 25, 25)\ntiddler-info-tab-background: rgb(43, 43, 43)\ntiddler-link-background: rgb(38, 38, 38)\ntiddler-link-foreground: rgb(204, 204, 255)\ntiddler-subtitle-foreground: rgb(255, 255, 255)\ntiddler-title-foreground: rgb(255, 192, 76)\ntoolbar-cancel-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-done-button: \ntoolbar-edit-button: \ntoolbar-info-button: \ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \nuntagged-background: rgb(255, 255, 255)\nvery-muted-foreground: rgba(240, 196, 117, 0.7)\n"
        },
        "$:/palettes/Vanilla": {
            "title": "$:/palettes/Vanilla",
            "name": "Vanilla",
            "description": "Pale and unobtrusive",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndiff-delete-background: #ffc9c9\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #aaefad\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #bbb\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #f4f4f4\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nselection-background:\nselection-foreground:\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #aaaaaa\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #f4f4f4\nsidebar-tab-background: #e0e0e0\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: #e4e4e4\nsidebar-tab-foreground-selected:\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #999999\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ec6\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\nwikilist-background: #e5e5e5\nwikilist-item: #fff\nwikilist-info: #000\nwikilist-title: #666\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: #aaa\nwikilist-button-open: #4fb82b\nwikilist-button-open-hover: green\nwikilist-button-reveal: #5778d8\nwikilist-button-reveal-hover: blue\nwikilist-button-remove: #d85778\nwikilist-button-remove-hover: red\nwikilist-toolbar-background: #d3d3d3\nwikilist-toolbar-foreground: #888\nwikilist-droplink-dragover: rgba(255,192,192,0.5)\nwikilist-button-background: #acacac\nwikilist-button-foreground: #000\n"
        },
        "$:/core/readme": {
            "title": "$:/core/readme",
            "text": "This plugin contains TiddlyWiki's core components, comprising:\n\n* JavaScript code modules\n* Icons\n* Templates needed to create TiddlyWiki's user interface\n* British English (''en-GB'') translations of the localisable strings used by the core\n"
        },
        "$:/library/sjcl.js/license": {
            "title": "$:/library/sjcl.js/license",
            "type": "text/plain",
            "text": "SJCL is open. You can use, modify and redistribute it under a BSD\nlicense or under the GNU GPL, version 2.0.\n\n---------------------------------------------------------------------\n\nhttp://opensource.org/licenses/BSD-2-Clause\n\nCopyright (c) 2009-2015, Emily Stark, Mike Hamburg and Dan Boneh at\nStanford University. All rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are\nmet:\n\n1. Redistributions of source code must retain the above copyright\nnotice, this list of conditions and the following disclaimer.\n\n2. Redistributions in binary form must reproduce the above copyright\nnotice, this list of conditions and the following disclaimer in the\ndocumentation and/or other materials provided with the distribution.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\nIS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED\nTO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A\nPARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\nHOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\nSPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED\nTO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\nPROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF\nLIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\nNEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n---------------------------------------------------------------------\n\nhttp://opensource.org/licenses/GPL-2.0\n\nThe Stanford Javascript Crypto Library (hosted here on GitHub) is a\nproject by the Stanford Computer Security Lab to build a secure,\npowerful, fast, small, easy-to-use, cross-browser library for\ncryptography in Javascript.\n\nCopyright (c) 2009-2015, Emily Stark, Mike Hamburg and Dan Boneh at\nStanford University.\n\nThis program is free software; you can redistribute it and/or modify it\nunder the terms of the GNU General Public License as published by the\nFree Software Foundation; either version 2 of the License, or (at your\noption) any later version.\n\nThis program is distributed in the hope that it will be useful, but\nWITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General\nPublic License for more details.\n\nYou should have received a copy of the GNU General Public License along\nwith this program; if not, write to the Free Software Foundation, Inc.,\n59 Temple Place, Suite 330, Boston, MA 02111-1307 USA"
        },
        "$:/core/templates/MOTW.html": {
            "title": "$:/core/templates/MOTW.html",
            "text": "\\rules only filteredtranscludeinline transcludeinline entity\n<!-- The following comment is called a MOTW comment and is necessary for the TiddlyIE Internet Explorer extension -->\n<!-- saved from url=(0021)https://tiddlywiki.com -->&#13;&#10;"
        },
        "$:/core/templates/alltiddlers.template.html": {
            "title": "$:/core/templates/alltiddlers.template.html",
            "type": "text/vnd.tiddlywiki-html",
            "text": "<!-- This template is provided for backwards compatibility with older versions of TiddlyWiki -->\n\n<$set name=\"exportFilter\" value=\"[!is[system]sort[title]]\">\n\n{{$:/core/templates/exporters/StaticRiver}}\n\n</$set>\n"
        },
        "$:/core/templates/canonical-uri-external-image": {
            "title": "$:/core/templates/canonical-uri-external-image",
            "text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external images.\n\nChange the `./images/` part to a different base URI. The URI can be relative or absolute.\n\n-->\n./images/<$view field=\"title\" format=\"doubleurlencoded\"/>"
        },
        "$:/core/templates/canonical-uri-external-raw": {
            "title": "$:/core/templates/canonical-uri-external-raw",
            "text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external raw files that are stored in the same directory\n\n-->\n<$view field=\"title\" format=\"doubleurlencoded\"/>"
        },
        "$:/core/templates/canonical-uri-external-text": {
            "title": "$:/core/templates/canonical-uri-external-text",
            "text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external text files.\n\nChange the `./text/` part to a different base URI. The URI can be relative or absolute.\n\n-->\n./text/<$view field=\"title\" format=\"doubleurlencoded\"/>.tid"
        },
        "$:/core/templates/css-tiddler": {
            "title": "$:/core/templates/css-tiddler",
            "text": "<!--\n\nThis template is used for saving CSS tiddlers as a style tag with data attributes representing the tiddler fields.\n\n-->`<style`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/css\">`<$view field=\"text\" format=\"text\" />`</style>`"
        },
        "$:/core/templates/exporters/CsvFile": {
            "title": "$:/core/templates/exporters/CsvFile",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/CsvFile}}",
            "extension": ".csv",
            "text": "<$macrocall $name=\"csvtiddlers\" filter=<<exportFilter>> format=\"quoted-comma-sep\" $output=\"text/raw\"/>\n"
        },
        "$:/core/templates/exporters/JsonFile": {
            "title": "$:/core/templates/exporters/JsonFile",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/JsonFile}}",
            "extension": ".json",
            "text": "<$macrocall $name=\"jsontiddlers\" filter=<<exportFilter>> $output=\"text/raw\"/>\n"
        },
        "$:/core/templates/exporters/StaticRiver": {
            "title": "$:/core/templates/exporters/StaticRiver",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/StaticRiver}}",
            "extension": ".html",
            "text": "\\define tv-wikilink-template() #$uri_encoded$\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<style type=\"text/css\">\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n</style>\n</head>\n<body class=\"tc-body\">\n{{$:/StaticBanner||$:/core/templates/html-tiddler}}\n<section class=\"tc-story-river tc-static-story-river\">\n{{$:/core/templates/exporters/StaticRiver/Content||$:/core/templates/html-tiddler}}\n</section>\n</body>\n</html>\n"
        },
        "$:/core/templates/exporters/StaticRiver/Content": {
            "title": "$:/core/templates/exporters/StaticRiver/Content",
            "text": "\\define renderContent()\n{{{ $(exportFilter)$ ||$:/core/templates/static-tiddler}}}\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<<renderContent>>\n"
        },
        "$:/core/templates/exporters/TidFile": {
            "title": "$:/core/templates/exporters/TidFile",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/TidFile}}",
            "extension": ".tid",
            "condition": "[<count>compare:lte[1]]",
            "text": "\\define renderContent()\n{{{ $(exportFilter)$ +[limit[1]] ||$:/core/templates/tid-tiddler}}}\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<<renderContent>>"
        },
        "$:/core/save/all-external-js": {
            "title": "$:/core/save/all-external-js",
            "text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/core]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$\n\\end\n{{$:/core/templates/tiddlywiki5-external-js.html}}\n"
        },
        "$:/core/templates/tiddlywiki5.js": {
            "title": "$:/core/templates/tiddlywiki5.js",
            "text": "\\rules only filteredtranscludeinline transcludeinline codeinline\n\n/*\n{{ $:/core/copyright.txt ||$:/core/templates/plain-text-tiddler}}\n`*/\n`<!--~~ Library modules ~~-->\n{{{ [is[system]type[application/javascript]library[yes]] ||$:/core/templates/plain-text-tiddler}}}\n<!--~~ Boot prefix ~~-->\n{{ $:/boot/bootprefix.js ||$:/core/templates/plain-text-tiddler}}\n<!--~~ Core plugin ~~-->\n{{$:/core/templates/tiddlywiki5.js/tiddlers}}\n<!--~~ Boot kernel ~~-->\n{{ $:/boot/boot.js ||$:/core/templates/plain-text-tiddler}}\n"
        },
        "$:/core/templates/tiddlywiki5.js/tiddlers": {
            "title": "$:/core/templates/tiddlywiki5.js/tiddlers",
            "text": "`\n$tw.preloadTiddlerArray(`<$text text=<<jsontiddlers \"[[$:/core]]\">>/>`);\n`\n"
        },
        "$:/core/templates/tiddlywiki5-external-js.html": {
            "title": "$:/core/templates/tiddlywiki5-external-js.html",
            "text": "\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n{{$:/core/templates/MOTW.html}}<html lang=\"`<$text text={{{ [{$:/language}get[name]] }}}/>`\">\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<!--~~ Raw markup for the top of the head section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/TopHead]] ||$:/core/templates/raw-static-tiddler}}}\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>\n<meta name=\"application-name\" content=\"TiddlyWiki\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\" />\n<meta name=\"copyright\" content=\"{{$:/core/copyright.txt}}\" />\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<!--~~ This is a Tiddlywiki file. The points of interest in the file are marked with this pattern ~~-->\n\n<!--~~ Raw markup ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/core/wiki/rawmarkup]] [all[shadows+tiddlers]tag[$:/tags/RawMarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified]] ||$:/core/templates/raw-static-tiddler}}}\n</head>\n<body class=\"tc-body\">\n<!--~~ Raw markup for the top of the body section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/TopBody]] ||$:/core/templates/raw-static-tiddler}}}\n<!--~~ Static styles ~~-->\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<!--~~ Static content for Google and browsers without JavaScript ~~-->\n<noscript>\n<div id=\"splashArea\">\n{{$:/core/templates/static.area}}\n</div>\n</noscript>\n<!--~~ Ordinary tiddlers ~~-->\n{{$:/core/templates/store.area.template.html}}\n<!--~~ Raw markup for the bottom of the body section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/BottomBody]] ||$:/core/templates/raw-static-tiddler}}}\n</body>\n<script src=\"%24%3A%2Fcore%2Ftemplates%2Ftiddlywiki5.js\" onerror=\"alert('Error: Cannot load tiddlywiki.js');\"></script>\n</html>\n"
        },
        "$:/core/templates/html-div-skinny-tiddler": {
            "title": "$:/core/templates/html-div-skinny-tiddler",
            "text": "<!--\n\nThis template is a variant of $:/core/templates/html-div-tiddler used for saving skinny tiddlers (with no text field)\n\n-->`<div`<$fields template=' $name$=\"$encoded_value$\"'></$fields>`>\n<pre></pre>\n</div>`\n"
        },
        "$:/core/templates/html-div-tiddler": {
            "title": "$:/core/templates/html-div-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as an HTML DIV tag with attributes representing the tiddler fields.\n\n-->`<div`<$fields template=' $name$=\"$encoded_value$\"'></$fields>`>\n<pre>`<$view field=\"text\" format=\"htmlencoded\" />`</pre>\n</div>`\n"
        },
        "$:/core/templates/html-tiddler": {
            "title": "$:/core/templates/html-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as raw HTML\n\n--><$view field=\"text\" format=\"htmlwikified\" />"
        },
        "$:/core/templates/javascript-tiddler": {
            "title": "$:/core/templates/javascript-tiddler",
            "text": "<!--\n\nThis template is used for saving JavaScript tiddlers as a script tag with data attributes representing the tiddler fields.\n\n-->`<script`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/javascript\">`<$view field=\"text\" format=\"text\" />`</script>`"
        },
        "$:/core/templates/json-tiddler": {
            "title": "$:/core/templates/json-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as raw JSON\n\n--><$text text=<<jsontiddler>>/>"
        },
        "$:/core/templates/module-tiddler": {
            "title": "$:/core/templates/module-tiddler",
            "text": "<!--\n\nThis template is used for saving JavaScript tiddlers as a script tag with data attributes representing the tiddler fields. The body of the tiddler is wrapped in a call to the `$tw.modules.define` function in order to define the body of the tiddler as a module\n\n-->`<script`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/javascript\" data-module=\"yes\">$tw.modules.define(\"`<$view field=\"title\" format=\"jsencoded\" />`\",\"`<$view field=\"module-type\" format=\"jsencoded\" />`\",function(module,exports,require) {`<$view field=\"text\" format=\"text\" />`});\n</script>`"
        },
        "$:/core/templates/plain-text-tiddler": {
            "title": "$:/core/templates/plain-text-tiddler",
            "text": "<$view field=\"text\" format=\"text\" />"
        },
        "$:/core/templates/raw-static-tiddler": {
            "title": "$:/core/templates/raw-static-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as static HTML\n\n--><$view field=\"text\" format=\"plainwikified\" />"
        },
        "$:/core/save/all": {
            "title": "$:/core/save/all",
            "text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/save/empty": {
            "title": "$:/core/save/empty",
            "text": "\\define saveTiddlerFilter()\n[is[system]] -[prefix[$:/state/popup/]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/save/lazy-all": {
            "title": "$:/core/save/lazy-all",
            "text": "\\define saveTiddlerFilter()\n[is[system]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] \n\\end\n\\define skinnySaveTiddlerFilter()\n[!is[system]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/save/lazy-images": {
            "title": "$:/core/save/lazy-images",
            "text": "\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[!is[system]is[image]] +[sort[title]] \n\\end\n\\define skinnySaveTiddlerFilter()\n[is[image]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/templates/server/static.sidebar.wikitext": {
            "title": "$:/core/templates/server/static.sidebar.wikitext",
            "text": "\\whitespace trim\n<div class=\"tc-sidebar-scrollable\" style=\"overflow: auto;\">\n<div class=\"tc-sidebar-header\">\n<h1 class=\"tc-site-title\">\n<$transclude tiddler=\"$:/SiteTitle\"/>\n</h1>\n<div class=\"tc-site-subtitle\">\n<$transclude tiddler=\"$:/SiteSubtitle\"/>\n</div>\n<h2>\n</h2>\n<div class=\"tc-sidebar-lists\">\n<$list filter={{$:/DefaultTiddlers}}>\n<div class=\"tc-menu-list-subitem\">\n<$link><$text text=<<currentTiddler>>/></$link>\n</div>\n</$list>\n</div>\n<!-- Currently disabled the recent list as it is unweildy when the responsive narrow view kicks in\n<h2>\n{{$:/language/SideBar/Recent/Caption}}\n</h2>\n<div class=\"tc-sidebar-lists\">\n<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n</div>\n</div>\n</div>\n-->\n"
        },
        "$:/core/templates/server/static.tiddler.html": {
            "title": "$:/core/templates/server/static.tiddler.html",
            "text": "\\whitespace trim\n\\define tv-wikilink-template() $uri_encoded$\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content={{$:/core/templates/version}} />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<link rel=\"stylesheet\" href=\"%24%3A%2Fcore%2Ftemplates%2Fstatic.template.css\">\n<title><$view field=\"caption\" format=\"plainwikified\"><$view field=\"title\"/></$view>: <$view tiddler=\"$:/core/wiki/title\" format=\"plainwikified\"/></title>\n</head>\n<body class=\"tc-body\">\n<$transclude tiddler=\"$:/core/templates/server/static.sidebar.wikitext\" mode=\"inline\"/>\n<section class=\"tc-story-river\">\n<div class=\"tc-tiddler-frame\">\n<$transclude tiddler=\"$:/core/templates/server/static.tiddler.wikitext\" mode=\"inline\"/>\n</div>\n</section>\n</body>\n</html>"
        },
        "$:/core/templates/server/static.tiddler.wikitext": {
            "title": "$:/core/templates/server/static.tiddler.wikitext",
            "text": "\\whitespace trim\n<div class=\"tc-tiddler-title\">\n<div class=\"tc-titlebar\">\n<h2><$text text=<<currentTiddler>>/></h2>\n</div>\n</div>\n<div class=\"tc-subtitle\">\n<$link to={{!!modifier}}>\n<$view field=\"modifier\"/>\n</$link> <$view field=\"modified\" format=\"date\" template={{$:/language/Tiddler/DateFormat}}/>\n</div>\n<div class=\"tc-tags-wrapper\">\n<$list filter=\"[all[current]tags[]sort[title]]\">\n<a href={{{ [<currentTiddler>encodeuricomponent[]] }}}>\n<$macrocall $name=\"tag-pill\" tag=<<currentTiddler>>/>\n</a>\n</$list>\n</div>\n<div class=\"tc-tiddler-body\">\n<$transclude mode=\"block\"/>\n</div>\n"
        },
        "$:/core/templates/single.tiddler.window": {
            "title": "$:/core/templates/single.tiddler.window",
            "text": "\\whitespace trim\n\\define containerClasses()\ntc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$vars\n\ttv-config-toolbar-icons={{$:/config/Toolbar/Icons}}\n\ttv-config-toolbar-text={{$:/config/Toolbar/Text}}\n\ttv-config-toolbar-class={{$:/config/Toolbar/ButtonClass}}\n\ttv-show-missing-links={{$:/config/MissingLinks}}\n\tstoryviewTitle={{$:/view}}\n\tlanguageTitle={{{ [{$:/language}get[name]] }}}>\n\n<div class=<<containerClasses>>>\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\">\n\n<$transclude mode=\"block\"/>\n\n</$navigator>\n\n</div>\n\n</$vars>\n"
        },
        "$:/core/templates/split-recipe": {
            "title": "$:/core/templates/split-recipe",
            "text": "<$list filter=\"[!is[system]]\">\ntiddler: <$view field=\"title\" format=\"urlencoded\"/>.tid\n</$list>\n"
        },
        "$:/core/templates/static-tiddler": {
            "title": "$:/core/templates/static-tiddler",
            "text": "<a name=<<currentTiddler>>>\n<$transclude tiddler=\"$:/core/ui/ViewTemplate\"/>\n</a>"
        },
        "$:/core/templates/static.area": {
            "title": "$:/core/templates/static.area",
            "text": "<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawStaticContent]!has[draft.of]] ||$:/core/templates/raw-static-tiddler}}}\n{{$:/core/templates/static.content||$:/core/templates/html-tiddler}}\n</$reveal>\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\nThis file contains an encrypted ~TiddlyWiki. Enable ~JavaScript and enter the decryption password when prompted.\n</$reveal>\n<!-- ensure splash screen isn't shown when JS is disabled -->\n`<style>\n.tc-remove-when-wiki-loaded {display: none;}\n</style>`\n"
        },
        "$:/core/templates/static.content": {
            "title": "$:/core/templates/static.content",
            "text": "<!-- For Google, and people without JavaScript-->\nThis [[TiddlyWiki|https://tiddlywiki.com]] contains the following tiddlers:\n\n<ul>\n<$list filter=<<saveTiddlerFilter>>>\n<li><$view field=\"title\" format=\"text\"></$view></li>\n</$list>\n</ul>\n"
        },
        "$:/core/templates/static.template.css": {
            "title": "$:/core/templates/static.template.css",
            "text": "{{$:/boot/boot.css||$:/core/templates/plain-text-tiddler}}\n\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n"
        },
        "$:/core/templates/static.template.html": {
            "title": "$:/core/templates/static.template.html",
            "type": "text/vnd.tiddlywiki-html",
            "text": "\\define tv-wikilink-template() static/$uri_doubleencoded$.html\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<style type=\"text/css\">\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n</style>\n</head>\n<body class=\"tc-body\">\n{{$:/StaticBanner||$:/core/templates/html-tiddler}}\n{{$:/core/ui/PageTemplate||$:/core/templates/html-tiddler}}\n</body>\n</html>\n"
        },
        "$:/core/templates/static.tiddler.html": {
            "title": "$:/core/templates/static.tiddler.html",
            "text": "\\define tv-wikilink-template() $uri_doubleencoded$.html\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n`<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"`{{$:/core/templates/version}}`\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<link rel=\"stylesheet\" href=\"static.css\">\n<title>`<$view field=\"caption\"><$view field=\"title\"/></$view>: {{$:/core/wiki/title}}`</title>\n</head>\n<body class=\"tc-body\">\n`{{$:/StaticBanner||$:/core/templates/html-tiddler}}`\n<section class=\"tc-story-river tc-static-story-river\">\n`<$view tiddler=\"$:/core/ui/ViewTemplate\" format=\"htmlwikified\"/>`\n</section>\n</body>\n</html>\n`\n"
        },
        "$:/core/templates/store.area.template.html": {
            "title": "$:/core/templates/store.area.template.html",
            "text": "<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n`<div id=\"storeArea\" style=\"display:none;\">`\n<$list filter=<<saveTiddlerFilter>> template=\"$:/core/templates/html-div-tiddler\"/>\n<$list filter={{{ [<skinnySaveTiddlerFilter>] }}} template=\"$:/core/templates/html-div-skinny-tiddler\"/>\n`</div>`\n</$reveal>\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\n`<!--~~ Encrypted tiddlers ~~-->`\n`<pre id=\"encryptedStoreArea\" type=\"text/plain\" style=\"display:none;\">`\n<$encrypt filter=<<saveTiddlerFilter>>/>\n`</pre>`\n</$reveal>"
        },
        "$:/core/templates/tid-tiddler": {
            "title": "$:/core/templates/tid-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers in TiddlyWeb *.tid format\n\n--><$fields exclude='text bag' template='$name$: $value$\n'></$fields>`\n`<$view field=\"text\" format=\"text\" />"
        },
        "$:/core/templates/tiddler-metadata": {
            "title": "$:/core/templates/tiddler-metadata",
            "text": "<!--\n\nThis template is used for saving tiddler metadata *.meta files\n\n--><$fields exclude='text bag' template='$name$: $value$\n'></$fields>"
        },
        "$:/core/templates/tiddlywiki5.html": {
            "title": "$:/core/templates/tiddlywiki5.html",
            "text": "<$set name=\"saveTiddlerAndShadowsFilter\" filter=\"[subfilter<saveTiddlerFilter>] [subfilter<saveTiddlerFilter>plugintiddlers[]]\">\n`<!doctype html>\n`{{$:/core/templates/MOTW.html}}`<html lang=\"`<$text text={{{ [{$:/language}get[name]] }}}/>`\">\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<!--~~ Raw markup for the top of the head section ~~-->\n`{{{ [<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/TopHead]] ||$:/core/templates/raw-static-tiddler}}}`\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>\n<meta name=\"application-name\" content=\"TiddlyWiki\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"`{{$:/core/templates/version}}`\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\" />\n<meta name=\"copyright\" content=\"`{{$:/core/copyright.txt}}`\" />\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>`{{$:/core/wiki/title}}`</title>\n<!--~~ This is a Tiddlywiki file. The points of interest in the file are marked with this pattern ~~-->\n\n<!--~~ Raw markup ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/core/wiki/rawmarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified]] ||$:/core/templates/raw-static-tiddler}}}`\n</head>\n<body class=\"tc-body\">\n<!--~~ Raw markup for the top of the body section ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/TopBody]] ||$:/core/templates/raw-static-tiddler}}}`\n<!--~~ Static styles ~~-->\n<div id=\"styleArea\">\n`{{$:/boot/boot.css||$:/core/templates/css-tiddler}}`\n</div>\n<!--~~ Static content for Google and browsers without JavaScript ~~-->\n<noscript>\n<div id=\"splashArea\">\n`{{$:/core/templates/static.area}}`\n</div>\n</noscript>\n<!--~~ Ordinary tiddlers ~~-->\n`{{$:/core/templates/store.area.template.html}}`\n<!--~~ Library modules ~~-->\n<div id=\"libraryModules\" style=\"display:none;\">\n`{{{ [is[system]type[application/javascript]library[yes]] ||$:/core/templates/javascript-tiddler}}}`\n</div>\n<!--~~ Boot kernel prologue ~~-->\n<div id=\"bootKernelPrefix\" style=\"display:none;\">\n`{{ $:/boot/bootprefix.js ||$:/core/templates/javascript-tiddler}}`\n</div>\n<!--~~ Boot kernel ~~-->\n<div id=\"bootKernel\" style=\"display:none;\">\n`{{ $:/boot/boot.js ||$:/core/templates/javascript-tiddler}}`\n</div>\n<!--~~ Raw markup for the bottom of the body section ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/BottomBody]] ||$:/core/templates/raw-static-tiddler}}}`\n</body>\n</html>`\n"
        },
        "$:/core/templates/version": {
            "title": "$:/core/templates/version",
            "text": "<<version>>"
        },
        "$:/core/templates/wikified-tiddler": {
            "title": "$:/core/templates/wikified-tiddler",
            "text": "<$transclude />"
        },
        "$:/core/ui/AboveStory/tw2-plugin-check": {
            "title": "$:/core/ui/AboveStory/tw2-plugin-check",
            "tags": "$:/tags/AboveStory",
            "text": "\\define lingo-base() $:/language/AboveStory/ClassicPlugin/\n<$list filter=\"[all[system+tiddlers]tag[systemConfig]limit[1]]\">\n\n<div class=\"tc-message-box\">\n\n<<lingo Warning>>\n\n<ul>\n\n<$list filter=\"[all[system+tiddlers]tag[systemConfig]]\">\n\n<li>\n\n<$link><$view field=\"title\"/></$link>\n\n</li>\n\n</$list>\n\n</ul>\n\n</div>\n\n</$list>\n"
        },
        "$:/core/ui/Actions/new-image": {
            "title": "$:/core/ui/Actions/new-image",
            "tags": "$:/tags/Actions",
            "description": "create a new image tiddler",
            "text": "\\define get-type()\nimage/$(imageType)$\n\\end\n\\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$\n<$vars imageType={{$:/config/NewImageType}} textFieldTags={{$:/config/NewJournal/Tags}} tagsFieldTags={{$:/config/NewJournal/Tags!!tags}}>\n<$action-sendmessage $message=\"tm-new-tiddler\" type=<<get-type>> tags=<<get-tags>>/>\n</$vars>\n"
        },
        "$:/core/ui/Actions/new-journal": {
            "title": "$:/core/ui/Actions/new-journal",
            "tags": "$:/tags/Actions",
            "description": "create a new journal tiddler",
            "text": "\\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$\n<$vars journalTitleTemplate={{$:/config/NewJournal/Title}} textFieldTags={{$:/config/NewJournal/Tags}} tagsFieldTags={{$:/config/NewJournal/Tags!!tags}} journalText={{$:/config/NewJournal/Text}}>\n<$wikify name=\"journalTitle\" text=\"\"\"<$macrocall $name=\"now\" format=<<journalTitleTemplate>>/>\"\"\">\n<$reveal type=\"nomatch\" state=<<journalTitle>> text=\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<get-tags>> text={{{ [<journalTitle>get[]] }}}/>\n</$reveal>\n<$reveal type=\"match\" state=<<journalTitle>> text=\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<get-tags>> text=<<journalText>>/>\n</$reveal>\n</$wikify>\n</$vars>\n"
        },
        "$:/core/ui/Actions/new-tiddler": {
            "title": "$:/core/ui/Actions/new-tiddler",
            "tags": "$:/tags/Actions",
            "description": "create a new empty tiddler",
            "text": "\\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$\n<$vars textFieldTags={{$:/config/NewTiddler/Tags}} tagsFieldTags={{$:/config/NewTiddler/Tags!!tags}}>\n<$action-sendmessage $message=\"tm-new-tiddler\" tags=<<get-tags>>/>\n</$vars>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter": {
            "title": "$:/core/ui/AdvancedSearch/Filter",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/Filter/Caption}}",
            "text": "\\define lingo-base() $:/language/Search/\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch/input}!match{$:/temp/advancedsearch}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo Filter/Hint>>\n\n<div class=\"tc-search tc-advanced-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\" \n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\" type=\"search\" \n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} configTiddlerFilter=\"[[$:/temp/advancedsearch]]\" firstSearchFilterField=\"text\" \n\t\tinputAcceptActions=<<input-accept-actions>> inputAcceptVariantActions=<<input-accept-variant-actions>> \n\t\tinputCancelActions=<<cancel-search-actions>>/>\n</$keyboard>\n</$keyboard>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/AdvancedSearch/FilterButton]!has[draft.of]]\"><$transclude/></$list>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$set name=\"resultCount\" value=\"\"\"<$count filter={{$:/temp/advancedsearch}}/>\"\"\">\n<div class=\"tc-search-results\">\n<<lingo Filter/Matches>>\n<$list filter={{$:/temp/advancedsearch}}>\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n</div>\n</$set>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/clear": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/clear",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\" />\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/delete": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/delete",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button popup=<<qualify \"$:/state/filterDeleteDropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/delete-button}}\n</$button>\n</$reveal>\n\n<$reveal state=<<qualify \"$:/state/filterDeleteDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<div class=\"tc-dropdown-item-plain\">\n<$set name=\"resultCount\" value=\"\"\"<$count filter={{$:/temp/advancedsearch}}/>\"\"\">\nAre you sure you wish to delete <<resultCount>> tiddler(s)?\n</$set>\n</div>\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"tc-btn\">\n<$action-deletetiddler $filter={{$:/temp/advancedsearch}}/>\nDelete these tiddlers\n</$button>\n</div>\n</div>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/filterDropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n</$button>\n</span>\n\n<$reveal state=<<qualify \"$:/state/filterDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher actions=\"\"\"<$action-setfield $tiddler=\"$:/temp/advancedsearch\" text=<<navigateTo>>/><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text=<<navigateTo>>/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/><$action-sendmessage $message=\"tm-focus-selector\" $param='.tc-advanced-search input' />\"\"\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Filter]]\"><$link to={{!!filter}}><$transclude field=\"description\"/></$link>\n</$list>\n</div>\n</div>\n</$linkcatcher>\n</$set>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/export": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/export",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$macrocall $name=\"exportButton\" exportFilter={{$:/temp/advancedsearch}} lingoBase=\"$:/language/Buttons/ExportTiddlers/\"/>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Shadows": {
            "title": "$:/core/ui/AdvancedSearch/Shadows",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/Shadows/Caption}}",
            "first-search-filter": "[all[shadows]search<userInput>sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]]",
            "text": "\\define lingo-base() $:/language/Search/\n\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch}!match{$:/temp/advancedsearch/input}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\"/>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo Shadows/Hint>>\n\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\"\n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\" type=\"search\"\n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} configTiddlerFilter=\"[[$:/core/ui/AdvancedSearch/Shadows]]\"\n\t\tinputCancelActions=<<cancel-search-actions>> inputAcceptActions=<<input-accept-actions>> \n\t\tinputAcceptVariantActions=<<input-accept-variant-actions>>  filterMinLength={{$:/config/Search/MinLength}}/>\n</$keyboard>\n</$keyboard>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[all[shadows]search{$:/temp/advancedsearch}] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]]\"/>\"\"\">\n\n<div class=\"tc-search-results\">\n\n<<lingo Shadows/Matches>>\n\n<$list filter=\"[all[shadows]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]]\">\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n\n</div>\n\n</$set>\n\n</$list>\n\n</$reveal>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\">\n\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Standard": {
            "title": "$:/core/ui/AdvancedSearch/Standard",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/Standard/Caption}}",
            "text": "\\define lingo-base() $:/language/Search/\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define next-search-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/advancedsearch\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/standard/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch}!match{$:/temp/advancedsearch/input}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\"/>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo Standard/Hint>>\n\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$keyboard key=\"shift-alt-Right\" actions=<<next-search-tab>>>\n<$keyboard key=\"shift-alt-Left\" actions=<<next-search-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\"\n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\" type=\"search\"\n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} inputCancelActions=<<cancel-search-actions>> \n\t\tinputAcceptActions=<<input-accept-actions>> inputAcceptVariantActions=<<input-accept-variant-actions>> \n\t\tconfigTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\"\n\t\tfilterMinLength={{$:/config/Search/MinLength}}/>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$vars userInput={{{ [[$:/temp/advancedsearch]get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}} searchListState=\"$:/temp/advancedsearch/selected-item\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]butfirst[]limit[1]]\" emptyMessage=\"\"\"\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\">\n<$transclude/>\n</$list>\n\"\"\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\" default={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/standard/currentTab\" text=<<currentTab>>/>\"\"\" explicitState=\"$:/state/tab/search-results/advancedsearch\" />\n</$list>\n</$vars>\n</$list>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/System": {
            "title": "$:/core/ui/AdvancedSearch/System",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/System/Caption}}",
            "first-search-filter": "[is[system]search<userInput>sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]] -[[$:/temp/advancedsearch/selected-item]]",
            "text": "\\define lingo-base() $:/language/Search/\n\\define set-next-input-tab(beforeafter:\"after\",stateTitle,tag,defaultState,currentTabTiddler) <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch}!match{$:/temp/advancedsearch/input}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\"/>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo System/Hint>>\n\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\"\n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\"\n\t\ttype=\"search\" tag=\"input\" focus={{$:/config/Search/AutoFocus}} configTiddlerFilter=\"[[$:/core/ui/AdvancedSearch/System]]\"\n\t\tinputCancelActions=<<cancel-search-actions>> inputAcceptActions=<<input-accept-actions>> \n\t\tinputAcceptVariantActions=<<input-accept-variant-actions>> filterMinLength={{$:/config/Search/MinLength}}/>\n</$keyboard>\n</$keyboard>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[is[system]search{$:/temp/advancedsearch}] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]] -[[$:/temp/advancedsearch/selected-item]]\"/>\"\"\">\n\n<div class=\"tc-search-results\">\n\n<<lingo System/Matches>>\n\n<$list filter=\"[is[system]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]] -[[$:/temp/advancedsearch/selected-item]]\">\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n\n</div>\n\n</$set>\n\n</$list>\n\n</$reveal>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\">\n\n</$reveal>\n"
        },
        "$:/AdvancedSearch": {
            "title": "$:/AdvancedSearch",
            "icon": "$:/core/images/advanced-search-button",
            "color": "#bbb",
            "text": "<div class=\"tc-advanced-search\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/AdvancedSearch]!has[draft.of]]\" default=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<currentTab>>/>\"\"\" explicitState=\"$:/state/tab--1498284803\"/>\n</div>\n"
        },
        "$:/core/ui/AlertTemplate": {
            "title": "$:/core/ui/AlertTemplate",
            "text": "<div class=\"tc-alert\">\n<div class=\"tc-alert-toolbar\">\n<$button class=\"tc-btn-invisible\"><$action-deletetiddler $tiddler=<<currentTiddler>>/>{{$:/core/images/cancel-button}}</$button>\n</div>\n<div class=\"tc-alert-subtitle\">\n<$wikify name=\"format\" text=<<lingo Tiddler/DateFormat>>>\n<$view field=\"component\"/> - <$view field=\"modified\" format=\"date\" template=<<format>>/> <$reveal type=\"nomatch\" state=\"!!count\" text=\"\"><span class=\"tc-alert-highlight\">({{$:/language/Count}}: <$view field=\"count\"/>)</span></$reveal>\n</$wikify>\n</div>\n<div class=\"tc-alert-body\">\n\n<$transclude/>\n\n</div>\n</div>\n"
        },
        "$:/core/ui/BinaryWarning": {
            "title": "$:/core/ui/BinaryWarning",
            "text": "\\define lingo-base() $:/language/BinaryWarning/\n<<lingo Prompt>>\n"
        },
        "$:/core/ui/Components/plugin-info": {
            "title": "$:/core/ui/Components/plugin-info",
            "text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n\\define popup-state-macro()\n$(qualified-state)$-$(currentTiddler)$\n\\end\n\n\\define tabs-state-macro()\n$(popup-state)$-$(pluginInfoType)$\n\\end\n\n\\define plugin-icon-title()\n$(currentTiddler)$/icon\n\\end\n\n\\define plugin-disable-title()\n$:/config/Plugins/Disabled/$(currentTiddler)$\n\\end\n\n\\define plugin-table-body(type,disabledMessage,default-popup-state)\n<div class=\"tc-plugin-info-chunk tc-plugin-info-toggle\">\n<$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\" default=\"\"\"$default-popup-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n{{$:/core/images/chevron-right}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<popup-state>> text=\"yes\" default=\"\"\"$default-popup-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<plugin-icon-title>>>\n<$transclude tiddler=\"$:/core/images/plugin-generic-$type$\"/>\n</$transclude>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-description\">\n<h1>\n''<$text text={{{ [<currentTiddler>get[name]] ~[<currentTiddler>split[/]last[1]] }}}/>'': <$view field=\"description\"><$view field=\"title\"/></$view> $disabledMessage$\n</h1>\n<h2>\n<$view field=\"title\"/>\n</h2>\n<h2>\n<div><em><$view field=\"version\"/></em></div>\n</h2>\n</div>\n\\end\n\n\\define plugin-info(type,default-popup-state)\n<$set name=\"popup-state\" value=<<popup-state-macro>>>\n<$reveal type=\"nomatch\" state=<<plugin-disable-title>> text=\"yes\">\n<$link to={{!!title}} class=\"tc-plugin-info\">\n<<plugin-table-body type:\"$type$\" default-popup-state:\"\"\"$default-popup-state$\"\"\">>\n</$link>\n</$reveal>\n<$reveal type=\"match\" state=<<plugin-disable-title>> text=\"yes\">\n<$link to={{!!title}} class=\"tc-plugin-info tc-plugin-info-disabled\">\n<<plugin-table-body type:\"$type$\" default-popup-state:\"\"\"$default-popup-state$\"\"\" disabledMessage:\"<$macrocall $name='lingo' title='Disabled/Status'/>\">>\n</$link>\n</$reveal>\n<$reveal type=\"match\" text=\"yes\" state=<<popup-state>> default=\"\"\"$default-popup-state$\"\"\">\n<div class=\"tc-plugin-info-dropdown\">\n<div class=\"tc-plugin-info-dropdown-body\">\n<$list filter=\"[all[current]] -[[$:/core]]\">\n<div style=\"float:right;\">\n<$reveal type=\"nomatch\" state=<<plugin-disable-title>> text=\"yes\">\n<$button set=<<plugin-disable-title>> setTo=\"yes\" tooltip={{$:/language/ControlPanel/Plugins/Disable/Hint}} aria-label={{$:/language/ControlPanel/Plugins/Disable/Caption}}>\n<<lingo Disable/Caption>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<plugin-disable-title>> text=\"yes\">\n<$button set=<<plugin-disable-title>> setTo=\"no\" tooltip={{$:/language/ControlPanel/Plugins/Enable/Hint}} aria-label={{$:/language/ControlPanel/Plugins/Enable/Caption}}>\n<<lingo Enable/Caption>>\n</$button>\n</$reveal>\n</div>\n</$list>\n<$set name=\"tabsList\" filter=\"[<currentTiddler>list[]] contents\">\n<$macrocall $name=\"tabs\" state=<<tabs-state-macro>> tabsList=<<tabsList>> default={{{ [enlist<tabsList>] }}} template=\"$:/core/ui/PluginInfo\"/>\n</$set>\n</div>\n</div>\n</$reveal>\n</$set>\n\\end\n\n<$macrocall $name=\"plugin-info\" type=<<plugin-type>> default-popup-state=<<default-popup-state>>/>\n"
        },
        "$:/core/ui/Components/tag-link": {
            "title": "$:/core/ui/Components/tag-link",
            "text": "<$link>\n<$set name=\"backgroundColor\" value={{!!color}}>\n<span style=<<tag-styles>> class=\"tc-tag-label\">\n<$view field=\"title\" format=\"text\"/>\n</span>\n</$set>\n</$link>"
        },
        "$:/core/ui/ControlPanel/Advanced": {
            "title": "$:/core/ui/ControlPanel/Advanced",
            "tags": "$:/tags/ControlPanel/Info",
            "caption": "{{$:/language/ControlPanel/Advanced/Caption}}",
            "text": "{{$:/language/ControlPanel/Advanced/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Advanced]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/TiddlerFields\" explicitState=\"$:/state/tab--959111941\"/>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Appearance": {
            "title": "$:/core/ui/ControlPanel/Appearance",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Appearance/Caption}}",
            "text": "{{$:/language/ControlPanel/Appearance/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Appearance]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Theme\" explicitState=\"$:/state/tab--1963855381\"/>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Basics": {
            "title": "$:/core/ui/ControlPanel/Basics",
            "tags": "$:/tags/ControlPanel/Info",
            "caption": "{{$:/language/ControlPanel/Basics/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Basics/\n\n\\define show-filter-count(filter)\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $value=\"\"\"$filter$\"\"\"/>\n<$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" $value=\"\"\"$filter$\"\"\"/>\n<$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/>\n<$action-setfield $tiddler=\"$:/state/tab--1498284803\" $value=\"$:/core/ui/AdvancedSearch/Filter\"/>\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-advanced-search input\"/>\n''<$count filter=\"\"\"$filter$\"\"\"/>''\n{{$:/core/images/advanced-search-button}}\n</$button>\n\\end\n\n|<<lingo Version/Prompt>> |''<<version>>'' |\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/status/UserName\"><<lingo Username/Prompt>></$link> |<$edit-text tiddler=\"$:/status/UserName\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/AnimationDuration\"><<lingo AnimDuration/Prompt>></$link> |<$edit-text tiddler=\"$:/config/AnimationDuration\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\" class=\"tc-edit-texteditor\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n|<$link to=\"$:/language/DefaultNewTiddlerTitle\"><<lingo NewTiddler/Title/Prompt>></$link> |<$edit-text tiddler=\"$:/language/DefaultNewTiddlerTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/NewJournal/Title\"><<lingo NewJournal/Title/Prompt>></$link> |<$edit-text tiddler=\"$:/config/NewJournal/Title\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/NewJournal/Text\"><<lingo NewJournal/Text/Prompt>></$link> |<$edit tiddler=\"$:/config/NewJournal/Text\" tag=\"textarea\" class=\"tc-edit-texteditor\" default=\"\"/> |\n|<$link to=\"$:/config/NewTiddler/Tags\"><<lingo NewTiddler/Tags/Prompt>></$link> |<$vars currentTiddler=\"$:/config/NewTiddler/Tags\" tagField=\"text\">{{||$:/core/ui/EditTemplate/tags}}<$list filter=\"[<currentTiddler>tags[]] +[limit[1]]\" variable=\"ignore\"><$button tooltip={{$:/language/ControlPanel/Basics/RemoveTags/Hint}}><<lingo RemoveTags>><$action-listops $tiddler=<<currentTiddler>> $field=\"text\" $subfilter={{{ [<currentTiddler>get[tags]] }}}/><$action-setfield $tiddler=<<currentTiddler>> tags=\"\"/></$button></$list></$vars> |\n|<$link to=\"$:/config/NewJournal/Tags\"><<lingo NewJournal/Tags/Prompt>></$link> |<$vars currentTiddler=\"$:/config/NewJournal/Tags\" tagField=\"text\">{{||$:/core/ui/EditTemplate/tags}}<$list filter=\"[<currentTiddler>tags[]] +[limit[1]]\" variable=\"ignore\"><$button tooltip={{$:/language/ControlPanel/Basics/RemoveTags/Hint}}><<lingo RemoveTags>><$action-listops $tiddler=<<currentTiddler>> $field=\"text\" $subfilter={{{ [<currentTiddler>get[tags]] }}}/><$action-setfield $tiddler=<<currentTiddler>> tags=\"\"/></$button></$list></$vars> |\n|<$link to=\"$:/config/AutoFocus\"><<lingo AutoFocus/Prompt>></$link> |{{$:/snippets/minifocusswitcher}} |\n|<<lingo Language/Prompt>> |{{$:/snippets/minilanguageswitcher}} |\n|<<lingo Tiddlers/Prompt>> |<<show-filter-count \"[!is[system]sort[title]]\">> |\n|<<lingo Tags/Prompt>> |<<show-filter-count \"[tags[]sort[title]]\">> |\n|<<lingo SystemTiddlers/Prompt>> |<<show-filter-count \"[is[system]sort[title]]\">> |\n|<<lingo ShadowTiddlers/Prompt>> |<<show-filter-count \"[all[shadows]sort[title]]\">> |\n|<<lingo OverriddenShadowTiddlers/Prompt>> |<<show-filter-count \"[is[tiddler]is[shadow]sort[title]]\">> |\n"
        },
        "$:/core/ui/ControlPanel/EditorTypes": {
            "title": "$:/core/ui/ControlPanel/EditorTypes",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/EditorTypes/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/EditorTypes/\n\n<<lingo Hint>>\n\n<table>\n<tbody>\n<tr>\n<th><<lingo Type/Caption>></th>\n<th><<lingo Editor/Caption>></th>\n</tr>\n<$list filter=\"[all[shadows+tiddlers]prefix[$:/config/EditorTypeMappings/]sort[title]]\">\n<tr>\n<td>\n<$link>\n<$list filter=\"[all[current]removeprefix[$:/config/EditorTypeMappings/]]\">\n<$text text={{!!title}}/>\n</$list>\n</$link>\n</td>\n<td>\n<$view field=\"text\"/>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ControlPanel/Info": {
            "title": "$:/core/ui/ControlPanel/Info",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Info/Caption}}",
            "text": "{{$:/language/ControlPanel/Info/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Info]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Basics\" explicitState=\"$:/state/tab--2112689675\"/>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/KeyboardShortcuts": {
            "title": "$:/core/ui/ControlPanel/KeyboardShortcuts",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/KeyboardShortcuts/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/KeyboardShortcuts/\n\n\\define new-shortcut(title)\n<div class=\"tc-dropdown-item-plain\">\n<$edit-shortcut tiddler=\"$title$\" placeholder={{$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt}} focus=\"true\" style=\"width:auto;\"/> <$button>\n<<lingo Add/Caption>>\n<$action-listops\n\t$tiddler=\"$(shortcutTitle)$\"\n\t$field=\"text\"\n\t$subfilter=\"[{$title$}]\"\n/>\n<$action-deletetiddler\n\t$tiddler=\"$title$\"\n/>\n</$button>\n</div>\n\\end\n\n\\define shortcut-list-item(caption)\n<td>\n</td>\n<td style=\"text-align:right;font-size:0.7em;\">\n<<lingo Platform/$caption$>>\n</td>\n<td>\n<div style=\"position:relative;\">\n<$button popup=<<qualify \"$:/state/dropdown/$(shortcutTitle)$\">> class=\"tc-btn-invisible\">\n{{$:/core/images/edit-button}}\n</$button>\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts={{$(shortcutTitle)$}} prefix=\"<kbd>\" separator=\"</kbd> <kbd>\" suffix=\"</kbd>\"/>\n\n<$reveal state=<<qualify \"$:/state/dropdown/$(shortcutTitle)$\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown tc-popup-keep\">\n<$list filter=\"[list[$(shortcutTitle)$!!text]sort[title]]\" variable=\"shortcut\" emptyMessage=\"\"\"\n<div class=\"tc-dropdown-item-plain\">\n//<<lingo NoShortcuts/Caption>>//\n</div>\n\"\"\">\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint}}>\n<$action-listops\n\t$tiddler=\"$(shortcutTitle)$\"\n\t$field=\"text\"\n\t$subfilter=\"+[remove<shortcut>]\"\n/>\n<small>{{$:/core/images/close-button}}</small>\n</$button>\n<kbd>\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts=<<shortcut>>/>\n</kbd>\n</div>\n</$list>\n<hr/>\n<$macrocall $name=\"new-shortcut\" title=<<qualify \"$:/state/new-shortcut/$(shortcutTitle)$\">>/>\n</div>\n</div>\n</$reveal>\n</div>\n</td>\n\\end\n\n\\define shortcut-list(caption,prefix)\n<tr>\n<$list filter=\"[[$prefix$$(shortcutName)$]]\" variable=\"shortcutTitle\">\n<<shortcut-list-item \"$caption$\">>\n</$list>\n</tr>\n\\end\n\n\\define shortcut-editor()\n<<shortcut-list \"All\" \"$:/config/shortcuts/\">>\n<<shortcut-list \"Mac\" \"$:/config/shortcuts-mac/\">>\n<<shortcut-list \"NonMac\" \"$:/config/shortcuts-not-mac/\">>\n<<shortcut-list \"Linux\" \"$:/config/shortcuts-linux/\">>\n<<shortcut-list \"NonLinux\" \"$:/config/shortcuts-not-linux/\">>\n<<shortcut-list \"Windows\" \"$:/config/shortcuts-windows/\">>\n<<shortcut-list \"NonWindows\" \"$:/config/shortcuts-not-windows/\">>\n\\end\n\n\\define shortcut-preview()\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts={{$(shortcutPrefix)$$(shortcutName)$}} prefix=\"<kbd>\" separator=\"</kbd> <kbd>\" suffix=\"</kbd>\"/>\n\\end\n\n\\define shortcut-item-inner()\n<tr>\n<td>\n<$reveal type=\"nomatch\" state=<<dropdownStateTitle>> text=\"open\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield\n\t$tiddler=<<dropdownStateTitle>>\n\t$value=\"open\"\n/>\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<dropdownStateTitle>> text=\"open\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield\n\t$tiddler=<<dropdownStateTitle>>\n\t$value=\"close\"\n/>\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n''<$text text=<<shortcutName>>/>''\n</td>\n<td>\n<$transclude tiddler=\"$:/config/ShortcutInfo/$(shortcutName)$\"/>\n</td>\n<td>\n<$list filter=\"$:/config/shortcuts/ $:/config/shortcuts-mac/ $:/config/shortcuts-not-mac/ $:/config/shortcuts-linux/ $:/config/shortcuts-not-linux/ $:/config/shortcuts-windows/ $:/config/shortcuts-not-windows/\" variable=\"shortcutPrefix\">\n<<shortcut-preview>>\n</$list>\n</td>\n</tr>\n<$set name=\"dropdownState\" value={{$(dropdownStateTitle)$}}>\n<$list filter=\"[<dropdownState>match[open]]\" variable=\"listItem\">\n<<shortcut-editor>>\n</$list>\n</$set>\n\\end\n\n\\define shortcut-item()\n<$set name=\"dropdownStateTitle\" value=<<qualify \"$:/state/dropdown/keyboardshortcut/$(shortcutName)$\">>>\n<<shortcut-item-inner>>\n</$set>\n\\end\n\n<table>\n<tbody>\n<$list filter=\"[all[shadows+tiddlers]removeprefix[$:/config/ShortcutInfo/]]\" variable=\"shortcutName\">\n<<shortcut-item>>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ControlPanel/LoadedModules": {
            "title": "$:/core/ui/ControlPanel/LoadedModules",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/LoadedModules/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n<<lingo LoadedModules/Hint>>\n\n{{$:/snippets/modules}}\n"
        },
        "$:/core/ui/ControlPanel/Modals/AddPlugins": {
            "title": "$:/core/ui/ControlPanel/Modals/AddPlugins",
            "subtitle": "{{$:/core/images/download-button}} {{$:/language/ControlPanel/Plugins/Add/Caption}}",
            "text": "\\define install-plugin-actions()\n<$action-sendmessage $message=\"tm-load-plugin-from-library\" url={{!!url}} title={{$(assetInfo)$!!original-title}}/>\n<$set name=\"url\" value={{!!url}}>\n<$set name=\"currentTiddler\" value=<<assetInfo>>>\n<$list filter=\"[enlist{!!dependents}] [{!!parent-plugin}] +[sort[name]]\" variable=\"dependency\">\n<$action-sendmessage $message=\"tm-load-plugin-from-library\" url=<<url>> title=<<dependency>>/>\n</$list>\n</$set>\n</$set>\n\\end\n\n\\define install-plugin-button()\n<div>\n<$set name=\"libraryVersion\" value={{{ [<assetInfo>get[version]] }}}>\n<$set name=\"installedVersion\" value={{{ [<assetInfo>get[original-title]get[version]] }}}>\n<$set name=\"reinstall-type\" value={{{ [<libraryVersion>compare:version:eq<installedVersion>then[tc-reinstall]] [<libraryVersion>compare:version:gt<installedVersion>then[tc-reinstall-upgrade]] [<libraryVersion>compare:version:lt<installedVersion>then[tc-reinstall-downgrade]] }}}>\n<$button actions=<<install-plugin-actions>> class={{{ [<assetInfo>get[original-title]has[version]then<reinstall-type>] tc-btn-invisible tc-install-plugin +[join[ ]] }}}>\n{{$:/core/images/download-button}}\n<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"ignore\" emptyMessage=\"{{$:/language/ControlPanel/Plugins/Install/Caption}}\">\n<$list filter=\"[<libraryVersion>compare:version:gt<installedVersion>]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$list filter=\"[<libraryVersion>compare:version:lt<installedVersion>]\" variable=\"ignore\" emptyMessage=\"{{$:/language/ControlPanel/Plugins/Reinstall/Caption}}\">\n{{$:/language/ControlPanel/Plugins/Downgrade/Caption}}\n</$list>\n\"\"\">\n{{$:/language/ControlPanel/Plugins/Update/Caption}}\n</$list>\n</$list>\n</$button>\n<div>\n</div>\n<$reveal stateTitle=<<assetInfo>> stateField=\"requires-reload\" type=\"match\" text=\"yes\">{{$:/language/ControlPanel/Plugins/PluginWillRequireReload}}</$reveal>\n</$set>\n</$set>\n</$set>\n</div>\n\\end\n\n\\define popup-state-macro()\n$:/state/add-plugin-info/$(connectionTiddler)$/$(assetInfo)$\n\\end\n\n\\define display-plugin-info(type)\n<$set name=\"popup-state\" value=<<popup-state-macro>>>\n<div class=\"tc-plugin-info\">\n<div class=\"tc-plugin-info-chunk tc-plugin-info-toggle\">\n<$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n{{$:/core/images/chevron-right}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<popup-state>> text=\"yes\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\n<$list filter=\"[<assetInfo>has[icon]]\" emptyMessage=\"\"\"<$transclude tiddler=\"$:/core/images/plugin-generic-$type$\"/>\"\"\">\n<img src={{$(assetInfo)$!!icon}}/>\n</$list>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-description\">\n<h1><strong><$text text={{{ [<assetInfo>get[name]] ~[<assetInfo>get[original-title]split[/]last[1]] }}}/></strong>: <$view tiddler=<<assetInfo>> field=\"description\"/></h1>\n<h2><$view tiddler=<<assetInfo>> field=\"original-title\"/></h2>\n<div><em><$view tiddler=<<assetInfo>> field=\"version\"/></em></div>\n<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"installedVersion\"><div><em>{{$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint}}</em></div></$list>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-buttons\">\n<<install-plugin-button>>\n</div>\n</div>\n<$set name=\"original-title\" value={{{ [<assetInfo>get[original-title]] }}}>\n<$reveal type=\"match\" text=\"yes\" state=<<popup-state>>>\n<div class=\"tc-plugin-info-dropdown\">\n<$list filter=\"[enlist{!!dependents}] [<currentTiddler>get[parent-plugin]] +[limit[1]] ~[<assetInfo>get[original-title]!is[tiddler]]\" variable=\"ignore\">\n<div class=\"tc-plugin-info-dropdown-message\">\n<$list filter=\"[<assetInfo>get[original-title]!is[tiddler]]\">\n{{$:/language/ControlPanel/Plugins/NotInstalled/Hint}}\n</$list>\n<$set name=\"currentTiddler\" value=<<assetInfo>>>\n<$list filter=\"[enlist{!!dependents}] [<currentTiddler>get[parent-plugin]] +[limit[1]]\" variable=\"ignore\">\n<div>\n{{$:/language/ControlPanel/Plugins/AlsoRequires}}\n<$list filter=\"[enlist{!!dependents}] [{!!parent-plugin}] +[sort[name]]\" variable=\"dependency\">\n<$text text=<<dependency>>/>\n</$list>\n</div>\n</$list>\n</$set>\n</div>\n</$list>\n<div class=\"tc-plugin-info-dropdown-body\">\n<$transclude tiddler=<<assetInfo>> field=\"readme\" mode=\"block\"/>\n</div>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>limit[1]]\" variable=\"ignore\">\n<div class=\"tc-plugin-info-sub-plugins\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>sort[name]]\" variable=\"assetInfo\">\n<<display-plugin-info \"$type$\">>\n</$list>\n</div>\n</$list>\n</div>\n</$reveal>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>limit[1]]\" variable=\"ignore\">\n<$reveal type=\"nomatch\" text=\"yes\" state=<<popup-state>> tag=\"div\" class=\"tc-plugin-info-sub-plugin-indicator\">\n<$wikify name=\"count\" text=\"\"\"<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>]\"/>\"\"\">\n<$button class=\"tc-btn-invisible\" set=<<popup-state>> setTo=\"yes\">\n{{$:/language/ControlPanel/Plugins/SubPluginPrompt}}\n</$button>\n</$wikify>\n</$reveal>\n</$list>\n</$set>\n</$set>\n\\end\n\n\\define load-plugin-library-button()\n<$list filter=\"[<currentTiddler>get[enabled]else[yes]match[yes]]\" variable=\"ignore\">\n<$button class=\"tc-btn-big-green\">\n<$action-sendmessage $message=\"tm-load-plugin-library\" url={{!!url}} infoTitlePrefix=\"$:/temp/RemoteAssetInfo/\"/>\n{{$:/core/images/chevron-right}} {{$:/language/ControlPanel/Plugins/OpenPluginLibrary}}\n</$button>\n</$list>\n\\end\n\n\\define display-server-assets(type)\n{{$:/language/Search/Search}}: <$edit-text tiddler=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" default=\"\" type=\"search\" tag=\"input\"/>\n<$reveal state=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n<div class=\"tc-plugin-library-listing\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]search:author,description,original-title,readme,title{$:/temp/RemoteAssetSearch/$(currentTiddler)$}sort[name]]\" variable=\"assetInfo\">\n<$list filter=\"[[$:/temp/RemoteAssetSearch/$(currentTiddler)$]has[text]] ~[<assetInfo>!has[parent-plugin]]\" variable=\"ignore\"><!-- Hide sub-plugins if we're not searching -->\n<<display-plugin-info \"$type$\">>\n</$list>\n</$list>\n</div>\n\\end\n\n\\define display-server-connection()\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/ServerConnection]suffix{!!url}]\" variable=\"connectionTiddler\" emptyMessage=<<load-plugin-library-button>>>\n\n<$set name=\"transclusion\" value=<<connectionTiddler>>>\n\n<<tabs \"[[$:/core/ui/ControlPanel/Plugins/Add/Updates]] [[$:/core/ui/ControlPanel/Plugins/Add/Plugins]] [[$:/core/ui/ControlPanel/Plugins/Add/Themes]] [[$:/core/ui/ControlPanel/Plugins/Add/Languages]]\" \"$:/core/ui/ControlPanel/Plugins/Add/Plugins\">>\n\n</$set>\n\n</$list>\n\\end\n\n\\define close-library-button()\n<$reveal type='nomatch' state='$:/temp/ServerConnection/$(PluginLibraryURL)$' text=''>\n<$button class='tc-btn-big-green'>\n<$action-sendmessage $message=\"tm-unload-plugin-library\" url={{!!url}}/>\n{{$:/core/images/chevron-left}} {{$:/language/ControlPanel/Plugins/ClosePluginLibrary}}\n<$action-deletetiddler $filter=\"[prefix[$:/temp/ServerConnection/$(PluginLibraryURL)$]][prefix[$:/temp/RemoteAssetInfo/$(PluginLibraryURL)$]]\"/>\n</$button>\n</$reveal>\n\\end\n\n\\define plugin-library-listing()\n<div class=\"tc-tab-set\">\n<$set name=\"defaultTab\" value={{{ [all[tiddlers+shadows]tag[$:/tags/PluginLibrary]] }}}>\n<div class=\"tc-tab-buttons\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/PluginLibrary]]\">\n<$button set=<<qualify \"$:/state/addplugins/tab\">> setTo=<<currentTiddler>> default=<<defaultTab>> selectedClass=\"tc-tab-selected\">\n<$set name=\"tv-wikilinks\" value=\"no\">\n<$transclude field=\"caption\"/>\n</$set>\n</$button>\n</$list>\n</div>\n<div class=\"tc-tab-divider\"/>\n<div class=\"tc-tab-content\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/PluginLibrary]]\">\n<$reveal type=\"match\" state=<<qualify \"$:/state/addplugins/tab\">> text=<<currentTiddler>> default=<<defaultTab>>>\n<h2><$link><$transclude field=\"caption\"><$view field=\"title\"/></$transclude></$link></h2>\n//<$view field=\"url\"/>//\n<$transclude mode=\"block\"/>\n<$set name=PluginLibraryURL value={{!!url}}>\n<<close-library-button>>\n</$set>\n<<display-server-connection>>\n</$reveal>\n</$list>\n</div>\n</$set>\n</div>\n\\end\n\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<div>\n<<plugin-library-listing>>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Palette": {
            "title": "$:/core/ui/ControlPanel/Palette",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/Palette/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Palette/\n\n{{$:/snippets/paletteswitcher}}\n\n<$reveal type=\"nomatch\" state=\"$:/state/ShowPaletteEditor\" text=\"yes\">\n\n<$button set=\"$:/state/ShowPaletteEditor\" setTo=\"yes\"><<lingo ShowEditor/Caption>></$button>\n\n</$reveal>\n\n<$reveal type=\"match\" state=\"$:/state/ShowPaletteEditor\" text=\"yes\">\n\n<$button set=\"$:/state/ShowPaletteEditor\" setTo=\"no\"><<lingo HideEditor/Caption>></$button>\n{{$:/PaletteManager}}\n\n</$reveal>\n\n"
        },
        "$:/core/ui/ControlPanel/Parsing": {
            "title": "$:/core/ui/ControlPanel/Parsing",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/Parsing/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Parsing/\n\n\\define toggle(Type)\n<$checkbox\ntiddler=\"\"\"$:/config/WikiParserRules/$Type$/$(rule)$\"\"\"\nfield=\"text\"\nchecked=\"enable\"\nunchecked=\"disable\"\ndefault=\"enable\">\n<<rule>>\n</$checkbox>\n\\end\n\n\\define rules(type,Type)\n<$list filter=\"[wikiparserrules[$type$]]\" variable=\"rule\">\n<dd><<toggle $Type$>></dd>\n</$list>\n\\end\n\n<<lingo Hint>>\n\n<dl>\n<dt><<lingo Pragma/Caption>></dt>\n<<rules pragma Pragma>>\n<dt><<lingo Inline/Caption>></dt>\n<<rules inline Inline>>\n<dt><<lingo Block/Caption>></dt>\n<<rules block Block>>\n</dl>"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Languages": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Languages",
            "caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}} (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[language]]\"/>)",
            "text": "<<display-server-assets language>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Plugins": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}}  (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[plugin]]\"/>)",
            "text": "<<display-server-assets plugin>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Themes": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Themes",
            "caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}}  (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[theme]]\"/>)",
            "text": "<<display-server-assets theme>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Updates": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Updates",
            "caption": "<$importvariables filter=\"$:/core/ui/ControlPanel/Plugins/Add/Updates\">{{$:/language/ControlPanel/Plugins/Updates/Caption}} (<<update-count>>)</$importvariables>",
            "text": "\\define each-updateable-plugin(body)\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}sort[title]]\" variable=\"assetInfo\">\n<$set name=\"libraryVersion\" value={{{ [<assetInfo>get[version]] }}}>\n<$list filter=\"[<assetInfo>get[original-title]has[version]!version<libraryVersion>]\" variable=\"ignore\">\n<$set name=\"installedVersion\" value={{{ [<assetInfo>get[original-title]get[version]] }}}>\n<$list filter=\"[<installedversion>!match<libraryVersion>]\" variable=\"ignore\">\n$body$\n</$list>\n</$set>\n</$list>\n</$set>\n</$list>\n\\end\n\n\\define update-all-actions()\n<$macrocall $name=\"each-updateable-plugin\" body=\"\"\"\n<<install-plugin-actions>>\n\"\"\"/>\n\\end\n\n\\define update-count()\n<$wikify name=\"count-filter\" text=<<each-updateable-plugin \"&#91;&#91;<$text text=<<assetInfo>>/>]]\">>><$count filter=<<count-filter>>/></$wikify>\n\\end\n\n<$button actions=<<update-all-actions>> class=\"tc-btn-invisible tc-install-plugin tc-reinstall-upgrade\">\n{{$:/core/images/download-button}} {{||$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption}}\n</$button>\n\n<div class=\"tc-plugin-library-listing\">\n<$macrocall $name=\"each-updateable-plugin\" body=\"\"\"\n<$macrocall $name=\"display-plugin-info\" type={{{ [<assetInfo>get[original-plugin-type]] }}}/>\n\"\"\"/>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/AddPlugins": {
            "title": "$:/core/ui/ControlPanel/Plugins/AddPlugins",
            "text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n<$button message=\"tm-modal\" param=\"$:/core/ui/ControlPanel/Modals/AddPlugins\" tooltip={{$:/language/ControlPanel/Plugins/Add/Hint}} class=\"tc-btn-big-green tc-primary-btn\">\n{{$:/core/images/download-button}} <<lingo Add/Caption>>\n</$button>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Installed/Languages": {
            "title": "$:/core/ui/ControlPanel/Plugins/Installed/Languages",
            "caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[language]]\"/>)",
            "text": "<<plugin-table language>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Installed/Plugins": {
            "title": "$:/core/ui/ControlPanel/Plugins/Installed/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[plugin]]\"/>)",
            "text": "<<plugin-table plugin>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Installed/Themes": {
            "title": "$:/core/ui/ControlPanel/Plugins/Installed/Themes",
            "caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[theme]]\"/>)",
            "text": "<<plugin-table theme>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins": {
            "title": "$:/core/ui/ControlPanel/Plugins",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Plugins/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n\\define plugin-table(type)\n<$set name=\"plugin-type\" value=\"\"\"$type$\"\"\">\n<$set name=\"qualified-state\" value=<<qualify \"$:/state/plugin-info\">>>\n<$list filter=\"[!has[draft.of]plugin-type[$type$]sort[name]]\" emptyMessage=<<lingo \"Empty/Hint\">> template=\"$:/core/ui/Components/plugin-info\"/>\n</$set>\n</$set>\n\\end\n\n{{$:/core/ui/ControlPanel/Plugins/AddPlugins}}\n\n<<lingo Installed/Hint>>\n\n<$macrocall $name=\"tabs\" tabsList=\"[[$:/core/ui/ControlPanel/Plugins/Installed/Plugins]] [[$:/core/ui/ControlPanel/Plugins/Installed/Themes]] [[$:/core/ui/ControlPanel/Plugins/Installed/Languages]]\" default=\"$:/core/ui/ControlPanel/Plugins/Installed/Plugins\" explicitState=\"$:/state/tab--86143343\"/>\n"
        },
        "$:/core/ui/ControlPanel/Saving/DownloadSaver": {
            "title": "$:/core/ui/ControlPanel/Saving/DownloadSaver",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/DownloadSaver/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/DownloadSaver/\n\n<<lingo Hint>>\n\n!! <$link to=\"$:/config/DownloadSaver/AutoSave\"><<lingo AutoSave/Hint>></$link>\n\n<$checkbox tiddler=\"$:/config/DownloadSaver/AutoSave\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <<lingo AutoSave/Description>> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Saving/General": {
            "title": "$:/core/ui/ControlPanel/Saving/General",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/General/Caption}}",
            "list-before": "",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/\n\n{{$:/language/ControlPanel/Saving/General/Hint}}\n\n!! <$link to=\"$:/config/AutoSave\"><<lingo AutoSave/Caption>></$link>\n\n<<lingo AutoSave/Hint>>\n\n<$radio tiddler=\"$:/config/AutoSave\" value=\"yes\"> <<lingo AutoSave/Enabled/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/AutoSave\" value=\"no\"> <<lingo AutoSave/Disabled/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Saving/GitHub": {
            "title": "$:/core/ui/ControlPanel/Saving/GitHub",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/GitService/GitHub/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~GitHub\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/GitHub/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo GitHub/Password>> |<$password name=\"github\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/GitHub/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/GitHub/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/GitHub/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/GitHub/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/GitHub/ServerURL\" default=\"https://api.github.com\" tag=\"input\"/> |"
        },
        "$:/core/ui/ControlPanel/Saving/GitLab": {
            "title": "$:/core/ui/ControlPanel/Saving/GitLab",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/GitService/GitLab/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~GitLab\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/GitLab/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo GitLab/Password>> |<$password name=\"gitlab\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/GitLab/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/GitLab/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/GitLab/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/GitLab/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/GitLab/ServerURL\" default=\"https://gitlab.com/api/v4\" tag=\"input\"/> |"
        },
        "$:/core/ui/ControlPanel/Saving/TiddlySpot": {
            "title": "$:/core/ui/ControlPanel/Saving/TiddlySpot",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/TiddlySpot/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/TiddlySpot/\n\n\\define siteURL(path)\nhttp://$(userName)$.tiddlyspot.com/$path$/\n\\end\n\\define siteLink(path)\n<$reveal type=\"nomatch\" state=\"$:/UploadName\" text=\"\">\n<$set name=\"userName\" value={{$:/UploadName}}>\n<$reveal type=\"match\" state=\"$:/UploadURL\" text=\"\">\n<<siteURL $path$>>\n</$reveal>\n<$reveal type=\"nomatch\" state=\"$:/UploadURL\" text=\"\">\n<$macrocall $name=resolvePath source={{$:/UploadBackupDir}} root={{$:/UploadURL}}>>\n</$reveal>\n</$set>\n</$reveal>\n\\end\n\n<div class=\"tc-message-box\">\n\n<<lingo ReadOnly>>\n\n</div>\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/UploadName\" default=\"\" tag=\"input\"/> |\n|<<lingo Password>> |<$password name=\"upload\"/> |\n|<<lingo Backups>> |<<siteLink backup>> |\n|<<lingo ControlPanel>> |<<siteLink controlpanel>> |\n\n''<<lingo Advanced/Heading>>''\n\n|<<lingo ServerURL>>  |<$edit-text tiddler=\"$:/UploadURL\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/UploadFilename\" default=\"index.html\" tag=\"input\"/> |\n|<<lingo UploadDir>> |<$edit-text tiddler=\"$:/UploadDir\" default=\".\" tag=\"input\"/> |\n|<<lingo BackupDir>> |<$edit-text tiddler=\"$:/UploadBackupDir\" default=\".\" tag=\"input\"/> |\n\n<<lingo TiddlySpot/Hint>>\n"
        },
        "$:/core/ui/ControlPanel/Saving/Gitea": {
            "title": "$:/core/ui/ControlPanel/Saving/Gitea",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/GitService/Gitea/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~Gitea\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/Gitea/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo Gitea/Password>> |<$password name=\"Gitea\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/Gitea/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/Gitea/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/Gitea/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/Gitea/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/Gitea/ServerURL\" default=\"https://gitea/api/v1\" tag=\"input\"/> |\n"
        },
        "$:/core/ui/ControlPanel/Saving": {
            "title": "$:/core/ui/ControlPanel/Saving",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Saving/Caption}}",
            "text": "{{$:/language/ControlPanel/Saving/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Saving]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Saving/General\" explicitState=\"$:/state/tab-2065006209\"/>\n</div>\n"
        },
        "$:/core/buttonstyles/Borderless": {
            "title": "$:/core/buttonstyles/Borderless",
            "tags": "$:/tags/ToolbarButtonStyle",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless}}",
            "text": "tc-btn-invisible"
        },
        "$:/core/buttonstyles/Boxed": {
            "title": "$:/core/buttonstyles/Boxed",
            "tags": "$:/tags/ToolbarButtonStyle",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed}}",
            "text": "tc-btn-boxed"
        },
        "$:/core/buttonstyles/Rounded": {
            "title": "$:/core/buttonstyles/Rounded",
            "tags": "$:/tags/ToolbarButtonStyle",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded}}",
            "text": "tc-btn-rounded"
        },
        "$:/core/ui/ControlPanel/Settings/CamelCase": {
            "title": "$:/core/ui/ControlPanel/Settings/CamelCase",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/CamelCase/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/CamelCase/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/WikiParserRules/Inline/wikilink\" field=\"text\" checked=\"enable\" unchecked=\"disable\" default=\"enable\"> <$link to=\"$:/config/WikiParserRules/Inline/wikilink\"><<lingo Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab": {
            "title": "$:/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab",
            "caption": "{{$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption}}",
            "tags": "$:/tags/ControlPanel/Settings",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/DefaultMoreSidebarTab/\n\n<$link to=\"$:/config/DefaultMoreSidebarTab\"><<lingo Hint>></$link>\n\n<$select tiddler=\"$:/config/DefaultMoreSidebarTab\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]\">\n<option value=<<currentTiddler>>><$transclude field=\"caption\"><$text text=<<currentTiddler>>/></$transclude></option>\n</$list>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/DefaultSidebarTab": {
            "title": "$:/core/ui/ControlPanel/Settings/DefaultSidebarTab",
            "caption": "{{$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption}}",
            "tags": "$:/tags/ControlPanel/Settings",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/DefaultSidebarTab/\n\n<$link to=\"$:/config/DefaultSidebarTab\"><<lingo Hint>></$link>\n\n<$select tiddler=\"$:/config/DefaultSidebarTab\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]]\">\n<option value=<<currentTiddler>>><$transclude field=\"caption\"><$text text=<<currentTiddler>>/></$transclude></option>\n</$list>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/EditorToolbar": {
            "title": "$:/core/ui/ControlPanel/Settings/EditorToolbar",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/EditorToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/EditorToolbar/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/TextEditor/EnableToolbar\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/TextEditor/EnableToolbar\"><<lingo Description>></$link> </$checkbox>\n\n"
        },
        "$:/core/ui/ControlPanel/Settings/InfoPanelMode": {
            "title": "$:/core/ui/ControlPanel/Settings/InfoPanelMode",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/InfoPanelMode/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/InfoPanelMode/\n<$link to=\"$:/config/TiddlerInfo/Mode\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/TiddlerInfo/Mode\" value=\"popup\"> <<lingo Popup/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/TiddlerInfo/Mode\" value=\"sticky\"> <<lingo Sticky/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/LinkToBehaviour": {
            "title": "$:/core/ui/ControlPanel/Settings/LinkToBehaviour",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/LinkToBehaviour/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/LinkToBehaviour/\n\n<$link to=\"$:/config/Navigation/openLinkFromInsideRiver\"><<lingo \"InsideRiver/Hint\">></$link>\n\n<$select tiddler=\"$:/config/Navigation/openLinkFromInsideRiver\">\n  <option value=\"above\"><<lingo \"OpenAbove\">></option>\n  <option value=\"below\"><<lingo \"OpenBelow\">></option>\n  <option value=\"top\"><<lingo \"OpenAtTop\">></option>\n  <option value=\"bottom\"><<lingo \"OpenAtBottom\">></option>\n</$select>\n\n<$link to=\"$:/config/Navigation/openLinkFromOutsideRiver\"><<lingo \"OutsideRiver/Hint\">></$link>\n\n<$select tiddler=\"$:/config/Navigation/openLinkFromOutsideRiver\">\n  <option value=\"top\"><<lingo \"OpenAtTop\">></option>\n  <option value=\"bottom\"><<lingo \"OpenAtBottom\">></option>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/MissingLinks": {
            "title": "$:/core/ui/ControlPanel/Settings/MissingLinks",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/MissingLinks/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/MissingLinks/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/MissingLinks\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/MissingLinks\"><<lingo Description>></$link> </$checkbox>\n\n"
        },
        "$:/core/ui/ControlPanel/Settings/NavigationAddressBar": {
            "title": "$:/core/ui/ControlPanel/Settings/NavigationAddressBar",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/NavigationAddressBar/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationAddressBar/\n\n<$link to=\"$:/config/Navigation/UpdateAddressBar\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"permaview\"> <<lingo Permaview/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"permalink\"> <<lingo Permalink/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/NavigationHistory": {
            "title": "$:/core/ui/ControlPanel/Settings/NavigationHistory",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/NavigationHistory/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationHistory/\n<$link to=\"$:/config/Navigation/UpdateHistory\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateHistory\" value=\"yes\"> <<lingo Yes/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateHistory\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/NavigationPermalinkviewMode": {
            "title": "$:/core/ui/ControlPanel/Settings/NavigationPermalinkviewMode",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationPermalinkviewMode/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Navigation/Permalinkview/CopyToClipboard\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Navigation/Permalinkview/CopyToClipboard\"><<lingo CopyToClipboard/Description>></$link> </$checkbox>\n\n<$checkbox tiddler=\"$:/config/Navigation/Permalinkview/UpdateAddressBar\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Navigation/Permalinkview/UpdateAddressBar\"><<lingo UpdateAddressBar/Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings/PerformanceInstrumentation": {
            "title": "$:/core/ui/ControlPanel/Settings/PerformanceInstrumentation",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/PerformanceInstrumentation/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Performance/Instrumentation\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Performance/Instrumentation\"><<lingo Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings/TitleLinks": {
            "title": "$:/core/ui/ControlPanel/Settings/TitleLinks",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/TitleLinks/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/TitleLinks/\n<$link to=\"$:/config/Tiddlers/TitleLinks\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Tiddlers/TitleLinks\" value=\"yes\"> <<lingo Yes/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Tiddlers/TitleLinks\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/ToolbarButtonStyle": {
            "title": "$:/core/ui/ControlPanel/Settings/ToolbarButtonStyle",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/ToolbarButtonStyle/\n<$link to=\"$:/config/Toolbar/ButtonClass\"><<lingo \"Hint\">></$link>\n\n<$select tiddler=\"$:/config/Toolbar/ButtonClass\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ToolbarButtonStyle]]\">\n<option value={{!!text}}>{{!!caption}}</option>\n</$list>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/ToolbarButtons": {
            "title": "$:/core/ui/ControlPanel/Settings/ToolbarButtons",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtons/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/ToolbarButtons/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Toolbar/Icons\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Toolbar/Icons\"><<lingo Icons/Description>></$link> </$checkbox>\n\n<$checkbox tiddler=\"$:/config/Toolbar/Text\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Toolbar/Text\"><<lingo Text/Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings": {
            "title": "$:/core/ui/ControlPanel/Settings",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Settings/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/\n\n<<lingo Hint>>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Settings]]\">\n\n<div style=\"border-top:1px solid #eee;\">\n\n!! <$link><$transclude field=\"caption\"/></$link>\n\n<$transclude/>\n\n</div>\n\n</$list>\n"
        },
        "$:/core/ui/ControlPanel/StoryView": {
            "title": "$:/core/ui/ControlPanel/StoryView",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/StoryView/Caption}}",
            "text": "{{$:/snippets/viewswitcher}}\n"
        },
        "$:/core/ui/ControlPanel/Stylesheets": {
            "title": "$:/core/ui/ControlPanel/Stylesheets",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/Stylesheets/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n\n<<lingo Stylesheets/Hint>>\n\n{{$:/snippets/peek-stylesheets}}\n"
        },
        "$:/core/ui/ControlPanel/Theme": {
            "title": "$:/core/ui/ControlPanel/Theme",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/Theme/Caption}}",
            "text": "{{$:/snippets/themeswitcher}}\n"
        },
        "$:/core/ui/ControlPanel/TiddlerFields": {
            "title": "$:/core/ui/ControlPanel/TiddlerFields",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/TiddlerFields/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n\n<<lingo TiddlerFields/Hint>>\n\n{{$:/snippets/allfields}}"
        },
        "$:/core/ui/ControlPanel/Toolbars/EditToolbar": {
            "title": "$:/core/ui/ControlPanel/Toolbars/EditToolbar",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/EditToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/EditToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/EditToolbar/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/EditToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>"
        },
        "$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate": {
            "title": "$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate",
            "text": "\\define config-title()\n$(config-base)$$(currentTiddler)$\n\\end\n\n<$draggable tiddler=<<currentTiddler>>>\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <span class=\"tc-icon-wrapper\"><$transclude tiddler={{!!icon}}/></span> <$transclude field=\"caption\"/> -- <i class=\"tc-muted\"><$transclude field=\"description\"/></i>\n</$draggable>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/EditorToolbar": {
            "title": "$:/core/ui/ControlPanel/Toolbars/EditorToolbar",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/EditorToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/EditorToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/EditorToolbar/Hint}}\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/EditorToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate\"/>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/ItemTemplate": {
            "title": "$:/core/ui/ControlPanel/Toolbars/ItemTemplate",
            "text": "\\define config-title()\n$(config-base)$$(currentTiddler)$\n\\end\n\n<$draggable tiddler=<<currentTiddler>>>\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <span class=\"tc-icon-wrapper\"> <$transclude field=\"caption\"/> <i class=\"tc-muted\">-- <$transclude field=\"description\"/></i></span>\n</$draggable>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/PageControls": {
            "title": "$:/core/ui/ControlPanel/Toolbars/PageControls",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/PageControls/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/PageControlButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/PageControls/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/PageControls\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/ViewToolbar": {
            "title": "$:/core/ui/ControlPanel/Toolbars/ViewToolbar",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/ViewToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/ViewToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/ViewToolbar/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/ViewToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars": {
            "title": "$:/core/ui/ControlPanel/Toolbars",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/Toolbars/Caption}}",
            "text": "{{$:/language/ControlPanel/Toolbars/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Toolbars]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Toolbars/ViewToolbar\" class=\"tc-vertical\" explicitState=\"$:/state/tabs/controlpanel/toolbars-1345989671\"/>\n</div>\n"
        },
        "$:/ControlPanel": {
            "title": "$:/ControlPanel",
            "icon": "$:/core/images/options-button",
            "color": "#bbb",
            "text": "<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Info\" explicitState=\"$:/state/tab-1749438307\"/>\n</div>\n"
        },
        "$:/core/ui/DefaultSearchResultList": {
            "title": "$:/core/ui/DefaultSearchResultList",
            "tags": "$:/tags/SearchResults",
            "caption": "{{$:/language/Search/DefaultResults/Caption}}",
            "first-search-filter": "[!is[system]search:title<userInput>sort[title]limit[250]]",
            "second-search-filter": "[!is[system]search<userInput>sort[title]limit[250]]",
            "text": "\\define searchResultList()\n//<small>{{$:/language/Search/Matches/Title}}</small>//\n\n<$list filter=\"[<userInput>minlength[1]]\" variable=\"ignore\">\n<$list filter={{{ [<configTiddler>get[first-search-filter]] }}}>\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[<searchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n</$list>\n\n//<small>{{$:/language/Search/Matches/All}}</small>//\n\n<$list filter=\"[<userInput>minlength[1]]\" variable=\"ignore\">\n<$list filter={{{ [<configTiddler>get[second-search-filter]] }}}>\n<span class={{{[<currentTiddler>addsuffix[-secondaryList]] -[<searchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n</$list>\n\n\\end\n<<searchResultList>>\n"
        },
        "$:/core/ui/EditTemplate/body/preview/diffs-current": {
            "title": "$:/core/ui/EditTemplate/body/preview/diffs-current",
            "tags": "$:/tags/EditPreview",
            "caption": "differences from current",
            "list-after": "$:/core/ui/EditTemplate/body/preview/output",
            "text": "<$list filter=\"[<currentTiddler>!is[image]]\" emptyMessage={{$:/core/ui/EditTemplate/body/preview/output}}>\n\n<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle={{!!draft.of}} destTiddlerTitle=<<currentTiddler>>/>\n\n</$list>\n\n"
        },
        "$:/core/ui/EditTemplate/body/preview/diffs-shadow": {
            "title": "$:/core/ui/EditTemplate/body/preview/diffs-shadow",
            "tags": "$:/tags/EditPreview",
            "caption": "differences from shadow (if any)",
            "list-after": "$:/core/ui/EditTemplate/body/preview/output",
            "text": "<$list filter=\"[<currentTiddler>!is[image]]\" emptyMessage={{$:/core/ui/EditTemplate/body/preview/output}}>\n\n<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle={{{ [{!!draft.of}shadowsource[]] }}} sourceSubTiddlerTitle={{!!draft.of}} destTiddlerTitle=<<currentTiddler>>/>\n\n</$list>\n\n"
        },
        "$:/core/ui/EditTemplate/body/preview/output": {
            "title": "$:/core/ui/EditTemplate/body/preview/output",
            "tags": "$:/tags/EditPreview",
            "caption": "{{$:/language/EditTemplate/Body/Preview/Type/Output}}",
            "text": "\\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]]\n<$set name=\"tv-tiddler-preview\" value=\"yes\">\n\n<$transclude />\n\n</$set>\n"
        },
        "$:/state/showeditpreview": {
            "title": "$:/state/showeditpreview",
            "text": "no"
        },
        "$:/core/ui/EditTemplate/body/editor": {
            "title": "$:/core/ui/EditTemplate/body/editor",
            "text": "<$edit\n\n  field=\"text\"\n  class=\"tc-edit-texteditor tc-edit-texteditor-body\"\n  placeholder={{$:/language/EditTemplate/Body/Placeholder}}\n  tabindex={{$:/config/EditTabIndex}}\n  focus={{{ [{$:/config/AutoFocus}match[text]then[true]] ~[[false]] }}}\n  cancelPopups=\"yes\"\n\n><$set\n\n  name=\"targetTiddler\"\n  value=<<currentTiddler>>\n\n><$list\n\n  filter=\"[all[shadows+tiddlers]tag[$:/tags/EditorToolbar]!has[draft.of]]\"\n\n><$reveal\n\n  type=\"nomatch\"\n  state=<<config-visibility-title>>\n  text=\"hide\"\n  class=\"tc-text-editor-toolbar-item-wrapper\"\n\n><$transclude\n\n  tiddler=\"$:/core/ui/EditTemplate/body/toolbar/button\"\n  mode=\"inline\"\n\n/></$reveal></$list></$set></$edit>\n"
        },
        "$:/core/ui/EditTemplate/body/toolbar/button": {
            "title": "$:/core/ui/EditTemplate/body/toolbar/button",
            "text": "\\define toolbar-button-icon()\n<$list\n\n  filter=\"[all[current]!has[custom-icon]]\"\n  variable=\"no-custom-icon\"\n\n><$transclude\n\n  tiddler={{!!icon}}\n\n/></$list>\n\\end\n\n\\define toolbar-button-tooltip()\n{{!!description}}<$macrocall $name=\"displayshortcuts\" $output=\"text/plain\" shortcuts={{!!shortcuts}} prefix=\"` - [\" separator=\"] [\" suffix=\"]`\"/>\n\\end\n\n\\define toolbar-button()\n<$list\n\n  filter={{!!condition}}\n  variable=\"list-condition\"\n\n><$wikify\n\n  name=\"tooltip-text\"\n  text=<<toolbar-button-tooltip>>\n  mode=\"inline\"\n  output=\"text\"\n\n><$list\n\n  filter=\"[all[current]!has[dropdown]]\"\n  variable=\"no-dropdown\"\n\n><$button\n\n  class=\"tc-btn-invisible $(buttonClasses)$\"\n  tooltip=<<tooltip-text>>\n  actions={{!!actions}}\n\n><span\n\n  data-tw-keyboard-shortcut={{!!shortcuts}}\n\n/><<toolbar-button-icon>><$transclude\n\n  tiddler=<<currentTiddler>>\n  field=\"text\"\n\n/></$button></$list><$list\n\n  filter=\"[all[current]has[dropdown]]\"\n  variable=\"dropdown\"\n\n><$set\n\n  name=\"dropdown-state\"\n  value=<<qualify \"$:/state/EditorToolbarDropdown\">>\n\n><$button\n\n  popup=<<dropdown-state>>\n  class=\"tc-popup-keep tc-btn-invisible $(buttonClasses)$\"\n  selectedClass=\"tc-selected\"\n  tooltip=<<tooltip-text>>\n  actions={{!!actions}}\n\n><span\n\n  data-tw-keyboard-shortcut={{!!shortcuts}}\n\n/><<toolbar-button-icon>><$transclude\n\n  tiddler=<<currentTiddler>>\n  field=\"text\"\n\n/></$button><$reveal\n\n  state=<<dropdown-state>>\n  type=\"popup\"\n  position=\"below\"\n  animate=\"yes\"\n  tag=\"span\"\n\n><div\n\n  class=\"tc-drop-down tc-popup-keep\"\n\n><$transclude\n\n  tiddler={{!!dropdown}}\n  mode=\"block\"\n\n/></div></$reveal></$set></$list></$wikify></$list>\n\\end\n\n\\define toolbar-button-outer()\n<$set\n\n  name=\"buttonClasses\"\n  value={{!!button-classes}}\n\n><<toolbar-button>></$set>\n\\end\n\n<<toolbar-button-outer>>"
        },
        "$:/core/ui/EditTemplate/body": {
            "title": "$:/core/ui/EditTemplate/body",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/Body/\n\\define config-visibility-title()\n$:/config/EditorToolbarButtons/Visibility/$(currentTiddler)$\n\\end\n<$list filter=\"[all[current]has[_canonical_uri]]\">\n\n<div class=\"tc-message-box\">\n\n<<lingo External/Hint>>\n\n<a href={{!!_canonical_uri}}><$text text={{!!_canonical_uri}}/></a>\n\n<$edit-text field=\"_canonical_uri\" class=\"tc-edit-fields\" tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"></$edit-text>\n\n</div>\n\n</$list>\n\n<$list filter=\"[all[current]!has[_canonical_uri]]\">\n\n<$reveal state=\"$:/state/showeditpreview\" type=\"match\" text=\"yes\">\n\n<div class=\"tc-tiddler-preview\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/editor\" mode=\"inline\"/>\n\n<div class=\"tc-tiddler-preview-preview\">\n\n<$transclude tiddler={{$:/state/editpreviewtype}} mode=\"inline\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/preview/output\" mode=\"inline\"/>\n\n</$transclude>\n\n</div>\n\n</div>\n\n</$reveal>\n\n<$reveal state=\"$:/state/showeditpreview\" type=\"nomatch\" text=\"yes\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/editor\" mode=\"inline\"/>\n\n</$reveal>\n\n</$list>\n"
        },
        "$:/core/ui/EditTemplate/controls": {
            "title": "$:/core/ui/EditTemplate/controls",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define config-title()\n$:/config/EditToolbarButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-tiddler-title tc-tiddler-edit-title\">\n<$view field=\"title\"/>\n<span class=\"tc-tiddler-controls tc-titlebar\"><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditToolbar]!has[draft.of]]\" variable=\"listItem\"><$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"><$transclude tiddler=<<listItem>>/></$reveal></$list></span>\n<div style=\"clear: both;\"></div>\n</div>\n"
        },
        "$:/core/ui/EditTemplate/fields": {
            "title": "$:/core/ui/EditTemplate/fields",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/\n\\define config-title()\n$:/config/EditTemplateFields/Visibility/$(currentField)$\n\\end\n\n\\define config-filter()\n[[hide]] -[title{$(config-title)$}]\n\\end\n\n\\define current-tiddler-new-field-selector()\n[data-tiddler-title=\"$(currentTiddlerCSSescaped)$\"] .tc-edit-field-add-name-wrapper input\n\\end\n\n\\define new-field-actions()\n<$action-sendmessage $message=\"tm-add-field\" $name={{{ [<newFieldNameTiddler>get[text]] }}} $value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<storeTitle>] [<searchListState>]\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/>\n\\end\n\n\\define delete-state-tiddlers() <$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<storeTitle>] [<searchListState>]\"/>\n\n\\define cancel-search-actions-inner()\n<$list filter=\"[<storeTitle>has[text]] [<newFieldNameTiddler>has[text]]\" variable=\"ignore\" emptyMessage=\"\"\"<<cancel-delete-tiddler-actions \"cancel\">>\"\"\">\n<<delete-state-tiddlers>>\n</$list>\n\\end\n\n\\define cancel-search-actions()\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[<newFieldNameTiddler>get[text]!match<userInput>]\" emptyMessage=\"\"\"<<cancel-search-actions-inner>>\"\"\">\n<$action-setfield $tiddler=<<newFieldNameTiddler>> text=<<userInput>>/><$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n</$list>\n</$set>\n\\end\n\n\\define new-field()\n<$vars name={{{ [<newFieldNameTiddler>get[text]] }}}>\n<$reveal type=\"nomatch\" text=\"\" default=<<name>>>\n<$button tooltip=<<lingo Fields/Add/Button/Hint>>>\n<$action-sendmessage $message=\"tm-add-field\"\n$name=<<name>>\n$value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<storeTitle>] [<searchListState>]\"/>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" text=\"\" default=<<name>>>\n<$button>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n</$vars>\n\\end\n\\whitespace trim\n\n<div class=\"tc-edit-fields\">\n<table class={{{ [all[current]fields[]] :filter[lookup[$:/config/EditTemplateFields/Visibility/]!match[hide]] +[count[]!match[0]] +[then[tc-edit-fields]] ~[[tc-edit-fields tc-edit-fields-small]] }}}>\n<tbody>\n<$list filter=\"[all[current]fields[]] +[sort[title]]\" variable=\"currentField\" storyview=\"pop\">\n<$list filter=<<config-filter>> variable=\"temp\">\n<tr class=\"tc-edit-field\">\n<td class=\"tc-edit-field-name\">\n<$text text=<<currentField>>/>:</td>\n<td class=\"tc-edit-field-value\">\n<$keyboard key=\"((delete-field))\" actions=\"\"\"<$action-deletefield $field=<<currentField>>/><$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}><$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/></$set>\"\"\">\n<$edit-text tiddler=<<currentTiddler>> field=<<currentField>> placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"/>\n</$keyboard>\n</td>\n<td class=\"tc-edit-field-remove\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Field/Remove/Hint}} aria-label={{$:/language/EditTemplate/Field/Remove/Caption}}>\n<$action-deletefield $field=<<currentField>>/><$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}><$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/></$set>\n{{$:/core/images/delete-button}}\n</$button>\n</td>\n</tr>\n</$list>\n</$list>\n</tbody>\n</table>\n</div>\n\n<$fieldmangler>\n<div class=\"tc-edit-field-add\">\n<em class=\"tc-edit tc-big-gap-right\">\n<<lingo Fields/Add/Prompt>>\n</em>\n<$vars refreshTitle=<<qualify \"$:/temp/fieldname/refresh\">> storeTitle=<<newFieldNameInputTiddler>> searchListState=<<newFieldNameSelectionTiddler>>>\n<div class=\"tc-edit-field-add-name-wrapper\">\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<newFieldNameTiddler>> storeTitle=<<storeTitle>> refreshTitle=<<refreshTitle>>\n\t\tselectionStateTitle=<<searchListState>> tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Name/Placeholder}}\n\t\tfocusPopup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-edit-texteditor tc-popup-handle\" tabindex={{$:/config/EditTabIndex}}\n\t\tfocus={{{ [{$:/config/AutoFocus}match[fields]then[true]] ~[[false]] }}} cancelPopups=\"yes\"\n\t\tconfigTiddlerFilter=\"[[$:/config/EditMode/fieldname-filter]]\" inputCancelActions=<<cancel-search-actions>> />\n<$button popup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown tc-small-gap\" tooltip={{$:/language/EditTemplate/Field/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Field/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/field-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher to=<<newFieldNameTiddler>>>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/User>>\n</div>\n<$set name=\"newFieldName\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[!is[shadow]!is[system]fields[]search:title<newFieldName>sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type\"  variable=\"currentField\">\n<$list filter=\"[<currentField>addsuffix[-primaryList]] -[<searchListState>get[text]]\" emptyMessage=\"\"\"<$link to=<<currentField>> class=\"tc-list-item-selected\"><$text text=<<currentField>>/></$link>\"\"\">\n<$link to=<<currentField>>>\n<$text text=<<currentField>>/>\n</$link>\n</$list>\n</$list>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/System>>\n</div>\n<$list filter=\"[fields[]search:title<newFieldName>sort[]] -[!is[shadow]!is[system]fields[]]\" variable=\"currentField\">\n<$list filter=\"[<currentField>addsuffix[-secondaryList]] -[<searchListState>get[text]]\" emptyMessage=\"\"\"<$link to=<<currentField>> class=\"tc-list-item-selected\"><$text text=<<currentField>>/></$link>\"\"\">\n<$link to=<<currentField>>>\n<$text text=<<currentField>>/>\n</$link>\n</$list>\n</$list>\n</$set>\n</$linkcatcher>\n</$set>\n</div>\n</$reveal>\n</div>\n<span class=\"tc-edit-field-add-value tc-small-gap-right\">\n<$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}>\n<$keyboard key=\"((add-field))\" actions=<<new-field-actions>>>\n<$edit-text tiddler=<<newFieldValueTiddler>> tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} class=\"tc-edit-texteditor\" tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"/>\n</$keyboard>\n</$set>\n</span>\n<span class=\"tc-edit-field-add-button\">\n<$macrocall $name=\"new-field\"/>\n</span>\n</$vars>\n</div>\n</$fieldmangler>\n"
        },
        "$:/core/ui/EditTemplate/shadow": {
            "title": "$:/core/ui/EditTemplate/shadow",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/Shadow/\n\\define pluginLinkBody()\n<$link to=\"\"\"$(pluginTitle)$\"\"\">\n<$text text=\"\"\"$(pluginTitle)$\"\"\"/>\n</$link>\n\\end\n<$list filter=\"[all[current]get[draft.of]is[shadow]!is[tiddler]]\">\n\n<$list filter=\"[all[current]shadowsource[]]\" variable=\"pluginTitle\">\n\n<$set name=\"pluginLink\" value=<<pluginLinkBody>>>\n<div class=\"tc-message-box\">\n\n<<lingo Warning>>\n\n</div>\n</$set>\n</$list>\n\n</$list>\n\n<$list filter=\"[all[current]get[draft.of]is[shadow]is[tiddler]]\">\n\n<$list filter=\"[all[current]shadowsource[]]\" variable=\"pluginTitle\">\n\n<$set name=\"pluginLink\" value=<<pluginLinkBody>>>\n<div class=\"tc-message-box\">\n\n<<lingo OverriddenWarning>>\n\n</div>\n</$set>\n</$list>\n\n</$list>"
        },
        "$:/core/ui/EditTemplate/tags": {
            "title": "$:/core/ui/EditTemplate/tags",
            "tags": "$:/tags/EditTemplate",
            "text": "\\whitespace trim\n\n\\define lingo-base() $:/language/EditTemplate/\n\n\\define tag-styles()\nbackground-color:$(backgroundColor)$;\nfill:$(foregroundColor)$;\ncolor:$(foregroundColor)$;\n\\end\n\n\\define tag-body-inner(colour,fallbackTarget,colourA,colourB,icon,tagField:\"tags\")\n\\whitespace trim\n<$vars foregroundColor=<<contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"$fallbackTarget$\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\">> backgroundColor=\"\"\"$colour$\"\"\">\n<span style=<<tag-styles>> class=\"tc-tag-label tc-tag-list-item\">\n<$transclude tiddler=\"\"\"$icon$\"\"\"/><$view field=\"title\" format=\"text\" />\n<$button class=\"tc-btn-invisible tc-remove-tag-button\"><$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"-[{!!title}]\"/>{{$:/core/images/close-button}}</$button>\n</span>\n</$vars>\n\\end\n\n\\define tag-body(colour,palette,icon,tagField:\"tags\")\n<$macrocall $name=\"tag-body-inner\" colour=\"\"\"$colour$\"\"\" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}} icon=\"\"\"$icon$\"\"\" tagField=<<__tagField__>>/>\n\\end\n\n\\define edit-tags-template(tagField:\"tags\")\n\\whitespace trim\n<div class=\"tc-edit-tags\">\n<$list filter=\"[list[!!$tagField$]sort[title]]\" storyview=\"pop\">\n<$macrocall $name=\"tag-body\" colour={{!!color}} palette={{$:/palette}} icon={{!!icon}} tagField=<<__tagField__>>/>\n</$list>\n<$vars tabIndex={{$:/config/EditTabIndex}} cancelPopups=\"yes\">\n<$macrocall $name=\"tag-picker\" tagField=<<__tagField__>>/>\n</$vars>\n</div>\n\\end\n<$set name=\"saveTiddler\" value=<<currentTiddler>>>\n<$macrocall $name=\"edit-tags-template\" tagField=<<tagField>>/>\n</$set>\n"
        },
        "$:/core/ui/EditTemplate/title": {
            "title": "$:/core/ui/EditTemplate/title",
            "tags": "$:/tags/EditTemplate",
            "text": "<$edit-text field=\"draft.title\" class=\"tc-titlebar tc-edit-texteditor\" focus={{{ [{$:/config/AutoFocus}match[title]then[true]] ~[[false]] }}} tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"/>\n\n<$vars pattern=\"\"\"[\\|\\[\\]{}]\"\"\" bad-chars=\"\"\"`| [ ] { }`\"\"\">\n\n<$list filter=\"[all[current]regexp:draft.title<pattern>]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/BadCharacterWarning}}\n\n</div>\n\n</$list>\n\n</$vars>\n\n<$reveal state=\"!!draft.title\" type=\"nomatch\" text={{!!draft.of}} tag=\"div\">\n\n<$list filter=\"[{!!draft.title}!is[missing]]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/Exists/Prompt}}\n\n</div>\n\n</$list>\n\n<$list filter=\"[{!!draft.of}!is[missing]]\" variable=\"listItem\">\n\n<$vars fromTitle={{!!draft.of}} toTitle={{!!draft.title}}>\n\n<$checkbox tiddler=\"$:/config/RelinkOnRename\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> {{$:/language/EditTemplate/Title/Relink/Prompt}}</$checkbox>\n\n<$list filter=\"[title<fromTitle>backlinks[]limit[1]]\" variable=\"listItem\">\n\n<$vars stateTiddler=<<qualify \"$:/state/edit/references\">> >\n\n<$reveal type=\"nomatch\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"show\" class=\"tc-btn-invisible\">{{$:/core/images/right-arrow}} \n<<lingo EditTemplate/Title/References/Prompt>></$button>\n</$reveal>\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"hide\" class=\"tc-btn-invisible\">{{$:/core/images/down-arrow}} \n<<lingo EditTemplate/Title/References/Prompt>></$button>\n</$reveal>\n\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$tiddler tiddler=<<fromTitle>> >\n<$transclude tiddler=\"$:/core/ui/TiddlerInfo/References\"/>\n</$tiddler>\n</$reveal>\n\n</$vars>\n\n</$list>\n\n</$vars>\n\n</$list>\n\n</$reveal>\n"
        },
        "$:/core/ui/EditTemplate/type": {
            "title": "$:/core/ui/EditTemplate/type",
            "tags": "$:/tags/EditTemplate",
            "first-search-filter": "[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]sort[description]sort[group-sort]removeprefix[$:/language/Docs/Types/]search<userInput>]",
            "text": "\\define lingo-base() $:/language/EditTemplate/\n\\define input-cancel-actions() <$list filter=\"[<storeTitle>get[text]] [<currentTiddler>get[type]] +[limit[1]]\" emptyMessage=\"\"\"<<cancel-delete-tiddler-actions \"cancel\">>\"\"\"><$action-sendmessage $message=\"tm-remove-field\" $param=\"type\"/><$action-deletetiddler $filter=\"[<typeInputTiddler>] [<refreshTitle>] [<typeSelectionTiddler>]\"/></$list>\n\\whitespace trim\n<$set name=\"refreshTitle\" value=<<qualify \"$:/temp/type-search/refresh\">>>\n<div class=\"tc-edit-type-selector-wrapper\">\n<em class=\"tc-edit tc-big-gap-right\"><<lingo Type/Prompt>></em>\n<div class=\"tc-type-selector-dropdown-wrapper\">\n<div class=\"tc-type-selector\"><$fieldmangler>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<currentTiddler>> storeTitle=<<typeInputTiddler>> refreshTitle=<<refreshTitle>> selectionStateTitle=<<typeSelectionTiddler>> field=\"type\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Type/Placeholder}} focusPopup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-edit-typeeditor tc-edit-texteditor tc-popup-handle\" tabindex={{$:/config/EditTabIndex}} focus={{{ [{$:/config/AutoFocus}match[type]then[true]] ~[[false]] }}} cancelPopups=\"yes\" configTiddlerFilter=\"[[$:/core/ui/EditTemplate/type]]\" inputCancelActions=<<input-cancel-actions>>/><$button popup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown tc-small-gap\" tooltip={{$:/language/EditTemplate/Type/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Type/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button><$button message=\"tm-remove-field\" param=\"type\" class=\"tc-btn-invisible tc-btn-icon\" tooltip={{$:/language/EditTemplate/Type/Delete/Hint}} aria-label={{$:/language/EditTemplate/Type/Delete/Caption}}>{{$:/core/images/delete-button}}<$action-deletetiddler $filter=\"[<storeTitle>] [<refreshTitle>] [<selectionStateTitle>]\"/></$button>\n</$fieldmangler></div>\n\n<div class=\"tc-block-dropdown-wrapper\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$reveal state=<<qualify \"$:/state/popup/type-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$linkcatcher to=\"!!type\">\n<$list filter='[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]each[group]sort[group-sort]]'>\n<div class=\"tc-dropdown-item\">\n<$text text={{!!group}}/>\n</div>\n<$set name=\"userInput\" value={{{ [<typeInputTiddler>get[text]] }}}>\n<$list filter=\"[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]group{!!group}] +[sort[description]] +[removeprefix[$:/language/Docs/Types/]] +[search<userInput>]\"><span class={{{ [<currentTiddler>addsuffix[-primaryList]] -[<typeSelectionTiddler>get[text]] +[then[]else[tc-list-item-selected]] }}}><$link to={{{ [<currentTiddler>addprefix[$:/language/Docs/Types/]get[name]] }}}><$view tiddler={{{ [<currentTiddler>addprefix[$:/language/Docs/Types/]] }}} field=\"description\"/> (<$view tiddler={{{ [<currentTiddler>addprefix[$:/language/Docs/Types/]] }}} field=\"name\"/>)</$link></span>\n</$list>\n</$set>\n</$list>\n</$linkcatcher>\n</div>\n</$reveal>\n</$set>\n</div>\n</div>\n</div>\n</$set>\n"
        },
        "$:/core/ui/EditTemplate": {
            "title": "$:/core/ui/EditTemplate",
            "text": "\\define delete-edittemplate-state-tiddlers() <$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<newFieldNameInputTiddler>] [<newFieldNameSelectionTiddler>] [<newTagNameTiddler>] [<newTagNameInputTiddler>] [<newTagNameSelectionTiddler>] [<typeInputTiddler>] [<typeSelectionTiddler>]\"/>\n\\define save-tiddler-actions()\n<$action-sendmessage $message=\"tm-add-tag\" $param={{{ [<newTagNameTiddler>get[text]] }}}/>\n<$action-sendmessage $message=\"tm-add-field\" $name={{{ [<newFieldNameTiddler>get[text]] }}} $value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<<delete-edittemplate-state-tiddlers>>\n<$action-sendmessage $message=\"tm-save-tiddler\"/>\n\\end\n\\define cancel-delete-tiddler-actions(message)\n<<delete-edittemplate-state-tiddlers>>\n<$action-sendmessage $message=\"tm-$message$-tiddler\"/>\n\\end\n<div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class={{{ tc-tiddler-frame tc-tiddler-edit-frame [<currentTiddler>is[tiddler]then[tc-tiddler-exists]] [<currentTiddler>is[missing]!is[shadow]then[tc-tiddler-missing]] [<currentTiddler>is[shadow]then[tc-tiddler-exists tc-tiddler-shadow]] [<currentTiddler>is[system]then[tc-tiddler-system]] [{!!class}] [<currentTiddler>tags[]encodeuricomponent[]addprefix[tc-tagged-]] +[join[ ]] }}}>\n<$fieldmangler>\n<$vars storyTiddler=<<currentTiddler>> newTagNameTiddler=<<qualify \"$:/temp/NewTagName\">> newFieldNameTiddler=<<qualify \"$:/temp/NewFieldName\">> newFieldValueTiddler=<<qualify \"$:/temp/NewFieldValue\">> newFieldNameInputTiddler=<<qualify \"$:/temp/NewFieldName/input\">> newFieldNameSelectionTiddler=<<qualify \"$:/temp/NewFieldName/selected-item\">> newTagNameInputTiddler=<<qualify \"$:/temp/NewTagName/input\">> newTagNameSelectionTiddler=<<qualify \"$:/temp/NewTagName/selected-item\">> typeInputTiddler=<<qualify \"$:/temp/Type/input\">> typeSelectionTiddler=<<qualify \"$:/temp/Type/selected-item\">>>\n<$keyboard key=\"((cancel-edit-tiddler))\" actions=<<cancel-delete-tiddler-actions \"cancel\">>>\n<$keyboard key=\"((save-tiddler))\" actions=<<save-tiddler-actions>>>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditTemplate]!has[draft.of]]\" variable=\"listItem\">\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n<$transclude tiddler=<<listItem>>/>\n</$set>\n</$list>\n</$keyboard>\n</$keyboard>\n</$vars>\n</$fieldmangler>\n</div>\n"
        },
        "$:/core/ui/Buttons/cancel": {
            "title": "$:/core/ui/Buttons/cancel",
            "tags": "$:/tags/EditToolbar",
            "caption": "{{$:/core/images/cancel-button}} {{$:/language/Buttons/Cancel/Caption}}",
            "description": "{{$:/language/Buttons/Cancel/Hint}}",
            "text": "\\whitespace trim\n<$button actions=<<cancel-delete-tiddler-actions \"cancel\">> tooltip={{$:/language/Buttons/Cancel/Hint}} aria-label={{$:/language/Buttons/Cancel/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/cancel-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Cancel/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/core/ui/Buttons/delete": {
            "title": "$:/core/ui/Buttons/delete",
            "tags": "$:/tags/EditToolbar $:/tags/ViewToolbar",
            "caption": "{{$:/core/images/delete-button}} {{$:/language/Buttons/Delete/Caption}}",
            "description": "{{$:/language/Buttons/Delete/Hint}}",
            "text": "\\whitespace trim\n<$button actions=<<cancel-delete-tiddler-actions \"delete\">> tooltip={{$:/language/Buttons/Delete/Hint}} aria-label={{$:/language/Buttons/Delete/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/delete-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Delete/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/core/ui/Buttons/save": {
            "title": "$:/core/ui/Buttons/save",
            "tags": "$:/tags/EditToolbar",
            "caption": "{{$:/core/images/done-button}} {{$:/language/Buttons/Save/Caption}}",
            "description": "{{$:/language/Buttons/Save/Hint}}",
            "text": "\\define save-tiddler-button()\n\\whitespace trim\n<$fieldmangler><$button tooltip={{$:/language/Buttons/Save/Hint}} aria-label={{$:/language/Buttons/Save/Caption}} class=<<tv-config-toolbar-class>>>\n<<save-tiddler-actions>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/done-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Save/Caption}}/></span>\n</$list>\n</$button></$fieldmangler>\n\\end\n<<save-tiddler-button>>\n"
        },
        "$:/core/ui/EditorToolbar/bold": {
            "title": "$:/core/ui/EditorToolbar/bold",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/bold",
            "caption": "{{$:/language/Buttons/Bold/Caption}}",
            "description": "{{$:/language/Buttons/Bold/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((bold))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"''\"\n\tsuffix=\"''\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/clear-dropdown": {
            "title": "$:/core/ui/EditorToolbar/clear-dropdown",
            "text": "''{{$:/language/Buttons/Clear/Hint}}''\n\n<div class=\"tc-colour-chooser\">\n\n<$macrocall $name=\"colour-picker\" actions=\"\"\"\n\n<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"clear\"\n\tcolour=<<colour-picker-value>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n\n</div>\n"
        },
        "$:/core/ui/EditorToolbar/clear": {
            "title": "$:/core/ui/EditorToolbar/clear",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/erase",
            "caption": "{{$:/language/Buttons/Clear/Caption}}",
            "description": "{{$:/language/Buttons/Clear/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/clear-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/editor-height-dropdown": {
            "title": "$:/core/ui/EditorToolbar/editor-height-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/EditorHeight/\n''<<lingo Hint>>''\n\n<$radio tiddler=\"$:/config/TextEditor/EditorHeight/Mode\" value=\"auto\"> {{$:/core/images/auto-height}} <<lingo Caption/Auto>></$radio>\n\n<$radio tiddler=\"$:/config/TextEditor/EditorHeight/Mode\" value=\"fixed\"> {{$:/core/images/fixed-height}} <<lingo Caption/Fixed>> <$edit-text tag=\"input\" tiddler=\"$:/config/TextEditor/EditorHeight/Height\" default=\"100px\"/></$radio>\n"
        },
        "$:/core/ui/EditorToolbar/editor-height": {
            "title": "$:/core/ui/EditorToolbar/editor-height",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/fixed-height",
            "custom-icon": "yes",
            "caption": "{{$:/language/Buttons/EditorHeight/Caption}}",
            "description": "{{$:/language/Buttons/EditorHeight/Hint}}",
            "condition": "[<targetTiddler>type[]] [<targetTiddler>get[type]prefix[text/]] [<targetTiddler>get[type]match[application/javascript]] [<targetTiddler>get[type]match[application/json]] [<targetTiddler>get[type]match[application/x-tiddler-dictionary]] [<targetTiddler>get[type]match[image/svg+xml]] +[first[]]",
            "dropdown": "$:/core/ui/EditorToolbar/editor-height-dropdown",
            "text": "<$reveal tag=\"span\" state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"fixed\">\n{{$:/core/images/fixed-height}}\n</$reveal>\n<$reveal tag=\"span\" state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"auto\">\n{{$:/core/images/auto-height}}\n</$reveal>\n"
        },
        "$:/core/ui/EditorToolbar/excise-dropdown": {
            "title": "$:/core/ui/EditorToolbar/excise-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Excise/\n\n\\define body(config-title)\n''<<lingo Hint>>''\n\n<<lingo Caption/NewTitle>> <$edit-text tag=\"input\" tiddler=\"$config-title$/new-title\" default=\"\" focus=\"true\"/>\n\n<$set name=\"new-title\" value={{$config-title$/new-title}}>\n<$list filter=\"\"\"[<new-title>is[tiddler]]\"\"\">\n<div class=\"tc-error\">\n<<lingo Caption/TiddlerExists>>\n</div>\n</$list>\n</$set>\n\n<$checkbox tiddler=\"\"\"$config-title$/tagnew\"\"\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"false\"> <<lingo Caption/Tag>></$checkbox>\n\n<<lingo Caption/Replace>> <$select tiddler=\"\"\"$config-title$/type\"\"\" default=\"transclude\">\n<option value=\"link\"><<lingo Caption/Replace/Link>></option>\n<option value=\"transclude\"><<lingo Caption/Replace/Transclusion>></option>\n<option value=\"macro\"><<lingo Caption/Replace/Macro>></option>\n</$select>\n\n<$reveal state=\"\"\"$config-title$/type\"\"\" type=\"match\" text=\"macro\">\n<<lingo Caption/MacroName>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/macro-title\"\"\" default=\"translink\"/>\n</$reveal>\n\n<$button>\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"excise\"\n\ttitle={{$config-title$/new-title}}\n\ttype={{$config-title$/type}}\n\tmacro={{$config-title$/macro-title}}\n\ttagnew={{$config-title$/tagnew}}\n/>\n<$action-deletetiddler\n\t$tiddler=\"$config-title$/new-title\"\n/>\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n<<lingo Caption/Excise>>\n</$button>\n\\end\n\n<$macrocall $name=\"body\" config-title=<<qualify \"$:/state/Excise/\">>/>\n"
        },
        "$:/core/ui/EditorToolbar/excise": {
            "title": "$:/core/ui/EditorToolbar/excise",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/excise",
            "caption": "{{$:/language/Buttons/Excise/Caption}}",
            "description": "{{$:/language/Buttons/Excise/Hint}}",
            "condition": "[<targetTiddler>type[]] [<targetTiddler>type[text/vnd.tiddlywiki]] +[first[]]",
            "shortcuts": "((excise))",
            "dropdown": "$:/core/ui/EditorToolbar/excise-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/heading-1": {
            "title": "$:/core/ui/EditorToolbar/heading-1",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-1",
            "caption": "{{$:/language/Buttons/Heading1/Caption}}",
            "description": "{{$:/language/Buttons/Heading1/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((heading-1))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-2": {
            "title": "$:/core/ui/EditorToolbar/heading-2",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-2",
            "caption": "{{$:/language/Buttons/Heading2/Caption}}",
            "description": "{{$:/language/Buttons/Heading2/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-2))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"2\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-3": {
            "title": "$:/core/ui/EditorToolbar/heading-3",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-3",
            "caption": "{{$:/language/Buttons/Heading3/Caption}}",
            "description": "{{$:/language/Buttons/Heading3/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-3))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"3\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-4": {
            "title": "$:/core/ui/EditorToolbar/heading-4",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-4",
            "caption": "{{$:/language/Buttons/Heading4/Caption}}",
            "description": "{{$:/language/Buttons/Heading4/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-4))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"4\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-5": {
            "title": "$:/core/ui/EditorToolbar/heading-5",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-5",
            "caption": "{{$:/language/Buttons/Heading5/Caption}}",
            "description": "{{$:/language/Buttons/Heading5/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-5))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"5\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-6": {
            "title": "$:/core/ui/EditorToolbar/heading-6",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-6",
            "caption": "{{$:/language/Buttons/Heading6/Caption}}",
            "description": "{{$:/language/Buttons/Heading6/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-6))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"6\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/italic": {
            "title": "$:/core/ui/EditorToolbar/italic",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/italic",
            "caption": "{{$:/language/Buttons/Italic/Caption}}",
            "description": "{{$:/language/Buttons/Italic/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((italic))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"//\"\n\tsuffix=\"//\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/line-width-dropdown": {
            "title": "$:/core/ui/EditorToolbar/line-width-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/LineWidth/\n\n\\define toolbar-line-width-inner()\n<$button tag=\"a\" tooltip=\"\"\"$(line-width)$\"\"\">\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/LineWidth\"\n\t$value=\"$(line-width)$\"\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<div style=\"display: inline-block; margin: 4px calc(80px - $(line-width)$); background-color: #000; width: calc(100px + $(line-width)$ * 2); height: $(line-width)$; border-radius: 120px; vertical-align: middle;\"/>\n\n<span style=\"margin-left: 8px;\">\n\n<$text text=\"\"\"$(line-width)$\"\"\"/>\n\n<$reveal state=\"$:/config/BitmapEditor/LineWidth\" type=\"match\" text=\"\"\"$(line-width)$\"\"\" tag=\"span\">\n\n<$entity entity=\"&nbsp;\"/>\n\n<$entity entity=\"&#x2713;\"/>\n\n</$reveal>\n\n</span>\n\n</$button>\n\\end\n\n''<<lingo Hint>>''\n\n<$list filter={{$:/config/BitmapEditor/LineWidths}} variable=\"line-width\">\n\n<<toolbar-line-width-inner>>\n\n</$list>\n"
        },
        "$:/core/ui/EditorToolbar/line-width": {
            "title": "$:/core/ui/EditorToolbar/line-width",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/line-width",
            "caption": "{{$:/language/Buttons/LineWidth/Caption}}",
            "description": "{{$:/language/Buttons/LineWidth/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/line-width-dropdown",
            "text": "<$text text={{$:/config/BitmapEditor/LineWidth}}/>\n"
        },
        "$:/core/ui/EditorToolbar/link-dropdown": {
            "title": "$:/core/ui/EditorToolbar/link-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Link/\n\n\\define add-link-actions()\n<$action-sendmessage $message=\"tm-edit-text-operation\" $param=\"make-link\" text={{$(linkTiddler)$}} />\n<$action-deletetiddler $filter=\"[<dropdown-state>] [<searchTiddler>] [<linkTiddler>] [<storeTitle>] [<searchListState>]\"/>\n\\end\n\n\\define get-focus-selector() [data-tiddler-title=\"$(cssEscapedTitle)$\"] .tc-create-wikitext-link input\n\n\\define cancel-search-actions-inner()\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}><$list filter=\"[<searchTiddler>get[text]!match<userInput>]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[<searchTiddler>] [<linkTiddler>] [<storeTitle>] [<searchListState>]\"/>\"\"\"><$action-setfield $tiddler=<<searchTiddler>> text=<<userInput>>/><$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/></$list></$set>\n\\end\n\n\\define cancel-search-actions() <$list filter=\"[<storeTitle>!has[text]] +[<searchTiddler>!has[text]]\" emptyMessage=\"\"\"<<cancel-search-actions-inner>>\"\"\"><$action-sendmessage $message=\"tm-edit-text-operation\" $param=\"wrap-selection\" prefix=\"\" suffix=\"\"/></$list>\n\n\\define external-link()\n<$button class=\"tc-btn-invisible\" style=\"width: auto; display: inline-block; background-colour: inherit;\" actions=<<add-link-actions>>>\n{{$:/core/images/chevron-right}}\n</$button>\n\\end\n\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/sidebar\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/search/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define body(config-title)\n''<<lingo Hint>>''\n\n<$vars searchTiddler=\"\"\"$config-title$/search\"\"\" linkTiddler=\"\"\"$config-title$/link\"\"\" linktext=\"\" searchListState=<<qualify \"$:/temp/link-search/selected-item\">> refreshTitle=<<qualify \"$:/temp/link-search/refresh\">> storeTitle=<<qualify \"$:/temp/link-search/input\">>>\n\n<$vars linkTiddler=<<searchTiddler>>>\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">> class=\"tc-create-wikitext-link\">\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<searchTiddler>> storeTitle=<<storeTitle>>\n\t\tselectionStateTitle=<<searchListState>> refreshTitle=<<refreshTitle>> type=\"search\" filterMinLength=\"1\"\n\t\ttag=\"input\" focus=\"true\" class=\"tc-popup-handle\" inputCancelActions=<<cancel-search-actions>> \n\t\tinputAcceptActions=<<add-link-actions>> placeholder={{$:/language/Search/Search}} default=\"\" \n\t\tconfigTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\" />\n</$keyboard>\n</$keyboard>\n<$reveal tag=\"span\" state=<<storeTitle>> type=\"nomatch\" text=\"\">\n<<external-link>>\n<$button class=\"tc-btn-invisible\" style=\"width: auto; display: inline-block; background-colour: inherit;\">\n<<cancel-search-actions>><$set name=\"cssEscapedTitle\" value={{{ [<storyTiddler>escapecss[]] }}}><$action-sendmessage $message=\"tm-focus-selector\" $param=<<get-focus-selector>>/></$set>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</$vars>\n\n<$reveal tag=\"div\" state=<<storeTitle>> type=\"nomatch\" text=\"\">\n\n<$linkcatcher actions=<<add-link-actions>> to=<<linkTiddler>>>\n\n<$vars userInput={{{ [<storeTitle>get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}}>\n\n{{$:/core/ui/SearchResults}}\n\n</$vars>\n\n</$linkcatcher>\n\n</$reveal>\n\n</$vars>\n\n\\end\n\n<$macrocall $name=\"body\" config-title=<<qualify \"$:/state/Link/\">>/>\n"
        },
        "$:/core/ui/EditorToolbar/link": {
            "title": "$:/core/ui/EditorToolbar/link",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/link",
            "caption": "{{$:/language/Buttons/Link/Caption}}",
            "description": "{{$:/language/Buttons/Link/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((link))",
            "dropdown": "$:/core/ui/EditorToolbar/link-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/linkify": {
            "title": "$:/core/ui/EditorToolbar/linkify",
            "caption": "{{$:/language/Buttons/Linkify/Caption}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "description": "{{$:/language/Buttons/Linkify/Hint}}",
            "icon": "$:/core/images/linkify",
            "list-before": "$:/core/ui/EditorToolbar/mono-block",
            "shortcuts": "((linkify))",
            "tags": "$:/tags/EditorToolbar",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"[[\"\n\tsuffix=\"]]\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/list-bullet": {
            "title": "$:/core/ui/EditorToolbar/list-bullet",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/list-bullet",
            "caption": "{{$:/language/Buttons/ListBullet/Caption}}",
            "description": "{{$:/language/Buttons/ListBullet/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((list-bullet))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"*\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/list-number": {
            "title": "$:/core/ui/EditorToolbar/list-number",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/list-number",
            "caption": "{{$:/language/Buttons/ListNumber/Caption}}",
            "description": "{{$:/language/Buttons/ListNumber/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((list-number))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/mono-block": {
            "title": "$:/core/ui/EditorToolbar/mono-block",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/mono-block",
            "caption": "{{$:/language/Buttons/MonoBlock/Caption}}",
            "description": "{{$:/language/Buttons/MonoBlock/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((mono-block))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-lines\"\n\tprefix=\"\n```\"\n\tsuffix=\"```\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/mono-line": {
            "title": "$:/core/ui/EditorToolbar/mono-line",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/mono-line",
            "caption": "{{$:/language/Buttons/MonoLine/Caption}}",
            "description": "{{$:/language/Buttons/MonoLine/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((mono-line))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"`\"\n\tsuffix=\"`\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/more-dropdown": {
            "title": "$:/core/ui/EditorToolbar/more-dropdown",
            "text": "\\define config-title()\n$:/config/EditorToolbarButtons/Visibility/$(toolbarItem)$\n\\end\n\n\\define conditional-button()\n<$list filter={{$(toolbarItem)$!!condition}} variable=\"condition\">\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/toolbar/button\" mode=\"inline\"/> <$transclude tiddler=<<toolbarItem>> field=\"description\"/>\n</$list>\n\\end\n\n<div class=\"tc-text-editor-toolbar-more\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditorToolbar]!has[draft.of]] -[[$:/core/ui/EditorToolbar/more]]\">\n<$reveal type=\"match\" state=<<config-visibility-title>> text=\"hide\" tag=\"div\">\n<<conditional-button>>\n</$reveal>\n</$list>\n</div>\n"
        },
        "$:/core/ui/EditorToolbar/more": {
            "title": "$:/core/ui/EditorToolbar/more",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/down-arrow",
            "caption": "{{$:/language/Buttons/More/Caption}}",
            "description": "{{$:/language/Buttons/More/Hint}}",
            "condition": "[<targetTiddler>]",
            "dropdown": "$:/core/ui/EditorToolbar/more-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/opacity-dropdown": {
            "title": "$:/core/ui/EditorToolbar/opacity-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Opacity/\n\n\\define toolbar-opacity-inner()\n<$button tag=\"a\" tooltip=\"\"\"$(opacity)$\"\"\">\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/Opacity\"\n\t$value=\"$(opacity)$\"\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<div style=\"display: inline-block; vertical-align: middle; background-color: $(current-paint-colour)$; opacity: $(opacity)$; width: 1em; height: 1em; border-radius: 50%;\"/>\n\n<span style=\"margin-left: 8px;\">\n\n<$text text=\"\"\"$(opacity)$\"\"\"/>\n\n<$reveal state=\"$:/config/BitmapEditor/Opacity\" type=\"match\" text=\"\"\"$(opacity)$\"\"\" tag=\"span\">\n\n<$entity entity=\"&nbsp;\"/>\n\n<$entity entity=\"&#x2713;\"/>\n\n</$reveal>\n\n</span>\n\n</$button>\n\\end\n\n\\define toolbar-opacity()\n''<<lingo Hint>>''\n\n<$list filter={{$:/config/BitmapEditor/Opacities}} variable=\"opacity\">\n\n<<toolbar-opacity-inner>>\n\n</$list>\n\\end\n\n<$set name=\"current-paint-colour\" value={{$:/config/BitmapEditor/Colour}}>\n\n<$set name=\"current-opacity\" value={{$:/config/BitmapEditor/Opacity}}>\n\n<<toolbar-opacity>>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/EditorToolbar/opacity": {
            "title": "$:/core/ui/EditorToolbar/opacity",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/opacity",
            "caption": "{{$:/language/Buttons/Opacity/Caption}}",
            "description": "{{$:/language/Buttons/Opacity/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/opacity-dropdown",
            "text": "<$text text={{$:/config/BitmapEditor/Opacity}}/>\n"
        },
        "$:/core/ui/EditorToolbar/paint-dropdown": {
            "title": "$:/core/ui/EditorToolbar/paint-dropdown",
            "text": "''{{$:/language/Buttons/Paint/Hint}}''\n\n<$macrocall $name=\"colour-picker\" actions=\"\"\"\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/Colour\"\n\t$value=<<colour-picker-value>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n"
        },
        "$:/core/ui/EditorToolbar/paint": {
            "title": "$:/core/ui/EditorToolbar/paint",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/paint",
            "caption": "{{$:/language/Buttons/Paint/Caption}}",
            "description": "{{$:/language/Buttons/Paint/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/paint-dropdown",
            "text": "\\define toolbar-paint()\n<div style=\"display: inline-block; vertical-align: middle; background-color: $(colour-picker-value)$; width: 1em; height: 1em; border-radius: 50%;\"/>\n\\end\n<$set name=\"colour-picker-value\" value={{$:/config/BitmapEditor/Colour}}>\n<<toolbar-paint>>\n</$set>\n"
        },
        "$:/core/ui/EditorToolbar/picture-dropdown": {
            "title": "$:/core/ui/EditorToolbar/picture-dropdown",
            "text": "\\define replacement-text()\n[img[$(imageTitle)$]]\n\\end\n\n''{{$:/language/Buttons/Picture/Hint}}''\n\n<$macrocall $name=\"image-picker\" actions=\"\"\"\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"replace-selection\"\n\ttext=<<replacement-text>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n"
        },
        "$:/core/ui/EditorToolbar/picture": {
            "title": "$:/core/ui/EditorToolbar/picture",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/picture",
            "caption": "{{$:/language/Buttons/Picture/Caption}}",
            "description": "{{$:/language/Buttons/Picture/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((picture))",
            "dropdown": "$:/core/ui/EditorToolbar/picture-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/preview-type-dropdown": {
            "title": "$:/core/ui/EditorToolbar/preview-type-dropdown",
            "text": "\\define preview-type-button()\n<$button tag=\"a\">\n\n<$action-setfield $tiddler=\"$:/state/editpreviewtype\" $value=\"$(previewType)$\"/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<$transclude tiddler=<<previewType>> field=\"caption\" mode=\"inline\">\n\n<$view tiddler=<<previewType>> field=\"title\" mode=\"inline\"/>\n\n</$transclude> \n\n<$reveal tag=\"span\" state=\"$:/state/editpreviewtype\" type=\"match\" text=<<previewType>> default=\"$:/core/ui/EditTemplate/body/preview/output\">\n\n<$entity entity=\"&nbsp;\"/>\n\n<$entity entity=\"&#x2713;\"/>\n\n</$reveal>\n\n</$button>\n\\end\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditPreview]!has[draft.of]]\" variable=\"previewType\">\n\n<<preview-type-button>>\n\n</$list>\n"
        },
        "$:/core/ui/EditorToolbar/preview-type": {
            "title": "$:/core/ui/EditorToolbar/preview-type",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/chevron-down",
            "caption": "{{$:/language/Buttons/PreviewType/Caption}}",
            "description": "{{$:/language/Buttons/PreviewType/Hint}}",
            "condition": "[all[shadows+tiddlers]tag[$:/tags/EditPreview]!has[draft.of]butfirst[]limit[1]]",
            "button-classes": "tc-text-editor-toolbar-item-adjunct",
            "dropdown": "$:/core/ui/EditorToolbar/preview-type-dropdown"
        },
        "$:/core/ui/EditorToolbar/preview": {
            "title": "$:/core/ui/EditorToolbar/preview",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/preview-open",
            "custom-icon": "yes",
            "caption": "{{$:/language/Buttons/Preview/Caption}}",
            "description": "{{$:/language/Buttons/Preview/Hint}}",
            "condition": "[<targetTiddler>]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((preview))",
            "text": "<$reveal state=\"$:/state/showeditpreview\" type=\"match\" text=\"yes\" tag=\"span\">\n{{$:/core/images/preview-open}}\n<$action-setfield $tiddler=\"$:/state/showeditpreview\" $value=\"no\"/>\n</$reveal>\n<$reveal state=\"$:/state/showeditpreview\" type=\"nomatch\" text=\"yes\" tag=\"span\">\n{{$:/core/images/preview-closed}}\n<$action-setfield $tiddler=\"$:/state/showeditpreview\" $value=\"yes\"/>\n</$reveal>\n"
        },
        "$:/core/ui/EditorToolbar/quote": {
            "title": "$:/core/ui/EditorToolbar/quote",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/quote",
            "caption": "{{$:/language/Buttons/Quote/Caption}}",
            "description": "{{$:/language/Buttons/Quote/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((quote))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-lines\"\n\tprefix=\"\n<<<\"\n\tsuffix=\"<<<\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/rotate-left": {
            "title": "$:/core/ui/EditorToolbar/rotate-left",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/rotate-left",
            "caption": "{{$:/language/Buttons/RotateLeft/Caption}}",
            "description": "{{$:/language/Buttons/RotateLeft/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"rotate-left\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/size-dropdown": {
            "title": "$:/core/ui/EditorToolbar/size-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Size/\n\n\\define toolbar-button-size-preset(config-title)\n<$set name=\"width\" filter=\"$(sizePair)$ +[first[]]\">\n\n<$set name=\"height\" filter=\"$(sizePair)$ +[last[]]\">\n\n<$button tag=\"a\">\n\n<$action-setfield\n\t$tiddler=\"\"\"$config-title$/new-width\"\"\"\n\t$value=<<width>>\n/>\n\n<$action-setfield\n\t$tiddler=\"\"\"$config-title$/new-height\"\"\"\n\t$value=<<height>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/presets-popup\"\"\"\n/>\n\n<$text text=<<width>>/> &times; <$text text=<<height>>/>\n\n</$button>\n\n</$set>\n\n</$set>\n\\end\n\n\\define toolbar-button-size(config-title)\n''{{$:/language/Buttons/Size/Hint}}''\n\n<<lingo Caption/Width>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/new-width\"\"\" default=<<tv-bitmap-editor-width>> focus=\"true\" size=\"8\"/> <<lingo Caption/Height>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/new-height\"\"\" default=<<tv-bitmap-editor-height>> size=\"8\"/> <$button popup=\"\"\"$config-title$/presets-popup\"\"\" class=\"tc-btn-invisible tc-popup-keep\" style=\"width: auto; display: inline-block; background-colour: inherit;\" selectedClass=\"tc-selected\">\n{{$:/core/images/down-arrow}}\n</$button>\n\n<$reveal tag=\"span\" state=\"\"\"$config-title$/presets-popup\"\"\" type=\"popup\" position=\"belowleft\" animate=\"yes\">\n\n<div class=\"tc-drop-down tc-popup-keep\">\n\n<$list filter={{$:/config/BitmapEditor/ImageSizes}} variable=\"sizePair\">\n\n<$macrocall $name=\"toolbar-button-size-preset\" config-title=\"$config-title$\"/>\n\n</$list>\n\n</div>\n\n</$reveal>\n\n<$button>\n<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"resize\"\n\twidth={{$config-title$/new-width}}\n\theight={{$config-title$/new-height}}\n/>\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/new-width\"\"\"\n/>\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/new-height\"\"\"\n/>\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n<<lingo Caption/Resize>>\n</$button>\n\\end\n\n<$macrocall $name=\"toolbar-button-size\" config-title=<<qualify \"$:/state/Size/\">>/>\n"
        },
        "$:/core/ui/EditorToolbar/size": {
            "title": "$:/core/ui/EditorToolbar/size",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/size",
            "caption": "{{$:/language/Buttons/Size/Caption}}",
            "description": "{{$:/language/Buttons/Size/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/size-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/stamp-dropdown": {
            "title": "$:/core/ui/EditorToolbar/stamp-dropdown",
            "text": "\\define toolbar-button-stamp-inner()\n<$button tag=\"a\">\n\n<$list filter=\"[[$(snippetTitle)$]addsuffix[/prefix]is[missing]removesuffix[/prefix]addsuffix[/suffix]is[missing]]\">\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"replace-selection\"\n\ttext={{$(snippetTitle)$}}\n/>\n\n</$list>\n\n\n<$list filter=\"[[$(snippetTitle)$]addsuffix[/prefix]is[missing]removesuffix[/prefix]addsuffix[/suffix]!is[missing]] [[$(snippetTitle)$]addsuffix[/prefix]!is[missing]removesuffix[/prefix]addsuffix[/suffix]is[missing]] [[$(snippetTitle)$]addsuffix[/prefix]!is[missing]removesuffix[/prefix]addsuffix[/suffix]!is[missing]]\">\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix={{{ [[$(snippetTitle)$]addsuffix[/prefix]get[text]] }}}\nsuffix={{{ [[$(snippetTitle)$]addsuffix[/suffix]get[text]] }}}\n/>\n\n</$list>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<$transclude tiddler=<<snippetTitle>> field=\"caption\" mode=\"inline\">\n\n<$view tiddler=<<snippetTitle>> field=\"title\" />\n\n</$transclude>\n\n</$button>\n\\end\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TextEditor/Snippet]!has[draft.of]sort[caption]]\" variable=\"snippetTitle\">\n\n<<toolbar-button-stamp-inner>>\n\n</$list>\n\n----\n\n<$button tag=\"a\">\n\n<$action-sendmessage\n\t$message=\"tm-new-tiddler\"\n\ttags=\"$:/tags/TextEditor/Snippet\"\n\tcaption={{$:/language/Buttons/Stamp/New/Title}}\n\ttext={{$:/language/Buttons/Stamp/New/Text}}\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<em>\n\n<$text text={{$:/language/Buttons/Stamp/Caption/New}}/>\n\n</em>\n\n</$button>\n"
        },
        "$:/core/ui/EditorToolbar/stamp": {
            "title": "$:/core/ui/EditorToolbar/stamp",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/stamp",
            "caption": "{{$:/language/Buttons/Stamp/Caption}}",
            "description": "{{$:/language/Buttons/Stamp/Hint}}",
            "condition": "[<targetTiddler>type[]] [<targetTiddler>get[type]prefix[text/]] [<targetTiddler>get[type]match[application/javascript]] [<targetTiddler>get[type]match[application/json]] [<targetTiddler>get[type]match[application/x-tiddler-dictionary]] [<targetTiddler>get[type]match[image/svg+xml]] +[first[]]",
            "shortcuts": "((stamp))",
            "dropdown": "$:/core/ui/EditorToolbar/stamp-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/strikethrough": {
            "title": "$:/core/ui/EditorToolbar/strikethrough",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/strikethrough",
            "caption": "{{$:/language/Buttons/Strikethrough/Caption}}",
            "description": "{{$:/language/Buttons/Strikethrough/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((strikethrough))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"~~\"\n\tsuffix=\"~~\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/subscript": {
            "title": "$:/core/ui/EditorToolbar/subscript",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/subscript",
            "caption": "{{$:/language/Buttons/Subscript/Caption}}",
            "description": "{{$:/language/Buttons/Subscript/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((subscript))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\",,\"\n\tsuffix=\",,\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/superscript": {
            "title": "$:/core/ui/EditorToolbar/superscript",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/superscript",
            "caption": "{{$:/language/Buttons/Superscript/Caption}}",
            "description": "{{$:/language/Buttons/Superscript/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((superscript))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"^^\"\n\tsuffix=\"^^\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/transcludify": {
            "title": "$:/core/ui/EditorToolbar/transcludify",
            "caption": "{{$:/language/Buttons/Transcludify/Caption}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "description": "{{$:/language/Buttons/Transcludify/Hint}}",
            "icon": "$:/core/images/transcludify",
            "list-before": "$:/core/ui/EditorToolbar/mono-block",
            "shortcuts": "((transcludify))",
            "tags": "$:/tags/EditorToolbar",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"{{\"\n\tsuffix=\"}}\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/underline": {
            "title": "$:/core/ui/EditorToolbar/underline",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/underline",
            "caption": "{{$:/language/Buttons/Underline/Caption}}",
            "description": "{{$:/language/Buttons/Underline/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((underline))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"__\"\n\tsuffix=\"__\"\n/>\n"
        },
        "$:/core/Filters/AllTags": {
            "title": "$:/core/Filters/AllTags",
            "tags": "$:/tags/Filter",
            "filter": "[tags[]!is[system]sort[title]]",
            "description": "{{$:/language/Filters/AllTags}}",
            "text": ""
        },
        "$:/core/Filters/AllTiddlers": {
            "title": "$:/core/Filters/AllTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[!is[system]sort[title]]",
            "description": "{{$:/language/Filters/AllTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/Drafts": {
            "title": "$:/core/Filters/Drafts",
            "tags": "$:/tags/Filter",
            "filter": "[has[draft.of]sort[title]]",
            "description": "{{$:/language/Filters/Drafts}}",
            "text": ""
        },
        "$:/core/Filters/Missing": {
            "title": "$:/core/Filters/Missing",
            "tags": "$:/tags/Filter",
            "filter": "[all[missing]sort[title]]",
            "description": "{{$:/language/Filters/Missing}}",
            "text": ""
        },
        "$:/core/Filters/Orphans": {
            "title": "$:/core/Filters/Orphans",
            "tags": "$:/tags/Filter",
            "filter": "[all[orphans]sort[title]]",
            "description": "{{$:/language/Filters/Orphans}}",
            "text": ""
        },
        "$:/core/Filters/OverriddenShadowTiddlers": {
            "title": "$:/core/Filters/OverriddenShadowTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[is[shadow]]",
            "description": "{{$:/language/Filters/OverriddenShadowTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/RecentSystemTiddlers": {
            "title": "$:/core/Filters/RecentSystemTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[has[modified]!sort[modified]limit[50]]",
            "description": "{{$:/language/Filters/RecentSystemTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/RecentTiddlers": {
            "title": "$:/core/Filters/RecentTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[!is[system]has[modified]!sort[modified]limit[50]]",
            "description": "{{$:/language/Filters/RecentTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/SessionTiddlers": {
            "title": "$:/core/Filters/SessionTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[haschanged[]]",
            "description": "{{$:/language/Filters/SessionTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/ShadowTiddlers": {
            "title": "$:/core/Filters/ShadowTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[all[shadows]sort[title]]",
            "description": "{{$:/language/Filters/ShadowTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/StoryList": {
            "title": "$:/core/Filters/StoryList",
            "tags": "$:/tags/Filter",
            "filter": "[list[$:/StoryList]] -$:/AdvancedSearch",
            "description": "{{$:/language/Filters/StoryList}}",
            "text": ""
        },
        "$:/core/Filters/SystemTags": {
            "title": "$:/core/Filters/SystemTags",
            "tags": "$:/tags/Filter",
            "filter": "[all[shadows+tiddlers]tags[]is[system]sort[title]]",
            "description": "{{$:/language/Filters/SystemTags}}",
            "text": ""
        },
        "$:/core/Filters/SystemTiddlers": {
            "title": "$:/core/Filters/SystemTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[is[system]sort[title]]",
            "description": "{{$:/language/Filters/SystemTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/TypedTiddlers": {
            "title": "$:/core/Filters/TypedTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[!is[system]has[type]each[type]sort[type]] -[type[text/vnd.tiddlywiki]]",
            "description": "{{$:/language/Filters/TypedTiddlers}}",
            "text": ""
        },
        "$:/core/ui/ImportListing": {
            "title": "$:/core/ui/ImportListing",
            "text": "\\define lingo-base() $:/language/Import/\n\n\\define messageField() message-$(payloadTiddler)$\n\n\\define payloadTitleFilter() [<currentTiddler>get<renameField>minlength[1]else<payloadTiddler>]\n\n\\define overWriteWarning()\n<$list filter=\"[<currentTiddler>!has<suppressedField>]\">\n<$text text={{{[subfilter<payloadTitleFilter>!is[tiddler]then[]] ~[<lingo-base>addsuffix[Listing/Rename/OverwriteWarning]get[text]]}}}/>\n</$list>\n\\end\n\n\\define selectionField() selection-$(payloadTiddler)$\n\n\\define renameField() rename-$(payloadTiddler)$\n\n\\define suppressedField() suppressed-$(payloadTiddler)$\n\n\\define newImportTitleTiddler() $:/temp/NewImportTitle-$(payloadTiddler)$\n\n\\define previewPopupState() $(currentTiddler)$!!popup-$(payloadTiddler)$\n\n\\define renameFieldState() $(currentTiddler)$!!state-rename-$(payloadTiddler)$\n\n\\define select-all-actions()\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" variable=\"payloadTiddler\">\n<$action-setfield $field={{{ [<payloadTiddler>addprefix[selection-]] }}} $value={{$:/state/import/select-all}}/>\n</$list>\n\\end\n\n<table class=\"tc-import-table\">\n<tbody>\n<tr>\n<th align=\"left\">\n<$checkbox tiddler=\"$:/state/import/select-all\" field=\"text\" checked=\"checked\" unchecked=\"unchecked\" default=\"checked\" actions=<<select-all-actions>>>\n<<lingo Listing/Select/Caption>>\n</$checkbox>\n</th>\n<th>\n<<lingo Listing/Title/Caption>>\n</th>\n<th>\n<<lingo Listing/Status/Caption>>\n</th>\n</tr>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" variable=\"payloadTiddler\">\n<tr class={{{[<currentTiddler>has<suppressedField>then[tc-row-disabled]] ~[subfilter<payloadTitleFilter>is[tiddler]then[tc-row-warning]] }}}>\n<td>\n<$checkbox field=<<selectionField>> checked=\"checked\" unchecked=\"unchecked\" default=\"checked\" disabled={{{[<currentTiddler>has<suppressedField>then[yes]else[no]]}}}/>\n</td>\n<td>\n<$reveal type=\"nomatch\" state=<<renameFieldState>> text=\"yes\" tag=\"div\">\n<$reveal type=\"nomatch\" state=<<previewPopupState>> text=\"yes\" tag=\"div\" class=\"tc-flex\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown tc-flex-grow-1 tc-word-break\" set=<<previewPopupState>> setTo=\"yes\" disabled={{{[<currentTiddler>has<suppressedField>then[yes]else[no]]}}}>\n<span class=\"tc-small-gap-right\">{{$:/core/images/right-arrow}}</span><$text text={{{[subfilter<payloadTitleFilter>]}}}/>\n</$button>\n<$list filter=\"[<currentTiddler>!has<suppressedField>]\"><$button class=\"tc-btn-invisible\" set=<<renameFieldState>> setTo=\"yes\" tooltip={{{[<lingo-base>addsuffix[Listing/Rename/Tooltip]get[text]]}}}>{{$:/core/images/edit-button}}</$button></$list>\n</$reveal>\n<$reveal type=\"match\" state=<<previewPopupState>> text=\"yes\" tag=\"div\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<previewPopupState>> setTo=\"no\">\n<span class=\"tc-small-gap-right\">{{$:/core/images/down-arrow}}</span><$text text={{{[subfilter<payloadTitleFilter>]}}}/>\n</$button>\n</$reveal>\n</$reveal>\n<$reveal type=\"match\" state=<<renameFieldState>> text=\"yes\" tag=\"div\">\n<$text text={{{[<lingo-base>addsuffix[Listing/Rename/Prompt]get[text]]}}}/>\n</$reveal>\n</td>\n<td>\n<$view field=<<messageField>>/>\n<<overWriteWarning>>\n</td>\n</tr>\n<$reveal type=\"match\" state=<<renameFieldState>> text=\"yes\" tag=\"tr\">\n<td colspan=\"3\">\n<div class=\"tc-flex\">\n<$edit-text tiddler=<<newImportTitleTiddler>>  default={{{[subfilter<payloadTitleFilter>]}}} tag=\"input\" class=\"tc-import-rename tc-flex-grow-1\"/><span class=\"tc-small-gap-left\"><$button  class=\"tc-btn-invisible\" set=<<renameFieldState>> setTo=\"no\" tooltip={{{[<lingo-base>addsuffix[Listing/Rename/CancelRename]get[text]]}}}>{{$:/core/images/close-button}}<$action-deletetiddler $tiddler=<<newImportTitleTiddler>>/></$button><span class=\"tc-small-gap-right\"/></span><$button  class=\"tc-btn-invisible\" set=<<renameFieldState>> setTo=\"no\" tooltip={{{[<lingo-base>addsuffix[Listing/Rename/ConfirmRename]get[text]]}}}>{{$:/core/images/done-button}}<$action-setfield $field=<<renameField>> $value={{{[<newImportTitleTiddler>get[text]minlength[1]else<payloadTiddler>]}}} /><$action-deletetiddler $tiddler=<<newImportTitleTiddler>>/></$button>\n</div>\n</td>\n</$reveal>\n<tr>\n<td colspan=\"3\">\n<$reveal type=\"match\" text=\"yes\" state=<<previewPopupState>> tag=\"div\">\n<$list filter=\"[{$:/state/importpreviewtype}has[text]]\" variable=\"listItem\" emptyMessage={{$:/core/ui/ImportPreviews/Text}}>\n<$transclude tiddler={{$:/state/importpreviewtype}}/>\n</$list>\n</$reveal>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ImportPreviews/Diff": {
            "title": "$:/core/ui/ImportPreviews/Diff",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/Diff}}",
            "text": "<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle=<<payloadTiddler>> destTiddlerTitle=<<currentTiddler>> destSubTiddlerTitle=<<payloadTiddler>>/>\n"
        },
        "$:/core/ui/ImportPreviews/DiffFields": {
            "title": "$:/core/ui/ImportPreviews/DiffFields",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/DiffFields}}",
            "text": "<$macrocall $name=\"compareTiddlers\" sourceTiddlerTitle=<<payloadTiddler>> destTiddlerTitle=<<currentTiddler>> destSubTiddlerTitle=<<payloadTiddler>> exclude=\"text\"/>\n"
        },
        "$:/core/ui/ImportPreviews/Fields": {
            "title": "$:/core/ui/ImportPreviews/Fields",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/Fields}}",
            "text": "<table class=\"tc-view-field-table\">\n<tbody>\n<$list filter=\"[<payloadTiddler>subtiddlerfields<currentTiddler>sort[]] -text\" variable=\"fieldName\">\n<tr class=\"tc-view-field\">\n<td class=\"tc-view-field-name\">\n<$text text=<<fieldName>>/>\n</td>\n<td class=\"tc-view-field-value\">\n<$view field=<<fieldName>> tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>>/>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ImportPreviews/Text": {
            "title": "$:/core/ui/ImportPreviews/Text",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/Text}}",
            "text": "<$transclude tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>> mode=\"block\"/>\n"
        },
        "$:/core/ui/ImportPreviews/TextRaw": {
            "title": "$:/core/ui/ImportPreviews/TextRaw",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/TextRaw}}",
            "text": "<pre><code><$view tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>> /></code></pre>"
        },
        "$:/core/ui/KeyboardShortcuts/advanced-search": {
            "title": "$:/core/ui/KeyboardShortcuts/advanced-search",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((advanced-search))",
            "text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\">\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\"[data-tiddler-title=\"$:/AdvancedSearch\"] .tc-search input\"\"\" preventScroll=\"true\"/>\n</$navigator>\n"
        },
        "$:/core/ui/KeyboardShortcuts/change-sidebar-layout": {
            "title": "$:/core/ui/KeyboardShortcuts/change-sidebar-layout",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((change-sidebar-layout))",
            "text": "<$list filter=\"[{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fixed-fluid]]\" \nemptyMessage=\"\"\"<$action-setfield $tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" text=\"fixed-fluid\"/>\"\"\">\n<$action-setfield $tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" text=\"fluid-fixed\"/>\n</$list>\n"
        },
        "$:/core/ui/KeyboardShortcuts/new-image": {
            "title": "$:/core/ui/KeyboardShortcuts/new-image",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((new-image))",
            "text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-image}}\n</$navigator>\n"
        },
        "$:/core/ui/KeyboardShortcuts/new-journal": {
            "title": "$:/core/ui/KeyboardShortcuts/new-journal",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((new-journal))",
            "text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-journal}}\n</$navigator>\n"
        },
        "$:/core/ui/KeyboardShortcuts/new-tiddler": {
            "title": "$:/core/ui/KeyboardShortcuts/new-tiddler",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((new-tiddler))",
            "text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-tiddler}}\n</$navigator>\n"
        },
        "$:/core/ui/KeyboardShortcuts/save-wiki": {
            "title": "$:/core/ui/KeyboardShortcuts/save-wiki",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((save-wiki))",
            "text": "<$wikify name=\"site-title\" text={{$:/config/SaveWikiButton/Filename}}>\n<$action-sendmessage $message=\"tm-save-wiki\" $param={{$:/config/SaveWikiButton/Template}} filename=<<site-title>>/>\n</$wikify>\n"
        },
        "$:/core/ui/KeyboardShortcuts/sidebar-search": {
            "title": "$:/core/ui/KeyboardShortcuts/sidebar-search",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((sidebar-search))",
            "text": "<$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-search input\"/>\n"
        },
        "$:/core/ui/KeyboardShortcuts/switcher": {
            "title": "$:/core/ui/KeyboardShortcuts/switcher",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((layout-switcher))",
            "text": "<$action-sendmessage $message=\"tm-show-switcher\" switch=\"layout\"/>"
        },
        "$:/core/ui/KeyboardShortcuts/toggle-sidebar": {
            "title": "$:/core/ui/KeyboardShortcuts/toggle-sidebar",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((toggle-sidebar))",
            "text": "<$list filter=\"[[$:/state/sidebar]is[missing]] [{$:/state/sidebar}removeprefix[yes]]\" emptyMessage=\"\"\"\n<$action-setfield $tiddler=\"$:/state/sidebar\" text=\"yes\"/>\n\"\"\">\n<$action-setfield $tiddler=\"$:/state/sidebar\" text=\"no\"/>\n</$list>\n"
        },
        "$:/snippets/LayoutSwitcher": {
            "title": "$:/snippets/LayoutSwitcher",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/LayoutSwitcher/Caption}}",
            "text": "<$linkcatcher to=\"$:/layout\">\n<div class=\"tc-chooser\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/Layout]] [[$:/core/ui/PageTemplate]] +[!is[draft]sort[name]]\">\n<$list filter=\"[{$:/layout}!has[text]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$set name=\"cls\" filter=\"[all[current]field:title{$:/layout}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$transclude field=\"name\"/>'' - <$transclude field=\"description\"/></$link></div>\n</$set>\n\"\"\">\n<$set name=\"cls\" filter=\"[all[current]field:title[$:/core/ui/PageTemplate]]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$transclude field=\"name\"/>'' - <$transclude field=\"description\"/></$link></div>\n</$set>\n</$list>\n</$list>\n</div>\n</$linkcatcher>\n"
        },
        "$:/core/ui/ListItemTemplate": {
            "title": "$:/core/ui/ListItemTemplate",
            "text": "<div class=\"tc-menu-list-item\">\n<$link />\n</div>"
        },
        "$:/Manager/ItemMain/Fields": {
            "title": "$:/Manager/ItemMain/Fields",
            "tags": "$:/tags/Manager/ItemMain",
            "caption": "{{$:/language/Manager/Item/Fields}}",
            "text": "<table>\n<tbody>\n<$list filter=\"[all[current]fields[]sort[title]] -text\" template=\"$:/core/ui/TiddlerFieldTemplate\" variable=\"listItem\"/>\n</tbody>\n</table>\n"
        },
        "$:/Manager/ItemMain/RawText": {
            "title": "$:/Manager/ItemMain/RawText",
            "tags": "$:/tags/Manager/ItemMain",
            "caption": "{{$:/language/Manager/Item/RawText}}",
            "text": "<pre><code><$view/></code></pre>\n"
        },
        "$:/Manager/ItemMain/WikifiedText": {
            "title": "$:/Manager/ItemMain/WikifiedText",
            "tags": "$:/tags/Manager/ItemMain",
            "caption": "{{$:/language/Manager/Item/WikifiedText}}",
            "text": "<$transclude mode=\"block\"/>\n"
        },
        "$:/Manager/ItemSidebar/Colour": {
            "title": "$:/Manager/ItemSidebar/Colour",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Colour}}",
            "text": "\\define swatch-styles()\nheight: 1em;\nbackground-color: $(colour)$\n\\end\n\n<$vars colour={{!!color}}>\n<p style=<<swatch-styles>>/>\n</$vars>\n<p>\n<$edit-text field=\"color\" tag=\"input\" type=\"color\"/> / <$edit-text field=\"color\" tag=\"input\" type=\"text\" size=\"9\"/>\n</p>\n"
        },
        "$:/Manager/ItemSidebar/Icon": {
            "title": "$:/Manager/ItemSidebar/Icon",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Icon}}",
            "text": "<p>\n<div class=\"tc-manager-icon-editor\">\n<$button popup=<<qualify \"$:/state/popup/image-picker\">> class=\"tc-btn-invisible\">\n<$transclude tiddler={{!!icon}}>\n{{$:/language/Manager/Item/Icon/None}}\n</$transclude>\n</$button>\n<div class=\"tc-block-dropdown-wrapper\" style=\"position: static;\">\n<$reveal state=<<qualify \"$:/state/popup/image-picker\">> type=\"nomatch\" text=\"\" default=\"\" tag=\"div\" class=\"tc-popup\">\n<div class=\"tc-block-dropdown tc-popup-keep\" style=\"width: 80%; left: 10%; right: 10%; padding: 0.5em;\">\n<$macrocall $name=\"image-picker-include-tagged-images\" actions=\"\"\"\n<$action-setfield $field=\"icon\" $value=<<imageTitle>>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/image-picker\">>/>\n\"\"\"/>\n</div>\n</$reveal>\n</div>\n</div>\n</p>\n"
        },
        "$:/Manager/ItemSidebar/Tags": {
            "title": "$:/Manager/ItemSidebar/Tags",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Tags}}",
            "text": "\\whitespace trim\n\\define tag-checkbox-actions()\n<$action-listops\n\t$tiddler=\"$:/config/Manager/RecentTags\"\n\t$subfilter=\"[<tag>] [list[$:/config/Manager/RecentTags]] +[limit[12]]\"\n/>\n\\end\n\n\\define tag-picker-actions()\n<<tag-checkbox-actions>>\n\\end\n\n<p>\n<$list filter=\"[all[current]tags[]] [list[$:/config/Manager/RecentTags]] +[sort[title]] \" variable=\"tag\" storyview=\"pop\">\n<div>\n<$checkbox tiddler=<<currentTiddler>> tag=<<tag>> actions=<<tag-checkbox-actions>>>\n<$macrocall $name=\"tag-pill\" tag=<<tag>>/>\n</$checkbox>\n</div>\n</$list>\n</p>\n<p>\n<$fieldmangler>\n<$macrocall $name=\"tag-picker\" actions=<<tag-picker-actions>>/>\n</$fieldmangler>\n</p>\n"
        },
        "$:/Manager/ItemSidebar/Tools": {
            "title": "$:/Manager/ItemSidebar/Tools",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Tools}}",
            "text": "<p>\n<$button to=<<currentTiddler>>>{{$:/core/images/link}} open</$button>\n</p>\n<p>\n<$button message=\"tm-edit-tiddler\" param=<<currentTiddler>>>{{$:/core/images/edit-button}} edit</$button>\n</p>\n"
        },
        "$:/Manager": {
            "title": "$:/Manager",
            "icon": "$:/core/images/list",
            "color": "#bbb",
            "text": "\\define lingo-base() $:/language/Manager/\n\n\\define list-item-content-item()\n<div class=\"tc-manager-list-item-content-item\">\n\t<$vars state-title=\"\"\"$:/state/popup/manager/item/$(listItem)$\"\"\">\n\t\t<$reveal state=<<state-title>> type=\"match\" text=\"show\" default=\"show\" tag=\"div\">\n\t\t\t<$button set=<<state-title>> setTo=\"hide\" class=\"tc-btn-invisible tc-manager-list-item-content-item-heading\">\n\t\t\t\t{{$:/core/images/down-arrow}} <$transclude tiddler=<<listItem>> field=\"caption\"/>\n\t\t\t</$button>\n\t\t</$reveal>\n\t\t<$reveal state=<<state-title>> type=\"nomatch\" text=\"show\" default=\"show\" tag=\"div\">\n\t\t\t<$button set=<<state-title>> setTo=\"show\" class=\"tc-btn-invisible tc-manager-list-item-content-item-heading\">\n\t\t\t\t{{$:/core/images/right-arrow}} <$transclude tiddler=<<listItem>> field=\"caption\"/>\n\t\t\t</$button>\n\t\t</$reveal>\n\t\t<$reveal state=<<state-title>> type=\"match\" text=\"show\" default=\"show\" tag=\"div\" class=\"tc-manager-list-item-content-item-body\">\n\t\t\t<$transclude tiddler=<<listItem>>/>\n\t\t</$reveal>\n\t</$vars>\n</div>\n\\end\n\n<div class=\"tc-manager-wrapper\">\n\t<div class=\"tc-manager-controls\">\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Show/Prompt>> <$select tiddler=\"$:/config/Manager/Show\" default=\"tiddlers\">\n\t\t\t\t<option value=\"tiddlers\"><<lingo Controls/Show/Option/Tiddlers>></option>\n\t\t\t\t<option value=\"tags\"><<lingo Controls/Show/Option/Tags>></option>\n\t\t\t</$select>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Search/Prompt>> <$edit-text tiddler=\"$:/config/Manager/Filter\" tag=\"input\" default=\"\" placeholder={{$:/language/Manager/Controls/Search/Placeholder}}/>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/FilterByTag/Prompt>> <$select tiddler=\"$:/config/Manager/Tag\" default=\"\">\n\t\t\t\t<option value=\"\"><<lingo Controls/FilterByTag/None>></option>\n\t\t\t\t<$list filter=\"[!is{$:/config/Manager/System}tags[]!is[system]sort[title]]\" variable=\"tag\">\n\t\t\t\t\t<option value=<<tag>>><$text text=<<tag>>/></option>\n\t\t\t\t</$list>\n\t\t\t</$select>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Sort/Prompt>> <$select tiddler=\"$:/config/Manager/Sort\" default=\"title\">\n\t\t\t\t<optgroup label=\"Common\">\n\t\t\t\t\t<$list filter=\"title modified modifier created creator created\" variable=\"field\">\n\t\t\t\t\t\t<option value=<<field>>><$text text=<<field>>/></option>\n\t\t\t\t\t</$list>\n\t\t\t\t</optgroup>\n\t\t\t\t<optgroup label=\"All\">\n\t\t\t\t\t<$list filter=\"[all{$:/config/Manager/Show}!is{$:/config/Manager/System}fields[]sort[title]] -title -modified -modifier -created -creator -created\" variable=\"field\">\n\t\t\t\t\t\t<option value=<<field>>><$text text=<<field>>/></option>\n\t\t\t\t\t</$list>\n\t\t\t\t</optgroup>\n\t\t\t</$select>\n\t\t\t<$checkbox tiddler=\"$:/config/Manager/Order\" field=\"text\" checked=\"reverse\" unchecked=\"forward\" default=\"forward\">\n\t\t\t\t<<lingo Controls/Order/Prompt>>\n\t\t\t</$checkbox>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<$checkbox tiddler=\"$:/config/Manager/System\" field=\"text\" checked=\"\" unchecked=\"system\" default=\"system\">\n\t\t\t\t{{$:/language/SystemTiddlers/Include/Prompt}}\n\t\t\t</$checkbox>\n\t\t</div>\n\t</div>\n\t<div class=\"tc-manager-list\">\n\t\t<$list filter=\"[all{$:/config/Manager/Show}!is{$:/config/Manager/System}search{$:/config/Manager/Filter}tag:strict{$:/config/Manager/Tag}sort{$:/config/Manager/Sort}order{$:/config/Manager/Order}]\">\n\t\t\t<$vars transclusion=<<currentTiddler>>>\n\t\t\t\t<div style=\"tc-manager-list-item\">\n\t\t\t\t\t<$button popup=<<qualify \"$:/state/manager/popup\">> class=\"tc-btn-invisible tc-manager-list-item-heading\" selectedClass=\"tc-manager-list-item-heading-selected\">\n\t\t\t\t\t\t<$text text=<<currentTiddler>>/>\n\t\t\t\t\t</$button>\n\t\t\t\t\t<$reveal state=<<qualify \"$:/state/manager/popup\">> type=\"nomatch\" text=\"\" default=\"\" tag=\"div\" class=\"tc-manager-list-item-content tc-popup-handle\">\n\t\t\t\t\t\t<div class=\"tc-manager-list-item-content-tiddler\">\n\t\t\t\t\t\t\t<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Manager/ItemMain]!has[draft.of]]\" variable=\"listItem\">\n\t\t\t\t\t\t\t\t<<list-item-content-item>>\n\t\t\t\t\t\t\t</$list>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class=\"tc-manager-list-item-content-sidebar\">\n\t\t\t\t\t\t\t<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Manager/ItemSidebar]!has[draft.of]]\" variable=\"listItem\">\n\t\t\t\t\t\t\t\t<<list-item-content-item>>\n\t\t\t\t\t\t\t</$list>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</$reveal>\n\t\t\t\t</div>\n\t\t\t</$vars>\n\t\t</$list>\n\t</div>\n</div>\n"
        },
        "$:/core/ui/MissingTemplate": {
            "title": "$:/core/ui/MissingTemplate",
            "text": "<div class=\"tc-tiddler-missing\">\n<$button popup=<<qualify \"$:/state/popup/missing\">> class=\"tc-btn-invisible tc-missing-tiddler-label\">\n<$view field=\"title\" format=\"text\" />\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/missing\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n<hr>\n<$list filter=\"[all[current]backlinks[]sort[title]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$reveal>\n</div>\n"
        },
        "$:/core/ui/MoreSideBar/All": {
            "title": "$:/core/ui/MoreSideBar/All",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/All/Caption}}",
            "text": "<$list filter={{$:/core/Filters/AllTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Drafts": {
            "title": "$:/core/ui/MoreSideBar/Drafts",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Drafts/Caption}}",
            "text": "<$list filter={{$:/core/Filters/Drafts!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Explorer": {
            "title": "$:/core/ui/MoreSideBar/Explorer",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Explorer/Caption}}",
            "text": "<<tree \"$:/\">>\n"
        },
        "$:/core/ui/MoreSideBar/Missing": {
            "title": "$:/core/ui/MoreSideBar/Missing",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Missing/Caption}}",
            "text": "<$list filter={{$:/core/Filters/Missing!!filter}} template=\"$:/core/ui/MissingTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Orphans": {
            "title": "$:/core/ui/MoreSideBar/Orphans",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Orphans/Caption}}",
            "text": "<$list filter={{$:/core/Filters/Orphans!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins": {
            "title": "$:/core/ui/MoreSideBar/Plugins",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/ControlPanel/Plugins/Caption}}",
            "text": "\n{{$:/language/ControlPanel/Plugins/Installed/Hint}}\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar/Plugins]!has[draft.of]]\" default=\"$:/core/ui/MoreSideBar/Plugins/Plugins\" explicitState=\"$:/state/tab-1163638994\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Recent": {
            "title": "$:/core/ui/MoreSideBar/Recent",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Recent/Caption}}",
            "text": "<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n"
        },
        "$:/core/ui/MoreSideBar/Shadows": {
            "title": "$:/core/ui/MoreSideBar/Shadows",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Shadows/Caption}}",
            "text": "<$list filter={{$:/core/Filters/ShadowTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/System": {
            "title": "$:/core/ui/MoreSideBar/System",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/System/Caption}}",
            "text": "<$list filter={{$:/core/Filters/SystemTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Tags": {
            "title": "$:/core/ui/MoreSideBar/Tags",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Tags/Caption}}",
            "text": "<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n{{$:/core/ui/Buttons/tag-manager}}\n\n</$set>\n\n</$set>\n\n</$set>\n\n<$list filter={{$:/core/Filters/AllTags!!filter}}>\n\n<$transclude tiddler=\"$:/core/ui/TagTemplate\"/>\n\n</$list>\n\n<hr class=\"tc-untagged-separator\">\n\n{{$:/core/ui/UntaggedTemplate}}\n"
        },
        "$:/core/ui/MoreSideBar/Types": {
            "title": "$:/core/ui/MoreSideBar/Types",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Types/Caption}}",
            "text": "<$list filter={{$:/core/Filters/TypedTiddlers!!filter}}>\n<div class=\"tc-menu-list-item\">\n<$view field=\"type\"/>\n<$list filter=\"[type{!!type}!is[system]sort[title]]\">\n<div class=\"tc-menu-list-subitem\">\n<$link to={{!!title}}><$view field=\"title\"/></$link>\n</div>\n</$list>\n</div>\n</$list>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins/Languages": {
            "title": "$:/core/ui/MoreSideBar/Plugins/Languages",
            "tags": "$:/tags/MoreSideBar/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}}",
            "text": "<$list filter=\"[!has[draft.of]plugin-type[language]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}/>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins/Plugins": {
            "title": "$:/core/ui/MoreSideBar/Plugins/Plugins",
            "tags": "$:/tags/MoreSideBar/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}}",
            "text": "<$list filter=\"[!has[draft.of]plugin-type[plugin]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}>>/>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins/Theme": {
            "title": "$:/core/ui/MoreSideBar/Plugins/Theme",
            "tags": "$:/tags/MoreSideBar/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}}",
            "text": "<$list filter=\"[!has[draft.of]plugin-type[theme]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}/>\n"
        },
        "$:/core/ui/Buttons/advanced-search": {
            "title": "$:/core/ui/Buttons/advanced-search",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/advanced-search-button}} {{$:/language/Buttons/AdvancedSearch/Caption}}",
            "description": "{{$:/language/Buttons/AdvancedSearch/Hint}}",
            "text": "\\whitespace trim\n\\define advanced-search-button(class)\n<$button to=\"$:/AdvancedSearch\" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/advanced-search-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/AdvancedSearch/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/AdvancedSearch]]\" emptyMessage=<<advanced-search-button>>>\n<<advanced-search-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/close-all": {
            "title": "$:/core/ui/Buttons/close-all",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/close-all-button}} {{$:/language/Buttons/CloseAll/Caption}}",
            "description": "{{$:/language/Buttons/CloseAll/Hint}}",
            "text": "<$button message=\"tm-close-all-tiddlers\" tooltip={{$:/language/Buttons/CloseAll/Hint}} aria-label={{$:/language/Buttons/CloseAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/close-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/CloseAll/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/control-panel": {
            "title": "$:/core/ui/Buttons/control-panel",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/options-button}} {{$:/language/Buttons/ControlPanel/Caption}}",
            "description": "{{$:/language/Buttons/ControlPanel/Hint}}",
            "text": "\\whitespace trim\n\\define control-panel-button(class)\n<$button to=\"$:/ControlPanel\" tooltip={{$:/language/Buttons/ControlPanel/Hint}} aria-label={{$:/language/Buttons/ControlPanel/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/options-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/ControlPanel/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/ControlPanel]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/encryption": {
            "title": "$:/core/ui/Buttons/encryption",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/locked-padlock}} {{$:/language/Buttons/Encryption/Caption}}",
            "description": "{{$:/language/Buttons/Encryption/Hint}}",
            "text": "\\whitespace trim\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\n<$button message=\"tm-clear-password\" tooltip={{$:/language/Buttons/Encryption/ClearPassword/Hint}} aria-label={{$:/language/Buttons/Encryption/ClearPassword/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/locked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Encryption/ClearPassword/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n<$button message=\"tm-set-password\" tooltip={{$:/language/Buttons/Encryption/SetPassword/Hint}} aria-label={{$:/language/Buttons/Encryption/SetPassword/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/unlocked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Encryption/SetPassword/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/export-page": {
            "title": "$:/core/ui/Buttons/export-page",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/export-button}} {{$:/language/Buttons/ExportPage/Caption}}",
            "description": "{{$:/language/Buttons/ExportPage/Hint}}",
            "text": "<$macrocall $name=\"exportButton\" exportFilter=\"[!is[system]sort[title]]\" lingoBase=\"$:/language/Buttons/ExportPage/\"/>"
        },
        "$:/core/ui/Buttons/fold-all": {
            "title": "$:/core/ui/Buttons/fold-all",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/fold-all-button}} {{$:/language/Buttons/FoldAll/Caption}}",
            "description": "{{$:/language/Buttons/FoldAll/Hint}}",
            "text": "<$button tooltip={{$:/language/Buttons/FoldAll/Hint}} aria-label={{$:/language/Buttons/FoldAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-all-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/FoldAll/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/full-screen": {
            "title": "$:/core/ui/Buttons/full-screen",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/full-screen-button}} {{$:/language/Buttons/FullScreen/Caption}}",
            "description": "{{$:/language/Buttons/FullScreen/Hint}}",
            "text": "<$button message=\"tm-full-screen\" tooltip={{$:/language/Buttons/FullScreen/Hint}} aria-label={{$:/language/Buttons/FullScreen/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/full-screen-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/FullScreen/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/home": {
            "title": "$:/core/ui/Buttons/home",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/home-button}} {{$:/language/Buttons/Home/Caption}}",
            "description": "{{$:/language/Buttons/Home/Hint}}",
            "text": "<$button message=\"tm-home\" tooltip={{$:/language/Buttons/Home/Hint}} aria-label={{$:/language/Buttons/Home/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/home-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Home/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/import": {
            "title": "$:/core/ui/Buttons/import",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/import-button}} {{$:/language/Buttons/Import/Caption}}",
            "description": "{{$:/language/Buttons/Import/Hint}}",
            "text": "<div class=\"tc-file-input-wrapper\">\n<$button tooltip={{$:/language/Buttons/Import/Hint}} aria-label={{$:/language/Buttons/Import/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/import-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Import/Caption}}/></span>\n</$list>\n</$button>\n<$browse tooltip={{$:/language/Buttons/Import/Hint}}/>\n</div>"
        },
        "$:/core/ui/Buttons/language": {
            "title": "$:/core/ui/Buttons/language",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/globe}} {{$:/language/Buttons/Language/Caption}}",
            "description": "{{$:/language/Buttons/Language/Hint}}",
            "text": "\\whitespace trim\n\\define flag-title()\n$(languagePluginTitle)$/icon\n\\end\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/language\">> tooltip={{$:/language/Buttons/Language/Hint}} aria-label={{$:/language/Buttons/Language/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n<span class=\"tc-image-button\">\n<$set name=\"languagePluginTitle\" value={{$:/language}}>\n<$image source=<<flag-title>>/>\n</$set>\n</span>\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Language/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/language\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n{{$:/snippets/languageswitcher}}\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/manager": {
            "title": "$:/core/ui/Buttons/manager",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/list}} {{$:/language/Buttons/Manager/Caption}}",
            "description": "{{$:/language/Buttons/Manager/Hint}}",
            "text": "\\whitespace trim\n\\define manager-button(class)\n<$button to=\"$:/Manager\" tooltip={{$:/language/Buttons/Manager/Hint}} aria-label={{$:/language/Buttons/Manager/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/list}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Manager/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/Manager]]\" emptyMessage=<<manager-button>>>\n<<manager-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/more-page-actions": {
            "title": "$:/core/ui/Buttons/more-page-actions",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/down-arrow}} {{$:/language/Buttons/More/Caption}}",
            "description": "{{$:/language/Buttons/More/Hint}}",
            "text": "\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n<$button popup=<<qualify \"$:/state/popup/more\">> tooltip={{$:/language/Buttons/More/Hint}} aria-label={{$:/language/Buttons/More/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/More/Caption}}/></span>\n</$list>\n</$button><$reveal state=<<qualify \"$:/state/popup/more\">> type=\"popup\" position=\"below\" animate=\"yes\">\n\n<div class=\"tc-drop-down\">\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"tc-btn-invisible\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]] -[[$:/core/ui/Buttons/more-page-actions]]\" variable=\"listItem\">\n\n<$reveal type=\"match\" state=<<config-title>> text=\"hide\">\n\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$set>\n\n</$reveal>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</div>\n\n</$reveal>"
        },
        "$:/core/ui/Buttons/new-image": {
            "title": "$:/core/ui/Buttons/new-image",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/new-image-button}} {{$:/language/Buttons/NewImage/Caption}}",
            "description": "{{$:/language/Buttons/NewImage/Hint}}",
            "text": "\\whitespace trim\n<$button tooltip={{$:/language/Buttons/NewImage/Hint}} aria-label={{$:/language/Buttons/NewImage/Caption}} class=<<tv-config-toolbar-class>> actions={{$:/core/ui/Actions/new-image}}>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-image-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewImage/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/core/ui/Buttons/new-journal": {
            "title": "$:/core/ui/Buttons/new-journal",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournal/Caption}}",
            "description": "{{$:/language/Buttons/NewJournal/Hint}}",
            "text": "\\whitespace trim\n\\define journalButton()\n<$button tooltip={{$:/language/Buttons/NewJournal/Hint}} aria-label={{$:/language/Buttons/NewJournal/Caption}} class=<<tv-config-toolbar-class>> actions={{$:/core/ui/Actions/new-journal}}>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewJournal/Caption}}/></span>\n</$list>\n</$button>\n\\end\n<<journalButton>>\n"
        },
        "$:/core/ui/Buttons/new-tiddler": {
            "title": "$:/core/ui/Buttons/new-tiddler",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/new-button}} {{$:/language/Buttons/NewTiddler/Caption}}",
            "description": "{{$:/language/Buttons/NewTiddler/Hint}}",
            "text": "\\whitespace trim\n<$button actions={{$:/core/ui/Actions/new-tiddler}} tooltip={{$:/language/Buttons/NewTiddler/Hint}} aria-label={{$:/language/Buttons/NewTiddler/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewTiddler/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/core/ui/Buttons/palette": {
            "title": "$:/core/ui/Buttons/palette",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/palette}} {{$:/language/Buttons/Palette/Caption}}",
            "description": "{{$:/language/Buttons/Palette/Hint}}",
            "text": "\\whitespace trim\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/palette\">> tooltip={{$:/language/Buttons/Palette/Hint}} aria-label={{$:/language/Buttons/Palette/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/palette}}\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Palette/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/palette\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\" style=\"font-size:0.7em;\">\n{{$:/snippets/paletteswitcher}}\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/print": {
            "title": "$:/core/ui/Buttons/print",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/print-button}} {{$:/language/Buttons/Print/Caption}}",
            "description": "{{$:/language/Buttons/Print/Hint}}",
            "text": "<$button message=\"tm-print\" tooltip={{$:/language/Buttons/Print/Hint}} aria-label={{$:/language/Buttons/Print/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/print-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Print/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/refresh": {
            "title": "$:/core/ui/Buttons/refresh",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/refresh-button}} {{$:/language/Buttons/Refresh/Caption}}",
            "description": "{{$:/language/Buttons/Refresh/Hint}}",
            "text": "<$button message=\"tm-browser-refresh\" tooltip={{$:/language/Buttons/Refresh/Hint}} aria-label={{$:/language/Buttons/Refresh/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/refresh-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Refresh/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/save-wiki": {
            "title": "$:/core/ui/Buttons/save-wiki",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/save-button}} {{$:/language/Buttons/SaveWiki/Caption}}",
            "description": "{{$:/language/Buttons/SaveWiki/Hint}}",
            "text": "<$button tooltip={{$:/language/Buttons/SaveWiki/Hint}} aria-label={{$:/language/Buttons/SaveWiki/Caption}} class=<<tv-config-toolbar-class>>>\n<$wikify name=\"site-title\" text={{$:/config/SaveWikiButton/Filename}}>\n<$action-sendmessage $message=\"tm-save-wiki\" $param={{$:/config/SaveWikiButton/Template}} filename=<<site-title>>/>\n</$wikify>\n<span class=\"tc-dirty-indicator\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/save-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/SaveWiki/Caption}}/></span>\n</$list>\n</span>\n</$button>"
        },
        "$:/core/ui/Buttons/storyview": {
            "title": "$:/core/ui/Buttons/storyview",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/storyview-classic}} {{$:/language/Buttons/StoryView/Caption}}",
            "description": "{{$:/language/Buttons/StoryView/Hint}}",
            "text": "\\whitespace trim\n\\define icon()\n$:/core/images/storyview-$(storyview)$\n\\end\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/storyview\">> tooltip={{$:/language/Buttons/StoryView/Hint}} aria-label={{$:/language/Buttons/StoryView/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n<$set name=\"storyview\" value={{$:/view}}>\n<$transclude tiddler=<<icon>>/>\n</$set>\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/StoryView/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/storyview\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n{{$:/snippets/viewswitcher}}\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/tag-manager": {
            "title": "$:/core/ui/Buttons/tag-manager",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/tag-button}} {{$:/language/Buttons/TagManager/Caption}}",
            "description": "{{$:/language/Buttons/TagManager/Hint}}",
            "text": "\\whitespace trim\n\\define control-panel-button(class)\n<$button to=\"$:/TagManager\" tooltip={{$:/language/Buttons/TagManager/Hint}} aria-label={{$:/language/Buttons/TagManager/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/tag-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/TagManager/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/TagManager]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/theme": {
            "title": "$:/core/ui/Buttons/theme",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/theme-button}} {{$:/language/Buttons/Theme/Caption}}",
            "description": "{{$:/language/Buttons/Theme/Hint}}",
            "text": "\\whitespace trim\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/theme\">> tooltip={{$:/language/Buttons/Theme/Hint}} aria-label={{$:/language/Buttons/Theme/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/theme-button}}\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Theme/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/theme\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$linkcatcher to=\"$:/theme\">\n{{$:/snippets/themeswitcher}}\n</$linkcatcher>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/timestamp": {
            "title": "$:/core/ui/Buttons/timestamp",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/timestamp-on}} {{$:/language/Buttons/Timestamp/Caption}}",
            "description": "{{$:/language/Buttons/Timestamp/Hint}}",
            "text": "\\whitespace trim\n<$reveal type=\"nomatch\" state=\"$:/config/TimestampDisable\" text=\"yes\">\n<$button tooltip={{$:/language/Buttons/Timestamp/On/Hint}} aria-label={{$:/language/Buttons/Timestamp/On/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-setfield $tiddler=\"$:/config/TimestampDisable\" $value=\"yes\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/timestamp-on}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Timestamp/On/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=\"$:/config/TimestampDisable\" text=\"yes\">\n<$button tooltip={{$:/language/Buttons/Timestamp/Off/Hint}} aria-label={{$:/language/Buttons/Timestamp/Off/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-setfield $tiddler=\"$:/config/TimestampDisable\" $value=\"no\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/timestamp-off}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Timestamp/Off/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/unfold-all": {
            "title": "$:/core/ui/Buttons/unfold-all",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/unfold-all-button}} {{$:/language/Buttons/UnfoldAll/Caption}}",
            "description": "{{$:/language/Buttons/UnfoldAll/Hint}}",
            "text": "<$button tooltip={{$:/language/Buttons/UnfoldAll/Hint}} aria-label={{$:/language/Buttons/UnfoldAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-unfold-all-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/UnfoldAll/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/PageTemplate/pagecontrols": {
            "title": "$:/core/ui/PageTemplate/pagecontrols",
            "text": "\\whitespace trim\n\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-page-controls\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\" variable=\"listItem\">\n<$set name=\"hidden\" value=<<config-title>>>\n<$list filter=\"[<hidden>!text[hide]]\" storyview=\"pop\" variable=\"ignore\">\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n</$set>\n</$list>\n</$set>\n</$list>\n</div>\n"
        },
        "$:/core/ui/PageStylesheet": {
            "title": "$:/core/ui/PageStylesheet",
            "text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$set name=\"currentTiddler\" value={{$:/language}}>\n\n<$set name=\"languageTitle\" value={{!!name}}>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<$transclude mode=\"block\"/>\n</$list>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/PageTemplate/alerts": {
            "title": "$:/core/ui/PageTemplate/alerts",
            "tags": "$:/tags/PageTemplate",
            "text": "<div class=\"tc-alerts\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Alert]!has[draft.of]]\" template=\"$:/core/ui/AlertTemplate\" storyview=\"pop\"/>\n\n</div>\n"
        },
        "$:/core/ui/PageTemplate/drafts": {
            "title": "$:/core/ui/PageTemplate/drafts",
            "tags": "$:/tags/PageTemplate",
            "text": "\\whitespace trim\n<$reveal state=\"$:/status/IsReadOnly\" type=\"nomatch\" text=\"yes\" tag=\"div\" class=\"tc-drafts-list\">\n<$list filter=\"[has[draft.of]!sort[modified]] -[list[$:/StoryList]]\">\n<$link>\n{{$:/core/images/edit-button}} <$text text=<<currentTiddler>>/>\n</$link>\n</$list>\n</$reveal>\n"
        },
        "$:/core/ui/PageTemplate/pluginreloadwarning": {
            "title": "$:/core/ui/PageTemplate/pluginreloadwarning",
            "tags": "$:/tags/PageTemplate",
            "text": "\\define lingo-base() $:/language/\n\n<$list filter=\"[{$:/status/RequireReloadDueToPluginChange}match[yes]]\">\n\n<$reveal type=\"nomatch\" state=\"$:/temp/HidePluginWarning\" text=\"yes\">\n\n<div class=\"tc-plugin-reload-warning\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<<lingo PluginReloadWarning>> <$button set=\"$:/temp/HidePluginWarning\" setTo=\"yes\" class=\"tc-btn-invisible\">{{$:/core/images/close-button}}</$button>\n\n</$set>\n\n</div>\n\n</$reveal>\n\n</$list>\n"
        },
        "$:/core/ui/PageTemplate/sidebar": {
            "title": "$:/core/ui/PageTemplate/sidebar",
            "tags": "$:/tags/PageTemplate",
            "text": "\\whitespace trim\n\\define config-title()\n$:/config/SideBarSegments/Visibility/$(listItem)$\n\\end\n\n<$scrollable fallthrough=\"no\" class=\"tc-sidebar-scrollable\">\n\n<div class=\"tc-sidebar-header\">\n\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"yes\" default=\"yes\" retain=\"yes\" animate=\"yes\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SideBarSegment]!has[draft.of]]\" variable=\"listItem\">\n\n<$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"  tag=\"div\">\n\n<$transclude tiddler=<<listItem>> mode=\"block\"/>\n\n</$reveal>\n\n</$list>\n\n</$reveal>\n\n</div>\n\n</$scrollable>\n"
        },
        "$:/core/ui/PageTemplate/story": {
            "title": "$:/core/ui/PageTemplate/story",
            "tags": "$:/tags/PageTemplate",
            "text": "\\whitespace trim\n<section class=\"tc-story-river\">\n\n<section class=\"story-backdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/AboveStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n<$list filter=\"[list[$:/StoryList]]\" history=\"$:/HistoryList\" template={{$:/config/ui/ViewTemplate}} editTemplate={{$:/config/ui/EditTemplate}} storyview={{$:/view}} emptyMessage={{$:/config/EmptyStoryMessage}}/>\n\n<section class=\"story-frontdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/BelowStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n</section>\n"
        },
        "$:/core/ui/PageTemplate/topleftbar": {
            "title": "$:/core/ui/PageTemplate/topleftbar",
            "tags": "$:/tags/PageTemplate",
            "text": "<span class=\"tc-topbar tc-topbar-left\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopLeftBar]!has[draft.of]]\" variable=\"listItem\" storyview=\"pop\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$list>\n\n</span>\n"
        },
        "$:/core/ui/PageTemplate/toprightbar": {
            "title": "$:/core/ui/PageTemplate/toprightbar",
            "tags": "$:/tags/PageTemplate",
            "text": "<span class=\"tc-topbar tc-topbar-right\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopRightBar]!has[draft.of]]\" variable=\"listItem\" storyview=\"pop\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$list>\n\n</span>\n"
        },
        "$:/core/ui/PageTemplate": {
            "title": "$:/core/ui/PageTemplate",
            "name": "{{$:/language/PageTemplate/Name}}",
            "description": "{{$:/language/PageTemplate/Description}}",
            "text": "\\whitespace trim\n\\define containerClasses()\ntc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$vars\n\ttv-config-toolbar-icons={{$:/config/Toolbar/Icons}}\n\ttv-config-toolbar-text={{$:/config/Toolbar/Text}}\n\ttv-config-toolbar-class={{$:/config/Toolbar/ButtonClass}}\n\ttv-enable-drag-and-drop={{$:/config/DragAndDrop/Enable}}\n\ttv-show-missing-links={{$:/config/MissingLinks}}\n\tstoryviewTitle={{$:/view}}\n\tlanguageTitle={{{ [{$:/language}get[name]] }}}>\n\n<div class=<<containerClasses>>>\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n\n<$dropzone enable=<<tv-enable-drag-and-drop>>>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageTemplate]!has[draft.of]]\" variable=\"listItem\">\n\n<$transclude tiddler=<<listItem>>/>\n\n</$list>\n\n</$dropzone>\n\n</$navigator>\n\n</div>\n\n</$vars>\n"
        },
        "$:/PaletteManager": {
            "title": "$:/PaletteManager",
            "text": "\\define lingo-base() $:/language/ControlPanel/Palette/Editor/\n\\define describePaletteColour(colour)\n<$transclude tiddler=\"$:/language/Docs/PaletteColours/$colour$\"><$text text=\"$colour$\"/></$transclude>\n\\end\n\\define edit-colour-placeholder()\n edit $(colourName)$\n\\end\n\\define colour-tooltip(showhide) $showhide$ editor for $(newColourName)$ \n\\define resolve-colour(macrocall)\n\\import $:/core/macros/utils\n\\whitespace trim\n<$wikify name=\"name\" text=\"\"\"$macrocall$\"\"\">\n<<name>>\n</$wikify>\n\\end\n\\define delete-colour-index-actions() <$action-setfield $index=<<colourName>>/>\n\\define palette-manager-colour-row-segment()\n\\whitespace trim\n<$edit-text index=<<colourName>> tag=\"input\" placeholder=<<edit-colour-placeholder>> default=\"\"/>\n<br>\n<$edit-text index=<<colourName>> type=\"color\" tag=\"input\" class=\"tc-palette-manager-colour-input\"/>\n<$list filter=\"[<currentTiddler>getindex<colourName>removeprefix[<<]removesuffix[>>]] [<currentTiddler>getindex<colourName>removeprefix[<$]removesuffix[/>]]\" variable=\"ignore\">\n<$set name=\"state\" value={{{ [[$:/state/palettemanager/]addsuffix<currentTiddler>addsuffix[/]addsuffix<colourName>] }}}>\n<$wikify name=\"newColourName\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall={{{ [<currentTiddler>getindex<colourName>] }}}/>\"\"\">\n<$reveal state=<<state>> type=\"nomatch\" text=\"show\">\n<$button tooltip=<<colour-tooltip show>> aria-label=<<colour-tooltip show>> class=\"tc-btn-invisible\" set=<<state>> setTo=\"show\">{{$:/core/images/down-arrow}}<$text text=<<newColourName>> class=\"tc-small-gap-left\"/></$button><br>\n</$reveal>\n<$reveal state=<<state>> type=\"match\" text=\"show\">\n<$button tooltip=<<colour-tooltip hide>> aria-label=<<colour-tooltip show>> class=\"tc-btn-invisible\" actions=\"\"\"<$action-deletetiddler $tiddler=<<state>>/>\"\"\">{{$:/core/images/up-arrow}}<$text text=<<newColourName>> class=\"tc-small-gap-left\"/></$button><br>\n</$reveal>\n<$reveal state=<<state>> type=\"match\" text=\"show\">\n<$set name=\"colourName\" value=<<newColourName>>>\n<br>\n<<palette-manager-colour-row-segment>>\n<br><br>\n</$set>\n</$reveal>\n</$wikify>\n</$set>\n</$list>\n\\end\n\\define palette-manager-colour-row()\n\\whitespace trim\n<tr>\n<td>\n<span style=\"float:right;\">\n<$button tooltip={{$:/language/ControlPanel/Palette/Editor/Delete/Hint}} aria-label=<<lingo Delete/Hint>> class=\"tc-btn-invisible\" actions=<<delete-colour-index-actions>>>\n{{$:/core/images/delete-button}}</$button>\n</span>\n''<$macrocall $name=\"describePaletteColour\" colour=<<colourName>>/>''<br/>\n<$macrocall $name=\"colourName\" $output=\"text/plain\"/>\n</td>\n<td>\n<<palette-manager-colour-row-segment>>\n</td>\n</tr>\n\\end\n\\define palette-manager-table()\n\\whitespace trim\n<table>\n<tbody>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Palette]indexes[]]\" variable=\"colourName\">\n<$list filter=\"[<currentTiddler>indexes[]removeprefix<colourName>suffix[]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$list filter=\"[{$:/state/palettemanager/showexternal}removeprefix[yes]suffix[]]\" variable=\"ignore\">\n<<palette-manager-colour-row>>\n</$list>\n\"\"\">\n<<palette-manager-colour-row>>\n</$list>\n</$list>\n</tbody>\n</table>\n\\end\n<$set name=\"currentTiddler\" value={{$:/palette}}>\n\n<<lingo Prompt>> <$link to={{$:/palette}}><$macrocall $name=\"currentTiddler\" $output=\"text/plain\"/></$link>\n\n<$list filter=\"[all[current]is[shadow]is[tiddler]]\" variable=\"listItem\">\n<<lingo Prompt/Modified>>\n<$button message=\"tm-delete-tiddler\" param={{$:/palette}}><<lingo Reset/Caption>></$button>\n</$list>\n\n<$list filter=\"[all[current]is[shadow]!is[tiddler]]\" variable=\"listItem\">\n<<lingo Clone/Prompt>>\n</$list>\n\n<$button message=\"tm-new-tiddler\" param={{$:/palette}}><<lingo Clone/Caption>></$button>\n\n<$checkbox tiddler=\"$:/state/palettemanager/showexternal\" field=\"text\" checked=\"yes\" unchecked=\"no\"><span class=\"tc-small-gap-left\"><<lingo Names/External/Show>></span></$checkbox>\n\n<<palette-manager-table>>\n"
        },
        "$:/core/ui/PluginInfo": {
            "title": "$:/core/ui/PluginInfo",
            "text": "\\define localised-info-tiddler-title()\n$(currentTiddler)$/$(languageTitle)$/$(currentTab)$\n\\end\n\\define info-tiddler-title()\n$(currentTiddler)$/$(currentTab)$\n\\end\n\\define default-tiddler-title()\n$:/core/ui/PluginInfo/Default/$(currentTab)$\n\\end\n<$transclude tiddler=<<localised-info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<localised-info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<default-tiddler-title>> mode=\"block\">\n{{$:/language/ControlPanel/Plugin/NoInfoFound/Hint}}\n</$transclude>\n</$transclude>\n</$transclude>\n</$transclude>\n"
        },
        "$:/core/ui/PluginInfo/Default/contents": {
            "title": "$:/core/ui/PluginInfo/Default/contents",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/PluginInfo/\n<<lingo Hint>>\n<ul>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" emptyMessage=<<lingo Empty/Hint>>>\n<li>\n<$link />\n</li>\n</$list>\n</ul>\n"
        },
        "$:/core/ui/PluginListItemTemplate": {
            "title": "$:/core/ui/PluginListItemTemplate",
            "text": "<div class=\"tc-menu-list-item\">\n<$link to={{!!title}}><$view field=\"description\"><$view field=\"title\"/></$view></$link>\n</div>"
        },
        "$:/core/ui/RootTemplate": {
            "title": "$:/core/ui/RootTemplate",
            "text": "<$transclude tiddler={{{ [{$:/layout}has[text]] ~[[$:/core/ui/PageTemplate]] }}} mode=\"inline\"/>\n\n"
        },
        "$:/core/ui/SearchResults": {
            "title": "$:/core/ui/SearchResults",
            "text": "<div class=\"tc-search-results\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]butfirst[]limit[1]]\" emptyMessage=\"\"\"\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\">\n<$transclude mode=\"block\"/>\n</$list>\n\"\"\">\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\" default={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/search/currentTab\" text=<<currentTab>>/>\"\"\" explicitState=\"$:/state/tab/search-results/sidebar\"/>\n\n</$list>\n\n</div>\n"
        },
        "$:/core/ui/SideBar/More": {
            "title": "$:/core/ui/SideBar/More",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/More/Caption}}",
            "text": "<div class=\"tc-more-sidebar\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]\" default={{$:/config/DefaultMoreSidebarTab}} state=\"$:/state/tab/moresidebar\" class=\"tc-vertical tc-sidebar-tabs-more\" explicitState=\"$:/state/tab/moresidebar-1850697562\"/>\n</div>\n"
        },
        "$:/core/ui/SideBar/Open": {
            "title": "$:/core/ui/SideBar/Open",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/Open/Caption}}",
            "text": "\\whitespace trim\n\\define lingo-base() $:/language/CloseAll/\n\n\\define drop-actions()\n<$action-listops $tiddler=<<tv-story-list>> $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n\\end\n\n\\define placeholder()\n<div class=\"tc-droppable-placeholder\"/>\n\\end\n\n\\define droppable-item(button)\n\\whitespace trim\n<$droppable actions=<<drop-actions>> enable=<<tv-allow-drag-and-drop>>>\n<<placeholder>>\n<div>\n$button$\n</div>\n</$droppable>\n\\end\n\n<div class=\"tc-sidebar-tab-open\">\n<$list filter=\"[list<tv-story-list>]\" history=<<tv-history-list>> storyview=\"pop\">\n<div class=\"tc-sidebar-tab-open-item\">\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=\"tc-btn-invisible tc-btn-mini tc-small-gap-right\">{{$:/core/images/close-button}}</$button><$link to={{!!title}}><$view field=\"title\"/></$link>\"\"\"/>\n</div>\n</$list>\n<$tiddler tiddler=\"\">\n<div>\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-all-tiddlers\" class=\"tc-btn-invisible tc-btn-mini\"><<lingo Button>></$button>\"\"\"/>\n</div>\n</$tiddler>\n</div>\n"
        },
        "$:/core/ui/SideBar/Recent": {
            "title": "$:/core/ui/SideBar/Recent",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/Recent/Caption}}",
            "text": "<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n"
        },
        "$:/core/ui/SideBar/Tools": {
            "title": "$:/core/ui/SideBar/Tools",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/Tools/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n\n<<lingo Basics/Version/Prompt>> <<version>>\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\" variable=\"listItem\">\n\n<div style=\"position:relative;\" class={{{ [<listItem>encodeuricomponent[]addprefix[tc-btn-]] }}}>\n\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <$transclude tiddler=<<listItem>>/> <i class=\"tc-muted\"><$transclude tiddler=<<listItem>> field=\"description\"/></i>\n\n</div>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/SideBarLists": {
            "title": "$:/core/ui/SideBarLists",
            "text": "<$transclude tiddler=\"$:/core/ui/SideBarSegments/search\"/>\n\n<$transclude tiddler=\"$:/core/ui/SideBarSegments/tabs\"/>\n\n"
        },
        "$:/core/ui/SideBarSegments/page-controls": {
            "title": "$:/core/ui/SideBarSegments/page-controls",
            "tags": "$:/tags/SideBarSegment",
            "text": "{{||$:/core/ui/PageTemplate/pagecontrols}}\n"
        },
        "$:/core/ui/SideBarSegments/search": {
            "title": "$:/core/ui/SideBarSegments/search",
            "tags": "$:/tags/SideBarSegment",
            "text": "\\whitespace trim\n\n\\define count-popup-button()\n\\whitespace trim\n<$button popup=<<qualify \"$:/state/popup/search-dropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n<$list filter=\"[{$(searchTiddler)$}minlength{$:/config/Search/MinLength}limit[1]]\" variable=\"listItem\">\n<$vars userInput={{{ [<searchTiddler>get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}} replaceRegexp=\"limit\\[\\d+\\]\">\n<$vars primaryListFilter={{{ [<configTiddler>get[first-search-filter]search-replace:g:regexp<replaceRegexp>,[]] }}} secondaryListFilter={{{ [<configTiddler>get[second-search-filter]search-replace:g:regexp<replaceRegexp>,[]] }}}>\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[subfilter<primaryListFilter>] [subfilter<secondaryListFilter>]\"/>\"\"\">\n{{$:/language/Search/Matches}}\n</$set>\n</$vars>\n</$vars>\n</$list>\n</$button>\n\\end\n\n\\define search-results-list()\n\\whitespace trim\n<$vars userInput={{$(searchTiddler)$}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}}>\n<$list filter=\"[<userInput>minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$tiddler tiddler=<<configTiddler>>>\n\n{{$:/core/ui/SearchResults}}\n\n</$tiddler>\n\n</$list>\n</$vars>\n\\end\n\n\\define cancel-search-actions() <$list filter=\"[<searchTiddler>get[text]!match{$:/temp/search}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/search]] [<searchTiddler>] [<searchListState>]\"/>\"\"\"><$action-setfield $tiddler=\"$:/temp/search\" text={{{ [<searchTiddler>get[text]] }}}/><$action-setfield $tiddler=\"$:/temp/search/refresh\" text=\"yes\"/></$list>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/sidebar\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/search/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define advanced-search-actions() <$action-setfield $tiddler=\"$:/temp/advancedsearch\" text={{$:/temp/search/input}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/search/input}}/><<delete-state-tiddlers>><$action-navigate $to=\"$:/AdvancedSearch\"/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\"[data-tiddler-title=\"$:/AdvancedSearch\"] .tc-search input\"\"\" preventScroll=\"true\"/><$action-deletetiddler $filter=\"$:/temp/search $:/temp/search/input $:/temp/search/refresh [<searchListState>]\"/>\n\n<div class=\"tc-sidebar-lists tc-sidebar-search\">\n\n<$vars editTiddler=\"$:/temp/search\" searchTiddler=\"$:/temp/search/input\" searchListState=<<qualify \"$:/state/search-list/selected-item\">>>\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$keyboard key=\"((advanced-search-sidebar))\" actions=<<advanced-search-actions>>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<editTiddler>> storeTitle=<<searchTiddler>> \n\t\tselectionStateTitle=<<searchListState>> refreshTitle=\"$:/temp/search/refresh\" type=\"search\" \n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} focusPopup=<<qualify \"$:/state/popup/search-dropdown\">> \n\t\tclass=\"tc-popup-handle\" filterMinLength={{$:/config/Search/MinLength}} inputCancelActions=<<cancel-search-actions>> \n\t\tinputAcceptActions=<<input-accept-actions>> inputAcceptVariantActions=<<input-accept-variant-actions>> cancelPopups=\"yes\" \n\t\tconfigTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\"/>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n<$reveal state=<<searchTiddler>> type=\"nomatch\" text=\"\">\n<$button tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"tc-btn-invisible\">\n<<advanced-search-actions>>\n{{$:/core/images/advanced-search-button}}\n</$button>\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>><$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-search input\"/>\n{{$:/core/images/close-button}}\n</$button>\n<<count-popup-button>>\n</$reveal>\n<$reveal state=<<searchTiddler>> type=\"match\" text=\"\">\n<$button to=\"$:/AdvancedSearch\" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"tc-btn-invisible\">\n{{$:/core/images/advanced-search-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal tag=\"div\" class=\"tc-block-dropdown-wrapper\" state=<<searchTiddler>> type=\"nomatch\" text=\"\">\n\n<$reveal tag=\"div\" class=\"tc-block-dropdown tc-search-drop-down tc-popup-handle\" state=<<qualify \"$:/state/popup/search-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n\n<<search-results-list>>\n\n</$reveal>\n\n</$reveal>\n\n</$vars>\n\n</div>\n"
        },
        "$:/core/ui/SideBarSegments/site-subtitle": {
            "title": "$:/core/ui/SideBarSegments/site-subtitle",
            "tags": "$:/tags/SideBarSegment",
            "text": "<div class=\"tc-site-subtitle\">\n\n<$transclude tiddler=\"$:/SiteSubtitle\" mode=\"inline\"/>\n\n</div>\n"
        },
        "$:/core/ui/SideBarSegments/site-title": {
            "title": "$:/core/ui/SideBarSegments/site-title",
            "tags": "$:/tags/SideBarSegment",
            "text": "<h1 class=\"tc-site-title\">\n\n<$transclude tiddler=\"$:/SiteTitle\" mode=\"inline\"/>\n\n</h1>\n"
        },
        "$:/core/ui/SideBarSegments/tabs": {
            "title": "$:/core/ui/SideBarSegments/tabs",
            "tags": "$:/tags/SideBarSegment",
            "text": "<div class=\"tc-sidebar-lists tc-sidebar-tabs\">\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]]\" default={{$:/config/DefaultSidebarTab}} state=\"$:/state/tab/sidebar\" class=\"tc-sidebar-tabs-main\" explicitState=\"$:/state/tab/sidebar--595412856\"/>\n\n</div>\n"
        },
        "$:/core/ui/SwitcherModal": {
            "title": "$:/core/ui/SwitcherModal",
            "subtitle": "<$text text={{{[<switch>lookup[$:/language/Switcher/Subtitle/]]}}}/>",
            "class": "tc-modal-centered",
            "text": "<$tiddler tiddler={{{[<switch>lookup[$:/config/SwitcherTargets/]]}}}>\n\n\n<$transclude/>\n\n\n</$tiddler>"
        },
        "$:/TagManager": {
            "title": "$:/TagManager",
            "icon": "$:/core/images/tag-button",
            "color": "#bbb",
            "text": "\\define lingo-base() $:/language/TagManager/\n\\define iconEditorTab(type)\n\\whitespace trim\n<$link to=\"\"><<lingo Icons/None>></$link>\n<$list filter=\"[all[shadows+tiddlers]is[image]] [all[shadows+tiddlers]tag[$:/tags/Image]] -[type[application/pdf]] +[sort[title]] +[$type$is[system]]\">\n<$link to={{!!title}}>\n<$transclude/> <$view field=\"title\"/>\n</$link>\n</$list>\n\\end\n\\define iconEditor(title)\n\\whitespace trim\n<div class=\"tc-drop-down-wrapper\">\n<$button popupTitle={{{ [[$:/state/popup/icon/]addsuffix<__title__>] }}} class=\"tc-btn-invisible tc-btn-dropdown\">{{$:/core/images/down-arrow}}</$button>\n<$reveal stateTitle={{{ [[$:/state/popup/icon/]addsuffix<__title__>] }}} type=\"popup\" position=\"belowleft\" text=\"\" default=\"\">\n<div class=\"tc-drop-down\">\n<$linkcatcher actions=\"\"\"<$action-setfield $tiddler=<<__title__>> icon=<<navigateTo>>/>\"\"\">\n<<iconEditorTab type:\"!\">>\n<hr/>\n<<iconEditorTab type:\"\">>\n</$linkcatcher>\n</div>\n</$reveal>\n</div>\n\\end\n\\define toggleButton(state)\n\\whitespace trim\n<$reveal stateTitle=<<__state__>> type=\"match\" text=\"closed\" default=\"closed\">\n<$button setTitle=<<__state__>> setTo=\"open\" class=\"tc-btn-invisible tc-btn-dropdown\" selectedClass=\"tc-selected\">\n{{$:/core/images/info-button}}\n</$button>\n</$reveal>\n<$reveal stateTitle=<<__state__>> type=\"match\" text=\"open\" default=\"closed\">\n<$button setTitle=<<__state__>> setTo=\"closed\" class=\"tc-btn-invisible tc-btn-dropdown\" selectedClass=\"tc-selected\">\n{{$:/core/images/info-button}}\n</$button>\n</$reveal>\n\\end\n\\whitespace trim\n<table class=\"tc-tag-manager-table\">\n<tbody>\n<tr>\n<th><<lingo Colour/Heading>></th>\n<th class=\"tc-tag-manager-tag\"><<lingo Tag/Heading>></th>\n<th><<lingo Count/Heading>></th>\n<th><<lingo Icon/Heading>></th>\n<th><<lingo Info/Heading>></th>\n</tr>\n<$list filter=\"[tags[]!is[system]sort[title]]\">\n<tr>\n<td><$edit-text field=\"color\" tag=\"input\" type=\"color\"/></td>\n<td>{{||$:/core/ui/TagTemplate}}</td>\n<td><$count filter=\"[all[current]tagging[]]\"/></td>\n<td>\n<$macrocall $name=\"iconEditor\" title={{!!title}}/>\n</td>\n<td>\n<$macrocall $name=\"toggleButton\" state={{{ [[$:/state/tag-manager/]addsuffix<currentTiddler>] }}} /> \n</td>\n</tr>\n<tr>\n<td></td>\n<td colspan=\"4\">\n<$reveal stateTitle={{{ [[$:/state/tag-manager/]addsuffix<currentTiddler>] }}} type=\"match\" text=\"open\" default=\"\">\n<table>\n<tbody>\n<tr><td><<lingo Colour/Heading>></td><td><$edit-text field=\"color\" tag=\"input\" type=\"text\" size=\"9\"/></td></tr>\n<tr><td><<lingo Icon/Heading>></td><td><$edit-text field=\"icon\" tag=\"input\" size=\"45\"/></td></tr>\n</tbody>\n</table>\n</$reveal>\n</td>\n</tr>\n</$list>\n<tr>\n<td></td>\n<td style=\"position:relative;\">\n{{$:/core/ui/UntaggedTemplate}}\n</td>\n<td>\n<small class=\"tc-menu-list-count\"><$count filter=\"[untagged[]!is[system]] -[tags[]]\"/></small>\n</td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/TagPickerTagTemplate": {
            "title": "$:/core/ui/TagPickerTagTemplate",
            "text": "\\whitespace trim\n<$button class=<<button-classes>> tag=\"a\" tooltip={{$:/language/EditTemplate/Tags/Add/Button/Hint}}>\n<$list filter=\"[<saveTiddler>minlength[1]]\">\n<$action-listops $tiddler=<<saveTiddler>> $field=<<tagField>> $subfilter=\"[<tag>]\"/>\n</$list>\n<$set name=\"currentTiddlerCSSEscaped\" value={{{ [<saveTiddler>escapecss[]] }}}>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<get-tagpicker-focus-selector>> preventScroll=\"true\"/>\n</$set>\n<<delete-tag-state-tiddlers>>\n<$list filter=\"[<refreshTitle>minlength[1]]\">\n<$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n</$list>\n<<actions>>\n<$set name=\"backgroundColor\" value={{!!color}}>\n<$wikify name=\"foregroundColor\" text=\"\"\"<$macrocall $name=\"contrastcolour\" target={{!!color}} fallbackTarget=<<fallbackTarget>> colourA=<<colourA>> colourB=<<colourB>>/>\"\"\">\n<span class=\"tc-tag-label tc-btn-invisible\" style=<<tag-pill-styles>>>\n<$transclude tiddler={{!!icon}}/><$view field=\"title\" format=\"text\"/>\n</span>\n</$wikify>\n</$set>\n</$button>\n"
        },
        "$:/core/ui/TagTemplate": {
            "title": "$:/core/ui/TagTemplate",
            "text": "\\whitespace trim\n<span class=\"tc-tag-list-item\">\n<$set name=\"transclusion\" value=<<currentTiddler>>>\n<$macrocall $name=\"tag-pill-body\" tag=<<currentTiddler>> icon={{!!icon}} colour={{!!color}} palette={{$:/palette}} element-tag=\"\"\"$button\"\"\" element-attributes=\"\"\"popup=<<qualify \"$:/state/popup/tag\">> dragFilter='[all[current]tagging[]]' tag='span'\"\"\"/>\n<$reveal state=<<qualify \"$:/state/popup/tag\">> type=\"popup\" position=\"below\" animate=\"yes\" class=\"tc-drop-down\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</$set>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TagDropdown]!has[draft.of]]\" variable=\"listItem\"> \n<$transclude tiddler=<<listItem>>/> \n</$list>\n<hr>\n<$macrocall $name=\"list-tagged-draggable\" tag=<<currentTiddler>>/>\n</$reveal>\n</$set>\n</span>\n"
        },
        "$:/core/ui/TiddlerFieldTemplate": {
            "title": "$:/core/ui/TiddlerFieldTemplate",
            "text": "<tr class=\"tc-view-field\">\n<td class=\"tc-view-field-name\">\n<$text text=<<listItem>>/>\n</td>\n<td class=\"tc-view-field-value\">\n<$view field=<<listItem>>/>\n</td>\n</tr>"
        },
        "$:/core/ui/TiddlerFields": {
            "title": "$:/core/ui/TiddlerFields",
            "text": "<table class=\"tc-view-field-table\">\n<tbody>\n<$list filter=\"[all[current]fields[]sort[title]] -text\" template=\"$:/core/ui/TiddlerFieldTemplate\" variable=\"listItem\"/>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/TiddlerInfo/Advanced/PluginInfo": {
            "title": "$:/core/ui/TiddlerInfo/Advanced/PluginInfo",
            "tags": "$:/tags/TiddlerInfo/Advanced",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/PluginInfo/\n<$list filter=\"[all[current]has[plugin-type]]\">\n\n! <<lingo Heading>>\n\n<<lingo Hint>>\n<ul>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" emptyMessage=<<lingo Empty/Hint>>>\n<li>\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</li>\n</$list>\n</ul>\n\n</$list>\n"
        },
        "$:/core/ui/TiddlerInfo/Advanced/ShadowInfo": {
            "title": "$:/core/ui/TiddlerInfo/Advanced/ShadowInfo",
            "tags": "$:/tags/TiddlerInfo/Advanced",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/ShadowInfo/\n<$set name=\"infoTiddler\" value=<<currentTiddler>>>\n\n''<<lingo Heading>>''\n\n<$list filter=\"[all[current]!is[shadow]]\">\n\n<<lingo NotShadow/Hint>>\n\n</$list>\n\n<$list filter=\"[all[current]is[shadow]]\">\n\n<<lingo Shadow/Hint>>\n\n<$list filter=\"[all[current]shadowsource[]]\">\n\n<$set name=\"pluginTiddler\" value=<<currentTiddler>>>\n<<lingo Shadow/Source>>\n</$set>\n\n</$list>\n\n<$list filter=\"[all[current]is[shadow]is[tiddler]]\">\n\n<<lingo OverriddenShadow/Hint>>\n\n</$list>\n\n\n</$list>\n</$set>\n"
        },
        "$:/core/ui/TiddlerInfo/Advanced": {
            "title": "$:/core/ui/TiddlerInfo/Advanced",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Advanced/Caption}}",
            "text": "<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfo/Advanced]!has[draft.of]]\" variable=\"listItem\">\n\n<$transclude tiddler=<<listItem>> mode=\"block\"/>\n</$list>\n"
        },
        "$:/core/ui/TiddlerInfo/Fields": {
            "title": "$:/core/ui/TiddlerInfo/Fields",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Fields/Caption}}",
            "text": "<$transclude tiddler=\"$:/core/ui/TiddlerFields\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/List": {
            "title": "$:/core/ui/TiddlerInfo/List",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/List/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[list{!!title}]\" emptyMessage=<<lingo List/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/Listed": {
            "title": "$:/core/ui/TiddlerInfo/Listed",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Listed/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]listed[]!is[system]]\" emptyMessage=<<lingo Listed/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/References": {
            "title": "$:/core/ui/TiddlerInfo/References",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/References/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]backlinks[]sort[title]]\" emptyMessage=<<lingo References/Empty>> template=\"$:/core/ui/ListItemTemplate\">\n</$list>"
        },
        "$:/core/ui/TiddlerInfo/Tagging": {
            "title": "$:/core/ui/TiddlerInfo/Tagging",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Tagging/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]tagging[]]\" emptyMessage=<<lingo Tagging/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/Tools": {
            "title": "$:/core/ui/TiddlerInfo/Tools",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Tools/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]\" variable=\"listItem\">\n\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <$transclude tiddler=<<listItem>>/> <i class=\"tc-muted\"><$transclude tiddler=<<listItem>> field=\"description\"/></i>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/TiddlerInfo": {
            "title": "$:/core/ui/TiddlerInfo",
            "text": "<div style=\"position:relative;\">\n<div class=\"tc-tiddler-controls\" style=\"position:absolute;right:0;\">\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"sticky\">\n<$button set=<<tiddlerInfoState>> setTo=\"\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=\"tc-btn-invisible\">\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n</div>\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfo]!has[draft.of]]\" default={{$:/config/TiddlerInfo/Default}}/>\n"
        },
        "$:/core/ui/TopBar/menu": {
            "title": "$:/core/ui/TopBar/menu",
            "tags": "$:/tags/TopRightBar",
            "text": "<$list filter=\"[[$:/state/sidebar]get[text]] +[else[yes]!match[no]]\" variable=\"ignore\">\n<$button set=\"$:/state/sidebar\" setTo=\"no\" tooltip={{$:/language/Buttons/HideSideBar/Hint}} aria-label={{$:/language/Buttons/HideSideBar/Caption}} class=\"tc-btn-invisible tc-hide-sidebar-btn\">{{$:/core/images/chevron-right}}</$button>\n</$list>\n<$list filter=\"[[$:/state/sidebar]get[text]] +[else[yes]match[no]]\" variable=\"ignore\">\n<$button set=\"$:/state/sidebar\" setTo=\"yes\" tooltip={{$:/language/Buttons/ShowSideBar/Hint}} aria-label={{$:/language/Buttons/ShowSideBar/Caption}} class=\"tc-btn-invisible tc-show-sidebar-btn\">{{$:/core/images/chevron-left}}</$button>\n</$list>\n"
        },
        "$:/core/ui/UntaggedTemplate": {
            "title": "$:/core/ui/UntaggedTemplate",
            "text": "\\define lingo-base() $:/language/SideBar/\n<$button popup=<<qualify \"$:/state/popup/tag\">> class=\"tc-btn-invisible tc-untagged-label tc-tag-label\">\n<<lingo Tags/Untagged/Caption>>\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/tag\">> type=\"popup\" position=\"below\">\n<div class=\"tc-drop-down\">\n<$list filter=\"[untagged[]!is[system]] -[tags[]] +[sort[title]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/body": {
            "title": "$:/core/ui/ViewTemplate/body",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal tag=\"div\" class=\"tc-tiddler-body\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" retain=\"yes\" animate=\"yes\">\n\n<$list filter=\"[all[current]!has[plugin-type]!field:hide-body[yes]]\">\n\n<$transclude>\n\n<$transclude tiddler=\"$:/language/MissingTiddler/Hint\"/>\n\n</$transclude>\n\n</$list>\n\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/classic": {
            "title": "$:/core/ui/ViewTemplate/classic",
            "tags": "$:/tags/ViewTemplate $:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/ClassicWarning/\n<$list filter=\"[all[current]type[text/x-tiddlywiki]]\">\n<div class=\"tc-message-box\">\n\n<<lingo Hint>>\n\n<$button set=\"!!type\" setTo=\"text/vnd.tiddlywiki\"><<lingo Upgrade/Caption>></$button>\n\n</div>\n</$list>\n"
        },
        "$:/core/ui/ViewTemplate/import": {
            "title": "$:/core/ui/ViewTemplate/import",
            "tags": "$:/tags/ViewTemplate",
            "text": "\\define lingo-base() $:/language/Import/\n\n\\define buttons()\n<$button message=\"tm-delete-tiddler\" param=<<currentTiddler>>><<lingo Listing/Cancel/Caption>></$button>\n<$button message=\"tm-perform-import\" param=<<currentTiddler>>><<lingo Listing/Import/Caption>></$button>\n<<lingo Listing/Preview>> <$select tiddler=\"$:/state/importpreviewtype\" default=\"$:/core/ui/ImportPreviews/Text\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ImportPreview]!has[draft.of]]\">\n<option value=<<currentTiddler>>>{{!!caption}}</option>\n</$list>\n</$select>\n\\end\n\n<$list filter=\"[all[current]field:plugin-type[import]]\">\n\n<div class=\"tc-import\">\n\n<<lingo Listing/Hint>>\n\n<<buttons>>\n\n{{||$:/core/ui/ImportListing}}\n\n<<buttons>>\n\n</div>\n\n</$list>\n"
        },
        "$:/core/ui/ViewTemplate/plugin": {
            "title": "$:/core/ui/ViewTemplate/plugin",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal tag=\"div\" class=\"tc-tiddler-plugin-info\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" retain=\"yes\" animate=\"yes\">\n\n<$list filter=\"[all[current]has[plugin-type]] -[all[current]field:plugin-type[import]]\">\n<$set name=\"plugin-type\" value={{!!plugin-type}}>\n<$set name=\"default-popup-state\" value=\"yes\">\n<$set name=\"qualified-state\" value=<<qualify \"$:/state/plugin-info\">>>\n{{||$:/core/ui/Components/plugin-info}}\n</$set>\n</$set>\n</$set>\n</$list>\n</$reveal>"
        },
        "$:/core/ui/ViewTemplate/subtitle": {
            "title": "$:/core/ui/ViewTemplate/subtitle",
            "tags": "$:/tags/ViewTemplate",
            "text": "\\whitespace trim\n<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<div class=\"tc-subtitle\">\n<$link to={{!!modifier}} />\n<$view field=\"modified\" format=\"date\" template={{$:/language/Tiddler/DateFormat}}/>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/tags": {
            "title": "$:/core/ui/ViewTemplate/tags",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<div class=\"tc-tags-wrapper\"><$list filter=\"[all[current]tags[]sort[title]]\" template=\"$:/core/ui/TagTemplate\" storyview=\"pop\"/></div>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/title": {
            "title": "$:/core/ui/ViewTemplate/title",
            "tags": "$:/tags/ViewTemplate",
            "text": "\\whitespace trim\n\\define title-styles()\nfill:$(foregroundColor)$;\n\\end\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-tiddler-title\">\n<div class=\"tc-titlebar\">\n<span class=\"tc-tiddler-controls\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]\" variable=\"listItem\"><$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"><$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\"><$transclude tiddler=<<listItem>>/></$set></$reveal></$list>\n</span>\n<$set name=\"tv-wikilinks\" value={{$:/config/Tiddlers/TitleLinks}}>\n<$link>\n<$set name=\"foregroundColor\" value={{!!color}}>\n<$list filter=\"[all[current]has[icon]]~[[$:/config/DefaultTiddlerIcon]has[text]]\">\n<span class=\"tc-tiddler-title-icon\" style=<<title-styles>>>\n<$transclude tiddler={{!!icon}}>\n<$transclude tiddler={{$:/config/DefaultTiddlerIcon}}/>\n</$transclude>\n</span>\n</$list>\n</$set>\n<$list filter=\"[all[current]removeprefix[$:/]]\">\n<h2 class=\"tc-title\" title={{$:/language/SystemTiddler/Tooltip}}>\n<span class=\"tc-system-title-prefix\">$:/</span><$text text=<<currentTiddler>>/>\n</h2>\n</$list>\n<$list filter=\"[all[current]!prefix[$:/]]\">\n<h2 class=\"tc-title\">\n<$view field=\"title\"/>\n</h2>\n</$list>\n</$link>\n</$set>\n</div>\n\n<$reveal type=\"nomatch\" text=\"\" default=\"\" state=<<tiddlerInfoState>> class=\"tc-tiddler-info tc-popup-handle\" animate=\"yes\" retain=\"yes\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfoSegment]!has[draft.of]] [[$:/core/ui/TiddlerInfo]]\" variable=\"listItem\"><$transclude tiddler=<<listItem>> mode=\"block\"/></$list>\n\n</$reveal>\n</div>"
        },
        "$:/core/ui/ViewTemplate/unfold": {
            "title": "$:/core/ui/ViewTemplate/unfold",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal tag=\"div\" type=\"nomatch\" state=\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar\" text=\"hide\">\n<$reveal tag=\"div\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" default=\"show\" retain=\"yes\" animate=\"yes\">\n<$button tooltip={{$:/language/Buttons/Fold/Hint}} aria-label={{$:/language/Buttons/Fold/Caption}} class=\"tc-fold-banner\">\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n{{$:/core/images/chevron-up}}\n</$button>\n</$reveal>\n<$reveal tag=\"div\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"show\" default=\"show\" retain=\"yes\" animate=\"yes\">\n<$button tooltip={{$:/language/Buttons/Unfold/Hint}} aria-label={{$:/language/Buttons/Unfold/Caption}} class=\"tc-unfold-banner\">\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate": {
            "title": "$:/core/ui/ViewTemplate",
            "text": "\\define folded-state()\n$:/state/folded/$(currentTiddler)$\n\\end\n\\define cancel-delete-tiddler-actions(message) <$action-sendmessage $message=\"tm-$message$-tiddler\"/>\n\\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]]\n<$vars storyTiddler=<<currentTiddler>> tiddlerInfoState=<<qualify \"$:/state/popup/tiddler-info\">>><div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class={{{ tc-tiddler-frame tc-tiddler-view-frame [<currentTiddler>is[tiddler]then[tc-tiddler-exists]] [<currentTiddler>is[missing]!is[shadow]then[tc-tiddler-missing]] [<currentTiddler>is[shadow]then[tc-tiddler-exists tc-tiddler-shadow]] [<currentTiddler>is[shadow]is[tiddler]then[tc-tiddler-overridden-shadow]] [<currentTiddler>is[system]then[tc-tiddler-system]] [{!!class}] [<currentTiddler>tags[]encodeuricomponent[]addprefix[tc-tagged-]] +[join[ ]] }}}><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewTemplate]!has[draft.of]]\" variable=\"listItem\"><$transclude tiddler=<<listItem>>/></$list>\n</div>\n</$vars>\n"
        },
        "$:/core/ui/Buttons/clone": {
            "title": "$:/core/ui/Buttons/clone",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/clone-button}} {{$:/language/Buttons/Clone/Caption}}",
            "description": "{{$:/language/Buttons/Clone/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-new-tiddler\" param=<<currentTiddler>> tooltip={{$:/language/Buttons/Clone/Hint}} aria-label={{$:/language/Buttons/Clone/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/clone-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Clone/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/close-others": {
            "title": "$:/core/ui/Buttons/close-others",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/close-others-button}} {{$:/language/Buttons/CloseOthers/Caption}}",
            "description": "{{$:/language/Buttons/CloseOthers/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-close-other-tiddlers\" param=<<currentTiddler>> tooltip={{$:/language/Buttons/CloseOthers/Hint}} aria-label={{$:/language/Buttons/CloseOthers/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/close-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/CloseOthers/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/close": {
            "title": "$:/core/ui/Buttons/close",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/close-button}} {{$:/language/Buttons/Close/Caption}}",
            "description": "{{$:/language/Buttons/Close/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/close-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/Close/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/edit": {
            "title": "$:/core/ui/Buttons/edit",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/edit-button}} {{$:/language/Buttons/Edit/Caption}}",
            "description": "{{$:/language/Buttons/Edit/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-edit-tiddler\" tooltip={{$:/language/Buttons/Edit/Hint}} aria-label={{$:/language/Buttons/Edit/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/edit-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Edit/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/export-tiddler": {
            "title": "$:/core/ui/Buttons/export-tiddler",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/export-button}} {{$:/language/Buttons/ExportTiddler/Caption}}",
            "description": "{{$:/language/Buttons/ExportTiddler/Hint}}",
            "text": "\\define makeExportFilter()\n[[$(currentTiddler)$]]\n\\end\n<$macrocall $name=\"exportButton\" exportFilter=<<makeExportFilter>> lingoBase=\"$:/language/Buttons/ExportTiddler/\" baseFilename=<<currentTiddler>>/>"
        },
        "$:/core/ui/Buttons/fold-bar": {
            "title": "$:/core/ui/Buttons/fold-bar",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/chevron-up}} {{$:/language/Buttons/Fold/FoldBar/Caption}}",
            "description": "{{$:/language/Buttons/Fold/FoldBar/Hint}}",
            "text": "<!-- This dummy toolbar button is here to allow visibility of the fold-bar to be controlled as if it were a toolbar button -->"
        },
        "$:/core/ui/Buttons/fold-others": {
            "title": "$:/core/ui/Buttons/fold-others",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/fold-others-button}} {{$:/language/Buttons/FoldOthers/Caption}}",
            "description": "{{$:/language/Buttons/FoldOthers/Hint}}",
            "text": "\\whitespace trim\n<$button tooltip={{$:/language/Buttons/FoldOthers/Hint}} aria-label={{$:/language/Buttons/FoldOthers/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-other-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/FoldOthers/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/fold": {
            "title": "$:/core/ui/Buttons/fold",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/fold-button}} {{$:/language/Buttons/Fold/Caption}}",
            "description": "{{$:/language/Buttons/Fold/Hint}}",
            "text": "\\whitespace trim\n<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" default=\"show\">\n<$button tooltip={{$:/language/Buttons/Fold/Hint}} aria-label={{$:/language/Buttons/Fold/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Fold/Caption}}/>\n</span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<folded-state>> text=\"hide\" default=\"show\">\n<$button tooltip={{$:/language/Buttons/Unfold/Hint}} aria-label={{$:/language/Buttons/Unfold/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Unfold/Caption}}/>\n</span>\n</$list>\n</$button>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/info": {
            "title": "$:/core/ui/Buttons/info",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/info-button}} {{$:/language/Buttons/Info/Caption}}",
            "description": "{{$:/language/Buttons/Info/Hint}}",
            "text": "\\whitespace trim\n\\define button-content()\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/info-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/Info/Caption}}/>\n</span>\n</$list>\n\\end\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"popup\">\n<$button popup=<<tiddlerInfoState>> tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"sticky\">\n<$reveal state=<<tiddlerInfoState>> type=\"match\" text=\"\" default=\"\">\n<$button set=<<tiddlerInfoState>> setTo=\"yes\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n<$reveal state=<<tiddlerInfoState>> type=\"nomatch\" text=\"\" default=\"\">\n<$button set=<<tiddlerInfoState>> setTo=\"\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n</$reveal>"
        },
        "$:/core/ui/Buttons/more-tiddler-actions": {
            "title": "$:/core/ui/Buttons/more-tiddler-actions",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/down-arrow}} {{$:/language/Buttons/More/Caption}}",
            "description": "{{$:/language/Buttons/More/Hint}}",
            "text": "\\whitespace trim\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<$button popup=<<qualify \"$:/state/popup/more\">> tooltip={{$:/language/Buttons/More/Hint}} aria-label={{$:/language/Buttons/More/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/More/Caption}}/>\n</span>\n</$list>\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/more\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n\n<div class=\"tc-drop-down\">\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"tc-btn-invisible\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]] -[[$:/core/ui/Buttons/more-tiddler-actions]]\" variable=\"listItem\">\n\n<$reveal type=\"match\" state=<<config-title>> text=\"hide\">\n\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$set>\n\n</$reveal>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</div>\n\n</$reveal>"
        },
        "$:/core/ui/Buttons/new-here": {
            "title": "$:/core/ui/Buttons/new-here",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/new-here-button}} {{$:/language/Buttons/NewHere/Caption}}",
            "description": "{{$:/language/Buttons/NewHere/Hint}}",
            "text": "\\whitespace trim\n\\define newHereActions()\n<$set name=\"tags\" filter=\"[<currentTiddler>] [{$:/config/NewTiddler/Tags}]\">\n<$action-sendmessage $message=\"tm-new-tiddler\" tags=<<tags>>/>\n</$set>\n\\end\n\\define newHereButton()\n<$button actions=<<newHereActions>> tooltip={{$:/language/Buttons/NewHere/Hint}} aria-label={{$:/language/Buttons/NewHere/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-here-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewHere/Caption}}/>\n</span>\n</$list>\n</$button>\n\\end\n<<newHereButton>>\n"
        },
        "$:/core/ui/Buttons/new-journal-here": {
            "title": "$:/core/ui/Buttons/new-journal-here",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournalHere/Caption}}",
            "description": "{{$:/language/Buttons/NewJournalHere/Hint}}",
            "text": "\\whitespace trim\n\\define journalButtonTags()\n[[$(currentTiddlerTag)$]] $(journalTags)$\n\\end\n\\define journalButton()\n<$button tooltip={{$:/language/Buttons/NewJournalHere/Hint}} aria-label={{$:/language/Buttons/NewJournalHere/Caption}} class=<<tv-config-toolbar-class>>>\n<$wikify name=\"journalTitle\" text=\"\"\"<$macrocall $name=\"now\" format=<<journalTitleTemplate>>/>\"\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<journalButtonTags>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewJournalHere/Caption}}/>\n</span>\n</$list>\n</$wikify>\n</$button>\n\\end\n<$set name=\"journalTitleTemplate\" value={{$:/config/NewJournal/Title}}>\n<$set name=\"journalTags\" value={{$:/config/NewJournal/Tags}}>\n<$set name=\"currentTiddlerTag\" value=<<currentTiddler>>>\n<<journalButton>>\n</$set>\n</$set>\n</$set>\n"
        },
        "$:/core/ui/Buttons/open-window": {
            "title": "$:/core/ui/Buttons/open-window",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/open-window}} {{$:/language/Buttons/OpenWindow/Caption}}",
            "description": "{{$:/language/Buttons/OpenWindow/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-open-window\" tooltip={{$:/language/Buttons/OpenWindow/Hint}} aria-label={{$:/language/Buttons/OpenWindow/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/open-window}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/OpenWindow/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/permalink": {
            "title": "$:/core/ui/Buttons/permalink",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/permalink-button}} {{$:/language/Buttons/Permalink/Caption}}",
            "description": "{{$:/language/Buttons/Permalink/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-permalink\" tooltip={{$:/language/Buttons/Permalink/Hint}} aria-label={{$:/language/Buttons/Permalink/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/permalink-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Permalink/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/permaview": {
            "title": "$:/core/ui/Buttons/permaview",
            "tags": "$:/tags/ViewToolbar $:/tags/PageControls",
            "caption": "{{$:/core/images/permaview-button}} {{$:/language/Buttons/Permaview/Caption}}",
            "description": "{{$:/language/Buttons/Permaview/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-permaview\" tooltip={{$:/language/Buttons/Permaview/Hint}} aria-label={{$:/language/Buttons/Permaview/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/permaview-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Permaview/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/DefaultTiddlers": {
            "title": "$:/DefaultTiddlers",
            "text": "GettingStarted\n"
        },
        "$:/temp/advancedsearch": {
            "title": "$:/temp/advancedsearch",
            "text": ""
        },
        "$:/snippets/allfields": {
            "title": "$:/snippets/allfields",
            "text": "\\define renderfield(title)\n<tr class=\"tc-view-field\"><td class=\"tc-view-field-name\">''$title$'':</td><td class=\"tc-view-field-value\">//{{$:/language/Docs/Fields/$title$}}//</td></tr>\n\\end\n<table class=\"tc-view-field-table\"><tbody><$list filter=\"[fields[]sort[title]]\" variable=\"listItem\"><$macrocall $name=\"renderfield\" title=<<listItem>>/></$list>\n</tbody></table>\n"
        },
        "$:/config/AnimationDuration": {
            "title": "$:/config/AnimationDuration",
            "text": "400"
        },
        "$:/config/AutoFocus": {
            "title": "$:/config/AutoFocus",
            "text": "title"
        },
        "$:/config/AutoSave": {
            "title": "$:/config/AutoSave",
            "text": "yes"
        },
        "$:/config/BitmapEditor/Colour": {
            "title": "$:/config/BitmapEditor/Colour",
            "text": "#444"
        },
        "$:/config/BitmapEditor/ImageSizes": {
            "title": "$:/config/BitmapEditor/ImageSizes",
            "text": "[[62px 100px]] [[100px 62px]] [[124px 200px]] [[200px 124px]] [[248px 400px]] [[371px 600px]] [[400px 248px]] [[556px 900px]] [[600px 371px]] [[742px 1200px]] [[900px 556px]] [[1200px 742px]]"
        },
        "$:/config/BitmapEditor/LineWidth": {
            "title": "$:/config/BitmapEditor/LineWidth",
            "text": "3px"
        },
        "$:/config/BitmapEditor/LineWidths": {
            "title": "$:/config/BitmapEditor/LineWidths",
            "text": "0.25px 0.5px 1px 2px 3px 4px 6px 8px 10px 16px 20px 28px 40px 56px 80px"
        },
        "$:/config/BitmapEditor/Opacities": {
            "title": "$:/config/BitmapEditor/Opacities",
            "text": "0.01 0.025 0.05 0.075 0.1 0.15 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0"
        },
        "$:/config/BitmapEditor/Opacity": {
            "title": "$:/config/BitmapEditor/Opacity",
            "text": "1.0"
        },
        "$:/config/DefaultMoreSidebarTab": {
            "title": "$:/config/DefaultMoreSidebarTab",
            "text": "$:/core/ui/MoreSideBar/Tags"
        },
        "$:/config/DefaultSidebarTab": {
            "title": "$:/config/DefaultSidebarTab",
            "text": "$:/core/ui/SideBar/Open"
        },
        "$:/config/DownloadSaver/AutoSave": {
            "title": "$:/config/DownloadSaver/AutoSave",
            "text": "no"
        },
        "$:/config/Drafts/TypingTimeout": {
            "title": "$:/config/Drafts/TypingTimeout",
            "text": "400"
        },
        "$:/config/EditMode/fieldname-filter": {
            "title": "$:/config/EditMode/fieldname-filter",
            "first-search-filter": "[!is[shadow]!is[system]fields[]search:title<userInput>sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type",
            "second-search-filter": "[fields[]search:title<userInput>sort[]] -[!is[shadow]!is[system]fields[]]"
        },
        "$:/config/EditTabIndex": {
            "title": "$:/config/EditTabIndex",
            "text": "1\n"
        },
        "$:/config/EditTemplateFields/Visibility/title": {
            "title": "$:/config/EditTemplateFields/Visibility/title",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/tags": {
            "title": "$:/config/EditTemplateFields/Visibility/tags",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/text": {
            "title": "$:/config/EditTemplateFields/Visibility/text",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/creator": {
            "title": "$:/config/EditTemplateFields/Visibility/creator",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/created": {
            "title": "$:/config/EditTemplateFields/Visibility/created",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/modified": {
            "title": "$:/config/EditTemplateFields/Visibility/modified",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/modifier": {
            "title": "$:/config/EditTemplateFields/Visibility/modifier",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/type": {
            "title": "$:/config/EditTemplateFields/Visibility/type",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/draft.title": {
            "title": "$:/config/EditTemplateFields/Visibility/draft.title",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/draft.of": {
            "title": "$:/config/EditTemplateFields/Visibility/draft.of",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/revision": {
            "title": "$:/config/EditTemplateFields/Visibility/revision",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/bag": {
            "title": "$:/config/EditTemplateFields/Visibility/bag",
            "text": "hide"
        },
        "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4": {
            "title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4",
            "text": "hide"
        },
        "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-5": {
            "title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-5",
            "text": "hide"
        },
        "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-6": {
            "title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-6",
            "text": "hide"
        },
        "$:/config/EditorTypeMappings/image/gif": {
            "title": "$:/config/EditorTypeMappings/image/gif",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/webp": {
            "title": "$:/config/EditorTypeMappings/image/webp",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/heic": {
            "title": "$:/config/EditorTypeMappings/image/heic",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/heif": {
            "title": "$:/config/EditorTypeMappings/image/heif",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/jpeg": {
            "title": "$:/config/EditorTypeMappings/image/jpeg",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/jpg": {
            "title": "$:/config/EditorTypeMappings/image/jpg",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/png": {
            "title": "$:/config/EditorTypeMappings/image/png",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/x-icon": {
            "title": "$:/config/EditorTypeMappings/image/x-icon",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/text/vnd.tiddlywiki": {
            "title": "$:/config/EditorTypeMappings/text/vnd.tiddlywiki",
            "text": "text"
        },
        "$:/config/Manager/Show": {
            "title": "$:/config/Manager/Show",
            "text": "tiddlers"
        },
        "$:/config/Manager/Filter": {
            "title": "$:/config/Manager/Filter",
            "text": ""
        },
        "$:/config/Manager/Order": {
            "title": "$:/config/Manager/Order",
            "text": "forward"
        },
        "$:/config/Manager/Sort": {
            "title": "$:/config/Manager/Sort",
            "text": "title"
        },
        "$:/config/Manager/System": {
            "title": "$:/config/Manager/System",
            "text": "system"
        },
        "$:/config/Manager/Tag": {
            "title": "$:/config/Manager/Tag",
            "text": ""
        },
        "$:/state/popup/manager/item/$:/Manager/ItemMain/RawText": {
            "title": "$:/state/popup/manager/item/$:/Manager/ItemMain/RawText",
            "text": "hide"
        },
        "$:/config/MissingLinks": {
            "title": "$:/config/MissingLinks",
            "text": "yes"
        },
        "$:/config/Navigation/UpdateAddressBar": {
            "title": "$:/config/Navigation/UpdateAddressBar",
            "text": "no"
        },
        "$:/config/Navigation/UpdateHistory": {
            "title": "$:/config/Navigation/UpdateHistory",
            "text": "no"
        },
        "$:/config/NewImageType": {
            "title": "$:/config/NewImageType",
            "text": "jpeg"
        },
        "$:/config/OfficialPluginLibrary": {
            "title": "$:/config/OfficialPluginLibrary",
            "tags": "$:/tags/PluginLibrary",
            "url": "https://tiddlywiki.com/library/v5.1.23/index.html",
            "caption": "{{$:/language/OfficialPluginLibrary}}",
            "text": "{{$:/language/OfficialPluginLibrary/Hint}}\n"
        },
        "$:/config/Navigation/openLinkFromInsideRiver": {
            "title": "$:/config/Navigation/openLinkFromInsideRiver",
            "text": "below"
        },
        "$:/config/Navigation/openLinkFromOutsideRiver": {
            "title": "$:/config/Navigation/openLinkFromOutsideRiver",
            "text": "top"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/fold-all": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/fold-all",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/full-screen": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/full-screen",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/tag-manager": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/tag-manager",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-journal": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-journal",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-image": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-image",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/palette": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/palette",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/permaview": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/permaview",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/print": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/print",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/timestamp": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/timestamp",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/theme": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/theme",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/unfold-all": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/unfold-all",
            "text": "hide"
        },
        "$:/config/Performance/Instrumentation": {
            "title": "$:/config/Performance/Instrumentation",
            "text": "no"
        },
        "$:/config/RegisterPluginType/plugin": {
            "title": "$:/config/RegisterPluginType/plugin",
            "text": "yes"
        },
        "$:/config/RegisterPluginType/theme": {
            "title": "$:/config/RegisterPluginType/theme",
            "text": "no"
        },
        "$:/config/RegisterPluginType/language": {
            "title": "$:/config/RegisterPluginType/language",
            "text": "no"
        },
        "$:/config/RegisterPluginType/info": {
            "title": "$:/config/RegisterPluginType/info",
            "text": "yes"
        },
        "$:/config/RegisterPluginType/import": {
            "title": "$:/config/RegisterPluginType/import",
            "text": "no"
        },
        "$:/config/SaveWikiButton/Template": {
            "title": "$:/config/SaveWikiButton/Template",
            "text": "$:/core/save/all"
        },
        "$:/config/SaverFilter": {
            "title": "$:/config/SaverFilter",
            "text": "[all[]] -[prefix[$:/HistoryList]] -[prefix[$:/StoryList]] -[status[pending]plugin-type[import]] -[[$:/isEncrypted]] -[[$:/UploadName]] -[prefix[$:/state/]] -[prefix[$:/temp/]]\n"
        },
        "$:/config/Search/AutoFocus": {
            "title": "$:/config/Search/AutoFocus",
            "text": "true"
        },
        "$:/config/Search/MinLength": {
            "title": "$:/config/Search/MinLength",
            "text": "3"
        },
        "$:/config/SearchResults/Default": {
            "title": "$:/config/SearchResults/Default",
            "text": "$:/core/ui/DefaultSearchResultList"
        },
        "$:/config/Server/ExternalFilters/[all[tiddlers]!is[system]sort[title]]": {
            "title": "$:/config/Server/ExternalFilters/[all[tiddlers]!is[system]sort[title]]",
            "text": "yes"
        },
        "$:/config/ShortcutInfo/add-field": {
            "title": "$:/config/ShortcutInfo/add-field",
            "text": "{{$:/language/EditTemplate/Fields/Add/Button/Hint}}"
        },
        "$:/config/ShortcutInfo/advanced-search": {
            "title": "$:/config/ShortcutInfo/advanced-search",
            "text": "{{$:/language/Buttons/AdvancedSearch/Hint}}"
        },
        "$:/config/ShortcutInfo/advanced-search-sidebar": {
            "title": "$:/config/ShortcutInfo/advanced-search-sidebar",
            "text": "{{$:/language/Shortcuts/Input/AdvancedSearch/Hint}}"
        },
        "$:/config/ShortcutInfo/bold": {
            "title": "$:/config/ShortcutInfo/bold",
            "text": "{{$:/language/Buttons/Bold/Hint}}"
        },
        "$:/config/ShortcutInfo/cancel-edit-tiddler": {
            "title": "$:/config/ShortcutInfo/cancel-edit-tiddler",
            "text": "{{$:/language/Buttons/Cancel/Hint}}"
        },
        "$:/config/ShortcutInfo/change-sidebar-layout": {
            "title": "$:/config/ShortcutInfo/change-sidebar-layout",
            "text": "{{$:/language/Shortcuts/SidebarLayout/Hint}}"
        },
        "$:/config/ShortcutInfo/delete-field": {
            "title": "$:/config/ShortcutInfo/delete-field",
            "text": "{{$:/language/EditTemplate/Field/Remove/Hint}}"
        },
        "$:/config/ShortcutInfo/excise": {
            "title": "$:/config/ShortcutInfo/excise",
            "text": "{{$:/language/Buttons/Excise/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-1": {
            "title": "$:/config/ShortcutInfo/heading-1",
            "text": "{{$:/language/Buttons/Heading1/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-2": {
            "title": "$:/config/ShortcutInfo/heading-2",
            "text": "{{$:/language/Buttons/Heading2/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-3": {
            "title": "$:/config/ShortcutInfo/heading-3",
            "text": "{{$:/language/Buttons/Heading3/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-4": {
            "title": "$:/config/ShortcutInfo/heading-4",
            "text": "{{$:/language/Buttons/Heading4/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-5": {
            "title": "$:/config/ShortcutInfo/heading-5",
            "text": "{{$:/language/Buttons/Heading5/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-6": {
            "title": "$:/config/ShortcutInfo/heading-6",
            "text": "{{$:/language/Buttons/Heading6/Hint}}"
        },
        "$:/config/ShortcutInfo/input-accept": {
            "title": "$:/config/ShortcutInfo/input-accept",
            "text": "{{$:/language/Shortcuts/Input/Accept/Hint}}"
        },
        "$:/config/ShortcutInfo/input-accept-variant": {
            "title": "$:/config/ShortcutInfo/input-accept-variant",
            "text": "{{$:/language/Shortcuts/Input/AcceptVariant/Hint}}"
        },
        "$:/config/ShortcutInfo/input-cancel": {
            "title": "$:/config/ShortcutInfo/input-cancel",
            "text": "{{$:/language/Shortcuts/Input/Cancel/Hint}}"
        },
        "$:/config/ShortcutInfo/input-down": {
            "title": "$:/config/ShortcutInfo/input-down",
            "text": "{{$:/language/Shortcuts/Input/Down/Hint}}"
        },
        "$:/config/ShortcutInfo/input-tab-left": {
            "title": "$:/config/ShortcutInfo/input-tab-left",
            "text": "{{$:/language/Shortcuts/Input/Tab-Left/Hint}}"
        },
        "$:/config/ShortcutInfo/input-tab-right": {
            "title": "$:/config/ShortcutInfo/input-tab-right",
            "text": "{{$:/language/Shortcuts/Input/Tab-Right/Hint}}"
        },
        "$:/config/ShortcutInfo/input-up": {
            "title": "$:/config/ShortcutInfo/input-up",
            "text": "{{$:/language/Shortcuts/Input/Up/Hint}}"
        },
        "$:/config/ShortcutInfo/italic": {
            "title": "$:/config/ShortcutInfo/italic",
            "text": "{{$:/language/Buttons/Italic/Hint}}"
        },
        "$:/config/ShortcutInfo/layout-switcher": {
            "title": "$:/config/ShortcutInfo/layout-switcher",
            "text": "{{$:/language/LayoutSwitcher/Description}}"
        },
        "$:/config/ShortcutInfo/link": {
            "title": "$:/config/ShortcutInfo/link",
            "text": "{{$:/language/Buttons/Link/Hint}}"
        },
        "$:/config/ShortcutInfo/linkify": {
            "title": "$:/config/ShortcutInfo/linkify",
            "text": "{{$:/language/Buttons/Linkify/Hint}}"
        },
        "$:/config/ShortcutInfo/list-bullet": {
            "title": "$:/config/ShortcutInfo/list-bullet",
            "text": "{{$:/language/Buttons/ListBullet/Hint}}"
        },
        "$:/config/ShortcutInfo/list-number": {
            "title": "$:/config/ShortcutInfo/list-number",
            "text": "{{$:/language/Buttons/ListNumber/Hint}}"
        },
        "$:/config/ShortcutInfo/mono-block": {
            "title": "$:/config/ShortcutInfo/mono-block",
            "text": "{{$:/language/Buttons/MonoBlock/Hint}}"
        },
        "$:/config/ShortcutInfo/mono-line": {
            "title": "$:/config/ShortcutInfo/mono-line",
            "text": "{{$:/language/Buttons/MonoLine/Hint}}"
        },
        "$:/config/ShortcutInfo/new-image": {
            "title": "$:/config/ShortcutInfo/new-image",
            "text": "{{$:/language/Buttons/NewImage/Hint}}"
        },
        "$:/config/ShortcutInfo/new-journal": {
            "title": "$:/config/ShortcutInfo/new-journal",
            "text": "{{$:/language/Buttons/NewJournal/Hint}}"
        },
        "$:/config/ShortcutInfo/new-tiddler": {
            "title": "$:/config/ShortcutInfo/new-tiddler",
            "text": "{{$:/language/Buttons/NewTiddler/Hint}}"
        },
        "$:/config/ShortcutInfo/picture": {
            "title": "$:/config/ShortcutInfo/picture",
            "text": "{{$:/language/Buttons/Picture/Hint}}"
        },
        "$:/config/ShortcutInfo/preview": {
            "title": "$:/config/ShortcutInfo/preview",
            "text": "{{$:/language/Buttons/Preview/Hint}}"
        },
        "$:/config/ShortcutInfo/quote": {
            "title": "$:/config/ShortcutInfo/quote",
            "text": "{{$:/language/Buttons/Quote/Hint}}"
        },
        "$:/config/ShortcutInfo/save-tiddler": {
            "title": "$:/config/ShortcutInfo/save-tiddler",
            "text": "{{$:/language/Buttons/Save/Hint}}"
        },
        "$:/config/ShortcutInfo/save-wiki": {
            "title": "$:/config/ShortcutInfo/save-wiki",
            "text": "{{$:/language/Buttons/SaveWiki/Hint}}"
        },
        "$:/config/ShortcutInfo/sidebar-search": {
            "title": "$:/config/ShortcutInfo/sidebar-search",
            "text": "{{$:/language/Buttons/SidebarSearch/Hint}}"
        },
        "$:/config/ShortcutInfo/stamp": {
            "title": "$:/config/ShortcutInfo/stamp",
            "text": "{{$:/language/Buttons/Stamp/Hint}}"
        },
        "$:/config/ShortcutInfo/strikethrough": {
            "title": "$:/config/ShortcutInfo/strikethrough",
            "text": "{{$:/language/Buttons/Strikethrough/Hint}}"
        },
        "$:/config/ShortcutInfo/subscript": {
            "title": "$:/config/ShortcutInfo/subscript",
            "text": "{{$:/language/Buttons/Subscript/Hint}}"
        },
        "$:/config/ShortcutInfo/superscript": {
            "title": "$:/config/ShortcutInfo/superscript",
            "text": "{{$:/language/Buttons/Superscript/Hint}}"
        },
        "$:/config/ShortcutInfo/toggle-sidebar": {
            "title": "$:/config/ShortcutInfo/toggle-sidebar",
            "text": "{{$:/language/Buttons/ToggleSidebar/Hint}}"
        },
        "$:/config/ShortcutInfo/transcludify": {
            "title": "$:/config/ShortcutInfo/transcludify",
            "text": "{{$:/language/Buttons/Transcludify/Hint}}"
        },
        "$:/config/ShortcutInfo/underline": {
            "title": "$:/config/ShortcutInfo/underline",
            "text": "{{$:/language/Buttons/Underline/Hint}}"
        },
        "$:/config/SwitcherTargets/layout": {
            "title": "$:/config/SwitcherTargets/layout",
            "text": "$:/snippets/LayoutSwitcher"
        },
        "$:/config/SwitcherTargets/language": {
            "title": "$:/config/SwitcherTargets/language",
            "text": "$:/snippets/languageswitcher"
        },
        "$:/config/SwitcherTargets/palette": {
            "title": "$:/config/SwitcherTargets/palette",
            "text": "$:/core/ui/ControlPanel/Palette"
        },
        "$:/config/SwitcherTargets/theme": {
            "title": "$:/config/SwitcherTargets/theme",
            "text": "$:/core/ui/ControlPanel/Theme"
        },
        "$:/config/SyncFilter": {
            "title": "$:/config/SyncFilter",
            "text": "[is[tiddler]] -[[$:/core]] -[[$:/library/sjcl.js]] -[prefix[$:/boot/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/isEncrypted]] -[prefix[$:/status/]] -[prefix[$:/state/]] -[prefix[$:/temp/]]\n"
        },
        "$:/config/SyncSystemTiddlersFromServer": {
            "title": "$:/config/SyncSystemTiddlersFromServer",
            "text": "no"
        },
        "$:/config/Tags/MinLength": {
            "title": "$:/config/Tags/MinLength",
            "text": "0"
        },
        "$:/config/TextEditor/EditorHeight/Height": {
            "title": "$:/config/TextEditor/EditorHeight/Height",
            "text": "400px"
        },
        "$:/config/TextEditor/EditorHeight/Mode": {
            "title": "$:/config/TextEditor/EditorHeight/Mode",
            "text": "auto"
        },
        "$:/config/TiddlerInfo/Default": {
            "title": "$:/config/TiddlerInfo/Default",
            "text": "$:/core/ui/TiddlerInfo/Fields"
        },
        "$:/config/TiddlerInfo/Mode": {
            "title": "$:/config/TiddlerInfo/Mode",
            "text": "popup"
        },
        "$:/config/Tiddlers/TitleLinks": {
            "title": "$:/config/Tiddlers/TitleLinks",
            "text": "no"
        },
        "$:/config/Toolbar/ButtonClass": {
            "title": "$:/config/Toolbar/ButtonClass",
            "text": "tc-btn-invisible"
        },
        "$:/config/Toolbar/Icons": {
            "title": "$:/config/Toolbar/Icons",
            "text": "yes"
        },
        "$:/config/Toolbar/Text": {
            "title": "$:/config/Toolbar/Text",
            "text": "no"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/info": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/info",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions",
            "text": "show"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/open-window": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/open-window",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permalink": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permalink",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permaview": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permaview",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-others": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-others",
            "text": "hide"
        },
        "$:/config/shortcuts-mac/bold": {
            "title": "$:/config/shortcuts-mac/bold",
            "text": "meta-B"
        },
        "$:/config/shortcuts-mac/input-tab-left": {
            "title": "$:/config/shortcuts-mac/input-tab-left",
            "text": "ctrl-Left"
        },
        "$:/config/shortcuts-mac/input-tab-right": {
            "title": "$:/config/shortcuts-mac/input-tab-right",
            "text": "ctrl-Right"
        },
        "$:/config/shortcuts-mac/italic": {
            "title": "$:/config/shortcuts-mac/italic",
            "text": "meta-I"
        },
        "$:/config/shortcuts-mac/underline": {
            "title": "$:/config/shortcuts-mac/underline",
            "text": "meta-U"
        },
        "$:/config/shortcuts-mac/new-image": {
            "title": "$:/config/shortcuts-mac/new-image",
            "text": "ctrl-I"
        },
        "$:/config/shortcuts-mac/new-journal": {
            "title": "$:/config/shortcuts-mac/new-journal",
            "text": "ctrl-J"
        },
        "$:/config/shortcuts-mac/new-tiddler": {
            "title": "$:/config/shortcuts-mac/new-tiddler",
            "text": "ctrl-N"
        },
        "$:/config/shortcuts-mac/save-wiki": {
            "title": "$:/config/shortcuts-mac/save-wiki",
            "text": "meta-S"
        },
        "$:/config/shortcuts-not-mac/bold": {
            "title": "$:/config/shortcuts-not-mac/bold",
            "text": "ctrl-B"
        },
        "$:/config/shortcuts-not-mac/italic": {
            "title": "$:/config/shortcuts-not-mac/italic",
            "text": "ctrl-I"
        },
        "$:/config/shortcuts-not-mac/underline": {
            "title": "$:/config/shortcuts-not-mac/underline",
            "text": "ctrl-U"
        },
        "$:/config/shortcuts-not-mac/new-image": {
            "title": "$:/config/shortcuts-not-mac/new-image",
            "text": "alt-I"
        },
        "$:/config/shortcuts-not-mac/new-journal": {
            "title": "$:/config/shortcuts-not-mac/new-journal",
            "text": "alt-J"
        },
        "$:/config/shortcuts-not-mac/new-tiddler": {
            "title": "$:/config/shortcuts-not-mac/new-tiddler",
            "text": "alt-N"
        },
        "$:/config/shortcuts/add-field": {
            "title": "$:/config/shortcuts/add-field",
            "text": "enter"
        },
        "$:/config/shortcuts/advanced-search": {
            "title": "$:/config/shortcuts/advanced-search",
            "text": "ctrl-shift-A"
        },
        "$:/config/shortcuts/advanced-search-sidebar": {
            "title": "$:/config/shortcuts/advanced-search-sidebar",
            "text": "alt-Enter"
        },
        "$:/config/shortcuts/cancel-edit-tiddler": {
            "title": "$:/config/shortcuts/cancel-edit-tiddler",
            "text": "escape"
        },
        "$:/config/shortcuts/change-sidebar-layout": {
            "title": "$:/config/shortcuts/change-sidebar-layout",
            "text": "shift-alt-Down"
        },
        "$:/config/shortcuts/delete-field": {
            "title": "$:/config/shortcuts/delete-field",
            "text": "shift-alt-D"
        },
        "$:/config/shortcuts/excise": {
            "title": "$:/config/shortcuts/excise",
            "text": "ctrl-E"
        },
        "$:/config/shortcuts/sidebar-search": {
            "title": "$:/config/shortcuts/sidebar-search",
            "text": "ctrl-shift-F"
        },
        "$:/config/shortcuts/heading-1": {
            "title": "$:/config/shortcuts/heading-1",
            "text": "ctrl-1"
        },
        "$:/config/shortcuts/heading-2": {
            "title": "$:/config/shortcuts/heading-2",
            "text": "ctrl-2"
        },
        "$:/config/shortcuts/heading-3": {
            "title": "$:/config/shortcuts/heading-3",
            "text": "ctrl-3"
        },
        "$:/config/shortcuts/heading-4": {
            "title": "$:/config/shortcuts/heading-4",
            "text": "ctrl-4"
        },
        "$:/config/shortcuts/heading-5": {
            "title": "$:/config/shortcuts/heading-5",
            "text": "ctrl-5"
        },
        "$:/config/shortcuts/heading-6": {
            "title": "$:/config/shortcuts/heading-6",
            "text": "ctrl-6"
        },
        "$:/config/shortcuts/input-accept": {
            "title": "$:/config/shortcuts/input-accept",
            "text": "Enter"
        },
        "$:/config/shortcuts/input-accept-variant": {
            "title": "$:/config/shortcuts/input-accept-variant",
            "text": "ctrl-Enter"
        },
        "$:/config/shortcuts/input-cancel": {
            "title": "$:/config/shortcuts/input-cancel",
            "text": "Escape"
        },
        "$:/config/shortcuts/input-down": {
            "title": "$:/config/shortcuts/input-down",
            "text": "Down"
        },
        "$:/config/shortcuts/input-tab-left": {
            "title": "$:/config/shortcuts/input-tab-left",
            "text": "alt-Left"
        },
        "$:/config/shortcuts/input-tab-right": {
            "title": "$:/config/shortcuts/input-tab-right",
            "text": "alt-Right"
        },
        "$:/config/shortcuts/input-up": {
            "title": "$:/config/shortcuts/input-up",
            "text": "Up"
        },
        "$:/config/shortcuts/layout-switcher": {
            "title": "$:/config/shortcuts/layout-switcher",
            "text": "ctrl-shift-L"
        },
        "$:/config/shortcuts/link": {
            "title": "$:/config/shortcuts/link",
            "text": "ctrl-L"
        },
        "$:/config/shortcuts/linkify": {
            "title": "$:/config/shortcuts/linkify",
            "text": "alt-shift-L"
        },
        "$:/config/shortcuts/list-bullet": {
            "title": "$:/config/shortcuts/list-bullet",
            "text": "ctrl-shift-L"
        },
        "$:/config/shortcuts/list-number": {
            "title": "$:/config/shortcuts/list-number",
            "text": "ctrl-shift-N"
        },
        "$:/config/shortcuts/mono-block": {
            "title": "$:/config/shortcuts/mono-block",
            "text": "ctrl-shift-M"
        },
        "$:/config/shortcuts/mono-line": {
            "title": "$:/config/shortcuts/mono-line",
            "text": "ctrl-M"
        },
        "$:/config/shortcuts/picture": {
            "title": "$:/config/shortcuts/picture",
            "text": "ctrl-shift-I"
        },
        "$:/config/shortcuts/preview": {
            "title": "$:/config/shortcuts/preview",
            "text": "alt-P"
        },
        "$:/config/shortcuts/quote": {
            "title": "$:/config/shortcuts/quote",
            "text": "ctrl-Q"
        },
        "$:/config/shortcuts/save-tiddler": {
            "title": "$:/config/shortcuts/save-tiddler",
            "text": "ctrl+enter"
        },
        "$:/config/shortcuts/save-wiki": {
            "title": "$:/config/shortcuts/save-wiki",
            "text": "ctrl-S"
        },
        "$:/config/shortcuts/stamp": {
            "title": "$:/config/shortcuts/stamp",
            "text": "ctrl-S"
        },
        "$:/config/shortcuts/strikethrough": {
            "title": "$:/config/shortcuts/strikethrough",
            "text": "ctrl-T"
        },
        "$:/config/shortcuts/subscript": {
            "title": "$:/config/shortcuts/subscript",
            "text": "ctrl-shift-B"
        },
        "$:/config/shortcuts/superscript": {
            "title": "$:/config/shortcuts/superscript",
            "text": "ctrl-shift-P"
        },
        "$:/config/shortcuts/toggle-sidebar": {
            "title": "$:/config/shortcuts/toggle-sidebar",
            "text": "alt-shift-S"
        },
        "$:/config/shortcuts/transcludify": {
            "title": "$:/config/shortcuts/transcludify",
            "text": "alt-shift-T"
        },
        "$:/config/ui/EditTemplate": {
            "title": "$:/config/ui/EditTemplate",
            "text": "$:/core/ui/EditTemplate"
        },
        "$:/config/ui/ViewTemplate": {
            "title": "$:/config/ui/ViewTemplate",
            "text": "$:/core/ui/ViewTemplate"
        },
        "$:/config/WikiParserRules/Inline/wikilink": {
            "title": "$:/config/WikiParserRules/Inline/wikilink",
            "text": "enable"
        },
        "$:/snippets/currpalettepreview": {
            "title": "$:/snippets/currpalettepreview",
            "text": "\\define resolve-colour(macrocall)\n\\import $:/core/macros/utils\n\\whitespace trim\n<$wikify name=\"name\" text=\"\"\"$macrocall$\"\"\">\n<<name>>\n</$wikify>\n\\end\n\\define swatchStyle()\nbackground-color: $(swatchColour)$;\n\\end\n\\define swatch-inner()\n<$set name=\"swatchColour\" value={{##$(colourResolved)$}}>\n<$list filter=\"[<swatchColour>!prefix[<<colour ]!suffix[>>]]\" variable=\"ignore\">\n<div class=\"tc-swatch\" style=<<swatchStyle>> title=<<swatchTitle>>/>\n</$list>\n<$list filter=\"[<swatchColour>prefix[<<colour ]suffix[>>]]\" variable=\"ignore\">\n<$wikify name=\"colourResolved\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall=<<swatchColour>>/>\"\"\">\n<<swatch-inner>>\n</$wikify>\n</$list>\n</$set>\n\\end\n\\define swatch()\n<$set name=\"swatchColour\" value={{##$(colour)$}}>\n<$set name=\"swatchTitle\" value=<<colour>>>\n<$list filter=\"[<swatchColour>!prefix[<<colour ]!suffix[>>]]\" variable=\"ignore\">\n<div class=\"tc-swatch\" style=<<swatchStyle>> title=<<swatchTitle>>/>\n</$list>\n<$list filter=\"[<swatchColour>prefix[<<colour ]suffix[>>]]\" variable=\"ignore\">\n<$wikify name=\"colourResolved\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall=<<swatchColour>>/>\"\"\">\n<<swatch-inner>>\n</$wikify>\n</$list>\n</$set>\n</$set>\n\\end\n<div class=\"tc-swatches-horiz\"><$list filter=\"\nforeground\nbackground\nmuted-foreground\nprimary\npage-background\ntab-background\ntiddler-info-background\n\" variable=\"colour\"><<swatch>></$list></div>\n"
        },
        "$:/snippets/download-wiki-button": {
            "title": "$:/snippets/download-wiki-button",
            "text": "\\define lingo-base() $:/language/ControlPanel/Tools/Download/\n<$button class=\"tc-btn-big-green\">\n<$action-sendmessage $message=\"tm-download-file\" $param=\"$:/core/save/all\" filename=\"index.html\"/>\n<<lingo Full/Caption>> {{$:/core/images/save-button}}\n</$button>"
        },
        "$:/language": {
            "title": "$:/language",
            "text": "$:/languages/en-GB"
        },
        "$:/snippets/languageswitcher": {
            "title": "$:/snippets/languageswitcher",
            "text": "\\define flag-title()\n$(languagePluginTitle)$/icon\n\\end\n\n<$linkcatcher to=\"$:/language\">\n<div class=\"tc-chooser tc-language-chooser\">\n<$list filter=\"[[$:/languages/en-GB]] [plugin-type[language]sort[description]]\">\n<$set name=\"cls\" filter=\"[all[current]field:title{$:/language}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>>\n<$link>\n<span class=\"tc-image-button\">\n<$set name=\"languagePluginTitle\" value=<<currentTiddler>>>\n<$transclude subtiddler=<<flag-title>>>\n<$list filter=\"[all[current]field:title[$:/languages/en-GB]]\">\n<$transclude tiddler=\"$:/languages/en-GB/icon\"/>\n</$list>\n</$transclude>\n</$set>\n</span>\n<$view field=\"description\">\n<$view field=\"name\">\n<$view field=\"title\"/>\n</$view>\n</$view>\n</$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
        },
        "$:/core/macros/CSS": {
            "title": "$:/core/macros/CSS",
            "tags": "$:/tags/Macro",
            "text": "\\define colour(name)\n<$transclude tiddler={{$:/palette}} index=\"$name$\"><$transclude tiddler=\"$:/palettes/Vanilla\" index=\"$name$\"><$transclude tiddler=\"$:/config/DefaultColourMappings/$name$\"/></$transclude></$transclude>\n\\end\n\n\\define color(name)\n<<colour $name$>>\n\\end\n\n\\define box-shadow(shadow)\n``\n  -webkit-box-shadow: $shadow$;\n     -moz-box-shadow: $shadow$;\n          box-shadow: $shadow$;\n``\n\\end\n\n\\define filter(filter)\n``\n  -webkit-filter: $filter$;\n     -moz-filter: $filter$;\n          filter: $filter$;\n``\n\\end\n\n\\define transition(transition)\n``\n  -webkit-transition: $transition$;\n     -moz-transition: $transition$;\n          transition: $transition$;\n``\n\\end\n\n\\define transform-origin(origin)\n``\n  -webkit-transform-origin: $origin$;\n     -moz-transform-origin: $origin$;\n          transform-origin: $origin$;\n``\n\\end\n\n\\define background-linear-gradient(gradient)\n``\nbackground-image: linear-gradient($gradient$);\nbackground-image: -o-linear-gradient($gradient$);\nbackground-image: -moz-linear-gradient($gradient$);\nbackground-image: -webkit-linear-gradient($gradient$);\nbackground-image: -ms-linear-gradient($gradient$);\n``\n\\end\n\n\\define column-count(columns)\n``\n-moz-column-count: $columns$;\n-webkit-column-count: $columns$;\ncolumn-count: $columns$;\n``\n\\end\n\n\\define datauri(title)\n<$macrocall $name=\"makedatauri\" type={{$title$!!type}} text={{$title$}} _canonical_uri={{$title$!!_canonical_uri}}/>\n\\end\n\n\\define if-sidebar(text)\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"yes\" default=\"yes\">$text$</$reveal>\n\\end\n\n\\define if-no-sidebar(text)\n<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"yes\" default=\"yes\">$text$</$reveal>\n\\end\n\n\\define if-background-attachment(text)\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\" type=\"nomatch\" text=\"\">$text$</$reveal>\n\\end\n"
        },
        "$:/core/macros/colour-picker": {
            "title": "$:/core/macros/colour-picker",
            "tags": "$:/tags/Macro",
            "text": "\\define colour-picker-update-recent()\n<$action-listops\n\t$tiddler=\"$:/config/ColourPicker/Recent\"\n\t$subfilter=\"$(colour-picker-value)$ [list[$:/config/ColourPicker/Recent]remove[$(colour-picker-value)$]] +[limit[8]]\"\n/>\n\\end\n\n\\define colour-picker-inner(actions)\n<$button tag=\"a\" tooltip=\"\"\"$(colour-picker-value)$\"\"\">\n\n$(colour-picker-update-recent)$\n\n$actions$\n\n<span style=\"display:inline-block; background-color: $(colour-picker-value)$; width: 100%; height: 100%; border-radius: 50%;\"/>\n\n</$button>\n\\end\n\n\\define colour-picker-recent-inner(actions)\n<$set name=\"colour-picker-value\" value=\"$(recentColour)$\">\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$set>\n\\end\n\n\\define colour-picker-recent(actions)\n{{$:/language/ColourPicker/Recent}} <$list filter=\"[list[$:/config/ColourPicker/Recent]]\" variable=\"recentColour\">\n<$macrocall $name=\"colour-picker-recent-inner\" actions=\"\"\"$actions$\"\"\"/></$list>\n\\end\n\n\\define colour-picker(actions)\n<div class=\"tc-colour-chooser\">\n\n<$macrocall $name=\"colour-picker-recent\" actions=\"\"\"$actions$\"\"\"/>\n\n---\n\n<$list filter=\"LightPink Pink Crimson LavenderBlush PaleVioletRed HotPink DeepPink MediumVioletRed Orchid Thistle Plum Violet Magenta Fuchsia DarkMagenta Purple MediumOrchid DarkViolet DarkOrchid Indigo BlueViolet MediumPurple MediumSlateBlue SlateBlue DarkSlateBlue Lavender GhostWhite Blue MediumBlue MidnightBlue DarkBlue Navy RoyalBlue CornflowerBlue LightSteelBlue LightSlateGrey SlateGrey DodgerBlue AliceBlue SteelBlue LightSkyBlue SkyBlue DeepSkyBlue LightBlue PowderBlue CadetBlue Azure LightCyan PaleTurquoise Cyan Aqua DarkTurquoise DarkSlateGrey DarkCyan Teal MediumTurquoise LightSeaGreen Turquoise Aquamarine MediumAquamarine MediumSpringGreen MintCream SpringGreen MediumSeaGreen SeaGreen Honeydew LightGreen PaleGreen DarkSeaGreen LimeGreen Lime ForestGreen Green DarkGreen Chartreuse LawnGreen GreenYellow DarkOliveGreen YellowGreen OliveDrab Beige LightGoldenrodYellow Ivory LightYellow Yellow Olive DarkKhaki LemonChiffon PaleGoldenrod Khaki Gold Cornsilk Goldenrod DarkGoldenrod FloralWhite OldLace Wheat Moccasin Orange PapayaWhip BlanchedAlmond NavajoWhite AntiqueWhite Tan BurlyWood Bisque DarkOrange Linen Peru PeachPuff SandyBrown Chocolate SaddleBrown Seashell Sienna LightSalmon Coral OrangeRed DarkSalmon Tomato MistyRose Salmon Snow LightCoral RosyBrown IndianRed Red Brown FireBrick DarkRed Maroon White WhiteSmoke Gainsboro LightGrey Silver DarkGrey Grey DimGrey Black\" variable=\"colour-picker-value\">\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$list>\n\n---\n\n<$edit-text tiddler=\"$:/config/ColourPicker/New\" tag=\"input\" default=\"\" placeholder=\"\"/>\n<$edit-text tiddler=\"$:/config/ColourPicker/New\" type=\"color\" tag=\"input\"/>\n<$set name=\"colour-picker-value\" value={{$:/config/ColourPicker/New}}>\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$set>\n\n</div>\n\n\\end\n"
        },
        "$:/core/macros/copy-to-clipboard": {
            "title": "$:/core/macros/copy-to-clipboard",
            "tags": "$:/tags/Macro",
            "text": "\\define copy-to-clipboard(src,class:\"tc-btn-invisible\",style)\n<$button class=<<__class__>> style=<<__style__>> message=\"tm-copy-to-clipboard\" param=<<__src__>> tooltip={{$:/language/Buttons/CopyToClipboard/Hint}}>\n{{$:/core/images/copy-clipboard}} <$text text={{$:/language/Buttons/CopyToClipboard/Caption}}/>\n</$button>\n\\end\n\n\\define copy-to-clipboard-above-right(src,class:\"tc-btn-invisible\",style)\n<div style=\"position: relative;\">\n<div style=\"position: absolute; bottom: 0; right: 0;\">\n<$macrocall $name=\"copy-to-clipboard\" src=<<__src__>> class=<<__class__>> style=<<__style__>>/>\n</div>\n</div>\n\\end\n\n"
        },
        "$:/core/macros/diff": {
            "title": "$:/core/macros/diff",
            "tags": "$:/tags/Macro",
            "text": "\\define compareTiddlerText(sourceTiddlerTitle,sourceSubTiddlerTitle,destTiddlerTitle,destSubTiddlerTitle)\n<$set name=\"source\" tiddler=<<__sourceTiddlerTitle__>> subtiddler=<<__sourceSubTiddlerTitle__>>>\n<$set name=\"dest\" tiddler=<<__destTiddlerTitle__>> subtiddler=<<__destSubTiddlerTitle__>>>\n<$diff-text source=<<source>> dest=<<dest>>/>\n</$set>\n</$set>\n\\end\n\n\\define compareTiddlers(sourceTiddlerTitle,sourceSubTiddlerTitle,destTiddlerTitle,destSubTiddlerTitle,exclude)\n<table class=\"tc-diff-tiddlers\">\n<tbody>\n<$set name=\"sourceFields\" filter=\"[<__sourceTiddlerTitle__>fields[]sort[]]\">\n<$set name=\"destFields\" filter=\"[<__destSubTiddlerTitle__>subtiddlerfields<__destTiddlerTitle__>sort[]]\">\n<$list filter=\"[enlist<sourceFields>] [enlist<destFields>] -[enlist<__exclude__>] +[sort[]]\" variable=\"fieldName\">\n<tr>\n<th>\n<$text text=<<fieldName>>/> \n</th>\n<td>\n<$set name=\"source\" tiddler=<<__sourceTiddlerTitle__>> subtiddler=<<__sourceSubTiddlerTitle__>> field=<<fieldName>>>\n<$set name=\"dest\" tiddler=<<__destTiddlerTitle__>> subtiddler=<<__destSubTiddlerTitle__>> field=<<fieldName>>>\n<$diff-text source=<<source>> dest=<<dest>>>\n</$diff-text>\n</$set>\n</$set>\n</td>\n</tr>\n</$list>\n</$set>\n</$set>\n</tbody>\n</table>\n\\end\n"
        },
        "$:/core/macros/dumpvariables": {
            "title": "$:/core/macros/dumpvariables",
            "tags": "$:/tags/Macro",
            "text": "\\define dumpvariables()\n<ul>\n<$list filter=\"[variables[]]\" variable=\"varname\">\n<li>\n<strong><code><$text text=<<varname>>/></code></strong>:<br/>\n<$codeblock code={{{ [<varname>getvariable[]] }}}/>\n</li>\n</$list>\n</ul>\n\\end\n"
        },
        "$:/core/macros/export": {
            "title": "$:/core/macros/export",
            "tags": "$:/tags/Macro",
            "text": "\\define exportButtonFilename(baseFilename)\n$baseFilename$$(extension)$\n\\end\n\n\\define exportButton(exportFilter:\"[!is[system]sort[title]]\",lingoBase,baseFilename:\"tiddlers\")\n<span class=\"tc-popup-keep\"><$button popup=<<qualify \"$:/state/popup/export\">> tooltip={{$lingoBase$Hint}} aria-label={{$lingoBase$Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/export-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$lingoBase$Caption}}/></span>\n</$list>\n</$button></span><$reveal state=<<qualify \"$:/state/popup/export\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$set name=\"count\" value={{{ [subfilter<__exportFilter__>count[]] }}}>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Exporter]]\">\n<$list filter=\"[<currentTiddler>has[condition]subfilter{!!condition}limit[1]] ~[<currentTiddler>!has[condition]then[true]]\" variable=\"ignore\">\n<$set name=\"extension\" value={{!!extension}}>\n<$button class=\"tc-btn-invisible\">\n<$action-sendmessage $message=\"tm-download-file\" $param=<<currentTiddler>> exportFilter=<<__exportFilter__>> filename=<<exportButtonFilename \"\"\"$baseFilename$\"\"\">>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/export\">>/>\n<$transclude field=\"description\"/>\n</$button>\n</$set>\n</$list>\n</$list>\n</$set>\n</div>\n</$reveal>\n\\end\n"
        },
        "$:/core/macros/image-picker": {
            "title": "$:/core/macros/image-picker",
            "created": "20170715180840889",
            "modified": "20170715180914005",
            "tags": "$:/tags/Macro",
            "type": "text/vnd.tiddlywiki",
            "text": "\\define image-picker-thumbnail(actions)\n<$button tag=\"a\" tooltip=\"\"\"$(imageTitle)$\"\"\">\n$actions$\n<$transclude tiddler=<<imageTitle>>/>\n</$button>\n\\end\n\n\\define image-picker-list(filter,actions)\n<$list filter=\"\"\"$filter$\"\"\" variable=\"imageTitle\">\n<$macrocall $name=\"image-picker-thumbnail\" actions=\"\"\"$actions$\"\"\"/>\n</$list>\n\\end\n\n\\define image-picker(actions,filter:\"[all[shadows+tiddlers]is[image]] -[type[application/pdf]] +[!has[draft.of]$subfilter$sort[title]]\",subfilter:\"\")\n<div class=\"tc-image-chooser\">\n<$vars state-system=<<qualify \"$:/state/image-picker/system\">>>\n<$checkbox tiddler=<<state-system>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"hide\">\n{{$:/language/SystemTiddlers/Include/Prompt}}\n</$checkbox>\n<$reveal state=<<state-system>> type=\"match\" text=\"hide\" default=\"hide\" tag=\"div\">\n<$macrocall $name=\"image-picker-list\" filter=\"\"\"$filter$ +[!is[system]]\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</$reveal>\n<$reveal state=<<state-system>> type=\"nomatch\" text=\"hide\" default=\"hide\" tag=\"div\">\n<$macrocall $name=\"image-picker-list\" filter=\"\"\"$filter$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</$reveal>\n</$vars>\n</div>\n\\end\n\n\\define image-picker-include-tagged-images(actions)\n<$macrocall $name=\"image-picker\" filter=\"[all[shadows+tiddlers]is[image]] [all[shadows+tiddlers]tag[$:/tags/Image]] -[type[application/pdf]] +[!has[draft.of]sort[title]]\" actions=\"\"\"$actions$\"\"\"/>\n\\end\n"
        },
        "$:/core/macros/keyboard-driven-input": {
            "title": "$:/core/macros/keyboard-driven-input",
            "tags": "$:/tags/Macro",
            "text": "\\define change-input-tab(stateTitle,tag,beforeafter,defaultState,actions)\n<$set name=\"tabsList\" filter=\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]]\">\n<$vars currentState={{{ [<__stateTitle__>!is[missing]get[text]] ~[<__defaultState__>] }}} firstTab={{{ [enlist<tabsList>nth[1]] }}} lastTab={{{ [enlist<tabsList>last[]] }}}>\n<$set name=\"nextTab\" value={{{ [all[shadows+tiddlers]tag<__tag__>!has[draft.of]$beforeafter$<currentState>] ~[[$beforeafter$]removeprefix[after]suffix[]addprefix<firstTab>] ~[[$beforeafter$]removeprefix[before]suffix[]addprefix<lastTab>] }}}>\n<$action-setfield $tiddler=<<__stateTitle__>> text=<<nextTab>>/>\n$actions$\n</$set>\n</$vars>\n</$set>\n\\end\n\n\\define keyboard-input-actions()\n<$list filter=\"[<__index__>match[]]\">\n<$action-setfield $tiddler=<<__storeTitle__>> text={{{ [<__tiddler__>get<__field__>] }}}/>\n</$list>\n<$list filter=\"[<__index__>!match[]]\">\n<$action-setfield $tiddler=<<__storeTitle__>> text={{{ [<__tiddler__>getindex<__index__>] }}}/>\n</$list>\n\\end\n\n\\define input-next-actions-inner()\n<$list filter=\"[<nextItem>minlength[1]]\" variable=\"ignore\">\n<$action-setfield $tiddler=<<__selectionStateTitle__>> text=<<nextItem>>/>\n<$list filter=\"[<__index__>match[]]\">\n<$action-setfield $tiddler=<<__tiddler__>> $field=<<__field__>> $value={{{ [<nextItem>] +[splitregexp[(?:.(?!-))+$]] }}}/>\n</$list>\n<$list filter=\"[<__index__>!match[]]\">\n<$action-setfield $tiddler=<<__tiddler__>> $index=<<__index__>> $value={{{ [<nextItem>] +[splitregexp[(?:.(?!-))+$]] }}}/>\n</$list>\n<$action-setfield $tiddler=<<__refreshTitle__>> text=\"yes\"/>\n</$list>\n\\end\n\n\\define input-next-actions(afterOrBefore:\"after\",reverse:\"\")\n<$list filter=\"[<__storeTitle__>get[text]minlength<__filterMinLength__>] [<__filterMinLength__>match[0]] +[limit[1]]\" variable=\"ignore\">\n<$vars userInput={{{ [<__storeTitle__>get[text]] }}} selectedItem={{{ [<__selectionStateTitle__>get[text]] }}}>\n<$set name=\"configTiddler\" value={{{ [subfilter<__configTiddlerFilter__>] }}}>\n<$vars primaryListFilter={{{ [<configTiddler>get<__firstSearchFilterField__>] }}} secondaryListFilter={{{ [<configTiddler>get<__secondSearchFilterField__>] }}}>\n<$set name=\"filteredList\" filter=\"[subfilter<primaryListFilter>addsuffix[-primaryList]] =[subfilter<secondaryListFilter>addsuffix[-secondaryList]]\">\n<$vars nextItem={{{ [enlist<filteredList>$afterOrBefore$<selectedItem>] ~[enlist<filteredList>$reverse$nth[1]] }}} firstItem={{{ [enlist<filteredList>nth[1]] }}} lastItem={{{ [enlist<filteredList>last[]] }}}>\n<$list filter=\"[<selectedItem>match<firstItem>!match<lastItem>]\" variable=\"ignore\">\n<$set name=\"nextItem\" value={{{ [[$afterOrBefore$]match[before]then<userInput>addsuffix[-userInput]] ~[<nextItem>] }}}>\n<<input-next-actions-inner>>\n</$set>\n</$list>\n<$list filter=\"[<selectedItem>match<lastItem>!match<firstItem>]\" variable=\"ignore\">\n<$set name=\"nextItem\" value={{{ [[$afterOrBefore$]match[after]then<userInput>addsuffix[-userInput]] ~[<nextItem>] }}}>\n<<input-next-actions-inner>>\n</$set>\n</$list>\n<$list filter=\"[<selectedItem>match<firstItem>match<lastItem>]\" variable=\"ignore\">\n<$set name=\"nextItem\" value={{{ [<userInput>addsuffix[-userInput]] }}}>\n<<input-next-actions-inner>>\n</$set>\n</$list>\n<$list filter=\"[<selectedItem>!match<firstItem>!match<lastItem>]\" variable=\"ignore\">\n<<input-next-actions-inner>>\n</$list>\n</$vars>\n</$set>\n</$vars>\n</$set>\n</$vars>\n</$list>\n\\end\n\n\\define keyboard-driven-input(tiddler,storeTitle,field:\"text\",index:\"\",tag:\"input\",type,focus:\"\",inputAcceptActions,inputAcceptVariantActions,inputCancelActions,placeholder:\"\",default:\"\",class,focusPopup,rows,minHeight,tabindex,size,autoHeight,filterMinLength:\"0\",refreshTitle,selectionStateTitle,cancelPopups:\"\",configTiddlerFilter,firstSearchFilterField:\"first-search-filter\",secondSearchFilterField:\"second-search-filter\")\n\\whitespace trim\n<$keyboard key=\"((input-accept))\" actions=<<__inputAcceptActions__>>>\n<$keyboard key=\"((input-accept-variant))\" actions=<<__inputAcceptVariantActions__>>>\n<$keyboard key=\"((input-up))\" actions=<<input-next-actions \"before\" \"reverse[]\">>>\n<$keyboard key=\"((input-down))\" actions=<<input-next-actions>>>\n<$keyboard key=\"((input-cancel))\" actions=<<__inputCancelActions__>>>\n<$edit-text tiddler=<<__tiddler__>> field=<<__field__>> index=<<__index__>> \n\t\tinputActions=<<keyboard-input-actions>> tag=<<__tag__>> class=<<__class__>> \n\t\tplaceholder=<<__placeholder__>> default=<<__default__>> focusPopup=<<__focusPopup__>> \n\t\tfocus=<<__focus__>> type=<<__type__>> rows=<<__rows__>> minHeight=<<__minHeight__>> \n\t\ttabindex=<<__tabindex__>> size=<<__size__>> autoHeight=<<__autoHeight__>> \n\t\trefreshTitle=<<__refreshTitle__>> cancelPopups=<<__cancelPopups__>>/>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n\\end\n"
        },
        "$:/core/macros/lingo": {
            "title": "$:/core/macros/lingo",
            "tags": "$:/tags/Macro",
            "text": "\\define lingo-base()\n$:/language/\n\\end\n\n\\define lingo(title)\n{{$(lingo-base)$$title$}}\n\\end\n"
        },
        "$:/core/macros/list": {
            "title": "$:/core/macros/list",
            "tags": "$:/tags/Macro",
            "text": "\\define list-links(filter,type:\"ul\",subtype:\"li\",class:\"\",emptyMessage)\n\\whitespace trim\n<$type$ class=\"$class$\">\n<$list filter=\"$filter$\" emptyMessage=<<__emptyMessage__>>>\n<$subtype$>\n<$link to={{!!title}}>\n<$transclude field=\"caption\">\n<$view field=\"title\"/>\n</$transclude>\n</$link>\n</$subtype$>\n</$list>\n</$type$>\n\\end\n\n\\define list-links-draggable-drop-actions()\n<$action-listops $tiddler=<<targetTiddler>> $field=<<targetField>> $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n\\end\n\n\\define list-links-draggable(tiddler,field:\"list\",type:\"ul\",subtype:\"li\",class:\"\",itemTemplate)\n\\whitespace trim\n<span class=\"tc-links-draggable-list\">\n<$vars targetTiddler=\"\"\"$tiddler$\"\"\" targetField=\"\"\"$field$\"\"\">\n<$type$ class=\"$class$\">\n<$list filter=\"[list[$tiddler$!!$field$]]\">\n<$droppable actions=<<list-links-draggable-drop-actions>> tag=\"\"\"$subtype$\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<div class=\"tc-droppable-placeholder\"/>\n<div>\n<$transclude tiddler=\"\"\"$itemTemplate$\"\"\">\n<$link to={{!!title}}>\n<$transclude field=\"caption\">\n<$view field=\"title\"/>\n</$transclude>\n</$link>\n</$transclude>\n</div>\n</$droppable>\n</$list>\n<$tiddler tiddler=\"\">\n<$droppable actions=<<list-links-draggable-drop-actions>> tag=\"div\" enable=<<tv-enable-drag-and-drop>>>\n<div class=\"tc-droppable-placeholder\">\n{{$:/core/images/blank}}\n</div>\n<div style=\"height:0.5em;\"/>\n</$droppable>\n</$tiddler>\n</$type$>\n</$vars>\n</span>\n\\end\n\n\\define list-tagged-draggable-drop-actions(tag)\n<!-- Save the current ordering of the tiddlers with this tag -->\n<$set name=\"order\" filter=\"[<__tag__>tagging[]]\">\n<!-- Remove any list-after or list-before fields from the tiddlers with this tag -->\n<$list filter=\"[<__tag__>tagging[]]\">\n<$action-deletefield $field=\"list-before\"/>\n<$action-deletefield $field=\"list-after\"/>\n</$list>\n<!-- Save the new order to the Tag Tiddler -->\n<$action-listops $tiddler=<<__tag__>> $field=\"list\" $filter=\"+[enlist<order>] +[insertbefore:currentTiddler<actionTiddler>]\"/>\n<!-- Make sure the newly added item has the right tag -->\n<!-- Removing this line makes dragging tags within the dropdown work as intended -->\n<!--<$action-listops $tiddler=<<actionTiddler>> $tags=<<__tag__>>/>-->\n<!-- Using the following 5 lines as replacement makes dragging titles from outside into the dropdown apply the tag -->\n<$list filter=\"[<actionTiddler>!contains:tags<__tag__>]\">\n<$fieldmangler tiddler=<<actionTiddler>>>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<__tag__>>/>\n</$fieldmangler>\n</$list>\n</$set>\n\\end\n\n\\define list-tagged-draggable(tag,subFilter,emptyMessage,itemTemplate,elementTag:\"div\",storyview:\"\")\n\\whitespace trim\n<span class=\"tc-tagged-draggable-list\">\n<$set name=\"tag\" value=<<__tag__>>>\n<$list filter=\"[<__tag__>tagging[]$subFilter$]\" emptyMessage=<<__emptyMessage__>> storyview=<<__storyview__>>>\n<$elementTag$ class=\"tc-menu-list-item\">\n<$droppable actions=\"\"\"<$macrocall $name=\"list-tagged-draggable-drop-actions\" tag=<<__tag__>>/>\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<$elementTag$ class=\"tc-droppable-placeholder\"/>\n<$elementTag$>\n<$transclude tiddler=\"\"\"$itemTemplate$\"\"\">\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</$transclude>\n</$elementTag$>\n</$droppable>\n</$elementTag$>\n</$list>\n<$tiddler tiddler=\"\">\n<$droppable actions=\"\"\"<$macrocall $name=\"list-tagged-draggable-drop-actions\" tag=<<__tag__>>/>\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<$elementTag$ class=\"tc-droppable-placeholder\"/>\n<$elementTag$ style=\"height:0.5em;\">\n</$elementTag$>\n</$droppable>\n</$tiddler>\n</$set>\n</span>\n\\end\n"
        },
        "$:/core/macros/tabs": {
            "title": "$:/core/macros/tabs",
            "tags": "$:/tags/Macro",
            "text": "\\define tabs(tabsList,default,state:\"$:/state/tab\",class,template,buttonTemplate,retain,actions,explicitState)\n<$set name=\"qualifiedState\" value=<<qualify \"$state$\">>>\n<$vars tabsState={{{ [<__explicitState__>minlength[1]] ~[<qualifiedState>] }}}>\n<div class=\"tc-tab-set $class$\">\n<div class=\"tc-tab-buttons $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\" storyview=\"pop\"><$set name=\"save-currentTiddler\" value=<<currentTiddler>>><$tiddler tiddler=<<currentTab>>><$button set=<<tabsState>> setTo=<<currentTab>> default=\"$default$\" selectedClass=\"tc-tab-selected\" tooltip={{!!tooltip}}>\n<$tiddler tiddler=<<save-currentTiddler>>>\n<$set name=\"tv-wikilinks\" value=\"no\">\n<$transclude tiddler=\"$buttonTemplate$\" mode=\"inline\">\n<$transclude tiddler=<<currentTab>> field=\"caption\">\n<$macrocall $name=\"currentTab\" $type=\"text/plain\" $output=\"text/plain\"/>\n</$transclude>\n</$transclude>\n</$set></$tiddler>$actions$</$button></$tiddler></$set></$list>\n</div>\n<div class=\"tc-tab-divider $class$\"/>\n<div class=\"tc-tab-content $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\">\n\n<$reveal type=\"match\" state=<<tabsState>> text=<<currentTab>> default=\"$default$\" retain=\"\"\"$retain$\"\"\">\n\n<$transclude tiddler=\"$template$\" mode=\"block\">\n\n<$transclude tiddler=<<currentTab>> mode=\"block\"/>\n\n</$transclude>\n\n</$reveal>\n\n</$list>\n</div>\n</div>\n</$vars>\n</$set>\n\\end\n"
        },
        "$:/core/macros/tag-picker": {
            "title": "$:/core/macros/tag-picker",
            "tags": "$:/tags/Macro",
            "first-search-filter": "[tags[]!is[system]search:title<userInput>sort[]]",
            "second-search-filter": "[tags[]is[system]search:title<userInput>sort[]]",
            "text": "\\define get-tagpicker-focus-selector() [data-tiddler-title=\"$(currentTiddlerCSSEscaped)$\"] .tc-add-tag-name input\n\n\\define delete-tag-state-tiddlers() <$action-deletetiddler $filter=\"[<newTagNameTiddler>] [<storeTitle>] [<tagSelectionState>]\"/>\n\n\\define add-tag-actions(actions,tagField:\"tags\")\n<$set name=\"tag\" value={{{ [<__tiddler__>get[text]] }}}>\n<$list filter=\"[<saveTiddler>!contains:$tagField$<tag>!match[]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"-[<tag>]\"/>\n\"\"\">\n<$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"[<tag>]\"/>\n$actions$\n</$list>\n</$set>\n<<delete-tag-state-tiddlers>>\n<$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n\\end\n\n\\define clear-tags-actions-inner()\n<$list filter=\"[<storeTitle>has[text]] [<newTagNameTiddler>has[text]]\" variable=\"ignore\" emptyMessage=\"\"\"<<cancel-delete-tiddler-actions \"cancel\">>\"\"\">\n<<delete-tag-state-tiddlers>>\n</$list>\n\\end\n\n\\define clear-tags-actions()\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[<newTagNameTiddler>get[text]!match<userInput>]\" emptyMessage=\"\"\"<<clear-tags-actions-inner>>\"\"\">\n<$action-setfield $tiddler=<<newTagNameTiddler>> text=<<userInput>>/><$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n</$list>\n</$set>\n\\end\n\n\\define tag-picker-inner(actions,tagField:\"tags\")\n\\whitespace trim\n<$vars newTagNameInputTiddlerQualified=<<qualify \"$:/temp/NewTagName/input\">> newTagNameSelectionTiddlerQualified=<<qualify \"$:/temp/NewTagName/selected-item\">> fallbackTarget={{$(palette)$##tag-background}} colourA={{$(palette)$##foreground}} colourB={{$(palette)$##background}}>\n<$vars storeTitle={{{ [<newTagNameInputTiddler>!match[]] ~[<newTagNameInputTiddlerQualified>] }}} tagSelectionState={{{ [<newTagNameSelectionTiddler>!match[]] ~[<newTagNameSelectionTiddlerQualified>] }}}>\n<$vars refreshTitle=<<qualify \"$:/temp/NewTagName/refresh\">> nonSystemTagsFilter=\"[tags[]!is[system]search:title<userInput>sort[]]\" systemTagsFilter=\"[tags[]is[system]search:title<userInput>sort[]]\">\n<div class=\"tc-edit-add-tag\">\n<div>\n<span class=\"tc-add-tag-name tc-small-gap-right\">\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<newTagNameTiddler>> storeTitle=<<storeTitle>> refreshTitle=<<refreshTitle>>\n\t\tselectionStateTitle=<<tagSelectionState>> inputAcceptActions=\"\"\"<$macrocall $name=\"add-tag-actions\" actions=<<__actions__>> tagField=<<__tagField__>>/>\"\"\"\n\t\tinputCancelActions=<<clear-tags-actions>> tag=\"input\" placeholder={{$:/language/EditTemplate/Tags/Add/Placeholder}}\n\t\tfocusPopup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-edit-texteditor tc-popup-handle\" tabindex=<<tabIndex>> \n\t\tfocus={{{ [{$:/config/AutoFocus}match[tags]then[true]] ~[[false]] }}} filterMinLength={{$:/config/Tags/MinLength}} \n\t\tcancelPopups=<<cancelPopups>> configTiddlerFilter=\"[[$:/core/macros/tag-picker]]\"/>\n</span><$button popup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-btn-invisible tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Tags/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Tags/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button><$reveal state=<<storeTitle>> type=\"nomatch\" text=\"\"><$button class=\"tc-btn-invisible tc-small-gap tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Tags/ClearInput/Hint}} aria-label={{$:/language/EditTemplate/Tags/ClearInput/Caption}}>{{$:/core/images/close-button}}<<delete-tag-state-tiddlers>></$button></$reveal><span class=\"tc-add-tag-button tc-small-gap-left\">\n<$set name=\"tag\" value={{{ [<newTagNameTiddler>get[text]] }}}>\n<$button set=<<newTagNameTiddler>> setTo=\"\" class=\"\">\n<$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"[<tag>]\"/>\n$actions$\n<$set name=\"currentTiddlerCSSEscaped\" value={{{ [<saveTiddler>escapecss[]] }}}>\n<<delete-tag-state-tiddlers>><$action-sendmessage $message=\"tm-focus-selector\" $param=<<get-tagpicker-focus-selector>>/>\n</$set>\n{{$:/language/EditTemplate/Tags/Add/Button}}\n</$button>\n</$set>\n</span>\n</div>\n<div class=\"tc-block-dropdown-wrapper\">\n<$reveal state=<<qualify \"$:/state/popup/tags-auto-complete\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-block-tags-dropdown\">\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[<userInput>minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=<<nonSystemTagsFilter>> variable=\"tag\">\n<$list filter=\"[<tag>addsuffix[-primaryList]] -[<tagSelectionState>get[text]]\" emptyMessage=\"\"\"<$vars button-classes=\"tc-btn-invisible tc-tag-button-selected\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\"\"\">\n<$vars button-classes=\"tc-btn-invisible\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\n</$list>\n</$list></$list>\n<hr>\n<$list filter=\"[<userInput>minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=<<systemTagsFilter>> variable=\"tag\">\n<$list filter=\"[<tag>addsuffix[-secondaryList]] -[<tagSelectionState>get[text]]\" emptyMessage=\"\"\"<$vars button-classes=\"tc-btn-invisible tc-tag-button-selected\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\"\"\">\n<$vars button-classes=\"tc-btn-invisible\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\n</$list>\n</$list></$list>\n</$set>\n</div>\n</$reveal>\n</div>\n</div>\n</$vars>\n</$vars>\n</$vars>\n\\end\n\\define tag-picker(actions,tagField:\"tags\")\n\\whitespace trim\n<$vars saveTiddler=<<currentTiddler>> palette={{$:/palette}}>\n<$list filter=\"[<newTagNameTiddler>match[]]\" emptyMessage=\"\"\"<$macrocall $name=\"tag-picker-inner\" actions=<<__actions__>> tagField=<<__tagField__>>/>\"\"\">\n<$set name=\"newTagNameTiddler\" value=<<qualify \"$:/temp/NewTagName\">>>\n<$macrocall $name=\"tag-picker-inner\" actions=<<__actions__>> tagField=<<__tagField__>>/>\n</$set>\n</$list>\n</$vars>\n\\end\n"
        },
        "$:/core/macros/tag": {
            "title": "$:/core/macros/tag",
            "tags": "$:/tags/Macro",
            "text": "\\define tag-pill-styles()\nbackground-color:$(backgroundColor)$;\nfill:$(foregroundColor)$;\ncolor:$(foregroundColor)$;\n\\end\n\n\\define tag-pill-inner(tag,icon,colour,fallbackTarget,colourA,colourB,element-tag,element-attributes,actions)\n<$vars foregroundColor=<<contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"$fallbackTarget$\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\">> backgroundColor=\"\"\"$colour$\"\"\">\n<$element-tag$ $element-attributes$ class=\"tc-tag-label tc-btn-invisible\" style=<<tag-pill-styles>>>\n$actions$<$transclude tiddler=\"\"\"$icon$\"\"\"/><$view tiddler=<<__tag__>> field=\"title\" format=\"text\" />\n</$element-tag$>\n</$vars>\n\\end\n\n\\define tag-pill-body(tag,icon,colour,palette,element-tag,element-attributes,actions)\n<$macrocall $name=\"tag-pill-inner\" tag=<<__tag__>> icon=\"\"\"$icon$\"\"\" colour=\"\"\"$colour$\"\"\" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}} element-tag=\"\"\"$element-tag$\"\"\" element-attributes=\"\"\"$element-attributes$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n\\end\n\n\\define tag-pill(tag,element-tag:\"span\",element-attributes:\"\",actions:\"\")\n<span class=\"tc-tag-list-item\">\n<$macrocall $name=\"tag-pill-body\" tag=<<__tag__>> icon={{{ [<__tag__>get[icon]] }}} colour={{{ [<__tag__>get[color]] }}} palette={{$:/palette}} element-tag=\"\"\"$element-tag$\"\"\" element-attributes=\"\"\"$element-attributes$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</span>\n\\end\n\n\\define tag(tag)\n{{$tag$||$:/core/ui/TagTemplate}}\n\\end\n"
        },
        "$:/core/macros/thumbnails": {
            "title": "$:/core/macros/thumbnails",
            "tags": "$:/tags/Macro",
            "text": "\\define thumbnail(link,icon,color,background-color,image,caption,width:\"280\",height:\"157\")\n<$link to=\"\"\"$link$\"\"\"><div class=\"tc-thumbnail-wrapper\">\n<div class=\"tc-thumbnail-image\" style=\"width:$width$px;height:$height$px;\"><$reveal type=\"nomatch\" text=\"\" default=\"\"\"$image$\"\"\" tag=\"div\" style=\"width:$width$px;height:$height$px;\">\n[img[$image$]]\n</$reveal><$reveal type=\"match\" text=\"\" default=\"\"\"$image$\"\"\" tag=\"div\" class=\"tc-thumbnail-background\" style=\"width:$width$px;height:$height$px;background-color:$background-color$;\"></$reveal></div><div class=\"tc-thumbnail-icon\" style=\"fill:$color$;color:$color$;\">\n$icon$\n</div><div class=\"tc-thumbnail-caption\">\n$caption$\n</div>\n</div></$link>\n\\end\n\n\\define thumbnail-right(link,icon,color,background-color,image,caption,width:\"280\",height:\"157\")\n<div class=\"tc-thumbnail-right-wrapper\"><<thumbnail \"\"\"$link$\"\"\" \"\"\"$icon$\"\"\" \"\"\"$color$\"\"\" \"\"\"$background-color$\"\"\" \"\"\"$image$\"\"\" \"\"\"$caption$\"\"\" \"\"\"$width$\"\"\" \"\"\"$height$\"\"\">></div>\n\\end\n\n\\define list-thumbnails(filter,width:\"280\",height:\"157\")\n<$list filter=\"\"\"$filter$\"\"\"><$macrocall $name=\"thumbnail\" link={{!!link}} icon={{!!icon}} color={{!!color}} background-color={{!!background-color}} image={{!!image}} caption={{!!caption}} width=\"\"\"$width$\"\"\" height=\"\"\"$height$\"\"\"/></$list>\n\\end\n"
        },
        "$:/core/macros/timeline": {
            "title": "$:/core/macros/timeline",
            "created": "20141212105914482",
            "modified": "20141212110330815",
            "tags": "$:/tags/Macro",
            "text": "\\define timeline-title()\n\\whitespace trim\n<!-- Override this macro with a global macro \n     of the same name if you need to change \n     how titles are displayed on the timeline \n     -->\n<$view field=\"title\"/>\n\\end\n\\define timeline(limit:\"100\",format:\"DDth MMM YYYY\",subfilter:\"\",dateField:\"modified\")\n<div class=\"tc-timeline\">\n<$list filter=\"[!is[system]$subfilter$has[$dateField$]!sort[$dateField$]limit[$limit$]eachday[$dateField$]]\">\n<div class=\"tc-menu-list-item\">\n<$view field=\"$dateField$\" format=\"date\" template=\"$format$\"/>\n<$list filter=\"[sameday:$dateField${!!$dateField$}!is[system]$subfilter$!sort[$dateField$]]\">\n<div class=\"tc-menu-list-subitem\">\n<$link to={{!!title}}><<timeline-title>></$link>\n</div>\n</$list>\n</div>\n</$list>\n</div>\n\\end\n"
        },
        "$:/core/macros/toc": {
            "title": "$:/core/macros/toc",
            "tags": "$:/tags/Macro",
            "text": "\\define toc-caption()\n<$set name=\"tv-wikilinks\" value=\"no\">\n  <$transclude field=\"caption\">\n    <$view field=\"title\"/>\n  </$transclude>\n</$set>\n\\end\n\n\\define toc-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<ol class=\"tc-toc\">\n  <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__exclude__>]\"\"\">\n    <$vars item=<<currentTiddler>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n      <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n        <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n          <li class=<<toc-item-class>>>\n            <$list filter=\"[all[current]toc-link[no]]\" emptyMessage=\"<$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}><$view field='caption'><$view field='title'/></$view></$link>\">\n              <<toc-caption>>\n            </$list>\n            <$macrocall $name=\"toc-body\" tag=<<item>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<excluded>> path=<<path>>/>\n          </li>\n        </$set>\n      </$set>\n    </$vars>\n  </$list>\n</ol>\n\\end\n\n\\define toc(tag,sort:\"\",itemClassFilter:\"\")\n<$macrocall $name=\"toc-body\"  tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> />\n\\end\n\n\\define toc-linked-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<!-- helper function -->\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n  <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n    <li class=<<toc-item-class>>>\n    <$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}>\n      <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n        <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/right-arrow}}\n        </$button>\n      </$reveal>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/down-arrow}}\n        </$button>\n      </$reveal>\n      <<toc-caption>>\n    </$link>\n    <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n      <$macrocall $name=\"toc-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n    </$reveal>\n    </li>\n  </$set>\n</$qualify>\n\\end\n\n\\define toc-unlinked-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<!-- helper function -->\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n  <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n    <li class=<<toc-item-class>>>\n      <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n        <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/right-arrow}}\n          <<toc-caption>>\n        </$button>\n      </$reveal>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/down-arrow}}\n          <<toc-caption>>\n        </$button>\n      </$reveal>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$macrocall $name=\"toc-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n      </$reveal>\n    </li>\n  </$set>\n</$qualify>\n\\end\n\n\\define toc-expandable-empty-message()\n<$macrocall $name=\"toc-linked-expandable-body\" tag=<<tag>> sort=<<sort>> itemClassFilter=<<itemClassFilter>> exclude=<<excluded>> path=<<path>>/>\n\\end\n\n\\define toc-expandable(tag,sort:\"\",itemClassFilter:\"\",exclude,path)\n<$vars tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n  <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n    <ol class=\"tc-toc toc-expandable\">\n      <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__exclude__>]\"\"\">\n        <$list filter=\"[all[current]toc-link[no]]\" emptyMessage=<<toc-expandable-empty-message>> >\n          <$macrocall $name=\"toc-unlinked-expandable-body\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=\"\"\"itemClassFilter\"\"\" exclude=<<excluded>> path=<<path>> />\n        </$list>\n      </$list>\n    </ol>\n  </$set>\n</$vars>\n\\end\n\n\\define toc-linked-selective-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n  <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\" >\n    <li class=<<toc-item-class>>>\n      <$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}>\n          <$list filter=\"[all[current]tagging[]$sort$limit[1]]\" variable=\"ignore\" emptyMessage=\"<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button>\">\n          <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n            <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n              {{$:/core/images/right-arrow}}\n            </$button>\n          </$reveal>\n          <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n            <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n              {{$:/core/images/down-arrow}}\n            </$button>\n          </$reveal>\n        </$list>\n        <<toc-caption>>\n      </$link>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$macrocall $name=\"toc-selective-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n      </$reveal>\n    </li>\n  </$set>\n</$qualify>\n\\end\n\n\\define toc-unlinked-selective-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n  <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n    <li class=<<toc-item-class>>>\n      <$list filter=\"[all[current]tagging[]$sort$limit[1]]\" variable=\"ignore\" emptyMessage=\"<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button> <$view field='caption'><$view field='title'/></$view>\">\n        <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n          <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n            {{$:/core/images/right-arrow}}\n            <<toc-caption>>\n          </$button>\n        </$reveal>\n        <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n          <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n            {{$:/core/images/down-arrow}}\n            <<toc-caption>>\n          </$button>\n        </$reveal>\n      </$list>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$macrocall $name=\"toc-selective-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n      </$reveal>\n    </li>\n  </$set>\n</$qualify>\n\\end\n\n\\define toc-selective-expandable-empty-message()\n<$macrocall $name=\"toc-linked-selective-expandable-body\" tag=<<tag>> sort=<<sort>> itemClassFilter=<<itemClassFilter>> exclude=<<excluded>> path=<<path>>/>\n\\end\n\n\\define toc-selective-expandable(tag,sort:\"\",itemClassFilter,exclude,path)\n<$vars tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n  <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n    <ol class=\"tc-toc toc-selective-expandable\">\n      <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__exclude__>]\"\"\">\n        <$list filter=\"[all[current]toc-link[no]]\" variable=\"ignore\" emptyMessage=<<toc-selective-expandable-empty-message>> >\n          <$macrocall $name=\"toc-unlinked-selective-expandable-body\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<excluded>> path=<<path>>/>\n        </$list>\n      </$list>\n    </ol>\n  </$set>\n</$vars>\n\\end\n\n\\define toc-tabbed-external-nav(tag,sort:\"\",selectedTiddler:\"$:/temp/toc/selectedTiddler\",unselectedText,missingText,template:\"\")\n<$tiddler tiddler={{{ [<__selectedTiddler__>get[text]] }}}>\n  <div class=\"tc-tabbed-table-of-contents\">\n    <$linkcatcher to=<<__selectedTiddler__>>>\n      <div class=\"tc-table-of-contents\">\n        <$macrocall $name=\"toc-selective-expandable\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=\"[all[current]] -[<__selectedTiddler__>get[text]]\"/>\n      </div>\n    </$linkcatcher>\n    <div class=\"tc-tabbed-table-of-contents-content\">\n      <$reveal stateTitle=<<__selectedTiddler__>> type=\"nomatch\" text=\"\">\n        <$transclude mode=\"block\" tiddler=<<__template__>>>\n          <h1><<toc-caption>></h1>\n          <$transclude mode=\"block\">$missingText$</$transclude>\n        </$transclude>\n      </$reveal>\n      <$reveal stateTitle=<<__selectedTiddler__>> type=\"match\" text=\"\">\n        $unselectedText$\n      </$reveal>\n    </div>\n  </div>\n</$tiddler>\n\\end\n\n\\define toc-tabbed-internal-nav(tag,sort:\"\",selectedTiddler:\"$:/temp/toc/selectedTiddler\",unselectedText,missingText,template:\"\")\n<$linkcatcher to=<<__selectedTiddler__>>>\n  <$macrocall $name=\"toc-tabbed-external-nav\" tag=<<__tag__>> sort=<<__sort__>> selectedTiddler=<<__selectedTiddler__>> unselectedText=<<__unselectedText__>> missingText=<<__missingText__>> template=<<__template__>>/>\n</$linkcatcher>\n\\end\n\n"
        },
        "$:/core/macros/translink": {
            "title": "$:/core/macros/translink",
            "tags": "$:/tags/Macro",
            "text": "\\define translink(title,mode:\"block\")\n<div style=\"border:1px solid #ccc; padding: 0.5em; background: black; foreground; white;\">\n<$link to=\"\"\"$title$\"\"\">\n<$text text=\"\"\"$title$\"\"\"/>\n</$link>\n<div style=\"border:1px solid #ccc; padding: 0.5em; background: white; foreground; black;\">\n<$transclude tiddler=\"\"\"$title$\"\"\" mode=\"$mode$\">\n\"<$text text=\"\"\"$title$\"\"\"/>\" is missing\n</$transclude>\n</div>\n</div>\n\\end\n"
        },
        "$:/core/macros/tree": {
            "title": "$:/core/macros/tree",
            "tags": "$:/tags/Macro",
            "text": "\\define leaf-link(full-title,chunk,separator: \"/\")\n<$link to=<<__full-title__>>><$text text=<<__chunk__>>/></$link>\n\\end\n\n\\define leaf-node(prefix,chunk)\n<li>\n<$list filter=\"[<__prefix__>addsuffix<__chunk__>is[shadow]] [<__prefix__>addsuffix<__chunk__>is[tiddler]]\" variable=\"full-title\">\n<$list filter=\"[<full-title>removeprefix<__prefix__>]\" variable=\"chunk\">\n<span>{{$:/core/images/file}}</span> <$macrocall $name=\"leaf-link\" full-title=<<full-title>> chunk=<<chunk>>/>\n</$list>\n</$list>\n</li>\n\\end\n\n\\define branch-node(prefix,chunk,separator: \"/\")\n<li>\n<$set name=\"reveal-state\" value={{{ [[$:/state/tree/]addsuffix<__prefix__>addsuffix<__chunk__>] }}}>\n<$reveal type=\"nomatch\" stateTitle=<<reveal-state>> text=\"show\">\n<$button setTitle=<<reveal-state>> setTo=\"show\" class=\"tc-btn-invisible\">\n{{$:/core/images/folder}} <$text text=<<__chunk__>>/>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<reveal-state>> text=\"show\">\n<$button setTitle=<<reveal-state>> setTo=\"hide\" class=\"tc-btn-invisible\">\n{{$:/core/images/folder}} <$text text=<<__chunk__>>/>\n</$button>\n</$reveal>\n<span>(<$count filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>removeprefix<__chunk__>] -[<__prefix__>addsuffix<__chunk__>]\"/>)</span>\n<$reveal type=\"match\" stateTitle=<<reveal-state>> text=\"show\">\n<$macrocall $name=\"tree-node\" prefix={{{ [<__prefix__>addsuffix<__chunk__>] }}} separator=<<__separator__>>/>\n</$reveal>\n</$set>\n</li>\n\\end\n\n\\define tree-node(prefix,separator: \"/\")\n<ol>\n<$list filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>splitbefore<__separator__>sort[]!suffix<__separator__>]\" variable=\"chunk\">\n<$macrocall $name=\"leaf-node\" prefix=<<__prefix__>> chunk=<<chunk>> separator=<<__separator__>>/>\n</$list>\n<$list filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>splitbefore<__separator__>sort[]suffix<__separator__>]\" variable=\"chunk\">\n<$macrocall $name=\"branch-node\" prefix=<<__prefix__>> chunk=<<chunk>> separator=<<__separator__>>/>\n</$list>\n</ol>\n\\end\n\n\\define tree(prefix: \"$:/\",separator: \"/\")\n<div class=\"tc-tree\">\n<span><$text text=<<__prefix__>>/></span>\n<div>\n<$macrocall $name=\"tree-node\" prefix=<<__prefix__>> separator=<<__separator__>>/>\n</div>\n</div>\n\\end\n"
        },
        "$:/core/macros/utils": {
            "title": "$:/core/macros/utils",
            "text": "\\define colour(colour)\n$colour$\n\\end\n"
        },
        "$:/snippets/minifocusswitcher": {
            "title": "$:/snippets/minifocusswitcher",
            "text": "<$select tiddler=\"$:/config/AutoFocus\">\n<$list filter=\"title tags text type fields\">\n<option value=<<currentTiddler>>><<currentTiddler>></option>\n</$list>\n</$select>\n"
        },
        "$:/snippets/minilanguageswitcher": {
            "title": "$:/snippets/minilanguageswitcher",
            "text": "<$select tiddler=\"$:/language\">\n<$list filter=\"[[$:/languages/en-GB]] [plugin-type[language]sort[title]]\">\n<option value=<<currentTiddler>>><$view field=\"description\"><$view field=\"name\"><$view field=\"title\"/></$view></$view></option>\n</$list>\n</$select>"
        },
        "$:/snippets/minithemeswitcher": {
            "title": "$:/snippets/minithemeswitcher",
            "text": "\\define lingo-base() $:/language/ControlPanel/Theme/\n<<lingo Prompt>> <$select tiddler=\"$:/theme\">\n<$list filter=\"[plugin-type[theme]sort[title]]\">\n<option value=<<currentTiddler>>><$view field=\"name\"><$view field=\"title\"/></$view></option>\n</$list>\n</$select>"
        },
        "$:/snippets/modules": {
            "title": "$:/snippets/modules",
            "text": "\\define describeModuleType(type)\n{{$:/language/Docs/ModuleTypes/$type$}}\n\\end\n<$list filter=\"[moduletypes[]]\">\n\n!! <$macrocall $name=\"currentTiddler\" $type=\"text/plain\" $output=\"text/plain\"/>\n\n<$macrocall $name=\"describeModuleType\" type=<<currentTiddler>>/>\n\n<ul><$list filter=\"[all[current]modules[]]\"><li><$link><<currentTiddler>></$link>\n</li>\n</$list>\n</ul>\n</$list>\n"
        },
        "$:/palette": {
            "title": "$:/palette",
            "text": "$:/palettes/Vanilla"
        },
        "$:/snippets/paletteeditor": {
            "title": "$:/snippets/paletteeditor",
            "text": "<$transclude tiddler=\"$:/PaletteManager\"/>\n"
        },
        "$:/snippets/palettepreview": {
            "title": "$:/snippets/palettepreview",
            "text": "<$set name=\"currentTiddler\" value={{$:/palette}}>\n{{||$:/snippets/currpalettepreview}}\n</$set>\n"
        },
        "$:/snippets/paletteswitcher": {
            "title": "$:/snippets/paletteswitcher",
            "text": "<$linkcatcher to=\"$:/palette\">\n<div class=\"tc-chooser\"><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Palette]sort[name]]\"><$set name=\"cls\" filter=\"[all[current]prefix{$:/palette}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$view field=\"name\" format=\"text\"/>'' - <$view field=\"description\" format=\"text\"/>{{||$:/snippets/currpalettepreview}}</$link>\n</div></$set>\n</$list>\n</div>\n</$linkcatcher>\n"
        },
        "$:/snippets/peek-stylesheets": {
            "title": "$:/snippets/peek-stylesheets",
            "text": "\\define expandable-stylesheets-list()\n<ol>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<$vars state=<<qualify \"$:/state/peek-stylesheets/open/\">>>\n<$set name=\"state\" value={{{ [<state>addsuffix<currentTiddler>] }}}>\n<li>\n<$reveal type=\"match\" state=<<state>> text=\"yes\" tag=\"span\">\n<$button set=<<state>> setTo=\"no\" class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" state=<<state>> text=\"yes\" tag=\"span\">\n<$button set=<<state>> setTo=\"yes\" class=\"tc-btn-invisible\">\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$link>\n<$view field=\"title\"/>\n</$link>\n<$reveal type=\"match\" state=<<state>> text=\"yes\" tag=\"div\">\n<$set name=\"source\" tiddler=<<currentTiddler>>>\n<$wikify name=\"styles\" text=<<source>>>\n<pre>\n<code>\n<$text text=<<styles>>/>\n</code>\n</pre>\n</$wikify>\n</$set>\n</$reveal>\n</li>\n</$set>\n</$vars>\n</$list>\n</ol>\n\\end\n\n\\define stylesheets-list()\n<ol>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<li>\n<$link>\n<$view field=\"title\"/>\n</$link>\n<$set name=\"source\" tiddler=<<currentTiddler>>>\n<$wikify name=\"styles\" text=<<source>>>\n<pre>\n<code>\n<$text text=<<styles>>/>\n</code>\n</pre>\n</$wikify>\n</$set>\n</li>\n</$list>\n</ol>\n\\end\n\n<$vars modeState=<<qualify \"$:/state/peek-stylesheets/mode/\">>>\n\n<$reveal type=\"nomatch\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<$button set=<<modeState>> setTo=\"expanded\" class=\"tc-btn-invisible\">{{$:/core/images/chevron-right}} {{$:/language/ControlPanel/Stylesheets/Expand/Caption}}</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<$button set=<<modeState>> setTo=\"restored\" class=\"tc-btn-invisible\">{{$:/core/images/chevron-down}} {{$:/language/ControlPanel/Stylesheets/Restore/Caption}}</$button>\n</$reveal>\n\n<$reveal type=\"nomatch\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<<expandable-stylesheets-list>>\n</$reveal>\n<$reveal type=\"match\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<<stylesheets-list>>\n</$reveal>\n\n</$vars>\n"
        },
        "$:/temp/search": {
            "title": "$:/temp/search",
            "text": ""
        },
        "$:/tags/AdvancedSearch": {
            "title": "$:/tags/AdvancedSearch",
            "list": "[[$:/core/ui/AdvancedSearch/Standard]] [[$:/core/ui/AdvancedSearch/System]] [[$:/core/ui/AdvancedSearch/Shadows]] [[$:/core/ui/AdvancedSearch/Filter]]"
        },
        "$:/tags/AdvancedSearch/FilterButton": {
            "title": "$:/tags/AdvancedSearch/FilterButton",
            "list": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown $:/core/ui/AdvancedSearch/Filter/FilterButtons/clear $:/core/ui/AdvancedSearch/Filter/FilterButtons/export $:/core/ui/AdvancedSearch/Filter/FilterButtons/delete"
        },
        "$:/tags/ControlPanel": {
            "title": "$:/tags/ControlPanel",
            "list": "$:/core/ui/ControlPanel/Info $:/core/ui/ControlPanel/Appearance $:/core/ui/ControlPanel/Settings $:/core/ui/ControlPanel/Saving $:/core/ui/ControlPanel/Plugins $:/core/ui/ControlPanel/Tools $:/core/ui/ControlPanel/Internals"
        },
        "$:/tags/ControlPanel/Info": {
            "title": "$:/tags/ControlPanel/Info",
            "list": "$:/core/ui/ControlPanel/Basics $:/core/ui/ControlPanel/Advanced"
        },
        "$:/tags/ControlPanel/Plugins": {
            "title": "$:/tags/ControlPanel/Plugins",
            "list": "[[$:/core/ui/ControlPanel/Plugins/Installed]] [[$:/core/ui/ControlPanel/Plugins/Add]]"
        },
        "$:/tags/EditTemplate": {
            "title": "$:/tags/EditTemplate",
            "list": "[[$:/core/ui/EditTemplate/controls]] [[$:/core/ui/EditTemplate/title]] [[$:/core/ui/EditTemplate/tags]] [[$:/core/ui/EditTemplate/shadow]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/EditTemplate/body]] [[$:/core/ui/EditTemplate/type]] [[$:/core/ui/EditTemplate/fields]]"
        },
        "$:/tags/EditToolbar": {
            "title": "$:/tags/EditToolbar",
            "list": "[[$:/core/ui/Buttons/delete]] [[$:/core/ui/Buttons/cancel]] [[$:/core/ui/Buttons/save]]"
        },
        "$:/tags/EditorToolbar": {
            "title": "$:/tags/EditorToolbar",
            "list": "$:/core/ui/EditorToolbar/paint $:/core/ui/EditorToolbar/opacity $:/core/ui/EditorToolbar/line-width $:/core/ui/EditorToolbar/rotate-left $:/core/ui/EditorToolbar/clear $:/core/ui/EditorToolbar/bold $:/core/ui/EditorToolbar/italic $:/core/ui/EditorToolbar/strikethrough $:/core/ui/EditorToolbar/underline $:/core/ui/EditorToolbar/superscript $:/core/ui/EditorToolbar/subscript $:/core/ui/EditorToolbar/mono-line $:/core/ui/EditorToolbar/mono-block $:/core/ui/EditorToolbar/quote $:/core/ui/EditorToolbar/list-bullet $:/core/ui/EditorToolbar/list-number $:/core/ui/EditorToolbar/heading-1 $:/core/ui/EditorToolbar/heading-2 $:/core/ui/EditorToolbar/heading-3 $:/core/ui/EditorToolbar/heading-4 $:/core/ui/EditorToolbar/heading-5 $:/core/ui/EditorToolbar/heading-6 $:/core/ui/EditorToolbar/link $:/core/ui/EditorToolbar/excise $:/core/ui/EditorToolbar/picture $:/core/ui/EditorToolbar/stamp $:/core/ui/EditorToolbar/size $:/core/ui/EditorToolbar/editor-height $:/core/ui/EditorToolbar/more $:/core/ui/EditorToolbar/preview $:/core/ui/EditorToolbar/preview-type"
        },
        "$:/tags/Manager/ItemMain": {
            "title": "$:/tags/Manager/ItemMain",
            "list": "$:/Manager/ItemMain/WikifiedText $:/Manager/ItemMain/RawText $:/Manager/ItemMain/Fields"
        },
        "$:/tags/Manager/ItemSidebar": {
            "title": "$:/tags/Manager/ItemSidebar",
            "list": "$:/Manager/ItemSidebar/Tags $:/Manager/ItemSidebar/Colour $:/Manager/ItemSidebar/Icon $:/Manager/ItemSidebar/Tools"
        },
        "$:/tags/MoreSideBar": {
            "title": "$:/tags/MoreSideBar",
            "list": "[[$:/core/ui/MoreSideBar/All]] [[$:/core/ui/MoreSideBar/Recent]] [[$:/core/ui/MoreSideBar/Tags]] [[$:/core/ui/MoreSideBar/Missing]] [[$:/core/ui/MoreSideBar/Drafts]] [[$:/core/ui/MoreSideBar/Orphans]] [[$:/core/ui/MoreSideBar/Types]] [[$:/core/ui/MoreSideBar/System]] [[$:/core/ui/MoreSideBar/Shadows]] [[$:/core/ui/MoreSideBar/Explorer]] [[$:/core/ui/MoreSideBar/Plugins]]",
            "text": ""
        },
        "$:/tags/PageControls": {
            "title": "$:/tags/PageControls",
            "list": "[[$:/core/ui/Buttons/home]] [[$:/core/ui/Buttons/close-all]] [[$:/core/ui/Buttons/fold-all]] [[$:/core/ui/Buttons/unfold-all]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/new-tiddler]] [[$:/core/ui/Buttons/new-journal]] [[$:/core/ui/Buttons/new-image]] [[$:/core/ui/Buttons/import]] [[$:/core/ui/Buttons/export-page]] [[$:/core/ui/Buttons/control-panel]] [[$:/core/ui/Buttons/advanced-search]] [[$:/core/ui/Buttons/manager]] [[$:/core/ui/Buttons/tag-manager]] [[$:/core/ui/Buttons/language]] [[$:/core/ui/Buttons/palette]] [[$:/core/ui/Buttons/theme]] [[$:/core/ui/Buttons/storyview]] [[$:/core/ui/Buttons/encryption]] [[$:/core/ui/Buttons/timestamp]] [[$:/core/ui/Buttons/full-screen]] [[$:/core/ui/Buttons/print]] [[$:/core/ui/Buttons/save-wiki]] [[$:/core/ui/Buttons/refresh]] [[$:/core/ui/Buttons/more-page-actions]]"
        },
        "$:/tags/PageTemplate": {
            "title": "$:/tags/PageTemplate",
            "list": "[[$:/core/ui/PageTemplate/topleftbar]] [[$:/core/ui/PageTemplate/toprightbar]] [[$:/core/ui/PageTemplate/sidebar]] [[$:/core/ui/PageTemplate/story]] [[$:/core/ui/PageTemplate/alerts]]",
            "text": ""
        },
        "$:/tags/PluginLibrary": {
            "title": "$:/tags/PluginLibrary",
            "list": "$:/config/OfficialPluginLibrary"
        },
        "$:/tags/SideBar": {
            "title": "$:/tags/SideBar",
            "list": "[[$:/core/ui/SideBar/Open]] [[$:/core/ui/SideBar/Recent]] [[$:/core/ui/SideBar/Tools]] [[$:/core/ui/SideBar/More]]",
            "text": ""
        },
        "$:/tags/SideBarSegment": {
            "title": "$:/tags/SideBarSegment",
            "list": "[[$:/core/ui/SideBarSegments/site-title]] [[$:/core/ui/SideBarSegments/site-subtitle]] [[$:/core/ui/SideBarSegments/page-controls]] [[$:/core/ui/SideBarSegments/search]] [[$:/core/ui/SideBarSegments/tabs]]"
        },
        "$:/tags/TiddlerInfo": {
            "title": "$:/tags/TiddlerInfo",
            "list": "[[$:/core/ui/TiddlerInfo/Tools]] [[$:/core/ui/TiddlerInfo/References]] [[$:/core/ui/TiddlerInfo/Tagging]] [[$:/core/ui/TiddlerInfo/List]] [[$:/core/ui/TiddlerInfo/Listed]] [[$:/core/ui/TiddlerInfo/Fields]]",
            "text": ""
        },
        "$:/tags/TiddlerInfo/Advanced": {
            "title": "$:/tags/TiddlerInfo/Advanced",
            "list": "[[$:/core/ui/TiddlerInfo/Advanced/ShadowInfo]] [[$:/core/ui/TiddlerInfo/Advanced/PluginInfo]]"
        },
        "$:/tags/ViewTemplate": {
            "title": "$:/tags/ViewTemplate",
            "list": "[[$:/core/ui/ViewTemplate/title]] [[$:/core/ui/ViewTemplate/unfold]] [[$:/core/ui/ViewTemplate/subtitle]] [[$:/core/ui/ViewTemplate/tags]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/ViewTemplate/body]]"
        },
        "$:/tags/ViewToolbar": {
            "title": "$:/tags/ViewToolbar",
            "list": "[[$:/core/ui/Buttons/more-tiddler-actions]] [[$:/core/ui/Buttons/info]] [[$:/core/ui/Buttons/new-here]] [[$:/core/ui/Buttons/new-journal-here]] [[$:/core/ui/Buttons/clone]] [[$:/core/ui/Buttons/export-tiddler]] [[$:/core/ui/Buttons/edit]] [[$:/core/ui/Buttons/delete]] [[$:/core/ui/Buttons/permalink]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/open-window]] [[$:/core/ui/Buttons/close-others]] [[$:/core/ui/Buttons/close]] [[$:/core/ui/Buttons/fold-others]] [[$:/core/ui/Buttons/fold]]"
        },
        "$:/snippets/themeswitcher": {
            "title": "$:/snippets/themeswitcher",
            "text": "<$linkcatcher to=\"$:/theme\">\n<div class=\"tc-chooser\"><$list filter=\"[plugin-type[theme]sort[title]]\"><$set name=\"cls\" filter=\"[all[current]field:title{$:/theme}] [[$:/theme]!has[text]addsuffix[s/tiddlywiki/vanilla]field:title<currentTiddler>] +[limit[1]]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$view field=\"name\" format=\"text\"/>'' <$view field=\"description\" format=\"text\"/></$link></div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
        },
        "$:/core/wiki/title": {
            "title": "$:/core/wiki/title",
            "text": "{{$:/SiteTitle}} --- {{$:/SiteSubtitle}}"
        },
        "$:/view": {
            "title": "$:/view",
            "text": "classic"
        },
        "$:/snippets/viewswitcher": {
            "title": "$:/snippets/viewswitcher",
            "text": "\\define icon()\n$:/core/images/storyview-$(storyview)$\n\\end\n<$linkcatcher to=\"$:/view\">\n<div class=\"tc-chooser tc-viewswitcher\">\n<$list filter=\"[storyviews[]]\" variable=\"storyview\">\n<$set name=\"cls\" filter=\"[<storyview>prefix{$:/view}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>>\n<$link to=<<storyview>>><$transclude tiddler=<<icon>>/><$text text=<<storyview>>/></$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
        }
    }
}
/*\
title: $:/core/modules/filters/has.js
type: application/javascript
module-type: filteroperator

Filter operator for checking if a tiddler has the specified field

\*/
(function(){

/*jslint node: true, browser: true */
/*global $tw: false */
"use strict";

/*
Export our filter function
*/
exports.has = function(source,operator,options) {
	var results = [],
		invert = operator.prefix === "!";

	if(operator.suffix === "field") {
		if(invert) {
			source(function(tiddler,title) {
				if(!tiddler || (tiddler && (!$tw.utils.hop(tiddler.fields,operator.operand)))) {
					results.push(title);
				}
			});
		} else {
			source(function(tiddler,title) {
				if(tiddler && $tw.utils.hop(tiddler.fields,operator.operand)) {
					results.push(title);
				}
			});
		}
	} else {
		if(invert) {
			source(function(tiddler,title) {
				if(!tiddler || !$tw.utils.hop(tiddler.fields,operator.operand) || (tiddler.fields[operator.operand] === "") || (tiddler.fields[operator.operand].length === 0)) {
					results.push(title);
				}
			});
		} else {
			source(function(tiddler,title) {
				if(tiddler && $tw.utils.hop(tiddler.fields,operator.operand) && !(tiddler.fields[operator.operand] === "" || tiddler.fields[operator.operand].length === 0)) {
					results.push(title);
				}
			});				
		}
	}
	return results;
};

})();
\whitespace trim
<$reveal type="nomatch" stateTitle=<<folded-state>> text="hide" default="show">
<$button tooltip={{$:/language/Buttons/Fold/Hint}} aria-label={{$:/language/Buttons/Fold/Caption}} class=<<tv-config-toolbar-class>>>
<$action-sendmessage $message="tm-fold-tiddler" $param=<<currentTiddler>> foldedState=<<folded-state>>/>
<$list filter="[<tv-config-toolbar-icons>match[yes]]" variable="listItem">
{{$:/core/images/fold-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>match[yes]]">
<span class="tc-btn-text">
<$text text=" "/>
<$text text={{$:/language/Buttons/Fold/Caption}}/>
</span>
</$list>
</$button>
</$reveal>
<$reveal type="match" stateTitle=<<folded-state>> text="hide" default="show">
<$button tooltip={{$:/language/Buttons/Unfold/Hint}} aria-label={{$:/language/Buttons/Unfold/Caption}} class=<<tv-config-toolbar-class>>>
<$action-sendmessage $message="tm-fold-tiddler" $param=<<currentTiddler>> foldedState=<<folded-state>>/>
<$list filter="[<tv-config-toolbar-icons>match[yes]]" variable="listItem">
{{$:/core/images/unfold-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>match[yes]]">
<span class="tc-btn-text">
<$text text=" "/>
<$text text={{$:/language/Buttons/Unfold/Caption}}/>
</span>
</$list>
</$button>
</$reveal>
\define lingo-base() $:/language/ControlPanel/Settings/LinkToBehaviour/

<$link to="$:/config/Navigation/openLinkFromInsideRiver"><<lingo "InsideRiver/Hint">></$link>

<$select tiddler="$:/config/Navigation/openLinkFromInsideRiver">
  <option value="above"><<lingo "OpenAbove">></option>
  <option value="below"><<lingo "OpenBelow">></option>
  <option value="top"><<lingo "OpenAtTop">></option>
  <option value="bottom"><<lingo "OpenAtBottom">></option>
</$select>

<$link to="$:/config/Navigation/openLinkFromOutsideRiver"><<lingo "OutsideRiver/Hint">></$link>

<$select tiddler="$:/config/Navigation/openLinkFromOutsideRiver">
  <option value="top"><<lingo "OpenAtTop">></option>
  <option value="bottom"><<lingo "OpenAtBottom">></option>
</$select>
{{$:/snippets/viewswitcher}}


<$reveal state="$:/state/sidebar" type="nomatch" text="no">
<$button set="$:/state/sidebar" setTo="no" tooltip={{$:/language/Buttons/HideSideBar/Hint}} aria-label={{$:/language/Buttons/HideSideBar/Caption}} class="tc-btn-invisible">{{$:/core/images/chevron-right}}</$button>
</$reveal>
<$reveal state="$:/state/sidebar" type="match" text="no">
<$button set="$:/state/sidebar" setTo="yes" tooltip={{$:/language/Buttons/ShowSideBar/Hint}} aria-label={{$:/language/Buttons/ShowSideBar/Caption}} class="tc-btn-invisible">{{$:/core/images/chevron-left}}</$button>
</$reveal>
\define title-styles()
fill:$(foregroundColor)$;
\end
\define config-title()
$:/config/ViewToolbarButtons/Visibility/$(listItem)$
\end
<div class="tc-tiddler-title">
<div class="tc-titlebar">
<span class="tc-tiddler-controls">
<$list filter="[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]" variable="listItem"><$reveal type="nomatch" state=<<config-title>> text="hide"><$set name="tv-config-toolbar-class" filter="[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]"><$transclude tiddler=<<listItem>>/></$set></$reveal></$list>
</span>
<$set name="tv-wikilinks" value={{$:/config/Tiddlers/TitleLinks}}>
<$link>
<$set name="foregroundColor" value={{!!color}}>
<span class="tc-tiddler-title-icon" style=<<title-styles>>>
<$transclude tiddler={{!!icon}}/>
</span>
</$set>
<$list filter="[all[current]removeprefix[$:/]]">
<h2 class="tc-title" title={{$:/language/SystemTiddler/Tooltip}}>
<span class="tc-system-title-prefix">$:/</span><$text text=<<currentTiddler>>/>
</h2>
</$list>
<$list filter="[all[current]!prefix[$:/]]">
<h2 class="tc-title">
<$view field="title"/>
</h2>
</$list>
</$link>
</$set>
</div>

<$reveal type="nomatch" text="" default="" state=<<tiddlerInfoState>> class="tc-tiddler-info tc-popup-handle" animate="yes" retain="yes">

<$list filter="[all[shadows+tiddlers]tag[$:/tags/TiddlerInfoSegment]!has[draft.of]] [[$:/core/ui/TiddlerInfo]]" variable="listItem"><$transclude tiddler=<<listItem>> mode="block"/></$list>

</$reveal>
</div>
[list[$:/StoryList]]
The following tiddlers were imported:

# [[arcology.jpg]]
no
Create a new tiddler that links to this one
Create a new journal tiddler that links to this one
$:/core/ui/PageTemplate
.bm-table {margin:0 auto;}
.bm-table, .bm-table th, .bm-table td {
  border:0; background:white;
}
.bm-input-table {width:100%;}
.bm-input-table > tr > td:nth-child(2) {max-width:300px;}
.bm-input-table select {max-width:calc(100% - 50px - 1.2em);}
.bm-fieldeditor {max-width:calc(100% - 1.2em);}

.bm-relations-table {margin-top:4em;}
.bm-table th.rotate {
  white-space: nowrap;
  vertical-align:bottom;
}
.bm-table th.rotate > div {
  transform: translate(27px, -.5em) rotate(315deg);
  width: 1em;
  margin-left:-1em;
}
.bm-table th.rotate > div > span {
  border-bottom: 1px solid #ccc;
  padding: 0px 10px 2px 0;
  margin-left:-.6em;
  background:white;
}
.bm-table ::-webkit-input-placeholder { color: #a6a6a6; }
.bm-table :-ms-input-placeholder { color: #a6a6a6; }
.bm-table ::-ms-input-placeholder { color: #a6a6a6; }
.bm-table ::-moz-placeholder { color: #a6a6a6; }

.bm-singledata-table-head {border-bottom:2px solid silver}

.bm-btn {width:1em;}
.bm-btn-addtofilter {color:blue; }
.bm-btn-add, .tm-add-tag, .tm-add-field { background:lightgray;}
.bm-btn-remove, .tm-remove-tag, .tm-remove-field {background:lightgreen;}
.peek {display:none;z-index:2;background-color:lightgray;position:absolute;}
.peek-hover:hover .peek {display:block; background:lightgray;}
.bm-tooltip {position:absolute; display:none; z-index:2;background:white; margin:-2.6em -1em; border:1px solid silver; padding:0 5px; color:black;white-space:nowrap;}
.bm-btn-tooltip:hover .bm-tooltip {display:block;}
.bm-fontsmall {font-size:.8em; fill:gray;}
.bm-center {text-align:center; vertical-align:text-bottom;}
.bm-fontsmall svg,
 .bm-fontsmall input[type="checkbox"] {vertical-align:text-top}
.bm-alert {border-color:red;}

.bm-drag {background:#ec6; border-radius:1em; padding:0; line-height:1.1em; width:3em; display:inline-block;}
button.green-link {color:#00cc00;}
$:/palettes/Vanilla

{
    "tiddlers": {
        "$:/plugins/danielo515/autotag/startup/tagger.js": {
            "text": "/*\\\ntitle: $:/plugins/danielo515/autotag/startup/tagger.js\ntype: application/javascript\nmodule-type: startup\n\n\\*/\n\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"autotagger\";\nexports.after = [\"startup\"];\nexports.platforms = [\"browser\"];\nexports.synchronous = true;\n\nexports.startup = function(callback) {\n\nvar getTags=$tw.wiki.compileFilter(\"[tags[]!is[system]sort[title]]\"),\n    cache={};\n\nfunction autotag(changes){\n    var allTags=getTags(),\n        tagsRegex=new RegExp(allTags.join(\"|\")),\n        taggedTiddlers=[];\n    $tw.utils.each(changes,function(tidInfo,title){\n     //if the title is on the cache it means we are tagging the same tiddler twice in a row, so skip it\n     // and remove it from the cache for future calls\n        if(cache[title]){\n            delete cache[title];\n            return;\r\n        }\n        if( !/^Draft of|^\\$:\\//.test(title) && changes[title].modified){\n            /*If the title is not a system one or draft we operate on it*/\n            var tiddler=$tw.wiki.getTiddler(title).fields;\n                if(tagsRegex.test(tiddler.text))\n                {\n                    /*If any of the tags is contained on the tiddler text, then create a new array to host the new set of tags*/\n                    var newTags=[];\n                        for(var i=0,x=allTags.length;i<x;i++){\n                            if( tiddler.text.indexOf(allTags[i]) !==-1 && ( tiddler.tags === undefined || tiddler.tags.indexOf(allTags[i]) ==-1 )){\n                                newTags.push(allTags[i]);\r\n                            }\r\n                        }\n                    console.log(newTags);\n                    cache[title]=true; // save the processed tiddler on the cache to avoid edit loops\n                    taggedTiddlers.push(new $tw.Tiddler(tiddler,{tags: tiddler.tags ? newTags.concat(tiddler.tags) : newTags })); //only concatenate if the source tiddler has tagsS\n                }\n        }\n        \r\n    });\n    $tw.wiki.addTiddlers(taggedTiddlers);\r\n};\n    $tw.wiki.addEventListener(\"change\",autotag);\n\n};\n\n})();",
            "title": "$:/plugins/danielo515/autotag/startup/tagger.js",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/plugins/danielo515/autotag/readme": {
            "title": "$:/plugins/danielo515/autotag/readme",
            "text": "This plugin tags tiddler automatically based on their content. It only adds tags that exists already on the wiki.\nThe only way it can be deactivated is disabling or uninstalling it.\n\nGithub: [[]]https://github.com/danielo515/TW5-AutoTag]]\n"
        }
    }
}
.matched {background-color:#ffc;}
.tw-context {
  border:0px solid #eee;background-color:#eee;
  word-break: break-all; word-wrap: break-word;}
{
    "tiddlers": {
        "$:/plugins/danielo515/ContextPlugin/widgets/context.js": {
            "created": "20140418153435777",
            "creator": "danielo",
            "modified": "20140530231943517",
            "modifier": "danielo",
            "module-type": "widget",
            "title": "$:/plugins/danielo515/ContextPlugin/widgets/context.js",
            "type": "application/javascript",
            "text": "/*\\\\\ntitle: $:/core/modules/widgets/danielo/context-widget.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-text widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar contextWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\ncontextWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\ncontextWidget.prototype.render = function(parent,nextSibling) {\n   // Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n    \n  if(this.term && this.term.length>3){\n     \n      this.createRegexp();\n      var matches = this.executeRegexp();\n\t  if(matches.length > 0){ \n        this.domNode = this.document.createElement(this.element);\n        this.domNode.className=\"tw-context\";\n        this.composeResults( matches ); //this appends to domNode        \n      \t// Insert element\n      \tparent.insertBefore(this.domNode,nextSibling);\n      \tthis.renderChildren(this.domNode,null);\n\t  \tthis.domNodes.push(this.domNode);\n      }\n  }\n\t\n};\n\n/*\nCompute the internal state of the widget\n*/\ncontextWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n    this.matchedClass = this.getAttribute(\"matchClass\",\"matched\");\n\tthis.tiddler = this.getAttribute( \"tiddler\",this.getVariable(\"currentTiddler\") );\n    this.term =  this.getAttribute(\"term\",this.getAttribute(\"searchTerm\"));\n\tthis.contextLength = this.getAttribute(\"length\",50);\n    this.before = this.getAttribute(\"before\",this.contextLength);\n    this.after = this.getAttribute(\"after\",this.contextLength);\n    this.maxMatches = this.getAttribute(\"maxMatches\",10);\n    this.element = this.getAttribute(\"element\",\"pre\");\n\tthis.makeChildWidgets();\n};\n\n  /*Create the regular expression*/\ncontextWidget.prototype.createRegexp = function()\n{\n  var regString = \"(\\\\w+[\\\\s\\\\S]{0,#before#})?(#term#)([\\\\s\\\\S]{0,#after#}\\\\w+)?\";\n\n  var regString = regString.replace(\"#before#\",this.before).replace(\"#term#\", $tw.utils.escapeRegExp(this.term) ) .replace(\"#after#\",this.after);\n  this.regexp = new RegExp(regString,\"ig\");\n  //console.log(regString);\n};\n/*\nexecute the regular expresion\n*/\ncontextWidget.prototype.executeRegexp = function()\n{\n  var text = this.wiki.getTiddlerText(this.tiddler), match,results = new Array();\n  while( (match = this.regexp.exec( text ) ) && (results.length < this.maxMatches) )\n      { results.push(match) }\n  //console.log(\"matches\",results);\n  return results;\n};\n\n/*\ncompose the results\nmatches : array of match objects from regular expression execute\n*/\ncontextWidget.prototype.composeResults = function(matches){\n var result=[], self=this, node = this.domNode,\n dots = textNode(\"...\\n\"),\n span = matchedNode( this.term );\n\n  for(var i=0; i < matches.length; i++){\n   processMatch( matches[i] );\n }\n  \n  function processMatch(match){\n    if( match.index !== 0) node.appendChild( dots.cloneNode(true) );\n    for( var i=1;i<match.length;i++ ) {//match[0] full matched text (all groups together)\n      if( match[i] ) {\n        if ( match[i].toLowerCase() == self.term.toLowerCase() ) \n          node.appendChild( match[i] == self.term ? span.cloneNode(true) : matchedNode( match[i] ) )\n          else\n            node.appendChild( textNode( match[i]) )\n      }\n    }\n    if( match.index + match[0].length < match.input.length) node.appendChild( dots.cloneNode(true) );\n  }\n  \n  function textNode(text){ return self.document.createTextNode(text) }\n  function matchedNode(text) { \n    var node = self.document.createElement(\"span\"); node.appendChild( textNode(text) );  node.className = self.matchedClass;\n    return node }\n  \n};\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\ncontextWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.term || changedAttributes.length || changedAttributes.matchedClass) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n    return this.refreshChildren(changedTiddlers);\n};\n\nexports.context = contextWidget;\n\n})();"
        },
        "$:/plugins/danielo515/ContextPlugin/visualizer": {
            "title": "$:/plugins/danielo515/ContextPlugin/visualizer",
            "tags": "$:/tags/SearchResults",
            "caption": "Context",
            "text": "<$list filter=\"[!is[system]search{$:/temp/search}sort[title]limit[250]]\">\r\n  {{!!title||$:/core/ui/ListItemTemplate}}\r\n  <$context term={{$:/temp/search}} />\r\n</$list>\r\n"
        },
        "$:/plugins/danielo515/ContextPlugin/Stylesheet/results": {
            "created": "20140529162823729",
            "tags": "$:/tags/Stylesheet contextPlugin",
            "title": "$:/plugins/danielo515/ContextPlugin/Stylesheet/results",
            "type": "text/css",
            "text": ".matched{background-color:yellow}\n.tw-context {/*border:1px solid;\n  /*word-break: break-all; word-wrap: break-word*/}"
        },
        "$:/plugins/danielo515/ContextPlugin/Caption": {
            "created": "20140530174219263",
            "tags": "contextPlugin",
            "title": "$:/plugins/danielo515/ContextPlugin/Caption",
            "type": "text/vnd.tiddlywiki",
            "text": "Context search"
        },
        "Context Search": {
            "caption": "{{$:/plugins/danielo515/ContextPlugin/Caption}}",
            "created": "20140530173407542",
            "tags": "$:/tags/AdvancedSearch",
            "title": "Context Search",
            "type": "text/vnd.tiddlywiki",
            "text": "\\define lingo-base() $:/language/Search/\n<$linkcatcher to=\"$:/temp/advancedsearch\">\n\n<<lingo Standard/Hint>>\n\n<div class=\"tw-search\"><$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\"/><$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\"> <$link to=\"\" class=\"btn-invisible\">{{$:/core/images/close-button}}</$link></$reveal></div>\n\n</$linkcatcher>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<div class=\"tw-search-results\">\n\n<<lingo Standard/Matches>>\n\n<$list filter=\"[!is[system]search{$:/temp/advancedsearch}sort[title]limit[250]]\">\n{{!!title||$:/core/ui/ListItemTemplate}}\n<$context term={{$:/temp/advancedsearch}}/>\n</$list>\n\n</div>\n\n</$reveal>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\">\n\n</$reveal>\n"
        },
        "$:/plugins/danielo515/ContextPlugin/readme": {
            "title": "$:/plugins/danielo515/ContextPlugin/readme",
            "text": "!Usage\n\nAfter installing the plugin you will have a new tab in [[$:/AdvancedSearch]] called [[Context Search]]. If you want this functionality in other places you will have to edit the desired tiddler yourself adding the ''context widget''. For more details about using the widget see the section below.\n\n!!Using the widget\n\nThe very basic usage of the widget is the following:\n\n```\r\n<$context term=\"lorem\"/>\r\n```\r\nWhich will render as:\r\n<$context term=\"lorem\"/>\n\nThe widgets will search inside the current tiddler by default. Because that you see the same content twice here. This example is not very useful. Other more meaningful would be:\n\n```\r\n<$list filter=\"[search{$:/temp/advancedsearch}sort[title]limit[250]]\">\r\n{{!!title||$:/core/ui/ListItemTemplate}}\r\n<$context term={{$:/temp/advancedsearch}}/>\r\n</$list>\r\n```\n\nThat will search for tiddlers containing the text specified in [[$:/temp/advancedsearch]] and will display a link to the matching tiddlers plus a preview of the matching content. Something very similar is used in [[Context Search]]. Below you can find a complete list of parameters and their default values.\n\n|! parameter |! description | !default |\r\n| term | The term you want to search ||\r\n| searchTerm | An alias for the previous one ||\r\n| tiddler | The tiddler's name to look into | current tiddler |\r\n| length | Number of context characters to show | 50 |\r\n| before | Number of characters before the matched term to show | the value of the length parameter |\r\n| after | Number of characters after the matched term to show | the value of the length parameter |\r\n| maxMatches | maximun number of matched elements to show. Incrementing this can cause several performance issues | 10 |\r\n| element | Node element to create. This element will contain the results of the search. If you want to style it its class is `tw-context` | `<pre>` |\r\n| matchClass | The css class to assign to the matched terms in the results. This is used to highlight the results | matched |\n\n!Customizing the output\r\nThere are not many ways to customize the output of this widget. You can specify ''what type of node you want to create'' to wrap the results (div,span...). The default is `<pre>`. This container is created with the class `tw-context` so you can easily apply styles to it. Something similar happens to the ''highlighted'' words. You can specify the name of the class to assign to it and also you can apply styles to that class.\n\nA very basic example of customization could be:\n\n# Create a tiddler, for example [[$/plugins/danielo515/context/css]]\r\n# Paste the following text or any css rule you want: \"\"\"\n\n<pre>\r\n.matched{background-color:yellow}\r\n.tw-context {\r\n  border:1px solid blue;\r\n  word-break: break-all; word-wrap: break-word;}\r\n</pre>\r\n\"\"\"\r\n# Tag it with `$:/tags/stylesheet`\r\n# Save the tiddler"
        }
    }
}
Context search
.matched{background-color:yellow}
.tw-context {/*border:1px solid;
  /*word-break: break-all; word-wrap: break-word*/}
/*\\
title: $:/core/modules/widgets/danielo/context-widget.js
type: application/javascript
module-type: widget

Edit-text widget

\*/
(function(){

/*jslint node: true, browser: true */
/*global $tc: false */
"use strict";

var Widget = require("$:/core/modules/widgets/widget.js").widget;
var contextWidget = function(parseTreeNode,options) {
	this.initialise(parseTreeNode,options);
};

/*
Inherit from the base widget class
*/
contextWidget.prototype = new Widget();

/*
Render this widget into the DOM
*/
contextWidget.prototype.render = function(parent,nextSibling) {
   // Save the parent dom node
	this.parentDomNode = parent;
	// Compute our attributes
	this.computeAttributes();
	// Execute our logic
	this.execute();
    
  if(this.term && this.term.length>3){
     
      this.createRegexp();
      var matches = this.executeRegexp();
	  if(matches.length > 0){ 
        this.domNode = this.document.createElement(this.element);
        this.domNode.className="tw-context";
        this.composeResults( matches ); //this appends to domNode        
      	// Insert element
      	parent.insertBefore(this.domNode,nextSibling);
      	this.renderChildren(this.domNode,null);
	  	this.domNodes.push(this.domNode);
      }
  }
	
};

/*
Compute the internal state of the widget
*/
contextWidget.prototype.execute = function() {
	// Get the parameters from the attributes
    this.matchedClass = this.getAttribute("matchClass","matched");
	this.tiddler = this.getAttribute( "tiddler",this.getVariable("currentTiddler") );
    this.term =  this.getAttribute("term",this.getAttribute("searchTerm"));
	this.contextLength = this.getAttribute("length",50);
    this.before = this.getAttribute("before",this.contextLength);
    this.after = this.getAttribute("after",this.contextLength);
    this.maxMatches = this.getAttribute("maxMatches",10);
    this.element = this.getAttribute("element","pre");
	this.makeChildWidgets();
};

  /*Create the regular expression*/
contextWidget.prototype.createRegexp = function()
{
  var regString = "(\\w+[\\s\\S]{0,#before#})?(#term#)([\\s\\S]{0,#after#}\\w+)?";

  var regString = regString.replace("#before#",this.before).replace("#term#", $tw.utils.escapeRegExp(this.term) ) .replace("#after#",this.after);
  this.regexp = new RegExp(regString,"ig");
  //console.log(regString);
};
/*
execute the regular expresion
*/
contextWidget.prototype.executeRegexp = function()
{
  var text = this.wiki.getTiddlerText(this.tiddler), match,results = new Array();
  while( (match = this.regexp.exec( text ) ) && (results.length < this.maxMatches) )
      { results.push(match) }
  //console.log("matches",results);
  return results;
};

/*
compose the results
matches : array of match objects from regular expression execute
*/
contextWidget.prototype.composeResults = function(matches){
 var result=[], self=this, node = this.domNode,
 dots = textNode("...\n"),
 span = matchedNode( this.term );

  for(var i=0; i < matches.length; i++){
   processMatch( matches[i] );
 }
  
  function processMatch(match){
    if( match.index !== 0) node.appendChild( dots.cloneNode(true) );
    for( var i=1;i<match.length;i++ ) {//match[0] full matched text (all groups together)
      if( match[i] ) {
        if ( match[i].toLowerCase() == self.term.toLowerCase() ) 
          node.appendChild( match[i] == self.term ? span.cloneNode(true) : matchedNode( match[i] ) )
          else
            node.appendChild( textNode( match[i]) )
      }
    }
    if( match.index + match[0].length < match.input.length) node.appendChild( dots.cloneNode(true) );
  }
  
  function textNode(text){ return self.document.createTextNode(text) }
  function matchedNode(text) { 
    var node = self.document.createElement("span"); node.appendChild( textNode(text) );  node.className = self.matchedClass;
    return node }
  
};
/*
Selectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering
*/
contextWidget.prototype.refresh = function(changedTiddlers) {
	var changedAttributes = this.computeAttributes();
	if(changedAttributes.tiddler || changedAttributes.term || changedAttributes.length || changedAttributes.matchedClass) {
		this.refreshSelf();
		return true;
	}
    return this.refreshChildren(changedTiddlers);
};

exports.context = contextWidget;

})();
{
    "tiddlers": {
        "$:/plugins/felixhayashi/hotzone/config.js": {
            "title": "$:/plugins/felixhayashi/hotzone/config.js",
            "text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/config.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.config={classNames:{storyRiver:\"tc-story-river\",tiddlerFrame:\"tc-tiddler-frame\",tiddlerTitle:\"tc-title\"},references:{userConfig:\"$:/config/hotzone/focusOffset\",focussedTiddlerStore:\"$:/temp/focussedTiddler\"},checkbackTime:$tw.utils.getAnimationDuration()}})();",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/hotzone/hotzone.js": {
            "title": "$:/plugins/felixhayashi/hotzone/hotzone.js",
            "text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/hotzone.js\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.name=\"hotzone\";exports.platforms=[\"browser\"];exports.after=[\"story\"];exports.synchronous=true;exports.startup=function(){var t=require(\"$:/plugins/felixhayashi/hotzone/config.js\").config;var e=null;var i=document.getElementsByClassName(t.classNames.storyRiver)[0];var r=$tw.wiki.getTiddlerData(t.references.userConfig,{});var s=isNaN(parseInt(r.focusOffset))?150:parseInt(r.focusOffset);var a=function(e,i,r){if(!(e instanceof Element))return;if(!$tw.utils.hasClass(e,t.classNames.tiddlerFrame))return;var s=e.getElementsByClassName(t.classNames.tiddlerTitle)[0];if(s){var a=s.innerText||s.textContent;return a.trim()}};var n=function(e,i){$tw.wiki.addTiddler(new $tw.Tiddler({title:t.references.focussedTiddlerStore,text:e},$tw.wiki.getModificationFields()));if(i){var r=document.getElementsByClassName(\"hzone-focus\")[0];if(r){$tw.utils.removeClass(r,\"hzone-focus\")}$tw.utils.addClass(i,\"hzone-focus\")}};var l=function(){var r=$tw.wiki.getTiddler(\"$:/StoryList\");if(r&&r.fields.list.length){var l=null;var o=Number.MAX_VALUE;var f=i.children;var u=t.classNames.tiddlerFrame;for(var d=f.length;d--;){if($tw.utils.hasClass(f[d],u)){var c=f[d].getBoundingClientRect();var v=Math.min(Math.abs(s-c.top),Math.abs(s-c.bottom));if(v<o){l=f[d];o=v}}}var w=a(l);if(w!==e&&$tw.wiki.getTiddler(w)){e=w;n(e,l);return}}else if(e){e=\"\";n(e)}};var o=function(t){var e;var i=false;return function(r,s){var a=this;if(i&&!s){}else{i=s;if(e!=null){clearTimeout(e)}e=setTimeout((function(){e=null;i=false;t.apply(a)}),r)}}};var f=o(l);var u=function(t){if(t[\"$:/HistoryList\"]){if(!$tw.wiki.tiddlerExists(\"$:/HistoryList\"))return;var e=$tw.wiki.getTiddler(\"$:/HistoryList\").fields[\"current-tiddler\"];var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");var r=i.indexOf(e)>=0;if(!r)return;f($tw.utils.getAnimationDuration()+10,true)}else if(t[\"$:/StoryList\"]){f($tw.utils.getAnimationDuration()+10,true)}};var d=function(t){f(300,false)};$tw.wiki.addEventListener(\"change\",u);window.addEventListener(\"scroll\",d,false);d()}})();",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/plugins/felixhayashi/hotzone/Configuration": {
            "title": "$:/plugins/felixhayashi/hotzone/Configuration",
            "text": "Please see the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information on the options.\n\nSave and reload the wiki to activate changes.\n\n<table>\n  <tr>\n    <th align=\"left\">Focus offset:</th>\n    <td><$edit-text tiddler=\"$:/config/hotzone/focusOffset\" tag=\"input\" default=\"71px\" /></td>\n  </tr>\n</table>"
        },
        "$:/temp/focussedTiddler": {
            "title": "$:/temp/focussedTiddler"
        },
        "$:/plugins/felixhayashi/hotzone/License": {
            "title": "$:/plugins/felixhayashi/hotzone/License",
            "text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-HotZone/blob/master/LICENSE"
        },
        "$:/plugins/felixhayashi/hotzone/Readme": {
            "title": "$:/plugins/felixhayashi/hotzone/Readme",
            "text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information."
        }
    }
}
{
    "tiddlers": {
        "$:/plugins/felixhayashi/tiddlymap/layout": {
            "text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline \n\nbody .tc-page-container-wrapper.tc-modal-displayed{-webkit-filter:inherit;-moz-filter:inherit;filter:inherit}body .tc-modal-wrapper{z-index:1010}body .tc-modal-wrapper .tc-modal-header svg{vertical-align:sub}body .tc-modal-wrapper .tc-modal-header h3{line-height:10px}body .tc-modal-wrapper .tc-modal-body{min-height:250px;max-height:70vh;padding-top:0px;padding-bottom:0px;overflow:auto}body .tc-modal-wrapper .tc-modal-footer{padding:8px}body .tc-modal-wrapper .tc-modal-footer .tmap-dialog-button{font-weight:bold}body .tc-modal-wrapper .tc-modal-footer .tmap-hidden-close-button{display:none}table.tmap-table tr:nth-child(odd),.tc-modal-body table.tmap-config-table tr:nth-child(odd){background-color:#F0F0F0}table.tmap-table tr:nth-child(even),.tc-modal-body table.tmap-config-table tr:nth-child(even){background-color:#FFFFFF}.tmap-save-canvas-preview{text-align:center;background:lightgray}.tmap-save-canvas-preview img{background-color:white;max-width:100%;max-height:100px;border:1px solid red}.tmap-list-separator{display:block;background-color:#efefef;margin:10px 0 5px 0;cursor:default;border-bottom:1px dotted gray;font-weight:bold;font-size:0.8em}.tmap-unicode-icon{width:1em;display:inline-block;text-align:center;color:black}html .tmap-link{color:#5778D8}html .tmap-link:hover{color:white;background:#5778D8}html .tmap-small-list,html .tmap-smaller-list,html .tmap-very-small-list{overflow:auto;min-height:2em;max-height:9em;display:block}html .tmap-smaller-list{max-height:7em}html .tmap-very-small-list{max-height:5empx}html .tc-tiddler-controls button.tmap-active-button svg{fill:#888888}html #tmap-node-filter-dialog #tmap-filter-tips{font-size:0.8em}html #tmap-node-filter-dialog textarea{height:100px;max-height:300px;overflow:auto;width:100%;font-size:11px;font-family:\"Courier New\", Courier, monospace}@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-desktop-editor .tmap-widget:not(.tmap-fullscreen){display:none}}@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-mobile-editor{display:none}.tc-modal-wrapper{z-index:1010}.tc-modal-wrapper .tc-modal{boder:1px solid #999999;left:calc(50% - 400px);width:802px}.tc-modal-wrapper .tc-modal-body{left:calc(50% - 400px);width:800px}}@-o-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@keyframes flash fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-o-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-moz-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-webkit-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@keyframes flash fadeout-keyframes{0%{opacity:1}100%{opacity:0}}.tmap-config-widget{background:#F0F0F0;padding:5px;margin:5px 0;box-sizing:border-box;display:block}.tmap-config-widget .vis-network{display:none}.tmap-config-widget .vis-configuration-wrapper{width:100%}.tmap-config-widget .vis-configuration-wrapper .vis-config-rangeinput{height:inherit;margin-left:4px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item{width:100%;height:inherit;background:none;padding-left:0px;left:0}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item.tmap-vis-config-item-active .vis-config-label::after{content:\"(inherited)\";position:absolute;display:inline-block;margin-left:10px;-o-animation:fadein-keyframes 1s;-moz-animation:fadein-keyframes 1s;-webkit-animation:fadein-keyframes 1s;animation:fadein-keyframes 1s;content:\"✔\";color:green;font-weight:bold;font-size:15px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item button.tmap-config-item-reset{vertical-align:top;margin-left:5px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-range{width:150px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-range::-moz-range-track{width:150px !important}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-label{width:150px}.tmap-config-widget::after{clear:both;content:\"\";display:block}.tmap-flash-message{border:1px solid lightgray;padding:5px;margin:6px 0;display:block;color:#333333}.tmap-flash-message.tmap-info,.tmap-flash-message.tmap-plain,.tmap-flash-message.tmap-neutral{background:#F0F0F0}.tmap-flash-message.tmap-info::before,.tmap-flash-message.tmap-plain::before,.tmap-flash-message.tmap-neutral::before{content:\"i\";display:inline-block;border-radius:50%;width:0.8em;border:2px solid;font-family:serif;text-align:center;height:0.8em;font-weight:bold;line-height:0.8em;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-valid,.tmap-flash-message.tmap-success{background:#D1EED4}.tmap-flash-message.tmap-valid::before,.tmap-flash-message.tmap-success::before{content:\"i\";display:inline-block;border-radius:50%;width:0.8em;border:2px solid;font-family:serif;text-align:center;height:0.8em;font-weight:bold;line-height:0.8em;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-warning{background:#FFF6D1}.tmap-flash-message.tmap-warning::before{content:\"\";display:inline-block;background:url(<<tmap \"datauri\" \"$:/core/images/warning\" \"\">>);display:inline-block;width:1em;height:1em;background-size:100% 100%;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-malformed,.tmap-flash-message.tmap-invalid,.tmap-flash-message.tmap-danger{background:#EED5D1}.tmap-flash-message.tmap-malformed::before,.tmap-flash-message.tmap-invalid::before,.tmap-flash-message.tmap-danger::before{content:\"\";display:inline-block;background:url(<<tmap \"datauri\" \"$:/core/images/warning\" \"\">>);display:inline-block;width:1em;height:1em;background-size:100% 100%;vertical-align:text-top;margin-right:2px}.tmap-widget{background:#FFFFFF;width:auto;position:relative;border:1px dotted lightgray;padding:2px;color:#666;display:block}.tmap-widget .tmap-download-canvas{display:none}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active){cursor:pointer}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active) .vis-navigation{display:none}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active):hover:before{color:gray;background:white;content:\"Click to use\";font-size:14px;font-weight:bold;right:calc(50% - 65px - 5px);position:absolute;text-align:center;top:calc(50% - 14px - 5px);width:130px;z-index:2000;padding:5px;pointer-events:none;background-color:rgba(255,255,255,0.3)}.tmap-widget .tmap-loading-bar{display:none;position:absolute;text-align:center;font-size:2em;padding:10px;top:50%;background:rgba(245,245,245,0.5);z-index:1;width:250px;margin:auto;left:0px;right:0px}.tmap-widget .tmap-vis-graph{height:calc(100% - 35px)}.tmap-widget.tmap-no-buttons .vis-navigation{display:none}.tmap-widget.tmap-advanced-editor .tmap-topbar{background:#d6d9d8}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-active-button{color:#488DCD}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-active-button svg{fill:#488DCD}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-unicode-button{font-size:1.5em;vertical-align:bottom;height:28px;fill:#555555}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-unicode-button svg{vertical-align:baseline}.tmap-widget .tmap-menu-bar{width:100%}.tmap-widget .tmap-topbar{background:#F5F5F5;border-bottom:1px solid lightgray;padding:3px 5px;height:35px;position:relative}.tmap-widget .tmap-topbar .tmap-view-label{width:100%;text-align:center;font-weight:bold;padding-top:3px}.tmap-widget .tmap-topbar .tmap-focus-button{position:absolute;right:10px;top:6px}.tmap-widget .tmap-topbar .tmap-focus-button input{width:140px}.tmap-widget .tmap-topbar .tmap-search-dropdown{position:relative}.tmap-widget .tmap-topbar .tmap-search-dropdown .tc-drop-down{position:absolute;z-index:999;right:0px}.tmap-widget .tmap-topbar [hidden]{display:none}.tmap-widget .tmap-topbar select{width:30%;max-width:200px;word-wrap:initial;padding:0px;height:28px}.tmap-widget .tmap-topbar button{line-height:inherit;color:#666}.tmap-widget .tmap-topbar>*{display:inline-block}.tmap-widget .tmap-topbar .tmap-separator:after{color:#bdbdbd;margin:3px;content:\" | \"}.tmap-widget .tmap-topbar .tc-edit-add-tag .tc-add-tag-name input{width:70%}.tmap-widget .tmap-topbar .tc-sidebar-header{text-shadow:none}.tmap-widget .tmap-topbar .tc-edit-tags{border:none;padding:inherit;box-shadow:none}.tmap-widget.tmap-static-mode .tmap-topbar{height:initial}.tmap-widget.tmap-static-mode .tmap-vis-graph{text-align:center;cursor:not-allowed}.tmap-widget.tmap-static-mode .tmap-vis-graph:not(.tmap-graph-placeholder):hover::before{box-shadow:10px 10px 5px lightgray;color:gray;background:white;content:\"Static\";font-size:18px;font-weight:bold;left:50%;margin-left:-100px;position:absolute;text-align:center;top:50px;width:200px;z-index:2000;padding:5px;pointer-events:none}.tmap-widget.tmap-static-mode .tmap-vis-graph.tmap-graph-placeholder::before{content:\"No Preview\";display:block;text-align:center;padding:20px}.tmap-widget .tc-drop-down{min-width:170px;padding:5px;margin:5px 0}.tmap-widget .tc-drop-down button,.tmap-widget .tc-drop-down a{padding:0 2px;text-decoration:none}.tmap-widget .tc-drop-down button:hover,.tmap-widget .tc-drop-down a:hover{color:#ffffff}.tmap-widget .tc-drop-down button svg,.tmap-widget .tc-drop-down a svg{vertical-align:middle}.tmap-widget .tc-block-dropdown{width:370px;min-width:370px;padding:5px;margin:15px 0 0 -370px}.tmap-widget .tc-block-dropdown a{display:inline;padding:0px}.tmap-widget.tmap-plain-design{border:none;padding:0px}.tmap-widget.tmap-plain-design .tmap-topbar{display:none}.tc-sidebar-scrollable .tmap-widget{position:absolute;min-height:350px}.tmap-widget div.vis-network .vis-edit-mode{height:26px}.tmap-widget div.vis-network .vis-manipulation{height:34px;border-top:1px solid #d6d9d8;background:rgba(245,245,245,0.7)}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled{right:15px}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled.tmap-fullscreen-button{bottom:90px;background-image:url(<<tmap \"datauri\" \"$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png\" \"\">>)}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled.tmap-halfscreen-button{bottom:130px;background-image:url(<<tmap \"datauri\" \"$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png\" \"\">>)}.tmap-widget div.vis-network .vis-navigation .vis-button:hover{box-shadow:0 0 3px 3px rgba(75,75,75,0.3)}.tmap-widget div.vis-network .vis-navigation .vis-button:hover:before{background:beige;display:block;color:black;padding:3px;position:relative;border:1px solid lightgray;width:80px;left:-100px;top:-50px;z-index:1000;text-align:center}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-up:before{left:30px;content:\"Scroll up\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-down:before{left:30px;content:\"Scroll down\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-right:before{left:30px;content:\"Scroll right\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-left:before{left:30px;content:\"Scroll left\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomOut:before{content:\"Zoom out\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomIn:before{content:\"Zoom in\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomExtends:before{content:\"Fit whole graph\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.tmap-fullscreen-button:before{content:\"Toggle Fullscreen\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.tmap-halfscreen-button:before{content:\"Toggle Halfscreen\"}.tc-dropzone>.tc-story-river .tmap-widget .vis-navigation .tmap-halfscreen-button{display:none}.tc-dropzone>.tc-story-river .tmap-widget:not(.tmap-fullscreen) .vis-navigation .vis-button{display:none}.tc-dropzone>.tc-story-river .tmap-widget:hover .vis-navigation .vis-button.tmap-fullscreen-button{display:block}.tc-dropzone>.tc-story-river .tmap-widget:hover .vis-navigation .vis-button.vis-zoomExtends{display:block}body.tmap-has-fullscreen-widget{overflow:hidden}body.tmap-has-fullscreen-widget .tmap-widget.tmap-fullscreen{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important}body.tmap-has-fullscreen-widget .tc-dropzone>*.tmap-has-fullscreen-widget{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important}body.tmap-has-fullscreen-widget .tc-dropzone>*:not(.tmap-has-fullscreen-widget){display:none}body.tmap-has-halfscreen-widget .tmap-widget.tmap-halfscreen{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important;position:absolute !important;border-left:1px solid lightgray !important}.tc-modal-footer .tmap-hidden-close-button{display:none}.tmap-modal-content{position:relative;padding:1em 0;padding-top:0}.tmap-modal-content table tr td{vertical-align:top}.tmap-modal-content :not(pre)>code{padding:1px;font-size:0.9em;position:relative;top:-1px}.tmap-modal-content :not(pre)>code{color:#666}.tmap-modal-content .tc-tab-set .tc-tab-content{margin-top:0.5em}.tmap-modal-content .tc-image-button{font-size:14px}.tmap-modal-content fieldset{margin:0px}.tmap-modal-content fieldset legend{font-weight:bold}.tc-modal-body .tmap-modal-editor>p{margin:0px}.tc-modal-body .tmap-modal-editor .tmap-template-select select{width:50%}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame{margin:auto;width:auto}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame .tc-tiddler-controls{display:none}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame .tc-tiddler-title{display:none}.tc-modal-body table{margin:6px 0;border:none;width:100%}.tc-modal-body table td,.tc-modal-body table th{border:1px solid lightgray}.tc-modal-body table.tmap-key-value-table th{width:30%;background-color:#F0F0F0}.tc-modal-body table.tmap-config-table.tmap-large-input tr td:last-child{width:20%}.tc-modal-body table.tmap-config-table.tmap-small-input tr td:last-child{width:60%}.tc-modal-body table.tmap-config-table tr td{border:none;vertical-align:top;padding:5px}.tc-modal-body table.tmap-config-table tr td:first-child{width:15%}.tc-modal-body table.tmap-config-table tr td:last-child{width:40%}.tc-modal-body table.tmap-config-table tr td input:not([type=radio]),.tc-modal-body table.tmap-config-table tr td textarea,.tc-modal-body table.tmap-config-table tr td select{width:100%;word-wrap:normal}.tc-modal-body table.tmap-config-table tr td textarea{height:100%}.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch input,.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch textarea,.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch select{width:auto}.tc-modal-body table.tmap-config-table tr td div.tmap-button-wrapper{text-align:center}.tc-modal-body table.tmap-config-table tr td .tmap-note{margin-top:0.5em}.tc-modal-body table.tmap-config-table tr td .tmap-description{font-style:italic}#tmap-element-type-manager>div:first-child{height:50vh;float:left;width:21%;background:linear-gradient(90deg, #f5f5f5 0%, #fff 50%)}#tmap-element-type-manager>div:first-child .tmap-searchbar{padding:1em 0 0 0}#tmap-element-type-manager>div:first-child .tmap-searchbar input{width:calc(100% - 36px)}#tmap-element-type-manager>div:first-child .tmap-searchbar button{width:30px;float:right}#tmap-element-type-manager>div:first-child ul{height:calc(100% - 65px);overflow:auto;margin-top:1em;padding:0}#tmap-element-type-manager>div:first-child ul.no-bullets li{list-style:none}#tmap-element-type-manager>div:first-child ul li{white-space:nowrap}#tmap-element-type-manager>div:first-child ul li .tmap-ranking{width:30px;display:inline-block}#tmap-element-type-manager>div:last-child{height:100%;width:calc(79% - 15px);float:right}#tmap-element-type-manager>div:last-child .tc-tab-set .tc-tab-content{overflow:auto;height:50vh}.tmap-manage-node-types .tmap-edge-type-specific{display:none !important}.tmap-manage-edge-types .tmap-node-type-specific{display:none !important}.tmap-modal-fullscreen-editor .tc-tab-content p{margin:1em 0}.tmap-has-pending-template{background-color:#C1EDC4}#tmap-search-table td{border:none;padding-left:0px}#tmap-search-table td:first-child{width:30px}#tmap-search-table b{display:inline-block;width:40px;text-align:right}#tmap-search-table ul{padding-left:20px;margin:1em 0 0 0}#tmap-search-table ul li{list-style:inherit}#tmap-search-table ul button{text-align:left}button.tmap-go-back{margin-bottom:1em;font-weight:bold}.tmap-badges>span,.tmap-badge{background:gray;font-size:11px;color:white;padding:3px 4px;display:inline-block;font-weight:bold;border-radius:2px;line-height:1em;cursor:help}.tmap-badges>span.tmap-red-flag,.tmap-badge.tmap-red-flag{background:red}.tmap-popup{display:none;position:absolute;opacity:0;transition:opacity 0.3s ease}.tmap-popup.tmap-popup-active{opacity:1}.tmap-tooltip{box-shadow:3px 3px 10px rgba(0,0,0,0.2);min-width:100px;min-height:50px;max-width:<<tmap option config.sys.popups.width>>;max-height:<<tmap option config.sys.popups.height>>;padding:5px;resize:both;overflow:auto;cursor:auto;font-family:verdana;font-size:14px;background-color:#f5f4ed;border:1px solid #808074;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.tmap-tooltip[style*=\"height\"]{max-height:none !important}.tmap-tooltip[style*=\"width\"]{max-width:none !important}.tmap-quick-connect{font-size:0.7em}.tmap-quick-connect p{padding-left:0;padding-right:0}.tmap-quick-connect .tc-drop-down{padding:5px;width:250px;white-space:normal;line-height:1em;position:absolute;z-index:1000;right:50px;background:linear-gradient(45deg, #f5f5f5 0%, #fff 50%, #f5f5f5 100%)}.tmap-quick-connect .tc-drop-down:first-child{padding-top:0;margin-top:0}.tmap-quick-connect .tc-drop-down .title{margin:1.5em 0 0.5em 0;font-weight:bold;color:gray}.tmap-quick-connect .tc-drop-down select{width:80px;word-wrap:initial}.tmap-quick-connect .tc-drop-down table{width:100%;border:none;margin:0.5em 0}.tmap-quick-connect .tc-drop-down table td,.tmap-quick-connect .tc-drop-down table th{padding:3px 3px 3px 0;vertical-align:middle;font-weight:normal;border:none}.tmap-quick-connect .tc-drop-down table td table,.tmap-quick-connect .tc-drop-down table th table{margin:0}.tmap-quick-connect .tc-drop-down .tmap-quick-connect-search-bar,.tmap-quick-connect .tc-drop-down .tmap-quick-connect-existing-bar{background:#F1F1F1;margin-top:0;border-bottom:1px solid #D5D5D5;border-top:1px solid #D5D5D5}.tmap-quick-connect .tc-drop-down table.tmap-quick-connect-search-bar td,.tmap-quick-connect .tc-drop-down th{padding:5px}.tmap-quick-connect .tc-drop-down .tmap-quick-connect-existing-bar{padding:5px}.tmap-quick-connect .tc-drop-down .tmap-connection-table th,.tmap-quick-connect .tc-drop-down .tmap-connection-table td{text-align:left;padding:1px 1px 1px 0}.tmap-quick-connect .tc-drop-down .tmap-connection-table button{width:20px;padding:0px}.tmap-quick-connect .tc-drop-down .tmap-scroll-table{height:120px;overflow:auto;display:block}.tmap-quick-connect .tc-drop-down hr{border:0;height:0;border-top:1px solid rgba(0,0,0,0.1);border-bottom:1px solid rgba(255,255,255,0.3)}.tmap-quick-connect .tc-drop-down a{display:inline;padding:0;color:#5778d8;background:transparent}.tmap-quick-connect .tc-drop-down a:hover{background:transparent;color:#5778d8;text-decoration:underline}.tmap-quick-connect .tc-drop-down button{display:inline-block;padding:0px 3px;text-align:center;color:#333333;line-height:1.0}.tmap-quick-connect .tc-drop-down button:hover{color:#ffffff}.tmap-quick-connect .tc-drop-down button svg{fill:inherit}.tmap-quick-connect .tc-drop-down button svg:hover{fill:#ffffff}\n",
            "title": "$:/plugins/felixhayashi/tiddlymap/layout",
            "type": "text/vnd.tiddlywiki",
            "tags": [
                "$:/tags/Stylesheet"
            ]
        },
        "$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();/* @preserve TW-Guard */ /* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}var AbstractEdgeTypeSubscriber=function(){function e(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},i=t.priority,n=i===undefined?0:i,a=t.skipOthers,s=a===undefined?true:a,u=t.ignore,l=u===undefined?false:u;_classCallCheck(this,e);this.allEdgeTypes=r;this.priority=n;this.skipOthers=s;this.ignore=l}_createClass(e,[{key:\"setTracker\",value:function e(r){this.tracker=r}},{key:\"loadEdges\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"loadEdges\")}},{key:\"canHandle\",value:function e(r){throw new _exception.MissingOverrideError(this,\"canHandle\")}},{key:\"insertEdge\",value:function e(r,t,i){}},{key:\"deleteEdge\",value:function e(r,t,i){}}]);return e}();exports.default=AbstractEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&&(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&&r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractMagicEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e,t){_classCallCheck(this,r);var i=_possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,t));i.edgeTypesByFieldName=_utils2.default.makeHashMap();for(var a in e){var n=e[a];if(i.canHandle(n)){i.edgeTypesByFieldName[n.name]=n}}return i}_createClass(r,[{key:\"getReferencesFromField\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"getReferencesFromField\")}},{key:\"getReferences\",value:function e(r,t,i){var a=_utils2.default.makeHashMap();var n=r.fields;for(var s in n){var u=this.edgeTypesByFieldName[s];if(!u||i&&!i[u.id])continue;var o=this.getReferencesFromField(r,s,t);if(o&&o.length){a[u.id]=o}}return a}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.default=AbstractMagicEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractMagicEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractRefEdgeTypeSubscriber=function(e){_inherits(t,e);function t(){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=this.getReferences(t,r,i);if(!a||!_utils2.default.hasElements(a))return;var s=t.fields[\"tmap.id\"];var n=$tm.tracker.getIdsByTiddlers();var u=this.allEdgeTypes;var l=_utils2.default.getTiddlerRef(t);var o=_utils2.default.makeHashMap();for(var f in a){var c=a[f];if(!c){continue}var p=u[f];for(var d=c.length;d--;){var _=c[d];if(!_||!$tw.wiki.tiddlerExists(_)||_utils2.default.isSystemOrDraft(_)||r&&!r[_]){continue}var b=p.id+$tw.utils.hashString(l+_);o[b]=new _Edge2.default(s,n[_],p.id,b)}}return o}},{key:\"getReferences\",value:function e(t,r,i){throw new _exception.MissingOverrideError(this,\"getReferences\")}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.default=AbstractRefEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractRefEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var s=r[t];s.enumerable=s.enumerable||false;s.configurable=true;if(\"value\"in s)s.writable=true;Object.defineProperty(e,s.key,s)}}return function(r,t,s){if(t)e(r.prototype,t);if(s)e(r,s);return r}}();function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeTypeSubscriberRegistry=function(){function e(r,t,s){_classCallCheck(this,e);this.subscriberClasses=r;this.tracker=s;this.updateIndex(t)}_createClass(e,[{key:\"getAllForType\",value:function e(r){var t=this.allSubscribers;var s=[];for(var i=0,a=t.length;i<a;i++){if(t[i].canHandle(r)){s.push(t[i]);if(t[i].skipOthers){break}}}return s}},{key:\"getAll\",value:function e(){return this.allSubscribers}},{key:\"updateIndex\",value:function e(r){var t=[];var s=this.subscriberClasses;for(var i in s){var a=new s[i](r);a.setTracker(this.tracker);if(a.ignore===true){continue}t.push(a)}t.sort(function(e,r){return r.priority-e.priority});this.allSubscribers=t}}]);return e}();exports.default=EdgeTypeSubscriberRegistry;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/EdgeTypeSubscriberRegistry.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TmapEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TmapEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:0},r)))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\");if(!a){return}var n=this.tracker.getTiddlersByIds();var u=t.fields[\"tmap.id\"];var s=_utils2.default.makeHashMap();for(var l in a){var o=a[l];var d=n[o.to];if(d&&(!r||r[d])&&(!i||i[o.type])){s[l]=new _Edge2.default(u,o.to,o.type,l)}}return s}},{key:\"insertEdge\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});r.id=r.id||_utils2.default.genUUID();a[r.id]={to:r.to,type:i.id};_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"deleteEdge\",value:function e(t,r,i){if(!r.id)return;var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});delete a[r.id];_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"canHandle\",value:function e(t){return true}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.TmapEdgeTypeSubscriber=TmapEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/TmapEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FieldEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FieldEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-field\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return[t.fields[r]]}},{key:\"insertEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,n);return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,undefined);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FieldEdgeTypeSubscriber=FieldEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FieldEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FilterEdgeTypeSubstriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _widget2=_interopRequireDefault(_widget);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FilterEdgeTypeSubstriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-filter\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){var n=t.fields[r];var a=new _widget2.default.widget({});a.setVariable(\"currentTiddler\",t.fields.title);var u=new _widget2.default.widget({},{parentWidget:a});var s=_utils2.default.getMatches(n,i,u);return s}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var a=t.fields[n]||\"\";var u=this.tracker.getTiddlerById(r.to);var s=$tw.utils.stringifyList([u]);if(a.length>0){s=\" \"+s}_utils2.default.setField(t,n,a+s);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FilterEdgeTypeSubstriber=FilterEdgeTypeSubstriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FilterEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.ListEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var ListEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-list\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return $tw.utils.parseStringArray(t.fields[r])}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var s=$tw.utils.parseStringArray(t.fields[n]);s=(s||[]).slice();var a=this.tracker.getTiddlerById(r.to);s.push(a);_utils2.default.setField(t,n,$tw.utils.stringifyList(s));return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=$tw.utils.parseStringArray(t.fields[i.name]);n=(n||[]).slice();var s=this.tracker.getTiddlerById(r.to);var a=n.indexOf(s);if(a>-1){n.splice(a,1)}var u=void 0;if(n.length>0){u=$tw.utils.stringifyList(n)}_utils2.default.setField(t,i.name,u);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.ListEdgeTypeSubscriber=ListEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/ListEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.LinkEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var LinkEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:20},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.id===\"tw-body:link\"}},{key:\"getReferences\",value:function e(t,r,n){if(n&&!n[\"tw-body:link\"]){return}var i=$tw.wiki.getTiddlerLinks(t.fields.title);if(!i||!i.length){return}return{\"tw-body:link\":i}}}]);return t}(_AbstractRefEdgeTypeSubscriber2.default);exports.LinkEdgeTypeSubscriber=LinkEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/LinkEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TranscludeEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t){if(Object.prototype.hasOwnProperty.call(t,n)){e[n]=t[n]}}}return e};var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(r,t,n){if(t)e(r.prototype,t);if(n)e(r,n);return r}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&&(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&&r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TranscludeEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,r);return _possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,_extends({priority:20,ignore:typeof $tw.wiki.getTiddlerTranscludes!==\"function\"},t)))}_createClass(r,[{key:\"canHandle\",value:function e(r){return r.id===\"tw-body:transclude\"}},{key:\"getReferences\",value:function e(r,t,n){if(n&&!n[\"tw-body:transclude\"]){return}var i=$tw.wiki.getTiddlerTranscludes(r.fields.title);if(!i||!i.length){return}return{\"tw-body:transclude\":i}}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.TranscludeEdgeTypeSubscriber=TranscludeEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/TranscludeEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/Edge": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/Edge",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Edge\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var Edge=function e(t,i,s,l){_classCallCheck(this,e);this.from=t;this.to=i;this.type=s;this.id=l||_utils2.default.genUUID()};exports.default=Edge;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/Edge.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/EdgeType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeType",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var n=t.getIdParts(e),o=n.marker,a=n.namespace,i=n.name;e=t.getId(o,a,i);var l=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,env.path.edgeTypes,t.fieldMeta,r));l.id=e;l.marker=o;l.name=i;l.namespace=a;var u=(l.style||{}).arrows;if(u){l.invertedArrow=isArrowEnabled(u,\"from\");l.toArrow=isArrowEnabled(u,\"to\")||isArrowEnabled(u,\"middle\");l.biArrow=l.invertedArrow===l.toArrow;if(l.biArrow){l.toArrow=true;l.invertedArrow=true}}else{l.toArrow=true}Object.freeze(l);return l}_createClass(t,[{key:\"getLabel\",value:function e(){return this.label||this.name}}],[{key:\"getIdParts\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";t=_utils2.default.getWithoutPrefix(t,env.path.edgeTypes+\"/\");var r=t.match(edgeTypeRegex)||[];return{marker:r[1]||\"\",namespace:r[3]&&r[2]||\"\",name:r[3]||r[2]||\"\"}}},{key:\"getId\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];return n?t+(r&&r+\":\")+n:\"tmap:unknown\"}}]);return t}(_MapElementType3.default);EdgeType.getInstance=function(e){return e instanceof EdgeType?e:new EdgeType(e)};EdgeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{label:{},\"show-label\":{}});var isArrowEnabled=function e(t,r){var n=t[r];if(n==null&&r===\"to\"){return true}return(typeof n===\"undefined\"?\"undefined\":_typeof(n))===\"object\"?n.enabled!==false:n===true};var edgeTypeRegex=new RegExp(\"^(_?)([^:_][^:]*):?([^:]*)\");exports.default=EdgeType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/EdgeType.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/MapElementType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/MapElementType",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(t){return typeof t}:function(t){return t&&typeof Symbol===\"function\"&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t};var _createClass=function(){function t(t,e){for(var i=0;i<e.length;i++){var l=e[i];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(t,l.key,l)}}return function(e,i,l){if(i)t(e.prototype,i);if(l)t(e,l);return e}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/MapElementType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}var MapElementType=function(){function t(e,i,l,s){_classCallCheck(this,t);this.id=e;this.root=i;this._fieldMeta=l;this.fullPath=this.root+\"/\"+this.id;this.isShipped=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath);this._load(s||this.fullPath)}_createClass(t,[{key:\"_load\",value:function t(e){if(!e){return}if(typeof e===\"string\"){var i=_utils2.default.startsWith(e,this.root);var l=i?e:this.root+\"/\"+e;this._loadFromTiddler(l)}else if(e instanceof $tw.Tiddler){this._loadFromTiddler(e)}else if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){for(var s in this._fieldMeta){this[s]=e[s]}}}},{key:\"_loadFromTiddler\",value:function t(e){var i=_utils2.default.getTiddler(e);if(!i){return}var l=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath)||{};var s=$tw.utils.extend({},l.fields,i.fields);for(var r in this._fieldMeta){var a=this._fieldMeta[r].parse;var f=s[r];this[r]=a?a.call(this,f):f}}},{key:\"exists\",value:function t(){return _utils2.default.tiddlerExists(this.fullPath)}},{key:\"setStyle\",value:function t(e,i){if(typeof e===\"string\"){e=_utils2.default.parseJSON(e)}if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){if(i){_utils2.default.merge(this.style,e)}else{this.style=e}}}},{key:\"save\",value:function t(e,i){if(!e){e=this.fullPath}else if(typeof e!==\"string\"){return}var l={title:e,text:\"\"};if(!_utils2.default.startsWith(e,this.root)){l.id=this.id}for(var s in this._fieldMeta){var r=this._fieldMeta[s].stringify;l[s]=r?r.call(this,this[s]):this[s]}if(!this.exists()){Object.assign(l,$tw.wiki.getCreationFields())}if(i!==true){Object.assign(l,$tw.wiki.getModificationFields())}$tw.wiki.addTiddler(new $tw.Tiddler(l))}}]);return t}();MapElementType.fieldMeta={description:{},style:{parse:_utils2.default.parseJSON,stringify:JSON.stringify},modified:{},created:{}};exports.default=MapElementType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/MapElementType.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/NodeType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/NodeType",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/NodeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var NodeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);e=typeof e===\"string\"?_utils2.default.getWithoutPrefix(e,$tm.path.nodeTypes+\"/\"):\"tmap:unknown\";var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,$tm.path.nodeTypes,t.fieldMeta,r));Object.freeze(n);return n}_createClass(t,[{key:\"getInheritors\",value:function e(t){return this.scope?_utils2.default.getMatches(this.scope,t||$tw.wiki.allTitles()):[]}}]);return t}(_MapElementType3.default);NodeType.getInstance=function(e){return e instanceof NodeType?e:new NodeType(e)};NodeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{view:{},priority:{parse:function e(t){return isNaN(t)?1:parseInt(t)},stringify:function e(t){return _utils2.default.isInteger(t)?t.toString():\"1\"}},scope:{stringify:_utils2.default.getWithoutNewLines},\"fa-icon\":{},\"tw-icon\":{}});exports.default=NodeType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/NodeType.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var r in i){if(Object.prototype.hasOwnProperty.call(i,r)){e[r]=i[r]}}}return e};var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var ViewAbstraction=function(){function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,e);if(t instanceof e){return t}this._registerPaths(t);if(i.isCreate){if(!this.configTRef){var r=_utils2.default.getRandomLabel({plural:true});this.configTRef=$tw.wiki.generateNewTitle($tm.path.views+\"/\"+r)}this._createView(i)}else if(!e.exists(this.getRoot())){throw new ResourceNotFoundException(\"ViewAbstraction\",t)}}_createClass(e,[{key:\"isLocked\",value:function e(){return $tw.wiki.isShadowTiddler(this.configTRef)}},{key:\"update\",value:function e(t){var i=t.changedTiddlers;if(t[env.path.edgeTypes]||_utils2.default.hasKeyWithPrefix(i,this.getRoot())){this._clearCaches();return true}return false}},{key:\"addPlaceholder\",value:function e(t){_utils2.default.cp(_utils2.default.getTiddlerRef(t),this.snapshotTRef,true)}},{key:\"exists\",value:function t(){return e.exists(this)}},{key:\"getRoot\",value:function e(){return this.configTRef}},{key:\"getCreationDate\",value:function e(t){var i=$tw.wiki.getTiddler(this.configTRef).fields[\"created\"];if(t){return i instanceof Date?$tw.utils.formatDateString(i,\"DDth MMM YYYY\"):\"\"}return i}},{key:\"getLabel\",value:function e(){return _utils2.default.getBasename(this.configTRef)}},{key:\"destroy\",value:function e(){_utils2.default.deleteTiddlers(_utils2.default.getMatches(\"[prefix[\"+this.configTRef+\"]]\"))}},{key:\"getOccurrences\",value:function e(){var t=\"[regexp:text[<\\\\$(tiddlymap|tmap).*?view=.\"+this.getLabel()+\"..*?>]]\";return _utils2.default.getMatches(t)}},{key:\"rename\",value:function t(i){if(typeof i!==\"string\"){return false}if(_utils2.default.inArray(\"/\",i)){$tm.notify('A view name must not contain any \"/\"');return false}var r=this.getLabel();var a=env.path.views+\"/\"+i;var n=this.getRoot();_utils2.default.mv(n,a,true);if($tm.config.sys.defaultView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"defaultView\",i)}if($tm.config.sys.liveTab.fallbackView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"liveTab.fallbackView\",i)}$tw.wiki.each(function(t,a){if(t.fields[\"tmap.open-view\"]===r){_utils2.default.setField(a,\"tmap.open-view\",i);return}if(e.exists(a)){var n=new e(a);var l=n.getNodeData();for(var s in l){if(l[s][\"open-view\"]===r){l[s][\"open-view\"]=i}}n.saveNodeData(l)}});this._clearCaches();this._registerPaths(i)}},{key:\"isEnabled\",value:function e(t){return _utils2.default.isTrue(this.getConfig(t),false)}},{key:\"getConfig\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.configTRef,\"tmap-config\",function(){var e=_utils2.default.getTiddler(i.configTRef).fields;return _utils2.default.getPropertiesByPrefix(e,\"config.\")});var a=t&&_utils2.default.startsWith(t,\"config.\")?t:\"config.\"+t;return t?r[a]:r}},{key:\"setConfig\",value:function e(){for(var t=arguments.length,i=Array(t),r=0;r<t;r++){i[r]=arguments[r]}if(i[0]==null){return}if(i.length===1&&_typeof(i[0])===\"object\"){for(var a in i[0]){this.setConfig(a,i[0][a])}}else if(i.length===2&&typeof i[0]===\"string\"){var n=_utils2.default.getWithoutPrefix(i[0],\"config.\");var l=i[1];if(l===undefined){return}var s=this.getConfig();if(l===null){$tm.logger(\"debug\",\"Removing config\",n);delete s[\"config.\"+n]}else{if(n===\"edge_type_namespace\"){var o=l.match(/[^:]+/);l=o?o[0]:\"\"}}$tm.logger(\"log\",\"Setting config\",n,l);s[\"config.\"+n]=l;$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(this.configTRef),s))}else{throw new(Function.prototype.bind.apply(_exception.InvalidArgumentException,[null].concat(i)))}}},{key:\"isNodeIncludedById\",value:function t(i){var r=$tw.utils.escapeRegExp(e._getNodeIdFilterPart(i));return this.getNodeFilter(\"raw\").match(r)}},{key:\"setNodeFilter\",value:function e(t,i){t=t.replace(/[\\n\\r]/g,\" \");if(this.getNodeFilter(\"raw\")===t){return}_utils2.default.setField(this.nodeFilterTRef,\"filter\",t);$tm.logger(\"debug\",\"Node filter set to\",t)}},{key:\"setEdgeTypeFilter\",value:function e(t){t=t.replace(/[\\n\\r]/g,\" \");if(this.getEdgeTypeFilter(\"raw\")===t){return}_utils2.default.setField(this.edgeTypeFilterTRef,\"filter\",t);$tm.logger(\"debug\",\"Edge filter set to\",t)}},{key:\"addNode\",value:function t(i){if(!this.isNodeIncludedById(i)){if(_utils2.default.isTrue($tm.config.sys.alwaysAddNodeIdToViewFilter)||!_utils2.default.isMatch(i.tRef,this.getNodeFilter(\"compiled\"))){var r=e._getNodeIdFilterPart(i);var a=\" \";this.setNodeFilter(this.getNodeFilter(\"raw\")+a+r)}this.saveNodePosition(i)}}},{key:\"removeNode\",value:function t(i){if(!this.isNodeIncludedById(i)){return false}var r=e._getNodeIdFilterPart(i);var a=this.getNodeFilter(\"raw\").replace(r,\"\");this.setNodeFilter(a);return true}},{key:\"getEdgeTypeFilter\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.edgeTypeFilterTRef,\"tmap-edgeTypeFilter\",function(){var e=$tm.indeces.allETy;var t=Object.keys(e);var r=$tw.wiki.getTiddler(i.edgeTypeFilterTRef);var a={};a.raw=r&&r.fields.filter||\"\";a.pretty=_utils2.default.getPrettyFilter(a.raw);a.matches=_utils2.default.getEdgeTypeMatches(a.raw,e);a.whitelist=_utils2.default.getLookupTable(a.matches);return a});return t?r[t]:r}},{key:\"isEdgeTypeVisible\",value:function e(t){return _utils2.default.isEdgeTypeMatch(_EdgeType2.default.getInstance(t).id,this.getEdgeTypeFilter(\"raw\"))}},{key:\"getNodeFilter\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.nodeFilterTRef,\"tmap-nodeFilter\",function(){var e=_utils2.default.makeHashMap();var t=$tw.wiki.getTiddler(i.nodeFilterTRef);e.raw=t&&t.fields.filter||\"\";e.pretty=_utils2.default.getPrettyFilter(e.raw);e.compiled=$tw.wiki.compileFilter(e.raw);return e});return t?r[t]:r}},{key:\"getNodeData\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.mapTRef,\"tmap-map\",function(){return _utils2.default.parseFieldData(i.mapTRef,\"text\",{})});return t?r[t]:r}},{key:\"equals\",value:function t(i){return i===this||e.exists(i)&&new e(i).getRoot()===this.getRoot()}},{key:\"saveNodeData\",value:function e(){var t=this.getNodeData();for(var i=arguments.length,r=Array(i),a=0;a<i;a++){r[a]=arguments[a]}if(r.length===2){if(_typeof(r[1])===\"object\"){if(r[1]===null){delete t[r[0]]}else{t[r[0]]=Object.assign(t[r[0]]||{},r[1])}}}else if(r.length===1&&_typeof(r[0])===\"object\"){$tm.logger(\"log\",\"Storing data in\",this.mapTRef);Object.assign(t,r[0])}else{throw new(Function.prototype.bind.apply(_exception.InvalidArgumentException,[null].concat(r)))}_utils2.default.writeFieldData(this.mapTRef,\"text\",t,$tm.config.sys.jsonIndentation)}},{key:\"saveNodePosition\",value:function e(t){if(t.id&&t.x!=null&&t.y!=null){this.saveNodeData(t.id,{x:t.x,y:t.y})}}},{key:\"saveNodePositions\",value:function e(t){var i=this.getNodeData();for(var r in t){i[r]=i[r]||{};i[r].x=t[r].x;i[r].y=t[r].y}this.saveNodeData(i)}},{key:\"setCentralTopic\",value:function e(t){this.setConfig(\"central-topic\",t)}},{key:\"saveNodeStyle\",value:function e(t,i){var r=this.getNodeData(t)||{};var a={x:r.x,y:r.y};for(var n in r){delete r[n]}this.saveNodeData(t,_extends({},i,a))}},{key:\"_registerPaths\",value:function t(i,r){this.configTRef=e._getRootPath(i);this.mapTRef=this.configTRef+\"/map\";this.nodeFilterTRef=this.configTRef+\"/filter/nodes\";this.edgeTypeFilterTRef=this.configTRef+\"/filter/edges\";this.snapshotTRef=this.getRoot()+\"/snapshot\"}},{key:\"_clearCaches\",value:function e(){_utils2.default.getMatches(\"[prefix[\"+this.getRoot()+\"]]\").forEach(function(e){$tw.wiki.clearCache(e)})}},{key:\"_createView\",value:function t(){var i=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},r=i.isForce,a=i.protoView,n=i.isHidden;if(e.exists(this)){if(!r){return}this.destroy()}if(e.exists(a)){_utils2.default.cp(new e(a).getRoot(),this.configTRef,true)}var l={title:this.configTRef,id:_utils2.default.genUUID()};if(!n){l[$tm.field.viewMarker]=true}$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(this.configTRef),l));this.setEdgeTypeFilter(env.filter.defaultEdgeTypeFilter)}}],[{key:\"_getNodeIdFilterPart\",value:function e(t){var i=(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"?t.id:t;return\"[field:tmap.id[\"+i+\"]]\"}},{key:\"_getRootPath\",value:function t(i){if(i instanceof e){return i.configTRef}if(i instanceof $tw.Tiddler){i=i.fields.title}if(typeof i===\"string\"){var r=_utils2.default.getWithoutPrefix(i,$tm.path.views+\"/\");if(r&&!_utils2.default.hasSubString(r,\"/\")){return $tm.path.views+\"/\"+r}}}},{key:\"exists\",value:function t(i){if(!i){return false}if(i instanceof e){i=i.configTRef}else{i=e._getRootPath(i)}return _utils2.default.tiddlerExists(i)}}]);return e}();exports.default=ViewAbstraction;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/ViewAbstraction.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/Popup": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/Popup",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function Popup(e,t){t=t||{};this._parentDomNode=e;this._domNode=document.createElement(\"div\");this._domNode.style.display=\"none\";this._domNode.className=\"tmap-popup\";this._parentDomNode.appendChild(this._domNode);$tw.utils.addClass(this._domNode,t.className);this._isEnabled=true;this._isPreventShowOrHide=false;this._isHideOnClick=!!t.hideOnClick;this._timeoutShow=null;this._timeoutHide=null;this._isDisplayNoneAfterAnimation=true;var i=parseInt(t.leavingDelay);this._hideDelayLeavingPopup=_utils2.default.isInteger(i)?i:200;i=parseInt(t.hideDelay);this._hideDelay=_utils2.default.isInteger(i)?i:200;i=parseInt(t.showDelay);this._showDelay=_utils2.default.isInteger(i)?i:200;_utils2.default.bindTo(this,[\"_show\",\"_hide\",\"_handleEnter\",\"_handleLeave\",\"_handleAnimationEnd\",\"_handleClick\"]);this._listeners={mouseenter:this._handleEnter,mouseleave:this._handleLeave,click:[this._handleClick,true]};var s=this._handleAnimationEnd;this._listeners[$tw.utils.convertEventName(\"animationEnd\")]=s;this._listeners[$tw.utils.convertEventName(\"transitionEnd\")]=s;_utils2.default.setDomListeners(\"add\",this._domNode,this._listeners,false)}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Popup\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */Popup.prototype._handleEnter=function(e){this._isPreventShowOrHide=true};Popup.prototype._handleLeave=function(e){this._isPreventShowOrHide=false;this.hide(this._hideDelayLeavingPopup)};Popup.prototype._handleClick=function(e){if(this._isHideOnClick){this._hide(true)}};Popup.prototype._handleAnimationEnd=function(){if(this._isDisplayNoneAfterAnimation){this._domNode.style.display=\"none\"}};Popup.prototype._hide=function(e){if(!e&&this._isPreventShowOrHide)return;this._isDisplayNoneAfterAnimation=true;this._isPreventShowOrHide=false;$tw.utils.removeClass(this._domNode,\"tmap-popup-active\")};Popup.prototype._show=function(e,t){if(this._isPreventShowOrHide||$tm.mouse.ctrlKey||!this._isEnabled){return}this._domNode.style.display=\"none\";$tw.utils.removeClass(this._domNode,\"tmap-popup-active\");this._domNode.removeAttribute(\"style\");_utils2.default.removeDOMChildNodes(this._domNode);var i=this._domNode.appendChild(document.createElement(\"div\"));if(typeof t===\"function\"){t(e,i)}else{i.innerHTML=t}if(!i.childNodes.length)return;var s=this._parentDomNode.getBoundingClientRect();var o=$tm.mouse.clientX;var n=$tm.mouse.clientY;this._domNode.style.display=\"block\";var d=this._domNode.getBoundingClientRect();var l=s.right-(o+d.width);var h=o-d.width-s.left;var a=l>h;var u=s.bottom-(n+d.height);var r=n-d.height-s.top;var p=u>r;var _=a?-15:d.width+15;var m=p?-15:d.height+15;this._domNode.style.left=o-s.left-_+\"px\";this._domNode.style.top=n-s.top-m+\"px\";this._isDisplayNoneAfterAnimation=false;$tw.utils.addClass(this._domNode,\"tmap-popup-active\")};Popup.prototype.show=function(e,t,i){this._clearTimeouts();i=_utils2.default.isInteger(i)?i:this._showDelay;this._timeoutShow=setTimeout(this._show,i,e,t)};Popup.prototype.hide=function(e,t){this._clearTimeouts();e=_utils2.default.isInteger(e)?e:this._hideDelay;if(t||e===0){this._hide(t)}else{this._timeoutHide=setTimeout(this._hide,e,t)}};Popup.prototype.setEnabled=function(e){this._isEnabled=e};Popup.prototype.isShown=function(){return this._domNode.style.display===\"block\"};Popup.prototype._clearTimeouts=function(){clearTimeout(this._timeoutShow);clearTimeout(this._timeoutHide);this._timeoutShow=undefined;this._timeoutHide=undefined};exports.default=Popup;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/Popup.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function t(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(t,n.key,n)}}return function(e,i,n){if(i)t(e.prototype,i);if(n)t(e,n);return e}}();function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\ntype: application/SelectionRectangle\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var SelectionRectangle=function(){function t(e,i){_classCallCheck(this,t);this.x1=e;this.x2=e;this.y1=i;this.y2=i}_createClass(t,[{key:\"span\",value:function t(e,i){this.x2=e;this.y2=i}},{key:\"getWidth\",value:function t(){return this.x2-this.x1}},{key:\"getHeight\",value:function t(){return this.y2-this.y1}},{key:\"getRect\",value:function t(){return[this.x1,this.y1,this.getWidth(),this.getHeight()]}},{key:\"isPointWithin\",value:function t(e){var i=e.x,n=e.y;var a=this.x1,r=this.x2,s=this.y1,u=this.y2;var h=Math.min(a,r);var c=Math.max(a,r);var l=Math.min(s,u);var o=Math.max(s,u);return h<i&&i<c&&l<n&&n<o}}]);return t}();exports.default=SelectionRectangle;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/SelectionRectangle.js.map\n",
            "type": "application/SelectionRectangle",
            "module-type": "library"
        },
        "/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js": {
            "title": "/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js",
            "text": "\"use strict\";\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/TypeDefs.js.map\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/config/vis": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/config/vis",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/config/vis\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var visConfig={locale:\"en_EN\",clickToUse:false,autoResize:false,height:\"100%\",width:\"100%\",configure:{enabled:false},interaction:{dragNodes:true,dragView:true,hideEdgesOnDrag:false,hideNodesOnDrag:false,hover:true,navigationButtons:true,multiselect:true,selectable:true,selectConnectedEdges:true,tooltipDelay:600,zoomView:false,keyboard:{enabled:false,speed:{x:10,y:10,zoom:.02},bindToWindow:false}},manipulation:{initiallyActive:true},nodes:{shape:\"box\",widthConstraint:{maximum:160},heightConstraint:{valign:\"center\"},shadow:{enabled:false},color:{border:\"#2B7CE9\",background:\"#97C2FC\"}},edges:{smooth:{enabled:true},color:{color:\"#848484\",inherit:false},arrows:{to:{enabled:true}}},layout:{hierarchical:{enabled:false,levelSeparation:200,nodeSpacing:170,treeSpacing:230,sortMethod:\"directed\",parentCentralization:true,edgeMinimization:true,blockShifting:true,direction:\"UD\"}},physics:{forceAtlas2Based:{gravitationalConstant:-300,springLength:0,springConstant:.2,centralGravity:.015,damping:.4},hierarchicalRepulsion:{nodeDistance:120,centralGravity:0,springLength:100,springConstant:.01,damping:.09},solver:\"forceAtlas2Based\",stabilization:{enabled:true,iterations:1e3,updateInterval:10,onlyDynamicEdges:false,fit:false}}};exports.default=visConfig;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/VisConfig.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/environment": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/environment",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var i=1;i<arguments.length;i++){var a=arguments[i];for(var l in a){if(Object.prototype.hasOwnProperty.call(a,l)){e[l]=a[l]}}}return e};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/environment\ntype: application/javascript\n module-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var path=exports.path={pluginRoot:\"$:/plugins/felixhayashi/tiddlymap\",edgeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes\",nodeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes\",views:\"$:/plugins/felixhayashi/tiddlymap/graph/views\",options:\"$:/plugins/felixhayashi/tiddlymap/config\",dialogs:\"$:/plugins/felixhayashi/tiddlymap/dialog\",footers:\"$:/plugins/felixhayashi/tiddlymap/dialogFooter\",tempRoot:\"$:/temp/tmap\",tempStates:\"$:/temp/tmap/state\",tempPopups:\"$:/temp/tmap/state/popup\",localHolders:\"$:/temp/tmap/holders\"};var ref=exports.ref={defaultViewHolder:\"$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder\",graphBar:\"$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar\",sysUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\",visUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/vis/user\",welcomeFlag:\"$:/plugins/felixhayashi/tiddlymap/flag/welcome\",focusButton:\"$:/plugins/felixhayashi/tiddlymap/misc/focusButton\",sysMeta:\"$:/plugins/felixhayashi/tiddlymap/misc/meta\",liveTab:\"$:/plugins/felixhayashi/tiddlymap/hook/liveTab\",mainEditor:\"$:/plugins/felixhayashi/tiddlymap/hook/editor\",sidebarBreakpoint:\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\"};var misc=exports.misc={unknownEdgeLabel:\"tmap:undefined\",liveViewLabel:\"Live View\",defaultViewLabel:\"Default\",mainEditorId:\"main_editor\",arrows:{in:\"⇦\",out:\"➡\",bi:\"⇄\"}};var config=exports.config={sys:{field:{nodeLabel:\"caption\",nodeIcon:\"icon\",nodeInfo:\"description\",viewMarker:\"isview\"},liveTab:{fallbackView:misc.liveViewLabel},suppressedDialogs:{},edgeClickBehaviour:\"manager\",debug:\"false\",notifications:\"true\",popups:{enabled:\"true\",delay:\"600\",width:\"240px\",height:\"140px\"},jsonIndentation:\"1\",alwaysAddNodeIdToViewFilter:\"true\",editNodeOnCreate:\"false\",singleClickMode:\"false\",nodeFilterNeighbours:\"false\",editorMenuBar:{showNeighScopeButton:\"true\",showRasterMenuButton:\"true\",showScreenshotButton:\"true\"}}};var filter=exports.filter={nodeTypes:\"[prefix[\"+path.nodeTypes+\"]]\",edgeTypes:\"[prefix[\"+path.edgeTypes+\"]]\",views:\"[\"+config.sys.field.viewMarker+\"[true]]\",defaultEdgeTypeFilter:\"-[prefix[_]] -[[tw-body:link]] -[[tw-list:tags]] -[[tw-list:list]]\"};var allSelector=\"[all[tiddlers+shadows]!has[draft.of]]\";var s={allEdgeTypes:allSelector+\" +\"+filter.edgeTypes,allNodeTypes:allSelector+\" +\"+filter.nodeTypes,allViews:allSelector+\" +\"+filter.views,allPotentialNodes:\"[all[tiddlers]!is[system]!has[draft.of]]\"};var selector=exports.selector=_extends({},s,{allEdgeTypesById:s.allEdgeTypes+\" +[removeprefix[\"+path.edgeTypes+\"/]]\",allNodeTypesById:s.allNodeTypes+\" +[removeprefix[\"+path.nodeTypes+\"/]]\",allViewsByLabel:s.allViews+\" +[removeprefix[\"+path.views+\"/]]\"});\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/environment.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/exception": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/exception",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function r(r,t){for(var e=0;e<t.length;e++){var o=t[e];o.enumerable=o.enumerable||false;o.configurable=true;if(\"value\"in o)o.writable=true;Object.defineProperty(r,o.key,o)}}return function(t,e,o){if(e)r(t.prototype,e);if(o)r(t,o);return t}}();function _classCallCheck(r,t){if(!(r instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(r,t){if(!r){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:r}function _inherits(r,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}r.prototype=Object.create(t&&t.prototype,{constructor:{value:r,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(r,t):r.__proto__=t}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/exception\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TiddlyMapError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);var o=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r));o.payload=e;return o}_createClass(t,[{key:\"getPayload\",value:function r(){return this.payload}}]);return t}(Error);var EnvironmentError=exports.EnvironmentError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Critical parts of the underlying system changed: \"+r))}return t}(TiddlyMapError);var DependencyError=exports.DependencyError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"TiddlyMap cannot run without: : \"+r))}return t}(TiddlyMapError);var MissingOverrideError=exports.MissingOverrideError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r.constructor.name+' does not override method \"'+e+'\"'))}return t}(TiddlyMapError);var ResourceNotFoundException=exports.ResourceNotFoundException=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);for(var e=arguments.length,o=Array(e>1?e-1:0),n=1;n<e;n++){o[n-1]=arguments[n]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Cannot resolve \"+r,o))}return t}(TiddlyMapError);var InvalidArgumentException=exports.InvalidArgumentException=function(r){_inherits(t,r);function t(){_classCallCheck(this,t);for(var r=arguments.length,e=Array(r),o=0;o<r;o++){e[o]=arguments[o]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Invalid or missing argument provided\",e))}return t}(TiddlyMapError);\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/exceptions.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/URL": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/URL",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/URL\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/**\n * <<<\n * Lightweight URL manipulation with JavaScript. This library is\n * independent of any other libraries and has pretty simple interface\n * and lightweight code-base. Some ideas of query string parsing\n * had been taken from Jan Wolter.\"\n *\n * @see http://unixpapa.com/js/querystring.html\n * @license MIT\n * @author Mykhailo Stadnyk <mikhus@gmail.com>\n * <<< https://github.com/Mikhus/jsurl\n *\n * @class\n * @param {string} url\n */function Url(t){this.paths=function(t){var e=\"\",r=0,o;if(t&&t.length&&t+\"\"!==t){if(this.isAbsolute()){e=\"/\"}for(o=t.length;r<o;r++){t[r]=encode(t[r])}this.path=e+t.join(\"/\")}t=(this.path.charAt(0)===\"/\"?this.path.slice(1):this.path).split(\"/\");for(r=0,o=t.length;r<o;r++){t[r]=decode(t[r])}return t};this.encode=encode;this.decode=decode;this.isAbsolute=function(){return this.protocol||this.path.charAt(0)===\"/\"};this.toString=function(){return(this.protocol&&this.protocol+\"://\")+(this.user&&encode(this.user)+(this.pass&&\":\"+encode(this.pass))+\"@\")+(this.host&&this.host)+(this.port&&\":\"+this.port)+(this.path&&this.path)+(this.query.toString()&&\"?\"+this.query)+(this.hash&&\"#\"+encode(this.hash))};parse(this,t)}var map={protocol:\"protocol\",host:\"hostname\",port:\"port\",path:\"pathname\",query:\"search\",hash:\"hash\"},defaultPorts={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},parse=function t(e,r){var o=document,s=o.createElement(\"a\"),r=r||o.location.href,i=r.match(/\\/\\/(.*?)(?::(.*?))?@/)||[],n;s.href=r;for(n in map){e[n]=s[map[n]]||\"\"}e.protocol=e.protocol.replace(/:$/,\"\");e.query=e.query.replace(/^\\?/,\"\");e.hash=decode(e.hash.replace(/^#/,\"\"));e.user=decode(i[1]||\"\");e.pass=decode(i[2]||\"\");e.port=defaultPorts[e.protocol]==e.port||e.port==0?\"\":e.port;if(!e.protocol&&!/^([a-z]+:)?\\/\\//.test(r)){var h=new Url(o.location.href.match(/(.*\\/)/)[0]),a=h.path.split(\"/\"),p=e.path.split(\"/\"),c=[\"protocol\",\"user\",\"pass\",\"host\",\"port\"],f=c.length;a.pop();for(n=0;n<f;n++){e[c[n]]=h[c[n]]}while(p[0]==\"..\"){a.pop();p.shift()}e.path=(r.charAt(0)!=\"/\"?a.join(\"/\"):\"\")+\"/\"+p.join(\"/\")}else{e.path=e.path.replace(/^\\/?/,\"/\")}e.paths((e.path.charAt(0)==\"/\"?e.path.slice(1):e.path).split(\"/\"));parseQs(e)},encode=function t(e){return encodeURIComponent(e).replace(/'/g,\"%27\")},decode=function t(e){e=e.replace(/\\+/g,\" \");e=e.replace(/%([ef][0-9a-f])%([89ab][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r,o){var s=parseInt(e,16)-224,i=parseInt(r,16)-128;if(s==0&&i<32){return t}var n=parseInt(o,16)-128,h=(s<<12)+(i<<6)+n;if(h>65535){return t}return String.fromCharCode(h)});e=e.replace(/%([cd][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r){var o=parseInt(e,16)-192;if(o<2){return t}var s=parseInt(r,16)-128;return String.fromCharCode((o<<6)+s)});e=e.replace(/%([0-7][0-9a-f])/gi,function(t,e){return String.fromCharCode(parseInt(e,16))});return e},parseQs=function t(e){var r=e.query;e.query=new function(t){var e=/([^=&]+)(=([^&]*))?/g,r;while(r=e.exec(t)){var o=decodeURIComponent(r[1].replace(/\\+/g,\" \")),s=r[3]?decode(r[3]):\"\";if(this[o]!=null){if(!(this[o]instanceof Array)){this[o]=[this[o]]}this[o].push(s)}else{this[o]=s}}this.clear=function(){for(var t in this){if(!(this[t]instanceof Function)){delete this[t]}}};this.count=function(){var t=0,e;for(e in this){if(!(this[e]instanceof Function)){t++}}return t};this.isEmpty=function(){return this.count()===0};this.toString=function(){var t=\"\",e=encode,r,o;for(r in this){if(this[r]instanceof Function){continue}if(this[r]instanceof Array){var s=this[r].length;if(s){for(o=0;o<s;o++){t+=t?\"&\":\"\";t+=e(r)+\"=\"+e(this[r][o])}}else{t+=(t?\"&\":\"\")+e(r)+\"=\"}}else{t+=t?\"&\":\"\";t+=e(r)+\"=\"+e(this[r])}}return t}}(r)};exports.default=Url;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/url.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.bindTo=exports.getNearestRasterPosition=exports.mod=exports.removeDOMChildNodes=exports.setDomListeners=exports.merge=exports.getRandomLabel=exports.getFirstElementByClassName=exports.pickRandom=exports.hasKeyWithPrefix=exports.getWithoutPrefix=exports.getPropertiesByPrefix=exports.removeArrayElement=exports.isTrue=exports.replaceAll=exports.isInteger=exports.findAndRemoveClassNames=exports.getAncestorWithClass=exports.makeHashMap=exports.getWithoutNewLines=exports.joinAndWrap=exports.parseJSON=exports.hasSubString=exports.inArray=exports.getRandomInt=exports.isEqual=exports.identity=exports.base64=exports.startsWith=exports.getBasename=exports.escapeRegex=exports.hasElements=exports.ucFirst=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var ucFirst=exports.ucFirst=function e(t){return t&&t[0].toUpperCase()+t.slice(1)};var hasElements=exports.hasElements=function e(t){return Object.keys(t).length>0};var escapeRegex=exports.escapeRegex=function e(t){return t.replace(/[-$^?.+*[\\]\\\\(){}|]/g,\"\\\\$&\")};var getBasename=exports.getBasename=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"/\";return t.substring(t.lastIndexOf(r)+1)};var startsWith=exports.startsWith=function e(t,r){return t.substring(0,r.length)===r};var base64=exports.base64=typeof window===\"undefined\"?function(e){return new Buffer(e).toString(\"base64\")}:window.btoa.bind(window);var identity=exports.identity=function e(t){return(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"&&t!==null?JSON.stringify(Object.keys(t).sort().map(function(e){return[e,t[e]]})):null};var isEqual=exports.isEqual=function e(t,r){return identity(t)===identity(r)};var getRandomInt=exports.getRandomInt=function e(t,r){return Math.floor(Math.random()*(r-t)+t)};var inArray=exports.inArray=function e(t,r){return r.indexOf(t)!==-1};var hasSubString=exports.hasSubString=function e(t,r){return t.indexOf(r)!==-1};var parseJSON=exports.parseJSON=function e(t,r){try{return JSON.parse(t)}catch(e){return r}};var joinAndWrap=exports.joinAndWrap=function e(t,r,n){var o=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\" \";return r+t.join(n+o+r)+n};var getWithoutNewLines=exports.getWithoutNewLines=function e(t){return typeof t===\"string\"?t.replace(/[\\n\\r]/g,\" \"):t};var makeHashMap=exports.makeHashMap=function e(t){var r=Object.create(null);Object.defineProperty(r,\"hasOwnProperty\",{enumerable:false,configurable:false,writable:false,value:Object.prototype.hasOwnProperty.bind(r)});if(t){for(var n in t){if(t.hasOwnProperty(n)){r[n]=t[n]}}}return r};var getAncestorWithClass=exports.getAncestorWithClass=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"||typeof r!==\"string\"){return}while(t.parentNode&&t.parentNode!==document){t=t.parentNode;if(t.classList.contains(r)){return t}}};var findAndRemoveClassNames=exports.findAndRemoveClassNames=function e(t){for(var r=t.length;r--;){var n=document.getElementsByClassName(t[r]);for(var o=n.length;o--;){n[o].classList.remove(t[r])}}};var isInteger=exports.isInteger=Number.isInteger||function(e){return typeof e===\"number\"&&isFinite(e)&&Math.floor(e)===e};var replaceAll=exports.replaceAll=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];for(var o=n.length;o--;){var s=n[o];var i=r;if(Array.isArray(s)){i=s[1];s=s[0]}t=t.replace(s,i)}return t};var isTrue=exports.isTrue=function e(t,r){if(t==null){return!!r}else if(typeof t===\"string\"){var n=parseInt(t);return isNaN(n)?t===\"true\":n!==0}else if(typeof t===\"boolean\"){return t}else if(typeof t===\"number\"){return n!==0}return false};var removeArrayElement=exports.removeArrayElement=function e(t,r){var n=t.indexOf(r);if(n>-1){return t.splice(n,1)[0]}};var getPropertiesByPrefix=exports.getPropertiesByPrefix=function e(t,r,n){var o=makeHashMap();for(var s in t){if(startsWith(s,r)){o[n?s.substr(r.length):s]=t[s]}}return o};var getWithoutPrefix=exports.getWithoutPrefix=function e(t,r){return startsWith(t,r)?t.substr(r.length):t};var hasKeyWithPrefix=exports.hasKeyWithPrefix=function e(t,r){for(var n in t){if(startsWith(n,r)){return true}}return false};var pickRandom=exports.pickRandom=function e(t){return t[getRandomInt(0,t.length-1)]};var getFirstElementByClassName=exports.getFirstElementByClassName=function e(t,r,n){var o=(r||document).getElementsByClassName(t)[0];if(!o&&(typeof n===\"boolean\"?n:true)){var s='Missing element with class \"'+t+'\" inside '+r;throw new _exception.EnvironmentError(s)}return o};var getRandomLabel=exports.getRandomLabel=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var r=pickRandom([\"exciting\",\"notable\",\"epic\",\"new\",\"fancy\",\"great\",\"cool\",\"fresh\",\"funky\",\"clever\"]);var n=(t.object||pickRandom([\"concept\",\"idea\",\"thought\",\"topic\",\"subject\"]))+(t.plural?\"s\":\"\");return\"My \"+r+\" \"+n};var _merge=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"){t={}}for(var n in r){if(r.hasOwnProperty(n)){if(r[n]!=null){t[n]=_typeof(r[n])===\"object\"?e(t[n],r[n]):r[n]}}}return t};var merge=exports.merge=function e(t){for(var r=arguments.length,n=Array(r>1?r-1:0),o=1;o<r;o++){n[o-1]=arguments[o]}for(var s=0,i=n.length;s<i;s++){var a=n[s];if(a!=null&&(typeof a===\"undefined\"?\"undefined\":_typeof(a))===\"object\"){t=_merge(t,a)}}return t};var setDomListeners=exports.setDomListeners=function e(t,r,n,o){o=typeof o===\"boolean\"?o:false;t=t+\"EventListener\";for(var s in n){var i=n[s];if(typeof i===\"function\"){r[t](s,i,o)}else{r[t](s,i[0],typeof i[1]===\"boolean\"?i[1]:o)}}};var removeDOMChildNodes=exports.removeDOMChildNodes=function e(t){for(var r=t.childNodes.length;r--;){t.removeChild(t.childNodes[r])}};var mod=exports.mod=function e(t,r){var n=t%r;return Math.floor(n>=0?n:n+r)};var getNearestRasterPosition=exports.getNearestRasterPosition=function e(t,r){var n=t.x,o=t.y;var s=r/2;var i=mod(n,r);var a=mod(o,r);return{x:i<s?n-i:n-i+r,y:a<s?o-a:o-a+r}};var bindTo=exports.bindTo=function e(t,r){for(var n=r.length;n--;){var o=t[r[n]];t[r[n]]=o.bind(t)}};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/basic.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var generateDraftTitle=exports.generateDraftTitle=function e(n){var r=0,t=void 0;do{t=\"Draft \"+(r?r+1+\" \":\"\")+\"of '\"+n+\"'\";r++}while($tw.wiki.tiddlerExists(t));return t};var makeDraftTiddler=exports.makeDraftTiddler=function e(n){var r=$tw.wiki.findDraft(n);if(r){return $tw.wiki.getTiddler(r)}var t=$tw.wiki.getTiddler(n);r=generateDraftTitle(n);var l=new $tw.Tiddler(t,{title:r,\"draft.title\":n,\"draft.of\":n},$tw.wiki.getModificationFields());$tw.wiki.addTiddler(l);return l};var getFullScreenApis=exports.getFullScreenApis=function e(){var n=document,r=n.body,t={_requestFullscreen:r.webkitRequestFullscreen!==undefined?\"webkitRequestFullscreen\":r.mozRequestFullScreen!==undefined?\"mozRequestFullScreen\":r.msRequestFullscreen!==undefined?\"msRequestFullscreen\":r.requestFullscreen!==undefined?\"requestFullscreen\":\"\",_exitFullscreen:n.webkitExitFullscreen!==undefined?\"webkitExitFullscreen\":n.mozCancelFullScreen!==undefined?\"mozCancelFullScreen\":n.msExitFullscreen!==undefined?\"msExitFullscreen\":n.exitFullscreen!==undefined?\"exitFullscreen\":\"\",_fullscreenElement:n.webkitFullscreenElement!==undefined?\"webkitFullscreenElement\":n.mozFullScreenElement!==undefined?\"mozFullScreenElement\":n.msFullscreenElement!==undefined?\"msFullscreenElement\":n.fullscreenElement!==undefined?\"fullscreenElement\":\"\",_fullscreenChange:n.webkitFullscreenElement!==undefined?\"webkitfullscreenchange\":n.mozFullScreenElement!==undefined?\"mozfullscreenchange\":n.msFullscreenElement!==undefined?\"MSFullscreenChange\":n.fullscreenElement!==undefined?\"fullscreenchange\":\"\"};if(!t._requestFullscreen||!t._exitFullscreen||!t._fullscreenElement){return null}else{return t}};var flatten=exports.flatten=function e(n){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l=r.prefix||\"\";var i={};function u(e,n){Object.keys(e).forEach(function(f){var s=e[f];var c=r.safe&&Array.isArray(s);var a=Object.prototype.toString.call(s);var d=a===\"[object Object]\"||a===\"[object Array]\";var o=n?n+t+f:l+f;if(!c&&d){return u(s,o)}i[o]=s})}u(n);return i};var unflatten=exports.unflatten=function e(n){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l={};if(Object.prototype.toString.call(n)!==\"[object Object]\"){return n}function i(e){var n=Number(e);return isNaN(n)||e.indexOf(\".\")!==-1?e:n}Object.keys(n).forEach(function(u){var f=u.split(t);var s=i(f.shift());var c=i(f[0]);var a=l;while(c!==undefined){if(a[s]===undefined){a[s]=typeof c===\"number\"&&!r.object?[]:{}}a=a[s];if(f.length>0){s=i(f.shift());c=i(f[0])}}a[s]=e(n[u],r)});return l};var genUUID=exports.genUUID=function(){var e=\"0123456789abcdefghijklmnopqrstuvwxyz\".split(\"\");return function(){var n=e,r=new Array(36);var t=0,l;for(var i=0;i<36;i++){if(i==8||i==13||i==18||i==23){r[i]=\"-\"}else if(i==14){r[i]=\"4\"}else{if(t<=2)t=33554432+Math.random()*16777216|0;l=t&15;t=t>>4;r[i]=n[i==19?l&3|8:l]}}return r.join(\"\")}}();\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/thirdParty.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.getArrayValuesAsHashmapKeys=exports.getLookupTable=exports.keyOfItemWithProperty=exports.keysOfItemsWithProperty=exports.getDublicates=exports.getId=exports.refreshDataSet=exports.drawRaster=exports.getPrettyFilter=exports.groupByProperty=exports.isEdgeTypeMatch=exports.getEdgeTypeMatches=exports.getDataUri=exports.convert=exports.getValues=exports.getIterableCollection=exports.getLabel=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var getLabel=exports.getLabel=function e(t,r){var i=wikiUtils.getTiddler(t);return(i&&i.fields[r]?i.fields[r]:i.fields.title).replace(\"\\\\n\",\"\\n\")};var getIterableCollection=exports.getIterableCollection=function e(t){return t instanceof _vis2.default.DataSet?t.get():t};var getValues=exports.getValues=function e(t){if(Array.isArray(t)){return t}else if(t instanceof _vis2.default.DataSet){return t.get({returnType:\"Array\"})}var r=[];var i=Object.keys(t);for(var a=i.length;a--;){r.push(t[i[a]])}return r};var convert=exports.convert=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"){throw new _exception.InvalidArgumentException(t,r)}if(r===\"object\"){r=\"hashmap\"}var i={array:function e(t){return getValues(t)},hashmap:function e(t){return t instanceof _vis2.default.DataSet?t.get({returnType:\"Object\"}):t},dataset:function e(t){return t instanceof _vis2.default.DataSet?t:!Array.isArray(t)?getValues(t):new _vis2.default.DataSet(t)}};return i[r](t)};var getDataUri=exports.getDataUri=function e(t,r,i){var a=wikiUtils.getTiddler(t);r=r||a.fields.type||\"image/svg+xml\";var s=a.fields.text;var o=$tw.config.contentTypeInfo[r].encoding;if(r===\"image/svg+xml\"){s=s.replace(/\\r?\\n|\\r/g,\" \");if(!basicUtils.hasSubString(\"xmlns\",s)){s=s.replace(/<svg/,'<svg xmlns=\"http://www.w3.org/2000/svg\"')}}if(i&&o!==\"base64\"){o=\"base64\";s=basicUtils.base64(s)}return\"data:\"+r+\";\"+o+\",\"+s};var eTyFiltAutoPrefix=\"[all[]] \";var getEdgeTypeMatches=exports.getEdgeTypeMatches=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";var r=arguments[1];if(!r){r=wikiUtils.getTiddlersByPrefix($tm.path.edgeTypes+\"/\",{iterator:\"eachTiddlerPlusShadows\",removePrefix:true})}if(r!=null&&!Array.isArray(r)){r=Object.keys(r)}return wikiUtils.getMatches(eTyFiltAutoPrefix+t,r)};var isEdgeTypeMatch=exports.isEdgeTypeMatch=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";return wikiUtils.isMatch(t,eTyFiltAutoPrefix+r)};var groupByProperty=exports.groupByProperty=function e(t,r){t=getIterableCollection(t);var i=basicUtils.makeHashMap();var a=Object.keys(t);for(var s in a){var o=t[a[s]];var n=o[r];if(n==null){throw\"Cannot group by property \"+r}else{if(!Array.isArray(i[n])){i[n]=[]}i[n].push(o)}}return i};var getPrettyFilter=exports.getPrettyFilter=function e(t){t=t.trim().replace(\"][\",\"] [\");var r=/[+-]?\\[.+?[\\]\\}\\>]\\]/g;var i=t.match(r);t=t.replace(r,\" [] \").trim();var a=t.split(/\\s+/);var s=0;var o=[];for(var n=0,l=a.length;n<l;n++){o[n]=a[n]===\"[]\"?i[s++]:a[n]}return o.join(\"\\n\")};var drawRaster=exports.drawRaster=function e(t,r,i,a){var s=arguments.length>4&&arguments[4]!==undefined?arguments[4]:\"#D9D9D9\";var o=basicUtils.getNearestRasterPosition(i,a),n=o.x,l=o.y;var u=t.canvas.width/r;var p=t.canvas.height/r;var f=a*2;var v=Math.ceil(u/a/2)*a+f;var c=Math.ceil(p/a/2)*a+f;var y=n-v;var d=n+v;var g=l-c;var h=l+c;t.beginPath();for(var b=y;b<d;b+=a){t.moveTo(b,g);t.lineTo(b,h)}for(var x=g;x<=h;x+=a){t.moveTo(y,x);t.lineTo(d,x)}t.strokeStyle=s;t.fillStyle=s;t.stroke()};var refreshDataSet=exports.refreshDataSet=function e(t,r){var i=t.get({returnType:\"Object\"});var a=[];var s=[];var o=[];var n=[];for(var l in r){if(i[l]){if(basicUtils.isEqual(i[l],r[l])){continue}s.push(l);t.remove(l)}else{a.push(l)}if(r[l].x===undefined){o.push(l)}t.add(r[l])}for(var u in i){if(!r[u]){n.push(u);t.remove(u)}}return{withoutPosition:o,inserted:a,updated:s,removed:n}};var getId=exports.getId=function e(t){return wikiUtils.getTiddler(t).fields[\"tmap.id\"]};var getDublicates=exports.getDublicates=function e(t){var r=getId(t);if(!r){return[]}var i=wikiUtils.getTiddlersWithField(\"tmap.id\",r,{limit:2});delete i[wikiUtils.getTiddlerRef(t)];return Object.keys(i)};var keysOfItemsWithProperty=exports.keysOfItemsWithProperty=function e(t,r,i,a){t=getIterableCollection(t);var s=Object.keys(t);var o=[];a=typeof a===\"number\"?a:s.length;for(var n=0,l=s.length;n<l;n++){var u=s[n];if(_typeof(t[u])===\"object\"&&t[u][r]){if(!i||t[u][r]===i){o.push(u);if(o.length===a){break}}}}return o};var keyOfItemWithProperty=exports.keyOfItemWithProperty=function e(t,r,i){return keysOfItemsWithProperty(t,r,i,1)[0]};var getLookupTable=exports.getLookupTable=function e(t,r){t=getIterableCollection(t);var i=basicUtils.makeHashMap();var a=Object.keys(t);for(var s=0,o=a.length;s<o;s++){var n=a[s];var l=r?t[n][r]:t[n];var u=typeof l===\"undefined\"?\"undefined\":_typeof(l);if(u===\"string\"&&l!==\"\"||u===\"number\"){if(!i[l]){i[l]=r?t[n]:true;continue}}if(r){throw new Error('Cannot use \"'+l+'\" as lookup table index')}}return i};var getArrayValuesAsHashmapKeys=exports.getArrayValuesAsHashmapKeys=getLookupTable;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/tmap.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/utils": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/utils",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.utils=undefined;var _extends=Object.assign||function(i){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var e in t){if(Object.prototype.hasOwnProperty.call(t,e)){i[e]=t[e]}}}return i};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/utils\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _thirdParty=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\");var thirdPartyUtils=_interopRequireWildcard(_thirdParty);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);var _tmap=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\");var tMapUtils=_interopRequireWildcard(_tmap);function _interopRequireWildcard(i){if(i&&i.__esModule){return i}else{var r={};if(i!=null){for(var t in i){if(Object.prototype.hasOwnProperty.call(i,t))r[t]=i[t]}}r.default=i;return r}}var utils=exports.utils=_extends({},basicUtils,thirdPartyUtils,wikiUtils,tMapUtils);exports.default=utils;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/utils.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.touch=exports.addTiddler=exports.getTiddlersByPrefix=exports.getTiddlerWithField=exports.getTiddlersWithField=exports.deleteByPrefix=exports.cp=exports.mv=exports.addTWlisteners=exports.getChildWidgetByProperty=exports.getMergedTiddlers=exports.isSystemOrDraft=exports.isDraft=exports.setText=exports.getText=exports.isLeftVersionGreater=exports.getEntry=exports.setEntry=exports.clone=exports.writeFieldData=exports.parseFieldData=exports.isPreviewed=exports.notify=exports.registerTransclude=exports.getElementNode=exports.getTiddlerNode=exports.getTranscludeNode=exports.isMatch=exports.getMatches=exports.moveFieldValues=exports.deleteTiddlers=exports.setField=exports.setSidebarTab=exports.tiddlerExists=exports.getField=exports.getTiddler=exports.getTiddlerRef=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var getTiddlerRef=exports.getTiddlerRef=function e(t){if(t instanceof $tw.Tiddler){return t.fields.title}else if(typeof t===\"string\"){return t}else{throw new _exception.InvalidArgumentException(t)}};var getTiddler=exports.getTiddler=function e(t){return $tw.wiki.getTiddler(t instanceof $tw.Tiddler?t.fields.title:t)};var getField=exports.getField=function e(t,r){var i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"\";var d=getTiddler(t);return!d?i:d.fields[r]||i};var tiddlerExists=exports.tiddlerExists=function e(t){if(!t){return false}var r=getTiddlerRef(t);return Boolean(r&&($tw.wiki.tiddlerExists(r)||$tw.wiki.isShadowTiddler(r)))};var setSidebarTab=exports.setSidebarTab=function e(t){setText(getTiddlersByPrefix(\"$:/state/tab/sidebar-\")[0],t)};var setField=exports.setField=function e(t,r,i){if(!t||!r){return}var d=getTiddlerRef(t);var s=_defineProperty({title:d},r,i);var n=$tw.wiki.getTiddler(d,true);if(r!==\"text\"&&n&&!n.fields.text){s.text=\"\"}n=new $tw.Tiddler(n,s);$tw.wiki.addTiddler(n);return n};var deleteTiddlers=exports.deleteTiddlers=function e(t){var r=Object.keys(t);var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");for(var d=r.length;d--;){var s=getTiddlerRef(t[r[d]]);if(!$tw.wiki.tiddlerExists(t[r[d]])){continue}var n=i.indexOf(s);if(n!==-1){i.splice(n,1);setField(\"$:/StoryList\",\"list\",i)}$tw.wiki.deleteTiddler(s)}};var moveFieldValues=exports.moveFieldValues=function e(t,r,i,d,s){if(t===r)return;var n=s||$tw.wiki.allTitles();for(var l=n.length;l--;){var a=getTiddler(n[l]);if(a.isDraft()||!a.fields[t]){continue}if(!d&&$tw.wiki.isSystemTiddler(n[l])){continue}var o=_defineProperty({},r,a.fields[t]);if(i){o[t]=undefined}$tw.wiki.addTiddler(new $tw.Tiddler(a,o))}};var getMatches=exports.getMatches=function e(t,r,i){var d=undefined;var s=$tw.wiki;if(typeof t===\"string\"){t=s.compileFilter(t)}if(r!=null&&(typeof r===\"undefined\"?\"undefined\":_typeof(r))===\"object\"){if(!Array.isArray(r)){r=Object.keys(r)}d=function e(t){for(var i=r.length;i--;){var d=s.getTiddler(r[i]);t(d,r[i])}}}return t.call(s,d,i)};var isMatch=exports.isMatch=function e(t,r){return getTiddlerRef(t)===getMatches(r,[getTiddlerRef(t)])[0]};var getTranscludeNode=exports.getTranscludeNode=function e(t,r){return{type:\"transclude\",attributes:{tiddler:{type:\"string\",value:getTiddlerRef(t)}},children:[],isBlock:!!r}};var getTiddlerNode=exports.getTiddlerNode=function e(t){return{type:\"tiddler\",attributes:{tiddler:{type:\"string\",value:getTiddlerRef(t)}},children:[]}};var getElementNode=exports.getElementNode=function e(t,r,i){return{type:\"element\",tag:t,attributes:{class:{type:\"string\",value:r}},children:i?[{type:\"text\",text:i}]:[]}};var registerTransclude=exports.registerTransclude=function e(t,r,i){basicUtils.removeArrayElement(t.children,t[r]);t[r]=t.makeChildWidget(getTranscludeNode(i,true));t.children.push(t[r]);return t[r]};var notify=exports.notify=function e(t){var r=\"$:/temp/tiddlymap/notify\";$tw.wiki.addTiddler(new $tw.Tiddler({title:r,text:t}));$tw.notifier.display(r)};var isPreviewed=exports.isPreviewed=function e(t){if(!t){return false}if(t.domNode.isTiddlyWikiFakeDom){return true}if(t.getVariable(\"tv-tiddler-preview\")){return true}else{var r=\"tc-tiddler-preview-preview\";return!!basicUtils.getAncestorWithClass(t.parentDomNode,r)}};var parseFieldData=exports.parseFieldData=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"text\";var i=arguments[2];var d=getTiddler(t);if(!d){return i}return basicUtils.parseJSON(d.fields[r],i)};var writeFieldData=exports.writeFieldData=function e(t,r,i,d){if((typeof i===\"undefined\"?\"undefined\":_typeof(i))!==\"object\"){return}d=parseInt(d);d=d>0&&r===\"text\"?d:0;setField(t,r,JSON.stringify(i,null,d))};var clone=exports.clone=function e(t,r){setField(t,\"title\",r)};var setEntry=exports.setEntry=function e(t,r,i){$tw.wiki.setText(getTiddlerRef(t),null,r,i)};var getEntry=exports.getEntry=function e(t,r,i){var d=$tw.wiki.getTiddlerData(getTiddlerRef(t),{});return d[r]==null?i:d[r]};var isLeftVersionGreater=exports.isLeftVersionGreater=function e(t,r){return t!==r&&$tw.utils.checkVersions(t,r)};var getText=exports.getText=function e(t,r){return getField(t,\"text\",r)};var setText=exports.setText=function e(t,r){setField(t,\"text\",r)};var isDraft=exports.isDraft=function e(t){var r=getTiddler(t);return r&&r.isDraft()};var isSystemOrDraft=exports.isSystemOrDraft=function e(t){return $tw.wiki.isSystemTiddler(getTiddlerRef(t))||isDraft(t)};var getMergedTiddlers=exports.getMergedTiddlers=function e(t,r){if(!Array.isArray(t)){return}for(var i=t.length;i--;){t[i]=getTiddler(t[i])}if(!t.length){return}t.push({title:r||t[0].fields.title},$tw.wiki.getModificationFields(),$tw.wiki.getCreationFields());t.unshift(null);return new(Function.prototype.bind.apply($tw.Tiddler,t))};var getChildWidgetByProperty=exports.getChildWidgetByProperty=function e(t,r,i){var d=t.children;for(var s=d.length;s--;){var n=d[s];if(n[r]===i){return n}else{n=e(n,r,i);if(n){return n}}}};var addTWlisteners=exports.addTWlisteners=function e(t,r,i){for(var d in t){r.addEventListener(d,t[d].bind(i))}};var mv=exports.mv=function e(t,r,i,d){if(t===r||!t||!r){return}i=typeof i===\"boolean\"?i:false;d=typeof d===\"boolean\"?d:true;var s=getTiddlersByPrefix(t);var n=basicUtils.makeHashMap();for(var l=s.length;l--;){var a=s[l];var o=a.replace(t,r);if($tw.wiki.tiddlerExists(o)&&!i){return}n[a]=o}for(var f in n){setField(f,\"title\",n[f]);if(d){$tw.wiki.deleteTiddler(f)}}return n};var cp=exports.cp=function e(t,r,i){return mv(t,r,i,false)};var deleteByPrefix=exports.deleteByPrefix=function e(t,r){if(!t){return}r=r||$tw.wiki.allTitles();var i=[];for(var d=r.length;d--;){if(basicUtils.startsWith(r[d],t)){$tw.wiki.deleteTiddler(r[d]);i.push(i[d])}}return i};var getTiddlersWithField=exports.getTiddlersWithField=function e(t,r){var i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var d=i.tiddlers||$tw.wiki.allTitles();var s=i.isIncludeDrafts===true;var n=basicUtils.makeHashMap();var l=Object.keys(d);var a=$tw.utils.hop;var o=i.limit||0;for(var f=l.length;f--;){var u=getTiddler(d[l[f]]);var p=u.fields;if(a(p,t)&&(!a(p,\"draft.of\")||s)){if(!r||p[t]===r){n[p.title]=u;if(--o===0){break}}}}return n};var getTiddlerWithField=exports.getTiddlerWithField=function e(t,r){return Object.keys(getTiddlersWithField(t,r,{limit:1}))[0]};var getTiddlersByPrefix=exports.getTiddlersByPrefix=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=r.removePrefix===true;var d=[];var s=$tw.wiki[r.iterator||\"each\"];s(function(e,r){if(basicUtils.startsWith(r,t)){d.push(i?basicUtils.getWithoutPrefix(r,t):r)}});return d};var addTiddler=exports.addTiddler=function e(t,r){var i=getTiddler(t);if(!r&&i){return i}i=new $tw.Tiddler({title:t,text:\"\"},$tw.wiki.getModificationFields(),$tw.wiki.getCreationFields());$tw.wiki.addTiddler(i);return i};var touch=exports.touch=function e(t){if(!t){return}var r=new $tw.Tiddler(getTiddler(t),$tw.wiki.getModificationFields());$tw.wiki.addTiddler(r)};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/wiki.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/macro/tmap": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/macro/tmap",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.params=exports.name=exports.run=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\ntitle: $:/plugins/felixhayashi/tiddlymap/js/macro/tmap\ntype: application/javascript\nmodule-type: macro\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var name=\"tmap\";var params=getParamSlots(5);function run(){this.substVarRefs=this.substituteVariableReferences;var e=command[arguments[0]];var t=null;if(typeof e===\"function\"){var r=Array.prototype.slice.call(arguments,1);t=e.apply(this,r)}return typeof t===\"string\"?t:\"\"}function getParamSlots(e){var t=[];for(var r=0;r<e;r++){t.push({name:\"arg\"+r})}return t}var command=_utils2.default.makeHashMap();command.basename=function(e){var t=this.getVariable(\"currentTiddler\");return _utils2.default.getBasename(t,e)};command.datauri=function(e,t){return _utils2.default.getDataUri(e,t,true)};command.testJSON=function(e){var t=$tw.wiki.getTiddler(this.getVariable(\"currentTiddler\"));try{JSON.parse(t.fields[e]);return\"valid\"}catch(e){return\"malformed\"}};command.splitAndSelect=function(e,t){var r=this.getVariable(\"currentTiddler\");var a=r.split(e)[t];return a!=null?a:r};command.concat=function(){var e=\"\";for(var t=1,r=arguments.length;t<r;t++){e+=arguments[t]}return e};command.uuid=function(){return _utils2.default.genUUID()};command.regRepl=function(){var e=this.substVarRefs(arguments[0]);var t=arguments[1];var r=this.substVarRefs(arguments[2]);var a=this.substVarRefs(arguments[4]);return e.replace(new RegExp(t,a),r)};command.halfOfString=function(){var e=this.substVarRefs(arguments[0]);if(!e){return\"\"}return e.substr(0,Math.ceil(e.length/2))};command.isETyVisible=function(e,t){e=new _ViewAbstraction2.default(e);var r=command.getETyId.call(this,e,t);return\"\"+e.isEdgeTypeVisible(r)};command.getETyId=function(e,t){e=new _ViewAbstraction2.default(e);var r=_EdgeType2.default.getInstance(t||this.getVariable(\"currentTiddler\"));if(!r.namespace){var a=_EdgeType2.default.getIdParts(r.id),n=a.marker,i=a.name;var u=e.getConfig(\"edge_type_namespace\");r=_EdgeType2.default.getInstance(_EdgeType2.default.getId(n,u,i))}return r.id};command.scale=function(){var e=\"\";for(var t=1,r=parseInt(arguments[0]);t<r;t++){e+=\"[[\"+t+\"]]\"}return e};command.mergeFields=function(){var e=_utils2.default.getTiddler(arguments[0]);var t=arguments[1];var r=arguments[2]||\" \";if(!e)return;var a=_utils2.default.getPropertiesByPrefix(e.fields,t);var n=\"\";for(var i in a){if(typeof a[i]===\"string\"){n+=a[i]+r}}return n};command.option=function(e,t){if(typeof $tm==\"undefined\"){return\"\"}var r=$tm;var a=e.split(\".\");for(var n=0;n<a.length;n++){if((typeof r===\"undefined\"?\"undefined\":_typeof(r))==\"object\"&&r[a[n]]){r=r[a[n]]}}if(t&&typeof r===\"string\"&&_utils2.default.hasSubString(t)&&r.lastIndexOf(t)+t.length===r.length){r=r+t}return r};exports.run=run;exports.name=name;exports.params=params;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/macro/MapMacro.js.map\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/Adapter": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/Adapter",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Adapter\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _contrastcolour=require(\"$:/core/modules/macros/contrastcolour.js\");function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Adapter=function(){function e(t,i){_classCallCheck(this,e);this.getTiddlerById=t.getTiddlerById.bind(t);this.getId=t.getIdByTiddler.bind(t);this.assignId=t.assignId.bind(t);this.edgeTypeSubscriberRegistry=i;this.indeces=$tm.indeces;this.wiki=$tw.wiki;this.visShapesWithTextInside=_utils2.default.getLookupTable([\"ellipse\",\"circle\",\"database\",\"box\",\"text\"])}_createClass(e,[{key:\"deleteEdge\",value:function e(t){return this._processEdge(t,\"delete\")}},{key:\"insertEdge\",value:function e(t){return this._processEdge(t,\"insert\")}},{key:\"deleteEdges\",value:function e(t){t=_utils2.default.convert(t,\"array\");for(var i=t.length;i--;){this.deleteEdge(t[i])}}},{key:\"_processEdge\",value:function e(t,i){$tm.logger(\"debug\",\"Edge\",i,t);var r=this.getTiddlerById(t.from);if(!r||!_utils2.default.tiddlerExists(r)){return}var a=_utils2.default.getTiddler(r);var s=this.indeces.allETy[t.type]||_EdgeType2.default.getInstance(t.type);var l=this.edgeTypeSubscriberRegistry.getAllForType(s);var n=i+\"Edge\";for(var d=l.length;d--;){l[d][n](a,t,s)}if(i===\"insert\"&&!s.exists()){s.save()}return t}},{key:\"getAdjacencyList\",value:function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Creating adjacency list\");if(!i.edges){var r=_utils2.default.getMatches(env.selector.allPotentialNodes);i.edges=this.getEdgesForSet(r,i.toWL,i.typeWL)}var a=_utils2.default.groupByProperty(i.edges,t||\"to\");$tm.stop(\"Creating adjacency list\");return a}},{key:\"getNeighbours\",value:function e(t){var i=this;var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Get neighbours\");var a=r.addProperties,s=r.toWL,l=r.typeWL,n=r.steps;var d=this.indeces.allETy;var o=_utils2.default.getArrayValuesAsHashmapKeys(t);var u=_ViewAbstraction2.default.exists(r.view)?new _ViewAbstraction2.default(r.view):null;var f=_utils2.default.makeHashMap();var g=_utils2.default.makeHashMap();var c=parseInt(n)>0?n:1;var v=r.direction||u&&u.getConfig(\"neighbourhood_directions\");var y=!v||v===\"both\";var h=y||v===\"in\";var p=y||v===\"out\";var _=u&&\"[all[]] \"+u.getNodeFilter(\"raw\");var b=this.getAdjacencyList(\"to\",r);var m=function e(t,r,s){f[t.id]=t;var l=i.getTiddlerById(t[r]);if(u&&_utils2.default.isTrue($tm.config.sys.nodeFilterNeighbours)&&!_utils2.default.isMatch(l,_)){return}if(!o[l]){o[l]=true;var n=i.makeNode(l,a);if(n){g[n.id]=n;s.push(l)}}};var w=void 0;for(w=0;w<c&&t.length;w++){var T=[];for(var k=t.length;k--;){if(_utils2.default.isSystemOrDraft(t[k])){continue}var E=this.getEdges(t[k],s,l);for(var N in E){var A=d[E[N].type];if(y||p&&A.toArrow||h&&A.invertedArrow){m(E[N],\"to\",T)}}var I=b[this.getId(t[k])];if(!I){continue}for(var j=I.length;j--;){var x=d[I[j].type];if(y||h&&x.toArrow||p&&x.invertedArrow){m(I[j],\"from\",T)}}}t=T}var S={nodes:g,edges:f};$tm.logger(\"debug\",\"Retrieved neighbourhood\",S,\"steps\",w);$tm.stop(\"Get neighbours\");return S}},{key:\"getGraph\",value:function e(t){var i=t.view,r=t.matches,a=t.includeNeighboursOf;$tm.start(\"Assembling Graph\");i=new _ViewAbstraction2.default(i);r=r||_utils2.default.getMatches(i.getNodeFilter(\"compiled\"));var s=parseInt(i.getConfig(\"neighbourhood_scope\"));var l=i.getEdgeTypeFilter(\"whitelist\");var n=_utils2.default.getArrayValuesAsHashmapKeys(r);var d=this.getEdgesForSet(r,n,l);var o=void 0;if(i.isEnabled(\"filter_nodes_by_edge_types\")){o=new Set;Object.values(d).forEach(function(e){o.add(e.from);o.add(e.to)})}var u={edges:d,nodes:this.selectNodesByReferences(r,{view:i,outputType:\"hashmap\"})};if(s){var f=a?r.filter(a):r;var g=this.getNeighbours(f,{steps:s,view:i,typeWL:l,addProperties:{type:\"tmap:neighbour\"}});Object.assign(u.nodes,g.nodes);Object.assign(u.edges,g.edges);if(i&&i.isEnabled(\"show_inter_neighbour_edges\")){var c=this.getTiddlersByIds(g.nodes);var v=_utils2.default.getArrayValuesAsHashmapKeys(c);Object.assign(u.edges,this.getEdgesForSet(c,v))}}if(o){var y=_utils2.default.makeHashMap();Object.values(u.nodes).forEach(function(e){if(o.has(e.id)){y[e.id]=e}});u.nodes=y}this.attachStylesToNodes(u.nodes,i);$tm.stop(\"Assembling Graph\");$tm.logger(\"debug\",\"Assembled graph:\",u);return u}},{key:\"getEdges\",value:function e(t,i,r){var a=_utils2.default.getTiddler(t);if(!a||_utils2.default.isSystemOrDraft(a)){return}var s=this.indeces.allETy;var l=_utils2.default.makeHashMap();var n=this.edgeTypeSubscriberRegistry.getAll();for(var d=0,o=n.length;d<o;d++){Object.assign(l,n[d].loadEdges(a,i,r))}for(var u in l){var f=l[u];if(!f.from||!f.to){continue}var g=s[f.type]||_EdgeType2.default.getInstance(f.type);addStyleToEdge(l[u],g);l[u]=f}return l}},{key:\"getEdgesForSet\",value:function e(t,i,r){var a=_utils2.default.makeHashMap();for(var s=t.length;s--;){Object.assign(a,this.getEdges(t[s],i,r))}return a}},{key:\"selectEdgesByType\",value:function e(t){var i=_utils2.default.makeHashMap(_defineProperty({},_EdgeType2.default.getInstance(t).id,true));return this.getEdgesForSet(this.getAllPotentialNodes(),null,i)}},{key:\"getAllPotentialNodes\",value:function e(){return _utils2.default.getMatches($tm.selector.allPotentialNodes)}},{key:\"_processEdgesWithType\",value:function e(t,i){var r=i.action,a=i.newName;t=_EdgeType2.default.getInstance(t);$tm.logger(\"debug\",\"Processing edges\",t,r);var s=this.selectEdgesByType(t);if(r===\"rename\"){new _EdgeType2.default(a,t).save()}for(var l in s){this._processEdge(s[l],\"delete\");if(r===\"rename\"){s[l].type=a;this._processEdge(s[l],\"insert\")}}this.wiki.deleteTiddler(t.fullPath)}},{key:\"selectNodesByReferences\",value:function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},r=i.addProperties,a=i.outputType;var s=_utils2.default.makeHashMap();var l=Object.keys(t);for(var n=l.length;n--;){var d=this.makeNode(t[l[n]],r);if(d){s[d.id]=d}}return _utils2.default.convert(s,a)}},{key:\"selectNodesByIds\",value:function e(t,i){var r=this.getTiddlersByIds(t);return this.selectNodesByReferences(r,i)}},{key:\"selectNodeById\",value:function e(t,i){i=Object.assign({},i,{outputType:\"hashmap\"});var r=this.selectNodesByIds([t],i);return r[t]}},{key:\"removeNodeType\",value:function e(t){t=_NodeType2.default.getInstance(t);this.wiki.deleteTiddler(t.fullPath)}},{key:\"makeNode\",value:function e(t,i){var r=_utils2.default.getTiddler(t);if(!r||_utils2.default.isSystemOrDraft(r))return;var a=_utils2.default.merge({},i);a.id=this.assignId(r);a.tRef=r.fields.title;var s=r.fields[$tm.field.nodeLabel];a.label=(s&&$tm.field.nodeLabel!==\"title\"?this.wiki.renderText(\"text/plain\",\"text/vnd-tiddlywiki\",s):r.fields.title).replace(\"\\\\n\",\"\\n\");return a}},{key:\"getInheritedNodeStyles\",value:function e(t){var i=this.getTiddlersByIds(t);var r={};var a=this.indeces.glNTy;for(var s=a.length;s--;){var l=a[s];var n=[];if(l.id===\"tmap:neighbour\"){for(var d in t){if(t[d].type===\"tmap:neighbour\"){n.push(this.getTiddlerById(d))}}}else{n=l.getInheritors(i)}for(var o=n.length;o--;){var u=n[o];var f=r[u]=r[u]||{};f.style=_utils2.default.merge(f.style||{},l.style);if(l[\"fa-icon\"]){f[\"fa-icon\"]=l[\"fa-icon\"]}else if(l[\"tw-icon\"]){f[\"tw-icon\"]=l[\"tw-icon\"]}}}return r}},{key:\"attachStylesToNodes\",value:function e(t,i){i=_ViewAbstraction2.default.exists(i)?new _ViewAbstraction2.default(i):null;var r=this.getInheritedNodeStyles(t);var a=i?i.getNodeData():_utils2.default.makeHashMap();var s=i&&!i.isEnabled(\"physics_mode\");for(var l in t){var n=this.getTiddlerById(l);var d=this.wiki.getTiddler(n);var o=d.fields;var u=t[l];var f=void 0;var g=r[n];if(g){_utils2.default.merge(u,g.style);f=getIcon(g[\"fa-icon\"],g[\"tw-icon\"])}if(o.color){u.color=o.color}if(o[\"tmap.style\"]){_utils2.default.merge(u,_utils2.default.parseJSON(o[\"tmap.style\"]))}f=getIcon(o[\"tmap.fa-icon\"],o[\"icon\"])||f;var c=a[l];if(c){_utils2.default.merge(u,c);if(s){u.fixed={x:u.x!=null,y:u.y!=null}}f=getIcon(c[\"fa-icon\"],c[\"tw-icon\"])||f}var v=u.color!==null&&_typeof(u.color)===\"object\";var y=v?u.color.background:u.color;u.color={background:y,border:v?u.color.border:undefined};addNodeIcon(u,f);u.font=u.font||{};if(u.shape&&!this.visShapesWithTextInside[u.shape]){u.font.color=\"black\"}else if(!u.font.color&&y){u.font.color=(0,_contrastcolour.run)(y,y,\"black\",\"white\")}if(u.shape===\"icon\"){u.label=\"\\n\"+u.label;if(_typeof(u.icon)===\"object\"){u.icon.color=y}}}if(i){var h=t[i.getConfig(\"central-topic\")];if(h){_utils2.default.merge(h,this.indeces.glNTyById[\"tmap:central-topic\"].style)}}}},{key:\"deleteNode\",value:function e(t){if(!t){return}var i=(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"?t.id:t;var r=this.getTiddlerById(i);if(r){_utils2.default.deleteTiddlers([r])}var a=_utils2.default.getMatches(env.selector.allViews);for(var s=a.length;s--;){var l=new _ViewAbstraction2.default(a[s]);l.removeNode(i)}var n=this.getNeighbours([r]);this.deleteEdges(n.edges)}},{key:\"deleteNodes\",value:function e(t){for(var i=t.length;i--;){this.deleteNode(t[i])}}},{key:\"insertNode\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var i=arguments[1];var r=arguments[2];t.label=this.wiki.generateNewTitle(t.label||_utils2.default.getRandomLabel());var a=new $tw.Tiddler({text:\"\"},r,{title:t.label,\"tmap.id\":null},this.wiki.getModificationFields(),this.wiki.getCreationFields());this.wiki.addTiddler(a);t=this.makeNode(a,t);if(_ViewAbstraction2.default.exists(i)){new _ViewAbstraction2.default(i).addNode(t)}return t}},{key:\"getTiddlersByIds\",value:function e(t){if(Array.isArray(t)){t=_utils2.default.getArrayValuesAsHashmapKeys(t)}else if(t instanceof _vis2.default.DataSet){t=_utils2.default.getLookupTable(t,\"id\")}var i=[];for(var r in t){var a=this.getTiddlerById(r);if(a){i.push(a)}}return i}}]);return e}();var getFAdigits=function e(t){return t.length===4?t:t.substr(3,4)};var addNodeIcon=function e(t,i){if(!i){return}if(i.fa){t.shape=\"icon\";t.icon={shape:\"icon\",face:\"FontAwesome\",color:t.color,code:String.fromCharCode(\"0x\"+getFAdigits(i.fa))};if(t.size){t.icon.size=t.size}return}if(i.tw){var r=_utils2.default.getTiddler(i.tw);if(!r){return}if(r.fields[\"_canonical_uri\"]){t.image=r.fields[\"_canonical_uri\"];t.shape=\"image\"}else if(r.fields.text){t.image=_utils2.default.getDataUri(r);t.shape=\"image\"}}};var removeObsoleteViewData=function e(t,i){if(!_ViewAbstraction2.default.exists(i)||!t){return}i=new _ViewAbstraction2.default(i);var r=i.getNodeData();var a=0;for(var s in r){if(t[s]===undefined&&r[s]!=null){r[s]=undefined;a++}}if(a){$tm.logger(\"debug\",\"[Cleanup]\",\"Removed obsolete node data:\",i.getLabel(),a);i.saveNodeData(r)}};var addStyleToEdge=function e(t,i){t=Object.assign(t,i.style);if(_utils2.default.isTrue(i[\"show-label\"],true)){t.label=i.getLabel()}};var getIcon=function e(t,i){return t&&{fa:t}||i&&{tw:i}};exports.default=Adapter;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Adapter.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/CallbackManager": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/CallbackManager",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a<t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/CallbackManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var CallbackManager=function(){function e(){_classCallCheck(this,e);this.callbacks=_utils2.default.makeHashMap();this.logger=$tm.logger;this.wiki=$tw.wiki}_createClass(e,[{key:\"add\",value:function e(t,a){var l=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;this.logger(\"debug\",'A callback was registered for changes of \"'+t+'\"');this.callbacks[t]={execute:a,isDeleteOnCall:l}}},{key:\"remove\",value:function e(t){if(!t){return}if(typeof t===\"string\"){t=[t]}for(var a=t.length;a--;){var l=t[a];if(this.callbacks[l]){this.logger(\"debug\",'Deleting callback for \"'+l+'\"');delete this.callbacks[l]}}}},{key:\"refresh\",value:function e(t){if(this.callbacks.length==0){return}for(var a in t){if(!this.callbacks[a]){continue}if(this.wiki.getTiddler(a)){this.logger(\"debug\",\"Executing a callback for: \"+a);this.callbacks[a].execute(a);if(!this.callbacks.isDeleteOnCall){continue}}this.remove(a)}}}]);return e}();exports.default=CallbackManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/CallbackManager.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _rebuilders;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/caretaker\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Fixer=require(\"$:/plugins/felixhayashi/tiddlymap/js/Fixer\");var _Fixer2=_interopRequireDefault(_Fixer);var _Adapter=require(\"$:/plugins/felixhayashi/tiddlymap/js/Adapter\");var _Adapter2=_interopRequireDefault(_Adapter);var _tracker=require(\"$:/plugins/felixhayashi/tiddlymap/js/services/tracker\");var _tracker2=_interopRequireDefault(_tracker);var _EdgeTypeSubscriberRegistry=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\");var _EdgeTypeSubscriberRegistry2=_interopRequireDefault(_EdgeTypeSubscriberRegistry);var _DialogManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/DialogManager\");var _DialogManager2=_interopRequireDefault(_DialogManager);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _vis3=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis4=_interopRequireDefault(_vis3);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _URL=require(\"$:/plugins/felixhayashi/tiddlymap/js/URL\");var _URL2=_interopRequireDefault(_URL);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}var init=function e(){window.$tm=_extends({},env,{utils:_utils2.default,url:new _URL2.default(window.location.href)});cleanup();registerPublicClasses($tm);updateGlobals($tm);createMetaFile($tm.logger);var t=attachIndeces($tm);var r=getInitializedServices(t);Object.assign($tm,r);loadDefaultView($tm.config.sys.defaultView);r.fixer.fix();$tm.registry=[];setInterval(routineCheck,5e3);registerChangeListener($tm.callbackManager);registerMousemoveListener();registerClickListener();if($tm.url.query[\"tmap-enlarged\"]){prepareFullscreenStart($tm.url)}$tm.logger(\"warn\",\"TiddlyMap's caretaker successfully started\")};var getInitializedServices=function e(t){var r=new _tracker2.default(d);var i=$tw.modules.applyMethods(\"tmap.edgetypehandler\");var a=new _EdgeTypeSubscriberRegistry2.default(i,t.allETy,r);var s=new _Adapter2.default(r,a);var l=new _CallbackManager2.default;var n=new _DialogManager2.default(l);var d=new _Fixer2.default(s,$tm.logger,t.glNTy);return{edgeTypeSubscriberRegistry:a,tracker:r,adapter:s,callbackManager:l,dialogManager:n,fixer:d}};var registerPublicClasses=function e(t){t.keycharm=_vis4.default.keycharm;t.NodeType=_NodeType2.default;t.EdgeType=_EdgeType2.default;t.ViewAbstraction=_ViewAbstraction2.default};var attachOptions=function e(t){var r=t;if(!r.config)r.config=_utils2.default.makeHashMap();r.config.sys=_utils2.default.merge(r.config.sys,_utils2.default.unflatten($tw.wiki.getTiddlerData(env.ref.sysUserConf)));r.config.vis=_utils2.default.merge({},_vis2.default,_utils2.default.parseFieldData(env.ref.visUserConf));if(!r.field)r.field=_utils2.default.makeHashMap();$tw.utils.extend(r.field,r.config.sys.field)};var attachIndeces=function e(t){$tm.start(\"Attaching Indeces\");t.indeces=t.indeces||{};updateNodeTypesIndeces(t.indeces);updateEdgeTypesIndeces(t.indeces);$tm.stop(\"Attaching Indeces\");return t.indeces};var updateNodeTypesIndeces=function e(t){t=t||$tm.indeces;var r=$tm.path.nodeTypes;var i=t.glNTy=[];var a=t.glNTyById=_utils2.default.makeHashMap();$tw.wiki.eachTiddlerPlusShadows(function(e,t){if(_utils2.default.startsWith(t,r)){var s=_NodeType2.default.getInstance(t);a[s.id]=s;i.push(s)}});i.sort(function(e,t){return e.priority-t.priority})};var updateEdgeTypesIndeces=function e(t){t=t||$tm.indeces;var r=$tm.path.edgeTypes;var i=t.allETy=_utils2.default.makeHashMap();$tw.wiki.eachTiddlerPlusShadows(function(e,t){if(_utils2.default.startsWith(t,r)){var a=_EdgeType2.default.getInstance(t);i[a.id]=a}});if($tm.edgeTypeSubscriberRegistry){$tm.edgeTypeSubscriberRegistry.updateIndex(i)}};var attachFunctions=function e(t){var r=t;var i=function e(){};if(_utils2.default.isTrue($tm.config.sys.debug,false)&&console){r.logger=function(){if(arguments.length<2)return;var e=Array.prototype.slice.call(arguments);var t=e.shift(e);var r=console.hasOwnProperty(t)?t:\"debug\";console[r].apply(console,e)};r.start=function(e){console.time(\"[timer] \"+e)};r.stop=function(e){console.timeEnd(\"[timer] \"+e)}}else{r.logger=r.start=r.stop=i}r.notify=_utils2.default.isTrue($tm.config.sys.notifications)?_utils2.default.notify:i};var routineCheck=function e(){for(var t=$tm.registry.length;t--;){var r=$tm.registry[t];if(!r.destruct||!r.isZombieWidget)return;if(r.isZombieWidget()){$tm.logger(\"warn\",\"a widget will be removed\");$tm.registry.splice(t,1);r.destruct()}}};var dispatchUpdates=function e(t){var r=$tm.registry;for(var i=r.length;i--;){var a=r[i];if(a.update&&a.isZombieWidget&&!a.isZombieWidget()){a.update(t)}}};var checkForClone=function e(t){var r=_utils2.default.getDublicates(t);if(!r.length){return}_utils2.default.setField(t,\"tmap.edges\",undefined);$tm.tracker.assignId(t,true);$tm.dialogManager.open(\"dublicateIdInfo\",{param:{changedTiddler:t.fields.title,filter:_utils2.default.joinAndWrap(r,\"[[\",\"]]\"),id:_utils2.default.getId(t)}})};var updateGlobals=function e(t){attachOptions($tm);attachFunctions($tm);$tm.logger(\"warn\",\"Rebuilt globals\")};var lastCurrentTiddler=null;var updateLiveViewTrigger=function e(t){if(t[\"$:/HistoryList\"]){var r=_utils2.default.getField(\"$:/HistoryList\",\"current-tiddler\")}else if(t[\"$:/temp/focussedTiddler\"]){var r=_utils2.default.getField(\"$:/temp/focussedTiddler\",\"text\")}if(r!=null&&lastCurrentTiddler!==r){lastCurrentTiddler=r;_utils2.default.setField(\"$:/temp/tmap/currentTiddler\",\"text\",r)}};var printChanges=function e(t,r){if(!_utils2.default.isTrue($tm.config.sys.debug,false))return;$tm.logger(\"warn\",\"=== Refresh \"+r+\" ===\");for(var i in t){var a=t[i].deleted?\"[Deleted]\":\"[Modified]\";$tm.logger(\"warn\",a,i,$tw.wiki.getTiddler(i))}};var registerMousemoveListener=function e(){$tm.mouse={};var t=function e(t){$tm.mouse=t};window.addEventListener(\"mousemove\",t,false)};var registerClickListener=function e(){var t=$tm.path.tempPopups;window.addEventListener(\"click\",function(e){var r=_utils2.default.getTiddlersByPrefix(t);for(var i=r.length;i--;){if(_utils2.default.getText(r[i]))break}if(i===-1)return;if(!$tw.utils.hasClass(e.target,\"tc-drop-down\")&&!_utils2.default.getAncestorWithClass(e.target,\"tc-drop-down\")){for(var i=r.length;i--;){_utils2.default.setText(r[i],\"\")}}},false)};var registerChangeListener=function e(t){var r=0;$tw.wiki.addEventListener(\"change\",function(e){$tm.start(\"Caretaker handling changes\");printChanges(e,r++);t.refresh(e);var i={changedTiddlers:{}};for(var a in e){var s=_utils2.default.getTiddler(a);if(s&&s.isDraft()){continue}var l=handleTiddlerChange(a,s,i);if(l){i.changedTiddlers[a]=e[a]}}dispatchUpdates(i);updateLiveViewTrigger(e);$tm.stop(\"Caretaker handling changes\")})};var rebuilders=(_rebuilders={},_defineProperty(_rebuilders,env.path.options,updateGlobals),_defineProperty(_rebuilders,env.path.nodeTypes,updateNodeTypesIndeces),_defineProperty(_rebuilders,env.path.edgeTypes,updateEdgeTypesIndeces),_rebuilders);var handleTiddlerChange=function e(t,r,i){if($tw.wiki.isSystemTiddler(t)){for(var a in rebuilders){if(_utils2.default.startsWith(t,a)&&!i[a]){$tm.logger(\"warn\",\"[System change]\",a);rebuilders[a]();i[a]=true}}}else if(r){if(r.fields.text===undefined){$tw.wiki.dispatchEvent(\"lazyLoad\",t);return false}checkForClone(r);$tm.tracker.assignId(r)}else{var s=$tm.tracker.getIdByTiddler(t);if(!s){return false}var l=_utils2.default.getTiddlerWithField(\"tmap.id\",s);if(l){$tm.logger(\"warn\",\"[Renamed]\",t,\"into\",l)}else{$tm.adapter.deleteNode(s)}}return true};var cleanup=function e(){_utils2.default.deleteByPrefix(\"$:/temp/felixhayashi\");_utils2.default.deleteByPrefix(\"$:/temp/tiddlymap\");_utils2.default.deleteByPrefix(\"$:/temp/tmap\")};var loadDefaultView=function e(t){if(!t){return}var r=_utils2.default.getTiddler(env.ref.defaultViewHolder);if(r.fields.text===$tm.config.sys.defaultView){return}_utils2.default.setText(env.ref.defaultViewHolder,$tm.config.sys.defaultView)};var prepareFullscreenStart=function e(t){var r=env.ref,i=r.mainEditor,a=r.defaultViewHolder;_utils2.default.setSidebarTab(i);if(_ViewAbstraction2.default.exists(t)){t=new _ViewAbstraction2.default(t);_utils2.default.setField(a,\"text\",t.getLabel())}};var createMetaFile=function e(t){if(_utils2.default.tiddlerExists(env.ref.sysMeta)){return}t(\"warn\",\"Creating meta file\");var r=$tw.wiki.getTiddler(env.path.pluginRoot);$tw.wiki.setTiddlerData(env.ref.sysMeta,{originalVersion:r.fields.version,dataStructureState:\"0.6.9\",showWelcomeMessage:true})};var name=exports.name=\"tmap.caretaker\";var platforms=exports.platforms=[\"browser\"];var after=exports.after=[\"startup\"];var before=exports.before=[\"rootwidget\"];var synchronous=exports.synchronous=true;var startup=exports.startup=init;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Caretaker.js.map\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/DialogManager": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/DialogManager",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a<t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/DialogManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var DialogManager=function(){function e(t,a){_classCallCheck(this,e);this.callbackManager=t;this.context=a}_createClass(e,[{key:\"open\",value:function t(a){var l=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=arguments[2];if(_utils2.default.isTrue($tm.config.sys.suppressedDialogs[a],false)){$tm.logger(\"warning\",\"Suppressed dialog\",a);return}$tm.logger(\"debug\",\"Dialog param object\",l);if(typeof i===\"function\"&&this.context){i=i.bind(this.context)}var r=$tm.path.tempRoot+\"/dialog-\"+_utils2.default.genUUID();var n=_utils2.default.getTiddler($tm.path.dialogs+\"/\"+a);var u={title:r,buttons:n.fields[\"buttons\"]||\"ok_cancel\",classes:\"tmap-modal-content \"+n.fields[\"classes\"],output:r+\"/output\",result:r+\"/result\",temp:r+\"/temp\",template:n.fields.title,templateId:a,currentTiddler:r+\"/output\",text:_utils2.default.getText($tm.path.dialogs)};_utils2.default.touch(u.output);if(l.dialog){if(l.dialog.preselects){$tw.wiki.addTiddler(new $tw.Tiddler({title:u.output},_utils2.default.flatten(l.dialog.preselects)));delete l.dialog.preselects}_utils2.default.merge(u,l.dialog)}u.footer=_utils2.default.getText($tm.path.footers);u=_utils2.default.flatten(u);l=_utils2.default.flatten(l);var s=function t(a){e.getElement(\"hidden-close-button\").click();var l=$tw.wiki.getTiddler(a);var n=l.fields.text;var s=null;if(n){s=$tw.wiki.getTiddler(u.output)}else{$tm.notify(\"operation cancelled\")}if(typeof i===\"function\"){i(n,s)}_utils2.default.deleteByPrefix(r)};this.callbackManager.add(u.result,s,true);var o=new $tw.Tiddler(n,l,u);$tw.wiki.addTiddler(o);$tm.logger(\"debug\",\"Opening dialog\",o);$tw.rootWidget.dispatchEvent({type:\"tm-modal\",param:o.fields.title,paramObject:o.fields});e.addKeyBindings();return o}}],[{key:\"getElement\",value:function e(t){return _utils2.default.getFirstElementByClassName(\"tmap-\"+t)}},{key:\"addKeyBindings\",value:function t(){var a=$tm.keycharm({container:_utils2.default.getFirstElementByClassName(\"tc-modal\")});var l=/tmap-triggers-(.+?)-on-(.+?)(?:\\s|$)/;var i=document.getElementsByClassName(\"tmap-trigger-field\");var r=function t(r){var n=i[r].className.split(\" \");var u=function t(i){var r=n[i].match(l);if(!r){return\"continue\"}var u=r[1];var s=r[2];var o=e.getElement(u);if(!o){return\"continue\"}a.bind(s,function(){if(document.getElementsByClassName(n[i]).length){o.click()}})};for(var s=n.length;s--;){var o=u(s);if(o===\"continue\")continue}};for(var n=i.length;n--;){r(n)}}}]);return e}();exports.default=DialogManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/DialogManager.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/Fixer": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/Fixer",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Fixer\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Fixer=function(){function e(t,i,r){_classCallCheck(this,e);this.adapter=t;this.logger=i;this.wiki=$tw.wiki;this.glNTy=r}_createClass(e,[{key:\"moveEdges\",value:function e(t,i){var r=_utils2.default.getTiddlersByPrefix(t);for(var a=0;a<r.length;a++){var u=_utils2.default.getBasename(r[a]);if(u===\"__noname__\"){u=\"tmap:unknown\"}u=_EdgeType2.default.getInstance(u);if(!u.exists()){u.save()}var n=this.wiki.getTiddlerData(r[a]);for(var s=0;s<n.length;s++){n[s].type=(i?i+\":\":\"\")+u.id;this.adapter.insertEdge(n[s])}this.wiki.deleteTiddler(r[a])}}},{key:\"executeUpgrade\",value:function e(t,i,r){if(!_utils2.default.isLeftVersionGreater(t,i)){return}this.logger(\"debug\",\"Upgrading data structure to \"+t);var a=r();_utils2.default.setEntry(env.ref.sysMeta,\"dataStructureState\",t);return a}},{key:\"fixId\",value:function e(){var t=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.executeUpgrade(\"0.9.2\",t.dataStructureState,function(){if(_utils2.default.isLeftVersionGreater(\"0.9.2\",t.originalVersion)){var e=\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\";var i=_utils2.default.getEntry(e,\"field.nodeId\",\"tmap.id\");_utils2.default.moveFieldValues(i,\"tmap.id\",true,false)}})}},{key:\"fix\",value:function e(){var t=this;var i=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.logger(\"debug\",\"Fixer is started\");this.logger(\"debug\",\"Data-structure currently in use: \",i.dataStructureState);this.executeUpgrade(\"0.7.0\",i.dataStructureState,function(){t.moveEdges(\"$:/plugins/felixhayashi/tiddlymap/graph/edges\",null);var e=env.selector.allViews;var i=_utils2.default.getMatches(e);for(var r=0;r<i.length;r++){var a=new _ViewAbstraction2.default(i[r]);t.moveEdges(a.getRoot()+\"/graph/edges\",a)}});this.executeUpgrade(\"0.7.32\",i.dataStructureState,function(){if(!_ViewAbstraction2.default.exists(\"Live View\")){return}var e=new _ViewAbstraction2.default(\"Live View\");e.setNodeFilter(\"[field:title{$:/temp/tmap/currentTiddler}]\",true);e.setConfig({\"refresh-trigger\":null,\"refresh-triggers\":$tw.utils.stringifyList([\"$:/temp/tmap/currentTiddler\"])})});this.executeUpgrade(\"0.9.0\",i.dataStructureState,function(){var e=env.ref.visUserConf;var i=_utils2.default.unflatten(t.wiki.getTiddlerData(e,{}));if(_typeof(i.groups)===\"object\"){var r=_NodeType2.default.getInstance(\"tmap:neighbour\");r.setStyle(i.groups[\"neighbours\"]);r.save();delete i.groups;t.wiki.setTiddlerData(e,i)}});this.fixId();this.executeUpgrade(\"0.9.16\",i.dataStructureState,function(){for(var e=t.glNTy.length;e--;){t.glNTy[e].save(null,true)}});this.executeUpgrade(\"0.10.3\",i.dataStructureState,function(){var e=env.ref.liveTab;if(_utils2.default.getTiddler(e).hasTag(\"$:/tags/SideBar\")){this.wiki.deleteTiddler(e);_utils2.default.setField(e,\"tags\",\"$:/tags/SideBar\")}});this.executeUpgrade(\"0.11.0\",i.dataStructureState,function(){var e=_utils2.default.getMatches(env.selector.allViews);for(var t=e.length;t--;){var i=new _ViewAbstraction2.default(e[t]);var r=i.getEdgeTypeFilter(\"raw\");var a=\"edge_type_namespace\";i.setConfig(a,i.getConfig(a));var u=env.filter.defaultEdgeTypeFilter;if(r){var n=env.path.edgeTypes;r=_utils2.default.replaceAll(r,\"\",[n,n+\"/\",\"[prefix[\"+n+\"]]\",\"[prefix[\"+n+\"/]]\",[\"[suffix[tw-body:link]]\",\"[[tw-body:link]]\"],[\"[suffix[tw-list:tags]]\",\"[[tw-list:tags]]\"],[\"[suffix[tw-list:list]]\",\"[[tw-body:list]]\"],[\"[suffix[tmap:unknown]]\",\"[[tmap:unknown]]\"],[\"[suffix[unknown]]\",\"[[tmap:unknown]]\"]]);u=\"-[prefix[_]] \"+r}i.setEdgeTypeFilter(u)}})}}]);return e}();exports.default=Fixer;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Fixer.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/startup/listener": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/startup/listener",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var handleCancelDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"\")};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/listener\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var handleClearTiddler=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},a=t.paramObject;var r=a.title,d=a.keep;if(!r)return;var i=_utils2.default.getTiddler(r);var l=i?i.fields:{};var s=d?d.split():[];var n={title:r,text:\"\"};for(var p=s.length;p--;){var o=s[p];n[o]=l[o]}$tw.wiki.deleteTiddler(r);$tw.wiki.addTiddler(new $tw.Tiddler(n))};var handleMixTiddlers=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d=r.tiddlers,i=r.output;if(!d||!i)return;var l=$tw.utils.parseStringArray(d);var s=_utils2.default.getMergedTiddlers(l,i);$tw.wiki.addTiddler(s)};var handleConfirmDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"1\")};var handleSuppressDialog=function e(t){var a=t.paramObject;var r=a.dialog,d=a.suppress;if(_utils2.default.isTrue(d,false)){_utils2.default.setEntry($tm.ref.sysUserConf,\"suppressedDialogs.\"+r,true)}};var handleDownloadGraph=function e(t){var a=t.paramObject;var r=a.view;var d=$tm.adapter.getGraph({view:r});d.nodes=_utils2.default.convert(d.nodes,\"array\");d.edges=_utils2.default.convert(d.edges,\"array\");var i=\"$:/temp/tmap/export\";_utils2.default.setField(i,\"text\",JSON.stringify(d,null,2));$tw.rootWidget.dispatchEvent({type:\"tm-download-file\",param:i,paramObject:{filename:r+\".json\"}})};var handleConfigureSystem=function e(){var t=_utils2.default.getMatches($tm.selector.allPotentialNodes);var a=$tm.adapter.getEdgesForSet(t);var r=$tw.wiki.getTiddler($tm.path.pluginRoot).fields;var d=$tw.wiki.getTiddlerData($tm.ref.sysMeta);var i=_utils2.default.getTiddler($tm.ref.liveTab).hasTag(\"$:/tags/SideBar\");var l={numberOfNodes:\"\"+t.length,numberOfEdges:\"\"+Object.keys(a).length,pluginVersion:\"v\"+r.version,dataStructureVersion:\"v\"+d.dataStructureState,dialog:{preselects:{liveTab:\"\"+i,\"inherited-style\":JSON.stringify(_vis2.default),\"config.vis\":_utils2.default.getText($tm.ref.visUserConf),\"config.sys\":$tm.config.sys}}};$tm.dialogManager.open(\"globalConfig\",l,function(e,t){if(!e)return;var a=_utils2.default.getPropertiesByPrefix(t.fields,\"config.sys.\",true);$tw.wiki.setTiddlerData($tm.ref.sysUserConf,a);if(_utils2.default.isTrue(t.fields.liveTab,false)){_utils2.default.setField($tm.ref.liveTab,\"tags\",\"$:/tags/SideBar\")}else{$tw.wiki.deleteTiddler($tm.ref.liveTab)}_utils2.default.setField($tm.ref.visUserConf,\"text\",t.fields[\"config.vis\"])})};var handleGenerateWidget=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d={dialog:{preselects:{\"var.view\":r.view||$tm.misc.defaultViewLabel}}};$tm.dialogManager.open(\"widgetCodeGenerator\",d)};var handleRemoveEdge=function e(t){var a=t.paramObject;$tm.adapter.deleteEdge(a)};var handleCreateEdge=function e(t){var a=t.paramObject;var r=a.from,d=a.to,i=a.force;if(!r||!d)return;if(_utils2.default.tiddlerExists(r)&&_utils2.default.tiddlerExists(d)||i){_utils2.default.addTiddler(d);_utils2.default.addTiddler(r);var l=new _Edge2.default($tm.adapter.makeNode(r).id,$tm.adapter.makeNode(d).id,a.label,a.id);$tm.adapter.insertEdge(l);$tm.notify(\"Edge inserted\")}};var handleOpenTypeManager=function e(t){var a=t.type,r=t.paramObject,d=r===undefined?{}:r;var i=a.match(/tmap:tm-(.*)/)[1];if(i===\"manage-edge-types\"){var l=\"Edge-Type Manager\";var s=$tm.selector.allEdgeTypes;var n=$tm.path.edgeTypes}else{var l=\"Node-Type Manager\";var s=$tm.selector.allNodeTypes;var n=$tm.path.nodeTypes}var p={mode:i,topic:l,searchSelector:s,typeRootPath:n};var o=$tm.dialogManager.open(\"MapElementTypeManager\",p);if(d.type){handleLoadTypeForm({paramObject:{mode:i,id:d.type,output:o.fields[\"output\"]}})}};var handleLoadTypeForm=function e(t){var a=t.paramObject,r=a.mode,d=a.id,i=a.output;var l=i;var s=r===\"manage-edge-types\"?_EdgeType2.default.getInstance(d):_NodeType2.default.getInstance(d);s.save(l,true);if(r===\"manage-edge-types\"){var n=$tm.adapter.selectEdgesByType(s);var p=Object.keys(n).length;_utils2.default.setField(l,\"temp.usageCount\",p)}$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(l),{typeTRef:s.fullPath,\"temp.idImmutable\":s.isShipped?\"true\":\"\",\"temp.newId\":s.id,\"inherited-style\":JSON.stringify((r===\"manage-edge-types\"?$tm.config.vis.edges:$tm.config.vis.nodes)||{})}));_utils2.default.deleteByPrefix(\"$:/state/tabs/MapElementTypeManager\")};var handleSaveTypeForm=function e(t){var a=t.paramObject;var r=_utils2.default.getTiddler(a.output);if(!r)return;var d=r.fields.id;var i=a.mode;if(_utils2.default.isTrue(r.fields[\"temp.deleteType\"],false)){deleteType(i,d,r)}else{saveType(i,d,r)}};var deleteType=function e(t,a,r){var d=t===\"manage-edge-types\"?_EdgeType2.default.getInstance(a):_NodeType2.default.getInstance(a);$tm.logger(\"debug\",\"Deleting type\",d);if(t===\"manage-edge-types\"){$tm.adapter._processEdgesWithType(d,{action:\"delete\"})}else{$tm.adapter.removeNodeType(d)}$tw.wiki.addTiddler(new $tw.Tiddler({title:_utils2.default.getTiddlerRef(r)}));$tm.notify(\"Deleted type\")};var saveType=function e(t,a,r){var d=_utils2.default.getTiddler(r);var i=t===\"manage-edge-types\"?_EdgeType2.default:_NodeType2.default;var l=new i(a,d);l.save();var s=d.fields[\"temp.newId\"];if(s&&s!==d.fields[\"id\"]){if(t===\"manage-edge-types\"){$tm.adapter._processEdgesWithType(l,{action:\"rename\",newName:s})}else{new _NodeType2.default(s,l).save();$tw.wiki.deleteTiddler(l.fullPath)}_utils2.default.setField(d,\"id\",s)}$tm.notify(\"Saved type data\")};var handleCreateType=function e(t){var a=t.paramObject,r=a.mode,d=a.id,i=d===undefined?\"New type\":d,l=a.output;var s=r===\"manage-edge-types\"?new _EdgeType2.default(i):new _NodeType2.default(i);s.save();handleLoadTypeForm({paramObject:{id:s.id,mode:r,output:l}})};var name=exports.name=\"tmap.listener\";var platforms=exports.platforms=[\"browser\"];var after=exports.after=[\"rootwidget\",\"tmap.caretaker\"];var before=exports.before=[\"story\"];var synchronous=exports.synchronous=true;var startup=exports.startup=function e(){_utils2.default.addTWlisteners({\"tmap:tm-remove-edge\":handleRemoveEdge,\"tmap:tm-load-type-form\":handleLoadTypeForm,\"tmap:tm-save-type-form\":handleSaveTypeForm,\"tmap:tm-create-type\":handleCreateType,\"tmap:tm-create-edge\":handleCreateEdge,\"tmap:tm-suppress-dialog\":handleSuppressDialog,\"tmap:tm-generate-widget\":handleGenerateWidget,\"tmap:tm-download-graph\":handleDownloadGraph,\"tmap:tm-configure-system\":handleConfigureSystem,\"tmap:tm-manage-edge-types\":handleOpenTypeManager,\"tmap:tm-manage-node-types\":handleOpenTypeManager,\"tmap:tm-cancel-dialog\":handleCancelDialog,\"tmap:tm-clear-tiddler\":handleClearTiddler,\"tmap:tm-merge-tiddlers\":handleMixTiddlers,\"tmap:tm-confirm-dialog\":handleConfirmDialog},$tw.rootWidget,undefined)};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Listener.js.map\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/services/tracker": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/services/tracker",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/services/tracker\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Tracker=function(){function e(t){_classCallCheck(this,e);this.wiki=$tw.wiki;this.logger=$tm.logger;this._createIndex()}_createClass(e,[{key:\"_createIndex\",value:function e(){var t=this.tById={};var i=this.idByT={};this.wiki.each(function(e,r){if(_utils2.default.isSystemOrDraft(e)){return}var l=e.fields[\"tmap.id\"];if(!l){l=_utils2.default.genUUID();_utils2.default.setField(e,\"tmap.id\",l)}t[l]=r;i[r]=l})}},{key:\"assignId\",value:function e(t,i){var r=_utils2.default.getTiddler(t);if(!r){throw new ResourceNotFoundException(t)}var l=r.fields[\"tmap.id\"];if(!l||i){l=_utils2.default.genUUID();_utils2.default.setField(r,\"tmap.id\",l);this.logger(\"info\",\"Assigning new id to\",r.fields.title)}this.tById[l]=r.fields.title;this.idByT[r.fields.title]=l;return l}},{key:\"getIdByTiddler\",value:function e(t){return this.idByT[_utils2.default.getTiddlerRef(t)]}},{key:\"getIdsByTiddlers\",value:function e(){return this.idByT}},{key:\"getTiddlersByIds\",value:function e(){return this.tById}},{key:\"getTiddlerById\",value:function e(t){return this.tById[t]}}]);return e}();exports.default=Tracker;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Tracker.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget",
            "text": "\"use strict\";var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function MapConfigWidget(e,t){_widget.widget.call(this);this.initialise(e,t);this.computeAttributes()}MapConfigWidget.prototype=Object.create(_widget.widget.prototype);MapConfigWidget.prototype.render=function(e,t){this.parentDomNode=e;if(!this.domNode){this.domNode=this.document.createElement(\"div\");$tw.utils.addClass(this.domNode,\"tmap-config-widget\");e.insertBefore(this.domNode,t)}if(this.network){this.network.destroy()}this.networkContainer=document.createElement(\"div\");this.domNode.appendChild(this.networkContainer);this.refreshTrigger=this.getAttribute(\"refresh-trigger\");this.pipeTRef=this.getVariable(\"currentTiddler\");this.inheritedFields=$tw.utils.parseStringArray(this.getAttribute(\"inherited\"));this.extensionTField=this.getAttribute(\"extension\");this.mode=this.getAttribute(\"mode\");for(var i=0;i<this.inheritedFields.length;i++){var s=this.inheritedFields[i];var n=_utils2.default.parseFieldData(this.pipeTRef,s,{});if(this.mode===\"manage-edge-types\"){n={edges:n}}else if(this.mode===\"manage-node-types\"){n={nodes:n}}this.inherited=_utils2.default.merge(this.inherited,n)}this.extension=_utils2.default.parseFieldData(this.pipeTRef,this.extensionTField,{});if(this.mode===\"manage-edge-types\"){if(!this.extension.edges){this.extension={edges:this.extension}}}else if(this.mode===\"manage-node-types\"){if(!this.extension.nodes){this.extension={nodes:this.extension}}}var r=_utils2.default.isTrue(this.getAttribute(\"save-only-changes\"));this.changes=r?{}:this.extension;var o={nodes:[],edges:[]};var a=_utils2.default.merge({},this.inherited,this.extension);$tw.utils.extend(a,{configure:{enabled:true,showButton:false,filter:this.getOptionFilter(this.mode)}});this.network=new _vis2.default.Network(this.networkContainer,o,a);this.network.on(\"configChange\",this.handleConfigChange.bind(this));var l=this.parentDomNode.getBoundingClientRect().height;this.parentDomNode.style[\"height\"]=l+\"px\";var h=this.handleResetEvent.bind(this);this.networkContainer.addEventListener(\"reset\",h,false);$tm.registry.push(this);this.enhanceConfigurator()};MapConfigWidget.prototype.handleResetEvent=function(e){var t={};t[e.detail.trigger.path]=null;this.handleConfigChange(t)};MapConfigWidget.prototype.handleConfigChange=function(e){var t=_utils2.default.flatten(this.changes);var i=_utils2.default.flatten(e);var s=Object.keys(_utils2.default.flatten(e))[0];var n=i[s]===null;if(n){t[s]=undefined;this.changes=_utils2.default.unflatten(t)}else{this.changes=_utils2.default.merge(this.changes,e)}var r=_utils2.default.merge({},this.changes);if(this.mode===\"manage-node-types\"){r=r[\"nodes\"]}if(this.mode===\"manage-edge-types\"){r=r[\"edges\"]}_utils2.default.writeFieldData(this.pipeTRef,this.extensionTField,r,$tm.config.sys.jsonIndentation);var o=\"vis-configuration-wrapper\";var a=this.networkContainer.getElementsByClassName(o)[0];a.style.height=a.getBoundingClientRect().height+\"px\";if(n){window.setTimeout(this.refresh.bind(this),0)}else{window.setTimeout(this.enhanceConfigurator.bind(this),50)}};MapConfigWidget.prototype.enhanceConfigurator=function(){var e=\"vis-configuration-wrapper\";var t=this.networkContainer.getElementsByClassName(e)[0].children;var i=[];var s=_utils2.default.flatten(this.changes);for(var n=0;n<t.length;n++){if(!t[n].classList.contains(\"vis-config-item\"))continue;var r=new VisConfElement(t[n],i,n);i.push(r);if(r.level===0)continue;r.setActive(!!s[r.path])}};function VisConfElement(e,t,i){var s=\"getElementsByClassName\";this.el=e;this.labelEl=e[s](\"vis-config-label\")[0]||e[s](\"vis-config-header\")[0]||e;var n=this.labelEl.innerText||this.labelEl.textContent;this.label=n&&n.match(/([a-zA-Z0-9]+)/)[1];this.level=parseInt(e.className.match(/.*vis-config-s(.).*/)[1])||0;this.path=this.label;if(this.level>0){for(var r=i;r--;){var o=t[r];if(o.level<this.level){this.path=o.path+\".\"+this.path;break}}}}VisConfElement.prototype.setActive=function(e){if(!e)return;var t=\"tmap-vis-config-item-\"+(e?\"active\":\"inactive\");$tw.utils.addClass(this.el,t);if(e){var i=document.createElement(\"button\");i.innerHTML=\"reset\";i.className=\"tmap-config-item-reset\";var s=this;i.addEventListener(\"click\",function(e){e.currentTarget.dispatchEvent(new CustomEvent(\"reset\",{detail:{trigger:s},bubbles:true,cancelable:true}))},false);this.el.appendChild(i)}};MapConfigWidget.prototype.getOptionFilter=function(e){var t={nodes:{borderWidth:true,borderWidthSelected:true,widthConstraint:true,heightConstraint:true,color:{background:true,border:true},font:{color:true,size:true},icon:true,labelHighlightBold:false,shadow:true,shape:true,shapeProperties:{borderDashes:true},size:true},edges:{arrows:true,color:true,dashes:true,font:true,labelHighlightBold:false,length:true,selfReferenceSize:false,shadow:true,smooth:true,width:true},interaction:{hideEdgesOnDrag:true,hideNodesOnDrag:true,tooltipDelay:true},layout:{hierarchical:true},manipulation:{initiallyActive:true},physics:{forceAtlas2Based:{gravitationalConstant:true,springLength:true,springConstant:true,damping:true,centralGravity:true}}};if(e===\"manage-edge-types\"){t={edges:t.edges}}else if(e===\"manage-node-types\"){t={nodes:t.nodes}}else{t.edges.arrows=false}return function(e,i){i=i.concat([e]);var s=t;for(var n=0,r=i.length;n<r;n++){if(s[i[n]]===true){return true}else if(s[i[n]]==null){return false}s=s[i[n]]}return false}};MapConfigWidget.prototype.isZombieWidget=function(){return!document.body.contains(this.parentDomNode)};MapConfigWidget.prototype.destruct=function(){if(this.network){this.network.destroy()}};MapConfigWidget.prototype.refresh=function(e){if(this.isZombieWidget()||!this.network)return;if(!e||e[this.refreshTrigger]){this.refreshSelf();return true}};MapConfigWidget.prototype.setNull=function(e){for(var t in e){if(_typeof(e[t])==\"object\"){this.setNull(e[t])}else{e[t]=undefined}}};exports[\"tmap-config\"]=MapConfigWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/ConfigurationWidget.js.map\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem",
            "text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListItemWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var i=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r));i.arrows=$tm.misc.arrows;return i}_createClass(t,[{key:\"execute\",value:function e(){var t=this.parseTreeNode;var r=$tm.tracker.getTiddlerById(t.neighbour.id);var i=_utils2.default.flatten(t.edge);for(var o in i){if(typeof i[o]===\"string\"){this.setVariable(\"edge.\"+o,i[o])}}this.setVariable(\"currentTiddler\",r);this.setVariable(\"neighbour\",r);var n=$tm.indeces.allETy[i.type];var s=i.to===t.neighbour.id?\"to\":\"from\";var a=s;if(n.biArrow){a=\"bi\"}else{if(s===\"to\"&&n.invertedArrow){a=\"from\"}else if(s===\"from\"&&n.invertedArrow){a=\"to\"}}this.setVariable(\"direction\",a);this.setVariable(\"directionSymbol\",a===\"bi\"?this.arrows.bi:a===\"from\"?this.arrows.in:this.arrows.out);this.makeChildWidgets()}},{key:\"refresh\",value:function e(t){return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-edgelistitem\"]=EdgeListItemWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListItemWidget.js.map\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget",
            "text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r))}_createClass(t,[{key:\"render\",value:function e(t,r){this.parentDomNode=t;this.computeAttributes();this.execute();this.renderChildren(t,r)}},{key:\"execute\",value:function e(){var t=[this.getVariable(\"currentTiddler\")];var r=this.getAttribute(\"filter\",\"\");var i=this.getAttribute(\"direction\",\"both\");var s=$tm.indeces.allETy;var n=_utils2.default.getEdgeTypeMatches(r,s);var u={typeWL:_utils2.default.getLookupTable(n),direction:i};var o=$tm.adapter.getNeighbours(t,u),a=o.nodes,l=o.edges;var f=[];for(var c in l){var h=l[c];var p=a[h.to]||a[h.from];if(!p){continue}f.push({type:\"tmap-edgelistitem\",edge:h,typeWL:u.typeWL,neighbour:p,children:this.parseTreeNode.children})}if(!f.length){this.wasEmpty=true;f=this.getEmptyMessage()}else if(this.wasEmpty){this.removeChildDomNodes()}this.makeChildWidgets(f)}},{key:\"getEmptyMessage\",value:function e(){var t=this.wiki.parseText(\"text/vnd.tiddlywiki\",this.getAttribute(\"emptyMessage\",\"\"),{parseAsInline:true});return t?t.tree:[]}},{key:\"refresh\",value:function e(t){var r=this.computeAttributes();if(_utils2.default.hasElements(r)){this.refreshSelf();return true}for(var i in t){if(!_utils2.default.isSystemOrDraft(i)){this.refreshSelf();return true}}return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-connections\"]=EdgeListWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListWidget.js.map\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.tiddlymap=exports.tmap=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var a in i){if(Object.prototype.hasOwnProperty.call(i,a)){e[a]=i[a]}}}return e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var a=t[i];a.enumerable=a.enumerable||false;a.configurable=true;if(\"value\"in a)a.writable=true;Object.defineProperty(e,a.key,a)}}return function(t,i,a){if(i)e(t.prototype,i);if(a)e(t,a);return t}}();var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Popup=require(\"$:/plugins/felixhayashi/tiddlymap/js/Popup\");var _Popup2=_interopRequireDefault(_Popup);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _SelectionRectangle=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\");var _SelectionRectangle2=_interopRequireDefault(_SelectionRectangle);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,i=Array(e.length);t<e.length;t++){i[t]=e[t]}return i}else{return Array.from(e)}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var MapWidget=function(e){_inherits(t,e);function t(e,i){_classCallCheck(this,t);var a=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,i));a.getAttr=a.getAttribute;a.isDebug=_utils2.default.isTrue($tm.config.sys.debug,false);_utils2.default.bindTo(a,[\"constructTooltip\",\"handleResizeEvent\",\"handleClickEvent\",\"handleCanvasKeyup\",\"handleCanvasKeydown\",\"handleCanvasScroll\",\"handleCanvasMouseMove\",\"handleWidgetKeyup\",\"handleWidgetKeydown\",\"handleTriggeredRefresh\",\"handleContextMenu\"]);a.callbackManager=new _CallbackManager2.default;a.computeAttributes();a.editorMode=a.getAttr(\"editor\");a.clickToUse=_utils2.default.isTrue(a.getAttr(\"click-to-use\"),false);a.id=a.getAttr(\"object-id\")||a.getStateQualifier();a.widgetPopupsPath=$tm.path.tempPopups+\"/\"+a.id;if(a.editorMode){_utils2.default.addTWlisteners({\"tmap:tm-create-view\":a.handleCreateView,\"tmap:tm-rename-view\":a.handleRenameView,\"tmap:tm-delete-view\":a.handleDeleteView,\"tmap:tm-delete-element\":a.handleDeleteElement,\"tmap:tm-edit-view\":a.handleEditView,\"tmap:tm-generate-widget\":a.handleGenerateWidget,\"tmap:tm-toggle-central-topic\":a.handleSetCentralTopic,\"tmap:tm-save-canvas\":a.handleSaveCanvas},a,a)}_utils2.default.addTWlisteners({\"tmap:tm-focus-node\":a.handleFocusNode,\"tmap:tm-reset-focus\":a.repaintGraph,\"tmap:tm-neighbourhood-reset-trace\":function e(){a.initAndRenderGraph(a.graphDomNode)}},a,a);a.visListeners={click:a.handleVisSingleClickEvent,doubleClick:a.handleVisDoubleClickEvent,stabilized:a.handleVisStabilizedEvent,selectNode:a.handleVisSelectNode,deselectNode:a.handleVisDeselectNode,dragStart:a.handleVisDragStart,dragEnd:a.handleVisDragEnd,hoverNode:a.handleVisHoverElement,hoverEdge:a.handleVisHoverElement,blurNode:a.handleVisBlurElement,blurEdge:a.handleVisBlurElement,beforeDrawing:a.handleVisBeforeDrawing,afterDrawing:a.handleVisAfterDrawing,stabilizationProgress:a.handleVisLoading,stabilizationIterationsDone:a.handleVisLoadingDone};a.windowDomListeners={resize:[a.handleResizeEvent,false],click:[a.handleClickEvent,false],mousemove:[a.handleCanvasMouseMove,true]};a.canvasDomListeners={keyup:[a.handleCanvasKeyup,true],keydown:[a.handleCanvasKeydown,true],mousewheel:[a.handleCanvasScroll,true],DOMMouseScroll:[a.handleCanvasScroll,true],contextmenu:[a.handleContextMenu,true],MozMousePixelScroll:[a.handleExtraCanvasScroll,true]};a.widgetDomListeners={keyup:[a.handleWidgetKeyup,true],keydown:[a.handleWidgetKeydown,true]};a.conVector={from:null,to:null};return a}_createClass(t,[{key:\"handleConnectionEvent\",value:function e(t,i){var a=this;var s=this.view.getEdgeTypeFilter();var r={fromLabel:$tm.adapter.selectNodeById(t.from).label,toLabel:$tm.adapter.selectNodeById(t.to).label,view:this.view.getLabel(),eTyFilter:s.raw};$tm.dialogManager.open(\"getEdgeType\",r,function(e,r){if(e){var n=_utils2.default.getText(r);var o=_EdgeType2.default.getInstance(n);if(!o.namespace){var l=_EdgeType2.default.getIdParts(o.id),d=l.marker,h=l.name;var u=a.view.getConfig(\"edge_type_namespace\");o=_EdgeType2.default.getInstance(_EdgeType2.default.getId(d,u,h))}if(!o.exists()){o.save()}t.type=o.id;$tm.adapter.insertEdge(t);a.isPreventZoomOnNextUpdate=true;if(!a.view.isEdgeTypeVisible(o)){$tm.dialogManager.open(\"edgeNotVisible\",{type:o.id,view:a.view.getLabel(),eTyFilter:s.pretty})}}if(typeof i===\"function\"){i(e)}})}},{key:\"checkForFreshInstall\",value:function e(){if(!_utils2.default.getEntry($tm.ref.sysMeta,\"showWelcomeMessage\",true)){return}_utils2.default.setEntry($tm.ref.sysMeta,\"showWelcomeMessage\",false);var t={dialog:{preselects:{\"config.storyview\":\"true\",\"config.navigation\":\"true\",\"config.sidebar\":\"true\",\"config.demo\":\"true\"}}};$tm.dialogManager.open(\"welcome\",t,function(e,t){var i=_utils2.default.getPropertiesByPrefix(t.fields,\"config.\",true);if(i[\"storyview\"]&&_utils2.default.tiddlerExists(\"$:/plugins/felixhayashi/topstoryview\")){_utils2.default.setText(\"$:/view\",\"top\")}if(i[\"navigation\"]){_utils2.default.setText(\"$:/config/Navigation/openLinkFromInsideRiver\",\"above\");_utils2.default.setText(\"$:/config/Navigation/openLinkFromOutsideRiver\",\"top\")}if(i[\"sidebar\"]){_utils2.default.setText(\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\",\"fixed-fluid\")}if(i[\"demo\"]){var a=$tm.misc.defaultViewLabel;var s=$tm.adapter.insertNode({label:\"Have fun with\",x:0,y:0},a);var r=$tm.adapter.insertNode({label:\"TiddlyMap!!\",x:100,y:100},a);$tm.adapter.insertEdge({from:s.id,to:r.id})}if(Object.keys(i).length){_utils2.default.touch(\"$:/plugins/felixhayashi/tiddlymap\")}})}},{key:\"openStandardConfirmDialog\",value:function e(t,i){var a={message:i};$tm.dialogManager.open(\"getConfirmation\",a,t)}},{key:\"logger\",value:function e(t,i){if(this.isDebug){var a=Array.prototype.slice.call(arguments,1);a.unshift(\"@\"+this.id);a.unshift(t);$tm.logger.apply(this,a)}}},{key:\"render\",value:function e(t,i){this.parentDomNode=t;this.domNode=this.document.createElement(\"div\");t.insertBefore(this.domNode,i);this.registerClassNames(this.domNode);this.viewHolderRef=this.getViewHolderRef();this.view=this.getView();this.graphBarDomNode=this.document.createElement(\"div\");$tw.utils.addClass(this.graphBarDomNode,\"tmap-topbar\");this.domNode.appendChild(this.graphBarDomNode);this.graphDomNode=this.document.createElement(\"div\");this.domNode.appendChild(this.graphDomNode);$tw.utils.addClass(this.graphDomNode,\"tmap-vis-graph\");if(_utils2.default.isPreviewed(this)){$tw.utils.addClass(this.domNode,\"tmap-static-mode\");this.renderPreview(this.graphBarDomNode,this.graphDomNode)}else{this.renderFullWidget(this.domNode,this.graphBarDomNode,this.graphDomNode);var a=this.document.createElement(\"canvas\");$tw.utils.addClass(a,\"tmap-download-canvas\");this.domNode.appendChild(a)}}},{key:\"renderPreview\",value:function e(t,i){var a=this.view.snapshotTRef;var s=_utils2.default.getTiddler(a);var r=this.document.createElement(\"span\");r.innerHTML=this.view.getLabel();r.className=\"tmap-view-label\";t.appendChild(r);if(s){var n=_utils2.default.getTiddlerNode(this.view.getRoot());n.children.push(_utils2.default.getTranscludeNode(a));this.makeChildWidgets([n]);this.renderChildren(i,i.firstChild)}else{$tw.utils.addClass(i,\"tmap-graph-placeholder\")}}},{key:\"renderFullWidget\",value:function e(t,i,a){_utils2.default.setDomListeners(\"add\",window,this.windowDomListeners);_utils2.default.setDomListeners(\"add\",t,this.widgetDomListeners);this.addLoadingBar(this.domNode);this.tooltip=new _Popup2.default(this.domNode,{className:\"tmap-tooltip\",showDelay:$tm.config.sys.popups.delay});this.contextMenu=new _Popup2.default(this.domNode,{className:\"tmap-context-menu\",showDelay:0,hideOnClick:true,leavingDelay:999999});this.sidebar=_utils2.default.getFirstElementByClassName(\"tc-sidebar-scrollable\");this.isInSidebar=this.sidebar&&!this.domNode.isTiddlyWikiFakeDom&&this.sidebar.contains(this.domNode);this.rebuildEditorBar(i);this.reloadRefreshTriggers();this.initAndRenderGraph(a);$tm.registry.push(this);this.checkForFreshInstall();if(this.id===$tm.misc.mainEditorId){var s=$tm.url;if(s&&s.query[\"tmap-enlarged\"]){this.toggleEnlargedMode(s.query[\"tmap-enlarged\"]);this.setView(s.query[\"tmap-view\"])}}}},{key:\"registerClassNames\",value:function e(t){var i=$tw.utils.addClass;i(t,\"tmap-widget\");if(this.clickToUse){i(t,\"tmap-click-to-use\")}if(this.getAttr(\"editor\")===\"advanced\"){i(t,\"tmap-advanced-editor\")}if(this.getAttr(\"design\")===\"plain\"){i(t,\"tmap-plain-design\")}if(!_utils2.default.isTrue(this.getAttr(\"show-buttons\"),true)){i(t,\"tmap-no-buttons\")}if(this.getAttr(\"class\")){i(t,this.getAttr(\"class\"))}}},{key:\"addLoadingBar\",value:function e(t){this.graphLoadingBarDomNode=this.document.createElement(\"progress\");$tw.utils.addClass(this.graphLoadingBarDomNode,\"tmap-loading-bar\");t.appendChild(this.graphLoadingBarDomNode)}},{key:\"rebuildEditorBar\",value:function e(){this.removeChildDomNodes();var t=this.view;var i=\"tmap-unicode-button\";var a=i+\" tmap-active-button\";var s={widgetQualifier:this.getStateQualifier(),widgetTempPath:this.widgetTempPath,widgetPopupsPath:this.widgetPopupsPath,isViewBound:String(this.isViewBound()),viewRoot:t.getRoot(),viewLabel:t.getLabel(),viewHolder:this.getViewHolderRef(),edgeTypeFilter:t.edgeTypeFilterTRef,allEdgesFilter:$tm.selector.allEdgeTypes,isShowNeighbourhood:String(t.isEnabled(\"neighbourhood_scope\")),tracingBtnClass:t.isEnabled(\"neighbourhood_trace_clicks\")?a:i,neighScopeBtnClass:t.isEnabled(\"neighbourhood_scope\")?a:i,rasterMenuBtnClass:t.isEnabled(\"raster\")?a:i};for(var r in s){this.setVariable(r,s[r])}var n=_utils2.default.getTiddlerNode(t.getRoot());if(this.editorMode===\"advanced\"){n.children.push(_utils2.default.getTranscludeNode($tm.ref.graphBar))}else{var o=_utils2.default.getElementNode(\"span\",\"tmap-view-label\",t.getLabel());n.children.push(o)}n.children.push(_utils2.default.getTranscludeNode($tm.ref.focusButton));this.makeChildWidgets([n]);this.renderChildren(this.graphBarDomNode,this.graphBarDomNode.firstChild)}},{key:\"refresh\",value:function e(t){return false}},{key:\"update\",value:function e(t){if(!this.network||this.isZombieWidget()||_utils2.default.isPreviewed(this)){return}var i=t.changedTiddlers;this.callbackManager.refresh(i);if(this.isViewSwitched(i)||this.hasChangedAttributes()||t[env.path.options]||i[this.view.getRoot()]){this.logger(\"warn\",\"View switched or config changed\");this.isPreventZoomOnNextUpdate=false;this.view=this.getView(true);this.reloadRefreshTriggers();this.trace=_utils2.default.makeHashMap();this.rebuildEditorBar();this.reloadBackgroundImage();this.initAndRenderGraph(this.graphDomNode)}else{var a=this.view.update(t);if(a){this.logger(\"warn\",\"View components modified\");this.rebuildGraph({resetFocus:{delay:1e3,duration:1e3}})}else{if(t[env.path.nodeTypes]||this.hasChangedElements(i)){this.rebuildGraph()}this.refreshChildren(i)}}}},{key:\"hidePopups\",value:function e(t,i){this.tooltip.hide(t,i);this.contextMenu.hide(0,true)}},{key:\"reloadRefreshTriggers\",value:function e(){this.callbackManager.remove(this.refreshTriggers);var t=this.getAttr(\"refresh-triggers\")||this.view.getConfig(\"refresh-triggers\");this.refreshTriggers=$tw.utils.parseStringArray(t)||[];this.logger(\"debug\",\"Registering refresh trigger\",this.refreshTriggers);for(var i=this.refreshTriggers.length;i--;){this.callbackManager.add(this.refreshTriggers[i],this.handleTriggeredRefresh,false)}}},{key:\"rebuildGraph\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.resetFocus;if(_utils2.default.isPreviewed(this)){return}this.logger(\"debug\",\"Rebuilding graph\");this.hidePopups(0,true);this.hasNetworkStabilized=false;var a=this.rebuildGraphData();if(a.changedNodes.withoutPosition.length){i=i||{delay:1e3,duration:1e3};if(!this.view.isEnabled(\"physics_mode\")){var s=this.visOptions.physics;s[s.solver].centralGravity=.25;this.network.setOptions(this.visOptions)}}if(!_utils2.default.hasElements(this.graphData.nodesById)){return}if(i){var r=this.isPreventZoomOnNextUpdate==null?false:typeof this.isPreventZoomOnNextUpdate===\"number\"?this.isPreventZoomOnNextUpdate>Date.now():this.isPreventZoomOnNextUpdate;if(!r){this.network.stabilize();this.resetFocus=i}if(typeof this.isPreventZoomOnNextUpdate!==\"number\"){this.isPreventZoomOnNextUpdate=false}}}},{key:\"getContainer\",value:function e(){return this.domNode}},{key:\"rebuildGraphData\",value:function e(){var t=this;$tm.start(\"Reloading Network\");var i={view:this.view,matches:_utils2.default.getMatches(this.view.getNodeFilter(\"compiled\"))};if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){var a=i.matches;var s=Object.keys(this.trace);var r=[].concat(_toConsumableArray(a.filter(function(e){return!t.trace[e]})),_toConsumableArray(s));i.matches=r;i.includeNeighboursOf=this.view.isEnabled(\"neighbourhood_include_traced_node_neighbours\")?function(e){return r.includes(e)}:function(e){return a.includes(e)}}var n=$tm.adapter.getGraph(i);var o=_utils2.default.refreshDataSet(this.graphData.nodes,n.nodes);var l=_utils2.default.refreshDataSet(this.graphData.edges,n.edges);this.graphData.nodesById=n.nodes;this.graphData.edgesById=n.edges;_utils2.default.setField(\"$:/temp/tmap/nodes/\"+this.view.getLabel(),\"list\",$tm.adapter.getTiddlersByIds(n.nodes));$tm.stop(\"Reloading Network\");return{changedEdges:l,changedNodes:o}}},{key:\"isViewBound\",value:function e(){return _utils2.default.startsWith(this.getViewHolderRef(),$tm.path.localHolders)}},{key:\"isViewSwitched\",value:function e(t){return!_ViewAbstraction2.default.exists(this.view)||t[this.getViewHolderRef()]}},{key:\"hasChangedAttributes\",value:function e(){return Object.keys(this.computeAttributes()).length}},{key:\"hasChangedElements\",value:function e(t){var i=[];var a=this.graphData.nodesById;var s=this.view.isEnabled(\"neighbourhood_scope\");for(var r in t){if(_utils2.default.isSystemOrDraft(r)){continue}if(a[$tm.adapter.getId(r)]||s){return true}if(t[r].modified){i.push(r)}}if(i.length){var n=this.view.getNodeFilter(\"compiled\");var o=_utils2.default.getMatches(n,i);return!!o.length}}},{key:\"initAndRenderGraph\",value:function e(t){var i=this;if(this.network){this._destructVis()}this.logger(\"info\",\"Initializing and rendering the graph\");if(!this.isInSidebar){this.callbackManager.add(\"$:/state/sidebar\",this.handleResizeEvent)}this.visOptions=this.getVisOptions();this.graphData={nodes:new _vis2.default.DataSet,edges:new _vis2.default.DataSet,nodesById:_utils2.default.makeHashMap(),edgesById:_utils2.default.makeHashMap()};this.tooltip.setEnabled(_utils2.default.isTrue($tm.config.sys.popups.enabled,true));this.trace=_utils2.default.makeHashMap();this.network=new _vis2.default.Network(t,this.graphData,this.visOptions);this.canvas=t.getElementsByTagName(\"canvas\")[0];this.networkDomNode=_utils2.default.getFirstElementByClassName(\"vis-network\",t,true);this.canvas.tabIndex=0;for(var a in this.visListeners){this.network.on(a,this.visListeners[a].bind(this))}this.addGraphButtons({\"fullscreen-button\":function e(){i.toggleEnlargedMode(\"fullscreen\")},\"halfscreen-button\":function e(){i.toggleEnlargedMode(\"halfscreen\")}});_utils2.default.setDomListeners(\"add\",this.canvas,this.canvasDomListeners);this.reloadBackgroundImage();this.rebuildGraph({resetFocus:{delay:0,duration:0}});this.handleResizeEvent();this.canvas.focus();if(this.isLiveView()&&this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[_utils2.default.getText(this.refreshTriggers[0])]=true}}},{key:\"handleCanvasKeyup\",value:function e(t){var i=this;var a=this.network.getSelectedNodes();if(t.ctrlKey){t.preventDefault();if(t.keyCode===88){if(this.editorMode){this.handleAddNodesToClipboard(\"move\")}else{$tm.notify(\"Map is read only!\")}}else if(t.keyCode===67){this.handleAddNodesToClipboard(\"copy\")}else if(t.keyCode===86){this.handlePasteNodesFromClipboard()}else if(t.keyCode===65){var s=Object.keys(this.graphData.nodesById);this.network.selectNodes(s)}else if(t.keyCode===49||t.keyCode===50){if(a.length!==1)return;var r=t.keyCode===49?\"from\":\"to\";$tm.notify(_utils2.default.ucFirst(r)+\"-part selected\");this.conVector[r]=a[0];if(this.conVector.from&&this.conVector.to){this.handleConnectionEvent(this.conVector,function(){i.conVector={from:null,to:null}})}}}else{if(t.keyCode===13){if(a.length!==1)return;this.openTiddlerWithId(a[0])}}}},{key:\"handleCanvasKeydown\",value:function e(t){if(t.altKey||t.metaKey){t.preventDefault();if(t.keyCode>=48&&t.keyCode<=57){var i=String.fromCharCode(t.keyCode);this.view.setConfig(\"neighbourhood_scope\",i)}}else{if(t.keyCode===46){t.preventDefault();this.handleRemoveElements(this.network.getSelection())}}}},{key:\"handleDeleteElement\",value:function e(t){var i=t.paramObject.id;var a=i?[i]:this.network.getSelectedNodes();this.handleRemoveElements({nodes:a})}},{key:\"handleCanvasMouseMove\",value:function e(t){var i=this.network;if(!(t.ctrlKey&&t.buttons)){if(this.selectRect){this.selectRect=null;var a=i.getSelectedNodes();$tm.notify(a.length+\" nodes selected\");i.redraw()}return}t.preventDefault();t.stopPropagation();if(!this.domNode.contains(t.target)){return}var s=i.DOMtoCanvas({x:t.offsetX,y:t.offsetY});if(!this.selectRect){this.selectRect=new _SelectionRectangle2.default(s.x,s.y)}this.selectRect.span(s.x,s.y);var r=i.getPositions();var n=i.getSelectedNodes();for(var o in r){if(this.selectRect.isPointWithin(r[o])&&!_utils2.default.inArray(o,n)){n.push(o)}}i.selectNodes(n);this.assignActiveStyle(n);i.redraw()}},{key:\"handleCanvasScroll\",value:function e(t){var i=!!(this.isInSidebar||t.ctrlKey||this.enlargedMode||this.clickToUse&&this.networkDomNode.classList.contains(\"vis-active\"));var a=this.visOptions.interaction;var s=i===a.zoomView;if(i||!s){t.preventDefault()}if(!s){t.stopPropagation();a.zoomView=i;this.network.setOptions({interaction:{zoomView:i}});return false}}},{key:\"handleExtraCanvasScroll\",value:function e(t){t.preventDefault()}},{key:\"handleContextMenu\",value:function e(t){var i=this;t.preventDefault();var a=this.network;this.hidePopups(0,true);var s=a.getNodeAt({x:t.offsetX,y:t.offsetY});if(!s)return;var r=a.getSelectedNodes();if(!_utils2.default.inArray(s,r)){r=[s];a.selectNodes(r)}this.contextMenu.show(r,function(e,t){var a=e.length>1?\"multi\":\"single\";var s=\"$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node\";_utils2.default.registerTransclude(i,\"contextMenuWidget\",s);i.contextMenuWidget.setVariable(\"mode\",a);i.contextMenuWidget.render(t)})}},{key:\"handleWidgetKeyup\",value:function e(t){}},{key:\"handleWidgetKeydown\",value:function e(t){if(t.ctrlKey){t.preventDefault();if(t.keyCode===70){t.preventDefault();var i=this.widgetPopupsPath+\"/focus\";_utils2.default.setText(i,_utils2.default.getText(i)?\"\":\"1\")}else{return}}else if(t.keyCode===120){t.preventDefault();this.toggleEnlargedMode(\"halfscreen\")}else if(t.keyCode===121){t.preventDefault();this.toggleEnlargedMode(\"fullscreen\")}else if(t.keyCode===27){t.preventDefault();_utils2.default.deleteByPrefix(this.widgetPopupsPath)}else{return}this.canvas.focus()}},{key:\"handlePasteNodesFromClipboard\",value:function e(){if(!this.editorMode){$tm.notify(\"Map is read only!\");return}if(!$tm.clipBoard||$tm.clipBoard.type!==\"nodes\"){$tm.notify(\"TiddlyMap clipboad is empty!\")}var t=$tm.clipBoard.nodes;var i=Object.keys(t);for(var a=i.length;a--;){var s=i[a];if(this.graphData.nodesById[s]){continue}this.view.addNode(t[s]);this.graphData.nodes.update({id:s})}this.network.selectNodes(i);this.rebuildGraph({resetFocus:{delay:0,duration:0}});$tm.notify(\"pasted \"+i.length+\" nodes into map.\")}},{key:\"handleAddNodesToClipboard\",value:function e(t){var i=this.network.getSelectedNodes();if(!i.length){return}$tm.clipBoard={type:\"nodes\",nodes:this.graphData.nodes.get(i,{returnType:\"Object\"})};$tm.notify(\"Copied \"+i.length+\" nodes to clipboard\");if(t===\"move\"){for(var a=i.length;a--;){this.view.removeNode(i[a])}}this.isPreventZoomOnNextUpdate=true}},{key:\"getVisOptions\",value:function e(){var t=this;var i=$tm.config.vis;var a=_utils2.default.parseJSON(this.view.getConfig(\"vis\"))||{};var s=a.layout||{},r=s.hierarchical;var n={layout:{hierarchical:{enabled:r===undefined||r===null?false:typeof r===\"boolean\"?r:r.enabled!==false}}};var o=_utils2.default.merge({},i,_utils2.default.merge(a,n));o.clickToUse=this.clickToUse;o.manipulation.enabled=!!this.editorMode;o.manipulation.deleteNode=function(e,i){t.handleRemoveElements(e);t.resetVisManipulationBar(i)};o.manipulation.deleteEdge=function(e,i){t.handleRemoveElements(e);t.resetVisManipulationBar(i)};o.manipulation.addEdge=function(e,i){t.handleConnectionEvent(e);t.resetVisManipulationBar(i)};o.manipulation.addNode=function(e,i){t.handleInsertNode(e);t.resetVisManipulationBar(i)};o.manipulation.editNode=function(e,i){t.handleEditNode(e);t.resetVisManipulationBar(i)};o.interaction.zoomView=!!(this.isInSidebar||this.enlargedMode);o.manipulation.editEdge=false;var l=o.physics;l[l.solver]=l[l.solver]||{};l.stabilization.iterations=1e3;this.logger(\"debug\",\"Loaded graph options\",o);return o}},{key:\"resetVisManipulationBar\",value:function e(t){if(t){t(null)}this.network.disableEditMode();this.network.enableEditMode()}},{key:\"isVisInEditMode\",value:function e(){return this.graphDomNode.getElementsByClassName(\"vis-button vis-back\").length>0}},{key:\"isLiveView\",value:function e(){return this.id===\"live_tab\"}},{key:\"handleCreateView\",value:function e(){var t=this;var i={view:this.view.getLabel()};$tm.dialogManager.open(\"createView\",i,function(e,i){if(!e)return;var a=_utils2.default.getField(i,\"name\");var s=_utils2.default.getField(i,\"clone\",false);if(_ViewAbstraction2.default.exists(a)){$tm.notify(\"Forbidden! View already exists!\");return}if(s&&t.isLiveView()){$tm.notify(\"Forbidden to clone the live view!\");return}var r=new _ViewAbstraction2.default(a,{isCreate:true,protoView:s?t.view:null});t.setView(r)})}},{key:\"handleRenameView\",value:function e(){var t=this;if(this.view.isLocked()){$tm.notify(\"Forbidden!\");return}var i=this.view.getOccurrences();var a={count:i.length.toString(),refFilter:_utils2.default.joinAndWrap(i,\"[[\",\"]]\")};$tm.dialogManager.open(\"renameView\",a,function(e,i){if(!e){return}var a=_utils2.default.getText(i);if(!a){$tm.notify(\"Invalid name!\")}else if(_ViewAbstraction2.default.exists(a)){$tm.notify(\"Forbidden! View already exists!\")}else{t.view.rename(a);t.setView(t.view)}})}},{key:\"handleEditView\",value:function e(){var t=this;var i=JSON.stringify($tm.config.vis);var a=this.graphData;var s=this.view.getConfig();var r={\"filter.prettyNodeFltr\":this.view.getNodeFilter(\"pretty\"),\"filter.prettyEdgeFltr\":this.view.getEdgeTypeFilter(\"pretty\"),\"inherited-style\":i};var n={view:this.view.getLabel(),createdOn:this.view.getCreationDate(true),numberOfNodes:Object.keys(a.nodesById).length.toString(),numberOfEdges:Object.keys(a.edgesById).length.toString(),dialog:{preselects:$tw.utils.extend({},s,r)}};$tm.dialogManager.open(\"configureView\",n,function(e,i){if(!e){return}var a=_utils2.default.getPropertiesByPrefix(i.fields,\"config.\",true);var s=t.view.getConfig(\"background_image\");t.view.setConfig(a);if(a[\"physics_mode\"]&&!t.view.isEnabled(\"physics_mode\")){t.view.saveNodePositions(t.network.getPositions())}var r=t.view.getConfig(\"background_image\");if(r&&r!==s){$tm.notify(\"Background changed! You may need to zoom out a bit.\")}var n=_utils2.default.getField(i,\"filter.prettyNodeFltr\",\"\");var o=_utils2.default.getField(i,\"filter.prettyEdgeFltr\",\"\");t.view.setNodeFilter(n);t.view.setEdgeTypeFilter(o)})}},{key:\"handleSaveCanvas\",value:function e(){var t=this;var i=\"$:/temp/tmap/snapshot\";this.createAndSaveSnapshot(100,100,i);var a=this.view.getLabel()+\".png\";var s={dialog:{snapshot:i,view:this.view.getLabel(),preselects:{width:this.canvas.width.toString(),height:this.canvas.height.toString(),name:a,action:\"download\"}}};$tm.dialogManager.open(\"saveCanvas\",s,function(e,a){if(!e)return;var r=a.fields.width||s.dialog.preselects.width;var n=a.fields.height||s.dialog.preselects.height;t.createAndSaveSnapshot(r,n,i);var o=a.fields.name||s.dialog.preselects.imageName;var l=a.fields.action;if(l===\"download\"){t.handleDownloadSnapshot(r,n,o)}else if(l===\"wiki\"){_utils2.default.cp(i,o,true);t.dispatchEvent({type:\"tm-navigate\",navigateTo:o})}else if(l===\"placeholder\"){t.view.addPlaceholder(i)}$tw.wiki.deleteTiddler(\"$:/temp/tmap/snapshot\")})}},{key:\"handleDownloadSnapshot\",value:function e(t,i,a){var s=this.document.createElement(\"a\");var r=this.view.getLabel();s.download=a;s.href=this.getCanvasAsBase64({size:{width:t,height:i}});var n=new MouseEvent(\"click\");s.dispatchEvent(n)}},{key:\"createAndSaveSnapshot\",value:function e(t,i,a,s){$tw.wiki.addTiddler(new $tw.Tiddler({title:s||a,type:\"image/png\",text:this.getCanvasAsBase64({size:{width:t,height:i},withoutPreamble:true})},$tw.wiki.getCreationFields(),$tw.wiki.getModificationFields()));return a}},{key:\"getCanvasAsBase64\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.withoutPreamble,a=t.size;var s=this.graphDomNode.style.width;var r=this.graphDomNode.style.height;if(a){this.graphDomNode.style.width=a.width+\"px\";this.graphDomNode.style.height=a.height+\"px\";this.network.redraw()}var n=this.canvas.toDataURL(\"image/png\");if(a){this.graphDomNode.style.width=s;this.graphDomNode.style.height=r;this.network.redraw()}return i?_utils2.default.getWithoutPrefix(n,\"data:image/png;base64,\"):n}},{key:\"handleDeleteView\",value:function e(){var t=this;var i=this.view.getLabel();if(this.view.isLocked()){$tm.notify(\"Forbidden!\");return}var a=this.view.getOccurrences();if(a.length){var s={count:a.length.toString(),refFilter:_utils2.default.joinAndWrap(a,\"[[\",\"]]\")};$tm.dialogManager.open(\"cannotDeleteViewDialog\",s);return}var r=\"\\n        You are about to delete the view ''\"+i+\"''\\n        (no tiddler currently references this view).\\n     \";this.openStandardConfirmDialog(function(e){if(!e){return}t.view.destroy();t.setView($tm.misc.defaultViewLabel);var a='view \"'+i+\"' deleted\";t.logger(\"debug\",a);$tm.notify(a)},r)}},{key:\"handleTriggeredRefresh\",value:function e(t){this.logger(\"log\",t,\"Triggered a refresh\");var i=_utils2.default.getTiddler(_utils2.default.getText(t));if(this.isLiveView()){if(i){if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[i.fields.title]=true}var a=i.fields[\"tmap.open-view\"]||$tm.config.sys.liveTab.fallbackView;if(a&&a!==this.view.getLabel()){this.setView(a);return}}}this.rebuildGraph({resetFocus:{delay:1e3,duration:1e3}})}},{key:\"handleRemoveElements\",value:function e(t){var i=t.nodes,a=t.edges;if(i.length){this.handleRemoveNodes(i)}else if(a.length){this.handleRemoveEdges(a)}this.resetVisManipulationBar()}},{key:\"handleRemoveEdges\",value:function e(t){$tm.adapter.deleteEdges(this.graphData.edges.get(t));$tm.notify(\"edge\"+(t.length>1?\"s\":\"\")+\" removed\")}},{key:\"handleRemoveNodes\",value:function e(t){var i=this;var a=$tm.adapter.getTiddlersByIds(t);var s={count:t.length.toString(),tiddlers:$tw.utils.stringifyList(a),dialog:{preselects:{\"delete-from\":\"filter\"}}};$tm.dialogManager.open(\"deleteNodeDialog\",s,function(e,a){if(!e)return;var s=0;for(var r=t.length;r--;){var n=i.view.removeNode(t[r]);if(n){s++}}if(a.fields[\"delete-from\"]===\"system\"){$tm.adapter.deleteNodes(t);s=t.length}i.isPreventZoomOnNextUpdate=true;$tm.notify(\"\\n        Removed \"+s+\"\\n        of \"+t.length+\"\\n        from \"+a.fields[\"delete-from\"]+\"\\n      \")})}},{key:\"toggleEnlargedMode\",value:function e(t){if(!this.isInSidebar&&t===\"halfscreen\"){return}this.logger(\"log\",\"Toggled graph enlargement\");var i=this.enlargedMode;if(i){this.network.setOptions({clickToUse:this.clickToUse});_utils2.default.findAndRemoveClassNames([\"tmap-has-\"+i+\"-widget\",\"tmap-\"+i]);this.enlargedMode=null;document.body.scrollTop=this.scrollTop}if(!i||i!==t&&(t===\"fullscreen\"||t===\"halfscreen\"&&!this.isInSidebar)){this.scrollTop=document.body.scrollTop;this.enlargedMode=t;var a=this.isInSidebar?this.sidebar:_utils2.default.getFirstElementByClassName(\"tc-story-river\");$tw.utils.addClass(this.document.body,\"tmap-has-\"+t+\"-widget\");$tw.utils.addClass(a,\"tmap-has-\"+t+\"-widget\");$tw.utils.addClass(this.domNode,\"tmap-\"+t);this.network.setOptions({clickToUse:false});$tm.notify(\"Toggled \"+t+\" mode\")}this.handleResizeEvent()}},{key:\"handleGenerateWidget\",value:function e(t){$tw.rootWidget.dispatchEvent({type:\"tmap:tm-generate-widget\",paramObject:{view:this.view.getLabel()}})}},{key:\"handleSetCentralTopic\",value:function e(t){var i=t.paramObject;var a=i.id||this.network.getSelectedNodes()[0];if(a===this.view.getConfig(\"central-topic\")){a=\"\"}this.view.setCentralTopic(a)}},{key:\"handleVisStabilizedEvent\",value:function e(t){if(this.hasNetworkStabilized){return}this.hasNetworkStabilized=true;this.logger(\"log\",\"Network stabilized after\",t.iterations,\"iterations\");if(!this.view.isEnabled(\"physics_mode\")){var i=this.graphData.nodesById;var a=[];for(var s in i){if(i[s].x===undefined){a.push(s)}}if(a.length){this.setNodesMoveable(a,false);$tm.notify(a.length+\" nodes were added to the graph\")}var r=this.visOptions.physics;r[r.solver].centralGravity=0;this.network.setOptions(this.visOptions)}if(this.resetFocus){this.fitGraph(this.resetFocus.delay,this.resetFocus.duration);this.resetFocus=null}}},{key:\"handleFocusNode\",value:function e(t){var i=t.param;this.network.focus($tm.adapter.getId(i),{scale:1.5,animation:true})}},{key:\"isZombieWidget\",value:function e(){return this.domNode.isTiddlyWikiFakeDom===true||!this.document.body.contains(this.getContainer())}},{key:\"fitGraph\",value:function e(){var t=this;var i=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;var a=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;clearTimeout(this.activeFitTimeout);var s=function e(){if(t.isZombieWidget()){return}t.network.redraw();t.network.fit({animation:{duration:a,easingFunction:\"easeOutQuart\"}})};this.activeFitTimeout=setTimeout(s,i)}},{key:\"handleInsertNode\",value:function e(t){var i=this;$tm.dialogManager.open(\"addNodeToMap\",{},function(e,a){if(!e){return}var s=_utils2.default.getField(a,\"draft.title\").trim();if(_utils2.default.tiddlerExists(s)){if(_utils2.default.isMatch(s,i.view.getNodeFilter(\"compiled\"))){$tm.notify(\"Node already exists\");return}else{t=$tm.adapter.makeNode(s,t);i.view.addNode(t)}}else{var r=new $tw.Tiddler(a,{\"draft.title\":null});t.label=s;$tm.adapter.insertNode(t,i.view,r)}i.isPreventZoomOnNextUpdate=true})}},{key:\"handleEditNode\",value:function e(t){var i=this;var a=$tm.tracker.getTiddlerById(t.id);var s=_utils2.default.getTiddler(a);var r=$tm.config.vis.nodes;var n=_utils2.default.parseJSON(this.view.getConfig(\"vis\"),{}).nodes;var o={};o[t.id]=t;var l=$tm.adapter.getInheritedNodeStyles(o);var d=l[a];var h=_utils2.default.merge({},{color:s.fields[\"color\"]},_utils2.default.parseJSON(s.fields[\"tmap.style\"]));var u=this.view.getLabel();var g=_extends({},this.view.getNodeData(t.id));delete g.x;delete g.y;var f={view:u,tiddler:s.fields.title,tidColor:s.fields[\"color\"],tidIcon:s.fields[$tm.field.nodeIcon]||s.fields[\"tmap.fa-icon\"],tidLabelField:\"global.\"+$tm.field.nodeLabel,tidIconField:\"global.\"+$tm.field.nodeIcon,dialog:{preselects:{\"inherited-global-default-style\":JSON.stringify(r),\"inherited-local-default-style\":JSON.stringify(n),\"inherited-group-styles\":JSON.stringify(d),\"global.tmap.style\":JSON.stringify(h),\"local-individual-node-style\":JSON.stringify(g)}}};var v=function e(t,i,a){for(var s=a.length;s--;){f.dialog.preselects[t+\".\"+a[s]]=i[a[s]]||\"\"}};v(\"local\",g,[\"label\",\"tw-icon\",\"fa-icon\",\"open-view\"]);v(\"global\",s.fields,[$tm.field.nodeLabel,$tm.field.nodeIcon,\"tmap.fa-icon\",\"tmap.open-view\"]);$tm.dialogManager.open(\"editNode\",f,function(e,s){if(!e)return;var r=s.fields;var n=_utils2.default.getPropertiesByPrefix(r,\"global.\",true);for(var o in n){_utils2.default.setField(a,o,n[o]||undefined)}var l=_utils2.default.getPropertiesByPrefix(r,\"local.\",true);var d=_utils2.default.parseJSON(r[\"local-individual-node-style\"],{});for(var h in l){d[h]=l[h]||undefined}i.view.saveNodeStyle(t.id,d);i.isPreventZoomOnNextUpdate=true})}},{key:\"handleVisSingleClickEvent\",value:function e(t){var i=_utils2.default.isTrue($tm.config.sys.singleClickMode);if(i&&!this.editorMode){this.handleOpenMapElementEvent(t)}}},{key:\"handleVisDoubleClickEvent\",value:function e(t){if(t.nodes.length||t.edges.length){if(this.editorMode||!_utils2.default.isTrue($tm.config.sys.singleClickMode)){this.handleOpenMapElementEvent(t)}}else{if(this.editorMode){this.handleInsertNode(t.pointer.canvas)}}}},{key:\"handleOpenMapElementEvent\",value:function e(t){var i=this;var a=t.nodes,s=t.edges;if(a.length){var r=this.graphData.nodesById[a[0]];if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[$tm.adapter.getTiddlerById(r.id)]=true;this.isPreventZoomOnNextUpdate=Date.now()+500;this.rebuildGraph();if(this.view.isEnabled(\"neighbourhood_focus_newly_traced_node\")){setTimeout(function(){i.network.focus(r.id,{scale:1,animation:true})},1500)}}if(r[\"open-view\"]){$tm.notify(\"Switching view\");this.setView(r[\"open-view\"])}this.openTiddlerWithId(a[0])}else if(s.length){this.logger(\"debug\",\"Clicked on an Edge\");var n=this.graphData.edgesById[s[0]].type;this.handleEditEdgeType(n)}else{return}this.hidePopups(0,true)}},{key:\"handleEditEdgeType\",value:function e(t){if(!this.editorMode)return;var i=$tm.config.sys.edgeClickBehaviour;if(i!==\"manager\")return;$tw.rootWidget.dispatchEvent({type:\"tmap:tm-manage-edge-types\",paramObject:{type:t}})}},{key:\"handleResizeEvent\",value:function e(t){if(this.isZombieWidget())return;var i=this.getAttr(\"height\");var a=this.getAttr(\"width\");if(this.isInSidebar){var s=this.domNode.getBoundingClientRect();var r=15;a=document.body.clientWidth-s.left-r+\"px\";var n=parseInt(this.getAttr(\"bottom-spacing\"))||15;var o=window.innerHeight-s.top;i=o-n+\"px\"}this.domNode.style.height=i||\"300px\";this.domNode.style.width=a;this.repaintGraph()}},{key:\"handleClickEvent\",value:function e(t){if(this.isZombieWidget()||!this.network)return;if(!this.graphDomNode.contains(t.target)){var i=this.network.getSelection();if(i.nodes.length||i.edges.length){this.logger(\"debug\",\"Clicked outside; deselecting nodes/edges\");this.network.selectNodes([]);this.resetVisManipulationBar()}}else{this.canvas.focus()}if(t.button!==2){this.contextMenu.hide(0,true)}}},{key:\"handleVisSelectNode\",value:function e(t){var i=t.nodes;if(!this.isDraggingAllowed(i)){return}this.assignActiveStyle(i)}},{key:\"isDraggingAllowed\",value:function e(t){var i=t.nodes;return this.editorMode||this.view.isEnabled(\"physics_mode\")}},{key:\"assignActiveStyle\",value:function e(t){if(!Array.isArray(t))t=[t];var i=this.visOptions.nodes.color;for(var a=t.length;a--;){var s=t[a];var r=this.graphData.nodesById[s];var n=_utils2.default.merge({},i,r.color);this.graphData.nodes.update({id:s,color:{highlight:n,hover:n}})}}},{key:\"handleVisDeselectNode\",value:function e(t){}},{key:\"handleVisDragEnd\",value:function e(t){var i=t.nodes;if(!i.length){return}if(i.length===1&&this.view.isEnabled(\"raster\")){var a=this.network.getPositions()[i[0]];this.graphData.nodes.update(_extends({id:i[0]},_utils2.default.getNearestRasterPosition(a,parseInt(this.view.getConfig(\"raster\")))))}this.draggedNode=null;this.setNodesMoveable(i,false)}},{key:\"handleVisBeforeDrawing\",value:function e(t){var i=this.view,a=this.network,s=this.backgroundImage;if(s){t.drawImage(s,0,0)}if(i.isEnabled(\"raster\")){_utils2.default.drawRaster(t,a.getScale(),a.getViewPosition(),parseInt(i.getConfig(\"raster\")))}}},{key:\"handleVisAfterDrawing\",value:function e(t){if(this.selectRect){var i=this.selectRect.getRect();t.beginPath();t.globalAlpha=.5;t.fillStyle=\"#EAFFEF\";t.fillRect.apply(t,_toConsumableArray(i));t.beginPath();t.globalAlpha=1;t.strokeStyle=\"#B4D9BD\";t.strokeRect.apply(t,_toConsumableArray(i))}if(this.draggedNode&&this.view.isEnabled(\"raster\")){var a=this.network.getPositions()[this.draggedNode];var s=_utils2.default.getNearestRasterPosition(a,parseInt(this.view.getConfig(\"raster\")));t.strokeStyle=\"green\";t.fillStyle=\"green\";t.beginPath();t.moveTo(a.x,a.y);t.lineTo(s.x,s.y);t.stroke();t.beginPath();t.arc(s.x,s.y,5,0,Math.PI*2);t.fill()}}},{key:\"constructTooltip\",value:function e(t,i){var a=_utils2.default.parseJSON(t);var s=a.node||a.edge;var r=null;var n=\"text/html\";var o=\"text/vnd-tiddlywiki\";if(a.node){var l=$tm.tracker.getTiddlerById(s);var d=_utils2.default.getTiddler(l);var h=d.fields[$tm.field.nodeInfo];if(h){i.innerHTML=$tw.wiki.renderText(n,o,h)}else if(d.fields.text){_utils2.default.registerTransclude(this,\"tooltipWidget\",l);this.tooltipWidget.setVariable(\"tv-tiddler-preview\",\"yes\");this.tooltipWidget.render(i)}else{i.innerHTML=l}}else{var u=this.graphData.edgesById[s];var g=$tm.indeces.allETy[u.type];if(g.description){r=$tw.wiki.renderText(n,o,g.description)}i.innerHTML=r||g.label||g.id}}},{key:\"handleVisHoverElement\",value:function e(t){if($tm.mouse.buttons)return;var i=t.node||t.edge;var a=JSON.stringify(t);if(t.node){this.assignActiveStyle(i)}if(!this.isVisInEditMode()&&!this.contextMenu.isShown()){var s=this.constructTooltip;this.tooltip.show(a,s)}}},{key:\"handleVisBlurElement\",value:function e(t){this.tooltip.hide()}},{key:\"handleVisLoading\",value:function e(t){var i=t.total,a=t.iterations;this.graphLoadingBarDomNode.style.display=\"block\";this.graphLoadingBarDomNode.setAttribute(\"max\",i);this.graphLoadingBarDomNode.setAttribute(\"value\",a)}},{key:\"handleVisLoadingDone\",value:function e(t){this.graphLoadingBarDomNode.style.display=\"none\"}},{key:\"handleVisDragStart\",value:function e(t){var i=t.nodes;if(!i.length||!this.isDraggingAllowed(i)){return}this.hidePopups(0,true);this.assignActiveStyle(i);this.setNodesMoveable(i,true);if(i.length===1){this.draggedNode=i[0]}}},{key:\"destruct\",value:function e(){_utils2.default.setDomListeners(\"remove\",window,this.windowDomListeners);_utils2.default.setDomListeners(\"remove\",this.domNode,this.widgetDomListeners);this._destructVis()}},{key:\"_destructVis\",value:function e(){if(!this.network)return;_utils2.default.setDomListeners(\"remove\",this.canvas,this.canvasDomListeners);this.network.destroy();this.network=null}},{key:\"openTiddlerWithId\",value:function e(t){var i=this;var a=$tm.tracker.getTiddlerById(t);this.logger(\"debug\",\"Opening tiddler\",a,\"with id\",t);if(this.enlargedMode===\"fullscreen\"){var s=$tw.wiki.findDraft(a);var r=!!s;if(!r){var n=\"tm-edit-tiddler\";this.dispatchEvent({type:n,tiddlerTitle:a});s=$tw.wiki.findDraft(a)}var o={draftTRef:s,originalTRef:a};$tm.dialogManager.open(\"fullscreenTiddlerEditor\",o,function(e,t){if(e){var n=\"tm-save-tiddler\";i.dispatchEvent({type:n,tiddlerTitle:s})}else if(!r){_utils2.default.deleteTiddlers([s])}var o=\"tm-close-tiddler\";i.dispatchEvent({type:o,tiddlerTitle:a})})}else{var l=this.domNode.getBoundingClientRect();this.dispatchEvent({type:\"tm-navigate\",navigateTo:a,navigateFromTitle:this.getVariable(\"storyTiddler\"),navigateFromNode:this,navigateFromClientRect:{top:l.top,left:l.left,width:l.width,right:l.right,bottom:l.bottom,height:l.height}})}}},{key:\"getViewHolderRef\",value:function e(){if(this.viewHolderRef){return this.viewHolderRef}this.logger(\"info\",\"Retrieving or generating the view holder reference\");var t=this.getAttr(\"view\");var i=null;if(t){this.logger(\"log\",'User wants to bind view \"'+t+\"' to graph\");var a=$tm.path.views+\"/\"+t;if($tw.wiki.getTiddler(a)){i=$tm.path.localHolders+\"/\"+_utils2.default.genUUID();this.logger(\"log\",'Created an independent temporary view holder \"'+i+'\"');_utils2.default.setText(i,a);this.logger(\"log\",'View \"'+a+\"' inserted into independend holder\")}else{this.logger(\"log\",'View \"'+t+'\" does not exist')}}if(!i){this.logger(\"log\",\"Using default (global) view holder\");i=$tm.ref.defaultViewHolder}return i}},{key:\"setView\",value:function e(t,i){if(!_ViewAbstraction2.default.exists(t)){return}t=new _ViewAbstraction2.default(t);var a=t.getLabel();i=i||this.viewHolderRef;this.logger(\"info\",'Inserting view \"'+a+'\" into holder \"'+i+'\"');$tw.wiki.addTiddler(new $tw.Tiddler({title:i,text:a}));this.update({changedTiddlers:_defineProperty({},i,true)})}},{key:\"getView\",value:function e(t){if(!t&&this.view){return this.view}var i=this.getViewHolderRef();var a=_utils2.default.getText(i);this.logger(\"debug\",\"Retrieved view from holder\");var s=void 0;if(_ViewAbstraction2.default.exists(a)){s=new _ViewAbstraction2.default(a)}else{this.logger(\"debug\",'Warning: View \"'+a+\"\\\" doesn't exist. Default is used instead.\");s=new _ViewAbstraction2.default(\"Default\")}return s}},{key:\"reloadBackgroundImage\",value:function e(t){var i=this;this.backgroundImage=null;var a=this.view.getConfig(\"background_image\");var s=_utils2.default.getTiddler(a);if(!s&&!a)return;var r=new Image;r.onload=function(){i.backgroundImage=r;i.repaintGraph()};if(s){var n=s.fields[\"_canonical_uri\"];if(n){r.src=n}else if(s.fields.text){r.src=$tw.utils.makeDataUri(s.fields.text,s.fields.type)}}else if(a){r.src=a}}},{key:\"repaintGraph\",value:function e(){var t=$tw.utils.hasClass(this.document.body,\"tmap-has-fullscreen-widget\");if(this.network&&(!t||t&&this.enlargedMode)){this.logger(\"info\",\"Repainting the whole graph\");this.network.redraw();this.fitGraph(0,1e3)}}},{key:\"setGraphButtonEnabled\",value:function e(t,i){var a=\"vis-button tmap-\"+t;var s=_utils2.default.getFirstElementByClassName(a,this.domNode);$tw.utils.toggleClass(s,\"tmap-button-enabled\",i)}},{key:\"setNodesMoveable\",value:function e(t,i){if(!t||!t.length||this.view.isEnabled(\"physics_mode\")){return}var a=[];var s=!i;for(var r=t.length;r--;){a.push({id:t[r],fixed:{x:s,y:s}})}this.graphData.nodes.update(a);if(s){this.logger(\"debug\",\"Fixing\",a.length,\"nodes\");this.view.saveNodePositions(this.network.getPositions());this.isPreventZoomOnNextUpdate=true}}},{key:\"addGraphButtons\",value:function e(t){var i=_utils2.default.getFirstElementByClassName(\"vis-navigation\",this.domNode);for(var a in t){var s=this.document.createElement(\"div\");s.className=\"vis-button tmap-\"+a;s.addEventListener(\"click\",t[a].bind(this),false);i.appendChild(s);this.setGraphButtonEnabled(a,true)}}}]);return t}(_widget.widget);exports.tmap=MapWidget;exports.tiddlymap=MapWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/MapWidget.js.map\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/felixhayashi/tiddlymap/license": {
            "title": "$:/plugins/felixhayashi/tiddlymap/license",
            "subtitle": "License",
            "caption": "License",
            "text": "\\rules except wikilink\n\n!! TiddlyMap\n\nCopyright (c) 2014, Felix Küppers\nAll rights reserved.\n\nTiddlyMap is licensed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]]. For the exact license terms, please visit [[https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]]. \n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n# BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n# Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! Vis.js\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n# Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n# MIT License (MIT)\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/readme": {
            "title": "$:/plugins/felixhayashi/tiddlymap/readme",
            "text": "* Please refer to the project-readme hosted at [[https://github.com/felixhayashi/TW5-TiddlyMap]].\n* A demo with several examples and explanations can be found at [[http://tiddlymap.org]]."
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown",
            "description": "Automatically assigned to an edge that does not have a type assigned",
            "style": "{\"color\":\"gray\"}",
            "show-label": "false"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link",
            "description": "A link that is contained in the tiddler's body pointing to another resource.",
            "style": "{\"color\":\"orange\", \"dashes\":true}",
            "label": "links to",
            "text": ""
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list",
            "description": "Contained in a list of this tiddler",
            "style": "{ \"color\": \"red\", \"dashes\":true}",
            "label": "listed in",
            "text": ""
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags",
            "description": "A tag that refers to a tiddler of the same name.",
            "style": "{ \"color\": \"darkslategray\", \"dashes\":true}",
            "label": "tagged with"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default",
            "caption": "Overview",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-plain\">\n  Please visit the [[online docs|http://tiddlymap.org/Documentation]]\n  for more information about the available global options.\n</div>\n<table class=\"tmap-key-value-table\">\n  <tr>\n    <th align=\"left\">Plugin version</th>\n    <td><<pluginVersion>></td>\n  </tr>\n<!--\n  <tr>\n    <th align=\"left\">Datastructure version</th>\n    <td><<dataStructureVersion>></td>\n  </tr>\n-->\n  <tr>\n    <th align=\"left\">Nodes in system</th>\n    <td><<numberOfNodes>></td>\n  </tr>\n  <tr>\n    <th align=\"left\">Edges in system</th>\n    <td><<numberOfEdges>></td>\n  </tr>\n</table>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor",
            "caption": "Editor",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show Neighbour&shy;hood menu\"\n      field:\"config.sys.editorMenuBar.showNeighScopeButton\"\n      descr:\"Show or hide the neighbourhood menu button.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show Screen&shy;shot menu\"\n      field:\"config.sys.editorMenuBar.showScreenshotButton\"\n      descr:\"Show or hide the screenshot menu button.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show Raster&shy; menu\"\n      field:\"config.sys.editorMenuBar.showRasterMenuButton\"\n      descr:\"Show or hide the raster menu button.\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields",
            "caption": "Field settings",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-text\"\n      title:\"Node-icon field\"\n      field:\"config.sys.field.nodeIcon\" \n      descr:\"Local image used as node image in the graphs.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Node-label field\"\n      field:\"config.sys.field.nodeLabel\" \n      descr:\"Alternative node label to use instead of the title.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Node-info field\"\n      field:\"config.sys.field.nodeInfo\" \n      descr:\"Field used as tooltip when hovering over a node in a graph.\"\n      note:\"It is prohibited to use the text field here.\">>\n</table>   \n\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction",
            "caption": "Interaction & behaviour",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <$macrocall type=\"input-select\"\n        $name=\"tmap-row\"\n        title=\"Default startup view\"\n        field=\"config.sys.defaultView\"\n        nochoice=\"Last view used at startup\"\n        selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n        descr=\"The view to display at startup\" />\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show popups\"\n      field:\"config.sys.popups.enabled\"\n      descr:\"Set this to true if you want to see automatic\n             popups in the map.\">>\n  <$list filter=\"[config.sys.popups.enabled[true]]\">\n  <<tmap-row type:\"input-text\"\n      title:\"Popup delay\"\n      field:\"config.sys.popups.delay\"\n      descr:\"The time in miliseconds that needs to pass after\n             a tooltip is triggered.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Popup width\"\n      field:\"config.sys.popups.width\"\n      descr:\"The default max-width of the popup.\"\n      note:\"Make sure you added the desired unit (e.g. `px`).\n            Requires a wiki refresh.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Popup height\"\n      field:\"config.sys.popups.height\"\n      descr:\"The default max-height of the popup.\"\n      note:\"Make sure you added desired the unit (e.g.  `px`).\n            Requires a wiki refresh.\">>\n  </$list>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Allow single click mode\"\n      field:\"config.sys.singleClickMode\"\n      descr:\"A single click on a node is sufficient to open the\n             corresponding tiddler.\"\n      note:\"Drag and drop will still work and does not cause a\n            tiddler to be opened. Single click is never active in\n            the map editor.\">>\n  <<tmap-row type:\"input-select\"\n      title:\"Edge click behaviour\"\n      field:\"config.sys.edgeClickBehaviour\"\n      selectFilter:\"[[nothing|Nothing]]\n                    [[manager|Open edge-type manager]]\"\n      descr:\"What should happen when you click on an edge?\">>\n  <<tmap-row type:\"input-select\" title:\"Raster size\" field:\"config.sys.raster\"\n      selectFilter:\"[[|disabled]] [[5|5px]] [[10|10px]] [[15|15px]] [[20|20px]] [[30|30px]] [[40|40px]]\"\n      descr:\"Snap nodes to an invisible raster of the given size after drag'n'drop.\"\n      note:\"Only works when the view is not in floating mode\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Apply node-filter to neighbours\"\n      field:\"config.sys.nodeFilterNeighbours\"\n      descr:\"If checked, neighbours displayed in the map will be filtered\n      by the view's node-filter. Otherwise the node-filter will only be used\n      to filter the original set of nodes in the map\">>\n</table>\n\n!! Suppressed dialogs\n\n<div class=\"tmap-flash-message tmap-plain\">\n  Dialogs that you decided to suppress in the past are listed here.\n  Remove the checkmark to enable dialogs again.\n</div>\n\n<table class=\"tmap-config-table\">\n  <$list\n      filter=\"[<output>fields[]prefix[config.sys.suppressedDialogs]]\"\n      emptyMessage=\"–\">\n      <$set name=\"dialogName\" value=<<tmap basename \".\">>>\n      <$macrocall $name=\"tmap-row\"\n            type=\"input-checkbox\"\n            title=\"Suppress '$(dialogName)$' dialog\"\n            field=<<currentTiddler>> />\n      </$set>\n    <br />\n  </$list>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab",
            "caption": "Live tab",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show Live tab\"\n      field:\"liveTab\" \n      descr:\"Show or hide the live tab in the sidebar.\">>\n  <$macrocall type=\"input-select\"\n      $name=\"tmap-row\"\n      title=\"Fallback view\"\n      field=\"config.sys.liveTab.fallbackView\" \n      selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n      descr=\"The view to display in the sidebar's live tab in\n             case the current tiddler did not specify a view\n             to open.\" />\n</table>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig",
            "subtitle": "{{$:/core/images/options-button}} Global configuration of TiddlyMap",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n<$macrocall $name=\"tabs\"\n  default=<<concat \"$(template)$/default\">>\n  tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity",
            "caption": "Verbosity",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-plain\">\n  Here you can restrict the system's talkativeness.\n</div>\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Debug output\"\n      field:\"config.sys.debug\" \n      descr:\"Set this to true if you want debug information to be\n             displayed in the browser console.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show notifications\"\n      field:\"config.sys.notifications\" \n      descr:\"Set this to true if you want to receive fade-out\n             notifications for important events.\">>\n</table> "
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis",
            "classes": "tmap-remove-top-space",
            "caption": "Graph",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  The global vis configurations will affect all views and their\n  elements (nodes and edges) unless they are overridden on a lower\n  level. All options below are documented at\n  [[vis.js.org|http://visjs.org/docs/network]].\n</div>\n<div class=\"tmap-flash-message tmap-info\">\n  Only config items that you actually changed have an effect on\n  the graph. Other options are visible, yet, inactive.\n</div>\n<$tmap-config\n    mode=\"manage-config\"\n    inherited=\"inherited-style\"\n    extension=\"config.vis\" />\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default",
            "caption": "Overview",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n   All configurations __only__ affect this view.\n</div>\n\n<table class=\"tmap-key-value-table\">\n  <tr>\n    <th align=\"left\">Created on</th>\n    <td><<createdOn>></td>\n  </tr>\n  <tr>\n    <th align=\"left\">Nodes contained in graph</th>\n    <td><<numberOfNodes>></td>\n  </tr>\n  <tr>\n    <th align=\"left\">Edges contained in graph</th>\n    <td><<numberOfEdges>></td>\n  </tr>\n</table>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters",
            "caption": "Edit filters",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  Completely new to filters? Please read\n  [[Introduction to filter notation|http://tiddlywiki.com/#Introduction%20to%20filter%20notation]]\n  first.\n</div>\n\n<fieldset>\n  <legend>Filters <sup>[1]</sup></legend>\n  <table class=\"tmap-config-table tmap-large-input\">\n    <<tmap-row type:\"input-textarea\"\n        title:\"Node filter\"\n        field:\"filter.prettyNodeFltr\"\n        descr:\"In the map, only those tiddlers that match this filter\n               are shown. Drafts and system tiddlers are automatically\n               excluded.\">>\n    <<tmap-row type:\"input-textarea\"\n        title:\"Edge-type filter\"\n        field:\"filter.prettyEdgeFltr\" \n        descr:\"Only edges with a type that matches the filter are shown.\">>\n  </table>   \n</fieldset>\n\n---\n\n<sup>[1]</sup> In the editors above, a new line is equivalent to a space symbol.<br />\n<sup>[2]</sup> It is suggested to read\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nand [[Edge-type namespaces|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nbefore using Tiddlymap's filter editor."
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout",
            "caption": "Layout",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Floating nodes\"\n      field:\"config.physics_mode\"\n      descr:\"Set this to true if you want your nodes to freely\n             swirl around.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Filter nodes by edge types\"\n      field:\"config.filter_nodes_by_edge_types\"\n      descr:\"Only display nodes having edges matching the edge-type filter.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Background image\"\n      field:\"config.background_image\"\n      descr:\"The title of an image tiddler to be used as background\n             in the view.\"\n      note:\"You can also use an image url directly, however, the\n            image needs be stored under the same domain as your wiki.\n            Otherwise, it won't be displayed!\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace",
            "caption": "Namespace",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table tmap-small-input\">\n  <<tmap-row type:\"input-text\"\n      title:\"Edge-type namespace\"\n      field:\"config.edge_type_namespace\" \n      descr:\"A namespace (like `foaf` in `foaf:knows`) that will be\n             automatically added to all edge types you create in\n             this view. The namespace is only added if the types\n             do not exist yet and do not have a namespace assigned yet.\n             Namespaces are always hidden in the graph.\"\n      note:\"Most likely, you don't want the edges created with this\n            namespace to leak into other views, moreover, you don't\n            want edges that do not possess the namespace ever to be\n            shown here. In this case, use a private marker (`_`)\n            in front of your namespace, e.g. `_mynamespace` and use\n            an appropriate edge type filter, i.e. `+[prefix[_mynamespace]]`\n            For further information see:\n            \n            * [[Edge-type namespaces|http://tiddlymap.org/#Edge-type%20namespaces]]\n            * [[Private edge types|http://tiddlymap.org/#Private%20edge%20types]]\n            \">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView",
            "subtitle": "{{$:/core/images/options-button}} View configuration -- <<view>>",
            "text": "\\rules except wikilink\n\n\\define privateEdgeTypes() [[private edge-types|http://tiddlymap.org/#Private%20edge%20types]]\n\n<$macrocall $name=\"tabs\"\n  default=<<concat \"$(template)$/default\">>\n  tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis",
            "caption": "Graph",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n   The local vis configurations will affect all\n   elements (nodes and edges) of this view, unless they are\n   overridden on a lower level. All options below are documented at\n   [[vis.js.org|http://visjs.org/docs/network]].\n</div>\n<div class=\"tmap-flash-message tmap-info\">\n  Only config items that you actually changed have an effect on the\n  graph. Other options are visible, yet, inactive.\n</div>\n<$tmap-config\n    mode=\"manage-config\"\n    inherited=\"inherited-style\"\n    extension=\"config.vis\" />\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType",
            "subtitle": "{{$:/plugins/felixhayashi/tiddlymap/icon}} Edge type specification",
            "text": "\\rules except wikilink\n\\rules except underscore\n\n\\define filter() $(allEdgeTypes)$ +[search:title[$(term)$]]\n\n\\define badge(color, label, tooltip)\n<span style=\"background: $color$\" title=\"$tooltip$\">$label$</span>\n\\end\n\n\\define badges()\n<$tiddler tiddler={{!!text}}>\n<$set name=\"id\" value=<<tmap \"getETyId\" \"$(view)$\">>>\n<$set name=\"isVisible\" value=<<tmap \"isETyVisible\" \"$(view)$\">>>\n<div class=\"tmap-badges\">\n  <span\n      style=\"background: darkslategray\"\n      title=\"Your input translates into this id.\">\n  <<id>>\n  </span>\n  <$list filter=\"[<isVisible>regexp[true]]\">\n    <<badge \"green\" \"visible\" \"Matches your view's filter\">>\n  </$list>\n  <$list filter=\"[<isVisible>regexp[false]]\">\n    <<badge \"red\" \"not visible\" \"Doesn't match your view's filter\">>\n  </$list>\n  <$list filter=\"[<id>!regexp[^tmap:unknown$]]\" variable=\"item\">\n    <$list filter=\"[<id>regexp[^_]]\">\n      <<badge \"purple\" \"private\" \"Not shown in other views per default\">>\n    </$list>\n    <$list filter=\"[<id>regexp[.+:.+]]\">\n      <<badge \"orange\" \"namespace\" \"This type is prefixed with a proper namespace\">>\n    </$list>\n  </$list>\n</div>\n</$set>\n</$set>\n</$tiddler>\n\\end\n\n\\define search()\n<p>\n  You are about to connect \"<$text text=\"$(fromLabel)$\" />\"\n  with \"<$text text=\"$(toLabel)$\" />\". Please specify a type.\n</p>\n<table id=\"tmap-search-table\">\n  <tr>\n    <td><b>Type:</b></td>\n    <td>\n      <$edit-text\n          focus=\"true\"\n          field=\"text\"\n          type=\"text\"\n          tag=\"input\"\n          default=\"\"\n          class=\"tmap-trigger-field\n                 tmap-triggers-ok-button-on-enter\n                 tmap-triggers-cancel-button-on-esc\" />\n      <<badges>>\n    </td>\n  </tr>\n  <tr>\n    <td></td>\n    <td>\n      <$set name=\"term\" value={{!!text}}>\n      <$set name=\"allEdgeTypes\" value=<<tmap \"option\" \"selector.allEdgeTypesById\">>>\n      <ul class=\"tmap-small-list\">\n        <$list filter=<<filter>>>\n        <li>\n          <$button class=\"tc-btn-invisible tmap-link\">\n            <$view field=\"title\" />\n            <$action-setfield $tiddler=<<output>> text={{!!title}} />\n          </$button>\n        </li>\n        </$list>\n      </ul>\n      </$set>\n      </$set>\n    </td>\n  </tr>\n</table>\n\\end\n\n<$list filter=\"[<temp>!has[more]]\" variable=\"item\"><<search>></$list>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap",
            "subtitle": "{{$:/core/images/tag-button}} Add node",
            "classes": "tmap-modal-add-node",
            "text": "\\rules except wikilink\n\n\\define backButtonText() back to list\n\\define outputAndTemplate() [[$(output)$]] [[$(template)$]]\n\n\\define editor()\n  <$button class=\"tmap-go-back tc-btn-invisible\">\n    {{$:/core/images/chevron-left}} <<backButtonText>>\n    <$action-deletefield $tiddler=<<temp>> more template />\n    <$action-sendmessage\n        $message=\"tmap:tm-clear-tiddler\"\n        keep=\"draft.title\"\n        title=<<output>> />\n  </$button>\n\n  <$list filter=\"[<output>get[draft.title]is[tiddler]]\">\n  <div class=\"tmap-flash-message tmap-warning\">\n   Tiddler already exists! Use another title or click\n   \"<<backButtonText>>\" to cancel your edit.\n  </div>\n  </$list>\n\n  <div class=\"tmap-modal-editor\">\n    <table class=\"tmap-config-table\">\n      <tr class=\"tmap-template-select\">\n        <td>Template</td>\n        <td>\n          <$select\n              tiddler=<<temp>>\n              field=\"template\">\n            <option value=\"\"></option>\n            <$list filter=<<tmap \"option\" \"selector.allPotentialNodes\">>>\n            <option><$view field=\"title\" /></option>\n            </$list>\n          </$select>\n          <$button>Load\n            <$action-sendmessage\n                $message=\"tmap:tm-clear-tiddler\"\n                keep=\"draft.title\"\n                title=<<output>> />\n            <$list filter=\"[<temp>get[template]]\" variable=\"template\">\n            <$action-sendmessage\n                $message=\"tmap:tm-merge-tiddlers\"\n                tiddlers=<<outputAndTemplate>>\n                output=<<output>> />\n            <$action-deletefield $tiddler=<<output>> tmap.id tmap.edges />\n            </$list>\n          </$button>\n       </td>\n       <td>Press the \"load\" button to activate the template.</td>\n      </tr>\n    </table>\n    <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n      <$set name=\"currentTiddler\" value=<<output>>>\n        <$transclude tiddler=\"$:/core/ui/EditTemplate\" mode=\"block\" />\n      </$set>\n    </$importvariables>\n  </div>\n\\end\n\n\\define search()\n<p>Add an existing tiddler to the map or create a new one.</p>\n<table id=\"tmap-search-table\">\n  <tr>\n    <td><b>Title:</b></td>\n    <td>\n      <$edit-text\n          tiddler=<<output>>\n          field=\"draft.title\"\n          focus=\"true\"\n          type=\"text\"\n          tag=\"input\"\n          default=\"\"\n          class=\"tmap-trigger-field\n                 tmap-triggers-ok-button-on-enter\n                 tmap-triggers-cancel-button-on-esc\" />\n      <$list filter=\"[<output>get[draft.title]!is[tiddler]]\">\n      <$button\n          tooltip=\"The tiddler does not exist yet and you may edit it\n                   before it is added to the map\">\n        {{$:/core/images/edit-button}}\n        <$action-setfield $tiddler=<<temp>> more=\"true\" />\n      </$button> <sup>[1]</sup>\n      </$list>\n    </td>\n  </tr>\n  <tr>\n    <td></td>\n    <td>\n      <$set name=\"term\" value={{!!draft.title}}>\n      <ul class=\"tmap-small-list\">\n        <$list filter=\"[search:title<term>!is[system]!has[draft.of]]\">\n        <li>\n          <$button class=\"tc-btn-invisible tmap-link\">\n            <$view field=\"title\" />\n            <$action-setfield $tiddler=<<output>> draft.title={{!!title}} />\n          </$button>\n        </li>\n        </$list>\n      </ul>\n      </$set>\n    </td>\n  </tr>\n</table>\n\n<$list filter=\"[<output>get[draft.title]!is[tiddler]]\">\n<hr />\n<sup>[1]</sup>\n<small>\n  The tiddler does not exist yet and you may edit it\n  before it is added to the map\n</small>\n</$list>\n\\end\n\n<$list filter=\"[<temp>!has[more]]\" variable=\"item\"><<search>></$list>\n<$list filter=\"[<temp>has[more]]\" variable=\"item\"><<editor>></$list>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog",
            "subtitle": "{{$:/core/images/locked-padlock}} You cannot delete this view!",
            "buttons": "ok",
            "text": "\\rules except wikilink\n\nIt is not possible to delete the current view as ''<<count>>'' tiddlers\nare referencing it. To delete the view you must first remove the tiddlymap\nwidgets in the tiddlers listed below or change their view attributes.\n\n''References''\n\n<ul>\n<$list filter=<<refFilter>> variable=\"item\">\n  <li><$link><<item>></$link></li>\n</$list>\n</ul>\n\nAfter the references are removed, you may delete the view.\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation",
            "subtitle": "{{$:/core/images/import-button}} You must confirm in order to proceed!",
            "text": "\\rules except wikilink\n\n<<message>>\n\n''Are you really sure you want to do this?''"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/createView": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/createView",
            "subtitle": "{{$:/core/images/new-button}} Creating a new view",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-text\"\n      title:\"View name\"\n      field:\"name\"\n      focus:\"true\"\n      class:\"tmap-trigger-field\n             tmap-triggers-ok-button-on-enter\n             tmap-triggers-cancel-button-on-esc\"\n      descr:\"The name for the new view. If no name is entered,\n             the program will invent one for you.\"\n      note:\"You cannot override an existing view. In this case,\n            you need to delete the old view first! You must no use\n            slashes (`/`) in the name.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Clone view\"\n      field:\"clone\"\n      descr:\"Use the view that is currently displayed in the\n             editor as blueprint. The view will be an __exact__\n             clone of the current one, only with a different\n             name.\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog",
            "subtitle": "{{$:/core/images/delete-button}} You are about to delete <<count>> nodes",
            "text": "\\rules except wikilink\n\n''Please choose an option or abort:''\n\n<$radio tiddler=<<output>> field=\"delete-from\" value=\"system\">\n  Delete nodes from system <sup>[1]</sup>\n</$radio><br />\n<$radio tiddler=<<output>> field=\"delete-from\" value=\"filter\">\n  Delete nodes from graph's filter <sup>[2]</sup>\n</$radio>\n\nThe following nodes will be deleted:\n\n<ul>\n<$list filter=<<tiddlers>>>\n  <li><$view tiddler={{!!title}} field=\"title\" /></li>\n</$list>\n</ul>\n\n---\n\n<sup>[1]</sup>\n<small>This will delete all nodes, their corresponding tiddlers and all connected edges.</small><br/>\n<sup>[2]</sup>\n<small>''Important:'' Removing a node from the graph's filter only works, if the node has been added in the map editor per double click or via \"Add Node\". If the node hasn't been added as mentioned above, you need to change the underlying tiddler in a way that it doesn't match your filter anymore, if you don't want it to be displayed in the graph.</small>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo",
            "subtitle": "{{$:/core/images/info-button}} Dublicate id detected",
            "buttons": "ok_suppress",
            "text": "\\rules except wikilink\n\nTiddlyMap requires the value of the id field (\"tmap.id\") to be\nunique in order to correctly identify nodes and tiddlers.\n\nThe id of the \"<<param.changedTiddler>>\" already exists for these tiddlers:\n\n<ul>\n<$list filter=<<param.filter>> variable=\"item\">\n  <li><$link><<item>></$link></li>\n</$list>\n</ul>\n\nTherefore TiddlyMap\n\n* assigned a new id to tiddler \"<<param.changedTiddler>>\"\n* removed all edges from \"<<param.changedTiddler>>\"\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible",
            "subtitle": "{{$:/core/images/info-button}} Edge will not be visible in view \"<<view>>\"",
            "buttons": "ok_suppress",
            "text": "\\rules except wikilink\n\nYou just created an edge of type\n<code><$text text=<<type>> /></code> that will not be\nvisible in this view because it doesn't match your\nedge-type filter settings.\n\nThe current edge-type filter of view \"<<view>>\" looks like this:\n\n<pre><code><$text text=<<eTyFilter>> /></code></pre>\n\nTo have the newly added type displayed in your view, adjust your\nedge-type filter accordingly. \n\nSome suggestions:\n\n<ul>\n  <li>\n    Explicitly add the type to the filter:\n    <code><$text text=\"[[\" /><$text text=<<type>> /><$text text=\"]]\" /></code>\n  </li>\n  <li>\n  <$set\n      filter=\"[<type>regexp[:]splitbefore[:]]\"\n      name=\"prefix\"\n      emptyValue=<<tmap halfOfString \"$(type)$\">>>\n  Add a filter rule (e.g. a prefix filter) that will match\n  your type: <code>[prefix[<<prefix>>]]</code>\n  </$set>\n  </li>\n  <li>Make your current view-filter less restrictive.</li>\n</ul>\n\nFor further information, please see:\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]."
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default",
            "caption": "Global node style",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  A node's ''global configuration''\n  (also referred to as //global individual config//) defines its\n  individual appearance and behaviour in all views.\n</div>\n<<maybeShowTidColorWarning>>\n\n<$macrocall $name=\"sharedSettings\"\n    twIconField=<<tidIconField>>\n    faIconField=\"global.tmap.fa-icon\"\n    labelField=<<tidLabelField>> />\n\n<$macrocall $name=\"visConfiguration\"\n    mode=\"manage-node-types\"\n    extensionField=\"global.tmap.style\"\n    styleName=\"node's global style\"\n    inheritedList=\"[[inherited-global-default-style]]\n                   [[inherited-local-default-style]]\n                   [[inherited-group-styles]]\" />\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local",
            "caption": "Local node style",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  The ''local node configuration''\n  (also referred to as //view-specific node configuration//)\n  overrides the //global individual configuration// and only affects\n  the node's appearance and behaviour in the current view.\n</div>\n<<maybeShowTidColorWarning>>\n\n<fieldset>\n  <legend>Behaviour</legend>\n  <table class=\"tmap-config-table\">\n    <$macrocall type=\"input-select\"\n        $name=\"tmap-row\"\n        title=\"Open view\"\n        field=\"local.open-view\"\n        nochoice=\"Disabled\"\n        selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n        descr=\"Clicking on this node will open the specified\n               view instead of the tiddler represented by this node.\" />\n  </table>\n</fieldset>\n\n<$macrocall $name=\"sharedSettings\"\n    twIconField=\"local.tw-icon\"\n    faIconField=\"local.fa-icon\"\n    labelField=\"local.label\" />\n\n<$macrocall $name=\"visConfiguration\"\n    mode=\"manage-node-types\"\n    extensionField=\"local-individual-node-style\"\n    styleName=\"node's local style\"\n    inheritedList=\"[[inherited-global-default-style]]\n                   [[inherited-local-default-style]]\n                   [[inherited-group-styles]]\n                   [[global.tmap.style]]\" />\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/editNode": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode",
            "subtitle": "{{$:/core/images/edit-button}} Editing style of node \"<<tiddler>>\"",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n\\define maybeShowTidColorWarning()\n  <$list filter=\"[<tidColor>regexp[.+]]\">\n  <div class=\"tmap-flash-message tmap-warning\">\n    You have set the tiddler's color\n    field to \"<<tidColor>>\". This value will be completely ignored\n    when you change node's color properties in the vis editor below.\n  </div>\n  </$list>\n\\end\n\n\\define iconSettings(twIconField, faIconField)\n  <fieldset>\n    <legend>Icon Settings</legend>\n    <table class=\"tmap-config-table\">\n      <<tmap-row type:\"input-text\"\n          title:\"TW-icon\"\n          field:\"$twIconField$\"\n          descr:\"A tiddlywiki image reference.\n                 For example '$:/core/icon' for Movotun Jack.\">>\n      <<tmap-row type:\"input-text\"\n          title:\"FA-icon\"\n          field:\"$faIconField$\"\n          descr:\"A Font Awesome icon code.\n                 For example 'f206' for the bicycle symbol.\">>\n    </table>\n  </fieldset>\n\\end\n\n\\define sharedSettings(twIconField, faIconField, labelField)\n  <fieldset>\n    <legend>General Settings</legend>\n    <table class=\"tmap-config-table\">\n      <<tmap-row type:\"input-text\"\n          title:\"Label\"\n          field:\"$labelField$\"\n          descr:\"Use this value as node label.\">>\n    </table>\n  </fieldset>\n  <!-- display icon fieldset -->\n  <<iconSettings \"$twIconField$\" \"$faIconField$\">>  \n\\end\n\n<$macrocall\n  $name=\"tabs\"\n  default=<<concat \"$(template)$/default\">>\n  tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft",
            "caption": "Draft",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-modal-editor\">\n  <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n    <$set name=\"currentTiddler\" value=<<draftTRef>> >\n      <$transclude tiddler=\"$:/core/ui/EditTemplate\" field=\"text\" mode=\"block\" />\n    </$set>\n  </$importvariables>\n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original",
            "caption": "Current Version",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-modal-editor\">\n  <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n    <$set name=\"currentTiddler\" value=<<originalTRef>> >\n      <$transclude tiddler=\"$:/core/ui/ViewTemplate\" field=\"text\" mode=\"block\" />\n    </$set>\n  </$importvariables>\n</div>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor",
            "subtitle": "{{$:/core/images/edit-button}} <<originalTRef>>",
            "classes": "tmap-modal-fullscreen-editor tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n\\define defaultTab() $:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original\n\n<$macrocall $name=\"tabs\"\n    default=<<defaultTab>>\n    tabsList=\"[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/]]\" />"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged",
            "subtitle": "{{$:/core/images/info-button}} The field \"<<name>>\" changed",
            "text": "\\rules except wikilink\n\nYou changed the field \"<<name>>\" from \"<<oldValue>>\" to \"<<newValue>>\".\n\nIt is recommended to let TiddlyMap copy all values from the former field \"<<oldValue>>\" to the new field \"<<newValue>>\" so the data stored in \"<<oldValue>>\" is not lost. This operation has to be done now or never.\n\nDo you want to move each tiddler's existing \"<<oldValue>>\" value to \"<<newValue>>\"? Please note that any value currently stored in \"<<newValue>>\" would consequently be overridden and the old field \"<<oldValue>>\" would be eventually removed!"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported",
            "subtitle": "{{$:/core/images/info-button}} Your machine does not support fullscreen",
            "buttons": "ok_suppress",
            "text": "\\rules except wikilink\n\nPlease have a look [[here|http://caniuse.com/#feat=fullscreen]] to see a list of supported devices/browsers.\n\nSorry for this :("
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/renameView": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/renameView",
            "subtitle": "{{$:/core/images/tag-button}} Please specify a view name",
            "text": "\\rules except wikilink\n\n''Name:''\n<$edit-text focus=\"true\" tiddler=<<output>> field=\"text\" type=\"text\" tag=\"input\" default=\"\"\n            class=\"tmap-trigger-field tmap-triggers-ok-button-on-enter\" />\n\nNote that ''<<count>>'' tiddlers are referencing this view.\n\n<$reveal type=\"nomatch\" text=\"0\" default=<<count>>>\n\nRenaming the view will cause the reference to be invalid.\nIt is recommended to first remove the tiddlymap widgets in\nthe tiddlers listed below or change their view attributes\naccordingly.\n\n''References''\n\n<ul>\n<$list filter=<<refFilter>> variable=\"item\">\n  <li><$text text=<<item>> /></li>\n</$list>\n</ul>\n\n</$reveal>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas",
            "subtitle": "{{$:/core/images/options-button}} Save a snapshot image of view \"<<view>>\"",
            "text": "\\rules except wikilink\n\n\\define preview()\n<div class=\"tmap-save-canvas-preview\">\n  <$transclude tiddler=<<snapshot>> /><br />\n</div>\n\\end\n\n<table class=\"tmap-config-table\">\n  <$macrocall $name=\"tmap-row\"\n    type=\"input-text\"\n    title=\"Name\"\n    field=\"name\"\n    descr=<<preview>> />\n  <<tmap-row type:\"input-text\"\n      title:\"Width\"\n      field:\"width\"\n      descr:\"Scales the image to match this new width (unit: px)\">>\n  <<tmap-row type:\"input-text\"\n      title:\"height\"\n      field:\"height\"\n      descr:\"Scales the image to match this new height (unit: px)\">>\n  <<tmap-row type:\"input-radio\"\n      title:\"Action\"\n      field:\"action\"\n      selectFilter:\"[[download|Download]]\n                    [[wiki|Save in wiki]]\n                    [[placeholder|Use as placeholder for this view]]\"\n      descr:\"Save the image by downloading it to your computer or\n              save it as a tiddler in your wiki.<br /><br />\n              A third option is to make TiddlyMap use this image as\n              placeholder for the current view. Placeholders are useful\n              when the wiki is exported as static html\n              or when editing a tiddler while having the preview\n              shown. In this case the title input is ignored.\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog",
            "text": "\\rules except wikilink\n\n<div class=<<classes>>>\n<$importvariables\n    filter=\"[[$:/plugins/felixhayashi/tiddlymap/misc/macros]]\n            [[$:/core/macros/tabs]]\">\n<$transclude tiddler=<<template>> mode=\"block\" />\n</$importvariables>\n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/welcome": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/welcome",
            "subtitle": "{{$:/core/images/info-button }} Welcome",
            "buttons": "ok",
            "text": "\\rules except wikilink\n\nIt seems that you freshly installed TiddlyMap.\n\n* In case you need any help, please consult the [[online docs|http://tiddlymap.org#Documentation]] first.\n* You are welcome to create an [[issue|https://github.com/felixhayashi/TW5-TiddlyMap/issues]] at GitHub for any bug you discover.\n* Make sure to revisit the [[demo site|http://tiddlymap.org]] to see whether your version is up-to-date.\n* If you like TiddlyMap, please give it a star at [[GitHub|https://github.com/felixhayashi/TW5-TiddlyMap]] or tell your friends about it :)\n* ''Please note:'' TiddlyMap is distributed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]], which belongs to the same license family, as the license used by TiddlyWiki. By using this plugin you agree to the product's [[License Terms|https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]].\n\nEnjoy!\n\n---\n\nTiddlyMap will configure your wiki for optimal use. Everything can be changed back later by you, via the TiddlyWiki configurations panel, so no worries. If you checked some of the options below, please save &amp; restart after closing this dialog.\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Optimize storyview\"\n      field:\"config.storyview\"\n      descr:\"Sets the storyview to 'top' for optimal scrolling.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Optimize sidebar\"\n      field:\"config.sidebar\"\n      descr:\"Sets sidebar layout to 'fixed-fluid' for larger editor.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Optimize navigation\"\n      field:\"config.navigation\"\n      descr:\"Sets navigation style to open tiddlers at top for better map navigation.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Create demo welcome map\"\n      field:\"config.demo\"\n      descr:\"Creates a little hello world welcome map for you.\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator",
            "subtitle": "{{$:/core/images/permalink-button}} Widget Code Generator",
            "buttons": "close",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  Use the code below to embed a view in a tiddler.\n</div>\n\n<pre style=\"white-space: normal;\">\n&lt;$tmap\n\n<$list filter=\"[<output>has[var.view]]\">\n  view=\"<$view field='var.view' />\"</$list>\n<$list filter=\"[<output>field:var.click-to-use[true]]\">\n  click-to-use=\"true\"</$list>\n<$list filter=\"[<output>has[var.editor]]\">\n  editor=\"<$view field='var.editor' />\"</$list>\n<$list filter=\"[<output>has[var.width]]\">\n  width=\"<$view field='var.width' />\"</$list>\n<$list filter=\"[<output>has[var.height]]\">\n  height=\"<$view field='var.height' />\"</$list>\n<$list filter=\"[<output>has[var.class]]\">\n  class=\"<$view field='var.class' />\"</$list>\n<$list filter=\"[<output>field:var.show-buttons[false]]\">\n  show-buttons=\"false\"</$list>\n<$list filter=\"[<output>has[var.design]]\">\n  design=\"<$view field='var.design' />\"</$list>&gt;&lt;/$tmap&gt;\n</pre>\n\n<fieldset>\n  <legend>Parameters</legend> \n  <table class=\"tmap-config-table\">\n      <$macrocall type=\"input-select\"\n          $name=\"tmap-row\"\n          title=\"View\"\n          field=\"var.view\"\n          nochoice=\" \"\n          selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n          descr=\"The view to bind the wiedget to\" />\n      <<tmap-row type:\"input-select\"\n          title:\"Editor bar\"\n          field:\"var.editor\"\n          selectFilter:\"[[|Hidden]]\n                        [[vis|Simple]]\n                        [[advanced|Advanced]]\"\n          descr:\"Whether the widget should act as an editor or not.\">>\n      <<tmap-row type:\"input-select\"\n          title:\"Design\"\n          field:\"var.design\"\n          selectFilter:\"[[|Normal]]\n                        [[plain|Plain]]\"\n          descr:\"Usually a header is displayed and borders. Plain\n                 design will only show the mere graph.\">>\n      <<tmap-row type:\"input-text\"\n          title:\"Height\"\n          field:\"var.height\"\n          descr:\"Graph's height in css units. Defaults to '300px'.\">>\n      <<tmap-row type:\"input-text\"\n          title:\"Width\"\n          field:\"var.width\"\n          descr:\"Graph's width in css units. Defaults to '100%'.\">>\n      <<tmap-row type:\"input-text\"\n          title:\"Class\"\n          field:\"var.class\"\n          descr:\"A custom class to apply your own css.\">>\n      <<tmap-row type:\"input-checkbox\"\n          title:\"Click to use\"\n          field:\"var.click-to-use\"\n          default:\"false\"\n          descr:\"A click is needed to enable the graph.\">>\n      <<tmap-row type:\"input-checkbox\"\n          title:\"Show buttons\"\n          field:\"var.show-buttons\"\n          default:\"true\"\n          descr:\"Show or hide the graph's navigation buttons.\">>\n  </table>\n</fieldset>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/close": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/close",
            "text": "\\rules except wikilink\n\n<$button class=\"tmap-dialog-button tmap-close-button\" tooltip=\"Close this dialog\">Close\n\n  <!-- trigger dialog callback -->\n  <$action-setfield $tiddler=<<result>> text=\"1\" />\n                       \n</$button>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok",
            "text": "\\rules except wikilink\n\n<$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm dialog\">OK\n\n  <!-- trigger dialog callback -->\n  <$action-setfield $tiddler=<<result>> text=\"1\" />\n                       \n</$button>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel",
            "text": "\\rules except wikilink\n\n<$transclude tiddler=\"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok\" mode=\"inline\" />\n<$button class=\"tmap-dialog-button tmap-cancel-button\" tooltip=\"Close dialog without saving\">Cancel\n  <!-- trigger dialog callback -->\n  <$action-setfield $tiddler=<<result>> text=\"\" />\n</$button>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress",
            "text": "\\rules except wikilink\n\n<$set name=\"currentTiddler\" value=<<title>> >\n\n<$checkbox field=\"suppress\" checked=\"1\" unchecked=\"0\" default=\"0\"> Do not show this dialog again</$checkbox>\n<$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm this dialog\">OK\n\n  <!-- trigger dialog callback -->\n  <$action-setfield $tiddler=<<result>> text=\"1\" />\n  \n  <!-- suppress dialog in the future -->\n  <$action-sendmessage $message=\"tmap:tm-suppress-dialog\"\n                       dialog=<<templateId>>\n                       suppress={{!!suppress}} />\n                       \n</$button>\n\n</$set>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter",
            "text": "\\rules except wikilink\n\n\\define footer() $:/plugins/felixhayashi/tiddlymap/dialogFooter/$(buttons)$\n\n<$transclude tiddler=<<footer>> />\n\n<!-- we need this button to be able to close a tiddler from outside programmatically -->\n<$button class=\"tmap-hidden-close-button\" message=\"tm-close-tiddler\" />"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager",
            "text": "\\rules except wikilink\n\n<$button\n    class=\"tmap-dialog-button tmap-save-button\"\n    tooltip=\"Save the current changes\">Save\n  <$action-sendmessage\n      $message=\"tmap:tm-save-type-form\"\n      mode=<<mode>>\n      output=<<output>> />\n</$button>\n<$button\n    class=\"tmap-dialog-button tmap-cancel-button\"\n    tooltip=\"Cancel the most resent changes and exit\">Quit\n  <$action-setfield $tiddler=<<result>> text=\"1\" />\n</$button>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType",
            "caption": "Removal",
            "text": "\\rules except wikilink\n\n\\define manage-edge-types()\n  <$macrocall $name=\"tmap-row\"\n      type=\"input-checkbox\"\n      title=\"Delete type\"\n      field=\"temp.deleteType\"\n      default={{!id}}\n      readonly={{!!temp.idImmutable}}\n      descr=\"If you want to delete this type, set this to true\n             and click the save button afterwards. Predefined system\n             types cannot be deleted.\" note=\"Consequently, all edges\n             of this type will be deleted.\" />\n\\end\n\n\\define manage-node-types()\n  <$macrocall $name=\"tmap-row\"\n      type=\"input-checkbox\"\n      title=\"Delete type\"\n      field=\"temp.deleteType\"\n      default={{!id}}\n      readonly={{!!temp.idImmutable}}\n      descr=\"If you want to delete this type, set this to true and\n             click the save button afterwards. Predefined system\n             types cannot be deleted.\" />\n\\end\n\n<table class=\"tmap-config-table\"><$macrocall $name=<<mode>> /></table>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description",
            "caption": "Description",
            "text": "\\rules except wikilink\n\n\\define manage-edge-types()\n  <<tmap-row type:\"input-textarea\"\n      title:\"Description\"\n      field:\"description\"\n      descr:\"An optional description for this type. The\n             description will be displayed as tooltip when\n             moving the mouse over an edge of this type.\">>\n\\end\n\n\\define manage-node-types()\n  <<tmap-row type:\"input-textarea\"\n      title:\"Description\"\n      field:\"description\" \n      descr:\"An optional description for this type.\">>\n\\end\n\n<table class=\"tmap-config-table\">\n  <$macrocall $name=<<mode>> />\n</table>\n\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings",
            "caption": "General",
            "text": "\\rules except wikilink\n\n\\define manage-edge-types()\n  <<tmap-row type:\"input-text\"\n      title:\"Label\"\n      field:\"label\"\n      descr:\"An optional alias used as edge-label.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show label\"\n      field:\"show-label\"\n      default:\"true\"\n      descr:\"If unchecked, no edge label will be displayed.\">>\n\\end\n\\define manage-node-types()\n  <$list filter=\"[<currentTiddler>!regexp:id[tmap:]]\">\n  <<tmap-row type:\"input-textarea\"\n      title:\"Scope\"\n      field:\"scope\"\n      descr:\"A filter expression that defines, which nodes inherit\n             this node-type and its style.\">>\n  </$list>\n  <$macrocall type=\"input-select\"\n      $name=\"tmap-row\"\n      title=\"Priority\"\n      field=\"priority\"\n      selectFilter=<<tmap \"scale\" \"100\">>\n      descr=\"When a type has a a higher priority than another type,\n             its style will override the other style\" />\n\\end\n\n<table class=\"tmap-config-table\">\n  <$macrocall\n    $name=\"tmap-row\"\n    title=\"Identifier\"\n    field=\"temp.newId\"\n    type=\"input-text\"\n    default={{!!id}}\n    readonly={{!!temp.idImmutable}}\n    descr=\"A unique identifier\"\n  />\n  <$macrocall $name=<<mode>> />\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview",
            "caption": "Overview",
            "text": "\\rules except wikilink\n\n\\define date(f) <$view field=$f$ format=\"date\" template=\"DDth mmm hh:mm:ss\"/>\n\n! <$link to={{!!typeTRef}}><$view field=\"id\" /></$link>\n\n<table class=\"tmap-key-value-table\">\n  <tr>\n    <th align=\"left\">Created on</th>\n    <td>\n      <<date \"created\">>\n    </td>\n  </tr>\n  <tr>\n    <th align=\"left\">Modified on</th>\n    <td><<date \"modified\">></td>\n  </tr>\n  <tr>\n    <th align=\"left\">Usage count</th>\n    <td>\n      <span class=\"tmap-edge-type-specific\">\n        <$view field=\"temp.usageCount\" />\n      </span>\n      <span class=\"tmap-node-type-specific\">\n        <$count filter={{!!scope}}>0</$count>\n      </span>\n    </td>\n  </tr>\n</table>\n\n<$view field=\"description\">//No description available//</$view>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling",
            "caption": "Styling",
            "text": "\\rules except wikilink\n\n\\define url()\n  <$set\n      filter=\"[<mode>prefix[manage-edge-types]]\"\n      name=\"module\"\n      value=\"edges\"\n      emptyValue=\"nodes\">\n    [[visjs.org|http://visjs.org/docs/network/$(module)$]]\n  </$set>\n\\end\n\n<fieldset class=\"tmap-node-type-specific\">\n  <legend>Icon Settings</legend>\n  <table class=\"tmap-config-table\">\n    <<tmap-row type:\"input-text\"\n        title:\"TW-icon\"\n        field:\"tw-icon\"\n        descr:\"A tiddlywiki image reference.\n               For example '$:/core/icon' for Movotun Jack.\">>\n    <<tmap-row type:\"input-text\"\n        title:\"FA-icon\"\n        field:\"fa-icon\"\n        descr:\"A Font Awesome icon code.\n               For example 'f206' for the bicycle symbol.\">>\n  </table>\n</fieldset>\n\n<fieldset><legend>Visjs styles</legend>\n  <div class=\"tmap-flash-message tmap-info\">\n     All visjs options below are documented at <<url>>.\n  </div>\n  <div class=\"tmap-flash-message tmap-info\">\n     Only config items that you actually changed have an effect on\n     the graph. Other options are visible, yet, inactive.\n  </div>\n  <$tmap-config\n      mode=<<mode>>\n      inherited=\"inherited-style\"\n      extension=\"style\" />\n</fieldset>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager",
            "subtitle": "{{$:/core/images/tag-button}} <<topic>>",
            "buttons": "element_type_manager",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n\\define defaultTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview\n\\end\n\n\\define settingsTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings\n\\end\n\n\\define tabsFilter()\n[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/]]\n\\end\n\n\\define searchFilter()\n$(searchSelector)$\n+[sort[title]nsort[priority]]\n+[removeprefix<typeRootPath>removeprefix[/]]\n+[search:title{$:/temp/tmap/MapElementTypeSearch}]\n\\end\n\n\\define managerClass() tmap-$(mode)$\n\n\\define typePath() $(typeRootPath)$/$(id)$\n\n<div id=\"tmap-element-type-manager\" class=<<managerClass>>>\n  <div>\n    <div class=\"tmap-searchbar\">\n      <$edit-text\n          focus=\"true\"\n          tiddler=\"$:/temp/tmap/MapElementTypeSearch\"\n          type=\"text\"\n          tag=\"input\"\n          default=\"\" />\n      <$list filter=\"[{$:/temp/tmap/MapElementTypeSearch}regexp[.+]]\n                     +[addprefix[/]]\n                     +[addprefix<typeRootPath>]\n                     +[!is[tiddler]!is[shadow]]\">\n      <$button tooltip=\"Create a new type of this name\">\n      {{$:/core/images/new-button}}\n        <$action-sendmessage\n            $message=\"tmap:tm-create-type\"\n            mode=<<mode>>\n            id={{$:/temp/tmap/MapElementTypeSearch}}\n            output=<<output>> />\n        <$action-setfield $tiddler=\"$:/temp/tmap/MapElementTypeSearch\" text=\"\" />\n      </$button>\n      </$list>\n\n    </div>\n    <ul>\n      <$list\n          filter=<<searchFilter>>\n          emptyMessage=<<noTypeFound>>\n          variable=\"id\">\n      <li>\n        <span class=\"tmap-ranking tmap-node-type-specific\">\n          # <$view tiddler=<<typePath>> field=\"priority\">1</$view>\n        </span>\n        <$button class=\"tc-btn-invisible tmap-link\"><<id>>\n          <$action-setfield\n              $tiddler=<<qualify \"$:/state/tabs/MapElementTypeManager\">>\n              text=<<defaultTab>> />\n          <$action-sendmessage\n              $message=\"tmap:tm-load-type-form\"\n              id=<<id>>\n              mode=<<mode>>\n              output=<<output>> />\n        </$button>\n      </li>\n      </$list>\n    </ul>\n  </div>\n  <div>\n    <$reveal type=\"nomatch\" text=\"\" default={{!!id}} >\n      <$macrocall\n          $name=\"tabs\"\n          default=<<defaultTab>>\n          state=\"$:/state/tabs/MapElementTypeManager\"\n          tabsList=<<tabsFilter>> />\n    </$reveal>\n    <$reveal type=\"match\" text=\"\" default={{!!id}} >\n      <div class=\"tmap-flash-message tmap-info\">\n        Please select a type from the list or create a new one by\n        entering the type name in the search field on the left.\n      </div>\n      <div class=\"tmap-flash-message tmap-info tmap-node-type-specific\">\n        The number next to the node-type label represents it's priority.\n      </div>\n    </$reveal>\n  </div>\n</div>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node": {
            "title": "$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node",
            "text": "\\define single()\n  <$list filter=\"\n      [[tmap:tm-toggle-central-topic, $:/core/images/star-filled, Toggle central topic]]\n      [[tmap:tm-delete-element, $:/core/images/delete-button, Delete node]]\">\n    <$button class=\"tc-btn-invisible\">\n      <$action-sendmessage $message=<<tmap \"splitAndSelect\" \", \" \"0\">> />\n      <$transclude tiddler=<<tmap \"splitAndSelect\" \", \" \"1\">> />\n      <<tmap \"splitAndSelect\" \", \" \"2\">>\n    </$button>\n  </$list>\n\\end\n\n\\define multi()\n  <$list filter=\"\n      [[tmap:tm-delete-element, $:/core/images/delete-button, Delete selected nodes]]\">\n    <$button class=\"tc-btn-invisible\">\n      <$action-sendmessage $message=<<tmap \"splitAndSelect\" \", \" \"0\">> />\n      <$transclude tiddler=<<tmap \"splitAndSelect\" \", \" \"1\">> />\n      <<tmap \"splitAndSelect\" \", \" \"2\">>\n    </$button>\n  </$list>\n\\end\n\n<div class=\"tc-drop-down\">\n  <$macrocall $name=<<mode>> />\n</div>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar",
            "text": "\\rules except wikilink\n\\define showEdgeField() show-$(curEdgeId)$\n\n<!-- === View Switcher ========================================== -->\n\n<div class=\"tmap-menu-bar\">\n  View:\n  <$reveal type=\"match\" text=\"false\" default=<<isViewBound>> >\n    <$select\n        tiddler=<<viewHolder>>\n        field=\"text\"\n        default=<<viewLabel>> >\n      <$list filter=<<tmap \"option\" \"selector.allViewsByLabel\">> >\n        <option value={{!!title}}>\n          <$view tiddler={{!!title}} field=\"title\" />\n        </option>\n      </$list>\n    </$select>\n  </$reveal>\n  <$reveal type=\"match\" text=\"true\" default=<<isViewBound>> >\n    <b><<viewLabel>></b>\n  </$reveal>\n\n<!-- === Menu =================================================== -->\n\n  <$button\n      popup=<<qualify \"$:/temp/menu\">>\n      class=\"tmap-unicode-button\"\n      tooltip=\"Open the Menu\">{{$:/core/images/menu-button}}\n  </$button>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/menu\">> >\n    <div class=\"tc-drop-down\">\n      <a href=\"http://tiddlymap.org#Documentation\" target=\"_blank\">\n        {{$:/core/images/info-button}} Open online help\n      </a>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-create-view\">\n        {{$:/core/images/new-button}} Create new view\n      </$button>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-generate-widget\">\n        {{$:/core/images/permalink-button}} Grab widget code\n      </$button>\n      <div class=\"tmap-list-separator\">Global configurations:</div>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-configure-system\">\n        {{$:/core/images/options-button}} Configure TiddlyMap\n      </$button>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-edge-types\">\n        <span class=\"tmap-unicode-icon\">◭</span> Manage edge-types\n      </$button>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-node-types\">\n        <span class=\"tmap-unicode-icon\">▢</span> Manage node-types\n      </$button>\n      <div class=\"tmap-view-actions\">\n        <div class=\"tmap-list-separator\">Actions for this view:</div>\n        <$button class=\"tc-btn-invisible\" message=\"tmap:tm-edit-view\">\n          {{$:/core/images/options-button}} Configure view\n        </$button>\n        <$button class=\"tc-btn-invisible\" message=\"tmap:tm-rename-view\">\n          {{$:/core/images/tag-button}} Rename view\n        </$button>\n        <$button class=\"tc-btn-invisible\" message=\"tmap:tm-delete-view\">\n          {{$:/core/images/delete-button}} Delete view\n        </$button>\n      </div>\n    </div>\n  </$reveal>\n\n<!-- === Neighbourhood menu ===================================== -->\n\n  <$reveal\n      type=\"match\"\n      text=\"true\"\n      default=<<tmap \"option\"\n                     \"config.sys.editorMenuBar.showNeighScopeButton\">>>\n    <$button\n        class=<<neighScopeBtnClass>>\n        tooltip=\"Change the neighbourhood scope\"\n        popup=<<qualify \"$:/temp/neighScope\">>>\n      {{$:/core/images/preview-open}}\n    </$button>\n  </$reveal>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/neighScope\">> >\n    <div class=\"tc-drop-down\">\n      <div class=\"tmap-list-separator\">Neighbourhood scope</div>\n      <$button class=\"tc-btn-invisible\">None\n        <$action-setfield\n            $tiddler=<<viewRoot>>\n            config.neighbourhood_scope=\"\" />\n      </$button>\n      <$list filter=\"[[1|1 step distance]]\n                     [[2|2 step distance]]\n                     [[3|3 step distance]]\n                     [[4|4 step distance]]\n                     [[5|5 step distance]]\">\n        <$button class=\"tc-btn-invisible\">\n          <<tmap \"splitAndSelect\" \"|\" \"1\">>\n          <$action-setfield\n              $tiddler=<<viewRoot>>\n              config.neighbourhood_scope=<<tmap \"splitAndSelect\" \"|\" \"0\">> />\n        </$button>\n      </$list>\n      <$button class=\"tc-btn-invisible\">No limit\n        <$action-setfield\n            $tiddler=<<viewRoot>>\n            config.neighbourhood_scope=\"100\" />\n      </$button>\n\n      <div class=\"tmap-list-separator\">Neighbourhood traversal</div>\n\n      <$radio field=\"config.neighbourhood_directions\" value=\"in\"> Incoming</$radio><br />\n      <$radio field=\"config.neighbourhood_directions\" value=\"out\"> Outgoing</$radio><br />\n      <$radio field=\"config.neighbourhood_directions\" value=\"\"> Both</$radio>\n\n      <div class=\"tmap-list-separator\">Other</div>\n\n      <$checkbox field=\"config.show_inter_neighbour_edges\"\n          checked=\"true\" unchecked=\"false\"> Inter-neighbour edges</$checkbox>\n\n    </div>\n  </$reveal>\n\n<!-- === Tracing ===================================== -->\n\n  <$reveal\n      type=\"match\"\n      text=\"true\"\n      default=<<isShowNeighbourhood>>>\n    <$button\n        class=<<tracingBtnClass>>\n        tooltip=\"Trace your clicks on neighbouring nodes.\"\n        popup=<<qualify \"$:/temp/tmap-tracing\">>>\n      {{$:/core/images/timestamp-on}}\n    </$button>\n  </$reveal>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/tmap-tracing\">> >\n    <div class=\"tc-drop-down\">\n      <$button message=\"tmap:tm-neighbourhood-reset-trace\">\n        {{$:/core/images/erase}} Restart\n      </$button>\n      <span\n        title=\"\n          Enable this option to trace your clicks on neighbouring nodes.\n          Traced neighbours are temporarily added to the map (until the map is closed)\n          as if they where regular nodes of the map\"\n      >\n        <$checkbox\n          field=\"config.neighbourhood_trace_clicks\"\n          checked=\"true\"\n          unchecked=\"false\"\n        >\n          Trace clicked nodes\n        </$checkbox>\n      </span>\n      <br />\n      <span title=\"Will focus an zoom on the latest traced node\">\n        <$checkbox\n          field=\"config.neighbourhood_focus_newly_traced_node\"\n          checked=\"true\"\n          unchecked=\"false\"\n        >\n          Focus traced nodes\n        </$checkbox>\n      </span>\n      <br />\n      <span title=\"Per default, only neighbours of nodes matching the node filter are displayed. Enable this option to also show neighbours of traced nodes.\">\n        <$checkbox field=\"config.neighbourhood_include_traced_node_neighbours\"\n            checked=\"true\" unchecked=\"false\"> Show neighbours of all traced nodes</$checkbox>\n      </span>\n    </div>\n  </$reveal>\n\n<!-- === Export menu ============================================ -->\n\n  <$reveal\n      type=\"match\"\n      text=\"true\"\n      default=<<tmap \"option\" \"config.sys.editorMenuBar.showScreenshotButton\">>>\n    <$button class=\"tmap-unicode-button\" tooltip=\"Open the map-export menu\" popup=<<qualify \"$:/temp/mapExport\">>>\n      {{$:/core/images/download-button}}\n    </$button>\n  </$reveal>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/mapExport\">>>\n    <div class=\"tc-drop-down\">\n    <$button\n        class=\"tc-btn-invisible\"\n        tooltip=\"Export the graph and all its elements\n                 in form of a JSON file\">\n        {{$:/core/images/permalink-button}} Save as JSON file\n      <$action-sendmessage\n          $message=\"tmap:tm-download-graph\"\n          view=<<viewLabel>> />\n    </$button>\n    <$button\n        class=\"tc-btn-invisible\"\n        tooltip=\"Create a png image to download or save it\n                 as image or view-placeholder in your wiki\">\n        {{$:/core/images/palette}} Save as png image\n      <$action-sendmessage $message=\"tmap:tm-save-canvas\" />\n    </$button>\n    </div>\n  </$reveal>\n\n<!-- === Raster menu ============================================ -->\n\n  <$reveal\n      type=\"match\"\n      text=\"true\"\n      default=<<tmap \"option\" \"config.sys.editorMenuBar.showRasterMenuButton\">>>\n    <$button\n      tooltip=\"Change the raster of your map\"\n      class=\"tmap-unicode-button\"\n      popup=<<qualify \"$:/temp/rasterMenu\">>>\n      {{$:/core/images/line-width}}\n    </$button>\n  </$reveal>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/rasterMenu\">>>\n    <div class=\"tc-drop-down\">\n    <$button class=\"tc-btn-invisible\">Disable raster\n      <$action-setfield\n          $tiddler=<<viewRoot>>\n          config.raster=\"\" />\n    </$button>\n    <div class=\"tmap-list-separator\">Raster sizes</div>\n    <$list filter=\"[[50|50px]]\n                   [[75|75px]]\n                   [[100|100px]]\n                   [[150|150px]]\">\n      <$button class=\"tc-btn-invisible\">\n        <<tmap \"splitAndSelect\" \"|\" \"1\">>\n        <$action-setfield\n            $tiddler=<<viewRoot>>\n            config.raster=<<tmap \"splitAndSelect\" \"|\" \"0\">> />\n      </$button>\n    </$list>\n    </div>\n  </$reveal>\n\n</div>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/focusButton": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/focusButton",
            "text": "\\define filter() [list[$:/temp/tmap/nodes/$(viewLabel)$]search:title{$:/temp/tmap/bar/search}]\n\\define concat(str) $str$\n\n\\define state() $(widgetPopupsPath)$/focus\n\n<div class=\"tmap-focus-button\">\n  <$reveal type=\"match\" state=<<state>> text=\"\">\n    <$button\n        tooltip=\"Zoom on a specific node\"\n        class=<<tv-config-toolbar-class>>>{{$:/core/images/advanced-search-button}}\n     <$action-setfield $tiddler=\"$:/temp/tmap/bar/search\" text=\"\" />\n     <$action-setfield $tiddler=<<state>> text=\"1\" />\n    </$button>\n  </$reveal>\n  <$reveal type=\"nomatch\" state=<<state>> text=\"\">\n    <$button\n        tooltip=\"Close zoom popup\"\n        class=<<tv-config-toolbar-class>>>{{$:/core/images/advanced-search-button}}\n     <$action-setfield $tiddler=<<state>> text=\"\" />\n    </$button>\n    <div class=\"tmap-search-dropdown\">\n      <div class=\"tc-drop-down\">\n        <$edit-text\n            focus=\"true\"\n            tiddler=\"$:/temp/tmap/bar/search\"\n            field=\"text\"\n            type=\"text\"\n            tag=\"input\"\n            default=\"\" />\n        <small><$count filter=<<filter>> /> results</small>\n        <hr />\n        <div class=\"tmap-very-small-list\">\n          <$list filter=<<filter>>\n              variable=\"item\"\n              emptyMessage=\"//No results//\">\n            <$button\n                class=\"tc-btn-invisible\"\n                message=\"tmap:tm-focus-node\"\n                param=<<item>>>\n              <$view tiddler=<<item>> field=\"title\" />\n            </$button>\n          </$list>\n        </div>\n      </div>\n    </div>\n  </$reveal>\n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/hook/editor": {
            "title": "$:/plugins/felixhayashi/tiddlymap/hook/editor",
            "caption": "Map",
            "tags": "$:/tags/SideBar",
            "text": "\\define width() calc(100% - 15px)\n\n<div class=\"tmap-mobile-editor\">\n  <div class=\"tmap-flash-message tmap-warning\">\n    The editor is not displayed in mobile mode.\n  </div>\n</div>\n<div class=\"tmap-desktop-editor\">\n  <$tiddlymap\n    class=\"tmap-sidebar-map-editor\"\n    editor=\"advanced\"\n    object-id=\"main_editor\"\n    click-to-use=\"false\">\n  </$tiddlymap>\n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/hook/liveTab": {
            "title": "$:/plugins/felixhayashi/tiddlymap/hook/liveTab",
            "caption": "Live",
            "text": "\\define width() calc(100% - 15px)\n\n<div class=\"tmap-mobile-editor\">\n  <div class=\"tmap-flash-message tmap-warning\">\n    The live tab is not displayed in mobile mode.\n  </div>\n</div>\n<div class=\"tmap-desktop-editor\">\n  <$set name=\"view\"\n      filter=\"[{$:/temp/tmap/currentTiddler}get[tmap.open-view]]\"\n      emptyValue=<<tmap \"option\" \"config.sys.liveTab.fallbackView\">>>\n  <div>\n    <$tiddlymap\n        view=<<view>>\n        click-to-use=\"false\"\n        refresh-triggers=\"$:/temp/tmap/currentTiddler\"\n        object-id=\"live_tab\">\n    </$tiddlymap>\n  </div>\n  </$set> \n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton",
            "tags": "$:/tags/ViewToolbar",
            "description": "{{$:/language/Buttons/TiddlyMap/Hint}}",
            "caption": "{{$:/plugins/felixhayashi/tiddlymap/icon}} {{$:/language/Buttons/TiddlyMap/Caption}}",
            "text": "\\define buttonClass() $(tv-config-toolbar-class)$ $(additional-classes)$\n\n\\define nonExistentItem()\n<<item>> <span style=\"color: #9E9E9E\">(will be created)</span>\n\\end\n\n\\define noConnectionsMsg()\n<tr><td colspan=\"4\">//No connections found!//</td></tr>\n\\end\n\n\\define normalSearchFilter()\n[!is[system]!has[draft.of]search:title{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define regexSearchFilter()\n[!is[system]!has[draft.of]regexp{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define showButton(state)\n<$button set=\"$:/temp/tmap/state/popup/quickConnect\"\n         setTo=\"$state$\" tooltip={{$:/language/Buttons/TiddlyMap/Hint}} \n         aria-label={{$:/language/Buttons/TiddlyMap/Caption}}\n         class=<<buttonClass>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">{{$:/plugins/felixhayashi/tiddlymap/icon}}</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/TiddlyMap/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n\\define searchResults()\n<td>\n  <$button tooltip=\"Create incoming edge\">\n    <<tmap \"option\" \"misc.arrows.in\">>\n    <$action-sendmessage $message=\"tmap:tm-create-edge\"\n                         from=<<item>>\n                         to=<<currentTiddler>>\n                         force=\"true\"\n                         label={{$:/temp/quickConnectSearch/type}}\n                         view={{$:/temp/quickConnectSearch/view}} />\n  </$button>\n</td>\n<td>\n  <$button tooltip=\"Create outgoing edge\">\n    <<tmap \"option\" \"misc.arrows.out\">>\n    <$action-sendmessage $message=\"tmap:tm-create-edge\"\n                         from=<<currentTiddler>>\n                         to=<<item>>\n                         force=\"true\"\n                         label={{$:/temp/quickConnectSearch/type}}\n                         view={{$:/temp/quickConnectSearch/view}} />\n  </$button>\n</td>\n<td>\n  <$list\n      filter=\"[<item>is[tiddler]]\"\n      emptyMessage=<<nonExistentItem>>>\n    <$view tiddler=<<item>> field=\"title\" />\n  </$list>\n</td>\n\\end\n\n\\define hidePopup()\n<$macrocall $name=\"showButton\" state=<<qualify>> />\n\\end\n\n\\define showPopup()\n<$set name=\"additional-classes\" value=\"tmap-active-button\">\n  <$macrocall $name=\"showButton\" state=\"\" />\n</$set>\n<$set\n    name=\"searchFilter\"\n    filter=\"[field:title[$:/state/tmap/tid-toolbar]has[re-filter]]\"\n    value=<<regexSearchFilter>>\n    emptyValue=<<normalSearchFilter>>>\n<div class=\"tmap-quick-connect tc-reveal tc-popup\">\n  <div class=\"tc-drop-down\">\n    <div class=\"title\">Create connection</div>\n    <table class=\"tmap-quick-connect-search-bar\">\n      <tr>\n        <td>Type:</td>\n        <td>\n          <$edit-text\n              tiddler=\"$:/temp/quickConnectSearch/type\"\n              field=\"text\"\n              type=\"text\"\n              tag=\"input\"\n              default=\"\" />\n          <$select tiddler=\"$:/temp/quickConnectSearch/type\" default=\"\">\n            <option></option>\n            <$list filter=<<tmap \"option\" \"selector.allEdgeTypesById\">>>\n              <option>{{!!title}}</option>\n            </$list>\n          </$select>\n        </td>\n      </tr>\n      <tr>\n        <td>Search:</td>\n        <td>\n          <$edit-text tiddler=\"$:/temp/quickConnectSearch\" type=\"text\" tag=\"input\" default=\"\"></$edit-text>\n          <$checkbox\n              tiddler=\"$:/state/tmap/tid-toolbar\"\n              field=\"re-filter\"\n              checked=\"1\"\n              unchecked=\"\"\n              default=\"\"> regexp\n          </$checkbox>\n<!--\n          <small>(<$count filter=<<searchFilter>> /> results)</small>\n-->\n        </td>\n      </tr>\n      </table>\n      <table class=\"tmap-create-connection-table\">\n      <tr>\n        <td colspan=\"2\">\n          <table class=\"tmap-very-small-list\">\n            <$list\n                filter=<<searchFilter>>\n                variable=\"item\">\n            <tr><<searchResults>></tr>\n            </$list>\n            <tr>\n            <$list filter=\"[{$:/temp/quickConnectSearch}regexp[.+]] -[is[tiddler]]\" variable=\"item\">\n              <<searchResults>>\n            </$list>\n            </tr>\n          </table>\n        </td>\n      </tr>\n    </table>\n    <div class=\"title\">Existing Connections</div>\n    <div class=\"tmap-quick-connect-existing-bar\">\n      <$select\n          tiddler=\"$:/state/tmap/tid-toolbar\"\n          field=\"direction\"\n          default=\"both\">\n          <option value=\"both\">both</option>\n          <option value=\"in\">incoming</option>\n          <option value=\"out\">outgoing</option>\n      </$select>\n      <$checkbox\n          tiddler=\"$:/state/tmap/tid-toolbar\"\n          field=\"filter.links\"\n          checked=\"-[[tw-body:link]]\"\n          unchecked=\"\"\n          default=\"\"> hide links\n      </$checkbox>\n    </div>\n    <table class=\"tmap-connection-table\">\n<!--\n    <tr>\n      <th></th>\n      <th>Tiddler</th>\n      <th>Type</th>\n      <th></th>\n    </tr>\n-->\n    \n    <$tmap-connections\n        filter=<<tmap mergeFields \"$:/state/tmap/tid-toolbar\" \"filter.\">>\n        direction={{$:/state/tmap/tid-toolbar!!direction}}\n        emptyMessage=<<noConnectionsMsg>>>\n      <tr>\n        <td title=<<direction>>><<directionSymbol>></td>\n        <td><$link to=<<neighbour>>><$view field=\"title\" /></$link></td>\n        <td><<edge.type>></td>\n        <td>\n          <$button\n              tooltip=\"Delete this connection\"\n              class=\"tc-btn-invisible\">{{$:/core/images/close-button}}\n            <$action-sendmessage $message=\"tmap:tm-remove-edge\"\n                id=<<edge.id>>\n                from=<<edge.from>>\n                to=<<edge.to>>\n                type=<<edge.type>> />\n          </$button>\n        </td>\n      </tr>\n    </$tmap-connections>\n    </table>   \n  </div>\n</div>\n</$set>\n\\end\n\n<$list filter=\"[all[current]is[tiddler]]\"><$list filter=\"[{$:/temp/tmap/state/popup/quickConnect}prefix<qualify>]\" variable=\"item\" emptyMessage=<<hidePopup>>><<showPopup>></$list></$list>"
        },
        "$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png": {
            "title": "$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png": {
            "title": "$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/tiddlymap/icon": {
            "title": "$:/plugins/felixhayashi/tiddlymap/icon",
            "tags": "$:/tags/Image",
            "text": "<svg\n   xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\n   xmlns:cc=\"http://creativecommons.org/ns#\"\n   xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n   xmlns:svg=\"http://www.w3.org/2000/svg\"\n   xmlns=\"http://www.w3.org/2000/svg\"\n   xmlns:inkscape=\"http://www.inkscape.org/namespaces/inkscape\"\n   class=\"tc-image-tiddlymap-button tc-image-button\"\n   version=\"1.1\"\n   width=\"22pt\"\n   height=\"22pt\"\n   viewBox=\"0 0 128 128\">\n  <defs\n     id=\"defs4\">\n    <marker\n       refX=\"0\"\n       refY=\"0\"\n       orient=\"auto\"\n       id=\"Arrow1Lend\"\n       style=\"overflow:visible\">\n      <path\n         d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n         transform=\"matrix(-0.8,0,0,-0.8,-10,0)\"\n         id=\"path3850\"\n         style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" />\n    </marker>\n    <marker\n       refX=\"0\"\n       refY=\"0\"\n       orient=\"auto\"\n       id=\"Arrow1Lstart\"\n       style=\"overflow:visible\">\n      <path\n         d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n         transform=\"matrix(0.8,0,0,0.8,10,0)\"\n         id=\"path3847\"\n         style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" />\n    </marker>\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4329\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4321\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4315\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4307\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4299\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4293\" />\n  </defs>\n  <g\n     transform=\"translate(0,-1024.5289)\"\n     id=\"layer1\">\n    <path\n       d=\"m 17.867073,4.5821643 a 3.7249374,3.7249374 0 1 1 -7.449875,0 3.7249374,3.7249374 0 1 1 7.449875,0 z\"\n       transform=\"matrix(-6.3328802,0,0,6.2775831,193.9581,1100.3667)\"\n       id=\"path4139-1-14\"\n       style=\"fill-opacity:1;fill-rule:nonzero\" />\n    <path\n       d=\"M 77.450496,1064.5069 C 58.849552,1025.9634 15.704158,1023.3858 2.8821873e-7,1034.558 L 0.02388589,1035.2674 C 24.502636,1022.2072 44.810725,1042.1507 60.163934,1074.112 z\"\n       id=\"path4337\"\n       style=\"fill-opacity:1;stroke-width:0.58181816;stroke-miterlimit:4;stroke-dasharray:none;marker-start:none;marker-end:none\" />\n    <path\n       d=\"m 12.878637,11.280739 4.75937,-2.7478243 4.759371,-2.7478236 0,5.4956479 0,5.495648 -4.759371,-2.747824 z\"\n       transform=\"matrix(4.6545455,0,0,4.6545455,-13.580429,1027.7638)\"\n       id=\"path3004\"\n       style=\"fill-opacity:1;fill-rule:nonzero\" />\n  </g>\n  <metadata\n     id=\"metadata3772\">\n    <rdf:RDF>\n      <cc:Work\n         rdf:about=\"\">\n        <dc:title></dc:title>\n        <dc:format>image/svg+xml</dc:format>\n        <dc:type\n           rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\" />\n      </cc:Work>\n    </rdf:RDF>\n  </metadata>\n</svg>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/media/surface.png": {
            "title": "$:/plugins/felixhayashi/tiddlymap/media/surface.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/config/EditTemplateFields/Visibility/tmap.id": {
            "title": "$:/config/EditTemplateFields/Visibility/tmap.id",
            "text": "hide"
        },
        "$:/language/Buttons/TiddlyMap/Caption": {
            "title": "$:/language/Buttons/TiddlyMap/Caption",
            "text": "tiddlymap"
        },
        "$:/language/Buttons/TiddlyMap/Hint": {
            "title": "$:/language/Buttons/TiddlyMap/Hint",
            "text": "Toggle TiddlyMap actions"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/macros": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/macros",
            "text": "\\define concat(str) $str$\n\n\\define input-text(field, index, default, readonly, class, focus)\n  <$reveal type=\"match\" text=\"\" default=\"$readonly$\">\n    <$edit-text\n        tiddler=<<output>>\n        field=\"$field$\"\n        index=\"$index$\"\n        type=\"text\"\n        tag=\"input\"\n        default=\"$default$\"\n        focus=\"$focus$\"\n        class=\"$class$\" />\n  </$reveal>\n  <$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\">\n    <input type=\"text\" value=\"$default$\" readonly=\"true\" disabled=\"true\" />\n  </$reveal>\n\\end\n\n\\define input-button(field, index, default, default, label:\"Proceed\")\n  <div class=\"tmap-button-wrapper\">\n  <$button>$label$\n    <$action-setfield $tiddler=<<output>> $field=\"$field$\" index=\"$index$\" $value=\"$default$\" />\n  </$button>\n  </div>\n\\end\n\n\\define input-textarea(field, index, default, default, class, focus)\n  <$edit-text\n      tiddler=<<output>>\n      field=\"$field$\"\n      index=\"$index$\"\n      autoHeight=\"no\"\n      type=\"text\"\n      tag=\"textarea\"\n      default=\"$default$\"\n      class=\"$class$\"\n      focus=\"$focus$\" />\n\\end\n\n\\define input-checkbox(field, index, readonly, default)\n  <$reveal type=\"match\" text=\"\" default=\"$readonly$\">\n    <$checkbox\n        tiddler=<<output>>\n        field=\"$field$\"\n        index=\"$index$\"\n        checked=\"true\"\n        unchecked=\"false\"\n        default=\"$default$\" />\n  </$reveal>\n  <$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\">\n    <input type=\"checkbox\" value=\"$default$\" readonly=\"true\" disabled=\"true\" />\n  </$reveal>\n\\end\n\n\\define input-multi-checkbox(selectFilter, invert:\"no\", default)\n  <div class=\"tmap-no-stretch\">\n  <$list\n      filter=\"$selectFilter$\"\n      emptyMessage=\"– This list contains no items –\">\n    <$checkbox\n        tiddler=<<output>>\n        tag=<<tmap \"splitAndSelect\" \"|\" \"0\">>>\n      <$view\n          tiddler=<<tmap \"splitAndSelect\" \"|\" \"1\">>\n          field=\"title\" />\n    </$checkbox><br />\n  </$list>\n  </div>\n\\end\n\n\\define input-select(field, index, selectFilter, default, nochoice)\n  <$select\n      tiddler=<<output>>\n      field=\"$field$\"\n      index=\"$index$\"\n      default=\"$default$\">\n    <$set name=\"nochoice\" value=\"$nochoice$\">\n      <$list filter=\"[<nochoice>regexp[.+]]\">\n        <option value=\"\"><b><<nochoice>></b></option>\n      </$list>\n    </$set>\n    <$list filter=\"$selectFilter$\">\n      <option value=<<tmap \"splitAndSelect\" \"|\" \"0\">> >\n        <$view tiddler=<<tmap \"splitAndSelect\" \"|\" \"1\">> field=\"title\" />\n      </option>\n    </$list>\n  </$select>\n\\end\n\n\\define input-radio(field, index, selectFilter, default)\n  <$list filter=\"$selectFilter$\">\n    <$radio\n        tiddler=<<output>>\n        field=\"$field$\"\n        index=\"$index$\"\n        value=<<tmap \"splitAndSelect\" \"|\" \"0\">>>\n      <<tmap \"splitAndSelect\" \"|\" \"1\">>\n    </$radio><br />\n  </$list>\n\\end\n\n\\define tmap-row(title, field, index, type, descr, note, label, default, readonly, reset, selectFilter, nochoice, invert, class, focus)\n  <tr>\n    <td class=\"tmap-title\">$title$:</td>\n    <td>\n        <<$type$\n          field:\"$field$\"\n          index:\"$index$\"\n          readonly:\"$readonly$\"\n          default:\"$default$\"\n          label:\"$label$\"\n          invert:\"$invert$\"\n          selectFilter:\"$selectFilter$\"\n          nochoice:\"$nochoice$\"\n          focus:\"$focus$\"\n          class:\"$class$\">>\n        <$reveal type=\"match\" text=\"true\" default=\"$reset$\">\n          <$button>reset\n            <$action-setfield $tiddler=<<output>> $field=\"$field$\" $index=\"$index$\" $value=\"$default$\" />\n          </$button>\n        </$reveal>\n    </td>\n    <td>\n      <span class=\"tmap-description\">$descr$</span>\n      <$reveal type=\"nomatch\" text=\"\" default=\"$note$\">\n        <div class=\"tmap-note\">''Note:'' $note$</div>\n      </$reveal>\n    </td>\n  </tr>\n\\end\n\n\\define visConfiguration(inheritedList, extensionField, styleName:\"style\")\n  <fieldset><legend>Visjs configurations ($styleName$)</legend>\n    <div class=\"tmap-flash-message tmap-info\">\n      Only config items that you actually changed have an effect on\n      the graph. Other options are visible, yet, inactive.\n    </div>\n    <$tmap-config\n        mode=\"manage-node-types\"\n        inherited=\"$inheritedList$\"\n        extension=\"$extensionField$\" />\n  </fieldset>\n\\end\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder",
            "text": "Default"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic",
            "description": "The style is applied to the node that you marked as central topic in a map.",
            "style": "{\"font\":{\"size\":22,\"color\":\"rgba(0,0,0,1)\"},\"shape\":\"star\"}"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour",
            "description": "Neighbours are all nodes that are not part of the original set of nodes (\"matches\") but are connected (either outgoing or incoming) to a node of the original set.",
            "style": "{\"color\":\"#565656\"}"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Default": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default",
            "config.physics_mode": "false",
            "isview": "true"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges",
            "filter": "[prefix[$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes]]",
            "text": "\n\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes",
            "filter": "[field:title{$:/temp/tmap/currentTiddler}]"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View",
            "config.refresh-triggers": "$:/temp/tmap/currentTiddler",
            "config.physics_mode": "true",
            "config.vis": "{\"physics\":{\"forceAtlas2Based\":{\"springConstant\":0.09}}}",
            "config.neighbourhood_scope": "1",
            "created": "20150331114808577",
            "modified": "20200509212547688",
            "type": "text/vnd.tiddlywiki",
            "isview": "true"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes",
            "filter": "[!is[system]search{$:/temp/search}] [!is[system]search:tags{$:/temp/search}] [!is[system]search:text{$:/temp/search}limit[10]]"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search",
            "config.refresh-triggers": "$:/temp/search",
            "config.neighbourhood_scope": "1",
            "config.physics_mode": "true"
        }
    }
}




{
 "8a87fd13-9527-4fd0-a038-ce6c48edd71a": {
  "x": 0,
  "y": 0
 },
 "2abac0f0-aca8-4cf6-8a6e-5e05e3e056cd": {
  "x": 100,
  "y": 100
 },
 "1da3e4a8-ca10-4db5-afc0-15d86345637a": {
  "x": -139.745361328125,
  "y": 72.109375
 },
 "3c7013ec-c816-4e7e-99b1-24f5145e40e0": {
  "x": -120.745361328125,
  "y": -98.890625
 },
 "a5b1a1de-257b-4d0a-8ae2-1b6cee789b80": {
  "x": 128.254638671875,
  "y": -130.890625
 },
 "ee59f2dd-42c8-4e44-a8ff-f580fe476990": {
  "x": 279.254638671875,
  "y": -25.890625
 }
}


{
    "originalVersion": "0.17.8+10010",
    "dataStructureState": "0.11.0",
    "showWelcomeMessage": false
}
{
    "tiddlers": {
        "$:/plugins/felixhayashi/topstoryview/config.js": {
            "title": "$:/plugins/felixhayashi/topstoryview/config.js",
            "text": "/*\\\n\ntitle: $:/plugins/felixhayashi/topstoryview/config.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.config={classNames:{storyRiver:\"tc-story-river\",backDrop:\"story-backdrop\",tiddlerFrame:\"tc-tiddler-frame\",tiddlerTitle:\"tc-title\"},references:{userConfig:\"$:/config/topStoryView\",focussedTiddlerStore:\"$:/temp/focussedTiddler\",refreshTrigger:\"$:/temp/focussedTiddler/refresh\"},checkbackTime:$tw.utils.getAnimationDuration()}})();",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/topstoryview/layout": {
            "text": "html .tc-story-river:after {\n  content: \"\";\n  display: block; }\n",
            "title": "$:/plugins/felixhayashi/topstoryview/layout",
            "type": "text/vnd.tiddlywiki",
            "tags": [
                "$:/tags/Stylesheet"
            ]
        },
        "$:/plugins/felixhayashi/topstoryview/Configuration": {
            "title": "$:/plugins/felixhayashi/topstoryview/Configuration",
            "text": "Please see the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information on the options.\n\nSave and reload the wiki to activate changes.\n\n<table>\n  <tr>\n    <th align=\"left\">Scroll offset:</th>\n    <td><$edit-text tiddler=\"$:/config/topStoryView\" field=\"scroll-offset\" tag=\"input\" default=\"150px\" /></td>\n  </tr>\n</table>"
        },
        "$:/plugins/felixhayashi/topstoryview/License": {
            "title": "$:/plugins/felixhayashi/topstoryview/License",
            "text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-TopStoryView/blob/master/LICENSE"
        },
        "$:/plugins/felixhayashi/topstoryview/Readme": {
            "title": "$:/plugins/felixhayashi/topstoryview/Readme",
            "text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information."
        },
        "$:/plugins/felixhayashi/topstoryview/top.js": {
            "title": "$:/plugins/felixhayashi/topstoryview/top.js",
            "text": "/*\\\ntitle: $:/plugins/felixhayashi/topstoryview/top.js\ntype: application/javascript\nmodule-type: storyview\n\nViews the story as a linear sequence\n\n@preserve\n\n\\*/\n(function(){\"use strict\";var t=require(\"$:/plugins/felixhayashi/topstoryview/config.js\").config;var e=\"cubic-bezier(0.645, 0.045, 0.355, 1)\";var i=function(e){this.listWidget=e;this.pageScroller=new $tw.utils.PageScroller;this.pageScroller.scrollIntoView=this.scrollIntoView;this.pageScroller.storyRiverDomNode=document.getElementsByClassName(t.classNames.storyRiver)[0];var i=$tw.wiki.getTiddler(t.references.userConfig);var o=i?i.fields:{};$tw.hooks.addHook(\"th-opening-default-tiddlers-list\",this.hookOpenDefaultTiddlers);var r=parseInt(o[\"scroll-offset\"]);this.pageScroller.scrollOffset=isNaN(r)?71:r;this.recalculateBottomSpace()};i.prototype.refreshStart=function(t,e){};i.prototype.refreshEnd=function(t,e){};i.prototype.hookOpenDefaultTiddlers=function(t){return t};i.prototype.navigateTo=function(t){var e=this.listWidget.findListItem(0,t.title);if(e===undefined)return;var i=this.listWidget.children[e];var o=i.findFirstDomNode();if(!(o instanceof Element))return;this.pageScroller.scrollIntoView(o)};i.prototype.insert=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element))return;this.startInsertAnimation(e,function(){this.recalculateBottomSpace()}.bind(this))};i.prototype.remove=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element)){t.removeChildDomNodes();return}var i=this.getLastFrame()===e;this.startRemoveAnimation(t,e,function(){t.removeChildDomNodes();this.recalculateBottomSpace();if(i){this.pageScroller.scrollIntoView(this.getLastFrame())}}.bind(this))};i.prototype.getLastFrame=function(){var t=this.listWidget.children[this.listWidget.children.length-1];return t?t.findFirstDomNode():null};i.prototype.recalculateBottomSpace=function(){var t=this.pageScroller.storyRiverDomNode;if(this.getLastFrame()){var e=this.getLastFrame().getBoundingClientRect();var i=window.innerHeight;if(e.height<i){t.style[\"paddingBottom\"]=i-e.height+\"px\";return}}t.style[\"paddingBottom\"]=\"\"};i.prototype.scrollIntoView=function(t){if(this.preventNextScrollAttempt){this.preventNextScrollAttempt=false}if(!t)return;var e=$tw.utils.getAnimationDuration();this.cancelScroll();this.startTime=Date.now();var i=$tw.utils.getScrollPosition();var o=t.getBoundingClientRect(),r={left:o.left+i.x,top:o.top+i.y,width:o.width,height:o.height};var n=function(t,e,i,o){if(t<=i){return t}else if(e<o&&i<t+e-o){return t+e-o}else if(i<t){return t}else{return i}},s=n(r.left,r.width,i.x,window.innerWidth),a=r.top-this.scrollOffset;if(s!==i.x||a!==i.y){var l=this,c;c=function(){var t;if(e<=0){t=1}else{t=(Date.now()-l.startTime)/e}if(t>=1){l.cancelScroll();t=1}t=$tw.utils.slowInSlowOut(t);window.scrollTo(i.x+(s-i.x)*t,i.y+(a-i.y)*t);if(t<1){l.idRequestFrame=l.requestAnimationFrame.call(window,c)}};c()}};i.prototype.startInsertAnimation=function(t,i){var o=$tw.utils.getAnimationDuration();var r=window.getComputedStyle(t),n=parseInt(r.marginBottom,10),s=parseInt(r.marginTop,10),a=t.offsetHeight+s;setTimeout((function(){$tw.utils.setStyle(t,[{transition:\"none\"},{marginBottom:\"\"}]);i()}),o);$tw.utils.setStyle(t,[{transition:\"none\"},{marginBottom:-a+\"px\"},{opacity:\"0.0\"}]);$tw.utils.forceLayout(t);$tw.utils.setStyle(t,[{transition:\"opacity \"+o+\"ms \"+e+\", \"+\"margin-bottom \"+o+\"ms \"+e},{marginBottom:n+\"px\"},{opacity:\"1.0\"}])};i.prototype.startRemoveAnimation=function(t,i,o){var r=$tw.utils.getAnimationDuration();var n=i.offsetWidth,s=window.getComputedStyle(i),a=parseInt(s.marginBottom,10),l=parseInt(s.marginTop,10),c=i.offsetHeight+l;setTimeout(o,r);$tw.utils.setStyle(i,[{transition:\"none\"},{transform:\"translateX(0px)\"},{marginBottom:a+\"px\"},{opacity:\"1.0\"}]);$tw.utils.forceLayout(i);$tw.utils.setStyle(i,[{transition:$tw.utils.roundTripPropertyName(\"transform\")+\" \"+r+\"ms \"+e+\", \"+\"opacity \"+r+\"ms \"+e+\", \"+\"margin-bottom \"+r+\"ms \"+e},{transform:\"translateX(-\"+n+\"px)\"},{marginBottom:-c+\"px\"},{opacity:\"0.0\"}])};exports.top=i})();",
            "type": "application/javascript",
            "module-type": "storyview"
        }
    }
}
{
    "tiddlers": {
        "$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNjo0NTowOCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTY6NDU6MDgrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjBmYzFjNjhhLTcwZTYtMGY0Ni05ZDk4LWFhNDVjNjYxYThjODwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpiYzZmYmUxNi1mOTBkLWI1NDQtODUzOC05MjFkNjBiZjU0ZWI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTY6NDU6MDgrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjBmYzFjNjhhLTcwZTYtMGY0Ni05ZDk4LWFhNDVjNjYxYThjODwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNjo0NTowOCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmJjNmZiZTE2LWY5MGQtYjU0NC04NTM4LTkyMWQ2MGJmNTRlYjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz450LuoAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAATUSURBVHjajJZtTJVlGMd/13U/z+F4sBQOCiovZiMt8YiKZrMtypdh09StbLOtzA1RUmuTkppzIilJOB0Oa21tbaV+6UP5Mlnm5heVkfhyQJ1ONITAkAMqcTDonNOHA6g9qF3b/eF5/vf18r/u676uWwoLC3G73QCoKiICgIhQeGejVw3LMOTIP0xGdRQAFi1E9DyGSkLsKxtWEmAQuXfvHrJlyxZiYmIQkQHjeac/jjfKBsJ8YlnRzQKIgBoIh8ByaRSICAilRCjdk1UeAIhEIogIPT09SFFRER6PZ4DByqr1+WpRoYAquKYuqCPz9SZeeCVA4vggAC2XPVw54eXi0WTOH8yIslIIs+bryTsq+hl0d3cjxcXFuN1uVJVVp9dvEigSwP3iYj9vfV7L6IldPE5uXvZwcKuPsz/7+qLc/I1vexFAMBjEzJ49G9u2WV1TsEaVUhOBmJxVVeR9X8NTI3t5kgxN6GXakia67/bSeC4ZkexprccCZxLnVodCIRRgdU1BgsBuBVzz8qt49yv/oMb2f5TJd7kzBsXeLPHzal4VaiAmZnfupY0JIoKqKqoUGAHX9MV+llf4HxmtMaDyaDZLtvqZushPWEHsAlVFP/3rswSNsEEt4O0v/E9MCebx8PxCP5YNlr3hg7+/TFBEl6mClflGHUl9VdIvGycuJdDgvm/bAtu6j3c0uSmZufQhnRHPBsnIqcOyQGSZAjlEgCkLGh3RDHk6yJWTCQCUZi+gav8Mzh3KpGzeQgCuV3sZEhd06D2f3QgCas9XIuozCjw3q92xMXF8O8218QDM/fAMGLAsmLO2Jnof6rwkpjv10rLaURtEJimWJomtMDLdGUlyRhuBei8AU5Y0M2ZCMyPSW8hc2AxAW4OXUeOdbcKbFsQ2YKwkizCg1uAH9kxWOzU/+ga+X8s/Q/iBKur4w8tL79c69ESiTFXFQvQmyhhu1XsYNeHhW5s2o4OuwDB6ug2uISF8fZED9HQbgh1PM3Zah8PB7UYPGBBalDB+MFB/Kt6x0e0JMSzpDr9XxzmwprNxDB95F9eQkANrrI3HssFQq4hWAnDxaMqgaUoYF6DJ73X8b74Qz/C0Qds016tSUANqVypG92EMnD+SwZ9XPc5KSg/QWu900HotgRHjnA5uN3m4diojmiKzV3cNL25DdTvGwJESn0NhzMR2Ohqc6etoiidpgrNET3zrix6yKf3Bld8WLZ8IZcAG6ip9/LQpyOIt91vG2BltHCwezbbpKzEKYoFodKVO+fUh48f3+Lh20oexIBQqExFk586dxMbGkntp41rELscozFpRxaLN/6Mv/cf4hcMzCYdAzboDKXm7Ozs7MTk5ObhcLs4lzqmeeus4GCublgvJtF61Sc1qxR0beqzh7g4Xx3ZN5/KxaagCsvlASl4pQG9vb5TB0KFDibZtZfmlonxcVgVhAcuGjJxa0l9uImVKO3GpXahA4EYsjbXx3PgtmYbTk1CiKYM1h1LzKvrncmdnJ1JeXo7b7cYYQ9+A4L2r21IJR9ZhXOuxXGAZBvKv/Uui8wELVHYgUn44bdWNfmKRSIRgMIiUlJQQGxs78Krof7oYY8jt2TUCy3oH0XmI+MAejW0gYpoxxg/mF4zu3a8rbvXrPuigq6uLfwcA6IKAIsDf9kIAAAAASUVORK5CYII="
        },
        "$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0YjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo2OWVmYWE1NS01ZTI5LTIzNGUtYTUzMy0xNDkxYjM1NDNmYmE8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0Yjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjY5ZWZhYTU1LTVlMjktMjM0ZS1hNTMzLTE0OTFiMzU0M2ZiYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5WKqp9AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYXSURBVHjafFZtUFTXGX7e9z27sveuMCwYV8ElrA7YSFYHtJUPkaaI0aRqG8wP00zUzljDINNSA/2ROtpO24SxnahlxjYd7SSjmUkymcxYlDhQPzHGisEVp8HwYWCVVVgEsrsuLnL74+5uqTF9Z+7cO/d8PO95zvO851BlZSV0XQcAMDOYGQBARDhX3JRmMDYZwLPMWAzGHACYIgwS46oBNBNwtOL8CwE8EkSEUCgE2rJlC2w2G4go8Zwo/bMDgnoG6gxLfAAAYvPDMCCszKTAMIAGAhrWnf15AAAMwwARIRKJgDZv3gy73Q4iAjPjxIr9VVOMRhbAYKB8zvrO0llrfEsdKwLZek6YAPSFvtSu3GtLawu0ZJ6625SHGBQB1T88t6MxvopgMAjaunUrdF0HM+P4yv27DMYeJmB1RqW3Jnf3tQX2p0L4P9EXuqEd7PmDp+XuMU9sRbvXnnt1TxxACgoKYLVacbzsQDUJGkSATe6qi28uPtzusM6Kxie6NHLGUX3lxVUNX9StPHnn4wy3njuUYcu6n2pNi66avcEXnByP/nv8aiaIyrqz2gO5A9+9FI1GIfn5+WhZdTAdjFMkwMvZOy7uWnTAOz3L4Yk71m3t69fdfTDoUGTBeHTUfiHQ6lo7Z2OXJvpDAChKe+aOCdKRKWxZ2+1qb3yyd3GYmRkQ7GQBVs99wfv6on3eR2k4PdTkDEbH7IuS8/svld/561PJS/pDk1/bzwx94pze7xc5v/H+YPY6r5BAkdrJzODTK46lE6PeYEJt7u+8j+OZwCBiEAgAoNgKJoEQf6PvNvdrXgtZoNhSf7q0KZ3B2AQmVMze0Jmt54S/DcDCVig2NcvEUGxJAE4Pl+YOr0iv6BRSIPAmBeBZAmHlE2sH4p1uhrq1s0MnnEQMBsf8wRASAICQQCCITN1X7/sOuc0kgOVp3/fPs2WHv+coG7gQOJUnLGsUCTxEjPzUohEA+NfIWUdtx0+efzA1kSSkIGyBAQNCKgHAEBAJ3u79U7kiAcWoem/gb5Fd33nrH3kp+SMWtuAB+GllMJxMjCx9QRgA3uiqL5kwHiTlpxb3smlfMDGYGPP1hcMAkJvs8ScpfdJspdj+MK6Pf+5+u29vyb4lR4+BGEziVESAkEpw6Av1OhUpHCz4qOXbzFWz4Ncdj/v/o08Lt92ODDgZDCEFJYoUGH4mzugP92puPTf0pD3H7wvfdFZdqSxnMtWjoGAAmG9fOLxjwesdjT2/XzIQ7ks3sycYMSEwGHNtWf5bkX5NkYCJBxUBXiGV0XHvosOt54Zey33j/K+8P33++vjnbiGJbbLE+J9SANAb6nJ2B79wcUwETAwQQ7fMjPzMvfP8ja87HUIKMOiaAqMZhrGmLdAy78eZrwwsTS0eObTs+IdtgVanxBUExqGbb5VzrIISGIoUXsmqbgEhJldCQWqRf27SvPAn/o8XmgLhZsUkR4ll37mhk3n94Z4OlzY/7NLcYZfm7o1z2zT4vsvUNSXqprBCkmiTFbPX90/fh8GIT2sf+zTPdDMf4dVnNg4z+E0ixsGeBs9jd5ViSgLHjCb/peaR+MD3d4/ZJg2llyuG2Vwy7QWAs8PNnn1f7vkGSGxAzE6mk+kxkx/p/4unffSCR0hAoL1EBCYiPNdWNcwkNQTCR7feWX6g+7f/A7I8rcw/U6UEe0Ndrhc/W7mtL9ztmqlSgstSS/zTJ28dalpOpkRryrwbhwBACgsLMWPGDOT4ll3qyeqAkJTdCF7P/CrUY/GkLL1rE+2hTbSH8+0Lb/WEuhzhyaA905blf9Vd/895WnZwLHrPevir/cvOB1oLYpTtLrm6oYGIMDExAaqtrUVKSgqYGSKCk0WHq5ikkWEWtNL0imv5qUW+RclLRjJsrhBAuH1/QL8R7HR4xy5nescuP23E6hOA6mLv+sb4uTw6Ogqqq6uDpmkQkcStorX4XRcM1FjZ+kvFFjCJKU1WpkNJJUqIMtX1RyLeX3JtQ0JRhmGYZ/L27duRnJycuFGISOJ9pqh5lrB6iYgqGOxRrOaa54DcZmKvkJxk8JHC9rKh+KVhOsD4+Dj+MwADIf8n5m4xGwAAAABJRU5ErkJggg=="
        },
        "$:/plugins/felixhayashi/vis/img/network/backIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/backIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpmOWQ3OGY4ZC1lNzY0LTc1NDgtODZiNy1iNmQ1OGMzZDg2OTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmY5ZDc4ZjhkLWU3NjQtNzU0OC04NmI3LWI2ZDU4YzNkODY5Nzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4jq1U/AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAVTSURBVHjanFVfTFNnFP+d77ve8qeVFbBrpcVgRrCRFikFByLxwSAaE32oRCHD6JMxxhhn8G2RxxH3MsOTbyYsmCAxPMmMMYtkIUYmK60OO0qAK23BFlNob0uh3x7WS5jLZPpLbm6+k/P9zrm5v9855PF4UFhYCABgjIExBgAgIqRSqRIi6gDQRkQ1RGTB3wgR0e8AHgH4Sa/XR/EBiAiJRAJ04cIF5Ofng4g2n0gkUkxENwF0c843LzHGQEQQQkCLExEA9ALotVgsUQAQQmgNQhJCbF5kjCEUCl0moj4t5na7fTU1NUpVVVXUYrEkASAcDhe8efOmxOfzWScmJqoBdBNR99LS0hWz2dynNSSEAF28eBGFhYVgjCEcDn9HRD1EhIMHD3o9Hs9kWVlZAh9BKBQqGB4edr58+dKZ+6JbJpOpBwBWV1fB6+rqIMsyIpHIFcZYL2MMra2tY5cuXRrfuXNnBtvAYDBk3G63oqpqZm5uzgrgSDKZjBoMhueZTAbc5XIhFouVEtFTxhiOHTs2dv78eS8+Efv374+oqpqZnZ21cs5PJJPJPlmWkyynnBuMMTQ0NHi7uro+mVyDx+Pxulwu71ZOlkqlSonoJhGhvb39s8k1nDx50ss5hyRJN9PpdKlERB2aWjSVaEilUvzBgwcORVEs5eXloXPnzk1sV8BkMiUdDofP7/dXZ7PZDilnIhw4cGBeS1pbW2P37t1zBwKBikQiUUREWFhYsHHO0d7evm0Ru90+/+rVq2rO+XGJiJxEhMrKyhgAjI6OWoeHh5tWVla+4JzDZrO9bW5unhwcHGzz+/32np4e+xaDbfoHAMxmc6ijo2O0oqIiJkkSNjY2HBIRmRljMJvNyWfPnln7+/tPMMZQXl6+0NbW9qK2tjYcj8floaEhqKpq+HCkbD3PzMwYBgYG0NXV9UuusFna2kEgELAQEQ4dOvSis7PzN41Ar9dnrl27NqCNkv/C3bt3zy4tLVmICJxzEBFJRBQmorLFxcWCqqqq0Pj4eO3Y2JhbUZTdra2tL2pra8OJRGLHnTt3zkqS9K+huHU4EhHMZnMoGo0W5OIh7nK5jjLGKq1W69vDhw8rRqMxMjc3t2t5eXnX5ORklc/nM+fl5SWnpqa+0uv1K/n5+Ws6nW5NluXNd15e3ppOp1uz2WyzZ86cGQ0Gg6ZAIFCZzWZ/lYjokRDiuN/vt7W0tMw3NTUpbrd78P79++5gMFgRiUTKHj58WMYYQ3V19etTp05tq6Lp6Wkb5xxCiEfc7XZPM8a6FxcXTfX19a/1en2Gcy5qamreNjY2/qGq6joRZe12+9Tp06e3JY/FYgWPHz8+mhvr3/CWlpbk+vp6PmOseWVlBS6XS9GSJUkSdrs93NDQ8Oe+ffvC/8fJIyMjddFo9Esi6pVleVjT2m0A8Hq9zqGhIefnjoknT544A4GAM/eDbxMReFNTE0pKSpKqqsaI6Pj8/LxVVdWM3W6PfCr5xMTE1zllXS0uLn6aSqXAGxsbodPpoNfrn6uqCs75EUVRrJFIZMfevXsXdTrdxseIE4mEPDIyUu/3++tynd8yGo29RIR0Og26fv06ioqKwBgD5xzv3r27zBjrIyJIkgSHwzFZWVmp7NmzJ1ZaWpoAgGg0WqgoSvHMzIw1GAw6tvjhitFo7NPW5fv370Hd3d0oKCgA53zTQMvLy+VCiKuSJH0rSdLmztZytIWv5RPRD0T0Y3Fx8dzWfby6ugopHo//w4mcc8iyPMc5v5FOp7/PZrOdQohWInIC2C2EgBBigYi8Qoifs9lsv06nWyIiaFxagXg8jr8GAGxuIe7LBeWhAAAAAElFTkSuQmCC"
        },
        "$:/plugins/felixhayashi/vis/img/network/connectIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/connectIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3ZWRhMjI0MC0yYTQxLTNlNDQtYWM2My1iNzNiYTE5OWI3Y2E8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjdlZGEyMjQwLTJhNDEtM2U0NC1hYzYzLWI3M2JhMTk5YjdjYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ubxs+AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAUtSURBVHjajJZ/bNT1Gcdfz/P53PV6B4W7VltLqdAaplIOiMOoyxxJCSs/Gv/yB4gzJroAosmmDklwkYWR0bQsdmkykoojTpcsWYLxD/lRZdMQkTHRtkLZRqG0tIVe7662vTu43n32x/VKZ/jh89cn38/zvN7P5/l88zwf2blzJz6fDwARQUSm1n8s31CM0/VAnbNmsUPuAsDpgEO+Bg4C7//iyv5hvmMiQiqVQpqamvB6vVNwEeG1JZtCBrYi/MrkAwDNgjhwAlbzICBLA0rDb0+/839C6XQaaWxspLCw8Dp86cbNmqVFJQddE6KzdjZ9D89g+B6fSyCOcyn1nxil+O9xKg5HqWFSHGXLjrP7W/ICqVQK2bNnDz6fDxFh65KNvxbHDhF4rJj2bXPo+IGfcW5h5xL4f99P+FCEMIAob75x9t0dAMlkElNXV4e1lteXbNqiQoMaeOFOjrdU868SD2luYyEP6dUh+sYmSHeOU6GO5Z8VLx5+NNZxIpPJ5AS2L3upROCoCvz8Lo7vnkf77cAHhpiz/zIL9vWz8L8p/NvupmM0Q7pjnAoLqz8tDrc8MnQqYVUVhVdF4LEg7b+rvDn8wDDlH0WoPpukLJImSBaMwjcJqmwWts2jPZLG/8kwYVFeVdXXZcFf4yVDc2cNKfBFmD9X+0ncCP58F48eG+Feo2CAUkvs4dl0V/uJvdXLiiV+ut++n7YLSfxPfMMG54ChzB3WIesVWB2i82bw1AR6fJR7C4VsfYiv6u/k3A9nEgP4zXke8DiYHyAOMK+QxPIgnZ9GqSHr1itQJ8DK2fTerDQ+S/bHRXQJaHSCwNIZ2Xh+7+S3VAmwNMBA/tuPZtErgKquUmdMWIFlRURvdamRNEXGwIWrlP47pTMzLiunxghGMwTLvcTWlHAp77s4QNSrYMQtss6ZMgWqCm5cHoDHO1nbk6K8zEN8+3zatv2Hn1b59EqJZdxmYUERg9P9KwpIiAOTdWUWBXuLzB/vZG3P1Un4PNp2d1MbmyD45TWCxuCsQm0x56bHGHFYEZwxok7toAA9Sfw3hCcoL/NOwi9QO5wmWO1j4JEgZxTkodmcWRGkf3pcX0r8xoAaBixKu4U5/xwndM+0tpAvS6mP+PZK2nb1UBvPEKwKMLDvPj4ESGc55lGy303sdJKQdZB2rkMdctAB/4gzN+/Q2ENNd4LyUi/xN+bTtquX2thk5nk4wI3gAF+OMNcA1nFQDfK+BY5GqbkwWabTY5QZhXWlnNx1ntrY1Rz87fuvw29m/Sn8J+PUGAFj5T19baA1IspuBZp7cx1x4SwG1cEf+lgRSROs8jGwb+Ht4QB/GSSsAhYano39LWIBxNEIbP14hPDuiyS2VtJuHXQlKKvxM/jiXDq/D/xPlwifGMkJZB2NIoKpr69nxeiZxLHicFSFVWfGqBidIP3LSjrWltD94CyufF/4kQgPuVz2Lz93+dDRa9eu5QQ8Hg8/iXee+Dy4CKMs7xqn4nwKz9IirhQqmVuB42m8ey+x7LMoD6iAON782eChhqmRuXfvXgKBAKqKqtI0/8nNKrQI4BVYXkzHgzPpC88gWuHL/caXrhLoGiN0apSKr0ZZRBZM7q2w5ZnLR1oAnHOMjY0hra2tFBQUYIyZmstvVT1Z6eDlAuEVq7merxmwueNPDXy9PvybjKP5mctHLk4/XTKZRJqbm/H7/VNw1VyEMYbW4FN3WNWnnchKoy5sHeVGBRX6VWi3ymFx7r11Ix8MTX/y5C2RSPC/AQB61erowbpqSwAAAABJRU5ErkJggg=="
        },
        "$:/plugins/felixhayashi/vis/img/network/cross.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/cross.png",
            "type": "image/png",
            "text": "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/GMzLdsAADvGaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0wMi0xNFQxMjowNToxNyswMTowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo5ODJjNjBiMC1lM2YzLTA5NDAtODI1NC0xYmU5YjVhNGUxODM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjIxODYxNmM2LTM1MWMtNDI0OS04YWFkLWJkZDQ2ZTczNWE0NDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0xNFQxMTo1NTozNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjc8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+NzwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSJ3Ij8+cZUZMwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAA2ElEQVR42gDLADT/AS0tLUQFBQUVFxcXtPHx8fPl5eUNCAgITCkpKesEHx8fGgYGBjH+/v4a+Pj4qgQEBFU6OjodMTExzwQUFBSvEBAQEfX19SD19fVqNDQ0CElJSd/9/f2vAwEBAfrn5+fkBwcHLRYWFgsXFxfz29vbo9LS0uwDDQ0NDfPz81orKysXIyMj+ODg4Avh4eEa/f391gMkJCRYPz8/KUhISOMCAgKh8fHxHRsbGx4UFBQQBDk5OeY7Ozv7CAgItPb29vMEBASaJSUlTQ0NDesDAEwpT0Ko8Ri2AAAAAElFTkSuQmCC"
        },
        "$:/plugins/felixhayashi/vis/img/network/cross2.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/cross2.png",
            "type": "image/png",
            "text": "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/GMzLdsAADoRaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTQtMDItMTRUMTE6NTY6MTUrMDE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTAyLTE0VDExOjU2OjE1KzAxOjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0wMi0xNFQxMTo1NjoxNSswMTowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6OWIwNjRhODctYWNlZi1jMjQ5LTg5MWUtNDAxOTVmMWJjMTNkPC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjlmYTI2M2QyLTljOWMtNWY0OC1iYjNiLThmYmQ5NmI5ZTBhMjwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjlmYTI2M2QyLTljOWMtNWY0OC1iYjNiLThmYmQ5NmI5ZTBhMjwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo5ZmEyNjNkMi05YzljLTVmNDgtYmIzYi04ZmJkOTZiOWUwYTI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMTRUMTE6NTY6MTUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjliMDY0YTg3LWFjZWYtYzI0OS04OTFlLTQwMTk1ZjFiYzEzZDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0xNFQxMTo1NjoxNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8cGhvdG9zaG9wOklDQ1Byb2ZpbGU+c1JHQiBJRUM2MTk2Ni0yLjE8L3Bob3Rvc2hvcDpJQ0NQcm9maWxlPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj41PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjU8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PvQ0yV0AAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAHZJREFUeNoAaQCW/wE1NTWrERER3+3t7Xbp6emKOTk5IgQtLS3kBAQEdfLy8ipOTk5LQ0NDkAE0NDQAEhISxiEhITkTExPH9PT0OgMGBgaPMzMzVS8vL7XU1NRC7+/vEQNfX19lUFBQtfPz82EEBAQMNTU1HwMAMI4nIAoe9RQAAAAASUVORK5CYII="
        },
        "$:/plugins/felixhayashi/vis/img/network/deleteIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/deleteIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDowNmE3NWYwMy04MDdhLWUzNGYtYjk1Zi1jZGU2MjM0Mzg4OGY8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjA2YTc1ZjAzLTgwN2EtZTM0Zi1iOTVmLWNkZTYyMzQzODg4Zjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4aYJzYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYGSURBVHjalJZ7UJTnFcZ/73m/72PdJY1RbhoQp6lkXRAvmIYxdCUadLVOozPNtGObap1JsKipjiShbdoRbeKEiQHpQK3xj0xa03aamTbaTGyAYV1QGeqFi+JyiZFLAlmESBkWRmS3fyzslGkmnZ5/v/M873Oe75zzvqqoqAibzQaAiKCUAkApRdHIK/NFsx2NR91nOSILADDoJyzNaM4xxbtvPHh0iC+JiYkJ1OHDh4mJiUEpFSXPv/ziPC28TIiXDCOSrAClQDSEpsCwJPIhrEBRQpiSytXlQwDhcBilFPfu3UMVFxdjt9ujFTzfcLBADCoEEAFr1ZbrrNjch2vtEImPBgHob7fTcWE+bVXJNJ/NiFQlEGLvieXHKmYqGB8fRx05cgSbzYaIsPvywV8pKFaA7fGtLTzz61YWpo/xVTHQbufsq5lcez9zWuWhk5mvFwMEg0H0+vXrMU2Tn1wp3CtCiQ5DjGd3A/m/v8IDCZP8r4iNmyRrWx/j/5qktykZpXKzAjVDVxPzGqemptDr1q1jX3NRnIJarcDKK2hgR2ULXRfncv7UYv7xpovhnhiW5Mz+kefeSKO6LJ1A1xzEuk/Ojm4mRibpuZaMZW3OCtRUND60NmiICCIUShisx7a2sLMiQn4s77uEQgIabnqdfHIlgT1/qQeg8vs5dHhdCNB1wYn3RIiC995j26stjAbsNH+YiZJCESnS1Y/XxIXu8r4YIPv/VkVs3CTnTy2ms34xro1+sp9po6sxlTu34ultmsPVvy6is86FCHgO+DDs49zpjufBpCG+seYOC9OHaTidieicb9ouVAhKtouAseI710ma7pLuqwmgYfHqAFt+6WdLoQ/LBl11Lm7VudAa8vb72PCin9TlAWIsGGhLACD+kSAZnusYBii1XQAPYWDllt6ov2lrBkDBR2+6Ofuak2//3M+G/T4wAAPW7fPhKfRTVeqk9qQbFKRmDUTxS3N7QYGYmwzCkqklBGlPDEcTNv+sg9tNCbTXuvBWujE0bHrZj9JE1B/wU1Pm5PwJN6YBS9a2kVvQEcWnrh5GTFD3lxkYkqRMgYQlwVldUvDnen73LHTUuqitdKM0eAr9AFQfd1J/yo2aJn+2sn4Wdn5qEFODJskgBIjx5T0uCrQA08pnIjS9PERDjPnfOKXAMEBECUoGEIHBj+2zkt76UQ6dXheGAev3+cg74Kf6uJPqcicbfuond7cPy4SOiy7+tD9nFvZurx00KOk3CNEC+mE+vjSPBc7IWqgqTaPT60IMcO/xsXGa3HfKjRgRdbl7/KDg0jtubje6aHj7c7J3dgLQ2zoPwwQ91SooOQdAW1VKVMHty0kA5Bb48BycJn/LjWFGbLv4thvvb53kFvjJ+XEdWkPfjQVR/CcNKYgGMc8JWt5Fa2j+MIPPuyI2pa4IoHSkt6vLIuRaQ9q32khzt4GCxtNu6k46GeiIR2lIfDQQsafPzq1LGRGL9Gk9d+vrwewvfHPQOoexQVjxdB/auk/zmaUMdsfz6bVUtIalT7bxveP1ZHh6GPDPYeSzeD69kcpIfxymFWLNrka+ljhBTWkWwz2JiJT84YHnz2iPx0P20PkmRF5i6HYiwZFJsn/YzdezbzE3cQibY5xV266z6RfXohakb+xB9CjanCD9qTbW7Grk4WV38VZm0l6dhQiEw9taHSuDqrS0FIfDwXM3X9mHMsvRAk/sauDpQy38P+GtzOTGB9mEpkD0C2dS8n8zOjqK9ng8WJZFU+JTjasGvaCNXPpvJBPoMlm0OoDNMfWVxONfWNSUPUZ7TUQ56tCZlPwSgMnJSVRpaSmxsbFE1raw82ZxAZZRQUiBYUKGp5UlOX2krBzmoUVjiIKhHge9rfPo+Wcy3ZeXIYASgL1/X5RfMXMvj46OosrLy7HZbGitUUohIuzoem0RofALaOsghgWGjky0MiJTL8b0lOvI8hN1DKXKP0jd3TNTWDgcJhgMoo4ePYrD4Yi+KmaeLlprnrtXFo9h/AAlG1AqE8yFmBrC+jO0bgH9EVpO/1F2Dc5g//OAsbEx/j0Af+USsQynL1UAAAAASUVORK5CYII="
        },
        "$:/plugins/felixhayashi/vis/img/network/downArrow.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/downArrow.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/editIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/editIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDozOWNhNzE5ZC03YzNlLTUyNGEtYmY1NS03NGVmMmM1MzE0YTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjM5Y2E3MTlkLTdjM2UtNTI0YS1iZjU1LTc0ZWYyYzUzMTRhNzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ykninAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYpSURBVHjafFZtTFvnFX7Oea+NudiY2Hwam4CBlgQwXdKREDKUoYg0jbRJ29RJ2VZ1mjRFUxSpA3VTfkzJfkQbS7spU6rtx5Z2UtppScjaHxvLuiatWi2jLEoMIUDCh23g2gbj7+tPuPvhOurawPl1dc99n+c55z33fV46ceIEZFkGADAziAgAQERoe/9ZK4GPM/AcgbsIXAcABCgMvkfAqAa89eDoJyF8LogIqqqChoaGYDAYHr8kItS8uc8iIH6iAa9IkAo5EAQX8pqmgUVBCBggYFgDhv0/GAsBgKZpICJkMhnQ4OAgZFkGEYGZUXmp+0cS+CKBwWA0DVRPOg5Zl2q6zaHyJlnVAMQXVTkwHrUqH0Xsvn+tdQAAMQDgpPLS2MViFY8rkGUZzIzaS/t/xqCzGggtz9e697zsnKhoLUtim4jOq/LE6x7X0nsh16dEZ5a/O3a2SCAOHjwInU6Hujd6ThJ4mCDQ+b2G232v7v6vwarPbQn8MGlMr+X0kpE3Wr5Zt5hL5HPhqYSdQIfKJ+yhxDPKWC6Xg+jt7UXD5b5KBt1kCHS85Ljd8/On3NupfnhFaZj4rWff1B98B1R/hnUmKd36bdtCNl4g0en4edNE/cXwLq8qMTMIPAQwmo/WuHvObA8+9c58k/dKtD0TyZWXN5YGA7ej7epKxspM//7SoNOdWc/Jyq2wiwhDzPxT8cP0jys3VMM7OmL0/77zn4Ydui3b8uiK0jD7RrA77c9Wd57cefPpF+2T6bWsFPWkaiPTCWvTsZpHFU+XrS+8G3AR08F6X+1FJvBxQQzHQOWk2SmrW4FPX/U2LVwPuDZj+fJKl2khPpeyAqA9rzR/YqwuiWXX8taN/CabGkrVuq9YJlkQQDjOAJ5jAhz9Vt9W4N5/rNp8I+vtMV/aZm4zLnUNNt0urdYnF68HWoJj4Wo1mLGUNRr8LEgDgNqeCh8xQIKOsgC7iAjVe83rT9zQa8uNM28u70kspessu8q8zq/V3NcZpVzb9+0zmVhOvvvrhaMVzrJg0zeq7xMVCCwdpnWSGBqjUyJwLTFgbvxie3w31uoWR1Y74r60rdxZqrR8q85t2W2MGCp12bm/KC3hyaSTiMhxuGrKcahqpbjOaDOoEhOEoFqJQCCJvqA85I6bfTdDjQlf2lbxVNlS6wt19yy7jRHZZlDnrinNj/6sHMhnNw2Ogco7O79e5fm/xQywRBBCEAuwn4gQ96bkYj4Vyuq9N1Z3Bj4Od5bs0MXt/dZZ21ctiqFan174q985P+Lfp+U1g7XDON/1ctP458WlVjLyJhOISZE0wM0S1QfuRC3lTjkJAKKEtNC9eIOhSh9xHLZOJRZTFuXDsEoStLkR/768ummsaJG9Pb9oe+9J+xaeSVokiQDSJphAo5uaBuWjiKP4QTqS1cUWU7ayesN66wu22frD1vmVW6GW6T8u9eVjGyZzs+w78Nqu0a2mbvVu1KEJQAgeZRL0liQYyx+GOmKeQpu0rMYsAJPNEFGD2dLodLIy6c9Ys7G8yeSUl3tf2/X3rcBVJSOv34l3sCBogi7z1LH/rBHjl4IJ93/ncQFAnjeImJD0Z8zuCwu9q3djDXqTlAKID5xv+9t2R8n8VcUFBljQ8Gyfe40BYBM4DwDLt8Kue79ZcFkbzfEdbUbv+oN4c9KTtsfm1MbYQqqh+2zrVZYKs/7Ef+byimt1POYiJhDhPBFBIiIEXhxfs7/dfYoIF+auBfYTE/pebx/V8hqBP2ODvD34yvuh/WCAmU75Bx6sIgaI/v5+6PV6JLqUsYr7dpDAoehs0h73pHTWrvKgThYbRSt9UmSjef3MpaUvBz4O72UmADgTOPJguGiZor+/HyUlJWBmJFz+D8xTtlUiOpbwpmrmrweeSXrT+g11k4SBN3RGKUcAVCVdFhyP1nreDbY//NPyEXUlU/Pp4XYycGT6V0Ux2WwWdO7cOZSWlkII8diX7SPPNgDaKdbxoNAxwATBAEkEEgSWCEQAqPAMwqvMdCEwMO0tVqZpWsGTT58+DaPR+PhGIYQAAAgh0P7B3ioW/B0iGiCGiwXbCuOHFSJys6AbYFye2T+xWhT3WYJEIoH/DQBMw3kes8OJPgAAAABJRU5ErkJggg=="
        },
        "$:/plugins/felixhayashi/vis/img/network/leftArrow.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/leftArrow.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/minus.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/minus.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/plus.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/plus.png",
            "type": "image/png",
            "text": "iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQffARwOJQd0Gq2DAAAFq0lEQVRIx61XbUxTZxR+znmvMQY7xJT2XieI1jmoHwlIY1CG4KIExuSHITVqYtwM/wgSEI1hNrhfw5mpP9Q0G/tl+Gd0XzFkNoCIaex0RtJSPwZto7RFPooRMFm4++G9BGuBYnaS5va+99zzvOc5H++5hCTE4XCQz+f7TAjxhaqqO5h5PYA0ACCiUSJ6CqAHwG8Wi+V2c3OzupBNmu9hcXExm83mY0R0johA9FY90ZWZZ79aHwgEznd0dEwvGthutx8B0MrMICKsWrVq0Gq1Bjdu3BjJysqKpaamvgGAWCy2dGBgINXv95v7+voyBwcHFWbG9PQ0iOir1tbWn5MG3r9//xkA3xARtmzZ4t+zZ483Ly9vKJmwPHz4MN3lclm9Xu+nGkvfOp3O0/F6IgHoeQCNRITdu3e7a2pq3IqiTCBJkWV5oqCgIPD69et/A4HAaiLaabPZ0jwez805Pbbb7d8xcyMAHDhw4M+Kiop/4g37fL6VV69eLQyHwzIRQZbl8MGDB7uzs7NH4nXb29st169f/1y7PXv58uXG9zy22+1HiKiFmXH48OH28vLy/kQeXbx4cXckEpGZGUIITExMLA8EAiuLi4v98boWi2U0JSVl2Ov1WoQQO2w2W/DevXt/AwADQFVVlWDmVmZGWVlZT2lp6cBcVEajUZmZ4XQ6nVeuXHESEaLRqDxPZQzs2rWrR9toa1VVlZgBFkLUEhE2b97sP3ToUO+89RdXOkKI+FJ6T/bt29drtVr7iAiKotQCADscDmLmcwBQWlrqXbDwPwAYAIqKirxCCEiSdM7hcBA/fvy4CAAyMjIGc3NzFyyZREDJAOfk5LxUFGWQmTE+Pl7ERFRORMjJyQkmUy7xHkuSlBSwlmxBZsaSJUvKJSLargFHZpdMW1tbYTQalXUg3fjs//q9qqo4ceJENQCoqjqzbjKZwpWVld0Wi2UEANatWxdxu90gogImok+ICFlZWTHdWFtbW+HQ0JCsgyT6xTOgqiqICJIkQZIkCCEwPDws37hxo1DXzcjIiGkteINERGnMDL33AkAkEpGFELh06ZJzIfpaWlrm1Dl9+nT12NjYTKkZDIY32qbTJP0QiE+W+LX/S3S2JFVVR5nZHIvFlppMpkkAUBQlHI1G5ZqamurZ9M5OLN3TU6dOVSeKu341Go1hff3Vq1dLtWejzMxPmBnBYDB11kHRLctyeK7YSpL0Dkh84ulnt8lkCldUVHTrui9evEjVnj2WmPkuERU+efLEnJ+fHwaADRs2jDQ1Nf2SiKqTJ09WJ6LuzJkzC+ZDKBQyayG8y0T0OwD4/f7MxcQokccLSTAYzBRCAMAfvHr16i4iQiQSUR49emRMxsBsqpPtXE+fPjWOjIwozIyioqLb3NzcrBJRPQB0dHRYP8TjZOT+/ftWLf71JSUl029TbHT0gkZ39rVr1zYtBpiIoNE3p7hcrk39/f3ZADA1NXVhZhDwer2qzWYLEVFlMBjMMBgMLzMzM2OJjPT29n48NTW1vLOzc2tXV9dWZkZ6eno4Pz/fn0j/wYMHa+7cuVOibfhoU1PTX+9MIB6P58G2bdtSiGhHX1/f+rnA09PTh54/f75ycnJyuRACRqMxXFZW1r1ixYrJRKAul6tUK6GzjY2NLXNOmbW1teeJqJaZsXPnzp69e/f2fkiH6uzs3OTxeLZro+6FhoaGY/NOmW63+2ZBQUGKEGJHKBTKCIVCy5ctWzZhNBqTmjSfPXuWfuvWLZvP58vV6D1bX19fn/RAf/z48a8B/KjXqdlsHrRYLIG1a9dGFEUZNxgMb/Q2ODQ09FEgEDCHQqE1Y2Njit65iOhoXV3dT4v+hHE4HDw5OVknhPher10hxDuZPEfLbMjLy/uhpKRk8Z8w8RuYnp4uJKIviWg7M1uYOU0DGiWiZ8zcA+BXm83WPR+gLv8BUhzshlEbZ/0AAAAASUVORK5CYII="
        },
        "$:/plugins/felixhayashi/vis/img/network/rightArrow.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/rightArrow.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/upArrow.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/upArrow.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/zoomExtends.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/zoomExtends.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/timeline/delete.png": {
            "title": "$:/plugins/felixhayashi/vis/img/timeline/delete.png",
            "type": "image/png",
            "text": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAl2cEFnAAAAEAAAABAAXMatwwAAAVRJREFUOMt108FKG1EUBuBvYtxbRGwxiGBXeYCW0mVpDSKVvIJ0F/syJsFdn6GCkaZ9gro3G1u0ILQgheJKRUwXPQNnxvTAcGf+c/7/nPvfO8UEKLCFJg5w31aNqGtgG3c4xLSZyP0QgI8Tpu0quQhyPwTgsBnkAVYD3MM9DibVId5GbiW+B+VIt7hJha1IdhPWDayVsBvcFtHlDYZ4mgou8D7e+zXyN/TwuUhjbkSXLHIZ61KNvItxaYyayBDrZsf36DyGdilQE+ngA57UyD+xg08luTSxHvP/wRuRewDm7uV9WJ4hsBy5rczJJm7G/tcS6VesjxN2Hj4c5S10Qj2Tz/AunrOEr0VtB+Z6vMJ+zfkfcVQjnMbRvcRC5B/hBU4auMbVjBFHCRsFdp6wK1yXHjz37xItRuejfFQ1nwb4HXVfs4nPYsQv0p+oKlLgNf7gGP4Cw4ZUK7kMJVEAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDExLTA1LTE2VDExOjM1OjIxKzAyOjAw9uVF5gAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxMS0wNS0xNlQxMTozNToyMSswMjowMIe4/VoAAAAASUVORK5CYII="
        },
        "$:/plugins/felixhayashi/vis/readme": {
            "title": "$:/plugins/felixhayashi/vis/readme",
            "text": "! TW5-Vis.js\n\nA tiddlywiki plugin for the vis.js library.\n\n---\n\n! Notes on Copyright\n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n1. BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n2. Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! The **vis.js** library\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n1. Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n2. MIT License (MIT)\n"
        },
        "$:/plugins/felixhayashi/vis/vis.css": {
            "title": "$:/plugins/felixhayashi/vis/vis.css",
            "type": "text/vnd.tiddlywiki",
            "tags": "$:/tags/Stylesheet",
            "text": "\\rules except list\n\n\\define datauri(title)\n<$macrocall $name=\"makedatauri\" type={{$title$!!type}} text={{$title$}}/>\n\\end\n\n.vis .overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-active{box-shadow:0 0 10px #86d5f8}.vis [class*=\"span\"]{min-height:0;width:auto}div.vis-configuration{position:relative;display:block;float:left;font-size:12px}div.vis-configuration-wrapper{display:block;width:700px}div.vis-configuration-wrapper::after{clear:both;content:\"\";display:block}div.vis-configuration.vis-config-option-container{display:block;width:495px;background-color:#fff;border:2px solid #f7f8fa;border-radius:4px;margin-top:20px;left:10px;padding-left:5px}div.vis-configuration.vis-config-button{display:block;width:495px;height:25px;vertical-align:middle;line-height:25px;background-color:#f7f8fa;border:2px solid #ceced0;border-radius:4px;margin-top:20px;left:10px;padding-left:5px;cursor:pointer;margin-bottom:30px}div.vis-configuration.vis-config-button.hover{background-color:#4588e6;border:2px solid #214373;color:#fff}div.vis-configuration.vis-config-item{display:block;float:left;width:495px;height:25px;vertical-align:middle;line-height:25px}div.vis-configuration.vis-config-item.vis-config-s2{left:10px;background-color:#f7f8fa;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s3{left:20px;background-color:#e4e9f0;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s4{left:30px;background-color:#cfd8e6;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-header{font-size:18px;font-weight:bold}div.vis-configuration.vis-config-label{width:120px;height:25px;line-height:25px}div.vis-configuration.vis-config-label.vis-config-s3{width:110px}div.vis-configuration.vis-config-label.vis-config-s4{width:100px}div.vis-configuration.vis-config-colorBlock{top:1px;width:30px;height:19px;border:1px solid #444;border-radius:2px;padding:0;margin:0;cursor:pointer}input.vis-configuration.vis-config-checkbox{left:-5px}input.vis-configuration.vis-config-rangeinput{position:relative;top:-5px;width:60px;padding:1px;margin:0;pointer-events:none}input.vis-configuration.vis-config-range{-webkit-appearance:none;border:0 solid white;background-color:rgba(0,0,0,0);width:300px;height:20px}input.vis-configuration.vis-config-range::-webkit-slider-runnable-track{width:300px;height:5px;background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(to bottom,#dedede 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dedede',endColorstr='#c8c8c8',GradientType=0);border:1px solid #999;box-shadow:#aaa 0 0 3px 0;border-radius:3px}input.vis-configuration.vis-config-range::-webkit-slider-thumb{-webkit-appearance:none;border:1px solid #14334b;height:17px;width:17px;border-radius:50%;background:#3876c2;background:-moz-linear-gradient(top,#3876c2 0,#385380 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#3876c2),color-stop(100%,#385380));background:-webkit-linear-gradient(top,#3876c2 0,#385380 100%);background:-o-linear-gradient(top,#3876c2 0,#385380 100%);background:-ms-linear-gradient(top,#3876c2 0,#385380 100%);background:linear-gradient(to bottom,#3876c2 0,#385380 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3876c2',endColorstr='#385380',GradientType=0);box-shadow:#111927 0 0 1px 0;margin-top:-7px}input.vis-configuration.vis-config-range:focus{outline:0}input.vis-configuration.vis-config-range:focus::-webkit-slider-runnable-track{background:#9d9d9d;background:-moz-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#9d9d9d),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-o-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:linear-gradient(to bottom,#9d9d9d 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#9d9d9d',endColorstr='#c8c8c8',GradientType=0)}input.vis-configuration.vis-config-range::-moz-range-track{width:300px;height:10px;background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(to bottom,#dedede 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dedede',endColorstr='#c8c8c8',GradientType=0);border:1px solid #999;box-shadow:#aaa 0 0 3px 0;border-radius:3px}input.vis-configuration.vis-config-range::-moz-range-thumb{border:0;height:16px;width:16px;border-radius:50%;background:#385380}input.vis-configuration.vis-config-range:-moz-focusring{outline:1px solid white;outline-offset:-1px}input.vis-configuration.vis-config-range::-ms-track{width:300px;height:5px;background:transparent;border-color:transparent;border-width:6px 0;color:transparent}input.vis-configuration.vis-config-range::-ms-fill-lower{background:#777;border-radius:10px}input.vis-configuration.vis-config-range::-ms-fill-upper{background:#ddd;border-radius:10px}input.vis-configuration.vis-config-range::-ms-thumb{border:0;height:16px;width:16px;border-radius:50%;background:#385380}input.vis-configuration.vis-config-range:focus::-ms-fill-lower{background:#888}input.vis-configuration.vis-config-range:focus::-ms-fill-upper{background:#ccc}.vis-configuration-popup{position:absolute;background:rgba(57,76,89,0.85);border:2px solid #f2faff;line-height:30px;height:30px;width:150px;text-align:center;color:#fff;font-size:14px;border-radius:4px;-webkit-transition:opacity .3s ease-in-out;-moz-transition:opacity .3s ease-in-out;transition:opacity .3s ease-in-out}.vis-configuration-popup:after,.vis-configuration-popup:before{left:100%;top:50%;border:solid transparent;content:\" \";height:0;width:0;position:absolute;pointer-events:none}.vis-configuration-popup:after{border-color:rgba(136,183,213,0);border-left-color:rgba(57,76,89,0.85);border-width:8px;margin-top:-8px}.vis-configuration-popup:before{border-color:rgba(194,225,245,0);border-left-color:#f2faff;border-width:12px;margin-top:-12px}div.vis-tooltip{position:absolute;visibility:hidden;padding:5px;white-space:nowrap;font-family:verdana;font-size:14px;color:#000;background-color:#f5f4ed;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #808074;box-shadow:3px 3px 10px rgba(0,0,0,0.2);pointer-events:none;z-index:5}div.vis-color-picker{position:absolute;top:0;left:30px;margin-top:-140px;margin-left:30px;width:310px;height:444px;z-index:1;padding:10px;border-radius:15px;background-color:#fff;display:none;box-shadow:rgba(0,0,0,0.5) 0 0 10px 0}div.vis-color-picker div.vis-arrow{position:absolute;top:147px;left:5px}div.vis-color-picker div.vis-arrow::after,div.vis-color-picker div.vis-arrow::before{right:100%;top:50%;border:solid transparent;content:\" \";height:0;width:0;position:absolute;pointer-events:none}div.vis-color-picker div.vis-arrow:after{border-color:rgba(255,255,255,0);border-right-color:#fff;border-width:30px;margin-top:-30px}div.vis-color-picker div.vis-color{position:absolute;width:289px;height:289px;cursor:pointer}div.vis-color-picker div.vis-brightness{position:absolute;top:313px}div.vis-color-picker div.vis-opacity{position:absolute;top:350px}div.vis-color-picker div.vis-selector{position:absolute;top:137px;left:137px;width:15px;height:15px;border-radius:15px;border:1px solid #fff;background:#4c4c4c;background:-moz-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#4c4c4c),color-stop(12%,#595959),color-stop(25%,#666),color-stop(39%,#474747),color-stop(50%,#2c2c2c),color-stop(51%,#000),color-stop(60%,#111),color-stop(76%,#2b2b2b),color-stop(91%,#1c1c1c),color-stop(100%,#131313));background:-webkit-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-o-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-ms-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:linear-gradient(to bottom,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#4c4c4c',endColorstr='#131313',GradientType=0)}div.vis-color-picker div.vis-new-color{position:absolute;width:140px;height:20px;border:1px solid rgba(0,0,0,0.1);border-radius:5px;top:380px;left:159px;text-align:right;padding-right:2px;font-size:10px;color:rgba(0,0,0,0.4);vertical-align:middle;line-height:20px}div.vis-color-picker div.vis-initial-color{position:absolute;width:140px;height:20px;border:1px solid rgba(0,0,0,0.1);border-radius:5px;top:380px;left:10px;text-align:left;padding-left:2px;font-size:10px;color:rgba(0,0,0,0.4);vertical-align:middle;line-height:20px}div.vis-color-picker div.vis-label{position:absolute;width:300px;left:10px}div.vis-color-picker div.vis-label.vis-brightness{top:300px}div.vis-color-picker div.vis-label.vis-opacity{top:338px}div.vis-color-picker div.vis-button{position:absolute;width:68px;height:25px;border-radius:10px;vertical-align:middle;text-align:center;line-height:25px;top:410px;border:2px solid #d9d9d9;background-color:#f7f7f7;cursor:pointer}div.vis-color-picker div.vis-button.vis-cancel{left:5px}div.vis-color-picker div.vis-button.vis-load{left:82px}div.vis-color-picker div.vis-button.vis-apply{left:159px}div.vis-color-picker div.vis-button.vis-save{left:236px}div.vis-color-picker input.vis-range{width:290px;height:20px}div.vis-network div.vis-manipulation{box-sizing:content-box;border-width:0;border-bottom:1px;border-style:solid;border-color:#d6d9d8;background:#fff;background:-moz-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(48%,#fcfcfc),color-stop(50%,#fafafa),color-stop(100%,#fcfcfc));background:-webkit-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-o-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-ms-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:linear-gradient(to bottom,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#fcfcfc',GradientType=0);padding-top:4px;position:absolute;left:0;top:0;width:100%;height:28px}div.vis-network div.vis-edit-mode{position:absolute;left:0;top:5px;height:30px}div.vis-network div.vis-close{position:absolute;right:0;top:0;width:30px;height:30px;background-position:20px 3px;background-repeat:no-repeat;background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/cross.png\">>);cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-close:hover{opacity:.6}div.vis-network div.vis-manipulation div.vis-button,div.vis-network div.vis-edit-mode div.vis-button{float:left;font-family:verdana;font-size:12px;-moz-border-radius:15px;border-radius:15px;display:inline-block;background-position:0 0;background-repeat:no-repeat;height:24px;margin-left:10px;cursor:pointer;padding:0 8px 0 8px;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-manipulation div.vis-button:hover{box-shadow:1px 1px 8px rgba(0,0,0,0.20)}div.vis-network div.vis-manipulation div.vis-button:active{box-shadow:1px 1px 8px rgba(0,0,0,0.50)}div.vis-network div.vis-manipulation div.vis-button.vis-back{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/backIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-none:hover{box-shadow:1px 1px 8px rgba(0,0,0,0.0);cursor:default}div.vis-network div.vis-manipulation div.vis-button.vis-none:active{box-shadow:1px 1px 8px rgba(0,0,0,0.0)}div.vis-network div.vis-manipulation div.vis-button.vis-none{padding:0}div.vis-network div.vis-manipulation div.notification{margin:2px;font-weight:bold}div.vis-network div.vis-manipulation div.vis-button.vis-add{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-edit,div.vis-network div.vis-edit-mode div.vis-button.vis-edit{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/editIcon.png\">>)}div.vis-network div.vis-edit-mode div.vis-button.vis-edit.vis-edit-mode{background-color:#fcfcfc;border:1px solid #ccc}div.vis-network div.vis-manipulation div.vis-button.vis-connect{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/connectIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-delete{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/deleteIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-label,div.vis-network div.vis-edit-mode div.vis-label{margin:0 0 0 23px;line-height:25px}div.vis-network div.vis-manipulation div.vis-separator-line{float:left;display:inline-block;width:1px;height:21px;background-color:#bdbdbd;margin:0 7px 0 15px}div.vis-network div.vis-navigation div.vis-button{width:34px;height:34px;-moz-border-radius:17px;border-radius:17px;position:absolute;display:inline-block;background-position:2px 2px;background-repeat:no-repeat;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-navigation div.vis-button:hover{box-shadow:0 0 3px 3px rgba(56,207,21,0.30)}div.vis-network div.vis-navigation div.vis-button:active{box-shadow:0 0 1px 3px rgba(56,207,21,0.95)}div.vis-network div.vis-navigation div.vis-button.vis-up{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/upArrow.png\">>);bottom:50px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-down{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/downArrow.png\">>);bottom:10px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-left{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/leftArrow.png\">>);bottom:10px;left:15px}div.vis-network div.vis-navigation div.vis-button.vis-right{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/rightArrow.png\">>);bottom:10px;left:95px}div.vis-network div.vis-navigation div.vis-button.vis-zoomIn{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/plus.png\">>);bottom:10px;right:15px}div.vis-network div.vis-navigation div.vis-button.vis-zoomOut{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/minus.png\">>);bottom:10px;right:55px}div.vis-network div.vis-navigation div.vis-button.vis-zoomExtends{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/zoomExtends.png\">>);bottom:50px;right:15px}.vis-current-time{background-color:#ff7f6e;width:2px;z-index:1;pointer-events:none}.vis-rolling-mode-btn{height:40px;width:40px;position:absolute;top:7px;right:20px;border-radius:50%;font-size:28px;cursor:pointer;opacity:.8;color:white;font-weight:bold;text-align:center;background:#3876c2}.vis-rolling-mode-btn:before{content:\"\\26F6\"}.vis-rolling-mode-btn:hover{opacity:1}.vis-custom-time{background-color:#6e94ff;width:2px;cursor:move;z-index:1}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-horizontal{position:absolute;width:100%;height:0;border-bottom:1px solid}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-minor{border-color:#e5e5e5}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-major{border-color:#bfbfbf}.vis-data-axis .vis-y-axis.vis-major{width:100%;position:absolute;color:#4d4d4d;white-space:nowrap}.vis-data-axis .vis-y-axis.vis-major.vis-measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-minor{position:absolute;width:100%;color:#bebebe;white-space:nowrap}.vis-data-axis .vis-y-axis.vis-minor.vis-measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-title{position:absolute;color:#4d4d4d;white-space:nowrap;bottom:20px;text-align:center}.vis-data-axis .vis-y-axis.vis-title.vis-measure{padding:0;margin:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-title.vis-left{bottom:0;-webkit-transform-origin:left top;-moz-transform-origin:left top;-ms-transform-origin:left top;-o-transform-origin:left top;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.vis-data-axis .vis-y-axis.vis-title.vis-right{bottom:0;-webkit-transform-origin:right bottom;-moz-transform-origin:right bottom;-ms-transform-origin:right bottom;-o-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.vis-legend{background-color:rgba(247,252,255,0.65);padding:5px;border:1px solid #b3b3b3;box-shadow:2px 2px 10px rgba(154,154,154,0.55)}.vis-legend-text{white-space:nowrap;display:inline-block}.vis-item{position:absolute;color:#1a1a1a;border-color:#97b0f8;border-width:1px;background-color:#d5ddf6;display:inline-block;z-index:1}.vis-item.vis-selected{border-color:#ffc200;background-color:#fff785;z-index:2}.vis-editable.vis-selected{cursor:move}.vis-item.vis-point.vis-selected{background-color:#fff785}.vis-item.vis-box{text-align:center;border-style:solid;border-radius:2px}.vis-item.vis-point{background:0}.vis-item.vis-dot{position:absolute;padding:0;border-width:4px;border-style:solid;border-radius:4px}.vis-item.vis-range{border-style:solid;border-radius:2px;box-sizing:border-box}.vis-item.vis-background{border:0;background-color:rgba(213,221,246,0.4);box-sizing:border-box;padding:0;margin:0}.vis-item .vis-item-overflow{position:relative;width:100%;height:100%;padding:0;margin:0;overflow:hidden}.vis-item-visible-frame{white-space:nowrap}.vis-item.vis-range .vis-item-content{position:relative;display:inline-block}.vis-item.vis-background .vis-item-content{position:absolute;display:inline-block}.vis-item.vis-line{padding:0;position:absolute;width:0;border-left-width:1px;border-left-style:solid}.vis-item .vis-item-content{white-space:nowrap;box-sizing:border-box;padding:5px}.vis-item .vis-onUpdateTime-tooltip{position:absolute;background:#4f81bd;color:white;width:200px;text-align:center;white-space:nowrap;padding:5px;border-radius:1px;transition:.4s;-o-transition:.4s;-moz-transition:.4s;-webkit-transition:.4s}.vis-item .vis-delete,.vis-item .vis-delete-rtl{position:absolute;top:0;width:24px;height:24px;box-sizing:border-box;padding:0 5px;cursor:pointer;-webkit-transition:background .2s linear;-moz-transition:background .2s linear;-ms-transition:background .2s linear;-o-transition:background .2s linear;transition:background .2s linear}.vis-item .vis-delete{right:-24px}.vis-item .vis-delete-rtl{left:-24px}.vis-item .vis-delete:after,.vis-item .vis-delete-rtl:after{content:\"\\00D7\";color:red;font-family:arial,sans-serif;font-size:22px;font-weight:bold;-webkit-transition:color .2s linear;-moz-transition:color .2s linear;-ms-transition:color .2s linear;-o-transition:color .2s linear;transition:color .2s linear}.vis-item .vis-delete:hover,.vis-item .vis-delete-rtl:hover{background:red}.vis-item .vis-delete:hover:after,.vis-item .vis-delete-rtl:hover:after{color:white}.vis-item .vis-drag-center{position:absolute;width:100%;height:100%;top:0;left:0;cursor:move}.vis-item.vis-range .vis-drag-left{position:absolute;width:24px;max-width:20%;min-width:2px;height:100%;top:0;left:-4px;cursor:w-resize}.vis-item.vis-range .vis-drag-right{position:absolute;width:24px;max-width:20%;min-width:2px;height:100%;top:0;right:-4px;cursor:e-resize}.vis-range.vis-item.vis-readonly .vis-drag-left,.vis-range.vis-item.vis-readonly .vis-drag-right{cursor:auto}.vis-itemset{position:relative;padding:0;margin:0;box-sizing:border-box}.vis-itemset .vis-background,.vis-itemset .vis-foreground{position:absolute;width:100%;height:100%;overflow:visible}.vis-axis{position:absolute;width:100%;height:0;left:0;z-index:1}.vis-foreground .vis-group{position:relative;box-sizing:border-box;border-bottom:1px solid #bfbfbf}.vis-foreground .vis-group:last-child{border-bottom:0}.vis-nesting-group{cursor:pointer}.vis-nested-group{background:#f5f5f5}.vis-label.vis-nesting-group.expanded:before{content:\"\\25BC\"}.vis-label.vis-nesting-group.collapsed-rtl:before{content:\"\\25C0\"}.vis-label.vis-nesting-group.collapsed:before{content:\"\\25B6\"}.vis-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-labelset{position:relative;overflow:hidden;box-sizing:border-box}.vis-labelset .vis-label{position:relative;left:0;top:0;width:100%;color:#4d4d4d;box-sizing:border-box}.vis-labelset .vis-label{border-bottom:1px solid #bfbfbf}.vis-labelset .vis-label.draggable{cursor:pointer}.vis-labelset .vis-label:last-child{border-bottom:0}.vis-labelset .vis-label .vis-inner{display:inline-block;padding:5px}.vis-labelset .vis-label .vis-inner.vis-hidden{padding:0}.vis-panel{position:absolute;padding:0;margin:0;box-sizing:border-box}.vis-panel.vis-center,.vis-panel.vis-left,.vis-panel.vis-right,.vis-panel.vis-top,.vis-panel.vis-bottom{border:1px #bfbfbf}.vis-panel.vis-center,.vis-panel.vis-left,.vis-panel.vis-right{border-top-style:solid;border-bottom-style:solid;overflow:hidden}.vis-left.vis-panel.vis-vertical-scroll,.vis-right.vis-panel.vis-vertical-scroll{height:100%;overflow-x:hidden;overflow-y:scroll}.vis-left.vis-panel.vis-vertical-scroll{direction:rtl}.vis-left.vis-panel.vis-vertical-scroll .vis-content{direction:ltr}.vis-right.vis-panel.vis-vertical-scroll{direction:ltr}.vis-right.vis-panel.vis-vertical-scroll .vis-content{direction:rtl}.vis-panel.vis-center,.vis-panel.vis-top,.vis-panel.vis-bottom{border-left-style:solid;border-right-style:solid}.vis-background{overflow:hidden}.vis-panel>.vis-content{position:relative}.vis-panel .vis-shadow{position:absolute;width:100%;height:1px;box-shadow:0 0 10px rgba(0,0,0,0.8)}.vis-panel .vis-shadow.vis-top{top:-1px;left:0}.vis-panel .vis-shadow.vis-bottom{bottom:-1px;left:0}.vis-graph-group0{fill:#4f81bd;fill-opacity:0;stroke-width:2px;stroke:#4f81bd}.vis-graph-group1{fill:#f79646;fill-opacity:0;stroke-width:2px;stroke:#f79646}.vis-graph-group2{fill:#8c51cf;fill-opacity:0;stroke-width:2px;stroke:#8c51cf}.vis-graph-group3{fill:#75c841;fill-opacity:0;stroke-width:2px;stroke:#75c841}.vis-graph-group4{fill:#ff0100;fill-opacity:0;stroke-width:2px;stroke:#ff0100}.vis-graph-group5{fill:#37d8e6;fill-opacity:0;stroke-width:2px;stroke:#37d8e6}.vis-graph-group6{fill:#042662;fill-opacity:0;stroke-width:2px;stroke:#042662}.vis-graph-group7{fill:#00ff26;fill-opacity:0;stroke-width:2px;stroke:#00ff26}.vis-graph-group8{fill:#f0f;fill-opacity:0;stroke-width:2px;stroke:#f0f}.vis-graph-group9{fill:#8f3938;fill-opacity:0;stroke-width:2px;stroke:#8f3938}.vis-timeline .vis-fill{fill-opacity:.1;stroke:none}.vis-timeline .vis-bar{fill-opacity:.5;stroke-width:1px}.vis-timeline .vis-point{stroke-width:2px;fill-opacity:1.0}.vis-timeline .vis-legend-background{stroke-width:1px;fill-opacity:.9;fill:#fff;stroke:#c2c2c2}.vis-timeline .vis-outline{stroke-width:1px;fill-opacity:1;fill:#fff;stroke:#e5e5e5}.vis-timeline .vis-icon-fill{fill-opacity:.3;stroke:none}.vis-time-axis{position:relative;overflow:hidden}.vis-time-axis.vis-foreground{top:0;left:0;width:100%}.vis-time-axis.vis-background{position:absolute;top:0;left:0;width:100%;height:100%}.vis-time-axis .vis-text{position:absolute;color:#4d4d4d;padding:3px;overflow:hidden;box-sizing:border-box;white-space:nowrap}.vis-time-axis .vis-text.vis-measure{position:absolute;padding-left:0;padding-right:0;margin-left:0;margin-right:0;visibility:hidden}.vis-time-axis .vis-grid.vis-vertical{position:absolute;border-left:1px solid}.vis-time-axis .vis-grid.vis-vertical-rtl{position:absolute;border-right:1px solid}.vis-time-axis .vis-grid.vis-minor{border-color:#e5e5e5}.vis-time-axis .vis-grid.vis-major{border-color:#bfbfbf}.vis-timeline{position:relative;border:1px solid #bfbfbf;overflow:hidden;padding:0;margin:0;box-sizing:border-box}"
        },
        "$:/plugins/felixhayashi/vis/vis.js": {
            "title": "$:/plugins/felixhayashi/vis/vis.js",
            "text": "/*\\\ntitle: $:/plugins/felixhayashi/vis/vis.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\\*/\n\n/*** TO AVOID STRANGE LIB ERRORS FROM BUBBLING UP *****************/\n\nif($tw.boot.tasks.trapErrors) {\n\n  var defaultHandler = window.onerror;\n  window.onerror = function(errorMsg, url, lineNumber) {\n    \n    if(errorMsg.indexOf(\"NS_ERROR_NOT_AVAILABLE\") !== -1\n       && url == \"$:/plugins/felixhayashi/vis/vis.js\") {\n         \n      var text = \"Strange firefox related vis.js error (see #125)\";\n      console.error(text, arguments);\n      \n    } else if(errorMsg.indexOf(\"Permission denied to access property\") !== -1) {\n      \n      var text = \"Strange firefox related vis.js error (see #163)\";\n      console.error(text, arguments);\n      \n    } else if(defaultHandler) {\n      \n      defaultHandler.apply(this, arguments);\n      \n    }\n    \n  }\n  \n}\n\n/******************************************************************/\n\n/**\n * vis.js\n * https://github.com/almende/vis\n *\n * A dynamic, browser-based visualization library.\n *\n * @version 4.21.0\n * @date    2017-10-12\n *\n * @license\n * Copyright (C) 2011-2017 Almende B.V, http://almende.com\n *\n * Vis.js is dual licensed under both\n *\n * * The Apache 2.0 License\n *   http://www.apache.org/licenses/LICENSE-2.0\n *\n * and\n *\n * * The MIT License\n *   http://opensource.org/licenses/MIT\n *\n * Vis.js may be distributed under either license.\n */\n\"use strict\";(function webpackUniversalModuleDefinition(root,factory){if(typeof exports===\"object\"&&typeof module===\"object\")module.exports=factory();else if(typeof define===\"function\"&&define.amd)define([],factory);else if(typeof exports===\"object\")exports[\"vis\"]=factory();else root[\"vis\"]=factory()})(this,function(){return function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{configurable:false,enumerable:true,get:getter})}};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module[\"default\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\"a\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\"\";return __webpack_require__(__webpack_require__.s=123)}([function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;exports.default=function(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\")}}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _defineProperty=__webpack_require__(169);var _defineProperty2=_interopRequireDefault(_defineProperty);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if(\"value\"in descriptor)descriptor.writable=true;(0,_defineProperty2.default)(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){if(protoProps)defineProperties(Constructor.prototype,protoProps);if(staticProps)defineProperties(Constructor,staticProps);return Constructor}}()},function(module,exports,__webpack_require__){\"use strict\";var _getIterator2=__webpack_require__(77);var _getIterator3=_interopRequireDefault(_getIterator2);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var moment=__webpack_require__(9);var uuid=__webpack_require__(157);exports.isNumber=function(object){return object instanceof Number||typeof object==\"number\"};exports.recursiveDOMDelete=function(DOMobject){if(DOMobject){while(DOMobject.hasChildNodes()===true){exports.recursiveDOMDelete(DOMobject.firstChild);DOMobject.removeChild(DOMobject.firstChild)}}};exports.giveRange=function(min,max,total,value){if(max==min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}};exports.isString=function(object){return object instanceof String||typeof object==\"string\"};exports.isDate=function(object){if(object instanceof Date){return true}else if(exports.isString(object)){var match=ASPDateRegex.exec(object);if(match){return true}else if(!isNaN(Date.parse(object))){return true}}return false};exports.randomUUID=function(){return uuid.v4()};exports.assignAllKeys=function(obj,value){for(var prop in obj){if(obj.hasOwnProperty(prop)){if((0,_typeof3[\"default\"])(obj[prop])!==\"object\"){obj[prop]=value}}}};function copyOrDelete(a,b,prop,allowDeletion){var doDeletion=false;if(allowDeletion===true){doDeletion=b[prop]===null&&a[prop]!==undefined}if(doDeletion){delete a[prop]}else{a[prop]=b[prop]}}exports.fillIfDefined=function(a,b){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;for(var prop in a){if(b[prop]!==undefined){if(b[prop]===null||(0,_typeof3[\"default\"])(b[prop])!==\"object\"){copyOrDelete(a,b,prop,allowDeletion)}else{if((0,_typeof3[\"default\"])(a[prop])===\"object\"){exports.fillIfDefined(a[prop],b[prop],allowDeletion)}}}}};exports.extend=function(a,b){for(var i=1;i<arguments.length;i++){var other=arguments[i];for(var prop in other){if(other.hasOwnProperty(prop)){a[prop]=other[prop]}}}return a};exports.selectiveExtend=function(props,a,b){if(!Array.isArray(props)){throw new Error(\"Array with property names expected as first argument\")}for(var i=2;i<arguments.length;i++){var other=arguments[i];for(var p=0;p<props.length;p++){var prop=props[p];if(other&&other.hasOwnProperty(prop)){a[prop]=other[prop]}}}return a};exports.selectiveDeepExtend=function(props,a,b){var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;if(Array.isArray(b)){throw new TypeError(\"Arrays are not supported by deepExtend\")}for(var p=0;p<props.length;p++){var prop=props[p];if(b.hasOwnProperty(prop)){if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop],false,allowDeletion)}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){throw new TypeError(\"Arrays are not supported by deepExtend\")}else{copyOrDelete(a,b,prop,allowDeletion)}}}return a};exports.selectiveNotDeepExtend=function(propsToExclude,a,b){var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;if(Array.isArray(b)){throw new TypeError(\"Arrays are not supported by deepExtend\")}for(var prop in b){if(!b.hasOwnProperty(prop))continue;if(propsToExclude.indexOf(prop)!==-1)continue;if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop])}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){a[prop]=[];for(var i=0;i<b[prop].length;i++){a[prop].push(b[prop][i])}}else{copyOrDelete(a,b,prop,allowDeletion)}}return a};exports.deepExtend=function(a,b){var protoExtend=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;for(var prop in b){if(b.hasOwnProperty(prop)||protoExtend===true){if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop],protoExtend)}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){a[prop]=[];for(var i=0;i<b[prop].length;i++){a[prop].push(b[prop][i])}}else{copyOrDelete(a,b,prop,allowDeletion)}}}return a};exports.equalArray=function(a,b){if(a.length!=b.length)return false;for(var i=0,len=a.length;i<len;i++){if(a[i]!=b[i])return false}return true};exports.convert=function(object,type){var match;if(object===undefined){return undefined}if(object===null){return null}if(!type){return object}if(!(typeof type===\"string\")&&!(type instanceof String)){throw new Error(\"Type must be a string\")}switch(type){case\"boolean\":case\"Boolean\":return Boolean(object);case\"number\":case\"Number\":if(exports.isString(object)&&!isNaN(Date.parse(object))){return moment(object).valueOf()}else{return Number(object.valueOf())}case\"string\":case\"String\":return String(object);case\"Date\":if(exports.isNumber(object)){return new Date(object)}if(object instanceof Date){return new Date(object.valueOf())}else if(moment.isMoment(object)){return new Date(object.valueOf())}if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return new Date(Number(match[1]))}else{return moment(new Date(object)).toDate()}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type Date\")}case\"Moment\":if(exports.isNumber(object)){return moment(object)}if(object instanceof Date){return moment(object.valueOf())}else if(moment.isMoment(object)){return moment(object)}if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return moment(Number(match[1]))}else{return moment(object)}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type Date\")}case\"ISODate\":if(exports.isNumber(object)){return new Date(object)}else if(object instanceof Date){return object.toISOString()}else if(moment.isMoment(object)){return object.toDate().toISOString()}else if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return new Date(Number(match[1])).toISOString()}else{return moment(object).format()}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type ISODate\")}case\"ASPDate\":if(exports.isNumber(object)){return\"/Date(\"+object+\")/\"}else if(object instanceof Date){return\"/Date(\"+object.valueOf()+\")/\"}else if(exports.isString(object)){match=ASPDateRegex.exec(object);var value;if(match){value=new Date(Number(match[1])).valueOf()}else{value=new Date(object).valueOf()}return\"/Date(\"+value+\")/\"}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type ASPDate\")}default:throw new Error('Unknown type \"'+type+'\"')}};var ASPDateRegex=/^\\/?Date\\((\\-?\\d+)/i;exports.getType=function(object){var type=typeof object===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(object);if(type==\"object\"){if(object===null){return\"null\"}if(object instanceof Boolean){return\"Boolean\"}if(object instanceof Number){return\"Number\"}if(object instanceof String){return\"String\"}if(Array.isArray(object)){return\"Array\"}if(object instanceof Date){return\"Date\"}return\"Object\"}else if(type==\"number\"){return\"Number\"}else if(type==\"boolean\"){return\"Boolean\"}else if(type==\"string\"){return\"String\"}else if(type===undefined){return\"undefined\"}return type};exports.copyAndExtendArray=function(arr,newValue){var newArr=[];for(var i=0;i<arr.length;i++){newArr.push(arr[i])}newArr.push(newValue);return newArr};exports.copyArray=function(arr){var newArr=[];for(var i=0;i<arr.length;i++){newArr.push(arr[i])}return newArr};exports.getAbsoluteLeft=function(elem){return elem.getBoundingClientRect().left};exports.getAbsoluteRight=function(elem){return elem.getBoundingClientRect().right};exports.getAbsoluteTop=function(elem){return elem.getBoundingClientRect().top};exports.addClassName=function(elem,classNames){var classes=elem.className.split(\" \");var newClasses=classNames.split(\" \");classes=classes.concat(newClasses.filter(function(className){return classes.indexOf(className)<0}));elem.className=classes.join(\" \")};exports.removeClassName=function(elem,classNames){var classes=elem.className.split(\" \");var oldClasses=classNames.split(\" \");classes=classes.filter(function(className){return oldClasses.indexOf(className)<0});elem.className=classes.join(\" \")};exports.forEach=function(object,callback){var i,len;if(Array.isArray(object)){for(i=0,len=object.length;i<len;i++){callback(object[i],i,object)}}else{for(i in object){if(object.hasOwnProperty(i)){callback(object[i],i,object)}}}};exports.toArray=function(object){var array=[];for(var prop in object){if(object.hasOwnProperty(prop))array.push(object[prop])}return array};exports.updateProperty=function(object,key,value){if(object[key]!==value){object[key]=value;return true}else{return false}};exports.throttle=function(fn){var scheduled=false;return function throttled(){if(!scheduled){scheduled=true;requestAnimationFrame(function(){scheduled=false;fn()})}}};exports.addEventListener=function(element,action,listener,useCapture){if(element.addEventListener){if(useCapture===undefined)useCapture=false;if(action===\"mousewheel\"&&navigator.userAgent.indexOf(\"Firefox\")>=0){action=\"DOMMouseScroll\"}element.addEventListener(action,listener,useCapture)}else{element.attachEvent(\"on\"+action,listener)}};exports.removeEventListener=function(element,action,listener,useCapture){if(element.removeEventListener){if(useCapture===undefined)useCapture=false;if(action===\"mousewheel\"&&navigator.userAgent.indexOf(\"Firefox\")>=0){action=\"DOMMouseScroll\"}element.removeEventListener(action,listener,useCapture)}else{element.detachEvent(\"on\"+action,listener)}};exports.preventDefault=function(event){if(!event)event=window.event;if(event.preventDefault){event.preventDefault()}else{event.returnValue=false}};exports.getTarget=function(event){if(!event){event=window.event}var target;if(event.target){target=event.target}else if(event.srcElement){target=event.srcElement}if(target.nodeType!=undefined&&target.nodeType==3){target=target.parentNode}return target};exports.hasParent=function(element,parent){var e=element;while(e){if(e===parent){return true}e=e.parentNode}return false};exports.option={};exports.option.asBoolean=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return value!=false}return defaultValue||null};exports.option.asNumber=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return Number(value)||defaultValue||null}return defaultValue||null};exports.option.asString=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return String(value)}return defaultValue||null};exports.option.asSize=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(exports.isString(value)){return value}else if(exports.isNumber(value)){return value+\"px\"}else{return defaultValue||null}};exports.option.asElement=function(value,defaultValue){if(typeof value==\"function\"){value=value()}return value||defaultValue||null};exports.hexToRGB=function(hex){var shorthandRegex=/^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;hex=hex.replace(shorthandRegex,function(m,r,g,b){return r+r+g+g+b+b});var result=/^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);return result?{r:parseInt(result[1],16),g:parseInt(result[2],16),b:parseInt(result[3],16)}:null};exports.overrideOpacity=function(color,opacity){var rgb;if(color.indexOf(\"rgba\")!=-1){return color}else if(color.indexOf(\"rgb\")!=-1){rgb=color.substr(color.indexOf(\"(\")+1).replace(\")\",\"\").split(\",\");return\"rgba(\"+rgb[0]+\",\"+rgb[1]+\",\"+rgb[2]+\",\"+opacity+\")\"}else{rgb=exports.hexToRGB(color);if(rgb==null){return color}else{return\"rgba(\"+rgb.r+\",\"+rgb.g+\",\"+rgb.b+\",\"+opacity+\")\"}}};exports.RGBToHex=function(red,green,blue){return\"#\"+((1<<24)+(red<<16)+(green<<8)+blue).toString(16).slice(1)};exports.parseColor=function(color){var c;if(exports.isString(color)===true){if(exports.isValidRGB(color)===true){var rgb=color.substr(4).substr(0,color.length-5).split(\",\").map(function(value){return parseInt(value)});color=exports.RGBToHex(rgb[0],rgb[1],rgb[2])}if(exports.isValidHex(color)===true){var hsv=exports.hexToHSV(color);var lighterColorHSV={h:hsv.h,s:hsv.s*.8,v:Math.min(1,hsv.v*1.02)};var darkerColorHSV={h:hsv.h,s:Math.min(1,hsv.s*1.25),v:hsv.v*.8};var darkerColorHex=exports.HSVToHex(darkerColorHSV.h,darkerColorHSV.s,darkerColorHSV.v);var lighterColorHex=exports.HSVToHex(lighterColorHSV.h,lighterColorHSV.s,lighterColorHSV.v);c={background:color,border:darkerColorHex,highlight:{background:lighterColorHex,border:darkerColorHex},hover:{background:lighterColorHex,border:darkerColorHex}}}else{c={background:color,border:color,highlight:{background:color,border:color},hover:{background:color,border:color}}}}else{c={};c.background=color.background||undefined;c.border=color.border||undefined;if(exports.isString(color.highlight)){c.highlight={border:color.highlight,background:color.highlight}}else{c.highlight={};c.highlight.background=color.highlight&&color.highlight.background||undefined;c.highlight.border=color.highlight&&color.highlight.border||undefined}if(exports.isString(color.hover)){c.hover={border:color.hover,background:color.hover}}else{c.hover={};c.hover.background=color.hover&&color.hover.background||undefined;c.hover.border=color.hover&&color.hover.border||undefined}}return c};exports.RGBToHSV=function(red,green,blue){red=red/255;green=green/255;blue=blue/255;var minRGB=Math.min(red,Math.min(green,blue));var maxRGB=Math.max(red,Math.max(green,blue));if(minRGB==maxRGB){return{h:0,s:0,v:minRGB}}var d=red==minRGB?green-blue:blue==minRGB?red-green:blue-red;var h=red==minRGB?3:blue==minRGB?1:5;var hue=60*(h-d/(maxRGB-minRGB))/360;var saturation=(maxRGB-minRGB)/maxRGB;var value=maxRGB;return{h:hue,s:saturation,v:value}};var cssUtil={split:function split(cssText){var styles={};cssText.split(\";\").forEach(function(style){if(style.trim()!=\"\"){var parts=style.split(\":\");var key=parts[0].trim();var value=parts[1].trim();styles[key]=value}});return styles},join:function join(styles){return(0,_keys2[\"default\"])(styles).map(function(key){return key+\": \"+styles[key]}).join(\"; \")}};exports.addCssText=function(element,cssText){var currentStyles=cssUtil.split(element.style.cssText);var newStyles=cssUtil.split(cssText);var styles=exports.extend(currentStyles,newStyles);element.style.cssText=cssUtil.join(styles)};exports.removeCssText=function(element,cssText){var styles=cssUtil.split(element.style.cssText);var removeStyles=cssUtil.split(cssText);for(var key in removeStyles){if(removeStyles.hasOwnProperty(key)){delete styles[key]}}element.style.cssText=cssUtil.join(styles)};exports.HSVToRGB=function(h,s,v){var r,g,b;var i=Math.floor(h*6);var f=h*6-i;var p=v*(1-s);var q=v*(1-f*s);var t=v*(1-(1-f)*s);switch(i%6){case 0:r=v,g=t,b=p;break;case 1:r=q,g=v,b=p;break;case 2:r=p,g=v,b=t;break;case 3:r=p,g=q,b=v;break;case 4:r=t,g=p,b=v;break;case 5:r=v,g=p,b=q;break}return{r:Math.floor(r*255),g:Math.floor(g*255),b:Math.floor(b*255)}};exports.HSVToHex=function(h,s,v){var rgb=exports.HSVToRGB(h,s,v);return exports.RGBToHex(rgb.r,rgb.g,rgb.b)};exports.hexToHSV=function(hex){var rgb=exports.hexToRGB(hex);return exports.RGBToHSV(rgb.r,rgb.g,rgb.b)};exports.isValidHex=function(hex){var isOk=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(hex);return isOk};exports.isValidRGB=function(rgb){rgb=rgb.replace(\" \",\"\");var isOk=/rgb\\((\\d{1,3}),(\\d{1,3}),(\\d{1,3})\\)/i.test(rgb);return isOk};exports.isValidRGBA=function(rgba){rgba=rgba.replace(\" \",\"\");var isOk=/rgba\\((\\d{1,3}),(\\d{1,3}),(\\d{1,3}),(.{1,3})\\)/i.test(rgba);return isOk};exports.selectiveBridgeObject=function(fields,referenceObject){if(referenceObject!==null&&(typeof referenceObject===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(referenceObject))===\"object\"){var objectTo=(0,_create2[\"default\"])(referenceObject);for(var i=0;i<fields.length;i++){if(referenceObject.hasOwnProperty(fields[i])){if((0,_typeof3[\"default\"])(referenceObject[fields[i]])==\"object\"){objectTo[fields[i]]=exports.bridgeObject(referenceObject[fields[i]])}}}return objectTo}else{return null}};exports.bridgeObject=function(referenceObject){if(referenceObject!==null&&(typeof referenceObject===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(referenceObject))===\"object\"){var objectTo=(0,_create2[\"default\"])(referenceObject);if(referenceObject instanceof Element){objectTo=referenceObject}else{objectTo=(0,_create2[\"default\"])(referenceObject);for(var i in referenceObject){if(referenceObject.hasOwnProperty(i)){if((0,_typeof3[\"default\"])(referenceObject[i])==\"object\"){objectTo[i]=exports.bridgeObject(referenceObject[i])}}}}return objectTo}else{return null}};exports.insertSort=function(a,compare){for(var i=0;i<a.length;i++){var k=a[i];for(var j=i;j>0&&compare(k,a[j-1])<0;j--){a[j]=a[j-1]}a[j]=k}return a};exports.mergeOptions=function(mergeTarget,options,option){var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var isPresent=function isPresent(obj){return obj!==null&&obj!==undefined};var isObject=function isObject(obj){return obj!==null&&(typeof obj===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(obj))===\"object\"};var isEmpty=function isEmpty(obj){for(var x in obj){if(obj.hasOwnProperty(x))return false}return true};if(!isObject(mergeTarget)){throw new Error(\"Parameter mergeTarget must be an object\")}if(!isObject(options)){throw new Error(\"Parameter options must be an object\")}if(!isPresent(option)){throw new Error(\"Parameter option must have a value\")}if(!isObject(globalOptions)){throw new Error(\"Parameter globalOptions must be an object\")}var doMerge=function doMerge(target,options,option){if(!isObject(target[option])){target[option]={}}var src=options[option];var dst=target[option];for(var prop in src){if(src.hasOwnProperty(prop)){dst[prop]=src[prop]}}};var srcOption=options[option];var globalPassed=isObject(globalOptions)&&!isEmpty(globalOptions);var globalOption=globalPassed?globalOptions[option]:undefined;var globalEnabled=globalOption?globalOption.enabled:undefined;if(srcOption===undefined){return}if(typeof srcOption===\"boolean\"){if(!isObject(mergeTarget[option])){mergeTarget[option]={}}mergeTarget[option].enabled=srcOption;return}if(srcOption===null&&!isObject(mergeTarget[option])){if(isPresent(globalOption)){mergeTarget[option]=(0,_create2[\"default\"])(globalOption)}else{return}}if(!isObject(srcOption)){return}var enabled=true;if(srcOption.enabled!==undefined){enabled=srcOption.enabled}else{if(globalEnabled!==undefined){enabled=globalOption.enabled}}doMerge(mergeTarget,options,option);mergeTarget[option].enabled=enabled};exports.binarySearchCustom=function(orderedItems,comparator,field,field2){var maxIterations=1e4;var iteration=0;var low=0;var high=orderedItems.length-1;while(low<=high&&iteration<maxIterations){var middle=Math.floor((low+high)/2);var item=orderedItems[middle];var value=field2===undefined?item[field]:item[field][field2];var searchResult=comparator(value);if(searchResult==0){return middle}else if(searchResult==-1){low=middle+1}else{high=middle-1}iteration++}return-1};exports.binarySearchValue=function(orderedItems,target,field,sidePreference,comparator){var maxIterations=1e4;var iteration=0;var low=0;var high=orderedItems.length-1;var prevValue,value,nextValue,middle;comparator=comparator!=undefined?comparator:function(a,b){return a==b?0:a<b?-1:1};while(low<=high&&iteration<maxIterations){middle=Math.floor(.5*(high+low));prevValue=orderedItems[Math.max(0,middle-1)][field];value=orderedItems[middle][field];nextValue=orderedItems[Math.min(orderedItems.length-1,middle+1)][field];if(comparator(value,target)==0){return middle}else if(comparator(prevValue,target)<0&&comparator(value,target)>0){return sidePreference==\"before\"?Math.max(0,middle-1):middle}else if(comparator(value,target)<0&&comparator(nextValue,target)>0){return sidePreference==\"before\"?middle:Math.min(orderedItems.length-1,middle+1)}else{if(comparator(value,target)<0){low=middle+1}else{high=middle-1}}iteration++}return-1};exports.easingFunctions={linear:function linear(t){return t},easeInQuad:function easeInQuad(t){return t*t},easeOutQuad:function easeOutQuad(t){return t*(2-t)},easeInOutQuad:function easeInOutQuad(t){return t<.5?2*t*t:-1+(4-2*t)*t},easeInCubic:function easeInCubic(t){return t*t*t},easeOutCubic:function easeOutCubic(t){return--t*t*t+1},easeInOutCubic:function easeInOutCubic(t){return t<.5?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function easeInQuart(t){return t*t*t*t},easeOutQuart:function easeOutQuart(t){return 1- --t*t*t*t},easeInOutQuart:function easeInOutQuart(t){return t<.5?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function easeInQuint(t){return t*t*t*t*t},easeOutQuint:function easeOutQuint(t){return 1+--t*t*t*t*t},easeInOutQuint:function easeInOutQuint(t){return t<.5?16*t*t*t*t*t:1+16*--t*t*t*t*t}};exports.getScrollBarWidth=function(){var inner=document.createElement(\"p\");inner.style.width=\"100%\";inner.style.height=\"200px\";var outer=document.createElement(\"div\");outer.style.position=\"absolute\";outer.style.top=\"0px\";outer.style.left=\"0px\";outer.style.visibility=\"hidden\";outer.style.width=\"200px\";outer.style.height=\"150px\";outer.style.overflow=\"hidden\";outer.appendChild(inner);document.body.appendChild(outer);var w1=inner.offsetWidth;outer.style.overflow=\"scroll\";var w2=inner.offsetWidth;if(w1==w2)w2=outer.clientWidth;document.body.removeChild(outer);return w1-w2};exports.topMost=function(pile,accessors){var candidate=void 0;if(!Array.isArray(accessors)){accessors=[accessors]}var _iteratorNormalCompletion=true;var _didIteratorError=false;var _iteratorError=undefined;try{for(var _iterator=(0,_getIterator3[\"default\"])(pile),_step;!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=true){var member=_step.value;if(member){candidate=member[accessors[0]];for(var i=1;i<accessors.length;i++){if(candidate){candidate=candidate[accessors[i]]}else{continue}}if(typeof candidate!=\"undefined\"){break}}}}catch(err){_didIteratorError=true;_iteratorError=err}finally{try{if(!_iteratorNormalCompletion&&_iterator[\"return\"]){_iterator[\"return\"]()}}finally{if(_didIteratorError){throw _iteratorError}}}return candidate}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(194),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(self,call){if(!self){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return call&&((typeof call===\"undefined\"?\"undefined\":(0,_typeof3.default)(call))===\"object\"||typeof call===\"function\")?call:self}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _setPrototypeOf=__webpack_require__(196);var _setPrototypeOf2=_interopRequireDefault(_setPrototypeOf);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(subClass,superClass){if(typeof superClass!==\"function\"&&superClass!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+(typeof superClass===\"undefined\"?\"undefined\":(0,_typeof3.default)(superClass)))}subClass.prototype=(0,_create2.default)(superClass&&superClass.prototype,{constructor:{value:subClass,enumerable:false,writable:true,configurable:true}});if(superClass)_setPrototypeOf2.default?(0,_setPrototypeOf2.default)(subClass,superClass):subClass.__proto__=superClass}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _iterator=__webpack_require__(142);var _iterator2=_interopRequireDefault(_iterator);var _symbol=__webpack_require__(144);var _symbol2=_interopRequireDefault(_symbol);var _typeof=typeof _symbol2.default===\"function\"&&typeof _iterator2.default===\"symbol\"?function(obj){return typeof obj}:function(obj){return obj&&typeof _symbol2.default===\"function\"&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?\"symbol\":typeof obj};function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=typeof _symbol2.default===\"function\"&&_typeof(_iterator2.default)===\"symbol\"?function(obj){return typeof obj===\"undefined\"?\"undefined\":_typeof(obj)}:function(obj){return obj&&typeof _symbol2.default===\"function\"&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?\"symbol\":typeof obj===\"undefined\"?\"undefined\":_typeof(obj)}},function(module,exports){var core=module.exports={version:\"2.5.1\"};if(typeof __e==\"number\")__e=core},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(140),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";module.exports=typeof window!==\"undefined\"&&window[\"moment\"]||__webpack_require__(154)},function(module,exports,__webpack_require__){\"use strict\";function hammerMock(){var noop=function noop(){};return{on:noop,off:noop,destroy:noop,emit:noop,get:function get(m){return{set:noop}}}}if(typeof window!==\"undefined\"){var propagating=__webpack_require__(175);var Hammer=window[\"Hammer\"]||__webpack_require__(176);module.exports=propagating(Hammer,{preventDefault:\"mouse\"})}else{module.exports=function(){return hammerMock()}}},function(module,exports,__webpack_require__){\"use strict\";var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Queue=__webpack_require__(43);function DataSet(data,options){if(data&&!Array.isArray(data)){options=data;data=null}this._options=options||{};this._data={};this.length=0;this._fieldId=this._options.fieldId||\"id\";this._type={};if(this._options.type){var fields=(0,_keys2[\"default\"])(this._options.type);for(var i=0,len=fields.length;i<len;i++){var field=fields[i];var value=this._options.type[field];if(value==\"Date\"||value==\"ISODate\"||value==\"ASPDate\"){this._type[field]=\"Date\"}else{this._type[field]=value}}}this._subscribers={};if(data){this.add(data)}this.setOptions(options)}DataSet.prototype.setOptions=function(options){if(options&&options.queue!==undefined){if(options.queue===false){if(this._queue){this._queue.destroy();delete this._queue}}else{if(!this._queue){this._queue=Queue.extend(this,{replace:[\"add\",\"update\",\"remove\"]})}if((0,_typeof3[\"default\"])(options.queue)===\"object\"){this._queue.setOptions(options.queue)}}}};DataSet.prototype.on=function(event,callback){var subscribers=this._subscribers[event];if(!subscribers){subscribers=[];this._subscribers[event]=subscribers}subscribers.push({callback:callback})};DataSet.prototype.off=function(event,callback){var subscribers=this._subscribers[event];if(subscribers){this._subscribers[event]=subscribers.filter(function(listener){return listener.callback!=callback})}};DataSet.prototype._trigger=function(event,params,senderId){if(event==\"*\"){throw new Error(\"Cannot trigger event *\")}var subscribers=[];if(event in this._subscribers){subscribers=subscribers.concat(this._subscribers[event])}if(\"*\"in this._subscribers){subscribers=subscribers.concat(this._subscribers[\"*\"])}for(var i=0,len=subscribers.length;i<len;i++){var subscriber=subscribers[i];if(subscriber.callback){subscriber.callback(event,params,senderId||null)}}};DataSet.prototype.add=function(data,senderId){var addedIds=[],id,me=this;if(Array.isArray(data)){for(var i=0,len=data.length;i<len;i++){id=me._addItem(data[i]);addedIds.push(id)}}else if(data&&(typeof data===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(data))===\"object\"){id=me._addItem(data);addedIds.push(id)}else{throw new Error(\"Unknown dataType\")}if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}return addedIds};DataSet.prototype.update=function(data,senderId){var addedIds=[];var updatedIds=[];var oldData=[];var updatedData=[];var me=this;var fieldId=me._fieldId;var addOrUpdate=function addOrUpdate(item){var id=item[fieldId];if(me._data[id]){var oldItem=util.extend({},me._data[id]);id=me._updateItem(item);updatedIds.push(id);updatedData.push(item);oldData.push(oldItem)}else{id=me._addItem(item);addedIds.push(id)}};if(Array.isArray(data)){for(var i=0,len=data.length;i<len;i++){if(data[i]&&(0,_typeof3[\"default\"])(data[i])===\"object\"){addOrUpdate(data[i])}else{console.warn(\"Ignoring input item, which is not an object at index \"+i)}}}else if(data&&(typeof data===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(data))===\"object\"){addOrUpdate(data)}else{throw new Error(\"Unknown dataType\")}if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}if(updatedIds.length){var props={items:updatedIds,oldData:oldData,data:updatedData};this._trigger(\"update\",props,senderId)}return addedIds.concat(updatedIds)};DataSet.prototype.get=function(args){var me=this;var id,ids,options;var firstType=util.getType(arguments[0]);if(firstType==\"String\"||firstType==\"Number\"){id=arguments[0];options=arguments[1]}else if(firstType==\"Array\"){\nids=arguments[0];options=arguments[1]}else{options=arguments[0]}var returnType;if(options&&options.returnType){var allowedValues=[\"Array\",\"Object\"];returnType=allowedValues.indexOf(options.returnType)==-1?\"Array\":options.returnType}else{returnType=\"Array\"}var type=options&&options.type||this._options.type;var filter=options&&options.filter;var items=[],item,itemIds,itemId,i,len;if(id!=undefined){item=me._getItem(id,type);if(item&&filter&&!filter(item)){item=null}}else if(ids!=undefined){for(i=0,len=ids.length;i<len;i++){item=me._getItem(ids[i],type);if(!filter||filter(item)){items.push(item)}}}else{itemIds=(0,_keys2[\"default\"])(this._data);for(i=0,len=itemIds.length;i<len;i++){itemId=itemIds[i];item=me._getItem(itemId,type);if(!filter||filter(item)){items.push(item)}}}if(options&&options.order&&id==undefined){this._sort(items,options.order)}if(options&&options.fields){var fields=options.fields;if(id!=undefined){item=this._filterFields(item,fields)}else{for(i=0,len=items.length;i<len;i++){items[i]=this._filterFields(items[i],fields)}}}if(returnType==\"Object\"){var result={},resultant;for(i=0,len=items.length;i<len;i++){resultant=items[i];result[resultant.id]=resultant}return result}else{if(id!=undefined){return item}else{return items}}};DataSet.prototype.getIds=function(options){var data=this._data,filter=options&&options.filter,order=options&&options.order,type=options&&options.type||this._options.type,itemIds=(0,_keys2[\"default\"])(data),i,len,id,item,items,ids=[];if(filter){if(order){items=[];for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(filter(item)){items.push(item)}}this._sort(items,order);for(i=0,len=items.length;i<len;i++){ids.push(items[i][this._fieldId])}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(filter(item)){ids.push(item[this._fieldId])}}}}else{if(order){items=[];for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];items.push(data[id])}this._sort(items,order);for(i=0,len=items.length;i<len;i++){ids.push(items[i][this._fieldId])}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=data[id];ids.push(item[this._fieldId])}}}return ids};DataSet.prototype.getDataSet=function(){return this};DataSet.prototype.forEach=function(callback,options){var filter=options&&options.filter,type=options&&options.type||this._options.type,data=this._data,itemIds=(0,_keys2[\"default\"])(data),i,len,item,id;if(options&&options.order){var items=this.get(options);for(i=0,len=items.length;i<len;i++){item=items[i];id=item[this._fieldId];callback(item,id)}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(!filter||filter(item)){callback(item,id)}}}};DataSet.prototype.map=function(callback,options){var filter=options&&options.filter,type=options&&options.type||this._options.type,mappedItems=[],data=this._data,itemIds=(0,_keys2[\"default\"])(data),i,len,id,item;for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(!filter||filter(item)){mappedItems.push(callback(item,id))}}if(options&&options.order){this._sort(mappedItems,options.order)}return mappedItems};DataSet.prototype._filterFields=function(item,fields){if(!item){return item}var filteredItem={},itemFields=(0,_keys2[\"default\"])(item),len=itemFields.length,i,field;if(Array.isArray(fields)){for(i=0;i<len;i++){field=itemFields[i];if(fields.indexOf(field)!=-1){filteredItem[field]=item[field]}}}else{for(i=0;i<len;i++){field=itemFields[i];if(fields.hasOwnProperty(field)){filteredItem[fields[field]]=item[field]}}}return filteredItem};DataSet.prototype._sort=function(items,order){if(util.isString(order)){var name=order;items.sort(function(a,b){var av=a[name];var bv=b[name];return av>bv?1:av<bv?-1:0})}else if(typeof order===\"function\"){items.sort(order)}else{throw new TypeError(\"Order must be a function or a string\")}};DataSet.prototype.remove=function(id,senderId){var removedIds=[],removedItems=[],ids=[],i,len,itemId,item;ids=Array.isArray(id)?id:[id];for(i=0,len=ids.length;i<len;i++){item=this._remove(ids[i]);if(item){itemId=item[this._fieldId];if(itemId!=undefined){removedIds.push(itemId);removedItems.push(item)}}}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems},senderId)}return removedIds};DataSet.prototype._remove=function(id){var item,ident;if(util.isNumber(id)||util.isString(id)){ident=id}else if(id&&(typeof id===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(id))===\"object\"){ident=id[this._fieldId]}if(ident!==undefined&&this._data[ident]){item=this._data[ident];delete this._data[ident];this.length--;return item}return null};DataSet.prototype.clear=function(senderId){var i,len;var ids=(0,_keys2[\"default\"])(this._data);var items=[];for(i=0,len=ids.length;i<len;i++){items.push(this._data[ids[i]])}this._data={};this.length=0;this._trigger(\"remove\",{items:ids,oldData:items},senderId);return ids};DataSet.prototype.max=function(field){var data=this._data,itemIds=(0,_keys2[\"default\"])(data),max=null,maxField=null,i,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var itemField=item[field];if(itemField!=null&&(!max||itemField>maxField)){max=item;maxField=itemField}}return max};DataSet.prototype.min=function(field){var data=this._data,itemIds=(0,_keys2[\"default\"])(data),min=null,minField=null,i,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var itemField=item[field];if(itemField!=null&&(!min||itemField<minField)){min=item;minField=itemField}}return min};DataSet.prototype.distinct=function(field){var data=this._data;var itemIds=(0,_keys2[\"default\"])(data);var values=[];var fieldType=this._options.type&&this._options.type[field]||null;var count=0;var i,j,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var value=item[field];var exists=false;for(j=0;j<count;j++){if(values[j]==value){exists=true;break}}if(!exists&&value!==undefined){values[count]=value;count++}}if(fieldType){for(i=0,len=values.length;i<len;i++){values[i]=util.convert(values[i],fieldType)}}return values};DataSet.prototype._addItem=function(item){var id=item[this._fieldId];if(id!=undefined){if(this._data[id]){throw new Error(\"Cannot add item: item with id \"+id+\" already exists\")}}else{id=util.randomUUID();item[this._fieldId]=id}var d={},fields=(0,_keys2[\"default\"])(item),i,len;for(i=0,len=fields.length;i<len;i++){var field=fields[i];var fieldType=this._type[field];d[field]=util.convert(item[field],fieldType)}this._data[id]=d;this.length++;return id};DataSet.prototype._getItem=function(id,types){var field,value,i,len;var raw=this._data[id];if(!raw){return null}var converted={},fields=(0,_keys2[\"default\"])(raw);if(types){for(i=0,len=fields.length;i<len;i++){field=fields[i];value=raw[field];converted[field]=util.convert(value,types[field])}}else{for(i=0,len=fields.length;i<len;i++){field=fields[i];value=raw[field];converted[field]=value}}if(!converted[this._fieldId]){converted[this._fieldId]=raw.id}return converted};DataSet.prototype._updateItem=function(item){var id=item[this._fieldId];if(id==undefined){throw new Error(\"Cannot update item: item has no id (item: \"+(0,_stringify2[\"default\"])(item)+\")\")}var d=this._data[id];if(!d){throw new Error(\"Cannot update item: no item with id \"+id+\" found\")}var fields=(0,_keys2[\"default\"])(item);for(var i=0,len=fields.length;i<len;i++){var field=fields[i];var fieldType=this._type[field];d[field]=util.convert(item[field],fieldType)}return id};module.exports=DataSet},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);function DataView(data,options){this._data=null;this._ids={};this.length=0;this._options=options||{};this._fieldId=\"id\";this._subscribers={};var me=this;this.listener=function(){me._onEvent.apply(me,arguments)};this.setData(data)}DataView.prototype.setData=function(data){var ids,id,i,len,items;if(this._data){if(this._data.off){this._data.off(\"*\",this.listener)}ids=this._data.getIds({filter:this._options&&this._options.filter});items=[];for(i=0,len=ids.length;i<len;i++){items.push(this._data._data[ids[i]])}this._ids={};this.length=0;this._trigger(\"remove\",{items:ids,oldData:items})}this._data=data;if(this._data){this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||\"id\";ids=this._data.getIds({filter:this._options&&this._options.filter});for(i=0,len=ids.length;i<len;i++){id=ids[i];this._ids[id]=true}this.length=ids.length;this._trigger(\"add\",{items:ids});if(this._data.on){this._data.on(\"*\",this.listener)}}};DataView.prototype.refresh=function(){var id,i,len;var ids=this._data.getIds({filter:this._options&&this._options.filter}),oldIds=(0,_keys2[\"default\"])(this._ids),newIds={},addedIds=[],removedIds=[],removedItems=[];for(i=0,len=ids.length;i<len;i++){id=ids[i];newIds[id]=true;if(!this._ids[id]){addedIds.push(id);this._ids[id]=true}}for(i=0,len=oldIds.length;i<len;i++){id=oldIds[i];if(!newIds[id]){removedIds.push(id);removedItems.push(this._data._data[id]);delete this._ids[id]}}this.length+=addedIds.length-removedIds.length;if(addedIds.length){this._trigger(\"add\",{items:addedIds})}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems})}};DataView.prototype.get=function(args){var me=this;var ids,options,data;var firstType=util.getType(arguments[0]);if(firstType==\"String\"||firstType==\"Number\"||firstType==\"Array\"){ids=arguments[0];options=arguments[1];data=arguments[2]}else{options=arguments[0];data=arguments[1]}var viewOptions=util.extend({},this._options,options);if(this._options.filter&&options&&options.filter){viewOptions.filter=function(item){return me._options.filter(item)&&options.filter(item)}}var getArguments=[];if(ids!=undefined){getArguments.push(ids)}getArguments.push(viewOptions);getArguments.push(data);return this._data&&this._data.get.apply(this._data,getArguments)};DataView.prototype.getIds=function(options){var ids;if(this._data){var defaultFilter=this._options.filter;var filter;if(options&&options.filter){if(defaultFilter){filter=function filter(item){return defaultFilter(item)&&options.filter(item)}}else{filter=options.filter}}else{filter=defaultFilter}ids=this._data.getIds({filter:filter,order:options&&options.order})}else{ids=[]}return ids};DataView.prototype.map=function(callback,options){var mappedItems=[];if(this._data){var defaultFilter=this._options.filter;var filter;if(options&&options.filter){if(defaultFilter){filter=function filter(item){return defaultFilter(item)&&options.filter(item)}}else{filter=options.filter}}else{filter=defaultFilter}mappedItems=this._data.map(callback,{filter:filter,order:options&&options.order})}else{mappedItems=[]}return mappedItems};DataView.prototype.getDataSet=function(){var dataSet=this;while(dataSet instanceof DataView){dataSet=dataSet._data}return dataSet||null};DataView.prototype._onEvent=function(event,params,senderId){var i,len,id,item;var ids=params&&params.items;var addedIds=[],updatedIds=[],removedIds=[],oldItems=[],updatedItems=[],removedItems=[];if(ids&&this._data){switch(event){case\"add\":for(i=0,len=ids.length;i<len;i++){id=ids[i];item=this.get(id);if(item){this._ids[id]=true;addedIds.push(id)}}break;case\"update\":for(i=0,len=ids.length;i<len;i++){id=ids[i];item=this.get(id);if(item){if(this._ids[id]){updatedIds.push(id);updatedItems.push(params.data[i]);oldItems.push(params.oldData[i])}else{this._ids[id]=true;addedIds.push(id)}}else{if(this._ids[id]){delete this._ids[id];removedIds.push(id);removedItems.push(params.oldData[i])}else{}}}break;case\"remove\":for(i=0,len=ids.length;i<len;i++){id=ids[i];if(this._ids[id]){delete this._ids[id];removedIds.push(id);removedItems.push(params.oldData[i])}}break}this.length+=addedIds.length-removedIds.length;if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}if(updatedIds.length){this._trigger(\"update\",{items:updatedIds,oldData:oldItems,data:updatedItems},senderId)}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems},senderId)}}};DataView.prototype.on=DataSet.prototype.on;DataView.prototype.off=DataSet.prototype.off;DataView.prototype._trigger=DataSet.prototype._trigger;DataView.prototype.subscribe=DataView.prototype.on;DataView.prototype.unsubscribe=DataView.prototype.off;module.exports=DataView},function(module,exports,__webpack_require__){var store=__webpack_require__(57)(\"wks\");var uid=__webpack_require__(40);var Symbol=__webpack_require__(18).Symbol;var USE_SYMBOL=typeof Symbol==\"function\";var $exports=module.exports=function(name){return store[name]||(store[name]=USE_SYMBOL&&Symbol[name]||(USE_SYMBOL?Symbol:uid)(\"Symbol.\"+name))};$exports.store=store},function(module,exports,__webpack_require__){\"use strict\";exports.prepareElements=function(JSONcontainer){for(var elementType in JSONcontainer){if(JSONcontainer.hasOwnProperty(elementType)){JSONcontainer[elementType].redundant=JSONcontainer[elementType].used;JSONcontainer[elementType].used=[]}}};exports.cleanupElements=function(JSONcontainer){for(var elementType in JSONcontainer){if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant){for(var i=0;i<JSONcontainer[elementType].redundant.length;i++){JSONcontainer[elementType].redundant[i].parentNode.removeChild(JSONcontainer[elementType].redundant[i])}JSONcontainer[elementType].redundant=[]}}}};exports.resetElements=function(JSONcontainer){exports.prepareElements(JSONcontainer);exports.cleanupElements(JSONcontainer);exports.prepareElements(JSONcontainer)};exports.getSVGElement=function(elementType,JSONcontainer,svgContainer){var element;if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant.length>0){element=JSONcontainer[elementType].redundant[0];JSONcontainer[elementType].redundant.shift()}else{element=document.createElementNS(\"http://www.w3.org/2000/svg\",elementType);svgContainer.appendChild(element)}}else{element=document.createElementNS(\"http://www.w3.org/2000/svg\",elementType);JSONcontainer[elementType]={used:[],redundant:[]};svgContainer.appendChild(element)}JSONcontainer[elementType].used.push(element);return element};exports.getDOMElement=function(elementType,JSONcontainer,DOMContainer,insertBefore){var element;if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant.length>0){element=JSONcontainer[elementType].redundant[0];JSONcontainer[elementType].redundant.shift()}else{element=document.createElement(elementType);if(insertBefore!==undefined){DOMContainer.insertBefore(element,insertBefore)}else{DOMContainer.appendChild(element)}}}else{element=document.createElement(elementType);JSONcontainer[elementType]={used:[],redundant:[]};if(insertBefore!==undefined){DOMContainer.insertBefore(element,insertBefore)}else{DOMContainer.appendChild(element)}}JSONcontainer[elementType].used.push(element);return element};exports.drawPoint=function(x,y,groupTemplate,JSONcontainer,svgContainer,labelObj){var point;if(groupTemplate.style==\"circle\"){point=exports.getSVGElement(\"circle\",JSONcontainer,svgContainer);point.setAttributeNS(null,\"cx\",x);point.setAttributeNS(null,\"cy\",y);point.setAttributeNS(null,\"r\",.5*groupTemplate.size)}else{point=exports.getSVGElement(\"rect\",JSONcontainer,svgContainer);point.setAttributeNS(null,\"x\",x-.5*groupTemplate.size);point.setAttributeNS(null,\"y\",y-.5*groupTemplate.size);point.setAttributeNS(null,\"width\",groupTemplate.size);point.setAttributeNS(null,\"height\",groupTemplate.size)}if(groupTemplate.styles!==undefined){point.setAttributeNS(null,\"style\",groupTemplate.styles)}point.setAttributeNS(null,\"class\",groupTemplate.className+\" vis-point\");if(labelObj){var label=exports.getSVGElement(\"text\",JSONcontainer,svgContainer);if(labelObj.xOffset){x=x+labelObj.xOffset}if(labelObj.yOffset){y=y+labelObj.yOffset}if(labelObj.content){label.textContent=labelObj.content}if(labelObj.className){label.setAttributeNS(null,\"class\",labelObj.className+\" vis-label\")}label.setAttributeNS(null,\"x\",x);label.setAttributeNS(null,\"y\",y)}return point};exports.drawBar=function(x,y,width,height,className,JSONcontainer,svgContainer,style){if(height!=0){if(height<0){height*=-1;y-=height}var rect=exports.getSVGElement(\"rect\",JSONcontainer,svgContainer);rect.setAttributeNS(null,\"x\",x-.5*width);rect.setAttributeNS(null,\"y\",y);rect.setAttributeNS(null,\"width\",width);rect.setAttributeNS(null,\"height\",height);rect.setAttributeNS(null,\"class\",className);if(style){rect.setAttributeNS(null,\"style\",style)}}}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.printStyle=undefined;var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var errorFound=false;var allOptions=void 0;var printStyle=\"background: #FFeeee; color: #dd0000\";var Validator=function(){function Validator(){(0,_classCallCheck3[\"default\"])(this,Validator)}(0,_createClass3[\"default\"])(Validator,null,[{key:\"validate\",value:function validate(options,referenceOptions,subObject){errorFound=false;allOptions=referenceOptions;var usedOptions=referenceOptions;if(subObject!==undefined){usedOptions=referenceOptions[subObject]}Validator.parse(options,usedOptions,[]);return errorFound}},{key:\"parse\",value:function parse(options,referenceOptions,path){for(var option in options){if(options.hasOwnProperty(option)){Validator.check(option,options,referenceOptions,path)}}}},{key:\"check\",value:function check(option,options,referenceOptions,path){if(referenceOptions[option]===undefined&&referenceOptions.__any__===undefined){Validator.getSuggestion(option,referenceOptions,path);return}var referenceOption=option;var is_object=true;if(referenceOptions[option]===undefined&&referenceOptions.__any__!==undefined){referenceOption=\"__any__\";is_object=Validator.getType(options[option])===\"object\"}else{}var refOptionObj=referenceOptions[referenceOption];if(is_object&&refOptionObj.__type__!==undefined){refOptionObj=refOptionObj.__type__}Validator.checkFields(option,options,referenceOptions,referenceOption,refOptionObj,path)}},{key:\"checkFields\",value:function checkFields(option,options,referenceOptions,referenceOption,refOptionObj,path){var log=function log(message){console.log(\"%c\"+message+Validator.printLocation(path,option),printStyle)};var optionType=Validator.getType(options[option]);var refOptionType=refOptionObj[optionType];if(refOptionType!==undefined){if(Validator.getType(refOptionType)===\"array\"&&refOptionType.indexOf(options[option])===-1){log('Invalid option detected in \"'+option+'\".'+\" Allowed values are:\"+Validator.print(refOptionType)+' not \"'+options[option]+'\". ');errorFound=true}else if(optionType===\"object\"&&referenceOption!==\"__any__\"){path=util.copyAndExtendArray(path,option);Validator.parse(options[option],referenceOptions[referenceOption],path)}}else if(refOptionObj[\"any\"]===undefined){log('Invalid type received for \"'+option+'\". Expected: '+Validator.print((0,_keys2[\"default\"])(refOptionObj))+\". Received [\"+optionType+'] \"'+options[option]+'\"');errorFound=true}}},{key:\"getType\",value:function getType(object){var type=typeof object===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(object);if(type===\"object\"){if(object===null){return\"null\"}if(object instanceof Boolean){return\"boolean\"}if(object instanceof Number){return\"number\"}if(object instanceof String){return\"string\"}if(Array.isArray(object)){return\"array\"}if(object instanceof Date){return\"date\"}if(object.nodeType!==undefined){return\"dom\"}if(object._isAMomentObject===true){return\"moment\"}return\"object\"}else if(type===\"number\"){return\"number\"}else if(type===\"boolean\"){return\"boolean\"}else if(type===\"string\"){return\"string\"}else if(type===undefined){return\"undefined\"}return type}},{key:\"getSuggestion\",value:function getSuggestion(option,options,path){var localSearch=Validator.findInOptions(option,options,path,false);var globalSearch=Validator.findInOptions(option,allOptions,[],true);var localSearchThreshold=8;var globalSearchThreshold=4;var msg=void 0;if(localSearch.indexMatch!==undefined){msg=\" in \"+Validator.printLocation(localSearch.path,option,\"\")+'Perhaps it was incomplete? Did you mean: \"'+localSearch.indexMatch+'\"?\\n\\n'}else if(globalSearch.distance<=globalSearchThreshold&&localSearch.distance>globalSearch.distance){msg=\" in \"+Validator.printLocation(localSearch.path,option,\"\")+\"Perhaps it was misplaced? Matching option found at: \"+Validator.printLocation(globalSearch.path,globalSearch.closestMatch,\"\")}else if(localSearch.distance<=localSearchThreshold){msg='. Did you mean \"'+localSearch.closestMatch+'\"?'+Validator.printLocation(localSearch.path,option)}else{msg=\". Did you mean one of these: \"+Validator.print((0,_keys2[\"default\"])(options))+Validator.printLocation(path,option)}console.log('%cUnknown option detected: \"'+option+'\"'+msg,printStyle);errorFound=true}},{key:\"findInOptions\",value:function findInOptions(option,options,path){var recursive=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;var min=1e9;var closestMatch=\"\";var closestMatchPath=[];var lowerCaseOption=option.toLowerCase();var indexMatch=undefined;for(var op in options){var distance=void 0;if(options[op].__type__!==undefined&&recursive===true){var result=Validator.findInOptions(option,options[op],util.copyAndExtendArray(path,op));if(min>result.distance){closestMatch=result.closestMatch;closestMatchPath=result.path;min=result.distance;indexMatch=result.indexMatch}}else{if(op.toLowerCase().indexOf(lowerCaseOption)!==-1){indexMatch=op}distance=Validator.levenshteinDistance(option,op);if(min>distance){closestMatch=op;closestMatchPath=util.copyArray(path);min=distance}}}return{closestMatch:closestMatch,path:closestMatchPath,distance:min,indexMatch:indexMatch}}},{key:\"printLocation\",value:function printLocation(path,option){var prefix=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"Problem value found at: \\n\";var str=\"\\n\\n\"+prefix+\"options = {\\n\";for(var i=0;i<path.length;i++){for(var j=0;j<i+1;j++){str+=\"  \"}str+=path[i]+\": {\\n\"}for(var _j=0;_j<path.length+1;_j++){str+=\"  \"}str+=option+\"\\n\";for(var _i=0;_i<path.length+1;_i++){for(var _j2=0;_j2<path.length-_i;_j2++){str+=\"  \"}str+=\"}\\n\"}return str+\"\\n\\n\"}},{key:\"print\",value:function print(options){return(0,_stringify2[\"default\"])(options).replace(/(\\\")|(\\[)|(\\])|(,\"__type__\")/g,\"\").replace(/(\\,)/g,\", \")}},{key:\"levenshteinDistance\",value:function levenshteinDistance(a,b){if(a.length===0)return b.length;if(b.length===0)return a.length;var matrix=[];var i;for(i=0;i<=b.length;i++){matrix[i]=[i]}var j;for(j=0;j<=a.length;j++){matrix[0][j]=j}for(i=1;i<=b.length;i++){for(j=1;j<=a.length;j++){if(b.charAt(i-1)==a.charAt(j-1)){matrix[i][j]=matrix[i-1][j-1]}else{matrix[i][j]=Math.min(matrix[i-1][j-1]+1,Math.min(matrix[i][j-1]+1,matrix[i-1][j]+1))}}}return matrix[b.length][a.length]}}]);return Validator}();exports[\"default\"]=Validator;exports.printStyle=printStyle},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);function Component(body,options){this.options=null;this.props=null}Component.prototype.setOptions=function(options){if(options){util.extend(this.options,options)}};Component.prototype.redraw=function(){return false};Component.prototype.destroy=function(){};Component.prototype._isResized=function(){var resized=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;this.props._previousWidth=this.props.width;this.props._previousHeight=this.props.height;return resized};module.exports=Component},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var core=__webpack_require__(7);var ctx=__webpack_require__(80);var hide=__webpack_require__(26);var PROTOTYPE=\"prototype\";var $export=function(type,name,source){var IS_FORCED=type&$export.F;var IS_GLOBAL=type&$export.G;var IS_STATIC=type&$export.S;var IS_PROTO=type&$export.P;var IS_BIND=type&$export.B;var IS_WRAP=type&$export.W;var exports=IS_GLOBAL?core:core[name]||(core[name]={});var expProto=exports[PROTOTYPE];var target=IS_GLOBAL?global:IS_STATIC?global[name]:(global[name]||{})[PROTOTYPE];var key,own,out;if(IS_GLOBAL)source=name;for(key in source){own=!IS_FORCED&&target&&target[key]!==undefined;if(own&&key in exports)continue;out=own?target[key]:source[key];exports[key]=IS_GLOBAL&&typeof target[key]!=\"function\"?source[key]:IS_BIND&&own?ctx(out,global):IS_WRAP&&target[key]==out?function(C){var F=function(a,b,c){if(this instanceof C){switch(arguments.length){case 0:return new C;case 1:return new C(a);case 2:return new C(a,b)}return new C(a,b,c)}return C.apply(this,arguments)};F[PROTOTYPE]=C[PROTOTYPE];return F}(out):IS_PROTO&&typeof out==\"function\"?ctx(Function.call,out):out;if(IS_PROTO){(exports.virtual||(exports.virtual={}))[key]=out;if(type&$export.R&&expProto&&!expProto[key])hide(expProto,key,out)}}};$export.F=1;$export.G=2;$export.S=4;$export.P=8;$export.B=16;$export.W=32;$export.U=64;$export.R=128;module.exports=$export},function(module,exports){var global=module.exports=typeof window!=\"undefined\"&&window.Math==Math?window:typeof self!=\"undefined\"&&self.Math==Math?self:Function(\"return this\")();if(typeof __g==\"number\")__g=global},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(160),__esModule:true}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var IE8_DOM_DEFINE=__webpack_require__(81);var toPrimitive=__webpack_require__(53);var dP=Object.defineProperty;exports.f=__webpack_require__(21)?Object.defineProperty:function defineProperty(O,P,Attributes){anObject(O);P=toPrimitive(P,true);anObject(Attributes);if(IE8_DOM_DEFINE)try{return dP(O,P,Attributes)}catch(e){}if(\"get\"in Attributes||\"set\"in Attributes)throw TypeError(\"Accessors not supported!\");if(\"value\"in Attributes)O[P]=Attributes.value;return O}},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(28)(function(){return Object.defineProperty({},\"a\",{get:function(){return 7}}).a!=7})},function(module,exports){var hasOwnProperty={}.hasOwnProperty;module.exports=function(it,key){return hasOwnProperty.call(it,key)}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var NodeBase=function(){function NodeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,NodeBase);this.body=body;this.labelModule=labelModule;this.setOptions(options);this.top=undefined;this.left=undefined;this.height=undefined;this.width=undefined;this.radius=undefined;this.margin=undefined;this.refreshNeeded=true;this.boundingBox={top:0,left:0,right:0,bottom:0}}(0,_createClass3[\"default\"])(NodeBase,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"_setMargins\",value:function _setMargins(labelModule){this.margin={};if(this.options.margin){if((0,_typeof3[\"default\"])(this.options.margin)==\"object\"){this.margin.top=this.options.margin.top;this.margin.right=this.options.margin.right;this.margin.bottom=this.options.margin.bottom;this.margin.left=this.options.margin.left}else{this.margin.top=this.options.margin;this.margin.right=this.options.margin;this.margin.bottom=this.options.margin;this.margin.left=this.options.margin}}labelModule.adjustSizes(this.margin)}},{key:\"_distanceToBorder\",value:function _distanceToBorder(ctx,angle){var borderWidth=this.options.borderWidth;this.resize(ctx);return Math.min(Math.abs(this.width/2/Math.cos(angle)),Math.abs(this.height/2/Math.sin(angle)))+borderWidth}},{key:\"enableShadow\",value:function enableShadow(ctx,values){if(values.shadow){ctx.shadowColor=values.shadowColor;ctx.shadowBlur=values.shadowSize;ctx.shadowOffsetX=values.shadowX;ctx.shadowOffsetY=values.shadowY}}},{key:\"disableShadow\",value:function disableShadow(ctx,values){if(values.shadow){ctx.shadowColor=\"rgba(0,0,0,0)\";ctx.shadowBlur=0;ctx.shadowOffsetX=0;ctx.shadowOffsetY=0}}},{key:\"enableBorderDashes\",value:function enableBorderDashes(ctx,values){if(values.borderDashes!==false){if(ctx.setLineDash!==undefined){var dashes=values.borderDashes;if(dashes===true){dashes=[5,15]}ctx.setLineDash(dashes)}else{console.warn(\"setLineDash is not supported in this browser. The dashed borders cannot be used.\");this.options.shapeProperties.borderDashes=false;values.borderDashes=false}}}},{key:\"disableBorderDashes\",value:function disableBorderDashes(ctx,values){if(values.borderDashes!==false){if(ctx.setLineDash!==undefined){ctx.setLineDash([0])}else{console.warn(\"setLineDash is not supported in this browser. The dashed borders cannot be used.\");this.options.shapeProperties.borderDashes=false;values.borderDashes=false}}}},{key:\"needsRefresh\",value:function needsRefresh(selected,hover){if(this.refreshNeeded===true){this.refreshNeeded=false;return true}return this.width===undefined||this.labelModule.differentState(selected,hover)}},{key:\"initContextForDraw\",value:function initContextForDraw(ctx,values){var borderWidth=values.borderWidth/this.body.view.scale;ctx.lineWidth=Math.min(this.width,borderWidth);ctx.strokeStyle=values.borderColor;ctx.fillStyle=values.color}},{key:\"performStroke\",value:function performStroke(ctx,values){var borderWidth=values.borderWidth/this.body.view.scale;ctx.save();if(borderWidth>0){this.enableBorderDashes(ctx,values);ctx.stroke();this.disableBorderDashes(ctx,values)}ctx.restore()}},{key:\"performFill\",value:function performFill(ctx,values){this.enableShadow(ctx,values);ctx.fill();this.disableShadow(ctx,values);this.performStroke(ctx,values)}},{key:\"_addBoundingBoxMargin\",value:function _addBoundingBoxMargin(margin){this.boundingBox.left-=margin;this.boundingBox.top-=margin;this.boundingBox.bottom+=margin;this.boundingBox.right+=margin}},{key:\"_updateBoundingBox\",value:function _updateBoundingBox(x,y,ctx,selected,hover){if(ctx!==undefined){this.resize(ctx,selected,hover)}this.left=x-this.width/2;this.top=y-this.height/2;this.boundingBox.left=this.left;this.boundingBox.top=this.top;this.boundingBox.bottom=this.top+this.height;this.boundingBox.right=this.left+this.width}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y,ctx,selected,hover){this._updateBoundingBox(x,y,ctx,selected,hover)}},{key:\"getDimensionsFromLabel\",value:function getDimensionsFromLabel(ctx,selected,hover){this.textSize=this.labelModule.getTextSize(ctx,selected,hover);var width=this.textSize.width;var height=this.textSize.height;var DEFAULT_SIZE=14;if(width===0){width=DEFAULT_SIZE;height=DEFAULT_SIZE}return{width:width,height:height}}}]);return NodeBase}();exports[\"default\"]=NodeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2)\n;var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ShapeBase=function(_NodeBase){(0,_inherits3[\"default\"])(ShapeBase,_NodeBase);function ShapeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,ShapeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(ShapeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(ShapeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(ShapeBase,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var values=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{size:this.options.size};if(this.needsRefresh(selected,hover)){this.labelModule.getTextSize(ctx,selected,hover);var size=2*values.size;this.width=size;this.height=size;this.radius=.5*this.width}}},{key:\"_drawShape\",value:function _drawShape(ctx,shape,sizeMultiplier,x,y,selected,hover,values){this.resize(ctx,selected,hover,values);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx[shape](x,y,values.size);this.performFill(ctx,values);if(this.options.label!==undefined){this.labelModule.calculateLabelSize(ctx,selected,hover,x,y,\"hanging\");var yLabel=y+.5*this.height+.5*this.labelModule.size.height;this.labelModule.draw(ctx,x,yLabel,selected,hover,\"hanging\")}this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size;if(this.options.label!==undefined&&this.labelModule.size.width>0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height)}}}]);return ShapeBase}(_NodeBase3[\"default\"]);exports[\"default\"]=ShapeBase},function(module,exports,__webpack_require__){var IObject=__webpack_require__(78);var defined=__webpack_require__(51);module.exports=function(it){return IObject(defined(it))}},function(module,exports,__webpack_require__){var dP=__webpack_require__(20);var createDesc=__webpack_require__(39);module.exports=__webpack_require__(21)?function(object,key,value){return dP.f(object,key,createDesc(1,value))}:function(object,key,value){object[key]=value;return object}},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);module.exports=function(it){if(!isObject(it))throw TypeError(it+\" is not an object!\");return it}},function(module,exports){module.exports=function(exec){try{return!!exec()}catch(e){return true}}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(138),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _isIterable2=__webpack_require__(188);var _isIterable3=_interopRequireDefault(_isIterable2);var _getIterator2=__webpack_require__(77);var _getIterator3=_interopRequireDefault(_getIterator2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(){function sliceIterator(arr,i){var _arr=[];var _n=true;var _d=false;var _e=undefined;try{for(var _i=(0,_getIterator3.default)(arr),_s;!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i[\"return\"])_i[\"return\"]()}finally{if(_d)throw _e}}return _arr}return function(arr,i){if(Array.isArray(arr)){return arr}else if((0,_isIterable3.default)(Object(arr))){return sliceIterator(arr,i)}else{throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}}()},function(module,exports){module.exports={}},function(module,exports){module.exports=function(it){return typeof it===\"object\"?it!==null:typeof it===\"function\"}},function(module,exports,__webpack_require__){var $keys=__webpack_require__(84);var enumBugKeys=__webpack_require__(58);module.exports=Object.keys||function keys(O){return $keys(O,enumBugKeys)}},function(module,exports,__webpack_require__){\"use strict\";function Point3d(x,y,z){this.x=x!==undefined?x:0;this.y=y!==undefined?y:0;this.z=z!==undefined?z:0}Point3d.subtract=function(a,b){var sub=new Point3d;sub.x=a.x-b.x;sub.y=a.y-b.y;sub.z=a.z-b.z;return sub};Point3d.add=function(a,b){var sum=new Point3d;sum.x=a.x+b.x;sum.y=a.y+b.y;sum.z=a.z+b.z;return sum};Point3d.avg=function(a,b){return new Point3d((a.x+b.x)/2,(a.y+b.y)/2,(a.z+b.z)/2)};Point3d.crossProduct=function(a,b){var crossproduct=new Point3d;crossproduct.x=a.y*b.z-a.z*b.y;crossproduct.y=a.z*b.x-a.x*b.z;crossproduct.z=a.x*b.y-a.y*b.x;return crossproduct};Point3d.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)};module.exports=Point3d},function(module,exports,__webpack_require__){\"use strict\";var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(root,factory){if(true){!(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,__WEBPACK_AMD_DEFINE_RESULT__=typeof __WEBPACK_AMD_DEFINE_FACTORY__===\"function\"?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof exports===\"object\"){module.exports=factory()}else{root.keycharm=factory()}})(this,function(){function keycharm(options){var preventDefault=options&&options.preventDefault||false;var container=options&&options.container||window;var _exportFunctions={};var _bound={keydown:{},keyup:{}};var _keys={};var i;for(i=97;i<=122;i++){_keys[String.fromCharCode(i)]={code:65+(i-97),shift:false}}for(i=65;i<=90;i++){_keys[String.fromCharCode(i)]={code:i,shift:true}}for(i=0;i<=9;i++){_keys[\"\"+i]={code:48+i,shift:false}}for(i=1;i<=12;i++){_keys[\"F\"+i]={code:111+i,shift:false}}for(i=0;i<=9;i++){_keys[\"num\"+i]={code:96+i,shift:false}}_keys[\"num*\"]={code:106,shift:false};_keys[\"num+\"]={code:107,shift:false};_keys[\"num-\"]={code:109,shift:false};_keys[\"num/\"]={code:111,shift:false};_keys[\"num.\"]={code:110,shift:false};_keys[\"left\"]={code:37,shift:false};_keys[\"up\"]={code:38,shift:false};_keys[\"right\"]={code:39,shift:false};_keys[\"down\"]={code:40,shift:false};_keys[\"space\"]={code:32,shift:false};_keys[\"enter\"]={code:13,shift:false};_keys[\"shift\"]={code:16,shift:undefined};_keys[\"esc\"]={code:27,shift:false};_keys[\"backspace\"]={code:8,shift:false};_keys[\"tab\"]={code:9,shift:false};_keys[\"ctrl\"]={code:17,shift:false};_keys[\"alt\"]={code:18,shift:false};_keys[\"delete\"]={code:46,shift:false};_keys[\"pageup\"]={code:33,shift:false};_keys[\"pagedown\"]={code:34,shift:false};_keys[\"=\"]={code:187,shift:false};_keys[\"-\"]={code:189,shift:false};_keys[\"]\"]={code:221,shift:false};_keys[\"[\"]={code:219,shift:false};var down=function(event){handleEvent(event,\"keydown\")};var up=function(event){handleEvent(event,\"keyup\")};var handleEvent=function(event,type){if(_bound[type][event.keyCode]!==undefined){var bound=_bound[type][event.keyCode];for(var i=0;i<bound.length;i++){if(bound[i].shift===undefined){bound[i].fn(event)}else if(bound[i].shift==true&&event.shiftKey==true){bound[i].fn(event)}else if(bound[i].shift==false&&event.shiftKey==false){bound[i].fn(event)}}if(preventDefault==true){event.preventDefault()}}};_exportFunctions.bind=function(key,callback,type){if(type===undefined){type=\"keydown\"}if(_keys[key]===undefined){throw new Error(\"unsupported key: \"+key)}if(_bound[type][_keys[key].code]===undefined){_bound[type][_keys[key].code]=[]}_bound[type][_keys[key].code].push({fn:callback,shift:_keys[key].shift})};_exportFunctions.bindAll=function(callback,type){if(type===undefined){type=\"keydown\"}for(var key in _keys){if(_keys.hasOwnProperty(key)){_exportFunctions.bind(key,callback,type)}}};_exportFunctions.getKey=function(event){for(var key in _keys){if(_keys.hasOwnProperty(key)){if(event.shiftKey==true&&_keys[key].shift==true&&event.keyCode==_keys[key].code){return key}else if(event.shiftKey==false&&_keys[key].shift==false&&event.keyCode==_keys[key].code){return key}else if(event.keyCode==_keys[key].code&&key==\"shift\"){return key}}}return\"unknown key, currently not supported\"};_exportFunctions.unbind=function(key,callback,type){if(type===undefined){type=\"keydown\"}if(_keys[key]===undefined){throw new Error(\"unsupported key: \"+key)}if(callback!==undefined){var newBindings=[];var bound=_bound[type][_keys[key].code];if(bound!==undefined){for(var i=0;i<bound.length;i++){if(!(bound[i].fn==callback&&bound[i].shift==_keys[key].shift)){newBindings.push(_bound[type][_keys[key].code][i])}}}_bound[type][_keys[key].code]=newBindings}else{_bound[type][_keys[key].code]=[]}};_exportFunctions.reset=function(){_bound={keydown:{},keyup:{}}};_exportFunctions.destroy=function(){_bound={keydown:{},keyup:{}};container.removeEventListener(\"keydown\",down,true);container.removeEventListener(\"keyup\",up,true)};container.addEventListener(\"keydown\",down,true);container.addEventListener(\"keyup\",up,true);return _exportFunctions}return keycharm})},function(module,exports,__webpack_require__){\"use strict\";exports.convertHiddenOptions=function(moment,body,hiddenDates){if(hiddenDates&&!Array.isArray(hiddenDates)){return exports.convertHiddenOptions(moment,body,[hiddenDates])}body.hiddenDates=[];if(hiddenDates){if(Array.isArray(hiddenDates)==true){for(var i=0;i<hiddenDates.length;i++){if(hiddenDates[i].repeat===undefined){var dateItem={};dateItem.start=moment(hiddenDates[i].start).toDate().valueOf();dateItem.end=moment(hiddenDates[i].end).toDate().valueOf();body.hiddenDates.push(dateItem)}}body.hiddenDates.sort(function(a,b){return a.start-b.start})}}};exports.updateHiddenDates=function(moment,body,hiddenDates){if(hiddenDates&&!Array.isArray(hiddenDates)){return exports.updateHiddenDates(moment,body,[hiddenDates])}if(hiddenDates&&body.domProps.centerContainer.width!==undefined){exports.convertHiddenOptions(moment,body,hiddenDates);var start=moment(body.range.start);var end=moment(body.range.end);var totalRange=body.range.end-body.range.start;var pixelTime=totalRange/body.domProps.centerContainer.width;for(var i=0;i<hiddenDates.length;i++){if(hiddenDates[i].repeat!==undefined){var startDate=moment(hiddenDates[i].start);var endDate=moment(hiddenDates[i].end);if(startDate._d==\"Invalid Date\"){throw new Error(\"Supplied start date is not valid: \"+hiddenDates[i].start)}if(endDate._d==\"Invalid Date\"){throw new Error(\"Supplied end date is not valid: \"+hiddenDates[i].end)}var duration=endDate-startDate;if(duration>=4*pixelTime){var offset=0;var runUntil=end.clone();switch(hiddenDates[i].repeat){case\"daily\":if(startDate.day()!=endDate.day()){offset=1}startDate.dayOfYear(start.dayOfYear());startDate.year(start.year());startDate.subtract(7,\"days\");endDate.dayOfYear(start.dayOfYear());endDate.year(start.year());endDate.subtract(7-offset,\"days\");runUntil.add(1,\"weeks\");break;case\"weekly\":var dayOffset=endDate.diff(startDate,\"days\");var day=startDate.day();startDate.date(start.date());startDate.month(start.month());startDate.year(start.year());endDate=startDate.clone();startDate.day(day);endDate.day(day);endDate.add(dayOffset,\"days\");startDate.subtract(1,\"weeks\");endDate.subtract(1,\"weeks\");runUntil.add(1,\"weeks\");break;case\"monthly\":if(startDate.month()!=endDate.month()){offset=1}startDate.month(start.month());startDate.year(start.year());startDate.subtract(1,\"months\");endDate.month(start.month());endDate.year(start.year());endDate.subtract(1,\"months\");endDate.add(offset,\"months\");runUntil.add(1,\"months\");break;case\"yearly\":if(startDate.year()!=endDate.year()){offset=1}startDate.year(start.year());startDate.subtract(1,\"years\");endDate.year(start.year());endDate.subtract(1,\"years\");endDate.add(offset,\"years\");runUntil.add(1,\"years\");break;default:console.log(\"Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:\",hiddenDates[i].repeat);return}while(startDate<runUntil){body.hiddenDates.push({start:startDate.valueOf(),end:endDate.valueOf()});switch(hiddenDates[i].repeat){case\"daily\":startDate.add(1,\"days\");endDate.add(1,\"days\");break;case\"weekly\":startDate.add(1,\"weeks\");endDate.add(1,\"weeks\");break;case\"monthly\":startDate.add(1,\"months\");endDate.add(1,\"months\");break;case\"yearly\":startDate.add(1,\"y\");endDate.add(1,\"y\");break;default:console.log(\"Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:\",hiddenDates[i].repeat);return}}body.hiddenDates.push({start:startDate.valueOf(),end:endDate.valueOf()})}}}exports.removeDuplicates(body);var startHidden=exports.isHidden(body.range.start,body.hiddenDates);var endHidden=exports.isHidden(body.range.end,body.hiddenDates);var rangeStart=body.range.start;var rangeEnd=body.range.end;if(startHidden.hidden==true){rangeStart=body.range.startToFront==true?startHidden.startDate-1:startHidden.endDate+1}if(endHidden.hidden==true){rangeEnd=body.range.endToFront==true?endHidden.startDate-1:endHidden.endDate+1}if(startHidden.hidden==true||endHidden.hidden==true){body.range._applyRange(rangeStart,rangeEnd)}}};exports.removeDuplicates=function(body){var hiddenDates=body.hiddenDates;var safeDates=[];for(var i=0;i<hiddenDates.length;i++){for(var j=0;j<hiddenDates.length;j++){if(i!=j&&hiddenDates[j].remove!=true&&hiddenDates[i].remove!=true){if(hiddenDates[j].start>=hiddenDates[i].start&&hiddenDates[j].end<=hiddenDates[i].end){hiddenDates[j].remove=true}else if(hiddenDates[j].start>=hiddenDates[i].start&&hiddenDates[j].start<=hiddenDates[i].end){hiddenDates[i].end=hiddenDates[j].end;hiddenDates[j].remove=true}else if(hiddenDates[j].end>=hiddenDates[i].start&&hiddenDates[j].end<=hiddenDates[i].end){hiddenDates[i].start=hiddenDates[j].start;hiddenDates[j].remove=true}}}}for(i=0;i<hiddenDates.length;i++){if(hiddenDates[i].remove!==true){safeDates.push(hiddenDates[i])}}body.hiddenDates=safeDates;body.hiddenDates.sort(function(a,b){return a.start-b.start})};exports.printDates=function(dates){for(var i=0;i<dates.length;i++){console.log(i,new Date(dates[i].start),new Date(dates[i].end),dates[i].start,dates[i].end,dates[i].remove)}};exports.stepOverHiddenDates=function(moment,timeStep,previousTime){var stepInHidden=false;var currentValue=timeStep.current.valueOf();for(var i=0;i<timeStep.hiddenDates.length;i++){var startDate=timeStep.hiddenDates[i].start;var endDate=timeStep.hiddenDates[i].end;if(currentValue>=startDate&&currentValue<endDate){stepInHidden=true;break}}if(stepInHidden==true&&currentValue<timeStep._end.valueOf()&&currentValue!=previousTime){var prevValue=moment(previousTime);var newValue=moment(endDate);if(prevValue.year()!=newValue.year()){timeStep.switchedYear=true}else if(prevValue.month()!=newValue.month()){timeStep.switchedMonth=true}else if(prevValue.dayOfYear()!=newValue.dayOfYear()){timeStep.switchedDay=true}timeStep.current=newValue}};exports.toScreen=function(Core,time,width){var conversion;if(Core.body.hiddenDates.length==0){conversion=Core.range.conversion(width);return(time.valueOf()-conversion.offset)*conversion.scale}else{var hidden=exports.isHidden(time,Core.body.hiddenDates);if(hidden.hidden==true){time=hidden.startDate}var duration=exports.getHiddenDurationBetween(Core.body.hiddenDates,Core.range.start,Core.range.end);if(time<Core.range.start){conversion=Core.range.conversion(width,duration);var hiddenBeforeStart=exports.getHiddenDurationBeforeStart(Core.body.hiddenDates,time,conversion.offset);time=Core.options.moment(time).toDate().valueOf();time=time+hiddenBeforeStart;return-(conversion.offset-time.valueOf())*conversion.scale}else if(time>Core.range.end){var rangeAfterEnd={start:Core.range.start,end:time};time=exports.correctTimeForHidden(Core.options.moment,Core.body.hiddenDates,rangeAfterEnd,time);conversion=Core.range.conversion(width,duration);return(time.valueOf()-conversion.offset)*conversion.scale}else{time=exports.correctTimeForHidden(Core.options.moment,Core.body.hiddenDates,Core.range,time);conversion=Core.range.conversion(width,duration);return(time.valueOf()-conversion.offset)*conversion.scale}}};exports.toTime=function(Core,x,width){if(Core.body.hiddenDates.length==0){var conversion=Core.range.conversion(width);return new Date(x/conversion.scale+conversion.offset)}else{var hiddenDuration=exports.getHiddenDurationBetween(Core.body.hiddenDates,Core.range.start,Core.range.end);var totalDuration=Core.range.end-Core.range.start-hiddenDuration;var partialDuration=totalDuration*x/width;var accumulatedHiddenDuration=exports.getAccumulatedHiddenDuration(Core.body.hiddenDates,Core.range,partialDuration);return new Date(accumulatedHiddenDuration+partialDuration+Core.range.start)}};exports.getHiddenDurationBetween=function(hiddenDates,start,end){var duration=0;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=start&&endDate<end){duration+=endDate-startDate}}return duration};exports.getHiddenDurationBeforeStart=function(hiddenDates,start,end){var duration=0;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=start&&endDate<=end){duration+=endDate-startDate}}return duration};exports.correctTimeForHidden=function(moment,hiddenDates,range,time){time=moment(time).toDate().valueOf();time-=exports.getHiddenDurationBefore(moment,hiddenDates,range,time);return time};exports.getHiddenDurationBefore=function(moment,hiddenDates,range,time){var timeOffset=0;time=moment(time).toDate().valueOf();for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=range.start&&endDate<range.end){if(time>=endDate){timeOffset+=endDate-startDate}}}return timeOffset};exports.getAccumulatedHiddenDuration=function(hiddenDates,range,requiredDuration){var hiddenDuration=0;var duration=0;var previousPoint=range.start;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=range.start&&endDate<range.end){duration+=startDate-previousPoint;previousPoint=endDate;if(duration>=requiredDuration){break}else{hiddenDuration+=endDate-startDate}}}return hiddenDuration};exports.snapAwayFromHidden=function(hiddenDates,time,direction,correctionEnabled){var isHidden=exports.isHidden(time,hiddenDates);if(isHidden.hidden==true){if(direction<0){if(correctionEnabled==true){return isHidden.startDate-(isHidden.endDate-time)-1}else{return isHidden.startDate-1}}else{if(correctionEnabled==true){return isHidden.endDate+(time-isHidden.startDate)+1}else{return isHidden.endDate+1}}}else{return time}};exports.isHidden=function(time,hiddenDates){for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(time>=startDate&&time<endDate){return{hidden:true,startDate:startDate,endDate:endDate}}}return{hidden:false,startDate:startDate,endDate:endDate}}},function(module,exports,__webpack_require__){\"use strict\";exports.onTouch=function(hammer,callback){callback.inputHandler=function(event){if(event.isFirst){callback(event)}};hammer.on(\"hammer.input\",callback.inputHandler)};exports.onRelease=function(hammer,callback){callback.inputHandler=function(event){if(event.isFinal){callback(event)}};return hammer.on(\"hammer.input\",callback.inputHandler)};exports.offTouch=function(hammer,callback){hammer.off(\"hammer.input\",callback.inputHandler)};exports.offRelease=exports.offTouch;exports.disablePreventDefaultVertically=function(pinchRecognizer){var TOUCH_ACTION_PAN_Y=\"pan-y\";pinchRecognizer.getTouchAction=function(){return[TOUCH_ACTION_PAN_Y]};return pinchRecognizer}},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var moment=__webpack_require__(9);function Item(data,conversion,options){this.id=null;this.parent=null;this.data=data;this.dom=null;this.conversion=conversion||{};this.options=options||{};this.selected=false;this.displayed=false;this.groupShowing=true;this.dirty=true;this.top=null;this.right=null;this.left=null;this.width=null;this.height=null;this.editable=null;this._updateEditStatus()}Item.prototype.stack=true;Item.prototype.select=function(){this.selected=true;this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.unselect=function(){this.selected=false;this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.setData=function(data){var groupChanged=data.group!=undefined&&this.data.group!=data.group;if(groupChanged&&this.parent!=null){this.parent.itemSet._moveToGroup(this,data.group)}if(this.parent){this.parent.stackDirty=true}var subGroupChanged=data.subgroup!=undefined&&this.data.subgroup!=data.subgroup;if(subGroupChanged&&this.parent!=null){this.parent.changeSubgroup(this,this.data.subgroup,data.subgroup)}this.data=data;this._updateEditStatus();this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.setParent=function(parent){if(this.displayed){this.hide();this.parent=parent;if(this.parent){this.show()}}else{this.parent=parent}};Item.prototype.isVisible=function(range){return false};Item.prototype.show=function(){return false};Item.prototype.hide=function(){return false};Item.prototype.redraw=function(){};Item.prototype.repositionX=function(){};Item.prototype.repositionY=function(){};Item.prototype._repaintDragCenter=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragCenter){var me=this;var dragCenter=document.createElement(\"div\");dragCenter.className=\"vis-drag-center\";dragCenter.dragCenterItem=this;var hammer=new Hammer(dragCenter);hammer.on(\"tap\",function(event){me.parent.itemSet.body.emitter.emit(\"click\",{event:event,item:me.id})});hammer.on(\"doubletap\",function(event){event.stopPropagation();me.parent.itemSet._onUpdateItem(me);me.parent.itemSet.body.emitter.emit(\"doubleClick\",{event:event,item:me.id})});if(this.dom.box){if(this.dom.dragLeft){this.dom.box.insertBefore(dragCenter,this.dom.dragLeft)}else{this.dom.box.appendChild(dragCenter)}}else if(this.dom.point){this.dom.point.appendChild(dragCenter)}this.dom.dragCenter=dragCenter}else if(!this.selected&&this.dom.dragCenter){if(this.dom.dragCenter.parentNode){this.dom.dragCenter.parentNode.removeChild(this.dom.dragCenter)}this.dom.dragCenter=null}};Item.prototype._repaintDeleteButton=function(anchor){var editable=(this.options.editable.overrideItems||this.editable==null)&&this.options.editable.remove||!this.options.editable.overrideItems&&this.editable!=null&&this.editable.remove;if(this.selected&&editable&&!this.dom.deleteButton){var me=this;var deleteButton=document.createElement(\"div\");if(this.options.rtl){deleteButton.className=\"vis-delete-rtl\"}else{deleteButton.className=\"vis-delete\"}deleteButton.title=\"Delete this item\";new Hammer(deleteButton).on(\"tap\",function(event){event.stopPropagation();me.parent.removeFromDataSet(me)});anchor.appendChild(deleteButton);this.dom.deleteButton=deleteButton}else if(!this.selected&&this.dom.deleteButton){if(this.dom.deleteButton.parentNode){this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton)}this.dom.deleteButton=null}};Item.prototype._repaintOnItemUpdateTimeTooltip=function(anchor){if(!this.options.tooltipOnItemUpdateTime)return;var editable=(this.options.editable.updateTime||this.data.editable===true)&&this.data.editable!==false;if(this.selected&&editable&&!this.dom.onItemUpdateTimeTooltip){var onItemUpdateTimeTooltip=document.createElement(\"div\");onItemUpdateTimeTooltip.className=\"vis-onUpdateTime-tooltip\";anchor.appendChild(onItemUpdateTimeTooltip);this.dom.onItemUpdateTimeTooltip=onItemUpdateTimeTooltip}else if(!this.selected&&this.dom.onItemUpdateTimeTooltip){if(this.dom.onItemUpdateTimeTooltip.parentNode){this.dom.onItemUpdateTimeTooltip.parentNode.removeChild(this.dom.onItemUpdateTimeTooltip)}this.dom.onItemUpdateTimeTooltip=null}if(this.dom.onItemUpdateTimeTooltip){this.dom.onItemUpdateTimeTooltip.style.visibility=this.parent.itemSet.touchParams.itemIsDragging?\"visible\":\"hidden\";if(this.options.rtl){this.dom.onItemUpdateTimeTooltip.style.right=this.dom.content.style.right}else{this.dom.onItemUpdateTimeTooltip.style.left=this.dom.content.style.left}var tooltipOffset=50;var scrollTop=this.parent.itemSet.body.domProps.scrollTop;var itemDistanceFromTop;if(this.options.orientation.item==\"top\"){itemDistanceFromTop=this.top}else{itemDistanceFromTop=this.parent.height-this.top-this.height}var isCloseToTop=itemDistanceFromTop+this.parent.top-tooltipOffset<-scrollTop;if(isCloseToTop){this.dom.onItemUpdateTimeTooltip.style.bottom=\"\";this.dom.onItemUpdateTimeTooltip.style.top=this.height+2+\"px\"}else{this.dom.onItemUpdateTimeTooltip.style.top=\"\";this.dom.onItemUpdateTimeTooltip.style.bottom=this.height+2+\"px\"}var content;var templateFunction;if(this.options.tooltipOnItemUpdateTime&&this.options.tooltipOnItemUpdateTime.template){templateFunction=this.options.tooltipOnItemUpdateTime.template.bind(this);content=templateFunction(this.data)}else{content=\"start: \"+moment(this.data.start).format(\"MM/DD/YYYY hh:mm\");if(this.data.end){content+=\"<br> end: \"+moment(this.data.end).format(\"MM/DD/YYYY hh:mm\")}}this.dom.onItemUpdateTimeTooltip.innerHTML=content}};Item.prototype._updateContents=function(element){var content;var changed;var templateFunction;var itemVisibleFrameContent;var visibleFrameTemplateFunction;var itemData=this.parent.itemSet.itemsData.get(this.id);var frameElement=this.dom.box||this.dom.point;var itemVisibleFrameContentElement=frameElement.getElementsByClassName(\"vis-item-visible-frame\")[0];if(this.options.visibleFrameTemplate){visibleFrameTemplateFunction=this.options.visibleFrameTemplate.bind(this);itemVisibleFrameContent=visibleFrameTemplateFunction(itemData,frameElement)}else{itemVisibleFrameContent=\"\"}if(itemVisibleFrameContentElement){if(itemVisibleFrameContent instanceof Object&&!(itemVisibleFrameContent instanceof Element)){visibleFrameTemplateFunction(itemData,itemVisibleFrameContentElement)}else{changed=this._contentToString(this.itemVisibleFrameContent)!==this._contentToString(itemVisibleFrameContent);if(changed){if(itemVisibleFrameContent instanceof Element){itemVisibleFrameContentElement.innerHTML=\"\";itemVisibleFrameContentElement.appendChild(itemVisibleFrameContent)}else if(itemVisibleFrameContent!=undefined){itemVisibleFrameContentElement.innerHTML=itemVisibleFrameContent}else{if(!(this.data.type==\"background\"&&this.data.content===undefined)){throw new Error('Property \"content\" missing in item '+this.id)}}this.itemVisibleFrameContent=itemVisibleFrameContent}}}if(this.options.template){templateFunction=this.options.template.bind(this);content=templateFunction(itemData,element,this.data)}else{content=this.data.content}if(content instanceof Object&&!(content instanceof Element)){templateFunction(itemData,element)}else{changed=this._contentToString(this.content)!==this._contentToString(content);if(changed){if(content instanceof Element){element.innerHTML=\"\";element.appendChild(content)}else if(content!=undefined){element.innerHTML=content}else{if(!(this.data.type==\"background\"&&this.data.content===undefined)){throw new Error('Property \"content\" missing in item '+this.id)}}this.content=content}}};Item.prototype._updateDataAttributes=function(element){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var attributes=[];if(Array.isArray(this.options.dataAttributes)){attributes=this.options.dataAttributes}else if(this.options.dataAttributes==\"all\"){attributes=(0,_keys2[\"default\"])(this.data)}else{return}for(var i=0;i<attributes.length;i++){var name=attributes[i];var value=this.data[name];if(value!=null){element.setAttribute(\"data-\"+name,value)}else{element.removeAttribute(\"data-\"+name)}}}};Item.prototype._updateStyle=function(element){if(this.style){util.removeCssText(element,this.style);this.style=null}if(this.data.style){util.addCssText(element,this.data.style);this.style=this.data.style}};Item.prototype._contentToString=function(content){if(typeof content===\"string\")return content;if(content&&\"outerHTML\"in content)return content.outerHTML;return content};Item.prototype._updateEditStatus=function(){if(this.options){if(typeof this.options.editable===\"boolean\"){this.editable={updateTime:this.options.editable,updateGroup:this.options.editable,remove:this.options.editable}}else if((0,_typeof3[\"default\"])(this.options.editable)===\"object\"){this.editable={};util.selectiveExtend([\"updateTime\",\"updateGroup\",\"remove\"],this.editable,this.options.editable)}}if(!this.options||!this.options.editable||this.options.editable.overrideItems!==true){if(this.data){if(typeof this.data.editable===\"boolean\"){this.editable={updateTime:this.data.editable,updateGroup:this.data.editable,remove:this.data.editable}}else if((0,_typeof3[\"default\"])(this.data.editable)===\"object\"){this.editable={};util.selectiveExtend([\"updateTime\",\"updateGroup\",\"remove\"],this.editable,this.data.editable)}}}};Item.prototype.getWidthLeft=function(){return 0};Item.prototype.getWidthRight=function(){return 0};Item.prototype.getTitle=function(){return this.data.title};module.exports=Item},function(module,exports){module.exports=function(bitmap,value){return{enumerable:!(bitmap&1),configurable:!(bitmap&2),writable:!(bitmap&4),value:value}}},function(module,exports){var id=0;var px=Math.random();module.exports=function(key){return\"Symbol(\".concat(key===undefined?\"\":key,\")_\",(++id+px).toString(36))}},function(module,exports,__webpack_require__){var defined=__webpack_require__(51);module.exports=function(it){return Object(defined(it))}},function(module,exports){exports.f={}.propertyIsEnumerable},function(module,exports,__webpack_require__){\"use strict\";function Queue(options){this.delay=null;this.max=Infinity;this._queue=[];this._timeout=null;this._extended=null;this.setOptions(options)}Queue.prototype.setOptions=function(options){if(options&&typeof options.delay!==\"undefined\"){this.delay=options.delay}if(options&&typeof options.max!==\"undefined\"){this.max=options.max}this._flushIfNeeded()};Queue.extend=function(object,options){var queue=new Queue(options);if(object.flush!==undefined){throw new Error(\"Target object already has a property flush\")}object.flush=function(){queue.flush()};var methods=[{name:\"flush\",original:undefined}];if(options&&options.replace){for(var i=0;i<options.replace.length;i++){var name=options.replace[i];methods.push({name:name,original:object[name]});queue.replace(object,name)}}queue._extended={object:object,methods:methods};return queue};Queue.prototype.destroy=function(){this.flush();if(this._extended){var object=this._extended.object;var methods=this._extended.methods;for(var i=0;i<methods.length;i++){var method=methods[i];if(method.original){object[method.name]=method.original}else{delete object[method.name]}}this._extended=null}};Queue.prototype.replace=function(object,method){var me=this;var original=object[method];if(!original){throw new Error(\"Method \"+method+\" undefined\")}object[method]=function(){var args=[];for(var i=0;i<arguments.length;i++){args[i]=arguments[i]}me.queue({args:args,fn:original,context:this})}};Queue.prototype.queue=function(entry){if(typeof entry===\"function\"){this._queue.push({fn:entry})}else{this._queue.push(entry)}this._flushIfNeeded()};Queue.prototype._flushIfNeeded=function(){\nif(this._queue.length>this.max){this.flush()}clearTimeout(this._timeout);if(this.queue.length>0&&typeof this.delay===\"number\"){var me=this;this._timeout=setTimeout(function(){me.flush()},this.delay)}};Queue.prototype.flush=function(){while(this._queue.length>0){var entry=this._queue.shift();entry.fn.apply(entry.context||entry.fn,entry.args||[])}};module.exports=Queue},function(module,exports){module.exports=Emitter;function Emitter(obj){if(obj)return mixin(obj)}function mixin(obj){for(var key in Emitter.prototype){obj[key]=Emitter.prototype[key]}return obj}Emitter.prototype.on=Emitter.prototype.addEventListener=function(event,fn){this._callbacks=this._callbacks||{};(this._callbacks[event]=this._callbacks[event]||[]).push(fn);return this};Emitter.prototype.once=function(event,fn){var self=this;this._callbacks=this._callbacks||{};function on(){self.off(event,on);fn.apply(this,arguments)}on.fn=fn;this.on(event,on);return this};Emitter.prototype.off=Emitter.prototype.removeListener=Emitter.prototype.removeAllListeners=Emitter.prototype.removeEventListener=function(event,fn){this._callbacks=this._callbacks||{};if(0==arguments.length){this._callbacks={};return this}var callbacks=this._callbacks[event];if(!callbacks)return this;if(1==arguments.length){delete this._callbacks[event];return this}var cb;for(var i=0;i<callbacks.length;i++){cb=callbacks[i];if(cb===fn||cb.fn===fn){callbacks.splice(i,1);break}}return this};Emitter.prototype.emit=function(event){this._callbacks=this._callbacks||{};var args=[].slice.call(arguments,1),callbacks=this._callbacks[event];if(callbacks){callbacks=callbacks.slice(0);for(var i=0,len=callbacks.length;i<len;++i){callbacks[i].apply(this,args)}}return this};Emitter.prototype.listeners=function(event){this._callbacks=this._callbacks||{};return this._callbacks[event]||[]};Emitter.prototype.hasListeners=function(event){return!!this.listeners(event).length}},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Component=__webpack_require__(16);var TimeStep=__webpack_require__(66);var DateUtil=__webpack_require__(36);var moment=__webpack_require__(9);function TimeAxis(body,options){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}};this.props={range:{start:0,end:0,minimumStep:0},lineTop:0};this.defaultOptions={orientation:{axis:\"bottom\"},showMinorLabels:true,showMajorLabels:true,maxMinorChars:7,format:TimeStep.FORMAT,moment:moment,timeAxis:null};this.options=util.extend({},this.defaultOptions);this.body=body;this._create();this.setOptions(options)}TimeAxis.prototype=new Component;TimeAxis.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"showMinorLabels\",\"showMajorLabels\",\"maxMinorChars\",\"hiddenDates\",\"timeAxis\",\"moment\",\"rtl\"],this.options,options);util.selectiveDeepExtend([\"format\"],this.options,options);if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation.axis=options.orientation}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"&&\"axis\"in options.orientation){this.options.orientation.axis=options.orientation.axis}}if(\"locale\"in options){if(typeof moment.locale===\"function\"){moment.locale(options.locale)}else{moment.lang(options.locale)}}}};TimeAxis.prototype._create=function(){this.dom.foreground=document.createElement(\"div\");this.dom.background=document.createElement(\"div\");this.dom.foreground.className=\"vis-time-axis vis-foreground\";this.dom.background.className=\"vis-time-axis vis-background\"};TimeAxis.prototype.destroy=function(){if(this.dom.foreground.parentNode){this.dom.foreground.parentNode.removeChild(this.dom.foreground)}if(this.dom.background.parentNode){this.dom.background.parentNode.removeChild(this.dom.background)}this.body=null};TimeAxis.prototype.redraw=function(){var props=this.props;var foreground=this.dom.foreground;var background=this.dom.background;var parent=this.options.orientation.axis==\"top\"?this.body.dom.top:this.body.dom.bottom;var parentChanged=foreground.parentNode!==parent;this._calculateCharSize();var showMinorLabels=this.options.showMinorLabels&&this.options.orientation.axis!==\"none\";var showMajorLabels=this.options.showMajorLabels&&this.options.orientation.axis!==\"none\";props.minorLabelHeight=showMinorLabels?props.minorCharHeight:0;props.majorLabelHeight=showMajorLabels?props.majorCharHeight:0;props.height=props.minorLabelHeight+props.majorLabelHeight;props.width=foreground.offsetWidth;props.minorLineHeight=this.body.domProps.root.height-props.majorLabelHeight-(this.options.orientation.axis==\"top\"?this.body.domProps.bottom.height:this.body.domProps.top.height);props.minorLineWidth=1;props.majorLineHeight=props.minorLineHeight+props.majorLabelHeight;props.majorLineWidth=1;var foregroundNextSibling=foreground.nextSibling;var backgroundNextSibling=background.nextSibling;foreground.parentNode&&foreground.parentNode.removeChild(foreground);background.parentNode&&background.parentNode.removeChild(background);foreground.style.height=this.props.height+\"px\";this._repaintLabels();if(foregroundNextSibling){parent.insertBefore(foreground,foregroundNextSibling)}else{parent.appendChild(foreground)}if(backgroundNextSibling){this.body.dom.backgroundVertical.insertBefore(background,backgroundNextSibling)}else{this.body.dom.backgroundVertical.appendChild(background)}return this._isResized()||parentChanged};TimeAxis.prototype._repaintLabels=function(){var orientation=this.options.orientation.axis;var start=util.convert(this.body.range.start,\"Number\");var end=util.convert(this.body.range.end,\"Number\");var timeLabelsize=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf();var minimumStep=timeLabelsize-DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,timeLabelsize);minimumStep-=this.body.util.toTime(0).valueOf();var step=new TimeStep(new Date(start),new Date(end),minimumStep,this.body.hiddenDates,this.options);step.setMoment(this.options.moment);if(this.options.format){step.setFormat(this.options.format)}if(this.options.timeAxis){step.setScale(this.options.timeAxis)}this.step=step;var dom=this.dom;dom.redundant.lines=dom.lines;dom.redundant.majorTexts=dom.majorTexts;dom.redundant.minorTexts=dom.minorTexts;dom.lines=[];dom.majorTexts=[];dom.minorTexts=[];var current;var next;var x;var xNext;var isMajor;var nextIsMajor;var showMinorGrid;var width=0,prevWidth;var line;var labelMinor;var xFirstMajorLabel=undefined;var count=0;var MAX=1e3;var className;step.start();next=step.getCurrent();xNext=this.body.util.toScreen(next);while(step.hasNext()&&count<MAX){count++;isMajor=step.isMajor();className=step.getClassName();labelMinor=step.getLabelMinor();current=next;x=xNext;step.next();next=step.getCurrent();nextIsMajor=step.isMajor();xNext=this.body.util.toScreen(next);prevWidth=width;width=xNext-x;switch(step.scale){case\"week\":showMinorGrid=true;break;default:showMinorGrid=width>=prevWidth*.4;break}if(this.options.showMinorLabels&&showMinorGrid){var label=this._repaintMinorText(x,labelMinor,orientation,className);label.style.width=width+\"px\"}if(isMajor&&this.options.showMajorLabels){if(x>0){if(xFirstMajorLabel==undefined){xFirstMajorLabel=x}label=this._repaintMajorText(x,step.getLabelMajor(),orientation,className)}line=this._repaintMajorLine(x,width,orientation,className)}else{if(showMinorGrid){line=this._repaintMinorLine(x,width,orientation,className)}else{if(line){line.style.width=parseInt(line.style.width)+width+\"px\"}}}}if(count===MAX&&!warnedForOverflow){console.warn(\"Something is wrong with the Timeline scale. Limited drawing of grid lines to \"+MAX+\" lines.\");warnedForOverflow=true}if(this.options.showMajorLabels){var leftTime=this.body.util.toTime(0),leftText=step.getLabelMajor(leftTime),widthText=leftText.length*(this.props.majorCharWidth||10)+10;if(xFirstMajorLabel==undefined||widthText<xFirstMajorLabel){this._repaintMajorText(0,leftText,orientation,className)}}util.forEach(this.dom.redundant,function(arr){while(arr.length){var elem=arr.pop();if(elem&&elem.parentNode){elem.parentNode.removeChild(elem)}}})};TimeAxis.prototype._repaintMinorText=function(x,text,orientation,className){var label=this.dom.redundant.minorTexts.shift();if(!label){var content=document.createTextNode(\"\");label=document.createElement(\"div\");label.appendChild(content);this.dom.foreground.appendChild(label)}this.dom.minorTexts.push(label);label.innerHTML=text;label.style.top=orientation==\"top\"?this.props.majorLabelHeight+\"px\":\"0\";if(this.options.rtl){label.style.left=\"\";label.style.right=x+\"px\"}else{label.style.left=x+\"px\"}label.className=\"vis-text vis-minor \"+className;return label};TimeAxis.prototype._repaintMajorText=function(x,text,orientation,className){var label=this.dom.redundant.majorTexts.shift();if(!label){var content=document.createElement(\"div\");label=document.createElement(\"div\");label.appendChild(content);this.dom.foreground.appendChild(label)}label.childNodes[0].innerHTML=text;label.className=\"vis-text vis-major \"+className;label.style.top=orientation==\"top\"?\"0\":this.props.minorLabelHeight+\"px\";if(this.options.rtl){label.style.left=\"\";label.style.right=x+\"px\"}else{label.style.left=x+\"px\"}this.dom.majorTexts.push(label);return label};TimeAxis.prototype._repaintMinorLine=function(x,width,orientation,className){var line=this.dom.redundant.lines.shift();if(!line){line=document.createElement(\"div\");this.dom.background.appendChild(line)}this.dom.lines.push(line);var props=this.props;if(orientation==\"top\"){line.style.top=props.majorLabelHeight+\"px\"}else{line.style.top=this.body.domProps.top.height+\"px\"}line.style.height=props.minorLineHeight+\"px\";if(this.options.rtl){line.style.left=\"\";line.style.right=x-props.minorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical-rtl vis-minor \"+className}else{line.style.left=x-props.minorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical vis-minor \"+className}line.style.width=width+\"px\";return line};TimeAxis.prototype._repaintMajorLine=function(x,width,orientation,className){var line=this.dom.redundant.lines.shift();if(!line){line=document.createElement(\"div\");this.dom.background.appendChild(line)}this.dom.lines.push(line);var props=this.props;if(orientation==\"top\"){line.style.top=\"0\"}else{line.style.top=this.body.domProps.top.height+\"px\"}if(this.options.rtl){line.style.left=\"\";line.style.right=x-props.majorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical-rtl vis-major \"+className}else{line.style.left=x-props.majorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical vis-major \"+className}line.style.height=props.majorLineHeight+\"px\";line.style.width=width+\"px\";return line};TimeAxis.prototype._calculateCharSize=function(){if(!this.dom.measureCharMinor){this.dom.measureCharMinor=document.createElement(\"DIV\");this.dom.measureCharMinor.className=\"vis-text vis-minor vis-measure\";this.dom.measureCharMinor.style.position=\"absolute\";this.dom.measureCharMinor.appendChild(document.createTextNode(\"0\"));this.dom.foreground.appendChild(this.dom.measureCharMinor)}this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight;this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth;if(!this.dom.measureCharMajor){this.dom.measureCharMajor=document.createElement(\"DIV\");this.dom.measureCharMajor.className=\"vis-text vis-major vis-measure\";this.dom.measureCharMajor.style.position=\"absolute\";this.dom.measureCharMajor.appendChild(document.createTextNode(\"0\"));this.dom.foreground.appendChild(this.dom.measureCharMajor)}this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight;this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth};var warnedForOverflow=false;module.exports=TimeAxis},function(module,exports,__webpack_require__){\"use strict\";var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var Component=__webpack_require__(16);var moment=__webpack_require__(9);var locales=__webpack_require__(98);function CustomTime(body,options){this.body=body;this.defaultOptions={moment:moment,locales:locales,locale:\"en\",id:undefined,title:undefined};this.options=util.extend({},this.defaultOptions);if(options&&options.time){this.customTime=options.time}else{this.customTime=new Date}this.eventParams={};this.setOptions(options);this._create()}CustomTime.prototype=new Component;CustomTime.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"moment\",\"locale\",\"locales\",\"id\"],this.options,options)}};CustomTime.prototype._create=function(){var bar=document.createElement(\"div\");bar[\"custom-time\"]=this;bar.className=\"vis-custom-time \"+(this.options.id||\"\");bar.style.position=\"absolute\";bar.style.top=\"0px\";bar.style.height=\"100%\";this.bar=bar;var drag=document.createElement(\"div\");drag.style.position=\"relative\";drag.style.top=\"0px\";drag.style.left=\"-10px\";drag.style.height=\"100%\";drag.style.width=\"20px\";function onMouseWheel(e){this.body.range._onMouseWheel(e)}if(drag.addEventListener){drag.addEventListener(\"mousewheel\",onMouseWheel.bind(this),false);drag.addEventListener(\"DOMMouseScroll\",onMouseWheel.bind(this),false)}else{drag.attachEvent(\"onmousewheel\",onMouseWheel.bind(this))}bar.appendChild(drag);this.hammer=new Hammer(drag);this.hammer.on(\"panstart\",this._onDragStart.bind(this));this.hammer.on(\"panmove\",this._onDrag.bind(this));this.hammer.on(\"panend\",this._onDragEnd.bind(this));this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL})};CustomTime.prototype.destroy=function(){this.hide();this.hammer.destroy();this.hammer=null;this.body=null};CustomTime.prototype.redraw=function(){var parent=this.body.dom.backgroundVertical;if(this.bar.parentNode!=parent){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}parent.appendChild(this.bar)}var x=this.body.util.toScreen(this.customTime);var locale=this.options.locales[this.options.locale];if(!locale){if(!this.warned){console.log(\"WARNING: options.locales['\"+this.options.locale+\"'] not found. See http://visjs.org/docs/timeline/#Localization\");this.warned=true}locale=this.options.locales[\"en\"]}var title=this.options.title;if(title===undefined){title=locale.time+\": \"+this.options.moment(this.customTime).format(\"dddd, MMMM Do YYYY, H:mm:ss\");title=title.charAt(0).toUpperCase()+title.substring(1)}else if(typeof title===\"function\"){title=title.call(this.customTime)}this.bar.style.left=x+\"px\";this.bar.title=title;return false};CustomTime.prototype.hide=function(){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}};CustomTime.prototype.setCustomTime=function(time){this.customTime=util.convert(time,\"Date\");this.redraw()};CustomTime.prototype.getCustomTime=function(){return new Date(this.customTime.valueOf())};CustomTime.prototype.setCustomTitle=function(title){this.options.title=title};CustomTime.prototype._onDragStart=function(event){this.eventParams.dragging=true;this.eventParams.customTime=this.customTime;event.stopPropagation()};CustomTime.prototype._onDrag=function(event){if(!this.eventParams.dragging)return;var x=this.body.util.toScreen(this.eventParams.customTime)+event.deltaX;var time=this.body.util.toTime(x);this.setCustomTime(time);this.body.emitter.emit(\"timechange\",{id:this.options.id,time:new Date(this.customTime.valueOf()),event:event});event.stopPropagation()};CustomTime.prototype._onDragEnd=function(event){if(!this.eventParams.dragging)return;this.body.emitter.emit(\"timechanged\",{id:this.options.id,time:new Date(this.customTime.valueOf()),event:event});event.stopPropagation()};CustomTime.customTimeFromTarget=function(event){var target=event.target;while(target){if(target.hasOwnProperty(\"custom-time\")){return target[\"custom-time\"]}target=target.parentNode}return null};module.exports=CustomTime},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Label=__webpack_require__(117)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var Box=__webpack_require__(193)[\"default\"];var Circle=__webpack_require__(200)[\"default\"];var CircularImage=__webpack_require__(201)[\"default\"];var Database=__webpack_require__(202)[\"default\"];var Diamond=__webpack_require__(203)[\"default\"];var Dot=__webpack_require__(204)[\"default\"];var Ellipse=__webpack_require__(205)[\"default\"];var Icon=__webpack_require__(206)[\"default\"];var Image=__webpack_require__(207)[\"default\"];var Square=__webpack_require__(208)[\"default\"];var Hexagon=__webpack_require__(209)[\"default\"];var Star=__webpack_require__(210)[\"default\"];var Text=__webpack_require__(211)[\"default\"];var Triangle=__webpack_require__(212)[\"default\"];var TriangleDown=__webpack_require__(213)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var Node=function(){function Node(options,body,imagelist,grouplist,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Node);this.options=util.bridgeObject(globalOptions);this.globalOptions=globalOptions;this.defaultOptions=defaultOptions;this.body=body;this.edges=[];this.id=undefined;this.imagelist=imagelist;this.grouplist=grouplist;this.x=undefined;this.y=undefined;this.baseSize=this.options.size;this.baseFontSize=this.options.font.size;this.predefinedPosition=false;this.selected=false;this.hover=false;this.labelModule=new Label(this.body,this.options,false);this.setOptions(options)}(0,_createClass3[\"default\"])(Node,[{key:\"attachEdge\",value:function attachEdge(edge){if(this.edges.indexOf(edge)===-1){this.edges.push(edge)}}},{key:\"detachEdge\",value:function detachEdge(edge){var index=this.edges.indexOf(edge);if(index!=-1){this.edges.splice(index,1)}}},{key:\"setOptions\",value:function setOptions(options){var currentShape=this.options.shape;if(!options){return}if(options.id!==undefined){this.id=options.id}if(this.id===undefined){throw new Error(\"Node must have an id\")}Node.checkMass(options,this.id);if(options.x!==undefined){if(options.x===null){this.x=undefined;this.predefinedPosition=false}else{this.x=parseInt(options.x);this.predefinedPosition=true}}if(options.y!==undefined){if(options.y===null){this.y=undefined;this.predefinedPosition=false}else{this.y=parseInt(options.y);this.predefinedPosition=true}}if(options.size!==undefined){this.baseSize=options.size}if(options.value!==undefined){options.value=parseFloat(options.value)}Node.parseOptions(this.options,options,true,this.globalOptions,this.grouplist);var pile=[options,this.options,this.defaultOptions];this.chooser=ComponentUtil.choosify(\"node\",pile);this._load_images();this.updateLabelModule(options);this.updateShape(currentShape);return options.hidden!==undefined||options.physics!==undefined}},{key:\"_load_images\",value:function _load_images(){if(this.options.shape!==\"circularImage\"&&this.options.shape!==\"image\"){return}if(this.options.image===undefined){throw new Error(\"Option image must be defined for node type '\"+this.options.shape+\"'\")}if(this.imagelist===undefined){throw new Error(\"Internal Error: No images provided\")}if(typeof this.options.image===\"string\"){this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage,this.id)}else{if(this.options.image.unselected===undefined){throw new Error(\"No unselected image provided\")}this.imageObj=this.imagelist.load(this.options.image.unselected,this.options.brokenImage,this.id);if(this.options.image.selected!==undefined){this.imageObjAlt=this.imagelist.load(this.options.image.selected,this.options.brokenImage,this.id)}else{this.imageObjAlt=undefined}}}},{key:\"getFormattingValues\",value:function getFormattingValues(){var values={color:this.options.color.background,borderWidth:this.options.borderWidth,borderColor:this.options.color.border,size:this.options.size,borderDashes:this.options.shapeProperties.borderDashes,borderRadius:this.options.shapeProperties.borderRadius,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y};if(this.selected||this.hover){if(this.chooser===true){if(this.selected){values.borderWidth*=2;values.color=this.options.color.highlight.background;values.borderColor=this.options.color.highlight.border;values.shadow=this.options.shadow.enabled}else if(this.hover){values.color=this.options.color.hover.background;values.borderColor=this.options.color.hover.border;values.shadow=this.options.shadow.enabled}}else if(typeof this.chooser===\"function\"){this.chooser(values,this.options.id,this.selected,this.hover);if(values.shadow===false){if(values.shadowColor!==this.options.shadow.color||values.shadowSize!==this.options.shadow.size||values.shadowX!==this.options.shadow.x||values.shadowY!==this.options.shadow.y){values.shadow=true}}}}else{values.shadow=this.options.shadow.enabled}return values}},{key:\"updateLabelModule\",value:function updateLabelModule(options){if(this.options.label===undefined||this.options.label===null){this.options.label=\"\"}Node.updateGroupOptions(this.options,options,this.grouplist);var currentGroup=this.grouplist.get(this.options.group,false);var pile=[options,this.options,currentGroup,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,pile);if(this.labelModule.baseSize!==undefined){this.baseFontSize=this.labelModule.baseSize}}},{key:\"updateShape\",value:function updateShape(currentShape){if(currentShape===this.options.shape&&this.shape){this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt)}else{switch(this.options.shape){case\"box\":this.shape=new Box(this.options,this.body,this.labelModule);break;case\"circle\":this.shape=new Circle(this.options,this.body,this.labelModule);break;case\"circularImage\":this.shape=new CircularImage(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case\"database\":this.shape=new Database(this.options,this.body,this.labelModule);break;case\"diamond\":this.shape=new Diamond(this.options,this.body,this.labelModule);break;case\"dot\":this.shape=new Dot(this.options,this.body,this.labelModule);break;case\"ellipse\":this.shape=new Ellipse(this.options,this.body,this.labelModule);break;case\"icon\":this.shape=new Icon(this.options,this.body,this.labelModule);break;case\"image\":this.shape=new Image(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case\"square\":this.shape=new Square(this.options,this.body,this.labelModule);break;case\"hexagon\":this.shape=new Hexagon(this.options,this.body,this.labelModule);break;case\"star\":this.shape=new Star(this.options,this.body,this.labelModule);break;case\"text\":this.shape=new Text(this.options,this.body,this.labelModule);break;case\"triangle\":this.shape=new Triangle(this.options,this.body,this.labelModule);break;case\"triangleDown\":this.shape=new TriangleDown(this.options,this.body,this.labelModule);break;default:this.shape=new Ellipse(this.options,this.body,this.labelModule);break}}this.needsRefresh()}},{key:\"select\",value:function select(){this.selected=true;this.needsRefresh()}},{key:\"unselect\",value:function unselect(){this.selected=false;this.needsRefresh()}},{key:\"needsRefresh\",value:function needsRefresh(){this.shape.refreshNeeded=true}},{key:\"getTitle\",value:function getTitle(){return this.options.title}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this.shape.distanceToBorder(ctx,angle)}},{key:\"isFixed\",value:function isFixed(){return this.options.fixed.x&&this.options.fixed.y}},{key:\"isSelected\",value:function isSelected(){return this.selected}},{key:\"getValue\",value:function getValue(){return this.options.value}},{key:\"getLabelSize\",value:function getLabelSize(){return this.labelModule.size()}},{key:\"setValueRange\",value:function setValueRange(min,max,total){if(this.options.value!==undefined){var scale=this.options.scaling.customScalingFunction(min,max,total,this.options.value);var sizeDiff=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===true){var fontDiff=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+scale*fontDiff}this.options.size=this.options.scaling.min+scale*sizeDiff}else{this.options.size=this.baseSize;this.options.font.size=this.baseFontSize}this.updateLabelModule()}},{key:\"draw\",value:function draw(ctx){var values=this.getFormattingValues();this.shape.draw(ctx,this.x,this.y,this.selected,this.hover,values)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(ctx){this.shape.updateBoundingBox(this.x,this.y,ctx)}},{key:\"resize\",value:function resize(ctx){var values=this.getFormattingValues();this.shape.resize(ctx,this.selected,this.hover,values)}},{key:\"getItemsOnPoint\",value:function getItemsOnPoint(point){var ret=[];if(this.labelModule.visible()){if(ComponentUtil.pointInRect(this.labelModule.getSize(),point)){ret.push({nodeId:this.id,labelId:0})}}if(ComponentUtil.pointInRect(this.shape.boundingBox,point)){ret.push({nodeId:this.id})}return ret}},{key:\"isOverlappingWith\",value:function isOverlappingWith(obj){return this.shape.left<obj.right&&this.shape.left+this.shape.width>obj.left&&this.shape.top<obj.bottom&&this.shape.top+this.shape.height>obj.top}},{key:\"isBoundingBoxOverlappingWith\",value:function isBoundingBoxOverlappingWith(obj){return this.shape.boundingBox.left<obj.right&&this.shape.boundingBox.right>obj.left&&this.shape.boundingBox.top<obj.bottom&&this.shape.boundingBox.bottom>obj.top}}],[{key:\"updateGroupOptions\",value:function updateGroupOptions(parentOptions,newOptions,groupList){if(groupList===undefined)return;var group=parentOptions.group;if(newOptions!==undefined&&newOptions.group!==undefined&&group!==newOptions.group){throw new Error(\"updateGroupOptions: group values in options don't match.\")}var hasGroup=typeof group===\"number\"||typeof group===\"string\"&&group!=\"\";if(!hasGroup)return;var groupObj=groupList.get(group);util.selectiveNotDeepExtend([\"font\"],parentOptions,groupObj);parentOptions.color=util.parseColor(parentOptions.color)}},{key:\"parseOptions\",value:function parseOptions(parentOptions,newOptions){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var groupList=arguments[4];var fields=[\"color\",\"fixed\",\"shadow\"];util.selectiveNotDeepExtend(fields,parentOptions,newOptions,allowDeletion);Node.checkMass(newOptions);util.mergeOptions(parentOptions,newOptions,\"shadow\",globalOptions);if(newOptions.color!==undefined&&newOptions.color!==null){var parsedColor=util.parseColor(newOptions.color);util.fillIfDefined(parentOptions.color,parsedColor)}else if(allowDeletion===true&&newOptions.color===null){parentOptions.color=util.bridgeObject(globalOptions.color)}if(newOptions.fixed!==undefined&&newOptions.fixed!==null){if(typeof newOptions.fixed===\"boolean\"){parentOptions.fixed.x=newOptions.fixed;parentOptions.fixed.y=newOptions.fixed}else{if(newOptions.fixed.x!==undefined&&typeof newOptions.fixed.x===\"boolean\"){parentOptions.fixed.x=newOptions.fixed.x}if(newOptions.fixed.y!==undefined&&typeof newOptions.fixed.y===\"boolean\"){parentOptions.fixed.y=newOptions.fixed.y}}}if(allowDeletion===true&&newOptions.font===null){parentOptions.font=util.bridgeObject(globalOptions.font)}Node.updateGroupOptions(parentOptions,newOptions,groupList);if(newOptions.scaling!==undefined){util.mergeOptions(parentOptions.scaling,newOptions.scaling,\"label\",globalOptions.scaling)}}},{key:\"checkMass\",value:function checkMass(options,id){if(options.mass!==undefined&&options.mass<=0){var strId=\"\";if(id!==undefined){strId=\" in node id: \"+id}console.log(\"%cNegative or zero mass disallowed\"+strId+\", setting mass to 1.\",printStyle);options.mass=1}}}]);return Node}();exports[\"default\"]=Node},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ComponentUtil=function(){function ComponentUtil(){(0,_classCallCheck3[\"default\"])(this,ComponentUtil)}(0,_createClass3[\"default\"])(ComponentUtil,null,[{key:\"choosify\",value:function choosify(subOption,pile){var allowed=[\"node\",\"edge\",\"label\"];var value=true;var chosen=util.topMost(pile,\"chosen\");if(typeof chosen===\"boolean\"){value=chosen}else if((typeof chosen===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(chosen))===\"object\"){if(allowed.indexOf(subOption)===-1){throw new Error(\"choosify: subOption '\"+subOption+\"' should be one of \"+\"'\"+allowed.join(\"', '\")+\"'\")}var chosenEdge=util.topMost(pile,[\"chosen\",subOption]);if(typeof chosenEdge===\"boolean\"||typeof chosenEdge===\"function\"){value=chosenEdge}}return value}},{key:\"pointInRect\",value:function pointInRect(rect,point,rotationPoint){if(rect.width<=0||rect.height<=0){return false}if(rotationPoint!==undefined){var tmp={x:point.x-rotationPoint.x,y:point.y-rotationPoint.y};if(rotationPoint.angle!==0){var angle=-rotationPoint.angle;var tmp2={x:Math.cos(angle)*tmp.x-Math.sin(angle)*tmp.y,y:Math.sin(angle)*tmp.x+Math.cos(angle)*tmp.y};point=tmp2}else{point=tmp}}var right=rect.x+rect.width;var bottom=rect.y+rect.width;return rect.left<point.x&&right>point.x&&rect.top<point.y&&bottom>point.y}},{key:\"isValidLabel\",value:function isValidLabel(text){return typeof text===\"string\"&&text!==\"\"}}]);return ComponentUtil}();exports[\"default\"]=ComponentUtil},function(module,exports,__webpack_require__){__webpack_require__(125);var global=__webpack_require__(18);var hide=__webpack_require__(26);var Iterators=__webpack_require__(31);var TO_STRING_TAG=__webpack_require__(13)(\"toStringTag\");var DOMIterables=(\"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,\"+\"DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,\"+\"MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,\"+\"SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,\"+\"TextTrackList,TouchList\").split(\",\");for(var i=0;i<DOMIterables.length;i++){var NAME=DOMIterables[i];var Collection=global[NAME];var proto=Collection&&Collection.prototype;if(proto&&!proto[TO_STRING_TAG])hide(proto,TO_STRING_TAG,NAME);Iterators[NAME]=Iterators.Array}},function(module,exports){var toString={}.toString;module.exports=function(it){return toString.call(it).slice(8,-1)}},function(module,exports){module.exports=function(it){if(it==undefined)throw TypeError(\"Can't call method on  \"+it);return it}},function(module,exports){module.exports=true},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);module.exports=function(it,S){if(!isObject(it))return it;var fn,val;if(S&&typeof(fn=it.toString)==\"function\"&&!isObject(val=fn.call(it)))return val;if(typeof(fn=it.valueOf)==\"function\"&&!isObject(val=fn.call(it)))return val;if(!S&&typeof(fn=it.toString)==\"function\"&&!isObject(val=fn.call(it)))return val;throw TypeError(\"Can't convert object to primitive value\")}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var dPs=__webpack_require__(130);var enumBugKeys=__webpack_require__(58);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\")\n;var Empty=function(){};var PROTOTYPE=\"prototype\";var createDict=function(){var iframe=__webpack_require__(82)(\"iframe\");var i=enumBugKeys.length;var lt=\"<\";var gt=\">\";var iframeDocument;iframe.style.display=\"none\";__webpack_require__(134).appendChild(iframe);iframe.src=\"javascript:\";iframeDocument=iframe.contentWindow.document;iframeDocument.open();iframeDocument.write(lt+\"script\"+gt+\"document.F=Object\"+lt+\"/script\"+gt);iframeDocument.close();createDict=iframeDocument.F;while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];return createDict()};module.exports=Object.create||function create(O,Properties){var result;if(O!==null){Empty[PROTOTYPE]=anObject(O);result=new Empty;Empty[PROTOTYPE]=null;result[IE_PROTO]=O}else result=createDict();return Properties===undefined?result:dPs(result,Properties)}},function(module,exports){var ceil=Math.ceil;var floor=Math.floor;module.exports=function(it){return isNaN(it=+it)?0:(it>0?floor:ceil)(it)}},function(module,exports,__webpack_require__){var shared=__webpack_require__(57)(\"keys\");var uid=__webpack_require__(40);module.exports=function(key){return shared[key]||(shared[key]=uid(key))}},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var SHARED=\"__core-js_shared__\";var store=global[SHARED]||(global[SHARED]={});module.exports=function(key){return store[key]||(store[key]={})}},function(module,exports){module.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},function(module,exports,__webpack_require__){var def=__webpack_require__(20).f;var has=__webpack_require__(22);var TAG=__webpack_require__(13)(\"toStringTag\");module.exports=function(it,tag,stat){if(it&&!has(it=stat?it:it.prototype,TAG))def(it,TAG,{configurable:true,value:tag})}},function(module,exports,__webpack_require__){\"use strict\";var $at=__webpack_require__(135)(true);__webpack_require__(79)(String,\"String\",function(iterated){this._t=String(iterated);this._i=0},function(){var O=this._t;var index=this._i;var point;if(index>=O.length)return{value:undefined,done:true};point=$at(O,index);this._i+=point.length;return{value:point,done:false}})},function(module,exports,__webpack_require__){exports.f=__webpack_require__(13)},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var core=__webpack_require__(7);var LIBRARY=__webpack_require__(52);var wksExt=__webpack_require__(61);var defineProperty=__webpack_require__(20).f;module.exports=function(name){var $Symbol=core.Symbol||(core.Symbol=LIBRARY?{}:global.Symbol||{});if(name.charAt(0)!=\"_\"&&!(name in $Symbol))defineProperty($Symbol,name,{value:wksExt.f(name)})}},function(module,exports){exports.f=Object.getOwnPropertySymbols},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var moment=__webpack_require__(9);var Component=__webpack_require__(16);var DateUtil=__webpack_require__(36);function Range(body,options){var now=moment().hours(0).minutes(0).seconds(0).milliseconds(0);var start=now.clone().add(-3,\"days\").valueOf();var end=now.clone().add(3,\"days\").valueOf();this.millisecondsPerPixelCache=undefined;if(options===undefined){this.start=start;this.end=end}else{this.start=options.start||start;this.end=options.end||end}this.rolling=false;this.body=body;this.deltaDifference=0;this.scaleOffset=0;this.startToFront=false;this.endToFront=true;this.defaultOptions={rtl:false,start:null,end:null,moment:moment,direction:\"horizontal\",moveable:true,zoomable:true,min:null,max:null,zoomMin:10,zoomMax:1e3*60*60*24*365*1e4,rollingMode:{follow:false,offset:.5}};this.options=util.extend({},this.defaultOptions);this.props={touch:{}};this.animationTimer=null;this.body.emitter.on(\"panstart\",this._onDragStart.bind(this));this.body.emitter.on(\"panmove\",this._onDrag.bind(this));this.body.emitter.on(\"panend\",this._onDragEnd.bind(this));this.body.emitter.on(\"mousewheel\",this._onMouseWheel.bind(this));this.body.emitter.on(\"touch\",this._onTouch.bind(this));this.body.emitter.on(\"pinch\",this._onPinch.bind(this));this.body.dom.rollingModeBtn.addEventListener(\"click\",this.startRolling.bind(this));this.setOptions(options)}Range.prototype=new Component;Range.prototype.setOptions=function(options){if(options){var fields=[\"animation\",\"direction\",\"min\",\"max\",\"zoomMin\",\"zoomMax\",\"moveable\",\"zoomable\",\"moment\",\"activate\",\"hiddenDates\",\"zoomKey\",\"rtl\",\"showCurrentTime\",\"rollingMode\",\"horizontalScroll\"];util.selectiveExtend(fields,this.options,options);if(options.rollingMode&&options.rollingMode.follow){this.startRolling()}if(\"start\"in options||\"end\"in options){this.setRange(options.start,options.end)}}};function validateDirection(direction){if(direction!=\"horizontal\"&&direction!=\"vertical\"){throw new TypeError('Unknown direction \"'+direction+'\". '+'Choose \"horizontal\" or \"vertical\".')}}Range.prototype.startRolling=function(){var me=this;function update(){me.stopRolling();me.rolling=true;var interval=me.end-me.start;var t=util.convert(new Date,\"Date\").valueOf();var start=t-interval*me.options.rollingMode.offset;var end=t+interval*(1-me.options.rollingMode.offset);var options={animation:false};me.setRange(start,end,options);var scale=me.conversion(me.body.domProps.center.width).scale;interval=1/scale/10;if(interval<30)interval=30;if(interval>1e3)interval=1e3;me.body.dom.rollingModeBtn.style.visibility=\"hidden\";me.currentTimeTimer=setTimeout(update,interval)}update()};Range.prototype.stopRolling=function(){if(this.currentTimeTimer!==undefined){clearTimeout(this.currentTimeTimer);this.rolling=false;this.body.dom.rollingModeBtn.style.visibility=\"visible\"}};Range.prototype.setRange=function(start,end,options,callback,frameCallback){if(!options){options={}}if(options.byUser!==true){options.byUser=false}var me=this;var finalStart=start!=undefined?util.convert(start,\"Date\").valueOf():null;var finalEnd=end!=undefined?util.convert(end,\"Date\").valueOf():null;this._cancelAnimation();this.millisecondsPerPixelCache=undefined;if(options.animation){var initStart=this.start;var initEnd=this.end;var duration=(0,_typeof3[\"default\"])(options.animation)===\"object\"&&\"duration\"in options.animation?options.animation.duration:500;var easingName=(0,_typeof3[\"default\"])(options.animation)===\"object\"&&\"easingFunction\"in options.animation?options.animation.easingFunction:\"easeInOutQuad\";var easingFunction=util.easingFunctions[easingName];if(!easingFunction){throw new Error(\"Unknown easing function \"+(0,_stringify2[\"default\"])(easingName)+\". \"+\"Choose from: \"+(0,_keys2[\"default\"])(util.easingFunctions).join(\", \"))}var initTime=(new Date).valueOf();var anyChanged=false;var next=function next(){if(!me.props.touch.dragging){var now=(new Date).valueOf();var time=now-initTime;var ease=easingFunction(time/duration);var done=time>duration;var s=done||finalStart===null?finalStart:initStart+(finalStart-initStart)*ease;var e=done||finalEnd===null?finalEnd:initEnd+(finalEnd-initEnd)*ease;changed=me._applyRange(s,e);DateUtil.updateHiddenDates(me.options.moment,me.body,me.options.hiddenDates);anyChanged=anyChanged||changed;var params={start:new Date(me.start),end:new Date(me.end),byUser:options.byUser,event:options.event};if(frameCallback){frameCallback(ease,changed,done)}if(changed){me.body.emitter.emit(\"rangechange\",params)}if(done){if(anyChanged){me.body.emitter.emit(\"rangechanged\",params);if(callback){return callback()}}}else{me.animationTimer=setTimeout(next,20)}}};return next()}else{var changed=this._applyRange(finalStart,finalEnd);DateUtil.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates);if(changed){var params={start:new Date(this.start),end:new Date(this.end),byUser:options.byUser,event:options.event};this.body.emitter.emit(\"rangechange\",params);clearTimeout(me.timeoutID);me.timeoutID=setTimeout(function(){me.body.emitter.emit(\"rangechanged\",params)},200);if(callback){return callback()}}}};Range.prototype.getMillisecondsPerPixel=function(){if(this.millisecondsPerPixelCache===undefined){this.millisecondsPerPixelCache=(this.end-this.start)/this.body.dom.center.clientWidth}return this.millisecondsPerPixelCache};Range.prototype._cancelAnimation=function(){if(this.animationTimer){clearTimeout(this.animationTimer);this.animationTimer=null}};Range.prototype._applyRange=function(start,end){var newStart=start!=null?util.convert(start,\"Date\").valueOf():this.start,newEnd=end!=null?util.convert(end,\"Date\").valueOf():this.end,max=this.options.max!=null?util.convert(this.options.max,\"Date\").valueOf():null,min=this.options.min!=null?util.convert(this.options.min,\"Date\").valueOf():null,diff;if(isNaN(newStart)||newStart===null){throw new Error('Invalid start \"'+start+'\"')}if(isNaN(newEnd)||newEnd===null){throw new Error('Invalid end \"'+end+'\"')}if(newEnd<newStart){newEnd=newStart}if(min!==null){if(newStart<min){diff=min-newStart;newStart+=diff;newEnd+=diff;if(max!=null){if(newEnd>max){newEnd=max}}}}if(max!==null){if(newEnd>max){diff=newEnd-max;newStart-=diff;newEnd-=diff;if(min!=null){if(newStart<min){newStart=min}}}}if(this.options.zoomMin!==null){var zoomMin=parseFloat(this.options.zoomMin);if(zoomMin<0){zoomMin=0}if(newEnd-newStart<zoomMin){var compensation=.5;if(this.end-this.start===zoomMin&&newStart>=this.start-compensation&&newEnd<=this.end){newStart=this.start;newEnd=this.end}else{diff=zoomMin-(newEnd-newStart);newStart-=diff/2;newEnd+=diff/2}}}if(this.options.zoomMax!==null){var zoomMax=parseFloat(this.options.zoomMax);if(zoomMax<0){zoomMax=0}if(newEnd-newStart>zoomMax){if(this.end-this.start===zoomMax&&newStart<this.start&&newEnd>this.end){newStart=this.start;newEnd=this.end}else{diff=newEnd-newStart-zoomMax;newStart+=diff/2;newEnd-=diff/2}}}var changed=this.start!=newStart||this.end!=newEnd;if(!(newStart>=this.start&&newStart<=this.end||newEnd>=this.start&&newEnd<=this.end)&&!(this.start>=newStart&&this.start<=newEnd||this.end>=newStart&&this.end<=newEnd)){this.body.emitter.emit(\"checkRangedItems\")}this.start=newStart;this.end=newEnd;return changed};Range.prototype.getRange=function(){return{start:this.start,end:this.end}};Range.prototype.conversion=function(width,totalHidden){return Range.conversion(this.start,this.end,width,totalHidden)};Range.conversion=function(start,end,width,totalHidden){if(totalHidden===undefined){totalHidden=0}if(width!=0&&end-start!=0){return{offset:start,scale:width/(end-start-totalHidden)}}else{return{offset:0,scale:1}}};Range.prototype._onDragStart=function(event){this.deltaDifference=0;this.previousDelta=0;if(!this.options.moveable)return;if(!this._isInsideRange(event))return;if(!this.props.touch.allowDragging)return;this.stopRolling();this.props.touch.start=this.start;this.props.touch.end=this.end;this.props.touch.dragging=true;if(this.body.dom.root){this.body.dom.root.style.cursor=\"move\"}};Range.prototype._onDrag=function(event){if(!event)return;if(!this.props.touch.dragging)return;if(!this.options.moveable)return;if(!this.props.touch.allowDragging)return;var direction=this.options.direction;validateDirection(direction);var delta=direction==\"horizontal\"?event.deltaX:event.deltaY;delta-=this.deltaDifference;var interval=this.props.touch.end-this.props.touch.start;var duration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);interval-=duration;var width=direction==\"horizontal\"?this.body.domProps.center.width:this.body.domProps.center.height;var diffRange;if(this.options.rtl){diffRange=delta/width*interval}else{diffRange=-delta/width*interval}var newStart=this.props.touch.start+diffRange;var newEnd=this.props.touch.end+diffRange;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,this.previousDelta-delta,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,this.previousDelta-delta,true);if(safeStart!=newStart||safeEnd!=newEnd){this.deltaDifference+=delta;this.props.touch.start=safeStart;this.props.touch.end=safeEnd;this._onDrag(event);return}this.previousDelta=delta;this._applyRange(newStart,newEnd);var startDate=new Date(this.start);var endDate=new Date(this.end);this.body.emitter.emit(\"rangechange\",{start:startDate,end:endDate,byUser:true,event:event});this.body.emitter.emit(\"panmove\")};Range.prototype._onDragEnd=function(event){if(!this.props.touch.dragging)return;if(!this.options.moveable)return;if(!this.props.touch.allowDragging)return;this.props.touch.dragging=false;if(this.body.dom.root){this.body.dom.root.style.cursor=\"auto\"}this.body.emitter.emit(\"rangechanged\",{start:new Date(this.start),end:new Date(this.end),byUser:true,event:event})};Range.prototype._onMouseWheel=function(event){var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(this.options.zoomKey&&!event[this.options.zoomKey]&&this.options.zoomable||!this.options.zoomable&&this.options.moveable){return}if(!(this.options.zoomable&&this.options.moveable))return;if(!this._isInsideRange(event))return;if(delta){var scale;if(delta<0){scale=1-delta/5}else{scale=1/(1+delta/5)}var pointerDate;if(this.rolling){pointerDate=this.start+(this.end-this.start)*this.options.rollingMode.offset}else{var pointer=this.getPointer({x:event.clientX,y:event.clientY},this.body.dom.center);pointerDate=this._pointerToDate(pointer)}this.zoom(scale,pointerDate,delta,event);event.preventDefault()}};Range.prototype._onTouch=function(event){this.props.touch.start=this.start;this.props.touch.end=this.end;this.props.touch.allowDragging=true;this.props.touch.center=null;this.scaleOffset=0;this.deltaDifference=0;util.preventDefault(event)};Range.prototype._onPinch=function(event){if(!(this.options.zoomable&&this.options.moveable))return;util.preventDefault(event);this.props.touch.allowDragging=false;if(!this.props.touch.center){this.props.touch.center=this.getPointer(event.center,this.body.dom.center)}this.stopRolling();var scale=1/(event.scale+this.scaleOffset);var centerDate=this._pointerToDate(this.props.touch.center);var hiddenDuration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var hiddenDurationBefore=DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,centerDate);var hiddenDurationAfter=hiddenDuration-hiddenDurationBefore;var newStart=centerDate-hiddenDurationBefore+(this.props.touch.start-(centerDate-hiddenDurationBefore))*scale;var newEnd=centerDate+hiddenDurationAfter+(this.props.touch.end-(centerDate+hiddenDurationAfter))*scale;this.startToFront=1-scale<=0;this.endToFront=scale-1<=0;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,1-scale,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,scale-1,true);if(safeStart!=newStart||safeEnd!=newEnd){this.props.touch.start=safeStart;this.props.touch.end=safeEnd;this.scaleOffset=1-event.scale;newStart=safeStart;newEnd=safeEnd}var options={animation:false,byUser:true,event:event};this.setRange(newStart,newEnd,options);this.startToFront=false;this.endToFront=true};Range.prototype._isInsideRange=function(event){var clientX=event.center?event.center.x:event.clientX;var x;if(this.options.rtl){x=clientX-util.getAbsoluteLeft(this.body.dom.centerContainer)}else{x=util.getAbsoluteRight(this.body.dom.centerContainer)-clientX}var time=this.body.util.toTime(x);return time>=this.start&&time<=this.end};Range.prototype._pointerToDate=function(pointer){var conversion;var direction=this.options.direction;validateDirection(direction);if(direction==\"horizontal\"){return this.body.util.toTime(pointer.x).valueOf()}else{var height=this.body.domProps.center.height;conversion=this.conversion(height);return pointer.y/conversion.scale+conversion.offset}};Range.prototype.getPointer=function(touch,element){if(this.options.rtl){return{x:util.getAbsoluteRight(element)-touch.x,y:touch.y-util.getAbsoluteTop(element)}}else{return{x:touch.x-util.getAbsoluteLeft(element),y:touch.y-util.getAbsoluteTop(element)}}};Range.prototype.zoom=function(scale,center,delta,event){if(center==null){center=(this.start+this.end)/2}var hiddenDuration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var hiddenDurationBefore=DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,center);var hiddenDurationAfter=hiddenDuration-hiddenDurationBefore;var newStart=center-hiddenDurationBefore+(this.start-(center-hiddenDurationBefore))*scale;var newEnd=center+hiddenDurationAfter+(this.end-(center+hiddenDurationAfter))*scale;this.startToFront=delta>0?false:true;this.endToFront=-delta>0?false:true;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,delta,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,-delta,true);if(safeStart!=newStart||safeEnd!=newEnd){newStart=safeStart;newEnd=safeEnd}var options={animation:false,byUser:true,event:event};this.setRange(newStart,newEnd,options);this.startToFront=false;this.endToFront=true};Range.prototype.move=function(delta){var diff=this.end-this.start;var newStart=this.start+diff*delta;var newEnd=this.end+diff*delta;this.start=newStart;this.end=newEnd};Range.prototype.moveTo=function(moveTo){var center=(this.start+this.end)/2;var diff=center-moveTo;var newStart=this.start-diff;var newEnd=this.end-diff;var options={animation:false,byUser:true,event:null};this.setRange(newStart,newEnd,options)};module.exports=Range},function(module,exports,__webpack_require__){\"use strict\";var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Emitter=__webpack_require__(44);var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var TimeAxis=__webpack_require__(45);var Activator=__webpack_require__(97);var DateUtil=__webpack_require__(36);var CustomTime=__webpack_require__(46);function Core(){}Emitter(Core.prototype);Core.prototype._create=function(container){this.dom={};this.dom.container=container;this.dom.root=document.createElement(\"div\");this.dom.background=document.createElement(\"div\");this.dom.backgroundVertical=document.createElement(\"div\");this.dom.backgroundHorizontal=document.createElement(\"div\");this.dom.centerContainer=document.createElement(\"div\");this.dom.leftContainer=document.createElement(\"div\");this.dom.rightContainer=document.createElement(\"div\");this.dom.center=document.createElement(\"div\");this.dom.left=document.createElement(\"div\");this.dom.right=document.createElement(\"div\");this.dom.top=document.createElement(\"div\");this.dom.bottom=document.createElement(\"div\");this.dom.shadowTop=document.createElement(\"div\");this.dom.shadowBottom=document.createElement(\"div\");this.dom.shadowTopLeft=document.createElement(\"div\");this.dom.shadowBottomLeft=document.createElement(\"div\");this.dom.shadowTopRight=document.createElement(\"div\");this.dom.shadowBottomRight=document.createElement(\"div\");this.dom.rollingModeBtn=document.createElement(\"div\");this.dom.root.className=\"vis-timeline\";this.dom.background.className=\"vis-panel vis-background\";this.dom.backgroundVertical.className=\"vis-panel vis-background vis-vertical\";this.dom.backgroundHorizontal.className=\"vis-panel vis-background vis-horizontal\";this.dom.centerContainer.className=\"vis-panel vis-center\";this.dom.leftContainer.className=\"vis-panel vis-left\";this.dom.rightContainer.className=\"vis-panel vis-right\";this.dom.top.className=\"vis-panel vis-top\";this.dom.bottom.className=\"vis-panel vis-bottom\";this.dom.left.className=\"vis-content\";this.dom.center.className=\"vis-content\";this.dom.right.className=\"vis-content\";this.dom.shadowTop.className=\"vis-shadow vis-top\";this.dom.shadowBottom.className=\"vis-shadow vis-bottom\";this.dom.shadowTopLeft.className=\"vis-shadow vis-top\";this.dom.shadowBottomLeft.className=\"vis-shadow vis-bottom\";this.dom.shadowTopRight.className=\"vis-shadow vis-top\";this.dom.shadowBottomRight.className=\"vis-shadow vis-bottom\";this.dom.rollingModeBtn.className=\"vis-rolling-mode-btn\";this.dom.root.appendChild(this.dom.background);this.dom.root.appendChild(this.dom.backgroundVertical);this.dom.root.appendChild(this.dom.backgroundHorizontal);this.dom.root.appendChild(this.dom.centerContainer);this.dom.root.appendChild(this.dom.leftContainer);this.dom.root.appendChild(this.dom.rightContainer);this.dom.root.appendChild(this.dom.top);this.dom.root.appendChild(this.dom.bottom);this.dom.root.appendChild(this.dom.bottom);this.dom.root.appendChild(this.dom.rollingModeBtn);this.dom.centerContainer.appendChild(this.dom.center);this.dom.leftContainer.appendChild(this.dom.left);this.dom.rightContainer.appendChild(this.dom.right);this.dom.centerContainer.appendChild(this.dom.shadowTop);this.dom.centerContainer.appendChild(this.dom.shadowBottom);this.dom.leftContainer.appendChild(this.dom.shadowTopLeft);this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft);this.dom.rightContainer.appendChild(this.dom.shadowTopRight);this.dom.rightContainer.appendChild(this.dom.shadowBottomRight);this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0};this.on(\"rangechange\",function(){if(this.initialDrawDone===true){this._redraw()}}.bind(this));this.on(\"rangechanged\",function(){if(!this.initialRangeChangeDone){this.initialRangeChangeDone=true}}.bind(this));this.on(\"touch\",this._onTouch.bind(this));this.on(\"panmove\",this._onDrag.bind(this));var me=this;this._origRedraw=this._redraw.bind(this);this._redraw=util.throttle(this._origRedraw);this.on(\"_change\",function(properties){if(me.itemSet&&me.itemSet.initialItemSetDrawn&&properties&&properties.queue==true){me._redraw()}else{me._origRedraw()}});this.hammer=new Hammer(this.dom.root);var pinchRecognizer=this.hammer.get(\"pinch\").set({enable:true});hammerUtil.disablePreventDefaultVertically(pinchRecognizer);this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL});this.listeners={};var events=[\"tap\",\"doubletap\",\"press\",\"pinch\",\"pan\",\"panstart\",\"panmove\",\"panend\"];events.forEach(function(type){var listener=function listener(event){if(me.isActive()){me.emit(type,event)}};me.hammer.on(type,listener);me.listeners[type]=listener});hammerUtil.onTouch(this.hammer,function(event){me.emit(\"touch\",event)}.bind(this));hammerUtil.onRelease(this.hammer,function(event){me.emit(\"release\",event)}.bind(this));function onMouseWheel(event){if(this.isActive()){this.emit(\"mousewheel\",event)}var deltaX=0;var deltaY=0;if(\"detail\"in event){deltaY=event.detail*-1}if(\"wheelDelta\"in event){deltaY=event.wheelDelta}if(\"wheelDeltaY\"in event){deltaY=event.wheelDeltaY}if(\"wheelDeltaX\"in event){deltaX=event.wheelDeltaX*-1}if(\"axis\"in event&&event.axis===event.HORIZONTAL_AXIS){deltaX=deltaY*-1;deltaY=0}if(\"deltaY\"in event){deltaY=event.deltaY*-1}if(\"deltaX\"in event){deltaX=event.deltaX}if(!this.options.zoomKey||event[this.options.zoomKey])return;event.preventDefault();if(this.options.verticalScroll&&Math.abs(deltaY)>=Math.abs(deltaX)){var current=this.props.scrollTop;var adjusted=current+deltaY;if(this.isActive()){this._setScrollTop(adjusted);this._redraw();this.emit(\"scroll\",event)}}else if(this.options.horizontalScroll){var delta=Math.abs(deltaX)>=Math.abs(deltaY)?deltaX:deltaY;var diff=delta/120*(this.range.end-this.range.start)/20;var newStart=this.range.start+diff;var newEnd=this.range.end+diff;var options={animation:false,byUser:true,event:event};this.range.setRange(newStart,newEnd,options)}}if(this.dom.centerContainer.addEventListener){this.dom.centerContainer.addEventListener(\"mousewheel\",onMouseWheel.bind(this),false);this.dom.centerContainer.addEventListener(\"DOMMouseScroll\",onMouseWheel.bind(this),false)}else{this.dom.centerContainer.attachEvent(\"onmousewheel\",onMouseWheel.bind(this))}function onMouseScrollSide(event){if(!me.options.verticalScroll)return;event.preventDefault();if(me.isActive()){var adjusted=-event.target.scrollTop;me._setScrollTop(adjusted);me._redraw();me.emit(\"scrollSide\",event)}}this.dom.left.parentNode.addEventListener(\"scroll\",onMouseScrollSide.bind(this));this.dom.right.parentNode.addEventListener(\"scroll\",onMouseScrollSide.bind(this));var itemAddedToTimeline=false;function handleDragOver(event){if(event.preventDefault){event.preventDefault()}if(!event.target.className.indexOf(\"vis\")>-1)return;if(itemAddedToTimeline)return;event.dataTransfer.dropEffect=\"move\";itemAddedToTimeline=true;return false}function handleDrop(event){if(event.preventDefault){event.preventDefault()}if(event.stopPropagation){event.stopPropagation()}try{var itemData=JSON.parse(event.dataTransfer.getData(\"text\"));if(!itemData||!itemData.content)return}catch(err){return false}itemAddedToTimeline=false;event.center={x:event.clientX,y:event.clientY};if(itemData.target!==\"item\"){me.itemSet._onAddItem(event)}else{me.itemSet._onDropObjectOnItem(event)}me.emit(\"drop\",me.getEventProperties(event));return false}this.dom.center.addEventListener(\"dragover\",handleDragOver.bind(this),false);this.dom.center.addEventListener(\"drop\",handleDrop.bind(this),false);this.customTimes=[];this.touch={};this.redrawCount=0;this.initialDrawDone=false;this.initialRangeChangeDone=false;if(!container)throw new Error(\"No container provided\");container.appendChild(this.dom.root)};Core.prototype.setOptions=function(options){if(options){var fields=[\"width\",\"height\",\"minHeight\",\"maxHeight\",\"autoResize\",\"start\",\"end\",\"clickToUse\",\"dataAttributes\",\"hiddenDates\",\"locale\",\"locales\",\"moment\",\"rtl\",\"zoomKey\",\"horizontalScroll\",\"verticalScroll\"];util.selectiveExtend(fields,this.options,options);this.dom.rollingModeBtn.style.visibility=\"hidden\";if(this.options.rtl){this.dom.container.style.direction=\"rtl\";this.dom.backgroundVertical.className=\"vis-panel vis-background vis-vertical-rtl\"}if(this.options.verticalScroll){if(this.options.rtl){this.dom.rightContainer.className=\"vis-panel vis-right vis-vertical-scroll\"}else{this.dom.leftContainer.className=\"vis-panel vis-left vis-vertical-scroll\"}}if((0,_typeof3[\"default\"])(this.options.orientation)!==\"object\"){this.options.orientation={item:undefined,axis:undefined}}if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation={item:options.orientation,axis:options.orientation}}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"){if(\"item\"in options.orientation){this.options.orientation.item=options.orientation.item}if(\"axis\"in options.orientation){this.options.orientation.axis=options.orientation.axis}}}if(this.options.orientation.axis===\"both\"){if(!this.timeAxis2){var timeAxis2=this.timeAxis2=new TimeAxis(this.body);timeAxis2.setOptions=function(options){var _options=options?util.extend({},options):{};_options.orientation=\"top\";TimeAxis.prototype.setOptions.call(timeAxis2,_options)};this.components.push(timeAxis2)}}else{if(this.timeAxis2){var index=this.components.indexOf(this.timeAxis2);if(index!==-1){this.components.splice(index,1)}this.timeAxis2.destroy();this.timeAxis2=null}}if(typeof options.drawPoints==\"function\"){options.drawPoints={onRender:options.drawPoints}}if(\"hiddenDates\"in this.options){DateUtil.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates)}if(\"clickToUse\"in options){if(options.clickToUse){if(!this.activator){this.activator=new Activator(this.dom.root)}}else{if(this.activator){this.activator.destroy();delete this.activator}}}if(\"showCustomTime\"in options){throw new Error(\"Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])\")}this._initAutoResize()}this.components.forEach(function(component){return component.setOptions(options)});if(\"configure\"in options){if(!this.configurator){this.configurator=this._createConfigurator()}this.configurator.setOptions(options.configure);var appliedOptions=util.deepExtend({},this.options);this.components.forEach(function(component){util.deepExtend(appliedOptions,component.options)});this.configurator.setModuleOptions({global:appliedOptions})}this._redraw()};Core.prototype.isActive=function(){return!this.activator||this.activator.active};Core.prototype.destroy=function(){this.setItems(null);this.setGroups(null);this.off();this._stopAutoResize();if(this.dom.root.parentNode){this.dom.root.parentNode.removeChild(this.dom.root)}this.dom=null;if(this.activator){this.activator.destroy();delete this.activator}for(var event in this.listeners){if(this.listeners.hasOwnProperty(event)){delete this.listeners[event]}}this.listeners=null;this.hammer=null;this.components.forEach(function(component){return component.destroy()});this.body=null};Core.prototype.setCustomTime=function(time,id){var customTimes=this.customTimes.filter(function(component){return id===component.options.id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}if(customTimes.length>0){customTimes[0].setCustomTime(time)}};Core.prototype.getCustomTime=function(id){var customTimes=this.customTimes.filter(function(component){return component.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}return customTimes[0].getCustomTime()};Core.prototype.setCustomTimeTitle=function(title,id){var customTimes=this.customTimes.filter(function(component){return component.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}if(customTimes.length>0){return customTimes[0].setCustomTitle(title)}};Core.prototype.getEventProperties=function(event){return{event:event}};Core.prototype.addCustomTime=function(time,id){var timestamp=time!==undefined?util.convert(time,\"Date\").valueOf():new Date;var exists=this.customTimes.some(function(customTime){return customTime.options.id===id});if(exists){throw new Error(\"A custom time with id \"+(0,_stringify2[\"default\"])(id)+\" already exists\")}var customTime=new CustomTime(this.body,util.extend({},this.options,{time:timestamp,id:id}));this.customTimes.push(customTime);this.components.push(customTime);this._redraw();return id};Core.prototype.removeCustomTime=function(id){var customTimes=this.customTimes.filter(function(bar){return bar.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}customTimes.forEach(function(customTime){this.customTimes.splice(this.customTimes.indexOf(customTime),1);this.components.splice(this.components.indexOf(customTime),1);customTime.destroy()}.bind(this))};Core.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]};Core.prototype.fit=function(options,callback){var range=this.getDataRange();if(range.min===null&&range.max===null){return}var interval=range.max-range.min;var min=new Date(range.min.valueOf()-interval*.01);var max=new Date(range.max.valueOf()+interval*.01);var animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(min,max,{animation:animation},callback)};Core.prototype.getDataRange=function(){throw new Error(\"Cannot invoke abstract method getDataRange\")};Core.prototype.setWindow=function(start,end,options,callback){if(typeof arguments[2]==\"function\"){callback=arguments[2];options={}}var animation;var range;if(arguments.length==1){range=arguments[0];animation=range.animation!==undefined?range.animation:true;this.range.setRange(range.start,range.end,{animation:animation})}else if(arguments.length==2&&typeof arguments[1]==\"function\"){range=arguments[0];callback=arguments[1];animation=range.animation!==undefined?range.animation:true\n;this.range.setRange(range.start,range.end,{animation:animation},callback)}else{animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(start,end,{animation:animation},callback)}};Core.prototype.moveTo=function(time,options,callback){if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var interval=this.range.end-this.range.start;var t=util.convert(time,\"Date\").valueOf();var start=t-interval/2;var end=t+interval/2;var animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(start,end,{animation:animation},callback)};Core.prototype.getWindow=function(){var range=this.range.getRange();return{start:new Date(range.start),end:new Date(range.end)}};Core.prototype.zoomIn=function(percentage,options,callback){if(!percentage||percentage<0||percentage>1)return;if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var range=this.getWindow();var start=range.start.valueOf();var end=range.end.valueOf();var interval=end-start;var newInterval=interval/(1+percentage);var distance=(interval-newInterval)/2;var newStart=start+distance;var newEnd=end-distance;this.setWindow(newStart,newEnd,options,callback)};Core.prototype.zoomOut=function(percentage,options,callback){if(!percentage||percentage<0||percentage>1)return;if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var range=this.getWindow();var start=range.start.valueOf();var end=range.end.valueOf();var interval=end-start;var newStart=start-interval*percentage/2;var newEnd=end+interval*percentage/2;this.setWindow(newStart,newEnd,options,callback)};Core.prototype.redraw=function(){this._redraw()};Core.prototype._redraw=function(){this.redrawCount++;var resized=false;var options=this.options;var props=this.props;var dom=this.dom;if(!dom||!dom.container||dom.root.offsetWidth==0)return;DateUtil.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates);if(options.orientation==\"top\"){util.addClassName(dom.root,\"vis-top\");util.removeClassName(dom.root,\"vis-bottom\")}else{util.removeClassName(dom.root,\"vis-top\");util.addClassName(dom.root,\"vis-bottom\")}dom.root.style.maxHeight=util.option.asSize(options.maxHeight,\"\");dom.root.style.minHeight=util.option.asSize(options.minHeight,\"\");dom.root.style.width=util.option.asSize(options.width,\"\");props.border.left=(dom.centerContainer.offsetWidth-dom.centerContainer.clientWidth)/2;props.border.right=props.border.left;props.border.top=(dom.centerContainer.offsetHeight-dom.centerContainer.clientHeight)/2;props.border.bottom=props.border.top;props.borderRootHeight=dom.root.offsetHeight-dom.root.clientHeight;props.borderRootWidth=dom.root.offsetWidth-dom.root.clientWidth;if(dom.centerContainer.clientHeight===0){props.border.left=props.border.top;props.border.right=props.border.left}if(dom.root.clientHeight===0){props.borderRootWidth=props.borderRootHeight}props.center.height=dom.center.offsetHeight;props.left.height=dom.left.offsetHeight;props.right.height=dom.right.offsetHeight;props.top.height=dom.top.clientHeight||-props.border.top;props.bottom.height=dom.bottom.clientHeight||-props.border.bottom;var contentHeight=Math.max(props.left.height,props.center.height,props.right.height);var autoHeight=props.top.height+contentHeight+props.bottom.height+props.borderRootHeight+props.border.top+props.border.bottom;dom.root.style.height=util.option.asSize(options.height,autoHeight+\"px\");props.root.height=dom.root.offsetHeight;props.background.height=props.root.height-props.borderRootHeight;var containerHeight=props.root.height-props.top.height-props.bottom.height-props.borderRootHeight;props.centerContainer.height=containerHeight;props.leftContainer.height=containerHeight;props.rightContainer.height=props.leftContainer.height;props.root.width=dom.root.offsetWidth;props.background.width=props.root.width-props.borderRootWidth;if(!this.initialDrawDone){props.scrollbarWidth=util.getScrollBarWidth()}if(options.verticalScroll){if(options.rtl){props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth+props.scrollbarWidth||-props.border.right}else{props.left.width=dom.leftContainer.clientWidth+props.scrollbarWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right}}else{props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right}this._setDOM();var offset=this._updateScrollTop();if(options.orientation.item!=\"top\"){offset+=Math.max(props.centerContainer.height-props.center.height-props.border.top-props.border.bottom,0)}dom.center.style.top=offset+\"px\";var visibilityTop=props.scrollTop==0?\"hidden\":\"\";var visibilityBottom=props.scrollTop==props.scrollTopMin?\"hidden\":\"\";dom.shadowTop.style.visibility=visibilityTop;dom.shadowBottom.style.visibility=visibilityBottom;dom.shadowTopLeft.style.visibility=visibilityTop;dom.shadowBottomLeft.style.visibility=visibilityBottom;dom.shadowTopRight.style.visibility=visibilityTop;dom.shadowBottomRight.style.visibility=visibilityBottom;if(options.verticalScroll){dom.rightContainer.className=\"vis-panel vis-right vis-vertical-scroll\";dom.leftContainer.className=\"vis-panel vis-left vis-vertical-scroll\";dom.shadowTopRight.style.visibility=\"hidden\";dom.shadowBottomRight.style.visibility=\"hidden\";dom.shadowTopLeft.style.visibility=\"hidden\";dom.shadowBottomLeft.style.visibility=\"hidden\";dom.left.style.top=\"0px\";dom.right.style.top=\"0px\"}if(!options.verticalScroll||props.center.height<props.centerContainer.height){dom.left.style.top=offset+\"px\";dom.right.style.top=offset+\"px\";dom.rightContainer.className=dom.rightContainer.className.replace(new RegExp(\"(?:^|\\\\s)\"+\"vis-vertical-scroll\"+\"(?:\\\\s|$)\"),\" \");dom.leftContainer.className=dom.leftContainer.className.replace(new RegExp(\"(?:^|\\\\s)\"+\"vis-vertical-scroll\"+\"(?:\\\\s|$)\"),\" \");props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right;this._setDOM()}var contentsOverflow=props.center.height>props.centerContainer.height;this.hammer.get(\"pan\").set({direction:contentsOverflow?Hammer.DIRECTION_ALL:Hammer.DIRECTION_HORIZONTAL});this.components.forEach(function(component){resized=component.redraw()||resized});var MAX_REDRAW=5;if(resized){if(this.redrawCount<MAX_REDRAW){this.body.emitter.emit(\"_change\");return}else{console.log(\"WARNING: infinite loop in redraw?\")}}else{this.redrawCount=0}this.body.emitter.emit(\"changed\")};Core.prototype._setDOM=function(){var props=this.props;var dom=this.dom;props.leftContainer.width=props.left.width;props.rightContainer.width=props.right.width;var centerWidth=props.root.width-props.left.width-props.right.width-props.borderRootWidth;props.center.width=centerWidth;props.centerContainer.width=centerWidth;props.top.width=centerWidth;props.bottom.width=centerWidth;dom.background.style.height=props.background.height+\"px\";dom.backgroundVertical.style.height=props.background.height+\"px\";dom.backgroundHorizontal.style.height=props.centerContainer.height+\"px\";dom.centerContainer.style.height=props.centerContainer.height+\"px\";dom.leftContainer.style.height=props.leftContainer.height+\"px\";dom.rightContainer.style.height=props.rightContainer.height+\"px\";dom.background.style.width=props.background.width+\"px\";dom.backgroundVertical.style.width=props.centerContainer.width+\"px\";dom.backgroundHorizontal.style.width=props.background.width+\"px\";dom.centerContainer.style.width=props.center.width+\"px\";dom.top.style.width=props.top.width+\"px\";dom.bottom.style.width=props.bottom.width+\"px\";dom.background.style.left=\"0\";dom.background.style.top=\"0\";dom.backgroundVertical.style.left=props.left.width+props.border.left+\"px\";dom.backgroundVertical.style.top=\"0\";dom.backgroundHorizontal.style.left=\"0\";dom.backgroundHorizontal.style.top=props.top.height+\"px\";dom.centerContainer.style.left=props.left.width+\"px\";dom.centerContainer.style.top=props.top.height+\"px\";dom.leftContainer.style.left=\"0\";dom.leftContainer.style.top=props.top.height+\"px\";dom.rightContainer.style.left=props.left.width+props.center.width+\"px\";dom.rightContainer.style.top=props.top.height+\"px\";dom.top.style.left=props.left.width+\"px\";dom.top.style.top=\"0\";dom.bottom.style.left=props.left.width+\"px\";dom.bottom.style.top=props.top.height+props.centerContainer.height+\"px\";dom.center.style.left=\"0\";dom.left.style.left=\"0\";dom.right.style.left=\"0\"};Core.prototype.repaint=function(){throw new Error(\"Function repaint is deprecated. Use redraw instead.\")};Core.prototype.setCurrentTime=function(time){if(!this.currentTime){throw new Error(\"Option showCurrentTime must be true\")}this.currentTime.setCurrentTime(time)};Core.prototype.getCurrentTime=function(){if(!this.currentTime){throw new Error(\"Option showCurrentTime must be true\")}return this.currentTime.getCurrentTime()};Core.prototype._toTime=function(x){return DateUtil.toTime(this,x,this.props.center.width)};Core.prototype._toGlobalTime=function(x){return DateUtil.toTime(this,x,this.props.root.width)};Core.prototype._toScreen=function(time){return DateUtil.toScreen(this,time,this.props.center.width)};Core.prototype._toGlobalScreen=function(time){return DateUtil.toScreen(this,time,this.props.root.width)};Core.prototype._initAutoResize=function(){if(this.options.autoResize==true){this._startAutoResize()}else{this._stopAutoResize()}};Core.prototype._startAutoResize=function(){var me=this;this._stopAutoResize();this._onResize=function(){if(me.options.autoResize!=true){me._stopAutoResize();return}if(me.dom.root){if(me.dom.root.offsetWidth!=me.props.lastWidth||me.dom.root.offsetHeight!=me.props.lastHeight){me.props.lastWidth=me.dom.root.offsetWidth;me.props.lastHeight=me.dom.root.offsetHeight;me.props.scrollbarWidth=util.getScrollBarWidth();me.body.emitter.emit(\"_change\")}}};util.addEventListener(window,\"resize\",this._onResize);if(me.dom.root){me.props.lastWidth=me.dom.root.offsetWidth;me.props.lastHeight=me.dom.root.offsetHeight}this.watchTimer=setInterval(this._onResize,1e3)};Core.prototype._stopAutoResize=function(){if(this.watchTimer){clearInterval(this.watchTimer);this.watchTimer=undefined}if(this._onResize){util.removeEventListener(window,\"resize\",this._onResize);this._onResize=null}};Core.prototype._onTouch=function(event){this.touch.allowDragging=true;this.touch.initialScrollTop=this.props.scrollTop};Core.prototype._onPinch=function(event){this.touch.allowDragging=false};Core.prototype._onDrag=function(event){if(!event)return;if(!this.touch.allowDragging)return;var delta=event.deltaY;var oldScrollTop=this._getScrollTop();var newScrollTop=this._setScrollTop(this.touch.initialScrollTop+delta);if(this.options.verticalScroll){this.dom.left.parentNode.scrollTop=-this.props.scrollTop;this.dom.right.parentNode.scrollTop=-this.props.scrollTop}if(newScrollTop!=oldScrollTop){this.emit(\"verticalDrag\")}};Core.prototype._setScrollTop=function(scrollTop){this.props.scrollTop=scrollTop;this._updateScrollTop();return this.props.scrollTop};Core.prototype._updateScrollTop=function(){var scrollTopMin=Math.min(this.props.centerContainer.height-this.props.center.height,0);if(scrollTopMin!=this.props.scrollTopMin){if(this.options.orientation.item!=\"top\"){this.props.scrollTop+=scrollTopMin-this.props.scrollTopMin}this.props.scrollTopMin=scrollTopMin}if(this.props.scrollTop>0)this.props.scrollTop=0;if(this.props.scrollTop<scrollTopMin)this.props.scrollTop=scrollTopMin;if(this.options.verticalScroll){this.dom.left.parentNode.scrollTop=-this.props.scrollTop;this.dom.right.parentNode.scrollTop=-this.props.scrollTop}return this.props.scrollTop};Core.prototype._getScrollTop=function(){return this.props.scrollTop};Core.prototype._createConfigurator=function(){throw new Error(\"Cannot invoke abstract method _createConfigurator\")};module.exports=Core},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var DateUtil=__webpack_require__(36);var util=__webpack_require__(2);function TimeStep(start,end,minimumStep,hiddenDates,options){this.moment=moment;this.current=this.moment();this._start=this.moment();this._end=this.moment();this.autoScale=true;this.scale=\"day\";this.step=1;this.setRange(start,end,minimumStep);this.switchedDay=false;this.switchedMonth=false;this.switchedYear=false;if(Array.isArray(hiddenDates)){this.hiddenDates=hiddenDates}else if(hiddenDates!=undefined){this.hiddenDates=[hiddenDates]}else{this.hiddenDates=[]}this.format=TimeStep.FORMAT;this.options=options?options:{}}TimeStep.FORMAT={minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",week:\"w\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",week:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}};TimeStep.prototype.setMoment=function(moment){this.moment=moment;this.current=this.moment(this.current.valueOf());this._start=this.moment(this._start.valueOf());this._end=this.moment(this._end.valueOf())};TimeStep.prototype.setFormat=function(format){var defaultFormat=util.deepExtend({},TimeStep.FORMAT);this.format=util.deepExtend(defaultFormat,format)};TimeStep.prototype.setRange=function(start,end,minimumStep){if(!(start instanceof Date)||!(end instanceof Date)){throw\"No legal start or end date in method setRange\"}this._start=start!=undefined?this.moment(start.valueOf()):new Date;this._end=end!=undefined?this.moment(end.valueOf()):new Date;if(this.autoScale){this.setMinimumStep(minimumStep)}};TimeStep.prototype.start=function(){this.current=this._start.clone();this.roundToMinor()};TimeStep.prototype.roundToMinor=function(){if(this.scale==\"week\"){this.current.weekday(0)}switch(this.scale){case\"year\":this.current.year(this.step*Math.floor(this.current.year()/this.step));this.current.month(0);case\"month\":this.current.date(1);case\"week\":case\"day\":case\"weekday\":this.current.hours(0);case\"hour\":this.current.minutes(0);case\"minute\":this.current.seconds(0);case\"second\":this.current.milliseconds(0)}if(this.step!=1){switch(this.scale){case\"millisecond\":this.current.subtract(this.current.milliseconds()%this.step,\"milliseconds\");break;case\"second\":this.current.subtract(this.current.seconds()%this.step,\"seconds\");break;case\"minute\":this.current.subtract(this.current.minutes()%this.step,\"minutes\");break;case\"hour\":this.current.subtract(this.current.hours()%this.step,\"hours\");break;case\"weekday\":case\"day\":this.current.subtract((this.current.date()-1)%this.step,\"day\");break;case\"week\":this.current.subtract(this.current.week()%this.step,\"week\");break;case\"month\":this.current.subtract(this.current.month()%this.step,\"month\");break;case\"year\":this.current.subtract(this.current.year()%this.step,\"year\");break;default:break}}};TimeStep.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()};TimeStep.prototype.next=function(){var prev=this.current.valueOf();switch(this.scale){case\"millisecond\":this.current.add(this.step,\"millisecond\");break;case\"second\":this.current.add(this.step,\"second\");break;case\"minute\":this.current.add(this.step,\"minute\");break;case\"hour\":this.current.add(this.step,\"hour\");if(this.current.month()<6){this.current.subtract(this.current.hours()%this.step,\"hour\")}else{if(this.current.hours()%this.step!==0){this.current.add(this.step-this.current.hours()%this.step,\"hour\")}}break;case\"weekday\":case\"day\":this.current.add(this.step,\"day\");break;case\"week\":if(this.current.weekday()!==0){this.current.weekday(0);this.current.add(this.step,\"week\")}else if(this.options.showMajorLabels===false){this.current.add(this.step,\"week\")}else{var nextWeek=this.current.clone();nextWeek.add(1,\"week\");if(nextWeek.isSame(this.current,\"month\")){this.current.add(this.step,\"week\")}else{this.current.add(this.step,\"week\");this.current.date(1)}}break;case\"month\":this.current.add(this.step,\"month\");break;case\"year\":this.current.add(this.step,\"year\");break;default:break}if(this.step!=1){switch(this.scale){case\"millisecond\":if(this.current.milliseconds()>0&&this.current.milliseconds()<this.step)this.current.milliseconds(0);break;case\"second\":if(this.current.seconds()>0&&this.current.seconds()<this.step)this.current.seconds(0);break;case\"minute\":if(this.current.minutes()>0&&this.current.minutes()<this.step)this.current.minutes(0);break;case\"hour\":if(this.current.hours()>0&&this.current.hours()<this.step)this.current.hours(0);break;case\"weekday\":case\"day\":if(this.current.date()<this.step+1)this.current.date(1);break;case\"week\":if(this.current.week()<this.step)this.current.week(1);break;case\"month\":if(this.current.month()<this.step)this.current.month(0);break;case\"year\":break;default:break}}if(this.current.valueOf()==prev){this.current=this._end.clone()}this.switchedDay=false;this.switchedMonth=false;this.switchedYear=false;DateUtil.stepOverHiddenDates(this.moment,this,prev)};TimeStep.prototype.getCurrent=function(){return this.current};TimeStep.prototype.setScale=function(params){if(params&&typeof params.scale==\"string\"){this.scale=params.scale;this.step=params.step>0?params.step:1;this.autoScale=false}};TimeStep.prototype.setAutoScale=function(enable){this.autoScale=enable};TimeStep.prototype.setMinimumStep=function(minimumStep){if(minimumStep==undefined){return}var stepYear=1e3*60*60*24*30*12;var stepMonth=1e3*60*60*24*30;var stepDay=1e3*60*60*24;var stepHour=1e3*60*60;var stepMinute=1e3*60;var stepSecond=1e3;var stepMillisecond=1;if(stepYear*1e3>minimumStep){this.scale=\"year\";this.step=1e3}if(stepYear*500>minimumStep){this.scale=\"year\";this.step=500}if(stepYear*100>minimumStep){this.scale=\"year\";this.step=100}if(stepYear*50>minimumStep){this.scale=\"year\";this.step=50}if(stepYear*10>minimumStep){this.scale=\"year\";this.step=10}if(stepYear*5>minimumStep){this.scale=\"year\";this.step=5}if(stepYear>minimumStep){this.scale=\"year\";this.step=1}if(stepMonth*3>minimumStep){this.scale=\"month\";this.step=3}if(stepMonth>minimumStep){this.scale=\"month\";this.step=1}if(stepDay*5>minimumStep){this.scale=\"day\";this.step=5}if(stepDay*2>minimumStep){this.scale=\"day\";this.step=2}if(stepDay>minimumStep){this.scale=\"day\";this.step=1}if(stepDay/2>minimumStep){this.scale=\"weekday\";this.step=1}if(stepHour*4>minimumStep){this.scale=\"hour\";this.step=4}if(stepHour>minimumStep){this.scale=\"hour\";this.step=1}if(stepMinute*15>minimumStep){this.scale=\"minute\";this.step=15}if(stepMinute*10>minimumStep){this.scale=\"minute\";this.step=10}if(stepMinute*5>minimumStep){this.scale=\"minute\";this.step=5}if(stepMinute>minimumStep){this.scale=\"minute\";this.step=1}if(stepSecond*15>minimumStep){this.scale=\"second\";this.step=15}if(stepSecond*10>minimumStep){this.scale=\"second\";this.step=10}if(stepSecond*5>minimumStep){this.scale=\"second\";this.step=5}if(stepSecond>minimumStep){this.scale=\"second\";this.step=1}if(stepMillisecond*200>minimumStep){this.scale=\"millisecond\";this.step=200}if(stepMillisecond*100>minimumStep){this.scale=\"millisecond\";this.step=100}if(stepMillisecond*50>minimumStep){this.scale=\"millisecond\";this.step=50}if(stepMillisecond*10>minimumStep){this.scale=\"millisecond\";this.step=10}if(stepMillisecond*5>minimumStep){this.scale=\"millisecond\";this.step=5}if(stepMillisecond>minimumStep){this.scale=\"millisecond\";this.step=1}};TimeStep.snap=function(date,scale,step){var clone=moment(date);if(scale==\"year\"){var year=clone.year()+Math.round(clone.month()/12);clone.year(Math.round(year/step)*step);clone.month(0);clone.date(0);clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"month\"){if(clone.date()>15){clone.date(1);clone.add(1,\"month\")}else{clone.date(1)}clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"week\"){if(clone.weekday()>2){clone.weekday(0);clone.add(1,\"week\")}else{clone.weekday(0)}clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"day\"){switch(step){case 5:case 2:clone.hours(Math.round(clone.hours()/24)*24);break;default:clone.hours(Math.round(clone.hours()/12)*12);break}clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"weekday\"){switch(step){case 5:case 2:clone.hours(Math.round(clone.hours()/12)*12);break;default:clone.hours(Math.round(clone.hours()/6)*6);break}clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"hour\"){switch(step){case 4:clone.minutes(Math.round(clone.minutes()/60)*60);break;default:clone.minutes(Math.round(clone.minutes()/30)*30);break}clone.seconds(0);clone.milliseconds(0)}else if(scale==\"minute\"){switch(step){case 15:case 10:clone.minutes(Math.round(clone.minutes()/5)*5);clone.seconds(0);break;case 5:clone.seconds(Math.round(clone.seconds()/60)*60);break;default:clone.seconds(Math.round(clone.seconds()/30)*30);break}clone.milliseconds(0)}else if(scale==\"second\"){switch(step){case 15:case 10:clone.seconds(Math.round(clone.seconds()/5)*5);clone.milliseconds(0);break;case 5:clone.milliseconds(Math.round(clone.milliseconds()/1e3)*1e3);break;default:clone.milliseconds(Math.round(clone.milliseconds()/500)*500);break}}else if(scale==\"millisecond\"){var _step=step>5?step/2:1;clone.milliseconds(Math.round(clone.milliseconds()/_step)*_step)}return clone};TimeStep.prototype.isMajor=function(){if(this.switchedYear==true){switch(this.scale){case\"year\":case\"month\":case\"week\":case\"weekday\":case\"day\":case\"hour\":case\"minute\":case\"second\":case\"millisecond\":return true;default:return false}}else if(this.switchedMonth==true){switch(this.scale){case\"week\":case\"weekday\":case\"day\":case\"hour\":case\"minute\":case\"second\":case\"millisecond\":return true;default:return false}}else if(this.switchedDay==true){switch(this.scale){case\"millisecond\":case\"second\":case\"minute\":case\"hour\":return true;default:return false}}var date=this.moment(this.current);switch(this.scale){case\"millisecond\":return date.milliseconds()==0;case\"second\":return date.seconds()==0;case\"minute\":return date.hours()==0&&date.minutes()==0;case\"hour\":return date.hours()==0;case\"weekday\":case\"day\":return date.date()==1;case\"week\":return date.date()==1;case\"month\":return date.month()==0;case\"year\":return false;default:return false}};TimeStep.prototype.getLabelMinor=function(date){if(date==undefined){date=this.current}if(date instanceof Date){date=this.moment(date)}if(typeof this.format.minorLabels===\"function\"){return this.format.minorLabels(date,this.scale,this.step)}var format=this.format.minorLabels[this.scale];switch(this.scale){case\"week\":if(this.isMajor()&&date.weekday()!==0){return\"\"}default:return format&&format.length>0?this.moment(date).format(format):\"\"}};TimeStep.prototype.getLabelMajor=function(date){if(date==undefined){date=this.current}if(date instanceof Date){date=this.moment(date)}if(typeof this.format.majorLabels===\"function\"){return this.format.majorLabels(date,this.scale,this.step)}var format=this.format.majorLabels[this.scale];return format&&format.length>0?this.moment(date).format(format):\"\"};TimeStep.prototype.getClassName=function(){var _moment=this.moment;var m=this.moment(this.current);var current=m.locale?m.locale(\"en\"):m.lang(\"en\");var step=this.step;var classNames=[];function even(value){return value/step%2==0?\" vis-even\":\" vis-odd\"}function today(date){if(date.isSame(new Date,\"day\")){return\" vis-today\"}if(date.isSame(_moment().add(1,\"day\"),\"day\")){return\" vis-tomorrow\"}if(date.isSame(_moment().add(-1,\"day\"),\"day\")){return\" vis-yesterday\"}return\"\"}function currentWeek(date){return date.isSame(new Date,\"week\")?\" vis-current-week\":\"\"}function currentMonth(date){return date.isSame(new Date,\"month\")?\" vis-current-month\":\"\"}function currentYear(date){return date.isSame(new Date,\"year\")?\" vis-current-year\":\"\"}switch(this.scale){case\"millisecond\":classNames.push(today(current));classNames.push(even(current.milliseconds()));break;case\"second\":classNames.push(today(current));classNames.push(even(current.seconds()));break;case\"minute\":classNames.push(today(current));classNames.push(even(current.minutes()));break;case\"hour\":classNames.push(\"vis-h\"+current.hours()+(this.step==4?\"-h\"+(current.hours()+4):\"\"));classNames.push(today(current));classNames.push(even(current.hours()));break;case\"weekday\":classNames.push(\"vis-\"+current.format(\"dddd\").toLowerCase());classNames.push(today(current));classNames.push(currentWeek(current));classNames.push(even(current.date()));break;case\"day\":classNames.push(\"vis-day\"+current.date());classNames.push(\"vis-\"+current.format(\"MMMM\").toLowerCase());classNames.push(today(current));classNames.push(currentMonth(current));classNames.push(this.step<=2?today(current):\"\");classNames.push(this.step<=2?\"vis-\"+current.format(\"dddd\").toLowerCase():\"\");classNames.push(even(current.date()-1));break;case\"week\":classNames.push(\"vis-week\"+current.format(\"w\"));classNames.push(currentWeek(current));classNames.push(even(current.week()));break;case\"month\":classNames.push(\"vis-\"+current.format(\"MMMM\").toLowerCase());classNames.push(currentMonth(current));classNames.push(even(current.month()));break;case\"year\":classNames.push(\"vis-year\"+current.year());classNames.push(currentYear(current));classNames.push(even(current.year()));break}return classNames.filter(String).join(\" \")};module.exports=TimeStep},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);var Component=__webpack_require__(16);var moment=__webpack_require__(9);var locales=__webpack_require__(98);function CurrentTime(body,options){this.body=body;this.defaultOptions={rtl:false,showCurrentTime:true,moment:moment,locales:locales,locale:\"en\"};this.options=util.extend({},this.defaultOptions);this.offset=0;this._create();this.setOptions(options)}CurrentTime.prototype=new Component;CurrentTime.prototype._create=function(){var bar=document.createElement(\"div\");bar.className=\"vis-current-time\";bar.style.position=\"absolute\";bar.style.top=\"0px\";bar.style.height=\"100%\";this.bar=bar};CurrentTime.prototype.destroy=function(){this.options.showCurrentTime=false;this.redraw();this.body=null};CurrentTime.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"rtl\",\"showCurrentTime\",\"moment\",\"locale\",\"locales\"],this.options,options)}};CurrentTime.prototype.redraw=function(){if(this.options.showCurrentTime){var parent=this.body.dom.backgroundVertical;if(this.bar.parentNode!=parent){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}parent.appendChild(this.bar);this.start()}var now=this.options.moment((new Date).valueOf()+this.offset);var x=this.body.util.toScreen(now);var locale=this.options.locales[this.options.locale];if(!locale){if(!this.warned){console.log(\"WARNING: options.locales['\"+this.options.locale+\"'] not found. See http://visjs.org/docs/timeline/#Localization\");this.warned=true}locale=this.options.locales[\"en\"]}var title=locale.current+\" \"+locale.time+\": \"+now.format(\"dddd, MMMM Do YYYY, H:mm:ss\");title=title.charAt(0).toUpperCase()+title.substring(1);if(this.options.rtl){this.bar.style.right=x+\"px\"}else{this.bar.style.left=x+\"px\"}this.bar.title=title}else{if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}this.stop()}return false};CurrentTime.prototype.start=function(){var me=this;function update(){me.stop();var scale=me.body.range.conversion(me.body.domProps.center.width).scale;var interval=1/scale/10;if(interval<30)interval=30;if(interval>1e3)interval=1e3;me.redraw();me.body.emitter.emit(\"currentTimeTick\");me.currentTimeTimer=setTimeout(update,interval)}update()};CurrentTime.prototype.stop=function(){if(this.currentTimeTimer!==undefined){clearTimeout(this.currentTimeTimer);delete this.currentTimeTimer}};CurrentTime.prototype.setCurrentTime=function(time){var t=util.convert(time,\"Date\").valueOf();var now=(new Date).valueOf();this.offset=t-now;this.redraw()};CurrentTime.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)};module.exports=CurrentTime},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var stack=__webpack_require__(100);function Group(groupId,data,itemSet){this.groupId=groupId;this.subgroups={};this.subgroupStack={};this.subgroupStackAll=false;this.doInnerStack=false;this.subgroupIndex=0;this.subgroupOrderer=data&&data.subgroupOrder;this.itemSet=itemSet;this.isVisible=null;this.stackDirty=true;if(data&&data.nestedGroups){this.nestedGroups=data.nestedGroups;if(data.showNested==false){this.showNested=false}else{this.showNested=true}}if(data&&data.subgroupStack){if(typeof data.subgroupStack===\"boolean\"){this.doInnerStack=data.subgroupStack;this.subgroupStackAll=data.subgroupStack}else{for(var key in data.subgroupStack){this.subgroupStack[key]=data.subgroupStack[key];this.doInnerStack=this.doInnerStack||data.subgroupStack[key]}}}this.nestedInGroup=null;this.dom={};this.props={label:{width:0,height:0}};this.className=null;this.items={};this.visibleItems=[];this.itemsInRange=[];this.orderedItems={byStart:[],byEnd:[]};this.checkRangedItems=false;var me=this;this.itemSet.body.emitter.on(\"checkRangedItems\",function(){me.checkRangedItems=true});this._create();this.setData(data)}Group.prototype._create=function(){var label=document.createElement(\"div\");if(this.itemSet.options.groupEditable.order){label.className=\"vis-label draggable\"}else{label.className=\"vis-label\"}this.dom.label=label;var inner=document.createElement(\"div\");inner.className=\"vis-inner\";label.appendChild(inner);this.dom.inner=inner;var foreground=document.createElement(\"div\");foreground.className=\"vis-group\";foreground[\"timeline-group\"]=this;this.dom.foreground=foreground;this.dom.background=document.createElement(\"div\");this.dom.background.className=\"vis-group\";this.dom.axis=document.createElement(\"div\");this.dom.axis.className=\"vis-group\";this.dom.marker=document.createElement(\"div\");this.dom.marker.style.visibility=\"hidden\";this.dom.marker.style.position=\"absolute\";this.dom.marker.innerHTML=\"\";this.dom.background.appendChild(this.dom.marker)};Group.prototype.setData=function(data){var content;var templateFunction;if(this.itemSet.options&&this.itemSet.options.groupTemplate){templateFunction=this.itemSet.options.groupTemplate.bind(this);content=templateFunction(data,this.dom.inner)}else{content=data&&data.content}if(content instanceof Element){this.dom.inner.appendChild(content);while(this.dom.inner.firstChild){this.dom.inner.removeChild(this.dom.inner.firstChild)}this.dom.inner.appendChild(content)}else if(content instanceof Object){templateFunction(data,this.dom.inner)}else if(content!==undefined&&content!==null){this.dom.inner.innerHTML=content}else{this.dom.inner.innerHTML=this.groupId||\"\"}this.dom.label.title=data&&data.title||\"\";if(!this.dom.inner.firstChild){util.addClassName(this.dom.inner,\"vis-hidden\")}else{util.removeClassName(this.dom.inner,\"vis-hidden\")}if(data&&data.nestedGroups){if(!this.nestedGroups||this.nestedGroups!=data.nestedGroups){this.nestedGroups=data.nestedGroups}if(data.showNested!==undefined||this.showNested===undefined){if(data.showNested==false){this.showNested=false}else{this.showNested=true}}util.addClassName(this.dom.label,\"vis-nesting-group\");var collapsedDirClassName=this.itemSet.options.rtl?\"collapsed-rtl\":\"collapsed\";if(this.showNested){util.removeClassName(this.dom.label,collapsedDirClassName);util.addClassName(this.dom.label,\"expanded\")}else{util.removeClassName(this.dom.label,\"expanded\");util.addClassName(this.dom.label,collapsedDirClassName)}}else if(this.nestedGroups){this.nestedGroups=null;collapsedDirClassName=this.itemSet.options.rtl?\"collapsed-rtl\":\"collapsed\";util.removeClassName(this.dom.label,collapsedDirClassName);util.removeClassName(this.dom.label,\"expanded\");util.removeClassName(this.dom.label,\"vis-nesting-group\")}if(data&&data.nestedInGroup){util.addClassName(this.dom.label,\"vis-nested-group\");if(this.itemSet.options&&this.itemSet.options.rtl){this.dom.inner.style.paddingRight=\"30px\"}else{\nthis.dom.inner.style.paddingLeft=\"30px\"}}var className=data&&data.className||null;if(className!=this.className){if(this.className){util.removeClassName(this.dom.label,this.className);util.removeClassName(this.dom.foreground,this.className);util.removeClassName(this.dom.background,this.className);util.removeClassName(this.dom.axis,this.className)}util.addClassName(this.dom.label,className);util.addClassName(this.dom.foreground,className);util.addClassName(this.dom.background,className);util.addClassName(this.dom.axis,className);this.className=className}if(this.style){util.removeCssText(this.dom.label,this.style);this.style=null}if(data&&data.style){util.addCssText(this.dom.label,data.style);this.style=data.style}};Group.prototype.getLabelWidth=function(){return this.props.label.width};Group.prototype._didMarkerHeightChange=function(){var markerHeight=this.dom.marker.clientHeight;if(markerHeight!=this.lastMarkerHeight){this.lastMarkerHeight=markerHeight;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.items,function(item,key){item.dirty=true;if(item.displayed){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}return true}};Group.prototype._calculateGroupSizeAndPosition=function(){var offsetTop=this.dom.foreground.offsetTop;var offsetLeft=this.dom.foreground.offsetLeft;var offsetWidth=this.dom.foreground.offsetWidth;this.top=offsetTop;this.right=offsetLeft;this.width=offsetWidth};Group.prototype._redrawItems=function(forceRestack,lastIsVisible,margin,range){var restack=forceRestack||this.stackDirty||this.isVisible&&!lastIsVisible;if(restack){var visibleSubgroups={};var subgroup=null;if(typeof this.itemSet.options.order===\"function\"){var me=this;var limitSize=false;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.items,function(item,key){if(!item.displayed){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length;me.visibleItems.push(item)}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}util.forEach(this.items,function(item){item.repositionX(limitSize)});if(this.doInnerStack&&this.itemSet.options.stackSubgroups){for(subgroup in this.subgroups){visibleSubgroups[subgroup]=this.subgroups[subgroup].items.slice().sort(function(a,b){return me.itemSet.options.order(a.data,b.data)})}stack.stackSubgroupsWithInnerStack(visibleSubgroups,margin,this.subgroups)}else{var customOrderedItems=this.orderedItems.byStart.slice().sort(function(a,b){return me.itemSet.options.order(a.data,b.data)});stack.stack(customOrderedItems,margin,true)}this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range)}else{this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range);if(this.itemSet.options.stack){if(this.doInnerStack&&this.itemSet.options.stackSubgroups){for(subgroup in this.subgroups){visibleSubgroups[subgroup]=this.subgroups[subgroup].items}stack.stackSubgroupsWithInnerStack(visibleSubgroups,margin,this.subgroups)}else{stack.stack(this.visibleItems,margin,true)}}else{stack.nostack(this.visibleItems,margin,this.subgroups,this.itemSet.options.stackSubgroups)}}this.stackDirty=false}};Group.prototype._didResize=function(resized,height){resized=util.updateProperty(this,\"height\",height)||resized;var labelWidth=this.dom.inner.clientWidth;var labelHeight=this.dom.inner.clientHeight;resized=util.updateProperty(this.props.label,\"width\",labelWidth)||resized;resized=util.updateProperty(this.props.label,\"height\",labelHeight)||resized;return resized};Group.prototype._applyGroupHeight=function(height){this.dom.background.style.height=height+\"px\";this.dom.foreground.style.height=height+\"px\";this.dom.label.style.height=height+\"px\"};Group.prototype._updateItemsVerticalPosition=function(margin){for(var i=0,ii=this.visibleItems.length;i<ii;i++){var item=this.visibleItems[i];item.repositionY(margin);if(!this.isVisible&&this.groupId!=\"__background__\"){if(item.displayed)item.hide()}}};Group.prototype.redraw=function(range,margin,forceRestack,returnQueue){var resized=false;var lastIsVisible=this.isVisible;var height;var queue=[function(){forceRestack=this._didMarkerHeightChange.bind(this)}.bind(this),this._updateSubGroupHeights.bind(this,margin),this._calculateGroupSizeAndPosition.bind(this),function(){this.isVisible=this._isGroupVisible.bind(this)(range,margin)}.bind(this),function(){this._redrawItems.bind(this)(forceRestack,lastIsVisible,margin,range)}.bind(this),this._updateSubgroupsSizes.bind(this),function(){height=this._calculateHeight.bind(this)(margin)}.bind(this),this._calculateGroupSizeAndPosition.bind(this),function(){resized=this._didResize.bind(this)(resized,height)}.bind(this),function(){this._applyGroupHeight.bind(this)(height)}.bind(this),function(){this._updateItemsVerticalPosition.bind(this)(margin)}.bind(this),function(){if(!this.isVisible&&this.height){resized=false}return resized}];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};Group.prototype._updateSubGroupHeights=function(margin){if((0,_keys2[\"default\"])(this.subgroups).length>0){var me=this;this.resetSubgroups();util.forEach(this.visibleItems,function(item){if(item.data.subgroup!==undefined){me.subgroups[item.data.subgroup].height=Math.max(me.subgroups[item.data.subgroup].height,item.height+margin.item.vertical);me.subgroups[item.data.subgroup].visible=true}})}};Group.prototype._isGroupVisible=function(range,margin){return this.top<=range.body.domProps.centerContainer.height-range.body.domProps.scrollTop+margin.axis&&this.top+this.height+margin.axis>=-range.body.domProps.scrollTop};Group.prototype._calculateHeight=function(margin){var height;var itemsInRange=this.visibleItems;if(itemsInRange.length>0){var min=itemsInRange[0].top;var max=itemsInRange[0].top+itemsInRange[0].height;util.forEach(itemsInRange,function(item){min=Math.min(min,item.top);max=Math.max(max,item.top+item.height)});if(min>margin.axis){var offset=min-margin.axis;max-=offset;util.forEach(itemsInRange,function(item){item.top-=offset})}height=max+margin.item.vertical/2}else{height=0}height=Math.max(height,this.props.label.height);return height};Group.prototype.show=function(){if(!this.dom.label.parentNode){this.itemSet.dom.labelSet.appendChild(this.dom.label)}if(!this.dom.foreground.parentNode){this.itemSet.dom.foreground.appendChild(this.dom.foreground)}if(!this.dom.background.parentNode){this.itemSet.dom.background.appendChild(this.dom.background)}if(!this.dom.axis.parentNode){this.itemSet.dom.axis.appendChild(this.dom.axis)}};Group.prototype.hide=function(){var label=this.dom.label;if(label.parentNode){label.parentNode.removeChild(label)}var foreground=this.dom.foreground;if(foreground.parentNode){foreground.parentNode.removeChild(foreground)}var background=this.dom.background;if(background.parentNode){background.parentNode.removeChild(background)}var axis=this.dom.axis;if(axis.parentNode){axis.parentNode.removeChild(axis)}};Group.prototype.add=function(item){this.items[item.id]=item;item.setParent(this);this.stackDirty=true;if(item.data.subgroup!==undefined){this._addToSubgroup(item);this.orderSubgroups()}if(this.visibleItems.indexOf(item)==-1){var range=this.itemSet.body.range;this._checkIfVisible(item,this.visibleItems,range)}};Group.prototype._addToSubgroup=function(item,subgroupId){subgroupId=subgroupId||item.data.subgroup;if(subgroupId!=undefined&&this.subgroups[subgroupId]===undefined){this.subgroups[subgroupId]={height:0,top:0,start:item.data.start,end:item.data.end||item.data.start,visible:false,index:this.subgroupIndex,items:[],stack:this.subgroupStackAll||this.subgroupStack[subgroupId]||false};this.subgroupIndex++}if(new Date(item.data.start)<new Date(this.subgroups[subgroupId].start)){this.subgroups[subgroupId].start=item.data.start}var itemEnd=item.data.end||item.data.start;if(new Date(itemEnd)>new Date(this.subgroups[subgroupId].end)){this.subgroups[subgroupId].end=itemEnd}this.subgroups[subgroupId].items.push(item)};Group.prototype._updateSubgroupsSizes=function(){var me=this;if(me.subgroups){for(var subgroup in me.subgroups){var initialEnd=me.subgroups[subgroup].items[0].data.end||me.subgroups[subgroup].items[0].data.start;var newStart=me.subgroups[subgroup].items[0].data.start;var newEnd=initialEnd-1;me.subgroups[subgroup].items.forEach(function(item){if(new Date(item.data.start)<new Date(newStart)){newStart=item.data.start}var itemEnd=item.data.end||item.data.start;if(new Date(itemEnd)>new Date(newEnd)){newEnd=itemEnd}});me.subgroups[subgroup].start=newStart;me.subgroups[subgroup].end=new Date(newEnd-1)}}};Group.prototype.orderSubgroups=function(){if(this.subgroupOrderer!==undefined){var sortArray=[];var subgroup;if(typeof this.subgroupOrderer==\"string\"){for(subgroup in this.subgroups){sortArray.push({subgroup:subgroup,sortField:this.subgroups[subgroup].items[0].data[this.subgroupOrderer]})}sortArray.sort(function(a,b){return a.sortField-b.sortField})}else if(typeof this.subgroupOrderer==\"function\"){for(subgroup in this.subgroups){sortArray.push(this.subgroups[subgroup].items[0].data)}sortArray.sort(this.subgroupOrderer)}if(sortArray.length>0){for(var i=0;i<sortArray.length;i++){this.subgroups[sortArray[i].subgroup].index=i}}}};Group.prototype.resetSubgroups=function(){for(var subgroup in this.subgroups){if(this.subgroups.hasOwnProperty(subgroup)){this.subgroups[subgroup].visible=false;this.subgroups[subgroup].height=0}}};Group.prototype.remove=function(item){delete this.items[item.id];item.setParent(null);this.stackDirty=true;var index=this.visibleItems.indexOf(item);if(index!=-1)this.visibleItems.splice(index,1);if(item.data.subgroup!==undefined){this._removeFromSubgroup(item);this.orderSubgroups()}};Group.prototype._removeFromSubgroup=function(item,subgroupId){subgroupId=subgroupId||item.data.subgroup;if(subgroupId!=undefined){var subgroup=this.subgroups[subgroupId];if(subgroup){var itemIndex=subgroup.items.indexOf(item);if(itemIndex>=0){subgroup.items.splice(itemIndex,1);if(!subgroup.items.length){delete this.subgroups[subgroupId]}else{this._updateSubgroupsSizes()}}}}};Group.prototype.removeFromDataSet=function(item){this.itemSet.removeItem(item.id)};Group.prototype.order=function(){var array=util.toArray(this.items);var startArray=[];var endArray=[];for(var i=0;i<array.length;i++){if(array[i].data.end!==undefined){endArray.push(array[i])}startArray.push(array[i])}this.orderedItems={byStart:startArray,byEnd:endArray};stack.orderByStart(this.orderedItems.byStart);stack.orderByEnd(this.orderedItems.byEnd)};Group.prototype._updateItemsInRange=function(orderedItems,oldVisibleItems,range){var visibleItems=[];var visibleItemsLookup={};var interval=(range.end-range.start)/4;var lowerBound=range.start-interval;var upperBound=range.end+interval;var searchFunction=function searchFunction(value){if(value<lowerBound){return-1}else if(value<=upperBound){return 0}else{return 1}};if(oldVisibleItems.length>0){for(var i=0;i<oldVisibleItems.length;i++){this._checkIfVisibleWithReference(oldVisibleItems[i],visibleItems,visibleItemsLookup,range)}}var initialPosByStart=util.binarySearchCustom(orderedItems.byStart,searchFunction,\"data\",\"start\");this._traceVisible(initialPosByStart,orderedItems.byStart,visibleItems,visibleItemsLookup,function(item){return item.data.start<lowerBound||item.data.start>upperBound});if(this.checkRangedItems==true){this.checkRangedItems=false;for(i=0;i<orderedItems.byEnd.length;i++){this._checkIfVisibleWithReference(orderedItems.byEnd[i],visibleItems,visibleItemsLookup,range)}}else{var initialPosByEnd=util.binarySearchCustom(orderedItems.byEnd,searchFunction,\"data\",\"end\");this._traceVisible(initialPosByEnd,orderedItems.byEnd,visibleItems,visibleItemsLookup,function(item){return item.data.end<lowerBound||item.data.end>upperBound})}var redrawQueue={};var redrawQueueLength=0;for(i=0;i<visibleItems.length;i++){var item=visibleItems[i];if(!item.displayed){var returnQueue=true;redrawQueue[i]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[i].length}}var needRedraw=redrawQueueLength>0;if(needRedraw){for(var j=0;j<redrawQueueLength;j++){util.forEach(redrawQueue,function(fns){fns[j]()})}}for(i=0;i<visibleItems.length;i++){visibleItems[i].repositionX()}return visibleItems};Group.prototype._traceVisible=function(initialPos,items,visibleItems,visibleItemsLookup,breakCondition){if(initialPos!=-1){var i,item;for(i=initialPos;i>=0;i--){item=items[i];if(breakCondition(item)){break}else{if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}}for(i=initialPos+1;i<items.length;i++){item=items[i];if(breakCondition(item)){break}else{if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}}}};Group.prototype._checkIfVisible=function(item,visibleItems,range){if(item.isVisible(range)){if(!item.displayed)item.show();item.repositionX();visibleItems.push(item)}else{if(item.displayed)item.hide()}};Group.prototype._checkIfVisibleWithReference=function(item,visibleItems,visibleItemsLookup,range){if(item.isVisible(range)){if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}else{if(item.displayed)item.hide()}};Group.prototype.changeSubgroup=function(item,oldSubgroup,newSubgroup){this._removeFromSubgroup(item,oldSubgroup);this._addToSubgroup(item,newSubgroup);this.orderSubgroups()};module.exports=Group},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Group=__webpack_require__(68);function BackgroundGroup(groupId,data,itemSet){Group.call(this,groupId,data,itemSet);this.width=0;this.height=0;this.top=0;this.left=0}BackgroundGroup.prototype=(0,_create2[\"default\"])(Group.prototype);BackgroundGroup.prototype.redraw=function(range,margin,forceRestack){var resized=false;this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range);this.width=this.dom.background.offsetWidth;this.dom.background.style.height=\"0\";for(var i=0,ii=this.visibleItems.length;i<ii;i++){var item=this.visibleItems[i];item.repositionY(margin)}return resized};BackgroundGroup.prototype.show=function(){if(!this.dom.background.parentNode){this.itemSet.dom.background.appendChild(this.dom.background)}};module.exports=BackgroundGroup},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function RangeItem(data,conversion,options){this.props={content:{width:0}};this.overflow=false;this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data.id)}if(data.end==undefined){throw new Error('Property \"end\" missing in item '+data.id)}}Item.call(this,data,conversion,options)}RangeItem.prototype=new Item(null,null,null);RangeItem.prototype.baseClassName=\"vis-item vis-range\";RangeItem.prototype.isVisible=function(range){return this.data.start<range.end&&this.data.end>range.start};RangeItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"div\");this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-item-overflow\";this.dom.box.appendChild(this.dom.frame);this.dom.visibleFrame=document.createElement(\"div\");this.dom.visibleFrame.className=\"vis-item-visible-frame\";this.dom.box.appendChild(this.dom.visibleFrame);this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.frame.appendChild(this.dom.content);this.dom.box[\"timeline-item\"]=this;this.dirty=true}};RangeItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var foreground=this.parent.dom.foreground;if(!foreground){throw new Error(\"Cannot redraw item: parent has no foreground container element\")}foreground.appendChild(this.dom.box)}this.displayed=true};RangeItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.box);this._updateStyle(this.dom.box);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.box.className=this.baseClassName+className;this.dom.content.style.maxWidth=\"none\"}};RangeItem.prototype._getDomComponentsSizes=function(){this.overflow=window.getComputedStyle(this.dom.frame).overflow!==\"hidden\";return{content:{width:this.dom.content.offsetWidth},box:{height:this.dom.box.offsetHeight}}};RangeItem.prototype._updateDomComponentsSizes=function(sizes){this.props.content.width=sizes.content.width;this.height=sizes.box.height;this.dom.content.style.maxWidth=\"\";this.dirty=false};RangeItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.box);this._repaintDeleteButton(this.dom.box);this._repaintDragCenter();this._repaintDragLeft();this._repaintDragRight()};RangeItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes.bind(this)()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};RangeItem.prototype.show=function(){if(!this.displayed){this.redraw()}};RangeItem.prototype.hide=function(){if(this.displayed){var box=this.dom.box;if(box.parentNode){box.parentNode.removeChild(box)}this.displayed=false}};RangeItem.prototype.repositionX=function(limitSize){var parentWidth=this.parent.width;var start=this.conversion.toScreen(this.data.start);var end=this.conversion.toScreen(this.data.end);var align=this.data.align===undefined?this.options.align:this.data.align;var contentStartPosition;var contentWidth;if(this.data.limitSize!==false&&(limitSize===undefined||limitSize===true)){if(start<-parentWidth){start=-parentWidth}if(end>2*parentWidth){end=2*parentWidth}}var boxWidth=Math.max(end-start+.5,1);if(this.overflow){if(this.options.rtl){this.right=start}else{this.left=start}this.width=boxWidth+this.props.content.width;contentWidth=this.props.content.width}else{if(this.options.rtl){this.right=start}else{this.left=start}this.width=boxWidth;contentWidth=Math.min(end-start,this.props.content.width)}if(this.options.rtl){this.dom.box.style.right=this.right+\"px\"}else{this.dom.box.style.left=this.left+\"px\"}this.dom.box.style.width=boxWidth+\"px\";switch(align){case\"left\":if(this.options.rtl){this.dom.content.style.right=\"0\"}else{this.dom.content.style.left=\"0\"}break;case\"right\":if(this.options.rtl){this.dom.content.style.right=Math.max(boxWidth-contentWidth,0)+\"px\"}else{this.dom.content.style.left=Math.max(boxWidth-contentWidth,0)+\"px\"}break;case\"center\":if(this.options.rtl){this.dom.content.style.right=Math.max((boxWidth-contentWidth)/2,0)+\"px\"}else{this.dom.content.style.left=Math.max((boxWidth-contentWidth)/2,0)+\"px\"}break;default:if(this.overflow){if(end>0){contentStartPosition=Math.max(-start,0)}else{contentStartPosition=-contentWidth}}else{if(start<0){contentStartPosition=-start}else{contentStartPosition=0}}if(this.options.rtl){this.dom.content.style.right=contentStartPosition+\"px\"}else{this.dom.content.style.left=contentStartPosition+\"px\";this.dom.content.style.width=\"calc(100% - \"+contentStartPosition+\"px)\"}}};RangeItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var box=this.dom.box;if(orientation==\"top\"){box.style.top=this.top+\"px\"}else{box.style.top=this.parent.height-this.top-this.height+\"px\"}};RangeItem.prototype._repaintDragLeft=function(){if((this.selected||this.options.itemsAlwaysDraggable.range)&&this.options.editable.updateTime&&!this.dom.dragLeft){var dragLeft=document.createElement(\"div\");dragLeft.className=\"vis-drag-left\";dragLeft.dragLeftItem=this;this.dom.box.appendChild(dragLeft);this.dom.dragLeft=dragLeft}else if(!this.selected&&!this.options.itemsAlwaysDraggable.range&&this.dom.dragLeft){if(this.dom.dragLeft.parentNode){this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft)}this.dom.dragLeft=null}};RangeItem.prototype._repaintDragRight=function(){if((this.selected||this.options.itemsAlwaysDraggable.range)&&this.options.editable.updateTime&&!this.dom.dragRight){var dragRight=document.createElement(\"div\");dragRight.className=\"vis-drag-right\";dragRight.dragRightItem=this;this.dom.box.appendChild(dragRight);this.dom.dragRight=dragRight}else if(!this.selected&&!this.options.itemsAlwaysDraggable.range&&this.dom.dragRight){if(this.dom.dragRight.parentNode){this.dom.dragRight.parentNode.removeChild(this.dom.dragRight)}this.dom.dragRight=null}};module.exports=RangeItem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ColorPicker=__webpack_require__(179)[\"default\"];var Configurator=function(){function Configurator(parentModule,defaultContainer,configureOptions){var pixelRatio=arguments.length>3&&arguments[3]!==undefined?arguments[3]:1;(0,_classCallCheck3[\"default\"])(this,Configurator);this.parent=parentModule;this.changedOptions=[];this.container=defaultContainer;this.allowCreation=false;this.options={};this.initialized=false;this.popupCounter=0;this.defaultOptions={enabled:false,filter:true,container:undefined,showButton:true};util.extend(this.options,this.defaultOptions);this.configureOptions=configureOptions;this.moduleOptions={};this.domElements=[];this.popupDiv={};this.popupLimit=5;this.popupHistory={};this.colorPicker=new ColorPicker(pixelRatio);this.wrapper=undefined}(0,_createClass3[\"default\"])(Configurator,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){this.popupHistory={};this._removePopup();var enabled=true;if(typeof options===\"string\"){this.options.filter=options}else if(options instanceof Array){this.options.filter=options.join()}else if((typeof options===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(options))===\"object\"){if(options.container!==undefined){this.options.container=options.container}if(options.filter!==undefined){this.options.filter=options.filter}if(options.showButton!==undefined){this.options.showButton=options.showButton}if(options.enabled!==undefined){enabled=options.enabled}}else if(typeof options===\"boolean\"){this.options.filter=true;enabled=options}else if(typeof options===\"function\"){this.options.filter=options;enabled=true}if(this.options.filter===false){enabled=false}this.options.enabled=enabled}this._clean()}},{key:\"setModuleOptions\",value:function setModuleOptions(moduleOptions){this.moduleOptions=moduleOptions;if(this.options.enabled===true){this._clean();if(this.options.container!==undefined){this.container=this.options.container}this._create()}}},{key:\"_create\",value:function _create(){var _this=this;this._clean();this.changedOptions=[];var filter=this.options.filter;var counter=0;var show=false;for(var option in this.configureOptions){if(this.configureOptions.hasOwnProperty(option)){this.allowCreation=false;show=false;if(typeof filter===\"function\"){show=filter(option,[]);show=show||this._handleObject(this.configureOptions[option],[option],true)}else if(filter===true||filter.indexOf(option)!==-1){show=true}if(show!==false){this.allowCreation=true;if(counter>0){this._makeItem([])}this._makeHeader(option);this._handleObject(this.configureOptions[option],[option])}counter++}}if(this.options.showButton===true){var generateButton=document.createElement(\"div\");generateButton.className=\"vis-configuration vis-config-button\";generateButton.innerHTML=\"generate options\";generateButton.onclick=function(){_this._printOptions()};generateButton.onmouseover=function(){generateButton.className=\"vis-configuration vis-config-button hover\"};generateButton.onmouseout=function(){generateButton.className=\"vis-configuration vis-config-button\"};this.optionsContainer=document.createElement(\"div\");this.optionsContainer.className=\"vis-configuration vis-config-option-container\";this.domElements.push(this.optionsContainer);this.domElements.push(generateButton)}this._push()}},{key:\"_push\",value:function _push(){this.wrapper=document.createElement(\"div\");this.wrapper.className=\"vis-configuration-wrapper\";this.container.appendChild(this.wrapper);for(var i=0;i<this.domElements.length;i++){this.wrapper.appendChild(this.domElements[i])}this._showPopupIfNeeded()}},{key:\"_clean\",value:function _clean(){for(var i=0;i<this.domElements.length;i++){this.wrapper.removeChild(this.domElements[i])}if(this.wrapper!==undefined){this.container.removeChild(this.wrapper);this.wrapper=undefined}this.domElements=[];this._removePopup()}},{key:\"_getValue\",value:function _getValue(path){var base=this.moduleOptions;for(var i=0;i<path.length;i++){if(base[path[i]]!==undefined){base=base[path[i]]}else{base=undefined;break}}return base}},{key:\"_makeItem\",value:function _makeItem(path){if(this.allowCreation===true){var item=document.createElement(\"div\");item.className=\"vis-configuration vis-config-item vis-config-s\"+path.length;for(var _len=arguments.length,domElements=Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){domElements[_key-1]=arguments[_key]}domElements.forEach(function(element){item.appendChild(element)});this.domElements.push(item);return this.domElements.length}return 0}},{key:\"_makeHeader\",value:function _makeHeader(name){var div=document.createElement(\"div\");div.className=\"vis-configuration vis-config-header\";div.innerHTML=name;this._makeItem([],div)}},{key:\"_makeLabel\",value:function _makeLabel(name,path){var objectLabel=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var div=document.createElement(\"div\");div.className=\"vis-configuration vis-config-label vis-config-s\"+path.length;if(objectLabel===true){div.innerHTML=\"<i><b>\"+name+\":</b></i>\"}else{div.innerHTML=name+\":\"}return div}},{key:\"_makeDropdown\",value:function _makeDropdown(arr,value,path){var select=document.createElement(\"select\");select.className=\"vis-configuration vis-config-select\";var selectedValue=0;if(value!==undefined){if(arr.indexOf(value)!==-1){selectedValue=arr.indexOf(value)}}for(var i=0;i<arr.length;i++){var option=document.createElement(\"option\");option.value=arr[i];if(i===selectedValue){option.selected=\"selected\"}option.innerHTML=arr[i];select.appendChild(option)}var me=this;select.onchange=function(){me._update(this.value,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,select)}},{key:\"_makeRange\",value:function _makeRange(arr,value,path){var defaultValue=arr[0];var min=arr[1];var max=arr[2];var step=arr[3];var range=document.createElement(\"input\");range.className=\"vis-configuration vis-config-range\";try{range.type=\"range\";range.min=min;range.max=max}catch(err){}range.step=step;var popupString=\"\";var popupValue=0;if(value!==undefined){var factor=1.2;if(value<0&&value*factor<min){range.min=Math.ceil(value*factor);popupValue=range.min;popupString=\"range increased\"}else if(value/factor<min){range.min=Math.ceil(value/factor);popupValue=range.min;popupString=\"range increased\"}if(value*factor>max&&max!==1){range.max=Math.ceil(value*factor);popupValue=range.max;popupString=\"range increased\"}range.value=value}else{range.value=defaultValue}var input=document.createElement(\"input\");input.className=\"vis-configuration vis-config-rangeinput\";input.value=range.value;var me=this;range.onchange=function(){input.value=this.value;me._update(Number(this.value),path)};range.oninput=function(){input.value=this.value};var label=this._makeLabel(path[path.length-1],path);var itemIndex=this._makeItem(path,label,range,input);if(popupString!==\"\"&&this.popupHistory[itemIndex]!==popupValue){this.popupHistory[itemIndex]=popupValue;this._setupPopup(popupString,itemIndex)}}},{key:\"_setupPopup\",value:function _setupPopup(string,index){var _this2=this;if(this.initialized===true&&this.allowCreation===true&&this.popupCounter<this.popupLimit){var div=document.createElement(\"div\");div.id=\"vis-configuration-popup\";div.className=\"vis-configuration-popup\";div.innerHTML=string;div.onclick=function(){_this2._removePopup()};this.popupCounter+=1;this.popupDiv={html:div,index:index}}}},{key:\"_removePopup\",value:function _removePopup(){if(this.popupDiv.html!==undefined){this.popupDiv.html.parentNode.removeChild(this.popupDiv.html);clearTimeout(this.popupDiv.hideTimeout);clearTimeout(this.popupDiv.deleteTimeout);this.popupDiv={}}}},{key:\"_showPopupIfNeeded\",value:function _showPopupIfNeeded(){var _this3=this;if(this.popupDiv.html!==undefined){var correspondingElement=this.domElements[this.popupDiv.index];var rect=correspondingElement.getBoundingClientRect();this.popupDiv.html.style.left=rect.left+\"px\";this.popupDiv.html.style.top=rect.top-30+\"px\";document.body.appendChild(this.popupDiv.html);this.popupDiv.hideTimeout=setTimeout(function(){_this3.popupDiv.html.style.opacity=0},1500);this.popupDiv.deleteTimeout=setTimeout(function(){_this3._removePopup()},1800)}}},{key:\"_makeCheckbox\",value:function _makeCheckbox(defaultValue,value,path){var checkbox=document.createElement(\"input\");checkbox.type=\"checkbox\";checkbox.className=\"vis-configuration vis-config-checkbox\";checkbox.checked=defaultValue;if(value!==undefined){checkbox.checked=value;if(value!==defaultValue){if((typeof defaultValue===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(defaultValue))===\"object\"){if(value!==defaultValue.enabled){this.changedOptions.push({path:path,value:value})}}else{this.changedOptions.push({path:path,value:value})}}}var me=this;checkbox.onchange=function(){me._update(this.checked,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,checkbox)}},{key:\"_makeTextInput\",value:function _makeTextInput(defaultValue,value,path){var checkbox=document.createElement(\"input\");checkbox.type=\"text\";checkbox.className=\"vis-configuration vis-config-text\";checkbox.value=value;if(value!==defaultValue){this.changedOptions.push({path:path,value:value})}var me=this;checkbox.onchange=function(){me._update(this.value,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,checkbox)}},{key:\"_makeColorField\",value:function _makeColorField(arr,value,path){var _this4=this;var defaultColor=arr[1];var div=document.createElement(\"div\");value=value===undefined?defaultColor:value;if(value!==\"none\"){div.className=\"vis-configuration vis-config-colorBlock\";div.style.backgroundColor=value}else{div.className=\"vis-configuration vis-config-colorBlock none\"}value=value===undefined?defaultColor:value;div.onclick=function(){_this4._showColorPicker(value,div,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,div)}},{key:\"_showColorPicker\",value:function _showColorPicker(value,div,path){var _this5=this;div.onclick=function(){};this.colorPicker.insertTo(div);this.colorPicker.show();this.colorPicker.setColor(value);this.colorPicker.setUpdateCallback(function(color){\nvar colorString=\"rgba(\"+color.r+\",\"+color.g+\",\"+color.b+\",\"+color.a+\")\";div.style.backgroundColor=colorString;_this5._update(colorString,path)});this.colorPicker.setCloseCallback(function(){div.onclick=function(){_this5._showColorPicker(value,div,path)}})}},{key:\"_handleObject\",value:function _handleObject(obj){var path=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var checkOnly=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var show=false;var filter=this.options.filter;var visibleInSet=false;for(var subObj in obj){if(obj.hasOwnProperty(subObj)){show=true;var item=obj[subObj];var newPath=util.copyAndExtendArray(path,subObj);if(typeof filter===\"function\"){show=filter(subObj,path);if(show===false){if(!(item instanceof Array)&&typeof item!==\"string\"&&typeof item!==\"boolean\"&&item instanceof Object){this.allowCreation=false;show=this._handleObject(item,newPath,true);this.allowCreation=checkOnly===false}}}if(show!==false){visibleInSet=true;var value=this._getValue(newPath);if(item instanceof Array){this._handleArray(item,value,newPath)}else if(typeof item===\"string\"){this._makeTextInput(item,value,newPath)}else if(typeof item===\"boolean\"){this._makeCheckbox(item,value,newPath)}else if(item instanceof Object){var draw=true;if(path.indexOf(\"physics\")!==-1){if(this.moduleOptions.physics.solver!==subObj){draw=false}}if(draw===true){if(item.enabled!==undefined){var enabledPath=util.copyAndExtendArray(newPath,\"enabled\");var enabledValue=this._getValue(enabledPath);if(enabledValue===true){var label=this._makeLabel(subObj,newPath,true);this._makeItem(newPath,label);visibleInSet=this._handleObject(item,newPath)||visibleInSet}else{this._makeCheckbox(item,enabledValue,newPath)}}else{var _label=this._makeLabel(subObj,newPath,true);this._makeItem(newPath,_label);visibleInSet=this._handleObject(item,newPath)||visibleInSet}}}else{console.error(\"dont know how to handle\",item,subObj,newPath)}}}}return visibleInSet}},{key:\"_handleArray\",value:function _handleArray(arr,value,path){if(typeof arr[0]===\"string\"&&arr[0]===\"color\"){this._makeColorField(arr,value,path);if(arr[1]!==value){this.changedOptions.push({path:path,value:value})}}else if(typeof arr[0]===\"string\"){this._makeDropdown(arr,value,path);if(arr[0]!==value){this.changedOptions.push({path:path,value:value})}}else if(typeof arr[0]===\"number\"){this._makeRange(arr,value,path);if(arr[0]!==value){this.changedOptions.push({path:path,value:Number(value)})}}}},{key:\"_update\",value:function _update(value,path){var options=this._constructOptions(value,path);if(this.parent.body&&this.parent.body.emitter&&this.parent.body.emitter.emit){this.parent.body.emitter.emit(\"configChange\",options)}this.initialized=true;this.parent.setOptions(options)}},{key:\"_constructOptions\",value:function _constructOptions(value,path){var optionsObj=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var pointer=optionsObj;value=value===\"true\"?true:value;value=value===\"false\"?false:value;for(var i=0;i<path.length;i++){if(path[i]!==\"global\"){if(pointer[path[i]]===undefined){pointer[path[i]]={}}if(i!==path.length-1){pointer=pointer[path[i]]}else{pointer[path[i]]=value}}}return optionsObj}},{key:\"_printOptions\",value:function _printOptions(){var options=this.getOptions();this.optionsContainer.innerHTML=\"<pre>var options = \"+(0,_stringify2[\"default\"])(options,null,2)+\"</pre>\"}},{key:\"getOptions\",value:function getOptions(){var options={};for(var i=0;i<this.changedOptions.length;i++){this._constructOptions(this.changedOptions[i].value,this.changedOptions[i].path,options)}return options}}]);return Configurator}();exports[\"default\"]=Configurator},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var DOMutil=__webpack_require__(14);function Points(groupId,options){}Points.draw=function(dataset,group,framework,offset){offset=offset||0;var callback=getCallback(framework,group);for(var i=0;i<dataset.length;i++){if(!callback){DOMutil.drawPoint(dataset[i].screen_x+offset,dataset[i].screen_y,getGroupTemplate(group),framework.svgElements,framework.svg,dataset[i].label)}else{var callbackResult=callback(dataset[i],group);if(callbackResult===true||(typeof callbackResult===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(callbackResult))===\"object\"){DOMutil.drawPoint(dataset[i].screen_x+offset,dataset[i].screen_y,getGroupTemplate(group,callbackResult),framework.svgElements,framework.svg,dataset[i].label)}}}};Points.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");DOMutil.drawPoint(x+.5*iconWidth,y,getGroupTemplate(group),framework.svgElements,framework.svg)};function getGroupTemplate(group,callbackResult){callbackResult=typeof callbackResult===\"undefined\"?{}:callbackResult;return{style:callbackResult.style||group.options.drawPoints.style,styles:callbackResult.styles||group.options.drawPoints.styles,size:callbackResult.size||group.options.drawPoints.size,className:callbackResult.className||group.className}}function getCallback(framework,group){var callback=undefined;if(framework.options&&framework.options.drawPoints&&framework.options.drawPoints.onRender&&typeof framework.options.drawPoints.onRender==\"function\"){callback=framework.options.drawPoints.onRender}if(group.group.options&&group.group.options.drawPoints&&group.group.options.drawPoints.onRender&&typeof group.group.options.drawPoints.onRender==\"function\"){callback=group.group.options.drawPoints.onRender}return callback}module.exports=Points},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CircleImageBase=function(_NodeBase){(0,_inherits3[\"default\"])(CircleImageBase,_NodeBase);function CircleImageBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CircleImageBase);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(CircleImageBase.__proto__||(0,_getPrototypeOf2[\"default\"])(CircleImageBase)).call(this,options,body,labelModule));_this.labelOffset=0;_this.selected=false;return _this}(0,_createClass3[\"default\"])(CircleImageBase,[{key:\"setOptions\",value:function setOptions(options,imageObj,imageObjAlt){this.options=options;if(!(imageObj===undefined&&imageObjAlt===undefined)){this.setImages(imageObj,imageObjAlt)}}},{key:\"setImages\",value:function setImages(imageObj,imageObjAlt){if(imageObjAlt&&this.selected){this.imageObj=imageObjAlt;this.imageObjAlt=imageObj}else{this.imageObj=imageObj;this.imageObjAlt=imageObjAlt}}},{key:\"switchImages\",value:function switchImages(selected){var selection_changed=selected&&!this.selected||!selected&&this.selected;this.selected=selected;if(this.imageObjAlt!==undefined&&selection_changed){var imageTmp=this.imageObj;this.imageObj=this.imageObjAlt;this.imageObjAlt=imageTmp}}},{key:\"_resizeImage\",value:function _resizeImage(){var width,height;if(this.options.shapeProperties.useImageSize===false){var ratio_width=1;var ratio_height=1;if(this.imageObj.width&&this.imageObj.height){if(this.imageObj.width>this.imageObj.height){ratio_width=this.imageObj.width/this.imageObj.height}else{ratio_height=this.imageObj.height/this.imageObj.width}}width=this.options.size*2*ratio_width;height=this.options.size*2*ratio_height}else{width=this.imageObj.width;height=this.imageObj.height}this.width=width;this.height=height;this.radius=.5*this.width}},{key:\"_drawRawCircle\",value:function _drawRawCircle(ctx,x,y,values){this.initContextForDraw(ctx,values);ctx.circle(x,y,values.size);this.performFill(ctx,values)}},{key:\"_drawImageAtPosition\",value:function _drawImageAtPosition(ctx,values){if(this.imageObj.width!=0){ctx.globalAlpha=1;this.enableShadow(ctx,values);var factor=1;if(this.options.shapeProperties.interpolation===true){factor=this.imageObj.width/this.width/this.body.view.scale}this.imageObj.drawImageAtPosition(ctx,factor,this.left,this.top,this.width,this.height);this.disableShadow(ctx,values)}}},{key:\"_drawImageLabel\",value:function _drawImageLabel(ctx,x,y,selected,hover){var yLabel;var offset=0;if(this.height!==undefined){offset=this.height*.5;var labelDimensions=this.labelModule.getTextSize(ctx,selected,hover);if(labelDimensions.lineCount>=1){offset+=labelDimensions.height/2}}yLabel=y+offset;if(this.options.label){this.labelOffset=offset}this.labelModule.draw(ctx,x,yLabel,selected,hover,\"hanging\")}}]);return CircleImageBase}(_NodeBase3[\"default\"]);exports[\"default\"]=CircleImageBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Label=__webpack_require__(117)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var CubicBezierEdge=__webpack_require__(215)[\"default\"];var BezierEdgeDynamic=__webpack_require__(217)[\"default\"];var BezierEdgeStatic=__webpack_require__(218)[\"default\"];var StraightEdge=__webpack_require__(219)[\"default\"];var Edge=function(){function Edge(options,body,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Edge);if(body===undefined){throw new Error(\"No body provided\")}this.options=util.bridgeObject(globalOptions);this.globalOptions=globalOptions;this.defaultOptions=defaultOptions;this.body=body;this.id=undefined;this.fromId=undefined;this.toId=undefined;this.selected=false;this.hover=false;this.labelDirty=true;this.baseWidth=this.options.width;this.baseFontSize=this.options.font.size;this.from=undefined;this.to=undefined;this.edgeType=undefined;this.connected=false;this.labelModule=new Label(this.body,this.options,true);this.setOptions(options)}(0,_createClass3[\"default\"])(Edge,[{key:\"setOptions\",value:function setOptions(options){if(!options){return}Edge.parseOptions(this.options,options,true,this.globalOptions);if(options.id!==undefined){this.id=options.id}if(options.from!==undefined){this.fromId=options.from}if(options.to!==undefined){this.toId=options.to}if(options.title!==undefined){this.title=options.title}if(options.value!==undefined){options.value=parseFloat(options.value)}var pile=[options,this.options,this.defaultOptions];this.chooser=ComponentUtil.choosify(\"edge\",pile);this.updateLabelModule(options);var dataChanged=this.updateEdgeType();this._setInteractionWidths();this.connect();if(options.hidden!==undefined||options.physics!==undefined){dataChanged=true}return dataChanged}},{key:\"getFormattingValues\",value:function getFormattingValues(){var toArrow=this.options.arrows.to===true||this.options.arrows.to.enabled===true;var fromArrow=this.options.arrows.from===true||this.options.arrows.from.enabled===true;var middleArrow=this.options.arrows.middle===true||this.options.arrows.middle.enabled===true;var inheritsColor=this.options.color.inherit;var values={toArrow:toArrow,toArrowScale:this.options.arrows.to.scaleFactor,toArrowType:this.options.arrows.to.type,middleArrow:middleArrow,middleArrowScale:this.options.arrows.middle.scaleFactor,middleArrowType:this.options.arrows.middle.type,fromArrow:fromArrow,fromArrowScale:this.options.arrows.from.scaleFactor,fromArrowType:this.options.arrows.from.type,arrowStrikethrough:this.options.arrowStrikethrough,color:inheritsColor?undefined:this.options.color.color,inheritsColor:inheritsColor,opacity:this.options.color.opacity,hidden:this.options.hidden,length:this.options.length,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y,dashes:this.options.dashes,width:this.options.width};if(this.selected||this.hover){if(this.chooser===true){if(this.selected){var selectedWidth=this.options.selectionWidth;if(typeof selectedWidth===\"function\"){values.width=selectedWidth(values.width)}else if(typeof selectedWidth===\"number\"){values.width+=selectedWidth}values.width=Math.max(values.width,.3/this.body.view.scale);values.color=this.options.color.highlight;values.shadow=this.options.shadow.enabled}else if(this.hover){var hoverWidth=this.options.hoverWidth;if(typeof hoverWidth===\"function\"){values.width=hoverWidth(values.width)}else if(typeof hoverWidth===\"number\"){values.width+=hoverWidth}values.width=Math.max(values.width,.3/this.body.view.scale);values.color=this.options.color.hover;values.shadow=this.options.shadow.enabled}}else if(typeof this.chooser===\"function\"){this.chooser(values,this.options.id,this.selected,this.hover);if(values.color!==undefined){values.inheritsColor=false}if(values.shadow===false){if(values.shadowColor!==this.options.shadow.color||values.shadowSize!==this.options.shadow.size||values.shadowX!==this.options.shadow.x||values.shadowY!==this.options.shadow.y){values.shadow=true}}}}else{values.shadow=this.options.shadow.enabled;values.width=Math.max(values.width,.3/this.body.view.scale)}return values}},{key:\"updateLabelModule\",value:function updateLabelModule(options){var pile=[options,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,pile);if(this.labelModule.baseSize!==undefined){this.baseFontSize=this.labelModule.baseSize}}},{key:\"updateEdgeType\",value:function updateEdgeType(){var smooth=this.options.smooth;var dataChanged=false;var changeInType=true;if(this.edgeType!==undefined){if(this.edgeType instanceof BezierEdgeDynamic&&smooth.enabled===true&&smooth.type===\"dynamic\"||this.edgeType instanceof CubicBezierEdge&&smooth.enabled===true&&smooth.type===\"cubicBezier\"||this.edgeType instanceof BezierEdgeStatic&&smooth.enabled===true&&smooth.type!==\"dynamic\"&&smooth.type!==\"cubicBezier\"||this.edgeType instanceof StraightEdge&&smooth.type.enabled===false){changeInType=false}if(changeInType===true){dataChanged=this.cleanup()}}if(changeInType===true){if(smooth.enabled===true){if(smooth.type===\"dynamic\"){dataChanged=true;this.edgeType=new BezierEdgeDynamic(this.options,this.body,this.labelModule)}else if(smooth.type===\"cubicBezier\"){this.edgeType=new CubicBezierEdge(this.options,this.body,this.labelModule)}else{this.edgeType=new BezierEdgeStatic(this.options,this.body,this.labelModule)}}else{this.edgeType=new StraightEdge(this.options,this.body,this.labelModule)}}else{this.edgeType.setOptions(this.options)}return dataChanged}},{key:\"connect\",value:function connect(){this.disconnect();this.from=this.body.nodes[this.fromId]||undefined;this.to=this.body.nodes[this.toId]||undefined;this.connected=this.from!==undefined&&this.to!==undefined;if(this.connected===true){this.from.attachEdge(this);this.to.attachEdge(this)}else{if(this.from){this.from.detachEdge(this)}if(this.to){this.to.detachEdge(this)}}this.edgeType.connect()}},{key:\"disconnect\",value:function disconnect(){if(this.from){this.from.detachEdge(this);this.from=undefined}if(this.to){this.to.detachEdge(this);this.to=undefined}this.connected=false}},{key:\"getTitle\",value:function getTitle(){return this.title}},{key:\"isSelected\",value:function isSelected(){return this.selected}},{key:\"getValue\",value:function getValue(){return this.options.value}},{key:\"setValueRange\",value:function setValueRange(min,max,total){if(this.options.value!==undefined){var scale=this.options.scaling.customScalingFunction(min,max,total,this.options.value);var widthDiff=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===true){var fontDiff=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+scale*fontDiff}this.options.width=this.options.scaling.min+scale*widthDiff}else{this.options.width=this.baseWidth;this.options.font.size=this.baseFontSize}this._setInteractionWidths();this.updateLabelModule()}},{key:\"_setInteractionWidths\",value:function _setInteractionWidths(){if(typeof this.options.hoverWidth===\"function\"){this.edgeType.hoverWidth=this.options.hoverWidth(this.options.width)}else{this.edgeType.hoverWidth=this.options.hoverWidth+this.options.width}if(typeof this.options.selectionWidth===\"function\"){this.edgeType.selectionWidth=this.options.selectionWidth(this.options.width)}else{this.edgeType.selectionWidth=this.options.selectionWidth+this.options.width}}},{key:\"draw\",value:function draw(ctx){var values=this.getFormattingValues();if(values.hidden){return}var viaNode=this.edgeType.getViaNode();var arrowData={};this.edgeType.fromPoint=this.edgeType.from;this.edgeType.toPoint=this.edgeType.to;if(values.fromArrow){arrowData.from=this.edgeType.getArrowData(ctx,\"from\",viaNode,this.selected,this.hover,values);if(values.arrowStrikethrough===false)this.edgeType.fromPoint=arrowData.from.core}if(values.toArrow){arrowData.to=this.edgeType.getArrowData(ctx,\"to\",viaNode,this.selected,this.hover,values);if(values.arrowStrikethrough===false)this.edgeType.toPoint=arrowData.to.core}if(values.middleArrow){arrowData.middle=this.edgeType.getArrowData(ctx,\"middle\",viaNode,this.selected,this.hover,values)}this.edgeType.drawLine(ctx,values,this.selected,this.hover,viaNode);this.drawArrows(ctx,arrowData,values);this.drawLabel(ctx,viaNode)}},{key:\"drawArrows\",value:function drawArrows(ctx,arrowData,values){if(values.fromArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.from)}if(values.middleArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.middle)}if(values.toArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.to)}}},{key:\"drawLabel\",value:function drawLabel(ctx,viaNode){if(this.options.label!==undefined){var node1=this.from;var node2=this.to;if(this.labelModule.differentState(this.selected,this.hover)){this.labelModule.getTextSize(ctx,this.selected,this.hover)}if(node1.id!=node2.id){this.labelModule.pointToSelf=false;var point=this.edgeType.getPoint(.5,viaNode);ctx.save();var rotationPoint=this._getRotation(ctx);if(rotationPoint.angle!=0){ctx.translate(rotationPoint.x,rotationPoint.y);ctx.rotate(rotationPoint.angle)}this.labelModule.draw(ctx,point.x,point.y,this.selected,this.hover);ctx.restore()}else{this.labelModule.pointToSelf=true;var x,y;var radius=this.options.selfReferenceSize;if(node1.shape.width>node1.shape.height){x=node1.x+node1.shape.width*.5;y=node1.y-radius}else{x=node1.x+radius;y=node1.y-node1.shape.height*.5}point=this._pointOnCircle(x,y,radius,.125);this.labelModule.draw(ctx,point.x,point.y,this.selected,this.hover)}}}},{key:\"getItemsOnPoint\",value:function getItemsOnPoint(point){var ret=[];if(this.labelModule.visible()){var rotationPoint=this._getRotation();if(ComponentUtil.pointInRect(this.labelModule.getSize(),point,rotationPoint)){ret.push({edgeId:this.id,labelId:0})}}var obj={left:point.x,top:point.y};if(this.isOverlappingWith(obj)){ret.push({edgeId:this.id})}return ret}},{key:\"isOverlappingWith\",value:function isOverlappingWith(obj){if(this.connected){var distMax=10;var xFrom=this.from.x;var yFrom=this.from.y;var xTo=this.to.x;var yTo=this.to.y;var xObj=obj.left;var yObj=obj.top;var dist=this.edgeType.getDistanceToEdge(xFrom,yFrom,xTo,yTo,xObj,yObj);return dist<distMax}else{return false}}},{key:\"_getRotation\",value:function _getRotation(ctx){var viaNode=this.edgeType.getViaNode();var point=this.edgeType.getPoint(.5,viaNode);if(ctx!==undefined){this.labelModule.calculateLabelSize(ctx,this.selected,this.hover,point.x,point.y)}var ret={x:point.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible()){return ret}if(this.options.font.align===\"horizontal\"){return ret}var dy=this.from.y-this.to.y;var dx=this.from.x-this.to.x;var angle=Math.atan2(dy,dx);if(angle<-1&&dx<0||angle>0&&dx<0){angle+=Math.PI}ret.angle=angle;return ret}},{key:\"_pointOnCircle\",value:function _pointOnCircle(x,y,radius,percentage){var angle=percentage*2*Math.PI;return{x:x+radius*Math.cos(angle),y:y-radius*Math.sin(angle)}}},{key:\"select\",value:function select(){this.selected=true}},{key:\"unselect\",value:function unselect(){this.selected=false}},{key:\"cleanup\",value:function cleanup(){return this.edgeType.cleanup()}},{key:\"remove\",value:function remove(){this.cleanup();this.disconnect();delete this.body.edges[this.id]}},{key:\"endPointsValid\",value:function endPointsValid(){return this.body.nodes[this.fromId]!==undefined&&this.body.nodes[this.toId]!==undefined}}],[{key:\"parseOptions\",value:function parseOptions(parentOptions,newOptions){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var copyFromGlobals=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;var fields=[\"arrowStrikethrough\",\"id\",\"from\",\"hidden\",\"hoverWidth\",\"labelHighlightBold\",\"length\",\"line\",\"opacity\",\"physics\",\"scaling\",\"selectionWidth\",\"selfReferenceSize\",\"to\",\"title\",\"value\",\"width\",\"font\",\"chosen\",\"widthConstraint\"];util.selectiveDeepExtend(fields,parentOptions,newOptions,allowDeletion);if(ComponentUtil.isValidLabel(newOptions.label)){parentOptions.label=newOptions.label}else{parentOptions.label=undefined}util.mergeOptions(parentOptions,newOptions,\"smooth\",globalOptions);util.mergeOptions(parentOptions,newOptions,\"shadow\",globalOptions);if(newOptions.dashes!==undefined&&newOptions.dashes!==null){parentOptions.dashes=newOptions.dashes}else if(allowDeletion===true&&newOptions.dashes===null){parentOptions.dashes=(0,_create2[\"default\"])(globalOptions.dashes)}if(newOptions.scaling!==undefined&&newOptions.scaling!==null){if(newOptions.scaling.min!==undefined){parentOptions.scaling.min=newOptions.scaling.min}if(newOptions.scaling.max!==undefined){parentOptions.scaling.max=newOptions.scaling.max}util.mergeOptions(parentOptions.scaling,newOptions.scaling,\"label\",globalOptions.scaling)}else if(allowDeletion===true&&newOptions.scaling===null){parentOptions.scaling=(0,_create2[\"default\"])(globalOptions.scaling)}if(newOptions.arrows!==undefined&&newOptions.arrows!==null){if(typeof newOptions.arrows===\"string\"){var arrows=newOptions.arrows.toLowerCase();parentOptions.arrows.to.enabled=arrows.indexOf(\"to\")!=-1;parentOptions.arrows.middle.enabled=arrows.indexOf(\"middle\")!=-1;parentOptions.arrows.from.enabled=arrows.indexOf(\"from\")!=-1}else if((0,_typeof3[\"default\"])(newOptions.arrows)===\"object\"){util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"to\",globalOptions.arrows);util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"middle\",globalOptions.arrows);util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"from\",globalOptions.arrows)}else{throw new Error(\"The arrow newOptions can only be an object or a string. Refer to the documentation. You used:\"+(0,_stringify2[\"default\"])(newOptions.arrows))}}else if(allowDeletion===true&&newOptions.arrows===null){parentOptions.arrows=(0,_create2[\"default\"])(globalOptions.arrows)}if(newOptions.color!==undefined&&newOptions.color!==null){var fromColor=newOptions.color;var toColor=parentOptions.color;if(copyFromGlobals){util.deepExtend(toColor,globalOptions.color,false,allowDeletion)}else{for(var i in toColor){if(toColor.hasOwnProperty(i)){delete toColor[i]}}}if(util.isString(toColor)){toColor.color=toColor;toColor.highlight=toColor;toColor.hover=toColor;toColor.inherit=false;if(fromColor.opacity===undefined){toColor.opacity=1}}else{var colorsDefined=false;if(fromColor.color!==undefined){toColor.color=fromColor.color;colorsDefined=true}if(fromColor.highlight!==undefined){toColor.highlight=fromColor.highlight;colorsDefined=true}if(fromColor.hover!==undefined){toColor.hover=fromColor.hover;colorsDefined=true}if(fromColor.inherit!==undefined){toColor.inherit=fromColor.inherit}if(fromColor.opacity!==undefined){toColor.opacity=Math.min(1,Math.max(0,fromColor.opacity))}if(colorsDefined===true){toColor.inherit=false}else{if(toColor.inherit===undefined){toColor.inherit=\"from\"}}}}else if(allowDeletion===true&&newOptions.color===null){parentOptions.color=util.bridgeObject(globalOptions.color)}if(allowDeletion===true&&newOptions.font===null){parentOptions.font=util.bridgeObject(globalOptions.font)}}}]);return Edge}();exports[\"default\"]=Edge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _EdgeBase2=__webpack_require__(118);var _EdgeBase3=_interopRequireDefault(_EdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeBase=function(_EdgeBase){(0,_inherits3[\"default\"])(BezierEdgeBase,_EdgeBase);function BezierEdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(BezierEdgeBase,[{key:\"_findBorderPositionBezier\",value:function _findBorderPositionBezier(nearNode,ctx){var viaNode=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this._getViaCoordinates();var maxIterations=10;var iteration=0;var low=0;var high=1;var pos,angle,distanceToBorder,distanceToPoint,difference;var threshold=.2;var node=this.to;var from=false;if(nearNode.id===this.from.id){node=this.from;from=true}while(low<=high&&iteration<maxIterations){var middle=(low+high)*.5;pos=this.getPoint(middle,viaNode);angle=Math.atan2(node.y-pos.y,node.x-pos.x);distanceToBorder=node.distanceToBorder(ctx,angle);distanceToPoint=Math.sqrt(Math.pow(pos.x-node.x,2)+Math.pow(pos.y-node.y,2));difference=distanceToBorder-distanceToPoint;if(Math.abs(difference)<threshold){break}else if(difference<0){if(from===false){low=middle}else{high=middle}}else{if(from===false){high=middle}else{low=middle}}iteration++}pos.t=middle;return pos}},{key:\"_getDistanceToBezierEdge\",value:function _getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via){var minDistance=1e9;var distance=void 0;var i=void 0,t=void 0,x=void 0,y=void 0;var lastX=x1;var lastY=y1;for(i=1;i<10;i++){t=.1*i;x=Math.pow(1-t,2)*x1+2*t*(1-t)*via.x+Math.pow(t,2)*x2;y=Math.pow(1-t,2)*y1+2*t*(1-t)*via.y+Math.pow(t,2)*y2;if(i>0){distance=this._getDistanceToLine(lastX,lastY,x,y,x3,y3);minDistance=distance<minDistance?distance:minDistance}lastX=x;lastY=y}return minDistance}},{key:\"_bezierCurve\",value:function _bezierCurve(ctx,values,viaNode1,viaNode2){var hasNode1=viaNode1!==undefined&&viaNode1.x!==undefined;var hasNode2=viaNode2!==undefined&&viaNode2.x!==undefined;ctx.beginPath();ctx.moveTo(this.fromPoint.x,this.fromPoint.y);if(hasNode1&&hasNode2){ctx.bezierCurveTo(viaNode1.x,viaNode1.y,viaNode2.x,viaNode2.y,this.toPoint.x,this.toPoint.y)}else if(hasNode1){ctx.quadraticCurveTo(viaNode1.x,viaNode1.y,this.toPoint.x,this.toPoint.y)}else{ctx.lineTo(this.toPoint.x,this.toPoint.y)}this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}}]);return BezierEdgeBase}(_EdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=function(){function NetworkUtil(){(0,_classCallCheck3[\"default\"])(this,NetworkUtil)}(0,_createClass3[\"default\"])(NetworkUtil,null,[{key:\"getRange\",value:function getRange(allNodes){var specificNodes=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var minY=1e9,maxY=-1e9,minX=1e9,maxX=-1e9,node;if(specificNodes.length>0){for(var i=0;i<specificNodes.length;i++){node=allNodes[specificNodes[i]];if(minX>node.shape.boundingBox.left){minX=node.shape.boundingBox.left}if(maxX<node.shape.boundingBox.right){maxX=node.shape.boundingBox.right}if(minY>node.shape.boundingBox.top){minY=node.shape.boundingBox.top}if(maxY<node.shape.boundingBox.bottom){maxY=node.shape.boundingBox.bottom}}}if(minX===1e9&&maxX===-1e9&&minY===1e9&&maxY===-1e9){minY=0,maxY=0,minX=0,maxX=0}return{minX:minX,maxX:maxX,minY:minY,maxY:maxY}}},{key:\"getRangeCore\",value:function getRangeCore(allNodes){var specificNodes=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var minY=1e9,maxY=-1e9,minX=1e9,maxX=-1e9,node;if(specificNodes.length>0){for(var i=0;i<specificNodes.length;i++){node=allNodes[specificNodes[i]];if(minX>node.x){minX=node.x}if(maxX<node.x){maxX=node.x}if(minY>node.y){minY=node.y}if(maxY<node.y){maxY=node.y}}}if(minX===1e9&&maxX===-1e9&&minY===1e9&&maxY===-1e9){minY=0,maxY=0,minX=0,maxX=0}return{minX:minX,maxX:maxX,minY:minY,maxY:maxY}}},{key:\"findCenter\",value:function findCenter(range){return{x:.5*(range.maxX+range.minX),y:.5*(range.maxY+range.minY)}}},{key:\"cloneOptions\",value:function cloneOptions(item,type){var clonedOptions={};if(type===undefined||type===\"node\"){util.deepExtend(clonedOptions,item.options,true);clonedOptions.x=item.x;clonedOptions.y=item.y;clonedOptions.amountOfConnections=item.edges.length}else{util.deepExtend(clonedOptions,item.options,true)}return clonedOptions}}]);return NetworkUtil}();exports[\"default\"]=NetworkUtil},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(124),__esModule:true}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);module.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(it){return cof(it)==\"String\"?it.split(\"\"):Object(it)}},function(module,exports,__webpack_require__){\"use strict\";var LIBRARY=__webpack_require__(52);var $export=__webpack_require__(17);var redefine=__webpack_require__(83);var hide=__webpack_require__(26);var has=__webpack_require__(22);var Iterators=__webpack_require__(31);var $iterCreate=__webpack_require__(129);var setToStringTag=__webpack_require__(59);var getPrototypeOf=__webpack_require__(85);var ITERATOR=__webpack_require__(13)(\"iterator\");var BUGGY=!([].keys&&\"next\"in[].keys())\n;var FF_ITERATOR=\"@@iterator\";var KEYS=\"keys\";var VALUES=\"values\";var returnThis=function(){return this};module.exports=function(Base,NAME,Constructor,next,DEFAULT,IS_SET,FORCED){$iterCreate(Constructor,NAME,next);var getMethod=function(kind){if(!BUGGY&&kind in proto)return proto[kind];switch(kind){case KEYS:return function keys(){return new Constructor(this,kind)};case VALUES:return function values(){return new Constructor(this,kind)}}return function entries(){return new Constructor(this,kind)}};var TAG=NAME+\" Iterator\";var DEF_VALUES=DEFAULT==VALUES;var VALUES_BUG=false;var proto=Base.prototype;var $native=proto[ITERATOR]||proto[FF_ITERATOR]||DEFAULT&&proto[DEFAULT];var $default=$native||getMethod(DEFAULT);var $entries=DEFAULT?!DEF_VALUES?$default:getMethod(\"entries\"):undefined;var $anyNative=NAME==\"Array\"?proto.entries||$native:$native;var methods,key,IteratorPrototype;if($anyNative){IteratorPrototype=getPrototypeOf($anyNative.call(new Base));if(IteratorPrototype!==Object.prototype&&IteratorPrototype.next){setToStringTag(IteratorPrototype,TAG,true);if(!LIBRARY&&!has(IteratorPrototype,ITERATOR))hide(IteratorPrototype,ITERATOR,returnThis)}}if(DEF_VALUES&&$native&&$native.name!==VALUES){VALUES_BUG=true;$default=function values(){return $native.call(this)}}if((!LIBRARY||FORCED)&&(BUGGY||VALUES_BUG||!proto[ITERATOR])){hide(proto,ITERATOR,$default)}Iterators[NAME]=$default;Iterators[TAG]=returnThis;if(DEFAULT){methods={values:DEF_VALUES?$default:getMethod(VALUES),keys:IS_SET?$default:getMethod(KEYS),entries:$entries};if(FORCED)for(key in methods){if(!(key in proto))redefine(proto,key,methods[key])}else $export($export.P+$export.F*(BUGGY||VALUES_BUG),NAME,methods)}return methods}},function(module,exports,__webpack_require__){var aFunction=__webpack_require__(128);module.exports=function(fn,that,length){aFunction(fn);if(that===undefined)return fn;switch(length){case 1:return function(a){return fn.call(that,a)};case 2:return function(a,b){return fn.call(that,a,b)};case 3:return function(a,b,c){return fn.call(that,a,b,c)}}return function(){return fn.apply(that,arguments)}}},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(21)&&!__webpack_require__(28)(function(){return Object.defineProperty(__webpack_require__(82)(\"div\"),\"a\",{get:function(){return 7}}).a!=7})},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);var document=__webpack_require__(18).document;var is=isObject(document)&&isObject(document.createElement);module.exports=function(it){return is?document.createElement(it):{}}},function(module,exports,__webpack_require__){module.exports=__webpack_require__(26)},function(module,exports,__webpack_require__){var has=__webpack_require__(22);var toIObject=__webpack_require__(25);var arrayIndexOf=__webpack_require__(131)(false);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\");module.exports=function(object,names){var O=toIObject(object);var i=0;var result=[];var key;for(key in O)if(key!=IE_PROTO)has(O,key)&&result.push(key);while(names.length>i)if(has(O,key=names[i++])){~arrayIndexOf(result,key)||result.push(key)}return result}},function(module,exports,__webpack_require__){var has=__webpack_require__(22);var toObject=__webpack_require__(41);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\");var ObjectProto=Object.prototype;module.exports=Object.getPrototypeOf||function(O){O=toObject(O);if(has(O,IE_PROTO))return O[IE_PROTO];if(typeof O.constructor==\"function\"&&O instanceof O.constructor){return O.constructor.prototype}return O instanceof Object?ObjectProto:null}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);var TAG=__webpack_require__(13)(\"toStringTag\");var ARG=cof(function(){return arguments}())==\"Arguments\";var tryGet=function(it,key){try{return it[key]}catch(e){}};module.exports=function(it){var O,T,B;return it===undefined?\"Undefined\":it===null?\"Null\":typeof(T=tryGet(O=Object(it),TAG))==\"string\"?T:ARG?cof(O):(B=cof(O))==\"Object\"&&typeof O.callee==\"function\"?\"Arguments\":B}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);var core=__webpack_require__(7);var fails=__webpack_require__(28);module.exports=function(KEY,exec){var fn=(core.Object||{})[KEY]||Object[KEY];var exp={};exp[KEY]=exec(fn);$export($export.S+$export.F*fails(function(){fn(1)}),\"Object\",exp)}},function(module,exports,__webpack_require__){var $keys=__webpack_require__(84);var hiddenKeys=__webpack_require__(58).concat(\"length\",\"prototype\");exports.f=Object.getOwnPropertyNames||function getOwnPropertyNames(O){return $keys(O,hiddenKeys)}},function(module,exports,__webpack_require__){var pIE=__webpack_require__(42);var createDesc=__webpack_require__(39);var toIObject=__webpack_require__(25);var toPrimitive=__webpack_require__(53);var has=__webpack_require__(22);var IE8_DOM_DEFINE=__webpack_require__(81);var gOPD=Object.getOwnPropertyDescriptor;exports.f=__webpack_require__(21)?gOPD:function getOwnPropertyDescriptor(O,P){O=toIObject(O);P=toPrimitive(P,true);if(IE8_DOM_DEFINE)try{return gOPD(O,P)}catch(e){}if(has(O,P))return createDesc(!pIE.f.call(O,P),O[P])}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(162),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";function Point2d(x,y){this.x=x!==undefined?x:0;this.y=y!==undefined?y:0}module.exports=Point2d},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);function Slider(container,options){if(container===undefined){throw new Error(\"No container element defined\")}this.container=container;this.visible=options&&options.visible!=undefined?options.visible:true;if(this.visible){this.frame=document.createElement(\"DIV\");this.frame.style.width=\"100%\";this.frame.style.position=\"relative\";this.container.appendChild(this.frame);this.frame.prev=document.createElement(\"INPUT\");this.frame.prev.type=\"BUTTON\";this.frame.prev.value=\"Prev\";this.frame.appendChild(this.frame.prev);this.frame.play=document.createElement(\"INPUT\");this.frame.play.type=\"BUTTON\";this.frame.play.value=\"Play\";this.frame.appendChild(this.frame.play);this.frame.next=document.createElement(\"INPUT\");this.frame.next.type=\"BUTTON\";this.frame.next.value=\"Next\";this.frame.appendChild(this.frame.next);this.frame.bar=document.createElement(\"INPUT\");this.frame.bar.type=\"BUTTON\";this.frame.bar.style.position=\"absolute\";this.frame.bar.style.border=\"1px solid red\";this.frame.bar.style.width=\"100px\";this.frame.bar.style.height=\"6px\";this.frame.bar.style.borderRadius=\"2px\";this.frame.bar.style.MozBorderRadius=\"2px\";this.frame.bar.style.border=\"1px solid #7F7F7F\";this.frame.bar.style.backgroundColor=\"#E5E5E5\";this.frame.appendChild(this.frame.bar);this.frame.slide=document.createElement(\"INPUT\");this.frame.slide.type=\"BUTTON\";this.frame.slide.style.margin=\"0px\";this.frame.slide.value=\" \";this.frame.slide.style.position=\"relative\";this.frame.slide.style.left=\"-100px\";this.frame.appendChild(this.frame.slide);var me=this;this.frame.slide.onmousedown=function(event){me._onMouseDown(event)};this.frame.prev.onclick=function(event){me.prev(event)};this.frame.play.onclick=function(event){me.togglePlay(event)};this.frame.next.onclick=function(event){me.next(event)}}this.onChangeCallback=undefined;this.values=[];this.index=undefined;this.playTimeout=undefined;this.playInterval=1e3;this.playLoop=true}Slider.prototype.prev=function(){var index=this.getIndex();if(index>0){index--;this.setIndex(index)}};Slider.prototype.next=function(){var index=this.getIndex();if(index<this.values.length-1){index++;this.setIndex(index)}};Slider.prototype.playNext=function(){var start=new Date;var index=this.getIndex();if(index<this.values.length-1){index++;this.setIndex(index)}else if(this.playLoop){index=0;this.setIndex(index)}var end=new Date;var diff=end-start;var interval=Math.max(this.playInterval-diff,0);var me=this;this.playTimeout=setTimeout(function(){me.playNext()},interval)};Slider.prototype.togglePlay=function(){if(this.playTimeout===undefined){this.play()}else{this.stop()}};Slider.prototype.play=function(){if(this.playTimeout)return;this.playNext();if(this.frame){this.frame.play.value=\"Stop\"}};Slider.prototype.stop=function(){clearInterval(this.playTimeout);this.playTimeout=undefined;if(this.frame){this.frame.play.value=\"Play\"}};Slider.prototype.setOnChangeCallback=function(callback){this.onChangeCallback=callback};Slider.prototype.setPlayInterval=function(interval){this.playInterval=interval};Slider.prototype.getPlayInterval=function(){return this.playInterval};Slider.prototype.setPlayLoop=function(doLoop){this.playLoop=doLoop};Slider.prototype.onChange=function(){if(this.onChangeCallback!==undefined){this.onChangeCallback()}};Slider.prototype.redraw=function(){if(this.frame){this.frame.bar.style.top=this.frame.clientHeight/2-this.frame.bar.offsetHeight/2+\"px\";this.frame.bar.style.width=this.frame.clientWidth-this.frame.prev.clientWidth-this.frame.play.clientWidth-this.frame.next.clientWidth-30+\"px\";var left=this.indexToLeft(this.index);this.frame.slide.style.left=left+\"px\"}};Slider.prototype.setValues=function(values){this.values=values;if(this.values.length>0)this.setIndex(0);else this.index=undefined};Slider.prototype.setIndex=function(index){if(index<this.values.length){this.index=index;this.redraw();this.onChange()}else{throw new Error(\"Index out of range\")}};Slider.prototype.getIndex=function(){return this.index};Slider.prototype.get=function(){return this.values[this.index]};Slider.prototype._onMouseDown=function(event){var leftButtonDown=event.which?event.which===1:event.button===1;if(!leftButtonDown)return;this.startClientX=event.clientX;this.startSlideX=parseFloat(this.frame.slide.style.left);this.frame.style.cursor=\"move\";var me=this;this.onmousemove=function(event){me._onMouseMove(event)};this.onmouseup=function(event){me._onMouseUp(event)};util.addEventListener(document,\"mousemove\",this.onmousemove);util.addEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault(event)};Slider.prototype.leftToIndex=function(left){var width=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10;var x=left-3;var index=Math.round(x/width*(this.values.length-1));if(index<0)index=0;if(index>this.values.length-1)index=this.values.length-1;return index};Slider.prototype.indexToLeft=function(index){var width=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10;var x=index/(this.values.length-1)*width;var left=x+3;return left};Slider.prototype._onMouseMove=function(event){var diff=event.clientX-this.startClientX;var x=this.startSlideX+diff;var index=this.leftToIndex(x);this.setIndex(index);util.preventDefault()};Slider.prototype._onMouseUp=function(event){this.frame.style.cursor=\"auto\";util.removeEventListener(document,\"mousemove\",this.onmousemove);util.removeEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault()};module.exports=Slider},function(module,exports,__webpack_require__){\"use strict\";function StepNumber(start,end,step,prettyStep){this._start=0;this._end=0;this._step=1;this.prettyStep=true;this.precision=5;this._current=0;this.setRange(start,end,step,prettyStep)}StepNumber.prototype.isNumeric=function(n){return!isNaN(parseFloat(n))&&isFinite(n)};StepNumber.prototype.setRange=function(start,end,step,prettyStep){if(!this.isNumeric(start)){throw new Error(\"Parameter 'start' is not numeric; value: \"+start)}if(!this.isNumeric(end)){throw new Error(\"Parameter 'end' is not numeric; value: \"+start)}if(!this.isNumeric(step)){throw new Error(\"Parameter 'step' is not numeric; value: \"+start)}this._start=start?start:0;this._end=end?end:0;this.setStep(step,prettyStep)};StepNumber.prototype.setStep=function(step,prettyStep){if(step===undefined||step<=0)return;if(prettyStep!==undefined)this.prettyStep=prettyStep;if(this.prettyStep===true)this._step=StepNumber.calculatePrettyStep(step);else this._step=step};StepNumber.calculatePrettyStep=function(step){var log10=function log10(x){return Math.log(x)/Math.LN10};var step1=Math.pow(10,Math.round(log10(step))),step2=2*Math.pow(10,Math.round(log10(step/2))),step5=5*Math.pow(10,Math.round(log10(step/5)));var prettyStep=step1;if(Math.abs(step2-step)<=Math.abs(prettyStep-step))prettyStep=step2;if(Math.abs(step5-step)<=Math.abs(prettyStep-step))prettyStep=step5;if(prettyStep<=0){prettyStep=1}return prettyStep};StepNumber.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))};StepNumber.prototype.getStep=function(){return this._step};StepNumber.prototype.start=function(checkFirst){if(checkFirst===undefined){checkFirst=false}this._current=this._start-this._start%this._step;if(checkFirst){if(this.getCurrent()<this._start){this.next()}}};StepNumber.prototype.next=function(){this._current+=this._step};StepNumber.prototype.end=function(){return this._current>this._end};module.exports=StepNumber},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Camera=__webpack_require__(95);var Point3d=__webpack_require__(34);var STYLE={BAR:0,BARCOLOR:1,BARSIZE:2,DOT:3,DOTLINE:4,DOTCOLOR:5,DOTSIZE:6,GRID:7,LINE:8,SURFACE:9};var STYLENAME={dot:STYLE.DOT,\"dot-line\":STYLE.DOTLINE,\"dot-color\":STYLE.DOTCOLOR,\"dot-size\":STYLE.DOTSIZE,line:STYLE.LINE,grid:STYLE.GRID,surface:STYLE.SURFACE,bar:STYLE.BAR,\"bar-color\":STYLE.BARCOLOR,\"bar-size\":STYLE.BARSIZE};var OPTIONKEYS=[\"width\",\"height\",\"filterLabel\",\"legendLabel\",\"xLabel\",\"yLabel\",\"zLabel\",\"xValueLabel\",\"yValueLabel\",\"zValueLabel\",\"showXAxis\",\"showYAxis\",\"showZAxis\",\"showGrid\",\"showPerspective\",\"showShadow\",\"keepAspectRatio\",\"verticalRatio\",\"dotSizeRatio\",\"dotSizeMinFraction\",\"dotSizeMaxFraction\",\"showAnimationControls\",\"animationInterval\",\"animationPreload\",\"animationAutoStart\",\"axisColor\",\"gridColor\",\"xCenter\",\"yCenter\"];var PREFIXEDOPTIONKEYS=[\"xBarWidth\",\"yBarWidth\",\"valueMin\",\"valueMax\",\"xMin\",\"xMax\",\"xStep\",\"yMin\",\"yMax\",\"yStep\",\"zMin\",\"zMax\",\"zStep\"];var DEFAULTS=undefined;function isEmpty(obj){for(var prop in obj){if(obj.hasOwnProperty(prop))return false}return true}function capitalize(str){if(str===undefined||str===\"\"||typeof str!=\"string\"){return str}return str.charAt(0).toUpperCase()+str.slice(1)}function prefixFieldName(prefix,fieldName){if(prefix===undefined||prefix===\"\"){return fieldName}return prefix+capitalize(fieldName)}function forceCopy(src,dst,fields,prefix){var srcKey;var dstKey;for(var i=0;i<fields.length;++i){srcKey=fields[i];dstKey=prefixFieldName(prefix,srcKey);dst[dstKey]=src[srcKey]}}function safeCopy(src,dst,fields,prefix){var srcKey;var dstKey;for(var i=0;i<fields.length;++i){srcKey=fields[i];if(src[srcKey]===undefined)continue;dstKey=prefixFieldName(prefix,srcKey);dst[dstKey]=src[srcKey]}}function setDefaults(src,dst){if(src===undefined||isEmpty(src)){throw new Error(\"No DEFAULTS passed\")}if(dst===undefined){throw new Error(\"No dst passed\")}DEFAULTS=src;forceCopy(src,dst,OPTIONKEYS);forceCopy(src,dst,PREFIXEDOPTIONKEYS,\"default\");setSpecialSettings(src,dst);dst.margin=10;dst.showGrayBottom=false;dst.showTooltip=false;dst.onclick_callback=null;dst.eye=new Point3d(0,0,-1)}function setOptions(options,dst){if(options===undefined){return}if(dst===undefined){throw new Error(\"No dst passed\")}if(DEFAULTS===undefined||isEmpty(DEFAULTS)){throw new Error(\"DEFAULTS not set for module Settings\")}safeCopy(options,dst,OPTIONKEYS);safeCopy(options,dst,PREFIXEDOPTIONKEYS,\"default\");setSpecialSettings(options,dst)}function setSpecialSettings(src,dst){if(src.backgroundColor!==undefined){setBackgroundColor(src.backgroundColor,dst)}setDataColor(src.dataColor,dst);setStyle(src.style,dst);setShowLegend(src.showLegend,dst);setCameraPosition(src.cameraPosition,dst);if(src.tooltip!==undefined){dst.showTooltip=src.tooltip}if(src.onclick!=undefined){dst.onclick_callback=src.onclick}if(src.tooltipStyle!==undefined){util.selectiveDeepExtend([\"tooltipStyle\"],dst,src)}}function setShowLegend(showLegend,dst){if(showLegend===undefined){var isAutoByDefault=DEFAULTS.showLegend===undefined;if(isAutoByDefault){var isLegendGraphStyle=dst.style===STYLE.DOTCOLOR||dst.style===STYLE.DOTSIZE;dst.showLegend=isLegendGraphStyle}else{}}else{dst.showLegend=showLegend}}function getStyleNumberByName(styleName){var number=STYLENAME[styleName];if(number===undefined){return-1}return number}function checkStyleNumber(style){var valid=false;for(var n in STYLE){if(STYLE[n]===style){valid=true;break}}return valid}function setStyle(style,dst){if(style===undefined){return}var styleNumber;if(typeof style===\"string\"){styleNumber=getStyleNumberByName(style);if(styleNumber===-1){throw new Error(\"Style '\"+style+\"' is invalid\")}}else{if(!checkStyleNumber(style)){throw new Error(\"Style '\"+style+\"' is invalid\")}styleNumber=style}dst.style=styleNumber}function setBackgroundColor(backgroundColor,dst){var fill=\"white\";var stroke=\"gray\";var strokeWidth=1;if(typeof backgroundColor===\"string\"){fill=backgroundColor;stroke=\"none\";strokeWidth=0}else if((typeof backgroundColor===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(backgroundColor))===\"object\"){if(backgroundColor.fill!==undefined)fill=backgroundColor.fill;if(backgroundColor.stroke!==undefined)stroke=backgroundColor.stroke;if(backgroundColor.strokeWidth!==undefined)strokeWidth=backgroundColor.strokeWidth}else{throw new Error(\"Unsupported type of backgroundColor\")}dst.frame.style.backgroundColor=fill;dst.frame.style.borderColor=stroke;dst.frame.style.borderWidth=strokeWidth+\"px\";dst.frame.style.borderStyle=\"solid\"}function setDataColor(dataColor,dst){if(dataColor===undefined){return}if(dst.dataColor===undefined){dst.dataColor={}}if(typeof dataColor===\"string\"){dst.dataColor.fill=dataColor;dst.dataColor.stroke=dataColor}else{if(dataColor.fill){dst.dataColor.fill=dataColor.fill}if(dataColor.stroke){dst.dataColor.stroke=dataColor.stroke}if(dataColor.strokeWidth!==undefined){dst.dataColor.strokeWidth=dataColor.strokeWidth}}}function setCameraPosition(cameraPosition,dst){var camPos=cameraPosition;if(camPos===undefined){return}if(dst.camera===undefined){dst.camera=new Camera}dst.camera.setArmRotation(camPos.horizontal,camPos.vertical);dst.camera.setArmLength(camPos.distance)}module.exports.STYLE=STYLE;module.exports.setDefaults=setDefaults;module.exports.setOptions=setOptions;module.exports.setCameraPosition=setCameraPosition},function(module,exports,__webpack_require__){\"use strict\";var _sign=__webpack_require__(165);var _sign2=_interopRequireDefault(_sign);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Point3d=__webpack_require__(34);function Camera(){this.armLocation=new Point3d;this.armRotation={};this.armRotation.horizontal=0;this.armRotation.vertical=0;this.armLength=1.7;this.cameraOffset=new Point3d;this.offsetMultiplier=.6;this.cameraLocation=new Point3d;this.cameraRotation=new Point3d(.5*Math.PI,0,0);this.calculateCameraOrientation()}Camera.prototype.setOffset=function(x,y){var abs=Math.abs,sign=_sign2[\"default\"],mul=this.offsetMultiplier,border=this.armLength*mul;if(abs(x)>border){x=sign(x)*border}if(abs(y)>border){y=sign(y)*border}this.cameraOffset.x=x;this.cameraOffset.y=y;this.calculateCameraOrientation()};Camera.prototype.getOffset=function(){return this.cameraOffset};Camera.prototype.setArmLocation=function(x,y,z){this.armLocation.x=x;this.armLocation.y=y;this.armLocation.z=z;this.calculateCameraOrientation()};Camera.prototype.setArmRotation=function(horizontal,vertical){if(horizontal!==undefined){this.armRotation.horizontal=horizontal}if(vertical!==undefined){this.armRotation.vertical=vertical;if(this.armRotation.vertical<0)this.armRotation.vertical=0;if(this.armRotation.vertical>.5*Math.PI)this.armRotation.vertical=.5*Math.PI}if(horizontal!==undefined||vertical!==undefined){this.calculateCameraOrientation()}};Camera.prototype.getArmRotation=function(){var rot={};rot.horizontal=this.armRotation.horizontal;rot.vertical=this.armRotation.vertical;return rot};Camera.prototype.setArmLength=function(length){if(length===undefined)return;this.armLength=length;if(this.armLength<.71)this.armLength=.71;if(this.armLength>5)this.armLength=5;this.setOffset(this.cameraOffset.x,this.cameraOffset.y);this.calculateCameraOrientation()};Camera.prototype.getArmLength=function(){return this.armLength};Camera.prototype.getCameraLocation=function(){return this.cameraLocation};Camera.prototype.getCameraRotation=function(){return this.cameraRotation};Camera.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical);this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical);this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical);this.cameraRotation.x=Math.PI/2-this.armRotation.vertical;this.cameraRotation.y=0;this.cameraRotation.z=-this.armRotation.horizontal;var xa=this.cameraRotation.x;var za=this.cameraRotation.z;var dx=this.cameraOffset.x;var dy=this.cameraOffset.y;var sin=Math.sin,cos=Math.cos;this.cameraLocation.x=this.cameraLocation.x+dx*cos(za)+dy*-sin(za)*cos(xa);this.cameraLocation.y=this.cameraLocation.y+dx*sin(za)+dy*cos(za)*cos(xa);this.cameraLocation.z=this.cameraLocation.z+dy*sin(xa)};module.exports=Camera},function(module,exports,__webpack_require__){\"use strict\";var DataView=__webpack_require__(12);function Filter(dataGroup,column,graph){this.dataGroup=dataGroup;this.column=column;this.graph=graph;this.index=undefined;this.value=undefined;this.values=dataGroup.getDistinctValues(this.column);if(this.values.length>0){this.selectValue(0)}this.dataPoints=[];this.loaded=false;this.onLoadCallback=undefined;if(graph.animationPreload){this.loaded=false;this.loadInBackground()}else{this.loaded=true}}Filter.prototype.isLoaded=function(){return this.loaded};Filter.prototype.getLoadedProgress=function(){var len=this.values.length;var i=0;while(this.dataPoints[i]){i++}return Math.round(i/len*100)};Filter.prototype.getLabel=function(){return this.graph.filterLabel};Filter.prototype.getColumn=function(){return this.column};Filter.prototype.getSelectedValue=function(){if(this.index===undefined)return undefined;return this.values[this.index]};Filter.prototype.getValues=function(){return this.values};Filter.prototype.getValue=function(index){if(index>=this.values.length)throw new Error(\"Index out of range\");return this.values[index]};Filter.prototype._getDataPoints=function(index){if(index===undefined)index=this.index;if(index===undefined)return[];var dataPoints;if(this.dataPoints[index]){dataPoints=this.dataPoints[index]}else{var f={};f.column=this.column;f.value=this.values[index];var dataView=new DataView(this.dataGroup.getDataSet(),{filter:function filter(item){return item[f.column]==f.value}}).get();dataPoints=this.dataGroup._getDataPoints(dataView);this.dataPoints[index]=dataPoints}return dataPoints};Filter.prototype.setOnLoadCallback=function(callback){this.onLoadCallback=callback};Filter.prototype.selectValue=function(index){if(index>=this.values.length)throw new Error(\"Index out of range\");this.index=index;this.value=this.values[index]};Filter.prototype.loadInBackground=function(index){if(index===undefined)index=0;var frame=this.graph.frame;if(index<this.values.length){if(frame.progress===undefined){frame.progress=document.createElement(\"DIV\");frame.progress.style.position=\"absolute\";frame.progress.style.color=\"gray\";frame.appendChild(frame.progress)}var progress=this.getLoadedProgress();frame.progress.innerHTML=\"Loading animation... \"+progress+\"%\";frame.progress.style.bottom=60+\"px\";frame.progress.style.left=10+\"px\";var me=this;setTimeout(function(){me.loadInBackground(index+1)},10);this.loaded=false}else{this.loaded=true;if(frame.progress!==undefined){frame.removeChild(frame.progress);frame.progress=undefined}if(this.onLoadCallback)this.onLoadCallback()}};module.exports=Filter},function(module,exports,__webpack_require__){\"use strict\";var keycharm=__webpack_require__(35);var Emitter=__webpack_require__(44);var Hammer=__webpack_require__(10);var util=__webpack_require__(2);function Activator(container){this.active=false;this.dom={container:container};this.dom.overlay=document.createElement(\"div\");this.dom.overlay.className=\"vis-overlay\";this.dom.container.appendChild(this.dom.overlay);this.hammer=Hammer(this.dom.overlay);this.hammer.on(\"tap\",this._onTapOverlay.bind(this));var me=this;var events=[\"tap\",\"doubletap\",\"press\",\"pinch\",\"pan\",\"panstart\",\"panmove\",\"panend\"];events.forEach(function(event){me.hammer.on(event,function(event){event.stopPropagation()})});if(document&&document.body){this.onClick=function(event){if(!_hasParent(event.target,container)){me.deactivate()}};document.body.addEventListener(\"click\",this.onClick)}if(this.keycharm!==undefined){this.keycharm.destroy()}this.keycharm=keycharm();this.escListener=this.deactivate.bind(this)}Emitter(Activator.prototype);Activator.current=null;Activator.prototype.destroy=function(){this.deactivate();this.dom.overlay.parentNode.removeChild(this.dom.overlay);if(this.onClick){document.body.removeEventListener(\"click\",this.onClick)}this.hammer.destroy();this.hammer=null};Activator.prototype.activate=function(){if(Activator.current){Activator.current.deactivate()}Activator.current=this;this.active=true;this.dom.overlay.style.display=\"none\";util.addClassName(this.dom.container,\"vis-active\");this.emit(\"change\");this.emit(\"activate\");this.keycharm.bind(\"esc\",this.escListener)};Activator.prototype.deactivate=function(){this.active=false;this.dom.overlay.style.display=\"\";util.removeClassName(this.dom.container,\"vis-active\");this.keycharm.unbind(\"esc\",this.escListener);this.emit(\"change\");this.emit(\"deactivate\")};Activator.prototype._onTapOverlay=function(event){this.activate();event.stopPropagation()};function _hasParent(element,parent){while(element){if(element===parent){return true}element=element.parentNode}return false}module.exports=Activator},function(module,exports,__webpack_require__){\"use strict\";exports[\"en\"]={current:\"current\",time:\"time\"};exports[\"en_EN\"]=exports[\"en\"];exports[\"en_US\"]=exports[\"en\"];exports[\"it\"]={current:\"attuale\",time:\"tempo\"};exports[\"it_IT\"]=exports[\"it\"];exports[\"it_CH\"]=exports[\"it\"];exports[\"nl\"]={current:\"huidige\",time:\"tijd\"};exports[\"nl_NL\"]=exports[\"nl\"];exports[\"nl_BE\"]=exports[\"nl\"];exports[\"de\"]={current:\"Aktuelle\",time:\"Zeit\"};exports[\"de_DE\"]=exports[\"de\"];exports[\"fr\"]={current:\"actuel\",time:\"heure\"};exports[\"fr_FR\"]=exports[\"fr\"];exports[\"fr_CA\"]=exports[\"fr\"];exports[\"fr_BE\"]=exports[\"fr\"];exports[\"es\"]={current:\"corriente\",time:\"hora\"};exports[\"es_ES\"]=exports[\"es\"]},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var TimeStep=__webpack_require__(66);var Component=__webpack_require__(16);var Group=__webpack_require__(68);var BackgroundGroup=__webpack_require__(69);var BoxItem=__webpack_require__(101);var PointItem=__webpack_require__(102);var RangeItem=__webpack_require__(70);var BackgroundItem=__webpack_require__(103);var Popup=__webpack_require__(104)[\"default\"];var UNGROUPED=\"__ungrouped__\";var BACKGROUND=\"__background__\";function ItemSet(body,options){this.body=body;this.defaultOptions={type:null,orientation:{item:\"bottom\"},align:\"auto\",stack:true,stackSubgroups:true,groupOrderSwap:function groupOrderSwap(fromGroup,toGroup,groups){var targetOrder=toGroup.order;toGroup.order=fromGroup.order;fromGroup.order=targetOrder},groupOrder:\"order\",selectable:true,multiselect:false,itemsAlwaysDraggable:{item:false,range:false},editable:{updateTime:false,updateGroup:false,add:false,remove:false,overrideItems:false},groupEditable:{order:false,add:false,remove:false},snap:TimeStep.snap,onDropObjectOnItem:function onDropObjectOnItem(objectData,item,callback){callback(item)},onAdd:function onAdd(item,callback){callback(item)},onUpdate:function onUpdate(item,callback){callback(item)},onMove:function onMove(item,callback){callback(item)},onRemove:function onRemove(item,callback){callback(item)},onMoving:function onMoving(item,callback){callback(item)},onAddGroup:function onAddGroup(item,callback){callback(item)},onMoveGroup:function onMoveGroup(item,callback){callback(item)},onRemoveGroup:function onRemoveGroup(item,callback){callback(item)},margin:{item:{horizontal:10,vertical:10},axis:20},showTooltips:true,tooltip:{followMouse:false,overflowMethod:\"flip\"},tooltipOnItemUpdateTime:false};this.options=util.extend({},this.defaultOptions);this.options.rtl=options.rtl;this.itemOptions={type:{start:\"Date\",end:\"Date\"}};this.conversion={toScreen:body.util.toScreen,toTime:body.util.toTime};this.dom={};this.props={};this.hammer=null;var me=this;this.itemsData=null;this.groupsData=null;this.itemListeners={add:function add(event,params,senderId){me._onAdd(params.items)},update:function update(event,params,senderId){me._onUpdate(params.items)},remove:function remove(event,params,senderId){me._onRemove(params.items)}};this.groupListeners={add:function add(event,params,senderId){me._onAddGroups(params.items);if(me.groupsData&&me.groupsData.length>0){var groupsData=me.groupsData.getDataSet();groupsData.get().forEach(function(groupData){if(groupData.nestedGroups){if(groupData.showNested!=false){groupData.showNested=true}var updatedGroups=[];groupData.nestedGroups.forEach(function(nestedGroupId){var updatedNestedGroup=groupsData.get(nestedGroupId);if(!updatedNestedGroup){return}updatedNestedGroup.nestedInGroup=groupData.id;if(groupData.showNested==false){updatedNestedGroup.visible=false}updatedGroups=updatedGroups.concat(updatedNestedGroup)});groupsData.update(updatedGroups,senderId)}})}},update:function update(event,params,senderId){me._onUpdateGroups(params.items)},remove:function remove(event,params,senderId){me._onRemoveGroups(params.items)}};this.items={};this.groups={};this.groupIds=[];this.selection=[];this.popup=null;this.touchParams={};this.groupTouchParams={};this._create();this.setOptions(options)}ItemSet.prototype=new Component;ItemSet.types={background:BackgroundItem,box:BoxItem,range:RangeItem,point:PointItem};ItemSet.prototype._create=function(){var frame=document.createElement(\"div\");frame.className=\"vis-itemset\";frame[\"timeline-itemset\"]=this;this.dom.frame=frame;var background=document.createElement(\"div\");background.className=\"vis-background\";frame.appendChild(background);this.dom.background=background;var foreground=document.createElement(\"div\");foreground.className=\"vis-foreground\";frame.appendChild(foreground);this.dom.foreground=foreground;var axis=document.createElement(\"div\");axis.className=\"vis-axis\";this.dom.axis=axis;var labelSet=document.createElement(\"div\");labelSet.className=\"vis-labelset\";this.dom.labelSet=labelSet;this._updateUngrouped();var backgroundGroup=new BackgroundGroup(BACKGROUND,null,this);backgroundGroup.show();this.groups[BACKGROUND]=backgroundGroup;this.hammer=new Hammer(this.body.dom.centerContainer);this.hammer.on(\"hammer.input\",function(event){if(event.isFirst){this._onTouch(event)}}.bind(this));this.hammer.on(\"panstart\",this._onDragStart.bind(this));this.hammer.on(\"panmove\",this._onDrag.bind(this));this.hammer.on(\"panend\",this._onDragEnd.bind(this));this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL});this.hammer.on(\"tap\",this._onSelectItem.bind(this));this.hammer.on(\"press\",this._onMultiSelectItem.bind(this));this.hammer.on(\"doubletap\",this._onAddItem.bind(this));if(this.options.rtl){\nthis.groupHammer=new Hammer(this.body.dom.rightContainer)}else{this.groupHammer=new Hammer(this.body.dom.leftContainer)}this.groupHammer.on(\"tap\",this._onGroupClick.bind(this));this.groupHammer.on(\"panstart\",this._onGroupDragStart.bind(this));this.groupHammer.on(\"panmove\",this._onGroupDrag.bind(this));this.groupHammer.on(\"panend\",this._onGroupDragEnd.bind(this));this.groupHammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_VERTICAL});this.body.dom.centerContainer.addEventListener(\"mouseover\",this._onMouseOver.bind(this));this.body.dom.centerContainer.addEventListener(\"mouseout\",this._onMouseOut.bind(this));this.body.dom.centerContainer.addEventListener(\"mousemove\",this._onMouseMove.bind(this));this.body.dom.centerContainer.addEventListener(\"contextmenu\",this._onDragEnd.bind(this));this.body.dom.centerContainer.addEventListener(\"mousewheel\",this._onMouseWheel.bind(this));this.show()};ItemSet.prototype.setOptions=function(options){if(options){var fields=[\"type\",\"rtl\",\"align\",\"order\",\"stack\",\"stackSubgroups\",\"selectable\",\"multiselect\",\"multiselectPerGroup\",\"groupOrder\",\"dataAttributes\",\"template\",\"groupTemplate\",\"visibleFrameTemplate\",\"hide\",\"snap\",\"groupOrderSwap\",\"showTooltips\",\"tooltip\",\"tooltipOnItemUpdateTime\"];util.selectiveExtend(fields,this.options,options);if(\"itemsAlwaysDraggable\"in options){if(typeof options.itemsAlwaysDraggable===\"boolean\"){this.options.itemsAlwaysDraggable.item=options.itemsAlwaysDraggable;this.options.itemsAlwaysDraggable.range=false}else if((0,_typeof3[\"default\"])(options.itemsAlwaysDraggable)===\"object\"){util.selectiveExtend([\"item\",\"range\"],this.options.itemsAlwaysDraggable,options.itemsAlwaysDraggable);if(!this.options.itemsAlwaysDraggable.item){this.options.itemsAlwaysDraggable.range=false}}}if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation.item=options.orientation===\"top\"?\"top\":\"bottom\"}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"&&\"item\"in options.orientation){this.options.orientation.item=options.orientation.item}}if(\"margin\"in options){if(typeof options.margin===\"number\"){this.options.margin.axis=options.margin;this.options.margin.item.horizontal=options.margin;this.options.margin.item.vertical=options.margin}else if((0,_typeof3[\"default\"])(options.margin)===\"object\"){util.selectiveExtend([\"axis\"],this.options.margin,options.margin);if(\"item\"in options.margin){if(typeof options.margin.item===\"number\"){this.options.margin.item.horizontal=options.margin.item;this.options.margin.item.vertical=options.margin.item}else if((0,_typeof3[\"default\"])(options.margin.item)===\"object\"){util.selectiveExtend([\"horizontal\",\"vertical\"],this.options.margin.item,options.margin.item)}}}}if(\"editable\"in options){if(typeof options.editable===\"boolean\"){this.options.editable.updateTime=options.editable;this.options.editable.updateGroup=options.editable;this.options.editable.add=options.editable;this.options.editable.remove=options.editable;this.options.editable.overrideItems=false}else if((0,_typeof3[\"default\"])(options.editable)===\"object\"){util.selectiveExtend([\"updateTime\",\"updateGroup\",\"add\",\"remove\",\"overrideItems\"],this.options.editable,options.editable)}}if(\"groupEditable\"in options){if(typeof options.groupEditable===\"boolean\"){this.options.groupEditable.order=options.groupEditable;this.options.groupEditable.add=options.groupEditable;this.options.groupEditable.remove=options.groupEditable}else if((0,_typeof3[\"default\"])(options.groupEditable)===\"object\"){util.selectiveExtend([\"order\",\"add\",\"remove\"],this.options.groupEditable,options.groupEditable)}}var addCallback=function(name){var fn=options[name];if(fn){if(!(fn instanceof Function)){throw new Error(\"option \"+name+\" must be a function \"+name+\"(item, callback)\")}this.options[name]=fn}}.bind(this);[\"onDropObjectOnItem\",\"onAdd\",\"onUpdate\",\"onRemove\",\"onMove\",\"onMoving\",\"onAddGroup\",\"onMoveGroup\",\"onRemoveGroup\"].forEach(addCallback);this.markDirty()}};ItemSet.prototype.markDirty=function(options){this.groupIds=[];if(options&&options.refreshItems){util.forEach(this.items,function(item){item.dirty=true;if(item.displayed)item.redraw()})}};ItemSet.prototype.destroy=function(){this.hide();this.setItems(null);this.setGroups(null);this.hammer=null;this.body=null;this.conversion=null};ItemSet.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}if(this.dom.axis.parentNode){this.dom.axis.parentNode.removeChild(this.dom.axis)}if(this.dom.labelSet.parentNode){this.dom.labelSet.parentNode.removeChild(this.dom.labelSet)}};ItemSet.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}if(!this.dom.axis.parentNode){this.body.dom.backgroundVertical.appendChild(this.dom.axis)}if(!this.dom.labelSet.parentNode){if(this.options.rtl){this.body.dom.right.appendChild(this.dom.labelSet)}else{this.body.dom.left.appendChild(this.dom.labelSet)}}};ItemSet.prototype.setSelection=function(ids){var i,ii,id,item;if(ids==undefined)ids=[];if(!Array.isArray(ids))ids=[ids];for(i=0,ii=this.selection.length;i<ii;i++){id=this.selection[i];item=this.items[id];if(item)item.unselect()}this.selection=[];for(i=0,ii=ids.length;i<ii;i++){id=ids[i];item=this.items[id];if(item){this.selection.push(id);item.select()}}};ItemSet.prototype.getSelection=function(){return this.selection.concat([])};ItemSet.prototype.getVisibleItems=function(){var range=this.body.range.getRange();var right,left;if(this.options.rtl){right=this.body.util.toScreen(range.start);left=this.body.util.toScreen(range.end)}else{left=this.body.util.toScreen(range.start);right=this.body.util.toScreen(range.end)}var ids=[];for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){var group=this.groups[groupId];var rawVisibleItems=group.isVisible?group.visibleItems:[];for(var i=0;i<rawVisibleItems.length;i++){var item=rawVisibleItems[i];if(this.options.rtl){if(item.right<left&&item.right+item.width>right){ids.push(item.id)}}else{if(item.left<right&&item.left+item.width>left){ids.push(item.id)}}}}}return ids};ItemSet.prototype._deselect=function(id){var selection=this.selection;for(var i=0,ii=selection.length;i<ii;i++){if(selection[i]==id){selection.splice(i,1);break}}};ItemSet.prototype.redraw=function(){var margin=this.options.margin,range=this.body.range,asSize=util.option.asSize,options=this.options,orientation=options.orientation.item,resized=false,frame=this.dom.frame;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top;if(this.options.rtl){this.props.right=this.body.domProps.right.width+this.body.domProps.border.right}else{this.props.left=this.body.domProps.left.width+this.body.domProps.border.left}frame.className=\"vis-itemset\";resized=this._orderGroups()||resized;var visibleInterval=range.end-range.start;var zoomed=visibleInterval!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;var scrolled=range.start!=this.lastRangeStart;var changedStackOption=options.stack!=this.lastStack;var changedStackSubgroupsOption=options.stackSubgroups!=this.lastStackSubgroups;var forceRestack=zoomed||scrolled||changedStackOption||changedStackSubgroupsOption;this.lastVisibleInterval=visibleInterval;this.lastRangeStart=range.start;this.lastStack=options.stack;this.lastStackSubgroups=options.stackSubgroups;this.props.lastWidth=this.props.width;var firstGroup=this._firstGroup();var firstMargin={item:margin.item,axis:margin.axis};var nonFirstMargin={item:margin.item,axis:margin.item.vertical/2};var height=0;var minHeight=margin.axis+margin.item.vertical;this.groups[BACKGROUND].redraw(range,nonFirstMargin,forceRestack);var redrawQueue={};var redrawQueueLength=0;util.forEach(this.groups,function(group,key){if(key===BACKGROUND)return;var groupMargin=group==firstGroup?firstMargin:nonFirstMargin;var returnQueue=true;redrawQueue[key]=group.redraw(range,groupMargin,forceRestack,returnQueue);redrawQueueLength=redrawQueue[key].length});var needRedraw=redrawQueueLength>0;if(needRedraw){var redrawResults={};for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns,key){redrawResults[key]=fns[i]()})}util.forEach(this.groups,function(group,key){if(key===BACKGROUND)return;var groupResized=redrawResults[key];resized=groupResized||resized;height+=group.height});height=Math.max(height,minHeight)}height=Math.max(height,minHeight);frame.style.height=asSize(height);this.props.width=frame.offsetWidth;this.props.height=height;this.dom.axis.style.top=asSize(orientation==\"top\"?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height);if(this.options.rtl){this.dom.axis.style.right=\"0\"}else{this.dom.axis.style.left=\"0\"}this.initialItemSetDrawn=true;resized=this._isResized()||resized;return resized};ItemSet.prototype._firstGroup=function(){var firstGroupIndex=this.options.orientation.item==\"top\"?0:this.groupIds.length-1;var firstGroupId=this.groupIds[firstGroupIndex];var firstGroup=this.groups[firstGroupId]||this.groups[UNGROUPED];return firstGroup||null};ItemSet.prototype._updateUngrouped=function(){var ungrouped=this.groups[UNGROUPED];var item,itemId;if(this.groupsData){if(ungrouped){ungrouped.hide();delete this.groups[UNGROUPED];for(itemId in this.items){if(this.items.hasOwnProperty(itemId)){item=this.items[itemId];item.parent&&item.parent.remove(item);var groupId=this._getGroupId(item.data);var group=this.groups[groupId];group&&group.add(item)||item.hide()}}}}else{if(!ungrouped){var id=null;var data=null;ungrouped=new Group(id,data,this);this.groups[UNGROUPED]=ungrouped;for(itemId in this.items){if(this.items.hasOwnProperty(itemId)){item=this.items[itemId];ungrouped.add(item)}}ungrouped.show()}}};ItemSet.prototype.getLabelSet=function(){return this.dom.labelSet};ItemSet.prototype.setItems=function(items){var me=this,ids,oldItemsData=this.itemsData;if(!items){this.itemsData=null}else if(items instanceof DataSet||items instanceof DataView){this.itemsData=items}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(oldItemsData){util.forEach(this.itemListeners,function(callback,event){oldItemsData.off(event,callback)});ids=oldItemsData.getIds();this._onRemove(ids)}if(this.itemsData){var id=this.id;util.forEach(this.itemListeners,function(callback,event){me.itemsData.on(event,callback,id)});ids=this.itemsData.getIds();this._onAdd(ids);this._updateUngrouped()}this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype.getItems=function(){return this.itemsData};ItemSet.prototype.setGroups=function(groups){var me=this,ids;if(this.groupsData){util.forEach(this.groupListeners,function(callback,event){me.groupsData.off(event,callback)});ids=this.groupsData.getIds();this.groupsData=null;this._onRemoveGroups(ids)}if(!groups){this.groupsData=null}else if(groups instanceof DataSet||groups instanceof DataView){this.groupsData=groups}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(this.groupsData){var groupsData=this.groupsData;if(this.groupsData instanceof DataView){groupsData=this.groupsData.getDataSet()}groupsData.get().forEach(function(group){if(group.nestedGroups){group.nestedGroups.forEach(function(nestedGroupId){var updatedNestedGroup=groupsData.get(nestedGroupId);updatedNestedGroup.nestedInGroup=group.id;if(group.showNested==false){updatedNestedGroup.visible=false}groupsData.update(updatedNestedGroup)})}});var id=this.id;util.forEach(this.groupListeners,function(callback,event){me.groupsData.on(event,callback,id)});ids=this.groupsData.getIds();this._onAddGroups(ids)}this._updateUngrouped();this._order();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype.getGroups=function(){return this.groupsData};ItemSet.prototype.removeItem=function(id){var item=this.itemsData.get(id),dataset=this.itemsData.getDataSet();if(item){this.options.onRemove(item,function(item){if(item){dataset.remove(id)}})}};ItemSet.prototype._getType=function(itemData){return itemData.type||this.options.type||(itemData.end?\"range\":\"box\")};ItemSet.prototype._getGroupId=function(itemData){var type=this._getType(itemData);if(type==\"background\"&&itemData.group==undefined){return BACKGROUND}else{return this.groupsData?itemData.group:UNGROUPED}};ItemSet.prototype._onUpdate=function(ids){var me=this;ids.forEach(function(id){var itemData=me.itemsData.get(id,me.itemOptions);var item=me.items[id];var type=itemData?me._getType(itemData):null;var constructor=ItemSet.types[type];var selected;if(item){if(!constructor||!(item instanceof constructor)){selected=item.selected;me._removeItem(item);item=null}else{me._updateItem(item,itemData)}}if(!item&&itemData){if(constructor){item=new constructor(itemData,me.conversion,me.options);item.id=id;me._addItem(item);if(selected){this.selection.push(id);item.select()}}else if(type==\"rangeoverflow\"){throw new TypeError('Item type \"rangeoverflow\" is deprecated. Use css styling instead: '+\".vis-item.vis-range .vis-item-content {overflow: visible;}\")}else{throw new TypeError('Unknown item type \"'+type+'\"')}}}.bind(this));this._order();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._onAdd=ItemSet.prototype._onUpdate;ItemSet.prototype._onRemove=function(ids){var count=0;var me=this;ids.forEach(function(id){var item=me.items[id];if(item){count++;me._removeItem(item)}});if(count){this._order();this.body.emitter.emit(\"_change\",{queue:true})}};ItemSet.prototype._order=function(){util.forEach(this.groups,function(group){group.order()})};ItemSet.prototype._onUpdateGroups=function(ids){this._onAddGroups(ids)};ItemSet.prototype._onAddGroups=function(ids){var me=this;ids.forEach(function(id){var groupData=me.groupsData.get(id);var group=me.groups[id];if(!group){if(id==UNGROUPED||id==BACKGROUND){throw new Error(\"Illegal group id. \"+id+\" is a reserved id.\")}var groupOptions=(0,_create2[\"default\"])(me.options);util.extend(groupOptions,{height:null});group=new Group(id,groupData,me);me.groups[id]=group;for(var itemId in me.items){if(me.items.hasOwnProperty(itemId)){var item=me.items[itemId];if(item.data.group==id){group.add(item)}}}group.order();group.show()}else{group.setData(groupData)}});this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._onRemoveGroups=function(ids){var groups=this.groups;ids.forEach(function(id){var group=groups[id];if(group){group.hide();delete groups[id]}});this.markDirty();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._orderGroups=function(){if(this.groupsData){var groupIds=this.groupsData.getIds({order:this.options.groupOrder});groupIds=this._orderNestedGroups(groupIds);var changed=!util.equalArray(groupIds,this.groupIds);if(changed){var groups=this.groups;groupIds.forEach(function(groupId){groups[groupId].hide()});groupIds.forEach(function(groupId){groups[groupId].show()});this.groupIds=groupIds}return changed}else{return false}};ItemSet.prototype._orderNestedGroups=function(groupIds){var newGroupIdsOrder=[];groupIds.forEach(function(groupId){var groupData=this.groupsData.get(groupId);if(!groupData.nestedInGroup){newGroupIdsOrder.push(groupId)}if(groupData.nestedGroups){var nestedGroups=this.groupsData.get({filter:function filter(nestedGroup){return nestedGroup.nestedInGroup==groupId},order:this.options.groupOrder});var nestedGroupIds=nestedGroups.map(function(nestedGroup){return nestedGroup.id});newGroupIdsOrder=newGroupIdsOrder.concat(nestedGroupIds)}},this);return newGroupIdsOrder};ItemSet.prototype._addItem=function(item){this.items[item.id]=item;var groupId=this._getGroupId(item.data);var group=this.groups[groupId];if(!group){item.groupShowing=false}else if(group&&group.data&&group.data.showNested){item.groupShowing=true}if(group)group.add(item)};ItemSet.prototype._updateItem=function(item,itemData){item.setData(itemData);var groupId=this._getGroupId(item.data);var group=this.groups[groupId];if(!group){item.groupShowing=false}else if(group&&group.data&&group.data.showNested){item.groupShowing=true}};ItemSet.prototype._removeItem=function(item){item.hide();delete this.items[item.id];var index=this.selection.indexOf(item.id);if(index!=-1)this.selection.splice(index,1);item.parent&&item.parent.remove(item)};ItemSet.prototype._constructByEndArray=function(array){var endArray=[];for(var i=0;i<array.length;i++){if(array[i]instanceof RangeItem){endArray.push(array[i])}}return endArray};ItemSet.prototype._onTouch=function(event){this.touchParams.item=this.itemFromTarget(event);this.touchParams.dragLeftItem=event.target.dragLeftItem||false;this.touchParams.dragRightItem=event.target.dragRightItem||false;this.touchParams.itemProps=null};ItemSet.prototype._getGroupIndex=function(groupId){for(var i=0;i<this.groupIds.length;i++){if(groupId==this.groupIds[i])return i}};ItemSet.prototype._onDragStart=function(event){if(this.touchParams.itemIsDragging){return}var item=this.touchParams.item||null;var me=this;var props;if(item&&(item.selected||this.options.itemsAlwaysDraggable.item)){if(this.options.editable.overrideItems&&!this.options.editable.updateTime&&!this.options.editable.updateGroup){return}if(item.editable!=null&&!item.editable.updateTime&&!item.editable.updateGroup&&!this.options.editable.overrideItems){return}var dragLeftItem=this.touchParams.dragLeftItem;var dragRightItem=this.touchParams.dragRightItem;this.touchParams.itemIsDragging=true;this.touchParams.selectedItem=item;if(dragLeftItem){props={item:dragLeftItem,initialX:event.center.x,dragLeft:true,data:this._cloneItemData(item.data)};this.touchParams.itemProps=[props]}else if(dragRightItem){props={item:dragRightItem,initialX:event.center.x,dragRight:true,data:this._cloneItemData(item.data)};this.touchParams.itemProps=[props]}else if(this.options.editable.add&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey)){this._onDragStartAddItem(event)}else{if(this.groupIds.length<1){this.redraw()}var baseGroupIndex=this._getGroupIndex(item.data.group);var itemsToDrag=this.options.itemsAlwaysDraggable.item&&!item.selected?[item.id]:this.getSelection();this.touchParams.itemProps=itemsToDrag.map(function(id){var item=me.items[id];var groupIndex=me._getGroupIndex(item.data.group);return{item:item,initialX:event.center.x,groupOffset:baseGroupIndex-groupIndex,data:this._cloneItemData(item.data)}}.bind(this))}event.stopPropagation()}else if(this.options.editable.add&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey)){this._onDragStartAddItem(event)}};ItemSet.prototype._onDragStartAddItem=function(event){var xAbs;var x;var snap=this.options.snap||null;if(this.options.rtl){xAbs=util.getAbsoluteRight(this.dom.frame);x=xAbs-event.center.x+10}else{xAbs=util.getAbsoluteLeft(this.dom.frame);x=event.center.x-xAbs-10}var time=this.body.util.toTime(x);var scale=this.body.util.getScale();var step=this.body.util.getStep();var start=snap?snap(time,scale,step):time;var end=start;var itemData={type:\"range\",start:start,end:end,content:\"new item\"};var id=util.randomUUID();itemData[this.itemsData._fieldId]=id;var group=this.groupFromTarget(event);if(group){itemData.group=group.groupId}var newItem=new RangeItem(itemData,this.conversion,this.options);newItem.id=id;newItem.data=this._cloneItemData(itemData);this._addItem(newItem);this.touchParams.selectedItem=newItem;var props={item:newItem,initialX:event.center.x,data:newItem.data};if(this.options.rtl){props.dragLeft=true}else{props.dragRight=true}this.touchParams.itemProps=[props];event.stopPropagation()};ItemSet.prototype._onDrag=function(event){if(this.touchParams.itemProps){event.stopPropagation();var me=this;var snap=this.options.snap||null;var xOffset;if(this.options.rtl){xOffset=this.body.dom.root.offsetLeft+this.body.domProps.right.width}else{xOffset=this.body.dom.root.offsetLeft+this.body.domProps.left.width}var scale=this.body.util.getScale();var step=this.body.util.getStep();var selectedItem=this.touchParams.selectedItem;var updateGroupAllowed=(this.options.editable.overrideItems||selectedItem.editable==null)&&this.options.editable.updateGroup||!this.options.editable.overrideItems&&selectedItem.editable!=null&&selectedItem.editable.updateGroup;var newGroupBase=null;if(updateGroupAllowed&&selectedItem){if(selectedItem.data.group!=undefined){var group=me.groupFromTarget(event);if(group){newGroupBase=this._getGroupIndex(group.groupId)}}}this.touchParams.itemProps.forEach(function(props){var current=me.body.util.toTime(event.center.x-xOffset);var initial=me.body.util.toTime(props.initialX-xOffset);var offset;var initialStart;var initialEnd;var start;var end;if(this.options.rtl){offset=-(current-initial)}else{offset=current-initial}var itemData=this._cloneItemData(props.item.data);if(props.item.editable!=null&&!props.item.editable.updateTime&&!props.item.editable.updateGroup&&!me.options.editable.overrideItems){return}var updateTimeAllowed=(this.options.editable.overrideItems||selectedItem.editable==null)&&this.options.editable.updateTime||!this.options.editable.overrideItems&&selectedItem.editable!=null&&selectedItem.editable.updateTime;if(updateTimeAllowed){if(props.dragLeft){if(this.options.rtl){if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");end=new Date(initialEnd.valueOf()+offset);itemData.end=snap?snap(end,scale,step):end}}else{if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\");start=new Date(initialStart.valueOf()+offset);itemData.start=snap?snap(start,scale,step):start}}}else if(props.dragRight){if(this.options.rtl){if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\");start=new Date(initialStart.valueOf()+offset);itemData.start=snap?snap(start,scale,step):start}}else{if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");end=new Date(initialEnd.valueOf()+offset);itemData.end=snap?snap(end,scale,step):end}}}else{if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\").valueOf();start=new Date(initialStart+offset);if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");var duration=initialEnd.valueOf()-initialStart.valueOf();itemData.start=snap?snap(start,scale,step):start;itemData.end=new Date(itemData.start.valueOf()+duration)}else{itemData.start=snap?snap(start,scale,step):start}}}}if(updateGroupAllowed&&!props.dragLeft&&!props.dragRight&&newGroupBase!=null){if(itemData.group!=undefined){var newOffset=newGroupBase-props.groupOffset;newOffset=Math.max(0,newOffset);newOffset=Math.min(me.groupIds.length-1,newOffset);itemData.group=me.groupIds[newOffset]}}itemData=this._cloneItemData(itemData);me.options.onMoving(itemData,function(itemData){if(itemData){props.item.setData(this._cloneItemData(itemData,\"Date\"))}}.bind(this))}.bind(this));this.body.emitter.emit(\"_change\")}};ItemSet.prototype._moveToGroup=function(item,groupId){var group=this.groups[groupId];if(group&&group.groupId!=item.data.group){var oldGroup=item.parent;oldGroup.remove(item);oldGroup.order();item.data.group=group.groupId;group.add(item);group.order()}};ItemSet.prototype._onDragEnd=function(event){this.touchParams.itemIsDragging=false;if(this.touchParams.itemProps){event.stopPropagation();var me=this;var dataset=this.itemsData.getDataSet();var itemProps=this.touchParams.itemProps;this.touchParams.itemProps=null;itemProps.forEach(function(props){var id=props.item.id;var exists=me.itemsData.get(id,me.itemOptions)!=null;if(!exists){me.options.onAdd(props.item.data,function(itemData){me._removeItem(props.item);if(itemData){me.itemsData.getDataSet().add(itemData)}me.body.emitter.emit(\"_change\")})}else{var itemData=this._cloneItemData(props.item.data);me.options.onMove(itemData,function(itemData){if(itemData){itemData[dataset._fieldId]=id;dataset.update(itemData)}else{props.item.setData(props.data);me.body.emitter.emit(\"_change\")}})}}.bind(this))}};ItemSet.prototype._onGroupClick=function(event){var group=this.groupFromTarget(event);if(!group||!group.nestedGroups)return;var groupsData=this.groupsData.getDataSet();var nestingGroup=groupsData.get(group.groupId);if(nestingGroup.showNested==undefined){nestingGroup.showNested=true}nestingGroup.showNested=!nestingGroup.showNested;var nestedGroups=groupsData.get(group.nestedGroups).map(function(nestedGroup){nestedGroup.visible=nestingGroup.showNested;return nestedGroup});groupsData.update(nestedGroups.concat(nestingGroup));if(nestingGroup.showNested){util.removeClassName(group.dom.label,\"collapsed\");util.addClassName(group.dom.label,\"expanded\")}else{util.removeClassName(group.dom.label,\"expanded\");var collapsedDirClassName=this.options.rtl?\"collapsed-rtl\":\"collapsed\";util.addClassName(group.dom.label,collapsedDirClassName)}};ItemSet.prototype._onGroupDragStart=function(event){if(this.options.groupEditable.order){this.groupTouchParams.group=this.groupFromTarget(event);if(this.groupTouchParams.group){event.stopPropagation();this.groupTouchParams.originalOrder=this.groupsData.getIds({order:this.options.groupOrder})}}};ItemSet.prototype._onGroupDrag=function(event){if(this.options.groupEditable.order&&this.groupTouchParams.group){event.stopPropagation();var groupsData=this.groupsData;if(this.groupsData instanceof DataView){groupsData=this.groupsData.getDataSet()}var group=this.groupFromTarget(event);if(group&&group.height!=this.groupTouchParams.group.height){var movingUp=group.top<this.groupTouchParams.group.top;var clientY=event.center?event.center.y:event.clientY;var targetGroupTop=util.getAbsoluteTop(group.dom.foreground);var draggedGroupHeight=this.groupTouchParams.group.height;if(movingUp){if(targetGroupTop+draggedGroupHeight<clientY){return}}else{var targetGroupHeight=group.height;if(targetGroupTop+targetGroupHeight-draggedGroupHeight>clientY){return}}}if(group&&group!=this.groupTouchParams.group){var targetGroup=groupsData.get(group.groupId);var draggedGroup=groupsData.get(this.groupTouchParams.group.groupId);if(draggedGroup&&targetGroup){this.options.groupOrderSwap(draggedGroup,targetGroup,groupsData);groupsData.update(draggedGroup);groupsData.update(targetGroup)}var newOrder=groupsData.getIds({order:this.options.groupOrder});if(!util.equalArray(newOrder,this.groupTouchParams.originalOrder)){var origOrder=this.groupTouchParams.originalOrder;var draggedId=this.groupTouchParams.group.groupId;var numGroups=Math.min(origOrder.length,newOrder.length);var curPos=0;var newOffset=0;var orgOffset=0;while(curPos<numGroups){while(curPos+newOffset<numGroups&&curPos+orgOffset<numGroups&&newOrder[curPos+newOffset]==origOrder[curPos+orgOffset]){curPos++}if(curPos+newOffset>=numGroups){break}if(newOrder[curPos+newOffset]==draggedId){newOffset=1}else if(origOrder[curPos+orgOffset]==draggedId){orgOffset=1}else{var slippedPosition=newOrder.indexOf(origOrder[curPos+orgOffset]);var switchGroup=groupsData.get(newOrder[curPos+newOffset]);var shouldBeGroup=groupsData.get(origOrder[curPos+orgOffset]);this.options.groupOrderSwap(switchGroup,shouldBeGroup,groupsData);groupsData.update(switchGroup);groupsData.update(shouldBeGroup);var switchGroupId=newOrder[curPos+newOffset];newOrder[curPos+newOffset]=origOrder[curPos+orgOffset];newOrder[slippedPosition]=switchGroupId;curPos++}}}}}};ItemSet.prototype._onGroupDragEnd=function(event){if(this.options.groupEditable.order&&this.groupTouchParams.group){event.stopPropagation();var me=this;var id=me.groupTouchParams.group.groupId;var dataset=me.groupsData.getDataSet();var groupData=util.extend({},dataset.get(id));me.options.onMoveGroup(groupData,function(groupData){if(groupData){groupData[dataset._fieldId]=id;dataset.update(groupData)}else{var newOrder=dataset.getIds({order:me.options.groupOrder});if(!util.equalArray(newOrder,me.groupTouchParams.originalOrder)){var origOrder=me.groupTouchParams.originalOrder;var numGroups=Math.min(origOrder.length,newOrder.length);var curPos=0;while(curPos<numGroups){while(curPos<numGroups&&newOrder[curPos]==origOrder[curPos]){curPos++}if(curPos>=numGroups){break}var slippedPosition=newOrder.indexOf(origOrder[curPos]);var switchGroup=dataset.get(newOrder[curPos]);var shouldBeGroup=dataset.get(origOrder[curPos]);me.options.groupOrderSwap(switchGroup,shouldBeGroup,dataset);dataset.update(switchGroup);dataset.update(shouldBeGroup);var switchGroupId=newOrder[curPos];newOrder[curPos]=origOrder[curPos];newOrder[slippedPosition]=switchGroupId;curPos++}}}});me.body.emitter.emit(\"groupDragged\",{groupId:id})}};ItemSet.prototype._onSelectItem=function(event){if(!this.options.selectable)return;var ctrlKey=event.srcEvent&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey);var shiftKey=event.srcEvent&&event.srcEvent.shiftKey;if(ctrlKey||shiftKey){this._onMultiSelectItem(event);return}var oldSelection=this.getSelection();var item=this.itemFromTarget(event);var selection=item?[item.id]:[];this.setSelection(selection);var newSelection=this.getSelection();if(newSelection.length>0||oldSelection.length>0){this.body.emitter.emit(\"select\",{items:newSelection,event:event})}};ItemSet.prototype._onMouseOver=function(event){var item=this.itemFromTarget(event);if(!item)return;var related=this.itemFromRelatedTarget(event);if(item===related){return}var title=item.getTitle();if(this.options.showTooltips&&title){if(this.popup==null){this.popup=new Popup(this.body.dom.root,this.options.tooltip.overflowMethod||\"flip\")}this.popup.setText(title);var container=this.body.dom.centerContainer;this.popup.setPosition(event.clientX-util.getAbsoluteLeft(container)+container.offsetLeft,event.clientY-util.getAbsoluteTop(container)+container.offsetTop);this.popup.show()}else{if(this.popup!=null){this.popup.hide()}}this.body.emitter.emit(\"itemover\",{item:item.id,event:event})};ItemSet.prototype._onMouseOut=function(event){var item=this.itemFromTarget(event);if(!item)return;var related=this.itemFromRelatedTarget(event);if(item===related){return}if(this.popup!=null){this.popup.hide()}this.body.emitter.emit(\"itemout\",{item:item.id,event:event})};ItemSet.prototype._onMouseMove=function(event){var item=this.itemFromTarget(event);if(!item)return;if(this.options.showTooltips&&this.options.tooltip.followMouse){if(this.popup){if(!this.popup.hidden){var container=this.body.dom.centerContainer;this.popup.setPosition(event.clientX-util.getAbsoluteLeft(container)+container.offsetLeft,event.clientY-util.getAbsoluteTop(container)+container.offsetTop);this.popup.show()}}}};ItemSet.prototype._onMouseWheel=function(event){if(this.touchParams.itemIsDragging){this._onDragEnd(event)}};ItemSet.prototype._onUpdateItem=function(item){if(!this.options.selectable)return;if(!this.options.editable.add)return;var me=this;if(item){var itemData=me.itemsData.get(item.id);this.options.onUpdate(itemData,function(itemData){if(itemData){me.itemsData.getDataSet().update(itemData)}})}};ItemSet.prototype._onDropObjectOnItem=function(event){var item=this.itemFromTarget(event);var objectData=JSON.parse(event.dataTransfer.getData(\"text\"));this.options.onDropObjectOnItem(objectData,item)};ItemSet.prototype._onAddItem=function(event){if(!this.options.selectable)return;if(!this.options.editable.add)return;var me=this;var snap=this.options.snap||null;var xAbs;var x;if(this.options.rtl){xAbs=util.getAbsoluteRight(this.dom.frame);x=xAbs-event.center.x}else{xAbs=util.getAbsoluteLeft(this.dom.frame);x=event.center.x-xAbs}var start=this.body.util.toTime(x);var scale=this.body.util.getScale();var step=this.body.util.getStep();var end;var newItemData;if(event.type==\"drop\"){newItemData=JSON.parse(event.dataTransfer.getData(\"text\"));newItemData.content=newItemData.content?newItemData.content:\"new item\";newItemData.start=newItemData.start?newItemData.start:snap?snap(start,scale,step):start;newItemData.type=newItemData.type||\"box\";newItemData[this.itemsData._fieldId]=newItemData.id||util.randomUUID();if(newItemData.type==\"range\"&&!newItemData.end){end=this.body.util.toTime(x+this.props.width/5);newItemData.end=snap?snap(end,scale,step):end}}else{newItemData={start:snap?snap(start,scale,step):start,content:\"new item\"};newItemData[this.itemsData._fieldId]=util.randomUUID();if(this.options.type===\"range\"){\nend=this.body.util.toTime(x+this.props.width/5);newItemData.end=snap?snap(end,scale,step):end}}var group=this.groupFromTarget(event);if(group){newItemData.group=group.groupId}newItemData=this._cloneItemData(newItemData);this.options.onAdd(newItemData,function(item){if(item){me.itemsData.getDataSet().add(item);if(event.type==\"drop\"){me.setSelection([item.id])}}})};ItemSet.prototype._onMultiSelectItem=function(event){if(!this.options.selectable)return;var item=this.itemFromTarget(event);if(item){var selection=this.options.multiselect?this.getSelection():[];var shiftKey=event.srcEvent&&event.srcEvent.shiftKey||false;if(shiftKey&&this.options.multiselect){var itemGroup=this.itemsData.get(item.id).group;var lastSelectedGroup=undefined;if(this.options.multiselectPerGroup){if(selection.length>0){lastSelectedGroup=this.itemsData.get(selection[0]).group}}if(!this.options.multiselectPerGroup||lastSelectedGroup==undefined||lastSelectedGroup==itemGroup){selection.push(item.id)}var range=ItemSet._getItemRange(this.itemsData.get(selection,this.itemOptions));if(!this.options.multiselectPerGroup||lastSelectedGroup==itemGroup){selection=[];for(var id in this.items){if(this.items.hasOwnProperty(id)){var _item=this.items[id];var start=_item.data.start;var end=_item.data.end!==undefined?_item.data.end:start;if(start>=range.min&&end<=range.max&&(!this.options.multiselectPerGroup||lastSelectedGroup==this.itemsData.get(_item.id).group)&&!(_item instanceof BackgroundItem)){selection.push(_item.id)}}}}}else{var index=selection.indexOf(item.id);if(index==-1){selection.push(item.id)}else{selection.splice(index,1)}}this.setSelection(selection);this.body.emitter.emit(\"select\",{items:this.getSelection(),event:event})}};ItemSet._getItemRange=function(itemsData){var max=null;var min=null;itemsData.forEach(function(data){if(min==null||data.start<min){min=data.start}if(data.end!=undefined){if(max==null||data.end>max){max=data.end}}else{if(max==null||data.start>max){max=data.start}}});return{min:min,max:max}};ItemSet.prototype.itemFromElement=function(element){var cur=element;while(cur){if(cur.hasOwnProperty(\"timeline-item\")){return cur[\"timeline-item\"]}cur=cur.parentNode}return null};ItemSet.prototype.itemFromTarget=function(event){return this.itemFromElement(event.target)};ItemSet.prototype.itemFromRelatedTarget=function(event){return this.itemFromElement(event.relatedTarget)};ItemSet.prototype.groupFromTarget=function(event){var clientY=event.center?event.center.y:event.clientY;var groupIds=this.groupIds;if(groupIds.length<=0&&this.groupsData){groupIds=this.groupsData.getIds({order:this.options.groupOrder})}for(var i=0;i<groupIds.length;i++){var groupId=groupIds[i];var group=this.groups[groupId];var foreground=group.dom.foreground;var top=util.getAbsoluteTop(foreground);if(clientY>top&&clientY<top+foreground.offsetHeight){return group}if(this.options.orientation.item===\"top\"){if(i===this.groupIds.length-1&&clientY>top){return group}}else{if(i===0&&clientY<top+foreground.offset){return group}}}return null};ItemSet.itemSetFromTarget=function(event){var target=event.target;while(target){if(target.hasOwnProperty(\"timeline-itemset\")){return target[\"timeline-itemset\"]}target=target.parentNode}return null};ItemSet.prototype._cloneItemData=function(itemData,type){var clone=util.extend({},itemData);if(!type){type=this.itemsData.getDataSet()._options.type}if(clone.start!=undefined){clone.start=util.convert(clone.start,type&&type.start||\"Date\")}if(clone.end!=undefined){clone.end=util.convert(clone.end,type&&type.end||\"Date\")}return clone};module.exports=ItemSet},function(module,exports,__webpack_require__){\"use strict\";var EPSILON=.001;exports.orderByStart=function(items){items.sort(function(a,b){return a.data.start-b.data.start})};exports.orderByEnd=function(items){items.sort(function(a,b){var aTime=\"end\"in a.data?a.data.end:a.data.start,bTime=\"end\"in b.data?b.data.end:b.data.start;return aTime-bTime})};exports.stack=function(items,margin,force){if(force){for(var i=0;i<items.length;i++){items[i].top=null}}for(var i=0;i<items.length;i++){var item=items[i];if(item.stack&&item.top===null){item.top=margin.axis;do{var collidingItem=null;for(var j=0,jj=items.length;j<jj;j++){var other=items[j];if(other.top!==null&&other!==item&&other.stack&&exports.collision(item,other,margin.item,other.options.rtl)){collidingItem=other;break}}if(collidingItem!=null){item.top=collidingItem.top+collidingItem.height+margin.item.vertical}}while(collidingItem)}}};exports.substack=function(items,margin,subgroup){for(var i=0;i<items.length;i++){items[i].top=null}var subgroupHeight=subgroup.height;for(i=0;i<items.length;i++){var item=items[i];if(item.stack&&item.top===null){item.top=item.baseTop;do{var collidingItem=null;for(var j=0,jj=items.length;j<jj;j++){var other=items[j];if(other.top!==null&&other!==item&&exports.collision(item,other,margin.item,other.options.rtl)){collidingItem=other;break}}if(collidingItem!=null){item.top=collidingItem.top+collidingItem.height+margin.item.vertical}if(item.top+item.height>subgroupHeight){subgroupHeight=item.top+item.height}}while(collidingItem)}}subgroup.height=subgroupHeight-subgroup.top+.5*margin.item.vertical};exports.nostack=function(items,margin,subgroups,stackSubgroups){for(var i=0;i<items.length;i++){if(items[i].data.subgroup==undefined){items[i].top=margin.item.vertical}else if(items[i].data.subgroup!==undefined&&stackSubgroups){var newTop=0;for(var subgroup in subgroups){if(subgroups.hasOwnProperty(subgroup)){if(subgroups[subgroup].visible==true&&subgroups[subgroup].index<subgroups[items[i].data.subgroup].index){newTop+=subgroups[subgroup].height;subgroups[items[i].data.subgroup].top=newTop}}}items[i].top=newTop+.5*margin.item.vertical}}if(!stackSubgroups){exports.stackSubgroups(items,margin,subgroups)}};exports.stackSubgroups=function(items,margin,subgroups){for(var subgroup in subgroups){if(subgroups.hasOwnProperty(subgroup)){subgroups[subgroup].top=0;do{var collidingItem=null;for(var otherSubgroup in subgroups){if(subgroups[otherSubgroup].top!==null&&otherSubgroup!==subgroup&&subgroups[subgroup].index>subgroups[otherSubgroup].index&&exports.collisionByTimes(subgroups[subgroup],subgroups[otherSubgroup])){collidingItem=subgroups[otherSubgroup];break}}if(collidingItem!=null){subgroups[subgroup].top=collidingItem.top+collidingItem.height}}while(collidingItem)}}for(var i=0;i<items.length;i++){if(items[i].data.subgroup!==undefined){items[i].top=subgroups[items[i].data.subgroup].top+.5*margin.item.vertical}}};exports.stackSubgroupsWithInnerStack=function(subgroupItems,margin,subgroups){var doSubStack=false;var subgroupOrder=[];for(var subgroup in subgroups){if(subgroups[subgroup].hasOwnProperty(\"index\")){subgroupOrder[subgroups[subgroup].index]=subgroup}else{subgroupOrder.push(subgroup)}}for(var j=0;j<subgroupOrder.length;j++){subgroup=subgroupOrder[j];if(subgroups.hasOwnProperty(subgroup)){doSubStack=doSubStack||subgroups[subgroup].stack;subgroups[subgroup].top=0;for(var otherSubgroup in subgroups){if(subgroups[otherSubgroup].visible&&subgroups[subgroup].index>subgroups[otherSubgroup].index){subgroups[subgroup].top+=subgroups[otherSubgroup].height}}var items=subgroupItems[subgroup];for(var i=0;i<items.length;i++){if(items[i].data.subgroup!==undefined){items[i].top=subgroups[items[i].data.subgroup].top+.5*margin.item.vertical;if(subgroups[subgroup].stack){items[i].baseTop=items[i].top}}}if(doSubStack&&subgroups[subgroup].stack){exports.substack(subgroupItems[subgroup],margin,subgroups[subgroup])}}}};exports.collision=function(a,b,margin,rtl){if(rtl){return a.right-margin.horizontal+EPSILON<b.right+b.width&&a.right+a.width+margin.horizontal-EPSILON>b.right&&a.top-margin.vertical+EPSILON<b.top+b.height&&a.top+a.height+margin.vertical-EPSILON>b.top}else{return a.left-margin.horizontal+EPSILON<b.left+b.width&&a.left+a.width+margin.horizontal-EPSILON>b.left&&a.top-margin.vertical+EPSILON<b.top+b.height&&a.top+a.height+margin.vertical-EPSILON>b.top}};exports.collisionByTimes=function(a,b){return a.start<=b.start&&a.end>=b.start&&a.top<b.top+b.height&&a.top+a.height>b.top||b.start<=a.start&&b.end>=a.start&&b.top<a.top+a.height&&b.top+b.height>a.top}},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function BoxItem(data,conversion,options){this.props={dot:{width:0,height:0},line:{width:0,height:0}};this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data)}}Item.call(this,data,conversion,options)}BoxItem.prototype=new Item(null,null,null);BoxItem.prototype.isVisible=function(range){var isVisible;var align=this.options.align;var widthInMs=this.width*range.getMillisecondsPerPixel();if(align==\"right\"){isVisible=this.data.start.getTime()>range.start&&this.data.start.getTime()-widthInMs<range.end}else if(align==\"left\"){isVisible=this.data.start.getTime()+widthInMs>range.start&&this.data.start.getTime()<range.end}else{isVisible=this.data.start.getTime()+widthInMs/2>range.start&&this.data.start.getTime()-widthInMs/2<range.end}return isVisible};BoxItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"DIV\");this.dom.content=document.createElement(\"DIV\");this.dom.content.className=\"vis-item-content\";this.dom.box.appendChild(this.dom.content);this.dom.line=document.createElement(\"DIV\");this.dom.line.className=\"vis-line\";this.dom.dot=document.createElement(\"DIV\");this.dom.dot.className=\"vis-dot\";this.dom.box[\"timeline-item\"]=this;this.dirty=true}};BoxItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var foreground=this.parent.dom.foreground;if(!foreground)throw new Error(\"Cannot redraw item: parent has no foreground container element\");foreground.appendChild(this.dom.box)}if(!this.dom.line.parentNode){var background=this.parent.dom.background;if(!background)throw new Error(\"Cannot redraw item: parent has no background container element\");background.appendChild(this.dom.line)}if(!this.dom.dot.parentNode){var axis=this.parent.dom.axis;if(!background)throw new Error(\"Cannot redraw item: parent has no axis container element\");axis.appendChild(this.dom.dot)}this.displayed=true};BoxItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.box);this._updateStyle(this.dom.box);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.box.className=\"vis-item vis-box\"+className;this.dom.line.className=\"vis-item vis-line\"+className;this.dom.dot.className=\"vis-item vis-dot\"+className}};BoxItem.prototype._getDomComponentsSizes=function(){return{previous:{right:this.dom.box.style.right,left:this.dom.box.style.left},dot:{height:this.dom.dot.offsetHeight,width:this.dom.dot.offsetWidth},line:{width:this.dom.line.offsetWidth},box:{width:this.dom.box.offsetWidth,height:this.dom.box.offsetHeight}}};BoxItem.prototype._updateDomComponentsSizes=function(sizes){if(this.options.rtl){this.dom.box.style.right=\"0px\"}else{this.dom.box.style.left=\"0px\"}this.props.dot.height=sizes.dot.height;this.props.dot.width=sizes.dot.width;this.props.line.width=sizes.line.width;this.width=sizes.box.width;this.height=sizes.box.height;if(this.options.rtl){this.dom.box.style.right=sizes.previous.right}else{this.dom.box.style.left=sizes.previous.left}this.dirty=false};BoxItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.box);this._repaintDragCenter();this._repaintDeleteButton(this.dom.box)};BoxItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};BoxItem.prototype.show=function(){if(!this.displayed){this.redraw()}};BoxItem.prototype.hide=function(){if(this.displayed){var dom=this.dom;if(dom.box.parentNode)dom.box.parentNode.removeChild(dom.box);if(dom.line.parentNode)dom.line.parentNode.removeChild(dom.line);if(dom.dot.parentNode)dom.dot.parentNode.removeChild(dom.dot);this.displayed=false}};BoxItem.prototype.repositionX=function(){var start=this.conversion.toScreen(this.data.start);var align=this.options.align;if(align==\"right\"){if(this.options.rtl){this.right=start-this.width;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start-this.props.line.width+\"px\";this.dom.dot.style.right=start-this.props.line.width/2-this.props.dot.width/2+\"px\"}else{this.left=start-this.width;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start-this.props.line.width+\"px\";this.dom.dot.style.left=start-this.props.line.width/2-this.props.dot.width/2+\"px\"}}else if(align==\"left\"){if(this.options.rtl){this.right=start;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start+\"px\";this.dom.dot.style.right=start+this.props.line.width/2-this.props.dot.width/2+\"px\"}else{this.left=start;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start+\"px\";this.dom.dot.style.left=start+this.props.line.width/2-this.props.dot.width/2+\"px\"}}else{if(this.options.rtl){this.right=start-this.width/2;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start-this.props.line.width+\"px\";this.dom.dot.style.right=start-this.props.dot.width/2+\"px\"}else{this.left=start-this.width/2;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start-this.props.line.width/2+\"px\";this.dom.dot.style.left=start-this.props.dot.width/2+\"px\"}}};BoxItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var box=this.dom.box;var line=this.dom.line;var dot=this.dom.dot;if(orientation==\"top\"){box.style.top=(this.top||0)+\"px\";line.style.top=\"0\";line.style.height=this.parent.top+this.top+1+\"px\";line.style.bottom=\"\"}else{var itemSetHeight=this.parent.itemSet.props.height;var lineHeight=itemSetHeight-this.parent.top-this.parent.height+this.top;box.style.top=(this.parent.height-this.top-this.height||0)+\"px\";line.style.top=itemSetHeight-lineHeight+\"px\";line.style.bottom=\"0\"}dot.style.top=-this.props.dot.height/2+\"px\"};BoxItem.prototype.getWidthLeft=function(){return this.width/2};BoxItem.prototype.getWidthRight=function(){return this.width/2};module.exports=BoxItem},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function PointItem(data,conversion,options){this.props={dot:{top:0,width:0,height:0},content:{height:0,marginLeft:0,marginRight:0}};this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data)}}Item.call(this,data,conversion,options)}PointItem.prototype=new Item(null,null,null);PointItem.prototype.isVisible=function(range){var widthInMs=this.width*range.getMillisecondsPerPixel();return this.data.start.getTime()+widthInMs>range.start&&this.data.start<range.end};PointItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.point=document.createElement(\"div\");this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.point.appendChild(this.dom.content);this.dom.dot=document.createElement(\"div\");this.dom.point.appendChild(this.dom.dot);this.dom.point[\"timeline-item\"]=this;this.dirty=true}};PointItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.point.parentNode){var foreground=this.parent.dom.foreground;if(!foreground){throw new Error(\"Cannot redraw item: parent has no foreground container element\")}foreground.appendChild(this.dom.point)}this.displayed=true};PointItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.point);this._updateStyle(this.dom.point);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.point.className=\"vis-item vis-point\"+className;this.dom.dot.className=\"vis-item vis-dot\"+className}};PointItem.prototype._getDomComponentsSizes=function(){return{dot:{width:this.dom.dot.offsetWidth,height:this.dom.dot.offsetHeight},content:{width:this.dom.content.offsetWidth,height:this.dom.content.offsetHeight},point:{width:this.dom.point.offsetWidth,height:this.dom.point.offsetHeight}}};PointItem.prototype._updateDomComponentsSizes=function(sizes){this.props.dot.width=sizes.dot.width;this.props.dot.height=sizes.dot.height;this.props.content.height=sizes.content.height;if(this.options.rtl){this.dom.content.style.marginRight=2*this.props.dot.width+\"px\"}else{this.dom.content.style.marginLeft=2*this.props.dot.width+\"px\"}this.width=sizes.point.width;this.height=sizes.point.height;this.dom.dot.style.top=(this.height-this.props.dot.height)/2+\"px\";if(this.options.rtl){this.dom.dot.style.right=this.props.dot.width/2+\"px\"}else{this.dom.dot.style.left=this.props.dot.width/2+\"px\"}this.dirty=false};PointItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.point);this._repaintDragCenter();this._repaintDeleteButton(this.dom.point)};PointItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};PointItem.prototype.show=function(){if(!this.displayed){this.redraw()}};PointItem.prototype.hide=function(){if(this.displayed){if(this.dom.point.parentNode){this.dom.point.parentNode.removeChild(this.dom.point)}this.displayed=false}};PointItem.prototype.repositionX=function(){var start=this.conversion.toScreen(this.data.start);if(this.options.rtl){this.right=start-this.props.dot.width;this.dom.point.style.right=this.right+\"px\"}else{this.left=start-this.props.dot.width;this.dom.point.style.left=this.left+\"px\"}};PointItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var point=this.dom.point;if(orientation==\"top\"){point.style.top=this.top+\"px\"}else{point.style.top=this.parent.height-this.top-this.height+\"px\"}};PointItem.prototype.getWidthLeft=function(){return this.props.dot.width};PointItem.prototype.getWidthRight=function(){return this.props.dot.width};module.exports=PointItem},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);var BackgroundGroup=__webpack_require__(69);var RangeItem=__webpack_require__(70);function BackgroundItem(data,conversion,options){this.props={content:{width:0}};this.overflow=false;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data.id)}if(data.end==undefined){throw new Error('Property \"end\" missing in item '+data.id)}}Item.call(this,data,conversion,options)}BackgroundItem.prototype=new Item(null,null,null);BackgroundItem.prototype.baseClassName=\"vis-item vis-background\";BackgroundItem.prototype.stack=false;BackgroundItem.prototype.isVisible=function(range){return this.data.start<range.end&&this.data.end>range.start};BackgroundItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"div\");this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-item-overflow\";this.dom.box.appendChild(this.dom.frame);this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.frame.appendChild(this.dom.content);this.dirty=true}};BackgroundItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var background=this.parent.dom.background;if(!background){throw new Error(\"Cannot redraw item: parent has no background container element\")}background.appendChild(this.dom.box)}this.displayed=true};BackgroundItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.content);this._updateStyle(this.dom.box);var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\");this.dom.box.className=this.baseClassName+className}};BackgroundItem.prototype._getDomComponentsSizes=function(){this.overflow=window.getComputedStyle(this.dom.content).overflow!==\"hidden\";return{content:{width:this.dom.content.offsetWidth}}};BackgroundItem.prototype._updateDomComponentsSizes=function(sizes){this.props.content.width=sizes.content.width;this.height=0;this.dirty=false};BackgroundItem.prototype._repaintDomAdditionals=function(){};BackgroundItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes.bind(this)()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};BackgroundItem.prototype.show=RangeItem.prototype.show;BackgroundItem.prototype.hide=RangeItem.prototype.hide;BackgroundItem.prototype.repositionX=RangeItem.prototype.repositionX;BackgroundItem.prototype.repositionY=function(margin){var height;var orientation=this.options.orientation.item;if(this.data.subgroup!==undefined){var itemSubgroup=this.data.subgroup;this.dom.box.style.height=this.parent.subgroups[itemSubgroup].height+\"px\";if(orientation==\"top\"){this.dom.box.style.top=this.parent.top+this.parent.subgroups[itemSubgroup].top+\"px\"}else{this.dom.box.style.top=this.parent.top+this.parent.height-this.parent.subgroups[itemSubgroup].top-this.parent.subgroups[itemSubgroup].height+\"px\"}this.dom.box.style.bottom=\"\"}else{if(this.parent instanceof BackgroundGroup){height=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height);this.dom.box.style.bottom=orientation==\"bottom\"?\"0\":\"\";this.dom.box.style.top=orientation==\"top\"?\"0\":\"\"}else{height=this.parent.height;this.dom.box.style.top=this.parent.top+\"px\";this.dom.box.style.bottom=\"\"}}this.dom.box.style.height=height+\"px\"};module.exports=BackgroundItem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Popup=function(){function Popup(container,overflowMethod){(0,_classCallCheck3[\"default\"])(this,Popup);this.container=container;this.overflowMethod=overflowMethod||\"cap\";this.x=0;this.y=0;this.padding=5;this.hidden=false;this.frame=document.createElement(\"div\");this.frame.className=\"vis-tooltip\";this.container.appendChild(this.frame)}(0,_createClass3[\"default\"])(Popup,[{key:\"setPosition\",value:function setPosition(x,y){this.x=parseInt(x);this.y=parseInt(y)}},{key:\"setText\",value:function setText(content){if(content instanceof Element){this.frame.innerHTML=\"\";this.frame.appendChild(content)}else{this.frame.innerHTML=content}}},{key:\"show\",value:function show(doShow){if(doShow===undefined){doShow=true}if(doShow===true){var height=this.frame.clientHeight;var width=this.frame.clientWidth;var maxHeight=this.frame.parentNode.clientHeight;var maxWidth=this.frame.parentNode.clientWidth;var left=0,top=0;if(this.overflowMethod==\"flip\"){var isLeft=false,isTop=true;if(this.y-height<this.padding){isTop=false}if(this.x+width>maxWidth-this.padding){isLeft=true}if(isLeft){left=this.x-width}else{left=this.x}if(isTop){top=this.y-height}else{top=this.y}}else{top=this.y-height;if(top+height+this.padding>maxHeight){top=maxHeight-height-this.padding}if(top<this.padding){top=this.padding}left=this.x;if(left+width+this.padding>maxWidth){left=maxWidth-width-this.padding}if(left<this.padding){left=this.padding}}this.frame.style.left=left+\"px\";this.frame.style.top=top+\"px\";this.frame.style.visibility=\"visible\";this.hidden=false}else{this.hide()}}},{key:\"hide\",value:function hide(){this.hidden=true;this.frame.style.left=\"0\";this.frame.style.top=\"0\";this.frame.style.visibility=\"hidden\"}},{key:\"destroy\",value:function destroy(){this.frame.parentNode.removeChild(this.frame)}}]);return Popup}();exports[\"default\"]=Popup},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var date=\"date\";var object=\"object\";var dom=\"dom\";var moment=\"moment\";var any=\"any\";var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,function:\"function\"},container:{dom:dom},__type__:{object:object,boolean:bool,function:\"function\"}},align:{string:string},rtl:{boolean:bool,undefined:\"undefined\"},rollingMode:{follow:{boolean:bool},offset:{number:number,undefined:\"undefined\"},__type__:{object:object}},verticalScroll:{boolean:bool,undefined:\"undefined\"},horizontalScroll:{boolean:bool,undefined:\"undefined\"},autoResize:{boolean:bool},throttleRedraw:{number:number},clickToUse:{boolean:bool},dataAttributes:{string:string,array:array},editable:{add:{boolean:bool,undefined:\"undefined\"},remove:{boolean:bool,undefined:\"undefined\"},updateGroup:{boolean:bool,undefined:\"undefined\"},updateTime:{boolean:bool,undefined:\"undefined\"},overrideItems:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},end:{number:number,date:date,string:string,moment:moment},format:{minorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},week:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object,function:\"function\"}},majorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},week:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object,function:\"function\"}},__type__:{object:object}},moment:{function:\"function\"},groupOrder:{string:string,function:\"function\"},groupEditable:{add:{boolean:bool,undefined:\"undefined\"},remove:{boolean:bool,undefined:\"undefined\"},order:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},groupOrderSwap:{function:\"function\"},height:{string:string,number:number},hiddenDates:{start:{date:date,number:number,string:string,moment:moment},end:{date:date,number:number,string:string,moment:moment},repeat:{string:string},__type__:{object:object,array:array}},itemsAlwaysDraggable:{item:{boolean:bool,undefined:\"undefined\"},range:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},limitSize:{boolean:bool},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},margin:{axis:{number:number},item:{horizontal:{number:number,undefined:\"undefined\"},vertical:{number:number,undefined:\"undefined\"},__type__:{object:object,number:number}},__type__:{object:object,number:number}},max:{date:date,number:number,string:string,moment:moment},maxHeight:{number:number,string:string},maxMinorChars:{number:number},min:{date:date,number:number,string:string,moment:moment},minHeight:{number:number,string:string},moveable:{boolean:bool},multiselect:{boolean:bool},multiselectPerGroup:{boolean:bool},onAdd:{function:\"function\"},onDropObjectOnItem:{function:\"function\"},onUpdate:{function:\"function\"},onMove:{function:\"function\"},onMoving:{function:\"function\"},onRemove:{function:\"function\"},onAddGroup:{function:\"function\"},onMoveGroup:{function:\"function\"},onRemoveGroup:{function:\"function\"},onInitialDrawComplete:{function:\"function\"},order:{function:\"function\"},orientation:{axis:{string:string,undefined:\"undefined\"},item:{string:string,undefined:\"undefined\"},__type__:{string:string,object:object}},selectable:{boolean:bool},showCurrentTime:{boolean:bool},showMajorLabels:{boolean:bool},showMinorLabels:{boolean:bool},stack:{boolean:bool},stackSubgroups:{boolean:bool},snap:{function:\"function\",null:\"null\"},start:{date:date,number:number,string:string,moment:moment},template:{function:\"function\"},groupTemplate:{function:\"function\"},visibleFrameTemplate:{string:string,function:\"function\"},showTooltips:{boolean:bool},tooltip:{followMouse:{boolean:bool},overflowMethod:{string:[\"cap\",\"flip\"]},__type__:{object:object}},tooltipOnItemUpdateTime:{template:{function:\"function\"},__type__:{boolean:bool,object:object}},timeAxis:{scale:{string:string,undefined:\"undefined\"},step:{number:number,undefined:\"undefined\"},__type__:{object:object}},type:{string:string},width:{string:string,number:number},zoomable:{boolean:bool},zoomKey:{string:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"]},zoomMax:{number:number},zoomMin:{number:number},__type__:{object:object}};var configureOptions={global:{align:[\"center\",\"left\",\"right\"],direction:false,autoResize:true,clickToUse:false,editable:{add:false,remove:false,updateGroup:false,updateTime:false},end:\"\",format:{minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",week:\"w\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",week:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}},groupsDraggable:false,height:\"\",locale:\"\",margin:{axis:[20,0,100,1],item:{horizontal:[10,0,100,1],vertical:[10,0,100,1]}},max:\"\",maxHeight:\"\",maxMinorChars:[7,0,20,1],min:\"\",minHeight:\"\",moveable:false,multiselect:false,multiselectPerGroup:false,orientation:{axis:[\"both\",\"bottom\",\"top\"],item:[\"bottom\",\"top\"]},selectable:true,showCurrentTime:false,showMajorLabels:true,showMinorLabels:true,stack:true,stackSubgroups:true,start:\"\",showTooltips:true,tooltip:{followMouse:false,overflowMethod:\"flip\"},tooltipOnItemUpdateTime:false,type:[\"box\",\"point\",\"range\",\"background\"],width:\"100%\",zoomable:true,zoomKey:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1]}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Component=__webpack_require__(16);var DataAxis=__webpack_require__(107);var GraphGroup=__webpack_require__(109);var Legend=__webpack_require__(112);var Bars=__webpack_require__(110)\n;var Lines=__webpack_require__(111);var Points=__webpack_require__(72);var UNGROUPED=\"__ungrouped__\";function LineGraph(body,options){this.id=util.randomUUID();this.body=body;this.defaultOptions={yAxisOrientation:\"left\",defaultGroup:\"default\",sort:true,sampling:true,stack:false,graphHeight:\"400px\",shaded:{enabled:false,orientation:\"bottom\"},style:\"line\",barChart:{width:50,sideBySide:false,align:\"center\"},interpolation:{enabled:true,parametrization:\"centripetal\",alpha:.5},drawPoints:{enabled:true,size:6,style:\"square\"},dataAxis:{},legend:{},groups:{visibility:{}}};this.options=util.extend({},this.defaultOptions);this.dom={};this.props={};this.hammer=null;this.groups={};this.abortedGraphUpdate=false;this.updateSVGheight=false;this.updateSVGheightOnResize=false;this.forceGraphUpdate=true;var me=this;this.itemsData=null;this.groupsData=null;this.itemListeners={add:function add(event,params,senderId){me._onAdd(params.items)},update:function update(event,params,senderId){me._onUpdate(params.items)},remove:function remove(event,params,senderId){me._onRemove(params.items)}};this.groupListeners={add:function add(event,params,senderId){me._onAddGroups(params.items)},update:function update(event,params,senderId){me._onUpdateGroups(params.items)},remove:function remove(event,params,senderId){me._onRemoveGroups(params.items)}};this.items={};this.selection=[];this.lastStart=this.body.range.start;this.touchParams={};this.svgElements={};this.setOptions(options);this.groupsUsingDefaultStyles=[0];this.body.emitter.on(\"rangechanged\",function(){me.lastStart=me.body.range.start;me.svg.style.left=util.option.asSize(-me.props.width);me.forceGraphUpdate=true;me.redraw.call(me)});this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups}}LineGraph.prototype=new Component;LineGraph.prototype._create=function(){var frame=document.createElement(\"div\");frame.className=\"vis-line-graph\";this.dom.frame=frame;this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"relative\";this.svg.style.height=(\"\"+this.options.graphHeight).replace(\"px\",\"\")+\"px\";this.svg.style.display=\"block\";frame.appendChild(this.svg);this.options.dataAxis.orientation=\"left\";this.yAxisLeft=new DataAxis(this.body,this.options.dataAxis,this.svg,this.options.groups);this.options.dataAxis.orientation=\"right\";this.yAxisRight=new DataAxis(this.body,this.options.dataAxis,this.svg,this.options.groups);delete this.options.dataAxis.orientation;this.legendLeft=new Legend(this.body,this.options.legend,\"left\",this.options.groups);this.legendRight=new Legend(this.body,this.options.legend,\"right\",this.options.groups);this.show()};LineGraph.prototype.setOptions=function(options){if(options){var fields=[\"sampling\",\"defaultGroup\",\"stack\",\"height\",\"graphHeight\",\"yAxisOrientation\",\"style\",\"barChart\",\"dataAxis\",\"sort\",\"groups\"];if(options.graphHeight===undefined&&options.height!==undefined){this.updateSVGheight=true;this.updateSVGheightOnResize=true}else if(this.body.domProps.centerContainer.height!==undefined&&options.graphHeight!==undefined){if(parseInt((options.graphHeight+\"\").replace(\"px\",\"\"))<this.body.domProps.centerContainer.height){this.updateSVGheight=true}}util.selectiveDeepExtend(fields,this.options,options);util.mergeOptions(this.options,options,\"interpolation\");util.mergeOptions(this.options,options,\"drawPoints\");util.mergeOptions(this.options,options,\"shaded\");util.mergeOptions(this.options,options,\"legend\");if(options.interpolation){if((0,_typeof3[\"default\"])(options.interpolation)==\"object\"){if(options.interpolation.parametrization){if(options.interpolation.parametrization==\"uniform\"){this.options.interpolation.alpha=0}else if(options.interpolation.parametrization==\"chordal\"){this.options.interpolation.alpha=1}else{this.options.interpolation.parametrization=\"centripetal\";this.options.interpolation.alpha=.5}}}}if(this.yAxisLeft){if(options.dataAxis!==undefined){this.yAxisLeft.setOptions(this.options.dataAxis);this.yAxisRight.setOptions(this.options.dataAxis)}}if(this.legendLeft){if(options.legend!==undefined){this.legendLeft.setOptions(this.options.legend);this.legendRight.setOptions(this.options.legend)}}if(this.groups.hasOwnProperty(UNGROUPED)){this.groups[UNGROUPED].setOptions(options)}}if(this.dom.frame){this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})}};LineGraph.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}};LineGraph.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}};LineGraph.prototype.setItems=function(items){var me=this,ids,oldItemsData=this.itemsData;if(!items){this.itemsData=null}else if(items instanceof DataSet||items instanceof DataView){this.itemsData=items}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(oldItemsData){util.forEach(this.itemListeners,function(callback,event){oldItemsData.off(event,callback)});ids=oldItemsData.getIds();this._onRemove(ids)}if(this.itemsData){var id=this.id;util.forEach(this.itemListeners,function(callback,event){me.itemsData.on(event,callback,id)});ids=this.itemsData.getIds();this._onAdd(ids)}};LineGraph.prototype.setGroups=function(groups){var me=this;var ids;if(this.groupsData){util.forEach(this.groupListeners,function(callback,event){me.groupsData.off(event,callback)});ids=this.groupsData.getIds();this.groupsData=null;for(var i=0;i<ids.length;i++){this._removeGroup(ids[i])}}if(!groups){this.groupsData=null}else if(groups instanceof DataSet||groups instanceof DataView){this.groupsData=groups}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(this.groupsData){var id=this.id;util.forEach(this.groupListeners,function(callback,event){me.groupsData.on(event,callback,id)});ids=this.groupsData.getIds();this._onAddGroups(ids)}};LineGraph.prototype._onUpdate=function(ids){this._updateAllGroupData(ids)};LineGraph.prototype._onAdd=function(ids){this._onUpdate(ids)};LineGraph.prototype._onRemove=function(ids){this._onUpdate(ids)};LineGraph.prototype._onUpdateGroups=function(groupIds){this._updateAllGroupData(null,groupIds)};LineGraph.prototype._onAddGroups=function(groupIds){this._onUpdateGroups(groupIds)};LineGraph.prototype._onRemoveGroups=function(groupIds){for(var i=0;i<groupIds.length;i++){this._removeGroup(groupIds[i])}this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})};LineGraph.prototype._removeGroup=function(groupId){if(this.groups.hasOwnProperty(groupId)){if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.removeGroup(groupId);this.legendRight.removeGroup(groupId);this.legendRight.redraw()}else{this.yAxisLeft.removeGroup(groupId);this.legendLeft.removeGroup(groupId);this.legendLeft.redraw()}delete this.groups[groupId]}};LineGraph.prototype._updateGroup=function(group,groupId){if(!this.groups.hasOwnProperty(groupId)){this.groups[groupId]=new GraphGroup(group,groupId,this.options,this.groupsUsingDefaultStyles);if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.addGroup(groupId,this.groups[groupId]);this.legendRight.addGroup(groupId,this.groups[groupId])}else{this.yAxisLeft.addGroup(groupId,this.groups[groupId]);this.legendLeft.addGroup(groupId,this.groups[groupId])}}else{this.groups[groupId].update(group);if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.updateGroup(groupId,this.groups[groupId]);this.legendRight.updateGroup(groupId,this.groups[groupId]);this.yAxisLeft.removeGroup(groupId);this.legendLeft.removeGroup(groupId)}else{this.yAxisLeft.updateGroup(groupId,this.groups[groupId]);this.legendLeft.updateGroup(groupId,this.groups[groupId]);this.yAxisRight.removeGroup(groupId);this.legendRight.removeGroup(groupId)}}this.legendLeft.redraw();this.legendRight.redraw()};LineGraph.prototype._updateAllGroupData=function(ids,groupIds){if(this.itemsData!=null){var groupsContent={};var items=this.itemsData.get();var fieldId=this.itemsData._fieldId;var idMap={};if(ids){ids.map(function(id){idMap[id]=id})}var groupCounts={};for(var i=0;i<items.length;i++){var item=items[i];var groupId=item.group;if(groupId===null||groupId===undefined){groupId=UNGROUPED}groupCounts.hasOwnProperty(groupId)?groupCounts[groupId]++:groupCounts[groupId]=1}var existingItemsMap={};if(!groupIds&&ids){for(groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){group=this.groups[groupId];var existing_items=group.getItems();groupsContent[groupId]=existing_items.filter(function(item){existingItemsMap[item[fieldId]]=item[fieldId];return item[fieldId]!==idMap[item[fieldId]]});var newLength=groupCounts[groupId];groupCounts[groupId]-=groupsContent[groupId].length;if(groupsContent[groupId].length<newLength){groupsContent[groupId][newLength-1]={}}}}}for(i=0;i<items.length;i++){item=items[i];groupId=item.group;if(groupId===null||groupId===undefined){groupId=UNGROUPED}if(!groupIds&&ids&&item[fieldId]!==idMap[item[fieldId]]&&existingItemsMap.hasOwnProperty(item[fieldId])){continue}if(!groupsContent.hasOwnProperty(groupId)){groupsContent[groupId]=new Array(groupCounts[groupId])}var extended=util.bridgeObject(item);extended.x=util.convert(item.x,\"Date\");extended.end=util.convert(item.end,\"Date\");extended.orginalY=item.y;extended.y=Number(item.y);extended[fieldId]=item[fieldId];var index=groupsContent[groupId].length-groupCounts[groupId]--;groupsContent[groupId][index]=extended}for(groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){if(!groupsContent.hasOwnProperty(groupId)){groupsContent[groupId]=new Array(0)}}}for(groupId in groupsContent){if(groupsContent.hasOwnProperty(groupId)){if(groupsContent[groupId].length==0){if(this.groups.hasOwnProperty(groupId)){this._removeGroup(groupId)}}else{var group=undefined;if(this.groupsData!=undefined){group=this.groupsData.get(groupId)}if(group==undefined){group={id:groupId,content:this.options.defaultGroup+groupId}}this._updateGroup(group,groupId);this.groups[groupId].setItems(groupsContent[groupId])}}}this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})}};LineGraph.prototype.redraw=function(){var resized=false;this.props.width=this.dom.frame.offsetWidth;this.props.height=this.body.domProps.centerContainer.height-this.body.domProps.border.top-this.body.domProps.border.bottom;resized=this._isResized()||resized;var visibleInterval=this.body.range.end-this.body.range.start;var zoomed=visibleInterval!=this.lastVisibleInterval;this.lastVisibleInterval=visibleInterval;if(resized==true){this.svg.style.width=util.option.asSize(3*this.props.width);this.svg.style.left=util.option.asSize(-this.props.width);if((this.options.height+\"\").indexOf(\"%\")!=-1||this.updateSVGheightOnResize==true){this.updateSVGheight=true}}if(this.updateSVGheight==true){if(this.options.graphHeight!=this.props.height+\"px\"){this.options.graphHeight=this.props.height+\"px\";this.svg.style.height=this.props.height+\"px\"}this.updateSVGheight=false}else{this.svg.style.height=(\"\"+this.options.graphHeight).replace(\"px\",\"\")+\"px\"}if(resized==true||zoomed==true||this.abortedGraphUpdate==true||this.forceGraphUpdate==true){resized=this._updateGraph()||resized;this.forceGraphUpdate=false}else{if(this.lastStart!=0){var offset=this.body.range.start-this.lastStart;var range=this.body.range.end-this.body.range.start;if(this.props.width!=0){var rangePerPixelInv=this.props.width/range;var xOffset=offset*rangePerPixelInv;this.svg.style.left=-this.props.width-xOffset+\"px\"}}}this.legendLeft.redraw();this.legendRight.redraw();return resized};LineGraph.prototype._getSortedGroupIds=function(){var grouplist=[];for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){var group=this.groups[groupId];if(group.visible==true&&(this.options.groups.visibility[groupId]===undefined||this.options.groups.visibility[groupId]==true)){grouplist.push({id:groupId,zIndex:group.options.zIndex})}}}util.insertSort(grouplist,function(a,b){var az=a.zIndex;var bz=b.zIndex;if(az===undefined)az=0;if(bz===undefined)bz=0;return az==bz?0:az<bz?-1:1});var groupIds=new Array(grouplist.length);for(var i=0;i<grouplist.length;i++){groupIds[i]=grouplist[i].id}return groupIds};LineGraph.prototype._updateGraph=function(){DOMutil.prepareElements(this.svgElements);if(this.props.width!=0&&this.itemsData!=null){var group,i;var groupRanges={};var changeCalled=false;var minDate=this.body.util.toGlobalTime(-this.body.domProps.root.width);var maxDate=this.body.util.toGlobalTime(2*this.body.domProps.root.width);var groupIds=this._getSortedGroupIds();if(groupIds.length>0){var groupsData={};this._getRelevantData(groupIds,groupsData,minDate,maxDate);this._applySampling(groupIds,groupsData);for(i=0;i<groupIds.length;i++){this._convertXcoordinates(groupsData[groupIds[i]])}this._getYRanges(groupIds,groupsData,groupRanges);changeCalled=this._updateYAxis(groupIds,groupRanges);if(changeCalled==true){DOMutil.cleanupElements(this.svgElements);this.abortedGraphUpdate=true;return true}this.abortedGraphUpdate=false;var below=undefined;for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(this.options.stack===true&&this.options.style===\"line\"){if(group.options.excludeFromStacking==undefined||!group.options.excludeFromStacking){if(below!=undefined){this._stack(groupsData[group.id],groupsData[below.id]);if(group.options.shaded.enabled==true&&group.options.shaded.orientation!==\"group\"){if(group.options.shaded.orientation==\"top\"&&below.options.shaded.orientation!==\"group\"){below.options.shaded.orientation=\"group\";below.options.shaded.groupId=group.id}else{group.options.shaded.orientation=\"group\";group.options.shaded.groupId=below.id}}}below=group}}this._convertYcoordinates(groupsData[groupIds[i]],group)}var paths={};for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(group.options.style===\"line\"&&group.options.shaded.enabled==true){var dataset=groupsData[groupIds[i]];if(dataset==null||dataset.length==0){continue}if(!paths.hasOwnProperty(groupIds[i])){paths[groupIds[i]]=Lines.calcPath(dataset,group)}if(group.options.shaded.orientation===\"group\"){var subGroupId=group.options.shaded.groupId;if(groupIds.indexOf(subGroupId)===-1){console.log(group.id+\": Unknown shading group target given:\"+subGroupId);continue}if(!paths.hasOwnProperty(subGroupId)){paths[subGroupId]=Lines.calcPath(groupsData[subGroupId],this.groups[subGroupId])}Lines.drawShading(paths[groupIds[i]],group,paths[subGroupId],this.framework)}else{Lines.drawShading(paths[groupIds[i]],group,undefined,this.framework)}}}Bars.draw(groupIds,groupsData,this.framework);for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(groupsData[groupIds[i]].length>0){switch(group.options.style){case\"line\":if(!paths.hasOwnProperty(groupIds[i])){paths[groupIds[i]]=Lines.calcPath(groupsData[groupIds[i]],group)}Lines.draw(paths[groupIds[i]],group,this.framework);case\"point\":case\"points\":if(group.options.style==\"point\"||group.options.style==\"points\"||group.options.drawPoints.enabled==true){Points.draw(groupsData[groupIds[i]],group,this.framework)}break;case\"bar\":default:}}}}}DOMutil.cleanupElements(this.svgElements);return false};LineGraph.prototype._stack=function(data,subData){var index,dx,dy,subPrevPoint,subNextPoint;index=0;for(var j=0;j<data.length;j++){subPrevPoint=undefined;subNextPoint=undefined;for(var k=index;k<subData.length;k++){if(subData[k].x===data[j].x){subPrevPoint=subData[k];subNextPoint=subData[k];index=k;break}else if(subData[k].x>data[j].x){subNextPoint=subData[k];if(k==0){subPrevPoint=subNextPoint}else{subPrevPoint=subData[k-1]}index=k;break}}if(subNextPoint===undefined){subPrevPoint=subData[subData.length-1];subNextPoint=subData[subData.length-1]}dx=subNextPoint.x-subPrevPoint.x;dy=subNextPoint.y-subPrevPoint.y;if(dx==0){data[j].y=data[j].orginalY+subNextPoint.y}else{data[j].y=data[j].orginalY+dy/dx*(data[j].x-subPrevPoint.x)+subPrevPoint.y}}};LineGraph.prototype._getRelevantData=function(groupIds,groupsData,minDate,maxDate){var group,i,j,item;if(groupIds.length>0){for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];var itemsData=group.getItems();if(group.options.sort==true){var dateComparator=function dateComparator(a,b){return a.getTime()==b.getTime()?0:a<b?-1:1};var first=Math.max(0,util.binarySearchValue(itemsData,minDate,\"x\",\"before\",dateComparator));var last=Math.min(itemsData.length,util.binarySearchValue(itemsData,maxDate,\"x\",\"after\",dateComparator)+1);if(last<=0){last=itemsData.length}var dataContainer=new Array(last-first);for(j=first;j<last;j++){item=group.itemsData[j];dataContainer[j-first]=item}groupsData[groupIds[i]]=dataContainer}else{groupsData[groupIds[i]]=group.itemsData}}}};LineGraph.prototype._applySampling=function(groupIds,groupsData){var group;if(groupIds.length>0){for(var i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(group.options.sampling==true){var dataContainer=groupsData[groupIds[i]];if(dataContainer.length>0){var increment=1;var amountOfPoints=dataContainer.length;var xDistance=this.body.util.toGlobalScreen(dataContainer[dataContainer.length-1].x)-this.body.util.toGlobalScreen(dataContainer[0].x);var pointsPerPixel=amountOfPoints/xDistance;increment=Math.min(Math.ceil(.2*amountOfPoints),Math.max(1,Math.round(pointsPerPixel)));var sampledData=new Array(amountOfPoints);for(var j=0;j<amountOfPoints;j+=increment){var idx=Math.round(j/increment);sampledData[idx]=dataContainer[j]}groupsData[groupIds[i]]=sampledData.splice(0,Math.round(amountOfPoints/increment))}}}}};LineGraph.prototype._getYRanges=function(groupIds,groupsData,groupRanges){var groupData,group,i;var combinedDataLeft=[];var combinedDataRight=[];var options;if(groupIds.length>0){for(i=0;i<groupIds.length;i++){groupData=groupsData[groupIds[i]];options=this.groups[groupIds[i]].options;if(groupData.length>0){group=this.groups[groupIds[i]];if(options.stack===true&&options.style===\"bar\"){if(options.yAxisOrientation===\"left\"){combinedDataLeft=combinedDataLeft.concat(groupData)}else{combinedDataRight=combinedDataRight.concat(groupData)}}else{groupRanges[groupIds[i]]=group.getYRange(groupData,groupIds[i])}}}Bars.getStackedYRange(combinedDataLeft,groupRanges,groupIds,\"__barStackLeft\",\"left\");Bars.getStackedYRange(combinedDataRight,groupRanges,groupIds,\"__barStackRight\",\"right\")}};LineGraph.prototype._updateYAxis=function(groupIds,groupRanges){var resized=false;var yAxisLeftUsed=false;var yAxisRightUsed=false;var minLeft=1e9,minRight=1e9,maxLeft=-1e9,maxRight=-1e9,minVal,maxVal;if(groupIds.length>0){for(var i=0;i<groupIds.length;i++){var group=this.groups[groupIds[i]];if(group&&group.options.yAxisOrientation!=\"right\"){yAxisLeftUsed=true;minLeft=1e9;maxLeft=-1e9}else if(group&&group.options.yAxisOrientation){yAxisRightUsed=true;minRight=1e9;maxRight=-1e9}}for(i=0;i<groupIds.length;i++){if(groupRanges.hasOwnProperty(groupIds[i])){if(groupRanges[groupIds[i]].ignore!==true){minVal=groupRanges[groupIds[i]].min;maxVal=groupRanges[groupIds[i]].max;if(groupRanges[groupIds[i]].yAxisOrientation!=\"right\"){yAxisLeftUsed=true;minLeft=minLeft>minVal?minVal:minLeft;maxLeft=maxLeft<maxVal?maxVal:maxLeft}else{yAxisRightUsed=true;minRight=minRight>minVal?minVal:minRight;maxRight=maxRight<maxVal?maxVal:maxRight}}}}if(yAxisLeftUsed==true){this.yAxisLeft.setRange(minLeft,maxLeft)}if(yAxisRightUsed==true){this.yAxisRight.setRange(minRight,maxRight)}}resized=this._toggleAxisVisiblity(yAxisLeftUsed,this.yAxisLeft)||resized;resized=this._toggleAxisVisiblity(yAxisRightUsed,this.yAxisRight)||resized;if(yAxisRightUsed==true&&yAxisLeftUsed==true){this.yAxisLeft.drawIcons=true;this.yAxisRight.drawIcons=true}else{this.yAxisLeft.drawIcons=false;this.yAxisRight.drawIcons=false}this.yAxisRight.master=!yAxisLeftUsed;this.yAxisRight.masterAxis=this.yAxisLeft;if(this.yAxisRight.master==false){if(yAxisRightUsed==true){this.yAxisLeft.lineOffset=this.yAxisRight.width}else{this.yAxisLeft.lineOffset=0}resized=this.yAxisLeft.redraw()||resized;resized=this.yAxisRight.redraw()||resized}else{resized=this.yAxisRight.redraw()||resized}var tempGroups=[\"__barStackLeft\",\"__barStackRight\",\"__lineStackLeft\",\"__lineStackRight\"];for(i=0;i<tempGroups.length;i++){if(groupIds.indexOf(tempGroups[i])!=-1){groupIds.splice(groupIds.indexOf(tempGroups[i]),1)}}return resized};LineGraph.prototype._toggleAxisVisiblity=function(axisUsed,axis){var changed=false;if(axisUsed==false){if(axis.dom.frame.parentNode&&axis.hidden==false){axis.hide();changed=true}}else{if(!axis.dom.frame.parentNode&&axis.hidden==true){axis.show();changed=true}}return changed};LineGraph.prototype._convertXcoordinates=function(datapoints){var toScreen=this.body.util.toScreen;for(var i=0;i<datapoints.length;i++){datapoints[i].screen_x=toScreen(datapoints[i].x)+this.props.width;datapoints[i].screen_y=datapoints[i].y;if(datapoints[i].end!=undefined){datapoints[i].screen_end=toScreen(datapoints[i].end)+this.props.width}else{datapoints[i].screen_end=undefined}}};LineGraph.prototype._convertYcoordinates=function(datapoints,group){var axis=this.yAxisLeft;var svgHeight=Number(this.svg.style.height.replace(\"px\",\"\"));if(group.options.yAxisOrientation==\"right\"){axis=this.yAxisRight}for(var i=0;i<datapoints.length;i++){datapoints[i].screen_y=Math.round(axis.convertValue(datapoints[i].y))}group.setZeroPosition(Math.min(svgHeight,axis.convertValue(0)))};module.exports=LineGraph},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var Component=__webpack_require__(16);var DataScale=__webpack_require__(108);function DataAxis(body,options,svg,linegraphOptions){this.id=util.randomUUID();this.body=body;this.defaultOptions={orientation:\"left\",showMinorLabels:true,showMajorLabels:true,icons:false,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:\"40px\",visible:true,alignZeros:true,left:{range:{min:undefined,max:undefined},format:function format(value){return\"\"+parseFloat(value.toPrecision(3))},title:{text:undefined,style:undefined}},right:{range:{min:undefined,max:undefined},format:function format(value){return\"\"+parseFloat(value.toPrecision(3))},title:{text:undefined,style:undefined}}};this.linegraphOptions=linegraphOptions;this.linegraphSVG=svg;this.props={};this.DOMelements={lines:{},labels:{},title:{}};this.dom={};this.scale=undefined;this.range={start:0,end:0};this.options=util.extend({},this.defaultOptions);this.conversionFactor=1;this.setOptions(options);this.width=Number((\"\"+this.options.width).replace(\"px\",\"\"));this.minWidth=this.width;this.height=this.linegraphSVG.getBoundingClientRect().height;this.hidden=false;this.stepPixels=25;this.zeroCrossing=-1;this.amountOfSteps=-1;this.lineOffset=0;this.master=true;this.masterAxis=null;this.svgElements={};this.iconsRemoved=false;this.groups={};this.amountOfGroups=0;this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};var me=this;this.body.emitter.on(\"verticalDrag\",function(){me.dom.lineContainer.style.top=me.body.domProps.scrollTop+\"px\"})}DataAxis.prototype=new Component;DataAxis.prototype.addGroup=function(label,graphOptions){if(!this.groups.hasOwnProperty(label)){this.groups[label]=graphOptions}this.amountOfGroups+=1};DataAxis.prototype.updateGroup=function(label,graphOptions){if(!this.groups.hasOwnProperty(label)){this.amountOfGroups+=1}this.groups[label]=graphOptions};DataAxis.prototype.removeGroup=function(label){if(this.groups.hasOwnProperty(label)){delete this.groups[label];this.amountOfGroups-=1}};DataAxis.prototype.setOptions=function(options){if(options){var redraw=false;if(this.options.orientation!=options.orientation&&options.orientation!==undefined){redraw=true}var fields=[\"orientation\",\"showMinorLabels\",\"showMajorLabels\",\"icons\",\"majorLinesOffset\",\"minorLinesOffset\",\"labelOffsetX\",\"labelOffsetY\",\"iconWidth\",\"width\",\"visible\",\"left\",\"right\",\"alignZeros\"];util.selectiveDeepExtend(fields,this.options,options);this.minWidth=Number((\"\"+this.options.width).replace(\"px\",\"\"));if(redraw===true&&this.dom.frame){this.hide();this.show()}}};DataAxis.prototype._create=function(){this.dom.frame=document.createElement(\"div\");this.dom.frame.style.width=this.options.width;this.dom.frame.style.height=this.height;this.dom.lineContainer=document.createElement(\"div\");this.dom.lineContainer.style.width=\"100%\";this.dom.lineContainer.style.height=this.height;this.dom.lineContainer.style.position=\"relative\";this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"absolute\";this.svg.style.top=\"0px\";this.svg.style.height=\"100%\";this.svg.style.width=\"100%\";this.svg.style.display=\"block\";this.dom.frame.appendChild(this.svg)};DataAxis.prototype._redrawGroupIcons=function(){DOMutil.prepareElements(this.svgElements);var x;var iconWidth=this.options.iconWidth;var iconHeight=15;var iconOffset=4;var y=iconOffset+.5*iconHeight;if(this.options.orientation===\"left\"){x=iconOffset}else{x=this.width-iconWidth-iconOffset}var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible===true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]===true)){this.groups[groupId].getLegend(iconWidth,iconHeight,this.framework,x,y);y+=iconHeight+iconOffset}}DOMutil.cleanupElements(this.svgElements);this.iconsRemoved=false};DataAxis.prototype._cleanupIcons=function(){if(this.iconsRemoved===false){DOMutil.prepareElements(this.svgElements);DOMutil.cleanupElements(this.svgElements);this.iconsRemoved=true}};DataAxis.prototype.show=function(){this.hidden=false;if(!this.dom.frame.parentNode){if(this.options.orientation===\"left\"){this.body.dom.left.appendChild(this.dom.frame)}else{this.body.dom.right.appendChild(this.dom.frame)}}if(!this.dom.lineContainer.parentNode){this.body.dom.backgroundHorizontal.appendChild(this.dom.lineContainer)}};DataAxis.prototype.hide=function(){this.hidden=true;if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}if(this.dom.lineContainer.parentNode){this.dom.lineContainer.parentNode.removeChild(this.dom.lineContainer)}};DataAxis.prototype.setRange=function(start,end){this.range.start=start;this.range.end=end};DataAxis.prototype.redraw=function(){var resized=false;var activeGroups=0;this.dom.lineContainer.style.top=this.body.domProps.scrollTop+\"px\";for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){if(this.groups[groupId].visible===true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]===true)){activeGroups++}}}if(this.amountOfGroups===0||activeGroups===0){this.hide()}else{this.show();this.height=Number(this.linegraphSVG.style.height.replace(\"px\",\"\"));this.dom.lineContainer.style.height=this.height+\"px\";this.width=this.options.visible===true?Number((\"\"+this.options.width).replace(\"px\",\"\")):0;var props=this.props;var frame=this.dom.frame;frame.className=\"vis-data-axis\";this._calculateCharSize();var orientation=this.options.orientation;var showMinorLabels=this.options.showMinorLabels;var showMajorLabels=this.options.showMajorLabels;props.minorLabelHeight=showMinorLabels?props.minorCharHeight:0;props.majorLabelHeight=showMajorLabels?props.majorCharHeight:0;props.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset;props.minorLineHeight=1;props.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset;props.majorLineHeight=1;if(orientation===\"left\"){frame.style.top=\"0\";frame.style.left=\"0\";frame.style.bottom=\"\";frame.style.width=this.width+\"px\";frame.style.height=this.height+\"px\";this.props.width=this.body.domProps.left.width;this.props.height=this.body.domProps.left.height}else{frame.style.top=\"\";frame.style.bottom=\"0\";frame.style.left=\"0\";frame.style.width=this.width+\"px\";frame.style.height=this.height+\"px\";this.props.width=this.body.domProps.right.width;this.props.height=this.body.domProps.right.height}resized=this._redrawLabels();resized=this._isResized()||resized;if(this.options.icons===true){this._redrawGroupIcons()}else{this._cleanupIcons()}this._redrawTitle(orientation)}return resized};DataAxis.prototype._redrawLabels=function(){var _this=this;var resized=false;DOMutil.prepareElements(this.DOMelements.lines);DOMutil.prepareElements(this.DOMelements.labels);var orientation=this.options[\"orientation\"];var customRange=this.options[orientation].range!=undefined?this.options[orientation].range:{};var autoScaleEnd=true;if(customRange.max!=undefined){this.range.end=customRange.max;autoScaleEnd=false}var autoScaleStart=true;if(customRange.min!=undefined){this.range.start=customRange.min;autoScaleStart=false}this.scale=new DataScale(this.range.start,this.range.end,autoScaleStart,autoScaleEnd,this.dom.frame.offsetHeight,this.props.majorCharHeight,this.options.alignZeros,this.options[orientation].format);if(this.master===false&&this.masterAxis!=undefined){this.scale.followScale(this.masterAxis.scale)}this.maxLabelSize=0;var lines=this.scale.getLines();lines.forEach(function(line){var y=line.y;var isMajor=line.major;if(_this.options[\"showMinorLabels\"]&&isMajor===false){_this._redrawLabel(y-2,line.val,orientation,\"vis-y-axis vis-minor\",_this.props.minorCharHeight)}if(isMajor){if(y>=0){_this._redrawLabel(y-2,line.val,orientation,\"vis-y-axis vis-major\",_this.props.majorCharHeight)}}if(_this.master===true){if(isMajor){_this._redrawLine(y,orientation,\"vis-grid vis-horizontal vis-major\",_this.options.majorLinesOffset,_this.props.majorLineWidth)}else{_this._redrawLine(y,orientation,\"vis-grid vis-horizontal vis-minor\",_this.options.minorLinesOffset,_this.props.minorLineWidth)}}});var titleWidth=0;if(this.options[orientation].title!==undefined&&this.options[orientation].title.text!==undefined){titleWidth=this.props.titleCharHeight}var offset=this.options.icons===true?Math.max(this.options.iconWidth,titleWidth)+this.options.labelOffsetX+15:titleWidth+this.options.labelOffsetX+15;if(this.maxLabelSize>this.width-offset&&this.options.visible===true){this.width=this.maxLabelSize+offset;this.options.width=this.width+\"px\";DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);this.redraw();resized=true}else if(this.maxLabelSize<this.width-offset&&this.options.visible===true&&this.width>this.minWidth){this.width=Math.max(this.minWidth,this.maxLabelSize+offset);this.options.width=this.width+\"px\";DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);this.redraw();resized=true}else{DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);resized=false}return resized};DataAxis.prototype.convertValue=function(value){return this.scale.convertValue(value)};DataAxis.prototype.screenToValue=function(x){return this.scale.screenToValue(x)};DataAxis.prototype._redrawLabel=function(y,text,orientation,className,characterHeight){var label=DOMutil.getDOMElement(\"div\",this.DOMelements.labels,this.dom.frame);label.className=className;label.innerHTML=text;if(orientation===\"left\"){label.style.left=\"-\"+this.options.labelOffsetX+\"px\";label.style.textAlign=\"right\"}else{label.style.right=\"-\"+this.options.labelOffsetX+\"px\";label.style.textAlign=\"left\"}label.style.top=y-.5*characterHeight+this.options.labelOffsetY+\"px\";text+=\"\";var largestWidth=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);if(this.maxLabelSize<text.length*largestWidth){this.maxLabelSize=text.length*largestWidth}};DataAxis.prototype._redrawLine=function(y,orientation,className,offset,width){if(this.master===true){\nvar line=DOMutil.getDOMElement(\"div\",this.DOMelements.lines,this.dom.lineContainer);line.className=className;line.innerHTML=\"\";if(orientation===\"left\"){line.style.left=this.width-offset+\"px\"}else{line.style.right=this.width-offset+\"px\"}line.style.width=width+\"px\";line.style.top=y+\"px\"}};DataAxis.prototype._redrawTitle=function(orientation){DOMutil.prepareElements(this.DOMelements.title);if(this.options[orientation].title!==undefined&&this.options[orientation].title.text!==undefined){var title=DOMutil.getDOMElement(\"div\",this.DOMelements.title,this.dom.frame);title.className=\"vis-y-axis vis-title vis-\"+orientation;title.innerHTML=this.options[orientation].title.text;if(this.options[orientation].title.style!==undefined){util.addCssText(title,this.options[orientation].title.style)}if(orientation===\"left\"){title.style.left=this.props.titleCharHeight+\"px\"}else{title.style.right=this.props.titleCharHeight+\"px\"}title.style.width=this.height+\"px\"}DOMutil.cleanupElements(this.DOMelements.title)};DataAxis.prototype._calculateCharSize=function(){if(!(\"minorCharHeight\"in this.props)){var textMinor=document.createTextNode(\"0\");var measureCharMinor=document.createElement(\"div\");measureCharMinor.className=\"vis-y-axis vis-minor vis-measure\";measureCharMinor.appendChild(textMinor);this.dom.frame.appendChild(measureCharMinor);this.props.minorCharHeight=measureCharMinor.clientHeight;this.props.minorCharWidth=measureCharMinor.clientWidth;this.dom.frame.removeChild(measureCharMinor)}if(!(\"majorCharHeight\"in this.props)){var textMajor=document.createTextNode(\"0\");var measureCharMajor=document.createElement(\"div\");measureCharMajor.className=\"vis-y-axis vis-major vis-measure\";measureCharMajor.appendChild(textMajor);this.dom.frame.appendChild(measureCharMajor);this.props.majorCharHeight=measureCharMajor.clientHeight;this.props.majorCharWidth=measureCharMajor.clientWidth;this.dom.frame.removeChild(measureCharMajor)}if(!(\"titleCharHeight\"in this.props)){var textTitle=document.createTextNode(\"0\");var measureCharTitle=document.createElement(\"div\");measureCharTitle.className=\"vis-y-axis vis-title vis-measure\";measureCharTitle.appendChild(textTitle);this.dom.frame.appendChild(measureCharTitle);this.props.titleCharHeight=measureCharTitle.clientHeight;this.props.titleCharWidth=measureCharTitle.clientWidth;this.dom.frame.removeChild(measureCharTitle)}};module.exports=DataAxis},function(module,exports,__webpack_require__){\"use strict\";function DataScale(start,end,autoScaleStart,autoScaleEnd,containerHeight,majorCharHeight){var zeroAlign=arguments.length>6&&arguments[6]!==undefined?arguments[6]:false;var formattingFunction=arguments.length>7&&arguments[7]!==undefined?arguments[7]:false;this.majorSteps=[1,2,5,10];this.minorSteps=[.25,.5,1,2];this.customLines=null;this.containerHeight=containerHeight;this.majorCharHeight=majorCharHeight;this._start=start;this._end=end;this.scale=1;this.minorStepIdx=-1;this.magnitudefactor=1;this.determineScale();this.zeroAlign=zeroAlign;this.autoScaleStart=autoScaleStart;this.autoScaleEnd=autoScaleEnd;this.formattingFunction=formattingFunction;if(autoScaleStart||autoScaleEnd){var me=this;var roundToMinor=function roundToMinor(value){var rounded=value-value%(me.magnitudefactor*me.minorSteps[me.minorStepIdx]);if(value%(me.magnitudefactor*me.minorSteps[me.minorStepIdx])>.5*(me.magnitudefactor*me.minorSteps[me.minorStepIdx])){return rounded+me.magnitudefactor*me.minorSteps[me.minorStepIdx]}else{return rounded}};if(autoScaleStart){this._start-=this.magnitudefactor*2*this.minorSteps[this.minorStepIdx];this._start=roundToMinor(this._start)}if(autoScaleEnd){this._end+=this.magnitudefactor*this.minorSteps[this.minorStepIdx];this._end=roundToMinor(this._end)}this.determineScale()}}DataScale.prototype.setCharHeight=function(majorCharHeight){this.majorCharHeight=majorCharHeight};DataScale.prototype.setHeight=function(containerHeight){this.containerHeight=containerHeight};DataScale.prototype.determineScale=function(){var range=this._end-this._start;this.scale=this.containerHeight/range;var minimumStepValue=this.majorCharHeight/this.scale;var orderOfMagnitude=range>0?Math.round(Math.log(range)/Math.LN10):0;this.minorStepIdx=-1;this.magnitudefactor=Math.pow(10,orderOfMagnitude);var start=0;if(orderOfMagnitude<0){start=orderOfMagnitude}var solutionFound=false;for(var l=start;Math.abs(l)<=Math.abs(orderOfMagnitude);l++){this.magnitudefactor=Math.pow(10,l);for(var j=0;j<this.minorSteps.length;j++){var stepSize=this.magnitudefactor*this.minorSteps[j];if(stepSize>=minimumStepValue){solutionFound=true;this.minorStepIdx=j;break}}if(solutionFound===true){break}}};DataScale.prototype.is_major=function(value){return value%(this.magnitudefactor*this.majorSteps[this.minorStepIdx])===0};DataScale.prototype.getStep=function(){return this.magnitudefactor*this.minorSteps[this.minorStepIdx]};DataScale.prototype.getFirstMajor=function(){var majorStep=this.magnitudefactor*this.majorSteps[this.minorStepIdx];return this.convertValue(this._start+(majorStep-this._start%majorStep)%majorStep)};DataScale.prototype.formatValue=function(current){var returnValue=current.toPrecision(5);if(typeof this.formattingFunction===\"function\"){returnValue=this.formattingFunction(current)}if(typeof returnValue===\"number\"){return\"\"+returnValue}else if(typeof returnValue===\"string\"){return returnValue}else{return current.toPrecision(5)}};DataScale.prototype.getLines=function(){var lines=[];var step=this.getStep();var bottomOffset=(step-this._start%step)%step;for(var i=this._start+bottomOffset;this._end-i>1e-5;i+=step){if(i!=this._start){lines.push({major:this.is_major(i),y:this.convertValue(i),val:this.formatValue(i)})}}return lines};DataScale.prototype.followScale=function(other){var oldStepIdx=this.minorStepIdx;var oldStart=this._start;var oldEnd=this._end;var me=this;var increaseMagnitude=function increaseMagnitude(){me.magnitudefactor*=2};var decreaseMagnitude=function decreaseMagnitude(){me.magnitudefactor/=2};if(other.minorStepIdx<=1&&this.minorStepIdx<=1||other.minorStepIdx>1&&this.minorStepIdx>1){}else if(other.minorStepIdx<this.minorStepIdx){this.minorStepIdx=1;if(oldStepIdx==2){increaseMagnitude()}else{increaseMagnitude();increaseMagnitude()}}else{this.minorStepIdx=2;if(oldStepIdx==1){decreaseMagnitude()}else{decreaseMagnitude();decreaseMagnitude()}}var otherZero=other.convertValue(0);var otherStep=other.getStep()*other.scale;var done=false;var count=0;while(!done&&count++<5){this.scale=otherStep/(this.minorSteps[this.minorStepIdx]*this.magnitudefactor);var newRange=this.containerHeight/this.scale;this._start=oldStart;this._end=this._start+newRange;var myOriginalZero=this._end*this.scale;var majorStep=this.magnitudefactor*this.majorSteps[this.minorStepIdx];var majorOffset=this.getFirstMajor()-other.getFirstMajor();if(this.zeroAlign){var zeroOffset=otherZero-myOriginalZero;this._end+=zeroOffset/this.scale;this._start=this._end-newRange}else{if(!this.autoScaleStart){this._start+=majorStep-majorOffset/this.scale;this._end=this._start+newRange}else{this._start-=majorOffset/this.scale;this._end=this._start+newRange}}if(!this.autoScaleEnd&&this._end>oldEnd+1e-5){decreaseMagnitude();done=false;continue}if(!this.autoScaleStart&&this._start<oldStart-1e-5){if(this.zeroAlign&&oldStart>=0){console.warn(\"Can't adhere to given 'min' range, due to zeroalign\")}else{decreaseMagnitude();done=false;continue}}if(this.autoScaleStart&&this.autoScaleEnd&&newRange<oldEnd-oldStart){increaseMagnitude();done=false;continue}done=true}};DataScale.prototype.convertValue=function(value){return this.containerHeight-(value-this._start)*this.scale};DataScale.prototype.screenToValue=function(pixels){return(this.containerHeight-pixels)/this.scale+this._start};module.exports=DataScale},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Bars=__webpack_require__(110);var Lines=__webpack_require__(111);var Points=__webpack_require__(72);function GraphGroup(group,groupId,options,groupsUsingDefaultStyles){this.id=groupId;var fields=[\"sampling\",\"style\",\"sort\",\"yAxisOrientation\",\"barChart\",\"drawPoints\",\"shaded\",\"interpolation\",\"zIndex\",\"excludeFromStacking\",\"excludeFromLegend\"];this.options=util.selectiveBridgeObject(fields,options);this.usingDefaultStyle=group.className===undefined;this.groupsUsingDefaultStyles=groupsUsingDefaultStyles;this.zeroPosition=0;this.update(group);if(this.usingDefaultStyle==true){this.groupsUsingDefaultStyles[0]+=1}this.itemsData=[];this.visible=group.visible===undefined?true:group.visible}GraphGroup.prototype.setItems=function(items){if(items!=null){this.itemsData=items;if(this.options.sort==true){util.insertSort(this.itemsData,function(a,b){return a.x>b.x?1:-1})}}else{this.itemsData=[]}};GraphGroup.prototype.getItems=function(){return this.itemsData};GraphGroup.prototype.setZeroPosition=function(pos){this.zeroPosition=pos};GraphGroup.prototype.setOptions=function(options){if(options!==undefined){var fields=[\"sampling\",\"style\",\"sort\",\"yAxisOrientation\",\"barChart\",\"zIndex\",\"excludeFromStacking\",\"excludeFromLegend\"];util.selectiveDeepExtend(fields,this.options,options);if(typeof options.drawPoints==\"function\"){options.drawPoints={onRender:options.drawPoints}}util.mergeOptions(this.options,options,\"interpolation\");util.mergeOptions(this.options,options,\"drawPoints\");util.mergeOptions(this.options,options,\"shaded\");if(options.interpolation){if((0,_typeof3[\"default\"])(options.interpolation)==\"object\"){if(options.interpolation.parametrization){if(options.interpolation.parametrization==\"uniform\"){this.options.interpolation.alpha=0}else if(options.interpolation.parametrization==\"chordal\"){this.options.interpolation.alpha=1}else{this.options.interpolation.parametrization=\"centripetal\";this.options.interpolation.alpha=.5}}}}}};GraphGroup.prototype.update=function(group){this.group=group;this.content=group.content||\"graph\";this.className=group.className||this.className||\"vis-graph-group\"+this.groupsUsingDefaultStyles[0]%10;this.visible=group.visible===undefined?true:group.visible;this.style=group.style;this.setOptions(group.options)};GraphGroup.prototype.getLegend=function(iconWidth,iconHeight,framework,x,y){if(framework==undefined||framework==null){var svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");framework={svg:svg,svgElements:{},options:this.options,groups:[this]}}if(x==undefined||x==null){x=0}if(y==undefined||y==null){y=.5*iconHeight}switch(this.options.style){case\"line\":Lines.drawIcon(this,x,y,iconWidth,iconHeight,framework);break;case\"points\":case\"point\":Points.drawIcon(this,x,y,iconWidth,iconHeight,framework);break;case\"bar\":Bars.drawIcon(this,x,y,iconWidth,iconHeight,framework);break}return{icon:framework.svg,label:this.content,orientation:this.options.yAxisOrientation}};GraphGroup.prototype.getYRange=function(groupData){var yMin=groupData[0].y;var yMax=groupData[0].y;for(var j=0;j<groupData.length;j++){yMin=yMin>groupData[j].y?groupData[j].y:yMin;yMax=yMax<groupData[j].y?groupData[j].y:yMax}return{min:yMin,max:yMax,yAxisOrientation:this.options.yAxisOrientation}};module.exports=GraphGroup},function(module,exports,__webpack_require__){\"use strict\";var DOMutil=__webpack_require__(14);var Points=__webpack_require__(72);function Bargraph(groupId,options){}Bargraph.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");var barWidth=Math.round(.3*iconWidth);var originalWidth=group.options.barChart.width;var scale=originalWidth/barWidth;var bar1Height=Math.round(.4*iconHeight);var bar2Height=Math.round(.75*iconHeight);var offset=Math.round((iconWidth-2*barWidth)/3);DOMutil.drawBar(x+.5*barWidth+offset,y+fillHeight-bar1Height-1,barWidth,bar1Height,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);DOMutil.drawBar(x+1.5*barWidth+offset+2,y+fillHeight-bar2Height-1,barWidth,bar2Height,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);if(group.options.drawPoints.enabled==true){var groupTemplate={style:group.options.drawPoints.style,styles:group.options.drawPoints.styles,size:group.options.drawPoints.size/scale,className:group.className};DOMutil.drawPoint(x+.5*barWidth+offset,y+fillHeight-bar1Height-1,groupTemplate,framework.svgElements,framework.svg);DOMutil.drawPoint(x+1.5*barWidth+offset+2,y+fillHeight-bar2Height-1,groupTemplate,framework.svgElements,framework.svg)}};Bargraph.draw=function(groupIds,processedGroupData,framework){var combinedData=[];var intersections={};var coreDistance;var key,drawData;var group;var i,j;var barPoints=0;for(i=0;i<groupIds.length;i++){group=framework.groups[groupIds[i]];if(group.options.style===\"bar\"){if(group.visible===true&&(framework.options.groups.visibility[groupIds[i]]===undefined||framework.options.groups.visibility[groupIds[i]]===true)){for(j=0;j<processedGroupData[groupIds[i]].length;j++){combinedData.push({screen_x:processedGroupData[groupIds[i]][j].screen_x,screen_end:processedGroupData[groupIds[i]][j].screen_end,screen_y:processedGroupData[groupIds[i]][j].screen_y,x:processedGroupData[groupIds[i]][j].x,end:processedGroupData[groupIds[i]][j].end,y:processedGroupData[groupIds[i]][j].y,groupId:groupIds[i],label:processedGroupData[groupIds[i]][j].label});barPoints+=1}}}}if(barPoints===0){return}combinedData.sort(function(a,b){if(a.screen_x===b.screen_x){return a.groupId<b.groupId?-1:1}else{return a.screen_x-b.screen_x}});Bargraph._getDataIntersections(intersections,combinedData);for(i=0;i<combinedData.length;i++){group=framework.groups[combinedData[i].groupId];var minWidth=group.options.barChart.minWidth!=undefined?group.options.barChart.minWidth:.1*group.options.barChart.width;key=combinedData[i].screen_x;var heightOffset=0;if(intersections[key]===undefined){if(i+1<combinedData.length){coreDistance=Math.abs(combinedData[i+1].screen_x-key)}drawData=Bargraph._getSafeDrawData(coreDistance,group,minWidth)}else{var nextKey=i+(intersections[key].amount-intersections[key].resolved);if(nextKey<combinedData.length){coreDistance=Math.abs(combinedData[nextKey].screen_x-key)}drawData=Bargraph._getSafeDrawData(coreDistance,group,minWidth);intersections[key].resolved+=1;if(group.options.stack===true&&group.options.excludeFromStacking!==true){if(combinedData[i].screen_y<group.zeroPosition){heightOffset=intersections[key].accumulatedNegative;intersections[key].accumulatedNegative+=group.zeroPosition-combinedData[i].screen_y}else{heightOffset=intersections[key].accumulatedPositive;intersections[key].accumulatedPositive+=group.zeroPosition-combinedData[i].screen_y}}else if(group.options.barChart.sideBySide===true){drawData.width=drawData.width/intersections[key].amount;drawData.offset+=intersections[key].resolved*drawData.width-.5*drawData.width*(intersections[key].amount+1)}}var dataWidth=drawData.width;var start=combinedData[i].screen_x;if(combinedData[i].screen_end!=undefined){dataWidth=combinedData[i].screen_end-combinedData[i].screen_x;start+=dataWidth*.5}else{start+=drawData.offset}DOMutil.drawBar(start,combinedData[i].screen_y-heightOffset,dataWidth,group.zeroPosition-combinedData[i].screen_y,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);if(group.options.drawPoints.enabled===true){var pointData={screen_x:combinedData[i].screen_x,screen_y:combinedData[i].screen_y-heightOffset,x:combinedData[i].x,y:combinedData[i].y,groupId:combinedData[i].groupId,label:combinedData[i].label};Points.draw([pointData],group,framework,drawData.offset)}}};Bargraph._getDataIntersections=function(intersections,combinedData){var coreDistance;for(var i=0;i<combinedData.length;i++){if(i+1<combinedData.length){coreDistance=Math.abs(combinedData[i+1].screen_x-combinedData[i].screen_x)}if(i>0){coreDistance=Math.min(coreDistance,Math.abs(combinedData[i-1].screen_x-combinedData[i].screen_x))}if(coreDistance===0){if(intersections[combinedData[i].screen_x]===undefined){intersections[combinedData[i].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}}intersections[combinedData[i].screen_x].amount+=1}}};Bargraph._getSafeDrawData=function(coreDistance,group,minWidth){var width,offset;if(coreDistance<group.options.barChart.width&&coreDistance>0){width=coreDistance<minWidth?minWidth:coreDistance;offset=0;if(group.options.barChart.align===\"left\"){offset-=.5*coreDistance}else if(group.options.barChart.align===\"right\"){offset+=.5*coreDistance}}else{width=group.options.barChart.width;offset=0;if(group.options.barChart.align===\"left\"){offset-=.5*group.options.barChart.width}else if(group.options.barChart.align===\"right\"){offset+=.5*group.options.barChart.width}}return{width:width,offset:offset}};Bargraph.getStackedYRange=function(combinedData,groupRanges,groupIds,groupLabel,orientation){if(combinedData.length>0){combinedData.sort(function(a,b){if(a.screen_x===b.screen_x){return a.groupId<b.groupId?-1:1}else{return a.screen_x-b.screen_x}});var intersections={};Bargraph._getDataIntersections(intersections,combinedData);groupRanges[groupLabel]=Bargraph._getStackedYRange(intersections,combinedData);groupRanges[groupLabel].yAxisOrientation=orientation;groupIds.push(groupLabel)}};Bargraph._getStackedYRange=function(intersections,combinedData){var key;var yMin=combinedData[0].screen_y;var yMax=combinedData[0].screen_y;for(var i=0;i<combinedData.length;i++){key=combinedData[i].screen_x;if(intersections[key]===undefined){yMin=yMin>combinedData[i].screen_y?combinedData[i].screen_y:yMin;yMax=yMax<combinedData[i].screen_y?combinedData[i].screen_y:yMax}else{if(combinedData[i].screen_y<0){intersections[key].accumulatedNegative+=combinedData[i].screen_y}else{intersections[key].accumulatedPositive+=combinedData[i].screen_y}}}for(var xpos in intersections){if(intersections.hasOwnProperty(xpos)){yMin=yMin>intersections[xpos].accumulatedNegative?intersections[xpos].accumulatedNegative:yMin;yMin=yMin>intersections[xpos].accumulatedPositive?intersections[xpos].accumulatedPositive:yMin;yMax=yMax<intersections[xpos].accumulatedNegative?intersections[xpos].accumulatedNegative:yMax;yMax=yMax<intersections[xpos].accumulatedPositive?intersections[xpos].accumulatedPositive:yMax}}return{min:yMin,max:yMax}};module.exports=Bargraph},function(module,exports,__webpack_require__){\"use strict\";var DOMutil=__webpack_require__(14);function Line(groupId,options){}Line.calcPath=function(dataset,group){if(dataset!=null){if(dataset.length>0){var d=[];if(group.options.interpolation.enabled==true){d=Line._catmullRom(dataset,group)}else{d=Line._linear(dataset)}return d}}};Line.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var path,fillPath;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");path=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);path.setAttributeNS(null,\"class\",group.className);if(group.style!==undefined){path.setAttributeNS(null,\"style\",group.style)}path.setAttributeNS(null,\"d\",\"M\"+x+\",\"+y+\" L\"+(x+iconWidth)+\",\"+y+\"\");if(group.options.shaded.enabled==true){fillPath=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);if(group.options.shaded.orientation==\"top\"){fillPath.setAttributeNS(null,\"d\",\"M\"+x+\", \"+(y-fillHeight)+\"L\"+x+\",\"+y+\" L\"+(x+iconWidth)+\",\"+y+\" L\"+(x+iconWidth)+\",\"+(y-fillHeight))}else{fillPath.setAttributeNS(null,\"d\",\"M\"+x+\",\"+y+\" \"+\"L\"+x+\",\"+(y+fillHeight)+\" \"+\"L\"+(x+iconWidth)+\",\"+(y+fillHeight)+\"L\"+(x+iconWidth)+\",\"+y)}fillPath.setAttributeNS(null,\"class\",group.className+\" vis-icon-fill\");if(group.options.shaded.style!==undefined&&group.options.shaded.style!==\"\"){fillPath.setAttributeNS(null,\"style\",group.options.shaded.style)}}if(group.options.drawPoints.enabled==true){var groupTemplate={style:group.options.drawPoints.style,styles:group.options.drawPoints.styles,size:group.options.drawPoints.size,className:group.className};DOMutil.drawPoint(x+.5*iconWidth,y,groupTemplate,framework.svgElements,framework.svg)}};Line.drawShading=function(pathArray,group,subPathArray,framework){if(group.options.shaded.enabled==true){var svgHeight=Number(framework.svg.style.height.replace(\"px\",\"\"));var fillPath=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);var type=\"L\";if(group.options.interpolation.enabled==true){type=\"C\"}var dFill;var zero=0;if(group.options.shaded.orientation==\"top\"){zero=0}else if(group.options.shaded.orientation==\"bottom\"){zero=svgHeight}else{zero=Math.min(Math.max(0,group.zeroPosition),svgHeight)}if(group.options.shaded.orientation==\"group\"&&subPathArray!=null&&subPathArray!=undefined){dFill=\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false)+\" L\"+subPathArray[subPathArray.length-1][0]+\",\"+subPathArray[subPathArray.length-1][1]+\" \"+this.serializePath(subPathArray,type,true)+subPathArray[0][0]+\",\"+subPathArray[0][1]+\" Z\"}else{dFill=\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false)+\" V\"+zero+\" H\"+pathArray[0][0]+\" Z\"}fillPath.setAttributeNS(null,\"class\",group.className+\" vis-fill\");if(group.options.shaded.style!==undefined){fillPath.setAttributeNS(null,\"style\",group.options.shaded.style)}fillPath.setAttributeNS(null,\"d\",dFill)}};Line.draw=function(pathArray,group,framework){if(pathArray!=null&&pathArray!=undefined){var path=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);path.setAttributeNS(null,\"class\",group.className);if(group.style!==undefined){path.setAttributeNS(null,\"style\",group.style)}var type=\"L\";if(group.options.interpolation.enabled==true){type=\"C\"}path.setAttributeNS(null,\"d\",\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false))}};Line.serializePath=function(pathArray,type,inverse){if(pathArray.length<2){return\"\"}var d=type;var i;if(inverse){for(i=pathArray.length-2;i>0;i--){d+=pathArray[i][0]+\",\"+pathArray[i][1]+\" \"}}else{for(i=1;i<pathArray.length;i++){d+=pathArray[i][0]+\",\"+pathArray[i][1]+\" \"}}return d};Line._catmullRomUniform=function(data){var p0,p1,p2,p3,bp1,bp2;var d=[];d.push([Math.round(data[0].screen_x),Math.round(data[0].screen_y)]);var normalization=1/6;var length=data.length;for(var i=0;i<length-1;i++){p0=i==0?data[0]:data[i-1];p1=data[i];p2=data[i+1];p3=i+2<length?data[i+2]:p2;bp1={screen_x:(-p0.screen_x+6*p1.screen_x+p2.screen_x)*normalization,screen_y:(-p0.screen_y+6*p1.screen_y+p2.screen_y)*normalization};bp2={screen_x:(p1.screen_x+6*p2.screen_x-p3.screen_x)*normalization,screen_y:(p1.screen_y+6*p2.screen_y-p3.screen_y)*normalization};d.push([bp1.screen_x,bp1.screen_y]);d.push([bp2.screen_x,bp2.screen_y]);d.push([p2.screen_x,p2.screen_y])}return d};Line._catmullRom=function(data,group){var alpha=group.options.interpolation.alpha;if(alpha==0||alpha===undefined){return this._catmullRomUniform(data)}else{var p0,p1,p2,p3,bp1,bp2,d1,d2,d3,A,B,N,M;var d3powA,d2powA,d3pow2A,d2pow2A,d1pow2A,d1powA;var d=[];d.push([Math.round(data[0].screen_x),Math.round(data[0].screen_y)]);var length=data.length;for(var i=0;i<length-1;i++){p0=i==0?data[0]:data[i-1];p1=data[i];p2=data[i+1];p3=i+2<length?data[i+2]:p2;d1=Math.sqrt(Math.pow(p0.screen_x-p1.screen_x,2)+Math.pow(p0.screen_y-p1.screen_y,2));d2=Math.sqrt(Math.pow(p1.screen_x-p2.screen_x,2)+Math.pow(p1.screen_y-p2.screen_y,2));d3=Math.sqrt(Math.pow(p2.screen_x-p3.screen_x,2)+Math.pow(p2.screen_y-p3.screen_y,2));d3powA=Math.pow(d3,alpha);d3pow2A=Math.pow(d3,2*alpha);d2powA=Math.pow(d2,alpha);d2pow2A=Math.pow(d2,2*alpha);d1powA=Math.pow(d1,alpha);d1pow2A=Math.pow(d1,2*alpha);A=2*d1pow2A+3*d1powA*d2powA+d2pow2A;B=2*d3pow2A+3*d3powA*d2powA+d2pow2A;N=3*d1powA*(d1powA+d2powA);if(N>0){N=1/N}M=3*d3powA*(d3powA+d2powA);if(M>0){M=1/M}bp1={screen_x:(-d2pow2A*p0.screen_x+A*p1.screen_x+d1pow2A*p2.screen_x)*N,screen_y:(-d2pow2A*p0.screen_y+A*p1.screen_y+d1pow2A*p2.screen_y)*N};bp2={screen_x:(d3pow2A*p1.screen_x+B*p2.screen_x-d2pow2A*p3.screen_x)*M,screen_y:(d3pow2A*p1.screen_y+B*p2.screen_y-d2pow2A*p3.screen_y)*M};if(bp1.screen_x==0&&bp1.screen_y==0){bp1=p1}if(bp2.screen_x==0&&bp2.screen_y==0){bp2=p2}d.push([bp1.screen_x,bp1.screen_y]);d.push([bp2.screen_x,bp2.screen_y]);d.push([p2.screen_x,p2.screen_y])}return d}};Line._linear=function(data){var d=[];for(var i=0;i<data.length;i++){d.push([data[i].screen_x,data[i].screen_y])}return d};module.exports=Line},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var Component=__webpack_require__(16);function Legend(body,options,side,linegraphOptions){this.body=body;this.defaultOptions={enabled:false,icons:true,iconSize:20,iconSpacing:6,left:{visible:true,position:\"top-left\"},right:{visible:true,position:\"top-right\"}};this.side=side;this.options=util.extend({},this.defaultOptions);this.linegraphOptions=linegraphOptions;this.svgElements={};this.dom={};this.groups={};this.amountOfGroups=0;this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};this.setOptions(options)}Legend.prototype=new Component;Legend.prototype.clear=function(){this.groups={};this.amountOfGroups=0};Legend.prototype.addGroup=function(label,graphOptions){if(graphOptions.options.excludeFromLegend!=true){if(!this.groups.hasOwnProperty(label)){this.groups[label]=graphOptions}this.amountOfGroups+=1}};Legend.prototype.updateGroup=function(label,graphOptions){this.groups[label]=graphOptions};Legend.prototype.removeGroup=function(label){if(this.groups.hasOwnProperty(label)){delete this.groups[label];this.amountOfGroups-=1}};Legend.prototype._create=function(){this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-legend\";this.dom.frame.style.position=\"absolute\";this.dom.frame.style.top=\"10px\";this.dom.frame.style.display=\"block\";this.dom.textArea=document.createElement(\"div\");this.dom.textArea.className=\"vis-legend-text\";this.dom.textArea.style.position=\"relative\";this.dom.textArea.style.top=\"0px\";this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"absolute\";this.svg.style.top=0+\"px\";this.svg.style.width=this.options.iconSize+5+\"px\";this.svg.style.height=\"100%\";this.dom.frame.appendChild(this.svg);this.dom.frame.appendChild(this.dom.textArea)};Legend.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}};Legend.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}};Legend.prototype.setOptions=function(options){var fields=[\"enabled\",\"orientation\",\"icons\",\"left\",\"right\"];util.selectiveDeepExtend(fields,this.options,options)};Legend.prototype.redraw=function(){var activeGroups=0;var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){activeGroups++}}if(this.options[this.side].visible==false||this.amountOfGroups==0||this.options.enabled==false||activeGroups==0){this.hide()}else{this.show();if(this.options[this.side].position==\"top-left\"||this.options[this.side].position==\"bottom-left\"){this.dom.frame.style.left=\"4px\";this.dom.frame.style.textAlign=\"left\";this.dom.textArea.style.textAlign=\"left\";this.dom.textArea.style.left=this.options.iconSize+15+\"px\";this.dom.textArea.style.right=\"\";this.svg.style.left=0+\"px\";this.svg.style.right=\"\"}else{this.dom.frame.style.right=\"4px\";this.dom.frame.style.textAlign=\"right\";this.dom.textArea.style.textAlign=\"right\";this.dom.textArea.style.right=this.options.iconSize+15+\"px\";this.dom.textArea.style.left=\"\";this.svg.style.right=0+\"px\";this.svg.style.left=\"\"}if(this.options[this.side].position==\"top-left\"||this.options[this.side].position==\"top-right\"){this.dom.frame.style.top=4-Number(this.body.dom.center.style.top.replace(\"px\",\"\"))+\"px\";this.dom.frame.style.bottom=\"\"}else{var scrollableHeight=this.body.domProps.center.height-this.body.domProps.centerContainer.height;this.dom.frame.style.bottom=4+scrollableHeight+Number(this.body.dom.center.style.top.replace(\"px\",\"\"))+\"px\";this.dom.frame.style.top=\"\"}if(this.options.icons==false){this.dom.frame.style.width=this.dom.textArea.offsetWidth+10+\"px\";this.dom.textArea.style.right=\"\";this.dom.textArea.style.left=\"\";this.svg.style.width=\"0px\"}else{this.dom.frame.style.width=this.options.iconSize+15+this.dom.textArea.offsetWidth+10+\"px\";this.drawLegendIcons()}var content=\"\";for(i=0;i<groupArray.length;i++){groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){content+=this.groups[groupId].content+\"<br />\"}}this.dom.textArea.innerHTML=content;this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+\"px\"}};Legend.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});DOMutil.resetElements(this.svgElements);var padding=window.getComputedStyle(this.dom.frame).paddingTop;var iconOffset=Number(padding.replace(\"px\",\"\"));var x=iconOffset;var iconWidth=this.options.iconSize;var iconHeight=.75*this.options.iconSize;var y=iconOffset+.5*iconHeight+3;this.svg.style.width=iconWidth+5+iconOffset+\"px\";for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){this.groups[groupId].getLegend(iconWidth,iconHeight,this.framework,x,y);y+=iconHeight+this.options.iconSpacing}}}};module.exports=Legend},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var date=\"date\";var object=\"object\";var dom=\"dom\";var moment=\"moment\";var any=\"any\";var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,function:\"function\"},container:{dom:dom},__type__:{object:object,boolean:bool,function:\"function\"}},yAxisOrientation:{string:[\"left\",\"right\"]},defaultGroup:{string:string},sort:{boolean:bool},sampling:{boolean:bool},stack:{boolean:bool},graphHeight:{string:string,number:number},shaded:{enabled:{boolean:bool},orientation:{string:[\"bottom\",\"top\",\"zero\",\"group\"]},groupId:{object:object},__type__:{boolean:bool,object:object}},style:{string:[\"line\",\"bar\",\"points\"]},barChart:{width:{number:number},minWidth:{number:number},sideBySide:{boolean:bool},align:{string:[\"left\",\"center\",\"right\"]},__type__:{object:object}},interpolation:{enabled:{boolean:bool},parametrization:{string:[\"centripetal\",\"chordal\",\"uniform\"]},alpha:{number:number},__type__:{object:object,boolean:bool}},drawPoints:{enabled:{boolean:bool},onRender:{function:\"function\"},size:{number:number},style:{string:[\"square\",\"circle\"]},__type__:{object:object,boolean:bool,function:\"function\"}},dataAxis:{showMinorLabels:{boolean:bool},showMajorLabels:{boolean:bool},icons:{boolean:bool},width:{string:string,number:number},visible:{boolean:bool},alignZeros:{boolean:bool},left:{range:{min:{\nnumber:number,undefined:\"undefined\"},max:{number:number,undefined:\"undefined\"},__type__:{object:object}},format:{function:\"function\"},title:{text:{string:string,number:number,undefined:\"undefined\"},style:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},right:{range:{min:{number:number,undefined:\"undefined\"},max:{number:number,undefined:\"undefined\"},__type__:{object:object}},format:{function:\"function\"},title:{text:{string:string,number:number,undefined:\"undefined\"},style:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},__type__:{object:object}},legend:{enabled:{boolean:bool},icons:{boolean:bool},left:{visible:{boolean:bool},position:{string:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},__type__:{object:object}},right:{visible:{boolean:bool},position:{string:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},__type__:{object:object}},__type__:{object:object,boolean:bool}},groups:{visibility:{any:any},__type__:{object:object}},autoResize:{boolean:bool},throttleRedraw:{number:number},clickToUse:{boolean:bool},end:{number:number,date:date,string:string,moment:moment},format:{minorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object}},majorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},moment:{function:\"function\"},height:{string:string,number:number},hiddenDates:{start:{date:date,number:number,string:string,moment:moment},end:{date:date,number:number,string:string,moment:moment},repeat:{string:string},__type__:{object:object,array:array}},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},max:{date:date,number:number,string:string,moment:moment},maxHeight:{number:number,string:string},maxMinorChars:{number:number},min:{date:date,number:number,string:string,moment:moment},minHeight:{number:number,string:string},moveable:{boolean:bool},multiselect:{boolean:bool},orientation:{string:string},showCurrentTime:{boolean:bool},showMajorLabels:{boolean:bool},showMinorLabels:{boolean:bool},start:{date:date,number:number,string:string,moment:moment},timeAxis:{scale:{string:string,undefined:\"undefined\"},step:{number:number,undefined:\"undefined\"},__type__:{object:object}},width:{string:string,number:number},zoomable:{boolean:bool},zoomKey:{string:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"]},zoomMax:{number:number},zoomMin:{number:number},zIndex:{number:number},__type__:{object:object}};var configureOptions={global:{sort:true,sampling:true,stack:false,shaded:{enabled:false,orientation:[\"zero\",\"top\",\"bottom\",\"group\"]},style:[\"line\",\"bar\",\"points\"],barChart:{width:[50,5,100,5],minWidth:[50,5,100,5],sideBySide:false,align:[\"left\",\"center\",\"right\"]},interpolation:{enabled:true,parametrization:[\"centripetal\",\"chordal\",\"uniform\"]},drawPoints:{enabled:true,size:[6,2,30,1],style:[\"square\",\"circle\"]},dataAxis:{showMinorLabels:true,showMajorLabels:true,icons:false,width:[40,0,200,1],visible:true,alignZeros:true,left:{title:{text:\"\",style:\"\"}},right:{title:{text:\"\",style:\"\"}}},legend:{enabled:false,icons:true,left:{visible:true,position:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},right:{visible:true,position:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]}},autoResize:true,clickToUse:false,end:\"\",format:{minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}},height:\"\",locale:\"\",max:\"\",maxHeight:\"\",maxMinorChars:[7,0,20,1],min:\"\",minHeight:\"\",moveable:true,orientation:[\"both\",\"bottom\",\"top\"],showCurrentTime:false,showMajorLabels:true,showMinorLabels:true,start:\"\",width:\"100%\",zoomable:true,zoomKey:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1],zIndex:0}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function parseDOT(data){dot=data;return parseGraph()}var NODE_ATTR_MAPPING={fontsize:\"font.size\",fontcolor:\"font.color\",labelfontcolor:\"font.color\",fontname:\"font.face\",color:[\"color.border\",\"color.background\"],fillcolor:\"color.background\",tooltip:\"title\",labeltooltip:\"title\"};var EDGE_ATTR_MAPPING=(0,_create2[\"default\"])(NODE_ATTR_MAPPING);EDGE_ATTR_MAPPING.color=\"color.color\";EDGE_ATTR_MAPPING.style=\"dashes\";var TOKENTYPE={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3};var DELIMITERS={\"{\":true,\"}\":true,\"[\":true,\"]\":true,\";\":true,\"=\":true,\",\":true,\"->\":true,\"--\":true};var dot=\"\";var index=0;var c=\"\";var token=\"\";var tokenType=TOKENTYPE.NULL;function first(){index=0;c=dot.charAt(0)}function next(){index++;c=dot.charAt(index)}function nextPreview(){return dot.charAt(index+1)}var regexAlphaNumeric=/[a-zA-Z_0-9.:#]/;function isAlphaNumeric(c){return regexAlphaNumeric.test(c)}function merge(a,b){if(!a){a={}}if(b){for(var name in b){if(b.hasOwnProperty(name)){a[name]=b[name]}}}return a}function setValue(obj,path,value){var keys=path.split(\".\");var o=obj;while(keys.length){var key=keys.shift();if(keys.length){if(!o[key]){o[key]={}}o=o[key]}else{o[key]=value}}}function addNode(graph,node){var i,len;var current=null;var graphs=[graph];var root=graph;while(root.parent){graphs.push(root.parent);root=root.parent}if(root.nodes){for(i=0,len=root.nodes.length;i<len;i++){if(node.id===root.nodes[i].id){current=root.nodes[i];break}}}if(!current){current={id:node.id};if(graph.node){current.attr=merge(current.attr,graph.node)}}for(i=graphs.length-1;i>=0;i--){var g=graphs[i];if(!g.nodes){g.nodes=[]}if(g.nodes.indexOf(current)===-1){g.nodes.push(current)}}if(node.attr){current.attr=merge(current.attr,node.attr)}}function addEdge(graph,edge){if(!graph.edges){graph.edges=[]}graph.edges.push(edge);if(graph.edge){var attr=merge({},graph.edge);edge.attr=merge(attr,edge.attr)}}function createEdge(graph,from,to,type,attr){var edge={from:from,to:to,type:type};if(graph.edge){edge.attr=merge({},graph.edge)}edge.attr=merge(edge.attr||{},attr);return edge}function getToken(){tokenType=TOKENTYPE.NULL;token=\"\";while(c===\" \"||c===\"\\t\"||c===\"\\n\"||c===\"\\r\"){next()}do{var isComment=false;if(c===\"#\"){var i=index-1;while(dot.charAt(i)===\" \"||dot.charAt(i)===\"\\t\"){i--}if(dot.charAt(i)===\"\\n\"||dot.charAt(i)===\"\"){while(c!=\"\"&&c!=\"\\n\"){next()}isComment=true}}if(c===\"/\"&&nextPreview()===\"/\"){while(c!=\"\"&&c!=\"\\n\"){next()}isComment=true}if(c===\"/\"&&nextPreview()===\"*\"){while(c!=\"\"){if(c===\"*\"&&nextPreview()===\"/\"){next();next();break}else{next()}}isComment=true}while(c===\" \"||c===\"\\t\"||c===\"\\n\"||c===\"\\r\"){next()}}while(isComment);if(c===\"\"){tokenType=TOKENTYPE.DELIMITER;return}var c2=c+nextPreview();if(DELIMITERS[c2]){tokenType=TOKENTYPE.DELIMITER;token=c2;next();next();return}if(DELIMITERS[c]){tokenType=TOKENTYPE.DELIMITER;token=c;next();return}if(isAlphaNumeric(c)||c===\"-\"){token+=c;next();while(isAlphaNumeric(c)){token+=c;next()}if(token===\"false\"){token=false}else if(token===\"true\"){token=true}else if(!isNaN(Number(token))){token=Number(token)}tokenType=TOKENTYPE.IDENTIFIER;return}if(c==='\"'){next();while(c!=\"\"&&(c!='\"'||c==='\"'&&nextPreview()==='\"')){if(c==='\"'){token+=c;next()}else if(c===\"\\\\\"&&nextPreview()===\"n\"){token+=\"\\n\";next()}else{token+=c}next()}if(c!='\"'){throw newSyntaxError('End of string \" expected')}next();tokenType=TOKENTYPE.IDENTIFIER;return}tokenType=TOKENTYPE.UNKNOWN;while(c!=\"\"){token+=c;next()}throw new SyntaxError('Syntax error in part \"'+chop(token,30)+'\"')}function parseGraph(){var graph={};first();getToken();if(token===\"strict\"){graph.strict=true;getToken()}if(token===\"graph\"||token===\"digraph\"){graph.type=token;getToken()}if(tokenType===TOKENTYPE.IDENTIFIER){graph.id=token;getToken()}if(token!=\"{\"){throw newSyntaxError(\"Angle bracket { expected\")}getToken();parseStatements(graph);if(token!=\"}\"){throw newSyntaxError(\"Angle bracket } expected\")}getToken();if(token!==\"\"){throw newSyntaxError(\"End of file expected\")}getToken();delete graph.node;delete graph.edge;delete graph.graph;return graph}function parseStatements(graph){while(token!==\"\"&&token!=\"}\"){parseStatement(graph);if(token===\";\"){getToken()}}}function parseStatement(graph){var subgraph=parseSubgraph(graph);if(subgraph){parseEdge(graph,subgraph);return}var attr=parseAttributeStatement(graph);if(attr){return}if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier expected\")}var id=token;getToken();if(token===\"=\"){getToken();if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier expected\")}graph[id]=token;getToken()}else{parseNodeStatement(graph,id)}}function parseSubgraph(graph){var subgraph=null;if(token===\"subgraph\"){subgraph={};subgraph.type=\"subgraph\";getToken();if(tokenType===TOKENTYPE.IDENTIFIER){subgraph.id=token;getToken()}}if(token===\"{\"){getToken();if(!subgraph){subgraph={}}subgraph.parent=graph;subgraph.node=graph.node;subgraph.edge=graph.edge;subgraph.graph=graph.graph;parseStatements(subgraph);if(token!=\"}\"){throw newSyntaxError(\"Angle bracket } expected\")}getToken();delete subgraph.node;delete subgraph.edge;delete subgraph.graph;delete subgraph.parent;if(!graph.subgraphs){graph.subgraphs=[]}graph.subgraphs.push(subgraph)}return subgraph}function parseAttributeStatement(graph){if(token===\"node\"){getToken();graph.node=parseAttributeList();return\"node\"}else if(token===\"edge\"){getToken();graph.edge=parseAttributeList();return\"edge\"}else if(token===\"graph\"){getToken();graph.graph=parseAttributeList();return\"graph\"}return null}function parseNodeStatement(graph,id){var node={id:id};var attr=parseAttributeList();if(attr){node.attr=attr}addNode(graph,node);parseEdge(graph,id)}function parseEdge(graph,from){while(token===\"->\"||token===\"--\"){var to;var type=token;getToken();var subgraph=parseSubgraph(graph);if(subgraph){to=subgraph}else{if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier or subgraph expected\")}to=token;addNode(graph,{id:to});getToken()}var attr=parseAttributeList();var edge=createEdge(graph,from,to,type,attr);addEdge(graph,edge);from=to}}function parseAttributeList(){var attr=null;var edgeStyles={dashed:true,solid:false,dotted:[1,5]};while(token===\"[\"){getToken();attr={};while(token!==\"\"&&token!=\"]\"){if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Attribute name expected\")}var name=token;getToken();if(token!=\"=\"){throw newSyntaxError(\"Equal sign = expected\")}getToken();if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Attribute value expected\")}var value=token;if(name===\"style\"){value=edgeStyles[value]}setValue(attr,name,value);getToken();if(token==\",\"){getToken()}}if(token!=\"]\"){throw newSyntaxError(\"Bracket ] expected\")}getToken()}return attr}function newSyntaxError(message){return new SyntaxError(message+', got \"'+chop(token,30)+'\" (char '+index+\")\")}function chop(text,maxLength){return text.length<=maxLength?text:text.substr(0,27)+\"...\"}function forEach2(array1,array2,fn){if(Array.isArray(array1)){array1.forEach(function(elem1){if(Array.isArray(array2)){array2.forEach(function(elem2){fn(elem1,elem2)})}else{fn(elem1,array2)}})}else{if(Array.isArray(array2)){array2.forEach(function(elem2){fn(array1,elem2)})}else{fn(array1,array2)}}}function setProp(object,path,value){var names=path.split(\".\");var prop=names.pop();var obj=object;for(var i=0;i<names.length;i++){var name=names[i];if(!(name in obj)){obj[name]={}}obj=obj[name]}obj[prop]=value;return object}function convertAttr(attr,mapping){var converted={};for(var prop in attr){if(attr.hasOwnProperty(prop)){var visProp=mapping[prop];if(Array.isArray(visProp)){visProp.forEach(function(visPropI){setProp(converted,visPropI,attr[prop])})}else if(typeof visProp===\"string\"){setProp(converted,visProp,attr[prop])}else{setProp(converted,prop,attr[prop])}}}return converted}function DOTToGraph(data){var dotData=parseDOT(data);var graphData={nodes:[],edges:[],options:{}};if(dotData.nodes){dotData.nodes.forEach(function(dotNode){var graphNode={id:dotNode.id,label:String(dotNode.label||dotNode.id)};merge(graphNode,convertAttr(dotNode.attr,NODE_ATTR_MAPPING));if(graphNode.image){graphNode.shape=\"image\"}graphData.nodes.push(graphNode)})}if(dotData.edges){var convertEdge=function convertEdge(dotEdge){var graphEdge={from:dotEdge.from,to:dotEdge.to};merge(graphEdge,convertAttr(dotEdge.attr,EDGE_ATTR_MAPPING));graphEdge.arrows=dotEdge.type===\"->\"?\"to\":undefined;return graphEdge};dotData.edges.forEach(function(dotEdge){var from,to;if(dotEdge.from instanceof Object){from=dotEdge.from.nodes}else{from={id:dotEdge.from}}if(dotEdge.to instanceof Object){to=dotEdge.to.nodes}else{to={id:dotEdge.to}}if(dotEdge.from instanceof Object&&dotEdge.from.edges){dotEdge.from.edges.forEach(function(subEdge){var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)})}forEach2(from,to,function(from,to){var subEdge=createEdge(graphData,from.id,to.id,dotEdge.type,dotEdge.attr);var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)});if(dotEdge.to instanceof Object&&dotEdge.to.edges){dotEdge.to.edges.forEach(function(subEdge){var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)})}})}if(dotData.attr){graphData.options=dotData.attr}return graphData}exports.parseDOT=parseDOT;exports.DOTToGraph=DOTToGraph},function(module,exports,__webpack_require__){\"use strict\";function parseGephi(gephiJSON,optionsObj){var edges=[];var nodes=[];var options={edges:{inheritColor:false},nodes:{fixed:false,parseColor:false}};if(optionsObj!==undefined){if(optionsObj.fixed!==undefined){options.nodes.fixed=optionsObj.fixed}if(optionsObj.parseColor!==undefined){options.nodes.parseColor=optionsObj.parseColor}if(optionsObj.inheritColor!==undefined){options.edges.inheritColor=optionsObj.inheritColor}}var gEdges=gephiJSON.edges;var gNodes=gephiJSON.nodes;for(var i=0;i<gEdges.length;i++){var edge={};var gEdge=gEdges[i];edge[\"id\"]=gEdge.id;edge[\"from\"]=gEdge.source;edge[\"to\"]=gEdge.target;edge[\"attributes\"]=gEdge.attributes;edge[\"label\"]=gEdge.label;edge[\"title\"]=gEdge.attributes!==undefined?gEdge.attributes.title:undefined;if(gEdge[\"type\"]===\"Directed\"){edge[\"arrows\"]=\"to\"}if(gEdge.color&&options.inheritColor===false){edge[\"color\"]=gEdge.color}edges.push(edge)}for(var j=0;j<gNodes.length;j++){var node={};var gNode=gNodes[j];node[\"id\"]=gNode.id;node[\"attributes\"]=gNode.attributes;node[\"x\"]=gNode.x;node[\"y\"]=gNode.y;node[\"label\"]=gNode.label;node[\"title\"]=gNode.attributes!==undefined?gNode.attributes.title:gNode.title;if(options.nodes.parseColor===true){node[\"color\"]=gNode.color}else{node[\"color\"]=gNode.color!==undefined?{background:gNode.color,border:gNode.color,highlight:{background:gNode.color,border:gNode.color},hover:{background:gNode.color,border:gNode.color}}:undefined}node[\"size\"]=gNode.size;node[\"fixed\"]=options.nodes.fixed&&gNode.x!==undefined&&gNode.y!==undefined;nodes.push(node)}return{nodes:nodes,edges:edges}}exports.parseGephi=parseGephi},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _CachedImage=__webpack_require__(185);var _CachedImage2=_interopRequireDefault(_CachedImage);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Images=function(){function Images(callback){(0,_classCallCheck3[\"default\"])(this,Images);this.images={};this.imageBroken={};this.callback=callback}(0,_createClass3[\"default\"])(Images,[{key:\"_tryloadBrokenUrl\",value:function _tryloadBrokenUrl(url,brokenUrl,imageToLoadBrokenUrlOn){if(url===undefined||imageToLoadBrokenUrlOn===undefined)return;if(brokenUrl===undefined){console.warn(\"No broken url image defined\");return}imageToLoadBrokenUrlOn.onerror=function(){console.error(\"Could not load brokenImage:\",brokenUrl)};imageToLoadBrokenUrlOn.image.src=brokenUrl}},{key:\"_redrawWithImage\",value:function _redrawWithImage(imageToRedrawWith){if(this.callback){this.callback(imageToRedrawWith)}}},{key:\"load\",value:function load(url,brokenUrl){var _this=this;var cachedImage=this.images[url];if(cachedImage)return cachedImage;var img=new _CachedImage2[\"default\"];this.images[url]=img;img.image.onload=function(){_this._fixImageCoordinates(img.image);img.init();_this._redrawWithImage(img)};img.image.onerror=function(){console.error(\"Could not load image:\",url);_this._tryloadBrokenUrl(url,brokenUrl,img)};img.image.src=url;return img}},{key:\"_fixImageCoordinates\",value:function _fixImageCoordinates(imageToCache){if(imageToCache.width===0){document.body.appendChild(imageToCache);imageToCache.width=imageToCache.offsetWidth;imageToCache.height=imageToCache.offsetHeight;document.body.removeChild(imageToCache)}}}]);return Images}();exports[\"default\"]=Images},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ComponentUtil=__webpack_require__(48)[\"default\"];var LabelSplitter=__webpack_require__(191)[\"default\"];var multiFontStyle=[\"bold\",\"ital\",\"boldital\",\"mono\"];var Label=function(){function Label(body,options){var edgelabel=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;(0,_classCallCheck3[\"default\"])(this,Label);this.body=body;this.pointToSelf=false;this.baseSize=undefined;this.fontOptions={};this.setOptions(options);this.size={top:0,left:0,width:0,height:0,yLine:0};this.isEdgeLabel=edgelabel}(0,_createClass3[\"default\"])(Label,[{key:\"setOptions\",value:function setOptions(options){this.elementOptions=options;this.initFontOptions(options.font);if(ComponentUtil.isValidLabel(options.label)){this.labelDirty=true}else{options.label=\"\"}if(options.font!==undefined&&options.font!==null){if(typeof options.font===\"string\"){this.baseSize=this.fontOptions.size}else if((0,_typeof3[\"default\"])(options.font)===\"object\"){var size=options.font.size;if(size!==undefined){this.baseSize=size}}}}},{key:\"initFontOptions\",value:function initFontOptions(newFontOptions){var _this=this;util.forEach(multiFontStyle,function(style){_this.fontOptions[style]={}});if(Label.parseFontString(this.fontOptions,newFontOptions)){this.fontOptions.vadjust=0;return}util.forEach(newFontOptions,function(prop,n){if(prop!==undefined&&prop!==null&&(typeof prop===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(prop))!==\"object\"){_this.fontOptions[n]=prop}})}},{key:\"constrain\",value:function constrain(pile){var fontOptions={constrainWidth:false,maxWdt:-1,minWdt:-1,constrainHeight:false,minHgt:-1,valign:\"middle\"};var widthConstraint=util.topMost(pile,\"widthConstraint\");if(typeof widthConstraint===\"number\"){fontOptions.maxWdt=Number(widthConstraint);fontOptions.minWdt=Number(widthConstraint)}else if((typeof widthConstraint===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(widthConstraint))===\"object\"){var widthConstraintMaximum=util.topMost(pile,[\"widthConstraint\",\"maximum\"]);if(typeof widthConstraintMaximum===\"number\"){fontOptions.maxWdt=Number(widthConstraintMaximum)}var widthConstraintMinimum=util.topMost(pile,[\"widthConstraint\",\"minimum\"]);if(typeof widthConstraintMinimum===\"number\"){fontOptions.minWdt=Number(widthConstraintMinimum)}}var heightConstraint=util.topMost(pile,\"heightConstraint\");if(typeof heightConstraint===\"number\"){fontOptions.minHgt=Number(heightConstraint)}else if((typeof heightConstraint===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(heightConstraint))===\"object\"){var heightConstraintMinimum=util.topMost(pile,[\"heightConstraint\",\"minimum\"]);if(typeof heightConstraintMinimum===\"number\"){fontOptions.minHgt=Number(heightConstraintMinimum)}var heightConstraintValign=util.topMost(pile,[\"heightConstraint\",\"valign\"]);if(typeof heightConstraintValign===\"string\"){if(heightConstraintValign===\"top\"||heightConstraintValign===\"bottom\"){fontOptions.valign=heightConstraintValign}}}return fontOptions}},{key:\"update\",value:function update(options,pile){this.setOptions(options,true);this.propagateFonts(pile);util.deepExtend(this.fontOptions,this.constrain(pile));this.fontOptions.chooser=ComponentUtil.choosify(\"label\",pile)}},{key:\"adjustSizes\",value:function adjustSizes(margins){var widthBias=margins?margins.right+margins.left:0;if(this.fontOptions.constrainWidth){this.fontOptions.maxWdt-=widthBias;this.fontOptions.minWdt-=widthBias}var heightBias=margins?margins.top+margins.bottom:0;if(this.fontOptions.constrainHeight){this.fontOptions.minHgt-=heightBias}}},{key:\"addFontOptionsToPile\",value:function addFontOptionsToPile(dstPile,srcPile){for(var i=0;i<srcPile.length;++i){this.addFontToPile(dstPile,srcPile[i])}}},{key:\"addFontToPile\",value:function addFontToPile(pile,options){if(options===undefined)return;if(options.font===undefined||options.font===null)return;var item=options.font;pile.push(item)}},{key:\"getBasicOptions\",value:function getBasicOptions(pile){var ret={};for(var n=0;n<pile.length;++n){var fontOptions=pile[n];var tmpShorthand={};if(Label.parseFontString(tmpShorthand,fontOptions)){fontOptions=tmpShorthand}util.forEach(fontOptions,function(opt,name){if(opt===undefined)return;if(ret.hasOwnProperty(name))return;if(multiFontStyle.indexOf(name)!==-1){ret[name]={}}else{ret[name]=opt}})}return ret}},{key:\"getFontOption\",value:function getFontOption(pile,multiName,option){var multiFont=void 0;for(var n=0;n<pile.length;++n){var fontOptions=pile[n];if(fontOptions.hasOwnProperty(multiName)){multiFont=fontOptions[multiName];if(multiFont===undefined||multiFont===null)continue;var tmpShorthand={};if(Label.parseFontString(tmpShorthand,multiFont)){multiFont=tmpShorthand}if(multiFont.hasOwnProperty(option)){return multiFont[option]}}}if(this.fontOptions.hasOwnProperty(option)){return this.fontOptions[option]}throw new Error(\"Did not find value for multi-font for property: '\"+option+\"'\")}},{key:\"getFontOptions\",value:function getFontOptions(pile,multiName){var result={};var optionNames=[\"color\",\"size\",\"face\",\"mod\",\"vadjust\"];for(var i=0;i<optionNames.length;++i){var mod=optionNames[i];result[mod]=this.getFontOption(pile,multiName,mod)}return result}},{key:\"propagateFonts\",value:function propagateFonts(pile){var _this2=this;var fontPile=[];this.addFontOptionsToPile(fontPile,pile);this.fontOptions=this.getBasicOptions(fontPile);var _loop=function _loop(i){var mod=multiFontStyle[i];var modOptions=_this2.fontOptions[mod];var tmpMultiFontOptions=_this2.getFontOptions(fontPile,mod);util.forEach(tmpMultiFontOptions,function(option,n){modOptions[n]=option});modOptions.size=Number(modOptions.size);modOptions.vadjust=Number(modOptions.vadjust)};for(var i=0;i<multiFontStyle.length;++i){_loop(i)}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover){var baseline=arguments.length>5&&arguments[5]!==undefined?arguments[5]:\"middle\";if(this.elementOptions.label===undefined)return;var viewFontSize=this.fontOptions.size*this.body.view.scale;if(this.elementOptions.label&&viewFontSize<this.elementOptions.scaling.label.drawThreshold-1)return;if(viewFontSize>=this.elementOptions.scaling.label.maxVisible){viewFontSize=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale}this.calculateLabelSize(ctx,selected,hover,x,y,baseline);this._drawBackground(ctx);this._drawText(ctx,x,this.size.yLine,baseline,viewFontSize)}},{key:\"_drawBackground\",value:function _drawBackground(ctx){if(this.fontOptions.background!==undefined&&this.fontOptions.background!==\"none\"){ctx.fillStyle=this.fontOptions.background;var size=this.getSize();ctx.fillRect(size.left,size.top,size.width,size.height)}}},{key:\"_drawText\",value:function _drawText(ctx,x,y){var baseline=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\"middle\";var viewFontSize=arguments[4];var _setAlignment2=this._setAlignment(ctx,x,y,baseline);var _setAlignment3=(0,_slicedToArray3[\"default\"])(_setAlignment2,2);x=_setAlignment3[0];y=_setAlignment3[1];ctx.textAlign=\"left\";x=x-this.size.width/2;if(this.fontOptions.valign&&this.size.height>this.size.labelHeight){if(this.fontOptions.valign===\"top\"){y-=(this.size.height-this.size.labelHeight)/2}if(this.fontOptions.valign===\"bottom\"){y+=(this.size.height-this.size.labelHeight)/2}}for(var i=0;i<this.lineCount;i++){var line=this.lines[i];if(line&&line.blocks){var width=0;if(this.isEdgeLabel||this.fontOptions.align===\"center\"){width+=(this.size.width-line.width)/2}else if(this.fontOptions.align===\"right\"){width+=this.size.width-line.width}for(var j=0;j<line.blocks.length;j++){var block=line.blocks[j];ctx.font=block.font;var _getColor2=this._getColor(block.color,viewFontSize,block.strokeColor),_getColor3=(0,_slicedToArray3[\"default\"])(_getColor2,2),fontColor=_getColor3[0],strokeColor=_getColor3[1];if(block.strokeWidth>0){ctx.lineWidth=block.strokeWidth;ctx.strokeStyle=strokeColor;ctx.lineJoin=\"round\"}ctx.fillStyle=fontColor;if(block.strokeWidth>0){ctx.strokeText(block.text,x+width,y+block.vadjust)}ctx.fillText(block.text,x+width,y+block.vadjust);width+=block.width}y+=line.height}}}},{key:\"_setAlignment\",value:function _setAlignment(ctx,x,y,baseline){if(this.isEdgeLabel&&this.fontOptions.align!==\"horizontal\"&&this.pointToSelf===false){x=0;y=0;var lineMargin=2;if(this.fontOptions.align===\"top\"){ctx.textBaseline=\"alphabetic\";y-=2*lineMargin}else if(this.fontOptions.align===\"bottom\"){ctx.textBaseline=\"hanging\";y+=2*lineMargin}else{ctx.textBaseline=\"middle\"}}else{ctx.textBaseline=baseline}return[x,y]}},{key:\"_getColor\",value:function _getColor(color,viewFontSize,initialStrokeColor){var fontColor=color||\"#000000\";var strokeColor=initialStrokeColor||\"#ffffff\";if(viewFontSize<=this.elementOptions.scaling.label.drawThreshold){var opacity=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-viewFontSize)));fontColor=util.overrideOpacity(fontColor,opacity);strokeColor=util.overrideOpacity(strokeColor,opacity)}return[fontColor,strokeColor]}},{key:\"getTextSize\",value:function getTextSize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;this._processLabel(ctx,selected,hover);return{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}},{key:\"getSize\",value:function getSize(){var lineMargin=2;var x=this.size.left;var y=this.size.top-.5*lineMargin;if(this.isEdgeLabel){var x2=-this.size.width*.5;switch(this.fontOptions.align){case\"middle\":x=x2;y=-this.size.height*.5;break;case\"top\":x=x2;y=-(this.size.height+lineMargin);break;case\"bottom\":x=x2;y=lineMargin;break}}var ret={left:x,top:y,width:this.size.width,height:this.size.height};return ret}},{key:\"calculateLabelSize\",value:function calculateLabelSize(ctx,selected,hover){var x=arguments.length>3&&arguments[3]!==undefined?arguments[3]:0;var y=arguments.length>4&&arguments[4]!==undefined?arguments[4]:0;var baseline=arguments.length>5&&arguments[5]!==undefined?arguments[5]:\"middle\";this._processLabel(ctx,selected,hover);this.size.left=x-this.size.width*.5;this.size.top=y-this.size.height*.5;this.size.yLine=y+(1-this.lineCount)*.5*this.fontOptions.size;if(baseline===\"hanging\"){this.size.top+=.5*this.fontOptions.size;this.size.top+=4;this.size.yLine+=4}}},{key:\"getFormattingValues\",value:function getFormattingValues(ctx,selected,hover,mod){var getValue=function getValue(fontOptions,mod,option){if(mod===\"normal\"){if(option===\"mod\")return\"\";return fontOptions[option]}if(fontOptions[mod][option]!==undefined){return fontOptions[mod][option]}else{return fontOptions[option]}};var values={color:getValue(this.fontOptions,mod,\"color\"),size:getValue(this.fontOptions,mod,\"size\"),face:getValue(this.fontOptions,mod,\"face\"),mod:getValue(this.fontOptions,mod,\"mod\"),vadjust:getValue(this.fontOptions,mod,\"vadjust\"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};if(selected||hover){if(mod===\"normal\"&&this.fontOptions.chooser===true&&this.elementOptions.labelHighlightBold){values.mod=\"bold\"}else{if(typeof this.fontOptions.chooser===\"function\"){this.fontOptions.chooser(values,this.elementOptions.id,selected,hover)}}}var fontString=\"\";if(values.mod!==undefined&&values.mod!==\"\"){fontString+=values.mod+\" \"}fontString+=values.size+\"px \"+values.face;ctx.font=fontString.replace(/\"/g,\"\");values.font=ctx.font;values.height=values.size;return values}},{key:\"differentState\",value:function differentState(selected,hover){return selected!==this.selectedState||hover!==this.hoverState}},{key:\"_processLabelText\",value:function _processLabelText(ctx,selected,hover,inText){var splitter=new LabelSplitter(ctx,this,selected,hover);return splitter.process(inText)}},{key:\"_processLabel\",value:function _processLabel(ctx,selected,hover){if(this.labelDirty===false&&!this.differentState(selected,hover))return;var state=this._processLabelText(ctx,selected,hover,this.elementOptions.label);if(this.fontOptions.minWdt>0&&state.width<this.fontOptions.minWdt){state.width=this.fontOptions.minWdt}this.size.labelHeight=state.height;if(this.fontOptions.minHgt>0&&state.height<this.fontOptions.minHgt){state.height=this.fontOptions.minHgt}this.lines=state.lines;this.lineCount=state.lines.length;this.size.width=state.width;this.size.height=state.height;this.selectedState=selected;this.hoverState=hover;this.labelDirty=false}},{key:\"visible\",value:function visible(){if(this.size.width===0||this.size.height===0||this.elementOptions.label===undefined){return false}var viewFontSize=this.fontOptions.size*this.body.view.scale;if(viewFontSize<this.elementOptions.scaling.label.drawThreshold-1){return false}return true}}],[{key:\"parseFontString\",value:function parseFontString(outOptions,inOptions){if(!inOptions||typeof inOptions!==\"string\")return false;var newOptionsArray=inOptions.split(\" \");outOptions.size=newOptionsArray[0].replace(\"px\",\"\");outOptions.face=newOptionsArray[1];outOptions.color=newOptionsArray[2];return true}}]);return Label}();exports[\"default\"]=Label},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var EndPoints=__webpack_require__(119)[\"default\"];var EdgeBase=function(){function EdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,EdgeBase);this.body=body;this.labelModule=labelModule\n;this.options={};this.setOptions(options);this.colorDirty=true;this.color={};this.selectionWidth=2;this.hoverWidth=1.5;this.fromPoint=this.from;this.toPoint=this.to}(0,_createClass3[\"default\"])(EdgeBase,[{key:\"connect\",value:function connect(){this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to]}},{key:\"cleanup\",value:function cleanup(){return false}},{key:\"setOptions\",value:function setOptions(options){this.options=options;this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];this.id=this.options.id}},{key:\"drawLine\",value:function drawLine(ctx,values,selected,hover,viaNode){ctx.strokeStyle=this.getColor(ctx,values,selected,hover);ctx.lineWidth=values.width;if(values.dashes!==false){this._drawDashedLine(ctx,values,viaNode)}else{this._drawLine(ctx,values,viaNode)}}},{key:\"_drawLine\",value:function _drawLine(ctx,values,viaNode,fromPoint,toPoint){if(this.from!=this.to){this._line(ctx,values,viaNode,fromPoint,toPoint)}else{var _getCircleData2=this._getCircleData(ctx),_getCircleData3=(0,_slicedToArray3[\"default\"])(_getCircleData2,3),x=_getCircleData3[0],y=_getCircleData3[1],radius=_getCircleData3[2];this._circle(ctx,values,x,y,radius)}}},{key:\"_drawDashedLine\",value:function _drawDashedLine(ctx,values,viaNode,fromPoint,toPoint){ctx.lineCap=\"round\";var pattern=[5,5];if(Array.isArray(values.dashes)===true){pattern=values.dashes}if(ctx.setLineDash!==undefined){ctx.save();ctx.setLineDash(pattern);ctx.lineDashOffset=0;if(this.from!=this.to){this._line(ctx,values,viaNode)}else{var _getCircleData4=this._getCircleData(ctx),_getCircleData5=(0,_slicedToArray3[\"default\"])(_getCircleData4,3),x=_getCircleData5[0],y=_getCircleData5[1],radius=_getCircleData5[2];this._circle(ctx,values,x,y,radius)}ctx.setLineDash([0]);ctx.lineDashOffset=0;ctx.restore()}else{if(this.from!=this.to){ctx.dashedLine(this.from.x,this.from.y,this.to.x,this.to.y,pattern)}else{var _getCircleData6=this._getCircleData(ctx),_getCircleData7=(0,_slicedToArray3[\"default\"])(_getCircleData6,3),_x=_getCircleData7[0],_y=_getCircleData7[1],_radius=_getCircleData7[2];this._circle(ctx,values,_x,_y,_radius)}this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}}},{key:\"findBorderPosition\",value:function findBorderPosition(nearNode,ctx,options){if(this.from!=this.to){return this._findBorderPosition(nearNode,ctx,options)}else{return this._findBorderPositionCircle(nearNode,ctx,options)}}},{key:\"findBorderPositions\",value:function findBorderPositions(ctx){var from={};var to={};if(this.from!=this.to){from=this._findBorderPosition(this.from,ctx);to=this._findBorderPosition(this.to,ctx)}else{var _getCircleData$slice=this._getCircleData(ctx).slice(0,2),_getCircleData$slice2=(0,_slicedToArray3[\"default\"])(_getCircleData$slice,2),x=_getCircleData$slice2[0],y=_getCircleData$slice2[1];from=this._findBorderPositionCircle(this.from,ctx,{x:x,y:y,low:.25,high:.6,direction:-1});to=this._findBorderPositionCircle(this.from,ctx,{x:x,y:y,low:.6,high:.8,direction:1})}return{from:from,to:to}}},{key:\"_getCircleData\",value:function _getCircleData(ctx){var x=void 0,y=void 0;var node=this.from;var radius=this.options.selfReferenceSize;if(ctx!==undefined){if(node.shape.width===undefined){node.shape.resize(ctx)}}if(node.shape.width>node.shape.height){x=node.x+node.shape.width*.5;y=node.y-radius}else{x=node.x+radius;y=node.y-node.shape.height*.5}return[x,y,radius]}},{key:\"_pointOnCircle\",value:function _pointOnCircle(x,y,radius,percentage){var angle=percentage*2*Math.PI;return{x:x+radius*Math.cos(angle),y:y-radius*Math.sin(angle)}}},{key:\"_findBorderPositionCircle\",value:function _findBorderPositionCircle(node,ctx,options){var x=options.x;var y=options.y;var low=options.low;var high=options.high;var direction=options.direction;var maxIterations=10;var iteration=0;var radius=this.options.selfReferenceSize;var pos=void 0,angle=void 0,distanceToBorder=void 0,distanceToPoint=void 0,difference=void 0;var threshold=.05;var middle=(low+high)*.5;while(low<=high&&iteration<maxIterations){middle=(low+high)*.5;pos=this._pointOnCircle(x,y,radius,middle);angle=Math.atan2(node.y-pos.y,node.x-pos.x);distanceToBorder=node.distanceToBorder(ctx,angle);distanceToPoint=Math.sqrt(Math.pow(pos.x-node.x,2)+Math.pow(pos.y-node.y,2));difference=distanceToBorder-distanceToPoint;if(Math.abs(difference)<threshold){break}else if(difference>0){if(direction>0){low=middle}else{high=middle}}else{if(direction>0){high=middle}else{low=middle}}iteration++}pos.t=middle;return pos}},{key:\"getLineWidth\",value:function getLineWidth(selected,hover){if(selected===true){return Math.max(this.selectionWidth,.3/this.body.view.scale)}else{if(hover===true){return Math.max(this.hoverWidth,.3/this.body.view.scale)}else{return Math.max(this.options.width,.3/this.body.view.scale)}}}},{key:\"getColor\",value:function getColor(ctx,values,selected,hover){if(values.inheritsColor!==false){if(values.inheritsColor===\"both\"&&this.from.id!==this.to.id){var grd=ctx.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y);var fromColor=void 0,toColor=void 0;fromColor=this.from.options.color.highlight.border;toColor=this.to.options.color.highlight.border;if(this.from.selected===false&&this.to.selected===false){fromColor=util.overrideOpacity(this.from.options.color.border,values.opacity);toColor=util.overrideOpacity(this.to.options.color.border,values.opacity)}else if(this.from.selected===true&&this.to.selected===false){toColor=this.to.options.color.border}else if(this.from.selected===false&&this.to.selected===true){fromColor=this.from.options.color.border}grd.addColorStop(0,fromColor);grd.addColorStop(1,toColor);return grd}if(values.inheritsColor===\"to\"){return util.overrideOpacity(this.to.options.color.border,values.opacity)}else{return util.overrideOpacity(this.from.options.color.border,values.opacity)}}else{return util.overrideOpacity(values.color,values.opacity)}}},{key:\"_circle\",value:function _circle(ctx,values,x,y,radius){this.enableShadow(ctx,values);ctx.beginPath();ctx.arc(x,y,radius,0,2*Math.PI,false);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getDistanceToEdge\",value:function getDistanceToEdge(x1,y1,x2,y2,x3,y3,via,values){var returnValue=0;if(this.from!=this.to){returnValue=this._getDistanceToEdge(x1,y1,x2,y2,x3,y3,via)}else{var _getCircleData8=this._getCircleData(undefined),_getCircleData9=(0,_slicedToArray3[\"default\"])(_getCircleData8,3),x=_getCircleData9[0],y=_getCircleData9[1],radius=_getCircleData9[2];var dx=x-x3;var dy=y-y3;returnValue=Math.abs(Math.sqrt(dx*dx+dy*dy)-radius)}return returnValue}},{key:\"_getDistanceToLine\",value:function _getDistanceToLine(x1,y1,x2,y2,x3,y3){var px=x2-x1;var py=y2-y1;var something=px*px+py*py;var u=((x3-x1)*px+(y3-y1)*py)/something;if(u>1){u=1}else if(u<0){u=0}var x=x1+u*px;var y=y1+u*py;var dx=x-x3;var dy=y-y3;return Math.sqrt(dx*dx+dy*dy)}},{key:\"getArrowData\",value:function getArrowData(ctx,position,viaNode,selected,hover,values){var angle=void 0;var arrowPoint=void 0;var node1=void 0;var node2=void 0;var guideOffset=void 0;var scaleFactor=void 0;var type=void 0;var lineWidth=values.width;if(position===\"from\"){node1=this.from;node2=this.to;guideOffset=.1;scaleFactor=values.fromArrowScale;type=values.fromArrowType}else if(position===\"to\"){node1=this.to;node2=this.from;guideOffset=-.1;scaleFactor=values.toArrowScale;type=values.toArrowType}else{node1=this.to;node2=this.from;scaleFactor=values.middleArrowScale;type=values.middleArrowType}if(node1!=node2){if(position!==\"middle\"){if(this.options.smooth.enabled===true){arrowPoint=this.findBorderPosition(node1,ctx,{via:viaNode});var guidePos=this.getPoint(Math.max(0,Math.min(1,arrowPoint.t+guideOffset)),viaNode);angle=Math.atan2(arrowPoint.y-guidePos.y,arrowPoint.x-guidePos.x)}else{angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);arrowPoint=this.findBorderPosition(node1,ctx)}}else{angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);arrowPoint=this.getPoint(.5,viaNode)}}else{var _getCircleData10=this._getCircleData(ctx),_getCircleData11=(0,_slicedToArray3[\"default\"])(_getCircleData10,3),x=_getCircleData11[0],y=_getCircleData11[1],radius=_getCircleData11[2];if(position===\"from\"){arrowPoint=this.findBorderPosition(this.from,ctx,{x:x,y:y,low:.25,high:.6,direction:-1});angle=arrowPoint.t*-2*Math.PI+1.5*Math.PI+.1*Math.PI}else if(position===\"to\"){arrowPoint=this.findBorderPosition(this.from,ctx,{x:x,y:y,low:.6,high:1,direction:1});angle=arrowPoint.t*-2*Math.PI+1.5*Math.PI-1.1*Math.PI}else{arrowPoint=this._pointOnCircle(x,y,radius,.175);angle=3.9269908169872414}}if(position===\"middle\"&&scaleFactor<0)lineWidth*=-1;var length=15*scaleFactor+3*lineWidth;var xi=arrowPoint.x-length*.9*Math.cos(angle);var yi=arrowPoint.y-length*.9*Math.sin(angle);var arrowCore={x:xi,y:yi};return{point:arrowPoint,core:arrowCore,angle:angle,length:length,type:type}}},{key:\"drawArrowHead\",value:function drawArrowHead(ctx,values,selected,hover,arrowData){ctx.strokeStyle=this.getColor(ctx,values,selected,hover);ctx.fillStyle=ctx.strokeStyle;ctx.lineWidth=values.width;EndPoints.draw(ctx,arrowData);this.enableShadow(ctx,values);ctx.fill();this.disableShadow(ctx,values)}},{key:\"enableShadow\",value:function enableShadow(ctx,values){if(values.shadow===true){ctx.shadowColor=values.shadowColor;ctx.shadowBlur=values.shadowSize;ctx.shadowOffsetX=values.shadowX;ctx.shadowOffsetY=values.shadowY}}},{key:\"disableShadow\",value:function disableShadow(ctx,values){if(values.shadow===true){ctx.shadowColor=\"rgba(0,0,0,0)\";ctx.shadowBlur=0;ctx.shadowOffsetX=0;ctx.shadowOffsetY=0}}}]);return EdgeBase}();exports[\"default\"]=EdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var EndPoint=function(){function EndPoint(){(0,_classCallCheck3[\"default\"])(this,EndPoint)}(0,_createClass3[\"default\"])(EndPoint,null,[{key:\"transform\",value:function transform(points,arrowData){if(!(points instanceof Array)){points=[points]}var x=arrowData.point.x;var y=arrowData.point.y;var angle=arrowData.angle;var length=arrowData.length;for(var i=0;i<points.length;++i){var p=points[i];var xt=p.x*Math.cos(angle)-p.y*Math.sin(angle);var yt=p.x*Math.sin(angle)+p.y*Math.cos(angle);p.x=x+length*xt;p.y=y+length*yt}}},{key:\"drawPath\",value:function drawPath(ctx,points){ctx.beginPath();ctx.moveTo(points[0].x,points[0].y);for(var i=1;i<points.length;++i){ctx.lineTo(points[i].x,points[i].y)}ctx.closePath()}}]);return EndPoint}();var Arrow=function(_EndPoint){(0,_inherits3[\"default\"])(Arrow,_EndPoint);function Arrow(){(0,_classCallCheck3[\"default\"])(this,Arrow);return(0,_possibleConstructorReturn3[\"default\"])(this,(Arrow.__proto__||(0,_getPrototypeOf2[\"default\"])(Arrow)).apply(this,arguments))}(0,_createClass3[\"default\"])(Arrow,null,[{key:\"draw\",value:function draw(ctx,arrowData){var points=[{x:0,y:0},{x:-1,y:.3},{x:-.9,y:0},{x:-1,y:-.3}];EndPoint.transform(points,arrowData);EndPoint.drawPath(ctx,points)}}]);return Arrow}(EndPoint);var Circle=function(){function Circle(){(0,_classCallCheck3[\"default\"])(this,Circle)}(0,_createClass3[\"default\"])(Circle,null,[{key:\"draw\",value:function draw(ctx,arrowData){var point={x:-.4,y:0};EndPoint.transform(point,arrowData);ctx.circle(point.x,point.y,arrowData.length*.4)}}]);return Circle}();var Bar=function(){function Bar(){(0,_classCallCheck3[\"default\"])(this,Bar)}(0,_createClass3[\"default\"])(Bar,null,[{key:\"draw\",value:function draw(ctx,arrowData){var points=[{x:0,y:.5},{x:0,y:-.5},{x:-.15,y:-.5},{x:-.15,y:.5}];EndPoint.transform(points,arrowData);EndPoint.drawPath(ctx,points)}}]);return Bar}();var EndPoints=function(){function EndPoints(){(0,_classCallCheck3[\"default\"])(this,EndPoints)}(0,_createClass3[\"default\"])(EndPoints,null,[{key:\"draw\",value:function draw(ctx,arrowData){var type;if(arrowData.type){type=arrowData.type.toLowerCase()}switch(type){case\"circle\":Circle.draw(ctx,arrowData);break;case\"bar\":Bar.draw(ctx,arrowData);break;case\"arrow\":default:Arrow.draw(ctx,arrowData)}}}]);return EndPoints}();exports[\"default\"]=EndPoints},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BarnesHutSolver=function(){function BarnesHutSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,BarnesHutSolver);this.body=body;this.physicsBody=physicsBody;this.barnesHutTree;this.setOptions(options);this.randomSeed=5}(0,_createClass3[\"default\"])(BarnesHutSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options;this.thetaInversed=1/this.options.theta;this.overlapAvoidanceFactor=1-Math.max(0,Math.min(1,this.options.avoidOverlap))}},{key:\"seededRandom\",value:function seededRandom(){var x=Math.sin(this.randomSeed++)*1e4;return x-Math.floor(x)}},{key:\"solve\",value:function solve(){if(this.options.gravitationalConstant!==0&&this.physicsBody.physicsNodeIndices.length>0){var node=void 0;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var nodeCount=nodeIndices.length;var barnesHutTree=this._formBarnesHutTree(nodes,nodeIndices);this.barnesHutTree=barnesHutTree;for(var i=0;i<nodeCount;i++){node=nodes[nodeIndices[i]];if(node.options.mass>0){this._getForceContributions(barnesHutTree.root,node)}}}}},{key:\"_getForceContributions\",value:function _getForceContributions(parentBranch,node){this._getForceContribution(parentBranch.children.NW,node);this._getForceContribution(parentBranch.children.NE,node);this._getForceContribution(parentBranch.children.SW,node);this._getForceContribution(parentBranch.children.SE,node)}},{key:\"_getForceContribution\",value:function _getForceContribution(parentBranch,node){if(parentBranch.childrenCount>0){var dx=void 0,dy=void 0,distance=void 0;dx=parentBranch.centerOfMass.x-node.x;dy=parentBranch.centerOfMass.y-node.y;distance=Math.sqrt(dx*dx+dy*dy);if(distance*parentBranch.calcSize>this.thetaInversed){this._calculateForces(distance,dx,dy,node,parentBranch)}else{if(parentBranch.childrenCount===4){this._getForceContributions(parentBranch,node)}else{if(parentBranch.children.data.id!=node.id){this._calculateForces(distance,dx,dy,node,parentBranch)}}}}}},{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,node,parentBranch){if(distance===0){distance=.1;dx=distance}if(this.overlapAvoidanceFactor<1&&node.shape.radius){distance=Math.max(.1+this.overlapAvoidanceFactor*node.shape.radius,distance-node.shape.radius)}var gravityForce=this.options.gravitationalConstant*parentBranch.mass*node.options.mass/Math.pow(distance,3);var fx=dx*gravityForce;var fy=dy*gravityForce;this.physicsBody.forces[node.id].x+=fx;this.physicsBody.forces[node.id].y+=fy}},{key:\"_formBarnesHutTree\",value:function _formBarnesHutTree(nodes,nodeIndices){var node=void 0;var nodeCount=nodeIndices.length;var minX=nodes[nodeIndices[0]].x;var minY=nodes[nodeIndices[0]].y;var maxX=nodes[nodeIndices[0]].x;var maxY=nodes[nodeIndices[0]].y;for(var i=1;i<nodeCount;i++){var _node=nodes[nodeIndices[i]];var x=_node.x;var y=_node.y;if(_node.options.mass>0){if(x<minX){minX=x}if(x>maxX){maxX=x}if(y<minY){minY=y}if(y>maxY){maxY=y}}}var sizeDiff=Math.abs(maxX-minX)-Math.abs(maxY-minY);if(sizeDiff>0){minY-=.5*sizeDiff;maxY+=.5*sizeDiff}else{minX+=.5*sizeDiff;maxX-=.5*sizeDiff}var minimumTreeSize=1e-5;var rootSize=Math.max(minimumTreeSize,Math.abs(maxX-minX));var halfRootSize=.5*rootSize;var centerX=.5*(minX+maxX),centerY=.5*(minY+maxY);var barnesHutTree={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:centerX-halfRootSize,maxX:centerX+halfRootSize,minY:centerY-halfRootSize,maxY:centerY+halfRootSize},size:rootSize,calcSize:1/rootSize,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(barnesHutTree.root);for(var _i=0;_i<nodeCount;_i++){node=nodes[nodeIndices[_i]];if(node.options.mass>0){this._placeInTree(barnesHutTree.root,node)}}return barnesHutTree}},{key:\"_updateBranchMass\",value:function _updateBranchMass(parentBranch,node){var centerOfMass=parentBranch.centerOfMass;var totalMass=parentBranch.mass+node.options.mass;var totalMassInv=1/totalMass;centerOfMass.x=centerOfMass.x*parentBranch.mass+node.x*node.options.mass;centerOfMass.x*=totalMassInv;centerOfMass.y=centerOfMass.y*parentBranch.mass+node.y*node.options.mass;centerOfMass.y*=totalMassInv;parentBranch.mass=totalMass;var biggestSize=Math.max(Math.max(node.height,node.radius),node.width);parentBranch.maxWidth=parentBranch.maxWidth<biggestSize?biggestSize:parentBranch.maxWidth}},{key:\"_placeInTree\",value:function _placeInTree(parentBranch,node,skipMassUpdate){if(skipMassUpdate!=true||skipMassUpdate===undefined){this._updateBranchMass(parentBranch,node)}var range=parentBranch.children.NW.range;var region=void 0;if(range.maxX>node.x){if(range.maxY>node.y){region=\"NW\"}else{region=\"SW\"}}else{if(range.maxY>node.y){region=\"NE\"}else{region=\"SE\"}}this._placeInRegion(parentBranch,node,region)}},{key:\"_placeInRegion\",value:function _placeInRegion(parentBranch,node,region){var children=parentBranch.children[region];switch(children.childrenCount){case 0:children.children.data=node;children.childrenCount=1;this._updateBranchMass(children,node);break;case 1:if(children.children.data.x===node.x&&children.children.data.y===node.y){node.x+=this.seededRandom();node.y+=this.seededRandom()}else{this._splitBranch(children);this._placeInTree(children,node)}break;case 4:this._placeInTree(children,node);break}}},{key:\"_splitBranch\",value:function _splitBranch(parentBranch){var containedNode=null;if(parentBranch.childrenCount===1){containedNode=parentBranch.children.data;parentBranch.mass=0;parentBranch.centerOfMass.x=0;parentBranch.centerOfMass.y=0}parentBranch.childrenCount=4;parentBranch.children.data=null;this._insertRegion(parentBranch,\"NW\");this._insertRegion(parentBranch,\"NE\");this._insertRegion(parentBranch,\"SW\");this._insertRegion(parentBranch,\"SE\");if(containedNode!=null){this._placeInTree(parentBranch,containedNode)}}},{key:\"_insertRegion\",value:function _insertRegion(parentBranch,region){var minX=void 0,maxX=void 0,minY=void 0,maxY=void 0;var childSize=.5*parentBranch.size;switch(region){case\"NW\":minX=parentBranch.range.minX;maxX=parentBranch.range.minX+childSize;minY=parentBranch.range.minY;maxY=parentBranch.range.minY+childSize;break;case\"NE\":minX=parentBranch.range.minX+childSize;maxX=parentBranch.range.maxX;minY=parentBranch.range.minY;maxY=parentBranch.range.minY+childSize;break;case\"SW\":minX=parentBranch.range.minX;maxX=parentBranch.range.minX+childSize;minY=parentBranch.range.minY+childSize;maxY=parentBranch.range.maxY;break;case\"SE\":minX=parentBranch.range.minX+childSize;maxX=parentBranch.range.maxX;minY=parentBranch.range.minY+childSize;maxY=parentBranch.range.maxY;break}parentBranch.children[region]={centerOfMass:{x:0,y:0},mass:0,range:{minX:minX,maxX:maxX,minY:minY,maxY:maxY},size:.5*parentBranch.size,calcSize:2*parentBranch.calcSize,children:{data:null},maxWidth:0,level:parentBranch.level+1,childrenCount:0}}},{key:\"_debug\",value:function _debug(ctx,color){if(this.barnesHutTree!==undefined){ctx.lineWidth=1;this._drawBranch(this.barnesHutTree.root,ctx,color)}}},{key:\"_drawBranch\",value:function _drawBranch(branch,ctx,color){if(color===undefined){color=\"#FF0000\"}if(branch.childrenCount===4){this._drawBranch(branch.children.NW,ctx);this._drawBranch(branch.children.NE,ctx);this._drawBranch(branch.children.SE,ctx);this._drawBranch(branch.children.SW,ctx)}ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(branch.range.minX,branch.range.minY);ctx.lineTo(branch.range.maxX,branch.range.minY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.maxX,branch.range.minY);ctx.lineTo(branch.range.maxX,branch.range.maxY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.maxX,branch.range.maxY);ctx.lineTo(branch.range.minX,branch.range.maxY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.minX,branch.range.maxY);ctx.lineTo(branch.range.minX,branch.range.minY);ctx.stroke()}}]);return BarnesHutSolver}();exports[\"default\"]=BarnesHutSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CentralGravitySolver=function(){function CentralGravitySolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,CentralGravitySolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(CentralGravitySolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx=void 0,dy=void 0,distance=void 0,node=void 0;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];node=nodes[nodeId];dx=-node.x;dy=-node.y;distance=Math.sqrt(dx*dx+dy*dy);this._calculateForces(distance,dx,dy,forces,node)}}},{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,forces,node){var gravityForce=distance===0?0:this.options.centralGravity/distance;forces[node.id].x=dx*gravityForce;forces[node.id].y=dy*gravityForce}}]);return CentralGravitySolver}();exports[\"default\"]=CentralGravitySolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var object=\"object\";var dom=\"dom\";var any=\"any\";var endPoints=[\"arrow\",\"circle\",\"bar\"];var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,string:string,array:array,function:\"function\"},container:{dom:dom},showButton:{boolean:bool},__type__:{object:object,boolean:bool,string:string,array:array,function:\"function\"}},edges:{arrows:{to:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},middle:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},from:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},__type__:{string:[\"from\",\"to\",\"middle\"],object:object}},arrowStrikethrough:{boolean:bool},chosen:{label:{boolean:bool,function:\"function\"},edge:{boolean:bool,function:\"function\"},__type__:{object:object,boolean:bool}},color:{color:{string:string},highlight:{string:string},hover:{string:string},inherit:{string:[\"from\",\"to\",\"both\"],boolean:bool},opacity:{number:number},__type__:{object:object,string:string}},dashes:{boolean:bool,array:array},font:{color:{string:string},size:{number:number},face:{string:string},background:{string:string},strokeWidth:{number:number},strokeColor:{string:string},align:{string:[\"horizontal\",\"top\",\"middle\",\"bottom\"]},vadjust:{number:number},multi:{boolean:bool,string:string},bold:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},boldital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},ital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},mono:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},__type__:{object:object,string:string}},hidden:{boolean:bool},hoverWidth:{function:\"function\",number:number},label:{string:string,undefined:\"undefined\"},labelHighlightBold:{boolean:bool},length:{number:number,undefined:\"undefined\"},physics:{boolean:bool},scaling:{min:{number:number},max:{number:number},label:{enabled:{boolean:bool},min:{number:number},max:{number:number},maxVisible:{number:number},drawThreshold:{number:number},__type__:{object:object,boolean:bool}},customScalingFunction:{function:\"function\"},__type__:{object:object}},selectionWidth:{function:\"function\",number:number},selfReferenceSize:{number:number},shadow:{enabled:{boolean:bool},color:{string:string},size:{number:number},x:{number:number},y:{number:number},__type__:{object:object,boolean:bool}},smooth:{enabled:{boolean:bool},type:{string:[\"dynamic\",\"continuous\",\"discrete\",\"diagonalCross\",\"straightCross\",\"horizontal\",\"vertical\",\"curvedCW\",\"curvedCCW\",\"cubicBezier\"]},roundness:{number:number},forceDirection:{string:[\"horizontal\",\"vertical\",\"none\"],boolean:bool},__type__:{object:object,boolean:bool}},title:{string:string,undefined:\"undefined\"},width:{number:number},widthConstraint:{maximum:{number:number},__type__:{object:object,boolean:bool,number:number}},value:{number:number,undefined:\"undefined\"},__type__:{object:object}},groups:{useDefaultGroups:{boolean:bool},__any__:\"get from nodes, will be overwritten below\",__type__:{object:object}},interaction:{dragNodes:{boolean:bool},dragView:{boolean:bool},hideEdgesOnDrag:{boolean:bool},hideNodesOnDrag:{boolean:bool},hover:{boolean:bool},keyboard:{enabled:{boolean:bool},speed:{x:{number:number},y:{number:number},zoom:{number:number},__type__:{object:object}},bindToWindow:{boolean:bool},__type__:{object:object,boolean:bool}},multiselect:{boolean:bool},navigationButtons:{boolean:bool},selectable:{boolean:bool},selectConnectedEdges:{boolean:bool},hoverConnectedEdges:{boolean:bool},tooltipDelay:{number:number},zoomView:{boolean:bool},__type__:{object:object}},layout:{randomSeed:{undefined:\"undefined\",number:number},improvedLayout:{boolean:bool},hierarchical:{enabled:{boolean:bool},levelSeparation:{number:number},nodeSpacing:{number:number},treeSpacing:{number:number},blockShifting:{boolean:bool},edgeMinimization:{boolean:bool},parentCentralization:{boolean:bool},direction:{string:[\"UD\",\"DU\",\"LR\",\"RL\"]},sortMethod:{string:[\"hubsize\",\"directed\"]},__type__:{object:object,boolean:bool}},__type__:{object:object}},manipulation:{enabled:{boolean:bool},initiallyActive:{boolean:bool},addNode:{boolean:bool,function:\"function\"},addEdge:{boolean:bool,function:\"function\"},editNode:{function:\"function\"},editEdge:{editWithoutDrag:{function:\"function\"},__type__:{object:object,boolean:bool,function:\"function\"}},deleteNode:{boolean:bool,function:\"function\"},deleteEdge:{boolean:bool,function:\"function\"},controlNodeStyle:\"get from nodes, will be overwritten below\",__type__:{object:object,boolean:bool}},nodes:{borderWidth:{number:number},borderWidthSelected:{number:number,undefined:\"undefined\"},brokenImage:{string:string,undefined:\"undefined\"},chosen:{label:{boolean:bool,function:\"function\"},node:{boolean:bool,function:\"function\"},__type__:{object:object,boolean:bool}},color:{border:{string:string},background:{string:string},highlight:{border:{string:string},background:{string:string},__type__:{object:object,string:string}},hover:{border:{string:string},background:{string:string},__type__:{object:object,string:string}},__type__:{object:object,string:string}},fixed:{x:{boolean:bool},y:{boolean:bool},__type__:{object:object,boolean:bool}},font:{align:{string:string},color:{string:string},size:{number:number},face:{string:string},background:{string:string},strokeWidth:{number:number},strokeColor:{string:string},vadjust:{number:number},multi:{boolean:bool,string:string},bold:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},boldital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},ital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},mono:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},__type__:{object:object,string:string}},group:{string:string,number:number,undefined:\"undefined\"},heightConstraint:{minimum:{number:number},valign:{string:string},__type__:{object:object,boolean:bool,number:number}},hidden:{boolean:bool},icon:{face:{string:string},code:{string:string},size:{number:number},color:{string:string},__type__:{object:object}},id:{string:string,number:number},image:{selected:{string:string,undefined:\"undefined\"},unselected:{string:string,undefined:\"undefined\"},__type__:{object:object,string:string}},label:{string:string,undefined:\"undefined\"},labelHighlightBold:{boolean:bool},level:{number:number,undefined:\"undefined\"},margin:{top:{number:number},right:{number:number},bottom:{number:number},left:{number:number},__type__:{object:object,number:number}},mass:{number:number},physics:{boolean:bool},scaling:{min:{number:number},max:{number:number},label:{enabled:{boolean:bool},min:{number:number},max:{number:number},maxVisible:{number:number},drawThreshold:{number:number},__type__:{object:object,boolean:bool}},customScalingFunction:{function:\"function\"},__type__:{object:object}},shadow:{enabled:{boolean:bool},color:{string:string},size:{number:number},x:{number:number},y:{number:number},__type__:{object:object,boolean:bool}},shape:{string:[\"ellipse\",\"circle\",\"database\",\"box\",\"text\",\"image\",\"circularImage\",\"diamond\",\"dot\",\"star\",\"triangle\",\"triangleDown\",\"square\",\"icon\",\"hexagon\"]},shapeProperties:{borderDashes:{boolean:bool,array:array},borderRadius:{number:number},interpolation:{boolean:bool},useImageSize:{boolean:bool},useBorderWithImage:{boolean:bool},__type__:{object:object}},size:{number:number},title:{string:string,dom:dom,undefined:\"undefined\"},value:{number:number,undefined:\"undefined\"},widthConstraint:{minimum:{number:number},maximum:{number:number},__type__:{object:object,boolean:bool,number:number}},x:{number:number},y:{number:number},__type__:{object:object}},physics:{enabled:{boolean:bool},barnesHut:{gravitationalConstant:{number:number},centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},damping:{number:number},avoidOverlap:{number:number},__type__:{object:object}},forceAtlas2Based:{gravitationalConstant:{number:number},centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},damping:{number:number},avoidOverlap:{number:number},__type__:{object:object}},repulsion:{centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},nodeDistance:{number:number},damping:{number:number},__type__:{object:object}},hierarchicalRepulsion:{centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},nodeDistance:{number:number},damping:{number:number},__type__:{object:object}},maxVelocity:{number:number},minVelocity:{number:number},solver:{string:[\"barnesHut\",\"repulsion\",\"hierarchicalRepulsion\",\"forceAtlas2Based\"]},stabilization:{enabled:{boolean:bool},iterations:{number:number},updateInterval:{number:number},onlyDynamicEdges:{boolean:bool},\nfit:{boolean:bool},__type__:{object:object,boolean:bool}},timestep:{number:number},adaptiveTimestep:{boolean:bool},__type__:{object:object,boolean:bool}},autoResize:{boolean:bool},clickToUse:{boolean:bool},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},height:{string:string},width:{string:string},__type__:{object:object}};allOptions.groups.__any__=allOptions.nodes;allOptions.manipulation.controlNodeStyle=allOptions.nodes;var configureOptions={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#97C2FC\"],highlight:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#D2E5FF\"]},hover:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#D2E5FF\"]}},fixed:{x:false,y:false},font:{color:[\"color\",\"#343434\"],size:[14,0,100,1],face:[\"arial\",\"verdana\",\"tahoma\"],background:[\"color\",\"none\"],strokeWidth:[0,0,50,1],strokeColor:[\"color\",\"#ffffff\"]},hidden:false,labelHighlightBold:true,physics:true,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:false,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:[\"ellipse\",\"box\",\"circle\",\"database\",\"diamond\",\"dot\",\"square\",\"star\",\"text\",\"triangle\",\"triangleDown\",\"hexagon\"],shapeProperties:{borderDashes:false,borderRadius:[6,0,20,1],interpolation:true,useImageSize:false},size:[25,0,200,1]},edges:{arrows:{to:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"},middle:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"},from:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"}},arrowStrikethrough:true,color:{color:[\"color\",\"#848484\"],highlight:[\"color\",\"#848484\"],hover:[\"color\",\"#848484\"],inherit:[\"from\",\"to\",\"both\",true,false],opacity:[1,0,1,.05]},dashes:false,font:{color:[\"color\",\"#343434\"],size:[14,0,100,1],face:[\"arial\",\"verdana\",\"tahoma\"],background:[\"color\",\"none\"],strokeWidth:[2,0,50,1],strokeColor:[\"color\",\"#ffffff\"],align:[\"horizontal\",\"top\",\"middle\",\"bottom\"]},hidden:false,hoverWidth:[1.5,0,5,.1],labelHighlightBold:true,physics:true,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:true,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:true,type:[\"dynamic\",\"continuous\",\"discrete\",\"diagonalCross\",\"straightCross\",\"horizontal\",\"vertical\",\"curvedCW\",\"curvedCCW\",\"cubicBezier\"],forceDirection:[\"horizontal\",\"vertical\",\"none\"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:false,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:true,edgeMinimization:true,parentCentralization:true,direction:[\"UD\",\"DU\",\"LR\",\"RL\"],sortMethod:[\"hubsize\",\"directed\"]}},interaction:{dragNodes:true,dragView:true,hideEdgesOnDrag:false,hideNodesOnDrag:false,hover:false,keyboard:{enabled:false,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:true},multiselect:false,navigationButtons:false,selectable:true,selectConnectedEdges:true,hoverConnectedEdges:true,tooltipDelay:[300,0,1e3,25],zoomView:true},manipulation:{enabled:false,initiallyActive:false},physics:{enabled:true,barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:[\"barnesHut\",\"forceAtlas2Based\",\"repulsion\",\"hierarchicalRepulsion\"],timestep:[.5,.01,1,.01]}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);util.extend(exports,__webpack_require__(159));util.extend(exports,__webpack_require__(177));util.extend(exports,__webpack_require__(181))},function(module,exports,__webpack_require__){__webpack_require__(49);__webpack_require__(60);module.exports=__webpack_require__(136)},function(module,exports,__webpack_require__){\"use strict\";var addToUnscopables=__webpack_require__(126);var step=__webpack_require__(127);var Iterators=__webpack_require__(31);var toIObject=__webpack_require__(25);module.exports=__webpack_require__(79)(Array,\"Array\",function(iterated,kind){this._t=toIObject(iterated);this._i=0;this._k=kind},function(){var O=this._t;var kind=this._k;var index=this._i++;if(!O||index>=O.length){this._t=undefined;return step(1)}if(kind==\"keys\")return step(0,index);if(kind==\"values\")return step(0,O[index]);return step(0,[index,O[index]])},\"values\");Iterators.Arguments=Iterators.Array;addToUnscopables(\"keys\");addToUnscopables(\"values\");addToUnscopables(\"entries\")},function(module,exports){module.exports=function(){}},function(module,exports){module.exports=function(done,value){return{value:value,done:!!done}}},function(module,exports){module.exports=function(it){if(typeof it!=\"function\")throw TypeError(it+\" is not a function!\");return it}},function(module,exports,__webpack_require__){\"use strict\";var create=__webpack_require__(54);var descriptor=__webpack_require__(39);var setToStringTag=__webpack_require__(59);var IteratorPrototype={};__webpack_require__(26)(IteratorPrototype,__webpack_require__(13)(\"iterator\"),function(){return this});module.exports=function(Constructor,NAME,next){Constructor.prototype=create(IteratorPrototype,{next:descriptor(1,next)});setToStringTag(Constructor,NAME+\" Iterator\")}},function(module,exports,__webpack_require__){var dP=__webpack_require__(20);var anObject=__webpack_require__(27);var getKeys=__webpack_require__(33);module.exports=__webpack_require__(21)?Object.defineProperties:function defineProperties(O,Properties){anObject(O);var keys=getKeys(Properties);var length=keys.length;var i=0;var P;while(length>i)dP.f(O,P=keys[i++],Properties[P]);return O}},function(module,exports,__webpack_require__){var toIObject=__webpack_require__(25);var toLength=__webpack_require__(132);var toAbsoluteIndex=__webpack_require__(133);module.exports=function(IS_INCLUDES){return function($this,el,fromIndex){var O=toIObject($this);var length=toLength(O.length);var index=toAbsoluteIndex(fromIndex,length);var value;if(IS_INCLUDES&&el!=el)while(length>index){value=O[index++];if(value!=value)return true}else for(;length>index;index++)if(IS_INCLUDES||index in O){if(O[index]===el)return IS_INCLUDES||index||0}return!IS_INCLUDES&&-1}}},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var min=Math.min;module.exports=function(it){return it>0?min(toInteger(it),9007199254740991):0}},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var max=Math.max;var min=Math.min;module.exports=function(index,length){index=toInteger(index);return index<0?max(index+length,0):min(index,length)}},function(module,exports,__webpack_require__){var document=__webpack_require__(18).document;module.exports=document&&document.documentElement},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var defined=__webpack_require__(51);module.exports=function(TO_STRING){return function(that,pos){var s=String(defined(that));var i=toInteger(pos);var l=s.length;var a,b;if(i<0||i>=l)return TO_STRING?\"\":undefined;a=s.charCodeAt(i);return a<55296||a>56319||i+1===l||(b=s.charCodeAt(i+1))<56320||b>57343?TO_STRING?s.charAt(i):a:TO_STRING?s.slice(i,i+2):(a-55296<<10)+(b-56320)+65536}}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var get=__webpack_require__(137);module.exports=__webpack_require__(7).getIterator=function(it){var iterFn=get(it);if(typeof iterFn!=\"function\")throw TypeError(it+\" is not iterable!\");return anObject(iterFn.call(it))}},function(module,exports,__webpack_require__){var classof=__webpack_require__(86);var ITERATOR=__webpack_require__(13)(\"iterator\");var Iterators=__webpack_require__(31);module.exports=__webpack_require__(7).getIteratorMethod=function(it){if(it!=undefined)return it[ITERATOR]||it[\"@@iterator\"]||Iterators[classof(it)]}},function(module,exports,__webpack_require__){__webpack_require__(139);var $Object=__webpack_require__(7).Object;module.exports=function create(P,D){return $Object.create(P,D)}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Object\",{create:__webpack_require__(54)})},function(module,exports,__webpack_require__){__webpack_require__(141);module.exports=__webpack_require__(7).Object.keys},function(module,exports,__webpack_require__){var toObject=__webpack_require__(41);var $keys=__webpack_require__(33);__webpack_require__(87)(\"keys\",function(){return function keys(it){return $keys(toObject(it))}})},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(143),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(60);__webpack_require__(49);module.exports=__webpack_require__(61).f(\"iterator\")},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(145),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(146);__webpack_require__(151);__webpack_require__(152);__webpack_require__(153);module.exports=__webpack_require__(7).Symbol},function(module,exports,__webpack_require__){\"use strict\";var global=__webpack_require__(18);var has=__webpack_require__(22);var DESCRIPTORS=__webpack_require__(21);var $export=__webpack_require__(17);var redefine=__webpack_require__(83);var META=__webpack_require__(147).KEY;var $fails=__webpack_require__(28);var shared=__webpack_require__(57);var setToStringTag=__webpack_require__(59);var uid=__webpack_require__(40);var wks=__webpack_require__(13);var wksExt=__webpack_require__(61);var wksDefine=__webpack_require__(62);var enumKeys=__webpack_require__(148);var isArray=__webpack_require__(149);var anObject=__webpack_require__(27);var toIObject=__webpack_require__(25);var toPrimitive=__webpack_require__(53);var createDesc=__webpack_require__(39);var _create=__webpack_require__(54);var gOPNExt=__webpack_require__(150);var $GOPD=__webpack_require__(89);var $DP=__webpack_require__(20);var $keys=__webpack_require__(33);var gOPD=$GOPD.f;var dP=$DP.f;var gOPN=gOPNExt.f;var $Symbol=global.Symbol;var $JSON=global.JSON;var _stringify=$JSON&&$JSON.stringify;var PROTOTYPE=\"prototype\";var HIDDEN=wks(\"_hidden\");var TO_PRIMITIVE=wks(\"toPrimitive\");var isEnum={}.propertyIsEnumerable;var SymbolRegistry=shared(\"symbol-registry\");var AllSymbols=shared(\"symbols\");var OPSymbols=shared(\"op-symbols\");var ObjectProto=Object[PROTOTYPE];var USE_NATIVE=typeof $Symbol==\"function\";var QObject=global.QObject;var setter=!QObject||!QObject[PROTOTYPE]||!QObject[PROTOTYPE].findChild;var setSymbolDesc=DESCRIPTORS&&$fails(function(){return _create(dP({},\"a\",{get:function(){return dP(this,\"a\",{value:7}).a}})).a!=7})?function(it,key,D){var protoDesc=gOPD(ObjectProto,key);if(protoDesc)delete ObjectProto[key];dP(it,key,D);if(protoDesc&&it!==ObjectProto)dP(ObjectProto,key,protoDesc)}:dP;var wrap=function(tag){var sym=AllSymbols[tag]=_create($Symbol[PROTOTYPE]);sym._k=tag;return sym};var isSymbol=USE_NATIVE&&typeof $Symbol.iterator==\"symbol\"?function(it){return typeof it==\"symbol\"}:function(it){return it instanceof $Symbol};var $defineProperty=function defineProperty(it,key,D){if(it===ObjectProto)$defineProperty(OPSymbols,key,D);anObject(it);key=toPrimitive(key,true);anObject(D);if(has(AllSymbols,key)){if(!D.enumerable){if(!has(it,HIDDEN))dP(it,HIDDEN,createDesc(1,{}));it[HIDDEN][key]=true}else{if(has(it,HIDDEN)&&it[HIDDEN][key])it[HIDDEN][key]=false;D=_create(D,{enumerable:createDesc(0,false)})}return setSymbolDesc(it,key,D)}return dP(it,key,D)};var $defineProperties=function defineProperties(it,P){anObject(it);var keys=enumKeys(P=toIObject(P));var i=0;var l=keys.length;var key;while(l>i)$defineProperty(it,key=keys[i++],P[key]);return it};var $create=function create(it,P){return P===undefined?_create(it):$defineProperties(_create(it),P)};var $propertyIsEnumerable=function propertyIsEnumerable(key){var E=isEnum.call(this,key=toPrimitive(key,true));if(this===ObjectProto&&has(AllSymbols,key)&&!has(OPSymbols,key))return false;return E||!has(this,key)||!has(AllSymbols,key)||has(this,HIDDEN)&&this[HIDDEN][key]?E:true};var $getOwnPropertyDescriptor=function getOwnPropertyDescriptor(it,key){it=toIObject(it);key=toPrimitive(key,true);if(it===ObjectProto&&has(AllSymbols,key)&&!has(OPSymbols,key))return;var D=gOPD(it,key);if(D&&has(AllSymbols,key)&&!(has(it,HIDDEN)&&it[HIDDEN][key]))D.enumerable=true;return D};var $getOwnPropertyNames=function getOwnPropertyNames(it){var names=gOPN(toIObject(it));var result=[];var i=0;var key;while(names.length>i){if(!has(AllSymbols,key=names[i++])&&key!=HIDDEN&&key!=META)result.push(key)}return result};var $getOwnPropertySymbols=function getOwnPropertySymbols(it){var IS_OP=it===ObjectProto;var names=gOPN(IS_OP?OPSymbols:toIObject(it));var result=[];var i=0;var key;while(names.length>i){if(has(AllSymbols,key=names[i++])&&(IS_OP?has(ObjectProto,key):true))result.push(AllSymbols[key])}return result};if(!USE_NATIVE){$Symbol=function Symbol(){if(this instanceof $Symbol)throw TypeError(\"Symbol is not a constructor!\");var tag=uid(arguments.length>0?arguments[0]:undefined);var $set=function(value){if(this===ObjectProto)$set.call(OPSymbols,value);if(has(this,HIDDEN)&&has(this[HIDDEN],tag))this[HIDDEN][tag]=false;setSymbolDesc(this,tag,createDesc(1,value))};if(DESCRIPTORS&&setter)setSymbolDesc(ObjectProto,tag,{configurable:true,set:$set});return wrap(tag)};redefine($Symbol[PROTOTYPE],\"toString\",function toString(){return this._k});$GOPD.f=$getOwnPropertyDescriptor;$DP.f=$defineProperty;__webpack_require__(88).f=gOPNExt.f=$getOwnPropertyNames;__webpack_require__(42).f=$propertyIsEnumerable;__webpack_require__(63).f=$getOwnPropertySymbols;if(DESCRIPTORS&&!__webpack_require__(52)){redefine(ObjectProto,\"propertyIsEnumerable\",$propertyIsEnumerable,true)}wksExt.f=function(name){return wrap(wks(name))}}$export($export.G+$export.W+$export.F*!USE_NATIVE,{Symbol:$Symbol});for(var es6Symbols=\"hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables\".split(\",\"),j=0;es6Symbols.length>j;)wks(es6Symbols[j++]);for(var wellKnownSymbols=$keys(wks.store),k=0;wellKnownSymbols.length>k;)wksDefine(wellKnownSymbols[k++]);$export($export.S+$export.F*!USE_NATIVE,\"Symbol\",{for:function(key){return has(SymbolRegistry,key+=\"\")?SymbolRegistry[key]:SymbolRegistry[key]=$Symbol(key)},keyFor:function keyFor(sym){if(!isSymbol(sym))throw TypeError(sym+\" is not a symbol!\");for(var key in SymbolRegistry)if(SymbolRegistry[key]===sym)return key},useSetter:function(){setter=true},useSimple:function(){setter=false}});$export($export.S+$export.F*!USE_NATIVE,\"Object\",{create:$create,defineProperty:$defineProperty,defineProperties:$defineProperties,getOwnPropertyDescriptor:$getOwnPropertyDescriptor,getOwnPropertyNames:$getOwnPropertyNames,getOwnPropertySymbols:$getOwnPropertySymbols});$JSON&&$export($export.S+$export.F*(!USE_NATIVE||$fails(function(){var S=$Symbol();return _stringify([S])!=\"[null]\"||_stringify({a:S})!=\"{}\"||_stringify(Object(S))!=\"{}\"})),\"JSON\",{stringify:function stringify(it){if(it===undefined||isSymbol(it))return;var args=[it];var i=1;var replacer,$replacer;while(arguments.length>i)args.push(arguments[i++]);replacer=args[1];if(typeof replacer==\"function\")$replacer=replacer;if($replacer||!isArray(replacer))replacer=function(key,value){if($replacer)value=$replacer.call(this,key,value);if(!isSymbol(value))return value};args[1]=replacer;return _stringify.apply($JSON,args)}});$Symbol[PROTOTYPE][TO_PRIMITIVE]||__webpack_require__(26)($Symbol[PROTOTYPE],TO_PRIMITIVE,$Symbol[PROTOTYPE].valueOf);setToStringTag($Symbol,\"Symbol\");setToStringTag(Math,\"Math\",true);setToStringTag(global.JSON,\"JSON\",true)},function(module,exports,__webpack_require__){var META=__webpack_require__(40)(\"meta\");var isObject=__webpack_require__(32);var has=__webpack_require__(22);var setDesc=__webpack_require__(20).f;var id=0;var isExtensible=Object.isExtensible||function(){return true};var FREEZE=!__webpack_require__(28)(function(){return isExtensible(Object.preventExtensions({}))});var setMeta=function(it){setDesc(it,META,{value:{i:\"O\"+ ++id,w:{}}})};var fastKey=function(it,create){if(!isObject(it))return typeof it==\"symbol\"?it:(typeof it==\"string\"?\"S\":\"P\")+it;if(!has(it,META)){if(!isExtensible(it))return\"F\";if(!create)return\"E\";setMeta(it)}return it[META].i};var getWeak=function(it,create){if(!has(it,META)){if(!isExtensible(it))return true;if(!create)return false;setMeta(it)}return it[META].w};var onFreeze=function(it){if(FREEZE&&meta.NEED&&isExtensible(it)&&!has(it,META))setMeta(it);return it};var meta=module.exports={KEY:META,NEED:false,fastKey:fastKey,getWeak:getWeak,onFreeze:onFreeze}},function(module,exports,__webpack_require__){var getKeys=__webpack_require__(33);var gOPS=__webpack_require__(63);var pIE=__webpack_require__(42);module.exports=function(it){var result=getKeys(it);var getSymbols=gOPS.f;if(getSymbols){var symbols=getSymbols(it);var isEnum=pIE.f;var i=0;var key;while(symbols.length>i)if(isEnum.call(it,key=symbols[i++]))result.push(key)}return result}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);module.exports=Array.isArray||function isArray(arg){return cof(arg)==\"Array\"}},function(module,exports,__webpack_require__){var toIObject=__webpack_require__(25);var gOPN=__webpack_require__(88).f;var toString={}.toString;var windowNames=typeof window==\"object\"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];var getWindowNames=function(it){try{return gOPN(it)}catch(e){return windowNames.slice()}};module.exports.f=function getOwnPropertyNames(it){return windowNames&&toString.call(it)==\"[object Window]\"?getWindowNames(it):gOPN(toIObject(it))}},function(module,exports){},function(module,exports,__webpack_require__){__webpack_require__(62)(\"asyncIterator\")},function(module,exports,__webpack_require__){__webpack_require__(62)(\"observable\")},function(module,exports,__webpack_require__){(function(module){var require;(function(global,factory){true?module.exports=factory():typeof define===\"function\"&&define.amd?define(factory):global.moment=factory()})(this,function(){\"use strict\";var hookCallback;function hooks(){return hookCallback.apply(null,arguments)}function setHookCallback(callback){hookCallback=callback}function isArray(input){return input instanceof Array||Object.prototype.toString.call(input)===\"[object Array]\"}function isObject(input){return input!=null&&Object.prototype.toString.call(input)===\"[object Object]\"}function isObjectEmpty(obj){if(Object.getOwnPropertyNames){return Object.getOwnPropertyNames(obj).length===0}else{var k;for(k in obj){if(obj.hasOwnProperty(k)){return false}}return true}}function isUndefined(input){return input===void 0}function isNumber(input){return typeof input===\"number\"||Object.prototype.toString.call(input)===\"[object Number]\"}function isDate(input){return input instanceof Date||Object.prototype.toString.call(input)===\"[object Date]\"}function map(arr,fn){var res=[],i;for(i=0;i<arr.length;++i){res.push(fn(arr[i],i))}return res}function hasOwnProp(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function extend(a,b){for(var i in b){if(hasOwnProp(b,i)){a[i]=b[i]}}if(hasOwnProp(b,\"toString\")){a.toString=b.toString}if(hasOwnProp(b,\"valueOf\")){a.valueOf=b.valueOf}return a}function createUTC(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,true).utc()}function defaultParsingFlags(){return{empty:false,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:false,invalidMonth:null,invalidFormat:false,userInvalidated:false,iso:false,parsedDateParts:[],meridiem:null,rfc2822:false,weekdayMismatch:false}}function getParsingFlags(m){if(m._pf==null){m._pf=defaultParsingFlags()}return m._pf}var some;if(Array.prototype.some){some=Array.prototype.some}else{some=function(fun){var t=Object(this);var len=t.length>>>0;for(var i=0;i<len;i++){if(i in t&&fun.call(this,t[i],i,t)){return true}}return false}}function isValid(m){if(m._isValid==null){var flags=getParsingFlags(m);var parsedParts=some.call(flags.parsedDateParts,function(i){return i!=null});var isNowValid=!isNaN(m._d.getTime())&&flags.overflow<0&&!flags.empty&&!flags.invalidMonth&&!flags.invalidWeekday&&!flags.weekdayMismatch&&!flags.nullInput&&!flags.invalidFormat&&!flags.userInvalidated&&(!flags.meridiem||flags.meridiem&&parsedParts);if(m._strict){isNowValid=isNowValid&&flags.charsLeftOver===0&&flags.unusedTokens.length===0&&flags.bigHour===undefined}if(Object.isFrozen==null||!Object.isFrozen(m)){m._isValid=isNowValid}else{return isNowValid}}return m._isValid}function createInvalid(flags){var m=createUTC(NaN);if(flags!=null){extend(getParsingFlags(m),flags)}else{getParsingFlags(m).userInvalidated=true}return m}var momentProperties=hooks.momentProperties=[];function copyConfig(to,from){var i,prop,val;if(!isUndefined(from._isAMomentObject)){to._isAMomentObject=from._isAMomentObject}if(!isUndefined(from._i)){to._i=from._i}if(!isUndefined(from._f)){to._f=from._f}if(!isUndefined(from._l)){to._l=from._l}if(!isUndefined(from._strict)){to._strict=from._strict}if(!isUndefined(from._tzm)){to._tzm=from._tzm}if(!isUndefined(from._isUTC)){to._isUTC=from._isUTC}if(!isUndefined(from._offset)){to._offset=from._offset}if(!isUndefined(from._pf)){to._pf=getParsingFlags(from)}if(!isUndefined(from._locale)){to._locale=from._locale}if(momentProperties.length>0){for(i=0;i<momentProperties.length;i++){prop=momentProperties[i];val=from[prop];if(!isUndefined(val)){to[prop]=val}}}return to}var updateInProgress=false;function Moment(config){copyConfig(this,config);this._d=new Date(config._d!=null?config._d.getTime():NaN);if(!this.isValid()){this._d=new Date(NaN)}if(updateInProgress===false){updateInProgress=true;hooks.updateOffset(this);updateInProgress=false}}function isMoment(obj){return obj instanceof Moment||obj!=null&&obj._isAMomentObject!=null}function absFloor(number){if(number<0){return Math.ceil(number)||0}else{return Math.floor(number)}}function toInt(argumentForCoercion){var coercedNumber=+argumentForCoercion,value=0;if(coercedNumber!==0&&isFinite(coercedNumber)){value=absFloor(coercedNumber)}return value}function compareArrays(array1,array2,dontConvert){var len=Math.min(array1.length,array2.length),lengthDiff=Math.abs(array1.length-array2.length),diffs=0,i;for(i=0;i<len;i++){if(dontConvert&&array1[i]!==array2[i]||!dontConvert&&toInt(array1[i])!==toInt(array2[i])){diffs++}}return diffs+lengthDiff}function warn(msg){if(hooks.suppressDeprecationWarnings===false&&typeof console!==\"undefined\"&&console.warn){console.warn(\"Deprecation warning: \"+msg)}}function deprecate(msg,fn){var firstTime=true;return extend(function(){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(null,msg)}if(firstTime){var args=[];var arg;for(var i=0;i<arguments.length;i++){arg=\"\";if(typeof arguments[i]===\"object\"){arg+=\"\\n[\"+i+\"] \";for(var key in arguments[0]){arg+=key+\": \"+arguments[0][key]+\", \"}arg=arg.slice(0,-2)}else{arg=arguments[i]}args.push(arg)}warn(msg+\"\\nArguments: \"+Array.prototype.slice.call(args).join(\"\")+\"\\n\"+(new Error).stack);firstTime=false}return fn.apply(this,arguments)},fn)}var deprecations={};function deprecateSimple(name,msg){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(name,msg)}if(!deprecations[name]){warn(msg);deprecations[name]=true}}hooks.suppressDeprecationWarnings=false;hooks.deprecationHandler=null;function isFunction(input){return input instanceof Function||Object.prototype.toString.call(input)===\"[object Function]\"}function set(config){var prop,i;for(i in config){prop=config[i];if(isFunction(prop)){this[i]=prop}else{this[\"_\"+i]=prop}}this._config=config;this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+\"|\"+/\\d{1,2}/.source)}function mergeConfigs(parentConfig,childConfig){var res=extend({},parentConfig),prop;for(prop in childConfig){if(hasOwnProp(childConfig,prop)){if(isObject(parentConfig[prop])&&isObject(childConfig[prop])){res[prop]={};extend(res[prop],parentConfig[prop]);extend(res[prop],childConfig[prop])}else if(childConfig[prop]!=null){res[prop]=childConfig[prop]}else{delete res[prop]}}}for(prop in parentConfig){if(hasOwnProp(parentConfig,prop)&&!hasOwnProp(childConfig,prop)&&isObject(parentConfig[prop])){res[prop]=extend({},res[prop])}}return res}function Locale(config){if(config!=null){this.set(config)}}var keys;if(Object.keys){keys=Object.keys}else{keys=function(obj){var i,res=[];for(i in obj){if(hasOwnProp(obj,i)){res.push(i)}}return res}}var defaultCalendar={sameDay:\"[Today at] LT\",nextDay:\"[Tomorrow at] LT\",nextWeek:\"dddd [at] LT\",lastDay:\"[Yesterday at] LT\",lastWeek:\"[Last] dddd [at] LT\",sameElse:\"L\"};function calendar(key,mom,now){var output=this._calendar[key]||this._calendar[\"sameElse\"];return isFunction(output)?output.call(mom,now):output}var defaultLongDateFormat={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"};function longDateFormat(key){var format=this._longDateFormat[key],formatUpper=this._longDateFormat[key.toUpperCase()];if(format||!formatUpper){return format}this._longDateFormat[key]=formatUpper.replace(/MMMM|MM|DD|dddd/g,function(val){return val.slice(1)});return this._longDateFormat[key]}var defaultInvalidDate=\"Invalid date\";function invalidDate(){return this._invalidDate}var defaultOrdinal=\"%d\";var defaultDayOfMonthOrdinalParse=/\\d{1,2}/;function ordinal(number){return this._ordinal.replace(\"%d\",number)}var defaultRelativeTime={future:\"in %s\",past:\"%s ago\",s:\"a few seconds\",ss:\"%d seconds\",m:\"a minute\",mm:\"%d minutes\",h:\"an hour\",hh:\"%d hours\",d:\"a day\",dd:\"%d days\",M:\"a month\",MM:\"%d months\",y:\"a year\",yy:\"%d years\"};function relativeTime(number,withoutSuffix,string,isFuture){var output=this._relativeTime[string];return isFunction(output)?output(number,withoutSuffix,string,isFuture):output.replace(/%d/i,number)}function pastFuture(diff,output){var format=this._relativeTime[diff>0?\"future\":\"past\"];return isFunction(format)?format(output):format.replace(/%s/i,output)}var aliases={};function addUnitAlias(unit,shorthand){var lowerCase=unit.toLowerCase();aliases[lowerCase]=aliases[lowerCase+\"s\"]=aliases[shorthand]=unit}function normalizeUnits(units){return typeof units===\"string\"?aliases[units]||aliases[units.toLowerCase()]:undefined}function normalizeObjectUnits(inputObject){var normalizedInput={},normalizedProp,prop;for(prop in inputObject){if(hasOwnProp(inputObject,prop)){normalizedProp=normalizeUnits(prop);if(normalizedProp){normalizedInput[normalizedProp]=inputObject[prop]}}}return normalizedInput}var priorities={};function addUnitPriority(unit,priority){priorities[unit]=priority}function getPrioritizedUnits(unitsObj){var units=[];for(var u in unitsObj){units.push({unit:u,priority:priorities[u]})}units.sort(function(a,b){return a.priority-b.priority});return units}function zeroFill(number,targetLength,forceSign){var absNumber=\"\"+Math.abs(number),zerosToFill=targetLength-absNumber.length,sign=number>=0;return(sign?forceSign?\"+\":\"\":\"-\")+Math.pow(10,Math.max(0,zerosToFill)).toString().substr(1)+absNumber}var formattingTokens=/(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;var localFormattingTokens=/(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g;var formatFunctions={};var formatTokenFunctions={};function addFormatToken(token,padded,ordinal,callback){var func=callback;if(typeof callback===\"string\"){func=function(){return this[callback]()}}if(token){formatTokenFunctions[token]=func}if(padded){formatTokenFunctions[padded[0]]=function(){return zeroFill(func.apply(this,arguments),padded[1],padded[2])}}if(ordinal){formatTokenFunctions[ordinal]=function(){return this.localeData().ordinal(func.apply(this,arguments),token)}}}function removeFormattingTokens(input){if(input.match(/\\[[\\s\\S]/)){return input.replace(/^\\[|\\]$/g,\"\")}return input.replace(/\\\\/g,\"\")}function makeFormatFunction(format){var array=format.match(formattingTokens),i,length;for(i=0,length=array.length;i<length;i++){if(formatTokenFunctions[array[i]]){array[i]=formatTokenFunctions[array[i]]}else{array[i]=removeFormattingTokens(array[i])}}return function(mom){var output=\"\",i;for(i=0;i<length;i++){output+=isFunction(array[i])?array[i].call(mom,format):array[i]}return output}}function formatMoment(m,format){if(!m.isValid()){return m.localeData().invalidDate()}format=expandFormat(format,m.localeData());formatFunctions[format]=formatFunctions[format]||makeFormatFunction(format);return formatFunctions[format](m)}function expandFormat(format,locale){var i=5;function replaceLongDateFormatTokens(input){return locale.longDateFormat(input)||input}localFormattingTokens.lastIndex=0;while(i>=0&&localFormattingTokens.test(format)){format=format.replace(localFormattingTokens,replaceLongDateFormatTokens);localFormattingTokens.lastIndex=0;i-=1}return format}var match1=/\\d/;var match2=/\\d\\d/;var match3=/\\d{3}/;var match4=/\\d{4}/;var match6=/[+-]?\\d{6}/;var match1to2=/\\d\\d?/;var match3to4=/\\d\\d\\d\\d?/;var match5to6=/\\d\\d\\d\\d\\d\\d?/;var match1to3=/\\d{1,3}/;var match1to4=/\\d{1,4}/;var match1to6=/[+-]?\\d{1,6}/;var matchUnsigned=/\\d+/;var matchSigned=/[+-]?\\d+/;var matchOffset=/Z|[+-]\\d\\d:?\\d\\d/gi;var matchShortOffset=/Z|[+-]\\d\\d(?::?\\d\\d)?/gi;var matchTimestamp=/[+-]?\\d+(\\.\\d{1,3})?/;var matchWord=/[0-9]*['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]+|[\\u0600-\\u06FF\\/]+(\\s*?[\\u0600-\\u06FF]+){1,2}/i;var regexes={};function addRegexToken(token,regex,strictRegex){regexes[token]=isFunction(regex)?regex:function(isStrict,localeData){return isStrict&&strictRegex?strictRegex:regex}}function getParseRegexForToken(token,config){if(!hasOwnProp(regexes,token)){return new RegExp(unescapeFormat(token))}return regexes[token](config._strict,config._locale)}function unescapeFormat(s){return regexEscape(s.replace(\"\\\\\",\"\").replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,function(matched,p1,p2,p3,p4){return p1||p2||p3||p4}))}function regexEscape(s){return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\")}var tokens={};function addParseToken(token,callback){var i,func=callback;if(typeof token===\"string\"){token=[token]}if(isNumber(callback)){func=function(input,array){array[callback]=toInt(input)}}for(i=0;i<token.length;i++){tokens[token[i]]=func}}function addWeekParseToken(token,callback){addParseToken(token,function(input,array,config,token){config._w=config._w||{};callback(input,config._w,config,token)})}function addTimeToArrayFromToken(token,input,config){if(input!=null&&hasOwnProp(tokens,token)){tokens[token](input,config._a,config,token)}}var YEAR=0;var MONTH=1;var DATE=2;var HOUR=3;var MINUTE=4;var SECOND=5;var MILLISECOND=6;var WEEK=7;var WEEKDAY=8;addFormatToken(\"Y\",0,0,function(){var y=this.year();return y<=9999?\"\"+y:\"+\"+y});addFormatToken(0,[\"YY\",2],0,function(){return this.year()%100});addFormatToken(0,[\"YYYY\",4],0,\"year\");addFormatToken(0,[\"YYYYY\",5],0,\"year\");addFormatToken(0,[\"YYYYYY\",6,true],0,\"year\");addUnitAlias(\"year\",\"y\");addUnitPriority(\"year\",1);addRegexToken(\"Y\",matchSigned)\n;addRegexToken(\"YY\",match1to2,match2);addRegexToken(\"YYYY\",match1to4,match4);addRegexToken(\"YYYYY\",match1to6,match6);addRegexToken(\"YYYYYY\",match1to6,match6);addParseToken([\"YYYYY\",\"YYYYYY\"],YEAR);addParseToken(\"YYYY\",function(input,array){array[YEAR]=input.length===2?hooks.parseTwoDigitYear(input):toInt(input)});addParseToken(\"YY\",function(input,array){array[YEAR]=hooks.parseTwoDigitYear(input)});addParseToken(\"Y\",function(input,array){array[YEAR]=parseInt(input,10)});function daysInYear(year){return isLeapYear(year)?366:365}function isLeapYear(year){return year%4===0&&year%100!==0||year%400===0}hooks.parseTwoDigitYear=function(input){return toInt(input)+(toInt(input)>68?1900:2e3)};var getSetYear=makeGetSet(\"FullYear\",true);function getIsLeapYear(){return isLeapYear(this.year())}function makeGetSet(unit,keepTime){return function(value){if(value!=null){set$1(this,unit,value);hooks.updateOffset(this,keepTime);return this}else{return get(this,unit)}}}function get(mom,unit){return mom.isValid()?mom._d[\"get\"+(mom._isUTC?\"UTC\":\"\")+unit]():NaN}function set$1(mom,unit,value){if(mom.isValid()&&!isNaN(value)){if(unit===\"FullYear\"&&isLeapYear(mom.year())){mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+unit](value,mom.month(),daysInMonth(value,mom.month()))}else{mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+unit](value)}}}function stringGet(units){units=normalizeUnits(units);if(isFunction(this[units])){return this[units]()}return this}function stringSet(units,value){if(typeof units===\"object\"){units=normalizeObjectUnits(units);var prioritized=getPrioritizedUnits(units);for(var i=0;i<prioritized.length;i++){this[prioritized[i].unit](units[prioritized[i].unit])}}else{units=normalizeUnits(units);if(isFunction(this[units])){return this[units](value)}}return this}function mod(n,x){return(n%x+x)%x}var indexOf;if(Array.prototype.indexOf){indexOf=Array.prototype.indexOf}else{indexOf=function(o){var i;for(i=0;i<this.length;++i){if(this[i]===o){return i}}return-1}}function daysInMonth(year,month){if(isNaN(year)||isNaN(month)){return NaN}var modMonth=mod(month,12);year+=(month-modMonth)/12;return modMonth===1?isLeapYear(year)?29:28:31-modMonth%7%2}addFormatToken(\"M\",[\"MM\",2],\"Mo\",function(){return this.month()+1});addFormatToken(\"MMM\",0,0,function(format){return this.localeData().monthsShort(this,format)});addFormatToken(\"MMMM\",0,0,function(format){return this.localeData().months(this,format)});addUnitAlias(\"month\",\"M\");addUnitPriority(\"month\",8);addRegexToken(\"M\",match1to2);addRegexToken(\"MM\",match1to2,match2);addRegexToken(\"MMM\",function(isStrict,locale){return locale.monthsShortRegex(isStrict)});addRegexToken(\"MMMM\",function(isStrict,locale){return locale.monthsRegex(isStrict)});addParseToken([\"M\",\"MM\"],function(input,array){array[MONTH]=toInt(input)-1});addParseToken([\"MMM\",\"MMMM\"],function(input,array,config,token){var month=config._locale.monthsParse(input,token,config._strict);if(month!=null){array[MONTH]=month}else{getParsingFlags(config).invalidMonth=input}});var MONTHS_IN_FORMAT=/D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/;var defaultLocaleMonths=\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\");function localeMonths(m,format){if(!m){return isArray(this._months)?this._months:this._months[\"standalone\"]}return isArray(this._months)?this._months[m.month()]:this._months[(this._months.isFormat||MONTHS_IN_FORMAT).test(format)?\"format\":\"standalone\"][m.month()]}var defaultLocaleMonthsShort=\"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec\".split(\"_\");function localeMonthsShort(m,format){if(!m){return isArray(this._monthsShort)?this._monthsShort:this._monthsShort[\"standalone\"]}return isArray(this._monthsShort)?this._monthsShort[m.month()]:this._monthsShort[MONTHS_IN_FORMAT.test(format)?\"format\":\"standalone\"][m.month()]}function handleStrictParse(monthName,format,strict){var i,ii,mom,llc=monthName.toLocaleLowerCase();if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];this._shortMonthsParse=[];for(i=0;i<12;++i){mom=createUTC([2e3,i]);this._shortMonthsParse[i]=this.monthsShort(mom,\"\").toLocaleLowerCase();this._longMonthsParse[i]=this.months(mom,\"\").toLocaleLowerCase()}}if(strict){if(format===\"MMM\"){ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null}}else{if(format===\"MMM\"){ii=indexOf.call(this._shortMonthsParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._longMonthsParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null}}}function localeMonthsParse(monthName,format,strict){var i,mom,regex;if(this._monthsParseExact){return handleStrictParse.call(this,monthName,format,strict)}if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];this._shortMonthsParse=[]}for(i=0;i<12;i++){mom=createUTC([2e3,i]);if(strict&&!this._longMonthsParse[i]){this._longMonthsParse[i]=new RegExp(\"^\"+this.months(mom,\"\").replace(\".\",\"\")+\"$\",\"i\");this._shortMonthsParse[i]=new RegExp(\"^\"+this.monthsShort(mom,\"\").replace(\".\",\"\")+\"$\",\"i\")}if(!strict&&!this._monthsParse[i]){regex=\"^\"+this.months(mom,\"\")+\"|^\"+this.monthsShort(mom,\"\");this._monthsParse[i]=new RegExp(regex.replace(\".\",\"\"),\"i\")}if(strict&&format===\"MMMM\"&&this._longMonthsParse[i].test(monthName)){return i}else if(strict&&format===\"MMM\"&&this._shortMonthsParse[i].test(monthName)){return i}else if(!strict&&this._monthsParse[i].test(monthName)){return i}}}function setMonth(mom,value){var dayOfMonth;if(!mom.isValid()){return mom}if(typeof value===\"string\"){if(/^\\d+$/.test(value)){value=toInt(value)}else{value=mom.localeData().monthsParse(value);if(!isNumber(value)){return mom}}}dayOfMonth=Math.min(mom.date(),daysInMonth(mom.year(),value));mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+\"Month\"](value,dayOfMonth);return mom}function getSetMonth(value){if(value!=null){setMonth(this,value);hooks.updateOffset(this,true);return this}else{return get(this,\"Month\")}}function getDaysInMonth(){return daysInMonth(this.year(),this.month())}var defaultMonthsShortRegex=matchWord;function monthsShortRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,\"_monthsRegex\")){computeMonthsParse.call(this)}if(isStrict){return this._monthsShortStrictRegex}else{return this._monthsShortRegex}}else{if(!hasOwnProp(this,\"_monthsShortRegex\")){this._monthsShortRegex=defaultMonthsShortRegex}return this._monthsShortStrictRegex&&isStrict?this._monthsShortStrictRegex:this._monthsShortRegex}}var defaultMonthsRegex=matchWord;function monthsRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,\"_monthsRegex\")){computeMonthsParse.call(this)}if(isStrict){return this._monthsStrictRegex}else{return this._monthsRegex}}else{if(!hasOwnProp(this,\"_monthsRegex\")){this._monthsRegex=defaultMonthsRegex}return this._monthsStrictRegex&&isStrict?this._monthsStrictRegex:this._monthsRegex}}function computeMonthsParse(){function cmpLenRev(a,b){return b.length-a.length}var shortPieces=[],longPieces=[],mixedPieces=[],i,mom;for(i=0;i<12;i++){mom=createUTC([2e3,i]);shortPieces.push(this.monthsShort(mom,\"\"));longPieces.push(this.months(mom,\"\"));mixedPieces.push(this.months(mom,\"\"));mixedPieces.push(this.monthsShort(mom,\"\"))}shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);for(i=0;i<12;i++){shortPieces[i]=regexEscape(shortPieces[i]);longPieces[i]=regexEscape(longPieces[i])}for(i=0;i<24;i++){mixedPieces[i]=regexEscape(mixedPieces[i])}this._monthsRegex=new RegExp(\"^(\"+mixedPieces.join(\"|\")+\")\",\"i\");this._monthsShortRegex=this._monthsRegex;this._monthsStrictRegex=new RegExp(\"^(\"+longPieces.join(\"|\")+\")\",\"i\");this._monthsShortStrictRegex=new RegExp(\"^(\"+shortPieces.join(\"|\")+\")\",\"i\")}function createDate(y,m,d,h,M,s,ms){var date=new Date(y,m,d,h,M,s,ms);if(y<100&&y>=0&&isFinite(date.getFullYear())){date.setFullYear(y)}return date}function createUTCDate(y){var date=new Date(Date.UTC.apply(null,arguments));if(y<100&&y>=0&&isFinite(date.getUTCFullYear())){date.setUTCFullYear(y)}return date}function firstWeekOffset(year,dow,doy){var fwd=7+dow-doy,fwdlw=(7+createUTCDate(year,0,fwd).getUTCDay()-dow)%7;return-fwdlw+fwd-1}function dayOfYearFromWeeks(year,week,weekday,dow,doy){var localWeekday=(7+weekday-dow)%7,weekOffset=firstWeekOffset(year,dow,doy),dayOfYear=1+7*(week-1)+localWeekday+weekOffset,resYear,resDayOfYear;if(dayOfYear<=0){resYear=year-1;resDayOfYear=daysInYear(resYear)+dayOfYear}else if(dayOfYear>daysInYear(year)){resYear=year+1;resDayOfYear=dayOfYear-daysInYear(year)}else{resYear=year;resDayOfYear=dayOfYear}return{year:resYear,dayOfYear:resDayOfYear}}function weekOfYear(mom,dow,doy){var weekOffset=firstWeekOffset(mom.year(),dow,doy),week=Math.floor((mom.dayOfYear()-weekOffset-1)/7)+1,resWeek,resYear;if(week<1){resYear=mom.year()-1;resWeek=week+weeksInYear(resYear,dow,doy)}else if(week>weeksInYear(mom.year(),dow,doy)){resWeek=week-weeksInYear(mom.year(),dow,doy);resYear=mom.year()+1}else{resYear=mom.year();resWeek=week}return{week:resWeek,year:resYear}}function weeksInYear(year,dow,doy){var weekOffset=firstWeekOffset(year,dow,doy),weekOffsetNext=firstWeekOffset(year+1,dow,doy);return(daysInYear(year)-weekOffset+weekOffsetNext)/7}addFormatToken(\"w\",[\"ww\",2],\"wo\",\"week\");addFormatToken(\"W\",[\"WW\",2],\"Wo\",\"isoWeek\");addUnitAlias(\"week\",\"w\");addUnitAlias(\"isoWeek\",\"W\");addUnitPriority(\"week\",5);addUnitPriority(\"isoWeek\",5);addRegexToken(\"w\",match1to2);addRegexToken(\"ww\",match1to2,match2);addRegexToken(\"W\",match1to2);addRegexToken(\"WW\",match1to2,match2);addWeekParseToken([\"w\",\"ww\",\"W\",\"WW\"],function(input,week,config,token){week[token.substr(0,1)]=toInt(input)});function localeWeek(mom){return weekOfYear(mom,this._week.dow,this._week.doy).week}var defaultLocaleWeek={dow:0,doy:6};function localeFirstDayOfWeek(){return this._week.dow}function localeFirstDayOfYear(){return this._week.doy}function getSetWeek(input){var week=this.localeData().week(this);return input==null?week:this.add((input-week)*7,\"d\")}function getSetISOWeek(input){var week=weekOfYear(this,1,4).week;return input==null?week:this.add((input-week)*7,\"d\")}addFormatToken(\"d\",0,\"do\",\"day\");addFormatToken(\"dd\",0,0,function(format){return this.localeData().weekdaysMin(this,format)});addFormatToken(\"ddd\",0,0,function(format){return this.localeData().weekdaysShort(this,format)});addFormatToken(\"dddd\",0,0,function(format){return this.localeData().weekdays(this,format)});addFormatToken(\"e\",0,0,\"weekday\");addFormatToken(\"E\",0,0,\"isoWeekday\");addUnitAlias(\"day\",\"d\");addUnitAlias(\"weekday\",\"e\");addUnitAlias(\"isoWeekday\",\"E\");addUnitPriority(\"day\",11);addUnitPriority(\"weekday\",11);addUnitPriority(\"isoWeekday\",11);addRegexToken(\"d\",match1to2);addRegexToken(\"e\",match1to2);addRegexToken(\"E\",match1to2);addRegexToken(\"dd\",function(isStrict,locale){return locale.weekdaysMinRegex(isStrict)});addRegexToken(\"ddd\",function(isStrict,locale){return locale.weekdaysShortRegex(isStrict)});addRegexToken(\"dddd\",function(isStrict,locale){return locale.weekdaysRegex(isStrict)});addWeekParseToken([\"dd\",\"ddd\",\"dddd\"],function(input,week,config,token){var weekday=config._locale.weekdaysParse(input,token,config._strict);if(weekday!=null){week.d=weekday}else{getParsingFlags(config).invalidWeekday=input}});addWeekParseToken([\"d\",\"e\",\"E\"],function(input,week,config,token){week[token]=toInt(input)});function parseWeekday(input,locale){if(typeof input!==\"string\"){return input}if(!isNaN(input)){return parseInt(input,10)}input=locale.weekdaysParse(input);if(typeof input===\"number\"){return input}return null}function parseIsoWeekday(input,locale){if(typeof input===\"string\"){return locale.weekdaysParse(input)%7||7}return isNaN(input)?null:input}var defaultLocaleWeekdays=\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\");function localeWeekdays(m,format){if(!m){return isArray(this._weekdays)?this._weekdays:this._weekdays[\"standalone\"]}return isArray(this._weekdays)?this._weekdays[m.day()]:this._weekdays[this._weekdays.isFormat.test(format)?\"format\":\"standalone\"][m.day()]}var defaultLocaleWeekdaysShort=\"Sun_Mon_Tue_Wed_Thu_Fri_Sat\".split(\"_\");function localeWeekdaysShort(m){return m?this._weekdaysShort[m.day()]:this._weekdaysShort}var defaultLocaleWeekdaysMin=\"Su_Mo_Tu_We_Th_Fr_Sa\".split(\"_\");function localeWeekdaysMin(m){return m?this._weekdaysMin[m.day()]:this._weekdaysMin}function handleStrictParse$1(weekdayName,format,strict){var i,ii,mom,llc=weekdayName.toLocaleLowerCase();if(!this._weekdaysParse){this._weekdaysParse=[];this._shortWeekdaysParse=[];this._minWeekdaysParse=[];for(i=0;i<7;++i){mom=createUTC([2e3,1]).day(i);this._minWeekdaysParse[i]=this.weekdaysMin(mom,\"\").toLocaleLowerCase();this._shortWeekdaysParse[i]=this.weekdaysShort(mom,\"\").toLocaleLowerCase();this._weekdaysParse[i]=this.weekdays(mom,\"\").toLocaleLowerCase()}}if(strict){if(format===\"dddd\"){ii=indexOf.call(this._weekdaysParse,llc);return ii!==-1?ii:null}else if(format===\"ddd\"){ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}}else{if(format===\"dddd\"){ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}else if(format===\"ddd\"){ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._minWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null}}}function localeWeekdaysParse(weekdayName,format,strict){var i,mom,regex;if(this._weekdaysParseExact){return handleStrictParse$1.call(this,weekdayName,format,strict)}if(!this._weekdaysParse){this._weekdaysParse=[];this._minWeekdaysParse=[];this._shortWeekdaysParse=[];this._fullWeekdaysParse=[]}for(i=0;i<7;i++){mom=createUTC([2e3,1]).day(i);if(strict&&!this._fullWeekdaysParse[i]){this._fullWeekdaysParse[i]=new RegExp(\"^\"+this.weekdays(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\");this._shortWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysShort(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\");this._minWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysMin(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\")}if(!this._weekdaysParse[i]){regex=\"^\"+this.weekdays(mom,\"\")+\"|^\"+this.weekdaysShort(mom,\"\")+\"|^\"+this.weekdaysMin(mom,\"\");this._weekdaysParse[i]=new RegExp(regex.replace(\".\",\"\"),\"i\")}if(strict&&format===\"dddd\"&&this._fullWeekdaysParse[i].test(weekdayName)){return i}else if(strict&&format===\"ddd\"&&this._shortWeekdaysParse[i].test(weekdayName)){return i}else if(strict&&format===\"dd\"&&this._minWeekdaysParse[i].test(weekdayName)){return i}else if(!strict&&this._weekdaysParse[i].test(weekdayName)){return i}}}function getSetDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}var day=this._isUTC?this._d.getUTCDay():this._d.getDay();if(input!=null){input=parseWeekday(input,this.localeData());return this.add(input-day,\"d\")}else{return day}}function getSetLocaleDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}var weekday=(this.day()+7-this.localeData()._week.dow)%7;return input==null?weekday:this.add(input-weekday,\"d\")}function getSetISODayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}if(input!=null){var weekday=parseIsoWeekday(input,this.localeData());return this.day(this.day()%7?weekday:weekday-7)}else{return this.day()||7}}var defaultWeekdaysRegex=matchWord;function weekdaysRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysStrictRegex}else{return this._weekdaysRegex}}else{if(!hasOwnProp(this,\"_weekdaysRegex\")){this._weekdaysRegex=defaultWeekdaysRegex}return this._weekdaysStrictRegex&&isStrict?this._weekdaysStrictRegex:this._weekdaysRegex}}var defaultWeekdaysShortRegex=matchWord;function weekdaysShortRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysShortStrictRegex}else{return this._weekdaysShortRegex}}else{if(!hasOwnProp(this,\"_weekdaysShortRegex\")){this._weekdaysShortRegex=defaultWeekdaysShortRegex}return this._weekdaysShortStrictRegex&&isStrict?this._weekdaysShortStrictRegex:this._weekdaysShortRegex}}var defaultWeekdaysMinRegex=matchWord;function weekdaysMinRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysMinStrictRegex}else{return this._weekdaysMinRegex}}else{if(!hasOwnProp(this,\"_weekdaysMinRegex\")){this._weekdaysMinRegex=defaultWeekdaysMinRegex}return this._weekdaysMinStrictRegex&&isStrict?this._weekdaysMinStrictRegex:this._weekdaysMinRegex}}function computeWeekdaysParse(){function cmpLenRev(a,b){return b.length-a.length}var minPieces=[],shortPieces=[],longPieces=[],mixedPieces=[],i,mom,minp,shortp,longp;for(i=0;i<7;i++){mom=createUTC([2e3,1]).day(i);minp=this.weekdaysMin(mom,\"\");shortp=this.weekdaysShort(mom,\"\");longp=this.weekdays(mom,\"\");minPieces.push(minp);shortPieces.push(shortp);longPieces.push(longp);mixedPieces.push(minp);mixedPieces.push(shortp);mixedPieces.push(longp)}minPieces.sort(cmpLenRev);shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);for(i=0;i<7;i++){shortPieces[i]=regexEscape(shortPieces[i]);longPieces[i]=regexEscape(longPieces[i]);mixedPieces[i]=regexEscape(mixedPieces[i])}this._weekdaysRegex=new RegExp(\"^(\"+mixedPieces.join(\"|\")+\")\",\"i\");this._weekdaysShortRegex=this._weekdaysRegex;this._weekdaysMinRegex=this._weekdaysRegex;this._weekdaysStrictRegex=new RegExp(\"^(\"+longPieces.join(\"|\")+\")\",\"i\");this._weekdaysShortStrictRegex=new RegExp(\"^(\"+shortPieces.join(\"|\")+\")\",\"i\");this._weekdaysMinStrictRegex=new RegExp(\"^(\"+minPieces.join(\"|\")+\")\",\"i\")}function hFormat(){return this.hours()%12||12}function kFormat(){return this.hours()||24}addFormatToken(\"H\",[\"HH\",2],0,\"hour\");addFormatToken(\"h\",[\"hh\",2],0,hFormat);addFormatToken(\"k\",[\"kk\",2],0,kFormat);addFormatToken(\"hmm\",0,0,function(){return\"\"+hFormat.apply(this)+zeroFill(this.minutes(),2)});addFormatToken(\"hmmss\",0,0,function(){return\"\"+hFormat.apply(this)+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)});addFormatToken(\"Hmm\",0,0,function(){return\"\"+this.hours()+zeroFill(this.minutes(),2)});addFormatToken(\"Hmmss\",0,0,function(){return\"\"+this.hours()+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)});function meridiem(token,lowercase){addFormatToken(token,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),lowercase)})}meridiem(\"a\",true);meridiem(\"A\",false);addUnitAlias(\"hour\",\"h\");addUnitPriority(\"hour\",13);function matchMeridiem(isStrict,locale){return locale._meridiemParse}addRegexToken(\"a\",matchMeridiem);addRegexToken(\"A\",matchMeridiem);addRegexToken(\"H\",match1to2);addRegexToken(\"h\",match1to2);addRegexToken(\"k\",match1to2);addRegexToken(\"HH\",match1to2,match2);addRegexToken(\"hh\",match1to2,match2);addRegexToken(\"kk\",match1to2,match2);addRegexToken(\"hmm\",match3to4);addRegexToken(\"hmmss\",match5to6);addRegexToken(\"Hmm\",match3to4);addRegexToken(\"Hmmss\",match5to6);addParseToken([\"H\",\"HH\"],HOUR);addParseToken([\"k\",\"kk\"],function(input,array,config){var kInput=toInt(input);array[HOUR]=kInput===24?0:kInput});addParseToken([\"a\",\"A\"],function(input,array,config){config._isPm=config._locale.isPM(input);config._meridiem=input});addParseToken([\"h\",\"hh\"],function(input,array,config){array[HOUR]=toInt(input);getParsingFlags(config).bigHour=true});addParseToken(\"hmm\",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos));getParsingFlags(config).bigHour=true});addParseToken(\"hmmss\",function(input,array,config){var pos1=input.length-4;var pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2));getParsingFlags(config).bigHour=true});addParseToken(\"Hmm\",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos))});addParseToken(\"Hmmss\",function(input,array,config){var pos1=input.length-4;var pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2))});function localeIsPM(input){return(input+\"\").toLowerCase().charAt(0)===\"p\"}var defaultLocaleMeridiemParse=/[ap]\\.?m?\\.?/i;function localeMeridiem(hours,minutes,isLower){if(hours>11){return isLower?\"pm\":\"PM\"}else{return isLower?\"am\":\"AM\"}}var getSetHour=makeGetSet(\"Hours\",true);var baseConfig={calendar:defaultCalendar,longDateFormat:defaultLongDateFormat,invalidDate:defaultInvalidDate,ordinal:defaultOrdinal,dayOfMonthOrdinalParse:defaultDayOfMonthOrdinalParse,relativeTime:defaultRelativeTime,months:defaultLocaleMonths,monthsShort:defaultLocaleMonthsShort,week:defaultLocaleWeek,weekdays:defaultLocaleWeekdays,weekdaysMin:defaultLocaleWeekdaysMin,weekdaysShort:defaultLocaleWeekdaysShort,meridiemParse:defaultLocaleMeridiemParse};var locales={};var localeFamilies={};var globalLocale;function normalizeLocale(key){return key?key.toLowerCase().replace(\"_\",\"-\"):key}function chooseLocale(names){var i=0,j,next,locale,split;while(i<names.length){split=normalizeLocale(names[i]).split(\"-\");j=split.length;next=normalizeLocale(names[i+1]);next=next?next.split(\"-\"):null;while(j>0){locale=loadLocale(split.slice(0,j).join(\"-\"));if(locale){return locale}if(next&&next.length>=j&&compareArrays(split,next,true)>=j-1){break}j--}i++}return null}function loadLocale(name){var oldLocale=null;if(!locales[name]&&typeof module!==\"undefined\"&&module&&module.exports){try{oldLocale=globalLocale._abbr;var aliasedRequire=require;!function webpackMissingModule(){var e=new Error('Cannot find module \"./locale\"');e.code=\"MODULE_NOT_FOUND\";throw e}();getSetGlobalLocale(oldLocale)}catch(e){}}return locales[name]}function getSetGlobalLocale(key,values){var data;if(key){if(isUndefined(values)){data=getLocale(key)}else{data=defineLocale(key,values)}if(data){globalLocale=data}}return globalLocale._abbr}function defineLocale(name,config){if(config!==null){var parentConfig=baseConfig;config.abbr=name;if(locales[name]!=null){deprecateSimple(\"defineLocaleOverride\",\"use moment.updateLocale(localeName, config) to change \"+\"an existing locale. moment.defineLocale(localeName, \"+\"config) should only be used for creating a new locale \"+\"See http://momentjs.com/guides/#/warnings/define-locale/ for more info.\");parentConfig=locales[name]._config}else if(config.parentLocale!=null){if(locales[config.parentLocale]!=null){parentConfig=locales[config.parentLocale]._config}else{if(!localeFamilies[config.parentLocale]){localeFamilies[config.parentLocale]=[]}localeFamilies[config.parentLocale].push({name:name,config:config});return null}}locales[name]=new Locale(mergeConfigs(parentConfig,config));if(localeFamilies[name]){localeFamilies[name].forEach(function(x){defineLocale(x.name,x.config)})}getSetGlobalLocale(name);return locales[name]}else{delete locales[name];return null}}function updateLocale(name,config){if(config!=null){var locale,parentConfig=baseConfig;if(locales[name]!=null){parentConfig=locales[name]._config}config=mergeConfigs(parentConfig,config);locale=new Locale(config);locale.parentLocale=locales[name];locales[name]=locale;getSetGlobalLocale(name)}else{if(locales[name]!=null){if(locales[name].parentLocale!=null){locales[name]=locales[name].parentLocale}else if(locales[name]!=null){delete locales[name]}}}return locales[name]}function getLocale(key){var locale;if(key&&key._locale&&key._locale._abbr){key=key._locale._abbr}if(!key){return globalLocale}if(!isArray(key)){locale=loadLocale(key);if(locale){return locale}key=[key]}return chooseLocale(key)}function listLocales(){return keys(locales)}function checkOverflow(m){var overflow;var a=m._a;if(a&&getParsingFlags(m).overflow===-2){overflow=a[MONTH]<0||a[MONTH]>11?MONTH:a[DATE]<1||a[DATE]>daysInMonth(a[YEAR],a[MONTH])?DATE:a[HOUR]<0||a[HOUR]>24||a[HOUR]===24&&(a[MINUTE]!==0||a[SECOND]!==0||a[MILLISECOND]!==0)?HOUR:a[MINUTE]<0||a[MINUTE]>59?MINUTE:a[SECOND]<0||a[SECOND]>59?SECOND:a[MILLISECOND]<0||a[MILLISECOND]>999?MILLISECOND:-1;if(getParsingFlags(m)._overflowDayOfYear&&(overflow<YEAR||overflow>DATE)){overflow=DATE}if(getParsingFlags(m)._overflowWeeks&&overflow===-1){overflow=WEEK}if(getParsingFlags(m)._overflowWeekday&&overflow===-1){overflow=WEEKDAY}getParsingFlags(m).overflow=overflow}return m}function defaults(a,b,c){if(a!=null){return a}if(b!=null){return b}return c}function currentDateArray(config){var nowValue=new Date(hooks.now());if(config._useUTC){return[nowValue.getUTCFullYear(),nowValue.getUTCMonth(),nowValue.getUTCDate()]}return[nowValue.getFullYear(),nowValue.getMonth(),nowValue.getDate()]}function configFromArray(config){var i,date,input=[],currentDate,yearToUse;if(config._d){return}currentDate=currentDateArray(config);if(config._w&&config._a[DATE]==null&&config._a[MONTH]==null){dayOfYearFromWeekInfo(config)}if(config._dayOfYear!=null){yearToUse=defaults(config._a[YEAR],currentDate[YEAR]);if(config._dayOfYear>daysInYear(yearToUse)||config._dayOfYear===0){getParsingFlags(config)._overflowDayOfYear=true}date=createUTCDate(yearToUse,0,config._dayOfYear);config._a[MONTH]=date.getUTCMonth();config._a[DATE]=date.getUTCDate()}for(i=0;i<3&&config._a[i]==null;++i){config._a[i]=input[i]=currentDate[i]}for(;i<7;i++){config._a[i]=input[i]=config._a[i]==null?i===2?1:0:config._a[i]}if(config._a[HOUR]===24&&config._a[MINUTE]===0&&config._a[SECOND]===0&&config._a[MILLISECOND]===0){config._nextDay=true;config._a[HOUR]=0}config._d=(config._useUTC?createUTCDate:createDate).apply(null,input);if(config._tzm!=null){config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm)}if(config._nextDay){config._a[HOUR]=24}if(config._w&&typeof config._w.d!==\"undefined\"&&config._w.d!==config._d.getDay()){getParsingFlags(config).weekdayMismatch=true}}function dayOfYearFromWeekInfo(config){var w,weekYear,week,weekday,dow,doy,temp,weekdayOverflow;w=config._w;if(w.GG!=null||w.W!=null||w.E!=null){dow=1;doy=4;weekYear=defaults(w.GG,config._a[YEAR],weekOfYear(createLocal(),1,4).year);week=defaults(w.W,1);weekday=defaults(w.E,1);if(weekday<1||weekday>7){weekdayOverflow=true}}else{dow=config._locale._week.dow;doy=config._locale._week.doy;var curWeek=weekOfYear(createLocal(),dow,doy);weekYear=defaults(w.gg,config._a[YEAR],curWeek.year);week=defaults(w.w,curWeek.week);if(w.d!=null){weekday=w.d;if(weekday<0||weekday>6){weekdayOverflow=true}}else if(w.e!=null){weekday=w.e+dow;if(w.e<0||w.e>6){weekdayOverflow=true}}else{weekday=dow}}if(week<1||week>weeksInYear(weekYear,dow,doy)){getParsingFlags(config)._overflowWeeks=true}else if(weekdayOverflow!=null){getParsingFlags(config)._overflowWeekday=true}else{temp=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy);config._a[YEAR]=temp.year;config._dayOfYear=temp.dayOfYear}}var extendedIsoRegex=/^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;var basicIsoRegex=/^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;var tzRegex=/Z|[+-]\\d\\d(?::?\\d\\d)?/;var isoDates=[[\"YYYYYY-MM-DD\",/[+-]\\d{6}-\\d\\d-\\d\\d/],[\"YYYY-MM-DD\",/\\d{4}-\\d\\d-\\d\\d/],[\"GGGG-[W]WW-E\",/\\d{4}-W\\d\\d-\\d/],[\"GGGG-[W]WW\",/\\d{4}-W\\d\\d/,false],[\"YYYY-DDD\",/\\d{4}-\\d{3}/],[\"YYYY-MM\",/\\d{4}-\\d\\d/,false],[\"YYYYYYMMDD\",/[+-]\\d{10}/],[\"YYYYMMDD\",/\\d{8}/],[\"GGGG[W]WWE\",/\\d{4}W\\d{3}/],[\"GGGG[W]WW\",/\\d{4}W\\d{2}/,false],[\"YYYYDDD\",/\\d{7}/]];var isoTimes=[[\"HH:mm:ss.SSSS\",/\\d\\d:\\d\\d:\\d\\d\\.\\d+/],[\"HH:mm:ss,SSSS\",/\\d\\d:\\d\\d:\\d\\d,\\d+/],[\"HH:mm:ss\",/\\d\\d:\\d\\d:\\d\\d/],[\"HH:mm\",/\\d\\d:\\d\\d/],[\"HHmmss.SSSS\",/\\d\\d\\d\\d\\d\\d\\.\\d+/],[\"HHmmss,SSSS\",/\\d\\d\\d\\d\\d\\d,\\d+/],[\"HHmmss\",/\\d\\d\\d\\d\\d\\d/],[\"HHmm\",/\\d\\d\\d\\d/],[\"HH\",/\\d\\d/]];var aspNetJsonRegex=/^\\/?Date\\((\\-?\\d+)/i;function configFromISO(config){var i,l,string=config._i,match=extendedIsoRegex.exec(string)||basicIsoRegex.exec(string),allowTime,dateFormat,timeFormat,tzFormat;if(match){getParsingFlags(config).iso=true;for(i=0,l=isoDates.length;i<l;i++){if(isoDates[i][1].exec(match[1])){dateFormat=isoDates[i][0];allowTime=isoDates[i][2]!==false;break}}if(dateFormat==null){config._isValid=false;return}if(match[3]){for(i=0,l=isoTimes.length;i<l;i++){if(isoTimes[i][1].exec(match[3])){timeFormat=(match[2]||\" \")+isoTimes[i][0];break}}if(timeFormat==null){config._isValid=false;return}}if(!allowTime&&timeFormat!=null){config._isValid=false;return}if(match[4]){if(tzRegex.exec(match[4])){tzFormat=\"Z\"}else{config._isValid=false;return}}config._f=dateFormat+(timeFormat||\"\")+(tzFormat||\"\");configFromStringAndFormat(config)}else{config._isValid=false}}var rfc2822=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/;function extractFromRFC2822Strings(yearStr,monthStr,dayStr,hourStr,minuteStr,secondStr){var result=[untruncateYear(yearStr),defaultLocaleMonthsShort.indexOf(monthStr),parseInt(dayStr,10),parseInt(hourStr,10),parseInt(minuteStr,10)];if(secondStr){result.push(parseInt(secondStr,10))}return result}function untruncateYear(yearStr){var year=parseInt(yearStr,10);if(year<=49){return 2e3+year}else if(year<=999){return 1900+year}return year}function preprocessRFC2822(s){return s.replace(/\\([^)]*\\)|[\\n\\t]/g,\" \").replace(/(\\s\\s+)/g,\" \").trim()}function checkWeekday(weekdayStr,parsedInput,config){if(weekdayStr){var weekdayProvided=defaultLocaleWeekdaysShort.indexOf(weekdayStr),weekdayActual=new Date(parsedInput[0],parsedInput[1],parsedInput[2]).getDay();if(weekdayProvided!==weekdayActual){getParsingFlags(config).weekdayMismatch=true;config._isValid=false;return false}}return true}var obsOffsets={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function calculateOffset(obsOffset,militaryOffset,numOffset){if(obsOffset){return obsOffsets[obsOffset]}else if(militaryOffset){return 0}else{var hm=parseInt(numOffset,10);var m=hm%100,h=(hm-m)/100;return h*60+m}}function configFromRFC2822(config){var match=rfc2822.exec(preprocessRFC2822(config._i));if(match){var parsedArray=extractFromRFC2822Strings(match[4],match[3],match[2],match[5],match[6],match[7]);if(!checkWeekday(match[1],parsedArray,config)){return}config._a=parsedArray;config._tzm=calculateOffset(match[8],match[9],match[10]);config._d=createUTCDate.apply(null,config._a);config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm);getParsingFlags(config).rfc2822=true}else{config._isValid=false}}function configFromString(config){var matched=aspNetJsonRegex.exec(config._i);if(matched!==null){config._d=new Date(+matched[1]);return}configFromISO(config);if(config._isValid===false){delete config._isValid}else{return}configFromRFC2822(config);if(config._isValid===false){delete config._isValid}else{return}hooks.createFromInputFallback(config)}hooks.createFromInputFallback=deprecate(\"value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), \"+\"which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are \"+\"discouraged and will be removed in an upcoming major release. Please refer to \"+\"http://momentjs.com/guides/#/warnings/js-date/ for more info.\",function(config){config._d=new Date(config._i+(config._useUTC?\" UTC\":\"\"))});hooks.ISO_8601=function(){};hooks.RFC_2822=function(){};function configFromStringAndFormat(config){if(config._f===hooks.ISO_8601){configFromISO(config);return}if(config._f===hooks.RFC_2822){configFromRFC2822(config);return}config._a=[];getParsingFlags(config).empty=true\n;var string=\"\"+config._i,i,parsedInput,tokens,token,skipped,stringLength=string.length,totalParsedInputLength=0;tokens=expandFormat(config._f,config._locale).match(formattingTokens)||[];for(i=0;i<tokens.length;i++){token=tokens[i];parsedInput=(string.match(getParseRegexForToken(token,config))||[])[0];if(parsedInput){skipped=string.substr(0,string.indexOf(parsedInput));if(skipped.length>0){getParsingFlags(config).unusedInput.push(skipped)}string=string.slice(string.indexOf(parsedInput)+parsedInput.length);totalParsedInputLength+=parsedInput.length}if(formatTokenFunctions[token]){if(parsedInput){getParsingFlags(config).empty=false}else{getParsingFlags(config).unusedTokens.push(token)}addTimeToArrayFromToken(token,parsedInput,config)}else if(config._strict&&!parsedInput){getParsingFlags(config).unusedTokens.push(token)}}getParsingFlags(config).charsLeftOver=stringLength-totalParsedInputLength;if(string.length>0){getParsingFlags(config).unusedInput.push(string)}if(config._a[HOUR]<=12&&getParsingFlags(config).bigHour===true&&config._a[HOUR]>0){getParsingFlags(config).bigHour=undefined}getParsingFlags(config).parsedDateParts=config._a.slice(0);getParsingFlags(config).meridiem=config._meridiem;config._a[HOUR]=meridiemFixWrap(config._locale,config._a[HOUR],config._meridiem);configFromArray(config);checkOverflow(config)}function meridiemFixWrap(locale,hour,meridiem){var isPm;if(meridiem==null){return hour}if(locale.meridiemHour!=null){return locale.meridiemHour(hour,meridiem)}else if(locale.isPM!=null){isPm=locale.isPM(meridiem);if(isPm&&hour<12){hour+=12}if(!isPm&&hour===12){hour=0}return hour}else{return hour}}function configFromStringAndArray(config){var tempConfig,bestMoment,scoreToBeat,i,currentScore;if(config._f.length===0){getParsingFlags(config).invalidFormat=true;config._d=new Date(NaN);return}for(i=0;i<config._f.length;i++){currentScore=0;tempConfig=copyConfig({},config);if(config._useUTC!=null){tempConfig._useUTC=config._useUTC}tempConfig._f=config._f[i];configFromStringAndFormat(tempConfig);if(!isValid(tempConfig)){continue}currentScore+=getParsingFlags(tempConfig).charsLeftOver;currentScore+=getParsingFlags(tempConfig).unusedTokens.length*10;getParsingFlags(tempConfig).score=currentScore;if(scoreToBeat==null||currentScore<scoreToBeat){scoreToBeat=currentScore;bestMoment=tempConfig}}extend(config,bestMoment||tempConfig)}function configFromObject(config){if(config._d){return}var i=normalizeObjectUnits(config._i);config._a=map([i.year,i.month,i.day||i.date,i.hour,i.minute,i.second,i.millisecond],function(obj){return obj&&parseInt(obj,10)});configFromArray(config)}function createFromConfig(config){var res=new Moment(checkOverflow(prepareConfig(config)));if(res._nextDay){res.add(1,\"d\");res._nextDay=undefined}return res}function prepareConfig(config){var input=config._i,format=config._f;config._locale=config._locale||getLocale(config._l);if(input===null||format===undefined&&input===\"\"){return createInvalid({nullInput:true})}if(typeof input===\"string\"){config._i=input=config._locale.preparse(input)}if(isMoment(input)){return new Moment(checkOverflow(input))}else if(isDate(input)){config._d=input}else if(isArray(format)){configFromStringAndArray(config)}else if(format){configFromStringAndFormat(config)}else{configFromInput(config)}if(!isValid(config)){config._d=null}return config}function configFromInput(config){var input=config._i;if(isUndefined(input)){config._d=new Date(hooks.now())}else if(isDate(input)){config._d=new Date(input.valueOf())}else if(typeof input===\"string\"){configFromString(config)}else if(isArray(input)){config._a=map(input.slice(0),function(obj){return parseInt(obj,10)});configFromArray(config)}else if(isObject(input)){configFromObject(config)}else if(isNumber(input)){config._d=new Date(input)}else{hooks.createFromInputFallback(config)}}function createLocalOrUTC(input,format,locale,strict,isUTC){var c={};if(locale===true||locale===false){strict=locale;locale=undefined}if(isObject(input)&&isObjectEmpty(input)||isArray(input)&&input.length===0){input=undefined}c._isAMomentObject=true;c._useUTC=c._isUTC=isUTC;c._l=locale;c._i=input;c._f=format;c._strict=strict;return createFromConfig(c)}function createLocal(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,false)}var prototypeMin=deprecate(\"moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other<this?this:other}else{return createInvalid()}});var prototypeMax=deprecate(\"moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other>this?this:other}else{return createInvalid()}});function pickBy(fn,moments){var res,i;if(moments.length===1&&isArray(moments[0])){moments=moments[0]}if(!moments.length){return createLocal()}res=moments[0];for(i=1;i<moments.length;++i){if(!moments[i].isValid()||moments[i][fn](res)){res=moments[i]}}return res}function min(){var args=[].slice.call(arguments,0);return pickBy(\"isBefore\",args)}function max(){var args=[].slice.call(arguments,0);return pickBy(\"isAfter\",args)}var now=function(){return Date.now?Date.now():+new Date};var ordering=[\"year\",\"quarter\",\"month\",\"week\",\"day\",\"hour\",\"minute\",\"second\",\"millisecond\"];function isDurationValid(m){for(var key in m){if(!(indexOf.call(ordering,key)!==-1&&(m[key]==null||!isNaN(m[key])))){return false}}var unitHasDecimal=false;for(var i=0;i<ordering.length;++i){if(m[ordering[i]]){if(unitHasDecimal){return false}if(parseFloat(m[ordering[i]])!==toInt(m[ordering[i]])){unitHasDecimal=true}}}return true}function isValid$1(){return this._isValid}function createInvalid$1(){return createDuration(NaN)}function Duration(duration){var normalizedInput=normalizeObjectUnits(duration),years=normalizedInput.year||0,quarters=normalizedInput.quarter||0,months=normalizedInput.month||0,weeks=normalizedInput.week||0,days=normalizedInput.day||0,hours=normalizedInput.hour||0,minutes=normalizedInput.minute||0,seconds=normalizedInput.second||0,milliseconds=normalizedInput.millisecond||0;this._isValid=isDurationValid(normalizedInput);this._milliseconds=+milliseconds+seconds*1e3+minutes*6e4+hours*1e3*60*60;this._days=+days+weeks*7;this._months=+months+quarters*3+years*12;this._data={};this._locale=getLocale();this._bubble()}function isDuration(obj){return obj instanceof Duration}function absRound(number){if(number<0){return Math.round(-1*number)*-1}else{return Math.round(number)}}function offset(token,separator){addFormatToken(token,0,0,function(){var offset=this.utcOffset();var sign=\"+\";if(offset<0){offset=-offset;sign=\"-\"}return sign+zeroFill(~~(offset/60),2)+separator+zeroFill(~~offset%60,2)})}offset(\"Z\",\":\");offset(\"ZZ\",\"\");addRegexToken(\"Z\",matchShortOffset);addRegexToken(\"ZZ\",matchShortOffset);addParseToken([\"Z\",\"ZZ\"],function(input,array,config){config._useUTC=true;config._tzm=offsetFromString(matchShortOffset,input)});var chunkOffset=/([\\+\\-]|\\d\\d)/gi;function offsetFromString(matcher,string){var matches=(string||\"\").match(matcher);if(matches===null){return null}var chunk=matches[matches.length-1]||[];var parts=(chunk+\"\").match(chunkOffset)||[\"-\",0,0];var minutes=+(parts[1]*60)+toInt(parts[2]);return minutes===0?0:parts[0]===\"+\"?minutes:-minutes}function cloneWithOffset(input,model){var res,diff;if(model._isUTC){res=model.clone();diff=(isMoment(input)||isDate(input)?input.valueOf():createLocal(input).valueOf())-res.valueOf();res._d.setTime(res._d.valueOf()+diff);hooks.updateOffset(res,false);return res}else{return createLocal(input).local()}}function getDateOffset(m){return-Math.round(m._d.getTimezoneOffset()/15)*15}hooks.updateOffset=function(){};function getSetOffset(input,keepLocalTime,keepMinutes){var offset=this._offset||0,localAdjust;if(!this.isValid()){return input!=null?this:NaN}if(input!=null){if(typeof input===\"string\"){input=offsetFromString(matchShortOffset,input);if(input===null){return this}}else if(Math.abs(input)<16&&!keepMinutes){input=input*60}if(!this._isUTC&&keepLocalTime){localAdjust=getDateOffset(this)}this._offset=input;this._isUTC=true;if(localAdjust!=null){this.add(localAdjust,\"m\")}if(offset!==input){if(!keepLocalTime||this._changeInProgress){addSubtract(this,createDuration(input-offset,\"m\"),1,false)}else if(!this._changeInProgress){this._changeInProgress=true;hooks.updateOffset(this,true);this._changeInProgress=null}}return this}else{return this._isUTC?offset:getDateOffset(this)}}function getSetZone(input,keepLocalTime){if(input!=null){if(typeof input!==\"string\"){input=-input}this.utcOffset(input,keepLocalTime);return this}else{return-this.utcOffset()}}function setOffsetToUTC(keepLocalTime){return this.utcOffset(0,keepLocalTime)}function setOffsetToLocal(keepLocalTime){if(this._isUTC){this.utcOffset(0,keepLocalTime);this._isUTC=false;if(keepLocalTime){this.subtract(getDateOffset(this),\"m\")}}return this}function setOffsetToParsedOffset(){if(this._tzm!=null){this.utcOffset(this._tzm,false,true)}else if(typeof this._i===\"string\"){var tZone=offsetFromString(matchOffset,this._i);if(tZone!=null){this.utcOffset(tZone)}else{this.utcOffset(0,true)}}return this}function hasAlignedHourOffset(input){if(!this.isValid()){return false}input=input?createLocal(input).utcOffset():0;return(this.utcOffset()-input)%60===0}function isDaylightSavingTime(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function isDaylightSavingTimeShifted(){if(!isUndefined(this._isDSTShifted)){return this._isDSTShifted}var c={};copyConfig(c,this);c=prepareConfig(c);if(c._a){var other=c._isUTC?createUTC(c._a):createLocal(c._a);this._isDSTShifted=this.isValid()&&compareArrays(c._a,other.toArray())>0}else{this._isDSTShifted=false}return this._isDSTShifted}function isLocal(){return this.isValid()?!this._isUTC:false}function isUtcOffset(){return this.isValid()?this._isUTC:false}function isUtc(){return this.isValid()?this._isUTC&&this._offset===0:false}var aspNetRegex=/^(\\-|\\+)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/;var isoRegex=/^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function createDuration(input,key){var duration=input,match=null,sign,ret,diffRes;if(isDuration(input)){duration={ms:input._milliseconds,d:input._days,M:input._months}}else if(isNumber(input)){duration={};if(key){duration[key]=input}else{duration.milliseconds=input}}else if(!!(match=aspNetRegex.exec(input))){sign=match[1]===\"-\"?-1:1;duration={y:0,d:toInt(match[DATE])*sign,h:toInt(match[HOUR])*sign,m:toInt(match[MINUTE])*sign,s:toInt(match[SECOND])*sign,ms:toInt(absRound(match[MILLISECOND]*1e3))*sign}}else if(!!(match=isoRegex.exec(input))){sign=match[1]===\"-\"?-1:match[1]===\"+\"?1:1;duration={y:parseIso(match[2],sign),M:parseIso(match[3],sign),w:parseIso(match[4],sign),d:parseIso(match[5],sign),h:parseIso(match[6],sign),m:parseIso(match[7],sign),s:parseIso(match[8],sign)}}else if(duration==null){duration={}}else if(typeof duration===\"object\"&&(\"from\"in duration||\"to\"in duration)){diffRes=momentsDifference(createLocal(duration.from),createLocal(duration.to));duration={};duration.ms=diffRes.milliseconds;duration.M=diffRes.months}ret=new Duration(duration);if(isDuration(input)&&hasOwnProp(input,\"_locale\")){ret._locale=input._locale}return ret}createDuration.fn=Duration.prototype;createDuration.invalid=createInvalid$1;function parseIso(inp,sign){var res=inp&&parseFloat(inp.replace(\",\",\".\"));return(isNaN(res)?0:res)*sign}function positiveMomentsDifference(base,other){var res={milliseconds:0,months:0};res.months=other.month()-base.month()+(other.year()-base.year())*12;if(base.clone().add(res.months,\"M\").isAfter(other)){--res.months}res.milliseconds=+other-+base.clone().add(res.months,\"M\");return res}function momentsDifference(base,other){var res;if(!(base.isValid()&&other.isValid())){return{milliseconds:0,months:0}}other=cloneWithOffset(other,base);if(base.isBefore(other)){res=positiveMomentsDifference(base,other)}else{res=positiveMomentsDifference(other,base);res.milliseconds=-res.milliseconds;res.months=-res.months}return res}function createAdder(direction,name){return function(val,period){var dur,tmp;if(period!==null&&!isNaN(+period)){deprecateSimple(name,\"moment().\"+name+\"(period, number) is deprecated. Please use moment().\"+name+\"(number, period). \"+\"See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.\");tmp=val;val=period;period=tmp}val=typeof val===\"string\"?+val:val;dur=createDuration(val,period);addSubtract(this,dur,direction);return this}}function addSubtract(mom,duration,isAdding,updateOffset){var milliseconds=duration._milliseconds,days=absRound(duration._days),months=absRound(duration._months);if(!mom.isValid()){return}updateOffset=updateOffset==null?true:updateOffset;if(months){setMonth(mom,get(mom,\"Month\")+months*isAdding)}if(days){set$1(mom,\"Date\",get(mom,\"Date\")+days*isAdding)}if(milliseconds){mom._d.setTime(mom._d.valueOf()+milliseconds*isAdding)}if(updateOffset){hooks.updateOffset(mom,days||months)}}var add=createAdder(1,\"add\");var subtract=createAdder(-1,\"subtract\");function getCalendarFormat(myMoment,now){var diff=myMoment.diff(now,\"days\",true);return diff<-6?\"sameElse\":diff<-1?\"lastWeek\":diff<0?\"lastDay\":diff<1?\"sameDay\":diff<2?\"nextDay\":diff<7?\"nextWeek\":\"sameElse\"}function calendar$1(time,formats){var now=time||createLocal(),sod=cloneWithOffset(now,this).startOf(\"day\"),format=hooks.calendarFormat(this,sod)||\"sameElse\";var output=formats&&(isFunction(formats[format])?formats[format].call(this,now):formats[format]);return this.format(output||this.localeData().calendar(format,this,createLocal(now)))}function clone(){return new Moment(this)}function isAfter(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(!isUndefined(units)?units:\"millisecond\");if(units===\"millisecond\"){return this.valueOf()>localInput.valueOf()}else{return localInput.valueOf()<this.clone().startOf(units).valueOf()}}function isBefore(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(!isUndefined(units)?units:\"millisecond\");if(units===\"millisecond\"){return this.valueOf()<localInput.valueOf()}else{return this.clone().endOf(units).valueOf()<localInput.valueOf()}}function isBetween(from,to,units,inclusivity){inclusivity=inclusivity||\"()\";return(inclusivity[0]===\"(\"?this.isAfter(from,units):!this.isBefore(from,units))&&(inclusivity[1]===\")\"?this.isBefore(to,units):!this.isAfter(to,units))}function isSame(input,units){var localInput=isMoment(input)?input:createLocal(input),inputMs;if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(units||\"millisecond\");if(units===\"millisecond\"){return this.valueOf()===localInput.valueOf()}else{inputMs=localInput.valueOf();return this.clone().startOf(units).valueOf()<=inputMs&&inputMs<=this.clone().endOf(units).valueOf()}}function isSameOrAfter(input,units){return this.isSame(input,units)||this.isAfter(input,units)}function isSameOrBefore(input,units){return this.isSame(input,units)||this.isBefore(input,units)}function diff(input,units,asFloat){var that,zoneDelta,delta,output;if(!this.isValid()){return NaN}that=cloneWithOffset(input,this);if(!that.isValid()){return NaN}zoneDelta=(that.utcOffset()-this.utcOffset())*6e4;units=normalizeUnits(units);switch(units){case\"year\":output=monthDiff(this,that)/12;break;case\"month\":output=monthDiff(this,that);break;case\"quarter\":output=monthDiff(this,that)/3;break;case\"second\":output=(this-that)/1e3;break;case\"minute\":output=(this-that)/6e4;break;case\"hour\":output=(this-that)/36e5;break;case\"day\":output=(this-that-zoneDelta)/864e5;break;case\"week\":output=(this-that-zoneDelta)/6048e5;break;default:output=this-that}return asFloat?output:absFloor(output)}function monthDiff(a,b){var wholeMonthDiff=(b.year()-a.year())*12+(b.month()-a.month()),anchor=a.clone().add(wholeMonthDiff,\"months\"),anchor2,adjust;if(b-anchor<0){anchor2=a.clone().add(wholeMonthDiff-1,\"months\");adjust=(b-anchor)/(anchor-anchor2)}else{anchor2=a.clone().add(wholeMonthDiff+1,\"months\");adjust=(b-anchor)/(anchor2-anchor)}return-(wholeMonthDiff+adjust)||0}hooks.defaultFormat=\"YYYY-MM-DDTHH:mm:ssZ\";hooks.defaultFormatUtc=\"YYYY-MM-DDTHH:mm:ss[Z]\";function toString(){return this.clone().locale(\"en\").format(\"ddd MMM DD YYYY HH:mm:ss [GMT]ZZ\")}function toISOString(){if(!this.isValid()){return null}var m=this.clone().utc();if(m.year()<0||m.year()>9999){return formatMoment(m,\"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]\")}if(isFunction(Date.prototype.toISOString)){return this.toDate().toISOString()}return formatMoment(m,\"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]\")}function inspect(){if(!this.isValid()){return\"moment.invalid(/* \"+this._i+\" */)\"}var func=\"moment\";var zone=\"\";if(!this.isLocal()){func=this.utcOffset()===0?\"moment.utc\":\"moment.parseZone\";zone=\"Z\"}var prefix=\"[\"+func+'(\"]';var year=0<=this.year()&&this.year()<=9999?\"YYYY\":\"YYYYYY\";var datetime=\"-MM-DD[T]HH:mm:ss.SSS\";var suffix=zone+'[\")]';return this.format(prefix+year+datetime+suffix)}function format(inputString){if(!inputString){inputString=this.isUtc()?hooks.defaultFormatUtc:hooks.defaultFormat}var output=formatMoment(this,inputString);return this.localeData().postformat(output)}function from(time,withoutSuffix){if(this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())){return createDuration({to:this,from:time}).locale(this.locale()).humanize(!withoutSuffix)}else{return this.localeData().invalidDate()}}function fromNow(withoutSuffix){return this.from(createLocal(),withoutSuffix)}function to(time,withoutSuffix){if(this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())){return createDuration({from:this,to:time}).locale(this.locale()).humanize(!withoutSuffix)}else{return this.localeData().invalidDate()}}function toNow(withoutSuffix){return this.to(createLocal(),withoutSuffix)}function locale(key){var newLocaleData;if(key===undefined){return this._locale._abbr}else{newLocaleData=getLocale(key);if(newLocaleData!=null){this._locale=newLocaleData}return this}}var lang=deprecate(\"moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.\",function(key){if(key===undefined){return this.localeData()}else{return this.locale(key)}});function localeData(){return this._locale}function startOf(units){units=normalizeUnits(units);switch(units){case\"year\":this.month(0);case\"quarter\":case\"month\":this.date(1);case\"week\":case\"isoWeek\":case\"day\":case\"date\":this.hours(0);case\"hour\":this.minutes(0);case\"minute\":this.seconds(0);case\"second\":this.milliseconds(0)}if(units===\"week\"){this.weekday(0)}if(units===\"isoWeek\"){this.isoWeekday(1)}if(units===\"quarter\"){this.month(Math.floor(this.month()/3)*3)}return this}function endOf(units){units=normalizeUnits(units);if(units===undefined||units===\"millisecond\"){return this}if(units===\"date\"){units=\"day\"}return this.startOf(units).add(1,units===\"isoWeek\"?\"week\":units).subtract(1,\"ms\")}function valueOf(){return this._d.valueOf()-(this._offset||0)*6e4}function unix(){return Math.floor(this.valueOf()/1e3)}function toDate(){return new Date(this.valueOf())}function toArray(){var m=this;return[m.year(),m.month(),m.date(),m.hour(),m.minute(),m.second(),m.millisecond()]}function toObject(){var m=this;return{years:m.year(),months:m.month(),date:m.date(),hours:m.hours(),minutes:m.minutes(),seconds:m.seconds(),milliseconds:m.milliseconds()}}function toJSON(){return this.isValid()?this.toISOString():null}function isValid$2(){return isValid(this)}function parsingFlags(){return extend({},getParsingFlags(this))}function invalidAt(){return getParsingFlags(this).overflow}function creationData(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}addFormatToken(0,[\"gg\",2],0,function(){return this.weekYear()%100});addFormatToken(0,[\"GG\",2],0,function(){return this.isoWeekYear()%100});function addWeekYearFormatToken(token,getter){addFormatToken(0,[token,token.length],0,getter)}addWeekYearFormatToken(\"gggg\",\"weekYear\");addWeekYearFormatToken(\"ggggg\",\"weekYear\");addWeekYearFormatToken(\"GGGG\",\"isoWeekYear\");addWeekYearFormatToken(\"GGGGG\",\"isoWeekYear\");addUnitAlias(\"weekYear\",\"gg\");addUnitAlias(\"isoWeekYear\",\"GG\");addUnitPriority(\"weekYear\",1);addUnitPriority(\"isoWeekYear\",1);addRegexToken(\"G\",matchSigned);addRegexToken(\"g\",matchSigned);addRegexToken(\"GG\",match1to2,match2);addRegexToken(\"gg\",match1to2,match2);addRegexToken(\"GGGG\",match1to4,match4);addRegexToken(\"gggg\",match1to4,match4);addRegexToken(\"GGGGG\",match1to6,match6);addRegexToken(\"ggggg\",match1to6,match6);addWeekParseToken([\"gggg\",\"ggggg\",\"GGGG\",\"GGGGG\"],function(input,week,config,token){week[token.substr(0,2)]=toInt(input)});addWeekParseToken([\"gg\",\"GG\"],function(input,week,config,token){week[token]=hooks.parseTwoDigitYear(input)});function getSetWeekYear(input){return getSetWeekYearHelper.call(this,input,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function getSetISOWeekYear(input){return getSetWeekYearHelper.call(this,input,this.isoWeek(),this.isoWeekday(),1,4)}function getISOWeeksInYear(){return weeksInYear(this.year(),1,4)}function getWeeksInYear(){var weekInfo=this.localeData()._week;return weeksInYear(this.year(),weekInfo.dow,weekInfo.doy)}function getSetWeekYearHelper(input,week,weekday,dow,doy){var weeksTarget;if(input==null){return weekOfYear(this,dow,doy).year}else{weeksTarget=weeksInYear(input,dow,doy);if(week>weeksTarget){week=weeksTarget}return setWeekAll.call(this,input,week,weekday,dow,doy)}}function setWeekAll(weekYear,week,weekday,dow,doy){var dayOfYearData=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy),date=createUTCDate(dayOfYearData.year,0,dayOfYearData.dayOfYear);this.year(date.getUTCFullYear());this.month(date.getUTCMonth());this.date(date.getUTCDate());return this}addFormatToken(\"Q\",0,\"Qo\",\"quarter\");addUnitAlias(\"quarter\",\"Q\");addUnitPriority(\"quarter\",7);addRegexToken(\"Q\",match1);addParseToken(\"Q\",function(input,array){array[MONTH]=(toInt(input)-1)*3});function getSetQuarter(input){return input==null?Math.ceil((this.month()+1)/3):this.month((input-1)*3+this.month()%3)}addFormatToken(\"D\",[\"DD\",2],\"Do\",\"date\");addUnitAlias(\"date\",\"D\");addUnitPriority(\"date\",9);addRegexToken(\"D\",match1to2);addRegexToken(\"DD\",match1to2,match2);addRegexToken(\"Do\",function(isStrict,locale){return isStrict?locale._dayOfMonthOrdinalParse||locale._ordinalParse:locale._dayOfMonthOrdinalParseLenient});addParseToken([\"D\",\"DD\"],DATE);addParseToken(\"Do\",function(input,array){array[DATE]=toInt(input.match(match1to2)[0],10)});var getSetDayOfMonth=makeGetSet(\"Date\",true);addFormatToken(\"DDD\",[\"DDDD\",3],\"DDDo\",\"dayOfYear\");addUnitAlias(\"dayOfYear\",\"DDD\");addUnitPriority(\"dayOfYear\",4);addRegexToken(\"DDD\",match1to3);addRegexToken(\"DDDD\",match3);addParseToken([\"DDD\",\"DDDD\"],function(input,array,config){config._dayOfYear=toInt(input)});function getSetDayOfYear(input){var dayOfYear=Math.round((this.clone().startOf(\"day\")-this.clone().startOf(\"year\"))/864e5)+1;return input==null?dayOfYear:this.add(input-dayOfYear,\"d\")}addFormatToken(\"m\",[\"mm\",2],0,\"minute\");addUnitAlias(\"minute\",\"m\");addUnitPriority(\"minute\",14);addRegexToken(\"m\",match1to2);addRegexToken(\"mm\",match1to2,match2);addParseToken([\"m\",\"mm\"],MINUTE);var getSetMinute=makeGetSet(\"Minutes\",false);addFormatToken(\"s\",[\"ss\",2],0,\"second\");addUnitAlias(\"second\",\"s\");addUnitPriority(\"second\",15);addRegexToken(\"s\",match1to2);addRegexToken(\"ss\",match1to2,match2);addParseToken([\"s\",\"ss\"],SECOND);var getSetSecond=makeGetSet(\"Seconds\",false);addFormatToken(\"S\",0,0,function(){return~~(this.millisecond()/100)});addFormatToken(0,[\"SS\",2],0,function(){return~~(this.millisecond()/10)});addFormatToken(0,[\"SSS\",3],0,\"millisecond\");addFormatToken(0,[\"SSSS\",4],0,function(){return this.millisecond()*10});addFormatToken(0,[\"SSSSS\",5],0,function(){return this.millisecond()*100});addFormatToken(0,[\"SSSSSS\",6],0,function(){return this.millisecond()*1e3});addFormatToken(0,[\"SSSSSSS\",7],0,function(){return this.millisecond()*1e4});addFormatToken(0,[\"SSSSSSSS\",8],0,function(){return this.millisecond()*1e5});addFormatToken(0,[\"SSSSSSSSS\",9],0,function(){return this.millisecond()*1e6});addUnitAlias(\"millisecond\",\"ms\");addUnitPriority(\"millisecond\",16);addRegexToken(\"S\",match1to3,match1);addRegexToken(\"SS\",match1to3,match2);addRegexToken(\"SSS\",match1to3,match3);var token;for(token=\"SSSS\";token.length<=9;token+=\"S\"){addRegexToken(token,matchUnsigned)}function parseMs(input,array){array[MILLISECOND]=toInt((\"0.\"+input)*1e3)}for(token=\"S\";token.length<=9;token+=\"S\"){addParseToken(token,parseMs)}var getSetMillisecond=makeGetSet(\"Milliseconds\",false);addFormatToken(\"z\",0,0,\"zoneAbbr\");addFormatToken(\"zz\",0,0,\"zoneName\");function getZoneAbbr(){return this._isUTC?\"UTC\":\"\"}function getZoneName(){return this._isUTC?\"Coordinated Universal Time\":\"\"}var proto=Moment.prototype;proto.add=add;proto.calendar=calendar$1;proto.clone=clone;proto.diff=diff;proto.endOf=endOf;proto.format=format;proto.from=from;proto.fromNow=fromNow;proto.to=to;proto.toNow=toNow;proto.get=stringGet;proto.invalidAt=invalidAt;proto.isAfter=isAfter;proto.isBefore=isBefore;proto.isBetween=isBetween;proto.isSame=isSame;proto.isSameOrAfter=isSameOrAfter;proto.isSameOrBefore=isSameOrBefore;proto.isValid=isValid$2;proto.lang=lang;proto.locale=locale;proto.localeData=localeData;proto.max=prototypeMax;proto.min=prototypeMin;proto.parsingFlags=parsingFlags;proto.set=stringSet;proto.startOf=startOf;proto.subtract=subtract;proto.toArray=toArray;proto.toObject=toObject;proto.toDate=toDate;proto.toISOString=toISOString;proto.inspect=inspect;proto.toJSON=toJSON;proto.toString=toString;proto.unix=unix;proto.valueOf=valueOf;proto.creationData=creationData;proto.year=getSetYear;proto.isLeapYear=getIsLeapYear;proto.weekYear=getSetWeekYear;proto.isoWeekYear=getSetISOWeekYear;proto.quarter=proto.quarters=getSetQuarter;proto.month=getSetMonth;proto.daysInMonth=getDaysInMonth;proto.week=proto.weeks=getSetWeek;proto.isoWeek=proto.isoWeeks=getSetISOWeek;proto.weeksInYear=getWeeksInYear;proto.isoWeeksInYear=getISOWeeksInYear;proto.date=getSetDayOfMonth;proto.day=proto.days=getSetDayOfWeek;proto.weekday=getSetLocaleDayOfWeek;proto.isoWeekday=getSetISODayOfWeek;proto.dayOfYear=getSetDayOfYear;proto.hour=proto.hours=getSetHour;proto.minute=proto.minutes=getSetMinute;proto.second=proto.seconds=getSetSecond;proto.millisecond=proto.milliseconds=getSetMillisecond;proto.utcOffset=getSetOffset;proto.utc=setOffsetToUTC;proto.local=setOffsetToLocal;proto.parseZone=setOffsetToParsedOffset;proto.hasAlignedHourOffset=hasAlignedHourOffset;proto.isDST=isDaylightSavingTime;proto.isLocal=isLocal;proto.isUtcOffset=isUtcOffset;proto.isUtc=isUtc;proto.isUTC=isUtc;proto.zoneAbbr=getZoneAbbr;proto.zoneName=getZoneName;proto.dates=deprecate(\"dates accessor is deprecated. Use date instead.\",getSetDayOfMonth);proto.months=deprecate(\"months accessor is deprecated. Use month instead\",getSetMonth);proto.years=deprecate(\"years accessor is deprecated. Use year instead\",getSetYear);proto.zone=deprecate(\"moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/\",getSetZone);proto.isDSTShifted=deprecate(\"isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information\",isDaylightSavingTimeShifted);function createUnix(input){return createLocal(input*1e3)}function createInZone(){return createLocal.apply(null,arguments).parseZone()}function preParsePostFormat(string){return string}var proto$1=Locale.prototype;proto$1.calendar=calendar;proto$1.longDateFormat=longDateFormat;proto$1.invalidDate=invalidDate;proto$1.ordinal=ordinal;proto$1.preparse=preParsePostFormat;proto$1.postformat=preParsePostFormat;proto$1.relativeTime=relativeTime;proto$1.pastFuture=pastFuture;proto$1.set=set;proto$1.months=localeMonths;proto$1.monthsShort=localeMonthsShort;proto$1.monthsParse=localeMonthsParse;proto$1.monthsRegex=monthsRegex;proto$1.monthsShortRegex=monthsShortRegex;proto$1.week=localeWeek;proto$1.firstDayOfYear=localeFirstDayOfYear;proto$1.firstDayOfWeek=localeFirstDayOfWeek;proto$1.weekdays=localeWeekdays;proto$1.weekdaysMin=localeWeekdaysMin;proto$1.weekdaysShort=localeWeekdaysShort;proto$1.weekdaysParse=localeWeekdaysParse;proto$1.weekdaysRegex=weekdaysRegex;proto$1.weekdaysShortRegex=weekdaysShortRegex;proto$1.weekdaysMinRegex=weekdaysMinRegex;proto$1.isPM=localeIsPM;proto$1.meridiem=localeMeridiem;function get$1(format,index,field,setter){var locale=getLocale();var utc=createUTC().set(setter,index);return locale[field](utc,format)}function listMonthsImpl(format,index,field){if(isNumber(format)){index=format;format=undefined}format=format||\"\";if(index!=null){return get$1(format,index,field,\"month\")}var i;var out=[];for(i=0;i<12;i++){out[i]=get$1(format,i,field,\"month\")}return out}function listWeekdaysImpl(localeSorted,format,index,field){if(typeof localeSorted===\"boolean\"){if(isNumber(format)){index=format;format=undefined}format=format||\"\"}else{format=localeSorted;index=format;localeSorted=false;if(isNumber(format)){index=format;format=undefined}format=format||\"\"}var locale=getLocale(),shift=localeSorted?locale._week.dow:0;if(index!=null){return get$1(format,(index+shift)%7,field,\"day\")}var i;var out=[];for(i=0;i<7;i++){out[i]=get$1(format,(i+shift)%7,field,\"day\")}return out}function listMonths(format,index){return listMonthsImpl(format,index,\"months\")}function listMonthsShort(format,index){return listMonthsImpl(format,index,\"monthsShort\")}function listWeekdays(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdays\")}function listWeekdaysShort(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdaysShort\")}function listWeekdaysMin(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdaysMin\")}getSetGlobalLocale(\"en\",{dayOfMonthOrdinalParse:/\\d{1,2}(th|st|nd|rd)/,ordinal:function(number){var b=number%10,output=toInt(number%100/10)===1?\"th\":b===1?\"st\":b===2?\"nd\":b===3?\"rd\":\"th\";return number+output}});hooks.lang=deprecate(\"moment.lang is deprecated. Use moment.locale instead.\",getSetGlobalLocale);hooks.langData=deprecate(\"moment.langData is deprecated. Use moment.localeData instead.\",getLocale);var mathAbs=Math.abs;function abs(){var data=this._data;this._milliseconds=mathAbs(this._milliseconds);this._days=mathAbs(this._days);this._months=mathAbs(this._months);data.milliseconds=mathAbs(data.milliseconds);data.seconds=mathAbs(data.seconds);data.minutes=mathAbs(data.minutes);data.hours=mathAbs(data.hours);data.months=mathAbs(data.months);data.years=mathAbs(data.years);return this}function addSubtract$1(duration,input,value,direction){var other=createDuration(input,value);duration._milliseconds+=direction*other._milliseconds;duration._days+=direction*other._days;duration._months+=direction*other._months;return duration._bubble()}function add$1(input,value){return addSubtract$1(this,input,value,1)}function subtract$1(input,value){return addSubtract$1(this,input,value,-1)}function absCeil(number){if(number<0){return Math.floor(number)}else{return Math.ceil(number)}}function bubble(){var milliseconds=this._milliseconds;var days=this._days;var months=this._months;var data=this._data;var seconds,minutes,hours,years,monthsFromDays;if(!(milliseconds>=0&&days>=0&&months>=0||milliseconds<=0&&days<=0&&months<=0)){milliseconds+=absCeil(monthsToDays(months)+days)*864e5;days=0;months=0}data.milliseconds=milliseconds%1e3;seconds=absFloor(milliseconds/1e3);data.seconds=seconds%60;minutes=absFloor(seconds/60)\n;data.minutes=minutes%60;hours=absFloor(minutes/60);data.hours=hours%24;days+=absFloor(hours/24);monthsFromDays=absFloor(daysToMonths(days));months+=monthsFromDays;days-=absCeil(monthsToDays(monthsFromDays));years=absFloor(months/12);months%=12;data.days=days;data.months=months;data.years=years;return this}function daysToMonths(days){return days*4800/146097}function monthsToDays(months){return months*146097/4800}function as(units){if(!this.isValid()){return NaN}var days;var months;var milliseconds=this._milliseconds;units=normalizeUnits(units);if(units===\"month\"||units===\"year\"){days=this._days+milliseconds/864e5;months=this._months+daysToMonths(days);return units===\"month\"?months:months/12}else{days=this._days+Math.round(monthsToDays(this._months));switch(units){case\"week\":return days/7+milliseconds/6048e5;case\"day\":return days+milliseconds/864e5;case\"hour\":return days*24+milliseconds/36e5;case\"minute\":return days*1440+milliseconds/6e4;case\"second\":return days*86400+milliseconds/1e3;case\"millisecond\":return Math.floor(days*864e5)+milliseconds;default:throw new Error(\"Unknown unit \"+units)}}}function valueOf$1(){if(!this.isValid()){return NaN}return this._milliseconds+this._days*864e5+this._months%12*2592e6+toInt(this._months/12)*31536e6}function makeAs(alias){return function(){return this.as(alias)}}var asMilliseconds=makeAs(\"ms\");var asSeconds=makeAs(\"s\");var asMinutes=makeAs(\"m\");var asHours=makeAs(\"h\");var asDays=makeAs(\"d\");var asWeeks=makeAs(\"w\");var asMonths=makeAs(\"M\");var asYears=makeAs(\"y\");function clone$1(){return createDuration(this)}function get$2(units){units=normalizeUnits(units);return this.isValid()?this[units+\"s\"]():NaN}function makeGetter(name){return function(){return this.isValid()?this._data[name]:NaN}}var milliseconds=makeGetter(\"milliseconds\");var seconds=makeGetter(\"seconds\");var minutes=makeGetter(\"minutes\");var hours=makeGetter(\"hours\");var days=makeGetter(\"days\");var months=makeGetter(\"months\");var years=makeGetter(\"years\");function weeks(){return absFloor(this.days()/7)}var round=Math.round;var thresholds={ss:44,s:45,m:45,h:22,d:26,M:11};function substituteTimeAgo(string,number,withoutSuffix,isFuture,locale){return locale.relativeTime(number||1,!!withoutSuffix,string,isFuture)}function relativeTime$1(posNegDuration,withoutSuffix,locale){var duration=createDuration(posNegDuration).abs();var seconds=round(duration.as(\"s\"));var minutes=round(duration.as(\"m\"));var hours=round(duration.as(\"h\"));var days=round(duration.as(\"d\"));var months=round(duration.as(\"M\"));var years=round(duration.as(\"y\"));var a=seconds<=thresholds.ss&&[\"s\",seconds]||seconds<thresholds.s&&[\"ss\",seconds]||minutes<=1&&[\"m\"]||minutes<thresholds.m&&[\"mm\",minutes]||hours<=1&&[\"h\"]||hours<thresholds.h&&[\"hh\",hours]||days<=1&&[\"d\"]||days<thresholds.d&&[\"dd\",days]||months<=1&&[\"M\"]||months<thresholds.M&&[\"MM\",months]||years<=1&&[\"y\"]||[\"yy\",years];a[2]=withoutSuffix;a[3]=+posNegDuration>0;a[4]=locale;return substituteTimeAgo.apply(null,a)}function getSetRelativeTimeRounding(roundingFunction){if(roundingFunction===undefined){return round}if(typeof roundingFunction===\"function\"){round=roundingFunction;return true}return false}function getSetRelativeTimeThreshold(threshold,limit){if(thresholds[threshold]===undefined){return false}if(limit===undefined){return thresholds[threshold]}thresholds[threshold]=limit;if(threshold===\"s\"){thresholds.ss=limit-1}return true}function humanize(withSuffix){if(!this.isValid()){return this.localeData().invalidDate()}var locale=this.localeData();var output=relativeTime$1(this,!withSuffix,locale);if(withSuffix){output=locale.pastFuture(+this,output)}return locale.postformat(output)}var abs$1=Math.abs;function sign(x){return(x>0)-(x<0)||+x}function toISOString$1(){if(!this.isValid()){return this.localeData().invalidDate()}var seconds=abs$1(this._milliseconds)/1e3;var days=abs$1(this._days);var months=abs$1(this._months);var minutes,hours,years;minutes=absFloor(seconds/60);hours=absFloor(minutes/60);seconds%=60;minutes%=60;years=absFloor(months/12);months%=12;var Y=years;var M=months;var D=days;var h=hours;var m=minutes;var s=seconds?seconds.toFixed(3).replace(/\\.?0+$/,\"\"):\"\";var total=this.asSeconds();if(!total){return\"P0D\"}var totalSign=total<0?\"-\":\"\";var ymSign=sign(this._months)!==sign(total)?\"-\":\"\";var daysSign=sign(this._days)!==sign(total)?\"-\":\"\";var hmsSign=sign(this._milliseconds)!==sign(total)?\"-\":\"\";return totalSign+\"P\"+(Y?ymSign+Y+\"Y\":\"\")+(M?ymSign+M+\"M\":\"\")+(D?daysSign+D+\"D\":\"\")+(h||m||s?\"T\":\"\")+(h?hmsSign+h+\"H\":\"\")+(m?hmsSign+m+\"M\":\"\")+(s?hmsSign+s+\"S\":\"\")}var proto$2=Duration.prototype;proto$2.isValid=isValid$1;proto$2.abs=abs;proto$2.add=add$1;proto$2.subtract=subtract$1;proto$2.as=as;proto$2.asMilliseconds=asMilliseconds;proto$2.asSeconds=asSeconds;proto$2.asMinutes=asMinutes;proto$2.asHours=asHours;proto$2.asDays=asDays;proto$2.asWeeks=asWeeks;proto$2.asMonths=asMonths;proto$2.asYears=asYears;proto$2.valueOf=valueOf$1;proto$2._bubble=bubble;proto$2.clone=clone$1;proto$2.get=get$2;proto$2.milliseconds=milliseconds;proto$2.seconds=seconds;proto$2.minutes=minutes;proto$2.hours=hours;proto$2.days=days;proto$2.weeks=weeks;proto$2.months=months;proto$2.years=years;proto$2.humanize=humanize;proto$2.toISOString=toISOString$1;proto$2.toString=toISOString$1;proto$2.toJSON=toISOString$1;proto$2.locale=locale;proto$2.localeData=localeData;proto$2.toIsoString=deprecate(\"toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)\",toISOString$1);proto$2.lang=lang;addFormatToken(\"X\",0,0,\"unix\");addFormatToken(\"x\",0,0,\"valueOf\");addRegexToken(\"x\",matchSigned);addRegexToken(\"X\",matchTimestamp);addParseToken(\"X\",function(input,array,config){config._d=new Date(parseFloat(input,10)*1e3)});addParseToken(\"x\",function(input,array,config){config._d=new Date(toInt(input))});hooks.version=\"2.19.1\";setHookCallback(createLocal);hooks.fn=proto;hooks.min=min;hooks.max=max;hooks.now=now;hooks.utc=createUTC;hooks.unix=createUnix;hooks.months=listMonths;hooks.isDate=isDate;hooks.locale=getSetGlobalLocale;hooks.invalid=createInvalid;hooks.duration=createDuration;hooks.isMoment=isMoment;hooks.weekdays=listWeekdays;hooks.parseZone=createInZone;hooks.localeData=getLocale;hooks.isDuration=isDuration;hooks.monthsShort=listMonthsShort;hooks.weekdaysMin=listWeekdaysMin;hooks.defineLocale=defineLocale;hooks.updateLocale=updateLocale;hooks.locales=listLocales;hooks.weekdaysShort=listWeekdaysShort;hooks.normalizeUnits=normalizeUnits;hooks.relativeTimeRounding=getSetRelativeTimeRounding;hooks.relativeTimeThreshold=getSetRelativeTimeThreshold;hooks.calendarFormat=getCalendarFormat;hooks.prototype=proto;return hooks})}).call(exports,__webpack_require__(155)(module))},function(module,exports){module.exports=function(module){if(!module.webpackPolyfill){module.deprecate=function(){};module.paths=[];if(!module.children)module.children=[];Object.defineProperty(module,\"loaded\",{enumerable:true,get:function(){return module.l}});Object.defineProperty(module,\"id\",{enumerable:true,get:function(){return module.i}});module.webpackPolyfill=1}return module}},function(module,exports){function webpackEmptyContext(req){throw new Error(\"Cannot find module '\"+req+\"'.\")}webpackEmptyContext.keys=function(){return[]};webpackEmptyContext.resolve=webpackEmptyContext;module.exports=webpackEmptyContext;webpackEmptyContext.id=156},function(module,exports,__webpack_require__){\"use strict\";(function(global){var _rng;var globalVar=typeof window!==\"undefined\"?window:typeof global!==\"undefined\"?global:null;if(globalVar&&globalVar.crypto&&crypto.getRandomValues){var _rnds8=new Uint8Array(16);_rng=function whatwgRNG(){crypto.getRandomValues(_rnds8);return _rnds8}}if(!_rng){var _rnds=new Array(16);_rng=function _rng(){for(var i=0,r;i<16;i++){if((i&3)===0)r=Math.random()*4294967296;_rnds[i]=r>>>((i&3)<<3)&255}return _rnds}}var _byteToHex=[];var _hexToByte={};for(var i=0;i<256;i++){_byteToHex[i]=(i+256).toString(16).substr(1);_hexToByte[_byteToHex[i]]=i}function parse(s,buf,offset){var i=buf&&offset||0,ii=0;buf=buf||[];s.toLowerCase().replace(/[0-9a-f]{2}/g,function(oct){if(ii<16){buf[i+ii++]=_hexToByte[oct]}});while(ii<16){buf[i+ii++]=0}return buf}function unparse(buf,offset){var i=offset||0,bth=_byteToHex;return bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]}var _seedBytes=_rng();var _nodeId=[_seedBytes[0]|1,_seedBytes[1],_seedBytes[2],_seedBytes[3],_seedBytes[4],_seedBytes[5]];var _clockseq=(_seedBytes[6]<<8|_seedBytes[7])&16383;var _lastMSecs=0,_lastNSecs=0;function v1(options,buf,offset){var i=buf&&offset||0;var b=buf||[];options=options||{};var clockseq=options.clockseq!==undefined?options.clockseq:_clockseq;var msecs=options.msecs!==undefined?options.msecs:(new Date).getTime();var nsecs=options.nsecs!==undefined?options.nsecs:_lastNSecs+1;var dt=msecs-_lastMSecs+(nsecs-_lastNSecs)/1e4;if(dt<0&&options.clockseq===undefined){clockseq=clockseq+1&16383}if((dt<0||msecs>_lastMSecs)&&options.nsecs===undefined){nsecs=0}if(nsecs>=1e4){throw new Error(\"uuid.v1(): Can't create more than 10M uuids/sec\")}_lastMSecs=msecs;_lastNSecs=nsecs;_clockseq=clockseq;msecs+=122192928e5;var tl=((msecs&268435455)*1e4+nsecs)%4294967296;b[i++]=tl>>>24&255;b[i++]=tl>>>16&255;b[i++]=tl>>>8&255;b[i++]=tl&255;var tmh=msecs/4294967296*1e4&268435455;b[i++]=tmh>>>8&255;b[i++]=tmh&255;b[i++]=tmh>>>24&15|16;b[i++]=tmh>>>16&255;b[i++]=clockseq>>>8|128;b[i++]=clockseq&255;var node=options.node||_nodeId;for(var n=0;n<6;n++){b[i+n]=node[n]}return buf?buf:unparse(b)}function v4(options,buf,offset){var i=buf&&offset||0;if(typeof options==\"string\"){buf=options==\"binary\"?new Array(16):null;options=null}options=options||{};var rnds=options.random||(options.rng||_rng)();rnds[6]=rnds[6]&15|64;rnds[8]=rnds[8]&63|128;if(buf){for(var ii=0;ii<16;ii++){buf[i+ii]=rnds[ii]}}return buf||unparse(rnds)}var uuid=v4;uuid.v1=v1;uuid.v4=v4;uuid.parse=parse;uuid.unparse=unparse;module.exports=uuid}).call(exports,__webpack_require__(158))},function(module,exports){var g;g=function(){return this}();try{g=g||Function(\"return this\")()||(1,eval)(\"this\")}catch(e){if(typeof window===\"object\")g=window}module.exports=g},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Graph3d=__webpack_require__(161);exports.graph3d={Camera:__webpack_require__(95),Filter:__webpack_require__(96),Point2d:__webpack_require__(91),Point3d:__webpack_require__(34),Slider:__webpack_require__(92),StepNumber:__webpack_require__(93)};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){var core=__webpack_require__(7);var $JSON=core.JSON||(core.JSON={stringify:JSON.stringify});module.exports=function stringify(it){return $JSON.stringify.apply($JSON,arguments)}},function(module,exports,__webpack_require__){\"use strict\";var _assign=__webpack_require__(90);var _assign2=_interopRequireDefault(_assign);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Emitter=__webpack_require__(44);var util=__webpack_require__(2);var Point3d=__webpack_require__(34);var Point2d=__webpack_require__(91);var Slider=__webpack_require__(92);var StepNumber=__webpack_require__(93);var Settings=__webpack_require__(94);var Validator=__webpack_require__(15)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var _require2=__webpack_require__(172),allOptions=_require2.allOptions;var DataGroup=__webpack_require__(173);Graph3d.STYLE=Settings.STYLE;var autoByDefault=undefined;Graph3d.DEFAULTS={width:\"400px\",height:\"400px\",filterLabel:\"time\",legendLabel:\"value\",xLabel:\"x\",yLabel:\"y\",zLabel:\"z\",xValueLabel:function xValueLabel(v){return v},yValueLabel:function yValueLabel(v){return v},zValueLabel:function zValueLabel(v){return v},showXAxis:true,showYAxis:true,showZAxis:true,showGrid:true,showPerspective:true,showShadow:false,keepAspectRatio:true,verticalRatio:.5,dotSizeRatio:.02,dotSizeMinFraction:.5,dotSizeMaxFraction:2.5,showAnimationControls:autoByDefault,animationInterval:1e3,animationPreload:false,animationAutoStart:autoByDefault,axisColor:\"#4D4D4D\",gridColor:\"#D3D3D3\",xCenter:\"55%\",yCenter:\"50%\",style:Graph3d.STYLE.DOT,tooltip:false,tooltipStyle:{content:{padding:\"10px\",border:\"1px solid #4d4d4d\",color:\"#1a1a1a\",background:\"rgba(255,255,255,0.7)\",borderRadius:\"2px\",boxShadow:\"5px 5px 10px rgba(128,128,128,0.5)\"},line:{height:\"40px\",width:\"0\",borderLeft:\"1px solid #4d4d4d\"},dot:{height:\"0\",width:\"0\",border:\"5px solid #4d4d4d\",borderRadius:\"5px\"}},dataColor:{fill:\"#7DC1FF\",stroke:\"#3267D2\",strokeWidth:1},cameraPosition:{horizontal:1,vertical:.5,distance:1.7},showLegend:autoByDefault,backgroundColor:autoByDefault,xBarWidth:autoByDefault,yBarWidth:autoByDefault,valueMin:autoByDefault,valueMax:autoByDefault,xMin:autoByDefault,xMax:autoByDefault,xStep:autoByDefault,yMin:autoByDefault,yMax:autoByDefault,yStep:autoByDefault,zMin:autoByDefault,zMax:autoByDefault,zStep:autoByDefault};function Graph3d(container,data,options){if(!(this instanceof Graph3d)){throw new SyntaxError(\"Constructor must be called with the new operator\")}this.containerElement=container;this.dataGroup=new DataGroup;this.dataPoints=null;this.create();Settings.setDefaults(Graph3d.DEFAULTS,this);this.colX=undefined;this.colY=undefined;this.colZ=undefined;this.colValue=undefined;this.setOptions(options);this.setData(data)}Emitter(Graph3d.prototype);Graph3d.prototype._setScale=function(){this.scale=new Point3d(1/this.xRange.range(),1/this.yRange.range(),1/this.zRange.range());if(this.keepAspectRatio){if(this.scale.x<this.scale.y){this.scale.y=this.scale.x}else{this.scale.x=this.scale.y}}this.scale.z*=this.verticalRatio;if(this.valueRange!==undefined){this.scale.value=1/this.valueRange.range()}var xCenter=this.xRange.center()*this.scale.x;var yCenter=this.yRange.center()*this.scale.y;var zCenter=this.zRange.center()*this.scale.z;this.camera.setArmLocation(xCenter,yCenter,zCenter)};Graph3d.prototype._convert3Dto2D=function(point3d){var translation=this._convertPointToTranslation(point3d);return this._convertTranslationToScreen(translation)};Graph3d.prototype._convertPointToTranslation=function(point3d){var cameraLocation=this.camera.getCameraLocation(),cameraRotation=this.camera.getCameraRotation(),ax=point3d.x*this.scale.x,ay=point3d.y*this.scale.y,az=point3d.z*this.scale.z,cx=cameraLocation.x,cy=cameraLocation.y,cz=cameraLocation.z,sinTx=Math.sin(cameraRotation.x),cosTx=Math.cos(cameraRotation.x),sinTy=Math.sin(cameraRotation.y),cosTy=Math.cos(cameraRotation.y),sinTz=Math.sin(cameraRotation.z),cosTz=Math.cos(cameraRotation.z),dx=cosTy*(sinTz*(ay-cy)+cosTz*(ax-cx))-sinTy*(az-cz),dy=sinTx*(cosTy*(az-cz)+sinTy*(sinTz*(ay-cy)+cosTz*(ax-cx)))+cosTx*(cosTz*(ay-cy)-sinTz*(ax-cx)),dz=cosTx*(cosTy*(az-cz)+sinTy*(sinTz*(ay-cy)+cosTz*(ax-cx)))-sinTx*(cosTz*(ay-cy)-sinTz*(ax-cx));return new Point3d(dx,dy,dz)};Graph3d.prototype._convertTranslationToScreen=function(translation){var ex=this.eye.x,ey=this.eye.y,ez=this.eye.z,dx=translation.x,dy=translation.y,dz=translation.z;var bx;var by;if(this.showPerspective){bx=(dx-ex)*(ez/dz);by=(dy-ey)*(ez/dz)}else{bx=dx*-(ez/this.camera.getArmLength());by=dy*-(ez/this.camera.getArmLength())}return new Point2d(this.currentXCenter+bx*this.frame.canvas.clientWidth,this.currentYCenter-by*this.frame.canvas.clientWidth)};Graph3d.prototype._calcTranslations=function(points){for(var i=0;i<points.length;i++){var point=points[i];point.trans=this._convertPointToTranslation(point.point);point.screen=this._convertTranslationToScreen(point.trans);var transBottom=this._convertPointToTranslation(point.bottom);point.dist=this.showPerspective?transBottom.length():-transBottom.z}var sortDepth=function sortDepth(a,b){return b.dist-a.dist};points.sort(sortDepth)};Graph3d.prototype._initializeRanges=function(){var dg=this.dataGroup;this.xRange=dg.xRange;this.yRange=dg.yRange;this.zRange=dg.zRange;this.valueRange=dg.valueRange;this.xStep=dg.xStep;this.yStep=dg.yStep;this.zStep=dg.zStep;this.xBarWidth=dg.xBarWidth;this.yBarWidth=dg.yBarWidth;this.colX=dg.colX;this.colY=dg.colY;this.colZ=dg.colZ;this.colValue=dg.colValue;this._setScale()};Graph3d.prototype.getDataPoints=function(data){var dataPoints=[];for(var i=0;i<data.length;i++){var point=new Point3d;point.x=data[i][this.colX]||0;point.y=data[i][this.colY]||0;point.z=data[i][this.colZ]||0;point.data=data[i];if(this.colValue!==undefined){point.value=data[i][this.colValue]||0}var obj={};obj.point=point;obj.bottom=new Point3d(point.x,point.y,this.zRange.min);obj.trans=undefined;obj.screen=undefined;dataPoints.push(obj)}return dataPoints};Graph3d.prototype._getDataPoints=function(data){var x,y,i,obj;var dataPoints=[];if(this.style===Graph3d.STYLE.GRID||this.style===Graph3d.STYLE.SURFACE){var dataX=this.dataGroup.getDistinctValues(this.colX,data);var dataY=this.dataGroup.getDistinctValues(this.colY,data);dataPoints=this.getDataPoints(data);var dataMatrix=[];for(i=0;i<dataPoints.length;i++){obj=dataPoints[i];var xIndex=dataX.indexOf(obj.point.x);var yIndex=dataY.indexOf(obj.point.y);if(dataMatrix[xIndex]===undefined){dataMatrix[xIndex]=[]}dataMatrix[xIndex][yIndex]=obj}for(x=0;x<dataMatrix.length;x++){for(y=0;y<dataMatrix[x].length;y++){if(dataMatrix[x][y]){dataMatrix[x][y].pointRight=x<dataMatrix.length-1?dataMatrix[x+1][y]:undefined;dataMatrix[x][y].pointTop=y<dataMatrix[x].length-1?dataMatrix[x][y+1]:undefined;dataMatrix[x][y].pointCross=x<dataMatrix.length-1&&y<dataMatrix[x].length-1?dataMatrix[x+1][y+1]:undefined}}}}else{this._checkValueField(data);dataPoints=this.getDataPoints(data);if(this.style===Graph3d.STYLE.LINE){for(i=0;i<dataPoints.length;i++){if(i>0){dataPoints[i-1].pointNext=dataPoints[i]}}}}return dataPoints};Graph3d.prototype.create=function(){while(this.containerElement.hasChildNodes()){this.containerElement.removeChild(this.containerElement.firstChild)}this.frame=document.createElement(\"div\");this.frame.style.position=\"relative\";this.frame.style.overflow=\"hidden\";this.frame.canvas=document.createElement(\"canvas\");this.frame.canvas.style.position=\"relative\";this.frame.appendChild(this.frame.canvas);{var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.frame.canvas.appendChild(noCanvas)}this.frame.filter=document.createElement(\"div\");this.frame.filter.style.position=\"absolute\";this.frame.filter.style.bottom=\"0px\";this.frame.filter.style.left=\"0px\";this.frame.filter.style.width=\"100%\";this.frame.appendChild(this.frame.filter);var me=this;var onmousedown=function onmousedown(event){me._onMouseDown(event)};var ontouchstart=function ontouchstart(event){me._onTouchStart(event)};var onmousewheel=function onmousewheel(event){me._onWheel(event)};var ontooltip=function ontooltip(event){me._onTooltip(event)};var onclick=function onclick(event){me._onClick(event)};util.addEventListener(this.frame.canvas,\"mousedown\",onmousedown);util.addEventListener(this.frame.canvas,\"touchstart\",ontouchstart);util.addEventListener(this.frame.canvas,\"mousewheel\",onmousewheel);util.addEventListener(this.frame.canvas,\"mousemove\",ontooltip);util.addEventListener(this.frame.canvas,\"click\",onclick);this.containerElement.appendChild(this.frame)};Graph3d.prototype._setSize=function(width,height){this.frame.style.width=width;this.frame.style.height=height;this._resizeCanvas()};Graph3d.prototype._resizeCanvas=function(){this.frame.canvas.style.width=\"100%\";this.frame.canvas.style.height=\"100%\";this.frame.canvas.width=this.frame.canvas.clientWidth;this.frame.canvas.height=this.frame.canvas.clientHeight;this.frame.filter.style.width=this.frame.canvas.clientWidth-2*10+\"px\"};Graph3d.prototype.animationStart=function(){if(!this.animationAutoStart||!this.dataGroup.dataFilter)return;if(!this.frame.filter||!this.frame.filter.slider)throw new Error(\"No animation available\");this.frame.filter.slider.play()};Graph3d.prototype.animationStop=function(){if(!this.frame.filter||!this.frame.filter.slider)return;this.frame.filter.slider.stop()};Graph3d.prototype._resizeCenter=function(){if(this.xCenter.charAt(this.xCenter.length-1)===\"%\"){this.currentXCenter=parseFloat(this.xCenter)/100*this.frame.canvas.clientWidth}else{this.currentXCenter=parseFloat(this.xCenter)}if(this.yCenter.charAt(this.yCenter.length-1)===\"%\"){this.currentYCenter=parseFloat(this.yCenter)/100*(this.frame.canvas.clientHeight-this.frame.filter.clientHeight)}else{this.currentYCenter=parseFloat(this.yCenter)}};Graph3d.prototype.getCameraPosition=function(){var pos=this.camera.getArmRotation();pos.distance=this.camera.getArmLength();return pos};Graph3d.prototype._readData=function(data){this.dataPoints=this.dataGroup.initializeData(this,data,this.style);this._initializeRanges();this._redrawFilter()};Graph3d.prototype.setData=function(data){if(data===undefined||data===null)return;this._readData(data);this.redraw();this.animationStart()};Graph3d.prototype.setOptions=function(options){if(options===undefined)return;var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}this.animationStop();Settings.setOptions(options,this);this.setPointDrawingMethod();this._setSize(this.width,this.height);this.setData(this.dataGroup.getDataTable());this.animationStart()};Graph3d.prototype.setPointDrawingMethod=function(){var method=undefined;switch(this.style){case Graph3d.STYLE.BAR:method=Graph3d.prototype._redrawBarGraphPoint;break;case Graph3d.STYLE.BARCOLOR:method=Graph3d.prototype._redrawBarColorGraphPoint;break;case Graph3d.STYLE.BARSIZE:method=Graph3d.prototype._redrawBarSizeGraphPoint;break;case Graph3d.STYLE.DOT:method=Graph3d.prototype._redrawDotGraphPoint;break;case Graph3d.STYLE.DOTLINE:method=Graph3d.prototype._redrawDotLineGraphPoint;break;case Graph3d.STYLE.DOTCOLOR:method=Graph3d.prototype._redrawDotColorGraphPoint;break;case Graph3d.STYLE.DOTSIZE:method=Graph3d.prototype._redrawDotSizeGraphPoint;break;case Graph3d.STYLE.SURFACE:method=Graph3d.prototype._redrawSurfaceGraphPoint;break;case Graph3d.STYLE.GRID:method=Graph3d.prototype._redrawGridGraphPoint;break;case Graph3d.STYLE.LINE:method=Graph3d.prototype._redrawLineGraphPoint;break;default:throw new Error(\"Can not determine point drawing method \"+\"for graph style '\"+this.style+\"'\")}this._pointDrawingMethod=method};Graph3d.prototype.redraw=function(){if(this.dataPoints===undefined){throw new Error(\"Graph data not initialized\")}this._resizeCanvas();this._resizeCenter();this._redrawSlider();this._redrawClear();this._redrawAxis();this._redrawDataGraph();this._redrawInfo();this._redrawLegend()};Graph3d.prototype._getContext=function(){var canvas=this.frame.canvas;var ctx=canvas.getContext(\"2d\");ctx.lineJoin=\"round\";ctx.lineCap=\"round\";return ctx};Graph3d.prototype._redrawClear=function(){var canvas=this.frame.canvas;var ctx=canvas.getContext(\"2d\");ctx.clearRect(0,0,canvas.width,canvas.height)};Graph3d.prototype._dotSize=function(){return this.frame.clientWidth*this.dotSizeRatio};Graph3d.prototype._getLegendWidth=function(){var width;if(this.style===Graph3d.STYLE.DOTSIZE){var dotSize=this._dotSize();width=dotSize*this.dotSizeMaxFraction}else if(this.style===Graph3d.STYLE.BARSIZE){width=this.xBarWidth}else{width=20}return width};Graph3d.prototype._redrawLegend=function(){if(this.showLegend!==true){return}if(this.style===Graph3d.STYLE.LINE||this.style===Graph3d.STYLE.BARSIZE){return}var isSizeLegend=this.style===Graph3d.STYLE.BARSIZE||this.style===Graph3d.STYLE.DOTSIZE;var isValueLegend=this.style===Graph3d.STYLE.DOTSIZE||this.style===Graph3d.STYLE.DOTCOLOR||this.style===Graph3d.STYLE.BARCOLOR;var height=Math.max(this.frame.clientHeight*.25,100);var top=this.margin;var width=this._getLegendWidth();var right=this.frame.clientWidth-this.margin;var left=right-width;var bottom=top+height;var ctx=this._getContext();ctx.lineWidth=1;ctx.font=\"14px arial\";if(isSizeLegend===false){var ymin=0;var ymax=height;var y;for(y=ymin;y<ymax;y++){var f=(y-ymin)/(ymax-ymin);var hue=f*240;var color=this._hsv2rgb(hue,1,1);ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(left,top+y);ctx.lineTo(right,top+y);ctx.stroke()}ctx.strokeStyle=this.axisColor;ctx.strokeRect(left,top,width,height)}else{var widthMin;if(this.style===Graph3d.STYLE.DOTSIZE){widthMin=width*(this.dotSizeMinFraction/this.dotSizeMaxFraction)}else if(this.style===Graph3d.STYLE.BARSIZE){}ctx.strokeStyle=this.axisColor;ctx.fillStyle=this.dataColor.fill;ctx.beginPath();ctx.moveTo(left,top);ctx.lineTo(right,top);ctx.lineTo(left+widthMin,bottom);ctx.lineTo(left,bottom);ctx.closePath();ctx.fill();ctx.stroke()}var gridLineLen=5;var legendMin=isValueLegend?this.valueRange.min:this.zRange.min;var legendMax=isValueLegend?this.valueRange.max:this.zRange.max;var step=new StepNumber(legendMin,legendMax,(legendMax-legendMin)/5,true);step.start(true);var from;var to;while(!step.end()){y=bottom-(step.getCurrent()-legendMin)/(legendMax-legendMin)*height;from=new Point2d(left-gridLineLen,y);to=new Point2d(left,y);this._line(ctx,from,to);ctx.textAlign=\"right\";ctx.textBaseline=\"middle\";ctx.fillStyle=this.axisColor;ctx.fillText(step.getCurrent(),left-2*gridLineLen,y);step.next()}ctx.textAlign=\"right\";ctx.textBaseline=\"top\";var label=this.legendLabel;ctx.fillText(label,right,bottom+this.margin)};Graph3d.prototype._redrawFilter=function(){var dataFilter=this.dataGroup.dataFilter;var filter=this.frame.filter;filter.innerHTML=\"\";if(!dataFilter){filter.slider=undefined;return}var options={visible:this.showAnimationControls};var slider=new Slider(filter,options);filter.slider=slider;filter.style.padding=\"10px\";slider.setValues(dataFilter.values);slider.setPlayInterval(this.animationInterval);var me=this;var onchange=function onchange(){var dataFilter=me.dataGroup.dataFilter;var index=slider.getIndex();dataFilter.selectValue(index);me.dataPoints=dataFilter._getDataPoints();me.redraw()};slider.setOnChangeCallback(onchange)};Graph3d.prototype._redrawSlider=function(){if(this.frame.filter.slider!==undefined){this.frame.filter.slider.redraw()}};Graph3d.prototype._redrawInfo=function(){var info=this.dataGroup.getInfo();if(info===undefined)return;var ctx=this._getContext();ctx.font=\"14px arial\";ctx.lineStyle=\"gray\";ctx.fillStyle=\"gray\";ctx.textAlign=\"left\";ctx.textBaseline=\"top\";var x=this.margin;var y=this.margin;ctx.fillText(info,x,y)};Graph3d.prototype._line=function(ctx,from,to,strokeStyle){if(strokeStyle!==undefined){ctx.strokeStyle=strokeStyle}ctx.beginPath();ctx.moveTo(from.x,from.y);ctx.lineTo(to.x,to.y);ctx.stroke()};Graph3d.prototype.drawAxisLabelX=function(ctx,point3d,text,armAngle,yMargin){if(yMargin===undefined){yMargin=0}var point2d=this._convert3Dto2D(point3d);if(Math.cos(armAngle*2)>0){ctx.textAlign=\"center\";ctx.textBaseline=\"top\";point2d.y+=yMargin}else if(Math.sin(armAngle*2)<0){ctx.textAlign=\"right\";ctx.textBaseline=\"middle\"}else{ctx.textAlign=\"left\";ctx.textBaseline=\"middle\"}ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x,point2d.y)};Graph3d.prototype.drawAxisLabelY=function(ctx,point3d,text,armAngle,yMargin){if(yMargin===undefined){yMargin=0}var point2d=this._convert3Dto2D(point3d);if(Math.cos(armAngle*2)<0){ctx.textAlign=\"center\";ctx.textBaseline=\"top\";point2d.y+=yMargin}else if(Math.sin(armAngle*2)>0){ctx.textAlign=\"right\";ctx.textBaseline=\"middle\"}else{ctx.textAlign=\"left\";ctx.textBaseline=\"middle\"}ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x,point2d.y)};Graph3d.prototype.drawAxisLabelZ=function(ctx,point3d,text,offset){if(offset===undefined){offset=0}var point2d=this._convert3Dto2D(point3d);ctx.textAlign=\"right\";ctx.textBaseline=\"middle\";ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x-offset,point2d.y)};Graph3d.prototype._line3d=function(ctx,from,to,strokeStyle){var from2d=this._convert3Dto2D(from);var to2d=this._convert3Dto2D(to);this._line(ctx,from2d,to2d,strokeStyle)};Graph3d.prototype._redrawAxis=function(){var ctx=this._getContext(),from,to,step,prettyStep,text,xText,yText,zText,offset,xOffset,yOffset;ctx.font=24/this.camera.getArmLength()+\"px arial\";var gridLenX=.025/this.scale.x;var gridLenY=.025/this.scale.y;var textMargin=5/this.camera.getArmLength();var armAngle=this.camera.getArmRotation().horizontal;var armVector=new Point2d(Math.cos(armAngle),Math.sin(armAngle));var xRange=this.xRange;var yRange=this.yRange;var zRange=this.zRange;var point3d;ctx.lineWidth=1;prettyStep=this.defaultXStep===undefined;step=new StepNumber(xRange.min,xRange.max,this.xStep,prettyStep);step.start(true);while(!step.end()){var x=step.getCurrent();if(this.showGrid){from=new Point3d(x,yRange.min,zRange.min);to=new Point3d(x,yRange.max,zRange.min);this._line3d(ctx,from,to,this.gridColor)}else if(this.showXAxis){from=new Point3d(x,yRange.min,zRange.min);to=new Point3d(x,yRange.min+gridLenX,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(x,yRange.max,zRange.min);to=new Point3d(x,yRange.max-gridLenX,zRange.min);this._line3d(ctx,from,to,this.axisColor)}if(this.showXAxis){yText=armVector.x>0?yRange.min:yRange.max;point3d=new Point3d(x,yText,zRange.min);var msg=\"  \"+this.xValueLabel(x)+\"  \";this.drawAxisLabelX(ctx,point3d,msg,armAngle,textMargin)}step.next()}ctx.lineWidth=1;prettyStep=this.defaultYStep===undefined;step=new StepNumber(yRange.min,yRange.max,this.yStep,prettyStep);step.start(true);while(!step.end()){var y=step.getCurrent();if(this.showGrid){from=new Point3d(xRange.min,y,zRange.min);to=new Point3d(xRange.max,y,zRange.min);this._line3d(ctx,from,to,this.gridColor)}else if(this.showYAxis){from=new Point3d(xRange.min,y,zRange.min);to=new Point3d(xRange.min+gridLenY,y,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(xRange.max,y,zRange.min);to=new Point3d(xRange.max-gridLenY,y,zRange.min);this._line3d(ctx,from,to,this.axisColor)}if(this.showYAxis){xText=armVector.y>0?xRange.min:xRange.max;point3d=new Point3d(xText,y,zRange.min);var _msg=\"  \"+this.yValueLabel(y)+\"  \";this.drawAxisLabelY(ctx,point3d,_msg,armAngle,textMargin)}step.next()}if(this.showZAxis){ctx.lineWidth=1;prettyStep=this.defaultZStep===undefined;step=new StepNumber(zRange.min,zRange.max,this.zStep,prettyStep);step.start(true);xText=armVector.x>0?xRange.min:xRange.max;yText=armVector.y<0?yRange.min:yRange.max;while(!step.end()){var z=step.getCurrent();var from3d=new Point3d(xText,yText,z);var from2d=this._convert3Dto2D(from3d);to=new Point2d(from2d.x-textMargin,from2d.y);this._line(ctx,from2d,to,this.axisColor);var _msg2=this.zValueLabel(z)+\" \";this.drawAxisLabelZ(ctx,from3d,_msg2,5);step.next()}ctx.lineWidth=1;from=new Point3d(xText,yText,zRange.min);to=new Point3d(xText,yText,zRange.max);this._line3d(ctx,from,to,this.axisColor)}if(this.showXAxis){var xMin2d;var xMax2d;ctx.lineWidth=1;xMin2d=new Point3d(xRange.min,yRange.min,zRange.min);xMax2d=new Point3d(xRange.max,yRange.min,zRange.min);this._line3d(ctx,xMin2d,xMax2d,this.axisColor);xMin2d=new Point3d(xRange.min,yRange.max,zRange.min);xMax2d=new Point3d(xRange.max,yRange.max,zRange.min);this._line3d(ctx,xMin2d,xMax2d,this.axisColor)}if(this.showYAxis){ctx.lineWidth=1;from=new Point3d(xRange.min,yRange.min,zRange.min);to=new Point3d(xRange.min,yRange.max,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(xRange.max,yRange.min,zRange.min);to=new Point3d(xRange.max,yRange.max,zRange.min);this._line3d(ctx,from,to,this.axisColor)}var xLabel=this.xLabel;if(xLabel.length>0&&this.showXAxis){yOffset=.1/this.scale.y;xText=(xRange.max+3*xRange.min)/4;yText=armVector.x>0?yRange.min-yOffset:yRange.max+yOffset\n;text=new Point3d(xText,yText,zRange.min);this.drawAxisLabelX(ctx,text,xLabel,armAngle)}var yLabel=this.yLabel;if(yLabel.length>0&&this.showYAxis){xOffset=.1/this.scale.x;xText=armVector.y>0?xRange.min-xOffset:xRange.max+xOffset;yText=(yRange.max+3*yRange.min)/4;text=new Point3d(xText,yText,zRange.min);this.drawAxisLabelY(ctx,text,yLabel,armAngle)}var zLabel=this.zLabel;if(zLabel.length>0&&this.showZAxis){offset=30;xText=armVector.x>0?xRange.min:xRange.max;yText=armVector.y<0?yRange.min:yRange.max;zText=(zRange.max+3*zRange.min)/4;text=new Point3d(xText,yText,zText);this.drawAxisLabelZ(ctx,text,zLabel,offset)}};Graph3d.prototype._hsv2rgb=function(H,S,V){var R,G,B,C,Hi,X;C=V*S;Hi=Math.floor(H/60);X=C*(1-Math.abs(H/60%2-1));switch(Hi){case 0:R=C;G=X;B=0;break;case 1:R=X;G=C;B=0;break;case 2:R=0;G=C;B=X;break;case 3:R=0;G=X;B=C;break;case 4:R=X;G=0;B=C;break;case 5:R=C;G=0;B=X;break;default:R=0;G=0;B=0;break}return\"RGB(\"+parseInt(R*255)+\",\"+parseInt(G*255)+\",\"+parseInt(B*255)+\")\"};Graph3d.prototype._getStrokeWidth=function(point){if(point!==undefined){if(this.showPerspective){return 1/-point.trans.z*this.dataColor.strokeWidth}else{return-(this.eye.z/this.camera.getArmLength())*this.dataColor.strokeWidth}}return this.dataColor.strokeWidth};Graph3d.prototype._redrawBar=function(ctx,point,xWidth,yWidth,color,borderColor){var surface;var me=this;var point3d=point.point;var zMin=this.zRange.min;var top=[{point:new Point3d(point3d.x-xWidth,point3d.y-yWidth,point3d.z)},{point:new Point3d(point3d.x+xWidth,point3d.y-yWidth,point3d.z)},{point:new Point3d(point3d.x+xWidth,point3d.y+yWidth,point3d.z)},{point:new Point3d(point3d.x-xWidth,point3d.y+yWidth,point3d.z)}];var bottom=[{point:new Point3d(point3d.x-xWidth,point3d.y-yWidth,zMin)},{point:new Point3d(point3d.x+xWidth,point3d.y-yWidth,zMin)},{point:new Point3d(point3d.x+xWidth,point3d.y+yWidth,zMin)},{point:new Point3d(point3d.x-xWidth,point3d.y+yWidth,zMin)}];top.forEach(function(obj){obj.screen=me._convert3Dto2D(obj.point)});bottom.forEach(function(obj){obj.screen=me._convert3Dto2D(obj.point)});var surfaces=[{corners:top,center:Point3d.avg(bottom[0].point,bottom[2].point)},{corners:[top[0],top[1],bottom[1],bottom[0]],center:Point3d.avg(bottom[1].point,bottom[0].point)},{corners:[top[1],top[2],bottom[2],bottom[1]],center:Point3d.avg(bottom[2].point,bottom[1].point)},{corners:[top[2],top[3],bottom[3],bottom[2]],center:Point3d.avg(bottom[3].point,bottom[2].point)},{corners:[top[3],top[0],bottom[0],bottom[3]],center:Point3d.avg(bottom[0].point,bottom[3].point)}];point.surfaces=surfaces;for(var j=0;j<surfaces.length;j++){surface=surfaces[j];var transCenter=this._convertPointToTranslation(surface.center);surface.dist=this.showPerspective?transCenter.length():-transCenter.z}surfaces.sort(function(a,b){var diff=b.dist-a.dist;if(diff)return diff;if(a.corners===top)return 1;if(b.corners===top)return-1;return 0});ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=borderColor;ctx.fillStyle=color;for(var _j=2;_j<surfaces.length;_j++){surface=surfaces[_j];this._polygon(ctx,surface.corners)}};Graph3d.prototype._polygon=function(ctx,points,fillStyle,strokeStyle){if(points.length<2){return}if(fillStyle!==undefined){ctx.fillStyle=fillStyle}if(strokeStyle!==undefined){ctx.strokeStyle=strokeStyle}ctx.beginPath();ctx.moveTo(points[0].screen.x,points[0].screen.y);for(var i=1;i<points.length;++i){var point=points[i];ctx.lineTo(point.screen.x,point.screen.y)}ctx.closePath();ctx.fill();ctx.stroke()};Graph3d.prototype._drawCircle=function(ctx,point,color,borderColor,size){var radius=this._calcRadius(point,size);ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=borderColor;ctx.fillStyle=color;ctx.beginPath();ctx.arc(point.screen.x,point.screen.y,radius,0,Math.PI*2,true);ctx.fill();ctx.stroke()};Graph3d.prototype._getColorsRegular=function(point){var hue=(1-(point.point.z-this.zRange.min)*this.scale.z/this.verticalRatio)*240;var color=this._hsv2rgb(hue,1,1);var borderColor=this._hsv2rgb(hue,1,.8);return{fill:color,border:borderColor}};Graph3d.prototype._getColorsColor=function(point){var color,borderColor;if(typeof point.point.value===\"string\"){color=point.point.value;borderColor=point.point.value}else{var hue=(1-(point.point.value-this.valueRange.min)*this.scale.value)*240;color=this._hsv2rgb(hue,1,1);borderColor=this._hsv2rgb(hue,1,.8)}return{fill:color,border:borderColor}};Graph3d.prototype._getColorsSize=function(){return{fill:this.dataColor.fill,border:this.dataColor.stroke}};Graph3d.prototype._calcRadius=function(point,size){if(size===undefined){size=this._dotSize()}var radius;if(this.showPerspective){radius=size/-point.trans.z}else{radius=size*-(this.eye.z/this.camera.getArmLength())}if(radius<0){radius=0}return radius};Graph3d.prototype._redrawBarGraphPoint=function(ctx,point){var xWidth=this.xBarWidth/2;var yWidth=this.yBarWidth/2;var colors=this._getColorsRegular(point);this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawBarColorGraphPoint=function(ctx,point){var xWidth=this.xBarWidth/2;var yWidth=this.yBarWidth/2;var colors=this._getColorsColor(point);this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawBarSizeGraphPoint=function(ctx,point){var fraction=(point.point.value-this.valueRange.min)/this.valueRange.range();var xWidth=this.xBarWidth/2*(fraction*.8+.2);var yWidth=this.yBarWidth/2*(fraction*.8+.2);var colors=this._getColorsSize();this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawDotGraphPoint=function(ctx,point){var colors=this._getColorsRegular(point);this._drawCircle(ctx,point,colors.fill,colors.border)};Graph3d.prototype._redrawDotLineGraphPoint=function(ctx,point){var from=this._convert3Dto2D(point.bottom);ctx.lineWidth=1;this._line(ctx,from,point.screen,this.gridColor);this._redrawDotGraphPoint(ctx,point)};Graph3d.prototype._redrawDotColorGraphPoint=function(ctx,point){var colors=this._getColorsColor(point);this._drawCircle(ctx,point,colors.fill,colors.border)};Graph3d.prototype._redrawDotSizeGraphPoint=function(ctx,point){var dotSize=this._dotSize();var fraction=(point.point.value-this.valueRange.min)/this.valueRange.range();var sizeMin=dotSize*this.dotSizeMinFraction;var sizeRange=dotSize*this.dotSizeMaxFraction-sizeMin;var size=sizeMin+sizeRange*fraction;var colors=this._getColorsSize();this._drawCircle(ctx,point,colors.fill,colors.border,size)};Graph3d.prototype._redrawSurfaceGraphPoint=function(ctx,point){var right=point.pointRight;var top=point.pointTop;var cross=point.pointCross;if(point===undefined||right===undefined||top===undefined||cross===undefined){return}var topSideVisible=true;var fillStyle;var strokeStyle;if(this.showGrayBottom||this.showShadow){var aDiff=Point3d.subtract(cross.trans,point.trans);var bDiff=Point3d.subtract(top.trans,right.trans);var crossproduct=Point3d.crossProduct(aDiff,bDiff);var len=crossproduct.length();topSideVisible=crossproduct.z>0}if(topSideVisible){var zAvg=(point.point.z+right.point.z+top.point.z+cross.point.z)/4;var h=(1-(zAvg-this.zRange.min)*this.scale.z/this.verticalRatio)*240;var s=1;var v;if(this.showShadow){v=Math.min(1+crossproduct.x/len/2,1);fillStyle=this._hsv2rgb(h,s,v);strokeStyle=fillStyle}else{v=1;fillStyle=this._hsv2rgb(h,s,v);strokeStyle=this.axisColor}}else{fillStyle=\"gray\";strokeStyle=this.axisColor}ctx.lineWidth=this._getStrokeWidth(point);var points=[point,right,cross,top];this._polygon(ctx,points,fillStyle,strokeStyle)};Graph3d.prototype._drawGridLine=function(ctx,from,to){if(from===undefined||to===undefined){return}var zAvg=(from.point.z+to.point.z)/2;var h=(1-(zAvg-this.zRange.min)*this.scale.z/this.verticalRatio)*240;ctx.lineWidth=this._getStrokeWidth(from)*2;ctx.strokeStyle=this._hsv2rgb(h,1,1);this._line(ctx,from.screen,to.screen)};Graph3d.prototype._redrawGridGraphPoint=function(ctx,point){this._drawGridLine(ctx,point,point.pointRight);this._drawGridLine(ctx,point,point.pointTop)};Graph3d.prototype._redrawLineGraphPoint=function(ctx,point){if(point.pointNext===undefined){return}ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=this.dataColor.stroke;this._line(ctx,point.screen,point.pointNext.screen)};Graph3d.prototype._redrawDataGraph=function(){var ctx=this._getContext();var i;if(this.dataPoints===undefined||this.dataPoints.length<=0)return;this._calcTranslations(this.dataPoints);for(i=0;i<this.dataPoints.length;i++){var point=this.dataPoints[i];this._pointDrawingMethod.call(this,ctx,point)}};Graph3d.prototype._storeMousePosition=function(event){this.startMouseX=getMouseX(event);this.startMouseY=getMouseY(event);this._startCameraOffset=this.camera.getOffset()};Graph3d.prototype._onMouseDown=function(event){event=event||window.event;if(this.leftButtonDown){this._onMouseUp(event)}this.leftButtonDown=event.which?event.which===1:event.button===1;if(!this.leftButtonDown&&!this.touchDown)return;this._storeMousePosition(event);this.startStart=new Date(this.start);this.startEnd=new Date(this.end);this.startArmRotation=this.camera.getArmRotation();this.frame.style.cursor=\"move\";var me=this;this.onmousemove=function(event){me._onMouseMove(event)};this.onmouseup=function(event){me._onMouseUp(event)};util.addEventListener(document,\"mousemove\",me.onmousemove);util.addEventListener(document,\"mouseup\",me.onmouseup);util.preventDefault(event)};Graph3d.prototype._onMouseMove=function(event){this.moving=true;event=event||window.event;var diffX=parseFloat(getMouseX(event))-this.startMouseX;var diffY=parseFloat(getMouseY(event))-this.startMouseY;if(event&&event.ctrlKey===true){var scaleX=this.frame.clientWidth*.5;var scaleY=this.frame.clientHeight*.5;var offXNew=(this._startCameraOffset.x||0)-diffX/scaleX*this.camera.armLength*.8;var offYNew=(this._startCameraOffset.y||0)+diffY/scaleY*this.camera.armLength*.8;this.camera.setOffset(offXNew,offYNew);this._storeMousePosition(event)}else{var horizontalNew=this.startArmRotation.horizontal+diffX/200;var verticalNew=this.startArmRotation.vertical+diffY/200;var snapAngle=4;var snapValue=Math.sin(snapAngle/360*2*Math.PI);if(Math.abs(Math.sin(horizontalNew))<snapValue){horizontalNew=Math.round(horizontalNew/Math.PI)*Math.PI-.001}if(Math.abs(Math.cos(horizontalNew))<snapValue){horizontalNew=(Math.round(horizontalNew/Math.PI-.5)+.5)*Math.PI-.001}if(Math.abs(Math.sin(verticalNew))<snapValue){verticalNew=Math.round(verticalNew/Math.PI)*Math.PI}if(Math.abs(Math.cos(verticalNew))<snapValue){verticalNew=(Math.round(verticalNew/Math.PI-.5)+.5)*Math.PI}this.camera.setArmRotation(horizontalNew,verticalNew)}this.redraw();var parameters=this.getCameraPosition();this.emit(\"cameraPositionChange\",parameters);util.preventDefault(event)};Graph3d.prototype._onMouseUp=function(event){this.frame.style.cursor=\"auto\";this.leftButtonDown=false;util.removeEventListener(document,\"mousemove\",this.onmousemove);util.removeEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault(event)};Graph3d.prototype._onClick=function(event){if(!this.onclick_callback)return;if(!this.moving){var boundingRect=this.frame.getBoundingClientRect();var mouseX=getMouseX(event)-boundingRect.left;var mouseY=getMouseY(event)-boundingRect.top;var dataPoint=this._dataPointFromXY(mouseX,mouseY);if(dataPoint)this.onclick_callback(dataPoint.point.data)}else{this.moving=false}util.preventDefault(event)};Graph3d.prototype._onTooltip=function(event){var delay=300;var boundingRect=this.frame.getBoundingClientRect();var mouseX=getMouseX(event)-boundingRect.left;var mouseY=getMouseY(event)-boundingRect.top;if(!this.showTooltip){return}if(this.tooltipTimeout){clearTimeout(this.tooltipTimeout)}if(this.leftButtonDown){this._hideTooltip();return}if(this.tooltip&&this.tooltip.dataPoint){var dataPoint=this._dataPointFromXY(mouseX,mouseY);if(dataPoint!==this.tooltip.dataPoint){if(dataPoint){this._showTooltip(dataPoint)}else{this._hideTooltip()}}}else{var me=this;this.tooltipTimeout=setTimeout(function(){me.tooltipTimeout=null;var dataPoint=me._dataPointFromXY(mouseX,mouseY);if(dataPoint){me._showTooltip(dataPoint)}},delay)}};Graph3d.prototype._onTouchStart=function(event){this.touchDown=true;var me=this;this.ontouchmove=function(event){me._onTouchMove(event)};this.ontouchend=function(event){me._onTouchEnd(event)};util.addEventListener(document,\"touchmove\",me.ontouchmove);util.addEventListener(document,\"touchend\",me.ontouchend);this._onMouseDown(event)};Graph3d.prototype._onTouchMove=function(event){this._onMouseMove(event)};Graph3d.prototype._onTouchEnd=function(event){this.touchDown=false;util.removeEventListener(document,\"touchmove\",this.ontouchmove);util.removeEventListener(document,\"touchend\",this.ontouchend);this._onMouseUp(event)};Graph3d.prototype._onWheel=function(event){if(!event)event=window.event;var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(delta){var oldLength=this.camera.getArmLength();var newLength=oldLength*(1-delta/10);this.camera.setArmLength(newLength);this.redraw();this._hideTooltip()}var parameters=this.getCameraPosition();this.emit(\"cameraPositionChange\",parameters);util.preventDefault(event)};Graph3d.prototype._insideTriangle=function(point,triangle){var a=triangle[0],b=triangle[1],c=triangle[2];function sign(x){return x>0?1:x<0?-1:0}var as=sign((b.x-a.x)*(point.y-a.y)-(b.y-a.y)*(point.x-a.x));var bs=sign((c.x-b.x)*(point.y-b.y)-(c.y-b.y)*(point.x-b.x));var cs=sign((a.x-c.x)*(point.y-c.y)-(a.y-c.y)*(point.x-c.x));return(as==0||bs==0||as==bs)&&(bs==0||cs==0||bs==cs)&&(as==0||cs==0||as==cs)};Graph3d.prototype._dataPointFromXY=function(x,y){var i,distMax=100,dataPoint=null,closestDataPoint=null,closestDist=null,center=new Point2d(x,y);if(this.style===Graph3d.STYLE.BAR||this.style===Graph3d.STYLE.BARCOLOR||this.style===Graph3d.STYLE.BARSIZE){for(i=this.dataPoints.length-1;i>=0;i--){dataPoint=this.dataPoints[i];var surfaces=dataPoint.surfaces;if(surfaces){for(var s=surfaces.length-1;s>=0;s--){var surface=surfaces[s];var corners=surface.corners;var triangle1=[corners[0].screen,corners[1].screen,corners[2].screen];var triangle2=[corners[2].screen,corners[3].screen,corners[0].screen];if(this._insideTriangle(center,triangle1)||this._insideTriangle(center,triangle2)){return dataPoint}}}}}else{for(i=0;i<this.dataPoints.length;i++){dataPoint=this.dataPoints[i];var point=dataPoint.screen;if(point){var distX=Math.abs(x-point.x);var distY=Math.abs(y-point.y);var dist=Math.sqrt(distX*distX+distY*distY);if((closestDist===null||dist<closestDist)&&dist<distMax){closestDist=dist;closestDataPoint=dataPoint}}}}return closestDataPoint};Graph3d.prototype.hasBars=function(style){return style==Graph3d.STYLE.BAR||style==Graph3d.STYLE.BARCOLOR||style==Graph3d.STYLE.BARSIZE};Graph3d.prototype._showTooltip=function(dataPoint){var content,line,dot;if(!this.tooltip){content=document.createElement(\"div\");(0,_assign2[\"default\"])(content.style,{},this.tooltipStyle.content);content.style.position=\"absolute\";line=document.createElement(\"div\");(0,_assign2[\"default\"])(line.style,{},this.tooltipStyle.line);line.style.position=\"absolute\";dot=document.createElement(\"div\");(0,_assign2[\"default\"])(dot.style,{},this.tooltipStyle.dot);dot.style.position=\"absolute\";this.tooltip={dataPoint:null,dom:{content:content,line:line,dot:dot}}}else{content=this.tooltip.dom.content;line=this.tooltip.dom.line;dot=this.tooltip.dom.dot}this._hideTooltip();this.tooltip.dataPoint=dataPoint;if(typeof this.showTooltip===\"function\"){content.innerHTML=this.showTooltip(dataPoint.point)}else{content.innerHTML=\"<table>\"+\"<tr><td>\"+this.xLabel+\":</td><td>\"+dataPoint.point.x+\"</td></tr>\"+\"<tr><td>\"+this.yLabel+\":</td><td>\"+dataPoint.point.y+\"</td></tr>\"+\"<tr><td>\"+this.zLabel+\":</td><td>\"+dataPoint.point.z+\"</td></tr>\"+\"</table>\"}content.style.left=\"0\";content.style.top=\"0\";this.frame.appendChild(content);this.frame.appendChild(line);this.frame.appendChild(dot);var contentWidth=content.offsetWidth;var contentHeight=content.offsetHeight;var lineHeight=line.offsetHeight;var dotWidth=dot.offsetWidth;var dotHeight=dot.offsetHeight;var left=dataPoint.screen.x-contentWidth/2;left=Math.min(Math.max(left,10),this.frame.clientWidth-10-contentWidth);line.style.left=dataPoint.screen.x+\"px\";line.style.top=dataPoint.screen.y-lineHeight+\"px\";content.style.left=left+\"px\";content.style.top=dataPoint.screen.y-lineHeight-contentHeight+\"px\";dot.style.left=dataPoint.screen.x-dotWidth/2+\"px\";dot.style.top=dataPoint.screen.y-dotHeight/2+\"px\"};Graph3d.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var prop in this.tooltip.dom){if(this.tooltip.dom.hasOwnProperty(prop)){var elem=this.tooltip.dom[prop];if(elem&&elem.parentNode){elem.parentNode.removeChild(elem)}}}}};function getMouseX(event){if(\"clientX\"in event)return event.clientX;return event.targetTouches[0]&&event.targetTouches[0].clientX||0}function getMouseY(event){if(\"clientY\"in event)return event.clientY;return event.targetTouches[0]&&event.targetTouches[0].clientY||0}Graph3d.prototype.setCameraPosition=function(pos){Settings.setCameraPosition(pos,this);this.redraw()};Graph3d.prototype.setSize=function(width,height){this._setSize(width,height);this.redraw()};module.exports=Graph3d},function(module,exports,__webpack_require__){__webpack_require__(163);module.exports=__webpack_require__(7).Object.assign},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S+$export.F,\"Object\",{assign:__webpack_require__(164)})},function(module,exports,__webpack_require__){\"use strict\";var getKeys=__webpack_require__(33);var gOPS=__webpack_require__(63);var pIE=__webpack_require__(42);var toObject=__webpack_require__(41);var IObject=__webpack_require__(78);var $assign=Object.assign;module.exports=!$assign||__webpack_require__(28)(function(){var A={};var B={};var S=Symbol();var K=\"abcdefghijklmnopqrst\";A[S]=7;K.split(\"\").forEach(function(k){B[k]=k});return $assign({},A)[S]!=7||Object.keys($assign({},B)).join(\"\")!=K})?function assign(target,source){var T=toObject(target);var aLen=arguments.length;var index=1;var getSymbols=gOPS.f;var isEnum=pIE.f;while(aLen>index){var S=IObject(arguments[index++]);var keys=getSymbols?getKeys(S).concat(getSymbols(S)):getKeys(S);var length=keys.length;var j=0;var key;while(length>j)if(isEnum.call(S,key=keys[j++]))T[key]=S[key]}return T}:$assign},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(166),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(167);module.exports=__webpack_require__(7).Math.sign},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Math\",{sign:__webpack_require__(168)})},function(module,exports){module.exports=Math.sign||function sign(x){return(x=+x)==0||x!=x?x:x<0?-1:1}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(170),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(171);var $Object=__webpack_require__(7).Object;module.exports=function defineProperty(it,key,desc){return $Object.defineProperty(it,key,desc)}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S+$export.F*!__webpack_require__(21),\"Object\",{defineProperty:__webpack_require__(20).f})},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var object=\"object\";var colorOptions={fill:{string:string},stroke:{string:string},strokeWidth:{number:number},__type__:{string:string,object:object,undefined:\"undefined\"}};var allOptions={animationAutoStart:{boolean:bool,undefined:\"undefined\"},animationInterval:{number:number},animationPreload:{boolean:bool},axisColor:{string:string},backgroundColor:colorOptions,xBarWidth:{number:number,undefined:\"undefined\"},yBarWidth:{number:number,undefined:\"undefined\"},cameraPosition:{distance:{number:number},horizontal:{number:number},vertical:{number:number},__type__:{object:object}},xCenter:{string:string},yCenter:{string:string},dataColor:colorOptions,dotSizeMinFraction:{number:number},dotSizeMaxFraction:{number:number},dotSizeRatio:{number:number},filterLabel:{string:string},gridColor:{string:string},onclick:{function:\"function\"},keepAspectRatio:{boolean:bool},xLabel:{string:string},yLabel:{string:string},zLabel:{string:string},legendLabel:{string:string},xMin:{number:number,undefined:\"undefined\"},yMin:{number:number,undefined:\"undefined\"},zMin:{number:number,undefined:\"undefined\"},xMax:{number:number,undefined:\"undefined\"},yMax:{number:number,undefined:\"undefined\"},zMax:{number:number,undefined:\"undefined\"},showAnimationControls:{boolean:bool,undefined:\"undefined\"},showGrid:{boolean:bool},showLegend:{boolean:bool,undefined:\"undefined\"},showPerspective:{boolean:bool},showShadow:{boolean:bool},showXAxis:{boolean:bool},showYAxis:{boolean:bool},showZAxis:{boolean:bool},xStep:{number:number,undefined:\"undefined\"},yStep:{number:number,undefined:\"undefined\"},zStep:{number:number,undefined:\"undefined\"},style:{number:number,string:[\"bar\",\"bar-color\",\"bar-size\",\"dot\",\"dot-line\",\"dot-color\",\"dot-size\",\"line\",\"grid\",\"surface\"]},tooltip:{boolean:bool,function:\"function\"},tooltipStyle:{content:{color:{string:string},background:{string:string},border:{string:string},borderRadius:{string:string},boxShadow:{string:string},padding:{string:string},__type__:{object:object}},line:{borderLeft:{string:string},height:{string:string},width:{string:string},__type__:{object:object}},dot:{border:{string:string},borderRadius:{string:string},height:{string:string},width:{string:string},__type__:{object:object}},__type__:{object:object}},xValueLabel:{function:\"function\"},yValueLabel:{function:\"function\"},zValueLabel:{function:\"function\"},valueMax:{number:number,undefined:\"undefined\"},valueMin:{number:number,undefined:\"undefined\"},verticalRatio:{number:number},height:{string:string},width:{string:string},__type__:{object:object}};exports.allOptions=allOptions},function(module,exports,__webpack_require__){\"use strict\";var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(174);var Filter=__webpack_require__(96);var Settings=__webpack_require__(94);var Point3d=__webpack_require__(34);function DataGroup(){this.dataTable=null}DataGroup.prototype.initializeData=function(graph3d,rawData,style){if(rawData===undefined)return;if(Array.isArray(rawData)){rawData=new DataSet(rawData)}var data;if(rawData instanceof DataSet||rawData instanceof DataView){data=rawData.get()}else{throw new Error(\"Array, DataSet, or DataView expected\")}if(data.length==0)return;this.style=style;if(this.dataSet){this.dataSet.off(\"*\",this._onChange)}this.dataSet=rawData;this.dataTable=data;var me=this;this._onChange=function(){graph3d.setData(me.dataSet)};this.dataSet.on(\"*\",this._onChange);this.colX=\"x\";this.colY=\"y\";this.colZ=\"z\";var withBars=graph3d.hasBars(style);if(withBars){if(graph3d.defaultXBarWidth!==undefined){this.xBarWidth=graph3d.defaultXBarWidth}else{this.xBarWidth=this.getSmallestDifference(data,this.colX)||1}if(graph3d.defaultYBarWidth!==undefined){this.yBarWidth=graph3d.defaultYBarWidth}else{this.yBarWidth=this.getSmallestDifference(data,this.colY)||1}}this._initializeRange(data,this.colX,graph3d,withBars);this._initializeRange(data,this.colY,graph3d,withBars);this._initializeRange(data,this.colZ,graph3d,false);if(data[0].hasOwnProperty(\"style\")){this.colValue=\"style\";var valueRange=this.getColumnRange(data,this.colValue);this._setRangeDefaults(valueRange,graph3d.defaultValueMin,graph3d.defaultValueMax);this.valueRange=valueRange}var table=this.getDataTable();if(table[0].hasOwnProperty(\"filter\")){if(this.dataFilter===undefined){this.dataFilter=new Filter(this,\"filter\",graph3d);this.dataFilter.setOnLoadCallback(function(){graph3d.redraw()})}}var dataPoints;if(this.dataFilter){dataPoints=this.dataFilter._getDataPoints()}else{dataPoints=this._getDataPoints(this.getDataTable())}return dataPoints};DataGroup.prototype._collectRangeSettings=function(column,graph3d){var index=[\"x\",\"y\",\"z\"].indexOf(column);if(index==-1){throw new Error(\"Column '\"+column+\"' invalid\")}var upper=column.toUpperCase();return{barWidth:this[column+\"BarWidth\"],min:graph3d[\"default\"+upper+\"Min\"],max:graph3d[\"default\"+upper+\"Max\"],step:graph3d[\"default\"+upper+\"Step\"],range_label:column+\"Range\",step_label:column+\"Step\"}};DataGroup.prototype._initializeRange=function(data,column,graph3d,withBars){var NUMSTEPS=5;var settings=this._collectRangeSettings(column,graph3d);var range=this.getColumnRange(data,column);if(withBars&&column!=\"z\"){range.expand(settings.barWidth/2)}this._setRangeDefaults(range,settings.min,settings.max);this[settings.range_label]=range;this[settings.step_label]=settings.step!==undefined?settings.step:range.range()/NUMSTEPS};DataGroup.prototype.getDistinctValues=function(column,data){if(data===undefined){data=this.dataTable}var values=[];for(var i=0;i<data.length;i++){var value=data[i][column]||0;if(values.indexOf(value)===-1){values.push(value)}}return values.sort(function(a,b){return a-b})};DataGroup.prototype.getSmallestDifference=function(data,column){var values=this.getDistinctValues(data,column);var smallest_diff=null;for(var i=1;i<values.length;i++){var diff=values[i]-values[i-1];if(smallest_diff==null||smallest_diff>diff){smallest_diff=diff}}return smallest_diff};DataGroup.prototype.getColumnRange=function(data,column){var range=new Range;for(var i=0;i<data.length;i++){var item=data[i][column];range.adjust(item)}return range};DataGroup.prototype.getNumberOfRows=function(){return this.dataTable.length};DataGroup.prototype._setRangeDefaults=function(range,defaultMin,defaultMax){if(defaultMin!==undefined){range.min=defaultMin}if(defaultMax!==undefined){range.max=defaultMax}if(range.max<=range.min)range.max=range.min+1};DataGroup.prototype.getDataTable=function(){return this.dataTable};DataGroup.prototype.getDataSet=function(){return this.dataSet};DataGroup.prototype.getDataPoints=function(data){var dataPoints=[];for(var i=0;i<data.length;i++){var point=new Point3d;point.x=data[i][this.colX]||0;point.y=data[i][this.colY]||0;point.z=data[i][this.colZ]||0;point.data=data[i];if(this.colValue!==undefined){point.value=data[i][this.colValue]||0}var obj={};obj.point=point;obj.bottom=new Point3d(point.x,point.y,this.zRange.min);obj.trans=undefined;obj.screen=undefined;dataPoints.push(obj)}return dataPoints};DataGroup.prototype.initDataAsMatrix=function(data){var x,y,i,obj;var dataX=this.getDistinctValues(this.colX,data);var dataY=this.getDistinctValues(this.colY,data);var dataPoints=this.getDataPoints(data);var dataMatrix=[];for(i=0;i<dataPoints.length;i++){obj=dataPoints[i];var xIndex=dataX.indexOf(obj.point.x);var yIndex=dataY.indexOf(obj.point.y);if(dataMatrix[xIndex]===undefined){dataMatrix[xIndex]=[]}dataMatrix[xIndex][yIndex]=obj}for(x=0;x<dataMatrix.length;x++){for(y=0;y<dataMatrix[x].length;y++){if(dataMatrix[x][y]){dataMatrix[x][y].pointRight=x<dataMatrix.length-1?dataMatrix[x+1][y]:undefined;dataMatrix[x][y].pointTop=y<dataMatrix[x].length-1?dataMatrix[x][y+1]:undefined;dataMatrix[x][y].pointCross=x<dataMatrix.length-1&&y<dataMatrix[x].length-1?dataMatrix[x+1][y+1]:undefined}}}return dataPoints};DataGroup.prototype.getInfo=function(){var dataFilter=this.dataFilter;if(!dataFilter)return undefined;return dataFilter.getLabel()+\": \"+dataFilter.getSelectedValue()};DataGroup.prototype.reload=function(){if(this.dataTable){this.setData(this.dataTable)}};DataGroup.prototype._getDataPoints=function(data){var dataPoints=[];if(this.style===Settings.STYLE.GRID||this.style===Settings.STYLE.SURFACE){dataPoints=this.initDataAsMatrix(data)}else{this._checkValueField(data);dataPoints=this.getDataPoints(data);if(this.style===Settings.STYLE.LINE){for(var i=0;i<dataPoints.length;i++){if(i>0){dataPoints[i-1].pointNext=dataPoints[i]}}}}return dataPoints};DataGroup.prototype._checkValueField=function(data){var hasValueField=this.style===Settings.STYLE.BARCOLOR||this.style===Settings.STYLE.BARSIZE||this.style===Settings.STYLE.DOTCOLOR||this.style===Settings.STYLE.DOTSIZE;if(!hasValueField){return}if(this.colValue===undefined){throw new Error(\"Expected data to have \"+\" field 'style' \"+\" for graph style '\"+this.style+\"'\")}if(data[0][this.colValue]===undefined){throw new Error(\"Expected data to have \"+\" field '\"+this.colValue+\"' \"+\" for graph style '\"+this.style+\"'\")}};module.exports=DataGroup},function(module,exports,__webpack_require__){\"use strict\";function Range(){this.min=undefined;this.max=undefined}Range.prototype.adjust=function(value){if(value===undefined)return;if(this.min===undefined||this.min>value){this.min=value}if(this.max===undefined||this.max<value){this.max=value}};Range.prototype.combine=function(range){this.add(range.min);this.add(range.max)};Range.prototype.expand=function(val){if(val===undefined){return}var newMin=this.min-val;var newMax=this.max+val;if(newMin>newMax){throw new Error(\"Passed expansion value makes range invalid\")}this.min=newMin;this.max=newMax};Range.prototype.range=function(){return this.max-this.min};Range.prototype.center=function(){return(this.min+this.max)/2};module.exports=Range},function(module,exports,__webpack_require__){\"use strict\";var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(factory){if(true){!(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,__WEBPACK_AMD_DEFINE_RESULT__=typeof __WEBPACK_AMD_DEFINE_FACTORY__===\"function\"?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof exports===\"object\"){module.exports=factory()}else{window.propagating=factory()}})(function(){var _firstTarget=null;return function propagating(hammer,options){var _options=options||{preventDefault:false};if(hammer.Manager){var Hammer=hammer;var PropagatingHammer=function(element,options){var o=Object.create(_options);if(options)Hammer.assign(o,options);return propagating(new Hammer(element,o),o)};Hammer.assign(PropagatingHammer,Hammer);PropagatingHammer.Manager=function(element,options){var o=Object.create(_options);if(options)Hammer.assign(o,options);return propagating(new Hammer.Manager(element,o),o)};return PropagatingHammer}var wrapper=Object.create(hammer);var element=hammer.element;if(!element.hammer)element.hammer=[];element.hammer.push(wrapper);hammer.on(\"hammer.input\",function(event){if(_options.preventDefault===true||_options.preventDefault===event.pointerType){event.preventDefault()}if(event.isFirst){_firstTarget=event.target}});wrapper._handlers={};wrapper.on=function(events,handler){split(events).forEach(function(event){var _handlers=wrapper._handlers[event];if(!_handlers){wrapper._handlers[event]=_handlers=[];hammer.on(event,propagatedHandler)}_handlers.push(handler)});return wrapper};wrapper.off=function(events,handler){split(events).forEach(function(event){var _handlers=wrapper._handlers[event];if(_handlers){_handlers=handler?_handlers.filter(function(h){return h!==handler}):[];if(_handlers.length>0){wrapper._handlers[event]=_handlers}else{hammer.off(event,propagatedHandler);delete wrapper._handlers[event]}}});return wrapper};wrapper.emit=function(eventType,event){_firstTarget=event.target;hammer.emit(eventType,event)};wrapper.destroy=function(){var hammers=hammer.element.hammer;var idx=hammers.indexOf(wrapper);if(idx!==-1)hammers.splice(idx,1);if(!hammers.length)delete hammer.element.hammer;wrapper._handlers={};hammer.destroy()};function split(events){return events.match(/[^ ]+/g)}function propagatedHandler(event){if(event.type!==\"hammer.input\"){if(!event.srcEvent._handled){event.srcEvent._handled={}}if(event.srcEvent._handled[event.type]){return}else{event.srcEvent._handled[event.type]=true}}var stopped=false\n;event.stopPropagation=function(){stopped=true};var srcStop=event.srcEvent.stopPropagation.bind(event.srcEvent);if(typeof srcStop==\"function\"){event.srcEvent.stopPropagation=function(){srcStop();event.stopPropagation()}}event.firstTarget=_firstTarget;var elem=_firstTarget;while(elem&&!stopped){var elemHammer=elem.hammer;if(elemHammer){var _handlers;for(var k=0;k<elemHammer.length;k++){_handlers=elemHammer[k]._handlers[event.type];if(_handlers)for(var i=0;i<_handlers.length&&!stopped;i++){_handlers[i](event)}}}elem=elem.parentNode}}return wrapper}})},function(module,exports,__webpack_require__){var __WEBPACK_AMD_DEFINE_RESULT__;(function(window,document,exportName,undefined){\"use strict\";var VENDOR_PREFIXES=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"];var TEST_ELEMENT=document.createElement(\"div\");var TYPE_FUNCTION=\"function\";var round=Math.round;var abs=Math.abs;var now=Date.now;function setTimeoutContext(fn,timeout,context){return setTimeout(bindFn(fn,context),timeout)}function invokeArrayArg(arg,fn,context){if(Array.isArray(arg)){each(arg,context[fn],context);return true}return false}function each(obj,iterator,context){var i;if(!obj){return}if(obj.forEach){obj.forEach(iterator,context)}else if(obj.length!==undefined){i=0;while(i<obj.length){iterator.call(context,obj[i],i,obj);i++}}else{for(i in obj){obj.hasOwnProperty(i)&&iterator.call(context,obj[i],i,obj)}}}function deprecate(method,name,message){var deprecationMessage=\"DEPRECATED METHOD: \"+name+\"\\n\"+message+\" AT \\n\";return function(){var e=new Error(\"get-stack-trace\");var stack=e&&e.stack?e.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\";var log=window.console&&(window.console.warn||window.console.log);if(log){log.call(window.console,deprecationMessage,stack)}return method.apply(this,arguments)}}var assign;if(typeof Object.assign!==\"function\"){assign=function assign(target){if(target===undefined||target===null){throw new TypeError(\"Cannot convert undefined or null to object\")}var output=Object(target);for(var index=1;index<arguments.length;index++){var source=arguments[index];if(source!==undefined&&source!==null){for(var nextKey in source){if(source.hasOwnProperty(nextKey)){output[nextKey]=source[nextKey]}}}}return output}}else{assign=Object.assign}var extend=deprecate(function extend(dest,src,merge){var keys=Object.keys(src);var i=0;while(i<keys.length){if(!merge||merge&&dest[keys[i]]===undefined){dest[keys[i]]=src[keys[i]]}i++}return dest},\"extend\",\"Use `assign`.\");var merge=deprecate(function merge(dest,src){return extend(dest,src,true)},\"merge\",\"Use `assign`.\");function inherit(child,base,properties){var baseP=base.prototype,childP;childP=child.prototype=Object.create(baseP);childP.constructor=child;childP._super=baseP;if(properties){assign(childP,properties)}}function bindFn(fn,context){return function boundFn(){return fn.apply(context,arguments)}}function boolOrFn(val,args){if(typeof val==TYPE_FUNCTION){return val.apply(args?args[0]||undefined:undefined,args)}return val}function ifUndefined(val1,val2){return val1===undefined?val2:val1}function addEventListeners(target,types,handler){each(splitStr(types),function(type){target.addEventListener(type,handler,false)})}function removeEventListeners(target,types,handler){each(splitStr(types),function(type){target.removeEventListener(type,handler,false)})}function hasParent(node,parent){while(node){if(node==parent){return true}node=node.parentNode}return false}function inStr(str,find){return str.indexOf(find)>-1}function splitStr(str){return str.trim().split(/\\s+/g)}function inArray(src,find,findByKey){if(src.indexOf&&!findByKey){return src.indexOf(find)}else{var i=0;while(i<src.length){if(findByKey&&src[i][findByKey]==find||!findByKey&&src[i]===find){return i}i++}return-1}}function toArray(obj){return Array.prototype.slice.call(obj,0)}function uniqueArray(src,key,sort){var results=[];var values=[];var i=0;while(i<src.length){var val=key?src[i][key]:src[i];if(inArray(values,val)<0){results.push(src[i])}values[i]=val;i++}if(sort){if(!key){results=results.sort()}else{results=results.sort(function sortUniqueArray(a,b){return a[key]>b[key]})}}return results}function prefixed(obj,property){var prefix,prop;var camelProp=property[0].toUpperCase()+property.slice(1);var i=0;while(i<VENDOR_PREFIXES.length){prefix=VENDOR_PREFIXES[i];prop=prefix?prefix+camelProp:property;if(prop in obj){return prop}i++}return undefined}var _uniqueId=1;function uniqueId(){return _uniqueId++}function getWindowForElement(element){var doc=element.ownerDocument||element;return doc.defaultView||doc.parentWindow||window}var MOBILE_REGEX=/mobile|tablet|ip(ad|hone|od)|android/i;var SUPPORT_TOUCH=\"ontouchstart\"in window;var SUPPORT_POINTER_EVENTS=prefixed(window,\"PointerEvent\")!==undefined;var SUPPORT_ONLY_TOUCH=SUPPORT_TOUCH&&MOBILE_REGEX.test(navigator.userAgent);var INPUT_TYPE_TOUCH=\"touch\";var INPUT_TYPE_PEN=\"pen\";var INPUT_TYPE_MOUSE=\"mouse\";var INPUT_TYPE_KINECT=\"kinect\";var COMPUTE_INTERVAL=25;var INPUT_START=1;var INPUT_MOVE=2;var INPUT_END=4;var INPUT_CANCEL=8;var DIRECTION_NONE=1;var DIRECTION_LEFT=2;var DIRECTION_RIGHT=4;var DIRECTION_UP=8;var DIRECTION_DOWN=16;var DIRECTION_HORIZONTAL=DIRECTION_LEFT|DIRECTION_RIGHT;var DIRECTION_VERTICAL=DIRECTION_UP|DIRECTION_DOWN;var DIRECTION_ALL=DIRECTION_HORIZONTAL|DIRECTION_VERTICAL;var PROPS_XY=[\"x\",\"y\"];var PROPS_CLIENT_XY=[\"clientX\",\"clientY\"];function Input(manager,callback){var self=this;this.manager=manager;this.callback=callback;this.element=manager.element;this.target=manager.options.inputTarget;this.domHandler=function(ev){if(boolOrFn(manager.options.enable,[manager])){self.handler(ev)}};this.init()}Input.prototype={handler:function(){},init:function(){this.evEl&&addEventListeners(this.element,this.evEl,this.domHandler);this.evTarget&&addEventListeners(this.target,this.evTarget,this.domHandler);this.evWin&&addEventListeners(getWindowForElement(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&removeEventListeners(this.element,this.evEl,this.domHandler);this.evTarget&&removeEventListeners(this.target,this.evTarget,this.domHandler);this.evWin&&removeEventListeners(getWindowForElement(this.element),this.evWin,this.domHandler)}};function createInputInstance(manager){var Type;var inputClass=manager.options.inputClass;if(inputClass){Type=inputClass}else if(SUPPORT_POINTER_EVENTS){Type=PointerEventInput}else if(SUPPORT_ONLY_TOUCH){Type=TouchInput}else if(!SUPPORT_TOUCH){Type=MouseInput}else{Type=TouchMouseInput}return new Type(manager,inputHandler)}function inputHandler(manager,eventType,input){var pointersLen=input.pointers.length;var changedPointersLen=input.changedPointers.length;var isFirst=eventType&INPUT_START&&pointersLen-changedPointersLen===0;var isFinal=eventType&(INPUT_END|INPUT_CANCEL)&&pointersLen-changedPointersLen===0;input.isFirst=!!isFirst;input.isFinal=!!isFinal;if(isFirst){manager.session={}}input.eventType=eventType;computeInputData(manager,input);manager.emit(\"hammer.input\",input);manager.recognize(input);manager.session.prevInput=input}function computeInputData(manager,input){var session=manager.session;var pointers=input.pointers;var pointersLength=pointers.length;if(!session.firstInput){session.firstInput=simpleCloneInputData(input)}if(pointersLength>1&&!session.firstMultiple){session.firstMultiple=simpleCloneInputData(input)}else if(pointersLength===1){session.firstMultiple=false}var firstInput=session.firstInput;var firstMultiple=session.firstMultiple;var offsetCenter=firstMultiple?firstMultiple.center:firstInput.center;var center=input.center=getCenter(pointers);input.timeStamp=now();input.deltaTime=input.timeStamp-firstInput.timeStamp;input.angle=getAngle(offsetCenter,center);input.distance=getDistance(offsetCenter,center);computeDeltaXY(session,input);input.offsetDirection=getDirection(input.deltaX,input.deltaY);var overallVelocity=getVelocity(input.deltaTime,input.deltaX,input.deltaY);input.overallVelocityX=overallVelocity.x;input.overallVelocityY=overallVelocity.y;input.overallVelocity=abs(overallVelocity.x)>abs(overallVelocity.y)?overallVelocity.x:overallVelocity.y;input.scale=firstMultiple?getScale(firstMultiple.pointers,pointers):1;input.rotation=firstMultiple?getRotation(firstMultiple.pointers,pointers):0;input.maxPointers=!session.prevInput?input.pointers.length:input.pointers.length>session.prevInput.maxPointers?input.pointers.length:session.prevInput.maxPointers;computeIntervalInputData(session,input);var target=manager.element;if(hasParent(input.srcEvent.target,target)){target=input.srcEvent.target}input.target=target}function computeDeltaXY(session,input){var center=input.center;var offset=session.offsetDelta||{};var prevDelta=session.prevDelta||{};var prevInput=session.prevInput||{};if(input.eventType===INPUT_START||prevInput.eventType===INPUT_END){prevDelta=session.prevDelta={x:prevInput.deltaX||0,y:prevInput.deltaY||0};offset=session.offsetDelta={x:center.x,y:center.y}}input.deltaX=prevDelta.x+(center.x-offset.x);input.deltaY=prevDelta.y+(center.y-offset.y)}function computeIntervalInputData(session,input){var last=session.lastInterval||input,deltaTime=input.timeStamp-last.timeStamp,velocity,velocityX,velocityY,direction;if(input.eventType!=INPUT_CANCEL&&(deltaTime>COMPUTE_INTERVAL||last.velocity===undefined)){var deltaX=input.deltaX-last.deltaX;var deltaY=input.deltaY-last.deltaY;var v=getVelocity(deltaTime,deltaX,deltaY);velocityX=v.x;velocityY=v.y;velocity=abs(v.x)>abs(v.y)?v.x:v.y;direction=getDirection(deltaX,deltaY);session.lastInterval=input}else{velocity=last.velocity;velocityX=last.velocityX;velocityY=last.velocityY;direction=last.direction}input.velocity=velocity;input.velocityX=velocityX;input.velocityY=velocityY;input.direction=direction}function simpleCloneInputData(input){var pointers=[];var i=0;while(i<input.pointers.length){pointers[i]={clientX:round(input.pointers[i].clientX),clientY:round(input.pointers[i].clientY)};i++}return{timeStamp:now(),pointers:pointers,center:getCenter(pointers),deltaX:input.deltaX,deltaY:input.deltaY}}function getCenter(pointers){var pointersLength=pointers.length;if(pointersLength===1){return{x:round(pointers[0].clientX),y:round(pointers[0].clientY)}}var x=0,y=0,i=0;while(i<pointersLength){x+=pointers[i].clientX;y+=pointers[i].clientY;i++}return{x:round(x/pointersLength),y:round(y/pointersLength)}}function getVelocity(deltaTime,x,y){return{x:x/deltaTime||0,y:y/deltaTime||0}}function getDirection(x,y){if(x===y){return DIRECTION_NONE}if(abs(x)>=abs(y)){return x<0?DIRECTION_LEFT:DIRECTION_RIGHT}return y<0?DIRECTION_UP:DIRECTION_DOWN}function getDistance(p1,p2,props){if(!props){props=PROPS_XY}var x=p2[props[0]]-p1[props[0]],y=p2[props[1]]-p1[props[1]];return Math.sqrt(x*x+y*y)}function getAngle(p1,p2,props){if(!props){props=PROPS_XY}var x=p2[props[0]]-p1[props[0]],y=p2[props[1]]-p1[props[1]];return Math.atan2(y,x)*180/Math.PI}function getRotation(start,end){return getAngle(end[1],end[0],PROPS_CLIENT_XY)+getAngle(start[1],start[0],PROPS_CLIENT_XY)}function getScale(start,end){return getDistance(end[0],end[1],PROPS_CLIENT_XY)/getDistance(start[0],start[1],PROPS_CLIENT_XY)}var MOUSE_INPUT_MAP={mousedown:INPUT_START,mousemove:INPUT_MOVE,mouseup:INPUT_END};var MOUSE_ELEMENT_EVENTS=\"mousedown\";var MOUSE_WINDOW_EVENTS=\"mousemove mouseup\";function MouseInput(){this.evEl=MOUSE_ELEMENT_EVENTS;this.evWin=MOUSE_WINDOW_EVENTS;this.pressed=false;Input.apply(this,arguments)}inherit(MouseInput,Input,{handler:function MEhandler(ev){var eventType=MOUSE_INPUT_MAP[ev.type];if(eventType&INPUT_START&&ev.button===0){this.pressed=true}if(eventType&INPUT_MOVE&&ev.which!==1){eventType=INPUT_END}if(!this.pressed){return}if(eventType&INPUT_END){this.pressed=false}this.callback(this.manager,eventType,{pointers:[ev],changedPointers:[ev],pointerType:INPUT_TYPE_MOUSE,srcEvent:ev})}});var POINTER_INPUT_MAP={pointerdown:INPUT_START,pointermove:INPUT_MOVE,pointerup:INPUT_END,pointercancel:INPUT_CANCEL,pointerout:INPUT_CANCEL};var IE10_POINTER_TYPE_ENUM={2:INPUT_TYPE_TOUCH,3:INPUT_TYPE_PEN,4:INPUT_TYPE_MOUSE,5:INPUT_TYPE_KINECT};var POINTER_ELEMENT_EVENTS=\"pointerdown\";var POINTER_WINDOW_EVENTS=\"pointermove pointerup pointercancel\";if(window.MSPointerEvent&&!window.PointerEvent){POINTER_ELEMENT_EVENTS=\"MSPointerDown\";POINTER_WINDOW_EVENTS=\"MSPointerMove MSPointerUp MSPointerCancel\"}function PointerEventInput(){this.evEl=POINTER_ELEMENT_EVENTS;this.evWin=POINTER_WINDOW_EVENTS;Input.apply(this,arguments);this.store=this.manager.session.pointerEvents=[]}inherit(PointerEventInput,Input,{handler:function PEhandler(ev){var store=this.store;var removePointer=false;var eventTypeNormalized=ev.type.toLowerCase().replace(\"ms\",\"\");var eventType=POINTER_INPUT_MAP[eventTypeNormalized];var pointerType=IE10_POINTER_TYPE_ENUM[ev.pointerType]||ev.pointerType;var isTouch=pointerType==INPUT_TYPE_TOUCH;var storeIndex=inArray(store,ev.pointerId,\"pointerId\");if(eventType&INPUT_START&&(ev.button===0||isTouch)){if(storeIndex<0){store.push(ev);storeIndex=store.length-1}}else if(eventType&(INPUT_END|INPUT_CANCEL)){removePointer=true}if(storeIndex<0){return}store[storeIndex]=ev;this.callback(this.manager,eventType,{pointers:store,changedPointers:[ev],pointerType:pointerType,srcEvent:ev});if(removePointer){store.splice(storeIndex,1)}}});var SINGLE_TOUCH_INPUT_MAP={touchstart:INPUT_START,touchmove:INPUT_MOVE,touchend:INPUT_END,touchcancel:INPUT_CANCEL};var SINGLE_TOUCH_TARGET_EVENTS=\"touchstart\";var SINGLE_TOUCH_WINDOW_EVENTS=\"touchstart touchmove touchend touchcancel\";function SingleTouchInput(){this.evTarget=SINGLE_TOUCH_TARGET_EVENTS;this.evWin=SINGLE_TOUCH_WINDOW_EVENTS;this.started=false;Input.apply(this,arguments)}inherit(SingleTouchInput,Input,{handler:function TEhandler(ev){var type=SINGLE_TOUCH_INPUT_MAP[ev.type];if(type===INPUT_START){this.started=true}if(!this.started){return}var touches=normalizeSingleTouches.call(this,ev,type);if(type&(INPUT_END|INPUT_CANCEL)&&touches[0].length-touches[1].length===0){this.started=false}this.callback(this.manager,type,{pointers:touches[0],changedPointers:touches[1],pointerType:INPUT_TYPE_TOUCH,srcEvent:ev})}});function normalizeSingleTouches(ev,type){var all=toArray(ev.touches);var changed=toArray(ev.changedTouches);if(type&(INPUT_END|INPUT_CANCEL)){all=uniqueArray(all.concat(changed),\"identifier\",true)}return[all,changed]}var TOUCH_INPUT_MAP={touchstart:INPUT_START,touchmove:INPUT_MOVE,touchend:INPUT_END,touchcancel:INPUT_CANCEL};var TOUCH_TARGET_EVENTS=\"touchstart touchmove touchend touchcancel\";function TouchInput(){this.evTarget=TOUCH_TARGET_EVENTS;this.targetIds={};Input.apply(this,arguments)}inherit(TouchInput,Input,{handler:function MTEhandler(ev){var type=TOUCH_INPUT_MAP[ev.type];var touches=getTouches.call(this,ev,type);if(!touches){return}this.callback(this.manager,type,{pointers:touches[0],changedPointers:touches[1],pointerType:INPUT_TYPE_TOUCH,srcEvent:ev})}});function getTouches(ev,type){var allTouches=toArray(ev.touches);var targetIds=this.targetIds;if(type&(INPUT_START|INPUT_MOVE)&&allTouches.length===1){targetIds[allTouches[0].identifier]=true;return[allTouches,allTouches]}var i,targetTouches,changedTouches=toArray(ev.changedTouches),changedTargetTouches=[],target=this.target;targetTouches=allTouches.filter(function(touch){return hasParent(touch.target,target)});if(type===INPUT_START){i=0;while(i<targetTouches.length){targetIds[targetTouches[i].identifier]=true;i++}}i=0;while(i<changedTouches.length){if(targetIds[changedTouches[i].identifier]){changedTargetTouches.push(changedTouches[i])}if(type&(INPUT_END|INPUT_CANCEL)){delete targetIds[changedTouches[i].identifier]}i++}if(!changedTargetTouches.length){return}return[uniqueArray(targetTouches.concat(changedTargetTouches),\"identifier\",true),changedTargetTouches]}var DEDUP_TIMEOUT=2500;var DEDUP_DISTANCE=25;function TouchMouseInput(){Input.apply(this,arguments);var handler=bindFn(this.handler,this);this.touch=new TouchInput(this.manager,handler);this.mouse=new MouseInput(this.manager,handler);this.primaryTouch=null;this.lastTouches=[]}inherit(TouchMouseInput,Input,{handler:function TMEhandler(manager,inputEvent,inputData){var isTouch=inputData.pointerType==INPUT_TYPE_TOUCH,isMouse=inputData.pointerType==INPUT_TYPE_MOUSE;if(isMouse&&inputData.sourceCapabilities&&inputData.sourceCapabilities.firesTouchEvents){return}if(isTouch){recordTouches.call(this,inputEvent,inputData)}else if(isMouse&&isSyntheticEvent.call(this,inputData)){return}this.callback(manager,inputEvent,inputData)},destroy:function destroy(){this.touch.destroy();this.mouse.destroy()}});function recordTouches(eventType,eventData){if(eventType&INPUT_START){this.primaryTouch=eventData.changedPointers[0].identifier;setLastTouch.call(this,eventData)}else if(eventType&(INPUT_END|INPUT_CANCEL)){setLastTouch.call(this,eventData)}}function setLastTouch(eventData){var touch=eventData.changedPointers[0];if(touch.identifier===this.primaryTouch){var lastTouch={x:touch.clientX,y:touch.clientY};this.lastTouches.push(lastTouch);var lts=this.lastTouches;var removeLastTouch=function(){var i=lts.indexOf(lastTouch);if(i>-1){lts.splice(i,1)}};setTimeout(removeLastTouch,DEDUP_TIMEOUT)}}function isSyntheticEvent(eventData){var x=eventData.srcEvent.clientX,y=eventData.srcEvent.clientY;for(var i=0;i<this.lastTouches.length;i++){var t=this.lastTouches[i];var dx=Math.abs(x-t.x),dy=Math.abs(y-t.y);if(dx<=DEDUP_DISTANCE&&dy<=DEDUP_DISTANCE){return true}}return false}var PREFIXED_TOUCH_ACTION=prefixed(TEST_ELEMENT.style,\"touchAction\");var NATIVE_TOUCH_ACTION=PREFIXED_TOUCH_ACTION!==undefined;var TOUCH_ACTION_COMPUTE=\"compute\";var TOUCH_ACTION_AUTO=\"auto\";var TOUCH_ACTION_MANIPULATION=\"manipulation\";var TOUCH_ACTION_NONE=\"none\";var TOUCH_ACTION_PAN_X=\"pan-x\";var TOUCH_ACTION_PAN_Y=\"pan-y\";var TOUCH_ACTION_MAP=getTouchActionProps();function TouchAction(manager,value){this.manager=manager;this.set(value)}TouchAction.prototype={set:function(value){if(value==TOUCH_ACTION_COMPUTE){value=this.compute()}if(NATIVE_TOUCH_ACTION&&this.manager.element.style&&TOUCH_ACTION_MAP[value]){this.manager.element.style[PREFIXED_TOUCH_ACTION]=value}this.actions=value.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var actions=[];each(this.manager.recognizers,function(recognizer){if(boolOrFn(recognizer.options.enable,[recognizer])){actions=actions.concat(recognizer.getTouchAction())}});return cleanTouchActions(actions.join(\" \"))},preventDefaults:function(input){var srcEvent=input.srcEvent;var direction=input.offsetDirection;if(this.manager.session.prevented){srcEvent.preventDefault();return}var actions=this.actions;var hasNone=inStr(actions,TOUCH_ACTION_NONE)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_NONE];var hasPanY=inStr(actions,TOUCH_ACTION_PAN_Y)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y];var hasPanX=inStr(actions,TOUCH_ACTION_PAN_X)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X];if(hasNone){var isTapPointer=input.pointers.length===1;var isTapMovement=input.distance<2;var isTapTouchTime=input.deltaTime<250;if(isTapPointer&&isTapMovement&&isTapTouchTime){return}}if(hasPanX&&hasPanY){return}if(hasNone||hasPanY&&direction&DIRECTION_HORIZONTAL||hasPanX&&direction&DIRECTION_VERTICAL){return this.preventSrc(srcEvent)}},preventSrc:function(srcEvent){this.manager.session.prevented=true;srcEvent.preventDefault()}};function cleanTouchActions(actions){if(inStr(actions,TOUCH_ACTION_NONE)){return TOUCH_ACTION_NONE}var hasPanX=inStr(actions,TOUCH_ACTION_PAN_X);var hasPanY=inStr(actions,TOUCH_ACTION_PAN_Y);if(hasPanX&&hasPanY){return TOUCH_ACTION_NONE}if(hasPanX||hasPanY){return hasPanX?TOUCH_ACTION_PAN_X:TOUCH_ACTION_PAN_Y}if(inStr(actions,TOUCH_ACTION_MANIPULATION)){return TOUCH_ACTION_MANIPULATION}return TOUCH_ACTION_AUTO}function getTouchActionProps(){if(!NATIVE_TOUCH_ACTION){return false}var touchMap={};var cssSupports=window.CSS&&window.CSS.supports;[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach(function(val){touchMap[val]=cssSupports?window.CSS.supports(\"touch-action\",val):true});return touchMap}var STATE_POSSIBLE=1;var STATE_BEGAN=2;var STATE_CHANGED=4;var STATE_ENDED=8;var STATE_RECOGNIZED=STATE_ENDED;var STATE_CANCELLED=16;var STATE_FAILED=32;function Recognizer(options){this.options=assign({},this.defaults,options||{});this.id=uniqueId();this.manager=null;this.options.enable=ifUndefined(this.options.enable,true);this.state=STATE_POSSIBLE;this.simultaneous={};this.requireFail=[]}Recognizer.prototype={defaults:{},set:function(options){assign(this.options,options);this.manager&&this.manager.touchAction.update();return this},recognizeWith:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"recognizeWith\",this)){return this}var simultaneous=this.simultaneous;otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);if(!simultaneous[otherRecognizer.id]){simultaneous[otherRecognizer.id]=otherRecognizer;otherRecognizer.recognizeWith(this)}return this},dropRecognizeWith:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"dropRecognizeWith\",this)){return this}otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);delete this.simultaneous[otherRecognizer.id];return this},requireFailure:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"requireFailure\",this)){return this}var requireFail=this.requireFail;otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);if(inArray(requireFail,otherRecognizer)===-1){requireFail.push(otherRecognizer);otherRecognizer.requireFailure(this)}return this},dropRequireFailure:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"dropRequireFailure\",this)){return this}otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);var index=inArray(this.requireFail,otherRecognizer);if(index>-1){this.requireFail.splice(index,1)}return this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(otherRecognizer){return!!this.simultaneous[otherRecognizer.id]},emit:function(input){var self=this;var state=this.state;function emit(event){self.manager.emit(event,input)}if(state<STATE_ENDED){emit(self.options.event+stateStr(state))}emit(self.options.event);if(input.additionalEvent){emit(input.additionalEvent)}if(state>=STATE_ENDED){emit(self.options.event+stateStr(state))}},tryEmit:function(input){if(this.canEmit()){return this.emit(input)}this.state=STATE_FAILED},canEmit:function(){var i=0;while(i<this.requireFail.length){if(!(this.requireFail[i].state&(STATE_FAILED|STATE_POSSIBLE))){return false}i++}return true},recognize:function(inputData){var inputDataClone=assign({},inputData);if(!boolOrFn(this.options.enable,[this,inputDataClone])){this.reset();this.state=STATE_FAILED;return}if(this.state&(STATE_RECOGNIZED|STATE_CANCELLED|STATE_FAILED)){this.state=STATE_POSSIBLE}this.state=this.process(inputDataClone);if(this.state&(STATE_BEGAN|STATE_CHANGED|STATE_ENDED|STATE_CANCELLED)){this.tryEmit(inputDataClone)}},process:function(inputData){},getTouchAction:function(){},reset:function(){}};function stateStr(state){if(state&STATE_CANCELLED){return\"cancel\"}else if(state&STATE_ENDED){return\"end\"}else if(state&STATE_CHANGED){return\"move\"}else if(state&STATE_BEGAN){return\"start\"}return\"\"}function directionStr(direction){if(direction==DIRECTION_DOWN){return\"down\"}else if(direction==DIRECTION_UP){return\"up\"}else if(direction==DIRECTION_LEFT){return\"left\"}else if(direction==DIRECTION_RIGHT){return\"right\"}return\"\"}function getRecognizerByNameIfManager(otherRecognizer,recognizer){var manager=recognizer.manager;if(manager){return manager.get(otherRecognizer)}return otherRecognizer}function AttrRecognizer(){Recognizer.apply(this,arguments)}inherit(AttrRecognizer,Recognizer,{defaults:{pointers:1},attrTest:function(input){var optionPointers=this.options.pointers;return optionPointers===0||input.pointers.length===optionPointers},process:function(input){var state=this.state;var eventType=input.eventType;var isRecognized=state&(STATE_BEGAN|STATE_CHANGED);var isValid=this.attrTest(input);if(isRecognized&&(eventType&INPUT_CANCEL||!isValid)){return state|STATE_CANCELLED}else if(isRecognized||isValid){if(eventType&INPUT_END){return state|STATE_ENDED}else if(!(state&STATE_BEGAN)){return STATE_BEGAN}return state|STATE_CHANGED}return STATE_FAILED}});function PanRecognizer(){AttrRecognizer.apply(this,arguments);this.pX=null;this.pY=null}inherit(PanRecognizer,AttrRecognizer,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:DIRECTION_ALL},getTouchAction:function(){var direction=this.options.direction;var actions=[];if(direction&DIRECTION_HORIZONTAL){actions.push(TOUCH_ACTION_PAN_Y)}if(direction&DIRECTION_VERTICAL){actions.push(TOUCH_ACTION_PAN_X)}return actions},directionTest:function(input){var options=this.options;var hasMoved=true;var distance=input.distance;var direction=input.direction;var x=input.deltaX;var y=input.deltaY;if(!(direction&options.direction)){if(options.direction&DIRECTION_HORIZONTAL){direction=x===0?DIRECTION_NONE:x<0?DIRECTION_LEFT:DIRECTION_RIGHT;hasMoved=x!=this.pX;distance=Math.abs(input.deltaX)}else{direction=y===0?DIRECTION_NONE:y<0?DIRECTION_UP:DIRECTION_DOWN;hasMoved=y!=this.pY;distance=Math.abs(input.deltaY)}}input.direction=direction;return hasMoved&&distance>options.threshold&&direction&options.direction},attrTest:function(input){return AttrRecognizer.prototype.attrTest.call(this,input)&&(this.state&STATE_BEGAN||!(this.state&STATE_BEGAN)&&this.directionTest(input))},emit:function(input){this.pX=input.deltaX;this.pY=input.deltaY;var direction=directionStr(input.direction);if(direction){input.additionalEvent=this.options.event+direction}this._super.emit.call(this,input)}});function PinchRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(PinchRecognizer,AttrRecognizer,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[TOUCH_ACTION_NONE]},attrTest:function(input){return this._super.attrTest.call(this,input)&&(Math.abs(input.scale-1)>this.options.threshold||this.state&STATE_BEGAN)},emit:function(input){if(input.scale!==1){var inOut=input.scale<1?\"in\":\"out\";input.additionalEvent=this.options.event+inOut}this._super.emit.call(this,input)}});function PressRecognizer(){Recognizer.apply(this,arguments);this._timer=null;this._input=null}inherit(PressRecognizer,Recognizer,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[TOUCH_ACTION_AUTO]},process:function(input){var options=this.options;var validPointers=input.pointers.length===options.pointers;var validMovement=input.distance<options.threshold;var validTime=input.deltaTime>options.time;this._input=input;if(!validMovement||!validPointers||input.eventType&(INPUT_END|INPUT_CANCEL)&&!validTime){this.reset()}else if(input.eventType&INPUT_START){this.reset();this._timer=setTimeoutContext(function(){this.state=STATE_RECOGNIZED;this.tryEmit()},options.time,this)}else if(input.eventType&INPUT_END){return STATE_RECOGNIZED}return STATE_FAILED},reset:function(){clearTimeout(this._timer)},emit:function(input){if(this.state!==STATE_RECOGNIZED){return}if(input&&input.eventType&INPUT_END){this.manager.emit(this.options.event+\"up\",input)}else{this._input.timeStamp=now();this.manager.emit(this.options.event,this._input)}}});function RotateRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(RotateRecognizer,AttrRecognizer,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[TOUCH_ACTION_NONE]},attrTest:function(input){return this._super.attrTest.call(this,input)&&(Math.abs(input.rotation)>this.options.threshold||this.state&STATE_BEGAN)}});function SwipeRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(SwipeRecognizer,AttrRecognizer,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:DIRECTION_HORIZONTAL|DIRECTION_VERTICAL,pointers:1},getTouchAction:function(){return PanRecognizer.prototype.getTouchAction.call(this)},attrTest:function(input){var direction=this.options.direction;var velocity;if(direction&(DIRECTION_HORIZONTAL|DIRECTION_VERTICAL)){velocity=input.overallVelocity}else if(direction&DIRECTION_HORIZONTAL){velocity=input.overallVelocityX}else if(direction&DIRECTION_VERTICAL){velocity=input.overallVelocityY}return this._super.attrTest.call(this,input)&&direction&input.offsetDirection&&input.distance>this.options.threshold&&input.maxPointers==this.options.pointers&&abs(velocity)>this.options.velocity&&input.eventType&INPUT_END},emit:function(input){var direction=directionStr(input.offsetDirection);if(direction){this.manager.emit(this.options.event+direction,input)}this.manager.emit(this.options.event,input)}});function TapRecognizer(){Recognizer.apply(this,arguments);this.pTime=false;this.pCenter=false;this._timer=null;this._input=null;this.count=0}inherit(TapRecognizer,Recognizer,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[TOUCH_ACTION_MANIPULATION]},process:function(input){var options=this.options;var validPointers=input.pointers.length===options.pointers;var validMovement=input.distance<options.threshold;var validTouchTime=input.deltaTime<options.time;this.reset();if(input.eventType&INPUT_START&&this.count===0){return this.failTimeout()}if(validMovement&&validTouchTime&&validPointers){if(input.eventType!=INPUT_END){return this.failTimeout()}var validInterval=this.pTime?input.timeStamp-this.pTime<options.interval:true;var validMultiTap=!this.pCenter||getDistance(this.pCenter,input.center)<options.posThreshold;this.pTime=input.timeStamp;this.pCenter=input.center;if(!validMultiTap||!validInterval){this.count=1}else{this.count+=1}this._input=input;var tapCount=this.count%options.taps;if(tapCount===0){if(!this.hasRequireFailures()){return STATE_RECOGNIZED}else{this._timer=setTimeoutContext(function(){this.state=STATE_RECOGNIZED;this.tryEmit()},options.interval,this);return STATE_BEGAN}}}return STATE_FAILED},failTimeout:function(){this._timer=setTimeoutContext(function(){this.state=STATE_FAILED},this.options.interval,this);return STATE_FAILED},reset:function(){clearTimeout(this._timer)},emit:function(){if(this.state==STATE_RECOGNIZED){this._input.tapCount=this.count;this.manager.emit(this.options.event,this._input)}}});function Hammer(element,options){options=options||{};options.recognizers=ifUndefined(options.recognizers,Hammer.defaults.preset);return new Manager(element,options)}Hammer.VERSION=\"2.0.7\";Hammer.defaults={domEvents:false,touchAction:TOUCH_ACTION_COMPUTE,enable:true,inputTarget:null,inputClass:null,preset:[[RotateRecognizer,{enable:false}],[PinchRecognizer,{enable:false},[\"rotate\"]],[SwipeRecognizer,{direction:DIRECTION_HORIZONTAL}],[PanRecognizer,{direction:DIRECTION_HORIZONTAL},[\"swipe\"]],[TapRecognizer],[TapRecognizer,{event:\"doubletap\",taps:2},[\"tap\"]],[PressRecognizer]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}};var STOP=1;var FORCED_STOP=2;function Manager(element,options){this.options=assign({},Hammer.defaults,options||{});this.options.inputTarget=this.options.inputTarget||element;this.handlers={};this.session={};this.recognizers=[];this.oldCssProps={};this.element=element;this.input=createInputInstance(this);this.touchAction=new TouchAction(this,this.options.touchAction);toggleCssProps(this,true);each(this.options.recognizers,function(item){var recognizer=this.add(new item[0](item[1]));item[2]&&recognizer.recognizeWith(item[2]);item[3]&&recognizer.requireFailure(item[3])},this)}Manager.prototype={set:function(options){assign(this.options,options);if(options.touchAction){this.touchAction.update()}if(options.inputTarget){this.input.destroy();this.input.target=options.inputTarget;this.input.init()}return this},stop:function(force){this.session.stopped=force?FORCED_STOP:STOP},recognize:function(inputData){var session=this.session;if(session.stopped){return}this.touchAction.preventDefaults(inputData)\n;var recognizer;var recognizers=this.recognizers;var curRecognizer=session.curRecognizer;if(!curRecognizer||curRecognizer&&curRecognizer.state&STATE_RECOGNIZED){curRecognizer=session.curRecognizer=null}var i=0;while(i<recognizers.length){recognizer=recognizers[i];if(session.stopped!==FORCED_STOP&&(!curRecognizer||recognizer==curRecognizer||recognizer.canRecognizeWith(curRecognizer))){recognizer.recognize(inputData)}else{recognizer.reset()}if(!curRecognizer&&recognizer.state&(STATE_BEGAN|STATE_CHANGED|STATE_ENDED)){curRecognizer=session.curRecognizer=recognizer}i++}},get:function(recognizer){if(recognizer instanceof Recognizer){return recognizer}var recognizers=this.recognizers;for(var i=0;i<recognizers.length;i++){if(recognizers[i].options.event==recognizer){return recognizers[i]}}return null},add:function(recognizer){if(invokeArrayArg(recognizer,\"add\",this)){return this}var existing=this.get(recognizer.options.event);if(existing){this.remove(existing)}this.recognizers.push(recognizer);recognizer.manager=this;this.touchAction.update();return recognizer},remove:function(recognizer){if(invokeArrayArg(recognizer,\"remove\",this)){return this}recognizer=this.get(recognizer);if(recognizer){var recognizers=this.recognizers;var index=inArray(recognizers,recognizer);if(index!==-1){recognizers.splice(index,1);this.touchAction.update()}}return this},on:function(events,handler){if(events===undefined){return}if(handler===undefined){return}var handlers=this.handlers;each(splitStr(events),function(event){handlers[event]=handlers[event]||[];handlers[event].push(handler)});return this},off:function(events,handler){if(events===undefined){return}var handlers=this.handlers;each(splitStr(events),function(event){if(!handler){delete handlers[event]}else{handlers[event]&&handlers[event].splice(inArray(handlers[event],handler),1)}});return this},emit:function(event,data){if(this.options.domEvents){triggerDomEvent(event,data)}var handlers=this.handlers[event]&&this.handlers[event].slice();if(!handlers||!handlers.length){return}data.type=event;data.preventDefault=function(){data.srcEvent.preventDefault()};var i=0;while(i<handlers.length){handlers[i](data);i++}},destroy:function(){this.element&&toggleCssProps(this,false);this.handlers={};this.session={};this.input.destroy();this.element=null}};function toggleCssProps(manager,add){var element=manager.element;if(!element.style){return}var prop;each(manager.options.cssProps,function(value,name){prop=prefixed(element.style,name);if(add){manager.oldCssProps[prop]=element.style[prop];element.style[prop]=value}else{element.style[prop]=manager.oldCssProps[prop]||\"\"}});if(!add){manager.oldCssProps={}}}function triggerDomEvent(event,data){var gestureEvent=document.createEvent(\"Event\");gestureEvent.initEvent(event,true,true);gestureEvent.gesture=data;data.target.dispatchEvent(gestureEvent)}assign(Hammer,{INPUT_START:INPUT_START,INPUT_MOVE:INPUT_MOVE,INPUT_END:INPUT_END,INPUT_CANCEL:INPUT_CANCEL,STATE_POSSIBLE:STATE_POSSIBLE,STATE_BEGAN:STATE_BEGAN,STATE_CHANGED:STATE_CHANGED,STATE_ENDED:STATE_ENDED,STATE_RECOGNIZED:STATE_RECOGNIZED,STATE_CANCELLED:STATE_CANCELLED,STATE_FAILED:STATE_FAILED,DIRECTION_NONE:DIRECTION_NONE,DIRECTION_LEFT:DIRECTION_LEFT,DIRECTION_RIGHT:DIRECTION_RIGHT,DIRECTION_UP:DIRECTION_UP,DIRECTION_DOWN:DIRECTION_DOWN,DIRECTION_HORIZONTAL:DIRECTION_HORIZONTAL,DIRECTION_VERTICAL:DIRECTION_VERTICAL,DIRECTION_ALL:DIRECTION_ALL,Manager:Manager,Input:Input,TouchAction:TouchAction,TouchInput:TouchInput,MouseInput:MouseInput,PointerEventInput:PointerEventInput,TouchMouseInput:TouchMouseInput,SingleTouchInput:SingleTouchInput,Recognizer:Recognizer,AttrRecognizer:AttrRecognizer,Tap:TapRecognizer,Pan:PanRecognizer,Swipe:SwipeRecognizer,Pinch:PinchRecognizer,Rotate:RotateRecognizer,Press:PressRecognizer,on:addEventListeners,off:removeEventListeners,each:each,merge:merge,extend:extend,assign:assign,inherit:inherit,bindFn:bindFn,prefixed:prefixed});var freeGlobal=typeof window!==\"undefined\"?window:typeof self!==\"undefined\"?self:{};freeGlobal.Hammer=Hammer;if(true){!(__WEBPACK_AMD_DEFINE_RESULT__=function(){return Hammer}.call(exports,__webpack_require__,exports,module),__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof module!=\"undefined\"&&module.exports){module.exports=Hammer}else{window[exportName]=Hammer}})(window,document,\"Hammer\")},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Timeline=__webpack_require__(178);exports.Graph2d=__webpack_require__(180);exports.timeline={Core:__webpack_require__(65),DateUtil:__webpack_require__(36),Range:__webpack_require__(64),stack:__webpack_require__(100),TimeStep:__webpack_require__(66),components:{items:{Item:__webpack_require__(38),BackgroundItem:__webpack_require__(103),BoxItem:__webpack_require__(101),PointItem:__webpack_require__(102),RangeItem:__webpack_require__(70)},BackgroundGroup:__webpack_require__(69),Component:__webpack_require__(16),CurrentTime:__webpack_require__(67),CustomTime:__webpack_require__(46),DataAxis:__webpack_require__(107),DataScale:__webpack_require__(108),GraphGroup:__webpack_require__(109),Group:__webpack_require__(68),ItemSet:__webpack_require__(99),Legend:__webpack_require__(112),LineGraph:__webpack_require__(106),TimeAxis:__webpack_require__(45)}};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(64);var Core=__webpack_require__(65);var TimeAxis=__webpack_require__(45);var CurrentTime=__webpack_require__(67);var CustomTime=__webpack_require__(46);var ItemSet=__webpack_require__(99);var printStyle=__webpack_require__(15).printStyle;var allOptions=__webpack_require__(105).allOptions;var configureOptions=__webpack_require__(105).configureOptions;var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];function Timeline(container,items,groups,options){if(!(this instanceof Timeline)){throw new SyntaxError(\"Constructor must be called with the new operator\")}if(!(Array.isArray(groups)||groups instanceof DataSet||groups instanceof DataView)&&groups instanceof Object){var forthArgument=options;options=groups;groups=forthArgument}if(options&&options.throttleRedraw){console.warn('Timeline option \"throttleRedraw\" is DEPRICATED and no longer supported. It will be removed in the next MAJOR release.')}var me=this;this.defaultOptions={start:null,end:null,autoResize:true,orientation:{axis:\"bottom\",item:\"bottom\"},moment:moment,width:null,height:null,maxHeight:null,minHeight:null};this.options=util.deepExtend({},this.defaultOptions);this._create(container);if(!options||options&&typeof options.rtl==\"undefined\"){this.dom.root.style.visibility=\"hidden\";var directionFromDom,domNode=this.dom.root;while(!directionFromDom&&domNode){directionFromDom=window.getComputedStyle(domNode,null).direction;domNode=domNode.parentElement}this.options.rtl=directionFromDom&&directionFromDom.toLowerCase()==\"rtl\"}else{this.options.rtl=options.rtl}this.options.rollingMode=options&&options.rollingMode;this.options.onInitialDrawComplete=options&&options.onInitialDrawComplete;this.components=[];this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{getScale:function getScale(){return me.timeAxis.step.scale},getStep:function getStep(){return me.timeAxis.step.step},toScreen:me._toScreen.bind(me),toGlobalScreen:me._toGlobalScreen.bind(me),toTime:me._toTime.bind(me),toGlobalTime:me._toGlobalTime.bind(me)}};this.range=new Range(this.body,this.options);this.components.push(this.range);this.body.range=this.range;this.timeAxis=new TimeAxis(this.body,this.options);this.timeAxis2=null;this.components.push(this.timeAxis);this.currentTime=new CurrentTime(this.body,this.options);this.components.push(this.currentTime);this.itemSet=new ItemSet(this.body,this.options);this.components.push(this.itemSet);this.itemsData=null;this.groupsData=null;this.dom.root.onclick=function(event){me.emit(\"click\",me.getEventProperties(event))};this.dom.root.ondblclick=function(event){me.emit(\"doubleClick\",me.getEventProperties(event))};this.dom.root.oncontextmenu=function(event){me.emit(\"contextmenu\",me.getEventProperties(event))};this.dom.root.onmouseover=function(event){me.emit(\"mouseOver\",me.getEventProperties(event))};if(window.PointerEvent){this.dom.root.onpointerdown=function(event){me.emit(\"mouseDown\",me.getEventProperties(event))};this.dom.root.onpointermove=function(event){me.emit(\"mouseMove\",me.getEventProperties(event))};this.dom.root.onpointerup=function(event){me.emit(\"mouseUp\",me.getEventProperties(event))}}else{this.dom.root.onmousemove=function(event){me.emit(\"mouseMove\",me.getEventProperties(event))};this.dom.root.onmousedown=function(event){me.emit(\"mouseDown\",me.getEventProperties(event))};this.dom.root.onmouseup=function(event){me.emit(\"mouseUp\",me.getEventProperties(event))}}this.initialFitDone=false;this.on(\"changed\",function(){if(this.itemsData==null||this.options.rollingMode)return;if(!me.initialFitDone){me.initialFitDone=true;if(me.options.start!=undefined||me.options.end!=undefined){if(me.options.start==undefined||me.options.end==undefined){var range=me.getItemRange()}var start=me.options.start!=undefined?me.options.start:range.min;var end=me.options.end!=undefined?me.options.end:range.max;me.setWindow(start,end,{animation:false})}else{me.fit({animation:false})}}if(!me.initialDrawDone&&me.initialRangeChangeDone){me.initialDrawDone=true;me.dom.root.style.visibility=\"visible\";if(me.options.onInitialDrawComplete){setTimeout(function(){return me.options.onInitialDrawComplete()},0)}}});if(options){this.setOptions(options)}if(groups){this.setGroups(groups)}if(items){this.setItems(items)}this._redraw()}Timeline.prototype=new Core;Timeline.prototype._createConfigurator=function(){return new Configurator(this,this.dom.container,configureOptions)};Timeline.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:true});this._redraw()};Timeline.prototype.setOptions=function(options){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}Core.prototype.setOptions.call(this,options);if(\"type\"in options){if(options.type!==this.options.type){this.options.type=options.type;var itemsData=this.itemsData;if(itemsData){var selection=this.getSelection();this.setItems(null);this.setItems(itemsData);this.setSelection(selection)}}}};Timeline.prototype.setItems=function(items){var newDataSet;if(!items){newDataSet=null}else if(items instanceof DataSet||items instanceof DataView){newDataSet=items}else{newDataSet=new DataSet(items,{type:{start:\"Date\",end:\"Date\"}})}this.itemsData=newDataSet;this.itemSet&&this.itemSet.setItems(newDataSet)};Timeline.prototype.setGroups=function(groups){var newDataSet;if(!groups){newDataSet=null}else{var filter=function filter(group){return group.visible!==false};if(groups instanceof DataSet||groups instanceof DataView){newDataSet=new DataView(groups,{filter:filter})}else{newDataSet=new DataSet(groups.filter(filter))}}this.groupsData=newDataSet;this.itemSet.setGroups(newDataSet)};Timeline.prototype.setData=function(data){if(data&&data.groups){this.setGroups(data.groups)}if(data&&data.items){this.setItems(data.items)}};Timeline.prototype.setSelection=function(ids,options){this.itemSet&&this.itemSet.setSelection(ids);if(options&&options.focus){this.focus(ids,options)}};Timeline.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]};Timeline.prototype.focus=function(id,options){if(!this.itemsData||id==undefined)return;var ids=Array.isArray(id)?id:[id];var itemsData=this.itemsData.getDataSet().get(ids,{type:{start:\"Date\",end:\"Date\"}});var start=null;var end=null;itemsData.forEach(function(itemData){var s=itemData.start.valueOf();var e=\"end\"in itemData?itemData.end.valueOf():itemData.start.valueOf();if(start===null||s<start){start=s}if(end===null||e>end){end=e}});if(start!==null&&end!==null){var me=this;var item=this.itemSet.items[ids[0]];var startPos=this._getScrollTop()*-1;var initialVerticalScroll=null;var verticalAnimationFrame=function verticalAnimationFrame(ease,willDraw,done){var verticalScroll=getItemVerticalScroll(me,item);if(!initialVerticalScroll){initialVerticalScroll=verticalScroll}if(initialVerticalScroll.itemTop==verticalScroll.itemTop&&!initialVerticalScroll.shouldScroll){return}else if(initialVerticalScroll.itemTop!=verticalScroll.itemTop&&verticalScroll.shouldScroll){initialVerticalScroll=verticalScroll;startPos=me._getScrollTop()*-1}var from=startPos;var to=initialVerticalScroll.scrollOffset;var scrollTop=done?to:from+(to-from)*ease;me._setScrollTop(-scrollTop);if(!willDraw){me._redraw()}};var setFinalVerticalPosition=function setFinalVerticalPosition(){var finalVerticalScroll=getItemVerticalScroll(me,item);if(finalVerticalScroll.shouldScroll&&finalVerticalScroll.itemTop!=initialVerticalScroll.itemTop){me._setScrollTop(-finalVerticalScroll.scrollOffset);me._redraw()}};var finalVerticalCallback=function finalVerticalCallback(){setFinalVerticalPosition();setTimeout(setFinalVerticalPosition,100)};var middle=(start+end)/2;var interval=Math.max(this.range.end-this.range.start,(end-start)*1.1);var animation=options&&options.animation!==undefined?options.animation:true;if(!animation){initialVerticalScroll={shouldScroll:false,scrollOffset:-1,itemTop:-1}}this.range.setRange(middle-interval/2,middle+interval/2,{animation:animation},finalVerticalCallback,verticalAnimationFrame)}};Timeline.prototype.fit=function(options,callback){var animation=options&&options.animation!==undefined?options.animation:true;var range;var dataset=this.itemsData&&this.itemsData.getDataSet();if(dataset.length===1&&dataset.get()[0].end===undefined){range=this.getDataRange();this.moveTo(range.min.valueOf(),{animation:animation},callback)}else{range=this.getItemRange();this.range.setRange(range.min,range.max,{animation:animation},callback)}};function getStart(item){return util.convert(item.data.start,\"Date\").valueOf()}function getEnd(item){var end=item.data.end!=undefined?item.data.end:item.data.start;return util.convert(end,\"Date\").valueOf()}function getItemVerticalScroll(timeline,item){var leftHeight=timeline.props.leftContainer.height;var contentHeight=timeline.props.left.height;var group=item.parent;var offset=group.top;var shouldScroll=true;var orientation=timeline.timeAxis.options.orientation.axis;var itemTop=function itemTop(){if(orientation==\"bottom\"){return group.height-item.top-item.height}else{return item.top}};var currentScrollHeight=timeline._getScrollTop()*-1;var targetOffset=offset+itemTop();var height=item.height;if(targetOffset<currentScrollHeight){if(offset+leftHeight<=offset+itemTop()+height){offset+=itemTop()-timeline.itemSet.options.margin.item.vertical}}else if(targetOffset+height>currentScrollHeight+leftHeight){offset+=itemTop()+height-leftHeight+timeline.itemSet.options.margin.item.vertical}else{shouldScroll=false}offset=Math.min(offset,contentHeight-leftHeight);return{shouldScroll:shouldScroll,scrollOffset:offset,itemTop:targetOffset}}Timeline.prototype.getItemRange=function(){var range=this.getDataRange();var min=range.min!==null?range.min.valueOf():null;var max=range.max!==null?range.max.valueOf():null;var minItem=null;var maxItem=null;if(min!=null&&max!=null){var interval=max-min;if(interval<=0){interval=10}var factor=interval/this.props.center.width;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.itemSet.items,function(item,key){if(item.groupShowing){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}util.forEach(this.itemSet.items,function(item){var start=getStart(item);var end=getEnd(item);var startSide;var endSide;if(this.options.rtl){startSide=start-(item.getWidthRight()+10)*factor;endSide=end+(item.getWidthLeft()+10)*factor}else{startSide=start-(item.getWidthLeft()+10)*factor;endSide=end+(item.getWidthRight()+10)*factor}if(startSide<min){min=startSide;minItem=item}if(endSide>max){max=endSide;maxItem=item}}.bind(this));if(minItem&&maxItem){var lhs=minItem.getWidthLeft()+10;var rhs=maxItem.getWidthRight()+10;var delta=this.props.center.width-lhs-rhs;if(delta>0){if(this.options.rtl){min=getStart(minItem)-rhs*interval/delta;max=getEnd(maxItem)+lhs*interval/delta}else{min=getStart(minItem)-lhs*interval/delta;max=getEnd(maxItem)+rhs*interval/delta}}}}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Timeline.prototype.getDataRange=function(){var min=null;var max=null;var dataset=this.itemsData&&this.itemsData.getDataSet();if(dataset){dataset.forEach(function(item){var start=util.convert(item.start,\"Date\").valueOf();var end=util.convert(item.end!=undefined?item.end:item.start,\"Date\").valueOf();if(min===null||start<min){min=start}if(max===null||end>max){max=end}})}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Timeline.prototype.getEventProperties=function(event){var clientX=event.center?event.center.x:event.clientX;var clientY=event.center?event.center.y:event.clientY;var x;if(this.options.rtl){x=util.getAbsoluteRight(this.dom.centerContainer)-clientX}else{x=clientX-util.getAbsoluteLeft(this.dom.centerContainer)}var y=clientY-util.getAbsoluteTop(this.dom.centerContainer);var item=this.itemSet.itemFromTarget(event);var group=this.itemSet.groupFromTarget(event);var customTime=CustomTime.customTimeFromTarget(event);var snap=this.itemSet.options.snap||null;var scale=this.body.util.getScale();var step=this.body.util.getStep();var time=this._toTime(x);var snappedTime=snap?snap(time,scale,step):time;var element=util.getTarget(event);var what=null;if(item!=null){what=\"item\"}else if(customTime!=null){what=\"custom-time\"}else if(util.hasParent(element,this.timeAxis.dom.foreground)){what=\"axis\"}else if(this.timeAxis2&&util.hasParent(element,this.timeAxis2.dom.foreground)){what=\"axis\"}else if(util.hasParent(element,this.itemSet.dom.labelSet)){what=\"group-label\"}else if(util.hasParent(element,this.currentTime.bar)){what=\"current-time\"}else if(util.hasParent(element,this.dom.center)){what=\"background\"}return{event:event,item:item?item.id:null,group:group?group.groupId:null,what:what,pageX:event.srcEvent?event.srcEvent.pageX:event.pageX,pageY:event.srcEvent?event.srcEvent.pageY:event.pageY,x:x,y:y,time:time,snappedTime:snappedTime}};Timeline.prototype.toggleRollingMode=function(){if(this.range.rolling){this.range.stopRolling()}else{if(this.options.rollingMode==undefined){this.setOptions(this.options)}this.range.startRolling()}};module.exports=Timeline},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var ColorPicker=function(){function ColorPicker(){var pixelRatio=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;(0,_classCallCheck3[\"default\"])(this,ColorPicker);this.pixelRatio=pixelRatio;this.generated=false;this.centerCoordinates={x:289/2,y:289/2};this.r=289*.49;this.color={r:255,g:255,b:255,a:1};this.hueCircle=undefined;this.initialColor={r:255,g:255,b:255,a:1};this.previousColor=undefined;this.applied=false;this.updateCallback=function(){};this.closeCallback=function(){};this._create()}(0,_createClass3[\"default\"])(ColorPicker,[{key:\"insertTo\",value:function insertTo(container){if(this.hammer!==undefined){this.hammer.destroy();this.hammer=undefined}this.container=container;this.container.appendChild(this.frame);this._bindHammer();this._setSize()}},{key:\"setUpdateCallback\",value:function setUpdateCallback(callback){if(typeof callback===\"function\"){this.updateCallback=callback}else{throw new Error(\"Function attempted to set as colorPicker update callback is not a function.\")}}},{key:\"setCloseCallback\",value:function setCloseCallback(callback){if(typeof callback===\"function\"){this.closeCallback=callback}else{throw new Error(\"Function attempted to set as colorPicker closing callback is not a function.\")}}},{key:\"_isColorString\",value:function _isColorString(color){var htmlColors={black:\"#000000\",navy:\"#000080\",darkblue:\"#00008B\",mediumblue:\"#0000CD\",blue:\"#0000FF\",darkgreen:\"#006400\",green:\"#008000\",teal:\"#008080\",darkcyan:\"#008B8B\",deepskyblue:\"#00BFFF\",darkturquoise:\"#00CED1\",mediumspringgreen:\"#00FA9A\",lime:\"#00FF00\",springgreen:\"#00FF7F\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",midnightblue:\"#191970\",dodgerblue:\"#1E90FF\",lightseagreen:\"#20B2AA\",forestgreen:\"#228B22\",seagreen:\"#2E8B57\",darkslategray:\"#2F4F4F\",limegreen:\"#32CD32\",mediumseagreen:\"#3CB371\",turquoise:\"#40E0D0\",royalblue:\"#4169E1\",steelblue:\"#4682B4\",darkslateblue:\"#483D8B\",mediumturquoise:\"#48D1CC\",indigo:\"#4B0082\",darkolivegreen:\"#556B2F\",cadetblue:\"#5F9EA0\",cornflowerblue:\"#6495ED\",mediumaquamarine:\"#66CDAA\",dimgray:\"#696969\",slateblue:\"#6A5ACD\",olivedrab:\"#6B8E23\",slategray:\"#708090\",lightslategray:\"#778899\",mediumslateblue:\"#7B68EE\",lawngreen:\"#7CFC00\",chartreuse:\"#7FFF00\",aquamarine:\"#7FFFD4\",maroon:\"#800000\",purple:\"#800080\",olive:\"#808000\",gray:\"#808080\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",blueviolet:\"#8A2BE2\",darkred:\"#8B0000\",darkmagenta:\"#8B008B\",saddlebrown:\"#8B4513\",darkseagreen:\"#8FBC8F\",lightgreen:\"#90EE90\",mediumpurple:\"#9370D8\",darkviolet:\"#9400D3\",palegreen:\"#98FB98\",darkorchid:\"#9932CC\",yellowgreen:\"#9ACD32\",sienna:\"#A0522D\",brown:\"#A52A2A\",darkgray:\"#A9A9A9\",lightblue:\"#ADD8E6\",greenyellow:\"#ADFF2F\",paleturquoise:\"#AFEEEE\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",firebrick:\"#B22222\",darkgoldenrod:\"#B8860B\",mediumorchid:\"#BA55D3\",rosybrown:\"#BC8F8F\",darkkhaki:\"#BDB76B\",silver:\"#C0C0C0\",mediumvioletred:\"#C71585\",indianred:\"#CD5C5C\",peru:\"#CD853F\",chocolate:\"#D2691E\",tan:\"#D2B48C\",lightgrey:\"#D3D3D3\",palevioletred:\"#D87093\",thistle:\"#D8BFD8\",orchid:\"#DA70D6\",goldenrod:\"#DAA520\",crimson:\"#DC143C\",gainsboro:\"#DCDCDC\",plum:\"#DDA0DD\",burlywood:\"#DEB887\",lightcyan:\"#E0FFFF\",lavender:\"#E6E6FA\",darksalmon:\"#E9967A\",violet:\"#EE82EE\",palegoldenrod:\"#EEE8AA\",lightcoral:\"#F08080\",khaki:\"#F0E68C\",aliceblue:\"#F0F8FF\",honeydew:\"#F0FFF0\",azure:\"#F0FFFF\",sandybrown:\"#F4A460\",wheat:\"#F5DEB3\",beige:\"#F5F5DC\",whitesmoke:\"#F5F5F5\",mintcream:\"#F5FFFA\",ghostwhite:\"#F8F8FF\",salmon:\"#FA8072\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lightgoldenrodyellow:\"#FAFAD2\",oldlace:\"#FDF5E6\",red:\"#FF0000\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",deeppink:\"#FF1493\",orangered:\"#FF4500\",tomato:\"#FF6347\",hotpink:\"#FF69B4\",coral:\"#FF7F50\",darkorange:\"#FF8C00\",lightsalmon:\"#FFA07A\",orange:\"#FFA500\",lightpink:\"#FFB6C1\",pink:\"#FFC0CB\",gold:\"#FFD700\",peachpuff:\"#FFDAB9\",navajowhite:\"#FFDEAD\",moccasin:\"#FFE4B5\",bisque:\"#FFE4C4\",mistyrose:\"#FFE4E1\",blanchedalmond:\"#FFEBCD\",papayawhip:\"#FFEFD5\",lavenderblush:\"#FFF0F5\",seashell:\"#FFF5EE\",cornsilk:\"#FFF8DC\",lemonchiffon:\"#FFFACD\",floralwhite:\"#FFFAF0\",snow:\"#FFFAFA\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",ivory:\"#FFFFF0\",white:\"#FFFFFF\"};if(typeof color===\"string\"){return htmlColors[color]}}},{key:\"setColor\",value:function setColor(color){var setInitial=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(color===\"none\"){return}var rgba=void 0;var htmlColor=this._isColorString(color);if(htmlColor!==undefined){color=htmlColor}if(util.isString(color)===true){if(util.isValidRGB(color)===true){var rgbaArray=color.substr(4).substr(0,color.length-5).split(\",\");rgba={r:rgbaArray[0],g:rgbaArray[1],b:rgbaArray[2],a:1}}else if(util.isValidRGBA(color)===true){var _rgbaArray=color.substr(5).substr(0,color.length-6).split(\",\");rgba={r:_rgbaArray[0],g:_rgbaArray[1],b:_rgbaArray[2],a:_rgbaArray[3]}}else if(util.isValidHex(color)===true){var rgbObj=util.hexToRGB(color);rgba={r:rgbObj.r,g:rgbObj.g,b:rgbObj.b,a:1}}}else{if(color instanceof Object){if(color.r!==undefined&&color.g!==undefined&&color.b!==undefined){var alpha=color.a!==undefined?color.a:\"1.0\";rgba={r:color.r,g:color.g,b:color.b,a:alpha}}}}if(rgba===undefined){throw new Error(\"Unknown color passed to the colorPicker. Supported are strings: rgb, hex, rgba. Object: rgb ({r:r,g:g,b:b,[a:a]}). Supplied: \"+(0,_stringify2[\"default\"])(color))}else{this._setColor(rgba,setInitial)}}},{key:\"show\",value:function show(){if(this.closeCallback!==undefined){this.closeCallback();this.closeCallback=undefined}this.applied=false;this.frame.style.display=\"block\";this._generateHueCircle()}},{key:\"_hide\",value:function _hide(){var _this=this;var storePrevious=arguments.length>0&&arguments[0]!==undefined?arguments[0]:true;if(storePrevious===true){this.previousColor=util.extend({},this.color)}if(this.applied===true){this.updateCallback(this.initialColor)}this.frame.style.display=\"none\";setTimeout(function(){if(_this.closeCallback!==undefined){_this.closeCallback();_this.closeCallback=undefined}},0)}},{key:\"_save\",value:function _save(){this.updateCallback(this.color);this.applied=false;this._hide()}},{key:\"_apply\",value:function _apply(){this.applied=true;this.updateCallback(this.color);this._updatePicker(this.color)}},{key:\"_loadLast\",value:function _loadLast(){if(this.previousColor!==undefined){this.setColor(this.previousColor,false)}else{alert(\"There is no last color to load...\")}}},{key:\"_setColor\",value:function _setColor(rgba){var setInitial=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(setInitial===true){this.initialColor=util.extend({},rgba)}this.color=rgba;var hsv=util.RGBToHSV(rgba.r,rgba.g,rgba.b);var angleConvert=2*Math.PI;var radius=this.r*hsv.s;var x=this.centerCoordinates.x+radius*Math.sin(angleConvert*hsv.h);var y=this.centerCoordinates.y+radius*Math.cos(angleConvert*hsv.h);this.colorPickerSelector.style.left=x-.5*this.colorPickerSelector.clientWidth+\"px\";this.colorPickerSelector.style.top=y-.5*this.colorPickerSelector.clientHeight+\"px\";this._updatePicker(rgba)}},{key:\"_setOpacity\",value:function _setOpacity(value){this.color.a=value/100;this._updatePicker(this.color)}},{key:\"_setBrightness\",value:function _setBrightness(value){var hsv=util.RGBToHSV(this.color.r,this.color.g,this.color.b);hsv.v=value/100;var rgba=util.HSVToRGB(hsv.h,hsv.s,hsv.v);rgba[\"a\"]=this.color.a;this.color=rgba;this._updatePicker()}},{key:\"_updatePicker\",value:function _updatePicker(){var rgba=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.color;var hsv=util.RGBToHSV(rgba.r,rgba.g,rgba.b);var ctx=this.colorPickerCanvas.getContext(\"2d\");if(this.pixelRation===undefined){this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1)}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var w=this.colorPickerCanvas.clientWidth;var h=this.colorPickerCanvas.clientHeight;ctx.clearRect(0,0,w,h);ctx.putImageData(this.hueCircle,0,0);ctx.fillStyle=\"rgba(0,0,0,\"+(1-hsv.v)+\")\";ctx.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r);ctx.fill();this.brightnessRange.value=100*hsv.v;this.opacityRange.value=100*rgba.a;this.initialColorDiv.style.backgroundColor=\"rgba(\"+this.initialColor.r+\",\"+this.initialColor.g+\",\"+this.initialColor.b+\",\"+this.initialColor.a+\")\";this.newColorDiv.style.backgroundColor=\"rgba(\"+this.color.r+\",\"+this.color.g+\",\"+this.color.b+\",\"+this.color.a+\")\"}},{key:\"_setSize\",value:function _setSize(){this.colorPickerCanvas.style.width=\"100%\";this.colorPickerCanvas.style.height=\"100%\";this.colorPickerCanvas.width=289*this.pixelRatio;this.colorPickerCanvas.height=289*this.pixelRatio}},{key:\"_create\",value:function _create(){this.frame=document.createElement(\"div\");this.frame.className=\"vis-color-picker\";this.colorPickerDiv=document.createElement(\"div\");this.colorPickerSelector=document.createElement(\"div\");this.colorPickerSelector.className=\"vis-selector\";this.colorPickerDiv.appendChild(this.colorPickerSelector);this.colorPickerCanvas=document.createElement(\"canvas\");this.colorPickerDiv.appendChild(this.colorPickerCanvas);if(!this.colorPickerCanvas.getContext){var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.colorPickerCanvas.appendChild(noCanvas)}else{var ctx=this.colorPickerCanvas.getContext(\"2d\");this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1);this.colorPickerCanvas.getContext(\"2d\").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}this.colorPickerDiv.className=\"vis-color\";this.opacityDiv=document.createElement(\"div\");this.opacityDiv.className=\"vis-opacity\";this.brightnessDiv=document.createElement(\"div\");this.brightnessDiv.className=\"vis-brightness\";this.arrowDiv=document.createElement(\"div\");this.arrowDiv.className=\"vis-arrow\";this.opacityRange=document.createElement(\"input\");try{this.opacityRange.type=\"range\";this.opacityRange.min=\"0\";this.opacityRange.max=\"100\"}catch(err){}this.opacityRange.value=\"100\";this.opacityRange.className=\"vis-range\";this.brightnessRange=document.createElement(\"input\");try{this.brightnessRange.type=\"range\";this.brightnessRange.min=\"0\";this.brightnessRange.max=\"100\"}catch(err){}this.brightnessRange.value=\"100\";this.brightnessRange.className=\"vis-range\";this.opacityDiv.appendChild(this.opacityRange);this.brightnessDiv.appendChild(this.brightnessRange);var me=this;this.opacityRange.onchange=function(){me._setOpacity(this.value)};this.opacityRange.oninput=function(){me._setOpacity(this.value)};this.brightnessRange.onchange=function(){me._setBrightness(this.value)};this.brightnessRange.oninput=function(){me._setBrightness(this.value)};this.brightnessLabel=document.createElement(\"div\");this.brightnessLabel.className=\"vis-label vis-brightness\";this.brightnessLabel.innerHTML=\"brightness:\";this.opacityLabel=document.createElement(\"div\");this.opacityLabel.className=\"vis-label vis-opacity\";this.opacityLabel.innerHTML=\"opacity:\";this.newColorDiv=document.createElement(\"div\");this.newColorDiv.className=\"vis-new-color\";this.newColorDiv.innerHTML=\"new\";this.initialColorDiv=document.createElement(\"div\");this.initialColorDiv.className=\"vis-initial-color\";this.initialColorDiv.innerHTML=\"initial\";this.cancelButton=document.createElement(\"div\");this.cancelButton.className=\"vis-button vis-cancel\";this.cancelButton.innerHTML=\"cancel\";this.cancelButton.onclick=this._hide.bind(this,false);this.applyButton=document.createElement(\"div\");this.applyButton.className=\"vis-button vis-apply\";this.applyButton.innerHTML=\"apply\";this.applyButton.onclick=this._apply.bind(this);this.saveButton=document.createElement(\"div\");this.saveButton.className=\"vis-button vis-save\";this.saveButton.innerHTML=\"save\";this.saveButton.onclick=this._save.bind(this);this.loadButton=document.createElement(\"div\");this.loadButton.className=\"vis-button vis-load\";this.loadButton.innerHTML=\"load last\";this.loadButton.onclick=this._loadLast.bind(this)\n;this.frame.appendChild(this.colorPickerDiv);this.frame.appendChild(this.arrowDiv);this.frame.appendChild(this.brightnessLabel);this.frame.appendChild(this.brightnessDiv);this.frame.appendChild(this.opacityLabel);this.frame.appendChild(this.opacityDiv);this.frame.appendChild(this.newColorDiv);this.frame.appendChild(this.initialColorDiv);this.frame.appendChild(this.cancelButton);this.frame.appendChild(this.applyButton);this.frame.appendChild(this.saveButton);this.frame.appendChild(this.loadButton)}},{key:\"_bindHammer\",value:function _bindHammer(){var _this2=this;this.drag={};this.pinch={};this.hammer=new Hammer(this.colorPickerCanvas);this.hammer.get(\"pinch\").set({enable:true});hammerUtil.onTouch(this.hammer,function(event){_this2._moveSelector(event)});this.hammer.on(\"tap\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panstart\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panmove\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panend\",function(event){_this2._moveSelector(event)})}},{key:\"_generateHueCircle\",value:function _generateHueCircle(){if(this.generated===false){var ctx=this.colorPickerCanvas.getContext(\"2d\");if(this.pixelRation===undefined){this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1)}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var w=this.colorPickerCanvas.clientWidth;var h=this.colorPickerCanvas.clientHeight;ctx.clearRect(0,0,w,h);var x=void 0,y=void 0,hue=void 0,sat=void 0;this.centerCoordinates={x:w*.5,y:h*.5};this.r=.49*w;var angleConvert=2*Math.PI/360;var hfac=1/360;var sfac=1/this.r;var rgb=void 0;for(hue=0;hue<360;hue++){for(sat=0;sat<this.r;sat++){x=this.centerCoordinates.x+sat*Math.sin(angleConvert*hue);y=this.centerCoordinates.y+sat*Math.cos(angleConvert*hue);rgb=util.HSVToRGB(hue*hfac,sat*sfac,1);ctx.fillStyle=\"rgb(\"+rgb.r+\",\"+rgb.g+\",\"+rgb.b+\")\";ctx.fillRect(x-.5,y-.5,2,2)}}ctx.strokeStyle=\"rgba(0,0,0,1)\";ctx.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r);ctx.stroke();this.hueCircle=ctx.getImageData(0,0,w,h)}this.generated=true}},{key:\"_moveSelector\",value:function _moveSelector(event){var rect=this.colorPickerDiv.getBoundingClientRect();var left=event.center.x-rect.left;var top=event.center.y-rect.top;var centerY=.5*this.colorPickerDiv.clientHeight;var centerX=.5*this.colorPickerDiv.clientWidth;var x=left-centerX;var y=top-centerY;var angle=Math.atan2(x,y);var radius=.98*Math.min(Math.sqrt(x*x+y*y),centerX);var newTop=Math.cos(angle)*radius+centerY;var newLeft=Math.sin(angle)*radius+centerX;this.colorPickerSelector.style.top=newTop-.5*this.colorPickerSelector.clientHeight+\"px\";this.colorPickerSelector.style.left=newLeft-.5*this.colorPickerSelector.clientWidth+\"px\";var h=angle/(2*Math.PI);h=h<0?h+1:h;var s=radius/this.r;var hsv=util.RGBToHSV(this.color.r,this.color.g,this.color.b);hsv.h=h;hsv.s=s;var rgba=util.HSVToRGB(hsv.h,hsv.s,hsv.v);rgba[\"a\"]=this.color.a;this.color=rgba;this.initialColorDiv.style.backgroundColor=\"rgba(\"+this.initialColor.r+\",\"+this.initialColor.g+\",\"+this.initialColor.b+\",\"+this.initialColor.a+\")\";this.newColorDiv.style.backgroundColor=\"rgba(\"+this.color.r+\",\"+this.color.g+\",\"+this.color.b+\",\"+this.color.a+\")\"}}]);return ColorPicker}();exports[\"default\"]=ColorPicker},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(64);var Core=__webpack_require__(65);var TimeAxis=__webpack_require__(45);var CurrentTime=__webpack_require__(67);var CustomTime=__webpack_require__(46);var LineGraph=__webpack_require__(106);var printStyle=__webpack_require__(15).printStyle;var allOptions=__webpack_require__(113).allOptions;var configureOptions=__webpack_require__(113).configureOptions;var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];function Graph2d(container,items,groups,options){if(!(Array.isArray(groups)||groups instanceof DataSet||groups instanceof DataView)&&groups instanceof Object){var forthArgument=options;options=groups;groups=forthArgument}if(options&&options.throttleRedraw){console.warn('Graph2d option \"throttleRedraw\" is DEPRICATED and no longer supported. It will be removed in the next MAJOR release.')}var me=this;this.defaultOptions={start:null,end:null,autoResize:true,orientation:{axis:\"bottom\",item:\"bottom\"},moment:moment,width:null,height:null,maxHeight:null,minHeight:null};this.options=util.deepExtend({},this.defaultOptions);this._create(container);this.components=[];this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{toScreen:me._toScreen.bind(me),toGlobalScreen:me._toGlobalScreen.bind(me),toTime:me._toTime.bind(me),toGlobalTime:me._toGlobalTime.bind(me)}};this.range=new Range(this.body);this.components.push(this.range);this.body.range=this.range;this.timeAxis=new TimeAxis(this.body);this.components.push(this.timeAxis);this.currentTime=new CurrentTime(this.body);this.components.push(this.currentTime);this.linegraph=new LineGraph(this.body);this.components.push(this.linegraph);this.itemsData=null;this.groupsData=null;this.on(\"tap\",function(event){me.emit(\"click\",me.getEventProperties(event))});this.on(\"doubletap\",function(event){me.emit(\"doubleClick\",me.getEventProperties(event))});this.dom.root.oncontextmenu=function(event){me.emit(\"contextmenu\",me.getEventProperties(event))};if(options){this.setOptions(options)}if(groups){this.setGroups(groups)}if(items){this.setItems(items)}this._redraw()}Graph2d.prototype=new Core;Graph2d.prototype.setOptions=function(options){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}Core.prototype.setOptions.call(this,options)};Graph2d.prototype.setItems=function(items){var initialLoad=this.itemsData==null;var newDataSet;if(!items){newDataSet=null}else if(items instanceof DataSet||items instanceof DataView){newDataSet=items}else{newDataSet=new DataSet(items,{type:{start:\"Date\",end:\"Date\"}})}this.itemsData=newDataSet;this.linegraph&&this.linegraph.setItems(newDataSet);if(initialLoad){if(this.options.start!=undefined||this.options.end!=undefined){var start=this.options.start!=undefined?this.options.start:null;var end=this.options.end!=undefined?this.options.end:null;this.setWindow(start,end,{animation:false})}else{this.fit({animation:false})}}};Graph2d.prototype.setGroups=function(groups){var newDataSet;if(!groups){newDataSet=null}else if(groups instanceof DataSet||groups instanceof DataView){newDataSet=groups}else{newDataSet=new DataSet(groups)}this.groupsData=newDataSet;this.linegraph.setGroups(newDataSet)};Graph2d.prototype.getLegend=function(groupId,width,height){if(width===undefined){width=15}if(height===undefined){height=15}if(this.linegraph.groups[groupId]!==undefined){return this.linegraph.groups[groupId].getLegend(width,height)}else{return\"cannot find group:'\"+groupId+\"'\"}};Graph2d.prototype.isGroupVisible=function(groupId){if(this.linegraph.groups[groupId]!==undefined){return this.linegraph.groups[groupId].visible&&(this.linegraph.options.groups.visibility[groupId]===undefined||this.linegraph.options.groups.visibility[groupId]==true)}else{return false}};Graph2d.prototype.getDataRange=function(){var min=null;var max=null;for(var groupId in this.linegraph.groups){if(this.linegraph.groups.hasOwnProperty(groupId)){if(this.linegraph.groups[groupId].visible==true){for(var i=0;i<this.linegraph.groups[groupId].itemsData.length;i++){var item=this.linegraph.groups[groupId].itemsData[i];var value=util.convert(item.x,\"Date\").valueOf();min=min==null?value:min>value?value:min;max=max==null?value:max<value?value:max}}}}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Graph2d.prototype.getEventProperties=function(event){var clientX=event.center?event.center.x:event.clientX;var clientY=event.center?event.center.y:event.clientY;var x=clientX-util.getAbsoluteLeft(this.dom.centerContainer);var y=clientY-util.getAbsoluteTop(this.dom.centerContainer);var time=this._toTime(x);var customTime=CustomTime.customTimeFromTarget(event);var element=util.getTarget(event);var what=null;if(util.hasParent(element,this.timeAxis.dom.foreground)){what=\"axis\"}else if(this.timeAxis2&&util.hasParent(element,this.timeAxis2.dom.foreground)){what=\"axis\"}else if(util.hasParent(element,this.linegraph.yAxisLeft.dom.frame)){what=\"data-axis\"}else if(util.hasParent(element,this.linegraph.yAxisRight.dom.frame)){what=\"data-axis\"}else if(util.hasParent(element,this.linegraph.legendLeft.dom.frame)){what=\"legend\"}else if(util.hasParent(element,this.linegraph.legendRight.dom.frame)){what=\"legend\"}else if(customTime!=null){what=\"custom-time\"}else if(util.hasParent(element,this.currentTime.bar)){what=\"current-time\"}else if(util.hasParent(element,this.dom.center)){what=\"background\"}var value=[];var yAxisLeft=this.linegraph.yAxisLeft;var yAxisRight=this.linegraph.yAxisRight;if(!yAxisLeft.hidden&&this.itemsData.length>0){value.push(yAxisLeft.screenToValue(y))}if(!yAxisRight.hidden&&this.itemsData.length>0){value.push(yAxisRight.screenToValue(y))}return{event:event,what:what,pageX:event.srcEvent?event.srcEvent.pageX:event.pageX,pageY:event.srcEvent?event.srcEvent.pageY:event.pageY,x:x,y:y,time:time,value:value}};Graph2d.prototype._createConfigurator=function(){return new Configurator(this,this.dom.container,configureOptions)};module.exports=Graph2d},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Network=__webpack_require__(182);exports.network={Images:__webpack_require__(116),dotparser:__webpack_require__(114),gephiParser:__webpack_require__(115),allOptions:__webpack_require__(122)};exports.network.convertDot=function(input){return exports.network.dotparser.DOTToGraph(input)};exports.network.convertGephi=function(input,options){return exports.network.gephiParser.parseGephi(input,options)};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){\"use strict\";__webpack_require__(183);var Emitter=__webpack_require__(44);var util=__webpack_require__(2);var dotparser=__webpack_require__(114);var gephiParser=__webpack_require__(115);var Activator=__webpack_require__(97);var locales=__webpack_require__(184);var Images=__webpack_require__(116)[\"default\"];var Groups=__webpack_require__(186)[\"default\"];var NodesHandler=__webpack_require__(187)[\"default\"];var EdgesHandler=__webpack_require__(214)[\"default\"];var PhysicsEngine=__webpack_require__(220)[\"default\"];var ClusterEngine=__webpack_require__(227)[\"default\"];var CanvasRenderer=__webpack_require__(229)[\"default\"];var Canvas=__webpack_require__(230)[\"default\"];var View=__webpack_require__(231)[\"default\"];var InteractionHandler=__webpack_require__(232)[\"default\"];var SelectionHandler=__webpack_require__(234)[\"default\"];var LayoutEngine=__webpack_require__(235)[\"default\"];var ManipulationSystem=__webpack_require__(237)[\"default\"];var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var _require2=__webpack_require__(122),allOptions=_require2.allOptions,configureOptions=_require2.configureOptions;var KamadaKawai=__webpack_require__(238)[\"default\"];function Network(container,data,options){var _this=this;if(!(this instanceof Network)){throw new SyntaxError(\"Constructor must be called with the new operator\")}this.options={};this.defaultOptions={locale:\"en\",locales:locales,clickToUse:false};util.extend(this.options,this.defaultOptions);this.body={container:container,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this),once:this.once.bind(this)},eventListeners:{onTap:function onTap(){},onTouch:function onTouch(){},onDoubleTap:function onDoubleTap(){},onHold:function onHold(){},onDragStart:function onDragStart(){},onDrag:function onDrag(){},onDragEnd:function onDragEnd(){},onMouseWheel:function onMouseWheel(){},onPinch:function onPinch(){},onMouseMove:function onMouseMove(){},onRelease:function onRelease(){},onContext:function onContext(){}},data:{nodes:null,edges:null},functions:{createNode:function createNode(){},createEdge:function createEdge(){},getPointer:function getPointer(){}},modules:{},view:{scale:1,translation:{x:0,y:0}}};this.bindEventListeners();this.images=new Images(function(){return _this.body.emitter.emit(\"_requestRedraw\")});this.groups=new Groups;this.canvas=new Canvas(this.body);this.selectionHandler=new SelectionHandler(this.body,this.canvas);this.interactionHandler=new InteractionHandler(this.body,this.canvas,this.selectionHandler);this.view=new View(this.body,this.canvas);this.renderer=new CanvasRenderer(this.body,this.canvas);this.physics=new PhysicsEngine(this.body);this.layoutEngine=new LayoutEngine(this.body);this.clustering=new ClusterEngine(this.body);this.manipulation=new ManipulationSystem(this.body,this.canvas,this.selectionHandler);this.nodesHandler=new NodesHandler(this.body,this.images,this.groups,this.layoutEngine);this.edgesHandler=new EdgesHandler(this.body,this.images,this.groups);this.body.modules[\"kamadaKawai\"]=new KamadaKawai(this.body,150,.05);this.body.modules[\"clustering\"]=this.clustering;this.canvas._create();this.setOptions(options);this.setData(data)}Emitter(Network.prototype);Network.prototype.setOptions=function(options){var _this2=this;if(options!==undefined){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}var fields=[\"locale\",\"locales\",\"clickToUse\"];util.selectiveDeepExtend(fields,this.options,options);options=this.layoutEngine.setOptions(options.layout,options);this.canvas.setOptions(options);this.groups.setOptions(options.groups);this.nodesHandler.setOptions(options.nodes);this.edgesHandler.setOptions(options.edges);this.physics.setOptions(options.physics);this.manipulation.setOptions(options.manipulation,options,this.options);this.interactionHandler.setOptions(options.interaction);this.renderer.setOptions(options.interaction);this.selectionHandler.setOptions(options.interaction);if(options.groups!==undefined){this.body.emitter.emit(\"refreshNodes\")}if(\"configure\"in options){if(!this.configurator){this.configurator=new Configurator(this,this.body.container,configureOptions,this.canvas.pixelRatio)}this.configurator.setOptions(options.configure)}if(this.configurator&&this.configurator.options.enabled===true){var networkOptions={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};util.deepExtend(networkOptions.nodes,this.nodesHandler.options);util.deepExtend(networkOptions.edges,this.edgesHandler.options);util.deepExtend(networkOptions.layout,this.layoutEngine.options);util.deepExtend(networkOptions.interaction,this.selectionHandler.options);util.deepExtend(networkOptions.interaction,this.renderer.options);util.deepExtend(networkOptions.interaction,this.interactionHandler.options);util.deepExtend(networkOptions.manipulation,this.manipulation.options);util.deepExtend(networkOptions.physics,this.physics.options);util.deepExtend(networkOptions.global,this.canvas.options);util.deepExtend(networkOptions.global,this.options);this.configurator.setModuleOptions(networkOptions)}if(options.clickToUse!==undefined){if(options.clickToUse===true){if(this.activator===undefined){this.activator=new Activator(this.canvas.frame);this.activator.on(\"change\",function(){_this2.body.emitter.emit(\"activate\")})}}else{if(this.activator!==undefined){this.activator.destroy();delete this.activator}this.body.emitter.emit(\"activate\")}}else{this.body.emitter.emit(\"activate\")}this.canvas.setSize();this.body.emitter.emit(\"startSimulation\")}};Network.prototype._updateVisibleIndices=function(){var nodes=this.body.nodes;var edges=this.body.edges;this.body.nodeIndices=[];this.body.edgeIndices=[];for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(!this.clustering._isClusteredNode(nodeId)&&nodes[nodeId].options.hidden===false){this.body.nodeIndices.push(nodes[nodeId].id)}}}for(var edgeId in edges){if(edges.hasOwnProperty(edgeId)){var edge=edges[edgeId];var fromNode=nodes[edge.fromId];var toNode=nodes[edge.toId];var edgeNodesPresent=fromNode!==undefined&&toNode!==undefined;var isVisible=!this.clustering._isClusteredEdge(edgeId)&&edge.options.hidden===false&&edgeNodesPresent&&fromNode.options.hidden===false&&toNode.options.hidden===false;if(isVisible){this.body.edgeIndices.push(edge.id)}}}};Network.prototype.bindEventListeners=function(){var _this3=this;this.body.emitter.on(\"_dataChanged\",function(){_this3.edgesHandler._updateState();_this3.body.emitter.emit(\"_dataUpdated\")});this.body.emitter.on(\"_dataUpdated\",function(){_this3.clustering._updateState();_this3._updateVisibleIndices();_this3._updateValueRange(_this3.body.nodes);_this3._updateValueRange(_this3.body.edges);_this3.body.emitter.emit(\"startSimulation\");_this3.body.emitter.emit(\"_requestRedraw\")})};Network.prototype.setData=function(data){this.body.emitter.emit(\"resetPhysics\");this.body.emitter.emit(\"_resetData\");this.selectionHandler.unselectAll();if(data&&data.dot&&(data.nodes||data.edges)){throw new SyntaxError('Data must contain either parameter \"dot\" or '+' parameter pair \"nodes\" and \"edges\", but not both.')}this.setOptions(data&&data.options);if(data&&data.dot){console.log(\"The dot property has been deprecated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);\");var dotData=dotparser.DOTToGraph(data.dot);this.setData(dotData);return}else if(data&&data.gephi){console.log(\"The gephi property has been deprecated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);\");var gephiData=gephiParser.parseGephi(data.gephi);this.setData(gephiData);return}else{this.nodesHandler.setData(data&&data.nodes,true);this.edgesHandler.setData(data&&data.edges,true)}this.body.emitter.emit(\"_dataChanged\");this.body.emitter.emit(\"_dataLoaded\");this.body.emitter.emit(\"initPhysics\")};Network.prototype.destroy=function(){this.body.emitter.emit(\"destroy\");this.body.emitter.off();this.off();delete this.groups;delete this.canvas;delete this.selectionHandler;delete this.interactionHandler;delete this.view;delete this.renderer;delete this.physics;delete this.layoutEngine;delete this.clustering;delete this.manipulation;delete this.nodesHandler;delete this.edgesHandler;delete this.configurator;delete this.images;for(var nodeId in this.body.nodes){if(!this.body.nodes.hasOwnProperty(nodeId))continue;delete this.body.nodes[nodeId]}for(var edgeId in this.body.edges){if(!this.body.edges.hasOwnProperty(edgeId))continue;delete this.body.edges[edgeId]}util.recursiveDOMDelete(this.body.container)};Network.prototype._updateValueRange=function(obj){var id;var valueMin=undefined;var valueMax=undefined;var valueTotal=0;for(id in obj){if(obj.hasOwnProperty(id)){var value=obj[id].getValue();if(value!==undefined){valueMin=valueMin===undefined?value:Math.min(value,valueMin);valueMax=valueMax===undefined?value:Math.max(value,valueMax);valueTotal+=value}}}if(valueMin!==undefined&&valueMax!==undefined){for(id in obj){if(obj.hasOwnProperty(id)){obj[id].setValueRange(valueMin,valueMax,valueTotal)}}}};Network.prototype.isActive=function(){return!this.activator||this.activator.active};Network.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};Network.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};Network.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};Network.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};Network.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};Network.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};Network.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};Network.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};Network.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};Network.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};Network.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};Network.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};Network.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};Network.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};Network.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};Network.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};Network.prototype.editNodeMode=function(){console.log(\"Deprecated: Please use editNode instead of editNodeMode.\");return this.manipulation.editNode.apply(this.manipulation,arguments)};Network.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};Network.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};Network.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};Network.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};Network.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};Network.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};Network.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};Network.prototype.getConnectedNodes=function(objectId){if(this.body.nodes[objectId]!==undefined){return this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments)}else{return this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)}};Network.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};Network.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};Network.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};Network.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};Network.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};Network.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};Network.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodes.apply(this.selectionHandler,arguments)};Network.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdges.apply(this.selectionHandler,arguments)};Network.prototype.getNodeAt=function(){var node=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);if(node!==undefined&&node.id!==undefined){return node.id}return node};Network.prototype.getEdgeAt=function(){var edge=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);if(edge!==undefined&&edge.id!==undefined){return edge.id}return edge};Network.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};Network.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};Network.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments);this.redraw()};Network.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};Network.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};Network.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};Network.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};Network.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};Network.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};Network.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};Network.prototype.getOptionsFromConfigurator=function(){var options={};if(this.configurator){options=this.configurator.getOptions.apply(this.configurator)}return options};module.exports=Network},function(module,exports,__webpack_require__){\"use strict\";if(typeof CanvasRenderingContext2D!==\"undefined\"){CanvasRenderingContext2D.prototype.circle=function(x,y,r){this.beginPath();this.arc(x,y,r,0,2*Math.PI,false);this.closePath()};CanvasRenderingContext2D.prototype.square=function(x,y,r){this.beginPath();this.rect(x-r,y-r,r*2,r*2);this.closePath()};CanvasRenderingContext2D.prototype.triangle=function(x,y,r){this.beginPath();r*=1.15;y+=.275*r;var s=r*2;var s2=s/2;var ir=Math.sqrt(3)/6*s;var h=Math.sqrt(s*s-s2*s2);this.moveTo(x,y-(h-ir));this.lineTo(x+s2,y+ir);this.lineTo(x-s2,y+ir);this.lineTo(x,y-(h-ir));this.closePath()};CanvasRenderingContext2D.prototype.triangleDown=function(x,y,r){this.beginPath();r*=1.15;y-=.275*r;var s=r*2;var s2=s/2;var ir=Math.sqrt(3)/6*s;var h=Math.sqrt(s*s-s2*s2);this.moveTo(x,y+(h-ir));this.lineTo(x+s2,y-ir);this.lineTo(x-s2,y-ir);this.lineTo(x,y+(h-ir));this.closePath()};CanvasRenderingContext2D.prototype.star=function(x,y,r){this.beginPath();r*=.82;y+=.1*r;for(var n=0;n<10;n++){var radius=n%2===0?r*1.3:r*.5;this.lineTo(x+radius*Math.sin(n*2*Math.PI/10),y-radius*Math.cos(n*2*Math.PI/10))}this.closePath()};CanvasRenderingContext2D.prototype.diamond=function(x,y,r){this.beginPath();this.lineTo(x,y+r);this.lineTo(x+r,y);this.lineTo(x,y-r);this.lineTo(x-r,y);this.closePath()};CanvasRenderingContext2D.prototype.roundRect=function(x,y,w,h,r){var r2d=Math.PI/180;if(w-2*r<0){r=w/2}if(h-2*r<0){r=h/2}this.beginPath();this.moveTo(x+r,y);this.lineTo(x+w-r,y);this.arc(x+w-r,y+r,r,r2d*270,r2d*360,false);this.lineTo(x+w,y+h-r);this.arc(x+w-r,y+h-r,r,0,r2d*90,false);this.lineTo(x+r,y+h);this.arc(x+r,y+h-r,r,r2d*90,r2d*180,false);this.lineTo(x,y+r);this.arc(x+r,y+r,r,r2d*180,r2d*270,false);this.closePath()};CanvasRenderingContext2D.prototype.ellipse_vis=function(x,y,w,h){var kappa=.5522848,ox=w/2*kappa,oy=h/2*kappa,xe=x+w,ye=y+h,xm=x+w/2,ym=y+h/2;this.beginPath();this.moveTo(x,ym);this.bezierCurveTo(x,ym-oy,xm-ox,y,xm,y);this.bezierCurveTo(xm+ox,y,xe,ym-oy,xe,ym);this.bezierCurveTo(xe,ym+oy,xm+ox,ye,xm,ye);this.bezierCurveTo(xm-ox,ye,x,ym+oy,x,ym);this.closePath()};CanvasRenderingContext2D.prototype.database=function(x,y,w,h){var f=1/3;var wEllipse=w;var hEllipse=h*f;var kappa=.5522848,ox=wEllipse/2*kappa,oy=hEllipse/2*kappa,xe=x+wEllipse,ye=y+hEllipse,xm=x+wEllipse/2,ym=y+hEllipse/2,ymb=y+(h-hEllipse/2),yeb=y+h;this.beginPath();this.moveTo(xe,ym);this.bezierCurveTo(xe,ym+oy,xm+ox,ye,xm,ye);this.bezierCurveTo(xm-ox,ye,x,ym+oy,x,ym);this.bezierCurveTo(x,ym-oy,xm-ox,y,xm,y);this.bezierCurveTo(xm+ox,y,xe,ym-oy,xe,ym);this.lineTo(xe,ymb);this.bezierCurveTo(xe,ymb+oy,xm+ox,yeb,xm,yeb);this.bezierCurveTo(xm-ox,yeb,x,ymb+oy,x,ymb);this.lineTo(x,ym)};CanvasRenderingContext2D.prototype.dashedLine=function(x,y,x2,y2,pattern){this.beginPath();this.moveTo(x,y);var patternLength=pattern.length;var dx=x2-x;var dy=y2-y;var slope=dy/dx;var distRemaining=Math.sqrt(dx*dx+dy*dy);var patternIndex=0;var draw=true;var xStep=0;var dashLength=pattern[0];while(distRemaining>=.1){dashLength=pattern[patternIndex++%patternLength];if(dashLength>distRemaining){dashLength=distRemaining}xStep=Math.sqrt(dashLength*dashLength/(1+slope*slope));xStep=dx<0?-xStep:xStep;x+=xStep;y+=slope*xStep;if(draw===true){this.lineTo(x,y)}else{this.moveTo(x,y)}distRemaining-=dashLength;draw=!draw}};CanvasRenderingContext2D.prototype.hexagon=function(x,y,r){this.beginPath();var sides=6;var a=Math.PI*2/sides;this.moveTo(x+r,y);for(var i=1;i<sides;i++){this.lineTo(x+r*Math.cos(a*i),y+r*Math.sin(a*i))}this.closePath()}}},function(module,exports,__webpack_require__){\"use strict\";exports[\"en\"]={edit:\"Edit\",del:\"Delete selected\",back:\"Back\",addNode:\"Add Node\",addEdge:\"Add Edge\",editNode:\"Edit Node\",editEdge:\"Edit Edge\",addDescription:\"Click in an empty space to place a new node.\",edgeDescription:\"Click on a node and drag the edge to another node to connect them.\",editEdgeDescription:\"Click on the control points and drag them to a node to connect to it.\",createEdgeError:\"Cannot link edges to a cluster.\",deleteClusterError:\"Clusters cannot be deleted.\",editClusterError:\"Clusters cannot be edited.\"};exports[\"en_EN\"]=exports[\"en\"];exports[\"en_US\"]=exports[\"en\"];exports[\"de\"]={edit:\"Editieren\",del:\"Lösche Auswahl\",back:\"Zurück\",addNode:\"Knoten hinzufügen\",addEdge:\"Kante hinzufügen\",editNode:\"Knoten editieren\",editEdge:\"Kante editieren\",addDescription:\"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.\",edgeDescription:\"Klicke auf einen Knoten und ziehe die Kante zu einem anderen Knoten, um diese zu verbinden.\",editEdgeDescription:\"Klicke auf die Verbindungspunkte und ziehe diese auf einen Knoten, um sie zu verbinden.\",createEdgeError:\"Es ist nicht möglich, Kanten mit Clustern zu verbinden.\",deleteClusterError:\"Cluster können nicht gelöscht werden.\",editClusterError:\"Cluster können nicht editiert werden.\"};exports[\"de_DE\"]=exports[\"de\"];exports[\"es\"]={edit:\"Editar\",del:\"Eliminar selección\",back:\"Átras\",addNode:\"Añadir nodo\",addEdge:\"Añadir arista\",editNode:\"Editar nodo\",editEdge:\"Editar arista\",addDescription:\"Haga clic en un lugar vacío para colocar un nuevo nodo.\",edgeDescription:\"Haga clic en un nodo y arrastre la arista hacia otro nodo para conectarlos.\",editEdgeDescription:\"Haga clic en un punto de control y arrastrelo a un nodo para conectarlo.\",createEdgeError:\"No se puede conectar una arista a un grupo.\",deleteClusterError:\"No es posible eliminar grupos.\",editClusterError:\"No es posible editar grupos.\"};exports[\"es_ES\"]=exports[\"es\"];exports[\"it\"]={edit:\"Modifica\",del:\"Cancella la selezione\",back:\"Indietro\",addNode:\"Aggiungi un nodo\",addEdge:\"Aggiungi un vertice\",editNode:\"Modifica il nodo\",editEdge:\"Modifica il vertice\",addDescription:\"Clicca per aggiungere un nuovo nodo\",edgeDescription:\"Clicca su un nodo e trascinalo ad un altro nodo per connetterli.\",editEdgeDescription:\"Clicca sui Punti di controllo e trascinali ad un nodo per connetterli.\",createEdgeError:\"Non si possono collegare vertici ad un cluster\",deleteClusterError:\"I cluster non possono essere cancellati\",editClusterError:\"I clusters non possono essere modificati.\"};exports[\"it_IT\"]=exports[\"it\"];exports[\"nl\"]={edit:\"Wijzigen\",del:\"Selectie verwijderen\",\nback:\"Terug\",addNode:\"Node toevoegen\",addEdge:\"Link toevoegen\",editNode:\"Node wijzigen\",editEdge:\"Link wijzigen\",addDescription:\"Klik op een leeg gebied om een nieuwe node te maken.\",edgeDescription:\"Klik op een node en sleep de link naar een andere node om ze te verbinden.\",editEdgeDescription:\"Klik op de verbindingspunten en sleep ze naar een node om daarmee te verbinden.\",createEdgeError:\"Kan geen link maken naar een cluster.\",deleteClusterError:\"Clusters kunnen niet worden verwijderd.\",editClusterError:\"Clusters kunnen niet worden aangepast.\"};exports[\"nl_NL\"]=exports[\"nl\"];exports[\"nl_BE\"]=exports[\"nl\"];exports[\"pt-br\"]={edit:\"Editar\",del:\"Remover selecionado\",back:\"Voltar\",addNode:\"Adicionar nó\",addEdge:\"Adicionar aresta\",editNode:\"Editar nó\",editEdge:\"Editar aresta\",addDescription:\"Clique em um espaço em branco para adicionar um novo nó\",edgeDescription:\"Clique em um nó e arraste a aresta até outro nó para conectá-los\",editEdgeDescription:\"Clique nos pontos de controle e os arraste para um nó para conectá-los\",createEdgeError:\"Não foi possível linkar arestas a um cluster.\",deleteClusterError:\"Clusters não puderam ser removidos.\",editClusterError:\"Clusters não puderam ser editados.\"};exports[\"pt-BR\"]=exports[\"pt-br\"];exports[\"pt_BR\"]=exports[\"pt-br\"];exports[\"pt_br\"]=exports[\"pt-br\"];exports[\"ru\"]={edit:\"Редактировать\",del:\"Удалить выбранное\",back:\"Назад\",addNode:\"Добавить узел\",addEdge:\"Добавить ребро\",editNode:\"Редактировать узел\",editEdge:\"Редактировать ребро\",addDescription:\"Кликните в свободное место, чтобы добавить новый узел.\",edgeDescription:\"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.\",editEdgeDescription:\"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.\",createEdgeError:\"Невозможно соединить ребра в кластер.\",deleteClusterError:\"Кластеры не могут быть удалены\",editClusterError:\"Кластеры недоступны для редактирования.\"};exports[\"ru_RU\"]=exports[\"ru\"];exports[\"cn\"]={edit:\"编辑\",del:\"删除选定\",back:\"返回\",addNode:\"添加节点\",addEdge:\"添加连接线\",editNode:\"编辑节点\",editEdge:\"编辑连接线\",addDescription:\"单击空白处放置新节点。\",edgeDescription:\"单击某个节点并将该连接线拖动到另一个节点以连接它们。\",editEdgeDescription:\"单击控制节点并将它们拖到节点上连接。\",createEdgeError:\"无法将连接线连接到群集。\",deleteClusterError:\"无法删除群集。\",editClusterError:\"无法编辑群集。\"};exports[\"zh_CN\"]=exports[\"cn\"]},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CachedImage=function(){function CachedImage(){(0,_classCallCheck3[\"default\"])(this,CachedImage);this.NUM_ITERATIONS=4;this.image=new Image;this.canvas=document.createElement(\"canvas\")}(0,_createClass3[\"default\"])(CachedImage,[{key:\"init\",value:function init(){if(this.initialized())return;this.src=this.image.src;var w=this.image.width;var h=this.image.height;this.width=w;this.height=h;var h2=Math.floor(h/2);var h4=Math.floor(h/4);var h8=Math.floor(h/8);var h16=Math.floor(h/16);var w2=Math.floor(w/2);var w4=Math.floor(w/4);var w8=Math.floor(w/8);var w16=Math.floor(w/16);this.canvas.width=3*w4;this.canvas.height=h2;this.coordinates=[[0,0,w2,h2],[w2,0,w4,h4],[w2,h4,w8,h8],[5*w8,h4,w16,h16]];this._fillMipMap()}},{key:\"initialized\",value:function initialized(){return this.coordinates!==undefined}},{key:\"_fillMipMap\",value:function _fillMipMap(){var ctx=this.canvas.getContext(\"2d\");var to=this.coordinates[0];ctx.drawImage(this.image,to[0],to[1],to[2],to[3]);for(var iterations=1;iterations<this.NUM_ITERATIONS;iterations++){var from=this.coordinates[iterations-1];var _to=this.coordinates[iterations];ctx.drawImage(this.canvas,from[0],from[1],from[2],from[3],_to[0],_to[1],_to[2],_to[3])}}},{key:\"drawImageAtPosition\",value:function drawImageAtPosition(ctx,factor,left,top,width,height){if(!this.initialized())return;if(factor>2){factor*=.5;var iterations=0;while(factor>2&&iterations<this.NUM_ITERATIONS){factor*=.5;iterations+=1}if(iterations>=this.NUM_ITERATIONS){iterations=this.NUM_ITERATIONS-1}var from=this.coordinates[iterations];ctx.drawImage(this.canvas,from[0],from[1],from[2],from[3],left,top,width,height)}else{ctx.drawImage(this.image,left,top,width,height)}}}]);return CachedImage}();exports[\"default\"]=CachedImage},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Groups=function(){function Groups(){(0,_classCallCheck3[\"default\"])(this,Groups);this.clear();this.defaultIndex=0;this.groupsArray=[];this.groupIndex=0;this.defaultGroups=[{border:\"#2B7CE9\",background:\"#97C2FC\",highlight:{border:\"#2B7CE9\",background:\"#D2E5FF\"},hover:{border:\"#2B7CE9\",background:\"#D2E5FF\"}},{border:\"#FFA500\",background:\"#FFFF00\",highlight:{border:\"#FFA500\",background:\"#FFFFA3\"},hover:{border:\"#FFA500\",background:\"#FFFFA3\"}},{border:\"#FA0A10\",background:\"#FB7E81\",highlight:{border:\"#FA0A10\",background:\"#FFAFB1\"},hover:{border:\"#FA0A10\",background:\"#FFAFB1\"}},{border:\"#41A906\",background:\"#7BE141\",highlight:{border:\"#41A906\",background:\"#A1EC76\"},hover:{border:\"#41A906\",background:\"#A1EC76\"}},{border:\"#E129F0\",background:\"#EB7DF4\",highlight:{border:\"#E129F0\",background:\"#F0B3F5\"},hover:{border:\"#E129F0\",background:\"#F0B3F5\"}},{border:\"#7C29F0\",background:\"#AD85E4\",highlight:{border:\"#7C29F0\",background:\"#D3BDF0\"},hover:{border:\"#7C29F0\",background:\"#D3BDF0\"}},{border:\"#C37F00\",background:\"#FFA807\",highlight:{border:\"#C37F00\",background:\"#FFCA66\"},hover:{border:\"#C37F00\",background:\"#FFCA66\"}},{border:\"#4220FB\",background:\"#6E6EFD\",highlight:{border:\"#4220FB\",background:\"#9B9BFD\"},hover:{border:\"#4220FB\",background:\"#9B9BFD\"}},{border:\"#FD5A77\",background:\"#FFC0CB\",highlight:{border:\"#FD5A77\",background:\"#FFD1D9\"},hover:{border:\"#FD5A77\",background:\"#FFD1D9\"}},{border:\"#4AD63A\",background:\"#C2FABC\",highlight:{border:\"#4AD63A\",background:\"#E6FFE3\"},hover:{border:\"#4AD63A\",background:\"#E6FFE3\"}},{border:\"#990000\",background:\"#EE0000\",highlight:{border:\"#BB0000\",background:\"#FF3333\"},hover:{border:\"#BB0000\",background:\"#FF3333\"}},{border:\"#FF6000\",background:\"#FF6000\",highlight:{border:\"#FF6000\",background:\"#FF6000\"},hover:{border:\"#FF6000\",background:\"#FF6000\"}},{border:\"#97C2FC\",background:\"#2B7CE9\",highlight:{border:\"#D2E5FF\",background:\"#2B7CE9\"},hover:{border:\"#D2E5FF\",background:\"#2B7CE9\"}},{border:\"#399605\",background:\"#255C03\",highlight:{border:\"#399605\",background:\"#255C03\"},hover:{border:\"#399605\",background:\"#255C03\"}},{border:\"#B70054\",background:\"#FF007E\",highlight:{border:\"#B70054\",background:\"#FF007E\"},hover:{border:\"#B70054\",background:\"#FF007E\"}},{border:\"#AD85E4\",background:\"#7C29F0\",highlight:{border:\"#D3BDF0\",background:\"#7C29F0\"},hover:{border:\"#D3BDF0\",background:\"#7C29F0\"}},{border:\"#4557FA\",background:\"#000EA1\",highlight:{border:\"#6E6EFD\",background:\"#000EA1\"},hover:{border:\"#6E6EFD\",background:\"#000EA1\"}},{border:\"#FFC0CB\",background:\"#FD5A77\",highlight:{border:\"#FFD1D9\",background:\"#FD5A77\"},hover:{border:\"#FFD1D9\",background:\"#FD5A77\"}},{border:\"#C2FABC\",background:\"#74D66A\",highlight:{border:\"#E6FFE3\",background:\"#74D66A\"},hover:{border:\"#E6FFE3\",background:\"#74D66A\"}},{border:\"#EE0000\",background:\"#990000\",highlight:{border:\"#FF3333\",background:\"#BB0000\"},hover:{border:\"#FF3333\",background:\"#BB0000\"}}];this.options={};this.defaultOptions={useDefaultGroups:true};util.extend(this.options,this.defaultOptions)}(0,_createClass3[\"default\"])(Groups,[{key:\"setOptions\",value:function setOptions(options){var optionFields=[\"useDefaultGroups\"];if(options!==undefined){for(var groupName in options){if(options.hasOwnProperty(groupName)){if(optionFields.indexOf(groupName)===-1){var group=options[groupName];this.add(groupName,group)}}}}}},{key:\"clear\",value:function clear(){this.groups={};this.groupsArray=[]}},{key:\"get\",value:function get(groupname){var shouldCreate=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var group=this.groups[groupname];if(group===undefined&&shouldCreate){if(this.options.useDefaultGroups===false&&this.groupsArray.length>0){var index=this.groupIndex%this.groupsArray.length;this.groupIndex++;group={};group.color=this.groups[this.groupsArray[index]];this.groups[groupname]=group}else{var _index=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++;group={};group.color=this.defaultGroups[_index];this.groups[groupname]=group}}return group}},{key:\"add\",value:function add(groupName,style){this.groups[groupName]=style;this.groupsArray.push(groupName);return style}}]);return Groups}();exports[\"default\"]=Groups},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Node=__webpack_require__(47)[\"default\"];var NodesHandler=function(){function NodesHandler(body,images,groups,layoutEngine){var _this=this;(0,_classCallCheck3[\"default\"])(this,NodesHandler);this.body=body;this.images=images;this.groups=groups;this.layoutEngine=layoutEngine;this.body.functions.createNode=this.create.bind(this);this.nodesListeners={add:function add(event,params){_this.add(params.items)},update:function update(event,params){_this.update(params.items,params.data,params.oldData)},remove:function remove(event,params){_this.remove(params.items)}};this.defaultOptions={borderWidth:1,borderWidthSelected:2,brokenImage:undefined,color:{border:\"#2B7CE9\",background:\"#97C2FC\",highlight:{border:\"#2B7CE9\",background:\"#D2E5FF\"},hover:{border:\"#2B7CE9\",background:\"#D2E5FF\"}},fixed:{x:false,y:false},font:{color:\"#343434\",size:14,face:\"arial\",background:\"none\",strokeWidth:0,strokeColor:\"#ffffff\",align:\"center\",vadjust:0,multi:false,bold:{mod:\"bold\"},boldital:{mod:\"bold italic\"},ital:{mod:\"italic\"},mono:{mod:\"\",size:15,face:\"monospace\",vadjust:2}},group:undefined,hidden:false,icon:{face:\"FontAwesome\",code:undefined,size:50,color:\"#2B7CE9\"},image:undefined,label:undefined,labelHighlightBold:true,level:undefined,margin:{top:5,right:5,bottom:5,left:5},mass:1,physics:true,scaling:{min:10,max:30,label:{enabled:false,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function customScalingFunction(min,max,total,value){if(max===min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}}},shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:10,x:5,y:5},shape:\"ellipse\",shapeProperties:{borderDashes:false,borderRadius:6,interpolation:true,useImageSize:false,useBorderWithImage:false},size:25,title:undefined,value:undefined,x:undefined,y:undefined};if(this.defaultOptions.mass<=0){throw\"Internal error: mass in defaultOptions of NodesHandler may not be zero or negative\"}this.options=util.bridgeObject(this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(NodesHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"refreshNodes\",this.refresh.bind(this));this.body.emitter.on(\"refresh\",this.refresh.bind(this));this.body.emitter.on(\"destroy\",function(){util.forEach(_this2.nodesListeners,function(callback,event){if(_this2.body.data.nodes)_this2.body.data.nodes.off(event,callback)});delete _this2.body.functions.createNode;delete _this2.nodesListeners.add;delete _this2.nodesListeners.update;delete _this2.nodesListeners.remove;delete _this2.nodesListeners})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){Node.parseOptions(this.options,options);if(options.shape!==undefined){for(var nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){this.body.nodes[nodeId].updateShape()}}}if(options.font!==undefined){for(var _nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId)){this.body.nodes[_nodeId].updateLabelModule();this.body.nodes[_nodeId].needsRefresh()}}}if(options.size!==undefined){for(var _nodeId2 in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId2)){this.body.nodes[_nodeId2].needsRefresh()}}}if(options.hidden!==undefined||options.physics!==undefined){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"setData\",value:function setData(nodes){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var oldNodesData=this.body.data.nodes;if(nodes instanceof DataSet||nodes instanceof DataView){this.body.data.nodes=nodes}else if(Array.isArray(nodes)){this.body.data.nodes=new DataSet;this.body.data.nodes.add(nodes)}else if(!nodes){this.body.data.nodes=new DataSet}else{throw new TypeError(\"Array or DataSet expected\")}if(oldNodesData){util.forEach(this.nodesListeners,function(callback,event){oldNodesData.off(event,callback)})}this.body.nodes={};if(this.body.data.nodes){var me=this;util.forEach(this.nodesListeners,function(callback,event){me.body.data.nodes.on(event,callback)});var ids=this.body.data.nodes.getIds();this.add(ids,true)}if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"add\",value:function add(ids){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var id=void 0;var newNodes=[];for(var i=0;i<ids.length;i++){id=ids[i];var properties=this.body.data.nodes.get(id);var node=this.create(properties);newNodes.push(node);this.body.nodes[id]=node}this.layoutEngine.positionInitially(newNodes);if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"update\",value:function update(ids,changedData,oldData){var nodes=this.body.nodes;var dataChanged=false;for(var i=0;i<ids.length;i++){var id=ids[i];var node=nodes[id];var data=changedData[i];if(node!==undefined){if(node.setOptions(data)){dataChanged=true}}else{dataChanged=true;node=this.create(data);nodes[id]=node}}if(!dataChanged&&oldData!==undefined){dataChanged=changedData.some(function(newValue,index){var oldValue=oldData[index];return oldValue&&oldValue.level!==newValue.level})}if(dataChanged===true){this.body.emitter.emit(\"_dataChanged\")}else{this.body.emitter.emit(\"_dataUpdated\")}}},{key:\"remove\",value:function remove(ids){var nodes=this.body.nodes;for(var i=0;i<ids.length;i++){var id=ids[i];delete nodes[id]}this.body.emitter.emit(\"_dataChanged\")}},{key:\"create\",value:function create(properties){var constructorClass=arguments.length>1&&arguments[1]!==undefined?arguments[1]:Node;return new constructorClass(properties,this.body,this.images,this.groups,this.options,this.defaultOptions)}},{key:\"refresh\",value:function refresh(){var _this3=this;var clearPositions=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;util.forEach(this.body.nodes,function(node,nodeId){var data=_this3.body.data.nodes.get(nodeId);if(data!==undefined){if(clearPositions===true){node.setOptions({x:null,y:null})}node.setOptions({fixed:false});node.setOptions(data)}})}},{key:\"getPositions\",value:function getPositions(ids){var dataArray={};if(ids!==undefined){if(Array.isArray(ids)===true){for(var i=0;i<ids.length;i++){if(this.body.nodes[ids[i]]!==undefined){var node=this.body.nodes[ids[i]];dataArray[ids[i]]={x:Math.round(node.x),y:Math.round(node.y)}}}}else{if(this.body.nodes[ids]!==undefined){var _node=this.body.nodes[ids];dataArray[ids]={x:Math.round(_node.x),y:Math.round(_node.y)}}}}else{for(var _i=0;_i<this.body.nodeIndices.length;_i++){var _node2=this.body.nodes[this.body.nodeIndices[_i]];dataArray[this.body.nodeIndices[_i]]={x:Math.round(_node2.x),y:Math.round(_node2.y)}}}return dataArray}},{key:\"storePositions\",value:function storePositions(){var dataArray=[];var dataset=this.body.data.nodes.getDataSet();for(var nodeId in dataset._data){if(dataset._data.hasOwnProperty(nodeId)){var node=this.body.nodes[nodeId];if(dataset._data[nodeId].x!=Math.round(node.x)||dataset._data[nodeId].y!=Math.round(node.y)){dataArray.push({id:node.id,x:Math.round(node.x),y:Math.round(node.y)})}}}dataset.update(dataArray)}},{key:\"getBoundingBox\",value:function getBoundingBox(nodeId){if(this.body.nodes[nodeId]!==undefined){return this.body.nodes[nodeId].shape.boundingBox}}},{key:\"getConnectedNodes\",value:function getConnectedNodes(nodeId,direction){var nodeList=[];if(this.body.nodes[nodeId]!==undefined){var node=this.body.nodes[nodeId];var nodeObj={};for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];if(direction!==\"to\"&&edge.toId==node.id){if(nodeObj[edge.fromId]===undefined){nodeList.push(edge.fromId);nodeObj[edge.fromId]=true}}else if(direction!==\"from\"&&edge.fromId==node.id){if(nodeObj[edge.toId]===undefined){nodeList.push(edge.toId);nodeObj[edge.toId]=true}}}}return nodeList}},{key:\"getConnectedEdges\",value:function getConnectedEdges(nodeId){var edgeList=[];if(this.body.nodes[nodeId]!==undefined){var node=this.body.nodes[nodeId];for(var i=0;i<node.edges.length;i++){edgeList.push(node.edges[i].id)}}else{console.log(\"NodeId provided for getConnectedEdges does not exist. Provided: \",nodeId)}return edgeList}},{key:\"moveNode\",value:function moveNode(nodeId,x,y){var _this4=this;if(this.body.nodes[nodeId]!==undefined){this.body.nodes[nodeId].x=Number(x);this.body.nodes[nodeId].y=Number(y);setTimeout(function(){_this4.body.emitter.emit(\"startSimulation\")},0)}else{console.log(\"Node id supplied to moveNode does not exist. Provided: \",nodeId)}}}]);return NodesHandler}();exports[\"default\"]=NodesHandler},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(189),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(49);__webpack_require__(60);module.exports=__webpack_require__(190)},function(module,exports,__webpack_require__){var classof=__webpack_require__(86);var ITERATOR=__webpack_require__(13)(\"iterator\");var Iterators=__webpack_require__(31);module.exports=__webpack_require__(7).isIterable=function(it){var O=Object(it);return O[ITERATOR]!==undefined||\"@@iterator\"in O||Iterators.hasOwnProperty(classof(O))}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var LabelAccumulator=__webpack_require__(192)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var LabelSplitter=function(){function LabelSplitter(ctx,parent,selected,hover){var _this=this;(0,_classCallCheck3[\"default\"])(this,LabelSplitter);this.ctx=ctx;this.parent=parent;var textWidth=function textWidth(text,mod){if(text===undefined)return 0;var values=_this.parent.getFormattingValues(ctx,selected,hover,mod);var width=0;if(text!==\"\"){var measure=_this.ctx.measureText(text);width=measure.width}return{width:width,values:values}};this.lines=new LabelAccumulator(textWidth)}(0,_createClass3[\"default\"])(LabelSplitter,[{key:\"process\",value:function process(text){if(!ComponentUtil.isValidLabel(text)){return this.lines.finalize()}var font=this.parent.fontOptions;text=text.replace(/\\r\\n/g,\"\\n\");text=text.replace(/\\r/g,\"\\n\");var nlLines=String(text).split(\"\\n\");var lineCount=nlLines.length;if(font.multi){for(var i=0;i<lineCount;i++){var blocks=this.splitBlocks(nlLines[i],font.multi);if(blocks===undefined)continue;if(blocks.length===0){this.lines.newLine(\"\");continue}if(font.maxWdt>0){for(var j=0;j<blocks.length;j++){var mod=blocks[j].mod;var _text=blocks[j].text;this.splitStringIntoLines(_text,mod,true)}}else{for(var _j=0;_j<blocks.length;_j++){var _mod=blocks[_j].mod;var _text2=blocks[_j].text;this.lines.append(_text2,_mod)}}this.lines.newLine()}}else{if(font.maxWdt>0){for(var _i=0;_i<lineCount;_i++){this.splitStringIntoLines(nlLines[_i])}}else{for(var _i2=0;_i2<lineCount;_i2++){this.lines.newLine(nlLines[_i2])}}}return this.lines.finalize()}},{key:\"decodeMarkupSystem\",value:function decodeMarkupSystem(markupSystem){var system=\"none\";if(markupSystem===\"markdown\"||markupSystem===\"md\"){system=\"markdown\"}else if(markupSystem===true||markupSystem===\"html\"){system=\"html\"}return system}},{key:\"splitHtmlBlocks\",value:function splitHtmlBlocks(text){var blocks=[];var s={bold:false,ital:false,mono:false,spacing:false,position:0,buffer:\"\",modStack:[]};s.mod=function(){return this.modStack.length===0?\"normal\":this.modStack[0]};s.modName=function(){if(this.modStack.length===0)return\"normal\";else if(this.modStack[0]===\"mono\")return\"mono\";else{if(s.bold&&s.ital){return\"boldital\"}else if(s.bold){return\"bold\"}else if(s.ital){return\"ital\"}}};s.emitBlock=function(){var override=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.spacing){this.add(\" \");this.spacing=false}if(this.buffer.length>0){blocks.push({text:this.buffer,mod:this.modName()});this.buffer=\"\"}};s.add=function(text){if(text===\" \"){s.spacing=true}if(s.spacing){this.buffer+=\" \";this.spacing=false}if(text!=\" \"){this.buffer+=text}};while(s.position<text.length){var ch=text.charAt(s.position);if(/[ \\t]/.test(ch)){if(!s.mono){s.spacing=true}else{s.add(ch)}}else if(/</.test(ch)){if(!s.mono&&!s.bold&&/<b>/.test(text.substr(s.position,3))){s.emitBlock();s.bold=true;s.modStack.unshift(\"bold\");s.position+=2}else if(!s.mono&&!s.ital&&/<i>/.test(text.substr(s.position,3))){s.emitBlock();s.ital=true;s.modStack.unshift(\"ital\");s.position+=2}else if(!s.mono&&/<code>/.test(text.substr(s.position,6))){s.emitBlock();s.mono=true;s.modStack.unshift(\"mono\");s.position+=5}else if(!s.mono&&s.mod()===\"bold\"&&/<\\/b>/.test(text.substr(s.position,4))){s.emitBlock();s.bold=false;s.modStack.shift();s.position+=3}else if(!s.mono&&s.mod()===\"ital\"&&/<\\/i>/.test(text.substr(s.position,4))){s.emitBlock();s.ital=false;s.modStack.shift();s.position+=3}else if(s.mod()===\"mono\"&&/<\\/code>/.test(text.substr(s.position,7))){s.emitBlock();s.mono=false;s.modStack.shift();s.position+=6}else{s.add(ch)}}else if(/&/.test(ch)){if(/&lt;/.test(text.substr(s.position,4))){s.add(\"<\");s.position+=3}else if(/&amp;/.test(text.substr(s.position,5))){s.add(\"&\");s.position+=4}else{s.add(\"&\")}}else{s.add(ch)}s.position++}s.emitBlock();return blocks}},{key:\"splitMarkdownBlocks\",value:function splitMarkdownBlocks(text){var blocks=[];var s={bold:false,ital:false,mono:false,beginable:true,spacing:false,position:0,buffer:\"\",modStack:[]};s.mod=function(){return this.modStack.length===0?\"normal\":this.modStack[0]};s.modName=function(){if(this.modStack.length===0)return\"normal\";else if(this.modStack[0]===\"mono\")return\"mono\";else{if(s.bold&&s.ital){return\"boldital\"}else if(s.bold){return\"bold\"}else if(s.ital){return\"ital\"}}};s.emitBlock=function(){var override=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.spacing){this.add(\" \");this.spacing=false}if(this.buffer.length>0){blocks.push({text:this.buffer,mod:this.modName()});this.buffer=\"\"}};s.add=function(text){if(text===\" \"){s.spacing=true}if(s.spacing){this.buffer+=\" \";this.spacing=false}if(text!=\" \"){this.buffer+=text}};while(s.position<text.length){var ch=text.charAt(s.position);if(/[ \\t]/.test(ch)){if(!s.mono){s.spacing=true}else{s.add(ch)}s.beginable=true}else if(/\\\\/.test(ch)){if(s.position<text.length+1){s.position++;ch=text.charAt(s.position);if(/ \\t/.test(ch)){s.spacing=true}else{s.add(ch);s.beginable=false}}}else if(!s.mono&&!s.bold&&(s.beginable||s.spacing)&&/\\*/.test(ch)){s.emitBlock();s.bold=true;s.modStack.unshift(\"bold\")}else if(!s.mono&&!s.ital&&(s.beginable||s.spacing)&&/\\_/.test(ch)){s.emitBlock();s.ital=true;s.modStack.unshift(\"ital\")}else if(!s.mono&&(s.beginable||s.spacing)&&/`/.test(ch)){s.emitBlock();s.mono=true;s.modStack.unshift(\"mono\")}else if(!s.mono&&s.mod()===\"bold\"&&/\\*/.test(ch)){if(s.position===text.length-1||/[.,_` \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.bold=false;s.modStack.shift()}else{s.add(ch)}}else if(!s.mono&&s.mod()===\"ital\"&&/\\_/.test(ch)){if(s.position===text.length-1||/[.,*` \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.ital=false;s.modStack.shift()}else{s.add(ch)}}else if(s.mono&&s.mod()===\"mono\"&&/`/.test(ch)){if(s.position===text.length-1||/[.,*_ \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.mono=false;s.modStack.shift()}else{s.add(ch)}}else{s.add(ch);s.beginable=false}s.position++}s.emitBlock();return blocks}},{key:\"splitBlocks\",value:function splitBlocks(text,markupSystem){var system=this.decodeMarkupSystem(markupSystem);if(system===\"none\"){return[{text:text,mod:\"normal\"}]}else if(system===\"markdown\"){return this.splitMarkdownBlocks(text)}else if(system===\"html\"){return this.splitHtmlBlocks(text)}}},{key:\"overMaxWidth\",value:function overMaxWidth(text){var width=this.ctx.measureText(text).width;return this.lines.curWidth()+width>this.parent.fontOptions.maxWdt}},{key:\"getLongestFit\",value:function getLongestFit(words){var text=\"\";var w=0;while(w<words.length){var pre=text===\"\"?\"\":\" \";var newText=text+pre+words[w];if(this.overMaxWidth(newText))break;text=newText;w++}return w}},{key:\"getLongestFitWord\",value:function getLongestFitWord(words){var w=0;while(w<words.length){if(this.overMaxWidth(words.slice(0,w)))break;w++}return w}},{key:\"splitStringIntoLines\",value:function splitStringIntoLines(str){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";var appendLast=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;str=str.replace(/^( +)/g,\"$1\\r\");str=str.replace(/([^\\r][^ ]*)( +)/g,\"$1\\r$2\\r\");var words=str.split(\"\\r\");while(words.length>0){var w=this.getLongestFit(words);if(w===0){var word=words[0];var x=this.getLongestFitWord(word);this.lines.newLine(word.slice(0,x),mod);words[0]=word.slice(x)}else{var newW=w;if(words[w-1]===\" \"){w--}else if(words[newW]===\" \"){newW++}var text=words.slice(0,w).join(\"\");if(w==words.length&&appendLast){this.lines.append(text,mod)}else{this.lines.newLine(text,mod)}words=words.slice(newW)}}}}]);return LabelSplitter}();exports[\"default\"]=LabelSplitter},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _assign=__webpack_require__(90);var _assign2=_interopRequireDefault(_assign);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var LabelAccumulator=function(){function LabelAccumulator(measureText){(0,_classCallCheck3[\"default\"])(this,LabelAccumulator);this.measureText=measureText;this.current=0;this.width=0;this.height=0;this.lines=[]}(0,_createClass3[\"default\"])(LabelAccumulator,[{key:\"_add\",value:function _add(l,text){var mod=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"normal\";if(this.lines[l]===undefined){this.lines[l]={width:0,height:0,blocks:[]}}var tmpText=text;if(text===undefined||text===\"\")tmpText=\" \";var result=this.measureText(tmpText,mod);var block=(0,_assign2[\"default\"])({},result.values);block.text=text;block.width=result.width;block.mod=mod;if(text===undefined||text===\"\"){block.width=0}this.lines[l].blocks.push(block);this.lines[l].width+=block.width}},{key:\"curWidth\",value:function curWidth(){var line=this.lines[this.current];if(line===undefined)return 0;return line.width}},{key:\"append\",value:function append(text){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";this._add(this.current,text,mod)}},{key:\"newLine\",value:function newLine(text){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";this._add(this.current,text,mod);this.current++}},{key:\"determineLineHeights\",value:function determineLineHeights(){for(var k=0;k<this.lines.length;k++){var line=this.lines[k];var height=0;if(line.blocks!==undefined){for(var l=0;l<line.blocks.length;l++){var block=line.blocks[l];if(height<block.height){height=block.height}}}line.height=height}}},{key:\"determineLabelSize\",value:function determineLabelSize(){var width=0;var height=0;for(var k=0;k<this.lines.length;k++){var line=this.lines[k];if(line.width>width){width=line.width}height+=line.height}this.width=width;this.height=height}},{key:\"removeEmptyBlocks\",value:function removeEmptyBlocks(){var tmpLines=[];for(var k=0;k<this.lines.length;k++){var line=this.lines[k];if(line.blocks.length===0)continue;if(k===this.lines.length-1){if(line.width===0)continue}var tmpLine={};(0,_assign2[\"default\"])(tmpLine,line);tmpLine.blocks=[];var firstEmptyBlock=void 0;var tmpBlocks=[];for(var l=0;l<line.blocks.length;l++){var block=line.blocks[l];if(block.width!==0){tmpBlocks.push(block)}else{if(firstEmptyBlock===undefined){firstEmptyBlock=block}}}if(tmpBlocks.length===0&&firstEmptyBlock!==undefined){tmpBlocks.push(firstEmptyBlock)}tmpLine.blocks=tmpBlocks;tmpLines.push(tmpLine)}return tmpLines}},{key:\"finalize\",value:function finalize(){this.determineLineHeights();this.determineLabelSize();var tmpLines=this.removeEmptyBlocks();return{width:this.width,height:this.height,lines:tmpLines}}}]);return LabelAccumulator}();exports[\"default\"]=LabelAccumulator},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Box=function(_NodeBase){(0,_inherits3[\"default\"])(Box,_NodeBase);function Box(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Box);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Box.__proto__||(0,_getPrototypeOf2[\"default\"])(Box)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Box,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);this.width=dimensions.width+this.margin.right+this.margin.left;this.height=dimensions.height+this.margin.top+this.margin.bottom;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx.roundRect(this.left,this.top,this.width,this.height,values.borderRadius);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y,ctx,selected,hover){this._updateBoundingBox(x,y,ctx,selected,hover)\n;var borderRadius=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(borderRadius)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);var borderWidth=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(angle)),Math.abs(this.height/2/Math.sin(angle)))+borderWidth}}]);return Box}(_NodeBase3[\"default\"]);exports[\"default\"]=Box},function(module,exports,__webpack_require__){__webpack_require__(195);module.exports=__webpack_require__(7).Object.getPrototypeOf},function(module,exports,__webpack_require__){var toObject=__webpack_require__(41);var $getPrototypeOf=__webpack_require__(85);__webpack_require__(87)(\"getPrototypeOf\",function(){return function getPrototypeOf(it){return $getPrototypeOf(toObject(it))}})},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(197),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(198);module.exports=__webpack_require__(7).Object.setPrototypeOf},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Object\",{setPrototypeOf:__webpack_require__(199).set})},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);var anObject=__webpack_require__(27);var check=function(O,proto){anObject(O);if(!isObject(proto)&&proto!==null)throw TypeError(proto+\": can't set as prototype!\")};module.exports={set:Object.setPrototypeOf||(\"__proto__\"in{}?function(test,buggy,set){try{set=__webpack_require__(80)(Function.call,__webpack_require__(89).f(Object.prototype,\"__proto__\").set,2);set(test,[]);buggy=!(test instanceof Array)}catch(e){buggy=true}return function setPrototypeOf(O,proto){check(O,proto);if(buggy)O.__proto__=proto;else set(O,proto);return O}}({},false):undefined),check:check}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Circle=function(_CircleImageBase){(0,_inherits3[\"default\"])(Circle,_CircleImageBase);function Circle(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Circle);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Circle.__proto__||(0,_getPrototypeOf2[\"default\"])(Circle)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Circle,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);var diameter=Math.max(dimensions.width+this.margin.right+this.margin.left,dimensions.height+this.margin.top+this.margin.bottom);this.options.size=diameter/2;this.width=diameter;this.height=diameter;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this._drawRawCircle(ctx,x,y,values);this.updateBoundingBox(x,y);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,y,selected,hover)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.width*.5}}]);return Circle}(_CircleImageBase3[\"default\"]);exports[\"default\"]=Circle},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CircularImage=function(_CircleImageBase){(0,_inherits3[\"default\"])(CircularImage,_CircleImageBase);function CircularImage(options,body,labelModule,imageObj,imageObjAlt){(0,_classCallCheck3[\"default\"])(this,CircularImage);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(CircularImage.__proto__||(0,_getPrototypeOf2[\"default\"])(CircularImage)).call(this,options,body,labelModule));_this.setImages(imageObj,imageObjAlt);return _this}(0,_createClass3[\"default\"])(CircularImage,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var imageAbsent=this.imageObj.src===undefined||this.imageObj.width===undefined||this.imageObj.height===undefined;if(imageAbsent){var diameter=this.options.size*2;this.width=diameter;this.height=diameter;this.radius=.5*this.width;return}if(this.needsRefresh(selected,hover)){this._resizeImage()}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.switchImages(selected);this.resize();this.left=x-this.width/2;this.top=y-this.height/2;this._drawRawCircle(ctx,x,y,values);ctx.save();ctx.clip();this._drawImageAtPosition(ctx,values);ctx.restore();this._drawImageLabel(ctx,x,y,selected,hover);this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.width*.5}}]);return CircularImage}(_CircleImageBase3[\"default\"]);exports[\"default\"]=CircularImage},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Database=function(_NodeBase){(0,_inherits3[\"default\"])(Database,_NodeBase);function Database(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Database);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Database.__proto__||(0,_getPrototypeOf2[\"default\"])(Database)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Database,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);var size=dimensions.width+this.margin.right+this.margin.left;this.width=size;this.height=size;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx.database(x-this.width/2,y-this.height/2,this.width,this.height);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Database}(_NodeBase3[\"default\"]);exports[\"default\"]=Database},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Diamond=function(_ShapeBase){(0,_inherits3[\"default\"])(Diamond,_ShapeBase);function Diamond(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Diamond);return(0,_possibleConstructorReturn3[\"default\"])(this,(Diamond.__proto__||(0,_getPrototypeOf2[\"default\"])(Diamond)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Diamond,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"diamond\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Diamond}(_ShapeBase3[\"default\"]);exports[\"default\"]=Diamond},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Dot=function(_ShapeBase){(0,_inherits3[\"default\"])(Dot,_ShapeBase);function Dot(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Dot);return(0,_possibleConstructorReturn3[\"default\"])(this,(Dot.__proto__||(0,_getPrototypeOf2[\"default\"])(Dot)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Dot,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"circle\",2,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.options.size}}]);return Dot}(_ShapeBase3[\"default\"]);exports[\"default\"]=Dot},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Ellipse=function(_NodeBase){(0,_inherits3[\"default\"])(Ellipse,_NodeBase);function Ellipse(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Ellipse);return(0,_possibleConstructorReturn3[\"default\"])(this,(Ellipse.__proto__||(0,_getPrototypeOf2[\"default\"])(Ellipse)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Ellipse,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);this.height=dimensions.height*2;this.width=dimensions.width+dimensions.height;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width*.5;this.top=y-this.height*.5;this.initContextForDraw(ctx,values);ctx.ellipse_vis(this.left,this.top,this.width,this.height);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,x,y,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);var a=this.width*.5;var b=this.height*.5;var w=Math.sin(angle)*a;var h=Math.cos(angle)*b;return a*b/Math.sqrt(w*w+h*h)}}]);return Ellipse}(_NodeBase3[\"default\"]);exports[\"default\"]=Ellipse},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Icon=function(_NodeBase){(0,_inherits3[\"default\"])(Icon,_NodeBase);function Icon(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Icon);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Icon.__proto__||(0,_getPrototypeOf2[\"default\"])(Icon)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Icon,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){this.iconSize={width:Number(this.options.icon.size),height:Number(this.options.icon.size)};this.width=this.iconSize.width+this.margin.right+this.margin.left;this.height=this.iconSize.height+this.margin.top+this.margin.bottom;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.options.icon.size=this.options.icon.size||50;this.left=x-this.width/2;this.top=y-this.height/2;this._icon(ctx,x,y,selected,hover,values);if(this.options.label!==undefined){var iconTextSpacing=5;this.labelModule.draw(ctx,this.left+this.iconSize.width/2+this.margin.left,y+this.height/2+iconTextSpacing,selected)}this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.icon.size*.5;this.boundingBox.left=x-this.options.icon.size*.5;this.boundingBox.right=x+this.options.icon.size*.5;this.boundingBox.bottom=y+this.options.icon.size*.5;if(this.options.label!==undefined&&this.labelModule.size.width>0){var iconTextSpacing=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+iconTextSpacing)}}},{key:\"_icon\",value:function _icon(ctx,x,y,selected,hover,values){var iconSize=Number(this.options.icon.size);if(this.options.icon.code!==undefined){ctx.font=(selected?\"bold \":\"\")+iconSize+\"px \"+this.options.icon.face;ctx.fillStyle=this.options.icon.color||\"black\";ctx.textAlign=\"center\";ctx.textBaseline=\"middle\";this.enableShadow(ctx,values);ctx.fillText(this.options.icon.code,x,y);this.disableShadow(ctx,values)}else{console.error(\"When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.\")}}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Icon}(_NodeBase3[\"default\"]);exports[\"default\"]=Icon},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Image=function(_CircleImageBase){(0,_inherits3[\"default\"])(Image,_CircleImageBase);function Image(options,body,labelModule,imageObj,imageObjAlt){(0,_classCallCheck3[\"default\"])(this,Image);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Image.__proto__||(0,_getPrototypeOf2[\"default\"])(Image)).call(this,options,body,labelModule));_this.setImages(imageObj,imageObjAlt);return _this}(0,_createClass3[\"default\"])(Image,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var imageAbsent=this.imageObj.src===undefined||this.imageObj.width===undefined||this.imageObj.height===undefined;if(imageAbsent){var side=this.options.size*2;this.width=side;this.height=side;return}if(this.needsRefresh(selected,hover)){this._resizeImage()}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.switchImages(selected);this.resize();this.left=x-this.width/2;this.top=y-this.height/2;if(this.options.shapeProperties.useBorderWithImage===true){var neutralborderWidth=this.options.borderWidth;var selectionLineWidth=this.options.borderWidthSelected||2*this.options.borderWidth;var borderWidth=(selected?selectionLineWidth:neutralborderWidth)/this.body.view.scale;ctx.lineWidth=Math.min(this.width,borderWidth);ctx.beginPath();ctx.strokeStyle=selected?this.options.color.highlight.border:hover?this.options.color.hover.border:this.options.color.border;ctx.fillStyle=selected?this.options.color.highlight.background:hover?this.options.color.hover.background:this.options.color.background;ctx.rect(this.left-.5*ctx.lineWidth,this.top-.5*ctx.lineWidth,this.width+ctx.lineWidth,this.height+ctx.lineWidth);ctx.fill();this.performStroke(ctx,values);ctx.closePath()}this._drawImageAtPosition(ctx,values);this._drawImageLabel(ctx,x,y,selected,hover);this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.resize();this._updateBoundingBox(x,y);if(this.options.label!==undefined&&this.labelModule.size.width>0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Image}(_CircleImageBase3[\"default\"]);exports[\"default\"]=Image},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Square=function(_ShapeBase){(0,_inherits3[\"default\"])(Square,_ShapeBase);function Square(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Square);return(0,_possibleConstructorReturn3[\"default\"])(this,(Square.__proto__||(0,_getPrototypeOf2[\"default\"])(Square)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Square,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"square\",2,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Square}(_ShapeBase3[\"default\"]);exports[\"default\"]=Square},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hexagon=function(_ShapeBase){(0,_inherits3[\"default\"])(Hexagon,_ShapeBase);function Hexagon(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Hexagon);return(0,_possibleConstructorReturn3[\"default\"])(this,(Hexagon.__proto__||(0,_getPrototypeOf2[\"default\"])(Hexagon)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Hexagon,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"hexagon\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Hexagon}(_ShapeBase3[\"default\"]);exports[\"default\"]=Hexagon},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Star=function(_ShapeBase){(0,_inherits3[\"default\"])(Star,_ShapeBase);function Star(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Star);return(0,_possibleConstructorReturn3[\"default\"])(this,(Star.__proto__||(0,_getPrototypeOf2[\"default\"])(Star)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Star,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"star\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Star}(_ShapeBase3[\"default\"]);exports[\"default\"]=Star},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Text=function(_NodeBase){(0,_inherits3[\"default\"])(Text,_NodeBase);function Text(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Text);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Text.__proto__||(0,_getPrototypeOf2[\"default\"])(Text)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Text,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){this.textSize=this.labelModule.getTextSize(ctx,selected,hover);this.width=this.textSize.width+this.margin.right+this.margin.left;this.height=this.textSize.height+this.margin.top+this.margin.bottom;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.enableShadow(ctx,values);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover);this.disableShadow(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Text}(_NodeBase3[\"default\"]);exports[\"default\"]=Text},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Triangle=function(_ShapeBase){(0,_inherits3[\"default\"])(Triangle,_ShapeBase);function Triangle(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Triangle);return(0,_possibleConstructorReturn3[\"default\"])(this,(Triangle.__proto__||(0,_getPrototypeOf2[\"default\"])(Triangle)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Triangle,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"triangle\",3,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Triangle}(_ShapeBase3[\"default\"]);exports[\"default\"]=Triangle},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var TriangleDown=function(_ShapeBase){(0,_inherits3[\"default\"])(TriangleDown,_ShapeBase);function TriangleDown(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,TriangleDown);return(0,_possibleConstructorReturn3[\"default\"])(this,(TriangleDown.__proto__||(0,_getPrototypeOf2[\"default\"])(TriangleDown)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(TriangleDown,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"triangleDown\",3,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return TriangleDown}(_ShapeBase3[\"default\"]);exports[\"default\"]=TriangleDown},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Edge=__webpack_require__(74)[\"default\"];var EdgesHandler=function(){function EdgesHandler(body,images,groups){var _this=this;(0,_classCallCheck3[\"default\"])(this,EdgesHandler);this.body=body;this.images=images;this.groups=groups;this.body.functions.createEdge=this.create.bind(this);this.edgesListeners={add:function add(event,params){_this.add(params.items)},update:function update(event,params){_this.update(params.items)},remove:function remove(event,params){_this.remove(params.items)}};this.options={};this.defaultOptions={arrows:{to:{enabled:false,\nscaleFactor:1,type:\"arrow\"},middle:{enabled:false,scaleFactor:1,type:\"arrow\"},from:{enabled:false,scaleFactor:1,type:\"arrow\"}},arrowStrikethrough:true,color:{color:\"#848484\",highlight:\"#848484\",hover:\"#848484\",inherit:\"from\",opacity:1},dashes:false,font:{color:\"#343434\",size:14,face:\"arial\",background:\"none\",strokeWidth:2,strokeColor:\"#ffffff\",align:\"horizontal\",multi:false,vadjust:0,bold:{mod:\"bold\"},boldital:{mod:\"bold italic\"},ital:{mod:\"italic\"},mono:{mod:\"\",size:15,face:\"courier new\",vadjust:2}},hidden:false,hoverWidth:1.5,label:undefined,labelHighlightBold:true,length:undefined,physics:true,scaling:{min:1,max:15,label:{enabled:true,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function customScalingFunction(min,max,total,value){if(max===min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}}},selectionWidth:1.5,selfReferenceSize:20,shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:10,x:5,y:5},smooth:{enabled:true,type:\"dynamic\",forceDirection:\"none\",roundness:.5},title:undefined,width:1,value:undefined};util.deepExtend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(EdgesHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"_forceDisableDynamicCurves\",function(type){var emit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(type===\"dynamic\"){type=\"continuous\"}var dataChanged=false;for(var edgeId in _this2.body.edges){if(_this2.body.edges.hasOwnProperty(edgeId)){var edge=_this2.body.edges[edgeId];var edgeData=_this2.body.data.edges._data[edgeId];if(edgeData!==undefined){var smoothOptions=edgeData.smooth;if(smoothOptions!==undefined){if(smoothOptions.enabled===true&&smoothOptions.type===\"dynamic\"){if(type===undefined){edge.setOptions({smooth:false})}else{edge.setOptions({smooth:{type:type}})}dataChanged=true}}}}}if(emit===true&&dataChanged===true){_this2.body.emitter.emit(\"_dataChanged\")}});this.body.emitter.on(\"_dataUpdated\",function(){_this2.reconnectEdges()});this.body.emitter.on(\"refreshEdges\",this.refresh.bind(this));this.body.emitter.on(\"refresh\",this.refresh.bind(this));this.body.emitter.on(\"destroy\",function(){util.forEach(_this2.edgesListeners,function(callback,event){if(_this2.body.data.edges)_this2.body.data.edges.off(event,callback)});delete _this2.body.functions.createEdge;delete _this2.edgesListeners.add;delete _this2.edgesListeners.update;delete _this2.edgesListeners.remove;delete _this2.edgesListeners})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){Edge.parseOptions(this.options,options,true,this.defaultOptions,true);var dataChanged=false;if(options.smooth!==undefined){for(var edgeId in this.body.edges){if(this.body.edges.hasOwnProperty(edgeId)){dataChanged=this.body.edges[edgeId].updateEdgeType()||dataChanged}}}if(options.font!==undefined){for(var _edgeId in this.body.edges){if(this.body.edges.hasOwnProperty(_edgeId)){this.body.edges[_edgeId].updateLabelModule()}}}if(options.hidden!==undefined||options.physics!==undefined||dataChanged===true){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"setData\",value:function setData(edges){var _this3=this;var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var oldEdgesData=this.body.data.edges;if(edges instanceof DataSet||edges instanceof DataView){this.body.data.edges=edges}else if(Array.isArray(edges)){this.body.data.edges=new DataSet;this.body.data.edges.add(edges)}else if(!edges){this.body.data.edges=new DataSet}else{throw new TypeError(\"Array or DataSet expected\")}if(oldEdgesData){util.forEach(this.edgesListeners,function(callback,event){oldEdgesData.off(event,callback)})}this.body.edges={};if(this.body.data.edges){util.forEach(this.edgesListeners,function(callback,event){_this3.body.data.edges.on(event,callback)});var ids=this.body.data.edges.getIds();this.add(ids,true)}this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"add\",value:function add(ids){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var edges=this.body.edges;var edgesData=this.body.data.edges;for(var i=0;i<ids.length;i++){var id=ids[i];var oldEdge=edges[id];if(oldEdge){oldEdge.disconnect()}var data=edgesData.get(id,{showInternalIds:true});edges[id]=this.create(data)}this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"update\",value:function update(ids){var edges=this.body.edges;var edgesData=this.body.data.edges;var dataChanged=false;for(var i=0;i<ids.length;i++){var id=ids[i];var data=edgesData.get(id);var edge=edges[id];if(edge!==undefined){edge.disconnect();dataChanged=edge.setOptions(data)||dataChanged;edge.connect()}else{this.body.edges[id]=this.create(data);dataChanged=true}}if(dataChanged===true){this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");this.body.emitter.emit(\"_dataChanged\")}else{this.body.emitter.emit(\"_dataUpdated\")}}},{key:\"remove\",value:function remove(ids){var emit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(ids.length===0)return;var edges=this.body.edges;util.forEach(ids,function(id){var edge=edges[id];if(edge!==undefined){edge.remove()}});if(emit){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"refresh\",value:function refresh(){var _this4=this;util.forEach(this.body.edges,function(edge,edgeId){var data=_this4.body.data.edges._data[edgeId];if(data!==undefined){edge.setOptions(data)}})}},{key:\"create\",value:function create(properties){return new Edge(properties,this.body,this.options,this.defaultOptions)}},{key:\"reconnectEdges\",value:function reconnectEdges(){var id;var nodes=this.body.nodes;var edges=this.body.edges;for(id in nodes){if(nodes.hasOwnProperty(id)){nodes[id].edges=[]}}for(id in edges){if(edges.hasOwnProperty(id)){var edge=edges[id];edge.from=null;edge.to=null;edge.connect()}}}},{key:\"getConnectedNodes\",value:function getConnectedNodes(edgeId){var nodeList=[];if(this.body.edges[edgeId]!==undefined){var edge=this.body.edges[edgeId];if(edge.fromId!==undefined){nodeList.push(edge.fromId)}if(edge.toId!==undefined){nodeList.push(edge.toId)}}return nodeList}},{key:\"_updateState\",value:function _updateState(){this._addMissingEdges();this._removeInvalidEdges()}},{key:\"_removeInvalidEdges\",value:function _removeInvalidEdges(){var _this5=this;var edgesToDelete=[];util.forEach(this.body.edges,function(edge,id){var toNode=_this5.body.nodes[edge.toId];var fromNode=_this5.body.nodes[edge.fromId];if(toNode!==undefined&&toNode.isCluster===true||fromNode!==undefined&&fromNode.isCluster===true){return}if(toNode===undefined||fromNode===undefined){edgesToDelete.push(id)}});this.remove(edgesToDelete,false)}},{key:\"_addMissingEdges\",value:function _addMissingEdges(){var edges=this.body.edges;var edgesData=this.body.data.edges;var addIds=[];edgesData.forEach(function(edgeData,edgeId){var edge=edges[edgeId];if(edge===undefined){addIds.push(edgeId)}});this.add(addIds,true)}}]);return EdgesHandler}();exports[\"default\"]=EdgesHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CubicBezierEdgeBase2=__webpack_require__(216);var _CubicBezierEdgeBase3=_interopRequireDefault(_CubicBezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CubicBezierEdge=function(_CubicBezierEdgeBase){(0,_inherits3[\"default\"])(CubicBezierEdge,_CubicBezierEdgeBase);function CubicBezierEdge(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CubicBezierEdge);return(0,_possibleConstructorReturn3[\"default\"])(this,(CubicBezierEdge.__proto__||(0,_getPrototypeOf2[\"default\"])(CubicBezierEdge)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(CubicBezierEdge,[{key:\"_line\",value:function _line(ctx,values,viaNodes){var via1=viaNodes[0];var via2=viaNodes[1];this._bezierCurve(ctx,values,via1,via2)}},{key:\"_getViaCoordinates\",value:function _getViaCoordinates(){var dx=this.from.x-this.to.x;var dy=this.from.y-this.to.y;var x1=void 0,y1=void 0,x2=void 0,y2=void 0;var roundness=this.options.smooth.roundness;if((Math.abs(dx)>Math.abs(dy)||this.options.smooth.forceDirection===true||this.options.smooth.forceDirection===\"horizontal\")&&this.options.smooth.forceDirection!==\"vertical\"){y1=this.from.y;y2=this.to.y;x1=this.from.x-roundness*dx;x2=this.to.x+roundness*dx}else{y1=this.from.y-roundness*dy;y2=this.to.y+roundness*dy;x1=this.from.x;x2=this.to.x}return[{x:x1,y:y1},{x:x2,y:y2}]}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){return this._findBorderPositionBezier(nearNode,ctx)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){var _ref=arguments.length>6&&arguments[6]!==undefined?arguments[6]:this._getViaCoordinates(),_ref2=(0,_slicedToArray3[\"default\"])(_ref,2),via1=_ref2[0],via2=_ref2[1];return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via1,via2)}},{key:\"getPoint\",value:function getPoint(percentage){var _ref3=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this._getViaCoordinates(),_ref4=(0,_slicedToArray3[\"default\"])(_ref3,2),via1=_ref4[0],via2=_ref4[1];var t=percentage;var vec=[];vec[0]=Math.pow(1-t,3);vec[1]=3*t*Math.pow(1-t,2);vec[2]=3*Math.pow(t,2)*(1-t);vec[3]=Math.pow(t,3);var x=vec[0]*this.fromPoint.x+vec[1]*via1.x+vec[2]*via2.x+vec[3]*this.toPoint.x;var y=vec[0]*this.fromPoint.y+vec[1]*via1.y+vec[2]*via2.y+vec[3]*this.toPoint.y;return{x:x,y:y}}}]);return CubicBezierEdge}(_CubicBezierEdgeBase3[\"default\"]);exports[\"default\"]=CubicBezierEdge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CubicBezierEdgeBase=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(CubicBezierEdgeBase,_BezierEdgeBase);function CubicBezierEdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CubicBezierEdgeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(CubicBezierEdgeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(CubicBezierEdgeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(CubicBezierEdgeBase,[{key:\"_getDistanceToBezierEdge\",value:function _getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via1,via2){var minDistance=1e9;var distance=void 0;var i=void 0,t=void 0,x=void 0,y=void 0;var lastX=x1;var lastY=y1;var vec=[0,0,0,0];for(i=1;i<10;i++){t=.1*i;vec[0]=Math.pow(1-t,3);vec[1]=3*t*Math.pow(1-t,2);vec[2]=3*Math.pow(t,2)*(1-t);vec[3]=Math.pow(t,3);x=vec[0]*x1+vec[1]*via1.x+vec[2]*via2.x+vec[3]*x2;y=vec[0]*y1+vec[1]*via1.y+vec[2]*via2.y+vec[3]*y2;if(i>0){distance=this._getDistanceToLine(lastX,lastY,x,y,x3,y3);minDistance=distance<minDistance?distance:minDistance}lastX=x;lastY=y}return minDistance}}]);return CubicBezierEdgeBase}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=CubicBezierEdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeDynamic=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(BezierEdgeDynamic,_BezierEdgeBase);function BezierEdgeDynamic(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeDynamic);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeDynamic.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeDynamic)).call(this,options,body,labelModule));_this._boundFunction=function(){_this.positionBezierNode()};_this.body.emitter.on(\"_repositionBezierNodes\",_this._boundFunction);return _this}(0,_createClass3[\"default\"])(BezierEdgeDynamic,[{key:\"setOptions\",value:function setOptions(options){var physicsChange=false;if(this.options.physics!==options.physics){physicsChange=true}this.options=options;this.id=this.options.id;this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];this.setupSupportNode();this.connect();if(physicsChange===true){this.via.setOptions({physics:this.options.physics});this.positionBezierNode()}}},{key:\"connect\",value:function connect(){this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];if(this.from===undefined||this.to===undefined||this.options.physics===false){this.via.setOptions({physics:false})}else{if(this.from.id===this.to.id){this.via.setOptions({physics:false})}else{this.via.setOptions({physics:true})}}}},{key:\"cleanup\",value:function cleanup(){this.body.emitter.off(\"_repositionBezierNodes\",this._boundFunction);if(this.via!==undefined){delete this.body.nodes[this.via.id];this.via=undefined;return true}return false}},{key:\"setupSupportNode\",value:function setupSupportNode(){if(this.via===undefined){var nodeId=\"edgeId:\"+this.id;var node=this.body.functions.createNode({id:nodeId,shape:\"circle\",physics:true,hidden:true});this.body.nodes[nodeId]=node;this.via=node;this.via.parentEdgeId=this.id;this.positionBezierNode()}}},{key:\"positionBezierNode\",value:function positionBezierNode(){if(this.via!==undefined&&this.from!==undefined&&this.to!==undefined){this.via.x=.5*(this.from.x+this.to.x);this.via.y=.5*(this.from.y+this.to.y)}else if(this.via!==undefined){this.via.x=0;this.via.y=0}}},{key:\"_line\",value:function _line(ctx,values,viaNode){this._bezierCurve(ctx,values,viaNode)}},{key:\"getViaNode\",value:function getViaNode(){return this.via}},{key:\"getPoint\",value:function getPoint(percentage){var viaNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.via;var t=percentage;var x=void 0,y=void 0;if(this.from===this.to){var _getCircleData=this._getCircleData(this.from),_getCircleData2=(0,_slicedToArray3[\"default\"])(_getCircleData,3),cx=_getCircleData2[0],cy=_getCircleData2[1],cr=_getCircleData2[2];var a=2*Math.PI*(1-t);x=cx+cr*Math.sin(a);y=cy+cr-cr*(1-Math.cos(a))}else{x=Math.pow(1-t,2)*this.fromPoint.x+2*t*(1-t)*viaNode.x+Math.pow(t,2)*this.toPoint.x;y=Math.pow(1-t,2)*this.fromPoint.y+2*t*(1-t)*viaNode.y+Math.pow(t,2)*this.toPoint.y}return{x:x,y:y}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){return this._findBorderPositionBezier(nearNode,ctx,this.via)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,this.via)}}]);return BezierEdgeDynamic}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeDynamic},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeStatic=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(BezierEdgeStatic,_BezierEdgeBase);function BezierEdgeStatic(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeStatic);return(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeStatic.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeStatic)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(BezierEdgeStatic,[{key:\"_line\",value:function _line(ctx,values,viaNode){this._bezierCurve(ctx,values,viaNode)}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}},{key:\"_getViaCoordinates\",value:function _getViaCoordinates(){var xVia=undefined;var yVia=undefined;var factor=this.options.smooth.roundness;var type=this.options.smooth.type;var dx=Math.abs(this.from.x-this.to.x);var dy=Math.abs(this.from.y-this.to.y);if(type===\"discrete\"||type===\"diagonalCross\"){var stepX=void 0;var stepY=void 0;if(dx<=dy){stepX=stepY=factor*dy}else{stepX=stepY=factor*dx}if(this.from.x>this.to.x)stepX=-stepX;if(this.from.y>=this.to.y)stepY=-stepY;xVia=this.from.x+stepX;yVia=this.from.y+stepY;if(type===\"discrete\"){if(dx<=dy){xVia=dx<factor*dy?this.from.x:xVia}else{yVia=dy<factor*dx?this.from.y:yVia}}}else if(type===\"straightCross\"){var _stepX=(1-factor)*dx;var _stepY=(1-factor)*dy;if(dx<=dy){_stepX=0;if(this.from.y<this.to.y)_stepY=-_stepY}else{if(this.from.x<this.to.x)_stepX=-_stepX;_stepY=0}xVia=this.to.x+_stepX;yVia=this.to.y+_stepY}else if(type===\"horizontal\"){var _stepX2=(1-factor)*dx;if(this.from.x<this.to.x)_stepX2=-_stepX2;xVia=this.to.x+_stepX2;yVia=this.from.y}else if(type===\"vertical\"){var _stepY2=(1-factor)*dy;if(this.from.y<this.to.y)_stepY2=-_stepY2;xVia=this.from.x;yVia=this.to.y+_stepY2}else if(type===\"curvedCW\"){dx=this.to.x-this.from.x;dy=this.from.y-this.to.y;var radius=Math.sqrt(dx*dx+dy*dy);var pi=Math.PI;var originalAngle=Math.atan2(dy,dx);var myAngle=(originalAngle+(factor*.5+.5)*pi)%(2*pi);xVia=this.from.x+(factor*.5+.5)*radius*Math.sin(myAngle);yVia=this.from.y+(factor*.5+.5)*radius*Math.cos(myAngle)}else if(type===\"curvedCCW\"){dx=this.to.x-this.from.x;dy=this.from.y-this.to.y;var _radius=Math.sqrt(dx*dx+dy*dy);var _pi=Math.PI;var _originalAngle=Math.atan2(dy,dx);var _myAngle=(_originalAngle+(-factor*.5+.5)*_pi)%(2*_pi);xVia=this.from.x+(factor*.5+.5)*_radius*Math.sin(_myAngle);yVia=this.from.y+(factor*.5+.5)*_radius*Math.cos(_myAngle)}else{var _stepX3=void 0;var _stepY3=void 0;if(dx<=dy){_stepX3=_stepY3=factor*dy}else{_stepX3=_stepY3=factor*dx}if(this.from.x>this.to.x)_stepX3=-_stepX3;if(this.from.y>=this.to.y)_stepY3=-_stepY3;xVia=this.from.x+_stepX3;yVia=this.from.y+_stepY3;if(dx<=dy){if(this.from.x<=this.to.x){xVia=this.to.x<xVia?this.to.x:xVia}else{xVia=this.to.x>xVia?this.to.x:xVia}}else{if(this.from.y>=this.to.y){yVia=this.to.y>yVia?this.to.y:yVia}else{yVia=this.to.y<yVia?this.to.y:yVia}}}return{x:xVia,y:yVia}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){var options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};return this._findBorderPositionBezier(nearNode,ctx,options.via)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){var viaNode=arguments.length>6&&arguments[6]!==undefined?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,viaNode)}},{key:\"getPoint\",value:function getPoint(percentage){var viaNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this._getViaCoordinates();var t=percentage;var x=Math.pow(1-t,2)*this.fromPoint.x+2*t*(1-t)*viaNode.x+Math.pow(t,2)*this.toPoint.x;var y=Math.pow(1-t,2)*this.fromPoint.y+2*t*(1-t)*viaNode.y+Math.pow(t,2)*this.toPoint.y;return{x:x,y:y}}}]);return BezierEdgeStatic}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeStatic},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _EdgeBase2=__webpack_require__(118);var _EdgeBase3=_interopRequireDefault(_EdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var StraightEdge=function(_EdgeBase){(0,_inherits3[\"default\"])(StraightEdge,_EdgeBase);function StraightEdge(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,StraightEdge);return(0,_possibleConstructorReturn3[\"default\"])(this,(StraightEdge.__proto__||(0,_getPrototypeOf2[\"default\"])(StraightEdge)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(StraightEdge,[{key:\"_line\",value:function _line(ctx,values){ctx.beginPath();ctx.moveTo(this.fromPoint.x,this.fromPoint.y);ctx.lineTo(this.toPoint.x,this.toPoint.y);this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getViaNode\",value:function getViaNode(){return undefined}},{key:\"getPoint\",value:function getPoint(percentage){return{x:(1-percentage)*this.fromPoint.x+percentage*this.toPoint.x,y:(1-percentage)*this.fromPoint.y+percentage*this.toPoint.y}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){var node1=this.to;var node2=this.from;if(nearNode.id===this.from.id){node1=this.from;node2=this.to}var angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);var dx=node1.x-node2.x;var dy=node1.y-node2.y;var edgeSegmentLength=Math.sqrt(dx*dx+dy*dy);var toBorderDist=nearNode.distanceToBorder(ctx,angle);var toBorderPoint=(edgeSegmentLength-toBorderDist)/edgeSegmentLength;var borderPos={};borderPos.x=(1-toBorderPoint)*node2.x+toBorderPoint*node1.x;borderPos.y=(1-toBorderPoint)*node2.y+toBorderPoint*node1.y;return borderPos}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){return this._getDistanceToLine(x1,y1,x2,y2,x3,y3)}}]);return StraightEdge}(_EdgeBase3[\"default\"]);exports[\"default\"]=StraightEdge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BarnesHutSolver=__webpack_require__(120)[\"default\"];var Repulsion=__webpack_require__(221)[\"default\"];var HierarchicalRepulsion=__webpack_require__(222)[\"default\"];var SpringSolver=__webpack_require__(223)[\"default\"];var HierarchicalSpringSolver=__webpack_require__(224)[\"default\"];var CentralGravitySolver=__webpack_require__(121)[\"default\"];var ForceAtlas2BasedRepulsionSolver=__webpack_require__(225)[\"default\"];var ForceAtlas2BasedCentralGravitySolver=__webpack_require__(226)[\"default\"];var util=__webpack_require__(2);var EndPoints=__webpack_require__(119)[\"default\"];var PhysicsEngine=function(){function PhysicsEngine(body){(0,_classCallCheck3[\"default\"])(this,PhysicsEngine);this.body=body;this.physicsBody={physicsNodeIndices:[],physicsEdgeIndices:[],forces:{},velocities:{}};this.physicsEnabled=true;this.simulationInterval=1e3/60;this.requiresTimeout=true;this.previousStates={};this.referenceState={};this.freezeCache={};this.renderTimer=undefined;this.adaptiveTimestep=false;this.adaptiveTimestepEnabled=false;this.adaptiveCounter=0;this.adaptiveInterval=3;this.stabilized=false;this.startedStabilization=false;this.stabilizationIterations=0;this.ready=false;this.options={};this.defaultOptions={enabled:true,barnesHut:{theta:.5,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09,avoidOverlap:0},forceAtlas2Based:{theta:.5,gravitationalConstant:-50,centralGravity:.01,springConstant:.08,springLength:100,damping:.4,avoidOverlap:0},repulsion:{centralGravity:.2,springLength:200,springConstant:.05,nodeDistance:100,damping:.09,avoidOverlap:0},hierarchicalRepulsion:{centralGravity:0,springLength:100,springConstant:.01,nodeDistance:120,damping:.09},maxVelocity:50,minVelocity:.75,solver:\"barnesHut\",stabilization:{enabled:true,iterations:1e3,updateInterval:50,onlyDynamicEdges:false,fit:true},timestep:.5,adaptiveTimestep:true};util.extend(this.options,this.defaultOptions);this.timestep=.5;this.layoutFailed=false;this.bindEventListeners()}(0,_createClass3[\"default\"])(PhysicsEngine,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"initPhysics\",function(){_this.initPhysics()});this.body.emitter.on(\"_layoutFailed\",function(){_this.layoutFailed=true});this.body.emitter.on(\"resetPhysics\",function(){_this.stopSimulation();_this.ready=false});this.body.emitter.on(\"disablePhysics\",function(){_this.physicsEnabled=false;_this.stopSimulation()});this.body.emitter.on(\"restorePhysics\",function(){_this.setOptions(_this.options);if(_this.ready===true){_this.startSimulation()}});this.body.emitter.on(\"startSimulation\",function(){if(_this.ready===true){_this.startSimulation()}});this.body.emitter.on(\"stopSimulation\",function(){_this.stopSimulation()});this.body.emitter.on(\"destroy\",function(){_this.stopSimulation(false);_this.body.emitter.off()});this.body.emitter.on(\"_dataChanged\",function(){_this.updatePhysicsData()})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){if(options===false){this.options.enabled=false;this.physicsEnabled=false;this.stopSimulation()}else if(options===true){this.options.enabled=true;this.physicsEnabled=true;this.startSimulation()}else{this.physicsEnabled=true;util.selectiveNotDeepExtend([\"stabilization\"],this.options,options);util.mergeOptions(this.options,options,\"stabilization\");if(options.enabled===undefined){this.options.enabled=true}if(this.options.enabled===false){this.physicsEnabled=false;this.stopSimulation()}this.timestep=this.options.timestep}}this.init()}},{key:\"init\",value:function init(){var options;if(this.options.solver===\"forceAtlas2Based\"){options=this.options.forceAtlas2Based;this.nodesSolver=new ForceAtlas2BasedRepulsionSolver(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new ForceAtlas2BasedCentralGravitySolver(this.body,this.physicsBody,options)}else if(this.options.solver===\"repulsion\"){options=this.options.repulsion;this.nodesSolver=new Repulsion(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}else if(this.options.solver===\"hierarchicalRepulsion\"){options=this.options.hierarchicalRepulsion;this.nodesSolver=new HierarchicalRepulsion(this.body,this.physicsBody,options);this.edgesSolver=new HierarchicalSpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}else{options=this.options.barnesHut;this.nodesSolver=new BarnesHutSolver(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}this.modelOptions=options}},{key:\"initPhysics\",value:function initPhysics(){if(this.physicsEnabled===true&&this.options.enabled===true){if(this.options.stabilization.enabled===true){this.stabilize()}else{this.stabilized=false;this.ready=true;this.body.emitter.emit(\"fit\",{},this.layoutFailed);this.startSimulation()}}else{this.ready=true;this.body.emitter.emit(\"fit\")}}},{key:\"startSimulation\",value:function startSimulation(){if(this.physicsEnabled===true&&this.options.enabled===true){this.stabilized=false;this.adaptiveTimestep=false;this.body.emitter.emit(\"_resizeNodes\");if(this.viewFunction===undefined){this.viewFunction=this.simulationStep.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction);this.body.emitter.emit(\"_startRendering\")}}else{this.body.emitter.emit(\"_redraw\")}}},{key:\"stopSimulation\",value:function stopSimulation(){var emit=arguments.length>0&&arguments[0]!==undefined?arguments[0]:true;this.stabilized=true;if(emit===true){this._emitStabilized()}if(this.viewFunction!==undefined){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.viewFunction=undefined;if(emit===true){this.body.emitter.emit(\"_stopRendering\")}}}},{key:\"simulationStep\",value:function simulationStep(){var startTime=Date.now();this.physicsTick();var physicsTime=Date.now()-startTime;if((physicsTime<.4*this.simulationInterval||this.runDoubleSpeed===true)&&this.stabilized===false){this.physicsTick();this.runDoubleSpeed=true}if(this.stabilized===true){this.stopSimulation()}}},{key:\"_emitStabilized\",value:function _emitStabilized(){var _this2=this;var amountOfIterations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.stabilizationIterations;if(this.stabilizationIterations>1||this.startedStabilization===true){setTimeout(function(){_this2.body.emitter.emit(\"stabilized\",{iterations:amountOfIterations});_this2.startedStabilization=false;_this2.stabilizationIterations=0},0)}}},{key:\"physicsStep\",value:function physicsStep(){this.gravitySolver.solve();this.nodesSolver.solve();this.edgesSolver.solve();this.moveNodes()}},{key:\"adjustTimeStep\",value:function adjustTimeStep(){var factor=1.2;if(this._evaluateStepQuality()===true){this.timestep=factor*this.timestep}else{if(this.timestep/factor<this.options.timestep){this.timestep=this.options.timestep}else{this.adaptiveCounter=-1;this.timestep=Math.max(this.options.timestep,this.timestep/factor)}}}},{key:\"physicsTick\",value:function physicsTick(){this._startStabilizing();if(this.stabilized===true)return;if(this.adaptiveTimestep===true&&this.adaptiveTimestepEnabled===true){var doAdaptive=this.adaptiveCounter%this.adaptiveInterval===0;if(doAdaptive){this.timestep=2*this.timestep;this.physicsStep();this.revert();this.timestep=.5*this.timestep;this.physicsStep();this.physicsStep();this.adjustTimeStep()}else{this.physicsStep()}this.adaptiveCounter+=1}else{this.timestep=this.options.timestep;this.physicsStep()}\nif(this.stabilized===true)this.revert();this.stabilizationIterations++}},{key:\"updatePhysicsData\",value:function updatePhysicsData(){this.physicsBody.forces={};this.physicsBody.physicsNodeIndices=[];this.physicsBody.physicsEdgeIndices=[];var nodes=this.body.nodes;var edges=this.body.edges;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(nodes[nodeId].options.physics===true){this.physicsBody.physicsNodeIndices.push(nodes[nodeId].id)}}}for(var edgeId in edges){if(edges.hasOwnProperty(edgeId)){if(edges[edgeId].options.physics===true){this.physicsBody.physicsEdgeIndices.push(edges[edgeId].id)}}}for(var i=0;i<this.physicsBody.physicsNodeIndices.length;i++){var _nodeId=this.physicsBody.physicsNodeIndices[i];this.physicsBody.forces[_nodeId]={x:0,y:0};if(this.physicsBody.velocities[_nodeId]===undefined){this.physicsBody.velocities[_nodeId]={x:0,y:0}}}for(var _nodeId2 in this.physicsBody.velocities){if(nodes[_nodeId2]===undefined){delete this.physicsBody.velocities[_nodeId2]}}}},{key:\"revert\",value:function revert(){var nodeIds=(0,_keys2[\"default\"])(this.previousStates);var nodes=this.body.nodes;var velocities=this.physicsBody.velocities;this.referenceState={};for(var i=0;i<nodeIds.length;i++){var nodeId=nodeIds[i];if(nodes[nodeId]!==undefined){if(nodes[nodeId].options.physics===true){this.referenceState[nodeId]={positions:{x:nodes[nodeId].x,y:nodes[nodeId].y}};velocities[nodeId].x=this.previousStates[nodeId].vx;velocities[nodeId].y=this.previousStates[nodeId].vy;nodes[nodeId].x=this.previousStates[nodeId].x;nodes[nodeId].y=this.previousStates[nodeId].y}}else{delete this.previousStates[nodeId]}}}},{key:\"_evaluateStepQuality\",value:function _evaluateStepQuality(){var dx=void 0,dy=void 0,dpos=void 0;var nodes=this.body.nodes;var reference=this.referenceState;var posThreshold=.3;for(var nodeId in this.referenceState){if(this.referenceState.hasOwnProperty(nodeId)&&nodes[nodeId]!==undefined){dx=nodes[nodeId].x-reference[nodeId].positions.x;dy=nodes[nodeId].y-reference[nodeId].positions.y;dpos=Math.sqrt(Math.pow(dx,2)+Math.pow(dy,2));if(dpos>posThreshold){return false}}}return true}},{key:\"moveNodes\",value:function moveNodes(){var nodeIndices=this.physicsBody.physicsNodeIndices;var maxNodeVelocity=0;var averageNodeVelocity=0;var velocityAdaptiveThreshold=5;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];var nodeVelocity=this._performStep(nodeId);maxNodeVelocity=Math.max(maxNodeVelocity,nodeVelocity);averageNodeVelocity+=nodeVelocity}this.adaptiveTimestepEnabled=averageNodeVelocity/nodeIndices.length<velocityAdaptiveThreshold;this.stabilized=maxNodeVelocity<this.options.minVelocity}},{key:\"calculateComponentVelocity\",value:function calculateComponentVelocity(v,f,m){var df=this.modelOptions.damping*v;var a=(f-df)/m;v+=a*this.timestep;var maxV=this.options.maxVelocity||1e9;if(Math.abs(v)>maxV){v=v>0?maxV:-maxV}return v}},{key:\"_performStep\",value:function _performStep(nodeId){var node=this.body.nodes[nodeId];var force=this.physicsBody.forces[nodeId];var velocity=this.physicsBody.velocities[nodeId];this.previousStates[nodeId]={x:node.x,y:node.y,vx:velocity.x,vy:velocity.y};if(node.options.fixed.x===false){velocity.x=this.calculateComponentVelocity(velocity.x,force.x,node.options.mass);node.x+=velocity.x*this.timestep}else{force.x=0;velocity.x=0}if(node.options.fixed.y===false){velocity.y=this.calculateComponentVelocity(velocity.y,force.y,node.options.mass);node.y+=velocity.y*this.timestep}else{force.y=0;velocity.y=0}var totalVelocity=Math.sqrt(Math.pow(velocity.x,2)+Math.pow(velocity.y,2));return totalVelocity}},{key:\"_freezeNodes\",value:function _freezeNodes(){var nodes=this.body.nodes;for(var id in nodes){if(nodes.hasOwnProperty(id)){if(nodes[id].x&&nodes[id].y){var fixed=nodes[id].options.fixed;this.freezeCache[id]={x:fixed.x,y:fixed.y};fixed.x=true;fixed.y=true}}}}},{key:\"_restoreFrozenNodes\",value:function _restoreFrozenNodes(){var nodes=this.body.nodes;for(var id in nodes){if(nodes.hasOwnProperty(id)){if(this.freezeCache[id]!==undefined){nodes[id].options.fixed.x=this.freezeCache[id].x;nodes[id].options.fixed.y=this.freezeCache[id].y}}}this.freezeCache={}}},{key:\"stabilize\",value:function stabilize(){var _this3=this;var iterations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.options.stabilization.iterations;if(typeof iterations!==\"number\"){iterations=this.options.stabilization.iterations;console.log(\"The stabilize method needs a numeric amount of iterations. Switching to default: \",iterations)}if(this.physicsBody.physicsNodeIndices.length===0){this.ready=true;return}this.adaptiveTimestep=true&&this.options.adaptiveTimestep;this.body.emitter.emit(\"_resizeNodes\");this.stopSimulation();this.stabilized=false;this.body.emitter.emit(\"_blockRedraw\");this.targetIterations=iterations;if(this.options.stabilization.onlyDynamicEdges===true){this._freezeNodes()}this.stabilizationIterations=0;setTimeout(function(){return _this3._stabilizationBatch()},0)}},{key:\"_startStabilizing\",value:function _startStabilizing(){if(this.startedStabilization===true)return false;this.body.emitter.emit(\"startStabilizing\");this.startedStabilization=true;return true}},{key:\"_stabilizationBatch\",value:function _stabilizationBatch(){var _this4=this;var running=function running(){return _this4.stabilized===false&&_this4.stabilizationIterations<_this4.targetIterations};var sendProgress=function sendProgress(){_this4.body.emitter.emit(\"stabilizationProgress\",{iterations:_this4.stabilizationIterations,total:_this4.targetIterations})};if(this._startStabilizing()){sendProgress()}var count=0;while(running()&&count<this.options.stabilization.updateInterval){this.physicsTick();count++}sendProgress();if(running()){setTimeout(this._stabilizationBatch.bind(this),0)}else{this._finalizeStabilization()}}},{key:\"_finalizeStabilization\",value:function _finalizeStabilization(){this.body.emitter.emit(\"_allowRedraw\");if(this.options.stabilization.fit===true){this.body.emitter.emit(\"fit\")}if(this.options.stabilization.onlyDynamicEdges===true){this._restoreFrozenNodes()}this.body.emitter.emit(\"stabilizationIterationsDone\");this.body.emitter.emit(\"_requestRedraw\");if(this.stabilized===true){this._emitStabilized()}else{this.startSimulation()}this.ready=true}},{key:\"_drawForces\",value:function _drawForces(ctx){for(var i=0;i<this.physicsBody.physicsNodeIndices.length;i++){var index=this.physicsBody.physicsNodeIndices[i];var node=this.body.nodes[index];var force=this.physicsBody.forces[index];var factor=20;var colorFactor=.03;var forceSize=Math.sqrt(Math.pow(force.x,2)+Math.pow(force.x,2));var size=Math.min(Math.max(5,forceSize),15);var arrowSize=3*size;var color=util.HSVToHex((180-Math.min(1,Math.max(0,colorFactor*forceSize))*180)/360,1,1);var point={x:node.x+factor*force.x,y:node.y+factor*force.y};ctx.lineWidth=size;ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(node.x,node.y);ctx.lineTo(point.x,point.y);ctx.stroke();var angle=Math.atan2(force.y,force.x);ctx.fillStyle=color;EndPoints.draw(ctx,{type:\"arrow\",point:point,angle:angle,length:arrowSize});ctx.fill()}}}]);return PhysicsEngine}();exports[\"default\"]=PhysicsEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var RepulsionSolver=function(){function RepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,RepulsionSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(RepulsionSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx,dy,distance,fx,fy,repulsingForce,node1,node2;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;var nodeDistance=this.options.nodeDistance;var a=-2/3/nodeDistance;var b=4/3;for(var i=0;i<nodeIndices.length-1;i++){node1=nodes[nodeIndices[i]];for(var j=i+1;j<nodeIndices.length;j++){node2=nodes[nodeIndices[j]];dx=node2.x-node1.x;dy=node2.y-node1.y;distance=Math.sqrt(dx*dx+dy*dy);if(distance===0){distance=.1*Math.random();dx=distance}if(distance<2*nodeDistance){if(distance<.5*nodeDistance){repulsingForce=1}else{repulsingForce=a*distance+b}repulsingForce=repulsingForce/distance;fx=dx*repulsingForce;fy=dy*repulsingForce;forces[node1.id].x-=fx;forces[node1.id].y-=fy;forces[node2.id].x+=fx;forces[node2.id].y+=fy}}}}}]);return RepulsionSolver}();exports[\"default\"]=RepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var HierarchicalRepulsionSolver=function(){function HierarchicalRepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,HierarchicalRepulsionSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(HierarchicalRepulsionSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx,dy,distance,fx,fy,repulsingForce,node1,node2,i,j;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;var nodeDistance=this.options.nodeDistance;for(i=0;i<nodeIndices.length-1;i++){node1=nodes[nodeIndices[i]];for(j=i+1;j<nodeIndices.length;j++){node2=nodes[nodeIndices[j]];if(node1.level===node2.level){dx=node2.x-node1.x;dy=node2.y-node1.y;distance=Math.sqrt(dx*dx+dy*dy);var steepness=.05;if(distance<nodeDistance){repulsingForce=-Math.pow(steepness*distance,2)+Math.pow(steepness*nodeDistance,2)}else{repulsingForce=0}if(distance===0){distance=.01}else{repulsingForce=repulsingForce/distance}fx=dx*repulsingForce;fy=dy*repulsingForce;forces[node1.id].x-=fx;forces[node1.id].y-=fy;forces[node2.id].x+=fx;forces[node2.id].y+=fy}}}}}]);return HierarchicalRepulsionSolver}();exports[\"default\"]=HierarchicalRepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var SpringSolver=function(){function SpringSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,SpringSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(SpringSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var edgeLength=void 0,edge=void 0;var edgeIndices=this.physicsBody.physicsEdgeIndices;var edges=this.body.edges;var node1=void 0,node2=void 0,node3=void 0;for(var i=0;i<edgeIndices.length;i++){edge=edges[edgeIndices[i]];if(edge.connected===true&&edge.toId!==edge.fromId){if(this.body.nodes[edge.toId]!==undefined&&this.body.nodes[edge.fromId]!==undefined){if(edge.edgeType.via!==undefined){edgeLength=edge.options.length===undefined?this.options.springLength:edge.options.length;node1=edge.to;node2=edge.edgeType.via;node3=edge.from;this._calculateSpringForce(node1,node2,.5*edgeLength);this._calculateSpringForce(node2,node3,.5*edgeLength)}else{edgeLength=edge.options.length===undefined?this.options.springLength*1.5:edge.options.length;this._calculateSpringForce(edge.from,edge.to,edgeLength)}}}}}},{key:\"_calculateSpringForce\",value:function _calculateSpringForce(node1,node2,edgeLength){var dx=node1.x-node2.x;var dy=node1.y-node2.y;var distance=Math.max(Math.sqrt(dx*dx+dy*dy),.01);var springForce=this.options.springConstant*(edgeLength-distance)/distance;var fx=dx*springForce;var fy=dy*springForce;if(this.physicsBody.forces[node1.id]!==undefined){this.physicsBody.forces[node1.id].x+=fx;this.physicsBody.forces[node1.id].y+=fy}if(this.physicsBody.forces[node2.id]!==undefined){this.physicsBody.forces[node2.id].x-=fx;this.physicsBody.forces[node2.id].y-=fy}}}]);return SpringSolver}();exports[\"default\"]=SpringSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var HierarchicalSpringSolver=function(){function HierarchicalSpringSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,HierarchicalSpringSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(HierarchicalSpringSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var edgeLength,edge;var dx,dy,fx,fy,springForce,distance;var edges=this.body.edges;var factor=.5;var edgeIndices=this.physicsBody.physicsEdgeIndices;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];forces[nodeId].springFx=0;forces[nodeId].springFy=0}for(var _i=0;_i<edgeIndices.length;_i++){edge=edges[edgeIndices[_i]];if(edge.connected===true){edgeLength=edge.options.length===undefined?this.options.springLength:edge.options.length;dx=edge.from.x-edge.to.x;dy=edge.from.y-edge.to.y;distance=Math.sqrt(dx*dx+dy*dy);distance=distance===0?.01:distance;springForce=this.options.springConstant*(edgeLength-distance)/distance;fx=dx*springForce;fy=dy*springForce;if(edge.to.level!=edge.from.level){if(forces[edge.toId]!==undefined){forces[edge.toId].springFx-=fx;forces[edge.toId].springFy-=fy}if(forces[edge.fromId]!==undefined){forces[edge.fromId].springFx+=fx;forces[edge.fromId].springFy+=fy}}else{if(forces[edge.toId]!==undefined){forces[edge.toId].x-=factor*fx;forces[edge.toId].y-=factor*fy}if(forces[edge.fromId]!==undefined){forces[edge.fromId].x+=factor*fx;forces[edge.fromId].y+=factor*fy}}}}springForce=1;var springFx,springFy;for(var _i2=0;_i2<nodeIndices.length;_i2++){var _nodeId=nodeIndices[_i2];springFx=Math.min(springForce,Math.max(-springForce,forces[_nodeId].springFx));springFy=Math.min(springForce,Math.max(-springForce,forces[_nodeId].springFy));forces[_nodeId].x+=springFx;forces[_nodeId].y+=springFy}var totalFx=0;var totalFy=0;for(var _i3=0;_i3<nodeIndices.length;_i3++){var _nodeId2=nodeIndices[_i3];totalFx+=forces[_nodeId2].x;totalFy+=forces[_nodeId2].y}var correctionFx=totalFx/nodeIndices.length;var correctionFy=totalFy/nodeIndices.length;for(var _i4=0;_i4<nodeIndices.length;_i4++){var _nodeId3=nodeIndices[_i4];forces[_nodeId3].x-=correctionFx;forces[_nodeId3].y-=correctionFy}}}]);return HierarchicalSpringSolver}();exports[\"default\"]=HierarchicalSpringSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BarnesHutSolver2=__webpack_require__(120);var _BarnesHutSolver3=_interopRequireDefault(_BarnesHutSolver2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ForceAtlas2BasedRepulsionSolver=function(_BarnesHutSolver){(0,_inherits3[\"default\"])(ForceAtlas2BasedRepulsionSolver,_BarnesHutSolver);function ForceAtlas2BasedRepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,ForceAtlas2BasedRepulsionSolver);return(0,_possibleConstructorReturn3[\"default\"])(this,(ForceAtlas2BasedRepulsionSolver.__proto__||(0,_getPrototypeOf2[\"default\"])(ForceAtlas2BasedRepulsionSolver)).call(this,body,physicsBody,options))}(0,_createClass3[\"default\"])(ForceAtlas2BasedRepulsionSolver,[{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,node,parentBranch){if(distance===0){distance=.1*Math.random();dx=distance}if(this.overlapAvoidanceFactor<1&&node.shape.radius){distance=Math.max(.1+this.overlapAvoidanceFactor*node.shape.radius,distance-node.shape.radius)}var degree=node.edges.length+1;var gravityForce=this.options.gravitationalConstant*parentBranch.mass*node.options.mass*degree/Math.pow(distance,2);var fx=dx*gravityForce;var fy=dy*gravityForce;this.physicsBody.forces[node.id].x+=fx;this.physicsBody.forces[node.id].y+=fy}}]);return ForceAtlas2BasedRepulsionSolver}(_BarnesHutSolver3[\"default\"]);exports[\"default\"]=ForceAtlas2BasedRepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CentralGravitySolver2=__webpack_require__(121);var _CentralGravitySolver3=_interopRequireDefault(_CentralGravitySolver2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ForceAtlas2BasedCentralGravitySolver=function(_CentralGravitySolver){(0,_inherits3[\"default\"])(ForceAtlas2BasedCentralGravitySolver,_CentralGravitySolver);function ForceAtlas2BasedCentralGravitySolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,ForceAtlas2BasedCentralGravitySolver);return(0,_possibleConstructorReturn3[\"default\"])(this,(ForceAtlas2BasedCentralGravitySolver.__proto__||(0,_getPrototypeOf2[\"default\"])(ForceAtlas2BasedCentralGravitySolver)).call(this,body,physicsBody,options))}(0,_createClass3[\"default\"])(ForceAtlas2BasedCentralGravitySolver,[{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,forces,node){if(distance>0){var degree=node.edges.length+1;var gravityForce=this.options.centralGravity*degree*node.options.mass;forces[node.id].x=dx*gravityForce;forces[node.id].y=dy*gravityForce}}}]);return ForceAtlas2BasedCentralGravitySolver}(_CentralGravitySolver3[\"default\"]);exports[\"default\"]=ForceAtlas2BasedCentralGravitySolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var Cluster=__webpack_require__(228)[\"default\"];var Edge=__webpack_require__(74)[\"default\"];var Node=__webpack_require__(47)[\"default\"];var ClusterEngine=function(){function ClusterEngine(body){var _this=this;(0,_classCallCheck3[\"default\"])(this,ClusterEngine);this.body=body;this.clusteredNodes={};this.clusteredEdges={};this.options={};this.defaultOptions={};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"_resetData\",function(){_this.clusteredNodes={};_this.clusteredEdges={}})}(0,_createClass3[\"default\"])(ClusterEngine,[{key:\"clusterByHubsize\",value:function clusterByHubsize(hubsize,options){if(hubsize===undefined){hubsize=this._getHubSize()}else if((typeof hubsize===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(hubsize))===\"object\"){options=this._checkOptions(hubsize);hubsize=this._getHubSize()}var nodesToCluster=[];for(var i=0;i<this.body.nodeIndices.length;i++){var node=this.body.nodes[this.body.nodeIndices[i]];if(node.edges.length>=hubsize){nodesToCluster.push(node.id)}}for(var _i=0;_i<nodesToCluster.length;_i++){this.clusterByConnection(nodesToCluster[_i],options,true)}this.body.emitter.emit(\"_dataChanged\")}},{key:\"cluster\",value:function cluster(){var _this2=this;var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(options.joinCondition===undefined){throw new Error(\"Cannot call clusterByNodeData without a joinCondition function in the options.\")}options=this._checkOptions(options);var childNodesObj={};var childEdgesObj={};util.forEach(this.body.nodes,function(node,nodeId){var clonedOptions=NetworkUtil.cloneOptions(node);if(options.joinCondition(clonedOptions)===true){childNodesObj[nodeId]=node;util.forEach(node.edges,function(edge){if(_this2.clusteredEdges[edge.id]===undefined){childEdgesObj[edge.id]=edge}})}});this._cluster(childNodesObj,childEdgesObj,options,refreshData)}},{key:\"clusterByEdgeCount\",value:function clusterByEdgeCount(edgeCount,options){var _this3=this;var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;options=this._checkOptions(options);var clusters=[];var usedNodes={};var edge=void 0,edges=void 0,relevantEdgeCount=void 0;var _loop=function _loop(i){var childNodesObj={};var childEdgesObj={};var nodeId=_this3.body.nodeIndices[i];var node=_this3.body.nodes[nodeId];if(usedNodes[nodeId]===undefined){relevantEdgeCount=0;edges=[];for(var j=0;j<node.edges.length;j++){edge=node.edges[j];if(_this3.clusteredEdges[edge.id]===undefined){if(edge.toId!==edge.fromId){relevantEdgeCount++}edges.push(edge)}}if(relevantEdgeCount===edgeCount){checkJoinCondition=function checkJoinCondition(node){if(options.joinCondition===undefined||options.joinCondition===null){return true}var clonedOptions=NetworkUtil.cloneOptions(node);return options.joinCondition(clonedOptions)};var gatheringSuccessful=true;for(var _j=0;_j<edges.length;_j++){edge=edges[_j];var childNodeId=_this3._getConnectedId(edge,nodeId);if(checkJoinCondition(node)){childEdgesObj[edge.id]=edge;childNodesObj[nodeId]=node;childNodesObj[childNodeId]=_this3.body.nodes[childNodeId];usedNodes[nodeId]=true}else{gatheringSuccessful=false;break}}if((0,_keys2[\"default\"])(childNodesObj).length>0&&(0,_keys2[\"default\"])(childEdgesObj).length>0&&gatheringSuccessful===true){findClusterData=function findClusterData(){for(var n=0;n<clusters.length;++n){for(var m in childNodesObj){if(clusters[n].nodes[m]!==undefined){return clusters[n]}}}return undefined};foundCluster=findClusterData();if(foundCluster!==undefined){for(var m in childNodesObj){if(foundCluster.nodes[m]===undefined){foundCluster.nodes[m]=childNodesObj[m]}}for(var _m in childEdgesObj){if(foundCluster.edges[_m]===undefined){foundCluster.edges[_m]=childEdgesObj[_m]}}}else{clusters.push({nodes:childNodesObj,edges:childEdgesObj})}}}}};for(var i=0;i<this.body.nodeIndices.length;i++){var checkJoinCondition;var findClusterData;var foundCluster;_loop(i)}for(var i=0;i<clusters.length;i++){this._cluster(clusters[i].nodes,clusters[i].edges,options,false)}if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"clusterOutliers\",value:function clusterOutliers(options){var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;this.clusterByEdgeCount(1,options,refreshData)}},{key:\"clusterBridges\",value:function clusterBridges(options){var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;this.clusterByEdgeCount(2,options,refreshData)}},{key:\"clusterByConnection\",value:function clusterByConnection(nodeId,options){var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;if(nodeId===undefined){throw new Error(\"No nodeId supplied to clusterByConnection!\")}if(this.body.nodes[nodeId]===undefined){throw new Error(\"The nodeId given to clusterByConnection does not exist!\")}var node=this.body.nodes[nodeId];options=this._checkOptions(options,node);if(options.clusterNodeProperties.x===undefined){options.clusterNodeProperties.x=node.x}if(options.clusterNodeProperties.y===undefined){options.clusterNodeProperties.y=node.y}if(options.clusterNodeProperties.fixed===undefined){options.clusterNodeProperties.fixed={};options.clusterNodeProperties.fixed.x=node.options.fixed.x;options.clusterNodeProperties.fixed.y=node.options.fixed.y}var childNodesObj={};var childEdgesObj={};var parentNodeId=node.id;var parentClonedOptions=NetworkUtil.cloneOptions(node);childNodesObj[parentNodeId]=node;for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];if(this.clusteredEdges[edge.id]===undefined){var childNodeId=this._getConnectedId(edge,parentNodeId);if(this.clusteredNodes[childNodeId]===undefined){if(childNodeId!==parentNodeId){if(options.joinCondition===undefined){childEdgesObj[edge.id]=edge;childNodesObj[childNodeId]=this.body.nodes[childNodeId]}else{var childClonedOptions=NetworkUtil.cloneOptions(this.body.nodes[childNodeId]);if(options.joinCondition(parentClonedOptions,childClonedOptions)===true){childEdgesObj[edge.id]=edge;childNodesObj[childNodeId]=this.body.nodes[childNodeId]}}}else{childEdgesObj[edge.id]=edge}}}}var childNodeIDs=(0,_keys2[\"default\"])(childNodesObj).map(function(childNode){return childNodesObj[childNode].id});for(childNode in childNodesObj){if(!childNodesObj.hasOwnProperty(childNode))continue;var childNode=childNodesObj[childNode];for(var y=0;y<childNode.edges.length;y++){var childEdge=childNode.edges[y];if(childNodeIDs.indexOf(this._getConnectedId(childEdge,childNode.id))>-1){childEdgesObj[childEdge.id]=childEdge}}}this._cluster(childNodesObj,childEdgesObj,options,refreshData)}},{key:\"_createClusterEdges\",value:function _createClusterEdges(childNodesObj,childEdgesObj,clusterNodeProperties,clusterEdgeProperties){var edge=void 0,childNodeId=void 0,childNode=void 0,toId=void 0,fromId=void 0,otherNodeId=void 0;var childKeys=(0,_keys2[\"default\"])(childNodesObj);var createEdges=[];for(var i=0;i<childKeys.length;i++){childNodeId=childKeys[i];childNode=childNodesObj[childNodeId];for(var j=0;j<childNode.edges.length;j++){edge=childNode.edges[j];if(this.clusteredEdges[edge.id]===undefined){if(edge.toId==edge.fromId){childEdgesObj[edge.id]=edge}else{if(edge.toId==childNodeId){toId=clusterNodeProperties.id;fromId=edge.fromId;otherNodeId=fromId}else{toId=edge.toId;fromId=clusterNodeProperties.id;otherNodeId=toId}}if(childNodesObj[otherNodeId]===undefined){createEdges.push({edge:edge,fromId:fromId,toId:toId})}}}}var newEdges=[];var getNewEdge=function getNewEdge(createdEdge){for(var _j2=0;_j2<newEdges.length;_j2++){var newEdge=newEdges[_j2];var matchToDirection=createdEdge.fromId===newEdge.fromId&&createdEdge.toId===newEdge.toId;var matchFromDirection=createdEdge.fromId===newEdge.toId&&createdEdge.toId===newEdge.fromId;if(matchToDirection||matchFromDirection){return newEdge}}return null};for(var _j3=0;_j3<createEdges.length;_j3++){var createdEdge=createEdges[_j3];var _edge=createdEdge.edge;var newEdge=getNewEdge(createdEdge);if(newEdge===null){newEdge=this._createClusteredEdge(createdEdge.fromId,createdEdge.toId,_edge,clusterEdgeProperties);newEdges.push(newEdge)}else{newEdge.clusteringEdgeReplacingIds.push(_edge.id)}this.body.edges[_edge.id].edgeReplacedById=newEdge.id;this._backupEdgeOptions(_edge);_edge.setOptions({physics:false})}}},{key:\"_checkOptions\",value:function _checkOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(options.clusterEdgeProperties===undefined){options.clusterEdgeProperties={}}if(options.clusterNodeProperties===undefined){options.clusterNodeProperties={}}return options}},{key:\"_cluster\",value:function _cluster(childNodesObj,childEdgesObj,options){var refreshData=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var tmpNodesToRemove=[];for(var _nodeId in childNodesObj){if(childNodesObj.hasOwnProperty(_nodeId)){if(this.clusteredNodes[_nodeId]!==undefined){tmpNodesToRemove.push(_nodeId)}}}for(var n=0;n<tmpNodesToRemove.length;++n){delete childNodesObj[tmpNodesToRemove[n]]}if((0,_keys2[\"default\"])(childNodesObj).length==0){return}if((0,_keys2[\"default\"])(childNodesObj).length==1&&options.clusterNodeProperties.allowSingleNodeCluster!=true){return}var clusterNodeProperties=util.deepExtend({},options.clusterNodeProperties);if(options.processProperties!==undefined){var childNodesOptions=[];for(var _nodeId2 in childNodesObj){if(childNodesObj.hasOwnProperty(_nodeId2)){var clonedOptions=NetworkUtil.cloneOptions(childNodesObj[_nodeId2]);childNodesOptions.push(clonedOptions)}}var childEdgesOptions=[];for(var edgeId in childEdgesObj){if(childEdgesObj.hasOwnProperty(edgeId)){if(edgeId.substr(0,12)!==\"clusterEdge:\"){var _clonedOptions=NetworkUtil.cloneOptions(childEdgesObj[edgeId],\"edge\");childEdgesOptions.push(_clonedOptions)}}}clusterNodeProperties=options.processProperties(clusterNodeProperties,childNodesOptions,childEdgesOptions);if(!clusterNodeProperties){throw new Error(\"The processProperties function does not return properties!\")}}if(clusterNodeProperties.id===undefined){clusterNodeProperties.id=\"cluster:\"+util.randomUUID()}var clusterId=clusterNodeProperties.id;if(clusterNodeProperties.label===undefined){clusterNodeProperties.label=\"cluster\"}var pos=undefined;if(clusterNodeProperties.x===undefined){pos=this._getClusterPosition(childNodesObj);clusterNodeProperties.x=pos.x}if(clusterNodeProperties.y===undefined){if(pos===undefined){pos=this._getClusterPosition(childNodesObj)}clusterNodeProperties.y=pos.y}clusterNodeProperties.id=clusterId;var clusterNode=this.body.functions.createNode(clusterNodeProperties,Cluster);clusterNode.containedNodes=childNodesObj;clusterNode.containedEdges=childEdgesObj;clusterNode.clusterEdgeProperties=options.clusterEdgeProperties;this.body.nodes[clusterNodeProperties.id]=clusterNode;this._clusterEdges(childNodesObj,childEdgesObj,clusterNodeProperties,options.clusterEdgeProperties);clusterNodeProperties.id=undefined;if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"_backupEdgeOptions\",value:function _backupEdgeOptions(edge){if(this.clusteredEdges[edge.id]===undefined){this.clusteredEdges[edge.id]={physics:edge.options.physics}}}},{key:\"_restoreEdge\",value:function _restoreEdge(edge){var originalOptions=this.clusteredEdges[edge.id];if(originalOptions!==undefined){edge.setOptions({physics:originalOptions.physics});delete this.clusteredEdges[edge.id]}}},{key:\"isCluster\",value:function isCluster(nodeId){if(this.body.nodes[nodeId]!==undefined){return this.body.nodes[nodeId].isCluster===true}else{console.log(\"Node does not exist.\");return false}}},{key:\"_getClusterPosition\",value:function _getClusterPosition(childNodesObj){var childKeys=(0,_keys2[\"default\"])(childNodesObj);var minX=childNodesObj[childKeys[0]].x;var maxX=childNodesObj[childKeys[0]].x;var minY=childNodesObj[childKeys[0]].y;var maxY=childNodesObj[childKeys[0]].y;var node=void 0;for(var i=1;i<childKeys.length;i++){node=childNodesObj[childKeys[i]];minX=node.x<minX?node.x:minX;maxX=node.x>maxX?node.x:maxX\n;minY=node.y<minY?node.y:minY;maxY=node.y>maxY?node.y:maxY}return{x:.5*(minX+maxX),y:.5*(minY+maxY)}}},{key:\"openCluster\",value:function openCluster(clusterNodeId,options){var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;if(clusterNodeId===undefined){throw new Error(\"No clusterNodeId supplied to openCluster.\")}var clusterNode=this.body.nodes[clusterNodeId];if(clusterNode===undefined){throw new Error(\"The clusterNodeId supplied to openCluster does not exist.\")}if(clusterNode.isCluster!==true||clusterNode.containedNodes===undefined||clusterNode.containedEdges===undefined){throw new Error(\"The node:\"+clusterNodeId+\" is not a valid cluster.\")}var stack=this.findNode(clusterNodeId);var parentIndex=stack.indexOf(clusterNodeId)-1;if(parentIndex>=0){var parentClusterNodeId=stack[parentIndex];var parentClusterNode=this.body.nodes[parentClusterNodeId];parentClusterNode._openChildCluster(clusterNodeId);delete this.body.nodes[clusterNodeId];if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}return}var containedNodes=clusterNode.containedNodes;var containedEdges=clusterNode.containedEdges;if(options!==undefined&&options.releaseFunction!==undefined&&typeof options.releaseFunction===\"function\"){var positions={};var clusterPosition={x:clusterNode.x,y:clusterNode.y};for(var _nodeId3 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId3)){var containedNode=this.body.nodes[_nodeId3];positions[_nodeId3]={x:containedNode.x,y:containedNode.y}}}var newPositions=options.releaseFunction(clusterPosition,positions);for(var _nodeId4 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId4)){var _containedNode=this.body.nodes[_nodeId4];if(newPositions[_nodeId4]!==undefined){_containedNode.x=newPositions[_nodeId4].x===undefined?clusterNode.x:newPositions[_nodeId4].x;_containedNode.y=newPositions[_nodeId4].y===undefined?clusterNode.y:newPositions[_nodeId4].y}}}}else{util.forEach(containedNodes,function(containedNode){if(containedNode.options.fixed.x===false){containedNode.x=clusterNode.x}if(containedNode.options.fixed.y===false){containedNode.y=clusterNode.y}})}for(var _nodeId5 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId5)){var _containedNode2=this.body.nodes[_nodeId5];_containedNode2.vx=clusterNode.vx;_containedNode2.vy=clusterNode.vy;_containedNode2.setOptions({physics:true});delete this.clusteredNodes[_nodeId5]}}var edgesToBeDeleted=[];for(var i=0;i<clusterNode.edges.length;i++){edgesToBeDeleted.push(clusterNode.edges[i])}for(var _i2=0;_i2<edgesToBeDeleted.length;_i2++){var edge=edgesToBeDeleted[_i2];var otherNodeId=this._getConnectedId(edge,clusterNodeId);var otherNode=this.clusteredNodes[otherNodeId];for(var j=0;j<edge.clusteringEdgeReplacingIds.length;j++){var transferId=edge.clusteringEdgeReplacingIds[j];var transferEdge=this.body.edges[transferId];if(transferEdge===undefined)continue;if(otherNode!==undefined){var otherCluster=this.body.nodes[otherNode.clusterId];otherCluster.containedEdges[transferEdge.id]=transferEdge;delete containedEdges[transferEdge.id];var fromId=transferEdge.fromId;var toId=transferEdge.toId;if(transferEdge.toId==otherNodeId){toId=otherNode.clusterId}else{fromId=otherNode.clusterId}this._createClusteredEdge(fromId,toId,transferEdge,otherCluster.clusterEdgeProperties,{hidden:false,physics:true})}else{this._restoreEdge(transferEdge)}}edge.remove()}for(var edgeId in containedEdges){if(containedEdges.hasOwnProperty(edgeId)){this._restoreEdge(containedEdges[edgeId])}}delete this.body.nodes[clusterNodeId];if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"getNodesInCluster\",value:function getNodesInCluster(clusterId){var nodesArray=[];if(this.isCluster(clusterId)===true){var containedNodes=this.body.nodes[clusterId].containedNodes;for(var _nodeId6 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId6)){nodesArray.push(this.body.nodes[_nodeId6].id)}}}return nodesArray}},{key:\"findNode\",value:function findNode(nodeId){var stack=[];var max=100;var counter=0;var node=void 0;while(this.clusteredNodes[nodeId]!==undefined&&counter<max){node=this.body.nodes[nodeId];if(node===undefined)return[];stack.push(node.id);nodeId=this.clusteredNodes[nodeId].clusterId;counter++}node=this.body.nodes[nodeId];if(node===undefined)return[];stack.push(node.id);stack.reverse();return stack}},{key:\"updateClusteredNode\",value:function updateClusteredNode(clusteredNodeId,newOptions){if(clusteredNodeId===undefined){throw new Error(\"No clusteredNodeId supplied to updateClusteredNode.\")}if(newOptions===undefined){throw new Error(\"No newOptions supplied to updateClusteredNode.\")}if(this.body.nodes[clusteredNodeId]===undefined){throw new Error(\"The clusteredNodeId supplied to updateClusteredNode does not exist.\")}this.body.nodes[clusteredNodeId].setOptions(newOptions);this.body.emitter.emit(\"_dataChanged\")}},{key:\"updateEdge\",value:function updateEdge(startEdgeId,newOptions){if(startEdgeId===undefined){throw new Error(\"No startEdgeId supplied to updateEdge.\")}if(newOptions===undefined){throw new Error(\"No newOptions supplied to updateEdge.\")}if(this.body.edges[startEdgeId]===undefined){throw new Error(\"The startEdgeId supplied to updateEdge does not exist.\")}var allEdgeIds=this.getClusteredEdges(startEdgeId);for(var i=0;i<allEdgeIds.length;i++){var edge=this.body.edges[allEdgeIds[i]];edge.setOptions(newOptions)}this.body.emitter.emit(\"_dataChanged\")}},{key:\"getClusteredEdges\",value:function getClusteredEdges(edgeId){var stack=[];var max=100;var counter=0;while(edgeId!==undefined&&this.body.edges[edgeId]!==undefined&&counter<max){stack.push(this.body.edges[edgeId].id);edgeId=this.body.edges[edgeId].edgeReplacedById;counter++}stack.reverse();return stack}},{key:\"getBaseEdge\",value:function getBaseEdge(clusteredEdgeId){return this.getBaseEdges(clusteredEdgeId)[0]}},{key:\"getBaseEdges\",value:function getBaseEdges(clusteredEdgeId){var IdsToHandle=[clusteredEdgeId];var doneIds=[];var foundIds=[];var max=100;var counter=0;while(IdsToHandle.length>0&&counter<max){var nextId=IdsToHandle.pop();if(nextId===undefined)continue;var nextEdge=this.body.edges[nextId];if(nextEdge===undefined)continue;counter++;var replacingIds=nextEdge.clusteringEdgeReplacingIds;if(replacingIds===undefined){foundIds.push(nextId)}else{for(var i=0;i<replacingIds.length;++i){var replacingId=replacingIds[i];if(IdsToHandle.indexOf(replacingIds)!==-1||doneIds.indexOf(replacingIds)!==-1){continue}IdsToHandle.push(replacingId)}}doneIds.push(nextId)}return foundIds}},{key:\"_getConnectedId\",value:function _getConnectedId(edge,nodeId){if(edge.toId!=nodeId){return edge.toId}else if(edge.fromId!=nodeId){return edge.fromId}else{return edge.fromId}}},{key:\"_getHubSize\",value:function _getHubSize(){var average=0;var averageSquared=0;var hubCounter=0;var largestHub=0;for(var i=0;i<this.body.nodeIndices.length;i++){var _node=this.body.nodes[this.body.nodeIndices[i]];if(_node.edges.length>largestHub){largestHub=_node.edges.length}average+=_node.edges.length;averageSquared+=Math.pow(_node.edges.length,2);hubCounter+=1}average=average/hubCounter;averageSquared=averageSquared/hubCounter;var variance=averageSquared-Math.pow(average,2);var standardDeviation=Math.sqrt(variance);var hubThreshold=Math.floor(average+2*standardDeviation);if(hubThreshold>largestHub){hubThreshold=largestHub}return hubThreshold}},{key:\"_createClusteredEdge\",value:function _createClusteredEdge(fromId,toId,baseEdge,clusterEdgeProperties,extraOptions){var clonedOptions=NetworkUtil.cloneOptions(baseEdge,\"edge\");util.deepExtend(clonedOptions,clusterEdgeProperties);clonedOptions.from=fromId;clonedOptions.to=toId;clonedOptions.id=\"clusterEdge:\"+util.randomUUID();if(extraOptions!==undefined){util.deepExtend(clonedOptions,extraOptions)}var newEdge=this.body.functions.createEdge(clonedOptions);newEdge.clusteringEdgeReplacingIds=[baseEdge.id];newEdge.connect();this.body.edges[newEdge.id]=newEdge;return newEdge}},{key:\"_clusterEdges\",value:function _clusterEdges(childNodes,childEdges,clusterNode,clusterEdgeProperties){if(childEdges instanceof Edge){var edge=childEdges;var obj={};obj[edge.id]=edge;childEdges=obj}if(childNodes instanceof Node){var _node2=childNodes;var _obj={};_obj[_node2.id]=_node2;childNodes=_obj}if(clusterNode===undefined||clusterNode===null){throw new Error(\"_clusterEdges: parameter clusterNode required\")}if(clusterEdgeProperties===undefined){clusterEdgeProperties=clusterNode.clusterEdgeProperties}this._createClusterEdges(childNodes,childEdges,clusterNode,clusterEdgeProperties);for(var edgeId in childEdges){if(childEdges.hasOwnProperty(edgeId)){if(this.body.edges[edgeId]!==undefined){var _edge2=this.body.edges[edgeId];this._backupEdgeOptions(_edge2);_edge2.setOptions({physics:false})}}}for(var _nodeId7 in childNodes){if(childNodes.hasOwnProperty(_nodeId7)){this.clusteredNodes[_nodeId7]={clusterId:clusterNode.id,node:this.body.nodes[_nodeId7]};this.body.nodes[_nodeId7].setOptions({physics:false})}}}},{key:\"_getClusterNodeForNode\",value:function _getClusterNodeForNode(nodeId){if(nodeId===undefined)return undefined;var clusteredNode=this.clusteredNodes[nodeId];if(clusteredNode===undefined)return undefined;var clusterId=clusteredNode.clusterId;if(clusterId===undefined)return undefined;return this.body.nodes[clusterId]}},{key:\"_filter\",value:function _filter(arr,callback){var ret=[];util.forEach(arr,function(item){if(callback(item)){ret.push(item)}});return ret}},{key:\"_updateState\",value:function _updateState(){var _this4=this;var nodeId=void 0;var deletedNodeIds=[];var deletedEdgeIds=[];var eachClusterNode=function eachClusterNode(callback){util.forEach(_this4.body.nodes,function(node){if(node.isCluster===true){callback(node)}})};for(nodeId in this.clusteredNodes){if(!this.clusteredNodes.hasOwnProperty(nodeId))continue;var _node3=this.body.nodes[nodeId];if(_node3===undefined){deletedNodeIds.push(nodeId)}}eachClusterNode(function(clusterNode){for(var n=0;n<deletedNodeIds.length;n++){delete clusterNode.containedNodes[deletedNodeIds[n]]}});for(var n=0;n<deletedNodeIds.length;n++){delete this.clusteredNodes[deletedNodeIds[n]]}util.forEach(this.clusteredEdges,function(edgeId){var edge=_this4.body.edges[edgeId];if(edge===undefined||!edge.endPointsValid()){deletedEdgeIds.push(edgeId)}});eachClusterNode(function(clusterNode){util.forEach(clusterNode.containedEdges,function(edge,edgeId){if(!edge.endPointsValid()&&deletedEdgeIds.indexOf(edgeId)===-1){deletedEdgeIds.push(edgeId)}})});util.forEach(this.body.edges,function(edge,edgeId){var isValid=true;var replacedIds=edge.clusteringEdgeReplacingIds;if(replacedIds!==undefined){var numValid=0;util.forEach(replacedIds,function(containedEdgeId){var containedEdge=_this4.body.edges[containedEdgeId];if(containedEdge!==undefined&&containedEdge.endPointsValid()){numValid+=1}});isValid=numValid>0}if(!edge.endPointsValid()||!isValid){deletedEdgeIds.push(edgeId)}});eachClusterNode(function(clusterNode){util.forEach(deletedEdgeIds,function(deletedEdgeId){delete clusterNode.containedEdges[deletedEdgeId];util.forEach(clusterNode.edges,function(edge,m){if(edge.id===deletedEdgeId){clusterNode.edges[m]=null;return}edge.clusteringEdgeReplacingIds=_this4._filter(edge.clusteringEdgeReplacingIds,function(id){return deletedEdgeIds.indexOf(id)===-1})});clusterNode.edges=_this4._filter(clusterNode.edges,function(item){return item!==null})})});util.forEach(deletedEdgeIds,function(edgeId){delete _this4.clusteredEdges[edgeId]});util.forEach(deletedEdgeIds,function(edgeId){delete _this4.body.edges[edgeId]});var ids=(0,_keys2[\"default\"])(this.body.edges);util.forEach(ids,function(edgeId){var edge=_this4.body.edges[edgeId];var shouldBeClustered=_this4._isClusteredNode(edge.fromId)||_this4._isClusteredNode(edge.toId);if(shouldBeClustered===_this4._isClusteredEdge(edge.id)){return}if(shouldBeClustered){var clusterFrom=_this4._getClusterNodeForNode(edge.fromId);if(clusterFrom!==undefined){_this4._clusterEdges(_this4.body.nodes[edge.fromId],edge,clusterFrom)}var clusterTo=_this4._getClusterNodeForNode(edge.toId);if(clusterTo!==undefined){_this4._clusterEdges(_this4.body.nodes[edge.toId],edge,clusterTo)}}else{throw new Error(\"remove edge from clustering not implemented!\")}});var changed=false;var continueLoop=true;var _loop2=function _loop2(){var clustersToOpen=[];eachClusterNode(function(clusterNode){var numNodes=(0,_keys2[\"default\"])(clusterNode.containedNodes).length;var allowSingle=clusterNode.options.allowSingleNodeCluster===true;if(allowSingle&&numNodes<1||!allowSingle&&numNodes<2){clustersToOpen.push(clusterNode.id)}});for(var _n=0;_n<clustersToOpen.length;++_n){_this4.openCluster(clustersToOpen[_n],{},false)}continueLoop=clustersToOpen.length>0;changed=changed||continueLoop};while(continueLoop){_loop2()}if(changed){this._updateState()}}},{key:\"_isClusteredNode\",value:function _isClusteredNode(nodeId){return this.clusteredNodes[nodeId]!==undefined}},{key:\"_isClusteredEdge\",value:function _isClusteredEdge(edgeId){return this.clusteredEdges[edgeId]!==undefined}}]);return ClusterEngine}();exports[\"default\"]=ClusterEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Node=__webpack_require__(47)[\"default\"];var Cluster=function(_Node){(0,_inherits3[\"default\"])(Cluster,_Node);function Cluster(options,body,imagelist,grouplist,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Cluster);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Cluster.__proto__||(0,_getPrototypeOf2[\"default\"])(Cluster)).call(this,options,body,imagelist,grouplist,globalOptions,defaultOptions));_this.isCluster=true;_this.containedNodes={};_this.containedEdges={};return _this}(0,_createClass3[\"default\"])(Cluster,[{key:\"_openChildCluster\",value:function _openChildCluster(childClusterId){var _this2=this;var childCluster=this.body.nodes[childClusterId];if(this.containedNodes[childClusterId]===undefined){throw new Error(\"node with id: \"+childClusterId+\" not in current cluster\")}if(!childCluster.isCluster){throw new Error(\"node with id: \"+childClusterId+\" is not a cluster\")}delete this.containedNodes[childClusterId];util.forEach(childCluster.edges,function(edge){delete _this2.containedEdges[edge.id]});util.forEach(childCluster.containedNodes,function(node,nodeId){_this2.containedNodes[nodeId]=node});childCluster.containedNodes={};util.forEach(childCluster.containedEdges,function(edge,edgeId){_this2.containedEdges[edgeId]=edge});childCluster.containedEdges={};util.forEach(childCluster.edges,function(clusterEdge){util.forEach(_this2.edges,function(parentClusterEdge){var index=parentClusterEdge.clusteringEdgeReplacingIds.indexOf(clusterEdge.id);if(index===-1)return;util.forEach(clusterEdge.clusteringEdgeReplacingIds,function(srcId){parentClusterEdge.clusteringEdgeReplacingIds.push(srcId);_this2.body.edges[srcId].edgeReplacedById=parentClusterEdge.id});parentClusterEdge.clusteringEdgeReplacingIds.splice(index,1)})});childCluster.edges=[]}}]);return Cluster}(Node);exports[\"default\"]=Cluster},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _initRequestAnimationFrame(){var func;if(window!==undefined){func=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame}if(func===undefined){window.requestAnimationFrame=function(callback){callback()}}else{window.requestAnimationFrame=func}}var util=__webpack_require__(2);var CanvasRenderer=function(){function CanvasRenderer(body,canvas){(0,_classCallCheck3[\"default\"])(this,CanvasRenderer);_initRequestAnimationFrame();this.body=body;this.canvas=canvas;this.redrawRequested=false;this.renderTimer=undefined;this.requiresTimeout=true;this.renderingActive=false;this.renderRequests=0;this.allowRedraw=true;this.dragging=false;this.options={};this.defaultOptions={hideEdgesOnDrag:false,hideNodesOnDrag:false};util.extend(this.options,this.defaultOptions);this._determineBrowserMethod();this.bindEventListeners()}(0,_createClass3[\"default\"])(CanvasRenderer,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"dragStart\",function(){_this.dragging=true});this.body.emitter.on(\"dragEnd\",function(){_this.dragging=false});this.body.emitter.on(\"_resizeNodes\",function(){_this._resizeNodes()});this.body.emitter.on(\"_redraw\",function(){if(_this.renderingActive===false){_this._redraw()}});this.body.emitter.on(\"_blockRedraw\",function(){_this.allowRedraw=false});this.body.emitter.on(\"_allowRedraw\",function(){_this.allowRedraw=true;_this.redrawRequested=false});this.body.emitter.on(\"_requestRedraw\",this._requestRedraw.bind(this));this.body.emitter.on(\"_startRendering\",function(){_this.renderRequests+=1;_this.renderingActive=true;_this._startRendering()});this.body.emitter.on(\"_stopRendering\",function(){_this.renderRequests-=1;_this.renderingActive=_this.renderRequests>0;_this.renderTimer=undefined});this.body.emitter.on(\"destroy\",function(){_this.renderRequests=0;_this.allowRedraw=false;_this.renderingActive=false;if(_this.requiresTimeout===true){clearTimeout(_this.renderTimer)}else{window.cancelAnimationFrame(_this.renderTimer)}_this.body.emitter.off()})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"hideEdgesOnDrag\",\"hideNodesOnDrag\"];util.selectiveDeepExtend(fields,this.options,options)}}},{key:\"_requestNextFrame\",value:function _requestNextFrame(callback,delay){if(typeof window===\"undefined\")return;var timer=void 0;var myWindow=window;if(this.requiresTimeout===true){timer=myWindow.setTimeout(callback,delay)}else{if(myWindow.requestAnimationFrame){timer=myWindow.requestAnimationFrame(callback)}}return timer}},{key:\"_startRendering\",value:function _startRendering(){if(this.renderingActive===true){if(this.renderTimer===undefined){this.renderTimer=this._requestNextFrame(this._renderStep.bind(this),this.simulationInterval)}}}},{key:\"_renderStep\",value:function _renderStep(){if(this.renderingActive===true){this.renderTimer=undefined;if(this.requiresTimeout===true){this._startRendering()}this._redraw();if(this.requiresTimeout===false){this._startRendering()}}}},{key:\"redraw\",value:function redraw(){this.body.emitter.emit(\"setSize\");this._redraw()}},{key:\"_requestRedraw\",value:function _requestRedraw(){var _this2=this;if(this.redrawRequested!==true&&this.renderingActive===false&&this.allowRedraw===true){this.redrawRequested=true;this._requestNextFrame(function(){_this2._redraw(false)},0)}}},{key:\"_redraw\",value:function _redraw(){var hidden=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.allowRedraw===true){this.body.emitter.emit(\"initRedraw\");this.redrawRequested=false;if(this.canvas.frame.canvas.width===0||this.canvas.frame.canvas.height===0){this.canvas.setSize()}this.canvas.setTransform();var ctx=this.canvas.getContext();var w=this.canvas.frame.canvas.clientWidth;var h=this.canvas.frame.canvas.clientHeight;ctx.clearRect(0,0,w,h);if(this.canvas.frame.clientWidth===0){return}ctx.save();ctx.translate(this.body.view.translation.x,this.body.view.translation.y);ctx.scale(this.body.view.scale,this.body.view.scale);ctx.beginPath();this.body.emitter.emit(\"beforeDrawing\",ctx);ctx.closePath();if(hidden===false){if(this.dragging===false||this.dragging===true&&this.options.hideEdgesOnDrag===false){this._drawEdges(ctx)}}if(this.dragging===false||this.dragging===true&&this.options.hideNodesOnDrag===false){this._drawNodes(ctx,hidden)}ctx.beginPath();this.body.emitter.emit(\"afterDrawing\",ctx);ctx.closePath();ctx.restore();if(hidden===true){ctx.clearRect(0,0,w,h)}}}},{key:\"_resizeNodes\",value:function _resizeNodes(){this.canvas.setTransform();var ctx=this.canvas.getContext();ctx.save();ctx.translate(this.body.view.translation.x,this.body.view.translation.y);ctx.scale(this.body.view.scale,this.body.view.scale);var nodes=this.body.nodes;var node=void 0;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){node=nodes[nodeId];node.resize(ctx);node.updateBoundingBox(ctx,node.selected)}}ctx.restore()}},{key:\"_drawNodes\",value:function _drawNodes(ctx){var alwaysShow=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var nodes=this.body.nodes;var nodeIndices=this.body.nodeIndices;var node=void 0;var selected=[];var margin=20;var topLeft=this.canvas.DOMtoCanvas({x:-margin,y:-margin});var bottomRight=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+margin,y:this.canvas.frame.canvas.clientHeight+margin});var viewableArea={top:topLeft.y,left:topLeft.x,bottom:bottomRight.y,right:bottomRight.x};for(var i=0;i<nodeIndices.length;i++){node=nodes[nodeIndices[i]];if(node.isSelected()){selected.push(nodeIndices[i])}else{if(alwaysShow===true){node.draw(ctx)}else if(node.isBoundingBoxOverlappingWith(viewableArea)===true){node.draw(ctx)}else{node.updateBoundingBox(ctx,node.selected)}}}for(var _i=0;_i<selected.length;_i++){node=nodes[selected[_i]];node.draw(ctx)}}},{key:\"_drawEdges\",value:function _drawEdges(ctx){var edges=this.body.edges;var edgeIndices=this.body.edgeIndices;var edge=void 0;for(var i=0;i<edgeIndices.length;i++){edge=edges[edgeIndices[i]];if(edge.connected===true){edge.draw(ctx)}}}},{key:\"_determineBrowserMethod\",value:function _determineBrowserMethod(){if(typeof window!==\"undefined\"){var browserType=navigator.userAgent.toLowerCase();this.requiresTimeout=false;if(browserType.indexOf(\"msie 9.0\")!=-1){this.requiresTimeout=true}else if(browserType.indexOf(\"safari\")!=-1){if(browserType.indexOf(\"chrome\")<=-1){this.requiresTimeout=true}}}else{this.requiresTimeout=true}}}]);return CanvasRenderer}();exports[\"default\"]=CanvasRenderer},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var Canvas=function(){function Canvas(body){(0,_classCallCheck3[\"default\"])(this,Canvas);this.body=body;this.pixelRatio=1;this.resizeTimer=undefined;this.resizeFunction=this._onResize.bind(this);this.cameraState={};this.initialized=false;this.canvasViewCenter={};this.options={};this.defaultOptions={autoResize:true,height:\"100%\",width:\"100%\"};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(Canvas,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.once(\"resize\",function(obj){if(obj.width!==0){_this.body.view.translation.x=obj.width*.5}if(obj.height!==0){_this.body.view.translation.y=obj.height*.5}});this.body.emitter.on(\"setSize\",this.setSize.bind(this));this.body.emitter.on(\"destroy\",function(){_this.hammerFrame.destroy();_this.hammer.destroy();_this._cleanUp()})}},{key:\"setOptions\",value:function setOptions(options){var _this2=this;if(options!==undefined){var fields=[\"width\",\"height\",\"autoResize\"];util.selectiveDeepExtend(fields,this.options,options)}if(this.options.autoResize===true){this._cleanUp();this.resizeTimer=setInterval(function(){var changed=_this2.setSize();if(changed===true){_this2.body.emitter.emit(\"_requestRedraw\")}},1e3);this.resizeFunction=this._onResize.bind(this);util.addEventListener(window,\"resize\",this.resizeFunction)}}},{key:\"_cleanUp\",value:function _cleanUp(){if(this.resizeTimer!==undefined){clearInterval(this.resizeTimer)}util.removeEventListener(window,\"resize\",this.resizeFunction);this.resizeFunction=undefined}},{key:\"_onResize\",value:function _onResize(){this.setSize();this.body.emitter.emit(\"_redraw\")}},{key:\"_getCameraState\",value:function _getCameraState(){var pixelRatio=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.pixelRatio;if(this.initialized===true){this.cameraState.previousWidth=this.frame.canvas.width/pixelRatio;this.cameraState.previousHeight=this.frame.canvas.height/pixelRatio;this.cameraState.scale=this.body.view.scale;this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/pixelRatio,y:.5*this.frame.canvas.height/pixelRatio})}}},{key:\"_setCameraState\",value:function _setCameraState(){if(this.cameraState.scale!==undefined&&this.frame.canvas.clientWidth!==0&&this.frame.canvas.clientHeight!==0&&this.pixelRatio!==0&&this.cameraState.previousWidth>0){var widthRatio=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth;var heightRatio=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight;var newScale=this.cameraState.scale;if(widthRatio!=1&&heightRatio!=1){newScale=this.cameraState.scale*.5*(widthRatio+heightRatio)}else if(widthRatio!=1){newScale=this.cameraState.scale*widthRatio}else if(heightRatio!=1){newScale=this.cameraState.scale*heightRatio}this.body.view.scale=newScale;var currentViewCenter=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight});var distanceFromCenter={x:currentViewCenter.x-this.cameraState.position.x,y:currentViewCenter.y-this.cameraState.position.y};this.body.view.translation.x+=distanceFromCenter.x*this.body.view.scale;this.body.view.translation.y+=distanceFromCenter.y*this.body.view.scale}}},{key:\"_prepareValue\",value:function _prepareValue(value){if(typeof value===\"number\"){return value+\"px\"}else if(typeof value===\"string\"){if(value.indexOf(\"%\")!==-1||value.indexOf(\"px\")!==-1){return value}else if(value.indexOf(\"%\")===-1){return value+\"px\"}}throw new Error(\"Could not use the value supplied for width or height:\"+value)}},{key:\"_create\",value:function _create(){while(this.body.container.hasChildNodes()){this.body.container.removeChild(this.body.container.firstChild)}this.frame=document.createElement(\"div\");this.frame.className=\"vis-network\";this.frame.style.position=\"relative\";this.frame.style.overflow=\"hidden\";this.frame.tabIndex=900;this.frame.canvas=document.createElement(\"canvas\");this.frame.canvas.style.position=\"relative\";this.frame.appendChild(this.frame.canvas);if(!this.frame.canvas.getContext){var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.frame.canvas.appendChild(noCanvas)}else{this._setPixelRatio();this.setTransform()}this.body.container.appendChild(this.frame);this.body.view.scale=1;this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight};this._bindHammer()}},{key:\"_bindHammer\",value:function _bindHammer(){var _this3=this;if(this.hammer!==undefined){this.hammer.destroy()}this.drag={};this.pinch={};this.hammer=new Hammer(this.frame.canvas);this.hammer.get(\"pinch\").set({enable:true});this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_ALL});hammerUtil.onTouch(this.hammer,function(event){_this3.body.eventListeners.onTouch(event)});this.hammer.on(\"tap\",function(event){_this3.body.eventListeners.onTap(event)});this.hammer.on(\"doubletap\",function(event){_this3.body.eventListeners.onDoubleTap(event)});this.hammer.on(\"press\",function(event){_this3.body.eventListeners.onHold(event)});this.hammer.on(\"panstart\",function(event){_this3.body.eventListeners.onDragStart(event)});this.hammer.on(\"panmove\",function(event){_this3.body.eventListeners.onDrag(event)});this.hammer.on(\"panend\",function(event){_this3.body.eventListeners.onDragEnd(event)});this.hammer.on(\"pinch\",function(event){_this3.body.eventListeners.onPinch(event)});this.frame.canvas.addEventListener(\"mousewheel\",function(event){_this3.body.eventListeners.onMouseWheel(event)});this.frame.canvas.addEventListener(\"DOMMouseScroll\",function(event){_this3.body.eventListeners.onMouseWheel(event)});this.frame.canvas.addEventListener(\"mousemove\",function(event){_this3.body.eventListeners.onMouseMove(event)});this.frame.canvas.addEventListener(\"contextmenu\",function(event){_this3.body.eventListeners.onContext(event)});this.hammerFrame=new Hammer(this.frame);hammerUtil.onRelease(this.hammerFrame,function(event){_this3.body.eventListeners.onRelease(event)})}},{key:\"setSize\",value:function setSize(){var width=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.options.width;var height=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.options.height;width=this._prepareValue(width);height=this._prepareValue(height);var emitEvent=false;var oldWidth=this.frame.canvas.width;var oldHeight=this.frame.canvas.height;var previousRatio=this.pixelRatio;this._setPixelRatio();if(width!=this.options.width||height!=this.options.height||this.frame.style.width!=width||this.frame.style.height!=height){this._getCameraState(previousRatio);this.frame.style.width=width;this.frame.style.height=height;this.frame.canvas.style.width=\"100%\";this.frame.canvas.style.height=\"100%\";this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio);this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);this.options.width=width;this.options.height=height;this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight};emitEvent=true}else{var newWidth=Math.round(this.frame.canvas.clientWidth*this.pixelRatio);var newHeight=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);if(this.frame.canvas.width!==newWidth||this.frame.canvas.height!==newHeight){this._getCameraState(previousRatio)}if(this.frame.canvas.width!==newWidth){this.frame.canvas.width=newWidth;emitEvent=true}if(this.frame.canvas.height!==newHeight){this.frame.canvas.height=newHeight;emitEvent=true}}if(emitEvent===true){this.body.emitter.emit(\"resize\",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(oldWidth/this.pixelRatio),oldHeight:Math.round(oldHeight/this.pixelRatio)});this._setCameraState()}this.initialized=true;return emitEvent}},{key:\"getContext\",value:function getContext(){return this.frame.canvas.getContext(\"2d\")}},{key:\"_determinePixelRatio\",value:function _determinePixelRatio(){var ctx=this.getContext();if(ctx===undefined){throw new Error(\"Could not get canvax context\")}var numerator=1;if(typeof window!==\"undefined\"){numerator=window.devicePixelRatio||1}var denominator=ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1;return numerator/denominator}},{key:\"_setPixelRatio\",value:function _setPixelRatio(){this.pixelRatio=this._determinePixelRatio()}},{key:\"setTransform\",value:function setTransform(){var ctx=this.getContext();if(ctx===undefined){throw new Error(\"Could not get canvax context\")}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}},{key:\"_XconvertDOMtoCanvas\",value:function _XconvertDOMtoCanvas(x){return(x-this.body.view.translation.x)/this.body.view.scale}},{\nkey:\"_XconvertCanvasToDOM\",value:function _XconvertCanvasToDOM(x){return x*this.body.view.scale+this.body.view.translation.x}},{key:\"_YconvertDOMtoCanvas\",value:function _YconvertDOMtoCanvas(y){return(y-this.body.view.translation.y)/this.body.view.scale}},{key:\"_YconvertCanvasToDOM\",value:function _YconvertCanvasToDOM(y){return y*this.body.view.scale+this.body.view.translation.y}},{key:\"canvasToDOM\",value:function canvasToDOM(pos){return{x:this._XconvertCanvasToDOM(pos.x),y:this._YconvertCanvasToDOM(pos.y)}}},{key:\"DOMtoCanvas\",value:function DOMtoCanvas(pos){return{x:this._XconvertDOMtoCanvas(pos.x),y:this._YconvertDOMtoCanvas(pos.y)}}}]);return Canvas}();exports[\"default\"]=Canvas},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var View=function(){function View(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,View);this.body=body;this.canvas=canvas;this.animationSpeed=1/this.renderRefreshRate;this.animationEasingFunction=\"easeInOutQuint\";this.easingTime=0;this.sourceScale=0;this.targetScale=0;this.sourceTranslation=0;this.targetTranslation=0;this.lockedOnNodeId=undefined;this.lockedOnNodeOffset=undefined;this.touchTime=0;this.viewFunction=undefined;this.body.emitter.on(\"fit\",this.fit.bind(this));this.body.emitter.on(\"animationFinished\",function(){_this.body.emitter.emit(\"_stopRendering\")});this.body.emitter.on(\"unlockNode\",this.releaseNode.bind(this))}(0,_createClass3[\"default\"])(View,[{key:\"setOptions\",value:function setOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.options=options}},{key:\"fit\",value:function fit(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{nodes:[]};var initialZoom=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var range=void 0;var zoomLevel=void 0;if(options.nodes===undefined||options.nodes.length===0){options.nodes=this.body.nodeIndices}if(initialZoom===true){var positionDefined=0;for(var nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){var node=this.body.nodes[nodeId];if(node.predefinedPosition===true){positionDefined+=1}}}if(positionDefined>.5*this.body.nodeIndices.length){this.fit(options,false);return}range=NetworkUtil.getRange(this.body.nodes,options.nodes);var numberOfNodes=this.body.nodeIndices.length;zoomLevel=12.662/(numberOfNodes+7.4147)+.0964822;var factor=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);zoomLevel*=factor}else{this.body.emitter.emit(\"_resizeNodes\");range=NetworkUtil.getRange(this.body.nodes,options.nodes);var xDistance=Math.abs(range.maxX-range.minX)*1.1;var yDistance=Math.abs(range.maxY-range.minY)*1.1;var xZoomLevel=this.canvas.frame.canvas.clientWidth/xDistance;var yZoomLevel=this.canvas.frame.canvas.clientHeight/yDistance;zoomLevel=xZoomLevel<=yZoomLevel?xZoomLevel:yZoomLevel}if(zoomLevel>1){zoomLevel=1}else if(zoomLevel===0){zoomLevel=1}var center=NetworkUtil.findCenter(range);var animationOptions={position:center,scale:zoomLevel,animation:options.animation};this.moveTo(animationOptions)}},{key:\"focus\",value:function focus(nodeId){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};if(this.body.nodes[nodeId]!==undefined){var nodePosition={x:this.body.nodes[nodeId].x,y:this.body.nodes[nodeId].y};options.position=nodePosition;options.lockedOnNode=nodeId;this.moveTo(options)}else{console.log(\"Node: \"+nodeId+\" cannot be found.\")}}},{key:\"moveTo\",value:function moveTo(options){if(options===undefined){options={};return}if(options.offset===undefined){options.offset={x:0,y:0}}if(options.offset.x===undefined){options.offset.x=0}if(options.offset.y===undefined){options.offset.y=0}if(options.scale===undefined){options.scale=this.body.view.scale}if(options.position===undefined){options.position=this.getViewPosition()}if(options.animation===undefined){options.animation={duration:0}}if(options.animation===false){options.animation={duration:0}}if(options.animation===true){options.animation={}}if(options.animation.duration===undefined){options.animation.duration=1e3}if(options.animation.easingFunction===undefined){options.animation.easingFunction=\"easeInOutQuad\"}this.animateView(options)}},{key:\"animateView\",value:function animateView(options){if(options===undefined){return}this.animationEasingFunction=options.animation.easingFunction;this.releaseNode();if(options.locked===true){this.lockedOnNodeId=options.lockedOnNode;this.lockedOnNodeOffset=options.offset}if(this.easingTime!=0){this._transitionRedraw(true)}this.sourceScale=this.body.view.scale;this.sourceTranslation=this.body.view.translation;this.targetScale=options.scale;this.body.view.scale=this.targetScale;var viewCenter=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight});var distanceFromCenter={x:viewCenter.x-options.position.x,y:viewCenter.y-options.position.y};this.targetTranslation={x:this.sourceTranslation.x+distanceFromCenter.x*this.targetScale+options.offset.x,y:this.sourceTranslation.y+distanceFromCenter.y*this.targetScale+options.offset.y};if(options.animation.duration===0){if(this.lockedOnNodeId!=undefined){this.viewFunction=this._lockedRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction)}else{this.body.view.scale=this.targetScale;this.body.view.translation=this.targetTranslation;this.body.emitter.emit(\"_requestRedraw\")}}else{this.animationSpeed=1/(60*options.animation.duration*.001)||1/60;this.animationEasingFunction=options.animation.easingFunction;this.viewFunction=this._transitionRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction);this.body.emitter.emit(\"_startRendering\")}}},{key:\"_lockedRedraw\",value:function _lockedRedraw(){var nodePosition={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y};var viewCenter=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight});var distanceFromCenter={x:viewCenter.x-nodePosition.x,y:viewCenter.y-nodePosition.y};var sourceTranslation=this.body.view.translation;var targetTranslation={x:sourceTranslation.x+distanceFromCenter.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:sourceTranslation.y+distanceFromCenter.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=targetTranslation}},{key:\"releaseNode\",value:function releaseNode(){if(this.lockedOnNodeId!==undefined&&this.viewFunction!==undefined){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.lockedOnNodeId=undefined;this.lockedOnNodeOffset=undefined}}},{key:\"_transitionRedraw\",value:function _transitionRedraw(){var finished=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;this.easingTime+=this.animationSpeed;this.easingTime=finished===true?1:this.easingTime;var progress=util.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*progress;this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*progress,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*progress};if(this.easingTime>=1){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.easingTime=0;if(this.lockedOnNodeId!=undefined){this.viewFunction=this._lockedRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction)}this.body.emitter.emit(\"animationFinished\")}}},{key:\"getScale\",value:function getScale(){return this.body.view.scale}},{key:\"getViewPosition\",value:function getViewPosition(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]);return View}();exports[\"default\"]=View},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NavigationHandler=__webpack_require__(233)[\"default\"];var Popup=__webpack_require__(104)[\"default\"];var InteractionHandler=function(){function InteractionHandler(body,canvas,selectionHandler){(0,_classCallCheck3[\"default\"])(this,InteractionHandler);this.body=body;this.canvas=canvas;this.selectionHandler=selectionHandler;this.navigationHandler=new NavigationHandler(body,canvas);this.body.eventListeners.onTap=this.onTap.bind(this);this.body.eventListeners.onTouch=this.onTouch.bind(this);this.body.eventListeners.onDoubleTap=this.onDoubleTap.bind(this);this.body.eventListeners.onHold=this.onHold.bind(this);this.body.eventListeners.onDragStart=this.onDragStart.bind(this);this.body.eventListeners.onDrag=this.onDrag.bind(this);this.body.eventListeners.onDragEnd=this.onDragEnd.bind(this);this.body.eventListeners.onMouseWheel=this.onMouseWheel.bind(this);this.body.eventListeners.onPinch=this.onPinch.bind(this);this.body.eventListeners.onMouseMove=this.onMouseMove.bind(this);this.body.eventListeners.onRelease=this.onRelease.bind(this);this.body.eventListeners.onContext=this.onContext.bind(this);this.touchTime=0;this.drag={};this.pinch={};this.popup=undefined;this.popupObj=undefined;this.popupTimer=undefined;this.body.functions.getPointer=this.getPointer.bind(this);this.options={};this.defaultOptions={dragNodes:true,dragView:true,hover:false,keyboard:{enabled:false,speed:{x:10,y:10,zoom:.02},bindToWindow:true},navigationButtons:false,tooltipDelay:300,zoomView:true};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(InteractionHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"destroy\",function(){clearTimeout(_this.popupTimer);delete _this.body.functions.getPointer})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"hideEdgesOnDrag\",\"hideNodesOnDrag\",\"keyboard\",\"multiselect\",\"selectable\",\"selectConnectedEdges\"];util.selectiveNotDeepExtend(fields,this.options,options);util.mergeOptions(this.options,options,\"keyboard\");if(options.tooltip){util.extend(this.options.tooltip,options.tooltip);if(options.tooltip.color){this.options.tooltip.color=util.parseColor(options.tooltip.color)}}}this.navigationHandler.setOptions(this.options)}},{key:\"getPointer\",value:function getPointer(touch){return{x:touch.x-util.getAbsoluteLeft(this.canvas.frame.canvas),y:touch.y-util.getAbsoluteTop(this.canvas.frame.canvas)}}},{key:\"onTouch\",value:function onTouch(event){if((new Date).valueOf()-this.touchTime>50){this.drag.pointer=this.getPointer(event.center);this.drag.pinched=false;this.pinch.scale=this.body.view.scale;this.touchTime=(new Date).valueOf()}}},{key:\"onTap\",value:function onTap(event){var pointer=this.getPointer(event.center);var multiselect=this.selectionHandler.options.multiselect&&(event.changedPointers[0].ctrlKey||event.changedPointers[0].metaKey);this.checkSelectionChanges(pointer,event,multiselect);this.selectionHandler._generateClickEvent(\"click\",event,pointer)}},{key:\"onDoubleTap\",value:function onDoubleTap(event){var pointer=this.getPointer(event.center);this.selectionHandler._generateClickEvent(\"doubleClick\",event,pointer)}},{key:\"onHold\",value:function onHold(event){var pointer=this.getPointer(event.center);var multiselect=this.selectionHandler.options.multiselect;this.checkSelectionChanges(pointer,event,multiselect);this.selectionHandler._generateClickEvent(\"click\",event,pointer);this.selectionHandler._generateClickEvent(\"hold\",event,pointer)}},{key:\"onRelease\",value:function onRelease(event){if((new Date).valueOf()-this.touchTime>10){var pointer=this.getPointer(event.center);this.selectionHandler._generateClickEvent(\"release\",event,pointer);this.touchTime=(new Date).valueOf()}}},{key:\"onContext\",value:function onContext(event){var pointer=this.getPointer({x:event.clientX,y:event.clientY});this.selectionHandler._generateClickEvent(\"oncontext\",event,pointer)}},{key:\"checkSelectionChanges\",value:function checkSelectionChanges(pointer,event){var add=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var previousSelection=this.selectionHandler.getSelection();var selected=false;if(add===true){selected=this.selectionHandler.selectAdditionalOnPoint(pointer)}else{selected=this.selectionHandler.selectOnPoint(pointer)}var currentSelection=this.selectionHandler.getSelection();var deselectedItems=this._determineDifference(previousSelection,currentSelection);var selectedItems=this._determineDifference(currentSelection,previousSelection);if(deselectedItems.edges.length>0){this.selectionHandler._generateClickEvent(\"deselectEdge\",event,pointer,previousSelection);selected=true}if(deselectedItems.nodes.length>0){this.selectionHandler._generateClickEvent(\"deselectNode\",event,pointer,previousSelection);selected=true}if(selectedItems.nodes.length>0){this.selectionHandler._generateClickEvent(\"selectNode\",event,pointer);selected=true}if(selectedItems.edges.length>0){this.selectionHandler._generateClickEvent(\"selectEdge\",event,pointer);selected=true}if(selected===true){this.selectionHandler._generateClickEvent(\"select\",event,pointer)}}},{key:\"_determineDifference\",value:function _determineDifference(firstSet,secondSet){var arrayDiff=function arrayDiff(firstArr,secondArr){var result=[];for(var i=0;i<firstArr.length;i++){var value=firstArr[i];if(secondArr.indexOf(value)===-1){result.push(value)}}return result};return{nodes:arrayDiff(firstSet.nodes,secondSet.nodes),edges:arrayDiff(firstSet.edges,secondSet.edges)}}},{key:\"onDragStart\",value:function onDragStart(event){if(this.drag.pointer===undefined){this.onTouch(event)}var node=this.selectionHandler.getNodeAt(this.drag.pointer);this.drag.dragging=true;this.drag.selection=[];this.drag.translation=util.extend({},this.body.view.translation);this.drag.nodeId=undefined;if(node!==undefined&&this.options.dragNodes===true){this.drag.nodeId=node.id;if(node.isSelected()===false){this.selectionHandler.unselectAll();this.selectionHandler.selectObject(node)}this.selectionHandler._generateClickEvent(\"dragStart\",event,this.drag.pointer);var selection=this.selectionHandler.selectionObj.nodes;for(var nodeId in selection){if(selection.hasOwnProperty(nodeId)){var object=selection[nodeId];var s={id:object.id,node:object,x:object.x,y:object.y,xFixed:object.options.fixed.x,yFixed:object.options.fixed.y};object.options.fixed.x=true;object.options.fixed.y=true;this.drag.selection.push(s)}}}else{this.selectionHandler._generateClickEvent(\"dragStart\",event,this.drag.pointer,undefined,true)}}},{key:\"onDrag\",value:function onDrag(event){var _this2=this;if(this.drag.pinched===true){return}this.body.emitter.emit(\"unlockNode\");var pointer=this.getPointer(event.center);var selection=this.drag.selection;if(selection&&selection.length&&this.options.dragNodes===true){this.selectionHandler._generateClickEvent(\"dragging\",event,pointer);var deltaX=pointer.x-this.drag.pointer.x;var deltaY=pointer.y-this.drag.pointer.y;selection.forEach(function(selection){var node=selection.node;if(selection.xFixed===false){node.x=_this2.canvas._XconvertDOMtoCanvas(_this2.canvas._XconvertCanvasToDOM(selection.x)+deltaX)}if(selection.yFixed===false){node.y=_this2.canvas._YconvertDOMtoCanvas(_this2.canvas._YconvertCanvasToDOM(selection.y)+deltaY)}});this.body.emitter.emit(\"startSimulation\")}else{if(this.options.dragView===true){this.selectionHandler._generateClickEvent(\"dragging\",event,pointer,undefined,true);if(this.drag.pointer===undefined){this.onDragStart(event);return}var diffX=pointer.x-this.drag.pointer.x;var diffY=pointer.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+diffX,y:this.drag.translation.y+diffY};this.body.emitter.emit(\"_requestRedraw\")}}}},{key:\"onDragEnd\",value:function onDragEnd(event){this.drag.dragging=false;var selection=this.drag.selection;if(selection&&selection.length){selection.forEach(function(s){s.node.options.fixed.x=s.xFixed;s.node.options.fixed.y=s.yFixed});this.selectionHandler._generateClickEvent(\"dragEnd\",event,this.getPointer(event.center));this.body.emitter.emit(\"startSimulation\")}else{this.selectionHandler._generateClickEvent(\"dragEnd\",event,this.getPointer(event.center),undefined,true);this.body.emitter.emit(\"_requestRedraw\")}}},{key:\"onPinch\",value:function onPinch(event){var pointer=this.getPointer(event.center);this.drag.pinched=true;if(this.pinch[\"scale\"]===undefined){this.pinch.scale=1}var scale=this.pinch.scale*event.scale;this.zoom(scale,pointer)}},{key:\"zoom\",value:function zoom(scale,pointer){if(this.options.zoomView===true){var scaleOld=this.body.view.scale;if(scale<1e-5){scale=1e-5}if(scale>10){scale=10}var preScaleDragPointer=undefined;if(this.drag!==undefined){if(this.drag.dragging===true){preScaleDragPointer=this.canvas.DOMtoCanvas(this.drag.pointer)}}var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*pointer.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*pointer.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};if(preScaleDragPointer!=undefined){var postScaleDragPointer=this.canvas.canvasToDOM(preScaleDragPointer);this.drag.pointer.x=postScaleDragPointer.x;this.drag.pointer.y=postScaleDragPointer.y}this.body.emitter.emit(\"_requestRedraw\");if(scaleOld<scale){this.body.emitter.emit(\"zoom\",{direction:\"+\",scale:this.body.view.scale,pointer:pointer})}else{this.body.emitter.emit(\"zoom\",{direction:\"-\",scale:this.body.view.scale,pointer:pointer})}}}},{key:\"onMouseWheel\",value:function onMouseWheel(event){if(this.options.zoomView===true){var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(delta!==0){var scale=this.body.view.scale;var zoom=delta/10;if(delta<0){zoom=zoom/(1-zoom)}scale*=1+zoom;var pointer=this.getPointer({x:event.clientX,y:event.clientY});this.zoom(scale,pointer)}event.preventDefault()}}},{key:\"onMouseMove\",value:function onMouseMove(event){var _this3=this;var pointer=this.getPointer({x:event.clientX,y:event.clientY});var popupVisible=false;if(this.popup!==undefined){if(this.popup.hidden===false){this._checkHidePopup(pointer)}if(this.popup.hidden===false){popupVisible=true;this.popup.setPosition(pointer.x+3,pointer.y-5);this.popup.show()}}if(this.options.keyboard.bindToWindow===false&&this.options.keyboard.enabled===true){this.canvas.frame.focus()}if(popupVisible===false){if(this.popupTimer!==undefined){clearInterval(this.popupTimer);this.popupTimer=undefined}if(!this.drag.dragging){this.popupTimer=setTimeout(function(){return _this3._checkShowPopup(pointer)},this.options.tooltipDelay)}}if(this.options.hover===true){this.selectionHandler.hoverObject(event,pointer)}}},{key:\"_checkShowPopup\",value:function _checkShowPopup(pointer){var x=this.canvas._XconvertDOMtoCanvas(pointer.x);var y=this.canvas._YconvertDOMtoCanvas(pointer.y);var pointerObj={left:x,top:y,right:x,bottom:y};var previousPopupObjId=this.popupObj===undefined?undefined:this.popupObj.id;var nodeUnderCursor=false;var popupType=\"node\";if(this.popupObj===undefined){var nodeIndices=this.body.nodeIndices;var nodes=this.body.nodes;var node=void 0;var overlappingNodes=[];for(var i=0;i<nodeIndices.length;i++){node=nodes[nodeIndices[i]];if(node.isOverlappingWith(pointerObj)===true){if(node.getTitle()!==undefined){overlappingNodes.push(nodeIndices[i])}}}if(overlappingNodes.length>0){this.popupObj=nodes[overlappingNodes[overlappingNodes.length-1]];nodeUnderCursor=true}}if(this.popupObj===undefined&&nodeUnderCursor===false){var edgeIndices=this.body.edgeIndices;var edges=this.body.edges;var edge=void 0;var overlappingEdges=[];for(var _i=0;_i<edgeIndices.length;_i++){edge=edges[edgeIndices[_i]];if(edge.isOverlappingWith(pointerObj)===true){if(edge.connected===true&&edge.getTitle()!==undefined){overlappingEdges.push(edgeIndices[_i])}}}if(overlappingEdges.length>0){this.popupObj=edges[overlappingEdges[overlappingEdges.length-1]];popupType=\"edge\"}}if(this.popupObj!==undefined){if(this.popupObj.id!==previousPopupObjId){if(this.popup===undefined){this.popup=new Popup(this.canvas.frame)}this.popup.popupTargetType=popupType;this.popup.popupTargetId=this.popupObj.id;this.popup.setPosition(pointer.x+3,pointer.y-5);this.popup.setText(this.popupObj.getTitle());this.popup.show();this.body.emitter.emit(\"showPopup\",this.popupObj.id)}}else{if(this.popup!==undefined){this.popup.hide();this.body.emitter.emit(\"hidePopup\")}}}},{key:\"_checkHidePopup\",value:function _checkHidePopup(pointer){var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var stillOnObj=false;if(this.popup.popupTargetType===\"node\"){if(this.body.nodes[this.popup.popupTargetId]!==undefined){stillOnObj=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(pointerObj);if(stillOnObj===true){var overNode=this.selectionHandler.getNodeAt(pointer);stillOnObj=overNode===undefined?false:overNode.id===this.popup.popupTargetId}}}else{if(this.selectionHandler.getNodeAt(pointer)===undefined){if(this.body.edges[this.popup.popupTargetId]!==undefined){stillOnObj=this.body.edges[this.popup.popupTargetId].isOverlappingWith(pointerObj)}}}if(stillOnObj===false){this.popupObj=undefined;this.popup.hide();this.body.emitter.emit(\"hidePopup\")}}}]);return InteractionHandler}();exports[\"default\"]=InteractionHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var keycharm=__webpack_require__(35);var NavigationHandler=function(){function NavigationHandler(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,NavigationHandler);this.body=body;this.canvas=canvas;this.iconsCreated=false;this.navigationHammers=[];this.boundFunctions={};this.touchTime=0;this.activated=false;this.body.emitter.on(\"activate\",function(){_this.activated=true;_this.configureKeyboardBindings()});this.body.emitter.on(\"deactivate\",function(){_this.activated=false;_this.configureKeyboardBindings()});this.body.emitter.on(\"destroy\",function(){if(_this.keycharm!==undefined){_this.keycharm.destroy()}});this.options={}}(0,_createClass3[\"default\"])(NavigationHandler,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){this.options=options;this.create()}}},{key:\"create\",value:function create(){if(this.options.navigationButtons===true){if(this.iconsCreated===false){this.loadNavigationElements()}}else if(this.iconsCreated===true){this.cleanNavigation()}this.configureKeyboardBindings()}},{key:\"cleanNavigation\",value:function cleanNavigation(){if(this.navigationHammers.length!=0){for(var i=0;i<this.navigationHammers.length;i++){this.navigationHammers[i].destroy()}this.navigationHammers=[]}if(this.navigationDOM&&this.navigationDOM[\"wrapper\"]&&this.navigationDOM[\"wrapper\"].parentNode){this.navigationDOM[\"wrapper\"].parentNode.removeChild(this.navigationDOM[\"wrapper\"])}this.iconsCreated=false}},{key:\"loadNavigationElements\",value:function loadNavigationElements(){var _this2=this;this.cleanNavigation();this.navigationDOM={};var navigationDivs=[\"up\",\"down\",\"left\",\"right\",\"zoomIn\",\"zoomOut\",\"zoomExtends\"];var navigationDivActions=[\"_moveUp\",\"_moveDown\",\"_moveLeft\",\"_moveRight\",\"_zoomIn\",\"_zoomOut\",\"_fit\"];this.navigationDOM[\"wrapper\"]=document.createElement(\"div\");this.navigationDOM[\"wrapper\"].className=\"vis-navigation\";this.canvas.frame.appendChild(this.navigationDOM[\"wrapper\"]);for(var i=0;i<navigationDivs.length;i++){this.navigationDOM[navigationDivs[i]]=document.createElement(\"div\");this.navigationDOM[navigationDivs[i]].className=\"vis-button vis-\"+navigationDivs[i];this.navigationDOM[\"wrapper\"].appendChild(this.navigationDOM[navigationDivs[i]]);var hammer=new Hammer(this.navigationDOM[navigationDivs[i]]);if(navigationDivActions[i]===\"_fit\"){hammerUtil.onTouch(hammer,this._fit.bind(this))}else{hammerUtil.onTouch(hammer,this.bindToRedraw.bind(this,navigationDivActions[i]))}this.navigationHammers.push(hammer)}var hammerFrame=new Hammer(this.canvas.frame);hammerUtil.onRelease(hammerFrame,function(){_this2._stopMovement()});this.navigationHammers.push(hammerFrame);this.iconsCreated=true}},{key:\"bindToRedraw\",value:function bindToRedraw(action){if(this.boundFunctions[action]===undefined){this.boundFunctions[action]=this[action].bind(this);this.body.emitter.on(\"initRedraw\",this.boundFunctions[action]);this.body.emitter.emit(\"_startRendering\")}}},{key:\"unbindFromRedraw\",value:function unbindFromRedraw(action){if(this.boundFunctions[action]!==undefined){this.body.emitter.off(\"initRedraw\",this.boundFunctions[action]);this.body.emitter.emit(\"_stopRendering\");delete this.boundFunctions[action]}}},{key:\"_fit\",value:function _fit(){if((new Date).valueOf()-this.touchTime>700){this.body.emitter.emit(\"fit\",{duration:700});this.touchTime=(new Date).valueOf()}}},{key:\"_stopMovement\",value:function _stopMovement(){for(var boundAction in this.boundFunctions){if(this.boundFunctions.hasOwnProperty(boundAction)){this.body.emitter.off(\"initRedraw\",this.boundFunctions[boundAction]);this.body.emitter.emit(\"_stopRendering\")}}this.boundFunctions={}}},{key:\"_moveUp\",value:function _moveUp(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:\"_moveDown\",value:function _moveDown(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:\"_moveLeft\",value:function _moveLeft(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:\"_moveRight\",value:function _moveRight(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:\"_zoomIn\",value:function _zoomIn(){var scaleOld=this.body.view.scale;var scale=this.body.view.scale*(1+this.options.keyboard.speed.zoom);var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*this.canvas.canvasViewCenter.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*this.canvas.canvasViewCenter.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};this.body.emitter.emit(\"zoom\",{direction:\"+\",scale:this.body.view.scale,pointer:null})}},{key:\"_zoomOut\",value:function _zoomOut(){var scaleOld=this.body.view.scale;var scale=this.body.view.scale/(1+this.options.keyboard.speed.zoom);var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*this.canvas.canvasViewCenter.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*this.canvas.canvasViewCenter.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};this.body.emitter.emit(\"zoom\",{direction:\"-\",scale:this.body.view.scale,pointer:null})}},{key:\"configureKeyboardBindings\",value:function configureKeyboardBindings(){var _this3=this;if(this.keycharm!==undefined){this.keycharm.destroy()}if(this.options.keyboard.enabled===true){if(this.options.keyboard.bindToWindow===true){this.keycharm=keycharm({container:window,preventDefault:true})}else{this.keycharm=keycharm({container:this.canvas.frame,preventDefault:true})}this.keycharm.reset();if(this.activated===true){this.keycharm.bind(\"up\",function(){_this3.bindToRedraw(\"_moveUp\")},\"keydown\");this.keycharm.bind(\"down\",function(){_this3.bindToRedraw(\"_moveDown\")},\"keydown\");this.keycharm.bind(\"left\",function(){_this3.bindToRedraw(\"_moveLeft\")},\"keydown\");this.keycharm.bind(\"right\",function(){_this3.bindToRedraw(\"_moveRight\")},\"keydown\");this.keycharm.bind(\"=\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"num+\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"num-\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"-\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"[\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"]\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"pageup\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"pagedown\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"up\",function(){_this3.unbindFromRedraw(\"_moveUp\")},\"keyup\");this.keycharm.bind(\"down\",function(){_this3.unbindFromRedraw(\"_moveDown\")},\"keyup\");this.keycharm.bind(\"left\",function(){_this3.unbindFromRedraw(\"_moveLeft\")},\"keyup\");this.keycharm.bind(\"right\",function(){_this3.unbindFromRedraw(\"_moveRight\")},\"keyup\");this.keycharm.bind(\"=\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"num+\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"num-\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"-\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"[\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"]\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"pageup\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"pagedown\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\")}}}}]);return NavigationHandler}();exports[\"default\"]=NavigationHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Node=__webpack_require__(47)[\"default\"];var Edge=__webpack_require__(74)[\"default\"];var util=__webpack_require__(2);var SelectionHandler=function(){function SelectionHandler(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,SelectionHandler);this.body=body;this.canvas=canvas;this.selectionObj={nodes:[],edges:[]};this.hoverObj={nodes:{},edges:{}};this.options={};this.defaultOptions={multiselect:false,selectable:true,selectConnectedEdges:true,hoverConnectedEdges:true};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"_dataChanged\",function(){_this.updateSelection()})}(0,_createClass3[\"default\"])(SelectionHandler,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"multiselect\",\"hoverConnectedEdges\",\"selectable\",\"selectConnectedEdges\"];util.selectiveDeepExtend(fields,this.options,options)}}},{key:\"selectOnPoint\",value:function selectOnPoint(pointer){var selected=false;if(this.options.selectable===true){var obj=this.getNodeAt(pointer)||this.getEdgeAt(pointer);this.unselectAll();if(obj!==undefined){selected=this.selectObject(obj)}this.body.emitter.emit(\"_requestRedraw\")}return selected}},{key:\"selectAdditionalOnPoint\",value:function selectAdditionalOnPoint(pointer){var selectionChanged=false;if(this.options.selectable===true){var obj=this.getNodeAt(pointer)||this.getEdgeAt(pointer);if(obj!==undefined){selectionChanged=true;if(obj.isSelected()===true){this.deselectObject(obj)}else{this.selectObject(obj)}this.body.emitter.emit(\"_requestRedraw\")}}return selectionChanged}},{key:\"_initBaseEvent\",value:function _initBaseEvent(event,pointer){var properties={};properties[\"pointer\"]={DOM:{\nx:pointer.x,y:pointer.y},canvas:this.canvas.DOMtoCanvas(pointer)};properties[\"event\"]=event;return properties}},{key:\"_generateClickEvent\",value:function _generateClickEvent(eventType,event,pointer,oldSelection){var emptySelection=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;var properties=this._initBaseEvent(event,pointer);if(emptySelection===true){properties.nodes=[];properties.edges=[]}else{var tmp=this.getSelection();properties.nodes=tmp.nodes;properties.edges=tmp.edges}if(oldSelection!==undefined){properties[\"previousSelection\"]=oldSelection}if(eventType==\"click\"){properties.items=this.getClickedItems(pointer)}this.body.emitter.emit(eventType,properties)}},{key:\"selectObject\",value:function selectObject(obj){var highlightEdges=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.options.selectConnectedEdges;if(obj!==undefined){if(obj instanceof Node){if(highlightEdges===true){this._selectConnectedEdges(obj)}}obj.select();this._addToSelection(obj);return true}return false}},{key:\"deselectObject\",value:function deselectObject(obj){if(obj.isSelected()===true){obj.selected=false;this._removeFromSelection(obj)}}},{key:\"_getAllNodesOverlappingWith\",value:function _getAllNodesOverlappingWith(object){var overlappingNodes=[];var nodes=this.body.nodes;for(var i=0;i<this.body.nodeIndices.length;i++){var nodeId=this.body.nodeIndices[i];if(nodes[nodeId].isOverlappingWith(object)){overlappingNodes.push(nodeId)}}return overlappingNodes}},{key:\"_pointerToPositionObject\",value:function _pointerToPositionObject(pointer){var canvasPos=this.canvas.DOMtoCanvas(pointer);return{left:canvasPos.x-1,top:canvasPos.y+1,right:canvasPos.x+1,bottom:canvasPos.y-1}}},{key:\"getNodeAt\",value:function getNodeAt(pointer){var returnNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var positionObject=this._pointerToPositionObject(pointer);var overlappingNodes=this._getAllNodesOverlappingWith(positionObject);if(overlappingNodes.length>0){if(returnNode===true){return this.body.nodes[overlappingNodes[overlappingNodes.length-1]]}else{return overlappingNodes[overlappingNodes.length-1]}}else{return undefined}}},{key:\"_getEdgesOverlappingWith\",value:function _getEdgesOverlappingWith(object,overlappingEdges){var edges=this.body.edges;for(var i=0;i<this.body.edgeIndices.length;i++){var edgeId=this.body.edgeIndices[i];if(edges[edgeId].isOverlappingWith(object)){overlappingEdges.push(edgeId)}}}},{key:\"_getAllEdgesOverlappingWith\",value:function _getAllEdgesOverlappingWith(object){var overlappingEdges=[];this._getEdgesOverlappingWith(object,overlappingEdges);return overlappingEdges}},{key:\"getEdgeAt\",value:function getEdgeAt(pointer){var returnEdge=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var canvasPos=this.canvas.DOMtoCanvas(pointer);var mindist=10;var overlappingEdge=null;var edges=this.body.edges;for(var i=0;i<this.body.edgeIndices.length;i++){var edgeId=this.body.edgeIndices[i];var edge=edges[edgeId];if(edge.connected){var xFrom=edge.from.x;var yFrom=edge.from.y;var xTo=edge.to.x;var yTo=edge.to.y;var dist=edge.edgeType.getDistanceToEdge(xFrom,yFrom,xTo,yTo,canvasPos.x,canvasPos.y);if(dist<mindist){overlappingEdge=edgeId;mindist=dist}}}if(overlappingEdge!==null){if(returnEdge===true){return this.body.edges[overlappingEdge]}else{return overlappingEdge}}else{return undefined}}},{key:\"_addToSelection\",value:function _addToSelection(obj){if(obj instanceof Node){this.selectionObj.nodes[obj.id]=obj}else{this.selectionObj.edges[obj.id]=obj}}},{key:\"_addToHover\",value:function _addToHover(obj){if(obj instanceof Node){this.hoverObj.nodes[obj.id]=obj}else{this.hoverObj.edges[obj.id]=obj}}},{key:\"_removeFromSelection\",value:function _removeFromSelection(obj){if(obj instanceof Node){delete this.selectionObj.nodes[obj.id];this._unselectConnectedEdges(obj)}else{delete this.selectionObj.edges[obj.id]}}},{key:\"unselectAll\",value:function unselectAll(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){this.selectionObj.nodes[nodeId].unselect()}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){this.selectionObj.edges[edgeId].unselect()}}this.selectionObj={nodes:{},edges:{}}}},{key:\"_getSelectedNodeCount\",value:function _getSelectedNodeCount(){var count=0;for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){count+=1}}return count}},{key:\"_getSelectedNode\",value:function _getSelectedNode(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){return this.selectionObj.nodes[nodeId]}}return undefined}},{key:\"_getSelectedEdge\",value:function _getSelectedEdge(){for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){return this.selectionObj.edges[edgeId]}}return undefined}},{key:\"_getSelectedEdgeCount\",value:function _getSelectedEdgeCount(){var count=0;for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){count+=1}}return count}},{key:\"_getSelectedObjectCount\",value:function _getSelectedObjectCount(){var count=0;for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){count+=1}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){count+=1}}return count}},{key:\"_selectionIsEmpty\",value:function _selectionIsEmpty(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){return false}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){return false}}return true}},{key:\"_clusterInSelection\",value:function _clusterInSelection(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){if(this.selectionObj.nodes[nodeId].clusterSize>1){return true}}}return false}},{key:\"_selectConnectedEdges\",value:function _selectConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.select();this._addToSelection(edge)}}},{key:\"_hoverConnectedEdges\",value:function _hoverConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.hover=true;this._addToHover(edge)}}},{key:\"_unselectConnectedEdges\",value:function _unselectConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.unselect();this._removeFromSelection(edge)}}},{key:\"emitBlurEvent\",value:function emitBlurEvent(event,pointer,object){var properties=this._initBaseEvent(event,pointer);if(object.hover===true){object.hover=false;if(object instanceof Node){properties.node=object.id;this.body.emitter.emit(\"blurNode\",properties)}else{properties.edge=object.id;this.body.emitter.emit(\"blurEdge\",properties)}}}},{key:\"emitHoverEvent\",value:function emitHoverEvent(event,pointer,object){var properties=this._initBaseEvent(event,pointer);var hoverChanged=false;if(object.hover===false){object.hover=true;this._addToHover(object);hoverChanged=true;if(object instanceof Node){properties.node=object.id;this.body.emitter.emit(\"hoverNode\",properties)}else{properties.edge=object.id;this.body.emitter.emit(\"hoverEdge\",properties)}}return hoverChanged}},{key:\"hoverObject\",value:function hoverObject(event,pointer){var object=this.getNodeAt(pointer);if(object===undefined){object=this.getEdgeAt(pointer)}var hoverChanged=false;for(var nodeId in this.hoverObj.nodes){if(this.hoverObj.nodes.hasOwnProperty(nodeId)){if(object===undefined||object instanceof Node&&object.id!=nodeId||object instanceof Edge){this.emitBlurEvent(event,pointer,this.hoverObj.nodes[nodeId]);delete this.hoverObj.nodes[nodeId];hoverChanged=true}}}for(var edgeId in this.hoverObj.edges){if(this.hoverObj.edges.hasOwnProperty(edgeId)){if(hoverChanged===true){this.hoverObj.edges[edgeId].hover=false;delete this.hoverObj.edges[edgeId]}else if(object===undefined||object instanceof Edge&&object.id!=edgeId||object instanceof Node&&!object.hover){this.emitBlurEvent(event,pointer,this.hoverObj.edges[edgeId]);delete this.hoverObj.edges[edgeId];hoverChanged=true}}}if(object!==undefined){hoverChanged=hoverChanged||this.emitHoverEvent(event,pointer,object);if(object instanceof Node&&this.options.hoverConnectedEdges===true){this._hoverConnectedEdges(object)}}if(hoverChanged===true){this.body.emitter.emit(\"_requestRedraw\")}}},{key:\"getSelection\",value:function getSelection(){var nodeIds=this.getSelectedNodes();var edgeIds=this.getSelectedEdges();return{nodes:nodeIds,edges:edgeIds}}},{key:\"getSelectedNodes\",value:function getSelectedNodes(){var idArray=[];if(this.options.selectable===true){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){idArray.push(this.selectionObj.nodes[nodeId].id)}}}return idArray}},{key:\"getSelectedEdges\",value:function getSelectedEdges(){var idArray=[];if(this.options.selectable===true){for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){idArray.push(this.selectionObj.edges[edgeId].id)}}}return idArray}},{key:\"setSelection\",value:function setSelection(selection){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=void 0,id=void 0;if(!selection||!selection.nodes&&!selection.edges)throw\"Selection must be an object with nodes and/or edges properties\";if(options.unselectAll||options.unselectAll===undefined){this.unselectAll()}if(selection.nodes){for(i=0;i<selection.nodes.length;i++){id=selection.nodes[i];var node=this.body.nodes[id];if(!node){throw new RangeError('Node with id \"'+id+'\" not found')}this.selectObject(node,options.highlightEdges)}}if(selection.edges){for(i=0;i<selection.edges.length;i++){id=selection.edges[i];var edge=this.body.edges[id];if(!edge){throw new RangeError('Edge with id \"'+id+'\" not found')}this.selectObject(edge)}}this.body.emitter.emit(\"_requestRedraw\")}},{key:\"selectNodes\",value:function selectNodes(selection){var highlightEdges=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(!selection||selection.length===undefined)throw\"Selection must be an array with ids\";this.setSelection({nodes:selection},{highlightEdges:highlightEdges})}},{key:\"selectEdges\",value:function selectEdges(selection){if(!selection||selection.length===undefined)throw\"Selection must be an array with ids\";this.setSelection({edges:selection})}},{key:\"updateSelection\",value:function updateSelection(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){if(!this.body.nodes.hasOwnProperty(nodeId)){delete this.selectionObj.nodes[nodeId]}}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){if(!this.body.edges.hasOwnProperty(edgeId)){delete this.selectionObj.edges[edgeId]}}}}},{key:\"getClickedItems\",value:function getClickedItems(pointer){var point=this.canvas.DOMtoCanvas(pointer);var items=[];var nodeIndices=this.body.nodeIndices;var nodes=this.body.nodes;for(var i=nodeIndices.length-1;i>=0;i--){var node=nodes[nodeIndices[i]];var ret=node.getItemsOnPoint(point);items.push.apply(items,ret)}var edgeIndices=this.body.edgeIndices;var edges=this.body.edges;for(var _i=edgeIndices.length-1;_i>=0;_i--){var edge=edges[edgeIndices[_i]];var _ret=edge.getItemsOnPoint(point);items.push.apply(items,_ret)}return items}}]);return SelectionHandler}();exports[\"default\"]=SelectionHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var _require=__webpack_require__(236),HorizontalStrategy=_require.HorizontalStrategy,VerticalStrategy=_require.VerticalStrategy;var HierarchicalStatus=function(){function HierarchicalStatus(){(0,_classCallCheck3[\"default\"])(this,HierarchicalStatus);this.childrenReference={};this.parentReference={};this.trees={};this.distributionOrdering={};this.levels={};this.distributionIndex={};this.isTree=false;this.treeIndex=-1}(0,_createClass3[\"default\"])(HierarchicalStatus,[{key:\"addRelation\",value:function addRelation(parentNodeId,childNodeId){if(this.childrenReference[parentNodeId]===undefined){this.childrenReference[parentNodeId]=[]}this.childrenReference[parentNodeId].push(childNodeId);if(this.parentReference[childNodeId]===undefined){this.parentReference[childNodeId]=[]}this.parentReference[childNodeId].push(parentNodeId)}},{key:\"checkIfTree\",value:function checkIfTree(){for(var i in this.parentReference){if(this.parentReference[i].length>1){this.isTree=false;return}}this.isTree=true}},{key:\"numTrees\",value:function numTrees(){return this.treeIndex+1}},{key:\"setTreeIndex\",value:function setTreeIndex(node,treeId){if(treeId===undefined)return;if(this.trees[node.id]===undefined){this.trees[node.id]=treeId;this.treeIndex=Math.max(treeId,this.treeIndex)}}},{key:\"ensureLevel\",value:function ensureLevel(nodeId){if(this.levels[nodeId]===undefined){this.levels[nodeId]=0}}},{key:\"getMaxLevel\",value:function getMaxLevel(nodeId){var _this=this;var accumulator={};var _getMaxLevel=function _getMaxLevel(nodeId){if(accumulator[nodeId]!==undefined){return accumulator[nodeId]}var level=_this.levels[nodeId];if(_this.childrenReference[nodeId]){var children=_this.childrenReference[nodeId];if(children.length>0){for(var i=0;i<children.length;i++){level=Math.max(level,_getMaxLevel(children[i]))}}}accumulator[nodeId]=level;return level};return _getMaxLevel(nodeId)}},{key:\"levelDownstream\",value:function levelDownstream(nodeA,nodeB){if(this.levels[nodeB.id]===undefined){if(this.levels[nodeA.id]===undefined){this.levels[nodeA.id]=0}this.levels[nodeB.id]=this.levels[nodeA.id]+1}}},{key:\"setMinLevelToZero\",value:function setMinLevelToZero(nodes){var minLevel=1e9;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(this.levels[nodeId]!==undefined){minLevel=Math.min(this.levels[nodeId],minLevel)}}}for(var _nodeId in nodes){if(nodes.hasOwnProperty(_nodeId)){if(this.levels[_nodeId]!==undefined){this.levels[_nodeId]-=minLevel}}}}},{key:\"getTreeSize\",value:function getTreeSize(nodes,index){var min_x=1e9;var max_x=-1e9;var min_y=1e9;var max_y=-1e9;for(var nodeId in this.trees){if(this.trees.hasOwnProperty(nodeId)){if(this.trees[nodeId]===index){var node=nodes[nodeId];min_x=Math.min(node.x,min_x);max_x=Math.max(node.x,max_x);min_y=Math.min(node.y,min_y);max_y=Math.max(node.y,max_y)}}}return{min_x:min_x,max_x:max_x,min_y:min_y,max_y:max_y}}},{key:\"hasSameParent\",value:function hasSameParent(node1,node2){var parents1=this.parentReference[node1.id];var parents2=this.parentReference[node2.id];if(parents1===undefined||parents2===undefined){return false}for(var i=0;i<parents1.length;i++){for(var j=0;j<parents2.length;j++){if(parents1[i]==parents2[j]){return true}}}return false}},{key:\"inSameSubNetwork\",value:function inSameSubNetwork(node1,node2){return this.trees[node1.id]===this.trees[node2.id]}},{key:\"getLevels\",value:function getLevels(){return(0,_keys2[\"default\"])(this.distributionOrdering)}},{key:\"addToOrdering\",value:function addToOrdering(node,level){if(this.distributionOrdering[level]===undefined){this.distributionOrdering[level]=[]}var isPresent=false;var curLevel=this.distributionOrdering[level];for(var n in curLevel){if(curLevel[n]===node){isPresent=true;break}}if(!isPresent){this.distributionOrdering[level].push(node);this.distributionIndex[node.id]=this.distributionOrdering[level].length-1}}}]);return HierarchicalStatus}();var LayoutEngine=function(){function LayoutEngine(body){(0,_classCallCheck3[\"default\"])(this,LayoutEngine);this.body=body;this.initialRandomSeed=Math.round(Math.random()*1e6);this.randomSeed=this.initialRandomSeed;this.setPhysics=false;this.options={};this.optionsBackup={physics:{}};this.defaultOptions={randomSeed:undefined,improvedLayout:true,hierarchical:{enabled:false,levelSeparation:150,nodeSpacing:100,treeSpacing:200,blockShifting:true,edgeMinimization:true,parentCentralization:true,direction:\"UD\",sortMethod:\"hubsize\"}};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(LayoutEngine,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"_dataChanged\",function(){_this2.setupHierarchicalLayout()});this.body.emitter.on(\"_dataLoaded\",function(){_this2.layoutNetwork()});this.body.emitter.on(\"_resetHierarchicalLayout\",function(){_this2.setupHierarchicalLayout()});this.body.emitter.on(\"_adjustEdgesForHierarchicalLayout\",function(){if(_this2.options.hierarchical.enabled!==true){return}var type=_this2.direction.curveType();_this2.body.emitter.emit(\"_forceDisableDynamicCurves\",type,false)})}},{key:\"setOptions\",value:function setOptions(options,allOptions){if(options!==undefined){var hierarchical=this.options.hierarchical;var prevHierarchicalState=hierarchical.enabled;util.selectiveDeepExtend([\"randomSeed\",\"improvedLayout\"],this.options,options);util.mergeOptions(this.options,options,\"hierarchical\");if(options.randomSeed!==undefined){this.initialRandomSeed=options.randomSeed}if(hierarchical.enabled===true){if(prevHierarchicalState===true){this.body.emitter.emit(\"refresh\",true)}if(hierarchical.direction===\"RL\"||hierarchical.direction===\"DU\"){if(hierarchical.levelSeparation>0){hierarchical.levelSeparation*=-1}}else{if(hierarchical.levelSeparation<0){hierarchical.levelSeparation*=-1}}this.setDirectionStrategy();this.body.emitter.emit(\"_resetHierarchicalLayout\");return this.adaptAllOptionsForHierarchicalLayout(allOptions)}else{if(prevHierarchicalState===true){this.body.emitter.emit(\"refresh\");return util.deepExtend(allOptions,this.optionsBackup)}}}return allOptions}},{key:\"adaptAllOptionsForHierarchicalLayout\",value:function adaptAllOptionsForHierarchicalLayout(allOptions){if(this.options.hierarchical.enabled===true){var backupPhysics=this.optionsBackup.physics;if(allOptions.physics===undefined||allOptions.physics===true){allOptions.physics={enabled:backupPhysics.enabled===undefined?true:backupPhysics.enabled,solver:\"hierarchicalRepulsion\"};backupPhysics.enabled=backupPhysics.enabled===undefined?true:backupPhysics.enabled;backupPhysics.solver=backupPhysics.solver||\"barnesHut\"}else if((0,_typeof3[\"default\"])(allOptions.physics)===\"object\"){backupPhysics.enabled=allOptions.physics.enabled===undefined?true:allOptions.physics.enabled;backupPhysics.solver=allOptions.physics.solver||\"barnesHut\";allOptions.physics.solver=\"hierarchicalRepulsion\"}else if(allOptions.physics!==false){backupPhysics.solver=\"barnesHut\";allOptions.physics={solver:\"hierarchicalRepulsion\"}}var type=this.direction.curveType();if(allOptions.edges===undefined){this.optionsBackup.edges={smooth:{enabled:true,type:\"dynamic\"}};allOptions.edges={smooth:false}}else if(allOptions.edges.smooth===undefined){this.optionsBackup.edges={smooth:{enabled:true,type:\"dynamic\"}};allOptions.edges.smooth=false}else{if(typeof allOptions.edges.smooth===\"boolean\"){this.optionsBackup.edges={smooth:allOptions.edges.smooth};allOptions.edges.smooth={enabled:allOptions.edges.smooth,type:type}}else{var smooth=allOptions.edges.smooth;if(smooth.type!==undefined&&smooth.type!==\"dynamic\"){type=smooth.type}this.optionsBackup.edges={smooth:smooth.enabled===undefined?true:smooth.enabled,type:smooth.type===undefined?\"dynamic\":smooth.type,roundness:smooth.roundness===undefined?.5:smooth.roundness,forceDirection:smooth.forceDirection===undefined?false:smooth.forceDirection};allOptions.edges.smooth={enabled:smooth.enabled===undefined?true:smooth.enabled,type:type,roundness:smooth.roundness===undefined?.5:smooth.roundness,forceDirection:smooth.forceDirection===undefined?false:smooth.forceDirection}}}this.body.emitter.emit(\"_forceDisableDynamicCurves\",type)}return allOptions}},{key:\"seededRandom\",value:function seededRandom(){var x=Math.sin(this.randomSeed++)*1e4;return x-Math.floor(x)}},{key:\"positionInitially\",value:function positionInitially(nodesArray){if(this.options.hierarchical.enabled!==true){this.randomSeed=this.initialRandomSeed;var radius=nodesArray.length+50;for(var i=0;i<nodesArray.length;i++){var node=nodesArray[i];var angle=2*Math.PI*this.seededRandom();if(node.x===undefined){node.x=radius*Math.cos(angle)}if(node.y===undefined){node.y=radius*Math.sin(angle)}}}}},{key:\"layoutNetwork\",value:function layoutNetwork(){if(this.options.hierarchical.enabled!==true&&this.options.improvedLayout===true){var indices=this.body.nodeIndices;var positionDefined=0;for(var i=0;i<indices.length;i++){var node=this.body.nodes[indices[i]];if(node.predefinedPosition===true){positionDefined+=1}}if(positionDefined<.5*indices.length){var MAX_LEVELS=10;var level=0;var clusterThreshold=150;var clusterOptions={clusterNodeProperties:{shape:\"ellipse\",label:\"\",group:\"\",font:{multi:false}},clusterEdgeProperties:{label:\"\",font:{multi:false},smooth:{enabled:false}}};if(indices.length>clusterThreshold){var startLength=indices.length;while(indices.length>clusterThreshold&&level<=MAX_LEVELS){level+=1;var before=indices.length;if(level%3===0){this.body.modules.clustering.clusterBridges(clusterOptions)}else{this.body.modules.clustering.clusterOutliers(clusterOptions)}var after=indices.length;if(before==after&&level%3!==0){this._declusterAll();this.body.emitter.emit(\"_layoutFailed\");console.info(\"This network could not be positioned by this version of the improved layout algorithm.\"+\" Please disable improvedLayout for better performance.\");return}}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*startLength)})}if(level>MAX_LEVELS){console.info(\"The clustering didn't succeed within the amount of interations allowed,\"+\" progressing with partial result.\")}this.body.modules.kamadaKawai.solve(indices,this.body.edgeIndices,true);this._shiftToCenter();var offset=70;for(var _i=0;_i<indices.length;_i++){var _node=this.body.nodes[indices[_i]];if(_node.predefinedPosition===false){_node.x+=(.5-this.seededRandom())*offset;_node.y+=(.5-this.seededRandom())*offset}}this._declusterAll();this.body.emitter.emit(\"_repositionBezierNodes\")}}}},{key:\"_shiftToCenter\",value:function _shiftToCenter(){var range=NetworkUtil.getRangeCore(this.body.nodes,this.body.nodeIndices);var center=NetworkUtil.findCenter(range);for(var i=0;i<this.body.nodeIndices.length;i++){var node=this.body.nodes[this.body.nodeIndices[i]];node.x-=center.x;node.y-=center.y}}},{key:\"_declusterAll\",value:function _declusterAll(){var clustersPresent=true;while(clustersPresent===true){clustersPresent=false;for(var i=0;i<this.body.nodeIndices.length;i++){if(this.body.nodes[this.body.nodeIndices[i]].isCluster===true){clustersPresent=true;this.body.modules.clustering.openCluster(this.body.nodeIndices[i],{},false)}}if(clustersPresent===true){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"getSeed\",value:function getSeed(){return this.initialRandomSeed}},{key:\"setupHierarchicalLayout\",value:function setupHierarchicalLayout(){if(this.options.hierarchical.enabled===true&&this.body.nodeIndices.length>0){var node=void 0,nodeId=void 0;var definedLevel=false;var undefinedLevel=false;this.lastNodeOnLevel={};this.hierarchical=new HierarchicalStatus;for(nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){node=this.body.nodes[nodeId];if(node.options.level!==undefined){definedLevel=true;this.hierarchical.levels[nodeId]=node.options.level}else{undefinedLevel=true}}}if(undefinedLevel===true&&definedLevel===true){throw new Error(\"To use the hierarchical layout, nodes require either no predefined levels\"+\" or levels have to be defined for all nodes.\")}else{if(undefinedLevel===true){var sortMethod=this.options.hierarchical.sortMethod;if(sortMethod===\"hubsize\"){this._determineLevelsByHubsize()}else if(sortMethod===\"directed\"){this._determineLevelsDirected()}else if(sortMethod===\"custom\"){this._determineLevelsCustomCallback()}}for(var _nodeId2 in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId2)){this.hierarchical.ensureLevel(_nodeId2)}}var distribution=this._getDistribution();this._generateMap();this._placeNodesByHierarchy(distribution);this._condenseHierarchy();this._shiftToCenter()}}}},{key:\"_condenseHierarchy\",value:function _condenseHierarchy(){var _this3=this;var stillShifting=false;var branches={};var shiftTrees=function shiftTrees(){var treeSizes=getTreeSizes();var shiftBy=0;for(var i=0;i<treeSizes.length-1;i++){var diff=treeSizes[i].max-treeSizes[i+1].min;shiftBy+=diff+_this3.options.hierarchical.treeSpacing;shiftTree(i+1,shiftBy)}};var shiftTree=function shiftTree(index,offset){var trees=_this3.hierarchical.trees;for(var nodeId in trees){if(trees.hasOwnProperty(nodeId)){if(trees[nodeId]===index){_this3.direction.shift(nodeId,offset)}}}};var getTreeSizes=function getTreeSizes(){var treeWidths=[];for(var i=0;i<_this3.hierarchical.numTrees();i++){treeWidths.push(_this3.direction.getTreeSize(i))}return treeWidths};var getBranchNodes=function getBranchNodes(source,map){if(map[source.id]){return}map[source.id]=true;if(_this3.hierarchical.childrenReference[source.id]){var children=_this3.hierarchical.childrenReference[source.id];if(children.length>0){for(var i=0;i<children.length;i++){getBranchNodes(_this3.body.nodes[children[i]],map)}}}};var getBranchBoundary=function getBranchBoundary(branchMap){var maxLevel=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1e9;var minSpace=1e9;var maxSpace=1e9;var min=1e9;var max=-1e9;for(var branchNode in branchMap){if(branchMap.hasOwnProperty(branchNode)){var node=_this3.body.nodes[branchNode];var level=_this3.hierarchical.levels[node.id];var position=_this3.direction.getPosition(node);var _getSpaceAroundNode2=_this3._getSpaceAroundNode(node,branchMap),_getSpaceAroundNode3=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode2,2),minSpaceNode=_getSpaceAroundNode3[0],maxSpaceNode=_getSpaceAroundNode3[1];minSpace=Math.min(minSpaceNode,minSpace);maxSpace=Math.min(maxSpaceNode,maxSpace);if(level<=maxLevel){min=Math.min(position,min);max=Math.max(position,max)}}}return[min,max,minSpace,maxSpace]};var getCollisionLevel=function getCollisionLevel(node1,node2){var maxLevel1=_this3.hierarchical.getMaxLevel(node1.id);var maxLevel2=_this3.hierarchical.getMaxLevel(node2.id);return Math.min(maxLevel1,maxLevel2)};var shiftElementsCloser=function shiftElementsCloser(callback,levels,centerParents){var hier=_this3.hierarchical;for(var i=0;i<levels.length;i++){var level=levels[i];var levelNodes=hier.distributionOrdering[level];if(levelNodes.length>1){for(var j=0;j<levelNodes.length-1;j++){var node1=levelNodes[j];var node2=levelNodes[j+1];if(hier.hasSameParent(node1,node2)&&hier.inSameSubNetwork(node1,node2)){callback(node1,node2,centerParents)}}}}};var branchShiftCallback=function branchShiftCallback(node1,node2){var centerParent=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var pos1=_this3.direction.getPosition(node1);var pos2=_this3.direction.getPosition(node2);var diffAbs=Math.abs(pos2-pos1);var nodeSpacing=_this3.options.hierarchical.nodeSpacing;if(diffAbs>nodeSpacing){var branchNodes1={};var branchNodes2={};getBranchNodes(node1,branchNodes1);getBranchNodes(node2,branchNodes2);var maxLevel=getCollisionLevel(node1,node2);var branchNodeBoundary1=getBranchBoundary(branchNodes1,maxLevel);var branchNodeBoundary2=getBranchBoundary(branchNodes2,maxLevel);var max1=branchNodeBoundary1[1];var min2=branchNodeBoundary2[0];var minSpace2=branchNodeBoundary2[2];var diffBranch=Math.abs(max1-min2);if(diffBranch>nodeSpacing){var offset=max1-min2+nodeSpacing;if(offset<-minSpace2+nodeSpacing){offset=-minSpace2+nodeSpacing}if(offset<0){_this3._shiftBlock(node2.id,offset);stillShifting=true;if(centerParent===true)_this3._centerParent(node2)}}}};var minimizeEdgeLength=function minimizeEdgeLength(iterations,node){var nodeId=node.id;var allEdges=node.edges;var nodeLevel=_this3.hierarchical.levels[node.id];var C2=_this3.options.hierarchical.levelSeparation*_this3.options.hierarchical.levelSeparation;var referenceNodes={};var aboveEdges=[];for(var i=0;i<allEdges.length;i++){var edge=allEdges[i];if(edge.toId!=edge.fromId){var otherNode=edge.toId==nodeId?edge.from:edge.to;referenceNodes[allEdges[i].id]=otherNode;if(_this3.hierarchical.levels[otherNode.id]<nodeLevel){aboveEdges.push(edge)}}}var getFx=function getFx(point,edges){var sum=0;for(var _i2=0;_i2<edges.length;_i2++){if(referenceNodes[edges[_i2].id]!==undefined){var a=_this3.direction.getPosition(referenceNodes[edges[_i2].id])-point;sum+=a/Math.sqrt(a*a+C2)}}return sum};var getDFx=function getDFx(point,edges){var sum=0;for(var _i3=0;_i3<edges.length;_i3++){if(referenceNodes[edges[_i3].id]!==undefined){var a=_this3.direction.getPosition(referenceNodes[edges[_i3].id])-point;sum-=C2*Math.pow(a*a+C2,-1.5)}}return sum};var getGuess=function getGuess(iterations,edges){var guess=_this3.direction.getPosition(node);var guessMap={};for(var _i4=0;_i4<iterations;_i4++){var fx=getFx(guess,edges);var dfx=getDFx(guess,edges);var limit=40;var ratio=Math.max(-limit,Math.min(limit,Math.round(fx/dfx)));guess=guess-ratio;if(guessMap[guess]!==undefined){break}guessMap[guess]=_i4}return guess};var moveBranch=function moveBranch(guess){var nodePosition=_this3.direction.getPosition(node);if(branches[node.id]===undefined){var branchNodes={};getBranchNodes(node,branchNodes);branches[node.id]=branchNodes}var branchBoundary=getBranchBoundary(branches[node.id]);var minSpaceBranch=branchBoundary[2];var maxSpaceBranch=branchBoundary[3];var diff=guess-nodePosition;var branchOffset=0;if(diff>0){branchOffset=Math.min(diff,maxSpaceBranch-_this3.options.hierarchical.nodeSpacing)}else if(diff<0){branchOffset=-Math.min(-diff,minSpaceBranch-_this3.options.hierarchical.nodeSpacing)}if(branchOffset!=0){_this3._shiftBlock(node.id,branchOffset);stillShifting=true}};var moveNode=function moveNode(guess){var nodePosition=_this3.direction.getPosition(node);var _getSpaceAroundNode4=_this3._getSpaceAroundNode(node),_getSpaceAroundNode5=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode4,2),minSpace=_getSpaceAroundNode5[0],maxSpace=_getSpaceAroundNode5[1];var diff=guess-nodePosition;var newPosition=nodePosition;if(diff>0){newPosition=Math.min(nodePosition+(maxSpace-_this3.options.hierarchical.nodeSpacing),guess)}else if(diff<0){newPosition=Math.max(nodePosition-(minSpace-_this3.options.hierarchical.nodeSpacing),guess)}if(newPosition!==nodePosition){_this3.direction.setPosition(node,newPosition);stillShifting=true}};var guess=getGuess(iterations,aboveEdges);moveBranch(guess);guess=getGuess(iterations,allEdges);moveNode(guess)};var minimizeEdgeLengthBottomUp=function minimizeEdgeLengthBottomUp(iterations){var levels=_this3.hierarchical.getLevels();levels=levels.reverse();for(var i=0;i<iterations;i++){stillShifting=false;for(var j=0;j<levels.length;j++){var level=levels[j];var levelNodes=_this3.hierarchical.distributionOrdering[level];for(var k=0;k<levelNodes.length;k++){minimizeEdgeLength(1e3,levelNodes[k])}}if(stillShifting!==true){break}}};var shiftBranchesCloserBottomUp=function shiftBranchesCloserBottomUp(iterations){var levels=_this3.hierarchical.getLevels();levels=levels.reverse();for(var i=0;i<iterations;i++){stillShifting=false;shiftElementsCloser(branchShiftCallback,levels,true);if(stillShifting!==true){break}}};var centerAllParents=function centerAllParents(){for(var nodeId in _this3.body.nodes){if(_this3.body.nodes.hasOwnProperty(nodeId))_this3._centerParent(_this3.body.nodes[nodeId])}};var centerAllParentsBottomUp=function centerAllParentsBottomUp(){var levels=_this3.hierarchical.getLevels()\n;levels=levels.reverse();for(var i=0;i<levels.length;i++){var level=levels[i];var levelNodes=_this3.hierarchical.distributionOrdering[level];for(var j=0;j<levelNodes.length;j++){_this3._centerParent(levelNodes[j])}}};if(this.options.hierarchical.blockShifting===true){shiftBranchesCloserBottomUp(5);centerAllParents()}if(this.options.hierarchical.edgeMinimization===true){minimizeEdgeLengthBottomUp(20)}if(this.options.hierarchical.parentCentralization===true){centerAllParentsBottomUp()}shiftTrees()}},{key:\"_getSpaceAroundNode\",value:function _getSpaceAroundNode(node,map){var useMap=true;if(map===undefined){useMap=false}var level=this.hierarchical.levels[node.id];if(level!==undefined){var index=this.hierarchical.distributionIndex[node.id];var position=this.direction.getPosition(node);var ordering=this.hierarchical.distributionOrdering[level];var minSpace=1e9;var maxSpace=1e9;if(index!==0){var prevNode=ordering[index-1];if(useMap===true&&map[prevNode.id]===undefined||useMap===false){var prevPos=this.direction.getPosition(prevNode);minSpace=position-prevPos}}if(index!=ordering.length-1){var nextNode=ordering[index+1];if(useMap===true&&map[nextNode.id]===undefined||useMap===false){var nextPos=this.direction.getPosition(nextNode);maxSpace=Math.min(maxSpace,nextPos-position)}}return[minSpace,maxSpace]}else{return[0,0]}}},{key:\"_centerParent\",value:function _centerParent(node){if(this.hierarchical.parentReference[node.id]){var parents=this.hierarchical.parentReference[node.id];for(var i=0;i<parents.length;i++){var parentId=parents[i];var parentNode=this.body.nodes[parentId];var children=this.hierarchical.childrenReference[parentId];if(children!==undefined){var newPosition=this._getCenterPosition(children);var position=this.direction.getPosition(parentNode);var _getSpaceAroundNode6=this._getSpaceAroundNode(parentNode),_getSpaceAroundNode7=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode6,2),minSpace=_getSpaceAroundNode7[0],maxSpace=_getSpaceAroundNode7[1];var diff=position-newPosition;if(diff<0&&Math.abs(diff)<maxSpace-this.options.hierarchical.nodeSpacing||diff>0&&Math.abs(diff)<minSpace-this.options.hierarchical.nodeSpacing){this.direction.setPosition(parentNode,newPosition)}}}}}},{key:\"_placeNodesByHierarchy\",value:function _placeNodesByHierarchy(distribution){this.positionedNodes={};for(var level in distribution){if(distribution.hasOwnProperty(level)){var nodeArray=(0,_keys2[\"default\"])(distribution[level]);nodeArray=this._indexArrayToNodes(nodeArray);this.direction.sort(nodeArray);var handledNodeCount=0;for(var i=0;i<nodeArray.length;i++){var node=nodeArray[i];if(this.positionedNodes[node.id]===undefined){var spacing=this.options.hierarchical.nodeSpacing;var pos=spacing*handledNodeCount;if(handledNodeCount>0){pos=this.direction.getPosition(nodeArray[i-1])+spacing}this.direction.setPosition(node,pos,level);this._validatePositionAndContinue(node,level,pos);handledNodeCount++}}}}}},{key:\"_placeBranchNodes\",value:function _placeBranchNodes(parentId,parentLevel){var childRef=this.hierarchical.childrenReference[parentId];if(childRef===undefined){return}var childNodes=[];for(var i=0;i<childRef.length;i++){childNodes.push(this.body.nodes[childRef[i]])}this.direction.sort(childNodes);for(var _i5=0;_i5<childNodes.length;_i5++){var childNode=childNodes[_i5];var childNodeLevel=this.hierarchical.levels[childNode.id];if(childNodeLevel>parentLevel&&this.positionedNodes[childNode.id]===undefined){var spacing=this.options.hierarchical.nodeSpacing;var pos=void 0;if(_i5===0){pos=this.direction.getPosition(this.body.nodes[parentId])}else{pos=this.direction.getPosition(childNodes[_i5-1])+spacing}this.direction.setPosition(childNode,pos,childNodeLevel);this._validatePositionAndContinue(childNode,childNodeLevel,pos)}else{return}}var center=this._getCenterPosition(childNodes);this.direction.setPosition(this.body.nodes[parentId],center,parentLevel)}},{key:\"_validatePositionAndContinue\",value:function _validatePositionAndContinue(node,level,pos){if(!this.hierarchical.isTree)return;if(this.lastNodeOnLevel[level]!==undefined){var previousPos=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[level]]);if(pos-previousPos<this.options.hierarchical.nodeSpacing){var diff=previousPos+this.options.hierarchical.nodeSpacing-pos;var sharedParent=this._findCommonParent(this.lastNodeOnLevel[level],node.id);this._shiftBlock(sharedParent.withChild,diff)}}this.lastNodeOnLevel[level]=node.id;this.positionedNodes[node.id]=true;this._placeBranchNodes(node.id,level)}},{key:\"_indexArrayToNodes\",value:function _indexArrayToNodes(idArray){var array=[];for(var i=0;i<idArray.length;i++){array.push(this.body.nodes[idArray[i]])}return array}},{key:\"_getDistribution\",value:function _getDistribution(){var distribution={};var nodeId=void 0,node=void 0;for(nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){node=this.body.nodes[nodeId];var level=this.hierarchical.levels[nodeId]===undefined?0:this.hierarchical.levels[nodeId];this.direction.fix(node,level);if(distribution[level]===undefined){distribution[level]={}}distribution[level][nodeId]=node}}return distribution}},{key:\"_getActiveEdges\",value:function _getActiveEdges(node){var _this4=this;var result=[];util.forEach(node.edges,function(edge){if(_this4.body.edgeIndices.indexOf(edge.id)!==-1){result.push(edge)}});return result}},{key:\"_getHubSizes\",value:function _getHubSizes(){var _this5=this;var hubSizes={};var nodeIds=this.body.nodeIndices;util.forEach(nodeIds,function(nodeId){var node=_this5.body.nodes[nodeId];var hubSize=_this5._getActiveEdges(node).length;hubSizes[hubSize]=true});var result=[];util.forEach(hubSizes,function(size){result.push(Number(size))});result.sort(function(a,b){return b-a});return result}},{key:\"_determineLevelsByHubsize\",value:function _determineLevelsByHubsize(){var _this6=this;var levelDownstream=function levelDownstream(nodeA,nodeB){_this6.hierarchical.levelDownstream(nodeA,nodeB)};var hubSizes=this._getHubSizes();var _loop=function _loop(i){var hubSize=hubSizes[i];if(hubSize===0)return\"break\";util.forEach(_this6.body.nodeIndices,function(nodeId){var node=_this6.body.nodes[nodeId];if(hubSize===_this6._getActiveEdges(node).length){_this6._crawlNetwork(levelDownstream,nodeId)}})};for(var i=0;i<hubSizes.length;++i){var _ret=_loop(i);if(_ret===\"break\")break}}},{key:\"_determineLevelsCustomCallback\",value:function _determineLevelsCustomCallback(){var _this7=this;var minLevel=1e5;var customCallback=function customCallback(nodeA,nodeB,edge){};var levelByDirection=function levelByDirection(nodeA,nodeB,edge){var levelA=_this7.hierarchical.levels[nodeA.id];if(levelA===undefined){levelA=_this7.hierarchical.levels[nodeA.id]=minLevel}var diff=customCallback(NetworkUtil.cloneOptions(nodeA,\"node\"),NetworkUtil.cloneOptions(nodeB,\"node\"),NetworkUtil.cloneOptions(edge,\"edge\"));_this7.hierarchical.levels[nodeB.id]=levelA+diff};this._crawlNetwork(levelByDirection);this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:\"_determineLevelsDirected\",value:function _determineLevelsDirected(){var _this8=this;var minLevel=1e4;var isBidirectional=function isBidirectional(edge){util.forEach(_this8.body.edges,function(otherEdge){if(otherEdge.toId===edge.fromId&&otherEdge.fromId===edge.toId){return true}});return false};var levelByDirection=function levelByDirection(nodeA,nodeB,edge){var levelA=_this8.hierarchical.levels[nodeA.id];var levelB=_this8.hierarchical.levels[nodeB.id];if(isBidirectional(edge)&&levelA!==undefined&&levelB!==undefined){return}if(levelA===undefined){levelA=_this8.hierarchical.levels[nodeA.id]=minLevel}if(edge.toId==nodeB.id){_this8.hierarchical.levels[nodeB.id]=levelA+1}else{_this8.hierarchical.levels[nodeB.id]=levelA-1}};this._crawlNetwork(levelByDirection);this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:\"_generateMap\",value:function _generateMap(){var _this9=this;var fillInRelations=function fillInRelations(parentNode,childNode){if(_this9.hierarchical.levels[childNode.id]>_this9.hierarchical.levels[parentNode.id]){_this9.hierarchical.addRelation(parentNode.id,childNode.id)}};this._crawlNetwork(fillInRelations);this.hierarchical.checkIfTree()}},{key:\"_crawlNetwork\",value:function _crawlNetwork(){var _this10=this;var callback=arguments.length>0&&arguments[0]!==undefined?arguments[0]:function(){};var startingNodeId=arguments[1];var progress={};var crawler=function crawler(node,tree){if(progress[node.id]===undefined){_this10.hierarchical.setTreeIndex(node,tree);progress[node.id]=true;var childNode=void 0;var edges=_this10._getActiveEdges(node);for(var i=0;i<edges.length;i++){var edge=edges[i];if(edge.connected===true){if(edge.toId==node.id){childNode=edge.from}else{childNode=edge.to}if(node.id!=childNode.id){callback(node,childNode,edge);crawler(childNode,tree)}}}}};if(startingNodeId===undefined){var treeIndex=0;for(var i=0;i<this.body.nodeIndices.length;i++){var nodeId=this.body.nodeIndices[i];if(progress[nodeId]===undefined){var node=this.body.nodes[nodeId];crawler(node,treeIndex);treeIndex+=1}}}else{var _node2=this.body.nodes[startingNodeId];if(_node2===undefined){console.error(\"Node not found:\",startingNodeId);return}crawler(_node2)}}},{key:\"_shiftBlock\",value:function _shiftBlock(parentId,diff){var _this11=this;var progress={};var shifter=function shifter(parentId){if(progress[parentId]){return}progress[parentId]=true;_this11.direction.shift(parentId,diff);var childRef=_this11.hierarchical.childrenReference[parentId];if(childRef!==undefined){for(var i=0;i<childRef.length;i++){shifter(childRef[i])}}};shifter(parentId)}},{key:\"_findCommonParent\",value:function _findCommonParent(childA,childB){var _this12=this;var parents={};var iterateParents=function iterateParents(parents,child){var parentRef=_this12.hierarchical.parentReference[child];if(parentRef!==undefined){for(var i=0;i<parentRef.length;i++){var parent=parentRef[i];parents[parent]=true;iterateParents(parents,parent)}}};var findParent=function findParent(parents,child){var parentRef=_this12.hierarchical.parentReference[child];if(parentRef!==undefined){for(var i=0;i<parentRef.length;i++){var parent=parentRef[i];if(parents[parent]!==undefined){return{foundParent:parent,withChild:child}}var branch=findParent(parents,parent);if(branch.foundParent!==null){return branch}}}return{foundParent:null,withChild:child}};iterateParents(parents,childA);return findParent(parents,childB)}},{key:\"setDirectionStrategy\",value:function setDirectionStrategy(){var isVertical=this.options.hierarchical.direction===\"UD\"||this.options.hierarchical.direction===\"DU\";if(isVertical){this.direction=new VerticalStrategy(this)}else{this.direction=new HorizontalStrategy(this)}}},{key:\"_getCenterPosition\",value:function _getCenterPosition(childNodes){var minPos=1e9;var maxPos=-1e9;for(var i=0;i<childNodes.length;i++){var childNode=void 0;if(childNodes[i].id!==undefined){childNode=childNodes[i]}else{var childNodeId=childNodes[i];childNode=this.body.nodes[childNodeId]}var position=this.direction.getPosition(childNode);minPos=Math.min(minPos,position);maxPos=Math.max(maxPos,position)}return.5*(minPos+maxPos)}}]);return LayoutEngine}();exports[\"default\"]=LayoutEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.VerticalStrategy=exports.HorizontalStrategy=undefined;var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var DirectionInterface=function(){function DirectionInterface(){(0,_classCallCheck3[\"default\"])(this,DirectionInterface)}(0,_createClass3[\"default\"])(DirectionInterface,[{key:\"abstract\",value:function abstract(){throw new Error(\"Can't instantiate abstract class!\")}},{key:\"fake_use\",value:function fake_use(){}},{key:\"curveType\",value:function curveType(){return this.abstract()}},{key:\"getPosition\",value:function getPosition(node){this.fake_use(node);return this.abstract()}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;this.fake_use(node,position,level);this.abstract()}},{key:\"getTreeSize\",value:function getTreeSize(index){this.fake_use(index);return this.abstract()}},{key:\"sort\",value:function sort(nodeArray){this.fake_use(nodeArray);this.abstract()}},{key:\"fix\",value:function fix(node,level){this.fake_use(node,level);this.abstract()}},{key:\"shift\",value:function shift(nodeId,diff){this.fake_use(nodeId,diff);this.abstract()}}]);return DirectionInterface}();var VerticalStrategy=function(_DirectionInterface){(0,_inherits3[\"default\"])(VerticalStrategy,_DirectionInterface);function VerticalStrategy(layout){(0,_classCallCheck3[\"default\"])(this,VerticalStrategy);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(VerticalStrategy.__proto__||(0,_getPrototypeOf2[\"default\"])(VerticalStrategy)).call(this));_this.layout=layout;return _this}(0,_createClass3[\"default\"])(VerticalStrategy,[{key:\"curveType\",value:function curveType(){return\"horizontal\"}},{key:\"getPosition\",value:function getPosition(node){return node.x}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;if(level!==undefined){this.layout.hierarchical.addToOrdering(node,level)}node.x=position}},{key:\"getTreeSize\",value:function getTreeSize(index){var res=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,index);return{min:res.min_x,max:res.max_x}}},{key:\"sort\",value:function sort(nodeArray){nodeArray.sort(function(a,b){if(a.x===undefined||b.x===undefined)return 0;return a.x-b.x})}},{key:\"fix\",value:function fix(node,level){node.y=this.layout.options.hierarchical.levelSeparation*level;node.options.fixed.y=true}},{key:\"shift\",value:function shift(nodeId,diff){this.layout.body.nodes[nodeId].x+=diff}}]);return VerticalStrategy}(DirectionInterface);var HorizontalStrategy=function(_DirectionInterface2){(0,_inherits3[\"default\"])(HorizontalStrategy,_DirectionInterface2);function HorizontalStrategy(layout){(0,_classCallCheck3[\"default\"])(this,HorizontalStrategy);var _this2=(0,_possibleConstructorReturn3[\"default\"])(this,(HorizontalStrategy.__proto__||(0,_getPrototypeOf2[\"default\"])(HorizontalStrategy)).call(this));_this2.layout=layout;return _this2}(0,_createClass3[\"default\"])(HorizontalStrategy,[{key:\"curveType\",value:function curveType(){return\"vertical\"}},{key:\"getPosition\",value:function getPosition(node){return node.y}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;if(level!==undefined){this.layout.hierarchical.addToOrdering(node,level)}node.y=position}},{key:\"getTreeSize\",value:function getTreeSize(index){var res=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,index);return{min:res.min_y,max:res.max_y}}},{key:\"sort\",value:function sort(nodeArray){nodeArray.sort(function(a,b){if(a.y===undefined||b.y===undefined)return 0;return a.y-b.y})}},{key:\"fix\",value:function fix(node,level){node.x=this.layout.options.hierarchical.levelSeparation*level;node.options.fixed.x=true}},{key:\"shift\",value:function shift(nodeId,diff){this.layout.body.nodes[nodeId].y+=diff}}]);return HorizontalStrategy}(DirectionInterface);exports.HorizontalStrategy=HorizontalStrategy;exports.VerticalStrategy=VerticalStrategy},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var ManipulationSystem=function(){function ManipulationSystem(body,canvas,selectionHandler){var _this=this;(0,_classCallCheck3[\"default\"])(this,ManipulationSystem);this.body=body;this.canvas=canvas;this.selectionHandler=selectionHandler;this.editMode=false;this.manipulationDiv=undefined;this.editModeDiv=undefined;this.closeDiv=undefined;this.manipulationHammers=[];this.temporaryUIFunctions={};this.temporaryEventFunctions=[];this.touchTime=0;this.temporaryIds={nodes:[],edges:[]};this.guiEnabled=false;this.inMode=false;this.selectedControlNode=undefined;this.options={};this.defaultOptions={enabled:false,initiallyActive:false,addNode:true,addEdge:true,editNode:undefined,editEdge:true,deleteNode:true,deleteEdge:true,controlNodeStyle:{shape:\"dot\",size:6,color:{background:\"#ff0000\",border:\"#3c3c3c\",highlight:{background:\"#07f968\",border:\"#3c3c3c\"}},borderWidth:2,borderWidthSelected:2}};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"destroy\",function(){_this._clean()});this.body.emitter.on(\"_dataChanged\",this._restore.bind(this));this.body.emitter.on(\"_resetData\",this._restore.bind(this))}(0,_createClass3[\"default\"])(ManipulationSystem,[{key:\"_restore\",value:function _restore(){if(this.inMode!==false){if(this.options.initiallyActive===true){this.enableEditMode()}else{this.disableEditMode()}}}},{key:\"setOptions\",value:function setOptions(options,allOptions,globalOptions){if(allOptions!==undefined){if(allOptions.locale!==undefined){this.options.locale=allOptions.locale}else{this.options.locale=globalOptions.locale}if(allOptions.locales!==undefined){this.options.locales=allOptions.locales}else{this.options.locales=globalOptions.locales}}if(options!==undefined){if(typeof options===\"boolean\"){this.options.enabled=options}else{this.options.enabled=true;util.deepExtend(this.options,options)}if(this.options.initiallyActive===true){this.editMode=true}this._setup()}}},{key:\"toggleEditMode\",value:function toggleEditMode(){if(this.editMode===true){this.disableEditMode()}else{this.enableEditMode()}}},{key:\"enableEditMode\",value:function enableEditMode(){this.editMode=true;this._clean();if(this.guiEnabled===true){this.manipulationDiv.style.display=\"block\";this.closeDiv.style.display=\"block\";this.editModeDiv.style.display=\"none\";this.showManipulatorToolbar()}}},{key:\"disableEditMode\",value:function disableEditMode(){this.editMode=false;this._clean();if(this.guiEnabled===true){this.manipulationDiv.style.display=\"none\";this.closeDiv.style.display=\"none\";this.editModeDiv.style.display=\"block\";this._createEditButton()}}},{key:\"showManipulatorToolbar\",value:function showManipulatorToolbar(){this._clean();this.manipulationDOM={};if(this.guiEnabled===true){this.editMode=true;this.manipulationDiv.style.display=\"block\";this.closeDiv.style.display=\"block\";var selectedNodeCount=this.selectionHandler._getSelectedNodeCount();var selectedEdgeCount=this.selectionHandler._getSelectedEdgeCount();var selectedTotalCount=selectedNodeCount+selectedEdgeCount;var locale=this.options.locales[this.options.locale];var needSeperator=false;if(this.options.addNode!==false){this._createAddNodeButton(locale);needSeperator=true}if(this.options.addEdge!==false){if(needSeperator===true){this._createSeperator(1)}else{needSeperator=true}this._createAddEdgeButton(locale)}if(selectedNodeCount===1&&typeof this.options.editNode===\"function\"){if(needSeperator===true){this._createSeperator(2)}else{needSeperator=true}this._createEditNodeButton(locale)}else if(selectedEdgeCount===1&&selectedNodeCount===0&&this.options.editEdge!==false){if(needSeperator===true){this._createSeperator(3)}else{needSeperator=true}this._createEditEdgeButton(locale)}if(selectedTotalCount!==0){if(selectedNodeCount>0&&this.options.deleteNode!==false){if(needSeperator===true){this._createSeperator(4)}this._createDeleteButton(locale)}else if(selectedNodeCount===0&&this.options.deleteEdge!==false){if(needSeperator===true){this._createSeperator(4)}this._createDeleteButton(locale)}}this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this));this._temporaryBindEvent(\"select\",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit(\"_redraw\")}},{key:\"addNodeMode\",value:function addNodeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"addNode\";if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"addDescription\"]||this.options.locales[\"en\"][\"addDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent(\"click\",this._performAddNode.bind(this))}},{key:\"editNode\",value:function editNode(){var _this2=this;if(this.editMode!==true){this.enableEditMode()}this._clean();var node=this.selectionHandler._getSelectedNode();if(node!==undefined){this.inMode=\"editNode\";if(typeof this.options.editNode===\"function\"){if(node.isCluster!==true){var data=util.deepExtend({},node.options,false);data.x=node.x;data.y=node.y;if(this.options.editNode.length===2){this.options.editNode(data,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this2.inMode===\"editNode\"){_this2.body.data.nodes.getDataSet().update(finalizedData)}_this2.showManipulatorToolbar()})}else{throw new Error(\"The function for edit does not support two arguments (data, callback)\")}}else{alert(this.options.locales[this.options.locale][\"editClusterError\"]||this.options.locales[\"en\"][\"editClusterError\"])}}else{throw new Error(\"No function has been configured to handle the editing of nodes.\")}}else{this.showManipulatorToolbar()}}},{key:\"addEdgeMode\",value:function addEdgeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"addEdge\";if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"edgeDescription\"]||this.options.locales[\"en\"][\"edgeDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI(\"onTouch\",this._handleConnect.bind(this));this._temporaryBindUI(\"onDragEnd\",this._finishConnect.bind(this));this._temporaryBindUI(\"onDrag\",this._dragControlNode.bind(this));this._temporaryBindUI(\"onRelease\",this._finishConnect.bind(this));this._temporaryBindUI(\"onDragStart\",this._dragStartEdge.bind(this));this._temporaryBindUI(\"onHold\",function(){})}},{key:\"editEdgeMode\",value:function editEdgeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"editEdge\";if((0,_typeof3[\"default\"])(this.options.editEdge)===\"object\"&&typeof this.options.editEdge.editWithoutDrag===\"function\"){this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0];if(this.edgeBeingEditedId!==undefined){var edge=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(edge.from,edge.to);return}}if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"editEdgeDescription\"]||this.options.locales[\"en\"][\"editEdgeDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0];if(this.edgeBeingEditedId!==undefined){var _edge=this.body.edges[this.edgeBeingEditedId];var controlNodeFrom=this._getNewTargetNode(_edge.from.x,_edge.from.y);var controlNodeTo=this._getNewTargetNode(_edge.to.x,_edge.to.y);this.temporaryIds.nodes.push(controlNodeFrom.id);this.temporaryIds.nodes.push(controlNodeTo.id);this.body.nodes[controlNodeFrom.id]=controlNodeFrom;this.body.nodeIndices.push(controlNodeFrom.id);this.body.nodes[controlNodeTo.id]=controlNodeTo;this.body.nodeIndices.push(controlNodeTo.id);this._temporaryBindUI(\"onTouch\",this._controlNodeTouch.bind(this));this._temporaryBindUI(\"onTap\",function(){});this._temporaryBindUI(\"onHold\",function(){});this._temporaryBindUI(\"onDragStart\",this._controlNodeDragStart.bind(this));this._temporaryBindUI(\"onDrag\",this._controlNodeDrag.bind(this));this._temporaryBindUI(\"onDragEnd\",this._controlNodeDragEnd.bind(this));this._temporaryBindUI(\"onMouseMove\",function(){});this._temporaryBindEvent(\"beforeDrawing\",function(ctx){var positions=_edge.edgeType.findBorderPositions(ctx);if(controlNodeFrom.selected===false){controlNodeFrom.x=positions.from.x;controlNodeFrom.y=positions.from.y}if(controlNodeTo.selected===false){controlNodeTo.x=positions.to.x;controlNodeTo.y=positions.to.y}});this.body.emitter.emit(\"_redraw\")}else{this.showManipulatorToolbar()}}},{key:\"deleteSelected\",value:function deleteSelected(){var _this3=this;if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"delete\";var selectedNodes=this.selectionHandler.getSelectedNodes();var selectedEdges=this.selectionHandler.getSelectedEdges();var deleteFunction=undefined;if(selectedNodes.length>0){for(var i=0;i<selectedNodes.length;i++){if(this.body.nodes[selectedNodes[i]].isCluster===true){alert(this.options.locales[this.options.locale][\"deleteClusterError\"]||this.options.locales[\"en\"][\"deleteClusterError\"]);return}}if(typeof this.options.deleteNode===\"function\"){deleteFunction=this.options.deleteNode}}else if(selectedEdges.length>0){if(typeof this.options.deleteEdge===\"function\"){deleteFunction=this.options.deleteEdge}}if(typeof deleteFunction===\"function\"){var data={nodes:selectedNodes,edges:selectedEdges};if(deleteFunction.length===2){deleteFunction(data,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this3.inMode===\"delete\"){_this3.body.data.edges.getDataSet().remove(finalizedData.edges);_this3.body.data.nodes.getDataSet().remove(finalizedData.nodes);_this3.body.emitter.emit(\"startSimulation\");_this3.showManipulatorToolbar()}else{_this3.body.emitter.emit(\"startSimulation\");_this3.showManipulatorToolbar()}})}else{throw new Error(\"The function for delete does not support two arguments (data, callback)\")}}else{this.body.data.edges.getDataSet().remove(selectedEdges);this.body.data.nodes.getDataSet().remove(selectedNodes);this.body.emitter.emit(\"startSimulation\");this.showManipulatorToolbar()}}},{key:\"_setup\",value:function _setup(){if(this.options.enabled===true){this.guiEnabled=true;this._createWrappers();if(this.editMode===false){this._createEditButton()}else{this.showManipulatorToolbar()}}else{this._removeManipulationDOM();this.guiEnabled=false}}},{key:\"_createWrappers\",value:function _createWrappers(){if(this.manipulationDiv===undefined){this.manipulationDiv=document.createElement(\"div\");this.manipulationDiv.className=\"vis-manipulation\";if(this.editMode===true){this.manipulationDiv.style.display=\"block\"}else{this.manipulationDiv.style.display=\"none\"}this.canvas.frame.appendChild(this.manipulationDiv)}if(this.editModeDiv===undefined){this.editModeDiv=document.createElement(\"div\");this.editModeDiv.className=\"vis-edit-mode\";if(this.editMode===true){this.editModeDiv.style.display=\"none\"}else{this.editModeDiv.style.display=\"block\"}this.canvas.frame.appendChild(this.editModeDiv)}if(this.closeDiv===undefined){this.closeDiv=document.createElement(\"div\");this.closeDiv.className=\"vis-close\";this.closeDiv.style.display=this.manipulationDiv.style.display;this.canvas.frame.appendChild(this.closeDiv)}}},{key:\"_getNewTargetNode\",value:function _getNewTargetNode(x,y){var controlNodeStyle=util.deepExtend({},this.options.controlNodeStyle);controlNodeStyle.id=\"targetNode\"+util.randomUUID();controlNodeStyle.hidden=false;controlNodeStyle.physics=false;controlNodeStyle.x=x;controlNodeStyle.y=y;var node=this.body.functions.createNode(controlNodeStyle);node.shape.boundingBox={left:x,right:x,top:y,bottom:y};return node}},{key:\"_createEditButton\",value:function _createEditButton(){this._clean();this.manipulationDOM={};util.recursiveDOMDelete(this.editModeDiv);var locale=this.options.locales[this.options.locale];var button=this._createButton(\"editMode\",\"vis-button vis-edit vis-edit-mode\",locale[\"edit\"]||this.options.locales[\"en\"][\"edit\"]);this.editModeDiv.appendChild(button);this._bindHammerToDiv(button,this.toggleEditMode.bind(this))}},{key:\"_clean\",value:function _clean(){this.inMode=false;if(this.guiEnabled===true){util.recursiveDOMDelete(this.editModeDiv);util.recursiveDOMDelete(this.manipulationDiv);this._cleanManipulatorHammers()}this._cleanupTemporaryNodesAndEdges();this._unbindTemporaryUIs();this._unbindTemporaryEvents();this.body.emitter.emit(\"restorePhysics\")}},{key:\"_cleanManipulatorHammers\",value:function _cleanManipulatorHammers(){if(this.manipulationHammers.length!=0){for(var i=0;i<this.manipulationHammers.length;i++){this.manipulationHammers[i].destroy()}this.manipulationHammers=[]}}},{key:\"_removeManipulationDOM\",value:function _removeManipulationDOM(){this._clean();util.recursiveDOMDelete(this.manipulationDiv);util.recursiveDOMDelete(this.editModeDiv);util.recursiveDOMDelete(this.closeDiv);if(this.manipulationDiv){this.canvas.frame.removeChild(this.manipulationDiv)}if(this.editModeDiv){this.canvas.frame.removeChild(this.editModeDiv)}if(this.closeDiv){this.canvas.frame.removeChild(this.closeDiv)}this.manipulationDiv=undefined;this.editModeDiv=undefined;this.closeDiv=undefined}},{key:\"_createSeperator\",value:function _createSeperator(){var index=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;this.manipulationDOM[\"seperatorLineDiv\"+index]=document.createElement(\"div\");this.manipulationDOM[\"seperatorLineDiv\"+index].className=\"vis-separator-line\";this.manipulationDiv.appendChild(this.manipulationDOM[\"seperatorLineDiv\"+index])}},{key:\"_createAddNodeButton\",value:function _createAddNodeButton(locale){var button=this._createButton(\"addNode\",\"vis-button vis-add\",locale[\"addNode\"]||this.options.locales[\"en\"][\"addNode\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.addNodeMode.bind(this))}},{key:\"_createAddEdgeButton\",value:function _createAddEdgeButton(locale){var button=this._createButton(\"addEdge\",\"vis-button vis-connect\",locale[\"addEdge\"]||this.options.locales[\"en\"][\"addEdge\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.addEdgeMode.bind(this))}},{key:\"_createEditNodeButton\",value:function _createEditNodeButton(locale){var button=this._createButton(\"editNode\",\"vis-button vis-edit\",locale[\"editNode\"]||this.options.locales[\"en\"][\"editNode\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.editNode.bind(this))}},{key:\"_createEditEdgeButton\",value:function _createEditEdgeButton(locale){var button=this._createButton(\"editEdge\",\"vis-button vis-edit\",locale[\"editEdge\"]||this.options.locales[\"en\"][\"editEdge\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.editEdgeMode.bind(this))}},{key:\"_createDeleteButton\",value:function _createDeleteButton(locale){var deleteBtnClass;if(this.options.rtl){deleteBtnClass=\"vis-button vis-delete-rtl\"}else{deleteBtnClass=\"vis-button vis-delete\"}var button=this._createButton(\"delete\",deleteBtnClass,locale[\"del\"]||this.options.locales[\"en\"][\"del\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.deleteSelected.bind(this))}},{key:\"_createBackButton\",value:function _createBackButton(locale){\nvar button=this._createButton(\"back\",\"vis-button vis-back\",locale[\"back\"]||this.options.locales[\"en\"][\"back\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.showManipulatorToolbar.bind(this))}},{key:\"_createButton\",value:function _createButton(id,className,label){var labelClassName=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\"vis-label\";this.manipulationDOM[id+\"Div\"]=document.createElement(\"div\");this.manipulationDOM[id+\"Div\"].className=className;this.manipulationDOM[id+\"Label\"]=document.createElement(\"div\");this.manipulationDOM[id+\"Label\"].className=labelClassName;this.manipulationDOM[id+\"Label\"].innerHTML=label;this.manipulationDOM[id+\"Div\"].appendChild(this.manipulationDOM[id+\"Label\"]);return this.manipulationDOM[id+\"Div\"]}},{key:\"_createDescription\",value:function _createDescription(label){this.manipulationDiv.appendChild(this._createButton(\"description\",\"vis-button vis-none\",label))}},{key:\"_temporaryBindEvent\",value:function _temporaryBindEvent(event,newFunction){this.temporaryEventFunctions.push({event:event,boundFunction:newFunction});this.body.emitter.on(event,newFunction)}},{key:\"_temporaryBindUI\",value:function _temporaryBindUI(UIfunctionName,newFunction){if(this.body.eventListeners[UIfunctionName]!==undefined){this.temporaryUIFunctions[UIfunctionName]=this.body.eventListeners[UIfunctionName];this.body.eventListeners[UIfunctionName]=newFunction}else{throw new Error(\"This UI function does not exist. Typo? You tried: \"+UIfunctionName+\" possible are: \"+(0,_stringify2[\"default\"])((0,_keys2[\"default\"])(this.body.eventListeners)))}}},{key:\"_unbindTemporaryUIs\",value:function _unbindTemporaryUIs(){for(var functionName in this.temporaryUIFunctions){if(this.temporaryUIFunctions.hasOwnProperty(functionName)){this.body.eventListeners[functionName]=this.temporaryUIFunctions[functionName];delete this.temporaryUIFunctions[functionName]}}this.temporaryUIFunctions={}}},{key:\"_unbindTemporaryEvents\",value:function _unbindTemporaryEvents(){for(var i=0;i<this.temporaryEventFunctions.length;i++){var eventName=this.temporaryEventFunctions[i].event;var boundFunction=this.temporaryEventFunctions[i].boundFunction;this.body.emitter.off(eventName,boundFunction)}this.temporaryEventFunctions=[]}},{key:\"_bindHammerToDiv\",value:function _bindHammerToDiv(domElement,boundFunction){var hammer=new Hammer(domElement,{});hammerUtil.onTouch(hammer,boundFunction);this.manipulationHammers.push(hammer)}},{key:\"_cleanupTemporaryNodesAndEdges\",value:function _cleanupTemporaryNodesAndEdges(){for(var i=0;i<this.temporaryIds.edges.length;i++){this.body.edges[this.temporaryIds.edges[i]].disconnect();delete this.body.edges[this.temporaryIds.edges[i]];var indexTempEdge=this.body.edgeIndices.indexOf(this.temporaryIds.edges[i]);if(indexTempEdge!==-1){this.body.edgeIndices.splice(indexTempEdge,1)}}for(var _i=0;_i<this.temporaryIds.nodes.length;_i++){delete this.body.nodes[this.temporaryIds.nodes[_i]];var indexTempNode=this.body.nodeIndices.indexOf(this.temporaryIds.nodes[_i]);if(indexTempNode!==-1){this.body.nodeIndices.splice(indexTempNode,1)}}this.temporaryIds={nodes:[],edges:[]}}},{key:\"_controlNodeTouch\",value:function _controlNodeTouch(event){this.selectionHandler.unselectAll();this.lastTouch=this.body.functions.getPointer(event.center);this.lastTouch.translation=util.extend({},this.body.view.translation)}},{key:\"_controlNodeDragStart\",value:function _controlNodeDragStart(event){var pointer=this.lastTouch;var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var from=this.body.nodes[this.temporaryIds.nodes[0]];var to=this.body.nodes[this.temporaryIds.nodes[1]];var edge=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=undefined;var fromSelect=from.isOverlappingWith(pointerObj);var toSelect=to.isOverlappingWith(pointerObj);if(fromSelect===true){this.selectedControlNode=from;edge.edgeType.from=from}else if(toSelect===true){this.selectedControlNode=to;edge.edgeType.to=to}if(this.selectedControlNode!==undefined){this.selectionHandler.selectObject(this.selectedControlNode)}this.body.emitter.emit(\"_redraw\")}},{key:\"_controlNodeDrag\",value:function _controlNodeDrag(event){this.body.emitter.emit(\"disablePhysics\");var pointer=this.body.functions.getPointer(event.center);var pos=this.canvas.DOMtoCanvas(pointer);if(this.selectedControlNode!==undefined){this.selectedControlNode.x=pos.x;this.selectedControlNode.y=pos.y}else{var diffX=pointer.x-this.lastTouch.x;var diffY=pointer.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+diffX,y:this.lastTouch.translation.y+diffY}}this.body.emitter.emit(\"_redraw\")}},{key:\"_controlNodeDragEnd\",value:function _controlNodeDragEnd(event){var pointer=this.body.functions.getPointer(event.center);var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var edge=this.body.edges[this.edgeBeingEditedId];if(this.selectedControlNode===undefined){return}this.selectionHandler.unselectAll();var overlappingNodeIds=this.selectionHandler._getAllNodesOverlappingWith(pointerObj);var node=undefined;for(var i=overlappingNodeIds.length-1;i>=0;i--){if(overlappingNodeIds[i]!==this.selectedControlNode.id){node=this.body.nodes[overlappingNodeIds[i]];break}}if(node!==undefined&&this.selectedControlNode!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{var from=this.body.nodes[this.temporaryIds.nodes[0]];if(this.selectedControlNode.id===from.id){this._performEditEdge(node.id,edge.to.id)}else{this._performEditEdge(edge.from.id,node.id)}}}else{edge.updateEdgeType();this.body.emitter.emit(\"restorePhysics\")}this.body.emitter.emit(\"_redraw\")}},{key:\"_handleConnect\",value:function _handleConnect(event){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(event.center);this.lastTouch.translation=util.extend({},this.body.view.translation);var pointer=this.lastTouch;var node=this.selectionHandler.getNodeAt(pointer);if(node!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{var targetNode=this._getNewTargetNode(node.x,node.y);this.body.nodes[targetNode.id]=targetNode;this.body.nodeIndices.push(targetNode.id);var connectionEdge=this.body.functions.createEdge({id:\"connectionEdge\"+util.randomUUID(),from:node.id,to:targetNode.id,physics:false,smooth:{enabled:true,type:\"continuous\",roundness:.5}});this.body.edges[connectionEdge.id]=connectionEdge;this.body.edgeIndices.push(connectionEdge.id);this.temporaryIds.nodes.push(targetNode.id);this.temporaryIds.edges.push(connectionEdge.id)}}this.touchTime=(new Date).valueOf()}}},{key:\"_dragControlNode\",value:function _dragControlNode(event){var pointer=this.body.functions.getPointer(event.center);if(this.temporaryIds.nodes[0]!==undefined){var targetNode=this.body.nodes[this.temporaryIds.nodes[0]];targetNode.x=this.canvas._XconvertDOMtoCanvas(pointer.x);targetNode.y=this.canvas._YconvertDOMtoCanvas(pointer.y);this.body.emitter.emit(\"_redraw\")}else{var diffX=pointer.x-this.lastTouch.x;var diffY=pointer.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+diffX,y:this.lastTouch.translation.y+diffY}}}},{key:\"_finishConnect\",value:function _finishConnect(event){var pointer=this.body.functions.getPointer(event.center);var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var connectFromId=undefined;if(this.temporaryIds.edges[0]!==undefined){connectFromId=this.body.edges[this.temporaryIds.edges[0]].fromId}var overlappingNodeIds=this.selectionHandler._getAllNodesOverlappingWith(pointerObj);var node=undefined;for(var i=overlappingNodeIds.length-1;i>=0;i--){if(this.temporaryIds.nodes.indexOf(overlappingNodeIds[i])===-1){node=this.body.nodes[overlappingNodeIds[i]];break}}this._cleanupTemporaryNodesAndEdges();if(node!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{if(this.body.nodes[connectFromId]!==undefined&&this.body.nodes[node.id]!==undefined){this._performAddEdge(connectFromId,node.id)}}}this.body.emitter.emit(\"_redraw\")}},{key:\"_dragStartEdge\",value:function _dragStartEdge(event){var pointer=this.lastTouch;this.selectionHandler._generateClickEvent(\"dragStart\",event,pointer,undefined,true)}},{key:\"_performAddNode\",value:function _performAddNode(clickData){var _this4=this;var defaultData={id:util.randomUUID(),x:clickData.pointer.canvas.x,y:clickData.pointer.canvas.y,label:\"new\"};if(typeof this.options.addNode===\"function\"){if(this.options.addNode.length===2){this.options.addNode(defaultData,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this4.inMode===\"addNode\"){_this4.body.data.nodes.getDataSet().add(finalizedData);_this4.showManipulatorToolbar()}})}else{this.showManipulatorToolbar();throw new Error(\"The function for add does not support two arguments (data,callback)\")}}else{this.body.data.nodes.getDataSet().add(defaultData);this.showManipulatorToolbar()}}},{key:\"_performAddEdge\",value:function _performAddEdge(sourceNodeId,targetNodeId){var _this5=this;var defaultData={from:sourceNodeId,to:targetNodeId};if(typeof this.options.addEdge===\"function\"){if(this.options.addEdge.length===2){this.options.addEdge(defaultData,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this5.inMode===\"addEdge\"){_this5.body.data.edges.getDataSet().add(finalizedData);_this5.selectionHandler.unselectAll();_this5.showManipulatorToolbar()}})}else{throw new Error(\"The function for connect does not support two arguments (data,callback)\")}}else{this.body.data.edges.getDataSet().add(defaultData);this.selectionHandler.unselectAll();this.showManipulatorToolbar()}}},{key:\"_performEditEdge\",value:function _performEditEdge(sourceNodeId,targetNodeId){var _this6=this;var defaultData={id:this.edgeBeingEditedId,from:sourceNodeId,to:targetNodeId,label:this.body.data.edges._data[this.edgeBeingEditedId].label};var eeFunct=this.options.editEdge;if((typeof eeFunct===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(eeFunct))===\"object\"){eeFunct=eeFunct.editWithoutDrag}if(typeof eeFunct===\"function\"){if(eeFunct.length===2){eeFunct(defaultData,function(finalizedData){if(finalizedData===null||finalizedData===undefined||_this6.inMode!==\"editEdge\"){_this6.body.edges[defaultData.id].updateEdgeType();_this6.body.emitter.emit(\"_redraw\");_this6.showManipulatorToolbar()}else{_this6.body.data.edges.getDataSet().update(finalizedData);_this6.selectionHandler.unselectAll();_this6.showManipulatorToolbar()}})}else{throw new Error(\"The function for edit does not support two arguments (data, callback)\")}}else{this.body.data.edges.getDataSet().update(defaultData);this.selectionHandler.unselectAll();this.showManipulatorToolbar()}}}]);return ManipulationSystem}();exports[\"default\"]=ManipulationSystem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _FloydWarshall=__webpack_require__(239);var _FloydWarshall2=_interopRequireDefault(_FloydWarshall);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var KamadaKawai=function(){function KamadaKawai(body,edgeLength,edgeStrength){(0,_classCallCheck3[\"default\"])(this,KamadaKawai);this.body=body;this.springLength=edgeLength;this.springConstant=edgeStrength;this.distanceSolver=new _FloydWarshall2[\"default\"]}(0,_createClass3[\"default\"])(KamadaKawai,[{key:\"setOptions\",value:function setOptions(options){if(options){if(options.springLength){this.springLength=options.springLength}if(options.springConstant){this.springConstant=options.springConstant}}}},{key:\"solve\",value:function solve(nodesArray,edgesArray){var ignoreClusters=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var D_matrix=this.distanceSolver.getDistances(this.body,nodesArray,edgesArray);this._createL_matrix(D_matrix);this._createK_matrix(D_matrix);this._createE_matrix();var threshold=.01;var innerThreshold=1;var iterations=0;var maxIterations=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3));var maxInnerIterations=5;var maxEnergy=1e9;var highE_nodeId=0,dE_dx=0,dE_dy=0,delta_m=0,subIterations=0;while(maxEnergy>threshold&&iterations<maxIterations){iterations+=1;var _getHighestEnergyNode2=this._getHighestEnergyNode(ignoreClusters);var _getHighestEnergyNode3=(0,_slicedToArray3[\"default\"])(_getHighestEnergyNode2,4);highE_nodeId=_getHighestEnergyNode3[0];maxEnergy=_getHighestEnergyNode3[1];dE_dx=_getHighestEnergyNode3[2];dE_dy=_getHighestEnergyNode3[3];delta_m=maxEnergy;subIterations=0;while(delta_m>innerThreshold&&subIterations<maxInnerIterations){subIterations+=1;this._moveNode(highE_nodeId,dE_dx,dE_dy);var _getEnergy2=this._getEnergy(highE_nodeId);var _getEnergy3=(0,_slicedToArray3[\"default\"])(_getEnergy2,3);delta_m=_getEnergy3[0];dE_dx=_getEnergy3[1];dE_dy=_getEnergy3[2]}}}},{key:\"_getHighestEnergyNode\",value:function _getHighestEnergyNode(ignoreClusters){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var maxEnergy=0;var maxEnergyNodeId=nodesArray[0];var dE_dx_max=0,dE_dy_max=0;for(var nodeIdx=0;nodeIdx<nodesArray.length;nodeIdx++){var m=nodesArray[nodeIdx];if(nodes[m].predefinedPosition===false||nodes[m].isCluster===true&&ignoreClusters===true||nodes[m].options.fixed.x===true||nodes[m].options.fixed.y===true){var _getEnergy4=this._getEnergy(m),_getEnergy5=(0,_slicedToArray3[\"default\"])(_getEnergy4,3),delta_m=_getEnergy5[0],dE_dx=_getEnergy5[1],dE_dy=_getEnergy5[2];if(maxEnergy<delta_m){maxEnergy=delta_m;maxEnergyNodeId=m;dE_dx_max=dE_dx;dE_dy_max=dE_dy}}}return[maxEnergyNodeId,maxEnergy,dE_dx_max,dE_dy_max]}},{key:\"_getEnergy\",value:function _getEnergy(m){var _E_sums$m=(0,_slicedToArray3[\"default\"])(this.E_sums[m],2),dE_dx=_E_sums$m[0],dE_dy=_E_sums$m[1];var delta_m=Math.sqrt(Math.pow(dE_dx,2)+Math.pow(dE_dy,2));return[delta_m,dE_dx,dE_dy]}},{key:\"_moveNode\",value:function _moveNode(m,dE_dx,dE_dy){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var d2E_dx2=0;var d2E_dxdy=0;var d2E_dy2=0;var x_m=nodes[m].x;var y_m=nodes[m].y;var km=this.K_matrix[m];var lm=this.L_matrix[m];for(var iIdx=0;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var x_i=nodes[i].x;var y_i=nodes[i].y;var kmat=km[i];var lmat=lm[i];var denominator=1/Math.pow(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2),1.5);d2E_dx2+=kmat*(1-lmat*Math.pow(y_m-y_i,2)*denominator);d2E_dxdy+=kmat*(lmat*(x_m-x_i)*(y_m-y_i)*denominator);d2E_dy2+=kmat*(1-lmat*Math.pow(x_m-x_i,2)*denominator)}}var A=d2E_dx2,B=d2E_dxdy,C=dE_dx,D=d2E_dy2,E=dE_dy;var dy=(C/A+E/B)/(B/A-D/B);var dx=-(B*dy+C)/A;nodes[m].x+=dx;nodes[m].y+=dy;this._updateE_matrix(m)}},{key:\"_createL_matrix\",value:function _createL_matrix(D_matrix){var nodesArray=this.body.nodeIndices;var edgeLength=this.springLength;this.L_matrix=[];for(var i=0;i<nodesArray.length;i++){this.L_matrix[nodesArray[i]]={};for(var j=0;j<nodesArray.length;j++){this.L_matrix[nodesArray[i]][nodesArray[j]]=edgeLength*D_matrix[nodesArray[i]][nodesArray[j]]}}}},{key:\"_createK_matrix\",value:function _createK_matrix(D_matrix){var nodesArray=this.body.nodeIndices;var edgeStrength=this.springConstant;this.K_matrix=[];for(var i=0;i<nodesArray.length;i++){this.K_matrix[nodesArray[i]]={};for(var j=0;j<nodesArray.length;j++){this.K_matrix[nodesArray[i]][nodesArray[j]]=edgeStrength*Math.pow(D_matrix[nodesArray[i]][nodesArray[j]],-2)}}}},{key:\"_createE_matrix\",value:function _createE_matrix(){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;this.E_matrix={};this.E_sums={};for(var mIdx=0;mIdx<nodesArray.length;mIdx++){this.E_matrix[nodesArray[mIdx]]=[]}for(var _mIdx=0;_mIdx<nodesArray.length;_mIdx++){var m=nodesArray[_mIdx];var x_m=nodes[m].x;var y_m=nodes[m].y;var dE_dx=0;var dE_dy=0;for(var iIdx=_mIdx;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var x_i=nodes[i].x;var y_i=nodes[i].y;var denominator=1/Math.sqrt(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2));this.E_matrix[m][iIdx]=[this.K_matrix[m][i]*(x_m-x_i-this.L_matrix[m][i]*(x_m-x_i)*denominator),this.K_matrix[m][i]*(y_m-y_i-this.L_matrix[m][i]*(y_m-y_i)*denominator)];this.E_matrix[i][_mIdx]=this.E_matrix[m][iIdx];dE_dx+=this.E_matrix[m][iIdx][0];dE_dy+=this.E_matrix[m][iIdx][1]}}this.E_sums[m]=[dE_dx,dE_dy]}}},{key:\"_updateE_matrix\",value:function _updateE_matrix(m){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var colm=this.E_matrix[m];var kcolm=this.K_matrix[m];var lcolm=this.L_matrix[m];var x_m=nodes[m].x;var y_m=nodes[m].y;var dE_dx=0;var dE_dy=0;for(var iIdx=0;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var cell=colm[iIdx];var oldDx=cell[0];var oldDy=cell[1];var x_i=nodes[i].x;var y_i=nodes[i].y;var denominator=1/Math.sqrt(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2));var dx=kcolm[i]*(x_m-x_i-lcolm[i]*(x_m-x_i)*denominator);var dy=kcolm[i]*(y_m-y_i-lcolm[i]*(y_m-y_i)*denominator);colm[iIdx]=[dx,dy];dE_dx+=dx;dE_dy+=dy;var sum=this.E_sums[i];sum[0]+=dx-oldDx;sum[1]+=dy-oldDy}}this.E_sums[m]=[dE_dx,dE_dy]}}]);return KamadaKawai}();exports[\"default\"]=KamadaKawai},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var FloydWarshall=function(){function FloydWarshall(){(0,_classCallCheck3[\"default\"])(this,FloydWarshall)}(0,_createClass3[\"default\"])(FloydWarshall,[{key:\"getDistances\",value:function getDistances(body,nodesArray,edgesArray){var D_matrix={};var edges=body.edges;for(var i=0;i<nodesArray.length;i++){var node=nodesArray[i];var cell={};D_matrix[node]=cell;for(var j=0;j<nodesArray.length;j++){cell[nodesArray[j]]=i==j?0:1e9}}for(var _i=0;_i<edgesArray.length;_i++){var edge=edges[edgesArray[_i]];if(edge.connected===true&&D_matrix[edge.fromId]!==undefined&&D_matrix[edge.toId]!==undefined){D_matrix[edge.fromId][edge.toId]=1;D_matrix[edge.toId][edge.fromId]=1}}var nodeCount=nodesArray.length;for(var k=0;k<nodeCount;k++){var knode=nodesArray[k];var kcolm=D_matrix[knode];for(var _i2=0;_i2<nodeCount-1;_i2++){var inode=nodesArray[_i2];var icolm=D_matrix[inode];for(var _j=_i2+1;_j<nodeCount;_j++){var jnode=nodesArray[_j];var jcolm=D_matrix[jnode];var val=Math.min(icolm[jnode],icolm[knode]+kcolm[jnode]);icolm[jnode]=val;jcolm[inode]=val}}}return D_matrix}}]);return FloydWarshall}();exports[\"default\"]=FloydWarshall}])});\n",
            "type": "application/javascript",
            "module-type": "library"
        }
    }
}
{
    "tiddlers": {
        "$:/plugins/flibbles/relink/js/bulkops.js": {
            "text": "/*\\\nmodule-type: startup\n\nReplaces the relinkTiddler defined in $:/core/modules/wiki-bulkops.js\n\nThis is a startup instead of a wikimethods module-type because it's the only\nway to ensure this runs after the old relinkTiddler method is applied.\n\n\\*/\n(function(){\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\n\nexports.name = \"redefine-relinkTiddler\";\nexports.synchronous = true;\n// load-modules is when wikimethods are applied in\n// ``$:/core/modules/startup/load-modules.js``\nexports.after = ['load-modules'];\n\nexports.startup = function() {\n\t$tw.Wiki.prototype.relinkTiddler = relinkTiddler;\n};\n\n/** Walks through all relinkable tiddlers and relinks them.\n *  This replaces the existing function in core Tiddlywiki.\n */\nfunction relinkTiddler(fromTitle, toTitle, options) {\n\toptions = options || {};\n\tvar failures = [];\n\tvar indexer = utils.getIndexer(this);\n\tvar records = indexer.relinkLookup(fromTitle, toTitle, options);\n\tfor (var title in records) {\n\t\tvar entries = records[title],\n\t\t\tchanges = Object.create(null),\n\t\t\tupdate = false,\n\t\t\tfails = false;\n\t\tfor (var field in entries) {\n\t\t\tvar entry = entries[field];\n\t\t\tfails = fails || entry.impossible;\n\t\t\tif (entry.output) {\n\t\t\t\tchanges[field] = entry.output;\n\t\t\t\tupdate = true;\n\t\t\t}\n\t\t}\n\t\tif (fails) {\n\t\t\tfailures.push(title);\n\t\t}\n\t\t// If any fields changed, update tiddler\n\t\tif (update) {\n\t\t\tconsole.log(\"Renaming '\"+fromTitle+\"' to '\"+toTitle+\"' in '\" + title + \"'\");\n\n\t\t\tvar tiddler = this.getTiddler(title);\n\t\t\tvar newTiddler = new $tw.Tiddler(tiddler,changes,this.getModificationFields())\n\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-relinking-tiddler\",newTiddler,tiddler);\n\t\t\tthis.addTiddler(newTiddler);\n\t\t\t// If the title changed, we need to perform a nested rename\n\t\t\tif (newTiddler.fields.title !== title) {\n\t\t\t\tthis.deleteTiddler(title);\n\t\t\t\tthis.relinkTiddler(title, newTiddler.fields.title,options);\n\t\t\t}\n\t\t}\n\t};\n\tif (failures.length > 0) {\n\t\tvar options = $tw.utils.extend(\n\t\t\t{ variables: {to: toTitle, from: fromTitle},\n\t\t\t  wiki: this},\n\t\t\toptions );\n\t\tlanguage.reportFailures(failures, options);\n\t}\n};\n\n})();\n",
            "module-type": "startup",
            "title": "$:/plugins/flibbles/relink/js/bulkops.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/indexer.js": {
            "text": "/*\\\nmodule-type: indexer\n\nIndexes results from tiddler reference reports so we don't have to call them\nso much.\n\n\\*/\n\n\"use strict\";\n\nvar utils = require(\"./utils.js\");\nvar TiddlerContext = utils.getContext('tiddler');\n\nfunction Indexer(wiki) {\n\tthis.wiki = wiki;\n};\n\nIndexer.prototype.init = function() {\n\tthis.rebuild();\n};\n\nIndexer.prototype.rebuild = function() {\n\tthis.index = null;\n\tthis.backIndex = null;\n\tthis.contexts = Object.create(null);\n\tthis.changedTiddlers = undefined;\n\tthis.lastRelinkFrom = undefined;\n};\n\nIndexer.prototype.update = function(updateDescriptor) {\n\tif (!this.index) {\n\t\treturn;\n\t}\n\tvar title;\n\tif (!this.changedTiddlers) {\n\t\tthis.changedTiddlers = Object.create(null);\n\t}\n\tif (updateDescriptor.old.exists) {\n\t\ttitle = updateDescriptor.old.tiddler.fields.title;\n\t\tthis.changedTiddlers[title] = {deleted: true};\n\t\tthis._purge(title);\n\t}\n\tif (updateDescriptor['new'].exists) {\n\t\t// If its the same tiddler as old, this overrides the 'deleted' entry\n\t\ttitle = updateDescriptor['new'].tiddler.fields.title;\n\t\tthis.changedTiddlers[title] = {modified: true};\n\t}\n};\n\nIndexer.prototype.lookup = function(title) {\n\tthis._upkeep();\n\treturn this.index[title];\n};\n\nIndexer.prototype.reverseLookup = function(title) {\n\tthis._upkeep();\n\treturn this.backIndex[title] || Object.create(null);\n};\n\nIndexer.prototype.relinkLookup = function(fromTitle, toTitle, options) {\n\tthis._upkeep();\n\tvar shortlist = undefined;\n\tif (this.lastRelinkFrom === fromTitle) {\n\t\tif (this.lastRelinkTo === toTitle) {\n\t\t\t// We need to reintroduce the relink cache, where temporary info\n\t\t\t// was stored.\n\t\t\toptions.cache = this.lastRelinkCache;\n\t\t\treturn this.lastRelinkResult;\n\t\t}\n\t\tshortlist = Object.keys(this.lastRelinkResult);\n\t}\n\tthis.lastRelinkResult = utils.getRelinkResults(this.wiki, fromTitle, toTitle, this.context, shortlist, options);\n\tthis.lastRelinkTo = toTitle;\n\tthis.lastRelinkFrom = fromTitle;\n\tthis.lastRelinkCache = options.cache;\n\treturn this.lastRelinkResult;\n};\n\nIndexer.prototype._upkeep = function() {\n\tvar title;\n\tif (this.changedTiddlers && (this.context.changed(this.changedTiddlers) || this.context.parent.changed(this.changedTiddlers))) {\n\t\t// If global macro context or whitelist context changed, wipe all\n\t\tthis.rebuild();\n\t}\n\tif (!this.index) {\n\t\tthis.index = Object.create(null);\n\t\tthis.backIndex = Object.create(null);\n\t\tthis.context = utils.getWikiContext(this.wiki);\n\t\tvar titles = this.wiki.getRelinkableTitles();\n\t\tfor (var i = 0; i < titles.length; i++) {\n\t\t\tthis._populate(titles[i]);\n\t\t};\n\t} else if (this.changedTiddlers) {\n\t\t// If there are cached changes, we apply them now.\n\t\tfor (title in this.contexts) {\n\t\t\tvar tiddlerContext = this.contexts[title];\n\t\t\tif (tiddlerContext.changed(this.changedTiddlers)) {\n\t\t\t\tthis._purge(title);\n\t\t\t\tthis._populate(title);\n\t\t\t\tthis._dropResults(title);\n\t\t\t\t// Wipe this change, so we don't risk updating it twice.\n\t\t\t\tthis.changedTiddlers[title] = undefined;\n\t\t\t}\n\t\t}\n\t\tfor (title in this.changedTiddlers) {\n\t\t\tvar change = this.changedTiddlers[title];\n\t\t\tif (change && change.modified) {\n\t\t\t\tthis._purge(title);\n\t\t\t\tthis._populate(title);\n\t\t\t\tthis._dropResults(title);\n\t\t\t}\n\t\t}\n\t\tthis.changedTiddlers = undefined;\n\t}\n};\n\nIndexer.prototype._purge = function(title) {\n\tfor (var entry in this.index[title]) {\n\t\tdelete this.backIndex[entry][title];\n\t}\n\tdelete this.contexts[title];\n\tdelete this.index[title];\n};\n\n// This drops the cached relink results if unsanctioned tiddlers were changed\nIndexer.prototype._dropResults = function(title) {\n\tvar tiddler = this.wiki.getTiddler(title);\n\tif (title !== this.lastRelinkFrom\n\t&& title !== this.lastRelinkTo\n\t&& (!tiddler\n\t\t|| !$tw.utils.hop(tiddler.fields, 'draft.of') // is a draft\n\t\t|| tiddler.fields['draft.of'] !== this.lastRelinkFrom // draft of target\n\t\t|| references(this.index[title], this.lastRelinkFrom))) { // draft references target\n\t\t// This is not the draft of the last relinked title,\n\t\t// so our cached results should be wiped.\n\t\tthis.lastRelinkFrom = undefined;\n\t}\n};\n\nfunction references(list, item) {\n\treturn list !== undefined && list[item];\n};\n\nIndexer.prototype._populate = function(title) {\n\t// Fetch the report for a title, and populate the indexes with result\n\tvar tiddlerContext = new TiddlerContext(this.wiki, this.context, title);\n\tvar references = utils.getTiddlerRelinkReferences(this.wiki, title, tiddlerContext);\n\tthis.index[title] = references;\n\tif (tiddlerContext.hasImports()) {\n\t\tthis.contexts[title] = tiddlerContext;\n\t}\n\tfor (var ref in references) {\n\t\tthis.backIndex[ref] = this.backIndex[ref] || Object.create(null);\n\t\tthis.backIndex[ref][title] = references[ref];\n\t}\n};\n\nexports.RelinkIndexer = Indexer;\n",
            "module-type": "indexer",
            "title": "$:/plugins/flibbles/relink/js/indexer.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/language.js": {
            "text": "/*\\\nmodule-type: library\n\nThis handles all logging and alerts Relink emits.\n\n\\*/\n\nexports.getString = function(title, options) {\n\ttitle = \"$:/plugins/flibbles/relink/language/\" + title;\n\treturn options.wiki.renderTiddler(\"text/plain\", title, options);\n};\n\nvar logger;\n\nexports.reportFailures = function(failureList, options) {\n\tif (!logger) {\n\t\tlogger = new $tw.utils.Logger(\"Relinker\");\n\t}\n\tvar alertString = this.getString(\"Error/ReportFailedRelinks\", options)\n\tvar alreadyReported = Object.create(null);\n\tvar reportList = [];\n\t$tw.utils.each(failureList, function(f) {\n\t\tif (!alreadyReported[f]) {\n\t\t\tif ($tw.browser) {\n\t\t\t\t// This might not make the link if the title is complicated.\n\t\t\t\t// Whatever.\n\t\t\t\treportList.push(\"\\n* [[\" + f + \"]]\");\n\t\t\t} else {\n\t\t\t\treportList.push(\"\\n* \" + f);\n\t\t\t}\n\t\t\talreadyReported[f] = true;\n\t\t}\n\t});\n\tlogger.alert(alertString + \"\\n\" + reportList.join(\"\"));\n};\n",
            "module-type": "library",
            "title": "$:/plugins/flibbles/relink/js/language.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/mangler.js": {
            "text": "/*\\\nmodule-type: widget\n\nCreates a mangler widget for field validation. This isn't meant to be used\nby the user. It's only used in Relink configuration.\n\n\\*/\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\n\nvar RelinkManglerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"relink-add-field\", handler: \"handleAddFieldEvent\"},\n\t\t{type: \"relink-add-operator\", handler: \"handleAddOperatorEvent\"},\n\t\t{type: \"relink-add-parameter\", handler: \"handleAddParameterEvent\"},\n\t\t{type: \"relink-add-attribute\", handler: \"handleAddAttributeEvent\"}\n\t]);\n};\n\nexports.relinkmangler = RelinkManglerWidget;\n\nRelinkManglerWidget.prototype = new Widget();\n\n// This wraps alert so it can be monkeypatched during testing.\nRelinkManglerWidget.prototype.alert = function(message) {\n\talert(message);\n};\n\nRelinkManglerWidget.prototype.handleAddFieldEvent = function(event) {\n\tvar param = event.paramObject;\n\tif (typeof param !== \"object\" || !param.field) {\n\t\t// Can't handle it.\n\t\treturn true;\n\t}\n\tvar trimmedName = param.field.toLowerCase().trim();\n\tif (!trimmedName) {\n\t\t// Still can't handle it, but don't warn.\n\t\treturn true;\n\t}\n\tif(!$tw.utils.isValidFieldName(trimmedName)) {\n\t\tthis.alert($tw.language.getString(\n\t\t\t\"InvalidFieldName\",\n\t\t\t{variables:\n\t\t\t\t{fieldName: trimmedName}\n\t\t\t}\n\t\t));\n\t} else {\n\t\tadd(this.wiki, \"fields\", trimmedName);\n\t}\n\treturn true;\n};\n\n/**Not much validation, even though there are definitely illegal\n * operator names. If you input on, Relink won't relink it, but it\n * won't choke on it either. Tiddlywiki will...\n */\nRelinkManglerWidget.prototype.handleAddOperatorEvent = function(event) {\n\tvar param = event.paramObject;\n\tif (param) {\n\t\tadd(this.wiki, \"operators\", param.operator);\n\t}\n\treturn true;\n};\n\nRelinkManglerWidget.prototype.handleAddParameterEvent = function(event) {\n\tvar param = event.paramObject;\n\tif (param && param.macro && param.parameter) {\n\t\tif (/\\s/.test(param.macro.trim())) {\n\t\t\tthis.alert(language.getString(\n\t\t\t\t\"Error/InvalidMacroName\",\n\t\t\t\t{ variables: {macroName: param.macro},\n\t\t\t\t  wiki: this.wiki\n\t\t\t\t}\n\t\t\t));\n\t\t} else if (/[ \\/]/.test(param.parameter.trim())) {\n\t\t\tthis.alert(language.getString(\n\t\t\t\t\"Error/InvalidParameterName\",\n\t\t\t\t{ variables: {parameterName: param.parameter},\n\t\t\t\t  wiki: this.wiki\n\t\t\t\t}\n\t\t\t));\n\t\t} else {\n\t\t\tadd(this.wiki, \"macros\", param.macro, param.parameter);\n\t\t}\n\t}\n\treturn true;\n};\n\nRelinkManglerWidget.prototype.handleAddAttributeEvent = function(event) {\n\tvar param = event.paramObject;\n\tif (param && param.element && param.attribute) {\n\t\tif (/[ \\/]/.test(param.element.trim())) {\n\t\t\tthis.alert(language.getString(\n\t\t\t\t\"Error/InvalidElementName\",\n\t\t\t\t{ variables: {elementName: param.element},\n\t\t\t\t  wiki: this.wiki\n\t\t\t\t}\n\t\t\t));\n\t\t} else if (/[ \\/]/.test(param.attribute.trim())) {\n\t\t\tthis.alert(language.getString(\n\t\t\t\t\"Error/InvalidAttributeName\",\n\t\t\t\t{ variables: {attributeName: param.attribute},\n\t\t\t\t  wiki: this.wiki\n\t\t\t\t}\n\t\t\t));\n\t\t} else {\n\t\t\tadd(this.wiki, \"attributes\", param.element, param.attribute);\n\t\t}\n\t}\n\treturn true;\n};\n\nfunction add(wiki, category/*, path parts*/) {\n\tvar path = \"$:/config/flibbles/relink/\" + category;\n\tfor (var x = 2; x < arguments.length; x++) {\n\t\tvar part = arguments[x];\n\t\t// Abort if it's falsy, or only whitespace. Also, trim spaces\n\t\tif (!part || !(part = part.trim())) {\n\t\t\treturn;\n\t\t}\n\t\tpath = path + \"/\" + part;\n\t}\n\tvar def = utils.getDefaultType(wiki);\n\twiki.addTiddler({title: path, text: def});\n};\n",
            "module-type": "widget",
            "title": "$:/plugins/flibbles/relink/js/mangler.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/settings.js": {
            "text": "/*\\\nmodule-type: library\n\nThis handles the fetching and distribution of relink settings.\n\n\\*/\n\nvar utils = require('./utils');\n\n///// Legacy. You used to be able to access the type from utils.\nexports.getType = utils.getType;\n/////\n",
            "module-type": "library",
            "title": "$:/plugins/flibbles/relink/js/settings.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/utils.js": {
            "text": "/*\\\nmodule-type: library\n\nUtility methods for relink.\n\n\\*/\n\nvar macroFilter =  \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\";\n\n/**This works nearly identically to $tw.modules.getModulesByTypeAsHashmap\n * except that this also takes care of migrating V1 relink modules.\n */\nexports.getModulesByTypeAsHashmap = function(moduleType, nameField) {\n\tvar results = Object.create(null);\n\t$tw.modules.forEachModuleOfType(moduleType, function(title, module) {\n\t\tvar key = module[nameField];\n\t\tif (key !== undefined) {\n\t\t\tresults[key] = module;\n\t\t} else {\n\t\t\tfor (var entry in module) {\n\t\t\t\tresults[entry] = {\n\t\t\t\t\trelink: module[entry],\n\t\t\t\t\treport: function() {}};\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\nexports.getTiddlerRelinkReferences = function(wiki, title, context) {\n\tvar tiddler = wiki.getTiddler(title),\n\t\treferences = Object.create(null),\n\t\toptions = {settings: context, wiki: wiki};\n\tif (tiddler) {\n\t\ttry {\n\t\t\tfor (var relinker in getRelinkOperators()) {\n\t\t\t\tgetRelinkOperators()[relinker].report(tiddler, function(title, blurb) {\n\t\t\t\t\treferences[title] = references[title] || [];\n\t\t\t\t\treferences[title].push(blurb);\n\t\t\t\t}, options);\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tif (e.message) {\n\t\t\t\te.message = e.message + \"\\nWhen reporting '\" + title + \"' Relink references\";\n\t\t\t}\n\t\t\tthrow e;\n\t\t}\n\t}\n\treturn references;\n};\n\n/** Returns a pair like this,\n *  { title: {field: entry, ... }, ... }\n */\nexports.getRelinkResults = function(wiki, fromTitle, toTitle, context, tiddlerList, options) {\n\toptions = options || {};\n\toptions.wiki = options.wiki || wiki;\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\tvar changeList = Object.create(null);\n\tif(fromTitle && toTitle) {\n\t\tif (tiddlerList === undefined) {\n\t\t\ttiddlerList = wiki.getRelinkableTitles();\n\t\t}\n\t\tfor (var i = 0; i < tiddlerList.length; i++) {\n\t\t\tvar title = tiddlerList[i];\n\t\t\tvar tiddler = wiki.getTiddler(title);\n\t\t\tif(tiddler && !tiddler.fields[\"plugin-type\"]) {\n\t\t\t\ttry {\n\t\t\t\t\tvar entries = Object.create(null),\n\t\t\t\t\t\toperators = getRelinkOperators();\n\t\t\t\t\toptions.settings = new Contexts.tiddler(wiki, context, title);\n\t\t\t\t\tfor (var operation in operators) {\n\t\t\t\t\t\toperators[operation].relink(tiddler, fromTitle, toTitle, entries, options);\n\t\t\t\t\t}\n\t\t\t\t\tfor (var field in entries) {\n\t\t\t\t\t\t// So long as there is one key,\n\t\t\t\t\t\t// add it to the change list.\n\t\t\t\t\t\tchangeList[title] = entries;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// Should we test for instanceof Error instead?: yes\n\t\t\t\t\t// Does that work in the testing environment?: no\n\t\t\t\t\tif (e.message) {\n\t\t\t\t\t\te.message = e.message + \"\\nWhen relinking '\" + title + \"'\";\n\t\t\t\t\t}\n\t\t\t\t\tthrow e;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn changeList;\n};\n\nvar Contexts = $tw.modules.applyMethods('relinkcontext');\n\nexports.getContext = function(name) {\n\treturn Contexts[name];\n};\n\nexports.getWikiContext = function(wiki) {\n\t// This gives a fresh context every time. It is up to the indexer or\n\t// the cache to preserve those contexts for as long as needed.\n\tvar whitelist = new Contexts.whitelist(wiki);\n\treturn new Contexts.import(wiki, whitelist, macroFilter);\n};\n\n/** Returns the Relink indexer, or a dummy object which pretends to be one.\n */\nexports.getIndexer = function(wiki) {\n\tif (!wiki._relink_indexer) {\n\t\twiki._relink_indexer = (wiki.getIndexer && wiki.getIndexer(\"RelinkIndexer\")) || new (require('$:/plugins/flibbles/relink/js/utils/backupIndexer.js'))(wiki);\n\t}\n\treturn wiki._relink_indexer;\n};\n\n/**Relinking supports a cache that persists throughout a whole relink op.\n * This is because the Tiddlywiki caches may get wiped multiple times\n * throughout the course of a relink.\n */\nexports.getCacheForRun = function(options, cacheName, initializer) {\n\toptions.cache = options.cache || Object.create(null);\n\tif (!$tw.utils.hop(options.cache, cacheName)) {\n\t\toptions.cache[cacheName] = initializer();\n\t}\n\treturn options.cache[cacheName];\n};\n\n/**Returns a specific relinker.\n * This is useful for wikitext rules which need to parse a filter or a list\n */\nexports.getType = function(name) {\n\tvar Handler = getFieldTypes()[name];\n\treturn Handler ? new Handler() : undefined;\n};\n\nexports.getTypes = function() {\n\t// We don't return fieldTypes, because we don't want it modified,\n\t// and we need to filter out legacy names.\n\tvar rtn = Object.create(null);\n\tfor (var type in getFieldTypes()) {\n\t\tvar typeObject = getFieldTypes()[type];\n\t\trtn[typeObject.typeName] = typeObject;\n\t}\n\treturn rtn;\n};\n\nexports.getDefaultType = function(wiki) {\n\tvar tiddler = wiki.getTiddler(\"$:/config/flibbles/relink/settings/default-type\");\n\tvar defaultType = tiddler && tiddler.fields.text;\n\t// make sure the default actually exists, otherwise default\n\treturn fieldTypes[defaultType] ? defaultType : \"title\";\n};\n\nvar fieldTypes;\n\nfunction getFieldTypes() {\n\tif (!fieldTypes) {\n\t\tfieldTypes = Object.create(null);\n\t\t$tw.modules.forEachModuleOfType(\"relinkfieldtype\", function(title, exports) {\n\t\t\tfunction NewType() {};\n\t\t\tNewType.prototype = exports;\n\t\t\tNewType.typeName = exports.name;\n\t\t\tfieldTypes[exports.name] = NewType;\n\t\t\t// For legacy, if the NewType doesn't have a report method, we add one\n\t\t\tif (!exports.report) {\n\t\t\t\texports.report = function() {};\n\t\t\t}\n\t\t\t// Also for legacy, some of the field types can go by other names\n\t\t\tif (exports.aliases) {\n\t\t\t\t$tw.utils.each(exports.aliases, function(alias) {\n\t\t\t\t\tfieldTypes[alias] = NewType;\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\treturn fieldTypes;\n}\n\nvar relinkOperators;\n\nfunction getRelinkOperators() {\n\tif (!relinkOperators) {\n\t\trelinkOperators = exports.getModulesByTypeAsHashmap('relinkoperator', 'name');\n\t}\n\treturn relinkOperators;\n};\n",
            "module-type": "library",
            "title": "$:/plugins/flibbles/relink/js/utils.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/wikimethods.js": {
            "text": "/*\\\nmodule-type: wikimethod\n\nIntroduces some utility methods used by Relink.\n\n\\*/\n\nvar utils = require(\"./utils.js\");\n\nexports.getTiddlerRelinkReferences = function(title) {\n\treturn utils.getIndexer(this).lookup(title);\n};\n\nexports.getTiddlerRelinkBackreferences = function(title) {\n\treturn utils.getIndexer(this).reverseLookup(title);\n};\n\nexports.getRelinkableTitles = function() {\n\tvar toUpdate = \"$:/config/flibbles/relink/to-update\";\n\tvar wiki = this;\n\treturn this.getCacheForTiddler(toUpdate, \"relink-toUpdate\", function() {\n\t\tvar tiddler = wiki.getTiddler(toUpdate);\n\t\tif (tiddler) {\n\t\t\treturn wiki.compileFilter(tiddler.fields.text);\n\t\t} else {\n\t\t\treturn wiki.allTitles;\n\t\t}\n\t})();\n};\n",
            "module-type": "wikimethod",
            "title": "$:/plugins/flibbles/relink/js/wikimethods.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/filteroperators/all_relinkable.js": {
            "text": "/*\\\nmodule-type: allfilteroperator\n\nFilter function for [all[relinkable]].\nReturns all tiddlers subject to relinking.\n\n\\*/\n\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.relinkable = function(source,prefix,options) {\n\treturn options.wiki.getRelinkableTitles();\n};\n\n})();\n",
            "module-type": "allfilteroperator",
            "title": "$:/plugins/flibbles/relink/js/filteroperators/all_relinkable.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/filteroperators/references.js": {
            "text": "/*\\\nmodule-type: relinkfilteroperator\n\nGiven a title as an operand, returns all non-shadow tiddlers that have any\nsort of updatable reference to it.\n\n`relink:backreferences[]]`\n`relink:references[]]`\n\nReturns all tiddlers that reference `fromTiddler` somewhere inside them.\n\nInput is ignored. Maybe it shouldn't do this.\n\\*/\n\nvar LinkedList = $tw.utils.LinkedList;\n\nif (!LinkedList) {\n\t/* If the linked list isn't available, make a quick crappy version. */\n\tLinkedList = function() {this.array=[];};\n\n\tLinkedList.prototype.pushTop = function(array) {\n\t\t$tw.utils.pushTop(this.array, array);\n\t};\n\n\tLinkedList.prototype.toArray = function() {\n\t\treturn this.array;\n\t};\n};\n\nexports.backreferences = function(source,operator,options) {\n\tvar results = new LinkedList();\n\tsource(function(tiddler,title) {\n\t\tresults.pushTop(Object.keys(options.wiki.getTiddlerRelinkBackreferences(title,options)));\n\t});\n\treturn results.toArray();\n};\n\nexports.references = function(source,operator,options) {\n\tvar results = new LinkedList();\n\tsource(function(tiddler,title) {\n\t\tvar refs = options.wiki.getTiddlerRelinkReferences(title,options);\n\t\tif (refs) {\n\t\t\tresults.pushTop(Object.keys(refs));\n\t\t}\n\t});\n\treturn results.toArray();\n};\n",
            "module-type": "relinkfilteroperator",
            "title": "$:/plugins/flibbles/relink/js/filteroperators/references.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/filteroperators/relink.js": {
            "text": "/*\\\nmodule-type: filteroperator\n\nThis filter acts as a namespace for several small, simple filters, such as\n\n`[relink:impossible[]]`\n\n\\*/\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\n\nvar relinkFilterOperators;\n\nfunction getRelinkFilterOperators() {\n\tif(!relinkFilterOperators) {\n\t\trelinkFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"relinkfilteroperator\",\n\t\t                         relinkFilterOperators);\n\t}\n\treturn relinkFilterOperators;\n}\n\nexports.relink = function(source,operator,options) {\n\tvar suffixPair = parseSuffix(operator.suffix);\n\tvar relinkFilterOperator = getRelinkFilterOperators()[suffixPair[0]];\n\tif (relinkFilterOperator) {\n\t\tvar newOperator = $tw.utils.extend({}, operator);\n\t\tnewOperator.suffix = suffixPair[1];\n\t\treturn relinkFilterOperator(source, newOperator, options);\n\t} else {\n\t\treturn [language.getString(\"Error/RelinkFilterOperator\", options)];\n\t}\n};\n\nfunction parseSuffix(suffix) {\n\tvar index = suffix? suffix.indexOf(\":\"): -1;\n\tif (index >= 0) {\n\t\treturn [suffix.substr(0, index), suffix.substr(index+1)];\n\t} else {\n\t\treturn [suffix];\n\t}\n}\n",
            "module-type": "filteroperator",
            "title": "$:/plugins/flibbles/relink/js/filteroperators/relink.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/filteroperators/report.js": {
            "text": "/*\\\nmodule-type: relinkfilteroperator\n\nGiven a title as an operand, returns a string for each occurrence of that title\nwithin each input title.\n\n[[title]] +[relink:report[fromTiddler]]`\n\nReturns string representation of fromTiddler occurrences in title.\n\\*/\n\nexports.report = function(source,operator,options) {\n\tvar fromTitle = operator.operand,\n\t\tresults = [];\n\tif (fromTitle) {\n\t\tvar blurbs = options.wiki.getTiddlerRelinkBackreferences(fromTitle);\n\t\tsource(function(tiddler, title) {\n\t\t\tif (blurbs[title]) {\n\t\t\t\tresults = results.concat(blurbs[title]);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n",
            "module-type": "relinkfilteroperator",
            "title": "$:/plugins/flibbles/relink/js/filteroperators/report.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/filteroperators/signatures.js": {
            "text": "/*\\\nmodule-type: relinkfilteroperator\n\nThis filter returns all input tiddlers which are a source of\nrelink configuration.\n\n`[all[tiddlers+system]relink:source[macros]]`\n\n\\*/\n\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\n\nexports.signatures = function(source,operator,options) {\n\tvar plugin = operator.operand || null;\n\tvar set = getSet(options);\n\tif (plugin === \"$:/core\") {\n\t\t// Core doesn't actually have any settings. We mean Relink\n\t\tplugin = \"$:/plugins/flibbles/relink\";\n\t}\n\tvar signatures = [];\n\tfor (var signature in set) {\n\t\tvar source = set[signature].source;\n\t\tif (options.wiki.getShadowSource(source) === plugin) {\n\t\t\tsignatures.push(signature);\n\t\t}\n\t}\n\treturn signatures;\n};\n\nexports.type = function(source,operator,options) {\n\tvar results = [];\n\tvar set = getSet(options);\n\tsource(function(tiddler, signature) {\n\t\tif (set[signature]) {\n\t\t\tresults.push(set[signature].name);\n\t\t}\n\t});\n\treturn results;\n};\n\nexports.types = function(source,operator,options) {\n\tvar def = utils.getDefaultType(options.wiki);\n\tvar types = Object.keys(utils.getTypes());\n\ttypes.sort();\n\t// move default to front\n\ttypes.sort(function(x,y) { return x === def ? -1 : y === def ? 1 : 0; });\n\treturn types;\n};\n\nexports.source = function(source,operator,options) {\n\tvar results = [];\n\tvar category = operator.suffix;\n\tvar set = getSet(options);\n\tsource(function(tiddler, signature) {\n\t\tif (set[signature]) {\n\t\t\tresults.push(set[signature].source);\n\t\t}\n\t});\n\treturn results;\n};\n\nfunction getSet(options) {\n\treturn options.wiki.getGlobalCache(\"relink-signatures\", function() {\n\t\tvar config = utils.getWikiContext(options.wiki);\n\t\tvar set = Object.create(null);\n\t\tvar categories = {\n\t\t\tattributes: config.getAttributes(),\n\t\t\tfields: config.getFields(),\n\t\t\tmacros: config.getMacros(),\n\t\t\toperators: config.getOperators()};\n\t\t$tw.utils.each(categories, function(list, category) {\n\t\t\t$tw.utils.each(list, function(item, key) {\n\t\t\t\tset[category + \"/\" + key] = item;\n\t\t\t});\n\t\t});\n\t\treturn set;\n\t});\n};\n",
            "module-type": "relinkfilteroperator",
            "title": "$:/plugins/flibbles/relink/js/filteroperators/signatures.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/filteroperators/splitafter.js": {
            "text": "/*\\\ntitle: $:/core/modules/filters/splitbefore.js\ntype: application/javascript\nmodule-type: relinkfilteroperator\n\nFilter operator that splits each result on the last occurance of the specified separator and returns the last bit.\n\nWhat does this have to do with relink? Nothing. I need this so I can render\nthe configuration menu. I //could// use [splitregexp[]], but then I'd be\nlimited to Tiddlywiki v5.1.20 or later.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.splitafter = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar index = title.lastIndexOf(operator.operand);\n\t\tif(index < 0) {\n\t\t\t$tw.utils.pushTop(results,title);\n\t\t} else {\n\t\t\t$tw.utils.pushTop(results,title.substr(index+1));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n\n",
            "title": "$:/plugins/flibbles/relink/js/filteroperators/splitafter.js",
            "type": "application/javascript",
            "module-type": "relinkfilteroperator"
        },
        "$:/plugins/flibbles/relink/js/filteroperators/wouldchange.js": {
            "text": "/*\\\nmodule-type: relinkfilteroperator\n\nwouldchange: Generator.\n\nGiven each input title, it returns all the tiddlers that would be changed if the currentTiddler were to be renamed to the operand.\n\nimpossible: filters all source titles for ones that encounter errors on failure.\n\nTHESE ARE INTERNAL FILTER OPERATOR AND ARE NOT INTENDED TO BE USED BY USERS.\n\n\\*/\n\nvar language = require(\"$:/plugins/flibbles/relink/js/language.js\");\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\n\nexports.wouldchange = function(source,operator,options) {\n\tvar from = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tto = operator.operand,\n\t\tindexer = utils.getIndexer(options.wiki),\n\t\trecords = indexer.relinkLookup(from, to, options);\n\treturn Object.keys(records);\n};\n\nexports.impossible = function(source,operator,options) {\n\tvar from = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tto = operator.operand,\n\t\tresults = [],\n\t\tindexer = utils.getIndexer(options.wiki),\n\t\trecords = indexer.relinkLookup(from, to, options);\n\tsource(function(tiddler, title) {\n\t\tvar fields = records[title];\n\t\tif (fields) {\n\t\t\tfor (var field in fields) {\n\t\t\t\tif (fields[field].impossible) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n",
            "module-type": "relinkfilteroperator",
            "title": "$:/plugins/flibbles/relink/js/filteroperators/wouldchange.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/fieldtypes/filter.js": {
            "text": "/*\\\nThis specifies logic for updating filters to reflect title changes.\n\\*/\n\nvar refHandler = require(\"$:/plugins/flibbles/relink/js/fieldtypes/reference\");\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder\");\n\nexports.name = \"filter\";\n\nexports.report = function(filter, callback, options) {\n\t// I cheat here for now. Relink handles reporting too in cases where\n\t// fromTitle is undefined. toTitle is the callback in those cases.\n\texports.relink(filter, undefined, callback, options);\n};\n\n/**Returns undefined if no change was made.\n */\nexports.relink = function(filter, fromTitle, toTitle, options) {\n\tvar relinker = new Rebuilder(filter),\n\t\tp = 0, // Current position in the filter string\n\t\tmatch, noPrecedingWordBarrier,\n\t\twordBarrierRequired=false;\n\tvar whitespaceRegExp = /\\s+/mg,\n\t\toperandRegExp = /((?:\\+|\\-|~|=|\\:\\w+)?)(?:(\\[)|(?:\"([^\"]*)\")|(?:'([^']*)')|([^\\s\\[\\]]+))/mg,\n\t\tblurbs = [];\n\twhile(p < filter.length) {\n\t\t// Skip any whitespace\n\t\twhitespaceRegExp.lastIndex = p;\n\t\tmatch = whitespaceRegExp.exec(filter);\n\t\tnoPrecedingWordBarrier = false;\n\t\tif(match && match.index === p) {\n\t\t\tp = p + match[0].length;\n\t\t} else if (p != 0) {\n\t\t\tif (wordBarrierRequired) {\n\t\t\t\trelinker.add(' ', p, p);\n\t\t\t\twordBarrierRequired = false;\n\t\t\t} else {\n\t\t\t\tnoPrecedingWordBarrier = true;\n\t\t\t}\n\t\t}\n\t\t// Match the start of the operation\n\t\tif(p < filter.length) {\n\t\t\tvar val;\n\t\t\toperandRegExp.lastIndex = p;\n\t\t\tmatch = operandRegExp.exec(filter);\n\t\t\tif(!match || match.index !== p) {\n\t\t\t\t// It's a bad filter\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t\tif(match[1]) { // prefix\n\t\t\t\tp += match[1].length;\n\t\t\t}\n\t\t\tif(match[2]) { // Opening square bracket\n\t\t\t\t// We check if this is a standalone title,\n\t\t\t\t// like `[[MyTitle]]`. We treat those like\n\t\t\t\t// `\"MyTitle\"` or `MyTitle`. Not like a run.\n\t\t\t\tvar standaloneTitle = /\\[\\[([^\\]]+)\\]\\]/g;\n\t\t\t\tstandaloneTitle.lastIndex = p;\n\t\t\t\tvar alone = standaloneTitle.exec(filter);\n\t\t\t\tif (!alone || alone.index != p) {\n\t\t\t\t\tif (fromTitle === undefined) {\n\t\t\t\t\t\t// toTitle is a callback method in this case.\n\t\t\t\t\t\tp =reportFilterOperation(filter, function(title, blurb){\n\t\t\t\t\t\t\tif (match[1]) {\n\t\t\t\t\t\t\t\tblurbs.push([title, match[1] + (blurb || '')]);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tblurbs.push([title, blurb]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},p,options.settings,options);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tp =relinkFilterOperation(relinker,fromTitle,toTitle,filter,p,options.settings,options);\n\t\t\t\t\t}\n\t\t\t\t\t// It's a legit run\n\t\t\t\t\tif (p === undefined) {\n\t\t\t\t\t\t// The filter is malformed\n\t\t\t\t\t\t// We do nothing.\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tbracketTitle = alone[1];\n\t\t\t\toperandRegExp.lastIndex = standaloneTitle.lastIndex;\n\t\t\t\tval = alone[1];\n\t\t\t} else {\n\t\t\t\t// standalone Double quoted string, single\n\t\t\t\t// quoted string, or noquote ahead.\n\t\t\t\tval = match[3] || match[4] || match[5];\n\t\t\t}\n\t\t\t// From here on, we're dealing with a standalone title\n\t\t\t// expression. like `\"MyTitle\"` or `[[MyTitle]]`\n\t\t\t// We're much more flexible about relinking these.\n\t\t\tvar preference = undefined;\n\t\t\tif (match[3]) {\n\t\t\t\tpreference = '\"';\n\t\t\t} else if (match[4]) {\n\t\t\t\tpreference = \"'\";\n\t\t\t} else if (match[5]) {\n\t\t\t\tpreference = '';\n\t\t\t}\n\t\t\tif (fromTitle === undefined) {\n\t\t\t\t// Report it\n\t\t\t\tblurbs.push([val, match[1]]);\n\t\t\t} else if (val === fromTitle) {\n\t\t\t\t// Relink it\n\t\t\t\tvar entry = {name: \"title\"};\n\t\t\t\tvar newVal = wrapTitle(toTitle, preference);\n\t\t\t\tif (newVal === undefined || (options.inBraces && newVal.indexOf('}}}') >= 0)) {\n\t\t\t\t\tif (!options.placeholder) {\n\t\t\t\t\t\trelinker.impossible = true;\n\t\t\t\t\t\tp = operandRegExp.lastIndex;\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tnewVal = \"[<\"+options.placeholder.getPlaceholderFor(toTitle)+\">]\";\n\t\t\t\t}\n\t\t\t\tif (newVal[0] != '[') {\n\t\t\t\t\t// not bracket enclosed\n\t\t\t\t\t// this requires whitespace\n\t\t\t\t\t// arnound it\n\t\t\t\t\tif (noPrecedingWordBarrier && !match[1]) {\n\t\t\t\t\t\trelinker.add(' ', p, p);\n\t\t\t\t\t}\n\t\t\t\t\twordBarrierRequired = true;\n\t\t\t\t}\n\t\t\t\tentry.output = toTitle;\n\t\t\t\tentry.operator = {operator: \"title\"};\n\t\t\t\tentry.quotation = preference;\n\t\t\t\tif (entry.impossible) {\n\t\t\t\t\trelinker.impossible = true;\n\t\t\t\t}\n\t\t\t\trelinker.add(newVal,p,operandRegExp.lastIndex);\n\t\t\t}\n\t\t\tp = operandRegExp.lastIndex;\n\t\t}\n\t}\n\tif (fromTitle === undefined) {\n\t\t// We delay the blurb calls until now in case it's a malformed\n\t\t// filter string. We don't want to report some, only to find out\n\t\t// it's bad.\n\t\tfor (var i = 0; i < blurbs.length; i++) {\n\t\t\ttoTitle(blurbs[i][0], blurbs[i][1]);\n\t\t}\n\t}\n\tif (relinker.changed() || relinker.impossible) {\n\t\treturn {output: relinker.results(), impossible: relinker.impossible };\n\t}\n\treturn undefined;\n};\n\n/* Same as this.relink, except this has the added constraint that the return\n * value must be able to be wrapped in curly braces. (i.e. '{{{...}}}')\n */\nexports.relinkInBraces = function(filter, fromTitle, toTitle, options) {\n\tvar braceOptions = $tw.utils.extend({inBraces: true}, options);\n\tvar entry = this.relink(filter, fromTitle, toTitle, braceOptions);\n\tif (entry && entry.output && !canBeInBraces(entry.output)) {\n\t\t// It was possible, but it won't fit in braces, so we must give up\n\t\tdelete entry.output;\n\t\tentry.impossible = true;\n\t}\n\treturn entry;\n};\n\nfunction wrapTitle(value, preference) {\n\tvar choices = {\n\t\t\"\": function(v) {return /^[^\\s\\[\\]]*[^\\s\\[\\]\\}]$/.test(v); },\n\t\t\"[\": canBePrettyOperand,\n\t\t\"'\": function(v) {return v.indexOf(\"'\") < 0; },\n\t\t'\"': function(v) {return v.indexOf('\"') < 0; }\n\t};\n\tvar wrappers = {\n\t\t\"\": function(v) {return v; },\n\t\t\"[\": function(v) {return \"[[\"+v+\"]]\"; },\n\t\t\"'\": function(v) {return \"'\"+v+\"'\"; },\n\t\t'\"': function(v) {return '\"'+v+'\"'; }\n\t};\n\tif (choices[preference]) {\n\t\tif (choices[preference](value)) {\n\t\t\treturn wrappers[preference](value);\n\t\t}\n\t}\n\tfor (var quote in choices) {\n\t\tif (choices[quote](value)) {\n\t\t\treturn wrappers[quote](value);\n\t\t}\n\t}\n\t// No quotes will work on this\n\treturn undefined;\n}\n\nfunction relinkFilterOperation(relinker, fromTitle, toTitle, filterString, p, context, options) {\n\tvar nextBracketPos, operator;\n\t// Skip the starting square bracket\n\tif(filterString.charAt(p++) !== \"[\") {\n\t\t// Missing [ in filter expression\n\t\treturn undefined;\n\t}\n\t// Process each operator in turn\n\toperator = parseOperator(filterString, p);\n\tdo {\n\t\tvar entry = undefined, type;\n\t\tif (operator === undefined) {\n\t\t\treturn undefined;\n\t\t}\n\t\tp = operator.opStart;\n\t\tswitch (operator.bracket) {\n\t\t\tcase \"{\": // Curly brackets\n\t\t\t\ttype = \"indirect\";\n\t\t\t\tnextBracketPos = filterString.indexOf(\"}\",p);\n\t\t\t\tvar operand = filterString.substring(p,nextBracketPos);\n\t\t\t\t// We've got a live reference. relink or report\n\t\t\t\tentry = refHandler.relinkInBraces(operand, fromTitle, toTitle, options);\n\t\t\t\tif (entry && entry.output) {\n\t\t\t\t\t// We don't check the context.\n\t\t\t\t\t// All indirect operands convert.\n\t\t\t\t\trelinker.add(entry.output,p,nextBracketPos);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase \"[\": // Square brackets\n\t\t\t\ttype = \"string\";\n\t\t\t\tnextBracketPos = filterString.indexOf(\"]\",p);\n\t\t\t\tvar operand = filterString.substring(p,nextBracketPos);\n\t\t\t\t// Check if this is a relevant operator\n\t\t\t\tvar handler = fieldType(context, operator);\n\t\t\t\tif (!handler) {\n\t\t\t\t\t// This operator isn't managed. Bye.\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tentry = handler.relink(operand, fromTitle, toTitle, options);\n\t\t\t\tif (!entry || !entry.output) {\n\t\t\t\t\t// The fromTitle wasn't in the operand.\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tvar wrapped;\n\t\t\t\tif (!canBePrettyOperand(entry.output) || (options.inBraces && entry.output.indexOf('}}}') >= 0)) {\n\t\t\t\t\tif (!options.placeholder) {\n\t\t\t\t\t\tdelete entry.output;\n\t\t\t\t\t\tentry.impossible = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tvar ph = options.placeholder.getPlaceholderFor(entry.output, handler.name);\n\t\t\t\t\twrapped = \"<\"+ph+\">\";\n\t\t\t\t} else {\n\t\t\t\t\twrapped = \"[\"+entry.output+\"]\";\n\t\t\t\t}\n\t\t\t\trelinker.add(wrapped, p-1, nextBracketPos+1);\n\t\t\t\tbreak;\n\t\t\tcase \"<\": // Angle brackets\n\t\t\t\tnextBracketPos = filterString.indexOf(\">\",p);\n\t\t\t\tbreak;\n\t\t\tcase \"/\": // regexp brackets\n\t\t\t\tvar rex = /^((?:[^\\\\\\/]*|\\\\.)*)\\/(?:\\(([mygi]+)\\))?/g,\n\t\t\t\t\trexMatch = rex.exec(filterString.substring(p));\n\t\t\t\tif(rexMatch) {\n\t\t\t\t\tnextBracketPos = p + rex.lastIndex - 1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t// Unterminated regular expression\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t\tif (entry) {\n\t\t\tif (entry.impossible) {\n\t\t\t\trelinker.impossible = true;\n\t\t\t}\n\t\t}\n\n\t\tif(nextBracketPos === -1) {\n\t\t\t// Missing closing bracket in filter expression\n\t\t\treturn undefined;\n\t\t}\n\t\tp = nextBracketPos + 1;\n\t\t// Check for multiple operands\n\t\tswitch (filterString.charAt(p)) {\n\t\tcase ',':\n\t\t\tp++;\n\t\t\tif(/^[\\[\\{<\\/]/.test(filterString.substring(p))) {\n\t\t\t\toperator.bracket = filterString.charAt(p);\n\t\t\t\toperator.opStart = p + 1;\n\t\t\t\toperator.index++;\n\t\t\t} else {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t\tcontinue;\n\t\tdefault:\n\t\t\toperator = parseOperator(filterString, p);\n\t\t\tcontinue;\n\t\tcase ']':\n\t\t}\n\t\tbreak;\n\t} while(true);\n\t// Skip the ending square bracket\n\tif(filterString.charAt(p++) !== \"]\") {\n\t\t// Missing ] in filter expression\n\t\treturn undefined;\n\t}\n\t// Return the parsing position\n\treturn p;\n}\n\nfunction reportFilterOperation(filterString, callback, p, context, options) {\n\tvar nextBracketPos, operator;\n\t// Skip the starting square bracket\n\tif(filterString.charAt(p++) !== \"[\") {\n\t\t// Missing [ in filter expression\n\t\treturn undefined;\n\t}\n\toperator = parseOperator(filterString, p);\n\t// Process each operator in turn\n\tdo {\n\t\tif (operator === undefined) {\n\t\t\treturn undefined;\n\t\t}\n\t\tp = operator.opStart;\n\t\tswitch (operator.bracket) {\n\t\t\tcase \"{\": // Curly brackets\n\t\t\t\tnextBracketPos = filterString.indexOf(\"}\",p);\n\t\t\t\tvar operand = filterString.substring(p,nextBracketPos);\n\t\t\t\t// Just report it\n\t\t\t\trefHandler.report(operand, function(title, blurb) {\n\t\t\t\t\tcallback(title, operatorBlurb(operator, '{' + (blurb || '') + '}'));\n\t\t\t\t}, options);\n\t\t\t\tbreak;\n\t\t\tcase \"[\": // Square brackets\n\t\t\t\tnextBracketPos = filterString.indexOf(\"]\",p);\n\t\t\t\tvar operand = filterString.substring(p,nextBracketPos);\n\t\t\t\t// Check if this is a relevant operator\n\t\t\t\tvar handler = fieldType(context, operator);\n\t\t\t\tif (!handler) {\n\t\t\t\t\t// This operator isn't managed. Bye.\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// We just have to report it. Nothing more.\n\t\t\t\thandler.report(operand, function(title, blurb) {\n\t\t\t\t\tcallback(title, operatorBlurb(operator, '[' + (blurb || '') + ']'));\n\t\t\t\t}, options);\n\t\t\t\tbreak;\n\n\t\t\tcase \"<\": // Angle brackets\n\t\t\t\tnextBracketPos = filterString.indexOf(\">\",p);\n\t\t\t\tbreak;\n\t\t\tcase \"/\": // regexp brackets\n\t\t\t\tvar rex = /^((?:[^\\\\\\/]*|\\\\.)*)\\/(?:\\(([mygi]+)\\))?/g,\n\t\t\t\t\trexMatch = rex.exec(filterString.substring(p));\n\t\t\t\tif(rexMatch) {\n\t\t\t\t\tnextBracketPos = p + rex.lastIndex - 1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t// Unterminated regular expression\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif(nextBracketPos === -1) {\n\t\t\t// Missing closing bracket in filter expression\n\t\t\treturn undefined;\n\t\t}\n\t\tp = nextBracketPos + 1;\n\t\t// Check for multiple operands\n\t\tswitch (filterString.charAt(p)) {\n\t\tcase ',':\n\t\t\tp++;\n\t\t\tif(/^[\\[\\{<\\/]/.test(filterString.substring(p))) {\n\t\t\t\toperator.bracket = filterString.charAt(p);\n\t\t\t\toperator.opStart = p + 1;\n\t\t\t\toperator.index++;\n\t\t\t} else {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t\tcontinue;\n\t\tdefault:\n\t\t\toperator = parseOperator(filterString, p);\n\t\t\tcontinue;\n\t\tcase ']':\n\t\t}\n\t\tbreak;\n\t} while(true);\n\t// Skip the ending square bracket\n\tif(filterString.charAt(p++) !== \"]\") {\n\t\t// Missing ] in filter expression\n\t\treturn undefined;\n\t}\n\t// Return the parsing position\n\treturn p;\n}\n\nfunction parseOperator(filterString, p) {\n\tvar nextBracketPos, operator = {index: 1};\n\t// Check for an operator prefix\n\tif(filterString.charAt(p) === \"!\") {\n\t\toperator.prefix = \"!\";\n\t\tp++;\n\t}\n\t// Get the operator name\n\tnextBracketPos = filterString.substring(p).search(/[\\[\\{<\\/]/);\n\tif(nextBracketPos === -1) {\n\t\t// Missing [ in filter expression\n\t\treturn undefined;\n\t}\n\tnextBracketPos += p;\n\toperator.bracket = filterString.charAt(nextBracketPos);\n\toperator.operator = filterString.substring(p,nextBracketPos);\n\n\t// Any suffix?\n\tvar colon = operator.operator.indexOf(':');\n\tif(colon > -1) {\n\t\toperator.suffix = operator.operator.substring(colon + 1);\n\t\toperator.operator = operator.operator.substring(0,colon) || \"field\";\n\t}\n\t// Empty operator means: title\n\telse if(operator.operator === \"\") {\n\t\toperator.operator = \"title\";\n\t\toperator.default = true;\n\t}\n\toperator.opStart = nextBracketPos + 1;\n\treturn operator;\n};\n\nfunction operatorBlurb(operator, enquotedOperand) {\n\tvar suffix = operator.suffix ? (':' + operator.suffix) : '';\n\t// commas to indicate which number operand\n\tsuffix += (new Array(operator.index)).join(',');\n\tvar op = operator.default ? '' : operator.operator;\n\treturn '[' + (operator.prefix || '') + op + suffix + enquotedOperand + ']';\n};\n\n// Returns the relinker needed for a given operator, or returns undefined.\nfunction fieldType(context, operator) {\n\treturn (operator.suffix &&\n\t        context.getOperator(operator.operator + ':' + operator.suffix, operator.index)) ||\n\t        context.getOperator(operator.operator, operator.index);\n};\n\nfunction canBePrettyOperand(value) {\n\treturn value.indexOf(']') < 0;\n};\n\nfunction canBeInBraces(value) {\n\treturn value.indexOf(\"}}}\") < 0 && value.substr(value.length-2) !== '}}';\n};\n",
            "module-type": "relinkfieldtype",
            "title": "$:/plugins/flibbles/relink/js/fieldtypes/filter.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/fieldtypes/list.js": {
            "text": "/*\\\nThis manages replacing titles that occur within stringLists, like,\n\nTiddlerA [[Tiddler with spaces]] [[Another Title]]\n\\*/\n\nexports.name = \"list\";\n\nexports.report = function(value, callback, options) {\n\tvar list = $tw.utils.parseStringArray(value);\n\tfor (var i = 0; i < list.length; i++) {\n\t\tcallback(list[i]);\n\t}\n};\n\n/**Returns undefined if no change was made.\n * Parameter: value can literally be a list. This can happen for builtin\n *            types 'list' and 'tag'. In those cases, we also return list.\n */\nexports.relink = function(value, fromTitle, toTitle, options) {\n\tvar isModified = false,\n\t\tactualList = false,\n\t\tlist;\n\tif (typeof value !== \"string\") {\n\t\t// Not a string. Must be a list.\n\t\t// clone it, since we may make changes to this possibly\n\t\t// frozen list.\n\t\tlist = (value || []).slice(0);\n\t\tactualList = true;\n\t} else {\n\t\tlist = $tw.utils.parseStringArray(value || \"\");\n\t}\n\t$tw.utils.each(list,function (title,index) {\n\t\tif(title === fromTitle) {\n\t\t\tlist[index] = toTitle;\n\t\t\tisModified = true;\n\t\t}\n\t});\n\tif (isModified) {\n\t\tvar entry = {name: \"list\"};\n\t\t// It doesn't parse correctly alone, it won't\n\t\t// parse correctly in any list.\n\t\tif (!canBeListItem(toTitle)) {\n\t\t\tentry.impossible = true;\n\t\t} else if (actualList) {\n\t\t\tentry.output = list;\n\t\t} else {\n\t\t\tentry.output = $tw.utils.stringifyList(list);\n\t\t}\n\t\treturn entry;\n\t}\n\treturn undefined;\n};\n\nfunction canBeListItem(value) {\n\tvar regexp = /\\]\\][^\\S\\xA0]/m;\n\treturn !regexp.test(value);\n};\n",
            "module-type": "relinkfieldtype",
            "title": "$:/plugins/flibbles/relink/js/fieldtypes/list.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/fieldtypes/reference.js": {
            "text": "/*\\\nThis manages replacing titles that occur inside text references,\n\ntiddlerTitle\ntiddlerTitle!!field\n!!field\ntiddlerTitle##propertyIndex\n\\*/\n\nexports.name = \"reference\";\n\nexports.report = function(value, callback, options) {\n\tif (value) {\n\t\tvar reference = $tw.utils.parseTextReference(value),\n\t\t\ttitle = reference.title,\n\t\t\tblurb;\n\t\tif (title) {\n\t\t\tif (reference.field) {\n\t\t\t\tblurb = '!!' + reference.field;\n\t\t\t} else if (reference.index) {\n\t\t\t\tblurb = '##' + reference.index;\n\t\t\t}\n\t\t\tcallback(title, blurb);\n\t\t}\n\t}\n};\n\nexports.relink = function(value, fromTitle, toTitle, options) {\n\tvar entry;\n\tif (value) {\n\t\tvar reference = $tw.utils.parseTextReference(value);\n\t\tif (reference.title === fromTitle) {\n\t\t\tif (!exports.canBePretty(toTitle)) {\n\t\t\t\tentry = {impossible: true};\n\t\t\t} else {\n\t\t\t\treference.title = toTitle;\n\t\t\t\tentry = {output: exports.toString(reference)};\n\t\t\t}\n\t\t}\n\t}\n\treturn entry;\n};\n\n/* Same as this.relink, except this has the added constraint that the return\n * value must be able to be wrapped in curly braces.\n */\nexports.relinkInBraces = function(value, fromTitle, toTitle, options) {\n\tvar log = this.relink(value, fromTitle, toTitle, options);\n\tif (log && log.output && toTitle.indexOf(\"}\") >= 0) {\n\t\tdelete log.output;\n\t\tlog.impossible = true;\n\t}\n\treturn log;\n};\n\nexports.toString = function(textReference) {\n\tvar title = textReference.title || '';\n\tif (textReference.field) {\n\t\treturn title + \"!!\" + textReference.field;\n\t} else if (textReference.index) {\n\t\treturn title + \"##\" + textReference.index;\n\t}\n\treturn title;\n};\n\nexports.canBePretty = function(title)  {\n\treturn !title || (title.indexOf(\"!!\") < 0 && title.indexOf(\"##\") < 0);\n};\n",
            "module-type": "relinkfieldtype",
            "title": "$:/plugins/flibbles/relink/js/fieldtypes/reference.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/fieldtypes/title.js": {
            "text": "/*\\\nThis specifies logic for replacing a single-tiddler field. This is the\nsimplest kind of field type. One title swaps out for the other.\n\\*/\n\n// NOTE TO MODDERS: If you're making your own field types, the name must be\n//                  alpha characters only.\nexports.name = 'title';\n\nexports.report = function(value, callback, options) {\n\tcallback(value);\n};\n\n/**Returns undefined if no change was made.\n */\nexports.relink = function(value, fromTitle, toTitle, options) {\n\tif (value === fromTitle) {\n\t\treturn {output: toTitle};\n\t}\n\treturn undefined;\n};\n\n// This is legacy support for when 'title' was known as 'field'\nexports.aliases = ['field', 'yes'];\n",
            "module-type": "relinkfieldtype",
            "title": "$:/plugins/flibbles/relink/js/fieldtypes/title.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/fieldtypes/wikitext.js": {
            "text": "/*\\\nThis specifies logic for updating filters to reflect title changes.\n\\*/\n\nexports.name = \"wikitext\";\n\nvar type = 'text/vnd.tiddlywiki';\n\nvar WikiParser = require(\"$:/core/modules/parsers/wikiparser/wikiparser.js\")[type];\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder.js\");\nvar utils = require('$:/plugins/flibbles/relink/js/utils');\nvar WikitextContext = utils.getContext('wikitext');\n\nfunction collectRules() {\n\tvar rules = Object.create(null);\n\t$tw.modules.forEachModuleOfType(\"relinkwikitextrule\", function(title, exports) {\n\t\tvar names = exports.name;\n\t\tif (typeof names === \"string\") {\n\t\t\tnames = [names];\n\t\t}\n\t\tif (names !== undefined) {\n\t\t\tfor (var i = 0; i < names.length; i++) {\n\t\t\t\trules[names[i]] = exports;\n\t\t\t}\n\t\t}\n\t});\n\treturn rules;\n}\n\nfunction WikiWalker(type, text, options) {\n\tthis.options = options;\n\tif (!this.relinkMethodsInjected) {\n\t\tvar rules = collectRules();\n\t\t$tw.utils.each([this.pragmaRuleClasses, this.blockRuleClasses, this.inlineRuleClasses], function(classList) {\n\t\t\tfor (var name in classList) {\n\t\t\t\tif (rules[name]) {\n\t\t\t\t\tdelete rules[name].name;\n\t\t\t\t\t$tw.utils.extend(classList[name].prototype, rules[name]);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tWikiWalker.prototype.relinkMethodsInjected = true;\n\t}\n\tthis.context = new WikitextContext(options.settings);\n\tWikiParser.call(this, type, text, options);\n};\n\nWikiWalker.prototype = Object.create(WikiParser.prototype);\n\nWikiWalker.prototype.parsePragmas = function() {\n\tvar entries = this.tree;\n\twhile (true) {\n\t\tthis.skipWhitespace();\n\t\tif (this.pos >= this.sourceLength) {\n\t\t\tbreak;\n\t\t}\n\t\tvar nextMatch = this.findNextMatch(this.pragmaRules, this.pos);\n\t\tif (!nextMatch || nextMatch.matchIndex !== this.pos) {\n\t\t\tbreak;\n\t\t}\n\t\tentries.push.apply(entries, this.handleRule(nextMatch));\n\t}\n\treturn entries;\n};\n\nWikiWalker.prototype.parseInlineRunUnterminated = function(options) {\n\tvar entries = [];\n\tvar nextMatch = this.findNextMatch(this.inlineRules, this.pos);\n\twhile (this.pos < this.sourceLength && nextMatch) {\n\t\tif (nextMatch.matchIndex > this.pos) {\n\t\t\tthis.pos = nextMatch.matchIndex;\n\t\t}\n\t\tentries.push.apply(entries, this.handleRule(nextMatch));\n\t\tnextMatch = this.findNextMatch(this.inlineRules, this.pos);\n\t}\n\tthis.pos = this.sourceLength;\n\treturn entries;\n};\n\nWikiWalker.prototype.parseInlineRunTerminated = function(terminatorRegExp,options) {\n\tvar entries = [];\n\toptions = options || {};\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar terminatorMatch = terminatorRegExp.exec(this.source);\n\tvar inlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\twhile(this.pos < this.sourceLength && (terminatorMatch || inlineRuleMatch)) {\n\t\tif (terminatorMatch) {\n\t\t\tif (!inlineRuleMatch || inlineRuleMatch.matchIndex >= terminatorMatch.index) {\n\t\t\t\tthis.pos = terminatorMatch.index;\n\t\t\t\tif (options.eatTerminator) {\n\t\t\t\t\tthis.pos += terminatorMatch[0].length;\n\t\t\t\t}\n\t\t\t\treturn entries;\n\t\t\t}\n\t\t}\n\t\tif (inlineRuleMatch) {\n\t\t\tif (inlineRuleMatch.matchIndex > this.pos) {\n\t\t\t\tthis.pos = inlineRuleMatch.matchIndex;\n\t\t\t}\n\t\t\tentries.push.apply(entries, this.handleRule(inlineRuleMatch));\n\t\t\tinlineRuleMatch = this.findNextMatch(this.inlineRules, this.pos);\n\t\t\tterminatorRegExp.lastIndex = this.pos;\n\t\t\tterminatorMatch = terminatorRegExp.exec(this.source);\n\t\t}\n\t}\n\tthis.pos = this.sourceLength;\n\treturn entries;\n\n};\n\nWikiWalker.prototype.parseBlock = function(terminatorRegExp) {\n\tvar terminatorRegExp = /(\\r?\\n\\r?\\n)/mg;\n\tthis.skipWhitespace();\n\tif (this.pos >= this.sourceLength) {\n\t\treturn [];\n\t}\n\tvar nextMatch = this.findNextMatch(this.blockRules, this.pos);\n\tif(nextMatch && nextMatch.matchIndex === this.pos) {\n\t\treturn this.handleRule(nextMatch);\n\t}\n\treturn this.parseInlineRun(terminatorRegExp);\n};\n\nWikiWalker.prototype.amendRules = function(type, names) {\n\tvar only;\n\tWikiParser.prototype.amendRules.call(this, type, names);\n\tif (type === \"only\") {\n\t\tonly = true;\n\t} else if (type === \"except\") {\n\t\tonly = false;\n\t} else {\n\t\treturn;\n\t}\n\tif (only !== (names.indexOf(\"macrodef\") >= 0) && this.options.macrodefCanBeDisabled) {\n\t\tthis.options.placeholder = undefined\n\t}\n\tif (only !== (names.indexOf(\"html\") >= 0)) {\n\t\tthis.context.allowWidgets = disabled;\n\t}\n\tif (only !== (names.indexOf(\"prettylink\") >= 0)) {\n\t\tthis.context.allowPrettylinks = disabled;\n\t}\n};\n\nfunction disabled() { return false; };\n\n/// Reporter\n\nfunction WikiReporter(type, text, callback, options) {\n\tthis.callback = callback;\n\tWikiWalker.call(this, type, text, options);\n};\n\nWikiReporter.prototype = Object.create(WikiWalker.prototype);\n\nWikiReporter.prototype.handleRule = function(ruleInfo) {\n\tif (ruleInfo.rule.report) {\n\t\truleInfo.rule.report(this.source, this.callback, this.options);\n\t} else {\n\t\tif (ruleInfo.rule.matchRegExp !== undefined) {\n\t\t\tthis.pos = ruleInfo.rule.matchRegExp.lastIndex;\n\t\t} else {\n\t\t\t// We can't easily determine the end of this\n\t\t\t// rule match. We'll \"parse\" it so that\n\t\t\t// parser.pos gets updated, but we throw away\n\t\t\t// the results.\n\t\t\truleInfo.rule.parse();\n\t\t}\n\t}\n};\n\nexports.report = function(wikitext, callback, options) {\n\t// Unfortunately it's the side-effect of creating this that reports.\n\tnew WikiReporter(options.type, wikitext, callback, options);\n};\n\n/// Relinker\n\nfunction WikiRelinker(type, text, fromTitle, toTitle, options) {\n\tthis.fromTitle = fromTitle;\n\tthis.toTitle = toTitle;\n\tthis.placeholder = options.placeholder;\n\tif (this.placeholder) {\n\t\tthis.placeholder.parser = this;\n\t}\n\tWikiWalker.call(this, type, text, options);\n};\n\nWikiRelinker.prototype = Object.create(WikiWalker.prototype);\n\nWikiRelinker.prototype.handleRule = function(ruleInfo) {\n\tif (ruleInfo.rule.relink) {\n\t\tvar start = ruleInfo.matchIndex;\n\t\tvar newEntry = ruleInfo.rule.relink(this.source, this.fromTitle, this.toTitle, this.options);\n\t\tif (newEntry !== undefined) {\n\t\t\tif (newEntry.output) {\n\t\t\t\tnewEntry.start = start;\n\t\t\t\tnewEntry.end = this.pos;\n\t\t\t}\n\t\t\treturn [newEntry];\n\t\t}\n\t} else {\n\t\tif (ruleInfo.rule.matchRegExp !== undefined) {\n\t\t\tthis.pos = ruleInfo.rule.matchRegExp.lastIndex;\n\t\t} else {\n\t\t\t// We can't easily determine the end of this\n\t\t\t// rule match. We'll \"parse\" it so that\n\t\t\t// parser.pos gets updated, but we throw away\n\t\t\t// the results.\n\t\t\truleInfo.rule.parse();\n\t\t}\n\t}\n\treturn [];\n};\n\nexports.relink = function(wikitext, fromTitle, toTitle, options) {\n\tvar parser = new WikiRelinker(options.type, wikitext, fromTitle, toTitle, options),\n\t\twikiEntry = undefined;\n\t// Now that we have an array of entries, let's produce the wikiText entry\n\t// containing them all.\n\tif (parser.tree.length > 0) {\n\t\tvar builder = new Rebuilder(wikitext);\n\t\twikiEntry = {};\n\t\tfor (var i = 0; i < parser.tree.length; i++) {\n\t\t\tvar entry = parser.tree[i];\n\t\t\tif (entry.impossible) {\n\t\t\t\twikiEntry.impossible = true;\n\t\t\t}\n\t\t\tif (entry.output) {\n\t\t\t\tbuilder.add(entry.output, entry.start, entry.end);\n\t\t\t}\n\t\t}\n\t\twikiEntry.output = builder.results();\n\t}\n\treturn wikiEntry;\n};\n",
            "module-type": "relinkfieldtype",
            "title": "$:/plugins/flibbles/relink/js/fieldtypes/wikitext.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/fields.js": {
            "text": "/*\\\n\nHandles all fields specified in the plugin configuration. Currently, this\nonly supports single-value fields.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = 'fields';\n\nexports.report = function(tiddler, callback, options) {\n\tvar fields = options.settings.getFields();\n\t$tw.utils.each(fields, function(handler, field) {\n\t\tvar input = tiddler.fields[field];\n\t\tif (input) {\n\t\t\thandler.report(input, function(title, blurb) {\n\t\t\t\tif (blurb) {\n\t\t\t\t\tcallback(title, field + ': ' + blurb);\n\t\t\t\t} else {\n\t\t\t\t\tcallback(title, field);\n\t\t\t\t}\n\t\t\t}, options);\n\t\t}\n\t});\n};\n\nexports.relink = function(tiddler, fromTitle, toTitle, changes, options) {\n\tvar fields = options.settings.getFields();\n\t$tw.utils.each(fields, function(handler, field) {\n\t\tvar input = tiddler.fields[field];\n\t\tif (input) {\n\t\t\tvar entry = handler.relink(input, fromTitle, toTitle, options);\n\t\t\tif (entry !== undefined) {\n\t\t\t\tchanges[field] = entry;\n\t\t\t}\n\t\t}\n\t});\n};\n",
            "module-type": "relinkoperator",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/fields.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text.js": {
            "text": "/*\\\n\nDepending on the tiddler type, this will apply textOperators which may\nrelink titles within the body.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar defaultOperator = \"text/vnd.tiddlywiki\";\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\n\nexports.name = 'text';\n\nvar textOperators = utils.getModulesByTypeAsHashmap('relinktextoperator', 'type');\n\n// $:/DefaultTiddlers is a tiddler which has type \"text/vnd.tiddlywiki\",\n// but it lies. It doesn't contain wikitext. It contains a filter, so\n// we pretend it has a filter type.\n// If you want to be able to add more exceptions for your plugin, let me know.\nvar exceptions = {\n\t\"$:/DefaultTiddlers\": \"text/x-tiddler-filter\"\n};\n\nexports.report = function(tiddler, callback, options) {\n\tvar fields = tiddler.fields;\n\tif (fields.text) {\n\t\tvar type = exceptions[fields.title] || fields.type || defaultOperator;\n\t\tif (textOperators[type]) {\n\t\t\tvar entry = textOperators[type].report(tiddler, callback, options);\n\t\t}\n\t}\n};\n\nexports.relink = function(tiddler, fromTitle, toTitle, changes, options) {\n\tvar fields = tiddler.fields;\n\tif (fields.text) {\n\t\tvar type = exceptions[fields.title] || fields.type || defaultOperator;\n\t\tif (textOperators[type]) {\n\t\t\tvar entry = textOperators[type].relink(tiddler, fromTitle, toTitle, options);\n\t\t\tif (entry) {\n\t\t\t\tchanges.text = entry;\n\t\t\t}\n\t\t}\n\t}\n};\n",
            "module-type": "relinkoperator",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/filtertext.js": {
            "text": "/*\\\n\nThis relinks tiddlers which contain filters in their body, as oppose to\nwikitext.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar filterHandler = require(\"$:/plugins/flibbles/relink/js/utils\").getType('filter');\n\nexports.type = 'text/x-tiddler-filter';\n\nexports.report = function(tiddler, callback, options) {\n\treturn filterHandler.report(tiddler.fields.text, callback, options);\n};\n\nexports.relink = function(tiddler, fromTitle, toTitle, options) {\n\treturn filterHandler.relink(tiddler.fields.text, fromTitle, toTitle, options)\n};\n",
            "module-type": "relinktextoperator",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/filtertext.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext.js": {
            "text": "/*\\\n\nChecks for fromTitle in a tiddler's text. If found, sees if it's relevant,\nand tries to swap it out if it is.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Placeholder = require(\"$:/plugins/flibbles/relink/js/utils/placeholder.js\");\nvar wikitextHandler = require('$:/plugins/flibbles/relink/js/utils.js').getType('wikitext');\n\nexports.type = 'text/vnd.tiddlywiki';\n\nexports.report = function(tiddler, callback, options) {\n\twikitextHandler.report(tiddler.fields.text, callback, options);\n};\n\nexports.relink = function(tiddler, fromTitle, toTitle, options) {\n\tvar placeholder = new Placeholder();\n\tvar currentOptions = Object.create(options);\n\tcurrentOptions.placeholder = placeholder;\n\tvar entry = wikitextHandler.relink(tiddler.fields.text, fromTitle, toTitle, currentOptions);\n\tif (entry && entry.output) {\n\t\t// If there's output, we've also got to prepend any macros\n\t\t// that the placeholder defined.\n\t\tvar preamble = placeholder.getPreamble();\n\t\tentry.output = preamble + entry.output;\n\t}\n\treturn entry;\n};\n",
            "module-type": "relinktextoperator",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/code.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles code blocks. Or rather //doesn't// handle them, since we should\nignore their contents.\n\n\"`` [[Renamed Title]] ``\" will remain unchanged.\n\n\\*/\n\nexports.name = [\"codeinline\", \"codeblock\"];\n\nexports.relink = function(text) {\n\tvar reEnd;\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// I'm lazy. This relink method works for both codeblock and codeinline\n\tif (this.match[0].length > 2) {\n\t\t// Must be a codeblock\n\t\treEnd = /\\r?\\n```$/mg;\n\t} else {\n\t\t// Must be a codeinline\n\t\treEnd = new RegExp(this.match[1], \"mg\");\n\t}\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(text);\n\tif (match) {\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\treturn undefined;\n};\n\n// Same thing. Just skip the pos ahead.\nexports.report = exports.relink;\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/code.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/comment.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles comment blocks. Or rather //doesn't// handle them, since we should\nignore their contents.\n\n\"<!-- [[Renamed Title]] -->\" will remain unchanged.\n\n\\*/\n\nexports.name = [\"commentinline\", \"commentblock\"];\n\nexports.relink = function(text) {\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\treturn undefined;\n};\n\nexports.report = exports.relink;\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/comment.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/filteredtransclude.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement of filtered transclusions in wiki text like,\n\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n\nThis renames both the list and the template field.\n\n\\*/\n\nexports.name = ['filteredtranscludeinline', 'filteredtranscludeblock'];\n\nvar filterHandler = require(\"$:/plugins/flibbles/relink/js/utils\").getType('filter');\nvar utils = require(\"./utils.js\");\n\nexports.report = function(text, callback, options) {\n\tvar m = this.match,\n\t\tfilter = m[1],\n\t\ttemplate = $tw.utils.trim(m[3]),\n\t\tappend = template ? '||' + template + '}}}' : '}}}';\n\tfilterHandler.report(filter, function(title, blurb) {\n\t\tcallback(title, '{{{' + blurb + append);\n\t}, options);\n\tif (template) {\n\t\tcallback(template, '{{{' + $tw.utils.trim(filter).replace(/\\r?\\n/mg, ' ') + '||}}}');\n\t}\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar m = this.match,\n\t\tfilter = m[1],\n\t\ttooltip = m[2],\n\t\ttemplate = m[3],\n\t\tstyle = m[4],\n\t\tclasses = m[5],\n\t\tparser = this.parser,\n\t\tentry = {};\n\tparser.pos = this.matchRegExp.lastIndex;\n\tvar modified = false;\n\n\tvar filterEntry = filterHandler.relink(filter, fromTitle, toTitle, options);\n\tif (filterEntry !== undefined) {\n\t\tif (filterEntry.output) {\n\t\t\tfilter = filterEntry.output;\n\t\t\tmodified = true;\n\t\t}\n\t\tif (filterEntry.impossible) {\n\t\t\tentry.impossible = true;\n\t\t}\n\t}\n\n\tif ($tw.utils.trim(template) === fromTitle) {\n\t\t// preserves user-inputted whitespace\n\t\ttemplate = template.replace(fromTitle, toTitle);\n\t\tmodified = true;\n\t}\n\tif (!modified) {\n\t\tif (!entry.impossible) {\n\t\t\treturn undefined;\n\t\t}\n\t} else {\n\t\tvar output = this.makeFilteredtransclude(this.parser, filter, tooltip, template, style, classes);\n\t\tif (output === undefined) {\n\t\t\tentry.impossible = true;\n\t\t} else {\n\t\t\t// By copying over the ending newline of the original\n\t\t\t// text if present, thisrelink method thus works for\n\t\t\t// both the inline and block rule\n\t\t\tentry.output = output + utils.getEndingNewline(m[0]);\n\t\t}\n\t}\n\treturn entry;\n};\n\nexports.makeFilteredtransclude = function(parser, filter, tooltip, template, style, classes) {\n\tif (canBePretty(filter) && canBePrettyTemplate(template)) {\n\t\treturn prettyList(filter, tooltip, template, style, classes);\n\t}\n\tif (classes !== undefined) {\n\t\tclasses = classes.split('.').join(' ');\n\t}\n\treturn utils.makeWidget(parser, '$list', {\n\t\tfilter: filter,\n\t\ttooltip: tooltip,\n\t\ttemplate: template,\n\t\tstyle: style || undefined,\n\t\titemClass: classes});\n};\n\nfunction prettyList(filter, tooltip, template, style, classes) {\n\tif (tooltip === undefined) {\n\t\ttooltip = '';\n\t} else {\n\t\ttooltip = \"|\" + tooltip;\n\t}\n\tif (template === undefined) {\n\t\ttemplate = '';\n\t} else {\n\t\ttemplate = \"||\" + template;\n\t}\n\tif (classes === undefined) {\n\t\tclasses = '';\n\t} else {\n\t\tclasses = \".\" + classes;\n\t}\n\tstyle = style || '';\n\treturn \"{{{\"+filter+tooltip+template+\"}}\"+style+\"}\"+classes;\n};\n\nfunction canBePretty(filter) {\n\treturn filter.indexOf('|') < 0 && filter.indexOf('}}') < 0;\n};\n\nfunction canBePrettyTemplate(template) {\n\treturn !template || (\n\t\ttemplate.indexOf('|') < 0\n\t\t&& template.indexOf('{') < 0\n\t\t&& template.indexOf('}') < 0);\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/filteredtransclude.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/html.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement in attributes of widgets and html elements\nThis is configurable to select exactly which attributes of which elements\nshould be changed.\n\n<$link to=\"TiddlerTitle\" />\n\n\\*/\n\nvar utils = require(\"./utils.js\");\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder\");\nvar relinkUtils = require('$:/plugins/flibbles/relink/js/utils.js');\nvar refHandler = relinkUtils.getType('reference');\nvar filterHandler = relinkUtils.getType('filter');\nvar ImportContext = relinkUtils.getContext('import');\nvar macrocall = require(\"./macrocall.js\");\n\nexports.name = \"html\";\n\nexports.report = function(text, callback, options) {\n\tvar managedElement = this.parser.context.getAttribute(this.nextTag.tag);\n\tvar importFilterAttr;\n\tvar element = this.nextTag.tag;\n\tfor (var attributeName in this.nextTag.attributes) {\n\t\tvar attr = this.nextTag.attributes[attributeName];\n\t\tvar nextEql = text.indexOf('=', attr.start);\n\t\t// This is the rare case of changing tiddler\n\t\t// \"true\" to something else when \"true\" is\n\t\t// implicit, like <$link to /> We ignore those.\n\t\tif (nextEql < 0 || nextEql > attr.end) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (this.nextTag.tag === \"$importvariables\" && attributeName === \"filter\") {\n\t\t\timportFilterAttr = attr;\n\t\t}\n\t\tvar oldLength, quotedValue = undefined, entry;\n\t\tif (attr.type === \"string\") {\n\t\t\tvar handler = getAttributeHandler(this.parser.context, this.nextTag, attributeName, options);\n\t\t\tif (!handler) {\n\t\t\t\t// We don't manage this attribute. Bye.\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\thandler.report(attr.value, function(title, blurb) {\n\t\t\t\tif (blurb) {\n\t\t\t\t\tcallback(title, '<' + element + ' ' + attributeName + '=\"' + blurb + '\" />');\n\t\t\t\t} else {\n\t\t\t\t\tcallback(title, '<' + element + ' ' + attributeName + ' />');\n\t\t\t\t}\n\t\t\t}, options);\n\t\t} else if (attr.type === \"indirect\") {\n\t\t\tentry = refHandler.report(attr.textReference, function(title, blurb) {\n\t\t\t\tcallback(title, '<' + element + ' ' + attributeName + '={{' + (blurb || '') + '}} />');\n\t\t\t}, options);\n\t\t} else if (attr.type === \"filtered\") {\n\t\t\tentry = filterHandler.report(attr.filter, function(title, blurb) {\n\t\t\t\tcallback(title, '<' + element + ' ' + attributeName + '={{{' + blurb + '}}} />');\n\t\t\t}, options);\n\t\t} else if (attr.type === \"macro\") {\n\t\t\tvar macro = attr.value;\n\t\t\tentry = macrocall.reportAttribute(this.parser, macro, function(title, blurb) {\n\t\t\t\tcallback(title, '<' + element + ' ' + attributeName + '=' + blurb + ' />');\n\t\t\t}, options);\n\t\t}\n\t\tif (quotedValue === undefined) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (this.nextTag.tag === \"$importvariables\" && attributeName === \"filter\") {\n\t\t\t// If this is an import variable filter, we gotta\n\t\t\t// remember this new value when we import lower down.\n\t\t\timportFilterAttr = quotedValue;\n\t\t}\n\t}\n\tif (importFilterAttr) {\n\t\tprocessImportFilter(this.parser, importFilterAttr, options);\n\t}\n\tthis.parse();\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar managedElement = this.parser.context.getAttribute(this.nextTag.tag),\n\t\tbuilder = new Rebuilder(text, this.nextTag.start);\n\tvar importFilterAttr;\n\tvar widgetEntry = {};\n\twidgetEntry.attributes = Object.create(null);\n\twidgetEntry.element = this.nextTag.tag;\n\tfor (var attributeName in this.nextTag.attributes) {\n\t\tvar attr = this.nextTag.attributes[attributeName];\n\t\tvar nextEql = text.indexOf('=', attr.start);\n\t\t// This is the rare case of changing tiddler\n\t\t// \"true\" to something else when \"true\" is\n\t\t// implicit, like <$link to /> We ignore those.\n\t\tif (nextEql < 0 || nextEql > attr.end) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (this.nextTag.tag === \"$importvariables\" && attributeName === \"filter\") {\n\t\t\timportFilterAttr = attr;\n\t\t}\n\t\tvar oldLength, quotedValue = undefined, entry;\n\t\tvar nestedOptions = Object.create(options);\n\t\tnestedOptions.settings = this.parser.context;\n\t\tswitch (attr.type) {\n\t\tcase 'string':\n\t\t\tvar handler = getAttributeHandler(this.parser.context, this.nextTag, attributeName, options);\n\t\t\tif (!handler) {\n\t\t\t\t// We don't manage this attribute. Bye.\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tentry = handler.relink(attr.value, fromTitle, toTitle, nestedOptions);\n\t\t\tif (entry === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (entry.output) {\n\t\t\t\tvar quote = utils.determineQuote(text, attr);\n\t\t\t\toldLength = attr.value.length + (quote.length * 2);\n\t\t\t\tquotedValue = utils.wrapAttributeValue(entry.output,quote);\n\t\t\t\tif (quotedValue === undefined) {\n\t\t\t\t\t// The value was unquotable. We need to make\n\t\t\t\t\t// a macro in order to replace it.\n\t\t\t\t\tif (!options.placeholder) {\n\t\t\t\t\t\t// but we can't...\n\t\t\t\t\t\tentry.impossible = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar value = options.placeholder.getPlaceholderFor(entry.output,handler.name)\n\t\t\t\t\t\tquotedValue = \"<<\"+value+\">>\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tbreak;\n\t\tcase 'indirect':\n\t\t\tentry = refHandler.relinkInBraces(attr.textReference, fromTitle, toTitle, options);\n\t\t\tif (entry === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (entry.output) {\n\t\t\t\t// +4 for '{{' and '}}'\n\t\t\t\toldLength = attr.textReference.length + 4;\n\t\t\t\tquotedValue = \"{{\"+entry.output+\"}}\";\n\t\t\t}\n\t\t\tbreak;\n\t\tcase 'filtered':\n\t\t\tentry = filterHandler.relinkInBraces(attr.filter, fromTitle, toTitle, options);\n\t\t\tif (entry === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (entry.output) {\n\t\t\t\t// +6 for '{{{' and '}}}'\n\t\t\t\toldLength = attr.filter.length + 6;\n\t\t\t\tquotedValue = \"{{{\"+ entry.output +\"}}}\";\n\t\t\t}\n\t\t\tbreak;\n\t\tcase 'macro':\n\t\t\tvar macro = attr.value;\n\t\t\tentry = macrocall.relinkAttribute(this.parser, macro, text, fromTitle, toTitle, options);\n\t\t\tif (entry === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (entry.output) {\n\t\t\t\t// already includes '<<' and '>>'\n\t\t\t\toldLength = macro.end-macro.start;\n\t\t\t\tquotedValue = entry.output;\n\t\t\t}\n\t\t}\n\t\tif (entry.impossible) {\n\t\t\twidgetEntry.impossible = true;\n\t\t}\n\t\tif (quotedValue === undefined) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (this.nextTag.tag === \"$importvariables\" && attributeName === \"filter\") {\n\t\t\t// If this is an import variable filter, we gotta\n\t\t\t// remember this new value when we import lower down.\n\t\t\timportFilterAttr = quotedValue;\n\t\t}\n\t\t// We count backwards from the end to preserve whitespace\n\t\tvar valueStart = attr.end - oldLength;\n\t\tbuilder.add(quotedValue, valueStart, attr.end);\n\t}\n\tif (importFilterAttr) {\n\t\tprocessImportFilter(this.parser, importFilterAttr, options);\n\t}\n\tvar tag = this.parse()[0];\n\tif (tag.children) {\n\t\tfor (var i = 0; i < tag.children.length; i++) {\n\t\t\tvar child = tag.children[i];\n\t\t\tif (child.output) {\n\t\t\t\tbuilder.add(child.output, child.start, child.end);\n\t\t\t}\n\t\t\tif (child.impossible) {\n\t\t\t\twidgetEntry.impossible = true;\n\t\t\t}\n\t\t}\n\t}\n\tif (builder.changed() || widgetEntry.impossible) {\n\t\twidgetEntry.output = builder.results(this.parser.pos);\n\t\treturn widgetEntry;\n\t}\n\treturn undefined;\n};\n\n/** Returns the field handler for the given attribute of the given widget.\n *  If this returns undefined, it means we don't handle it. So skip.\n */\nfunction getAttributeHandler(context, widget, attributeName, options) {\n\tif (widget.tag === \"$macrocall\") {\n\t\tvar nameAttr = widget.attributes[\"$name\"];\n\t\tif (nameAttr) {\n\t\t\tvar macro = context.getMacro(nameAttr.value);\n\t\t\tif (macro) {\n\t\t\t\treturn macro[attributeName];\n\t\t\t}\n\t\t}\n\t} else {\n\t\tvar element = context.getAttribute(widget.tag);\n\t\tif (element) {\n\t\t\treturn element[attributeName];\n\t\t}\n\t}\n\treturn undefined;\n};\n\nfunction computeAttribute(context, attribute, options) {\n\tvar value;\n\tif(attribute.type === \"filtered\") {\n\t\tvar parentWidget = context.widget;\n\t\tvalue = options.wiki.filterTiddlers(attribute.filter,parentWidget)[0] || \"\";\n\t} else if(attribute.type === \"indirect\") {\n\t\tvar parentWidget = context.widget;\n\t\tvalue = options.wiki.getTextReference(attribute.textReference,\"\",parentWidget.variables.currentTiddler.value);\n\t} else if(attribute.type === \"macro\") {\n\t\tvar parentWidget = context.widget;\n\t\tvalue = parentWidget.getVariable(attribute.value.name,{params: attribute.value.params});\n\t} else { // String attribute\n\t\tvalue = attribute.value;\n\t}\n\treturn value;\n};\n\n// This processes a <$importvariables> filter attribute and adds any new\n// variables to our parser.\nfunction processImportFilter(parser, importAttribute, options) {\n\tif (typeof importAttribute === \"string\") {\n\t\t// It was changed. Reparse it. It'll be a quoted\n\t\t// attribute value. Add a dummy attribute name.\n\t\timportAttribute = $tw.utils.parseAttribute(\"p=\"+importAttribute, 0)\n\t}\n\tvar context = parser.context;\n\tvar importFilter = computeAttribute(context, importAttribute, options);\n\tparser.context = new ImportContext(options.wiki, context, importFilter);\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/html.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/image.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement in wiki text inline rules, like,\n\n[img[tiddler.jpg]]\n\n[img width=23 height=24 [Description|tiddler.jpg]]\n\n\\*/\n\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder\");\nvar refHandler = require(\"$:/plugins/flibbles/relink/js/fieldtypes/reference\");\nvar filterHandler = require(\"$:/plugins/flibbles/relink/js/utils\").getType('filter');\nvar macrocall = require(\"./macrocall.js\");\nvar utils = require(\"./utils.js\");\n\nexports.name = \"image\";\n\nexports.report = function(text, callback, options) {\n\tvar ptr = this.nextImage.start + 4; //[img\n\tvar inSource = false;\n\tfor (var attributeName in this.nextImage.attributes) {\n\t\tvar attr = this.nextImage.attributes[attributeName];\n\t\tif (attributeName === \"source\" || attributeName === \"tooltip\") {\n\t\t\tif (inSource) {\n\t\t\t\tptr = text.indexOf('|', ptr);\n\t\t\t} else {\n\t\t\t\tptr = text.indexOf('[', ptr);\n\t\t\t\tinSource = true;\n\t\t\t}\n\t\t\tptr += 1;\n\t\t}\n\t\tif (attributeName === \"source\") {\n\t\t\tvar tooltip = this.nextImage.attributes.tooltip;\n\t\t\tvar blurb = '[img[' + (tooltip ? tooltip.value : '') + ']]';\n\t\t\tcallback(attr.value, blurb);\n\t\t\tptr = text.indexOf(attr.value, ptr);\n\t\t\tptr = text.indexOf(']]', ptr) + 2;\n\t\t} else if (attributeName !== \"tooltip\") {\n\t\t\tptr = reportAttribute(this.parser, attr, callback, options);\n\t\t}\n\t}\n\tthis.parser.pos = ptr;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar ptr = this.nextImage.start,\n\t\tbuilder = new Rebuilder(text, ptr),\n\t\tmakeWidget = false,\n\t\tskipSource = false,\n\t\timageEntry;\n\tif (this.nextImage.attributes.source.value === fromTitle && !canBePretty(toTitle, this.nextImage.attributes.tooltip)) {\n\t\tif (this.parser.context.allowWidgets() && (utils.wrapAttributeValue(toTitle) || options.placeholder)) {\n\t\t\tmakeWidget = true;\n\t\t\tbuilder.add(\"<$image\", ptr, ptr+4);\n\t\t} else {\n\t\t\t// We won't be able to make a placeholder to replace\n\t\t\t// the source attribute. We check now so we don't\n\t\t\t// prematurely convert into a widget.\n\t\t\t// Keep going in case other attributes need replacing.\n\t\t\tskipSource = true;\n\t\t}\n\t}\n\tptr += 4; //[img\n\tvar inSource = false;\n\tfor (var attributeName in this.nextImage.attributes) {\n\t\tvar attr = this.nextImage.attributes[attributeName];\n\t\tif (attributeName === \"source\" || attributeName === \"tooltip\") {\n\t\t\tif (inSource) {\n\t\t\t\tptr = text.indexOf('|', ptr);\n\t\t\t} else {\n\t\t\t\tptr = text.indexOf('[', ptr);\n\t\t\t\tinSource = true;\n\t\t\t}\n\t\t\tif (makeWidget) {\n\t\t\t\tif (\" \\t\\n\".indexOf(text[ptr-1]) >= 0) {\n\t\t\t\t\tbuilder.add('', ptr, ptr+1);\n\t\t\t\t} else {\n\t\t\t\t\tbuilder.add(' ', ptr, ptr+1);\n\t\t\t\t}\n\t\t\t}\n\t\t\tptr += 1;\n\t\t}\n\t\tif (attributeName === \"source\") {\n\t\t\tptr = text.indexOf(attr.value, ptr);\n\t\t\tif (attr.value === fromTitle) {\n\t\t\t\tif (makeWidget) {\n\t\t\t\t\tvar quotedValue = utils.wrapAttributeValue(toTitle);\n\t\t\t\t\tif (quotedValue === undefined) {\n\t\t\t\t\t\tvar key = options.placeholder.getPlaceholderFor(toTitle);\n\t\t\t\t\t\tbuilder.add(\"source=<<\"+key+\">>\", ptr, ptr+fromTitle.length);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbuilder.add(\"source=\"+quotedValue, ptr, ptr+fromTitle.length);\n\t\t\t\t\t}\n\t\t\t\t} else if (!skipSource) {\n\t\t\t\t\tbuilder.add(toTitle, ptr, ptr+fromTitle.length);\n\t\t\t\t} else {\n\t\t\t\t\tbuilder.impossible = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\tptr = text.indexOf(']]', ptr);\n\t\t\tif (makeWidget) {\n\t\t\t\tbuilder.add(\"/>\", ptr, ptr+2);\n\t\t\t}\n\t\t\tptr += 2;\n\t\t} else if (attributeName === \"tooltip\") {\n\t\t\tif (makeWidget) {\n\t\t\t\tptr = text.indexOf(attr.value, ptr);\n\t\t\t\tvar quotedValue = utils.wrapAttributeValue(attr.value);\n\t\t\t\tbuilder.add(\"tooltip=\"+quotedValue, ptr, ptr+attr.value.length);\n\t\t\t}\n\t\t} else {\n\t\t\tptr = relinkAttribute(this.parser, attr, builder, fromTitle, toTitle, options);\n\t\t}\n\t}\n\tthis.parser.pos = ptr;\n\tif (builder.changed() || builder.impossible) {\n\t\timageEntry = {\n\t\t\toutput: builder.results(ptr),\n\t\t\timpossible: builder.impossible };\n\t}\n\treturn imageEntry;\n};\n\nfunction reportAttribute(parser, attribute, callback, options) {\n\tvar text = parser.source;\n\tvar ptr = text.indexOf(attribute.name, attribute.start);\n\tvar end;\n\tptr += attribute.name.length;\n\tptr = text.indexOf('=', ptr);\n\tif (attribute.type === \"string\") {\n\t\tptr = text.indexOf(attribute.value, ptr)\n\t\tvar quote = utils.determineQuote(text, attribute);\n\t\t// ignore first quote. We already passed it\n\t\tend = ptr + quote.length + attribute.value.length;\n\t} else if (attribute.type === \"indirect\") {\n\t\tptr = text.indexOf('{{', ptr);\n\t\tvar end = ptr + attribute.textReference.length + 4;\n\t\trefHandler.report(attribute.textReference, function(title, blurb) {\n\t\t\tcallback(title, '[img ' + attribute.name + '={{' + (blurb || '') + '}}]');\n\t\t}, options);\n\t} else if (attribute.type === \"filtered\") {\n\t\tptr = text.indexOf('{{{', ptr);\n\t\tvar end = ptr + attribute.filter.length + 6;\n\t\tfilterHandler.report(attribute.filter, function(title, blurb) {\n\t\t\tcallback(title, '[img ' + attribute.name + '={{{' + blurb + '}}}]');\n\t\t}, options);\n\t} else if (attribute.type === \"macro\") {\n\t\tptr = text.indexOf(\"<<\", ptr);\n\t\tvar end = attribute.value.end;\n\t\tvar macro = attribute.value;\n\t\toldValue = attribute.value;\n\t\tmacrocall.reportAttribute(parser, macro, function(title, blurb) {\n\t\t\tcallback(title, '[img ' + attribute.name + '=' + blurb + ']');\n\t\t}, options);\n\t}\n\treturn end;\n};\n\nfunction relinkAttribute(parser, attribute, builder, fromTitle, toTitle, options) {\n\tvar text = builder.text;\n\tvar ptr = text.indexOf(attribute.name, attribute.start);\n\tvar end;\n\tptr += attribute.name.length;\n\tptr = text.indexOf('=', ptr);\n\tif (attribute.type === \"string\") {\n\t\tptr = text.indexOf(attribute.value, ptr)\n\t\tvar quote = utils.determineQuote(text, attribute);\n\t\t// ignore first quote. We already passed it\n\t\tend = ptr + quote.length + attribute.value.length;\n\t} else if (attribute.type === \"indirect\") {\n\t\tptr = text.indexOf('{{', ptr);\n\t\tvar end = ptr + attribute.textReference.length + 4;\n\t\tvar ref = refHandler.relinkInBraces(attribute.textReference, fromTitle, toTitle, options);\n\t\tif (ref) {\n\t\t\tif (ref.impossible) {\n\t\t\t\tbuilder.impossible = true;\n\t\t\t}\n\t\t\tif (ref.output) {\n\t\t\t\tbuilder.add(\"{{\"+ref.output+\"}}\", ptr, end);\n\t\t\t}\n\t\t}\n\t} else if (attribute.type === \"filtered\") {\n\t\tptr = text.indexOf('{{{', ptr);\n\t\tvar end = ptr + attribute.filter.length + 6;\n\t\tvar filter = filterHandler.relinkInBraces(attribute.filter, fromTitle, toTitle, options);\n\t\tif (filter !== undefined) {\n\t\t\tif (filter.impossible) {\n\t\t\t\tbuilder.impossible = true;\n\t\t\t}\n\t\t\tif (filter.output) {\n\t\t\t\tvar quoted = \"{{{\"+filter.output+\"}}}\";\n\t\t\t\tbuilder.add(quoted, ptr, end);\n\t\t\t}\n\t\t}\n\t} else if (attribute.type === \"macro\") {\n\t\tptr = text.indexOf(\"<<\", ptr);\n\t\tvar end = attribute.value.end;\n\t\tvar macro = attribute.value;\n\t\toldValue = attribute.value;\n\t\tvar macroEntry = macrocall.relinkAttribute(parser, macro, text, fromTitle, toTitle, options);\n\t\tif (macroEntry !== undefined) {\n\t\t\tif (macroEntry.impossible) {\n\t\t\t\tbuilder.impossible = true;\n\t\t\t}\n\t\t\tif (macroEntry.output) {\n\t\t\t\tbuilder.add(macroEntry.output, ptr, end);\n\t\t\t}\n\t\t}\n\t}\n\treturn end;\n};\n\nfunction canBePretty(title, tooltip) {\n\treturn title.indexOf(']') < 0 && (tooltip || title.indexOf('|') < 0);\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/image.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/import.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles import pragmas\n\n\\import [tag[MyTiddler]]\n\\*/\n\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\nvar filterRelinker = utils.getType('filter');\nvar ImportContext = utils.getContext('import');\n\nexports.name = \"import\";\n\nexports.report = function(text, callback, options) {\n\t// This moves the pos for us\n\tvar parseTree = this.parse();\n\tvar filter = parseTree[0].attributes.filter.value || '';\n\tfilterRelinker.report(filter, function(title, blurb) {\n\t\tif (blurb) {\n\t\t\tblurb = '\\\\import ' + blurb;\n\t\t} else {\n\t\t\tblurb = '\\\\import';\n\t\t}\n\t\tcallback(title, blurb);\n\t}, options);\n\t// Before we go, we need to actually import the variables\n\t// it's calling for, and any /relink pragma\n\tthis.parser.context = new ImportContext(options.wiki, this.parser.context, filter);\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\t// In this one case, I'll let the parser parse out the filter and move\n\t// the ptr.\n\tvar start = this.matchRegExp.lastIndex,\n\t\tparseTree = this.parse(),\n\t\tfilter = parseTree[0].attributes.filter.value || '',\n\t\tentry = filterRelinker.relink(filter, fromTitle, toTitle, options);\n\tif (entry !== undefined && entry.output) {\n\t\tvar newline = text.substring(start+filter.length, this.parser.pos);\n\t\tfilter = entry.output;\n\t\tentry.output = \"\\\\import \" + filter + newline;\n\t}\n\n\t// Before we go, we need to actually import the variables\n\t// it's calling for, and any /relink pragma\n\tthis.parser.context = new ImportContext(options.wiki, this.parser.context, filter);\n\n\treturn entry;\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/import.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/macrocall.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles macro calls.\n\n<<myMacro '[[MyFilter]]' 'myTitle'>>\n\n\\*/\n\nvar utils = require(\"./utils.js\");\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder\");\nvar EntryNode = require('$:/plugins/flibbles/relink/js/utils/entry');\n\nexports.name = [\"macrocallinline\", \"macrocallblock\"];\n\n// Error thrown when a macro's definition is needed, but can't be found.\nfunction CannotFindMacroDef() {};\nCannotFindMacroDef.prototype.impossible = true;\nCannotFindMacroDef.prototype.name = \"macroparam\";\n// Failed relinks due to missing definitions aren't reported for now.\n// I may want to do something special later on.\nCannotFindMacroDef.prototype.report = function() { return []; };\n\nexports.report = function(text, callback, options) {\n\tvar macroInfo = getInfoFromRule(this);\n\tthis.parser.pos = macroInfo.end;\n\tthis.reportAttribute(this.parser, macroInfo, callback, options);\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar macroInfo = getInfoFromRule(this);\n\tvar managedMacro = this.parser.context.getMacro(macroInfo.name);\n\tthis.parser.pos = macroInfo.end;\n\tif (!managedMacro) {\n\t\t// We don't manage this macro. Bye.\n\t\treturn undefined;\n\t}\n\tvar mayBeWidget = this.parser.context.allowWidgets();\n\tvar names = getParamNames(this.parser, macroInfo.name, macroInfo.params, options);\n\tif (names === undefined) {\n\t\t// Needed the definition, and couldn't find it. So if a single\n\t\t// parameter needs to placeholder, just fail.\n\t\tmayBeWidget = false;\n\t}\n\tvar entry = relinkMacroInvocation(this.parser, macroInfo, text, fromTitle, toTitle, mayBeWidget, options);\n\tif (entry && entry.output) {\n\t\tentry.output = macroToString(entry.output, text, names, options);\n\t}\n\treturn entry;\n};\n\n/** Relinks macros that occur as attributes, like <$element attr=<<...>> />\n *  Processes the same, except it can't downgrade into a widget if the title\n *  is complicated.\n */\nexports.relinkAttribute = function(parser, macro, text, fromTitle, toTitle, options) {\n\tvar entry = relinkMacroInvocation(parser, macro, text, fromTitle, toTitle, false, options);\n\tif (entry && entry.output) {\n\t\tentry.output = macroToStringMacro(entry.output, text, options);\n\t}\n\treturn entry;\n};\n\n/** As in, report a macrocall invocation that is an html attribute. */\nexports.reportAttribute = function(parser, macro, callback, options) {\n\tvar managedMacro = parser.context.getMacro(macro.name);\n\tif (!managedMacro) {\n\t\t// We don't manage this macro. Bye.\n\t\treturn undefined;\n\t}\n\tfor (var managedArg in managedMacro) {\n\t\tvar index;\n\t\ttry {\n\t\t\tindex = getParamIndexWithinMacrocall(parser, macro.name, managedArg, macro.params, options);\n\t\t} catch (e) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (index < 0) {\n\t\t\t// The argument was not supplied. Move on to next.\n\t\t\tcontinue;\n\t\t}\n\t\tvar param = macro.params[index];\n\t\tvar handler = managedMacro[managedArg];\n\t\tvar nestedOptions = Object.create(options);\n\t\tnestedOptions.settings = parser.context;\n\t\tvar entry = handler.report(param.value, function(title, blurb) {\n\t\t\tvar rtn = managedArg;\n\t\t\tif (blurb) {\n\t\t\t\trtn += ': \"' + blurb + '\"';\n\t\t\t}\n\t\t\tcallback(title, '<<' + macro.name + ' ' + rtn + '>>');\n\t\t}, nestedOptions);\n\t}\n};\n\n/**Processes the given macro,\n * macro: {name:, params:, start:, end:}\n * each parameters: {name:, end:, value:}\n * Macro invocation returned is the same, but relinked, and may have new keys:\n * parameters: {type: macro, start:, newValue: (quoted replacement value)}\n * Output of the returned entry isn't a string, but a macro object. It needs\n * to be converted.\n */\nfunction relinkMacroInvocation(parser, macro, text, fromTitle, toTitle, mayBeWidget, options) {\n\tvar managedMacro = parser.context.getMacro(macro.name);\n\tvar modified = false;\n\tif (!managedMacro) {\n\t\t// We don't manage this macro. Bye.\n\t\treturn undefined;\n\t}\n\tvar outMacro = $tw.utils.extend({}, macro);\n\tvar macroEntry = {};\n\toutMacro.params = macro.params.slice();\n\tfor (var managedArg in managedMacro) {\n\t\tvar index;\n\t\ttry {\n\t\t\tindex = getParamIndexWithinMacrocall(parser, macro.name, managedArg, macro.params, options);\n\t\t} catch (e) {\n\t\t\tif (e instanceof CannotFindMacroDef) {\n\t\t\t\tmacroEntry.impossible = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\t\tif (index < 0) {\n\t\t\t// this arg either was not supplied, or we can't find\n\t\t\t// the definition, so we can't tie it to an anonymous\n\t\t\t// argument. Either way, move on to the next.\n\t\t\tcontinue;\n\t\t}\n\t\tvar param = macro.params[index];\n\t\tvar handler = managedMacro[managedArg];\n\t\tvar nestedOptions = Object.create(options);\n\t\tnestedOptions.settings = parser.context;\n\t\tvar entry = handler.relink(param.value, fromTitle, toTitle, nestedOptions);\n\t\tif (entry === undefined) {\n\t\t\tcontinue;\n\t\t}\n\t\t// Macro parameters can only be string parameters, not\n\t\t// indirect, or macro, or filtered\n\t\tif (entry.impossible) {\n\t\t\tmacroEntry.impossible = true;\n\t\t}\n\t\tif (!entry.output) {\n\t\t\tcontinue;\n\t\t}\n\t\tvar quote = utils.determineQuote(text, param);\n\t\tvar quoted = utils.wrapParameterValue(entry.output, quote);\n\t\tvar newParam = $tw.utils.extend({}, param);\n\t\tif (quoted === undefined) {\n\t\t\tif (!mayBeWidget || !options.placeholder) {\n\t\t\t\tmacroEntry.impossible = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tvar ph = options.placeholder.getPlaceholderFor(entry.output,handler.name);\n\t\t\tnewParam.newValue = \"<<\"+ph+\">>\";\n\t\t\tnewParam.type = \"macro\";\n\t\t} else {\n\t\t\tnewParam.start = newParam.end - (newParam.value.length + (quote.length*2));\n\t\t\tnewParam.value = entry.output;\n\t\t\tnewParam.newValue = quoted;\n\t\t}\n\t\toutMacro.params[index] = newParam;\n\t\tmodified = true;\n\t}\n\tif (modified || macroEntry.impossible) {\n\t\tif (modified) {\n\t\t\tmacroEntry.output = outMacro;\n\t\t}\n\t\treturn macroEntry;\n\t}\n\treturn undefined;\n};\n\nfunction getInfoFromRule(rule) {\n\t// Get all the details of the match\n\tvar macroInfo = rule.nextCall;\n\tif (!macroInfo) {\n\t\t//  rule.match is used <v5.1.24\n\t\tvar match = rule.match,\n\t\t\toffset = $tw.utils.skipWhiteSpace(match[0], match[1].length+2);\n\t\tmacroInfo = {\n\t\t\tname: match[1],\n\t\t\tstart: rule.matchRegExp.lastIndex - match[0].length,\n\t\t\tend: rule.matchRegExp.lastIndex,\n\t\t};\n\t\tmacroInfo.params = parseParams(match[2], offset+macroInfo.start);\n\t}\n\treturn macroInfo;\n};\n\nfunction mustBeAWidget(macro) {\n\tfor (var i = 0; i < macro.params.length; i++) {\n\t\tif (macro.params[i].type === \"macro\") {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false\n};\n\n/**Given a macro object ({name:, params:, start: end:}), and the text where\n * it was parsed from, returns a new macro that maintains any syntactic\n * structuring.\n */\nfunction macroToString(macro, text, names, options) {\n\tif (mustBeAWidget(macro)) {\n\t\tvar attrs = [];\n\t\tfor (var i = 0; i < macro.params.length; i++) {\n\t\t\tvar p = macro.params[i];\n\t\t\tvar val;\n\t\t\tif (p.newValue) {\n\t\t\t\tval = p.newValue;\n\t\t\t} else {\n\t\t\t\tval = utils.wrapAttributeValue(p.value);\n\t\t\t}\n\t\t\tattrs.push(\" \"+names[i]+\"=\"+val);\n\t\t}\n\t\treturn \"<$macrocall $name=\"+utils.wrapAttributeValue(macro.name)+attrs.join('')+\"/>\";\n\t} else {\n\t\treturn macroToStringMacro(macro, text, options);\n\t}\n};\n\nfunction macroToStringMacro(macro, text, options) {\n\tvar builder = new Rebuilder(text, macro.start);\n\tfor (var i = 0; i < macro.params.length; i++) {\n\t\tvar param = macro.params[i];\n\t\tif (param.newValue) {\n\t\t\tbuilder.add(param.newValue, param.start, param.end);\n\t\t}\n\t}\n\treturn builder.results(macro.end);\n};\n\n/** Returns -1 if param definitely isn't in macrocall.\n */\nfunction getParamIndexWithinMacrocall(parser, macroName, param, params, options) {\n\tvar index, i, anonsExist = false;\n\tfor (i = 0; i < params.length; i++) {\n\t\tvar name = params[i].name;\n\t\tif (name === param) {\n\t\t\treturn i;\n\t\t}\n\t\tif (name === undefined) {\n\t\t\tanonsExist = true;\n\t\t}\n\t}\n\tif (!anonsExist) {\n\t\t// If no anonymous parameters are present, and we didn't find\n\t\t// it among the named ones, it must not be there.\n\t\treturn -1;\n\t}\n\tvar expectedIndex = indexOfParameterDef(parser, macroName, param, options);\n\t// We've got to skip over all the named parameter instances.\n\tif (expectedIndex >= 0) {\n\t\tvar anonI = 0;\n\t\tfor (i = 0; i < params.length; i++) {\n\t\t\tif (params[i].name === undefined) {\n\t\t\t\tif (anonI === expectedIndex) {\n\t\t\t\t\treturn i;\n\t\t\t\t}\n\t\t\t\tanonI++;\n\t\t\t} else {\n\t\t\t\tvar indexOfOther = indexOfParameterDef(parser, macroName, params[i].name, options);\n\t\t\t\tif (indexOfOther < expectedIndex) {\n\t\t\t\t\tanonI++;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn -1;\n};\n\n// Looks up the definition of a macro, and figures out what the expected index\n// is for the given parameter.\nfunction indexOfParameterDef(parser, macroName, paramName, options) {\n\tvar def = parser.context.getMacroDefinition(macroName);\n\tif (def === undefined) {\n\t\tthrow new CannotFindMacroDef();\n\t}\n\tvar params = def.params || [];\n\tfor (var i = 0; i < params.length; i++) {\n\t\tif (params[i].name === paramName) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn -1;\n};\n\nfunction getParamNames(parser, macroName, params, options) {\n\tvar used = Object.create(null);\n\tvar rtn = new Array(params.length);\n\tvar anonsExist = false;\n\tvar i;\n\tfor (i = 0; i < params.length; i++) {\n\t\tvar name = params[i].name;\n\t\tif (name) {\n\t\t\trtn[i] = name;\n\t\t\tused[name] = true;\n\t\t} else {\n\t\t\tanonsExist = true;\n\t\t}\n\t}\n\tif (anonsExist) {\n\t\tvar def = parser.context.getMacroDefinition(macroName);\n\t\tif (def === undefined) {\n\t\t\t// If there are anonymous parameters, and we can't\n\t\t\t// find the definition, then we can't hope to create\n\t\t\t// a widget.\n\t\t\treturn undefined;\n\t\t}\n\t\tvar defParams = def.params || [];\n\t\tvar defPtr = 0;\n\t\tfor (i = 0; i < params.length; i++) {\n\t\t\tif (rtn[i] === undefined) {\n\t\t\t\twhile(defPtr < defParams.length && used[defParams[defPtr].name]) {\n\t\t\t\t\tdefPtr++;\n\t\t\t\t}\n\t\t\t\tif (defPtr >= defParams.length) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\trtn[i] = defParams[defPtr].name;\n\t\t\t\tused[defParams[defPtr].name] = true;\n\t\t\t}\n\t\t}\n\t}\n\treturn rtn;\n};\n\nfunction parseParams(paramString, pos) {\n\tvar params = [],\n\t\treParam = /\\s*(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))/mg,\n\t\tparamMatch = reParam.exec(paramString);\n\twhile(paramMatch) {\n\t\t// Process this parameter\n\t\tvar paramInfo = { };\n\t\t// We need to find the group match that isn't undefined.\n\t\tfor (var i = 2; i <= 6; i++) {\n\t\t\tif (paramMatch[i] !== undefined) {\n\t\t\t\tparamInfo.value = paramMatch[i];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif(paramMatch[1]) {\n\t\t\tparamInfo.name = paramMatch[1];\n\t\t}\n\t\t//paramInfo.start = pos;\n\t\tparamInfo.end = reParam.lastIndex + pos;\n\t\tparams.push(paramInfo);\n\t\t// Find the next match\n\t\tparamMatch = reParam.exec(paramString);\n\t}\n\treturn params;\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/macrocall.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/macrodef.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles pragma macro definitions. Except we only update placeholder macros\nthat we may have previously install.\n\n\\define relink-?() Tough title\n\n\\*/\n\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils\");\nvar VariableContext = utils.getContext('variable');\n\nexports.name = \"macrodef\";\n\nexports.report = function(text, callback, options) {\n\tvar setParseTreeNode = this.parse(),\n\t\tm = this.match,\n\t\tname = m[1];\n\tthis.parser.context = new VariableContext(this.parser.context, setParseTreeNode[0]);\n\t// Parse set the pos pointer, but we don't want to skip the macro body.\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar endMatch = getBodyMatch(text, this.parser.pos, m[3]);\n\tif (endMatch) {\n\t\tvar value = endMatch[2],\n\t\t\thandler = utils.getType(getActiveType(name, m[2]) || 'wikitext');\n\t\tif (handler) {\n\t\t\tvar entry = handler.report(value, function(title, blurb) {\n\t\t\t\tvar macroStr = '\\\\define ' + name + '()';\n\t\t\t\tif (blurb) {\n\t\t\t\t\tmacroStr += ' ' + blurb;\n\t\t\t\t}\n\t\t\t\tcallback(title, macroStr);\n\t\t\t}, options);\n\t\t}\n\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t}\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar setParseTreeNode = this.parse(),\n\t\tentry,\n\t\tm = this.match,\n\t\tname = m[1],\n\t\tparams = m[2],\n\t\tmultiline = m[3];\n\tthis.parser.context = new VariableContext(this.parser.context, setParseTreeNode[0]);\n\t// Parse set the pos pointer, but we don't want to skip the macro body.\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar endMatch = getBodyMatch(text, this.parser.pos, multiline);\n\tif (endMatch) {\n\t\tvar value = endMatch[2],\n\t\t\ttype = getActiveType(name, params),\n\t\t\thandler = utils.getType(type || 'wikitext');\n\t\tif (handler) {\n\t\t\t// If this is an active relink placeholder, then let's remember it\n\t\t\tif (type && options.placeholder) {\n\t\t\t\toptions.placeholder.registerExisting(name, value);\n\t\t\t}\n\t\t\t// Relink the contents\n\t\t\tentry = handler.relink(value, fromTitle, toTitle, options);\n\t\t\tif (entry && entry.output) {\n\t\t\t\tentry.output = m[0] + endMatch[1] + entry.output + endMatch[0];\n\t\t\t}\n\t\t}\n\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t}\n\treturn entry;\n};\n\n// Return another match for the body, but tooled uniquely\n// m[1] = whitespace before body\n// m[2] = body\n// m.index + m[0].length -> end of match\nfunction getBodyMatch(text, pos, isMultiline) {\n\tvar whitespace,\n\t\tvalueRegExp;\n\tif (isMultiline) {\n\t\tvalueRegExp = /\\r?\\n\\\\end[^\\S\\n\\r]*(?:\\r?\\n|$)/mg;\n\t\twhitespace = '';\n\t} else {\n\t\tvalueRegExp = /(?:\\r?\\n|$)/mg;\n\t\tvar newPos = $tw.utils.skipWhiteSpace(text, pos);\n\t\twhitespace = text.substring(pos, newPos);\n\t\tpos = newPos;\n\t}\n\tvalueRegExp.lastIndex = pos;\n\tvar match = valueRegExp.exec(text);\n\tif (match) {\n\t\tmatch[1] = whitespace;\n\t\tmatch[2] = text.substring(pos, match.index);\n\t}\n\treturn match;\n};\n\nfunction getActiveType(macroName, parameters) {\n\tvar placeholder = /^relink-(?:(\\w+)-)?\\d+$/.exec(macroName);\n\t// normal macro or special placeholder?\n\tif (placeholder && parameters === '') {\n\t\treturn placeholder[1] || 'title';\n\t}\n\treturn undefined;\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/macrodef.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/prettylink.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement in wiki text inline rules, like,\n\n[[Introduction]]\n\n[[link description|TiddlerTitle]]\n\n\\*/\n\nvar utils = require(\"./utils.js\");\n\nexports.name = \"prettylink\";\n\nexports.report = function(text, callback, options) {\n\tvar text = this.match[1],\n\t\tlink = this.match[2] || text;\n\tif (!$tw.utils.isLinkExternal(link)) {\n\t\tcallback(link, '[[' + text + ']]');\n\t}\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar caption, m = this.match;\n\tif (m[2] === fromTitle) {\n\t\t// format is [[caption|MyTiddler]]\n\t\tcaption = m[1];\n\t} else if (m[2] !== undefined || m[1] !== fromTitle) {\n\t\t// format is [[MyTiddler]], and it doesn't match\n\t\treturn undefined;\n\t}\n\tvar entry = { output: utils.makePrettylink(this.parser, toTitle, caption) };\n\tif (entry.output === undefined) {\n\t\tentry.impossible = true;\n\t}\n\treturn entry;\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/prettylink.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/relink.js": {
            "text": "/*\\\nmodule-type: wikirule\n\nThis defines the \\relink inline pragma used to locally declare\nrelink rules for macros.\n\nIt takes care of providing its own relink and report rules.\n\n\\*/\n\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\n\nexports.name = \"relink\";\nexports.types = {pragma: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /^\\\\relink[^\\S\\n]+([^(\\s]+)([^\\r\\n]*)(\\r?\\n)?/mg;\n};\n\n/**This makes the widget that the macro library will later parse to determine\n * new macro relink state.\n *\n * It's a <$set> widget so it can appear BEFORE \\define pragma and not\n * prevent that pragma from being scooped up by importvariables.\n * (importvariables stops scooping as soon as it sees something besides $set) */\nexports.parse = function() {\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar macroName;\n\tvar macroParams = Object.create(null);\n\tvar error = undefined;\n\tvar rtn = [];\n\tvar self = this;\n\tthis.interpretSettings(function(macro, parameter, type) {\n\t\tmacroName = macro;\n\t\tif (type && !utils.getType(type)) {\n\t\t\terror = language.getString(\"Error/UnrecognizedType\",\n\t\t\t\t{variables: {type: type}, wiki: self.parser.wiki});\n\t\t}\n\t\tmacroParams[parameter] = type;\n\t});\n\t// If no macroname. Return nothing, this rule will be ignored by parsers\n\tif (macroName) {\n\t\tvar relink = Object.create(null);\n\t\trelink[macroName] = macroParams;\n\t\trtn.push({\n\t\t\ttype: \"set\",\n\t\t\tattributes: {\n\t\t\t\tname: {type: \"string\", value: \"\"}\n\t\t\t},\n\t\t\tchildren: [],\n\t\t\tisMacroDefinition: true,\n\t\t\trelink: relink});\n\t}\n\tif (error) {\n\t\trtn.push({\n\t\t\ttype: \"element\", tag: \"span\", attributes: {\n\t\t\t\t\"class\": {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: \"tc-error tc-relink-error\"\n\t\t\t\t}\n\t\t\t}, children: [\n\t\t\t\t{type: \"text\", text: error}\n\t\t\t]});\n\t}\n\treturn rtn;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar parser = this.parser;\n\tvar currentTiddler = parser.context.widget.variables.currentTiddler.value;\n\tparser.pos = this.matchRegExp.lastIndex;\n\tthis.interpretSettings(function(macro, parameter, type) {\n\t\toptions.settings.addSetting(parser.wiki, macro, parameter, type, currentTiddler);\n\t});\n\t// Return nothing, because this rule is ignored by the parser\n\treturn undefined;\n};\n\nexports.interpretSettings = function(block) {\n\tvar paramString = this.match[2];\n\tif (paramString !== \"\") {\n\t\tvar macro = this.match[1];\n\t\tvar reParam = /\\s*([A-Za-z0-9\\-_]+)(?:\\s*:\\s*([^\\s]+))?/mg;\n\t\tvar paramMatch = reParam.exec(paramString);\n\t\twhile (paramMatch) {\n\t\t\tvar parameter = paramMatch[1];\n\t\t\tvar type = paramMatch[2];\n\t\t\tblock(macro, parameter, type);\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\t}\n\t}\n};\n",
            "module-type": "wikirule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/relink.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/rules.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nParses and acknowledges any pragma rules a tiddler has.\n\n\\rules except html wikilink\n\n\\*/\n\nexports.name = \"rules\";\n\n/**This is all we have to do. The rules rule doesn't parse. It just amends\n * the rules, which is exactly what I want it to do too.\n * It also takes care of moving the pos pointer forward.\n */\nexports.relink = function() {\n\tthis.parse();\n\treturn undefined;\n};\n\n// Same deal\nexports.report = exports.relink;\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/rules.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/syslink.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles sys links\n\n$:/sys/link\n\nbut not:\n\n~$:/sys/link\n\n\\*/\n\nvar utils = require(\"./utils.js\");\n\nexports.name = \"syslink\";\n\nexports.report = function(text, callback, options) {\n\tvar title = this.match[0];\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif (title[0] !== \"~\") {\n\t\tcallback(title, '~' + title);\n\t}\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar entry = undefined;\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif (this.match[0] === fromTitle && this.match[0][0] !== \"~\") {\n\t\tentry = {output: this.makeSyslink(toTitle, options)};\n\t\tif (entry.output === undefined) {\n\t\t\tentry.impossible = true;\n\t\t}\n\t}\n\treturn entry;\n};\n\nexports.makeSyslink = function(title, options) {\n\tvar match = title.match(this.matchRegExp);\n\tif (match && match[0] === title && title[0] !== \"~\") {\n\t\treturn title;\n\t} else {\n\t\treturn utils.makePrettylink(this.parser, title);\n\t}\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/syslink.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/transclude.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement of transclusions in wiki text like,\n\n{{RenamedTiddler}}\n{{RenamedTiddler||TemplateTitle}}\n\nThis renames both the tiddler and the template field.\n\n\\*/\n\nvar refHandler = require(\"$:/plugins/flibbles/relink/js/fieldtypes/reference\");\nvar utils = require(\"./utils.js\");\n\nexports.name = ['transcludeinline', 'transcludeblock'];\n\nexports.report = function(text, callback, options) {\n\tvar m = this.match,\n\t\trefString = $tw.utils.trim(m[1]),\n\t\tref = parseTextReference(refString);\n\t\ttemplate = $tw.utils.trim(m[2]);\n\tif (ref.title) {\n\t\tvar suffix = '';\n\t\tif (ref.index) {\n\t\t\tsuffix = '##' + ref.index;\n\t\t} else if (ref.field) {\n\t\t\tsuffix = '!!' + ref.field;\n\t\t}\n\t\tif (template) {\n\t\t\tsuffix = suffix + '||' + template;\n\t\t}\n\t\tcallback(ref.title, '{{' + suffix + '}}')\n\t}\n\tif (template) {\n\t\tcallback(template, '{{' + refString + '||}}');\n\t}\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar m = this.match,\n\t\treference = parseTextReference(m[1]),\n\t\ttemplate = m[2],\n\t\tentry = undefined,\n\t\tmodified = false;\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif ($tw.utils.trim(reference.title) === fromTitle) {\n\t\t// preserve user's whitespace\n\t\treference.title = reference.title.replace(fromTitle, toTitle);\n\t\tmodified = true;\n\t}\n\tif ($tw.utils.trim(template) === fromTitle) {\n\t\ttemplate = template.replace(fromTitle, toTitle);\n\t\tmodified = true;\n\t}\n\tif (modified) {\n\t\tvar output = this.makeTransclude(this.parser, reference, template);\n\t\tif (output) {\n\t\t\t// Adding any newline that might have existed is\n\t\t\t// what allows this relink method to work for both\n\t\t\t// the block and inline filter wikitext rule.\n\t\t\tentry = {output: output + utils.getEndingNewline(m[0])};\n\t\t} else {\n\t\t\tentry = {impossible: true}\n\t\t}\n\t}\n\treturn entry;\n};\n\n// I have my own because the core one is deficient for my needs.\nfunction parseTextReference(textRef) {\n\t// Separate out the title, field name and/or JSON indices\n\tvar reTextRef = /^([\\w\\W]*?)(?:!!(\\S[\\w\\W]*)|##(\\S[\\w\\W]*))?$/g;\n\t\tmatch = reTextRef.exec(textRef),\n\t\tresult = {};\n\tif(match) {\n\t\t// Return the parts\n\t\tresult.title = match[1];\n\t\tresult.field = match[2];\n\t\tresult.index = match[3];\n\t} else {\n\t\t// If we couldn't parse it\n\t\tresult.title = textRef\n\t}\n\treturn result;\n};\n\n/** This converts a reference and a template into a string representation\n *  of a transclude.\n */\nexports.makeTransclude = function(parser, reference, template) {\n\tvar rtn;\n\tif (!canBePrettyTemplate(template)) {\n\t\tvar widget = utils.makeWidget(parser, '$transclude', {\n\t\t\ttiddler: $tw.utils.trim(template),\n\t\t\tfield: reference.field,\n\t\t\tindex: reference.index});\n\t\tif (reference.title && widget !== undefined) {\n\t\t\trtn = utils.makeWidget(parser, '$tiddler', {tiddler: $tw.utils.trim(reference.title)}, widget);\n\t\t} else {\n\t\t\trtn = widget;\n\t\t}\n\t} else if (!canBePrettyTitle(reference.title)) {\n\t\t// This block and the next account for the 1%...\n\t\tvar reducedRef = {field: reference.field, index: reference.index};\n\t\trtn = utils.makeWidget(parser, '$tiddler', {tiddler: $tw.utils.trim(reference.title)}, prettyTransclude(reducedRef, template));\n\t} else {\n\t\t// This block takes care of 99% of all cases\n\t\trtn = prettyTransclude(reference, template);\n\t}\n\treturn rtn;\n};\n\nfunction canBePrettyTitle(value) {\n\treturn refHandler.canBePretty(value) && canBePrettyTemplate(value);\n};\n\nfunction canBePrettyTemplate(value) {\n\treturn !value || (value.indexOf('}') < 0 && value.indexOf('{') < 0 && value.indexOf('|') < 0);\n};\n\nfunction prettyTransclude(textReference, template) {\n\tif (typeof textReference !== \"string\") {\n\t\ttextReference = refHandler.toString(textReference);\n\t}\n\tif (!textReference) {\n\t\ttextReference = '';\n\t}\n\tif (template !== undefined) {\n\t\treturn \"{{\"+textReference+\"||\"+template+\"}}\";\n\t} else {\n\t\treturn \"{{\"+textReference+\"}}\";\n\t}\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/transclude.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/utils.js": {
            "text": "/*\\\nmodule-type: library\n\nUtility methods for the wikitext relink rules.\n\n\\*/\n\nexports.makeWidget = function(parser, tag, attributes, body) {\n\tif (!parser.context.allowWidgets()) {\n\t\treturn undefined;\n\t}\n\tvar string = '<' + tag;\n\tfor (var attr in attributes) {\n\t\tvar value = attributes[attr];\n\t\tif (value !== undefined) {\n\t\t\tvar quoted = exports.wrapAttributeValue(value);\n\t\t\tif (!quoted) {\n\t\t\t\tif (!parser.options.placeholder) {\n\t\t\t\t\t// It's not possible to make this widget\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t\tvar category = getPlaceholderCategory(parser.context, tag, attr);\n\t\t\t\tquoted = '<<' + parser.placeholder.getPlaceholderFor(value, category) + '>>';\n\t\t\t}\n\t\t\tstring += ' ' + attr + '=' + quoted;\n\t\t}\n\t}\n\tif (body !== undefined) {\n\t\tstring += '>' + body + '</' + tag + '>';\n\t} else {\n\t\tstring += '/>';\n\t}\n\treturn string;\n};\n\nfunction getPlaceholderCategory(context, tag, attribute) {\n\tvar element = context.getAttribute(tag);\n\tvar rule = element && element[attribute];\n\t// titles go to relink-\\d\n\t// plaintext goes to relink-plaintext-\\d\n\t// because titles are way more common, also legacy\n\tif (rule === undefined) {\n\t\treturn 'plaintext';\n\t} else {\n\t\trule = rule.fields.text;\n\t\tif (rule === 'title') {\n\t\t\trule = undefined;\n\t\t}\n\t\treturn rule;\n\t}\n};\n\nexports.makePrettylink = function(parser, title, caption) {\n\tvar output;\n\tif (parser.context.allowPrettylinks() && canBePrettylink(title, caption)) {\n\t\tif (caption !== undefined) {\n\t\t\toutput = \"[[\" + caption + \"|\" + title + \"]]\";\n\t\t} else {\n\t\t\toutput = \"[[\" + title + \"]]\";\n\t\t}\n\t} else if (caption !== undefined) {\n\t\tvar safeCaption = sanitizeCaption(parser, caption);\n\t\tif (safeCaption !== undefined) {\n\t\t\toutput = exports.makeWidget(parser, '$link', {to: title}, safeCaption);\n\t\t}\n\t} else if (exports.shorthandPrettylinksSupported(parser.wiki)) {\n\t\toutput = exports.makeWidget(parser, '$link', {to: title});\n\t} else if (parser.context.allowWidgets() && parser.placeholder) {\n\t\t// If we don't have a caption, we must resort to\n\t\t// placeholders anyway to prevent link/caption desync\n\t\t// from later relinks.\n\t\t// It doesn't matter whether the tiddler is quotable.\n\t\tvar ph = parser.placeholder.getPlaceholderFor(title);\n\t\toutput = \"<$link to=<<\"+ph+\">>><$text text=<<\"+ph+\">>/></$link>\";\n\t}\n\treturn output;\n};\n\n/**In version 5.1.20, Tiddlywiki made it so <$link to\"something\" /> would\n * use \"something\" as a caption. This is preferable. However, Relink works\n * going back to 5.1.14, so we need to have different handling for both\n * cases.\n */\nvar _supported;\nexports.shorthandPrettylinksSupported = function(wiki) {\n\tif (_supported === undefined) {\n\t\tvar test = wiki.renderText(\"text/plain\", \"text/vnd.tiddlywiki\", \"<$link to=test/>\");\n\t\t_supported = (test === \"test\");\n\t}\n\treturn _supported;\n};\n\n/**Return true if value can be used inside a prettylink.\n */\nfunction canBePrettylink(value, customCaption) {\n\treturn value.indexOf(\"]]\") < 0 && value[value.length-1] !== ']' && (customCaption !== undefined || value.indexOf('|') < 0);\n};\n\nfunction sanitizeCaption(parser, caption) {\n\tvar plaintext = parser.wiki.renderText(\"text/plain\", \"text/vnd.tiddlywiki\", caption);\n\tif (plaintext === caption && caption.indexOf(\"</$link>\") <= 0) {\n\t\treturn caption;\n\t} else {\n\t\treturn exports.makeWidget(parser, '$text', {text: caption});\n\t}\n};\n\n/**Finds an appropriate quote mark for a given value.\n *\n *Tiddlywiki doesn't have escape characters for attribute values. Instead,\n * we just have to find the type of quotes that'll work for the given title.\n * There exist titles that simply can't be quoted.\n * If it can stick with the preference, it will.\n *\n * return: Returns the wrapped value, or undefined if it's impossible to wrap\n */\nexports.wrapAttributeValue = function(value, preference) {\n\tvar whitelist = [\"\", \"'\", '\"', '\"\"\"'];\n\tvar choices = {\n\t\t\"\": function(v) {return !/([\\/\\s<>\"'=])/.test(v) && v.length > 0; },\n\t\t\"'\": function(v) {return v.indexOf(\"'\") < 0; },\n\t\t'\"': function(v) {return v.indexOf('\"') < 0; },\n\t\t'\"\"\"': function(v) {return v.indexOf('\"\"\"') < 0 && v[v.length-1] != '\"';}\n\t};\n\tif (choices[preference] && choices[preference](value)) {\n\t\treturn wrap(value, preference);\n\t}\n\tfor (var i = 0; i < whitelist.length; i++) {\n\t\tvar quote = whitelist[i];\n\t\tif (choices[quote](value)) {\n\t\t\treturn wrap(value, quote);\n\t\t}\n\t}\n\t// No quotes will work on this\n\treturn undefined;\n};\n\n/**Like wrapAttribute value, except for macro parameters, not attributes.\n *\n * These are more permissive. Allows brackets,\n * and slashes and '<' in unquoted values.\n */\nexports.wrapParameterValue = function(value, preference) {\n\tvar whitelist = [\"\", \"'\", '\"', '[[', '\"\"\"'];\n\tvar choices = {\n\t\t\"\": function(v) {return !/([\\s>\"'=])/.test(v); },\n\t\t\"'\": function(v) {return v.indexOf(\"'\") < 0; },\n\t\t'\"': function(v) {return v.indexOf('\"') < 0; },\n\t\t\"[[\": canBePrettyOperand,\n\t\t'\"\"\"': function(v) {return v.indexOf('\"\"\"') < 0 && v[v.length-1] != '\"';}\n\t};\n\tif (choices[preference] && choices[preference](value)) {\n\t\treturn wrap(value, preference);\n\t}\n\tfor (var i = 0; i < whitelist.length; i++) {\n\t\tvar quote = whitelist[i];\n\t\tif (choices[quote](value)) {\n\t\t\treturn wrap(value, quote);\n\t\t}\n\t}\n\t// No quotes will work on this\n\treturn undefined;\n};\n\nfunction wrap(value, wrapper) {\n\tvar wrappers = {\n\t\t\"\": function(v) {return v; },\n\t\t\"'\": function(v) {return \"'\"+v+\"'\"; },\n\t\t'\"': function(v) {return '\"'+v+'\"'; },\n\t\t'\"\"\"': function(v) {return '\"\"\"'+v+'\"\"\"'; },\n\t\t\"[[\": function(v) {return \"[[\"+v+\"]]\"; }\n\t};\n\tvar chosen = wrappers[wrapper];\n\tif (chosen) {\n\t\treturn chosen(value);\n\t} else {\n\t\treturn undefined;\n\t}\n};\n\nfunction canBePrettyOperand(value) {\n\treturn value.indexOf(']') < 0;\n};\n\n/**Given some text, and a param or  attribute within that text, this returns\n * what type of quotation that attribute is using.\n *\n * param: An object in the form {end:, ...}\n */\nexports.determineQuote = function(text, param) {\n\tvar pos = param.end-1;\n\tif (text[pos] === \"'\") {\n\t\treturn \"'\";\n\t}\n\tif (text[pos] === '\"') {\n\t\tif (text.substr(pos-2, 3) === '\"\"\"') {\n\t\t\treturn '\"\"\"';\n\t\t} else {\n\t\t\treturn '\"';\n\t\t}\n\t}\n\tif (text.substr(pos-1,2) === ']]' && text.substr((pos-param.value.length)-3, 2) === '[[') {\n\t\treturn \"[[\";\n\t}\n\treturn '';\n};\n\n// Finds the newline at the end of a string and returns it. Empty string if\n// none exists.\nexports.getEndingNewline = function(string) {\n\tvar l = string.length;\n\tif (string[l-1] === '\\n') {\n\t\treturn (string[l-2] === '\\r') ? \"\\r\\n\" : \"\\n\";\n\t}\n\treturn \"\";\n};\n",
            "module-type": "library",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/utils.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/wikilink.js": {
            "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles CamelCase links\n\nWikiLink\n\nbut not:\n\n~WikiLink\n\n\\*/\n\nvar utils = require(\"./utils.js\");\n\nexports.name = \"wikilink\";\n\nexports.report = function(text, callback, options) {\n\tvar title = this.match[0],\n\t\tunlink = $tw.config.textPrimitives.unWikiLink;\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif (title[0] !== unlink) {\n\t\tcallback(title, unlink + title);\n\t}\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar entry = undefined,\n\t\ttitle = this.match[0];\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif (title === fromTitle && title[0] !== $tw.config.textPrimitives.unWikiLink) {\n\t\tentry = { output: this.makeWikilink(toTitle, options) };\n\t\tif (entry.output === undefined) {\n\t\t\tentry.impossible = true;\n\t\t}\n\t}\n\treturn entry;\n};\n\nexports.makeWikilink = function(title, options) {\n\tif (title.match(this.matchRegExp) && title[0] !== $tw.config.textPrimitives.unWikiLink) {\n\t\treturn title;\n\t} else {\n\t\treturn utils.makePrettylink(this.parser, title);\n\t}\n};\n",
            "module-type": "relinkwikitextrule",
            "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/wikilink.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/contexts/context.js": {
            "text": "/*\\\n\nBase class for relink contexts.\n\n\\*/\n\nfunction Context() {\n};\n\nexports.context = Context;\n\n// This class does no special handling of fields, operators, or attributes.\n// we pass it along to the parent.\nContext.prototype.getFields = function() {\n\treturn this.parent.getFields();\n};\n\nContext.prototype.getOperator = function(name, index) {\n\treturn this.parent.getOperator(name, index);\n};\n\nContext.prototype.getOperators = function() {\n\treturn this.parent.getOperators();\n};\n\nContext.prototype.getAttribute = function(elementName) {\n\treturn this.parent.getAttribute(elementName);\n};\n\nContext.prototype.getAttributes = function() {\n\treturn this.parent.getAttributes();\n};\n\nContext.prototype.getMacro = function(macroName) {\n\treturn this.parent.getMacro(macroName);\n};\n\nContext.prototype.getMacros = function() {\n\treturn this.parent.getMacros();\n};\n\nContext.prototype.allowPrettylinks = function() {\n\treturn this.parent.allowPrettylinks();\n};\n\nContext.prototype.allowWidgets = function() {\n\treturn this.parent.allowWidgets();\n};\n\nContext.prototype.hasImports = function(value) {\n\treturn this.parent.hasImports(value);\n};\n",
            "module-type": "relinkcontext",
            "title": "$:/plugins/flibbles/relink/js/contexts/context.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/contexts/import.js": {
            "text": "/*\\\n\nThis handles the fetching and distribution of relink settings.\n\n\\*/\n\nvar WidgetContext = require('./widget').widget;\n\nfunction ImportContext(wiki, parent, filter) {\n\tthis.parent = parent;\n\tthis.wiki = wiki;\n\tvar importWidget = createImportWidget(filter, this.wiki, this.parent.widget);\n\tthis._compileList(importWidget.tiddlerList);\n\t// This only works if only one filter is imported\n\tthis.widget = this.getBottom(importWidget);\n\t// Trickle this up, so that any containing tiddlercontext knows that this\n\t// tiddler does some importing, and must be checked regularly.\n\tparent.hasImports(true);\n};\n\nexports.import = ImportContext;\n\nImportContext.prototype = new WidgetContext();\n\nImportContext.prototype.changed = function(changes) {\n\treturn this.widget && this.widget.refresh(changes)\n};\n\nfunction createImportWidget(filter, wiki, parent) {\n\tvar widget = wiki.makeWidget( { tree: [{\n\t\ttype: \"importvariables\",\n\t\tattributes: {\n\t\t\t\"filter\": {\n\t\t\t\ttype: \"string\",\n\t\t\t\tvalue: filter\n\t\t\t}\n\t\t}\n\t}] }, { parentWidget: parent} );\n\tif (parent) {\n\t\tparent.children.push(widget);\n\t}\n\twidget.execute();\n\twidget.renderChildren();\n\tvar importWidget = widget.children[0];\n\treturn importWidget;\n};\n\nImportContext.prototype._compileList = function(titleList) {\n\tfor (var i = 0; i < titleList.length; i++) {\n\t\tvar parser = this.wiki.parseTiddler(titleList[i]);\n\t\tif (parser) {\n\t\t\tvar parseTreeNode = parser.tree[0];\n\t\t\twhile (parseTreeNode && parseTreeNode.type === \"set\") {\n\t\t\t\tif (parseTreeNode.relink) {\n\t\t\t\t\tfor (var macroName in parseTreeNode.relink) {\n\t\t\t\t\t\tvar parameters = parseTreeNode.relink[macroName];\n\t\t\t\t\t\tfor (paramName in parameters) {\n\t\t\t\t\t\t\tthis.addSetting(this.wiki, macroName, paramName, parameters[paramName], titleList[i]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tparseTreeNode = parseTreeNode.children && parseTreeNode.children[0];\n\t\t\t}\n\t\t}\n\t}\n};\n",
            "module-type": "relinkcontext",
            "title": "$:/plugins/flibbles/relink/js/contexts/import.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/contexts/tiddler.js": {
            "text": "/*\\\n\nContext for a tiddler. Defines nothing but makes an entry point to test if\na tiddler must be refreshed.\n\n\\*/\n\nvar WidgetContext = require('./widget.js').widget;\n\nfunction TiddlerContext(wiki, parentContext, title) {\n\tthis.title = title;\n\tthis.parent = parentContext;\n\tvar globalWidget = parentContext && parentContext.widget;\n\tvar parentWidget = wiki.makeWidget(null, {parentWidget: globalWidget});\n\tparentWidget.setVariable('currentTiddler', title);\n\tthis.widget = wiki.makeWidget(null, {parentWidget: parentWidget});\n};\n\nexports.tiddler = TiddlerContext;\n\nTiddlerContext.prototype = new WidgetContext();\n\nTiddlerContext.prototype.changed = function(changes) {\n\treturn this.widget && this.widget.refresh(changes);\n};\n\n// By default, a tiddler context does not use imports, unless an import\n// statement is later discovered somewhere in the fields.\nTiddlerContext.prototype.hasImports = function(value) {\n\treturn this._hasImports || (this._hasImports = value);\n};\n",
            "module-type": "relinkcontext",
            "title": "$:/plugins/flibbles/relink/js/contexts/tiddler.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/contexts/variable.js": {
            "text": "/*\\\n\nThis handles the context for variables. Either from $set, $vars, or \\define\n\n\\*/\n\nvar WidgetContext = require('./widget').widget;\n\nfunction VariableContext(parent, setParseTreeNode) {\n\tthis.parent = parent;\n\t// Now create a new widget and attach it.\n\tvar attachPoint = parent.widget;\n\tvar setWidget = attachPoint.makeChildWidget(setParseTreeNode);\n\tattachPoint.children.push(setWidget);\n\tsetWidget.computeAttributes();\n\tsetWidget.execute();\n\t// point our widget to bottom, where any other contexts would attach to\n\tthis.widget = this.getBottom(setWidget);\n};\n\nexports.variable = VariableContext;\n\nVariableContext.prototype = new WidgetContext();\n",
            "module-type": "relinkcontext",
            "title": "$:/plugins/flibbles/relink/js/contexts/variable.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/contexts/whitelist.js": {
            "text": "/*\\\n\nThis top-level context manages settings inside the whitelist. It never has\na parent.\n\n\\*/\n\nvar utils = require('../utils');\nvar Context = require('./context').context;\n\nvar prefix = \"$:/config/flibbles/relink/\";\n\nfunction WhitelistContext(wiki) {\n\tbuild(this, wiki);\n};\n\nexports.whitelist = WhitelistContext;\n\nWhitelistContext.prototype = new Context();\n\n/**Hot directories are directories for which if anything changes inside them,\n * then Relink must completely rebuild its index.\n * By default, this includes the whitelist settings, but relink-titles also\n * includes its rules disabling directory.\n * This is the FIRST solution I came up with to this problem. If you're\n * looking at this, please make a github issue so I have a chance to understand\n * your needs. This is currently a HACK solution.\n */\nWhitelistContext.hotDirectories = [prefix];\n\nWhitelistContext.prototype.getAttribute = function(elementName) {\n\treturn this.attributes[elementName];\n};\n\nWhitelistContext.prototype.getAttributes = function() {\n\treturn flatten(this.attributes);\n};\n\nWhitelistContext.prototype.getFields = function() {\n\treturn this.fields;\n};\n\nWhitelistContext.prototype.getOperator = function(operatorName, operandIndex) {\n\tvar op = this.operators[operatorName];\n\treturn op && op[operandIndex || 1];\n};\n\nWhitelistContext.prototype.getOperators = function() {\n\tvar signatures = Object.create(null);\n\tfor (var op in this.operators) {\n\t\tvar operandSet = this.operators[op];\n\t\tfor (var index in operandSet) {\n\t\t\tvar entry = operandSet[index];\n\t\t\tsignatures[entry.key] = entry;\n\t\t}\n\t}\n\treturn signatures;\n};\n\nWhitelistContext.prototype.getMacro = function(macroName) {\n\treturn this.macros[macroName];\n};\n\nWhitelistContext.prototype.getMacros = function() {\n\treturn flatten(this.macros);\n};\n\nWhitelistContext.prototype.changed = function(changedTiddlers) {\n\tfor (var i = 0; i < WhitelistContext.hotDirectories.length; i++) {\n\t\tvar dir = WhitelistContext.hotDirectories[i];\n\t\tfor (var title in changedTiddlers) {\n\t\t\tif (title.substr(0, dir.length) === dir) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\nWhitelistContext.prototype.hasImports = function(value) {\n\t// We don't care if imports are used. This is the global level.\n\treturn false;\n};\n\n/**Factories define methods that create settings given config tiddlers.\n * for factory method 'example', it will be called once for each:\n * \"$:/config/flibbles/relink/example/...\" tiddler that exists.\n * the argument \"key\" will be set to the contents of \"...\"\n *\n * The reason I build relink settings in this convoluted way is to minimize\n * the number of times tiddlywiki has to run through EVERY tiddler looking\n * for relink config tiddlers.\n *\n * Also, by exporting \"factories\", anyone who extends relink can patch in\n * their own factory methods to create settings that are generated exactly\n * once per rename.\n */\nvar factories = {\n\tattributes: function(attributes, data, key) {\n\t\tvar elem = root(key);\n\t\tvar attr = key.substr(elem.length+1);\n\t\tattributes[elem] = attributes[elem] || Object.create(null);\n\t\tattributes[elem][attr] = data;\n\t},\n\tfields: function(fields, data, name) {\n\t\tfields[name] = data;\n\t},\n\tmacros: function(macros, data, key) {\n\t\t// We take the last index, not the first, because macro\n\t\t// parameters can't have slashes, but macroNames can.\n\t\tvar name = dir(key);\n\t\tvar arg = key.substr(name.length+1);\n\t\tmacros[name] = macros[name] || Object.create(null);\n\t\tmacros[name][arg] = data;\n\t},\n\toperators: function(operators, data, key) {\n\t\t// We take the last index, not the first, because the operator\n\t\t// may have a slash to indicate parameter number\n\t\tvar pair = key.split('/');\n\t\tvar name = pair[0];\n\t\tdata.key = key;\n\t\toperators[name] = operators[name] || Object.create(null);\n\t\toperators[name][pair[1] || 1] = data;\n\t}\n};\n\nfunction build(settings, wiki) {\n\tfor (var name in factories) {\n\t\tsettings[name] = Object.create(null);\n\t}\n\twiki.eachShadowPlusTiddlers(function(tiddler, title) {\n\t\tif (title.substr(0, prefix.length) === prefix) {\n\t\t\tvar remainder = title.substr(prefix.length);\n\t\t\tvar category = root(remainder);\n\t\t\tvar factory = factories[category];\n\t\t\tif (factory) {\n\t\t\t\tvar name = remainder.substr(category.length+1);\n\t\t\t\tvar data = utils.getType(tiddler.fields.text.trim());\n\t\t\t\tif (data) {\n\t\t\t\t\tdata.source = title;\n\t\t\t\t\t// Secret feature. You can access a config tiddler's\n\t\t\t\t\t// fields from inside the fieldtype handler. Cool\n\t\t\t\t\t// tricks can be done with this.\n\t\t\t\t\tdata.fields = tiddler.fields;\n\t\t\t\t\tfactory(settings[category], data, name);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n};\n\n/* Returns first bit of a path. path/to/tiddler -> path\n */\nfunction root(string) {\n\tvar index = string.indexOf('/');\n\tif (index >= 0) {\n\t\treturn string.substr(0, index);\n\t}\n};\n\n/* Returns all but the last bit of a path. path/to/tiddler -> path/to\n */\nfunction dir(string) {\n\tvar index = string.lastIndexOf('/');\n\tif (index >= 0) {\n\t\treturn string.substr(0, index);\n\t}\n}\n\n/* Turns {dir: {file1: 'value1', file2: 'value2'}}\n * into {dir/file1: 'value1', dir/file2: 'value2'}\n */\nfunction flatten(set) {\n\tvar signatures = Object.create(null);\n\tfor (var outerName in set) {\n\t\tvar setItem = set[outerName];\n\t\tfor (var innerName in setItem) {\n\t\t\tsignatures[outerName + \"/\" + innerName] = setItem[innerName];\n\t\t}\n\t}\n\treturn signatures;\n};\n",
            "module-type": "relinkcontext",
            "title": "$:/plugins/flibbles/relink/js/contexts/whitelist.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/contexts/widget.js": {
            "text": "/*\\\n\nThis is a virtual subclass of context for contexts that exist within widgets\nof a specific tiddler.\n\nAll widget contexts must have a widget member.\n\n\\*/\n\nvar Context = require('./context.js').context;\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\n\nfunction WidgetContext() {};\n\nexports.widget = WidgetContext;\n\nWidgetContext.prototype = new Context();\n\nWidgetContext.prototype.getMacroDefinition = function(variableName) {\n\t// widget.variables is prototyped, so it looks up into all its parents too\n\treturn this.widget.variables[variableName] || $tw.macros[variableName];\n};\n\nWidgetContext.prototype.addSetting = function(wiki, macroName, parameter, type, sourceTitle) {\n\tthis.macros = this.macros || Object.create(null);\n\tvar macro = this.macros[macroName];\n\ttype = type || utils.getDefaultType(wiki);\n\tif (macro === undefined) {\n\t\tmacro = this.macros[macroName] = Object.create(null);\n\t}\n\tvar handler = utils.getType(type);\n\tif (handler) {\n\t\thandler.source = sourceTitle;\n\t\t// We attach the fields of the defining tiddler for the benefit\n\t\t// of any 3rd party field types that want access to them.\n\t\tvar tiddler = wiki.getTiddler(sourceTitle);\n\t\thandler.fields = tiddler.fields;\n\t\tmacro[parameter] = handler;\n\t}\n};\n\nWidgetContext.prototype.getMacros = function() {\n\tvar signatures = this.parent.getMacros();\n\tif (this.macros) {\n\t\tfor (var macroName in this.macros) {\n\t\t\tvar macro = this.macros[macroName];\n\t\t\tfor (var param in macro) {\n\t\t\t\tsignatures[macroName + \"/\" + param] = macro[param];\n\t\t\t}\n\t\t}\n\t}\n\treturn signatures;\n};\n\n/**This does strange handling because it's possible for a macro to have\n * its individual parameters whitelisted in separate places.\n * Don't know WHY someone would do this, but it can happen.\n */\nWidgetContext.prototype.getMacro = function(macroName) {\n\tvar theseSettings = this.macros && this.macros[macroName];\n\tvar parentSettings;\n\tif (this.parent) {\n\t\tparentSettings = this.parent.getMacro(macroName);\n\t}\n\tif (theseSettings && parentSettings) {\n\t\t// gotta merge them without changing either. This is expensive,\n\t\t// but it'll happen rarely.\n\t\tvar rtnSettings = $tw.utils.extend(Object.create(null), theseSettings, parentSettings);\n\t\treturn rtnSettings;\n\t}\n\treturn theseSettings || parentSettings;\n};\n\n/**Returns the deepest descendant of the given widget.\n */\nWidgetContext.prototype.getBottom = function(widget) {\n\twhile (widget.children.length > 0) {\n\t\twidget = widget.children[0];\n\t}\n\treturn widget;\n};\n",
            "module-type": "relinkcontext",
            "title": "$:/plugins/flibbles/relink/js/contexts/widget.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/contexts/wikitext.js": {
            "text": "/*\\\n\nContext for wikitext. It can contain rules about what's allowed in this\ncurrent layer of wikitext.\n\n\\*/\n\nvar WidgetContext = require('./widget.js').widget;\n\nfunction WikitextContext(parentContext) {\n\tthis.parent = parentContext;\n\tthis.widget = parentContext.widget;\n};\n\nexports.wikitext = WikitextContext;\n\nWikitextContext.prototype = new WidgetContext();\n\n// Unless this specific context has rules about it, widgets and prettyLInks are allowed.\nWikitextContext.prototype.allowWidgets = enabled;\nWikitextContext.prototype.allowPrettylinks = enabled;\n\nfunction enabled() { return true; };\n",
            "module-type": "relinkcontext",
            "title": "$:/plugins/flibbles/relink/js/contexts/wikitext.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/utils/backupIndexer.js": {
            "text": "/*\\\nmodule-type: library\n\nThis is a backup indexer Relink uses if the real one is disabled, or we're\n<V5.1.23. It's not nearly as good, but it caches some.\n\n\\*/\n\n\"use strict\";\n\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\nvar TiddlerContext = utils.getContext('tiddler');\n\n// This is the indexer we use if the current wiki doesn't support indexers.\nfunction BackupIndexer(wiki) {\n\tthis.wiki = wiki;\n};\n\nmodule.exports = BackupIndexer;\n\nBackupIndexer.prototype.lookup = function(title) {\n\treturn getCache(this.wiki).lookup[title];\n};\n\nBackupIndexer.prototype.reverseLookup = function(title) {\n\tvar index = getCache(this.wiki);\n\tif (!index.reverse[title]) {\n\t\tvar record = Object.create(null);\n\t\tfor (var other in index.lookup) {\n\t\t\tif (index.lookup[other][title]) {\n\t\t\t\trecord[other] = index.lookup[other][title];\n\t\t\t}\n\t\t}\n\t\tindex.reverse[title] = record;\n\t}\n\treturn index.reverse[title];\n};\n\n/* The backup indexer doesn't bother caching relink reports. It would always\n * be called after a draft tiddler had changed, which would defeat the point.\n */\nBackupIndexer.prototype.relinkLookup = function(fromTitle, toTitle, options) {\n\tvar cache = getCache(this.wiki);\n\tif (cache.lastRelinkFrom === fromTitle && cache.lastRelinkTo === toTitle) {\n\t\toptions.cache = cache.lastRelinkCache;\n\t\treturn cache.lastRelink;\n\t}\n\tcache.lastRelink = utils.getRelinkResults(this.wiki, fromTitle, toTitle, cache.context, undefined, options);\n\tcache.lastRelinkFrom = fromTitle;\n\tcache.lastRelinkTo = toTitle;\n\tcache.lastRelinkCache = options.cache;\n\treturn cache.lastRelink;\n};\n\nfunction getCache(wiki) {\n\treturn wiki.getGlobalCache('relink', function() {\n\t\tvar tiddlerList = wiki.getRelinkableTitles();\n\t\tvar index = Object.create(null);\n\t\tvar wikiContext = utils.getWikiContext(wiki);\n\t\tfor (var i = 0; i < tiddlerList.length; i++) {\n\t\t\tvar title = tiddlerList[i];\n\t\t\tvar tiddler = wiki.getTiddler(title);\n\t\t\tif (tiddler && !tiddler.fields[\"plugin-type\"]) {\n\t\t\t\tvar context = new TiddlerContext(wiki, wikiContext, title);\n\t\t\t\tindex[title] = utils.getTiddlerRelinkReferences(wiki, title, context);\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\tlookup: index,\n\t\t\treverse: Object.create(null),\n\t\t\tcontext: wikiContext};\n\t});\n};\n",
            "module-type": "library",
            "title": "$:/plugins/flibbles/relink/js/utils/backupIndexer.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/utils/entry.js": {
            "text": "/*\\\n\nEntries are deprecated. Don't use them. These classes are here just so that\nany 3rd party modules built for Relink V1 don't break.\n\nJust return an object like, {output: \"string\", impossible: true|undefined}\n\n\\*/\n\nfunction EntryNode() {\n\tthis.children = [];\n};\n\nmodule.exports = EntryNode;\n\n/**  PURE VIRTUAL\n * EntryNode.prototype.report = function() -> [\"string\", ...]\n */\n\nEntryNode.newType = function() {\n\treturn EntryNode;\n};\n\nEntryNode.prototype.add = function(entry) {\n\tthis.children.push(entry);\n};\n\nfunction EntryCollection() {\n\tthis.children = Object.create(null);\n\tthis.types = Object.create(null);\n};\n\nEntryNode.newCollection = function(name) {\n\treturn EntryCollection;\n};\n\n// Again. I reiterate. Don't use this. All this is just legacy support.\nObject.defineProperty(EntryCollection, 'impossible', {\n\tget: function() {\n\t\tvar imp = this._impossible;\n\t\tthis.eachChild(function(child) { imp = imp || child.impossible; });\n\t\treturn imp;\n\t},\n\tset: function(impossible) {\n\t\tthis._impossible = true;\n\t}\n});\n\nEntryCollection.prototype.eachChild = function(method) {\n\tfor (var child in this.children) {\n\t\tmethod(this.children[child]);\n\t}\n};\n\nEntryCollection.prototype.addChild = function(child, name, type) {\n\tthis.children[name] = child;\n\tthis.types[name] = type;\n};\n\nEntryCollection.prototype.hasChildren = function() {\n\treturn Object.keys(this.children).length > 0;\n};\n",
            "module-type": "library",
            "title": "$:/plugins/flibbles/relink/js/utils/entry.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/utils/placeholder.js": {
            "text": "/*\\\n\nA method which doles out placeholders when requested, and constructs\nthe necessary supporting pragma when requested.\n\n\\*/\n\nvar utils = require('../utils');\n\nfunction Placeholder() {\n\tthis.placeholders = Object.create(null);\n\tthis.reverseMap = {};\n\tthis.used = Object.create(null);\n};\n\nmodule.exports = Placeholder;\n\nPlaceholder.prototype.getPlaceholderFor = function(value, category) {\n\tthis.reverseMap[category] = this.reverseMap[category] || Object.create(null);\n\tvar placeholder = this.reverseMap[category][value];\n\tif (placeholder) {\n\t\treturn placeholder;\n\t}\n\tvar config = (this.parser && this.parser.context) || utils.getWikiContext(this.parser.wiki);\n\tvar number = 0;\n\tvar prefix = \"relink-\"\n\tif (category && category !== \"title\") {\n\t\t// I don't like \"relink-title-1\". \"relink-1\" should be for\n\t\t// titles. lists, and filters can have descriptors though.\n\t\tprefix += category + \"-\";\n\t}\n\tdo {\n\t\tnumber += 1;\n\t\tplaceholder = prefix + number;\n\t} while (config.getMacroDefinition(placeholder) || this.used[placeholder]);\n\tthis.placeholders[placeholder] = value;\n\tthis.reverseMap[category][value] = placeholder;\n\tthis.used[placeholder] = true;\n\treturn placeholder;\n};\n\n// For registering placeholders that already existed\nPlaceholder.prototype.registerExisting = function(key, value) {\n\tthis.reverseMap[value] = key;\n\tthis.used[key] = true;\n};\n\nPlaceholder.prototype.getPreamble = function() {\n\tvar results = [];\n\tvar keys = Object.keys(this.placeholders);\n\tif (keys.length > 0) {\n\t\tkeys.sort();\n\t\tfor (var i = 0; i < keys.length; i++) {\n\t\t\tvar name = keys[i];\n\t\t\tvar val = this.placeholders[name];\n\t\t\tresults.push(\"\\\\define \"+name+\"() \"+val+\"\\n\");\n\t\t}\n\t}\n\treturn results.join('');\n};\n\n",
            "module-type": "library",
            "title": "$:/plugins/flibbles/relink/js/utils/placeholder.js",
            "type": "application/javascript"
        },
        "$:/plugins/flibbles/relink/js/utils/rebuilder.js": {
            "text": "/*\\\n\nThis helper class aids in reconstructing an existing string with new parts.\n\n\\*/\n\nfunction Rebuilder(text, start) {\n\tthis.text = text;\n\tthis.index = start || 0;\n\tthis.pieces = [];\n};\n\nmodule.exports = Rebuilder;\n\n/**Pieces must be added consecutively.\n * Start and end are the indices in the old string specifying where to graft\n * in the new piece.\n */\nRebuilder.prototype.add = function(value, start, end) {\n\tthis.pieces.push(this.text.substring(this.index, start), value);\n\tthis.index = end;\n};\n\nRebuilder.prototype.changed = function() {\n\treturn this.pieces.length > 0;\n};\n\nRebuilder.prototype.results = function(end) {\n\tif (this.changed()) {\n\t\tthis.pieces.push(this.text.substring(this.index, end));\n\t\treturn this.pieces.join('');\n\t}\n\treturn undefined;\n};\n",
            "module-type": "library",
            "title": "$:/plugins/flibbles/relink/js/utils/rebuilder.js",
            "type": "application/javascript"
        },
        "$:/config/flibbles/relink/attributes/$button/set": {
            "title": "$:/config/flibbles/relink/attributes/$button/set",
            "text": "reference"
        },
        "$:/config/flibbles/relink/attributes/$button/setTo": {
            "title": "$:/config/flibbles/relink/attributes/$button/setTo",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$button/to": {
            "title": "$:/config/flibbles/relink/attributes/$button/to",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$checkbox/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$checkbox/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$checkbox/tag": {
            "title": "$:/config/flibbles/relink/attributes/$checkbox/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$count/filter": {
            "title": "$:/config/flibbles/relink/attributes/$count/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/attributes/$draggable/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$draggable/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$draggable/filter": {
            "title": "$:/config/flibbles/relink/attributes/$draggable/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/attributes/$edit-bitmap/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$edit-bitmap/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$edit-text/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$edit-text/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$edit/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$edit/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$encrypt/filter": {
            "title": "$:/config/flibbles/relink/attributes/$encrypt/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/attributes/$fieldmangler/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$fieldmangler/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$fields/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$fields/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$image/source": {
            "title": "$:/config/flibbles/relink/attributes/$image/source",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$importvariables/filter": {
            "title": "$:/config/flibbles/relink/attributes/$importvariables/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/attributes/$linkcatcher/to": {
            "title": "$:/config/flibbles/relink/attributes/$linkcatcher/to",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$linkcatcher/set": {
            "title": "$:/config/flibbles/relink/attributes/$linkcatcher/set",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$link/to": {
            "title": "$:/config/flibbles/relink/attributes/$link/to",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$list/filter": {
            "title": "$:/config/flibbles/relink/attributes/$list/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/attributes/$list/template": {
            "title": "$:/config/flibbles/relink/attributes/$list/template",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$list/editTemplate": {
            "title": "$:/config/flibbles/relink/attributes/$list/editTemplate",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$list/emptyMessage": {
            "title": "$:/config/flibbles/relink/attributes/$list/emptyMessage",
            "text": "wikitext"
        },
        "$:/config/flibbles/relink/attributes/$list/history": {
            "title": "$:/config/flibbles/relink/attributes/$list/history",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$navigator/story": {
            "title": "$:/config/flibbles/relink/attributes/$navigator/story",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$navigator/history": {
            "title": "$:/config/flibbles/relink/attributes/$navigator/history",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$radio/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$radio/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$range/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$range/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$reveal/stateTitle": {
            "title": "$:/config/flibbles/relink/attributes/$reveal/stateTitle",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$select/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$select/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$setvariable/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$setvariable/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$setvariable/subtiddler": {
            "title": "$:/config/flibbles/relink/attributes/$setvariable/subtiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$setvariable/filter": {
            "title": "$:/config/flibbles/relink/attributes/$setvariable/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/attributes/$set/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$set/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$set/subtiddler": {
            "title": "$:/config/flibbles/relink/attributes/$set/subtiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$set/filter": {
            "title": "$:/config/flibbles/relink/attributes/$set/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/attributes/$tiddler/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$tiddler/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$transclude/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$transclude/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$transclude/subtiddler": {
            "title": "$:/config/flibbles/relink/attributes/$transclude/subtiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$view/tiddler": {
            "title": "$:/config/flibbles/relink/attributes/$view/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/attributes/$view/subtiddler": {
            "title": "$:/config/flibbles/relink/attributes/$view/subtiddler",
            "text": "title"
        },
        "$:/plugins/flibbles/relink/configuration": {
            "title": "$:/plugins/flibbles/relink/configuration",
            "text": "<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/flibbles/relink/Configuration]!has[draft.of]]\" \"$:/plugins/flibbles/relink/ui/configuration/Fields\">>\n</div>\n"
        },
        "$:/config/flibbles/relink/fields/caption": {
            "title": "$:/config/flibbles/relink/fields/caption",
            "text": "wikitext"
        },
        "$:/config/flibbles/relink/fields/filter": {
            "title": "$:/config/flibbles/relink/fields/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/fields/list": {
            "title": "$:/config/flibbles/relink/fields/list",
            "text": "list"
        },
        "$:/config/flibbles/relink/fields/list-after": {
            "title": "$:/config/flibbles/relink/fields/list-after",
            "text": "title"
        },
        "$:/config/flibbles/relink/fields/list-before": {
            "title": "$:/config/flibbles/relink/fields/list-before",
            "text": "title"
        },
        "$:/config/flibbles/relink/fields/tags": {
            "title": "$:/config/flibbles/relink/fields/tags",
            "text": "list"
        },
        "$:/plugins/flibbles/relink/language/Buttons/Delete/Hint": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/Delete/Hint",
            "text": "delete"
        },
        "$:/plugins/flibbles/relink/language/Buttons/LinkToInline/Hint": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/LinkToInline/Hint",
            "text": "go to defining tiddler"
        },
        "$:/plugins/flibbles/relink/language/Buttons/NewAttribute/Hint": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/NewAttribute/Hint",
            "text": "Specify a new widget/element attribute to be updated whenever a tiddler is renamed"
        },
        "$:/plugins/flibbles/relink/language/Buttons/NewAttribute/Caption": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/NewAttribute/Caption",
            "text": "add"
        },
        "$:/plugins/flibbles/relink/language/Buttons/NewField/Hint": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/NewField/Hint",
            "text": "Specify a new field to be updated whenever a tiddler is renamed"
        },
        "$:/plugins/flibbles/relink/language/Buttons/NewField/Caption": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/NewField/Caption",
            "text": "add"
        },
        "$:/plugins/flibbles/relink/language/Buttons/NewOperator/Hint": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/NewOperator/Hint",
            "text": "Specify a new filter operator to be considered whenever a tiddler is renamed"
        },
        "$:/plugins/flibbles/relink/language/Buttons/NewOperator/Caption": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/NewOperator/Caption",
            "text": "add"
        },
        "$:/plugins/flibbles/relink/language/Buttons/NewParameter/Hint": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/NewParameter/Hint",
            "text": "Specify a new macro parameter to be updated whenever a tiddler is renamed"
        },
        "$:/plugins/flibbles/relink/language/Buttons/NewParameter/Caption": {
            "title": "$:/plugins/flibbles/relink/language/Buttons/NewParameter/Caption",
            "text": "add"
        },
        "$:/plugins/flibbles/relink/language/Error/InvalidAttributeName": {
            "title": "$:/plugins/flibbles/relink/language/Error/InvalidAttributeName",
            "text": "Illegal characters in attribute name \"<$text text=<<attributeName>>/>\". Attributes cannot contain slashes ('/'), closing angle or square brackets ('>' or ']'), quotes or apostrophes ('\"' or \"'\"), equals ('='), or whitespace"
        },
        "$:/plugins/flibbles/relink/language/Error/InvalidElementName": {
            "title": "$:/plugins/flibbles/relink/language/Error/InvalidElementName",
            "text": "Illegal characters in element/widget name \"<$text text=<<elementName>>/>\". Element tags can only contain letters and the characters hyphen (`-`) and dollar sign (`$`)"
        },
        "$:/plugins/flibbles/relink/language/Error/InvalidMacroName": {
            "title": "$:/plugins/flibbles/relink/language/Error/InvalidMacroName",
            "text": "Illegal characters in macro name \"<$text text=<<macroName>>/>\". Macros cannot contain whitespace"
        },
        "$:/plugins/flibbles/relink/language/Error/InvalidParameterName": {
            "title": "$:/plugins/flibbles/relink/language/Error/InvalidParameterName",
            "text": "Illegal characters in parameter name \"<$text text=<<parameterName>>/>\". Parameters can only contain letters, digits, and the characters underscore (`_`) and hyphen (`-`)"
        },
        "$:/plugins/flibbles/relink/language/Error/RelinkFilterOperator": {
            "title": "$:/plugins/flibbles/relink/language/Error/RelinkFilterOperator",
            "text": "Filter Error: Unknown suffix for the 'relink' filter operator"
        },
        "$:/plugins/flibbles/relink/language/Error/ReportFailedRelinks": {
            "title": "$:/plugins/flibbles/relink/language/Error/ReportFailedRelinks",
            "text": "Relink could not update '<<from>>' to '<<to>>' inside the following tiddlers:"
        },
        "$:/plugins/flibbles/relink/language/Error/UnrecognizedType": {
            "title": "$:/plugins/flibbles/relink/language/Error/UnrecognizedType",
            "text": "Relink parse error: Unrecognized field type '<<type>>'"
        },
        "$:/plugins/flibbles/relink/language/Help/Attributes": {
            "title": "$:/plugins/flibbles/relink/language/Help/Attributes",
            "text": "See the <a href={{{[{$:/plugins/flibbles/relink!!demo}addsuffix[#Attributes]]}}}>Attributes documentation page</a> for details."
        },
        "$:/plugins/flibbles/relink/language/Help/Fields": {
            "title": "$:/plugins/flibbles/relink/language/Help/Fields",
            "text": "See the <a href={{{[{$:/plugins/flibbles/relink!!demo}addsuffix[#Fields]]}}}>Fields documentation page</a> for details."
        },
        "$:/plugins/flibbles/relink/language/Help/Macros": {
            "title": "$:/plugins/flibbles/relink/language/Help/Macros",
            "text": "See the <a href={{{[{$:/plugins/flibbles/relink!!demo}addsuffix[#Macros]]}}}>Macros documentation page</a> for details."
        },
        "$:/plugins/flibbles/relink/language/Help/Operators": {
            "title": "$:/plugins/flibbles/relink/language/Help/Operators",
            "text": "See the <a href={{{[{$:/plugins/flibbles/relink!!demo}addsuffix[#Operators]]}}}>Operators documentation page</a> for details."
        },
        "$:/plugins/flibbles/relink/language/TiddlerInfo/References/Empty": {
            "title": "$:/plugins/flibbles/relink/language/TiddlerInfo/References/Empty",
            "text": "No tiddlers contain any fields, links, macros, transclusions, or widgets referencing this one"
        },
        "$:/plugins/flibbles/relink/language/TiddlerInfo/References/Description": {
            "title": "$:/plugins/flibbles/relink/language/TiddlerInfo/References/Description",
            "text": "The following tiddlers contain fields, links, macros, transclusions, or widgets referencing this one:"
        },
        "$:/plugins/flibbles/relink/language/TiddlerInfo/References/Caption": {
            "title": "$:/plugins/flibbles/relink/language/TiddlerInfo/References/Caption",
            "text": "//Relink// References"
        },
        "$:/plugins/flibbles/relink/language/ui/Attributes/Caption": {
            "title": "$:/plugins/flibbles/relink/language/ui/Attributes/Caption",
            "text": "Attributes"
        },
        "$:/plugins/flibbles/relink/language/ui/Fields/Caption": {
            "title": "$:/plugins/flibbles/relink/language/ui/Fields/Caption",
            "text": "Fields"
        },
        "$:/plugins/flibbles/relink/language/ui/Macros/Caption": {
            "title": "$:/plugins/flibbles/relink/language/ui/Macros/Caption",
            "text": "Macros"
        },
        "$:/plugins/flibbles/relink/language/ui/Operators/Caption": {
            "title": "$:/plugins/flibbles/relink/language/ui/Operators/Caption",
            "text": "Operators"
        },
        "$:/plugins/flibbles/relink/license": {
            "title": "$:/plugins/flibbles/relink/license",
            "type": "text/vnd.tiddlywiki",
            "text": "<a href={{$:/plugins/flibbles/relink!!demo}}>Relink Plugin</a> Copyright (c) 2019-<<now YYYY>> Cameron Fischer\n\n[[BSD 3-Clause License|https://raw.githubusercontent.com/flibbles/tw5-relink/master/LICENSE]]\n"
        },
        "$:/config/flibbles/relink/macros/csvtiddlers/filter": {
            "title": "$:/config/flibbles/relink/macros/csvtiddlers/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/macros/datauri/title": {
            "title": "$:/config/flibbles/relink/macros/datauri/title",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/jsontiddler/title": {
            "title": "$:/config/flibbles/relink/macros/jsontiddler/title",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/jsontiddlers/filter": {
            "title": "$:/config/flibbles/relink/macros/jsontiddlers/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/macros/list-links/filter": {
            "title": "$:/config/flibbles/relink/macros/list-links/filter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/macros/list-links-draggable/tiddler": {
            "title": "$:/config/flibbles/relink/macros/list-links-draggable/tiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/list-links-draggable/itemTemplate": {
            "title": "$:/config/flibbles/relink/macros/list-links-draggable/itemTemplate",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/list-tagged-draggable/tag": {
            "title": "$:/config/flibbles/relink/macros/list-tagged-draggable/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/list-tagged-draggable/itemTemplate": {
            "title": "$:/config/flibbles/relink/macros/list-tagged-draggable/itemTemplate",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/tabs/buttonTemplate": {
            "title": "$:/config/flibbles/relink/macros/tabs/buttonTemplate",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/tabs/default": {
            "title": "$:/config/flibbles/relink/macros/tabs/default",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/tabs/tabsList": {
            "title": "$:/config/flibbles/relink/macros/tabs/tabsList",
            "text": "filter"
        },
        "$:/config/flibbles/relink/macros/tabs/template": {
            "title": "$:/config/flibbles/relink/macros/tabs/template",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/tag/tag": {
            "title": "$:/config/flibbles/relink/macros/tag/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/tag-pill/tag": {
            "title": "$:/config/flibbles/relink/macros/tag-pill/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/timeline/subfilter": {
            "title": "$:/config/flibbles/relink/macros/timeline/subfilter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/macros/toc/tag": {
            "title": "$:/config/flibbles/relink/macros/toc/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/toc/itemClassFilter": {
            "title": "$:/config/flibbles/relink/macros/toc/itemClassFilter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/macros/toc-expandable/tag": {
            "title": "$:/config/flibbles/relink/macros/toc-expandable/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/toc-expandable/itemClassFilter": {
            "title": "$:/config/flibbles/relink/macros/toc-expandable/itemClassFilter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/macros/toc-expandable/exclude": {
            "title": "$:/config/flibbles/relink/macros/toc-expandable/exclude",
            "text": "list"
        },
        "$:/config/flibbles/relink/macros/toc-selective-expandable/tag": {
            "title": "$:/config/flibbles/relink/macros/toc-selective-expandable/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/toc-selective-expandable/itemClassFilter": {
            "title": "$:/config/flibbles/relink/macros/toc-selective-expandable/itemClassFilter",
            "text": "filter"
        },
        "$:/config/flibbles/relink/macros/toc-selective-expandable/exclude": {
            "title": "$:/config/flibbles/relink/macros/toc-selective-expandable/exclude",
            "text": "list"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/tag": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/selectedTiddler": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/selectedTiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/unselectedText": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/unselectedText",
            "text": "wikitext"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/missingText": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/missingText",
            "text": "wikitext"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/template": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/template",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/tag": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/selectedTiddler": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/selectedTiddler",
            "text": "title"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/unselectedText": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/unselectedText",
            "text": "wikitext"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/missingText": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/missingText",
            "text": "wikitext"
        },
        "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/template": {
            "title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/template",
            "text": "title"
        },
        "$:/config/flibbles/relink/operators/list": {
            "title": "$:/config/flibbles/relink/operators/list",
            "text": "reference"
        },
        "$:/config/flibbles/relink/operators/tag": {
            "title": "$:/config/flibbles/relink/operators/tag",
            "text": "title"
        },
        "$:/config/flibbles/relink/operators/title": {
            "title": "$:/config/flibbles/relink/operators/title",
            "text": "title"
        },
        "$:/config/flibbles/relink/operators/field:title": {
            "title": "$:/config/flibbles/relink/operators/field:title",
            "text": "title"
        },
        "$:/language/EditTemplate/Title/Impossibles/Prompt": {
            "title": "$:/language/EditTemplate/Title/Impossibles/Prompt",
            "text": "''Warning:'' Not all references in the following tiddlers can be updated by //Relink// due to the complexity of the new title:"
        },
        "$:/language/EditTemplate/Title/References/Prompt": {
            "title": "$:/language/EditTemplate/Title/References/Prompt",
            "text": "The following tiddlers will be updated if relinking:"
        },
        "$:/language/EditTemplate/Title/Relink/Prompt": {
            "title": "$:/language/EditTemplate/Title/Relink/Prompt",
            "text": "Use //Relink// to update ''<$text text=<<fromTitle>>/>'' to ''<$text text=<<toTitle>>/>'' across all other tiddlers"
        },
        "$:/core/ui/EditTemplate/title": {
            "title": "$:/core/ui/EditTemplate/title",
            "tags": "$:/tags/EditTemplate",
            "text": "<$edit-text field=\"draft.title\" class=\"tc-titlebar tc-edit-texteditor\" focus=\"true\" tabindex={{$:/config/EditTabIndex}}/>\n\n<$reveal state=\"!!draft.title\" type=\"nomatch\" text={{!!draft.of}} tag=\"div\">\n\n<$vars pattern=\"\"\"[\\|\\[\\]{}]\"\"\" bad-chars=\"\"\"`| [ ] { }`\"\"\">\n\n<$list filter=\"[all[current]regexp:draft.title<pattern>]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/BadCharacterWarning}}\n\n</div>\n\n</$list>\n\n</$vars>\n\n<$list filter=\"[{!!draft.title}!is[missing]]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/Exists/Prompt}}\n\n</div>\n\n</$list>\n\n<$list filter=\"[{!!draft.of}!is[missing]]\" variable=\"listItem\">\n\n<$vars fromTitle={{!!draft.of}} toTitle={{!!draft.title}}>\n\n<$checkbox tiddler=\"$:/config/RelinkOnRename\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> {{$:/language/EditTemplate/Title/Relink/Prompt}}</$checkbox>\n\n<$tiddler tiddler=<<fromTitle>> >\n\n<$list filter=\"[relink:wouldchange<toTitle>limit[1]]\" variable=\"listItem\">\n\n<$vars stateTiddler=<<qualify \"$:/state/edit/references\">> >\n\n<$set\n\tname=\"prompt\"\n\tfilter=\"[relink:wouldchange<toTitle>relink:impossible<toTitle>]\"\n\tvalue=\"EditTemplate/Title/Impossibles/Prompt\"\n\temptyValue=\"EditTemplate/Title/References/Prompt\" >\n<$reveal type=\"nomatch\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"show\" class=\"tc-btn-invisible\">{{$:/core/images/right-arrow}}\n<$macrocall $name=lingo title=<<prompt>> />\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"hide\" class=\"tc-btn-invisible\">{{$:/core/images/down-arrow}}\n<$macrocall $name=lingo title=<<prompt>> />\n</$button>\n</$reveal>\n</$set>\n\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$list variable=\"listItem\" filter=\"[relink:wouldchange<toTitle>!title[$:/StoryList]sort[title]]\" template=\"$:/plugins/flibbles/relink/ui/ListItemTemplate\">\n</$list>\n</$reveal>\n\n</$vars>\n\n</$list>\n\n</$tiddler>\n\n</$vars>\n\n</$list>\n\n</$reveal>\n"
        },
        "$:/config/flibbles/relink/PluginLibrary": {
            "title": "$:/config/flibbles/relink/PluginLibrary",
            "caption": "//Relink// Library",
            "url": "https://flibbles.github.io/tw5-relink/library/index.html",
            "tags": "$:/tags/PluginLibrary",
            "text": "The //Relink// library contains //Relink// as well as its supplemental plugins. It is maintained by Flibbles. See the [[github page|https://github.com/flibbles/tw5-relink]] for more information.\n"
        },
        "$:/plugins/flibbles/relink/readme": {
            "title": "$:/plugins/flibbles/relink/readme",
            "type": "text/vnd.tiddlywiki",
            "text": "When renaming a tiddler, Relink can update the fields, filters, and widgets\nof all other tiddlers. However, it works through whitelisting.\n\nIt's already configured to update tiddler titles for all core widgets, filters,\nand fields, but the whitelists can be customized for each of this in the\nconfiguration panel.\n\nSee <a href={{$:/plugins/flibbles/relink!!source}}>the tw5-relink website</a> for more details and examples.\n"
        },
        "$:/config/flibbles/relink/settings/default-type": {
            "title": "$:/config/flibbles/relink/settings/default-type",
            "text": "title"
        },
        "$:/plugins/flibbles/relink/ui/ListItemTemplate": {
            "title": "$:/plugins/flibbles/relink/ui/ListItemTemplate",
            "text": "<$set\n\tname=\"classes\"\n\tfilter=\"[<listItem>relink:impossible<toTitle>]\"\n\tvalue=\"tc-menu-list-item tc-relink-impossible\"\n\temptyValue=\"tc-menu-list-item\">\n<div class=<<classes>>>\n<$link to=<<listItem>>><$text text=<<listItem>> /></$link>\n</div>\n</$set>\n"
        },
        "$:/plugins/flibbles/relink/ui/TiddlerInfo/References": {
            "title": "$:/plugins/flibbles/relink/ui/TiddlerInfo/References",
            "caption": "{{$:/plugins/flibbles/relink/language/TiddlerInfo/References/Caption}}",
            "tags": "$:/tags/TiddlerInfo",
            "text": "\\define lingo-base() $:/plugins/flibbles/relink/language/TiddlerInfo/\n\\define filter() [all[current]relink:backreferences[]!title[$:/StoryList]!prefix[$:/temp/]sort[title]]\n<$list filter=\"[subfilter<filter>first[]]\">\n\n<<lingo References/Description>>\n</$list>\n\n<table class=\"tc-relink-references-table\">\n<tbody>\n<$list filter=<<filter>> emptyMessage=<<lingo References/Empty>> variable=\"listItem\" template=\"$:/plugins/flibbles/relink/ui/TiddlerInfo/ReferencesTemplate\" />\n</tbody>\n</table>\n"
        },
        "$:/plugins/flibbles/relink/ui/TiddlerInfo/ReferencesTemplate": {
            "title": "$:/plugins/flibbles/relink/ui/TiddlerInfo/ReferencesTemplate",
            "text": "<tr class=\"tc-relink-references\">\n<td class=\"tc-relink-references-title\">\n<$link to=<<listItem>>/>\n</td>\n<td class=\"tc-relink-references-report\">\n<$list filter=\"[<listItem>relink:report<currentTiddler>]\">\n\n<$text text=<<currentTiddler>> />\n</$list>\n\n</td>\n</tr>\n"
        },
        "$:/plugins/flibbles/relink/ui/components/button-delete": {
            "title": "$:/plugins/flibbles/relink/ui/components/button-delete",
            "text": "\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define prefix() $:/config/flibbles/relink/\n\n<$list filter=\"[all[current]prefix<prefix>]\" >\n<$button class=\"tc-btn-invisible\" tooltip={{$:/plugins/flibbles/relink/language/Buttons/Delete/Hint}}><$list filter=\"[all[current]is[tiddler]]\">\n<$action-deletetiddler $tiddler=<<currentTiddler>> />\n</$list><$list filter=\"[all[current]is[shadow]]\">\n<$action-setfield $tiddler=<<tiddlerName>> text=\"\" />\n</$list>\n{{$:/core/images/delete-button}}\n</$button>\n</$list><$list filter=\"[all[current]!prefix<prefix>]\">\n<$link><$button class=\"tc-btn-invisible\" tooltip={{$:/plugins/flibbles/relink/language/Buttons/LinkToInline/Hint}}>{{$:/core/images/link}}</$button></$link>\n</$list>\n"
        },
        "$:/plugins/flibbles/relink/ui/components/select-fieldtype": {
            "title": "$:/plugins/flibbles/relink/ui/components/select-fieldtype",
            "text": "\\define prefix() $:/config/flibbles/relink/\n\n<$vars type={{{ [<signature>relink:type[]] }}} >\n<$list filter=\"[all[current]prefix<prefix>]\" >\n<$select tiddler=<<currentTiddler>> >\n<$list variable=\"option\" filter=\"[relink:types[]]\">\n<option><$text text=<<option>> /></option>\n</$list>\n</$select>\n</$list><$list filter=\"[all[current]!prefix<prefix>]\">\n<$text text=<<type>> />\n</$list>\n</$vars>\n"
        },
        "$:/plugins/flibbles/relink/ui/components/tables": {
            "title": "$:/plugins/flibbles/relink/ui/components/tables",
            "text": "\\define .make-table(title, plugin, default-table-state:yes)\n\n<$list variable=\"render\" filter=\"[relink:signatures<__plugin__>prefix<__category__>first[]]\">\n<$set name=\"table-state\" value=<<qualify \"\"\"$:/state/flibbles/relink/tables/$title$\"\"\">>>\n<tr><th class=\"tc-relink-header-plugin\" colspan=<<column-count>> >\n<$reveal type=\"nomatch\" state=<<table-state>> text=\"yes\" default=\"\"\"$default-table-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<table-state>> setTo=\"yes\">\n{{$:/core/images/right-arrow}} ''$title$''\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<table-state>> text=\"yes\" default=\"\"\"$default-table-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<table-state>> setTo=\"no\">\n{{$:/core/images/down-arrow}} ''$title$''\n</$button>\n</$reveal>\n</th></tr>\n<$list\n\tvariable=\"signature\"\n\tfilter=\"[relink:signatures<__plugin__>prefix<__category__>sort[]]\">\n<$vars key={{{ [<signature>removeprefix<__category__>removeprefix[/]] }}} >\n<$tiddler tiddler={{{[<signature>relink:source[]]}}} >\n<$reveal tag=\"tr\" type=\"match\" state=<<table-state>> text=\"yes\" default=\"\"\"$default-table-state$\"\"\">\n<$macrocall $name=<<__list-row-macro__>> signature=<<signature>> />\n<td class=\"tc-relink-column-type\">{{||$:/plugins/flibbles/relink/ui/components/select-fieldtype}}</td>\n<td class=\"tc-relink-column-delete\">{{||$:/plugins/flibbles/relink/ui/components/button-delete}}</td>\n</$reveal>\n</$tiddler>\n</$vars>\n</$list>\n</$set>\n</$list>\n\\end\n\n\\define tables(category, list-row-macro, header-list)\n<$vars\n\tcolumn-count={{{[enlist<__header-list__>] [[DeleteColumn]] +[count[]]}}}>\n\n<table class=\"tc-relink-whitelist\"><tbody>\n<tr>\n<$list variable=\"header\" filter=\"[enlist<__header-list__>butlast[]]\"><th><<header>></th></$list>\n<!-- We have the last column extend into the delete/link column, which is unlabeled. -->\n<th colspan=2><$text text={{{ [enlist<__header-list__>last[]] }}} /></th>\n</tr>\n\n<<.make-table Custom \"\" yes>>\n\n<$list\n\tfilter=\"[plugin-type[plugin]![$:/core]![$:/plugins/flibbles/relink]]\">\n<$set name=\"subtitle\" value={{!!description}} emptyValue={{!!title}} >\n<$macrocall $name=\".make-table\" title=<<subtitle>> plugin=<<currentTiddler>> />\n</$set>\n</$list>\n\n<<.make-table Core \"$:/plugins/flibbles/relink\">>\n\n</tbody></table>\n</$vars>\n\\end\n"
        },
        "$:/plugins/flibbles/relink/ui/configuration/Attributes": {
            "title": "$:/plugins/flibbles/relink/ui/configuration/Attributes",
            "caption": "{{$:/plugins/flibbles/relink/language/ui/Attributes/Caption}}",
            "tags": "$:/tags/flibbles/relink/Configuration",
            "text": "\\import $:/plugins/flibbles/relink/ui/components/tables\n\\define prefix-attr() $:/config/flibbles/relink/attributes/\n\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define element-name-tiddler() $:/state/flibbles/relink/element-name\n\\define attribute-name-tiddler() $:/state/flibbles/relink/attribute-name\n\n\\define row()\n<$set name=\"element\"\n      filter=\"[<key>splitbefore[/]removesuffix[/]]\">\n<$set name=\"attribute\"\n      filter=\"[<key>removeprefix<element>removeprefix[/]]\">\n<td><$text text=<<element>> /></td>\n<td><$text text=<<attribute>> /></td>\n</$set></$set>\n\\end\n\\define body()\n\n{{$:/plugins/flibbles/relink/language/Help/Attributes}}\n\n<em class=\"tc-edit\">Add a new attribute:</em>\n<$edit-text\n\ttiddler=<<element-name-tiddler>>\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"widget/element\" />\n<$edit-text\n\ttiddler=<<attribute-name-tiddler>>\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"attribute\" />\n<$reveal type=\"nomatch\" text=\"\" state=<<element-name-tiddler>> >\n<$reveal type=\"nomatch\" text=\"\" state=<<attribute-name-tiddler>> >\n<$relinkmangler>\n<$button\n\ttooltip={{$(lingo-base)$NewAttribute/Hint}}\n\taria-label={{$(lingo-base)$NewAttribute/Caption}}>\n<$action-sendmessage\n\t$message=\"relink-add-attribute\"\n\telement={{$(element-name-tiddler)$}}\n\tattribute={{$(attribute-name-tiddler)$}} />\n<$action-deletetiddler $tiddler=<<attribute-name-tiddler>> />\n<$action-deletetiddler $tiddler=<<element-name-tiddler>> />\n<$text text={{$(lingo-base)$NewAttribute/Caption}}/>\n</$button>\n</$relinkmangler>\n</$reveal>\n<$reveal type=\"match\" text=\"\" state=<<attribute-name-tiddler>> >\n<$button>\n<$text text={{$(lingo-base)$NewAttribute/Caption}}/>\n</$button>\n</$reveal>\n</$reveal>\n<$reveal type=\"match\" text=\"\" state=<<element-name-tiddler>> >\n<$button>\n<$text text={{$(lingo-base)$NewAttribute/Caption}}/>\n</$button>\n</$reveal>\n\n<$macrocall\n\t$name=tables\n\tcategory=\"attributes\"\n\theader-list=\"[[Widget/HTML Element]] Attribute Type\"\n\tlist-row-macro=\"row\" />\n\\end\n\n<<body>>\n"
        },
        "$:/plugins/flibbles/relink/ui/configuration/Fields": {
            "title": "$:/plugins/flibbles/relink/ui/configuration/Fields",
            "caption": "{{$:/plugins/flibbles/relink/language/ui/Fields/Caption}}",
            "tags": "$:/tags/flibbles/relink/Configuration",
            "text": "\\import $:/plugins/flibbles/relink/ui/components/tables\n\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define field-name-tiddler() $:/state/flibbles/relink/field-name\n\n\\define row()\n<td><$text text=<<key>> /></td>\n\\end\n\\define body()\n\n{{$:/plugins/flibbles/relink/language/Help/Fields}}\n\n<em class=\"tc-edit\">Add a new field:</em>\n<$edit-text\n\ttiddler=<<field-name-tiddler>>\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"field name\" />\n<$reveal type=\"nomatch\" text=\"\" state=<<field-name-tiddler>> >\n<$relinkmangler>\n<$button\n\ttooltip={{$(lingo-base)$NewField/Hint}}\n\taria-label={{$(lingo-base)$NewField/Caption}}>\n<$action-sendmessage\n\t$message=\"relink-add-field\"\n\tfield={{$(field-name-tiddler)$}} />\n<$action-deletetiddler $tiddler=<<field-name-tiddler>> />\n<$text text={{$(lingo-base)$NewField/Caption}}/>\n</$button>\n</$relinkmangler>\n</$reveal>\n<$reveal type=\"match\" text=\"\" state=<<field-name-tiddler>> >\n<$button>\n<$text text={{$(lingo-base)$NewField/Caption}}/>\n</$button>\n</$reveal>\n\n\n<$macrocall\n\t$name=tables\n\tcategory=\"fields\"\n\theader-list=\"[[Field Name]] [[Field Type]]\"\n\tlist-row-macro=\"row\" />\n\\end\n\n<<body>>\n"
        },
        "$:/plugins/flibbles/relink/ui/configuration/Macros": {
            "title": "$:/plugins/flibbles/relink/ui/configuration/Macros",
            "caption": "{{$:/plugins/flibbles/relink/language/ui/Macros/Caption}}",
            "tags": "$:/tags/flibbles/relink/Configuration",
            "text": "\\import $:/plugins/flibbles/relink/ui/components/tables\n\\define prefix-macro() $:/config/flibbles/relink/macros/\n\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define macro-name-tiddler() $:/state/flibbles/relink/macro-name\n\\define parameter-name-tiddler() $:/state/flibbles/relink/parameter-name\n\n\\define row()\n<$set name=\"parameter\"\n      filter=\"[<key>relink:splitafter[/]]\">\n<$set name=\"macro\"\n      filter=\"[<key>removesuffix<parameter>removesuffix[/]]\">\n<td><$text text=<<macro>> /></td>\n<td><$text text=<<parameter>> /></td>\n</$set></$set>\n\\end\n\\define body()\n\n{{$:/plugins/flibbles/relink/language/Help/Macros}}\n\n<em class=\"tc-edit\">Add a new macro parameter:</em>\n<$edit-text\n\ttiddler=<<macro-name-tiddler>>\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"macro\" />\n<$edit-text\n\ttiddler=<<parameter-name-tiddler>>\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"parameter\" />\n<$reveal type=\"nomatch\" text=\"\" state=<<macro-name-tiddler>> >\n<$reveal type=\"nomatch\" text=\"\" state=<<parameter-name-tiddler>> >\n<$relinkmangler>\n<$button\n\ttooltip={{$(lingo-base)$NewParameter/Hint}}\n\taria-label={{$(lingo-base)$NewParameter/Caption}}>\n<$action-sendmessage\n\t$message=\"relink-add-parameter\"\n\tmacro={{$(macro-name-tiddler)$}}\n\tparameter={{$(parameter-name-tiddler)$}} />\n<$action-deletetiddler $tiddler=<<parameter-name-tiddler>> />\n<$action-deletetiddler $tiddler=<<macro-name-tiddler>> />\n<$text text={{$(lingo-base)$NewParameter/Caption}}/>\n</$button>\n</$relinkmangler>\n</$reveal>\n<$reveal type=\"match\" text=\"\" state=<<parameter-name-tiddler>> >\n<$button>\n<$text text={{$(lingo-base)$NewParameter/Caption}}/>\n</$button>\n</$reveal>\n</$reveal>\n<$reveal type=\"match\" text=\"\" state=<<macro-name-tiddler>> >\n<$button>\n<$text text={{$(lingo-base)$NewParameter/Caption}}/>\n</$button>\n</$reveal>\n\n\n<$macrocall\n\t$name=tables\n\tcategory=\"macros\"\n\theader-list=\"Macro Parameter Type\"\n\tlist-row-macro=\"row\" />\n\\end\n\n<<body>>\n"
        },
        "$:/plugins/flibbles/relink/ui/configuration/Operators": {
            "title": "$:/plugins/flibbles/relink/ui/configuration/Operators",
            "caption": "{{$:/plugins/flibbles/relink/language/ui/Operators/Caption}}",
            "tags": "$:/tags/flibbles/relink/Configuration",
            "text": "\\import $:/plugins/flibbles/relink/ui/components/tables\n\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define operator-name-tiddler() $:/state/flibbles/relink/operator-name\n\n\\define row()\n<td><$text text=<<key>> /></td>\n\\end\n\\define body()\n\n{{$:/plugins/flibbles/relink/language/Help/Operators}}\n\n<em class=\"tc-edit\">Add a new filter operator:</em>\n<$edit-text\n\ttiddler=<<operator-name-tiddler>>\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"operator name\" />\n<$reveal type=\"nomatch\" text=\"\" state=<<operator-name-tiddler>>>\n<$relinkmangler>\n<$button\n\ttooltip={{$(lingo-base)$NewOperator/Hint}}\n\taria-label={{$(lingo-base)$NewOperator/Caption}}>\n<$action-sendmessage\n\t$message=\"relink-add-operator\"\n\toperator={{$(operator-name-tiddler)$}} />\n<$action-deletetiddler $tiddler=<<operator-name-tiddler>> />\n<$text text={{$(lingo-base)$NewOperator/Caption}}/>\n</$button>\n</$relinkmangler>\n</$reveal>\n<$reveal type=\"match\" text=\"\" state=<<operator-name-tiddler>>>\n<$button>\n<$text text={{$(lingo-base)$NewOperator/Caption}}/>\n</$button>\n</$reveal>\n\n<$macrocall\n\t$name=tables\n\tcategory=\"operators\"\n\theader-list=\"[[Filter Operator]] [[Operand Type]]\"\n\tlist-row-macro=\"row\" />\n\\end\n\n<<body>>\n"
        },
        "$:/plugins/flibbles/relink/ui/stylesheet.css": {
            "title": "$:/plugins/flibbles/relink/ui/stylesheet.css",
            "text": ".tc-relink-references {\n}\n\n.tc-relink-references-table {\n\twidth: 100%;\n\tborder: none;\n}\n\n.tc-relink-references-table td {\n\tborder-left: none;\n}\n\n.tc-relink-references-table tr:first-child td {\n\tborder-top: none;\n}\n\n.tc-relink-references-title {\n\ttext-align: left;\n\tvertical-align: top;\n}\n\n.tc-relink-references-occurrence {\n\tfont-style: italic;\n\ttext-align: left;\n\tfont-weight: 200;\n\tpadding-left: 25px;\n\tvertical-align: top;\n}\n\n.tc-relink-header-plugin {\n\ttext-align: left;\n}\n\n.tc-relink-header-plugin button {\n\twidth: 100%\n}\n\n.tc-relink-column-type {\n\twidth: 8em;\n}\n\n.tc-relink-column-type select {\n\twidth: 100%;\n}\n\n.tc-relink-column-delete {\n\tborder-left: none;\n\ttext-align: left;\n}\n\n.tc-relink-column-delete button {\n\tpadding-left: 1em;\n}\n\n.tc-relink-impossible a.tc-tiddlylink {\n\tcolor: red;\n}\n",
            "tags": "$:/tags/Stylesheet",
            "type": "text/css"
        }
    }
}
{
    "tiddlers": {
        "$:/plugins/joerenes/TW5-TeXZilla/TeXZilla-min.js": {
            "type": "application/javascript",
            "title": "$:/plugins/joerenes/TW5-TeXZilla/TeXZilla-min.js",
            "module-type": "library",
            "text": "(function(document) {\nvar TeXZilla=function(){function Xa(b){return b.replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}function cb(b){b=b.trim();var a=/(-?[0-9]*(?:[0-9]\\.?|\\.[0-9])[0-9]*)(e[mx]|in|cm|mm|p[xtc]|%)?/.exec(b);if(a)return a[1]=parseFloat(a[1]),a[2]||(a[1]*=100,a[2]=\"%\"),{l:a[1],u:a[2]};b=\"negativeveryverythinmathspace negativeverythinmathspace negativemediummathspace negativethickmathspace negativeverythickmathspace negativeveryverythickmathspace  veryverythinmathspace verythinmathspace thinmathspace mediummathspace thickmathspace verythickmathspace veryverythickmathspace\".split(\" \").indexOf(b);\nreturn{l:(-1===b?0:b-6)/18,u:\"em\"}}function e(b,a,c){var e=\"<\"+b;c&&(e+=\" \"+c);return e+(\">\"+a+\"</\"+b+\">\")}function Za(b,a,c){var e=\"<mo\";a&&(e+=' lspace=\"'+a+'\"');c&&(e+=' rspace=\"'+c+'\"');return e+=\">\"+Xa(b)+\"</mo>\"}function nb(b,a,c,e){return b?c?e?\"<munderover>\"+a+c+e+\"</munderover>\":\"<munder>\"+a+c+\"</munder>\":\"<mover>\"+a+e+\"</mover>\":c?e?\"<msubsup>\"+a+c+e+\"</msubsup>\":\"<msub>\"+a+c+\"</msub>\":\"<msup>\"+a+e+\"</msup>\"}function lb(b,a,c){var e;if(!a){if(1==b.length)return b[0];a=\"mrow\"}e=\"<\"+a;c&&\n(e+=\" \"+c);return e+=\">\"+b.join(\"\")+\"</\"+a+\">\"}function Ab(b,a,c){var e='<math xmlns=\"'+Hb+'\"';a&&(e+=' display=\"block\"');e+=\"><semantics>\"+lb(b);e=e+'<annotation encoding=\"TeX\">'+Xa(c);return e+=\"</annotation></semantics></math>\"}function Lb(b){if(!b||b.namespaceURI!==Hb)return null;if(\"semantics\"===b.tagName)for(b=b.firstElementChild;b;b=b.nextElementSibling){if(b.namespaceURI===Hb&&\"annotation\"===b.localName&&-1!==jc.indexOf(b.getAttribute(\"encoding\")))return b.textContent}else if(1===b.childElementCount)return Lb(b.firstElementChild);\nreturn null}function kc(b){for(var a=\"\",c,e,f=0;f<b.length;f++)c=b.charCodeAt(f),128>c?a+=b.charAt(f):55296<=c&&56319>=c?(f++,e=b.charCodeAt(f),a+=\"&#x\"+(1024*(c-55296)+e-56320+65536).toString(16)+\";\"):a+=\"&#x\"+c.toString(16)+\";\";return a}function Ib(){this.yy={}}var c=function(b,a,c,e){c=c||{};for(e=b.length;e--;c[b[e]]=a);return c},Mb=[1,4],Nb=[1,5],Ob=[1,6],Pb=[1,7],Qb=[1,8],wb=[68,191,193,195,197,199],q=[1,26],u=[1,119],w=[1,47],y=[1,43],h=[1,27],p=[1,28],n=[1,29],z=[1,30],g=[1,31],v=[1,32],m=\n[1,33],k=[1,34],r=[1,36],t=[1,37],l=[1,38],x=[1,39],A=[1,40],B=[1,41],C=[1,42],D=[1,44],E=[1,45],F=[1,46],G=[1,48],H=[1,49],I=[1,50],J=[1,51],K=[1,52],L=[1,53],M=[1,54],N=[1,55],O=[1,56],P=[1,57],Q=[1,58],R=[1,59],S=[1,60],T=[1,61],U=[1,62],V=[1,63],W=[1,64],X=[1,65],Y=[1,66],Z=[1,67],aa=[1,68],ba=[1,69],ca=[1,70],da=[1,71],ea=[1,72],fa=[1,73],ga=[1,74],ha=[1,75],ia=[1,76],ja=[1,77],ka=[1,78],la=[1,79],ma=[1,80],na=[1,81],oa=[1,82],pa=[1,83],qa=[1,84],ra=[1,85],sa=[1,86],ta=[1,87],ua=[1,88],va=[1,\n89],wa=[1,90],xa=[1,91],ya=[1,92],za=[1,93],Aa=[1,94],Ba=[1,95],Ca=[1,96],Da=[1,97],Ea=[1,98],Fa=[1,99],Ga=[1,100],Ha=[1,101],Ia=[1,102],bb=[1,23],Ja=[1,103],Ka=[1,104],La=[1,105],Ma=[1,106],Na=[1,107],Oa=[1,108],Pa=[1,109],Qa=[1,110],Ra=[1,111],Sa=[1,112],Ta=[1,113],Ua=[1,114],Va=[1,115],Wa=[1,116],$a=[1,117],ab=[1,118],db=[1,15],eb=[1,16],fb=[1,17],gb=[1,18],hb=[1,19],ib=[1,20],jb=[1,21],Rb=[6,10,53,64,65,66,140,142,144,146,148,150,152,154,156,158,160,185,188,194,196,198,200],xb=[8,49,50,51,56,\n57,58,59,60,61,62,63,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,135,137,138,141,143,145,147,149,151,153,155,157,159,161,162,169,170,175,176,177,178,179,180,181],kb=[1,129],rb=[6,8,10,49,50,51,53,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,\n98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,135,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,169,170,185,188,194,196,198,200],Ya=[1,132],f=[6,8,10,49,50,51,53,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,\n116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,134,135,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,165,166,167,169,170,185,188,194,196,198,200],Jb=[1,156],ob=[2,193],pb=[1,212],sb=[1,209],yb=[6,8,10,49,50,51,53,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,\n121,122,123,124,125,126,127,128,129,130,131,132,135,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,165,166,169,170,185,188,194,196,198,200],Sb=[1,236],ub=[1,238],vb=[1,239],Eb=[1,254],Tb=[4,8],Ub=[1,270],Vb=[8,49,50,51,56,57,58,59,60,61,62,63,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,\n128,129,130,131,132,134,135,137,138,141,143,145,147,149,151,153,155,157,159,161,162],tb=[1,281],Fb=[10,140,142,144,146,148,150,152,154,156,158,160,188],Wb=[1,283],Bb=[10,140,142,144,146,148,150,152,154,156,158,160,185,188],Xb=[160,185,188],Kb=[10,185,188],Cb=[1,338],Db=[1,339],Yb=[1,347],Zb=[1,348],$b=[4,8,49,50,51,56,57,58,59,60,61,62,63,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,\n116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,135,137,138,141,143,145,147,149,151,153,155,157,159,161,162],Gb=[10,21,23],zb=[10,21,23,25,27],ac=[1,394],bc=[1,395],cc=[1,396],dc=[1,397],ec=[1,398],fc=[1,399],gc=[1,400],hc=[1,401],ic=[10,19,21,23,25,27,29,31,33,35,37,39,41],mb=[10,19,21,23,29,31,33,35,37,39,41],qb={trace:function(){},yy:{},symbols_:{error:2,textOptArg:3,\"[\":4,TEXTOPTARG:5,\"]\":6,textArg:7,\"{\":8,TEXTARG:9,\"}\":10,lengthOptArg:11,lengthArg:12,attrOptArg:13,attrArg:14,\ntokenContent:15,arrayAlign:16,columnAlign:17,collayout:18,COLLAYOUT:19,colalign:20,COLALIGN:21,rowalign:22,ROWALIGN:23,rowspan:24,ROWSPAN:25,colspan:26,COLSPAN:27,align:28,ALIGN:29,eqrows:30,EQROWS:31,eqcols:32,EQCOLS:33,rowlines:34,ROWLINES:35,collines:36,COLLINES:37,frame:38,FRAME:39,padding:40,PADDING:41,cellopt:42,celloptList:43,rowopt:44,arrayopt:45,arrayoptList:46,rowoptList:47,left:48,LEFT:49,OPFS:50,\".\":51,right:52,RIGHT:53,closedTerm:54,styledExpression:55,BIG:56,BBIG:57,BIGG:58,BBIGG:59,\nBIGL:60,BBIGL:61,BIGGL:62,BBIGGL:63,TEXATOP:64,TEXOVER:65,TEXCHOOSE:66,NUM:67,TEXT:68,A:69,F:70,MI:71,MN:72,MO:73,OP:74,OPS:75,OPAS:76,MS:77,MTEXT:78,HIGH_SURROGATE:79,LOW_SURROGATE:80,BMP_CHARACTER:81,OPERATORNAME:82,MATHOP:83,MATHBIN:84,MATHREL:85,FRAC:86,ROOT:87,SQRT:88,UNDERSET:89,OVERSET:90,UNDEROVERSET:91,XARROW:92,MATHRLAP:93,MATHLLAP:94,MATHCLAP:95,PHANTOM:96,TFRAC:97,BINOM:98,TBINOM:99,PMOD:100,UNDERBRACE:101,UNDERLINE:102,OVERBRACE:103,ACCENT:104,ACCENTNS:105,BOXED:106,SLASH:107,QUAD:108,\nQQUAD:109,NEGSPACE:110,NEGMEDSPACE:111,NEGTHICKSPACE:112,THINSPACE:113,MEDSPACE:114,THICKSPACE:115,SPACE:116,MATHRAISEBOX:117,MATHBB:118,MATHBF:119,MATHBIT:120,MATHSCR:121,MATHBSCR:122,MATHSF:123,MATHFRAK:124,MATHIT:125,MATHTT:126,MATHRM:127,HREF:128,STATUSLINE:129,TOOLTIP:130,TOGGLE:131,BTOGGLE:132,closedTermList:133,ETOGGLE:134,TENSOR:135,subsupList:136,MULTI:137,BMATRIX:138,tableRowList:139,EMATRIX:140,BGATHERED:141,EGATHERED:142,BPMATRIX:143,EPMATRIX:144,BBMATRIX:145,EBMATRIX:146,BVMATRIX:147,\nEVMATRIX:148,BBBMATRIX:149,EBBMATRIX:150,BVVMATRIX:151,EVVMATRIX:152,BSMALLMATRIX:153,ESMALLMATRIX:154,BCASES:155,ECASES:156,BALIGNED:157,EALIGNED:158,BARRAY:159,EARRAY:160,SUBSTACK:161,ARRAY:162,ARRAYOPTS:163,compoundTerm:164,_:165,\"^\":166,OPP:167,opm:168,OPM:169,FM:170,compoundTermList:171,subsupTermScript:172,subsupTerm:173,textstyle:174,DISPLAYSTYLE:175,TEXTSTYLE:176,TEXTSIZE:177,SCRIPTSIZE:178,SCRIPTSCRIPTSIZE:179,COLOR:180,BGCOLOR:181,tableCell:182,CELLOPTS:183,tableCellList:184,COLSEP:185,\ntableRow:186,ROWOPTS:187,ROWSEP:188,document:189,documentItemList:190,EOF:191,documentItem:192,STARTMATH0:193,ENDMATH0:194,STARTMATH1:195,ENDMATH1:196,STARTMATH2:197,ENDMATH2:198,STARTMATH3:199,ENDMATH3:200,$accept:0,$end:1},terminals_:{2:\"error\",4:\"[\",5:\"TEXTOPTARG\",6:\"]\",8:\"{\",9:\"TEXTARG\",10:\"}\",19:\"COLLAYOUT\",21:\"COLALIGN\",23:\"ROWALIGN\",25:\"ROWSPAN\",27:\"COLSPAN\",29:\"ALIGN\",31:\"EQROWS\",33:\"EQCOLS\",35:\"ROWLINES\",37:\"COLLINES\",39:\"FRAME\",41:\"PADDING\",49:\"LEFT\",50:\"OPFS\",51:\".\",53:\"RIGHT\",56:\"BIG\",\n57:\"BBIG\",58:\"BIGG\",59:\"BBIGG\",60:\"BIGL\",61:\"BBIGL\",62:\"BIGGL\",63:\"BBIGGL\",64:\"TEXATOP\",65:\"TEXOVER\",66:\"TEXCHOOSE\",67:\"NUM\",68:\"TEXT\",69:\"A\",70:\"F\",71:\"MI\",72:\"MN\",73:\"MO\",74:\"OP\",75:\"OPS\",76:\"OPAS\",77:\"MS\",78:\"MTEXT\",79:\"HIGH_SURROGATE\",80:\"LOW_SURROGATE\",81:\"BMP_CHARACTER\",82:\"OPERATORNAME\",83:\"MATHOP\",84:\"MATHBIN\",85:\"MATHREL\",86:\"FRAC\",87:\"ROOT\",88:\"SQRT\",89:\"UNDERSET\",90:\"OVERSET\",91:\"UNDEROVERSET\",92:\"XARROW\",93:\"MATHRLAP\",94:\"MATHLLAP\",95:\"MATHCLAP\",96:\"PHANTOM\",97:\"TFRAC\",98:\"BINOM\",99:\"TBINOM\",\n100:\"PMOD\",101:\"UNDERBRACE\",102:\"UNDERLINE\",103:\"OVERBRACE\",104:\"ACCENT\",105:\"ACCENTNS\",106:\"BOXED\",107:\"SLASH\",108:\"QUAD\",109:\"QQUAD\",110:\"NEGSPACE\",111:\"NEGMEDSPACE\",112:\"NEGTHICKSPACE\",113:\"THINSPACE\",114:\"MEDSPACE\",115:\"THICKSPACE\",116:\"SPACE\",117:\"MATHRAISEBOX\",118:\"MATHBB\",119:\"MATHBF\",120:\"MATHBIT\",121:\"MATHSCR\",122:\"MATHBSCR\",123:\"MATHSF\",124:\"MATHFRAK\",125:\"MATHIT\",126:\"MATHTT\",127:\"MATHRM\",128:\"HREF\",129:\"STATUSLINE\",130:\"TOOLTIP\",131:\"TOGGLE\",132:\"BTOGGLE\",134:\"ETOGGLE\",135:\"TENSOR\",137:\"MULTI\",\n138:\"BMATRIX\",140:\"EMATRIX\",141:\"BGATHERED\",142:\"EGATHERED\",143:\"BPMATRIX\",144:\"EPMATRIX\",145:\"BBMATRIX\",146:\"EBMATRIX\",147:\"BVMATRIX\",148:\"EVMATRIX\",149:\"BBBMATRIX\",150:\"EBBMATRIX\",151:\"BVVMATRIX\",152:\"EVVMATRIX\",153:\"BSMALLMATRIX\",154:\"ESMALLMATRIX\",155:\"BCASES\",156:\"ECASES\",157:\"BALIGNED\",158:\"EALIGNED\",159:\"BARRAY\",160:\"EARRAY\",161:\"SUBSTACK\",162:\"ARRAY\",163:\"ARRAYOPTS\",165:\"_\",166:\"^\",167:\"OPP\",169:\"OPM\",170:\"FM\",175:\"DISPLAYSTYLE\",176:\"TEXTSTYLE\",177:\"TEXTSIZE\",178:\"SCRIPTSIZE\",179:\"SCRIPTSCRIPTSIZE\",\n180:\"COLOR\",181:\"BGCOLOR\",183:\"CELLOPTS\",185:\"COLSEP\",187:\"ROWOPTS\",188:\"ROWSEP\",191:\"EOF\",193:\"STARTMATH0\",194:\"ENDMATH0\",195:\"STARTMATH1\",196:\"ENDMATH1\",197:\"STARTMATH2\",198:\"ENDMATH2\",199:\"STARTMATH3\",200:\"ENDMATH3\"},productions_:[0,[3,3],[7,3],[11,3],[12,3],[13,1],[14,1],[15,1],[16,1],[17,1],[18,2],[20,2],[22,2],[24,2],[26,2],[28,2],[30,2],[32,2],[34,2],[36,2],[38,2],[40,2],[42,1],[42,1],[42,1],[42,1],[43,1],[43,2],[44,1],[44,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,\n1],[46,1],[46,2],[47,1],[47,2],[48,2],[48,2],[52,2],[52,2],[54,2],[54,3],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,3],[54,5],[54,5],[54,5],[54,5],[54,5],[54,5],[54,1],[54,1],[54,1],[54,1],[54,2],[54,2],[54,2],[54,1],[54,1],[54,1],[54,1],[54,1],[54,2],[54,4],[54,2],[54,2],[54,1],[54,2],[54,2],[54,2],[54,2],[54,3],[54,3],[54,2],[54,5],[54,3],[54,3],[54,4],[54,5],[54,2],[54,2],[54,2],[54,2],[54,2],[54,3],[54,3],[54,3],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,1],[54,\n1],[54,1],[54,1],[54,1],[54,1],[54,1],[54,1],[54,4],[54,5],[54,4],[54,3],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,2],[54,3],[54,3],[54,3],[54,3],[54,3],[54,5],[54,8],[54,7],[54,7],[54,3],[54,3],[54,3],[54,3],[54,3],[54,3],[54,3],[54,3],[54,3],[54,3],[54,5],[54,4],[54,4],[54,4],[54,8],[133,1],[133,2],[164,3],[164,5],[164,4],[164,5],[164,4],[164,3],[164,3],[164,2],[164,1],[164,5],[164,5],[164,3],[164,3],[164,1],[168,1],[168,1],[171,1],[171,2],[172,1],[172,1],[173,4],[173,2],\n[173,2],[173,3],[136,1],[136,2],[174,1],[174,1],[174,1],[174,1],[174,1],[174,2],[174,2],[55,2],[55,1],[182,0],[182,5],[182,1],[184,1],[184,3],[186,5],[186,1],[139,1],[139,3],[189,2],[190,1],[190,2],[192,1],[192,2],[192,3],[192,2],[192,3],[192,3],[192,3]],performAction:function(b,a,c,f,q,d,u){b=d.length-1;switch(q){case 1:this.$=d[b-1].replace(/\\\\[\\\\\\]]/g,function(a){return a.slice(1)});this.$=Xa(this.$);break;case 2:this.$=d[b-1].replace(/\\\\[\\\\\\}]/g,function(a){return a.slice(1)});this.$=Xa(this.$);\nbreak;case 3:case 4:this.$=cb(d[b-1]);break;case 5:case 6:this.$='\"'+d[b].replace(/\"/g,\"&#x22;\")+'\"';break;case 7:this.$=d[b].replace(/\\s+/g,\" \").replace(/^ | $/g,\"\\u00a0\");break;case 8:d[b]=d[b].trim();if(\"t\"===d[b])this.$=\"axis 1\";else if(\"c\"===d[b])this.$=\"center\";else if(\"b\"===d[b])this.$=\"axis -1\";else throw\"Unknown array alignment\";break;case 9:this.$=\"\";d[b]=d[b].replace(/\\s+/g,\"\");for(f=0;f<d[b].length;f++)\"c\"===d[b][f]?this.$+=\" center\":\"l\"===d[b][f]?this.$+=\" left\":\"r\"===d[b][f]&&(this.$+=\n\" right\");if(this.$.length)this.$=this.$.slice(1);else throw\"Invalid column alignments\";break;case 10:case 11:this.$=\"columnalign=\"+d[b];break;case 12:this.$=\"rowalign=\"+d[b];break;case 13:this.$=\"rowspan=\"+d[b];break;case 14:this.$=\"colspan=\"+d[b];break;case 15:this.$=\"align=\"+d[b];break;case 16:this.$=\"equalrows=\"+d[b];break;case 17:this.$=\"equalcolumns=\"+d[b];break;case 18:this.$=\"rowlines=\"+d[b];break;case 19:this.$=\"columnlines=\"+d[b];break;case 20:this.$=\"frame=\"+d[b];break;case 21:this.$=\"rowspacing=\"+\nd[b]+\" columnspacing=\"+d[b];break;case 22:case 23:case 24:case 25:case 26:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 42:case 166:case 171:case 176:case 177:case 182:case 192:case 196:case 200:case 203:this.$=d[b];break;case 27:case 41:case 43:this.$=d[b-1]+\" \"+d[b];break;case 44:case 46:this.$=Za(d[b]);break;case 45:case 47:this.$=\"\";break;case 48:this.$=\"<mrow/>\";break;case 49:this.$=lb(d[b-1]);break;case 50:case 54:this.$=e(\"mo\",\nd[b],'maxsize=\"1.2em\" minsize=\"1.2em\"');break;case 51:case 55:this.$=e(\"mo\",d[b],'maxsize=\"1.8em\" minsize=\"1.8em\"');break;case 52:case 56:this.$=e(\"mo\",d[b],'maxsize=\"2.4em\" minsize=\"2.4em\"');break;case 53:case 57:this.$=e(\"mo\",d[b],'maxsize=\"3em\" minsize=\"3em\"');break;case 58:this.$=e(\"mrow\",d[b-2]+lb(d[b-1])+d[b]);break;case 59:this.$=e(\"mfrac\",lb(d[b-3])+lb(d[b-1]),'linethickness=\"0\"');break;case 60:this.$=e(\"mfrac\",lb(d[b-3])+lb(d[b-1]),'linethickness=\"0\"');this.$=e(\"mrow\",d[b-4]+this.$+d[b-2]);\nbreak;case 61:this.$=e(\"mfrac\",lb(d[b-3])+lb(d[b-1]));break;case 62:this.$=e(\"mfrac\",lb(d[b-3])+lb(d[b-1]));this.$=e(\"mrow\",d[b-4]+this.$+d[b-2]);break;case 63:this.$=e(\"mfrac\",lb(d[b-3])+lb(d[b-1]),'linethickness=\"0\"');this.$=e(\"mrow\",Za(\"(\")+this.$+Za(\")\"));break;case 64:this.$=e(\"mfrac\",lb(d[b-3])+lb(d[b-1]),'linethickness=\"0\"');this.$=e(\"mrow\",d[b-4]+this.$+d[b-2]);this.$=e(\"mrow\",Za(\"(\")+this.$+Za(\")\"));break;case 65:case 70:this.$=e(\"mn\",d[b]);break;case 66:case 79:case 81:this.$=e(\"mtext\",\nd[b]);break;case 67:this.$=e(\"mi\",Xa(d[b]));break;case 68:case 173:this.$=Za(d[b],\"0em\",\"0em\");break;case 69:this.$=e(\"mi\",d[b]);break;case 71:case 72:case 73:case 172:this.$=Za(d[b]);break;case 74:case 75:case 76:this.$=e(\"mo\",d[b],'stretchy=\"false\"');break;case 77:this.$=e(\"ms\",d[b]);break;case 78:this.$=e(\"ms\",d[b],\"lquote=\"+d[b-2]+\" rquote=\"+d[b-1]);break;case 80:this.$=e(\"mtext\",d[b-1]+d[b]);break;case 82:this.$=Za(d[b],\"0em\",\"thinmathspace\");break;case 83:this.$=Za(d[b],\"thinmathspace\",\"thinmathspace\");\nbreak;case 84:this.$=Za(d[b],\"mediummathspace\",\"mediummathspace\");break;case 85:this.$=Za(d[b],\"thickmathspace\",\"thickmathspace\");break;case 86:this.$=e(\"mfrac\",d[b-1]+d[b]);break;case 87:this.$=e(\"mroot\",d[b]+d[b-1]);break;case 88:this.$=e(\"msqrt\",d[b]);break;case 89:this.$=e(\"mroot\",d[b]+lb(d[b-2]));break;case 90:this.$=e(\"munder\",d[b]+d[b-1]);break;case 91:this.$=e(\"mover\",d[b]+d[b-1]);break;case 92:this.$=e(\"munderover\",d[b]+d[b-2]+d[b-1]);break;case 93:this.$=\"<mrow/>\"===d[b]?e(\"munder\",Za(d[b-\n4])+lb(d[b-2])):e(\"munderover\",Za(d[b-4])+lb(d[b-2])+d[b]);break;case 94:this.$=e(\"mover\",Za(d[b-1])+d[b]);break;case 95:this.$=e(\"mpadded\",d[b],'width=\"0em\"');break;case 96:this.$=e(\"mpadded\",d[b],'width=\"0em\" lspace=\"-100%width\"');break;case 97:this.$=e(\"mpadded\",d[b],'width=\"0em\" lspace=\"-50%width\"');break;case 98:this.$=e(\"mphantom\",d[b]);break;case 99:this.$=e(\"mfrac\",d[b-1]+d[b]);this.$=e(\"mstyle\",this.$,'displaystyle=\"false\"');break;case 100:this.$=e(\"mfrac\",d[b-1]+d[b],'linethickness=\"0\"');\nthis.$=e(\"mrow\",Za(\"(\")+this.$+Za(\")\"));break;case 101:this.$=e(\"mfrac\",d[b-1]+d[b],'linethickness=\"0\"');this.$=e(\"mstyle\",this.$,'displaystyle=\"false\"');this.$=e(\"mrow\",Za(\"(\")+this.$+Za(\")\"));break;case 102:this.$='<mrow><mo lspace=\"mediummathspace\">(</mo><mo rspace=\"thinmathspace\">mod</mo>'+d[b]+'<mo rspace=\"mediummathspace\">)</mo></mrow>';break;case 103:this.$=e(\"munder\",d[b]+Za(\"\\u23df\"));break;case 104:this.$=e(\"munder\",d[b]+Za(\"_\"));break;case 105:this.$=e(\"mover\",d[b]+Za(\"\\u23de\"));break;\ncase 106:this.$=e(\"mover\",d[b]+Za(d[b-1]));break;case 107:this.$=e(\"mover\",d[b]+e(\"mo\",d[b-1],'stretchy=\"false\"'));break;case 108:this.$=e(\"menclose\",d[b],'notation=\"box\"');break;case 109:this.$=e(\"menclose\",d[b],'notation=\"updiagonalstrike\"');break;case 110:this.$='<mspace width=\"1em\"/>';break;case 111:this.$='<mspace width=\"2em\"/>';break;case 112:this.$='<mspace width=\"negativethinmathspace\"/>';break;case 113:this.$='<mspace width=\"negativemediummathspace\"/>';break;case 114:this.$='<mspace width=\"negativethickmathspace\"/>';\nbreak;case 115:this.$='<mspace width=\"thinmathspace\"/>';break;case 116:this.$='<mspace width=\"mediummathspace\"/>';break;case 117:this.$='<mspace width=\"thickmathspace\"/>';break;case 118:this.$='<mspace height=\".'+d[b-2]+'ex\" depth=\".'+d[b-1]+'ex\" width=\".'+d[b]+'em\"/>';break;case 119:this.$=e(\"mpadded\",d[b],'voffset=\"'+d[b-3].l+d[b-3].u+'\" height=\"'+d[b-2].l+d[b-2].u+'\" depth=\"'+d[b-1].l+d[b-1].u+'\"');break;case 120:this.$=e(\"mpadded\",d[b],'voffset=\"'+d[b-2].l+d[b-2].u+'\" height=\"'+d[b-1].l+d[b-1].u+\n'\" depth=\"'+(0>d[b-2].l?\"+\"+-d[b-2].l+d[b-2].u:\"depth\")+'\"');break;case 121:this.$=e(\"mpadded\",d[b],'voffset=\"'+d[b-1].l+d[b-1].u+'\" '+(0<=d[b-1].l?'height=\"+'+d[b-1].l+d[b-1].u+'\"':'height=\"0pt\" depth=\"+'+-d[b-1].l+d[b-1].u+'\"'));break;case 122:this.$=e(\"mstyle\",d[b],'mathvariant=\"double-struck\"');break;case 123:this.$=e(\"mstyle\",d[b],'mathvariant=\"bold\"');break;case 124:this.$=e(\"mstyle\",d[b],'mathvariant=\"bold-italic\"');break;case 125:this.$=e(\"mstyle\",d[b],'mathvariant=\"script\"');break;case 126:this.$=\ne(\"mstyle\",d[b],'mathvariant=\"bold-script\"');break;case 127:this.$=e(\"mstyle\",d[b],'mathvariant=\"sans-serif\"');break;case 128:this.$=e(\"mstyle\",d[b],'mathvariant=\"fraktur\"');break;case 129:this.$=e(\"mstyle\",d[b],'mathvariant=\"italic\"');break;case 130:this.$=e(\"mstyle\",d[b],'mathvariant=\"monospace\"');break;case 131:this.$=e(\"mstyle\",d[b],'mathvariant=\"normal\"');break;case 132:this.$=e(\"mrow\",d[b],f.mSafeMode?null:\"href=\"+d[b-1]);break;case 133:this.$=f.mSafeMode?d[b]:e(\"maction\",d[b]+e(\"mtext\",d[b-\n1]),'actiontype=\"statusline\"');break;case 134:this.$=f.mSafeMode?d[b]:e(\"maction\",d[b]+e(\"mtext\",d[b-1]),'actiontype=\"tooltip\"');break;case 135:this.$=f.mSafeMode?d[b]:e(\"maction\",d[b-1]+d[b],'actiontype=\"toggle\" selection=\"2\"');break;case 136:this.$=f.mSafeMode?e(\"mrow\",d[b-1]):e(\"maction\",d[b-1],'actiontype=\"toggle\"');break;case 137:case 140:this.$=e(\"mmultiscripts\",d[b-3]+d[b-1]);break;case 138:this.$=e(\"mmultiscripts\",d[b-3]+d[b-1]+\"<mprescripts/>\"+d[b-5]);break;case 139:this.$=e(\"mmultiscripts\",\nd[b-2]+\"<mprescripts/>\"+d[b-4]);break;case 141:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" rowspacing=\"0.5ex\"');break;case 142:this.$=e(\"mtable\",d[b-1],'displaystyle=\"true\" rowspacing=\"1.0ex\"');break;case 143:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" rowspacing=\"0.5ex\"');this.$=e(\"mrow\",Za(\"(\")+this.$+Za(\")\"));break;case 144:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" rowspacing=\"0.5ex\"');this.$=e(\"mrow\",Za(\"[\")+this.$+Za(\"]\"));break;case 145:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" rowspacing=\"0.5ex\"');\nthis.$=e(\"mrow\",Za(\"|\")+this.$+Za(\"|\"));break;case 146:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" rowspacing=\"0.5ex\"');this.$=e(\"mrow\",Za(\"{\")+this.$+Za(\"}\"));break;case 147:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" rowspacing=\"0.5ex\"');this.$=e(\"mrow\",Za(\"\\u2016\")+this.$+Za(\"\\u2016\"));break;case 148:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" rowspacing=\"0.5ex\"');this.$=e(\"mstyle\",this.$,'scriptlevel=\"2\"');break;case 149:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" columnalign=\"left left\"');\nthis.$=e(\"mrow\",Za(\"{\")+this.$);break;case 150:this.$=e(\"mtable\",d[b-1],'displaystyle=\"true\" columnalign=\"right left right left right left right left right left\" columnspacing=\"0em\"');break;case 151:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" rowspacing=\"0.5ex\" align=\"'+d[b-3]+'\" columnalign=\"'+d[b-2]+'\"');break;case 152:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" rowspacing=\"0.5ex\" columnalign=\"'+d[b-2]+'\"');break;case 153:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" columnalign=\"center\" rowspacing=\"0.5ex\"');\nbreak;case 154:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\"');break;case 155:this.$=e(\"mtable\",d[b-1],'displaystyle=\"false\" '+d[b-3]);break;case 156:case 205:this.$=d[b];break;case 157:this.$=d[b-1]+d[b];break;case 158:this.$=e(\"mmultiscripts\",d[b-1]+d[b]);break;case 159:this.$=nb(!1,d[b-4],d[b-2],d[b]);break;case 160:this.$=nb(!1,d[b-3],d[b-1],Za(d[b]));break;case 161:this.$=nb(!1,d[b-4],d[b],d[b-2]);break;case 162:this.$=nb(!1,d[b-3],d[b],Za(d[b-2]));break;case 163:this.$=nb(!1,d[b-2],d[b],null);\nbreak;case 164:this.$=nb(!1,d[b-2],null,d[b]);break;case 165:this.$=nb(!1,d[b-1],null,Za(d[b]));break;case 167:this.$=nb(!0,d[b-4],d[b-2],d[b]);break;case 168:this.$=nb(!0,d[b-4],d[b],d[b-2]);break;case 169:this.$=nb(!0,d[b-2],d[b],null);break;case 170:this.$=nb(!0,d[b-2],null,d[b]);break;case 174:this.$=[d[b]];break;case 175:d[b-1].push(d[b]);this.$=d[b-1];break;case 178:case 197:case 201:this.$=d[b-2]+d[b];break;case 179:this.$=d[b]+\"<none/>\";break;case 180:case 181:this.$=\"<none/>\"+d[b];break;\ncase 183:this.$=d[b-1]+d[b];break;case 184:this.$='displaystyle=\"true\"';break;case 185:this.$='displaystyle=\"false\"';break;case 186:this.$='scriptlevel=\"0\"';break;case 187:this.$='scriptlevel=\"1\"';break;case 188:this.$='scriptlevel=\"2\"';break;case 189:this.$=\"mathcolor=\"+d[b];break;case 190:this.$=\"mathbackground=\"+d[b];break;case 191:this.$=[lb(d[b],\"mstyle\",d[b-1])];break;case 193:this.$=e(\"mtd\",\"\");break;case 194:this.$=lb(d[b],\"mtd\",d[b-2]);break;case 195:this.$=lb(d[b],\"mtd\");break;case 198:this.$=\nthis.$=e(\"mtr\",d[b],d[b-2]);break;case 199:this.$=e(\"mtr\",d[b]);break;case 202:return this.$=d[b-1];case 204:this.$=d[b-1]+d[b];break;case 206:this.$=Ab([\"<mrow/>\"],!1,f.tex);break;case 207:this.$=Ab(d[b-1],!1,f.tex);break;case 208:this.$=Ab([\"<mrow/>\"],!0,f.tex);break;case 209:this.$=Ab(d[b-1],!0,f.tex);break;case 210:this.$=Ab(d[b-1],!1,f.tex);break;case 211:this.$=Ab(d[b-1],!0,f.tex)}},table:[{68:Mb,189:1,190:2,192:3,193:Nb,195:Ob,197:Pb,199:Qb},{1:[3]},{68:Mb,191:[1,9],192:10,193:Nb,195:Ob,197:Pb,\n199:Qb},c(wb,[2,203]),c(wb,[2,205]),{8:q,48:35,49:u,50:w,51:y,54:24,55:12,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,\n135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,194:[1,11]},{8:q,48:35,49:u,50:w,51:y,54:24,55:121,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,\n108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,196:[1,120]},{8:q,48:35,49:u,50:w,51:y,54:24,55:122,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,\n75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,\n176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},{8:q,48:35,49:u,50:w,51:y,54:24,55:123,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,\n131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},{1:[2,202]},c(wb,[2,204]),c(wb,[2,206]),{194:[1,124]},{8:q,48:35,49:u,50:w,51:y,54:24,55:125,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,\n100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},c(Rb,[2,192],{54:24,168:25,48:35,164:126,8:q,49:u,50:w,51:y,56:h,57:p,58:n,\n59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,\n159:Ua,161:Va,162:Wa,169:$a,170:ab}),c(xb,[2,184]),c(xb,[2,185]),c(xb,[2,186]),c(xb,[2,187]),c(xb,[2,188]),{7:128,8:kb,14:127},{7:128,8:kb,14:130},c(rb,[2,174]),{8:q,48:35,49:u,50:w,51:y,54:131,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,\n115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(rb,[2,166],{165:[1,133],166:[1,134],167:[1,135]}),c(rb,[2,171],{165:[1,136],166:[1,137]}),{8:q,10:[1,138],48:35,49:u,50:w,51:y,54:24,55:139,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,\n86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},{50:[1,\n140]},{50:[1,141]},{50:[1,142]},{50:[1,143]},{50:[1,144]},{50:[1,145]},{50:[1,146]},{50:[1,147]},{8:q,48:35,49:u,50:w,51:y,54:24,55:148,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,\n124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},c(f,[2,65]),c(f,[2,66]),c(f,[2,67]),c(f,[2,68]),{7:150,8:kb,15:149},{7:150,8:kb,15:151},{7:150,8:kb,15:152},c(f,[2,72]),c(f,[2,73]),c(f,[2,74]),c(f,[2,75]),c(f,[2,76]),{3:155,4:Jb,7:150,8:kb,13:154,15:153},{7:150,8:kb,15:157},{80:[1,158]},c(f,\n[2,81]),{7:159,8:kb},{7:160,8:kb},{7:161,8:kb},{7:162,8:kb},{8:q,48:35,49:u,50:w,51:y,54:163,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,\n130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:164,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,\n120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{4:[1,166],8:q,48:35,49:u,50:w,51:y,54:165,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,\n109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:167,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,\n99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:168,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,\n85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:169,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,\n70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{4:[1,170],8:q,48:35,\n49:u,50:w,51:y,54:171,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,\n149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:172,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,\n130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:173,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,\n120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:174,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,\n110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:175,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,\n100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:176,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,\n87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:177,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,\n72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:178,\n56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,\n155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:179,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,\n135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:180,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,\n123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:181,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,\n113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:182,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,\n103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:183,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,\n91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:184,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,\n76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:185,56:h,57:p,58:n,\n59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,\n159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:186,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,\n138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(f,[2,110]),c(f,[2,111]),c(f,[2,112]),c(f,[2,113]),c(f,[2,114]),c(f,[2,115]),c(f,[2,116]),c(f,[2,117]),{7:187,8:kb},{8:[1,189],12:188},{8:q,48:35,49:u,50:w,51:y,54:190,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,\n106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:191,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,\n95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:192,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,\n81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:193,56:h,57:p,58:n,59:z,60:g,61:v,62:m,\n63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},\n{8:q,48:35,49:u,50:w,51:y,54:194,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,\n145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:195,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,\n128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:196,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,\n118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:197,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,\n108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:198,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,\n98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:199,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,\n84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{7:128,8:kb,14:200},{7:201,8:kb},{7:202,8:kb},{8:q,48:35,49:u,50:w,51:y,54:203,56:h,\n57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,\n157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:205,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,133:204,\n135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:[1,206]},c([140,185,188],ob,{174:13,171:14,164:22,54:24,168:25,48:35,139:207,186:208,184:210,182:211,55:213,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,\n109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c([142,185,188],ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:214,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,\n63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,\n169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c([144,185,188],ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:215,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,\n115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c([146,185,188],ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:216,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,\n74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,\n179:hb,180:ib,181:jb,183:pb,187:sb}),c([148,185,188],ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:217,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,\n121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c([150,185,188],ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:218,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,\n83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),\nc([152,185,188],ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:219,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,\n126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c([154,185,188],ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:220,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,\n90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c([156,185,188],ob,{174:13,171:14,\n164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:221,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,\n131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c([158,185,188],ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:222,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,\n97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),{3:225,4:Jb,7:226,8:kb,16:223,17:224},{8:[1,227]},{8:[1,228]},c(yb,[2,\n172]),c(yb,[2,173]),{50:[1,229],51:[1,230]},c(wb,[2,208]),{196:[1,231]},{198:[1,232]},{200:[1,233]},c(wb,[2,207]),c(Rb,[2,191]),c(rb,[2,175]),c(xb,[2,189]),c([8,10,19,21,23,25,27,29,31,33,35,37,39,41,49,50,51,56,57,58,59,60,61,62,63,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,135,137,138,141,143,145,147,149,151,153,\n155,157,159,161,162,169,170,175,176,177,178,179,180,181],[2,6]),{9:[1,234]},c(xb,[2,190]),{8:Sb,136:235,165:ub,166:vb,173:237},{8:q,48:35,49:u,50:w,51:y,54:240,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,\n120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:241,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,\n110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:242,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,\n100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(rb,[2,165],{165:[1,243]}),{8:q,48:35,49:u,50:w,51:y,54:244,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,\n81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:245,56:h,57:p,58:n,59:z,60:g,61:v,62:m,\n63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},\nc(f,[2,48]),{10:[1,246],64:[1,247],65:[1,248],66:[1,249]},c(f,[2,50]),c(f,[2,51]),c(f,[2,52]),c(f,[2,53]),c(f,[2,54]),c(f,[2,55]),c(f,[2,56]),c(f,[2,57]),{52:250,53:Eb,64:[1,251],65:[1,252],66:[1,253]},c(f,[2,69]),c(f,[2,7]),c(f,[2,70]),c(f,[2,71]),c(f,[2,77]),{3:155,4:Jb,13:255},c(Tb,[2,5]),{5:[1,256]},c(f,[2,79]),c(f,[2,80]),c(f,[2,82]),c(f,[2,83]),c(f,[2,84]),c(f,[2,85]),{8:q,48:35,49:u,50:w,51:y,54:257,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,\n78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:258,56:h,57:p,58:n,59:z,60:g,\n61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,\n162:Wa},c(f,[2,88]),{8:q,48:35,49:u,50:w,51:y,54:24,55:259,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,\n138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},{8:q,48:35,49:u,50:w,51:y,54:260,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,\n112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:261,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,\n102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:262,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,\n89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:24,55:263,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,\n73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,\n174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},c(f,[2,94]),c(f,[2,95]),c(f,[2,96]),c(f,[2,97]),c(f,[2,98]),{8:q,48:35,49:u,50:w,51:y,54:264,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,\n122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:265,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,\n112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:266,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,\n102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(f,[2,102]),c(f,[2,103]),c(f,[2,104]),c(f,[2,105]),c(f,[2,106]),c(f,[2,107]),c(f,[2,108]),c(f,[2,109]),{7:267,8:kb},{4:Ub,8:q,11:268,48:35,49:u,50:w,51:y,54:269,56:h,57:p,58:n,59:z,\n60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,\n161:Va,162:Wa},{9:[1,271]},c(f,[2,122]),c(f,[2,123]),c(f,[2,124]),c(f,[2,125]),c(f,[2,126]),c(f,[2,127]),c(f,[2,128]),c(f,[2,129]),c(f,[2,130]),c(f,[2,131]),{8:q,48:35,49:u,50:w,51:y,54:272,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,\n116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:273,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,\n106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:274,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,\n95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:275,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,\n81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:277,56:h,57:p,58:n,59:z,60:g,61:v,62:m,\n63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,134:[1,276],135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,\n161:Va,162:Wa},c(Vb,[2,156]),{10:[1,279],136:278,165:ub,166:vb,173:237},{140:[1,280],188:tb},c(Fb,[2,200]),{8:[1,282]},c(Fb,[2,199],{185:Wb}),c(Bb,[2,196]),{8:[1,284]},c(Bb,[2,195]),{142:[1,285],188:tb},{144:[1,286],188:tb},{146:[1,287],188:tb},{148:[1,288],188:tb},{150:[1,289],188:tb},{152:[1,290],188:tb},{154:[1,291],188:tb},{156:[1,292],188:tb},{158:[1,293],188:tb},{7:226,8:kb,17:294},c(Xb,ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:295,8:q,49:u,50:w,51:y,56:h,\n57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,\n157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),{8:[2,8]},c([8,49,50,51,56,57,58,59,60,61,62,63,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,135,137,138,141,143,145,147,149,151,153,155,157,159,160,161,162,169,170,175,176,177,178,179,180,181,183,185,187,188],[2,\n9]),c(Kb,ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:296,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,\n127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c(Kb,ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:297,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,\n94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,163:[1,298],169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c(xb,[2,44]),c(xb,[2,45]),c(wb,[2,209]),c(wb,\n[2,210]),c(wb,[2,211]),{10:[1,299]},c(rb,[2,158],{173:300,165:ub,166:vb}),{136:301,165:ub,166:vb,173:237},c(yb,[2,182]),{8:q,48:35,49:u,50:w,51:y,54:304,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,\n121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,166:[1,303],168:305,169:$a,170:ab,172:302},{8:q,48:35,49:u,50:w,51:y,54:304,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,\n105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,168:305,169:$a,170:ab,172:306},{8:Sb},c(rb,[2,163],{166:[1,307],167:[1,308]}),c(rb,[2,164],{165:[1,309]}),{8:q,48:35,49:u,50:w,51:y,54:310,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,\n72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(rb,[2,169],{166:[1,311]}),\nc(rb,[2,170],{165:[1,312]}),c(f,[2,49]),{8:q,48:35,49:u,50:w,51:y,54:24,55:313,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,\n132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},{8:q,48:35,49:u,50:w,51:y,54:24,55:314,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,\n108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},{8:q,48:35,49:u,50:w,51:y,54:24,55:315,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,\n77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,\n177:fb,178:gb,179:hb,180:ib,181:jb},c(f,[2,58]),{8:q,48:35,49:u,50:w,51:y,54:24,55:316,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,\n131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},{8:q,48:35,49:u,50:w,51:y,54:24,55:317,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,\n107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},{8:q,48:35,49:u,50:w,51:y,54:24,55:318,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,\n76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,\n176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},{50:[1,319],51:[1,320]},{7:150,8:kb,15:321},{6:[1,322]},c(f,[2,86]),c(f,[2,87]),{6:[1,323]},c(f,[2,90]),c(f,[2,91]),{8:q,48:35,49:u,50:w,51:y,54:324,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,\n116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{6:[1,325]},c(f,[2,99]),c(f,[2,100]),c(f,[2,101]),{7:326,8:kb},{4:Ub,8:q,11:327,48:35,49:u,50:w,51:y,54:328,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,\n94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(f,[2,121]),{5:[1,329]},{10:[1,330]},c(f,[2,132]),c(f,[2,133]),c(f,[2,134]),c(f,[2,135]),c(f,[2,136]),c(Vb,[2,157]),{10:[1,331],165:ub,\n166:vb,173:300},{8:q,48:35,49:u,50:w,51:y,54:332,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,\n141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(f,[2,141]),c(Bb,ob,{174:13,171:14,164:22,54:24,168:25,48:35,184:210,182:211,55:213,186:333,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,\n115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),{20:336,21:Cb,22:337,23:Db,44:335,47:334},c(Bb,ob,{174:13,171:14,164:22,54:24,168:25,48:35,55:213,182:340,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,\n73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,\n178:gb,179:hb,180:ib,181:jb,183:pb}),{20:343,21:Cb,22:344,23:Db,24:345,25:Yb,26:346,27:Zb,42:342,43:341},c(f,[2,142]),c(f,[2,143]),c(f,[2,144]),c(f,[2,145]),c(f,[2,146]),c(f,[2,147]),c(f,[2,148]),c(f,[2,149]),c(f,[2,150]),c(Xb,ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:349,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,\n95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),{160:[1,350],188:tb},{10:[1,351],188:tb},{10:[1,352],188:tb},\n{8:[1,353]},c([6,8,10,19,21,23,25,27,29,31,33,35,37,39,41,49,50,51,53,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,134,135,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,165,166,167,169,170,175,176,177,178,179,180,181,183,185,187,188,\n194,196,198,200],[2,2]),c(yb,[2,183]),{10:[1,354],165:ub,166:vb,173:300},c([6,8,10,49,50,51,53,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,135,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,165,169,170,185,188,194,196,198,200],[2,179],\n{166:[1,355]}),{8:q,48:35,49:u,50:w,51:y,54:304,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,\n141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,168:305,169:$a,170:ab,172:356},c(yb,[2,176]),c(yb,[2,177]),c(yb,[2,180]),{8:q,48:35,49:u,50:w,51:y,54:357,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,\n116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(rb,[2,160]),{8:q,48:35,49:u,50:w,51:y,54:358,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,\n104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(rb,[2,162]),{8:q,48:35,49:u,50:w,51:y,54:359,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,\n89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:q,48:35,49:u,50:w,51:y,54:360,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,\n74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{10:[1,361]},{10:[1,362]},{10:[1,363]},\n{52:364,53:Eb},{52:365,53:Eb},{52:366,53:Eb},c(f,[2,46]),c(f,[2,47]),c(f,[2,78]),c(Tb,[2,1]),{8:q,48:35,49:u,50:w,51:y,54:367,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,\n125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(f,[2,92]),{8:q,48:35,49:u,50:w,51:y,54:368,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,\n114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(f,[2,118]),{8:q,48:35,49:u,50:w,51:y,54:369,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,\n102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},c(f,[2,120]),{6:[1,370]},c($b,[2,4]),{8:q,48:35,49:u,50:w,51:y,54:371,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,\n82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa},{8:[1,372]},c(Fb,[2,201]),{10:[1,373],20:336,21:Cb,22:337,23:Db,44:374},\nc(Gb,[2,42]),c(Gb,[2,28]),c(Gb,[2,29]),{7:128,8:kb,14:375},{7:128,8:kb,14:376},c(Bb,[2,197]),{10:[1,377],20:343,21:Cb,22:344,23:Db,24:345,25:Yb,26:346,27:Zb,42:378},c(zb,[2,26]),c(zb,[2,22]),c(zb,[2,23]),c(zb,[2,24]),c(zb,[2,25]),{7:128,8:kb,14:379},{7:128,8:kb,14:380},{160:[1,381],188:tb},c(f,[2,152]),c(f,[2,153]),c(f,[2,154]),{18:384,19:ac,20:385,21:Cb,22:386,23:Db,28:387,29:bc,30:388,31:cc,32:389,33:dc,34:390,35:ec,36:391,37:fc,38:392,39:gc,40:393,41:hc,45:383,46:382},c(f,[2,137]),{8:q,48:35,49:u,\n50:w,51:y,54:304,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:Ya,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,\n151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,168:305,169:$a,170:ab,172:402},c(yb,[2,181]),c(rb,[2,159]),c(rb,[2,161]),c(rb,[2,167]),c(rb,[2,168]),c(f,[2,59]),c(f,[2,61]),c(f,[2,63]),c(f,[2,60]),c(f,[2,62]),c(f,[2,64]),c(f,[2,89]),c(f,[2,93]),c(f,[2,119]),c($b,[2,3]),{8:[1,403]},{136:404,165:ub,166:vb,173:237},c(Bb,ob,{174:13,171:14,164:22,54:24,168:25,48:35,182:211,55:213,184:405,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,\n78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,\n183:pb}),c(Gb,[2,43]),c(ic,[2,11]),c(ic,[2,12]),{8:q,48:35,49:u,50:w,51:y,54:24,55:406,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,\n131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,164:22,168:25,169:$a,170:ab,171:14,174:13,175:db,176:eb,177:fb,178:gb,179:hb,180:ib,181:jb},c(zb,[2,27]),c(zb,[2,13]),c(zb,[2,14]),c(f,[2,151]),{10:[1,407],18:384,19:ac,20:385,21:Cb,22:386,23:Db,28:387,29:bc,30:388,31:cc,32:389,33:dc,34:390,35:ec,36:391,37:fc,38:392,39:gc,40:393,41:hc,45:408},c(mb,[2,40]),c(mb,[2,30]),c(mb,[2,31]),c(mb,[2,32]),c(mb,[2,33]),c(mb,[2,34]),c(mb,[2,35]),\nc(mb,[2,36]),c(mb,[2,37]),c(mb,[2,38]),c(mb,[2,39]),{7:128,8:kb,14:409},{7:128,8:kb,14:410},{7:128,8:kb,14:411},{7:128,8:kb,14:412},{7:128,8:kb,14:413},{7:128,8:kb,14:414},{7:128,8:kb,14:415},{7:128,8:kb,14:416},c(yb,[2,178]),{10:[1,418],136:417,165:ub,166:vb,173:237},{10:[1,419],165:ub,166:vb,173:300},c(Fb,[2,198],{185:Wb}),c(Bb,[2,194]),c(Kb,ob,{174:13,171:14,164:22,54:24,168:25,48:35,186:208,184:210,182:211,55:213,139:420,8:q,49:u,50:w,51:y,56:h,57:p,58:n,59:z,60:g,61:v,62:m,63:k,67:r,68:t,69:l,\n70:x,71:A,72:B,73:C,74:D,75:E,76:F,77:G,78:H,79:I,81:J,82:K,83:L,84:M,85:N,86:O,87:P,88:Q,89:R,90:S,91:T,92:U,93:V,94:W,95:X,96:Y,97:Z,98:aa,99:ba,100:ca,101:da,102:ea,103:fa,104:ga,105:ha,106:ia,107:ja,108:ka,109:la,110:ma,111:na,112:oa,113:pa,114:qa,115:ra,116:sa,117:ta,118:ua,119:va,120:wa,121:xa,122:ya,123:za,124:Aa,125:Ba,126:Ca,127:Da,128:Ea,129:Fa,130:Ga,131:Ha,132:Ia,135:bb,137:Ja,138:Ka,141:La,143:Ma,145:Na,147:Oa,149:Pa,151:Qa,153:Ra,155:Sa,157:Ta,159:Ua,161:Va,162:Wa,169:$a,170:ab,175:db,\n176:eb,177:fb,178:gb,179:hb,180:ib,181:jb,183:pb,187:sb}),c(mb,[2,41]),c(mb,[2,10]),c(mb,[2,15]),c(mb,[2,16]),c(mb,[2,17]),c(mb,[2,18]),c(mb,[2,19]),c(mb,[2,20]),c(mb,[2,21]),{10:[1,421],165:ub,166:vb,173:300},c(f,[2,139]),c(f,[2,140]),{10:[1,422],188:tb},c(f,[2,138]),c(f,[2,155])],defaultActions:{9:[2,202],225:[2,8]},parseError:function(b,a){if(a.recoverable)this.trace(b);else throw Error(b);},parse:function(b){var a=[0],c=[null],e=[],f=this.table,d=\"\",q=0,u=0,w=0,y=e.slice.call(arguments,1),h=Object.create(this.lexer),\np={},n;for(n in this.yy)Object.prototype.hasOwnProperty.call(this.yy,n)&&(p[n]=this.yy[n]);h.setInput(b,p);p.lexer=h;p.parser=this;\"undefined\"==typeof h.yylloc&&(h.yylloc={});n=h.yylloc;e.push(n);var z=h.options&&h.options.ranges;\"function\"===typeof p.parseError&&(this.parseError=p.parseError);for(var g,v,m,k,r={},t,l;;){m=a[a.length-1];if(this.defaultActions[m])k=this.defaultActions[m];else{if(null===g||\"undefined\"==typeof g)g=void 0,g=h.lex()||1,\"number\"!==typeof g&&(g=this.symbols_[g]||g);k=f[m]&&\nf[m][g]}if(\"undefined\"===typeof k||!k.length||!k[0]){var x=\"\";l=[];for(t in f[m])this.terminals_[t]&&2<t&&l.push(\"'\"+this.terminals_[t]+\"'\");x=h.showPosition?\"Parse error on line \"+(q+1)+\":\\n\"+h.showPosition()+\"\\nExpecting \"+l.join(\", \")+\", got '\"+(this.terminals_[g]||g)+\"'\":\"Parse error on line \"+(q+1)+\": Unexpected \"+(1==g?\"end of input\":\"'\"+(this.terminals_[g]||g)+\"'\");this.parseError(x,{text:h.match,token:this.terminals_[g]||g,line:h.yylineno,loc:n,expected:l})}if(k[0]instanceof Array&&1<k.length)throw Error(\"Parse Error: multiple actions possible at state: \"+\nm+\", token: \"+g);switch(k[0]){case 1:a.push(g);c.push(h.yytext);e.push(h.yylloc);a.push(k[1]);g=null;v?(g=v,v=null):(u=h.yyleng,d=h.yytext,q=h.yylineno,n=h.yylloc,0<w&&w--);break;case 2:l=this.productions_[k[1]][1];r.$=c[c.length-l];r._$={first_line:e[e.length-(l||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(l||1)].first_column,last_column:e[e.length-1].last_column};z&&(r._$.range=[e[e.length-(l||1)].range[0],e[e.length-1].range[1]]);m=this.performAction.apply(r,[d,u,\nq,p,k[1],c,e].concat(y));if(\"undefined\"!==typeof m)return m;l&&(a=a.slice(0,-2*l),c=c.slice(0,-1*l),e=e.slice(0,-1*l));a.push(this.productions_[k[1]][0]);c.push(r.$);e.push(r._$);k=f[a[a.length-2]][a[a.length-1]];a.push(k);break;case 3:return!0}}}},Hb=\"http://www.w3.org/1998/Math/MathML\",jc=\"TeX LaTeX text/x-tex text/x-latex application/x-tex application/x-latex\".split(\" \");try{qb.mDOMParser=new DOMParser}catch(mc){qb.mDOMParser={parseFromString:function(){throw\"DOMParser undefined. Did you call TeXZilla.setDOMParser?\";\n}}}qb.setDOMParser=function(b){this.mDOMParser=b};try{qb.mXMLSerializer=new XMLSerializer}catch(nc){qb.mXMLSerializer={serializeToString:function(){throw\"XMLSerializer undefined. Did you call TeXZilla.setXMLSerializer?\";}}}qb.setXMLSerializer=function(b){this.mXMLSerializer=b};qb.parseMathMLDocument=function(b){return this.mDOMParser.parseFromString(b,\"application/xml\").documentElement};qb.setSafeMode=function(b){this.yy.mSafeMode=b};qb.setItexIdentifierMode=function(b){this.yy.mItexIdentifierMode=\nb};qb.getTeXSource=function(b){\"string\"===typeof b&&(b=this.parseMathMLDocument(b));return Lb(b)};qb.toMathMLString=function(b,a,c,e){var f;try{f=this.parse(\"\\\\(\"+b+\"\\\\)\")}catch(d){if(e)throw d;f=Ab([\"<merror><mtext>\"+Xa(d.message)+\"</mtext></merror>\"],!1,b)}c&&(f=f.replace(/^<math/,'<math dir=\"rtl\"'));a&&(f=f.replace(/^<math/,'<math display=\"block\"'));return f};qb.toMathML=function(b,a,c,e){return this.parseMathMLDocument(this.toMathMLString(b,a,c,e))};qb.toImage=function(b,a,c,e,f){var d,g;void 0===\ne&&(e=64);void 0===f&&(f=window.document);a=this.toMathML(b,!0,a);a.setAttribute(\"mathsize\",e+\"px\");e=document.createElement(\"div\");e.style.visibility=\"hidden\";e.style.position=\"absolute\";e.appendChild(a);f.body.appendChild(e);d=a.getBoundingClientRect();f.body.removeChild(e);e.removeChild(a);c?(c=Math.pow(2,Math.ceil(Math.log(d.width)/Math.LN2)),f=Math.pow(2,Math.ceil(Math.log(d.height)/Math.LN2))):(c=Math.ceil(d.width),f=Math.ceil(d.height));g=document.createElementNS(\"http://www.w3.org/2000/svg\",\n\"svg\");g.setAttribute(\"width\",c+\"px\");g.setAttribute(\"height\",f+\"px\");e=document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\");e.setAttribute(\"transform\",\"translate(\"+(c-d.width)/2+\",\"+(f-d.height)/2+\")\");g.appendChild(e);e=document.createElementNS(\"http://www.w3.org/2000/svg\",\"foreignObject\");e.setAttribute(\"width\",d.width);e.setAttribute(\"height\",d.height);e.appendChild(a);g.firstChild.appendChild(e);a=new Image;a.src=\"data:image/svg+xml;base64,\"+window.btoa(kc(this.mXMLSerializer.serializeToString(g)));\na.width=c;a.height=f;a.alt=Xa(b);return a};qb.filterString=function(b,a){try{return this.parse(b)}catch(c){if(a)throw c;return b}};qb.filterElement=function(b,a){var c,e,f;for(f=b.firstChild;f;f=f.nextSibling)switch(f.nodeType){case 1:this.filterElement(f,a);break;case 3:this.yy.escapeXML=!0;c=this.mDOMParser.parseFromString(\"<root>\"+TeXZilla.filterString(f.data,a)+\"</root>\",\"application/xml\").documentElement;for(this.yy.escapeXML=!1;e=c.firstChild;)b.insertBefore(c.removeChild(e),f);e=f.previousSibling;\nb.removeChild(f);f=e}};var lc=function(){return{EOF:1,parseError:function(b,a){if(this.yy.parser)this.yy.parser.parseError(b,a);else throw Error(b);},setInput:function(b,a){this.yy=a||this.yy||{};this._input=b;this._more=this._backtrack=this.done=!1;this.yylineno=this.yyleng=0;this.yytext=this.matched=this.match=\"\";this.conditionStack=[\"INITIAL\"];this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0};this.options.ranges&&(this.yylloc.range=[0,0]);this.offset=0;return this},input:function(){var b=\nthis._input[0];this.yytext+=b;this.yyleng++;this.offset++;this.match+=b;this.matched+=b;b.match(/(?:\\r\\n?|\\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++;this.options.ranges&&this.yylloc.range[1]++;this._input=this._input.slice(1);return b},unput:function(b){var a=b.length,c=b.split(/(?:\\r\\n?|\\n)/g);this._input=b+this._input;this.yytext=this.yytext.substr(0,this.yytext.length-a);this.offset-=a;b=this.match.split(/(?:\\r\\n?|\\n)/g);this.match=this.match.substr(0,this.match.length-\n1);this.matched=this.matched.substr(0,this.matched.length-1);c.length-1&&(this.yylineno-=c.length-1);var e=this.yylloc.range;this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===b.length?this.yylloc.first_column:0)+b[b.length-c.length].length-c[0].length:this.yylloc.first_column-a};this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-a]);this.yyleng=this.yytext.length;return this},more:function(){this._more=\n!0;return this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError(\"Lexical error on line \"+(this.yylineno+1)+\". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\\n\"+this.showPosition(),{text:\"\",token:null,line:this.yylineno});return this},less:function(b){this.unput(this.match.slice(b))},pastInput:function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(20<\nb.length?\"...\":\"\")+b.substr(-20).replace(/\\n/g,\"\")},upcomingInput:function(){var b=this.match;20>b.length&&(b+=this._input.substr(0,20-b.length));return(b.substr(0,20)+(20<b.length?\"...\":\"\")).replace(/\\n/g,\"\")},showPosition:function(){var b=this.pastInput(),a=Array(b.length+1).join(\"-\");return b+this.upcomingInput()+\"\\n\"+a+\"^\"},test_match:function(b,a){var c,e;this.options.backtrack_lexer&&(e={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,\nlast_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(e.yylloc.range=this.yylloc.range.slice(0)));if(c=b[0].match(/(?:\\r\\n?|\\n).*/g))this.yylineno+=c.length;this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:c?\nc[c.length-1].length-c[c.length-1].match(/\\r?\\n?/)[0].length:this.yylloc.last_column+b[0].length};this.yytext+=b[0];this.match+=b[0];this.matches=b;this.yyleng=this.yytext.length;this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]);this._backtrack=this._more=!1;this._input=this._input.slice(b[0].length);this.matched+=b[0];c=this.performAction.call(this,this.yy,this,a,this.conditionStack[this.conditionStack.length-1]);this.done&&this._input&&(this.done=!1);if(c)return c;\nif(this._backtrack)for(var f in e)this[f]=e[f];return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var b,a,c;this._more||(this.match=this.yytext=\"\");for(var e=this._currentRules(),f=0;f<e.length;f++)if((a=this._input.match(this.rules[e[f]]))&&(!b||a[0].length>b[0].length))if(b=a,c=f,this.options.backtrack_lexer){b=this.test_match(a,e[f]);if(!1!==b)return b;if(this._backtrack)b=!1;else return!1}else if(!this.options.flex)break;return b?(b=this.test_match(b,e[c]),!1!==\nb?b:!1):\"\"===this._input?this.EOF:this.parseError(\"Lexical error on line \"+(this.yylineno+1)+\". Unrecognized text.\\n\"+this.showPosition(),{text:\"\",token:null,line:this.yylineno})},lex:function(){var b=this.next();return b?b:this.lex()},begin:function(b){this.conditionStack.push(b)},popState:function(){return 0<this.conditionStack.length-1?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?\nthis.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(b){b=this.conditionStack.length-1-Math.abs(b||0);return 0<=b?this.conditionStack[b]:\"INITIAL\"},pushState:function(b){this.begin(b)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(b,a,c,e){switch(c){case 0:this.unput(a.yytext);this.pushState(\"DOCUMENT\");break;case 1:return this.pushState(\"MATH\"+(0+!!b.mItexIdentifierMode)),b.startMath=\nthis.matched.length,\"STARTMATH\"+(2*(\"$\"==a.yytext[0])+(\"$\"==a.yytext[1]||\"[\"==a.yytext[1]));case 2:return this.popState(),\"EOF\";case 3:return a.yytext=a.yytext[1],\"TEXT\";case 4:return b.escapeXML&&(a.yytext=Xa(a.yytext)),\"TEXT\";case 5:return\"TEXT\";case 6:return this.popState(),\"[\";case 7:this.unput(a.yytext);this.popState();this.popState();break;case 8:return\"TEXTOPTARG\";case 9:return this.popState(),\"]\";case 10:return\"{\";case 11:return\"TEXTARG\";case 12:return this.popState(),\"}\";case 13:return this.popState(),\n\"]\";case 15:return this.popState(),b.endMath=this.matched.length-this.match.length,b.tex=this.matched.substring(b.startMath,b.endMath),\"ENDMATH\"+(2*(\"$\"==a.yytext[0])+(\"$\"==a.yytext[1]||\"]\"==a.yytext[1]));case 16:return\"{\";case 17:return\"}\";case 18:return\"^\";case 19:return\"_\";case 20:return\".\";case 21:return\"COLSEP\";case 22:return\"ROWSEP\";case 23:return\"NUM\";case 24:return\"A\";case 25:return\"OP\";case 26:return\"OP\";case 27:return\"OP\";case 28:return\"OP\";case 29:return\"OP\";case 30:return\"OP\";case 31:return\"OP\";\ncase 32:return\"OP\";case 33:return\"OP\";case 34:return\"OP\";case 35:return\"OP\";case 36:return\"OP\";case 37:return\"OP\";case 38:return\"OP\";case 39:return\"OP\";case 40:return\"OP\";case 41:return\"OP\";case 42:return\"OP\";case 43:return\"OP\";case 44:return\"OP\";case 45:return\"OP\";case 46:return\"OP\";case 47:return\"OP\";case 48:return\"OP\";case 49:return\"OP\";case 50:return\"OP\";case 51:return\"OP\";case 52:return\"OP\";case 53:return\"OP\";case 54:return\"OP\";case 55:return\"OP\";case 56:return\"OP\";case 57:return\"OP\";case 58:return\"OPFS\";\ncase 59:return\"OPFS\";case 60:return\"OP\";case 61:return\"OP\";case 62:return\"OP\";case 63:return\"OP\";case 64:return\"OP\";case 65:return\"OP\";case 66:return\"OP\";case 67:return\"OP\";case 68:return\"OP\";case 69:return\"OP\";case 70:return\"OP\";case 71:return\"OP\";case 72:return\"OP\";case 73:return\"OP\";case 74:return\"OP\";case 75:return\"OP\";case 76:return\"OP\";case 77:return\"OP\";case 78:return\"OP\";case 79:return\"OP\";case 80:return\"OP\";case 81:return a.yytext=\"}\",\"OPFS\";case 82:return a.yytext=\"\\u2016\",\"OPFS\";case 83:return a.yytext=\n\"{\",\"OPFS\";case 84:return a.yytext=\"\\u03b6\",\"A\";case 85:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\"\\u21cc\",\"XARROW\";case 86:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\"\\u2192\",\"XARROW\";case 87:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\"\\u21a6\",\"XARROW\";case 88:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\"\\u21cb\",\"XARROW\";case 89:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\n\"\\u2194\",\"XARROW\";case 90:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\"\\u2190\",\"XARROW\";case 91:return a.yytext=\"\\u03be\",\"A\";case 92:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\"\\u21aa\",\"XARROW\";case 93:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\"\\u21a9\",\"XARROW\";case 94:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\"\\u21d2\",\"XARROW\";case 95:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),\na.yytext=\"\\u21d4\",\"XARROW\";case 96:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),a.yytext=\"\\u21d0\",\"XARROW\";case 97:return a.yytext=\"\\u2240\",\"OP\";case 98:return a.yytext=\"\\u2118\",\"A\";case 99:return a.yytext=\"\\u21c0\",\"ACCENT\";case 100:return a.yytext=\"\\u02dc\",\"ACCENT\";case 101:return a.yytext=\"^\",\"ACCENT\";case 102:return a.yytext=\"\\u02c7\",\"ACCENT\";case 103:return a.yytext=\"\\u00af\",\"ACCENT\";case 104:return a.yytext=\"\\u2259\",\"OP\";case 105:return a.yytext=\"\\u2227\",\"OP\";case 106:return a.yytext=\n\"|\",\"OPFS\";case 107:return a.yytext=\"\\u22bb\",\"OP\";case 108:return a.yytext=\"\\u2228\",\"OP\";case 109:return a.yytext=\"\\u21c0\",\"ACCENTNS\";case 110:return a.yytext=\"\\u22ee\",\"OP\";case 111:return a.yytext=\"\\u22a2\",\"OP\";case 112:return a.yytext=\"\\u22b3\",\"OP\";case 113:return a.yytext=\"\\u22b2\",\"OP\";case 114:return a.yytext=\"\\u25b5\",\"OP\";case 115:return a.yytext=\"\\u03d1\",\"A\";case 116:return a.yytext=\"\\u2acc\\ufe00\",\"OP\";case 117:return a.yytext=\"\\u228b\\ufe00\",\"OP\";case 118:return a.yytext=\"\\u2acb\\ufe00\",\"OP\";\ncase 119:return a.yytext=\"\\u228a\\ufe00\",\"OP\";case 120:return a.yytext=\"\\u228a\\ufe00\",\"OP\";case 121:return a.yytext=\"\\u03c2\",\"A\";case 122:return a.yytext=\"\\u03f1\",\"A\";case 123:return a.yytext=\"\\u221d\",\"OP\";case 124:return a.yytext=\"\\u03d6\",\"A\";case 125:return a.yytext=\"\\u03c6\",\"A\";case 126:return a.yytext=\"\\u2205\",\"A\";case 127:return a.yytext=\"\\u03f0\",\"A\";case 128:return a.yytext=\"\\u03b5\",\"A\";case 129:return a.yytext=\"\\u22a8\",\"OP\";case 130:return a.yytext=\"\\u21c8\",\"OPS\";case 131:return a.yytext=\"\\u03c5\",\n\"A\";case 132:return a.yytext=\"\\u228e\",\"OP\";case 133:return a.yytext=\"\\u2a1b\",\"OP\";case 134:return a.yytext=\"\\u21bf\",\"OPS\";case 135:return a.yytext=\"\\u21be\",\"OPS\";case 136:return a.yytext=\"\\u2195\",\"OPS\";case 137:return a.yytext=\"\\u2195\",\"OPS\";case 138:return a.yytext=\"\\u2191\",\"OPS\";case 139:return a.yytext=\"\\u2191\",\"OPS\";case 140:return a.yytext=\"\\u22b5\",\"OP\";case 141:return a.yytext=\"\\u22b4\",\"OP\";case 142:return a.yytext=\"\\u222a\",\"OP\";case 143:return\"UNDERSET\";case 144:return\"UNDEROVERSET\";case 145:return\"UNDERLINE\";\ncase 146:return\"UNDERBRACE\";case 147:return a.yytext=\"\\u22f0\",\"OP\";case 148:return a.yytext=\"\\u2916\",\"OP\";case 149:return a.yytext=\"\\u21a0\",\"OPS\";case 150:return a.yytext=\"\\u219e\",\"OPS\";case 151:return a.yytext=\"\\u222d\",\"OP\";case 152:return a.yytext=\"\\u22b5\",\"OP\";case 153:return a.yytext=\"\\u25b9\",\"OP\";case 154:return a.yytext=\"\\u225c\",\"OP\";case 155:return a.yytext=\"\\u22b4\",\"OP\";case 156:return a.yytext=\"\\u25c3\",\"OP\";case 157:return a.yytext=\"\\u25bf\",\"OP\";case 158:return a.yytext=\"\\u25b5\",\"OP\";case 159:return a.yytext=\n\"\\u292a\",\"OP\";case 160:return a.yytext=\"\\u2929\",\"OP\";case 161:return a.yytext=\"\\u22a4\",\"OP\";case 162:return this.pushState(\"TEXTARG\"),\"TOOLTIP\";case 163:return a.yytext=\"\\u2927\",\"OP\";case 164:return\"TOGGLE\";case 165:return a.yytext=\"\\u2928\",\"OP\";case 166:return a.yytext=\"\\u2192\",\"OPS\";case 167:return a.yytext=\"\\u22a0\",\"OP\";case 168:return a.yytext=\"\\u00d7\",\"OP\";case 169:return a.yytext=\"\\u02dc\",\"ACCENTNS\";case 170:return\"THINSPACE\";case 171:return\"THICKSPACE\";case 172:return a.yytext=\"\\u223c\",\"OP\";\ncase 173:return a.yytext=\"\\u2248\",\"OP\";case 174:return a.yytext=\"\\u03b8\",\"A\";case 175:return a.yytext=\"\\u2234\",\"OP\";case 176:return\"TFRAC\";case 177:return\"TEXTSTYLE\";case 178:return\"TEXTSIZE\";case 179:return a.yytext=\"\\u201d\",\"OPF\";case 180:return a.yytext=\"\\u201c\",\"OPF\";case 181:return a.yytext=\"~\",\"OPS\";case 182:return a.yytext=\"`\",\"OP\";case 183:return a.yytext=\"^\",\"OPS\";case 184:return a.yytext=\"\\u00b4\",\"OP\";case 185:return this.begin(\"TEXTARG\"),\"MTEXT\";case 186:return\"TENSOR\";case 187:return\"TBINOM\";\ncase 188:return a.yytext=\"\\u03c4\",\"A\";case 189:return a.yytext=\"\\u2199\",\"OPS\";case 190:return a.yytext=\"\\u2199\",\"OPS\";case 191:return a.yytext=\"\\u21d9\",\"OPS\";case 192:return a.yytext=\"\\u21d9\",\"OPS\";case 193:return a.yytext=\"\\u221a\",\"OPS\";case 194:return a.yytext=\"\\u2acc\",\"OP\";case 195:return a.yytext=\"\\u228b\",\"OP\";case 196:return a.yytext=\"\\u2ac6\",\"OP\";case 197:return a.yytext=\"\\u2287\",\"OP\";case 198:return a.yytext=\"\\u2283\",\"OP\";case 199:return a.yytext=\"\\u2211\",\"OPM\";case 200:return a.yytext=\"\\u227f\",\n\"OP\";case 201:return a.yytext=\"\\u22e9\",\"OP\";case 202:return a.yytext=\"\\u2ab6\",\"OP\";case 203:return a.yytext=\"\\u2aba\",\"OP\";case 204:return a.yytext=\"\\u2ab0\",\"OP\";case 205:return a.yytext=\"\\u227d\",\"OP\";case 206:return a.yytext=\"\\u2ab8\",\"OP\";case 207:return a.yytext=\"\\u227b\",\"OP\";case 208:return\"SUBSTACK\";case 209:return a.yytext=\"\\u2acb\",\"OP\";case 210:return a.yytext=\"\\u228a\",\"OP\";case 211:return a.yytext=\"\\u2ac5\",\"OP\";case 212:return a.yytext=\"\\u2286\",\"OP\";case 213:return a.yytext=\"\\u2282\",\"OP\";case 214:return this.pushState(\"TEXTARG\"),\n\"STATUSLINE\";case 215:return a.yytext=\"\\u22c6\",\"OP\";case 216:return\"OVERSET\";case 217:return a.yytext=\"\\u2afd\",\"OP\";case 218:return a.yytext=\"\\u25a1\",\"OP\";case 219:return a.yytext=\"\\u2292\",\"OP\";case 220:return a.yytext=\"\\u2290\",\"OP\";case 221:return a.yytext=\"\\u2291\",\"OP\";case 222:return a.yytext=\"\\u228f\",\"OP\";case 223:return this.pushState(\"OPTARG\"),this.pushState(\"TRYOPTARG\"),\"SQRT\";case 224:return a.yytext=\"\\u2294\",\"OP\";case 225:return a.yytext=\"\\u2293\",\"OP\";case 226:return a.yytext=\"\\u2222\",\"OP\";\ncase 227:return a.yytext=\"\\u2660\",\"OP\";case 228:return this.pushState(\"TEXTARG\"),this.pushState(\"TEXTARG\"),this.pushState(\"TEXTARG\"),\"SPACE\";case 229:return a.yytext=\"\\u2323\",\"OP\";case 230:return a.yytext=\"\\u2323\",\"OP\";case 231:return a.yytext=\"\\u2216\",\"OP\";case 232:return a.yytext=\"\\u2322\",\"OP\";case 233:return\"SLASH\";case 234:return a.yytext=\"\\u2243\",\"OP\";case 235:return a.yytext=\"\\u223c\",\"OP\";case 236:return a.yytext=\"\\u03c3\",\"A\";case 237:return a.yytext=\"\\u29e2\",\"OP\";case 238:return a.yytext=\"\\u2225\",\n\"OP\";case 239:return a.yytext=\"\\u2223\",\"OP\";case 240:return a.yytext=\"\\u266f\",\"OP\";case 241:return a.yytext=\"\\u2216\",\"OP\";case 242:return a.yytext=\"\\u292d\",\"OP\";case 243:return a.yytext=\"\\u2198\",\"OPS\";case 244:return a.yytext=\"\\u2198\",\"OPS\";case 245:return a.yytext=\"\\u21d8\",\"OPS\";case 246:return a.yytext=\"\\u21d8\",\"OPS\";case 247:return\"SCRIPTSIZE\";case 248:return\"SCRIPTSCRIPTSIZE\";case 249:return a.yytext=\"\\u22ca\",\"OP\";case 250:return a.yytext=\"\\u27eb\",\"OPFS\";case 251:return a.yytext=\"\\u2019\",\"OPF\";\ncase 252:return this.begin(\"TEXTARG\"),\"ROWSPAN\";case 253:return\"ROWOPTS\";case 254:return this.pushState(\"TEXTARG\"),\"ROWLINES\";case 255:return this.begin(\"TEXTARG\"),\"ROWALIGN\";case 256:return\"ROOT\";case 257:return a.yytext=\"\\u23b1\",\"OP\";case 258:return a.yytext=\"\\u2253\",\"OP\";case 259:return a.yytext=\"\\u27f2\",\"OP\";case 260:return a.yytext=\"\\u22cc\",\"OP\";case 261:return a.yytext=\"\\u219d\",\"OPS\";case 262:return a.yytext=\"\\u21c9\",\"OPS\";case 263:return a.yytext=\"\\u21cc\",\"OPS\";case 264:return a.yytext=\"\\u21c4\",\n\"OPS\";case 265:return a.yytext=\"\\u21c0\",\"OPS\";case 266:return a.yytext=\"\\u21c1\",\"OPS\";case 267:return a.yytext=\"\\u21fe\",\"OPS\";case 268:return a.yytext=\"\\u21a3\",\"OPS\";case 269:return a.yytext=\"\\u2192\",\"OPS\";case 270:return\"RIGHT\";case 271:return a.yytext=\"\\u03c1\",\"A\";case 272:return a.yytext=\"\\u22b3\",\"OP\";case 273:return a.yytext=\"\\u230b\",\"OPFS\";case 274:return a.yytext=\"\\u2930\",\"OP\";case 275:return a.yytext=\"\\u292b\",\"OP\";case 276:return a.yytext=\"\\u2309\",\"OPFS\";case 277:return a.yytext=\"]\",\"OPFS\";\ncase 278:return a.yytext=\"}\",\"OPFS\";case 279:return a.yytext=\"\\u27e9\",\"OPFS\";case 280:return a.yytext=\"\\u27e9\",\"OPFS\";case 281:return a.yytext=\"\\u225f\",\"OP\";case 282:return a.yytext=\"\\u2a0c\",\"OP\";case 283:return\"QUAD\";case 284:return\"QQUAD\";case 285:return a.yytext=\"\\u25aa\",\"OP\";case 286:return a.yytext=\"\\u03c8\",\"A\";case 287:return a.yytext=\"\\u221d\",\"OP\";case 288:return a.yytext=\"\\u220f\",\"OPM\";case 289:return a.yytext=\"\\u220f\",\"OPM\";case 290:return a.yytext=\"\\u2032\",\"OPP\";case 291:return a.yytext=\n\"\\u227e\",\"OP\";case 292:return a.yytext=\"\\u22e8\",\"OP\";case 293:return a.yytext=\"\\u2ab5\",\"OP\";case 294:return a.yytext=\"\\u2ab9\",\"OP\";case 295:return a.yytext=\"\\u2aaf\",\"OP\";case 296:return a.yytext=\"\\u227c\",\"OP\";case 297:return a.yytext=\"\\u2ab7\",\"OP\";case 298:return a.yytext=\"\\u227a\",\"OP\";case 299:return\"PMOD\";case 300:return a.yytext=\"\\u00b1\",\"OP\";case 301:return a.yytext=\"\\u2a25\",\"OP\";case 302:return a.yytext=\"\\u229e\",\"OP\";case 303:return a.yytext=\"\\u22d4\",\"OP\";case 304:return a.yytext=\"\\u03c0\",\"A\";\ncase 305:return a.yytext=\"\\u03d5\",\"A\";case 306:return\"PHANTOM\";case 307:return a.yytext=\"\\u22a5\",\"OP\";case 308:return a.yytext=\"\\u2aa3\",\"OP\";case 309:return a.yytext=\"\\u2202\",\"OP\";case 310:return a.yytext=\"\\u214b\",\"OP\";case 311:return a.yytext=\"\\u2225\",\"OP\";case 312:return this.pushState(\"TEXTARG\"),\"PADDING\";case 313:return\"OVERSET\";case 314:return a.yytext=\"\\u00af\",\"ACCENT\";case 315:return\"OVERBRACE\";case 316:return\"TEXOVER\";case 317:return a.yytext=\"\\u2297\",\"OP\";case 318:return a.yytext=\"\\u2298\",\n\"OP\";case 319:return a.yytext=\"\\u2295\",\"OP\";case 320:return this.begin(\"TEXTARG\"),\"OPERATORNAME\";case 321:return a.yytext=\"\\u2296\",\"OP\";case 322:return a.yytext=\"\\u2134\",\"A\";case 323:return a.yytext=\"\\u03c9\",\"A\";case 324:return a.yytext=\"\\u222e\",\"OP\";case 325:return a.yytext=\"\\u222f\",\"OP\";case 326:return a.yytext=\"\\u2230\",\"OP\";case 327:return a.yytext=\"\\u2299\",\"OP\";case 328:return a.yytext=\"\\u229d\",\"OP\";case 329:return a.yytext=\"\\u29b8\",\"OP\";case 330:return a.yytext=\"\\u2932\",\"OP\";case 331:return a.yytext=\n\"\\u2196\",\"OPS\";case 332:return a.yytext=\"\\u2196\",\"OPS\";case 333:return a.yytext=\"\\u21d6\",\"OPS\";case 334:return a.yytext=\"\\u21d6\",\"OPS\";case 335:return a.yytext=\"\\u22ac\",\"OP\";case 336:return a.yytext=\"\\u22ad\",\"OP\";case 337:return a.yytext=\"\\u03bd\",\"A\";case 338:return a.yytext=\"\\u22ed\",\"OP\";case 339:return a.yytext=\"\\u22eb\",\"OP\";case 340:return a.yytext=\"\\u22ec\",\"OP\";case 341:return a.yytext=\"\\u22ea\",\"OP\";case 342:return a.yytext=\"\\u2289\",\"OP\";case 343:return a.yytext=\"\\u2285\",\"OP\";case 344:return a.yytext=\n\"\\u227f\\u0338\",\"OP\";case 345:return a.yytext=\"\\u2ab0\\u0338\",\"OP\";case 346:return a.yytext=\"\\u2281\",\"OP\";case 347:return a.yytext=\"\\u2288\",\"OP\";case 348:return a.yytext=\"\\u2288\",\"OP\";case 349:return a.yytext=\"\\u2284\",\"OP\";case 350:return a.yytext=\"\\u2244\",\"OP\";case 351:return a.yytext=\"\\u2241\",\"OP\";case 352:return a.yytext=\"\\u2226\",\"OP\";case 353:return a.yytext=\"\\u2224\",\"OP\";case 354:return a.yytext=\"\\u219b\",\"OP\";case 355:return a.yytext=\"\\u2aaf\\u0338\",\"OP\";case 356:return a.yytext=\"\\u2280\",\"OP\";case 357:return a.yytext=\n\"\\u2226\",\"OP\";case 358:return a.yytext=\"\\u220c\",\"OP\";case 359:return a.yytext=\"\\u2209\",\"OP\";case 360:return a.yytext=\"\\u00ac\",\"OP\";case 361:return a.yytext=\"\\u2224\",\"OP\";case 362:return a.yytext=\"\\u226e\",\"OP\";case 363:return a.yytext=\"\\u2a7d\\u0338\",\"OP\";case 364:return a.yytext=\"\\u2a7d\\u0338\",\"OP\";case 365:return a.yytext=\"\\u2270\",\"OP\";case 366:return a.yytext=\"\\u21ae\",\"OP\";case 367:return a.yytext=\"\\u219a\",\"OP\";case 368:return a.yytext=\"\\u220b\",\"OP\";case 369:return a.yytext=\"\\u226f\",\"OP\";case 370:return a.yytext=\n\"\\u2a7e\\u0338\",\"OP\";case 371:return a.yytext=\"\\u2a7e\\u0338\",\"OP\";case 372:return a.yytext=\"\\u2271\",\"OP\";case 373:return a.yytext=\"\\u2204\",\"OP\";case 374:return a.yytext=\"\\u2262\",\"OP\";case 375:return a.yytext=\"\\u2242\\u0338\",\"OP\";case 376:return a.yytext=\"\\u2260\",\"OP\";case 377:return a.yytext=\"\\u292e\",\"OP\";case 378:return a.yytext=\"\\u2931\",\"OP\";case 379:return\"NEGTHICKSPACE\";case 380:return\"NEGSPACE\";case 381:return\"NEGMEDSPACE\";case 382:return a.yytext=\"\\u00ac\",\"OP\";case 383:return a.yytext=\"\\u2197\",\n\"OPS\";case 384:return a.yytext=\"\\u2197\",\"OPS\";case 385:return a.yytext=\"\\u21d7\",\"OPS\";case 386:return a.yytext=\"\\u21d7\",\"OPS\";case 387:return a.yytext=\"\\u2260\",\"OP\";case 388:return a.yytext=\"\\u2247\",\"OP\";case 389:return a.yytext=\"\\u224f\\u0338\",\"OP\";case 390:return a.yytext=\"\\u266e\",\"OP\";case 391:return a.yytext=\"\\u2249\",\"OP\";case 392:return a.yytext=\"\\u2207\",\"OP\";case 393:return a.yytext=\"\\u22ae\",\"OP\";case 394:return a.yytext=\"\\u22af\",\"OP\";case 395:return a.yytext=\"\\u21cf\",\"OP\";case 396:return a.yytext=\n\"\\u21ce\",\"OP\";case 397:return a.yytext=\"\\u21cd\",\"OP\";case 398:return a.yytext=\"\\u224e\\u0338\",\"OP\";case 399:return\"MULTI\";case 400:return a.yytext=\"\\u22b8\",\"OP\";case 401:return a.yytext=\"\\u03bc\",\"A\";case 402:return this.begin(\"TEXTARG\"),\"MTEXT\";case 403:return this.pushState(\"TEXTARG\"),this.pushState(\"TEXTOPTARG\"),this.pushState(\"TRYOPTARG\"),this.pushState(\"TEXTOPTARG\"),this.pushState(\"TRYOPTARG\"),\"MS\";case 404:return a.yytext=\"\\u2213\",\"OP\";case 405:return a.yytext=\"\\u22a7\",\"OP\";case 406:return a.yytext=\n\"mod\",\"MO\";case 407:return this.pushState(\"TEXTARG\"),\"MO\";case 408:return this.pushState(\"TEXTARG\"),\"MN\";case 409:return a.yytext=\"\\u2adb\",\"OP\";case 410:return a.yytext=\"\\u2a2a\",\"OP\";case 411:return a.yytext=\"\\u229f\",\"OP\";case 412:return a.yytext=\"\\u2212\",\"OP\";case 413:return a.yytext=a.yytext.slice(1),\"FM\";case 414:return a.yytext=\"\\u2223\",\"OP\";case 415:return this.pushState(\"TEXTARG\"),\"MI\";case 416:return a.yytext=\"\\u2127\",\"A\";case 417:return a.yytext=\"\\u2127\",\"A\";case 418:return\"MEDSPACE\";case 419:return a.yytext=\n\"\\u2221\",\"OP\";case 420:return\"MATHTT\";case 421:return\"MATHSF\";case 422:return\"MATHSCR\";case 423:return\"MATHRM\";case 424:return\"MATHRLAP\";case 425:return this.begin(\"TEXTARG\"),\"MATHREL\";case 426:return this.pushState(\"TEXTOPTARG\"),this.pushState(\"TRYOPTARG\"),this.pushState(\"TEXTOPTARG\"),this.pushState(\"TRYOPTARG\"),this.pushState(\"TEXTARG\"),\"MATHRAISEBOX\";case 427:return this.begin(\"TEXTARG\"),\"MATHOP\";case 428:return\"MATHIT\";case 429:return\"MATHLLAP\";case 430:return\"MATHIT\";case 431:return\"MATHFRAK\";\ncase 432:return\"MATHFRAK\";case 433:return\"MATHCLAP\";case 434:return\"MATHSCR\";case 435:return\"MATHBSCR\";case 436:return\"MATHBIT\";case 437:return this.begin(\"TEXTARG\"),\"MATHBIN\";case 438:return\"MATHBF\";case 439:return\"MATHBSCR\";case 440:return\"MATHBB\";case 441:return a.yytext=\"\\u21a6\",\"OPS\";case 442:return a.yytext=\"\\u21a6\",\"OPS\";case 443:return a.yytext=\"\\u2268\\ufe00\",\"OP\";case 444:return a.yytext=\"\\u2268\\ufe00\",\"OP\";case 445:return a.yytext=\"\\u22c9\",\"OP\";case 446:return a.yytext=\"<\",\"OP\";case 447:return a.yytext=\n\"\\u2018\",\"OPF\";case 448:return a.yytext=\"\\u25ca\",\"OP\";case 449:return a.yytext=\"\\u2a1c\",\"OP\";case 450:return a.yytext=\"\\u21ac\",\"OPS\";case 451:return a.yytext=\"\\u21ab\",\"OPS\";case 452:return a.yytext=\"\\u27f6\",\"OPS\";case 453:return a.yytext=\"\\u27fc\",\"OPS\";case 454:return a.yytext=\"\\u27f7\",\"OPS\";case 455:return a.yytext=\"\\u27f5\",\"OPS\";case 456:return a.yytext=\"\\u22e6\",\"OP\";case 457:return a.yytext=\"\\u2268\",\"OP\";case 458:return a.yytext=\"\\u2a87\",\"OP\";case 459:return a.yytext=\"\\u2a89\",\"OP\";case 460:return a.yytext=\n\"\\u23b0\",\"OP\";case 461:return a.yytext=\"\\u22d8\",\"OP\";case 462:return a.yytext=\"\\u27ea\",\"OPFS\";case 463:return a.yytext=\"\\u226a\",\"OP\";case 464:return a.yytext=\"\\u22b2\",\"OP\";case 465:return a.yytext=\"\\u230a\",\"OPFS\";case 466:return a.yytext=\"\\u2272\",\"OP\";case 467:return a.yytext=\"\\u2276\",\"OP\";case 468:return a.yytext=\"\\u2a8b\",\"OP\";case 469:return a.yytext=\"\\u22da\",\"OP\";case 470:return a.yytext=\"\\u22d6\",\"OP\";case 471:return a.yytext=\"\\u2a85\",\"OP\";case 472:return a.yytext=\"<\",\"OP\";case 473:return a.yytext=\n\"\\u2a7d\",\"OP\";case 474:return a.yytext=\"\\u2266\",\"OP\";case 475:return a.yytext=\"\\u2264\",\"OP\";case 476:return a.yytext=\"\\u27f3\",\"OP\";case 477:return a.yytext=\"\\u22cb\",\"OP\";case 478:return a.yytext=\"\\u219c\",\"OPS\";case 479:return a.yytext=\"\\u21ad\",\"OPS\";case 480:return a.yytext=\"\\u21cb\",\"OPS\";case 481:return a.yytext=\"\\u21ff\",\"OPS\";case 482:return a.yytext=\"\\u21c6\",\"OPS\";case 483:return a.yytext=\"\\u2194\",\"OPS\";case 484:return a.yytext=\"\\u21c7\",\"OPS\";case 485:return a.yytext=\"\\u21bc\",\"OPS\";case 486:return a.yytext=\n\"\\u21bd\",\"OPS\";case 487:return a.yytext=\"\\u21fd\",\"OPS\";case 488:return a.yytext=\"\\u21a2\",\"OPS\";case 489:return a.yytext=\"\\u2190\",\"OPS\";case 490:return\"LEFT\";case 491:return a.yytext=\"\\u2264\",\"OP\";case 492:return a.yytext=\"\\u2026\",\"OP\";case 493:return a.yytext=\"\\u2308\",\"OPFS\";case 494:return a.yytext=\"[\",\"OPFS\";case 495:return a.yytext=\"{\",\"OPFS\";case 496:return a.yytext=\"\\u27e8\",\"OPFS\";case 497:return a.yytext=\"\\u27e8\",\"OPFS\";case 498:return a.yytext=\"\\u03bb\",\"A\";case 499:return a.yytext=\"\\u223b\",\n\"OP\";case 500:return a.yytext=\"\\u03ba\",\"A\";case 501:return a.yytext=\"\\u0237\",\"A\";case 502:return this.pushState(\"TEXTARG\"),\"MN\";case 503:return a.yytext=\"\\u03b9\",\"A\";case 504:return a.yytext=\"\\u214b\",\"OP\";case 505:return a.yytext=\"\\u2a18\",\"OP\";case 506:return a.yytext=\"\\u2a3d\",\"OP\";case 507:return a.yytext=\"\\u2a3c\",\"OP\";case 508:return a.yytext=\"\\u2229\",\"OP\";case 509:return a.yytext=\"\\u2af4\",\"OP\";case 510:return a.yytext=\"\\u22ba\",\"OP\";case 511:return a.yytext=\"\\u222b\",\"OP\";case 512:return a.yytext=\n\"\\u2a1a\",\"OP\";case 513:return a.yytext=\"\\u2a19\",\"OP\";case 514:return a.yytext=\"\\u2a0d\",\"OP\";case 515:return a.yytext=\"\\u2a0e\",\"OP\";case 516:return a.yytext=\"\\u222b\",\"OP\";case 517:return a.yytext=\"\\u221e\",\"NUM\";case 518:return a.yytext=\"\\u221e\",\"NUM\";case 519:return a.yytext=a.yytext.slice(1),\"FM\";case 520:return a.yytext=\"\\u220a\",\"OP\";case 521:return a.yytext=\"\\u21d2\",\"OPS\";case 522:return a.yytext=\"\\u21d0\",\"OPS\";case 523:return a.yytext=\"\\u0131\",\"A\";case 524:return a.yytext=\"\\u222c\",\"OP\";case 525:return a.yytext=\n\"\\u222d\",\"OP\";case 526:return a.yytext=\"\\u2a0c\",\"OP\";case 527:return a.yytext=\"\\u27fa\",\"OPS\";case 528:return a.yytext=\"\\u210f\",\"A\";case 529:return this.pushState(\"TEXTARG\"),\"HREF\";case 530:return a.yytext=\"\\u21aa\",\"OPS\";case 531:return a.yytext=\"\\u21a9\",\"OPS\";case 532:return a.yytext=\"\\u2926\",\"OP\";case 533:return a.yytext=\"\\u2925\",\"OP\";case 534:return a.yytext=\"\\u2661\",\"OP\";case 535:return a.yytext=\"\\u210f\",\"A\";case 536:return a.yytext=\"^\",\"ACCENTNS\";case 537:return a.yytext=\"\\u2269\\ufe00\",\"OP\";case 538:return a.yytext=\n\"\\u2269\\ufe00\",\"OP\";case 539:return a.yytext=\"\\u2273\",\"OP\";case 540:return a.yytext=\"\\u2277\",\"OP\";case 541:return a.yytext=\"\\u2a8c\",\"OP\";case 542:return a.yytext=\"\\u22db\",\"OP\";case 543:return a.yytext=\"\\u22d7\",\"OP\";case 544:return a.yytext=\"\\u2a86\",\"OP\";case 545:return a.yytext=\">\",\"OP\";case 546:return a.yytext=\">\",\"OP\";case 547:return a.yytext=\"\\u22e7\",\"OP\";case 548:return a.yytext=\"\\u2269\",\"OP\";case 549:return a.yytext=\"\\u2a88\",\"OP\";case 550:return a.yytext=\"\\u2a8a\",\"OP\";case 551:return a.yytext=\n\"\\u2137\",\"A\";case 552:return a.yytext=\"\\u22d9\",\"OP\";case 553:return a.yytext=\"\\u226b\",\"OP\";case 554:return a.yytext=\"\\u2a7e\",\"OP\";case 555:return a.yytext=\"\\u2267\",\"OP\";case 556:return a.yytext=\"\\u2265\",\"OP\";case 557:return a.yytext=\"\\u2265\",\"OP\";case 558:return a.yytext=\"\\u03b3\",\"A\";case 559:return a.yytext=\"\\u2322\",\"OP\";case 560:return this.pushState(\"TEXTARG\"),\"FRAME\";case 561:return\"FRAC\";case 562:return a.yytext=\"\\u2add\",\"OP\";case 563:return a.yytext=\"\\u2add\\u0338\",\"OP\";case 564:return a.yytext=\n\"\\u2200\",\"OP\";case 565:return a.yytext=\"\\u266d\",\"OP\";case 566:return a.yytext=\"\\u292c\",\"OP\";case 567:return a.yytext=\"\\u292f\",\"OP\";case 568:return a.yytext=\"\\u2252\",\"OP\";case 569:return a.yytext=\"\\u2203\",\"OP\";case 570:return a.yytext=\"\\u00f0\",\"A\";case 571:return a.yytext=\"\\u00f0\",\"A\";case 572:return a.yytext=\"\\u03b7\",\"A\";case 573:return a.yytext=\"\\u2261\",\"OP\";case 574:return this.pushState(\"TEXTARG\"),\"EQROWS\";case 575:return this.pushState(\"TEXTARG\"),\"EQCOLS\";case 576:return a.yytext=\"\\u2a95\",\"OP\";\ncase 577:return a.yytext=\"\\u2a96\",\"OP\";case 578:return a.yytext=\"\\u2242\",\"OP\";case 579:return a.yytext=\"\\u2255\",\"OP\";case 580:return a.yytext=\"\\u2255\",\"OP\";case 581:return a.yytext=\"\\u2256\",\"OP\";case 582:return a.yytext=\"\\u03f5\",\"A\";case 583:return\"EVMATRIX\";case 584:return\"EALIGNED\";case 585:return\"ESMALLMATRIX\";case 586:return\"EPMATRIX\";case 587:return\"EMATRIX\";case 588:return\"EGATHERED\";case 589:return\"ECASES\";case 590:return\"EBMATRIX\";case 591:return\"EARRAY\";case 592:return\"EALIGNED\";case 593:return\"EVVMATRIX\";\ncase 594:return\"EBBMATRIX\";case 595:return\"ETOGGLE\";case 596:return a.yytext=\"\\u2205\",\"A\";case 597:return a.yytext=\"\\u2205\",\"A\";case 598:return a.yytext=\"\\u21aa\",\"OPS\";case 599:return a.yytext=\"\\u2113\",\"A\";case 600:return a.yytext=\"\\u2195\",\"OPS\";case 601:return a.yytext=\"\\u29df\",\"OP\";case 602:return a.yytext=\"\\u2910\",\"OPS\";case 603:return a.yytext=\"\\u2195\",\"OPS\";case 604:return a.yytext=\"\\u21c2\",\"OPS\";case 605:return a.yytext=\"\\u21c3\",\"OPS\";case 606:return a.yytext=\"\\u21ca\",\"OPS\";case 607:return a.yytext=\n\"\\u2193\",\"OPS\";case 608:return a.yytext=\"\\u222c\",\"OP\";case 609:return a.yytext=\"\\u2306\",\"OP\";case 610:return a.yytext=\"\\u2306\",\"OP\";case 611:return a.yytext=\"\\u2026\",\"OP\";case 612:return a.yytext=\"\\u2214\",\"OP\";case 613:return a.yytext=\"\\u2238\",\"OP\";case 614:return a.yytext=\"\\u2251\",\"OP\";case 615:return a.yytext=\"\\u2250\",\"OP\";case 616:return a.yytext=\"\\u02d9\",\"ACCENT\";case 617:return a.yytext=\"\\u22c7\",\"OP\";case 618:return a.yytext=\"\\u00f7\",\"OP\";case 619:return\"DISPLAYSTYLE\";case 620:return a.yytext=\n\"\\u2a08\",\"OPM\";case 621:return a.yytext=\"\\u03dd\",\"A\";case 622:return a.yytext=\"\\u2662\",\"OP\";case 623:return a.yytext=\"\\u22c4\",\"OP\";case 624:return a.yytext=a.yytext.slice(1),\"FM\";case 625:return a.yytext=\"\\u03b4\",\"A\";case 626:return a.yytext=\"\\u00b0\",\"OP\";case 627:return a.yytext=\"\\u2a77\",\"OP\";case 628:return a.yytext=\"\\u22f1\",\"OP\";case 629:return a.yytext=\"\\u0308\",\"ACCENT\";case 630:return a.yytext=\"\\u20db\",\"OP\";case 631:return a.yytext=\"\\u20db\",\"ACCENT\";case 632:return a.yytext=\"\\u20dc\",\"OP\";case 633:return a.yytext=\n\"\\u20dc\",\"ACCENT\";case 634:return a.yytext=\"\\u2021\",\"OP\";case 635:return a.yytext=\"\\u2237\",\"OP\";case 636:return a.yytext=\"\\u290f\",\"OPS\";case 637:return a.yytext=\"\\u22a3\",\"OP\";case 638:return a.yytext=\"\\u290f\",\"OPS\";case 639:return a.yytext=\"\\u290e\",\"OPS\";case 640:return a.yytext=\"\\u2ae3\",\"OP\";case 641:return a.yytext=\"\\u2193\",\"OPS\";case 642:return a.yytext=\"\\u2138\",\"A\";case 643:return a.yytext=\"\\u2020\",\"OP\";case 644:return a.yytext=\"\\u21b7\",\"OP\";case 645:return a.yytext=\"\\u21b6\",\"OP\";case 646:return a.yytext=\n\"\\u293b\",\"OP\";case 647:return a.yytext=\"\\u22cf\",\"OP\";case 648:return a.yytext=\"\\u22ce\",\"OP\";case 649:return a.yytext=\"\\u22df\",\"OP\";case 650:return a.yytext=\"\\u22de\",\"OP\";case 651:return a.yytext=\"\\u228d\",\"OP\";case 652:return a.yytext=\"\\u222a\",\"OP\";case 653:return a.yytext=\"\\u2210\",\"OPM\";case 654:return a.yytext=\"\\u2210\",\"OPM\";case 655:return a.yytext=\"\\u222e\",\"OP\";case 656:return a.yytext=\"\\u2a07\",\"OPM\";case 657:return a.yytext=\"\\u222e\",\"OP\";case 658:return a.yytext=\"\\u2245\",\"OP\";case 659:return a.yytext=\n\"\\u2201\",\"OP\";case 660:return this.begin(\"TEXTARG\"),\"COLSPAN\";case 661:return this.pushState(\"TEXTARG\"),\"COLOR\";case 662:return a.yytext=\"\\u2236\\u223c\",\"OP\";case 663:return a.yytext=\"\\u2254\",\"OP\";case 664:return a.yytext=\"\\u2254\",\"OP\";case 665:return a.yytext=\"\\u2236\\u2248\",\"OP\";case 666:return a.yytext=\":\",\"OP\";case 667:return this.pushState(\"TEXTARG\"),\"COLLINES\";case 668:return this.pushState(\"TEXTARG\"),\"COLLAYOUT\";case 669:return this.begin(\"TEXTARG\"),\"COLALIGN\";case 670:return a.yytext=\"\\u2663\",\n\"OP\";case 671:return a.yytext=\"\\u00af\",\"ACCENT\";case 672:return a.yytext=\"\\u229d\",\"OP\";case 673:return a.yytext=\"\\u229a\",\"OP\";case 674:return a.yytext=\"\\u229b\",\"OP\";case 675:return a.yytext=\"\\u2941\",\"OP\";case 676:return a.yytext=\"\\u2940\",\"OP\";case 677:return a.yytext=\"\\u2257\",\"OP\";case 678:return a.yytext=\"\\u2218\",\"OP\";case 679:return\"TEXCHOOSE\";case 680:return a.yytext=\"\\u03c7\",\"A\";case 681:return a.yytext=\"\\u02c7\",\"ACCENTNS\";case 682:return\"CELLOPTS\";case 683:return a.yytext=\"\\u22ef\",\"OP\";case 684:return a.yytext=\n\"\\u00b7\",\"OP\";case 685:return a.yytext=\"\\u22c5\",\"OP\";case 686:return a.yytext=\"\\u2229\",\"OP\";case 687:return a.yytext=\"\\u2aae\",\"OP\";case 688:return a.yytext=\"\\u224f\",\"OP\";case 689:return a.yytext=\"\\u2022\",\"OP\";case 690:return a.yytext=\"\\u2a32\",\"OP\";case 691:return a.yytext=\"\\u22a0\",\"OP\";case 692:return a.yytext=\"\\u229e\",\"OP\";case 693:return a.yytext=\"\\u229f\",\"OP\";case 694:return\"BOXED\";case 695:return a.yytext=\"\\u22a1\",\"OP\";case 696:return a.yytext=\"\\u29c4\",\"OP\";case 697:return a.yytext=\"\\u29c7\",\"OP\";\ncase 698:return a.yytext=\"\\u29c5\",\"OP\";case 699:return a.yytext=\"\\u29c6\",\"OP\";case 700:return a.yytext=\"\\u22c8\",\"OP\";case 701:return a.yytext=\"\\u22a5\",\"OP\";case 702:return a.yytext=\"\\u22a5\",\"OP\";case 703:return\"MATHBF\";case 704:return a.yytext=\"\\u25b8\",\"OP\";case 705:return a.yytext=\"\\u25c2\",\"OP\";case 706:return a.yytext=\"\\u25be\",\"OP\";case 707:return a.yytext=\"\\u25b4\",\"OP\";case 708:return a.yytext=\"\\u25a0\",\"OP\";case 709:return a.yytext=\"\\u29eb\",\"OP\";case 710:return a.yytext=\"\\u290d\",\"OPS\";case 711:return\"BINOM\";\ncase 712:return a.yytext=\"\\u22c0\",\"OPM\";case 713:return a.yytext=\"\\u22c1\",\"OPM\";case 714:return a.yytext=\"\\u2a04\",\"OPM\";case 715:return a.yytext=\"\\u25b3\",\"OP\";case 716:return a.yytext=\"\\u25bd\",\"OP\";case 717:return a.yytext=\"\\u2a09\",\"OPM\";case 718:return a.yytext=\"\\u2605\",\"OP\";case 719:return a.yytext=\"\\u2a06\",\"OPM\";case 720:return a.yytext=\"\\u2a05\",\"OPM\";case 721:return\"BIG\";case 722:return a.yytext=\"\\u2a02\",\"OPM\";case 723:return a.yytext=\"\\u2a01\",\"OPM\";case 724:return a.yytext=\"\\u2a00\",\"OPM\";case 725:return\"BIGL\";\ncase 726:return a.yytext=\"\\u2afc\",\"OPM\";case 727:return\"BIGG\";case 728:return\"BIGGL\";case 729:return\"BIGG\";case 730:return a.yytext=\"\\u2a03\",\"OPM\";case 731:return a.yytext=\"\\u22c3\",\"OPM\";case 732:return a.yytext=\"\\u25cb\",\"OP\";case 733:return a.yytext=\"\\u22c2\",\"OPM\";case 734:return\"BIG\";case 735:return this.pushState(\"TEXTARG\"),\"BGCOLOR\";case 736:return a.yytext=\"\\u226c\",\"OP\";case 737:return a.yytext=\"\\u2136\",\"A\";case 738:return a.yytext=\"\\u03b2\",\"A\";case 739:return\"BVMATRIX\";case 740:return\"BALIGNED\";\ncase 741:return\"BSMALLMATRIX\";case 742:return\"BPMATRIX\";case 743:return\"BMATRIX\";case 744:return\"BGATHERED\";case 745:return\"BCASES\";case 746:return\"BBMATRIX\";case 747:return this.pushState(\"TEXTARG\"),this.pushState(\"TEXTOPTARG\"),this.pushState(\"TRYOPTARG\"),\"BARRAY\";case 748:return\"BALIGNED\";case 749:return\"BVVMATRIX\";case 750:return\"BBBMATRIX\";case 751:return\"BTOGGLE\";case 752:return a.yytext=\"\\u2235\",\"OP\";case 753:return a.yytext=\"\\u2305\",\"OP\";case 754:return a.yytext=\"\\u00af\",\"ACCENTNS\";case 755:return a.yytext=\n\"\\\\\",\"OP\";case 756:return a.yytext=\"\\u22cd\",\"OP\";case 757:return a.yytext=\"\\u223d\",\"OP\";case 758:return a.yytext=\"\\u2035\",\"OPP\";case 759:return a.yytext=\"\\u03f6\",\"OP\";case 760:return\"TEXATOP\";case 761:return a.yytext=\"\\u224d\",\"OP\";case 762:return a.yytext=\"\\u2217\",\"OP\";case 763:return\"ARRAYOPTS\";case 764:return\"ARRAY\";case 765:return a.yytext=a.yytext.slice(1),\"F\";case 766:return a.yytext=\"\\u224a\",\"OP\";case 767:return a.yytext=\"\\u2248\",\"OP\";case 768:return a.yytext=\"\\u2220\",\"OP\";case 769:return a.yytext=\n\"\\u2a3f\",\"OP\";case 770:return a.yytext=\"\\u03b1\",\"A\";case 771:return this.pushState(\"TEXTARG\"),\"ALIGN\";case 772:return a.yytext=\"\\u2135\",\"A\";case 773:return a.yytext=\"\\u22f0\",\"OP\";case 774:return a.yytext=\"\\u0396\",\"A\";case 775:return a.yytext=\"\\u039e\",\"A\";case 776:return a.yytext=\"\\u22c0\",\"OPM\";case 777:return a.yytext=\"\\u2980\",\"OPFS\";case 778:return a.yytext=\"\\u22aa\",\"OP\";case 779:return a.yytext=\"\\u2016\",\"OPFS\";case 780:return a.yytext=\"\\u22c1\",\"OPM\";case 781:return a.yytext=\"\\u22a9\",\"OP\";case 782:return a.yytext=\n\"\\u2aeb\",\"OP\";case 783:return a.yytext=\"\\u22ab\",\"OP\";case 784:return a.yytext=\"\\u290a\",\"OPS\";case 785:return a.yytext=\"\\u03d2\",\"A\";case 786:return a.yytext=\"\\u03d2\",\"A\";case 787:return a.yytext=\"\\u21d5\",\"OPS\";case 788:return a.yytext=\"\\u21d1\",\"OPS\";case 789:return a.yytext=\"\\u22c3\",\"OPM\";case 790:return a.yytext=\"\\u0398\",\"A\";case 791:return a.yytext=\"\\u03a4\",\"A\";case 792:return a.yytext=\"\\u22d1\",\"OP\";case 793:return a.yytext=\"\\u22d0\",\"OP\";case 794:return a.yytext=\"\\u03a3\",\"A\";case 795:return a.yytext=\n\"\\u21b1\",\"OPS\";case 796:return a.yytext=\"\\u21db\",\"OPS\";case 797:return a.yytext=\"\\u21d2\",\"OPS\";case 798:return a.yytext=\"\\u03a1\",\"A\";case 799:return a.yytext=\"\\u211c\",\"A\";case 800:return a.yytext=\"\\u03a8\",\"A\";case 801:return a.yytext=\"\\u03a0\",\"A\";case 802:return a.yytext=\"\\u03a6\",\"A\";case 803:return a.yytext=\"\\u2aeb\",\"OP\";case 804:return a.yytext=\"\\u2a34\",\"OP\";case 805:return a.yytext=\"\\u2a2d\",\"OP\";case 806:return a.yytext=\"\\u03a9\",\"A\";case 807:return a.yytext=\"\\u039d\",\"A\";case 808:return a.yytext=\n\"\\u039c\",\"A\";case 809:return a.yytext=\"\\u2907\",\"OP\";case 810:return a.yytext=\"\\u2906\",\"OP\";case 811:return a.yytext=\"\\u21b0\",\"OPS\";case 812:return a.yytext=\"\\u27f9\",\"OPS\";case 813:return a.yytext=\"\\u27fa\",\"OPS\";case 814:return a.yytext=\"\\u27f8\",\"OPS\";case 815:return a.yytext=\"\\u21da\",\"OPS\";case 816:return a.yytext=\"\\u21d4\",\"OPS\";case 817:return a.yytext=\"\\u21d0\",\"OPS\";case 818:return a.yytext=\"\\u039b\",\"A\";case 819:return a.yytext=\"\\u039a\",\"A\";case 820:return a.yytext=\"\\u0399\",\"A\";case 821:return a.yytext=\n\"\\u22c2\",\"OPM\";case 822:return a.yytext=\"\\u2111\",\"A\";case 823:return a.yytext=\"\\u0393\",\"A\";case 824:return a.yytext=\"\\u0397\",\"A\";case 825:return a.yytext=\"=\\u2237\",\"OP\";case 826:return a.yytext=\"\\u2212\\u2237\",\"OP\";case 827:return a.yytext=\"=\\u2237\",\"OP\";case 828:return a.yytext=\"=\\u2237\",\"OP\";case 829:return a.yytext=\"=\\u2237\",\"OP\";case 830:return a.yytext=\"\\u21d3\",\"OPS\";case 831:return a.yytext=\"\\u2251\",\"OP\";case 832:return a.yytext=\"\\u22c4\",\"OP\";case 833:return a.yytext=\"\\u0394\",\"A\";case 834:return a.yytext=\n\"\\u2207\",\"OP\";case 835:return a.yytext=\"\\u290b\",\"OPS\";case 836:return a.yytext=\"\\u2ae4\",\"OP\";case 837:return a.yytext=\"\\u22d3\",\"OP\";case 838:return a.yytext=\"\\u2237\\u223c\",\"OP\";case 839:return a.yytext=\"\\u2a74\",\"OP\";case 840:return a.yytext=\"\\u2237\\u2212\",\"OP\";case 841:return a.yytext=\"\\u2237\\u2248\",\"OP\";case 842:return a.yytext=\"\\u2237\",\"OP\";case 843:return a.yytext=\"\\u22d2\",\"OP\";case 844:return a.yytext=\"\\u224e\",\"OP\";case 845:return a.yytext=\"\\u25a1\",\"OP\";case 846:return\"BBIG\";case 847:return\"BBIGL\";\ncase 848:return\"BBIGG\";case 849:return\"BBIGGL\";case 850:return\"BBIGG\";case 851:return\"BBIG\";case 852:return a.yytext=\"\\u0392\",\"A\";case 853:return a.yytext=\"\\u213f\",\"A\";case 854:return a.yytext=\"\\u0391\",\"A\";case 855:return a.yytext=\"\\u212b\",\"A\";case 856:return\"THICKSPACE\";case 857:return\"MEDSPACE\";case 858:return\"THINSPACE\";case 859:return a.yytext=\"&\",\"A\";case 860:return a.yytext=\"%\",\"A\";case 861:return a.yytext=\"$\",\"A\";case 862:return a.yytext=\"#\",\"OP\";case 863:return\"NEGSPACE\";case 864:return\"OPS\";\ncase 865:return\"OPP\";case 866:return\"OPM\";case 867:return\"OPFS\";case 868:return\"OPF\";case 869:return\"OP\";case 870:return\"NUM\";case 871:return\"A\";case 872:return a.yytext=\"\\u2057\",\"OPP\";case 873:return a.yytext=\"\\u2034\",\"OPP\";case 874:return a.yytext=\"\\u2033\",\"OPP\";case 875:return a.yytext=\"\\u2032\",\"OPP\";case 876:return\"HIGH_SURROGATE\";case 877:return\"LOW_SURROGATE\";case 878:return\"BMP_CHARACTER\"}},rules:[/^(?:.)/,/^(?:\\$\\$|\\\\\\[|\\$|\\\\\\()/,/^(?:$)/,/^(?:\\\\[$\\\\])/,/^(?:[<&>])/,/^(?:[^])/,/^(?:\\s*\\[)/,\n/^(?:.)/,/^(?:([^\\\\\\]]|(\\\\[\\\\\\]]))+)/,/^(?:\\])/,/^(?:\\s*\\{)/,/^(?:([^\\\\\\}]|(\\\\[\\\\\\}]))+)/,/^(?:\\})/,/^(?:\\])/,/^(?:\\s+)/,/^(?:\\$\\$|\\\\\\]|\\$|\\\\\\))/,/^(?:\\{)/,/^(?:\\})/,/^(?:\\^)/,/^(?:_)/,/^(?:\\.)/,/^(?:&)/,/^(?:\\\\\\\\)/,/^(?:[0-9]+(?:\\.[0-9]+)?|[\\u0660-\\u0669]+(?:\\u066B[\\u0660-\\u0669]+)?|(?:\\uD835[\\uDFCE-\\uDFD7])+|(?:\\uD835[\\uDFD8-\\uDFE1])+|(?:\\uD835[\\uDFE2-\\uDFEB])+|(?:\\uD835[\\uDFEC-\\uDFF5])+|(?:\\uD835[\\uDFF6-\\uDFFF])+)/,/^(?:[a-zA-Z]+)/,/^(?:\\u2ADD\\u0338)/,/^(?:\\u2ACC\\uFE00)/,/^(?:\\u2ACB\\uFE00)/,/^(?:\\u2AB0\\u0338)/,\n/^(?:\\u2AAF\\u0338)/,/^(?:\\u2AA2\\u0338)/,/^(?:\\u2AA1\\u0338)/,/^(?:\\u2A7E\\u0338)/,/^(?:\\u2A7D\\u0338)/,/^(?:\\u29D0\\u0338)/,/^(?:\\u29CF\\u0338)/,/^(?:\\u2290\\u0338)/,/^(?:\\u228F\\u0338)/,/^(?:\\u228B\\uFE00)/,/^(?:\\u228A\\uFE00)/,/^(?:\\u2283\\u20D2)/,/^(?:\\u2282\\u20D2)/,/^(?:\\u227F\\u0338)/,/^(?:\\u226B\\u0338)/,/^(?:\\u226A\\u0338)/,/^(?:\\u2269\\uFE00)/,/^(?:\\u2268\\uFE00)/,/^(?:\\u2266\\u0338)/,/^(?:\\u224F\\u0338)/,/^(?:\\u224E\\u0338)/,/^(?:\\u2242\\u0338)/,/^(?:\\u223D\\u0331)/,/^(?:\\u2237\\u2248)/,/^(?:\\u2237\\u223C)/,/^(?:\\u2237\\u2212)/,\n/^(?:\\u2236\\u2248)/,/^(?:\\u2236\\u223C)/,/^(?:\\u2212\\u2237)/,/^(?:\\u007C\\u007C\\u007C)/,/^(?:\\u007C\\u007C)/,/^(?:\\u003E\\u003D)/,/^(?:\\u003D\\u2237)/,/^(?:\\u003D\\u2237)/,/^(?:\\u003D\\u003D)/,/^(?:\\u003C\\u003E)/,/^(?:\\u003C\\u003D)/,/^(?:\\u003A\\u003D)/,/^(?:\\u002F\\u003D)/,/^(?:\\u002F\\u002F)/,/^(?:\\u002E\\u002E\\u002E)/,/^(?:\\u002E\\u002E)/,/^(?:\\u002D\\u003E)/,/^(?:\\u002D\\u003D)/,/^(?:\\u002D\\u002D)/,/^(?:\\u002B\\u003D)/,/^(?:\\u002B\\u002B)/,/^(?:\\u002A\\u003D)/,/^(?:\\u002A\\u002A)/,/^(?:\\u0026\\u0026)/,/^(?:\\u0021\\u003D)/,\n/^(?:\\u0021\\u0021)/,/^(?:\\\\\\})/,/^(?:\\\\\\|)/,/^(?:\\\\\\{)/,/^(?:\\\\zeta)/,/^(?:\\\\xrightleftharpoons)/,/^(?:\\\\xrightarrow)/,/^(?:\\\\xmapsto)/,/^(?:\\\\xleftrightharpoons)/,/^(?:\\\\xleftrightarrow)/,/^(?:\\\\xleftarrow)/,/^(?:\\\\xi)/,/^(?:\\\\xhookrightarrow)/,/^(?:\\\\xhookleftarrow)/,/^(?:\\\\xRightarrow)/,/^(?:\\\\xLeftrightarrow)/,/^(?:\\\\xLeftarrow)/,/^(?:\\\\wr)/,/^(?:\\\\wp)/,/^(?:\\\\widevec)/,/^(?:\\\\widetilde)/,/^(?:\\\\widehat)/,/^(?:\\\\widecheck)/,/^(?:\\\\widebar)/,/^(?:\\\\wedgeq)/,/^(?:\\\\wedge)/,/^(?:\\\\vert)/,/^(?:\\\\veebar)/,\n/^(?:\\\\vee)/,/^(?:\\\\vec)/,/^(?:\\\\vdots)/,/^(?:\\\\vdash)/,/^(?:\\\\vartriangleright)/,/^(?:\\\\vartriangleleft)/,/^(?:\\\\vartriangle)/,/^(?:\\\\vartheta)/,/^(?:\\\\varsupsetneqq)/,/^(?:\\\\varsupsetneq)/,/^(?:\\\\varsubsetneqq)/,/^(?:\\\\varsubsetneqq)/,/^(?:\\\\varsubsetneq)/,/^(?:\\\\varsigma)/,/^(?:\\\\varrho)/,/^(?:\\\\varpropto)/,/^(?:\\\\varpi)/,/^(?:\\\\varphi)/,/^(?:\\\\varnothing)/,/^(?:\\\\varkappa)/,/^(?:\\\\varepsilon)/,/^(?:\\\\vDash)/,/^(?:\\\\upuparrows)/,/^(?:\\\\upsilon)/,/^(?:\\\\uplus)/,/^(?:\\\\upint)/,/^(?:\\\\upharpoonright)/,\n/^(?:\\\\upharpoonleft)/,/^(?:\\\\updownarrow)/,/^(?:\\\\updarr)/,/^(?:\\\\uparrow)/,/^(?:\\\\uparr)/,/^(?:\\\\unrhd)/,/^(?:\\\\unlhd)/,/^(?:\\\\union)/,/^(?:\\\\underset)/,/^(?:\\\\underoverset)/,/^(?:\\\\underline)/,/^(?:\\\\underbrace)/,/^(?:\\\\udots)/,/^(?:\\\\twoheadrightarrowtail)/,/^(?:\\\\twoheadrightarrow)/,/^(?:\\\\twoheadleftarrow)/,/^(?:\\\\tripleintegral)/,/^(?:\\\\trianglerighteq)/,/^(?:\\\\triangleright)/,/^(?:\\\\triangleq)/,/^(?:\\\\trianglelefteq)/,/^(?:\\\\triangleleft)/,/^(?:\\\\triangledown)/,/^(?:\\\\triangle)/,/^(?:\\\\towa)/,\n/^(?:\\\\tosa)/,/^(?:\\\\top)/,/^(?:\\\\tooltip)/,/^(?:\\\\tona)/,/^(?:\\\\toggle)/,/^(?:\\\\toea)/,/^(?:\\\\to)/,/^(?:\\\\timesb)/,/^(?:\\\\times)/,/^(?:\\\\tilde)/,/^(?:\\\\thinspace)/,/^(?:\\\\thickspace)/,/^(?:\\\\thicksim)/,/^(?:\\\\thickapprox)/,/^(?:\\\\theta)/,/^(?:\\\\therefore)/,/^(?:\\\\tfrac)/,/^(?:\\\\textstyle)/,/^(?:\\\\textsize)/,/^(?:\\\\textquotedblright)/,/^(?:\\\\textquotedblleft)/,/^(?:\\\\textasciitilde)/,/^(?:\\\\textasciigrave)/,/^(?:\\\\textasciicircumflex)/,/^(?:\\\\textasciiacute)/,/^(?:\\\\text)/,/^(?:\\\\tensor)/,/^(?:\\\\tbinom)/,\n/^(?:\\\\tau)/,/^(?:\\\\swarrow)/,/^(?:\\\\swarr)/,/^(?:\\\\swArrow)/,/^(?:\\\\swArr)/,/^(?:\\\\surd)/,/^(?:\\\\supsetneqq)/,/^(?:\\\\supsetneq)/,/^(?:\\\\supseteqq)/,/^(?:\\\\supseteq)/,/^(?:\\\\supset)/,/^(?:\\\\sum)/,/^(?:\\\\succsim)/,/^(?:\\\\succnsim)/,/^(?:\\\\succneqq)/,/^(?:\\\\succnapprox)/,/^(?:\\\\succeq)/,/^(?:\\\\succcurlyeq)/,/^(?:\\\\succapprox)/,/^(?:\\\\succ)/,/^(?:\\\\substack)/,/^(?:\\\\subsetneqq)/,/^(?:\\\\subsetneq)/,/^(?:\\\\subseteqq)/,/^(?:\\\\subseteq)/,/^(?:\\\\subset)/,/^(?:\\\\statusline)/,/^(?:\\\\star)/,/^(?:\\\\stackrel)/,\n/^(?:\\\\sslash)/,/^(?:\\\\square)/,/^(?:\\\\sqsupseteq)/,/^(?:\\\\sqsupset)/,/^(?:\\\\sqsubseteq)/,/^(?:\\\\sqsubset)/,/^(?:\\\\sqrt)/,/^(?:\\\\sqcup)/,/^(?:\\\\sqcap)/,/^(?:\\\\sphericalangle)/,/^(?:\\\\spadesuit)/,/^(?:\\\\space)/,/^(?:\\\\smile)/,/^(?:\\\\smallsmile)/,/^(?:\\\\smallsetminus)/,/^(?:\\\\smallfrown)/,/^(?:\\\\slash)/,/^(?:\\\\simeq)/,/^(?:\\\\sim)/,/^(?:\\\\sigma)/,/^(?:\\\\shuffle)/,/^(?:\\\\shortparallel)/,/^(?:\\\\shortmid)/,/^(?:\\\\sharp)/,/^(?:\\\\setminus)/,/^(?:\\\\seovnearrow)/,/^(?:\\\\searrow)/,/^(?:\\\\searr)/,/^(?:\\\\seArrow)/,\n/^(?:\\\\seArr)/,/^(?:\\\\scriptsize)/,/^(?:\\\\scriptscriptsize)/,/^(?:\\\\rtimes)/,/^(?:\\\\rrangle)/,/^(?:\\\\rq)/,/^(?:\\\\rowspan)/,/^(?:\\\\rowopts)/,/^(?:\\\\rowlines)/,/^(?:\\\\rowalign)/,/^(?:\\\\root)/,/^(?:\\\\rmoustache)/,/^(?:\\\\risingdotseq)/,/^(?:\\\\righttoleftarrow)/,/^(?:\\\\rightthreetimes)/,/^(?:\\\\rightsquigarrow)/,/^(?:\\\\rightrightarrows)/,/^(?:\\\\rightleftharpoons)/,/^(?:\\\\rightleftarrows)/,/^(?:\\\\rightharpoonup)/,/^(?:\\\\rightharpoondown)/,/^(?:\\\\rightarrowtriangle)/,/^(?:\\\\rightarrowtail)/,/^(?:\\\\rightarrow)/,\n/^(?:\\\\right)/,/^(?:\\\\rho)/,/^(?:\\\\rhd)/,/^(?:\\\\rfloor)/,/^(?:\\\\rdiagovsearrow)/,/^(?:\\\\rdiagovfdiag)/,/^(?:\\\\rceil)/,/^(?:\\\\rbrack)/,/^(?:\\\\rbrace)/,/^(?:\\\\rangle)/,/^(?:\\\\rang)/,/^(?:\\\\questeq)/,/^(?:\\\\quadrupleintegral)/,/^(?:\\\\quad)/,/^(?:\\\\qquad)/,/^(?:\\\\qed)/,/^(?:\\\\psi)/,/^(?:\\\\propto)/,/^(?:\\\\product)/,/^(?:\\\\prod)/,/^(?:\\\\prime)/,/^(?:\\\\precsim)/,/^(?:\\\\precnsim)/,/^(?:\\\\precneqq)/,/^(?:\\\\precnapprox)/,/^(?:\\\\preceq)/,/^(?:\\\\preccurlyeq)/,/^(?:\\\\precapprox)/,/^(?:\\\\prec)/,/^(?:\\\\pmod)/,/^(?:\\\\pm)/,\n/^(?:\\\\plusdot)/,/^(?:\\\\plusb)/,/^(?:\\\\pitchfork)/,/^(?:\\\\pi)/,/^(?:\\\\phi)/,/^(?:\\\\phantom)/,/^(?:\\\\perp)/,/^(?:\\\\partialmeetcontraction)/,/^(?:\\\\partial)/,/^(?:\\\\parr)/,/^(?:\\\\parallel)/,/^(?:\\\\padding)/,/^(?:\\\\overset)/,/^(?:\\\\overline)/,/^(?:\\\\overbrace)/,/^(?:\\\\over)/,/^(?:\\\\otimes)/,/^(?:\\\\oslash)/,/^(?:\\\\oplus)/,/^(?:\\\\operatorname)/,/^(?:\\\\ominus)/,/^(?:\\\\omicron)/,/^(?:\\\\omega)/,/^(?:\\\\oint)/,/^(?:\\\\oiint)/,/^(?:\\\\oiiint)/,/^(?:\\\\odot)/,/^(?:\\\\odash)/,/^(?:\\\\obslash)/,/^(?:\\\\nwovnearrow)/,\n/^(?:\\\\nwarrow)/,/^(?:\\\\nwarr)/,/^(?:\\\\nwArrow)/,/^(?:\\\\nwArr)/,/^(?:\\\\nvdash)/,/^(?:\\\\nvDash)/,/^(?:\\\\nu)/,/^(?:\\\\ntrianglerighteq)/,/^(?:\\\\ntriangleright)/,/^(?:\\\\ntrianglelefteq)/,/^(?:\\\\ntriangleleft)/,/^(?:\\\\nsupseteq)/,/^(?:\\\\nsupset)/,/^(?:\\\\nsuccsim)/,/^(?:\\\\nsucceq)/,/^(?:\\\\nsucc)/,/^(?:\\\\nsubseteqq)/,/^(?:\\\\nsubseteq)/,/^(?:\\\\nsubset)/,/^(?:\\\\nsime)/,/^(?:\\\\nsim)/,/^(?:\\\\nshortparallel)/,/^(?:\\\\nshortmid)/,/^(?:\\\\nrightarrow)/,/^(?:\\\\npreceq)/,/^(?:\\\\nprec)/,/^(?:\\\\nparallel)/,/^(?:\\\\notni)/,\n/^(?:\\\\notin)/,/^(?:\\\\not)/,/^(?:\\\\nmid)/,/^(?:\\\\nless)/,/^(?:\\\\nleqslant)/,/^(?:\\\\nleqq)/,/^(?:\\\\nleq)/,/^(?:\\\\nleftrightarrow)/,/^(?:\\\\nleftarrow)/,/^(?:\\\\ni)/,/^(?:\\\\ngtr)/,/^(?:\\\\ngeqslant)/,/^(?:\\\\ngeqq)/,/^(?:\\\\ngeq)/,/^(?:\\\\nexists)/,/^(?:\\\\nequiv)/,/^(?:\\\\neqsim)/,/^(?:\\\\neq)/,/^(?:\\\\neovsearrow)/,/^(?:\\\\neovnwarrow)/,/^(?:\\\\negthickspace)/,/^(?:\\\\negspace)/,/^(?:\\\\negmedspace)/,/^(?:\\\\neg)/,/^(?:\\\\nearrow)/,/^(?:\\\\nearr)/,/^(?:\\\\neArrow)/,/^(?:\\\\neArr)/,/^(?:\\\\ne)/,/^(?:\\\\ncong)/,/^(?:\\\\nbumpeq)/,\n/^(?:\\\\natural)/,/^(?:\\\\napprox)/,/^(?:\\\\nabla)/,/^(?:\\\\nVdash)/,/^(?:\\\\nVDash)/,/^(?:\\\\nRightarrow)/,/^(?:\\\\nLeftrightarrow)/,/^(?:\\\\nLeftarrow)/,/^(?:\\\\nBumpeq)/,/^(?:\\\\multiscripts)/,/^(?:\\\\multimap)/,/^(?:\\\\mu)/,/^(?:\\\\mtext)/,/^(?:\\\\ms)/,/^(?:\\\\mp)/,/^(?:\\\\models)/,/^(?:\\\\mod)/,/^(?:\\\\mo)/,/^(?:\\\\mn)/,/^(?:\\\\mlcp)/,/^(?:\\\\minusdot)/,/^(?:\\\\minusb)/,/^(?:\\\\minus)/,/^(?:\\\\min)/,/^(?:\\\\mid)/,/^(?:\\\\mi)/,/^(?:\\\\mho)/,/^(?:\\\\mho)/,/^(?:\\\\medspace)/,/^(?:\\\\measuredangle)/,/^(?:\\\\mathtt)/,/^(?:\\\\mathsf)/,\n/^(?:\\\\mathscr)/,/^(?:\\\\mathrm)/,/^(?:\\\\mathrlap)/,/^(?:\\\\mathrel)/,/^(?:\\\\mathraisebox)/,/^(?:\\\\mathop)/,/^(?:\\\\mathmit)/,/^(?:\\\\mathllap)/,/^(?:\\\\mathit)/,/^(?:\\\\mathfrak)/,/^(?:\\\\mathfr)/,/^(?:\\\\mathclap)/,/^(?:\\\\mathcal)/,/^(?:\\\\mathbscr)/,/^(?:\\\\mathbit)/,/^(?:\\\\mathbin)/,/^(?:\\\\mathbf)/,/^(?:\\\\mathbcal)/,/^(?:\\\\mathbb)/,/^(?:\\\\mapsto)/,/^(?:\\\\map)/,/^(?:\\\\lvertneqq)/,/^(?:\\\\lvertneqq)/,/^(?:\\\\ltimes)/,/^(?:\\\\lt)/,/^(?:\\\\lq)/,/^(?:\\\\lozenge)/,/^(?:\\\\lowint)/,/^(?:\\\\looparrowright)/,/^(?:\\\\looparrowleft)/,\n/^(?:\\\\longrightarrow)/,/^(?:\\\\longmapsto)/,/^(?:\\\\longleftrightarrow)/,/^(?:\\\\longleftarrow)/,/^(?:\\\\lnsim)/,/^(?:\\\\lneqq)/,/^(?:\\\\lneq)/,/^(?:\\\\lnapprox)/,/^(?:\\\\lmoustache)/,/^(?:\\\\lll)/,/^(?:\\\\llangle)/,/^(?:\\\\ll)/,/^(?:\\\\lhd)/,/^(?:\\\\lfloor)/,/^(?:\\\\lesssim)/,/^(?:\\\\lessgtr)/,/^(?:\\\\lesseqqgtr)/,/^(?:\\\\lesseqgtr)/,/^(?:\\\\lessdot)/,/^(?:\\\\lessapprox)/,/^(?:\\\\less)/,/^(?:\\\\leqslant)/,/^(?:\\\\leqq)/,/^(?:\\\\leq)/,/^(?:\\\\lefttorightarrow)/,/^(?:\\\\leftthreetimes)/,/^(?:\\\\leftsquigarrow)/,/^(?:\\\\leftrightsquigarrow)/,\n/^(?:\\\\leftrightharpoons)/,/^(?:\\\\leftrightarrowtria\\*)/,/^(?:\\\\leftrightarrows)/,/^(?:\\\\leftrightarrow)/,/^(?:\\\\leftleftarrows)/,/^(?:\\\\leftharpoonup)/,/^(?:\\\\leftharpoondown)/,/^(?:\\\\leftarrowtriangle)/,/^(?:\\\\leftarrowtail)/,/^(?:\\\\leftarrow)/,/^(?:\\\\left)/,/^(?:\\\\le)/,/^(?:\\\\ldots)/,/^(?:\\\\lceil)/,/^(?:\\\\lbrack)/,/^(?:\\\\lbrace)/,/^(?:\\\\langle)/,/^(?:\\\\lang)/,/^(?:\\\\lambda)/,/^(?:\\\\kernelcontraction)/,/^(?:\\\\kappa)/,/^(?:\\\\jmath)/,/^(?:\\\\itexnum)/,/^(?:\\\\iota)/,/^(?:\\\\invamp)/,/^(?:\\\\intx)/,/^(?:\\\\intprodr)/,\n/^(?:\\\\intprod)/,/^(?:\\\\intersection)/,/^(?:\\\\interleave)/,/^(?:\\\\intercal)/,/^(?:\\\\integral)/,/^(?:\\\\intcup)/,/^(?:\\\\intcap)/,/^(?:\\\\intbar)/,/^(?:\\\\intBar)/,/^(?:\\\\int)/,/^(?:\\\\infty)/,/^(?:\\\\infinity)/,/^(?:\\\\inf)/,/^(?:\\\\in)/,/^(?:\\\\implies)/,/^(?:\\\\impliedby)/,/^(?:\\\\imath)/,/^(?:\\\\iint)/,/^(?:\\\\iiint)/,/^(?:\\\\iiiint)/,/^(?:\\\\iff)/,/^(?:\\\\hslash)/,/^(?:\\\\href)/,/^(?:\\\\hookrightarrow)/,/^(?:\\\\hookleftarrow)/,/^(?:\\\\hkswarow)/,/^(?:\\\\hksearow)/,/^(?:\\\\heartsuit)/,/^(?:\\\\hbar)/,/^(?:\\\\hat)/,/^(?:\\\\gvertneqq)/,\n/^(?:\\\\gvertneqq)/,/^(?:\\\\gtrsim)/,/^(?:\\\\gtrless)/,/^(?:\\\\gtreqqless)/,/^(?:\\\\gtreqless)/,/^(?:\\\\gtrdot)/,/^(?:\\\\gtrapprox)/,/^(?:\\\\gt)/,/^(?:\\\\greater)/,/^(?:\\\\gnsim)/,/^(?:\\\\gneqq)/,/^(?:\\\\gneq)/,/^(?:\\\\gnapprox)/,/^(?:\\\\gimel)/,/^(?:\\\\ggg)/,/^(?:\\\\gg)/,/^(?:\\\\geqslant)/,/^(?:\\\\geqq)/,/^(?:\\\\geq)/,/^(?:\\\\ge)/,/^(?:\\\\gamma)/,/^(?:\\\\frown)/,/^(?:\\\\frame)/,/^(?:\\\\frac)/,/^(?:\\\\forksnot)/,/^(?:\\\\forks)/,/^(?:\\\\forall)/,/^(?:\\\\flat)/,/^(?:\\\\fdiagovrdiag)/,/^(?:\\\\fdiagovnearrow)/,/^(?:\\\\fallingdotseq)/,\n/^(?:\\\\exists)/,/^(?:\\\\eth)/,/^(?:\\\\eth)/,/^(?:\\\\eta)/,/^(?:\\\\equiv)/,/^(?:\\\\equalrows)/,/^(?:\\\\equalcols)/,/^(?:\\\\eqslantless)/,/^(?:\\\\eqslantgtr)/,/^(?:\\\\eqsim)/,/^(?:\\\\eqqcolon)/,/^(?:\\\\eqcolon)/,/^(?:\\\\eqcirc)/,/^(?:\\\\epsilon)/,/^(?:\\\\end\\{vmatrix\\})/,/^(?:\\\\end\\{split\\})/,/^(?:\\\\end\\{smallmatrix\\})/,/^(?:\\\\end\\{pmatrix\\})/,/^(?:\\\\end\\{matrix\\})/,/^(?:\\\\end\\{gathered\\})/,/^(?:\\\\end\\{cases\\})/,/^(?:\\\\end\\{bmatrix\\})/,/^(?:\\\\end\\{array\\})/,/^(?:\\\\end\\{aligned\\})/,/^(?:\\\\end\\{Vmatrix\\})/,/^(?:\\\\end\\{Bmatrix\\})/,\n/^(?:\\\\endtoggle)/,/^(?:\\\\emptyset)/,/^(?:\\\\empty)/,/^(?:\\\\embedsin)/,/^(?:\\\\ell)/,/^(?:\\\\duparr)/,/^(?:\\\\dualmap)/,/^(?:\\\\drbkarrow)/,/^(?:\\\\downuparrow)/,/^(?:\\\\downharpoonright)/,/^(?:\\\\downharpoonleft)/,/^(?:\\\\downdownarrows)/,/^(?:\\\\downarrow)/,/^(?:\\\\doubleintegral)/,/^(?:\\\\doublebarwedge)/,/^(?:\\\\doublebarwedge)/,/^(?:\\\\dots)/,/^(?:\\\\dotplus)/,/^(?:\\\\dotminus)/,/^(?:\\\\doteqdot)/,/^(?:\\\\doteq)/,/^(?:\\\\dot)/,/^(?:\\\\divideontimes)/,/^(?:\\\\div)/,/^(?:\\\\displaystyle)/,/^(?:\\\\disjquant)/,/^(?:\\\\digamma)/,\n/^(?:\\\\diamondsuit)/,/^(?:\\\\diamond)/,/^(?:\\\\det|\\\\gcd|\\\\liminf|\\\\limsup|\\\\lim|\\\\max|\\\\Pr|\\\\sup)/,/^(?:\\\\delta)/,/^(?:\\\\degree)/,/^(?:\\\\ddotseq)/,/^(?:\\\\ddots)/,/^(?:\\\\ddot)/,/^(?:\\\\dddot)/,/^(?:\\\\dddot)/,/^(?:\\\\ddddot)/,/^(?:\\\\ddddot)/,/^(?:\\\\ddagger)/,/^(?:\\\\dblcolon)/,/^(?:\\\\dbkarow)/,/^(?:\\\\dashv)/,/^(?:\\\\dashrightarrow)/,/^(?:\\\\dashleftarrow)/,/^(?:\\\\dashV)/,/^(?:\\\\darr)/,/^(?:\\\\daleth)/,/^(?:\\\\dagger)/,/^(?:\\\\curvearrowright)/,/^(?:\\\\curvearrowleft)/,/^(?:\\\\curvearrowbotright)/,/^(?:\\\\curlywedge)/,\n/^(?:\\\\curlyvee)/,/^(?:\\\\curlyeqsucc)/,/^(?:\\\\curlyeqprec)/,/^(?:\\\\cupdot)/,/^(?:\\\\cup)/,/^(?:\\\\coproduct)/,/^(?:\\\\coprod)/,/^(?:\\\\contourintegral)/,/^(?:\\\\conjquant)/,/^(?:\\\\conint)/,/^(?:\\\\cong)/,/^(?:\\\\complement)/,/^(?:\\\\colspan)/,/^(?:\\\\color)/,/^(?:\\\\colonsim)/,/^(?:\\\\coloneqq)/,/^(?:\\\\coloneq)/,/^(?:\\\\colonapprox)/,/^(?:\\\\colon)/,/^(?:\\\\collines)/,/^(?:\\\\collayout)/,/^(?:\\\\colalign)/,/^(?:\\\\clubsuit)/,/^(?:\\\\closure)/,/^(?:\\\\circleddash)/,/^(?:\\\\circledcirc)/,/^(?:\\\\circledast)/,/^(?:\\\\circlearrowright)/,\n/^(?:\\\\circlearrowleft)/,/^(?:\\\\circeq)/,/^(?:\\\\circ)/,/^(?:\\\\choose)/,/^(?:\\\\chi)/,/^(?:\\\\check)/,/^(?:\\\\cellopts)/,/^(?:\\\\cdots)/,/^(?:\\\\cdotp)/,/^(?:\\\\cdot)/,/^(?:\\\\cap)/,/^(?:\\\\bumpeqq)/,/^(?:\\\\bumpeq)/,/^(?:\\\\bullet)/,/^(?:\\\\btimes)/,/^(?:\\\\boxtimes)/,/^(?:\\\\boxplus)/,/^(?:\\\\boxminus)/,/^(?:\\\\boxed)/,/^(?:\\\\boxdot)/,/^(?:\\\\boxdiag)/,/^(?:\\\\boxcircle)/,/^(?:\\\\boxbslash)/,/^(?:\\\\boxast)/,/^(?:\\\\bowtie)/,/^(?:\\\\bottom)/,/^(?:\\\\bot)/,/^(?:\\\\boldsymbol)/,/^(?:\\\\blacktriangleright)/,/^(?:\\\\blacktriangleleft)/,\n/^(?:\\\\blacktriangledown)/,/^(?:\\\\blacktriangle)/,/^(?:\\\\blacksquare)/,/^(?:\\\\blacklozenge)/,/^(?:\\\\bkarow)/,/^(?:\\\\binom)/,/^(?:\\\\bigwedge)/,/^(?:\\\\bigvee)/,/^(?:\\\\biguplus)/,/^(?:\\\\bigtriangleup)/,/^(?:\\\\bigtriangledown)/,/^(?:\\\\bigtimes)/,/^(?:\\\\bigstar)/,/^(?:\\\\bigsqcup)/,/^(?:\\\\bigsqcap)/,/^(?:\\\\bigr)/,/^(?:\\\\bigotimes)/,/^(?:\\\\bigoplus)/,/^(?:\\\\bigodot)/,/^(?:\\\\bigl)/,/^(?:\\\\biginterleave)/,/^(?:\\\\biggr)/,/^(?:\\\\biggl)/,/^(?:\\\\bigg)/,/^(?:\\\\bigcupdot)/,/^(?:\\\\bigcup)/,/^(?:\\\\bigcirc)/,/^(?:\\\\bigcap)/,\n/^(?:\\\\big)/,/^(?:\\\\bgcolor)/,/^(?:\\\\between)/,/^(?:\\\\beth)/,/^(?:\\\\beta)/,/^(?:\\\\begin\\{vmatrix\\})/,/^(?:\\\\begin\\{split\\})/,/^(?:\\\\begin\\{smallmatrix\\})/,/^(?:\\\\begin\\{pmatrix\\})/,/^(?:\\\\begin\\{matrix\\})/,/^(?:\\\\begin\\{gathered\\})/,/^(?:\\\\begin\\{cases\\})/,/^(?:\\\\begin\\{bmatrix\\})/,/^(?:\\\\begin\\{array\\})/,/^(?:\\\\begin\\{aligned\\})/,/^(?:\\\\begin\\{Vmatrix\\})/,/^(?:\\\\begin\\{Bmatrix\\})/,/^(?:\\\\begintoggle)/,/^(?:\\\\because)/,/^(?:\\\\barwedge)/,/^(?:\\\\bar)/,/^(?:\\\\backslash)/,/^(?:\\\\backsimeq)/,/^(?:\\\\backsim)/,\n/^(?:\\\\backprime)/,/^(?:\\\\backepsilon)/,/^(?:\\\\atop)/,/^(?:\\\\asymp)/,/^(?:\\\\ast)/,/^(?:\\\\arrayopts)/,/^(?:\\\\array)/,/^(?:\\\\arccos|\\\\arcsin|\\\\arctan|\\\\arg|\\\\cosh|\\\\cos|\\\\coth|\\\\cot|\\\\csc|\\\\deg|\\\\dim|\\\\exp|\\\\hom|\\\\ker|\\\\lg|\\\\ln|\\\\log|\\\\sec|\\\\sinh|\\\\sin|\\\\tanh|\\\\tan)/,/^(?:\\\\approxeq)/,/^(?:\\\\approx)/,/^(?:\\\\angle)/,/^(?:\\\\amalg)/,/^(?:\\\\alpha)/,/^(?:\\\\align)/,/^(?:\\\\aleph)/,/^(?:\\\\adots)/,/^(?:\\\\Zeta)/,/^(?:\\\\Xi)/,/^(?:\\\\Wedge)/,/^(?:\\\\Vvert)/,/^(?:\\\\Vvdash)/,/^(?:\\\\Vert)/,/^(?:\\\\Vee)/,/^(?:\\\\Vdash)/,\n/^(?:\\\\Vbar)/,/^(?:\\\\VDash)/,/^(?:\\\\Uuparrow)/,/^(?:\\\\Upsilon)/,/^(?:\\\\Upsi)/,/^(?:\\\\Updownarrow)/,/^(?:\\\\Uparrow)/,/^(?:\\\\Union)/,/^(?:\\\\Theta)/,/^(?:\\\\Tau)/,/^(?:\\\\Supset)/,/^(?:\\\\Subset)/,/^(?:\\\\Sigma)/,/^(?:\\\\Rsh)/,/^(?:\\\\Rrightarrow)/,/^(?:\\\\Rightarrow)/,/^(?:\\\\Rho)/,/^(?:\\\\Re)/,/^(?:\\\\Psi)/,/^(?:\\\\Pi)/,/^(?:\\\\Phi)/,/^(?:\\\\Perp)/,/^(?:\\\\Otimes)/,/^(?:\\\\Oplus)/,/^(?:\\\\Omega)/,/^(?:\\\\Nu)/,/^(?:\\\\Mu)/,/^(?:\\\\Mapsto)/,/^(?:\\\\Mapsfrom)/,/^(?:\\\\Lsh)/,/^(?:\\\\Longrightarrow)/,/^(?:\\\\Longleftrightarrow)/,\n/^(?:\\\\Longleftarrow)/,/^(?:\\\\Lleftarrow)/,/^(?:\\\\Leftrightarrow)/,/^(?:\\\\Leftarrow)/,/^(?:\\\\Lambda)/,/^(?:\\\\Kappa)/,/^(?:\\\\Iota)/,/^(?:\\\\Intersection)/,/^(?:\\\\Im)/,/^(?:\\\\Gamma)/,/^(?:\\\\Eta)/,/^(?:\\\\Eqqcolon)/,/^(?:\\\\Eqcolon)/,/^(?:\\\\Eqcolon)/,/^(?:\\\\Eqcolon)/,/^(?:\\\\Eqcolon)/,/^(?:\\\\Downarrow)/,/^(?:\\\\Doteq)/,/^(?:\\\\Diamond)/,/^(?:\\\\Delta)/,/^(?:\\\\Del)/,/^(?:\\\\Ddownarrow)/,/^(?:\\\\Dashv)/,/^(?:\\\\Cup)/,/^(?:\\\\Colonsim)/,/^(?:\\\\Coloneqq)/,/^(?:\\\\Coloneq)/,/^(?:\\\\Colonapprox)/,/^(?:\\\\Colon)/,/^(?:\\\\Cap)/,\n/^(?:\\\\Bumpeq)/,/^(?:\\\\Box)/,/^(?:\\\\Bigr)/,/^(?:\\\\Bigl)/,/^(?:\\\\Biggr)/,/^(?:\\\\Biggl)/,/^(?:\\\\Bigg)/,/^(?:\\\\Big)/,/^(?:\\\\Beta)/,/^(?:\\\\BbbPi)/,/^(?:\\\\Alpha)/,/^(?:\\\\AA)/,/^(?:\\\\;)/,/^(?:\\\\:)/,/^(?:\\\\,)/,/^(?:\\\\&)/,/^(?:\\\\%)/,/^(?:\\\\\\$)/,/^(?:\\\\#)/,/^(?:\\\\!)/,/^(?:[\\u007E\\u00AF\\u02C6\\u02C7\\u02C9\\u02CD\\u02DC\\u02F7\\u0302\\u203E\\u2044\\u2190-\\u2199\\u219C-\\u21AD\\u21AF-\\u21B5\\u21B9\\u21BC-\\u21CC\\u21D0-\\u21DD\\u21E0-\\u21F0\\u21F3\\u21F5\\u21F6\\u21FD-\\u21FF\\u2215\\u221A\\u23B4\\u23B5\\u23DC-\\u23E1\\u27F0\\u27F1\\u27F5-\\u27FF\\u290A-\\u2910\\u2912\\u2913\\u2921\\u2922\\u294E-\\u2961\\u296E\\u296F\\u2B45\\u2B46])/,\n/^(?:[\\u2032-\\u2035\\u2057])/,/^(?:[\\u220F-\\u2211\\u22C0-\\u22C3\\u2A00-\\u2A0A\\u2A10-\\u2A14\\u2AFC\\u2AFF])/,/^(?:[\\u0028\\u0029\\u005B\\u005D\\u007C\\u2016\\u2308-\\u230B\\u2329\\u232A\\u2772\\u2773\\u27E6-\\u27EF\\u2980\\u2983-\\u2998\\u29FC\\u29FD])/,/^(?:[\\u2018\\u2019\\u201C\\u201D])/,/^(?:[\\u0021-\\u0023\\u002A-\\u002D\\u002F\\u003A-\\u0040\\u0060\\u00A8\\u00AA\\u00AC\\u00B0-\\u00B4\\u00B7-\\u00BA\\u00D7\\u00F7\\u02CA\\u02CB\\u02D8-\\u02DA\\u02DD\\u0311\\u03F6\\u201A\\u201B\\u201E-\\u2022\\u2026\\u2036\\u2037\\u2043\\u2061-\\u2064\\u20DB\\u20DC\\u2145\\u2146\\u214B\\u219A\\u219B\\u21AE\\u21B6-\\u21B8\\u21BA\\u21BB\\u21CD-\\u21CF\\u21DE\\u21DF\\u21F1\\u21F2\\u21F4\\u21F7-\\u21FC\\u2200-\\u2204\\u2206-\\u220E\\u2212-\\u2214\\u2216-\\u2219\\u221B-\\u221D\\u221F-\\u22BF\\u22C4-\\u22FF\\u2305\\u2306\\u2322\\u2323\\u23B0\\u23B1\\u25A0\\u25A1\\u25AA\\u25AB\\u25AD-\\u25B9\\u25BC-\\u25CF\\u25D6\\u25D7\\u25E6\\u2605\\u2660-\\u2663\\u266D-\\u266F\\u2758\\u27F2\\u27F3\\u2900-\\u2909\\u2911\\u2914-\\u2920\\u2923-\\u294D\\u2962-\\u296D\\u2970-\\u297F\\u2981\\u2982\\u2999-\\u29D9\\u29DB-\\u29FB\\u29FE\\u29FF\\u2A0B-\\u2A0F\\u2A15-\\u2ADB\\u2ADD-\\u2AFB\\u2AFD\\u2AFE])/,\n/^(?:\\u221E)/,/^(?:[\\u0041-\\u005A\\u0061-\\u007A\\u00F0\\u0131\\u0237\\u0391-\\u03A1\\u03A3\\u03A4\\u03A6-\\u03A9\\u03B1-\\u03C9\\u03D0-\\u03D2\\u03D5\\u03D6\\u03DA-\\u03DD\\u03E0\\u03E1\\u03F0\\u03F1\\u03F4\\u03F5\\u0428\\u0608\\u0627-\\u063A\\u2102\\u210A-\\u210D\\u210F-\\u2113\\u2115\\u2118-\\u211D\\u2124\\u2127\\u2128\\u212B-\\u212D\\u212F-\\u2131\\u2133-\\u2138\\u213C\\u213D\\u213F\\u2205]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB\\uDEF0\\uDEF1]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDFCB])/,\n/^(?:'''')/,/^(?:''')/,/^(?:'')/,/^(?:')/,/^(?:[\\uD800-\\uDBFF])/,/^(?:[\\uDC00-\\uDFFF])/,/^(?:.)/],conditions:{MATH0:{rules:[14,15,16,17,18,19,20,21,22,23,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,\n131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,\n257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,\n383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,\n509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,\n635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,\n761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878],inclusive:!0},MATH1:{rules:[14,\n15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,\n162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,\n288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,\n414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,\n540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,\n666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,\n792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878],inclusive:!0},OPTARG:{rules:[13,14,15,16,17,18,19,20,21,22,23,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,\n55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,\n192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,\n318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,\n444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,\n570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,\n696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,\n822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878],inclusive:!0},DOCUMENT:{rules:[1,2,3,4,5],inclusive:!1},TRYOPTARG:{rules:[6,7],inclusive:!1},TEXTOPTARG:{rules:[8,9],inclusive:!1},TEXTARG:{rules:[10,11,12],inclusive:!1},INITIAL:{rules:[0,14,15,16,17,18,19,20,21,22,23,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,\n43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,\n183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,\n309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,\n435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,\n561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,\n687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,\n813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878],inclusive:!0}}}}();qb.lexer=lc;Ib.prototype=qb;qb.Parser=Ib;return new Ib}();\n\"undefined\"!==typeof require&&\"undefined\"!==typeof exports&&(exports.setDOMParser=function(Xa){TeXZilla.setDOMParser(Xa)},exports.setXMLSerializer=function(Xa){TeXZilla.setXMLSerializer(Xa)},exports.setSafeMode=function(Xa){TeXZilla.setSafeMode(Xa)},exports.setItexIdentifierMode=function(Xa){TeXZilla.setItexIdentifierMode(Xa)},exports.getTeXSource=function(){return TeXZilla.getTeXSource.apply(TeXZilla,arguments)},exports.toMathMLString=function(){return TeXZilla.toMathMLString.apply(TeXZilla,arguments)},\nexports.toMathML=function(){return TeXZilla.toMathML.apply(TeXZilla,arguments)},exports.toImage=function(){return TeXZilla.toImage.apply(TeXZilla,arguments)},exports.filterString=function(){return TeXZilla.filterString.apply(TeXZilla,arguments)},exports.filterElement=function(){return TeXZilla.filterElement.apply(TeXZilla,arguments)});\nif(\"undefined\"!==typeof require){var exitCommonJS=function(Xa){\"undefined\"!==typeof process?process.exit(Xa):\"undefined\"!==typeof slimer?slimer.exit(Xa):\"undefined\"!==typeof phantom&&phantom.exit(Xa)},usage=function(){console.log(\"\\nUsage:\\n\");console.log(\"commonjs TeXZilla.js [help]\");console.log(\"  Print this help message.\\n\");console.log(\"commonjs TeXZilla.js parser aTeX [aDisplay] [aRTL] [aThrowExceptionOnError]\");console.log(\"  Print TeXZilla.toMathMLString(aTeX, aDisplay, aRTL, aThrowExceptionOnError)\");\nconsole.log(\"  The interpretation of arguments and the default values are the same.\\n\");console.log(\"commonjs TeXZilla.js webserver [port] [safe] [itexId]\");console.log(\"  Start a Web server on the specified port (default:3141)\");console.log(\"  See the TeXZilla wiki for details.\\n\");console.log(\"cat input | commonjs TeXZilla.js streamfilter [safe] [itexId] > output\");console.log(\"  Make TeXZilla behaves as a stream filter. The TeX fragments are\");console.log(\"  converted into MathML.\");console.log(\"  See the TeXZilla wiki for details.\\n\");\nconsole.log(\"  where commonjs is slimerjs, nodejs or phantomjs.\")},setParamValue=function(Xa,cb,e){if(\"tex\"===cb)Xa[cb]=e;else if(\"display\"===cb||\"rtl\"===cb||\"exception\"===cb||\"safe\"===cb||\"itexId\"===cb)Xa[cb]=\"true\"===e},getMathMLString=function(Xa){return TeXZilla.toMathMLString(Xa.tex,Xa.display,Xa.rtl,Xa.exception)},getParametersFromURL=function(Xa){var cb,e,Za,nb;cb={};if(Xa=Xa.split(\"?\")[1])for(Xa=Xa.split(\"&\"),e=0;e<Xa.length;e++)Za=Xa[e].split(\"=\"),nb=decodeURIComponent(Za[0]).toLowerCase(),\nZa=decodeURIComponent(Za[1]),setParamValue(cb,nb,Za);return cb},getParametersFromPOSTData=function(Xa){var cb={};Xa=JSON.parse(Xa);for(var e in Xa)setParamValue(cb,e,Xa[e]);return cb},getServerResponseFromParam=function(Xa){var cb={tex:Xa.tex};try{cb.mathml=getMathMLString(Xa),cb.exception=null}catch(e){cb.exception=e.message}return JSON.stringify(cb)},webserverListener=function(Xa,cb){var e={},Za={};\"GET\"===Xa.method?e=getParametersFromURL(Xa.url):\"POST\"===Xa.method&&(e=getParametersFromPOSTData(Xa.post));\nvoid 0!==e.tex&&(Za=getServerResponseFromParam(e));e=JSON.stringify(Za);cb.statusCode=200;cb.setHeader(\"Content-Type\",\"application/json\");cb.write(e);cb.close()},httpListener=function(Xa,cb){var e={},Za={},nb,lb=\"\";Xa.setEncoding(\"utf8\");Xa.on(\"data\",function(e){lb+=e});Xa.on(\"end\",function(){cb.writeHead(200,{\"Content-Type\":\"\"});\"GET\"===Xa.method?e=getParametersFromURL(Xa.url):\"POST\"===Xa.method&&(e=getParametersFromPOSTData(lb));void 0!==e.tex&&(Za=getServerResponseFromParam(e));nb=JSON.stringify(Za);\ncb.writeHead(200,{\"Content-Type\":\"application/json\"});cb.write(nb);cb.end()})},startWebServer=function(Xa){try{require(\"webserver\").create().listen(Xa,webserverListener)}catch(cb){require(\"http\").createServer(httpListener).listen(Xa)}console.log(\"Web server started on http://localhost:\"+Xa)},main=function(Xa,cb){var e={};if(3<=Xa.length&&\"parser\"===Xa[1]){setParamValue(e,\"tex\",Xa[2]);setParamValue(e,\"display\",Xa[3]);setParamValue(e,\"rtl\",Xa[4]);setParamValue(e,\"exception\",Xa[5]);try{console.log(getMathMLString(e)),\nexitCommonJS(0)}catch(Za){console.log(Za),exitCommonJS(1)}}else if(2<=Xa.length&&\"webserver\"===Xa[1]){setParamValue(e,\"safe\",Xa[2]);TeXZilla.setSafeMode(e.safe);setParamValue(e,\"itexId\",Xa[3]);TeXZilla.setItexIdentifierMode(e.itexId);try{startWebServer(3<=Xa.length?parseInt(Xa[2],10):3141)}catch(nb){console.log(nb),exitCommonJS(1)}}else if(2<=Xa.length&&\"streamfilter\"===Xa[1])if(setParamValue(e,\"safe\",Xa[2]),TeXZilla.setSafeMode(e.safe),setParamValue(e,\"itexId\",Xa[3]),TeXZilla.setItexIdentifierMode(e.itexId),\n\"undefined\"!==typeof process){var lb=\"\";process.stdin.resume();process.stdin.setEncoding(\"utf-8\");process.stdin.on(\"data\",function(e){lb+=e});process.stdin.on(\"end\",function(){console.log(TeXZilla.filterString(lb,!0));exitCommonJS(0)})}else console.log(TeXZilla.filterString(require(\"system\").stdin.read(),!0)),exitCommonJS(0);else usage(),exitCommonJS(0)};if(\"undefined\"===typeof exports||\"undefined\"!==typeof module&&require.main===module)\"undefined\"!==typeof process?main(process.argv.slice(1)):main(require(\"system\").args)};\n\n})($tw.node ? $tw.fakeDocument : window.document)\n"
        },
        "$:/plugins/joerenes/TW5-TeXZilla/macro-parser.js": {
            "type": "application/javascript",
            "title": "$:/plugins/joerenes/TW5-TeXZilla/macro-parser.js",
            "module-type": "library",
            "text": "(function(document) {\n\nescapeRegExp = function(string) {\n\treturn string.replace(/([.*+?^=!:${}()|\\[\\]\\/\\\\])/g, \"\\\\$1\");\n};\n\n\n// force use of #1, #2, etc. in newcommand definitions, which I think is the standard \n// (though I believe it is possible to use a single # for a one-argument command)\n\n// then, we can input the data to be mapped through the template as an array, rather than an object \n// with keyword/definition pairs. perhaps this is faster. Here, the template itself is just \\langle #1 | #2 \\rangle\n\nmaplatextemplate = function(template, data) {\n\treturn template.replace(/#(\\d)/g, function(match, p1) {\n\t\treturn data[p1-1];\n\t})\n};\n\nlatexmacro2regex = function(macroname, numargs) { // macroname is the string  '\\ket'\n\treturn new RegExp(escapeRegExp(macroname) + Array(numargs+1).join('{(.*?)}'), 'g');\n};\n\n// the regexp searcher is going to need to know how many arguments to look for, since in latex it's always\n// permissible to enclose commands in {}, i.e. \\frac{a}{b}{c} is the same as \\frac{a}{b}c. \n// note that here we are doing a simple parse which looks for arguments explicitly bounded by {};\n// even though latex itself recognizes \\frac ab as \\frac{a}{b}, we will only accept the latter.  \n\n// follow padawanphysicist's convention of separating by tab.\n\n// going in \"reverse\" error has the advantage that macros can be defined in terms of macros \n// appearing previously on the list\n\nexports.expandLaTeXmacros = function(wtext,macrolist) { // returns text with latex macros expanded\n\tfor (var i = macrolist.length - 1; i >= 0; i--) { \n\t\tvar macroarray = macrolist[i].split('\\t');\n\t\tvar searchRe = latexmacro2regex(macroarray[0],parseInt(macroarray[1]));\n\t\tfunction replacer(match) {\n\t\t\tvar data = Array.prototype.slice.call(arguments, 1,-2);\n\t\t\treturn maplatextemplate(macroarray[2],data);\n\t\t}\n\t\twtext = wtext.replace(searchRe,replacer);\n\t};\n\treturn wtext;\n};\n\n\n\n//var text = \"\\\\ket{a}+\\\\tr[A]+\\\\braket{x}{y}+\\\\ketbra{j}{k}\";\n//var macrolist = [\"\\\\tr\\t0\\t\\\\text{Tr}\",\"\\\\ket\\t1\\t|#1\\\\rangle\",\"\\\\bra\\t1\\t\\\\langle #1 |\",\"\\\\braket\\t2\\t\\\\langle #1 | #2 \\\\rangle\",\"\\\\ketbra\\t2\\t\\\\ket{#1}\\\\bra{#2}\"];\n//console.log(exports.expandLaTeXmacros(text,macrolist))\n})($tw.node ? $tw.fakeDocument : window.document)\n"
        },
        "$:/plugins/joerenes/TW5-TexZilla/latex-parser.js": {
            "text": "/*\\\ntitle: $:/plugins/joerenes/TW5-TexZilla/latex-parser.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for LaTeX, both inline and display. For example:\n\n```\n\t$$latex-goes-here$$   \tinline\n\t\\[more-latex\\]\t\t\tdisplay\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except latex-parser \n\\rules only latex-parser \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n//var displayopen = '\\\\\\[',\n//\tdisplayclose = '\\\\\\]',\n//    inlinestring = '\\$\\$';\n\nexports.name = \"latex-parser\";\nexports.types = {inline: true}; // this is confusing; but this inline is setting the form of this wikitext parser.\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\\\\\[|\\$\\$/mg; // just escape regexp... new RegExp(displayopen + '|' + inlinestring,'mg'); \n};\n\nexports.parse = function() {\n\t// figure out which delimiter we're dealing with. the result of the first regex from init is stored in this.match\n\tvar openmatch = this.match[0],\n\t\tdisplaystyle,\n\t\treEnd;\n\n\tif(openmatch == '\\$\\$') {\n\t\tdisplaystyle = \"inline\";\n\t\treEnd = /\\$\\$/mg;\n\t} else {\n\t\tdisplaystyle = \"block\";\n\t\treEnd = /\\\\\\]/mg;\n\t}\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Look for the end marker\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the text\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\treturn [{\n\t\ttype: \"latex\",\n\t\tattributes: {\n\t\t\ttext: {\n\t\t\t\ttype: \"text\",\n\t\t\t\tvalue: text\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttype: \"text\",\n\t\t\t\tvalue: displaystyle\n\t\t\t}\n\t\t}\n\t}];\n};\n\n})();\n",
            "title": "$:/plugins/joerenes/TW5-TexZilla/latex-parser.js",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/plugins/joerenes/TW5-TeXZilla/mathstyle": {
            "tags": "[[$:/tags/Stylesheet]]",
            "title": "$:/plugins/joerenes/TW5-TeXZilla/mathstyle",
            "type": "text/css",
            "text": "html math[display=\"block\"] {\n\tfont-size: 120%;\n}\n\nhtml math {\n\tfont-size: 110%;\n}\n"
        },
        "$:/plugins/joerenes/TW5-TeXZilla/wrapper.js": {
            "text": "/*\\\ntitle: $:/plugins/joerenes/TW5-TeXZilla/wrapper.js\ntype: application/javascript\nmodule-type: widget\n\nWrapper for `TeXZilla-min.js` that provides a `<$latex>` widget.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar texzilla = require(\"$:/plugins/joerenes/TW5-TeXZilla/TeXZilla-min.js\"),\n\tmacroparser = require(\"$:/plugins/joerenes/TW5-TeXZilla/macro-parser.js\"),\n\t//Wiki = require(\"$:/core/modules/wiki.js\"),\n\tWidget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LaTeXWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nLoad macros from LaTeX Macros tiddler\n*/\n//var blah = $tw.wiki.getTiddlerText(\"Nonexist\");\n// this doesn't seem to notice changes to the tiddler.\n// also, we aren't doing any error-handling...\n\n/*\nInherit from the base widget class\n*/\nLaTeXWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLaTeXWidget.prototype.render = function(parent,nextSibling) {\n\t// Housekeeping\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Get the source text and figure out the displaystyle\n\tvar text = this.getAttribute(\"text\",this.parseTreeNode.text || \"\");\n\tvar style = this.getAttribute(\"style\",this.parseTreeNode.text || \"\");\n\tvar blockflag = (style == \"block\") ? true:false;\n\t// expand macros, after loading them, if they are present\n\tvar macrocont = $tw.wiki.getTiddlerText(\"LaTeX Macros\");\n\tif (typeof macrocont === \"undefined\") {\n\t\t; // no macros\n\t} else {\n\t\ttext = macroparser.expandLaTeXmacros(text,macrocont.toString().split('\\n'));\n\t}\n\t// Render it into MathML \n\tvar elemnt = this.document.createElement(\"span\"); \n\ttry {\n\t\tif($tw.browser) {\n\t\t\t// false means inline, true would be display / block\n\t\t\tvar elemnt = texzilla.toMathML(text,blockflag,false,true);\n\t\t} else {\n\t\t\telemnt.innerHTML = texzilla.toMathMLString(text,blockflag,false,true);\n\t\t}\n\t} catch(ex) {\n\t\telemnt.className = \"tc-error\";\n\t\telemnt.textContent = text;\n\t}\n\t// Insert it into the DOM\n\tparent.insertBefore(elemnt,nextSibling);\n\tthis.domNodes.push(elemnt);\n};\n\n/*\nCompute the internal state of the widget\n*/\nLaTeXWidget.prototype.execute = function() {\n\t// Nothing to do for a LaTeX widget\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nLaTeXWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.text) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.latex = LaTeXWidget;\n\n\n})();\n\n",
            "title": "$:/plugins/joerenes/TW5-TeXZilla/wrapper.js",
            "type": "application/javascript",
            "module-type": "widget"
        }
    }
}
{
    "tiddlers": {
        "$:/plugins/snowgoon88/edit-comptext/config": {
            "title": "$:/plugins/snowgoon88/edit-comptext/config",
            "type": "application/json",
            "text": "{\n  \"configuration\": {\n      \"caseSensitive\" : false,\n      \"maxMatch\" : 8,\n      \"minPatLength\" : 2,\n      \"triggerKeyCombination\" : \"^ \"\n  },\n  \"template\": [{\n      \"pattern\": \"[[\",\n      \"filter\": \"[all[tiddlers]!is[system]]\",\n      \"start\": \"[[\",\n      \"end\": \"]]\"\n      }\n  ]\n}\n"
        },
        "$:/plugins/snowgoon88/edit-comptext/edit-comptext.js": {
            "title": "$:/plugins/snowgoon88/edit-comptext/edit-comptext.js",
            "text": "/*\\\ntitle: $:/plugins/snowgoon88/edit-comptext/edit-comptext.js\ntype: application/javascript\nmodule-type: widget\n\nTaken from original Edit-text widget\nVersion 5.1.13 of TW5\nAdd link-to-tiddler completion in framed.js and simple.js\n\nTODO : CHECK usefull, and particularly save_changes after every input ??\nTODO : where should popupNode be created in the DOM ?\nTODO : check that options are valid (numeric ?)\nvar isNumeric = function(n) {\n  return !isNaN(parseFloat(n)) && isFinite(n);\n};\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar editTextWidgetFactory = require(\"$:/core/modules/editor/factory.js\").editTextWidgetFactory,\n\tFramedCompEngine = require(\"$:/plugins/snowgoon88/edit-comptext/framed.js\").FramedCompEngine,\n\tSimpleCompEngine = require(\"$:/plugins/snowgoon88/edit-comptext/simple.js\").SimpleCompEngine;\n\nexports[\"edit-comptext\"] = editTextWidgetFactory(FramedCompEngine,SimpleCompEngine);\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/snowgoon88/edit-comptext/examples": {
            "title": "$:/plugins/snowgoon88/edit-comptext/examples",
            "text": "The configuration file [[$:/plugins/snowgoon88/edit-comptext/config]] allow you to use the completion plugin for various usages. Here are some examples...\n\n!! Link Completion\nThe basic and default usage. Completion is triggered by `[[`, the search is among all non-system tiddlers. When selected, the `title` of the tiddler is inserted in the text, surrounded by `[[` and `]]`. This gives the following Completion Template.\n\n\n```\n{\n      \"pattern\": \"[[\",\n      \"title\": \"[all[tiddlers]!is[system]]\",\n      \"start\": \"[[\",\n      \"end\": \"]]\"\n}\t     \n```\n\n\n!! Special macro completion\nI have a 'pnjin' macro that is invoked by `<<pnjin \"TiddlerPNJName\">>` where 'TiddlerPNJName is a tiddler that hold data about a PNJ. I use tiddlywiki to organise my Role Playing Games campaigns. So, I want `<p` to trigger the completion. The search is among all non-system tiddlers tagged `PNJ` and, once selected, the title of the tiddler must be inserted surrouned by `<<pnjin \\\"` and `\\\">>`. So...\n\n```\n{\n\t\"pattern\": \"<p\",\n      \t\"title\": \"[tag[PNJ]!is[system]]\",\n      \t\"start\": \"<<pnjin  \\\"\",\n      \t\"end\": \"\\\">>\"\n}\n```\n\n!! Insert some templates or stamp or snippets into text.\nI frequently use some text pattern and I want to insert them easily. So, I could create several tiddlers, tagged '$:stamp' and in their body are the piece of texte I want to insert. The titles of these tiddlers always start with `$:/config/stamp/` (i.e. $:/config/stamp/macro, $:/config/stamp/list1, $:/config/stamp/list2). I want to trigger the completion by using `<<`, then I only want to chose among the last part of the titles of tiddlers tagged `$:stamp` so I use a mask (`$:/config/stamp/`) to only display the last part of the tiddlers title. When selectected, the `body` of the tiddler is inserted, with no surrounding strings. As a results, the Completion Template is (notice the `body` field):\n\n```\n{\n      \"pattern\": \"<<\",\n      \"body\": \"[tag[$:stamp]]\",\n      \"mask\" : \"$:/config/stamp/\",\n      \"start\": \"\",\n      \"end\": \"\"\n}\n```\n\n!! And you ?\nIf you have funny usages of completion, let me know. If you'd like to do something that is not yet possible, let me know...\n\nmail : snowgoon88(AT)gmail(DOT)com"
        },
        "$:/plugins/snowgoon88/edit-comptext/framed.js": {
            "text": "/*\\\ntitle: $:/plugins/snowgoon88/edit-comptext/framed.js\ntype: application/javascript\nmodule-type: library\n\nTaken from $:/core/modules/editor/engines/framed.js\nText editor engine based on a simple input or textarea within an iframe. This is done so that the selection is preserved even when clicking away from the textarea\n\n\\*/\n(function(){\n\n/*jslint node: true,browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\n// Configuration tiddler\nvar COMPLETION_OPTIONS = \"$:/plugins/snowgoon88/edit-comptext/config\";\nvar Completion = require(\"$:/plugins/snowgoon88/edit-comptext/completion.js\").Completion;\n\t\nfunction FramedCompEngine(options) {\n       //DEBUG console.log( \"==FramedCompEngine::creation\" );\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\n\t// Completion\n\t// Load Completion configuration as JSON\n    this._configOptions = $tw.wiki.getTiddlerData( COMPLETION_OPTIONS, {} );\n\t\n\t// Create our hidden dummy text area for reading styles\n\tthis.dummyTextArea = this.widget.document.createElement(\"textarea\");\n\tif(this.widget.editClass) {\n\t\tthis.dummyTextArea.className = this.widget.editClass;\n\t}\n\tthis.dummyTextArea.setAttribute(\"hidden\",\"true\");\n\tthis.parentNode.insertBefore(this.dummyTextArea,this.nextSibling);\n\tthis.widget.domNodes.push(this.dummyTextArea);\n\t// Create dummy popup for reading its styles\n\t//this._dummyCompletion = new Completion( this.widget, this.dummyTextArea, this._configOptions);\n\t//REMOVEthis._dummyCompletion.setAttribute(\"hidden\",\"true\");\n\t\n\t// Create the iframe\n\tthis.iframeNode = this.widget.document.createElement(\"iframe\");\n\tthis.parentNode.insertBefore(this.iframeNode,this.nextSibling);\n\tthis.iframeDoc = this.iframeNode.contentWindow.document;\n\t// (Firefox requires us to put some empty content in the iframe)\n\tthis.iframeDoc.open();\n\tthis.iframeDoc.write(\"\");\n\tthis.iframeDoc.close();\n\t// Style the iframe\n\tthis.iframeNode.className = this.dummyTextArea.className;\n\tthis.iframeNode.style.border = \"none\";\n\tthis.iframeNode.style.padding = \"0\";\n\tthis.iframeNode.style.resize = \"none\";\n\tthis.iframeDoc.body.style.margin = \"0\";\n\tthis.iframeDoc.body.style.padding = \"0\";\n\tthis.widget.domNodes.push(this.iframeNode);\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.iframeDoc.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.iframeDoc.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\t// Copy the styles from the dummy textarea\n\tthis.copyStyles();\n\t// Add event listeners\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"input\",handlerObject: this,handlerMethod: \"handleInputEvent\"},\n\t\t{name: \"keydown\",handlerObject: this.widget,handlerMethod: \"handleKeydownEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.iframeDoc.body.appendChild(this.domNode);\n\n\t// add Completion popup\n    this._completion = new Completion( this.widget, this.domNode, this._configOptions, this.dummyTextArea, this.iframeNode.offsetTop, this.iframeNode.offsetLeft );\n\t// print iframe offset\n\t//DEBUG console.log( \"  __iframe.offsetLeft: \"+this.iframeNode.offsetLeft );\n    //DEBUG console.log( \"  __iframe.offsetTop: \"+this.iframeNode.offsetTop );\n    \n\t// Copy all styles from dummyCompletion\n\t//$tw.utils.copyStyles(this._dummyCompletion._popNode, this._completion._popNode);\n\t// Override the ones that should not be set the same as the dummy textarea\n\t//this._completion._popNode.style.display = \"block\";\n\t//this._completion._popNode.style.width = \"100%\";\n\t//this._completion._popNode.style.margin = \"0\";\n\t// In Chrome setting -webkit-text-fill-color overrides the placeholder text colour\n\t//this._completion._popNode.style[\"-webkit-text-fill-color\"] = \"currentcolor\";\n     \n}\n\n/*\nCopy styles from the dummy text area to the textarea in the iframe\n*/\nFramedCompEngine.prototype.copyStyles = function() {\n\t// Copy all styles\n\t$tw.utils.copyStyles(this.dummyTextArea,this.domNode);\n\t// Override the ones that should not be set the same as the dummy textarea\n\tthis.domNode.style.display = \"block\";\n\tthis.domNode.style.width = \"100%\";\n\tthis.domNode.style.margin = \"0\";\n\t// In Chrome setting -webkit-text-fill-color overrides the placeholder text colour\n\tthis.domNode.style[\"-webkit-text-fill-color\"] = \"currentcolor\";\n};\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nFramedCompEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode) {\n\t\t\tthis.domNode.value = text;\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nGet the text of the engine\n*/\nFramedCompEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nFramedCompEngine.prototype.fixHeight = function() {\n\t// Make sure styles are updated\n\tthis.copyStyles();\n\t// Adjust height\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\tvar newHeight = $tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t\tthis.iframeNode.style.height = (newHeight + 14) + \"px\"; // +14 for the border on the textarea\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t\tthis.iframeNode.style.height = (fixedHeight + 14) + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nFramedCompEngine.prototype.focus  = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nFramedCompEngine.prototype.handleInputEvent = function(event) {\n        //DEBUG console.log( \"__framed.js::handleInputEvent\");\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nFramedCompEngine.prototype.createTextOperation = function() {\n\tvar operation = {\n\t\ttext: this.domNode.value,\n\t\tselStart: this.domNode.selectionStart,\n\t\tselEnd: this.domNode.selectionEnd,\n\t\tcutStart: null,\n\t\tcutEnd: null,\n\t\treplacement: null,\n\t\tnewSelStart: null,\n\t\tnewSelEnd: null\n\t};\n\toperation.selection = operation.text.substring(operation.selStart,operation.selEnd);\n\treturn operation;\n};\n\n/*\nExecute a text operation\n*/\nFramedCompEngine.prototype.executeTextOperation = function(operation) {\n\t// Perform the required changes to the text area and the underlying tiddler\n\tvar newText = operation.text;\n\tif(operation.replacement !== null) {\n\t\tnewText = operation.text.substring(0,operation.cutStart) + operation.replacement + operation.text.substring(operation.cutEnd);\n\t\t// Attempt to use a execCommand to modify the value of the control\n\t\tif(this.iframeDoc.queryCommandSupported(\"insertText\") && this.iframeDoc.queryCommandSupported(\"delete\") && !$tw.browser.isFirefox) {\n\t\t\tthis.domNode.focus();\n\t\t\tthis.domNode.setSelectionRange(operation.cutStart,operation.cutEnd);\n\t\t\tif(operation.replacement === \"\") {\n\t\t\t\tthis.iframeDoc.execCommand(\"delete\",false,\"\");\n\t\t\t} else {\n\t\t\t\tthis.iframeDoc.execCommand(\"insertText\",false,operation.replacement);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.domNode.value = newText;\n\t\t}\n\t\tthis.domNode.focus();\n\t\tthis.domNode.setSelectionRange(operation.newSelStart,operation.newSelEnd);\n\t}\n\tthis.domNode.focus();\n\treturn newText;\n};\n\nexports.FramedCompEngine = FramedCompEngine;\n\n})();\n",
            "type": "application/javascript",
            "title": "$:/plugins/snowgoon88/edit-comptext/framed.js",
            "module-type": "library"
        },
        "$:/plugins/snowgoon88/edit-comptext/simple.js": {
            "text": "/*\\\ntitle: $:/plugins/snowgoon88/edit-comptext/simple.js\ntype: application/javascript\nmodule-type: library\n\nTaken from $:/core/modules/editor/engines/simple.js\nText editor engine based on a simple input or textarea tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\n// Configuration tiddler\nvar COMPLETION_OPTIONS = \"$:/plugins/snowgoon88/edit-comptext/config\";\nvar Completion = require(\"$:/plugins/snowgoon88/edit-comptext/completion.js\").Completion;\n\nfunction SimpleCompEngine(options) {\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\n    // Completion\n\t// Load Completion configuration as JSON\n    this._configOptions = $tw.wiki.getTiddlerData( COMPLETION_OPTIONS, {} );\n\t\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.widget.document.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.widget.document.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\tif(this.widget.editClass) {\n\t\tthis.domNode.className = this.widget.editClass;\n\t}\n\t// Add an input event handler\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"focus\", handlerObject: this, handlerMethod: \"handleFocusEvent\"},\n\t\t{name: \"input\", handlerObject: this, handlerMethod: \"handleInputEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.parentNode.insertBefore(this.domNode,this.nextSibling);\n\tthis.widget.domNodes.push(this.domNode);\n\n\t// add Completion popup\n    this._completion = new Completion( this.widget, this.domNode, this._configOptions );\n}\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nSimpleCompEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode) {\n\t\t\tthis.domNode.value = text;\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nGet the text of the engine\n*/\nSimpleCompEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nSimpleCompEngine.prototype.fixHeight = function() {\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\t$tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nSimpleCompEngine.prototype.focus  = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nSimpleCompEngine.prototype.handleInputEvent = function(event) {\n\tconsole.log( \"__simple.js::handleInputEvent\");\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nHandle a dom \"focus\" event\n*/\nSimpleCompEngine.prototype.handleFocusEvent = function(event) {\n\tif(this.widget.editFocusPopup) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNode,\n\t\t\ttitle: this.widget.editFocusPopup,\n\t\t\twiki: this.widget.wiki,\n\t\t\tforce: true\n\t\t});\n\t}\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nSimpleCompEngine.prototype.createTextOperation = function() {\n\treturn null;\n};\n\n/*\nExecute a text operation\n*/\nSimpleCompEngine.prototype.executeTextOperation = function(operation) {\n};\n\nexports.SimpleCompEngine = SimpleCompEngine;\n\n})();\n",
            "type": "application/javascript",
            "title": "$:/plugins/snowgoon88/edit-comptext/simple.js",
            "module-type": "library"
        },
        "$:/plugins/snowgoon88/edit-comptext/cursor-position.js": {
            "text": "/*\\\nModule that compute the pixel position of the cursor of a text\nements.\n\nTaken from https://github.com/component/textarea-caret-position\n\n(as https://github.com/kir/js_cursor_position is not updated any more)\n\\*/\n// Fonction anonyme executée immediatement\n( function(){\n \n// The properties that we copy into a mirrored div.\n// Note that some browsers, such as Firefox,\n// do not concatenate properties, i.e. padding-top, bottom etc. -> padding,\n// so we have to do every single property specifically.\nvar properties = [\n  'direction',  // RTL support\n  'boxSizing',\n  'width',  // on Chrome and IE, exclude the scrollbar, so the mirror div wraps exactly as the textarea does\n  'height',\n  'overflowX',\n  'overflowY',  // copy the scrollbar for IE\n\n  'borderTopWidth',\n  'borderRightWidth',\n  'borderBottomWidth',\n  'borderLeftWidth',\n  'borderStyle',\n\n  'paddingTop',\n  'paddingRight',\n  'paddingBottom',\n  'paddingLeft',\n\n  // https://developer.mozilla.org/en-US/docs/Web/CSS/font\n  'fontStyle',\n  'fontVariant',\n  'fontWeight',\n  'fontStretch',\n  'fontSize',\n  'fontSizeAdjust',\n  'lineHeight',\n  'fontFamily',\n\n  'textAlign',\n  'textTransform',\n  'textIndent',\n  'textDecoration',  // might not make a difference, but better be safe\n\n  'letterSpacing',\n  'wordSpacing',\n\n  'tabSize',\n  'MozTabSize'\n\n];\nvar isFirefox = false;\nif($tw.browser) {\n    isFirefox = window.mozInnerScreenX != null;\n}\n\nfunction getCaretCoordinates(element, position, options) {\n\n  var debug = options && options.debug || false;\n  if (debug) {\n    var el = document.querySelector('#input-textarea-caret-position-mirror-div');\n    if ( el ) { el.parentNode.removeChild(el); }\n  }\n\n  // mirrored div\n  var div = document.createElement('div');\n  div.id = 'input-textarea-caret-position-mirror-div';\n  document.body.appendChild(div);\n\n  var style = div.style;\n  var computed;\n  if($tw.browser) {\n      computed = window.getComputedStyle? getComputedStyle(element) : element.currentStyle;  // currentStyle for IE < 9\n  } \n  else {\n      computed = element.currentStyle;\n  }\n    \n\n  // default textarea styles\n  style.whiteSpace = 'pre-wrap';\n  if (element.nodeName !== 'INPUT')\n    style.wordWrap = 'break-word';  // only for textarea-s\n\n  // position off-screen\n  style.position = 'absolute';  // required to return coordinates properly\n  if (!debug)\n    style.visibility = 'hidden';  // not 'display: none' because we want rendering\n\n  // transfer the element's properties to the div\n  properties.forEach(function (prop) {\n    style[prop] = computed[prop];\n  });\n\n  if (isFirefox) {\n    // Firefox lies about the overflow property for textareas: https://bugzilla.mozilla.org/show_bug.cgi?id=984275\n    if (element.scrollHeight > parseInt(computed.height))\n      style.overflowY = 'scroll';\n  } else {\n    style.overflow = 'hidden';  // for Chrome to not render a scrollbar; IE keeps overflowY = 'scroll'\n  }\n\n  div.textContent = element.value.substring(0, position);\n  // the second special handling for input type=\"text\" vs textarea: spaces need to be replaced with non-breaking spaces - http://stackoverflow.com/a/13402035/1269037\n  if (element.nodeName === 'INPUT')\n    div.textContent = div.textContent.replace(/\\s/g, \"\\u00a0\");\n\n  var span = document.createElement('span');\n  // Wrapping must be replicated *exactly*, including when a long word gets\n  // onto the next line, with whitespace at the end of the line before (#7).\n  // The  *only* reliable way to do that is to copy the *entire* rest of the\n  // textarea's content into the <span> created at the caret position.\n  // for inputs, just '.' would be enough, but why bother?\n  span.textContent = element.value.substring(position) || '.';  // || because a completely empty faux span doesn't render at all\n  div.appendChild(span);\n\n  var coordinates = {\n    top: span.offsetTop + parseInt(computed['borderTopWidth']),\n    left: span.offsetLeft + parseInt(computed['borderLeftWidth'])\n  };\n\n  if (debug) {\n    span.style.backgroundColor = '#aaa';\n  } else {\n    document.body.removeChild(div);\n  }\n\n  return coordinates;\n}\n\n// Exporte as a module of node.js otherwise set as global\nif (typeof module != \"undefined\" && typeof module.exports != \"undefined\") {\n  module.exports = getCaretCoordinates;\n} else {\n  window.getCaretCoordinates = getCaretCoordinates;\n}\n\n})();\n",
            "type": "application/javascript",
            "title": "$:/plugins/snowgoon88/edit-comptext/cursor-position.js",
            "module-type": "library"
        },
        "$:/plugins/snowgoon88/edit-comptext/completion.js": {
            "text": "/*\\\ntitle: $:/plugins/snowgoon88/edit-comptext/completion.js\ntype: application/javascript\nmodule-type: library\n\nTry to make self-contained completion module.\n\nTo use this 'module', you need a `widget` with a kind of `editarea` node.\nI do not know the exacte prerequisites of this editarea node for the module to\nwork, but mostly one should be able to attach the following `eventHandler` to\nit:\n - input\n - keydown\n - keypress\n - keyup\nThe `widget` is needed because I use:\n - widget.document\n - widget.wiki.filterTiddlers(...)\n\nFrom the Widget, once you have a proper editarea, you just have to call\n - var completion = new Completion( theWidget, theEditAreaNode, configObject);\nwhere `configObject` is expected to have the following fields. if a field is missing, a default value will be given.\nOne can have many `elements' in the template array.\n\n{\n  \"configuration\": {\n      \"caseSensitive\" : false,\n      \"maxMatch\" : 8,\n      \"minPatLength\" : 2,\n      \"triggerKeyCombination\" : \"^ \"\n  },\n  \"template\": [{\n      \"pattern\": \"[[\",\n      \"filter\": \"[all[tiddlers]!is[system]]\",\n      \"start\": \"[[\",\n      \"end\": \"]]\"\n      }\n  ]\n}\n\nTODO : CHECK if needed\n\\*/\n\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// To compute pixel coordinates of cursor\nvar getCaretCoordinates = require(\"$:/plugins/snowgoon88/edit-comptext/cursor-position.js\");\n\n/** Default Completion Attributes */\nvar DEFATT = { maxMatch: 5, minPatLength: 2, caseSensitive: false, triggerKeyCombination: \"^ \" };\n\n/** \n * Struct for generic Completion Templates.\n * <ul>\n * <li>pat : pattern searched for.</li>\n * <li>filter : filter operation used to find the list of completion options</li>\n * <li>mask: replaced by \"\" when presenting completion options</li>\n * </ul>\n */\nvar Template = function( pat, filter, mask, field, start, end  ) {\n    this.pat = pat;\n    this.filter = filter;\n    this.mask = \"^\"+regExpEscape(mask);\n    this.field = field;\n    this.start = start;\n    this.end = end;\n    this.pos = 0;\n};\n/**\n * Struct for storing completion options, as we need to memorise \n * the titles of the tiddlers when masked and when body must be displayed.\n */\nvar OptCompletion = function( title, str ) {\n    this.title = title;\n    this.str = str;\n};\n\nvar keyMatchGenerator = function(combination) {\n\tlet singleMatchGenerator = function(character) {\n\t\tif (character === '^') {\n\t\t\treturn event => event.ctrlKey;\n\t\t}\n\t\telse if (character === '+') {\n\t\t\treturn event => event.shiftKey;\n\t\t}\n\t\telse if (character === '!') {\n\t\t\treturn event => event.altKey;\n\t\t}\n\t\telse {\n\t\t\treturn event => (event.keyCode || event.which) === character.charCodeAt(0);\n\t\t}\n\t};\n\n\tlet matchers = [];\n\tfor (let i = 0; i < combination.length; i++) {\n\t\tmatchers.push(singleMatchGenerator(combination[i]));\n\t}\n\n\treturn event => {\n\t\tfor (let i = 0; i < matchers.length; i++) {\n\t\t\tif (!matchers[i](event)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t};\n};\n\n/**\n * Widget is needed in creating popupNode.\n * - widget.document\n * - widget.wiki.filterTiddlers(...)\n * - sibling : where to create the popup in the DOM.\n */\n\tvar Completion = function( editWidget, areaNode, param, sibling, offTop, offLeft ) {\n\tconsole.log( \"==Completion::creation\" );\n\n    // About underlying Widget\n    this._widget = editWidget;\n\tthis._areaNode = areaNode;\n\tthis._sibling  = (typeof sibling !== 'undefined') ?  sibling : this._areaNode;\n\tthis._offTop = (typeof offTop !== 'undefined') ?  offTop : 0;\n\tthis._offLeft = (typeof offLeft !== 'undefined') ?  offLeft : 0;\t\n\t\t\n    // Completions attributes\n    /** State */\n    this._state = \"VOID\";\n    this._template = undefined;\n    /** Best matches */\n    this._bestMatches = []; // An array of OptCompletion\n    this._idxChoice = -1;\n    /** Param */\n    // maximum nb of match displayed\n    this._maxMatch     = param.configuration.maxMatch || DEFATT.maxMatch;   \n    this._minPatLength = param.configuration.minPatLength || DEFATT.minPatLength;\n    this._caseSensitive= param.configuration.caseSensitive || DEFATT.caseSensitive;\n    this._triggerKeyMatcher = keyMatchGenerator(param.configuration.triggerKeyCombination || DEFATT.triggerKeyCombination);\n    /** Input information */\n    this._lastChar = \"\";\n    this._hasInput = false;\n    /** List of Completion Templates */\n    this._listTemp = [];\n    \n    // Read templates from Param\n    if( param.template ) {\n    \tvar idT;\n    \tfor( idT=0; idT<param.template.length; idT++ ) {\n    \t    var temp = param.template[idT];\n\t    // field 'body' ou 'title' (default)\n\t    if( temp.body ) {\t\t\n    \t\tthis._listTemp.push( \n    \t\t    new Template( temp.pattern, temp.body,\n\t\t\t\t  temp.mask ? temp.mask : \"\",\n\t\t\t\t  \"body\",\n    \t\t\t\t  temp.start, temp.end )\n    \t\t);\n\t    }\n\t    else {\n    \t\tthis._listTemp.push( \n    \t\t    new Template( temp.pattern, \n\t\t\t\t  temp.title ? temp.title : temp.filter,\n\t\t\t\t  temp.mask ? temp.mask : \"\",\n\t\t\t\t  \"title\",\n    \t\t\t\t  temp.start, temp.end )\n    \t\t);\n\t    }\n\t    //DEBUG temp = this._listTemp[this._listTemp.length-1];\n\t    //DEBUG console.log( \"__CONF : \"+temp.pattern+\":\"+temp.filter+\":\"+temp.mask+\":\"+temp.field+\":\"+temp.start+\":\"+temp.end );\n    \t}\n    }\n    // or defaut template\n    else {\n    \tthis._listTemp = [\n    \t    new Template( \"[[\", \"[all[tiddlers]!is[system]]\", \n\t\t\t  \"\", \"title\",\n\t\t\t  \"[[\", \"]]\" )\n    \t];\n    }\n    // Create Popup\n\t//this._popNode = createPopup(this._widget, this._areaNode );\n\tthis._popNode = createPopup(this._widget, this._sibling );\t\n    \n    // Listen to the Keyboard\n    $tw.utils.addEventListeners( this._areaNode,[\n\t{name: \"input\", handlerObject: this, handlerMethod: \"handleInput\"},\n\t{name: \"keydown\", handlerObject: this, handlerMethod: \"handleKeydown\"},\n\t{name: \"keypress\", handlerObject: this, handlerMethod: \"handleKeypress\"},\n    \t{name: \"keyup\", handlerObject: this, handlerMethod: \"handleKeyup\"}\n    ]);\n   \n    /** \n     * Find the bestMatches among listChoice with given pattern\n     * @param listChoice : array of String\n     * @change : this._bestMatches => array of OptCompletion\n     */\n    this._findBestMatches = function( listChoice, pattern, nbMax) {\n\t// regexp search pattern, case sensitive\n\tvar flagSearch = this._caseSensitive ? \"\" : \"i\" ;\n\tvar regpat = RegExp( regExpEscape(pattern), flagSearch );\n\tvar regpat_start = RegExp( \"^\"+regExpEscape(pattern), flagSearch );\n\tvar regMask = RegExp( this._template.mask ? this._template.mask : \"\",\"\");\n\tvar nbMatch = 0;\n\t// nbMax set to _maxMatch if no value given\n\tnbMax = nbMax !== undefined ? nbMax : this._maxMatch;\n\n\t//DEBUG console.log( \"__FIND masked=\"+regMask+\" regPat=\"+regpat);\n\n\tthis._bestMatches= [];\n\tvar otherMatches = [];\n\t// We test every possible choice\n\tfor( var i=0; i< listChoice.length; i++ ) {\n\t    // apply mask over potential choice\n\t    var maskedChoice = listChoice[i].replace( regMask, \"\");\n\t    // Test first if pattern is found at START of the maskedChoice\n\t    // THEN added to BestMatches\n \t    if( regpat_start.test( maskedChoice )) {\n\t\tif (nbMatch >= nbMax) {\n\t\t    this._bestMatches.push( new OptCompletion(\"\",\"...\") );\n\t\t    return;\n\t\t} else {\n\t\t    this._bestMatches.push( new OptCompletion(listChoice[i],maskedChoice) );\n\t\t    nbMatch += 1;\n\t\t}\n\t    }\n\t    // then if pattern is found WITHIN the maskedChoice\n\t    // added AFTER the choices that starts with pattern\n\t    else if( regpat.test( maskedChoice ) ) {\n\t\tif (nbMatch >= nbMax) {\n\t\t    // add all otherMatches to _bestMatches\n\t\t    this._bestMatches.push( new OptCompletion(\"\",\"<hr>\") ) ; //separator\n\t\t    this._bestMatches = this._bestMatches.concat( otherMatches );\n\t\t    this._bestMatches.push( new OptCompletion(\"\",\"...\") );\n\t\t    return;\n\t\t} else {\n\t\t    otherMatches.push( new OptCompletion(listChoice[i],maskedChoice) );\n\t\t    nbMatch += 1;\n\t\t}\n\t    }\n\t}\n\t// Here, must add the otherMatches\n\tthis._bestMatches.push( new OptCompletion(\"\",\"<hr>\") ) ; //separator\n\tthis._bestMatches = this._bestMatches.concat( otherMatches );\n    };\n    /**\n     * Change Selected Status of Items\n     */\n    this._next = function (node) {\n\tvar count = node.children.length;\n\t//DEBUG console.log( \"__NEXT: co=\"+count+\" nbMatch=\"+this._bestMatches.length);\n\tif( this._bestMatches.length > 0 ) \n\t    this._goto( node, this._idxChoice < count - 1 ? this._idxChoice + 1 : -1);\n\t//DEBUG this._logStatus( \"NexT\" );\n    };\n    this._previous = function (node) {\n\tvar count = node.children.length;\n\tvar selected = this._idxChoice > -1;\n\t//DEBUG console.log( \"__PREV: co=\"+count+\" nbMatch=\"+this._bestMatches.length);\n\tif( this._bestMatches.length > 0 ) \n\t    this._goto( node, selected ? this._idxChoice - 1 : count - 1);\n\t//DEBUG this._logStatus( \"PreV\" );\n    };\n    // Should not be used, highlights specific item without any checks!\n    this._goto = function (node, idx) {\n\tvar lis = node.children;\n\tvar selected = this._idxChoice > -1;\n\tif (selected) {\n\t    lis[this._idxChoice].setAttribute(\"patt-selected\", \"false\");\n\t}\n\n\tthis._idxChoice = idx;\n    \n\tif (idx > -1 && lis.length > 0) {\n\t    lis[idx].setAttribute(\"patt-selected\", \"true\");\n\t}\n    };\n    /**\n     * Abort pattern and undisplay.\n     */\n    this._abortPattern = function (displayNode) {\n\tthis._state = \"VOID\";\n\tthis._bestChoices = [];\n\tthis._idxChoice = -1;\n\tthis._undisplay( displayNode );\n\tthis._template = undefined;\n    };\n    /**\n     * Display popupNode at the cursor position in areaNode.\n     */\n    this._display = function( areaNode, popupNode ) {\n\tif ( popupNode.style.display == 'none' ) {\n\t    // Must get coordinate\n\t    // Cursor coordinates within area + area coordinates + scroll\n            var coord = getCaretCoordinates(areaNode, areaNode.selectionEnd);\n            var styleSize = getComputedStyle(areaNode).getPropertyValue('font-size');\n            var fontSize = parseFloat(styleSize); \n\t\t\n\t    popupNode.style.left = (this._offLeft+areaNode.offsetLeft-areaNode.scrollLeft+coord.left) + 'px';\n\t    popupNode.style.top = (this._offTop+areaNode.offsetTop-areaNode.scrollTop+coord.top+fontSize*2) + 'px';\n\t    popupNode.style.display = 'block';\n\t}\n    };\n    /**\n     * Undisplay someNode\n     */\n    this._undisplay = function( displayNode ) {\n\tif ( displayNode.style.display != 'none' ) {\n\t    displayNode.style.display = 'none';\n\t}\n    };\n\n     /**\n     * Used for debug\n     */\n    this._logStatus = function(msg) {\n\tconsole.log( \"__STATUS: \"+this._state+\":-\"+msg+\"- idx=\"+this._idxChoice );\n    };\n\n};\n// **************************************************************************\n// ******************************************************************eventCbk\n// **************************************************************************\n/**\n * Disable the *effects* of ENTER / UP / DOWN / ESC when needed.\n * Set _hasInput to false.\n */\nCompletion.prototype.handleKeydown = function(event) {\n    // key \n    var key = event.keyCode;\n    this._hasInput = false;\n    \n    //DEBUG console.log( \"__KEYDOWN (\"+key+\") hasI=\"+this._hasInput);\n    \n    // ENTER while selecting\n    if( (this._state === \"PATTERN\" || this._state === \"SELECT\") && key === 13 ) {\n    \tevent.preventDefault();\n    \tevent.stopPropagation();\n    }\n    // ESC while selecting\n    if( (this._state === \"PATTERN\" || this._state === \"SELECT\") && key === 27 ) {\n    \tevent.preventDefault();\n    \tevent.stopPropagation();\n    }\n    // UP/DOWN while a pattern is extracted\n    if( (key===38 || key===40) && \n\t(this._state === \"PATTERN\" || this._state === \"SELECT\") ) {\n\tevent.preventDefault();\n    }\n};\n/**\n * Means that something has been added/deleted => set _hasInput\n */\nCompletion.prototype.handleInput = function(event) {\n    this._hasInput = true;\n    //DEBUG console.log( \"__INPUT hasI=\"+this._hasInput );\n};\n\t\n/**\n * Set _lastChar, detects CTRL+SPACE.\n */\nCompletion.prototype.handleKeypress = function(event) {\n    var curPos = this._areaNode.selectionStart;  // cursor position\n    var val = this._areaNode.value;   // text in the area\n    // key \n    var key = event.keyCode || event.which;\n\t\n    this._lastChar = String.fromCharCode(key);\n    //DEBUG console.log( \"__KEYPRESS (\"+key+\") hasI=\"+this._hasInput+\" char=\"+this._lastChar );\n    //DEBUG this._logStatus( \"KEYPRESS\" );\n    \n    // Detect Ctrl+Space\n    if( this._triggerKeyMatcher(event) && this._state === \"VOID\" ) {\n\t//Find a proper Template\n\t// first from which we can extract a pattern\n\tif( this._template === undefined ) {\n\t    //DEBUG console.log(\"__SPACE : find a Template\" );\n\t    var idT, res;\n\t    for( idT=0; idT < this._listTemp.length; idT++ ) {\n\t\tres = extractPattern( val, curPos, this._listTemp[idT] );\n\t\t//DEBUG console.log(\"  t=\"+this._listTemp[idT].pat+\" res=\"+res);\n\t\t// res is not undefined => good template candidate\n\t\tif( res ) {\n\t\t    this._template = this._listTemp[idT];\n\t\t    this._state = \"PATTERN\";\n\t\t    break;\n\t\t}\n\t    }\n\t}\n\telse {\n\t    //DEBUG console.log(\"__SPACE : already a template\" );\n\t    this._state = \"PATTERN\";\n\t}\n    }\n};\n/**\n * ESC -> abort; \n * Detect [ -> VOID switch to _state=PATTERN\n * PATTERN || SELECT : ENTER -> insertText\n *                     UP/DOWN -> previous/next\n *                     pattern.length > _minPatternLength -> display  \n */\nCompletion.prototype.handleKeyup = function(event) {\n    var curPos = this._areaNode.selectionStart;  // cursor position\n    var val = this._areaNode.value;   // text in the area\n    // key a\n    var key = event.keyCode;\n    \n    //DEBUG console.log( \"__KEYUP (\"+key+\") hasI=\"+this._hasInput );\n    \n    // ESC\n    if( key === 27 ) {\n\tthis._abortPattern( this._popNode );\n\t//DEBUG this._logStatus( \"\" );\n    }\n    // Check for every template\n    if( this._hasInput && this._state === \"VOID\" ) {\n\t// check every template's pattern\n\tvar idT, template;\n\tfor( idT=0; idT < this._listTemp.length; idT++ ) {\n\t    template = this._listTemp[idT];\n\t    if( this._lastChar === template.pat[template.pos] ) {\n\t\ttemplate.pos += 1;\n\t\t//DEBUG console.log( \"__CHECK : pat=\"+template.pat+\" pos=\"+template.pos );\n\t\t// Pattern totaly matched ?\n\t\tif( template.pos === template.pat.length ) {\n\t\t    //DEBUG console.log( \"__CHECK => found \"+template.pat );\n\t\t    this._state = \"PATTERN\";\n\t\t    this._template = template;\n\t\t    \n\t\t    break; // get out of loop\n\t\t}\n\t    }\n\t    else {\n\t\ttemplate.pos = 0;\n\t\t//DEBUG console.log( \"__CHECK : pat=\"+template.pat+\" pos=\"+template.pos );\n\t    }\n\t}\n    }\n    // a pattern\n    else if( this._state === \"PATTERN\" || this._state === \"SELECT\" ) {\n\t// Pattern below cursor : undefined if no pattern\n\tvar pattern = extractPattern( val, curPos, this._template );\n\tif( key === 13 ) { // ENTER\n\t    //DEBUG console.log( \"KEY : Enter\" );\n    \t    // Choice made in the displayNode ?\n    \t    var selected = this._idxChoice > -1 && this._idxChoice !== this._maxMatch;\n    \t    //DEBUG console.log( \"   > sel=\"+selected+\" len=\"+this._bestChoices.length );\n    \t    if( selected ) {\n    \t\t//DEBUG console.log( \"   > selected\" );\n\t\tvar temp = this._bestMatches[this._idxChoice];\n\t\tvar str = temp.str;\n\t\tif( this._template.field === \"body\" ) {\n\t\t    str = $tw.wiki.getTiddlerText( temp.title );\n\t\t}\n    \t\tinsertInto( this._areaNode,\n\t\t\t    str,\n\t\t\t    pattern.start, curPos, this._template );\n\t\t// save this new content\n\t\tthis._widget.saveChanges( this._areaNode.value );\n\t    }\n\t    // otherwise take the first choice (if exists)\n\t    else if( this._bestMatches.length > 0 ) {\n    \t\t//DEBUG console.log( \"   > take first one\" );\n\t\tvar temp = this._bestMatches[0];\n\t\tvar str = temp.str;\n\t\tif( this._template.field === \"body\" ) {\n\t\t    str = $tw.wiki.getTiddlerText( temp.title );\n\t\t}\n    \t\tinsertInto( this._areaNode,\n\t\t\t    str,\n\t\t\t    pattern.start, curPos, this._template );\n\t\t// save this new content\n\t\tthis._widget.saveChanges( this._areaNode.value );\n\t    }\n\t    this._abortPattern( this._popNode );\n\t\t//DEBUG this._logStatus( \"\" );\n    \t    }\n\t    else if( key === 38 && this._hasInput === false) { // up\n\t\tthis._state = \"SELECT\";\n    \t\tevent.preventDefault();\n    \t\tthis._previous( this._popNode );\n\t\t//DEBUG this._logStatus( pattern.text );\n    \t\t//event.stopPropagation();\n    \t    }\n    \t    else if( key === 40 && this._hasInput === false) { // down\n\t\tthis._state = \"SELECT\";\n    \t\tevent.preventDefault();\n    \t\tthis._next( this._popNode );\n\t\t//DEBUG this._logStatus( pattern.text );\n    \t\t//event.stopPropagation();\n    \t    }\n    \t    else if( pattern ) { // pattern changed by keypressed\n\t\tthis._idxChoice = -1;\n    \t\t// log\n\t\t//DEBUG this._logStatus( pattern.text );\n    \t\t// Popup with choices if pattern at least minPatLength letters long\n\t\tif( pattern.text.length > (this._minPatLength-1) ) {\n\t\t    // compute listOptions from templateFilter\n\t\t    var allOptions;\n\t\t    if( this._template )\n\t\t\tallOptions = this._widget.wiki.filterTiddlers( this._template.filter );\n\t\t    else\n\t\t\tallOptions = this._widget.wiki.filterTiddlers(\"[all[tiddlers]]\");\n\t\t    this._findBestMatches( allOptions, pattern.text );\n    \t\t    this._popNode.innerHTML = \"\";\n    \t\t    //console.log( \"BC \"+ this._pattern + \" => \" + choice );\n    \t\t    if (this._bestMatches.length > 0) {\n\t\t\tfor( var i=0; i<this._bestMatches.length; i++) {\n    \t\t\t    this._popNode.appendChild( \n\t\t\t\titemHTML(this._bestMatches[i].str,\n\t\t\t\t\t pattern.text));\n    \t\t\t}\n\t\t\tthis._display( this._areaNode, this._popNode );\t\t\t\n    \t\t    }\n\t\t    else { // no matches\n\t\t\tthis._state = \"PATTERN\";\n\t\t\tthis._undisplay( this._popNode );\n\t\t    }\n\t\t}\n    \t    }\n\t    else { // no pattern detected\n\t\tthis._abortPattern( this._popNode );\n\t    }\n\t}\n\t// to ensure that one MUST add an input (through onInput())\n\tthis._hasInput = false;\n};\n// **************************************************************************\n// ******************************************************** private functions\n// **************************************************************************\n/**\n * Create popup element.\n */\nvar createPopup = function( widget, node ) {\n    // Insert a special \"div\" element for poping up\n    // Its 'display' property in 'style' control its visibility\n    var popupNode = widget.document.createElement(\"div\");\n    popupNode.setAttribute( \"style\", \"display:none; position: absolute;\");\n    popupNode.className = \"tc-block-dropdown ect-block-dropdown\";\n    // Insert the element into the DOM\n    node.parentNode.insertBefore(popupNode,node.nextSibling);\n    //CHECK the domNodes is a attribute of Widget [widget.js]\n    //CHECK this.domNodes.push(popupNode);\n    \n    return popupNode;\n};\n/**\n * Extract Pattern from text at a given position.\n *\n * Between previous template.pat (or '[[') and pos\n * \n * If no pattern -> undefined\n */\nvar extractPattern = function( text, pos, template ) {\n    // Detect previous and next ]]=>STOP or [[=>START\n    var sPat = template.pat ? template.pat : '[[';\n    var pos_prevOpen = text.lastIndexOf( sPat, pos );\n    var ePat = template.end ? template.end : ']]';\n    var pos_prevClosed = text.lastIndexOf( ePat, pos );\n    var pos_nextClosed = text.indexOf( ePat, pos  );\n    //DEBUG console.log(\"__CALC st=\"+sPat+\" -> en=\"+ePat );\n    //DEBUG console.log(\"__CALC po=\"+pos_prevOpen+\" pc=\"+pos_prevClosed+\" nc=\"+pos_nextClosed+\" pos=\"+pos);\n    pos_nextClosed = (pos_nextClosed >= 0) ? pos_nextClosed : pos;\n    \n    if( (pos_prevOpen >= 0) &&                 // must be opened\n\t((pos_prevOpen > pos_prevClosed ) ||  // not closed yet\n\t (pos_prevClosed === pos))) {          // closed at cursor\n\t//DEBUG console.log(\"     pat=\"+text.slice( pos_prevOpen+sPat.length, pos) );\n\treturn { text: text.slice( pos_prevOpen+sPat.length, pos ),\n\t\t start: pos_prevOpen,\n\t\t end: pos_nextClosed\n\t       };\n    }\n};\n/**\n * Controls how list items are generated.\n * Function that takes two parameters :\n *  - text : suggestion text\n *  - input : the user’s input\n * Returns : list item. \n * Generates list items with the user’s input highlighted via <mark>.\n */\nvar itemHTML = function (text, input ) {\n    // text si input === ''\n    // otherwise, build RegExp that is global (g) and case insensitive (i)\n    // to replace with <mark>$&</mark> where \"$&\" is the matched pattern\n    var html = input === '' ? text : text.replace(RegExp(regExpEscape(input.trim()), \"gi\"), \"<mark>$&</mark>\");\n    return create(\"li\", {\n\tinnerHTML: html,\n\t\"patt-selected\": \"false\"\n    });\n};\n/**\n * Insert text into a textarea node, \n * enclosing in 'template.start..template.end'\n *\n * - posBefore : where the 'template.pat+pattern' starts\n * - posAfter : where the cursor currently is\n */\nvar insertInto = function(node, text, posBefore, posAfter, template ) {\n    //DEBUG console.log( \"__INSERT : \"+template.pattern+\":\"+template.filter+\":\"+template.mask+\":\"+template.field+\":\"+template.start+\":\"+template.end );\n    var val = node.value;\n    var sStart = template.start !== undefined ? template.start : '[[';\n    var sEnd = template.end !== undefined ? template.end : ']]';\n    var newVal = val.slice(0, posBefore) + sStart + text + sEnd + val.slice(posAfter);\n    //console.log(\"__INSERT s=\"+sStart+\" e=\"+sEnd);\n    //console.log (\"__INSERT pb=\"+posBefore+\" pa=\"+posAfter+\" txt=\"+text);\n    //console.log( \"NEW VAL = \"+newVal );\n    // WARN : Directly modifie domNode.value.\n    // Not sure it does not short-circuit other update methods of the domNode....\n    // i.e. could use widget.updateEditor(newVal) from edit-comptext widget.\n    //      but how to be sure that cursor is well positionned ?\n    node.value = newVal;\n    node.setSelectionRange(posBefore+text.length+sStart.length+sEnd.length, posBefore+text.length+sStart.length+sEnd.length );\n};\n/**\n * Add an '\\' in front of -\\^$*+?.()|[]{}\n */\nvar regExpEscape = function (s) {\n    return s.replace(/[-\\\\^$*+?.()|[\\]{}]/g, \"\\\\$&\");\n};\n/**\n * Add an element in the DOM.\n */\nvar create = function(tag, o) {\n    var element = document.createElement(tag);\n    \n    for (var i in o) {\n\tvar val = o[i];\n\t\n\tif (i === \"inside\") {\n\t    $(val).appendChild(element);\n\t}\n\telse if (i === \"around\") {\n\t    var ref = $(val);\n\t    ref.parentNode.insertBefore(element, ref);\n\t    element.appendChild(ref);\n\t}\n\telse if (i in element) {\n\t    element[i] = val;\n\t}\n\telse {\n\t    element.setAttribute(i, val);\n\t}\n    }\n    \n    return element;\n};\n\n\nexports.Completion = Completion;\n\n})();\n\n    \n",
            "type": "application/javascript",
            "title": "$:/plugins/snowgoon88/edit-comptext/completion.js",
            "module-type": "library"
        },
        "$:/plugins/snowgoon88/edit-comptext/edit-comptext.css": {
            "text": "\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock\n\n/* The \\rules pragma at the top of the tiddler restricts the WikiText \n * to just allow macros and transclusion. This avoids mistakenly \n * triggering unwanted WikiText processing.\n * \n * MUST not save as text/css for macro to be processed\n*/\n\n.ect-block-dropdown li {\n    display: block;\n    padding: 4px 14px 4px 14px;\n    text-decoration: none;\n    color: <<colour tiddler-link-foreground>>; /*#5778d8;*/ \n    background: transparent;\n}\n.ect-block-dropdown li[patt-selected=\"true\"] {\n    color: <<colour tiddler-link-background>>; /*#ffffff; */\n    background-color: <<colour tiddler-link-foreground>>; /*#5778d8; */\n}\n.ect-block-dropdown li[patt-selected=\"true\"] mark {\n    background: hsl(86, 100%, 21%);\n    color: inherit;\n}\n\n",
            "type": "text/vnd.tiddlywiki",
            "title": "$:/plugins/snowgoon88/edit-comptext/edit-comptext.css",
            "tags": "[[$:/tags/Stylesheet]]"
        },
        "$:/plugins/snowgoon88/edit-comptext/readme": {
            "title": "$:/plugins/snowgoon88/edit-comptext/readme",
            "text": "!! What ?\nThis plugin adds ''completion'' when editing the body of a tiddler.\n\n* Enter completion-mode by typing `[[` or `CTRL+SPACE`\n* A list of tiddlers with a title that matches the pattern between `[[` and cursor appears\n* `UP/DOWN` keys can select a tiddler, `ENTER` to validate\n* If there is only one match, `ENTER` selects it.\n* `NEW` : you can specify you own trigger pattern and the list of possible completions. See [[$:/plugins/snowgoon88/edit-comptext/usage]] for more details.\n\n\n!! To try it or get the latest news\nSee [[http://snowgoon88.github.io/TW5-extendedit]]\n\n!! Install \n\nTo add the plugin to your own TiddlyWiki5, just drag this link to the browser window:\n\n[[$:/plugins/snowgoon88/edit-comptext]]\n\nSometime, a small configuration step is then needed\n\nin `$:/ControlPanel -> Advanced -> Editor Type -> text/vnd.tiddlywiki` you must chose `comptext` instead of `text`.\n\nReload and « voilà »...\n\nThis plugin is quite mature now :o)\n\n!! Old version\n\n* A version compatible with 5.0.8 to 5.1.11 : [[http://snowgoon88.github.io/TW5-extendedit/index_5.1.11.html]]\n\n!! Source code\nOn github [[https://github.com/snowgoon88/TW5-extendedit]]\n\nGet in touch : snowgoon88(AT)gmail(DOT)com\n"
        },
        "$:/plugins/snowgoon88/edit-comptext/usage": {
            "title": "$:/plugins/snowgoon88/edit-comptext/usage",
            "text": "''Important'' : be sure that in `$:/ControlPanel -> Advanced -> Editor Type -> text/vnd.tiddlywiki` you have chosen `comptext` instead of `text`.\n\nConfiguration of the edit-comptext plugin can be done through the tiddler [[$:/plugins/snowgoon88/edit-comptext/config]]. Use a JSON tiddler (do not forget to set the type to `application/json`. See some examples at [[$:/plugins/snowgoon88/edit-comptext/examples]]\n\nIn the `configuration` object you can set :\n\n* `caseSensitive`: `true`/`false` (is search case sensitive ?)\n* `maxMatch` : an `integer` (max number of match displayed)\n* `minPatLength` : an `integer` (minimal length of a pattern to trigger completion search)\n* `triggerKeyCombination ` : a `string` representing the key combination that triggers the autocompletion popup. To use modifier keys in your combination, use following conversions : `ctrl` -> `^`, `alt` -> `!`, `shift` -> `+`. Note: ` ` (literally a whitespace) represents the `space` key.\n\nIn the `template` array you can specify the various completion templates that will be used. Every template can have the following members.\n\n* `pattern` : `string` (pattern that triggers a completion, default \"[[\" )\n* `title` or `body`: `string` (the filter operators that gives the list of valid completions, default \"[all[tiddlers]!is[system]]\"). If you specify `body`, then the body of the tiddler will be inserted on selection.\n* `start` : `string` (when completion is chosen, start is put before the completion, default \"[[\")\n* `end` : `string` (when completion is chosen, end is put after the completion, default \"]]\")\n\n!! Current body of Config Tiddler\n\n{{$:/plugins/snowgoon88/edit-comptext/config}}\n\n"
        }
    }
}
{
  "configuration": {
      "caseSensitive" : false,
      "maxMatch" : 8,
      "minPatLength" : 2,
      "triggerKeyCombination" : "^ "
  },
  "template": [{
      "pattern": "[[",
      "filter": "[all[tiddlers]!is[system]]",
      "start": "[[",
      "end": "]]"
      }
  ]
}
{
    "tiddlers": {
        "$:/plugins/sq/editor-autolist/editor-operation-autolist": {
            "text": "/*\\\ntitle: $:/plugins/sq/editor-autolist/editor-operation-autolist.js\ntype: application/javascript\nmodule-type: texteditoroperation\nText editor operation to automate syntax for lists\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"autolist\"] = function(event,operation) {\n\t\n\tvar lineStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart);\n\tvar lineEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selStart);\n\tvar line = operation.text.substring(lineStart,lineEnd);\t\n\t\n\tvar listPrefixRegex = /^((\\*|#)+).*/;\n\tvar match = line.match(listPrefixRegex);\n\t\n\tvar mode = event.paramObject? event.paramObject.mode : undefined;\n\t\n\t//ensure we only handle lines starting with * or #\n\tif(match != null && match[1]) {\n\t\t// check if we are handling indent level\n\t\tif(mode === \"indent\" || mode === \"unindent\") {\n\t\t\tvar indentRegExp = /^((\\*|#)+)(.*)$/;\n\t\t\tvar indentMatch = line.match(indentRegExp);\n\t\t\tif(indentMatch != null) {\n\t\t\t\t//check if the line has content\n\t\t\t\tvar content = (indentMatch[3].trim().length != 0) ? indentMatch[3].trim() : \"\";\n\t\t\t\toperation.cutStart = lineStart;\n\t\t\t\toperation.cutEnd = lineEnd;\n\t\t\t\tif(mode === \"indent\") {\t\t\t\t\n\t\t\t\t\t//indent a line\n\t\t\t\t\toperation.replacement = indentMatch[1] + indentMatch[2] + \" \" + content;\n\t\t\t\t\toperation.newSelStart = operation.selStart + 1;\n\t\t\t\t\toperation.newSelEnd = operation.selEnd + 1;\n\t\t\t\t} else if(mode === \"unindent\") {\n\t\t\t\t\t//unindent a line\n\t\t\t\t\toperation.replacement = indentMatch[1].substring(0,indentMatch[1].length - 1) + \" \" + content;\n\t\t\t\t\toperation.newSelStart = operation.selStart - 1;\n\t\t\t\t\toperation.newSelEnd = operation.selEnd - 1;\t\t\t\t\t\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t//handle enter key, meaning new line\n\t\t\tvar trimmed = match[0].replace(/\\s\\s*$/, '');\n\t\t\tvar prefixRegEx = /^((\\*|#)+)$/;\n\t\t\tvar trimmedMatch = trimmed.match(prefixRegEx);\n\t\t\tif(trimmedMatch != null) {\n\t\t\t\t// the line only contains * or # characters and optional whitespace\n\t\t\t\t//terminate the list\n\t\t\t\toperation.replacement = \"\\n\";\n\t\t\t\toperation.cutStart = lineStart;\n\t\t\t\toperation.cutEnd = operation.selStart;\n\t\t\t\toperation.newSelStart = lineStart + 1;\n\t\t\t\toperation.newSelEnd = lineStart + 1;\n\t\t\t} else {\n\t\t\t\t// continue indent level on next line\n\t\t\t\tvar prefix = match[1];\n\t\t\t\toperation.replacement = \"\\n\" + prefix + \" \";\n\t\t\t\toperation.cutStart = operation.selStart;\n\t\t\t\toperation.cutEnd = operation.selStart;\n\t\t\t\t\n\t\t\t\t//check if there is trailing whitespace on the line we are on\n\t\t\t\tvar lineEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selStart);\n\t\t\t\tvar trailingText = operation.text.substring(operation.selStart,lineEnd);\n\t\t\t\tif(trailingText.trim().length == 0) {\n\t\t\t\t\toperation.cutEnd = lineEnd;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\toperation.newSelStart = operation.selStart + prefix.length + 2;\n\t\t\t\toperation.newSelEnd = operation.selEnd + prefix.length + 2;\n\t\t\t}\n\t\t}\n\t} else if(mode != \"indent\" && mode != \"unindent\") {\n\t\t// we need to manually add a linebreak for lines not starting with list markup\n\t\toperation.replacement = \"\\n\";\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t\toperation.newSelStart = operation.selStart + 1;\n\t\toperation.newSelEnd = operation.selEnd + 1;\n\t}\n};\n\n})();",
            "type": "application/javascript",
            "title": "$:/plugins/sq/editor-autolist/editor-operation-autolist",
            "tags": "",
            "module-type": "texteditoroperation",
            "modified": "20200804125155562",
            "created": "20200803160356743"
        },
        "$:/plugins/sq/editor-autolist/EditorToolbar-autolist": {
            "created": "20200803165453913",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"autolist\"\n/>\n",
            "title": "$:/plugins/sq/editor-autolist/EditorToolbar-autolist",
            "tags": "$:/tags/EditorToolbar",
            "shortcuts": "((autolist-newline))",
            "modified": "20200804124434675",
            "icon": "$:/core/images/list-bullet",
            "description": "",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "caption": "",
            "button-classes": "sq-text-editor-btn-hidden"
        },
        "$:/plugins/sq/editor-autolist/styles": {
            "text": ".sq-text-editor-btn-hidden {\n\tdisplay: none;\n}",
            "title": "$:/plugins/sq/editor-autolist/styles",
            "tags": "$:/tags/Stylesheet",
            "modified": "20200803172530073",
            "created": "20200803171440138"
        },
        "$:/plugins/sq/editor-autolist/EditorToolbar-autolist-indent": {
            "created": "20200803213912954",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"autolist\"\n\tmode=\"indent\"\n/>\n",
            "title": "$:/plugins/sq/editor-autolist/EditorToolbar-autolist-indent",
            "tags": "$:/tags/EditorToolbar",
            "shortcuts": "((autolist-indent))",
            "modified": "20200804124659294",
            "icon": "$:/core/images/list-bullet",
            "description": "",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "caption": "",
            "button-classes": "sq-text-editor-btn-hidden"
        },
        "$:/plugins/sq/editor-autolist/EditorToolbar-autolist-unindent": {
            "created": "20200804122848593",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"autolist\"\n\tmode=\"unindent\"\n/>\n",
            "title": "$:/plugins/sq/editor-autolist/EditorToolbar-autolist-unindent",
            "tags": "$:/tags/EditorToolbar",
            "shortcuts": "((autolist-unindent))",
            "modified": "20200804124808496",
            "icon": "$:/core/images/list-bullet",
            "description": "",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "caption": "",
            "button-classes": "sq-text-editor-btn-hidden"
        },
        "$:/config/shortcuts/autolist-newline": {
            "created": "20200804124551033",
            "title": "$:/config/shortcuts/autolist-newline",
            "text": "Enter",
            "modified": "20200804124551033"
        },
        "$:/config/shortcuts/autolist-indent": {
            "created": "20200804124746636",
            "title": "$:/config/shortcuts/autolist-indent",
            "text": "Tab",
            "modified": "20200804124746636"
        },
        "$:/config/shortcuts/autolist-unindent": {
            "created": "20200804124833452",
            "title": "$:/config/shortcuts/autolist-unindent",
            "text": "shift-Tab",
            "modified": "20200804124833452"
        },
        "$:/config/ShortcutInfo/autolist-newline": {
            "created": "20200804124436341",
            "text": "Add a newline and list markup if in a list",
            "tags": "",
            "title": "$:/config/ShortcutInfo/autolist-newline",
            "modified": "20200804124533962"
        },
        "$:/config/ShortcutInfo/autolist-indent": {
            "created": "20200804124703604",
            "text": "Indent a line in a list",
            "tags": "",
            "title": "$:/config/ShortcutInfo/autolist-indent",
            "modified": "20200804124720020"
        },
        "$:/config/ShortcutInfo/autolist-unindent": {
            "created": "20200804124811668",
            "text": "Unindent a line in a list",
            "tags": "",
            "title": "$:/config/ShortcutInfo/autolist-unindent",
            "modified": "20200804124823040"
        }
    }
}
{
"tiddlers": {
"$:/_sq/Stories/config/openLinkDivert": {
    "text": "bottom",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/config/openLinkDivert",
    "modified": "20200422063802598",
    "created": "20170629173808777"
},

"$:/_sq/Stories/config/showRiverDropZones": {
    "text": "disable",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/config/showRiverDropZones",
    "modified": "20200523213957947",
    "created": "20200417170940547"
},

"$:/_sq/Stories/config/sidebaroverlaybreakpoint": {
    "text": "1500px",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/config/sidebaroverlaybreakpoint",
    "modified": "20200416182732404",
    "created": "20170616192704225"
},

"$:/_sq/Stories/config/snippets/viewswitcher": {
    "text": "\\define icon()\n$:/core/images/storyview-$(storyview)$\n\\end\n<$linkcatcher to=\"$:/_sq/Stories/config/Story2-storyview\">\n<div class=\"tc-chooser\">\n<$list filter=\"[storyviews[]]\" variable=\"storyview\">\n<$set name=\"cls\" filter=\"[<storyview>prefix{$:/_sq/Stories/config/Story2-storyview}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>>\n<$link to=<<storyview>>>\n<$transclude tiddler=<<icon>>/>\n<$text text=<<storyview>>/>\n</$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/config/snippets/viewswitcher",
    "tags": "",
    "modified": "20200416183434009",
    "created": "20200416183108721"
},

"$:/_sq/Stories/config/Story2-storyview": {
    "text": "classic",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/config/Story2-storyview",
    "tags": "",
    "modified": "20200417205214764",
    "created": "20200415213157946"
},

"$:/_sq/Stories/config/twostorybreakpoint": {
    "text": "1100px",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/config/twostorybreakpoint",
    "modified": "20200416182753284",
    "created": "20170616192701335"
},

"$:/_sq/Stories/CorePatch/ButtonDispatchMessage": {
    "text": "var ButtonWidget = require(\"$:/core/modules/widgets/button.js\").button;\n\nButtonWidget.prototype.dispatchMessage = function(event) {\n\tthis.dispatchEvent({type: this.message, param: this.param, tiddlerTitle: this.getVariable(\"currentTiddler\"), event: event, navigateFromNode: this});\n};\n\n/*\nInvoke the action widgets that are descendents of the current widget.\n*/\nButtonWidget.prototype.invokeActions = function(triggeringWidget,event) {\nevent.navigateFromNode = this;\n\tvar handled = false;\n\t// For each child widget\n\tfor(var t=0; t<this.children.length; t++) {\n\t\tvar child = this.children[t];\n\t\t// Invoke the child if it is an action widget\n\t\tif(child.invokeAction) {\n\t\t\tchild.refreshSelf();\n\t\t\tif(child.invokeAction(triggeringWidget,event)) {\n\t\t\t\thandled = true;\n\t\t\t}\n\t\t}\n\t\t// Propagate through through the child if it permits it\n\t\tif(child.allowActionPropagation() && child.invokeActions(triggeringWidget,event)) {\n\t\t\thandled = true;\n\t\t}\n\t}\n\treturn handled;\n};",
    "bag": "default",
    "revision": "0",
    "type": "application/javascript",
    "title": "$:/_sq/Stories/CorePatch/ButtonDispatchMessage",
    "tags": "",
    "module-type": "startup",
    "modified": "20200430193633599",
    "created": "20170616103202530"
},

"$:/_sq/Stories/divertTiddlerEditMacro": {
    "text": "\\define divertTiddlerEditButton()\n<$set name=\"original\" value={{!!draft.title}}>\n<$set name=\"otherStoryList\"  filter=\"[enlist{$:/_sq/Stories/StoriesList!!list}] -[<tv-story-list>]\" select=\"0\">\n<$set name=\"otherHistoryList\" filter=\"[enlist{$:/_sq/Stories/HistoriesList!!list}] -[<tv-history-list>]\" select=\"0\">\n\t<$button class=<<tv-config-toolbar-class>> tooltip=\"Divert this tiddler to the other story for viewing\">\n\t\t<$navigator story=<<otherStoryList>> history=<<otherHistoryList>> >\n\t\t\t<$action-navigate $to=<<original>> />\n\t\t</$navigator>\n\t\t<span class=\"sq-button-divert-right sq-button-divert\">{{$:/_sq/Stories/icons/divert-right.svg}}</span><span class=\"sq-button-divert-left sq-button-divert\">{{$:/_sq/Stories/icons/divert-left.svg}}</span>\n\t</$button>\n</$set>\n</$set>\n</$set>\n\\end\n\n<<divertTiddlerEditButton>>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/divertTiddlerEditMacro",
    "tags": "$:/tags/EditToolbar",
    "modified": "20200523202347182",
    "list-before": "$:/core/ui/Buttons/delete",
    "description": "divert right/left",
    "created": "20170616074148780",
    "caption": "{{$:/_sq/Stories/icons/divert-right.svg}}"
},

"$:/_sq/Stories/divertTiddlerMacro": {
    "created": "20170609055347900",
    "text": "\\define divertTiddlerButton()\n<$set name=\"otherStoryList\" filter=\"[enlist{$:/_sq/Stories/StoriesList!!list}] -[<tv-story-list>]\" select=\"0\">\n<$set name=\"otherHistoryList\" filter=\"[enlist{$:/_sq/Stories/HistoriesList!!list}] -[<tv-history-list>]\" select=\"0\">\n\t<$button class=<<tv-config-toolbar-class>> tooltip=\"Divert this tiddler to the other story\">\n\t\t<$navigator story=<<tv-story-list>> history=<<tv-history-list>> >\n\t\t\t<$action-sendmessage $message=\"tm-close-tiddler\" $param=<<currentTiddler>> />\n\t\t</$navigator>\n\t\t<$navigator story=<<otherStoryList>> history=<<otherHistoryList>> >\n\t\t\t<$action-navigate $to=<<currentTiddler>> />\n\t\t</$navigator>\t\n\t\t<span class=\"sq-button-divert-right sq-button-divert\">{{$:/_sq/Stories/icons/divert-right.svg}}</span><span class=\"sq-button-divert-left sq-button-divert\">{{$:/_sq/Stories/icons/divert-left.svg}}</span>\n\t</$button>\n</$set>\n</$set>\n\\end\n\n<<divertTiddlerButton>>\n",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/divertTiddlerMacro",
    "tags": "$:/tags/ViewToolbar",
    "modified": "20200806034422564",
    "list-before": "",
    "description": "Divert left/right",
    "caption": "{{$:/_sq/Stories/icons/divert-right.svg}} divert left/right"
},

"$:/_sq/Stories/EditTiddlerHook": {
    "text": "$tw.hooks.addHook(\"th-editing-tiddler\", function(event) {\n\tvar targetTitle = event.tiddlerTitle;\n\tvar stories = $tw.wiki.getTiddlerList('$:/_sq/Stories/StoriesList');\n\tvar draftTitle = $tw.wiki.findDraft(targetTitle);\n\tvar shiftKey = (event && event.event) ? event.event.shiftKey : null;\n\n\t//if !draftTitle, its not open anywhere\n\t//cant be open without existing, but can exist without being opened\n\n\tif(!draftTitle && !shiftKey) {\n\t\treturn true;\n\t}\n\n\tvar node = event.navigateFromNode;\n\tvar thisStory = node.getVariable(\"tv-story-title\");\n\tvar otherStory = (stories[0] == thisStory)? stories[1] : stories[0];\n\tvar otherStoryList = $tw.wiki.getTiddlerList(otherStory);\n\n\tif(otherStoryList.indexOf(draftTitle) > -1) {\n\t\talert(\"This tiddler is already open for editing in the other story\");\n\t\treturn false;\n\t}\n\n\tvar generateDraftTitle = function(title) {\n\t\tvar c = 0,\n\t\tdraftTitle;\n\t\tdo {\n\t\t\tdraftTitle = \"Draft \" + (c ? (c + 1) + \" \" : \"\") + \"of '\" + title + \"'\";\n\t\t\tc++;\n\t\t} while($tw.wiki.tiddlerExists(draftTitle));\n\t\treturn draftTitle;\n\t};\n\t\n\tif(shiftKey) {\n    //open in other story\n\t\tif(!draftTitle) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(targetTitle);\n\t\t\tdraftTitle = generateDraftTitle(targetTitle);\n\t\t\tvar draftTiddler = new $tw.Tiddler(\n\t\t\t\ttiddler,\n\t\t\t\t{\n\t\t\t\t\ttitle: draftTitle,\n\t\t\t\t\t\"draft.title\": targetTitle,\n\t\t\t\t\t\"draft.of\": targetTitle\n\t\t\t\t},\n\t\t\t\t$tw.wiki.getModificationFields()\n\t\t\t);\n\t\t\t$tw.wiki.addTiddler(draftTiddler);\n\t\t}\n\t\tvar otherStoryTiddler = $tw.wiki.getTiddler(otherStory);\n\t\totherStoryList.splice(0 ,0, draftTitle);\n\t\t$tw.wiki.addTiddler(new $tw.Tiddler(\n\t\t\t{title: otherStory},\n\t\t\totherStoryTiddler,\n\t\t\t{list:otherStoryList}\n\t\t));\n\t\treturn false;\n\t}\n\n\treturn true;\n});\n",
    "bag": "default",
    "revision": "0",
    "type": "application/javascript",
    "title": "$:/_sq/Stories/EditTiddlerHook",
    "tags": "",
    "module-type": "startup",
    "modified": "20200729135111179",
    "created": "20170616091547338"
},

"$:/_sq/Stories/HistoriesList": {
    "text": "",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/HistoriesList",
    "tags": "",
    "modified": "20200414145004336",
    "list": "$:/_sq/Stories/Story2HistoryList $:/HistoryList",
    "created": "20170610091606312"
},

"$:/_sq/Stories/icons/bars-empty.svg": {
    "text": "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 100 100\" version=\"1.1\" x=\"0px\" y=\"0px\" class=\"tc-image-bars-empty tc-image-button\" width=\"40pt\" height=\"40pt\"><title>Single fold</title><desc>Created with Sketch.</desc><g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\"><g stroke=\"#000000\"><rect stroke-width=\"2\" x=\"17\" y=\"17\" width=\"66\" height=\"66\" rx=\"2\"/><path d=\"M50.5,18.5 L50.5,80.789646\" stroke-linecap=\"round\" stroke-dasharray=\"2,3,2,3\"/></g></g></svg>",
    "bag": "default",
    "revision": "0",
    "type": "image/svg+xml",
    "title": "$:/_sq/Stories/icons/bars-empty.svg",
    "tags": "",
    "modified": "20200414145004334",
    "created": "20170617203017607"
},

"$:/_sq/Stories/icons/bars.svg": {
    "text": "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" version=\"1.1\" x=\"0px\" y=\"0px\" viewBox=\"0 0 100 100\" enable-background=\"new 0 0 100 100\" xml:space=\"preserve\" class=\"tc-image-bars tc-image-button\" width=\"20\" height=\"20\" ><path d=\"M41.667,0h-37.5C0,0,0,0,0,4.167v91.667C0,100,0,100,4.167,100h37.5c4.167,0,4.167,0,4.167-4.167V4.167  C45.833,0,45.833,0,41.667,0z M95.833,0h-37.5c-4.167,0-4.167,0-4.167,4.167v91.667c0,4.167,0,4.167,4.167,4.167h37.5  C100,100,100,100,100,95.833V4.167C100,0,100,0,95.833,0z\"/></svg>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/icons/bars.svg",
    "modified": "20200414145004333",
    "created": "20170608202154511"
},

"$:/_sq/Stories/icons/divert-left.svg": {
    "text": "<svg class=\"tc-image-button\"  x=\"0px\" y=\"0px\" width=\"30pt\" height=\"30pt\" viewBox=\"0 0 100 125\" ><path  d=\"M7.197,44.697l27.5-27.5c2.929-2.929,7.678-2.929,10.607,0c2.929,2.929,2.929,7.678,0,10.607L30.607,42.5H70  h0c5.118,0,10.237,1.953,14.142,5.858c7.81,7.81,7.81,20.474,0,28.284c-2.929,2.929-7.678,2.929-10.607,0  c-2.929-2.929-2.929-7.678,0-10.607c1.953-1.953,1.953-5.118,0-7.071C72.559,57.988,71.28,57.5,70,57.5h0v0H30.607l14.697,14.697  c2.929,2.929,2.929,7.678,0,10.607c-2.929,2.929-7.678,2.929-10.607,0L16.036,64.142l-8.839-8.839  C4.268,52.374,4.268,47.626,7.197,44.697z\"/></svg>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/icons/divert-left.svg",
    "modified": "20200414145004330",
    "created": "20170609061834078"
},

"$:/_sq/Stories/icons/divert-right.svg": {
    "text": "<svg class=\"tc-image-button\"  x=\"0px\" y=\"0px\" width=\"30pt\" height=\"30pt\" viewBox=\"0 0 100 125\" ><path d=\"M92.803,44.697l-27.5-27.5c-2.929-2.929-7.678-2.929-10.607,0c-2.929,2.929-2.929,7.678,0,10.607  L69.393,42.5H30h0c-5.118,0-10.237,1.953-14.142,5.858c-7.81,7.81-7.81,20.474,0,28.284c2.929,2.929,7.678,2.929,10.607,0  c2.929-2.929,2.929-7.678,0-10.607c-1.953-1.953-1.953-5.118,0-7.071C27.441,57.988,28.72,57.5,30,57.5h0v0h39.393L54.697,72.197  c-2.929,2.929-2.929,7.678,0,10.607s7.678,2.929,10.607,0l18.661-18.661l8.839-8.839C95.732,52.374,95.732,47.626,92.803,44.697z\"/></svg>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/icons/divert-right.svg",
    "modified": "20200414145004328",
    "created": "20170609061824401"
},

"$:/_sq/Stories/LinkKeybindings": {
    "text": "$tw.hooks.addHook('th-navigating', function(event) {\n\t//override core behaviour when shift key was used\n\tif( ((event.event && event.event.shiftKey) || (event.shiftKey && event)) && event.navigateTo) {\n\t\tvar stories = $tw.wiki.getTiddlerList('$:/_sq/Stories/StoriesList');\n\t\tvar node = event.navigateFromNode;\n\t\tvar thisStory = node.getVariable(\"tv-story-list\");\n\t\tvar otherStory = (stories[0] == thisStory)? stories[1] : stories[0];\t\n\t\tvar storyList = $tw.wiki.getTiddlerList(otherStory);\n\t\tvar slot = storyList.indexOf(event.navigateTo);\n\t\t\n\t\tif(slot < 0){\n\t\t\tif($tw.wiki.getTiddlerText(\"$:/config/Navigation/openLinkFromOutsideRiver\") === \"bottom\") {\n\t\t\t\n\t\t\t\tstoryList.splice(storyList.length, 0, event.navigateTo);\n\t\t\t} else {\n\t\t\t\tstoryList.splice(0, 0, event.navigateTo);\n\t\t\t}\n\t\t\tvar storyTiddler =\t$tw.wiki.getTiddler(otherStory);\n\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler(\n\t\t\t\t{title: otherStory},\n\t\t\t\tstoryTiddler,\n\t\t\t\t{list:storyList}\n\t\t\t));\n\t\t}\n\t\tvar histories = $tw.wiki.getTiddlerList('$:/_sq/Stories/HistoriesList');\n\t\tvar thisHistory = node.getVariable(\"tv-history-list\");\n\t\tvar otherHistory = (histories[0] == thisHistory) ? histories[1] : histories[0];\t\t\n\t\t$tw.wiki.addToHistory(event.navigateTo,event.navigateFromClientRect, otherHistory); \n\t\tif($tw.wiki.getTiddlerText(\"$:/config/_sq/Stories/story2\") === \"no\") {\n\t\t\t$tw.wiki.setText(\"$:/config/_sq/Stories/story2\",undefined,undefined,\"yes\",undefined);\n\t\t}\n\t\tevent.navigateTo = false;\n\t}\n\treturn event;\n});",
    "bag": "default",
    "revision": "0",
    "type": "application/javascript",
    "title": "$:/_sq/Stories/LinkKeybindings",
    "tags": "",
    "module-type": "startup",
    "modified": "20200422065240983",
    "created": "20170610071940508"
},

"$:/_sq/Stories/startup-actions": {
    "text": "<$action-deletetiddler $tiddler=\"$:/_sq/Stories/Story2HistoryList\"/>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/startup-actions",
    "tags": "$:/tags/StartupAction/Browser",
    "modified": "20200417172054199",
    "created": "20200417171756341"
},

"$:/_sq/Stories/Stories.css": {
    "text": "\\define if-fluid-fixed(text,disableText)\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" type=\"match\" text=\"fluid-fixed\">\n$text$\n</$reveal>\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" type=\"nomatch\" text=\"fluid-fixed\">\n$disableText$\n</$reveal>\n\\end\n\n\\define if-two-stories(twoStoryCommon, twoStorySidebar twoStoryNoSidebar, oneStoryText)\n<$reveal default=\"yes\" type=\"match\" text={{{[{$:/_sq/Stories/Story2StoryList!!list}length[]match[0]then[no]] ~[{$:/config/_sq/Stories/story2}]}}}>\n$twoStoryCommon$\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"yes\" default=\"yes\">\n$twoStorySidebar$\n</$reveal>\n<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"yes\" default=\"yes\">\n$twoStoryNoSidebar$\n</$reveal>\n</$reveal>\n<$reveal default=\"yes\" type=\"nomatch\" text={{{[{$:/_sq/Stories/Story2StoryList!!list}length[]match[0]then[no]] ~[{$:/config/_sq/Stories/story2}]}}}>\n$oneStoryText$\n</$reveal>\n\\end\n\n\n<pre>\n\n.tc-page-container.tc-page-view-zoomin .tc-storyview-zoomin-tiddler {\n\twidth: 100%;\n\tposition: relative;\n}\n\n.tc-btn-storytwotoggle {\n\tpadding:0px;\n}\n\n.tc-btn-storytwotoggle img {\n\twidth: 30px;\n\theight: 30px;\n}\n\n.tc-sidebar-lists .tc-btn-storytwotoggle-bars {\n\tfont-size: 1.5em;\n}\n\n.tc-sidebar-lists .tc-btn-storytwotoggle-bars svg {\n\tfill: #aaa;\n}\n\n.tc-story-river .sq-button-divert-left{\n\tdisplay: none;\n}\n\n.sq-story-rivertwo-scrollable::-webkit-scrollbar{width:10px}\n\n.sq-story-rivertwo-scrollable::-webkit-scrollbar-thumb{background:#a5a5a5;border-radius:10px}\n\n.sq-story-rivertwo-scrollable::-webkit-scrollbar-thumb:hover{background:#6f6f6f}\n\n.sq-story-rivertwo-scrollable::-webkit-scrollbar-thumb:active{background:#333}\n\n\t.tc-sidebar-tab-open.sq-sidebar-open .tc-btn-invisible.tc-btn-mini {\n\t\tpadding: 0 0.2em;\n\t}\n\n\t.tc-sidebar-tab-open.sq-sidebar-open .tc-sidebar-tab-open-item {\n\t\tpadding: 0.1em;\n\t}\n\t\n\thtml body.tc-body .tc-sidebar-tab-open.sq-sidebar-open a.tc-tiddlylink {\n\t\tfont-weight: 400;\n\t}\n\n.tc-sidebar-tab-open.sq-sidebar-open a.tc-tiddlylink {\n\tcolor:<<color very-muted-foreground>>;\n}\n\n.tc-sidebar-tab-open.sq-sidebar-open a.tc-tiddlylink:hover {\n\tcolor: <<color sidebar-tiddler-link-foreground-hover>>;\n}\n\n<<if-two-stories twoStoryCommon:\"\"\"\n@media (min-width: {{$:/_sq/Stories/config/twostorybreakpoint}}) {\n.sq-story-rivertwo-scrollable {\n\tposition: fixed;\n\ttop: calc(1em + {{$:/themes/tiddlywiki/vanilla/metrics/storytop}});\n\tbottom: 0;\n}\n\n.tc-story-river.sq-story-rivertwo .tc-tiddler-frame {\n\tmargin-right: 1em !important;\n\tmargin-left: 0;\n\tfont-size: {{$:/config/sq/Stories/story2/fontsize-title}}px;\n}\n\n.tc-story-river.sq-story-rivertwo .tc-tiddler-frame .tc-tiddler-body {\n\tfont-size: {{$:/config/sq/Stories/story2/fontsize-body}}px;\n}\n\n.tc-story-river {\n\tfloat: left;\n\tmargin-right: 0;\n\tpadding-right: 0em;\n\tpadding-top: 0em;\n}\n\nbody .tc-story-river {\n\tpadding: 0 1.5em 1em 0em !important;\n\tmin-height: 500px; /** so story 2 doesnt collapse to left when no tiddler in story 1***/ \n}\n\nbody .tc-story-river.tc-storytwo-river { padding-right:0em !important; }\n\nbody section.story-backdrop p:nth-child(1) {\n\tmargin:0;\n\tpadding:0;\n}\n\n.tc-story-river .sq-button-divert-right{\n\tdisplay:inline-block;\n}\n\n.tc-story-river .sq-button-divert-left{\n\tdisplay: none;\n}\n\n.tc-story-river.sq-story-rivertwo .sq-button-divert-left{\n\tdisplay:inline-block;\n}\n\n.tc-story-river.sq-story-rivertwo .sq-button-divert-right{\n\tdisplay: none;\n}\n\n.sq-storydropzone {\n\tpadding: 0.5em;\n\tborder:1px solid #bbb;\n\tcolor: #ccc;\n\ttext-align: center;\n\tposition: relative;\n\twidth: calc(100% - 45px);\n\t-moz-box-shadow:    inset 0 0 10px #ccc;\n\t-webkit-box-shadow: inset 0 0 10px #ccc;\n\tbox-shadow:         inset 0 0 10px #ccc;\n\tmargin-bottom: 1em;\n}\n\n.sq-storydropzone-newtiddlerbutton {\n\twidth: 40px;\n\tfloat: right;\n\tpadding: 0.2em 0.5em 0.5em 0.5em;\n\tmargin-top: 0em;\n\tmargin-right: 0.2em;\n}\n\n.tc-tiddler-frame {\n\tpadding-right:28px;\n}\n\n}\n\"\"\" twoStorySidebar:\"\"\"\n\n@media (min-width: {{$:/_sq/Stories/config/twostorybreakpoint}}) {\n.tc-story-river {\n\twidth: calc((100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}} + 14px)*{{$:/config/sq/Stories/storyRiverRatio}}/100);\n}\n\n.sq-storydropzone {\n\tpadding: 0.5em;\n\tborder:1px solid #bbb;\n\tcolor: #ccc;\n\ttext-align: center;\n}\n\n.sq-story-rivertwo-scrollable, .sq-story-rivertwo {\n\twidth: calc((100% -  {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}} + 14px)*(100 - {{$:/config/sq/Stories/storyRiverRatio}})/100);\n}\n}\n\n.tc-sidebar-scrollable {\n\twidth: calc({{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}} - 14px);\n\tpadding-left: 28px;\n}\n\n@media (min-width: {{$:/_sq/Stories/config/twostorybreakpoint}}) and (max-width: {{$:/_sq/Stories/config/sidebaroverlaybreakpoint}}) {\n\t\n\t.tc-story-river {\n\t\twidth: calc((100% - 1em)*{{$:/config/sq/Stories/storyRiverRatio}}/100);\n\t}\n\n\t.sq-story-rivertwo {\n\t\twidth: calc((100% -  1em)*(100 - {{$:/config/sq/Stories/storyRiverRatio}})/100);\n\t}\n\t\n\n\t.sq-story-rivertwo-scrollable {\n\t\twidth: calc((100% -  0.5em)*(100 - {{$:/config/sq/Stories/storyRiverRatio}})/100);\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tz-index:999;\n\t\tbackground:#eee;\n\t\tborder-left: 1px solid #ddd;\n\t}\n\n}\n\n\"\"\" twoStoryNoSidebar:\"\"\"\n\n.tc-story-river.sq-story-rivertwo {\n\tpadding-right: 0.5em;\n}\n\n@media (min-width: {{$:/_sq/Stories/config/twostorybreakpoint}}) {\n.tc-story-river {\n\twidth: calc((100% - 1em)*{{$:/config/sq/Stories/storyRiverRatio}}/100);\n}\n\n.sq-story-rivertwo {\n\twidth: calc((100% -  1em)*(100 - {{$:/config/sq/Stories/storyRiverRatio}})/100);\n}\n}\n\n.sq-story-rivertwo-scrollable {\n\twidth: calc((100% -  0.5em)*(100 - {{$:/config/sq/Stories/storyRiverRatio}})/100);\n}\n\n\n\n\n}\n\n@media (min-width: {{$:/_sq/Stories/config/twostorybreakpoint}}) and (max-width: {{$:/_sq/Stories/config/sidebaroverlaybreakpoint}}) {\n\t.tc-sidebar-scrollable {\n\t\tdisplay:none;\n\t}\n}\n\n\"\"\" oneStoryText: \"\"\"\n.sq-twostoriesonly {\n\tdisplay: none;\n}\n\n.tc-story-river {\n\tpadding-top: 15px;\n}\n\n\"\"\"\n>>\n\n@media (max-width: {{$:/_sq/Stories/config/twostorybreakpoint}}) {\n\t.sq-twostoriesonly {\n\t\tdisplay: none;\n\t}\n\n\t.tc-btn-storytwotoggle {\n\t\tdisplay: none;\n\t}\n\n\t.sq-stories-disabled {\n\t\tdisplay: none;\n\t}\n\n<<if-two-stories twoStoryCommon:\"\"\"\n\n\t.tc-storytwo-river {\n\t\tdisplay: none;\n\t}\n\n\t.tc-story-river {\n\t\twidth: auto;\n\t\tpadding-top: 15px;\n\t}\n\n\t.tc-story-river .sq-button-divert {\n\t\tdisplay: none;\n\t}\n\n\n\t.sq-story-rivertwo-scrollable {\n\t\tdisplay:none;\n\t}\n\n\n\"\"\" twoStorySidebar:\"\"\"\n\t.tc-story-river {\n\t\tmargin-right: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tborder-left: 0;\n\t\tz-index: inherit;\n\t\tbackground: transparent;\n\t}\n\"\"\" twoStoryNoSidebar: \"\"\"\n\t.tc-story-river {\n\t\tpadding-right: 2em;\n\t}\n\"\"\"\n\n>>\n}\n\n@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n.tc-story-river {\nmargin-right: 0;\n}\n}\n\n\n</pre>\n",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/Stories.css",
    "tags": "$:/tags/Stylesheet",
    "modified": "20200731105030883",
    "created": "20170608102837192"
},

"$:/_sq/Stories/StoriesList": {
    "text": "",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/StoriesList",
    "tags": "",
    "modified": "20200414145004320",
    "list": "$:/_sq/Stories/Story2StoryList $:/StoryList",
    "created": "20170610072420739"
},

"$:/_sq/Stories/Story2StoryList": {
    "title": "$:/_sq/Stories/Story2StoryList",
    "text": "",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "modified": "20200731105210982",
    "list": "$:/plugins/sq/Stories/changelog $:/config/sq/Stories/story2/fontsize-title $:/config/sq/Stories/storyRiverRatio [[Pack stories to plugin]]",
    "created": "20170615140314952"
},

"$:/_sq/Stories/Templates/RiverDropZone": {
    "text": "\\define drop-actions()\n<$action-listops $tiddler=<<otherStoryList>> $subfilter=\"+[remove<actionTiddler>]\"/> \n<$action-navigate $to=<<actionTiddler>>/>\n\\end\n<$reveal state=\"$:/_sq/Stories/config/showRiverDropZones\" text=\"enable\" type=\"match\" default=\"disable\">\n<div class=\"sq-storydropzone-container sq-twostoriesonly\">\n\t<div class=\"sq-storydropzone-newtiddlerbutton  tc-page-controls\">\n\t\t<$transclude tiddler=\"$:/core/ui/Buttons/new-tiddler\"/>\n\t</div>\n\t<div style=\"position: relative; \" class=\"sq-storydropzone sq-twostoriesonly\">\n\t\t<$set name=\"otherStoryList\"  filter=\"[enlist{$:/_sq/Stories/StoriesList!!list}] -[<tv-story-list>]\" select=\"0\">\n\t\t<$droppable actions=<<drop-actions>>>\n\t\t\t<div class=\"tc-droppable-placeholder\">\n\t\t\t&nbsp;\n\t\t\t</div>\n\t\t\t<div>\n\t\t\t\tDrop link here to open\n\t\t\t</div>\n\t\t</$droppable>\n\t\t</$set>\n\t</div>\n</div>\n</$reveal>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/Templates/RiverDropZone",
    "tags": "$:/tags/AboveStory",
    "modified": "20200523213430940",
    "list-before": "$:/core/ui/PageTemplate/story",
    "created": "20170609191118712"
},

"$:/_sq/Stories/Templates/Story2Template": {
    "text": "\\whitespace trim\n<$reveal state=\"$:/config/_sq/Stories/story2\" type=\"match\" text=\"yes\" default=\"no\" retain=\"yes\" animate=\"no\" tag=\"section\" class=\"tc-story-river tc-storytwo-river sq-story-rivertwo\">\n\n<$navigator story=\"$:/_sq/Stories/Story2StoryList\" history=\"$:/_sq/Stories/Story2HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n<$scrollable class=\"sq-story-rivertwo-scrollable\"  fallthrough=\"no\">\n<section class=\"story-backdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/AboveStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n<$list filter=\"[list[$:/_sq/Stories/Story2StoryList]]\" history=\"$:/_sq/Stories/Story2HistoryList\" template={{{[[$:/config/sq/Stories/story2/ViewTemplate]get[text]!is[blank]] ~[[$:/config/ui/ViewTemplate]get[text]]}}} editTemplate={{{[[$:/config/sq/Stories/story2/EditTemplate]get[text]!is[blank]] ~[[$:/config/ui/EditTemplate]get[text]]}}}  storyview={{$:/_sq/Stories/config/Story2-storyview}}>\n\n<div>\n<$transclude/>\n</div>\n\n</$list>\n\n<section class=\"story-frontdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/BelowStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n</$scrollable>\n</$navigator>\n\n</$reveal>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/Templates/Story2Template",
    "tags": "$:/tags/PageTemplate",
    "modified": "20200730045003939",
    "list-after": "$:/core/ui/PageTemplate/story",
    "created": "20170608171610013"
},

"$:/_sq/Stories/Templates/StoryToggleMenu": {
    "text": "<div class=\"sq-twostoriesonly\">\n<$reveal state=\"$:/config/_sq/Stories/story2\" type=\"nomatch\" text=\"no\" default=\"no\">\n<$button set=\"$:/config/_sq/Stories/story2\" setTo=\"no\" tooltip=\"Hide right column\" aria-label=\"\" class=\"tc-btn-invisible tc-btn-storytwotoggle\">{{$:/_sq/Stories/icons/bars-empty.svg}} </$button> Hide right column\n</$reveal>\n</div>\n<$reveal state=\"$:/config/_sq/Stories/story2\" type=\"match\" text=\"no\" default=\"no\">\n<$button set=\"$:/config/_sq/Stories/story2\" setTo=\"yes\" tooltip=\"Show right column\" aria-label=\"\" class=\"tc-btn-invisible tc-btn-storytwotoggle tc-btn-storytwotoggle-bars\">{{$:/_sq/Stories/icons/bars.svg}}</$button>  <span class=\"sq-stories-disabled\">Show right column</span>\n</$reveal>\n",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/Templates/StoryToggleMenu",
    "modified": "20200425133224298",
    "created": "20170608172531552"
},

"$:/_sq/Stories/Templates/StoryTogglePageControl": {
    "text": "<span class=\"sq-twostoriesonly\">\n\t<$reveal state=\"$:/config/_sq/Stories/story2\" type=\"nomatch\" text=\"no\" default=\"no\">\n\t\t<$button set=\"$:/config/_sq/Stories/story2\" setTo=\"no\" tooltip=\"Hide right column\" aria-label=\"\" class=\"tc-btn-invisible tc-btn-storytwotoggle\">{{$:/_sq/Stories/icons/bars-empty.svg}} </$button>\n\t</$reveal>\n</span>\n<$reveal state=\"$:/config/_sq/Stories/story2\" type=\"match\" text=\"no\" default=\"no\">\n\t<$button set=\"$:/config/_sq/Stories/story2\" setTo=\"yes\" tooltip=\"Show right column\" aria-label=\"\" class=\"tc-btn-invisible tc-btn-storytwotoggle\">{{$:/_sq/Stories/icons/bars.svg}}</$button>\n</$reveal>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/Templates/StoryTogglePageControl",
    "tags": "$:/tags/PageControls",
    "modified": "20200425133303133",
    "description": "Show right column for second story",
    "created": "20170617182141154",
    "caption": "{{$:/_sq/Stories/icons/bars.svg}} Show right column"
},

"$:/_sq/Stories/Story2HistoryList": {
    "created": "20200425131030296",
    "text": "[\n    {\n        \"title\": \"$:/config/Tiddlers/TitleLinks\",\n        \"fromPageRect\": {\n            \"top\": 249.296875,\n            \"left\": 1230,\n            \"width\": 183.515625,\n            \"right\": 1413.515625,\n            \"bottom\": 269.296875,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"$:/_sq/Stories/divertTiddlerMacro\",\n        \"fromPageRect\": {\n            \"top\": 623.296875,\n            \"left\": 1230,\n            \"width\": 220.390625,\n            \"right\": 1450.390625,\n            \"bottom\": 643.296875,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/divertTiddlerMacro'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/divertTiddlerMacro\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/divertTiddlerMacro'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/divertTiddlerMacro\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/divertTiddlerEditMacro\",\n        \"fromPageRect\": {\n            \"top\": 319.296875,\n            \"left\": 1230,\n            \"width\": 245.53125,\n            \"right\": 1475.53125,\n            \"bottom\": 339.296875,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/divertTiddlerEditMacro'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/divertTiddlerEditMacro\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryToggleMenu\",\n        \"fromPageRect\": {\n            \"top\": 537.296875,\n            \"left\": 1230,\n            \"width\": 283.546875,\n            \"right\": 1513.546875,\n            \"bottom\": 557.296875,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryTogglePageControl\",\n        \"fromPageRect\": {\n            \"top\": 297.296875,\n            \"left\": 1230,\n            \"width\": 326.734375,\n            \"right\": 1556.734375,\n            \"bottom\": 317.296875,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryTogglePageControl'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryTogglePageControl\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryTogglePageControl'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryTogglePageControl\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryTogglePageControl'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryTogglePageControl\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryToggleMenu'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryToggleMenu\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryToggleMenu'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryToggleMenu\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/divertTiddlerEditMacro'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/divertTiddlerEditMacro\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryTogglePageControl'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryTogglePageControl\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryTogglePageControl'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryTogglePageControl\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryTogglePageControl'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryTogglePageControl\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryToggleMenu'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryToggleMenu\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryToggleMenu'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryToggleMenu\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/Templates/StoryTogglePageControl'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/Templates/StoryTogglePageControl\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/divertTiddlerEditMacro'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/divertTiddlerEditMacro\"\n    },\n    {\n        \"title\": \"$:/core/ui/SideBar/Open\",\n        \"fromPageRect\": {\n            \"top\": 337.296875,\n            \"left\": 1230,\n            \"width\": 161.8125,\n            \"right\": 1391.8125,\n            \"bottom\": 357.296875,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/core/ui/SideBar/Open'\"\n    },\n    {\n        \"title\": \"$:/core/ui/SideBar/Open\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/divertTiddlerEditMacro'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/divertTiddlerEditMacro\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/divertTiddlerEditMacro'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/divertTiddlerEditMacro\"\n    },\n    {\n        \"title\": \"TiddlyBlink\"\n    },\n    {\n        \"title\": \"Stories-overview\",\n        \"fromPageRect\": {\n            \"top\": 1035.921875,\n            \"left\": 1190,\n            \"width\": 101.6875,\n            \"right\": 1291.6875,\n            \"bottom\": 1054.921875,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"$:/.giffmex/Customize.TiddlyBlink\",\n        \"fromPageRect\": {\n            \"top\": 735.625,\n            \"left\": 107.5,\n            \"width\": 145.171875,\n            \"right\": 252.671875,\n            \"bottom\": 755.625,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"$:/.giffmex/meta/hack.tiddlyblink\",\n        \"fromPageRect\": {\n            \"top\": 757.625,\n            \"left\": 107.5,\n            \"width\": 129.59375,\n            \"right\": 237.09375,\n            \"bottom\": 777.625,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"TiddlyBlink\",\n        \"fromPageRect\": {\n            \"top\": 161.296875,\n            \"left\": 221.953125,\n            \"width\": 71.859375,\n            \"right\": 293.8125,\n            \"bottom\": 181.296875,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"TiddlyBlink\",\n        \"fromPageRect\": {\n            \"top\": 161.296875,\n            \"left\": 221.953125,\n            \"width\": 71.859375,\n            \"right\": 293.8125,\n            \"bottom\": 181.296875,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"Stories-overview\",\n        \"fromPageRect\": {}\n    },\n    {\n        \"title\": \"Draft of 'Stories-overview'\"\n    },\n    {\n        \"title\": \"Stories-overview\"\n    },\n    {\n        \"title\": \"Draft of 'Stories-overview'\"\n    },\n    {\n        \"title\": \"Stories-overview\"\n    },\n    {\n        \"title\": \"Draft of 'Stories'\"\n    },\n    {\n        \"title\": \"Plugin maker\",\n        \"fromPageRect\": {\n            \"top\": 481.34375,\n            \"left\": 2259,\n            \"width\": 80.890625,\n            \"right\": 2339.890625,\n            \"bottom\": 500.34375,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"Draft of 'Plugin maker'\"\n    },\n    {\n        \"title\": \"Plugin maker\"\n    },\n    {\n        \"title\": \"Stories\",\n        \"fromPageRect\": {\n            \"top\": 296.84375,\n            \"left\": 2259,\n            \"width\": 41.453125,\n            \"right\": 2300.453125,\n            \"bottom\": 315.84375,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"Plugin maker\",\n        \"fromPageRect\": {\n            \"top\": 501.34375,\n            \"left\": 2259,\n            \"width\": 80.890625,\n            \"right\": 2339.890625,\n            \"bottom\": 520.34375,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"Draft of 'Plugin maker'\"\n    },\n    {\n        \"title\": \"Plugin maker\"\n    },\n    {\n        \"title\": \"Draft of 'Stories'\"\n    },\n    {\n        \"title\": \"Stories\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/config/Settings\",\n        \"fromPageRect\": {\n            \"top\": 360.171875,\n            \"left\": 1245,\n            \"width\": 182.21875,\n            \"right\": 1427.21875,\n            \"bottom\": 379.171875,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/config/Settings'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/config/Settings\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/config/Settings\",\n        \"fromPageRect\": {\n            \"top\": 360.171875,\n            \"left\": 1245,\n            \"width\": 182.21875,\n            \"right\": 1427.21875,\n            \"bottom\": 379.171875,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/config/Settings'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/config/Settings\"\n    },\n    {\n        \"title\": \"Draft of 'Stories'\"\n    },\n    {\n        \"title\": \"Stories\"\n    },\n    {\n        \"title\": \"Draft of 'Stories'\"\n    },\n    {\n        \"title\": \"Stories\"\n    },\n    {\n        \"title\": \"Draft of 'Stories'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories\",\n        \"fromPageRect\": {\n            \"top\": 463.734375,\n            \"left\": 2321.1875,\n            \"width\": 476.734375,\n            \"right\": 2797.921875,\n            \"bottom\": 482.734375,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"Draft of 'Pack stories to plugin'\"\n    },\n    {\n        \"title\": \"Pack stories to plugin\"\n    },\n    {\n        \"title\": \"Stories-overview\"\n    },\n    {\n        \"title\": \"Draft of 'Stories changelog'\"\n    },\n    {\n        \"title\": \"Stories changelog\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories\",\n        \"fromPageRect\": {\n            \"top\": 573.203125,\n            \"left\": 2255.625,\n            \"width\": 127.640625,\n            \"right\": 2383.265625,\n            \"bottom\": 592.203125,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"$:/_sq/Stories/widgets/action-addtohistory\",\n        \"fromPageRect\": {\n            \"top\": 1023.453125,\n            \"left\": 1194.5,\n            \"width\": 263.703125,\n            \"right\": 1458.203125,\n            \"bottom\": 1042.453125,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"Draft of 'Pack stories to plugin'\"\n    },\n    {\n        \"title\": \"Pack stories to plugin\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/widgets/action-addtohistory\",\n        \"fromPageRect\": {\n            \"top\": 653.453125,\n            \"left\": 1194.5,\n            \"width\": 263.703125,\n            \"right\": 1458.203125,\n            \"bottom\": 672.453125,\n            \"height\": 19\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories'\"\n    },\n    {\n        \"title\": \"Draft of 'Stories changelog'\"\n    },\n    {\n        \"title\": \"Stories_changelog\"\n    },\n    {\n        \"title\": \"Draft of 'Stories_changelog'\"\n    },\n    {\n        \"title\": \"$:/_sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/_sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of 'Pack stories to plugin'\"\n    },\n    {\n        \"title\": \"Pack stories to plugin\"\n    },\n    {\n        \"title\": \"Draft of 'Pack stories to plugin'\"\n    },\n    {\n        \"title\": \"Pack stories to plugin\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of 'Pack stories to plugin'\"\n    },\n    {\n        \"title\": \"Pack stories to plugin\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"$:/config/_sq/Stories/story2/EditTemplate\",\n        \"fromPageRect\": {\n            \"top\": 242.78125,\n            \"left\": 1226.5,\n            \"width\": 273.875,\n            \"right\": 1500.375,\n            \"bottom\": 262.78125,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of 'Pack stories to plugin'\"\n    },\n    {\n        \"title\": \"Pack stories to plugin\"\n    },\n    {\n        \"title\": \"Draft of 'Pack stories to plugin'\"\n    },\n    {\n        \"title\": \"Pack stories to plugin\"\n    },\n    {\n        \"title\": \"$:/config/sq/Stories/story2/EditTemplate\",\n        \"fromPageRect\": {\n            \"top\": 242.78125,\n            \"left\": 1226.5,\n            \"width\": 267.65625,\n            \"right\": 1494.15625,\n            \"bottom\": 262.78125,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"$:/config/sq/Stories/storyRiverRatio\",\n        \"fromPageRect\": {\n            \"top\": 330.78125,\n            \"left\": 1302.75,\n            \"width\": 235.375,\n            \"right\": 1538.125,\n            \"bottom\": 350.78125,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"$:/config/sq/Stories/story2-fontsize\",\n        \"fromPageRect\": {\n            \"top\": 220.78125,\n            \"left\": 1522.875,\n            \"width\": 234.171875,\n            \"right\": 1757.046875,\n            \"bottom\": 240.78125,\n            \"height\": 20\n        }\n    },\n    {\n        \"title\": \"Draft of '$:/config/sq/Stories/story2-fontsize'\"\n    },\n    {\n        \"title\": \"$:/config/sq/Stories/story2/fontsize-title\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    },\n    {\n        \"title\": \"Draft of '$:/plugins/sq/Stories/changelog'\"\n    },\n    {\n        \"title\": \"$:/plugins/sq/Stories/changelog\"\n    }\n]",
    "type": "application/json",
    "current-tiddler": "$:/plugins/sq/Stories/changelog",
    "modified": "20200806034532118",
    "title": "$:/_sq/Stories/Story2HistoryList",
    "revision": "0",
    "bag": "default"
},

"$:/core/ui/SideBar/Open": {
    "text": "\\whitespace trim\n\\define lingo-base() $:/language/CloseAll/\n\n\\define drop-actions()\n<$action-listops $tiddler=<<tv-story-list>> $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n<$action-listops $tiddler=<<_otherStory>> $subfilter=\"-[<actionTiddler>]\"/>\n\\end\n\n\\define placeholder()\n<div class=\"tc-droppable-placeholder\"/>\n\\end\n\n\\define droppable-item(button)\n\\whitespace trim\n<$droppable actions=<<drop-actions>>>\n<<placeholder>>\n<div>\n$button$\n</div>\n</$droppable>\n\\end\n\n\\define open-tiddler-list()\n<div class=\"tc-sidebar-tab-open sq-sidebar-open\">\n<$list filter=\"[list<tv-story-list>]\" history=<<tv-history-list>> storyview=\"pop\">\n<div class=\"tc-sidebar-tab-open-item\">\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=\"tc-btn-invisible tc-btn-mini\">{{$:/core/images/close-button}}</$button>&nbsp;<$link to={{!!title}}><$view field=\"title\"/></$link>\"\"\"/>\n</div>\n</$list>\n<$tiddler tiddler=\"\">\n<div>\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-all-tiddlers\" class=\"tc-btn-invisible tc-btn-mini\"><<lingo Button>></$button>\"\"\"/>\n</div>\n</$tiddler>\n</div>\n\\end\n\n\n''Left Column''\n<$set name=\"_otherStory\" filter=\"[enlist{$:/_sq/Stories/StoriesList!!list}] -[<tv-story-list>]\" select=\"0\">\n<<open-tiddler-list>>\n</$set>\n<div class=\"sq-twostoriesonly\">\n\n---\n\n''Right Column''\n<$set name=\"_otherStory\" value=<<tv-story-list>> >\n<$set name=\"tv-story-list\"  filter=\"[enlist{$:/_sq/Stories/StoriesList!!list}] -[<tv-story-list>]\" select=\"0\">\n<$set name=\"tv-history-list\"  filter=\"[enlist{$:/_sq/Stories/HistoriesList!!list}] -[<tv-history-list>]\" select=\"0\">\n<$navigator story=<<tv-story-list>>  history=<<tv-history-list>> >\n<<open-tiddler-list>>\n</$navigator>\n</$set>\n</$set>\n</$set>\n\n</div>\n\n---\n\n<$transclude tiddler=\"$:/_sq/Stories/Templates/StoryToggleMenu\"/>",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/core/ui/SideBar/Open",
    "tags": "$:/tags/SideBar",
    "modified": "20200425133519499",
    "created": "20170609174945253",
    "caption": "{{$:/language/SideBar/Open/Caption}}"
},

"$:/config/_sq/Stories/story2": {
    "text": "yes",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/config/_sq/Stories/story2",
    "modified": "20200731104006221",
    "created": "20170615081040584"
},

"$:/themes/tiddlywiki/vanilla/options/sidebarlayout": {
    "text": "fluid-fixed",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/themes/tiddlywiki/vanilla/options/sidebarlayout",
    "tags": "tb",
    "modified": "20200416185419828",
    "created": "20200127172539001"
},

"$:/plugins/sq/Stories/settings": {
    "text": "\\define switchStoryView(storyview,default)\n<$select tiddler='$storyview$' default='$default$'>\n<option value=\"zoomin\"><$text text='one tiddler only'/></option>\n<option value=\"classic\"><$text text='multiple tiddlers'/></option>\n</$select>\n\\end\n\n|[[Minimum width to show the second story|$:/_sq/Stories/config/twostorybreakpoint]] |<$edit-text tiddler=\"$:/_sq/Stories/config/twostorybreakpoint\" default=\"\" tag=\"input\"/> |\n|[[Minimum width to show non-overlapping sidebar|$:/_sq/Stories/config/sidebaroverlaybreakpoint]] |<$edit-text tiddler=\"$:/_sq/Stories/config/sidebaroverlaybreakpoint\" default=\"\" tag=\"input\"/> |\n|[[Open tiddlers at top or bottom of story when using divert button|$:/_sq/Stories/config/openLinkDivert]] | <$select tiddler=\"$:/_sq/Stories/config/openLinkDivert\" default=\"top\"><option value=\"top\">top</option><option value=\"bottom\">bottom</option></$select>|\n|<$link to=\"$:/_sq/Stories/config/showRiverDropZones\">Show dropzones above each story</$link>|<$checkbox tiddler=\"$:/_sq/Stories/config/showRiverDropZones\" field=\"text\" checked=\"enable\" unchecked=\"disable\" default=\"disable\"></$checkbox>|\n|[[Story view for second story|$:/_sq/Stories/config/Story2-storyview]]:|{{$:/_sq/Stories/config/snippets/viewswitcher}}|\n\n\n\n''Choose how to view tiddlers in each column''\n\nLeft column: <<switchStoryView $:/view zoomin>>\n\nRight column: <<switchStoryView $:/_sq/Stories/config/Story2-storyview classic>>\n\n''Left column to right column width ratio:''\n\n{{$:/config/sq/Stories/storyRiverRatio}} : <$text text={{{[[100]subtract{$:/config/sq/Stories/storyRiverRatio}]}}}/>\n\n<$range tiddler=\"$:/config/sq/Stories/storyRiverRatio\" min=\"20\" max=\"80\" default=\"50\" increment=\"5\"/> \n<!--\n''Right column font-size''\n\nTiddler: {{$:/config/sq/Stories/story2/fontsize-title}}px\n\n<$range tiddler=\"$:/config/sq/Stories/story2/fontsize-title\" min=\"6\" max=\"40\" default=\"14\" increment=\"1\"/> \n\nBody: {{$:/config/sq/Stories/story2/fontsize-body}}px\n\n<$range tiddler=\"$:/config/sq/Stories/story2/fontsize-body\" min=\"6\" max=\"40\" default=\"15\" increment=\"1\"/> \n\n-->",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/plugins/sq/Stories/settings",
    "tags": "$:/tags/ControlPanel/Appearance",
    "modified": "20200731105236925",
    "created": "20170616185336118",
    "caption": "Two Story Layout"
},

"$:/plugins/sq/Stories/changelog": {
    "created": "20200430210052275",
    "text": "Version 1.03\n\n* Fixed bug in view toolbar position caused by extra blank line in $:/_sq/Stories/divertTiddlerMacro\n\nVersion 1.0.2\n\n* Fixed bug where storyRiverRatio was not respected at some resolutions\n\nVersion 1.0.1\n\n* Added support for config tiddlers to customize view and edit templates for second story. These tiddlers override the core config tiddlers if they exist.\n** $:/config/sq/Stories/story2/EditTemplate\n** $:/config/sq/Stories/story2/ViewTemplate\n* Relative width of each story river can now be customized in settings tab for plugin\n** introduced $:/config/sq/Stories/storyRiverRatio and updated Stories.css accordingly\n\nVersion 1.0.0\n\n* 29/07: updated $:/_sq/Stories/EditTiddlerHook to try and fix https://github.com/felixhayashi/TW5-TiddlyMap/issues/357\n* 23/05 : tweaked Stories.css based on personal theme to allow easier adjustment of story width\n* 23/05 : deprecated action-addtohistory widget\n* 23/05 : updated divertTiddlerEditMacro to use navigator widgets\n* 23/05 : updated divertTiddlerMacro to use navigator widgets\n* 30/04 : updated divertTiddlerEditMacro to also update history and avoid issues with zoomin storyview",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/plugins/sq/Stories/changelog",
    "tags": "",
    "modified": "20200806034532118"
},

"$:/_sq/Stories/config/storyRiverRatio": {
    "text": "50",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/_sq/Stories/config/storyRiverRatio",
    "tags": "",
    "modified": "20200730045328744",
    "created": "20200730040856198"
},

"$:/config/sq/Stories/story2/fontsize-body": {
    "text": "15",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/config/sq/Stories/story2/fontsize-body",
    "tags": "",
    "modified": "20200731104543869",
    "created": "20200731102336058"
},

"$:/config/sq/Stories/story2/fontsize-title": {
    "text": "14",
    "bag": "default",
    "revision": "0",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/config/sq/Stories/story2/fontsize-title",
    "tags": "",
    "modified": "20200731105040270",
    "created": "20200730045554550"
},

"$:/config/sq/Stories/storyRiverRatio": {
    "text": "50",
    "bag": "default",
    "revision": "14",
    "type": "text/vnd.tiddlywiki",
    "title": "$:/config/sq/Stories/storyRiverRatio",
    "tags": "",
    "modified": "20200802091529278",
    "created": "20200730040856198"
}
}
}
{
    "tiddlers": {
        "$:/config/Freelinks/Enable": {
            "title": "$:/config/Freelinks/Enable",
            "text": "yes"
        },
        "$:/plugins/tiddlywiki/freelinks/macros/view": {
            "title": "$:/plugins/tiddlywiki/freelinks/macros/view",
            "tags": "$:/tags/Macro/View",
            "text": "<$set name=\"tv-freelinks\" value={{$:/config/Freelinks/Enable}}>\n\n<$set name=\"tv-freelinks-ignore-case\" value={{$:/config/Freelinks/IgnoreCase}}/>\n\n</$set>"
        },
        "$:/core/modules/widgets/plain-text.js": {
            "title": "$:/core/modules/widgets/plain-text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/plain-text.js\ntype: application/javascript\nmodule-type: widget\n\nA copy of the core text widget under a different name\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar PlainTextNodeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nPlainTextNodeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nPlainTextNodeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar text = this.getAttribute(\"text\",this.parseTreeNode.text || \"\");\n\ttext = text.replace(/\\r/mg,\"\");\n\tvar textNode = this.document.createTextNode(text);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nPlainTextNodeWidget.prototype.execute = function() {\n\t// Nothing to do for a text node\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nPlainTextNodeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.text) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports[\"plain-text\"] = PlainTextNodeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/tiddlywiki/freelinks/readme": {
            "title": "$:/plugins/tiddlywiki/freelinks/readme",
            "text": "This plugin adds automatic generation of links to tiddler titles.\n\n''Note that automatic link generation can be very slow when there are a large number of tiddlers''.\n\nFreelinking is activated for runs of text that have the following variables set:\n\n* `tv-wikilinks` is NOT equal to `no`\n* `tv-freelinks` is set to `yes`\n\nFreelinks are case sensitive by default but can be configured to ignore case in the settings tab.\n\nWithin view templates, the variable `tv-freelinks` is automatically set to the content of $:/config/Freelinks/Enable, which can be set via the settings panel of this plugin.\n\n!! Notes\n\nTo change within which tiddlers freelinking occurs requires customising the shadow tiddler [[$:/plugins/tiddlywiki/freelinks/macros/view]]. This tiddler is tagged $:/tags/Macro/View  which means that it will be included as a local macro in each view template. By default, its content is:\n\n```\n<$set name=\"tv-freelinks\" value={{$:/config/Freelinks/Enable}}/>\n```\n\nThat means that for each tiddler the variable tv-freelinks will be set to the tiddler $:/config/Freelinks/Enable, which is set to \"yes\" or \"no\" by the settings in control panel.\n\nInstead, we can use a filter expression to, say, only freelink within the tiddler with the title \"HelloThere\":\n\n```\n<$set name=\"tv-freelinks\" value={{{ [<currentTiddler>match[HelloThere]then[yes]else[no]] }}}/>\n```\n\nOr, we can make a filter that will only freelink within tiddlers with the tag \"MyTag\":\n\n```\n<$set name=\"tv-freelinks\" value={{{ [<currentTiddler>tag[MyTags]then[yes]else[no]] }}}/>\n```\n\nOr we can combine both approaches:\n\n```\n<$set name=\"tv-freelinks\" value={{{ [<currentTiddler>match[HelloThere]] ~[<currentTiddler>tag[MyTag]] +[then[yes]else[no]] }}}/>\n```\n"
        },
        "$:/plugins/tiddlywiki/freelinks/settings": {
            "title": "$:/plugins/tiddlywiki/freelinks/settings",
            "text": "<$checkbox tiddler=\"$:/config/Freelinks/Enable\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Freelinks/Enable\">Enable freelinking within tiddler view templates</$link> </$checkbox>\n\n<$checkbox tiddler=\"$:/config/Freelinks/IgnoreCase\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Freelinks/IgnoreCase\">Ignore case</$link> </$checkbox>\n"
        },
        "$:/plugins/tiddlywiki/freelinks/styles": {
            "title": "$:/plugins/tiddlywiki/freelinks/styles",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\nbutton.tc-tiddlylink.tc-freelink, a.tc-tiddlylink.tc-freelink {\n\tbackground-color: #5777d91c;\n}\n"
        },
        "$:/core/modules/widgets/text.js": {
            "title": "$:/core/modules/widgets/text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/text.js\ntype: application/javascript\nmodule-type: widget\n\nAn override of the core text widget that automatically linkifies the text\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget,\n\tLinkWidget = require(\"$:/core/modules/widgets/link.js\").link,\n\tButtonWidget = require(\"$:/core/modules/widgets/button.js\").button,\n\tElementWidget = require(\"$:/core/modules/widgets/element.js\").element;\n\nvar TextNodeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTextNodeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTextNodeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTextNodeWidget.prototype.execute = function() {\n\tvar self = this,\n\t\tignoreCase = self.getVariable(\"tv-freelinks-ignore-case\",{defaultValue:\"no\"}).trim() === \"yes\";\n\t// Get our parameters\n\tvar childParseTree = [{\n\t\t\ttype: \"plain-text\",\n\t\t\ttext: this.getAttribute(\"text\",this.parseTreeNode.text || \"\")\n\t\t}];\n\t// Only process links if not disabled and we're not within a button or link widget\n\tif(this.getVariable(\"tv-wikilinks\",{defaultValue:\"yes\"}).trim() !== \"no\" && this.getVariable(\"tv-freelinks\",{defaultValue:\"no\"}).trim() === \"yes\" && !this.isWithinButtonOrLink()) {\n\t\t// Get the information about the current tiddler titles, and construct a regexp\n\t\tthis.tiddlerTitleInfo = this.wiki.getGlobalCache(\"tiddler-title-info-\" + (ignoreCase ? \"insensitive\" : \"sensitive\"),function() {\n\t\t\tvar sortedTitles = self.wiki.allTitles().sort(function(a,b) {\n\t\t\t\t\tvar lenA = a.length,\n\t\t\t\t\t\tlenB = b.length;\n\t\t\t\t\t// First sort by length, so longer titles are first\n\t\t\t\t\tif(lenA !== lenB) {\n\t\t\t\t\t\tif(lenA < lenB) {\n\t\t\t\t\t\t\treturn +1;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn -1;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t// Then sort alphabetically within titles of the same length\n\t\t\t\t\t\tif(a < b) {\n\t\t\t\t\t\t\treturn -1;\n\t\t\t\t\t\t} else if(a > b) {\n\t\t\t\t\t\t\treturn +1;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\ttitles = [],\n\t\t\t\treparts = [];\n\t\t\t$tw.utils.each(sortedTitles,function(title) {\n\t\t\t\tif(title.substring(0,3) !== \"$:/\") {\n\t\t\t\t\ttitles.push(title);\n\t\t\t\t\treparts.push(\"(\\\\b\" + $tw.utils.escapeRegExp(title) + \"\\\\b)\");\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn {\n\t\t\t\ttitles: titles,\n\t\t\t\tregexp: new RegExp(reparts.join(\"|\"),ignoreCase ? \"i\" : \"\")\n\t\t\t};\n\t\t});\n\t\t// Repeatedly linkify\n\t\tif(this.tiddlerTitleInfo.titles.length > 0) {\n\t\t\tvar index,text,match,matchEnd;\n\t\t\tdo {\n\t\t\t\tindex = childParseTree.length - 1;\n\t\t\t\ttext = childParseTree[index].text;\n\t\t\t\tmatch = this.tiddlerTitleInfo.regexp.exec(text);\n\t\t\t\tif(match) {\n\t\t\t\t\t// Make a text node for any text before the match\n\t\t\t\t\tif(match.index > 0) {\n\t\t\t\t\t\tchildParseTree[index].text = text.substring(0,match.index);\n\t\t\t\t\t\tindex += 1;\n\t\t\t\t\t}\n\t\t\t\t\t// Make a link node for the match\n\t\t\t\t\tchildParseTree[index] = {\n\t\t\t\t\t\ttype: \"link\",\n\t\t\t\t\t\tattributes: {\n\t\t\t\t\t\t\tto: {type: \"string\", value: ignoreCase ? this.tiddlerTitleInfo.titles[match.indexOf(match[0],1) - 1] : match[0]},\n\t\t\t\t\t\t\t\"class\": {type: \"string\", value: \"tc-freelink\"}\n\t\t\t\t\t\t},\n\t\t\t\t\t\tchildren: [{\n\t\t\t\t\t\t\ttype: \"plain-text\", text: match[0]\n\t\t\t\t\t\t}]\n\t\t\t\t\t};\n\t\t\t\t\tindex += 1;\n\t\t\t\t\t// Make a text node for any text after the match\n\t\t\t\t\tmatchEnd = match.index + match[0].length;\n\t\t\t\t\tif(matchEnd < text.length) {\n\t\t\t\t\t\tchildParseTree[index] = {\n\t\t\t\t\t\t\ttype: \"plain-text\",\n\t\t\t\t\t\t\ttext: text.substring(matchEnd)\n\t\t\t\t\t\t};\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} while(match && childParseTree[childParseTree.length - 1].type === \"plain-text\");\t\t\t\n\t\t}\n\t}\n\t// Make the child widgets\n\tthis.makeChildWidgets(childParseTree);\n};\n\nTextNodeWidget.prototype.isWithinButtonOrLink = function() {\n\tvar withinButtonOrLink = false,\n\t\twidget = this.parentWidget;\n\twhile(!withinButtonOrLink && widget) {\n\t\twithinButtonOrLink = widget instanceof ButtonWidget || widget instanceof LinkWidget || ((widget instanceof ElementWidget) && widget.parseTreeNode.tag === \"a\");\n\t\twidget = widget.parentWidget;\n\t}\n\treturn withinButtonOrLink;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTextNodeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar self = this,\n\t\tchangedAttributes = this.computeAttributes(),\n\t\ttitlesHaveChanged = false;\n\t$tw.utils.each(changedTiddlers,function(change,title) {\n\t\tif(change.isDeleted) {\n\t\t\ttitlesHaveChanged = true;\n\t\t} else {\n\t\t\ttitlesHaveChanged = titlesHaveChanged || !self.tiddlerTitleInfo || self.tiddlerTitleInfo.titles.indexOf(title) === -1;\n\t\t}\n\t});\n\tif(changedAttributes.text || titlesHaveChanged) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.text = TextNodeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        }
    }
}
{
    "tiddlers": {
        "$:/config/HighlightPlugin/TypeMappings/application/javascript": {
            "title": "$:/config/HighlightPlugin/TypeMappings/application/javascript",
            "text": "javascript"
        },
        "$:/config/HighlightPlugin/TypeMappings/application/json": {
            "title": "$:/config/HighlightPlugin/TypeMappings/application/json",
            "text": "json"
        },
        "$:/config/HighlightPlugin/TypeMappings/text/css": {
            "title": "$:/config/HighlightPlugin/TypeMappings/text/css",
            "text": "css"
        },
        "$:/config/HighlightPlugin/TypeMappings/text/html": {
            "title": "$:/config/HighlightPlugin/TypeMappings/text/html",
            "text": "html"
        },
        "$:/config/HighlightPlugin/TypeMappings/image/svg+xml": {
            "title": "$:/config/HighlightPlugin/TypeMappings/image/svg+xml",
            "text": "xml"
        },
        "$:/config/HighlightPlugin/TypeMappings/text/x-markdown": {
            "title": "$:/config/HighlightPlugin/TypeMappings/text/x-markdown",
            "text": "markdown"
        },
        "$:/plugins/tiddlywiki/highlight/highlight.js": {
            "text": "var hljs = require(\"$:/plugins/tiddlywiki/highlight/highlight.js\");\n/*! highlight.js v9.18.1 | BSD3 License | git.io/hljslicense */\n!function(e){var n=\"object\"==typeof window&&window||\"object\"==typeof self&&self;\"undefined\"==typeof exports||exports.nodeType?n&&(n.hljs=e({}),\"function\"==typeof define&&define.amd&&define([],function(){return n.hljs})):e(exports)}(function(a){var f=[],i=Object.keys,_={},c={},C=!0,n=/^(no-?highlight|plain|text)$/i,l=/\\blang(?:uage)?-([\\w-]+)\\b/i,t=/((^(<[^>]+>|\\t|)+|(?:\\n)))/gm,r={case_insensitive:\"cI\",lexemes:\"l\",contains:\"c\",keywords:\"k\",subLanguage:\"sL\",className:\"cN\",begin:\"b\",beginKeywords:\"bK\",end:\"e\",endsWithParent:\"eW\",illegal:\"i\",excludeBegin:\"eB\",excludeEnd:\"eE\",returnBegin:\"rB\",returnEnd:\"rE\",variants:\"v\",IDENT_RE:\"IR\",UNDERSCORE_IDENT_RE:\"UIR\",NUMBER_RE:\"NR\",C_NUMBER_RE:\"CNR\",BINARY_NUMBER_RE:\"BNR\",RE_STARTERS_RE:\"RSR\",BACKSLASH_ESCAPE:\"BE\",APOS_STRING_MODE:\"ASM\",QUOTE_STRING_MODE:\"QSM\",PHRASAL_WORDS_MODE:\"PWM\",C_LINE_COMMENT_MODE:\"CLCM\",C_BLOCK_COMMENT_MODE:\"CBCM\",HASH_COMMENT_MODE:\"HCM\",NUMBER_MODE:\"NM\",C_NUMBER_MODE:\"CNM\",BINARY_NUMBER_MODE:\"BNM\",CSS_NUMBER_MODE:\"CSSNM\",REGEXP_MODE:\"RM\",TITLE_MODE:\"TM\",UNDERSCORE_TITLE_MODE:\"UTM\",COMMENT:\"C\",beginRe:\"bR\",endRe:\"eR\",illegalRe:\"iR\",lexemesRe:\"lR\",terminators:\"t\",terminator_end:\"tE\"},m=\"</span>\",O=\"Could not find the language '{}', did you forget to load/include a language module?\",B={classPrefix:\"hljs-\",tabReplace:null,useBR:!1,languages:void 0},o=\"of and for in not or if then\".split(\" \");function x(e){return e.replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}function g(e){return e.nodeName.toLowerCase()}function u(e){return n.test(e)}function s(e){var n,t={},r=Array.prototype.slice.call(arguments,1);for(n in e)t[n]=e[n];return r.forEach(function(e){for(n in e)t[n]=e[n]}),t}function E(e){var a=[];return function e(n,t){for(var r=n.firstChild;r;r=r.nextSibling)3===r.nodeType?t+=r.nodeValue.length:1===r.nodeType&&(a.push({event:\"start\",offset:t,node:r}),t=e(r,t),g(r).match(/br|hr|img|input/)||a.push({event:\"stop\",offset:t,node:r}));return t}(e,0),a}function d(e,n,t){var r=0,a=\"\",i=[];function o(){return e.length&&n.length?e[0].offset!==n[0].offset?e[0].offset<n[0].offset?e:n:\"start\"===n[0].event?e:n:e.length?e:n}function c(e){a+=\"<\"+g(e)+f.map.call(e.attributes,function(e){return\" \"+e.nodeName+'=\"'+x(e.value).replace(/\"/g,\"&quot;\")+'\"'}).join(\"\")+\">\"}function l(e){a+=\"</\"+g(e)+\">\"}function u(e){(\"start\"===e.event?c:l)(e.node)}for(;e.length||n.length;){var s=o();if(a+=x(t.substring(r,s[0].offset)),r=s[0].offset,s===e){for(i.reverse().forEach(l);u(s.splice(0,1)[0]),(s=o())===e&&s.length&&s[0].offset===r;);i.reverse().forEach(c)}else\"start\"===s[0].event?i.push(s[0].node):i.pop(),u(s.splice(0,1)[0])}return a+x(t.substr(r))}function R(n){return n.v&&!n.cached_variants&&(n.cached_variants=n.v.map(function(e){return s(n,{v:null},e)})),n.cached_variants?n.cached_variants:function e(n){return!!n&&(n.eW||e(n.starts))}(n)?[s(n,{starts:n.starts?s(n.starts):null})]:Object.isFrozen(n)?[s(n)]:[n]}function p(e){if(r&&!e.langApiRestored){for(var n in e.langApiRestored=!0,r)e[n]&&(e[r[n]]=e[n]);(e.c||[]).concat(e.v||[]).forEach(p)}}function v(n,r){var a={};return\"string\"==typeof n?t(\"keyword\",n):i(n).forEach(function(e){t(e,n[e])}),a;function t(t,e){r&&(e=e.toLowerCase()),e.split(\" \").forEach(function(e){var n=e.split(\"|\");a[n[0]]=[t,function(e,n){return n?Number(n):function(e){return-1!=o.indexOf(e.toLowerCase())}(e)?0:1}(n[0],n[1])]})}}function S(r){function s(e){return e&&e.source||e}function f(e,n){return new RegExp(s(e),\"m\"+(r.cI?\"i\":\"\")+(n?\"g\":\"\"))}function a(a){var i,e,o={},c=[],l={},t=1;function n(e,n){o[t]=e,c.push([e,n]),t+=function(e){return new RegExp(e.toString()+\"|\").exec(\"\").length-1}(n)+1}for(var r=0;r<a.c.length;r++){n(e=a.c[r],e.bK?\"\\\\.?(?:\"+e.b+\")\\\\.?\":e.b)}a.tE&&n(\"end\",a.tE),a.i&&n(\"illegal\",a.i);var u=c.map(function(e){return e[1]});return i=f(function(e,n){for(var t=/\\[(?:[^\\\\\\]]|\\\\.)*\\]|\\(\\??|\\\\([1-9][0-9]*)|\\\\./,r=0,a=\"\",i=0;i<e.length;i++){var o=r+=1,c=s(e[i]);for(0<i&&(a+=n),a+=\"(\";0<c.length;){var l=t.exec(c);if(null==l){a+=c;break}a+=c.substring(0,l.index),c=c.substring(l.index+l[0].length),\"\\\\\"==l[0][0]&&l[1]?a+=\"\\\\\"+String(Number(l[1])+o):(a+=l[0],\"(\"==l[0]&&r++)}a+=\")\"}return a}(u,\"|\"),!0),l.lastIndex=0,l.exec=function(e){var n;if(0===c.length)return null;i.lastIndex=l.lastIndex;var t=i.exec(e);if(!t)return null;for(var r=0;r<t.length;r++)if(null!=t[r]&&null!=o[\"\"+r]){n=o[\"\"+r];break}return\"string\"==typeof n?(t.type=n,t.extra=[a.i,a.tE]):(t.type=\"begin\",t.rule=n),t},l}if(r.c&&-1!=r.c.indexOf(\"self\")){if(!C)throw new Error(\"ERR: contains `self` is not supported at the top-level of a language.  See documentation.\");r.c=r.c.filter(function(e){return\"self\"!=e})}!function n(t,e){t.compiled||(t.compiled=!0,t.k=t.k||t.bK,t.k&&(t.k=v(t.k,r.cI)),t.lR=f(t.l||/\\w+/,!0),e&&(t.bK&&(t.b=\"\\\\b(\"+t.bK.split(\" \").join(\"|\")+\")\\\\b\"),t.b||(t.b=/\\B|\\b/),t.bR=f(t.b),t.endSameAsBegin&&(t.e=t.b),t.e||t.eW||(t.e=/\\B|\\b/),t.e&&(t.eR=f(t.e)),t.tE=s(t.e)||\"\",t.eW&&e.tE&&(t.tE+=(t.e?\"|\":\"\")+e.tE)),t.i&&(t.iR=f(t.i)),null==t.relevance&&(t.relevance=1),t.c||(t.c=[]),t.c=Array.prototype.concat.apply([],t.c.map(function(e){return R(\"self\"===e?t:e)})),t.c.forEach(function(e){n(e,t)}),t.starts&&n(t.starts,e),t.t=a(t))}(r)}function T(n,e,a,t){var i=e;function o(e,n){if(function(e,n){var t=e&&e.exec(n);return t&&0===t.index}(e.eR,n)){for(;e.endsParent&&e.parent;)e=e.parent;return e}if(e.eW)return o(e.parent,n)}function c(e,n,t,r){if(!t&&\"\"===n)return\"\";if(!e)return n;var a='<span class=\"'+(r?\"\":B.classPrefix);return(a+=e+'\">')+n+(t?\"\":m)}function l(){p+=null!=d.sL?function(){var e=\"string\"==typeof d.sL;if(e&&!_[d.sL])return x(v);var n=e?T(d.sL,v,!0,R[d.sL]):w(v,d.sL.length?d.sL:void 0);return 0<d.relevance&&(M+=n.relevance),e&&(R[d.sL]=n.top),c(n.language,n.value,!1,!0)}():function(){var e,n,t,r,a,i,o;if(!d.k)return x(v);for(r=\"\",n=0,d.lR.lastIndex=0,t=d.lR.exec(v);t;)r+=x(v.substring(n,t.index)),a=d,i=t,void 0,o=g.cI?i[0].toLowerCase():i[0],(e=a.k.hasOwnProperty(o)&&a.k[o])?(M+=e[1],r+=c(e[0],x(t[0]))):r+=x(t[0]),n=d.lR.lastIndex,t=d.lR.exec(v);return r+x(v.substr(n))}(),v=\"\"}function u(e){p+=e.cN?c(e.cN,\"\",!0):\"\",d=Object.create(e,{parent:{value:d}})}function s(e){var n=e[0],t=e.rule;return t&&t.endSameAsBegin&&(t.eR=function(e){return new RegExp(e.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\"),\"m\")}(n)),t.skip?v+=n:(t.eB&&(v+=n),l(),t.rB||t.eB||(v=n)),u(t),t.rB?0:n.length}var f={};function r(e,n){var t=n&&n[0];if(v+=e,null==t)return l(),0;if(\"begin\"==f.type&&\"end\"==n.type&&f.index==n.index&&\"\"===t)return v+=i.slice(n.index,n.index+1),1;if(\"begin\"===(f=n).type)return s(n);if(\"illegal\"===n.type&&!a)throw new Error('Illegal lexeme \"'+t+'\" for mode \"'+(d.cN||\"<unnamed>\")+'\"');if(\"end\"===n.type){var r=function(e){var n=e[0],t=i.substr(e.index),r=o(d,t);if(r){var a=d;for(a.skip?v+=n:(a.rE||a.eE||(v+=n),l(),a.eE&&(v=n));d.cN&&(p+=m),d.skip||d.sL||(M+=d.relevance),(d=d.parent)!==r.parent;);return r.starts&&(r.endSameAsBegin&&(r.starts.eR=r.eR),u(r.starts)),a.rE?0:n.length}}(n);if(null!=r)return r}return v+=t,t.length}var g=D(n);if(!g)throw console.error(O.replace(\"{}\",n)),new Error('Unknown language: \"'+n+'\"');S(g);var E,d=t||g,R={},p=\"\";for(E=d;E!==g;E=E.parent)E.cN&&(p=c(E.cN,\"\",!0)+p);var v=\"\",M=0;try{for(var b,h,N=0;d.t.lastIndex=N,b=d.t.exec(i);)h=r(i.substring(N,b.index),b),N=b.index+h;for(r(i.substr(N)),E=d;E.parent;E=E.parent)E.cN&&(p+=m);return{relevance:M,value:p,i:!1,language:n,top:d}}catch(e){if(e.message&&-1!==e.message.indexOf(\"Illegal\"))return{i:!0,relevance:0,value:x(i)};if(C)return{relevance:0,value:x(i),language:n,top:d,errorRaised:e};throw e}}function w(t,e){e=e||B.languages||i(_);var r={relevance:0,value:x(t)},a=r;return e.filter(D).filter(L).forEach(function(e){var n=T(e,t,!1);n.language=e,n.relevance>a.relevance&&(a=n),n.relevance>r.relevance&&(a=r,r=n)}),a.language&&(r.second_best=a),r}function M(e){return B.tabReplace||B.useBR?e.replace(t,function(e,n){return B.useBR&&\"\\n\"===e?\"<br>\":B.tabReplace?n.replace(/\\t/g,B.tabReplace):\"\"}):e}function b(e){var n,t,r,a,i,o=function(e){var n,t,r,a,i=e.className+\" \";if(i+=e.parentNode?e.parentNode.className:\"\",t=l.exec(i)){var o=D(t[1]);return o||(console.warn(O.replace(\"{}\",t[1])),console.warn(\"Falling back to no-highlight mode for this block.\",e)),o?t[1]:\"no-highlight\"}for(n=0,r=(i=i.split(/\\s+/)).length;n<r;n++)if(u(a=i[n])||D(a))return a}(e);u(o)||(B.useBR?(n=document.createElement(\"div\")).innerHTML=e.innerHTML.replace(/\\n/g,\"\").replace(/<br[ \\/]*>/g,\"\\n\"):n=e,i=n.textContent,r=o?T(o,i,!0):w(i),(t=E(n)).length&&((a=document.createElement(\"div\")).innerHTML=r.value,r.value=d(t,E(a),i)),r.value=M(r.value),e.innerHTML=r.value,e.className=function(e,n,t){var r=n?c[n]:t,a=[e.trim()];return e.match(/\\bhljs\\b/)||a.push(\"hljs\"),-1===e.indexOf(r)&&a.push(r),a.join(\" \").trim()}(e.className,o,r.language),e.result={language:r.language,re:r.relevance},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.relevance}))}function h(){if(!h.called){h.called=!0;var e=document.querySelectorAll(\"pre code\");f.forEach.call(e,b)}}var N={disableAutodetect:!0};function D(e){return e=(e||\"\").toLowerCase(),_[e]||_[c[e]]}function L(e){var n=D(e);return n&&!n.disableAutodetect}return a.highlight=T,a.highlightAuto=w,a.fixMarkup=M,a.highlightBlock=b,a.configure=function(e){B=s(B,e)},a.initHighlighting=h,a.initHighlightingOnLoad=function(){window.addEventListener(\"DOMContentLoaded\",h,!1),window.addEventListener(\"load\",h,!1)},a.registerLanguage=function(n,e){var t;try{t=e(a)}catch(e){if(console.error(\"Language definition for '{}' could not be registered.\".replace(\"{}\",n)),!C)throw e;console.error(e),t=N}p(_[n]=t),t.rawDefinition=e.bind(null,a),t.aliases&&t.aliases.forEach(function(e){c[e]=n})},a.listLanguages=function(){return i(_)},a.getLanguage=D,a.requireLanguage=function(e){var n=D(e);if(n)return n;throw new Error(\"The '{}' language is required, but not loaded.\".replace(\"{}\",e))},a.autoDetection=L,a.inherit=s,a.debugMode=function(){C=!1},a.IR=a.IDENT_RE=\"[a-zA-Z]\\\\w*\",a.UIR=a.UNDERSCORE_IDENT_RE=\"[a-zA-Z_]\\\\w*\",a.NR=a.NUMBER_RE=\"\\\\b\\\\d+(\\\\.\\\\d+)?\",a.CNR=a.C_NUMBER_RE=\"(-?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)\",a.BNR=a.BINARY_NUMBER_RE=\"\\\\b(0b[01]+)\",a.RSR=a.RE_STARTERS_RE=\"!|!=|!==|%|%=|&|&&|&=|\\\\*|\\\\*=|\\\\+|\\\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\\\?|\\\\[|\\\\{|\\\\(|\\\\^|\\\\^=|\\\\||\\\\|=|\\\\|\\\\||~\",a.BE=a.BACKSLASH_ESCAPE={b:\"\\\\\\\\[\\\\s\\\\S]\",relevance:0},a.ASM=a.APOS_STRING_MODE={cN:\"string\",b:\"'\",e:\"'\",i:\"\\\\n\",c:[a.BE]},a.QSM=a.QUOTE_STRING_MODE={cN:\"string\",b:'\"',e:'\"',i:\"\\\\n\",c:[a.BE]},a.PWM=a.PHRASAL_WORDS_MODE={b:/\\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\\b/},a.C=a.COMMENT=function(e,n,t){var r=a.inherit({cN:\"comment\",b:e,e:n,c:[]},t||{});return r.c.push(a.PWM),r.c.push({cN:\"doctag\",b:\"(?:TODO|FIXME|NOTE|BUG|XXX):\",relevance:0}),r},a.CLCM=a.C_LINE_COMMENT_MODE=a.C(\"//\",\"$\"),a.CBCM=a.C_BLOCK_COMMENT_MODE=a.C(\"/\\\\*\",\"\\\\*/\"),a.HCM=a.HASH_COMMENT_MODE=a.C(\"#\",\"$\"),a.NM=a.NUMBER_MODE={cN:\"number\",b:a.NR,relevance:0},a.CNM=a.C_NUMBER_MODE={cN:\"number\",b:a.CNR,relevance:0},a.BNM=a.BINARY_NUMBER_MODE={cN:\"number\",b:a.BNR,relevance:0},a.CSSNM=a.CSS_NUMBER_MODE={cN:\"number\",b:a.NR+\"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?\",relevance:0},a.RM=a.REGEXP_MODE={cN:\"regexp\",b:/\\//,e:/\\/[gimuy]*/,i:/\\n/,c:[a.BE,{b:/\\[/,e:/\\]/,relevance:0,c:[a.BE]}]},a.TM=a.TITLE_MODE={cN:\"title\",b:a.IR,relevance:0},a.UTM=a.UNDERSCORE_TITLE_MODE={cN:\"title\",b:a.UIR,relevance:0},a.METHOD_GUARD={b:\"\\\\.\\\\s*\"+a.UIR,relevance:0},[a.BE,a.ASM,a.QSM,a.PWM,a.C,a.CLCM,a.CBCM,a.HCM,a.NM,a.CNM,a.BNM,a.CSSNM,a.RM,a.TM,a.UTM,a.METHOD_GUARD].forEach(function(e){!function n(t){Object.freeze(t);var r=\"function\"==typeof t;Object.getOwnPropertyNames(t).forEach(function(e){!t.hasOwnProperty(e)||null===t[e]||\"object\"!=typeof t[e]&&\"function\"!=typeof t[e]||r&&(\"caller\"===e||\"callee\"===e||\"arguments\"===e)||Object.isFrozen(t[e])||n(t[e])});return t}(e)}),a});hljs.registerLanguage(\"swift\",function(e){var i={keyword:\"#available #colorLiteral #column #else #elseif #endif #file #fileLiteral #function #if #imageLiteral #line #selector #sourceLocation _ __COLUMN__ __FILE__ __FUNCTION__ __LINE__ Any as as! as? associatedtype associativity break case catch class continue convenience default defer deinit didSet do dynamic dynamicType else enum extension fallthrough false fileprivate final for func get guard if import in indirect infix init inout internal is lazy left let mutating nil none nonmutating open operator optional override postfix precedence prefix private protocol Protocol public repeat required rethrows return right self Self set static struct subscript super switch throw throws true try try! try? Type typealias unowned var weak where while willSet\",literal:\"true false nil\",built_in:\"abs advance alignof alignofValue anyGenerator assert assertionFailure bridgeFromObjectiveC bridgeFromObjectiveCUnconditional bridgeToObjectiveC bridgeToObjectiveCUnconditional c contains count countElements countLeadingZeros debugPrint debugPrintln distance dropFirst dropLast dump encodeBitsAsWords enumerate equal fatalError filter find getBridgedObjectiveCType getVaList indices insertionSort isBridgedToObjectiveC isBridgedVerbatimToObjectiveC isUniquelyReferenced isUniquelyReferencedNonObjC join lazy lexicographicalCompare map max maxElement min minElement numericCast overlaps partition posix precondition preconditionFailure print println quickSort readLine reduce reflect reinterpretCast reverse roundUpToAlignment sizeof sizeofValue sort split startsWith stride strideof strideofValue swap toString transcode underestimateCount unsafeAddressOf unsafeBitCast unsafeDowncast unsafeUnwrap unsafeReflect withExtendedLifetime withObjectAtPlusZero withUnsafePointer withUnsafePointerToObject withUnsafeMutablePointer withUnsafeMutablePointers withUnsafePointer withUnsafePointers withVaList zip\"},t=e.C(\"/\\\\*\",\"\\\\*/\",{c:[\"self\"]}),n={cN:\"subst\",b:/\\\\\\(/,e:\"\\\\)\",k:i,c:[]},r={cN:\"string\",c:[e.BE,n],v:[{b:/\"\"\"/,e:/\"\"\"/},{b:/\"/,e:/\"/}]},a={cN:\"number\",b:\"\\\\b([\\\\d_]+(\\\\.[\\\\deE_]+)?|0x[a-fA-F0-9_]+(\\\\.[a-fA-F0-9p_]+)?|0b[01_]+|0o[0-7_]+)\\\\b\",relevance:0};return n.c=[a],{k:i,c:[r,e.CLCM,t,{cN:\"type\",b:\"\\\\b[A-Z][\\\\wÀ-ʸ']*[!?]\"},{cN:\"type\",b:\"\\\\b[A-Z][\\\\wÀ-ʸ']*\",relevance:0},a,{cN:\"function\",bK:\"func\",e:\"{\",eE:!0,c:[e.inherit(e.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/}),{b:/</,e:/>/},{cN:\"params\",b:/\\(/,e:/\\)/,endsParent:!0,k:i,c:[\"self\",a,r,e.CBCM,{b:\":\"}],i:/[\"']/}],i:/\\[|%/},{cN:\"class\",bK:\"struct protocol class extension enum\",k:i,e:\"\\\\{\",eE:!0,c:[e.inherit(e.TM,{b:/[A-Za-z$_][\\u00C0-\\u02B80-9A-Za-z$_]*/})]},{cN:\"meta\",b:\"(@discardableResult|@warn_unused_result|@exported|@lazy|@noescape|@NSCopying|@NSManaged|@objc|@objcMembers|@convention|@required|@noreturn|@IBAction|@IBDesignable|@IBInspectable|@IBOutlet|@infix|@prefix|@postfix|@autoclosure|@testable|@available|@nonobjc|@NSApplicationMain|@UIApplicationMain|@dynamicMemberLookup|@propertyWrapper)\"},{bK:\"import\",e:/$/,c:[e.CLCM,t]}]}});hljs.registerLanguage(\"less\",function(e){function r(e){return{cN:\"string\",b:\"~?\"+e+\".*?\"+e}}function t(e,r,t){return{cN:e,b:r,relevance:t}}var a=\"[\\\\w-]+\",c=\"(\"+a+\"|@{\"+a+\"})\",s=[],n=[],b={b:\"\\\\(\",e:\"\\\\)\",c:n,relevance:0};n.push(e.CLCM,e.CBCM,r(\"'\"),r('\"'),e.CSSNM,{b:\"(url|data-uri)\\\\(\",starts:{cN:\"string\",e:\"[\\\\)\\\\n]\",eE:!0}},t(\"number\",\"#[0-9A-Fa-f]+\\\\b\"),b,t(\"variable\",\"@@?\"+a,10),t(\"variable\",\"@{\"+a+\"}\"),t(\"built_in\",\"~?`[^`]*?`\"),{cN:\"attribute\",b:a+\"\\\\s*:\",e:\":\",rB:!0,eE:!0},{cN:\"meta\",b:\"!important\"});var i=n.concat({b:\"{\",e:\"}\",c:s}),l={bK:\"when\",eW:!0,c:[{bK:\"and not\"}].concat(n)},o={b:c+\"\\\\s*:\",rB:!0,e:\"[;}]\",relevance:0,c:[{cN:\"attribute\",b:c,e:\":\",eE:!0,starts:{eW:!0,i:\"[<=$]\",relevance:0,c:n}}]},u={cN:\"keyword\",b:\"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\\\b\",starts:{e:\"[;{}]\",rE:!0,c:n,relevance:0}},v={cN:\"variable\",v:[{b:\"@\"+a+\"\\\\s*:\",relevance:15},{b:\"@\"+a}],starts:{e:\"[;}]\",rE:!0,c:i}},C={v:[{b:\"[\\\\.#:&\\\\[>]\",e:\"[;{}]\"},{b:c,e:\"{\"}],rB:!0,rE:!0,i:\"[<='$\\\"]\",relevance:0,c:[e.CLCM,e.CBCM,l,t(\"keyword\",\"all\\\\b\"),t(\"variable\",\"@{\"+a+\"}\"),t(\"selector-tag\",c+\"%?\",0),t(\"selector-id\",\"#\"+c),t(\"selector-class\",\"\\\\.\"+c,0),t(\"selector-tag\",\"&\",0),{cN:\"selector-attr\",b:\"\\\\[\",e:\"\\\\]\"},{cN:\"selector-pseudo\",b:/:(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\"'.]+/},{b:\"\\\\(\",e:\"\\\\)\",c:i},{b:\"!important\"}]};return s.push(e.CLCM,e.CBCM,u,v,o,C),{cI:!0,i:\"[=>'/<($\\\"]\",c:s}});hljs.registerLanguage(\"armasm\",function(s){return{cI:!0,aliases:[\"arm\"],l:\"\\\\.?\"+s.IR,k:{meta:\".2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .arm .thumb .code16 .code32 .force_thumb .thumb_func .ltorg ALIAS ALIGN ARM AREA ASSERT ATTR CN CODE CODE16 CODE32 COMMON CP DATA DCB DCD DCDU DCDO DCFD DCFDU DCI DCQ DCQU DCW DCWU DN ELIF ELSE END ENDFUNC ENDIF ENDP ENTRY EQU EXPORT EXPORTAS EXTERN FIELD FILL FUNCTION GBLA GBLL GBLS GET GLOBAL IF IMPORT INCBIN INCLUDE INFO KEEP LCLA LCLL LCLS LTORG MACRO MAP MEND MEXIT NOFP OPT PRESERVE8 PROC QN READONLY RELOC REQUIRE REQUIRE8 RLIST FN ROUT SETA SETL SETS SN SPACE SUBT THUMB THUMBX TTL WHILE WEND \",built_in:\"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 pc lr sp ip sl sb fp a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 f0 f1 f2 f3 f4 f5 f6 f7 p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 cpsr_c cpsr_x cpsr_s cpsr_f cpsr_cx cpsr_cxs cpsr_xs cpsr_xsf cpsr_sf cpsr_cxsf spsr_c spsr_x spsr_s spsr_f spsr_cx spsr_cxs spsr_xs spsr_xsf spsr_sf spsr_cxsf s0 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 s14 s15 s16 s17 s18 s19 s20 s21 s22 s23 s24 s25 s26 s27 s28 s29 s30 s31 d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 d16 d17 d18 d19 d20 d21 d22 d23 d24 d25 d26 d27 d28 d29 d30 d31 {PC} {VAR} {TRUE} {FALSE} {OPT} {CONFIG} {ENDIAN} {CODESIZE} {CPU} {FPU} {ARCHITECTURE} {PCSTOREOFFSET} {ARMASM_VERSION} {INTER} {ROPI} {RWPI} {SWST} {NOSWST} . @\"},c:[{cN:\"keyword\",b:\"\\\\b(adc|(qd?|sh?|u[qh]?)?add(8|16)?|usada?8|(q|sh?|u[qh]?)?(as|sa)x|and|adrl?|sbc|rs[bc]|asr|b[lx]?|blx|bxj|cbn?z|tb[bh]|bic|bfc|bfi|[su]bfx|bkpt|cdp2?|clz|clrex|cmp|cmn|cpsi[ed]|cps|setend|dbg|dmb|dsb|eor|isb|it[te]{0,3}|lsl|lsr|ror|rrx|ldm(([id][ab])|f[ds])?|ldr((s|ex)?[bhd])?|movt?|mvn|mra|mar|mul|[us]mull|smul[bwt][bt]|smu[as]d|smmul|smmla|mla|umlaal|smlal?([wbt][bt]|d)|mls|smlsl?[ds]|smc|svc|sev|mia([bt]{2}|ph)?|mrr?c2?|mcrr2?|mrs|msr|orr|orn|pkh(tb|bt)|rbit|rev(16|sh)?|sel|[su]sat(16)?|nop|pop|push|rfe([id][ab])?|stm([id][ab])?|str(ex)?[bhd]?|(qd?)?sub|(sh?|q|u[qh]?)?sub(8|16)|[su]xt(a?h|a?b(16)?)|srs([id][ab])?|swpb?|swi|smi|tst|teq|wfe|wfi|yield)(eq|ne|cs|cc|mi|pl|vs|vc|hi|ls|ge|lt|gt|le|al|hs|lo)?[sptrx]?\",e:\"\\\\s\"},s.C(\"[;@]\",\"$\",{relevance:0}),s.CBCM,s.QSM,{cN:\"string\",b:\"'\",e:\"[^\\\\\\\\]'\",relevance:0},{cN:\"title\",b:\"\\\\|\",e:\"\\\\|\",i:\"\\\\n\",relevance:0},{cN:\"number\",v:[{b:\"[#$=]?0x[0-9a-f]+\"},{b:\"[#$=]?0b[01]+\"},{b:\"[#$=]\\\\d+\"},{b:\"\\\\b\\\\d+\"}],relevance:0},{cN:\"symbol\",v:[{b:\"^[a-z_\\\\.\\\\$][a-z0-9_\\\\.\\\\$]+\"},{b:\"^\\\\s*[a-z_\\\\.\\\\$][a-z0-9_\\\\.\\\\$]+:\"},{b:\"[=#]\\\\w+\"}],relevance:0}]}});hljs.registerLanguage(\"ruby\",function(e){var c=\"[a-zA-Z_]\\\\w*[!?=]?|[-+~]\\\\@|<<|>>|=~|===?|<=>|[<>]=?|\\\\*\\\\*|[-/+%^&*~`|]|\\\\[\\\\]=?\",b={keyword:\"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor\",literal:\"true false nil\"},r={cN:\"doctag\",b:\"@[A-Za-z]+\"},a={b:\"#<\",e:\">\"},n=[e.C(\"#\",\"$\",{c:[r]}),e.C(\"^\\\\=begin\",\"^\\\\=end\",{c:[r],relevance:10}),e.C(\"^__END__\",\"\\\\n$\")],s={cN:\"subst\",b:\"#\\\\{\",e:\"}\",k:b},t={cN:\"string\",c:[e.BE,s],v:[{b:/'/,e:/'/},{b:/\"/,e:/\"/},{b:/`/,e:/`/},{b:\"%[qQwWx]?\\\\(\",e:\"\\\\)\"},{b:\"%[qQwWx]?\\\\[\",e:\"\\\\]\"},{b:\"%[qQwWx]?{\",e:\"}\"},{b:\"%[qQwWx]?<\",e:\">\"},{b:\"%[qQwWx]?/\",e:\"/\"},{b:\"%[qQwWx]?%\",e:\"%\"},{b:\"%[qQwWx]?-\",e:\"-\"},{b:\"%[qQwWx]?\\\\|\",e:\"\\\\|\"},{b:/\\B\\?(\\\\\\d{1,3}|\\\\x[A-Fa-f0-9]{1,2}|\\\\u[A-Fa-f0-9]{4}|\\\\?\\S)\\b/},{b:/<<[-~]?'?(\\w+)(?:.|\\n)*?\\n\\s*\\1\\b/,rB:!0,c:[{b:/<<[-~]?'?/},{b:/\\w+/,endSameAsBegin:!0,c:[e.BE,s]}]}]},i={cN:\"params\",b:\"\\\\(\",e:\"\\\\)\",endsParent:!0,k:b},l=[t,a,{cN:\"class\",bK:\"class module\",e:\"$|;\",i:/=/,c:[e.inherit(e.TM,{b:\"[A-Za-z_]\\\\w*(::\\\\w+)*(\\\\?|\\\\!)?\"}),{b:\"<\\\\s*\",c:[{b:\"(\"+e.IR+\"::)?\"+e.IR}]}].concat(n)},{cN:\"function\",bK:\"def\",e:\"$|;\",c:[e.inherit(e.TM,{b:c}),i].concat(n)},{b:e.IR+\"::\"},{cN:\"symbol\",b:e.UIR+\"(\\\\!|\\\\?)?:\",relevance:0},{cN:\"symbol\",b:\":(?!\\\\s)\",c:[t,{b:c}],relevance:0},{cN:\"number\",b:\"(\\\\b0[0-7_]+)|(\\\\b0x[0-9a-fA-F_]+)|(\\\\b[1-9][0-9_]*(\\\\.[0-9_]+)?)|[0_]\\\\b\",relevance:0},{b:\"(\\\\$\\\\W)|((\\\\$|\\\\@\\\\@?)(\\\\w+))\"},{cN:\"params\",b:/\\|/,e:/\\|/,k:b},{b:\"(\"+e.RSR+\"|unless)\\\\s*\",k:\"unless\",c:[a,{cN:\"regexp\",c:[e.BE,s],i:/\\n/,v:[{b:\"/\",e:\"/[a-z]*\"},{b:\"%r{\",e:\"}[a-z]*\"},{b:\"%r\\\\(\",e:\"\\\\)[a-z]*\"},{b:\"%r!\",e:\"![a-z]*\"},{b:\"%r\\\\[\",e:\"\\\\][a-z]*\"}]}].concat(n),relevance:0}].concat(n);s.c=l;var d=[{b:/^\\s*=>/,starts:{e:\"$\",c:i.c=l}},{cN:\"meta\",b:\"^([>?]>|[\\\\w#]+\\\\(\\\\w+\\\\):\\\\d+:\\\\d+>|(\\\\w+-)?\\\\d+\\\\.\\\\d+\\\\.\\\\d(p\\\\d+)?[^>]+>)\",starts:{e:\"$\",c:l}}];return{aliases:[\"rb\",\"gemspec\",\"podspec\",\"thor\",\"irb\"],k:b,i:/\\/\\*/,c:n.concat(d).concat(l)}});hljs.registerLanguage(\"lua\",function(e){var t=\"\\\\[=*\\\\[\",a=\"\\\\]=*\\\\]\",n={b:t,e:a,c:[\"self\"]},l=[e.C(\"--(?!\"+t+\")\",\"$\"),e.C(\"--\"+t,a,{c:[n],relevance:10})];return{l:e.UIR,k:{literal:\"true false nil\",keyword:\"and break do else elseif end for goto if in local not or repeat return then until while\",built_in:\"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstringmodule next pairs pcall print rawequal rawget rawset require select setfenvsetmetatable tonumber tostring type unpack xpcall arg selfcoroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove\"},c:l.concat([{cN:\"function\",bK:\"function\",e:\"\\\\)\",c:[e.inherit(e.TM,{b:\"([_a-zA-Z]\\\\w*\\\\.)*([_a-zA-Z]\\\\w*:)?[_a-zA-Z]\\\\w*\"}),{cN:\"params\",b:\"\\\\(\",eW:!0,c:l}].concat(l)},e.CNM,e.ASM,e.QSM,{cN:\"string\",b:t,e:a,c:[n],relevance:5}])}});hljs.registerLanguage(\"matlab\",function(e){var a=\"('|\\\\.')+\",s={relevance:0,c:[{b:a}]};return{k:{keyword:\"break case catch classdef continue else elseif end enumerated events for function global if methods otherwise parfor persistent properties return spmd switch try while\",built_in:\"sin sind sinh asin asind asinh cos cosd cosh acos acosd acosh tan tand tanh atan atand atan2 atanh sec secd sech asec asecd asech csc cscd csch acsc acscd acsch cot cotd coth acot acotd acoth hypot exp expm1 log log1p log10 log2 pow2 realpow reallog realsqrt sqrt nthroot nextpow2 abs angle complex conj imag real unwrap isreal cplxpair fix floor ceil round mod rem sign airy besselj bessely besselh besseli besselk beta betainc betaln ellipj ellipke erf erfc erfcx erfinv expint gamma gammainc gammaln psi legendre cross dot factor isprime primes gcd lcm rat rats perms nchoosek factorial cart2sph cart2pol pol2cart sph2cart hsv2rgb rgb2hsv zeros ones eye repmat rand randn linspace logspace freqspace meshgrid accumarray size length ndims numel disp isempty isequal isequalwithequalnans cat reshape diag blkdiag tril triu fliplr flipud flipdim rot90 find sub2ind ind2sub bsxfun ndgrid permute ipermute shiftdim circshift squeeze isscalar isvector ans eps realmax realmin pi i inf nan isnan isinf isfinite j why compan gallery hadamard hankel hilb invhilb magic pascal rosser toeplitz vander wilkinson max min nanmax nanmin mean nanmean type table readtable writetable sortrows sort figure plot plot3 scatter scatter3 cellfun legend intersect ismember procrustes hold num2cell \"},i:'(//|\"|#|/\\\\*|\\\\s+/\\\\w+)',c:[{cN:\"function\",bK:\"function\",e:\"$\",c:[e.UTM,{cN:\"params\",v:[{b:\"\\\\(\",e:\"\\\\)\"},{b:\"\\\\[\",e:\"\\\\]\"}]}]},{cN:\"built_in\",b:/true|false/,relevance:0,starts:s},{b:\"[a-zA-Z][a-zA-Z_0-9]*\"+a,relevance:0},{cN:\"number\",b:e.CNR,relevance:0,starts:s},{cN:\"string\",b:\"'\",e:\"'\",c:[e.BE,{b:\"''\"}]},{b:/\\]|}|\\)/,relevance:0,starts:s},{cN:\"string\",b:'\"',e:'\"',c:[e.BE,{b:'\"\"'}],starts:s},e.C(\"^\\\\s*\\\\%\\\\{\\\\s*$\",\"^\\\\s*\\\\%\\\\}\\\\s*$\"),e.C(\"\\\\%\",\"$\")]}});hljs.registerLanguage(\"apache\",function(e){var r={cN:\"number\",b:\"[\\\\$%]\\\\d+\"};return{aliases:[\"apacheconf\"],cI:!0,c:[e.HCM,{cN:\"section\",b:\"</?\",e:\">\"},{cN:\"attribute\",b:/\\w+/,relevance:0,k:{nomarkup:\"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername\"},starts:{e:/$/,relevance:0,k:{literal:\"on off all\"},c:[{cN:\"meta\",b:\"\\\\s\\\\[\",e:\"\\\\]$\"},{cN:\"variable\",b:\"[\\\\$%]\\\\{\",e:\"\\\\}\",c:[\"self\",r]},r,e.QSM]}}],i:/\\S/}});hljs.registerLanguage(\"yaml\",function(e){var b=\"true false yes no null\",a={cN:\"string\",relevance:0,v:[{b:/'/,e:/'/},{b:/\"/,e:/\"/},{b:/\\S+/}],c:[e.BE,{cN:\"template-variable\",v:[{b:\"{{\",e:\"}}\"},{b:\"%{\",e:\"}\"}]}]};return{cI:!0,aliases:[\"yml\",\"YAML\",\"yaml\"],c:[{cN:\"attr\",v:[{b:\"\\\\w[\\\\w :\\\\/.-]*:(?=[ \\t]|$)\"},{b:'\"\\\\w[\\\\w :\\\\/.-]*\":(?=[ \\t]|$)'},{b:\"'\\\\w[\\\\w :\\\\/.-]*':(?=[ \\t]|$)\"}]},{cN:\"meta\",b:\"^---s*$\",relevance:10},{cN:\"string\",b:\"[\\\\|>]([0-9]?[+-])?[ ]*\\\\n( *)[\\\\S ]+\\\\n(\\\\2[\\\\S ]+\\\\n?)*\"},{b:\"<%[%=-]?\",e:\"[%-]?%>\",sL:\"ruby\",eB:!0,eE:!0,relevance:0},{cN:\"type\",b:\"!\"+e.UIR},{cN:\"type\",b:\"!!\"+e.UIR},{cN:\"meta\",b:\"&\"+e.UIR+\"$\"},{cN:\"meta\",b:\"\\\\*\"+e.UIR+\"$\"},{cN:\"bullet\",b:\"\\\\-(?=[ ]|$)\",relevance:0},e.HCM,{bK:b,k:{literal:b}},{cN:\"number\",b:e.CNR+\"\\\\b\"},a]}});hljs.registerLanguage(\"plaintext\",function(e){return{disableAutodetect:!0}});hljs.registerLanguage(\"erlang-repl\",function(e){return{k:{built_in:\"spawn spawn_link self\",keyword:\"after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse|10 query receive rem try when xor\"},c:[{cN:\"meta\",b:\"^[0-9]+> \",relevance:10},e.C(\"%\",\"$\"),{cN:\"number\",b:\"\\\\b(\\\\d+#[a-fA-F0-9]+|\\\\d+(\\\\.\\\\d+)?([eE][-+]?\\\\d+)?)\",relevance:0},e.ASM,e.QSM,{b:\"\\\\?(::)?([A-Z]\\\\w*(::)?)+\"},{b:\"->\"},{b:\"ok\"},{b:\"!\"},{b:\"(\\\\b[a-z'][a-zA-Z0-9_']*:[a-z'][a-zA-Z0-9_']*)|(\\\\b[a-z'][a-zA-Z0-9_']*)\",relevance:0},{b:\"[A-Z][a-zA-Z0-9_']*\",relevance:0}]}});hljs.registerLanguage(\"cmake\",function(e){return{aliases:[\"cmake.in\"],cI:!0,k:{keyword:\"break cmake_host_system_information cmake_minimum_required cmake_parse_arguments cmake_policy configure_file continue elseif else endforeach endfunction endif endmacro endwhile execute_process file find_file find_library find_package find_path find_program foreach function get_cmake_property get_directory_property get_filename_component get_property if include include_guard list macro mark_as_advanced math message option return separate_arguments set_directory_properties set_property set site_name string unset variable_watch while add_compile_definitions add_compile_options add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_link_options add_subdirectory add_test aux_source_directory build_command create_test_sourcelist define_property enable_language enable_testing export fltk_wrap_ui get_source_file_property get_target_property get_test_property include_directories include_external_msproject include_regular_expression install link_directories link_libraries load_cache project qt_wrap_cpp qt_wrap_ui remove_definitions set_source_files_properties set_target_properties set_tests_properties source_group target_compile_definitions target_compile_features target_compile_options target_include_directories target_link_directories target_link_libraries target_link_options target_sources try_compile try_run ctest_build ctest_configure ctest_coverage ctest_empty_binary_directory ctest_memcheck ctest_read_custom_files ctest_run_script ctest_sleep ctest_start ctest_submit ctest_test ctest_update ctest_upload build_name exec_program export_library_dependencies install_files install_programs install_targets load_command make_directory output_required_files remove subdir_depends subdirs use_mangled_mesa utility_source variable_requires write_file qt5_use_modules qt5_use_package qt5_wrap_cpp on off true false and or not command policy target test exists is_newer_than is_directory is_symlink is_absolute matches less greater equal less_equal greater_equal strless strgreater strequal strless_equal strgreater_equal version_less version_greater version_equal version_less_equal version_greater_equal in_list defined\"},c:[{cN:\"variable\",b:\"\\\\${\",e:\"}\"},e.HCM,e.QSM,e.NM]}});hljs.registerLanguage(\"kotlin\",function(e){var t={keyword:\"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual trait volatile transient native default\",built_in:\"Byte Short Char Int Long Boolean Float Double Void Unit Nothing\",literal:\"true false null\"},a={cN:\"symbol\",b:e.UIR+\"@\"},n={cN:\"subst\",b:\"\\\\${\",e:\"}\",c:[e.CNM]},c={cN:\"variable\",b:\"\\\\$\"+e.UIR},r={cN:\"string\",v:[{b:'\"\"\"',e:'\"\"\"(?=[^\"])',c:[c,n]},{b:\"'\",e:\"'\",i:/\\n/,c:[e.BE]},{b:'\"',e:'\"',i:/\\n/,c:[e.BE,c,n]}]};n.c.push(r);var i={cN:\"meta\",b:\"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\\\s*:(?:\\\\s*\"+e.UIR+\")?\"},l={cN:\"meta\",b:\"@\"+e.UIR,c:[{b:/\\(/,e:/\\)/,c:[e.inherit(r,{cN:\"meta-string\"})]}]},s={cN:\"number\",b:\"\\\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\\\d]+[\\\\d_]+[\\\\d]+|[\\\\d]+)(\\\\.([\\\\d]+[\\\\d_]+[\\\\d]+|[\\\\d]+))?|\\\\.([\\\\d]+[\\\\d_]+[\\\\d]+|[\\\\d]+))([eE][-+]?\\\\d+)?)[lLfF]?\",relevance:0},b=e.C(\"/\\\\*\",\"\\\\*/\",{c:[e.CBCM]}),o={v:[{cN:\"type\",b:e.UIR},{b:/\\(/,e:/\\)/,c:[]}]},d=o;return d.v[1].c=[o],o.v[1].c=[d],{aliases:[\"kt\"],k:t,c:[e.C(\"/\\\\*\\\\*\",\"\\\\*/\",{relevance:0,c:[{cN:\"doctag\",b:\"@[A-Za-z]+\"}]}),e.CLCM,b,{cN:\"keyword\",b:/\\b(break|continue|return|this)\\b/,starts:{c:[{cN:\"symbol\",b:/@\\w+/}]}},a,i,l,{cN:\"function\",bK:\"fun\",e:\"[(]|$\",rB:!0,eE:!0,k:t,i:/fun\\s+(<.*>)?[^\\s\\(]+(\\s+[^\\s\\(]+)\\s*=/,relevance:5,c:[{b:e.UIR+\"\\\\s*\\\\(\",rB:!0,relevance:0,c:[e.UTM]},{cN:\"type\",b:/</,e:/>/,k:\"reified\",relevance:0},{cN:\"params\",b:/\\(/,e:/\\)/,endsParent:!0,k:t,relevance:0,c:[{b:/:/,e:/[=,\\/]/,eW:!0,c:[o,e.CLCM,b],relevance:0},e.CLCM,b,i,l,r,e.CNM]},b]},{cN:\"class\",bK:\"class interface trait\",e:/[:\\{(]|$/,eE:!0,i:\"extends implements\",c:[{bK:\"public protected internal private constructor\"},e.UTM,{cN:\"type\",b:/</,e:/>/,eB:!0,eE:!0,relevance:0},{cN:\"type\",b:/[,:]\\s*/,e:/[<\\(,]|$/,eB:!0,rE:!0},i,l]},r,{cN:\"meta\",b:\"^#!/usr/bin/env\",e:\"$\",i:\"\\n\"},s]}});hljs.registerLanguage(\"javascript\",function(e){var r=\"<>\",a=\"</>\",t={b:/<[A-Za-z0-9\\\\._:-]+/,e:/\\/[A-Za-z0-9\\\\._:-]+>|\\/>/},c=\"[A-Za-z$_][0-9A-Za-z$_]*\",n={keyword:\"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as\",literal:\"true false null undefined NaN Infinity\",built_in:\"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise\"},s={cN:\"number\",v:[{b:\"\\\\b(0[bB][01]+)n?\"},{b:\"\\\\b(0[oO][0-7]+)n?\"},{b:e.CNR+\"n?\"}],relevance:0},o={cN:\"subst\",b:\"\\\\$\\\\{\",e:\"\\\\}\",k:n,c:[]},i={b:\"html`\",e:\"\",starts:{e:\"`\",rE:!1,c:[e.BE,o],sL:\"xml\"}},b={b:\"css`\",e:\"\",starts:{e:\"`\",rE:!1,c:[e.BE,o],sL:\"css\"}},l={cN:\"string\",b:\"`\",e:\"`\",c:[e.BE,o]};o.c=[e.ASM,e.QSM,i,b,l,s,e.RM];var u=o.c.concat([e.CBCM,e.CLCM]);return{aliases:[\"js\",\"jsx\",\"mjs\",\"cjs\"],k:n,c:[{cN:\"meta\",relevance:10,b:/^\\s*['\"]use (strict|asm)['\"]/},{cN:\"meta\",b:/^#!/,e:/$/},e.ASM,e.QSM,i,b,l,e.CLCM,e.C(\"/\\\\*\\\\*\",\"\\\\*/\",{relevance:0,c:[{cN:\"doctag\",b:\"@[A-Za-z]+\",c:[{cN:\"type\",b:\"\\\\{\",e:\"\\\\}\",relevance:0},{cN:\"variable\",b:c+\"(?=\\\\s*(-)|$)\",endsParent:!0,relevance:0},{b:/(?=[^\\n])\\s/,relevance:0}]}]}),e.CBCM,s,{b:/[{,\\n]\\s*/,relevance:0,c:[{b:c+\"\\\\s*:\",rB:!0,relevance:0,c:[{cN:\"attr\",b:c,relevance:0}]}]},{b:\"(\"+e.RSR+\"|\\\\b(case|return|throw)\\\\b)\\\\s*\",k:\"return throw case\",c:[e.CLCM,e.CBCM,e.RM,{cN:\"function\",b:\"(\\\\(.*?\\\\)|\"+c+\")\\\\s*=>\",rB:!0,e:\"\\\\s*=>\",c:[{cN:\"params\",v:[{b:c},{b:/\\(\\s*\\)/},{b:/\\(/,e:/\\)/,eB:!0,eE:!0,k:n,c:u}]}]},{cN:\"\",b:/\\s/,e:/\\s*/,skip:!0},{v:[{b:r,e:a},{b:t.b,e:t.e}],sL:\"xml\",c:[{b:t.b,e:t.e,skip:!0,c:[\"self\"]}]}],relevance:0},{cN:\"function\",bK:\"function\",e:/\\{/,eE:!0,c:[e.inherit(e.TM,{b:c}),{cN:\"params\",b:/\\(/,e:/\\)/,eB:!0,eE:!0,c:u}],i:/\\[|%/},{b:/\\$[(.]/},e.METHOD_GUARD,{cN:\"class\",bK:\"class\",e:/[{;=]/,eE:!0,i:/[:\"\\[\\]]/,c:[{bK:\"extends\"},e.UTM]},{bK:\"constructor get set\",e:/\\{/,eE:!0}],i:/#(?!!)/}});hljs.registerLanguage(\"scss\",function(e){var t=\"@[a-z-]+\",r={cN:\"variable\",b:\"(\\\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\\\b\"},i={cN:\"number\",b:\"#[0-9A-Fa-f]+\"};e.CSSNM,e.QSM,e.ASM,e.CBCM;return{cI:!0,i:\"[=/|']\",c:[e.CLCM,e.CBCM,{cN:\"selector-id\",b:\"\\\\#[A-Za-z0-9_-]+\",relevance:0},{cN:\"selector-class\",b:\"\\\\.[A-Za-z0-9_-]+\",relevance:0},{cN:\"selector-attr\",b:\"\\\\[\",e:\"\\\\]\",i:\"$\"},{cN:\"selector-tag\",b:\"\\\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\\\b\",relevance:0},{cN:\"selector-pseudo\",b:\":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)\"},{cN:\"selector-pseudo\",b:\"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)\"},r,{cN:\"attribute\",b:\"\\\\b(src|z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\\\b\",i:\"[^\\\\s]\"},{b:\"\\\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\\\b\"},{b:\":\",e:\";\",c:[r,i,e.CSSNM,e.QSM,e.ASM,{cN:\"meta\",b:\"!important\"}]},{b:\"@(page|font-face)\",l:t,k:\"@page @font-face\"},{b:\"@\",e:\"[{;]\",rB:!0,k:\"and or not only\",c:[{b:t,cN:\"keyword\"},r,e.QSM,e.ASM,i,e.CSSNM]}]}});hljs.registerLanguage(\"perl\",function(e){var t=\"getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qqfileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmgetsub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedirioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when\",r={cN:\"subst\",b:\"[$@]\\\\{\",e:\"\\\\}\",k:t},s={b:\"->{\",e:\"}\"},n={v:[{b:/\\$\\d/},{b:/[\\$%@](\\^\\w\\b|#\\w+(::\\w+)*|{\\w+}|\\w+(::\\w*)*)/},{b:/[\\$%@][^\\s\\w{]/,relevance:0}]},c=[e.BE,r,n],a=[n,e.HCM,e.C(\"^\\\\=\\\\w\",\"\\\\=cut\",{eW:!0}),s,{cN:\"string\",c:c,v:[{b:\"q[qwxr]?\\\\s*\\\\(\",e:\"\\\\)\",relevance:5},{b:\"q[qwxr]?\\\\s*\\\\[\",e:\"\\\\]\",relevance:5},{b:\"q[qwxr]?\\\\s*\\\\{\",e:\"\\\\}\",relevance:5},{b:\"q[qwxr]?\\\\s*\\\\|\",e:\"\\\\|\",relevance:5},{b:\"q[qwxr]?\\\\s*\\\\<\",e:\"\\\\>\",relevance:5},{b:\"qw\\\\s+q\",e:\"q\",relevance:5},{b:\"'\",e:\"'\",c:[e.BE]},{b:'\"',e:'\"'},{b:\"`\",e:\"`\",c:[e.BE]},{b:\"{\\\\w+}\",c:[],relevance:0},{b:\"-?\\\\w+\\\\s*\\\\=\\\\>\",c:[],relevance:0}]},{cN:\"number\",b:\"(\\\\b0[0-7_]+)|(\\\\b0x[0-9a-fA-F_]+)|(\\\\b[1-9][0-9_]*(\\\\.[0-9_]+)?)|[0_]\\\\b\",relevance:0},{b:\"(\\\\/\\\\/|\"+e.RSR+\"|\\\\b(split|return|print|reverse|grep)\\\\b)\\\\s*\",k:\"split return print reverse grep\",relevance:0,c:[e.HCM,{cN:\"regexp\",b:\"(s|tr|y)/(\\\\\\\\.|[^/])*/(\\\\\\\\.|[^/])*/[a-z]*\",relevance:10},{cN:\"regexp\",b:\"(m|qr)?/\",e:\"/[a-z]*\",c:[e.BE],relevance:0}]},{cN:\"function\",bK:\"sub\",e:\"(\\\\s*\\\\(.*?\\\\))?[;{]\",eE:!0,relevance:5,c:[e.TM]},{b:\"-\\\\w\\\\b\",relevance:0},{b:\"^__DATA__$\",e:\"^__END__$\",sL:\"mojolicious\",c:[{b:\"^@@.*\",e:\"$\",cN:\"comment\"}]}];return r.c=a,{aliases:[\"pl\",\"pm\"],l:/[\\w\\.]+/,k:t,c:s.c=a}});hljs.registerLanguage(\"go\",function(e){var n={keyword:\"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune\",literal:\"true false iota nil\",built_in:\"append cap close complex copy imag len make new panic print println real recover delete\"};return{aliases:[\"golang\"],k:n,i:\"</\",c:[e.CLCM,e.CBCM,{cN:\"string\",v:[e.QSM,e.ASM,{b:\"`\",e:\"`\"}]},{cN:\"number\",v:[{b:e.CNR+\"[i]\",relevance:1},e.CNM]},{b:/:=/},{cN:\"function\",bK:\"func\",e:\"\\\\s*(\\\\{|$)\",eE:!0,c:[e.TM,{cN:\"params\",b:/\\(/,e:/\\)/,k:n,i:/[\"']/}]}]}});hljs.registerLanguage(\"x86asm\",function(s){return{cI:!0,l:\"[.%]?\"+s.IR,k:{keyword:\"lock rep repe repz repne repnz xaquire xrelease bnd nobnd aaa aad aam aas adc add and arpl bb0_reset bb1_reset bound bsf bsr bswap bt btc btr bts call cbw cdq cdqe clc cld cli clts cmc cmp cmpsb cmpsd cmpsq cmpsw cmpxchg cmpxchg486 cmpxchg8b cmpxchg16b cpuid cpu_read cpu_write cqo cwd cwde daa das dec div dmint emms enter equ f2xm1 fabs fadd faddp fbld fbstp fchs fclex fcmovb fcmovbe fcmove fcmovnb fcmovnbe fcmovne fcmovnu fcmovu fcom fcomi fcomip fcomp fcompp fcos fdecstp fdisi fdiv fdivp fdivr fdivrp femms feni ffree ffreep fiadd ficom ficomp fidiv fidivr fild fimul fincstp finit fist fistp fisttp fisub fisubr fld fld1 fldcw fldenv fldl2e fldl2t fldlg2 fldln2 fldpi fldz fmul fmulp fnclex fndisi fneni fninit fnop fnsave fnstcw fnstenv fnstsw fpatan fprem fprem1 fptan frndint frstor fsave fscale fsetpm fsin fsincos fsqrt fst fstcw fstenv fstp fstsw fsub fsubp fsubr fsubrp ftst fucom fucomi fucomip fucomp fucompp fxam fxch fxtract fyl2x fyl2xp1 hlt ibts icebp idiv imul in inc incbin insb insd insw int int01 int1 int03 int3 into invd invpcid invlpg invlpga iret iretd iretq iretw jcxz jecxz jrcxz jmp jmpe lahf lar lds lea leave les lfence lfs lgdt lgs lidt lldt lmsw loadall loadall286 lodsb lodsd lodsq lodsw loop loope loopne loopnz loopz lsl lss ltr mfence monitor mov movd movq movsb movsd movsq movsw movsx movsxd movzx mul mwait neg nop not or out outsb outsd outsw packssdw packsswb packuswb paddb paddd paddsb paddsiw paddsw paddusb paddusw paddw pand pandn pause paveb pavgusb pcmpeqb pcmpeqd pcmpeqw pcmpgtb pcmpgtd pcmpgtw pdistib pf2id pfacc pfadd pfcmpeq pfcmpge pfcmpgt pfmax pfmin pfmul pfrcp pfrcpit1 pfrcpit2 pfrsqit1 pfrsqrt pfsub pfsubr pi2fd pmachriw pmaddwd pmagw pmulhriw pmulhrwa pmulhrwc pmulhw pmullw pmvgezb pmvlzb pmvnzb pmvzb pop popa popad popaw popf popfd popfq popfw por prefetch prefetchw pslld psllq psllw psrad psraw psrld psrlq psrlw psubb psubd psubsb psubsiw psubsw psubusb psubusw psubw punpckhbw punpckhdq punpckhwd punpcklbw punpckldq punpcklwd push pusha pushad pushaw pushf pushfd pushfq pushfw pxor rcl rcr rdshr rdmsr rdpmc rdtsc rdtscp ret retf retn rol ror rdm rsdc rsldt rsm rsts sahf sal salc sar sbb scasb scasd scasq scasw sfence sgdt shl shld shr shrd sidt sldt skinit smi smint smintold smsw stc std sti stosb stosd stosq stosw str sub svdc svldt svts swapgs syscall sysenter sysexit sysret test ud0 ud1 ud2b ud2 ud2a umov verr verw fwait wbinvd wrshr wrmsr xadd xbts xchg xlatb xlat xor cmove cmovz cmovne cmovnz cmova cmovnbe cmovae cmovnb cmovb cmovnae cmovbe cmovna cmovg cmovnle cmovge cmovnl cmovl cmovnge cmovle cmovng cmovc cmovnc cmovo cmovno cmovs cmovns cmovp cmovpe cmovnp cmovpo je jz jne jnz ja jnbe jae jnb jb jnae jbe jna jg jnle jge jnl jl jnge jle jng jc jnc jo jno js jns jpo jnp jpe jp sete setz setne setnz seta setnbe setae setnb setnc setb setnae setcset setbe setna setg setnle setge setnl setl setnge setle setng sets setns seto setno setpe setp setpo setnp addps addss andnps andps cmpeqps cmpeqss cmpleps cmpless cmpltps cmpltss cmpneqps cmpneqss cmpnleps cmpnless cmpnltps cmpnltss cmpordps cmpordss cmpunordps cmpunordss cmpps cmpss comiss cvtpi2ps cvtps2pi cvtsi2ss cvtss2si cvttps2pi cvttss2si divps divss ldmxcsr maxps maxss minps minss movaps movhps movlhps movlps movhlps movmskps movntps movss movups mulps mulss orps rcpps rcpss rsqrtps rsqrtss shufps sqrtps sqrtss stmxcsr subps subss ucomiss unpckhps unpcklps xorps fxrstor fxrstor64 fxsave fxsave64 xgetbv xsetbv xsave xsave64 xsaveopt xsaveopt64 xrstor xrstor64 prefetchnta prefetcht0 prefetcht1 prefetcht2 maskmovq movntq pavgb pavgw pextrw pinsrw pmaxsw pmaxub pminsw pminub pmovmskb pmulhuw psadbw pshufw pf2iw pfnacc pfpnacc pi2fw pswapd maskmovdqu clflush movntdq movnti movntpd movdqa movdqu movdq2q movq2dq paddq pmuludq pshufd pshufhw pshuflw pslldq psrldq psubq punpckhqdq punpcklqdq addpd addsd andnpd andpd cmpeqpd cmpeqsd cmplepd cmplesd cmpltpd cmpltsd cmpneqpd cmpneqsd cmpnlepd cmpnlesd cmpnltpd cmpnltsd cmpordpd cmpordsd cmpunordpd cmpunordsd cmppd comisd cvtdq2pd cvtdq2ps cvtpd2dq cvtpd2pi cvtpd2ps cvtpi2pd cvtps2dq cvtps2pd cvtsd2si cvtsd2ss cvtsi2sd cvtss2sd cvttpd2pi cvttpd2dq cvttps2dq cvttsd2si divpd divsd maxpd maxsd minpd minsd movapd movhpd movlpd movmskpd movupd mulpd mulsd orpd shufpd sqrtpd sqrtsd subpd subsd ucomisd unpckhpd unpcklpd xorpd addsubpd addsubps haddpd haddps hsubpd hsubps lddqu movddup movshdup movsldup clgi stgi vmcall vmclear vmfunc vmlaunch vmload vmmcall vmptrld vmptrst vmread vmresume vmrun vmsave vmwrite vmxoff vmxon invept invvpid pabsb pabsw pabsd palignr phaddw phaddd phaddsw phsubw phsubd phsubsw pmaddubsw pmulhrsw pshufb psignb psignw psignd extrq insertq movntsd movntss lzcnt blendpd blendps blendvpd blendvps dppd dpps extractps insertps movntdqa mpsadbw packusdw pblendvb pblendw pcmpeqq pextrb pextrd pextrq phminposuw pinsrb pinsrd pinsrq pmaxsb pmaxsd pmaxud pmaxuw pminsb pminsd pminud pminuw pmovsxbw pmovsxbd pmovsxbq pmovsxwd pmovsxwq pmovsxdq pmovzxbw pmovzxbd pmovzxbq pmovzxwd pmovzxwq pmovzxdq pmuldq pmulld ptest roundpd roundps roundsd roundss crc32 pcmpestri pcmpestrm pcmpistri pcmpistrm pcmpgtq popcnt getsec pfrcpv pfrsqrtv movbe aesenc aesenclast aesdec aesdeclast aesimc aeskeygenassist vaesenc vaesenclast vaesdec vaesdeclast vaesimc vaeskeygenassist vaddpd vaddps vaddsd vaddss vaddsubpd vaddsubps vandpd vandps vandnpd vandnps vblendpd vblendps vblendvpd vblendvps vbroadcastss vbroadcastsd vbroadcastf128 vcmpeq_ospd vcmpeqpd vcmplt_ospd vcmpltpd vcmple_ospd vcmplepd vcmpunord_qpd vcmpunordpd vcmpneq_uqpd vcmpneqpd vcmpnlt_uspd vcmpnltpd vcmpnle_uspd vcmpnlepd vcmpord_qpd vcmpordpd vcmpeq_uqpd vcmpnge_uspd vcmpngepd vcmpngt_uspd vcmpngtpd vcmpfalse_oqpd vcmpfalsepd vcmpneq_oqpd vcmpge_ospd vcmpgepd vcmpgt_ospd vcmpgtpd vcmptrue_uqpd vcmptruepd vcmplt_oqpd vcmple_oqpd vcmpunord_spd vcmpneq_uspd vcmpnlt_uqpd vcmpnle_uqpd vcmpord_spd vcmpeq_uspd vcmpnge_uqpd vcmpngt_uqpd vcmpfalse_ospd vcmpneq_ospd vcmpge_oqpd vcmpgt_oqpd vcmptrue_uspd vcmppd vcmpeq_osps vcmpeqps vcmplt_osps vcmpltps vcmple_osps vcmpleps vcmpunord_qps vcmpunordps vcmpneq_uqps vcmpneqps vcmpnlt_usps vcmpnltps vcmpnle_usps vcmpnleps vcmpord_qps vcmpordps vcmpeq_uqps vcmpnge_usps vcmpngeps vcmpngt_usps vcmpngtps vcmpfalse_oqps vcmpfalseps vcmpneq_oqps vcmpge_osps vcmpgeps vcmpgt_osps vcmpgtps vcmptrue_uqps vcmptrueps vcmplt_oqps vcmple_oqps vcmpunord_sps vcmpneq_usps vcmpnlt_uqps vcmpnle_uqps vcmpord_sps vcmpeq_usps vcmpnge_uqps vcmpngt_uqps vcmpfalse_osps vcmpneq_osps vcmpge_oqps vcmpgt_oqps vcmptrue_usps vcmpps vcmpeq_ossd vcmpeqsd vcmplt_ossd vcmpltsd vcmple_ossd vcmplesd vcmpunord_qsd vcmpunordsd vcmpneq_uqsd vcmpneqsd vcmpnlt_ussd vcmpnltsd vcmpnle_ussd vcmpnlesd vcmpord_qsd vcmpordsd vcmpeq_uqsd vcmpnge_ussd vcmpngesd vcmpngt_ussd vcmpngtsd vcmpfalse_oqsd vcmpfalsesd vcmpneq_oqsd vcmpge_ossd vcmpgesd vcmpgt_ossd vcmpgtsd vcmptrue_uqsd vcmptruesd vcmplt_oqsd vcmple_oqsd vcmpunord_ssd vcmpneq_ussd vcmpnlt_uqsd vcmpnle_uqsd vcmpord_ssd vcmpeq_ussd vcmpnge_uqsd vcmpngt_uqsd vcmpfalse_ossd vcmpneq_ossd vcmpge_oqsd vcmpgt_oqsd vcmptrue_ussd vcmpsd vcmpeq_osss vcmpeqss vcmplt_osss vcmpltss vcmple_osss vcmpless vcmpunord_qss vcmpunordss vcmpneq_uqss vcmpneqss vcmpnlt_usss vcmpnltss vcmpnle_usss vcmpnless vcmpord_qss vcmpordss vcmpeq_uqss vcmpnge_usss vcmpngess vcmpngt_usss vcmpngtss vcmpfalse_oqss vcmpfalsess vcmpneq_oqss vcmpge_osss vcmpgess vcmpgt_osss vcmpgtss vcmptrue_uqss vcmptruess vcmplt_oqss vcmple_oqss vcmpunord_sss vcmpneq_usss vcmpnlt_uqss vcmpnle_uqss vcmpord_sss vcmpeq_usss vcmpnge_uqss vcmpngt_uqss vcmpfalse_osss vcmpneq_osss vcmpge_oqss vcmpgt_oqss vcmptrue_usss vcmpss vcomisd vcomiss vcvtdq2pd vcvtdq2ps vcvtpd2dq vcvtpd2ps vcvtps2dq vcvtps2pd vcvtsd2si vcvtsd2ss vcvtsi2sd vcvtsi2ss vcvtss2sd vcvtss2si vcvttpd2dq vcvttps2dq vcvttsd2si vcvttss2si vdivpd vdivps vdivsd vdivss vdppd vdpps vextractf128 vextractps vhaddpd vhaddps vhsubpd vhsubps vinsertf128 vinsertps vlddqu vldqqu vldmxcsr vmaskmovdqu vmaskmovps vmaskmovpd vmaxpd vmaxps vmaxsd vmaxss vminpd vminps vminsd vminss vmovapd vmovaps vmovd vmovq vmovddup vmovdqa vmovqqa vmovdqu vmovqqu vmovhlps vmovhpd vmovhps vmovlhps vmovlpd vmovlps vmovmskpd vmovmskps vmovntdq vmovntqq vmovntdqa vmovntpd vmovntps vmovsd vmovshdup vmovsldup vmovss vmovupd vmovups vmpsadbw vmulpd vmulps vmulsd vmulss vorpd vorps vpabsb vpabsw vpabsd vpacksswb vpackssdw vpackuswb vpackusdw vpaddb vpaddw vpaddd vpaddq vpaddsb vpaddsw vpaddusb vpaddusw vpalignr vpand vpandn vpavgb vpavgw vpblendvb vpblendw vpcmpestri vpcmpestrm vpcmpistri vpcmpistrm vpcmpeqb vpcmpeqw vpcmpeqd vpcmpeqq vpcmpgtb vpcmpgtw vpcmpgtd vpcmpgtq vpermilpd vpermilps vperm2f128 vpextrb vpextrw vpextrd vpextrq vphaddw vphaddd vphaddsw vphminposuw vphsubw vphsubd vphsubsw vpinsrb vpinsrw vpinsrd vpinsrq vpmaddwd vpmaddubsw vpmaxsb vpmaxsw vpmaxsd vpmaxub vpmaxuw vpmaxud vpminsb vpminsw vpminsd vpminub vpminuw vpminud vpmovmskb vpmovsxbw vpmovsxbd vpmovsxbq vpmovsxwd vpmovsxwq vpmovsxdq vpmovzxbw vpmovzxbd vpmovzxbq vpmovzxwd vpmovzxwq vpmovzxdq vpmulhuw vpmulhrsw vpmulhw vpmullw vpmulld vpmuludq vpmuldq vpor vpsadbw vpshufb vpshufd vpshufhw vpshuflw vpsignb vpsignw vpsignd vpslldq vpsrldq vpsllw vpslld vpsllq vpsraw vpsrad vpsrlw vpsrld vpsrlq vptest vpsubb vpsubw vpsubd vpsubq vpsubsb vpsubsw vpsubusb vpsubusw vpunpckhbw vpunpckhwd vpunpckhdq vpunpckhqdq vpunpcklbw vpunpcklwd vpunpckldq vpunpcklqdq vpxor vrcpps vrcpss vrsqrtps vrsqrtss vroundpd vroundps vroundsd vroundss vshufpd vshufps vsqrtpd vsqrtps vsqrtsd vsqrtss vstmxcsr vsubpd vsubps vsubsd vsubss vtestps vtestpd vucomisd vucomiss vunpckhpd vunpckhps vunpcklpd vunpcklps vxorpd vxorps vzeroall vzeroupper pclmullqlqdq pclmulhqlqdq pclmullqhqdq pclmulhqhqdq pclmulqdq vpclmullqlqdq vpclmulhqlqdq vpclmullqhqdq vpclmulhqhqdq vpclmulqdq vfmadd132ps vfmadd132pd vfmadd312ps vfmadd312pd vfmadd213ps vfmadd213pd vfmadd123ps vfmadd123pd vfmadd231ps vfmadd231pd vfmadd321ps vfmadd321pd vfmaddsub132ps vfmaddsub132pd vfmaddsub312ps vfmaddsub312pd vfmaddsub213ps vfmaddsub213pd vfmaddsub123ps vfmaddsub123pd vfmaddsub231ps vfmaddsub231pd vfmaddsub321ps vfmaddsub321pd vfmsub132ps vfmsub132pd vfmsub312ps vfmsub312pd vfmsub213ps vfmsub213pd vfmsub123ps vfmsub123pd vfmsub231ps vfmsub231pd vfmsub321ps vfmsub321pd vfmsubadd132ps vfmsubadd132pd vfmsubadd312ps vfmsubadd312pd vfmsubadd213ps vfmsubadd213pd vfmsubadd123ps vfmsubadd123pd vfmsubadd231ps vfmsubadd231pd vfmsubadd321ps vfmsubadd321pd vfnmadd132ps vfnmadd132pd vfnmadd312ps vfnmadd312pd vfnmadd213ps vfnmadd213pd vfnmadd123ps vfnmadd123pd vfnmadd231ps vfnmadd231pd vfnmadd321ps vfnmadd321pd vfnmsub132ps vfnmsub132pd vfnmsub312ps vfnmsub312pd vfnmsub213ps vfnmsub213pd vfnmsub123ps vfnmsub123pd vfnmsub231ps vfnmsub231pd vfnmsub321ps vfnmsub321pd vfmadd132ss vfmadd132sd vfmadd312ss vfmadd312sd vfmadd213ss vfmadd213sd vfmadd123ss vfmadd123sd vfmadd231ss vfmadd231sd vfmadd321ss vfmadd321sd vfmsub132ss vfmsub132sd vfmsub312ss vfmsub312sd vfmsub213ss vfmsub213sd vfmsub123ss vfmsub123sd vfmsub231ss vfmsub231sd vfmsub321ss vfmsub321sd vfnmadd132ss vfnmadd132sd vfnmadd312ss vfnmadd312sd vfnmadd213ss vfnmadd213sd vfnmadd123ss vfnmadd123sd vfnmadd231ss vfnmadd231sd vfnmadd321ss vfnmadd321sd vfnmsub132ss vfnmsub132sd vfnmsub312ss vfnmsub312sd vfnmsub213ss vfnmsub213sd vfnmsub123ss vfnmsub123sd vfnmsub231ss vfnmsub231sd vfnmsub321ss vfnmsub321sd rdfsbase rdgsbase rdrand wrfsbase wrgsbase vcvtph2ps vcvtps2ph adcx adox rdseed clac stac xstore xcryptecb xcryptcbc xcryptctr xcryptcfb xcryptofb montmul xsha1 xsha256 llwpcb slwpcb lwpval lwpins vfmaddpd vfmaddps vfmaddsd vfmaddss vfmaddsubpd vfmaddsubps vfmsubaddpd vfmsubaddps vfmsubpd vfmsubps vfmsubsd vfmsubss vfnmaddpd vfnmaddps vfnmaddsd vfnmaddss vfnmsubpd vfnmsubps vfnmsubsd vfnmsubss vfrczpd vfrczps vfrczsd vfrczss vpcmov vpcomb vpcomd vpcomq vpcomub vpcomud vpcomuq vpcomuw vpcomw vphaddbd vphaddbq vphaddbw vphadddq vphaddubd vphaddubq vphaddubw vphaddudq vphadduwd vphadduwq vphaddwd vphaddwq vphsubbw vphsubdq vphsubwd vpmacsdd vpmacsdqh vpmacsdql vpmacssdd vpmacssdqh vpmacssdql vpmacsswd vpmacssww vpmacswd vpmacsww vpmadcsswd vpmadcswd vpperm vprotb vprotd vprotq vprotw vpshab vpshad vpshaq vpshaw vpshlb vpshld vpshlq vpshlw vbroadcasti128 vpblendd vpbroadcastb vpbroadcastw vpbroadcastd vpbroadcastq vpermd vpermpd vpermps vpermq vperm2i128 vextracti128 vinserti128 vpmaskmovd vpmaskmovq vpsllvd vpsllvq vpsravd vpsrlvd vpsrlvq vgatherdpd vgatherqpd vgatherdps vgatherqps vpgatherdd vpgatherqd vpgatherdq vpgatherqq xabort xbegin xend xtest andn bextr blci blcic blsi blsic blcfill blsfill blcmsk blsmsk blsr blcs bzhi mulx pdep pext rorx sarx shlx shrx tzcnt tzmsk t1mskc valignd valignq vblendmpd vblendmps vbroadcastf32x4 vbroadcastf64x4 vbroadcasti32x4 vbroadcasti64x4 vcompresspd vcompressps vcvtpd2udq vcvtps2udq vcvtsd2usi vcvtss2usi vcvttpd2udq vcvttps2udq vcvttsd2usi vcvttss2usi vcvtudq2pd vcvtudq2ps vcvtusi2sd vcvtusi2ss vexpandpd vexpandps vextractf32x4 vextractf64x4 vextracti32x4 vextracti64x4 vfixupimmpd vfixupimmps vfixupimmsd vfixupimmss vgetexppd vgetexpps vgetexpsd vgetexpss vgetmantpd vgetmantps vgetmantsd vgetmantss vinsertf32x4 vinsertf64x4 vinserti32x4 vinserti64x4 vmovdqa32 vmovdqa64 vmovdqu32 vmovdqu64 vpabsq vpandd vpandnd vpandnq vpandq vpblendmd vpblendmq vpcmpltd vpcmpled vpcmpneqd vpcmpnltd vpcmpnled vpcmpd vpcmpltq vpcmpleq vpcmpneqq vpcmpnltq vpcmpnleq vpcmpq vpcmpequd vpcmpltud vpcmpleud vpcmpnequd vpcmpnltud vpcmpnleud vpcmpud vpcmpequq vpcmpltuq vpcmpleuq vpcmpnequq vpcmpnltuq vpcmpnleuq vpcmpuq vpcompressd vpcompressq vpermi2d vpermi2pd vpermi2ps vpermi2q vpermt2d vpermt2pd vpermt2ps vpermt2q vpexpandd vpexpandq vpmaxsq vpmaxuq vpminsq vpminuq vpmovdb vpmovdw vpmovqb vpmovqd vpmovqw vpmovsdb vpmovsdw vpmovsqb vpmovsqd vpmovsqw vpmovusdb vpmovusdw vpmovusqb vpmovusqd vpmovusqw vpord vporq vprold vprolq vprolvd vprolvq vprord vprorq vprorvd vprorvq vpscatterdd vpscatterdq vpscatterqd vpscatterqq vpsraq vpsravq vpternlogd vpternlogq vptestmd vptestmq vptestnmd vptestnmq vpxord vpxorq vrcp14pd vrcp14ps vrcp14sd vrcp14ss vrndscalepd vrndscaleps vrndscalesd vrndscaless vrsqrt14pd vrsqrt14ps vrsqrt14sd vrsqrt14ss vscalefpd vscalefps vscalefsd vscalefss vscatterdpd vscatterdps vscatterqpd vscatterqps vshuff32x4 vshuff64x2 vshufi32x4 vshufi64x2 kandnw kandw kmovw knotw kortestw korw kshiftlw kshiftrw kunpckbw kxnorw kxorw vpbroadcastmb2q vpbroadcastmw2d vpconflictd vpconflictq vplzcntd vplzcntq vexp2pd vexp2ps vrcp28pd vrcp28ps vrcp28sd vrcp28ss vrsqrt28pd vrsqrt28ps vrsqrt28sd vrsqrt28ss vgatherpf0dpd vgatherpf0dps vgatherpf0qpd vgatherpf0qps vgatherpf1dpd vgatherpf1dps vgatherpf1qpd vgatherpf1qps vscatterpf0dpd vscatterpf0dps vscatterpf0qpd vscatterpf0qps vscatterpf1dpd vscatterpf1dps vscatterpf1qpd vscatterpf1qps prefetchwt1 bndmk bndcl bndcu bndcn bndmov bndldx bndstx sha1rnds4 sha1nexte sha1msg1 sha1msg2 sha256rnds2 sha256msg1 sha256msg2 hint_nop0 hint_nop1 hint_nop2 hint_nop3 hint_nop4 hint_nop5 hint_nop6 hint_nop7 hint_nop8 hint_nop9 hint_nop10 hint_nop11 hint_nop12 hint_nop13 hint_nop14 hint_nop15 hint_nop16 hint_nop17 hint_nop18 hint_nop19 hint_nop20 hint_nop21 hint_nop22 hint_nop23 hint_nop24 hint_nop25 hint_nop26 hint_nop27 hint_nop28 hint_nop29 hint_nop30 hint_nop31 hint_nop32 hint_nop33 hint_nop34 hint_nop35 hint_nop36 hint_nop37 hint_nop38 hint_nop39 hint_nop40 hint_nop41 hint_nop42 hint_nop43 hint_nop44 hint_nop45 hint_nop46 hint_nop47 hint_nop48 hint_nop49 hint_nop50 hint_nop51 hint_nop52 hint_nop53 hint_nop54 hint_nop55 hint_nop56 hint_nop57 hint_nop58 hint_nop59 hint_nop60 hint_nop61 hint_nop62 hint_nop63\",built_in:\"ip eip rip al ah bl bh cl ch dl dh sil dil bpl spl r8b r9b r10b r11b r12b r13b r14b r15b ax bx cx dx si di bp sp r8w r9w r10w r11w r12w r13w r14w r15w eax ebx ecx edx esi edi ebp esp eip r8d r9d r10d r11d r12d r13d r14d r15d rax rbx rcx rdx rsi rdi rbp rsp r8 r9 r10 r11 r12 r13 r14 r15 cs ds es fs gs ss st st0 st1 st2 st3 st4 st5 st6 st7 mm0 mm1 mm2 mm3 mm4 mm5 mm6 mm7 xmm0  xmm1  xmm2  xmm3  xmm4  xmm5  xmm6  xmm7  xmm8  xmm9 xmm10  xmm11 xmm12 xmm13 xmm14 xmm15 xmm16 xmm17 xmm18 xmm19 xmm20 xmm21 xmm22 xmm23 xmm24 xmm25 xmm26 xmm27 xmm28 xmm29 xmm30 xmm31 ymm0  ymm1  ymm2  ymm3  ymm4  ymm5  ymm6  ymm7  ymm8  ymm9 ymm10  ymm11 ymm12 ymm13 ymm14 ymm15 ymm16 ymm17 ymm18 ymm19 ymm20 ymm21 ymm22 ymm23 ymm24 ymm25 ymm26 ymm27 ymm28 ymm29 ymm30 ymm31 zmm0  zmm1  zmm2  zmm3  zmm4  zmm5  zmm6  zmm7  zmm8  zmm9 zmm10  zmm11 zmm12 zmm13 zmm14 zmm15 zmm16 zmm17 zmm18 zmm19 zmm20 zmm21 zmm22 zmm23 zmm24 zmm25 zmm26 zmm27 zmm28 zmm29 zmm30 zmm31 k0 k1 k2 k3 k4 k5 k6 k7 bnd0 bnd1 bnd2 bnd3 cr0 cr1 cr2 cr3 cr4 cr8 dr0 dr1 dr2 dr3 dr8 tr3 tr4 tr5 tr6 tr7 r0 r1 r2 r3 r4 r5 r6 r7 r0b r1b r2b r3b r4b r5b r6b r7b r0w r1w r2w r3w r4w r5w r6w r7w r0d r1d r2d r3d r4d r5d r6d r7d r0h r1h r2h r3h r0l r1l r2l r3l r4l r5l r6l r7l r8l r9l r10l r11l r12l r13l r14l r15l db dw dd dq dt ddq do dy dz resb resw resd resq rest resdq reso resy resz incbin equ times byte word dword qword nosplit rel abs seg wrt strict near far a32 ptr\",meta:\"%define %xdefine %+ %undef %defstr %deftok %assign %strcat %strlen %substr %rotate %elif %else %endif %if %ifmacro %ifctx %ifidn %ifidni %ifid %ifnum %ifstr %iftoken %ifempty %ifenv %error %warning %fatal %rep %endrep %include %push %pop %repl %pathsearch %depend %use %arg %stacksize %local %line %comment %endcomment .nolist __FILE__ __LINE__ __SECT__  __BITS__ __OUTPUT_FORMAT__ __DATE__ __TIME__ __DATE_NUM__ __TIME_NUM__ __UTC_DATE__ __UTC_TIME__ __UTC_DATE_NUM__ __UTC_TIME_NUM__  __PASS__ struc endstruc istruc at iend align alignb sectalign daz nodaz up down zero default option assume public bits use16 use32 use64 default section segment absolute extern global common cpu float __utf16__ __utf16le__ __utf16be__ __utf32__ __utf32le__ __utf32be__ __float8__ __float16__ __float32__ __float64__ __float80m__ __float80e__ __float128l__ __float128h__ __Infinity__ __QNaN__ __SNaN__ Inf NaN QNaN SNaN float8 float16 float32 float64 float80m float80e float128l float128h __FLOAT_DAZ__ __FLOAT_ROUND__ __FLOAT__\"},c:[s.C(\";\",\"$\",{relevance:0}),{cN:\"number\",v:[{b:\"\\\\b(?:([0-9][0-9_]*)?\\\\.[0-9_]*(?:[eE][+-]?[0-9_]+)?|(0[Xx])?[0-9][0-9_]*\\\\.?[0-9_]*(?:[pP](?:[+-]?[0-9_]+)?)?)\\\\b\",relevance:0},{b:\"\\\\$[0-9][0-9A-Fa-f]*\",relevance:0},{b:\"\\\\b(?:[0-9A-Fa-f][0-9A-Fa-f_]*[Hh]|[0-9][0-9_]*[DdTt]?|[0-7][0-7_]*[QqOo]|[0-1][0-1_]*[BbYy])\\\\b\"},{b:\"\\\\b(?:0[Xx][0-9A-Fa-f_]+|0[DdTt][0-9_]+|0[QqOo][0-7_]+|0[BbYy][0-1_]+)\\\\b\"}]},s.QSM,{cN:\"string\",v:[{b:\"'\",e:\"[^\\\\\\\\]'\"},{b:\"`\",e:\"[^\\\\\\\\]`\"}],relevance:0},{cN:\"symbol\",v:[{b:\"^\\\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\\\s+label)\"},{b:\"^\\\\s*%%[A-Za-z0-9_$#@~.?]*:\"}],relevance:0},{cN:\"subst\",b:\"%[0-9]+\",relevance:0},{cN:\"subst\",b:\"%!S+\",relevance:0},{cN:\"meta\",b:/^\\s*\\.[\\w_-]+/}]}});hljs.registerLanguage(\"cpp\",function(e){function t(e){return\"(?:\"+e+\")?\"}var r=\"decltype\\\\(auto\\\\)\",a=\"[a-zA-Z_]\\\\w*::\",i=\"(\"+r+\"|\"+t(a)+\"[a-zA-Z_]\\\\w*\"+t(\"<.*?>\")+\")\",c={cN:\"keyword\",b:\"\\\\b[a-z\\\\d_]*_t\\\\b\"},s={cN:\"string\",v:[{b:'(u8?|U|L)?\"',e:'\"',i:\"\\\\n\",c:[e.BE]},{b:\"(u8?|U|L)?'(\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\\\S)|.)\",e:\"'\",i:\".\"},{b:/(?:u8?|U|L)?R\"([^()\\\\ ]{0,16})\\((?:.|\\n)*?\\)\\1\"/}]},n={cN:\"number\",v:[{b:\"\\\\b(0b[01']+)\"},{b:\"(-?)\\\\b([\\\\d']+(\\\\.[\\\\d']*)?|\\\\.[\\\\d']+)(u|U|l|L|ul|UL|f|F|b|B)\"},{b:\"(-?)(\\\\b0[xX][a-fA-F0-9']+|(\\\\b[\\\\d']+(\\\\.[\\\\d']*)?|\\\\.[\\\\d']+)([eE][-+]?[\\\\d']+)?)\"}],relevance:0},o={cN:\"meta\",b:/#\\s*[a-z]+\\b/,e:/$/,k:{\"meta-keyword\":\"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include\"},c:[{b:/\\\\\\n/,relevance:0},e.inherit(s,{cN:\"meta-string\"}),{cN:\"meta-string\",b:/<.*?>/,e:/$/,i:\"\\\\n\"},e.CLCM,e.CBCM]},l={cN:\"title\",b:t(a)+e.IR,relevance:0},u=t(a)+e.IR+\"\\\\s*\\\\(\",p={keyword:\"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_tshort reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq\",built_in:\"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary\",literal:\"true false nullptr NULL\"},m=[c,e.CLCM,e.CBCM,n,s],d={v:[{b:/=/,e:/;/},{b:/\\(/,e:/\\)/},{bK:\"new throw return else\",e:/;/}],k:p,c:m.concat([{b:/\\(/,e:/\\)/,k:p,c:m.concat([\"self\"]),relevance:0}]),relevance:0},b={cN:\"function\",b:\"(\"+i+\"[\\\\*&\\\\s]+)+\"+u,rB:!0,e:/[{;=]/,eE:!0,k:p,i:/[^\\w\\s\\*&:<>]/,c:[{b:r,k:p,relevance:0},{b:u,rB:!0,c:[l],relevance:0},{cN:\"params\",b:/\\(/,e:/\\)/,k:p,relevance:0,c:[e.CLCM,e.CBCM,s,n,c,{b:/\\(/,e:/\\)/,k:p,relevance:0,c:[\"self\",e.CLCM,e.CBCM,s,n,c]}]},c,e.CLCM,e.CBCM,o]};return{aliases:[\"c\",\"cc\",\"h\",\"c++\",\"h++\",\"hpp\",\"hh\",\"hxx\",\"cxx\"],k:p,i:\"</\",c:[].concat(d,b,m,[o,{b:\"\\\\b(deque|list|queue|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\\\s*<\",e:\">\",k:p,c:[\"self\",c]},{b:e.IR+\"::\",k:p},{cN:\"class\",bK:\"class struct\",e:/[{;:]/,c:[{b:/</,e:/>/,c:[\"self\"]},e.TM]}]),exports:{preprocessor:o,strings:s,k:p}}});hljs.registerLanguage(\"arduino\",function(e){var t=\"boolean byte word String\",r=\"setup loopKeyboardController MouseController SoftwareSerial EthernetServer EthernetClient LiquidCrystal RobotControl GSMVoiceCall EthernetUDP EsploraTFT HttpClient RobotMotor WiFiClient GSMScanner FileSystem Scheduler GSMServer YunClient YunServer IPAddress GSMClient GSMModem Keyboard Ethernet Console GSMBand Esplora Stepper Process WiFiUDP GSM_SMS Mailbox USBHost Firmata PImage Client Server GSMPIN FileIO Bridge Serial EEPROM Stream Mouse Audio Servo File Task GPRS WiFi Wire TFT GSM SPI SD runShellCommandAsynchronously analogWriteResolution retrieveCallingNumber printFirmwareVersion analogReadResolution sendDigitalPortPair noListenOnLocalhost readJoystickButton setFirmwareVersion readJoystickSwitch scrollDisplayRight getVoiceCallStatus scrollDisplayLeft writeMicroseconds delayMicroseconds beginTransmission getSignalStrength runAsynchronously getAsynchronously listenOnLocalhost getCurrentCarrier readAccelerometer messageAvailable sendDigitalPorts lineFollowConfig countryNameWrite runShellCommand readStringUntil rewindDirectory readTemperature setClockDivider readLightSensor endTransmission analogReference detachInterrupt countryNameRead attachInterrupt encryptionType readBytesUntil robotNameWrite readMicrophone robotNameRead cityNameWrite userNameWrite readJoystickY readJoystickX mouseReleased openNextFile scanNetworks noInterrupts digitalWrite beginSpeaker mousePressed isActionDone mouseDragged displayLogos noAutoscroll addParameter remoteNumber getModifiers keyboardRead userNameRead waitContinue processInput parseCommand printVersion readNetworks writeMessage blinkVersion cityNameRead readMessage setDataMode parsePacket isListening setBitOrder beginPacket isDirectory motorsWrite drawCompass digitalRead clearScreen serialEvent rightToLeft setTextSize leftToRight requestFrom keyReleased compassRead analogWrite interrupts WiFiServer disconnect playMelody parseFloat autoscroll getPINUsed setPINUsed setTimeout sendAnalog readSlider analogRead beginWrite createChar motorsStop keyPressed tempoWrite readButton subnetMask debugPrint macAddress writeGreen randomSeed attachGPRS readString sendString remotePort releaseAll mouseMoved background getXChange getYChange answerCall getResult voiceCall endPacket constrain getSocket writeJSON getButton available connected findUntil readBytes exitValue readGreen writeBlue startLoop IPAddress isPressed sendSysex pauseMode gatewayIP setCursor getOemKey tuneWrite noDisplay loadImage switchPIN onRequest onReceive changePIN playFile noBuffer parseInt overflow checkPIN knobRead beginTFT bitClear updateIR bitWrite position writeRGB highByte writeRed setSpeed readBlue noStroke remoteIP transfer shutdown hangCall beginSMS endWrite attached maintain noCursor checkReg checkPUK shiftOut isValid shiftIn pulseIn connect println localIP pinMode getIMEI display noBlink process getBand running beginSD drawBMP lowByte setBand release bitRead prepare pointTo readRed setMode noFill remove listen stroke detach attach noTone exists buffer height bitSet circle config cursor random IRread setDNS endSMS getKey micros millis begin print write ready flush width isPIN blink clear press mkdir rmdir close point yield image BSSID click delay read text move peek beep rect line open seek fill size turn stop home find step tone sqrt RSSI SSID end bit tan cos sin pow map abs max min get run put\",i=\"DIGITAL_MESSAGE FIRMATA_STRING ANALOG_MESSAGE REPORT_DIGITAL REPORT_ANALOG INPUT_PULLUP SET_PIN_MODE INTERNAL2V56 SYSTEM_RESET LED_BUILTIN INTERNAL1V1 SYSEX_START INTERNAL EXTERNAL DEFAULT OUTPUT INPUT HIGH LOW\",o=e.requireLanguage(\"cpp\").rawDefinition(),a=o.k;return a.keyword+=\" \"+t,a.literal+=\" \"+i,a.built_in+=\" \"+r,o});hljs.registerLanguage(\"nginx\",function(e){var r={cN:\"variable\",v:[{b:/\\$\\d+/},{b:/\\$\\{/,e:/}/},{b:\"[\\\\$\\\\@]\"+e.UIR}]},b={eW:!0,l:\"[a-z/_]+\",k:{literal:\"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll\"},relevance:0,i:\"=>\",c:[e.HCM,{cN:\"string\",c:[e.BE,r],v:[{b:/\"/,e:/\"/},{b:/'/,e:/'/}]},{b:\"([a-z]+):/\",e:\"\\\\s\",eW:!0,eE:!0,c:[r]},{cN:\"regexp\",c:[e.BE,r],v:[{b:\"\\\\s\\\\^\",e:\"\\\\s|{|;\",rE:!0},{b:\"~\\\\*?\\\\s+\",e:\"\\\\s|{|;\",rE:!0},{b:\"\\\\*(\\\\.[a-z\\\\-]+)+\"},{b:\"([a-z\\\\-]+\\\\.)+\\\\*\"}]},{cN:\"number\",b:\"\\\\b\\\\d{1,3}\\\\.\\\\d{1,3}\\\\.\\\\d{1,3}\\\\.\\\\d{1,3}(:\\\\d{1,5})?\\\\b\"},{cN:\"number\",b:\"\\\\b\\\\d+[kKmMgGdshdwy]*\\\\b\",relevance:0},r]};return{aliases:[\"nginxconf\"],c:[e.HCM,{b:e.UIR+\"\\\\s+{\",rB:!0,e:\"{\",c:[{cN:\"section\",b:e.UIR}],relevance:0},{b:e.UIR+\"\\\\s\",e:\";|{\",rB:!0,c:[{cN:\"attribute\",b:e.UIR,starts:b}],relevance:0}],i:\"[^\\\\s\\\\}]\"}});hljs.registerLanguage(\"xml\",function(e){var c={cN:\"symbol\",b:\"&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;\"},s={b:\"\\\\s\",c:[{cN:\"meta-keyword\",b:\"#?[a-z_][a-z1-9_-]+\",i:\"\\\\n\"}]},a=e.inherit(s,{b:\"\\\\(\",e:\"\\\\)\"}),t=e.inherit(e.ASM,{cN:\"meta-string\"}),l=e.inherit(e.QSM,{cN:\"meta-string\"}),r={eW:!0,i:/</,relevance:0,c:[{cN:\"attr\",b:\"[A-Za-z0-9\\\\._:-]+\",relevance:0},{b:/=\\s*/,relevance:0,c:[{cN:\"string\",endsParent:!0,v:[{b:/\"/,e:/\"/,c:[c]},{b:/'/,e:/'/,c:[c]},{b:/[^\\s\"'=<>`]+/}]}]}]};return{aliases:[\"html\",\"xhtml\",\"rss\",\"atom\",\"xjb\",\"xsd\",\"xsl\",\"plist\",\"wsf\",\"svg\"],cI:!0,c:[{cN:\"meta\",b:\"<![a-z]\",e:\">\",relevance:10,c:[s,l,t,a,{b:\"\\\\[\",e:\"\\\\]\",c:[{cN:\"meta\",b:\"<![a-z]\",e:\">\",c:[s,a,l,t]}]}]},e.C(\"\\x3c!--\",\"--\\x3e\",{relevance:10}),{b:\"<\\\\!\\\\[CDATA\\\\[\",e:\"\\\\]\\\\]>\",relevance:10},c,{cN:\"meta\",b:/<\\?xml/,e:/\\?>/,relevance:10},{b:/<\\?(php)?/,e:/\\?>/,sL:\"php\",c:[{b:\"/\\\\*\",e:\"\\\\*/\",skip:!0},{b:'b\"',e:'\"',skip:!0},{b:\"b'\",e:\"'\",skip:!0},e.inherit(e.ASM,{i:null,cN:null,c:null,skip:!0}),e.inherit(e.QSM,{i:null,cN:null,c:null,skip:!0})]},{cN:\"tag\",b:\"<style(?=\\\\s|>)\",e:\">\",k:{name:\"style\"},c:[r],starts:{e:\"</style>\",rE:!0,sL:[\"css\",\"xml\"]}},{cN:\"tag\",b:\"<script(?=\\\\s|>)\",e:\">\",k:{name:\"script\"},c:[r],starts:{e:\"<\\/script>\",rE:!0,sL:[\"actionscript\",\"javascript\",\"handlebars\",\"xml\"]}},{cN:\"tag\",b:\"</?\",e:\"/?>\",c:[{cN:\"name\",b:/[^\\/><\\s]+/,relevance:0},r]}]}});hljs.registerLanguage(\"markdown\",function(e){return{aliases:[\"md\",\"mkdown\",\"mkd\"],c:[{cN:\"section\",v:[{b:\"^#{1,6}\",e:\"$\"},{b:\"^.+?\\\\n[=-]{2,}$\"}]},{b:\"<\",e:\">\",sL:\"xml\",relevance:0},{cN:\"bullet\",b:\"^\\\\s*([*+-]|(\\\\d+\\\\.))\\\\s+\"},{cN:\"strong\",b:\"[*_]{2}.+?[*_]{2}\"},{cN:\"emphasis\",v:[{b:\"\\\\*.+?\\\\*\"},{b:\"_.+?_\",relevance:0}]},{cN:\"quote\",b:\"^>\\\\s+\",e:\"$\"},{cN:\"code\",v:[{b:\"^```\\\\w*\\\\s*$\",e:\"^```[ ]*$\"},{b:\"`.+?`\"},{b:\"^( {4}|\\\\t)\",e:\"$\",relevance:0}]},{b:\"^[-\\\\*]{3,}\",e:\"$\"},{b:\"\\\\[.+?\\\\][\\\\(\\\\[].*?[\\\\)\\\\]]\",rB:!0,c:[{cN:\"string\",b:\"\\\\[\",e:\"\\\\]\",eB:!0,rE:!0,relevance:0},{cN:\"link\",b:\"\\\\]\\\\(\",e:\"\\\\)\",eB:!0,eE:!0},{cN:\"symbol\",b:\"\\\\]\\\\[\",e:\"\\\\]\",eB:!0,eE:!0}],relevance:10},{b:/^\\[[^\\n]+\\]:/,rB:!0,c:[{cN:\"symbol\",b:/\\[/,e:/\\]/,eB:!0,eE:!0},{cN:\"link\",b:/:\\s*/,e:/$/,eB:!0}]}]}});hljs.registerLanguage(\"properties\",function(e){var r=\"[ \\\\t\\\\f]*\",t=\"(\"+r+\"[:=]\"+r+\"|[ \\\\t\\\\f]+)\",n=\"([^\\\\\\\\\\\\W:= \\\\t\\\\f\\\\n]|\\\\\\\\.)+\",a=\"([^\\\\\\\\:= \\\\t\\\\f\\\\n]|\\\\\\\\.)+\",c={e:t,relevance:0,starts:{cN:\"string\",e:/$/,relevance:0,c:[{b:\"\\\\\\\\\\\\n\"}]}};return{cI:!0,i:/\\S/,c:[e.C(\"^\\\\s*[!#]\",\"$\"),{b:n+t,rB:!0,c:[{cN:\"attr\",b:n,endsParent:!0,relevance:0}],starts:c},{b:a+t,rB:!0,relevance:0,c:[{cN:\"meta\",b:a,endsParent:!0,relevance:0}],starts:c},{cN:\"attr\",relevance:0,b:a+r+\"$\"}]}});hljs.registerLanguage(\"bash\",function(e){var t={cN:\"variable\",v:[{b:/\\$[\\w\\d#@][\\w\\d_]*/},{b:/\\$\\{(.*?)}/}]},a={cN:\"string\",b:/\"/,e:/\"/,c:[e.BE,t,{cN:\"variable\",b:/\\$\\(/,e:/\\)/,c:[e.BE]}]};return{aliases:[\"sh\",\"zsh\"],l:/\\b-?[a-z\\._]+\\b/,k:{keyword:\"if then else elif fi for while in do done case esac function\",literal:\"true false\",built_in:\"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp\",_:\"-ne -eq -lt -gt -f -d -e -s -l -a\"},c:[{cN:\"meta\",b:/^#![^\\n]+sh\\s*$/,relevance:10},{cN:\"function\",b:/\\w[\\w\\d_]*\\s*\\(\\s*\\)\\s*\\{/,rB:!0,c:[e.inherit(e.TM,{b:/\\w[\\w\\d_]*/})],relevance:0},e.HCM,a,{cN:\"\",b:/\\\\\"/},{cN:\"string\",b:/'/,e:/'/},t]}});hljs.registerLanguage(\"dockerfile\",function(e){return{aliases:[\"docker\"],cI:!0,k:\"from maintainer expose env arg user onbuild stopsignal\",c:[e.HCM,e.ASM,e.QSM,e.NM,{bK:\"run cmd entrypoint volume add copy workdir label healthcheck shell\",starts:{e:/[^\\\\]$/,sL:\"bash\"}}],i:\"</\"}});hljs.registerLanguage(\"python\",function(e){var r={keyword:\"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda async await nonlocal|10\",built_in:\"Ellipsis NotImplemented\",literal:\"False None True\"},b={cN:\"meta\",b:/^(>>>|\\.\\.\\.) /},c={cN:\"subst\",b:/\\{/,e:/\\}/,k:r,i:/#/},a={b:/\\{\\{/,relevance:0},l={cN:\"string\",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[e.BE,b],relevance:10},{b:/(u|b)?r?\"\"\"/,e:/\"\"\"/,c:[e.BE,b],relevance:10},{b:/(fr|rf|f)'''/,e:/'''/,c:[e.BE,b,a,c]},{b:/(fr|rf|f)\"\"\"/,e:/\"\"\"/,c:[e.BE,b,a,c]},{b:/(u|r|ur)'/,e:/'/,relevance:10},{b:/(u|r|ur)\"/,e:/\"/,relevance:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)\"/,e:/\"/},{b:/(fr|rf|f)'/,e:/'/,c:[e.BE,a,c]},{b:/(fr|rf|f)\"/,e:/\"/,c:[e.BE,a,c]},e.ASM,e.QSM]},n={cN:\"number\",relevance:0,v:[{b:e.BNR+\"[lLjJ]?\"},{b:\"\\\\b(0o[0-7]+)[lLjJ]?\"},{b:e.CNR+\"[lLjJ]?\"}]},i={cN:\"params\",b:/\\(/,e:/\\)/,c:[\"self\",b,n,l,e.HCM]};return c.c=[l,n,b],{aliases:[\"py\",\"gyp\",\"ipython\"],k:r,i:/(<\\/|->|\\?)|=>/,c:[b,n,{bK:\"if\",relevance:0},l,e.HCM,{v:[{cN:\"function\",bK:\"def\"},{cN:\"class\",bK:\"class\"}],e:/:/,i:/[${=;\\n,]/,c:[e.UTM,i,{b:/->/,eW:!0,k:\"None\"}]},{cN:\"meta\",b:/^[\\t ]*@/,e:/$/},{b:/\\b(print|exec)\\(/}]}});hljs.registerLanguage(\"ini\",function(e){var b={cN:\"number\",relevance:0,v:[{b:/([\\+\\-]+)?[\\d]+_[\\d_]+/},{b:e.NR}]},a=e.C();a.v=[{b:/;/,e:/$/},{b:/#/,e:/$/}];var c={cN:\"variable\",v:[{b:/\\$[\\w\\d\"][\\w\\d_]*/},{b:/\\$\\{(.*?)}/}]},r={cN:\"literal\",b:/\\bon|off|true|false|yes|no\\b/},n={cN:\"string\",c:[e.BE],v:[{b:\"'''\",e:\"'''\",relevance:10},{b:'\"\"\"',e:'\"\"\"',relevance:10},{b:'\"',e:'\"'},{b:\"'\",e:\"'\"}]};return{aliases:[\"toml\"],cI:!0,i:/\\S/,c:[a,{cN:\"section\",b:/\\[+/,e:/\\]+/},{b:/^[a-z0-9\\[\\]_\\.-]+(?=\\s*=\\s*)/,cN:\"attr\",starts:{e:/$/,c:[a,{b:/\\[/,e:/\\]/,c:[a,r,c,n,b,\"self\"],relevance:0},r,c,n,b]}}]}});hljs.registerLanguage(\"diff\",function(e){return{aliases:[\"patch\"],c:[{cN:\"meta\",relevance:10,v:[{b:/^@@ +\\-\\d+,\\d+ +\\+\\d+,\\d+ +@@$/},{b:/^\\*\\*\\* +\\d+,\\d+ +\\*\\*\\*\\*$/},{b:/^\\-\\-\\- +\\d+,\\d+ +\\-\\-\\-\\-$/}]},{cN:\"comment\",v:[{b:/Index: /,e:/$/},{b:/={3,}/,e:/$/},{b:/^\\-{3}/,e:/$/},{b:/^\\*{3} /,e:/$/},{b:/^\\+{3}/,e:/$/},{b:/^\\*{15}$/}]},{cN:\"addition\",b:\"^\\\\+\",e:\"$\"},{cN:\"deletion\",b:\"^\\\\-\",e:\"$\"},{cN:\"addition\",b:\"^\\\\!\",e:\"$\"}]}});hljs.registerLanguage(\"http\",function(e){var t=\"HTTP/[0-9\\\\.]+\";return{aliases:[\"https\"],i:\"\\\\S\",c:[{b:\"^\"+t,e:\"$\",c:[{cN:\"number\",b:\"\\\\b\\\\d{3}\\\\b\"}]},{b:\"^[A-Z]+ (.*?) \"+t+\"$\",rB:!0,e:\"$\",c:[{cN:\"string\",b:\" \",e:\" \",eB:!0,eE:!0},{b:t},{cN:\"keyword\",b:\"[A-Z]+\"}]},{cN:\"attribute\",b:\"^\\\\w\",e:\": \",eE:!0,i:\"\\\\n|\\\\s|=\",starts:{e:\"$\",relevance:0}},{b:\"\\\\n\\\\n\",starts:{sL:[],eW:!0}}]}});hljs.registerLanguage(\"sql\",function(e){var t=e.C(\"--\",\"$\");return{cI:!0,i:/[<>{}*]/,c:[{bK:\"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment values with\",e:/;/,eW:!0,l:/[\\w\\.]+/,k:{keyword:\"as abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias all allocate allow alter always analyze ancillary and anti any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound bucket buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain explode export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force foreign form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour hours http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lateral lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minutes minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notnull notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second seconds section securefile security seed segment select self semi sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tablesample tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unnest unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace window with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek\",literal:\"true false null unknown\",built_in:\"array bigint binary bit blob bool boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text time timestamp tinyint varchar varchar2 varying void\"},c:[{cN:\"string\",b:\"'\",e:\"'\",c:[{b:\"''\"}]},{cN:\"string\",b:'\"',e:'\"',c:[{b:'\"\"'}]},{cN:\"string\",b:\"`\",e:\"`\"},e.CNM,e.CBCM,t,e.HCM]},e.CBCM,t,e.HCM]}});hljs.registerLanguage(\"vala\",function(e){return{k:{keyword:\"char uchar unichar int uint long ulong short ushort int8 int16 int32 int64 uint8 uint16 uint32 uint64 float double bool struct enum string void weak unowned owned async signal static abstract interface override virtual delegate if while do for foreach else switch case break default return try catch public private protected internal using new this get set const stdout stdin stderr var\",built_in:\"DBus GLib CCode Gee Object Gtk Posix\",literal:\"false true null\"},c:[{cN:\"class\",bK:\"class interface namespace\",e:\"{\",eE:!0,i:\"[^,:\\\\n\\\\s\\\\.]\",c:[e.UTM]},e.CLCM,e.CBCM,{cN:\"string\",b:'\"\"\"',e:'\"\"\"',relevance:5},e.ASM,e.QSM,e.CNM,{cN:\"meta\",b:\"^#\",e:\"$\",relevance:2}]}});hljs.registerLanguage(\"asciidoc\",function(e){return{aliases:[\"adoc\"],c:[e.C(\"^/{4,}\\\\n\",\"\\\\n/{4,}$\",{relevance:10}),e.C(\"^//\",\"$\",{relevance:0}),{cN:\"title\",b:\"^\\\\.\\\\w.*$\"},{b:\"^[=\\\\*]{4,}\\\\n\",e:\"\\\\n^[=\\\\*]{4,}$\",relevance:10},{cN:\"section\",relevance:10,v:[{b:\"^(={1,5}) .+?( \\\\1)?$\"},{b:\"^[^\\\\[\\\\]\\\\n]+?\\\\n[=\\\\-~\\\\^\\\\+]{2,}$\"}]},{cN:\"meta\",b:\"^:.+?:\",e:\"\\\\s\",eE:!0,relevance:10},{cN:\"meta\",b:\"^\\\\[.+?\\\\]$\",relevance:0},{cN:\"quote\",b:\"^_{4,}\\\\n\",e:\"\\\\n_{4,}$\",relevance:10},{cN:\"code\",b:\"^[\\\\-\\\\.]{4,}\\\\n\",e:\"\\\\n[\\\\-\\\\.]{4,}$\",relevance:10},{b:\"^\\\\+{4,}\\\\n\",e:\"\\\\n\\\\+{4,}$\",c:[{b:\"<\",e:\">\",sL:\"xml\",relevance:0}],relevance:10},{cN:\"bullet\",b:\"^(\\\\*+|\\\\-+|\\\\.+|[^\\\\n]+?::)\\\\s+\"},{cN:\"symbol\",b:\"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\\\s+\",relevance:10},{cN:\"strong\",b:\"\\\\B\\\\*(?![\\\\*\\\\s])\",e:\"(\\\\n{2}|\\\\*)\",c:[{b:\"\\\\\\\\*\\\\w\",relevance:0}]},{cN:\"emphasis\",b:\"\\\\B'(?!['\\\\s])\",e:\"(\\\\n{2}|')\",c:[{b:\"\\\\\\\\'\\\\w\",relevance:0}],relevance:0},{cN:\"emphasis\",b:\"_(?![_\\\\s])\",e:\"(\\\\n{2}|_)\",relevance:0},{cN:\"string\",v:[{b:\"``.+?''\"},{b:\"`.+?'\"}]},{cN:\"code\",b:\"(`.+?`|\\\\+.+?\\\\+)\",relevance:0},{cN:\"code\",b:\"^[ \\\\t]\",e:\"$\",relevance:0},{b:\"^'{3,}[ \\\\t]*$\",relevance:10},{b:\"(link:)?(http|https|ftp|file|irc|image:?):\\\\S+\\\\[.*?\\\\]\",rB:!0,c:[{b:\"(link|image:?):\",relevance:0},{cN:\"link\",b:\"\\\\w\",e:\"[^\\\\[]+\",relevance:0},{cN:\"string\",b:\"\\\\[\",e:\"\\\\]\",eB:!0,eE:!0,relevance:0}],relevance:10}]}});hljs.registerLanguage(\"json\",function(e){var i={literal:\"true false null\"},n=[e.CLCM,e.CBCM],c=[e.QSM,e.CNM],r={e:\",\",eW:!0,eE:!0,c:c,k:i},t={b:\"{\",e:\"}\",c:[{cN:\"attr\",b:/\"/,e:/\"/,c:[e.BE],i:\"\\\\n\"},e.inherit(r,{b:/:/})].concat(n),i:\"\\\\S\"},a={b:\"\\\\[\",e:\"\\\\]\",c:[e.inherit(r)],i:\"\\\\S\"};return c.push(t,a),n.forEach(function(e){c.push(e)}),{c:c,k:i,i:\"\\\\S\"}});hljs.registerLanguage(\"rust\",function(e){var t=\"([ui](8|16|32|64|128|size)|f(32|64))?\",r=\"drop i8 i16 i32 i64 i128 isize u8 u16 u32 u64 u128 usize f32 f64 str char bool Box Option Result String Vec Copy Send Sized Sync Drop Fn FnMut FnOnce ToOwned Clone Debug PartialEq PartialOrd Eq Ord AsRef AsMut Into From Default Iterator Extend IntoIterator DoubleEndedIterator ExactSizeIterator SliceConcatExt ToString assert! assert_eq! bitflags! bytes! cfg! col! concat! concat_idents! debug_assert! debug_assert_eq! env! panic! file! format! format_args! include_bin! include_str! line! local_data_key! module_path! option_env! print! println! select! stringify! try! unimplemented! unreachable! vec! write! writeln! macro_rules! assert_ne! debug_assert_ne!\";return{aliases:[\"rs\"],k:{keyword:\"abstract as async await become box break const continue crate do dyn else enum extern false final fn for if impl in let loop macro match mod move mut override priv pub ref return self Self static struct super trait true try type typeof unsafe unsized use virtual where while yield\",literal:\"true false Some None Ok Err\",built_in:r},l:e.IR+\"!?\",i:\"</\",c:[e.CLCM,e.C(\"/\\\\*\",\"\\\\*/\",{c:[\"self\"]}),e.inherit(e.QSM,{b:/b?\"/,i:null}),{cN:\"string\",v:[{b:/r(#*)\"(.|\\n)*?\"\\1(?!#)/},{b:/b?'\\\\?(x\\w{2}|u\\w{4}|U\\w{8}|.)'/}]},{cN:\"symbol\",b:/'[a-zA-Z_][a-zA-Z0-9_]*/},{cN:\"number\",v:[{b:\"\\\\b0b([01_]+)\"+t},{b:\"\\\\b0o([0-7_]+)\"+t},{b:\"\\\\b0x([A-Fa-f0-9_]+)\"+t},{b:\"\\\\b(\\\\d[\\\\d_]*(\\\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)\"+t}],relevance:0},{cN:\"function\",bK:\"fn\",e:\"(\\\\(|<)\",eE:!0,c:[e.UTM]},{cN:\"meta\",b:\"#\\\\!?\\\\[\",e:\"\\\\]\",c:[{cN:\"meta-string\",b:/\"/,e:/\"/}]},{cN:\"class\",bK:\"type\",e:\";\",c:[e.inherit(e.UTM,{endsParent:!0})],i:\"\\\\S\"},{cN:\"class\",bK:\"trait enum struct union\",e:\"{\",c:[e.inherit(e.UTM,{endsParent:!0})],i:\"[\\\\w\\\\d]\"},{b:e.IR+\"::\",k:{built_in:r}},{b:\"->\"}]}});hljs.registerLanguage(\"awk\",function(e){return{k:{keyword:\"BEGIN END if else while do for in break continue delete next nextfile function func exit|10\"},c:[{cN:\"variable\",v:[{b:/\\$[\\w\\d#@][\\w\\d_]*/},{b:/\\$\\{(.*?)}/}]},{cN:\"string\",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,relevance:10},{b:/(u|b)?r?\"\"\"/,e:/\"\"\"/,relevance:10},{b:/(u|r|ur)'/,e:/'/,relevance:10},{b:/(u|r|ur)\"/,e:/\"/,relevance:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)\"/,e:/\"/},e.ASM,e.QSM]},e.RM,e.HCM,e.NM]}});hljs.registerLanguage(\"java\",function(e){var a=\"false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do\",t={cN:\"number\",b:\"\\\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\\\d]+[\\\\d_]+[\\\\d]+|[\\\\d]+)(\\\\.([\\\\d]+[\\\\d_]+[\\\\d]+|[\\\\d]+))?|\\\\.([\\\\d]+[\\\\d_]+[\\\\d]+|[\\\\d]+))([eE][-+]?\\\\d+)?)[lLfF]?\",relevance:0};return{aliases:[\"jsp\"],k:a,i:/<\\/|#/,c:[e.C(\"/\\\\*\\\\*\",\"\\\\*/\",{relevance:0,c:[{b:/\\w+@/,relevance:0},{cN:\"doctag\",b:\"@[A-Za-z]+\"}]}),e.CLCM,e.CBCM,e.ASM,e.QSM,{cN:\"class\",bK:\"class interface\",e:/[{;=]/,eE:!0,k:\"class interface\",i:/[:\"\\[\\]]/,c:[{bK:\"extends implements\"},e.UTM]},{bK:\"new throw return else\",relevance:0},{cN:\"function\",b:\"([À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(<[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(\\\\s*,\\\\s*[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*)*>)?\\\\s+)+\"+e.UIR+\"\\\\s*\\\\(\",rB:!0,e:/[{;=]/,eE:!0,k:a,c:[{b:e.UIR+\"\\\\s*\\\\(\",rB:!0,relevance:0,c:[e.UTM]},{cN:\"params\",b:/\\(/,e:/\\)/,k:a,relevance:0,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]},t,{cN:\"meta\",b:\"@[A-Za-z]+\"}]}});hljs.registerLanguage(\"cs\",function(e){var a={keyword:\"abstract as base bool break byte case catch char checked const continue decimal default delegate do double enum event explicit extern finally fixed float for foreach goto if implicit in int interface internal is lock long object operator out override params private protected public readonly ref sbyte sealed short sizeof stackalloc static string struct switch this try typeof uint ulong unchecked unsafe ushort using virtual void volatile while add alias ascending async await by descending dynamic equals from get global group into join let nameof on orderby partial remove select set value var when where yield\",literal:\"null false true\"},i={cN:\"number\",v:[{b:\"\\\\b(0b[01']+)\"},{b:\"(-?)\\\\b([\\\\d']+(\\\\.[\\\\d']*)?|\\\\.[\\\\d']+)(u|U|l|L|ul|UL|f|F|b|B)\"},{b:\"(-?)(\\\\b0[xX][a-fA-F0-9']+|(\\\\b[\\\\d']+(\\\\.[\\\\d']*)?|\\\\.[\\\\d']+)([eE][-+]?[\\\\d']+)?)\"}],relevance:0},c={cN:\"string\",b:'@\"',e:'\"',c:[{b:'\"\"'}]},r=e.inherit(c,{i:/\\n/}),n={cN:\"subst\",b:\"{\",e:\"}\",k:a},t=e.inherit(n,{i:/\\n/}),s={cN:\"string\",b:/\\$\"/,e:'\"',i:/\\n/,c:[{b:\"{{\"},{b:\"}}\"},e.BE,t]},l={cN:\"string\",b:/\\$@\"/,e:'\"',c:[{b:\"{{\"},{b:\"}}\"},{b:'\"\"'},n]},b=e.inherit(l,{i:/\\n/,c:[{b:\"{{\"},{b:\"}}\"},{b:'\"\"'},t]});n.c=[l,s,c,e.ASM,e.QSM,i,e.CBCM],t.c=[b,s,r,e.ASM,e.QSM,i,e.inherit(e.CBCM,{i:/\\n/})];var o={v:[l,s,c,e.ASM,e.QSM]},d=e.IR+\"(<\"+e.IR+\"(\\\\s*,\\\\s*\"+e.IR+\")*>)?(\\\\[\\\\])?\";return{aliases:[\"csharp\",\"c#\"],k:a,i:/::/,c:[e.C(\"///\",\"$\",{rB:!0,c:[{cN:\"doctag\",v:[{b:\"///\",relevance:0},{b:\"\\x3c!--|--\\x3e\"},{b:\"</?\",e:\">\"}]}]}),e.CLCM,e.CBCM,{cN:\"meta\",b:\"#\",e:\"$\",k:{\"meta-keyword\":\"if else elif endif define undef warning error line region endregion pragma checksum\"}},o,i,{bK:\"class interface\",e:/[{;=]/,i:/[^\\s:,]/,c:[e.TM,e.CLCM,e.CBCM]},{bK:\"namespace\",e:/[{;=]/,i:/[^\\s:]/,c:[e.inherit(e.TM,{b:\"[a-zA-Z](\\\\.?\\\\w)*\"}),e.CLCM,e.CBCM]},{cN:\"meta\",b:\"^\\\\s*\\\\[\",eB:!0,e:\"\\\\]\",eE:!0,c:[{cN:\"meta-string\",b:/\"/,e:/\"/}]},{bK:\"new return throw await else\",relevance:0},{cN:\"function\",b:\"(\"+d+\"\\\\s+)+\"+e.IR+\"\\\\s*\\\\(\",rB:!0,e:/\\s*[{;=]/,eE:!0,k:a,c:[{b:e.IR+\"\\\\s*\\\\(\",rB:!0,c:[e.TM],relevance:0},{cN:\"params\",b:/\\(/,e:/\\)/,eB:!0,eE:!0,k:a,relevance:0,c:[o,i,e.CBCM]},e.CLCM,e.CBCM]}]}});hljs.registerLanguage(\"mathematica\",function(e){return{aliases:[\"mma\",\"wl\"],l:\"(\\\\$|\\\\b)\"+e.IR+\"\\\\b\",k:\"AASTriangle AbelianGroup Abort AbortKernels AbortProtect AbortScheduledTask Above Abs AbsArg AbsArgPlot Absolute AbsoluteCorrelation AbsoluteCorrelationFunction AbsoluteCurrentValue AbsoluteDashing AbsoluteFileName AbsoluteOptions AbsolutePointSize AbsoluteThickness AbsoluteTime AbsoluteTiming AcceptanceThreshold AccountingForm Accumulate Accuracy AccuracyGoal ActionDelay ActionMenu ActionMenuBox ActionMenuBoxOptions Activate Active ActiveClassification ActiveClassificationObject ActiveItem ActivePrediction ActivePredictionObject ActiveStyle AcyclicGraphQ AddOnHelpPath AddSides AddTo AddToSearchIndex AddUsers AdjacencyGraph AdjacencyList AdjacencyMatrix AdjustmentBox AdjustmentBoxOptions AdjustTimeSeriesForecast AdministrativeDivisionData AffineHalfSpace AffineSpace AffineStateSpaceModel AffineTransform After AggregatedEntityClass AggregationLayer AircraftData AirportData AirPressureData AirTemperatureData AiryAi AiryAiPrime AiryAiZero AiryBi AiryBiPrime AiryBiZero AlgebraicIntegerQ AlgebraicNumber AlgebraicNumberDenominator AlgebraicNumberNorm AlgebraicNumberPolynomial AlgebraicNumberTrace AlgebraicRules AlgebraicRulesData Algebraics AlgebraicUnitQ Alignment AlignmentMarker AlignmentPoint All AllowAdultContent AllowedCloudExtraParameters AllowedCloudParameterExtensions AllowedDimensions AllowedFrequencyRange AllowedHeads AllowGroupClose AllowIncomplete AllowInlineCells AllowKernelInitialization AllowLooseGrammar AllowReverseGroupClose AllowScriptLevelChange AllTrue Alphabet AlphabeticOrder AlphabeticSort AlphaChannel AlternateImage AlternatingFactorial AlternatingGroup AlternativeHypothesis Alternatives AltitudeMethod AmbientLight AmbiguityFunction AmbiguityList Analytic AnatomyData AnatomyForm AnatomyPlot3D AnatomySkinStyle AnatomyStyling AnchoredSearch And AndersonDarlingTest AngerJ AngleBisector AngleBracket AnglePath AnglePath3D AngleVector AngularGauge Animate AnimationCycleOffset AnimationCycleRepetitions AnimationDirection AnimationDisplayTime AnimationRate AnimationRepetitions AnimationRunning AnimationRunTime AnimationTimeIndex Animator AnimatorBox AnimatorBoxOptions AnimatorElements Annotate Annotation AnnotationDelete AnnotationNames AnnotationRules AnnotationValue Annuity AnnuityDue Annulus AnomalyDetection AnomalyDetectorFunction Anonymous Antialiasing AntihermitianMatrixQ Antisymmetric AntisymmetricMatrixQ Antonyms AnyOrder AnySubset AnyTrue Apart ApartSquareFree APIFunction Appearance AppearanceElements AppearanceRules AppellF1 Append AppendCheck AppendLayer AppendTo ApplicationIdentificationKey Apply ApplySides ArcCos ArcCosh ArcCot ArcCoth ArcCsc ArcCsch ArcCurvature ARCHProcess ArcLength ArcSec ArcSech ArcSin ArcSinDistribution ArcSinh ArcTan ArcTanh Area Arg ArgMax ArgMin ArgumentCountQ ARIMAProcess ArithmeticGeometricMean ARMAProcess Around AroundReplace ARProcess Array ArrayComponents ArrayDepth ArrayFilter ArrayFlatten ArrayMesh ArrayPad ArrayPlot ArrayQ ArrayResample ArrayReshape ArrayRules Arrays Arrow Arrow3DBox ArrowBox Arrowheads ASATriangle Ask AskAppend AskConfirm AskDisplay AskedQ AskedValue AskFunction AskState AskTemplateDisplay AspectRatio AspectRatioFixed Assert AssociateTo Association AssociationFormat AssociationMap AssociationQ AssociationThread AssumeDeterministic Assuming Assumptions AstronomicalData AsymptoticDSolveValue AsymptoticEqual AsymptoticEquivalent AsymptoticGreater AsymptoticGreaterEqual AsymptoticIntegrate AsymptoticLess AsymptoticLessEqual AsymptoticOutputTracker AsymptoticRSolveValue AsymptoticSolve AsymptoticSum Asynchronous AsynchronousTaskObject AsynchronousTasks Atom AtomCoordinates AtomCount AtomDiagramCoordinates AtomList AtomQ AttentionLayer Attributes Audio AudioAmplify AudioAnnotate AudioAnnotationLookup AudioBlockMap AudioCapture AudioChannelAssignment AudioChannelCombine AudioChannelMix AudioChannels AudioChannelSeparate AudioData AudioDelay AudioDelete AudioDevice AudioDistance AudioFade AudioFrequencyShift AudioGenerator AudioIdentify AudioInputDevice AudioInsert AudioIntervals AudioJoin AudioLabel AudioLength AudioLocalMeasurements AudioLooping AudioLoudness AudioMeasurements AudioNormalize AudioOutputDevice AudioOverlay AudioPad AudioPan AudioPartition AudioPause AudioPitchShift AudioPlay AudioPlot AudioQ AudioRecord AudioReplace AudioResample AudioReverb AudioSampleRate AudioSpectralMap AudioSpectralTransformation AudioSplit AudioStop AudioStream AudioStreams AudioTimeStretch AudioTrim AudioType AugmentedPolyhedron AugmentedSymmetricPolynomial Authenticate Authentication AuthenticationDialog AutoAction Autocomplete AutocompletionFunction AutoCopy AutocorrelationTest AutoDelete AutoEvaluateEvents AutoGeneratedPackage AutoIndent AutoIndentSpacings AutoItalicWords AutoloadPath AutoMatch Automatic AutomaticImageSize AutoMultiplicationSymbol AutoNumberFormatting AutoOpenNotebooks AutoOpenPalettes AutoQuoteCharacters AutoRefreshed AutoRemove AutorunSequencing AutoScaling AutoScroll AutoSpacing AutoStyleOptions AutoStyleWords AutoSubmitting Axes AxesEdge AxesLabel AxesOrigin AxesStyle AxiomaticTheory AxisBabyMonsterGroupB Back Background BackgroundAppearance BackgroundTasksSettings Backslash Backsubstitution Backward Ball Band BandpassFilter BandstopFilter BarabasiAlbertGraphDistribution BarChart BarChart3D BarcodeImage BarcodeRecognize BaringhausHenzeTest BarLegend BarlowProschanImportance BarnesG BarOrigin BarSpacing BartlettHannWindow BartlettWindow BaseDecode BaseEncode BaseForm Baseline BaselinePosition BaseStyle BasicRecurrentLayer BatchNormalizationLayer BatchSize BatesDistribution BattleLemarieWavelet BayesianMaximization BayesianMaximizationObject BayesianMinimization BayesianMinimizationObject Because BeckmannDistribution Beep Before Begin BeginDialogPacket BeginFrontEndInteractionPacket BeginPackage BellB BellY Below BenfordDistribution BeniniDistribution BenktanderGibratDistribution BenktanderWeibullDistribution BernoulliB BernoulliDistribution BernoulliGraphDistribution BernoulliProcess BernsteinBasis BesselFilterModel BesselI BesselJ BesselJZero BesselK BesselY BesselYZero Beta BetaBinomialDistribution BetaDistribution BetaNegativeBinomialDistribution BetaPrimeDistribution BetaRegularized Between BetweennessCentrality BeveledPolyhedron BezierCurve BezierCurve3DBox BezierCurve3DBoxOptions BezierCurveBox BezierCurveBoxOptions BezierFunction BilateralFilter Binarize BinaryDeserialize BinaryDistance BinaryFormat BinaryImageQ BinaryRead BinaryReadList BinarySerialize BinaryWrite BinCounts BinLists Binomial BinomialDistribution BinomialProcess BinormalDistribution BiorthogonalSplineWavelet BipartiteGraphQ BiquadraticFilterModel BirnbaumImportance BirnbaumSaundersDistribution BitAnd BitClear BitGet BitLength BitNot BitOr BitSet BitShiftLeft BitShiftRight BitXor BiweightLocation BiweightMidvariance Black BlackmanHarrisWindow BlackmanNuttallWindow BlackmanWindow Blank BlankForm BlankNullSequence BlankSequence Blend Block BlockchainAddressData BlockchainBase BlockchainBlockData BlockchainContractValue BlockchainData BlockchainGet BlockchainKeyEncode BlockchainPut BlockchainTokenData BlockchainTransaction BlockchainTransactionData BlockchainTransactionSign BlockchainTransactionSubmit BlockMap BlockRandom BlomqvistBeta BlomqvistBetaTest Blue Blur BodePlot BohmanWindow Bold Bond BondCount BondList BondQ Bookmarks Boole BooleanConsecutiveFunction BooleanConvert BooleanCountingFunction BooleanFunction BooleanGraph BooleanMaxterms BooleanMinimize BooleanMinterms BooleanQ BooleanRegion Booleans BooleanStrings BooleanTable BooleanVariables BorderDimensions BorelTannerDistribution Bottom BottomHatTransform BoundaryDiscretizeGraphics BoundaryDiscretizeRegion BoundaryMesh BoundaryMeshRegion BoundaryMeshRegionQ BoundaryStyle BoundedRegionQ BoundingRegion Bounds Box BoxBaselineShift BoxData BoxDimensions Boxed Boxes BoxForm BoxFormFormatTypes BoxFrame BoxID BoxMargins BoxMatrix BoxObject BoxRatios BoxRotation BoxRotationPoint BoxStyle BoxWhiskerChart Bra BracketingBar BraKet BrayCurtisDistance BreadthFirstScan Break BridgeData BrightnessEqualize BroadcastStationData Brown BrownForsytheTest BrownianBridgeProcess BrowserCategory BSplineBasis BSplineCurve BSplineCurve3DBox BSplineCurve3DBoxOptions BSplineCurveBox BSplineCurveBoxOptions BSplineFunction BSplineSurface BSplineSurface3DBox BSplineSurface3DBoxOptions BubbleChart BubbleChart3D BubbleScale BubbleSizes BuildingData BulletGauge BusinessDayQ ButterflyGraph ButterworthFilterModel Button ButtonBar ButtonBox ButtonBoxOptions ButtonCell ButtonContents ButtonData ButtonEvaluator ButtonExpandable ButtonFrame ButtonFunction ButtonMargins ButtonMinHeight ButtonNote ButtonNotebook ButtonSource ButtonStyle ButtonStyleMenuListing Byte ByteArray ByteArrayFormat ByteArrayQ ByteArrayToString ByteCount ByteOrderingC CachedValue CacheGraphics CachePersistence CalendarConvert CalendarData CalendarType Callout CalloutMarker CalloutStyle CallPacket CanberraDistance Cancel CancelButton CandlestickChart CanonicalGraph CanonicalizePolygon CanonicalizePolyhedron CanonicalName CanonicalWarpingCorrespondence CanonicalWarpingDistance CantorMesh CantorStaircase Cap CapForm CapitalDifferentialD Capitalize CapsuleShape CaptureRunning CardinalBSplineBasis CarlemanLinearize CarmichaelLambda CaseOrdering Cases CaseSensitive Cashflow Casoratian Catalan CatalanNumber Catch Catenate CatenateLayer CauchyDistribution CauchyWindow CayleyGraph CDF CDFDeploy CDFInformation CDFWavelet Ceiling CelestialSystem Cell CellAutoOverwrite CellBaseline CellBoundingBox CellBracketOptions CellChangeTimes CellContents CellContext CellDingbat CellDynamicExpression CellEditDuplicate CellElementsBoundingBox CellElementSpacings CellEpilog CellEvaluationDuplicate CellEvaluationFunction CellEvaluationLanguage CellEventActions CellFrame CellFrameColor CellFrameLabelMargins CellFrameLabels CellFrameMargins CellGroup CellGroupData CellGrouping CellGroupingRules CellHorizontalScrolling CellID CellLabel CellLabelAutoDelete CellLabelMargins CellLabelPositioning CellLabelStyle CellLabelTemplate CellMargins CellObject CellOpen CellPrint CellProlog Cells CellSize CellStyle CellTags CellularAutomaton CensoredDistribution Censoring Center CenterArray CenterDot CentralFeature CentralMoment CentralMomentGeneratingFunction Cepstrogram CepstrogramArray CepstrumArray CForm ChampernowneNumber ChangeOptions ChannelBase ChannelBrokerAction ChannelDatabin ChannelHistoryLength ChannelListen ChannelListener ChannelListeners ChannelListenerWait ChannelObject ChannelPreSendFunction ChannelReceiverFunction ChannelSend ChannelSubscribers ChanVeseBinarize Character CharacterCounts CharacterEncoding CharacterEncodingsPath CharacteristicFunction CharacteristicPolynomial CharacterName CharacterRange Characters ChartBaseStyle ChartElementData ChartElementDataFunction ChartElementFunction ChartElements ChartLabels ChartLayout ChartLegends ChartStyle Chebyshev1FilterModel Chebyshev2FilterModel ChebyshevDistance ChebyshevT ChebyshevU Check CheckAbort CheckAll Checkbox CheckboxBar CheckboxBox CheckboxBoxOptions ChemicalData ChessboardDistance ChiDistribution ChineseRemainder ChiSquareDistribution ChoiceButtons ChoiceDialog CholeskyDecomposition Chop ChromaticityPlot ChromaticityPlot3D ChromaticPolynomial Circle CircleBox CircleDot CircleMinus CirclePlus CirclePoints CircleThrough CircleTimes CirculantGraph CircularOrthogonalMatrixDistribution CircularQuaternionMatrixDistribution CircularRealMatrixDistribution CircularSymplecticMatrixDistribution CircularUnitaryMatrixDistribution Circumsphere CityData ClassifierFunction ClassifierInformation ClassifierMeasurements ClassifierMeasurementsObject Classify ClassPriors Clear ClearAll ClearAttributes ClearCookies ClearPermissions ClearSystemCache ClebschGordan ClickPane Clip ClipboardNotebook ClipFill ClippingStyle ClipPlanes ClipPlanesStyle ClipRange Clock ClockGauge ClockwiseContourIntegral Close Closed CloseKernels ClosenessCentrality Closing ClosingAutoSave ClosingEvent CloudAccountData CloudBase CloudConnect CloudDeploy CloudDirectory CloudDisconnect CloudEvaluate CloudExport CloudExpression CloudExpressions CloudFunction CloudGet CloudImport CloudLoggingData CloudObject CloudObjectInformation CloudObjectInformationData CloudObjectNameFormat CloudObjects CloudObjectURLType CloudPublish CloudPut CloudRenderingMethod CloudSave CloudShare CloudSubmit CloudSymbol CloudUnshare ClusterClassify ClusterDissimilarityFunction ClusteringComponents ClusteringTree CMYKColor Coarse CodeAssistOptions Coefficient CoefficientArrays CoefficientDomain CoefficientList CoefficientRules CoifletWavelet Collect Colon ColonForm ColorBalance ColorCombine ColorConvert ColorCoverage ColorData ColorDataFunction ColorDetect ColorDistance ColorFunction ColorFunctionScaling Colorize ColorNegate ColorOutput ColorProfileData ColorQ ColorQuantize ColorReplace ColorRules ColorSelectorSettings ColorSeparate ColorSetter ColorSetterBox ColorSetterBoxOptions ColorSlider ColorsNear ColorSpace ColorToneMapping Column ColumnAlignments ColumnBackgrounds ColumnForm ColumnLines ColumnsEqual ColumnSpacings ColumnWidths CombinedEntityClass CombinerFunction CometData CommonDefaultFormatTypes Commonest CommonestFilter CommonName CommonUnits CommunityBoundaryStyle CommunityGraphPlot CommunityLabels CommunityRegionStyle CompanyData CompatibleUnitQ CompilationOptions CompilationTarget Compile Compiled CompiledCodeFunction CompiledFunction CompilerOptions Complement CompleteGraph CompleteGraphQ CompleteKaryTree CompletionsListPacket Complex Complexes ComplexExpand ComplexInfinity ComplexityFunction ComplexListPlot ComplexPlot ComplexPlot3D ComponentMeasurements ComponentwiseContextMenu Compose ComposeList ComposeSeries CompositeQ Composition CompoundElement CompoundExpression CompoundPoissonDistribution CompoundPoissonProcess CompoundRenewalProcess Compress CompressedData ComputeUncertainty Condition ConditionalExpression Conditioned Cone ConeBox ConfidenceLevel ConfidenceRange ConfidenceTransform ConfigurationPath ConformAudio ConformImages Congruent ConicHullRegion ConicHullRegion3DBox ConicHullRegionBox ConicOptimization Conjugate ConjugateTranspose Conjunction Connect ConnectedComponents ConnectedGraphComponents ConnectedGraphQ ConnectedMeshComponents ConnectedMoleculeComponents ConnectedMoleculeQ ConnectionSettings ConnectLibraryCallbackFunction ConnectSystemModelComponents ConnesWindow ConoverTest ConsoleMessage ConsoleMessagePacket ConsolePrint Constant ConstantArray ConstantArrayLayer ConstantImage ConstantPlusLayer ConstantRegionQ Constants ConstantTimesLayer ConstellationData ConstrainedMax ConstrainedMin Construct Containing ContainsAll ContainsAny ContainsExactly ContainsNone ContainsOnly ContentFieldOptions ContentLocationFunction ContentObject ContentPadding ContentsBoundingBox ContentSelectable ContentSize Context ContextMenu Contexts ContextToFileName Continuation Continue ContinuedFraction ContinuedFractionK ContinuousAction ContinuousMarkovProcess ContinuousTask ContinuousTimeModelQ ContinuousWaveletData ContinuousWaveletTransform ContourDetect ContourGraphics ContourIntegral ContourLabels ContourLines ContourPlot ContourPlot3D Contours ContourShading ContourSmoothing ContourStyle ContraharmonicMean ContrastiveLossLayer Control ControlActive ControlAlignment ControlGroupContentsBox ControllabilityGramian ControllabilityMatrix ControllableDecomposition ControllableModelQ ControllerDuration ControllerInformation ControllerInformationData ControllerLinking ControllerManipulate ControllerMethod ControllerPath ControllerState ControlPlacement ControlsRendering ControlType Convergents ConversionOptions ConversionRules ConvertToBitmapPacket ConvertToPostScript ConvertToPostScriptPacket ConvexHullMesh ConvexPolygonQ ConvexPolyhedronQ ConvolutionLayer Convolve ConwayGroupCo1 ConwayGroupCo2 ConwayGroupCo3 CookieFunction Cookies CoordinateBoundingBox CoordinateBoundingBoxArray CoordinateBounds CoordinateBoundsArray CoordinateChartData CoordinatesToolOptions CoordinateTransform CoordinateTransformData CoprimeQ Coproduct CopulaDistribution Copyable CopyDatabin CopyDirectory CopyFile CopyTag CopyToClipboard CornerFilter CornerNeighbors Correlation CorrelationDistance CorrelationFunction CorrelationTest Cos Cosh CoshIntegral CosineDistance CosineWindow CosIntegral Cot Coth Count CountDistinct CountDistinctBy CounterAssignments CounterBox CounterBoxOptions CounterClockwiseContourIntegral CounterEvaluator CounterFunction CounterIncrements CounterStyle CounterStyleMenuListing CountRoots CountryData Counts CountsBy Covariance CovarianceEstimatorFunction CovarianceFunction CoxianDistribution CoxIngersollRossProcess CoxModel CoxModelFit CramerVonMisesTest CreateArchive CreateCellID CreateChannel CreateCloudExpression CreateDatabin CreateDataSystemModel CreateDialog CreateDirectory CreateDocument CreateFile CreateIntermediateDirectories CreateManagedLibraryExpression CreateNotebook CreatePalette CreatePalettePacket CreatePermissionsGroup CreateScheduledTask CreateSearchIndex CreateSystemModel CreateTemporary CreateUUID CreateWindow CriterionFunction CriticalityFailureImportance CriticalitySuccessImportance CriticalSection Cross CrossEntropyLossLayer CrossingCount CrossingDetect CrossingPolygon CrossMatrix Csc Csch CTCLossLayer Cube CubeRoot Cubics Cuboid CuboidBox Cumulant CumulantGeneratingFunction Cup CupCap Curl CurlyDoubleQuote CurlyQuote CurrencyConvert CurrentDate CurrentImage CurrentlySpeakingPacket CurrentNotebookImage CurrentScreenImage CurrentValue Curry CurvatureFlowFilter CurveClosed Cyan CycleGraph CycleIndexPolynomial Cycles CyclicGroup Cyclotomic Cylinder CylinderBox CylindricalDecompositionD DagumDistribution DamData DamerauLevenshteinDistance DampingFactor Darker Dashed Dashing DatabaseConnect DatabaseDisconnect DatabaseReference Databin DatabinAdd DatabinRemove Databins DatabinUpload DataCompression DataDistribution DataRange DataReversed Dataset Date DateBounds Dated DateDelimiters DateDifference DatedUnit DateFormat DateFunction DateHistogram DateList DateListLogPlot DateListPlot DateListStepPlot DateObject DateObjectQ DateOverlapsQ DatePattern DatePlus DateRange DateReduction DateString DateTicksFormat DateValue DateWithinQ DaubechiesWavelet DavisDistribution DawsonF DayCount DayCountConvention DayHemisphere DaylightQ DayMatchQ DayName DayNightTerminator DayPlus DayRange DayRound DeBruijnGraph DeBruijnSequence Debug DebugTag Decapitalize Decimal DecimalForm DeclareKnownSymbols DeclarePackage Decompose DeconvolutionLayer Decrement Decrypt DecryptFile DedekindEta DeepSpaceProbeData Default DefaultAxesStyle DefaultBaseStyle DefaultBoxStyle DefaultButton DefaultColor DefaultControlPlacement DefaultDuplicateCellStyle DefaultDuration DefaultElement DefaultFaceGridsStyle DefaultFieldHintStyle DefaultFont DefaultFontProperties DefaultFormatType DefaultFormatTypeForStyle DefaultFrameStyle DefaultFrameTicksStyle DefaultGridLinesStyle DefaultInlineFormatType DefaultInputFormatType DefaultLabelStyle DefaultMenuStyle DefaultNaturalLanguage DefaultNewCellStyle DefaultNewInlineCellStyle DefaultNotebook DefaultOptions DefaultOutputFormatType DefaultPrintPrecision DefaultStyle DefaultStyleDefinitions DefaultTextFormatType DefaultTextInlineFormatType DefaultTicksStyle DefaultTooltipStyle DefaultValue DefaultValues Defer DefineExternal DefineInputStreamMethod DefineOutputStreamMethod DefineResourceFunction Definition Degree DegreeCentrality DegreeGraphDistribution DegreeLexicographic DegreeReverseLexicographic DEigensystem DEigenvalues Deinitialization Del DelaunayMesh Delayed Deletable Delete DeleteAnomalies DeleteBorderComponents DeleteCases DeleteChannel DeleteCloudExpression DeleteContents DeleteDirectory DeleteDuplicates DeleteDuplicatesBy DeleteFile DeleteMissing DeleteObject DeletePermissionsKey DeleteSearchIndex DeleteSmallComponents DeleteStopwords DeleteWithContents DeletionWarning DelimitedArray DelimitedSequence Delimiter DelimiterFlashTime DelimiterMatching Delimiters DeliveryFunction Dendrogram Denominator DensityGraphics DensityHistogram DensityPlot DensityPlot3D DependentVariables Deploy Deployed Depth DepthFirstScan Derivative DerivativeFilter DerivedKey DescriptorStateSpace DesignMatrix DestroyAfterEvaluation Det DeviceClose DeviceConfigure DeviceExecute DeviceExecuteAsynchronous DeviceObject DeviceOpen DeviceOpenQ DeviceRead DeviceReadBuffer DeviceReadLatest DeviceReadList DeviceReadTimeSeries Devices DeviceStreams DeviceWrite DeviceWriteBuffer DGaussianWavelet DiacriticalPositioning Diagonal DiagonalizableMatrixQ DiagonalMatrix DiagonalMatrixQ Dialog DialogIndent DialogInput DialogLevel DialogNotebook DialogProlog DialogReturn DialogSymbols Diamond DiamondMatrix DiceDissimilarity DictionaryLookup DictionaryWordQ DifferenceDelta DifferenceOrder DifferenceQuotient DifferenceRoot DifferenceRootReduce Differences DifferentialD DifferentialRoot DifferentialRootReduce DifferentiatorFilter DigitalSignature DigitBlock DigitBlockMinimum DigitCharacter DigitCount DigitQ DihedralAngle DihedralGroup Dilation DimensionalCombinations DimensionalMeshComponents DimensionReduce DimensionReducerFunction DimensionReduction Dimensions DiracComb DiracDelta DirectedEdge DirectedEdges DirectedGraph DirectedGraphQ DirectedInfinity Direction Directive Directory DirectoryName DirectoryQ DirectoryStack DirichletBeta DirichletCharacter DirichletCondition DirichletConvolve DirichletDistribution DirichletEta DirichletL DirichletLambda DirichletTransform DirichletWindow DisableConsolePrintPacket DisableFormatting DiscreteChirpZTransform DiscreteConvolve DiscreteDelta DiscreteHadamardTransform DiscreteIndicator DiscreteLimit DiscreteLQEstimatorGains DiscreteLQRegulatorGains DiscreteLyapunovSolve DiscreteMarkovProcess DiscreteMaxLimit DiscreteMinLimit DiscretePlot DiscretePlot3D DiscreteRatio DiscreteRiccatiSolve DiscreteShift DiscreteTimeModelQ DiscreteUniformDistribution DiscreteVariables DiscreteWaveletData DiscreteWaveletPacketTransform DiscreteWaveletTransform DiscretizeGraphics DiscretizeRegion Discriminant DisjointQ Disjunction Disk DiskBox DiskMatrix DiskSegment Dispatch DispatchQ DispersionEstimatorFunction Display DisplayAllSteps DisplayEndPacket DisplayFlushImagePacket DisplayForm DisplayFunction DisplayPacket DisplayRules DisplaySetSizePacket DisplayString DisplayTemporary DisplayWith DisplayWithRef DisplayWithVariable DistanceFunction DistanceMatrix DistanceTransform Distribute Distributed DistributedContexts DistributeDefinitions DistributionChart DistributionDomain DistributionFitTest DistributionParameterAssumptions DistributionParameterQ Dithering Div Divergence Divide DivideBy Dividers DivideSides Divisible Divisors DivisorSigma DivisorSum DMSList DMSString Do DockedCells DocumentGenerator DocumentGeneratorInformation DocumentGeneratorInformationData DocumentGenerators DocumentNotebook DocumentWeightingRules Dodecahedron DomainRegistrationInformation DominantColors DOSTextFormat Dot DotDashed DotEqual DotLayer DotPlusLayer Dotted DoubleBracketingBar DoubleContourIntegral DoubleDownArrow DoubleLeftArrow DoubleLeftRightArrow DoubleLeftTee DoubleLongLeftArrow DoubleLongLeftRightArrow DoubleLongRightArrow DoubleRightArrow DoubleRightTee DoubleUpArrow DoubleUpDownArrow DoubleVerticalBar DoublyInfinite Down DownArrow DownArrowBar DownArrowUpArrow DownLeftRightVector DownLeftTeeVector DownLeftVector DownLeftVectorBar DownRightTeeVector DownRightVector DownRightVectorBar Downsample DownTee DownTeeArrow DownValues DragAndDrop DrawEdges DrawFrontFaces DrawHighlighted Drop DropoutLayer DSolve DSolveValue Dt DualLinearProgramming DualPolyhedron DualSystemsModel DumpGet DumpSave DuplicateFreeQ Duration Dynamic DynamicBox DynamicBoxOptions DynamicEvaluationTimeout DynamicGeoGraphics DynamicImage DynamicLocation DynamicModule DynamicModuleBox DynamicModuleBoxOptions DynamicModuleParent DynamicModuleValues DynamicName DynamicNamespace DynamicReference DynamicSetting DynamicUpdating DynamicWrapper DynamicWrapperBox DynamicWrapperBoxOptionsE EarthImpactData EarthquakeData EccentricityCentrality Echo EchoFunction EclipseType EdgeAdd EdgeBetweennessCentrality EdgeCapacity EdgeCapForm EdgeColor EdgeConnectivity EdgeContract EdgeCost EdgeCount EdgeCoverQ EdgeCycleMatrix EdgeDashing EdgeDelete EdgeDetect EdgeForm EdgeIndex EdgeJoinForm EdgeLabeling EdgeLabels EdgeLabelStyle EdgeList EdgeOpacity EdgeQ EdgeRenderingFunction EdgeRules EdgeShapeFunction EdgeStyle EdgeThickness EdgeWeight EdgeWeightedGraphQ Editable EditButtonSettings EditCellTagsSettings EditDistance EffectiveInterest Eigensystem Eigenvalues EigenvectorCentrality Eigenvectors Element ElementData ElementwiseLayer ElidedForms Eliminate EliminationOrder Ellipsoid EllipticE EllipticExp EllipticExpPrime EllipticF EllipticFilterModel EllipticK EllipticLog EllipticNomeQ EllipticPi EllipticReducedHalfPeriods EllipticTheta EllipticThetaPrime EmbedCode EmbeddedHTML EmbeddedService EmbeddingLayer EmbeddingObject EmitSound EmphasizeSyntaxErrors EmpiricalDistribution Empty EmptyGraphQ EmptyRegion EnableConsolePrintPacket Enabled Encode Encrypt EncryptedObject EncryptFile End EndAdd EndDialogPacket EndFrontEndInteractionPacket EndOfBuffer EndOfFile EndOfLine EndOfString EndPackage EngineEnvironment EngineeringForm Enter EnterExpressionPacket EnterTextPacket Entity EntityClass EntityClassList EntityCopies EntityFunction EntityGroup EntityInstance EntityList EntityPrefetch EntityProperties EntityProperty EntityPropertyClass EntityRegister EntityStore EntityStores EntityTypeName EntityUnregister EntityValue Entropy EntropyFilter Environment Epilog EpilogFunction Equal EqualColumns EqualRows EqualTilde EqualTo EquatedTo Equilibrium EquirippleFilterKernel Equivalent Erf Erfc Erfi ErlangB ErlangC ErlangDistribution Erosion ErrorBox ErrorBoxOptions ErrorNorm ErrorPacket ErrorsDialogSettings EscapeRadius EstimatedBackground EstimatedDistribution EstimatedProcess EstimatorGains EstimatorRegulator EuclideanDistance EulerAngles EulerCharacteristic EulerE EulerGamma EulerianGraphQ EulerMatrix EulerPhi Evaluatable Evaluate Evaluated EvaluatePacket EvaluateScheduledTask EvaluationBox EvaluationCell EvaluationCompletionAction EvaluationData EvaluationElements EvaluationEnvironment EvaluationMode EvaluationMonitor EvaluationNotebook EvaluationObject EvaluationOrder Evaluator EvaluatorNames EvenQ EventData EventEvaluator EventHandler EventHandlerTag EventLabels EventSeries ExactBlackmanWindow ExactNumberQ ExactRootIsolation ExampleData Except ExcludedForms ExcludedLines ExcludedPhysicalQuantities ExcludePods Exclusions ExclusionsStyle Exists Exit ExitDialog ExoplanetData Exp Expand ExpandAll ExpandDenominator ExpandFileName ExpandNumerator Expectation ExpectationE ExpectedValue ExpGammaDistribution ExpIntegralE ExpIntegralEi ExpirationDate Exponent ExponentFunction ExponentialDistribution ExponentialFamily ExponentialGeneratingFunction ExponentialMovingAverage ExponentialPowerDistribution ExponentPosition ExponentStep Export ExportAutoReplacements ExportByteArray ExportForm ExportPacket ExportString Expression ExpressionCell ExpressionPacket ExpressionUUID ExpToTrig ExtendedEntityClass ExtendedGCD Extension ExtentElementFunction ExtentMarkers ExtentSize ExternalBundle ExternalCall ExternalDataCharacterEncoding ExternalEvaluate ExternalFunction ExternalFunctionName ExternalObject ExternalOptions ExternalSessionObject ExternalSessions ExternalTypeSignature ExternalValue Extract ExtractArchive ExtractLayer ExtremeValueDistributionFaceForm FaceGrids FaceGridsStyle FacialFeatures Factor FactorComplete Factorial Factorial2 FactorialMoment FactorialMomentGeneratingFunction FactorialPower FactorInteger FactorList FactorSquareFree FactorSquareFreeList FactorTerms FactorTermsList Fail Failure FailureAction FailureDistribution FailureQ False FareySequence FARIMAProcess FeatureDistance FeatureExtract FeatureExtraction FeatureExtractor FeatureExtractorFunction FeatureNames FeatureNearest FeatureSpacePlot FeatureSpacePlot3D FeatureTypes FEDisableConsolePrintPacket FeedbackLinearize FeedbackSector FeedbackSectorStyle FeedbackType FEEnableConsolePrintPacket FetalGrowthData Fibonacci Fibonorial FieldCompletionFunction FieldHint FieldHintStyle FieldMasked FieldSize File FileBaseName FileByteCount FileConvert FileDate FileExistsQ FileExtension FileFormat FileHandler FileHash FileInformation FileName FileNameDepth FileNameDialogSettings FileNameDrop FileNameForms FileNameJoin FileNames FileNameSetter FileNameSplit FileNameTake FilePrint FileSize FileSystemMap FileSystemScan FileTemplate FileTemplateApply FileType FilledCurve FilledCurveBox FilledCurveBoxOptions Filling FillingStyle FillingTransform FilteredEntityClass FilterRules FinancialBond FinancialData FinancialDerivative FinancialIndicator Find FindAnomalies FindArgMax FindArgMin FindChannels FindClique FindClusters FindCookies FindCurvePath FindCycle FindDevices FindDistribution FindDistributionParameters FindDivisions FindEdgeCover FindEdgeCut FindEdgeIndependentPaths FindEquationalProof FindEulerianCycle FindExternalEvaluators FindFaces FindFile FindFit FindFormula FindFundamentalCycles FindGeneratingFunction FindGeoLocation FindGeometricConjectures FindGeometricTransform FindGraphCommunities FindGraphIsomorphism FindGraphPartition FindHamiltonianCycle FindHamiltonianPath FindHiddenMarkovStates FindIndependentEdgeSet FindIndependentVertexSet FindInstance FindIntegerNullVector FindKClan FindKClique FindKClub FindKPlex FindLibrary FindLinearRecurrence FindList FindMatchingColor FindMaximum FindMaximumFlow FindMaxValue FindMeshDefects FindMinimum FindMinimumCostFlow FindMinimumCut FindMinValue FindMoleculeSubstructure FindPath FindPeaks FindPermutation FindPostmanTour FindProcessParameters FindRepeat FindRoot FindSequenceFunction FindSettings FindShortestPath FindShortestTour FindSpanningTree FindSystemModelEquilibrium FindTextualAnswer FindThreshold FindTransientRepeat FindVertexCover FindVertexCut FindVertexIndependentPaths Fine FinishDynamic FiniteAbelianGroupCount FiniteGroupCount FiniteGroupData First FirstCase FirstPassageTimeDistribution FirstPosition FischerGroupFi22 FischerGroupFi23 FischerGroupFi24Prime FisherHypergeometricDistribution FisherRatioTest FisherZDistribution Fit FitAll FitRegularization FittedModel FixedOrder FixedPoint FixedPointList FlashSelection Flat Flatten FlattenAt FlattenLayer FlatTopWindow FlipView Floor FlowPolynomial FlushPrintOutputPacket Fold FoldList FoldPair FoldPairList FollowRedirects Font FontColor FontFamily FontForm FontName FontOpacity FontPostScriptName FontProperties FontReencoding FontSize FontSlant FontSubstitutions FontTracking FontVariations FontWeight For ForAll Format FormatRules FormatType FormatTypeAutoConvert FormatValues FormBox FormBoxOptions FormControl FormFunction FormLayoutFunction FormObject FormPage FormTheme FormulaData FormulaLookup FortranForm Forward ForwardBackward Fourier FourierCoefficient FourierCosCoefficient FourierCosSeries FourierCosTransform FourierDCT FourierDCTFilter FourierDCTMatrix FourierDST FourierDSTMatrix FourierMatrix FourierParameters FourierSequenceTransform FourierSeries FourierSinCoefficient FourierSinSeries FourierSinTransform FourierTransform FourierTrigSeries FractionalBrownianMotionProcess FractionalGaussianNoiseProcess FractionalPart FractionBox FractionBoxOptions FractionLine Frame FrameBox FrameBoxOptions Framed FrameInset FrameLabel Frameless FrameMargins FrameRate FrameStyle FrameTicks FrameTicksStyle FRatioDistribution FrechetDistribution FreeQ FrenetSerretSystem FrequencySamplingFilterKernel FresnelC FresnelF FresnelG FresnelS Friday FrobeniusNumber FrobeniusSolve FromAbsoluteTime FromCharacterCode FromCoefficientRules FromContinuedFraction FromDate FromDigits FromDMS FromEntity FromJulianDate FromLetterNumber FromPolarCoordinates FromRomanNumeral FromSphericalCoordinates FromUnixTime Front FrontEndDynamicExpression FrontEndEventActions FrontEndExecute FrontEndObject FrontEndResource FrontEndResourceString FrontEndStackSize FrontEndToken FrontEndTokenExecute FrontEndValueCache FrontEndVersion FrontFaceColor FrontFaceOpacity Full FullAxes FullDefinition FullForm FullGraphics FullInformationOutputRegulator FullOptions FullRegion FullSimplify Function FunctionCompile FunctionCompileExport FunctionCompileExportByteArray FunctionCompileExportLibrary FunctionCompileExportString FunctionDomain FunctionExpand FunctionInterpolation FunctionPeriod FunctionRange FunctionSpace FussellVeselyImportanceGaborFilter GaborMatrix GaborWavelet GainMargins GainPhaseMargins GalaxyData GalleryView Gamma GammaDistribution GammaRegularized GapPenalty GARCHProcess GatedRecurrentLayer Gather GatherBy GaugeFaceElementFunction GaugeFaceStyle GaugeFrameElementFunction GaugeFrameSize GaugeFrameStyle GaugeLabels GaugeMarkers GaugeStyle GaussianFilter GaussianIntegers GaussianMatrix GaussianOrthogonalMatrixDistribution GaussianSymplecticMatrixDistribution GaussianUnitaryMatrixDistribution GaussianWindow GCD GegenbauerC General GeneralizedLinearModelFit GenerateAsymmetricKeyPair GenerateConditions GeneratedCell GeneratedDocumentBinding GenerateDerivedKey GenerateDigitalSignature GenerateDocument GeneratedParameters GeneratedQuantityMagnitudes GenerateHTTPResponse GenerateSecuredAuthenticationKey GenerateSymmetricKey GeneratingFunction GeneratorDescription GeneratorHistoryLength GeneratorOutputType Generic GenericCylindricalDecomposition GenomeData GenomeLookup GeoAntipode GeoArea GeoArraySize GeoBackground GeoBoundingBox GeoBounds GeoBoundsRegion GeoBubbleChart GeoCenter GeoCircle GeodesicClosing GeodesicDilation GeodesicErosion GeodesicOpening GeoDestination GeodesyData GeoDirection GeoDisk GeoDisplacement GeoDistance GeoDistanceList GeoElevationData GeoEntities GeoGraphics GeogravityModelData GeoGridDirectionDifference GeoGridLines GeoGridLinesStyle GeoGridPosition GeoGridRange GeoGridRangePadding GeoGridUnitArea GeoGridUnitDistance GeoGridVector GeoGroup GeoHemisphere GeoHemisphereBoundary GeoHistogram GeoIdentify GeoImage GeoLabels GeoLength GeoListPlot GeoLocation GeologicalPeriodData GeomagneticModelData GeoMarker GeometricAssertion GeometricBrownianMotionProcess GeometricDistribution GeometricMean GeometricMeanFilter GeometricScene GeometricTransformation GeometricTransformation3DBox GeometricTransformation3DBoxOptions GeometricTransformationBox GeometricTransformationBoxOptions GeoModel GeoNearest GeoPath GeoPosition GeoPositionENU GeoPositionXYZ GeoProjection GeoProjectionData GeoRange GeoRangePadding GeoRegionValuePlot GeoResolution GeoScaleBar GeoServer GeoSmoothHistogram GeoStreamPlot GeoStyling GeoStylingImageFunction GeoVariant GeoVector GeoVectorENU GeoVectorPlot GeoVectorXYZ GeoVisibleRegion GeoVisibleRegionBoundary GeoWithinQ GeoZoomLevel GestureHandler GestureHandlerTag Get GetBoundingBoxSizePacket GetContext GetEnvironment GetFileName GetFrontEndOptionsDataPacket GetLinebreakInformationPacket GetMenusPacket GetPageBreakInformationPacket Glaisher GlobalClusteringCoefficient GlobalPreferences GlobalSession Glow GoldenAngle GoldenRatio GompertzMakehamDistribution GoodmanKruskalGamma GoodmanKruskalGammaTest Goto Grad Gradient GradientFilter GradientOrientationFilter GrammarApply GrammarRules GrammarToken Graph Graph3D GraphAssortativity GraphAutomorphismGroup GraphCenter GraphComplement GraphData GraphDensity GraphDiameter GraphDifference GraphDisjointUnion GraphDistance GraphDistanceMatrix GraphElementData GraphEmbedding GraphHighlight GraphHighlightStyle GraphHub Graphics Graphics3D Graphics3DBox Graphics3DBoxOptions GraphicsArray GraphicsBaseline GraphicsBox GraphicsBoxOptions GraphicsColor GraphicsColumn GraphicsComplex GraphicsComplex3DBox GraphicsComplex3DBoxOptions GraphicsComplexBox GraphicsComplexBoxOptions GraphicsContents GraphicsData GraphicsGrid GraphicsGridBox GraphicsGroup GraphicsGroup3DBox GraphicsGroup3DBoxOptions GraphicsGroupBox GraphicsGroupBoxOptions GraphicsGrouping GraphicsHighlightColor GraphicsRow GraphicsSpacing GraphicsStyle GraphIntersection GraphLayout GraphLinkEfficiency GraphPeriphery GraphPlot GraphPlot3D GraphPower GraphPropertyDistribution GraphQ GraphRadius GraphReciprocity GraphRoot GraphStyle GraphUnion Gray GrayLevel Greater GreaterEqual GreaterEqualLess GreaterEqualThan GreaterFullEqual GreaterGreater GreaterLess GreaterSlantEqual GreaterThan GreaterTilde Green GreenFunction Grid GridBaseline GridBox GridBoxAlignment GridBoxBackground GridBoxDividers GridBoxFrame GridBoxItemSize GridBoxItemStyle GridBoxOptions GridBoxSpacings GridCreationSettings GridDefaultElement GridElementStyleOptions GridFrame GridFrameMargins GridGraph GridLines GridLinesStyle GroebnerBasis GroupActionBase GroupBy GroupCentralizer GroupElementFromWord GroupElementPosition GroupElementQ GroupElements GroupElementToWord GroupGenerators Groupings GroupMultiplicationTable GroupOrbits GroupOrder GroupPageBreakWithin GroupSetwiseStabilizer GroupStabilizer GroupStabilizerChain GroupTogetherGrouping GroupTogetherNestedGrouping GrowCutComponents Gudermannian GuidedFilter GumbelDistributionHaarWavelet HadamardMatrix HalfLine HalfNormalDistribution HalfPlane HalfSpace HamiltonianGraphQ HammingDistance HammingWindow HandlerFunctions HandlerFunctionsKeys HankelH1 HankelH2 HankelMatrix HankelTransform HannPoissonWindow HannWindow HaradaNortonGroupHN HararyGraph HarmonicMean HarmonicMeanFilter HarmonicNumber Hash Haversine HazardFunction Head HeadCompose HeaderLines Heads HeavisideLambda HeavisidePi HeavisideTheta HeldGroupHe HeldPart HelpBrowserLookup HelpBrowserNotebook HelpBrowserSettings Here HermiteDecomposition HermiteH HermitianMatrixQ HessenbergDecomposition Hessian HexadecimalCharacter Hexahedron HexahedronBox HexahedronBoxOptions HiddenMarkovProcess HiddenSurface Highlighted HighlightGraph HighlightImage HighlightMesh HighpassFilter HigmanSimsGroupHS HilbertCurve HilbertFilter HilbertMatrix Histogram Histogram3D HistogramDistribution HistogramList HistogramTransform HistogramTransformInterpolation HistoricalPeriodData HitMissTransform HITSCentrality HjorthDistribution HodgeDual HoeffdingD HoeffdingDTest Hold HoldAll HoldAllComplete HoldComplete HoldFirst HoldForm HoldPattern HoldRest HolidayCalendar HomeDirectory HomePage Horizontal HorizontalForm HorizontalGauge HorizontalScrollPosition HornerForm HostLookup HotellingTSquareDistribution HoytDistribution HTMLSave HTTPErrorResponse HTTPRedirect HTTPRequest HTTPRequestData HTTPResponse Hue HumanGrowthData HumpDownHump HumpEqual HurwitzLerchPhi HurwitzZeta HyperbolicDistribution HypercubeGraph HyperexponentialDistribution Hyperfactorial Hypergeometric0F1 Hypergeometric0F1Regularized Hypergeometric1F1 Hypergeometric1F1Regularized Hypergeometric2F1 Hypergeometric2F1Regularized HypergeometricDistribution HypergeometricPFQ HypergeometricPFQRegularized HypergeometricU Hyperlink HyperlinkCreationSettings Hyperplane Hyphenation HyphenationOptions HypoexponentialDistribution HypothesisTestDataI IconData Iconize IconizedObject IconRules Icosahedron Identity IdentityMatrix If IgnoreCase IgnoreDiacritics IgnorePunctuation IgnoreSpellCheck IgnoringInactive Im Image Image3D Image3DProjection Image3DSlices ImageAccumulate ImageAdd ImageAdjust ImageAlign ImageApply ImageApplyIndexed ImageAspectRatio ImageAssemble ImageAugmentationLayer ImageBoundingBoxes ImageCache ImageCacheValid ImageCapture ImageCaptureFunction ImageCases ImageChannels ImageClip ImageCollage ImageColorSpace ImageCompose ImageContainsQ ImageContents ImageConvolve ImageCooccurrence ImageCorners ImageCorrelate ImageCorrespondingPoints ImageCrop ImageData ImageDeconvolve ImageDemosaic ImageDifference ImageDimensions ImageDisplacements ImageDistance ImageEffect ImageExposureCombine ImageFeatureTrack ImageFileApply ImageFileFilter ImageFileScan ImageFilter ImageFocusCombine ImageForestingComponents ImageFormattingWidth ImageForwardTransformation ImageGraphics ImageHistogram ImageIdentify ImageInstanceQ ImageKeypoints ImageLevels ImageLines ImageMargins ImageMarker ImageMarkers ImageMeasurements ImageMesh ImageMultiply ImageOffset ImagePad ImagePadding ImagePartition ImagePeriodogram ImagePerspectiveTransformation ImagePosition ImagePreviewFunction ImagePyramid ImagePyramidApply ImageQ ImageRangeCache ImageRecolor ImageReflect ImageRegion ImageResize ImageResolution ImageRestyle ImageRotate ImageRotated ImageSaliencyFilter ImageScaled ImageScan ImageSize ImageSizeAction ImageSizeCache ImageSizeMultipliers ImageSizeRaw ImageSubtract ImageTake ImageTransformation ImageTrim ImageType ImageValue ImageValuePositions ImagingDevice ImplicitRegion Implies Import ImportAutoReplacements ImportByteArray ImportOptions ImportString ImprovementImportance In Inactivate Inactive IncidenceGraph IncidenceList IncidenceMatrix IncludeAromaticBonds IncludeConstantBasis IncludeDefinitions IncludeDirectories IncludeFileExtension IncludeGeneratorTasks IncludeHydrogens IncludeInflections IncludeMetaInformation IncludePods IncludeQuantities IncludeRelatedTables IncludeSingularTerm IncludeWindowTimes Increment IndefiniteMatrixQ Indent IndentingNewlineSpacings IndentMaxFraction IndependenceTest IndependentEdgeSetQ IndependentPhysicalQuantity IndependentUnit IndependentUnitDimension IndependentVertexSetQ Indeterminate IndeterminateThreshold IndexCreationOptions Indexed IndexGraph IndexTag Inequality InexactNumberQ InexactNumbers InfiniteLine InfinitePlane Infinity Infix InflationAdjust InflationMethod Information InformationData InformationDataGrid Inherited InheritScope InhomogeneousPoissonProcess InitialEvaluationHistory Initialization InitializationCell InitializationCellEvaluation InitializationCellWarning InitializationObjects InitializationValue Initialize InitialSeeding InlineCounterAssignments InlineCounterIncrements InlineRules Inner InnerPolygon InnerPolyhedron Inpaint Input InputAliases InputAssumptions InputAutoReplacements InputField InputFieldBox InputFieldBoxOptions InputForm InputGrouping InputNamePacket InputNotebook InputPacket InputSettings InputStream InputString InputStringPacket InputToBoxFormPacket Insert InsertionFunction InsertionPointObject InsertLinebreaks InsertResults Inset Inset3DBox Inset3DBoxOptions InsetBox InsetBoxOptions Insphere Install InstallService InstanceNormalizationLayer InString Integer IntegerDigits IntegerExponent IntegerLength IntegerName IntegerPart IntegerPartitions IntegerQ IntegerReverse Integers IntegerString Integral Integrate Interactive InteractiveTradingChart Interlaced Interleaving InternallyBalancedDecomposition InterpolatingFunction InterpolatingPolynomial Interpolation InterpolationOrder InterpolationPoints InterpolationPrecision Interpretation InterpretationBox InterpretationBoxOptions InterpretationFunction Interpreter InterpretTemplate InterquartileRange Interrupt InterruptSettings IntersectingQ Intersection Interval IntervalIntersection IntervalMarkers IntervalMarkersStyle IntervalMemberQ IntervalSlider IntervalUnion Into Inverse InverseBetaRegularized InverseCDF InverseChiSquareDistribution InverseContinuousWaveletTransform InverseDistanceTransform InverseEllipticNomeQ InverseErf InverseErfc InverseFourier InverseFourierCosTransform InverseFourierSequenceTransform InverseFourierSinTransform InverseFourierTransform InverseFunction InverseFunctions InverseGammaDistribution InverseGammaRegularized InverseGaussianDistribution InverseGudermannian InverseHankelTransform InverseHaversine InverseImagePyramid InverseJacobiCD InverseJacobiCN InverseJacobiCS InverseJacobiDC InverseJacobiDN InverseJacobiDS InverseJacobiNC InverseJacobiND InverseJacobiNS InverseJacobiSC InverseJacobiSD InverseJacobiSN InverseLaplaceTransform InverseMellinTransform InversePermutation InverseRadon InverseRadonTransform InverseSeries InverseShortTimeFourier InverseSpectrogram InverseSurvivalFunction InverseTransformedRegion InverseWaveletTransform InverseWeierstrassP InverseWishartMatrixDistribution InverseZTransform Invisible InvisibleApplication InvisibleTimes IPAddress IrreduciblePolynomialQ IslandData IsolatingInterval IsomorphicGraphQ IsotopeData Italic Item ItemAspectRatio ItemBox ItemBoxOptions ItemSize ItemStyle ItoProcessJaccardDissimilarity JacobiAmplitude Jacobian JacobiCD JacobiCN JacobiCS JacobiDC JacobiDN JacobiDS JacobiNC JacobiND JacobiNS JacobiP JacobiSC JacobiSD JacobiSN JacobiSymbol JacobiZeta JankoGroupJ1 JankoGroupJ2 JankoGroupJ3 JankoGroupJ4 JarqueBeraALMTest JohnsonDistribution Join JoinAcross Joined JoinedCurve JoinedCurveBox JoinedCurveBoxOptions JoinForm JordanDecomposition JordanModelDecomposition JulianDate JuliaSetBoettcher JuliaSetIterationCount JuliaSetPlot JuliaSetPointsK KagiChart KaiserBesselWindow KaiserWindow KalmanEstimator KalmanFilter KarhunenLoeveDecomposition KaryTree KatzCentrality KCoreComponents KDistribution KEdgeConnectedComponents KEdgeConnectedGraphQ KelvinBei KelvinBer KelvinKei KelvinKer KendallTau KendallTauTest KernelExecute KernelFunction KernelMixtureDistribution Kernels Ket Key KeyCollisionFunction KeyComplement KeyDrop KeyDropFrom KeyExistsQ KeyFreeQ KeyIntersection KeyMap KeyMemberQ KeypointStrength Keys KeySelect KeySort KeySortBy KeyTake KeyUnion KeyValueMap KeyValuePattern Khinchin KillProcess KirchhoffGraph KirchhoffMatrix KleinInvariantJ KnapsackSolve KnightTourGraph KnotData KnownUnitQ KochCurve KolmogorovSmirnovTest KroneckerDelta KroneckerModelDecomposition KroneckerProduct KroneckerSymbol KuiperTest KumaraswamyDistribution Kurtosis KuwaharaFilter KVertexConnectedComponents KVertexConnectedGraphQLABColor Label Labeled LabeledSlider LabelingFunction LabelingSize LabelStyle LabelVisibility LaguerreL LakeData LambdaComponents LambertW LaminaData LanczosWindow LandauDistribution Language LanguageCategory LanguageData LanguageIdentify LanguageOptions LaplaceDistribution LaplaceTransform Laplacian LaplacianFilter LaplacianGaussianFilter Large Larger Last Latitude LatitudeLongitude LatticeData LatticeReduce Launch LaunchKernels LayeredGraphPlot LayerSizeFunction LayoutInformation LCHColor LCM LeaderSize LeafCount LeapYearQ LearnDistribution LearnedDistribution LearningRate LearningRateMultipliers LeastSquares LeastSquaresFilterKernel Left LeftArrow LeftArrowBar LeftArrowRightArrow LeftDownTeeVector LeftDownVector LeftDownVectorBar LeftRightArrow LeftRightVector LeftTee LeftTeeArrow LeftTeeVector LeftTriangle LeftTriangleBar LeftTriangleEqual LeftUpDownVector LeftUpTeeVector LeftUpVector LeftUpVectorBar LeftVector LeftVectorBar LegendAppearance Legended LegendFunction LegendLabel LegendLayout LegendMargins LegendMarkers LegendMarkerSize LegendreP LegendreQ LegendreType Length LengthWhile LerchPhi Less LessEqual LessEqualGreater LessEqualThan LessFullEqual LessGreater LessLess LessSlantEqual LessThan LessTilde LetterCharacter LetterCounts LetterNumber LetterQ Level LeveneTest LeviCivitaTensor LevyDistribution Lexicographic LibraryDataType LibraryFunction LibraryFunctionError LibraryFunctionInformation LibraryFunctionLoad LibraryFunctionUnload LibraryLoad LibraryUnload LicenseID LiftingFilterData LiftingWaveletTransform LightBlue LightBrown LightCyan Lighter LightGray LightGreen Lighting LightingAngle LightMagenta LightOrange LightPink LightPurple LightRed LightSources LightYellow Likelihood Limit LimitsPositioning LimitsPositioningTokens LindleyDistribution Line Line3DBox Line3DBoxOptions LinearFilter LinearFractionalOptimization LinearFractionalTransform LinearGradientImage LinearizingTransformationData LinearLayer LinearModelFit LinearOffsetFunction LinearOptimization LinearProgramming LinearRecurrence LinearSolve LinearSolveFunction LineBox LineBoxOptions LineBreak LinebreakAdjustments LineBreakChart LinebreakSemicolonWeighting LineBreakWithin LineColor LineGraph LineIndent LineIndentMaxFraction LineIntegralConvolutionPlot LineIntegralConvolutionScale LineLegend LineOpacity LineSpacing LineWrapParts LinkActivate LinkClose LinkConnect LinkConnectedQ LinkCreate LinkError LinkFlush LinkFunction LinkHost LinkInterrupt LinkLaunch LinkMode LinkObject LinkOpen LinkOptions LinkPatterns LinkProtocol LinkRankCentrality LinkRead LinkReadHeld LinkReadyQ Links LinkService LinkWrite LinkWriteHeld LiouvilleLambda List Listable ListAnimate ListContourPlot ListContourPlot3D ListConvolve ListCorrelate ListCurvePathPlot ListDeconvolve ListDensityPlot ListDensityPlot3D Listen ListFormat ListFourierSequenceTransform ListInterpolation ListLineIntegralConvolutionPlot ListLinePlot ListLogLinearPlot ListLogLogPlot ListLogPlot ListPicker ListPickerBox ListPickerBoxBackground ListPickerBoxOptions ListPlay ListPlot ListPlot3D ListPointPlot3D ListPolarPlot ListQ ListSliceContourPlot3D ListSliceDensityPlot3D ListSliceVectorPlot3D ListStepPlot ListStreamDensityPlot ListStreamPlot ListSurfacePlot3D ListVectorDensityPlot ListVectorPlot ListVectorPlot3D ListZTransform Literal LiteralSearch LocalAdaptiveBinarize LocalCache LocalClusteringCoefficient LocalizeDefinitions LocalizeVariables LocalObject LocalObjects LocalResponseNormalizationLayer LocalSubmit LocalSymbol LocalTime LocalTimeZone LocationEquivalenceTest LocationTest Locator LocatorAutoCreate LocatorBox LocatorBoxOptions LocatorCentering LocatorPane LocatorPaneBox LocatorPaneBoxOptions LocatorRegion Locked Log Log10 Log2 LogBarnesG LogGamma LogGammaDistribution LogicalExpand LogIntegral LogisticDistribution LogisticSigmoid LogitModelFit LogLikelihood LogLinearPlot LogLogisticDistribution LogLogPlot LogMultinormalDistribution LogNormalDistribution LogPlot LogRankTest LogSeriesDistribution LongEqual Longest LongestCommonSequence LongestCommonSequencePositions LongestCommonSubsequence LongestCommonSubsequencePositions LongestMatch LongestOrderedSequence LongForm Longitude LongLeftArrow LongLeftRightArrow LongRightArrow LongShortTermMemoryLayer Lookup Loopback LoopFreeGraphQ LossFunction LowerCaseQ LowerLeftArrow LowerRightArrow LowerTriangularize LowerTriangularMatrixQ LowpassFilter LQEstimatorGains LQGRegulator LQOutputRegulatorGains LQRegulatorGains LUBackSubstitution LucasL LuccioSamiComponents LUDecomposition LunarEclipse LUVColor LyapunovSolve LyonsGroupLyMachineID MachineName MachineNumberQ MachinePrecision MacintoshSystemPageSetup Magenta Magnification Magnify MailAddressValidation MailExecute MailFolder MailItem MailReceiverFunction MailResponseFunction MailSearch MailServerConnect MailServerConnection MailSettings MainSolve MaintainDynamicCaches Majority MakeBoxes MakeExpression MakeRules ManagedLibraryExpressionID ManagedLibraryExpressionQ MandelbrotSetBoettcher MandelbrotSetDistance MandelbrotSetIterationCount MandelbrotSetMemberQ MandelbrotSetPlot MangoldtLambda ManhattanDistance Manipulate Manipulator MannedSpaceMissionData MannWhitneyTest MantissaExponent Manual Map MapAll MapAt MapIndexed MAProcess MapThread MarchenkoPasturDistribution MarcumQ MardiaCombinedTest MardiaKurtosisTest MardiaSkewnessTest MarginalDistribution MarkovProcessProperties Masking MatchingDissimilarity MatchLocalNameQ MatchLocalNames MatchQ Material MathematicalFunctionData MathematicaNotation MathieuC MathieuCharacteristicA MathieuCharacteristicB MathieuCharacteristicExponent MathieuCPrime MathieuGroupM11 MathieuGroupM12 MathieuGroupM22 MathieuGroupM23 MathieuGroupM24 MathieuS MathieuSPrime MathMLForm MathMLText Matrices MatrixExp MatrixForm MatrixFunction MatrixLog MatrixNormalDistribution MatrixPlot MatrixPower MatrixPropertyDistribution MatrixQ MatrixRank MatrixTDistribution Max MaxBend MaxCellMeasure MaxColorDistance MaxDetect MaxDuration MaxExtraBandwidths MaxExtraConditions MaxFeatureDisplacement MaxFeatures MaxFilter MaximalBy Maximize MaxItems MaxIterations MaxLimit MaxMemoryUsed MaxMixtureKernels MaxOverlapFraction MaxPlotPoints MaxPoints MaxRecursion MaxStableDistribution MaxStepFraction MaxSteps MaxStepSize MaxTrainingRounds MaxValue MaxwellDistribution MaxWordGap McLaughlinGroupMcL Mean MeanAbsoluteLossLayer MeanAround MeanClusteringCoefficient MeanDegreeConnectivity MeanDeviation MeanFilter MeanGraphDistance MeanNeighborDegree MeanShift MeanShiftFilter MeanSquaredLossLayer Median MedianDeviation MedianFilter MedicalTestData Medium MeijerG MeijerGReduce MeixnerDistribution MellinConvolve MellinTransform MemberQ MemoryAvailable MemoryConstrained MemoryConstraint MemoryInUse MengerMesh Menu MenuAppearance MenuCommandKey MenuEvaluator MenuItem MenuList MenuPacket MenuSortingValue MenuStyle MenuView Merge MergeDifferences MergingFunction MersennePrimeExponent MersennePrimeExponentQ Mesh MeshCellCentroid MeshCellCount MeshCellHighlight MeshCellIndex MeshCellLabel MeshCellMarker MeshCellMeasure MeshCellQuality MeshCells MeshCellShapeFunction MeshCellStyle MeshCoordinates MeshFunctions MeshPrimitives MeshQualityGoal MeshRange MeshRefinementFunction MeshRegion MeshRegionQ MeshShading MeshStyle Message MessageDialog MessageList MessageName MessageObject MessageOptions MessagePacket Messages MessagesNotebook MetaCharacters MetaInformation MeteorShowerData Method MethodOptions MexicanHatWavelet MeyerWavelet Midpoint Min MinColorDistance MinDetect MineralData MinFilter MinimalBy MinimalPolynomial MinimalStateSpaceModel Minimize MinimumTimeIncrement MinIntervalSize MinkowskiQuestionMark MinLimit MinMax MinorPlanetData Minors MinRecursion MinSize MinStableDistribution Minus MinusPlus MinValue Missing MissingBehavior MissingDataMethod MissingDataRules MissingQ MissingString MissingStyle MissingValuePattern MittagLefflerE MixedFractionParts MixedGraphQ MixedMagnitude MixedRadix MixedRadixQuantity MixedUnit MixtureDistribution Mod Modal Mode Modular ModularInverse ModularLambda Module Modulus MoebiusMu Molecule MoleculeContainsQ MoleculeEquivalentQ MoleculeGraph MoleculeModify MoleculePattern MoleculePlot MoleculePlot3D MoleculeProperty MoleculeQ MoleculeValue Moment Momentary MomentConvert MomentEvaluate MomentGeneratingFunction MomentOfInertia Monday Monitor MonomialList MonomialOrder MonsterGroupM MoonPhase MoonPosition MorletWavelet MorphologicalBinarize MorphologicalBranchPoints MorphologicalComponents MorphologicalEulerNumber MorphologicalGraph MorphologicalPerimeter MorphologicalTransform MortalityData Most MountainData MouseAnnotation MouseAppearance MouseAppearanceTag MouseButtons Mouseover MousePointerNote MousePosition MovieData MovingAverage MovingMap MovingMedian MoyalDistribution Multicolumn MultiedgeStyle MultigraphQ MultilaunchWarning MultiLetterItalics MultiLetterStyle MultilineFunction Multinomial MultinomialDistribution MultinormalDistribution MultiplicativeOrder Multiplicity MultiplySides Multiselection MultivariateHypergeometricDistribution MultivariatePoissonDistribution MultivariateTDistributionN NakagamiDistribution NameQ Names NamespaceBox NamespaceBoxOptions Nand NArgMax NArgMin NBernoulliB NBodySimulation NBodySimulationData NCache NDEigensystem NDEigenvalues NDSolve NDSolveValue Nearest NearestFunction NearestNeighborGraph NearestTo NebulaData NeedCurrentFrontEndPackagePacket NeedCurrentFrontEndSymbolsPacket NeedlemanWunschSimilarity Needs Negative NegativeBinomialDistribution NegativeDefiniteMatrixQ NegativeIntegers NegativeMultinomialDistribution NegativeRationals NegativeReals NegativeSemidefiniteMatrixQ NeighborhoodData NeighborhoodGraph Nest NestedGreaterGreater NestedLessLess NestedScriptRules NestGraph NestList NestWhile NestWhileList NetAppend NetBidirectionalOperator NetChain NetDecoder NetDelete NetDrop NetEncoder NetEvaluationMode NetExtract NetFlatten NetFoldOperator NetGraph NetInformation NetInitialize NetInsert NetInsertSharedArrays NetJoin NetMapOperator NetMapThreadOperator NetMeasurements NetModel NetNestOperator NetPairEmbeddingOperator NetPort NetPortGradient NetPrepend NetRename NetReplace NetReplacePart NetSharedArray NetStateObject NetTake NetTrain NetTrainResultsObject NetworkPacketCapture NetworkPacketRecording NetworkPacketRecordingDuring NetworkPacketTrace NeumannValue NevilleThetaC NevilleThetaD NevilleThetaN NevilleThetaS NewPrimitiveStyle NExpectation Next NextCell NextDate NextPrime NextScheduledTaskTime NHoldAll NHoldFirst NHoldRest NicholsGridLines NicholsPlot NightHemisphere NIntegrate NMaximize NMaxValue NMinimize NMinValue NominalVariables NonAssociative NoncentralBetaDistribution NoncentralChiSquareDistribution NoncentralFRatioDistribution NoncentralStudentTDistribution NonCommutativeMultiply NonConstants NondimensionalizationTransform None NoneTrue NonlinearModelFit NonlinearStateSpaceModel NonlocalMeansFilter NonNegative NonNegativeIntegers NonNegativeRationals NonNegativeReals NonPositive NonPositiveIntegers NonPositiveRationals NonPositiveReals Nor NorlundB Norm Normal NormalDistribution NormalGrouping NormalizationLayer Normalize Normalized NormalizedSquaredEuclideanDistance NormalMatrixQ NormalsFunction NormFunction Not NotCongruent NotCupCap NotDoubleVerticalBar Notebook NotebookApply NotebookAutoSave NotebookClose NotebookConvertSettings NotebookCreate NotebookCreateReturnObject NotebookDefault NotebookDelete NotebookDirectory NotebookDynamicExpression NotebookEvaluate NotebookEventActions NotebookFileName NotebookFind NotebookFindReturnObject NotebookGet NotebookGetLayoutInformationPacket NotebookGetMisspellingsPacket NotebookImport NotebookInformation NotebookInterfaceObject NotebookLocate NotebookObject NotebookOpen NotebookOpenReturnObject NotebookPath NotebookPrint NotebookPut NotebookPutReturnObject NotebookRead NotebookResetGeneratedCells Notebooks NotebookSave NotebookSaveAs NotebookSelection NotebookSetupLayoutInformationPacket NotebooksMenu NotebookTemplate NotebookWrite NotElement NotEqualTilde NotExists NotGreater NotGreaterEqual NotGreaterFullEqual NotGreaterGreater NotGreaterLess NotGreaterSlantEqual NotGreaterTilde Nothing NotHumpDownHump NotHumpEqual NotificationFunction NotLeftTriangle NotLeftTriangleBar NotLeftTriangleEqual NotLess NotLessEqual NotLessFullEqual NotLessGreater NotLessLess NotLessSlantEqual NotLessTilde NotNestedGreaterGreater NotNestedLessLess NotPrecedes NotPrecedesEqual NotPrecedesSlantEqual NotPrecedesTilde NotReverseElement NotRightTriangle NotRightTriangleBar NotRightTriangleEqual NotSquareSubset NotSquareSubsetEqual NotSquareSuperset NotSquareSupersetEqual NotSubset NotSubsetEqual NotSucceeds NotSucceedsEqual NotSucceedsSlantEqual NotSucceedsTilde NotSuperset NotSupersetEqual NotTilde NotTildeEqual NotTildeFullEqual NotTildeTilde NotVerticalBar Now NoWhitespace NProbability NProduct NProductFactors NRoots NSolve NSum NSumTerms NuclearExplosionData NuclearReactorData Null NullRecords NullSpace NullWords Number NumberCompose NumberDecompose NumberExpand NumberFieldClassNumber NumberFieldDiscriminant NumberFieldFundamentalUnits NumberFieldIntegralBasis NumberFieldNormRepresentatives NumberFieldRegulator NumberFieldRootsOfUnity NumberFieldSignature NumberForm NumberFormat NumberLinePlot NumberMarks NumberMultiplier NumberPadding NumberPoint NumberQ NumberSeparator NumberSigns NumberString Numerator NumeratorDenominator NumericalOrder NumericalSort NumericArray NumericArrayQ NumericArrayType NumericFunction NumericQ NuttallWindow NValues NyquistGridLines NyquistPlotO ObservabilityGramian ObservabilityMatrix ObservableDecomposition ObservableModelQ OceanData Octahedron OddQ Off Offset OLEData On ONanGroupON Once OneIdentity Opacity OpacityFunction OpacityFunctionScaling Open OpenAppend Opener OpenerBox OpenerBoxOptions OpenerView OpenFunctionInspectorPacket Opening OpenRead OpenSpecialOptions OpenTemporary OpenWrite Operate OperatingSystem OptimumFlowData Optional OptionalElement OptionInspectorSettings OptionQ Options OptionsPacket OptionsPattern OptionValue OptionValueBox OptionValueBoxOptions Or Orange Order OrderDistribution OrderedQ Ordering OrderingBy OrderingLayer Orderless OrderlessPatternSequence OrnsteinUhlenbeckProcess Orthogonalize OrthogonalMatrixQ Out Outer OuterPolygon OuterPolyhedron OutputAutoOverwrite OutputControllabilityMatrix OutputControllableModelQ OutputForm OutputFormData OutputGrouping OutputMathEditExpression OutputNamePacket OutputResponse OutputSizeLimit OutputStream Over OverBar OverDot Overflow OverHat Overlaps Overlay OverlayBox OverlayBoxOptions Overscript OverscriptBox OverscriptBoxOptions OverTilde OverVector OverwriteTarget OwenT OwnValuesPackage PackingMethod PaddedForm Padding PaddingLayer PaddingSize PadeApproximant PadLeft PadRight PageBreakAbove PageBreakBelow PageBreakWithin PageFooterLines PageFooters PageHeaderLines PageHeaders PageHeight PageRankCentrality PageTheme PageWidth Pagination PairedBarChart PairedHistogram PairedSmoothHistogram PairedTTest PairedZTest PaletteNotebook PalettePath PalindromeQ Pane PaneBox PaneBoxOptions Panel PanelBox PanelBoxOptions Paneled PaneSelector PaneSelectorBox PaneSelectorBoxOptions PaperWidth ParabolicCylinderD ParagraphIndent ParagraphSpacing ParallelArray ParallelCombine ParallelDo Parallelepiped ParallelEvaluate Parallelization Parallelize ParallelMap ParallelNeeds Parallelogram ParallelProduct ParallelSubmit ParallelSum ParallelTable ParallelTry Parameter ParameterEstimator ParameterMixtureDistribution ParameterVariables ParametricFunction ParametricNDSolve ParametricNDSolveValue ParametricPlot ParametricPlot3D ParametricRegion ParentBox ParentCell ParentConnect ParentDirectory ParentForm Parenthesize ParentList ParentNotebook ParetoDistribution ParetoPickandsDistribution ParkData Part PartBehavior PartialCorrelationFunction PartialD ParticleAcceleratorData ParticleData Partition PartitionGranularity PartitionsP PartitionsQ PartLayer PartOfSpeech PartProtection ParzenWindow PascalDistribution PassEventsDown PassEventsUp Paste PasteAutoQuoteCharacters PasteBoxFormInlineCells PasteButton Path PathGraph PathGraphQ Pattern PatternSequence PatternTest PauliMatrix PaulWavelet Pause PausedTime PDF PeakDetect PeanoCurve PearsonChiSquareTest PearsonCorrelationTest PearsonDistribution PercentForm PerfectNumber PerfectNumberQ PerformanceGoal Perimeter PeriodicBoundaryCondition PeriodicInterpolation Periodogram PeriodogramArray Permanent Permissions PermissionsGroup PermissionsGroupMemberQ PermissionsGroups PermissionsKey PermissionsKeys PermutationCycles PermutationCyclesQ PermutationGroup PermutationLength PermutationList PermutationListQ PermutationMax PermutationMin PermutationOrder PermutationPower PermutationProduct PermutationReplace Permutations PermutationSupport Permute PeronaMalikFilter Perpendicular PerpendicularBisector PersistenceLocation PersistenceTime PersistentObject PersistentObjects PersistentValue PersonData PERTDistribution PetersenGraph PhaseMargins PhaseRange PhysicalSystemData Pi Pick PIDData PIDDerivativeFilter PIDFeedforward PIDTune Piecewise PiecewiseExpand PieChart PieChart3D PillaiTrace PillaiTraceTest PingTime Pink PitchRecognize Pivoting PixelConstrained PixelValue PixelValuePositions Placed Placeholder PlaceholderReplace Plain PlanarAngle PlanarGraph PlanarGraphQ PlanckRadiationLaw PlaneCurveData PlanetaryMoonData PlanetData PlantData Play PlayRange Plot Plot3D Plot3Matrix PlotDivision PlotJoined PlotLabel PlotLabels PlotLayout PlotLegends PlotMarkers PlotPoints PlotRange PlotRangeClipping PlotRangeClipPlanesStyle PlotRangePadding PlotRegion PlotStyle PlotTheme Pluralize Plus PlusMinus Pochhammer PodStates PodWidth Point Point3DBox Point3DBoxOptions PointBox PointBoxOptions PointFigureChart PointLegend PointSize PoissonConsulDistribution PoissonDistribution PoissonProcess PoissonWindow PolarAxes PolarAxesOrigin PolarGridLines PolarPlot PolarTicks PoleZeroMarkers PolyaAeppliDistribution PolyGamma Polygon Polygon3DBox Polygon3DBoxOptions PolygonalNumber PolygonAngle PolygonBox PolygonBoxOptions PolygonCoordinates PolygonDecomposition PolygonHoleScale PolygonIntersections PolygonScale Polyhedron PolyhedronAngle PolyhedronCoordinates PolyhedronData PolyhedronDecomposition PolyhedronGenus PolyLog PolynomialExtendedGCD PolynomialForm PolynomialGCD PolynomialLCM PolynomialMod PolynomialQ PolynomialQuotient PolynomialQuotientRemainder PolynomialReduce PolynomialRemainder Polynomials PoolingLayer PopupMenu PopupMenuBox PopupMenuBoxOptions PopupView PopupWindow Position PositionIndex Positive PositiveDefiniteMatrixQ PositiveIntegers PositiveRationals PositiveReals PositiveSemidefiniteMatrixQ PossibleZeroQ Postfix PostScript Power PowerDistribution PowerExpand PowerMod PowerModList PowerRange PowerSpectralDensity PowersRepresentations PowerSymmetricPolynomial Precedence PrecedenceForm Precedes PrecedesEqual PrecedesSlantEqual PrecedesTilde Precision PrecisionGoal PreDecrement Predict PredictionRoot PredictorFunction PredictorInformation PredictorMeasurements PredictorMeasurementsObject PreemptProtect PreferencesPath Prefix PreIncrement Prepend PrependLayer PrependTo PreprocessingRules PreserveColor PreserveImageOptions Previous PreviousCell PreviousDate PriceGraphDistribution PrimaryPlaceholder Prime PrimeNu PrimeOmega PrimePi PrimePowerQ PrimeQ Primes PrimeZetaP PrimitivePolynomialQ PrimitiveRoot PrimitiveRootList PrincipalComponents PrincipalValue Print PrintableASCIIQ PrintAction PrintForm PrintingCopies PrintingOptions PrintingPageRange PrintingStartingPageNumber PrintingStyleEnvironment Printout3D Printout3DPreviewer PrintPrecision PrintTemporary Prism PrismBox PrismBoxOptions PrivateCellOptions PrivateEvaluationOptions PrivateFontOptions PrivateFrontEndOptions PrivateKey PrivateNotebookOptions PrivatePaths Probability ProbabilityDistribution ProbabilityPlot ProbabilityPr ProbabilityScalePlot ProbitModelFit ProcessConnection ProcessDirectory ProcessEnvironment Processes ProcessEstimator ProcessInformation ProcessObject ProcessParameterAssumptions ProcessParameterQ ProcessStateDomain ProcessStatus ProcessTimeDomain Product ProductDistribution ProductLog ProgressIndicator ProgressIndicatorBox ProgressIndicatorBoxOptions Projection Prolog PromptForm ProofObject Properties Property PropertyList PropertyValue Proportion Proportional Protect Protected ProteinData Pruning PseudoInverse PsychrometricPropertyData PublicKey PublisherID PulsarData PunctuationCharacter Purple Put PutAppend Pyramid PyramidBox PyramidBoxOptionsQBinomial QFactorial QGamma QHypergeometricPFQ QnDispersion QPochhammer QPolyGamma QRDecomposition QuadraticIrrationalQ QuadraticOptimization Quantile QuantilePlot Quantity QuantityArray QuantityDistribution QuantityForm QuantityMagnitude QuantityQ QuantityUnit QuantityVariable QuantityVariableCanonicalUnit QuantityVariableDimensions QuantityVariableIdentifier QuantityVariablePhysicalQuantity Quartics QuartileDeviation Quartiles QuartileSkewness Query QueueingNetworkProcess QueueingProcess QueueProperties Quiet Quit Quotient QuotientRemainderRadialGradientImage RadialityCentrality RadicalBox RadicalBoxOptions RadioButton RadioButtonBar RadioButtonBox RadioButtonBoxOptions Radon RadonTransform RamanujanTau RamanujanTauL RamanujanTauTheta RamanujanTauZ Ramp Random RandomChoice RandomColor RandomComplex RandomEntity RandomFunction RandomGeoPosition RandomGraph RandomImage RandomInstance RandomInteger RandomPermutation RandomPoint RandomPolygon RandomPolyhedron RandomPrime RandomReal RandomSample RandomSeed RandomSeeding RandomVariate RandomWalkProcess RandomWord Range RangeFilter RangeSpecification RankedMax RankedMin RarerProbability Raster Raster3D Raster3DBox Raster3DBoxOptions RasterArray RasterBox RasterBoxOptions Rasterize RasterSize Rational RationalFunctions Rationalize Rationals Ratios RawArray RawBoxes RawData RawMedium RayleighDistribution Re Read ReadByteArray ReadLine ReadList ReadProtected ReadString Real RealAbs RealBlockDiagonalForm RealDigits RealExponent Reals RealSign Reap RecognitionPrior RecognitionThreshold Record RecordLists RecordSeparators Rectangle RectangleBox RectangleBoxOptions RectangleChart RectangleChart3D RectangularRepeatingElement RecurrenceFilter RecurrenceTable RecurringDigitsForm Red Reduce RefBox ReferenceLineStyle ReferenceMarkers ReferenceMarkerStyle Refine ReflectionMatrix ReflectionTransform Refresh RefreshRate Region RegionBinarize RegionBoundary RegionBounds RegionCentroid RegionDifference RegionDimension RegionDisjoint RegionDistance RegionDistanceFunction RegionEmbeddingDimension RegionEqual RegionFunction RegionImage RegionIntersection RegionMeasure RegionMember RegionMemberFunction RegionMoment RegionNearest RegionNearestFunction RegionPlot RegionPlot3D RegionProduct RegionQ RegionResize RegionSize RegionSymmetricDifference RegionUnion RegionWithin RegisterExternalEvaluator RegularExpression Regularization RegularlySampledQ RegularPolygon ReIm ReImLabels ReImPlot ReImStyle Reinstall RelationalDatabase RelationGraph Release ReleaseHold ReliabilityDistribution ReliefImage ReliefPlot RemoteAuthorizationCaching RemoteConnect RemoteConnectionObject RemoteFile RemoteRun RemoteRunProcess Remove RemoveAlphaChannel RemoveAsynchronousTask RemoveAudioStream RemoveBackground RemoveChannelListener RemoveChannelSubscribers Removed RemoveDiacritics RemoveInputStreamMethod RemoveOutputStreamMethod RemoveProperty RemoveScheduledTask RemoveUsers RenameDirectory RenameFile RenderAll RenderingOptions RenewalProcess RenkoChart RepairMesh Repeated RepeatedNull RepeatedString RepeatedTiming RepeatingElement Replace ReplaceAll ReplaceHeldPart ReplaceImageValue ReplaceList ReplacePart ReplacePixelValue ReplaceRepeated ReplicateLayer RequiredPhysicalQuantities Resampling ResamplingAlgorithmData ResamplingMethod Rescale RescalingTransform ResetDirectory ResetMenusPacket ResetScheduledTask ReshapeLayer Residue ResizeLayer Resolve ResourceAcquire ResourceData ResourceFunction ResourceObject ResourceRegister ResourceRemove ResourceSearch ResourceSubmissionObject ResourceSubmit ResourceSystemBase ResourceUpdate ResponseForm Rest RestartInterval Restricted Resultant ResumePacket Return ReturnEntersInput ReturnExpressionPacket ReturnInputFormPacket ReturnPacket ReturnReceiptFunction ReturnTextPacket Reverse ReverseBiorthogonalSplineWavelet ReverseElement ReverseEquilibrium ReverseGraph ReverseSort ReverseSortBy ReverseUpEquilibrium RevolutionAxis RevolutionPlot3D RGBColor RiccatiSolve RiceDistribution RidgeFilter RiemannR RiemannSiegelTheta RiemannSiegelZ RiemannXi Riffle Right RightArrow RightArrowBar RightArrowLeftArrow RightComposition RightCosetRepresentative RightDownTeeVector RightDownVector RightDownVectorBar RightTee RightTeeArrow RightTeeVector RightTriangle RightTriangleBar RightTriangleEqual RightUpDownVector RightUpTeeVector RightUpVector RightUpVectorBar RightVector RightVectorBar RiskAchievementImportance RiskReductionImportance RogersTanimotoDissimilarity RollPitchYawAngles RollPitchYawMatrix RomanNumeral Root RootApproximant RootIntervals RootLocusPlot RootMeanSquare RootOfUnityQ RootReduce Roots RootSum Rotate RotateLabel RotateLeft RotateRight RotationAction RotationBox RotationBoxOptions RotationMatrix RotationTransform Round RoundImplies RoundingRadius Row RowAlignments RowBackgrounds RowBox RowHeights RowLines RowMinHeight RowReduce RowsEqual RowSpacings RSolve RSolveValue RudinShapiro RudvalisGroupRu Rule RuleCondition RuleDelayed RuleForm RulePlot RulerUnits Run RunProcess RunScheduledTask RunThrough RuntimeAttributes RuntimeOptions RussellRaoDissimilaritySameQ SameTest SampledEntityClass SampleDepth SampledSoundFunction SampledSoundList SampleRate SamplingPeriod SARIMAProcess SARMAProcess SASTriangle SatelliteData SatisfiabilityCount SatisfiabilityInstances SatisfiableQ Saturday Save Saveable SaveAutoDelete SaveConnection SaveDefinitions SavitzkyGolayMatrix SawtoothWave Scale Scaled ScaleDivisions ScaledMousePosition ScaleOrigin ScalePadding ScaleRanges ScaleRangeStyle ScalingFunctions ScalingMatrix ScalingTransform Scan ScheduledTask ScheduledTaskActiveQ ScheduledTaskInformation ScheduledTaskInformationData ScheduledTaskObject ScheduledTasks SchurDecomposition ScientificForm ScientificNotationThreshold ScorerGi ScorerGiPrime ScorerHi ScorerHiPrime ScreenRectangle ScreenStyleEnvironment ScriptBaselineShifts ScriptForm ScriptLevel ScriptMinSize ScriptRules ScriptSizeMultipliers Scrollbars ScrollingOptions ScrollPosition SearchAdjustment SearchIndexObject SearchIndices SearchQueryString SearchResultObject Sec Sech SechDistribution SecondOrderConeOptimization SectionGrouping SectorChart SectorChart3D SectorOrigin SectorSpacing SecuredAuthenticationKey SecuredAuthenticationKeys SeedRandom Select Selectable SelectComponents SelectedCells SelectedNotebook SelectFirst Selection SelectionAnimate SelectionCell SelectionCellCreateCell SelectionCellDefaultStyle SelectionCellParentStyle SelectionCreateCell SelectionDebuggerTag SelectionDuplicateCell SelectionEvaluate SelectionEvaluateCreateCell SelectionMove SelectionPlaceholder SelectionSetStyle SelectWithContents SelfLoops SelfLoopStyle SemanticImport SemanticImportString SemanticInterpretation SemialgebraicComponentInstances SemidefiniteOptimization SendMail SendMessage Sequence SequenceAlignment SequenceAttentionLayer SequenceCases SequenceCount SequenceFold SequenceFoldList SequenceForm SequenceHold SequenceLastLayer SequenceMostLayer SequencePosition SequencePredict SequencePredictorFunction SequenceReplace SequenceRestLayer SequenceReverseLayer SequenceSplit Series SeriesCoefficient SeriesData ServiceConnect ServiceDisconnect ServiceExecute ServiceObject ServiceRequest ServiceResponse ServiceSubmit SessionSubmit SessionTime Set SetAccuracy SetAlphaChannel SetAttributes Setbacks SetBoxFormNamesPacket SetCloudDirectory SetCookies SetDelayed SetDirectory SetEnvironment SetEvaluationNotebook SetFileDate SetFileLoadingContext SetNotebookStatusLine SetOptions SetOptionsPacket SetPermissions SetPrecision SetProperty SetSecuredAuthenticationKey SetSelectedNotebook SetSharedFunction SetSharedVariable SetSpeechParametersPacket SetStreamPosition SetSystemModel SetSystemOptions Setter SetterBar SetterBox SetterBoxOptions Setting SetUsers SetValue Shading Shallow ShannonWavelet ShapiroWilkTest Share SharingList Sharpen ShearingMatrix ShearingTransform ShellRegion ShenCastanMatrix ShiftedGompertzDistribution ShiftRegisterSequence Short ShortDownArrow Shortest ShortestMatch ShortestPathFunction ShortLeftArrow ShortRightArrow ShortTimeFourier ShortTimeFourierData ShortUpArrow Show ShowAutoConvert ShowAutoSpellCheck ShowAutoStyles ShowCellBracket ShowCellLabel ShowCellTags ShowClosedCellArea ShowCodeAssist ShowContents ShowControls ShowCursorTracker ShowGroupOpenCloseIcon ShowGroupOpener ShowInvisibleCharacters ShowPageBreaks ShowPredictiveInterface ShowSelection ShowShortBoxForm ShowSpecialCharacters ShowStringCharacters ShowSyntaxStyles ShrinkingDelay ShrinkWrapBoundingBox SiderealTime SiegelTheta SiegelTukeyTest SierpinskiCurve SierpinskiMesh Sign Signature SignedRankTest SignedRegionDistance SignificanceLevel SignPadding SignTest SimilarityRules SimpleGraph SimpleGraphQ SimplePolygonQ SimplePolyhedronQ Simplex Simplify Sin Sinc SinghMaddalaDistribution SingleEvaluation SingleLetterItalics SingleLetterStyle SingularValueDecomposition SingularValueList SingularValuePlot SingularValues Sinh SinhIntegral SinIntegral SixJSymbol Skeleton SkeletonTransform SkellamDistribution Skewness SkewNormalDistribution SkinStyle Skip SliceContourPlot3D SliceDensityPlot3D SliceDistribution SliceVectorPlot3D Slider Slider2D Slider2DBox Slider2DBoxOptions SliderBox SliderBoxOptions SlideView Slot SlotSequence Small SmallCircle Smaller SmithDecomposition SmithDelayCompensator SmithWatermanSimilarity SmoothDensityHistogram SmoothHistogram SmoothHistogram3D SmoothKernelDistribution SnDispersion Snippet SnubPolyhedron SocialMediaData Socket SocketConnect SocketListen SocketListener SocketObject SocketOpen SocketReadMessage SocketReadyQ Sockets SocketWaitAll SocketWaitNext SoftmaxLayer SokalSneathDissimilarity SolarEclipse SolarSystemFeatureData SolidAngle SolidData SolidRegionQ Solve SolveAlways SolveDelayed Sort SortBy SortedBy SortedEntityClass Sound SoundAndGraphics SoundNote SoundVolume SourceLink Sow Space SpaceCurveData SpaceForm Spacer Spacings Span SpanAdjustments SpanCharacterRounding SpanFromAbove SpanFromBoth SpanFromLeft SpanLineThickness SpanMaxSize SpanMinSize SpanningCharacters SpanSymmetric SparseArray SpatialGraphDistribution SpatialMedian SpatialTransformationLayer Speak SpeakTextPacket SpearmanRankTest SpearmanRho SpeciesData SpecificityGoal SpectralLineData Spectrogram SpectrogramArray Specularity SpeechRecognize SpeechSynthesize SpellingCorrection SpellingCorrectionList SpellingDictionaries SpellingDictionariesPath SpellingOptions SpellingSuggestionsPacket Sphere SphereBox SpherePoints SphericalBesselJ SphericalBesselY SphericalHankelH1 SphericalHankelH2 SphericalHarmonicY SphericalPlot3D SphericalRegion SphericalShell SpheroidalEigenvalue SpheroidalJoiningFactor SpheroidalPS SpheroidalPSPrime SpheroidalQS SpheroidalQSPrime SpheroidalRadialFactor SpheroidalS1 SpheroidalS1Prime SpheroidalS2 SpheroidalS2Prime Splice SplicedDistribution SplineClosed SplineDegree SplineKnots SplineWeights Split SplitBy SpokenString Sqrt SqrtBox SqrtBoxOptions Square SquaredEuclideanDistance SquareFreeQ SquareIntersection SquareMatrixQ SquareRepeatingElement SquaresR SquareSubset SquareSubsetEqual SquareSuperset SquareSupersetEqual SquareUnion SquareWave SSSTriangle StabilityMargins StabilityMarginsStyle StableDistribution Stack StackBegin StackComplete StackedDateListPlot StackedListPlot StackInhibit StadiumShape StandardAtmosphereData StandardDeviation StandardDeviationFilter StandardForm Standardize Standardized StandardOceanData StandbyDistribution Star StarClusterData StarData StarGraph StartAsynchronousTask StartExternalSession StartingStepSize StartOfLine StartOfString StartProcess StartScheduledTask StartupSound StartWebSession StateDimensions StateFeedbackGains StateOutputEstimator StateResponse StateSpaceModel StateSpaceRealization StateSpaceTransform StateTransformationLinearize StationaryDistribution StationaryWaveletPacketTransform StationaryWaveletTransform StatusArea StatusCentrality StepMonitor StereochemistryElements StieltjesGamma StirlingS1 StirlingS2 StopAsynchronousTask StoppingPowerData StopScheduledTask StrataVariables StratonovichProcess StreamColorFunction StreamColorFunctionScaling StreamDensityPlot StreamMarkers StreamPlot StreamPoints StreamPosition Streams StreamScale StreamStyle String StringBreak StringByteCount StringCases StringContainsQ StringCount StringDelete StringDrop StringEndsQ StringExpression StringExtract StringForm StringFormat StringFreeQ StringInsert StringJoin StringLength StringMatchQ StringPadLeft StringPadRight StringPart StringPartition StringPosition StringQ StringRepeat StringReplace StringReplaceList StringReplacePart StringReverse StringRiffle StringRotateLeft StringRotateRight StringSkeleton StringSplit StringStartsQ StringTake StringTemplate StringToByteArray StringToStream StringTrim StripBoxes StripOnInput StripWrapperBoxes StrokeForm StructuralImportance StructuredArray StructuredSelection StruveH StruveL Stub StudentTDistribution Style StyleBox StyleBoxAutoDelete StyleData StyleDefinitions StyleForm StyleHints StyleKeyMapping StyleMenuListing StyleNameDialogSettings StyleNames StylePrint StyleSheetPath Subdivide Subfactorial Subgraph SubMinus SubPlus SubresultantPolynomialRemainders SubresultantPolynomials Subresultants Subscript SubscriptBox SubscriptBoxOptions Subscripted Subsequences Subset SubsetEqual SubsetMap SubsetQ Subsets SubStar SubstitutionSystem Subsuperscript SubsuperscriptBox SubsuperscriptBoxOptions Subtract SubtractFrom SubtractSides SubValues Succeeds SucceedsEqual SucceedsSlantEqual SucceedsTilde Success SuchThat Sum SumConvergence SummationLayer Sunday SunPosition Sunrise Sunset SuperDagger SuperMinus SupernovaData SuperPlus Superscript SuperscriptBox SuperscriptBoxOptions Superset SupersetEqual SuperStar Surd SurdForm SurfaceArea SurfaceColor SurfaceData SurfaceGraphics SurvivalDistribution SurvivalFunction SurvivalModel SurvivalModelFit SuspendPacket SuzukiDistribution SuzukiGroupSuz SwatchLegend Switch Symbol SymbolName SymletWavelet Symmetric SymmetricGroup SymmetricKey SymmetricMatrixQ SymmetricPolynomial SymmetricReduction Symmetrize SymmetrizedArray SymmetrizedArrayRules SymmetrizedDependentComponents SymmetrizedIndependentComponents SymmetrizedReplacePart SynchronousInitialization SynchronousUpdating Synonyms Syntax SyntaxForm SyntaxInformation SyntaxLength SyntaxPacket SyntaxQ SynthesizeMissingValues SystemDialogInput SystemException SystemGet SystemHelpPath SystemInformation SystemInformationData SystemInstall SystemModel SystemModeler SystemModelExamples SystemModelLinearize SystemModelParametricSimulate SystemModelPlot SystemModelProgressReporting SystemModelReliability SystemModels SystemModelSimulate SystemModelSimulateSensitivity SystemModelSimulationData SystemOpen SystemOptions SystemProcessData SystemProcesses SystemsConnectionsModel SystemsModelDelay SystemsModelDelayApproximate SystemsModelDelete SystemsModelDimensions SystemsModelExtract SystemsModelFeedbackConnect SystemsModelLabels SystemsModelLinearity SystemsModelMerge SystemsModelOrder SystemsModelParallelConnect SystemsModelSeriesConnect SystemsModelStateFeedbackConnect SystemsModelVectorRelativeOrders SystemStub SystemTestTab TabFilling Table TableAlignments TableDepth TableDirections TableForm TableHeadings TableSpacing TableView TableViewBox TableViewBoxBackground TableViewBoxOptions TabSpacings TabView TabViewBox TabViewBoxOptions TagBox TagBoxNote TagBoxOptions TaggingRules TagSet TagSetDelayed TagStyle TagUnset Take TakeDrop TakeLargest TakeLargestBy TakeList TakeSmallest TakeSmallestBy TakeWhile Tally Tan Tanh TargetDevice TargetFunctions TargetSystem TargetUnits TaskAbort TaskExecute TaskObject TaskRemove TaskResume Tasks TaskSuspend TaskWait TautologyQ TelegraphProcess TemplateApply TemplateArgBox TemplateBox TemplateBoxOptions TemplateEvaluate TemplateExpression TemplateIf TemplateObject TemplateSequence TemplateSlot TemplateSlotSequence TemplateUnevaluated TemplateVerbatim TemplateWith TemporalData TemporalRegularity Temporary TemporaryVariable TensorContract TensorDimensions TensorExpand TensorProduct TensorQ TensorRank TensorReduce TensorSymmetry TensorTranspose TensorWedge TestID TestReport TestReportObject TestResultObject Tetrahedron TetrahedronBox TetrahedronBoxOptions TeXForm TeXSave Text Text3DBox Text3DBoxOptions TextAlignment TextBand TextBoundingBox TextBox TextCases TextCell TextClipboardType TextContents TextData TextElement TextForm TextGrid TextJustification TextLine TextPacket TextParagraph TextPosition TextRecognize TextSearch TextSearchReport TextSentences TextString TextStructure TextStyle TextTranslation Texture TextureCoordinateFunction TextureCoordinateScaling TextWords Therefore ThermodynamicData ThermometerGauge Thick Thickness Thin Thinning ThisLink ThompsonGroupTh Thread ThreadingLayer ThreeJSymbol Threshold Through Throw ThueMorse Thumbnail Thursday Ticks TicksStyle TideData Tilde TildeEqual TildeFullEqual TildeTilde TimeConstrained TimeConstraint TimeDirection TimeFormat TimeGoal TimelinePlot TimeObject TimeObjectQ Times TimesBy TimeSeries TimeSeriesAggregate TimeSeriesForecast TimeSeriesInsert TimeSeriesInvertibility TimeSeriesMap TimeSeriesMapThread TimeSeriesModel TimeSeriesModelFit TimeSeriesResample TimeSeriesRescale TimeSeriesShift TimeSeriesThread TimeSeriesWindow TimeUsed TimeValue TimeWarpingCorrespondence TimeWarpingDistance TimeZone TimeZoneConvert TimeZoneOffset Timing Tiny TitleGrouping TitsGroupT ToBoxes ToCharacterCode ToColor ToContinuousTimeModel ToDate Today ToDiscreteTimeModel ToEntity ToeplitzMatrix ToExpression ToFileName Together Toggle ToggleFalse Toggler TogglerBar TogglerBox TogglerBoxOptions ToHeldExpression ToInvertibleTimeSeries TokenWords Tolerance ToLowerCase Tomorrow ToNumberField TooBig Tooltip TooltipBox TooltipBoxOptions TooltipDelay TooltipStyle Top TopHatTransform ToPolarCoordinates TopologicalSort ToRadicals ToRules ToSphericalCoordinates ToString Total TotalHeight TotalLayer TotalVariationFilter TotalWidth TouchPosition TouchscreenAutoZoom TouchscreenControlPlacement ToUpperCase Tr Trace TraceAbove TraceAction TraceBackward TraceDepth TraceDialog TraceForward TraceInternal TraceLevel TraceOff TraceOn TraceOriginal TracePrint TraceScan TrackedSymbols TrackingFunction TracyWidomDistribution TradingChart TraditionalForm TraditionalFunctionNotation TraditionalNotation TraditionalOrder TrainingProgressCheckpointing TrainingProgressFunction TrainingProgressMeasurements TrainingProgressReporting TrainingStoppingCriterion TransferFunctionCancel TransferFunctionExpand TransferFunctionFactor TransferFunctionModel TransferFunctionPoles TransferFunctionTransform TransferFunctionZeros TransformationClass TransformationFunction TransformationFunctions TransformationMatrix TransformedDistribution TransformedField TransformedProcess TransformedRegion TransitionDirection TransitionDuration TransitionEffect TransitiveClosureGraph TransitiveReductionGraph Translate TranslationOptions TranslationTransform Transliterate Transparent TransparentColor Transpose TransposeLayer TrapSelection TravelDirections TravelDirectionsData TravelDistance TravelDistanceList TravelMethod TravelTime TreeForm TreeGraph TreeGraphQ TreePlot TrendStyle Triangle TriangleCenter TriangleConstruct TriangleMeasurement TriangleWave TriangularDistribution TriangulateMesh Trig TrigExpand TrigFactor TrigFactorList Trigger TrigReduce TrigToExp TrimmedMean TrimmedVariance TropicalStormData True TrueQ TruncatedDistribution TruncatedPolyhedron TsallisQExponentialDistribution TsallisQGaussianDistribution TTest Tube TubeBezierCurveBox TubeBezierCurveBoxOptions TubeBox TubeBoxOptions TubeBSplineCurveBox TubeBSplineCurveBoxOptions Tuesday TukeyLambdaDistribution TukeyWindow TunnelData Tuples TuranGraph TuringMachine TuttePolynomial TwoWayRule Typed TypeSpecifierUnateQ Uncompress UnconstrainedParameters Undefined UnderBar Underflow Underlined Underoverscript UnderoverscriptBox UnderoverscriptBoxOptions Underscript UnderscriptBox UnderscriptBoxOptions UnderseaFeatureData UndirectedEdge UndirectedGraph UndirectedGraphQ UndoOptions UndoTrackedVariables Unequal UnequalTo Unevaluated UniformDistribution UniformGraphDistribution UniformPolyhedron UniformSumDistribution Uninstall Union UnionPlus Unique UnitaryMatrixQ UnitBox UnitConvert UnitDimensions Unitize UnitRootTest UnitSimplify UnitStep UnitSystem UnitTriangle UnitVector UnitVectorLayer UnityDimensions UniverseModelData UniversityData UnixTime Unprotect UnregisterExternalEvaluator UnsameQ UnsavedVariables Unset UnsetShared UntrackedVariables Up UpArrow UpArrowBar UpArrowDownArrow Update UpdateDynamicObjects UpdateDynamicObjectsSynchronous UpdateInterval UpdateSearchIndex UpDownArrow UpEquilibrium UpperCaseQ UpperLeftArrow UpperRightArrow UpperTriangularize UpperTriangularMatrixQ Upsample UpSet UpSetDelayed UpTee UpTeeArrow UpTo UpValues URL URLBuild URLDecode URLDispatcher URLDownload URLDownloadSubmit URLEncode URLExecute URLExpand URLFetch URLFetchAsynchronous URLParse URLQueryDecode URLQueryEncode URLRead URLResponseTime URLSave URLSaveAsynchronous URLShorten URLSubmit UseGraphicsRange UserDefinedWavelet Using UsingFrontEnd UtilityFunctionV2Get ValenceErrorHandling ValidationLength ValidationSet Value ValueBox ValueBoxOptions ValueDimensions ValueForm ValuePreprocessingFunction ValueQ Values ValuesData Variables Variance VarianceEquivalenceTest VarianceEstimatorFunction VarianceGammaDistribution VarianceTest VectorAngle VectorAround VectorColorFunction VectorColorFunctionScaling VectorDensityPlot VectorGlyphData VectorGreater VectorGreaterEqual VectorLess VectorLessEqual VectorMarkers VectorPlot VectorPlot3D VectorPoints VectorQ Vectors VectorScale VectorStyle Vee Verbatim Verbose VerboseConvertToPostScriptPacket VerificationTest VerifyConvergence VerifyDerivedKey VerifyDigitalSignature VerifyInterpretation VerifySecurityCertificates VerifySolutions VerifyTestAssumptions Version VersionNumber VertexAdd VertexCapacity VertexColors VertexComponent VertexConnectivity VertexContract VertexCoordinateRules VertexCoordinates VertexCorrelationSimilarity VertexCosineSimilarity VertexCount VertexCoverQ VertexDataCoordinates VertexDegree VertexDelete VertexDiceSimilarity VertexEccentricity VertexInComponent VertexInDegree VertexIndex VertexJaccardSimilarity VertexLabeling VertexLabels VertexLabelStyle VertexList VertexNormals VertexOutComponent VertexOutDegree VertexQ VertexRenderingFunction VertexReplace VertexShape VertexShapeFunction VertexSize VertexStyle VertexTextureCoordinates VertexWeight VertexWeightedGraphQ Vertical VerticalBar VerticalForm VerticalGauge VerticalSeparator VerticalSlider VerticalTilde ViewAngle ViewCenter ViewMatrix ViewPoint ViewPointSelectorSettings ViewPort ViewProjection ViewRange ViewVector ViewVertical VirtualGroupData Visible VisibleCell VoiceStyleData VoigtDistribution VolcanoData Volume VonMisesDistribution VoronoiMeshWaitAll WaitAsynchronousTask WaitNext WaitUntil WakebyDistribution WalleniusHypergeometricDistribution WaringYuleDistribution WarpingCorrespondence WarpingDistance WatershedComponents WatsonUSquareTest WattsStrogatzGraphDistribution WaveletBestBasis WaveletFilterCoefficients WaveletImagePlot WaveletListPlot WaveletMapIndexed WaveletMatrixPlot WaveletPhi WaveletPsi WaveletScale WaveletScalogram WaveletThreshold WeaklyConnectedComponents WeaklyConnectedGraphComponents WeaklyConnectedGraphQ WeakStationarity WeatherData WeatherForecastData WebAudioSearch WebElementObject WeberE WebExecute WebImage WebImageSearch WebSearch WebSessionObject WebSessions WebWindowObject Wedge Wednesday WeibullDistribution WeierstrassE1 WeierstrassE2 WeierstrassE3 WeierstrassEta1 WeierstrassEta2 WeierstrassEta3 WeierstrassHalfPeriods WeierstrassHalfPeriodW1 WeierstrassHalfPeriodW2 WeierstrassHalfPeriodW3 WeierstrassInvariantG2 WeierstrassInvariantG3 WeierstrassInvariants WeierstrassP WeierstrassPPrime WeierstrassSigma WeierstrassZeta WeightedAdjacencyGraph WeightedAdjacencyMatrix WeightedData WeightedGraphQ Weights WelchWindow WheelGraph WhenEvent Which While White WhiteNoiseProcess WhitePoint Whitespace WhitespaceCharacter WhittakerM WhittakerW WienerFilter WienerProcess WignerD WignerSemicircleDistribution WikipediaData WikipediaSearch WilksW WilksWTest WindDirectionData WindingCount WindingPolygon WindowClickSelect WindowElements WindowFloating WindowFrame WindowFrameElements WindowMargins WindowMovable WindowOpacity WindowPersistentStyles WindowSelected WindowSize WindowStatusArea WindowTitle WindowToolbars WindowWidth WindSpeedData WindVectorData WinsorizedMean WinsorizedVariance WishartMatrixDistribution With WolframAlpha WolframAlphaDate WolframAlphaQuantity WolframAlphaResult WolframLanguageData Word WordBoundary WordCharacter WordCloud WordCount WordCounts WordData WordDefinition WordFrequency WordFrequencyData WordList WordOrientation WordSearch WordSelectionFunction WordSeparators WordSpacings WordStem WordTranslation WorkingPrecision WrapAround Write WriteLine WriteString WronskianXMLElement XMLObject XMLTemplate Xnor Xor XYZColorYellow Yesterday YuleDissimilarityZernikeR ZeroSymmetric ZeroTest ZeroWidthTimes Zeta ZetaZero ZIPCodeData ZipfDistribution ZoomCenter ZoomFactor ZTest ZTransform$Aborted $ActivationGroupID $ActivationKey $ActivationUserRegistered $AddOnsDirectory $AllowExternalChannelFunctions $AssertFunction $Assumptions $AsynchronousTask $AudioInputDevices $AudioOutputDevices $BaseDirectory $BatchInput $BatchOutput $BlockchainBase $BoxForms $ByteOrdering $CacheBaseDirectory $Canceled $ChannelBase $CharacterEncoding $CharacterEncodings $CloudBase $CloudConnected $CloudCreditsAvailable $CloudEvaluation $CloudExpressionBase $CloudObjectNameFormat $CloudObjectURLType $CloudRootDirectory $CloudSymbolBase $CloudUserID $CloudUserUUID $CloudVersion $CloudVersionNumber $CloudWolframEngineVersionNumber $CommandLine $CompilationTarget $ConditionHold $ConfiguredKernels $Context $ContextPath $ControlActiveSetting $Cookies $CookieStore $CreationDate $CurrentLink $CurrentTask $CurrentWebSession $DateStringFormat $DefaultAudioInputDevice $DefaultAudioOutputDevice $DefaultFont $DefaultFrontEnd $DefaultImagingDevice $DefaultLocalBase $DefaultMailbox $DefaultNetworkInterface $DefaultPath $Display $DisplayFunction $DistributedContexts $DynamicEvaluation $Echo $EmbedCodeEnvironments $EmbeddableServices $EntityStores $Epilog $EvaluationCloudBase $EvaluationCloudObject $EvaluationEnvironment $ExportFormats $Failed $FinancialDataSource $FontFamilies $FormatType $FrontEnd $FrontEndSession $GeoEntityTypes $GeoLocation $GeoLocationCity $GeoLocationCountry $GeoLocationPrecision $GeoLocationSource $HistoryLength $HomeDirectory $HTMLExportRules $HTTPCookies $HTTPRequest $IgnoreEOF $ImageFormattingWidth $ImagingDevice $ImagingDevices $ImportFormats $IncomingMailSettings $InitialDirectory $Initialization $InitializationContexts $Input $InputFileName $InputStreamMethods $Inspector $InstallationDate $InstallationDirectory $InterfaceEnvironment $InterpreterTypes $IterationLimit $KernelCount $KernelID $Language $LaunchDirectory $LibraryPath $LicenseExpirationDate $LicenseID $LicenseProcesses $LicenseServer $LicenseSubprocesses $LicenseType $Line $Linked $LinkSupported $LoadedFiles $LocalBase $LocalSymbolBase $MachineAddresses $MachineDomain $MachineDomains $MachineEpsilon $MachineID $MachineName $MachinePrecision $MachineType $MaxExtraPrecision $MaxLicenseProcesses $MaxLicenseSubprocesses $MaxMachineNumber $MaxNumber $MaxPiecewiseCases $MaxPrecision $MaxRootDegree $MessageGroups $MessageList $MessagePrePrint $Messages $MinMachineNumber $MinNumber $MinorReleaseNumber $MinPrecision $MobilePhone $ModuleNumber $NetworkConnected $NetworkInterfaces $NetworkLicense $NewMessage $NewSymbol $Notebooks $NoValue $NumberMarks $Off $OperatingSystem $Output $OutputForms $OutputSizeLimit $OutputStreamMethods $Packages $ParentLink $ParentProcessID $PasswordFile $PatchLevelID $Path $PathnameSeparator $PerformanceGoal $Permissions $PermissionsGroupBase $PersistenceBase $PersistencePath $PipeSupported $PlotTheme $Post $Pre $PreferencesDirectory $PreInitialization $PrePrint $PreRead $PrintForms $PrintLiteral $Printout3DPreviewer $ProcessID $ProcessorCount $ProcessorType $ProductInformation $ProgramName $PublisherID $RandomState $RecursionLimit $RegisteredDeviceClasses $RegisteredUserName $ReleaseNumber $RequesterAddress $RequesterWolframID $RequesterWolframUUID $ResourceSystemBase $RootDirectory $ScheduledTask $ScriptCommandLine $ScriptInputString $SecuredAuthenticationKeyTokens $ServiceCreditsAvailable $Services $SessionID $SetParentLink $SharedFunctions $SharedVariables $SoundDisplay $SoundDisplayFunction $SourceLink $SSHAuthentication $SummaryBoxDataSizeLimit $SuppressInputFormHeads $SynchronousEvaluation $SyntaxHandler $System $SystemCharacterEncoding $SystemID $SystemMemory $SystemShell $SystemTimeZone $SystemWordLength $TemplatePath $TemporaryDirectory $TemporaryPrefix $TestFileName $TextStyle $TimedOut $TimeUnit $TimeZone $TimeZoneEntity $TopDirectory $TraceOff $TraceOn $TracePattern $TracePostAction $TracePreAction $UnitSystem $Urgent $UserAddOnsDirectory $UserAgentLanguages $UserAgentMachine $UserAgentName $UserAgentOperatingSystem $UserAgentString $UserAgentVersion $UserBaseDirectory $UserDocumentsDirectory $Username $UserName $UserURLBase $Version $VersionNumber $VoiceStyles $WolframID $WolframUUID\",c:[e.C(\"\\\\(\\\\*\",\"\\\\*\\\\)\",{c:[\"self\"]}),e.QSM,e.CNM]}});hljs.registerLanguage(\"vim\",function(e){return{l:/[!#@\\w]+/,k:{keyword:\"N|0 P|0 X|0 a|0 ab abc abo al am an|0 ar arga argd arge argdo argg argl argu as au aug aun b|0 bN ba bad bd be bel bf bl bm bn bo bp br brea breaka breakd breakl bro bufdo buffers bun bw c|0 cN cNf ca cabc caddb cad caddf cal cat cb cc ccl cd ce cex cf cfir cgetb cgete cg changes chd che checkt cl cla clo cm cmapc cme cn cnew cnf cno cnorea cnoreme co col colo com comc comp con conf cope cp cpf cq cr cs cst cu cuna cunme cw delm deb debugg delc delf dif diffg diffo diffp diffpu diffs diffthis dig di dl dell dj dli do doautoa dp dr ds dsp e|0 ea ec echoe echoh echom echon el elsei em en endfo endf endt endw ene ex exe exi exu f|0 files filet fin fina fini fir fix fo foldc foldd folddoc foldo for fu go gr grepa gu gv ha helpf helpg helpt hi hid his ia iabc if ij il im imapc ime ino inorea inoreme int is isp iu iuna iunme j|0 ju k|0 keepa kee keepj lN lNf l|0 lad laddb laddf la lan lat lb lc lch lcl lcs le lefta let lex lf lfir lgetb lgete lg lgr lgrepa lh ll lla lli lmak lm lmapc lne lnew lnf ln loadk lo loc lockv lol lope lp lpf lr ls lt lu lua luad luaf lv lvimgrepa lw m|0 ma mak map mapc marks mat me menut mes mk mks mksp mkv mkvie mod mz mzf nbc nb nbs new nm nmapc nme nn nnoreme noa no noh norea noreme norm nu nun nunme ol o|0 om omapc ome on ono onoreme opt ou ounme ow p|0 profd prof pro promptr pc ped pe perld po popu pp pre prev ps pt ptN ptf ptj ptl ptn ptp ptr pts pu pw py3 python3 py3d py3f py pyd pyf quita qa rec red redi redr redraws reg res ret retu rew ri rightb rub rubyd rubyf rund ru rv sN san sa sal sav sb sbN sba sbf sbl sbm sbn sbp sbr scrip scripte scs se setf setg setl sf sfir sh sim sig sil sl sla sm smap smapc sme sn sni sno snor snoreme sor so spelld spe spelli spellr spellu spellw sp spr sre st sta startg startr star stopi stj sts sun sunm sunme sus sv sw sy synti sync tN tabN tabc tabdo tabe tabf tabfir tabl tabm tabnew tabn tabo tabp tabr tabs tab ta tags tc tcld tclf te tf th tj tl tm tn to tp tr try ts tu u|0 undoj undol una unh unl unlo unm unme uns up ve verb vert vim vimgrepa vi viu vie vm vmapc vme vne vn vnoreme vs vu vunme windo w|0 wN wa wh wi winc winp wn wp wq wqa ws wu wv x|0 xa xmapc xm xme xn xnoreme xu xunme y|0 z|0 ~ Next Print append abbreviate abclear aboveleft all amenu anoremenu args argadd argdelete argedit argglobal arglocal argument ascii autocmd augroup aunmenu buffer bNext ball badd bdelete behave belowright bfirst blast bmodified bnext botright bprevious brewind break breakadd breakdel breaklist browse bunload bwipeout change cNext cNfile cabbrev cabclear caddbuffer caddexpr caddfile call catch cbuffer cclose center cexpr cfile cfirst cgetbuffer cgetexpr cgetfile chdir checkpath checktime clist clast close cmap cmapclear cmenu cnext cnewer cnfile cnoremap cnoreabbrev cnoremenu copy colder colorscheme command comclear compiler continue confirm copen cprevious cpfile cquit crewind cscope cstag cunmap cunabbrev cunmenu cwindow delete delmarks debug debuggreedy delcommand delfunction diffupdate diffget diffoff diffpatch diffput diffsplit digraphs display deletel djump dlist doautocmd doautoall deletep drop dsearch dsplit edit earlier echo echoerr echohl echomsg else elseif emenu endif endfor endfunction endtry endwhile enew execute exit exusage file filetype find finally finish first fixdel fold foldclose folddoopen folddoclosed foldopen function global goto grep grepadd gui gvim hardcopy help helpfind helpgrep helptags highlight hide history insert iabbrev iabclear ijump ilist imap imapclear imenu inoremap inoreabbrev inoremenu intro isearch isplit iunmap iunabbrev iunmenu join jumps keepalt keepmarks keepjumps lNext lNfile list laddexpr laddbuffer laddfile last language later lbuffer lcd lchdir lclose lcscope left leftabove lexpr lfile lfirst lgetbuffer lgetexpr lgetfile lgrep lgrepadd lhelpgrep llast llist lmake lmap lmapclear lnext lnewer lnfile lnoremap loadkeymap loadview lockmarks lockvar lolder lopen lprevious lpfile lrewind ltag lunmap luado luafile lvimgrep lvimgrepadd lwindow move mark make mapclear match menu menutranslate messages mkexrc mksession mkspell mkvimrc mkview mode mzscheme mzfile nbclose nbkey nbsart next nmap nmapclear nmenu nnoremap nnoremenu noautocmd noremap nohlsearch noreabbrev noremenu normal number nunmap nunmenu oldfiles open omap omapclear omenu only onoremap onoremenu options ounmap ounmenu ownsyntax print profdel profile promptfind promptrepl pclose pedit perl perldo pop popup ppop preserve previous psearch ptag ptNext ptfirst ptjump ptlast ptnext ptprevious ptrewind ptselect put pwd py3do py3file python pydo pyfile quit quitall qall read recover redo redir redraw redrawstatus registers resize retab return rewind right rightbelow ruby rubydo rubyfile rundo runtime rviminfo substitute sNext sandbox sargument sall saveas sbuffer sbNext sball sbfirst sblast sbmodified sbnext sbprevious sbrewind scriptnames scriptencoding scscope set setfiletype setglobal setlocal sfind sfirst shell simalt sign silent sleep slast smagic smapclear smenu snext sniff snomagic snoremap snoremenu sort source spelldump spellgood spellinfo spellrepall spellundo spellwrong split sprevious srewind stop stag startgreplace startreplace startinsert stopinsert stjump stselect sunhide sunmap sunmenu suspend sview swapname syntax syntime syncbind tNext tabNext tabclose tabedit tabfind tabfirst tablast tabmove tabnext tabonly tabprevious tabrewind tag tcl tcldo tclfile tearoff tfirst throw tjump tlast tmenu tnext topleft tprevious trewind tselect tunmenu undo undojoin undolist unabbreviate unhide unlet unlockvar unmap unmenu unsilent update vglobal version verbose vertical vimgrep vimgrepadd visual viusage view vmap vmapclear vmenu vnew vnoremap vnoremenu vsplit vunmap vunmenu write wNext wall while winsize wincmd winpos wnext wprevious wqall wsverb wundo wviminfo xit xall xmapclear xmap xmenu xnoremap xnoremenu xunmap xunmenu yank\",built_in:\"synIDtrans atan2 range matcharg did_filetype asin feedkeys xor argv complete_check add getwinposx getqflist getwinposy screencol clearmatches empty extend getcmdpos mzeval garbagecollect setreg ceil sqrt diff_hlID inputsecret get getfperm getpid filewritable shiftwidth max sinh isdirectory synID system inputrestore winline atan visualmode inputlist tabpagewinnr round getregtype mapcheck hasmapto histdel argidx findfile sha256 exists toupper getcmdline taglist string getmatches bufnr strftime winwidth bufexists strtrans tabpagebuflist setcmdpos remote_read printf setloclist getpos getline bufwinnr float2nr len getcmdtype diff_filler luaeval resolve libcallnr foldclosedend reverse filter has_key bufname str2float strlen setline getcharmod setbufvar index searchpos shellescape undofile foldclosed setqflist buflisted strchars str2nr virtcol floor remove undotree remote_expr winheight gettabwinvar reltime cursor tabpagenr finddir localtime acos getloclist search tanh matchend rename gettabvar strdisplaywidth type abs py3eval setwinvar tolower wildmenumode log10 spellsuggest bufloaded synconcealed nextnonblank server2client complete settabwinvar executable input wincol setmatches getftype hlID inputsave searchpair or screenrow line settabvar histadd deepcopy strpart remote_peek and eval getftime submatch screenchar winsaveview matchadd mkdir screenattr getfontname libcall reltimestr getfsize winnr invert pow getbufline byte2line soundfold repeat fnameescape tagfiles sin strwidth spellbadword trunc maparg log lispindent hostname setpos globpath remote_foreground getchar synIDattr fnamemodify cscope_connection stridx winbufnr indent min complete_add nr2char searchpairpos inputdialog values matchlist items hlexists strridx browsedir expand fmod pathshorten line2byte argc count getwinvar glob foldtextresult getreg foreground cosh matchdelete has char2nr simplify histget searchdecl iconv winrestcmd pumvisible writefile foldlevel haslocaldir keys cos matchstr foldtext histnr tan tempname getcwd byteidx getbufvar islocked escape eventhandler remote_send serverlist winrestview synstack pyeval prevnonblank readfile cindent filereadable changenr exp\"},i:/;/,c:[e.NM,{cN:\"string\",b:\"'\",e:\"'\",i:\"\\\\n\"},{cN:\"string\",b:/\"(\\\\\"|\\n\\\\|[^\"\\n])*\"/},e.C('\"',\"$\"),{cN:\"variable\",b:/[bwtglsav]:[\\w\\d_]*/},{cN:\"function\",bK:\"function function!\",e:\"$\",relevance:0,c:[e.TM,{cN:\"params\",b:\"\\\\(\",e:\"\\\\)\"}]},{cN:\"symbol\",b:/<[\\w-]+>/}]}});hljs.registerLanguage(\"makefile\",function(e){var i={cN:\"variable\",v:[{b:\"\\\\$\\\\(\"+e.UIR+\"\\\\)\",c:[e.BE]},{b:/\\$[@%<?\\^\\+\\*]/}]},r={cN:\"string\",b:/\"/,e:/\"/,c:[e.BE,i]},a={cN:\"variable\",b:/\\$\\([\\w-]+\\s/,e:/\\)/,k:{built_in:\"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value\"},c:[i]},n={b:\"^\"+e.UIR+\"\\\\s*(?=[:+?]?=)\"},t={cN:\"section\",b:/^[^\\s]+:/,e:/$/,c:[i]};return{aliases:[\"mk\",\"mak\"],k:\"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath\",l:/[\\w-]+/,c:[e.HCM,i,r,a,n,{cN:\"meta\",b:/^\\.PHONY:/,e:/$/,k:{\"meta-keyword\":\".PHONY\"},l:/[\\.\\w]+/},t]}});hljs.registerLanguage(\"objectivec\",function(e){var t=/[a-zA-Z@][a-zA-Z0-9_]*/,i=\"@interface @class @protocol @implementation\";return{aliases:[\"mm\",\"objc\",\"obj-c\"],k:{keyword:\"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN\",literal:\"false true FALSE TRUE nil YES NO NULL\",built_in:\"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once\"},l:t,i:\"</\",c:[{cN:\"built_in\",b:\"\\\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\\\w+\"},e.CLCM,e.CBCM,e.CNM,e.QSM,e.ASM,{cN:\"string\",v:[{b:'@\"',e:'\"',i:\"\\\\n\",c:[e.BE]}]},{cN:\"meta\",b:/#\\s*[a-z]+\\b/,e:/$/,k:{\"meta-keyword\":\"if else elif endif define undef warning error line pragma ifdef ifndef include\"},c:[{b:/\\\\\\n/,relevance:0},e.inherit(e.QSM,{cN:\"meta-string\"}),{cN:\"meta-string\",b:/<.*?>/,e:/$/,i:\"\\\\n\"},e.CLCM,e.CBCM]},{cN:\"class\",b:\"(\"+i.split(\" \").join(\"|\")+\")\\\\b\",e:\"({|$)\",eE:!0,k:i,l:t,c:[e.UTM]},{b:\"\\\\.\"+e.UIR,relevance:0}]}});hljs.registerLanguage(\"shell\",function(s){return{aliases:[\"console\"],c:[{cN:\"meta\",b:\"^\\\\s{0,3}[/\\\\w\\\\d\\\\[\\\\]()@-]*[>%$#]\",starts:{e:\"$\",sL:\"bash\"}}]}});hljs.registerLanguage(\"erlang\",function(e){var r=\"[a-z'][a-zA-Z0-9_']*\",c=\"(\"+r+\":\"+r+\"|\"+r+\")\",n={keyword:\"after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun if let not of orelse|10 query receive rem try when xor\",literal:\"false true\"},a=e.C(\"%\",\"$\"),b={cN:\"number\",b:\"\\\\b(\\\\d+#[a-fA-F0-9]+|\\\\d+(\\\\.\\\\d+)?([eE][-+]?\\\\d+)?)\",relevance:0},i={b:\"fun\\\\s+\"+r+\"/\\\\d+\"},l={b:c+\"\\\\(\",e:\"\\\\)\",rB:!0,relevance:0,c:[{b:c,relevance:0},{b:\"\\\\(\",e:\"\\\\)\",eW:!0,rE:!0,relevance:0}]},d={b:\"{\",e:\"}\",relevance:0},o={b:\"\\\\b_([A-Z][A-Za-z0-9_]*)?\",relevance:0},t={b:\"[A-Z][a-zA-Z0-9_]*\",relevance:0},v={b:\"#\"+e.UIR,relevance:0,rB:!0,c:[{b:\"#\"+e.UIR,relevance:0},{b:\"{\",e:\"}\",relevance:0}]},f={bK:\"fun receive if try case\",e:\"end\",k:n};f.c=[a,i,e.inherit(e.ASM,{cN:\"\"}),f,l,e.QSM,b,d,o,t,v];var s=[a,i,f,l,e.QSM,b,d,o,t,v];l.c[1].c=s,d.c=s;var u={cN:\"params\",b:\"\\\\(\",e:\"\\\\)\",c:v.c[1].c=s};return{aliases:[\"erl\"],k:n,i:\"(</|\\\\*=|\\\\+=|-=|/\\\\*|\\\\*/|\\\\(\\\\*|\\\\*\\\\))\",c:[{cN:\"function\",b:\"^\"+r+\"\\\\s*\\\\(\",e:\"->\",rB:!0,i:\"\\\\(|#|//|/\\\\*|\\\\\\\\|:|;\",c:[u,e.inherit(e.TM,{b:r})],starts:{e:\";|\\\\.\",k:n,c:s}},a,{b:\"^-\",e:\"\\\\.\",relevance:0,eE:!0,rB:!0,l:\"-\"+e.IR,k:\"-module -record -undef -export -ifdef -ifndef -author -copyright -doc -vsn -import -include -include_lib -compile -define -else -endif -file -behaviour -behavior -spec\",c:[u]},b,e.QSM,v,o,t,d,{b:/\\.$/}]}});hljs.registerLanguage(\"powershell\",function(e){var t={keyword:\"if else foreach return do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch hidden static parameter\"},n={b:\"`[\\\\s\\\\S]\",relevance:0},c={cN:\"variable\",v:[{b:/\\$\\B/},{cN:\"keyword\",b:/\\$this/},{b:/\\$[\\w\\d][\\w\\d_:]*/}]},i={cN:\"string\",v:[{b:/\"/,e:/\"/},{b:/@\"/,e:/^\"@/}],c:[n,c,{cN:\"variable\",b:/\\$[A-z]/,e:/[^A-z]/}]},a={cN:\"string\",v:[{b:/'/,e:/'/},{b:/@'/,e:/^'@/}]},r=e.inherit(e.C(null,null),{v:[{b:/#/,e:/$/},{b:/<#/,e:/#>/}],c:[{cN:\"doctag\",v:[{b:/\\.(synopsis|description|example|inputs|outputs|notes|link|component|role|functionality)/},{b:/\\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\\s+\\S+/}]}]}),o={cN:\"built_in\",v:[{b:\"(\".concat(\"Add|Clear|Close|Copy|Enter|Exit|Find|Format|Get|Hide|Join|Lock|Move|New|Open|Optimize|Pop|Push|Redo|Remove|Rename|Reset|Resize|Search|Select|Set|Show|Skip|Split|Step|Switch|Undo|Unlock|Watch|Backup|Checkpoint|Compare|Compress|Convert|ConvertFrom|ConvertTo|Dismount|Edit|Expand|Export|Group|Import|Initialize|Limit|Merge|New|Out|Publish|Restore|Save|Sync|Unpublish|Update|Approve|Assert|Complete|Confirm|Deny|Disable|Enable|Install|Invoke|Register|Request|Restart|Resume|Start|Stop|Submit|Suspend|Uninstall|Unregister|Wait|Debug|Measure|Ping|Repair|Resolve|Test|Trace|Connect|Disconnect|Read|Receive|Send|Write|Block|Grant|Protect|Revoke|Unblock|Unprotect|Use|ForEach|Sort|Tee|Where\",\")+(-)[\\\\w\\\\d]+\")}]},l={cN:\"class\",bK:\"class enum\",e:/\\s*[{]/,eE:!0,relevance:0,c:[e.TM]},s={cN:\"function\",b:/function\\s+/,e:/\\s*\\{|$/,eE:!0,rB:!0,relevance:0,c:[{b:\"function\",relevance:0,cN:\"keyword\"},{cN:\"title\",b:/\\w[\\w\\d]*((-)[\\w\\d]+)*/,relevance:0},{b:/\\(/,e:/\\)/,cN:\"params\",relevance:0,c:[c]}]},p={b:/using\\s/,e:/$/,rB:!0,c:[i,a,{cN:\"keyword\",b:/(using|assembly|command|module|namespace|type)/}]},b={v:[{cN:\"operator\",b:\"(\".concat(\"-and|-as|-band|-bnot|-bor|-bxor|-casesensitive|-ccontains|-ceq|-cge|-cgt|-cle|-clike|-clt|-cmatch|-cne|-cnotcontains|-cnotlike|-cnotmatch|-contains|-creplace|-csplit|-eq|-exact|-f|-file|-ge|-gt|-icontains|-ieq|-ige|-igt|-ile|-ilike|-ilt|-imatch|-in|-ine|-inotcontains|-inotlike|-inotmatch|-ireplace|-is|-isnot|-isplit|-join|-le|-like|-lt|-match|-ne|-not|-notcontains|-notin|-notlike|-notmatch|-or|-regex|-replace|-shl|-shr|-split|-wildcard|-xor\",\")\\\\b\")},{cN:\"literal\",b:/(-)[\\w\\d]+/,relevance:0}]},d={cN:\"function\",b:/\\[.*\\]\\s*[\\w]+[ ]??\\(/,e:/$/,rB:!0,relevance:0,c:[{cN:\"keyword\",b:\"(\".concat(t.keyword.toString().replace(/\\s/g,\"|\"),\")\\\\b\"),endsParent:!0,relevance:0},e.inherit(e.TM,{endsParent:!0})]},u=[d,r,n,e.NM,i,a,o,c,{cN:\"literal\",b:/\\$(null|true|false)\\b/},{cN:\"selector-tag\",b:/\\@\\B/,relevance:0}],m={b:/\\[/,e:/\\]/,eB:!0,eE:!0,relevance:0,c:[].concat(\"self\",u,{b:\"(\"+[\"string\",\"char\",\"byte\",\"int\",\"long\",\"bool\",\"decimal\",\"single\",\"double\",\"DateTime\",\"xml\",\"array\",\"hashtable\",\"void\"].join(\"|\")+\")\",cN:\"built_in\",relevance:0},{cN:\"type\",b:/[\\.\\w\\d]+/,relevance:0})};return d.c.unshift(m),{aliases:[\"ps\",\"ps1\"],l:/-?[A-z\\.\\-]+/,cI:!0,k:t,c:u.concat(l,s,p,b,m)}});hljs.registerLanguage(\"typescript\",function(e){var r=\"[A-Za-z$_][0-9A-Za-z$_]*\",t={keyword:\"in if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const class public private protected get set super static implements enum export import declare type namespace abstract as from extends async await\",literal:\"true false null undefined NaN Infinity\",built_in:\"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document any number boolean string void Promise\"},n={cN:\"meta\",b:\"@\"+r},a={b:\"\\\\(\",e:/\\)/,k:t,c:[\"self\",e.QSM,e.ASM,e.NM]},c={cN:\"params\",b:/\\(/,e:/\\)/,eB:!0,eE:!0,k:t,c:[e.CLCM,e.CBCM,n,a]},s={cN:\"number\",v:[{b:\"\\\\b(0[bB][01]+)n?\"},{b:\"\\\\b(0[oO][0-7]+)n?\"},{b:e.CNR+\"n?\"}],relevance:0},o={cN:\"subst\",b:\"\\\\$\\\\{\",e:\"\\\\}\",k:t,c:[]},i={b:\"html`\",e:\"\",starts:{e:\"`\",rE:!1,c:[e.BE,o],sL:\"xml\"}},l={b:\"css`\",e:\"\",starts:{e:\"`\",rE:!1,c:[e.BE,o],sL:\"css\"}},b={cN:\"string\",b:\"`\",e:\"`\",c:[e.BE,o]};return o.c=[e.ASM,e.QSM,i,l,b,s,e.RM],{aliases:[\"ts\"],k:t,c:[{cN:\"meta\",b:/^\\s*['\"]use strict['\"]/},e.ASM,e.QSM,i,l,b,e.CLCM,e.CBCM,s,{b:\"(\"+e.RSR+\"|\\\\b(case|return|throw)\\\\b)\\\\s*\",k:\"return throw case\",c:[e.CLCM,e.CBCM,e.RM,{cN:\"function\",b:\"(\\\\(.*?\\\\)|\"+e.IR+\")\\\\s*=>\",rB:!0,e:\"\\\\s*=>\",c:[{cN:\"params\",v:[{b:e.IR},{b:/\\(\\s*\\)/},{b:/\\(/,e:/\\)/,eB:!0,eE:!0,k:t,c:[\"self\",e.CLCM,e.CBCM]}]}]}],relevance:0},{cN:\"function\",bK:\"function\",e:/[\\{;]/,eE:!0,k:t,c:[\"self\",e.inherit(e.TM,{b:r}),c],i:/%/,relevance:0},{bK:\"constructor\",e:/[\\{;]/,eE:!0,c:[\"self\",c]},{b:/module\\./,k:{built_in:\"module\"},relevance:0},{bK:\"module\",e:/\\{/,eE:!0},{bK:\"interface\",e:/\\{/,eE:!0,k:\"interface extends\"},{b:/\\$[(.]/},{b:\"\\\\.\"+e.IR,relevance:0},n,a]}});hljs.registerLanguage(\"fortran\",function(e){return{cI:!0,aliases:[\"f90\",\"f95\"],k:{literal:\".False. .True.\",keyword:\"kind do while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then block endblock public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated  c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure integer real character complex logical dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data\",built_in:\"alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_ofacosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image\"},i:/\\/\\*/,c:[e.inherit(e.ASM,{cN:\"string\",relevance:0}),e.inherit(e.QSM,{cN:\"string\",relevance:0}),{cN:\"function\",bK:\"subroutine function program\",i:\"[${=\\\\n]\",c:[e.UTM,{cN:\"params\",b:\"\\\\(\",e:\"\\\\)\"}]},e.C(\"!\",\"$\",{relevance:0}),{cN:\"number\",b:\"(?=\\\\b|\\\\+|\\\\-|\\\\.)(?=\\\\.\\\\d|\\\\d)(?:\\\\d+)?(?:\\\\.?\\\\d*)(?:[de][+-]?\\\\d+)?\\\\b\\\\.?\",relevance:0}]}});hljs.registerLanguage(\"php\",function(e){var c={b:\"\\\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*\"},i={cN:\"meta\",b:/<\\?(php)?|\\?>/},t={cN:\"string\",c:[e.BE,i],v:[{b:'b\"',e:'\"'},{b:\"b'\",e:\"'\"},e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null})]},a={v:[e.BNM,e.CNM]};return{aliases:[\"php\",\"php3\",\"php4\",\"php5\",\"php6\",\"php7\"],cI:!0,k:\"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally\",c:[e.HCM,e.C(\"//\",\"$\",{c:[i]}),e.C(\"/\\\\*\",\"\\\\*/\",{c:[{cN:\"doctag\",b:\"@[A-Za-z]+\"}]}),e.C(\"__halt_compiler.+?;\",!1,{eW:!0,k:\"__halt_compiler\",l:e.UIR}),{cN:\"string\",b:/<<<['\"]?\\w+['\"]?$/,e:/^\\w+;?$/,c:[e.BE,{cN:\"subst\",v:[{b:/\\$\\w+/},{b:/\\{\\$/,e:/\\}/}]}]},i,{cN:\"keyword\",b:/\\$this\\b/},c,{b:/(::|->)+[a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*/},{cN:\"function\",bK:\"function\",e:/[;{]/,eE:!0,i:\"\\\\$|\\\\[|%\",c:[e.UTM,{cN:\"params\",b:\"\\\\(\",e:\"\\\\)\",c:[\"self\",c,e.CBCM,t,a]}]},{cN:\"class\",bK:\"class interface\",e:\"{\",eE:!0,i:/[:\\(\\$\"]/,c:[{bK:\"extends implements\"},e.UTM]},{bK:\"namespace\",e:\";\",i:/[\\.']/,c:[e.UTM]},{bK:\"use\",e:\";\",c:[e.UTM]},{b:\"=>\"},t,a]}});hljs.registerLanguage(\"haskell\",function(e){var i={v:[e.C(\"--\",\"$\"),e.C(\"{-\",\"-}\",{c:[\"self\"]})]},a={cN:\"meta\",b:\"{-#\",e:\"#-}\"},l={cN:\"meta\",b:\"^#\",e:\"$\"},c={cN:\"type\",b:\"\\\\b[A-Z][\\\\w']*\",relevance:0},n={b:\"\\\\(\",e:\"\\\\)\",i:'\"',c:[a,l,{cN:\"type\",b:\"\\\\b[A-Z][\\\\w]*(\\\\((\\\\.\\\\.|,|\\\\w+)\\\\))?\"},e.inherit(e.TM,{b:\"[_a-z][\\\\w']*\"}),i]};return{aliases:[\"hs\"],k:\"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec\",c:[{bK:\"module\",e:\"where\",k:\"module where\",c:[n,i],i:\"\\\\W\\\\.|;\"},{b:\"\\\\bimport\\\\b\",e:\"$\",k:\"import qualified as hiding\",c:[n,i],i:\"\\\\W\\\\.|;\"},{cN:\"class\",b:\"^(\\\\s*)?(class|instance)\\\\b\",e:\"where\",k:\"class family instance where\",c:[c,n,i]},{cN:\"class\",b:\"\\\\b(data|(new)?type)\\\\b\",e:\"$\",k:\"data family type newtype deriving\",c:[a,c,n,{b:\"{\",e:\"}\",c:n.c},i]},{bK:\"default\",e:\"$\",c:[c,n,i]},{bK:\"infix infixl infixr\",e:\"$\",c:[e.CNM,i]},{b:\"\\\\bforeign\\\\b\",e:\"$\",k:\"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe\",c:[c,e.QSM,i]},{cN:\"meta\",b:\"#!\\\\/usr\\\\/bin\\\\/env runhaskell\",e:\"$\"},a,l,e.QSM,e.CNM,c,e.inherit(e.TM,{b:\"^[_a-z][\\\\w']*\"}),i,{b:\"->|<-\"}]}});hljs.registerLanguage(\"coffeescript\",function(e){var c={keyword:\"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super yield import export from as default await then unless until loop of by when and or is isnt not\",literal:\"true false null undefined yes no on off\",built_in:\"npm require console print module global window document\"},n=\"[A-Za-z$_][0-9A-Za-z$_]*\",r={cN:\"subst\",b:/#\\{/,e:/}/,k:c},i=[e.BNM,e.inherit(e.CNM,{starts:{e:\"(\\\\s*/)?\",relevance:0}}),{cN:\"string\",v:[{b:/'''/,e:/'''/,c:[e.BE]},{b:/'/,e:/'/,c:[e.BE]},{b:/\"\"\"/,e:/\"\"\"/,c:[e.BE,r]},{b:/\"/,e:/\"/,c:[e.BE,r]}]},{cN:\"regexp\",v:[{b:\"///\",e:\"///\",c:[r,e.HCM]},{b:\"//[gim]{0,3}(?=\\\\W)\",relevance:0},{b:/\\/(?![ *]).*?(?![\\\\]).\\/[gim]{0,3}(?=\\W)/}]},{b:\"@\"+n},{sL:\"javascript\",eB:!0,eE:!0,v:[{b:\"```\",e:\"```\"},{b:\"`\",e:\"`\"}]}];r.c=i;var s=e.inherit(e.TM,{b:n}),t=\"(\\\\(.*\\\\))?\\\\s*\\\\B[-=]>\",a={cN:\"params\",b:\"\\\\([^\\\\(]\",rB:!0,c:[{b:/\\(/,e:/\\)/,k:c,c:[\"self\"].concat(i)}]};return{aliases:[\"coffee\",\"cson\",\"iced\"],k:c,i:/\\/\\*/,c:i.concat([e.C(\"###\",\"###\"),e.HCM,{cN:\"function\",b:\"^\\\\s*\"+n+\"\\\\s*=\\\\s*\"+t,e:\"[-=]>\",rB:!0,c:[s,a]},{b:/[:\\(,=]\\s*/,relevance:0,c:[{cN:\"function\",b:t,e:\"[-=]>\",rB:!0,c:[a]}]},{cN:\"class\",bK:\"class\",e:\"$\",i:/[:=\"\\[\\]]/,c:[{bK:\"extends\",eW:!0,i:/[:=\"\\[\\]]/,c:[s]},s]},{b:n+\":\",e:\":\",rB:!0,rE:!0,relevance:0}])}});hljs.registerLanguage(\"r\",function(e){var r=\"([a-zA-Z]|\\\\.[a-zA-Z.])[a-zA-Z0-9._]*\";return{c:[e.HCM,{b:r,l:r,k:{keyword:\"function if in break next repeat else for return switch while try tryCatch stop warning require library attach detach source setMethod setGeneric setGroupGeneric setClass ...\",literal:\"NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10\"},relevance:0},{cN:\"number\",b:\"0[xX][0-9a-fA-F]+[Li]?\\\\b\",relevance:0},{cN:\"number\",b:\"\\\\d+(?:[eE][+\\\\-]?\\\\d*)?L\\\\b\",relevance:0},{cN:\"number\",b:\"\\\\d+\\\\.(?!\\\\d)(?:i\\\\b)?\",relevance:0},{cN:\"number\",b:\"\\\\d+(?:\\\\.\\\\d*)?(?:[eE][+\\\\-]?\\\\d*)?i?\\\\b\",relevance:0},{cN:\"number\",b:\"\\\\.\\\\d+(?:[eE][+\\\\-]?\\\\d*)?i?\\\\b\",relevance:0},{b:\"`\",e:\"`\",relevance:0},{cN:\"string\",c:[e.BE],v:[{b:'\"',e:'\"'},{b:\"'\",e:\"'\"}]}]}});hljs.registerLanguage(\"autohotkey\",function(e){var a={b:\"`[\\\\s\\\\S]\"};return{cI:!0,aliases:[\"ahk\"],k:{keyword:\"Break Continue Critical Exit ExitApp Gosub Goto New OnExit Pause return SetBatchLines SetTimer Suspend Thread Throw Until ahk_id ahk_class ahk_pid ahk_exe ahk_group\",literal:\"true false NOT AND OR\",built_in:\"ComSpec Clipboard ClipboardAll ErrorLevel\"},c:[a,e.inherit(e.QSM,{c:[a]}),e.C(\";\",\"$\",{relevance:0}),e.CBCM,{cN:\"number\",b:e.NR,relevance:0},{cN:\"variable\",b:\"%[a-zA-Z0-9#_$@]+%\"},{cN:\"built_in\",b:\"^\\\\s*\\\\w+\\\\s*(,|%)\"},{cN:\"title\",v:[{b:'^[^\\\\n\";]+::(?!=)'},{b:'^[^\\\\n\";]+:(?!=)',relevance:0}]},{cN:\"meta\",b:\"^\\\\s*#\\\\w+\",e:\"$\",relevance:0},{cN:\"built_in\",b:\"A_[a-zA-Z0-9]+\"},{b:\",\\\\s*,\"}]}});hljs.registerLanguage(\"elixir\",function(e){var b=\"[a-zA-Z_][a-zA-Z0-9_.]*(\\\\!|\\\\?)?\",c=\"and false then defined module in return redo retry end for true self when next until do begin unless nil break not case cond alias while ensure or include use alias fn quote require import with|0\",n={cN:\"subst\",b:\"#\\\\{\",e:\"}\",l:b,k:c},r=\"[/|([{<\\\"']\",a={cN:\"string\",b:\"~[a-z](?=\"+r+\")\",c:[{endsParent:!0,c:[{c:[e.BE,n],v:[{b:/\"/,e:/\"/},{b:/'/,e:/'/},{b:/\\//,e:/\\//},{b:/\\|/,e:/\\|/},{b:/\\(/,e:/\\)/},{b:/\\[/,e:/\\]/},{b:/\\{/,e:/\\}/},{b:/</,e:/>/}]}]}]},i={cN:\"string\",b:\"~[A-Z](?=\"+r+\")\",c:[{b:/\"/,e:/\"/},{b:/'/,e:/'/},{b:/\\//,e:/\\//},{b:/\\|/,e:/\\|/},{b:/\\(/,e:/\\)/},{b:/\\[/,e:/\\]/},{b:/\\{/,e:/\\}/},{b:/\\</,e:/\\>/}]},l={cN:\"string\",c:[e.BE,n],v:[{b:/\"\"\"/,e:/\"\"\"/},{b:/'''/,e:/'''/},{b:/~S\"\"\"/,e:/\"\"\"/,c:[]},{b:/~S\"/,e:/\"/,c:[]},{b:/~S'''/,e:/'''/,c:[]},{b:/~S'/,e:/'/,c:[]},{b:/'/,e:/'/},{b:/\"/,e:/\"/}]},s={cN:\"function\",bK:\"def defp defmacro\",e:/\\B\\b/,c:[e.inherit(e.TM,{b:b,endsParent:!0})]},t=e.inherit(s,{cN:\"class\",bK:\"defimpl defmodule defprotocol defrecord\",e:/\\bdo\\b|$|;/}),d=[l,i,a,e.HCM,t,s,{b:\"::\"},{cN:\"symbol\",b:\":(?![\\\\s:])\",c:[l,{b:\"[a-zA-Z_]\\\\w*[!?=]?|[-+~]\\\\@|<<|>>|=~|===?|<=>|[<>]=?|\\\\*\\\\*|[-/+%^&*~`|]|\\\\[\\\\]=?\"}],relevance:0},{cN:\"symbol\",b:b+\":(?!:)\",relevance:0},{cN:\"number\",b:\"(\\\\b0o[0-7_]+)|(\\\\b0b[01_]+)|(\\\\b0x[0-9a-fA-F_]+)|(-?\\\\b[1-9][0-9_]*(.[0-9_]+([eE][-+]?[0-9]+)?)?)\",relevance:0},{cN:\"variable\",b:\"(\\\\$\\\\W)|((\\\\$|\\\\@\\\\@?)(\\\\w+))\"},{b:\"->\"},{b:\"(\"+e.RSR+\")\\\\s*\",c:[e.HCM,{cN:\"regexp\",i:\"\\\\n\",c:[e.BE,n],v:[{b:\"/\",e:\"/[a-z]*\"},{b:\"%r\\\\[\",e:\"\\\\][a-z]*\"}]}],relevance:0}];return{l:b,k:c,c:n.c=d}});hljs.registerLanguage(\"gradle\",function(e){return{cI:!0,k:{keyword:\"task project allprojects subprojects artifacts buildscript configurations dependencies repositories sourceSets description delete from into include exclude source classpath destinationDir includes options sourceCompatibility targetCompatibility group flatDir doLast doFirst flatten todir fromdir ant def abstract break case catch continue default do else extends final finally for if implements instanceof native new private protected public return static switch synchronized throw throws transient try volatile while strictfp package import false null super this true antlrtask checkstyle codenarc copy boolean byte char class double float int interface long short void compile runTime file fileTree abs any append asList asWritable call collect compareTo count div dump each eachByte eachFile eachLine every find findAll flatten getAt getErr getIn getOut getText grep immutable inject inspect intersect invokeMethods isCase join leftShift minus multiply newInputStream newOutputStream newPrintWriter newReader newWriter next plus pop power previous print println push putAt read readBytes readLines reverse reverseEach round size sort splitEachLine step subMap times toInteger toList tokenize upto waitForOrKill withPrintWriter withReader withStream withWriter withWriterAppend write writeLine\"},c:[e.CLCM,e.CBCM,e.ASM,e.QSM,e.NM,e.RM]}});hljs.registerLanguage(\"css\",function(e){var c={b:/(?:[A-Z\\_\\.\\-]+|--[a-zA-Z0-9_-]+)\\s*:/,rB:!0,e:\";\",eW:!0,c:[{cN:\"attribute\",b:/\\S/,e:\":\",eE:!0,starts:{eW:!0,eE:!0,c:[{b:/[\\w-]+\\(/,rB:!0,c:[{cN:\"built_in\",b:/[\\w-]+/},{b:/\\(/,e:/\\)/,c:[e.ASM,e.QSM,e.CSSNM]}]},e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:\"number\",b:\"#[0-9A-Fa-f]+\"},{cN:\"meta\",b:\"!important\"}]}}]};return{cI:!0,i:/[=\\/|'\\$]/,c:[e.CBCM,{cN:\"selector-id\",b:/#[A-Za-z0-9_-]+/},{cN:\"selector-class\",b:/\\.[A-Za-z0-9_-]+/},{cN:\"selector-attr\",b:/\\[/,e:/\\]/,i:\"$\",c:[e.ASM,e.QSM]},{cN:\"selector-pseudo\",b:/:(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\"'.]+/},{b:\"@(page|font-face)\",l:\"@[a-z-]+\",k:\"@page @font-face\"},{b:\"@\",e:\"[{;]\",i:/:/,rB:!0,c:[{cN:\"keyword\",b:/@\\-?\\w[\\w]*(\\-\\w+)*/},{b:/\\s/,eW:!0,eE:!0,relevance:0,k:\"and or not only\",c:[{b:/[a-z-]+:/,cN:\"attribute\"},e.ASM,e.QSM,e.CSSNM]}]},{cN:\"selector-tag\",b:\"[a-zA-Z-][a-zA-Z0-9_-]*\",relevance:0},{b:\"{\",e:\"}\",i:/\\S/,c:[e.CBCM,c]}]}});\n\nexports.hljs = hljs;\n",
            "type": "application/javascript",
            "title": "$:/plugins/tiddlywiki/highlight/highlight.js",
            "module-type": "library"
        },
        "$:/plugins/tiddlywiki/highlight/highlight.css": {
            "text": "/*\n\nOriginal highlight.js style (c) Ivan Sagalaev <maniac@softwaremaniacs.org>\n\n*/\n\n.hljs {\n  display: block;\n  overflow-x: auto;\n  padding: 0.5em;\n  background: #F0F0F0;\n}\n\n\n/* Base color: saturation 0; */\n\n.hljs,\n.hljs-subst {\n  color: #444;\n}\n\n.hljs-comment {\n  color: #888888;\n}\n\n.hljs-keyword,\n.hljs-attribute,\n.hljs-selector-tag,\n.hljs-meta-keyword,\n.hljs-doctag,\n.hljs-name {\n  font-weight: bold;\n}\n\n\n/* User color: hue: 0 */\n\n.hljs-type,\n.hljs-string,\n.hljs-number,\n.hljs-selector-id,\n.hljs-selector-class,\n.hljs-quote,\n.hljs-template-tag,\n.hljs-deletion {\n  color: #880000;\n}\n\n.hljs-title,\n.hljs-section {\n  color: #880000;\n  font-weight: bold;\n}\n\n.hljs-regexp,\n.hljs-symbol,\n.hljs-variable,\n.hljs-template-variable,\n.hljs-link,\n.hljs-selector-attr,\n.hljs-selector-pseudo {\n  color: #BC6060;\n}\n\n\n/* Language color: hue: 90; */\n\n.hljs-literal {\n  color: #78A960;\n}\n\n.hljs-built_in,\n.hljs-bullet,\n.hljs-code,\n.hljs-addition {\n  color: #397300;\n}\n\n\n/* Meta color: hue: 200 */\n\n.hljs-meta {\n  color: #1f7199;\n}\n\n.hljs-meta-string {\n  color: #4d99bf;\n}\n\n\n/* Misc effects */\n\n.hljs-emphasis {\n  font-style: italic;\n}\n\n.hljs-strong {\n  font-weight: bold;\n}\n",
            "type": "text/css",
            "title": "$:/plugins/tiddlywiki/highlight/highlight.css",
            "tags": "[[$:/tags/Stylesheet]]"
        },
        "$:/plugins/tiddlywiki/highlight/highlightblock.js": {
            "title": "$:/plugins/tiddlywiki/highlight/highlightblock.js",
            "text": "/*\\\ntitle: $:/plugins/tiddlywiki/highlight/highlightblock.js\ntype: application/javascript\nmodule-type: widget\n\nWraps up the fenced code blocks parser for highlight and use in TiddlyWiki5\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar TYPE_MAPPINGS_BASE = \"$:/config/HighlightPlugin/TypeMappings/\";\n\nvar CodeBlockWidget = require(\"$:/core/modules/widgets/codeblock.js\").codeblock;\n\nvar hljs = require(\"$:/plugins/tiddlywiki/highlight/highlight.js\");\n\nhljs.configure({tabReplace: \"    \"});\t\n\nCodeBlockWidget.prototype.postRender = function() {\n\tvar domNode = this.domNodes[0],\n\t\tlanguage = this.language,\n\t\ttiddler = this.wiki.getTiddler(TYPE_MAPPINGS_BASE + language);\n\tif(tiddler) {\n\t\tlanguage = tiddler.fields.text || \"\";\n\t}\n\tif(language && hljs.getLanguage(language)) {\n\t\tdomNode.className = language.toLowerCase() + \" hljs\";\n\t\tif($tw.browser && !domNode.isTiddlyWikiFakeDom) {\n\t\t\thljs.highlightBlock(domNode);\t\t\t\n\t\t} else {\n\t\t\tvar text = domNode.textContent;\n\t\t\tdomNode.children[0].innerHTML = hljs.fixMarkup(hljs.highlight(language,text).value);\n\t\t\t// If we're using the fakedom then specially save the original raw text\n\t\t\tif(domNode.isTiddlyWikiFakeDom) {\n\t\t\t\tdomNode.children[0].textInnerHTML = text;\n\t\t\t}\n\t\t}\n\t}\t\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/tiddlywiki/highlight/howto": {
            "title": "$:/plugins/tiddlywiki/highlight/howto",
            "text": "! Supporting Additional Languages\n \nThe [[highlight.js|https://github.com/highlightjs/highlight.js]] project supports many languages. Only a subset of these languages are supported by the plugin. It is possible for users to change the set of languages supported by the plugin by following these steps:\n \n# Go to the highlight.js project [[download page|https://highlightjs.org/download/]], select the language definitions to include, and press the Download button to download a zip archive containing customised support files for a highlight.js syntax highlighting server.\n# Locate the `highlight.pack.js` file in the highlight plugin -- on a stock Debian 8 system running Tiddlywiki5 under node-js it is located at `/usr/local/lib/node_modules/tiddlywiki/plugins/tiddlywiki/highlight/files/highlight.pack.js`.\n# Replace the plugin `highlight.pack.js` file located in step 2 with the one from the downloaded archive obtained in step 1.\n# Restart the Tiddlywiki server.\n"
        },
        "$:/plugins/tiddlywiki/highlight/license": {
            "title": "$:/plugins/tiddlywiki/highlight/license",
            "type": "text/plain",
            "text": "Copyright (c) 2006, Ivan Sagalaev\nAll rights reserved.\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n    * Redistributions of source code must retain the above copyright\n      notice, this list of conditions and the following disclaimer.\n    * Redistributions in binary form must reproduce the above copyright\n      notice, this list of conditions and the following disclaimer in the\n      documentation and/or other materials provided with the distribution.\n    * Neither the name of highlight.js nor the names of its contributors\n      may be used to endorse or promote products derived from this software\n      without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY\nEXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\nWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY\nDIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\nLOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\nON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
        },
        "$:/plugins/tiddlywiki/highlight/readme": {
            "title": "$:/plugins/tiddlywiki/highlight/readme",
            "text": "This plugin provides syntax highlighting of code blocks using v9.18.1 of [[highlight.js|https://github.com/isagalaev/highlight.js]] from Ivan Sagalaev.\n\n! Usage\n\nWhen the plugin is installed it automatically applies highlighting to all codeblocks defined with triple backticks or with the CodeBlockWidget.\n\nThe language can optionally be specified after the opening triple braces:\n\n<$codeblock code=\"\"\"```css\n * { margin: 0; padding: 0; } /* micro reset */\n\nhtml { font-size: 62.5%; }\nbody { font-size: 14px; font-size: 1.4rem; } /* =14px */\nh1   { font-size: 24px; font-size: 2.4rem; } /* =24px */\n```\"\"\"/>\n\nIf no language is specified highlight.js will attempt to automatically detect the language.\n\n! Built-in Language Brushes\n\nThe plugin includes support for the following languages (referred to as \"brushes\" by highlight.js):\n\n* apache\n* arduino\n* arm assembly\n* asciidoc\n* autohotkey\n* awk\n* bash\n* cmake\n* coffeescript\n* cpp\n* cs\n* css\n* diff\n* dockerfile\n* erlang\n* elixir\n* fortran\n* go\n* gradle\n* haskell\n* html\n* http\n* ini\n* intel x86 assembly\n* java\n* javascript\n* json\n* kotlin\n* less\n* lua\n* makefile\n* markdown\n* mathematica\n* matlab\n* nginx\n* objectivec\n* perl\n* php\n* plaintext\n* powershell\n* properties\n* python\n* R\n* ruby\n* rust\n* scss\n* shell session\n* sql\n* swift\n* toml\n* typescript\n* vala\n* vim script\n* xml\n* yaml\n\nYou can also specify the language as a MIME content type (eg `text/html` or `text/css`). The mapping is accomplished via mapping tiddlers whose titles start with `$:/config/HighlightPlugin/TypeMappings/`.\n"
        },
        "$:/plugins/tiddlywiki/highlight/styles": {
            "title": "$:/plugins/tiddlywiki/highlight/styles",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": ".hljs {\n  display: block;\n  overflow-x: auto;\n  padding: 0.5em;\n  background: <<colour tiddler-editor-background>>;\n  color: <<colour foreground>>;\n  -webkit-text-size-adjust:none\n}\n\n.hljs-comment,\n.hljs-quote {\n  color: #93a1a1;\n}\n\n/* Solarized Green */\n.hljs-keyword,\n.hljs-selector-tag,\n.hljs-addition {\n  color: #859900;\n}\n\n/* Solarized Cyan */\n.hljs-number,\n.hljs-string,\n.hljs-meta .hljs-meta-string,\n.hljs-literal,\n.hljs-doctag,\n.hljs-regexp {\n  color: #2aa198;\n}\n\n/* Solarized Blue */\n.hljs-title,\n.hljs-section,\n.hljs-name,\n.hljs-selector-id,\n.hljs-selector-class {\n  color: #268bd2;\n}\n\n/* Solarized Yellow */\n.hljs-attribute,\n.hljs-attr,\n.hljs-variable,\n.hljs-template-variable,\n.hljs-class .hljs-title,\n.hljs-type {\n  color: #b58900;\n}\n\n/* Solarized Orange */\n.hljs-symbol,\n.hljs-bullet,\n.hljs-subst,\n.hljs-meta,\n.hljs-meta .hljs-keyword,\n.hljs-selector-attr,\n.hljs-selector-pseudo,\n.hljs-link {\n  color: #cb4b16;\n}\n\n/* Solarized Red */\n.hljs-built_in,\n.hljs-deletion {\n  color: #dc322f;\n}\n\n.hljs-formula {\n  background: #eee8d5;\n}\n\n.hljs-emphasis {\n  font-style: italic;\n}\n\n.hljs-strong {\n  font-weight: bold;\n}\n"
        },
        "$:/plugins/tiddlywiki/highlight/usage": {
            "title": "$:/plugins/tiddlywiki/highlight/usage",
            "text": "! Usage\n\nFenced code blocks can have a language specifier added to trigger highlighting in a specific language. Otherwise heuristics are used to detect the language.\n\n```\n ```js\n var a = b + c; // Highlighted as JavaScript\n ```\n```\n! Adding Themes\n\nYou can add themes from highlight.js by copying the CSS to a new tiddler and tagging it with [[$:/tags/Stylesheet]]. The available themes can be found on GitHub:\n\nhttps://github.com/isagalaev/highlight.js/tree/master/src/styles\n"
        }
    }
}
{
    "tiddlers": {
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/bold": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/bold",
            "list-after": "$:/core/ui/EditorToolbar/bold",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/bold",
            "caption": "{{$:/language/Buttons/Bold/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/Bold/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((bold))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"**\"\n\tsuffix=\"**\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-1": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-1",
            "list-after": "$:/core/ui/EditorToolbar/heading-1",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-1",
            "caption": "{{$:/language/Buttons/Heading1/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/Heading1/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((heading-1))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-2": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-2",
            "list-after": "$:/core/ui/EditorToolbar/heading-2",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-2",
            "caption": "{{$:/language/Buttons/Heading2/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/Heading2/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((heading-2))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"2\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-3": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-3",
            "list-after": "$:/core/ui/EditorToolbar/heading-3",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-3",
            "caption": "{{$:/language/Buttons/Heading3/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/Heading3/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((heading-3))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"3\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-4": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-4",
            "list-after": "$:/core/ui/EditorToolbar/heading-4",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-4",
            "caption": "{{$:/language/Buttons/Heading4/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/Heading4/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((heading-4))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"4\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-5": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-5",
            "list-after": "$:/core/ui/EditorToolbar/heading-5",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-5",
            "caption": "{{$:/language/Buttons/Heading5/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/Heading5/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((heading-5))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"5\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-6": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-6",
            "list-after": "$:/core/ui/EditorToolbar/heading-6",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-6",
            "caption": "{{$:/language/Buttons/Heading6/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/Heading6/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((heading-6))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"6\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/italic": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/italic",
            "list-after": "$:/core/ui/EditorToolbar/italic",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/italic",
            "caption": "{{$:/language/Buttons/Italic/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/Italic/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((italic))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"*\"\n\tsuffix=\"*\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/list-bullet": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/list-bullet",
            "list-after": "$:/core/ui/EditorToolbar/list-bullet",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/list-bullet",
            "caption": "{{$:/language/Buttons/ListBullet/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/ListBullet/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((list-bullet))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"*\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/list-number": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/list-number",
            "list-after": "$:/core/ui/EditorToolbar/list-number",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/list-number",
            "caption": "{{$:/language/Buttons/ListNumber/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/ListNumber/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((list-number))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"1.\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/mono-line": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/mono-line",
            "list-after": "$:/core/ui/EditorToolbar/mono-line",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/mono-line",
            "caption": "{{$:/language/Buttons/MonoLine/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/MonoLine/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((mono-line))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"`\"\n\tsuffix=\"`\"\n/>\n"
        },
        "$:/plugins/tiddlywiki/markdown/EditorToolbar/quote": {
            "title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/quote",
            "list-after": "$:/core/ui/EditorToolbar/quote",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/quote",
            "caption": "{{$:/language/Buttons/Quote/Caption}} (Markdown)",
            "description": "{{$:/language/Buttons/Quote/Hint}}",
            "condition": "[<targetTiddler>type[text/x-markdown]]",
            "shortcuts": "((quote))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\">\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/config/markdown/breaks": {
            "title": "$:/config/markdown/breaks",
            "text": "false"
        },
        "$:/config/markdown/linkNewWindow": {
            "title": "$:/config/markdown/linkNewWindow",
            "text": "true"
        },
        "$:/config/markdown/linkify": {
            "title": "$:/config/markdown/linkify",
            "text": "false"
        },
        "$:/config/markdown/quotes": {
            "title": "$:/config/markdown/quotes",
            "text": "“”‘’"
        },
        "$:/config/markdown/renderWikiText": {
            "title": "$:/config/markdown/renderWikiText",
            "text": "true"
        },
        "$:/config/markdown/renderWikiTextPragma": {
            "title": "$:/config/markdown/renderWikiTextPragma",
            "text": "\\rules only html image macrocallinline syslink transcludeinline wikilink filteredtranscludeblock macrocallblock transcludeblock"
        },
        "$:/config/markdown/typographer": {
            "title": "$:/config/markdown/typographer",
            "text": "false"
        },
        "$:/language/Docs/Types/text/x-markdown": {
            "title": "$:/language/Docs/Types/text/x-markdown",
            "description": "Markdown",
            "name": "text/x-markdown",
            "group": "Text"
        },
        "$:/plugins/tiddlywiki/markdown/remarkable.js": {
            "text": "!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t((e=e||self).remarkable={})}(this,function(e){\"use strict\";var t={Aacute:\"Á\",aacute:\"á\",Abreve:\"Ă\",abreve:\"ă\",ac:\"∾\",acd:\"∿\",acE:\"∾̳\",Acirc:\"Â\",acirc:\"â\",acute:\"´\",Acy:\"А\",acy:\"а\",AElig:\"Æ\",aelig:\"æ\",af:\"⁡\",Afr:\"𝔄\",afr:\"𝔞\",Agrave:\"À\",agrave:\"à\",alefsym:\"ℵ\",aleph:\"ℵ\",Alpha:\"Α\",alpha:\"α\",Amacr:\"Ā\",amacr:\"ā\",amalg:\"⨿\",AMP:\"&\",amp:\"&\",And:\"⩓\",and:\"∧\",andand:\"⩕\",andd:\"⩜\",andslope:\"⩘\",andv:\"⩚\",ang:\"∠\",ange:\"⦤\",angle:\"∠\",angmsd:\"∡\",angmsdaa:\"⦨\",angmsdab:\"⦩\",angmsdac:\"⦪\",angmsdad:\"⦫\",angmsdae:\"⦬\",angmsdaf:\"⦭\",angmsdag:\"⦮\",angmsdah:\"⦯\",angrt:\"∟\",angrtvb:\"⊾\",angrtvbd:\"⦝\",angsph:\"∢\",angst:\"Å\",angzarr:\"⍼\",Aogon:\"Ą\",aogon:\"ą\",Aopf:\"𝔸\",aopf:\"𝕒\",ap:\"≈\",apacir:\"⩯\",apE:\"⩰\",ape:\"≊\",apid:\"≋\",apos:\"'\",ApplyFunction:\"⁡\",approx:\"≈\",approxeq:\"≊\",Aring:\"Å\",aring:\"å\",Ascr:\"𝒜\",ascr:\"𝒶\",Assign:\"≔\",ast:\"*\",asymp:\"≈\",asympeq:\"≍\",Atilde:\"Ã\",atilde:\"ã\",Auml:\"Ä\",auml:\"ä\",awconint:\"∳\",awint:\"⨑\",backcong:\"≌\",backepsilon:\"϶\",backprime:\"‵\",backsim:\"∽\",backsimeq:\"⋍\",Backslash:\"∖\",Barv:\"⫧\",barvee:\"⊽\",Barwed:\"⌆\",barwed:\"⌅\",barwedge:\"⌅\",bbrk:\"⎵\",bbrktbrk:\"⎶\",bcong:\"≌\",Bcy:\"Б\",bcy:\"б\",bdquo:\"„\",becaus:\"∵\",Because:\"∵\",because:\"∵\",bemptyv:\"⦰\",bepsi:\"϶\",bernou:\"ℬ\",Bernoullis:\"ℬ\",Beta:\"Β\",beta:\"β\",beth:\"ℶ\",between:\"≬\",Bfr:\"𝔅\",bfr:\"𝔟\",bigcap:\"⋂\",bigcirc:\"◯\",bigcup:\"⋃\",bigodot:\"⨀\",bigoplus:\"⨁\",bigotimes:\"⨂\",bigsqcup:\"⨆\",bigstar:\"★\",bigtriangledown:\"▽\",bigtriangleup:\"△\",biguplus:\"⨄\",bigvee:\"⋁\",bigwedge:\"⋀\",bkarow:\"⤍\",blacklozenge:\"⧫\",blacksquare:\"▪\",blacktriangle:\"▴\",blacktriangledown:\"▾\",blacktriangleleft:\"◂\",blacktriangleright:\"▸\",blank:\"␣\",blk12:\"▒\",blk14:\"░\",blk34:\"▓\",block:\"█\",bne:\"=⃥\",bnequiv:\"≡⃥\",bNot:\"⫭\",bnot:\"⌐\",Bopf:\"𝔹\",bopf:\"𝕓\",bot:\"⊥\",bottom:\"⊥\",bowtie:\"⋈\",boxbox:\"⧉\",boxDL:\"╗\",boxDl:\"╖\",boxdL:\"╕\",boxdl:\"┐\",boxDR:\"╔\",boxDr:\"╓\",boxdR:\"╒\",boxdr:\"┌\",boxH:\"═\",boxh:\"─\",boxHD:\"╦\",boxHd:\"╤\",boxhD:\"╥\",boxhd:\"┬\",boxHU:\"╩\",boxHu:\"╧\",boxhU:\"╨\",boxhu:\"┴\",boxminus:\"⊟\",boxplus:\"⊞\",boxtimes:\"⊠\",boxUL:\"╝\",boxUl:\"╜\",boxuL:\"╛\",boxul:\"┘\",boxUR:\"╚\",boxUr:\"╙\",boxuR:\"╘\",boxur:\"└\",boxV:\"║\",boxv:\"│\",boxVH:\"╬\",boxVh:\"╫\",boxvH:\"╪\",boxvh:\"┼\",boxVL:\"╣\",boxVl:\"╢\",boxvL:\"╡\",boxvl:\"┤\",boxVR:\"╠\",boxVr:\"╟\",boxvR:\"╞\",boxvr:\"├\",bprime:\"‵\",Breve:\"˘\",breve:\"˘\",brvbar:\"¦\",Bscr:\"ℬ\",bscr:\"𝒷\",bsemi:\"⁏\",bsim:\"∽\",bsime:\"⋍\",bsol:\"\\\\\",bsolb:\"⧅\",bsolhsub:\"⟈\",bull:\"•\",bullet:\"•\",bump:\"≎\",bumpE:\"⪮\",bumpe:\"≏\",Bumpeq:\"≎\",bumpeq:\"≏\",Cacute:\"Ć\",cacute:\"ć\",Cap:\"⋒\",cap:\"∩\",capand:\"⩄\",capbrcup:\"⩉\",capcap:\"⩋\",capcup:\"⩇\",capdot:\"⩀\",CapitalDifferentialD:\"ⅅ\",caps:\"∩︀\",caret:\"⁁\",caron:\"ˇ\",Cayleys:\"ℭ\",ccaps:\"⩍\",Ccaron:\"Č\",ccaron:\"č\",Ccedil:\"Ç\",ccedil:\"ç\",Ccirc:\"Ĉ\",ccirc:\"ĉ\",Cconint:\"∰\",ccups:\"⩌\",ccupssm:\"⩐\",Cdot:\"Ċ\",cdot:\"ċ\",cedil:\"¸\",Cedilla:\"¸\",cemptyv:\"⦲\",cent:\"¢\",CenterDot:\"·\",centerdot:\"·\",Cfr:\"ℭ\",cfr:\"𝔠\",CHcy:\"Ч\",chcy:\"ч\",check:\"✓\",checkmark:\"✓\",Chi:\"Χ\",chi:\"χ\",cir:\"○\",circ:\"ˆ\",circeq:\"≗\",circlearrowleft:\"↺\",circlearrowright:\"↻\",circledast:\"⊛\",circledcirc:\"⊚\",circleddash:\"⊝\",CircleDot:\"⊙\",circledR:\"®\",circledS:\"Ⓢ\",CircleMinus:\"⊖\",CirclePlus:\"⊕\",CircleTimes:\"⊗\",cirE:\"⧃\",cire:\"≗\",cirfnint:\"⨐\",cirmid:\"⫯\",cirscir:\"⧂\",ClockwiseContourIntegral:\"∲\",CloseCurlyDoubleQuote:\"”\",CloseCurlyQuote:\"’\",clubs:\"♣\",clubsuit:\"♣\",Colon:\"∷\",colon:\":\",Colone:\"⩴\",colone:\"≔\",coloneq:\"≔\",comma:\",\",commat:\"@\",comp:\"∁\",compfn:\"∘\",complement:\"∁\",complexes:\"ℂ\",cong:\"≅\",congdot:\"⩭\",Congruent:\"≡\",Conint:\"∯\",conint:\"∮\",ContourIntegral:\"∮\",Copf:\"ℂ\",copf:\"𝕔\",coprod:\"∐\",Coproduct:\"∐\",COPY:\"©\",copy:\"©\",copysr:\"℗\",CounterClockwiseContourIntegral:\"∳\",crarr:\"↵\",Cross:\"⨯\",cross:\"✗\",Cscr:\"𝒞\",cscr:\"𝒸\",csub:\"⫏\",csube:\"⫑\",csup:\"⫐\",csupe:\"⫒\",ctdot:\"⋯\",cudarrl:\"⤸\",cudarrr:\"⤵\",cuepr:\"⋞\",cuesc:\"⋟\",cularr:\"↶\",cularrp:\"⤽\",Cup:\"⋓\",cup:\"∪\",cupbrcap:\"⩈\",CupCap:\"≍\",cupcap:\"⩆\",cupcup:\"⩊\",cupdot:\"⊍\",cupor:\"⩅\",cups:\"∪︀\",curarr:\"↷\",curarrm:\"⤼\",curlyeqprec:\"⋞\",curlyeqsucc:\"⋟\",curlyvee:\"⋎\",curlywedge:\"⋏\",curren:\"¤\",curvearrowleft:\"↶\",curvearrowright:\"↷\",cuvee:\"⋎\",cuwed:\"⋏\",cwconint:\"∲\",cwint:\"∱\",cylcty:\"⌭\",Dagger:\"‡\",dagger:\"†\",daleth:\"ℸ\",Darr:\"↡\",dArr:\"⇓\",darr:\"↓\",dash:\"‐\",Dashv:\"⫤\",dashv:\"⊣\",dbkarow:\"⤏\",dblac:\"˝\",Dcaron:\"Ď\",dcaron:\"ď\",Dcy:\"Д\",dcy:\"д\",DD:\"ⅅ\",dd:\"ⅆ\",ddagger:\"‡\",ddarr:\"⇊\",DDotrahd:\"⤑\",ddotseq:\"⩷\",deg:\"°\",Del:\"∇\",Delta:\"Δ\",delta:\"δ\",demptyv:\"⦱\",dfisht:\"⥿\",Dfr:\"𝔇\",dfr:\"𝔡\",dHar:\"⥥\",dharl:\"⇃\",dharr:\"⇂\",DiacriticalAcute:\"´\",DiacriticalDot:\"˙\",DiacriticalDoubleAcute:\"˝\",DiacriticalGrave:\"`\",DiacriticalTilde:\"˜\",diam:\"⋄\",Diamond:\"⋄\",diamond:\"⋄\",diamondsuit:\"♦\",diams:\"♦\",die:\"¨\",DifferentialD:\"ⅆ\",digamma:\"ϝ\",disin:\"⋲\",div:\"÷\",divide:\"÷\",divideontimes:\"⋇\",divonx:\"⋇\",DJcy:\"Ђ\",djcy:\"ђ\",dlcorn:\"⌞\",dlcrop:\"⌍\",dollar:\"$\",Dopf:\"𝔻\",dopf:\"𝕕\",Dot:\"¨\",dot:\"˙\",DotDot:\"⃜\",doteq:\"≐\",doteqdot:\"≑\",DotEqual:\"≐\",dotminus:\"∸\",dotplus:\"∔\",dotsquare:\"⊡\",doublebarwedge:\"⌆\",DoubleContourIntegral:\"∯\",DoubleDot:\"¨\",DoubleDownArrow:\"⇓\",DoubleLeftArrow:\"⇐\",DoubleLeftRightArrow:\"⇔\",DoubleLeftTee:\"⫤\",DoubleLongLeftArrow:\"⟸\",DoubleLongLeftRightArrow:\"⟺\",DoubleLongRightArrow:\"⟹\",DoubleRightArrow:\"⇒\",DoubleRightTee:\"⊨\",DoubleUpArrow:\"⇑\",DoubleUpDownArrow:\"⇕\",DoubleVerticalBar:\"∥\",DownArrow:\"↓\",Downarrow:\"⇓\",downarrow:\"↓\",DownArrowBar:\"⤓\",DownArrowUpArrow:\"⇵\",DownBreve:\"̑\",downdownarrows:\"⇊\",downharpoonleft:\"⇃\",downharpoonright:\"⇂\",DownLeftRightVector:\"⥐\",DownLeftTeeVector:\"⥞\",DownLeftVector:\"↽\",DownLeftVectorBar:\"⥖\",DownRightTeeVector:\"⥟\",DownRightVector:\"⇁\",DownRightVectorBar:\"⥗\",DownTee:\"⊤\",DownTeeArrow:\"↧\",drbkarow:\"⤐\",drcorn:\"⌟\",drcrop:\"⌌\",Dscr:\"𝒟\",dscr:\"𝒹\",DScy:\"Ѕ\",dscy:\"ѕ\",dsol:\"⧶\",Dstrok:\"Đ\",dstrok:\"đ\",dtdot:\"⋱\",dtri:\"▿\",dtrif:\"▾\",duarr:\"⇵\",duhar:\"⥯\",dwangle:\"⦦\",DZcy:\"Џ\",dzcy:\"џ\",dzigrarr:\"⟿\",Eacute:\"É\",eacute:\"é\",easter:\"⩮\",Ecaron:\"Ě\",ecaron:\"ě\",ecir:\"≖\",Ecirc:\"Ê\",ecirc:\"ê\",ecolon:\"≕\",Ecy:\"Э\",ecy:\"э\",eDDot:\"⩷\",Edot:\"Ė\",eDot:\"≑\",edot:\"ė\",ee:\"ⅇ\",efDot:\"≒\",Efr:\"𝔈\",efr:\"𝔢\",eg:\"⪚\",Egrave:\"È\",egrave:\"è\",egs:\"⪖\",egsdot:\"⪘\",el:\"⪙\",Element:\"∈\",elinters:\"⏧\",ell:\"ℓ\",els:\"⪕\",elsdot:\"⪗\",Emacr:\"Ē\",emacr:\"ē\",empty:\"∅\",emptyset:\"∅\",EmptySmallSquare:\"◻\",emptyv:\"∅\",EmptyVerySmallSquare:\"▫\",emsp:\" \",emsp13:\" \",emsp14:\" \",ENG:\"Ŋ\",eng:\"ŋ\",ensp:\" \",Eogon:\"Ę\",eogon:\"ę\",Eopf:\"𝔼\",eopf:\"𝕖\",epar:\"⋕\",eparsl:\"⧣\",eplus:\"⩱\",epsi:\"ε\",Epsilon:\"Ε\",epsilon:\"ε\",epsiv:\"ϵ\",eqcirc:\"≖\",eqcolon:\"≕\",eqsim:\"≂\",eqslantgtr:\"⪖\",eqslantless:\"⪕\",Equal:\"⩵\",equals:\"=\",EqualTilde:\"≂\",equest:\"≟\",Equilibrium:\"⇌\",equiv:\"≡\",equivDD:\"⩸\",eqvparsl:\"⧥\",erarr:\"⥱\",erDot:\"≓\",Escr:\"ℰ\",escr:\"ℯ\",esdot:\"≐\",Esim:\"⩳\",esim:\"≂\",Eta:\"Η\",eta:\"η\",ETH:\"Ð\",eth:\"ð\",Euml:\"Ë\",euml:\"ë\",euro:\"€\",excl:\"!\",exist:\"∃\",Exists:\"∃\",expectation:\"ℰ\",ExponentialE:\"ⅇ\",exponentiale:\"ⅇ\",fallingdotseq:\"≒\",Fcy:\"Ф\",fcy:\"ф\",female:\"♀\",ffilig:\"ffi\",fflig:\"ff\",ffllig:\"ffl\",Ffr:\"𝔉\",ffr:\"𝔣\",filig:\"fi\",FilledSmallSquare:\"◼\",FilledVerySmallSquare:\"▪\",fjlig:\"fj\",flat:\"♭\",fllig:\"fl\",fltns:\"▱\",fnof:\"ƒ\",Fopf:\"𝔽\",fopf:\"𝕗\",ForAll:\"∀\",forall:\"∀\",fork:\"⋔\",forkv:\"⫙\",Fouriertrf:\"ℱ\",fpartint:\"⨍\",frac12:\"½\",frac13:\"⅓\",frac14:\"¼\",frac15:\"⅕\",frac16:\"⅙\",frac18:\"⅛\",frac23:\"⅔\",frac25:\"⅖\",frac34:\"¾\",frac35:\"⅗\",frac38:\"⅜\",frac45:\"⅘\",frac56:\"⅚\",frac58:\"⅝\",frac78:\"⅞\",frasl:\"⁄\",frown:\"⌢\",Fscr:\"ℱ\",fscr:\"𝒻\",gacute:\"ǵ\",Gamma:\"Γ\",gamma:\"γ\",Gammad:\"Ϝ\",gammad:\"ϝ\",gap:\"⪆\",Gbreve:\"Ğ\",gbreve:\"ğ\",Gcedil:\"Ģ\",Gcirc:\"Ĝ\",gcirc:\"ĝ\",Gcy:\"Г\",gcy:\"г\",Gdot:\"Ġ\",gdot:\"ġ\",gE:\"≧\",ge:\"≥\",gEl:\"⪌\",gel:\"⋛\",geq:\"≥\",geqq:\"≧\",geqslant:\"⩾\",ges:\"⩾\",gescc:\"⪩\",gesdot:\"⪀\",gesdoto:\"⪂\",gesdotol:\"⪄\",gesl:\"⋛︀\",gesles:\"⪔\",Gfr:\"𝔊\",gfr:\"𝔤\",Gg:\"⋙\",gg:\"≫\",ggg:\"⋙\",gimel:\"ℷ\",GJcy:\"Ѓ\",gjcy:\"ѓ\",gl:\"≷\",gla:\"⪥\",glE:\"⪒\",glj:\"⪤\",gnap:\"⪊\",gnapprox:\"⪊\",gnE:\"≩\",gne:\"⪈\",gneq:\"⪈\",gneqq:\"≩\",gnsim:\"⋧\",Gopf:\"𝔾\",gopf:\"𝕘\",grave:\"`\",GreaterEqual:\"≥\",GreaterEqualLess:\"⋛\",GreaterFullEqual:\"≧\",GreaterGreater:\"⪢\",GreaterLess:\"≷\",GreaterSlantEqual:\"⩾\",GreaterTilde:\"≳\",Gscr:\"𝒢\",gscr:\"ℊ\",gsim:\"≳\",gsime:\"⪎\",gsiml:\"⪐\",GT:\">\",Gt:\"≫\",gt:\">\",gtcc:\"⪧\",gtcir:\"⩺\",gtdot:\"⋗\",gtlPar:\"⦕\",gtquest:\"⩼\",gtrapprox:\"⪆\",gtrarr:\"⥸\",gtrdot:\"⋗\",gtreqless:\"⋛\",gtreqqless:\"⪌\",gtrless:\"≷\",gtrsim:\"≳\",gvertneqq:\"≩︀\",gvnE:\"≩︀\",Hacek:\"ˇ\",hairsp:\" \",half:\"½\",hamilt:\"ℋ\",HARDcy:\"Ъ\",hardcy:\"ъ\",hArr:\"⇔\",harr:\"↔\",harrcir:\"⥈\",harrw:\"↭\",Hat:\"^\",hbar:\"ℏ\",Hcirc:\"Ĥ\",hcirc:\"ĥ\",hearts:\"♥\",heartsuit:\"♥\",hellip:\"…\",hercon:\"⊹\",Hfr:\"ℌ\",hfr:\"𝔥\",HilbertSpace:\"ℋ\",hksearow:\"⤥\",hkswarow:\"⤦\",hoarr:\"⇿\",homtht:\"∻\",hookleftarrow:\"↩\",hookrightarrow:\"↪\",Hopf:\"ℍ\",hopf:\"𝕙\",horbar:\"―\",HorizontalLine:\"─\",Hscr:\"ℋ\",hscr:\"𝒽\",hslash:\"ℏ\",Hstrok:\"Ħ\",hstrok:\"ħ\",HumpDownHump:\"≎\",HumpEqual:\"≏\",hybull:\"⁃\",hyphen:\"‐\",Iacute:\"Í\",iacute:\"í\",ic:\"⁣\",Icirc:\"Î\",icirc:\"î\",Icy:\"И\",icy:\"и\",Idot:\"İ\",IEcy:\"Е\",iecy:\"е\",iexcl:\"¡\",iff:\"⇔\",Ifr:\"ℑ\",ifr:\"𝔦\",Igrave:\"Ì\",igrave:\"ì\",ii:\"ⅈ\",iiiint:\"⨌\",iiint:\"∭\",iinfin:\"⧜\",iiota:\"℩\",IJlig:\"IJ\",ijlig:\"ij\",Im:\"ℑ\",Imacr:\"Ī\",imacr:\"ī\",image:\"ℑ\",ImaginaryI:\"ⅈ\",imagline:\"ℐ\",imagpart:\"ℑ\",imath:\"ı\",imof:\"⊷\",imped:\"Ƶ\",Implies:\"⇒\",in:\"∈\",incare:\"℅\",infin:\"∞\",infintie:\"⧝\",inodot:\"ı\",Int:\"∬\",int:\"∫\",intcal:\"⊺\",integers:\"ℤ\",Integral:\"∫\",intercal:\"⊺\",Intersection:\"⋂\",intlarhk:\"⨗\",intprod:\"⨼\",InvisibleComma:\"⁣\",InvisibleTimes:\"⁢\",IOcy:\"Ё\",iocy:\"ё\",Iogon:\"Į\",iogon:\"į\",Iopf:\"𝕀\",iopf:\"𝕚\",Iota:\"Ι\",iota:\"ι\",iprod:\"⨼\",iquest:\"¿\",Iscr:\"ℐ\",iscr:\"𝒾\",isin:\"∈\",isindot:\"⋵\",isinE:\"⋹\",isins:\"⋴\",isinsv:\"⋳\",isinv:\"∈\",it:\"⁢\",Itilde:\"Ĩ\",itilde:\"ĩ\",Iukcy:\"І\",iukcy:\"і\",Iuml:\"Ï\",iuml:\"ï\",Jcirc:\"Ĵ\",jcirc:\"ĵ\",Jcy:\"Й\",jcy:\"й\",Jfr:\"𝔍\",jfr:\"𝔧\",jmath:\"ȷ\",Jopf:\"𝕁\",jopf:\"𝕛\",Jscr:\"𝒥\",jscr:\"𝒿\",Jsercy:\"Ј\",jsercy:\"ј\",Jukcy:\"Є\",jukcy:\"є\",Kappa:\"Κ\",kappa:\"κ\",kappav:\"ϰ\",Kcedil:\"Ķ\",kcedil:\"ķ\",Kcy:\"К\",kcy:\"к\",Kfr:\"𝔎\",kfr:\"𝔨\",kgreen:\"ĸ\",KHcy:\"Х\",khcy:\"х\",KJcy:\"Ќ\",kjcy:\"ќ\",Kopf:\"𝕂\",kopf:\"𝕜\",Kscr:\"𝒦\",kscr:\"𝓀\",lAarr:\"⇚\",Lacute:\"Ĺ\",lacute:\"ĺ\",laemptyv:\"⦴\",lagran:\"ℒ\",Lambda:\"Λ\",lambda:\"λ\",Lang:\"⟪\",lang:\"⟨\",langd:\"⦑\",langle:\"⟨\",lap:\"⪅\",Laplacetrf:\"ℒ\",laquo:\"«\",Larr:\"↞\",lArr:\"⇐\",larr:\"←\",larrb:\"⇤\",larrbfs:\"⤟\",larrfs:\"⤝\",larrhk:\"↩\",larrlp:\"↫\",larrpl:\"⤹\",larrsim:\"⥳\",larrtl:\"↢\",lat:\"⪫\",lAtail:\"⤛\",latail:\"⤙\",late:\"⪭\",lates:\"⪭︀\",lBarr:\"⤎\",lbarr:\"⤌\",lbbrk:\"❲\",lbrace:\"{\",lbrack:\"[\",lbrke:\"⦋\",lbrksld:\"⦏\",lbrkslu:\"⦍\",Lcaron:\"Ľ\",lcaron:\"ľ\",Lcedil:\"Ļ\",lcedil:\"ļ\",lceil:\"⌈\",lcub:\"{\",Lcy:\"Л\",lcy:\"л\",ldca:\"⤶\",ldquo:\"“\",ldquor:\"„\",ldrdhar:\"⥧\",ldrushar:\"⥋\",ldsh:\"↲\",lE:\"≦\",le:\"≤\",LeftAngleBracket:\"⟨\",LeftArrow:\"←\",Leftarrow:\"⇐\",leftarrow:\"←\",LeftArrowBar:\"⇤\",LeftArrowRightArrow:\"⇆\",leftarrowtail:\"↢\",LeftCeiling:\"⌈\",LeftDoubleBracket:\"⟦\",LeftDownTeeVector:\"⥡\",LeftDownVector:\"⇃\",LeftDownVectorBar:\"⥙\",LeftFloor:\"⌊\",leftharpoondown:\"↽\",leftharpoonup:\"↼\",leftleftarrows:\"⇇\",LeftRightArrow:\"↔\",Leftrightarrow:\"⇔\",leftrightarrow:\"↔\",leftrightarrows:\"⇆\",leftrightharpoons:\"⇋\",leftrightsquigarrow:\"↭\",LeftRightVector:\"⥎\",LeftTee:\"⊣\",LeftTeeArrow:\"↤\",LeftTeeVector:\"⥚\",leftthreetimes:\"⋋\",LeftTriangle:\"⊲\",LeftTriangleBar:\"⧏\",LeftTriangleEqual:\"⊴\",LeftUpDownVector:\"⥑\",LeftUpTeeVector:\"⥠\",LeftUpVector:\"↿\",LeftUpVectorBar:\"⥘\",LeftVector:\"↼\",LeftVectorBar:\"⥒\",lEg:\"⪋\",leg:\"⋚\",leq:\"≤\",leqq:\"≦\",leqslant:\"⩽\",les:\"⩽\",lescc:\"⪨\",lesdot:\"⩿\",lesdoto:\"⪁\",lesdotor:\"⪃\",lesg:\"⋚︀\",lesges:\"⪓\",lessapprox:\"⪅\",lessdot:\"⋖\",lesseqgtr:\"⋚\",lesseqqgtr:\"⪋\",LessEqualGreater:\"⋚\",LessFullEqual:\"≦\",LessGreater:\"≶\",lessgtr:\"≶\",LessLess:\"⪡\",lesssim:\"≲\",LessSlantEqual:\"⩽\",LessTilde:\"≲\",lfisht:\"⥼\",lfloor:\"⌊\",Lfr:\"𝔏\",lfr:\"𝔩\",lg:\"≶\",lgE:\"⪑\",lHar:\"⥢\",lhard:\"↽\",lharu:\"↼\",lharul:\"⥪\",lhblk:\"▄\",LJcy:\"Љ\",ljcy:\"љ\",Ll:\"⋘\",ll:\"≪\",llarr:\"⇇\",llcorner:\"⌞\",Lleftarrow:\"⇚\",llhard:\"⥫\",lltri:\"◺\",Lmidot:\"Ŀ\",lmidot:\"ŀ\",lmoust:\"⎰\",lmoustache:\"⎰\",lnap:\"⪉\",lnapprox:\"⪉\",lnE:\"≨\",lne:\"⪇\",lneq:\"⪇\",lneqq:\"≨\",lnsim:\"⋦\",loang:\"⟬\",loarr:\"⇽\",lobrk:\"⟦\",LongLeftArrow:\"⟵\",Longleftarrow:\"⟸\",longleftarrow:\"⟵\",LongLeftRightArrow:\"⟷\",Longleftrightarrow:\"⟺\",longleftrightarrow:\"⟷\",longmapsto:\"⟼\",LongRightArrow:\"⟶\",Longrightarrow:\"⟹\",longrightarrow:\"⟶\",looparrowleft:\"↫\",looparrowright:\"↬\",lopar:\"⦅\",Lopf:\"𝕃\",lopf:\"𝕝\",loplus:\"⨭\",lotimes:\"⨴\",lowast:\"∗\",lowbar:\"_\",LowerLeftArrow:\"↙\",LowerRightArrow:\"↘\",loz:\"◊\",lozenge:\"◊\",lozf:\"⧫\",lpar:\"(\",lparlt:\"⦓\",lrarr:\"⇆\",lrcorner:\"⌟\",lrhar:\"⇋\",lrhard:\"⥭\",lrm:\"‎\",lrtri:\"⊿\",lsaquo:\"‹\",Lscr:\"ℒ\",lscr:\"𝓁\",Lsh:\"↰\",lsh:\"↰\",lsim:\"≲\",lsime:\"⪍\",lsimg:\"⪏\",lsqb:\"[\",lsquo:\"‘\",lsquor:\"‚\",Lstrok:\"Ł\",lstrok:\"ł\",LT:\"<\",Lt:\"≪\",lt:\"<\",ltcc:\"⪦\",ltcir:\"⩹\",ltdot:\"⋖\",lthree:\"⋋\",ltimes:\"⋉\",ltlarr:\"⥶\",ltquest:\"⩻\",ltri:\"◃\",ltrie:\"⊴\",ltrif:\"◂\",ltrPar:\"⦖\",lurdshar:\"⥊\",luruhar:\"⥦\",lvertneqq:\"≨︀\",lvnE:\"≨︀\",macr:\"¯\",male:\"♂\",malt:\"✠\",maltese:\"✠\",Map:\"⤅\",map:\"↦\",mapsto:\"↦\",mapstodown:\"↧\",mapstoleft:\"↤\",mapstoup:\"↥\",marker:\"▮\",mcomma:\"⨩\",Mcy:\"М\",mcy:\"м\",mdash:\"—\",mDDot:\"∺\",measuredangle:\"∡\",MediumSpace:\" \",Mellintrf:\"ℳ\",Mfr:\"𝔐\",mfr:\"𝔪\",mho:\"℧\",micro:\"µ\",mid:\"∣\",midast:\"*\",midcir:\"⫰\",middot:\"·\",minus:\"−\",minusb:\"⊟\",minusd:\"∸\",minusdu:\"⨪\",MinusPlus:\"∓\",mlcp:\"⫛\",mldr:\"…\",mnplus:\"∓\",models:\"⊧\",Mopf:\"𝕄\",mopf:\"𝕞\",mp:\"∓\",Mscr:\"ℳ\",mscr:\"𝓂\",mstpos:\"∾\",Mu:\"Μ\",mu:\"μ\",multimap:\"⊸\",mumap:\"⊸\",nabla:\"∇\",Nacute:\"Ń\",nacute:\"ń\",nang:\"∠⃒\",nap:\"≉\",napE:\"⩰̸\",napid:\"≋̸\",napos:\"ʼn\",napprox:\"≉\",natur:\"♮\",natural:\"♮\",naturals:\"ℕ\",nbsp:\" \",nbump:\"≎̸\",nbumpe:\"≏̸\",ncap:\"⩃\",Ncaron:\"Ň\",ncaron:\"ň\",Ncedil:\"Ņ\",ncedil:\"ņ\",ncong:\"≇\",ncongdot:\"⩭̸\",ncup:\"⩂\",Ncy:\"Н\",ncy:\"н\",ndash:\"–\",ne:\"≠\",nearhk:\"⤤\",neArr:\"⇗\",nearr:\"↗\",nearrow:\"↗\",nedot:\"≐̸\",NegativeMediumSpace:\"​\",NegativeThickSpace:\"​\",NegativeThinSpace:\"​\",NegativeVeryThinSpace:\"​\",nequiv:\"≢\",nesear:\"⤨\",nesim:\"≂̸\",NestedGreaterGreater:\"≫\",NestedLessLess:\"≪\",NewLine:\"\\n\",nexist:\"∄\",nexists:\"∄\",Nfr:\"𝔑\",nfr:\"𝔫\",ngE:\"≧̸\",nge:\"≱\",ngeq:\"≱\",ngeqq:\"≧̸\",ngeqslant:\"⩾̸\",nges:\"⩾̸\",nGg:\"⋙̸\",ngsim:\"≵\",nGt:\"≫⃒\",ngt:\"≯\",ngtr:\"≯\",nGtv:\"≫̸\",nhArr:\"⇎\",nharr:\"↮\",nhpar:\"⫲\",ni:\"∋\",nis:\"⋼\",nisd:\"⋺\",niv:\"∋\",NJcy:\"Њ\",njcy:\"њ\",nlArr:\"⇍\",nlarr:\"↚\",nldr:\"‥\",nlE:\"≦̸\",nle:\"≰\",nLeftarrow:\"⇍\",nleftarrow:\"↚\",nLeftrightarrow:\"⇎\",nleftrightarrow:\"↮\",nleq:\"≰\",nleqq:\"≦̸\",nleqslant:\"⩽̸\",nles:\"⩽̸\",nless:\"≮\",nLl:\"⋘̸\",nlsim:\"≴\",nLt:\"≪⃒\",nlt:\"≮\",nltri:\"⋪\",nltrie:\"⋬\",nLtv:\"≪̸\",nmid:\"∤\",NoBreak:\"⁠\",NonBreakingSpace:\" \",Nopf:\"ℕ\",nopf:\"𝕟\",Not:\"⫬\",not:\"¬\",NotCongruent:\"≢\",NotCupCap:\"≭\",NotDoubleVerticalBar:\"∦\",NotElement:\"∉\",NotEqual:\"≠\",NotEqualTilde:\"≂̸\",NotExists:\"∄\",NotGreater:\"≯\",NotGreaterEqual:\"≱\",NotGreaterFullEqual:\"≧̸\",NotGreaterGreater:\"≫̸\",NotGreaterLess:\"≹\",NotGreaterSlantEqual:\"⩾̸\",NotGreaterTilde:\"≵\",NotHumpDownHump:\"≎̸\",NotHumpEqual:\"≏̸\",notin:\"∉\",notindot:\"⋵̸\",notinE:\"⋹̸\",notinva:\"∉\",notinvb:\"⋷\",notinvc:\"⋶\",NotLeftTriangle:\"⋪\",NotLeftTriangleBar:\"⧏̸\",NotLeftTriangleEqual:\"⋬\",NotLess:\"≮\",NotLessEqual:\"≰\",NotLessGreater:\"≸\",NotLessLess:\"≪̸\",NotLessSlantEqual:\"⩽̸\",NotLessTilde:\"≴\",NotNestedGreaterGreater:\"⪢̸\",NotNestedLessLess:\"⪡̸\",notni:\"∌\",notniva:\"∌\",notnivb:\"⋾\",notnivc:\"⋽\",NotPrecedes:\"⊀\",NotPrecedesEqual:\"⪯̸\",NotPrecedesSlantEqual:\"⋠\",NotReverseElement:\"∌\",NotRightTriangle:\"⋫\",NotRightTriangleBar:\"⧐̸\",NotRightTriangleEqual:\"⋭\",NotSquareSubset:\"⊏̸\",NotSquareSubsetEqual:\"⋢\",NotSquareSuperset:\"⊐̸\",NotSquareSupersetEqual:\"⋣\",NotSubset:\"⊂⃒\",NotSubsetEqual:\"⊈\",NotSucceeds:\"⊁\",NotSucceedsEqual:\"⪰̸\",NotSucceedsSlantEqual:\"⋡\",NotSucceedsTilde:\"≿̸\",NotSuperset:\"⊃⃒\",NotSupersetEqual:\"⊉\",NotTilde:\"≁\",NotTildeEqual:\"≄\",NotTildeFullEqual:\"≇\",NotTildeTilde:\"≉\",NotVerticalBar:\"∤\",npar:\"∦\",nparallel:\"∦\",nparsl:\"⫽⃥\",npart:\"∂̸\",npolint:\"⨔\",npr:\"⊀\",nprcue:\"⋠\",npre:\"⪯̸\",nprec:\"⊀\",npreceq:\"⪯̸\",nrArr:\"⇏\",nrarr:\"↛\",nrarrc:\"⤳̸\",nrarrw:\"↝̸\",nRightarrow:\"⇏\",nrightarrow:\"↛\",nrtri:\"⋫\",nrtrie:\"⋭\",nsc:\"⊁\",nsccue:\"⋡\",nsce:\"⪰̸\",Nscr:\"𝒩\",nscr:\"𝓃\",nshortmid:\"∤\",nshortparallel:\"∦\",nsim:\"≁\",nsime:\"≄\",nsimeq:\"≄\",nsmid:\"∤\",nspar:\"∦\",nsqsube:\"⋢\",nsqsupe:\"⋣\",nsub:\"⊄\",nsubE:\"⫅̸\",nsube:\"⊈\",nsubset:\"⊂⃒\",nsubseteq:\"⊈\",nsubseteqq:\"⫅̸\",nsucc:\"⊁\",nsucceq:\"⪰̸\",nsup:\"⊅\",nsupE:\"⫆̸\",nsupe:\"⊉\",nsupset:\"⊃⃒\",nsupseteq:\"⊉\",nsupseteqq:\"⫆̸\",ntgl:\"≹\",Ntilde:\"Ñ\",ntilde:\"ñ\",ntlg:\"≸\",ntriangleleft:\"⋪\",ntrianglelefteq:\"⋬\",ntriangleright:\"⋫\",ntrianglerighteq:\"⋭\",Nu:\"Ν\",nu:\"ν\",num:\"#\",numero:\"№\",numsp:\" \",nvap:\"≍⃒\",nVDash:\"⊯\",nVdash:\"⊮\",nvDash:\"⊭\",nvdash:\"⊬\",nvge:\"≥⃒\",nvgt:\">⃒\",nvHarr:\"⤄\",nvinfin:\"⧞\",nvlArr:\"⤂\",nvle:\"≤⃒\",nvlt:\"<⃒\",nvltrie:\"⊴⃒\",nvrArr:\"⤃\",nvrtrie:\"⊵⃒\",nvsim:\"∼⃒\",nwarhk:\"⤣\",nwArr:\"⇖\",nwarr:\"↖\",nwarrow:\"↖\",nwnear:\"⤧\",Oacute:\"Ó\",oacute:\"ó\",oast:\"⊛\",ocir:\"⊚\",Ocirc:\"Ô\",ocirc:\"ô\",Ocy:\"О\",ocy:\"о\",odash:\"⊝\",Odblac:\"Ő\",odblac:\"ő\",odiv:\"⨸\",odot:\"⊙\",odsold:\"⦼\",OElig:\"Œ\",oelig:\"œ\",ofcir:\"⦿\",Ofr:\"𝔒\",ofr:\"𝔬\",ogon:\"˛\",Ograve:\"Ò\",ograve:\"ò\",ogt:\"⧁\",ohbar:\"⦵\",ohm:\"Ω\",oint:\"∮\",olarr:\"↺\",olcir:\"⦾\",olcross:\"⦻\",oline:\"‾\",olt:\"⧀\",Omacr:\"Ō\",omacr:\"ō\",Omega:\"Ω\",omega:\"ω\",Omicron:\"Ο\",omicron:\"ο\",omid:\"⦶\",ominus:\"⊖\",Oopf:\"𝕆\",oopf:\"𝕠\",opar:\"⦷\",OpenCurlyDoubleQuote:\"“\",OpenCurlyQuote:\"‘\",operp:\"⦹\",oplus:\"⊕\",Or:\"⩔\",or:\"∨\",orarr:\"↻\",ord:\"⩝\",order:\"ℴ\",orderof:\"ℴ\",ordf:\"ª\",ordm:\"º\",origof:\"⊶\",oror:\"⩖\",orslope:\"⩗\",orv:\"⩛\",oS:\"Ⓢ\",Oscr:\"𝒪\",oscr:\"ℴ\",Oslash:\"Ø\",oslash:\"ø\",osol:\"⊘\",Otilde:\"Õ\",otilde:\"õ\",Otimes:\"⨷\",otimes:\"⊗\",otimesas:\"⨶\",Ouml:\"Ö\",ouml:\"ö\",ovbar:\"⌽\",OverBar:\"‾\",OverBrace:\"⏞\",OverBracket:\"⎴\",OverParenthesis:\"⏜\",par:\"∥\",para:\"¶\",parallel:\"∥\",parsim:\"⫳\",parsl:\"⫽\",part:\"∂\",PartialD:\"∂\",Pcy:\"П\",pcy:\"п\",percnt:\"%\",period:\".\",permil:\"‰\",perp:\"⊥\",pertenk:\"‱\",Pfr:\"𝔓\",pfr:\"𝔭\",Phi:\"Φ\",phi:\"φ\",phiv:\"ϕ\",phmmat:\"ℳ\",phone:\"☎\",Pi:\"Π\",pi:\"π\",pitchfork:\"⋔\",piv:\"ϖ\",planck:\"ℏ\",planckh:\"ℎ\",plankv:\"ℏ\",plus:\"+\",plusacir:\"⨣\",plusb:\"⊞\",pluscir:\"⨢\",plusdo:\"∔\",plusdu:\"⨥\",pluse:\"⩲\",PlusMinus:\"±\",plusmn:\"±\",plussim:\"⨦\",plustwo:\"⨧\",pm:\"±\",Poincareplane:\"ℌ\",pointint:\"⨕\",Popf:\"ℙ\",popf:\"𝕡\",pound:\"£\",Pr:\"⪻\",pr:\"≺\",prap:\"⪷\",prcue:\"≼\",prE:\"⪳\",pre:\"⪯\",prec:\"≺\",precapprox:\"⪷\",preccurlyeq:\"≼\",Precedes:\"≺\",PrecedesEqual:\"⪯\",PrecedesSlantEqual:\"≼\",PrecedesTilde:\"≾\",preceq:\"⪯\",precnapprox:\"⪹\",precneqq:\"⪵\",precnsim:\"⋨\",precsim:\"≾\",Prime:\"″\",prime:\"′\",primes:\"ℙ\",prnap:\"⪹\",prnE:\"⪵\",prnsim:\"⋨\",prod:\"∏\",Product:\"∏\",profalar:\"⌮\",profline:\"⌒\",profsurf:\"⌓\",prop:\"∝\",Proportion:\"∷\",Proportional:\"∝\",propto:\"∝\",prsim:\"≾\",prurel:\"⊰\",Pscr:\"𝒫\",pscr:\"𝓅\",Psi:\"Ψ\",psi:\"ψ\",puncsp:\" \",Qfr:\"𝔔\",qfr:\"𝔮\",qint:\"⨌\",Qopf:\"ℚ\",qopf:\"𝕢\",qprime:\"⁗\",Qscr:\"𝒬\",qscr:\"𝓆\",quaternions:\"ℍ\",quatint:\"⨖\",quest:\"?\",questeq:\"≟\",QUOT:'\"',quot:'\"',rAarr:\"⇛\",race:\"∽̱\",Racute:\"Ŕ\",racute:\"ŕ\",radic:\"√\",raemptyv:\"⦳\",Rang:\"⟫\",rang:\"⟩\",rangd:\"⦒\",range:\"⦥\",rangle:\"⟩\",raquo:\"»\",Rarr:\"↠\",rArr:\"⇒\",rarr:\"→\",rarrap:\"⥵\",rarrb:\"⇥\",rarrbfs:\"⤠\",rarrc:\"⤳\",rarrfs:\"⤞\",rarrhk:\"↪\",rarrlp:\"↬\",rarrpl:\"⥅\",rarrsim:\"⥴\",Rarrtl:\"⤖\",rarrtl:\"↣\",rarrw:\"↝\",rAtail:\"⤜\",ratail:\"⤚\",ratio:\"∶\",rationals:\"ℚ\",RBarr:\"⤐\",rBarr:\"⤏\",rbarr:\"⤍\",rbbrk:\"❳\",rbrace:\"}\",rbrack:\"]\",rbrke:\"⦌\",rbrksld:\"⦎\",rbrkslu:\"⦐\",Rcaron:\"Ř\",rcaron:\"ř\",Rcedil:\"Ŗ\",rcedil:\"ŗ\",rceil:\"⌉\",rcub:\"}\",Rcy:\"Р\",rcy:\"р\",rdca:\"⤷\",rdldhar:\"⥩\",rdquo:\"”\",rdquor:\"”\",rdsh:\"↳\",Re:\"ℜ\",real:\"ℜ\",realine:\"ℛ\",realpart:\"ℜ\",reals:\"ℝ\",rect:\"▭\",REG:\"®\",reg:\"®\",ReverseElement:\"∋\",ReverseEquilibrium:\"⇋\",ReverseUpEquilibrium:\"⥯\",rfisht:\"⥽\",rfloor:\"⌋\",Rfr:\"ℜ\",rfr:\"𝔯\",rHar:\"⥤\",rhard:\"⇁\",rharu:\"⇀\",rharul:\"⥬\",Rho:\"Ρ\",rho:\"ρ\",rhov:\"ϱ\",RightAngleBracket:\"⟩\",RightArrow:\"→\",Rightarrow:\"⇒\",rightarrow:\"→\",RightArrowBar:\"⇥\",RightArrowLeftArrow:\"⇄\",rightarrowtail:\"↣\",RightCeiling:\"⌉\",RightDoubleBracket:\"⟧\",RightDownTeeVector:\"⥝\",RightDownVector:\"⇂\",RightDownVectorBar:\"⥕\",RightFloor:\"⌋\",rightharpoondown:\"⇁\",rightharpoonup:\"⇀\",rightleftarrows:\"⇄\",rightleftharpoons:\"⇌\",rightrightarrows:\"⇉\",rightsquigarrow:\"↝\",RightTee:\"⊢\",RightTeeArrow:\"↦\",RightTeeVector:\"⥛\",rightthreetimes:\"⋌\",RightTriangle:\"⊳\",RightTriangleBar:\"⧐\",RightTriangleEqual:\"⊵\",RightUpDownVector:\"⥏\",RightUpTeeVector:\"⥜\",RightUpVector:\"↾\",RightUpVectorBar:\"⥔\",RightVector:\"⇀\",RightVectorBar:\"⥓\",ring:\"˚\",risingdotseq:\"≓\",rlarr:\"⇄\",rlhar:\"⇌\",rlm:\"‏\",rmoust:\"⎱\",rmoustache:\"⎱\",rnmid:\"⫮\",roang:\"⟭\",roarr:\"⇾\",robrk:\"⟧\",ropar:\"⦆\",Ropf:\"ℝ\",ropf:\"𝕣\",roplus:\"⨮\",rotimes:\"⨵\",RoundImplies:\"⥰\",rpar:\")\",rpargt:\"⦔\",rppolint:\"⨒\",rrarr:\"⇉\",Rrightarrow:\"⇛\",rsaquo:\"›\",Rscr:\"ℛ\",rscr:\"𝓇\",Rsh:\"↱\",rsh:\"↱\",rsqb:\"]\",rsquo:\"’\",rsquor:\"’\",rthree:\"⋌\",rtimes:\"⋊\",rtri:\"▹\",rtrie:\"⊵\",rtrif:\"▸\",rtriltri:\"⧎\",RuleDelayed:\"⧴\",ruluhar:\"⥨\",rx:\"℞\",Sacute:\"Ś\",sacute:\"ś\",sbquo:\"‚\",Sc:\"⪼\",sc:\"≻\",scap:\"⪸\",Scaron:\"Š\",scaron:\"š\",sccue:\"≽\",scE:\"⪴\",sce:\"⪰\",Scedil:\"Ş\",scedil:\"ş\",Scirc:\"Ŝ\",scirc:\"ŝ\",scnap:\"⪺\",scnE:\"⪶\",scnsim:\"⋩\",scpolint:\"⨓\",scsim:\"≿\",Scy:\"С\",scy:\"с\",sdot:\"⋅\",sdotb:\"⊡\",sdote:\"⩦\",searhk:\"⤥\",seArr:\"⇘\",searr:\"↘\",searrow:\"↘\",sect:\"§\",semi:\";\",seswar:\"⤩\",setminus:\"∖\",setmn:\"∖\",sext:\"✶\",Sfr:\"𝔖\",sfr:\"𝔰\",sfrown:\"⌢\",sharp:\"♯\",SHCHcy:\"Щ\",shchcy:\"щ\",SHcy:\"Ш\",shcy:\"ш\",ShortDownArrow:\"↓\",ShortLeftArrow:\"←\",shortmid:\"∣\",shortparallel:\"∥\",ShortRightArrow:\"→\",ShortUpArrow:\"↑\",shy:\"­\",Sigma:\"Σ\",sigma:\"σ\",sigmaf:\"ς\",sigmav:\"ς\",sim:\"∼\",simdot:\"⩪\",sime:\"≃\",simeq:\"≃\",simg:\"⪞\",simgE:\"⪠\",siml:\"⪝\",simlE:\"⪟\",simne:\"≆\",simplus:\"⨤\",simrarr:\"⥲\",slarr:\"←\",SmallCircle:\"∘\",smallsetminus:\"∖\",smashp:\"⨳\",smeparsl:\"⧤\",smid:\"∣\",smile:\"⌣\",smt:\"⪪\",smte:\"⪬\",smtes:\"⪬︀\",SOFTcy:\"Ь\",softcy:\"ь\",sol:\"/\",solb:\"⧄\",solbar:\"⌿\",Sopf:\"𝕊\",sopf:\"𝕤\",spades:\"♠\",spadesuit:\"♠\",spar:\"∥\",sqcap:\"⊓\",sqcaps:\"⊓︀\",sqcup:\"⊔\",sqcups:\"⊔︀\",Sqrt:\"√\",sqsub:\"⊏\",sqsube:\"⊑\",sqsubset:\"⊏\",sqsubseteq:\"⊑\",sqsup:\"⊐\",sqsupe:\"⊒\",sqsupset:\"⊐\",sqsupseteq:\"⊒\",squ:\"□\",Square:\"□\",square:\"□\",SquareIntersection:\"⊓\",SquareSubset:\"⊏\",SquareSubsetEqual:\"⊑\",SquareSuperset:\"⊐\",SquareSupersetEqual:\"⊒\",SquareUnion:\"⊔\",squarf:\"▪\",squf:\"▪\",srarr:\"→\",Sscr:\"𝒮\",sscr:\"𝓈\",ssetmn:\"∖\",ssmile:\"⌣\",sstarf:\"⋆\",Star:\"⋆\",star:\"☆\",starf:\"★\",straightepsilon:\"ϵ\",straightphi:\"ϕ\",strns:\"¯\",Sub:\"⋐\",sub:\"⊂\",subdot:\"⪽\",subE:\"⫅\",sube:\"⊆\",subedot:\"⫃\",submult:\"⫁\",subnE:\"⫋\",subne:\"⊊\",subplus:\"⪿\",subrarr:\"⥹\",Subset:\"⋐\",subset:\"⊂\",subseteq:\"⊆\",subseteqq:\"⫅\",SubsetEqual:\"⊆\",subsetneq:\"⊊\",subsetneqq:\"⫋\",subsim:\"⫇\",subsub:\"⫕\",subsup:\"⫓\",succ:\"≻\",succapprox:\"⪸\",succcurlyeq:\"≽\",Succeeds:\"≻\",SucceedsEqual:\"⪰\",SucceedsSlantEqual:\"≽\",SucceedsTilde:\"≿\",succeq:\"⪰\",succnapprox:\"⪺\",succneqq:\"⪶\",succnsim:\"⋩\",succsim:\"≿\",SuchThat:\"∋\",Sum:\"∑\",sum:\"∑\",sung:\"♪\",Sup:\"⋑\",sup:\"⊃\",sup1:\"¹\",sup2:\"²\",sup3:\"³\",supdot:\"⪾\",supdsub:\"⫘\",supE:\"⫆\",supe:\"⊇\",supedot:\"⫄\",Superset:\"⊃\",SupersetEqual:\"⊇\",suphsol:\"⟉\",suphsub:\"⫗\",suplarr:\"⥻\",supmult:\"⫂\",supnE:\"⫌\",supne:\"⊋\",supplus:\"⫀\",Supset:\"⋑\",supset:\"⊃\",supseteq:\"⊇\",supseteqq:\"⫆\",supsetneq:\"⊋\",supsetneqq:\"⫌\",supsim:\"⫈\",supsub:\"⫔\",supsup:\"⫖\",swarhk:\"⤦\",swArr:\"⇙\",swarr:\"↙\",swarrow:\"↙\",swnwar:\"⤪\",szlig:\"ß\",Tab:\"\\t\",target:\"⌖\",Tau:\"Τ\",tau:\"τ\",tbrk:\"⎴\",Tcaron:\"Ť\",tcaron:\"ť\",Tcedil:\"Ţ\",tcedil:\"ţ\",Tcy:\"Т\",tcy:\"т\",tdot:\"⃛\",telrec:\"⌕\",Tfr:\"𝔗\",tfr:\"𝔱\",there4:\"∴\",Therefore:\"∴\",therefore:\"∴\",Theta:\"Θ\",theta:\"θ\",thetasym:\"ϑ\",thetav:\"ϑ\",thickapprox:\"≈\",thicksim:\"∼\",ThickSpace:\"  \",thinsp:\" \",ThinSpace:\" \",thkap:\"≈\",thksim:\"∼\",THORN:\"Þ\",thorn:\"þ\",Tilde:\"∼\",tilde:\"˜\",TildeEqual:\"≃\",TildeFullEqual:\"≅\",TildeTilde:\"≈\",times:\"×\",timesb:\"⊠\",timesbar:\"⨱\",timesd:\"⨰\",tint:\"∭\",toea:\"⤨\",top:\"⊤\",topbot:\"⌶\",topcir:\"⫱\",Topf:\"𝕋\",topf:\"𝕥\",topfork:\"⫚\",tosa:\"⤩\",tprime:\"‴\",TRADE:\"™\",trade:\"™\",triangle:\"▵\",triangledown:\"▿\",triangleleft:\"◃\",trianglelefteq:\"⊴\",triangleq:\"≜\",triangleright:\"▹\",trianglerighteq:\"⊵\",tridot:\"◬\",trie:\"≜\",triminus:\"⨺\",TripleDot:\"⃛\",triplus:\"⨹\",trisb:\"⧍\",tritime:\"⨻\",trpezium:\"⏢\",Tscr:\"𝒯\",tscr:\"𝓉\",TScy:\"Ц\",tscy:\"ц\",TSHcy:\"Ћ\",tshcy:\"ћ\",Tstrok:\"Ŧ\",tstrok:\"ŧ\",twixt:\"≬\",twoheadleftarrow:\"↞\",twoheadrightarrow:\"↠\",Uacute:\"Ú\",uacute:\"ú\",Uarr:\"↟\",uArr:\"⇑\",uarr:\"↑\",Uarrocir:\"⥉\",Ubrcy:\"Ў\",ubrcy:\"ў\",Ubreve:\"Ŭ\",ubreve:\"ŭ\",Ucirc:\"Û\",ucirc:\"û\",Ucy:\"У\",ucy:\"у\",udarr:\"⇅\",Udblac:\"Ű\",udblac:\"ű\",udhar:\"⥮\",ufisht:\"⥾\",Ufr:\"𝔘\",ufr:\"𝔲\",Ugrave:\"Ù\",ugrave:\"ù\",uHar:\"⥣\",uharl:\"↿\",uharr:\"↾\",uhblk:\"▀\",ulcorn:\"⌜\",ulcorner:\"⌜\",ulcrop:\"⌏\",ultri:\"◸\",Umacr:\"Ū\",umacr:\"ū\",uml:\"¨\",UnderBar:\"_\",UnderBrace:\"⏟\",UnderBracket:\"⎵\",UnderParenthesis:\"⏝\",Union:\"⋃\",UnionPlus:\"⊎\",Uogon:\"Ų\",uogon:\"ų\",Uopf:\"𝕌\",uopf:\"𝕦\",UpArrow:\"↑\",Uparrow:\"⇑\",uparrow:\"↑\",UpArrowBar:\"⤒\",UpArrowDownArrow:\"⇅\",UpDownArrow:\"↕\",Updownarrow:\"⇕\",updownarrow:\"↕\",UpEquilibrium:\"⥮\",upharpoonleft:\"↿\",upharpoonright:\"↾\",uplus:\"⊎\",UpperLeftArrow:\"↖\",UpperRightArrow:\"↗\",Upsi:\"ϒ\",upsi:\"υ\",upsih:\"ϒ\",Upsilon:\"Υ\",upsilon:\"υ\",UpTee:\"⊥\",UpTeeArrow:\"↥\",upuparrows:\"⇈\",urcorn:\"⌝\",urcorner:\"⌝\",urcrop:\"⌎\",Uring:\"Ů\",uring:\"ů\",urtri:\"◹\",Uscr:\"𝒰\",uscr:\"𝓊\",utdot:\"⋰\",Utilde:\"Ũ\",utilde:\"ũ\",utri:\"▵\",utrif:\"▴\",uuarr:\"⇈\",Uuml:\"Ü\",uuml:\"ü\",uwangle:\"⦧\",vangrt:\"⦜\",varepsilon:\"ϵ\",varkappa:\"ϰ\",varnothing:\"∅\",varphi:\"ϕ\",varpi:\"ϖ\",varpropto:\"∝\",vArr:\"⇕\",varr:\"↕\",varrho:\"ϱ\",varsigma:\"ς\",varsubsetneq:\"⊊︀\",varsubsetneqq:\"⫋︀\",varsupsetneq:\"⊋︀\",varsupsetneqq:\"⫌︀\",vartheta:\"ϑ\",vartriangleleft:\"⊲\",vartriangleright:\"⊳\",Vbar:\"⫫\",vBar:\"⫨\",vBarv:\"⫩\",Vcy:\"В\",vcy:\"в\",VDash:\"⊫\",Vdash:\"⊩\",vDash:\"⊨\",vdash:\"⊢\",Vdashl:\"⫦\",Vee:\"⋁\",vee:\"∨\",veebar:\"⊻\",veeeq:\"≚\",vellip:\"⋮\",Verbar:\"‖\",verbar:\"|\",Vert:\"‖\",vert:\"|\",VerticalBar:\"∣\",VerticalLine:\"|\",VerticalSeparator:\"❘\",VerticalTilde:\"≀\",VeryThinSpace:\" \",Vfr:\"𝔙\",vfr:\"𝔳\",vltri:\"⊲\",vnsub:\"⊂⃒\",vnsup:\"⊃⃒\",Vopf:\"𝕍\",vopf:\"𝕧\",vprop:\"∝\",vrtri:\"⊳\",Vscr:\"𝒱\",vscr:\"𝓋\",vsubnE:\"⫋︀\",vsubne:\"⊊︀\",vsupnE:\"⫌︀\",vsupne:\"⊋︀\",Vvdash:\"⊪\",vzigzag:\"⦚\",Wcirc:\"Ŵ\",wcirc:\"ŵ\",wedbar:\"⩟\",Wedge:\"⋀\",wedge:\"∧\",wedgeq:\"≙\",weierp:\"℘\",Wfr:\"𝔚\",wfr:\"𝔴\",Wopf:\"𝕎\",wopf:\"𝕨\",wp:\"℘\",wr:\"≀\",wreath:\"≀\",Wscr:\"𝒲\",wscr:\"𝓌\",xcap:\"⋂\",xcirc:\"◯\",xcup:\"⋃\",xdtri:\"▽\",Xfr:\"𝔛\",xfr:\"𝔵\",xhArr:\"⟺\",xharr:\"⟷\",Xi:\"Ξ\",xi:\"ξ\",xlArr:\"⟸\",xlarr:\"⟵\",xmap:\"⟼\",xnis:\"⋻\",xodot:\"⨀\",Xopf:\"𝕏\",xopf:\"𝕩\",xoplus:\"⨁\",xotime:\"⨂\",xrArr:\"⟹\",xrarr:\"⟶\",Xscr:\"𝒳\",xscr:\"𝓍\",xsqcup:\"⨆\",xuplus:\"⨄\",xutri:\"△\",xvee:\"⋁\",xwedge:\"⋀\",Yacute:\"Ý\",yacute:\"ý\",YAcy:\"Я\",yacy:\"я\",Ycirc:\"Ŷ\",ycirc:\"ŷ\",Ycy:\"Ы\",ycy:\"ы\",yen:\"¥\",Yfr:\"𝔜\",yfr:\"𝔶\",YIcy:\"Ї\",yicy:\"ї\",Yopf:\"𝕐\",yopf:\"𝕪\",Yscr:\"𝒴\",yscr:\"𝓎\",YUcy:\"Ю\",yucy:\"ю\",Yuml:\"Ÿ\",yuml:\"ÿ\",Zacute:\"Ź\",zacute:\"ź\",Zcaron:\"Ž\",zcaron:\"ž\",Zcy:\"З\",zcy:\"з\",Zdot:\"Ż\",zdot:\"ż\",zeetrf:\"ℨ\",ZeroWidthSpace:\"​\",Zeta:\"Ζ\",zeta:\"ζ\",Zfr:\"ℨ\",zfr:\"𝔷\",ZHcy:\"Ж\",zhcy:\"ж\",zigrarr:\"⇝\",Zopf:\"ℤ\",zopf:\"𝕫\",Zscr:\"𝒵\",zscr:\"𝓏\",zwj:\"‍\",zwnj:\"‌\"},r=Object.prototype.hasOwnProperty;function n(e){return o=e,(n=t)&&r.call(n,o)?t[e]:e;var n,o}var o=Object.prototype.hasOwnProperty;function s(e,t){return!!e&&o.call(e,t)}function i(e){return[].slice.call(arguments,1).forEach(function(t){if(t){if(\"object\"!=typeof t)throw new TypeError(t+\"must be object\");Object.keys(t).forEach(function(r){e[r]=t[r]})}}),e}var a=/\\\\([\\\\!\"#$%&'()*+,.\\/:;<=>?@[\\]^_`{|}~-])/g;function u(e){return e.indexOf(\"\\\\\")<0?e:e.replace(a,\"$1\")}function l(e){return!(e>=55296&&e<=57343)&&(!(e>=64976&&e<=65007)&&(65535!=(65535&e)&&65534!=(65535&e)&&(!(e>=0&&e<=8)&&(11!==e&&(!(e>=14&&e<=31)&&(!(e>=127&&e<=159)&&!(e>1114111)))))))}function c(e){if(e>65535){var t=55296+((e-=65536)>>10),r=56320+(1023&e);return String.fromCharCode(t,r)}return String.fromCharCode(e)}var p=/&([a-z#][a-z0-9]{1,31});/gi,h=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))/i;function f(e,t){var r=0,o=n(t);return t!==o?o:35===t.charCodeAt(0)&&h.test(t)&&l(r=\"x\"===t[1].toLowerCase()?parseInt(t.slice(2),16):parseInt(t.slice(1),10))?c(r):e}function g(e){return e.indexOf(\"&\")<0?e:e.replace(p,f)}var d=/[&<>\"]/,m=/[&<>\"]/g,b={\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\"};function v(e){return b[e]}function k(e){return d.test(e)?e.replace(m,v):e}var A=Object.freeze({isString:function(e){return\"[object String]\"===function(e){return Object.prototype.toString.call(e)}(e)},has:s,assign:i,unescapeMd:u,isValidEntityCode:l,fromCodePoint:c,replaceEntities:g,escapeHtml:k}),y={};y.blockquote_open=function(){return\"<blockquote>\\n\"},y.blockquote_close=function(e,t){return\"</blockquote>\"+x(e,t)},y.code=function(e,t){return e[t].block?\"<pre><code>\"+k(e[t].content)+\"</code></pre>\"+x(e,t):\"<code>\"+k(e[t].content)+\"</code>\"},y.fence=function(e,t,r,n,o){var i,a,l=e[t],c=\"\",p=r.langPrefix;if(l.params){if(a=(i=l.params.split(/\\s+/g)).join(\" \"),s(o.rules.fence_custom,i[0]))return o.rules.fence_custom[i[0]](e,t,r,n,o);c=' class=\"'+p+k(g(u(a)))+'\"'}return\"<pre><code\"+c+\">\"+(r.highlight&&r.highlight.apply(r.highlight,[l.content].concat(i))||k(l.content))+\"</code></pre>\"+x(e,t)},y.fence_custom={},y.heading_open=function(e,t){return\"<h\"+e[t].hLevel+\">\"},y.heading_close=function(e,t){return\"</h\"+e[t].hLevel+\">\\n\"},y.hr=function(e,t,r){return(r.xhtmlOut?\"<hr />\":\"<hr>\")+x(e,t)},y.bullet_list_open=function(){return\"<ul>\\n\"},y.bullet_list_close=function(e,t){return\"</ul>\"+x(e,t)},y.list_item_open=function(){return\"<li>\"},y.list_item_close=function(){return\"</li>\\n\"},y.ordered_list_open=function(e,t){var r=e[t];return\"<ol\"+(r.order>1?' start=\"'+r.order+'\"':\"\")+\">\\n\"},y.ordered_list_close=function(e,t){return\"</ol>\"+x(e,t)},y.paragraph_open=function(e,t){return e[t].tight?\"\":\"<p>\"},y.paragraph_close=function(e,t){var r=!(e[t].tight&&t&&\"inline\"===e[t-1].type&&!e[t-1].content);return(e[t].tight?\"\":\"</p>\")+(r?x(e,t):\"\")},y.link_open=function(e,t,r){var n=e[t].title?' title=\"'+k(g(e[t].title))+'\"':\"\",o=r.linkTarget?' target=\"'+r.linkTarget+'\"':\"\";return'<a href=\"'+k(e[t].href)+'\"'+n+o+\">\"},y.link_close=function(){return\"</a>\"},y.image=function(e,t,r){var n=' src=\"'+k(e[t].src)+'\"',o=e[t].title?' title=\"'+k(g(e[t].title))+'\"':\"\";return\"<img\"+n+(' alt=\"'+(e[t].alt?k(g(u(e[t].alt))):\"\")+'\"')+o+(r.xhtmlOut?\" /\":\"\")+\">\"},y.table_open=function(){return\"<table>\\n\"},y.table_close=function(){return\"</table>\\n\"},y.thead_open=function(){return\"<thead>\\n\"},y.thead_close=function(){return\"</thead>\\n\"},y.tbody_open=function(){return\"<tbody>\\n\"},y.tbody_close=function(){return\"</tbody>\\n\"},y.tr_open=function(){return\"<tr>\"},y.tr_close=function(){return\"</tr>\\n\"},y.th_open=function(e,t){var r=e[t];return\"<th\"+(r.align?' style=\"text-align:'+r.align+'\"':\"\")+\">\"},y.th_close=function(){return\"</th>\"},y.td_open=function(e,t){var r=e[t];return\"<td\"+(r.align?' style=\"text-align:'+r.align+'\"':\"\")+\">\"},y.td_close=function(){return\"</td>\"},y.strong_open=function(){return\"<strong>\"},y.strong_close=function(){return\"</strong>\"},y.em_open=function(){return\"<em>\"},y.em_close=function(){return\"</em>\"},y.del_open=function(){return\"<del>\"},y.del_close=function(){return\"</del>\"},y.ins_open=function(){return\"<ins>\"},y.ins_close=function(){return\"</ins>\"},y.mark_open=function(){return\"<mark>\"},y.mark_close=function(){return\"</mark>\"},y.sub=function(e,t){return\"<sub>\"+k(e[t].content)+\"</sub>\"},y.sup=function(e,t){return\"<sup>\"+k(e[t].content)+\"</sup>\"},y.hardbreak=function(e,t,r){return r.xhtmlOut?\"<br />\\n\":\"<br>\\n\"},y.softbreak=function(e,t,r){return r.breaks?r.xhtmlOut?\"<br />\\n\":\"<br>\\n\":\"\\n\"},y.text=function(e,t){return k(e[t].content)},y.htmlblock=function(e,t){return e[t].content},y.htmltag=function(e,t){return e[t].content},y.abbr_open=function(e,t){return'<abbr title=\"'+k(g(e[t].title))+'\">'},y.abbr_close=function(){return\"</abbr>\"},y.footnote_ref=function(e,t){var r=Number(e[t].id+1).toString(),n=\"fnref\"+r;return e[t].subId>0&&(n+=\":\"+e[t].subId),'<sup class=\"footnote-ref\"><a href=\"#fn'+r+'\" id=\"'+n+'\">['+r+\"]</a></sup>\"},y.footnote_block_open=function(e,t,r){return(r.xhtmlOut?'<hr class=\"footnotes-sep\" />\\n':'<hr class=\"footnotes-sep\">\\n')+'<section class=\"footnotes\">\\n<ol class=\"footnotes-list\">\\n'},y.footnote_block_close=function(){return\"</ol>\\n</section>\\n\"},y.footnote_open=function(e,t){return'<li id=\"fn'+Number(e[t].id+1).toString()+'\"  class=\"footnote-item\">'},y.footnote_close=function(){return\"</li>\\n\"},y.footnote_anchor=function(e,t){var r=\"fnref\"+Number(e[t].id+1).toString();return e[t].subId>0&&(r+=\":\"+e[t].subId),' <a href=\"#'+r+'\" class=\"footnote-backref\">↩</a>'},y.dl_open=function(){return\"<dl>\\n\"},y.dt_open=function(){return\"<dt>\"},y.dd_open=function(){return\"<dd>\"},y.dl_close=function(){return\"</dl>\\n\"},y.dt_close=function(){return\"</dt>\\n\"},y.dd_close=function(){return\"</dd>\\n\"};var x=y.getBreak=function(e,t){return(t=function e(t,r){return++r>=t.length-2?r:\"paragraph_open\"===t[r].type&&t[r].tight&&\"inline\"===t[r+1].type&&0===t[r+1].content.length&&\"paragraph_close\"===t[r+2].type&&t[r+2].tight?e(t,r+2):r}(e,t))<e.length&&\"list_item_close\"===e[t].type?\"\":\"\\n\"};function w(){this.rules=i({},y),this.getBreak=y.getBreak}function C(){this.__rules__=[],this.__cache__=null}function E(e,t,r,n,o){this.src=e,this.env=n,this.options=r,this.parser=t,this.tokens=o,this.pos=0,this.posMax=this.src.length,this.level=0,this.pending=\"\",this.pendingLevel=0,this.cache=[],this.isInLabel=!1,this.linkLevel=0,this.linkContent=\"\",this.labelUnmatchedScopes=0}function D(e,t){var r,n,o,s=-1,i=e.posMax,a=e.pos,u=e.isInLabel;if(e.isInLabel)return-1;if(e.labelUnmatchedScopes)return e.labelUnmatchedScopes--,-1;for(e.pos=t+1,e.isInLabel=!0,r=1;e.pos<i;){if(91===(o=e.src.charCodeAt(e.pos)))r++;else if(93===o&&0===--r){n=!0;break}e.parser.skipToken(e)}return n?(s=e.pos,e.labelUnmatchedScopes=0):e.labelUnmatchedScopes=r-1,e.pos=a,e.isInLabel=u,s}function _(e,t,r,n){var o,s,i,a,u,l;if(42!==e.charCodeAt(0))return-1;if(91!==e.charCodeAt(1))return-1;if(-1===e.indexOf(\"]:\"))return-1;if((s=D(o=new E(e,t,r,n,[]),1))<0||58!==e.charCodeAt(s+1))return-1;for(a=o.posMax,i=s+2;i<a&&10!==o.src.charCodeAt(i);i++);return u=e.slice(2,s),0===(l=e.slice(s+2,i).trim()).length?-1:(n.abbreviations||(n.abbreviations={}),void 0===n.abbreviations[\":\"+u]&&(n.abbreviations[\":\"+u]=l),i)}function B(e){var t=g(e);try{t=decodeURI(t)}catch(e){}return encodeURI(t)}function q(e,t){var r,n,o,s=t,i=e.posMax;if(60===e.src.charCodeAt(t)){for(t++;t<i;){if(10===(r=e.src.charCodeAt(t)))return!1;if(62===r)return o=B(u(e.src.slice(s+1,t))),!!e.parser.validateLink(o)&&(e.pos=t+1,e.linkContent=o,!0);92===r&&t+1<i?t+=2:t++}return!1}for(n=0;t<i&&32!==(r=e.src.charCodeAt(t))&&!(r<32||127===r);)if(92===r&&t+1<i)t+=2;else{if(40===r&&++n>1)break;if(41===r&&--n<0)break;t++}return s!==t&&(o=u(e.src.slice(s,t)),!!e.parser.validateLink(o)&&(e.linkContent=o,e.pos=t,!0))}function F(e,t){var r,n=t,o=e.posMax,s=e.src.charCodeAt(t);if(34!==s&&39!==s&&40!==s)return!1;for(t++,40===s&&(s=41);t<o;){if((r=e.src.charCodeAt(t))===s)return e.pos=t+1,e.linkContent=u(e.src.slice(n+1,t)),!0;92===r&&t+1<o?t+=2:t++}return!1}function M(e){return e.trim().replace(/\\s+/g,\" \").toUpperCase()}function S(e,t,r,n){var o,s,i,a,u,l,c,p,h;if(91!==e.charCodeAt(0))return-1;if(-1===e.indexOf(\"]:\"))return-1;if((s=D(o=new E(e,t,r,n,[]),0))<0||58!==e.charCodeAt(s+1))return-1;for(a=o.posMax,i=s+2;i<a&&(32===(u=o.src.charCodeAt(i))||10===u);i++);if(!q(o,i))return-1;for(c=o.linkContent,l=i=o.pos,i+=1;i<a&&(32===(u=o.src.charCodeAt(i))||10===u);i++);for(i<a&&l!==i&&F(o,i)?(p=o.linkContent,i=o.pos):(p=\"\",i=l);i<a&&32===o.src.charCodeAt(i);)i++;return i<a&&10!==o.src.charCodeAt(i)?-1:(h=M(e.slice(1,s)),void 0===n.references[h]&&(n.references[h]={title:p,href:c}),i)}w.prototype.renderInline=function(e,t,r){for(var n=this.rules,o=e.length,s=0,i=\"\";o--;)i+=n[e[s].type](e,s++,t,r,this);return i},w.prototype.render=function(e,t,r){for(var n=this.rules,o=e.length,s=-1,i=\"\";++s<o;)\"inline\"===e[s].type?i+=this.renderInline(e[s].children,t,r):i+=n[e[s].type](e,s,t,r,this);return i},C.prototype.__find__=function(e){for(var t=this.__rules__.length,r=-1;t--;)if(this.__rules__[++r].name===e)return r;return-1},C.prototype.__compile__=function(){var e=this,t=[\"\"];e.__rules__.forEach(function(e){e.enabled&&e.alt.forEach(function(e){t.indexOf(e)<0&&t.push(e)})}),e.__cache__={},t.forEach(function(t){e.__cache__[t]=[],e.__rules__.forEach(function(r){r.enabled&&(t&&r.alt.indexOf(t)<0||e.__cache__[t].push(r.fn))})})},C.prototype.at=function(e,t,r){var n=this.__find__(e),o=r||{};if(-1===n)throw new Error(\"Parser rule not found: \"+e);this.__rules__[n].fn=t,this.__rules__[n].alt=o.alt||[],this.__cache__=null},C.prototype.before=function(e,t,r,n){var o=this.__find__(e),s=n||{};if(-1===o)throw new Error(\"Parser rule not found: \"+e);this.__rules__.splice(o,0,{name:t,enabled:!0,fn:r,alt:s.alt||[]}),this.__cache__=null},C.prototype.after=function(e,t,r,n){var o=this.__find__(e),s=n||{};if(-1===o)throw new Error(\"Parser rule not found: \"+e);this.__rules__.splice(o+1,0,{name:t,enabled:!0,fn:r,alt:s.alt||[]}),this.__cache__=null},C.prototype.push=function(e,t,r){var n=r||{};this.__rules__.push({name:e,enabled:!0,fn:t,alt:n.alt||[]}),this.__cache__=null},C.prototype.enable=function(e,t){e=Array.isArray(e)?e:[e],t&&this.__rules__.forEach(function(e){e.enabled=!1}),e.forEach(function(e){var t=this.__find__(e);if(t<0)throw new Error(\"Rules manager: invalid rule name \"+e);this.__rules__[t].enabled=!0},this),this.__cache__=null},C.prototype.disable=function(e){(e=Array.isArray(e)?e:[e]).forEach(function(e){var t=this.__find__(e);if(t<0)throw new Error(\"Rules manager: invalid rule name \"+e);this.__rules__[t].enabled=!1},this),this.__cache__=null},C.prototype.getRules=function(e){return null===this.__cache__&&this.__compile__(),this.__cache__[e]||[]},E.prototype.pushPending=function(){this.tokens.push({type:\"text\",content:this.pending,level:this.pendingLevel}),this.pending=\"\"},E.prototype.push=function(e){this.pending&&this.pushPending(),this.tokens.push(e),this.pendingLevel=this.level},E.prototype.cacheSet=function(e,t){for(var r=this.cache.length;r<=e;r++)this.cache.push(0);this.cache[e]=t},E.prototype.cacheGet=function(e){return e<this.cache.length?this.cache[e]:0};var T=\" \\n()[]'\\\".,!?-\";function L(e){return e.replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g,\"\\\\$1\")}var R=/\\+-|\\.\\.|\\?\\?\\?\\?|!!!!|,,|--/,N=/\\((c|tm|r|p)\\)/gi,z={c:\"©\",r:\"®\",p:\"§\",tm:\"™\"};var P=/['\"]/,j=/['\"]/g,I=/[-\\s()\\[\\]]/,O=\"’\";function U(e,t){return!(t<0||t>=e.length)&&!I.test(e[t])}function H(e,t,r){return e.substr(0,t)+r+e.substr(t+1)}var V=[[\"block\",function(e){e.inlineMode?e.tokens.push({type:\"inline\",content:e.src.replace(/\\n/g,\" \").trim(),level:0,lines:[0,1],children:[]}):e.block.parse(e.src,e.options,e.env,e.tokens)}],[\"abbr\",function(e){var t,r,n,o,s=e.tokens;if(!e.inlineMode)for(t=1,r=s.length-1;t<r;t++)if(\"paragraph_open\"===s[t-1].type&&\"inline\"===s[t].type&&\"paragraph_close\"===s[t+1].type){for(n=s[t].content;n.length&&!((o=_(n,e.inline,e.options,e.env))<0);)n=n.slice(o).trim();s[t].content=n,n.length||(s[t-1].tight=!0,s[t+1].tight=!0)}}],[\"references\",function(e){var t,r,n,o,s=e.tokens;if(e.env.references=e.env.references||{},!e.inlineMode)for(t=1,r=s.length-1;t<r;t++)if(\"inline\"===s[t].type&&\"paragraph_open\"===s[t-1].type&&\"paragraph_close\"===s[t+1].type){for(n=s[t].content;n.length&&!((o=S(n,e.inline,e.options,e.env))<0);)n=n.slice(o).trim();s[t].content=n,n.length||(s[t-1].tight=!0,s[t+1].tight=!0)}}],[\"inline\",function(e){var t,r,n,o=e.tokens;for(r=0,n=o.length;r<n;r++)\"inline\"===(t=o[r]).type&&e.inline.parse(t.content,e.options,e.env,t.children)}],[\"footnote_tail\",function(e){var t,r,n,o,s,i,a,u,l,c=0,p=!1,h={};if(e.env.footnotes&&(e.tokens=e.tokens.filter(function(e){return\"footnote_reference_open\"===e.type?(p=!0,u=[],l=e.label,!1):\"footnote_reference_close\"===e.type?(p=!1,h[\":\"+l]=u,!1):(p&&u.push(e),!p)}),e.env.footnotes.list)){for(i=e.env.footnotes.list,e.tokens.push({type:\"footnote_block_open\",level:c++}),t=0,r=i.length;t<r;t++){for(e.tokens.push({type:\"footnote_open\",id:t,level:c++}),i[t].tokens?((a=[]).push({type:\"paragraph_open\",tight:!1,level:c++}),a.push({type:\"inline\",content:\"\",level:c,children:i[t].tokens}),a.push({type:\"paragraph_close\",tight:!1,level:--c})):i[t].label&&(a=h[\":\"+i[t].label]),e.tokens=e.tokens.concat(a),s=\"paragraph_close\"===e.tokens[e.tokens.length-1].type?e.tokens.pop():null,o=i[t].count>0?i[t].count:1,n=0;n<o;n++)e.tokens.push({type:\"footnote_anchor\",id:t,subId:n,level:c});s&&e.tokens.push(s),e.tokens.push({type:\"footnote_close\",level:--c})}e.tokens.push({type:\"footnote_block_close\",level:--c})}}],[\"abbr2\",function(e){var t,r,n,o,s,i,a,u,l,c,p,h,f=e.tokens;if(e.env.abbreviations)for(e.env.abbrRegExp||(h=\"(^|[\"+T.split(\"\").map(L).join(\"\")+\"])(\"+Object.keys(e.env.abbreviations).map(function(e){return e.substr(1)}).sort(function(e,t){return t.length-e.length}).map(L).join(\"|\")+\")($|[\"+T.split(\"\").map(L).join(\"\")+\"])\",e.env.abbrRegExp=new RegExp(h,\"g\")),c=e.env.abbrRegExp,r=0,n=f.length;r<n;r++)if(\"inline\"===f[r].type)for(t=(o=f[r].children).length-1;t>=0;t--)if(\"text\"===(s=o[t]).type){for(u=0,i=s.content,c.lastIndex=0,l=s.level,a=[];p=c.exec(i);)c.lastIndex>u&&a.push({type:\"text\",content:i.slice(u,p.index+p[1].length),level:l}),a.push({type:\"abbr_open\",title:e.env.abbreviations[\":\"+p[2]],level:l++}),a.push({type:\"text\",content:p[2],level:l}),a.push({type:\"abbr_close\",level:--l}),u=c.lastIndex-p[3].length;a.length&&(u<i.length&&a.push({type:\"text\",content:i.slice(u),level:l}),f[r].children=o=[].concat(o.slice(0,t),a,o.slice(t+1)))}}],[\"replacements\",function(e){var t,r,n,o,s,i;if(e.options.typographer)for(s=e.tokens.length-1;s>=0;s--)if(\"inline\"===e.tokens[s].type)for(t=(o=e.tokens[s].children).length-1;t>=0;t--)\"text\"===(r=o[t]).type&&(n=r.content,n=(i=n).indexOf(\"(\")<0?i:i.replace(N,function(e,t){return z[t.toLowerCase()]}),R.test(n)&&(n=n.replace(/\\+-/g,\"±\").replace(/\\.{2,}/g,\"…\").replace(/([?!])…/g,\"$1..\").replace(/([?!]){4,}/g,\"$1$1$1\").replace(/,{2,}/g,\",\").replace(/(^|[^-])---([^-]|$)/gm,\"$1—$2\").replace(/(^|\\s)--(\\s|$)/gm,\"$1–$2\").replace(/(^|[^-\\s])--([^-\\s]|$)/gm,\"$1–$2\")),r.content=n)}],[\"smartquotes\",function(e){var t,r,n,o,s,i,a,u,l,c,p,h,f,g,d,m,b;if(e.options.typographer)for(b=[],d=e.tokens.length-1;d>=0;d--)if(\"inline\"===e.tokens[d].type)for(m=e.tokens[d].children,b.length=0,t=0;t<m.length;t++)if(\"text\"===(r=m[t]).type&&!P.test(r.text)){for(a=m[t].level,f=b.length-1;f>=0&&!(b[f].level<=a);f--);b.length=f+1,s=0,i=(n=r.content).length;e:for(;s<i&&(j.lastIndex=s,o=j.exec(n));)if(u=!U(n,o.index-1),s=o.index+1,g=\"'\"===o[0],(l=!U(n,s))||u){if(p=!l,h=!u)for(f=b.length-1;f>=0&&(c=b[f],!(b[f].level<a));f--)if(c.single===g&&b[f].level===a){c=b[f],g?(m[c.token].content=H(m[c.token].content,c.pos,e.options.quotes[2]),r.content=H(r.content,o.index,e.options.quotes[3])):(m[c.token].content=H(m[c.token].content,c.pos,e.options.quotes[0]),r.content=H(r.content,o.index,e.options.quotes[1])),b.length=f;continue e}p?b.push({token:t,pos:o.index,single:g,level:a}):h&&g&&(r.content=H(r.content,o.index,O))}else g&&(r.content=H(r.content,o.index,O))}}]];function G(){this.options={},this.ruler=new C;for(var e=0;e<V.length;e++)this.ruler.push(V[e][0],V[e][1])}function $(e,t,r,n,o){var s,i,a,u,l,c,p;for(this.src=e,this.parser=t,this.options=r,this.env=n,this.tokens=o,this.bMarks=[],this.eMarks=[],this.tShift=[],this.blkIndent=0,this.line=0,this.lineMax=0,this.tight=!1,this.parentType=\"root\",this.ddIndent=-1,this.level=0,this.result=\"\",c=0,p=!1,a=u=c=0,l=(i=this.src).length;u<l;u++){if(s=i.charCodeAt(u),!p){if(32===s){c++;continue}p=!0}10!==s&&u!==l-1||(10!==s&&u++,this.bMarks.push(a),this.eMarks.push(u),this.tShift.push(c),p=!1,c=0,a=u+1)}this.bMarks.push(i.length),this.eMarks.push(i.length),this.tShift.push(0),this.lineMax=this.bMarks.length-1}function Z(e,t){var r,n,o;return(n=e.bMarks[t]+e.tShift[t])>=(o=e.eMarks[t])?-1:42!==(r=e.src.charCodeAt(n++))&&45!==r&&43!==r?-1:n<o&&32!==e.src.charCodeAt(n)?-1:n}function W(e,t){var r,n=e.bMarks[t]+e.tShift[t],o=e.eMarks[t];if(n+1>=o)return-1;if((r=e.src.charCodeAt(n++))<48||r>57)return-1;for(;;){if(n>=o)return-1;if(!((r=e.src.charCodeAt(n++))>=48&&r<=57)){if(41===r||46===r)break;return-1}}return n<o&&32!==e.src.charCodeAt(n)?-1:n}G.prototype.process=function(e){var t,r,n;for(t=0,r=(n=this.ruler.getRules(\"\")).length;t<r;t++)n[t](e)},$.prototype.isEmpty=function(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]},$.prototype.skipEmptyLines=function(e){for(var t=this.lineMax;e<t&&!(this.bMarks[e]+this.tShift[e]<this.eMarks[e]);e++);return e},$.prototype.skipSpaces=function(e){for(var t=this.src.length;e<t&&32===this.src.charCodeAt(e);e++);return e},$.prototype.skipChars=function(e,t){for(var r=this.src.length;e<r&&this.src.charCodeAt(e)===t;e++);return e},$.prototype.skipCharsBack=function(e,t,r){if(e<=r)return e;for(;e>r;)if(t!==this.src.charCodeAt(--e))return e+1;return e},$.prototype.getLines=function(e,t,r,n){var o,s,i,a,u,l=e;if(e>=t)return\"\";if(l+1===t)return s=this.bMarks[l]+Math.min(this.tShift[l],r),i=n?this.eMarks[l]+1:this.eMarks[l],this.src.slice(s,i);for(a=new Array(t-e),o=0;l<t;l++,o++)(u=this.tShift[l])>r&&(u=r),u<0&&(u=0),s=this.bMarks[l]+u,i=l+1<t||n?this.eMarks[l]+1:this.eMarks[l],a[o]=this.src.slice(s,i);return a.join(\"\")};var J={};[\"article\",\"aside\",\"button\",\"blockquote\",\"body\",\"canvas\",\"caption\",\"col\",\"colgroup\",\"dd\",\"div\",\"dl\",\"dt\",\"embed\",\"fieldset\",\"figcaption\",\"figure\",\"footer\",\"form\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\",\"header\",\"hgroup\",\"hr\",\"iframe\",\"li\",\"map\",\"object\",\"ol\",\"output\",\"p\",\"pre\",\"progress\",\"script\",\"section\",\"style\",\"table\",\"tbody\",\"td\",\"textarea\",\"tfoot\",\"th\",\"tr\",\"thead\",\"ul\",\"video\"].forEach(function(e){J[e]=!0});var Y=/^<([a-zA-Z]{1,15})[\\s\\/>]/,K=/^<\\/([a-zA-Z]{1,15})[\\s>]/;function Q(e,t){var r=e.bMarks[t]+e.blkIndent,n=e.eMarks[t];return e.src.substr(r,n-r)}function X(e,t){var r,n,o=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];return o>=s?-1:126!==(n=e.src.charCodeAt(o++))&&58!==n?-1:o===(r=e.skipSpaces(o))?-1:r>=s?-1:r}var ee=[[\"code\",function(e,t,r){var n,o;if(e.tShift[t]-e.blkIndent<4)return!1;for(o=n=t+1;n<r;)if(e.isEmpty(n))n++;else{if(!(e.tShift[n]-e.blkIndent>=4))break;o=++n}return e.line=n,e.tokens.push({type:\"code\",content:e.getLines(t,o,4+e.blkIndent,!0),block:!0,lines:[t,e.line],level:e.level}),!0}],[\"fences\",function(e,t,r,n){var o,s,i,a,u,l=!1,c=e.bMarks[t]+e.tShift[t],p=e.eMarks[t];if(c+3>p)return!1;if(126!==(o=e.src.charCodeAt(c))&&96!==o)return!1;if(u=c,(s=(c=e.skipChars(c,o))-u)<3)return!1;if((i=e.src.slice(c,p).trim()).indexOf(\"`\")>=0)return!1;if(n)return!0;for(a=t;!(++a>=r||(c=u=e.bMarks[a]+e.tShift[a])<(p=e.eMarks[a])&&e.tShift[a]<e.blkIndent);)if(e.src.charCodeAt(c)===o&&!(e.tShift[a]-e.blkIndent>=4||(c=e.skipChars(c,o))-u<s||(c=e.skipSpaces(c))<p)){l=!0;break}return s=e.tShift[t],e.line=a+(l?1:0),e.tokens.push({type:\"fence\",params:i,content:e.getLines(t+1,a,s,!0),lines:[t,e.line],level:e.level}),!0},[\"paragraph\",\"blockquote\",\"list\"]],[\"blockquote\",function(e,t,r,n){var o,s,i,a,u,l,c,p,h,f,g,d=e.bMarks[t]+e.tShift[t],m=e.eMarks[t];if(d>m)return!1;if(62!==e.src.charCodeAt(d++))return!1;if(e.level>=e.options.maxNesting)return!1;if(n)return!0;for(32===e.src.charCodeAt(d)&&d++,u=e.blkIndent,e.blkIndent=0,a=[e.bMarks[t]],e.bMarks[t]=d,s=(d=d<m?e.skipSpaces(d):d)>=m,i=[e.tShift[t]],e.tShift[t]=d-e.bMarks[t],p=e.parser.ruler.getRules(\"blockquote\"),o=t+1;o<r&&!((d=e.bMarks[o]+e.tShift[o])>=(m=e.eMarks[o]));o++)if(62!==e.src.charCodeAt(d++)){if(s)break;for(g=!1,h=0,f=p.length;h<f;h++)if(p[h](e,o,r,!0)){g=!0;break}if(g)break;a.push(e.bMarks[o]),i.push(e.tShift[o]),e.tShift[o]=-1337}else 32===e.src.charCodeAt(d)&&d++,a.push(e.bMarks[o]),e.bMarks[o]=d,s=(d=d<m?e.skipSpaces(d):d)>=m,i.push(e.tShift[o]),e.tShift[o]=d-e.bMarks[o];for(l=e.parentType,e.parentType=\"blockquote\",e.tokens.push({type:\"blockquote_open\",lines:c=[t,0],level:e.level++}),e.parser.tokenize(e,t,o),e.tokens.push({type:\"blockquote_close\",level:--e.level}),e.parentType=l,c[1]=e.line,h=0;h<i.length;h++)e.bMarks[h+t]=a[h],e.tShift[h+t]=i[h];return e.blkIndent=u,!0},[\"paragraph\",\"blockquote\",\"list\"]],[\"hr\",function(e,t,r,n){var o,s,i,a=e.bMarks[t],u=e.eMarks[t];if((a+=e.tShift[t])>u)return!1;if(42!==(o=e.src.charCodeAt(a++))&&45!==o&&95!==o)return!1;for(s=1;a<u;){if((i=e.src.charCodeAt(a++))!==o&&32!==i)return!1;i===o&&s++}return!(s<3||!n&&(e.line=t+1,e.tokens.push({type:\"hr\",lines:[t,e.line],level:e.level}),0))},[\"paragraph\",\"blockquote\",\"list\"]],[\"list\",function(e,t,r,n){var o,s,i,a,u,l,c,p,h,f,g,d,m,b,v,k,A,y,x,w,C,E=!0;if((p=W(e,t))>=0)d=!0;else{if(!((p=Z(e,t))>=0))return!1;d=!1}if(e.level>=e.options.maxNesting)return!1;if(g=e.src.charCodeAt(p-1),n)return!0;for(b=e.tokens.length,d?(c=e.bMarks[t]+e.tShift[t],f=Number(e.src.substr(c,p-c-1)),e.tokens.push({type:\"ordered_list_open\",order:f,lines:k=[t,0],level:e.level++})):e.tokens.push({type:\"bullet_list_open\",lines:k=[t,0],level:e.level++}),o=t,v=!1,y=e.parser.ruler.getRules(\"list\");!(!(o<r)||((h=(m=e.skipSpaces(p))>=e.eMarks[o]?1:m-p)>4&&(h=1),h<1&&(h=1),s=p-e.bMarks[o]+h,e.tokens.push({type:\"list_item_open\",lines:A=[t,0],level:e.level++}),a=e.blkIndent,u=e.tight,i=e.tShift[t],l=e.parentType,e.tShift[t]=m-e.bMarks[t],e.blkIndent=s,e.tight=!0,e.parentType=\"list\",e.parser.tokenize(e,t,r,!0),e.tight&&!v||(E=!1),v=e.line-t>1&&e.isEmpty(e.line-1),e.blkIndent=a,e.tShift[t]=i,e.tight=u,e.parentType=l,e.tokens.push({type:\"list_item_close\",level:--e.level}),o=t=e.line,A[1]=o,m=e.bMarks[t],o>=r)||e.isEmpty(o)||e.tShift[o]<e.blkIndent);){for(C=!1,x=0,w=y.length;x<w;x++)if(y[x](e,o,r,!0)){C=!0;break}if(C)break;if(d){if((p=W(e,o))<0)break}else if((p=Z(e,o))<0)break;if(g!==e.src.charCodeAt(p-1))break}return e.tokens.push({type:d?\"ordered_list_close\":\"bullet_list_close\",level:--e.level}),k[1]=o,e.line=o,E&&function(e,t){var r,n,o=e.level+2;for(r=t+2,n=e.tokens.length-2;r<n;r++)e.tokens[r].level===o&&\"paragraph_open\"===e.tokens[r].type&&(e.tokens[r+2].tight=!0,e.tokens[r].tight=!0,r+=2)}(e,b),!0},[\"paragraph\",\"blockquote\"]],[\"footnote\",function(e,t,r,n){var o,s,i,a,u,l=e.bMarks[t]+e.tShift[t],c=e.eMarks[t];if(l+4>c)return!1;if(91!==e.src.charCodeAt(l))return!1;if(94!==e.src.charCodeAt(l+1))return!1;if(e.level>=e.options.maxNesting)return!1;for(a=l+2;a<c;a++){if(32===e.src.charCodeAt(a))return!1;if(93===e.src.charCodeAt(a))break}return!(a===l+2||a+1>=c||58!==e.src.charCodeAt(++a)||!n&&(a++,e.env.footnotes||(e.env.footnotes={}),e.env.footnotes.refs||(e.env.footnotes.refs={}),u=e.src.slice(l+2,a-2),e.env.footnotes.refs[\":\"+u]=-1,e.tokens.push({type:\"footnote_reference_open\",label:u,level:e.level++}),o=e.bMarks[t],s=e.tShift[t],i=e.parentType,e.tShift[t]=e.skipSpaces(a)-a,e.bMarks[t]=a,e.blkIndent+=4,e.parentType=\"footnote\",e.tShift[t]<e.blkIndent&&(e.tShift[t]+=e.blkIndent,e.bMarks[t]-=e.blkIndent),e.parser.tokenize(e,t,r,!0),e.parentType=i,e.blkIndent-=4,e.tShift[t]=s,e.bMarks[t]=o,e.tokens.push({type:\"footnote_reference_close\",level:--e.level}),0))},[\"paragraph\"]],[\"heading\",function(e,t,r,n){var o,s,i,a=e.bMarks[t]+e.tShift[t],u=e.eMarks[t];if(a>=u)return!1;if(35!==(o=e.src.charCodeAt(a))||a>=u)return!1;for(s=1,o=e.src.charCodeAt(++a);35===o&&a<u&&s<=6;)s++,o=e.src.charCodeAt(++a);return!(s>6||a<u&&32!==o||!n&&(u=e.skipCharsBack(u,32,a),(i=e.skipCharsBack(u,35,a))>a&&32===e.src.charCodeAt(i-1)&&(u=i),e.line=t+1,e.tokens.push({type:\"heading_open\",hLevel:s,lines:[t,e.line],level:e.level}),a<u&&e.tokens.push({type:\"inline\",content:e.src.slice(a,u).trim(),level:e.level+1,lines:[t,e.line],children:[]}),e.tokens.push({type:\"heading_close\",hLevel:s,level:e.level}),0))},[\"paragraph\",\"blockquote\"]],[\"lheading\",function(e,t,r){var n,o,s,i=t+1;return!(i>=r||e.tShift[i]<e.blkIndent||e.tShift[i]-e.blkIndent>3||(o=e.bMarks[i]+e.tShift[i])>=(s=e.eMarks[i])||45!==(n=e.src.charCodeAt(o))&&61!==n||(o=e.skipChars(o,n),(o=e.skipSpaces(o))<s||(o=e.bMarks[t]+e.tShift[t],e.line=i+1,e.tokens.push({type:\"heading_open\",hLevel:61===n?1:2,lines:[t,e.line],level:e.level}),e.tokens.push({type:\"inline\",content:e.src.slice(o,e.eMarks[t]).trim(),level:e.level+1,lines:[t,e.line-1],children:[]}),e.tokens.push({type:\"heading_close\",hLevel:61===n?1:2,level:e.level}),0)))}],[\"htmlblock\",function(e,t,r,n){var o,s,i,a=e.bMarks[t],u=e.eMarks[t],l=e.tShift[t];if(a+=l,!e.options.html)return!1;if(l>3||a+2>=u)return!1;if(60!==e.src.charCodeAt(a))return!1;if(33===(o=e.src.charCodeAt(a+1))||63===o){if(n)return!0}else{if(47!==o&&!function(e){var t=32|e;return t>=97&&t<=122}(o))return!1;if(47===o){if(!(s=e.src.slice(a,u).match(K)))return!1}else if(!(s=e.src.slice(a,u).match(Y)))return!1;if(!0!==J[s[1].toLowerCase()])return!1;if(n)return!0}for(i=t+1;i<e.lineMax&&!e.isEmpty(i);)i++;return e.line=i,e.tokens.push({type:\"htmlblock\",level:e.level,lines:[t,e.line],content:e.getLines(t,i,0,!0)}),!0},[\"paragraph\",\"blockquote\"]],[\"table\",function(e,t,r,n){var o,s,i,a,u,l,c,p,h,f,g;if(t+2>r)return!1;if(u=t+1,e.tShift[u]<e.blkIndent)return!1;if((i=e.bMarks[u]+e.tShift[u])>=e.eMarks[u])return!1;if(124!==(o=e.src.charCodeAt(i))&&45!==o&&58!==o)return!1;if(s=Q(e,t+1),!/^[-:| ]+$/.test(s))return!1;if((l=s.split(\"|\"))<=2)return!1;for(p=[],a=0;a<l.length;a++){if(!(h=l[a].trim())){if(0===a||a===l.length-1)continue;return!1}if(!/^:?-+:?$/.test(h))return!1;58===h.charCodeAt(h.length-1)?p.push(58===h.charCodeAt(0)?\"center\":\"right\"):58===h.charCodeAt(0)?p.push(\"left\"):p.push(\"\")}if(-1===(s=Q(e,t).trim()).indexOf(\"|\"))return!1;if(l=s.replace(/^\\||\\|$/g,\"\").split(\"|\"),p.length!==l.length)return!1;if(n)return!0;for(e.tokens.push({type:\"table_open\",lines:f=[t,0],level:e.level++}),e.tokens.push({type:\"thead_open\",lines:[t,t+1],level:e.level++}),e.tokens.push({type:\"tr_open\",lines:[t,t+1],level:e.level++}),a=0;a<l.length;a++)e.tokens.push({type:\"th_open\",align:p[a],lines:[t,t+1],level:e.level++}),e.tokens.push({type:\"inline\",content:l[a].trim(),lines:[t,t+1],level:e.level,children:[]}),e.tokens.push({type:\"th_close\",level:--e.level});for(e.tokens.push({type:\"tr_close\",level:--e.level}),e.tokens.push({type:\"thead_close\",level:--e.level}),e.tokens.push({type:\"tbody_open\",lines:g=[t+2,0],level:e.level++}),u=t+2;u<r&&!(e.tShift[u]<e.blkIndent)&&-1!==(s=Q(e,u).trim()).indexOf(\"|\");u++){for(l=s.replace(/^\\||\\|$/g,\"\").split(\"|\"),e.tokens.push({type:\"tr_open\",level:e.level++}),a=0;a<l.length;a++)e.tokens.push({type:\"td_open\",align:p[a],level:e.level++}),c=l[a].substring(124===l[a].charCodeAt(0)?1:0,124===l[a].charCodeAt(l[a].length-1)?l[a].length-1:l[a].length).trim(),e.tokens.push({type:\"inline\",content:c,level:e.level,children:[]}),e.tokens.push({type:\"td_close\",level:--e.level});e.tokens.push({type:\"tr_close\",level:--e.level})}return e.tokens.push({type:\"tbody_close\",level:--e.level}),e.tokens.push({type:\"table_close\",level:--e.level}),f[1]=g[1]=u,e.line=u,!0},[\"paragraph\"]],[\"deflist\",function(e,t,r,n){var o,s,i,a,u,l,c,p,h,f,g,d,m,b;if(n)return!(e.ddIndent<0)&&X(e,t)>=0;if(c=t+1,e.isEmpty(c)&&++c>r)return!1;if(e.tShift[c]<e.blkIndent)return!1;if((o=X(e,c))<0)return!1;if(e.level>=e.options.maxNesting)return!1;l=e.tokens.length,e.tokens.push({type:\"dl_open\",lines:u=[t,0],level:e.level++}),i=t,s=c;e:for(;;){for(b=!0,m=!1,e.tokens.push({type:\"dt_open\",lines:[i,i],level:e.level++}),e.tokens.push({type:\"inline\",content:e.getLines(i,i+1,e.blkIndent,!1).trim(),level:e.level+1,lines:[i,i],children:[]}),e.tokens.push({type:\"dt_close\",level:--e.level});;){if(e.tokens.push({type:\"dd_open\",lines:a=[c,0],level:e.level++}),d=e.tight,h=e.ddIndent,p=e.blkIndent,g=e.tShift[s],f=e.parentType,e.blkIndent=e.ddIndent=e.tShift[s]+2,e.tShift[s]=o-e.bMarks[s],e.tight=!0,e.parentType=\"deflist\",e.parser.tokenize(e,s,r,!0),e.tight&&!m||(b=!1),m=e.line-s>1&&e.isEmpty(e.line-1),e.tShift[s]=g,e.tight=d,e.parentType=f,e.blkIndent=p,e.ddIndent=h,e.tokens.push({type:\"dd_close\",level:--e.level}),a[1]=c=e.line,c>=r)break e;if(e.tShift[c]<e.blkIndent)break e;if((o=X(e,c))<0)break;s=c}if(c>=r)break;if(i=c,e.isEmpty(i))break;if(e.tShift[i]<e.blkIndent)break;if((s=i+1)>=r)break;if(e.isEmpty(s)&&s++,s>=r)break;if(e.tShift[s]<e.blkIndent)break;if((o=X(e,s))<0)break}return e.tokens.push({type:\"dl_close\",level:--e.level}),u[1]=c,e.line=c,b&&function(e,t){var r,n,o=e.level+2;for(r=t+2,n=e.tokens.length-2;r<n;r++)e.tokens[r].level===o&&\"paragraph_open\"===e.tokens[r].type&&(e.tokens[r+2].tight=!0,e.tokens[r].tight=!0,r+=2)}(e,l),!0},[\"paragraph\"]],[\"paragraph\",function(e,t){var r,n,o,s,i,a,u=t+1;if(u<(r=e.lineMax)&&!e.isEmpty(u))for(a=e.parser.ruler.getRules(\"paragraph\");u<r&&!e.isEmpty(u);u++)if(!(e.tShift[u]-e.blkIndent>3)){for(o=!1,s=0,i=a.length;s<i;s++)if(a[s](e,u,r,!0)){o=!0;break}if(o)break}return n=e.getLines(t,u,e.blkIndent,!1).trim(),e.line=u,n.length&&(e.tokens.push({type:\"paragraph_open\",tight:!1,lines:[t,e.line],level:e.level}),e.tokens.push({type:\"inline\",content:n,level:e.level+1,lines:[t,e.line],children:[]}),e.tokens.push({type:\"paragraph_close\",tight:!1,level:e.level})),!0}]];function te(){this.ruler=new C;for(var e=0;e<ee.length;e++)this.ruler.push(ee[e][0],ee[e][1],{alt:(ee[e][2]||[]).slice()})}te.prototype.tokenize=function(e,t,r){for(var n,o=this.ruler.getRules(\"\"),s=o.length,i=t,a=!1;i<r&&(e.line=i=e.skipEmptyLines(i),!(i>=r))&&!(e.tShift[i]<e.blkIndent);){for(n=0;n<s&&!o[n](e,i,r,!1);n++);if(e.tight=!a,e.isEmpty(e.line-1)&&(a=!0),(i=e.line)<r&&e.isEmpty(i)){if(a=!0,++i<r&&\"list\"===e.parentType&&e.isEmpty(i))break;e.line=i}}};var re=/[\\n\\t]/g,ne=/\\r[\\n\\u0085]|[\\u2424\\u2028\\u0085]/g,oe=/\\u00a0/g;function se(e){switch(e){case 10:case 92:case 96:case 42:case 95:case 94:case 91:case 93:case 33:case 38:case 60:case 62:case 123:case 125:case 36:case 37:case 64:case 126:case 43:case 61:case 58:return!0;default:return!1}}te.prototype.parse=function(e,t,r,n){var o,s=0,i=0;if(!e)return[];(e=(e=e.replace(oe,\" \")).replace(ne,\"\\n\")).indexOf(\"\\t\")>=0&&(e=e.replace(re,function(t,r){var n;return 10===e.charCodeAt(r)?(s=r+1,i=0,t):(n=\"    \".slice((r-s-i)%4),i=r-s+1,n)})),o=new $(e,this,t,r,n),this.tokenize(o,o.line,o.lineMax)};for(var ie=[],ae=0;ae<256;ae++)ie.push(0);function ue(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122}function le(e,t){var r,n,o,s=t,i=!0,a=!0,u=e.posMax,l=e.src.charCodeAt(t);for(r=t>0?e.src.charCodeAt(t-1):-1;s<u&&e.src.charCodeAt(s)===l;)s++;return s>=u&&(i=!1),(o=s-t)>=4?i=a=!1:(32!==(n=s<u?e.src.charCodeAt(s):-1)&&10!==n||(i=!1),32!==r&&10!==r||(a=!1),95===l&&(ue(r)&&(i=!1),ue(n)&&(a=!1))),{can_open:i,can_close:a,delims:o}}\"\\\\!\\\"#$%&'()*+,./:;<=>?@[]^_`{|}~-\".split(\"\").forEach(function(e){ie[e.charCodeAt(0)]=1});var ce=/\\\\([ \\\\!\"#$%&'()*+,.\\/:;<=>?@[\\]^_`{|}~-])/g;var pe=/\\\\([ \\\\!\"#$%&'()*+,.\\/:;<=>?@[\\]^_`{|}~-])/g;var he=[\"coap\",\"doi\",\"javascript\",\"aaa\",\"aaas\",\"about\",\"acap\",\"cap\",\"cid\",\"crid\",\"data\",\"dav\",\"dict\",\"dns\",\"file\",\"ftp\",\"geo\",\"go\",\"gopher\",\"h323\",\"http\",\"https\",\"iax\",\"icap\",\"im\",\"imap\",\"info\",\"ipp\",\"iris\",\"iris.beep\",\"iris.xpc\",\"iris.xpcs\",\"iris.lwz\",\"ldap\",\"mailto\",\"mid\",\"msrp\",\"msrps\",\"mtqp\",\"mupdate\",\"news\",\"nfs\",\"ni\",\"nih\",\"nntp\",\"opaquelocktoken\",\"pop\",\"pres\",\"rtsp\",\"service\",\"session\",\"shttp\",\"sieve\",\"sip\",\"sips\",\"sms\",\"snmp\",\"soap.beep\",\"soap.beeps\",\"tag\",\"tel\",\"telnet\",\"tftp\",\"thismessage\",\"tn3270\",\"tip\",\"tv\",\"urn\",\"vemmi\",\"ws\",\"wss\",\"xcon\",\"xcon-userid\",\"xmlrpc.beep\",\"xmlrpc.beeps\",\"xmpp\",\"z39.50r\",\"z39.50s\",\"adiumxtra\",\"afp\",\"afs\",\"aim\",\"apt\",\"attachment\",\"aw\",\"beshare\",\"bitcoin\",\"bolo\",\"callto\",\"chrome\",\"chrome-extension\",\"com-eventbrite-attendee\",\"content\",\"cvs\",\"dlna-playsingle\",\"dlna-playcontainer\",\"dtn\",\"dvb\",\"ed2k\",\"facetime\",\"feed\",\"finger\",\"fish\",\"gg\",\"git\",\"gizmoproject\",\"gtalk\",\"hcp\",\"icon\",\"ipn\",\"irc\",\"irc6\",\"ircs\",\"itms\",\"jar\",\"jms\",\"keyparc\",\"lastfm\",\"ldaps\",\"magnet\",\"maps\",\"market\",\"message\",\"mms\",\"ms-help\",\"msnim\",\"mumble\",\"mvn\",\"notes\",\"oid\",\"palm\",\"paparazzi\",\"platform\",\"proxy\",\"psyc\",\"query\",\"res\",\"resource\",\"rmi\",\"rsync\",\"rtmp\",\"secondlife\",\"sftp\",\"sgn\",\"skype\",\"smb\",\"soldat\",\"spotify\",\"ssh\",\"steam\",\"svn\",\"teamspeak\",\"things\",\"udp\",\"unreal\",\"ut2004\",\"ventrilo\",\"view-source\",\"webcal\",\"wtai\",\"wyciwyg\",\"xfire\",\"xri\",\"ymsgr\"],fe=/^<([a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/,ge=/^<([a-zA-Z.\\-]{1,25}):([^<>\\x00-\\x20]*)>/;function de(e,t){return e=e.source,t=t||\"\",function r(n,o){return n?(o=o.source||o,e=e.replace(n,o),r):new RegExp(e,t)}}var me=de(/(?:unquoted|single_quoted|double_quoted)/)(\"unquoted\",/[^\"'=<>`\\x00-\\x20]+/)(\"single_quoted\",/'[^']*'/)(\"double_quoted\",/\"[^\"]*\"/)(),be=de(/(?:\\s+attr_name(?:\\s*=\\s*attr_value)?)/)(\"attr_name\",/[a-zA-Z_:][a-zA-Z0-9:._-]*/)(\"attr_value\",me)(),ve=de(/<[A-Za-z][A-Za-z0-9]*attribute*\\s*\\/?>/)(\"attribute\",be)(),ke=de(/^(?:open_tag|close_tag|comment|processing|declaration|cdata)/)(\"open_tag\",ve)(\"close_tag\",/<\\/[A-Za-z][A-Za-z0-9]*\\s*>/)(\"comment\",/<!---->|<!--(?:-?[^>-])(?:-?[^-])*-->/)(\"processing\",/<[?].*?[?]>/)(\"declaration\",/<![A-Z]+\\s+[^>]*>/)(\"cdata\",/<!\\[CDATA\\[[\\s\\S]*?\\]\\]>/)();var Ae=/^&#((?:x[a-f0-9]{1,8}|[0-9]{1,8}));/i,ye=/^&([a-z][a-z0-9]{1,31});/i;var xe=[[\"text\",function(e,t){for(var r=e.pos;r<e.posMax&&!se(e.src.charCodeAt(r));)r++;return r!==e.pos&&(t||(e.pending+=e.src.slice(e.pos,r)),e.pos=r,!0)}],[\"newline\",function(e,t){var r,n,o=e.pos;if(10!==e.src.charCodeAt(o))return!1;if(r=e.pending.length-1,n=e.posMax,!t)if(r>=0&&32===e.pending.charCodeAt(r))if(r>=1&&32===e.pending.charCodeAt(r-1)){for(var s=r-2;s>=0;s--)if(32!==e.pending.charCodeAt(s)){e.pending=e.pending.substring(0,s+1);break}e.push({type:\"hardbreak\",level:e.level})}else e.pending=e.pending.slice(0,-1),e.push({type:\"softbreak\",level:e.level});else e.push({type:\"softbreak\",level:e.level});for(o++;o<n&&32===e.src.charCodeAt(o);)o++;return e.pos=o,!0}],[\"escape\",function(e,t){var r,n=e.pos,o=e.posMax;if(92!==e.src.charCodeAt(n))return!1;if(++n<o){if((r=e.src.charCodeAt(n))<256&&0!==ie[r])return t||(e.pending+=e.src[n]),e.pos+=2,!0;if(10===r){for(t||e.push({type:\"hardbreak\",level:e.level}),n++;n<o&&32===e.src.charCodeAt(n);)n++;return e.pos=n,!0}}return t||(e.pending+=\"\\\\\"),e.pos++,!0}],[\"backticks\",function(e,t){var r,n,o,s,i,a=e.pos;if(96!==e.src.charCodeAt(a))return!1;for(r=a,a++,n=e.posMax;a<n&&96===e.src.charCodeAt(a);)a++;for(o=e.src.slice(r,a),s=i=a;-1!==(s=e.src.indexOf(\"`\",i));){for(i=s+1;i<n&&96===e.src.charCodeAt(i);)i++;if(i-s===o.length)return t||e.push({type:\"code\",content:e.src.slice(a,s).replace(/[ \\n]+/g,\" \").trim(),block:!1,level:e.level}),e.pos=i,!0}return t||(e.pending+=o),e.pos+=o.length,!0}],[\"del\",function(e,t){var r,n,o,s,i,a=e.posMax,u=e.pos;if(126!==e.src.charCodeAt(u))return!1;if(t)return!1;if(u+4>=a)return!1;if(126!==e.src.charCodeAt(u+1))return!1;if(e.level>=e.options.maxNesting)return!1;if(s=u>0?e.src.charCodeAt(u-1):-1,i=e.src.charCodeAt(u+2),126===s)return!1;if(126===i)return!1;if(32===i||10===i)return!1;for(n=u+2;n<a&&126===e.src.charCodeAt(n);)n++;if(n>u+3)return e.pos+=n-u,t||(e.pending+=e.src.slice(u,n)),!0;for(e.pos=u+2,o=1;e.pos+1<a;){if(126===e.src.charCodeAt(e.pos)&&126===e.src.charCodeAt(e.pos+1)&&(s=e.src.charCodeAt(e.pos-1),126!==(i=e.pos+2<a?e.src.charCodeAt(e.pos+2):-1)&&126!==s&&(32!==s&&10!==s?o--:32!==i&&10!==i&&o++,o<=0))){r=!0;break}e.parser.skipToken(e)}return r?(e.posMax=e.pos,e.pos=u+2,t||(e.push({type:\"del_open\",level:e.level++}),e.parser.tokenize(e),e.push({type:\"del_close\",level:--e.level})),e.pos=e.posMax+2,e.posMax=a,!0):(e.pos=u,!1)}],[\"ins\",function(e,t){var r,n,o,s,i,a=e.posMax,u=e.pos;if(43!==e.src.charCodeAt(u))return!1;if(t)return!1;if(u+4>=a)return!1;if(43!==e.src.charCodeAt(u+1))return!1;if(e.level>=e.options.maxNesting)return!1;if(s=u>0?e.src.charCodeAt(u-1):-1,i=e.src.charCodeAt(u+2),43===s)return!1;if(43===i)return!1;if(32===i||10===i)return!1;for(n=u+2;n<a&&43===e.src.charCodeAt(n);)n++;if(n!==u+2)return e.pos+=n-u,t||(e.pending+=e.src.slice(u,n)),!0;for(e.pos=u+2,o=1;e.pos+1<a;){if(43===e.src.charCodeAt(e.pos)&&43===e.src.charCodeAt(e.pos+1)&&(s=e.src.charCodeAt(e.pos-1),43!==(i=e.pos+2<a?e.src.charCodeAt(e.pos+2):-1)&&43!==s&&(32!==s&&10!==s?o--:32!==i&&10!==i&&o++,o<=0))){r=!0;break}e.parser.skipToken(e)}return r?(e.posMax=e.pos,e.pos=u+2,t||(e.push({type:\"ins_open\",level:e.level++}),e.parser.tokenize(e),e.push({type:\"ins_close\",level:--e.level})),e.pos=e.posMax+2,e.posMax=a,!0):(e.pos=u,!1)}],[\"mark\",function(e,t){var r,n,o,s,i,a=e.posMax,u=e.pos;if(61!==e.src.charCodeAt(u))return!1;if(t)return!1;if(u+4>=a)return!1;if(61!==e.src.charCodeAt(u+1))return!1;if(e.level>=e.options.maxNesting)return!1;if(s=u>0?e.src.charCodeAt(u-1):-1,i=e.src.charCodeAt(u+2),61===s)return!1;if(61===i)return!1;if(32===i||10===i)return!1;for(n=u+2;n<a&&61===e.src.charCodeAt(n);)n++;if(n!==u+2)return e.pos+=n-u,t||(e.pending+=e.src.slice(u,n)),!0;for(e.pos=u+2,o=1;e.pos+1<a;){if(61===e.src.charCodeAt(e.pos)&&61===e.src.charCodeAt(e.pos+1)&&(s=e.src.charCodeAt(e.pos-1),61!==(i=e.pos+2<a?e.src.charCodeAt(e.pos+2):-1)&&61!==s&&(32!==s&&10!==s?o--:32!==i&&10!==i&&o++,o<=0))){r=!0;break}e.parser.skipToken(e)}return r?(e.posMax=e.pos,e.pos=u+2,t||(e.push({type:\"mark_open\",level:e.level++}),e.parser.tokenize(e),e.push({type:\"mark_close\",level:--e.level})),e.pos=e.posMax+2,e.posMax=a,!0):(e.pos=u,!1)}],[\"emphasis\",function(e,t){var r,n,o,s,i,a,u,l=e.posMax,c=e.pos,p=e.src.charCodeAt(c);if(95!==p&&42!==p)return!1;if(t)return!1;if(r=(u=le(e,c)).delims,!u.can_open)return e.pos+=r,t||(e.pending+=e.src.slice(c,e.pos)),!0;if(e.level>=e.options.maxNesting)return!1;for(e.pos=c+r,a=[r];e.pos<l;)if(e.src.charCodeAt(e.pos)!==p)e.parser.skipToken(e);else{if(n=(u=le(e,e.pos)).delims,u.can_close){for(s=a.pop(),i=n;s!==i;){if(i<s){a.push(s-i);break}if(i-=s,0===a.length)break;e.pos+=s,s=a.pop()}if(0===a.length){r=s,o=!0;break}e.pos+=n;continue}u.can_open&&a.push(n),e.pos+=n}return o?(e.posMax=e.pos,e.pos=c+r,t||(2!==r&&3!==r||e.push({type:\"strong_open\",level:e.level++}),1!==r&&3!==r||e.push({type:\"em_open\",level:e.level++}),e.parser.tokenize(e),1!==r&&3!==r||e.push({type:\"em_close\",level:--e.level}),2!==r&&3!==r||e.push({type:\"strong_close\",level:--e.level})),e.pos=e.posMax+r,e.posMax=l,!0):(e.pos=c,!1)}],[\"sub\",function(e,t){var r,n,o=e.posMax,s=e.pos;if(126!==e.src.charCodeAt(s))return!1;if(t)return!1;if(s+2>=o)return!1;if(e.level>=e.options.maxNesting)return!1;for(e.pos=s+1;e.pos<o;){if(126===e.src.charCodeAt(e.pos)){r=!0;break}e.parser.skipToken(e)}return r&&s+1!==e.pos?(n=e.src.slice(s+1,e.pos)).match(/(^|[^\\\\])(\\\\\\\\)*\\s/)?(e.pos=s,!1):(e.posMax=e.pos,e.pos=s+1,t||e.push({type:\"sub\",level:e.level,content:n.replace(ce,\"$1\")}),e.pos=e.posMax+1,e.posMax=o,!0):(e.pos=s,!1)}],[\"sup\",function(e,t){var r,n,o=e.posMax,s=e.pos;if(94!==e.src.charCodeAt(s))return!1;if(t)return!1;if(s+2>=o)return!1;if(e.level>=e.options.maxNesting)return!1;for(e.pos=s+1;e.pos<o;){if(94===e.src.charCodeAt(e.pos)){r=!0;break}e.parser.skipToken(e)}return r&&s+1!==e.pos?(n=e.src.slice(s+1,e.pos)).match(/(^|[^\\\\])(\\\\\\\\)*\\s/)?(e.pos=s,!1):(e.posMax=e.pos,e.pos=s+1,t||e.push({type:\"sup\",level:e.level,content:n.replace(pe,\"$1\")}),e.pos=e.posMax+1,e.posMax=o,!0):(e.pos=s,!1)}],[\"links\",function(e,t){var r,n,o,s,i,a,u,l,c=!1,p=e.pos,h=e.posMax,f=e.pos,g=e.src.charCodeAt(f);if(33===g&&(c=!0,g=e.src.charCodeAt(++f)),91!==g)return!1;if(e.level>=e.options.maxNesting)return!1;if(r=f+1,(n=D(e,f))<0)return!1;if((a=n+1)<h&&40===e.src.charCodeAt(a)){for(a++;a<h&&(32===(l=e.src.charCodeAt(a))||10===l);a++);if(a>=h)return!1;for(f=a,q(e,a)?(s=e.linkContent,a=e.pos):s=\"\",f=a;a<h&&(32===(l=e.src.charCodeAt(a))||10===l);a++);if(a<h&&f!==a&&F(e,a))for(i=e.linkContent,a=e.pos;a<h&&(32===(l=e.src.charCodeAt(a))||10===l);a++);else i=\"\";if(a>=h||41!==e.src.charCodeAt(a))return e.pos=p,!1;a++}else{if(e.linkLevel>0)return!1;for(;a<h&&(32===(l=e.src.charCodeAt(a))||10===l);a++);if(a<h&&91===e.src.charCodeAt(a)&&(f=a+1,(a=D(e,a))>=0?o=e.src.slice(f,a++):a=f-1),o||(void 0===o&&(a=n+1),o=e.src.slice(r,n)),!(u=e.env.references[M(o)]))return e.pos=p,!1;s=u.href,i=u.title}return t||(e.pos=r,e.posMax=n,c?e.push({type:\"image\",src:s,title:i,alt:e.src.substr(r,n-r),level:e.level}):(e.push({type:\"link_open\",href:s,title:i,level:e.level++}),e.linkLevel++,e.parser.tokenize(e),e.linkLevel--,e.push({type:\"link_close\",level:--e.level}))),e.pos=a,e.posMax=h,!0}],[\"footnote_inline\",function(e,t){var r,n,o,s,i=e.posMax,a=e.pos;return!(a+2>=i||94!==e.src.charCodeAt(a)||91!==e.src.charCodeAt(a+1)||e.level>=e.options.maxNesting||(r=a+2,(n=D(e,a+1))<0||(t||(e.env.footnotes||(e.env.footnotes={}),e.env.footnotes.list||(e.env.footnotes.list=[]),o=e.env.footnotes.list.length,e.pos=r,e.posMax=n,e.push({type:\"footnote_ref\",id:o,level:e.level}),e.linkLevel++,s=e.tokens.length,e.parser.tokenize(e),e.env.footnotes.list[o]={tokens:e.tokens.splice(s)},e.linkLevel--),e.pos=n+1,e.posMax=i,0)))}],[\"footnote_ref\",function(e,t){var r,n,o,s,i=e.posMax,a=e.pos;if(a+3>i)return!1;if(!e.env.footnotes||!e.env.footnotes.refs)return!1;if(91!==e.src.charCodeAt(a))return!1;if(94!==e.src.charCodeAt(a+1))return!1;if(e.level>=e.options.maxNesting)return!1;for(n=a+2;n<i;n++){if(32===e.src.charCodeAt(n))return!1;if(10===e.src.charCodeAt(n))return!1;if(93===e.src.charCodeAt(n))break}return!(n===a+2||n>=i||(n++,r=e.src.slice(a+2,n-1),void 0===e.env.footnotes.refs[\":\"+r]||(t||(e.env.footnotes.list||(e.env.footnotes.list=[]),e.env.footnotes.refs[\":\"+r]<0?(o=e.env.footnotes.list.length,e.env.footnotes.list[o]={label:r,count:0},e.env.footnotes.refs[\":\"+r]=o):o=e.env.footnotes.refs[\":\"+r],s=e.env.footnotes.list[o].count,e.env.footnotes.list[o].count++,e.push({type:\"footnote_ref\",id:o,subId:s,level:e.level})),e.pos=n,e.posMax=i,0)))}],[\"autolink\",function(e,t){var r,n,o,s,i,a=e.pos;return!(60!==e.src.charCodeAt(a)||(r=e.src.slice(a)).indexOf(\">\")<0||((n=r.match(ge))?he.indexOf(n[1].toLowerCase())<0||(i=B(s=n[0].slice(1,-1)),!e.parser.validateLink(s)||(t||(e.push({type:\"link_open\",href:i,level:e.level}),e.push({type:\"text\",content:s,level:e.level+1}),e.push({type:\"link_close\",level:e.level})),e.pos+=n[0].length,0)):!(o=r.match(fe))||(i=B(\"mailto:\"+(s=o[0].slice(1,-1))),!e.parser.validateLink(i)||(t||(e.push({type:\"link_open\",href:i,level:e.level}),e.push({type:\"text\",content:s,level:e.level+1}),e.push({type:\"link_close\",level:e.level})),e.pos+=o[0].length,0))))}],[\"htmltag\",function(e,t){var r,n,o,s=e.pos;return!(!e.options.html||(o=e.posMax,60!==e.src.charCodeAt(s)||s+2>=o||33!==(r=e.src.charCodeAt(s+1))&&63!==r&&47!==r&&!function(e){var t=32|e;return t>=97&&t<=122}(r)||!(n=e.src.slice(s).match(ke))||(t||e.push({type:\"htmltag\",content:e.src.slice(s,s+n[0].length),level:e.level}),e.pos+=n[0].length,0)))}],[\"entity\",function(e,t){var r,o,s=e.pos,i=e.posMax;if(38!==e.src.charCodeAt(s))return!1;if(s+1<i)if(35===e.src.charCodeAt(s+1)){if(o=e.src.slice(s).match(Ae))return t||(r=\"x\"===o[1][0].toLowerCase()?parseInt(o[1].slice(1),16):parseInt(o[1],10),e.pending+=l(r)?c(r):c(65533)),e.pos+=o[0].length,!0}else if(o=e.src.slice(s).match(ye)){var a=n(o[1]);if(o[1]!==a)return t||(e.pending+=a),e.pos+=o[0].length,!0}return t||(e.pending+=\"&\"),e.pos++,!0}]];function we(){this.ruler=new C;for(var e=0;e<xe.length;e++)this.ruler.push(xe[e][0],xe[e][1]);this.validateLink=Ce}function Ce(e){var t=e.trim().toLowerCase();return-1===(t=g(t)).indexOf(\":\")||-1===[\"vbscript\",\"javascript\",\"file\",\"data\"].indexOf(t.split(\":\")[0])}we.prototype.skipToken=function(e){var t,r,n=this.ruler.getRules(\"\"),o=n.length,s=e.pos;if((r=e.cacheGet(s))>0)e.pos=r;else{for(t=0;t<o;t++)if(n[t](e,!0))return void e.cacheSet(s,e.pos);e.pos++,e.cacheSet(s,e.pos)}},we.prototype.tokenize=function(e){for(var t,r,n=this.ruler.getRules(\"\"),o=n.length,s=e.posMax;e.pos<s;){for(r=0;r<o&&!(t=n[r](e,!1));r++);if(t){if(e.pos>=s)break}else e.pending+=e.src[e.pos++]}e.pending&&e.pushPending()},we.prototype.parse=function(e,t,r,n){var o=new E(e,this,t,r,n);this.tokenize(o)};var Ee={default:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:\"language-\",linkTarget:\"\",typographer:!1,quotes:\"“”‘’\",highlight:null,maxNesting:20},components:{core:{rules:[\"block\",\"inline\",\"references\",\"replacements\",\"smartquotes\",\"references\",\"abbr2\",\"footnote_tail\"]},block:{rules:[\"blockquote\",\"code\",\"fences\",\"footnote\",\"heading\",\"hr\",\"htmlblock\",\"lheading\",\"list\",\"paragraph\",\"table\"]},inline:{rules:[\"autolink\",\"backticks\",\"del\",\"emphasis\",\"entity\",\"escape\",\"footnote_ref\",\"htmltag\",\"links\",\"newline\",\"text\"]}}},full:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:\"language-\",linkTarget:\"\",typographer:!1,quotes:\"“”‘’\",highlight:null,maxNesting:20},components:{core:{},block:{},inline:{}}},commonmark:{options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:\"language-\",linkTarget:\"\",typographer:!1,quotes:\"“”‘’\",highlight:null,maxNesting:20},components:{core:{rules:[\"block\",\"inline\",\"references\",\"abbr2\"]},block:{rules:[\"blockquote\",\"code\",\"fences\",\"heading\",\"hr\",\"htmlblock\",\"lheading\",\"list\",\"paragraph\"]},inline:{rules:[\"autolink\",\"backticks\",\"emphasis\",\"entity\",\"escape\",\"htmltag\",\"links\",\"newline\",\"text\"]}}}};function De(e,t,r){this.src=t,this.env=r,this.options=e.options,this.tokens=[],this.inlineMode=!1,this.inline=e.inline,this.block=e.block,this.renderer=e.renderer,this.typographer=e.typographer}function _e(e,t){\"string\"!=typeof e&&(t=e,e=\"default\"),t&&null!=t.linkify&&console.warn(\"linkify option is removed. Use linkify plugin instead:\\n\\nimport Remarkable from 'remarkable';\\nimport linkify from 'remarkable/linkify';\\nnew Remarkable().use(linkify)\\n\"),this.inline=new we,this.block=new te,this.core=new G,this.renderer=new w,this.ruler=new C,this.options={},this.configure(Ee[e]),this.set(t||{})}function Be(e,t){if(Array.prototype.indexOf)return e.indexOf(t);for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}function qe(e,t){for(var r=e.length-1;r>=0;r--)!0===t(e[r])&&e.splice(r,1)}function Fe(e){throw new Error(\"Unhandled case for value: '\"+e+\"'\")}_e.prototype.set=function(e){i(this.options,e)},_e.prototype.configure=function(e){var t=this;if(!e)throw new Error(\"Wrong `remarkable` preset, check name/content\");e.options&&t.set(e.options),e.components&&Object.keys(e.components).forEach(function(r){e.components[r].rules&&t[r].ruler.enable(e.components[r].rules,!0)})},_e.prototype.use=function(e,t){return e(this,t),this},_e.prototype.parse=function(e,t){var r=new De(this,e,t);return this.core.process(r),r.tokens},_e.prototype.render=function(e,t){return t=t||{},this.renderer.render(this.parse(e,t),this.options,t)},_e.prototype.parseInline=function(e,t){var r=new De(this,e,t);return r.inlineMode=!0,this.core.process(r),r.tokens},_e.prototype.renderInline=function(e,t){return t=t||{},this.renderer.render(this.parseInline(e,t),this.options,t)};var Me=function(){function e(e){void 0===e&&(e={}),this.tagName=\"\",this.attrs={},this.innerHTML=\"\",this.whitespaceRegex=/\\s+/,this.tagName=e.tagName||\"\",this.attrs=e.attrs||{},this.innerHTML=e.innerHtml||e.innerHTML||\"\"}return e.prototype.setTagName=function(e){return this.tagName=e,this},e.prototype.getTagName=function(){return this.tagName||\"\"},e.prototype.setAttr=function(e,t){return this.getAttrs()[e]=t,this},e.prototype.getAttr=function(e){return this.getAttrs()[e]},e.prototype.setAttrs=function(e){return Object.assign(this.getAttrs(),e),this},e.prototype.getAttrs=function(){return this.attrs||(this.attrs={})},e.prototype.setClass=function(e){return this.setAttr(\"class\",e)},e.prototype.addClass=function(e){for(var t,r=this.getClass(),n=this.whitespaceRegex,o=r?r.split(n):[],s=e.split(n);t=s.shift();)-1===Be(o,t)&&o.push(t);return this.getAttrs().class=o.join(\" \"),this},e.prototype.removeClass=function(e){for(var t,r=this.getClass(),n=this.whitespaceRegex,o=r?r.split(n):[],s=e.split(n);o.length&&(t=s.shift());){var i=Be(o,t);-1!==i&&o.splice(i,1)}return this.getAttrs().class=o.join(\" \"),this},e.prototype.getClass=function(){return this.getAttrs().class||\"\"},e.prototype.hasClass=function(e){return-1!==(\" \"+this.getClass()+\" \").indexOf(\" \"+e+\" \")},e.prototype.setInnerHTML=function(e){return this.innerHTML=e,this},e.prototype.setInnerHtml=function(e){return this.setInnerHTML(e)},e.prototype.getInnerHTML=function(){return this.innerHTML||\"\"},e.prototype.getInnerHtml=function(){return this.getInnerHTML()},e.prototype.toAnchorString=function(){var e=this.getTagName(),t=this.buildAttrsStr();return[\"<\",e,t=t?\" \"+t:\"\",\">\",this.getInnerHtml(),\"</\",e,\">\"].join(\"\")},e.prototype.buildAttrsStr=function(){if(!this.attrs)return\"\";var e=this.getAttrs(),t=[];for(var r in e)e.hasOwnProperty(r)&&t.push(r+'=\"'+e[r]+'\"');return t.join(\" \")},e}();var Se=function(){function e(e){void 0===e&&(e={}),this.newWindow=!1,this.truncate={},this.className=\"\",this.newWindow=e.newWindow||!1,this.truncate=e.truncate||{},this.className=e.className||\"\"}return e.prototype.build=function(e){return new Me({tagName:\"a\",attrs:this.createAttrs(e),innerHtml:this.processAnchorText(e.getAnchorText())})},e.prototype.createAttrs=function(e){var t={href:e.getAnchorHref()},r=this.createCssClass(e);return r&&(t.class=r),this.newWindow&&(t.target=\"_blank\",t.rel=\"noopener noreferrer\"),this.truncate&&this.truncate.length&&this.truncate.length<e.getAnchorText().length&&(t.title=e.getAnchorHref()),t},e.prototype.createCssClass=function(e){var t=this.className;if(t){for(var r=[t],n=e.getCssClassSuffixes(),o=0,s=n.length;o<s;o++)r.push(t+\"-\"+n[o]);return r.join(\" \")}return\"\"},e.prototype.processAnchorText=function(e){return e=this.doTruncate(e)},e.prototype.doTruncate=function(e){var t=this.truncate;if(!t||!t.length)return e;var r=t.length,n=t.location;return\"smart\"===n?function(e,t,r){var n,o;null==r?(r=\"&hellip;\",o=3,n=8):(o=r.length,n=r.length);var s=function(e){var t=\"\";return e.scheme&&e.host&&(t+=e.scheme+\"://\"),e.host&&(t+=e.host),e.path&&(t+=\"/\"+e.path),e.query&&(t+=\"?\"+e.query),e.fragment&&(t+=\"#\"+e.fragment),t},i=function(e,t){var n=t/2,o=Math.ceil(n),s=-1*Math.floor(n),i=\"\";return s<0&&(i=e.substr(s)),e.substr(0,o)+r+i};if(e.length<=t)return e;var a=t-o,u=function(e){var t={},r=e,n=r.match(/^([a-z]+):\\/\\//i);return n&&(t.scheme=n[1],r=r.substr(n[0].length)),(n=r.match(/^(.*?)(?=(\\?|#|\\/|$))/i))&&(t.host=n[1],r=r.substr(n[0].length)),(n=r.match(/^\\/(.*?)(?=(\\?|#|$))/i))&&(t.path=n[1],r=r.substr(n[0].length)),(n=r.match(/^\\?(.*?)(?=(#|$))/i))&&(t.query=n[1],r=r.substr(n[0].length)),(n=r.match(/^#(.*?)$/i))&&(t.fragment=n[1]),t}(e);if(u.query){var l=u.query.match(/^(.*?)(?=(\\?|\\#))(.*?)$/i);l&&(u.query=u.query.substr(0,l[1].length),e=s(u))}if(e.length<=t)return e;if(u.host&&(u.host=u.host.replace(/^www\\./,\"\"),e=s(u)),e.length<=t)return e;var c=\"\";if(u.host&&(c+=u.host),c.length>=a)return u.host.length==t?(u.host.substr(0,t-o)+r).substr(0,a+n):i(c,a).substr(0,a+n);var p=\"\";if(u.path&&(p+=\"/\"+u.path),u.query&&(p+=\"?\"+u.query),p){if((c+p).length>=a)return(c+p).length==t?(c+p).substr(0,t):(c+i(p,a-c.length)).substr(0,a+n);c+=p}if(u.fragment){var h=\"#\"+u.fragment;if((c+h).length>=a)return(c+h).length==t?(c+h).substr(0,t):(c+i(h,a-c.length)).substr(0,a+n);c+=h}if(u.scheme&&u.host){var f=u.scheme+\"://\";if((c+f).length<a)return(f+c).substr(0,t)}if(c.length<=t)return c;var g=\"\";return a>0&&(g=c.substr(-1*Math.floor(a/2))),(c.substr(0,Math.ceil(a/2))+r+g).substr(0,a+n)}(e,r):\"middle\"===n?function(e,t,r){if(e.length<=t)return e;var n,o;null==r?(r=\"&hellip;\",n=8,o=3):(n=r.length,o=r.length);var s=t-o,i=\"\";return s>0&&(i=e.substr(-1*Math.floor(s/2))),(e.substr(0,Math.ceil(s/2))+r+i).substr(0,s+n)}(e,r):function(e,t,r){return function(e,t,r){var n;return e.length>t&&(null==r?(r=\"&hellip;\",n=3):n=r.length,e=e.substring(0,t-n)+r),e}(e,t,r)}(e,r)},e}(),Te=function(){function e(e){this.__jsduckDummyDocProp=null,this.matchedText=\"\",this.offset=0,this.tagBuilder=e.tagBuilder,this.matchedText=e.matchedText,this.offset=e.offset}return e.prototype.getMatchedText=function(){return this.matchedText},e.prototype.setOffset=function(e){this.offset=e},e.prototype.getOffset=function(){return this.offset},e.prototype.getCssClassSuffixes=function(){return[this.getType()]},e.prototype.buildTag=function(){return this.tagBuilder.build(this)},e}(),Le=function(e,t){return(Le=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function Re(e,t){function r(){this.constructor=e}Le(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var Ne=function(){return(Ne=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},ze=function(e){function t(t){var r=e.call(this,t)||this;return r.email=\"\",r.email=t.email,r}return Re(t,e),t.prototype.getType=function(){return\"email\"},t.prototype.getEmail=function(){return this.email},t.prototype.getAnchorHref=function(){return\"mailto:\"+this.email},t.prototype.getAnchorText=function(){return this.email},t}(Te),Pe=function(e){function t(t){var r=e.call(this,t)||this;return r.serviceName=\"\",r.hashtag=\"\",r.serviceName=t.serviceName,r.hashtag=t.hashtag,r}return Re(t,e),t.prototype.getType=function(){return\"hashtag\"},t.prototype.getServiceName=function(){return this.serviceName},t.prototype.getHashtag=function(){return this.hashtag},t.prototype.getAnchorHref=function(){var e=this.serviceName,t=this.hashtag;switch(e){case\"twitter\":return\"https://twitter.com/hashtag/\"+t;case\"facebook\":return\"https://www.facebook.com/hashtag/\"+t;case\"instagram\":return\"https://instagram.com/explore/tags/\"+t;default:throw new Error(\"Unknown service name to point hashtag to: \"+e)}},t.prototype.getAnchorText=function(){return\"#\"+this.hashtag},t}(Te),je=function(e){function t(t){var r=e.call(this,t)||this;return r.serviceName=\"twitter\",r.mention=\"\",r.mention=t.mention,r.serviceName=t.serviceName,r}return Re(t,e),t.prototype.getType=function(){return\"mention\"},t.prototype.getMention=function(){return this.mention},t.prototype.getServiceName=function(){return this.serviceName},t.prototype.getAnchorHref=function(){switch(this.serviceName){case\"twitter\":return\"https://twitter.com/\"+this.mention;case\"instagram\":return\"https://instagram.com/\"+this.mention;case\"soundcloud\":return\"https://soundcloud.com/\"+this.mention;default:throw new Error(\"Unknown service name to point mention to: \"+this.serviceName)}},t.prototype.getAnchorText=function(){return\"@\"+this.mention},t.prototype.getCssClassSuffixes=function(){var t=e.prototype.getCssClassSuffixes.call(this),r=this.getServiceName();return r&&t.push(r),t},t}(Te),Ie=function(e){function t(t){var r=e.call(this,t)||this;return r.number=\"\",r.plusSign=!1,r.number=t.number,r.plusSign=t.plusSign,r}return Re(t,e),t.prototype.getType=function(){return\"phone\"},t.prototype.getPhoneNumber=function(){return this.number},t.prototype.getNumber=function(){return this.getPhoneNumber()},t.prototype.getAnchorHref=function(){return\"tel:\"+(this.plusSign?\"+\":\"\")+this.number},t.prototype.getAnchorText=function(){return this.matchedText},t}(Te),Oe=function(e){function t(t){var r=e.call(this,t)||this;return r.url=\"\",r.urlMatchType=\"scheme\",r.protocolUrlMatch=!1,r.protocolRelativeMatch=!1,r.stripPrefix={scheme:!0,www:!0},r.stripTrailingSlash=!0,r.decodePercentEncoding=!0,r.schemePrefixRegex=/^(https?:\\/\\/)?/i,r.wwwPrefixRegex=/^(https?:\\/\\/)?(www\\.)?/i,r.protocolRelativeRegex=/^\\/\\//,r.protocolPrepended=!1,r.urlMatchType=t.urlMatchType,r.url=t.url,r.protocolUrlMatch=t.protocolUrlMatch,r.protocolRelativeMatch=t.protocolRelativeMatch,r.stripPrefix=t.stripPrefix,r.stripTrailingSlash=t.stripTrailingSlash,r.decodePercentEncoding=t.decodePercentEncoding,r}return Re(t,e),t.prototype.getType=function(){return\"url\"},t.prototype.getUrlMatchType=function(){return this.urlMatchType},t.prototype.getUrl=function(){var e=this.url;return this.protocolRelativeMatch||this.protocolUrlMatch||this.protocolPrepended||(e=this.url=\"http://\"+e,this.protocolPrepended=!0),e},t.prototype.getAnchorHref=function(){return this.getUrl().replace(/&amp;/g,\"&\")},t.prototype.getAnchorText=function(){var e=this.getMatchedText();return this.protocolRelativeMatch&&(e=this.stripProtocolRelativePrefix(e)),this.stripPrefix.scheme&&(e=this.stripSchemePrefix(e)),this.stripPrefix.www&&(e=this.stripWwwPrefix(e)),this.stripTrailingSlash&&(e=this.removeTrailingSlash(e)),this.decodePercentEncoding&&(e=this.removePercentEncoding(e)),e},t.prototype.stripSchemePrefix=function(e){return e.replace(this.schemePrefixRegex,\"\")},t.prototype.stripWwwPrefix=function(e){return e.replace(this.wwwPrefixRegex,\"$1\")},t.prototype.stripProtocolRelativePrefix=function(e){return e.replace(this.protocolRelativeRegex,\"\")},t.prototype.removeTrailingSlash=function(e){return\"/\"===e.charAt(e.length-1)&&(e=e.slice(0,-1)),e},t.prototype.removePercentEncoding=function(e){var t=e.replace(/%22/gi,\"&quot;\").replace(/%26/gi,\"&amp;\").replace(/%27/gi,\"&#39;\").replace(/%3C/gi,\"&lt;\").replace(/%3E/gi,\"&gt;\");try{return decodeURIComponent(t)}catch(e){return t}},t}(Te),Ue=function(e){this.__jsduckDummyDocProp=null,this.tagBuilder=e.tagBuilder},He=/[A-Za-z]/,Ve=/[0-9]/,Ge=/\\s/,$e=/['\"]/,Ze=/[\\x00-\\x1F\\x7F]/,We=/A-Za-z\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B4\\u08B6-\\u08BD\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1C80-\\u1C88\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FD5\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AE\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC/.source,Je=We+/\\u00a9\\u00ae\\u2000-\\u3300\\ud83c\\ud000-\\udfff\\ud83d\\ud000-\\udfff\\ud83e\\ud000-\\udfff/.source+/\\u0300-\\u036F\\u0483-\\u0489\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u0610-\\u061A\\u064B-\\u065F\\u0670\\u06D6-\\u06DC\\u06DF-\\u06E4\\u06E7\\u06E8\\u06EA-\\u06ED\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0859-\\u085B\\u08D4-\\u08E1\\u08E3-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962\\u0963\\u0981-\\u0983\\u09BC\\u09BE-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CD\\u09D7\\u09E2\\u09E3\\u0A01-\\u0A03\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70\\u0A71\\u0A75\\u0A81-\\u0A83\\u0ABC\\u0ABE-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AE2\\u0AE3\\u0B01-\\u0B03\\u0B3C\\u0B3E-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B62\\u0B63\\u0B82\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD7\\u0C00-\\u0C03\\u0C3E-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C62\\u0C63\\u0C81-\\u0C83\\u0CBC\\u0CBE-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CE2\\u0CE3\\u0D01-\\u0D03\\u0D3E-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4D\\u0D57\\u0D62\\u0D63\\u0D82\\u0D83\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0E31\\u0E34-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB4-\\u0EB9\\u0EBB\\u0EBC\\u0EC8-\\u0ECD\\u0F18\\u0F19\\u0F35\\u0F37\\u0F39\\u0F3E\\u0F3F\\u0F71-\\u0F84\\u0F86\\u0F87\\u0F8D-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102B-\\u103E\\u1056-\\u1059\\u105E-\\u1060\\u1062-\\u1064\\u1067-\\u106D\\u1071-\\u1074\\u1082-\\u108D\\u108F\\u109A-\\u109D\\u135D-\\u135F\\u1712-\\u1714\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17B4-\\u17D3\\u17DD\\u180B-\\u180D\\u1885\\u1886\\u18A9\\u1920-\\u192B\\u1930-\\u193B\\u1A17-\\u1A1B\\u1A55-\\u1A5E\\u1A60-\\u1A7C\\u1A7F\\u1AB0-\\u1ABE\\u1B00-\\u1B04\\u1B34-\\u1B44\\u1B6B-\\u1B73\\u1B80-\\u1B82\\u1BA1-\\u1BAD\\u1BE6-\\u1BF3\\u1C24-\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE8\\u1CED\\u1CF2-\\u1CF4\\u1CF8\\u1CF9\\u1DC0-\\u1DF5\\u1DFB-\\u1DFF\\u20D0-\\u20F0\\u2CEF-\\u2CF1\\u2D7F\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099\\u309A\\uA66F-\\uA672\\uA674-\\uA67D\\uA69E\\uA69F\\uA6F0\\uA6F1\\uA802\\uA806\\uA80B\\uA823-\\uA827\\uA880\\uA881\\uA8B4-\\uA8C5\\uA8E0-\\uA8F1\\uA926-\\uA92D\\uA947-\\uA953\\uA980-\\uA983\\uA9B3-\\uA9C0\\uA9E5\\uAA29-\\uAA36\\uAA43\\uAA4C\\uAA4D\\uAA7B-\\uAA7D\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uAAEB-\\uAAEF\\uAAF5\\uAAF6\\uABE3-\\uABEA\\uABEC\\uABED\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE2F/.source,Ye=/0-9\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0BE6-\\u0BEF\\u0C66-\\u0C6F\\u0CE6-\\u0CEF\\u0D66-\\u0D6F\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F29\\u1040-\\u1049\\u1090-\\u1099\\u17E0-\\u17E9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19D9\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\uA620-\\uA629\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19/.source,Ke=Je+Ye,Qe=Je+Ye,Xe=\"(?:[\"+Ye+\"]{1,3}\\\\.){3}[\"+Ye+\"]{1,3}\",et=\"[\"+Qe+\"](?:[\"+Qe+\"\\\\-]{0,61}[\"+Qe+\"])?\",tt=function(e){return\"(?=(\"+et+\"))\\\\\"+e},rt=function(e){return\"(?:\"+tt(e)+\"(?:\\\\.\"+tt(e+1)+\"){0,126}|\"+Xe+\")\"},nt=new RegExp(\"[\"+Qe+\"]\"),ot=/(?:xn--vermgensberatung-pwb|xn--vermgensberater-ctb|xn--clchc0ea0b2g2a9gcd|xn--w4r85el8fhu5dnra|northwesternmutual|travelersinsurance|vermögensberatung|xn--3oq18vl8pn36a|xn--5su34j936bgsg|xn--bck1b9a5dre4c|xn--mgbai9azgqp6j|xn--mgberp4a5d4ar|xn--xkc2dl3a5ee0h|vermögensberater|xn--fzys8d69uvgm|xn--mgba7c0bbn0a|xn--xkc2al3hye2a|americanexpress|kerryproperties|sandvikcoromant|xn--i1b6b1a6a2e|xn--kcrx77d1x4a|xn--lgbbat1ad8j|xn--mgba3a4f16a|xn--mgbaakc7dvf|xn--mgbc0a9azcg|xn--nqv7fs00ema|afamilycompany|americanfamily|bananarepublic|cancerresearch|cookingchannel|kerrylogistics|weatherchannel|xn--54b7fta0cc|xn--6qq986b3xl|xn--80aqecdr1a|xn--b4w605ferd|xn--fiq228c5hs|xn--h2breg3eve|xn--jlq61u9w7b|xn--mgba3a3ejt|xn--mgbaam7a8h|xn--mgbayh7gpa|xn--mgbb9fbpob|xn--mgbbh1a71e|xn--mgbca7dzdo|xn--mgbi4ecexp|xn--mgbx4cd0ab|xn--rvc1e0am3e|international|lifeinsurance|spreadbetting|travelchannel|wolterskluwer|xn--eckvdtc9d|xn--fpcrj9c3d|xn--fzc2c9e2c|xn--h2brj9c8c|xn--tiq49xqyj|xn--yfro4i67o|xn--ygbi2ammx|construction|lplfinancial|scholarships|versicherung|xn--3e0b707e|xn--45br5cyl|xn--80adxhks|xn--80asehdb|xn--8y0a063a|xn--gckr3f0f|xn--mgb9awbf|xn--mgbab2bd|xn--mgbgu82a|xn--mgbpl2fh|xn--mgbt3dhd|xn--mk1bu44c|xn--ngbc5azd|xn--ngbe9e0a|xn--ogbpf8fl|xn--qcka1pmc|accountants|barclaycard|blackfriday|blockbuster|bridgestone|calvinklein|contractors|creditunion|engineering|enterprises|foodnetwork|investments|kerryhotels|lamborghini|motorcycles|olayangroup|photography|playstation|productions|progressive|redumbrella|rightathome|williamhill|xn--11b4c3d|xn--1ck2e1b|xn--1qqw23a|xn--2scrj9c|xn--3bst00m|xn--3ds443g|xn--3hcrj9c|xn--42c2d9a|xn--45brj9c|xn--55qw42g|xn--6frz82g|xn--80ao21a|xn--9krt00a|xn--cck2b3b|xn--czr694b|xn--d1acj3b|xn--efvy88h|xn--estv75g|xn--fct429k|xn--fjq720a|xn--flw351e|xn--g2xx48c|xn--gecrj9c|xn--gk3at1e|xn--h2brj9c|xn--hxt814e|xn--imr513n|xn--j6w193g|xn--jvr189m|xn--kprw13d|xn--kpry57d|xn--kpu716f|xn--mgbbh1a|xn--mgbtx2b|xn--mix891f|xn--nyqy26a|xn--otu796d|xn--pbt977c|xn--pgbs0dh|xn--q9jyb4c|xn--rhqv96g|xn--rovu88b|xn--s9brj9c|xn--ses554g|xn--t60b56a|xn--vuq861b|xn--w4rs40l|xn--xhq521b|xn--zfr164b|சிங்கப்பூர்|accountant|apartments|associates|basketball|bnpparibas|boehringer|capitalone|consulting|creditcard|cuisinella|eurovision|extraspace|foundation|healthcare|immobilien|industries|management|mitsubishi|nationwide|newholland|nextdirect|onyourside|properties|protection|prudential|realestate|republican|restaurant|schaeffler|swiftcover|tatamotors|technology|telefonica|university|vistaprint|vlaanderen|volkswagen|xn--30rr7y|xn--3pxu8k|xn--45q11c|xn--4gbrim|xn--55qx5d|xn--5tzm5g|xn--80aswg|xn--90a3ac|xn--9dbq2a|xn--9et52u|xn--c2br7g|xn--cg4bki|xn--czrs0t|xn--czru2d|xn--fiq64b|xn--fiqs8s|xn--fiqz9s|xn--io0a7i|xn--kput3i|xn--mxtq1m|xn--o3cw4h|xn--pssy2u|xn--unup4y|xn--wgbh1c|xn--wgbl6a|xn--y9a3aq|accenture|alfaromeo|allfinanz|amsterdam|analytics|aquarelle|barcelona|bloomberg|christmas|community|directory|education|equipment|fairwinds|financial|firestone|fresenius|frontdoor|fujixerox|furniture|goldpoint|hisamitsu|homedepot|homegoods|homesense|honeywell|institute|insurance|kuokgroup|ladbrokes|lancaster|landrover|lifestyle|marketing|marshalls|melbourne|microsoft|panasonic|passagens|pramerica|richardli|scjohnson|shangrila|solutions|statebank|statefarm|stockholm|travelers|vacations|xn--90ais|xn--c1avg|xn--d1alf|xn--e1a4c|xn--fhbei|xn--j1aef|xn--j1amh|xn--l1acc|xn--ngbrx|xn--nqv7f|xn--p1acf|xn--tckwe|xn--vhquv|yodobashi|abudhabi|airforce|allstate|attorney|barclays|barefoot|bargains|baseball|boutique|bradesco|broadway|brussels|budapest|builders|business|capetown|catering|catholic|chrysler|cipriani|cityeats|cleaning|clinique|clothing|commbank|computer|delivery|deloitte|democrat|diamonds|discount|discover|download|engineer|ericsson|esurance|etisalat|everbank|exchange|feedback|fidelity|firmdale|football|frontier|goodyear|grainger|graphics|guardian|hdfcbank|helsinki|holdings|hospital|infiniti|ipiranga|istanbul|jpmorgan|lighting|lundbeck|marriott|maserati|mckinsey|memorial|merckmsd|mortgage|movistar|observer|partners|pharmacy|pictures|plumbing|property|redstone|reliance|saarland|samsclub|security|services|shopping|showtime|softbank|software|stcgroup|supplies|symantec|training|uconnect|vanguard|ventures|verisign|woodside|xn--90ae|xn--node|xn--p1ai|xn--qxam|yokohama|السعودية|abogado|academy|agakhan|alibaba|android|athleta|auction|audible|auspost|avianca|banamex|bauhaus|bentley|bestbuy|booking|brother|bugatti|capital|caravan|careers|cartier|channel|charity|chintai|citadel|clubmed|college|cologne|comcast|company|compare|contact|cooking|corsica|country|coupons|courses|cricket|cruises|dentist|digital|domains|exposed|express|farmers|fashion|ferrari|ferrero|finance|fishing|fitness|flights|florist|flowers|forsale|frogans|fujitsu|gallery|genting|godaddy|grocery|guitars|hamburg|hangout|hitachi|holiday|hosting|hoteles|hotmail|hyundai|iselect|ismaili|jewelry|juniper|kitchen|komatsu|lacaixa|lancome|lanxess|lasalle|latrobe|leclerc|liaison|limited|lincoln|markets|metlife|monster|netbank|netflix|network|neustar|okinawa|oldnavy|organic|origins|philips|pioneer|politie|realtor|recipes|rentals|reviews|rexroth|samsung|sandvik|schmidt|schwarz|science|shiksha|shriram|singles|staples|starhub|storage|support|surgery|systems|temasek|theater|theatre|tickets|tiffany|toshiba|trading|walmart|wanggou|watches|weather|website|wedding|whoswho|windows|winners|xfinity|yamaxun|youtube|zuerich|католик|اتصالات|الجزائر|العليان|پاکستان|كاثوليك|موبايلي|இந்தியா|abarth|abbott|abbvie|active|africa|agency|airbus|airtel|alipay|alsace|alstom|anquan|aramco|author|bayern|beauty|berlin|bharti|blanco|bostik|boston|broker|camera|career|caseih|casino|center|chanel|chrome|church|circle|claims|clinic|coffee|comsec|condos|coupon|credit|cruise|dating|datsun|dealer|degree|dental|design|direct|doctor|dunlop|dupont|durban|emerck|energy|estate|events|expert|family|flickr|futbol|gallup|garden|george|giving|global|google|gratis|health|hermes|hiphop|hockey|hotels|hughes|imamat|insure|intuit|jaguar|joburg|juegos|kaufen|kinder|kindle|kosher|lancia|latino|lawyer|lefrak|living|locker|london|luxury|madrid|maison|makeup|market|mattel|mobile|mobily|monash|mormon|moscow|museum|mutual|nagoya|natura|nissan|nissay|norton|nowruz|office|olayan|online|oracle|orange|otsuka|pfizer|photos|physio|piaget|pictet|quebec|racing|realty|reisen|repair|report|review|rocher|rogers|ryukyu|safety|sakura|sanofi|school|schule|search|secure|select|shouji|soccer|social|stream|studio|supply|suzuki|swatch|sydney|taipei|taobao|target|tattoo|tennis|tienda|tjmaxx|tkmaxx|toyota|travel|unicom|viajes|viking|villas|virgin|vision|voting|voyage|vuelos|walter|warman|webcam|xihuan|yachts|yandex|zappos|москва|онлайн|ابوظبي|ارامكو|الاردن|المغرب|امارات|فلسطين|مليسيا|भारतम्|இலங்கை|ファッション|actor|adult|aetna|amfam|amica|apple|archi|audio|autos|azure|baidu|beats|bible|bingo|black|boats|bosch|build|canon|cards|chase|cheap|cisco|citic|click|cloud|coach|codes|crown|cymru|dabur|dance|deals|delta|dodge|drive|dubai|earth|edeka|email|epost|epson|faith|fedex|final|forex|forum|gallo|games|gifts|gives|glade|glass|globo|gmail|green|gripe|group|gucci|guide|homes|honda|horse|house|hyatt|ikano|intel|irish|iveco|jetzt|koeln|kyoto|lamer|lease|legal|lexus|lilly|linde|lipsy|lixil|loans|locus|lotte|lotto|lupin|macys|mango|media|miami|money|mopar|movie|nadex|nexus|nikon|ninja|nokia|nowtv|omega|osaka|paris|parts|party|phone|photo|pizza|place|poker|praxi|press|prime|promo|quest|radio|rehab|reise|ricoh|rocks|rodeo|rugby|salon|sener|seven|sharp|shell|shoes|skype|sling|smart|smile|solar|space|sport|stada|store|study|style|sucks|swiss|tatar|tires|tirol|tmall|today|tokyo|tools|toray|total|tours|trade|trust|tunes|tushu|ubank|vegas|video|vodka|volvo|wales|watch|weber|weibo|works|world|xerox|yahoo|zippo|ایران|بازار|بھارت|سودان|سورية|همراه|भारोत|संगठन|বাংলা|భారత్|ഭാരതം|嘉里大酒店|aarp|able|adac|aero|aigo|akdn|ally|amex|arab|army|arpa|arte|asda|asia|audi|auto|baby|band|bank|bbva|beer|best|bike|bing|blog|blue|bofa|bond|book|buzz|cafe|call|camp|care|cars|casa|case|cash|cbre|cern|chat|citi|city|club|cool|coop|cyou|data|date|dclk|deal|dell|desi|diet|dish|docs|doha|duck|duns|dvag|erni|fage|fail|fans|farm|fast|fiat|fido|film|fire|fish|flir|food|ford|free|fund|game|gbiz|gent|ggee|gift|gmbh|gold|golf|goog|guge|guru|hair|haus|hdfc|help|here|hgtv|host|hsbc|icbc|ieee|imdb|immo|info|itau|java|jeep|jobs|jprs|kddi|kiwi|kpmg|kred|land|lego|lgbt|lidl|life|like|limo|link|live|loan|loft|love|ltda|luxe|maif|meet|meme|menu|mini|mint|mobi|moda|moto|name|navy|news|next|nico|nike|ollo|open|page|pars|pccw|pics|ping|pink|play|plus|pohl|porn|post|prod|prof|qpon|raid|read|reit|rent|rest|rich|rmit|room|rsvp|ruhr|safe|sale|sarl|save|saxo|scor|scot|seat|seek|sexy|shaw|shia|shop|show|silk|sina|site|skin|sncf|sohu|song|sony|spot|star|surf|talk|taxi|team|tech|teva|tiaa|tips|town|toys|tube|vana|visa|viva|vivo|vote|voto|wang|weir|wien|wiki|wine|work|xbox|yoga|zara|zero|zone|дети|сайт|بارت|بيتك|ڀارت|تونس|شبكة|عراق|عمان|موقع|भारत|ভারত|ভাৰত|ਭਾਰਤ|ભારત|ଭାରତ|ಭಾರತ|ලංකා|グーグル|クラウド|ポイント|大众汽车|组织机构|電訊盈科|香格里拉|aaa|abb|abc|aco|ads|aeg|afl|aig|anz|aol|app|art|aws|axa|bar|bbc|bbt|bcg|bcn|bet|bid|bio|biz|bms|bmw|bnl|bom|boo|bot|box|buy|bzh|cab|cal|cam|car|cat|cba|cbn|cbs|ceb|ceo|cfa|cfd|com|crs|csc|dad|day|dds|dev|dhl|diy|dnp|dog|dot|dtv|dvr|eat|eco|edu|esq|eus|fan|fit|fly|foo|fox|frl|ftr|fun|fyi|gal|gap|gdn|gea|gle|gmo|gmx|goo|gop|got|gov|hbo|hiv|hkt|hot|how|ibm|ice|icu|ifm|inc|ing|ink|int|ist|itv|jcb|jcp|jio|jll|jmp|jnj|jot|joy|kfh|kia|kim|kpn|krd|lat|law|lds|llc|lol|lpl|ltd|man|map|mba|med|men|mil|mit|mlb|mls|mma|moe|moi|mom|mov|msd|mtn|mtr|nab|nba|nec|net|new|nfl|ngo|nhk|now|nra|nrw|ntt|nyc|obi|off|one|ong|onl|ooo|org|ott|ovh|pay|pet|phd|pid|pin|pnc|pro|pru|pub|pwc|qvc|red|ren|ril|rio|rip|run|rwe|sap|sas|sbi|sbs|sca|scb|ses|sew|sex|sfr|ski|sky|soy|srl|srt|stc|tab|tax|tci|tdk|tel|thd|tjx|top|trv|tui|tvs|ubs|uno|uol|ups|vet|vig|vin|vip|wed|win|wme|wow|wtc|wtf|xin|xxx|xyz|you|yun|zip|бел|ком|қаз|мкд|мон|орг|рус|срб|укр|հայ|קום|عرب|قطر|كوم|مصر|कॉम|नेट|คอม|ไทย|ストア|セール|みんな|中文网|天主教|我爱你|新加坡|淡马锡|诺基亚|飞利浦|ac|ad|ae|af|ag|ai|al|am|ao|aq|ar|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|cr|cu|cv|cw|cx|cy|cz|de|dj|dk|dm|do|dz|ec|ee|eg|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|in|io|iq|ir|is|it|je|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|mv|mw|mx|my|mz|na|nc|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sx|sy|sz|tc|td|tf|tg|th|tj|tk|tl|tm|tn|to|tr|tt|tv|tw|tz|ua|ug|uk|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|za|zm|zw|ελ|бг|ею|рф|გე|닷넷|닷컴|삼성|한국|コム|世界|中信|中国|中國|企业|佛山|信息|健康|八卦|公司|公益|台湾|台灣|商城|商店|商标|嘉里|在线|大拿|娱乐|家電|工行|广东|微博|慈善|手机|手表|招聘|政务|政府|新闻|时尚|書籍|机构|游戏|澳門|点看|珠宝|移动|网址|网店|网站|网络|联通|谷歌|购物|通販|集团|食品|餐厅|香港)/,st=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.localPartCharRegex=new RegExp(\"[\"+Qe+\"!#$%&'*+/=?^_`{|}~-]\"),t.strictTldRegex=new RegExp(\"^\"+ot.source+\"$\"),t}return Re(t,e),t.prototype.parseMatches=function(e){for(var t=this.tagBuilder,r=this.localPartCharRegex,n=this.strictTldRegex,o=[],s=e.length,i=new it,a={m:\"a\",a:\"i\",i:\"l\",l:\"t\",t:\"o\",o:\":\"},u=0,l=0,c=i;u<s;){var p=e.charAt(u);switch(l){case 0:h(p);break;case 1:f(e.charAt(u-1),p);break;case 2:g(p);break;case 3:d(p);break;case 4:m(p);break;case 5:b(p);break;case 6:v(p);break;case 7:k(p);break;default:Fe(l)}u++}return x(),o;function h(e){\"m\"===e?A(1):r.test(e)&&A()}function f(e,t){\":\"===e?r.test(t)?(l=2,c=new it(Ne({},c,{hasMailtoPrefix:!0}))):y():a[e]===t||(r.test(t)?l=2:\".\"===t?l=3:\"@\"===t?l=4:y())}function g(e){\".\"===e?l=3:\"@\"===e?l=4:r.test(e)||y()}function d(e){\".\"===e?y():\"@\"===e?y():r.test(e)?l=2:y()}function m(e){nt.test(e)?l=5:y()}function b(e){\".\"===e?l=7:\"-\"===e?l=6:nt.test(e)||x()}function v(e){\"-\"===e||\".\"===e?x():nt.test(e)?l=5:x()}function k(e){\".\"===e||\"-\"===e?x():nt.test(e)?(l=5,c=new it(Ne({},c,{hasDomainDot:!0}))):x()}function A(e){void 0===e&&(e=2),l=e,c=new it({idx:u})}function y(){l=0,c=i}function x(){if(c.hasDomainDot){var r=e.slice(c.idx,u);/[-.]$/.test(r)&&(r=r.slice(0,-1));var s=c.hasMailtoPrefix?r.slice(\"mailto:\".length):r;(function(e){var t=(e.split(\".\").pop()||\"\").toLowerCase();return n.test(t)})(s)&&o.push(new ze({tagBuilder:t,matchedText:r,offset:c.idx,email:s}))}y()}},t}(Ue),it=function(e){void 0===e&&(e={}),this.idx=void 0!==e.idx?e.idx:-1,this.hasMailtoPrefix=!!e.hasMailtoPrefix,this.hasDomainDot=!!e.hasDomainDot},at=function(){function e(){}return e.isValid=function(e,t){return!(t&&!this.isValidUriScheme(t)||this.urlMatchDoesNotHaveProtocolOrDot(e,t)||this.urlMatchDoesNotHaveAtLeastOneWordChar(e,t)&&!this.isValidIpAddress(e)||this.containsMultipleDots(e))},e.isValidIpAddress=function(e){var t=new RegExp(this.hasFullProtocolRegex.source+this.ipRegex.source);return null!==e.match(t)},e.containsMultipleDots=function(e){var t=e;return this.hasFullProtocolRegex.test(e)&&(t=e.split(\"://\")[1]),t.split(\"/\")[0].indexOf(\"..\")>-1},e.isValidUriScheme=function(e){var t=e.match(this.uriSchemeRegex),r=t&&t[0].toLowerCase();return\"javascript:\"!==r&&\"vbscript:\"!==r},e.urlMatchDoesNotHaveProtocolOrDot=function(e,t){return!(!e||t&&this.hasFullProtocolRegex.test(t)||-1!==e.indexOf(\".\"))},e.urlMatchDoesNotHaveAtLeastOneWordChar=function(e,t){return!(!e||!t)&&!this.hasWordCharAfterProtocolRegex.test(e)},e.hasFullProtocolRegex=/^[A-Za-z][-.+A-Za-z0-9]*:\\/\\//,e.uriSchemeRegex=/^[A-Za-z][-.+A-Za-z0-9]*:/,e.hasWordCharAfterProtocolRegex=new RegExp(\":[^\\\\s]*?[\"+We+\"]\"),e.ipRegex=/[0-9][0-9]?[0-9]?\\.[0-9][0-9]?[0-9]?\\.[0-9][0-9]?[0-9]?\\.[0-9][0-9]?[0-9]?(:[0-9]*)?\\/?$/,e}(),ut=function(e){function t(t){var r,n=e.call(this,t)||this;return n.stripPrefix={scheme:!0,www:!0},n.stripTrailingSlash=!0,n.decodePercentEncoding=!0,n.matcherRegex=(r=new RegExp(\"[/?#](?:[\"+Qe+\"\\\\-+&@#/%=~_()|'$*\\\\[\\\\]?!:,.;✓]*[\"+Qe+\"\\\\-+&@#/%=~_()|'$*\\\\[\\\\]✓])?\"),new RegExp([\"(?:\",\"(\",/(?:[A-Za-z][-.+A-Za-z0-9]{0,63}:(?![A-Za-z][-.+A-Za-z0-9]{0,63}:\\/\\/)(?!\\d+\\/?)(?:\\/\\/)?)/.source,rt(2),\")\",\"|\",\"(\",\"(//)?\",/(?:www\\.)/.source,rt(6),\")\",\"|\",\"(\",\"(//)?\",rt(10)+\"\\\\.\",ot.source,\"(?![-\"+Ke+\"])\",\")\",\")\",\"(?::[0-9]+)?\",\"(?:\"+r.source+\")?\"].join(\"\"),\"gi\")),n.wordCharRegExp=new RegExp(\"[\"+Qe+\"]\"),n.stripPrefix=t.stripPrefix,n.stripTrailingSlash=t.stripTrailingSlash,n.decodePercentEncoding=t.decodePercentEncoding,n}return Re(t,e),t.prototype.parseMatches=function(e){for(var t,r=this.matcherRegex,n=this.stripPrefix,o=this.stripTrailingSlash,s=this.decodePercentEncoding,i=this.tagBuilder,a=[],u=function(){var r=t[0],u=t[1],c=t[4],p=t[5],h=t[9],f=t.index,g=p||h,d=e.charAt(f-1);if(!at.isValid(r,u))return\"continue\";if(f>0&&\"@\"===d)return\"continue\";if(f>0&&g&&l.wordCharRegExp.test(d))return\"continue\";if(/\\?$/.test(r)&&(r=r.substr(0,r.length-1)),l.matchHasUnbalancedClosingParen(r))r=r.substr(0,r.length-1);else{var m=l.matchHasInvalidCharAfterTld(r,u);m>-1&&(r=r.substr(0,m))}var b=[\"http://\",\"https://\"].find(function(e){return!!u&&-1!==u.indexOf(e)});if(b){var v=r.indexOf(b);r=r.substr(v),u=u.substr(v),f+=v}var k=u?\"scheme\":c?\"www\":\"tld\",A=!!u;a.push(new Oe({tagBuilder:i,matchedText:r,offset:f,urlMatchType:k,url:r,protocolUrlMatch:A,protocolRelativeMatch:!!g,stripPrefix:n,stripTrailingSlash:o,decodePercentEncoding:s}))},l=this;null!==(t=r.exec(e));)u();return a},t.prototype.matchHasUnbalancedClosingParen=function(e){var t,r=e.charAt(e.length-1);if(\")\"===r)t=\"(\";else{if(\"]\"!==r)return!1;t=\"[\"}for(var n=0,o=0,s=e.length-1;o<s;o++){var i=e.charAt(o);i===t?n++:i===r&&(n=Math.max(n-1,0))}return 0===n},t.prototype.matchHasInvalidCharAfterTld=function(e,t){if(!e)return-1;var r=0;t&&(r=e.indexOf(\":\"),e=e.slice(r));var n=new RegExp(\"^((.?//)?[-.\"+Qe+\"]*[-\"+Qe+\"]\\\\.[-\"+Qe+\"]+)\").exec(e);return null===n?-1:(r+=n[1].length,e=e.slice(n[1].length),/^[^-.A-Za-z0-9:\\/?#]/.test(e)?r:-1)},t}(Ue),lt=function(e){function t(t){var r=e.call(this,t)||this;return r.serviceName=\"twitter\",r.matcherRegex=new RegExp(\"#[_\"+Qe+\"]{1,139}(?![_\"+Qe+\"])\",\"g\"),r.nonWordCharRegex=new RegExp(\"[^\"+Qe+\"]\"),r.serviceName=t.serviceName,r}return Re(t,e),t.prototype.parseMatches=function(e){for(var t,r=this.matcherRegex,n=this.nonWordCharRegex,o=this.serviceName,s=this.tagBuilder,i=[];null!==(t=r.exec(e));){var a=t.index,u=e.charAt(a-1);if(0===a||n.test(u)){var l=t[0],c=t[0].slice(1);i.push(new Pe({tagBuilder:s,matchedText:l,offset:a,serviceName:o,hashtag:c}))}}return i},t}(Ue),ct=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.matcherRegex=/(?:(?:(?:(\\+)?\\d{1,3}[-\\040.]?)?\\(?\\d{3}\\)?[-\\040.]?\\d{3}[-\\040.]?\\d{4})|(?:(\\+)(?:9[976]\\d|8[987530]\\d|6[987]\\d|5[90]\\d|42\\d|3[875]\\d|2[98654321]\\d|9[8543210]|8[6421]|6[6543210]|5[87654321]|4[987654310]|3[9643210]|2[70]|7|1)[-\\040.]?(?:\\d[-\\040.]?){6,12}\\d+))([,;]+[0-9]+#?)*/g,t}return Re(t,e),t.prototype.parseMatches=function(e){for(var t,r=this.matcherRegex,n=this.tagBuilder,o=[];null!==(t=r.exec(e));){var s=t[0],i=s.replace(/[^0-9,;#]/g,\"\"),a=!(!t[1]&&!t[2]),u=0==t.index?\"\":e.substr(t.index-1,1),l=e.substr(t.index+s.length,1),c=!u.match(/\\d/)&&!l.match(/\\d/);this.testMatch(t[3])&&this.testMatch(s)&&c&&o.push(new Ie({tagBuilder:n,matchedText:s,offset:t.index,number:i,plusSign:a}))}return o},t.prototype.testMatch=function(e){return/\\D/.test(e)},t}(Ue),pt=function(e){function t(t){var r=e.call(this,t)||this;return r.serviceName=\"twitter\",r.matcherRegexes={twitter:new RegExp(\"@[_\"+Qe+\"]{1,50}(?![_\"+Qe+\"])\",\"g\"),instagram:new RegExp(\"@[_.\"+Qe+\"]{1,30}(?![_\"+Qe+\"])\",\"g\"),soundcloud:new RegExp(\"@[-_.\"+Qe+\"]{1,50}(?![-_\"+Qe+\"])\",\"g\")},r.nonWordCharRegex=new RegExp(\"[^\"+Qe+\"]\"),r.serviceName=t.serviceName,r}return Re(t,e),t.prototype.parseMatches=function(e){var t,r=this.serviceName,n=this.matcherRegexes[this.serviceName],o=this.nonWordCharRegex,s=this.tagBuilder,i=[];if(!n)return i;for(;null!==(t=n.exec(e));){var a=t.index,u=e.charAt(a-1);if(0===a||o.test(u)){var l=t[0].replace(/\\.+$/g,\"\"),c=l.slice(1);i.push(new je({tagBuilder:s,matchedText:l,offset:a,serviceName:r,mention:c}))}}return i},t}(Ue);function ht(e,t){for(var r=t.onOpenTag,n=t.onCloseTag,o=t.onText,s=t.onComment,i=t.onDoctype,a=new ft,u=0,l=e.length,c=0,p=0,h=a;u<l;){var f=e.charAt(u);switch(c){case 0:g(f);break;case 1:d(f);break;case 2:b(f);break;case 3:m(f);break;case 4:v(f);break;case 5:k(f);break;case 6:A(f);break;case 7:y(f);break;case 8:x(f);break;case 9:w(f);break;case 10:C(f);break;case 11:E(f);break;case 12:D(f);break;case 13:_();break;case 14:B(f);break;case 15:q(f);break;case 16:F(f);break;case 17:M(f);break;case 18:S(f);break;case 19:T(f);break;case 20:L(f);break;default:Fe(c)}u++}function g(e){\"<\"===e&&N()}function d(e){\"!\"===e?c=13:\"/\"===e?(c=2,h=new ft(Ne({},h,{isClosing:!0}))):\"<\"===e?N():He.test(e)?(c=3,h=new ft(Ne({},h,{isOpening:!0}))):(c=0,h=a)}function m(e){Ge.test(e)?(h=new ft(Ne({},h,{name:P()})),c=4):\"<\"===e?N():\"/\"===e?(h=new ft(Ne({},h,{name:P()})),c=12):\">\"===e?(h=new ft(Ne({},h,{name:P()})),z()):He.test(e)||Ve.test(e)||\":\"===e||R()}function b(e){\">\"===e?R():He.test(e)?c=3:R()}function v(e){Ge.test(e)||(\"/\"===e?c=12:\">\"===e?z():\"<\"===e?N():\"=\"===e||$e.test(e)||Ze.test(e)?R():c=5)}function k(e){Ge.test(e)?c=6:\"/\"===e?c=12:\"=\"===e?c=7:\">\"===e?z():\"<\"===e?N():$e.test(e)&&R()}function A(e){Ge.test(e)||(\"/\"===e?c=12:\"=\"===e?c=7:\">\"===e?z():\"<\"===e?N():$e.test(e)?R():c=5)}function y(e){Ge.test(e)||('\"'===e?c=8:\"'\"===e?c=9:/[>=`]/.test(e)?R():\"<\"===e?N():c=10)}function x(e){'\"'===e&&(c=11)}function w(e){\"'\"===e&&(c=11)}function C(e){Ge.test(e)?c=4:\">\"===e?z():\"<\"===e&&N()}function E(e){Ge.test(e)?c=4:\"/\"===e?c=12:\">\"===e?z():\"<\"===e?N():(c=4,u--)}function D(e){\">\"===e?(h=new ft(Ne({},h,{isClosing:!0})),z()):c=4}function _(t){\"--\"===e.substr(u,2)?(u+=2,h=new ft(Ne({},h,{type:\"comment\"})),c=14):\"DOCTYPE\"===e.substr(u,7).toUpperCase()?(u+=7,h=new ft(Ne({},h,{type:\"doctype\"})),c=20):R()}function B(e){\"-\"===e?c=15:\">\"===e?R():c=16}function q(e){\"-\"===e?c=18:\">\"===e?R():c=16}function F(e){\"-\"===e&&(c=17)}function M(e){c=\"-\"===e?18:16}function S(e){\">\"===e?z():\"!\"===e?c=19:\"-\"===e||(c=16)}function T(e){\"-\"===e?c=17:\">\"===e?z():c=16}function L(e){\">\"===e?z():\"<\"===e&&N()}function R(){c=0,h=a}function N(){c=1,h=new ft({idx:u})}function z(){var t=e.slice(p,h.idx);t&&o(t,p),\"comment\"===h.type?s(h.idx):\"doctype\"===h.type?i(h.idx):(h.isOpening&&r(h.name,h.idx),h.isClosing&&n(h.name,h.idx)),R(),p=u+1}function P(){var t=h.idx+(h.isClosing?2:1);return e.slice(t,u).toLowerCase()}p<u&&function(){var t=e.slice(p,u);o(t,p),p=u+1}()}var ft=function(e){void 0===e&&(e={}),this.idx=void 0!==e.idx?e.idx:-1,this.type=e.type||\"tag\",this.name=e.name||\"\",this.isOpening=!!e.isOpening,this.isClosing=!!e.isClosing},gt=function(){function e(t){void 0===t&&(t={}),this.version=e.version,this.urls={},this.email=!0,this.phone=!0,this.hashtag=!1,this.mention=!1,this.newWindow=!0,this.stripPrefix={scheme:!0,www:!0},this.stripTrailingSlash=!0,this.decodePercentEncoding=!0,this.truncate={length:0,location:\"end\"},this.className=\"\",this.replaceFn=null,this.context=void 0,this.matchers=null,this.tagBuilder=null,this.urls=this.normalizeUrlsCfg(t.urls),this.email=\"boolean\"==typeof t.email?t.email:this.email,this.phone=\"boolean\"==typeof t.phone?t.phone:this.phone,this.hashtag=t.hashtag||this.hashtag,this.mention=t.mention||this.mention,this.newWindow=\"boolean\"==typeof t.newWindow?t.newWindow:this.newWindow,this.stripPrefix=this.normalizeStripPrefixCfg(t.stripPrefix),this.stripTrailingSlash=\"boolean\"==typeof t.stripTrailingSlash?t.stripTrailingSlash:this.stripTrailingSlash,this.decodePercentEncoding=\"boolean\"==typeof t.decodePercentEncoding?t.decodePercentEncoding:this.decodePercentEncoding;var r=this.mention;if(!1!==r&&\"twitter\"!==r&&\"instagram\"!==r&&\"soundcloud\"!==r)throw new Error(\"invalid `mention` cfg - see docs\");var n=this.hashtag;if(!1!==n&&\"twitter\"!==n&&\"facebook\"!==n&&\"instagram\"!==n)throw new Error(\"invalid `hashtag` cfg - see docs\");this.truncate=this.normalizeTruncateCfg(t.truncate),this.className=t.className||this.className,this.replaceFn=t.replaceFn||this.replaceFn,this.context=t.context||this}return e.link=function(t,r){return new e(r).link(t)},e.parse=function(t,r){return new e(r).parse(t)},e.prototype.normalizeUrlsCfg=function(e){return null==e&&(e=!0),\"boolean\"==typeof e?{schemeMatches:e,wwwMatches:e,tldMatches:e}:{schemeMatches:\"boolean\"!=typeof e.schemeMatches||e.schemeMatches,wwwMatches:\"boolean\"!=typeof e.wwwMatches||e.wwwMatches,tldMatches:\"boolean\"!=typeof e.tldMatches||e.tldMatches}},e.prototype.normalizeStripPrefixCfg=function(e){return null==e&&(e=!0),\"boolean\"==typeof e?{scheme:e,www:e}:{scheme:\"boolean\"!=typeof e.scheme||e.scheme,www:\"boolean\"!=typeof e.www||e.www}},e.prototype.normalizeTruncateCfg=function(e){return\"number\"==typeof e?{length:e,location:\"end\"}:function(e,t){for(var r in t)t.hasOwnProperty(r)&&void 0===e[r]&&(e[r]=t[r]);return e}(e||{},{length:Number.POSITIVE_INFINITY,location:\"end\"})},e.prototype.parse=function(e){var t=this,r=[\"a\",\"style\",\"script\"],n=0,o=[];return ht(e,{onOpenTag:function(e){r.indexOf(e)>=0&&n++},onText:function(e,r){if(0===n){var s=function(e,t){if(!t.global)throw new Error(\"`splitRegex` must have the 'g' flag set\");for(var r,n=[],o=0;r=t.exec(e);)n.push(e.substring(o,r.index)),n.push(r[0]),o=r.index+r[0].length;return n.push(e.substring(o)),n}(e,/(&nbsp;|&#160;|&lt;|&#60;|&gt;|&#62;|&quot;|&#34;|&#39;)/gi),i=r;s.forEach(function(e,r){if(r%2==0){var n=t.parseText(e,i);o.push.apply(o,n)}i+=e.length})}},onCloseTag:function(e){r.indexOf(e)>=0&&(n=Math.max(n-1,0))},onComment:function(e){},onDoctype:function(e){}}),o=this.compactMatches(o),o=this.removeUnwantedMatches(o)},e.prototype.compactMatches=function(e){e.sort(function(e,t){return e.getOffset()-t.getOffset()});for(var t=0;t<e.length-1;t++){var r=e[t],n=r.getOffset(),o=r.getMatchedText().length,s=n+o;if(t+1<e.length){if(e[t+1].getOffset()===n){var i=e[t+1].getMatchedText().length>o?t:t+1;e.splice(i,1);continue}e[t+1].getOffset()<s&&e.splice(t+1,1)}}return e},e.prototype.removeUnwantedMatches=function(e){return this.hashtag||qe(e,function(e){return\"hashtag\"===e.getType()}),this.email||qe(e,function(e){return\"email\"===e.getType()}),this.phone||qe(e,function(e){return\"phone\"===e.getType()}),this.mention||qe(e,function(e){return\"mention\"===e.getType()}),this.urls.schemeMatches||qe(e,function(e){return\"url\"===e.getType()&&\"scheme\"===e.getUrlMatchType()}),this.urls.wwwMatches||qe(e,function(e){return\"url\"===e.getType()&&\"www\"===e.getUrlMatchType()}),this.urls.tldMatches||qe(e,function(e){return\"url\"===e.getType()&&\"tld\"===e.getUrlMatchType()}),e},e.prototype.parseText=function(e,t){void 0===t&&(t=0),t=t||0;for(var r=this.getMatchers(),n=[],o=0,s=r.length;o<s;o++){for(var i=r[o].parseMatches(e),a=0,u=i.length;a<u;a++)i[a].setOffset(t+i[a].getOffset());n.push.apply(n,i)}return n},e.prototype.link=function(e){if(!e)return\"\";for(var t=this.parse(e),r=[],n=0,o=0,s=t.length;o<s;o++){var i=t[o];r.push(e.substring(n,i.getOffset())),r.push(this.createMatchReturnVal(i)),n=i.getOffset()+i.getMatchedText().length}return r.push(e.substring(n)),r.join(\"\")},e.prototype.createMatchReturnVal=function(e){var t;return this.replaceFn&&(t=this.replaceFn.call(this.context,e)),\"string\"==typeof t?t:!1===t?e.getMatchedText():t instanceof Me?t.toAnchorString():e.buildTag().toAnchorString()},e.prototype.getMatchers=function(){if(this.matchers)return this.matchers;var e=this.getTagBuilder(),t=[new lt({tagBuilder:e,serviceName:this.hashtag}),new st({tagBuilder:e}),new ct({tagBuilder:e}),new pt({tagBuilder:e,serviceName:this.mention}),new ut({tagBuilder:e,stripPrefix:this.stripPrefix,stripTrailingSlash:this.stripTrailingSlash,decodePercentEncoding:this.decodePercentEncoding})];return this.matchers=t},e.prototype.getTagBuilder=function(){var e=this.tagBuilder;return e||(e=this.tagBuilder=new Se({newWindow:this.newWindow,truncate:this.truncate,className:this.className})),e},e.version=\"3.11.0\",e.AnchorTagBuilder=Se,e.HtmlTag=Me,e.matcher={Email:st,Hashtag:lt,Matcher:Ue,Mention:pt,Phone:ct,Url:ut},e.match={Email:ze,Hashtag:Pe,Match:Te,Mention:je,Phone:Ie,Url:Oe},e}(),dt=/www|@|\\:\\/\\//;function mt(e){return/^<\\/a\\s*>/i.test(e)}function bt(){var e=[],t=new gt({stripPrefix:!1,url:!0,email:!0,replaceFn:function(t){switch(t.getType()){case\"url\":e.push({text:t.matchedText,url:t.getUrl()});break;case\"email\":e.push({text:t.matchedText,url:\"mailto:\"+t.getEmail().replace(/^mailto:/i,\"\")})}return!1}});return{links:e,autolinker:t}}function vt(e){var t,r,n,o,s,i,a,u,l,c,p,h,f,g,d=e.tokens,m=null;for(r=0,n=d.length;r<n;r++)if(\"inline\"===d[r].type)for(p=0,t=(o=d[r].children).length-1;t>=0;t--)if(\"link_close\"!==(s=o[t]).type){if(\"htmltag\"===s.type&&(g=s.content,/^<a[>\\s]/i.test(g)&&p>0&&p--,mt(s.content)&&p++),!(p>0)&&\"text\"===s.type&&dt.test(s.content)){if(m||(h=(m=bt()).links,f=m.autolinker),i=s.content,h.length=0,f.link(i),!h.length)continue;for(a=[],c=s.level,u=0;u<h.length;u++)e.inline.validateLink(h[u].url)&&((l=i.indexOf(h[u].text))&&a.push({type:\"text\",content:i.slice(0,l),level:c}),a.push({type:\"link_open\",href:h[u].url,title:\"\",level:c++}),a.push({type:\"text\",content:h[u].text,level:c}),a.push({type:\"link_close\",level:--c}),i=i.slice(l+h[u].text.length));i.length&&a.push({type:\"text\",content:i,level:c}),d[r].children=o=[].concat(o.slice(0,t),a,o.slice(t+1))}}else for(t--;o[t].level!==s.level&&\"link_open\"!==o[t].type;)t--}e.Remarkable=_e,e.linkify=function(e){e.core.ruler.push(\"linkify\",vt)},e.utils=A,Object.defineProperty(e,\"__esModule\",{value:!0})});\n",
            "type": "application/javascript",
            "title": "$:/plugins/tiddlywiki/markdown/remarkable.js",
            "module-type": "library"
        },
        "$:/plugins/tiddlywiki/markdown/images/new-markdown-button": {
            "title": "$:/plugins/tiddlywiki/markdown/images/new-markdown-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-new-markdown-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <rect x=\"80\" y=\"96\" width=\"48\" height=\"16\" rx=\"8\"></rect>\n        <rect x=\"96\" y=\"80\" width=\"16\" height=\"48\" rx=\"8\"></rect>\n        <path d=\"M3.23876972,39.5396716 C3.23876972,35.9653274 6.13586353,33.0691646 9.7141757,33.0691646 L98.1283744,33.0691646 C101.706101,33.0691646 104.60378,35.9646626 104.60378,39.5396716 L104.60378,84.8296213 C104.60378,88.4039654 101.706687,91.3001282 98.1283744,91.3001282 L9.7141757,91.3001282 C6.13644944,91.3001282 3.23876972,88.4046302 3.23876972,84.8296213 L3.23876972,39.5396716 L3.23876972,39.5396716 Z M-2.15298617,39.5396716 L-2.15298617,84.8296213 C-2.15298617,91.3833243 3.15957363,96.6918841 9.7141757,96.6918841 L98.1283744,96.6918841 C104.684083,96.6918841 109.995536,91.382138 109.995536,84.8296213 L109.995536,39.5396716 C109.995536,32.9859686 104.682977,27.6774087 98.1283744,27.6774087 L9.7141757,27.6774087 C3.15846686,27.6774087 -2.15298617,32.9871549 -2.15298617,39.5396716 Z M14.0222815,80.5166164 L14.0222815,43.8526764 L24.8057933,43.8526764 L35.589305,57.3320661 L46.3728168,43.8526764 L57.1563286,43.8526764 L57.1563286,80.5166164 L46.3728168,80.5166164 L46.3728168,59.4887685 L35.589305,72.9681582 L24.8057933,59.4887685 L24.8057933,80.5166164 L14.0222815,80.5166164 Z M81.4192301,80.5166164 L65.2439624,62.723822 L76.0274742,62.723822 L76.0274742,43.8526764 L86.810986,43.8526764 L86.810986,62.723822 L97.5944978,62.723822 L81.4192301,80.5166164 Z\"transform=\"translate(53.921275, 62.184646) rotate(-60.000000) translate(-53.921275, -62.184646) \"></path>\n    </g>\n</svg>"
        },
        "$:/plugins/tiddlywiki/markdown/new-markdown-button": {
            "title": "$:/plugins/tiddlywiki/markdown/new-markdown-button",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/plugins/tiddlywiki/markdown/images/new-markdown-button}} {{$:/language/Buttons/NewMarkdown/Caption}}",
            "description": "{{$:/language/Buttons/NewMarkdown/Hint}}",
            "list-after": "$:/core/ui/Buttons/new-tiddler",
            "text": "\\whitespace trim\n<$button tooltip={{$:/language/Buttons/NewMarkdown/Hint}} aria-label={{$:/language/Buttons/NewMarkdown/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-new-tiddler\" type=\"text/x-markdown\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/plugins/tiddlywiki/markdown/images/new-markdown-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewMarkdown/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/plugins/tiddlywiki/markdown/readme": {
            "title": "$:/plugins/tiddlywiki/markdown/readme",
            "text": "This is a TiddlyWiki plugin for parsing Markdown text, using the [[Remarkable|https://github.com/jonschlinkert/remarkable]] library.\n\nIt is completely self-contained, and doesn't need an Internet connection in order to work. It works both in the browser and under Node.js.\n\n[[Source code|https://github.com/Jermolene/TiddlyWiki5/blob/master/plugins/tiddlywiki/markdown]]\n"
        },
        "$:/plugins/tiddlywiki/markdown/usage": {
            "title": "$:/plugins/tiddlywiki/markdown/usage",
            "text": "! Plugin Configuration\n\n|!Config |!Default |!Description |\n| <code>[[breaks|$:/config/markdown/breaks]]</code>| ``false``|Remarkable library config: Convert '\\n' in paragraphs into ``<br>`` |\n| <code>[[linkify|$:/config/markdown/linkify]]</code>| ``false``|Remarkable library config: Autoconvert URL-like text to links |\n| <code>[[linkNewWindow|$:/config/markdown/linkNewWindow]]</code>| ``true``|For external links, should clicking on them open a new window/tab automatically? |\n| <code>[[quotes|$:/config/markdown/quotes]]</code>| ``“”‘’``|Remarkable library config: Double + single quotes replacement pairs, when ``typographer`` enabled |\n| <code>[[renderWikiText|$:/config/markdown/renderWikiText]]</code>| ``true``|After Markdown is parsed, should any text elements be handed off to the ~WikiText parser for further processing? |\n| <code>[[renderWikiTextPragma|$:/config/markdown/renderWikiTextPragma]]</code>| ``\\rules only html image macrocallinline syslink transcludeinline wikilink filteredtranscludeblock macrocallblock transcludeblock``|When handing off to the ~WikiText parser, what pragma rules should it follow? |\n| <code>[[typographer|$:/config/markdown/typographer]]</code>| ``false``|Remarkable library config: Enable some language-neutral replacement + quotes beautification |\n\n! Creating ~WikiLinks\n\nCreate wiki links with the usual Markdown link syntax targeting `#` and the target tiddler title:\n\n```\n[link text](#TiddlerTitle)\n```\n\nIf the target tiddler has a space in its name, that name must be URL-escaped to be detected as a URL:\n\n```\n[link text](#Test%20Tiddler)\n```\n\n! Images\n\nMarkdown image syntax can be used to reference images by tiddler title or an external URI. For example:\n\n```\n![alt text](/path/to/img.jpg \"Title\")\n\n![alt text](Motovun Jack.jpg \"Title\")\n```\n"
        },
        "$:/plugins/tiddlywiki/markdown/wrapper.js": {
            "title": "$:/plugins/tiddlywiki/markdown/wrapper.js",
            "text": "/*\\\ntitle: $:/plugins/tiddlywiki/markdown/wrapper.js\ntype: application/javascript\nmodule-type: parser\n\nWraps up the remarkable parser for use as a Parser in TiddlyWiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar r = require(\"$:/plugins/tiddlywiki/markdown/remarkable.js\");\n\nvar Remarkable = r.Remarkable,\n\tlinkify = r.linkify,\n\tutils = r.utils;\n\n///// Set up configuration options /////\nfunction parseAsBoolean(tiddlerName) {\n\treturn $tw.wiki.getTiddlerText(tiddlerName).toLowerCase() === \"true\";\n}\nvar pluginOpts = {\n\tlinkNewWindow: parseAsBoolean(\"$:/config/markdown/linkNewWindow\"),\n\trenderWikiText: parseAsBoolean(\"$:/config/markdown/renderWikiText\"),\n\trenderWikiTextPragma: $tw.wiki.getTiddlerText(\"$:/config/markdown/renderWikiTextPragma\").trim()\n};\nvar remarkableOpts = {\n\tbreaks: parseAsBoolean(\"$:/config/markdown/breaks\"),\n\tquotes: $tw.wiki.getTiddlerText(\"$:/config/markdown/quotes\"),\n\ttypographer: parseAsBoolean(\"$:/config/markdown/typographer\")\n};\nvar accumulatingTypes = {\n\t\"text\": true,\n\t\"softbreak\": true\n};\n\nvar md = new Remarkable(remarkableOpts);\n\nif (parseAsBoolean(\"$:/config/markdown/linkify\")) {\n\tmd = md.use(linkify);\n}\n\nfunction findTagWithType(nodes, startPoint, type, level) {\n\tfor (var i = startPoint; i < nodes.length; i++) {\n\t\tif (nodes[i].type === type && nodes[i].level === level) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn false;\n}\n\n/**\n * Remarkable creates nodes that look like:\n * [\n *   { type: 'paragraph_open'},\n *   { type: 'inline', content: 'Hello World', children:[{type: 'text', content: 'Hello World'}]},\n *   { type: 'paragraph_close'}\n * ]\n *\n * But TiddlyWiki wants the Parser (https://tiddlywiki.com/dev/static/Parser.html) to emit nodes like:\n *\n * [\n *   { type: 'element', tag: 'p', children: [{type: 'text', text: 'Hello World'}]}\n * ]\n */\nfunction convertNodes(remarkableTree, isStartOfInline) {\n\tlet out = [];\n\tvar accumulatedText = '';\n\tfunction withChildren(currentIndex, currentLevel, closingType, nodes, callback) {\n\t\tvar j = findTagWithType(nodes, currentIndex + 1, closingType, currentLevel);\n\t\tif (j === false) {\n\t\t\tconsole.error(\"Failed to find a \" + closingType + \" node after position \" + currentIndex);\n\t\t\tconsole.log(nodes);\n\t\t\treturn currentIndex + 1;\n\t\t}\n\t\tlet children = convertNodes(nodes.slice(currentIndex + 1, j));\n\t\tcallback(children);\n\t\treturn j;\n\t}\n\tfunction wrappedElement(elementTag, currentIndex, currentLevel, closingType, nodes) {\n\t\treturn withChildren(currentIndex, currentLevel, closingType, nodes, function(children) {\n\t\t\tout.push({\n\t\t\t\ttype: \"element\",\n\t\t\t\ttag: elementTag,\n\t\t\t\tchildren: children\n\t\t\t});\n\t\t});\n\t}\n\n\tfor (var i = 0; i < remarkableTree.length; i++) {\n\t\tvar currentNode = remarkableTree[i];\n\t\tswitch (currentNode.type) {\n\t\tcase \"paragraph_open\":\n\t\t\ti = wrappedElement(\"p\", i, currentNode.level, \"paragraph_close\", remarkableTree);\n\t\t\tbreak;\n\n\t\tcase \"heading_open\":\n\t\t\ti = wrappedElement(\"h\" + currentNode.hLevel, i, currentNode.level, \"heading_close\", remarkableTree);\n\t\t\tbreak;\n\n\t\tcase \"bullet_list_open\":\n\t\t\ti = wrappedElement(\"ul\", i, currentNode.level, \"bullet_list_close\", remarkableTree);\n\t\t\tbreak;\n\n\t\tcase \"ordered_list_open\":\n\t\t\ti = wrappedElement('ol', i, currentNode.level,'ordered_list_close', remarkableTree);\n\t\t\tbreak;\n\n\t\tcase \"list_item_open\":\n\t\t\ti = wrappedElement(\"li\", i, currentNode.level, \"list_item_close\", remarkableTree);\n\t\t\tbreak;\n\n\t\tcase \"link_open\":\n\t\t\ti = withChildren(i, currentNode.level, \"link_close\", remarkableTree, function(children) {\n\t\t\t\tif (currentNode.href[0] !== \"#\") {\n\t\t\t\t\t// External link\n\t\t\t\t\tvar attributes = {\n\t\t\t\t\t\tclass: { type: \"string\", value: \"tc-tiddlylink-external\" },\n\t\t\t\t\t\thref: { type: \"string\", value: currentNode.href },\n\t\t\t\t\t\trel: { type: \"string\", value: \"noopener noreferrer\" }\n\t\t\t\t\t};\n\t\t\t\t\tif (pluginOpts.linkNewWindow) {\n\t\t\t\t\t\tattributes.target = { type: \"string\", value: \"_blank\" };\n\t\t\t\t\t}\n\t\t\t\t\tout.push({\n\t\t\t\t\t\ttype: \"element\",\n\t\t\t\t\t\ttag: \"a\",\n\t\t\t\t\t\tattributes: attributes,\n\t\t\t\t\t\tchildren: children\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\t// Internal link\n\t\t\t\t\tout.push({\n\t\t\t\t\t\ttype: \"link\",\n\t\t\t\t\t\tattributes: {\n\t\t\t\t\t\t\tto: { type: \"string\", value: decodeURI(currentNode.href.substr(1)) }\n\t\t\t\t\t\t},\n\t\t\t\t\t\tchildren: children\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t\tbreak;\n\n\t\tcase \"code\":\n\t\t\tout.push({\n\t\t\t\ttype: \"element\",\n\t\t\t\ttag: currentNode.block ? \"pre\" : \"code\",\n\t\t\t\tchildren: [{ type: \"text\", text: currentNode.content }]\n\t\t\t});\n\t\t\tbreak;\n\n\t\tcase \"fence\":\n\t\t\tout.push({\n\t\t\t\ttype: \"codeblock\",\n\t\t\t\tattributes: {\n\t\t\t\t\tlanguage: { type: \"string\", value: currentNode.params },\n\t\t\t\t\tcode: { type: \"string\", value: currentNode.content }\n\t\t\t\t}\n\t\t\t});\n\t\t\tbreak;\n\n\t\tcase \"image\":\n\t\t\tout.push({\n\t\t\t\ttype: \"image\",\n\t\t\t\tattributes: {\n\t\t\t\t\ttooltip: { type: \"string\", value: currentNode.alt },\n\t\t\t\t\tsource: { type: \"string\", value: decodeURIComponent(currentNode.src) }\n\t\t\t\t}\n\t\t\t});\n\t\t\tbreak;\n\n\t\tcase \"softbreak\":\n\t\t\tif (remarkableOpts.breaks) {\n\t\t\t\tout.push({\n\t\t\t\t\ttype: \"element\",\n\t\t\t\t\ttag: \"br\",\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\taccumulatedText = accumulatedText + '\\n';\n\t\t\t}\n\t\t\tbreak;\n\n\t\tcase \"hardbreak\":\n\t\t\tout.push({\n\t\t\t\ttype: \"element\",\n\t\t\t\ttag: \"br\",\n\t\t\t});\n\t\t\tbreak;\n\n\t\tcase \"th_open\":\n\t\tcase \"td_open\":\n\t\t\tvar elementTag = currentNode.type.slice(0, 2);\n\t\t\ti = withChildren(i, currentNode.level, elementTag + \"_close\", remarkableTree, function(children) {\n\t\t\t\tvar attributes = {};\n\t\t\t\tif (currentNode.align) {\n\t\t\t\t\tattributes.style = { type: \"string\", value: \"text-align:\" + currentNode.align };\n\t\t\t\t}\n\t\t\t\tout.push({\n\t\t\t\t\ttype: \"element\",\n\t\t\t\t\ttag: elementTag,\n\t\t\t\t\tattributes: attributes,\n\t\t\t\t\tchildren: children\n\t\t\t\t});\n\t\t\t});\n\t\t\tbreak;\n\n\t\tcase \"hr\":\n\t\t\tout.push({\n\t\t\t\ttype: 'element',\n\t\t\t\ttag: 'hr',\n\t\t\t});\n\t\t\tbreak;\n\n\t\tcase \"inline\":\n\t\t\tout = out.concat(convertNodes(currentNode.children, true));\n\t\t\tbreak;\n\n\t\tcase \"text\":\n\t\t\t// We need to merge this text block with the upcoming text block and parse it all together.\n\t\t\taccumulatedText = accumulatedText + currentNode.content;\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tif (currentNode.type.substr(currentNode.type.length - 5) === \"_open\") {\n\t\t\t\tvar tagName = currentNode.type.substr(0, currentNode.type.length - 5);\n\t\t\t\ti = wrappedElement(tagName, i, currentNode.level, tagName + \"_close\", remarkableTree);\n\t\t\t} else {\n\t\t\t\tconsole.error(\"Unknown node type: \" + currentNode.type, currentNode);\n\t\t\t\tout.push({\n\t\t\t\t\ttype: \"text\",\n\t\t\t\t\ttext: currentNode.content\n\t\t\t\t});\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t// We test to see if we process the block now, or if there's\n\t\t// more to accumulate first.\n\t\tif (accumulatedText\n\t\t\t&& (\n\t\t\t\tremarkableOpts.breaks ||\n\t\t\t\t(i+1) >= remarkableTree.length ||\n\t\t\t\t!accumulatingTypes[remarkableTree[i+1].type]\n\t\t\t)\n\t\t) {\n\t\t\t// The Markdown compiler thinks this is just text.\n\t\t\t// Hand off to the WikiText parser to see if there's more to render\n\t\t\t// But only if it's configured to, and we have more than whitespace\n\t\t\tif (!pluginOpts.renderWikiText || accumulatedText.match(/^\\s*$/)) {\n\t\t\t\tout.push({\n\t\t\t\t\ttype: \"text\",\n\t\t\t\t\ttext: accumulatedText\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// If we're inside a block element (div, p, td, h1), and this is the first child in the tree,\n\t\t\t\t// handle as a block-level parse. Otherwise not.\n\t\t\t\tvar parseAsInline = !(isStartOfInline && i === 0);\n\t\t\t\tvar textToParse = accumulatedText;\n\t\t\t\tif (pluginOpts.renderWikiTextPragma !== \"\") {\n\t\t\t\t\ttextToParse = pluginOpts.renderWikiTextPragma + \"\\n\" + textToParse;\n\t\t\t\t}\n\t\t\t\tvar wikiParser = $tw.wiki.parseText(\"text/vnd.tiddlywiki\", textToParse, {\n\t\t\t\t\tparseAsInline: parseAsInline\n\t\t\t\t});\n\t\t\t\tvar rs = wikiParser.tree;\n\n\t\t\t\t// If we parsed as a block, but the root element the WikiText parser gave is a paragraph,\n\t\t\t\t// we should discard the paragraph, since the way Remarkable nests its nodes, this \"inline\"\n\t\t\t\t// node is always inside something else that's a block-level element\n\t\t\t\tif (!parseAsInline\n\t\t\t\t\t&& rs.length === 1\n\t\t\t\t\t&& rs[0].type === \"element\"\n\t\t\t\t\t&& rs[0].tag === \"p\"\n\t\t\t\t) {\n\t\t\t\t\trs = rs[0].children;\n\t\t\t\t}\n\n\t\t\t\t// If the original text element started with a space, add it back in\n\t\t\t\tif (rs.length > 0\n\t\t\t\t\t&& rs[0].type === \"text\"\n\t\t\t\t\t&& (accumulatedText[0] === \" \" || accumulatedText[0] === \"\\n\")\n\t\t\t\t) {\n\t\t\t\t\trs[0].text = \" \" + rs[0].text;\n\t\t\t\t}\n\t\t\t\tout = out.concat(rs);\n\t\t\t}\n\t\t\taccumulatedText = '';\n\t\t}\n\t}\n\treturn out;\n}\n\nvar MarkdownParser = function(type, text, options) {\n\tvar tree = md.parse(text, {});\n\t//console.debug(tree);\n\ttree = convertNodes(tree);\n\t//console.debug(tree);\n\n\tthis.tree = tree;\n};\n\nexports[\"text/x-markdown\"] = MarkdownParser;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "parser"
        }
    }
}
{
    "tiddlers": {
        "$:/DefaultTiddlers": {
            "title": "$:/DefaultTiddlers",
            "text": "[list[$:/StoryList]]"
        },
        "$:/SiteSubtitle": {
            "title": "$:/SiteSubtitle",
            "text": "tools to share tiddlers via URLs"
        },
        "$:/SiteTitle": {
            "title": "$:/SiteTitle",
            "text": "Share"
        },
        "$:/plugins/tiddlywiki/share/above-story": {
            "title": "$:/plugins/tiddlywiki/share/above-story",
            "tags": "$:/tags/AboveStory",
            "text": "<$transclude tiddler=\"$:/plugins/tiddlywiki/share/wizard\" mode=\"block\"/>\n"
        },
        "$:/config/plugins/share/base-url": {
            "title": "$:/config/plugins/share/base-url",
            "text": ""
        },
        "$:/config/plugins/share/exclusions": {
            "title": "$:/config/plugins/share/exclusions",
            "text": "$:/library/sjcl.js $:/boot/bootprefix.js $:/boot/boot.js $:/boot/boot.css $:/core $:/isEncrypted $:/plugins/tiddlywiki/share $:/status/RequireReloadDueToPluginChange $:/temp/info-plugin $:/themes/tiddlywiki/snowwhite $:/themes/tiddlywiki/vanilla $:/HistoryList [prefix[$:/temp/]] [[$:/build]]"
        },
        "$:/config/plugins/share/filter": {
            "title": "$:/config/plugins/share/filter",
            "text": "[all[tiddlers]] -[subfilter{$:/config/plugins/share/exclusions}]"
        },
        "$:/core/ui/PageTemplate/pluginreloadwarning": {
            "title": "$:/core/ui/PageTemplate/pluginreloadwarning",
            "text": "<!-- Disable plugin reload warnings -->\n"
        },
        "$:/plugins/tiddlywiki/share/rawmarkup.js": {
            "title": "$:/plugins/tiddlywiki/share/rawmarkup.js",
            "text": "/*\\\ntitle: $:/plugins/tiddlywiki/share/rawmarkup.js\ntype: application/javascript\nmodule-type: library\n\nRead tiddlers from the browser location hash\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Get the hash\nvar rawHash = document.location.hash.substring(1);\nif(rawHash.charAt(0) === \"#\") {\n\tvar hash;\n\ttry{\n\t\thash = decodeURIComponent(rawHash.substring(1));\n\t} catch(ex) {\n\t\tconsole.log(\"Share plugin: Error decoding location hash\",ex);\n\t}\n\t// Try to parse the hash as JSON\n\tif(hash) {\n\t\tvar tiddlers;\n\t\ttry {\n\t\t\ttiddlers= JSON.parse(hash);\n\t\t} catch(ex) {\n\t\t\tconsole.log(\"Share plugin: Error parsing JSON from location hash\",ex);\n\t\t}\n\t\tif(tiddlers) {\n\t\t\t// Need to initialise these because we run before bootprefix.js and boot.js\n\t\t\twindow.$tw = window.$tw || {};\n\t\t\t$tw.boot = $tw.boot || {};\n\t\t\t$tw.preloadTiddlers = $tw.preloadTiddlers || [];\n\t\t\t// Prevent TiddlyWiki from booting\n\t\t\t$tw.boot.suppressBoot = true;\n\t\t\t// Load our styles\n\t\t\tvar stylesWrapper = document.createElement(\"style\");\n\t\t\tstylesWrapper.innerHTML = tiddlywikiSharePluginStartupWarningCss;\n\t\t\tdocument.documentElement.appendChild(stylesWrapper);\n\t\t\t// Display the warning banner\n\t\t\tvar warningWrapper = document.createElement(\"div\");\n\t\t\twarningWrapper.innerHTML = tiddlywikiSharePluginStartupWarningHtml;\n\t\t\tdocument.documentElement.appendChild(warningWrapper);\n\t\t\t// Add our event handlers\n\t\t\tdocument.getElementById(\"startup-warning-proceed\").addEventListener(\"click\",actionProceed,false);\n\t\t\tdocument.getElementById(\"startup-warning-cancel\").addEventListener(\"click\",actionCancel,false);\n\t\t\t// Sort the incoming tiddlers by title\n\t\t\ttiddlers = tiddlers.sort(function(a,b) {\n\t\t\t\tif(a.title < b.title) {\n\t\t\t\t\treturn -1;\n\t\t\t\t} else if(a.title > b.title) {\n\t\t\t\t\treturn +1;\n\t\t\t\t} else {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t});\n\t\t\t// Load the tiddler preview\t\t\t\t\t\t\n\t\t\tvar previewWrapper = document.getElementById(\"startup-warning-preview\");\n\t\t\tfor(var index=0; index < tiddlers.length; index++) {\n\t\t\t\tvar tiddler = tiddlers[index],\n\t\t\t\t\ttiddlerWrapper = document.createElement(\"li\"),\n\t\t\t\t\ttitleTextWrapper = document.createElement(\"span\"),\n\t\t\t\t\ttitleText = document.createTextNode(tiddler.title),\n\t\t\t\t\tfieldsTable = document.createElement(\"table\"),\n\t\t\t\t\tfieldsTableBody = document.createElement(\"tbody\");\n\t\t\t\ttitleTextWrapper.appendChild(titleText);\n\t\t\t\ttitleTextWrapper.className = \"tiddler-title\";\n\t\t\t\ttiddlerWrapper.appendChild(titleTextWrapper);\n\t\t\t\tfieldsTable.appendChild(fieldsTableBody);\n\t\t\t\tvar fields = Object.keys(tiddler).sort();\n\t\t\t\tfor(var fieldIndex = 0; fieldIndex < fields.length; fieldIndex++) {\n\t\t\t\t\tvar fieldName = fields[fieldIndex],\n\t\t\t\t\t\tfieldValue = tiddler[fieldName];\n\t\t\t\t\tif(fieldName !== \"title\") {\n\t\t\t\t\t\tvar fieldRow = document.createElement(\"tr\"),\n\t\t\t\t\t\t\tfieldRowHeader = document.createElement(\"th\"),\n\t\t\t\t\t\t\tfieldRowValue = document.createElement(\"td\");\n\t\t\t\t\t\tfieldRowHeader.appendChild(document.createTextNode(fieldName));\n\t\t\t\t\t\tfieldRowValue.appendChild(document.createTextNode(fieldValue));\n\t\t\t\t\t\tfieldRow.appendChild(fieldRowHeader);\n\t\t\t\t\t\tfieldRow.appendChild(fieldRowValue);\n\t\t\t\t\t\tfieldsTableBody.appendChild(fieldRow);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\ttiddlerWrapper.appendChild(fieldsTable);\n\t\t\t\tpreviewWrapper.appendChild(tiddlerWrapper);\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction actionProceed() {\n\t// Remove the banner, load our tiddlers, and boot TiddlyWiki\n\tremoveWarningBanner();\n\t$tw.preloadTiddlers = $tw.preloadTiddlers.concat(tiddlers);\n\t$tw.boot.boot();\n}\n\nfunction actionCancel() {\n\t// Remove the banner, clear the location hash, and boot TiddlyWiki\n\tremoveWarningBanner();\n\tdocument.location.hash = \"#\";\n\t$tw.boot.boot();\n}\n\nfunction removeWarningBanner() {\n\twarningWrapper.parentNode.removeChild(warningWrapper);\n\tstylesWrapper.parentNode.removeChild(stylesWrapper);\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/tiddlywiki/share/rawmarkup": {
            "title": "$:/plugins/tiddlywiki/share/rawmarkup",
            "tags": "$:/tags/RawMarkupWikified",
            "text": "`<script>`\n`var tiddlywikiSharePluginStartupWarningHtml = \"`<$view tiddler=\"$:/plugins/tiddlywiki/share/startup-warning.html\" format=\"jsencoded\"/>`\";`\n`var tiddlywikiSharePluginStartupWarningCss = \"`<$view tiddler=\"$:/plugins/tiddlywiki/share/startup-warning.css\" format=\"jsencoded\"/>`\";`\n{{$:/plugins/tiddlywiki/share/rawmarkup.js}}\n`</script>`\n"
        },
        "$:/plugins/tiddlywiki/share/readme": {
            "title": "$:/plugins/tiddlywiki/share/readme",
            "text": "<div class=\"tc-message-box\">Do not install this plugin unless you understand exactly what it does</div>\n\nThis experimental plugin provides tools to share tiddlers via URLs, comprising:\n\n* The ability to load a group of tiddlers from the browser location hash at startup\n* Wizard and templates to create URLs from group of tiddlers\n\n"
        },
        "$:/plugins/tiddlywiki/share/settings": {
            "title": "$:/plugins/tiddlywiki/share/settings",
            "text": "!! Base sharing URL\n\n//Defaults to the current location//\n\n<$edit-text tiddler=\"$:/config/plugins/share/base-url\" tag=\"input\" class=\"tc-sharing-wizard-editor\"/>\n"
        },
        "$:/plugins/tiddlywiki/share/startup-warning.css": {
            "title": "$:/plugins/tiddlywiki/share/startup-warning.css",
            "text": "\n.startup-warning-wrapper {\n\tfont-family: sans-serif;\n\tline-height: 1.4;\n\twidth: 50%;\n\tmargin: 1em auto 0 auto;\n\tpadding: 0 1em;\n\tborder: 6px solid transparent;\n\tborder-radius: 8px;\n\tbackground: linear-gradient(white, white) padding-box, repeating-linear-gradient(-45deg, red 0, red 25%, transparent 0, transparent 50%) 0 / .6em .6em;\n\tanimation: marching-ants 20s linear infinite;\n}\n\n@media (max-width: 600px) {\n\t.startup-warning-wrapper {\n\t\twidth: 85%;\n\t}\n}\n\n#startup-warning-preview {\n    list-style-type: none;\n    padding-left: 0;\n}\n\n#startup-warning-preview .tiddler-title {\n    font-weight: bold;\n    font-size: 1.2em;\n}\n\n#startup-warning-preview table {\n\tmargin-left: 1em;\n}\n\n#startup-warning-preview th {\n\tvertical-align: top;\n\tfont-weight: normal;\n}\n\n#startup-warning-preview td {\n\tfont-family: monospace;\n    white-space: pre-wrap;\n    background: #f8f8f8;\n}\n\n.startup-warning-wrapper button {\n    padding: 0.3em;\n    border-radius: 4px;\n    font-size: 1.5em;\n}\n\n#startup-warning-cancel {\n\tbackground: #DB2828;\n\tcolor: #fff;\n}\n\n#startup-warning-cancel:hover {\n\tbackground: #E75C60;\n\tcolor: #fff;\n}\n\n#startup-warning-cancel:active {\n\tbackground: #ec8d8d;\n\tcolor: #fff;\n}\n\n#startup-warning-proceed {\n\tbackground: #24BA4C;\n\tcolor: #fff;\n}\n\n#startup-warning-proceed:hover {\n\tbackground: #59e27e;\n\tcolor: #fff;\n}\n\n#startup-warning-proceed:active {\n\tbackground: #ABF5BD;\n\tcolor: #fff;\n}\n\n.startup-warning-wrapper h1,\n.startup-warning-wrapper h2 {\n\tfont-weight: bold;\n}\n \n@keyframes marching-ants { to { background-position: 100% 100% } }\n\n",
            "type": "text/css"
        },
        "$:/plugins/tiddlywiki/share/startup-warning.html": {
            "title": "$:/plugins/tiddlywiki/share/startup-warning.html",
            "text": "<div class=\"startup-warning-wrapper\">\n<h1>\nWarning: This site is designed to share untrusted content\n</h1>\n<h2>\nPlease do not proceed unless you are certain you understand the warnings below\n</h2>\n<p>\nThis is a special site that allows users to share content for <a href=\"https://tiddlywiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">TiddlyWiki</a> without needing conventional hosting. Instead, the content is encoded in the URL used to access the site. This means that there are no controls or protections on the content that is shared, and as such it may contain malicious links or any kind of content.\n</p>\n<p>\nViewing links to this site in the browser is generally safe because web pages are designed to run in a sandbox that prevents them from accessing or harming your data. However, please exercise caution before downloading content to your own computer, or importing content into your own TiddlyWiki.\n</p>\n\n<details>\n<summary>\nClick here to see the tiddlers that are being shared\n</summary>\n<ul id=\"startup-warning-preview\">\n</ul>\n</details>\n\n<p>\n<strong><em>Only continue if you understand the risks</em></strong>\n</p>\n\n<p>\n<button id=\"startup-warning-proceed\">\nProceed\n</button>\n<button id=\"startup-warning-cancel\">\nCancel\n</button>\n</p>\n\n<h2>\nTechnical details\n</h2>\n\n<p>\nThis web page is a <a href=\"https://tiddlywiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">TiddlyWiki</a> loaded with the <a href=\"https://github.com/Jermolene/TiddlyWiki5/tree/master/plugins/tiddlywiki/share\" target=\"_blank\" rel=\"noopener noreferrer\">Share plugin</a>. It has the special capability that at startup it can load raw tiddlers from a block of JSON encoded into the location hash part of the URL (ie the part after the # character).\n</p>\n<p>\nThis is useful because it enables people to share working examples of TiddlyWikis without needing to arrange special hosting. The only restriction is that browsers and other Internet infrastructure frequently limit the length of URLs to a few tens of kilobytes.\n</p>\n\n</div>\n",
            "type": "text/html"
        },
        "$:/plugins/tiddlywiki/share/styles": {
            "title": "$:/plugins/tiddlywiki/share/styles",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\n.tc-sharing-wizard-wrapper {\n\twidth: 100%;\n\tpadding: 1em 1em;\n\tmargin-bottom: 1em;\n    border-radius: 4px;\n    background: <<colour background>>;\n\t<<box-shadow \"inset 0px 2px 3px 2px rgba(0,0,0,0.4)\">>\n}\n\ninput.tc-sharing-wizard-editor {\n\twidth: 100%;\n}"
        },
        "$:/plugins/tiddlywiki/share/wizard": {
            "title": "$:/plugins/tiddlywiki/share/wizard",
            "text": "\\define generate-json()\n<$macrocall $name=\"jsontiddlers\" filter=<<share-filter>> spaces=\"\" $output=\"text/vnd.tiddlywiki\"/>\n\\end\n\n\\define inner-share-actions()\n<$wikify name=\"json\" text=<<generate-json>>>\n<$action-sendmessage $message=\"tm-copy-to-clipboard\" $param={{{ [<json>encodeuricomponent[]addprefix[##]addprefix<base-url>] }}}/>\n</$wikify>\n\\end\n\n\\define share-actions()\n<$set name=\"base-url\" value={{$:/config/plugins/share/base-url}} emptyValue={{$:/info/url/full}}>\n<$set name=\"share-filter\" value={{$:/config/plugins/share/filter}}>\n<<inner-share-actions>>\n</$set>\n</$set>\n\\end\n\n<div class=\"tc-sharing-wizard-wrapper\">\n\n! Welcome to the sharing edition of ~TiddlyWiki\n\nThis edition of ~TiddlyWiki allows users to create links to wikis with the special capability of containing embedded tiddlers that are loaded into the target wiki at startup. Most browsers allow tens of kilobytes of data to be loaded in this way, making it possible to conveniently share groups of tiddlers as a fully functional wiki. See the [[readme|$:/plugins/tiddlywiki/share]] for more details.\n\n!! 1 - Import or create the tiddlers that are to be shared\n\nThe first step to create a sharing URL is to import or otherwise create the tiddlers that are to be shared.\n\n!! 2 - Check that the sharing filter is correct\n\nThe tiddlers that are included in the sharing URL are determined by the combination of two filters.\n\nThe sharing filter specifies the tiddlers to be shared:\n\n<$edit-text tiddler=\"$:/config/plugins/share/filter\" tag=\"input\" class=\"tc-sharing-wizard-editor\"/>\n\nThe exclusion subfilter is used to exclude the system tiddlers comprising this wiki:\n\n<$edit-text tiddler=\"$:/config/plugins/share/exclusions\" tag=\"input\" class=\"tc-sharing-wizard-editor\"/>\n\n!! 3 - Review the tiddlers to be shared\n\nTiddlers to be shared (<$count filter={{$:/config/plugins/share/filter}}/>):\n\n<ul>\n<$list filter={{$:/config/plugins/share/filter}}>\n<li>\n<$link>\n<$view field=\"title\"/>\n</$link>\n</li>\n</$list>\n</ul>\n\n!! 3 - Generate the sharing link\n\n<$button>\n<<share-actions>>\nGenerate sharing link\n</$button> (the link will be copied to the clipboard)\n\n!! 5 - Export the shared tiddlers\n\n<$button>\n<$action-sendmessage $message=\"tm-download-file\" $param=\"$:/core/templates/exporters/JsonFile\" exportFilter={{$:/config/plugins/share/filter}} filename=\"tiddlers.json\"/>\nExport as JSON\n</$button>\n\n</div>"
        }
    }
}
{
    "tiddlers": {
        "$:/core/macros/tabs": {
            "title": "$:/core/macros/tabs",
            "tags": "$:/tags/Macro",
            "text": "\\define tabs(tabsList,default,state:\"$:/state/tab\",class,template,buttonTemplate,retain,actions,explicitState)\n<$set name=\"qualifiedState\" value=<<qualify \"$state$\">>>\n<$set name=\"tabsState\" filter=\"[<__explicitState__>minlength[1]] ~[<qualifiedState>]\">\n<div class=\"tc-tab-set $class$\">\n<div class=\"tc-tab-buttons $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\" storyview=\"pop\"><$set name=\"save-currentTiddler\" value=<<currentTiddler>>><$tiddler tiddler=<<currentTab>>><$button set=<<tabsState>> setTo=<<currentTab>> default=\"$default$\" selectedClass=\"tc-tab-selected\" tooltip={{!!tooltip}}>\n<$tiddler tiddler=<<save-currentTiddler>>>\n<$set name=\"tv-wikilinks\" value=\"no\">\n<$transclude tiddler=\"$buttonTemplate$\" mode=\"inline\">\n<$transclude tiddler=<<currentTab>> field=\"caption\">\n<$macrocall $name=\"currentTab\" $type=\"text/plain\" $output=\"text/plain\"/>\n</$transclude>\n</$transclude>\n</$set></$tiddler>$actions$</$button><span class=\"wltc-link-to-tab\"><$link overrideClass=\"\" to=<<currentTiddler>> >{{$:/core/images/link}}</$link></span></$tiddler></$set></$list>\n</div>\n<div class=\"tc-tab-divider $class$\"/>\n<div class=\"tc-tab-content $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\">\n\n<$reveal type=\"match\" state=<<tabsState>> text=<<currentTab>> default=\"$default$\" retain=\"\"\"$retain$\"\"\">\n\n<$transclude tiddler=\"$template$\" mode=\"block\">\n\n<$transclude tiddler=<<currentTab>> mode=\"block\"/>\n\n</$transclude>\n\n</$reveal>\n\n</$list>\n</div>\n</div>\n</$set>\n</$set>\n\\end\n"
        },
        "$:/core/ui/ControlPanel/Settings/link-to-tabs": {
            "title": "$:/core/ui/ControlPanel/Settings/link-to-tabs",
            "caption": "Link-to-Tabs plugin",
            "created": "20190712133607244",
            "modified": "20190714104631250",
            "tags": "$:/tags/ControlPanel/Settings",
            "type": "text/vnd.tiddlywiki",
            "text": "<$checkbox tiddler=\"$:/plugins/wikilabs/link-to-tabs/config\" field=\"show-all-links\" checked=\"inline-block\" unchecked=\"none\" default=\"none\"> Show internal tab link for ''all tabs''</$checkbox>\n\n<$checkbox tiddler=\"$:/plugins/wikilabs/link-to-tabs/config\" field=\"show-single-link\" checked=\"inline-block\" unchecked=\"none\" default=\"inline-block\"> Show internal tab link for ''selected tabs''</$checkbox>\n\n<$checkbox tiddler=\"$:/plugins/wikilabs/link-to-tabs/config\" field=\"initial-opacity\" checked=\"0\" unchecked=\"0.7\" default=\"0.7\"> Tab links are initially hidden and need mouse hover to become visible.</$checkbox> The transition time in seconds is: <$edit-text tiddler=\"$:/plugins/wikilabs/link-to-tabs/config\" field=\"transition\" default=\"0.3\"/>\n\n<$button message=\"tm-delete-tiddler\" param=\"$:/plugins/wikilabs/link-to-tabs/config\">\nReset to Default!\n</$button>"
        },
        "$:/plugins/wikilabs/link-to-tabs/config": {
            "title": "$:/plugins/wikilabs/link-to-tabs/config",
            "created": "20190712133008077",
            "initial-opacity": "0.7",
            "modified": "20190714104541701",
            "show-all-links": "none",
            "show-single-link": "inline-block",
            "transition": "0.3",
            "type": "text/vnd.tiddlywiki",
            "text": "This tiddler is used to configure the \"Link-to-tabs\" plugin behaviour. \n\nThere are 4 fields, which are used by [[$:/plugins/wikilabs/link-to-tabs/styles]] enable and disable the internal links. \n\n* show-all-links: {{!!show-all-links}}\n* show-single-link: {{!!show-single-link}}\n* initial-opacity: {{!!initial-opacity}}\n* transition time in seconds: {{!!transition}}\n"
        },
        "$:/plugins/wikilabs/link-to-tabs/history": {
            "title": "$:/plugins/wikilabs/link-to-tabs/history",
            "text": "V 2.0.1 - 2020-12-25\n\n* update license\n\nV 2.0.0 - 2020.12.05\n\n* Update $:/core/macros/tabs to V5.1.23\n\nV 1.1.1 - 2020.01.19\n\n* Update license link/text\n\nV 1.1.0 - 2019.07.14\n\n* Add new option: Initially hide link\n** Transition time from hidden to visible is adjustable\n* Added: \"Reset to Default\" button\n\nV 1.0.1 - 2019.02.18\n\n* link-to-tabs works in drop-down elements now.\n\nV 1.0.0 - 2019.02.14\n\n* Use core tabs-macro from TW 5.1.19\n\nV <1.0.0\n\n* Use core tabs-macro from TW 5.1.15\n"
        },
        "$:/plugins/wikilabs/link-to-tabs/license": {
            "title": "$:/plugins/wikilabs/link-to-tabs/license",
            "text": "[[Link-to-Tabs-Macro|https://wikilabs.github.io/#link-to-tabs]] (c) Mario Pietsch - 2016-2021\n\nhttps://opensource.org/licenses/BSD-3-Clause\n"
        },
        "$:/plugins/wikilabs/link-to-tabs/styles": {
            "title": "$:/plugins/wikilabs/link-to-tabs/styles",
            "created": "20190712133348541",
            "modified": "20190714104306483",
            "tags": "$:/tags/Stylesheet",
            "type": "text/vnd.tiddlywiki",
            "text": "<pre>\n\n.wltc-link-to-tab {\n  display: {{$:/plugins/wikilabs/link-to-tabs/config!!show-all-links}};\n  position: relative;\n  top: -1em;\n  left: -1.3em;\n  font-size: 0.7em;\n  opacity: {{$:/plugins/wikilabs/link-to-tabs/config!!initial-opacity}};\n  margin-right: -1em;\n}\n\n.wltc-link-to-tab svg{\n  width: 1.4em;\n  height: 1.4em;\n}\n\n.wltc-link-to-tab:hover {\n  opacity: 1;\n  transition:opacity {{$:/plugins/wikilabs/link-to-tabs/config!!transition}}s;\n  transition-timing-function: cubic-bezier(1,-0.06,.39,.89);\n}\n\n.tc-tab-selected + .wltc-link-to-tab {\n  display: {{$:/plugins/wikilabs/link-to-tabs/config!!show-single-link}};\n}\n\n.tc-vertical > .wltc-link-to-tab {\n  top: -1.9em;\n  left: 0;\n  height: 0;\n  float: right;\n}\n\n.tc-search-results .wltc-link-to-tab a {\n  display: contents;\n  padding: 0;\n}\n\n</pre>"
        },
        "$:/plugins/wikilabs/link-to-tabs/readme": {
            "title": "$:/plugins/wikilabs/link-to-tabs/readme",
            "text": "This plugin adds a little link icon to every tab.\n\n''Important:'' This plugin changes the core tabs macro.\n\n! Lint-to-Tabs Settings\n\n{{$:/core/ui/ControlPanel/Settings/link-to-tabs}}"
        }
    }
}
Terms & Tools to Recognize Adult Interaction with Cannabis is a Human Right.
AppellationOfFreedomWiki
settings
yes
$:/core/ui/ControlPanel/Plugins
Table of Contents
yes
yes
no
no






$:/themes/tiddlywiki/vanilla
{
    "tiddlers": {
        "$:/themes/tiddlywiki/snowwhite/base": {
            "title": "$:/themes/tiddlywiki/snowwhite/base",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": "\\define sidebarbreakpoint-minus-one()\n<$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}}/>\n\\end\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\n.tc-sidebar-header {\n\ttext-shadow: 0 1px 0 <<colour sidebar-foreground-shadow>>;\n}\n\n.tc-tiddler-info {\n\t<<box-shadow \"inset 1px 2px 3px rgba(0,0,0,0.1)\">>\n}\n\n@media screen {\n\t.tc-tiddler-frame {\n\t\t<<box-shadow \"1px 1px 5px rgba(0, 0, 0, 0.3)\">>\n\t}\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\t.tc-tiddler-frame {\n\t\t<<box-shadow none>>\n\t}\n}\n\n.tc-page-controls button svg, .tc-tiddler-controls button svg, .tc-topbar button svg {\n\t<<transition \"fill 150ms ease-in-out\">>\n}\n\n.tc-tiddler-controls button.tc-selected,\n.tc-page-controls button.tc-selected {\n\t<<filter \"drop-shadow(0px -1px 2px rgba(0,0,0,0.25))\">>\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor {\n\t<<box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\">>\n}\n\n.tc-edit-tags {\n\t<<box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\">>\n}\n\n.tc-tiddler-frame .tc-edit-tags input.tc-edit-texteditor {\n\t<<box-shadow \"none\">>\n\tborder: none;\n\toutline: none;\n}\n\ntextarea.tc-edit-texteditor {\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\ncanvas.tc-edit-bitmapeditor  {\n\t<<box-shadow \"2px 2px 5px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-drop-down {\n\tborder-radius: 4px;\n\t<<box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-block-dropdown {\n\tborder-radius: 4px;\n\t<<box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-modal {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.3)\">>\n}\n\n.tc-modal-footer {\n\tborder-radius: 0 0 6px 6px;\n\t<<box-shadow \"inset 0 1px 0 #fff\">>;\n}\n\n\n.tc-alert {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.6)\">>\n}\n\n.tc-notification {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.3)\">>\n\ttext-shadow: 0 1px 0 rgba(255,255,255, 0.8);\n}\n\n.tc-sidebar-lists .tc-tab-set .tc-tab-divider {\n\tborder-top: none;\n\theight: 1px;\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.0) 100%\">>\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.01) 0%, rgba(0,0,0,0.1) 100%\">>\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.05) 0%, rgba(255,255,255,0.05) 100%\">>\n}\n\n.tc-message-box img {\n\t<<box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\">>\n}\n\n.tc-plugin-info {\n\t<<box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\">>\n}\n"
        }
    }
}
{
    "tiddlers": {
        "$:/themes/tiddlywiki/vanilla/themetweaks": {
            "title": "$:/themes/tiddlywiki/vanilla/themetweaks",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ThemeTweaks/ThemeTweaks}}",
            "text": "\\define lingo-base() $:/language/ThemeTweaks/\n\n\\define replacement-text()\n[img[$(imageTitle)$]]\n\\end\n\n\\define backgroundimage-dropdown()\n<div class=\"tc-drop-down-wrapper\">\n<$button popup=<<qualify \"$:/state/popup/themetweaks/backgroundimage\">> class=\"tc-btn-invisible tc-btn-dropdown\">{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/themetweaks/backgroundimage\">> type=\"popup\" position=\"belowleft\" text=\"\" default=\"\">\n<div class=\"tc-drop-down\">\n<$macrocall $name=\"image-picker\" actions=\"\"\"\n\n<$action-setfield\n\t$tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"\n\t$value=<<imageTitle>>\n/>\n\n\"\"\"/>\n</div>\n</$reveal>\n</div>\n\\end\n\n\\define backgroundimageattachment-dropdown()\n<$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment\" default=\"scroll\">\n<option value=\"scroll\"><<lingo Settings/BackgroundImageAttachment/Scroll>></option>\n<option value=\"fixed\"><<lingo Settings/BackgroundImageAttachment/Fixed>></option>\n</$select>\n\\end\n\n\\define backgroundimagesize-dropdown()\n<$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize\" default=\"scroll\">\n<option value=\"auto\"><<lingo Settings/BackgroundImageSize/Auto>></option>\n<option value=\"cover\"><<lingo Settings/BackgroundImageSize/Cover>></option>\n<option value=\"contain\"><<lingo Settings/BackgroundImageSize/Contain>></option>\n</$select>\n\\end\n\n<<lingo ThemeTweaks/Hint>>\n\n! <<lingo Options>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"><<lingo Options/SidebarLayout>></$link> |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"><option value=\"fixed-fluid\"><<lingo Options/SidebarLayout/Fixed-Fluid>></option><option value=\"fluid-fixed\"><<lingo Options/SidebarLayout/Fluid-Fixed>></option></$select> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"><<lingo Options/StickyTitles>></$link><br>//<<lingo Options/StickyTitles/Hint>>// |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"><option value=\"no\">{{$:/language/No}}</option><option value=\"yes\">{{$:/language/Yes}}</option></$select> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"><<lingo Options/CodeWrapping>></$link> |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"><option value=\"pre\">{{$:/language/No}}</option><option value=\"pre-wrap\">{{$:/language/Yes}}</option></$select> |\n\n! <<lingo Settings>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\"><<lingo Settings/FontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\"><<lingo Settings/CodeFontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\"><<lingo Settings/EditorFontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"><<lingo Settings/BackgroundImage>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\" default=\"\" tag=\"input\"/> |<<backgroundimage-dropdown>> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment\"><<lingo Settings/BackgroundImageAttachment>></$link> |<<backgroundimageattachment-dropdown>> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize\"><<lingo Settings/BackgroundImageSize>></$link> |<<backgroundimagesize-dropdown>> | |\n\n! <<lingo Metrics>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/fontsize\"><<lingo Metrics/FontSize>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/fontsize\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/lineheight\"><<lingo Metrics/LineHeight>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/lineheight\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize\"><<lingo Metrics/BodyFontSize>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/bodylineheight\"><<lingo Metrics/BodyLineHeight>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/bodylineheight\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storyleft\"><<lingo Metrics/StoryLeft>></$link><br>//<<lingo Metrics/StoryLeft/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storyleft\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storytop\"><<lingo Metrics/StoryTop>></$link><br>//<<lingo Metrics/StoryTop/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storytop\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storyright\"><<lingo Metrics/StoryRight>></$link><br>//<<lingo Metrics/StoryRight/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storyright\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\"><<lingo Metrics/StoryWidth>></$link><br>//<<lingo Metrics/StoryWidth/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\"><<lingo Metrics/TiddlerWidth>></$link><br>//<<lingo Metrics/TiddlerWidth/Hint>>//<br> |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\"><<lingo Metrics/SidebarBreakpoint>></$link><br>//<<lingo Metrics/SidebarBreakpoint/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\"><<lingo Metrics/SidebarWidth>></$link><br>//<<lingo Metrics/SidebarWidth/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\" default=\"\" tag=\"input\"/> |\n"
        },
        "$:/themes/tiddlywiki/vanilla/base": {
            "title": "$:/themes/tiddlywiki/vanilla/base",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": "\\define custom-background-datauri()\n<$set name=\"background\" value={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}}>\n<$list filter=\"[<background>is[image]]\">\n`background: url(`\n<$list filter=\"[<background>!has[_canonical_uri]]\">\n`\"`<$macrocall $name=\"datauri\" title={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}}/>`\"`\n</$list>\n<$list filter=\"[<background>has[_canonical_uri]]\">\n`\"`<$view tiddler={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}} field=\"_canonical_uri\"/>`\"`\n</$list>\n`) center center;`\n`background-attachment: `{{$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment}}`;\n-webkit-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\n-moz-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\n-o-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\nbackground-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;`\n</$list>\n</$set>\n\\end\n\n\\define sidebarbreakpoint()\n<$text text={{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}/>\n\\end\n\n\\define sidebarbreakpoint-minus-one()\n<$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}}/>\n\\end\n\n\\define if-fluid-fixed(text,hiddenSidebarText)\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" type=\"match\" text=\"fluid-fixed\">\n$text$\n<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"yes\" default=\"yes\">\n$hiddenSidebarText$\n</$reveal>\n</$reveal>\n\\end\n\n\\define if-editor-height-fixed(then,else)\n<$reveal state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"fixed\">\n$then$\n</$reveal>\n<$reveal state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"auto\">\n$else$\n</$reveal>\n\\end\n\n\\define set-type-selector-min-width()\n<$set name=\"typeLength\" value={{{ [all[shadows+tiddlers]prefix[$:/language/Docs/Types/]get[name]length[]maxall[]] }}}>\n\n\t.tc-type-selector-dropdown-wrapper {\n\t\tmin-width: calc(<<typeLength>>ch + 4em);\n\t}\n\n\t.tc-type-selector-dropdown-wrapper input.tc-edit-typeeditor {\n\t\tmin-width: <<typeLength>>ch;\n\t}\n\n</$set>\n\\end\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock\n\n/*\n** Start with the normalize CSS reset, and then belay some of its effects\n*/\n\n{{$:/themes/tiddlywiki/vanilla/reset}}\n\n*, input[type=\"search\"] {\n\tbox-sizing: border-box;\n\t-moz-box-sizing: border-box;\n\t-webkit-box-sizing: border-box;\n}\n\ninput[type=\"search\"] {\n  outline-offset: initial;\n}\n\nhtml button {\n\tline-height: 1.2;\n\tcolor: <<colour button-foreground>>;\n\tfill: <<colour button-foreground>>;\n\tbackground: <<colour button-background>>;\n\tborder-color: <<colour button-border>>;\n}\n\n/*\n** Basic element styles\n*/\n\nhtml, body {\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/fontfamily}};\n\ttext-rendering: optimizeLegibility; /* Enables kerning and ligatures etc. */\n\t-webkit-font-smoothing: antialiased;\n\t-moz-osx-font-smoothing: grayscale;\n}\n\nhtml:-webkit-full-screen {\n\tbackground-color: <<colour page-background>>;\n}\n\nbody.tc-body {\n\tfont-size: {{$:/themes/tiddlywiki/vanilla/metrics/fontsize}};\n\tline-height: {{$:/themes/tiddlywiki/vanilla/metrics/lineheight}};\n\tword-wrap: break-word;\n\t<<custom-background-datauri>>\n\tcolor: <<colour foreground>>;\n\tbackground-color: <<colour page-background>>;\n\tfill: <<colour foreground>>;\n}\n\n<<if-background-attachment \"\"\"\n\nbody.tc-body {\n        background-color: transparent;\n}\n\n\"\"\">>\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n\tfont-size: 2em;\n}\n\nh1, h2, h3, h4, h5, h6 {\n\tline-height: 1.2;\n\tfont-weight: 300;\n}\n\npre {\n\tdisplay: block;\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n\tword-break: normal;\n\tword-wrap: break-word;\n\twhite-space: {{$:/themes/tiddlywiki/vanilla/options/codewrapping}};\n\tbackground-color: <<colour pre-background>>;\n\tborder: 1px solid <<colour pre-border>>;\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}};\n}\n\ncode {\n\tcolor: <<colour code-foreground>>;\n\tbackground-color: <<colour code-background>>;\n\tborder: 1px solid <<colour code-border>>;\n\twhite-space: {{$:/themes/tiddlywiki/vanilla/options/codewrapping}};\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}};\n}\n\nblockquote {\n\tborder-left: 5px solid <<colour blockquote-bar>>;\n\tmargin-left: 25px;\n\tpadding-left: 10px;\n\tquotes: \"\\201C\"\"\\201D\"\"\\2018\"\"\\2019\";\n}\n\nblockquote > div {\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n}\n\nblockquote.tc-big-quote {\n\tfont-family: Georgia, serif;\n\tposition: relative;\n\tbackground: <<colour pre-background>>;\n\tborder-left: none;\n\tmargin-left: 50px;\n\tmargin-right: 50px;\n\tpadding: 10px;\n    border-radius: 8px;\n}\n\nblockquote.tc-big-quote cite:before {\n\tcontent: \"\\2014 \\2009\";\n}\n\nblockquote.tc-big-quote:before {\n\tfont-family: Georgia, serif;\n\tcolor: <<colour blockquote-bar>>;\n\tcontent: open-quote;\n\tfont-size: 8em;\n\tline-height: 0.1em;\n\tmargin-right: 0.25em;\n\tvertical-align: -0.4em;\n\tposition: absolute;\n    left: -50px;\n    top: 42px;\n}\n\nblockquote.tc-big-quote:after {\n\tfont-family: Georgia, serif;\n\tcolor: <<colour blockquote-bar>>;\n\tcontent: close-quote;\n\tfont-size: 8em;\n\tline-height: 0.1em;\n\tmargin-right: 0.25em;\n\tvertical-align: -0.4em;\n\tposition: absolute;\n    right: -80px;\n    bottom: -20px;\n}\n\ndl dt {\n\tfont-weight: bold;\n\tmargin-top: 6px;\n}\n\nbutton, textarea, input, select {\n\toutline-color: <<colour primary>>;\n}\n\ntextarea,\ninput[type=text],\ninput[type=search],\ninput[type=\"\"],\ninput:not([type]) {\n\tcolor: <<colour foreground>>;\n\tbackground: <<colour background>>;\n}\n\ninput[type=\"checkbox\"] {\n  vertical-align: middle;\n}\n\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n\t-webkit-appearance:none;\n}\n\n.tc-muted {\n\tcolor: <<colour muted-foreground>>;\n}\n\nsvg.tc-image-button {\n\tpadding: 0px 1px 1px 0px;\n}\n\n.tc-icon-wrapper > svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\nkbd {\n\tdisplay: inline-block;\n\tpadding: 3px 5px;\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tcolor: <<colour foreground>>;\n\tvertical-align: middle;\n\tbackground-color: <<colour background>>;\n\tborder: solid 1px <<colour muted-foreground>>;\n\tborder-bottom-color: <<colour muted-foreground>>;\n\tborder-radius: 3px;\n\tbox-shadow: inset 0 -1px 0 <<colour muted-foreground>>;\n}\n\n::selection {\n\tbackground-color: Highlight;\n\tcolor: HighlightText;\n\tbackground-color: <<colour selection-background>>;\n\tcolor: <<colour selection-foreground>>;\n}\n\n/*\nMarkdown likes putting code elements inside pre elements\n*/\npre > code {\n\tpadding: 0;\n\tborder: none;\n\tbackground-color: inherit;\n\tcolor: inherit;\n}\n\ntable {\n\tborder: 1px solid <<colour table-border>>;\n\twidth: auto;\n\tmax-width: 100%;\n\tcaption-side: bottom;\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n\t/* next 2 elements needed, since normalize 8.0.1 */\n\tborder-collapse: collapse;\n\tborder-spacing: 0;\n}\n\ntable th, table td {\n\tpadding: 0 7px 0 7px;\n\tborder-top: 1px solid <<colour table-border>>;\n\tborder-left: 1px solid <<colour table-border>>;\n}\n\ntable thead tr td, table th {\n\tbackground-color: <<colour table-header-background>>;\n\tfont-weight: bold;\n}\n\ntable tfoot tr td {\n\tbackground-color: <<colour table-footer-background>>;\n}\n\n.tc-csv-table {\n\twhite-space: nowrap;\n}\n\n.tc-tiddler-frame img,\n.tc-tiddler-frame svg,\n.tc-tiddler-frame canvas,\n.tc-tiddler-frame embed,\n.tc-tiddler-frame iframe {\n\tmax-width: 100%;\n}\n\n.tc-tiddler-body > embed,\n.tc-tiddler-body > iframe {\n\twidth: 100%;\n\theight: 600px;\n}\n\n/*\n** Links\n*/\n\nbutton.tc-tiddlylink,\na.tc-tiddlylink {\n\ttext-decoration: none;\n\tfont-weight: 500;\n\tcolor: <<colour tiddler-link-foreground>>;\n\t-webkit-user-select: inherit; /* Otherwise the draggable attribute makes links impossible to select */\n}\n\n.tc-sidebar-lists a.tc-tiddlylink {\n\tcolor: <<colour sidebar-tiddler-link-foreground>>;\n}\n\n.tc-sidebar-lists a.tc-tiddlylink:hover {\n\tcolor: <<colour sidebar-tiddler-link-foreground-hover>>;\n}\n\nbutton.tc-tiddlylink:hover,\na.tc-tiddlylink:hover {\n\ttext-decoration: underline;\n}\n\na.tc-tiddlylink-resolves {\n}\n\na.tc-tiddlylink-shadow {\n\tfont-weight: bold;\n}\n\na.tc-tiddlylink-shadow.tc-tiddlylink-resolves {\n\tfont-weight: normal;\n}\n\na.tc-tiddlylink-missing {\n\tfont-style: italic;\n}\n\na.tc-tiddlylink-external {\n\ttext-decoration: underline;\n\tcolor: <<colour external-link-foreground>>;\n\tbackground-color: <<colour external-link-background>>;\n}\n\na.tc-tiddlylink-external:visited {\n\tcolor: <<colour external-link-foreground-visited>>;\n\tbackground-color: <<colour external-link-background-visited>>;\n}\n\na.tc-tiddlylink-external:hover {\n\tcolor: <<colour external-link-foreground-hover>>;\n\tbackground-color: <<colour external-link-background-hover>>;\n}\n\n.tc-drop-down a.tc-tiddlylink:hover {\n\tcolor: <<colour tiddler-link-background>>;\n}\n\n/*\n** Drag and drop styles\n*/\n\n.tc-tiddler-dragger {\n\tposition: relative;\n\tz-index: -10000;\n}\n\n.tc-tiddler-dragger-inner {\n\tposition: absolute;\n\ttop: -1000px;\n\tleft: -1000px;\n\tdisplay: inline-block;\n\tpadding: 8px 20px;\n\tfont-size: 16.9px;\n\tfont-weight: bold;\n\tline-height: 20px;\n\tcolor: <<colour dragger-foreground>>;\n\ttext-shadow: 0 1px 0 rgba(0, 0, 0, 1);\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n\tbackground-color: <<colour dragger-background>>;\n\tborder-radius: 20px;\n}\n\n.tc-tiddler-dragger-cover {\n\tposition: absolute;\n\tbackground-color: <<colour page-background>>;\n}\n\n.tc-dropzone {\n\tposition: relative;\n}\n\n.tc-dropzone.tc-dragover:before {\n\tz-index: 10000;\n\tdisplay: block;\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbackground: <<colour dropzone-background>>;\n\ttext-align: center;\n\tcontent: \"<<lingo DropMessage>>\";\n}\n\n.tc-droppable > .tc-droppable-placeholder {\n\tdisplay: none;\n}\n\n.tc-droppable.tc-dragover > .tc-droppable-placeholder {\n\tdisplay: block;\n\tborder: 2px dashed <<colour dropzone-background>>;\n}\n\n.tc-draggable {\n\tcursor: move;\n}\n\n.tc-sidebar-tab-open .tc-droppable-placeholder, .tc-tagged-draggable-list .tc-droppable-placeholder,\n.tc-links-draggable-list .tc-droppable-placeholder {\n\tline-height: 2em;\n\theight: 2em;\n}\n\n.tc-sidebar-tab-open-item {\n\tposition: relative;\n}\n\n.tc-sidebar-tab-open .tc-btn-invisible.tc-btn-mini svg {\n\tfont-size: 0.7em;\n\tfill: <<colour muted-foreground>>;\n}\n\n/*\n** Plugin reload warning\n*/\n\n.tc-plugin-reload-warning {\n\tz-index: 1000;\n\tdisplay: block;\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbackground: <<colour alert-background>>;\n\ttext-align: center;\n}\n\n/*\n** Buttons\n*/\n\nbutton svg, button img, label svg, label img {\n\tvertical-align: middle;\n}\n\n.tc-btn-invisible {\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\tcursor: pointer;\n\tcolor: <<colour foreground>>;\n\tfill: <<colour foreground>>;\n}\n\n.tc-btn-boxed {\n\tfont-size: 0.6em;\n\tpadding: 0.2em;\n\tmargin: 1px;\n\tbackground: none;\n\tborder: 1px solid <<colour tiddler-controls-foreground>>;\n\tborder-radius: 0.25em;\n}\n\nhtml body.tc-body .tc-btn-boxed svg {\n\tfont-size: 1.6666em;\n}\n\n.tc-btn-boxed:hover {\n\tbackground: <<colour muted-foreground>>;\n\tcolor: <<colour background>>;\n}\n\nhtml body.tc-body .tc-btn-boxed:hover svg {\n\tfill: <<colour background>>;\n}\n\n.tc-btn-rounded {\n\tfont-size: 0.5em;\n\tline-height: 2;\n\tpadding: 0em 0.3em 0.2em 0.4em;\n\tmargin: 1px;\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour muted-foreground>>;\n\tcolor: <<colour background>>;\n\tborder-radius: 2em;\n}\n\nhtml body.tc-body .tc-btn-rounded svg {\n\tfont-size: 1.6666em;\n\tfill: <<colour background>>;\n}\n\n.tc-btn-rounded:hover {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour background>>;\n\tcolor: <<colour muted-foreground>>;\n}\n\nhtml body.tc-body .tc-btn-rounded:hover svg {\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-btn-icon svg {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-btn-text {\n\tpadding: 0;\n\tmargin: 0;\n}\n\n/* used for documentation \"fake\" buttons */\n.tc-btn-standard {\n\tline-height: 1.8;\n\tcolor: #667;\n\tbackground-color: #e0e0e0;\n\tborder: 1px solid #888;\n\tpadding: 2px 1px 2px 1px;\n\tmargin: 1px 4px 1px 4px;\n}\n\n.tc-btn-big-green {\n\tdisplay: inline-block;\n\tpadding: 8px;\n\tmargin: 4px 8px 4px 8px;\n\tbackground: <<colour download-background>>;\n\tcolor: <<colour download-foreground>>;\n\tfill: <<colour download-foreground>>;\n\tborder: none;\n\tborder-radius: 2px;\n\tfont-size: 1.2em;\n\tline-height: 1.4em;\n\ttext-decoration: none;\n}\n\n.tc-btn-big-green svg,\n.tc-btn-big-green img {\n\theight: 2em;\n\twidth: 2em;\n\tvertical-align: middle;\n\tfill: <<colour download-foreground>>;\n}\n\n.tc-primary-btn {\n \tbackground: <<colour primary>>;\n}\n\n.tc-sidebar-lists input {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-sidebar-lists button {\n\tcolor: <<colour sidebar-button-foreground>>;\n\tfill: <<colour sidebar-button-foreground>>;\n}\n\n.tc-sidebar-lists button.tc-btn-mini {\n\tcolor: <<colour sidebar-muted-foreground>>;\n}\n\n.tc-sidebar-lists button.tc-btn-mini:hover {\n\tcolor: <<colour sidebar-muted-foreground-hover>>;\n}\n\n.tc-sidebar-lists button small {\n\tcolor: <<colour foreground>>;\n}\n\nbutton svg.tc-image-button, button .tc-image-button img {\n\theight: 1em;\n\twidth: 1em;\n}\n\n.tc-unfold-banner {\n\tposition: absolute;\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\twidth: 100%;\n\twidth: calc(100% + 2px);\n\tmargin-left: -43px;\n\ttext-align: center;\n\tborder-top: 2px solid <<colour tiddler-info-background>>;\n\tmargin-top: 4px;\n}\n\n.tc-unfold-banner:hover {\n\tbackground: <<colour tiddler-info-background>>;\n\tborder-top: 2px solid <<colour tiddler-info-border>>;\n}\n\n.tc-unfold-banner svg, .tc-fold-banner svg {\n\theight: 0.75em;\n\tfill: <<colour tiddler-controls-foreground>>;\n}\n\n.tc-unfold-banner:hover svg, .tc-fold-banner:hover svg {\n\tfill: <<colour tiddler-controls-foreground-hover>>;\n}\n\n.tc-fold-banner {\n\tposition: absolute;\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\twidth: 23px;\n\ttext-align: center;\n\tmargin-left: -35px;\n\ttop: 6px;\n\tbottom: 6px;\n}\n\n.tc-fold-banner:hover {\n\tbackground: <<colour tiddler-info-background>>;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-unfold-banner {\n\t\tposition: static;\n\t\twidth: calc(100% + 59px);\n\t}\n\n\t.tc-fold-banner {\n\t\twidth: 16px;\n\t\tmargin-left: -16px;\n\t\tfont-size: 0.75em;\n\t}\n\n}\n\n/*\n** Tags and missing tiddlers\n*/\n\n.tc-tag-list-item {\n\tposition: relative;\n\tdisplay: inline-block;\n\tmargin-right: 7px;\n}\n\n.tc-tags-wrapper {\n\tmargin: 4px 0 14px 0;\n}\n\n.tc-missing-tiddler-label {\n\tfont-style: italic;\n\tfont-weight: normal;\n\tdisplay: inline-block;\n\tfont-size: 11.844px;\n\tline-height: 14px;\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n}\n\n.tc-block-tags-dropdown > .tc-btn-invisible:hover {\n\tbackground-color: <<colour primary>>;\n}\n\nbutton.tc-tag-label, span.tc-tag-label {\n\tdisplay: inline-block;\n\tpadding: 0.16em 0.7em;\n\tfont-size: 0.9em;\n\tfont-weight: 400;\n\tline-height: 1.2em;\n\tcolor: <<colour tag-foreground>>;\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n\tbackground-color: <<colour tag-background>>;\n\tborder-radius: 1em;\n}\n\n.tc-sidebar-scrollable .tc-tag-label {\n\ttext-shadow: none;\n}\n\n.tc-untagged-separator {\n\twidth: 10em;\n\tleft: 0;\n\tmargin-left: 0;\n\tborder: 0;\n\theight: 1px;\n\tbackground: <<colour tab-divider>>;\n}\n\nbutton.tc-untagged-label {\n\tbackground-color: <<colour untagged-background>>;\n}\n\n.tc-tag-label svg, .tc-tag-label img {\n\theight: 1em;\n\twidth: 1em;\n\tmargin-right: 3px; \n\tmargin-bottom: 1px;\n\tvertical-align: bottom;\n}\n\n.tc-edit-tags button.tc-remove-tag-button svg {\n\tfont-size: 0.7em;\n\tvertical-align: middle;\n}\n\n.tc-tag-manager-table .tc-tag-label {\n\twhite-space: normal;\n}\n\n.tc-tag-manager-tag {\n\twidth: 100%;\n}\n\nbutton.tc-btn-invisible.tc-remove-tag-button {\n\toutline: none;\n}\n\n.tc-tag-button-selected,\n.tc-list-item-selected a.tc-tiddlylink, a.tc-list-item-selected {\n\tbackground-color: <<colour primary>>;\n\tcolor: <<colour tiddler-background>>;\n}\n\n/*\n** Page layout\n*/\n\n.tc-topbar {\n\tposition: fixed;\n\tz-index: 1200;\n}\n\n.tc-topbar-left {\n\tleft: 29px;\n\ttop: 5px;\n}\n\n.tc-topbar-right {\n\ttop: 5px;\n\tright: 29px;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-topbar-right {\n\t\tright: 10px;\n\t}\n\n}\n\n.tc-topbar button {\n\tpadding: 8px;\n}\n\n.tc-topbar svg {\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-topbar button:hover svg {\n\tfill: <<colour foreground>>;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-show-sidebar-btn svg.tc-image-chevron-left, .tc-hide-sidebar-btn svg.tc-image-chevron-right {\n\t\ttransform: rotate(-90deg);\n\t}\n\n}\n\n.tc-sidebar-header {\n\tcolor: <<colour sidebar-foreground>>;\n\tfill: <<colour sidebar-foreground>>;\n}\n\n.tc-sidebar-header .tc-title a.tc-tiddlylink-resolves {\n\tfont-weight: 300;\n}\n\n.tc-sidebar-header .tc-sidebar-lists p {\n\tmargin-top: 3px;\n\tmargin-bottom: 3px;\n}\n\n.tc-sidebar-header .tc-missing-tiddler-label {\n\tcolor: <<colour sidebar-foreground>>;\n}\n\n.tc-advanced-search input {\n\twidth: 60%;\n}\n\n.tc-search a svg {\n\twidth: 1.2em;\n\theight: 1.2em;\n\tvertical-align: middle;\n}\n\n.tc-page-controls {\n\tmargin-top: 14px;\n\tfont-size: 1.5em;\n}\n\n.tc-page-controls .tc-drop-down {\n  font-size: 1rem;\n}\n\n.tc-page-controls button {\n\tmargin-right: 0.5em;\n}\n\n.tc-page-controls a.tc-tiddlylink:hover {\n\ttext-decoration: none;\n}\n\n.tc-page-controls img {\n\twidth: 1em;\n}\n\n.tc-page-controls svg {\n\tfill: <<colour sidebar-controls-foreground>>;\n}\n\n.tc-page-controls button:hover svg, .tc-page-controls a:hover svg {\n\tfill: <<colour sidebar-controls-foreground-hover>>;\n}\n\n.tc-sidebar-lists .tc-menu-list-item {\n\twhite-space: nowrap;\n}\n\n.tc-menu-list-count {\n\tfont-weight: bold;\n}\n\n.tc-menu-list-subitem {\n\tpadding-left: 7px;\n}\n\n.tc-story-river {\n\tposition: relative;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-sidebar-header {\n\t\tpadding: 14px;\n\t\tmin-height: 32px;\n\t\tmargin-top: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\ttransition:  min-height {{$:/config/AnimationDuration}}ms ease-in-out, padding-top {{$:/config/AnimationDuration}}ms ease-in-out, padding-bottom {{$:/config/AnimationDuration}}ms ease-in-out;\n\t}\n\t\n\t<<if-no-sidebar \"\"\"\n\n\t\t.tc-sidebar-header {\n\t\t\tmin-height: 0;\n\t\t\tpadding-top: 0;\n\t\t\tpadding-bottom: 0;\n\t\t}\n\n\t\"\"\">>\n\n\t.tc-story-river {\n\t\tposition: relative;\n\t\tpadding: 0;\n\t}\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n\t.tc-message-box {\n\t\tmargin: 21px -21px 21px -21px;\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tposition: fixed;\n\t\ttop: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\tleft: {{$:/themes/tiddlywiki/vanilla/metrics/storyright}};\n\t\tbottom: 0;\n\t\tright: 0;\n\t\toverflow-y: auto;\n\t\toverflow-x: auto;\n\t\t-webkit-overflow-scrolling: touch;\n\t\tmargin: 0 0 0 -42px;\n\t\tpadding: 71px 0 28px 42px;\n\t}\n\n\thtml[dir=\"rtl\"] .tc-sidebar-scrollable {\n\t\tleft: auto;\n\t\tright: {{$:/themes/tiddlywiki/vanilla/metrics/storyright}};\n\t}\n\n\t.tc-story-river {\n\t\tposition: relative;\n\t\tleft: {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}};\n\t\ttop: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/storywidth}};\n\t\tpadding: 42px 42px 42px 42px;\n\t}\n\n<<if-no-sidebar \"\n\n\t.tc-story-river {\n\t\twidth: calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}});\n\t}\n\n\">>\n\n\t.tc-story-river.tc-static-story-river {\n\t\tmargin-right: 0;\n\t\tpadding-right: 42px;\n\t}\n\n}\n\n@media print {\n\n\tbody.tc-body {\n\t\tbackground-color: transparent;\n\t}\n\n\t.tc-sidebar-header, .tc-topbar {\n\t\tdisplay: none;\n\t}\n\n\t.tc-story-river {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\n\t.tc-story-river .tc-tiddler-frame {\n\t\tmargin: 0;\n\t\tborder: none;\n\t\tpadding: 0;\n\t}\n}\n\n/*\n** Tiddler styles\n*/\n\n.tc-tiddler-frame {\n\tposition: relative;\n\tmargin-bottom: 28px;\n\tbackground-color: <<colour tiddler-background>>;\n\tborder: 1px solid <<colour tiddler-border>>;\n}\n\n{{$:/themes/tiddlywiki/vanilla/sticky}}\n\n.tc-tiddler-info {\n\tpadding: 14px 42px 14px 42px;\n\tbackground-color: <<colour tiddler-info-background>>;\n\tborder-top: 1px solid <<colour tiddler-info-border>>;\n\tborder-bottom: 1px solid <<colour tiddler-info-border>>;\n}\n\n.tc-tiddler-info p {\n\tmargin-top: 3px;\n\tmargin-bottom: 3px;\n}\n\n.tc-tiddler-info .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour tiddler-info-tab-background>>;\n\tborder-bottom: 1px solid <<colour tiddler-info-tab-background>>;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-tiddler-info {\n\t\tpadding: 14px 14px 14px 14px;\n\t}\n\n}\n\n.tc-view-field-table {\n\twidth: 100%;\n}\n\n.tc-view-field-name {\n\twidth: 1%; /* Makes this column be as narrow as possible */\n\ttext-align: right;\n\tfont-style: italic;\n\tfont-weight: 200;\n}\n\n.tc-view-field-value {\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\t.tc-tiddler-frame {\n\t\tpadding: 14px 14px 14px 14px;\n\t\tmargin-bottom: .5em;\n\t}\n\n\t.tc-tiddler-info {\n\t\tmargin: 0 -14px 0 -14px;\n\t}\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\t.tc-tiddler-frame {\n\t\tpadding: 28px 42px 42px 42px;\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth}};\n\t\tborder-radius: 2px;\n\t}\n\n<<if-no-sidebar \"\n\n\t.tc-tiddler-frame {\n\t\twidth: 100%;\n\t}\n\n\">>\n\n\t.tc-tiddler-info {\n\t\tmargin: 0 -42px 0 -42px;\n\t}\n}\n\n.tc-site-title,\n.tc-titlebar {\n\tfont-weight: 300;\n\tfont-size: 2.35em;\n\tline-height: 1.35em;\n\tcolor: <<colour tiddler-title-foreground>>;\n\tmargin: 0;\n}\n\n.tc-site-title {\n\tcolor: <<colour site-title-foreground>>;\n}\n\n.tc-tiddler-title-icon {\n\tvertical-align: middle;\n\tmargin-right: .1em;\n}\n\n.tc-system-title-prefix {\n\tcolor: <<colour muted-foreground>>;\n}\n\n.tc-titlebar h2 {\n\tfont-size: 1em;\n\tdisplay: inline;\n}\n\n.tc-titlebar img {\n\theight: 1em;\n}\n\n.tc-subtitle {\n\tfont-size: 0.9em;\n\tcolor: <<colour tiddler-subtitle-foreground>>;\n\tfont-weight: 300;\n}\n\n.tc-subtitle .tc-tiddlylink {\n\tmargin-right: .3em;\n}\n\n.tc-tiddler-missing .tc-title {\n  font-style: italic;\n  font-weight: normal;\n}\n\n.tc-tiddler-frame .tc-tiddler-controls {\n\tfloat: right;\n}\n\n.tc-tiddler-controls .tc-drop-down {\n\tfont-size: 0.6em;\n}\n\n.tc-tiddler-controls .tc-drop-down .tc-drop-down {\n\tfont-size: 1em;\n}\n\n.tc-tiddler-controls > span > button,\n.tc-tiddler-controls > span > span > button,\n.tc-tiddler-controls > span > span > span > button {\n\tvertical-align: baseline;\n\tmargin-left:5px;\n}\n\n.tc-tiddler-controls button svg, .tc-tiddler-controls button img,\n.tc-search button svg, .tc-search a svg {\n\tfill: <<colour tiddler-controls-foreground>>;\n}\n\n.tc-tiddler-controls button svg, .tc-tiddler-controls button img {\n\theight: 0.75em;\n}\n\n.tc-search button svg, .tc-search a svg {\n    height: 1.2em;\n    width: 1.2em;\n    margin: 0 0.25em;\n}\n\n.tc-tiddler-controls button.tc-selected svg,\n.tc-page-controls button.tc-selected svg  {\n\tfill: <<colour tiddler-controls-foreground-selected>>;\n}\n\n.tc-tiddler-controls button.tc-btn-invisible:hover svg,\n.tc-search button:hover svg, .tc-search a:hover svg {\n\tfill: <<colour tiddler-controls-foreground-hover>>;\n}\n\n@media print {\n\t.tc-tiddler-controls {\n\t\tdisplay: none;\n\t}\n}\n\n.tc-tiddler-help { /* Help prompts within tiddler template */\n\tcolor: <<colour muted-foreground>>;\n\tmargin-top: 14px;\n}\n\n.tc-tiddler-help a.tc-tiddlylink {\n\tcolor: <<colour very-muted-foreground>>;\n}\n\n.tc-tiddler-frame .tc-edit-texteditor {\n\twidth: 100%;\n\tmargin: 4px 0 4px 0;\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor,\n.tc-tiddler-frame textarea.tc-edit-texteditor,\n.tc-tiddler-frame iframe.tc-edit-texteditor {\n\tpadding: 3px 3px 3px 3px;\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tline-height: 1.3em;\n\t-webkit-appearance: none;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor,\n.tc-tiddler-frame textarea.tc-edit-texteditor {\n\tbackground-color: <<colour tiddler-editor-background>>;\n}\n\n.tc-tiddler-frame iframe.tc-edit-texteditor {\n\tbackground-color: <<colour tiddler-background>>;\n}\n\n.tc-tiddler-frame .tc-binary-warning {\n\twidth: 100%;\n\theight: 5em;\n\ttext-align: center;\n\tpadding: 3em 3em 6em 3em;\n\tbackground: <<colour alert-background>>;\n\tborder: 1px solid <<colour alert-border>>;\n}\n\ncanvas.tc-edit-bitmapeditor  {\n\tborder: 6px solid <<colour tiddler-editor-border-image>>;\n\tcursor: crosshair;\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tmargin-top: 6px;\n\tmargin-bottom: 6px;\n}\n\n.tc-edit-bitmapeditor-width {\n\tdisplay: block;\n}\n\n.tc-edit-bitmapeditor-height {\n\tdisplay: block;\n}\n\n.tc-tiddler-body {\n\tclear: both;\n}\n\n.tc-tiddler-frame .tc-tiddler-body {\n\tfont-size: {{$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize}};\n\tline-height: {{$:/themes/tiddlywiki/vanilla/metrics/bodylineheight}};\n}\n\n.tc-titlebar, .tc-tiddler-edit-title {\n\toverflow: hidden; /* https://github.com/Jermolene/TiddlyWiki5/issues/282 */\n}\n\nhtml body.tc-body.tc-single-tiddler-window {\n\tmargin: 1em;\n\tbackground: <<colour tiddler-background>>;\n}\n\n.tc-single-tiddler-window img,\n.tc-single-tiddler-window svg,\n.tc-single-tiddler-window canvas,\n.tc-single-tiddler-window embed,\n.tc-single-tiddler-window iframe {\n\tmax-width: 100%;\n}\n\n/*\n** Editor\n*/\n\n.tc-editor-toolbar {\n\tmargin-top: 8px;\n}\n\n.tc-editor-toolbar button {\n\tvertical-align: middle;\n\tbackground-color: <<colour tiddler-controls-foreground>>;\n\tcolor: <<colour tiddler-controls-foreground-selected>>;\n\tfill: <<colour tiddler-controls-foreground-selected>>;\n\tborder-radius: 4px;\n\tpadding: 3px;\n\tmargin: 2px 0 2px 4px;\n}\n\n.tc-editor-toolbar button.tc-text-editor-toolbar-item-adjunct {\n\tmargin-left: 1px;\n\twidth: 1em;\n\tborder-radius: 8px;\n}\n\n.tc-editor-toolbar button.tc-text-editor-toolbar-item-start-group {\n\tmargin-left: 11px;\n}\n\n.tc-editor-toolbar button.tc-selected {\n\tbackground-color: <<colour primary>>;\n}\n\n.tc-editor-toolbar button svg {\n\twidth: 1.6em;\n\theight: 1.2em;\n}\n\n.tc-editor-toolbar button:hover {\n\tbackground-color: <<colour tiddler-controls-foreground-selected>>;\n\tfill: <<colour background>>;\n\tcolor: <<colour background>>;\n}\n\n.tc-editor-toolbar .tc-text-editor-toolbar-more {\n\twhite-space: normal;\n}\n\n.tc-editor-toolbar .tc-text-editor-toolbar-more button {\n\tdisplay: inline-block;\n\tpadding: 3px;\n\twidth: auto;\n}\n\n.tc-editor-toolbar .tc-search-results {\n\tpadding: 0;\n}\n\n/*\n** Adjustments for fluid-fixed mode\n*/\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n<<if-fluid-fixed text:\"\"\"\n\n\t.tc-story-river {\n\t\tpadding-right: 0;\n\t\tposition: relative;\n\t\twidth: auto;\n\t\tleft: 0;\n\t\tmargin-left: {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}};\n\t\tmargin-right: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\n\t}\n\n\t.tc-tiddler-frame {\n\t\twidth: 100%;\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tleft: auto;\n\t\tbottom: 0;\n\t\tright: 0;\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\n\t}\n\n\tbody.tc-body .tc-storyview-zoomin-tiddler {\n\t\twidth: 100%;\n\t\twidth: calc(100% - 42px);\n\t}\n\n\"\"\" hiddenSidebarText:\"\"\"\n\n\t.tc-story-river {\n\t\tpadding-right: 3em;\n\t\tmargin-right: 0;\n\t}\n\n\tbody.tc-body .tc-storyview-zoomin-tiddler {\n\t\twidth: 100%;\n\t\twidth: calc(100% - 84px);\n\t}\n\n\"\"\">>\n\n}\n\n/*\n** Toolbar buttons\n*/\n\n.tc-page-controls svg.tc-image-new-button {\n  fill: <<colour toolbar-new-button>>;\n}\n\n.tc-page-controls svg.tc-image-options-button {\n  fill: <<colour toolbar-options-button>>;\n}\n\n.tc-page-controls svg.tc-image-save-button {\n  fill: <<colour toolbar-save-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-info-button {\n  fill: <<colour toolbar-info-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-edit-button {\n  fill: <<colour toolbar-edit-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-close-button {\n  fill: <<colour toolbar-close-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-delete-button {\n  fill: <<colour toolbar-delete-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-cancel-button {\n  fill: <<colour toolbar-cancel-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-done-button {\n  fill: <<colour toolbar-done-button>>;\n}\n\n/*\n** Tiddler edit mode\n*/\n\n.tc-tiddler-edit-frame em.tc-edit {\n\tcolor: <<colour muted-foreground>>;\n\tfont-style: normal;\n}\n\n.tc-edit-type-dropdown a.tc-tiddlylink-missing {\n\tfont-style: normal;\n}\n\n.tc-type-selector .tc-edit-typeeditor {\n\twidth: auto;\n}\n\n.tc-type-selector-dropdown-wrapper {\n\tdisplay: inline-block;\n}\n\n<<set-type-selector-min-width>>\n\n.tc-edit-tags {\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tpadding: 4px 8px 4px 8px;\n}\n\n.tc-edit-add-tag {\n\tdisplay: inline-block;\n}\n\n.tc-edit-add-tag .tc-add-tag-name input {\n\twidth: 50%;\n}\n\n.tc-edit-add-tag .tc-keyboard {\n\tdisplay:inline;\n}\n\n.tc-edit-tags .tc-tag-label {\n\tdisplay: inline-block;\n}\n\n.tc-edit-tags-list {\n\tmargin: 14px 0 14px 0;\n}\n\n.tc-remove-tag-button {\n\tpadding-left: 4px;\n}\n\n.tc-tiddler-preview {\n\toverflow: auto;\n}\n\n.tc-tiddler-preview-preview {\n\tfloat: right;\n\twidth: 49%;\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tmargin: 4px 0 3px 3px;\n\tpadding: 3px 3px 3px 3px;\n}\n\n<<if-editor-height-fixed then:\"\"\"\n\n.tc-tiddler-preview-preview {\n\toverflow-y: scroll;\n\theight: {{$:/config/TextEditor/EditorHeight/Height}};\n}\n\n\"\"\">>\n\n.tc-tiddler-frame .tc-tiddler-preview .tc-edit-texteditor {\n\twidth: 49%;\n}\n\n.tc-tiddler-frame .tc-tiddler-preview canvas.tc-edit-bitmapeditor {\n\tmax-width: 49%;\n}\n\n.tc-edit-fields {\n\twidth: 100%;\n}\n\n.tc-edit-fields.tc-edit-fields-small {\n\tmargin-top: 0;\n\tmargin-bottom: 0;\n}\n\n.tc-edit-fields table, .tc-edit-fields tr, .tc-edit-fields td {\n\tborder: none;\n\tpadding: 4px;\n}\n\n.tc-edit-fields > tbody > .tc-edit-field:nth-child(odd) {\n\tbackground-color: <<colour tiddler-editor-fields-odd>>;\n}\n\n.tc-edit-fields > tbody > .tc-edit-field:nth-child(even) {\n\tbackground-color: <<colour tiddler-editor-fields-even>>;\n}\n\n.tc-edit-field-name {\n\ttext-align: right;\n}\n\n.tc-edit-field-value input {\n\twidth: 100%;\n}\n\n.tc-edit-field-remove {\n}\n\n.tc-edit-field-remove svg {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n\tvertical-align: middle;\n}\n\n.tc-edit-field-add-name-wrapper input.tc-edit-texteditor {\n\twidth: auto;\n}\n\n.tc-edit-field-add-name-wrapper {\n\tdisplay: inline-block;\n}\n\n.tc-edit-field-add-value {\n\tdisplay: inline-block;\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n\t.tc-edit-field-add-value {\n\t\twidth: 35%;\n\t}\n\n}\n\n.tc-edit-field-add-button {\n\tdisplay: inline-block;\n\twidth: 10%;\n}\n\n/*\n** Storyview Classes\n*/\n\n.tc-viewswitcher .tc-image-button {\n\tmargin-right: .3em;\n}\n\n.tc-storyview-zoomin-tiddler {\n\tposition: absolute;\n\tdisplay: block;\n\twidth: 100%;\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n\t.tc-storyview-zoomin-tiddler {\n\t\twidth: calc(100% - 84px);\n\t}\n\n}\n\n/*\n** Dropdowns\n*/\n\n.tc-btn-dropdown {\n\ttext-align: left;\n}\n\n.tc-btn-dropdown svg, .tc-btn-dropdown img {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-drop-down-wrapper {\n\tposition: relative;\n}\n\n.tc-drop-down {\n\tmin-width: 380px;\n\tborder: 1px solid <<colour dropdown-border>>;\n\tbackground-color: <<colour dropdown-background>>;\n\tpadding: 7px 0 7px 0;\n\tmargin: 4px 0 0 0;\n\twhite-space: nowrap;\n\ttext-shadow: none;\n\tline-height: 1.4;\n}\n\n.tc-drop-down .tc-drop-down {\n\tmargin-left: 14px;\n}\n\n.tc-drop-down button svg, .tc-drop-down a svg  {\n\tfill: <<colour foreground>>;\n}\n\n.tc-drop-down button.tc-btn-invisible:hover svg {\n\tfill: <<colour background>>;\n}\n\n.tc-drop-down .tc-drop-down-info {\n\tpadding-left: 14px;\n}\n\n.tc-drop-down p {\n\tpadding: 0 14px 0 14px;\n}\n\n.tc-drop-down svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-drop-down img {\n\twidth: 1em;\n}\n\n.tc-drop-down a, .tc-drop-down button {\n\tdisplay: block;\n\tpadding: 0 14px 0 14px;\n\twidth: 100%;\n\ttext-align: left;\n\tcolor: <<colour foreground>>;\n\tline-height: 1.4;\n}\n\n.tc-drop-down .tc-tab-set .tc-tab-buttons button {\n\tdisplay: inline-block;\n    width: auto;\n    margin-bottom: 0px;\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: 0;\n}\n\n.tc-drop-down .tc-prompt {\n\tpadding: 0 14px;\n}\n\n.tc-drop-down .tc-chooser {\n\tborder: none;\n}\n\n.tc-drop-down .tc-chooser .tc-swatches-horiz {\n\tfont-size: 0.4em;\n\tpadding-left: 1.2em;\n}\n\n.tc-drop-down .tc-file-input-wrapper {\n\twidth: 100%;\n}\n\n.tc-drop-down .tc-file-input-wrapper button {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-drop-down a:hover, .tc-drop-down button:hover, .tc-drop-down .tc-file-input-wrapper:hover button {\n\tcolor: <<colour tiddler-link-background>>;\n\tbackground-color: <<colour tiddler-link-foreground>>;\n\ttext-decoration: none;\n}\n\n.tc-drop-down .tc-tab-buttons button {\n\tbackground-color: <<colour dropdown-tab-background>>;\n}\n\n.tc-drop-down .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour dropdown-tab-background-selected>>;\n\tborder-bottom: 1px solid <<colour dropdown-tab-background-selected>>;\n}\n\n.tc-drop-down-bullet {\n\tdisplay: inline-block;\n\twidth: 0.5em;\n}\n\n.tc-drop-down .tc-tab-contents a {\n\tpadding: 0 0.5em 0 0.5em;\n}\n\n.tc-block-dropdown-wrapper {\n\tposition: relative;\n}\n\n.tc-block-dropdown {\n\tposition: absolute;\n\tmin-width: 220px;\n\tborder: 1px solid <<colour dropdown-border>>;\n\tbackground-color: <<colour dropdown-background>>;\n\tpadding: 7px 0;\n\tmargin: 4px 0 0 0;\n\twhite-space: nowrap;\n\tz-index: 1000;\n\ttext-shadow: none;\n}\n\n.tc-block-dropdown.tc-search-drop-down {\n\tmargin-left: -12px;\n}\n\n.tc-block-dropdown a {\n\tdisplay: block;\n\tpadding: 4px 14px 4px 14px;\n}\n\n.tc-block-dropdown.tc-search-drop-down a {\n\tdisplay: block;\n\tpadding: 0px 10px 0px 10px;\n}\n\n.tc-drop-down .tc-dropdown-item-plain,\n.tc-block-dropdown .tc-dropdown-item-plain {\n\tpadding: 4px 14px 4px 7px;\n}\n\n.tc-drop-down .tc-dropdown-item,\n.tc-block-dropdown .tc-dropdown-item {\n\tpadding: 4px 14px 4px 7px;\n\tcolor: <<colour muted-foreground>>;\n}\n\n.tc-block-dropdown a.tc-tiddlylink:hover {\n\tcolor: <<colour tiddler-link-background>>;\n\tbackground-color: <<colour tiddler-link-foreground>>;\n\ttext-decoration: none;\n}\n\n.tc-search-results {\n\tpadding: 0 7px 0 7px;\n}\n\n.tc-image-chooser, .tc-colour-chooser {\n\twhite-space: normal;\n}\n\n.tc-image-chooser a,\n.tc-colour-chooser a {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\ttext-align: center;\n\tposition: relative;\n}\n\n.tc-image-chooser a {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tpadding: 2px;\n\tmargin: 2px;\n\twidth: 4em;\n\theight: 4em;\n}\n\n.tc-colour-chooser a {\n\tpadding: 3px;\n\twidth: 2em;\n\theight: 2em;\n\tvertical-align: middle;\n}\n\n.tc-image-chooser a:hover,\n.tc-colour-chooser a:hover {\n\tbackground: <<colour primary>>;\n\tpadding: 0px;\n\tborder: 3px solid <<colour primary>>;\n}\n\n.tc-image-chooser a svg,\n.tc-image-chooser a img {\n\tdisplay: inline-block;\n\twidth: auto;\n\theight: auto;\n\tmax-width: 3.5em;\n\tmax-height: 3.5em;\n\tposition: absolute;\n\ttop: 0;\n\tbottom: 0;\n\tleft: 0;\n\tright: 0;\n\tmargin: auto;\n}\n\n/*\n** Modals\n*/\n\n.tc-modal-wrapper {\n\tposition: fixed;\n\toverflow: auto;\n\toverflow-y: scroll;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n\tz-index: 900;\n}\n\n.tc-modal-backdrop {\n\tposition: fixed;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n\tz-index: 1000;\n\tbackground-color: <<colour modal-backdrop>>;\n}\n\n.tc-modal {\n\tz-index: 1100;\n\tbackground-color: <<colour modal-background>>;\n\tborder: 1px solid <<colour modal-border>>;\n}\n\n@media (max-width: 55em) {\n\t.tc-modal {\n\t\tposition: fixed;\n\t\ttop: 1em;\n\t\tleft: 1em;\n\t\tright: 1em;\n\t}\n\n\t.tc-modal-body {\n\t\toverflow-y: auto;\n\t\tmax-height: 400px;\n\t\tmax-height: 60vh;\n\t}\n}\n\n@media (min-width: 55em) {\n\t.tc-modal {\n\t\tposition: fixed;\n\t\ttop: 2em;\n\t\tleft: 25%;\n\t\twidth: 50%;\n\t}\n\n\t.tc-modal-body {\n\t\toverflow-y: auto;\n\t\tmax-height: 400px;\n\t\tmax-height: 60vh;\n\t}\n}\n\n.tc-modal-header {\n\tpadding: 9px 15px;\n\tborder-bottom: 1px solid <<colour modal-header-border>>;\n}\n\n.tc-modal-header h3 {\n\tmargin: 0;\n\tline-height: 30px;\n}\n\n.tc-modal-header img, .tc-modal-header svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-modal-body {\n\tpadding: 15px;\n}\n\n.tc-modal-footer {\n\tpadding: 14px 15px 15px;\n\tmargin-bottom: 0;\n\ttext-align: right;\n\tbackground-color: <<colour modal-footer-background>>;\n\tborder-top: 1px solid <<colour modal-footer-border>>;\n}\n\n\n/*\n** Centered modals\n*/\n.tc-modal-centered .tc-modal {\n\twidth: auto;\n\ttop: 50%;\n\tleft: 50%;\n\ttransform: translate(-50%, -50%) !important;\n}\n\n/*\n** Notifications\n*/\n\n.tc-notification {\n\tposition: fixed;\n\ttop: 14px;\n\tright: 42px;\n\tz-index: 1300;\n\tmax-width: 280px;\n\tpadding: 0 14px 0 14px;\n\tbackground-color: <<colour notification-background>>;\n\tborder: 1px solid <<colour notification-border>>;\n}\n\n/*\n** Tabs\n*/\n\n.tc-tab-set.tc-vertical {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-tab-buttons {\n\tfont-size: 0.85em;\n\tpadding-top: 1em;\n\tmargin-bottom: -2px;\n}\n\n.tc-tab-buttons.tc-vertical  {\n\tz-index: 100;\n\tdisplay: block;\n\tpadding-top: 14px;\n\tvertical-align: top;\n\ttext-align: right;\n\tmargin-bottom: inherit;\n\tmargin-right: -1px;\n\tmax-width: 33%;\n\t-webkit-flex: 0 0 auto;\n\tflex: 0 0 auto;\n}\n\n.tc-tab-buttons button.tc-tab-selected {\n\tcolor: <<colour tab-foreground-selected>>;\n\tbackground-color: <<colour tab-background-selected>>;\n\tborder-left: 1px solid <<colour tab-border-selected>>;\n\tborder-top: 1px solid <<colour tab-border-selected>>;\n\tborder-right: 1px solid <<colour tab-border-selected>>;\n}\n\n.tc-tab-buttons button {\n\tcolor: <<colour tab-foreground>>;\n\tpadding: 3px 5px 3px 5px;\n\tmargin-right: 0.3em;\n\tfont-weight: 300;\n\tborder: none;\n\tbackground: inherit;\n\tbackground-color: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-right: 1px solid <<colour tab-border>>;\n\tborder-top-left-radius: 2px;\n\tborder-top-right-radius: 2px;\n\tborder-bottom-left-radius: 0;\n\tborder-bottom-right-radius: 0;\n}\n\n.tc-tab-buttons.tc-vertical button {\n\tdisplay: block;\n\twidth: 100%;\n\tmargin-top: 3px;\n\tmargin-right: 0;\n\ttext-align: right;\n\tbackground-color: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tborder-right: none;\n\tborder-top-left-radius: 2px;\n\tborder-bottom-left-radius: 2px;\n\tborder-top-right-radius: 0;\n\tborder-bottom-right-radius: 0;\n}\n\n.tc-tab-buttons.tc-vertical button.tc-tab-selected {\n\tbackground-color: <<colour tab-background-selected>>;\n\tborder-right: 1px solid <<colour tab-background-selected>>;\n}\n\n.tc-tab-divider {\n\tborder-top: 1px solid <<colour tab-divider>>;\n}\n\n.tc-tab-divider.tc-vertical  {\n\tdisplay: none;\n}\n\n.tc-tab-content {\n\tmargin-top: 14px;\n}\n\n.tc-tab-content.tc-vertical  {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\tpadding-top: 0;\n\tpadding-left: 14px;\n\tborder-left: 1px solid <<colour tab-border>>;\n\t-webkit-flex: 1 0 70%;\n\tflex: 1 0 70%;\n\toverflow: auto;\n}\n\n.tc-sidebar-lists .tc-tab-buttons {\n\tmargin-bottom: -1px;\n}\n\n.tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour sidebar-tab-background-selected>>;\n\tcolor: <<colour sidebar-tab-foreground-selected>>;\n\tborder-left: 1px solid <<colour sidebar-tab-border-selected>>;\n\tborder-top: 1px solid <<colour sidebar-tab-border-selected>>;\n\tborder-right: 1px solid <<colour sidebar-tab-border-selected>>;\n}\n\n.tc-sidebar-lists .tc-tab-buttons button {\n\tbackground-color: <<colour sidebar-tab-background>>;\n\tcolor: <<colour sidebar-tab-foreground>>;\n\tborder-left: 1px solid <<colour sidebar-tab-border>>;\n\tborder-top: 1px solid <<colour sidebar-tab-border>>;\n\tborder-right: 1px solid <<colour sidebar-tab-border>>;\n}\n\n.tc-sidebar-lists .tc-tab-divider {\n\tborder-top: 1px solid <<colour sidebar-tab-divider>>;\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\n\tdisplay: block;\n\twidth: 100%;\n\tbackground-color: <<colour sidebar-tab-background>>;\n\tborder-top: none;\n\tborder-left: none;\n\tborder-bottom: none;\n\tborder-right: 1px solid #ccc;\n\tmargin-bottom: inherit;\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\n\tbackground-color: <<colour sidebar-tab-background-selected>>;\n\tborder: none;\n}\n\n/*\n** Manager\n*/\n\n.tc-manager-wrapper {\n\t\n}\n\n.tc-manager-controls {\n\t\n}\n\n.tc-manager-control {\n\tmargin: 0.5em 0;\n}\n\n.tc-manager-list {\n\twidth: 100%;\n\tborder-top: 1px solid <<colour muted-foreground>>;\n\tborder-left: 1px solid <<colour muted-foreground>>;\n\tborder-right: 1px solid <<colour muted-foreground>>;\n}\n\n.tc-manager-list-item {\n\n}\n\n.tc-manager-list-item-heading {\n    display: block;\n    width: 100%;\n    text-align: left;\t\n\tborder-bottom: 1px solid <<colour muted-foreground>>;\n\tpadding: 3px;\n}\n\n.tc-manager-list-item-heading-selected {\n\tfont-weight: bold;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n\tbackground-color: <<colour foreground>>;\n}\n\n.tc-manager-list-item-heading:hover {\n\tbackground: <<colour primary>>;\n\tcolor: <<colour background>>;\n}\n\n.tc-manager-list-item-content {\n\tdisplay: flex;\n}\n\n.tc-manager-list-item-content-sidebar {\n    flex: 1 0;\n    background: <<colour tiddler-editor-background>>;\n    border-right: 0.5em solid <<colour muted-foreground>>;\n    border-bottom: 0.5em solid <<colour muted-foreground>>;\n    white-space: nowrap;\n}\n\n.tc-manager-list-item-content-item-heading {\n\tdisplay: block;\n\twidth: 100%;\n\ttext-align: left;\n    background: <<colour muted-foreground>>;\n\ttext-transform: uppercase;\n\tfont-size: 0.6em;\n\tfont-weight: bold;\n    padding: 0.5em 0 0.5em 0;\n}\n\n.tc-manager-list-item-content-item-body {\n\tpadding: 0 0.5em 0 0.5em;\n}\n\n.tc-manager-list-item-content-item-body > pre {\n\tmargin: 0.5em 0 0.5em 0;\n\tborder: none;\n\tbackground: inherit;\n}\n\n.tc-manager-list-item-content-tiddler {\n    flex: 3 1;\n    border-left: 0.5em solid <<colour muted-foreground>>;\n    border-right: 0.5em solid <<colour muted-foreground>>;\n    border-bottom: 0.5em solid <<colour muted-foreground>>;\n}\n\n.tc-manager-list-item-content-item-body > table {\n\tborder: none;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.tc-manager-list-item-content-item-body > table td {\n\tborder: none;\n}\n\n.tc-manager-icon-editor > button {\n\twidth: 100%;\n}\n\n.tc-manager-icon-editor > button > svg,\n.tc-manager-icon-editor > button > button {\n\twidth: 100%;\n\theight: auto;\n}\n\n/*\n** Import table\n*/\n\n.tc-import-table {\n\twidth: 100%;\n}\n\n.tc-import-table svg.tc-image-edit-button {\n\tmax-width: unset;\n}\n\n.tc-import-table th:first-of-type {\n\twidth: 10%;\n}\n\n.tc-import-table th:last-of-type {\n\twidth: 30%;\n}\n\n.tc-import-table .tc-row-disabled {\n\tbackground: <<colour very-muted-foreground>>10;\n\topacity: 0.8;\n}\n\n.tc-import-table .tc-row-warning {\n\tbackground: <<colour diff-delete-background>>50;\n}\n\n/*\n** Alerts\n*/\n\n.tc-alerts {\n\tposition: fixed;\n\ttop: 28px;\n\tleft: 0;\n\tright: 0;\n\tmax-width: 50%;\n\tz-index: 20000;\n}\n\n.tc-alert {\n\tposition: relative;\n\tmargin: 14px;\n\tpadding: 7px;\n\tborder: 1px solid <<colour alert-border>>;\n\tbackground-color: <<colour alert-background>>;\n}\n\n.tc-alert-toolbar {\n\tposition: absolute;\n\ttop: 7px;\n\tright: 7px;\n    line-height: 0;\n}\n\n.tc-alert-toolbar svg {\n\tfill: <<colour alert-muted-foreground>>;\n}\n\n.tc-alert-subtitle {\n\tcolor: <<colour alert-muted-foreground>>;\n\tfont-weight: bold;\n    font-size: 0.8em;\n    margin-bottom: 0.5em;\n}\n\n.tc-alert-body > p {\n\tmargin: 0;\n}\n\n.tc-alert-highlight {\n\tcolor: <<colour alert-highlight>>;\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n\t.tc-static-alert {\n\t\tposition: relative;\n\t}\n\n\t.tc-static-alert-inner {\n\t\tposition: absolute;\n\t\tz-index: 100;\n\t}\n\n}\n\n.tc-static-alert-inner {\n\tpadding: 0 2px 2px 42px;\n\tcolor: <<colour static-alert-foreground>>;\n}\n\n/*\n** Floating drafts list\n*/\n\n.tc-drafts-list {\n\tz-index: 2000;\n\tposition: fixed;\n\tfont-size: 0.8em;\n\tleft: 0;\n\tbottom: 0;\n}\n\n.tc-drafts-list a {\n\tmargin: 0 0.5em;\n\tpadding: 4px 4px;\n\tborder-top-left-radius: 4px;\n\tborder-top-right-radius: 4px;\n\tborder: 1px solid <<colour background>>;\n\tborder-bottom-none;\n\tbackground: <<colour dirty-indicator>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n}\n\n.tc-drafts-list a:hover {\n\ttext-decoration: none;\n\tbackground: <<colour foreground>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n}\n\n.tc-drafts-list a svg {\n\twidth: 1em;\n\theight: 1em;\n\tvertical-align: text-bottom;\n}\n\n/*\n** Control panel\n*/\n\n.tc-control-panel td {\n\tpadding: 4px;\n}\n\n.tc-control-panel table, .tc-control-panel table input, .tc-control-panel table textarea {\n\twidth: 100%;\n}\n\n.tc-plugin-info {\n\tdisplay: flex;\n\tborder: 1px solid <<colour muted-foreground>>;\n\tfill: <<colour muted-foreground>>;\n\tbackground-color: <<colour background>>;\n\tmargin: 0.5em 0 0.5em 0;\n\tpadding: 4px;\n    align-items: center;\n}\n\n.tc-plugin-info-sub-plugins .tc-plugin-info {\n    margin: 0.5em;\n\tbackground: <<colour background>>;\n}\n\n.tc-plugin-info-sub-plugin-indicator {\n\tmargin: -16px 1em 0 2em;\n}\n\n.tc-plugin-info-sub-plugin-indicator button {\n\tcolor: <<colour background>>;\n\tbackground: <<colour foreground>>;\n\tborder-radius: 8px;\n    padding: 2px 7px;\n    font-size: 0.75em;\n}\n\n.tc-plugin-info-sub-plugins .tc-plugin-info-dropdown {\n\tmargin-left: 1em;\n\tmargin-right: 1em;\n}\n\n.tc-plugin-info-disabled {\n\tbackground: -webkit-repeating-linear-gradient(45deg, #ff0, #ff0 10px, #eee 10px, #eee 20px);\n\tbackground: repeating-linear-gradient(45deg, #ff0, #ff0 10px, #eee 10px, #eee 20px);\n}\n\n.tc-plugin-info-disabled:hover {\n\tbackground: -webkit-repeating-linear-gradient(45deg, #aa0, #aa0 10px, #888 10px, #888 20px);\n\tbackground: repeating-linear-gradient(45deg, #aa0, #aa0 10px, #888 10px, #888 20px);\n}\n\na.tc-tiddlylink.tc-plugin-info:hover {\n\ttext-decoration: none;\n\tbackground-color: <<colour primary>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour foreground>>;\n}\n\na.tc-tiddlylink.tc-plugin-info:hover > .tc-plugin-info-chunk > svg {\n\tfill: <<colour background>>;\n}\n\n.tc-plugin-info-chunk {\n    margin: 2px;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-toggle {\n\tflex-grow: 0;\n\tflex-shrink: 0;\n\tline-height: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-icon {\n\tflex-grow: 0;\n\tflex-shrink: 0;\n\tline-height: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description {\n\tflex-grow: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-buttons {\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tflex-grow: 0;\n\tflex-shrink: 0;\n    text-align: right;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description h1 {\n\tfont-size: 1em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description h2 {\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description div {\n\tfont-size: 0.7em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-toggle img, .tc-plugin-info-chunk.tc-plugin-info-toggle svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-icon img, .tc-plugin-info-chunk.tc-plugin-info-icon svg {\n\twidth: 2em;\n\theight: 2em;\n}\n\n.tc-plugin-info-dropdown {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour background>>;\n\tmargin-top: -8px;\n}\n\n.tc-plugin-info-dropdown-message {\n\tbackground: <<colour message-background>>;\n\tpadding: 0.5em 1em 0.5em 1em;\n\tfont-weight: bold;\n\tfont-size: 0.8em;\n}\n\n.tc-plugin-info-dropdown-body {\n\tpadding: 1em 1em 0 1em;\n\tbackground: <<colour background>>;\n}\n\n.tc-plugin-info-sub-plugins {\n\tpadding: 0.5em;\n    margin: 0 1em 1em 1em;\n\tbackground: <<colour notification-background>>;\n}\n\n.tc-install-plugin {\n\tfont-weight: bold;\n\tbackground: green;\n\tcolor: white;\n\tfill: white;\n\tborder-radius: 4px;\n\tpadding: 3px;\n}\n\n.tc-install-plugin.tc-reinstall-downgrade {\n\tbackground: red;\n}\n\n.tc-install-plugin.tc-reinstall {\n\tbackground: blue;\n}\n\n.tc-install-plugin.tc-reinstall-upgrade {\n\tbackground: orange;\n}\n\n.tc-check-list {\n\tline-height: 2em;\n}\n\n.tc-check-list .tc-image-button {\n\theight: 1.5em;\n}\n\n/*\n** Message boxes\n*/\n\n.tc-message-box {\n\tborder: 1px solid <<colour message-border>>;\n\tbackground: <<colour message-background>>;\n\tpadding: 0px 21px 0px 21px;\n\tfont-size: 12px;\n\tline-height: 18px;\n\tcolor: <<colour message-foreground>>;\n}\n\n.tc-message-box svg {\n\twidth: 1em;\n\theight: 1em;\n    vertical-align: text-bottom;\n}\n\n/*\n** Pictures\n*/\n\n.tc-bordered-image {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tpadding: 5px;\n\tmargin: 5px;\n}\n\n/*\n** Floats\n*/\n\n.tc-float-right {\n\tfloat: right;\n}\n\n/*\n** Chooser\n*/\n\n.tc-chooser {\n\tborder-right: 1px solid <<colour table-header-background>>;\n\tborder-left: 1px solid <<colour table-header-background>>;\n}\n\n\n.tc-chooser-item {\n\tborder-bottom: 1px solid <<colour table-header-background>>;\n\tborder-top: 1px solid <<colour table-header-background>>;\n\tpadding: 2px 4px 2px 14px;\n}\n\n.tc-drop-down .tc-chooser-item {\n\tpadding: 2px;\n}\n\n.tc-chosen,\n.tc-chooser-item:hover {\n\tbackground-color: <<colour table-header-background>>;\n\tborder-color: <<colour table-footer-background>>;\n}\n\n.tc-chosen .tc-tiddlylink {\n\tcursor:default;\n}\n\n.tc-chooser-item .tc-tiddlylink {\n\tdisplay: block;\n\ttext-decoration: none;\n\tbackground-color: transparent;\n}\n\n.tc-chooser-item:hover .tc-tiddlylink:hover {\n\ttext-decoration: none;\n}\n\n.tc-drop-down .tc-chosen .tc-tiddlylink,\n.tc-drop-down .tc-chooser-item .tc-tiddlylink:hover {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-chosen > .tc-tiddlylink:before {\n\tmargin-left: -10px;\n\tposition: relative;\n\tcontent: \"» \";\n}\n\n.tc-chooser-item svg,\n.tc-chooser-item img{\n\twidth: 1em;\n\theight: 1em;\n\tvertical-align: middle;\n}\n\n.tc-language-chooser .tc-image-button img {\n\twidth: 2em;\n\tvertical-align: -0.15em;\n}\n\n/*\n** Palette swatches\n*/\n\n.tc-swatches-horiz {\n}\n\n.tc-swatches-horiz .tc-swatch {\n\tdisplay: inline-block;\n}\n\n.tc-swatch {\n\twidth: 2em;\n\theight: 2em;\n\tmargin: 0.4em;\n\tborder: 1px solid #888;\n}\n\ninput.tc-palette-manager-colour-input {\n\twidth: 100%;\n\tpadding: 0;\n}\n\n/*\n** Table of contents\n*/\n\n.tc-sidebar-lists .tc-table-of-contents {\n\twhite-space: nowrap;\n}\n\n.tc-table-of-contents button {\n\tcolor: <<colour sidebar-foreground>>;\n}\n\n.tc-table-of-contents svg {\n\twidth: 0.7em;\n\theight: 0.7em;\n\tvertical-align: middle;\n\tfill: <<colour sidebar-foreground>>;\n}\n\n.tc-table-of-contents ol {\n\tlist-style-type: none;\n\tpadding-left: 0;\n}\n\n.tc-table-of-contents ol ol {\n\tpadding-left: 1em;\n}\n\n.tc-table-of-contents li {\n\tfont-size: 1.0em;\n\tfont-weight: bold;\n}\n\n.tc-table-of-contents li a {\n\tfont-weight: bold;\n}\n\n.tc-table-of-contents li li {\n\tfont-size: 0.95em;\n\tfont-weight: normal;\n\tline-height: 1.4;\n}\n\n.tc-table-of-contents li li a {\n\tfont-weight: normal;\n}\n\n.tc-table-of-contents li li li {\n\tfont-size: 0.95em;\n\tfont-weight: 200;\n\tline-height: 1.5;\n}\n\n.tc-table-of-contents li li li li {\n\tfont-size: 0.95em;\n\tfont-weight: 200;\n}\n\n.tc-tabbed-table-of-contents {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents {\n\tz-index: 100;\n\tdisplay: inline-block;\n\tpadding-left: 1em;\n\tmax-width: 50%;\n\t-webkit-flex: 0 0 auto;\n\tflex: 0 0 auto;\n\tbackground: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a,\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a {\n\tdisplay: block;\n\tpadding: 0.12em 1em 0.12em 0.25em;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a {\n\tborder-top: 1px solid <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-background>>;\n\tborder-bottom: 1px solid <<colour tab-background>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a:hover {\n\ttext-decoration: none;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tbackground: <<colour tab-border>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a {\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tbackground: <<colour background>>;\n\tmargin-right: -1px;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a:hover {\n\ttext-decoration: none;\n}\n\n.tc-tabbed-table-of-contents .tc-tabbed-table-of-contents-content {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\tpadding-left: 1.5em;\n\tpadding-right: 1.5em;\n\tborder: 1px solid <<colour tab-border>>;\n\t-webkit-flex: 1 0 50%;\n\tflex: 1 0 50%;\n}\n\n/*\n** Dirty indicator\n*/\n\nbody.tc-dirty span.tc-dirty-indicator, body.tc-dirty span.tc-dirty-indicator svg {\n\tfill: <<colour dirty-indicator>>;\n\tcolor: <<colour dirty-indicator>>;\n}\n\n/*\n** File inputs\n*/\n\n.tc-file-input-wrapper {\n\tposition: relative;\n\toverflow: hidden;\n\tdisplay: inline-block;\n\tvertical-align: middle;\n}\n\n.tc-file-input-wrapper input[type=file] {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tfont-size: 999px;\n\tmax-width: 100%;\n\tmax-height: 100%;\n\tfilter: alpha(opacity=0);\n\topacity: 0;\n\toutline: none;\n\tbackground: white;\n\tcursor: pointer;\n\tdisplay: inline-block;\n}\n\n::-webkit-file-upload-button {\n\tcursor:pointer;\n}\n\n/*\n** Thumbnail macros\n*/\n\n.tc-thumbnail-wrapper {\n\tposition: relative;\n\tdisplay: inline-block;\n\tmargin: 6px;\n\tvertical-align: top;\n}\n\n.tc-thumbnail-right-wrapper {\n\tfloat:right;\n\tmargin: 0.5em 0 0.5em 0.5em;\n}\n\n.tc-thumbnail-image {\n\ttext-align: center;\n\toverflow: hidden;\n\tborder-radius: 3px;\n}\n\n.tc-thumbnail-image svg,\n.tc-thumbnail-image img {\n\tfilter: alpha(opacity=1);\n\topacity: 1;\n\tmin-width: 100%;\n\tmin-height: 100%;\n\tmax-width: 100%;\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-image svg,\n.tc-thumbnail-wrapper:hover .tc-thumbnail-image img {\n\tfilter: alpha(opacity=0.8);\n\topacity: 0.8;\n}\n\n.tc-thumbnail-background {\n\tposition: absolute;\n\tborder-radius: 3px;\n}\n\n.tc-thumbnail-icon svg,\n.tc-thumbnail-icon img {\n\twidth: 3em;\n\theight: 3em;\n\t<<filter \"drop-shadow(2px 2px 4px rgba(0,0,0,0.3))\">>\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-icon svg,\n.tc-thumbnail-wrapper:hover .tc-thumbnail-icon img {\n\tfill: #fff;\n\t<<filter \"drop-shadow(3px 3px 4px rgba(0,0,0,0.6))\">>\n}\n\n.tc-thumbnail-icon {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tdisplay: -webkit-flex;\n\t-webkit-align-items: center;\n\t-webkit-justify-content: center;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.tc-thumbnail-caption {\n\tposition: absolute;\n\tbackground-color: #777;\n\tcolor: #fff;\n\ttext-align: center;\n\tbottom: 0;\n\twidth: 100%;\n\tfilter: alpha(opacity=0.9);\n\topacity: 0.9;\n\tline-height: 1.4;\n\tborder-bottom-left-radius: 3px;\n\tborder-bottom-right-radius: 3px;\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-caption {\n\tfilter: alpha(opacity=1);\n\topacity: 1;\n}\n\n/*\n** Diffs\n*/\n\n.tc-diff-equal {\n\tbackground-color: <<colour diff-equal-background>>;\n\tcolor: <<colour diff-equal-foreground>>;\n}\n\n.tc-diff-insert {\n\tbackground-color: <<colour diff-insert-background>>;\n\tcolor: <<colour diff-insert-foreground>>;\n}\n\n.tc-diff-delete {\n\tbackground-color: <<colour diff-delete-background>>;\n\tcolor: <<colour diff-delete-foreground>>;\n}\n\n.tc-diff-invisible {\n\tbackground-color: <<colour diff-invisible-background>>;\n\tcolor: <<colour diff-invisible-foreground>>;\n}\n\n.tc-diff-tiddlers th {\n\ttext-align: right;\n\tbackground: <<colour background>>;\n\tfont-weight: normal;\n\tfont-style: italic;\n}\n\n.tc-diff-tiddlers pre {\n    margin: 0;\n    padding: 0;\n    border: none;\n    background: none;\n}\n\n/*\n** Errors\n*/\n\n.tc-error {\n\tbackground: #f00;\n\tcolor: #fff;\n}\n\n/*\n** Tree macro\n*/\n\n.tc-tree div {\n    \tpadding-left: 14px;\n}\n\n.tc-tree ol {\n    \tlist-style-type: none;\n    \tpadding-left: 0;\n    \tmargin-top: 0;\n}\n\n.tc-tree ol ol {\n    \tpadding-left: 1em;    \n}\n\n.tc-tree button { \n    \tcolor: #acacac;\n}\n\n.tc-tree svg {\n     \tfill: #acacac;\n}\n\n.tc-tree span svg {\n    \twidth: 1em;\n    \theight: 1em;\n    \tvertical-align: baseline;\n}\n\n.tc-tree li span {\n    \tcolor: lightgray;\n}\n\nselect {\n        color: <<colour select-tag-foreground>>;\n        background: <<colour select-tag-background>>;\n}\n\n/*\n** Utility classes for SVG icons\n*/\n\n.tc-fill-background {\n\tfill: <<colour background>>;\n}\n\n/*\n** Flexbox utility classes\n*/\n\n.tc-flex {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-flex-column {\n\tflex-direction: column;\n}\n\n.tc-flex-row {\n\tflex-direction: row;\n}\n\n.tc-flex-grow-1 {\n\tflex-grow: 1;\n}\n\n.tc-flex-grow-2 {\n\tflex-grow: 2;\n}\n\n/*\n** Other utility classes\n*/\n\n.tc-small-gap {\n\tmargin-left: .5em;\n\tmargin-right: .5em;\n}\n\n.tc-small-gap-left {\n\tmargin-left: .5em;\n}\n\n.tc-small-gap-right {\n\tmargin-right: .5em;\n}\n\n.tc-big-gap {\n\tmargin-left: 1em;\n\tmargin-right: 1em;\n}\n\n.tc-big-gap-left {\n\tmargin-left: 1em;\n}\n\n.tc-big-gap-right {\n\tmargin-right: 1em;\n}\n\n.tc-word-break {\n\tword-break: break-all;\n}\n"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize",
            "text": "15px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/bodylineheight": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/bodylineheight",
            "text": "22px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/fontsize": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/fontsize",
            "text": "14px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/lineheight": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/lineheight",
            "text": "20px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storyleft": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storyleft",
            "text": "0px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storytop": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storytop",
            "text": "0px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storyright": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storyright",
            "text": "770px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storywidth": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storywidth",
            "text": "770px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth",
            "text": "686px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint",
            "text": "960px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth",
            "text": "350px"
        },
        "$:/themes/tiddlywiki/vanilla/options/stickytitles": {
            "title": "$:/themes/tiddlywiki/vanilla/options/stickytitles",
            "text": "no"
        },
        "$:/themes/tiddlywiki/vanilla/options/sidebarlayout": {
            "title": "$:/themes/tiddlywiki/vanilla/options/sidebarlayout",
            "text": "fixed-fluid"
        },
        "$:/themes/tiddlywiki/vanilla/options/codewrapping": {
            "title": "$:/themes/tiddlywiki/vanilla/options/codewrapping",
            "text": "pre-wrap"
        },
        "$:/themes/tiddlywiki/vanilla/reset": {
            "title": "$:/themes/tiddlywiki/vanilla/reset",
            "type": "text/plain",
            "text": "/*! modern-normalize v1.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n*::before,\n*::after {\n  box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\n:root {\n  -moz-tab-size: 4;\n  tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n  line-height: 1.15; /* 1 */\n  -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n  margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n  font-family:\n    system-ui,\n    -apple-system, /* Firefox supports this but not yet `system-ui` */\n    'Segoe UI',\n    Roboto,\n    Helvetica,\n    Arial,\n    sans-serif,\n    'Apple Color Emoji',\n    'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n  height: 0; /* 1 */\n  color: inherit; /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n  text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n  font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n  font-family:\n    ui-monospace,\n    SFMono-Regular,\n    Consolas,\n    'Liberation Mono',\n    Menlo,\n    monospace; /* 1 */\n  font-size: 1em; /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n  font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n  font-size: 75%;\n  line-height: 0;\n  position: relative;\n  vertical-align: baseline;\n}\n\nsub {\n  bottom: -0.25em;\n}\n\nsup {\n  top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n  text-indent: 0; /* 1 */\n  border-color: inherit; /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  font-family: inherit; /* 1 */\n  font-size: 100%; /* 1 */\n  line-height: 1.15; /* 1 */\n  margin: 0; /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect { /* 1 */\n  text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n  -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n::-moz-focus-inner {\n  border-style: none;\n  padding: 0;\n}\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n:-moz-focusring {\n  outline: 1px dotted ButtonText;\n}\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n:-moz-ui-invalid {\n  box-shadow: none;\n}\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n  padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n  vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n  height: auto;\n}\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n  -webkit-appearance: textfield; /* 1 */\n  outline-offset: -2px; /* 2 */\n}\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n  -webkit-appearance: none;\n}\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n::-webkit-file-upload-button {\n  -webkit-appearance: button; /* 1 */\n  font: inherit; /* 2 */\n}\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n  display: list-item;\n}\n"
        },
        "$:/themes/tiddlywiki/vanilla/settings/fontfamily": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/fontfamily",
            "text": "system-ui, -apple-system, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\""
        },
        "$:/themes/tiddlywiki/vanilla/settings/codefontfamily": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/codefontfamily",
            "text": "\"SFMono-Regular\",Consolas,\"Liberation Mono\",Menlo,Courier,monospace"
        },
        "$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment",
            "text": "fixed"
        },
        "$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize",
            "text": "auto"
        },
        "$:/themes/tiddlywiki/vanilla/sticky": {
            "title": "$:/themes/tiddlywiki/vanilla/sticky",
            "text": "<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\" type=\"match\" text=\"yes\">\n``\n.tc-tiddler-title {\n\tposition: -webkit-sticky;\n\tposition: -moz-sticky;\n\tposition: -o-sticky;\n\tposition: -ms-sticky;\n\tposition: sticky;\n\ttop: 0px;\n\tbackground: ``<<colour tiddler-background>>``;\n\tz-index: 500;\n}\n\n``\n<$list filter=\"[range[100]]\">\n`.tc-story-river .tc-tiddler-frame:nth-child(100n+`<$text text=<<currentTiddler>>/>`) {\nz-index: `<$text text={{{ [[200]subtract<currentTiddler>] }}}/>`;\n}\n`\n</$list>\n</$reveal>\n"
        }
    }
}
20px
26px
18px
25px
50%
50%
67%
60%
0px
60%
100%
fluid-fixed
zoomin

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
Framework for 21st Century Learning


21st century skills comprise skills, abilities, and learning dispositions that have been identified as being required for success in 21st century society and workplaces by educators, business leaders, academics, and governmental agencies. This is part of a growing international movement focusing on the skills required for students to master in preparation for success in a rapidly changing, digital society. Many of these skills are also associated with deeper learning, which is based on mastering skills such as analytic reasoning, complex problem solving, and teamwork. These skills differ from traditional academic skills in that they are not primarily content knowledge-based.[1][2][3]

During the latter decades of the 20th century and into the 21st century, society has undergone an accelerating pace of change in economy and technology. Its effects on the workplace, and thus on the demands on the educational system preparing students for the workforce, have been significant in several ways. Beginning in the 1980s, government, educators, and major employers issued a series of reports identifying key skills and implementation strategies to steer students and workers towards meeting the demands of the changing workplace and society.

The current workforce is significantly more likely to change career fields or jobs. Those in the Baby Boom generation entered the workforce with a goal of stability; subsequent generations are more concerned with finding happiness and fulfillment in their work lives. Young workers in North America are now likely to change jobs at a much higher rate than previously, as much as once every 4.4 years on average.[4][5] With this employment mobility comes a demand for different skills, ones that enable people to be flexible and adaptable in different roles or in different career fields.[6]

As western economies have transformed from industrial-based to service-based, trades and vocations have smaller roles.[7] However, specific hard skills and mastery of particular skill sets, with a focus on digital literacy, are in increasingly high demand.[1][2] People skills that involve interaction, collaboration, and managing others are increasingly important.[8] Skills that enable people to be flexible and adaptable in different roles or in different fields, those that involve processing information and managing people more than manipulating equipment—in an office or a factory—are in greater demand.[9] These are also referred to as "applied skills" or "soft skills",[10] including personal, interpersonal, or learning-based skills, such as life skills (problem-solving behaviors), people skills, and social skills. The skills have been grouped into three main areas:[11]

    Learning and innovation skills: critical thinking and problem solving, communications and collaboration, creativity and innovation
    Digital literacy skills: information literacy, media literacy, Information and communication technologies (ICT) literacy
    Career and life skills: flexibility and adaptability, initiative and self-direction, social and cross-cultural interaction, productivity and accountability

Many of these skills are also identified as key qualities of progressive education, a pedagogical movement that began in the late nineteenth century and continues in various forms to the present.
Contents

    1 Background
    2 The skills
        2.1 Common Core
        2.2 SCANS
        2.3 Partnership for 21st Century Skills (P21)
        2.4 The Four Cs
        2.5 Participatory culture & new media literacies
        2.6 EnGauge 21st century skills
        2.7 OECD competencies
        2.8 American Association of College and Universities
        2.9 ISTE / NETS performance standards
        2.10 ICT Literacy Panel digital literacy standards (2007)
        2.11 Dede learning styles and categories
        2.12 World Economic Forum
        2.13 National Research Council
    3 Implementation
    4 See also
    5 References
    6 External links

Background

Since the early 1980s, a variety of governmental, academic, non-profit, and corporate entities have conducted considerable research to identify key personal and academic skills and competencies they determined were needed for the current and next generation. The identification and implementation of 21st century skills into education and workplaces began in the United States but has spread to Canada,[12][13] the United Kingdom,[14] New Zealand,[15] and through national and international organizations such as APEC[16] and the OECD.[17]

In 1981, the US Secretary of Education created the National Commission on Excellence in Education to examine the quality of education in the United States."[18] The commission issued its report A Nation at Risk: The Imperative for Educational Reform in 1983. A key finding was that "educational reform should focus on the goal of creating a Learning Society."[19] The report's recommendations included instructional content and skills:

Five New Basics: English, Mathematics, Science, Social Studies, Computer Science
Other Curriculum Matters: Develop proficiency, rigor, and skills in Foreign Languages, Performing Arts, Fine Arts, Vocational Studies, and the pursuit of higher-level education.
Skills and abilities (consolidated):[20]

    enthusiasm for learning
    deep understanding
    application of learning
    examination, inquiry, critical thinking and reasoning
    communication – write well, listen effectively, discuss intelligently, be proficient in a foreign language,
    cultural, social, and environmental - understanding and implications
    technology – understand the computer as an information, computation, and communication device, and the world of computers, electronics, and related technologies.
    diverse learning across a broad range - fine arts, performing arts, and vocational

Until the dawn of the 21st century, education systems across the world focused on preparing their students to accumulate content and knowledge.[21] As a result, schools focused on providing literacy and numeracy skills to their students, as these skills were perceived as necessary to gain content and knowledge. [21] Recent developments in technology and telecommunication have made information and knowledge ubiquitous and easily accessible in the 21st century. Therefore, while skills such as literacy and numeracy are still relevant and necessary, they are no longer sufficient. In order to respond to technological, demographic and socio-economic changes, education systems began to make the shift toward providing their students with a range of skills that relied not only on cognition but also on the interdependencies of cognitive, social, and emotional characteristics. [22]

Notable efforts were conducted by the US Secretary of Labor's Commission on Achieving Necessary Skills (SCANS), a national coalition called the Partnership for 21st Century Skills (P21), the international Organisation for Economic Co-operation and Development, the American Association of College and Universities, researchers at MIT and other institutions of higher learning, and private organizations.

Additional research has found that the top skills demanded by U.S. Fortune 500 companies by the year 2000 had shifted from traditional reading, writing and arithmetic to teamwork, problem solving, and interpersonal skills.[23] A 2006 Conference Board survey of some 400 employers revealed that the most important skills for new workforce entrants included oral and written communications and critical thinking/problem solving, ahead of basic knowledge and skills, such as the reading comprehension and mathematics. While the ‘three Rs’ were still considered foundational to new workforce entrants’ abilities, employers emphasized that applied skills like collaboration/teamwork and critical thinking were ‘very important’ to success at work."[24]

A 2006 report from MIT researchers countered the suggestion that students acquire critical skills and competencies independently by interacting with popular culture, noting three continuing trends that suggest the need for policy and pedagogical interventions:"[25]

    The Participation Gap — the unequal access to the opportunities, experiences, skills, and knowledge that will prepare youth for full participation in the world of tomorrow.
    The Transparency Problem — The challenges young people face in learning to see clearly the ways that media shape perceptions of the world.
    The Ethics Challenge — The breakdown of traditional forms of professional training and socialization that might prepare young people for their increasingly public roles as media makers and community participants."

According to labor economists at MIT and Harvard’s Graduate School of Education, the economic changes brought about over the past four decades by emerging technology and globalization, employers’ demands for people with competencies like complex thinking and communications skills has increased greatly.[26] They argue that the success of the U.S. economy will rely on the nation's ability to give students the "foundational skills in problem-solving and communications that computers don’t have."[27]

In 2010, the Common Core State Standards Initiative, an effort sponsored by the National Governors Association (NGA) and the Council of Chief State School Officers (CCSSO), issued the Common Core Standards, calling for the integration of 21st century skills into K-12 curricula across the United States.[28] Teachers and general citizens also played a critical role in its development along with the NGA and CCSSO by commenting during two public forums which helped shape the curriculum and standards. States also convened teams of teachers to assist and provide feedback as well as they looked towards the National Education Association (NEA) and many other education organizations to provide constructive feedback.[29] As of December 2018, 45 states have entirely adopted the common core standards, one state has adopted half by only adopting the literacy section (Minnesota), and only four states remain who have not adopted into the common core standards of education (Alaska, Nebraska, Texas, and Virginia).[30]
The skills

The skills and competencies that are generally considered "21st Century skills" are varied but share some common themes. They are based on the premise that effective learning, or deeper learning, a set of student educational outcomes including acquisition of robust core academic content, higher-order thinking skills, and learning dispositions. This pedagogy involves creating, working with others, analyzing, and presenting and sharing both the learning experience and the learned knowledge or wisdom, including to peers and mentors as well as teachers. This contrasts with more traditional learning methodology that involves learning by rote and regurgitating info/knowledge back to the teacher for a grade. The skills are geared towards students and workers to foster engagement; seeking, forging, and facilitating connections to knowledge, ideas, peers, instructors, and wider audiences; creating/producing; and presenting/publishing. The classification or grouping has been undertaken to encourage and promote pedagogies that facilitate deeper learning through both traditional instruction as well as active learning, project-based learning, problem based learning, and others. A 2012 survey conducted by the American Management Association (AMA) identified three top skills necessary for their employees: critical thinking, communication and collaboration.[31] Below are some of the more readily identifiable lists of 21st century skills.
Common Core

The Common Core Standards issued in 2010 were intended to support the "application of knowledge through higher-order thinking skills." The initiative's stated goals are to promote the skills and concepts required for college and career readiness in multiple disciplines and life in the global economy. Skills identified for success in the areas of literacy and mathematics:[32][33]

    cogent reasoning
    evidence collection
    critical-thinking, problem-solving, analytical thinking
    communication

SCANS

Following the release of A Nation at Risk, the U.S. Secretary of Labor appointed the Secretary's Commission on Achieving Necessary Skills (SCANS) to determine the skills needed for young people to succeed in the workplace to foster a high-performance economy. SCANS focused on what they called "learning a living" system. In 1991, they issued their initial report, What Work Requires of Schools. The report concluded that a high-performance workplace requires workers who have key fundamental skills: basic skills and knowledge, thinking skills to apply that knowledge, personal skills to manage and perform; and five key workplace competencies.[34]

Fundamental Skills

    Basic Skills: reads, writes, performs arithmetic and mathematical operations, listens and speaks.
    Thinking Skills: thinks creatively, makes decisions, solves problems, visualizes, knows how to learn, and reasons
    Personal Qualities: displays responsibility, self-esteem, sociability, self-management, and integrity and honesty

Workplace Competencies

    Resources: identifies, organizes, plans, and allocates resources
    Interpersonal: works with others (participates as member of a team, teaches others new skills, serves clients/customers, exercises leadership, negotiates, works with diversity)
    Information: acquires and uses information (acquires and evaluates, organizes and maintains, and interprets and communicates information; uses computers to process information)
    Systems: understands complex inter-relationships (understands systems, monitors and corrects performance, improves or designs systems)
    Technology: works with a variety of technologies (selects technology, applies technology to task, maintains and troubleshoots equipment)

Partnership for 21st Century Skills (P21)

In 2002 the Partnership for 21st Century Skills (now the Partnership for 21st Century Learning, or P21) was founded as a non-profit organization by a coalition that included members of the national business community, education leaders, and policymakers: the National Education Association (NEA), United States Department of Education, AOL Time Warner Foundation, Apple Computer, Inc., Cable in the Classroom, Cisco Systems, Inc., Dell Computer Corporation, Microsoft Corporation, SAP, Ken Kay (President and Co-Founder), and Dins Golder-Dardis.[35] To foster a national conversation on "the importance of 21st century skills for all students" and "position 21st century readiness at the center of US K-12 education", P21 identified six key skills:[35][36]

    Core subjects.
    21st century content.
    Learning and thinking skills.
    Information and communication technologies (ICT) literacy.
    Life skills.
    21st century assessments.

7C Skills have been identified by P21 senior fellows at P21, Bernie Trilling and Charles Fadel:[11]

    Critical thinking and problem solving
    Creativity and innovation
    Cross-cultural understanding
    Communications, information, and media literacy
    Computing and ICT literacy
    Career and learning self-reliance

The Four Cs

The P21 organization also conducted research that identified deeper learning competencies and skills they called the Four Cs of 21st century learning:

    Collaboration
    Communication
    Critical thinking
    Creativity

The University of Southern California's Project New Literacies website list four different "C" skills:[25]

    Create
    Circulate
    Connect
    Collaborate

Participatory culture & new media literacies
Main article: Participatory culture

Researchers at MIT, led by Henry Jenkins, Director of the Comparative Media Studies Program, in 2006 issued a white paper ("Confronting the Challenges of a Participatory Culture: Media Education for the 21st Century"), that examined digital media and learning.[25] To address this Digital Divide, they recommended an effort be made to develop the cultural competencies and social skills required to participate fully in modern society instead of merely advocating for installing computers in each classroom.[37] What they term participatory culture shifts this literacy from the individual level to a broader connection and involvement, with the premise that networking and collaboration develop social skills that are vital to new literacies. These in turn build on traditional foundation skills and knowledge taught in school: traditional literacy, research, technical, and critical analysis skills.

Participatory culture is defined by this study as having: low barriers to artistic expression and civic engagement, strong support for creating and sharing one's creations, informal mentorship, belief that members' own contributions matter, and social connection (caring what other people think about their creations).[25] Forms of participatory culture include:[25]

    Affiliations — memberships, formal and informal, in online communities centered around various forms of media, such as message boards, metagaming, game clans, and other social media).
    Expressions — producing new creative forms, such as digital sampling, skinning and modding, fan videomaking, fan fiction writing, zines, mash-ups.
    Collaborative Problem-solving — working together in teams, formal and informal, to complete tasks and develop new knowledge (such as through Wikipedia, alternative reality gaming, spoiling).
    Circulations — shaping the flow of media (such as podcasting, blogging).

The skills identified were:[1]

    Play
    Simulation
    Appropriation
    Multitasking
    Distributed Cognition
    Collective Intelligence
    Judgment
    Transmedia Navigation
    Networking
    Negotiation

A 2005 study (Lenhardt & Madden) found that more than one-half of all teens have created media content, and roughly one third of teens who use the Internet have shared content they produced, indicating a high degree of involvement in participatory cultures.[25] Such digital literacies emphasize the intellectual activities of a person working with sophisticated information communications technology, not on proficiency with the tool.[1][38]
EnGauge 21st century skills

In 2003 the North Central Regional Educational Laboratory and the Metiri Group issued a report entitled "enGauge® 21st Century Skills: Literacy in the Digital Age" based on two years of research. The report called for policymakers and educators to define 21st century skills, highlight the relationship of those skills to conventional academic standards, and recognize the need for multiple assessments to measure and evaluate these skills within the context of academic standards and the current technological and global society.[39] To provide a common understanding of, and language for discussing, the needs of students, citizens, and workers in a modern digital society, the report identified four "skill clusters":

    Digital-Age
    Inventive Thinking
    Effective Communication
    High Productivity

OECD competencies

In 1997, member countries of the Organisation for Economic Co-operation and Development launched the Programme for International Student Assessment (PISA) to monitor "the extent to which students near the end of compulsory schooling have acquired the knowledge and skills essential for full participation in society".[8] In 2005 they identified three "Competency Categories to highlight delivery related, interpersonal, and strategic competencies:[40]"

    Using Tools Interactively
    Interacting in Heterogeneous Groups
    Acting Autonomously

American Association of College and Universities

The AAC&U conducted several studies and surveys of their members. In 2007 they recommended that graduates of higher education attain four skills - The Essential Learning Outcomes:[41]

    Knowledge of Human Cultures and the Physical and Natural World
    Intellectual and Practical Skills
    Personal and Social Responsibility
    Integrative Learning

They found that skills most widely addressed in college and university goals are:[42]

    writing
    critical thinking
    quantitative reasoning
    oral communication
    intercultural skills
    information literacy
    ethical reasoning

A 2015 survey of AAC&U member institutions added the following goals:

    analytic reasoning
    research skills and projects
    integration of learning across disciplines
    application of learning beyond the classroom
    civic engagement and competence

ISTE / NETS performance standards

The ISTE Educational Technology Standards (formerly National Educational Technology Standards (NETS)) are a set of standards published by the International Society for Technology in Education (ISTE) to leverage the use of technology in K-12 education.[43][44] These are sometimes intermixed with information and communication technologies (ICT) skills. In 2007 NETS issued a series of six performance indicators (only the first four are on their website as of 2016):

    Creativity and Innovation
    Communication and Collaboration
    Research and Information Fluency
    Critical Thinking, Problem Solving, and Decision Making
    Digital Citizenship
    Technology Operations and Concepts

ICT Literacy Panel digital literacy standards (2007)

In 2007 the Educational Testing Service (ETS) ICT Literacy Panel released its digital literacy standards:[45]

Information and Communication Technologies (ICT) proficiencies:

    Cognitive proficiency
    Technical proficiency
    ICT proficiency

A person possessing these skills would be expected to perform these tasks for a particular set of information: access, manage, integrate, evaluate, create/publish/present. The emphasis is on proficiency with digital tools.[45]
Dede learning styles and categories

In 2005, Chris Dede of the Harvard Graduate School of Education developed a framework based on new digital literacies entitled
Neomillennial Learning Styles:[1]

    Fluency in multiple media
    Active learning based on collectively seeking, sieving, and synthesizing experiences.
    Expression through non-linear, associational webs of representations.
    Co-design by teachers and students of personalized learning experiences.

Dede category system
With the exponential expansion of personal access to Internet resources, including social media, information and content on the Internet has evolved from being created by website providers to individuals and communities of contributors. The 21st century Internet centered on material created by a small number of people, Web 2.0 tools (e.g. Wikipedia) foster online communication, collaboration, and creation of content by large numbers of people (individually or in groups) in online communities.[1]

In 2009, Dede created a category system for Web 2.0 tools:[1]

    Sharing (communal bookmarking, photo/video sharing, social networking, writers’ workshops/fanfiction)
    Thinking (blogs, podcasts, online discussion fora)
    Co-Creating (wikis/collaborative file creation, mashups/collective media creation, collaborative social change communities)

World Economic Forum

In 2015, the World Economic Forum published a report titled ‘New Vision for Education: Unlocking the Potential of Technology’ [46] that focused on the pressing issue of the 21st-century skills gap and ways to address it through technology. In the report, they defined a set of 16 crucial proficiencies for education in the 21st century. Those skills include six “foundational literacies”, four “competencies” and six “character qualities” listed below.

Foundation Literacies

    Literacy and numeracy
    Scientific literacy
    ICT literacy
    Financial literacy
    Cultural literacy
    Civic literacy

Competencies

    Critical thinking/problem solving
    Communication
    Collaboration
    Creativity

Character Qualities

    Initiative
    Persistence/grit
    Adaptability
    Curiosity
    Leadership
    Social and cultural awareness

National Research Council

In a paper titled ‘Education for Life and Work: Developing Transferable Knowledge and Skills in the 21st Century’ [47] produced by the National Research Council of National Academies, the National Research defines 21st century skills, describes how the skills relate to each other and summaries the evidence regarding 21st century skills.

As a first step toward describing “21st century skills,” the National Research Council identified three domains of competence: cognitive, interpersonal, and intrapersonal while recognizing that the three domains while different, are intertwined in human development and learning. These three domains represent distinct facets of human thinking and build on previous efforts to identify and organize dimensions of human behaviour. The committee produced the following cluster of 21st century skills in the above-mentioned 3 domains.

Cognitive Competencies

    Cognitive processes and strategies: Critical thinking, problem solving, analysis, reasoning and argumentation, interpretation, decision-making, adaptive learning
    Knowledge: Information literacy, ICT literacy, oral and written communication, and active listening
    Creativity: Creativity and innovation

Intrapersonal Competencies

    Intellectual openness: Flexibility, adaptability, artistic and cultural appreciation, personal and social responsibility, appreciation for diversity, adaptability, continuous learning, intellectual interest and curiosity
    Work ethic/conscientiousness: Initiative, self-direction, responsibility, perseverance, grit, career orientation, ethics, integrity, citizenship
    Positive core self-evaluation: Self monitoring, self evaluation, self reinforcement, physical and psychological health

Interpersonal Competencies

    Teamwork and collaboration: Communication, collaboration, cooperation, teamwork, coordination, interpersonal skills
    Leadership: Responsibility, assertive communication, self presentation, social influence with others

Implementation

Multiple agencies and organizations have issued guides and recommendation for implementation of 21st century skills in a variety of learning environments and learning spaces. These include five separate educational areas: standards, assessment, professional development, curriculum & instruction, and learning environments.[48][49]

The designs of learning environments and curricula have been impacted by the initiatives and efforts to implement and support 21st century skills with a move away from the factory model school model and into a variety of different organizational models.[50][51] Hands-on learning and project-based learning have resulted in the development of programs and spaces such as STEM and makerspaces. Collaborative learning environments have fostered flexibility in furniture and classroom layout as well as differentiated spaces, such as small seminar rooms near classrooms. Literacy with, and access to, digital technology has impacted the design of furniture and fixed components as students and teachers use tablets, interactive whiteboards and interactive projectors. Classroom sizes have grown to accommodate a variety of furniture arrangements and grouping, many of which are less space-efficient than traditional configurations of desks in rows.[52]
See also

    Applied academics
    Design-based learning
    Information literacies
    Learning environment
    Learning space
    Phenomenon-based learning
    STEM fields

References

Chris Dede, Comparing Frameworks for 21st Century Skills, Harvard Graduate School of Education, 2009. Retrieved 2016-03-09
Stedman Graham, Preparing for the 21st Century: Soft Skills Matter, Huffington Post, April 26, 2015. Retrieved 2016-03-16
Larry Cuban, Content vs. skills in high schools - 21st century arguments echo 19th century conflicts, November 3, 2015. Retrieved 2016-03-12
Job-hopping is the new normal for millennials, Forbes Magazine, August 14, 2012. Retrieved 2016-03-12
Are millennials more likely to switch jobs and employers, Psychology Today, March 29, 2015. Retrieved 2016-03-12
Career changers - 4 tips to determine if your skills are transferable, Forbes Magazine, April 28, 2014. Retrieved 2016-03-12
Futurework - Trends and Challenges for work in the 21st century, US Department of Labor report, Chapter 4 Archived 2016-03-13 at the Wayback Machine. Retrieved 2016-03-12
The Definition and Selection of Key Competencies, OECD, 2005. Retrieved 2016-03-08
21st-century-workplaces Attitudinal Skills for 21st century workplaces, Arbora Archived 2019-07-09 at the Wayback Machine. Retrieved 2016-03-12
"Soft Skills" in Big Demand, Education Week, March 8, 2016. Retrieved 2016-03-09
Trilling, Bernie and Fadel, Charles: 21st Century Skills: Learning for Life in Our Times, Jossey-Bass (publisher), 2009. ISBN 978-0-470-55362-6. Retrieved 2016-03-13
C21 - A Parent's Guide to 21st century learning. Retrieved 2016-03-13
Canadians for 21st century learning and innovation. Retrieved 2016-03-13
21st Century Learning Alliance. Retrieved 2016-03-13
New Zealand Council for Educational Research. Retrieved 2016-03-13
APEC Human Resources Development Working Group Archived 2016-03-15 at the Wayback Machine. Retrieved 2016-03-13
What should student learn in the 21st century? Charles Fadel, Education and Skills Today, May 18, 2012. Retrieved 2016-03-12
Nation at Risk, introduction Retrieved 2016-03-09
Nation at Risk. Retrieved 2016-03-09
Nation at Risk, recommendations. Retrieved 2016-03-09
Care, Esther. "How Education Systems Approach Breadth of Skills". Brookings. Brookings.
Erik Brynjolfsson and Andrew McAfee, The Second Machine Age: Work, Progress, and Prosperity in a Time of Brilliant Technologies (W. W. Norton & Company, 2014)
Cassel, R.N.; Kolstad, R. (1998). "The critical job-skills requirements for the 21st century: Living and working with people". Journal of Instructional Psychology. 25 (3): 176–180.
Are They Ready to Work? Employers' Perspectives on the Basic Knowledge and Applied Skills of New Entrants to the 21st Century U.S. Workforce (PDF). Washington, D.C.: Partnership for 21st Century Skills. 2006.
Jenkins. Retrieved 2016-03-07
Murnane, Richard J.; Levy, Frank (1996). Teaching the New Basic Skills: Principles for Educating Children to Thrive in a Changing Economy. New York: Free Press.
Levy, Frank; Murnane, Richard. Dancing with Robots: Human Skills for Computerized Work (PDF). Third Way.
"Frequently Asked Questions". Common Core State Standards Initiative. Retrieved December 4, 2013.
"Development Process". corestandards.org. Common Core State Standards Initiative. Retrieved 5 December 2018.
"Common Core Standards Adoption by State". ascd.org. ASCD. Retrieved 5 December 2018.
Critical Skills Survey (PDF). New York: American Management Association. 2012.
Common Core Initiative - Read the Standards. Retrieved 2016-03-09
Common Core Initiative - Literacy Standards. Retrieved 2016-03-09
SCANS report 1991. Retrieved 2016-03-08
P21 Our History. Retrieved 2016-03-09
P21 Skills Archived 2010-03-06 at the Wayback Machine. Retrieved 2016-03-09
New Media Literacies webpage. Retrieved 2016-03-08
Confronting the Challenges of Participatory Culture: Media Education for the 21st Century, Henry Jenkins. Retrieved 2016-03-09
enGauge 21st Century Skills Archived 2016-04-03 at the Wayback Machine. Retrieved 2016-03-08
"OECD Core Competencies". oecd.org. OECD. Retrieved 5 December 2018.
Talking Points: AAC&U 2009 Member Survey Findings Archived 2016-03-12 at the Wayback Machine . Retrieved 2016-03-10
AAC&U - Recent Trends in General Education Design, Learning Outcomes, and Teaching Approaches, 2015 Archived 2016-03-12 at the Wayback Machine. Retrieved 2016-03-10
NETS Project(2007). National Educational Technology Standards for Students. ISTE. ISBN 978-1-56484-237-4.
ISTE Standards for Students. Retrieved 2016-03-09
Digital Transformation - A Framework for ICT Literacy. International ICT Literacy Panel. 2007 Archived 2015-02-26 at the Wayback Machine. Retrieved 2016-03-08
http://www3.weforum.org/docs/WEFUSA_NewVisionforEducation_Report2015.pdf
National Academies of Science, National Research Council (2012). Education for Life and Work: Developing Transferable Knowledge and Skills in the 21st Century. National Academies Press. doi:10.17226/13398. ISBN 978-0-309-25649-0.
P21 implementation guide. Retrieved 2016-03-09
Hanover Research, Best Practices in Implementing 21st Century Skills Initiatives Archived 2016-03-12 at the Wayback Machine. Retrieved 2016-03-11
NEA 21st-Century Learner, summer 2011. Retrieved 2016-03-11
Top 10 Characteristics of a 21st Century Classroom, Ed Tech Review, 20 December 2013. Retrieved 2016-03-11

    Making 21st Century Schools - Creating Learner-Centered Schoolplaces/Workplaces for a New Culture of Students at Work, Bob Pearlman, EDUCATIONAL TECHNOLOGY/September–October 2009. Retrieved 2016-03-11

External links

    Seven Survival Skills
    Chris Dede, Comparing Frameworks for "21st Century Skills", Harvard Graduate School, July 2009.
    How Do You Define 21st-Century Learning?
    Making 21st Century Schools - Creating Learner-Centered Schoolplaces/Workplaces for a New Culture of Students at Work, Bob Pearlman
    About eSTEM

Categories:

    Learning methodsPedagogyLearning programsUnited States educational programsCurriculaCollaborationSkillsLearning

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    বাংলা
    Español
    فارسی
    한국어
    हिन्दी
    Bahasa Melayu
    日本語
    中文

Edit links

    This page was last edited on 13 May 2021, at 12:06 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! A Declaration of the Independence of Cyberspace
!! by John Perry Barlow 

Governments of the Industrial World, you weary giants of flesh and steel, I come from Cyberspace, the new home of Mind. On behalf of the future, I ask you of the past to leave us alone. You are not welcome among us. You have no sovereignty where we gather.

We have no elected government, nor are we likely to have one, so I address you with no greater authority than that with which liberty itself always speaks. I declare the global social space we are building to be naturally independent of the tyrannies you seek to impose on us. You have no moral right to rule us nor do you possess any methods of enforcement we have true reason to fear.

Governments derive their just powers from the consent of the governed. You have neither solicited nor received ours. We did not invite you. You do not know us, nor do you know our world. Cyberspace does not lie within your borders. Do not think that you can build it, as though it were a public construction project. You cannot. It is an act of nature and it grows itself through our collective actions.

You have not engaged in our great and gathering conversation, nor did you create the wealth of our marketplaces. You do not know our culture, our ethics, or the unwritten codes that already provide our society more order than could be obtained by any of your impositions.

You claim there are problems among us that you need to solve. You use this claim as an excuse to invade our precincts. Many of these problems don't exist. Where there are real conflicts, where there are wrongs, we will identify them and address them by our means. We are forming our own [[Social Contract | Social Contract]]. This governance will arise according to the conditions of our world, not yours. Our world is different.

Cyberspace consists of transactions, relationships, and thought itself, arrayed like a standing wave in the web of our communications. Ours is a world that is both everywhere and nowhere, but it is not where bodies live.

We are creating a world that all may enter without privilege or prejudice accorded by race, economic power, military force, or station of birth.

We are creating a world where anyone, anywhere may express his or her beliefs, no matter how singular, without fear of being coerced into silence or conformity.

Your legal concepts of property, expression, identity, movement, and context do not apply to us. They are all based on matter, and there is no matter here.

Our identities have no bodies, so, unlike you, we cannot obtain order by physical coercion. We believe that from ethics, enlightened self-interest, and the commonweal, our governance will emerge. Our identities may be distributed across many of your jurisdictions. The only law that all our constituent cultures would generally recognize is the Golden Rule. We hope we will be able to build our particular solutions on that basis. But we cannot accept the solutions you are attempting to impose.

In the United States, you have today created a law, the Telecommunications Reform Act, which repudiates your own Constitution and insults the dreams of Jefferson, Washington, Mill, Madison, DeToqueville, and Brandeis. These dreams must now be born anew in us.

You are terrified of your own children, since they are natives in a world where you will always be immigrants. Because you fear them, you entrust your bureaucracies with the parental responsibilities you are too cowardly to confront yourselves. In our world, all the sentiments and expressions of humanity, from the debasing to the angelic, are parts of a seamless whole, the global conversation of bits. We cannot separate the air that chokes from the air upon which wings beat.

In China, Germany, France, Russia, Singapore, Italy and the United States, you are trying to ward off the virus of liberty by erecting guard posts at the frontiers of Cyberspace. These may keep out the contagion for a small time, but they will not work in a world that will soon be blanketed in bit-bearing media.

Your increasingly obsolete information industries would perpetuate themselves by proposing laws, in America and elsewhere, that claim to own speech itself throughout the world. These laws would declare ideas to be another industrial product, no more noble than pig iron. In our world, whatever the human mind may create can be reproduced and distributed infinitely at no cost. The global conveyance of thought no longer requires your factories to accomplish.

These increasingly hostile and colonial measures place us in the same position as those previous lovers of freedom and self-determination who had to reject the authorities of distant, uninformed powers. We must declare our virtual selves immune to your sovereignty, even as we continue to consent to your rule over our bodies. We will spread ourselves across the Planet so that no one can arrest our thoughts.

We will create a civilization of the Mind in Cyberspace. May it be more humane and fair than the world your governments have made before.

Davos, Switzerland
February 8, 1996
! A Guide for the Perplexed

!! https://en.wikipedia.org/wiki/A_Guide_for_the_Perplexed

From Wikipedia, the free encyclopedia

!!! This article is about the 1977 book by E.F. Schumacher. For the 12th-century book by Maimonides, see The Guide for the Perplexed. For the 2001 novel by Gilad Atzmon, see A Guide to the Perplexed.
A Guide for the Perplexed A Guide for the Perplexed 1977.png
First edition (US)
Author	E. F. Schumacher
Genre	Non-fiction
Published	1977
Publisher	Harper & Row (US)
Jonathan Cape (UK)
Pages	160 pages
ISBN	978-0-06-090611-5

A Guide for the Perplexed is a short book by E. F. Schumacher, published in 1977. The title is a reference to Maimonides's The Guide for the Perplexed. Schumacher himself considered A Guide for the Perplexed to be his most important achievement, although he was better known for his 1973 environmental economics bestseller Small Is Beautiful, which made him a leading figure within the ecology movement. His daughter wrote that her father handed her the book on his deathbed, five days before he died and he told her "this is what my life has been leading to".[1] As the Chicago Tribune wrote, "A Guide for the Perplexed is really a statement of the philosophical underpinnings that inform Small Is Beautiful".

Schumacher describes his book as being concerned with how humans live in the world. It is also a treatise on the nature and organisation of knowledge and is something of an attack on what Schumacher calls "materialistic scientism". Schumacher argues that the current philosophical "maps" that dominate western thought and science are both overly narrow and based on some false premises. However, this book is only in small part a critique.
Contents

    1 Four Great Truths
    2 Critique of materialistic scientism
        2.1 Evolutionism
    3 Levels of being
        3.1 Progressions
        3.2 Implications
    4 Adequateness
    5 Four fields of knowledge
    6 Two types of problems
    7 Art
    8 Tasks of humanity
    9 Reviews
    10 Footnotes
    11 References

Four Great Truths

Schumacher put forward what he considers to be the four great truths of philosophy:

    The world is a hierarchical structure with at least four "levels of being".
    The "Principle of Adequateness" determines human ability to accurately perceive the world.
    Human learning relates to four "fields of knowledge".
    The art of living requires an understanding of two types of problem: "convergent" and "divergent".

Critique of materialistic scientism

Schumacher was very much in favor of the scientific spirit, but felt that the dominant methodology within science, which he called materialistic scientism, was flawed and stood in the way of achieving knowledge in any other arena than inanimate nature. Schumacher believed that this flaw originated in the writings of Descartes and Francis Bacon, when modern science was first established.

He makes a distinction between the descriptive and instructional sciences. According to Schumacher the descriptive sciences are primarily concerned with what can be seen or otherwise experienced, e.g. botany and sociology, while the instructional sciences are concerned with how certain systems work and can be manipulated to produce certain results, e.g. biology and chemistry. Instructional science is primarily based on evidence gained from experimentation.

Materialistic scientism is based on the methodology of the latter, which developed to study and experiment with inanimate matter. According to Schumacher many philosophers of science fail to recognize the difference between descriptive and instructional science, or ascribe this difference to stages in the evolution of a specific science, which for these philosophers means that the instructional sciences are seen as being the most advanced variety of science.

He is particularly offended by the view that instructional science is the most advanced form of science, because for Schumacher, it is the study of the low hanging fruit of inanimate matter, or less metaphorically the study of the lowest and least complex level of being. As Schumacher sees it, knowledge gained about the higher levels of being, while far harder to get and far less certain, is all the more valuable.

He argues that applying the standards and procedures of instructional science to descriptive sciences is erroneous, because in the descriptive fields it is simply not possible to use the experimental techniques of instructional sciences. Experimentation is an appropriate method when dealing with inanimate matter, but applying it to the living world is liable to destroy or damage living things and systems, and is therefore inappropriate.

He uses the term scientism because he argues that many people, including some philosophers of science, have misunderstood the theory behind instructional science and instead believe that it produces truth. But the instructional sciences are based on induction; and as David Hume famously points out induction is not the same as truth. Furthermore, according to Schumacher, instructional sciences are primarily concerned only with the parts of truth that are useful for manipulation, i.e. they focus on those instructions which are necessary to reliably produce certain results. For Schumacher, instructional sciences therefore produce theories which are useful: pragmatic truths. By contrast, Schumacher argues that the descriptive sciences are interested in the truth in the wider sense of the word.

He argues that materialistic scientism follows a policy of leaving something out if it is in doubt. Consequently, the maps of western science fail to show large 'unorthodox' parts of both theory and practice of science and social science, and reveal a complete disregard for art and many other high level humanistic qualities. Such an approach, Schumacher argues, provides a grey, limited, utilitarian worldview without room for vitally important phenomena like beauty and meaning.

He observes that the mere mention of spirituality and spiritual phenomena in academic discussion is seen among scientists as a sign of 'mental deficiency' . Schumacher argues that where there is near total agreement a subject becomes effectively dead; it therefore is the subjects where there is doubt that deserve the most intense research. Schumacher believes in contrast to materialistic science that what is in doubt should be shown prominently, not hidden away or ignored.

His biggest complaint against materialistic scientism is that it rejects the validity of certain questions, which for Schumacher are actually the most important questions of all. Materialistic scientism rejects the idea of levels of being, but for Schumacher this leads to a one-sided view of nature. For Schumacher, you can learn much about humanity by studying from the perspective of minerals, plants and animals, because humans contain the lower levels of being. But that is not the full or even the most important part of the story, as he puts "...everything can be learned about him except that which makes us human."
Evolutionism

Schumacher first states that the evolutionist doctrine clearly sits in the descriptive sciences rather than instructive sciences. Schumacher accepts that evolution as a generalization within the descriptive science of biological change has been established beyond any doubt whatsoever. However, he considers the 'evolutionist doctrine' to be a very different matter. The evolutionist doctrine purports to prove and explain biological change in the same manner as the proof and explanation offered by the instructional sciences. Schumacher quotes the 1975 Encyclopædia Britannica as an example of this view "Darwin did two things: he showed that evolution was in fact contradicting scriptural legends of creation and that its cause, natural selection, was automatic leaving no room for divine guidance or design."[1]

He considers the evolutionist doctrine to be a major philosophical and scientific error. Schumacher argues that the evolutionist doctrine starts with the perfectly reasonable explanation of change in living beings, and then jumps to using it as an explanation for the development of consciousness, self-awareness, language, social institutions and the origin of life itself. Schumacher points out that making this conceptual leap simply does not meet the standards of scientific rigor and the uncritical acceptance of this leap is, for Schumacher, completely unscientific.
Levels of being

For Schumacher one of science's major mistakes has been rejecting the traditional philosophical and religious view that the universe is a hierarchy of being. Schumacher makes a restatement of the traditional chain of being.

He agrees with the view that there are four kingdoms: Mineral, Plant, Animal, Human. He argues that there are important differences of kind between each level of being. Between mineral and plant is the phenomenon of life. Schumacher says that although scientists say we should not use the phrase 'life energy', the difference still exists and has not been explained by science[clarification needed]. Schumacher points out that though we can recognize life and destroy it, we can't create it. Schumacher notes that the 'life sciences' are 'extraordinary' because they hardly ever deal with life as such, and instead content themselves with analyzing the "physico-chemical body which is life's carrier." Schumacher goes on to say there is nothing in physics or chemistry to explain the phenomenon of life.

For Schumacher, a similar jump in level of being takes place between plant and animal, which is differentiated by the phenomenon of consciousness. We can recognize consciousness, not least because we can knock an animal unconscious, but also because animals exhibit at minimum primitive thought and intelligence.

The next level, according to Schumacher, is between Animal and Human, which are differentiated by the phenomenon of self-consciousness or self awareness. Self-consciousness is the reflective awareness of one's consciousness and thoughts.

Schumacher realizes that the terms—life, consciousness and self-consciousness—are subject to misinterpretation so he suggests that the differences can best be expressed as an equation which can be written thus:

    "Mineral" = m
    "Plant" = m + x
    "Animal" = m + x + y
    "Human" = m + x + y + z

In his theory, these three factors (x, y and z) represent ontological discontinuities. He argues that the differences can be likened to differences in dimension; and from one perspective it could be argued that only humans have actualized existence insofar as they possess life, consciousness and self-consciousness. Schumacher uses this perspective to contrast with the materialistic scientism view, which argues that what is true is inanimate matter, denying the realness of life, consciousness and self-consciousness, despite the fact each individual can verify those phenomena from their own experience.

He directs our attention to the fact that science has generally avoided seriously discussing these discontinuities, because they present such difficulties for strictly materialistic science, and they largely remain mysteries.

Next he considers the animal model of humanity which has grown popular in science. Schumacher notes that within the humanities the distinction between consciousness and self consciousness is now seldom drawn. Consequently, people have become increasingly uncertain about whether there is any difference between animals and humans. Schumacher notes that a great deal of research about humans has been conducted by studying animals. Schumacher argues that this is analogous to studying physics in the hope of understanding life. Schumacher goes on to say that much can be learned about humanity by studying minerals, plants and animals because humans have inherited those levels of being: all, that is, "except that which makes him [sic] human."

Schumacher goes on to say that nothing is "more conducive to the brutalisation of the modern world" than calling humans the "naked ape". Schumacher argues that once people begin viewing humans as "animal machines" they soon begin treating them accordingly.[2]

Schumacher argues that what defines humanity are our greatest achievements, not the common run of the mill things. He argues that human beings are open-ended because of self-awareness, which as distinct from life and consciousness has nothing mechanical or automatic about it. For Schumacher "the powers of self awareness are, essentially, a limitless potentiality rather than an actuality. They have to be developed and 'realized' by each human individual if one is to become truly human, that is to say, a person."[3]
Progressions

Schumacher points out that there are a number of progressions that take place between the levels. The most striking he believes is the movement from passivity to activity, there is a change in the origination of movement between each level:

    Cause (Mineral kingdom)
    Stimulus (Plant kingdom)
    Motive (Animal kingdom)
    Will (Humanity)

One consequence of this progression is that each level of being becomes increasingly unpredictable, and it is in this sense that humans can be said to have free will.

He notes increasing integration is a consequence of levels of being. A mineral can be subdivided and it remains of the same composition. Plants are more integrated; but sometimes parts of a plant can survive independently of the original plant. Animals are physically integrated; and so an appendage of an animal does not make another animal. However, while animals are highly integrated physically, they are not integrated in their consciousness. Humans, meanwhile, are not only physically integrated but have an integrated consciousness; however they are poorly integrated in terms of self-consciousness.

Another interesting progression, for him, is the change in the richness of the world at each level of being. A mineral has no world as such. A plant has some limited awareness of its immediate conditions. An animal, however, has a far more rich and complex world. Finally, humans have the most rich and complicated world of all.
Implications

For Schumacher, recognizing these different levels of being is vital, because the governing rules of each level are different, which has clear implications for the practice of science and the acquisition of knowledge. Schumacher denies the democratic principles of science. He argues that all humans can practice the study of the inanimate matter, because they are a higher level of being; but only the spiritually aware can know about self-consciousness and possibly higher levels. Schumacher states that "while the higher comprises and therefore in a sense understands the lower, no being can understand anything higher than themselves."[2]

Schumacher argues that by removing the vertical dimension from the universe and the qualitative distinctions of "higher" and "lower" qualities which go with it, materialistic scientism can in the societal sphere only lead to moral relativism and utilitarianism. While in the personal sphere, answering the question "What do I do with my life?" leaves us with only two answers: selfishness and utilitarianism.

In contrast, he argues that appreciating the different levels of being provides a simple but clear morality. The traditional view, as Schumacher says, has always been that the proper goal of humanity is "...to move higher, to develop one's highest faculties, to gain knowledge of the higher and highest things, and, if possible, to "see God". If one moves lower, develops only one's lower faculties, which we share with the animals, then one makes oneself deeply unhappy, even to the point of despair."[2] This is a view, Schumacher says, which is shared by all the major religions. Many things, Schumacher says, while true at a lower level, become absurd at a higher level, and vice versa.

Schumacher does not claim there is any scientific evidence for a level of being above self-consciousness, contenting himself with the observation that this has been the universal conviction of all major religions.
Adequateness

Schumacher explains that the bodily senses are adequate for perceiving inanimate matter; but we need 'intellectual' senses for other levels. Schumacher observes that science has shown that we perceive not only with the senses, but also with the mind. He illustrates this with the example of a complex scientific book; it means quite different things to an animal, illiterate man, educated man and scientist. Each person possesses different internal 'senses' which means they 'understand' the book in quite different manners.

He argues that the common view that "...the facts should speak for themselves" is problematic because it is not a simple matter to distinguish fact and theory or perception and interpretation. He quotes R. L. Gregory in Eye and Brain, "Perception is not determined simply by the stimulus pattern, rather it is a dynamic searching for the best interpretation of data."[3] He argues that we 'see' not just with our eyes; but our mental equipment and "since this mental equipment varies greatly from person to person, there are inevitably many things which some people can 'see' while others cannot, or, to put it differently, for which some people are adequate while others are not."[3]

For him, higher and more significant perceptive abilities are based on the ability to be critically aware of one's presuppositions. Schumacher writes "There is nothing more difficult than to be aware of one's thought. Everything can be seen directly except the eye through which we see. Every thought can be scrutinised directly except the thought by which we scrutinise. A special effort, an effort of self-awareness is needed — that almost impossible feat of thought recoiling upon itself: almost impossible but not quite. In fact, this is the power that makes man human and also capable of transcending his humanity."[4]

He notes that for anyone who views the world through materialistic scientism this talk of higher perception is meaningless. For a scientist who believes in materialistic scientism, higher levels of being "simply do not exist, because his faith excludes the possibility of their existence."[5]

He points out that materialistic science is principally based on the sense of sight and looks only at the external manifestation of things. Necessarily according to the principle of adequateness, materialistic science cannot know more than a small portion of nature. Schumacher argues that by restricting the modes of observation, a limited "objectivity" can be attained; but this is attained at the expense of knowledge of the object as a whole. Only the 'lowest' and most superficial aspects are accessible to objective scientific instruments.

He notes that science became "science for manipulation" following Descartes. Descartes promised humanity would become "masters and possessors of nature", a point of view first popularised by Francis Bacon. For Schumacher this was something of a wrong turn, because it meant the devaluation of "science for understanding" or wisdom. One of Schumacher's criticisms is that "science for manipulation" almost inevitably leads from the manipulation of nature to the manipulation of people. Schumacher argues that 'science for manipulation' is a valuable tool when subordinated for wisdom; but until then "science for manipulation" has become a danger to humanity.

Schumacher argues that if materialistic scientism grows to dominate science even further, then there will be three negative consequences:

    Quality of life will fall, because solutions of quantity are incapable of solving problems of quality.
    'Science for understanding' will not develop, because the dominant paradigm will prevent it being treated as a serious subject.
    Problems will become insoluble, because the higher powers of man will atrophy through lack of use.

Schumacher argues that the ideal science would have a proper hierarchy of knowledge from pure knowledge for understanding at the top of the hierarchy to knowledge for manipulation at the bottom. At the level of knowledge for manipulation, the aims of prediction and control are appropriate. But as we deal with higher levels they become increasingly absurd. As he says "Human beings are highly predictable as physico-chemical systems, less predictable as living bodies, much less so as conscious beings and hardly at all as self aware persons."[6]

The result of materialistic scientism is that humanity has become rich in means and poor in ends. Lacking a sense of higher values Western societies are left with pluralism, moral relativism and utilitarianism, and for Schumacher the inevitable result is chaos.
Four fields of knowledge

Schumacher identifies four fields of knowledge for the individual:

    I → inner
    I → other persons (inner)
    other persons → I
    I → the world

These four fields arise from combining two pairs: Myself and the World; and Outer Appearance and Inner Experience. He notes that humans only have direct access to fields one and four.

Field one is being aware of your feelings and thoughts and most closely correlates to self awareness. He argues this is fundamentally the study of attention. He differentiates between when your attention is captured by the item it focuses upon, which is when a human being functions much like a machine; and when a person consciously directs their attention according to their choosing. This for him is the difference between being lived and living.

Field two is being aware of what other people are thinking and feeling.

Despite these problems we do experience a 'meeting of minds' with other individuals at certain times. People are even able to ignore the words actually said, and say something like "I don't agree with what you are saying; but I do agree with what you mean." Schumacher argues that one of the reasons we can understand other people is through bodily experience, because so many bodily expressions, gestures and postures are part of our common human heritage.

Schumacher observes that the traditional answer to the study of field two has been "You can understand others to the extent you understand yourself."[7] Schumacher points out that this a logical development of the principle of adequateness, how can you understand someone's pain unless you too have experienced pain?

Field three is understanding yourself as an objective phenomenon. Knowledge in field three requires you to be aware what other people think of you. Schumacher suggests that the most fruitful advice in this field can be gained by studying the Fourth Way concept of external considering.

Schumacher observes that relying on just field one knowledge makes you feel that you are the centre of the universe; while focusing on field three knowledge makes you feel that you are far more insignificant. Seeking self-knowledge via both fields provides more balanced and accurate self-knowledge.

Field four is the behaviourist study of the outside world. Science is highly active in this area of knowledge and many people believe it is the only field in which true knowledge can be gained. For Schumacher, applying the scientific approach is highly appropriate in this field.

Schumacher summarises his views about the four fields of knowledge as follows:

    Only when all four fields of knowledge are cultivated can you have true unity of knowledge. Instruments and methodologies of study should be only applied to the appropriate field they are designed for.
    Clarity of knowledge depends on relating the four fields of knowledge to the four levels of being.
    The instructional sciences should confine their remit to field four, because it is only in the field of appearances that mathematical precision can be obtained. The descriptive sciences, however, are not behaving appropriately if they focus solely on appearances, and must delve in meaning and purpose or they will produce sterile results.
    Self-knowledge can only be effectively pursued by balanced study of field one and field three.
    Study of field two (understanding other individuals) is dependent on first developing a powerful insight into field one (self awareness).

Two types of problems
See also: Convergent thinking and Divergent thinking

Schumacher argues that there are two types of problems in the world: convergent and divergent. For him, discerning whether a problem is convergent or divergent is one of the arts of living.

Convergent problems are ones in which attempted solutions gradually converge on one solution or answer. An example of this has been the development of the bicycle. Early attempts at developing human-powered vehicles included three- and four-wheelers and involved wheels of different sizes. Modern bicycles look much the same nowadays.

Divergent problems are ones which do not converge on a single solution. A classic example he provides is that of education. Is discipline or freedom the best way to teach? Education researchers have debated this issue for thousand of years without converging on a solution.

He summarises by saying that convergent problems are those that are concerned with the non-living universe. While divergent problems are concerned with the universe of the living, and so there is always a degree of inner experience and freedom to contend with. According to Schumacher, the only solution to divergent problems is to transcend them, arguing that in education, for instance, that the real solution involves love or caring; love and discipline work effectively, but so does love and freedom.
Art

Schumacher in a digression from his main argument discusses the nature and importance of art. He notes that there is considerable confusion about the nature and meaning of art; but argues that this confusion dissipates when one considers art with relation to its effect on human beings. Most art fits into two categories. If art is designed to primarily affect our feelings then it is entertainment; while if art is primarily designed to affect our will then it is propaganda.

Great art is a multi-faceted phenomenon, which is not content to be merely propaganda or entertainment; but by appealing to people's higher intellectual and emotional faculties, it is designed to communicate truth. When entertainment and propaganda are transcended by, and subordinated to the communication of truth, art helps develop our higher faculties and that makes it great.
Tasks of humanity

Schumacher notes that within philosophy there is no field in more disarray than ethics. He argues that this is because most ethical debate sidesteps any "prior clarification of the purpose of human life on the earth."[8] Schumacher believes that ethics is the study of divergent problems; which require transcendence by the individual, not a new type of ethics to be adopted by all.

He argues that there is an increasing recognition among individuals that many solutions to human problems must be made by individuals not by society, and cannot be solved by political solutions that rearrange the system. For Schumacher, the "modern attempt to live without religion has failed."

He says that the tasks of an individual can be summed up as follows:

    Learn from society and tradition.
    Interiorize this knowledge, learn to think for yourself and become self-directed.
    Grow beyond the narrow concerns of the ego.

Humanity, he says, in the larger sense must learn again to subordinate the sciences of manipulation to the sciences of wisdom; a theme he further develops in his book Small Is Beautiful.
Reviews

The reviews of this book include:

    America v. 138 (February 11, 1978).
    Best Sellers v. 37 (December 1977).
    Choice v. 15 (September 1978).
    The Christian Century v. 94 (October 12, 1977).
    The Christian Science Monitor (Eastern edition) (September 28, 1977).
    Commonweal v. 105 (April 14, 1978).
    Critic v. 36 (spring 1978).
    The Economist v. 265 (October 1, 1977).
    Library Journal (1876) v. 102 (October 1, 1977).
    The New York Times Book Review (October 2, 1977).
    New Statesman (London, England: 1957) v. 94 (October 7, 1977).

Footnotes

Pearce 2008, p. 25.
Pearce 2008, p. 22.
Pearce 2008, p. 32.
Pearce 2008, p. 54.
Pearce 2008, p. 55.
Pearce 2008, 68.
Pearce 2008, p. 95.

    Pearce 2008, p. 146.

References

    Schumacher, E.F. (1977). A Guide for the Perplexed. (ISBN 978-0-224-01496-0; paperback, ISBN 978-0-06-090611-5). (Chapter 2)
    Pearce, Joseph (2008). "The Education of E.F. Schumacher". God Spy.

Categories:

    1977 non-fiction booksPhilosophy booksCognitive science literature

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Español
    日本語

Edit links

    This page was last edited on 5 May 2021, at 23:32 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! A Guide to the Perplexed

!! https://en.wikipedia.org/wiki/A_Guide_to_the_Perplexed

From Wikipedia, the free encyclopedia
!!! 
!!! This article is about the novel by Gilad Atzmon. For the book by Maimonides, see The Guide for the Perplexed. For the book by E.F. Schumacher, see A Guide for the Perplexed.
A Guide to the Perplexed A Guide to the Perplexed.jpg
Author	Gilad Atzmon
Translator	Philip Simpson
Country	United States
Language	English
Genre	Novel
Publisher	Serpent's Tail (Eng. trans.)
Publication date
	2001
Media type	Print (Paperback)
ISBN	1-85242-826-0

A Guide to the Perplexed (originally in Hebrew: מוֹרֵה נְבוּכִים‎, Mōrē Nəḇūḵīm) is a novel written in 2001 by British musician and anti-Zionist campaigner[1] Gilad Atzmon, who has been described as antisemitic.[2][3][4]
Contents

    1 Synopsis
    2 Reviews
    3 Translations
    4 References

Synopsis

The novel is presented in the form of unfinished memoirs of one Professor Gunther Wünker, born in Ramat Gan, Israel in the 1960s, an anti-Zionist and the founder of the philosophical school of 'Peepology' (the science of peep-show voyeurism). The novel takes place in a fictitious near-future period, some 40 years after the State of Israel is dismantled and replaced with the State of Palestine. The novel excoriates what it calls exploitation of The Holocaust for propaganda purposes designed to shield Israel from scrutiny for its "transgressions" against the Palestinians. The perplexed is defined as "the unthinking chosen" who "cling to clods of earth that don't belong to them".
Reviews

Jeffrey St. Clair in CounterPunch described it as "vividly written satire, infused with a ribald sense of humor and an unsparing critique of the incendiary political cauldron of the Mideast" which criticises what it describes as "the commercialization of the Holocaust, suggesting that such uses amount to a trivialisation of one of history’s greatest horrors" and "argues that the Holocaust is invoked as a kind of reflexive propaganda designed to shield the Zionist state from responsibility for any transgression against Palestinians".[5] Matthew J. Reisz for The Independent wrote that "As a viciously black satire on Israeli life" the book "is grandiose, childish and nasty, but with just enough connection with reality to give it a certain unsettling power"[6] while Darren King in The Observer commented that "it works because Atzmon writes with so much style and his gags are so hilarious".[7]
Translations

The English translation by Philip Simpson was published by Serpent's Tail.[8] The Spanish translation La Guia de Perplejos was published by Emece Editores.[citation needed] It has also been translated into German by Gabriela Hegedus as Anleitung für Zweifelnde.[citation needed]
References

John Lewis "Manic beat preacher", The Guardian, 6 March 2009
Gidley, Ben (2017-10-30). "Why Are U.K. Progressives Still Celebrating a Grotesque anti-Semite and Holocaust Denier?". Haaretz. Retrieved 2020-05-03.
Elgot, Jessica (21 December 2018). "Labour MP apologises for backing 'antisemitic' jazz musician". The Guardian.
Edmunds, Donna Rachel (16 June 2020). "Lauded 'anti-racism activist' has ties to Holocaust denial group". Jerusalem Post.
St. Clair, Jeffrey (17 July 2003). "Gilad Atzmon's A Guide to the Perplexed". CounterPunch. Retrieved 19 June 2020.
Reisz, Matthew J. (7 December 2002). "A Guide to the Perplexed, by Gilad Atzmon, trans. Philip Simpson". The Independent. Retrieved 21 August 2016.
King, Darren (25 January 2003). "Mr. Peepology". The Observer. Retrieved 21 August 2016.

    https://www.theguardian.com/books/2003/jan/25/featuresreviews.guardianreview16


Stub icon	

This article about a 2000s novel is a stub. You can help Wikipedia by expanding it.

See guidelines for writing about novels. Further suggestions might be found on the article's talk page.
Categories:

    2001 novels21st-century Israeli novelsNovels set in IsraelBooks critical of Zionism2000s novel stubs

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

Add links

    This page was last edited on 7 February 2021, at 10:27 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

Welcome to ''Stroll'', a notetaking tool built with the ~TiddlyWiki platform, imitating a number of features of Roam: 

*bi-directional links, 
*autocomplete suggestions for linking, 
*renaming of links upon changing tiddler titles, 
*and side-by-side editing of multiple notes. 

Stroll is a new souped up replacement for our previous project, [[TiddlyBlink|https://giffmex.org/gifts/tiddlyblink.html]]. It is designed for use with a wide screen - probably not ideal for use on a phone or small tablet.

The best way to see what Stroll can do is play with it. This interactive tutorial will give you a hands-on overview.

Use the tabs to the left to take a tour of its features. You can download an empty version of Stroll [ext[here|https://giffmex.org/stroll/empty.html]].
! Absorption (psychology)

!! https://en.wikipedia.org/wiki/Absorption_(psychology)

From Wikipedia, the free encyclopedia

Absorption is a disposition or personality trait in which a person becomes absorbed in their mental imagery, particularly fantasy.[1] This trait thus correlates highly with a fantasy-prone personality. The original research on absorption was by American psychologist Auke Tellegen.[2] The construct of absorption was developed in order to relate individual differences in hypnotisability to broader aspects of personality. Absorption has a variable correlation with hypnotisability (r = 0.13–0.89) perhaps because in addition to broad personality dispositions, situational factors play an important role in performance on tests of hypnotic susceptibility.[1] Absorption is one of the traits assessed in the Multidimensional Personality Questionnaire.
Contents

    1 Measurement
    2 Relationship to other personality traits
    3 Emotional experience
    4 Altered states of consciousness
        4.1 Dream recall
    5 See also
    6 References

Measurement

Absorption is most commonly measured by the Tellegen Absorption Scale (TAS).[3] Several versions of this scale are available, the most recent being by Graham Jamieson, who provides a copy of his modified scale.[4] The TAS comprises nine content clusters or subscales:[5]

    responsiveness to engaging stimuli
    responsiveness to inductive stimuli
    imagistic thought
    ability to summon vivid and suggestive images
    cross-modal experiences—e. g.: synesthesia
    absorption in thoughts and imaginings
    vivid memories of the past
    episodes of expanded awareness
    altered states of consciousness

A 1991 study by Glisky et al. concluded that responsiveness to the engaging or inductive stimuli subscales of the TAS were more strongly related to hypnotisability than were imagistic thought, episodes of expanded awareness, or absorption in thoughts and imaginings.[5]

A revised version of the TAS has been included in Tellegen's Multidimensional Personality Questionnaire (MPQ)[6] in which it is considered both a primary and a broad trait.[7] In the MPQ, absorption has two subscales called "sentient" and "prone to imaginative and altered states" respectively.

Tellegen has assigned copyright of TAS to the University of Minnesota Press (UMP). It was generally believed from the 1990s that the TAS was now in the public domain, and various improved versions were circulated. However, recently[when?] the UMP has reasserted its copyright, and regards these later versions to be unauthorised, and also disputes whether these versions are in fact improvements.[citation needed]
Relationship to other personality traits

Absorption is strongly correlated with openness to experience.[6] Studies using factor analysis have suggested that the fantasy, aesthetics, and feelings facets of the NEO PI-R Openness to Experience scale are closely related to absorption and predict hypnotisability, whereas the remaining three facet scales of ideas, actions, and values are largely unrelated to these constructs.[5] Absorption is unrelated to extraversion or neuroticism.[5] One study found a positive correlation between absorption and need for cognition.[8] Absorption has a strong relationship to self-transcendence in the Temperament and Character Inventory.[9]
Emotional experience

Absorption can facilitate the experience of both positive and negative emotions. Positive experiences facilitated by absorption include the enjoyment of music, art, and natural beauty (e.g. sunsets) and pleasant forms of daydreaming. Absorption has also been linked to forms of maladjustment, such as nightmare frequency and anxiety sensitivity (fear of one's own anxiety symptoms), and dissociative symptoms. Absorption may act to amplify minor somatic symptoms, leading to an increased risk of conditions associated with hypersensitivity to internal bodily sensations, such as somatoform disorders and panic disorder. People may have a particular risk of the aforementioned problems when they are prone to both high absorption and to personality traits associated with negative emotionality.[10]
Altered states of consciousness

A core feature of absorption is an experience of focused attention wherein: "objects of absorbed attention acquire an importance and intimacy that are normally reserved for the self and may, therefore, acquire a temporary self-like quality. These object identifications have mystical overtones."[2] This capacity for focused attention facilitates the experience of altered states of consciousness. In addition to individual differences in hypnotizability, absorption is associated with differential responses to other procedures for inducing altered states of consciousness,[11] including meditation, marijuana use, and biofeedback. A review of studies on differential response to the drug psilocybin found that absorption had the largest effect of all the psychological variables assessed on the intensity of individual experiences of altered states of consciousness. Absorption was strongly associated with overall consciousness alteration and with mystical-type experiences and visual effects induced by psilocybin.[12] Researchers have suggested that individual differences in both absorption and responsiveness to hallucinogenic drugs could be related to the binding potential of serotonin receptors (specifically 5-HT2A) which are the main site of action of classic hallucinogens, such as LSD and psilocybin.[12][13]
Dream recall

Research has found that frequency of dream recall is associated with absorption and related personality traits, such as openness to experience and proneness to dissociation. A proposed explanation is the continuity model of human consciousness. This model proposes that people who are prone to vivid and unusual experiences during the day, such as fantasy and daydreaming, will tend to have vivid and memorable dream content, and hence will be more likely to remember their dreams.[14]
See also

    Boundaries of the mind
    Depersonalization and derealization
    Fantasy prone personality
    Fantasy (psychology)
    Flow (psychology)
    Paracosm
    Suggestibility

References

Roche, Suzanne M.; McConkey, Kevin M. (1990). "Absorption: Nature, assessment, and correlates". Journal of Personality and Social Psychology. 59 (1): 91–101. doi:10.1037/0022-3514.59.1.91.
Tellegen, A.; Atkinson, G. (1974). "Openness to absorbing and self-altering experiences ("absorption"), a trait related to hypnotic susceptibility". Journal of Abnormal Psychology. 83: 268–277. doi:10.1037/h0036681. PMID 4844914.
"Tellegen Absorption Scale". www.ocf.berkeley.edu. Retrieved 2021-03-10.
Jamieson, G. A. (2005). "The Modified Tellegen Absorption Scale: A clearer window on the structure and meaning of absorption". Australian Journal of Clinical and Experimental Hypnosis. 33 (2): 119–139.
Glisky, Martha L.; Tataryn, D.J.; Tobias, B.A.; Kihlstrom, J.F. (1991). "Absorption, Openness to Experience, and Hypnotizability". Journal of Personality and Social Psychology. 60 (2): 263–272. doi:10.1037/0022-3514.60.2.263. PMID 2016669.
Phares, E.J.; Chaplin, W.F. (1997). "Chapter 15. Personality and Intellect". Introduction to personality (Fourth ed.). New York: Longman. p. 522. ISBN 0-673-99456-2.
Tellegen, A. "MPQ Standard". University of Minnesota Press. Retrieved April 2, 2012.
Osberg, Timothy M. (1987). "The Convergent and Discriminant Validity of the [[Need for Cognition | Need For Cognition]] Scale". Journal of Personality Assessment. 51 (3): 441–450. doi:10.1207/s15327752jpa5103_11. PMID 16372844.
Laidlaw, Tannis M.; Dwivedi, Prabudha; Naito, Akira; Gruzelier, John H. (2005). "Low self-directedness (TCI), mood, schizotypy and hypnotic susceptibility". Personality and Individual Differences. 39 (2): 469. doi:10.1016/j.paid.2005.01.025.
McClure, Erin B; Lilienfeld, Scott O (2002). "The dark side of Absorption: Empirical associations between an experiential response style and hypochondriacal concerns". Journal of Research in Personality. 36 (6): 573. doi:10.1016/S0092-6566(02)00507-X.
"Macmillan challenges the tradition of one man one skill". Industrial Management. 72 (9): 18–23. September 1972. doi:10.1108/eb056226. ISSN 0007-6929.
Studerus, Erich; Gamma, Alex; Kometer, Michael; Vollenweider, Franz X. (2012). Mazza, Marianna (ed.). "Prediction of Psilocybin Response in Healthy Volunteers". PLoS ONE. 7 (2): e30800. doi:10.1371/journal.pone.0030800. PMC 3281871. PMID 22363492.
Ott, Ulrich; Reuter, Martin; Hennig, Juergen; Vaitl, Dieter (2005). "Evidence for a common biological basis of the absorption trait, hallucinogen effects, and positive symptoms: Epistasis between 5-HT2a and COMT polymorphisms". American Journal of Medical Genetics Part B. 137B: 29. doi:10.1002/ajmg.b.30197.

    Watson, David (2003). "To dream, perchance to remember: Individual differences in dream recall". Personality and Individual Differences. 34 (7): 1271. doi:10.1016/S0191-8869(02)00114-9.

Categories:

    Personality traits Hypnosis



https://en.wikipedia.org/wiki/Absorption




Absorption
From Wikipedia, the free encyclopedia
Jump to navigation
Jump to search
Not to be confused with adsorption.
	Look up absorption, absorbed, absorbency, absorbent, or absorbs in Wiktionary, the free dictionary.

Absorption may refer to:
Contents

    1 Chemistry and biology
    2 Physics and chemical engineering
    3 Mathematics and economics
    4 See also

Chemistry and biology

    Absorption (chemistry), diffusion of particles of gas or liquid into liquid or solid materials
    Absorption (skin), a route by which substances enter the body through the skin
    Absorption (pharmacology), absorption of drugs into the body
    Absorption (biology), digestion
        Absorption (small intestine)
    CO2 scrubber, the absorbent (of carbon dioxide) in a rebreather

Physics and chemical engineering

    Absorption (electromagnetic radiation), absorption of light or other electromagnetic radiation by a material
    Absorption (acoustics), absorption of sound waves by a material
    Absorption refrigerator, a refrigerator that runs on surplus heat rather than electricity
    Absorption air conditioning, a type of solar air conditioning
    Dielectric absorption, the inability of a charged capacitor to completely discharge when briefly discharged

Mathematics and economics

    Absorption (logic), one of the rules of inference
    Absorbing element, in mathematics, an element that does not change when it is combined in a binary operation with some other element
    Absorption law, in mathematics, an identity linking a pair of binary operations
    Absorption (economics), the total demand of an economy for goods and services both from within and without
    Absorption costing, or total absorption costing, a method for appraising or valuing a firm's total inventory by including all the manufacturing costs incurred to produce those goods

See also
	Wikisource has the text of the 1921 Collier's Encyclopedia article Absorption.

    Adsorption, the formation of a gas or liquid film on a solid surface
    Digestion, the uptake of substances by the gastrointestinal tract
    Absorption (psychology), a state of becoming absorbed by mental imagery or fantasy
    Flow (psychology), a state of total mental "absorption"

Disambiguation icon
This disambiguation page lists articles associated with the title Absorption.
If an internal link led you here, you may wish to change the link to point directly to the intended article.
Categories:

    Disambiguation pages

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    日本語
    Português
    Русский
    తెలుగు

Edit links

    This page was last edited on 1 September 2019, at 18:43 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Acedia
!! 
!! https://en.wikipedia.org/wiki/Acedia

From Wikipedia, the free encyclopedia

Acedia, engraving by Hieronymus Wierix, 16th century https://upload.wikimedia.org/wikipedia/commons/thumb/6/6a/Hieronymus_Wierix_-_Acedia_-_WGA25736.jpg/220px-Hieronymus_Wierix_-_Acedia_-_WGA25736.jpg

Acedia (/əˈsiːdiə/; also accidie or accedie /ˈæksɪdi/, from Latin acēdia, and this from Greek ἀκηδία, "negligence", ἀ- "lack of" -κηδία "care") has been variously defined as a state of listlessness or torpor, of not caring or not being concerned with one's position or condition in the world. In ancient Greece akidía literally meant an inert state without pain or care.[1] Early Christian monks used the term to define a spiritual state of listlessness and from there the term developed a markedly Christian moral tone.[2] In modern times it has been taken up by literary figures and connected to depression.
Contents

    1 In ancient Greece
    2 Depictions in the early Christian era
    3 The Middle Ages
    4 Modern revival
    5 Signs
    6 In culture
    7 See also
    8 References
    9 Bibliography
    10 External links

In ancient Greece
Acedia papyrus
"Acedia" from Book 24 of the Iliad as it appears in the Banks Homer papyrus, British Museum.

In Ancient Greece acedia originally meant indifference or carelessness along the lines of its etymological meaning of lack of care. Thus Homer in the Iliad uses it to both mean soldiers heedless of a comrade (τῶν δ᾽ ἄλλων οὔ τίς εὑ ἀκήδεσεν, "and none of the other [soldiers] was heedless of him.[3]") and the body of Hector lying unburied and dishonored in the camp of the Acheans (μή πω μ᾽ ἐς θρόνον ἵζε διοτρεφὲς ὄφρά κεν Ἕκτωρ κεῖται ἐνὶ κλισίῃσιν ἀκηδής. "Seat me not anywise upon a chair, O thou fostered of Zeus, so long as Hector lieth uncared-for amid the huts.[4]") Hesiod uses it in the sense of "indifferent" (ἀνίκητος καὶ ἀκηδὴς, "unconquered and untroubled"[5]). Peter Toohey, in his article Acedia in Late Classical Antiquity argues that acedia, even in ancient times, was synonymous with depression.[6]
Depictions in the early Christian era
Acedia depicted by Pieter Bruegel the elder. https://upload.wikimedia.org/wikipedia/commons/thumb/3/33/Brueghel_-_Sieben_Laster_-_Disidia.jpg/250px-Brueghel_-_Sieben_Laster_-_Disidia.jpg

Moral theologians, intellectual historians and cultural critics have variously construed acedia as the ancient depiction of a variety of psychological states, behaviors or existential conditions: primarily laziness, apathy, ennui or boredom.

The demon of acedia holds an important place in early monastic demonology and proto-psychology. In the late fourth century Evagrius of Pontus, for example, characterizes it as "the most troublesome of all" of the eight genera of evil thoughts. As with those who followed him, Evagrius sees acedia as a temptation, and the great danger lies in giving in to it. Evagrius' contemporary the Desert Father John Cassian, depicted the apathetic restlessness of acedia, "the noonday demon", in the coenobitic monk:

    He looks about anxiously this way and that, and sighs that none of the brethren come to see him, and often goes in and out of his cell, and frequently gazes up at the sun, as if it was too slow in setting, and so a kind of unreasonable confusion of mind takes possession of him like some foul darkness.[7]

In the medieval Latin tradition of the seven deadly sins, acedia has generally been folded into the sin of sloth. The Benedictine Rule directed that a monk displaying the outward signs of acedia should;-

    be reproved a first and a second time. If he does not amend he must be subjected to the punishment of the rule so that the others may have fear.[8]

The Middle Ages

According to the Oxford Concise Dictionary of the Christian Church[9] "by the early 5th cent. the word had become a technical term in Christian asceticism, signifying a state of restlessness and inability either to work or to pray." Not only monks and theologians spoke of the vice but it appears in the writings of laymen as well. It appears in Dante's Divine Comedy not only as a sin to be punished in the damned but as the sin that leads Dante to the edge of Hell to begin with.[10] Chaucer's parson includes acedia in his list of vices. It follows anger and envy in the list and the parson connects the three vices together:

    For Envye blindeth the herte of a man, and Ire troubleth a man; and Accidie maketh him hevy, thoghtful, and wrawe. / Envye and Ire maken bitternesse in herte; which bitternesse is moder of Accidie, and binimeth him the love of alle goodnesse.[11]

In his sustained analysis of the vice in Q. 35 of the Second Part (Secunda Secundae) of his Summa Theologica, the 13th-century theologian Thomas Aquinas identifies acedia with "the sorrow of the world" (compare Weltschmerz) that "worketh death" and contrasts it with that sorrow "according to God" described by St. Paul in 2 Cor. 7:10. For Aquinas, acedia is "sorrow about spiritual good in as much as it is a Divine good." It becomes a mortal sin when reason consents to man's "flight" (fuga) from the Divine good, "on account of the flesh utterly prevailing over the spirit."[12] Acedia is essentially a flight from the divine that leads to not even caring that one does not care. The ultimate expression of this is a despair that ends in suicide.

Aquinas's teaching on acedia in Q. 35 contrasts with his prior teaching on charity's gifted "spiritual joy", to which acedia is directly opposed, and which he explores in Q. 28 of the Secunda Secundae. As Aquinas says, "One opposite is known through the other, as darkness through light. Hence also what evil is must be known from the nature of good."[13]
Modern revival

The term acedia all but died out in common usage by the beginning of the 20th century. "In the 1933 Oxford English Dictionary, accidie was confidently declared obsolete, with references dating from 1520 and 1730. But by the mid-twentieth century, as civilized people were contending with the genocidal horror of two world wars, accidie was back in use.[14]" No longer the exclusive property of theologians, the word appears in the writings of Aldous Huxley and Ian Fleming.[14]
Signs
Acedia depicted as a sleeping man and a bat in the Goat Church in Sopron, Hungary.

Acedia is indicated by a range of signs. These signs (or symptoms) are typically divided into two basic categories: somatic and psychological. Acedia frequently presents signs somatically. Such bodily symptoms range from mere sleepiness to general sickness or debility, along with a host of more specific symptoms: weakness in the knees, pain in the limbs, and fever.[citation needed] An anecdote attributed to the Desert Mother Amma Theodora[15] also connects somatic pain and illness with the onset of acedia. A host of psychological symptoms can also signify the presence of acedia, which affects the mental state and behavior of the afflicted. Some commonly reported psychological signs revolve around a lack of attention to daily tasks and an overall dissatisfaction with life. The best-known of the psychological signs of acedia is tedium, boredom or general laziness. Author Kathleen Norris in her book Acedia and Me asserts that dictionary definitions such as torpor and sloth fail to do justice to this temptation; she believes a state of restlessness, of not living in the present and seeing the future as overwhelming is more accurate a definition than straight laziness: it is especially present in monasteries, due to the cutting off of distractions, but can invade any vocation where the labor is long, the rewards slow to appear, such as scientific research, long term marriages, etc. Another sign is a lack of caring, of being unfeeling about things, whether that be your appearance, hygiene, your relationships, your community's welfare, the world's welfare etc.; all of this, Norris relates, is connected to the hopelessness and vague unease that arises from having too many choices, lacking true commitment, of being "a slave from within". She relates this to forgetfulness about "the one thing needful": remembrance of God.
In culture

    Acedia plays an important role in the literary criticism of Walter Benjamin. In his study of baroque literature, The Origin of German Tragic Drama, Benjamin describes acedia as a moral failing, an "indolence of the heart" that ruins great men. Benjamin considers acedia to be a key feature of many baroque tragic heroes, from the minor dramatic figures of German tragedy to Shakespeare's Hamlet: "The indecisiveness of the prince, in particular, is nothing other than saturnine acedia." It is this slothful inability to make decisions that leads baroque tragic heroes to passively accept their fate, rather than resisting it in the heroic manner of classical tragedy.[16]
    Roger Fry saw acedia or gloominess as a twentieth century peril to be fought by a mixture of work and of determined pleasure in life.[17]
    Anton Chekhov and Samuel Beckett's plays often have themes of acedia.
    Aldous Huxley wrote an essay on acedia called "Accidie". A non-Christian, he examines "the noon day demons" original delineation by the Desert Fathers, and concludes that it is one of the main diseases of the modern age.
    The writer David J. Cord claimed acedia can even affect an entire organization, and in The Decline and Fall of Nokia cites a culture of acedia as a prime cause for the collapse of Nokia's mobile device unit.[18]
    The Manic Street Preachers song "Of Walking Abortion", which appears on their 1994 album The Holy Bible, refers in its lyrics to "acedia's blackest hole". Both the song and the album on which it appears explore themes of nihilism, despair and mental illness.

See also

    Aboulia (disorder of diminished motivation)
    Aergia – Greek goddess personifying sloth
    Anomie
    Anhedonia
    Identity crisis
    Joie de vivre
    Koyaanisqatsi
    Noonday Demon
    Sloth (deadly sin)
    Weltschmerz
    Cabin fever
    Stir crazy (condition)
    Lethargy

References

"accìdia in Vocabolario - Treccani". treccani.it (in Italian). Retrieved 4 April 2020.
the hermitary and Meng-hu (2004). "Acedia, Bane of Solitaries". Archived from the original on 3 January 2009. Retrieved 22 December 2008.
"Homer, Iliad, Book 14, line 427". perseus.tufts.edu. Retrieved 19 April 2020.
"Homer, Iliad, Book 24, line 513". perseus.tufts.edu. Retrieved 19 April 2020.
"Hesiod, Theogony, line 453". perseus.tufts.edu. Retrieved 4 April 2020.
TOOHEY, PETER (1990). "Acedia in Late Classical Antiquity". Illinois Classical Studies. 15 (2): 339–352. ISSN 0363-1923. JSTOR 23064296.
John Cassian, The Institutes, (Boniface Ramsey, tr.) 2000:10:2, quoted in Stephen Greenblatt, The Swerve: how the world became modern, 2011:26.
ut ceteri timeant: The Rule of Benedict 48:19-20, quoted in Greenblatt 2011:26: "The symptoms of psychic pain would be driven out by physical pain".
"accidie" The Concise Oxford Dictionary of the Christian Church. Ed. E. A. Livingstone. Oxford University Press, 2006. Oxford Reference Online. Oxford University Press. 1 November 2011
"The Inferno: Dante's Sin of Acedia". homepage.westmont.edu. Archived from the original on 30 May 2020. Retrieved 16 January 2021.
"The Canterbury Tales. The Persones Tale § 53". gutenberg.org. Retrieved 19 April 2020.
Summa, II-II, 35, 3.
Summa, I, 48, 1.
Norris, Kathleen, 1947- (2008). Acedia & me : a marriage, monks, and a writer's life. New York: Riverhead Books. ISBN 978-1-59448-996-9. OCLC 212847707.
Laura Swan (2001). The Forgotten Desert Mothers: Sayings, Lives, and Stories of Early Christian Women. Paulist Press. ISBN 978-0-8091-4016-9.
Walter Benjamín; John Osborne (2003). The origin of German tragic drama. Verso. ISBN 978-1-85984-413-7. Retrieved 20 August 2011.
H. Lee, Virginia Wolff (1996) p. 708

    Cord, David (2014). The Decline and Fall of Nokia. Schildts & Söderströms. pp. 244–245. ISBN 978-951-52-3320-2.

Bibliography

    Alcock, A. (2019). 'The Eight Spirits of Evil by Evagrius of Pontus'. Research Gate
    Norris, K. (2008). 'Acedia & Me'. New York: Riverhead Books
    Ward, B. (1975). 'The Sayings of the Desert Fathers'. Kalamazoo: Cistercian Publications

External links

    "Struggling with a 'bad thought'" by Kathleen Norris, Special to CNN, 6 April 2010
    Spiritual Apathy: The Forgotten Deadly Sin by Abbot Christopher Jamison
    The sin of sloth or the illness of the demons? – The demon of acedia in early Christian monasticism, Andrew Crislip, Harvard Theological Review, 1 April 2005, published by the Cambridge University Press
    Acedia, Tristitia and Sloth: Early Christian Forerunners to Chronic Ennui
    Falling Out of Love: Akedia (acedia) and spiritual apathy 

    vte

Emotions (list)
Emotions	

    Acceptance Admiration Adoration Aesthetic Affection Agitation Agony Amusement Anger Angst Anguish Annoyance Anticipation Anxiety Apathy Arousal Attraction Awe Boredom Calmness Compassion Confidence Contempt Contentment Courage Cruelty Curiosity Defeat Depression Desire Disappointment Disgust Distrust Doubt Ecstasy Embarrassment
        vicarious Empathy Enthrallment Enthusiasm Envy Euphoria Excitement Faith Fear Flow Frustration Gratification Gratitude Greed Grief Guilt Happiness Hatred Hiraeth Homesickness Hope Horror Hostility Humiliation Hygge Hysteria Indulgence Infatuation Insecurity Inspiration Interest Irritation Isolation Jealousy Joy Kindness Loneliness Love
        limerence Lust Mono no aware Neglect Nostalgia Outrage Panic Passion Pity
        self-pity Pleasure Pride
        grandiosity hubris insult vanity Rage Regret Rejection Remorse Resentment Sadness
        melancholy Saudade Schadenfreude Sehnsucht Sentimentality Shame Shock Shyness Social connection Sorrow Spite Stress
        chronic Suffering Surprise Sympathy Trust Wonder Worry

	
Plutchik-wheel.svg
Plutchik Dyads.svg
Worldviews	

    Cynicism Defeatism Nihilism Optimism Pessimism Reclusion Weltschmerz

Related	

    Affect
        consciousness in education measures in psychology Affective
        computing forecasting neuroscience science spectrum Affectivity
        positive negative Appeal to emotion Emotion
        and art and memory and music and sex classification evolution expressed functional accounts group homeostatic in animals perception recognition
            in conversation regulation
            interpersonal work Emotional
        aperture bias blackmail competence conflict contagion detachment dysregulation eating exhaustion expression intelligence
            and bullying intimacy isolation lability labor lateralization literacy prosody reasoning responsivity security selection symbiosis well-being Emotionality
        bounded Emotions
        and culture history in decision-making in the workplace in virtual communication moral self-conscious social social sharing sociology Feeling Gender and emotional expression Group affective tone Interactions between the emotional and executive brain systems Jealousy in art Meta-emotion Pathognomy Pathos Social emotional development Stoic passions Theory
        affect appraisal constructed emotion discrete emotion somatic marker

Authority control Edit this at Wikidata	

    GND: 4141227-8 LCCN: sh92006705

Categories:

    Depression (mood)MonasticismMental and behavioural disordersEmotionsSeven deadly sins

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Deutsch
    Español
    Français
    Italiano
    Polski
    Русский
    Svenska

Edit links

    This page was last edited on 6 May 2021, at 04:33 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

!To add all of Stroll to your ~TiddlyWiki

To add Stroll (minus tutorials) to your own ~TiddlyWiki, drag the tag pill below into your file, import, save, and reload. Please note that this overrides the default edittemplate and viewtemplate/titles, in case you have already tweaked those on your file.

<span class="indent1"><<tag $:/giffmex/stroll>></span>

!To add only parts of Stroll to your ~TiddlyWiki

If you just want the bidirectional linking functionality, drag the tag pill below into your file, import, save, and reload. Includes autocomplete, relinking, automatic creation of tiddlers upon saving a tiddler with new links, and contextual search results. Does not include multiple column feature, new here buttons, or visible fold buttons.

<span class="indent1"><<tag $:/giffmex/blinks>></span>

If you just want the tools to customize what you see in the editing area, drag the tag pill below into your file, import, save, and reload. 

<span class="indent1"><<tag $:/giffmex/bigeditarea>></span>

And if for some reason you want the tutorial tiddlers (not included in either of the tag pills above), drag the ''tutorials'' tag pill from the home page into your file, import, save, and reload.

<span class="indent1"><<tag $:/giffmex/tutorials>></span>

!Uninstall ~TiddlyBlink

<br>''If you already use ~TiddlyBlink'', you can uninstall it before adding Stroll: go to $:/AdvancedSearch in your file, paste `[is[system]tag[tb]]` in the search box to search for that string, and click the garbage can icon to delete the tiddlers. Then add Stroll in the method outlined above.
CLARID COUNTY ADDITIONAL TERMS AND URLS



LUCKY FOR YOU GUYS: "Conformity is also higher when individuals are in situations involving existential thoughts that cause anxiety, in these situation individuals are more likely to conform to the majority’s decisions.[59]"  https://en.wikipedia.org/wiki/Conformity


Liquid democracy
https://en.wikipedia.org/wiki/Liquid_democracy




normative attractiveness
Normative social influence
https://en.wikipedia.org/wiki/Normative_social_influence




Conformity
https://en.wikipedia.org/wiki/Conformity


Informational Influence
https://www.theblacksheep.community/informational-influence/

 A thought leader is a direct source of Informational influence on his followers.


Informational Influence Definition
https://psychology.iresearchnet.com/social-psychology/social-influence/informational-influence/


Heuristic-Systematic Model of Persuasion
https://psychology.iresearchnet.com/social-psychology/social-influence/heuristic-systematic-model-of-persuasion/


Informational Social Influence
http://changingminds.org/explanations/theories/informational_social_influence.htm

What is Informational Social Influence and how does it affect our decisions?
https://namtblog.com/2020/02/what-is-informational-social-influence.html



Social Psychology and the Internet
A Journal…

Informational Influence February 10,
https://socialpsych.wordpress.com/category/informational-influence/

\



Identity fusion
https://en.wikipedia.org/wiki/Identity_fusion

Shared essence


Informational Social Influence
https://www.alleydog.com/glossary/definition.php?term=Informational+Social+Influence





Persuasive Arguments Theory
http://changingminds.org/explanations/theories/persuasive_arguments.htm



PLURALISTIC IGNORANCE
https://psychologydictionary.org/pluralistic-ignorance/



Minority influence
https://en.wikipedia.org/wiki/Minority_influence




Authoritarian personality
https://en.wikipedia.org/wiki/Authoritarian_personality





Oppositional defiant disorder
https://en.wikipedia.org/wiki/Oppositional_defiant_disorder






Anti-authoritarianism
https://en.wikipedia.org/wiki/Anti-authoritarianism



Freethought
https://en.wikipedia.org/wiki/Freethought




Golden Age of Freethought
https://en.wikipedia.org/wiki/Golden_Age_of_Freethought






Milieu control
https://en.wikipedia.org/wiki/Milieu_control






Pueblo clown
https://en.wikipedia.org/wiki/Pueblo_clown



 
Red team
https://en.wikipedia.org/wiki/Red_team




Social engineering (security)
https://en.wikipedia.org/wiki/Social_engineering_(security)




Social engineering (political science) 
https://en.wikipedia.org/wiki/Social_engineering_(political_science)






Nudge theory
https://en.wikipedia.org/wiki/Nudge_theory







Dark pattern 
https://en.wikipedia.org/wiki/Dark_pattern



Total institution
https://en.wikipedia.org/wiki/Total_institution






Damnatio memoriae
https://en.wikipedia.org/wiki/Damnatio_memoriae





Execration texts or curse tablet
https://en.wikipedia.org/wiki/Execration_texts





Spiral of silence
https://en.wikipedia.org/wiki/Spiral_of_silence






Cognitive miser
https://en.wikipedia.org/wiki/Cognitive_miser









!Tiddler title position

Because of the two story river format, we decided to move tiddler titles lower than they are in an average ~TiddlyWiki. But if you want to revert tiddler titles back to the default position next to the toolbar, open the sidebar TAB with the gear icon (<<icon {{$:/core/images/options-button}} "">>), and check the desired box.

!Options for viewing tiddlers in columns

Stroll has columns set so that you can view multiple tiddlers in each column. But you can change this so that either column only shows one tiddler at a time.

*Advantage:  this allows you to keep one column 'locked' into place with one fixed tiddler, while the other column can have multiple tiddlers accessible by scrolling up and down.
*Disadvantage: any other tiddlers in the 'locked' column will be hidden. You will need to open them with the links in the 'Open' tab in the sidebar.

To try this out, open the sidebar tab with the gear icon (<<icon {{$:/core/images/options-button}} "">>), and choose from the dropdown menus there.

!Give yourself room to write!

Edit a tiddler, and click the <<icon {{$:/core/images/chevron-down}} "">> button. This will give you options for:

*Hiding and revealing the various sections of the edittemplate
*Opening and closing the sidebar
*Editing a custom edittemplate section that contains information you want to have on hand as you write
*Adjusting the height of the text area of tiddlers

Agroforestry

https://en.wikipedia.org/wiki/Agroforestry

From Wikipedia, the free encyclopedia

Corn and chestnut
Agroforestry in Burkina Faso: maize grown under Faidherbia albida and Borassus akeassii near Banfora

Agroforestry is a land use management system in which trees or shrubs are grown around or among crops or pastureland. This diversification of the farming system initiates an agroecological succession, like that in natural ecosystems, and so starts a chain of events that enhance the functionality and sustainability of the farming system. Trees also produce a wide range of useful and marketable products from fruits/nuts, medicines, wood products, etc. This intentional combination of agriculture and forestry has multiple benefits, such as greatly enhanced yields from staple food crops, enhanced farmer livelihoods from income generation, increased biodiversity, improved soil structure and health, reduced erosion, and carbon sequestration.[1] Agroforestry practices are highly beneficial in the tropics, especially in subsistence smallholdings in sub-Saharan Africa[2] and have been found to be beneficial in Europe and the United States.[3][4]

Agroforestry shares principles with intercropping but can also involve much more complex multi-strata agroforests containing hundreds of species. Agroforestry can also utilise nitrogen-fixing plants such as legumes to restore soil nitrogen fertility. The nitrogen-fixing plants can be planted either sequentially or simultaneously.
Agroforestry contour planting integrated with animal grazing on Taylors Run farm, Australia
Contents

    1 As a science
    2 Benefits
        2.1 Biodiversity
        2.2 Soil and plant growth
        2.3 Contribution to sustainable agricultural systems
        2.4 Other environmental goals
        2.5 Adaptation to climate change
    3 Applications
        3.1 Tropical Agroforestry
            3.1.1 Hillside systems
            3.1.2 Shade crops
            3.1.3 Crop-over-tree systems
            3.1.4 Intercropping and alley cropping
            3.1.5 Taungya
        3.2 Temperate Agroforestry
            3.2.1 Alley cropping and Strip cropping
            3.2.2 Fauna-based systems
            3.2.3 Boundary systems
            3.2.4 Agroforestry in Switzerland
    4 Historical use
    5 Challenges
    6 See also
    7 Sources
    8 References
    9 Further reading and listening
    10 External links

As a science

According to Wojtkowski, the theoretical base for agroforestry lies in ecology,[5] or agroecology. Agroecology encompasses diverse applications such as: improved nutrient and carbon cycling; water retention of soils; biodiverse habitats; protection from pest, disease and weed outbreaks; protection of soils from water and wind erosion, etc.[6] From this perspective, agroforestry is one of the three principal agricultural land-use sciences. The other two are agriculture and forestry.[7]
Benefits

Agroforestry systems can be advantageous over conventional agricultural and forest production methods. They can offer increased productivity; social, economic and environmental benefits, as well as greater diversity in the ecological goods and services provided.[8] It is essential to note that these benefits are conditional on good farm management. This includes choosing the right trees, as well as pruning them regularly etc. [9]
Biodiversity

Biodiversity in agroforestry systems is typically higher than in conventional agricultural systems. Two or more interacting plant species in a given area create a more complex habitat that can support a wider variety of fauna.

Agroforestry is important for biodiversity for different reasons. It provides a more diverse habitat than a conventional agricultural system in which the tree component creates ecological niches for a wide range of organisms both above and below ground. The life cycles and food chains associated with this diversification initiates an agroecological succession that creates functional agroecosystems that confer sustainability. Tropical bat and bird diversity for instance can be comparable to the diversity in natural forests.[10] Although agroforestry systems do not provide as many floristic species as forests and do not show the same canopy height, they do provide food and nesting possibilities. A further contribution to biodiversity is that the germplasm of sensitive species can be preserved.[11] As agroforests have no natural clear areas, habitats are more uniform. Furthermore, agroforests can serve as corridors between habitats. Agroforestry can help to conserve biodiversity having a positive influence on other ecosystem services.[11]
Soil and plant growth

Depleted soil can be protected from soil erosion by groundcover plants such as naturally growing grasses in agroforestry systems. These help to stabilise the soil as they increase cover compared to short-cycle cropping systems.[12] Soil cover is a crucial factor in preventing erosion.[13] Cleaner water through reduced nutrient and soil surface runoff can be a further advantage of agroforestry. Trees can help reduce water runoff by decreasing water flow and evaporation and thereby allowing for increased soil infiltration.[14] Compared to row-cropped fields nutrient uptake can be higher and reduce nutrient loss into streams.[15][16]

Further advantages concerning plant growth:

    Bioremediation
    Drought resistance
    Increased crop stability

Contribution to sustainable agricultural systems

Agroforestry systems can provide a number of ecosystem services which can contribute to sustainable agriculture in the following ways;

    Diversification of agricultural products, such as fuelwood, medicinal plants, and multiple crops, increases income security[17]
    Increased food security and nutrition by restored soil fertility, crop diversity and resilience to weather shocks for food crops[17]
    Land restoration through reducing soil erosion and regulating water availability [14]
    Multifunctional site use, e.g., crop production and animal grazing
    Reduced deforestation and pressure on woodlands by providing farm-grown fuelwood
    Possibility of reduced chemicals inputs, e.g. due to improved use of fertiliser, increased resilience against pests[9],and increased ground cover which reduces weeds [18]
    Growing space for medicinal plants e.g., in situations where people have limited access to mainstream medicines

According to FAO's The State of the World’s Forests 2020, adopting agroforestry and sustainable production practices, restoring the productivity of degraded agricultural lands, embracing healthier diets and reducing food loss and waste are all actions that urgently need to be scaled up. Agribusinesses must meet their commitments to deforestation-free commodity chains and companies that have not made zero-deforestation commitments should do so.[19]
Other environmental goals

Carbon sequestration is an important ecosystem service.[11][20] Agroforestry practices can increase carbon stocks in soil and woody biomass.[21] Trees in agroforestry systems, like in new forests, can recapture some of the carbon that was lost by cutting existing forests. They also provide additional food and products. The rotation age and the use of the resulting products are important factors controlling the amount of carbon sequestered. Agroforests can reduce pressure on primary forests by providing forest products.[22]

Agroforestry practices may realize a number of environmental goals, such as:

    Odour, dust and noise reduction
    Green space and visual aesthetics
    Enhancement or maintenance of wildlife habitat

Adaptation to climate change

Agroforestry can significantly contribute to climate change mitigation along with adaptation benefits.[23] A case study in Kenya found that the adoption of agroforestry drove carbon storage and increased livelihoods simultaneously among small-scale farmers. In this case, maintaining the diversity of tree species, especially land use and farm size are important factors.[24]

Especially in recent years, poor smallholder farmers turned to agroforestry as a means to adapt to climate change. A study from the CGIAR research program on Climate Change, Agriculture and Food Security (CCAFS) found from a survey of over 700 households in East Africa that at least 50% of those households had begun planting trees in a change from earlier practices. The trees were planted with fruit, tea, coffee, oil, fodder and medicinal products in addition to their usual harvest. Agroforestry was one of the most widespread adaptation strategies, along with the use of improved crop varieties and intercropping.[25]
Applications
Tropical Agroforestry

Research with Faidherbia albida in Zambia showed maximum maize yields of 4.0 tonnes per hectare using fertilizer and inter-cropped with these trees at densities of 25 to 100 trees per hectare,[26] compared to average maize yields in Zimbabwe of 1.1 tonnes per hectare.[27]
Hillside systems

A well-studied example of an agroforestry hillside system is the Quesungual Slash and Mulch Agroforestry System (QSMAS) in Lempira Department, Honduras. This region was historically used for slash and burn subsistence agriculture. Due to heavy seasonal floods, the exposed soil was washed away, leaving infertile barren soil exposed to the dry season.[28] Farmed hillside sites had to be abandoned after a few years and new forest was burned. The Food and Agriculture Organization of the United Nations (FAO) helped introduce a system incorporating local knowledge consisting of the following steps:[29][30]

    Thin and prune Hillside secondary forest, leaving individual beneficial trees, especially nitrogen-fixing trees. They help reduce soil erosion, maintain soil moisture, provide shade and provide an input of nitrogen-rich organic matter in the form of litter.
    Plant maize in rows. This is a traditional local crop.
    Harvest from the dried plant and plant beans. The maize stalks provide an ideal structure for the climbing bean plants. Bean is a nitrogen-fixing plant and therefore helps introduce more nitrogen.
    Pumpkin can be planted during this time. Its large leaves and horizontal growth provide additional shade and moisture retention. It does not compete with the beans for sunlight since the latter grow vertically on the stalks.
    Every few seasons, rotate the crop by grazing cattle, allowing grass to grow and adding soil organic matter and nutrients (manure). The cattle prevent total reforestation by grazing around the trees.
    Repeat.

Shade crops

With shade applications, crops are purposely raised under tree canopies within the shady environment. The understory crops are shade tolerant or the overstory trees have fairly open canopies. A conspicuous example is shade-grown coffee. This practice reduces weeding costs and improves coffee quality and taste.[31][32]
Crop-over-tree systems

Crop-over-tree systems employ woody perennials in the role of a cover crop. For this, small shrubs or trees pruned to near ground level are utilized. The purpose is to increase in-soil nutrients and/or to reduce soil erosion.
Intercropping and alley cropping
See also: Inga alley cropping

With alley cropping, crop strips alternate with rows of closely spaced tree or hedge species. Normally, the trees are pruned before planting the crop. The cut leafy material is spread over the crop area to provide nutrients. In addition to nutrients, the hedges serve as windbreaks and reduce erosion.

In tropical areas of North and South America, various species of Inga such as I. edulis and I. oerstediana have been used for alley cropping.[33]

Intercropping is advantageous in Africa, particularly in relation to improving maize yields in the sub-Saharan region. Use relies upon the nitrogen-fixing tree species Sesbania sesban, Tephrosia vogelii, Gliricidia sepium and Faidherbia albida. In one example, a ten-year experiment in Malawi showed that, by using the fertilizer tree Gliricidia (Gliricidia sepium) on land on which no mineral fertilizer was applied, maize yields averaged 3.3 tonnes per hectare as compared to one tonne per hectare in plots without fertilizer trees or mineral fertilizers.[34]
Taungya

Taungya is a system originating in Burma. In the initial stages of an orchard or tree plantation, trees are small and widely spaced. The free space between the newly planted trees accommodates a seasonal crop.[35] Instead of costly weeding, the underutilized area provides an additional output and income. More complex taungyas use between-tree space for multiple crops. The crops become more shade tolerant as the tree canopies grow and the amount of sunlight reaching the ground declines. Thinning can maintain sunlight levels.

Itteri Agroforestry[36]

Itteri agroforestry systems have been use din Tamil Nadu since time immemorial. They involve the deliberate management of multipurpose trees and shrubs grown in intimate association with herbaceous species. They are often found along village and farm roads, small gullies, and boundaries of fields.
Temperate Agroforestry

Although originally a concept used in tropical agronomy, the USDA distinguishes five applications of agroforestry for temperate climates.[1]
Alley cropping and Strip cropping
Alley cropping corn fields between rows of walnut trees

Alley cropping (see above) can also be used in temperate climates. Strip cropping is similar to alley cropping in that trees alternate with crops. The difference is that, with alley cropping, the trees are in single row. With strip cropping, the trees or shrubs are planted in wide strip. The purpose can be, as with alley cropping, to provide nutrients, in leaf form, to the crop. With strip cropping, the trees can have a purely productive role, providing fruits, nuts, etc. while, at the same time, protecting nearby crops from soil erosion and harmful winds.
Fauna-based systems
Silvopasture over the years (Australia)

Trees can benefit fauna. The most common examples are silvopasture where cattle, goats, or sheep browse on grasses grown under trees.[37] In hot climates, the animals are less stressed and put on weight faster when grazing in a cooler, shaded environment. The leaves of trees or shrubs can also serve as fodder.

Similar systems support other fauna. Deer and hogs gain when living and feeding in a forest ecosystem, especially when the tree forage nourishes them. In aquaforestry, trees shade fish ponds. In many cases, the fish eat the leaves or fruit from the trees.

The dehesa or montado system of silviculture are an example of pigs and bulls being held extensively in Spain and Portugal.[38]
Boundary systems
A riparian buffer bordering a river in Iowa

    A living fence can be a thick hedge or fence wire strung on living trees. In addition to restricting the movement of people and animals, living fences offer habitat to insect-eating birds and, in the case of a boundary hedge, slow soil erosion.
    Riparian buffers are strips of permanent vegetation located along or near active watercourses or in ditches where water runoff concentrates. The purpose is to keep nutrients and soil from contaminating the water.
    Windbreaks reduce wind velocity over and around crops. This increases yields through reduced drying of the crop and/or by preventing the crop from toppling in strong wind gusts.

Agroforestry in Switzerland

Since the 1950s, 4/5 of Swiss hochstammobstgärten (traditional orchards with tall trees) have disappeared. An agroforestry scheme was tested here with hochstamm trees together with annual crops. Trees tested were walnut tree (Juglans regia) and cherry tree (Prunus avium). Forty to seventy trees per hectare were recommended, yields were somewhat decreasing with increasing tree height and foliage.[39] However, the total yield per area is shown to be up to 30 percent higher than for monocultural systems.[40]

Another set of tests involve growing Populus tremula for biofuel at 52 trees a hectare and with grazing pasture alternated every two to three years with maize or sorghum, wheat, strawberries and fallowing between rows of modern short-pruned & grafted apple cultivars ('Boskoop' & 'Spartan') and growing modern sour cherry cultivars ('Morina', 'Coraline' and 'Achat') and apples, with bushes in the rows with tree (dogrose, Cornus mas, Hippophae rhamnoides) intercropped with various vegetables.[41]
Historical use

Similar methods were historically utilized by Native Americans. California Indians periodically burned oak and other habitats to maintain a 'pyrodiversity collecting model'. This method allowed for greater tree health and improved habitat in general.[42]
Challenges

Although agroforestry systems can be advantageous,[8][43] they are not widespread in the US as of 2013.[43][44]

As suggested by a survey of extension programs in the United States, obstacles (ordered most critical to least critical) to agroforestry adoption include:[44]

    Lack of developed markets
    Unfamiliarity with technologies
    Lack of awareness
    Competition between trees, crops and animals
    Lack of financial assistance
    Lack of apparent profit potential
    Lack of demonstration sites
    Expense of additional management
    Lack of training or expertise
    Lack of knowledge about where to market products
    Lack of technical assistance
    Adoption/start up costs, including costs of time
    Unfamiliarity with alternative marketing approaches (e.g. web)
    Unavailability of information about agroforestry
    Apparent inconvenience
    Lack of infrastructure (e.g. buildings, equipment)
    Lack of equipment
    Insufficient land
    Lack of seed/seedling sources
    Lack of scientific research

Some solutions to these obstacles have been suggested.[44]
See also

    Afforestation
    Analog forestry
    Buffer strip
    Carbon farming
    Deforestation
    Deforestation and climate change
    Farmer-managed natural regeneration
    Fertilizer tree
    Forest farming
    Forest gardening
    Hedge
    Mycoforestry
    Orchard
    Pastoral farming
    Permaculture
    Streuobstwiese
    Sustainable agriculture
    Silviculture
    Silvopasture
    World Forestry Congress


    Tree template.svgTrees portalEarth Day Flag.pngEcology portalVeranotrigo.jpgAgriculture and agronomy portal

Sources

Definition of Free Cultural Works logo notext.svg This article incorporates text from a free content work. Licensed under CC BY-SA 3.0 IGO License statement/permission on Wikimedia Commons. Text taken from The State of the World’s Forests 2020. Forests, biodiversity and people – In brief, FAO & UNEP, FAO & UNEP. To learn how to add open license text to Wikipedia articles, please see this how-to page. For information on reusing text from Wikipedia, please see the terms of use.
References

"National Agroforestry Center". USDA National Agroforestry Center (NAC).
Kuyah, Shem; Öborn, Ingrid; Jonsson, Mattias; Dahlin, A Sigrun; Barrios, Edmundo; Muthuri, Catherine; Malmer, Anders; Nyaga, John; Magaju, Christine; Namirembe, Sara; Nyberg, Ylva; Sinclair, Fergus L (2016). "Trees in agricultural landscapes enhance provision of ecosystem services in Sub-Saharan Africa". International Journal of Biodiversity Science, Ecosystems Services and Management: 1–19. doi:10.1080/21513732.2016.1214178.
Iqbal, Nausheen. "A Food Forest Grows in Atlanta". USDA.gov blog. Retrieved 17 June 2018.
Schoeneberger, Michele M. (2017). "Agroforestry: Enhancing resiliency in U.S. agricultural landscapes under changing conditions". Gen. Tech. Report WO-96. doi:10.2737/WO-GTR-96. Retrieved 17 June 2018.
Wojtkowski, Paul A. (1 December 1998). The theory and practice of agroforestry design: a comprehensive study of the theories, concepts and conventions that underlie the successful use of agroforestry. Science Publishers. ISBN 978-1-57808-034-2.
Wojtkowski, P. (2019) Agroecology: Simplified and Explained, Springer, 420p.
Wojtkowski, Paul Anthony (2002). Agroecological Perspectives in Agronomy, Forestry, and Agroforestry. Science Publishers. ISBN 978-1-57808-217-9.
"Benefits of agroforestry". Agroforestry Research Trust [in England]. Archived from the original on 20 April 2015.
Kuyah, Öborn, Jonsson, Dahlin, Barrios, Muthuri, Malmer, Nyaga, Magaju, Namirembe (2016). "Trees in agricultural landscapes enhance provision of ecosystem services in Sub-Saharan Africa". International Journal of Biodiversity Science, Ecosystem Services & Management. 12: 255–273.
Harvey, Celia A.; Villalobos, Jorge A. González (1 July 2007). "Agroforestry systems conserve species-rich but modified assemblages of tropical birds and bats". Biodiversity and Conservation. 16 (8): 2257–2292. doi:10.1007/s10531-007-9194-2. ISSN 0960-3115.
Jose, S. (2009). Agroforestry for ecosystem services and environmental benefits: an overview. Agroforestry Systems, 76(1), 1–10. doi:10.1007/s10457-009-9229-7
Béliveau, Annie; Lucotte, Marc; Davidson, Robert; Paquet, Serge; Mertens, Frédéric; Passos, Carlos J.; Romana, Christine A. (December 2017). "Reduction of soil erosion and mercury losses in agroforestry systems compared to forests and cultivated fields in the Brazilian Amazon". Journal of Environmental Management. 203 (Pt 1): 522–532. doi:10.1016/j.jenvman.2017.07.037. ISSN 0301-4797. PMID 28841519.
Young, Anthony (1994). Agroforestry for Soil Conservation. CAB International.
FAO. 2017. Agroforestry for landscape restoration: Exploring the potential of agroforestry to enhance the sustainability and resilienceof degradedlandscapes. Rome. https://doi.org/10.4060/i7374e
Udawatta, Ranjith P.; Krstansky, J. John; Henderson, Gray S.; Garrett, Harold E. (July 2002). "Agroforestry practices, runoff, and nutrient loss: a paired watershed comparison". Journal of Environmental Quality. 31 (4): 1214–1225. doi:10.2134/jeq2002.1214. ISSN 0047-2425. PMID 12175039.
Jose, Shibu (1 May 2009). "Agroforestry for ecosystem services and environmental benefits: an overview". Agroforestry Systems. 76 (1): 1–10. doi:10.1007/s10457-009-9229-7. ISSN 0167-4366.
Reij, C. and R. Winterbottom (2015). Scaling up Regreening: Six Steps to Success. World Resources Institute, World Resources Institute: 1-72.
Nchanji, Y. K., Nkongho, R. N., Mala, W. A., Levang, P. (2016). "Efficacy of oil palm intercropping by smallholders. Case study in South-West Cameroon." Agroforestry systems 90(3): 509-519.
The State of the World’s Forests 2020. Forests, biodiversity and people – In brief. Rome: FAO & UNEP. 2020. ISBN 978-92-5-132707-4.
"Multistrata Agroforestry". Project Drawdown. 7 February 2020. Retrieved 4 December 2020.
Read "Negative Emissions Technologies and Reliable Sequestration: A Research Agenda" at NAP.edu.
Montagnini, F.; Nair, P. K. R. (1 July 2004). "Carbon sequestration: An underexploited environmental benefit of agroforestry systems". Agroforestry Systems. 61–62 (1–3): 281. doi:10.1023/B:AGFO.0000029005.92691.79. ISSN 0167-4366.
Zomer, Robert J.; Neufeldt, Henry; Xu, Jianchu; Ahrends, Antje; Bossio, Deborah; Trabucco, Antonio; van Noordwijk, Meine; Wang, Mingcheng (20 July 2016). "Global Tree Cover and Biomass Carbon on Agricultural Land: The contribution of agroforestry to global and national carbon budgets". Scientific Reports. 6 (1): 29987. Bibcode:2016NatSR...629987Z. doi:10.1038/srep29987. ISSN 2045-2322.
Reppin, Saskia; Kuyah, Shem; de Neergaard, Andreas; Oelofse, Myles; Rosenstock, Todd S. (16 March 2019). "Contribution of agroforestry to climate change mitigation and livelihoods in Western Kenya". Agroforestry Systems. doi:10.1007/s10457-019-00383-7. ISSN 1572-9680.
Kristjanson, P; Neufeldt H; Gassner A; Mango J; Kyazze FB; Desta S; Sayula G; Thiede B; Forch W; Thornton PK; Coe R (2012). "Are food insecure smallholder households making changes in their farming practices? Evidence form East Africa". Food Security. 4 (3): 381–397. doi:10.1007/s12571-012-0194-z.
Langford, Kate (8 July 2009). "Turning the tide on farm productivity in Africa: an agroforestry solution". World Agroforestry Centre. Archived from the original on 20 June 2010. Retrieved 2 April 2014.
Bayala, Jules; Larwanou, Mahamane; Kalinganire, Antoine; Mowo, Jeremias G.; Weldesemayat, Sileshi G.; Ajayi, Oluyede C.; Akinnifesi, Festus K.; Garrity, Dennis Philip (1 September 2010). "Evergreen Agriculture: a robust approach to sustainable food security in Africa" (PDF). Food Security. 2 (3): 197–214. doi:10.1007/s12571-010-0070-7. ISSN 1876-4525.
Ayarza, M. A.; Welchez, L. A. (2004). "Drivers effecting the development and sustainability of the Quesungual Slash and Mulch Agroforestry System (QSMAS) on hillsides of Honduras" (PDF). In Noble, A. (ed.). fComprehensive Assessment Bright Spots Project Final Report. Retrieved 14 January 2018.
Conservation Agriculture: Case Studies in Latin America and Africa. FAO. 2001.
Pauli, N.; Barrios, E.; Conacher, A. J.; Oberthür, T. (2011). "Soil macrofauna in agricultural landscapes dominated by the Quesungual Slash-and-Mulch Agroforestry System, western Honduras" (PDF). Applied Soil Ecology. 47 (2): 119–132. doi:10.1016/j.apsoil.2010.11.005. Archived from the original (PDF) on 24 March 2016. Retrieved 6 December 2017 – via Elsevier.
"CATIE | Arboles en cafetales". www.catie.ac.cr. Retrieved 23 April 2018.
Muschler, R. G. (1 August 2001). "Shade improves coffee quality in a sub-optimal coffee-zone of Costa Rica". Agroforestry Systems. 52 (3): 253. doi:10.1023/A:1011863426305. ISSN 0167-4366.
"The Rainforest Saver". The Ecologist. Retrieved 23 April 2018.
Akinnifesi, F. K.; Makumba, W.; Kwesiga, F. R. (2006). "Sustainable Maize Production Using Gliricidia/Maize Intercropping in Southern Malawi" (PDF). Experimental Agriculture. 42 (4): 10 (1–17). doi:10.1017/S0014479706003814. Archived from the original (PDF) on 14 July 2014.
Abugre, S.; Asare, A.I.; Anaba, J.A. (2010). "Gender equity under the Modified Taungya System (MTS). A case of the Bechem Forest District of Ghana" (PDF). International Journal of Social Forestry. 3 (2): 134–150 (137). Archived from the original (PDF) on 19 August 2015.
Van, Sangyan (February 2019). "Itteri Biofence- Solution for Peafowl nusiance" (PDF). vansangyan. 6: 33–34.
"Silvopasture". Agroforestry Research Trust [in England]. Archived from the original on 20 April 2015. Retrieved 19 August 2015.
Fra. Paleo, Urbano. (2010). "The dehesa/montado landscape". pp. 149–151 in Sustainable Use of Biological Diversity in Socio-ecological Production Landscapes, eds. Bélair, C., Ichikawa, K., Wong, B.Y.L. and Mulongoy, K.J. Montreal: Secretariat of the Convention on Biological Diversity. Technical Series no. 52.
AGROFORST. "AGROFORST > Publikationen > Publikationen und Dokumente Schweiz" (PDF). agroforst.ch (in German). Retrieved 23 April 2018.
AGROFORST. "Agroforstwirtschaft in der Schweiz" (PDF). agrarforschungschweiz.ch (in German). Retrieved 22 August 2020.
AGROFORST. "AGROFORST > Publikationen > Publikationen und Dokumente Schweiz" (PDF). agroforst.ch (in German). Retrieved 23 April 2018.
Lightfoot, Kent (2009). California Indians and Their Environment: An Introduction. Berkeley: University of California Press.
"Agroforestry Frequently Asked Questions". United States Department of Agriculture. 28 October 2013. Archived from the original on 1 March 2014. Retrieved 19 February 2014.

    Jacobson, Michael; Shiba Kar (August 2013). "Extent of Agroforestry Extension Programs in the United States". Journal of Extension. 51 (4). Archived from the original on 8 September 2013. Retrieved 19 February 2014.

Further reading and listening

    Patish, Daizy Rani, ed. (2008). Ecological basis of agroforestry. CRC Press. ISBN 978-1-4200-4327-3.
    The Springer Journal, "Agroforestry Systems" (ISSN 1572-9680); Editor-In-Chief: Prof. Shibu Jose, H.E. Garrett Endowed Professor and Director, The Center for Agroforestry, University of Missouri
    Robbins, Jim (21 November 2011). "A Quiet Push to Grow Crops Under Cover of Trees". The New York Times. Retrieved 22 November 2011.
    Interview with Eric Toensmeier on carbon farming (archive here, audio here), from Living on Earth show broadcast 25 November 2016.

External links
	Wikimedia Commons has media related to Agroforestry.

    National Agroforesty Center (USDA)
    World Agroforestry Centre
    The CGIAR Research Program on Forests, Trees and Agroforestry (FTA)
    The Center for Agroforestry at the University of Missouri
    Australian Agroforestry Foundation
    Australian agroforestry
    The Green Belt Movement
    Plants For A Future
    Ya'axché Conservation Trust
    Trees for the Future
    Free Distance Agroforestry Training Manual (from Trees for the Future)
    Vi-Agroforestry
    Agroforst in Deutschland
    Agroforestry in France and Europe

Media

    "Agroforestry makes sense for marginalised people in the Philippines uplands" (Erhardt/Bünner), article in the magazine D+C Development and Cooperation
    The short film Agroforestry Practices – Alley Cropping (2004) is available for free download at the Internet Archive.
    The short film Agroforestry Practices – Forest Farming (2004) is available for free download at the Internet Archive.
    The short film Agroforestry Practices – Riparian Forest Buffers (2004) is available for free download at the Internet Archive.
    The short film Agroforestry Practices – Silvopasture (2004) is available for free download at the Internet Archive.
    The short film Agroforestry Practices – Windbreaks (2004) is available for free download at the Internet Archive.
    Agroforestry, stakes and perspectives. Agroof Production, Liagre F. and Girardin N.

    vte

Agriculture

    vte

Forestry
Categories:

    AgroforestryClimate change and agricultureAgriculture and the environmentSustainable agriculture

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 9 May 2021, at 00:41 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Airborne wind turbine

!! https://en.wikipedia.org/wiki/Airborne_wind_turbine

From Wikipedia, the free encyclopedia

Kiwee One: an airborne wind turbine

An airborne wind turbine is a design concept for a wind turbine with a rotor supported in the air without a tower,[1] thus benefiting from the higher velocity and persistence of wind at high altitudes, while avoiding the expense of tower construction,[2] or the need for slip rings or yaw mechanism. An electrical generator may be on the ground or airborne. Challenges include safely suspending and maintaining turbines hundreds of meters off the ground in high winds and storms, transferring the harvested and/or generated power back to earth, and interference with aviation.[3]

Airborne wind turbines may operate in low or high altitudes; they are part of a wider class of Airborne Wind Energy Systems (AWES) addressed by high-altitude wind power and crosswind kite power. When the generator is on the ground,[4] then the tethered aircraft need not carry the generator mass or have a conductive tether. When the generator is aloft, then a conductive tether would be used to transmit energy to the ground or used aloft or beamed to receivers using microwave or laser. Kites and helicopters come down when there is insufficient wind; kytoons and blimps may resolve the matter with other disadvantages. Also, bad weather such as lightning or thunderstorms, could temporarily suspend use of the machines, probably requiring them to be brought back down to the ground and covered. Some schemes require a long power cable and, if the turbine is high enough, a prohibited airspace zone. As of July 2015, no commercial airborne wind turbines are in regular operation.[5]
Contents

    1 Aerodynamic variety
    2 Aerostat variety
    3 See also
    4 References
    5 External links

Aerodynamic variety

An aerodynamic airborne wind power system relies on the wind for support.
Crosswind kite generator with fast motion transfer

In one class,the generator is aloft; an aerodynamic structure resembling a kite, tethered to the ground, extracts wind energy by supporting a wind turbine. In another class of devices, such as crosswind kite power, generators are on the ground; one or more airfoils or kites exert force on a tether, which is converted to electrical energy. An airborne turbine requires conductors in the tether or some other apparatus to transmit power to the ground. Systems that rely on a winch can instead place the weight of the generator at ground level, and the tethers need not conduct electricity.

Aerodynamic wind energy systems have been a subject of research interest since at least 1980. "[6] Multiple proposals have been put forth but no commercial products are available. [7][8] Other projects for airborne wind energy systems include:

    KiteGen
    Rotokite[9]
    HAWE System [10]
    SkySails [11]
    X-Wind technology [12]
    Makani Power crosswind hybrid kite system [13]
    Windswept and Interesting Kite Ring [14]
    Kitemill [15]

Aerostat variety

An aerostat-type wind power system relies at least in part on buoyancy to support the wind-collecting elements. Aerostats vary in their designs and resulting lift-to-drag ratio; the kiting effect of higher lift-over-drag shapes for the aerostat can effectively keep an airborne turbine aloft; a variety of such kiting balloons were made famous in the kytoon by Domina Jalbert.

Balloons can be incorporated to keep systems up without wind, but balloons leak slowly and have to be resupplied with lifting gas, possibly patched as well. Very large, sun-heated balloons may solve the helium or hydrogen leakage problems.

An Ontario based company called Magenn[16] was developing a turbine called the Magenn Air Rotor System (MARS).[17] A future 1,000-foot (300 m)-wide MARS system would use a horizontal rotor in a helium suspended apparatus which is tethered to a transformer on the ground. Magenn claims that their technology provides high torque, low starting speeds, and superior overall efficiency thanks to its ability to deploy higher in comparison to non-aerial solutions.[18] The first prototypes were built by TCOM[who?] in April 2008. No production units have been delivered.[19]
External video
video icon Altaeros Prototype 2012

Boston-based Altaeros Energies uses a helium-filled balloon shroud to lift a wind turbine into the air, transferring the resultant power down to a base station through the same cables used to control the shroud. A 35-foot prototype using a standard Skystream 2.5kW 3.7m wind turbine was flown and tested in 2012.[20] In fall 2013, Altaeros was at work on its first commercial-scale demonstration in Alaska.[21][22]
See also

    iconEnergy portal

    High-altitude wind power

References

Elliot, Dave (2014-04-12). "Flights of fancy: airborne wind turbines". Institute of Physics, Environmental Research Web. Archived from the original on 2014-04-19. Retrieved 2014-04-17.
Michael Specter, "Wind Power Takes Flight", The New Yorker May 20, 2013 behind paywall
Levitan, David (2012-09-24). "High-Altitude Wind Energy: Huge Potential — And Hurdles". Environment 360. "How do you safely suspend airborne turbines hundreds or thousands of feet off the ground? How do you keep them aloft for long periods of time in high winds without having to perform frequent, costly maintenance? And what about interference with aviation?"
"Airborne Wind Energy Generation Systems". www.energykitesystems.net.
Airborne Wind Energy Systems, a review of the technologies, A. cherubini, A. Papini, R. Vertechy, M.Fontana, Renewable and Sustainable Energy Reviews, 2015
M. Loyd, "Crosswind Kite Power", J. Energy, vol. 4, no. 3, pp. 106-111, 1980
Jha, Alok (3 August 2008). "Giant kites to tap power of the high wind". The Guardian.
"Welcome to the WPI Kite Power Wiki". Archived from the original on 2011-07-20. Retrieved 2008-05-05.
"Rotokite" (PDF). Archived from the original (PDF) on 2016-10-26. Retrieved 2011-02-12.
pedro. "FP7". www.omnidea.net. Archived from the original on 2015-02-26. Retrieved 2015-02-26.
"SkySails GmbH - Compelling Technology". www.skysails.info. Archived from the original on 2011-09-28. Retrieved 2011-10-22.
"NTS X-Wind". www.x-wind.de.
Stone, Brad (28 May 2013). "Inside Google's Secret Lab". Bloomberg. Retrieved 3 April 2018.
"Main - Windswept and Interesting". www.windswept-and-interesting.co.uk.
"77 folkeinvestorer skal holde det svevende, norske kraftverket i himmelen hele døgnet, hele året". Teknisk Ukeblad. 11 January 2017. Retrieved 11 January 2017.
""Magenn Air Rotor System" (broken link)". Archived from the original on 2012-03-29. Retrieved 2012-07-09.
Kumar, Moses Dhilip (18 July 2013). "Technical World : MAGENN AIR ROTOR SYSTEM (M.A.R.S.)".
"Magenn Power Inc. corporate website". Archived from the original on 11 December 2008. Retrieved December 14, 2008.
Mazzella, Diana (2008-04-03). "Airborne turbine tested at TCOM; Magenn: MARS makes wind power mobile". The Daily Advance. Archived from the original on 2010-01-31. Retrieved 2008-11-23.
Boyer, Mark. "Altaeros Energies’ Floating Wind Turbines Tap Into Strong High Altitude Winds" Inhabitat, 28 March 2012. Retrieved: 9 July 2012.
McGonegal, Joe (2013-09-04). "Two Alums Dream of Tethered Aerostat Wind Farms". Slice of MIT. Archived from the original on 2013-09-07. Retrieved 2013-09-05.

    Cardwell, Diane (2014-03-21). "Wind Industry's New Technologies Are Helping It Compete on Price". New York Times.

External links

    Energy Kite Systems
    Why Airborne Wind Energy Airborne Wind Energy Labs
    Wired Magazine
    Wind Power: High hopes Nature article
    High-altitude winds: The greatest source of concentrated energy on Earth (Stanford Report, June 2009)

    vte

Wind power

    vte

Emerging technologies
Categories:

    AerodynamicsAircraftElectrical generatorsElectromechanical engineeringEnergy conversionKitesAirborne wind powerWind turbines

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Français
    Italiano
    日本語
    Português
    Русский
    中文

Edit links

    This page was last edited on 6 April 2021, at 09:58 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Algorithm

!! https://en.wikipedia.org/wiki/Algorithm

From Wikipedia, the free encyclopedia

For other uses, see Algorithm (disambiguation).
Flowchart of an algorithm (Euclid's algorithm) for calculating the greatest common divisor (g.c.d.) of two numbers a and b in locations named A and B. The algorithm proceeds by successive subtractions in two loops: IF the test B ≥ A yields "yes" or "true" (more accurately, the number b in location B is greater than or equal to the number a in location A) THEN, the algorithm specifies B ← B − A (meaning the number b − a replaces the old b). Similarly, IF A > B, THEN A ← A − B. The process terminates when (the contents of) B is 0, yielding the g.c.d. in A. (Algorithm derived from Scott 2009:13; symbols and drawing style from Tausworthe 1977).
Ada Lovelace's diagram from "note G", the first published computer algorithm

In mathematics and computer science, an algorithm (/ˈælɡərɪðəm/ (About this soundlisten)) is a finite sequence of well-defined, computer-implementable instructions, typically to solve a class of problems or to perform a computation.[1][2] Algorithms are always unambiguous and are used as specifications for performing calculations, data processing, automated reasoning, and other tasks.

As an effective method, an algorithm can be expressed within a finite amount of space and time,[3] and in a well-defined formal language[4] for calculating a function.[5] Starting from an initial state and initial input (perhaps empty),[6] the instructions describe a computation that, when executed, proceeds through a finite[7] number of well-defined successive states, eventually producing "output"[8] and terminating at a final ending state. The transition from one state to the next is not necessarily deterministic; some algorithms, known as randomized algorithms, incorporate random input.[9]

The concept of algorithm has existed since antiquity. Arithmetic algorithms, such as a division algorithm, was used by ancient Babylonian mathematicians c. 2500 BC and Egyptian mathematicians c. 1550 BC.[10] Greek mathematicians later used algorithms in 240 BC in the sieve of Eratosthenes for finding prime numbers,[11] and the Euclidean algorithm for finding the greatest common divisor of two numbers.[12] Arabic mathematicians such as al-Kindi in the 9th century used cryptographic algorithms for code-breaking, based on frequency analysis.[13]

The word algorithm itself is derived from the name of the 9th-century mathematician Muḥammad ibn Mūsā al-Khwārizmī, whose nisba (identifying him as from Khwarazm) was Latinized as Algoritmi.[14] A partial formalization of what would become the modern concept of algorithm began with attempts to solve the Entscheidungsproblem (decision problem) posed by David Hilbert in 1928. Later formalizations were framed as attempts to define "effective calculability"[15] or "effective method".[16] Those formalizations included the Gödel–Herbrand–Kleene recursive functions of 1930, 1934 and 1935, Alonzo Church's lambda calculus of 1936, Emil Post's Formulation 1 of 1936, and Alan Turing's Turing machines of 1936–37 and 1939.
Contents

    1 Etymology
    2 Informal definition
    3 Formalization
        3.1 Expressing algorithms
    4 Design
    5 Implementation
    6 Computer algorithms
    7 Examples
        7.1 Algorithm example
        7.2 Euclid's algorithm
            7.2.1 Computer language for Euclid's algorithm
            7.2.2 An inelegant program for Euclid's algorithm
            7.2.3 An elegant program for Euclid's algorithm
        7.3 Testing the Euclid algorithms
        7.4 Measuring and improving the Euclid algorithms
    8 Algorithmic analysis
        8.1 Formal versus empirical
        8.2 Execution efficiency
    9 Classification
        9.1 By implementation
        9.2 By design paradigm
        9.3 Optimization problems
        9.4 By field of study
        9.5 By complexity
    10 Continuous algorithms
    11 Legal issues
    12 History: Development of the notion of "algorithm"
        12.1 Ancient Near East
        12.2 Discrete and distinguishable symbols
        12.3 Manipulation of symbols as "place holders" for numbers: algebra
        12.4 Cryptographic algorithms
        12.5 Mechanical contrivances with discrete states
        12.6 Mathematics during the 19th century up to the mid-20th century
        12.7 Emil Post (1936) and Alan Turing (1936–37, 1939)
        12.8 J.B. Rosser (1939) and S.C. Kleene (1943)
        12.9 History after 1950
    13 See also
    14 Notes
    15 Bibliography
    16 Further reading
    17 External links

Etymology

The word 'algorithm' has its roots in Latinizing the nisba, indicating his geographic origin, of the name of Persian mathematician Muhammad ibn Musa al-Khwarizmi to algorismus.[17][18] Al-Khwārizmī (Arabized Persian الخوارزمی c. 780–850) was a mathematician, astronomer, geographer, and scholar in the House of Wisdom in Baghdad,[11] whose name means 'the native of Khwarazm', a region that was part of Greater Iran and is now in Uzbekistan.[19][20] About 825, al-Khwarizmi wrote an Arabic language treatise on the Hindu–Arabic numeral system, which was translated into Latin during the 12th century. The manuscript starts with the phrase Dixit Algorizmi ('Thus spake Al-Khwarizmi'), where "Algorizmi" was the translator's Latinization of Al-Khwarizmi's name.[21] Al-Khwarizmi was the most widely read mathematician in Europe in the late Middle Ages, primarily through another of his books, the Algebra.[22] In late medieval Latin, algorismus, English 'algorism', the corruption of his name, simply meant the "decimal number system".[23] In the 15th century, under the influence of the Greek word ἀριθμός (arithmos), 'number' (cf. 'arithmetic'), the Latin word was altered to algorithmus, and the corresponding English term 'algorithm' is first attested in the 17th century; the modern sense was introduced in the 19th century.[24]

In English, it was first used in about 1230 and then by Chaucer in 1391. English adopted the French term, but it wasn't until the late 19th century that "algorithm" took on the meaning that it has in modern English.[25]

Another early use of the word is from 1240, in a manual titled Carmen de Algorismo composed by Alexandre de Villedieu. It begins with:

    Haec algorismus ars praesens dicitur, in qua / Talibus Indorum fruimur bis quinque figuris.

which translates to:

    Algorism is the art by which at present we use those Indian figures, which number two times five.

The poem is a few hundred lines long and summarizes the art of calculating with the new styled Indian dice (Tali Indorum), or Hindu numerals.[26]
Informal definition
For a detailed presentation of the various points of view on the definition of "algorithm", see Algorithm characterizations.

An informal definition could be "a set of rules that precisely defines a sequence of operations",[27][need quotation to verify] which would include all computer programs (including programs that do not perform numeric calculations), and (for example) any prescribed bureaucratic procedure[28] or cook-book recipe.[29]

In general, a program is only an algorithm if it stops eventually[30]—even though infinite loops may sometimes prove desirable.

A prototypical example of an algorithm is the Euclidean algorithm, which is used to determine the maximum common divisor of two integers; an example (there are others) is described by the flowchart above and as an example in a later section.

Boolos, Jeffrey & 1974, 1999 offer an informal meaning of the word "algorithm" in the following quotation:

    No human being can write fast enough, or long enough, or small enough† ( †"smaller and smaller without limit … you'd be trying to write on molecules, on atoms, on electrons") to list all members of an enumerably infinite set by writing out their names, one after another, in some notation. But humans can do something equally useful, in the case of certain enumerably infinite sets: They can give explicit instructions for determining the nth member of the set, for arbitrary finite n. Such instructions are to be given quite explicitly, in a form in which they could be followed by a computing machine, or by a human who is capable of carrying out only very elementary operations on symbols.[31]

An "enumerably infinite set" is one whose elements can be put into one-to-one correspondence with the integers. Thus Boolos and Jeffrey are saying that an algorithm implies instructions for a process that "creates" output integers from an arbitrary "input" integer or integers that, in theory, can be arbitrarily large. For example, an algorithm can be an algebraic equation such as y = m + n (i.e., two arbitrary "input variables" m and n that produce an output y), but various authors' attempts to define the notion indicate that the word implies much more than this, something on the order of (for the addition example):

    Precise instructions (in a language understood by "the computer")[32] for a fast, efficient, "good"[33] process that specifies the "moves" of "the computer" (machine or human, equipped with the necessary internally contained information and capabilities)[34] to find, decode, and then process arbitrary input integers/symbols m and n, symbols + and = … and "effectively"[35] produce, in a "reasonable" time,[36] output-integer y at a specified place and in a specified format.

The concept of algorithm is also used to define the notion of decidability—a notion that is central for explaining how formal systems come into being starting from a small set of axioms and rules. In logic, the time that an algorithm requires to complete cannot be measured, as it is not apparently related to the customary physical dimension. From such uncertainties, that characterize ongoing work, stems the unavailability of a definition of algorithm that suits both concrete (in some sense) and abstract usage of the term.
Formalization

Algorithms are essential to the way computers process data. Many computer programs contain algorithms that detail the specific instructions a computer should perform—in a specific order—to carry out a specified task, such as calculating employees' paychecks or printing students' report cards. Thus, an algorithm can be considered to be any sequence of operations that can be simulated by a Turing-complete system. Authors who assert this thesis include Minsky (1967), Savage (1987) and Gurevich (2000):

    Minsky: "But we will also maintain, with Turing … that any procedure which could "naturally" be called effective, can, in fact, be realized by a (simple) machine. Although this may seem extreme, the arguments … in its favor are hard to refute".[37]

    Gurevich: "… Turing's informal argument in favor of his thesis justifies a stronger thesis: every algorithm can be simulated by a Turing machine … according to Savage [1987], an algorithm is a computational process defined by a Turing machine".[38]

Turing machines can define computational processes that do not terminate. The informal definitions of algorithms generally require that the algorithm always terminates. This requirement renders the task of deciding whether a formal procedure is an algorithm impossible in the general case—due to a major theorem of computability theory known as the halting problem.

Typically, when an algorithm is associated with processing information, data can be read from an input source, written to an output device and stored for further processing. Stored data are regarded as part of the internal state of the entity performing the algorithm. In practice, the state is stored in one or more data structures.

For some of these computational processes, the algorithm must be rigorously defined: specified in the way it applies in all possible circumstances that could arise. This means that any conditional steps must be systematically dealt with, case-by-case; the criteria for each case must be clear (and computable).

Because an algorithm is a precise list of precise steps, the order of computation is always crucial to the functioning of the algorithm. Instructions are usually assumed to be listed explicitly, and are described as starting "from the top" and going "down to the bottom"—an idea that is described more formally by flow of control.

So far, the discussion on the formalization of an algorithm has assumed the premises of imperative programming. This is the most common conception—one which attempts to describe a task in discrete, "mechanical" means. Unique to this conception of formalized algorithms is the assignment operation, which sets the value of a variable. It derives from the intuition of "memory" as a scratchpad. An example of such an assignment can be found below.

For some alternate conceptions of what constitutes an algorithm, see functional programming and logic programming.
Expressing algorithms

Algorithms can be expressed in many kinds of notation, including natural languages, pseudocode, flowcharts, drakon-charts, programming languages or control tables (processed by interpreters). Natural language expressions of algorithms tend to be verbose and ambiguous, and are rarely used for complex or technical algorithms. Pseudocode, flowcharts, drakon-charts and control tables are structured ways to express algorithms that avoid many of the ambiguities common in the statements based on natural language. Programming languages are primarily intended for expressing algorithms in a form that can be executed by a computer, but are also often used as a way to define or document algorithms.

There is a wide variety of representations possible and one can express a given Turing machine program as a sequence of machine tables (see finite-state machine, state transition table and control table for more), as flowcharts and drakon-charts (see state diagram for more), or as a form of rudimentary machine code or assembly code called "sets of quadruples" (see Turing machine for more).

Representations of algorithms can be classed into three accepted levels of Turing machine description, as follows:[39]

1 High-level description
    "…prose to describe an algorithm, ignoring the implementation details. At this level, we do not need to mention how the machine manages its tape or head."
2 Implementation description
    "…prose used to define the way the Turing machine uses its head and the way that it stores data on its tape. At this level, we do not give details of states or transition function."
3 Formal description
    Most detailed, "lowest level", gives the Turing machine's "state table".

For an example of the simple algorithm "Add m+n" described in all three levels, see Algorithm#Examples.
Design
	
It has been suggested that this article be split into a new article titled Algorithm design. (Discuss) (March 2020)
See also: Algorithm § By design paradigm

Algorithm design refers to a method or a mathematical process for problem-solving and engineering algorithms. The design of algorithms is part of many solution theories of operation research, such as dynamic programming and divide-and-conquer. Techniques for designing and implementing algorithm designs are also called algorithm design patterns,[40] with examples including the template method pattern and the decorator pattern.

One of the most important aspects of algorithm design is resource (run-time, memory usage) efficiency; the big O notation is used to describe e.g. an algorithm's run-time growth as the size of its input increases.

Typical steps in the development of algorithms:

    Problem definition
    Development of a model
    Specification of the algorithm
    Designing an algorithm
    Checking the correctness of the algorithm
    Analysis of algorithm
    Implementation of algorithm
    Program testing
    Documentation preparation[clarification needed]

Implementation
Logical NAND algorithm implemented electronically in 7400 chip

Most algorithms are intended to be implemented as computer programs. However, algorithms are also implemented by other means, such as in a biological neural network (for example, the human brain implementing arithmetic or an insect looking for food), in an electrical circuit, or in a mechanical device.
Computer algorithms
Flowchart examples of the canonical Böhm-Jacopini structures: the SEQUENCE (rectangles descending the page), the WHILE-DO and the IF-THEN-ELSE. The three structures are made of the primitive conditional GOTO (IF test THEN GOTO step xxx, shown as diamond), the unconditional GOTO (rectangle), various assignment operators (rectangle), and HALT (rectangle). Nesting of these structures inside assignment-blocks result in complex diagrams (cf. Tausworthe 1977:100, 114).

In computer systems, an algorithm is basically an instance of logic written in software by software developers, to be effective for the intended "target" computer(s) to produce output from given (perhaps null) input. An optimal algorithm, even running in old hardware, would produce faster results than a non-optimal (higher time complexity) algorithm for the same purpose, running in more efficient hardware; that is why algorithms, like computer hardware, are considered technology.

"Elegant" (compact) programs, "good" (fast) programs : The notion of "simplicity and elegance" appears informally in Knuth and precisely in Chaitin:

    Knuth: " … we want good algorithms in some loosely defined aesthetic sense. One criterion … is the length of time taken to perform the algorithm …. Other criteria are adaptability of the algorithm to computers, its simplicity and elegance, etc"[41]

    Chaitin: " … a program is 'elegant,' by which I mean that it's the smallest possible program for producing the output that it does"[42]

Chaitin prefaces his definition with: "I'll show you can't prove that a program is 'elegant'"—such a proof would solve the Halting problem (ibid).

Algorithm versus function computable by an algorithm: For a given function multiple algorithms may exist. This is true, even without expanding the available instruction set available to the programmer. Rogers observes that "It is ... important to distinguish between the notion of algorithm, i.e. procedure and the notion of function computable by algorithm, i.e. mapping yielded by procedure. The same function may have several different algorithms".[43]

Unfortunately, there may be a tradeoff between goodness (speed) and elegance (compactness)—an elegant program may take more steps to complete a computation than one less elegant. An example that uses Euclid's algorithm appears below.

Computers (and computors), models of computation: A computer (or human "computor"[44]) is a restricted type of machine, a "discrete deterministic mechanical device"[45] that blindly follows its instructions.[46] Melzak's and Lambek's primitive models[47] reduced this notion to four elements: (i) discrete, distinguishable locations, (ii) discrete, indistinguishable counters[48] (iii) an agent, and (iv) a list of instructions that are effective relative to the capability of the agent.[49]

Minsky describes a more congenial variation of Lambek's "abacus" model in his "Very Simple Bases for Computability".[50] Minsky's machine proceeds sequentially through its five (or six, depending on how one counts) instructions unless either a conditional IF-THEN GOTO or an unconditional GOTO changes program flow out of sequence. Besides HALT, Minsky's machine includes three assignment (replacement, substitution)[51] operations: ZERO (e.g. the contents of location replaced by 0: L ← 0), SUCCESSOR (e.g. L ← L+1), and DECREMENT (e.g. L ← L − 1).[52] Rarely must a programmer write "code" with such a limited instruction set. But Minsky shows (as do Melzak and Lambek) that his machine is Turing complete with only four general types of instructions: conditional GOTO, unconditional GOTO, assignment/replacement/substitution, and HALT. However, a few different assignment instructions (e.g. DECREMENT, INCREMENT, and ZERO/CLEAR/EMPTY for a Minsky machine) are also required for Turing-completeness; their exact specification is somewhat up to the designer. The unconditional GOTO is a convenience; it can be constructed by initializing a dedicated location to zero e.g. the instruction " Z ← 0 "; thereafter the instruction IF Z=0 THEN GOTO xxx is unconditional.

Simulation of an algorithm: computer (computor) language: Knuth advises the reader that "the best way to learn an algorithm is to try it . . . immediately take pen and paper and work through an example".[53] But what about a simulation or execution of the real thing? The programmer must translate the algorithm into a language that the simulator/computer/computor can effectively execute. Stone gives an example of this: when computing the roots of a quadratic equation the computor must know how to take a square root. If they don't, then the algorithm, to be effective, must provide a set of rules for extracting a square root.[54]

This means that the programmer must know a "language" that is effective relative to the target computing agent (computer/computor).

But what model should be used for the simulation? Van Emde Boas observes "even if we base complexity theory on abstract instead of concrete machines, arbitrariness of the choice of a model remains. It is at this point that the notion of simulation enters".[55] When speed is being measured, the instruction set matters. For example, the subprogram in Euclid's algorithm to compute the remainder would execute much faster if the programmer had a "modulus" instruction available rather than just subtraction (or worse: just Minsky's "decrement").

Structured programming, canonical structures: Per the Church–Turing thesis, any algorithm can be computed by a model known to be Turing complete, and per Minsky's demonstrations, Turing completeness requires only four instruction types—conditional GOTO, unconditional GOTO, assignment, HALT. Kemeny and Kurtz observe that, while "undisciplined" use of unconditional GOTOs and conditional IF-THEN GOTOs can result in "spaghetti code", a programmer can write structured programs using only these instructions; on the other hand "it is also possible, and not too hard, to write badly structured programs in a structured language".[56] Tausworthe augments the three Böhm-Jacopini canonical structures:[57] SEQUENCE, IF-THEN-ELSE, and WHILE-DO, with two more: DO-WHILE and CASE.[58] An additional benefit of a structured program is that it lends itself to proofs of correctness using mathematical induction.[59]

Canonical flowchart symbols[60]: The graphical aide called a flowchart, offers a way to describe and document an algorithm (and a computer program of one). Like the program flow of a Minsky machine, a flowchart always starts at the top of a page and proceeds down. Its primary symbols are only four: the directed arrow showing program flow, the rectangle (SEQUENCE, GOTO), the diamond (IF-THEN-ELSE), and the dot (OR-tie). The Böhm–Jacopini canonical structures are made of these primitive shapes. Sub-structures can "nest" in rectangles, but only if a single exit occurs from the superstructure. The symbols, and their use to build the canonical structures are shown in the diagram.
Examples
Further information: List of algorithms
Algorithm example

One of the simplest algorithms is to find the largest number in a list of numbers of random order. Finding the solution requires looking at every number in the list. From this follows a simple algorithm, which can be stated in a high-level description in English prose, as:

High-level description:

    If there are no numbers in the set then there is no highest number.
    Assume the first number in the set is the largest number in the set.
    For each remaining number in the set: if this number is larger than the current largest number, consider this number to be the largest number in the set.
    When there are no numbers left in the set to iterate over, consider the current largest number to be the largest number of the set.

(Quasi-)formal description: Written in prose but much closer to the high-level language of a computer program, the following is the more formal coding of the algorithm in pseudocode or pidgin code:

Algorithm LargestNumber
  Input: A list of numbers L.
  Output: The largest number in the list L.

  if L.size = 0 return null
  largest ← L[0]
  for each item in L, do
    if item > largest, then
      largest ← item
  return largest

    "←" denotes assignment. For instance, "largest ← item" means that the value of largest changes to the value of item.
    "return" terminates the algorithm and outputs the following value.

Euclid's algorithm
Further information: Euclid's algorithm
The example-diagram of Euclid's algorithm from T.L. Heath (1908), with more detail added. Euclid does not go beyond a third measuring and gives no numerical examples. Nicomachus gives the example of 49 and 21: "I subtract the less from the greater; 28 is left; then again I subtract from this the same 21 (for this is possible); 7 is left; I subtract this from 21, 14 is left; from which I again subtract 7 (for this is possible); 7 is left, but 7 cannot be subtracted from 7." Heath comments that "The last phrase is curious, but the meaning of it is obvious enough, as also the meaning of the phrase about ending 'at one and the same number'."(Heath 1908:300).

Euclid's algorithm to compute the greatest common divisor (GCD) to two numbers appears as Proposition II in Book VII ("Elementary Number Theory") of his Elements.[61] Euclid poses the problem thus: "Given two numbers not prime to one another, to find their greatest common measure". He defines "A number [to be] a multitude composed of units": a counting number, a positive integer not including zero. To "measure" is to place a shorter measuring length s successively (q times) along longer length l until the remaining portion r is less than the shorter length s.[62] In modern words, remainder r = l − q×s, q being the quotient, or remainder r is the "modulus", the integer-fractional part left over after the division.[63]

For Euclid's method to succeed, the starting lengths must satisfy two requirements: (i) the lengths must not be zero, AND (ii) the subtraction must be "proper"; i.e., a test must guarantee that the smaller of the two numbers is subtracted from the larger (or the two can be equal so their subtraction yields zero).

Euclid's original proof adds a third requirement: the two lengths must not be prime to one another. Euclid stipulated this so that he could construct a reductio ad absurdum proof that the two numbers' common measure is in fact the greatest.[64] While Nicomachus' algorithm is the same as Euclid's, when the numbers are prime to one another, it yields the number "1" for their common measure. So, to be precise, the following is really Nicomachus' algorithm.
A graphical expression of Euclid's algorithm to find the greatest common divisor for 1599 and 650.

 1599 = 650×2 + 299
 650 = 299×2 + 52
 299 = 52×5 + 39
 52 = 39×1 + 13
 39 = 13×3 + 0

Computer language for Euclid's algorithm

Only a few instruction types are required to execute Euclid's algorithm—some logical tests (conditional GOTO), unconditional GOTO, assignment (replacement), and subtraction.

    A location is symbolized by upper case letter(s), e.g. S, A, etc.
    The varying quantity (number) in a location is written in lower case letter(s) and (usually) associated with the location's name. For example, location L at the start might contain the number l = 3009.

An inelegant program for Euclid's algorithm
"Inelegant" is a translation of Knuth's version of the algorithm with a subtraction-based remainder-loop replacing his use of division (or a "modulus" instruction). Derived from Knuth 1973:2–4. Depending on the two numbers "Inelegant" may compute the g.c.d. in fewer steps than "Elegant".

The following algorithm is framed as Knuth's four-step version of Euclid's and Nicomachus', but, rather than using division to find the remainder, it uses successive subtractions of the shorter length s from the remaining length r until r is less than s. The high-level description, shown in boldface, is adapted from Knuth 1973:2–4:

INPUT:

1 [Into two locations L and S put the numbers l and s that represent the two lengths]:
  INPUT L, S
2 [Initialize R: make the remaining length r equal to the starting/initial/input length l]:
  R ← L

E0: [Ensure r ≥ s.]

3 [Ensure the smaller of the two numbers is in S and the larger in R]:
  IF R > S THEN
    the contents of L is the larger number so skip over the exchange-steps 4, 5 and 6:
    GOTO step 7
  ELSE
    swap the contents of R and S.
4   L ← R (this first step is redundant, but is useful for later discussion).
5   R ← S
6   S ← L

E1: [Find remainder]: Until the remaining length r in R is less than the shorter length s in S, repeatedly subtract the measuring number s in S from the remaining length r in R.

7 IF S > R THEN
    done measuring so
    GOTO 10
  ELSE
    measure again,
8   R ← R − S
9   [Remainder-loop]:
    GOTO 7.

E2: [Is the remainder zero?]: EITHER (i) the last measure was exact, the remainder in R is zero, and the program can halt, OR (ii) the algorithm must continue: the last measure left a remainder in R less than measuring number in S.

10 IF R = 0 THEN
     done so
     GOTO step 15
   ELSE
     CONTINUE TO step 11,

E3: [Interchange s and r]: The nut of Euclid's algorithm. Use remainder r to measure what was previously smaller number s; L serves as a temporary location.

11  L ← R
12  R ← S
13  S ← L
14  [Repeat the measuring process]:
    GOTO 7

OUTPUT:

15 [Done. S contains the greatest common divisor]:
   PRINT S

DONE:

16 HALT, END, STOP.

An elegant program for Euclid's algorithm

The following version of Euclid's algorithm requires only six core instructions to do what thirteen are required to do by "Inelegant"; worse, "Inelegant" requires more types of instructions.[clarify] The flowchart of "Elegant" can be found at the top of this article. In the (unstructured) Basic language, the steps are numbered, and the instruction LET [] = [] is the assignment instruction symbolized by ←.

  5 REM Euclid's algorithm for greatest common divisor
  6 PRINT "Type two integers greater than 0"
  10 INPUT A,B
  20 IF B=0 THEN GOTO 80
  30 IF A > B THEN GOTO 60
  40 LET B=B-A
  50 GOTO 20
  60 LET A=A-B
  70 GOTO 20
  80 PRINT A
  90 END

How "Elegant" works: In place of an outer "Euclid loop", "Elegant" shifts back and forth between two "co-loops", an A > B loop that computes A ← A − B, and a B ≤ A loop that computes B ← B − A. This works because, when at last the minuend M is less than or equal to the subtrahend S (Difference = Minuend − Subtrahend), the minuend can become s (the new measuring length) and the subtrahend can become the new r (the length to be measured); in other words the "sense" of the subtraction reverses.

The following version can be used with programming languages from the C-family:

// Euclid's algorithm for greatest common divisor
int euclidAlgorithm (int A, int B){
     A=abs(A);
     B=abs(B);
     while (B!=0){
          if (A>B) A=A-B;
          else B=B-A;
     }
     return A;
}

Testing the Euclid algorithms

Does an algorithm do what its author wants it to do? A few test cases usually give some confidence in the core functionality. But tests are not enough. For test cases, one source[65] uses 3009 and 884. Knuth suggested 40902, 24140. Another interesting case is the two relatively prime numbers 14157 and 5950.

But "exceptional cases"[66] must be identified and tested. Will "Inelegant" perform properly when R > S, S > R, R = S? Ditto for "Elegant": B > A, A > B, A = B? (Yes to all). What happens when one number is zero, both numbers are zero? ("Inelegant" computes forever in all cases; "Elegant" computes forever when A = 0.) What happens if negative numbers are entered? Fractional numbers? If the input numbers, i.e. the domain of the function computed by the algorithm/program, is to include only positive integers including zero, then the failures at zero indicate that the algorithm (and the program that instantiates it) is a partial function rather than a total function. A notable failure due to exceptions is the Ariane 5 Flight 501 rocket failure (June 4, 1996).

Proof of program correctness by use of mathematical induction: Knuth demonstrates the application of mathematical induction to an "extended" version of Euclid's algorithm, and he proposes "a general method applicable to proving the validity of any algorithm".[67] Tausworthe proposes that a measure of the complexity of a program be the length of its correctness proof.[68]
Measuring and improving the Euclid algorithms

Elegance (compactness) versus goodness (speed): With only six core instructions, "Elegant" is the clear winner, compared to "Inelegant" at thirteen instructions. However, "Inelegant" is faster (it arrives at HALT in fewer steps). Algorithm analysis[69] indicates why this is the case: "Elegant" does two conditional tests in every subtraction loop, whereas "Inelegant" only does one. As the algorithm (usually) requires many loop-throughs, on average much time is wasted doing a "B = 0?" test that is needed only after the remainder is computed.

Can the algorithms be improved?: Once the programmer judges a program "fit" and "effective"—that is, it computes the function intended by its author—then the question becomes, can it be improved?

The compactness of "Inelegant" can be improved by the elimination of five steps. But Chaitin proved that compacting an algorithm cannot be automated by a generalized algorithm;[70] rather, it can only be done heuristically; i.e., by exhaustive search (examples to be found at Busy beaver), trial and error, cleverness, insight, application of inductive reasoning, etc. Observe that steps 4, 5 and 6 are repeated in steps 11, 12 and 13. Comparison with "Elegant" provides a hint that these steps, together with steps 2 and 3, can be eliminated. This reduces the number of core instructions from thirteen to eight, which makes it "more elegant" than "Elegant", at nine steps.

The speed of "Elegant" can be improved by moving the "B=0?" test outside of the two subtraction loops. This change calls for the addition of three instructions (B = 0?, A = 0?, GOTO). Now "Elegant" computes the example-numbers faster; whether this is always the case for any given A, B, and R, S would require a detailed analysis.
Algorithmic analysis
Main article: Analysis of algorithms

It is frequently important to know how much of a particular resource (such as time or storage) is theoretically required for a given algorithm. Methods have been developed for the analysis of algorithms to obtain such quantitative answers (estimates); for example, the sorting algorithm above has a time requirement of O(n), using the big O notation with n as the length of the list. At all times the algorithm only needs to remember two values: the largest number found so far, and its current position in the input list. Therefore, it is said to have a space requirement of O(1), if the space required to store the input numbers is not counted, or O(n) if it is counted.

Different algorithms may complete the same task with a different set of instructions in less or more time, space, or 'effort' than others. For example, a binary search algorithm (with cost O(log n) ) outperforms a sequential search (cost O(n) ) when used for table lookups on sorted lists or arrays.
Formal versus empirical
Main articles: Empirical algorithmics, Profiling (computer programming), and Program optimization

The analysis, and study of algorithms is a discipline of computer science, and is often practiced abstractly without the use of a specific programming language or implementation. In this sense, algorithm analysis resembles other mathematical disciplines in that it focuses on the underlying properties of the algorithm and not on the specifics of any particular implementation. Usually pseudocode is used for analysis as it is the simplest and most general representation. However, ultimately, most algorithms are usually implemented on particular hardware/software platforms and their algorithmic efficiency is eventually put to the test using real code. For the solution of a "one off" problem, the efficiency of a particular algorithm may not have significant consequences (unless n is extremely large) but for algorithms designed for fast interactive, commercial or long life scientific usage it may be critical. Scaling from small n to large n frequently exposes inefficient algorithms that are otherwise benign.

Empirical testing is useful because it may uncover unexpected interactions that affect performance. Benchmarks may be used to compare before/after potential improvements to an algorithm after program optimization. Empirical tests cannot replace formal analysis, though, and are not trivial to perform in a fair manner.[71]
Execution efficiency
Main article: Algorithmic efficiency

To illustrate the potential improvements possible even in well-established algorithms, a recent significant innovation, relating to FFT algorithms (used heavily in the field of image processing), can decrease processing time up to 1,000 times for applications like medical imaging.[72] In general, speed improvements depend on special properties of the problem, which are very common in practical applications.[73] Speedups of this magnitude enable computing devices that make extensive use of image processing (like digital cameras and medical equipment) to consume less power.
Classification

There are various ways to classify algorithms, each with its own merits.
By implementation

One way to classify algorithms is by implementation means.

int gcd(int A, int B) {
    if (B == 0)
        return A;
    else if (A > B)
        return gcd(A-B,B);
    else
        return gcd(A,B-A);
}

Recursive C implementation of Euclid's algorithm from the above flowchart

Recursion
    A recursive algorithm is one that invokes (makes reference to) itself repeatedly until a certain condition (also known as termination condition) matches, which is a method common to functional programming. Iterative algorithms use repetitive constructs like loops and sometimes additional data structures like stacks to solve the given problems. Some problems are naturally suited for one implementation or the other. For example, towers of Hanoi is well understood using recursive implementation. Every recursive version has an equivalent (but possibly more or less complex) iterative version, and vice versa.
Logical
    An algorithm may be viewed as controlled logical deduction. This notion may be expressed as: Algorithm = logic + control.[74] The logic component expresses the axioms that may be used in the computation and the control component determines the way in which deduction is applied to the axioms. This is the basis for the logic programming paradigm. In pure logic programming languages, the control component is fixed and algorithms are specified by supplying only the logic component. The appeal of this approach is the elegant semantics: a change in the axioms produces a well-defined change in the algorithm.
Serial, parallel or distributed
    Algorithms are usually discussed with the assumption that computers execute one instruction of an algorithm at a time. Those computers are sometimes called serial computers. An algorithm designed for such an environment is called a serial algorithm, as opposed to parallel algorithms or distributed algorithms. Parallel algorithms take advantage of computer architectures where several processors can work on a problem at the same time, whereas distributed algorithms utilize multiple machines connected with a computer network. Parallel or distributed algorithms divide the problem into more symmetrical or asymmetrical subproblems and collect the results back together. The resource consumption in such algorithms is not only processor cycles on each processor but also the communication overhead between the processors. Some sorting algorithms can be parallelized efficiently, but their communication overhead is expensive. Iterative algorithms are generally parallelizable. Some problems have no parallel algorithms and are called inherently serial problems.
Deterministic or non-deterministic
    Deterministic algorithms solve the problem with exact decision at every step of the algorithm whereas non-deterministic algorithms solve problems via guessing although typical guesses are made more accurate through the use of heuristics.
Exact or approximate
    While many algorithms reach an exact solution, approximation algorithms seek an approximation that is closer to the true solution. The approximation can be reached by either using a deterministic or a random strategy. Such algorithms have practical value for many hard problems. One of the examples of an approximate algorithm is the Knapsack problem, where there is a set of given items. Its goal is to pack the knapsack to get the maximum total value. Each item has some weight and some value. Total weight that can be carried is no more than some fixed number X. So, the solution must consider weights of items as well as their value.[75]
Quantum algorithm
    They run on a realistic model of quantum computation. The term is usually used for those algorithms which seem inherently quantum, or use some essential feature of Quantum computing such as quantum superposition or quantum entanglement.

By design paradigm

Another way of classifying algorithms is by their design methodology or paradigm. There is a certain number of paradigms, each different from the other. Furthermore, each of these categories includes many different types of algorithms. Some common paradigms are:

Brute-force or exhaustive search
    This is the naive method of trying every possible solution to see which is best.[76]
Divide and conquer
    A divide and conquer algorithm repeatedly reduces an instance of a problem to one or more smaller instances of the same problem (usually recursively) until the instances are small enough to solve easily. One such example of divide and conquer is merge sorting. Sorting can be done on each segment of data after dividing data into segments and sorting of entire data can be obtained in the conquer phase by merging the segments. A simpler variant of divide and conquer is called a decrease and conquer algorithm, which solves an identical subproblem and uses the solution of this subproblem to solve the bigger problem. Divide and conquer divides the problem into multiple subproblems and so the conquer stage is more complex than decrease and conquer algorithms. An example of a decrease and conquer algorithm is the binary search algorithm.
Search and enumeration
    Many problems (such as playing chess) can be modeled as problems on graphs. A graph exploration algorithm specifies rules for moving around a graph and is useful for such problems. This category also includes search algorithms, branch and bound enumeration and backtracking.
Randomized algorithm
    Such algorithms make some choices randomly (or pseudo-randomly). They can be very useful in finding approximate solutions for problems where finding exact solutions can be impractical (see heuristic method below). For some of these problems, it is known that the fastest approximations must involve some randomness.[77] Whether randomized algorithms with polynomial time complexity can be the fastest algorithms for some problems is an open question known as the P versus NP problem. There are two large classes of such algorithms:

    Monte Carlo algorithms return a correct answer with high-probability. E.g. RP is the subclass of these that run in polynomial time.
    Las Vegas algorithms always return the correct answer, but their running time is only probabilistically bound, e.g. ZPP.

Reduction of complexity
    This technique involves solving a difficult problem by transforming it into a better-known problem for which we have (hopefully) asymptotically optimal algorithms. The goal is to find a reducing algorithm whose complexity is not dominated by the resulting reduced algorithm's. For example, one selection algorithm for finding the median in an unsorted list involves first sorting the list (the expensive portion) and then pulling out the middle element in the sorted list (the cheap portion). This technique is also known as transform and conquer.
Back tracking
    In this approach, multiple solutions are built incrementally and abandoned when it is determined that they cannot lead to a valid full solution.

Optimization problems

For optimization problems there is a more specific classification of algorithms; an algorithm for such problems may fall into one or more of the general categories described above as well as into one of the following:

Linear programming
    When searching for optimal solutions to a linear function bound to linear equality and inequality constraints, the constraints of the problem can be used directly in producing the optimal solutions. There are algorithms that can solve any problem in this category, such as the popular simplex algorithm.[78] Problems that can be solved with linear programming include the maximum flow problem for directed graphs. If a problem additionally requires that one or more of the unknowns must be an integer then it is classified in integer programming. A linear programming algorithm can solve such a problem if it can be proved that all restrictions for integer values are superficial, i.e., the solutions satisfy these restrictions anyway. In the general case, a specialized algorithm or an algorithm that finds approximate solutions is used, depending on the difficulty of the problem.
Dynamic programming
    When a problem shows optimal substructures—meaning the optimal solution to a problem can be constructed from optimal solutions to subproblems—and overlapping subproblems, meaning the same subproblems are used to solve many different problem instances, a quicker approach called dynamic programming avoids recomputing solutions that have already been computed. For example, Floyd–Warshall algorithm, the shortest path to a goal from a vertex in a weighted graph can be found by using the shortest path to the goal from all adjacent vertices. Dynamic programming and memoization go together. The main difference between dynamic programming and divide and conquer is that subproblems are more or less independent in divide and conquer, whereas subproblems overlap in dynamic programming. The difference between dynamic programming and straightforward recursion is in caching or memoization of recursive calls. When subproblems are independent and there is no repetition, memoization does not help; hence dynamic programming is not a solution for all complex problems. By using memoization or maintaining a table of subproblems already solved, dynamic programming reduces the exponential nature of many problems to polynomial complexity.
The greedy method
    A greedy algorithm is similar to a dynamic programming algorithm in that it works by examining substructures, in this case not of the problem but of a given solution. Such algorithms start with some solution, which may be given or have been constructed in some way, and improve it by making small modifications. For some problems they can find the optimal solution while for others they stop at local optima, that is, at solutions that cannot be improved by the algorithm but are not optimum. The most popular use of greedy algorithms is for finding the minimal spanning tree where finding the optimal solution is possible with this method. Huffman Tree, Kruskal, Prim, Sollin are greedy algorithms that can solve this optimization problem.
The heuristic method
    In optimization problems, heuristic algorithms can be used to find a solution close to the optimal solution in cases where finding the optimal solution is impractical. These algorithms work by getting closer and closer to the optimal solution as they progress. In principle, if run for an infinite amount of time, they will find the optimal solution. Their merit is that they can find a solution very close to the optimal solution in a relatively short time. Such algorithms include local search, tabu search, simulated annealing, and genetic algorithms. Some of them, like simulated annealing, are non-deterministic algorithms while others, like tabu search, are deterministic. When a bound on the error of the non-optimal solution is known, the algorithm is further categorized as an approximation algorithm.

By field of study
See also: List of algorithms

Every field of science has its own problems and needs efficient algorithms. Related problems in one field are often studied together. Some example classes are search algorithms, sorting algorithms, merge algorithms, numerical algorithms, graph algorithms, string algorithms, computational geometric algorithms, combinatorial algorithms, medical algorithms, machine learning, cryptography, data compression algorithms and parsing techniques.

Fields tend to overlap with each other, and algorithm advances in one field may improve those of other, sometimes completely unrelated, fields. For example, dynamic programming was invented for optimization of resource consumption in industry but is now used in solving a broad range of problems in many fields.
By complexity
See also: Complexity class and Parameterized complexity

Algorithms can be classified by the amount of time they need to complete compared to their input size:

    Constant time: if the time needed by the algorithm is the same, regardless of the input size. E.g. an access to an array element.
    Logarithmic time: if the time is a logarithmic function of the input size. E.g. binary search algorithm.
    Linear time: if the time is proportional to the input size. E.g. the traverse of a list.
    Polynomial time: if the time is a power of the input size. E.g. the bubble sort algorithm has quadratic time complexity.
    Exponential time: if the time is an exponential function of the input size. E.g. Brute-force search.

Some problems may have multiple algorithms of differing complexity, while other problems might have no algorithms or no known efficient algorithms. There are also mappings from some problems to other problems. Owing to this, it was found to be more suitable to classify the problems themselves instead of the algorithms into equivalence classes based on the complexity of the best possible algorithms for them.
Continuous algorithms

The adjective "continuous" when applied to the word "algorithm" can mean:

    An algorithm operating on data that represents continuous quantities, even though this data is represented by discrete approximations—such algorithms are studied in numerical analysis; or
    An algorithm in the form of a differential equation that operates continuously on the data, running on an analog computer.[79]

Legal issues
See also: Software patent

Algorithms, by themselves, are not usually patentable. In the United States, a claim consisting solely of simple manipulations of abstract concepts, numbers, or signals does not constitute "processes" (USPTO 2006), and hence algorithms are not patentable (as in Gottschalk v. Benson). However practical applications of algorithms are sometimes patentable. For example, in Diamond v. Diehr, the application of a simple feedback algorithm to aid in the curing of synthetic rubber was deemed patentable. The patenting of software is highly controversial, and there are highly criticized patents involving algorithms, especially data compression algorithms, such as Unisys' LZW patent.

Additionally, some cryptographic algorithms have export restrictions (see export of cryptography).
History: Development of the notion of "algorithm"
Ancient Near East

The earliest evidence of algorithms is found in the Babylonian mathematics of ancient Mesopotamia (modern Iraq). A Sumerian clay tablet found in Shuruppak near Baghdad and dated to circa 2500 BC described the earliest division algorithm.[10] During the Hammurabi dynasty circa 1800-1600 BC, Babylonian clay tablets described algorithms for computing formulas.[80] Algorithms were also used in Babylonian astronomy. Babylonian clay tablets describe and employ algorithmic procedures to compute the time and place of significant astronomical events.[81]

Algorithms for arithmetic are also found in ancient Egyptian mathematics, dating back to the Rhind Mathematical Papyrus circa 1550 BC.[10] Algorithms were later used in ancient Hellenistic mathematics. Two examples are the Sieve of Eratosthenes, which was described in the Introduction to Arithmetic by Nicomachus,[82][12]:Ch 9.2 and the Euclidean algorithm, which was first described in Euclid's Elements (c. 300 BC).[12]:Ch 9.1
Discrete and distinguishable symbols

Tally-marks: To keep track of their flocks, their sacks of grain and their money the ancients used tallying: accumulating stones or marks scratched on sticks or making discrete symbols in clay. Through the Babylonian and Egyptian use of marks and symbols, eventually Roman numerals and the abacus evolved (Dilson, p. 16–41). Tally marks appear prominently in unary numeral system arithmetic used in Turing machine and Post–Turing machine computations.
Manipulation of symbols as "place holders" for numbers: algebra

Muhammad ibn Mūsā al-Khwārizmī, a Persian mathematician, wrote the Al-jabr in the 9th century. The terms "algorism" and "algorithm" are derived from the name al-Khwārizmī, while the term "algebra" is derived from the book Al-jabr. In Europe, the word "algorithm" was originally used to refer to the sets of rules and techniques used by Al-Khwarizmi to solve algebraic equations, before later being generalized to refer to any set of rules or techniques.[83] This eventually culminated in Leibniz's notion of the calculus ratiocinator (ca 1680):

    A good century and a half ahead of his time, Leibniz proposed an algebra of logic, an algebra that would specify the rules for manipulating logical concepts in the manner that ordinary algebra specifies the rules for manipulating numbers.[84]

Cryptographic algorithms

The first cryptographic algorithm for deciphering encrypted code was developed by Al-Kindi, a 9th-century Arab mathematician, in A Manuscript On Deciphering Cryptographic Messages. He gave the first description of cryptanalysis by frequency analysis, the earliest codebreaking algorithm.[13]
Mechanical contrivances with discrete states

The clock: Bolter credits the invention of the weight-driven clock as "The key invention [of Europe in the Middle Ages]", in particular, the verge escapement[85] that provides us with the tick and tock of a mechanical clock. "The accurate automatic machine"[86] led immediately to "mechanical automata" beginning in the 13th century and finally to "computational machines"—the difference engine and analytical engines of Charles Babbage and Countess Ada Lovelace, mid-19th century.[87] Lovelace is credited with the first creation of an algorithm intended for processing on a computer—Babbage's analytical engine, the first device considered a real Turing-complete computer instead of just a calculator—and is sometimes called "history's first programmer" as a result, though a full implementation of Babbage's second device would not be realized until decades after her lifetime.

Logical machines 1870 – Stanley Jevons' "logical abacus" and "logical machine": The technical problem was to reduce Boolean equations when presented in a form similar to what is now known as Karnaugh maps. Jevons (1880) describes first a simple "abacus" of "slips of wood furnished with pins, contrived so that any part or class of the [logical] combinations can be picked out mechanically ... More recently, however, I have reduced the system to a completely mechanical form, and have thus embodied the whole of the indirect process of inference in what may be called a Logical Machine" His machine came equipped with "certain moveable wooden rods" and "at the foot are 21 keys like those of a piano [etc] ...". With this machine he could analyze a "syllogism or any other simple logical argument".[88]

This machine he displayed in 1870 before the Fellows of the Royal Society.[89] Another logician John Venn, however, in his 1881 Symbolic Logic, turned a jaundiced eye to this effort: "I have no high estimate myself of the interest or importance of what are sometimes called logical machines ... it does not seem to me that any contrivances at present known or likely to be discovered really deserve the name of logical machines"; see more at Algorithm characterizations. But not to be outdone he too presented "a plan somewhat analogous, I apprehend, to Prof. Jevon's abacus ... [And] [a]gain, corresponding to Prof. Jevons's logical machine, the following contrivance may be described. I prefer to call it merely a logical-diagram machine ... but I suppose that it could do very completely all that can be rationally expected of any logical machine".[90]

Jacquard loom, Hollerith punch cards, telegraphy and telephony – the electromechanical relay: Bell and Newell (1971) indicate that the Jacquard loom (1801), precursor to Hollerith cards (punch cards, 1887), and "telephone switching technologies" were the roots of a tree leading to the development of the first computers.[91] By the mid-19th century the telegraph, the precursor of the telephone, was in use throughout the world, its discrete and distinguishable encoding of letters as "dots and dashes" a common sound. By the late 19th century the ticker tape (ca 1870s) was in use, as was the use of Hollerith cards in the 1890 U.S. census. Then came the teleprinter (ca. 1910) with its punched-paper use of Baudot code on tape.

Telephone-switching networks of electromechanical relays (invented 1835) was behind the work of George Stibitz (1937), the inventor of the digital adding device. As he worked in Bell Laboratories, he observed the "burdensome' use of mechanical calculators with gears. "He went home one evening in 1937 intending to test his idea... When the tinkering was over, Stibitz had constructed a binary adding device".[92]

Davis (2000) observes the particular importance of the electromechanical relay (with its two "binary states" open and closed):

    It was only with the development, beginning in the 1930s, of electromechanical calculators using electrical relays, that machines were built having the scope Babbage had envisioned."[93]

Mathematics during the 19th century up to the mid-20th century

Symbols and rules: In rapid succession, the mathematics of George Boole (1847, 1854), Gottlob Frege (1879), and Giuseppe Peano (1888–1889) reduced arithmetic to a sequence of symbols manipulated by rules. Peano's The principles of arithmetic, presented by a new method (1888) was "the first attempt at an axiomatization of mathematics in a symbolic language".[94]

But Heijenoort gives Frege (1879) this kudos: Frege's is "perhaps the most important single work ever written in logic. ... in which we see a " 'formula language', that is a lingua characterica, a language written with special symbols, "for pure thought", that is, free from rhetorical embellishments ... constructed from specific symbols that are manipulated according to definite rules".[95] The work of Frege was further simplified and amplified by Alfred North Whitehead and Bertrand Russell in their Principia Mathematica (1910–1913).

The paradoxes: At the same time a number of disturbing paradoxes appeared in the literature, in particular, the Burali-Forti paradox (1897), the Russell paradox (1902–03), and the Richard Paradox.[96] The resultant considerations led to Kurt Gödel's paper (1931)—he specifically cites the paradox of the liar—that completely reduces rules of recursion to numbers.

Effective calculability: In an effort to solve the Entscheidungsproblem defined precisely by Hilbert in 1928, mathematicians first set about to define what was meant by an "effective method" or "effective calculation" or "effective calculability" (i.e., a calculation that would succeed). In rapid succession the following appeared: Alonzo Church, Stephen Kleene and J.B. Rosser's λ-calculus[97] a finely honed definition of "general recursion" from the work of Gödel acting on suggestions of Jacques Herbrand (cf. Gödel's Princeton lectures of 1934) and subsequent simplifications by Kleene.[98] Church's proof[99] that the Entscheidungsproblem was unsolvable, Emil Post's definition of effective calculability as a worker mindlessly following a list of instructions to move left or right through a sequence of rooms and while there either mark or erase a paper or observe the paper and make a yes-no decision about the next instruction.[100] Alan Turing's proof of that the Entscheidungsproblem was unsolvable by use of his "a- [automatic-] machine"[101]—in effect almost identical to Post's "formulation", J. Barkley Rosser's definition of "effective method" in terms of "a machine".[102] Kleene's proposal of a precursor to "Church thesis" that he called "Thesis I",[103] and a few years later Kleene's renaming his Thesis "Church's Thesis"[104] and proposing "Turing's Thesis".[105]
Emil Post (1936) and Alan Turing (1936–37, 1939)

Emil Post (1936) described the actions of a "computer" (human being) as follows:

    "...two concepts are involved: that of a symbol space in which the work leading from problem to answer is to be carried out, and a fixed unalterable set of directions.

His symbol space would be

    "a two-way infinite sequence of spaces or boxes... The problem solver or worker is to move and work in this symbol space, being capable of being in, and operating in but one box at a time.... a box is to admit of but two possible conditions, i.e., being empty or unmarked, and having a single mark in it, say a vertical stroke.

    "One box is to be singled out and called the starting point. ...a specific problem is to be given in symbolic form by a finite number of boxes [i.e., INPUT] being marked with a stroke. Likewise, the answer [i.e., OUTPUT] is to be given in symbolic form by such a configuration of marked boxes...

    "A set of directions applicable to a general problem sets up a deterministic process when applied to each specific problem. This process terminates only when it comes to the direction of type (C ) [i.e., STOP]".[106] See more at Post–Turing machine

Alan Turing's statue at Bletchley Park

Alan Turing's work[107] preceded that of Stibitz (1937); it is unknown whether Stibitz knew of the work of Turing. Turing's biographer believed that Turing's use of a typewriter-like model derived from a youthful interest: "Alan had dreamt of inventing typewriters as a boy; Mrs. Turing had a typewriter, and he could well have begun by asking himself what was meant by calling a typewriter 'mechanical'".[108] Given the prevalence of Morse code and telegraphy, ticker tape machines, and teletypewriters we[who?] might conjecture that all were influences.

Turing—his model of computation is now called a Turing machine—begins, as did Post, with an analysis of a human computer that he whittles down to a simple set of basic motions and "states of mind". But he continues a step further and creates a machine as a model of computation of numbers.[109]

    "Computing is normally done by writing certain symbols on paper. We may suppose this paper is divided into squares like a child's arithmetic book...I assume then that the computation is carried out on one-dimensional paper, i.e., on a tape divided into squares. I shall also suppose that the number of symbols which may be printed is finite...

    "The behavior of the computer at any moment is determined by the symbols which he is observing, and his "state of mind" at that moment. We may suppose that there is a bound B to the number of symbols or squares which the computer can observe at one moment. If he wishes to observe more, he must use successive observations. We will also suppose that the number of states of mind which need be taken into account is finite...

    "Let us imagine that the operations performed by the computer to be split up into 'simple operations' which are so elementary that it is not easy to imagine them further divided."[110]

Turing's reduction yields the following:

    "The simple operations must therefore include:

        "(a) Changes of the symbol on one of the observed squares
        "(b) Changes of one of the squares observed to another square within L squares of one of the previously observed squares.

"It may be that some of these change necessarily invoke a change of state of mind. The most general single operation must, therefore, be taken to be one of the following:

        "(A) A possible change (a) of symbol together with a possible change of state of mind.
        "(B) A possible change (b) of observed squares, together with a possible change of state of mind"

    "We may now construct a machine to do the work of this computer."[110]

A few years later, Turing expanded his analysis (thesis, definition) with this forceful expression of it:

    "A function is said to be "effectively calculable" if its values can be found by some purely mechanical process. Though it is fairly easy to get an intuitive grasp of this idea, it is nevertheless desirable to have some more definite, mathematical expressible definition ... [he discusses the history of the definition pretty much as presented above with respect to Gödel, Herbrand, Kleene, Church, Turing, and Post] ... We may take this statement literally, understanding by a purely mechanical process one which could be carried out by a machine. It is possible to give a mathematical description, in a certain normal form, of the structures of these machines. The development of these ideas leads to the author's definition of a computable function, and to an identification of computability † with effective calculability ... .

        "† We shall use the expression "computable function" to mean a function calculable by a machine, and we let "effectively calculable" refer to the intuitive idea without particular identification with any one of these definitions".[111]

J.B. Rosser (1939) and S.C. Kleene (1943)

J. Barkley Rosser defined an 'effective [mathematical] method' in the following manner (italicization added):

    "'Effective method' is used here in the rather special sense of a method each step of which is precisely determined and which is certain to produce the answer in a finite number of steps. With this special meaning, three different precise definitions have been given to date. [his footnote #5; see discussion immediately below]. The simplest of these to state (due to Post and Turing) says essentially that an effective method of solving certain sets of problems exists if one can build a machine which will then solve any problem of the set with no human intervention beyond inserting the question and (later) reading the answer. All three definitions are equivalent, so it doesn't matter which one is used. Moreover, the fact that all three are equivalent is a very strong argument for the correctness of any one." (Rosser 1939:225–226)

Rosser's footnote No. 5 references the work of (1) Church and Kleene and their definition of λ-definability, in particular Church's use of it in his An Unsolvable Problem of Elementary Number Theory (1936); (2) Herbrand and Gödel and their use of recursion in particular Gödel's use in his famous paper On Formally Undecidable Propositions of Principia Mathematica and Related Systems I (1931); and (3) Post (1936) and Turing (1936–37) in their mechanism-models of computation.

Stephen C. Kleene defined as his now-famous "Thesis I" known as the Church–Turing thesis. But he did this in the following context (boldface in original):

    "12. Algorithmic theories... In setting up a complete algorithmic theory, what we do is to describe a procedure, performable for each set of values of the independent variables, which procedure necessarily terminates and in such manner that from the outcome we can read a definite answer, "yes" or "no," to the question, "is the predicate value true?"" (Kleene 1943:273)

History after 1950

A number of efforts have been directed toward further refinement of the definition of "algorithm", and activity is on-going because of issues surrounding, in particular, foundations of mathematics (especially the Church–Turing thesis) and philosophy of mind (especially arguments about artificial intelligence). For more, see Algorithm characterizations.
See also

    Abstract machine
    Algorithm engineering
    Algorithm characterizations
    Algorithmic composition
    Algorithmic entities
    Algorithmic synthesis
    Algorithmic technique
    Algorithmic topology
    Garbage in, garbage out
    Introduction to Algorithms (textbook)
    List of algorithms
    List of algorithm general topics
    List of important publications in theoretical computer science – Algorithms
    Regulation of algorithms
    Theory of computation
        Computability theory
        Computational complexity theory

Notes

"The Definitive Glossary of Higher Mathematical Jargon — Algorithm". Math Vault. August 1, 2019. Archived from the original on February 28, 2020. Retrieved November 14, 2019.
"Definition of ALGORITHM". Merriam-Webster Online Dictionary. Archived from the original on February 14, 2020. Retrieved November 14, 2019.
"Any classical mathematical algorithm, for example, can be described in a finite number of English words" (Rogers 1987:2).
Well defined with respect to the agent that executes the algorithm: "There is a computing agent, usually human, which can react to the instructions and carry out the computations" (Rogers 1987:2).
"an algorithm is a procedure for computing a function (with respect to some chosen notation for integers) ... this limitation (to numerical functions) results in no loss of generality", (Rogers 1987:1).
"An algorithm has zero or more inputs, i.e., quantities which are given to it initially before the algorithm begins" (Knuth 1973:5).
"A procedure which has all the characteristics of an algorithm except that it possibly lacks finiteness may be called a 'computational method'" (Knuth 1973:5).
"An algorithm has one or more outputs, i.e. quantities which have a specified relation to the inputs" (Knuth 1973:5).
Whether or not a process with random interior processes (not including the input) is an algorithm is debatable. Rogers opines that: "a computation is carried out in a discrete stepwise fashion, without the use of continuous methods or analogue devices ... carried forward deterministically, without resort to random methods or devices, e.g., dice" (Rogers 1987:2).
Chabert, Jean-Luc (2012). A History of Algorithms: From the Pebble to the Microchip. Springer Science & Business Media. pp. 7–8. ISBN 9783642181924.
"Hellenistic Mathematics". The Story of Mathematics. Archived from the original on September 11, 2019. Retrieved November 14, 2019.
Cooke, Roger L. (2005). The History of Mathematics: A Brief Course. John Wiley & Sons. ISBN 978-1-118-46029-0.
Dooley, John F. (2013). A Brief History of Cryptology and Cryptographic Algorithms. Springer Science & Business Media. pp. 12–3. ISBN 9783319016283.
"Al-Khwarizmi - Islamic Mathematics". The Story of Mathematics. Archived from the original on July 25, 2019. Retrieved November 14, 2019.
Kleene 1943 in Davis 1965:274
Rosser 1939 in Davis 1965:225
"Al-Khwarizmi biography". www-history.mcs.st-andrews.ac.uk. Archived from the original on August 2, 2019. Retrieved May 3, 2017.
"Etymology of algorithm". Chambers Dictionary. Archived from the original on March 31, 2019. Retrieved December 13, 2016.
Hogendijk, Jan P. (1998). "al-Khwarzimi". Pythagoras. 38 (2): 4–5. Archived from the original on April 12, 2009.
Oaks, Jeffrey A. "Was al-Khwarizmi an applied algebraist?". University of Indianapolis. Archived from the original on July 18, 2011. Retrieved May 30, 2008.
Brezina, Corona (2006). Al-Khwarizmi: The Inventor Of Algebra. The Rosen Publishing Group. ISBN 978-1-4042-0513-0.
Foremost mathematical texts in history Archived June 9, 2011, at the Wayback Machine, according to Carl B. Boyer.
"algorismic", The Free Dictionary, archived from the original on December 21, 2019, retrieved November 14, 2019
Oxford English Dictionary, Third Edition, 2012 s.v.
Mehri, Bahman (2017). "From Al-Khwarizmi to Algorithm". Olympiads in Informatics. 11 (2): 71–74. doi:10.15388/ioi.2017.special.11.
"Abu Jafar Muhammad ibn Musa al-Khwarizmi". members.peak.org. Archived from the original on August 21, 2019. Retrieved November 14, 2019.
Stone 1973:4
Simanowski, Roberto (2018). The Death Algorithm and Other Digital Dilemmas. Untimely Meditations. 14. Translated by Chase, Jefferson. Cambridge, Massachusetts: MIT Press. p. 147. ISBN 9780262536370. Archived from the original on December 22, 2019. Retrieved May 27, 2019. "[...] the next level of abstraction of central bureaucracy: globally operating algorithms."
Dietrich, Eric (1999). "Algorithm". In Wilson, Robert Andrew; Keil, Frank C. (eds.). The MIT Encyclopedia of the Cognitive Sciences. MIT Cognet library. Cambridge, Massachusetts: MIT Press (published 2001). p. 11. ISBN 9780262731447. Retrieved July 22, 2020. "An algorithm is a recipe, method, or technique for doing something."
Stone simply requires that "it must terminate in a finite number of steps" (Stone 1973:7–8).
Boolos and Jeffrey 1974,1999:19
cf Stone 1972:5
Knuth 1973:7 states: "In practice we not only want algorithms, we want good algorithms ... one criterion of goodness is the length of time taken to perform the algorithm ... other criteria are the adaptability of the algorithm to computers, its simplicity, and elegance, etc."
cf Stone 1973:6
Stone 1973:7–8 states that there must be, "...a procedure that a robot [i.e., computer] can follow in order to determine precisely how to obey the instruction". Stone adds finiteness of the process, and definiteness (having no ambiguity in the instructions) to this definition.
Knuth, loc. cit
Minsky 1967, p. 105
Gurevich 2000:1, 3
Sipser 2006:157
Goodrich, Michael T.; Tamassia, Roberto (2002), Algorithm Design: Foundations, Analysis, and Internet Examples, John Wiley & Sons, Inc., ISBN 978-0-471-38365-9, archived from the original on April 28, 2015, retrieved June 14, 2018
Knuth 1973:7
Chaitin 2005:32
Rogers 1987:1–2
In his essay "Calculations by Man and Machine: Conceptual Analysis" Seig 2002:390 credits this distinction to Robin Gandy, cf Wilfred Seig, et al., 2002 Reflections on the foundations of mathematics: Essays in honor of Solomon Feferman, Association for Symbolic Logic, A.K. Peters Ltd, Natick, MA.
cf Gandy 1980:126, Robin Gandy Church's Thesis and Principles for Mechanisms appearing on pp. 123–148 in J. Barwise et al. 1980 The Kleene Symposium, North-Holland Publishing Company.
A "robot": "A computer is a robot that performs any task that can be described as a sequence of instructions." cf Stone 1972:3
Lambek's "abacus" is a "countably infinite number of locations (holes, wires etc.) together with an unlimited supply of counters (pebbles, beads, etc). The locations are distinguishable, the counters are not". The holes have unlimited capacity, and standing by is an agent who understands and is able to carry out the list of instructions" (Lambek 1961:295). Lambek references Melzak who defines his Q-machine as "an indefinitely large number of locations ... an indefinitely large supply of counters distributed among these locations, a program, and an operator whose sole purpose is to carry out the program" (Melzak 1961:283). B-B-J (loc. cit.) add the stipulation that the holes are "capable of holding any number of stones" (p. 46). Both Melzak and Lambek appear in The Canadian Mathematical Bulletin, vol. 4, no. 3, September 1961.
If no confusion results, the word "counters" can be dropped, and a location can be said to contain a single "number".
"We say that an instruction is effective if there is a procedure that the robot can follow in order to determine precisely how to obey the instruction." (Stone 1972:6)
cf Minsky 1967: Chapter 11 "Computer models" and Chapter 14 "Very Simple Bases for Computability" pp. 255–281, in particular,
cf Knuth 1973:3.
But always preceded by IF-THEN to avoid improper subtraction.
Knuth 1973:4
Stone 1972:5. Methods for extracting roots are not trivial: see Methods of computing square roots.
Leeuwen, Jan (1990). Handbook of Theoretical Computer Science: Algorithms and complexity. Volume A. Elsevier. p. 85. ISBN 978-0-444-88071-0.
John G. Kemeny and Thomas E. Kurtz 1985 Back to Basic: The History, Corruption, and Future of the Language, Addison-Wesley Publishing Company, Inc. Reading, MA, ISBN 0-201-13433-0.
Tausworthe 1977:101
Tausworthe 1977:142
Knuth 1973 section 1.2.1, expanded by Tausworthe 1977 at pages 100ff and Chapter 9.1
cf Tausworthe 1977
Heath 1908:300; Hawking's Dover 2005 edition derives from Heath.
" 'Let CD, measuring BF, leave FA less than itself.' This is a neat abbreviation for saying, measure along BA successive lengths equal to CD until a point F is reached such that the length FA remaining is less than CD; in other words, let BF be the largest exact multiple of CD contained in BA" (Heath 1908:297)
For modern treatments using division in the algorithm, see Hardy and Wright 1979:180, Knuth 1973:2 (Volume 1), plus more discussion of Euclid's algorithm in Knuth 1969:293–297 (Volume 2).
Euclid covers this question in his Proposition 1.
"Euclid's Elements, Book VII, Proposition 2". Aleph0.clarku.edu. Archived from the original on May 24, 2012. Retrieved May 20, 2012.
While this notion is in widespread use, it cannot be defined precisely.
Knuth 1973:13–18. He credits "the formulation of algorithm-proving in terms of assertions and induction" to R W. Floyd, Peter Naur, C.A.R. Hoare, H.H. Goldstine and J. von Neumann. Tausworth 1977 borrows Knuth's Euclid example and extends Knuth's method in section 9.1 Formal Proofs (pp. 288–298).
Tausworthe 1997:294
cf Knuth 1973:7 (Vol. I), and his more-detailed analyses on pp. 1969:294–313 (Vol II).
Breakdown occurs when an algorithm tries to compact itself. Success would solve the Halting problem.
Kriegel, Hans-Peter; Schubert, Erich; Zimek, Arthur (2016). "The (black) art of run-time evaluation: Are we comparing algorithms or implementations?". Knowledge and Information Systems. 52 (2): 341–378. doi:10.1007/s10115-016-1004-2. ISSN 0219-1377. S2CID 40772241.
Gillian Conahan (January 2013). "Better Math Makes Faster Data Networks". discovermagazine.com. Archived from the original on May 13, 2014. Retrieved May 13, 2014.
Haitham Hassanieh, Piotr Indyk, Dina Katabi, and Eric Price, "ACM-SIAM Symposium On Discrete Algorithms (SODA) Archived July 4, 2013, at the Wayback Machine, Kyoto, January 2012. See also the sFFT Web Page Archived February 21, 2012, at the Wayback Machine.
Kowalski 1979
Knapsack Problems | Hans Kellerer | Springer. Springer. 2004. ISBN 978-3-540-40286-2. Archived from the original on October 18, 2017. Retrieved September 19, 2017.
Carroll, Sue; Daughtrey, Taz (July 4, 2007). Fundamental Concepts for the Software Quality Engineer. American Society for Quality. pp. 282 et seq. ISBN 978-0-87389-720-4.
For instance, the volume of a convex polytope (described using a membership oracle) can be approximated to high accuracy by a randomized polynomial time algorithm, but not by a deterministic one: see Dyer, Martin; Frieze, Alan; Kannan, Ravi (January 1991), "A Random Polynomial-time Algorithm for Approximating the Volume of Convex Bodies", J. ACM, 38 (1): 1–17, CiteSeerX 10.1.1.145.4600, doi:10.1145/102782.102783, S2CID 13268711.
George B. Dantzig and Mukund N. Thapa. 2003. Linear Programming 2: Theory and Extensions. Springer-Verlag.
Tsypkin (1971). Adaptation and learning in automatic systems. Academic Press. p. 54. ISBN 978-0-08-095582-7.
Knuth, Donald E. (1972). "Ancient Babylonian Algorithms" (PDF). Commun. ACM. 15 (7): 671–677. doi:10.1145/361454.361514. ISSN 0001-0782. S2CID 7829945. Archived from the original (PDF) on December 24, 2012.
Aaboe, Asger (2001), Episodes from the Early History of Astronomy, New York: Springer, pp. 40–62, ISBN 978-0-387-95136-2
Ast, Courtney. "Eratosthenes". Wichita State University: Department of Mathematics and Statistics. Archived from the original on February 27, 2015. Retrieved February 27, 2015.
Chabert, Jean-Luc (2012). A History of Algorithms: From the Pebble to the Microchip. Springer Science & Business Media. p. 2. ISBN 9783642181924.
Davis 2000:18
Bolter 1984:24
Bolter 1984:26
Bolter 1984:33–34, 204–206.
All quotes from W. Stanley Jevons 1880 Elementary Lessons in Logic: Deductive and Inductive, Macmillan and Co., London and New York. Republished as a googlebook; cf Jevons 1880:199–201. Louis Couturat 1914 the Algebra of Logic, The Open Court Publishing Company, Chicago and London. Republished as a googlebook; cf Couturat 1914:75–76 gives a few more details; he compares this to a typewriter as well as a piano. Jevons states that the account is to be found at January 20, 1870 The Proceedings of the Royal Society.
Jevons 1880:199–200
All quotes from John Venn 1881 Symbolic Logic, Macmillan and Co., London. Republished as a googlebook. cf Venn 1881:120–125. The interested reader can find a deeper explanation in those pages.
Bell and Newell diagram 1971:39, cf. Davis 2000
* Melina Hill, Valley News Correspondent, A Tinkerer Gets a Place in History, Valley News West Lebanon NH, Thursday, March 31, 1983, p. 13.
Davis 2000:14
van Heijenoort 1967:81ff
van Heijenoort's commentary on Frege's Begriffsschrift, a formula language, modeled upon that of arithmetic, for pure thought in van Heijenoort 1967:1
Dixon 1906, cf. Kleene 1952:36–40
cf. footnote in Alonzo Church 1936a in Davis 1965:90 and 1936b in Davis 1965:110
Kleene 1935–6 in Davis 1965:237ff, Kleene 1943 in Davis 1965:255ff
Church 1936 in Davis 1965:88ff
cf. "Finite Combinatory Processes – formulation 1", Post 1936 in Davis 1965:289–290
Turing 1936–37 in Davis 1965:116ff
Rosser 1939 in Davis 1965:226
Kleene 1943 in Davis 1965:273–274
Kleene 1952:300, 317
Kleene 1952:376
Turing 1936–37 in Davis 1965:289–290
Turing 1936 in Davis 1965, Turing 1939 in Davis 1965:160
Hodges, p. 96
Turing 1936–37:116
Turing 1936–37 in Davis 1965:136

    Turing 1939 in Davis 1965:160

Bibliography

    Axt, P (1959). "On a Subrecursive Hierarchy and Primitive Recursive Degrees". Transactions of the American Mathematical Society. 92 (1): 85–105. doi:10.2307/1993169. JSTOR 1993169.
    Bell, C. Gordon and Newell, Allen (1971), Computer Structures: Readings and Examples, McGraw–Hill Book Company, New York. ISBN 0-07-004357-4.
    Blass, Andreas; Gurevich, Yuri (2003). "Algorithms: A Quest for Absolute Definitions" (PDF). Bulletin of European Association for Theoretical Computer Science. 81. Includes an excellent bibliography of 56 references.
    Bolter, David J. (1984). Turing's Man: Western Culture in the Computer Age (1984 ed.). Chapel Hill, NC: The University of North Carolina Press. ISBN 978-0-8078-1564-9., ISBN 0-8078-4108-0
    Boolos, George; Jeffrey, Richard (1999) [1974]. Computability and Logic (4th ed.). Cambridge University Press, London. ISBN 978-0-521-20402-6.: cf. Chapter 3 Turing machines where they discuss "certain enumerable sets not effectively (mechanically) enumerable".
    Burgin, Mark (2004). Super-Recursive Algorithms. Springer. ISBN 978-0-387-95569-8.
    Campagnolo, M.L., Moore, C., and Costa, J.F. (2000) An analog characterization of the subrecursive functions. In Proc. of the 4th Conference on Real Numbers and Computers, Odense University, pp. 91–109
    Church, Alonzo (1936a). "An Unsolvable Problem of Elementary Number Theory". The American Journal of Mathematics. 58 (2): 345–363. doi:10.2307/2371045. JSTOR 2371045. Reprinted in The Undecidable, p. 89ff. The first expression of "Church's Thesis". See in particular page 100 (The Undecidable) where he defines the notion of "effective calculability" in terms of "an algorithm", and he uses the word "terminates", etc.
    Church, Alonzo (1936b). "A Note on the Entscheidungsproblem". The Journal of Symbolic Logic. 1 (1): 40–41. doi:10.2307/2269326. JSTOR 2269326. Church, Alonzo (1936). "Correction to a Note on the Entscheidungsproblem". The Journal of Symbolic Logic. 1 (3): 101–102. doi:10.2307/2269030. JSTOR 2269030. Reprinted in The Undecidable, p. 110ff. Church shows that the Entscheidungsproblem is unsolvable in about 3 pages of text and 3 pages of footnotes.
    Daffa', Ali Abdullah al- (1977). The Muslim contribution to mathematics. London: Croom Helm. ISBN 978-0-85664-464-1.
    Davis, Martin (1965). The Undecidable: Basic Papers On Undecidable Propositions, Unsolvable Problems and Computable Functions. New York: Raven Press. ISBN 978-0-486-43228-1. Davis gives commentary before each article. Papers of Gödel, Alonzo Church, Turing, Rosser, Kleene, and Emil Post are included; those cited in the article are listed here by author's name.
    Davis, Martin (2000). Engines of Logic: Mathematicians and the Origin of the Computer. New York: W.W. Nortion. ISBN 978-0-393-32229-3. Davis offers concise biographies of Leibniz, Boole, Frege, Cantor, Hilbert, Gödel and Turing with von Neumann as the show-stealing villain. Very brief bios of Joseph-Marie Jacquard, Babbage, Ada Lovelace, Claude Shannon, Howard Aiken, etc.
     This article incorporates public domain material from the NIST document: Black, Paul E. "algorithm". Dictionary of Algorithms and Data Structures.
    Dean, Tim (2012). "Evolution and moral diversity". Baltic International Yearbook of Cognition, Logic and Communication. 7. doi:10.4148/biyclc.v7i0.1775.
    Dennett, Daniel (1995). Darwin's Dangerous Idea. Complexity. 2. New York: Touchstone/Simon & Schuster. pp. 32–36. Bibcode:1996Cmplx...2a..32M. doi:10.1002/(SICI)1099-0526(199609/10)2:1<32::AID-CPLX8>3.0.CO;2-H. ISBN 978-0-684-80290-9.
    Dilson, Jesse (2007). The Abacus ((1968, 1994) ed.). St. Martin's Press, NY. ISBN 978-0-312-10409-2., ISBN 0-312-10409-X
    Yuri Gurevich, Sequential Abstract State Machines Capture Sequential Algorithms, ACM Transactions on Computational Logic, Vol 1, no 1 (July 2000), pp. 77–111. Includes bibliography of 33 sources.
    van Heijenoort, Jean (2001). From Frege to Gödel, A Source Book in Mathematical Logic, 1879–1931 ((1967) ed.). Harvard University Press, Cambridge. ISBN 978-0-674-32449-7., 3rd edition 1976[?], ISBN 0-674-32449-8 (pbk.)
    Hodges, Andrew (1983). Alan Turing: The Enigma. Physics Today. 37. New York: Simon and Schuster. pp. 107–108. Bibcode:1984PhT....37k.107H. doi:10.1063/1.2915935. ISBN 978-0-671-49207-6., ISBN 0-671-49207-1. Cf. Chapter "The Spirit of Truth" for a history leading to, and a discussion of, his proof.
    Kleene, Stephen C. (1936). "General Recursive Functions of Natural Numbers". Mathematische Annalen. 112 (5): 727–742. doi:10.1007/BF01565439. S2CID 120517999. Archived from the original on September 3, 2014. Retrieved September 30, 2013. Presented to the American Mathematical Society, September 1935. Reprinted in The Undecidable, p. 237ff. Kleene's definition of "general recursion" (known now as mu-recursion) was used by Church in his 1935 paper An Unsolvable Problem of Elementary Number Theory that proved the "decision problem" to be "undecidable" (i.e., a negative result).
    Kleene, Stephen C. (1943). "Recursive Predicates and Quantifiers". American Mathematical Society Transactions. 54 (1): 41–73. doi:10.2307/1990131. JSTOR 1990131. Reprinted in The Undecidable, p. 255ff. Kleene refined his definition of "general recursion" and proceeded in his chapter "12. Algorithmic theories" to posit "Thesis I" (p. 274); he would later repeat this thesis (in Kleene 1952:300) and name it "Church's Thesis"(Kleene 1952:317) (i.e., the Church thesis).
    Kleene, Stephen C. (1991) [1952]. Introduction to Metamathematics (Tenth ed.). North-Holland Publishing Company. ISBN 978-0-7204-2103-3.
    Knuth, Donald (1997). Fundamental Algorithms, Third Edition. Reading, Massachusetts: Addison–Wesley. ISBN 978-0-201-89683-1.
    Knuth, Donald (1969). Volume 2/Seminumerical Algorithms, The Art of Computer Programming First Edition. Reading, Massachusetts: Addison–Wesley.
    Kosovsky, N.K. Elements of Mathematical Logic and its Application to the theory of Subrecursive Algorithms, LSU Publ., Leningrad, 1981
    Kowalski, Robert (1979). "Algorithm=Logic+Control". Communications of the ACM. 22 (7): 424–436. doi:10.1145/359131.359136. S2CID 2509896.
    A.A. Markov (1954) Theory of algorithms. [Translated by Jacques J. Schorr-Kon and PST staff] Imprint Moscow, Academy of Sciences of the USSR, 1954 [i.e., Jerusalem, Israel Program for Scientific Translations, 1961; available from the Office of Technical Services, U.S. Dept. of Commerce, Washington] Description 444 p. 28 cm. Added t.p. in Russian Translation of Works of the Mathematical Institute, Academy of Sciences of the USSR, v. 42. Original title: Teoriya algerifmov. [QA248.M2943 Dartmouth College library. U.S. Dept. of Commerce, Office of Technical Services, number OTS 60-51085.]
    Minsky, Marvin (1967). Computation: Finite and Infinite Machines (First ed.). Prentice-Hall, Englewood Cliffs, NJ. ISBN 978-0-13-165449-5. Minsky expands his "...idea of an algorithm – an effective procedure..." in chapter 5.1 Computability, Effective Procedures and Algorithms. Infinite machines.
    Post, Emil (1936). "Finite Combinatory Processes, Formulation I". The Journal of Symbolic Logic. 1 (3): 103–105. doi:10.2307/2269031. JSTOR 2269031. Reprinted in The Undecidable, pp. 289ff. Post defines a simple algorithmic-like process of a man writing marks or erasing marks and going from box to box and eventually halting, as he follows a list of simple instructions. This is cited by Kleene as one source of his "Thesis I", the so-called Church–Turing thesis.
    Rogers, Jr, Hartley (1987). Theory of Recursive Functions and Effective Computability. The MIT Press. ISBN 978-0-262-68052-3.
    Rosser, J.B. (1939). "An Informal Exposition of Proofs of Godel's Theorem and Church's Theorem". Journal of Symbolic Logic. 4 (2): 53–60. doi:10.2307/2269059. JSTOR 2269059. Reprinted in The Undecidable, p. 223ff. Herein is Rosser's famous definition of "effective method": "...a method each step of which is precisely predetermined and which is certain to produce the answer in a finite number of steps... a machine which will then solve any problem of the set with no human intervention beyond inserting the question and (later) reading the answer" (p. 225–226, The Undecidable)
    Santos-Lang, Christopher (2014). "Moral Ecology Approaches to Machine Ethics" (PDF). In van Rysewyk, Simon; Pontier, Matthijs (eds.). Machine Medical Ethics. Intelligent Systems, Control and Automation: Science and Engineering. 74. Switzerland: Springer. pp. 111–127. doi:10.1007/978-3-319-08108-3_8. ISBN 978-3-319-08107-6.
    Scott, Michael L. (2009). Programming Language Pragmatics (3rd ed.). Morgan Kaufmann Publishers/Elsevier. ISBN 978-0-12-374514-9.
    Sipser, Michael (2006). Introduction to the Theory of Computation. PWS Publishing Company. ISBN 978-0-534-94728-6.
    Sober, Elliott; Wilson, David Sloan (1998). Unto Others: The Evolution and Psychology of Unselfish Behavior. Cambridge: Harvard University Press.
    Stone, Harold S. (1972). Introduction to Computer Organization and Data Structures (1972 ed.). McGraw-Hill, New York. ISBN 978-0-07-061726-1. Cf. in particular the first chapter titled: Algorithms, Turing Machines, and Programs. His succinct informal definition: "...any sequence of instructions that can be obeyed by a robot, is called an algorithm" (p. 4).
    Tausworthe, Robert C (1977). Standardized Development of Computer Software Part 1 Methods. Englewood Cliffs NJ: Prentice–Hall, Inc. ISBN 978-0-13-842195-3.
    Turing, Alan M. (1936–37). "On Computable Numbers, With An Application to the Entscheidungsproblem". Proceedings of the London Mathematical Society. Series 2. 42: 230–265. doi:10.1112/plms/s2-42.1.230.. Corrections, ibid, vol. 43(1937) pp. 544–546. Reprinted in The Undecidable, p. 116ff. Turing's famous paper completed as a Master's dissertation while at King's College Cambridge UK.
    Turing, Alan M. (1939). "Systems of Logic Based on Ordinals". Proceedings of the London Mathematical Society. 45: 161–228. doi:10.1112/plms/s2-45.1.161. hdl:21.11116/0000-0001-91CE-3. Reprinted in The Undecidable, pp. 155ff. Turing's paper that defined "the oracle" was his PhD thesis while at Princeton.
    United States Patent and Trademark Office (2006), 2106.02 **>Mathematical Algorithms: 2100 Patentability, Manual of Patent Examining Procedure (MPEP). Latest revision August 2006

Further reading

    Bellah, Robert Neelly (1985). Habits of the Heart: Individualism and Commitment in American Life. Berkeley: University of California Press. ISBN 978-0-520-25419-0.
    Berlinski, David (2001). The Advent of the Algorithm: The 300-Year Journey from an Idea to the Computer. Harvest Books. ISBN 978-0-15-601391-8.
    Chabert, Jean-Luc (1999). A History of Algorithms: From the Pebble to the Microchip. Springer Verlag. ISBN 978-3-540-63369-3.
    Thomas H. Cormen; Charles E. Leiserson; Ronald L. Rivest; Clifford Stein (2009). Introduction To Algorithms (3rd ed.). MIT Press. ISBN 978-0-262-03384-8.
    Harel, David; Feldman, Yishai (2004). Algorithmics: The Spirit of Computing. Addison-Wesley. ISBN 978-0-321-11784-7.
    Hertzke, Allen D.; McRorie, Chris (1998). "The Concept of Moral Ecology". In Lawler, Peter Augustine; McConkey, Dale (eds.). Community and Political Thought Today. Westport, CT: Praeger.
    Knuth, Donald E. (2000). Selected Papers on Analysis of Algorithms. Stanford, California: Center for the Study of Language and Information.
    Knuth, Donald E. (2010). Selected Papers on Design of Algorithms. Stanford, California: Center for the Study of Language and Information.
    Wallach, Wendell; Allen, Colin (November 2008). Moral Machines: Teaching Robots Right from Wrong. US: Oxford University Press. ISBN 978-0-19-537404-9.

External links
	Look up algorithm in Wiktionary, the free dictionary.
	Wikibooks has a book on the topic of: Algorithms
	At Wikiversity, you can learn more and teach others about Algorithm at the Department of Algorithm
	Wikimedia Commons has media related to Algorithms.

    "Algorithm", Encyclopedia of Mathematics, EMS Press, 2001 [1994]
    Algorithms at Curlie
    Weisstein, Eric W. "Algorithm". MathWorld.
    Dictionary of Algorithms and Data Structures – National Institute of Standards and Technology

Algorithm repositories

    The Stony Brook Algorithm Repository – State University of New York at Stony Brook
    Collected Algorithms of the ACM – Association for Computing Machinery
    The Stanford GraphBase – Stanford University

    vte

Industrial and applied mathematics
Authority control Edit this at Wikidata	

    BNE: XX527980 BNF: cb119358199 (data) GND: 4001183-5 LCCN: sh85003487 MA: 11413529, 106516650 NDL: 00560337

Categories:

    AlgorithmsMathematical logicTheoretical computer science

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons
    Wikibooks
    Wikiquote
    Wikiversity

Languages

    Alemannisch
    Deutsch
    Français
    Italiano
    Lumbaart
    Português
    Татарча/tatarça
    Українська
    中文

Edit links

    This page was last edited on 9 May 2021, at 14:49 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! All Watched Over by Machines of Loving Grace

!! https://en.wikipedia.org/wiki/All_Watched_Over_by_Machines_of_Loving_Grace

From Wikipedia, the free encyclopedia

!!! All Watched Over by Machines of Loving Grace is a BBC television documentary series by filmmaker Adam Curtis.[1] In the series, Curtis argues that computers have failed to liberate humanity, and instead have "distorted and simplified our view of the world around us."[2] The title is taken from a 1967 poem of the same name by Richard Brautigan.[3] The first episode was originally broadcast at 9 pm on 23 May 2011.[2] 
!!! For other uses, see All Watched Over by Machines of Loving Grace (disambiguation). https://en.wikipedia.org/wiki/All_Watched_Over_by_Machines_of_Loving_Grace_(TV_series)

"All Watched Over by Machines of Loving Grace" is a poem by Richard Brautigan first published in his 1967 collection of the same name, his fifth book of poetry. It presents an enthusiastic description of a technological utopia in which machines improve and protect the lives of humans. It has been read as both a counterculture adoption of Cold War-era technological visions as well as an ironic critique of the utopia it describes. It is Brautigan's most frequently reprinted poem.
Contents

    1 Synopsis and analysis
    2 Publication history
    3 Legacy
    4 References
    5 External links

Synopsis and analysis

Brautigan wrote the poem and eponymous collection between January 17–26, 1967, while a poet-in-residence at the California Institute of Technology in Pasadena, California.[1][2] The poem describes a technological utopia in which humans and technology work together for the greater good. Brautigan writes about "mammals and computers liv[ing] together in mutually programming harmony", with technology acting as caretakers while "we are free of our labors and joined back to nature."[3][4] Reviewers disagree whether it should be taken earnestly or ironically.

Most critics take the poem as a counterculture, communitarian adoption of Cold War-era technological visions. Brautigan's publisher, Claude Hayward, said it "caught me with its magical references to benign machines keeping order ... [which] fit right in with our optimism over the promise of the computer".[5] In Vijay Nambisan's review for The Hindu in 2000, he said: "You cannot write a poem like this today. It is too childlike, too innocent. Indeed, college friends who were moved by Brautigan's work twenty years ago would now laugh at me for choosing it. That's more or less what happened to Brautigan."[6]

Others have interpreted it as an ironic, mocking critique of the technologically enabled utopia it purports to long for.[7][8] According to Stanford's Carlos Seligo, there is an irony in the poem that "is as subtle and complex as his mixed metaphors", which Seligo says are "always doing at least three—and often four, five, or six things at once."[9] Robert J. Grangeware noted how unusual it is for American poets to take a positive view of our relationship with technology, but if viewed as ironic it "joins the mainstream of antitechnological American verse."[10]
Publication history

The poem was first published by the Communication Company in 1967, type-written on an 8.5-by-11-inch (216 by 279 mm) mimeographed broadside with both the title and imprint hand-written.[1]

It was the title poem in the April 1967 collection of the same name, published in April 1967. 1,500 copies of the 36-page work were printed at the Communication Company, and all were given away for free.[1]

It was included with the rest of the contents of the 1967 collection, along with other previously published collections and new material, in The Pill versus the Springhill Mine Disaster (1968).[11]

Brautigan gave the poem to The Diggers to include in their August 1968 pamphlet, The Digger Papers. The 24-page pamphlet was published in The Realist issue 81, and another 40,000 copies were printed by the Diggers and given away for free.[12]

"All Watched Over by Machines of Loving Grace" is Brautigan's most frequently reprinted poem.[5] In the original 1967 publication, Brautigan included a copyleft statement which retains copyright but grants permission to reprint any poem in All Watched Over by Machines of Loving Grace so long as it is given away for free.[1]
Legacy

The documentary series All Watched Over by Machines of Loving Grace was named after the poem, which is a favorite of director Adam Curtis. Its second part includes a recording of Brautigan doing a reading. According to the Chicago Reader, "For all the frenzy of the images, what dominates the sequence are Brautigan's voice and the languid piece of symphonic music on the soundtrack."[7]

At the Palais de Tokyo, the poem inspired a show of the same name in 2017, curated by Yoann Gourmel. It began with a poster for the poem, and included works which Art in America's Federico Florian said superficially fulfill Brautigan's dreams, "[evoking] a present tense where technology has imbued every aspect of human life, and therefore reshaped the mechanisms of our affections."[13]
References

Barber, John F. "Poetry - All Watched Over by Machines of Loving Grace". Brautigan.net.
Watson, Ian. "Machines of Loving Grace". The Universal Machine. Copernicus. pp. 285–306. doi:10.1007/978-3-642-28102-0_13. ISBN 978-3-642-28102-0.
Madrigal, Alexis C. (17 September 2011). "Weekend Poem: All Watched Over by Machines of Loving Grace". The Atlantic.
Bokinsky, Caroline J. (1980). "Richard Brautigan". In Greiner, Donald J. (ed.). Dictionary of Literary Biography. 5. Detroit: Gale Research Company. pp. 96–99.
Barber, John F. (2006). Richard Brautigan: Essays on the Writings and Life. McFarland. ISBN 9780786482511.
Nambisan, Vijay (3 June 2000). "Pines and cybernetics". The Hindu. Archived from the original on 4 April 2018. Retrieved 4 April 2018.
Sachs, Ben (5 January 2012). "Now online: All Watched Over by Machines of Loving Grace (part 2)". Chicago Reader.
Turner, Fred (2010). From Counterculture to Cyberculture: Stewart Brand, the Whole Earth Network, and the Rise of Digital Utopianism. Chicago, IL: University of Chicago Press. pp. 38–39. ISBN 9780226817439.
Seligo, Carlos (4 June 2011). ""All Watched Over by Machines of Loving Grace"". Stanford University Libraries - Academic Technology Specialists. Archived from the original on 9 June 2017. Retrieved 3 September 2016.
Grangeware, Robert J., ed. (1972). The Exploited Eden: Literature on the American Environment. New York: Harper and Row. p. 376.
Barber, John F. "Poetry - The Pill versus The Springhill Mine Disaster". Brautigan.net. Archived from the original on 2009-01-14.
Barber, John F. "A-Z Index". Brautigan.net. Archived from the original on 2006-08-11.

    Florian, Federico (June 2017). ""All Watched Over By Machines of Loving Grace" - Palais de Tokyo". Art in America. 105 (6): 146.

External links

    Scanned copy of the first 1967 broadside
    All Watched Over by Machines of Loving Grace at Brautigan.net

    vte

Works by Richard Brautigan

    List-Class article Bibliography Category Category

Novels	

    A Confederate General from Big Sur (1964) Trout Fishing in America (1967) In Watermelon Sugar (1968) The Abortion: An Historical Romance 1966 (1971) The Hawkline Monster: A Gothic Western (1974) Willard and His Bowling Trophies: A Perverse Mystery (1975) Sombrero Fallout: A Japanese Novel (1976) Dreaming of Babylon: A Private Eye Novel 1942 (1977) So the Wind Won't Blow It All Away (1982) An Unfortunate Woman: A Journey (1994)

Poetry collections	

    The Return of the Rivers (1958) The Galilee Hitch-Hiker (1958) Lay the Marble Tea (1959) The Octopus Frontier (1960) All Watched Over by Machines of Loving Grace (1967) Please Plant This Book (1968) The Pill Versus the Springhill Mine Disaster (1968) Rommel Drives on Deep into Egypt (1970) Loading Mercury with a Pitchfork (1971) June 30th, June 30th (1978) The Edna Webster Collection of Undiscovered Writings (1999)

Poems	

    "All Watched Over by Machines of Loving Grace"

Short story collections	

    Revenge of the Lawn (1971) The Tokyo-Montana Express (1980)

Categories:

    Works by Richard Brautigan1967 poemsUtopian fictionAmerican poems

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

Add links

    This page was last edited on 21 April 2021, at 19:31 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! All Watched Over by Machines of Loving Grace (TV series)

!! https://en.wikipedia.org/wiki/All_Watched_Over_by_Machines_of_Loving_Grace_(TV_series)

From Wikipedia, the free encyclopedia

!!! "All Watched Over by Machines of Loving Grace" is a poem by Richard Brautigan first published in his 1967 collection of the same name, his fifth book of poetry. It presents an enthusiastic description of a technological utopia in which machines improve and protect the lives of humans. It has been read as both a counterculture adoption of Cold War-era technological visions as well as an ironic critique of the utopia it describes. It is Brautigan's most frequently reprinted poem. 
!!! For other uses, see All Watched Over by Machines of Loving Grace (disambiguation). https://en.wikipedia.org/wiki/All_Watched_Over_by_Machines_of_Loving_Grace 
All Watched Over by Machines of Loving Grace
Written by	Adam Curtis
Directed by	Adam Curtis
Country of origin	United Kingdom
Original language	English
No. of series	1
No. of episodes	3
Production
Executive producer	Dominic Crossley-Holland
Producers	Lucy Kelsall
Adam Macqueen
James Harkin
Andrew Orlowski
Running time	180 minutes (in three parts)
Production company	BBC
Release
Original network	BBC Two
Original release	23 May –
6 June 2011
Chronology
Preceded by	The Trap (2007)
Followed by	Bitter Lake (2015)

All Watched Over by Machines of Loving Grace is a BBC television documentary series by filmmaker Adam Curtis.[1] In the series, Curtis argues that computers have failed to liberate humanity, and instead have "distorted and simplified our view of the world around us."[2] The title is taken from a 1967 poem of the same name by Richard Brautigan.[3] The first episode was originally broadcast at 9 pm on 23 May 2011.[2]
Contents

    1 Episodes
        1.1 Part 1. 'Love and Power'
            1.1.1 Contributors
        1.2 Part 2. 'The Use and Abuse of Vegetational Concepts'
            1.2.1 Contributors
        1.3 Part 3. 'The Monkey in the Machine and the Machine in the Monkey'
            1.3.1 Contributors
    2 Interviews and reviews
    3 Music
    4 See also
    5 References
    6 External links

Episodes
	
This article's plot summary may be too long or excessively detailed. Please help improve it by removing unnecessary details and making it more concise. (February 2019) (Learn how and when to remove this template message)
Part 1. 'Love and Power'

In the first episode, Curtis traces the effects of Ayn Rand's ideas on American financial markets, particularly via the influence of Alan Greenspan, who was a member of a reading group called the Collective, which discussed her work and her philosophy of Objectivism. While Rand's novels were critically savaged, they inspired people working in the technology sector of Silicon Valley, leading to the emergence of the Californian Ideology, a techno-utopian belief that computer networks could measure, control and help to stabilise societies without hierarchical political control. Rand had an affair with Nathaniel Branden, another member of The Collective, with the approval of Brandan's wife, Barbara Branden. The affair would eventually end acrimoniously and the Collective disbanded. Rand's circle of friends contracted considerably, though Greenspan remained loyal to her.
Alan Greenspan

Greenspan entered government in the 1970s and became Chairman of the Federal Reserve. In 1992, he visited the newly-elected Bill Clinton and persuaded him to curtail U.S. government intervention in the economy, letting the markets manage themselves with the help of computer modelling to predict risks and hedge against them, a paradigm named "the New Economy". However, by 1996, production figures failed to increase, but profits were nevertheless rising. Greenspan worried that unsustainable speculative bubbles were forming, but after political attacks from all sides, Greenspan changed his reasoning and suggested that new efficiencies had emerged that his data wasn't measuring. In parallel with this, American investors began pouring large sums of money into economies in eastern Asia, though the Council of Economic Advisers, lead by Joseph Stiglitz, began warning that these economies were much more fragile than they seemed. However, these warnings did not reach the president, having been blocked by Robert Rubin, who feared damage to financial interests.

The 1997 Asian financial crisis began as the property bubble in the Far East began to burst in, first in Thailand, then later in South Korea and Indonesia, causing large financial losses in those countries that greatly affected foreign investors. While Bill Clinton was preoccupied with the Monica Lewinsky scandal, Robert Rubin took control of foreign policy and forced loans onto the affected countries. However, after each country agreed to be bailed out by the IMF, foreign investors immediately withdrew their money, destroying their economies and leaving their taxpayers with enormous debts.
Robert Rubin

Alan Greenspan would rise to greater prominence after his handling of the economic effects of the September 11 attacks, later cutting interest rates in the wake of the Enron scandal in a bid to stimulate the economy. Unusually, this triggered a consumer boom without creating inflation, creating new certainty that the New Economy truly existed. However, in reality, to avoid a repeat of the earlier economic crises in East Asia, China's Politburo had decided to influence America's economy via similar techniques to those used by America on other Far Eastern countries. By keeping China's exchange rate artificially low, they sold cheap goods to America, using the proceeds to buy American bonds. The money flooding into America reduced the perception of risk in signing loans to lower income clients, permitting lending beyond the point that was actually sustainable. The high level of loan defaulting that followed led ultimately to the 2007-08 financial crisis, caused by the collapse of a housing bubble similar to that which Far Eastern countries had previously faced.

In 1994, Carmen Hermosillo published a widely influential essay online, "Pandora's Vox: On Community in Cyberspace",[4] and it began to be argued that the use of computer networks had led not to a reduction in hierarchy, but actually a commodification of personality and a complex transfer of power and information to corporations. Curtis ends the piece by pointing out that not only has the idea of market stability failed to bear out in practice, but that the Californian Ideology has also been unable to bring about long-term stability. Curtis contends that the ideology had not freed its proponents from hierarchies, but has instead trapped them in a rigid system of control from which they are unable to escape.
Contributors

    Barbara Branden, member of Ayn Rand's circle, 1950s
    John McCaskey, Digital Entrepreneur, Silicon Valley, 1990s
    Kevin O'Connor, Internet Entrepreneur, Silicon Valley, 1990s
    Loren Carpenter and Rachel Carpenter
    Kevin Kelly, Wired Magazine
    Stewart Brand, Global Business Network
    Alvin Toffler, Digital Futurologist
    Peter Schwartz, Global Business Network
    Kenichi Ohmae, author, The End of the Nation State
    Nathaniel Branden, Ayn Rand's lover
    Joan Mitchell
    Stephen Roach, Chief Economist, Morgan Stanley 1990s
    Joseph Stiglitz, Head of the Council of Economic Advisers 1995–97
    Robert Rubin, US Secretary of the Treasury 1995–99

Part 2. 'The Use and Abuse of Vegetational Concepts'

    In the 1960s, an idea penetrated deep into the public imagination that nature is a self-regulating ecosystem, there is a natural order," Curtis says. "The trouble is, it's not true — as many ecologists have shown, nature is never stable, it's always changing.

This episode investigates how ideas such as cybernetics and systems theory were applied to natural ecosystems, creating a mechanical view of the natural world, and how this relates to the false idea that there is a balance of nature. The idea of ecosystems was proposed in 1935 by Arthur Tansley, an English botanist, based on his belief that the whole of the natural world operated as a series of interconnected networks. Taken together with Jay Forrester's work in cybernetic systems, which posited that all networks are regulated by feedback loops, the belief emerged that the natural world is composed of self-regulating ecosystems that tends towards balance and equilibrium. Norbert Wiener laid out the position that humans, machines and ecology are simply nodes in a network in his book Cybernetics, or Control and Communication in the Animal and the Machine, and this book became the bible of cybernetics. Brothers Howard T. Odum and Eugene Odum, both ecologists, further developed these ideas; Howard collected data from ecological systems and built electronic networks to simulate them, and his brother Eugene then took these ideas and generalised them to the whole of ecology. The idea that the natural world tended towards balance became conventional wisdom among scientists.

In the 1960s, Buckminster Fuller invented a radically new kind of structure, the geodesic dome, which emulated ecosystems in being made of highly connected, relatively weak parts, which built a stronger structure. It was applied to the radomes covering early warning systems in the Arctic. His other system-based ideas inspired the counterculture movement. Communes of people who saw themselves as nodes in a network, without hierarchy, and applied feedback to try to control and stabilise their societies, used his geodesic domes as habitats. Around this time, Stewart Brand filmed a demonstration of a networked computer system with a graphics display, mouse and keyboard that he believed would save the world by empowering people, in a similar way to the communes, to be free as individuals. In 1967, Richard Brautigan published the poetry work All Watched Over by machines of Loving Grace, which promoted the idea of a cybernetic ecological utopia consisting of a fusion of computers and organisms living in perfect harmony and stability.
Jan Smuts

By the 1970s, new challenges emerged that could not be solved by normal hierarchical systems, such as overpopulation, limited natural resources and pollution. Jay Forrester applied systems theory to the problem and drew a cybernetic system diagram for the world. This was turned into a computer model which predicted population collapse. This became the basis of the model that was used by the Club of Rome, and the findings from this were published in The Limits to Growth. Forrester then argued for zero growth in order to maintain a steady equilibrium within the capacity of the Earth. However, this was opposed by many people within the environmental movement, since the model did not allow for people to change their values to stabilise the world, and they argued that the model tried to maintain and enforce the current political hierarchy. Critics compared Forrester's ideas to a dispute between Arthur Tansley and Field Marshal Jan Smuts. Smuts had invented a philosophy called holism, where everyone had a 'rightful place', which was to be managed by the white race, which Tansley called an "abuse of vegetational concepts." The 70s protestors claimed that the same conceptual abuse of the supposed natural order was occurring, that it was really being used for political control.

The belief in the stability of natural systems began to break down when a study was made of the predator-prey relationship of wolves and elks. It was found that populations of predators and prey had varied wildly over centuries. Other studies then found huge variations, and a significant lack of homeostasis in natural systems. George Van Dyne then tried to build a computer model to try to simulate a complete ecosystem based on extensive real-world data, to show how the stability of natural systems actually worked. To his surprise, the computer model did not stabilise like the Odums' electrical model had. The reason for this lack of stabilisation was that he had used extensive data which more accurately reflected reality, whereas the Odums and other ecologists had "ruthlessly simplified nature." The scientific idea had thus been shown to fail, but the popular idea remained in currency, and even grew as it apparently offered the possibility of a new egalitarian world order.

In 2003, a wave of spontaneous revolutions swept through Asia and Europe. Coordinated only via the internet, nobody seemed to be in overall charge, and no overall aims except self-determination and freedom were apparent. This seemed to justify the beliefs of the computer utopians. However, the freedom from these revolutions lasted for only a short time, with most of the countries falling back into political corruption almost immediately. Curtis compares them with the hippy communes, all of which broke up within a few years, as aggressive members of the group began to bully the weaker ones, who were unable to band together in their own defence because formal power structures were prohibited by the commune's rules, and even intervention against bullying by benevolent individuals was discouraged.

Curtis closes the episode by stating that it has become apparent that while the self-organising network is good at organising change, they fail to provide direction for determining what comes afterwards; networks leave people helpless in the face of those who already wield political power.
Contributors

    Peder Anker, historian of ecology
    Jay Forrester, systems theorist
    Fred Turner, historian of media and technology
    Peter J. Taylor, historian of science
    Dr Daniel Botkin, ecologist
    Randall Gibson, former member of 'Synergia' commune
    Molly Hollenbach, former member of 'The Family' commune
    Stewart Brand
    Alexander King, Co-Founder of the Club of Rome (archive)
    Tord Björk, environmental activist
    Dr Steward Pickett, ecologist
    Dr Dave Swift and Dr Sam Bledsoe, Grasslands Project
    Al Gore, former US Vice President
    Dr Laura J. Cameron, historical geographer

Part 3. 'The Monkey in the Machine and the Machine in the Monkey'

This episode looks into the selfish gene theory invented by William Hamilton, which holds that humans are machines controlled by genes. Curtis also covers the source of ethnic conflict that was created by Belgian colonialism's artificial creation of a racial divide and the ensuing slaughter that occurred in the Democratic Republic of the Congo, which is a source of raw material for computers and cell phones.

In the 1930s, Armand Denis made films that told the world about Africa. However, his documentary gave fanciful stories about Rwanda's Tutsis being a noble ruling elite originally from Egypt, whereas the Hutus were a peasant race. In reality, they were racially the same, but the Belgian rulers had ruthlessly exploited the myth to divide the Rwandan people. But when it came to independence, liberal Belgians felt guilty, and decided the Hutus should overthrow the Tutsi rule. This led to a bloodbath, as the Tutsis were then seen as aliens and were slaughtered.

In 1960, Congo had become independent from Belgium, but governance promptly collapsed, and towns became battle grounds as soldiers fought for control of the mines. America and the Belgians organised a coup, and the elected leader, Patrice Lumumba, was kidnapped and executed, causing chaos. However, the Western mining operations were initially largely unaffected. Mobutu Sese Seko was installed as president, killed his opponents and stopped a liberal democracy from forming. Mobutu changed the Congo's name to Zaire, looting millions of dollars and letting mines and industries collapse.

In Congo, with a civil war ongoing, Dian Fossey, who was researching gorillas, was captured. She escaped and created a new camp high up on a mountain in Rwanda, where she continued to study gorillas. She tried to completely protect the gorillas, which were very susceptible to human diseases and were hated because they terrorised the local people. Fossey sabotaged the local people's traps and tried to terrorise them by claiming to cast spells on them. Ultimately, Fossey's favourite gorilla, Digit, was killed by the vengeful locals. Curtis draws a parallel between Fossey and the colonialists who oppressed the Congolese, describing her as one of many westerners who brutalised and terrorised African peoples for their own high-minded ideals.
John von Neumann in the 1940s

Bill Hamilton was a solitary man who saw everything through the lens of Darwin's theory of evolution. He wanted to know why some ants and humans give up their life for others. In 1963, he realised that most of the behaviours of humans were due to genes, and he began looking at humans from the genes' point of view. From this perspective, humans were machines that were only important for carrying genes, and it made sense for a gene to sacrifice a human if it meant that another copy of the gene would survive. In 1967, American chemist George R. Price went to London after reading Hamilton's little-known papers and discovering that his equations for the behaviours of genes were equivalent to computers equations. He was able to show that these equations explained murder, warfare, suicide, goodness and spite, since these actions could help the genes. John von Neumann had invented self-reproducing machines, but Price was able to show that the self-reproducing machines were already in existence — humans were such machines.

These revelations had an enormous effect on Price. Previously a staunch rationalist, Price began to believe that these equations had been given to him by God, even though some argue that they are evidence against the existence of God. In 1973, after converting to extreme Christianity as a last chance to disprove the selfish gene theories' gloomy conclusions, Price decided to start helping poor and homeless people, giving away all his possessions in acts of random kindness. These efforts utterly failed, and he came to believe that he was being followed by the hound of heaven. He finally revealed, in his suicide note, that these acts of altruism brought more harm than good to the lives of homeless people. Richard Dawkins later took Hamilton and Price's equations and popularised them, explaining that humans are simply machines created by the selfish genes. Curtis likens this to "reinventing the immortal soul," but as computer code in the form of the genes.
President Mobutu

In 1994, the ruling Hutu government set out to eradicate the Tutsi minority. This was explained as incomprehensible ancient rivalry by the Western press. In reality it was due to the Belgian myth created during the colonial rule. Western agencies got involved, and the Tutsi fought back, creating chaos. Many flooded across the border into Zaire, and the Tutsi invaded the refugee camps to get revenge. Mobutu fell from power. Troops arrived from many countries, allegedly to help, but in reality to gain access to the country's natural resources, used to produce consumer goods for the West. Altogether, 4.5 million people were killed.

By this point Hamilton was well-honoured. However, by now he supported eugenics and believed that the help provided to the ill and disabled by modern medicine was counter to the logic of genes. He heard a story that HIV had been created from an accident with a polio vaccine, which it was thought could have been contaminated with a chimp virus. This supported his idea that modern medicine could have negative consequences. Hamilton travelled to Kisangani in the Democratic Republic of the Congo while the Second Congo War was raging. He went there to collect Chimpanzee faeces to test his theory that HIV was due to a medical mistake. While there he caught malaria, for which he took aspirin, which lodged in his gut, causing a haemorrhage which killed him. His hypothesis about the creation of AIDS would ultimately be entirely debunked.

Curtis ends the episode by saying that Hamilton's ideas that humans are computers controlled by the genes have become accepted wisdom. But he asks whether we have accepted a fatalistic philosophy that humans are helpless computers to explain and excuse the fact that, as in the Congo, we are effectively unable to improve and change the world.
Contributors

    Prof. Michael Ruse, friend of Bill Hamilton
    Kathleen Price, George Price's daughter
    Edward Teller (archive)
    James Schwartz, George Price's biographer
    Bill Hamilton (interviewed 1999)

Interviews and reviews

In May 2011, Adam Curtis was interviewed about the series by Katharine Viner in The Guardian,[5] by the Register[6] and by Little Atoms.[7]

Catherine Gee at The Daily Telegraph said that what Adam Curtis reveals, "is the dangers of human beings at their most selfish and self-satisfying. Showing no compassion or consideration for your fellow human beings creates a chasm between those able to walk over others and those too considerate – or too short-sighted – to do so."[8]

John Preston also reviewed the first episode, and said that although it showed flashes of brilliance, it had an "infuriating glibness too as the web of connectedness became ever more stretched. No one could dispute that Curtis has got a very big bite indeed. But what about the chewing, you ask. There wasn't any – or nothing like enough of it to prevent a bad case of mental indigestion."[9]

Andrew Anthony published a review in The Observer and The Guardian, and commented on the central premise that we had been made to "believe we could create a stable world that would last for ever" but that he doesn't "recall ever believing that 'we' could create a stable world that would last for ever", and noted that: "For the film-maker there seems to be an objective reality that a determined individual can penetrate if he is willing to challenge the confining chimeras of markets and machines. Forget the internet tycoons. The Randian hero is Curtis himself."[10]
Music

Curtis's style is typified by the use of frequent and often incongruous cuts of film and music, often lasting only a fraction of a second, in a technique similar to sampling. Music used in the documentary includes:

    (Opening Credits) "Baby Love Child" from This Year's Girl by Pizzicato Five
    (Closing Credits) "Aua" from Monokini by Stereo Total
    "2 Ghosts I" from Ghosts I–IV by Nine Inch Nails
    "Right Where It Belongs" from With Teeth by Nine Inch Nails
    "Suzanne" from Songs of Leonard Cohen by Leonard Cohen – played during slow-motion coverage of Monica Lewinsky and Bill Clinton (Part 1)
    "Radioactivity" from Radio-Activity by Kraftwerk
    "Best Friends" from Twin Peaks: Fire Walk with Me (soundtrack) by Angelo Badalamenti
    "Forgive" from Burial by Burial
    "Welcome to Lunar Industries" from Moon by Clint Mansell
    "I'm Sam Bell" from Moon by Clint Mansell
    "Le Fiacre" by Jean Sablon
    "The Heavenly Music Corporation" from (No Pussyfooting) by Brian Eno and Robert Fripp
    "Monkey 23" from Keep on Your Mean Side by The Kills
    "Sally and Jack" from Blow Out by Pino Donaggio
    "Tristan und Isolde" by Richard Wagner
    "4 Sea Interludes, Op. 33a: I. Dawn" (Peter Grimes, Act II: Interlude) by Benjamin Britten
    "Theme from Carrie" from Carrie by Pino Donaggio
    "The Nursery" from Moon by Clint Mansell
    "A Warm Place" from The Downward Spiral by Nine Inch Nails
    "No Man's Land" by David Holmes
    "In Dreams" from In Dreams by Roy Orbison
    "On the Rebound" from On the Rebound by Floyd Cramer
    "Corona Radiata" from The Slip by Nine Inch Nails
    "Space Mystery" (Montage) and "The Toy Trumpet" from Manhattan Research Inc. by Raymond Scott
    "Parlez-moi d'amour" by Lucienne Boyer
    "Nocturne" from The Gadfly Suite by Dmitri Shostakovich
    "Once Upon a Time in the West" from Once Upon a Time in the West by Ennio Morricone
    "I Feel Love" from I Remember Yesterday by Donna Summer
    "Magnolia" from Magnolia by Jon Brion
    "Main Theme From The Fog" by John Carpenter
    "Escape from Wing Kong" from Big Trouble in Little China by John Carpenter
    "Zero Sum" from "Year Zero" by Nine Inch Nails

See also

    Darwin among the Machines

References

The Guide (9 April 2011). "Populist: The column that's looking for a natural break". The Guardian. Retrieved 18 June 2011.
"All Watched Over by Machines of Loving Grace – video". The Guardian. 6 May 2011. Archived from the original on 9 May 2011. Retrieved 18 June 2011.
"All Watched Over by Machines of Loving Grace". BRAUTIGAN.net. 10 June 2011. Archived from the original on 19 July 2011. Retrieved 18 June 2011.
"Introducing Humdog: Pandora's Vox Redux", Folksonomy.co.
Viner, Katharine (6 May 2011). "Adam Curtis: Have computers taken away our power?". The Guardian. Archived from the original on 7 May 2011. Retrieved 19 June 2011.
Orlowski, Andrew (23 May 2011). "Adam Curtis: The Rise of the Machines Cybernetics, ecosystems and pop". The Register. Retrieved 19 June 2011.
Dave (5 June 2011). "Interview with Adam Curtis on Pulse". Pulse. Retrieved 20 June 2011.
Gee, Catherine (23 May 2011). "All Watched Over by Machines of Loving Grace, review". The Daily Telegraph. Retrieved 20 June 2011.
Preston, John (27 May 2011). "All Watched Over by Machines of Loving Grace, BBC Two, review". The Daily Telegraph. Retrieved 20 June 2011.

    Anthony, Andrew (29 May 2011). "Rewind TV: All Watched Over by Machines of Loving Grace; Strangeways – review". The Guardian. Retrieved 20 June 2011.

External links

    All Watched Over by Machines of Loving Grace at BBC Online Edit this at Wikidata
    All Watched Over by Machines of Loving Grace at IMDb Edit this at Wikidata
    Teaser on Adam Curtis's blog
    Longer promotional video on Adam Curtis's blog
    Curtis, Adam (29 May 2011). "How the 'ecosystem' myth has been used for sinister means". The Observer. This article by Adam Curtis in The Observer complements the second episode.

    vte

Documentaries by Adam Curtis
Films	

    Inside Story: The Road to Terror (1989) £830,000,000 – Nick Leeson and the Fall of the House of Barings (1996) It Felt Like a Kiss (2009) Bitter Lake (2015) HyperNormalisation (2016)

Series	

    An Ocean Apart (1988) Pandora's Box (1992) The Living Dead (1995) Modern Times: The Way of All Flesh (1997) The Mayfair Set (1999) The Century of the Self (2002) The Power of Nightmares (2004) The Trap (2007) All Watched Over by Machines of Loving Grace (2011) Can't Get You Out of My Head (2021)

Categories:

    2011 British television series debuts2011 British television series endings2010s British documentary television seriesBBC television documentariesEnglish-language television showsDocumentary films about computingDocumentary films about politicsDocumentary films about scienceCollage filmFilms directed by Adam CurtisCollage television

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Français

Edit links

    This page was last edited on 1 May 2021, at 07:33 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Allocative efficiency

!! https://en.wikipedia.org/wiki/Allocative_efficiency

From Wikipedia, the free encyclopedia

Allocative efficiency is a state of the economy in which production is aligned with consumer preferences; in particular, every good or service is produced up to the point where the last unit provides a marginal benefit to consumers equal to the marginal cost of producing.

In contract theory, allocative efficiency is achieved in a contract in which the skill demanded by the offering party and the skill of the agreeing party are the same.

Resource allocation efficiency includes two aspects. At the macro aspect, it is the allocation efficiency of social resources, which is achieved through the economic system arrangements of the entire society. The micro aspect is the use efficiency of resources, which can be understood as the production efficiency of the organization, which can be improved through innovation and progress within the organizations.

Although there are different standards of evaluation for the concept of allocative efficiency, the basic principle asserts that in any economic system, choices in resource allocation produce both "winners" and "losers" relative to the choice being evaluated. The principles of rational choice, individual maximization, utilitarianism and market theory further suppose that the outcomes for winners and losers can be identified, compared, and measured. Under these basic premises, the goal of attaining allocative efficiency can be defined according to some principles where some allocations are subjectively better than others. For example, an economist might say that a policy change is an allocative improvement as long as those who benefit from the change (winners) gain more than the losers lose (see Kaldor–Hicks efficiency).

An allocatively efficient economy produces an "optimal mix" of commodities.[1]:9 A firm is allocatively efficient when its price is equal to its marginal costs (that is, P = MC) in a perfect market. The demand curve coincides with the marginal utility curve, which measures the (private) benefit of the additional unit, while the supply curve coincides with the marginal cost curve, which measures the (private) cost of the additional unit. In a perfect market, there are no externalities, implying that the demand curve is also equal to the social benefit of the additional unit, while the supply curve measures the social cost of the additional unit. Therefore, the market equilibrium, where demand meets supply, is also where the marginal social benefit equals the marginal social costs. At this point, the net social benefit is maximized, meaning this is the allocative efficient outcome. When a market fails to allocate resources efficiently, there is said to be market failure. Market failure may occur because of imperfect knowledge, differentiated goods, concentrated market power (e.g., monopoly or oligopoly), or externalities.

In the single-price model, at the point of allocative efficiency price is equal to marginal cost.[2][3] At this point the social surplus is maximized with no deadweight loss (the latter being the value society puts on that level of output produced minus the value of resources used to achieve that level). Allocative efficiency is the main tool of welfare analysis to measure the impact of markets and public policy upon society and subgroups being made better or worse off.

It is possible to have Pareto efficiency without allocative efficiency: in such a situation, it is impossible to reallocate resources in such a way that someone gains and no one loses (hence we have Pareto efficiency), yet it would be possible to reallocate in such a way that gainers gain more than losers lose (hence with such a reallocation, we do not have allocative efficiency).[4]:397

Also, for an extensive discussion of various types of allocative efficiency in a production context and their estimations see Sickles and Zelenyuk (2019, Chapter 3, etc).[5] In view of the Pareto efficiency measurement method, it is difficult to use in actual operation, including the use of human and material resources, which is hard to achieve a full range of efficiency allocation, and it is mainly to make judgments from the allocation of funds; therefore, analyzing the funds in the stock market. Allocation efficiency is used to determine the efficiency of resource allocation in the capital market.

In a perfectly competitive market, capital market resources should be allocated among capital markets under the principle of the highest marginal benefit. Therefore, the most important measurement standard in the capital market is to observe whether capital flows into the enterprise with the best operating efficiency. The most efficient companies should also get a large amount of capital investment, and the less efficient companies should get less capital investment. There are three conditions that come with Pareto efficiency Best trade outcome Even if you trade again, individuals cannot get greater benefits from it. At this time, for any two consumers, the marginal substitution rate of any two commodities is the same, and the utility of the two consumers is maximized at the same time. Optimal production: This economy must be on the boundary of its own production possibilities. At this time, for any two producers who produce different products, the marginal technology substitution rate of the two production factors that need to be input is the same, and the output of the two consumers is maximized at the same time. Optimal product mix: The combination of products produced by the economy must reflect consumer preferences. At this time, the marginal rate of substitution between any two commodities must be the same as the marginal product conversion rate of any producer between these two commodities.


A numerical example of allocative efficiency:


Allocation efficiency occurs when there is an optimal distribution of goods and services, considering consumer’s preference. When the price equals marginal cost of production, the allocation efficiency is at the output level. This is because the optimal distribution is achieved when the marginal utility of good equals the marginal cost. The price that consumer is willing to pay is same as the marginal utility of the consumer.


From the graph we can see that at the output of 40, the marginal cost of good is $6 while the price that consumer is willing to pay is $15. It means the marginal utility of the consumer is higher than the marginal cost. The optimal level of the output is 70, where the marginal cost equals to marginal utility. At the output of 40, this product or service is under-consumed by the society. By increasing the output to 70, the price will fall to $11. Meanwhile, the society would benefit from consuming more of the good or service.


An example of allocation inefficiency

With the market power, the monopoly can increase the price to gain the super normal profit. The monopolies can set the price above the marginal cost of the production. In this case, the allocation is not efficient. It results in the dead weight welfare loss to the society as a whole. In real life, the government's intervention policy to monopoly enterprises will affect the allocation efficiency. Large-scale downstream companies with more efficient or better products are generally more competitive than other companies. The wholesale prices they get are much lower than those of their competitors. It is conducive to improving the efficiency of allocation. Ind erst and Shaffer (2009) found that banning prices would reduce allocation efficiency and lead to higher wholesale prices for all enterprises. More importantly, social welfare, industry profits, and consumer surplus will all be reduced.


See also

    Financial market efficiency
    Pareto efficiency
    Production-possibility frontier
    Productive efficiency
    X-inefficiency

References

Kim, A., Decentralization and the Provision of Public Services: Framework and Implementation (Washington, D.C.: The World Bank, 2008), p. 9.
Markovits, Richard (1998). Matters of Principle. New York: New York University Press. ISBN 978-0-8147-5513-6.
Markovits, Richard (2008). Truth or Economics. New Haven: Yale University Press. ISBN 978-0-300-11459-1.
Beardshaw, J., Economics: A Student's Guide (Upper Saddle River, NJ: FT Press, 1984), p. 397.

    Sickles, R., & Zelenyuk, V. (2019). Measurement of Productivity and Efficiency: Theory and Practice. Cambridge: Cambridge University Press. doi:10.1017/9781139565981

6. Inderst, Roman, and Greg Shaffer. "Market Power, Price Discrimination, and Allocative Efficiency in Intermediate-Goods Markets." The RAND Journal of Economics 40, no. 4 (2009): 658-72. Accessed April 27, 2021. http://www.jstor.org/stable/25593732.
Categories:

    Pareto efficiencyPrice controls

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Español
    Slovenčina
    Српски / srpski
    Suomi
    Svenska

Edit links

    This page was last edited on 28 April 2021, at 20:25 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Ambidextrous organization

!! https://en.wikipedia.org/wiki/Ambidextrous_organization

From Wikipedia, the free encyclopedia
	
This article includes a list of general references, but it remains largely unverified because it lacks sufficient corresponding inline citations. Please help to improve this article by introducing more precise citations. (February 2013) (Learn how and when to remove this template message)

Organizational ambidexterity refers to an organization's ability to be efficient in its management of today's business and also adaptable for coping with tomorrow's changing demand. Just as being ambidextrous means being able to use both the left and right hand equally, organizational ambidexterity requires the organizations to use both exploration and exploitation techniques to be successful.
Contents

    1 Origin and development
    2 Ambidextrous organizational designs and organizational ambidexterity
    3 Structural and behavioral mechanisms that lead to organizational ambidexterity
    4 Antecedents of organizational ambidexterity
    5 Outcomes of organizational ambidexterity
    6 Related moderators between organizational ambidexterity and organizational outcomes
    7 Levels of ambidexterity
    8 Ambidextrous leadership
    9 Controversy and future directions
    10 See also
    11 References
    12 Further reading

Origin and development

Organizational ambidexterity was defined as an organization's ability to be aligned and efficient in its management of today's business demands as well as being adaptive to changes in the environment at the same time.[1] This term of organizational ambidexterity was first used by Duncan,[1] however, it was March[2] that had been credited for developing and generating greater interest in this concept, especially in the late 20th and early 21st century. Ambidexterity in an organization is achieved by balancing exploration and exploitation, which allows the organization to be creative and adaptable, while also continuing to rely on more traditional, proven methods of business.[2] Exploration includes things such as search, variation, risk taking, experimentation, flexibility, discovery or innovation, whereas exploitation includes such things as refinement, choice, production, efficiency, selection, implementation, and execution.[2] Companies that focus only on exploration face the risk of wasting resources on ideas that may not prove useful or never be developed. On the other hand, companies that focus only on exploitation may accept status quo performance and products and fail to reach optimal levels of success.

Organizational ambidexterity is defined broadly, and several other terms are also highly related or similar to the construct of ambidextrous organization, including organizational learning, technological innovation, organizational adaptation, strategic management, and organizational design. Things such as reconciling exploitation and exploration, the simultaneity of induced and autonomous strategy processes, synchronizing incremental and discontinuous innovation, and balancing search and stability also tend to refer to the same underlying construct as ambidextrous organization.[3]

There are studies on how structural and behavioral mechanisms affect organizational ambidexterity and studies on how ambidextrous organizational designs affect organizational ambidexterity. Whereas earlier studies on structural and behavioral mechanisms regarded the trade-offs between exploration and exploitation to be insurmountable, more recent research has paid attention to a range of organizational solutions to engender the existence of ambidexterity. One recent hot research topic in this area focused on the leadership characteristics that enable organizations to manage the contradictions that they face and achieve ambidexterity,[4][5][6] which is the origin of the concept ‘ambidextrous leadership’. Several antecedents, outcomes of organizational ambidexterity as well as related moderators have also been identified in the studies on structural and behavioral mechanisms.
Ambidextrous organizational designs and organizational ambidexterity

The studies on "ambidextrous organizations" take the organization as the unit of analysis and ambidextrous organizing is conceptualized as the simultaneous pursuit and combination of incremental and discontinuous innovation. [7][8][9] "Ambidextrous organizations" are needed if the failure to balance exploitation and exploration is to be overcome: "the ability to pursue simultaneously both incremental and discontinuous innovation results from hosting multiple contradictory structures, processes, and cultures" (Tushman and O'Reilly, 1996: page 24).[10] It has been empirically found that competence exploitation is negatively related to radical innovation performance whereas the effect for competence exploration is positive; competence exploration will be more valuable to the firm when it is matched with lower levels of competence exploitation, and vice versa.[11] It has been theorized that the "ambidextrous organization" does not solve the tension between alignment and adaptability but allows for coping with the tension between different types of alignment in order to produce incremental and discontinuous innovation. "Ambidextrous organizations" do not alternate between exploration and exploitation, but they do both simultaneously.[12] There's work that empirically investigates the processes of ambidextrous organizing by analyzing the implementation of the "ambidextrous organizations" concept in order to study whether there is evidence on how companies applying the concepts (suggested by "ambidextrous organizations" proponents) actually manage the processes of exploitation and exploration.[13]
Structural and behavioral mechanisms that lead to organizational ambidexterity

Organizational ambidexterity can be considered primarily from two angles. One is architectural or structural ambidexterity, which uses dual organizational structures and strategies to differentiate efforts towards exploitation and exploration.[14][15][16] Structural ambidexterity includes dual parts, with one part focusing on exploitation and the other focusing on exploration. It's also known as the spatial separation of the dual strategies concepts outlined above. The other approach is contextual ambidexterity, which uses behavioral and social means to integrate exploitation and exploration at the organizational unit level.[17][18] Contextual ambidexterity is a balanced type that takes a mid-level position between exploitation and exploration, also known as parallel structures or hybrid strategies.

Although both angles are related to the theme of organizational ambidexterity, they strongly differ in the way how they are configured. There has always been a debate of which of the two different approaches is right. The dual type allows both discrete orientations and fit across dimensions at the unit level but creates a misfit between organizational units. Some researchers argued that inconsistent structures may lead to low performance.[19][20] There are also some researchers trying to investigate the external and internal contingencies under which different configurations can be found. One factor would be the speed and type of technological change that organizations confront. On the other hand, the balanced type (i.e. contextual ambidexterity) is consistent with the systems approach of fit across multiple dimensions,[21][22] but contradicts the opinion that organizational choice is discrete.[23][24] In an environment where changes are slow, there will be sufficient time to react to the radical changes by constructing dual structures and strategies. However, in a high-competitive environment, balanced structures may be better prepared to deal with the constant need for alignment.[3] In future studies, the different organizational ambidexterity configurations can be compared to find a better solution for dealing with the exploitation and exploration paradox.
Antecedents of organizational ambidexterity

Ambidexterity is often considered a capacity or skill and can therefore be facilitated by either the organization as a whole or managers / CEOs.[25] From the structural ambidexterity's view, organizations can solve the paradox by temporarily cycling through periods of exploitation and periods of exploration.[24][26][27][28] From the other point of view (contextual ambidexterity), firms ought to address exploitation and exploration simultaneously and internally to achieve the goal ambidexterity.[16][17] Contextual ambidexterity is more difficult to achieve than structural ambidexterity because managing two inconsistent alignments within an organization simultaneously is far more complex than managing one consistent strategy after another.[29] Thus most studies on how to build ambidextrous organizations in literature focused on contextual ambidexterity rather than structural ambidexterity.

The role of leaders (or managers) is always highlighted towards building an ambidextrous organization. Several recommendations have been made to organizations on how to achieve contextual ambidexterity, including using of meta-routines and job-enrichment schemes,[14] building trust with supervisees,[14] being supportive,[14] using complex behavioral repertoires,[30][31] and the creation of a shared vision.[32]

In addition, several characteristics of organizational culture are also emphasized on building an ambidextrous organization. Successful organizations should be able to balance the hard elements (discipline and stretch) and the soft elements (support and trust) in their organizational contexts.[17] It was also suggested that establishing shared goals, developing a collective identity, creating a culture of support, and giving personal meaning to individuals’ contributions to the overall purpose of an organization all contributes to ambidexterity.[17] A decentralized structure[16] and a culture of excellence, recruitment and training[32] are also important aspects of establishing an ambidextrous organization.
Outcomes of organizational ambidexterity

Ambidexterity is beneficial to organizations in many aspects. As it is the ability to keep a balance between explorative and exploitative processes, the most core outcome of ambidexterity is innovation because innovation needs both explorative and exploitative aspects. Innovation is defined as "the sequence of activities by which a new element is introduced into a social unit, with the intention of benefiting the unit, some part of it, or the wider society" (West & Farr, 1990). The new element need not be entirely novel or unfamiliar to members of the unit, but it must involve some discernible change or challenge to the status quo (West & Farr, 1990). Most theoretical models of innovation differentiate at least two processes: idea generation and idea implementation (e.g., Amabile, 1988; West, 2002). The generation phase is closely linked to explorative activities while the implementation phase is highly linked to exploitative activities. An ambidextrous organization is able to pursue innovation (creating new products/services) while also maintaining itself through the continued use of proven techniques/products.[2]

In addition, ambidexterity can promote some other positive organizational outcomes besides innovation. It has been proved in literature that the interaction between explorative and exploitative innovation strategies (in other words, ambidexterity) is positively related to sales growth rate, and imbalance between explorative and exploitative innovation strategies is negatively related to sales growth rate (He & Wong, 2004). Various organizations have been able to overcome organizational challenges and become more innovative because of ambidexterity. A study looking at 41 businesses found that ambidexterity was highly correlated with performance.[17] Similarly, another study of 34 high-tech organizations showed that their ability to simultaneously execute exploration and exploitation was associated with higher performance (Chandrasekaran et al. 2012).

Companies such as Apple, General Radio, Nordstrom and British Airways have all had continued success throughout the years because of their capacity for ambidexterity. From 1981 to 1986, British Airways experienced increased profits and customer satisfaction. The top executives of British Airways credited the formation of a more ambidextrous culture and leadership with the company's improved performance.[16]
Related moderators between organizational ambidexterity and organizational outcomes

Moderators exist in the relationship between organizational ambidexterity and organizational outcomes. Environmental dynamism and competitiveness moderate the relationship between exploitation/ exploration and performance (Levinthal & March, 1993; Lewin, Long & Carroll, 1999). Empirical studies also showed that pursuing exploratory innovation is more effective in dynamic environments, whereas pursuing exploitative innovation is more beneficial to a unit's financial performance in more competitive environments (Jansen, van den Bosch, & Volberda, 2006). Although they were not directly testing an ambidextrous orientation, results indicated a positive performance effect of simultaneously pursuing exploitative and exploratory innovation under high dynamic and competitive environments. The effects of exploitative, explorative and balanced corporate alignment activities on performance were compared under varying environmental conditions (Raisch & Hotz, 2008). The construct of "environmental munificence" was developed to reflect an organization's opportunities and dynamism (Zahra, 1993). They found that, although exploration was positively related to performance under high environmental munificence, a balanced orientation failed to significantly affect performance in times of low environmental munificence (Raisch & Hotz, 2008).

Market orientation was also proved to moderate the relationship between exploitation/ exploration and performance. Market orientation was defined as "the capability to generate, disseminate, and respond to intelligence pertaining to current and future customers" (Kohli & Jaworski, 1990). A longitudinal study by Kyriakopoulos and Moorman (2004) showed that market orientation positively moderates the impact of pursuing high levels of exploitative and exploratory marketing strategies on new product performance; however, firms that pursue an ambidextrous orientation without strong market orientation display a significant reduction in new product financial performance.

Another factor that may moderate ambidexterity's effect on performance is firm resources (Kyriakopoulos & Moorman, 2004).[28] Firms with rich resources have the ability to exploit and explore simultaneously, whereas firms with less resources may not be able to afford such a complex strategy. Similarly, Lubatkin et al.[5] stated that small firms "lack the amount of slack resources and the kind of hierarchical administration systems that can help or impede larger firms in managing their contradictory knowledge processes and, thus, affect the attainment of ambidexterity" (p. 647). This idea was supported by empirical evidence that small firms may benefit more from a one-sided orientation than from mixed strategies (Ebben & Johnson, 2005).

Boundary conditions were also addressed on choosing between structural and contextual ambidexterity. For example, spatial separation was suggested as an appropriate solution for environments characterized by long periods of stability, disrupted by rare events of discontinuous change.[16] Research also found that firms operating in dynamic competitive environments rely on contextual ambidexterity rather than developing spatially separated units (Jansen, van den Bosch, & Volberda, 2005).
Levels of ambidexterity

The functional definition of ambidexterity was originally used to describe organizations, but recently this concept was extended to multiple organizational levels, including individuals, teams, and leaders. On the most general level, the concept of ambidexterity implies successfully managing the dichotomy of explorative variability creation and exploitative variability reduction.

Whenever there are needs to be both explorative and exploitive, conflict occurs (Bledow, Frese, Anderson, Erez, & Farr, 2009). That's when ambidexterity is necessary. Actually, regulating the conflicting demands of innovation is not only a challenge for the upper echelon of an organization but also a phenomenon that spans all levels of an organization. Employees as individuals, collectives of employees such as work teams, and the organization as a whole all have to find strategies to deal with conflicting demands in order to succeed in innovation and adaption to changing markets. Some examples of strategies and tactics that could be implemented at all three levels of analysis were also listed out (Bledow et al., 2009). These examples are presented in Table 1, including a separation strategy (in the Separation column) or an integration strategy (in the last two columns).
Ambidextrous leadership

Recently the focus on organizational ambidexterity has become more concentrated on how leaders act ambidextrously to achieve organizational ambidexterity. Senior managers may be the key for facilitating the context and social base for ambidexterity. Noting that ambidextrous organizations require significant amounts of mobilization, coordination, and integration activities to maintain both exploitation and exploration, informal and social integration of the senior team as well as the cross-functional interfaces of the formal organization contribute to the success of organizational ambidexterity significantly (Jansen, Tempelaar, van den Bosch, & Volberda, 2009). A recent model of ambidexterity and leadership suggests that CEOs and top management teams (TMT) play an integral role in establishing ambidexterity in small-to-medium-sized organizations (Cao, Simsek, & Zhang, 2010). The model suggests TMTs are where processes such as information sharing and knowledge processing, which influence ambidexterity, are likely to occur. Furthermore, it is the CEO who has the ability to access the most valuable and diverse information needed to avoid separation of explorative and exploitative behaviors. The greater the interface between TMTs and CEOs in small-to-medium-sized organizations, the greater the amount of ambidexterity.

The concept of ambidexterity was first formally introduced into the leadership area by the Rosing, Frese and Bausch (2011) paper, holding the idea that leaders should be able to lead their team to match the complexity and the pace of innovation (Ancona, Goodman, Lawrence, & Tushman, 2001). Ambidextrous leadership was defined as the leaders’ ability to foster both explorative and exploitative behaviors in followers by increasing or reducing variance in their behavior and flexibly switching between those behaviors (Rosing et al., 2011).

The construct of ambidextrous leadership has also been linked to the combination of leadership styles (Jansen et al., 2009). Leaders who are transformational encourage "out of the box thinking", information sharing and question assumptions. Transformational leaders promote exploration and innovative thinking. Transactional leaders focus on making incremental improvements and making the best use of existing process. The transactional leadership style promotes exploitative behaviors. An ambidextrous leader is able to switch back and forth between transformation/exploration and transaction/exploitation as needed, in other words, being able to switch between different leadership styles at the appropriate time, in order to foster innovation and then implement plans. Ambidextrous leadership consists of three elements (1) opening leader behaviors to foster exploration, (2) closing leader behaviors to foster exploitation, (3) and the temporal flexibility to switch between both as the situation requires (Rosing et al., 2011). Opening leadership behaviors include: allowing for multiple ways to accomplish a task, experimentation and errors, whereas closing behaviors include; monitoring routines, sticking to plans and minimizing errors. The Rosing et al. (2011)'s model of leadership and innovation was shown in Figure 1.
Controversy and future directions

Some scholars as well as practitioners have argued that established companies simply lack the flexibility to explore new territories.[31] One contributing reason could be the so-called success trap (i.e. the focus on their, historically successful, current business activities) (Walrave, Van Oorschot, & Romme, 2011). A possible solution for big companies is to adopt a venture capital model – funding exploratory expeditions but otherwise not interfering too much with their operations. Another suggestion is for the use of cross-functional teams to achieve breakthrough innovations. Still others have suggested that a company may be able to alternate between different organizational models, focusing on exploitation and exploration at different time periods. For example, in a study of biotechnology firms it is shown how an organization's management control system can be adjusted periodically to achieve this changing focus on exploitation and exploration.[18] Researchers also debate if ambidexterity can be attained because exploration and exploitation tend to emerge from contradictory information and knowledge inputs and because success due to exploration/exploitation tends to be self-reinforcing leading to the use of the same methods in the future.[2][33] An empirical study of ambidexterity in organizations (He & Wong, 2004) further cautions that very low levels of both exploration and exploitation are not sufficient to contribute to superior firm performance. High firm performance may however need to be sustained through continuous exploitation both on the market side, through business model innovation and technology innovation.[34]

Ambidexterity can also be hampered by employee desire to receive organizational rewards. If organizations base their evaluation and reward systems on the completion of routine tasks, employees will be more likely to conform to standardized procedures.[14] To avoid hindering ambidexterity, organizations should be sure to reward innovative thinking as well as completion of routine tasks.

Despite the controversy surrounding the possibility of organizational ambidexterity, it is likely to continue to be a highly researched concept in the future. Future research is likely to focus on the role of ambidextrous leaders, ambidextrous teams and the social context of organizational ambidexterity. (Rosing et al., 2011).
See also

    Ambidexterity
    Communities of innovation
    Contingency Theory
    Labour exploitation
    Exploration
    Innovation
    Knowledge management
    Leadership
    Organizational culture
    Organization design
    Organizational learning
    Organizational structure
    Success trap
    Tacit knowledge
    Technological change
    Transactional leadership
    Transformational leadership

References

Duncan, R. (1976). The ambidextrous organization: Designing dual structures for innovation. Killman, R. H., L. R. Pondy, and D. Sleven (eds.) The Management of Organization. New York: North Holland. 167-188.
March, J. G. (1991). Exploration and exploitation in organizational learning. Organization Science, 2, 71-87.
Raisch, S., & Birkinshaw, J. (2008). Organizational ambidexterity: Antecedents, outcomes, and moderators. Journal of Management, 34, 375-409.
Beckman, C. M. (2006). The influence of founding team company affiliations on firm behavior. Academy of Management Journal, 49, 741-758.
Lubatkin, M. H., Simsek, Z., Ling, Y., & Veiga, J. F. (2006). Ambidexterity and performance in small- to medium-sized firms: The pivotal role of top management team behavioral integration. Journal of Management, 32, 646-672.
Smith, W. K., & Tushman, M. L. (2005). Managing strategic contradictions: A top management model for managing innovation streams. Organization Science, 16, 522-536.
"The Ambidextrous Organization". Harvard Business Review. 2004-04-01. Retrieved 2018-09-14.
Tushman, Michael; O'Reilly, C. (1997-01-15). "Winning through Innovation: A Practical Guide to Leading Organizational Change and Renewal".
Tushman, M.; Smith, W. (2002-02-01). "Organizational Technology: Technological Change, Ambidextrous Organizations and Organizational Evolution".
Tushman, Michael; O'Reilly, C. (1996-07-01). "Ambidextrous Organizations: Managing Evolutionary and Revolutionary Change".
Atuahene-Gima, Kwaku (2005). "Resolving the Capability: Rigidity Paradox in New Product Innovation". Journal of Marketing. 69 (4): 61–83. doi:10.1509/jmkg.2005.69.4.61. JSTOR 30166552.
"Ambidexterity as a dynamic capability: Resolving the innovator's dilemma". Stanford Graduate School of Business. Retrieved 2018-09-15.
Durisin, Boris; Todorova, Gergana (2012-10-15). "A Study of the Performativity of the "Ambidextrous Organizations" Theory: Neither Lost in nor Lost before Translation". Journal of Product Innovation Management. 29: 53–75. doi:10.1111/j.1540-5885.2012.00981.x. ISSN 0737-6782.
Adler, P., Goldoftas, B., & Levine, D. (1999). Flexibility versus efficiency? A case study of model changeovers in the Toyota production system. Organization Science, 10, 43-68.
McDonough, E. F., & Leifer, R. (1983). Using simultaneous structures to cope with uncertainty. Academy of Management Journal, 26, 727-735.
Tushman, M. L., & O’Reilly, C. A. (1996). Ambidextrous organizations: Managing evolutionary and revolutionary change. California Management Review, 38, 8-30.
Gibson, C. B., & Birkinshaw, J. (2004). The antecedents, consequences and mediating role of organizational ambidexterity. Academy of Management Journal, 47, 209-226.
McCarthy, I.P., & Gordon, B.R. (2011). Achieving Contextual Ambidexterity in R&D Organizations: A Management Control System Approach. R&D Management, 41, 240-258.
Doty, H. D., Glick, W. H., & Huber, G. P. (1993). Fit, equifinality, and organizational effectiveness: A test of two configurational theories. Academy of Management Journal, 36, 1196–1250.
Miller, D., & Friesen, P. H. (1986). Generic strategies and performance: An empirical examination with American data Part I: Testing Porter. Organization Studies, 7, 37-55.
Drazin, R., & Van de Ven, A. H. (1985). Alternative forms of fit in contingency theory. Administrative Science Quarterly, 30, 514-539.
Nadler, D., & Tushman, M. L. (1997). Competing by design: The power of organizational architecture. New York:
Meyer, A. D., Tsui, A. S., & Hinings, C. R. (1993). Configurational approaches to organizational analysis. Academy of Management Journal, 36, 1175–1195.
Nickerson, J. A., & Zenger, T. R. (2002). Being efficiently fickle: A dynamic theory of organizational choice. Organization Science, 13, 547-566.
Cantarello, S., Martini, A., & Nosella, A. (2012). A multi-level model for organizational ambidexterity in the search phase of the innovation process. Creativity and Innovation Management, 21, 28-48.
Brown, S. L., & Eisenhardt, K. (1998). Competing on the edge: Strategy as structured chaos. Cambridge, Massachusetts: Harvard Business School Press.
Siggelkow, N., & Levinthal, D. A. (2003). Temporarily divide to conquer: Centralized, decentralized, and reintegrated organizational approaches to exploration and adaptation. Organization Science, 14, 650-669.
Venkatraman, N., Lee, C. H., & Iyer, B. (2007). Strategic ambidexterity and sales growth: A longitudinal test in the software sector. Unpublished Manuscript.
Gupta, A. K., Smith, K. G., & Shalley, C. E. (2006). The interplay between exploration and exploitation. Academy of Management Journal, 4, 693-706.
Denison, D., Hooijberg, R., & Quinn, R. E. (1995). Paradox and performance: Toward a theory of behavioral complexity in managerial leadership. Organization Science, 6, 524-540.
Lewis, M. W. (2000). Exploring paradox: Toward a more comprehensive guide. Academy of Management Review, 25, 760-776.
Bartlett, C. A., & Ghoshal, S. (1989). Managing across borders: The transnational solution. Boston: Harvard Business School Press.
Floyd, S. W. & Lane, P. J. (2000). "Strategizing throughout the Organization: Managing Role Conflict in Strategic Renewal". The Academy of Management Review, 25, 154-177.

    Kaulio, Matti; Thorén, Kent; Rohrbeck, René (2017-12-01). "Double ambidexterity: How a Telco incumbent used business-model and technology innovations to successfully respond to three major disruptions". Creativity and Innovation Management. 26 (4): 339–352. doi:10.1111/caim.12246. ISSN 1467-8691.

Further reading

    Amabile, T. M. (1988). A model of creativity and innovation in organizations. In B. M. Staw & L. L. Cummings (Eds.), Research in Organizational Behavior, Vol. 10 (pp. 123–167) Greenwich, Connecticut: JAI Press Inc.
    Ancona, D. G., Goodman, P. S., Lawrence, B. S., & Tushman, M. L. (2001). Time: A new research lens. Academy of Management Review, 26, 645–663.
    Bledow, R., Frese, M., Anderson, N., Erez, M., & Farr, J. (2009). A dialectic perspective on inn ovation: conflicting demands, multiple pathways, and ambidexterity. Industrial and Organizational Psychology: Perspectives on Science and Practice, 2(3).
    Cao, Q., Simsek, Z., & Zhang, H. (2010). Modeling the joint impact of the CEO and the TMT on organizational ambidexterity. Journal of Management Studies, 47, 1272–1296.
    Chandrasekaran, A., Linderman, K., Schroeder, R., 2012. Antecedents to ambidexterity competency in high technology organizations. Journal of Operations Management 30, 134–151
    Ebben, J. J., & Johnson, A. C. (2005). Efficiency, flexibility, or both? Evidence linking strategy to performance in small firms. Strategic Management Journal, 26, 1249–1259.
    He, Z. & Wong, P. (2004). Exploration vs. Exploitation: An Empirical Test of the Ambidexterity Hypothesis. Organization Science, 15, 481–494.
    Jansen, J. J. P., Tempelaar, M. P., Van den Bosch, F. A., & Volberda, H. W. (2009). Structural differentiation and ambidexterity: The mediating role of integration mechanisms. Organization Science, 20, 797–811.
    Jansen, J. J. P., van den Bosch, F. A. J., & Volberda, H. W. (2005). Exploratory innovation, exploitative innovation, and ambidexterity: The impact of environmental and organizational antecedents. Schmalenbach Business Review, 57, 351–363.
    Jansen, J. J. P., van den Bosch, F. A. J., & Volberda, H. W. (2006). Exploratory innovation, exploitative innovation, and performance: Effects of organizational antecedents and environmental moderators. Management Science, 52, 1661–1674.
    Kohli, A. K., & Jaworski, B. J. (1990). Market orientation: The construct, research propositions, and managerial implications. Journal of Marketing, 54, 1-18.
    Levinthal, D., & March, J. (1993). Myopia of learning. Strategic Management Journal, 14, 95-112.
    Lewin, A. Y., Long, C. P., & Carroll, T. N. (1999). The co-evolution of new organizational forms. Organization Science, 10, 535–550.
    McCarthy, I.P., & Gordon, B.R. (2011). Achieving Contextual Ambidexterity in R&D Organizations: A Management Control System Approach. R&D Management, 41, 240-258
    Raisch, S., & Hotz, F. (2008). Shaping the Context for Learning: Corporate Alignment Initiatives, Environmental Munificence, and Firm Performance. Strategic reconfigurations: Building dynamic capabilities in rapid-innovation-based industries, 62–85.
    Rosing, K., Frese, M., Bausch, A. (2011).Explaining the heterogeneity of the leadership-innovation relationship: Ambidextrous leadership. The Leadership Quarterly, 22, 956–974.
    Walrave, B., Van Oorschot, K. E. & Romme, A. G. L. (2011). Getting trapped in the suppression of exploration: A simulation model. Journal of Management Studies, 48, 1727–1751.
    West, M. A. (2002). Sparkling fountains or stagnant ponds: An integrative model of creativity and innovation implementation in work groups. Applied Psychology: An International Review, 51, 355–387.
    West, M. A., & Farr, J. L. (1990). Innovation and creativity at work: Psychological and organizational strategies. Chichester: John Wiley & Sons.
    Zabiegalski, E. P.(2015).Learning Ambidexterity in Organization: The George Washington University,177 pages; Proquest.
    Zabiegalski, E. P.(2019).The Rise of the Ambidextrous Organization, the secret revolution happening right under your nose. Amazon and Waterstones Books.
    Zahra, S. A. (1993). Environment, corporate entrepreneurship, and financial performance: A taxonomic approach. Journal of Business Venturing, 8, 319–340.

Categories:

    InnovationManagement science

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Dansk
    Deutsch
    Español
    Svenska

Edit links

    This page was last edited on 3 February 2021, at 16:42 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Americium
!! 
!! https://en.wikipedia.org/wiki/Americium

From Wikipedia, the free encyclopedia

Americium, 95AmAmericium microscope.jpg
Americium
Pronunciation	/ˌæmɪˈrɪsiəm/ ​(AM-ə-RISS-ee-əm)
Appearance	silvery white
Mass number	[243]
Americium in the periodic table
Hydrogen 		Helium
Lithium 	Beryllium 		Boron 	Carbon 	Nitrogen 	Oxygen 	Fluorine 	Neon
Sodium 	Magnesium 		Aluminium 	Silicon 	Phosphorus 	Sulfur 	Chlorine 	Argon
Potassium 	Calcium 		Scandium 	Titanium 	Vanadium 	Chromium 	Manganese 	Iron 	Cobalt 	Nickel 	Copper 	Zinc 	Gallium 	Germanium 	Arsenic 	Selenium 	Bromine 	Krypton
Rubidium 	Strontium 			Yttrium 	Zirconium 	Niobium 	Molybdenum 	Technetium 	Ruthenium 	Rhodium 	Palladium 	Silver 	Cadmium 	Indium 	Tin 	Antimony 	Tellurium 	Iodine 	Xenon
Caesium 	Barium 	Lanthanum 	Cerium 	Praseodymium 	Neodymium 	Promethium 	Samarium 	Europium 	Gadolinium 	Terbium 	Dysprosium 	Holmium 	Erbium 	Thulium 	Ytterbium 	Lutetium 	Hafnium 	Tantalum 	Tungsten 	Rhenium 	Osmium 	Iridium 	Platinum 	Gold 	Mercury (element) 	Thallium 	Lead 	Bismuth 	Polonium 	Astatine 	Radon
Francium 	Radium 	Actinium 	Thorium 	Protactinium 	Uranium 	Neptunium 	Plutonium 	Americium 	Curium 	Berkelium 	Californium 	Einsteinium 	Fermium 	Mendelevium 	Nobelium 	Lawrencium 	Rutherfordium 	Dubnium 	Seaborgium 	Bohrium 	Hassium 	Meitnerium 	Darmstadtium 	Roentgenium 	Copernicium 	Nihonium 	Flerovium 	Moscovium 	Livermorium 	Tennessine 	Oganesson
	Eu
↑
Am
↓
(Uqe)
plutonium ← americium → curium
Atomic number (Z)	95
Group	group 3
Period	period 7
Block	  f-block
Electron configuration	[Rn] 5f7 7s2
Electrons per shell	2, 8, 18, 32, 25, 8, 2
Physical properties
Phase at STP	solid
Melting point	1449 K ​(1176 °C, ​2149 °F)
Boiling point	2880 K ​(2607 °C, ​4725 °F) (calculated)
Density (near r.t.)	12 g/cm3
Heat of fusion	14.39 kJ/mol
Molar heat capacity	28[1] J/(mol·K)
Vapor pressure
P (Pa) 	1 	10 	100 	1 k 	10 k 	100 k
at T (K) 	1239 	1356 				
Atomic properties
Oxidation states	+2, +3, +4, +5, +6, +7 (an amphoteric oxide)
Electronegativity	Pauling scale: 1.3
Ionization energies	

    1st: 578 kJ/mol

Atomic radius	empirical: 173 pm
Covalent radius	180±6 pm
Color lines in a spectral range
Spectral lines of americium
Other properties
Natural occurrence	synthetic
Crystal structure	​double hexagonal close-packed (dhcp)
Double hexagonal close packed crystal structure for americium
Thermal conductivity	10 W/(m⋅K)
Electrical resistivity	0.69 µΩ⋅m[1]
Magnetic ordering	paramagnetic
Molar magnetic susceptibility	+1000.0×10−6 cm3/mol[2]
CAS Number	7440-35-9
History
Naming	after the Americas
Discovery	Glenn T. Seaborg, Ralph A. James, Leon O. Morgan, Albert Ghiorso (1944)
Main isotopes of americium
Iso­tope 	Abun­dance 	Half-life (t1/2) 	Decay mode 	Pro­duct
241Am 	syn 	432.2 y 	SF 	–
α 	237Np
242m1Am 	syn 	141 y 	IT 	242Am
α 	238Np
SF 	–
243Am 	syn 	7370 y 	SF 	–
α 	239Np
Category Category: Americium

    viewtalkedit

| references

Americium is a synthetic radioactive chemical element with the symbol Am and atomic number 95. It is a transuranic member of the actinide series, in the periodic table located under the lanthanide element europium, and thus by analogy was named after America.[3][4][5]

Americium was first produced in 1944 by the group of Glenn T. Seaborg from Berkeley, California, at the Metallurgical Laboratory of the University of Chicago, as part of the Manhattan Project. Although it is the third element in the transuranic series, it was discovered fourth, after the heavier curium. The discovery was kept secret and only released to the public in November 1945. Most americium is produced by uranium or plutonium being bombarded with neutrons in nuclear reactors – one tonne of spent nuclear fuel contains about 100 grams of americium. It is widely used in commercial ionization chamber smoke detectors, as well as in neutron sources and industrial gauges. Several unusual applications, such as nuclear batteries or fuel for space ships with nuclear propulsion, have been proposed for the isotope 242mAm, but they are as yet hindered by the scarcity and high price of this nuclear isomer.

Americium is a relatively soft radioactive metal with silvery appearance. Its common isotopes are 241Am and 243Am. In chemical compounds, americium usually assumes the oxidation state +3, especially in solutions. Several other oxidation states are known, ranging from +2 to +7, and can be identified by their characteristic optical absorption spectra. The crystal lattice of solid americium and its compounds contain small intrinsic radiogenic defects, due to metamictization induced by self-irradiation with alpha particles, which accumulates with time; this can cause a drift of some material properties over time, more noticeable in older samples.
Contents

    1 History
    2 Occurrence
    3 Synthesis and extraction
        3.1 Isotope nucleosynthesis
        3.2 Metal generation
    4 Physical properties
    5 Chemical properties
    6 Chemical compounds
        6.1 Oxygen compounds
        6.2 Halides
        6.3 Chalcogenides and pnictides
        6.4 Silicides and borides
        6.5 Organoamericium compounds
    7 Biological aspects
    8 Fission
    9 Isotopes
    10 Applications
        10.1 Ionization-type smoke detector
        10.2 Radionuclide
        10.3 Neutron source
        10.4 Production of other elements
        10.5 Spectrometer
    11 Health concerns
    12 See also
    13 Notes
    14 References
    15 Bibliography
    16 Further reading
    17 External links

History
The 60-inch cyclotron at the Lawrence Radiation Laboratory, University of California, Berkeley, in August 1939.
The triangle in the glass tube contains the first sample of americium (as the hydroxide (Am(OH)3)), produced in 1944.[6]

Although americium was likely produced in previous nuclear experiments, it was first intentionally synthesized, isolated and identified in late autumn 1944, at the University of California, Berkeley, by Glenn T. Seaborg, Leon O. Morgan, Ralph A. James, and Albert Ghiorso. They used a 60-inch cyclotron at the University of California, Berkeley.[7] The element was chemically identified at the Metallurgical Laboratory (now Argonne National Laboratory) of the University of Chicago. Following the lighter neptunium, plutonium, and heavier curium, americium was the fourth transuranium element to be discovered. At the time, the periodic table had been restructured by Seaborg to its present layout, containing the actinide row below the lanthanide one. This led to americium being located right below its twin lanthanide element europium; it was thus by analogy named after the Americas: "The name americium (after the Americas) and the symbol Am are suggested for the element on the basis of its position as the sixth member of the actinide rare-earth series, analogous to europium, Eu, of the lanthanide series."[8][9][10]

The new element was isolated from its oxides in a complex, multi-step process. First plutonium-239 nitrate (239PuNO3) solution was coated on a platinum foil of about 0.5 cm2 area, the solution was evaporated and the residue was converted into plutonium dioxide (PuO2) by calcining. After cyclotron irradiation, the coating was dissolved with nitric acid, and then precipitated as the hydroxide using concentrated aqueous ammonia solution. The residue was dissolved in perchloric acid. Further separation was carried out by ion exchange, yielding a certain isotope of curium. The separation of curium and americium was so painstaking that those elements were initially called by the Berkeley group as pandemonium (from Greek for all demons or hell) and delirium (from Latin for madness).[11][12]

Initial experiments yielded four americium isotopes: 241Am, 242Am, 239Am and 238Am. Americium-241 was directly obtained from plutonium upon absorption of two neutrons. It decays by emission of a α-particle to 237Np; the half-life of this decay was first determined as 510±20 years but then corrected to 432.2 years.[13]

    Pu 94 239 → ( n , γ ) Pu 94 240 → ( n , γ ) Pu 94 241 → 14.35   yr β − Am 95 241   ( → 432.2   yr α Np 93 237 ) {\displaystyle {\ce {^{239}_{94}Pu ->[{\ce {(n,\gamma)}}] ^{240}_{94}Pu ->[{\ce {(n,\gamma)}}] ^{241}_{94}Pu ->[\beta^-][14.35\ {\ce {yr}}] ^{241}_{95}Am}}\ \left({\ce {->[\alpha][432.2\ {\ce {yr}}] ^{237}_{93}Np}}\right)} {\displaystyle {\ce {^{239}_{94}Pu ->[{\ce {(n,\gamma)}}] ^{240}_{94}Pu ->[{\ce {(n,\gamma)}}] ^{241}_{94}Pu ->[\beta^-][14.35\ {\ce {yr}}] ^{241}_{95}Am}}\ \left({\ce {->[\alpha][432.2\ {\ce {yr}}] ^{237}_{93}Np}}\right)}

    The times are half-lives

The second isotope 242Am was produced upon neutron bombardment of the already-created 241Am. Upon rapid β-decay, 242Am converts into the isotope of curium 242Cm (which had been discovered previously). The half-life of this decay was initially determined at 17 hours, which was close to the presently accepted value of 16.02 h.[13]

    Am 95 241 → ( n , γ ) Am 95 242   ( → 16.02   h β − Cm 96 242 ) {\displaystyle {\ce {^{241}_{95}Am ->[{\ce {(n,\gamma)}}] ^{242}_{95}Am}}\ \left({\ce {->[\beta^-][16.02\ {\ce {h}}] ^{242}_{96}Cm}}\right)} {\displaystyle {\ce {^{241}_{95}Am ->[{\ce {(n,\gamma)}}] ^{242}_{95}Am}}\ \left({\ce {->[\beta^-][16.02\ {\ce {h}}] ^{242}_{96}Cm}}\right)}

The discovery of americium and curium in 1944 was closely related to the Manhattan Project; the results were confidential and declassified only in 1945. Seaborg leaked the synthesis of the elements 95 and 96 on the U.S. radio show for children Quiz Kids five days before the official presentation at an American Chemical Society meeting on 11 November 1945, when one of the listeners asked whether any new transuranium element beside plutonium and neptunium had been discovered during the war.[11] After the discovery of americium isotopes 241Am and 242Am, their production and compounds were patented listing only Seaborg as the inventor.[14] The initial americium samples weighed a few micrograms; they were barely visible and were identified by their radioactivity. The first substantial amounts of metallic americium weighing 40–200 micrograms were not prepared until 1951 by reduction of americium(III) fluoride with barium metal in high vacuum at 1100 °C.[15]
Occurrence
See also: Nuclear reprocessing
Americium was detected in the fallout from the Ivy Mike nuclear test.

The longest-lived and most common isotopes of americium, 241Am and 243Am, have half-lives of 432.2 and 7,370 years, respectively. Therefore, any primordial americium (americium that was present on Earth during its formation) should have decayed by now. Trace amounts of americium probably occur naturally in uranium minerals as a result of nuclear reactions, though this has not been confirmed.[16][17]

Existing americium is concentrated in the areas used for the atmospheric nuclear weapons tests conducted between 1945 and 1980, as well as at the sites of nuclear incidents, such as the Chernobyl disaster. For example, the analysis of the debris at the testing site of the first U.S. hydrogen bomb, Ivy Mike, (1 November 1952, Enewetak Atoll), revealed high concentrations of various actinides including americium; but due to military secrecy, this result was not published until later, in 1956.[18] Trinitite, the glassy residue left on the desert floor near Alamogordo, New Mexico, after the plutonium-based Trinity nuclear bomb test on 16 July 1945, contains traces of americium-241. Elevated levels of americium were also detected at the crash site of a US Boeing B-52 bomber aircraft, which carried four hydrogen bombs, in 1968 in Greenland.[19]

In other regions, the average radioactivity of surface soil due to residual americium is only about 0.01 picocuries/g (0.37 mBq/g). Atmospheric americium compounds are poorly soluble in common solvents and mostly adhere to soil particles. Soil analysis revealed about 1,900 times higher concentration of americium inside sandy soil particles than in the water present in the soil pores; an even higher ratio was measured in loam soils.[20]

Americium is produced mostly artificially in small quantities, for research purposes. A tonne of spent nuclear fuel contains about 100 grams of various americium isotopes, mostly 241Am and 243Am.[21] Their prolonged radioactivity is undesirable for the disposal, and therefore americium, together with other long-lived actinides, must be neutralized. The associated procedure may involve several steps, where americium is first separated and then converted by neutron bombardment in special reactors to short-lived nuclides. This procedure is well known as nuclear transmutation, but it is still being developed for americium.[22][23] The transuranic elements from americium to fermium occurred naturally in the natural nuclear fission reactor at Oklo, but no longer do so.[24]
Synthesis and extraction
Isotope nucleosynthesis
Chromatographic elution curves revealing the similarity between the lanthanides Tb, Gd, and Eu and the corresponding actinides Bk, Cm, and Am.

Americium has been produced in small quantities in nuclear reactors for decades, and kilograms of its 241Am and 243Am isotopes have been accumulated by now.[25] Nevertheless, since it was first offered for sale in 1962, its price, about US$1,500 per gram of 241Am, remains almost unchanged owing to the very complex separation procedure.[26] The heavier isotope 243Am is produced in much smaller amounts; it is thus more difficult to separate, resulting in a higher cost of the order 100,000–160,000 USD/g.[27][28]

Americium is not synthesized directly from uranium – the most common reactor material – but from the plutonium isotope 239Pu. The latter needs to be produced first, according to the following nuclear process:

    U 92 238 → ( n , γ ) U 92 239 → 23.5   min β − Np 93 239 → 2.3565   d β − Pu 94 239 {\displaystyle {\ce {^{238}_{92}U ->[{\ce {(n,\gamma)}}] ^{239}_{92}U ->[\beta^-][23.5 \ {\ce {min}}] ^{239}_{93}Np ->[\beta^-][2.3565 \ {\ce {d}}] ^{239}_{94}Pu}}} {\displaystyle {\ce {^{238}_{92}U ->[{\ce {(n,\gamma)}}] ^{239}_{92}U ->[\beta^-][23.5 \ {\ce {min}}] ^{239}_{93}Np ->[\beta^-][2.3565 \ {\ce {d}}] ^{239}_{94}Pu}}}

The capture of two neutrons by 239Pu (a so-called (n,γ) reaction), followed by a β-decay, results in 241Am:

    Pu 94 239 → 2 ( n , γ ) Pu 94 241 → 14.35   yr β − Am 95 241 {\displaystyle {\ce {^{239}_{94}Pu ->[{\ce {2(n,\gamma)}}] ^{241}_{94}Pu ->[\beta^-][14.35 \ {\ce {yr}}] ^{241}_{95}Am}}} {\displaystyle {\ce {^{239}_{94}Pu ->[{\ce {2(n,\gamma)}}] ^{241}_{94}Pu ->[\beta^-][14.35 \ {\ce {yr}}] ^{241}_{95}Am}}}

The plutonium present in spent nuclear fuel contains about 12% of 241Pu. Because it spontaneously converts to 241Am, 241Pu can be extracted and may be used to generate further 241Am.[26] However, this process is rather slow: half of the original amount of 241Pu decays to 241Am after about 15 years, and the 241Am amount reaches a maximum after 70 years.[29]

The obtained 241Am can be used for generating heavier americium isotopes by further neutron capture inside a nuclear reactor. In a light water reactor (LWR), 79% of 241Am converts to 242Am and 10% to its nuclear isomer 242mAm:[note 1][30]

    { 79 % : Am 95 241 → ( n , γ ) Am 95 242 10 % : Am 95 241 → ( n , γ ) Am 95 242 m {\displaystyle {\begin{cases}79\%:&{\ce {^{241}_{95}Am ->[{\ce {(n,\gamma)}}] ^{242}_{95}Am}}\\10\%:&{\ce {^{241}_{95}Am ->[{\ce {(n,\gamma)}}] ^{242 m}_{95}Am}}\end{cases}}} {\displaystyle {\begin{cases}79\%:&{\ce {^{241}_{95}Am ->[{\ce {(n,\gamma)}}] ^{242}_{95}Am}}\\10\%:&{\ce {^{241}_{95}Am ->[{\ce {(n,\gamma)}}] ^{242 m}_{95}Am}}\end{cases}}}

Americium-242 has a half-life of only 16 hours, which makes its further conversion to 243Am extremely inefficient. The latter isotope is produced instead in a process where 239Pu captures four neutrons under high neutron flux:

    Pu 94 239 → 4 ( n , γ )   94 243 Pu → 4.956   h β − Am 95 243 {\displaystyle {\ce {^{239}_{94}Pu ->[{\ce {4(n,\gamma)}}] \ ^{243}_{94}Pu ->[\beta^-][4.956 \ {\ce {h}}] ^{243}_{95}Am}}} {\displaystyle {\ce {^{239}_{94}Pu ->[{\ce {4(n,\gamma)}}] \ ^{243}_{94}Pu ->[\beta^-][4.956 \ {\ce {h}}] ^{243}_{95}Am}}}

Metal generation

Most synthesis routines yield a mixture of different actinide isotopes in oxide forms, from which isotopes of americium can be separated. In a typical procedure, the spent reactor fuel (e.g. MOX fuel) is dissolved in nitric acid, and the bulk of uranium and plutonium is removed using a PUREX-type extraction (Plutonium–URanium EXtraction) with tributyl phosphate in a hydrocarbon. The lanthanides and remaining actinides are then separated from the aqueous residue (raffinate) by a diamide-based extraction, to give, after stripping, a mixture of trivalent actinides and lanthanides. Americium compounds are then selectively extracted using multi-step chromatographic and centrifugation techniques[31] with an appropriate reagent. A large amount of work has been done on the solvent extraction of americium. For example, a 2003 EU-funded project codenamed "EUROPART" studied triazines and other compounds as potential extraction agents.[32][33][34][35][36] A bis-triazinyl bipyridine complex was proposed in 2009 as such a reagent is highly selective to americium (and curium).[37] Separation of americium from the highly similar curium can be achieved by treating a slurry of their hydroxides in aqueous sodium bicarbonate with ozone, at elevated temperatures. Both Am and Cm are mostly present in solutions in the +3 valence state; whereas curium remains unchanged, americium oxidizes to soluble Am(IV) complexes which can be washed away.[38]

Metallic americium is obtained by reduction from its compounds. Americium(III) fluoride was first used for this purpose. The reaction was conducted using elemental barium as reducing agent in a water- and oxygen-free environment inside an apparatus made of tantalum and tungsten.[15][39][40]

    2   A m F 3   +   3   B a   ⟶   2   A m   +   3   B a F 2 {\displaystyle \mathrm {2\ AmF_{3}\ +\ 3\ Ba\ \longrightarrow \ 2\ Am\ +\ 3\ BaF_{2}} } {\mathrm {2\ AmF_{3}\ +\ 3\ Ba\ \longrightarrow \ 2\ Am\ +\ 3\ BaF_{2}}}

An alternative is the reduction of americium dioxide by metallic lanthanum or thorium:[40][41]

    3   A m O 2   +   4   L a   ⟶   3   A m   +   2   L a 2 O 3 {\displaystyle \mathrm {3\ AmO_{2}\ +\ 4\ La\ \longrightarrow \ 3\ Am\ +\ 2\ La_{2}O_{3}} } {\mathrm {3\ AmO_{2}\ +\ 4\ La\ \longrightarrow \ 3\ Am\ +\ 2\ La_{2}O_{3}}}

Physical properties
Double-hexagonal close packing with the layer sequence ABAC in the crystal structure of α-americium (A: green, B: blue, C: red).

In the periodic table, americium is located to the right of plutonium, to the left of curium, and below the lanthanide europium, with which it shares many physical and chemical properties. Americium is a highly radioactive element. When freshly prepared, it has a silvery-white metallic lustre, but then slowly tarnishes in air. With a density of 12 g/cm3, americium is less dense than both curium (13.52 g/cm3) and plutonium (19.8 g/cm3); but has a higher density than europium (5.264 g/cm3)—mostly because of its higher atomic mass. Americium is relatively soft and easily deformable and has a significantly lower bulk modulus than the actinides before it: Th, Pa, U, Np and Pu.[42] Its melting point of 1173 °C is significantly higher than that of plutonium (639 °C) and europium (826 °C), but lower than for curium (1340 °C).[41][43]

At ambient conditions, americium is present in its most stable α form which has a hexagonal crystal symmetry, and a space group P63/mmc with cell parameters a = 346.8 pm and c = 1124 pm, and four atoms per unit cell. The crystal consists of a double-hexagonal close packing with the layer sequence ABAC and so is isotypic with α-lanthanum and several actinides such as α-curium.[39][43] The crystal structure of americium changes with pressure and temperature. When compressed at room temperature to 5 GPa, α-Am transforms to the β modification, which has a face-centered cubic (fcc) symmetry, space group Fm3m and lattice constant a = 489 pm. This fcc structure is equivalent to the closest packing with the sequence ABC.[39][43] Upon further compression to 23 GPa, americium transforms to an orthorhombic γ-Am structure similar to that of α-uranium. There are no further transitions observed up to 52 GPa, except for an appearance of a monoclinic phase at pressures between 10 and 15 GPa.[42] There is no consistency on the status of this phase in the literature, which also sometimes lists the α, β and γ phases as I, II and III. The β-γ transition is accompanied by a 6% decrease in the crystal volume; although theory also predicts a significant volume change for the α-β transition, it is not observed experimentally. The pressure of the α-β transition decreases with increasing temperature, and when α-americium is heated at ambient pressure, at 770 °C it changes into an fcc phase which is different from β-Am, and at 1075 °C it converts to a body-centered cubic structure. The pressure-temperature phase diagram of americium is thus rather similar to those of lanthanum, praseodymium and neodymium.[44]

As with many other actinides, self-damage of the crystal structure due to alpha-particle irradiation is intrinsic to americium. It is especially noticeable at low temperatures, where the mobility of the produced structure defects is relatively low, by broadening of X-ray diffraction peaks. This effect makes somewhat uncertain the temperature of americium and some of its properties, such as electrical resistivity.[45] So for americium-241, the resistivity at 4.2 K increases with time from about 2 µOhm·cm to 10 µOhm·cm after 40 hours, and saturates at about 16 µOhm·cm after 140 hours. This effect is less pronounced at room temperature, due to annihilation of radiation defects; also heating to room temperature the sample which was kept for hours at low temperatures restores its resistivity. In fresh samples, the resistivity gradually increases with temperature from about 2 µOhm·cm at liquid helium to 69 µOhm·cm at room temperature; this behavior is similar to that of neptunium, uranium, thorium and protactinium, but is different from plutonium and curium which show a rapid rise up to 60 K followed by saturation. The room temperature value for americium is lower than that of neptunium, plutonium and curium, but higher than for uranium, thorium and protactinium.[1]

Americium is paramagnetic in a wide temperature range, from that of liquid helium, to room temperature and above. This behavior is markedly different from that of its neighbor curium which exhibits antiferromagnetic transition at 52 K.[46] The thermal expansion coefficient of americium is slightly anisotropic and amounts to (7.5±0.2)×10−6 /°C along the shorter a axis and (6.2±0.4)×10−6 /°C for the longer c hexagonal axis.[43] The enthalpy of dissolution of americium metal in hydrochloric acid at standard conditions is −620.6±1.3 kJ/mol, from which the standard enthalpy change of formation (ΔfH°) of aqueous Am3+ ion is −621.2±2.0 kJ/mol. The standard potential Am3+/Am0 is −2.08±0.01 V.[47]
Chemical properties

Americium metal readily reacts with oxygen and dissolves in aqueous acids. The most stable oxidation state for americium is +3,.[48] The chemistry of americium(III) has many similarities to the chemistry of lanthanide(III) compounds. For example, trivalent americium forms insoluble fluoride, oxalate, iodate, hydroxide, phosphate and other salts.[48] Compounds of americium in oxidation states 2, 4, 5 and 6 have also been studied. This is the widest range that has been observed with actinide elements. The color of americium compounds in aqueous solution is as follows: Am3+ (yellow-reddish), Am4+ (yellow-reddish), AmVO+
2; (yellow), AmVIO2+
2 (brown) and AmVIIO5−
6 (dark green).[49][50] The absorption spectra have sharp peaks, due to f-f transitions' in the visible and near-infrared regions. Typically, Am(III) has absorption maxima at ca. 504 and 811 nm, Am(V) at ca. 514 and 715 nm, and Am(VI) at ca. 666 and 992 nm.[51][52][53][54]

Americium compounds with oxidation state +4 and higher are strong oxidizing agents, comparable in strength to the permanganate ion (MnO−
4) in acidic solutions.[55] Whereas the Am4+ ions are unstable in solutions and readily convert to Am3+, compounds such as americium dioxide (AmO2) and americium(IV) fluoride (AmF4) are stable in the solid state.

The pentavalent oxidation state of americium was first observed in 1951.[56] In acidic aqueous solution the AmO+
2 ion is unstable with respect to disproportionation.[57][58][59] The reaction

    3 AmO 2 + + 4 H + ⟶ 2 AmO 2 2 + + Am 3 + + 2 H 2 O {\displaystyle {\ce {3AmO2+ + 4H+ -> 2AmO2^2+ + Am^3+ + 2H2O}}} {\displaystyle {\ce {3AmO2+ + 4H+ -> 2AmO2^2+ + Am^3+ + 2H2O}}}

is typical. The chemistry of Am(V) and Am(VI) is comparable to the chemistry of uranium in those oxidation states. In particular, compounds like Li3AmO4 and Li6AmO6 are comparable to uranates and the ion AmO22+ is comparable to the uranyl ion, UO22+. Such compounds can be prepared by oxidation of Am(III) in dilute nitric acid with ammonium persulfate.[60] Other oxidising agents that have been used include silver(I) oxide,[54] ozone and sodium persulfate.[53]
Chemical compounds
Oxygen compounds

Three americium oxides are known, with the oxidation states +2 (AmO), +3 (Am2O3) and +4 (AmO2). Americium(II) oxide was prepared in minute amounts and has not been characterized in detail.[61] Americium(III) oxide is a red-brown solid with a melting point of 2205 °C.[62] Americium(IV) oxide is the main form of solid americium which is used in nearly all its applications. As most other actinide dioxides, it is a black solid with a cubic (fluorite) crystal structure.[63]

The oxalate of americium(III), vacuum dried at room temperature, has the chemical formula Am2(C2O4)3·7H2O. Upon heating in vacuum, it loses water at 240 °C and starts decomposing into AmO2 at 300 °C, the decomposition completes at about 470 °C.[48] The initial oxalate dissolves in nitric acid with the maximum solubility of 0.25 g/L.[64]
Halides

Halides of americium are known for the oxidation states +2, +3 and +4,[65] where the +3 is most stable, especially in solutions.[66]
Oxidation state 	F 	Cl 	Br 	I
+4 	Americium(IV) fluoride
AmF4
pale pink 			
+3 	Americium(III) fluoride
AmF3
pink 	Americium(III) chloride
AmCl3
pink 	Americium(III) bromide
AmBr3
light yellow 	Americium(III) iodide
AmI3
light yellow
+2 		Americium(II) chloride
AmCl2
black 	Americium(II) bromide
AmBr2
black 	Americium(II) iodide
AmI2
black

Reduction of Am(III) compounds with sodium amalgam yields Am(II) salts – the black halides AmCl2, AmBr2 and AmI2. They are very sensitive to oxygen and oxidize in water, releasing hydrogen and converting back to the Am(III) state. Specific lattice constants are:

    Orthorhombic AmCl2: a = 896.3±0.8 pm, b = 757.3±0.8 pm and c = 453.2±0.6 pm
    Tetragonal AmBr2: a = 1159.2±0.4 pm and c = 712.1±0.3 pm.[67] They can also be prepared by reacting metallic americium with an appropriate mercury halide HgX2, where X = Cl, Br or I:[68]

    Am + HgX 2 mercury   halide → 400 − 500 ∘ C AmX 2 + Hg {\displaystyle {\ce {{Am}+{\underset {mercury\ halide}{HgX2}}->[{} \atop 400-500^{\circ }{\ce {C}}]{AmX2}+{Hg}}}} {\displaystyle {\ce {{Am}+{\underset {mercury\ halide}{HgX2}}->[{} \atop 400-500^{\circ }{\ce {C}}]{AmX2}+{Hg}}}}

Americium(III) fluoride (AmF3) is poorly soluble and precipitates upon reaction of Am3+ and fluoride ions in weak acidic solutions:

    Am 3 + + 3 F − ⟶ AmF 3 ↓ {\displaystyle {\ce {Am^3+ + 3F^- -> AmF3(v)}}} {\displaystyle {\ce {Am^3+ + 3F^- -> AmF3(v)}}}

The tetravalent americium(IV) fluoride (AmF4) is obtained by reacting solid americium(III) fluoride with molecular fluorine:[69][70]

    2 AmF 3 + F 2 ⟶ 2 AmF 4 {\displaystyle {\ce {2AmF3 + F2 -> 2AmF4}}} {\displaystyle {\ce {2AmF3 + F2 -> 2AmF4}}}

Another known form of solid tetravalent americium chloride is KAmF5.[69][71] Tetravalent americium has also been observed in the aqueous phase. For this purpose, black Am(OH)4 was dissolved in 15-M NH4F with the americium concentration of 0.01 M. The resulting reddish solution had a characteristic optical absorption spectrum which is similar to that of AmF4 but differed from other oxidation states of americium. Heating the Am(IV) solution to 90 °C did not result in its disproportionation or reduction, however a slow reduction was observed to Am(III) and assigned to self-irradiation of americium by alpha particles.[52]

Most americium(III) halides form hexagonal crystals with slight variation of the color and exact structure between the halogens. So, chloride (AmCl3) is reddish and has a structure isotypic to uranium(III) chloride (space group P63/m) and the melting point of 715 °C.[65] The fluoride is isotypic to LaF3 (space group P63/mmc) and the iodide to BiI3 (space group R3). The bromide is an exception with the orthorhombic PuBr3-type structure and space group Cmcm.[66] Crystals of americium hexahydrate (AmCl3·6H2O) can be prepared by dissolving americium dioxide in hydrochloric acid and evaporating the liquid. Those crystals are hygroscopic and have yellow-reddish color and a monoclinic crystal structure.[72]

Oxyhalides of americium in the form AmVIO2X2, AmVO2X, AmIVOX2 and AmIIIOX can be obtained by reacting the corresponding americium halide with oxygen or Sb2O3, and AmOCl can also be produced by vapor phase hydrolysis:[68]

    AmCl 3 + H 2 O ⟶ AmOCl + 2 HCl {\displaystyle {\ce {AmCl3 + H2O -> AmOCl + 2HCl}}} {\displaystyle {\ce {AmCl3 + H2O -> AmOCl + 2HCl}}}

Chalcogenides and pnictides

The known chalcogenides of americium include the sulfide AmS2,[73] selenides AmSe2 and Am3Se4,[73][74] and tellurides Am2Te3 and AmTe2.[75] The pnictides of americium (243Am) of the AmX type are known for the elements phosphorus, arsenic,[76] antimony and bismuth. They crystallize in the rock-salt lattice.[74]
Silicides and borides

Americium monosilicide (AmSi) and "disilicide" (nominally AmSix with: 1.87 < x < 2.0) were obtained by reduction of americium(III) fluoride with elementary silicon in vacuum at 1050 °C (AmSi) and 1150−1200 °C (AmSix). AmSi is a black solid isomorphic with LaSi, it has an orthorhombic crystal symmetry. AmSix has a bright silvery lustre and a tetragonal crystal lattice (space group I41/amd), it is isomorphic with PuSi2 and ThSi2.[77] Borides of americium include AmB4 and AmB6. The tetraboride can be obtained by heating an oxide or halide of americium with magnesium diboride in vacuum or inert atmosphere.[78][79]
Organoamericium compounds
Predicted structure of amerocene [(η8-C8H8)2Am]

Analogous to uranocene, americium forms the organometallic compound amerocene with two cyclooctatetraene ligands, with the chemical formula (η8-C8H8)2Am.[80] A cyclopentadienyl complex is also known that is likely to be stoichiometrically AmCp3.[81][82]

Formation of the complexes of the type Am(n-C3H7-BTP)3, where BTP stands for 2,6-di(1,2,4-triazin-3-yl)pyridine, in solutions containing n-C3H7-BTP and Am3+ ions has been confirmed by EXAFS. Some of these BTP-type complexes selectively interact with americium and therefore are useful in its selective separation from lanthanides and another actinides.[83]
Biological aspects

Americium is an artificial element of recent origin, and thus does not have a biological requirement.[84][85] It is harmful to life. It has been proposed to use bacteria for removal of americium and other heavy metals from rivers and streams. Thus, Enterobacteriaceae of the genus Citrobacter precipitate americium ions from aqueous solutions, binding them into a metal-phosphate complex at their cell walls.[86] Several studies have been reported on the biosorption and bioaccumulation of americium by bacteria[87][88] and fungi.[89]
Fission

The isotope 242mAm (half-life 141 years) has the largest cross sections for absorption of thermal neutrons (5,700 barns),[90] that results in a small critical mass for a sustained nuclear chain reaction. The critical mass for a bare 242mAm sphere is about 9–14 kg (the uncertainty results from insufficient knowledge of its material properties). It can be lowered to 3–5 kg with a metal reflector and should become even smaller with a water reflector.[91] Such small critical mass is favorable for portable nuclear weapons, but those based on 242mAm are not known yet, probably because of its scarcity and high price. The critical masses of two other readily available isotopes, 241Am and 243Am, are relatively high – 57.6 to 75.6 kg for 241Am and 209 kg for 243Am.[92] Scarcity and high price yet hinder application of americium as a nuclear fuel in nuclear reactors.[93]

There are proposals of very compact 10-kW high-flux reactors using as little as 20 grams of 242mAm. Such low-power reactors would be relatively safe to use as neutron sources for radiation therapy in hospitals.[94]
Isotopes
See also: Isotopes of americium

About 19 isotopes and 8 nuclear isomers are known for americium. There are two long-lived alpha-emitters; 243Am has a half-life of 7,370 years and is the most stable isotope, and 241Am has a half-life of 432.2 years. The most stable nuclear isomer is 242m1Am; it has a long half-life of 141 years. The half-lives of other isotopes and isomers range from 0.64 microseconds for 245m1Am to 50.8 hours for 240Am. As with most other actinides, the isotopes of americium with odd number of neutrons have relatively high rate of nuclear fission and low critical mass.[13]

Americium-241 decays to 237Np emitting alpha particles of 5 different energies, mostly at 5.486 MeV (85.2%) and 5.443 MeV (12.8%). Because many of the resulting states are metastable, they also emit gamma rays with the discrete energies between 26.3 and 158.5 keV.[95]

Americium-242 is a short-lived isotope with a half-life of 16.02 h.[13] It mostly (82.7%) converts by β-decay to 242Cm, but also by electron capture to 242Pu (17.3%). Both 242Cm and 242Pu transform via nearly the same decay chain through 238Pu down to 234U.

Nearly all (99.541%) of 242m1Am decays by internal conversion to 242Am and the remaining 0.459% by α-decay to 238Np. The latter subsequently decays to 238Pu and then to 234U.[13]

Americium-243 transforms by α-emission into 239Np, which converts by β-decay to 239Pu, and the 239Pu changes into 235U by emitting an α-particle.
Applications
Outside and inside view of an americium-based smoke detector
Ionization-type smoke detector
Main article: Smoke detector § Ionization

Americium is used in the most common type of household smoke detector, which uses 241Am in the form of americium dioxide as its source of ionizing radiation.[96] This isotope is preferred over 226Ra because it emits 5 times more alpha particles and relatively little harmful gamma radiation.

The amount of americium in a typical new smoke detector is 1 microcurie (37 kBq) or 0.29 microgram. This amount declines slowly as the americium decays into neptunium-237, a different transuranic element with a much longer half-life (about 2.14 million years). With its half-life of 432.2 years, the americium in a smoke detector includes about 3% neptunium after 19 years, and about 5% after 32 years. The radiation passes through an ionization chamber, an air-filled space between two electrodes, and permits a small, constant current between the electrodes. Any smoke that enters the chamber absorbs the alpha particles, which reduces the ionization and affects this current, triggering the alarm. Compared to the alternative optical smoke detector, the ionization smoke detector is cheaper and can detect particles which are too small to produce significant light scattering; however, it is more prone to false alarms.[97][98][99][100]
Radionuclide

As 241Am has a roughly similar half-life to 238Pu (432.2 years vs. 87 years), it has been proposed as an active element of radioisotope thermoelectric generators, for example in spacecraft.[101] Although americium produces less heat and electricity – the power yield is 114.7 mW/g for 241Am and 6.31 mW/g for 243Am[1] (cf. 390 mW/g for 238Pu)[101] – and its radiation poses more threat to humans owing to neutron emission, the European Space Agency is considering using americium for its space probes.[102]

Another proposed space-related application of americium is a fuel for space ships with nuclear propulsion. It relies on the very high rate of nuclear fission of 242mAm, which can be maintained even in a micrometer-thick foil. Small thickness avoids the problem of self-absorption of emitted radiation. This problem is pertinent to uranium or plutonium rods, in which only surface layers provide alpha-particles.[103][104] The fission products of 242mAm can either directly propel the spaceship or they can heat a thrusting gas. They can also transfer their energy to a fluid and generate electricity through a magnetohydrodynamic generator.[105]

One more proposal which utilizes the high nuclear fission rate of 242mAm is a nuclear battery. Its design relies not on the energy of the emitted by americium alpha particles, but on their charge, that is the americium acts as the self-sustaining "cathode". A single 3.2 kg 242mAm charge of such battery could provide about 140 kW of power over a period of 80 days.[106] Even with all the potential benefits, the current applications of 242mAm are as yet hindered by the scarcity and high price of this particular nuclear isomer.[105]

In 2019, researchers at the UK National Nuclear Laboratory and the University of Leicester demonstrated the use of heat generated by americium to illuminate a small light bulb. This technology could lead to systems to power missions with durations up to 400 years into interstellar space, where solar panels do not function.[107][108]
Neutron source

The oxide of 241Am pressed with beryllium is an efficient neutron source. Here americium acts as the alpha source, and beryllium produces neutrons owing to its large cross-section for the (α,n) nuclear reaction:

    Am 95 241 ⟶ Np 93 237 + He 2 4 + γ {\displaystyle {\ce {^{241}_{95}Am -> ^{237}_{93}Np + ^{4}_{2}He + \gamma}}} {\displaystyle {\ce {^{241}_{95}Am -> ^{237}_{93}Np + ^{4}_{2}He + \gamma}}}

    Be 4 9 + He 2 4 ⟶ C 6 12 + n 0 1 + γ {\displaystyle {\ce {^{9}_{4}Be + ^{4}_{2}He -> ^{12}_{6}C + ^{1}_{0}n + \gamma}}} {\displaystyle {\ce {^{9}_{4}Be + ^{4}_{2}He -> ^{12}_{6}C + ^{1}_{0}n + \gamma}}}

The most widespread use of 241AmBe neutron sources is a neutron probe – a device used to measure the quantity of water present in soil, as well as moisture/density for quality control in highway construction. 241Am neutron sources are also used in well logging applications, as well as in neutron radiography, tomography and other radiochemical investigations.[109]
Production of other elements

Americium is a starting material for the production of other transuranic elements and transactinides – for example, 82.7% of 242Am decays to 242Cm and 17.3% to 242Pu. In the nuclear reactor, 242Am is also up-converted by neutron capture to 243Am and 244Am, which transforms by β-decay to 244Cm:

    Am 95 243 → ( n , γ ) Am 95 244 → 10.1   h β − Cm 96 244 {\displaystyle {\ce {^{243}_{95}Am ->[{\ce {(n,\gamma)}}] ^{244}_{95}Am ->[\beta^-][10.1 \ {\ce {h}}] ^{244}_{96}Cm}}} {\displaystyle {\ce {^{243}_{95}Am ->[{\ce {(n,\gamma)}}] ^{244}_{95}Am ->[\beta^-][10.1 \ {\ce {h}}] ^{244}_{96}Cm}}}

Irradiation of 241Am by 12C or 22Ne ions yields the isotopes 247Es (einsteinium) or 260Db (dubnium), respectively.[109] Furthermore, the element berkelium (243Bk isotope) had been first intentionally produced and identified by bombarding 241Am with alpha particles, in 1949, by the same Berkeley group, using the same 60-inch cyclotron. Similarly, nobelium was produced at the Joint Institute for Nuclear Research, Dubna, Russia, in 1965 in several reactions, one of which included irradiation of 243Am with 15N ions. Besides, one of the synthesis reactions for lawrencium, discovered by scientists at Berkeley and Dubna, included bombardment of 243Am with 18O.[10]
Spectrometer

Americium-241 has been used as a portable source of both gamma rays and alpha particles for a number of medical and industrial uses. The 59.5409 keV gamma ray emissions from 241Am in such sources can be used for indirect analysis of materials in radiography and X-ray fluorescence spectroscopy, as well as for quality control in fixed nuclear density gauges and nuclear densometers. For example, the element has been employed to gauge glass thickness to help create flat glass.[25] Americium-241 is also suitable for calibration of gamma-ray spectrometers in the low-energy range, since its spectrum consists of nearly a single peak and negligible Compton continuum (at least three orders of magnitude lower intensity).[110] Americium-241 gamma rays were also used to provide passive diagnosis of thyroid function. This medical application is however obsolete.
Health concerns

As a highly radioactive element, americium and its compounds must be handled only in an appropriate laboratory under special arrangements. Although most americium isotopes predominantly emit alpha particles which can be blocked by thin layers of common materials, many of the daughter products emit gamma-rays and neutrons which have a long penetration depth.[111]

If consumed, most of the americium is excreted within a few days, with only 0.05% absorbed in the blood, of which roughly 45% goes to the liver and 45% to the bones, and the remaining 10% is excreted. The uptake to the liver depends on the individual and increases with age. In the bones, americium is first deposited over cortical and trabecular surfaces and slowly redistributes over the bone with time. The biological half-life of 241Am is 50 years in the bones and 20 years in the liver, whereas in the gonads (testicles and ovaries) it remains permanently; in all these organs, americium promotes formation of cancer cells as a result of its radioactivity.[20][112][113]

Americium often enters landfills from discarded smoke detectors. The rules associated with the disposal of smoke detectors are relaxed in most jurisdictions. In 1994, 17-year-old David Hahn extracted the americium from about 100 smoke detectors in an attempt to build a breeder nuclear reactor.[114][115][116][117] There have been a few cases of exposure to americium, the worst case being that of chemical operations technician Harold McCluskey, who at the age of 64 was exposed to 500 times the occupational standard for americium-241 as a result of an explosion in his lab. McCluskey died at the age of 75 of unrelated pre-existing disease.[118][119]
See also

    Actinides in the environment
    Category:Americium compounds

Notes

    The "metastable" state is marked by the letter m.

References

Muller, W.; Schenkel, R.; Schmidt, H. E.; Spirlet, J. C.; McElroy, D. L.; Hall, R. O. A.; Mortimer, M. J. (1978). "The electrical resistivity and specific heat of americium metal". Journal of Low Temperature Physics. 30 (5–6): 561. Bibcode:1978JLTP...30..561M. doi:10.1007/BF00116197.
Weast, Robert (1984). CRC, Handbook of Chemistry and Physics. Boca Raton, Florida: Chemical Rubber Company Publishing. pp. E110. ISBN 0-8493-0464-4.
Seaborg, Glenn T. (1946). "The Transuranium Elements". Science. 104 (2704): 379–386. Bibcode:1946Sci...104..379S. doi:10.1126/science.104.2704.379. JSTOR 1675046. PMID 17842184.
http://acshist.scs.illinois.edu/bulletin_open_access/v33-2/v33-2%20p89-93.pdf
http://pubsapp.acs.org/cen/80th/print/americiumprint.html?
"Demobilized Physics". LBL NEWS Magazine. 6 (3): 49. Fall 1981.
Obituary of Dr. Leon Owen (Tom) Morgan (1919–2002), Retrieved 28 November 2010
Seaborg, G. T.; James, R.A. and Morgan, L. O.: "The New Element Americium (Atomic Number 95)", THIN PPR (National Nuclear Energy Series, Plutonium Project Record), Vol 14 B The Transuranium Elements: Research Papers, Paper No. 22.1, McGraw-Hill Book Co., Inc., New York, 1949. Abstract; Full text (January 1948), Retrieved 28 November 2010
Street, K.; Ghiorso, A.; Seaborg, G. (1950). "The Isotopes of Americium". Physical Review. 79 (3): 530. Bibcode:1950PhRv...79..530S. doi:10.1103/PhysRev.79.530.
Greenwood, p. 1252
Pepling, Rachel Sheremeta (2003). "Chemical & Engineering News: It's Elemental: The Periodic Table – Americium". Retrieved 7 July 2010.
Robert E. Krebs (2006). The History and Use of Our Earth's Chemical Elements: A Reference Guide (Second ed.). Greenwood Publishing Group. p. 322. ISBN 978-0-313-33438-2.
Audi, Georges; Bersillon, Olivier; Blachot, Jean; Wapstra, Aaldert Hendrik (1997). "The NUBASE evaluation of nuclear and decay properties" (PDF). Nuclear Physics A. 624 (1): 1–124. Bibcode:1997NuPhA.624....1A. doi:10.1016/S0375-9474(97)00482-X. Archived from the original (PDF) on 23 September 2008.
Seaborg, Glenn T. U.S. Patent 3,156,523 "Element", Filing date: 23 August 1946, Issue date: 10 November 1964
Westrum, Edgar F.; Eyring, Leroy (1951). "The Preparation and Some Properties of Americium Metal". Journal of the American Chemical Society. 73 (7): 3396. doi:10.1021/ja01151a116. hdl:2027/mdp.39015086480962.
Earth, Rachel Ross 2017-05-23T02:31:00Z Planet. "Facts About Americium". livescience.com. Retrieved 10 August 2019.
"Americium - Element information, properties and uses | Periodic Table". www.rsc.org. Retrieved 10 August 2019.
Fields, P. R.; Studier, M. H.; Diamond, H.; et al. (1956). "Transplutonium Elements in Thermonuclear Test Debris". Physical Review. 102 (1): 180–182. Bibcode:1956PhRv..102..180F. doi:10.1103/PhysRev.102.180.
Eriksson, Mats (April 2002). On Weapons Plutonium in the Arctic Environment (PDF). Risø National Laboratory, Roskilde, Denmark: Lund University. p. 28. Archived from the original (PDF) on 18 December 2008. Retrieved 15 November 2008.
Human Health Fact Sheet on Americium Archived 16 July 2011 at the Wayback Machine, Los Alamos National Laboratory, Retrieved 28 November 2010
Hoffmann, Klaus Kann man Gold machen? Gauner, Gaukler und Gelehrte. Aus der Geschichte der chemischen Elemente (Can you make gold? Crooks, clowns and scholars. From the history of the chemical elements), Urania-Verlag, Leipzig, Jena, Berlin 1979, no ISBN, p. 233
Baetslé, L. Application of Partitioning/Transmutation of Radioactive Materials in Radioactive Waste Management Archived 26 April 2005 at the Wayback Machine, Nuclear Research Centre of Belgium Sck/Cen, Mol, Belgium, September 2001, Retrieved 28 November 2010
Fioni, Gabriele; Cribier, Michel and Marie, Frédéric Can the minor actinide, americium-241, be transmuted by thermal neutrons? Archived 11 November 2007 at the Wayback Machine, Department of Astrophysics, CEA/Saclay, Retrieved 28 November 2010
Emsley, John (2011). Nature's Building Blocks: An A-Z Guide to the Elements (New ed.). New York, NY: Oxford University Press. ISBN 978-0-19-960563-7.
Greenwood, p. 1262
Smoke detectors and americium Archived 12 November 2010 at the Wayback Machine, World Nuclear Association, January 2009, Retrieved 28 November 2010
Hammond C. R. "The elements" in Lide, D. R., ed. (2005). CRC Handbook of Chemistry and Physics (86th ed.). Boca Raton (FL): CRC Press. ISBN 0-8493-0486-5.
Emeleus, H. J.; Sharpe, A. G. (1987). Advances in Inorganic Chemistry. Academic Press. p. 2. ISBN 978-0-08-057880-4.
BREDL Southern Anti-Plutonium Campaign, Blue Ridge Environmental Defense League, Retrieved 28 November 2010
Sasahara, A.; et al. (2004). "Neutron and Gamma Ray Source Evaluation of LWR High Burn-up UO2 and MOX Spent Fuels". Journal of Nuclear Science and Technology. 41 (4): 448–456. doi:10.3327/jnst.41.448. article/200410/000020041004A0333355.php Abstract Archived 24 November 2010 at the Wayback Machine
Penneman, pp. 34–48
Hudson, M. J.; et al. (2003). "The coordination chemistry of 1,2,4-triazinyl bipyridines with lanthanide(III) elements – implications for the partitioning of americium(III)". Dalton Trans. (9): 1675–1685. doi:10.1039/b301178j.
Geist, A.; et al. (11–13 December 2000). "Actinide(III)/Lanthanide(III) Partitioning Using n-Pr-BTP as Extractant: Extraction Kinetics and Extraction Test in a Hollow Fiber Module" (PDF). 6th Information Exchange Meeting on Actinide and Fission Product Partitioning and Transmutation. OECD Nuclear Energy Agency.
Hill, C.; Guillaneux, D.; Hérès, X.; Boubals, N. & Ramain, L. (24–26 October 2000). "Sanex-BTP Process Development Studies" (PDF). Atalante 2000: Scientific Research on the Back-end of the Fuel Cycle for the 21st Century. Commissariat à l'énergie atomique. Archived from the original (PDF) on 15 November 2012.
Geist, A.; et al. (14–16 October 2002). "Effective Actinide(III)-Lanthanide(III) Separation in Miniature Hollow Fibre Modules" (PDF). 7th Information Exchange Meeting on Actinide and Fission Product Partitioning and Transmutation. OECD Nuclear Energy Agency.
Ensor, D.D. "Separation Studies of f-Elements" (PDF). Tennessee Tech University. Archived from the original (PDF) on 22 September 2006.
Magnusson D; Christiansen B; Foreman MRS; Geist A; Glatz JP; Malmbeck R; Modolo G; Serrano-Purroy D & Sorel C (2009). "Demonstration of a SANEX Process in Centrifugal Contactors using the CyMe4-BTBP Molecule on a Genuine Fuel Solution". Solvent Extraction and Ion Exchange. 27 (2): 97. doi:10.1080/07366290802672204. S2CID 94720457.
Penneman, p. 25
Gmelin Handbook of Inorganic Chemistry, System No. 71, transuranics, Part B 1, pp. 57–67.
Penneman, p. 3
Wade, W.; Wolf, T. (1967). "Preparation and some properties of americium metal". Journal of Inorganic and Nuclear Chemistry. 29 (10): 2577. doi:10.1016/0022-1902(67)80183-0.
Benedict, U. (1984). "Study of actinide metals and actinide compounds under high pressures". Journal of the Less Common Metals. 100: 153. doi:10.1016/0022-5088(84)90061-4.
McWhan, D. B.; Cunningham, B. B.; Wallmann, J. C. (1962). "Crystal structure, thermal expansion and melting point of americium metal". Journal of Inorganic and Nuclear Chemistry. 24 (9): 1025. doi:10.1016/0022-1902(62)80246-2.
Young, D. A. (1991). Phase diagrams of the elements. University of California Press. p. 226. ISBN 978-0-520-91148-2.
Benedict, U.; Dufour, C. (1980). "Low temperature lattice expansion of americium dioxide". Physica B+C. 102 (1): 303. Bibcode:1980PhyBC.102..303B. doi:10.1016/0378-4363(80)90178-3.
Kanellakopulos, B.; Blaise, A.; Fournier, J. M.; Müller, W. (1975). "The magnetic susceptibility of Americium and curium metal". Solid State Communications. 17 (6): 713. Bibcode:1975SSCom..17..713K. doi:10.1016/0038-1098(75)90392-0.
Mondal, J. U.; Raschella, D. L.; Haire, R. G.; Petereson, J. R. (1987). "The enthalpy of solution of 243Am metal and the standard enthalpy of formation of Am3+(aq)". Thermochimica Acta. 116: 235. doi:10.1016/0040-6031(87)88183-2.
Penneman, p. 4
Americium Archived 9 June 2019 at the Wayback Machine, Das Periodensystem der Elemente für den Schulgebrauch (The periodic table of elements for schools) chemie-master.de (in German), Retrieved 28 November 2010
Greenwood, p. 1265
Penneman, pp. 10–14
Asprey, L. B.; Penneman, R. A. (1961). "First Observation of Aqueous Tetravalent Americium1". Journal of the American Chemical Society. 83 (9): 2200. doi:10.1021/ja01470a040.
Coleman, J. S.; Keenan, T. K.; Jones, L. H.; Carnall, W. T.; Penneman, R. A. (1963). "Preparation and Properties of Americium(VI) in Aqueous Carbonate Solutions". Inorganic Chemistry. 2: 58. doi:10.1021/ic50005a017.
Asprey, L. B.; Stephanou, S. E.; Penneman, R. A. (1951). "Hexavalent Americium". Journal of the American Chemical Society. 73 (12): 5715. doi:10.1021/ja01156a065.
Wiberg, p. 1956
Werner, L. B.; Perlman, I. (1951). "The Pentavalent State of Americium". Journal of the American Chemical Society. 73: 495. doi:10.1021/ja01145a540. hdl:2027/mdp.39015086479774.
Hall, G.; Markin, T. L. (1957). "The self-reduction of americium(V) and (VI) and the disproportionation of americium(V) in aqueous solution". Journal of Inorganic and Nuclear Chemistry. 4 (5–6): 296. doi:10.1016/0022-1902(57)80011-6.
Coleman, James S. (1963). "The Kinetics of the Disproportionation of Americium(V)". Inorganic Chemistry. 2: 53. doi:10.1021/ic50005a016.
Greenwood, p. 1275
Asprey, L. B.; Stephanou, S. E.; Penneman, R. A. (1950). "A New Valence State of Americium, Am(Vi)1". Journal of the American Chemical Society. 72 (3): 1425. doi:10.1021/ja01159a528.
Akimoto, Y. (1967). "A note on AmN and AmO". Journal of Inorganic and Nuclear Chemistry. 29 (10): 2650–2652. doi:10.1016/0022-1902(67)80191-X.
Wiberg, p. 1972
Greenwood, p. 1267
Penneman, p. 5
Wiberg, p. 1969
Asprey, L. B.; Keenan, T. K.; Kruse, F. H. (1965). "Crystal Structures of the Trifluorides, Trichlorides, Tribromides, and Triiodides of Americium and Curium". Inorganic Chemistry. 4 (7): 985. doi:10.1021/ic50029a013.
Baybarz, R. D. (1973). "The preparation and crystal structures of americium dichloride and dibromide". Journal of Inorganic and Nuclear Chemistry. 35 (2): 483. doi:10.1016/0022-1902(73)80560-3.
Greenwood, p. 1272
Asprey, L. B. (1954). "New Compounds of Quadrivalent Americium, AmF4, KAmF5". Journal of the American Chemical Society. 76 (7): 2019. doi:10.1021/ja01636a094.
Greenwood, p. 1271
Penneman, p. 6
Burns, John H.; Peterson, Joseph Richard (1971). "Crystal structures of americium trichloride hexahydrate and berkelium trichloride hexahydrate". Inorganic Chemistry. 10: 147. doi:10.1021/ic50095a029.
Damien, D.; Jove, J. (1971). "Americium disulfide and diselenide". Inorganic and Nuclear Chemistry Letters. 7 (7): 685. doi:10.1016/0020-1650(71)80055-7.
Roddy, J. (1974). "Americium metallides: AmAs, AmSb, AmBi, Am3Se4, and AmSe2". Journal of Inorganic and Nuclear Chemistry. 36 (11): 2531. doi:10.1016/0022-1902(74)80466-5.
Damien, D. (1972). "Americium tritelluride and ditelluride". Inorganic and Nuclear Chemistry Letters. 8 (5): 501. doi:10.1016/0020-1650(72)80262-9.
Charvillat, J.; Damien, D. (1973). "Americium monoarsenide". Inorganic and Nuclear Chemistry Letters. 9 (5): 559. doi:10.1016/0020-1650(73)80191-6.
Weigel, F.; Wittmann, F.; Marquart, R. (1977). "Americium monosilicide and "disilicide"". Journal of the Less Common Metals. 56: 47. doi:10.1016/0022-5088(77)90217-X.
Lupinetti, A. J. et al. U.S. Patent 6,830,738 "Low-temperature synthesis of actinide tetraborides by solid-state metathesis reactions", Filed 4 Apr 2002, Issued 14 December 2004
Eick, Harry A.; Mulford, R. N. R. (1969). "Americium and neptunium borides". Journal of Inorganic and Nuclear Chemistry. 31 (2): 371. doi:10.1016/0022-1902(69)80480-X.
Elschenbroich, Christoph (2008). Organometallchemie. Vieweg+teubner Verlag. p. 589. ISBN 978-3-8351-0167-8.
Albrecht-Schmitt, Thomas E. (2008). Organometallic and Coordination Chemistry of the Actinides. Springer. p. 8. ISBN 978-3-540-77836-3.
Dutkiewicz, Michał S.; Apostolidis, Christos; Walter, Olaf; Arnold, Polly L. (30 January 2017). "Reduction chemistry of neptunium cyclopentadienide complexes: from structure to understanding". Chemical Science. 2017 (8): 2553–61. doi:10.1039/C7SC00034K. PMC 5431675. PMID 28553487.
Girnt, Denise; Roesky, Peter W.; Geist, Andreas; Ruff, Christian M.; Panak, Petra J.; Denecke, Melissa A. (2010). "6-(3,5-Dimethyl-1H-pyrazol-1-yl)-2,2'-bipyridine as Ligand for Actinide(III)/Lanthanide(III) Separation" (PDF). Inorganic Chemistry. 49 (20): 9627–35. doi:10.1021/ic101309j. PMID 20849125.
Toeniskoetter, Steve; Dommer, Jennifer and Dodge, Tony The Biochemical Periodic Tables – Americium, University of Minnesota, Retrieved 28 November 2010
Dodge, C.J.; et al. (1998). "Role of Microbes as Biocolloids in the Transport of Actinides from a Deep Underground Radioactive Waste Repository". Radiochim. Acta. 82: 347–354.
MacAskie, L. E.; Jeong, B. C.; Tolley, M. R. (1994). "Enzymically accelerated biomineralization of heavy metals: application to the removal of americium and plutonium from aqueous flows". FEMS Microbiology Reviews. 14 (4): 351–67. doi:10.1111/j.1574-6976.1994.tb00109.x. PMID 7917422.
Wurtz, E. A.; Sibley, T. H.; Schell, W. R. (1986). "Interactions of Escherichia coli and marine bacteria with 241Am in laboratory cultures". Health Physics. 50 (1): 79–88. doi:10.1097/00004032-198601000-00007. PMID 3511007.
Francis, A.J.; et al. (1998). "Role of Bacteria as Biocolloids in the Transport of Actinides from a Deep Underground Radioactive Waste Repository". Radiochimica Acta. 82: 347–354. doi:10.1524/ract.1998.82.special-issue.347. OSTI 2439. S2CID 99777562.
Liu, N.; Yang, Y.; Luo, S.; Zhang, T.; Jin, J.; Liao, J.; Hua, X. (2002). "Biosorption of 241Am by Rhizopus arrihizus: preliminary investigation and evaluation". Applied Radiation and Isotopes. 57 (2): 139–43. doi:10.1016/s0969-8043(02)00076-3. PMID 12150270.
Pfennig, G.; Klewe-Nebenius, H and Seelmann Eggebert, W. (Eds.): Karlsruhe nuclide, 7 Edition 2006.
Dias, H.; Tancock, N. & Clayton, A. (2003). "Critical Mass Calculations for 241Am, 242mAm and 243Am" (PDF). Nippon Genshiryoku Kenkyujo JAERI: 618–623. Archived from the original (PDF) on 22 July 2011. Abstract Archived 13 March 2012 at the Wayback Machine
Institut de Radioprotection et de Sûreté Nucléaire, "Evaluation of nuclear criticality safety data and limits for actinides in transport", p. 16.
Ronen, Y.; Aboudy, M. & Regev, D. (2000). "A novel method for energy production using 242mAm as a nuclear fuel". Nuclear Technology. 129 (3): 407–417. doi:10.13182/nt00-a3071. S2CID 91916073.
Ronen, Y.; Aboudy, M. & Regev, D. (2001). "Homogeneous 242mAm-Fueled Reactor for Neutron Capture Therapy". Nuclear Science and Engineering. 138 (3): 295–304. doi:10.13182/nse01-a2215. OSTI 20804726. S2CID 118801999.
Klinck, Christian. "α-decay of 241Am. Theory – A lecture course on radioactivity". University of Technology Kaiserslautern. Archived from the original on 6 July 2011. Retrieved 28 November 2010.
"Smoke Detectors and Americium", Nuclear Issues Briefing Paper, 35, May 2002, archived from the original on 11 September 2002, retrieved 26 August 2015
Residential Smoke Alarm Performance, Thomas Cleary. Building and Fire Research Laboratory, National Institute of Standards and Technology; UL Smoke and Fire Dynamics Seminar. November 2007
Bukowski, R. W. et al. (2007) Performance of Home Smoke Alarms Analysis of the Response of Several Available Technologies in Residential Fire Settings, NIST Technical Note 1455-1
"Smoke detectors and americium-241 fact sheet" (PDF). Canadian Nuclear Society. Retrieved 31 August 2009.
Gerberding, Julie Louise (2004). "Toxicological Profile For Americium" (PDF). United States Department of Health and Human Services/Agency for Toxic Substances and Disease Registry. Archived (PDF) from the original on 6 September 2009. Retrieved 29 August 2009.
Basic elements of static RTGs, G.L. Kulcinski, NEEP 602 Course Notes (Spring 2000), Nuclear Power in Space, University of Wisconsin Fusion Technology Institute (see last page)
Space agencies tackle waning plutonium stockpiles, Spaceflight now, 9 July 2010
"Extremely Efficient Nuclear Fuel Could Take Man To Mars in Just Two Weeks". ScienceDaily. 3 January 2001. Archived from the original on 17 October 2007. Retrieved 22 November 2007.
Kammash, T.; et al. (10 January 1993). "An americium-fueled gas core nuclear rocket" (PDF). AIP Conf. Proc. Tenth symposium on space nuclear power and propulsion. 271. pp. 585–589. doi:10.1063/1.43073. hdl:2027.42/87734.
Ronen, Y.; Shwageraus, E. (2000). "Ultra-thin 242mAm fuel elements in nuclear reactors". Nuclear Instruments and Methods in Physics Research Section A: Accelerators, Spectrometers, Detectors and Associated Equipment. 455 (2): 442. Bibcode:2000NIMPA.455..442R. doi:10.1016/S0168-9002(00)00506-4.
Genuth, Iddo Americium Power Source Archived 7 May 2010 at the Wayback Machine, The Future of Things, 3 October 2006, Retrieved 28 November 2010
"UK scientists generate electricity from rare element to power future space missions". National Nuclear Laboratory. Retrieved 3 May 2019.
"Rare element could power distant space missions". E&T Engineering and Technology. Institution of Engineering and Technology. 3 May 2019. Retrieved 3 May 2019.
Binder, Harry H. (1999). Lexikon der chemischen Elemente: das Periodensystem in Fakten, Zahlen und Daten : mit 96 Abbildungen und vielen tabellarischen Zusammenstellungen. ISBN 978-3-7776-0736-8.
Nuclear Data Viewer 2.4, NNDC
Public Health Statement for Americium Section 1.5., Agency for Toxic Substances and Disease Registry, April 2004, Retrieved 28 November 2010
Division of Environmental Health, Office of Radiation Protection (November 2002). "Fact Sheet # 23. Americium-241" (PDF). Archived from the original (PDF) on 11 November 2010. Retrieved 28 November 2010.
Frisch, Franz Crystal Clear, 100 x energy, Bibliographisches Institut AG, Mannheim 1977, ISBN 3-411-01704-X, p. 184
Ken Silverstein, The Radioactive Boy Scout: When a teenager attempts to build a breeder reactor. Harper's Magazine, November 1998
"'Radioactive Boy Scout' Charged in Smoke Detector Theft". Fox News. 4 August 2007. Archived from the original on 8 December 2007. Retrieved 28 November 2007.
"Man dubbed 'Radioactive Boy Scout' pleads guilty". Detroit Free Press. Associated Press. 27 August 2007. Archived from the original on 29 September 2007. Retrieved 27 August 2007.
"'Radioactive Boy Scout' Sentenced to 90 Days for Stealing Smoke Detectors". Fox News. 4 October 2007. Archived from the original on 13 November 2007. Retrieved 28 November 2007.
Cary, Annette (25 April 2008). "Doctor remembers Hanford's 'Atomic Man'". Tri-City Herald. Archived from the original on 10 February 2010. Retrieved 17 June 2008.

    AP wire (3 June 2005). "Hanford nuclear workers enter site of worst contamination accident". Archived from the original on 13 October 2007. Retrieved 17 June 2007.

Bibliography

    Greenwood, Norman N.; Earnshaw, Alan (1997). Chemistry of the Elements (2nd ed.). Butterworth-Heinemann. ISBN 978-0-08-037941-8.
    Penneman, R. A. and Keenan T. K. The radiochemistry of americium and curium, University of California, Los Alamos, California, 1960
    Wiberg, Nils (2007). Lehrbuch Der Anorganischen Chemie. De Gruyter. ISBN 978-3-11-017770-1.

Further reading

    Nuclides and Isotopes – 14th Edition, GE Nuclear Energy, 1989.
    Fioni, Gabriele; Cribier, Michel & Marie, Frédéric. "Can the minor actinide, americium-241, be transmuted by thermal neutrons?". Commissariat à l'énergie atomique. Archived from the original on 11 November 2007.
    Stwertka, Albert (1999). A Guide to the Elements. Oxford University Press, USA. ISBN 978-0-19-508083-4.

External links
	Wikimedia Commons has media related to Americium.
	Look up americium in Wiktionary, the free dictionary.

    Americium at The Periodic Table of Videos (University of Nottingham)
    ATSDR – Public Health Statement: Americium
    World Nuclear Association – Smoke Detectors and Americium 

    vte

Periodic table
	1 	2 		3 	4 	5 	6 	7 	8 	9 	10 	11 	12 	13 	14 	15 	16 	17 	18
1 	H 		He
2 	Li 	Be 		B 	C 	N 	O 	F 	Ne
3 	Na 	Mg 		Al 	Si 	P 	S 	Cl 	Ar
4 	K 	Ca 		Sc 	Ti 	V 	Cr 	Mn 	Fe 	Co 	Ni 	Cu 	Zn 	Ga 	Ge 	As 	Se 	Br 	Kr
5 	Rb 	Sr 		Y 	Zr 	Nb 	Mo 	Tc 	Ru 	Rh 	Pd 	Ag 	Cd 	In 	Sn 	Sb 	Te 	I 	Xe
6 	Cs 	Ba 	La 	Ce 	Pr 	Nd 	Pm 	Sm 	Eu 	Gd 	Tb 	Dy 	Ho 	Er 	Tm 	Yb 	Lu 	Hf 	Ta 	W 	Re 	Os 	Ir 	Pt 	Au 	Hg 	Tl 	Pb 	Bi 	Po 	At 	Rn
7 	Fr 	Ra 	Ac 	Th 	Pa 	U 	Np 	Pu 	Am 	Cm 	Bk 	Cf 	Es 	Fm 	Md 	No 	Lr 	Rf 	Db 	Sg 	Bh 	Hs 	Mt 	Ds 	Rg 	Cn 	Nh 	Fl 	Mc 	Lv 	Ts 	Og
s-block 	f-block 	d-block 	p-block

    vte

Americium compounds
Authority control Edit this at Wikidata	

    GND: 4191405-3 LCCN: sh85004443 MA: 552554468 NDL: 00575178

Categories:

    AmericiumChemical elementsActinidesCarcinogensSynthetic elements

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    Suomi
    اردو
    中文

Edit links

    This page was last edited on 10 May 2021, at 00:01 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! An Anarchist FAQ

!! https://en.wikipedia.org/wiki/An_Anarchist_FAQ

From Wikipedia, the free encyclopedia


"An Anarchist FAQ" is a FAQ written by an international work group of social anarchists connected through the internet.[1][2] It documents anarchist theory and ideas and argues in favor of social anarchism.[3][4] It also explores other debates internal to the anarchist movement and counters common arguments against anarchism. It has been in constant evolution since 1995. While it was started as a critique of anarcho-capitalism, by the time it was officially released it had become a general introduction to anarchism.

The FAQ is published under the terms of the GNU Free Documentation License (copyleft) and it is dedicated "to the millions of anarchists, living and dead, who tried and are trying to create a better world". It was officially released online on 19 July 1996 "to celebrate the Spanish Revolution of 1936 and the heroism of the Spanish anarchist movement".
Contents

    1 History
    2 Content
    3 Influence and reception
    4 References
    5 External links

History

The FAQ was started in 1995 when a group of anarchists got together in order to write an FAQ arguing against capitalist claims of being anarchists. Those who were involved in the project had spent many hours in online debate with self-described anarcho-capitalists concerning whether or not anarchism and capitalism are compatible. Eventually, a group of net-activists decided to write an FAQ explaining their thoughts on why anarchism and capitalism are incompatible. While the FAQ was written by many collaborators, the main contributors are listed in the introduction as Iain McKay (primary contributor and editor), Gary Elkin, Dave Neal and Ed Boraas, who refer to themselves as The Anarchist FAQ Editorial Collective.[5] However, the editors eventually decided that an anarchist FAQ which focused on anarchism itself would be a better idea than one solely devoted to refuting the notion of anarcho-capitalism and so the FAQ was born. The authors acknowledge that "it still bears some of the signs of its past-history. For example it gives the likes of Ayn Rand, Murray Rothbard, and so on, far too much space outside of Section F—they really are not that important".[6]

The FAQ thanks the following people for their contributions: Andrew Flood, Mike Ballard, Francois Coquet, Jamal Hannah, Mike Huben, Greg Alt, Chuck Munson, Pauline McCormack, Nestor McNab, Kevin Carson, Shawn Wilbur "and our comrades on the anarchy, oneunion and organise! mailing lists". A 2003 Critical Studies in Media Communication study declared the FAQ the most prominent core anarchist website, finding that it received incoming links from 20% of the anarchist websites studied.[7]

The FAQ was published in paperback in two volumes by AK Press, Oakland/Edinburgh:[8]

    Volume I: 2008, 558 pages, ISBN 9781902593906.
    Volume II: 2012; 550 pages, ISBN 9781849351225.

Content
Part of the Politics series on
Anarchism
"Circle-A" anarchy symbol
Schools of thought

    TheoryPractice

People
Issues
History
Culture
Economics
By region
Lists
Related topics

    BlackFlagSymbol.svg Anarchism portal
    A coloured voting box.svg Politics portal

    vte

The editors of the FAQ identify themselves as belonging to the social anarchist branch of anarchism (defined as anarcho-communism, anarcho-syndicalism, collectivist anarchism and Pierre-Joseph Proudhon's mutualism).[9] Despite this, the FAQ presents and describes other anarchist schools of thought such as individualist anarchism, anarcha-feminism and some lesser known theories like platformism and anarcho-primitivism. It cites references from a variety of authors from these schools and its bibliography contains over five hundred sources. According to the FAQ, anarchism is synonymous with libertarian socialism, free socialism, libertarian communism and free communism.[10]

Given the wide range of anarchist ideas, the authors acknowledge that many anarchists will not agree with everything that the FAQ says. However, they express their belief that "most anarchists will agree with most of what we present and respect those parts with which they do disagree with as genuine expressions of anarchist ideas and ideals".[5]

The FAQ also explains disputes within anarchist thought, such as where and why social anarchists and individualist anarchists disagree.[9] As social anarchists, the writers also explain their own views on individualist anarchism, arguing that while individualist anarchism has importance it also has contradictions and "many flaws", stating that it would lead to a "hierarchical and non-anarchist" society.[11] They also defend against individualist anarchists' criticisms of social anarchism, claiming that "much of this opposition was rooted in misunderstandings and, at times, outright distortion".[12]

The FAQ does not accept anarcho-capitalism as part of individualist anarchism, nor of anarchism in general. The FAQ writers explain and criticise anarcho-capitalism in sections F and to some extent G of the FAQ. They assert that "outside the net [anarcho-capitalists] are irrelevant and on the net they are just annoying" and call the arguments of anarcho-capitalists "inane'".[5] A critique of Bryan Caplan's "Anarchism Theory FAQ" is also presented in the first appendix, along with arguments that Caplan's FAQ distorts anarchism's relationship with anarcho-capitalism.[13][14]
Influence and reception

The FAQ has been complimented by several sources. The anarcho-syndicalist Solidarity Federation called it an "invaluable resource" and "highly recommended" for people wishing "to gain a better understanding of anarchism".[15] Flint Jones, a member of NEFAC, hailed the FAQ as "the most comprehensive [anarchist] resource available".[16] The Workers Solidarity Movement, an Irish anarchist group, called it "the primary source of information about anarchism on the world wide web".[17] Quebecer anarchist Normand Baillargeon calls it a "monumental and essential FAQ dedicated to anarchism".[18] The FAQ has been cited by communications scholar Joseph M. Reagle Jr. "[as] an exemplar of the principles [of community governance]".[19] In recent years, the FAQ has been cited in various published works, such as Viable Utopian Ideas: Shaping a Better World (2003) by Arthur Shostak[20] and Utopia and Organization (2002) by Martin Parker.[21] It has been described as "very comprehensive" by Paul Graham and John Hoffman in their Introduction to Political Ideologies (2006).[22] Various versions of the FAQ have been translated into eight languages and it has been included in every stable Debian release since 1999.[23][24]

An older version of the FAQ was once criticised by one of the anarcho-capitalists it was written to oppose. Writing in 1997 and referring to the 1996 version of the FAQ, David D. Friedman complained about what he called the authors' "irresponsibility" in making errors in their account of Icelandic history and by attributing to him a position which he did not hold. He claimed that the authors' methodology was to first "make up their facts", then correct errors as he points them out, hoping that they eventually come up with a true account.[25] The authors corrected their misstatement of Friedman's view in later versions when they became aware of his criticism.[26] While they acknowledged that the 1996 version of the FAQ did contain some errors concerning medieval Iceland and was poorly fact-checked, they denied that this represents a "disregard for the truth" and they argue their critique was still valid despite "some serious errors in details".[26][27]

Mutualist and individualist anarchist Kevin Carson called the FAQ a "[m]onumental compendium on anarchist history, theory and practice". However, Carson disagreed with the FAQ's analysis of anarcho-capitalism.[28] He referred to the FAQ's treatment of anarcho-capitalism as "probably the FAQ's weakest spot", continuing: "[While] I consider anarcho-capitalism to be considerably diverged from classical individualist anarchism, [I] also reject any blanket assertion that they can't be 'real anarchists'".[28]
References

Starhawk. "An Anarchist FAQ - Introduction | Kill Capitalism Before it Kills You!". Infoshop. Archived from the original on 23 October 2012. Retrieved 5 May 2010.
"A.1 What is anarchism?". Geocities. Archived from the original on 17 January 1999.
"A.3 What types of anarchists are there". "[W]e think social anarchism is more appropriate for modern society". Archived 6 July 2013 at the Wayback Machine
"G.4 Why do social anarchists reject individualist anarchism?" Archived 2013-05-21 at the Wayback Machine. "[I]ndividualist anarchists [...] a form of anarchism [...] with many flaws".
"An Anarchist FAQ - Introduction". Infoshop. Archived from the original on 23 October 2012. Retrieved 5 May 2010.
"An Anarchist FAQ - Introduction | Kill Capitalism Before it Kills You!". Infoshop. Archived from the original on 23 October 2012. Retrieved 5 May 2010.
Owens, Lynn; Palmer, L. Kendall (2003). "Making the News: Anarchist Counter-Public Relations on the World Wide Web". Critical Studies in Media Communication. 20 (4): 335–361. CiteSeerX 10.1.1.530.1176. doi:10.1080/0739318032000142007.
McKay, Iain, ed. (2008). An Anarchist FAQ. Stirling: AK Press. ISBN 978-1-902593-90-6. OCLC 182529204.
"An Anarchist FAQ - A.3 What types of anarchism are there?". Infoshop. Archived from the original on 6 July 2013. Retrieved 5 May 2010.
"A.1 What is anarchism?".
"G.4 Why do social anarchists reject individualist anarchism?".
"G.2 Why does individualist anarchism imply socialism?". Infoshop. Retrieved 5 May 2010.
"Replies to Some Errors and Distortions in Bryan Caplan's "Anarchist Theory FAQ" version 4.1.1". Infoshop. 5 January 2018. Retrieved 21 January 2020.
"Replies to Some Errors and Distortions in Bryan Caplan's "Anarchist Theory FAQ" version 5.2". Infoshop. 1 January 2018. Retrieved 20 January 2020.
Direct Action (44). p. 30.
"Anarchist Organization: an Oxymoron, or Not?". Infoshop. 6 February 2006. Retrieved 5 May 2010.
Workers Solidarity (62).
L'order moins le pouvoir: Histoire et actualité de l'anarchisme (in French).
Reagle, Joseph. "Why the Internet is Good - Community governance that works well". Berkman Klein Center. Retrieved 5 May 2010.
Shostak, Arthur (2003). Viable Uptopian Ideas. Armonk: M. E. Sharpe. ISBN 978-0-7656-1104-8.
Parker, Martin (2002). Utopia and Organization. Cambridge: Blackwell Pub. ISBN 978-1-4051-0072-4.
Hoffman, John (2006). Introduction to Political Ideologies. New York: Longman. ISBN 978-1-4058-2439-2.
"An Anarchist FAQ – Translations" Archived 2013-05-21 at the Wayback Machine (1 January 2018). Infoshop. Retrieved 21 February 2019.
Webmaster, Debian. "Debian - Details of package anarchism". Debian -- Packages. Retrieved 5 May 2010.
Friedman, David D. "Iceland Anarch FAQ2 reply". Retrieved 12 August 2007.
"An Anarchist FAQ after ten years". Infoshop. Archived from the original on 28 January 2015. Retrieved 5 May 2010.
"An Anarchist FAQ, David Friedman and Medieval Iceland". Archived 12 April 2013 at the Wayback Machine. Retrieved 27 July 2008.

    Carson, Kevin (July 2006). "Anarchist FAQ Update". Mutualist Blog: Free Market Anti-Capitalism. Blog Spot. Retrieved 20 January 2020.

External links

    An Anarchist FAQ
    An Anarchist FAQ blog
    An Anarchist FAQ after ten years (Archived 25 October 2009) by Iain McKay, written for the 10th anniversary of the FAQ's creation
    AAFAQ Debian package

    vte

Anarchism
Categories:

    Anarchist worksFAQAnarchism1995 works

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Español
    Italiano
    Polski

Edit links

    This page was last edited on 15 January 2021, at 20:22 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Anarchism

!! https://en.wikipedia.org/wiki/Anarchism

From Wikipedia, the free encyclopedia

"Anarchist" and "Anarchists" redirect here. For other uses, see Anarchists (disambiguation).
Part of the Politics series on
Anarchism
"Circle-A" anarchy symbol
Schools of thought

    TheoryPractice

People
Issues
History
Culture
Economics
By region
Lists
Related topics

    BlackFlagSymbol.svg Anarchism portal
    A coloured voting box.svg Politics portal

    vte

Part of the Politics series
Basic forms of government
Power source
Democracy
Oligarchy
Autocracy
Anarchism
Power ideology
Monarchy vs. republic
Authoritarian vs. libertarian
Global vs. local
Power structure
Unitary
Client state
Federalism
International relations
A coloured voting box.svg Politics portal

    vte

Anarchism is a political philosophy and movement that is sceptical of authority and rejects all involuntary, coercive forms of hierarchy. Anarchism calls for the abolition of the state, which it holds to be undesirable, unnecessary, and harmful. As a historically far-left movement, it is usually described alongside libertarian Marxism as the libertarian wing (libertarian socialism) of the socialist movement and has a strong historical association with anti-capitalism and socialism.

The history of anarchy goes back to prehistory, when humans arguably lived in anarchic societies long before the establishment of formal states, realms or empires. With the rise of organised hierarchical bodies, scepticism toward authority also rose, but it was not until the 19th century that a self-conscious political movement emerged. During the latter half of the 19th and the first decades of the 20th century, the anarchist movement flourished in most parts of the world and had a significant role in workers' struggles for emancipation. Various anarchist schools of thought formed during this period. Anarchists have taken part in several revolutions, most notably in the Spanish Civil War, whose end marked the end of the classical era of anarchism. In the last decades of the 20th and into the 21st century, the anarchist movement has been resurgent once more.

Anarchism employs a diversity of tactics in order to meet its ideal ends which can be broadly separated into revolutionary and evolutionary tactics. There is significant overlap between the two which are merely descriptive. Revolutionary tactics aim to bring down authority and state, having taken a violent turn in the past. Evolutionary tactics aim to prefigure what an anarchist society would be like. Anarchist thought, criticism and praxis have played a part in diverse areas of human society. Criticisms of anarchism include claims that it is internally inconsistent, violent, or utopian.
Contents

    1 Etymology, terminology and definition
    2 History
        2.1 Pre-modern era
        2.2 Modern era
        2.3 Post-war era
    3 Thought
        3.1 Classical
        3.2 Post-classical and contemporary
    4 Tactics
        4.1 Classical era tactics
        4.2 Revolutionary tactics
        4.3 Evolutionary tactics
    5 Key issues
        5.1 Gender, sexuality and free love
        5.2 Anarchism and education
        5.3 Anarchism and the state
        5.4 Anarchism and the arts
    6 Criticism
    7 See also
    8 References
        8.1 Citations
        8.2 Sources
    9 Further reading
    10 External links

Etymology, terminology and definition
Main article: Definition of anarchism and libertarianism
See also: Glossary of anarchism
Wilhelm Weitling, an example of a writer who added to anarchist theory without using the exact term

The etymological origin of anarchism is from the Ancient Greek anarkhia, meaning "without a ruler", composed of the prefix an- (i.e. "without") and the word arkhos (i.e. "leader" or "ruler"). The suffix -ism denotes the ideological current that favours anarchy.[1] Anarchism appears in English from 1642 as anarchisme and anarchy from 1539; early English usages emphasised a sense of disorder.[2] Various factions within the French Revolution labelled their opponents as anarchists, although few such accused shared many views with later anarchists. Many revolutionaries of the 19th century such as William Godwin (1756–1836) and Wilhelm Weitling (1808–1871) would contribute to the anarchist doctrines of the next generation, but they did not use anarchist or anarchism in describing themselves or their beliefs.[3]

The first political philosopher to call himself an anarchist (French: anarchiste) was Pierre-Joseph Proudhon (1809–1865), marking the formal birth of anarchism in the mid-19th century. Since the 1890s and beginning in France,[4] libertarianism has often been used as a synonym for anarchism[5] and its use as a synonym is still common outside the United States.[6] On the other hand, some use libertarianism to refer to individualistic free-market philosophy only, referring to free-market anarchism as libertarian anarchism.[7]

While the term libertarian has been largely synonymous with anarchism,[8] its meaning has more recently diluted with wider adoption from ideologically disparate groups,[9] including both the New Left and libertarian Marxists (who do not associate themselves with authoritarian socialists or a vanguard party) as well as extreme liberals (primarily concerned with civil liberties).[9] Additionally, some anarchists use libertarian socialist[10] to avoid anarchism's negative connotations and emphasise its connections with socialism.[9] Matthew S. Adams and Carl Levy write that anarchism is used to "describe the anti-authoritarian wing of the socialist movement."[11] Noam Chomsky describes anarchism, alongside libertarian Marxism, as "the libertarian wing of socialism."[12] Daniel Guérin wrote:

    [A]narchism is really a synonym for socialism. The anarchist is primarily a socialist whose aim is to abolish the exploitation of man by man. Anarchism is only one of the streams of socialist thought, that stream whose main components are concern for liberty and haste to abolish the State.[13]

While opposition to the state is central to anarchist thought, defining anarchism is not an easy task as there is a lot of discussion among scholars and anarchists on the matter and various currents perceive anarchism slightly differently.[14] Hence, it might be true to say that anarchism is a cluster of political philosophies opposing authority and hierarchical organisation (including capitalism, nationalism, the state and all associated institutions) in the conduct of all human relations in favour of a society based on decentralisation, freedom and voluntary association. However, this definition has the same shortcomings as the definition based on anti-authoritarianism (which is an a posteriori conclusion), anti-statism (anarchism is much more than that)[15] and etymology (which is simply a negation of a ruler).[16] Nonetheless, major elements of the definition of anarchism include the will for a non-coercive society, the rejection of the state apparatus, the belief that human nature allows humans to exist in or progress toward such a non-coercive society and a suggestion on how to act to pursue the ideal of anarchy.[17]

Herbert L. Osgood claimed that anarchism is "the extreme antithesis" of authoritarian communism and state socialism.[18] Peter Marshall states that "[i]n general anarchism is closer to socialism than liberalism. [...] Anarchism finds itself largely in the socialist camp, but it also has outriders in liberalism. It cannot be reduced to socialism, and is best seen as a separate and distinctive doctrine."[9] According to Jeremy Jennings, "[i]t is hard not to conclude that these ideas", referring to anarcho-capitalism, "are described as anarchist only on the basis of a misunderstanding of what anarchism is." Jennings adds that "anarchism does not stand for the untrammelled freedom of the individual (as the 'anarcho-capitalists' appear to believe) but, as we have already seen, for the extension of individuality and community."[19] Nicolas Walter wrote that "anarchism does derive from liberalism and socialism both historically and ideologically. [...] In a sense, anarchists always remain liberals and socialists, and whenever they reject what is good in either they betray anarchism itself. [...] We are liberals but more so, and socialists but more so."[20] Michael Newman includes anarchism as one of many socialist traditions, especially the more socialist-aligned tradition following Proudhon and Mikhail Bakunin.[21] Brian Morriss argues that it is "conceptually and historically misleading" to "create a dichotomy between socialism and anarchism."[22]
History
Main article: History of anarchism
Pre-modern era
Zeno of Citium (c. 334 – c. 262 BC), whose Republic inspired Peter Kropotkin[23]

During the prehistoric era of mankind, an established authority did not exist. It was after the creation of towns and cities that institutions of authority were established and anarchistic ideas espoused as a reaction.[24] The most notable precursors to anarchism in the ancient world were in China and Greece. In China, philosophical anarchism (i.e. the discussion on the legitimacy of the state) was delineated by Taoist philosophers Zhuang Zhou and Laozi.[25] Alongside Stoicism, Taoism has been said to have had "significant anticipations" of anarchism.[26]

Anarchic attitudes were also articulated by tragedians and philosophers in Greece. Aeschylus and Sophocles used the myth of Antigone to illustrate the conflict between rules set by the state and personal autonomy. Socrates questioned Athenian authorities constantly and insisted on the right of individual freedom of conscience. Cynics dismissed human law (nomos) and associated authorities while trying to live according to nature (physis). Stoics were supportive of a society based on unofficial and friendly relations among its citizens without the presence of a state.[27]

During the Middle Ages, there was no anarchistic activity except some ascetic religious movements in the Muslim world or in Christian Europe. This kind of tradition later gave birth to religious anarchism. In the Sasanian Empire, Mazdak called for an egalitarian society and the abolition of monarchy, only to be soon executed by Emperor Kavad I.[28]

In Basra, religious sects preached against the state. In Europe, various sects developed anti-state and libertarian tendencies. Libertarian ideas further emerged during the Renaissance with the spread of humanism, rationalism and reasoning through Europe. Novelists fictionalised ideal societies that were based on voluntarism rather than coercion. The Age of Enlightenment further pushed towards anarchism with the optimism for social progress.[29]
Modern era

During the French Revolution, partisan groups such as the Enragés and the sans-culottes saw a turning point in the fermentation of anti-state and federalist sentiments.[30] The first anarchist currents developed throughout the 18th century as William Godwin espoused philosophical anarchism in England, morally delegitimising the state, Max Stirner's thinking paved the way to individualism and Pierre-Joseph Proudhon's theory of mutualism found fertile soil in France.[31] By the late 1870s, various anarchist schools of thought had become well-defined and a wave of then unprecedented globalization occurred from 1880 to 1914.[32] This era of classical anarchism lasted until the end of the Spanish Civil War and is considered the golden age of anarchism.[31]
Mikhail Bakunin, who opposed the Marxist aim of dictatorship of the proletariat and allied himself with the federalists in the First International before his expulsion by the Marxists

Drawing from mutualism, Mikhail Bakunin founded collectivist anarchism and entered the International Workingmen's Association, a class worker union later known as the First International that formed in 1864 to unite diverse revolutionary currents. The International became a significant political force, with Karl Marx being a leading figure and a member of its General Council. Bakunin's faction (the Jura Federation) and Proudhon's followers (the mutualists) opposed state socialism, advocating political abstentionism and small property holdings.[33] After bitter disputes, the Bakuninists were expelled from the International by the Marxists at the 1872 Hague Congress.[34] Anarchists were treated similarly in the Second International, being ultimately expelled in 1896.[35] Bakunin famously predicted that if revolutionaries gained power by Marx's terms, they would end up the new tyrants of workers. In response to their expulsion from the First International, anarchists formed the St. Imier International. Under the influence of Peter Kropotkin, a Russian philosopher and scientist, anarcho-communism overlapped with collectivism.[36] Anarcho-communists, who drew inspiration from the 1871 Paris Commune, advocated for free federation and for the distribution of goods according to one's needs.[37]

At the turn of the century, anarchism had spread all over the world.[38] It was a notable feature of the international syndicalism movement.[39] In China, small groups of students imported the humanistic pro-science version of anarcho-communism.[40] Tokyo was a hotspot for rebellious youth from countries of the far east, travelling to the Japanese capital to study.[41] In Latin America, Argentina was a stronghold for anarcho-syndicalism, where it became the most prominent left-wing ideology.[42] During this time, a minority of anarchists adopted tactics of revolutionary political violence. This strategy became known as propaganda of the deed.[43] The dismemberment of the French socialist movement into many groups and the execution and exile of many Communards to penal colonies following the suppression of the Paris Commune favoured individualist political expression and acts.[44] Even though many anarchists distanced themselves from these terrorist acts, infamy came upon the movement and attempts were made to exclude them from American immigration, including the Immigration Act of 1903, also called the Anarchist Exclusion Act.[45] Illegalism was another strategy which some anarchists adopted during this period.[46]
Nestor Makhno with members of the anarchist Revolutionary Insurrectionary Army of Ukraine

Despite concerns, anarchists enthusiastically participated in the Russian Revolution in opposition to the White movement. However, they met harsh suppression after the Bolshevik government was stabilized. Several anarchists from Petrograd and Moscow fled to Ukraine,[47] notably leading to the Kronstadt rebellion and Nestor Makhno's struggle in the Free Territory. With the anarchists being crushed in Russia, two new antithetical currents emerged, namely platformism and synthesis anarchism. The former sought to create a coherent group that would push for revolution while the latter were against anything that would resemble a political party. Seeing the victories of the Bolsheviks in the October Revolution and the resulting Russian Civil War, many workers and activists turned to communist parties which grew at the expense of anarchism and other socialist movements. In France and the United States, members of major syndicalist movements such as the General Confederation of Labour and the Industrial Workers of the World left their organisations and joined the Communist International.[48]

In the Spanish Civil War of 1936, anarchists and syndicalists (CNT and FAI) once again allied themselves with various currents of leftists. A long tradition of Spanish anarchism led to anarchists playing a pivotal role in the war. In response to the army rebellion, an anarchist-inspired movement of peasants and workers, supported by armed militias, took control of Barcelona and of large areas of rural Spain, where they collectivised the land.[49] The Soviet Union provided some limited assistance at the beginning of the war, but the result was a bitter fight among communists and anarchists at a series of events named May Days as Joseph Stalin tried to seize control of the Republicans.[50]
Post-war era
Rojava's support efforts for workers to form cooperatives is exemplified in this sewing cooperative

At the end of World War II, the anarchist movement was severely weakened.[51] However, the 1960s witnessed a revival of anarchism, likely caused by a perceived failure of Marxism–Leninism and tensions built by the Cold War.[52] During this time, anarchism found a presence in other movements critical towards both capitalism and the state such as the anti-nuclear, environmental and peace movements, the counterculture of the 1960s and the New Left.[53] It also saw a transition from its previous revolutionary nature to provocative anti-capitalist reformism.[54] Anarchism became associated with punk subculture as exemplified by bands such as Crass and the Sex Pistols.[55] The established feminist tendencies of anarcha-feminism returned with vigour during the second wave of feminism.[56] Black anarchism began to take form at this time and influenced anarchism's move from a Eurocentric demographic.[57] This coincided with its failure to gain traction in Northern Europe and its unprecedented height in Latin America.[58]

Around the turn of the 21st century, anarchism grew in popularity and influence within anti-capitalist, anti-war and anti-globalisation movements.[59] Anarchists became known for their involvement in protests against the World Trade Organization (WTO), the Group of Eight and the World Economic Forum. During the protests, ad hoc leaderless anonymous cadres known as black blocs engaged in rioting, property destruction and violent confrontations with the police. Other organisational tactics pioneered in this time include affinity groups, security culture and the use of decentralised technologies such as the Internet. A significant event of this period was the confrontations at the 1999 Seattle WTO conference.[59] Anarchist ideas have been influential in the development of the Zapatistas in Mexico and the Democratic Federation of Northern Syria, more commonly known as Rojava, a de facto autonomous region in northern Syria.[60]
Thought
Main article: Anarchist schools of thought

Anarchist schools of thought have been generally grouped into two main historical traditions, social anarchism and individualist anarchism, owing to their different origins, values and evolution.[61] The individualist current emphasises negative liberty in opposing restraints upon the free individual while the social current emphasises positive liberty in aiming to achieve the free potential of society through equality and social ownership.[62] In a chronological sense, anarchism can be segmented by the classical currents of the late 19th century and the post-classical currents (anarcha-feminism, green anarchism and post-anarchism) developed thereafter.[63]

Beyond the specific factions of anarchist movements which constitute political anarchism lies philosophical anarchism which holds that the state lacks moral legitimacy, without necessarily accepting the imperative of revolution to eliminate it.[64] A component especially of individualist anarchism,[65] philosophical anarchism may tolerate the existence of a minimal state, but it argues that citizens have no moral obligation to obey government when it conflicts with individual autonomy.[66] Anarchism pays significant attention to moral arguments since ethics have a central role in anarchist philosophy.[67] Anarchism's emphasis on anti-capitalism, egalitarianism and for the extension of community and individuality sets it apart from anarcho-capitalism and other types of economic libertarianism.[68]

Anarchism is usually placed on the far-left of the political spectrum.[69] Much of its economics and legal philosophy reflect anti-authoritarian, anti-statist, libertarian and radical interpretations of left-wing and socialist politics[13] such as collectivism, communism, individualism, mutualism and syndicalism, among other libertarian socialist economic theories.[70] As anarchism does not offer a fixed body of doctrine from a single particular worldview,[71] many anarchist types and traditions exist and varieties of anarchy diverge widely.[72] One reaction against sectarianism within the anarchist milieu was anarchism without adjectives, a call for toleration and unity among anarchists first adopted by Fernando Tarrida del Mármol in 1889 in response to the bitter debates of anarchist theory at the time.[73] Belief in political nihilism has been espoused by anarchists.[74] Despite separation, the various anarchist schools of thought are not seen as distinct entities, but rather as tendencies that intermingle and are connected through a set of uniform principles such as individual and local autonomy, mutual aid, network organisation, communal democracy, justified authority and decentralisation.[75]
Classical
Pierre-Joseph Proudhon, the primary proponent of mutualism, who influenced many future individualist anarchist and social anarchist thinkers[76]

Inceptive currents among classical anarchist currents were mutualism and individualism. They were followed by the major currents of social anarchism (collectivist, communist and syndicalist). They differ on organisational and economic aspects of their ideal society.[77]

Mutualism is an 18th-century economic theory that was developed into anarchist theory by Pierre-Joseph Proudhon. Its aims include reciprocity, free association, voluntary contract, federation and monetary reform of both credit and currency that would be regulated by a bank of the people.[78] Mutualism has been retrospectively characterised as ideologically situated between individualist and collectivist forms of anarchism.[79] In What Is Property? (1840), Proudhon first characterised his goal as a "third form of society, the synthesis of communism and property."[80] Collectivist anarchism is a revolutionary socialist form of anarchism[81] commonly associated with Mikhail Bakunin.[82] Collectivist anarchists advocate collective ownership of the means of production which is theorised to be achieved through violent revolution[83] and that workers be paid according to time worked, rather than goods being distributed according to need as in communism. Collectivist anarchism arose alongside Marxism, but it rejected the dictatorship of the proletariat despite the stated Marxist goal of a collectivist stateless society.[84]

Anarcho-communism is a theory of anarchism that advocates a communist society with common ownership of the means of production,[85] direct democracy and a horizontal network of voluntary associations, workers' councils and worker cooperatives, with production and consumption based on the guiding principle "From each according to his ability, to each according to his need."[86] Anarcho-communism developed from radical socialist currents after the French Revolution,[87] but it was first formulated as such in the Italian section of the First International.[88] It was later expanded upon in the theoretical work of Peter Kropotkin,[89] whose specific style would go onto become the dominating view of anarchists by the late 19th century.[90] Anarcho-syndicalism is a branch of anarchism that views labour syndicates as a potential force for revolutionary social change, replacing capitalism and the state with a new society democratically self-managed by workers. The basic principles of anarcho-syndicalism are direct action, workers' solidarity and workers' self-management.[91]

Individualist anarchism is a set of several traditions of thought within the anarchist movement that emphasise the individual and their will over any kinds of external determinants.[92] Early influences on individualist forms of anarchism include William Godwin, Max Stirner and Henry David Thoreau. Through many countries, individualist anarchism attracted a small yet diverse following of Bohemian artists and intellectuals[93] as well as young anarchist outlaws in what became known as illegalism and individual reclamation.[94]
Post-classical and contemporary
Main article: Contemporary anarchism
Lawrence Jarach (left) and John Zerzan (right), two prominent contemporary anarchist authors, with Zerzan being a prominent voice within anarcho-primitivism and Jarach a noted advocate of post-left anarchy

Anarchist principles undergird contemporary radical social movements of the left. Interest in the anarchist movement developed alongside momentum in the anti-globalisation movement,[95] whose leading activist networks were anarchist in orientation.[96] As the movement shaped 21st century radicalism, wider embrace of anarchist principles signaled a revival of interest.[96] Anarchism has continued to generate many philosophies and movements, at times eclectic, drawing upon various sources and syncretic, combining disparate concepts to create new philosophical approaches.[97] The anti-capitalist tradition of classical anarchism has remained prominent within contemporary currents.[98]

Contemporary news coverage which emphasizes black bloc demonstrations has reinforced anarchism's historical association with chaos and violence. However, its publicity has also led more scholars in fields such as anthropology and history to engage with the anarchist movement, although contemporary anarchism favours actions over academic theory.[99] Various anarchist groups, tendencies and schools of thought exist today, making it difficult to describe the contemporary anarchist movement.[100] While theorists and activists have established "relatively stable constellations of anarchist principles", there is no consensus on which principles are core and commentators describe multiple "anarchisms" (rather than a singular "anarchism") in which common principles are shared between schools of anarchism while each group prioritizes those principles differently. Gender equality can be a common principle, although it ranks as a higher priority to anarcha-feminists than anarcho-communists.[101]

Anarchists are generally committed against coercive authority in all forms, namely "all centralized and hierarchical forms of government (e.g., monarchy, representative democracy, state socialism, etc.), economic class systems (e.g., capitalism, Bolshevism, feudalism, slavery, etc.), autocratic religions (e.g., fundamentalist Islam, Roman Catholicism, etc.), patriarchy, heterosexism, white supremacy, and imperialism."[102] However, anarchist schools disagree on the methods by which these forms should be opposed.[103] The principle of equal liberty is closer to anarchist political ethics in that it transcends both the liberal and socialist traditions. This entails that liberty and equality cannot be implemented within the state, resulting in the questioning of all forms of domination and hierarchy.[104]
Tactics

Anarchists' tactics take various forms, but in general, they serve two major goals, namely to first oppose the Establishment and secondly to promote anarchist ethics and reflect an anarchist vision of society, illustrating the unity of means and ends.[105] A broad categorisation can be made between aims to destroy oppressive states and institutions by revolutionary means on one hand and aims to change society through evolutionary means on the other.[106] Evolutionary tactics embrace nonviolence, reject violence and take a gradual approach to anarchist aims, although there is significant overlap between the two.[107]

Anarchist tactics have shifted during the course of the last century. Anarchists during the early 20th century focused more on strikes and militancy while contemporary anarchists use a broader array of approaches.[108]
Classical era tactics
The relationship between anarchism and violence is a controversial subject among anarchists as shown by anarchist Leon Czolgosz assassinating William McKinley

During the classical era, anarchists had a militant tendency. Not only did they confront state armed forces, as in Spain and Ukraine, but some of them also employed terrorism as propaganda of the deed. Assassination attempts were carried out against heads of state, some of which were successful. Anarchists also took part in revolutions.[109] Many anarchists, especially the Galleanists, believed that these attempts would be the impetus for a revolution against capitalism and the state.[110] Many of these attacks were done by individual assailants and the majority took place in the late 1870s, the early 1880s and the 1890s, with some still occurring in the early 1900s.[111] Their decrease in prevalence was the result of further judicial power and targeting and cataloging by state institutions.[112]

Anarchist perspectives towards violence have always been perplexing and controversial.[113] On one hand, anarcho-pacifists point out the unity of means and ends.[114] On the other hand, other anarchist groups advocate direct action, a tactic which can include acts of sabotage or even acts of terrorism. This attitude was quite prominent a century ago when seeing the state as a tyrant and some anarchists believing that they had every right to oppose its oppression by any means possible.[115] Emma Goldman and Errico Malatesta, who were proponents of limited use of violence, argued that violence is merely a reaction to state violence as a necessary evil.[116]

Anarchists took an active role in strike actions, although they tended to be antipathetic to formal syndicalism, seeing it as reformist. They saw it as a part of the movement which sought to overthrow the state and capitalism.[117] Anarchists also reinforced their propaganda within the arts, some of whom practiced naturism and nudism. Those anarchists also built communities which were based on friendship and were involved in the news media.[118]
Revolutionary tactics
Black bloc protesters parading anarcho-communism imagery such as the motto "No War but the Class War"

In the current era, Italian anarchist Alfredo Bonanno, a proponent of insurrectionary anarchism, has reinstated the debate on violence by rejecting the nonviolence tactic adopted since the late 19th century by Kropotkin and other prominent anarchists afterwards. Both Bonanno and the French group The Invisible Committee advocate for small, informal affiliation groups, where each member is responsible for their own actions but works together to bring down oppression utilizing sabotage and other violent means against state, capitalism and other enemies. Members of The Invisible Committee were arrested in 2008 on various charges, terrorism included.[119]

Overall, contemporary anarchists are much less violent and militant than their ideological ancestors. They mostly engage in confronting the police during demonstrations and riots, especially in countries such as Canada, Greece and Mexico. Militant black bloc protest groups are known for clashing with the police.[120] However, anarchists not only clash with state operators; they also engage in the struggle against fascists and racists, taking anti-fascist action and mobilizing to prevent hate rallies from happening.[121]
Evolutionary tactics

Anarchists commonly employ direct action. This can take the form of disrupting and protesting against unjust hierarchy, or the form of self-managing their lives through the creation of counter-institutions such as communes and non-hierarchical collectives.[106] Decision-making is often handled in an anti-authoritarian way, with everyone having equal say in each decision, an approach known as horizontalism.[122] Contemporary-era anarchists have been engaging with various grassroots movements that are more or less based on horizontalism, although not explicitly anarchist, respecting personal autonomy and participating in mass activism such as strikes and demonstrations. In contrast with the big-A anarchism of the classical era, the newly coined term small-a anarchism signals their tendency not to base their thoughts and actions on classical-era anarchism or to refer to classical anarchists such as Peter Kropotkin and Pierre-Joseph Proudhon to justify their opinions. Those anarchists would rather base their thought and praxis on their own experience which they will later theorize.[123]

The decision-making process of small anarchist affinity groups plays a significant tactical role.[124] Anarchists have employed various methods in order to build a rough consensus among members of their group without the need of a leader or a leading group. One way is for an individual from the group to play the role of facilitator to help achieve a consensus without taking part in the discussion themselves or promoting a specific point. Minorities usually accept rough consensus, except when they feel the proposal contradicts anarchist ethics, goals and values. Anarchists usually form small groups (5–20 individuals) to enhance autonomy and friendships among their members. These kinds of groups more often than not interconnect with each other, forming larger networks. Anarchists still support and participate in strikes, especially wildcat strikes as these are leaderless strikes not organised centrally by a syndicate.[125]

As in the past, newspapers and journals are used, but anarchists have gone online in the World Wide Web to spread their message. However, anarchists have found it easier to create websites because of distributional and other difficulties, hosting electronic libraries and other portals.[126] Anarchists were also involved in developing various software that are available for free. The way these hacktivists work to develop and distribute resembles the anarchist ideals, especially when it comes to preserving users' privacy from state surveillance.[127]

Anarchists organize themselves to squat and reclaim public spaces. During important events such as protests and when spaces are being occupied, they are often called Temporary Autonomous Zones (TAZ), spaces where art, poetry and surrealism are blended to display the anarchist ideal.[128] As seen by anarchists, squatting is a way to regain urban space from the capitalist market, serving pragmatical needs and also being an exemplary direct action.[129] Acquiring space enables anarchists to experiment with their ideas and build social bonds.[130] Adding up these tactics while having in mind that not all anarchists share the same attitudes towards them, along with various forms of protesting at highly symbolic events, make up a carnivalesque atmosphere that is part of contemporary anarchist vividity.[131]
Key issues
Main article: Issues in anarchism

As anarchism is a philosophy that embodies many diverse attitudes, tendencies and schools of thought; disagreement over questions of values, ideology and tactics is common. Its diversity has led to widely different uses of identical terms among different anarchist traditions which has created a number of definitional concerns in anarchist theory. The compatibility of capitalism,[132] nationalism and religion with anarchism is widely disputed. Similarly, anarchism enjoys complex relationships with ideologies such as communism, collectivism, Marxism and trade unionism. Anarchists may be motivated by humanism, divine authority, enlightened self-interest, veganism, or any number of alternative ethical doctrines. Phenomena such as civilisation, technology (e.g. within anarcho-primitivism) and the democratic process may be sharply criticised within some anarchist tendencies and simultaneously lauded in others.[133]
Gender, sexuality and free love
See also: Anarchism and issues related to love and sex
Émile Armand, a French individualist anarchist who propounded the virtues of free love in the Parisian anarchist milieu of the early 20th century

As gender and sexuality carry along them dynamics of hierarchy, anarchism is obliged to address, analyse and oppose the suppression of one's autonomy because of the dynamics that gender roles traditionally impose.[134]
Collection of anarcha-feminist protests, symbols and flags

Sexuality was not often discussed by classical anarchists, but the few that did felt that an anarchist society would lead to sexuality naturally developing.[135] However, sexual violence was a concern for anarchists such as Benjamin Tucker, who opposed age of consent laws, believing they would benefit predatory men.[136] A historical current that arose and flourished during 1890 and 1920 within anarchism was free love. In contemporary anarchism, this current survives as a tendency to support polyamory and queer anarchism.[137] Free love advocates were against marriage, which they saw as a way of men imposing authority over women, largely because marriage law greatly favoured the power of men. The notion of free love was much broader and included a critique of the established order that limited women's sexual freedom and pleasure.[138] Those free love movements contributed to the establishment of communal houses, where large groups of travelers, anarchists and other activists slept in beds together.[139] Free love had roots both in Europe and the United States. However, some anarchists struggled with the jealousy that arose from free love.[140] Anarchist feminists were advocates of free love, against marriage, pro-choice (utilising a contemporary term) and had a similar agenda. Anarchist and non-anarchist feminists differed on suffrage, but they were nonetheless supportive of one another.[141]

During the second half of the 20th century, anarchism intermingled with the second wave of feminism, radicalising some currents of the feminist movement and being influenced as well. By the latest decades of the 20th century, anarchists and feminists were advocating for the rights and autonomy of women, gays, queers and other marginalised groups, with some feminist thinkers suggesting a fusion of the two currents.[142] With the third wave of feminism, sexual identity and compulsory heterosexuality became a subject of study for anarchists, yielding a post-structuralist critique of sexual normality.[143] However, some anarchists distanced themselves from this line of thinking, suggesting that it leaned towards an individualism that was dropping the cause of social liberation.[144]
Anarchism and education
Main article: Anarchism and education
Anarchist vs. statist perspectives on education
Ruth Kinna (2019)[145] 	Anarchist education 	State education
Concept 	Education as self-mastery 	Education as service
Management 	Community based 	State run
Methods 	Practice-based learning 	Vocational training
Aims 	Being a critical member of society 	Being a productive member of society

The interest of anarchists in education stretches back to the first emergence of classical anarchism. Anarchists consider proper education, one which sets the foundations of the future autonomy of the individual and the society, to be an act of mutual aid.[146] Anarchist writers such as William Godwin (Political Justice) and Max Stirner ("The False Principle of Our Education") attacked both state education and private education as another means by which the ruling class replicate their privileges.[147]

In 1901, Catalan anarchist and free thinker Francisco Ferrer established the Escuela Moderna in Barcelona as an opposition to the established education system which was dictated largely by the Catholic Church.[148] Ferrer's approach was secular, rejecting both state and church involvement in the educational process whilst giving pupils large amounts of autonomy in planning their work and attendance. Ferrer aimed to educate the working class and explicitly sought to foster class consciousness among students. The school closed after constant harassment by the state and Ferrer was later arrested. Nonetheless, his ideas formed the inspiration for a series of modern schools around the world.[149] Christian anarchist Leo Tolstoy, who published the essay Education and Culture, also established a similar school with its founding principle being that "for education to be effective it had to be free."[150] In a similar token, A. S. Neill founded what became the Summerhill School in 1921, also declaring being free from coercion.[151]

Anarchist education is based largely on the idea that a child's right to develop freely and without manipulation ought to be respected and that rationality will lead children to morally good conclusions. However, there has been little consensus among anarchist figures as to what constitutes manipulation. Ferrer believed that moral indoctrination was necessary and explicitly taught pupils that equality, liberty and social justice were not possible under capitalism, along with other critiques of government and nationalism.[152]

Late 20th century and contemporary anarchist writers (Colin Ward, Herbert Read and Paul Goodman) intensified and expanded the anarchist critique of state education, largely focusing on the need for a system that focuses on children's creativity rather than on their ability to attain a career or participate in consumerism as part of a consumer society.[153] Contemporary anarchists such as Ward have further argued that state education serves to perpetuate socioeconomic inequality.[154]

While few anarchist education institutions have survived to the modern-day, major tenets of anarchist schools, among them respect for child autonomy and relying on reasoning rather than indoctrination as a teaching method, have spread among mainstream educational institutions. Judith Suissa names three schools as explicitly anarchists schools, namely the Free Skool Santa Cruz in the United States which is part of a wider American-Canadian network of schools, the Self-Managed Learning College in Brighton, England and the Paideia School in Spain.[155]
Anarchism and the state

Objection to the state and its institutions is a sine qua non of anarchism.[156] Anarchists consider the state as a tool of domination and believe it to be illegitimate regardless of its political tendencies. Instead of people being able to control the aspects of their life, major decisions are taken by a small elite. Authority ultimately rests solely on power, regardless of whether that power is open or transparent, as it still has the ability to coerce people. Another anarchist argument against states is that the people constituting a government, even the most altruistic among officials, will unavoidably seek to gain more power, leading to corruption. Anarchists consider the idea that the state is the collective will of the people to be an unachievable fiction due to the fact that the ruling class is distinct from the rest of society.[157]

Specific anarchist attitudes towards the state vary. Robert Paul Wolff believed that the tension between authority and autonomy would mean the state could never be legitimate. Bakunin saw the state as meaning "coercion, domination by means of coercion, camouflaged if possible but unceremonious and overt if need be." A. John Simmons and Leslie Green, who leaned toward philosophical anarchism, believed that the state could be legitimate if it is governed by consensus, although they saw this as highly unlikely.[158] Beliefs on how to abolish the state also differ.[159]
Anarchism and the arts
Main article: Anarchism and the arts
Les chataigniers a Osny (1888) by anarchist painter Camille Pissarro, an example of blending anarchism and art

The connection between anarchism and art was quite profound during the classical era of anarchism, especially among artistic currents that were developing during that era such as futurists, surrealists and others.[160] In literature, anarchism was mostly associated with the New Apocalyptics and the neo-romanticism movement.[161] In music, anarchism has been associated with music scenes such as punk.[162] Anarchists such as Leo Tolstoy and Herbert Read argued that the border between the artist and the non-artist, what separates art from a daily act, is a construct produced by the alienation caused by capitalism and it prevents humans from living a joyful life.[163]

Other anarchists advocated for or used art as a means to achieve anarchist ends.[164] In his book Breaking the Spell: A History of Anarchist Filmmakers, Videotape Guerrillas, and Digital Ninjas, Chris Robé claims that "anarchist-inflected practices have increasingly structured movement-based video activism."[165] Throughout the 20th century, many prominent anarchists (Peter Kropotkin, Emma Goldman, Gustav Landauer and Camillo Berneri) and publications such as Anarchy wrote about matters pertaining to the arts.[166]

Three overlapping properties made art useful to anarchists. It could depict a critique of existing society and hierarchies, serve as a prefigurative tool to reflect the anarchist ideal society and even turn into a means of direct action such as in protests. As it appeals to both emotion and reason, art could appeal to the whole human and have a powerful effect.[167] The 19th-century neo-impressionist movement had an ecological aesthetic and offered an example of an anarchist perception of the road towards socialism.[168] In Les chataigniers a Osny by anarchist painter Camille Pissarro, the blending of aesthetic and social harmony is prefiguring an ideal anarchistic agrarian community.[169]
Criticism
Bertrand Russell argued that anarchism was unable to provide all the services that government does

The most common critique of anarchism is that humans cannot self-govern and so a state is necessary for human survival.[170] Philosopher Bertrand Russell supported this critique, stating that "[p]eace and war, tariffs, regulations of sanitary conditions and the sale of noxious drugs, the preservation of a just system of distribution: these, among others, are functions which could hardly be performed in a community in which there was no central government."[170] Another common criticism of anarchism is that it fits a world of isolation in which only the small enough entities can be self-governing. Colin Ward responds that major anarchist thinkers advocated federalism.[171]

Philosophy lecturer Andrew G. Fiala also believed that humans could not self-govern and included it in his list of arguments against anarchism. Fiala's other critiques were that anarchism is innately related to violence and destruction, not only in the pragmatic world, i.e. at protests, but in the world of ethics as well. Secondly, anarchism is evaluated as unfeasible or utopian since the state can not be defeated practically. This line of arguments most often calls for political action within the system to reform it. The third argument is that anarchism is self-contradictory. While it advocates for no-one to archiei, if accepted by the many, then anarchism would turn into the ruling political theory. In this line of criticism also comes the self-contradiction that anarchism calls for collective action whilst endorsing the autonomy of the individual, hence no collective action can be taken. Lastly, Fiala mentions a critique towards philosophical anarchism of being ineffective (all talk and thoughts) and in the meantime capitalism and bourgeois class remains strong.[172]

Philosophical anarchism has met the criticism of members of academia following the release of pro-anarchist books such as A. John Simmons' Moral Principles and Political Obligations.[173] Law professor William A. Edmundson authored an essay arguing against three major philosophical anarchist principles which he finds fallacious. Edmundson claims that while the individual does not owe the state a duty of obedience, this does not imply that anarchism is the inevitable conclusion and the state is still morally legitimate.[174] In The Problem of Political Authority, Michael Huemer defends philosophical anarchism,[175] claiming that "political authority is a moral illusion."[176]

Another criticism is that anarchism defies and fails to understand the biological inclination to authority as first articulated in an 1886 article for the North American Review by Frances L. Ferguson.[177] Joseph Raz argues that the acceptance of authority implies the belief that following their instructions will afford more success.[178] Raz believes that this argument is true in following both authorities' successful and mistaken instruction.[179] Anarchists reject this criticism because challenging or disobeying authority does not entail the disappearance of its advantages by acknowledging authority such as doctors or lawyers as reliable, nor does it involve a complete surrender of independent judgment.[180] Anarchist perception of human nature, rejection of the state and commitment to social revolution has been criticised by academics as naive, overly simplistic and unrealistic, respectively.[181] Classical anarchism has been criticized for relying too heavily on the belief that the abolition of the state will lead to human cooperation prospering.[135]

Friedrich Engels, considered to be one of the principal founders of Marxism, criticized anti-authoritarianism as inherently counter-revolutionary.[182] Academic John Molyneux writes in his book Anarchism: A Marxist Criticism that "anarchism cannot win", believing that it lacks the ability to properly implement its ideas.[183] The Marxist criticism of anarchism is that it has a utopian character because all individuals should have anarchist views and values. According to the Marxist view, that a social idea would follow directly from this human ideal and out of the free will of every individual formed its essence. Marxists argue that this contradiction was responsible for their inability to act. In the anarchist vision, the conflict between liberty and equality was resolved through coexistence and intertwining.[184]
See also

    flagAnarchism portal Libertarianism portal

    Anarchism by country
    Governance without government
    List of anarchist political ideologies
    List of books about anarchism

References
Citations

Bates 2017, p. 128; Long 2013, p. 217.
Merriam-Webster 2019, "Anarchism"; Oxford English Dictionary 2005, "Anarchism"; Sylvan 2007, p. 260.
Joll 1964, pp. 27–37.
Nettlau 1996, p. 162.
Guérin 1970, "The Basic Ideas of Anarchism".
Ward 2004, p. 62; Goodway 2006, p. 4; Skirda 2002, p. 183; Fernández 2009, p. 9.
Morris 2002, p. 61.
Marshall 1992, p. 641; Cohn 2009, p. 6.
Marshall 1992, p. 641.
Marshall 1992, p. 641; Chomsky 2005, p. 123; Cohn 2009, p. 6; Adams & Levy 2018, p. 104.
Adams & Levy 2018, p. 104.
Chomsky 2005, p. 123.
Guérin 1970, p. 12.
Long 2013, p. 217.
McLaughlin 2007, p. 166; Jun 2009, p. 507; Franks 2013, pp. 386–388.
McLaughlin 2007, pp. 25–29; Long 2013, pp. 217.
McLaughlin 2007, pp. 25–26.
Osgood 1889, p. 1.
Jennings 1999, p. 147.
Walter 2002, p. 44.
Newman 2005, p. 15.
Morriss 2015, p. 64.
Marshall 1993, p. 70.
Graham 2005, pp. xi–xiv.
Coutinho 2016; Marshall 1993, p. 54.
Sylvan 2007, p. 257.
Marshall 1993, pp. 4, 66–73.
Marshall 1993, p. 86.
Adams 2014, pp. 33–63.
Marshall 1993, p. 4.
Marshall 1993, pp. 4–5.
Levy 2011, pp. 10–15.
Dodson 2002, p. 312; Thomas 1985, p. 187; Chaliand & Blin 2007, p. 116.
Graham 2019, pp. 334–336; Marshall 1993, p. 24.
Levy 2011, p. 12.
Marshall 1993, p. 5.
Graham 2005, p. xii.
Moya 2015, p. 327.
Levy 2011, p. 16.
Marshall 1993, pp. 519–521.
Dirlik 1991, p. 133; Ramnath 2019, pp. 681–682.
Levy 2011, p. 23; Laursen 2019, p. 157; Marshall 1993, pp. 504–508.
Marshall 1993, pp. 633–636.
Anderson 2004.
Marshall 1993, pp. 633–636; Lutz & Ulmschneider 2019, p. 46.
Bantman 2019, p. 374.
Avrich 2006, p. 204.
Nomad 1966, p. 88.
Bolloten 1984, p. 1107.
Marshall 1993, pp. xi, 466.
Marshall 1993, p. xi.
Marshall 1993, p. 539.
Marshall 1993, pp. xi, 539.
Levy 2011, pp. 5.
Marshall 1993, pp. 493–494.
Marshall 1993, pp. 556–557.
Williams 2015, p. 680.
Harmon 2011, p. 70.
Rupert 2006, p. 66.
Ramnath 2019, p. 691.
McLean & McMillan 2003, "Anarchism"; Ostergaard 2003, p. 14, "Anarchism".
Harrison & Boyd 2003, p. 251.
Adams & Levy 2019, p. 9.
Egoumenides 2014, p. 2.
Ostergaard 2003, p. 12; Gabardi 1986, pp. 300–302.
Klosko 2005, p. 4.
Franks 2019, p. 549.
Marshall 1992, pp. 564–565; Jennings 1993, p. 143; Gay & Gay 1999, p. 15; Morriss 2008, p. 13; Johnson 2008, p. 169; Franks 2013, pp. 393–394.
Brooks 1994, p. xi; Kahn 2000; Moynihan 2007.
Guérin 1970, p. 35, "Critique of authoritarian socialism".
Marshall 1993, pp. 14–17.
Sylvan 2007, p. 262.
Avrich 1996, p. 6.
Walter 2002, p. 52.
Marshall 1993, p. 1–6; Angelbeck & Grier 2012, p. 551.
Wilbur 2019, p. 216–218.
Adams & Levy 2019, p. 2.
Wilbur 2019, pp. 213–218.
Avrich 1996, p. 6; Miller 1991, p. 11.
Pierson 2013, p. 187.
Morris 1993, p. 76.
Shannon 2019, p. 101.
Avrich 1996, pp. 3–4.
Heywood 2017, pp. 146–147; Bakunin 1990.
Mayne 1999, p. 131.
Marshall 1993, p. 327; Turcato 2019, pp. 237–323.
Graham 2005.
Pernicone 2009, pp. 111–113.
Turcato 2019, pp. 239–244.
Levy 2011, pp. 6.
Van der Walt 2019, p. 249.
Ryley 2019, p. 225.
Marshall 1993, p. 440.
Imrie 1994; Parry 1987, p. 15.
Evren 2011, p. 1.
Evren 2011, p. 2.
Perlin 1979.
Williams 2018, p. 4.
Williams 2010, p. 110; Evren 2011, p. 1; Angelbeck & Grier 2012, p. 549.
Franks 2013, pp. 385–386.
Franks 2013, p. 386.
Jun 2009, pp. 507–508.
Jun 2009, p. 507.
Egoumenides 2014, p. 91.
Williams 2019, pp. 107–108.
Williams 2018, pp. 4–5.
Kinna 2019, p. 125.
Williams 2019, p. 112.
Williams 2019, pp. 112–113.
Norris 2020, pp. 7-8.
Levy 2011, p. 13; Nesser 2012, p. 62.
Harmon 2011, p. 55.
Carter 1978, p. 320.
Fiala 2017.
Kinna 2019, pp. 116–117.
Carter 1978, pp. 320–325.
Williams 2019, p. 113.
Williams 2019, p. 114.
Kinna 2019, pp. 134–135.
Williams 2019, p. 115.
Williams 2019, p. 117.
Williams 2019, pp. 109–117.
Kinna 2019, pp. 145–149.
Williams 2019, pp. 109, 119.
Williams 2019, p. 119–121.
Williams 2019, pp. 118–119.
Williams 2019, pp. 120–121.
Kinna 2019, p. 139; Mattern 2019, p. 596; Williams 2018, pp. 5–6.
Kinna 2012, p. 250; Williams 2019, p. 119.
Williams 2019, p. 122.
Morland 2004, p. 37–38.
Marshall 1993, p. 565; Honderich 1995, p. 31; Meltzer 2000, p. 50; Goodway 2006, p. 4; Newman 2010, p. 53.
De George 2005, pp. 31–32.
Nicholas 2019, p. 603.
Lucy 2020, p. 162.
Lucy 2020, p. 178.
Nicholas 2019, p. 611; Jeppesen & Nazar 2012, pp. 175–176.
Jeppesen & Nazar 2012, pp. 175–176.
Jeppesen & Nazar 2012, p. 177.
Jeppesen & Nazar 2012, pp. 175–177.
Kinna2019, pp. 166–167.
Nicholas 2019, pp. 609–611.
Nicholas 2019, pp. 610–611.
Nicholas 2019, pp. 616–617.
Kinna 2019, p. 97.
Kinna 2019, pp. 83–85.
Suissa 2019, pp. 514, 521; Kinna 2019, pp. 83–86; Marshall 1993, p. 222.
Suissa 2019, pp. 511–512.
Suissa 2019, pp. 511–514.
Suissa 2019, pp. 517–518.
Suissa 2019, pp. 518–519.
Avrich 1980, pp. 3–33; Suissa 2019, pp. 519–522.
Kinna 2019, pp. 89–96.
Ward 1973, pp. 39–48.
Suissa 2019, pp. 523–526.
Carter 1971, p. 14; Jun 2019, pp. 29–30.
Jun 2019, pp. 32–38.
Wendt 2020, p. 2; Ashwood 2018, p. 727.
Ashwood 2018, p. 735.
Mattern 2019, p. 592.
Gifford 2019, p. 577.
AllMusic.
Mattern 2019, pp. 592–593.
Mattern 2019, p. 593.
Robé 2017, p. 44.
Miller et al. 2019, p. 1.
Mattern 2019, pp. 593–596.
Antliff 1998, p. 78.
Antliff 1998, p. 99.
Peterson 1987, p. 238.
Ward 2004, p. 78.
Fiala 2017, "4. Objections and Replies".
Klosko 1999, p. 536.
Klosko 1999, p. 536; Kristjánsson 2000, p. 896.
Dagger 2018, p. 35.
Rogers 2020.
Ferguson 1886.
Gans 1992, p. 37.
Gans 1992, p. 38.
Gans 1992, pp. 34, 38.
Brinn 2020, p. 206.
Robert C. Tucker, ed. (1978). The Marx-Engels reader (Second ed.). New York. ISBN 0-393-05684-8. OCLC 3415145.
Dodds 2011.

    Baár et al. 2016, p. 488.

Sources
Primary sources

    Bakunin, Mikhail (1990) [1873]. Shatz, Marshall (ed.). Statism and Anarchy. Cambridge Texts in the History of Political Thought. Translated by Shatz, Marshall. Cambridge, England: Cambridge University Press. doi:10.1017/CBO9781139168083. ISBN 978-0-521-36182-8. LCCN 89077393. OCLC 20826465.

Secondary sources

    Adams, Matthew S. (14 January 2014). "The Possibilities of Anarchist History: Rethinking the Canon and Writing History". Anarchist Developments in Cultural Studies. 2013.1: Blasting the Canon: 33–63. Retrieved 17 December 2019 – via University of Victoria Libraries.
    Adams, Matthew S.; Levy, Carl, eds. (2018). The Palgrave Handbook of Anarchism. Palgrave Macmillan. ISBN 978-3-319-75619-6.
    Adams, Matthew S.; Levy, Carl (2019). "Introduction". In Adams, Matthew S.; Levy, Carl (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. pp. 1–23. ISBN 978-3-319-75620-2.
    Angelbeck, Bill; Grier, Colin (2012). "Anarchism and the Archaeology of Anarchic Societies: Resistance to Centralization in the Coast Salish Region of the Pacific Northwest Coast". Current Anthropology. 53 (5): 547–587. doi:10.1086/667621.
    Antliff, Mark (1998). "Cubism, Futurism, Anarchism: The 'Aestheticism' of the "Action d'art" Group, 1906–1920". Oxford Art Journal. 21 (2): 101–120. doi:10.1093/oxartj/21.2.99. JSTOR 1360616.
    Anderson, Benedict (2004). "In the World-Shadow of Bismarck and Nobel". New Left Review. 2 (28): 85–129. Archived from the original on 19 December 2015. Retrieved 7 January 2016.
    Ashwood, Loka (2018). "Rural Conservatism or Anarchism? The Pro‐state, Stateless, and Anti‐state Positions". Rural Sociology. 83 (4): 717–748. doi:10.1111/ruso.12226.
    Avrich, Paul (1996). Anarchist Voices: An Oral History of Anarchism in America. Princeton University Press. ISBN 978-0-691-04494-1.
    Avrich, Paul (2006). The Russian Anarchists. Stirling: AK Press. ISBN 978-1-904859-48-2.
    Avrich, Paul (1980). The Modern School Movement: Anarchism and Education in the United States. Princeton University Press. pp. 3–33. ISBN 978-1-4008-5318-2. OCLC 489692159.
    Baár, Monika; Falina, Maria; Janowski, Maciej; Kopeček, Michal; Trencsényi, Balázs Trencsényi (2016). A History of Modern Political Thought in East Central Europe: Negotiating Modernity in the 'Long Nineteenth Century'. I. Oxford: Oxford University Press. ISBN 978-0-19-105695-6.
    Bantman, Constance (2019). "The Era of Propaganda by the Deed". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. pp. 371–388. ISBN 978-3-319-75620-2.
    Bates, David (2017). "Anarchism". In Paul Wetherly (ed.). Political Ideologies. Oxford University Press. ISBN 978-0-19-872785-9.
    Bernstein, David Eliot (2020). "The Right to Armed Self-Defense in the Light of Law Enforcement Abdication". Liberty & Law Center. George Mason University (20–23): 1–42.
    Bolloten, Burnett (1984). The Spanish Civil War: Revolution and Counterrevolution. University of North Carolina Press. ISBN 978-0-8078-1906-7.
    Brinn, Gearóid (2020). "Smashing the State Gently: Radical Realism and Realist Anarchism". European Journal of Political Theory. 19 (2): 206–227. doi:10.1177/1474885119865975. S2CID 202278143.
    Brooks, Frank H. (1994). The Individualist Anarchists: An Anthology of Liberty (1881–1908). Transaction Publishers. ISBN 978-1-56000-132-4.
    Carter, April (1971). The Political Theory of Anarchism. Routledge. ISBN 978-0-415-55593-7.
    Carter, April (1978). "Anarchism and violence". Nomos. American Society for Political and Legal Philosophy. 19: 320–340. JSTOR 24219053.
    Chaliand, Gerard; Blin, Arnaud, eds. (2007). The History of Terrorism: From Antiquity to Al-Quaeda. Berkeley; Los Angeles; London: University of California Press. ISBN 978-0-520-24709-3. OCLC 634891265.
    Chomsky, Noam (2005). Pateman, Barry (ed.). Chomsky on Anarchism. Oakland: AK Press. ISBN 978-1-904859-26-0.
    Cohn, Jesse (2009). "Anarchism". In Ness, Immanuel (ed.). The International Encyclopedia of Revolution and Protest. Oxford: John Wiley & Sons. pp. 1–11. doi:10.1002/9781405198073.wbierp0039. ISBN 978-1-4051-9807-3.
    Dagger, Tristan J. (2018). Playing Fair: Political Obligation and the Problems of Punishment. Oxford: Oxford University Press. ISBN 978-0-19-938883-7.
    Dirlik, Arif (1991). Anarchism in the Chinese Revolution. Berkeley, CA: University of California Press. ISBN 978-0-520-07297-8.
    Dodds, Jonathan (October 2011). "Anarchism: A Marxist Criticism". Socialist Review. Retrieved 31 July 2020.
    Dodson, Edward (2002). The Discovery of First Principles. 2. Authorhouse. ISBN 978-0-595-24912-1.
    Egoumenides, Magda (2014). Philosophical Anarchism and Political Obligation. New York: Bloomsbury Publishing USA. ISBN 978-1-4411-2445-6.
    Evren, Süreyyya (2011). "How New Anarchism Changed the World (of Opposition) after Seattle and Gave Birth to Post-Anarchism". In Rousselle, Duane; Evren, Süreyyya (eds.). Post-Anarchism: A Reader. Pluto Press. pp. 1–19. ISBN 978-0-7453-3086-0.
    Ferguson, Francis L. (August 1886). "The Mistakes of Anarchism". The North American Review. University of Northern Iowa. 143 (357): 204–206. ISSN 0029-2397. JSTOR 25101094.
    Fernández, Frank (2009) [2001]. Cuban Anarchism: The History of A Movement. Sharp Press.
    Franks, Benjamin (August 2013). Freeden, Michael; Stears, Marc (eds.). "Anarchism". The Oxford Handbook of Political Ideologies. Oxford University Press: 385–404. doi:10.1093/oxfordhb/9780199585977.013.0001.
    Franks, Benjamin (2019). "Anarchism and Ethics". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. pp. 549–570. ISBN 978-3-319-75620-2.
    Gabardi, Wayne (1986). "Anarchism. By David Miller. (London: J. M. Dent and Sons, 1984. Pp. 216. £10.95.)". American Political Science Review. 80 (1): 300–302. doi:10.2307/1957102. JSTOR 446800.
    Gans, Chaim (1992). Philosophical Anarchism and Political Disobedience (reprint ed.). Cambridge: Cambridge University Press. ISBN 978-0-521-41450-0.
    Gay, Kathlyn; Gay, Martin (1999). Encyclopedia of Political Anarchy. ABC-CLIO. ISBN 978-0-87436-982-3.
    Gifford, James (2019). "Literature and Anarchism". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. ISBN 978-3-319-75620-2.
    Goodway, David (2006). Anarchist Seeds Beneath the Snow. Liverpool Press. ISBN 978-1-84631-025-6.
    Graham, Robert (2005). Anarchism: a Documentary History of Libertarian Ideas: from Anarchy to Anarchism. Montréal: Black Rose Books. ISBN 978-1-55164-250-5. Archived from the original on 30 November 2010. Retrieved 5 March 2011.
    Graham, Robert (2019). "Anarchism and the First International". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer. pp. 325–342. ISBN 978-3-319-75620-2.
    Guérin, Daniel (1970). Anarchism: From Theory to Practice. Monthly Review Press. ISBN 978-0-85345-128-0.
    Harrison, Kevin; Boyd, Tony (5 December 2003). Understanding Political Ideas and Movements. Manchester University Press. ISBN 978-0-7190-6151-6.
    Harmon, Christopher C. (2011). "How Terrorist Groups End: Studies of the Twentieth Century". Connections. 10 (2): 51–104. JSTOR 26310649.
    Heywood, Andrew (2017). Political Ideologies: An Introduction (6th ed.). Macmillan International Higher Education. ISBN 978-1-137-60604-4.
    Honderich, Ted (1995). The Oxford Companion to Philosophy. Oxford University Press. ISBN 978-0-19-866132-0.
    Imrie, Doug (1994). "The Illegalists". Anarchy: A Journal of Desire Armed. Archived from the original on 8 September 2015. Retrieved 9 December 2010.
    Jennings, Jeremy (1993). "Anarchism". In Eatwell, Roger; Wright, Anthony (eds.). Contemporary Political Ideologies. London: Pinter. pp. 127–146. ISBN 978-0-86187-096-7.
    Jennings, Jeremy (1999). "Anarchism". In Eatwell, Roger; Wright, Anthony (eds.). Contemporary Political Ideologies (reprinted, 2nd ed.). London: A & C Black. ISBN 978-0-8264-5173-6.
    Jeppesen, Sandra; Nazar, Holly (28 June 2012). "Genders and Sexualities in Anarchist Movements". In Ruth Kinna (ed.). The Bloomsbury Companion to Anarchism. Bloomsbury Publishing. ISBN 978-1-4411-4270-2.
    Johnson, Charles (2008). "Liberty, Equality, Solidarity Toward a Dialectical Anarchism". In Long, Roderick T.; Machan, Tibor R. (eds.). Anarchism/Minarchism: Is a Government Part of a Free Country?. Ashgate. pp. 155–188. ISBN 978-0-7546-6066-8.
    Joll, James (1964). The Anarchists. Harvard University Press. ISBN 978-0-674-03642-0.
    Jun, Nathan (September 2009). "Anarchist Philosophy and Working Class Struggle: A Brief History and Commentary". WorkingUSA. 12 (3): 505–519. doi:10.1111/j.1743-4580.2009.00251.x. ISSN 1089-7011.
    Jun, Nathan (2019). "The State". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. pp. 27–47. ISBN 978-3-319-75620-2.
    Kahn, Joseph (2000). "Anarchism, the Creed That Won't Stay Dead; The Spread of World Capitalism Resurrects a Long-Dormant Movement". The New York Times (5 August).
    Kinna, Ruth (2012). The Bloomsbury Companion to Anarchism. Bloomsbury Academic. ISBN 978-1-62892-430-5.
    Kinna, Ruth (2019). The Government of No One, The Theory and Practice of Anarchism. Penguin Random House. ISBN 978-0-241-39655-1.
    Klosko, George (1999). "More than Obligation – William A. Edmundson: Three Anarchical Fallacies: An Essay on Political Authority". The Review of Politics. 61 (3): 536–538. doi:10.1017/S0034670500028989. ISSN 1748-6858.
    Klosko, George (2005). Political Obligations. Oxford University Press. ISBN 978-0-19-955104-0.
    Kristjánsson, Kristján (2000). "Three Anarchical Fallacies: An Essay on Political Authority by William A. Edmundson". Mind. 109 (436): 896–900. JSTOR 2660038.
    Laursen, Ole Birk (2019). "Anti-Imperialism". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer. pp. 149–168. ISBN 978-3-319-75620-2.
    Levy, Carl (8 May 2011). "Social Histories of Anarchism". Journal for the Study of Radicalism. 4 (2): 1–44. doi:10.1353/jsr.2010.0003. ISSN 1930-1197. S2CID 144317650.
    Long, Roderick T. (2013). Gaud, Gerald F.; D'Agostino, Fred (eds.). The Routledge Companion to Social and Political Philosophy. Routledge. ISBN 978-0-415-87456-4.
    Lucy, Nicholas (2020). "Anarchism and Sexuality". The SAGE Handbook of Global Sexualities. SAGE Publishing. pp. 160–183. ISBN 978-1-5297-2194-2.
    Lutz, James M.; Ulmschneider, Georgia Wralstad (2019). "Civil Liberties, National Security and U.S. Courts in Times of Terrorism". Perspectives on Terrorism. 13 (6): 43–57. JSTOR 26853740.
    Marshall, Peter (1992). Demanding the Impossible: A History of Anarchism. London: Harper Collins. ISBN 978-0-00-217855-6.
    Marshall, Peter (1993). Demanding the Impossible: A History of Anarchism. Oakland, California: PM Press. ISBN 978-1-60486-064-1.
    Mattern, Mark (2019). "Anarchism and Art". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. pp. 589–602. ISBN 978-3-319-75620-2.
    Mayne, Alan James (1999). From Politics Past to Politics Future: An Integrated Analysis of Current and Emergent Paradigms. Greenwood Publishing Group. ISBN 978-0-275-96151-0. Retrieved 20 September 2010.
    McLaughlin, Paul (28 November 2007). Anarchism and Authority: A Philosophical Introduction to Classical Anarchism. Aldershot: Ashgate. ISBN 978-0-7546-6196-2.
    Morland, Dave (2004). "Anti-capitalism and poststructuralist anarchism". In Jonathan Purkis; James Bowen (eds.). Changing Anarchism: Anarchist Theory and Practice in a Global Age. Manchester University Press. pp. 23–38. ISBN 978-0-7190-6694-8.
    Meltzer, Albert (1 January 2000). Anarchism: Arguments For and Against. AK Press. ISBN 978-1-873176-57-3.
    Morris, Brian (January 1993). Bakunin: The Philosophy of Freedom. Black Rose Books. ISBN 978-1-895431-66-7.
    Morriss, Brian (2015). Anthropology, Ecology, and Anarchism: A Brian Morris Reader. Marshall, Peter (illustrated ed.). Oakland: PM Press. ISBN 978-1-60486-093-1.
    Morris, Christopher W. (2002). An Essay on the Modern State. Cambridge University Press. ISBN 978-0-521-52407-0.
    Moynihan, Colin (2007). "Book Fair Unites Anarchists. In Spirit, Anyway". The New York Times (16 April).
    Moya, Jose C (2015). "Transference, culture, and critique The Circulation of Anarchist Ideas and Practices". In Geoffroy de Laforcade (ed.). In Defiance of Boundaries: Anarchism in Latin American History. Kirwin R. Shaffer. University Press of Florida. ISBN 978-0-8130-5138-3.
    Nesser, Petter (2012). "Research Note: Single Actor Terrorism: Scope, Characteristics and Explanations". Perspectives on Terrorism. 6 (6): 61–73. JSTOR 26296894.
    Nettlau, Max (1996). A Short History of Anarchism. Freedom Press. ISBN 978-0-900384-89-9.
    Newman, Michael (2005). Socialism: A Very Short Introduction. Oxford: Oxford University Press. ISBN 978-0-19-280431-0.
    Newman, Saul (2010). The Politics of Postanarchism. Edinburgh University Press. ISBN 978-0-7486-3495-8.
    Nicholas, Lucy (2019). "Gender and Sexuality". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer. ISBN 978-3-319-75620-2.
    Norris, Jesse J. (2020). "Idiosyncratic Terrorism: Disaggregating an Undertheorized Concept". Perspectives on Terrorism. 14 (3). ISSN 2334-3745. JSTOR 26918296s.
    Nomad, Max (1966). "The Anarchist Tradition". In Drachkovitch, Milorad M. (ed.). Revolutionary Internationals 1864–1943. Stanford University Press. p. 88. ISBN 978-0-8047-0293-5.
    Osgood, Herbert L. (March 1889). "Scientific Anarchism". Political Science Quarterly. The Academy of Political Science. 4 (1): 1–36. doi:10.2307/2139424. JSTOR 2139424.
    Parry, Richard (1987). The Bonnot Gang. Rebel Press. ISBN 978-0-946061-04-4.
    Perlin, Terry M. (1979). Contemporary Anarchism. Transaction Publishers. ISBN 978-1-4128-2033-2.
    Pernicone, Nunzio (2009). Italian Anarchism, 1864–1892. Princeton University Press. ISBN 978-0-691-63268-1.
    Peterson, Steven A (1987). "Moral Development and Critiques of Anarchism". Journal of Libertarian Studies. 8 (2): 237–245.
    Pierson, Christopher (2013). Just Property: Enlightenment, Revolution, and History. Oxford University Press. ISBN 978-0-19-967329-2.
    Ramnath, Maia (2019). "Non-Western Anarchisms and Postcolonialism". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer. ISBN 978-3-319-75620-2.
    Robé, Chris (2017). Breaking the Spell: A History of Anarchist Filmmakers, Videotape Guerrillas, and Digital Ninjas. PM Press. ISBN 978-1-629-63233-9.
    Rogers, Tristan J. (2020). The Authority of Virtue: Institutions and Character in the Good Society. London: Routledge. ISBN 978-1-000-22264-7.
    Rupert, Mark (2006). Globalization and International Political Economy. Lanham: Rowman & Littlefield Publishers. ISBN 978-0-7425-2943-4.
    Ryley, Peter (2019). "Individualism". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. pp. 225–236. ISBN 978-3-319-75620-2.
    Shannon, Deric (2019). "Anti-Capitalism and Libertarian Political Economy". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. pp. 91–106. ISBN 978-3-319-75620-2.
    Skirda, Alexandre (2002). Facing the Enemy: A History of Anarchist Organization From Proudhon to May 1968. AK Press. ISBN 978-1-902593-19-7.
    Sylvan, Richard (2007). "Anarchism". In Robert E. Goodin; Philip Pettit; Thomas Pogge (eds.). A Companion to Contemporary Political Philosophy. Blackwell Companions to Philosophy. 5 (2nd ed.). Blackwell Publishing. ISBN 978-1-4051-3653-2.
    Suissa, Judith (2019). "Anarchist Education". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. ISBN 978-3-319-75620-2.
    Thomas, Paul (1985). Karl Marx and the Anarchists. London: Routledge & Kegan Paul. ISBN 978-0-7102-0685-5.
    Turcato, Davide (2019). "Anarchist Communism". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. ISBN 978-3-319-75620-2.
    Van der Walt, Lucien (2019). "Syndicalism". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. pp. 249–264. ISBN 978-3-319-75620-2.
    Ward, Colin (1973). "The Role of the State". Education Without Schools: 39–48.
    Ward, Colin (2004). Anarchism: A Very Short Introduction. Oxford: Oxford University Press. ISBN 978-0-19-280477-8.
    Walter, Nicholas (2002). About Anarchism. London: Freedom Press. ISBN 978-0-900384-90-5.
    Wendt, Fabian (2020). "Against Philosophical Anarchism". Law and Philosophy. 39 (5): 527–544. doi:10.1007/s10982-020-09377-4.
    Wilbur, Shawn (2019). "Mutualism". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. ISBN 978-3-319-75620-2.
    Williams, Dana M. (2015). "Black Panther Radical Factionalization and the Development of Black Anarchism". Journal of Black Studies. Thousand Oaks: SAGE Publishing. 46 (7): 678–703. doi:10.1177/0021934715593053. JSTOR 24572914. S2CID 145663405.
    Williams, Dana M. (2018). "Contemporary Anarchist and Anarchistic Movements". Sociology Compass. Wiley. 12 (6): e12582. doi:10.1111/soc4.12582. ISSN 1751-9020.
    Williams, Dana M. (2019). "Tactics: Conceptions of Social Change, Revolution, and Anarchist Organisation". In Levy, Carl; Adams, Matthew S. (eds.). The Palgrave Handbook of Anarchism. Springer Publishing. ISBN 978-3-319-75620-2.
    Williams, Leonard (2010). "Hakim Bey and Ontological Anarchism". Journal for the Study of Radicalism. East Lansing: Michigan State University Press. 4 (2): 109–137. doi:10.1353/jsr.2010.0009. JSTOR 41887660. S2CID 143304524.

Tertiary sources

    "Anarchist Punk". AllMusic. Retrieved 1 August 2020.
    Coutinho, Steve (3 March 2016). "Zhuangzi". Internet Encyclopedia of Philosophy. Archived from the original on 3 March 2016. Retrieved 5 March 2019.
    De George, Richard T. (2005). Ted Honderich (ed.). The Oxford Companion to Philosophy. Oxford University Press. ISBN 978-0-19-926479-7.
    Fiala, Andrew (2017). "Anarchism". Stanford Encyclopedia of Philosophy. Metaphysics Research Lab, Stanford University.
    Miller, Martin A.; Dirlik, Arif; Rosemont, Franklin; Augustyn, Adam; Duignan, Brian; Lotha, Gloria (2019). "Anarchism In The Arts". Encyclopaedia Britannica.
    Morriss, Andrew (2008). "Anarcho-capitalism". In Hamowy, Ronald (ed.). The Encyclopedia of Libertarianism. SAGE; Cato Institute. pp. 13–14. doi:10.4135/9781412965811.n8. ISBN 978-1-4129-6580-4. OCLC 191924853.
    McLean, Iain; McMillan, Alistair (2003). The Concise Oxford Dictionary of Politics. Oxford University Press. ISBN 978-0-19-280276-7.
    "Definition of Anarchism". Merriam-Webster. 2019. Retrieved 28 February 2019.
    Miller, David (26 August 1991). The Blackwell Encyclopaedia of Political Thought. Wiley. ISBN 978-0-631-17944-3.
    Ostergaard, Geoffrey (2003). "Anarchism". In Outhwaite, William (ed.). The Blackwell Dictionary of Modern Social Thought (2nd ed.). Malden, Massachusetts: Blackwell Publishing. ISBN 978-0-631-22164-7. OCLC 49704935.
    "Anarchy". Oxford English Dictionary (3rd ed.). Oxford University Press. September 2005.

Further reading

    Barclay, Harold B. (1990). People Without Government: An Anthropology of Anarchy. Kahn & Averill. ISBN 978-0-939306-09-1.
    Edmundson, William A. (2007). Three Anarchical Fallacies: An Essay on Political Authority. Cambridge University Press. ISBN 978-0-521-03751-8. Criticism of philosophical anarchism.
    Harper, Clifford (1987). Anarchy: A Graphic Guide. Camden Press. ISBN 978-0-948491-22-1.
    Huemer, Micheal (2012). The Problem of Political Authority: An Examination of the Right to Coerce and the Duty to Obey. London: Palgrave Macmillan. ISBN 978-1-137-28164-7. A defence of philosophical anarchism, arguing that "both kinds of 'anarchism' [i.e. philosophical and political anarchism] are philosophical and political claims." (p. 137)
    Le Guin, Ursula K. (2009). The Dispossessed. HarperCollins. Anarchistic popular fiction novel.
    Kinna, Ruth (2005). Anarchism: A Beginners Guide. Oneworld. ISBN 978-1-85168-370-3.
    Sartwell, Crispin (2008). Against the State: An Introduction to Anarchist Political Theory. SUNY Press. ISBN 978-0-7914-7447-1.
    Scott, James C. (2012). Two Cheers for Anarchism: Six Easy Pieces on Autonomy, Dignity, and Meaningful Work and Play. Princeton, New Jersey: Princeton University Press. ISBN 978-0-691-15529-6.
    Wolff, Robert Paul (1998). In Defense of Anarchism. University of California Press. ISBN 978-0-520-21573-3. An argument for philosophical anarchism.
    Woodcock, George (January 1962). "Anarchism in Spain". History Today. 12 (1): 22–32. Retrieved 14 October 2020.

External links
Anarchism
at Wikipedia's sister projects

    Definitions from Wiktionary
    Media from Wikimedia Commons
    Quotations from Wikiquote
    Texts from Wikisource
    Textbooks from Wikibooks
    Data from Wikidata

    Anarchy Archives. Anarchy Archives is an online research center on the history and theory of anarchism


    vte

Anarchism

    vte

Anarchist-related territories and autonomous zones

    vte

Libertarian socialism

    vte

Libertarianism

    vte

Philosophy

    vte

Political culture

    vte

List of political ideologies

    vte

Social and political philosophy
Authority control Edit this at Wikidata	

    BNE: XX525074 BNF: cb13318443m (data) GND: 4001887-8 HDS: 017399 LCCN: sh85004812 NKC: ph118417

Categories:

    AnarchismAnti-capitalismAnti-fascismEconomic ideologiesLeft-wing politicsLibertarian socialismLibertarianismPolitical culturePolitical movementsPolitical ideologiesSocial theoriesSocialism

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    View source
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons
    Wikiquote

Languages

    Alemannisch
    Deutsch
    Español
    Esperanto
    Français
    Italiano
    Lumbaart
    Português
    中文

Edit links

    This page was last edited on 1 May 2021, at 20:42 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

!! https://archive.org/details/al_Peggy_Kornegger_Anarchism_The_Feminist_Connection_a4

! http://theanarchistlibrary.org/library/peggy-kornegger-anarchism-the-feminist-connection

! https://en.wikipedia.org/wiki/Peggy_Kornegger



    Archive
    More
    Other languages
    Bookbuilder
! 
! Title: Anarchism: The Feminist Connection
Author: Peggy Kornegger
Topic: feminism
Date: 1975
!! Source: Retrieved on April 28th, 2009 from www.anarcha.org
Notes: Peggy Kornegger was an editor of the American feminist magazine “The Second Wave”. “Anarchism: the Feminist Connection” first appeared as an article in the spring ’75 issue of “Second Wave”. A further article by her, “Feminism, Anarchism and Economics” appeared in the summer/fall ’76 issue.
plain PDF A4 imposed PDF Letter imposed PDF EPUB (for mobile devices) Standalone HTML (printer-friendly) XeLaTeX source plain text source Source files with attachments View history Edit this text Add this text to the bookbuilder Select individual parts for the bookbuilder
Peggy Kornegger
 Anarchism: The Feminist Connection

! What Does Anarchism Really Mean?

! Beyond Theory — Spain 1936–39, France 1968
! 
! Anarchism and the Women’s Movement
! 
! Where Do We Go From Here? Making Utopia Real
! 
! The Transformation of the Future

Eleven years ago, when I was in a small-town Illinois high school, I had never heard of the word “anarchism” — at all. The closest I came to it was knowing that anarchy meant “chaos”. As for socialism and communism, my history classes somehow conveyed the message that there was no difference between them and fascism, a word that brought to mind Hitler, concentration camps, and all kinds of horrible things which never happened in a free country like ours. I was subtly being taught to swallow the bland pablum of traditional American politics: moderation, compromise, fence-straddling, Chuck Percy as wonder boy. I learned the lesson well: it took me years to recognize the bias and distortion which had shaped my entire “education”. The “his-story” of mankind (white) had meant just that; as a woman I was relegated to a vicarious existence. As an anarchist I had no existence at all. A whole chunk of the past (and thus possibilities for the future) had been kept from me. Only recently did I discover that many of my disconnected political impulses and inclinations shared a common framework — that is, the anarchist or libertarian tradition of thought. I was like suddenly seeing red after years of colourblind grays.

Emma Goldman furnished me with my first definition of anarchism:

    Anarchism, then really stands for the liberation of the human mind from the dominion of religion; the liberation of the human body from the dominion of property; liberation from the shackles and restraint of government. Anarchism stands for a social order based on the free grouping of individuals for the purpose of producing real social wealth, an order that will guarantee to every human being free access to the earth and full enjoyment of the necessities of life, according to individual desires, tastes, and inclinations.[1]

Soon, I started making mental connections between anarchism and radical feminism. It became very important to me to write down some of the perceptions in this area as a way of communicating to others the excitement I felt about anarca-feminism. It seems crucial that we share our visions with one another in order to break down some of the barriers that misunderstanding and splinterism raise between us. Although I call myself an anarca-feminist, this definition can easily include socialism, communism, cultural feminism, lesbian separatism, or any of a dozen other political labels. As Su Negrin writes: “No political umbrella can cover all my needs.”[2] We may have more in common than we think we do. While I am writing here about my own reactions and perceptions, I don’t see either my life or thoughts as separate from those of other women. In fact, one of my strongest convictions regarding the Women’s Movement is that we do share an incredible commonality of vision. My own participation in this vision is not to offer definitive statements or rigid answers but rather possibilities and changeable connections which I hope will bounce around among us and contribute to a continual process of individual and collective growth and evolution/revolution.
What Does Anarchism Really Mean?

Anarchism has been maligned and misinterpreted for so long that maybe the most important thing to begin with is an explanation of what it is and isn’t. Probably the most prevalent stereotype of the anarchist is a malevolent-looking man hiding a lighted bomb beneath a black cape, ready to destroy or assassinate everything and everybody in his path. This image engenders fear and revulsion in most people, regardless of their politics; consequently, anarchism is dismissed as ugly, violent, and extreme. Another misconception is the anarchist as impractical idealist, dealing in useless, Utopian abstractions and out of touch with concrete reality. The result: anarchism is once again dismissed, this time as an “impossible dream”.

Neither of these images is accurate (though there have been both anarchist assassins and idealists — as is the case in many political movements, left and right). What is accurate depends, of course, on one’s frame of reference. There are different kinds of anarchist, just as there are different kinds of socialists. What I will talk about here is communist anarchism, which I see as virtually identical to libertarian (i.e. nonauthoritarian) socialism. Labels can be terribly confusing, so in hopes of clarifying the term, I’ll define anarchism using three major principles (each of which I believe is related to a radical feminist analysis of society — more on that later):

    Belief in the abolition of authority, hierarchy, government. Anarchists call for the dissolution (rather than the seizure) of power — of human over human, of state over community. Whereas many socialists call for a working class government and an eventual “withering away of the state”, anarchist believe that the means create the ends, that a strong State becomes self-perpetuating. The only way to achieve anarchism (according to anarchist theory) is through the creation of co-operative, anti-authoritarian forms. To separate the process from the goals of revolution is to insure the perpetuation of oppressive structure and style.

    Belief in both individuality and collectivity. Individuality is not incompatible with communist thought. A distinction must be made though, between “rugged individualism”, which fosters competition and a disregard for the needs of others, and true individuality, which implies freedom without infringement on others’ freedom. Specifically, in terms of social and political organization, this meant balancing individual initiative with collective action through the creation of structures which enable decision-making to rest in the hands of all those in a group, community, or factory, not in the hands of “representatives” or “leaders”. It means coordination and action via a non-hierarchical network (overlapping circles rather than a pyramid) of small groups or communities. (See descriptions of Spanish anarchist collectives in next section.) Finally, it means that successful revolution involves unmanipulated, autonomous individuals and groups working together to take “direct, unmediated control of society and of their own lives”.[3]

    Belief in both spontaneity and organization. Anarchists have long been accused of advocating chaos. Most people in fact believe that anarchism is a synonym for disorder, contusion, violence. This is a total misrepresentation of what anarchism stands for. Anarchists don’t deny the necessity of organization; they only claim that it must come from below, not above, from within rather than from without. Externally imposed structure or rigid rules which foster manipulation and passivity are the most dangerous forms a socialist “revolution” can take. No one can dictate the exact shape of the future. Spontaneous action within the context of a specific situation is necessary if we are going to create a society which responds to the changing needs of individuals and groups. Anarchists believe in fluid forms: small-scale participatory democracy in conjunction with large-scale collective cooperation and coordination (without loss of individual initiative).

So anarchism sounds great, but how could it possibly work? That kind of Utopian romanticism couldn’t have any relation to the real world... right? Wrong. Anarchists have actually been successful (if only temporarily) in a number of instances (none of which is very well known). Spain and France, in particular, have long histories of anarchist activity, and it was in these two countries that I found the most exciting concretisations of theoretical anarchism.
Beyond Theory — Spain 1936–39, France 1968

    The revolution is a thing of the people, a popular creation; the counter-revolution is a thing of the State. It has always been so, and must always be so, whether in Russia, Spain, or China.[4]

    — Anarchist Federation of Iberia (FAI), Tierra y Libertad, July 3, 1936

The so-called Spanish Civil War is popularly believed to have been a simple battle between Franco’s fascist forces and those committed to liberal democracy. What has been overlooked, or ignored, is that much more was happening in Spain than civil war. A broadly-based social revolution adhering to anarchist principles was taking firm, concrete form in many areas of the country. The gradual curtailment and eventual destruction of this libertarian movement is less important to discuss here than what was actually achieved by the women and men who were part of it. Against tremendous odds, they made anarchism work.

The realization of anarchist collectivisation and workers’ self-management during the Spanish Revolution provides a classic example of organization-plus-spontaneity. In both rural and industrial Spain, anarchism had been a part of the popular consciousness for many years. In the countryside, the people had a long tradition of communalism; many villages still shared common property or gave plots of land to those without any. Decades of rural collectivism and cooperation laid the foundation for theoretical anarchism, which came to Spain in the 1870s (via the Italian revolutionary, Fanelli, a friend of Bakunin) and eventually gave rise to anarco-syndicalism, the application of anarchist principles to industrial trade unionism. The Confederacion National del Trebajo, founded in 1910, was the anarco-syndicalist union (working closely with the militant Federacion Anarquista Iberica) which provided instruction and preparation for workers’ self-management and collectivization. Tens of thousands of books, newspapers, and pamphlets reaching almost every part of Spain contributed to an even greater general knowledge of anarchist thought[5]. The anarchist principles of non-hierarchical cooperation and individual initiative combined with anarco-syndicalist tactics of sabotage, boycott and general strike, and training in production and economics, gave the workers background in both theory and practice. This led to a successful spontaneous appropriation of both factories and land after July 1936.

When the Spanish right responded to the electoral victory of the Popular Front with an attempted military takeover, on July 19, 1936, the people fought back with a fury which checked the coup within 24 hours. At this point, ballot box success became incidental; total social revolution had begun. While the industrial workers either went on strike or actually began to run the factories themselves, the agricultural workers ignored landlords and started to cultivate the land on their own. Within a short time, over 60% of the land in Spain was worked collectively — without landlords, bosses, or competitive incentive. Industrial collectivization took place mainly in the province of Catalonia, where anarco-syndicalist influence was strongest. Since 75% of Spain’s industry was located in Catalonia, this was no small achievement[6]. So, after 75 years of preparation and struggle, collectivization was achieved, through the spontaneous collective action of individuals dedicated to libertarian principles.

What, though, did collectivization actually mean, and how did it work? In general, the anarchist collectives functioned on two levels: (1) small-scale participatory democracy and (2) large-scale coordination with control at the bottom. At each level, the main concern was decentralization and individual initiative. In the factories and villages, representatives were chosen to councils which operated as administrative or coordinating bodies. Decisions always came from more general membership meetings, which all workers attended. To guard against the dangers of representation, representatives were workers themselves, and at all times subject to immediate, as well as periodic, replacement. These councils or committees were the basic units of self-management. From there, they could be expanded by further coordination into loose federations which would link together workers and operations over an entire industry or geographical area. In this way, distribution and sharing of goods could be performed, as well as implementation of programs of wide-spread concern, such as irrigation, transportation, and communication. Once again, the emphasis was on the bottom-to-top process. This very tricky balance between individuality and collectivism was most successfully accomplished by the Peasant Federation of Levant, which included 900 collectives, and the Aragon Federation of Collectives, composed of about 500 collectives.

Probably the most important aspect of self-management was the equalization of wages. This took many forms, but frequently the “family wage” system was used, wages being paid to each worker in money or coupons according to her/his needs and those of dependants. Goods in abundance were distributed freely, while others were obtainable with “money”.

The benefits which came from wage equalization were tremendous. After huge profits in the hands of a few men were eliminated, the excess money was used both to modernize industry (purchase of new equipment, better working conditions) and to improve the land (irrigation, dams, purchase of tractors, etc.). Not only were better products turned out more efficiently, but consumer prices were lowered as well. This was true in such varied industries as: textiles, metal and munitions, gas, water, electricity, baking, fishing, municipal transportation, railroads, telephone services, optical products, health services, etc. The workers themselves benefited from a shortened work week, better working conditions, free health care, unemployment pay, and a new pride in their work. Creativity was fostered by self-management and the spirit of mutual aid; workers were concerned with turning out products which were better than those turned out under conditions of labour exploitation. They wanted to demonstrate that socialism works, that competition and greed motives are unnecessary. Within months, the standard of living had been raised by anywhere from 50–100% in many areas of Spain.

The achievements of the Spanish anarchists go beyond a higher standard of living and economic equality; they involve the realization of basic human ideals: freedom, individual creativity, and collective cooperation. The Spanish anarchist collectives did not fail; they were destroyed from without. Those (of the right and left) who believed in a strong State worked to wipe them out — of Spain and history. The successful anarchism of roughly eight million Spanish people is only now beginning to be uncovered.

    C’est pour toi que tu fais la revolution.[7]

    (“It is for yourself that you make the revolution.”)

    — Daniel and Gabriel Cohn-Bendit

Anarchism has played an important part in French history, but rather than delve into the past, I want to focus on a contemporary event — May-June, 1968. The May-June events have particular significance because they proved that a general strike and takeover of the factories by the workers, and the universities by the students, could happen in a modern, capitalistic, consumption-oriented country. In addition, the issues raised by the students and workers in France (e.g. self-determination, the quality of life) cut across class lines and have tremendous implications for the possibility of revolutionary change in a post-scarcity society.[8]

On March 22, 1968, students at the University of Nanterre, among them anarchist Daniel Cohn-Bendit, occupied administrative buildings at their school, calling for an end to both the Vietnam war and their own oppression as students. (Their demands were similar in content to those of students from Columbia to Berlin protesting in loco parentis.) The University was closed down, and the demonstrations spread to the Sorbonne. The SNESUP (the union of secondary school and university teachers) called for a strike, and the students’ union, the UNEF, organized a demonstration for May 6. That day, students and police clashed in the Latin Quarter in Paris; the demonstrators built barricades in the streets, and many were brutally beaten by the riot police. By the 7th, the number of protesters had grown to between twenty and fifty thousand people, marching toward the Etoile singing the Internationale. During the next few days, skirmishes between demonstrators and police in the Latin Quarter became increasingly violent, and the public was generally outraged at the police repression. Talks between labour unions and teachers’ and students’ unions began, and the UNEF and the FEN (a teachers’ union) called for an unlimited strike and demonstration. On May 13, around six hundred thousand people — students, teachers, and workers — marched through Paris in protest.

On the same day, the workers at the Sud-Aviation plant in Nantes (a city with the strongest anarco-syndicalist tendencies in France[9]) went out on strike. It was this action that touched off the general strike, the largest in history, including ten million workers — “professionals and labourers, intellectuals and football players.”[10] Banks, post offices, gas stations, and department stores closed; the subway and busses stopped running; and trash piled up as the garbage collectors joined the strike. The Sorbonne was occupied by students, teachers, and anyone who wanted to come and participate in discussions there. Political dialogues which questioned the vary basis of French capitalist society went on for days. All over Paris posters and graffiti appeared: It is forbidden to forbid. Life without dead times. All power to the Imagination. The more you consume, the less you live. May-June became both an “assault on the established order” and a “festival of the streets”.[11] Old lines between the middle and working classes often became meaningless as the younger workers and the students found themselves making similar demands: liberation from an oppressive authoritarian system (university or factory) and the right to make decisions about their own lives.

The people of France stood at the brink of total revolution. A general strike had paralysed the country. The students occupied the universities and the workers, the factories. What remained to be done was for the workers actually to work the factories, to take direct unmediated action and settle for nothing less than total self-management. Unfortunately, this did not occur. Authoritarian politics and bureaucratic methods die hard, and most of the major French workers’ unions were saddled with both. As in Spain, the Communist Party worked against the direct, spontaneous actions of the people in the streets: the Revolution must be dictated from above. Leaders of the CGT (the Communist workers’ union) tried to prevent contacts between the students and workers, and a united left soon became an impossibility. As de Gaulle and the police mobilized their forces and even greater violence broke out, many strikers accepted limited demands (better pay, shorter hours, etc.) and returned to work. Students continued their increasingly bloody confrontations with police, but the moment had passed. By the end of June, France had returned to “normality” under the same old Gaullist regime.

What happened in France in 1968 is vitally connected to the Spanish Revolution of 1936; in both cases anarchist principles were not only discussed but implemented. The fact that the French workers never did achieve working self-management may be because anarco-syndicalism was not as prevalent in France in the years prior to 1968 as it was in Spain before 1936. Of course, this is an over-simplification; explanation for a “failed” revolution can run on into infinity. What is crucial here, once again, is the fact that it happened at all. May-June, 1968, disproves the common belief that revolution is impossible in an advanced capitalist country. The children of the French middle and working classes, bred to passivity, mindless consumerism, and/or alienated labor, were rejecting much more than capitalism. They were questioning authority itself, demanding the right to a free and meaningful existence. The reasons for revolution in modern industrial society are thus no longer limited to hunger and material scarcity; they include the desire for human liberation from all forms of domination, in essence a radical change in the very “quality of everyday life”.[12] They assume the necessity of a libertarian society. Anarchism can no longer be considered an anachronism.

    It is often said that anarchists live in a world of dreams to come and do not see things which happen today. We see them only too well, and in their true colors, and that is what makes us carry the hatchet into the forest of prejudices that besets us.[13]

    — Peter Kropotkin

There are two main reasons why revolution was aborted in France: (1) inadequate preparation in the theory and practice of anarchism and (2) the vast power of the State coupled with authoritarianism and bureaucracy in potentially sympathetic left-wing groups. In Spain, the revolution was more widespread and tenacious because of the extensive preparation. Yet it was still eventually crushed by a fascist State and authoritarian leftists. It is important to consider these two factors in relation to the situation in the United States today. We are not only facing a powerful State whose armed forces, police, and nuclear weapons could instantly destroy the entire human race, but we also find ourselves confronting a pervasive reverence for authority and hierarchical forms whose continuance is ensured daily through the kind of home-grown passivity bred by family, school, church, and TV screen. In addition, the U.S. is a huge country, with only a small, sporadic history of anarchist activity. It would seem that not only are we unprepared, we are literally dwarfed by a State more powerful than those of France and Spain combined. To say we are up against tremendous odds is an understatement.

But where does defining the Enemy as a ruthless, unconquerable giant lead us? If we don’t allow ourselves to be paralysed by fatalism and futility, it could force us to redefine revolution in a way that would focus on anarca-feminism as the framework in which to view the struggle for human liberation. It is women who now hold the key to new conceptions of revolution, women who realize that revolution can no longer mean the seizure of power or the domination of one group by another — under any circumstances, for any length of time. It is domination itself that must be abolished. The very survival of the planet depends on it. Men can no longer be allowed to wantonly manipulate the environment for their own self-interest, just as they can no longer be allowed to systematically destroy whole races of human beings. The presence of hierarchy and authoritarian mind-set threaten out human and planetary existence. Global liberation and libertarian politics have become necessary, not just utopian pipe dreams. We must “acquire the conditions of life in order to survive”.[14]

To focus on anarca-feminism as the necessary revolutionary framework for our struggle is not to deny the immensity of the task before us. We do see “only too well” the root causes of our oppression and the tremendous power of the Enemy. But we also see that the way out of the deadly historical cycle of incomplete or aborted revolutions requires of us new definitions and new tactics — ones which point to the kind of “hollowing out”[15] process described later in the “Making Utopia Real” section. As women, we are particularly well-suited for participation in this process. Underground for ages, we have learned to be covert, subtle, sly, silent, tenacious, acutely sensitive, and expert at communication skills.

For our own survival, we learned to weave webs of rebellion which were invisible to the “masterful” eye.

    We know what a boot looks like

    when seen from underneath,

    we know the philosophy of boots...

    Soon we will invade like weeds,

    everywhere but slowly;

    the captive plants will rebel

    with us, fences will topple,

    brick walls ripple and fall,

    there will be no more boots.

    Meanwhile we eat dirt

    and sleep; we are waiting

    under your feet.

    When we say Attack

    you will hear nothing

    at first.[16]

Anarchistic preparation is not non-existent in this country. It exists in the minds and actions of women readying themselves (often unknowingly) for a revolution whose forms will shatter historical inevitability and the very process of history itself.
Anarchism and the Women’s Movement

    The development of sisterhood is a unique threat, for it is directed against the basic social and psychic model of hierarchy and domination...[17]

    — Mary Daly

    All across the country, independent groups of women began functioning without the structure, leaders, and other factotums of the male left, creating independently and simultaneously, organizations similar to those of anarchists of many decades and locales. No accident, either.[18]

    — Cathy Levine

I have not touched upon the matter of woman’s role in Spain and France, as it can be summed up in one word — unchanged. Anarchist men have been little better than males everywhere in their subjection of women.[19] Thus the absolute necessity of a feminist anarchist revolution. Otherwise the very principles on which anarchism is based become utter hypocrisy.

The current women’s movement and a radical feminist analysis of society have contributed much to libertarian thought, In fact, it is my contention that feminists have been unconscious anarchists in both theory and practice for years. We now need to become consciously aware of the connections between anarchism and feminism and use that framework for our thoughts and actions. We have to be able to see very clearly where we want to go and how to get there. In order to be more effective, in order to create the future we sense is possible, we must realise that what we want is not change but total transformation.

The radical feminist perspective is almost pure anarchism. The basic theory postulates the nuclear family as the basis for all authoritarian systems. The lesson the child learns, from father to teacher to boss to God, is to OBEY the great anonymous voice of Authority. To graduate from childhood to adulthood is to become a full-fledged automaton, incapable of questioning or even thinking clearly. We pass into middle-America, believing everything we are told and numbly accepting the destruction of life all around us.

What feminists are dealing with is a mind-fucking process — the male domineering attitude toward the external world, allowing only subject/object relationships. Traditional male politics reduces humans to object status and then dominates and manipulates them for abstract “goals”. Women, on the other hand, are trying to develop a consciousness of “Other” in all areas. We see subject-to-subject relationships as not only desirable but necessary. (Many of us have chosen to work with and love only women for just this reason — those kinds of relationships are so much more possible.) Together we are working to expand our empathy and understanding of other living things and to identify with those entities outside of ourselves, rather than objectifying and manipulating them. At this point, a respect for all life is a prerequisite for our very survival.

Radical feminist theory also criticizes male hierarchical thought patterns — in which rationality dominates sensuality, mind dominates intuition, and persistent splits and polarities (active/passive, child/adult, sane/insane, work/play, spontaneity/organization) alienate us from the mind-body experience as a Whole and from the Continuum of human experience. Women are attempting to get rid of these splits, to live in harmony with the universe as whole, integrated humans dedicated to the collective healing of our individual wounds and schisms.

In actual practice within the Women’s Movement, feminists have had both success and failure in abolishing hierarchy and domination. I believe that women frequently speak and act as “intuitive” anarchists, that is, we approach, or verge on, a complete denial of all patriarchal thought and organization. That approach, however, is blocked by the powerful and insidious forms which patriarchy takes — in our minds and in our relationships with one another. Living within and being conditioned by an authoritarian society often prevents us from making that all-important connection between feminism and anarchism. When we say we are fighting the patriarchy, it isn’t always clear to all of us that that means fighting all hierarchy, all leadership, all government, and the very idea of authority itself. Our impulses toward collective work and small leaderless groups have been anarchistic, but in most cases we haven’t called them by that name. And that is important, because an understanding of feminism as anarchism could springboard women out of reformism and stop-gap measures into a revolutionary confrontation with the basic nature of authoritarian politics.

If we want to “bring down the patriarchy”, we need to talk about anarchism, to know exactly what it means, and to use that framework to transform ourselves and the structure of our daily lives. Feminism doesn’t mean female corporate power or a woman President; it means no corporate power and no Presidents. The Equal Rights Amendment will not transform society; it only gives women the “right” to plug into a hierarchical economy. Challenging sexism means challenging all hierarchy — economic, political, and personal. And that means an anarca-feminist revolution.

Specifically, when have feminists been anarchistic, and when have we stopped short? As the second wave of feminism spread across the country in the late 60s, the forms which women’s groups took frequently reflected an unspoken libertarian consciousness. In rebellion against the competitive power games, impersonal hierarchy, and mass organization tactics of male politics, women broke off into small, leaderless, consciousness-raising groups, which dealt with personal issues in our daily lives. Face-to-face, we attempted to get at the root cause of our oppression by sharing our hitherto unvalued perceptions and experiences. We learned from each other that politics is not “out there” but in our minds and bodies and between individuals. Personal relationships could and did oppress us as a political class. Our misery and self-hatred were a direct result of male domination — in home, street, job, and political organization.

So, in many unconnected areas of the U.S., C-R groups developed as a spontaneous, direct (re)action to patriarchal forms. The emphasis on the small group as a basic organizational unit, on the personal and political, on anti-authoritarianism, and on spontaneous direct action was essentially anarchistic. But, where were the years and years of preparation which sparked the Spanish revolutionary activities? The structure of women’s groups bore a striking resemblance to that of anarchist affinity groups within anarco-syndicalist unions in Spain, France, and many other countries. Yet, we had not called ourselves anarchists and consciously organized around anarchist principles. At the time, we did not even have an underground network of communication and idea-and-skill sharing. Before the women’s movement was more than a handful of isolated groups groping in the dark toward answers, anarchism as an unspecified ideal existed in our minds.

I believe that this puts women in the unique position of being the bearers of a subsurface anarchist consciousness which, if articulated and concretized can take us further than any previous group toward the achievement of total revolution. Women’s intuitive anarchism, if sharpened and clarified, is an incredible leap forward (or beyond) in the struggle for human liberation. Radical feminist theory hails feminism as the Ultimate Revolution. This is true if, and only if, we recognize and claim our anarchist roots. At the point where we fail to see the feminist connection to anarchism, we stop short of revolution and become trapped in “ye olde male political rut”. It is time to stop groping in the darkness and see what we have done and are doing in the context of where we want to ultimately be.

C-R groups were a good beginning, but they often got so bogged down in talking about personal problems that they failed to make the jump to direct action and political confrontation. Groups that did organize around a specific issue or project sometimes found that the “tyranny of structurelessness” could be as destructive as the “tyranny of tyranny”[20] The failure to blend organization with spontaneity frequently caused the emergence of those with more skills or personal charisma as leaders. The resentment and frustration felt by those who found themselves following sparked in-fighting, guilt-tripping, and power struggles. Too often this ended in either total ineffectiveness or a backlash adherence to “what we need is more structure” (in the old male up/down sense of the word).

Once again, I think that what was missing was a verbalized anarchist analysis. Organization does not have to stifle spontaneity or follow hierarchical patterns. The women’s groups or projects which have been the most successful are those which experimented with various fluid structures: the rotation of tasks and chair- persons, sharing of all skills, equal access to information and resources, non-monopolized decision-making, and time slots for discussion of group dynamics. This latter structural element is important because it involves a continued effort on the part of group members to watch for “creeping power politics”. If women are verbally committing themselves to collective work, this requires a real struggle to unlearn passivity (to eliminate “followers”) and to share special skins or knowledge (to avoid “leaders”). This doesn’t mean that we cannot be inspired by one another’s words and lives; strong actions by strong individuals can be contagious and thus important. But we must be careful not to slip into old behavior patterns.

On the positive side, the emerging structure of the women’s movement in the last few years has generally followed an anarchistic pattern of small project-oriented groups continually weaving an underground network of communication and collective action around specific issues. Partial success at leader/“star” avoidance and the diffusion of small action projects (Rape Crisis Centers, Women’s Health Collectives) across the country have made it extremely difficult for the women’s movement to be pinned down to one person or group. Feminism is a many-headed monster which cannot be destroyed by singular decapitation. We spread and grow in ways that are incomprehensible to a hierarchical mentality.

This is not, however, to underestimate the immense power of the Enemy. The most treacherous form this power can take is cooptation, which feeds on any short-sighted unanarchistic view of feminism as mere “social change”. To think of sexism as an evil which can be eradicated by female participation in the way things are is to insure the continuation of domination and oppression. “Feminist” capitalism is a contradiction in terms. When we establish women’s credit unions, restaurants, bookstores, etc., we must be clear that we are doing so for our own survival, for the purpose of creating a counter-system whose processes contradict and challenge competition, profit-making, and all forms of economic oppression. We must be committed to “living on the boundaries”[21], to anti-capitalist, non-consumption values. What we want is neither integration nor a coup d’etat which would “transfer power from one set of boys to another set of boys”.[22] What we ask is nothing less than total revolution, revolution whose forms invent a future untainted by inequity, domination, or disrespect for individual variation — in short, feminist-anarchist revolution. I believe that women have known all along how to move in the direction of human liberation; we only need to shake off lingering male political forms and dictums and focus on our own anarchistic female analysis.
Where Do We Go From Here? Making Utopia Real

    “Ah, your vision is romantic bullshit, soppy religiousity, flimsy idealism.” “You’re into poetry because you can’t deliver concrete details.” So says the little voice in the back of my (your?) head. But the front of my head knows that if you were here next to me, we could talk. And that in our talk would come (concrete, detailed) descriptions of how such and such might happen, how this or that would be resolved. What my vision really lacks is concrete, detailed human bodies. Then it wouldn’t be a flimsy vision, it would be a fleshy reality.[23]

    — Su Negrin

    Instead of getting discouraged and isolated now, we should be in our small groups — discussing, planning, creating, and making trouble... we should always be actively engaging in and creating feminist activity, because we all thrive on it; in the absence of [it], women take tranquilizers, go insane, and commit suicide.[24]

    — Cathy Levin

Those of us who lived through the excitement of sit-ins, marches, student strikes, demonstrations, and REVOLUTION NOW in the 60s may find ourselves disillusioned and downright cynical about anything happening in the 70s. Giving up or in (“open” marriage? hip capitalism? the Guru Maharaji?) seems easier than facing the prospect of decades of struggle and maybe even ultimate failure. At this point, we lack an overall framework to see the process of revolution in. Without it, we are doomed to deadended, isolated struggle or the individual solution. The kind of framework, or coming-together-point, that anarca-feminism provides would appear to be a prerequisite for any sustained effort to reach Utopian goals. By looking at Spain and France, we can see that true revolution is “neither an accidental happening nor a coup d’etat artificially engineered from above.”[25] It takes years of preparation: sharing of ideas and information, changes in consciousness and behavior, and the creation of political and economic alternatives to capitalist, hierarchical structures. It takes spontaneous direct action on the part of autonomous individuals through collective political confrontation. It is important to “free your mind” and your personal life, but it is not sufficient. Liberation is not an insular experience; it occurs in conjunction with other human beings. There are no individual “liberated women”.

So, what I’m talking about is a long-term process, a series of actions in which we unlearn passivity and learn to take control over our own lives. I am talking about a “hollowing out” of the present system through the formation of mental and physical (concrete) alternatives to the way things are. The romantic image of a small band of armed guerrillas overthrowing the U.S. government is obsolete (as is all male politics) and basically irrelevant to this conception of revolution. We would be squashed if we tried it. Besides, as the poster says, “What we want is not the overthrow of the government, but a situation in which it gets lost in the shuffle.” This is what happened (temporarily) in Spain, and almost happened in France. Whether armed resistance will be necessary at some point is open to debate. The anarchist principle of “means create ends” seems to imply pacifism, but the power of the State is so great that it is difficult to be absolute about non-violence. (Armed resistance was crucial in the Spanish Revolution, and seemed important in France 1968 as well.) The question of pacifism, however, would entail another discussion, and what I’m concerned with here is emphasizing the preparation needed to transform society, a preparation which includes an anarca-feminist framework, long-range revolutionary patience, and continual active confrontation with entrenched patriarchal attitudes.

The actual tactics of preparation are things that we have been involved with for a long time. We need to continue and develop them further. I see them as functioning on three levels: (1) “educational” (sharing of ideas, experiences), (2) economic/political, and (3) personal/political.

“Education” has a rather condescending ring to it, but I don’t mean “bringing the word to the masses” or guilt-tripping. individuals into prescribed ways of being. I’m talking about the many methods we have developed for sharing our lives with one another — from writing (our network of feminist publications), study groups, and women’s radio and TV shows to demonstrations, marches, and street theatre. The mass media would seem to be a particularly important area for revolutionary communication and influence — just think of how our own lives were mis-shaped by radio and TV[26]. Seen in isolation, these things might seem ineffectual, but people do change from writing, reading, talking, and listening to each other, as well as from active participation in political movements. Going out into the streets together shatters passivity and creates a spirit of communal effort and life energy which can help sustain and transform us. My own transformation from all-american-girl to anarca-feminist was brought about by a decade of reading, discussion, and involvement with many kinds of people and politics — from the Midwest to the West and East Coasts. My experiences may in some ways be unique, but they are not, I think, extraordinary. In many, many places in this country, people are slowly beginning to question the way they were conditioned to acceptance and passivity. God and Government are not the ultimate authorities they once were. This is not to minimize the extent of the power of Church and State, but rather to emphasize that seemingly inconsequential changes in thought and behavior, when solidified in collective action, constitute a real challenge to the patriarchy.

Economic/political tactics fall into the realm of direct action and “purposeful illegality” (Daniel Guerin’s term). Anarco-syndicalism specifies three major modes of direct action: sabotage, strike, and boycott. Sabotage means “obstructing by every possible method, the regular process of production”[27]. More and more frequently, sabotage is practised by people unconsciously influenced by changing societal values. For example, systematic absenteeism is carried out by both blue and white collar workers. Defying employers can be done as subtly as the “slow-down” or as blatantly as the “fuck-up”. Doing as little work as possible as slowly as possible is common employee practice, as is messing up the actual work process (often as a union tactic during a strike). Witness habitual misfiling or loss of “important papers” by secretaries, or the continual switching of destination placards on trains during the 1967 railroad strike in Italy.

Sabotage tactics can be used to make strikes much more effective. The strike itself is the workers’ most important weapon. Any individual strike has the potential of paralysing the system if it spreads to other industries and becomes a general strike. Total social revolution is then only a step away. Of course, the general strike must have as its ultimate goal worker’s self-management (as well as a clear sense of how to achieve and hold on to it), or else the revolution will be still-born (as in France, 1968).

The boycott can also be a powerful strike or union strategy (e.g., the boycott of non-union grapes, lettuce, and wines, and of Farah pants). In addition, it can be used to force economic and social changes. Refusal to vote, to pay war taxes, or to participate in capitalist competition and over-consumption are all important actions when coupled with support of alternative, non-profit structures (food co-ops, health and law collectives, recycled clothing and book stores, free schools, etc.). Consumerism is one of the main strongholds of capitalism. To boycott buying itself (especially products geared to obsolescence and those offensively advertised) is a tactic that has the power to change the “quality of everyday life”. Refusal to vote is often practised out of despair or passivity rather than as a conscious political statement against a pseudo-democracy where power and money elect a political elite. Non-voting can mean something other than silent consent if we are simultaneously participating in the creation of genuine democratic forms in an alternative network of anarchist affinity groups.

This takes us to the third area — personal/political, which is of course vitally connected to the other two. The anarchist affinity group has long been a revolutionary organizational structure. In anarco-syndicalist unions, they functioned as training grounds for workers’ self-management. They can be temporary groupings of individuals for a specific short-term goal, more “permanent” work collectives (as an alternative to professionalism and career elitism), or living collectives where individuals learn how to rid themselves of domination or possessiveness in their one-to-one relationships. Potentially, anarchist affinity groups are the base on which we can build a new libertarian, non-hierarchical society. The way we live and work changes the way we think and perceive (and vice versa), and when changes in consciousness become changes in action and behavior, the revolution has begun.

Making Utopia real involves many levels of struggle. In addition to specific tactics which can be constantly developed and changed, we need political tenacity: the strength and ability to see beyond the present to a joyous, revolutionary future. To get from here to there requires more than a leap of faith. It demands of each of us a day-to-day, long-range commitment to possibility and direct action.
The Transformation of the Future

    The creation of female culture is as pervasive a process as we can imagine, for it is participation in a VISION which is continually unfolding anew in everything from our talks with friends, to meat boycotts, to taking over storefronts for child care centres, to making love with a sister. It is revelatory, undefinable, except as a process of change. Women’s culture is all of us exorcising, naming, creating toward the vision of harmony with ourselves, each other, and our sister earth. In the last ten years our having come faster and closer than ever before in the history of the patriarchy to overturning its power... is cause of exhilarant hope — wild, contagious, unconquerable, crazy HOPE!... The hope, the winning of life over death, despair and meaninglessness is everywhere I look now — like taliswomen of the faith in WOMANVISION...[28]

    — Laurel

I used to think that if the revolution didn’t happen tomorrow, we would all be doomed to a catastrophic (or at least, catatonic) fate. I don’t believe anymore that kind of before-and-after revolution, and I think we set ourselves up for failure and despair by thinking of it in those terms. I do believe that what we all need, what we absolutely require, in order to continue struggling (in spite of oppression of our daily lives) is HOPE, that is, a vision of the future so beautiful and so powerful that it pulls us steadily forward in a bottom-up creation of an inner and outer world both habitable and self-fulfilling for all[29]. I believe that hope exists — that it is in Laurel’s “womanvision”, in Mary Daly’s “existential courage”[30] and in anarca-feminism. Our different voices describe the same dream, and “only the dream can shatter stone that blocks our mouths.”[31] As we speak, we change, and as we change, we transform ourselves and the future simultaneously.

It is true that there is no solution, individual or otherwise, in our society.[32] But if we can only balance this rather depressing knowledge with an awareness of the radical metamorphoses we have experienced — in our consciousness and in our lives — the perhaps we can have the courage to continue to create what we DREAM is possible. Obviously, it is not easy to face daily oppression and still continue to hope. But it is our only chance. If we abandon hope (the ability to see connections, to dream the present into the future), then we have already lost. Hope is woman’s most powerful revolutionary tool; it is what we give each other every time we share our lives, our work, and our love. It pulls us forward out of self-hatred, self-blame, and the fatalism which keeps us prisoners in separate cells. If we surrender to depression and despair now, we are accepting the inevitability of authoritarian politics and patriarchal domination (“Despair is the worst betrayal, the coldest seduction: to believe at last that the enemy will prevail.”[33] Marge Piercy). We must not let our pain and anger fade into hopelessness or short-sighted semi-“solutions”. Nothing we can do is enough, but on the other hand, those “small changes” we make in our minds, in our lives, in one another’s lives, are not totally futile and ineffectual. It takes a long time to make a revolution: it is something that one both prepares for and lives now. The transformation of the future will not be instantaneous, but it can be total... a continuum of thought and action, individuality and collectivity, spontaneity and organization, stretching from what is to what can be.

Anarchism provides a framework for this transformation. It is a vision, a dream, a possibility which becomes “real” as we live it. Feminism is the connection that links anarchism to the future. When we finally see that connection clearly, when we hold to that vision, when we refuse to be raped of that HOPE, we will be stepping over the edge of nothingness into a being now just barely imaginable. The womanvision that is anarca-feminism has been carried inside our women’s bodies for centuries. “It will be an ongoing struggle in each of us, to birth this vision”[34] but we must do it. We must “ride our anger like elephants into battle”.

    We are sleepwalkers troubled by nightmare flashes,

    In locked wards we closet our vision, renouncing ...

    Only when we break the mirror and climb into our vision,

    Only when we are the wind together streaming and singing,

    Only in the dream we become with our bones for spears,

    we are real at last

    and wake.[35]

 

[1] Emma Goldman, “Anarchism: What It Really Stands For”, Red Emma Speaks (Vintage Books, 1972), p.59.

[2] Su Negrin, Begin at Start (Times Change Press, 1972), p. 128.

[3] Murray Bookchin, “On Spontaneity and Organization”, Liberation, March, 1972, p.6.

[4] Paul Berman, Quotations from the Anarchists (Praeger Publishers, 1972), p. 68.

[5] Sam Doigoff, The Anarchist Collectives (Free Life Editions, 1974), p. 27.

[6] Ibid, pp.6, 7, 85.

[7] Daniel and Gabriel Cohn-Bendit, Obsolete Communism — The Left Wing Alternative (McGraw-Hill, 1968), p.256.

[8] See Murrey Bookchin’s Post Scarcity Anarchism (Ramparts Press, 1974) for both an insightful analysis of the May-June events and a discussion of revolutionary potential in a technological society.

[9] Ibid, p.262.

[10] lbid, p.250.

[11] Bookchin, On Spontaneity and Organization, pp. 11–12.

[12] Bookchin, Post Scarcity Anarchism, p.249.

[13] Berman, p.146.

[14] Bookchin, Post Scarcity Anarchism, p.40.

[15] Bookchin, On Spontaneity and Organization, p.10.

[16] Margaret Atwood, “Song of the Worms”, You Are Happy (Harper & Row, 1974), p.35.

[17] Mary Daly, Beyond God the Father (Beacon Press, 1973), p. 133.

[18] Cathy Levine, “The Tyranny of Tyranny”, Black Rose 1, p.56.

[19] Temma Kaplan of the UCLA history department has done considerable research on women’s anarchist groups (esp. “Mujeres Liberes”) in the Spanish Revolution. See also Liz Willis, Women in the Spanish Revolution, Solidarity Pamphlet No. 48.

[20] See Joreen’s “The Tyranny of Structurelessness”, Second Wave, Vol. 2, No. 1, and Cathy Levine’s “The Tyranny of Tyranny”, Black Rose 1.

[21] Daly, p.55.

[22] Robin Morgan, speech at Boston College, Boston, Mass., Nov., 1973.

[23] Negrin, p.171.

[24] Levine, p.50.

[25] Doigoff, p. 19.

[26] The Cohn-Bendits state that one major mistake in Paris 1968 was the failure to take complete control of the media, especially the radio and TV.

[27] Goldman, “Syndicalism: Its Theory and Practice”, Red Emma Speaks, p.71.

[28] Laurel, “Towards a Woman Vision”, Amazon Quarterly, Vol. 1, Issue 2, p.40.

[29] And, by self-fulfilling I mean not only in terms of survival needs (sufficient food, clothing, shelter. etc.) but psychological needs as well I (e.g., a non-oppressive environment which fosters total freedom of choice before specific, concretely possible alternatives).

[30] Daly, p.23.

[31] Marge Piercy, “Provocation of the Dream”.

[32] Fran Taylor, “A Depressing Discourse on Romance, the Individual Solution, and Related Misfortunes”, Second Wave, Vol. 3, No. 4.

[33] Marge Piercy, “Laying Down the Tower”, To Be of Use (Doubleday, 1973), p.88.

[34] Laurel, p.40.

[35] Piercy, “Provocation of the Dream”.
 
 
 
 
Random | RSS feed | Titles | Authors | Topics | Latest entries | Mobile | Add a new text
theanarchistlibrary.org Ⓐ anarchistnews.org




!https://en.wikipedia.org/wiki/Peggy_Kornegger

Peggy Kornegger
From Wikipedia, the free encyclopedia
Jump to navigation
Jump to search
	
This biography of a living person needs additional citations for verification. Please help by adding reliable sources. Contentious material about living persons that is unsourced or poorly sourced must be removed immediately, especially if potentially libelous or harmful.
Find sources: "Peggy Kornegger" – news · newspapers · books · scholar · JSTOR (March 2012) (Learn how and when to remove this template message)

Peggy Kornegger is an American writer. In the 1970s she identified herself as an anarcha-feminist,[1] and was an editor of the American feminist magazine The Second Wave.[citation needed] Her article "Anarchism: The Feminist Connection" (1975) was reprinted as a booklet in New York City and London in 1977, translated into Italian for a journal in Italy,[2] and included in the book Reinventing Anarchy in 1979.[3] Her book Living with Spirit, Journey of a Flower Child was published in 2009.[4]
Bibliography

    Anarchism: The Feminist Connection (1975)
    Living with Spirit, Journey of a Flower Child (2009)[4]
    Lose Your Mind, Open Your Heart (2014)[citation needed]

References

"Anarchism: The Feminist Connection". The Anarchist Library. Retrieved 2018-03-18.
Peggy Kornegger (1982). La via femminista all'anarchismo. (in Italian) Volontà 36 (4).
Howard J. Ehrlich (1979). Reinventing anarchy: what are anarchists thinking these days. London; Boston: Routledge & Kegan Paul. ISBN 9780710001283.

    Peggy Kornegger (2009). Living with spirit: journey of a flower child. Indianapolis, Indiana: Dog Ear Publishing. ISBN 9781608440580.

External links

    Anarchism: The Feminist Connection
    Anarchism The Feminist Connection

Authority control Edit this at Wikidata	

    ISNI: 0000 0000 2842 2812 LCCN: n86026203 VIAF: 21156268 WorldCat Identities: lccn-n86026203


Stub icon	

This feminism-related article is a stub. You can help Wikipedia by expanding it.
Categories:

    Living peopleAmerican feministsAnarcha-feminists20th-century American women writersAmerican editorsAmerican women editorsFeminism stubs

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Español
    Galego
    Nederlands

Edit links

    This page was last edited on 8 April 2021, at 12:07 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki








!! https://en.wikipedia.org/wiki/Post-Scarcity_Anarchism
Post-Scarcity Anarchism
From Wikipedia, the free encyclopedia
Jump to navigation
Jump to search
Post-Scarcity Anarchism Post Scarcity Anarchism, 1971 edition.JPG
Cover of the first edition
Author	Murray Bookchin
Country	United States
Language	English
Subject	Anarchism
Publisher	Ramparts Press
Publication date
	1971
Media type	Print (Hardcover and Paperback)
Pages	288
ISBN	0-87867-005-X
OCLC	159676
Dewey Decimal
	335/.83
LC Class	HX833 .B63
Part of the Politics series on
Communalism
Concepts
People
Practice
Books
Related topics

    BlackFlagSymbol.svg Anarchism portal
    Red flag II.svg Socialism portal
    A coloured voting box.svg Politics portal

    vte

Post-Scarcity Anarchism is a collection of essays by Murray Bookchin, first published in 1971 by Ramparts Press.[1] In it, Bookchin outlines the possible form anarchism might take under conditions of post-scarcity. One of Bookchin's major works,[2] its author's radical thesis provoked controversy for being utopian in its faith in the liberatory potential of technology.[3]
Contents

    1 Summary
    2 Reception
    3 See also
    4 References
    5 Further reading

Summary

Bookchin's "post-scarcity anarchism" is an economic system based on social ecology, libertarian municipalism, and an abundance of fundamental resources. Bookchin argues that post-industrial societies have the potential to be developed into post-scarcity societies, and can thus imagine "the fulfillment of the social and cultural potentialities latent in a technology of abundance".[3] The self-administration of society is now made possible by technological advancement and, when technology is used in an ecologically sensitive manner, the revolutionary potential of society will be much changed.[4]

Bookchin claims that the expanded production made possible by the technological advances of the twentieth century were in the pursuit of market profit and at the expense of the needs of humans and of ecological sustainability. The accumulation of capital can no longer be considered a prerequisite for liberation, and the notion that obstructions such as the state, social hierarchy, and vanguard political parties are necessary in the struggle for freedom of the working classes can be dispelled as a myth.[4]
Reception

Bookchin's thesis has been seen as a form of anarchism more radical than that of Noam Chomsky; while both concur that information technology, being controlled by the bourgeoisie, is not necessarily liberatory, Bookchin does not refrain from countering this control by developing new, innovative and radical technologies of the self.[3] Postanarchist scholar Lewis Call compares Bookchin's language to that of Marcel Mauss, Georges Bataille and Herbert Marcuse, and notes that Bookchin anticipates the importance of cybernetic technology to the development of human potential over a decade before the origin of cyberpunk.[3] The collection has been cited favourably by Marius de Geus as presenting "inspiring sketches" of the future,[5] and as "an insightful analysis" and "a discussion of revolutionary potential in a technological society" by Peggy Kornegger in her essay "Anarchism: The Feminist Connection".[6]
See also

    Counterrevolution and Revolt
    The Dispossessed
    Abundance (economics)
    Nanosocialism
    Post-scarcity economy
    Social ecology
    List of books about anarchism
! Anarchist law

!! https://en.wikipedia.org/wiki/Anarchist_law

From Wikipedia, the free encyclopedia

Part of the Politics series on
Anarchism
"Circle-A" anarchy symbol
Schools of thought

    TheoryPractice

People
Issues
History
Culture
Economics
By region
Lists
Related topics

    BlackFlagSymbol.svg Anarchism portal
    A coloured voting box.svg Politics portal

    vte

Anarchist law is a body of norms regarding behavior and decision-making that might be operative in an anarchist community. The term is used in a series of ongoing debates within the various branches of anarchist theory regarding if and how norms of individual and/or collective behavior, decision-making and actions should be created and enforced. Although many anarchists would consider "anarchist law" simply synonymous with natural law, others contend law in anarchy would have additional, unique elements. Over the course of the last two hundred years as anarchism has grown and evolved to include diverse strains, there have been different conceptions of "anarchist law" produced and discussed, or used in practice by anarchist networks such as Peoples' Global Action[1] or Indymedia.[2]
Contents

    1 Non-coercion
    2 Consensus-based social contracts
    3 Free association
    4 Mutual aid
    5 Enforceability
    6 Decision-making
    7 Examples
    8 See also
    9 References
    10 Further reading
    11 External links

Non-coercion

The most fundamental maxim of many anarchist tendencies is that no individual has the right to coerce another individual. Including the state, capitalism, or systematic oppression and that everyone has the right to defend his or her self against coercion (the non-aggression principle or zero aggression principle). This basic principle, like mutual aid, is built upon much of anarchist law, and indeed much of anarchist theory. Peter Kropotkin, a prominent anarcho-communist, stated it was "It is best summed up by the maxim 'do unto others as you would have them do unto you.'" In short, anarchist philosophy includes the "Ethic of reciprocity", but typically does not include "turning the other cheek" towards violence of forms of oppression (with the exception of Anarcho pacifism and sometimes Christian anarchism and other nonviolent/pacifistic movements).[3]
Consensus-based social contracts
See also: Consensus democracy

Since the principle of non-coercion makes hierarchical state structures unfeasible, anarchist communities must find an alternative basis for setting the rules of engagement within a collective. Accordingly, virtually all anarchist legal models begin with the assumption that whatever rules are set in place must be freely agreed to by the entirety of the community that is to be governed by them in a setting free from coercion or intimidation. Such freely given consent constitutes a social contract, though the exact nature of such contracts is a matter of heated debate.[4][page needed]

Some anarchist legal theorists hold that an ideal anarchist society should be based strictly on natural law and mutual aid, which require no social contract.[5]

However, many anarchist theorists completely reject natural law as capitalistic and man made. Natural law in this view is disguising authoritarianism but blaming it on an abstract entity so that the "anarchist" does not have to take credit for it. Social anarchists, mutualists and many individualist anarchists reject private property, which is the core basis of most natural law theories.[6]
Free association

Free association (also called voluntary association) also implies the right of individuals to form those exact social contracts. This freedom to not associate means if the terms of a social contract become unacceptable to an individual member or sub-group(s) within a society, the discontented have the right to secede from the contract. They may also form new associations with others that more closely fit their needs.[7]
Mutual aid

The principle of mutual aid, originally identified by Peter Kropotkin as arising from natural law, is that since evolution occurs in groups – not individuals – it is evolutionarily advantageous for members of a community to assist each other. The anarchist approach to building power – and structuring power relationships – is derived from this evolutionary and biological imperative. In a nutshell the argument is that since individuals require the assistance of groups to self-actualize, individuals have a strong self-interest in the good of the community to which they belong. It follows that (freely associating) collectives of individuals working for mutual improvement and mutual goals must form the basis of any anarchist society, thus providing the sociological and economic imperative for the creation of social contracts capable of binding these self-selecting groups together.[8]

In a pre-revolutionary situation, the principle of "mutual aid" is the moral imperative that drives efforts by contemporary anarchists to provide material aid to victims of natural disasters;[9] those that are homeless or poor, and others who have been left without access to food or clean drinking water, or other basic necessities.
Enforceability

Enforceability is one of the most controversial areas of Anarchist law. Early writers such as Proudhon argued that it was legitimate for working-class people to self-organize against criminals who prey on the weak, a process which would unequivocally entail some degree of coercion.[10]

Proudhonian mutualists (and many others) have argued that such use of force by a collective against individuals is justifiable since it is fundamentally defensive in nature. As a more coherent example, communities have a clear interest in tracking down and isolating rapists, murderers, robbers and others who regularly employ coercion against their victims. The right of ordinary people to not be victimized and coerced by such individuals legitimizes their use of coercive force to eliminate such threats. Some individualist anarchists (who argue that any collective action against an individual is illegitimate) hotly dispute this point.[citation needed]

The issue of mandate (on whose behalf an action is being carried out) is much more significant, however, when approaching larger-scale provisions for self-defense such as armies and militias. For individualist anarchists the right of individuals to not be coerced legitimizes the use of coercive violence for personal self-defense only, while for collectivists it is legitimized both for personal self-defense and for defense of ones community. This issue is critical since, while the individualist model makes warfare far less likely by eliminating the rationale for the creation of large bodies of armed men, the collectivist approach makes it much more likely that the community in question will be able to defend itself against a hostile invader should one appear.[citation needed]

Both schools, however, agree that the right and responsibility of self-defense cannot be delegated to a third party – such as a professional police department or standing army – since as soon as a third party becomes involved it is no longer self defense.[citation needed] A non-hierarchical militia composed of members of a community self-organizing for mutual self-defense against a hostile neighbor (such as that organized by the CNT during the Spanish Civil War) would thus be valid in a collectivist (anarchist-communist, social anarchist, anarcho-syndicalist, market-syndicalist, etc.) setting and deemed invalid in an individualist (free market anarchist, egoist, etc.) setting if involuntary. Both, by contrast, would reject a standing army or police department.[citation needed]
Decision-making

Common techniques for decision-making, including decisions about the de facto laws themselves, among non-hierarchical societies include various forms of formal consensus,[2] supermajority voting, "consensus minus one" and direct democracy.[11] Anthropologist David Graeber argues that any community that lacks a centralized mechanism of force (a state) will naturally gravitate toward some form of consensus decision-making.
Examples
See also: List of anarchist communities
See also

    Voluntary association
    Polycentric law
    Privatization in criminal justice
    An Anarchist FAQ

References

"Organisational Principles". Peoples' Global Action. Archived from the original on 15 October 2006. Retrieved 2006-10-29.
"Principles of Unity". Indymedia. Archived from the original on 2016-03-03. Retrieved 2006-10-28.
https://link.springer.com/article/10.1007/s10991-019-09223-1
Tamblyn, Nathan (April 30, 2019). "The Common Ground of Law and Anarchism". Liverpool Law Review. 40 (1): 65–78. doi:10.1007/s10991-019-09223-1. ISSN 1572-8625.
http://anarchism.pageabode.com/sites/anarchism.pageabode.com/files/MAintroduction.pdf
https://theanarchistlibrary.org/library/iain-macsaorsa-the-myth-of-natural-law
https://pdxscholar.library.pdx.edu/cgi/viewcontent.cgi?article=1006&context=econ_workingpapers
http://anarchism.pageabode.com/sites/anarchism.pageabode.com/files/MAintroduction.pdf
Katrina Relief
https://journals.sagepub.com/doi/10.1177/009059177500300107

    "A.2.11 Why are most anarchists in favour of direct democracy?". Infoshop. Archived from the original on 25 October 2006. Retrieved 2006-10-28.

Further reading

    Holterman, Thom; Henc van Maarseveen (1984). Law and Anarchism. Montréal: Black Rose Books. ISBN 0-919619-10-X.

External links

    Anarchist Studies Network Reading List on Anarchism & Law. Archived 22 May 2019.

    vte

Anarchism

    vte

Law
Categories:

    Issues in anarchismPhilosophy of law

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Español
    Português
    Türkçe

Edit links

    This page was last edited on 24 February 2021, at 00:49 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Anhedonia
!! 
!! https://en.wikipedia.org/wiki/Anhedonia

From Wikipedia, the free encyclopedia
Jump to navigation
Jump to search
For other uses, see Anhedonia (disambiguation).
Anhedonia
Pronunciation	

    /ˌænhiˈdoʊniə/ AN-hee-DOH-nee-ə 

Specialty	Psychiatry

Anhedonia is a diverse array of deficits in hedonic function, including reduced motivation or ability to experience pleasure.[1] While earlier definitions emphasized the inability to experience pleasure, anhedonia is currently used by researchers to refer to reduced motivation, reduced anticipatory pleasure (wanting), reduced consummatory pleasure (liking), and deficits in reinforcement learning.[2][3][4] In the DSM-5, anhedonia is a component of depressive disorders, substance-related disorders, psychotic disorders, and personality disorders, where it is defined by either a reduced ability to experience pleasure, or a diminished interest in engaging in pleasurable activities.[5][6] While the ICD-10 does not explicitly mention anhedonia, the depressive symptom analogous to anhedonia as described in the DSM-V is a loss of interest or pleasure.[3]
Contents

    1 Definition
    2 Causes
    3 Occurrence
        3.1 Major depressive disorder
        3.2 Schizophrenia
        3.3 Substance-related disorders
        3.4 Post-traumatic stress disorder
        3.5 Parkinson's disease
        3.6 Bipolar depression
    4 Sexual anhedonia
    5 Social anhedonia
        5.1 Definition
        5.2 Signs and symptoms
        5.3 Background and early clinical observation
        5.4 Comorbidity
            5.4.1 Depression
            5.4.2 Social anxiety
        5.5 Primary relevance in schizophrenia and schizophrenia spectrum disorders
        5.6 Treatment
        5.7 Gender differences
        5.8 Assessing social anhedonia
        5.9 Genetic components
        5.10 Neurobiological correlates
    6 Specific musical anhedonia
    7 See also
    8 References
    9 External links

Definition

While anhedonia was originally defined in 1896 by Théodule-Armand Ribot as the reduced ability to experience pleasure, it has been used to refer to deficits in multiple facets of reward. Re-conceptualizations of anhedonia highlight the independence of "wanting" and "liking". "Wanting" is a component of anticipatory positive affect, mediating both the motivation (i.e. incentive salience) to engage with reward, as well as the positive emotions associated with anticipating a reward. "Liking", on the other hand, is associated with the pleasure derived from consuming a reward.[2][1] The consciousness of reward-related processes has also been used to categorize reward in the context of anhedonia, as studies comparing implicit behavior versus explicit self-reports demonstrate a dissociation of the two.[7] Learning has also been proposed as an independent facet of reward that may be impaired in conditions associated with anhedonia, but empirical evidence dissociating learning from either "liking" or "wanting" is lacking.[7]

Anhedonia has also been used to refer to "affective blunting", "restricted range of affect", "emotional numbing", and "flat affect", particularly in the context of post-traumatic stress disorders. In PTSD patients, scales measuring these symptoms correlate strongly with scales that measure more traditional aspects of anhedonia, supporting this association.[2]
Causes

Studies in clinical populations, healthy populations, and animal models have implicated a number of neurobiological substrates in anhedonia. Regions implicated in anhedonia include the prefrontal cortex as a whole, particularly the orbitofrontal cortex (OFC), the striatum, amygdala, anterior cingulate cortex (ACC), hypothalamus, and ventral tegmental area (VTA).[5][3] Neuroimaging studies in humans have reported that deficits in consummatory aspects of reward are associated with abnormalities in the ventral striatum and medial prefrontal cortex, while deficits in anticipatory aspects of reward are related to abnormalities in hippocampal, dorsal ACC and prefrontal regions. These abnormalities are generally consistent with animal models, except for inconsistent findings with regard to the OFC. This inconsistency may be related to the difficulty in imaging the OFC due to its anatomical location, or the small number of studies performed on anhedonia;[8] a number of studies have reported reduced activity in the OFC in schizophrenia and major depression, as well as a direct relationship between reduced activity and anhedonia.[9] Researchers theorize that anhedonia may result from the breakdown in the brain's reward system, involving the neurotransmitter dopamine. Anhedonia can be characterised as "impaired ability to pursue, experience and/or learn about pleasure, which is often, but not always accessible to conscious awareness".[10]

The conditions of akinetic mutism and negative symptoms are closely related. In akinetic mutism, a stroke or other lesion to the anterior cingulate cortex causes reduction in movement (akinetic) and speech (mutism).[11]
Occurrence
Major depressive disorder

Anhedonia occurs in roughly 70% of people with a major depressive disorder.[2] Anhedonia is a core symptom of major depressive disorder; therefore, individuals experiencing this symptom can be diagnosed with depression, even in the absence of low/depressed mood.[12] The Diagnostic and Statistical Manual of Mental Disorders (DSM) describes a "lack of interest or pleasure", but these can be difficult to discern given that people tend to become less interested in things which do not give them pleasure. The DSM criterion of weight loss is probably related, and many individuals with this symptom describe a lack of enjoyment of food. They can portray any of the non-psychotic symptoms and signs of depression.[13]
Schizophrenia

Anhedonia is one of the negative symptoms of schizophrenia.[2] Although five domains are usually used to classify negative symptoms, factor analysis of questionnaires yield two factors, with one including deficits in pleasure and motivation. People with schizophrenia retrospectively report experiencing fewer positive emotions than healthy individuals. However, "liking" or consummatory pleasure, is intact in schizophrenics, as they report experiencing the same degree of positive affect when presented with rewarding stimuli. Neuroimaging studies support this behavioral observation, as most studies report intact responses in the reward system (i.e. ventral striatum, VTA) to simple rewards. However, studies on monetary rewards sometimes report reduced responsiveness. More consistent reductions are observed with regard to emotional response during reward anticipation, which is reflected in a reduced responsiveness of both cortical and subcortical components of the reward system.[14] Schizophrenia is associated with reduced positive prediction errors (a normal pattern of response to an unexpected reward), which a few studies have demonstrated to be correlated with negative symptoms. Schizophrenics demonstrate impairment in reinforcement learnings tasks only when the task requires explicit learning, or is sufficiently complex. Implicit reinforcement learning, on the other hand, is relatively intact. These deficits may be related to dysfunction in the ACC, OFC and dlPFC leading to abnormal representation of reward and goals.[15]
Substance-related disorders

Anhedonia is common in people who are dependent upon any one or more of a wide variety of drugs, including alcohol, opioids, and nicotine. Although anhedonia becomes less severe over time, it is a significant predictor of relapse.[16]
Post-traumatic stress disorder

While PTSD is associated with reduced motivation, part of the anticipatory "wanting", it is also associated with elevated sensation seeking, and no deficits in physiological arousal, or self reported pleasure to positive stimuli.[17] PTSD is also associated with blunted affect, which may be due to the high comorbidity with depression.[2]
Parkinson's disease

Anhedonia occurs frequently in Parkinson's disease, with rates between 7%–45% being reported. Whether or not anhedonia is related to the high rates of depression in Parkinson's disease is unknown.[18]
Bipolar depression

Anhedonia is also reported to appear in people with bipolar depression.[19]
Sexual anhedonia
Main article: Sexual anhedonia

Sexual anhedonia in males is also known as 'ejaculatory anhedonia'. This condition means that the man will ejaculate with no accompanying sense of pleasure.[20]

The condition is most frequently found in males, but women can suffer from lack of pleasure when the body goes through the orgasm process as well.

Sexual anhedonia may be caused by:

    Hyperprolactinaemia
    Hypoactive sexual desire disorder (HSDD), also called inhibited sexual desire
    Low levels of the hormone testosterone[citation needed]
    Spinal cord injury
    Multiple sclerosis
    Use of SSRI antidepressants or having used SSRI antidepressants in the past.[21]
    Use (or previous use) of antidopaminergic neuroleptics (anti-psychotics)[22][23]
    Fatigue
    Physical illness

It is very uncommon that a neurological examination and blood tests can determine the cause of a specific case of sexual anhedonia.

Patients may be prescribed sustained-release bupropion to aid in treatment, which has been shown to relieve sexual dysfunction even in patients without depression.[24]
Social anhedonia
See also: Asociality and Emotional detachment
Definition

Social anhedonia is defined as a disinterest in social contact and a lack of pleasure in social situations, and is characterized by social withdrawal. This characteristic typically manifests as an indifference to other people.[25] In contrast to introversion, a nonpathological dimension of human personality, social anhedonia represents a deficit in the ability to experience pleasure.[26] Additionally, social anhedonia differs from social anxiety in that social anhedonia is predominantly typified by diminished positive affect, while social anxiety is distinguished by both decreased positive affect and exaggerated negative affect.[27]

This trait is currently seen as a central characteristic, as well as a predictor, of schizophrenia spectrum disorders.[28]
Signs and symptoms

    Decreased ability to experience interpersonal pleasure
    Social withdrawal/isolation
    Decreased capacity for social contact and interaction
    Lack of close friends and intimate relationships, and decreased quality of those relationships
    Poor social adjustment
    Decreased positive affect
    Flat affect
    Depressed mood
    State-related anxiety[28][29]

Background and early clinical observation

The term anhedonia is derived from the Greek an-, "without" and hēdonē, "pleasure".[30] Interest in the nature of pleasure and its absence dates back to ancient Greek philosophers such as Epicurus.[3] The symptoms of anhedonia were introduced to the realm of psychopathology in 1809 by John Haslam, who characterized a patient suffering from schizophrenia as indifferent to "those objects and pursuits which formerly proved sources of delight and instruction".[31] The concept was formally coined by Théodule-Armand Ribot and later used by psychiatrists Paul Eugen Bleuler and Emil Kraepelin to describe a core symptom of schizophrenia.[3] In particular, Rado postulated that schizotypes, or individuals with the schizophrenic phenotype, have two key genetic deficits, one related to the ability to feel pleasure (anhedonia) and one related to proprioception. In 1962 Meehl furthered Rado's theory through the introduction of the concept of schizotaxia, a genetically-driven neural integrative defect thought to give rise to the personality type of schizotypy.[32] Loren and Jean Chapman further distinguished between two types of anhedonia: physical anhedonia, or a deficit in the ability to experience physical pleasure, and social, or a deficit in the ability to experience interpersonal pleasure.[33]

Recent research suggests that social anhedonia may represent a prodrome of psychotic disorders.[25][26][34] First-degree relatives of individuals with schizophrenia show elevated levels of social anhedonia,[35] higher baseline scores of social anhedonia are associated with later development of schizophrenia.[36] These findings provide support for the conjecture that it represents a genetic risk marker for schizophrenia-spectrum disorders.

Additionally, elevated levels of social anhedonia in patients with schizophrenia have been linked to poorer social functioning.[37][38] Socially anhedonic individuals perform worse on a number of neuropsychological tests than non-anhedonic participants,[39][40] and show similar physiological abnormalities seen in patients with schizophrenia.[40]
Comorbidity

Anhedonia is present in several forms of psychopathology.[41]
Depression

Social anhedonia is observed in both depression and schizophrenia. However, social anhedonia is a state related to the depressive episode and the other is trait related to the personality construct associated with schizophrenia. These individuals both tend to score highly on self-report measures of social anhedonia. Blanchard, Horan, and Brown demonstrated that, although both the depression and the schizophrenia patient groups can look very similar in terms of social anhedonia cross-sectionally, over time as individuals with depression experience symptom remission, they show fewer signs of social anhedonia, while individuals with schizophrenia do not.[42] Blanchard and colleagues (2011) found individuals with social anhedonia also had elevated rates of lifetime mood disorders including depression and dysthymia compared to controls.[43]
Social anxiety

As mentioned above, social anxiety and social anhedonia differ in important ways.[27] However, social anhedonia and social anxiety are also often comorbid. People with social anhedonia may display increased social anxiety and be at increased risk for social phobias and generalized anxiety disorder.[44] It has yet to be determined what the exact relationship between social anhedonia and social anxiety is, and if one potentiates the other.[45] Individuals with social anhedonia may display increased stress reactivity, meaning that they feel more overwhelmed or helpless in response to a stressful event compared to control subjects who experience the same type of stressor. This dysfunctional stress reactivity may correlate with hedonic capacity, providing a potential explanation for the increased anxiety symptoms experienced in people with social anhedonia.[46] In an attempt to separate out social anhedonia from social anxiety, the Revised Social Anhedonia Scale[47] didn't include items that potentially targeted social anxiety.[28] However, more research must be conducted on the underlying mechanisms through which social anhedonia overlaps and interacts with social anxiety. The efforts of the "social processes" RDoC initiative will be crucial in differentiating between these components of social behavior that may underlie mental illnesses such as schizophrenia.
Primary relevance in schizophrenia and schizophrenia spectrum disorders

Social anhedonia is a core characteristic of schizotypy, which is defined as a continuum of personality traits that can range from normal to disordered and contributes to risk for psychosis and schizophrenia.[48] Social anhedonia is a dimension of both negative and positive schizotypy.[49] It involves social and interpersonal deficits, but is also associated with cognitive slippage and disorganized speech, both of which fall into the category of positive schizotypy.[50][51][52] Not all people with schizophrenia display social anhedonia[53] and likewise, people who have social anhedonia may never be diagnosed with a schizophrenia-spectrum disorder if they do not have the positive and cognitive symptoms that are most frequently associated with most schizophrenia-spectrum disorders.[54]

Social anhedonia may be a valid predictor of future schizophrenia-spectrum disorders;[44][54] young adults with social anhedonia perform in a similar direction to schizophrenia patients in tests of cognition and social behavior, showing potential predictive validity.[36][50] Social anhedonia usually manifests in adolescence, possibly because of a combination of the occurrence of critical neuronal development and synaptic pruning of brain regions important for social behavior and environmental changes, when adolescents are in the process of becoming individuals and gaining more independence.
Treatment

There is no validated treatment for social anhedonia.[45] Future research should focus on genetic and environmental risk factors to home in on specific brain regions and neurotransmitters that may be implicated in social anhedonia's cause and could be targeted with medication or behavioral treatments. Social support may also play a valuable role in the treatment of social anhedonia. Blanchard et al.[43] found that a greater number of social supports, as well as a greater perceived social support network, were related to fewer schizophrenia-spectrum symptoms and to better general functioning within the social anhedonia group. So far, no medicine has been developed to specifically target anhedonia.
Gender differences

In the general population, males score higher than females on measures of social anhedonia.[55] This sex difference is stable throughout time (from adolescence into adulthood) and is also seen in people with schizophrenia-spectrum disorders. These results may reflect a more broad pattern of interpersonal and social deficits seen in schizophrenia-spectrum disorders.[56] On average, males with schizophrenia are diagnosed at a younger age, have more severe symptoms, worse treatment prognosis, and a decrease in overall quality of life compared to females with the disorder.[57] These results, coupled with the sex difference seen in social anhedonia, outline the necessity for research on genetic and hormonal characteristics that differ between males and females, and that may increase risk or resilience for mental illnesses such as schizophrenia.[58]
Assessing social anhedonia

There are several self-report psychometric measures of schizotypy which each contain subscales related to social anhedonia:

    Revised Social Anhedonia Scale—Chapman Psychosis Proneness Scales[47][53]
    No Close Friends Subscale—Schizotypyal Personality Questionnaire[59]
    Introverted Anhedonia Subscale—Oxford–Liverpool Inventory of Feelings and Experiences[60]

Genetic components

L.J. and J.P. Chapman were the first to discuss the possibility that social anhedonia may stem from a genetic vulnerability.[53] The Disrupted in Schizophrenia 1 (DISC1) gene has been consistently associated with risk for, and cause of, schizophrenia-spectrum disorders and other mental illnesses.[61] More recently, DISC1 has been associated with social anhedonia within the general population.[62] Tomppo identified a specific DISC1 allele that is associated with an increase in characteristics of social anhedonia. They also identified a DISC1 allele associated with decreased characteristics of social anhedonia, that was found to be preferentially expressed in women. More research needs to be conducted, but social anhedonia may be an important intermediate phenotype (endophenotype) between genes associated with risk for schizophrenia and phenotype of the disorder.[63]
Neurobiological correlates

Researchers studying the neurobiology of social anhedonia posit that this trait may be linked to dysfunction of reward-related systems in the brain. This circuitry is critical for the sensation of pleasure, the computation of reward benefits and costs, determination of the effort required to obtain a pleasant stimulus, deciding to obtain that stimulus, and increasing motivation to obtain the stimulus. In particular, the ventral striatum and areas of the prefrontal cortex (PFC), including the orbitofrontal cortex (OFC) and dorsolateral (dl) PFC, are critically involved in the experience of pleasure and the hedonic perception of rewards. With regards to neurotransmitter systems, opioid, gamma-Aminobutyric acid and endocannabinoid systems in the nucleus accumbens, ventral pallidum, and OFC mediate the hedonic perception of rewards.[3] Activity in the PFC and ventral striatum have been found to be decreased in anhedonic individuals with major depressive disorder (MDD) and schizophrenia. However, schizophrenia may be less associated with decreased hedonic capacity and more with deficient reward appraisal.[64][65]
Specific musical anhedonia
Main article: Musical anhedonia

Recent studies have found people who do not have any issue processing musical tones or beat, yet receive no pleasure from listening to music.[66] Specific musical anhedonia is distinct from melophobia, the fear of music.
See also

    Avolition
    Clinical depression
    Dysthymia
    Schizophrenia

References

Rizvi SJ, Pizzagalli DA, Sproule BA, Kennedy SH (June 2016). "Assessing anhedonia in depression: Potentials and pitfalls". Neuroscience and Biobehavioral Reviews. 65: 21–35. doi:10.1016/j.neubiorev.2016.03.004. PMC 4856554. PMID 26959336.
Shankman S, Katz A, DeLizza A, Sarapas C, Gorka S, Campbell M (2014). "The Different Facets of Anhedonia and Their Associations with Different Psychopathologies". In Ritsner M (ed.). Anhedonia : a comprehensive handbook. Dordrecht: Springer Netherlands. p. 3. ISBN 978-94-017-8590-7. "However, there are two components to the positive affect experienced in rewarding situations - anticipatory positive affect (APA) and cunsummatory positive affect (CPA)...Berridge and Robinson [2] describe these constructs as 'wanting' and 'liking', respectively."
Der-Avakian A, Markou A (January 2012). "The neurobiology of anhedonia and other reward-related deficits". Trends in Neurosciences. 35 (1): 68–77. doi:10.1016/j.tins.2011.11.005. PMC 3253139. PMID 22177980.
Treadway MT, Zald DH (January 2011). "Reconsidering anhedonia in depression: lessons from translational neuroscience". Neuroscience and Biobehavioral Reviews. 35 (3): 537–55. doi:10.1016/j.neubiorev.2010.06.006. PMC 3005986. PMID 20603146.
Rømer Thomsen K, Whybrow PC, Kringelbach ML (2015). "Reconceptualizing anhedonia: novel perspectives on balancing the pleasure networks in the human brain". Frontiers in Behavioral Neuroscience. 9: 49. doi:10.3389/fnbeh.2015.00049. PMC 4356228. PMID 25814941.
American Psychiatric Association (2013). Diagnostic and statistical manual of mental disorders : DSM-5 (5th ed.). Washington, D.C.: American Psychiatric Association. pp. 126, 202, 259, 350, 569, 582, 598, 603, 793, 800, 806, 842. ISBN 978-0-89042-554-1.
Thomsen KR (2015). "Measuring anhedonia: impaired ability to pursue, experience, and learn about reward". Frontiers in Psychology. 6: 1409. doi:10.3389/fpsyg.2015.01409. PMC 4585007. PMID 26441781.
Zhang B, Lin P, Shi H, Öngür D, Auerbach RP, Wang X, et al. (September 2016). "Mapping anhedonia-specific dysfunction in a transdiagnostic approach: an ALE meta-analysis". Brain Imaging and Behavior. 10 (3): 920–39. doi:10.1007/s11682-015-9457-6. PMC 4838562. PMID 26487590.
Preda A (2014). "Brain Imaging Correlates of Anhedonia". In Ritsner M (ed.). Anhedonia: A Comprehensive Handbook Volume I: Conceptual Issues And Neurobiological Advances. Springer. ISBN 978-94-017-8590-7.
Thomsen KR (17 September 2015). "Measuring anhedonia: impaired ability to pursue, experience, and learn about reward". Frontiers in Psychology. 6: 1409. doi:10.3389/fpsyg.2015.01409. PMC 4585007. PMID 26441781.
Tekin S, Cummings JL (August 2002). "Frontal-subcortical neuronal circuits and clinical neuropsychiatry: an update". Journal of Psychosomatic Research. 53 (2): 647–54. doi:10.1016/S0022-3999(02)00428-2. PMID 12169339.
American Psychiatric Association. (2013). Diagnostic and statistical manual of mental disorders: DSM-5. Washington, D.C: American Psychiatric Association.
Tomb DA (2007). Psychiatry. Lippincott Williams & Wilkins. p. 44. ISBN 978-0-7817-7452-9.
Kring AM, Barch DM (May 2014). "The motivation and pleasure dimension of negative symptoms: neural substrates and behavioral outputs". European Neuropsychopharmacology. 24 (5): 725–36. doi:10.1016/j.euroneuro.2013.06.007. PMC 4020953. PMID 24461724.
Barch DM, Pagliaccio D, Luking K (2016). "Mechanisms Underlying Motivational Deficits in Psychopathology: Similarities and Differences in Depression and Schizophrenia". Current Topics in Behavioral Neurosciences. 27: 411–49. doi:10.1007/7854_2015_376. ISBN 978-3-319-26933-7. PMID 26026289.
Garfield JB, Lubman DI, Yücel M (January 2014). "Anhedonia in substance use disorders: a systematic review of its nature, course and clinical correlates". The Australian and New Zealand Journal of Psychiatry. 48 (1): 36–51. doi:10.1177/0004867413508455. PMID 24270310. S2CID 5509985.
Nawijn L, van Zuiden M, Frijling JL, Koch SB, Veltman DJ, Olff M (April 2015). "Reward functioning in PTSD: a systematic review exploring the mechanisms underlying anhedonia". Neuroscience and Biobehavioral Reviews. 51: 189–204. doi:10.1016/j.neubiorev.2015.01.019. PMID 25639225. S2CID 24604303.
Loas G, Krystkowiak P, Godefroy O (2012). "Anhedonia in Parkinson's disease: an overview". The Journal of Neuropsychiatry and Clinical Neurosciences. 24 (4): 444–51. doi:10.1176/appi.neuropsych.11110332. PMID 23224450.
Gałuszko-Węgielnik, Maria; Wiglusz, Mariusz Stanisław; Słupski, Jakub; Szałach, Łukasz; Włodarczk, Adam; Górska, Natalia; Szarmach, Joanna; Jakuszkowiak-Wojten, Katarzyna; Wilkowska, Alina; Cubała, Wiesław Jerzy (2019). "Efficacy of Ketamine in bipolar depression: focus on anhedonia". Psychiatria Danubina. 31 (Suppl 3): 554–560. PMID 31488790.
Gray M, Zillioux J, Khourdaji I, Smith RP (August 2018). "Contemporary management of ejaculatory dysfunction". Translational Andrology and Urology. 7 (4): 686–702. doi:10.21037/tau.2018.06.20. PMC 6127532. PMID 30211060.
Csoka AB, Csoka A, Bahrick A, Mehtonen OP (January 2008). "Persistent sexual dysfunction after discontinuation of selective serotonin reuptake inhibitors". The Journal of Sexual Medicine. 5 (1): 227–33. doi:10.1111/j.1743-6109.2007.00630.x. PMID 18173768.
Tupala E, Haapalinna A, Viitamaa T, Männistö PT, Saano V (June 1999). "Effects of repeated low dose administration and withdrawal of haloperidol on sexual behaviour of male rats". Pharmacology & Toxicology. 84 (6): 292–5. doi:10.1111/j.1600-0773.1999.tb01497.x. PMID 10401732.
Martin-Du Pan R (1978). "[Neuroleptics and sexual dysfunction in man. Neuroendocrine aspects]". Schweizer Archiv für Neurologie, Neurochirurgie und Psychiatrie = Archives Suisses de Neurologie, Neurochirurgie et de Psychiatrie. 122 (2): 285–313. PMID 29337.
Crenshaw TL, Goldberg JP, Stern WC (1987). "Pharmacologic modification of psychosexual dysfunction". Journal of Sex & Marital Therapy. 13 (4): 239–52. doi:10.1080/00926238708403896. PMID 3121861.
Blanchard JJ, Gangestad SW, Brown SA, Horan WP (February 2000). "Hedonic capacity and schizotypy revisited: a taxometric analysis of social anhedonia". Journal of Abnormal Psychology. 109 (1): 87–95. doi:10.1037/0021-843x.109.1.87. PMID 10740939.
Silvia PJ, Kwapil TR (December 2011). "Aberrant asociality: how individual differences in social anhedonia illuminate the need to belong" (PDF). Journal of Personality. 79 (6): 1315–32. doi:10.1111/j.1467-6494.2010.00702.x. PMID 21480908.
Brown LH, Silvia PJ, Myin-Germeys I, Lewandowski KE, Kwapil TR (2008). "The relationship of social anxiety and social anhedonia to psychometrically identified schizotypy". Journal of Social and Clinical Psychology. 27 (2): 127–149. doi:10.1521/jscp.2008.27.2.127. S2CID 4638662.
Kwapil TR (November 1998). "Social anhedonia as a predictor of the development of schizophrenia-spectrum disorders" (PDF). Journal of Abnormal Psychology. 107 (4): 558–65. doi:10.1037/0021-843x.107.4.558. PMID 9830243.
Mishlove M, Chapman LJ (August 1985). "Social anhedonia in the prediction of psychosis proneness". Journal of Abnormal Psychology. 94 (3): 384–96. doi:10.1037/0021-843x.94.3.384. PMID 4031235.
Di Giannantonio M, Martinotti G (2012). "Anhedonia and major depression: the role of agomelatine". European Neuropsychopharmacology. 22 Suppl 3 (Suppl 3): S505-10. doi:10.1016/j.euroneuro.2012.07.004. PMID 22959116. S2CID 31970160.
Noll R (1959). The encyclopedia of schizophrenia and other psychotic disorders. New York: Facts on File.
Meehl PE (October 1989). "Schizotaxia revisited". Archives of General Psychiatry. 46 (10): 935–44. doi:10.1001/archpsyc.1989.01810100077015. PMID 2552952.
Kontaxakis VP, Kollias CT, Havaki-Kontaxaki BJ, Margariti MM, Stamouli SS, Petridou E, Christodoulou GN (January 2006). "Physical anhedonia in the acute phase of schizophrenia". Annals of General Psychiatry. 5: 1. doi:10.1186/1744-859X-5-1. PMC 1360074. PMID 16417645.
Mann MC (2006). Verbal and Nonverbal Expressions as Indicators of Social and Emotional Functioning among Social Anhedonics (Thesis). hdl:1903/3594. Master's Thesis. University of Maryland, College Park. College Park, MD.
Cohen AS, Emmerson LC, Mann MC, Forbes CB, Blanchard JJ (June 2010). "Schizotypal, schizoid and paranoid characteristics in the biological parents of social anhedonics". Psychiatry Research. 178 (1): 79–83. doi:10.1016/j.psychres.2008.07.018. PMC 2914210. PMID 20452676.
Gooding DC, Tallent KA, Matts CW (February 2005). "Clinical status of at-risk individuals 5 years later: further validation of the psychometric high-risk strategy". Journal of Abnormal Psychology. 114 (1): 170–5. doi:10.1037/0021-843x.114.1.170. PMID 15709824.
Blanchard JJ, Mueser KT, Bellack AS (1998). "Anhedonia, positive and negative affect, and social functioning in schizophrenia". Schizophrenia Bulletin. 24 (3): 413–24. doi:10.1093/oxfordjournals.schbul.a033336. PMID 9718633.
Blanchard JJ, Bellack AS, Mueser KT (November 1994). "Affective and social-behavioral correlates of physical and social anhedonia in schizophrenia". Journal of Abnormal Psychology. 103 (4): 719–28. doi:10.1037/0021-843x.103.4.719. PMID 7822573.
Laurent A, Biloa-Tang M, Bougerol T, Duly D, Anchisi AM, Bosson JL, et al. (December 2000). "Executive/attentional performance and measures of schizotypy in patients with schizophrenia and in their nonpsychotic first-degree relatives". Schizophrenia Research. 46 (2–3): 269–83. doi:10.1016/s0920-9964(99)00232-7. PMID 11120438. S2CID 30892673.
Cohen AS, Leung WW, Saperstein AM, Blanchard JJ (July 2006). "Neuropsychological functioning and social anhedonia: results from a community high-risk study". Schizophrenia Research. 85 (1–3): 132–41. doi:10.1016/j.schres.2006.03.044. PMID 16730428. S2CID 1217377.
American Psychiatric Association: Diagnostic and Statistical Manual of Mental Disorders, Fourth Edition, Text Revision. (2000). Washington, DC, American Psychiatric Association.
Blanchard JJ, Horan WP, Brown SA (August 2001). "Diagnostic differences in social anhedonia: a longitudinal study of schizophrenia and major depressive disorder". Journal of Abnormal Psychology. 110 (3): 363–71. doi:10.1037/0021-843x.110.3.363. PMID 11502079.
Blanchard JJ, Collins LM, Aghevli M, Leung WW, Cohen AS (May 2011). "Social anhedonia and schizotypy in a community sample: the Maryland longitudinal study of schizotypy". Schizophrenia Bulletin. 37 (3): 587–602. doi:10.1093/schbul/sbp107. PMC 3080671. PMID 19850669.
Rey G, Jouvent R, Dubal S (July 2009). "Schizotypy, depression, and anxiety in physical and social anhedonia". Journal of Clinical Psychology. 65 (7): 695–708. doi:10.1002/jclp.20577. PMID 19388058.
Horan WP, Kring AM, Blanchard JJ (April 2006). "Anhedonia in schizophrenia: a review of assessment strategies". Schizophrenia Bulletin. 32 (2): 259–73. doi:10.1093/schbul/sbj009. PMC 2632206. PMID 16221997.
Horan WP, Brown SA, Blanchard JJ (January 2007). "Social anhedonia and schizotypy: the contribution of individual differences in affective traits, stress, and coping". Psychiatry Research. 149 (1–3): 147–56. doi:10.1016/j.psychres.2006.06.002. PMID 17109970. S2CID 19360803.
Eckblad, M.L., Chapman, L.J., Chapman, J.P., & Mishlove, M. (1982). The Revised Social Anhedonia Scale Archived 10 June 2016 at the Wayback Machine. Unpublished test
Meehl PE (1962). "Schizotaxia, schizotypy, schizophrenia". The American Psychologist. 17 (12): 827–838. CiteSeerX 10.1.1.462.2509. doi:10.1037/h0041029.
Kwapil TR, Barrantes-Vidal N, Silvia PJ (May 2008). "The dimensional structure of the Wisconsin Schizotypy Scales: factor identification and construct validity". Schizophrenia Bulletin. 34 (3): 444–57. doi:10.1093/schbul/sbm098. PMC 2632435. PMID 17768308.
Gooding DC, Tallent KA, Hegyi JV (November 2001). "Cognitive slippage in schizotypic individuals". The Journal of Nervous and Mental Disease. 189 (11): 750–6. doi:10.1097/00005053-200111000-00004. PMID 11758658. S2CID 41424766.
Kerns JG (August 2006). "Schizotypy facets, cognitive control, and emotion". Journal of Abnormal Psychology. 115 (3): 418–27. CiteSeerX 10.1.1.334.7113. doi:10.1037/0021-843X.115.3.418. PMID 16866583.
Collins LM, Blanchard JJ, Biondo KM (October 2005). "Behavioral signs of schizoidia and schizotypy in social anhedonics". Schizophrenia Research. 78 (2–3): 309–22. doi:10.1016/j.schres.2005.04.021. PMID 15950438. S2CID 36987880.
Chapman LJ, Chapman JP, Raulin ML (August 1976). "Scales for physical and social anhedonia". Journal of Abnormal Psychology. 85 (4): 374–82. doi:10.1037/0021-843x.85.4.374. PMID 956504.
Chapman LJ, Chapman JP, Kwapil TR, Eckblad M, Zinser MC (May 1994). "Putatively psychosis-prone subjects 10 years later". Journal of Abnormal Psychology. 103 (2): 171–83. doi:10.1037/0021-843x.103.2.171. PMID 8040487.
Fonseca-Pedrero E, Lemos-Giráldez S, Muñiz J, García-Cueto E, Campillo-Alvarez A (February 2008). "Schizotypy in adolescence: the role of gender and age". The Journal of Nervous and Mental Disease. 196 (2): 161–5. doi:10.1097/nmd.0b013e318162aa79. PMID 18277226. S2CID 35632524.
Miettunen J, Jääskeläinen E (March 2010). "Sex differences in Wisconsin Schizotypy Scales--a meta-analysis". Schizophrenia Bulletin. 36 (2): 347–58. doi:10.1093/schbul/sbn075. PMC 2833110. PMID 18644855.
Leung A, Chue P (2000). "Sex differences in schizophrenia, a review of the literature". Acta Psychiatrica Scandinavica. Supplementum. 101 (401): 3–38. doi:10.1111/j.0065-1591.2000.0ap25.x. PMID 10887978.
Jessen HM, Auger AP (July 2011). "Sex differences in epigenetic mechanisms may underlie risk and resilience for mental health disorders". Epigenetics. 6 (7): 857–61. doi:10.4161/epi.6.7.16517. PMC 3154426. PMID 21617370.
Raine A (1991). "The SPQ: a scale for the assessment of schizotypal personality based on DSM-III-R criteria". Schizophrenia Bulletin. 17 (4): 555–64. doi:10.1093/schbul/17.4.555. PMID 1805349.
Mason O, Claridge G, Jackson M (1995). "New scales for the assessment of schizotypy". Personality and Individual Differences. 18: 7–13. doi:10.1016/0191-8869(94)00132-c.
Brandon NJ, Sawa A (November 2011). "Linking neurodevelopmental and synaptic theories of mental illness through DISC1". Nature Reviews. Neuroscience. 12 (12): 707–22. doi:10.1038/nrn3120. PMC 3954824. PMID 22095064.
Tomppo L, Hennah W, Miettunen J, Järvelin MR, Veijola J, Ripatti S, et al. (February 2009). "Association of variants in DISC1 with psychosis-related traits in a large population cohort". Archives of General Psychiatry. 66 (2): 134–41. doi:10.1001/archgenpsychiatry.2008.524. PMC 2704396. PMID 19188535.
Umesh, Shreekantiah; Nizamie, S Haque; Goyal, Nishant; Tikka, Saikrishna; Bose, Swarnali (June 2018). "Social anhedonia and gamma band abnormalities as a composite/multivariate endophenotype for schizophrenia: a dense array EEG study: Multivariate endophenotype: schizophrenia". Early Intervention in Psychiatry. 12 (3): 362–371. doi:10.1111/eip.12327. PMID 27001559. S2CID 46562313.
Wolf DH (August 2006). "Anhedonia in schizophrenia". Current Psychiatry Reports. 8 (4): 322–8. doi:10.1007/s11920-006-0069-0. PMID 16879797. S2CID 33957605.
Gold JM, Waltz JA, Prentice KJ, Morris SE, Heerey EA (September 2008). "Reward processing in schizophrenia: a deficit in the representation of value". Schizophrenia Bulletin. 34 (5): 835–47. doi:10.1093/schbul/sbn068. PMC 2518641. PMID 18591195.

    Mas-Herrero E, Zatorre RJ, Rodriguez-Fornells A, Marco-Pallarés J (March 2014). "Dissociation between musical and monetary reward responses in specific musical anhedonia". Current Biology. 24 (6): 699–704. doi:10.1016/j.cub.2014.01.068. PMID 24613311.

External links
Classification	
D

    MeSH: D059445

	Look up anhedonia in Wiktionary, the free dictionary.

    Anhedonia - Bipolar Disorder Symptoms
    No Pleasure, No Reward

    vte

Mood disorder
History	

    Emil Kraepelin Karl Leonhard John Cade Mogens Schou Frederick K. Goodwin Kay Redfield Jamison

Symptoms	

    Hallucination Delusion Emotional dysregulation
        Anhedonia Dysphoria Suicidal ideation Mood swing Sleep disorder
        Hypersomnia Insomnia Psychosis Racing thoughts Reduced affect display Depression (differential diagnoses)

Spectrum	

    Bipolar disorder
        Bipolar I Bipolar II Cyclothymia Bipolar NOS Depression
        Major depressive disorder Dysthymia Seasonal affective disorder Atypical depression Melancholic depression Schizoaffective disorder Mania Mixed affective state Hypomania Major depressive episode Rapid cycling

Treatment	
Anticonvulsants	

    Carbamazepine Lamotrigine Oxcarbazepine Valproate
        Sodium valproate Valproate semisodium

Sympathomimetics,
SSRIs and similar	

    Dextroamphetamine Methylphenidate Bupropion Sertraline Fluoxetine Escitalopram

Other mood stabilizers	

    Antipsychotics Lithium
        Lithium carbonate Lithium citrate Lithium sulfate Lithium toxicity Atypical antipsychotics

Non-pharmaceutical	

    Clinical psychology Electroconvulsive therapy Involuntary commitment Light therapy Psychotherapy Transcranial magnetic stimulation Cognitive behavioral therapy Dialectical behavior therapy

Authority control Edit this at Wikidata	

    GND: 4228520-3 LCCN: sh87000813 MA: 2778941446

Categories:

    Symptoms and signs: Cognition, perception, emotional state and behaviourMood disordersMajor depressive disorder

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Français
    Italiano
    Português
    Русский
    Tiếng Việt
    中文

Edit links

    This page was last edited on 6 May 2021, at 19:01 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Anomie
!! 
!! https://en.wikipedia.org/wiki/Anomie

From Wikipedia, the free encyclopedia
Jump to navigation
Jump to search
For other uses, see Anomie (disambiguation).
Part of a series on
Sociology
Social Network Diagram (segment).svg

    History Outline Index

Methods
Subfields

    Criminology Critical theory Culture Demography Development Deviance Economic Education Environmental Family Feminist Gender Health Immigration Industrial Knowledge Law Literature Medical Military Organizational Political Race and ethnicity Religion Rural Science Social movements Social psychology Symbolic interactionism Stratification Technology Terrorism Urban

People
Historical perspectives
Lists

    Social sciences.svg Society portal

    vte

Criminology and penology
Pentonvilleiso19.jpg
Theory

    Anomie Biosocial criminology Broken windows Collective efficacy Crime analysis Criminalization Differential association Deviance Labeling theory Psychopathy Rational choice Social control Social disorganization Social learning Strain Subculture Symbolic interactionism Victimology

Types of crime
Methods
Penology
Schools
Subfields
Browse

    vte

In sociology, anomie (/ˈænəˌmi/) is a societal condition defined by an uprooting or breakdown of any moral values, standards or guidance for individuals to follow.[1][2] Anomie may evolve from conflict of belief systems[3] and causes breakdown of social bonds between an individual and the community (both economic and primary socialization).[4] E.g. alienation in a person that can progress into a dysfunctional inability to integrate within normative situations of their social world like to find a job, find success in relationships, etc.

The term, commonly understood to mean normlessness, is believed to have been popularized by French sociologist Émile Durkheim in his influential book Suicide (1897). However, Durkheim first introduced the concept of anomie in his 1893 work The Division of Labour in Society. Durkheim never used the term normlessness;[5] rather, he described anomie as "derangement," and "an insatiable will."[6][need quotation to verify] Durkheim used the term "the malady of the infinite" because desire without limit can never be fulfilled; it only becomes more intense.[7]

For Durkheim, anomie arises more generally from a mismatch between personal or group standards and wider social standards; or from the lack of a social ethic, which produces moral deregulation and an absence of legitimate aspirations. This is a nurtured condition:

    Most sociologists associate the term with Durkheim, who used the concept to speak of the ways in which an individual's actions are matched, or integrated, with a system of social norms and practices…anomie is a mismatch, not simply the absence of norms. Thus, a society with too much rigidity and little individual discretion could also produce a kind of anomie…[8]

Contents

    1 History
    2 Etymology
    3 Social disorder
    4 Synnomie
    5 In culture
    6 See also
    7 References
        7.1 Sources
    8 External links

History

In 1893, Durkheim introduced the concept of anomie to describe the mismatch of collective guild labour to evolving societal needs when the guild was homogeneous in its constituency. He equated homogeneous (redundant) skills to mechanical solidarity whose inertia hindered adaptation. He contrasted this with the self-regulating behaviour of a division of labour based on differences in constituency, equated to organic solidarity, whose lack of inertia made it sensitive to needed changes.

Durkheim observed that the conflict between the evolved organic division of labour and the homogeneous mechanical type was such that one could not exist in the presence of the other.[9]:182–3 When solidarity is organic, anomie is impossible, as sensitivity to mutual needs promotes evolution in the division of labour:[9]:368–9

    Producers, being near consumers, can easily reckon the extent of the needs to be satisfied. Equilibrium is established without any trouble and production regulates itself. 

Durkheim contrasted the condition of anomie as being the result of a malfunction of organic solidarity after the transition to mechanical solidarity:[9]:368–9

    But on the contrary, if some opaque environment is interposed…relations [are] rare, are not repeated enough…are too intermittent. Contact is no longer sufficient. The producer can no longer embrace the market at a glance, nor even in thought. He can no longer see its limits, since it is, so to speak limitless. Accordingly, production becomes unbridled and unregulated.

Durkheim's use of anomie was in regards to the phenomenon of industrialization—mass-regimentation that could not adapt due to its own inertia. More specifically, its resistance to change causes disruptive cycles of collective behavior (e.g. economics) due to the necessity of a prolonged buildup of sufficient force or momentum to overcome the inertia.

Later in 1897, in his studies of suicide, Durkheim associated anomie to the influence of a lack of norms or norms that were too rigid. However, such normlessness or norm-rigidity was a symptom of anomie, caused by the lack of differential adaptation that would enable norms to evolve naturally due to self-regulation, either to develop norms where none existed or to change norms that had become rigid and obsolete.

In 1938, Robert K. Merton linked anomie with deviance, arguing that the discontinuity between culture and structure have the dysfunctional consequence of leading to deviance within society. He described 5 types of deviance in terms of the acceptance or rejection of social goals and the institutionalized means of achieving them.[10]
Etymology
See also: Antinomianism

The term anomie—"a reborrowing with French spelling of anomy"[11]—comes from Greek: anomía (ἀνομία, 'lawlessness'),[12][13] namely the privative alpha prefix (a-, 'without'), and nomos (νόμος, 'law'). The Greeks distinguished between nomos, and arché (ἀρχή, 'starting rule, axiom, principle'). For example, a monarch is a single ruler but he may still be subject to, and not exempt from, the prevailing laws, i.e. nomos. In the original city state democracy, the majority rule was an aspect of arché because it was a rule-based, customary system, which may or may not make laws, i.e. nomos. Thus, the original meaning of anomie defined anything or anyone against or outside the law, or a condition where the current laws were not applied resulting in a state of illegitimacy or lawlessness.

The contemporary English understanding of the word anomie can accept greater flexibility in the word "norm", and some have used the idea of normlessness to reflect a similar situation to the idea of anarchy. However, as used by Émile Durkheim and later theorists, anomie is a reaction against or a retreat from the regulatory social controls of society, and is a completely separate concept from anarchy, which consists of the absence of the roles of rulers and submitted.
Social disorder

Nineteenth-century French pioneer sociologist Émile Durkheim borrowed the term anomie from French philosopher Jean-Marie Guyau. Durkheim used it in his influential book Suicide (1897) in order to outline the social (and not individual) causes of suicide, characterized by a rapid change of the standards or values of societies (often erroneously referred to as normlessness), and an associated feeling of alienation and purposelessness. He believed that anomie is common when the surrounding society has undergone significant changes in its economic fortunes, whether for better or for worse and, more generally, when there is a significant discrepancy between the ideological theories and values commonly professed and what was actually achievable in everyday life. This was contrary to previous theories on suicide which generally maintained that suicide was precipitated by negative events in a person's life and their subsequent depression.

In Durkheim's view, traditional religions often provided the basis for the shared values which the anomic individual lacks. Furthermore, he argued that the division of labor that had been prevalent in economic life since the Industrial Revolution led individuals to pursue egoistic ends rather than seeking the good of a larger community. Robert King Merton also adopted the idea of anomie to develop strain theory, defining it as the discrepancy between common social goals and the legitimate means to attain those goals. In other words, an individual suffering from anomie would strive to attain the common goals of a specific society yet would not be able to reach these goals legitimately because of the structural limitations in society. As a result, the individual would exhibit deviant behavior. Friedrich Hayek notably uses the word anomie with this meaning.

According to one academic survey, psychometric testing confirmed a link between anomie and academic dishonesty among university students, suggesting that universities needed to foster codes of ethics among students in order to curb it.[14] In another study, anomie was seen as a "push factor" in tourism.[15]

As an older variant, the 1913 Webster's Dictionary reports use of the word anomie as meaning "disregard or violation of the law."[16] However, anomie as a social disorder is not to be confused with anarchy: proponents of anarchism claim that anarchy does not necessarily lead to anomie and that hierarchical command actually increases lawlessness. Some anarcho-primitivists argue that complex societies, particularly industrial and post-industrial societies, directly cause conditions such as anomie by depriving the individual of self-determination and a relatively small reference group to relate to, such as the band, clan or tribe.
Synnomie

Freda Adler coined synnomie as the opposite of anomie.[17][18] Using Émile Durkheim's concept of social solidarity and collective consciousness,[17] Adler defined synnomie as "a congruence of norms to the point of harmonious accommodation."[18]

Adler described societies in a synnomie state as "characterized by norm conformity, cohesion, intact social controls and norm integration." Social institutions such as the family, religion and communities, largely serve as sources of norms and social control to maintain a synnomic society.
In culture

In Albert Camus's existentialist novel The Stranger, Meursault—the bored, alienated protagonist—struggles to construct an individual system of values as he responds to the disappearance of the old. He exists largely in a state of anomie,[19] as seen from the apathy evinced in the opening lines: "Aujourd’hui, maman est morte. Ou peut-être hier, je ne sais pas" ("Today mum died. Or maybe yesterday, I don't know").

Fyodor Dostoyevsky expresses a similar concern about anomie in his novel The Brothers Karamazov. The Grand Inquisitor remarks that in the absence of God and immortal life, everything would be lawful.[20] In other words, that any act becomes thinkable, that there is no moral compass, which leads to apathy and detachment.
See also

    Acedia
    Groupthink
    Mass society
    Misanthropy
    Nihilism
    Political alienation
    Psychological resilience
    Relativism
    Social alienation
    Strain theory (sociology)
    Suicide (Durkheim book)
    Social disintegration
    Social disorganization theory
    The Anome
    Theory of deviance

References

Gerber, John J. Macionis, Linda M. (2010). Sociology (7th Canadian ed.). Toronto: Pearson Canada. p. 97. ISBN 978-0-13-700161-3.
"anomie". Dictionary.com Unabridged. Random House.
Nickell Knutson, Jeanne (1972). The Human Basis of the Polity: A Psychological Study of Political Men. Aldine treatises in social psychology. Aldine-Atherton. p. 146. ISBN 9780202240404. Retrieved 27 October 2019. "To de Grazia and Merton, such anomie as this stems not from a lack of rules, but rather, from conflict between the directives of two belief systems."
Terry Long; Terry Robertson (24 January 2019). "Youth Development and Therapeutic Recreation". Foundations of Therapeutic Recreation: Perceptions, Philosophies, and Practices. Human Kinetics. ISBN 978-1-4925-4367-1. Retrieved 6 December 2019.
Meštrović, Stjepan Gabriel (1988). Emile Durkheim and the Reformation of Sociology. G - Reference, Information and Interdisciplinary Subjects Series. Lanham, Maryland: Rowman & Littlefield (published 1993). p. 60. ISBN 9780847678679. Retrieved 27 October 2019. "The contemporary understanding of Durkheim's concept of anomie as 'normlesness' was begun by Parsons (1937) and Merton (1957). But [...] Durkheim never used the term 'normlesness.'"
Mestrovic, Stjepan (1993). Emile Durkheim and The Reformation of Sociology. ISBN 9780847678679.
Cotterrell, Roger (1999). Emile Durkheim: Law in a Moral Domain. Stanford, CA: Stanford University Press. p. 19. ISBN 0804738238. OCLC 43421884.
Star, Susan Leigh; Bowker, Geoffrey C.; Neumann, Laura J. (August 1997). "Transparency At Different Levels of Scale: Convergence between Information Artifacts and Social Worlds". Library and Information Science, University of Illinois, Urbana-Champaign.
Durkheim, Émile. [1893] 1964. The Division of Labor in Society. Free Press.
Merton, Robert K. (1938). "Social Structure and Anomie". American Sociological Review. 3 (5): 672–82. doi:10.2307/2084686. JSTOR 2084686.
Harper, Douglas. "anomie". Online Etymology Dictionary.
Harper, Douglas. "anomy". Online Etymology Dictionary.
Liddell, Henry George, and Robert Scott. 1940. "ἀνομία." A Greek–English Lexicon, edited by H. S. Jones and R. McKenzie. Perseus Project.
Caruana, Albert; Ramaseshan, B.; Ewing, Michael T. (2000). "The effect of anomie on academic dishonesty among university students". International Journal of Educational Management. 14: 23–30. doi:10.1108/09513540010310378.
Graham M. S. Dann (March–April 1977). "Anomie, ego-enhancement and tourism". Annals of Tourism Research. 4 (4): 184–194. doi:10.1016/0160-7383(77)90037-8. "travel has the advantage of permitting the traveller to behave in a manner normally circumvented by the dictates of convention. When on holiday the tourist can overstep the bounds of fashion, tell a few stories normally deemed improper or inappropriate, wear flashy clothes, eat exotic food, get drunk, become more sexually permissive, alter his timetable, stay up half the night, listen to loud local music, etc., in short, indulge in those kinds of behavior generally frowned upon in his home environment."
Roberts, A. H., and M. Rokeach. 1956. "Anomie, authoritarianism, and prejudice: A replication." American Journal of Sociology.
Nivette, Amy E. (2011). "Old theories and new approaches: Evaluating Freda Adler's theory of low crime and its implications for criminology". Theoretical Criminology. 15 (1): 83–99. doi:10.1177/1362480610380103. ISSN 1362-4806. S2CID 145111901.
Frank Adler; Freda Adler (1983). Nations Not Obsessed with Crime. F.B. Rothman. ISBN 978-0-8377-0216-2.
Robert N. Wilson (1963). "15, Albert Camus: Personality as Creative Struggle". In Robert W. White (ed.). The Study of Lives: Essays on Personality in Honor of Henry A. Murray (First ed.). Atherton Prentice-Hall. pp. 352–359.

    Michael Cromartie; Christopher Hitchens; Peter Hitchens (12 October 2010). "Can Civilization Survive Without God? A Conversation with Christopher and Peter Hitchens" (transcript). Pew Forum on Religion & Public Life. Pew Research Center. Retrieved 7 July 2013. "The Brothers Karamazov... says, if there’s no God, then surely everything is possible — thinkable... Unfortunately, these are problems of human society and the human psyche — you might say, soul — whatever attitude we take to the humanness or the transcendent."

Sources

    Durkheim, Émile. 1893. The Division of Labour in Society.
    Marra, Realino. 1987. Suicidio, diritto e anomia. Immagini della morte volontaria nella civiltà occidentale. Napoli: Edizioni Scientifiche Italiane.
    —— 1989. "Geschichte und aktuelle Problematik des Anomiebegriffs." Zeitschrift für Rechtssoziologie 11(1):67–80.
    Orru, Marco. 1983. "The Ethics of Anomie: Jean Marie Guyau and Émile Durkheim." British Journal of Sociology 34(4):499–518.
    Riba, Jordi. 1999. La Morale Anomique de Jean-Marie Guyau. L'Harmattan. ISBN 978-2-7384-7772-9.

External links
	Look up anomie in Wiktionary, the free dictionary.

    Deflem, Mathieu. 2019. “Anomie.” Pp. 8-9 in Core Concepts in Sociology, edited by J. Michael Ryan. Hoboken, NJ: Wiley-Blackwell.
    Deflem, Mathieu. 2015. "Anomie: History of the Concept." Pp. 718-721 in International Encyclopedia of Social and Behavioral Sciences, Second Edition (Volume 1), edited by James D. Wright. Oxford, UK: Elsevier.
    "Anomie" discussed at the Émile Durkheim Archive.
    Featherstone, Richard, and Mathieu Deflem. 2003. “Anomie and Strain: Context and Consequences of Merton’s Two Theories.” Sociological Inquiry 73(4):471-489, 2003.

    vte

Émile Durkheim
Authority control Edit this at Wikidata	

    BNE: XX552913 BNF: cb119781026 (data) GND: 4142557-1 LCCN: sh85005412 MA: 60525332 NDL: 00560267 SUDOC: 027821617

Categories:

    Deviance (sociology)Émile DurkheimSocial philosophySociological terminologySociological theories

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    Bahasa Indonesia
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 25 April 2021, at 18:47 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Anthropogeny
!! 
!! https://en.wikipedia.org/wiki/Anthropogeny

From Wikipedia, the free encyclopedia

Not to be confused with Anthropogenic, Anthropization, or Anthropology.

Anthropogeny is the study of human origins. It is not simply a synonym for human evolution by natural selection, which is only a part of the processes involved in human origins. Many other factors besides natural selection were involved, ranging over climatic, geographic, ecological, social, and cultural ones. Anthropogenesis, meaning the process or point of becoming human, is also called hominization.
Contents

    1 History of usage
    2 Anthropogeny vs. anthropology
    3 See also
    4 References
    5 External links

History of usage
Life timeline
This box:

    viewtalkedit

−4500 —
–
—
–
−4000 —
–
—
–
−3500 —
–
—
–
−3000 —
–
—
–
−2500 —
–
—
–
−2000 —
–
—
–
−1500 —
–
—
–
−1000 —
–
—
–
−500 —
–
—
–
0 —
	
 
Water
 
Single-celled life
 
Photosynthesis
 
Eukaryotes
 
Multicellular life
 
P
l
a
n
t
s
 
Arthropods Molluscs
Flowers
Dinosaurs
 
Mammals
Birds
Primates
H
a
d
e
a
n



A
r
c
h
e
a
n







P
r
o
t
e
r
o
z
o
i
c
P
h
a
n
e
r
o
z
o
i
c
	
←	
Earth formed
←	
Earliest water
←	
Earliest life
←	
LHB meteorites
←	
Earliest oxygen
←	
Pongola glaciation*
←	
Oxygen crisis
←	
Huronian glaciation*
←	
Earliest multicell life
←	
Earliest fungi
←	
Sexual reproduction
←	
Earliest plants
←	
Earliest animals
←	
Cryogenian ice age*
←	
Ediacaran biota
←	
Cambrian explosion
←	
Andean glaciation*
←	
Earliest tetrapods
←	
Karoo ice age*
←	
Earliest apes
←	
Quaternary ice age*
(million years ago)
*Ice Ages

The term anthropogeny was used in the 1839 edition of Hooper's Medical Dictionary[1] and was defined as "the study of the generation of man". The term was popularized by Ernst Heinrich Haeckel (1834–1919), a German naturalist and zoologist, in his groundbreaking books, Natural History of Creation[2] (German: Natürliche Schöpfungsgeschicht) (1868) and The Evolution of Man[3] (German: Anthropogenie) (1874). Haeckel was one of the first biologists to publish on evolution. Haeckel used the term Anthropogeny to refer to the study of comparative embryology and defined it as "the history of the evolution of man". The term changed over time, however, and came to refer to the study of human origins.[4]

The last use of the word anthropogeny in English literature was in 1933 by William K. Gregory.[5] There was a gap in the usage of the term from 1933 to 1993. Anthropogeny was reintroduced in 1993 [6] and in 2008[7] and is now back in academic use at the Center for Academic Research and Training in Anthropogeny (CARTA) at the University of California, San Diego.
Anthropogeny vs. anthropology
System-search.svg
	
This section's factual accuracy is disputed. Relevant discussion may be found on Talk:Anthropogeny. Please help to ensure that disputed statements are reliably sourced. (June 2018) (Learn how and when to remove this template message)

The root in ancient Greek anthropos means human and -logia means discourse or study, and -genesis means the process of creation or origin. Anthropology, therefore, is quite literally the study of humans, whereas anthropogeny is the breakdown of the word anthropos agai but with the link word -geny (γένη, γένος) which again literally means the study of the birth and gender of humans.

According to the ancient Greeks who came up with the terms, anthropology is the sum of many sciences relating to the human study. There is social, economic, civil and comparative anthropology.

Anthropogony derives from the word 'anthropo' again and -gony (γόνοι), meaning 'the causing of, the birth of', both in a literal and metaphorical sense, referring to what caused by human born or/and conceived/created.

Anthropogeny on the other, is whatever derives from humans. -geny ('γένης᾽), meaning 'the born' or who is born of, but also the gender.

According to Gregory (1933), anthropologists are interested in measuring and quantifying aspects of being human, whereas anthropogenists are interested in "piecing together the broken story of the 'big parade' that nature has staged across the ages".[5] According to the definition of the words, Gregory's statement is wrong.

So anthropology is the study of humans and anthropogeny, is the study of what humans 'gave birth to', to its core definition, although there have been many confusions by those who do not really have an understanding of the word's origins.

Modern anthropology is typically divided into four sub-fields: social anthropology or cultural anthropology, biological anthropology, linguistic anthropology, and archaeology. The field of anthropology has origins in the natural sciences, humanities, and social sciences.

The field of anthropogeny is also influenced by the natural sciences, humanities, and social sciences, however, given that it is the study of the origin of humans, it is also influenced by fields ranging from anatomy and biomechanics to neurology and genetics.

A comprehensive list of Domains of Scientific Discipline relevant to anthropogeny can be found in the Matrix of Comparative Anthropogeny (MOCA), associated with the Center for Academic Research and Training in Anthropogeny (CARTA), at the University of California, San Diego.
See also

    Origin myth, for nonscientific accounts
    Human evolution, for scientific accounts
    Evolutionary anthropology
    Dawn of Humanity

References

Hooper, Robert (1839). Lexicon Medicum; or Medical Dictionary … (7th ed.). London, England: Longman, etc. p. 135.
Ernst Haeckel (1868) The History of Creation. New York: D. Appleton and Company
Ernst Haeckel (1897) The Evolution of Man: A Popular Exposition of the Principal Points of Human Ontogeny and Phylogeny, Volumes 1 and 2. English Translation. New York: D. Appleton and Company
Mason, Otis T. (1880). "Sketch of North American Anthropology in 1879". The American Naturalist. 14 (5): 348–356. doi:10.1086/272557.
Gregory, William K. (1985). "The New Anthropogeny: Twenty-Five Stages of Vertebrate Evolution From Silurian Chordate to Man". Science. 77 (1985): 29–40. doi:10.1126/science.77.1985.29. PMID 17792389.
Boaz, Noel T (1993). Quarry: closing in on the missing link. pp. 247–250. ISBN 9780684863788.

    Varki, Ajit; Geschwind, Daniel; Eichler, Evan (2008). "Explaining human uniqueness: genome interactions with environment, behaviour and culture". Nature Reviews Genetics. 9 (10): 749–763. doi:10.1038/nrg2428. PMC 2756412. PMID 18802414.

External links
	Wikimedia Commons has media related to Anthropogeny.

    Matrix of Comparative Anthropogeny (MOCA)

Authority control Edit this at Wikidata	

    MA: 20650522

Categories:

    AnthropologyOrigins

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Bosanski
    Eesti
    Español
    Українська
    中文

Edit links

    This page was last edited on 11 April 2021, at 14:22 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Anti-authoritarianism

!! https://en.wikipedia.org/wiki/Anti-authoritarianism

From Wikipedia, the free encyclopedia

Not to be confused with Anti-totalitarianism.
Part of the Politics series on
Anarchism
"Circle-A" anarchy symbol
Schools of thought

    TheoryPractice

People
Issues
History
Culture
Economics
By region
Lists
Related topics

    BlackFlagSymbol.svg Anarchism portal
    A coloured voting box.svg Politics portal

    vte

Part of a series on
Libertarianism
Origins
Concepts
People
Related topics

    2006 AEGold Proof Obv.png Libertarianism portal
    BlackFlagSymbol.svg Anarchism portal

    vte

Part of a series on
Libertarian socialism
Anarchist flag.svg
Political concepts
Economics
People
Philosophies and tendencies
Significant events
Related topics

    BlackFlagSymbol.svg Anarchism portal
    Red flag II.svg Socialism portal
    A coloured voting box.svg Politics portal

    vte

Anti-authoritarianism is opposition to authoritarianism, which is defined as "a form of social organisation characterised by submission to authority",[1] "favoring complete obedience or subjection to authority as opposed to individual freedom"[2] and to authoritarian government.[3] Anti-authoritarians usually believe in full equality before the law and strong civil liberties. Sometimes the term is used interchangeably with anarchism, an ideology which entails opposing authority or hierarchical organization in the conduct of human relations, including the state system.[4][5][6][7][8][9][10]
Views and practice

Freethought is a philosophical viewpoint that holds opinions should be formed on the basis of logic, reason and empiricism, rather than authority, tradition, or other dogmas.[11][12][13] The cognitive application of freethought is known as "freethinking" and practitioners of freethought are known as "freethinkers".[11][14]

Argument from authority (Latin: argumentum ab auctoritate) is a common form of argument which leads to a logical fallacy when misused. In informal reasoning, the appeal to authority is a form of argument attempting to establish a statistical syllogism.[15] The appeal to authority relies on an argument of the form:

    A is an authority on a particular topic
    A makes a statement about that topic
    A is therefore correct

Fallacious examples of using the appeal include any appeal to authority used in the context of logical reasoning and appealing to the position of an authority or authorities to dismiss evidence as while authorities can be correct in judgments related to their area of expertise more often than laypersons, they can still come to the wrong judgments through error, bias, dishonesty, or falling prey to groupthink. Thus, the appeal to authority is not a generally reliable argument for establishing facts. Influential anarchist Mikhail Bakunin thought the following: "Does it follow that I reject all authority? Far from me such a thought. In the matter of boots, I refer to the authority of the bootmaker; concerning houses, canals, or railroads, I consult that of the architect or the engineer. For such or such special knowledge I apply to such or such a savant. But I allow neither the bootmaker nor the architect nor savant to impose his authority upon me. I listen to them freely and with all the respect merited by their intelligence, their character, their knowledge, reserving always my incontestable right of criticism and censure. I do not content myself with consulting a single authority in any special branch; I consult several; I compare their opinions, and choose that which seems to me the soundest. But I recognise no infallible authority, even in special questions; consequently, whatever respect I may have for the honesty and the sincerity of such or such individual, I have no absolute faith in any person".[16] He saw that "there is no fixed and constant authority, but a continual exchange of mutual, temporary, and, above all, voluntary authority and subbordination. This same reason forbids me, then, to recognise a fixed, constant and universal authority, because there is no universal man, no man capable of grasping in all that wealth of detail, without which the application of science to life is impossible, all the sciences, all the branches of social life".[16]

After World War II, there was a strong sense of anti-authoritarianism based on anti-fascism in Europe. This was attributed to the active resistance from occupation and to fears arising from the development of superpowers.[17] Anti-authoritarianism has also been associated with countercultural and bohemian movements. In the 1950s, the Beat Generation were politically radical and to some degree their anti-authoritarian attitudes were taken up by activists in the 1960s.[18] The hippie and larger counterculture movements of the 1960s carried out a way of life and activism which was ideally carried through anti-authoritarian and non-violent means. It was observed as such: "The way of the hippie is antithetical to all repressive hierarchical power structures since they are adverse to the hippie goals of peace, love and freedom... Hippies don't impose their beliefs on others. Instead, hippies seek to change the world through reason and by living what they believe."[19] In the 1970s, anti-authoritarianism became associated with the punk subculture.[20]
See also

    Anarchism
    Anticonformism
    Civil libertarianism
    Fascist (insult)
    Freedom of speech
    Green Mountain Anarchist Collective
    Individualism
    Libertarianism
    Libertarian socialism
    Question authority

References

Roget’s II: The New Thesaurus (1995). "authoritarianism". Houghton Mifflin Company. Archived from the original on 24 June 2008. Retrieved 2008-06-25.
"anti-authoritarian" at dictionary.com
"antiauthoritarian" at The Free Dictionary
"Anarchists do reject the state, as we will see. But to claim that this central aspect of anarchism is definitive is to sell anarchism short."Anarchism and Authority: A Philosophical Introduction to Classical Anarchism by Paul McLaughlin. AshGate. 2007. pg. 28
"IAF principles". International of Anarchist Federations. Archived from the original on 5 January 2012. "The IAF - IFA fights for : the abolition of all forms of authority whether economical, political, social, religious, cultural or sexual."
"Authority is defined in terms of the right to exercise social control (as explored in the "sociology of power") and the correlative duty to obey (as explored in the "philosophy of practical reason"). Anarchism is distinguished, philosophically, by its scepticism towards such moral relations-by its questioning of the claims made for such normative power- and, practically, by its challenge to those "authoritative" powers which cannot justify their claims and which are therefore deemed illegitimate or without moral foundation."Anarchism and Authority: A Philosophical Introduction to Classical Anarchism by Paul McLaughlin. AshGate. 2007. pg. 1
"Anarchism, then, really stands for the liberation of the human mind from the dominion of religion; the liberation of the human body from the dominion of property; liberation from the shackles and restraint of government. Anarchism stands for a social order based on the free grouping of individuals for the purpose of producing real social wealth; an order that will guarantee to every human being free access to the earth and full enjoyment of the necessities of life, according to individual desires, tastes, and inclinations." Emma Goldman. "What it Really Stands for Anarchy" in Anarchism and Other Essays.
Ward, Colin (1966). "Anarchism as a Theory of Organization". Archived from the original on 25 March 2010. Retrieved 1 March 2010.
Anarchist historian George Woodcock report of Mikhail Bakunin's anti-authoritarianism and shows opposition to both state and non-state forms of authority as follows: "All anarchists deny authority; many of them fight against it." (pg. 9) ... Bakunin did not convert the League's central committee to his full program, but he did persuade them to accept a remarkably radical recommendation to the Berne Congress of September 1868, demanding economic equality and implicitly attacking authority in both Church and State."
Brown, L. Susan (2002). "Anarchism as a Political Philosophy of Existential Individualism: Implications for Feminism". The Politics of Individualism: Liberalism, Liberal Feminism and Anarchism. Black Rose Books Ltd. Publishing. p. 106.
"Freethinker - Definition and More from the Free Merriam-Webster Dictionary". Merriam-webster.com. 2012-08-31. Retrieved 2014-01-12.
"Free thought | Define Free thought at Dictionary.com". Dictionary.reference.com. Retrieved 2014-01-12.
"Glossary: freethought". International Humanist and Ethical Union. Archived from the original on January 17, 2013.
"Nontracts - FFRF Publications". Archive.is. Archived from the original on 2012-08-04. Retrieved 2014-01-12.
Salmon, M. H. (2006). Introduction to Critical Reasoning. Mason, OH: Thomson Wadsworth. pp. 118–9.
Bakunin, Mikhail (1871). "What is Authority?" – via Marxists.org.
Cox, David (2005). Sign Wars: The Culture Jammers Strike Back!. LedaTape Organisation. p. 108. ISBN 978-0-9807701-5-5. Retrieved 22 October 2011.
Matterson, Stephen. "Mid-1950s-1960s Beat Generation". The American Novel. PBS. Archived from the original on 7 July 2007.
Stone, Skip (1999). "The Way of the Hippy". Hippies from A to Z.

    McLaughlin, Paul (2007). Anarchism and Authority. Aldershot: Ashgate. p. 10. ISBN 978-0-7546-6196-2.

    vte

Anarchism

    vte

Libertarianism

    vte

Libertarian socialism

    vte

Hippies
Categories:

    AuthoritarianismPolitical movementsPolitical theoriesAnarchist theoryAuthority

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    Bahasa Indonesia
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 17 January 2021, at 18:33 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

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
[img [anti-intellectual.png]]

```
There is a cult of ignorance in the United States, and there has always been. The strain of anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that "my ignorance is just as good as your knowledge".
Isaac Asimov, 1980
```

[img [anti-intellectual.png]]

! Anti-intellectualism

!! https://en.wikipedia.org/wiki/Anti-intellectualism

From Wikipedia, the free encyclopedia

Not to be confused with opposition to moral intellectualism.
	
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Anti-intellectualism" – news · newspapers · books · scholar · JSTOR (September 2017) (Learn how and when to remove this template message)
Thomas Nast contrasts the reedy scholar with the bovine boxer, epitomizing the populist view of reading and study as antithetical to sport and athleticism. (Note the disproportionate heads and bodies, with the size of the head representing mental ability and the size of the body representing physical ability.)
Part of a series on
Discrimination
ProhibitionSign.svg
General forms
Social

    Acephobia Adultism Amatonormativity Anti-albinism Anti-autism Anti-homelessness Anti-intellectualism Anti-intersex Anti-left handedness Anti-Masonry Antisemitism (Judeophobia) Aporophobia Audism Biphobia Clannism Cronyism Drug use Elitism Ephebiphobia Fatism Gayphobia Gerontophobia Heteronormativity Heterosexism HIV/AIDS stigma Homophobia Leprosy stigma Lesbophobia Misandry Misogyny Nepotism Pedophobia Perpetual foreigner Pregnancy Reverse Sectarianism Supremacism
        Black White Transphobia
        Non-binary Transmisogyny Vegaphobia Xenophobia

Religious
Ethnic/national
Manifestations
Policies
Countermeasures
Related topics

    vte

Anti-intellectualism has been defined as, "A philosophic doctrine that assigns reason or intellect a subordinate place in the scheme of things and questions or denies the ability of the intellect to comprehend the true nature of things ... Anything that celebrates feeling over thought, intuition over logic, action over contemplation, results over means, experience over tradition and order tends toward anti-intellectualism."[1]

Totalitarian governments manipulate and apply anti-intellectualism to repress political dissent.[2] During the Spanish Civil War (1936–1939) and the following dictatorship (1939–1975) of General Francisco Franco, the reactionary repression of the White Terror (1936–1945) was notably anti-intellectual, with most of the 200,000 civilians killed being the Spanish intelligentsia, the politically active teachers and academics, artists and writers of the deposed Second Spanish Republic (1931–1939).[3]
Contents

    1 Ideological anti-intellectualism
    2 Academic anti-intellectualism
        2.1 United States
        2.2 Distrust of intellectuals
        2.3 17th century
        2.4 19th century
        2.5 20th–21st centuries
            2.5.1 An uneducated society
            2.5.2 Corporate mass media
    3 In Europe
        3.1 Communism
        3.2 Fascism
    4 In Asia
        4.1 China
            4.1.1 Imperial China
            4.1.2 People's Republic of China
        4.2 Democratic Kampuchea
        4.3 Ottoman Empire
    5 See also
    6 Footnotes
    7 Further reading
    8 External links

Ideological anti-intellectualism
The cultural re-organization of Cambodian society by the dictator Pol Pot created a government which tried to remake its society anti-intellectual in what became known as Democratic Kampuchea (1975–1979), a de-industrialized, agricultural country.
In the Night of the Long Batons (29 July 1966), the federal police physically purged politically incorrect academics who opposed the right-wing military dictatorship of Juan Carlos Onganía (1966–1970) in Argentina from five faculties of the University of Buenos Aires

In the 20th century, societies systematically removed intellectuals from power, to expediently end public political dissent. During the Cold War (1945–1991), the Czechoslovak Socialist Republic (1948–1990) ostracized the philosopher Václav Havel as a politically unreliable man unworthy of ordinary Czechs' trust; the post-communist Velvet Revolution (17 November – 29 December 1989) elected Havel president for ten years.[4] Ideologically-extreme dictatorships who mean to recreate a society such as the Khmer Rouge rule of Cambodia (1975–1979) pre-emptively killed potential political opponents, especially the educated middle-class and the intelligentsia. To realize the Year Zero of Cambodian history, Khmer Rouge social engineering restructured the economy by de-industrialization and assassinated non-communist Cambodians suspected of "involvement in free-market activities" such as the urban professionals of society (physicians, attorneys, engineers, et al.) and people with political connections to foreign governments. The doctrine of Pol Pot identified the farmers as the true proletariat of Cambodia and the true representatives of the working class entitled to hold government power, hence the anti-intellectual purges.

In 1966, the anti-communist Argentine military dictatorship of General Juan Carlos Onganía (1966–1970) intervened at the University of Buenos Aires with the Night of the Long Batons to physically dislodge politically dangerous academics from five university faculties. That expulsion to the exile of the academic intelligentsia became a national brain drain upon the society and economy of Argentina.[5][6] In opposition to the military repression of free speech, biochemist César Milstein said ironically: "Our country would be put in order, as soon as all the intellectuals who were meddling in the region were expelled".

However, anti-intellectualism is not always violent. Any social group can act anti-intellectually by discounting the humanist value to their society of intellect, intellectualism, and higher education.
Academic anti-intellectualism
United States

In The Campus War (1971), the philosopher John Searle said,

    [T]he two most salient traits of the radical movement are its anti-intellectualism and its hostility to the university as an institution. ... Intellectuals, by definition, are people who take ideas seriously for their own sake. Whether or not a theory is true or false is important to them, independently of any practical applications it may have. [Intellectuals] have, as Richard Hofstadter has pointed out, an attitude to ideas that is at once playful and pious. But, in the radical movement, the intellectual ideal of knowledge for its own sake is rejected. Knowledge is seen as valuable only as a basis for action, and it is not even very valuable there. Far more important than what one knows is how one feels.[7]

In Social Sciences as Sorcery (1972), the sociologist Stanislav Andreski advised laymen to distrust the intellectuals' appeals to authority when they make questionable claims about resolving the problems of their society: "Do not be impressed by the imprint of a famous publishing house, or the volume of an author's publications. ... Remember that the publishers want to keep the printing presses busy, and do not object to nonsense if it can be sold."[8]

In Science and Relativism: Some Key Controversies in the Philosophy of Science (1990), the epistemologist Larry Laudan said that the prevailing type of philosophy taught at universities in the U.S. (Postmodernism and Poststructuralism) is anti-intellectual, because "the displacement of the idea that facts and evidence matter, by the idea that everything boils down to subjective interests and perspectives is—second only to American political campaigns—the most prominent and pernicious manifestation of anti-intellectualism in our time."[9]
Distrust of intellectuals

In the U.S., the American conservative[10] economist Thomas Sowell argued for distinctions between unreasonable and reasonable wariness of intellectuals in their influence upon the institutions of a society. In defining intellectuals as "people whose occupations deal primarily with ideas", they are different from people whose work is the practical application of ideas. That cause for layman mistrust lies in the intellectuals' incompetence outside their fields of expertise. Although possessed of great working knowledge in their specialist fields, when compared to other professions and occupations, the intellectuals of society face little discouragement against speaking authoritatively beyond their field of formal expertise, and thus are unlikely to face responsibility for the social and practical consequences of their errors. Hence, a physician is judged competent by the effective treatment of the sickness of a patient, yet might face a medical malpractice lawsuit should the treatment harm the patient. In contrast, a tenured university professor is unlikely to be judged competent or incompetent by the effectiveness of his or her intellectualism (ideas), and thus not face responsibility for the social and practical consequences of the implementation of the ideas.

In the book Intellectuals and Society (2009), Sowell said:[11]

    By encouraging, or even requiring, students to take stands where they have neither the knowledge nor the intellectual training to seriously examine complex issues, teachers promote the expression of unsubstantiated opinions, the venting of uninformed emotions, and the habit of acting on those opinions and emotions, while ignoring or dismissing opposing views, without having either the intellectual equipment or the personal experience to weigh one view against another in any serious way.

Hence, school teachers are part of the intelligentsia who recruit children in elementary school and teach them politics—to advocate for or to advocate against public policy—as part of community-service projects; which political experience later assists them in earning admission to a university. In that manner, the intellectuals of a society intervene and participate in social arenas of which they might not possess expert knowledge, and so unduly influence the formulation and realization of public policy. In the event, teaching political advocacy in elementary school encourages students to formulate opinions "without any intellectual training or prior knowledge of those issues, making constraints against falsity few or non-existent."[12]

In Britain, the anti-intellectualism of the writer Paul Johnson derived from his close examination of twentieth-century history, which revealed to him that intellectuals have continually championed disastrous public policies for social welfare and public education, and warned the layman public to "beware [the] intellectuals. Not merely should they be kept well away from the levers of power, they should also be objects of suspicion when they seek to offer collective advice."[13] In that vein, "In the Land of the Rococo Marxists" (2000), the American writer Tom Wolfe characterized the intellectual as "a person knowledgeable in one field, who speaks out only in others."[14] In 2000, British publisher Imprint Academic published Dumbing Down, a compilation of essays edited by Ivo Mosley, grandson of the British fascist Oswald Mosley, which included essays on a perceived widespread anti-intellectualism by Jaron Lanier, Ravi Shankar, Robert Brustein, Michael Oakshott among others.[15]
17th century
In the book The Powring Out of the Seven Vials (1642), the Protestant minister John Cotton equated education and intellectualism with atheist service to the supernatural

In The Powring Out of the Seven Vials (1642), the Puritan John Cotton demonized intellectual men and women by noting that "the more learned and witty you bee, the more fit to act for Satan will you bee. ... Take off the fond doting ... upon the learning of the Jesuits, and the glorie of the Episcopacy, and the brave estates of the Prelates. I say bee not deceived by these pompes, empty shewes, and faire representations of goodly condition before the eyes of flesh and blood, bee not taken with the applause of these persons".[16] Yet, not every Puritan concurred with Cotton's religious contempt for secular education, such as John Harvard who founded a university.

In The Quest for Cosmic Justice (2001), the economist Thomas Sowell said that anti-intellectualism in the U.S. began in the early Colonial era, as an understandable wariness of the educated upper classes, because the country mostly was built by people who had fled political and religious persecution by the social system of the educated upper classes. Moreover, there were few intellectuals who possessed the practical hands-on skills required to survive in the New World of North America, which absence from society led to a deep-rooted, populist suspicion of men and women who specialize in "verbal virtuosity", rather than tangible, measurable products and services:[17]

    From its colonial beginnings, American society was a "decapitated" society—largely lacking the top-most social layers of European society. The highest elites and the titled aristocracies had little reason to risk their lives crossing the Atlantic, and then face the perils of pioneering. Most of the white population of colonial America arrived as indentured servants and the black population as slaves. Later waves of immigrants were disproportionately peasants and proletarians, even when they came from Western Europe ... The rise of American society to pre-eminence, as an economic, political, and military power, was thus the triumph of the common man, and a slap across the face to the presumptions of the arrogant, whether an elite of blood or books.

19th century

In U.S. history, the advocacy and acceptability of anti-intellectualism varied, because in the 19th century most people lived a rural life of manual labor and agricultural work, therefore, an academic education in the Greco–Roman classics, was perceived as of impractical value; the bookish man is unprofitable. Yet, in general, Americans were a literate people who read Shakespeare for intellectual pleasure and the Christian Bible for emotional succor; thus, the ideal American Man was a literate and technically-skilled man who was successful in his trade, ergo a productive member of society.[18] Culturally, the ideal American was the self-made man whose knowledge derived from life-experience, not an intellectual man whose knowledge of the real world derived from books, formal education, and academic study; thus, the justified anti-intellectualism reported in The New Purchase, or Seven and a Half Years in the Far West (1843), the Rev. Bayard R. Hall, A.M., said about frontier Indiana:[16]

    We always preferred an ignorant, bad man to a talented one, and, hence, attempts were usually made to ruin the moral character of a smart candidate; since, unhappily, smartness and wickedness were supposed to be generally coupled, and [like-wise] incompetence and goodness.

Yet, in the society of the U.S. the "real-life" redemption of the egghead intellectual was possible if he embraced the mores of mainstream society; thus, in the fiction of O. Henry, a character noted that once an East Coast university graduate "gets over" his intellectual vanity—he no longer thinks himself better than other men—he makes just as good a cowboy as any other young man, despite his common-man counterpart being the slow-witted naïf of good heart, a pop culture stereotype from stage shows.
20th–21st centuries

Political polarization in the U.S. has long favored the use of anti-intellectualism by each political party (Republican and Democratic) to undermine the credibility of the other party with the middle class.[19] In 1912, the New Jersey governor, Woodrow Wilson, described the battle:[20]

    What I fear is a government of experts. God forbid that, in a democratic country, we should resign the task and give the government over to experts. What are we for if we are to be scientifically taken care of by a small number of gentlemen who are the only men who understand the job?

In Anti-intellectualism in American Life (1963) the historian Richard Hofstadter said that anti-intellectualism is a social-class response, by the middle-class "mob", against the privileges of the political elites.[21] As the middle class developed political power, they exercised their belief that the ideal candidate to office was the "self-made man", not the well-educated man born to wealth. The self-made man, from the middle class, could be trusted to act in the best interest of his fellow citizens.[22] In Americans and Chinese: Passages to Differences (1980), Francis Hsu said that American egalitarianism is stronger in the U.S. than in Europe, e.g. in England,[23]

    English individualism developed hand in hand with legal equality. American self-reliance, on the other hand, has been inseparable from an insistence upon economic and social as well as political equality. The result is that a qualified individualism, with a qualified equality, has prevailed in England, but what has been considered the inalienable right of every American is unrestricted self-reliance and, at least ideally, unrestricted equality. The English, therefore, tend to respect class-based distinctions in birth, wealth, status, manners, and speech, while Americans resent them.

Cult of Ignorance
      There is a cult of ignorance in the United States, and there has always been. The strain of anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that "my ignorance is just as good as your knowledge".

Isaac Asimov, 1980[24]

Such social resentment characterises contemporary political discussions about the socio-political functions of mass-communication media and science; that is, scientific facts, generally accepted by educated people throughout the world, are misrepresented as opinions in the U.S., specifically about climate science and global warming.[25]

Miami University anthropology professor Homayun Sidky has argued that 21st-century anti-scientific and pseudoscientific approaches to knowledge, particularly in the United States, are rooted in a postmodernist "decades-long academic assault on science:" "Many of those indoctrinated in postmodern anti-science went on to become conservative political and religious leaders, policymakers, journalists, journal editors, judges, lawyers, and members of city councils and school boards. Sadly, they forgot the lofty ideals of their teachers, except that science is bogus."[26]

In 2017, a Pew Research Center poll revealed that a majority of American Republicans thought colleges and universities have a negative impact on the United States, and in 2019, academics Adam Waters and E.J. Dionne stated that U.S. President Donald Trump "campaigned for the presidency and continues to govern as a man who is anti-intellectual, as well as anti-fact and anti-truth."[27][28] In 2020, Trump signed an executive order banning anti-racism bias trainings that use Critical Race Theory from offices of federal agencies, grant programs, and federal contractors [29][30] as part of a larger strategy to combat a perceived progressive academic bias, like emphases on the political legacy of American slavery, with "patriotic education" instead.[31][32]
An uneducated society

About 25% of 2,200 Americans surveyed believe in a geocentric solar system (that the sun orbits the earth),[33] and in 2014 35% of Americans could not name any branch of the U.S. government.[34] The U.S. is ranked 52nd out of 139 nations in quality of educational instruction and 12th in the number of university-educated adults.[35] At universities, student anti-intellectualism has resulted in the social acceptability of cheating on schoolwork, especially in the business schools, a manifestation of ethically expedient cognitive dissonance rather than of academic critical thinking.[36]

The American Council on Science and Health said that denialism of the facts of climate science and of climate change misrepresents verifiable data and information as political opinion.[37] Anti-intellectualism puts scientists in the public view and forces them to align with either a liberal or a conservative political stance. Moreover, 53% of Republican U.S. Representatives and 74% of Republican Senators deny the scientific facts of the causes of climate change.[38]

In the rural U.S., anti-intellectualism is an essential feature of the religious culture of Christian fundamentalism.[39] Some Protestant churches and the Roman Catholic Church have directly published their collective support for political action to counter climate change, whereas Southern Baptists and Evangelicals have denounced belief in both evolution and climate change as a sin, and have dismissed scientists as intellectuals attempting to create "Neo-nature paganism".[40] People of fundamentalist religious belief tend to report not seeing evidence of global warming.[41]
Corporate mass media

The reportage of corporate mass-communications media appealed to societal anti-intellectualism by misrepresenting university life in the U.S., where the students' pursuit of book learning (intellectualism) was secondary to the after-school social life. That the reactionary ideology communicated in mass-media reportage misrepresented the liberal political activism and social protest of students as frivolous, social activities thematically unrelated to the academic curriculum, which is the purpose of attending university.[42] In Anti-intellectualism in American Media (2004), Dane Claussen identified the contemporary anti-intellectualist bent of manufactured consent that is inherent to commodified information:[43][44]

    The effects of mass media on attitudes toward intellect are certainly multiple and ambiguous. On the one hand, mass communications greatly expand the sheer volume of information available for public consumption. On the other hand, much of this information comes pre-interpreted for easy digestion and laden with hidden assumption, saving consumers the work of having to interpret it for themselves. Commodified information naturally tends to reflect the assumptions and interests of those who produce it, and its producers are not driven entirely by a passion to promote critical reflection.

The editorial perspective of the corporate mass-media misrepresented intellectualism as a profession that is separate and apart from the jobs and occupations of regular folk. In presenting academically successful students as social failures, an undesirable social status for the average young man and young woman, corporate media established to the U.S. mainstream their opinion that the intellectualism of book-learning is a form of mental deviancy, thus, most people would shun intellectuals as friends, lest they risk social ridicule and ostracism.[45] Hence, the popular acceptance of anti-intellectualism lead to populist rejection of the intelligentsia for resolving the problems of society.[46] Moreover, in the book Inventing the Egghead: The Battle over Brainpower in American Culture (2013), Aaron Lecklider indicated that the contemporary ideological dismissal of the intelligentsia derived from the corporate media's reactionary misrepresentations of intellectual men and women as lacking the common-sense of regular folk.[47]
In Europe
Communism

In the first decade after the Russian Revolution of 1917, the Bolsheviks suspected the Tsarist intelligentsia as having the potential to betray the proletariat. Thus, the initial Soviet government consisted of men and women without much formal education. Moreover, the deposed propertied classes were termed Lishentsy ("the disenfranchised"), whose children were excluded from education. Eventually, some 200 Tsarist intellectuals such as writers, philosophers, scientists and engineers were deported to Germany on philosophers' ships in 1922 while others were deported to Latvia and Turkey in 1923.

During the revolutionary period, the pragmatic Bolsheviks employed "bourgeois experts" to manage the economy, industry, and agriculture and so learn from them. After the Russian Civil War (1917–1922), to achieve socialism the Soviet Union (1922–91) emphasized literacy and education in service to modernizing the country via an educated working class intelligentsia rather than an Ivory Tower intelligentsia. During the 1930s and 1950s, Joseph Stalin replaced Vladimir Lenin's intelligentsia with an intelligentsia that was loyal to him and believed in a specifically Soviet world view, thereby producing the pseudoscientific theories of Lysenkoism and Japhetic theory.

At the beginning of World War II, the Soviet secret police carried out mass executions of the Polish intelligentsia and military leadership in the 1940 Katyn massacre.
Fascism
Active philosopher Giovanni Gentile, intellectual father of Italian Fascism

The idealist philosopher Giovanni Gentile established the intellectual basis of Fascist ideology with the autoctisi (self-realisation) via concrete thinking that distinguished between the good (active) intellectual and the bad (passive) intellectual:

    Fascism combats [...] not intelligence, but intellectualism, [...] which is [...] a sickness of the intellect, [...] not a consequence of its abuse, because the intellect cannot be used too much. [...] [I]t derives from the false belief that one can segregate oneself from life.
    — Giovanni Gentile, addressing a Congress of Fascist Culture, Bologna, 30 March 1925

To counter the "passive intellectual" who used his or her intellect abstractly, and was therefore "decadent", he proposed the "concrete thinking" of the active intellectual who applied intellect as praxis—a "man of action", like the Fascist Benito Mussolini, versus the decadent Communist intellectual Antonio Gramsci. The passive intellectual stagnates intellect by objectifying ideas, thus establishing them as objects. Hence the Fascist rejection of materialist logic, because it relies upon a priori principles improperly counter-changed with a posteriori ones that are irrelevant to the matter-in-hand in deciding whether or not to act.

In the praxis of Gentile's concrete thinking criteria, such consideration of the a priori toward the properly a posteriori constitutes impractical, decadent intellectualism. Moreover, this fascist philosophy occurred parallel to Actual Idealism, his philosophic system; he opposed intellectualism for its being disconnected from the active intelligence that gets things done, i.e. thought is killed when its constituent parts are labelled, and thus rendered as discrete entities.[48][49]

Related to this, is the confrontation between the Spanish franquist General, Millán Astray, and the writer Miguel de Unamuno during the Dia de la Raza celebration at the University of Salamanca, in 1936, during the Spanish Civil War. The General exclaimed: ¡Muera la inteligencia! ¡Viva la Muerte! ("Death to the intelligentsia! Long live death!"); the Falangists applauded.[50]
In Asia
China
Imperial China

Qin Shi Huang (246–210 BC), the first Emperor of unified China, consolidated political thought, and power, by suppressing freedom of speech at the suggestion of Chancellor Li Si, who justified such anti-intellectualism by accusing the intelligentsia of falsely praising the emperor, and dissenting through libel. From 213 to 206 BC, it was generally thought that the works of the Hundred Schools of Thought were incinerated, especially the Shi Jing (Classic of Poetry, c. 1000 BC) and the Shujing (Classic of History, c. 6th century BC). The exceptions were books by Qin historians, and books of Legalism, an early type of totalitarianism—and the Chancellor's philosophic school (see the Burning of books and burying of scholars). However, upon further inspection of Chinese historical annals such as the Shi Ji and the Han Shu, this was found not to be the case. The Qin Empire privately kept one copy of each of these books in the Imperial Library but it publicly ordered that the books should be banned. Those who owned copies were ordered to surrender the books to be burned; those who refused were executed. This eventually led to the loss of most ancient works of literature and philosophy when Xiang Yu burned down the Qin palace in 208 BC.
People's Republic of China
See also: Stinking Old Ninth

The Cultural Revolution (1966–1976) was a politically violent decade which saw wide-ranging social engineering throughout the People's Republic of China by its leader Chairman Mao Zedong. After several national policy crises during which he was motivated by his desire to regain public prestige and control of the Chinese government, Mao announced on 16 May 1966 that the Chinese Communist Party (CCP) and Chinese society were permeated with liberal bourgeois elements who meant to restore capitalism to China and he also announced that people could only be removed after a post–revolutionary class struggle was waged against them. To that effect, China's youth nationally organized themselves into Red Guards and hunted the "liberal bourgeois" elements who were supposedly subverting the CCP and Chinese society. The Red Guards acted nationally, purging the country, the military, urban workers and the leaders of the CCP. The Red Guards were particularly aggressive when they attacked their teachers and professors, causing most schools and universities to be shut down once the Cultural Revolution began. Three years later in 1969, Mao declared that the Cultural Revolution was ended, yet the political intrigues continued until 1976, concluding with the arrest of the Gang of Four, the de facto end of the Cultural Revolution.
Democratic Kampuchea
	
This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (January 2019) (Learn how and when to remove this template message)

When the Communist Party of Kampuchea and the Khmer Rouge (1951–1981) established their regime as Democratic Kampuchea (1975–1979) in Cambodia, their anti-intellectualism which idealised the country and demonised the cities was immediately imposed on the country in order to establish agrarian socialism, thus, they emptied cities in order to purge the Khmer nation of every traitor, enemy of the state and intellectual, often symbolised by eyeglasses (see the Killing Fields).
Ottoman Empire
Some of the Armenian intellectuals who were detained, deported, and killed in the Armenian Genocide of 1915

In the early stages of the Armenian Genocide of 1915, around 2,300 Armenian intellectuals were deported from Constantinople (Istanbul) and most of them were subsequently murdered by the Ottoman government.[51] The event has been described by historians as a decapitation strike,[52][53] the purpose of which was intended to deprive the Armenian population of an intellectual leadership and a chance to resist.[54]
See also

    Anti-elitism
    Alternative facts – Expression associated with political misinformation established in 2017
    Creation science – Claim that the Genesis creation narrative has validity as science
    Anarcho-primitivism – Anarchist critique of civilization
    Antiscience – A set of attitudes that reject science and the scientific method as an inherently limited means to reach understanding of reality
    Neo-Luddism, also known as Anti-technology – Philosophy
    Authoritarianism – Form of social organization characterized by submission to authority
    Conspiracy theory – Explanation that invokes a conspiracy
    Counter-Enlightenment – Strains of thought in opposition to the 18th-century Enlightenment
    Dumbing down – Deliberate oversimplification of intellectual content
    Fundamentalism – Religious ideology based on strict adherence to uncompromising beliefs
    Left-wing fascism
    Nerd – Descriptive term, often used pejoratively, indicating that a person is apparently overly intellectual, obsessive, or socially impaired
    Epistemological nihilism – Philosophy antithetical to concepts of meaningfulness
    Noble savage
    Oblomovism
    Obscurantism – Practice of obscuring information
    Philistinism – Person whose anti-intellectual social attitude undervalues and despises art and beauty, spirituality and intellect
    Poshlost – A Russian word for a particular negative human character trait or man-made thing or idea
    Postmodernism – A broad movement in the mid-to-late 20th century across philosophy, the arts, architecture, and criticism
    Relativism – Philosophical view rejecting universalism, e.g. about truth

Footnotes

Holman, C.Hugh (1985). A Handbook to Literature (Hardcover) (4th ed.). Indianapolis: ITT Bobbs-Merrill. p. 27. ISBN 0-672-61477-4. Retrieved 14 March 2021.
Courtois, Stephanie. The Black Book of Communism. p. 601.
Dictionary of Wars (2007), Third Edition, pp. 517–18.
"Václav Havel".
Police repression at the Universidad de Buenos Aires - University of Toronto
(in Spanish) La noche de los bastones largos Archived May 14, 2010, at the Wayback Machine
John R. Searle (1971), The Campus Wars, Chapter 2: The Students, URL retrieved 14 June 2010.
Stanislav Andreski, The Social Sciences as Sorcery. 1972, The University of California Press
Larry Laudan, Science and Relativism: Some Key Controversies in the Philosophy of Science (1990), University of Chicago Press
"Black and Conservative: A Look at Thomas Sowell". 2011-08-08.
Sowell, Thomas (2009). Intellectuals and Society. Basic Books. ISBN 978-0465019489. Retrieved 16 November 2013.[pages needed]
Sowell (2009), p. 296.
Johnson, Paul (2009). Intellectuals. HarperCollins. ISBN 978-0061871474. Retrieved 16 November 2013.
Wolfe, Tom. (2000). "In the Land of the Rococo Marxists", Harper's Monthly, June 2000.
Coupe, Lawrence (27 November 2000). "The Moronic Inferno". PN Review 136. 27.
Hofstadter, Richard Anti-intellectualism in American Life (1962), p. 46.
Sowell, Thomas. (2001) The Quest for Cosmic Justice. Simon and Schuster, 2001, ISBN 978-0-7432-1507-7, p. 187.
Vinovskis, Maris (1992). "Schooling and Poor Children in 19th-Century America" (PDF). American Behavioral Scientist. 35 (3): 313–331. doi:10.1177/0002764292035003008. hdl:2027.42/68138. S2CID 9269525.
"7 Things to Know about Polarization in America". Pew Research Center. 2014-06-12. Retrieved 2017-03-01.
Cronin, Thomas E. (2015-12-03). On the Presidency: Teacher, Soldier, Shaman, Pol. Routledge. ISBN 978-1-317-25502-4.
Hofstadter, Richard (1963). Anti-Intellectualism in American Life. United States of America: Alfred A. Knopf. ISBN 978-0394415352.
Wood, Gordon (2011). Empire of Liberty: A History of the Early Republic, 1789–1815. Oxford University Press. ISBN 978-0199832460.
Hsu, Francis (1980). Americans and Chinese: Passages to Differences. University of Hawaii Press. ISBN 978-0824807573.
Pyle, George (6 April 2020). "George Pyle: It can be hard to know who to trust. And easy to know who not to". The Salt Lake Tribune. Archived from the original on 13 April 2020.
Stokes, Bruce; Wike, Richard; Carle, Jill (2015-11-05). "Global Concern about Climate Change, Broad Support for Limiting Emissions". Pew Research Center's Global Attitudes Project. Retrieved 2017-03-01.
Sidky, H. (2018). "The War on Science, Anti-Intellectualism, and 'Alternative Ways of Knowing' in 21st-Century America". Skeptical Inquirer. 42 (2): 38–43. Archived from the original on 2018-06-06. Retrieved 6 June 2018.
"America hits peak anti-intellectualism: Majority of Republicans now think college is bad". Salon. 2017-07-11. Retrieved 2019-09-18.
"Is Anti-Intellectualism Ever Good for Democracy?". Dissent. Winter 2019. Retrieved 2019-09-18.
Rummler, Jacob Knutson,Orion. "Trump pushes to expand ban against anti-racism training to federal contractors". Axios. Retrieved 2020-09-25.
"LDF Issues Statement in Response to President Trump's Executive Order". NAACP Legal Defense and Educational Fund. Retrieved 2020-09-25.
"Trump Announces 'Patriotic Education' Commission, A Largely Political Move". NPR.org. Retrieved 2020-09-25.
"Trump pushes for 'patriotic education' in schools". NBC4 WCMH-TV. 2020-09-02. Retrieved 2020-09-25.
"1 In 4 Americans Thinks the Sun Goes Around The Earth, Survey Says". NPR.org. Retrieved 2017-03-01.
"A Shocking Number of Americans Don't Know Basic Facts about the U.S. Government". Business Insider. Retrieved 2017-03-01.
"Anti-Intellectualism and the "Dumbing Down" of America: The rise of "alternative facts," and opinions replacing science and real facts". Archived from the original on 2015-09-19.
Rafik, Elias (2009). "The Impact of Anti-Intellectualism Attitudes and Academic Self-Efficacy on Business Students' Perceptions of Cheating". Journal of Business Ethics. 86 (2): 199–209. doi:10.1007/s10551-008-9843-8. S2CID 144064671.
"Anti-Intellectualism Is Biggest Threat to Modern Society | American Council on Science and Health". acsh.org. 2016-06-27. Retrieved 2017-03-01.
"Anti-Intellectualism and the "Dumbing Down" of America". Psychology Today. Archived from the original on 2015-09-19. Retrieved 2017-03-01.
"Anti-intellectualism Is Killing America". Psychology Today. Retrieved 2017-03-01.
Zaleha, Bernard Daley; Szasz, Andrew (2015-01-01). "Why conservative Christians don't believe in climate change". Bulletin of the Atomic Scientists. 71 (5): 19–30. Bibcode:2015BuAtS..71e..19Z. doi:10.1177/0096340215599789. ISSN 0096-3402. S2CID 145477853.
"cultural cognition project – Cultural Cognition Blog – MAPKIA! "answer" episode 1: The interaction effect of religion & science comprehension on perceptions of climate change risk". www.culturalcognition.net. Retrieved 2017-03-01.
Dane, Claussen (2004). Anti-Intellectualism in American Media. New York: Peter Lang Publishing. pp. 197–198. ISBN 978-0-8204-5721-5.
Rigney, Daniel (1991). "Three kinds of Anti-intellectualism: Rethinking Hofstadter". Sociological Inquiry. 61 (4): 431–451. doi:10.1111/j.1475-682X.1991.tb00172.x.
Dane, Claussen (2004). Anti-Intellectualism in American Media. New York: Peter Lang Publishing. p. 43. ISBN 978-0-8204-5721-5.
Dane, Claussen (2004). Anti-Intellectualism in American Media. New York: Peter Lang Publishing. p. 198. ISBN 978-0-8204-5721-5.
Claussen, Danes. "A Brief History of Anti-Intellectualism in American Media". Academe. 97.
Lecklider, Aaron (2013). Inventing the Egghead: The Battle over Brainpower in American Culture.
Gentile, Giovanni, Origins and Doctrine of Fascism (with selections from other works), A. James Gregor, ed., pp. 22–23, 33, 65–66
The Oxford Guide to Philosophy (2005), Ted Honderich, ed., p. 332.
Beevor, Antony. The Battle for Spain: The Spanish Civil War 1936-1939. Hachette UK, 2012.
Dadrian, Vahakn N. (2004). The history of the Armenian genocide: ethnic conflict from the Balkans to Anatolia to the Caucasus (6th rev. ed.). New York: Berghahn Books. p. 221. ISBN 978-1-57181-666-5.
Blinka, David S. (2008). Re-creating Armenia: America and the memory of the Armenian genocide. Madison: University of Wisconsin Press. p. 31. "In what scholars commonly refer to as the decapitation strike on April 24, 1915..."
Bloxham, Donald (2005). The Great Game of Genocide: Imperialism, Nationalism, and the Destruction of the Ottoman Armenians. Oxford University Press. p. 70. "...the decapitation of the Armenian nation with the series of mass arrests that began on 24 April..."

    Sahаkian, T. A. (2002). "Արևմտահայ մտավորականության սպանդի արտացոլումը հայ մամուլում 1915–1916 թթ. [The interpretation of the fact of extermination of the Armenian intelligentsia in the Armenian press in 1915–1916]". Lraber Hasarakakan Gitutyunneri (in Armenian). № 1 (1): 89–97. "Դրանով թուրքական կառավարությունը ձգտում էր արևմտահայությանը գլխատել, նրան զրկել ղեկավար ուժից, բողոքի հնարավորությունից:"

Further reading

    Dane S. Claussen (2004). Anti-Intellectualism in American Media. New York: Peter Lang Publishing. ISBN 978-0820457215.
    Liza Featherstone, Doug Henwood, and Christian Parenti, "'Action Will be Taken': Left Anti-Intellectualism and its Discontents," Left Business Observer.
    William Hinton, Hundred Day War: The Cultural Revolution at Tsinghua University. New York: New York University Press, 1972.
    Richard Hofstadter, Anti-intellectualism in American Life. New York: Alfred A. Knopf, 1963.
    Susan Jacoby, The Age of American Unreason. New York: Pantheon Books, 2008.
    Aaron Lecklider (2013). Inventing the Egghead: The Battle over Brainpower in American Culture. Philadelphia: University of Pennsylvania Press. ISBN 978-0-8122-4486-1.
    Elvin T. Lim (2008). The Anti-Intellectual Presidency: The Decline of Presidential Rhetoric from George Washington to George W. Bush. New York: Oxford University Press. ISBN 978-0199898091.
    "Anti-Intellectualism and the "Dumbing Down" of America". psychology today. 2014. "There is a growing and disturbing trend of anti-intellectual elitism in American culture. It's the dismissal of science, the arts, and humanities and their replacement by entertainment, self-righteousness, ignorance, and deliberate gullibility."

External links
	Look up anti-intellectualism in Wiktionary, the free dictionary.

    Media related to Anti-intellectualism at Wikimedia Commons

    vte

Intellectualism

    vte

Discrimination
Authority control Edit this at Wikidata	

    MA: 545981631

Categories:

    Anti-intellectualismAcademiaSocial theoriesPersecution of intellectuals

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikiquote

Languages

    العربية
    বাংলা
    Español
    Français
    Italiano
    日本語
    Português
    Русский
    中文

Edit links

    This page was last edited on 7 May 2021, at 08:10 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

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

! Appellation
!! 
!! https://en.wikipedia.org/wiki/Appellation

https://www.vqaontario.ca/Appellations


Appellations of origin 
!! https://www.origin-gi.com/your-gi-kit/key-concepts-of-gis.html
"Appellation of origin" refers to a sign that indicates that a product originates in a specific region, but is limited to those cases where the characteristic qualities of the product are due to the geographical environment, including natural and human factors, of that region, for example, “Roquefort”, “Gorgonzola”, etc.

A definition of AO is contained in the Lisbon Agreement for the Protection of Appellations of Origin and their International Registration, adopted in 1958 under the auspices of the World Intellectual Property Organisation (WIPO). According to Article 2 of the Agreement, an AO is “[…] the geographical name of a country, region, or locality, which serves to designate a product originating therein, the quality and characteristics of which are due exclusively or essentially to the geographic environment, including natural and human factors”[3]. Article 2.2 defines the “country of origin” as “the country whose name, or the country in which is situated the region or locality whose name, constitutes the appellation of origin that has given the product its reputation”.

Three elements should be noted in these definitions: First, the requirement that the appellation of origin should be the geographical denomination of a country, region or locality means that the appellation is to consist of a denomination that identifies a geographical entity in the country of origin. Secondly, the requirement that the appellation of origin must serve to designate a product originating in the country, region or locality concerned means that, in addition to identifying a place, the geographical denomination in question must be known as the designation of a product originating in that place (in other words the reputation). The third requirement concerns the quality or characteristics of the product to which the appellation of origin relates, which must be due exclusively or essentially to the geographical environment of the place where the product originates. The reference to the geographical environment means that there is to be a qualitative connection between the product and the place in which the product originates. The geographical environment is determined on the one hand by a set of natural factors (such as soil and climate), and on the other hand by a set of human factors – for instance, the traditional knowledge or know how used in the place where the product originates [4] .


From Wikipedia, the free encyclopedia

For other uses, see Appellation (disambiguation).

An appellation is a legally defined and protected geographical indication used to identify where the grapes for a wine were grown; other types of food often have appellations as well. Restrictions other than geographical boundaries, such as what grapes may be grown, maximum grape yields, alcohol level, and other quality factors may also apply before an appellation name may legally appear on a wine bottle label. The rules that govern appellations are dependent on the country in which the wine was produced.
Contents

    1 History
    2 Europe
        2.1 France
        2.2 Germany
        2.3 Georgia
        2.4 Hungary
        2.5 Italy
        2.6 Portugal
        2.7 Spain
    3 North America
        3.1 Canada
        3.2 United States
    4 List of appellations
    5 See also
    6 Notes and references
    7 External links

History

The tradition of wine appellation is very old. The oldest references are to be found in the Bible, where wine of Samaria, wine of Carmel, wine of Jezreel,[1] or wine of Helbon[2] are mentioned. This tradition of appellation continued throughout the Antiquity and the Middle Ages, though without any officially sanctioned rules. Historically, the world's first exclusive (protected) vineyard zone was introduced in Chianti, Italy in 1716 and the first wine classification system in Tokaj-Hegyalja, Hungary, in 1730.
Europe
France

In 1935, the Institut National des Appellations d'Origine (INAO), a branch of the French Ministry of Agriculture, was created to manage wine-processing in France. In the Rhone wine region Baron Pierre Le Roy Boiseaumarié, a lawyer and winegrower from Châteauneuf-du-Pape, obtained legal recognition of the Côtes du Rhône appellation of origin in 1937. The AOC seal, or Appellation d'Origine Contrôlée, was created and mandated by French laws in the 1950s, 1960s, and 1970s.

Before 1935, despite the fact that the INAO was yet to be created, champagne enjoyed an appellation control by virtue of legal protection as part of the Treaty of Madrid. The treaty stated that only sparkling wine produced in Champagne and adhering to the standards defined for that name as an Appellation d'Origine Contrôlée could be called champagne. This right was reaffirmed in the Treaty of Versailles after World War I.
Germany

Germany is unusual among wine-producing countries in that its most prestigious classifications, the various grades of Prädikatswein, are based on the ripeness of the grapes, though their geographical origins are also legally defined. Thus Germany's geographical classification, Qualitätswein bestimmter Anbaugebiete (QbA), is akin to France's defunct Vin Délimité de Qualité Superieure, which has been subsumed into the current Appellation d'Origine Contrôlée system.
Georgia

Georgia has nineteen registered wine appellations.
Hungary

Historically, the world's first vineyard classification system was introduced in Tokaj-Hegyalja, Hungary, in 1730. Vineyards were classified into three categories depending on the soil, sun exposure, and potential to develop Botrytis cinerea. The subdivisions were: first-class, second-class and third-class wines. A decree by the Habsburg crown in 1757 established a closed production district in Tokaj. The classification system was completed by the national censuses of 1765 and 1772.
Italy

Italy's first origin classification system was introduced in Tuscany in 1716 for delimiting Chianti production. After the unification of Italy several attempts were made to introduce some kind of protection for wine appellations, to no avail. Only in 1963 the "Denominazione di origine controllata" law was approved, starting with 1967 vintage.
Portugal

The world's third-oldest appellation control, after Chianti and Tokaj was introduced in Portugal in 1756, pertaining to port wine, which was produced in the region of the Douro valley.
Spain

Some Spanish wines were already famous or even regulated (Rioja: 1925; Sherry: 1933) when the market started being regulated. It was not until 1980 that legislation on denominación de origen was stablished, following the French scheme with more tiers of classification and prompted by the impending accession to the European Union.
North America
Canada
	
This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (November 2011) (Learn how and when to remove this template message)
See also: Vintners Quality Alliance § Appellations, and Cellared in Canada

Canadian wine appellations are regulated by the Vintners Quality Alliance system. The system covers the provinces of British Columbia and Ontario.[citation needed]

British Columbia is divided into four "Designated Viticultural Areas" ("DVAs"): Okanagan Valley, Vancouver Island, Fraser Valley, and the Similkameen Valley. Ontario includes three DVAs: Niagara Peninsula, Lake Erie North Shore, and Prince Edward County.[3]

On June 11, 2012, Nova Scotia launched its first appellation, Tidal Bay.[citation needed]
United States
See also: List of American Viticultural Areas

The American Viticultural Area ("AVA") is for the United States. The only requirement to use an AVA name on the wine label is that 85% of the wine must have come from grapes grown within the geographical AVA boundaries. The first AVA was in Augusta, Missouri, in 1980. The approval of the Augusta AVA was based largely on its long historical relationship with wine in the United States.[4] The Augusta wine-growing area is a 15-square-mile (39 km2) plot of land along the Missouri River, which moderates temperature and provides an appropriate climate for growing grapes.

States or counties can also be used in lieu of an AVA to designate the origin of a wine, provided that 75% of the grapes used in the wine are grown in the state or county listed on the label.
List of appellations

    European Union European Union: Protected Designation of Origin
        Austria Austria: Districtus Austriae Controllatus
        Cyprus Cyprus: Ελεγχόμενη Ονομασία Προέλευσης
        France France: Appellation d'origine contrôlée
        Germany Germany: German wine classification
        Greece Greece: ονομασία προελεύσεως ελεγχομένη
        Italy Italy: Denominazione di Origine Controllata
        Luxembourg Luxembourg: Appellation contrôlée
        Portugal Portugal: Denominação de Origem Controlada
        Romania Romania: Denumire de Origine Controlată[5]
        Spain Spain: Denominación de origen protegida
    Switzerland Switzerland: Appellation d'origine contrôlée
    Australia Australia: Australian Geographical Indications[6]
    Argentina Argentina: Denominación de origen - see also:Argentine wine
    Canada Canada: Vintners Quality Alliance
    Brazil Brazil: Denominação de Origem
    Chile Chile: see Chilean wine
    South Africa South Africa: Wine of Origin
    United Kingdom United Kingdom: Protected Denomination of Origin
    United States United States: American Viticultural Area

See also

    Protected Designation of Origin
    Terroir

Notes and references

Geoffrey W. Bromiley, International Standard Bible Encyclopedia, Wm. B. Eerdmans Publishing, 1995, ISBN 0-8028-3784-0, ISBN 978-0-8028-3784-4
Ezekiel 27:18 Damascus was your merchant for the multitude of your handiworks, by reason of the multitude of all kinds of riches, with the wine of Helbon, and white wool
"VQA Ontario · the Appellations · Overview".
"America's first appellation - Augusta".
"ONDOV". 7 August 2004. Archived from the original on 7 August 2004. Retrieved 4 May 2018.

    "Archived copy". Archived from the original on 2006-04-22. Retrieved 2006-03-11. Australian Geographical Indications

External links
	Look up appellation in Wiktionary, the free dictionary.

    Appellation America Wine Portal. Information about recognized wine appellations in the United States and Canada.

    Foodlogo2.svgFood portal

Authority control Edit this at Wikidata	

    LCCN: sh85146983

Categories:

    AppellationsWine terminology

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Français
    עברית
    Lietuvių
    Norsk bokmål
    Português
    Русский
    Українська

Edit links

    This page was last edited on 24 March 2021, at 16:35 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Appellation d'origine contrôlée [img [inaologo.png]] [img [aocpdo.jpeg]]

! https://www.inao.gouv.fr/

!! https://en.wikipedia.org/wiki/Appellation_d%27origine_contr%C3%B4l%C3%A9e

From Wikipedia, the free encyclopedia [img [inaobanner.jpg]]

For other uses, see Appellation d'origine contrôlée (Switzerland).
Peppers with AOC of Espelette
Headquarters of the Institut national de l'origine et de la qualité in Paris

The appellation d'origine contrôlée (AOC; French pronunciation: ​[apɛlasjɔ̃ dɔʁiʒin kɔ̃tʁole]; "controlled designation of origin") is a French certification granted to certain French geographical indications for wines, cheeses, butters, and other agricultural products, all under the auspices of the government bureau Institut national des appellations d'origine, now called Institut national de l'origine et de la qualité (INAO). It is based on the concept of terroir and a form of geographic protectionism.
Contents

    1 History
    2 Enforcement
    3 Wine
    4 Cheese
    5 Meat
    6 Lavender
    7 Lentils
    8 Honey
    9 Butter
    10 Spirits
    11 Other countries
        11.1 Europe
        11.2 Switzerland
        11.3 United States
        11.4 Canada
        11.5 International trade issues
    12 See also
    13 Notes
    14 References
    15 External links

History

The origins of AOC date to the year 1411, when Roquefort was regulated by a parliamentary decree. The first French law on viticultural designations of origin dates to August 1, 1905,[1] whereas the first modern law was set on May 6, 1919, when the Law for the Protection of the Place of Origin was passed, specifying the region and commune in which a given product must be manufactured, and has been revised on many occasions since then.[citation needed] On July 30, 1935, the Comité National des appellations d'origine (CNAO), with representatives of the government and the major winegrowers, was created to manage the administration of the process for wines at the initiative of deputy Joseph Capus.[2] In the Rhône wine region Baron Pierre Le Roy Boiseaumarié, a trained lawyer and winegrower from Châteauneuf-du-Pape, successfully obtained legal recognition of the "Côtes du Rhône" appellation of origin in 1936.[citation needed] After World War II the committee became the public-private Institut National des Appellations d'Origine (INAO).[3] The AOC seal was created and mandated by French laws in the 1950s, 1960s and 1970s. On July 2, 1990, the scope of work of the INAO was extended beyond wines to cover other agricultural products .[citation needed]

AOCs vary dramatically in size. Some cover vast expanses with a variety of climatic and soil characteristics, while others are small and highly uniform. For example, the Côtes du Rhône AOC "covers some 400 square kilometres (150 sq mi), but within its area lies one of the smallest AOCs, Château-Grillet, which occupies less than 4 hectares (9.9 acres) of land."
Enforcement

The INAO guarantees that all AOC products will hold to a rigorous set of clearly defined standards. The organization stresses that AOC products will be produced in a consistent and traditional manner with ingredients from specifically classified producers in designated geographical areas. The products must further be aged at least partially in the respective designated area.

Under French law, it is illegal to manufacture and sell a product under one of the AOC-controlled geographical indications if it does not comply with the criteria of the AOC. AOC products can be identified by a seal, which is printed on the label in wines, and with cheeses, on the rind. To prevent any possible misrepresentation, no part of an AOC name may be used on a label of a product not qualifying for that AOC.

This strict label policy can lead to confusion, especially in cases where towns share names with appellations. If the town of origin of a product contains a controlled appellation in its name, the producer (who is legally required to identify the place of origin on the product label but legally prohibited from using the full town's name unless the product is an approved AOC product) is enjoined from listing anything more than a cryptic postal code. For example, there are a dozen townships in l'Aude that have Cabardès in their names, several of which are not even within the geographical boundaries of the Cabardès AOC. Any vineyard that produces wine in one of those towns must not mention the name of the town of origin on the product labels.
Wine

There are currently over 300 French wines entitled to the designation AOC on their label.

Legislation concerning the way vineyards are identified makes recognizing the various AOCs very challenging for wine drinkers not accustomed to the system. Often, distinguishing classifications requires knowledge of esoteric label laws such as "Unless the wine is from a Premier Cru vineyard, the vineyard name must be printed in characters no more than half the height of the ones used for the village name."[4]

On the other hand, while the process of label approval is enforced to the millimetre, the quality control for the wine in the bottle is much less strict. While a blind taster must approve the wine for it to receive AOC classification, this tasting often occurs before the product is even bottled, and by a local expert who may well have ties to the local vintners. Even if the taster is objective, the wine sample may not be representative of the actual product, and there is almost no way to verify that the finished bottled product is the same as the original AOC sample.[4]
Cheese

In 1925, Roquefort became the first cheese to be awarded an AOC label, and since then over 40 cheeses have been assigned AOC status.
Meat
Poulet de Bresse

On August 15, 1957, the National Assembly gave AOC status to the poultry of Bresse (Poulet de Bresse). In 2006, it awarded AOC status to salt marsh lamb raised in the Bay of the Somme.[5]
Lavender
Lavandula angustifolia at the Abbaye de Sénanque in Gordes in the département of the Vaucluse

In 1981, the AOC label was given to Haute-Provence Lavender Essential Oil. It refers to a very high-quality production and concerns only the essential oil of fine lavender - Lavandula angustifolia. The fields must be located within a specific territory at a minimum altitude of 800 meters. This geographic area covers 284 communities in the Alpes-de-Haute-Provence, Hautes-Alpes, Drôme and Vaucluse regions.
Lentils

Lentils from Le Puy-en-Velay have AOC status. (See: Le Puy Green lentil.)
Honey

Honey from the island of Corsica has been given AOC status. There are six certified varietals of Corsican honey: Printemps, Maquis de printemps, Miellats du maquis, Châtaigneraie, Maquis d'été, and Maquis d'automne.[6]
Butter

France recognizes the Charente, Charente-Maritime, Vienne, Deux-Sèvres and Vendée AOC regions for butter.
The Beurre Charentes-Poitou[7] has been assigned AOC status in 1979.
Spirits

Armagnac, Calvados, Cognac and Martinique Rhum Agricole all have AOC status.
Other countries
Further information: Appellation (wine)
Europe

Many other countries have based their controlled place name systems on the French AOC classification. Italy's Denominazione di Origine Controllata and Denominazione di Origine Controllata e Garantita followed the model set by the French AOC, and the EU standard for Quality Wines Produced in Specified Regions (QWpsr) also corresponds closely.

While Spain's denominación de origen is very similar, the classification of Rioja in 1925 and Sherry in 1933 preceded the French AOC system by a few years and show that Spain's DdO system developed parallel to France's AOC system to some extent. Similarly, Germany's Qualitätswein bestimmter Anbaugebiete is a wine classification system based on geographic region, but it differs from the AOC in important ways. Qualitätswein bestimmter Anbaugebiete wines are commonly seen as less prestigious than Qualitätswein mit Prädikat, making it more similar to the Vin de Pays or Vin Délimité de Qualité Supérieure systems.

Portugal's Denominação de Origem Controlada, Austria's Districtus Austria Controllatus, South Africa's Wine of Origin, and Switzerland's AOC-IGP are all similar to the French AOC system as well.

It appears also that AOC influenced the development of the European Union's protected designation of origin (PDO) system.
Switzerland
Further information: Geographical indications and traditional specialities in Switzerland

Switzerland has an appellation d'origine contrôlée certification for wines and an appellation d'origine protégée certification for other food products. Before 2013, the appellation d'origine contrôlée was used for all products.
United States

The United States' American Viticultural Areas also follows the model set by the French AOC. The United States Department of the Treasury's Alcohol and Tobacco Tax and Trade Bureau even uses the legal terminology "Appellation of Wine Origin" to describe a vintage wine's location of origin. The AVA indication on a label indicates that 85% of the grapes for wine are grown in the designated AVA. Overall, the appellation of a wine simply says where the grapes are from, although there are some particularities. If the appellation is a state, 100% of the grapes which go into the wine must come from the specific state. If a winery gets grapes from a neighboring state (for example, a California vintner getting Pinot noir from Oregon), it may label the wine "Oregon", but if the state is not a neighboring one (for example, a California vintner getting Cabernet from Washington state), the only permitted appellation is "American."[8]
Canada

In Canada, there is a government-sanctioned wine standard called Vintners Quality Alliance (VQA). It only applies to Canadian wines, and only the provinces of Ontario and British Columbia regulate it.
International trade issues

Outside their home country, protecting the AOC status of certain products can face challenges, notably from a legal perspective. Some countries do not uphold a geographical indication system for their own products and thus, products which are labelled AOC in France, for instance, can be confronted on the international stage with foreign products claiming a similar geographical origin, even though it has not been recognized as such by the AOC system. In such a case, France (or another country) may enter into bilateral agreements with other countries, whereupon the signatories accept to recognize a special status to a list of designated products, or it can also seek the development of rules or agreements at the World Trade Organization level.

Since each country has its own legal and agricultural framework, the specifics of each trade relationship are likely to vary. Also, there are often conflicts between trademarks and geographical indications.[9] For instance, in Canada, only Canadian wines can be VQA approved but other certification trademarks can be registered under the intellectual property legal regime. The owner of a certification trademark is then allowed to sell licences to be used for certain products meeting the owner's criteria. Thus in the case of wines, one AOC certification trademark is owned by the French Republic,[10] while another is owned by Maison des Futailles,[10] a wine producer, of which the publicly owned Société des alcools du Québec is a partner.
See also

    iconWine portal iconFood portal flagFrance portal

    Appellation (wine)
    Denominazione di origine controllata, a similar certification regulated by Italian law
    Geographical indications and traditional specialities in the European Union
    Geographical indications and traditional specialities in Switzerland
    List of Appellation d'Origine Contrôlée cheeses
    List of Appellation d'Origine Contrôlée liqueurs and spirits
    List of Appellation d'Origine Contrôlée wines
    Protected designation of origin, a classification defined in European Union Law
    Protectionism
    Terroir

Notes

EC-ASEAN Intellectual Property Rights Co-operation Programme, Unit 4. Trademarks and Geographical Indications[full citation needed] Archived 3 October 2011 at the Wayback Machine (by Professor Michael Blakeney, October 2007), p. 52
Bouneau, Christine (1998). "CAPUS Joseph, Marie 1867-1947". Dictionnaire des parlementaires d'Aquitaine sous la Troisième République (in French). Presses Univ de Bordeaux. p. 182. ISBN 978-2-86781-231-6. Retrieved 12 August 2015.
Lukacs, Paul (21 October 2013). Inventing Wine: A New History of One of the World's Most Ancient Pleasures: A New History of One of the World's Most Ancient Pleasures. W. W. Norton. p. PT200. ISBN 978-0-393-23964-5. Retrieved 12 August 2015.
Joseph, Robert (2005). French Wine Revised and Updated. Dorling Kindersley. p. 37. ISBN 0-7566-1520-8.
Lascève, Agnès (19 June 2011). "La baie de Somme". France Today. FrancePress. Archived from the original on 14 August 2011. Retrieved 25 March 2012.
"INAO - Institut national de l'origine et de la qualité". inao.gouv.fr.
(in French) Beurre Charentes-Poitou
"WINES: What's in a Name?". winetrail.com. Archived from the original on 25 March 2012. Retrieved 9 June 2011.
Gangjee, Dev Saif (18 July 2007). "Quibbling Siblings: Conflicts between Trademarks and Geographical Indications". ssrn.com. SSRN 1000467.

    "Canadian trade-mark data". ic.gc.ca.

References

    Phillips, Roderick (2000). A Short History of Wine. New York: HarperCollins. ISBN 0-06-621282-0.

External links

    Appellations of Origin from the TTB website
    INAO website

Categories:

    French wine AOCsAlcohol in FranceAppellationsFood product brandsFood lawFrench intellectual property lawStandardsTrademark lawWine classification

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Français
    Bahasa Indonesia
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 4 May 2021, at 14:59 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Arcology 


!! https://en.wikipedia.org/wiki/Arcology

From Wikipedia, the free encyclopedia [img [arcology.jpg]]

This article is about self-contained, densely populated human habitations. For the study of human activity in the past, see Archaeology.
Concept design for the NOAH (New Orleans Arcology Habitat) proposal, designed by E. Kevin Schopfer.[1]
Buckminster Fuller with a drawing of his domed city proposal

Arcology, a portmanteau of "architecture" and "ecology",[2] is a field of creating architectural design principles for very densely populated and ecologically low-impact human habitats.

The term was coined in 1969 by architect Paolo Soleri, who believed that a completed arcology would provide space for a variety of residential, commercial, and agricultural facilities while minimizing individual human environmental impact. These structures have been largely hypothetical, as no arcology, even one envisioned by Soleri himself, has yet been built.

The concept has been popularized by various science fiction writers. Larry Niven and Jerry Pournelle provided a detailed description of an arcology in their 1981 novel Oath of Fealty. William Gibson mainstreamed the term in his seminal 1984 cyberpunk novel Neuromancer, where each corporation has its own self-contained city known as arcologies. More recently authors such as Peter Hamilton in Neutronium Alchemist and Paolo Bacigalupi in The Water Knife explicitly used arcologies as part of their scenarios. They are often portrayed as self-contained or economically self-sufficient.
Contents

    1 Development
    2 Similar real-world projects
    3 In popular culture
    4 See also
    5 References
    6 External links

Development

An arcology is distinguished from a merely large building in that it is designed to lessen the impact of human habitation on any given ecosystem. It could be self-sustainable, employing all or most of its own available resources for a comfortable life: power; climate control; food production; air and water conservation and purification; sewage treatment; etc. An arcology is designed to make it possible to supply those items for a large population. An arcology would supply and maintain its own municipal or urban infrastructures in order to operate and connect with other urban environments apart from its own.

Arcology was proposed to reduce human impact on natural resources. Arcology designs might apply conventional building and civil engineering techniques in very large, but practical projects in order to achieve pedestrian economies of scale that have proven, post-automobile, to be difficult to achieve in other ways.

Frank Lloyd Wright proposed an early version[3] called Broadacre City although, in contrast to an arcology, Wright's idea is comparatively two-dimensional and depends on a road network. Wright's plan described transportation, agriculture, and commerce systems that would support an economy. Critics said that Wright's solution failed to account for population growth, and assumed a more rigid democracy than the U.S.A. actually has.

Buckminster Fuller proposed the Old Man River's City project, a domed city with a capacity of 125,000, as a solution to the housing problems in East St. Louis, Illinois.

Paolo Soleri proposed later solutions, and coined the term 'arcology'.[4] Soleri describes ways of compacting city structures in three dimensions to combat two-dimensional urban sprawl, to economize on transportation and other energy uses. Like Wright, Soleri proposed changes in transportation, agriculture, and commerce. Soleri explored reductions in resource consumption and duplication, land reclamation; he also proposed to eliminate most private transportation. He advocated for greater "frugality" and favored greater use of shared social resources, including public transit (and public libraries).
Similar real-world projects
Arcosanti city

Arcosanti is an experimental "arcology prototype" – a demonstration project under construction in central Arizona since 1970. Designed by Paolo Soleri, its primary purpose is to demonstrate Soleri's personal designs, his application of principles of arcology to create a pedestrian-friendly urban form.

Many cities in the world have proposed projects adhering to the design principles of the arcology concept, like Tokyo, and Dongtan near Shanghai.[5] The Dongtan project may have collapsed, and it failed to open for the Shanghai World Expo in 2010.[6]
McMurdo Station

McMurdo Station of the United States Antarctic Program and other scientific research stations on Antarctica resemble the popular conception of an arcology as a technologically advanced, relatively self-sufficient human community. The Antarctic research base provides living and entertainment amenities for roughly 3,000 staff who visit each year. Its remoteness and the measures needed to protect its population from the harsh environment give it an insular character. The station is not self-sufficient – the U.S. military delivers 30,000 cubic metres (8,000,000 US gal) of fuel and 5 kilotonnes (11 million pounds) of supplies and equipment yearly through its Operation Deep Freeze resupply effort[7] – but it is isolated from conventional support networks. Under international treaty, it must avoid damage to the surrounding ecosystem.
Begich Towers

Begich Towers operates like a small-scale arcology encompassing nearly all of the population of Whittier, Alaska. The building contains residential housing as well as a police station, grocery, and municipal offices. Whittier once boasted a second structure known as the Buckner Building. The Buckner Building still stands but was deemed unfit for habitation after the 1969 earthquake.[8]
In popular culture

Most proposals to build real arcologies have failed due to financial, structural or conceptual shortcomings. Arcologies are therefore found primarily in fictional works.[9][10]

    Another significant example is the 1981 novel Oath of Fealty by Larry Niven and Jerry Pournelle, in which a segment of the population of Los Angeles has moved into an arcology. The plot examines the social changes that result, both inside and outside the arcology. Thus the arcology is not just a plot device but a subject of critique.[11]
    In Robert Silverberg's The World Inside, most of the global population of 75 billion live inside giant skyscrapers, called "urbmons", each of which contains hundreds of thousands of people. The urbmons are arranged in "constellations". Each urbmon is divided into "neighborhoods" of 40 or so floors. All the needs of the inhabitants are provided inside the building – food is grown outside and brought into the building – so the idea of going outside is heretical and can be a sign of madness.[12] The book examines human life when the population density is extremely high.[13]

See also

    Autonomous building
    Bionic architecture
    Dubai City Tower
    Earthship
    Megastructure

	

    Proposed tall buildings and structures
    Shimizu Mega-City Pyramid
    Underground city
    Urban ecology
    Vertical farming

References

Notes

Seth, Radhika. "Heavenly Abode" on the Yanko Design website (August 17, 2009). Retrieved April 29, 2015.
Soleri, Paolo (1973), The Bridge Between Matter & Spirit is Matter Becoming Spirit; The Arcology of Paolo Soleri, Garden City, New York: Anchor Books, pp. 46, ISBN 978-0-385-02361-0.
Wright, Frank Lloyd, "An Organic Architecture"
Soleri, Paolo, "Arcology: The City in the Image of Man"
Kane, Frank (November 6, 2005). "British to help China build 'eco-cities'". The Guardian. London. Retrieved April 25, 2010.
Fred Pearce (23 April 2009). "Greenwash: The dream of the first eco-city was built on a fiction". the Guardian.
Modern Marvels: Sub-Zero. The History Channel.
"Everyone In This Alaskan Town Lives In The Same Building". digg.com.
Ash, Theodore (2014) Neoarcology
Tate, Karl (July 5, 2013) "Inside Arcology, the City of the Future (Infographic)" Live Science
Seed, David (2011) Science Fiction: A Very Short Introduction
Silverberg, Robert (1971). The World Inside. New York: Doubleday. pp. 3–4.

    Stableford, Brian "Silverberg, Robert" in Clute, John and Nicholls, Peter (eds.) (1995) The Encyclopedia of Science Fiction New York: St. Martin's Griffin. p. 1106. ISBN 0-312-13486-X

Further reading

    Soleri, Paolo. Arcology: The City in the Image of Man. 1969: Cambridge, Massachusetts, MIT Press.

External links
	Wikimedia Commons has media related to Arcology.

    Arcology.com – Useful links
    The Night Land by William Hope Hodgson (Full text online)
    Victory City
    A discussion of arcology concepts

Usage of "arcology" vs. "hyperstructure"

    Arcology.com ("An arcology in southern China" on front page)
    Arcology ("An arcology is a self-contained environment...")
    SculptorsWiki: Arcology ("The only arcology yet on Earth...")
    Review of Shadowrun: Renraku Arcology ("What's an arcology? A self-contained, largely self-sufficient living, working, recreational structure...")

    vte

Emerging technologies

    vte

Real estate developments
Categories:

    MegastructuresExploratory engineeringEnvironmental designHuman habitatsPlanned citiesUrban studies and planning terminologyEmerging technologiesCyberpunk themes

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 22 April 2021, at 15:42 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

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

Clarid County urls

202105071652

Vocabulary list for the forthcoming letter, with links and a partial definition of terms.

For them to know what to do, we must tell them.
For us to tell them, we must know.
For us to know, we must learn.
The beginning of wisdom is to call things by their proper names, hence we begin with vocabulary.
Sure I can break this down to 3 bullet points so you can pull the trigger to help us all fight the war on violence. 
But there is more to it than that.
 Whereas “Not knowing” is no excuse for breaking a law,
and Whereas rather than preferring to eschew obfuscation, you have and continue with malice and twisted feeble forethought to issue an ever growing number of pages each year which you claim to be law, color of law, or the like, with full knowledge that neither you nor your staff and perhaps only a few of your constituents regularly read the entire text of a law, mandate, resolution, treaty, notice, regulation, statute, bill, or other predatory printed paper which would provide more utility and value had it instead been formed into toilet tissue.


Realpolitik? Power Politics? Am I too  naieve?

It would land on deaf ears to say that history is a game played by the worst of us vs. the best of us over the heads of the rest of us, that about 10% of us are evil, about 10% extra wonderful, and about 80% not much to tweet about.  But that 80%, Neuro Linguistic Programming and advertising and aaaall the other psychological warfare techniques by the men who stare at goats all the way back to ancient Egypt and beyond there is an uninterrupted hereditary line of the most bloodthirsty lines inbred across the globe for thousands of generations right up and through the day when We told Qing George “piss off, we’ll drink coffee” and since then, we thought we were past the days when we were ruled by George, son of Georgie Boy.   But wait… George son of George. Hmm.




Here is the single sentence soundbite edit: “First, All Adult interaction with cannabis is a Human Right, 
Second,  “ Government is not reason, it is not eloquence,—it is force! Like fire, it is a dangerous servant, and a fearful master; never for a moment should it be left to irresponsible action” and .gov must sudo apt-get update and sudo apt-get upgrade to web 3.0 4th Industrial Revolution Imagination Age tools ways definitions methods and comprehension thereof, ASAP, before the PboC’s CBDC A.K.A. DCEP renders the USD FUBAR, ok, and lastly, get out of the way. Getting out of the way is the only honorable thing to do, the only practical, the only necessary move for your team to make. Cease and desist from all discussion involving cannabis beyond any assistance requested by the public regarding protection of intellectual property and prior art.


Dear County, 
  This isn’t easy, this process of putting to words what should already be obvious.
We currently have proven technology which negates the need for representative government and therefore representatives.
 
1. All Adult interaction with Cannabis is a Human Right, a Birth Right, and like Breath and the Right to Sleep,  it requires no mediation or meddling or involvement by government as there exist plenty laws to cover any crimes you may imagine.  Chocolate crime. Banana crime. Cannabis crime. All 3 equally silly, ridiculous and unnecessary.   False Labeling and advertising? Got it. Sales Tax. Got it.. 10% flat would make accounting sooo much easier.

2. Realize that unless you fancy yourselves as patronizing empire builders or worse, your only power is that of the following
destruction;
subtraction
friction
taxation
death
fee
fine
confinement
deprivation

It matters little who it was that first said  “Government is not reason, it is not eloquence,—it is force! Like fire, it is a dangerous servant, and a fearful master; never for a moment should it be left to irresponsible action.”
  
4th Industrial Revolution Rethink.    Organically farmed cannabis on private property in unincorporated county areas does not require regulation.  As stated, there exist plenty laws on the books to cover any issues that involve agriculture, pollution, private property, theft, trespassing, etc.
  
4th Industrial Revolution Rethink.   Ditch the rusted and seized rustic mentality and fetish for Steinbeck era tools and ideas.   Sudo apt-get update. Sudo apt-get upgrade.  That’s what Admin priviledges are for.






    Doge-1 1 is scheduled to go to the Moon.  China is launching their DCEP CBDC, (Central Bank Digital Currency) this is the age of cyber-physical systems, of dark matter and, of the Purple Economy.


Had the local politicians been doing a better job of their job, perhaps approaching their task and duty as does Jiro when he makes Sushi, we would not find ourselves in the MESS, the SOCIAL MESS, that requires from me this letter.   There are so many good and better new tools available for so much of the work you are doing… Miles from Toyota we are but Silicon Valley is just over the hill… and all the wisdom of how to succeed at nurturing emerging points of interest into the Billion dollar unicorns they were born to be.

Is your SCRUM as Agile as it could be? Kanban but then every problem looks like a nail?

Cancel Cannabis?


I love and understand that this is Steinbeck County.. er, country.
Rolling hills of wine, rustic, rusting, crusty, Norman Rockwell.
A nice place for your Pathos.
Pacific Grove, CA, A nice place for a nap.

There is an invisible line at the north of Monetary County.
There are businesses that still do it all by hand.. landline, Rolodex.  Sliderule.

There are those in government here who’s ideas are just as.. in need of a sudo apt-get update and sudo apt-get upgrade.

Thus their tools, methods, world views, paradigms, heuristics, worldviews, and errors are archaic anachronisms which at best attempt to preserve the sensibilities and status quo of that brief and quickly passing moment, a decade or 2 out of the thousands of years of history of humans on earth… obvious then to any who lived through the previous decades how much change was certainly ahead.

When did you graduate high school? College?
I bet you silver hairs still dig those songs from your senior year.
I do.
And thousands of other songs from over a hundred other, newer genres from twice as many countries.
Ah the places the pursuit of happiness takes one.


 I write this to put you all on notice. 
To let you know that We The People are watching you, and EVERYTHING you do, we notice.
This is for The Record. For the Public Record. Keep this for all time as you and I and others will refer to it.   Close to a thousand pages at the start, even that is not the 10% tip of the iceberg… There is so much to know, and so much ignorance, failure, futility, and lacking by your team.

We The People.
You are those who swore, who took that oath.
We will forever hold your feet to the fire.
  As a show of mercy may I recommend you all resign and go find other things to do with the rest of your lifespan.  Your team will be some of the last to realize your obsolescence, that you are no longer needed.  We can have rules without rulers. Laws without politicians.  The entire clunky way which you proceed is postage stamp and horse and buggy era technology. 
 Rethink.     
Refund the police.
I want my money back.
Reallocate funding for law enforcement.
Code violation?
Code is Law?

Let’s expand on that and go naturally further.

Code IS law.

Every big company is a software company. They research design source make build wrap stock pack and ship with software end to end regardless of goods or services provided.

Nonessential. 

The power to tax is the power of Death.

Your only tool is the No, the Don’t, the Stop, the Fine, the Fee, the Tax, all backed up by a well oiled an d lobbied mostly for profit system of  guns and cages.  Coercion. Stick. 

When carrots?


You don’s start up. 
You don’t feed.
You don’t build.
You don’t design.
You’re not my Dad.


You don’t sow or cultivate but you reap enough to dress drive and dwell as you do.


Again, from the top.


Hey there Human.
Hey there Citizen.
Hey there Civil Servant.

The practical conversation of how we should go about living in harmony, as Free Humans with un-a-lien-able rights, is far from over.
 With the the many changes in what it means to be Human during the 4th Industrial Revolution (happening now) , we must not only consider what has been born from the trials, errors, and successes during the 25 years of the now past information age (1993 to 2018), but also rethink much of the accumulated conventional wisdom of the prior decades, centuries, and millenniums.   

Postgenderism, for example, may, as it emerges, require a more explicit legal definition of “Natural Born Citizen”. 

Perhaps let the Wikipedia page on that term be your bedtime story this evening. I think you’ll find it quite edutaining, though, If I am correct, you’ll soon have much more homework to attend to if you genuinely seek to do the very best job possible for someone in your position.






3rd writing:


Why as civil servants do you continue to treat your neighbors in ways you wouldn’t dare so in person?
Why as civil servants do you continue to act as if the birthright, the Human Right, the un-a-lien-able right of Adults to freely interact with Cannabis on their property as they see fit without any mediation, meddling, permission, or involvement of the uninvited as they do at a back yard BBQ or family and friends heirloom tomato harvest?


For aaaaaaall of human history right up until a hundred years ago Cannabis wasn’t a “Thing”.
10,000+ years of recorded history as humanities #1 go-to all purpose medicine, and #1 most useful plant.   ‘Twas YOUR TEAM that made it a “Thing”.   The Citizens of The Republic of California voted it otherwise again and again and again over the past 3 decades..  We voted it “No longer a Thing”.

So why do you continue to make it a Thing?
  Every accurate word I can think to use to describe your performance, foresight or lack thereof, intentions and execution… they are all derogatory, foul and not allowed in “G” rated movies, or both.
Vote of No Confidence. None.

The overall tone of your performance with regards to cannabis policy is like that of a lazy mean middle school child:  As if before learning of Heroine, Meth, Opioids, pharmaseuticals, and the extent to which they have corrupted the fabric of our society at all levels…  you pipe up with the best you’ve got which amounts to little more than than had you said “My Mother doesn’t like Marijuana so I don’t like Marijuana and I don’t think you should either, in fact, I’m going to do all I can to stop you, to fine you, and to hurt you”.      An there is an inverse proportion to the validity of your argument and the resources you expend in vain in the name of it.



“Who is this clown?”, you say?

Why, your friendly neighborhood Pueblo Clown, of course.
 Si Se Puedes, si lo haremos.

(Anthropologists, most notably Adolf Bandelier in his 1890 book, The Delight Makers, and Elsie Clews Parsons in her Pueblo Indian Religion, have extensively studied the meaning of the Pueblo clowns and clown society in general. Bandelier notes that the Tsuku were somewhat feared by the Hopi as the source of public criticism and censure of non-Hopi like behavior. Their function can help defuse community tensions by providing their own humorous interpretation of the tribe's popular culture, by reinforcing taboos, and by communicating traditions. A 1656 case of a young Hopi man impersonating the resident Franciscan priest at Awatovi is thought to be a historic instance of Pueblo clowning.[4]) 


CLARID COUNTY PIECES

 speed/ease vs. accuracy/logic

QRCodes on everything.

Given  the list of locally available off the shelf items lawfully sold for oral consumption,  there is no grounds upon which for you to claim that you regulate cannabis in the interest of public safety.  Heart Disease, Diabetes, Obeisity.

The only appropriate place for government involvement between adults and cannabis is perhaps the continued efforts to protect intellectual property, cultural heritage, and prior art,  as they specifically relate to Cannabis  Appellations  of  Origin.

For and cannabis related crime you may imagine there is already plenty legislation and regulation to deal with that, so much so that both your team and we the people most commonly pay specialists, lawyers in this case, to digest and make sense of whatever government excretes for us. Not me.   Your team's aeons of oppression are over so I'll allocate a little time to informing you of your obsolescence, of the nonessential nature of your job and title, as clearly as I can.    It's a big beautiful world out there, so many places to know, so much room for a human to develop and blossom and flourish in a time of increasing eudamonia:  You're wrong, you're become more irrelevant with the passing of the day, yesterday was the beginning of the Great Era of the Unemployed Politician.

Your heavy handed treatment of cannabis cultivators is very much like those taskmasters, overseers, and whip-cracking slave owners that gave their slaves one really good last beating the day before the emancipation proclaimation went into effect.

Dear county,
We need to end this  toxic relationship.
This really isn't working out for me, I think I need to get some space where I can do my own thing, somewhere I can start fresh, and I know you're not going to want to hear this , but I don't want you there, you're not welcome there, you, in fact, are specifically NOT invited, and don't ever show your face around there.   If I have to get a restraining order, a refunding order, or a make my day clause, I will.    I'm serious.    This relationship is very unhealthy for me, all of my friends and family support me in my decision to leave you.
    They warned me that you'd make threats and say things like every abusive husband, abusive boyfriend, partner lover whatever.. This has to stop.     I thought we had an understanding that would work, you said I could trust you, but that trust is gone.  I'm revoking my consent. You no longer have my consent to actor appropriate, do, claim or speak in my name.


Who are these weird people? Why is it so hard for them to understand what is meant by "Fluke Off" when they come around.

Dogs usually bark before the biting starts.  It's kind, it offers the option to simply fluke off and be about your way rather than escalate.





This is and should be all about ethics.
From there we logically proceed.
Then , if we truly feel better, we know we got something right.

Right now? Right now this feels bad, this feels terrible. Very very unhappy.  Not Extreemly unhappy,  that is by definition reserved for extreemists though we are also Not moderately unhappy, no,  there is nothing moderate about the inept and impotent actions by team .gov  .



YOU REEFER MADNESS OLD FARTS! YOU FOUL DUSTY WINDBAGS.  YOU OBSCENE OBSTACLES TO THE PURSUIT OF HAPPINESS

          What is your premise?

  In nature there are no contradictions. If in your thinking you come upon contradictions, check your premises for one of them is wrong.
What is your premise in continuing to harass, jail, fine, smash & grab Central Coast California Cannabis Cultivators?
While per Prop 64 Californians have made their voice will and intentions known and codified into law having repealed the war on drugs as far as it applies to Cannabis and in doing so have mandated built and implemented the The United State’s First Appellation of Origin program which is the also the First of it’s kind in the World, having also enacted an equities program which was founded on the fact that the War on Drugs is and was a disgusting and failed racist discriminatory and community shredding waste of resources at best and the loss of life liberty and property for far too many for far too long.

It has become obvious and is hereby noticed that in Monterey County the The Unholy War on Cannabis Cultivators continues.
      
    Refund the police & sheriff.

Prescribed as medicine for 10,000 years, outlawed for a century, and prescribed lawfully again for over 25 years in California.
    A religious sacrament for some, a deep and meaningful part of good life and good culture and good health for millions of people of every demographic, profession etc.
    
    Local and State  governments are being graded: 70% C 80% B 90% A with regards to percent of all Cannabis Cultivators currently in compliance with existing regulations.    It’s that simple.
   
    There is no question requiring studies and theorizing as to if a regulatory policy is working or not: simply look at it’s compliance %.

    Problem: County authorities continue to behave like assholes. Violent assholes.

    As you won’t be able to conceive of simpler solutions such as $10 one page permit process for ANY & ALL < 10K sq ft outdoor in the ground under the sun organic cannabis on private property until next year we’ll focus on the basics.

   (Yeah that’s right, green light any Organic cannabis grow on private property that is under 10,000 square feet in all unincorporated areas of Monterey County.   Hello OCAL FastTrack Program?)

    The Police & Sheriff don’t deliver the Red Tag that stops unpermitted residential construction so why isn’t it the Ag Department that politely delivers red tags to unpermitted cannabis grows?
    Fatten the Pig. I’m not farming pigs but I never heard of someone advertising skinny pigs.   Call them stubborn and pig headed but if you want to continue to enjoy an increasing flow of revenue into local and state coffers you must first allow the pig to fatten rather than continue with the current state of coffins for cultivators.   Make it as easy as possible for Cultivators to maximize their yields within the boundaries of simple and sensible guidelines for the mutual benefit of the Cultivator’s prosperity and the respective flow of funds to government budgets.

    When Alexander the Great met the famed philosopher from Sinope, one Diogines, and asked him what favor he might grant him, Diogines replied “I would only ask that you do not stand between the Sun and me”.

   When the bad guys in Atlas Shrugged have one last chance to negotiate some accord for their loosing schemes and objectives and ask the hero’s what they want the reply is “We ask that you simply get out of the way”.


TO FEE OR NOT TO BE?

    You have no power to create, to generate, to produce.
     Your only tools are the “No” & the “Fee”.
     Your No tool is to be used to save us from ourselves, as you would to a toddler near the top of a staircase, or reaching for a knife on a kitchen counter, or in response to a request to declare war.
    
    Your No tool the power to deny breath. The power to suffocate anything that would breathe against the will of your word.

     
Your Fee tool is the tool of the mosquito, the leech, the bat, the vampire: For the power to Tax is the Power of Death.
   It is the measure of how much food one must take from their plate and throw into the clunky wasteful self serving machinery of buracracy in hopes that some fraction of the promise of wise allocation is realized.

    It is friction applied to otherwise efficient process with the stated goal of transferring some of the heat generated by the enterprise to warm others that are left in the cold? Or is it intended for contract enforcement costs, you know to pay for the court related expenses of justice being carried out to maintain our Social Contract?

   Said the regulator: “I wonder if we could perpetually power a vehicle just from the energy produced by the regenerative braking?”   So it’s like driving down the road in a Prius hybrid with the brakes on to charge the battery.
Yes.   It is actually that stupid, let me be the boy who saw and said aloud that “The Emperor Wears No Clothes”, the fat emperor is the elephant in the living room with “War on Drugs” graffittied all over it’s many square metered hind end.
    
   10% Gross reciepts. That’s it. Flat Tax. Nice and Metric, er, I mean decimal.. you know, so the reporting is easy.. just move the decimal one to the right and that is your tax liability.  Sorry accountants, your services are less needed in this department although focusing on competency and expertise in declaring cryptocurrency PnL for the year is a much needed and growing skill set.  

          When friction is reduced resulting in greater economic velocity, where a system is increasing output efficiency by 1000%, taxes can be reduced by 90% and remain the same net $ amount. 
  Scenario 1. a business does $100 gross sales in a year and the tax is 10% for a tax obligation of $10.
  Scenario 2. a business increases output to $1000 gross sales in a year with a decreased tax of 1% for a tax obligation of $10.

   Would this be quadratic taxation? Would it only serve to incentivise monopolization?

   The proportional (or worse: “increased”) tax rate makes little sense.
  Whatever the desired level of provisions for a community be they defense, roads, energy production etc. there is a fixed or set cost for these projects.  It’s not a matter of “because Alice & Bob trippled their artichoke production there suddenly became a need for tripple the financial (TAX) contributions to the communitie’s projects.

   May I add that wealth is not a static or fixed quantity which only shifts in ownership that some may have more only at the expense of others. No. Before a one can steal a dollar he didn’t earn another must have first produced a dollar he didn’t get, FOR WEALTH IS CREATED.
    Cash crops in an Ag State.
WHO & UN green lighting precedes USA dereg and decrim though many equitorial regions may leapfrog the US and plant their ideal environments which enjoy year round fertility without snow and with plenty of natural rainfall for irrigation.
    Our economy sucks and our currency is crashing and the rest of the world is waking up to what the market value of their labor and land is and quickly realizing that is it not cheap and it is not for sale at a discount any longer.

   What the US is to the world, California is to the US, as is Monterey County to California, as is Big Sur to Monterey County.

Shame on you if you were elected in Monterey County, or in the State for that matter, if you don’t already know the rich history of Cannabis in Big Sur.

“No stems no seeds that you don’t need..”. Sinsemillia, Spanish for “without seed” or “seedless” is the name for unpollenated Cannabis cultivated by removing the male plants from the female plants before the males release polen, thus producing unfertilized seedless flowers known fondly as buds.

   As in politics and management, this process of removing the males was developed in California, Big Sur to be exact.
    There are books and there are books being written about the history of Cannabis in Monterey County.

    This is a now generations old and valuable and endangered part of California cultural heritage AND IT MUST BE PROTECTED PRESERVED AND PROMOTED.

   Collectively, Monterey County Supervisors are clinically insane, or at least schizophrenic and suffering multiple personality disorders.

   Liberal my roach clip! While a States and County Cannabis Equities Program is already in place and distributing allocated funds and respective authorities speak out of one side of their Jannus headed mouth proclaiming Social Justice being served, at the same time violent armed forces are reigning terror upon herb farmers, cannabis cultivators, our neighbors, our families, our community, us citizens.

    You the County will pay for your treachery and treason and failure to carry out your mandates. The gavel has already dropped in The People of California vs. The State of California and YOU LOST, we won, as proved beyond a shadow of a doubt by the very existence of the equities program, which though currently mismanaged and severely and embarrassingly inadequate and underfunded, is proof of your historical wrongdoing, while being a small step in the right direction.

     You will pay more into the Equities program as a fine for your friction and misuse of force.
     You will lower the barriers of entry and by that is meant all costs and fees associated with the lawful cultivation of < 10,000 square foot Organic grows on any and all private property in unincorporated Monterey County land where vegetable or other agricultural operations are already a right or permitted and the permit application shall be a maximum of ONE PAGE  and the fee shall be $10.   Use good Free Open Source Software and automate the permit process as much as possible, unspent permit fee funds shall be spent on providing existing Regenerative Organic Farming materials and informational resources to anyone who asks for them.

You will work daily to find new and better ways to lower fees and expenses and to increase profits for all businesses, in the county and state just as you do wine, holywood, tourism, skiing etc.

  To the full extent possible and at every oportunity you will replace the expensive and inefficient members of your buracracy with software to automate processes and remove humans from the equasions.  Technology is already well advancing in this direction so these demands are not outlandish or far off, they are they way.

Middlemen and Trusted Third Parties your days are numbered as are the musical chairs upon which you sit that decline in number daily.  We don’t need politicians much today and even less tomorrow.  We can have rules without rulers and achieve consensus without leadership.

    Leaders? Thought Leaders? Sure.
Hello Liquid Democracy. You should already be familiar with this method of consensus. I won’t explain it here.

   This archaic wait 4 years or 2 years if lucky for the chance to delegate one’s consent to a different idea, to a different representative, is History.

   The world is changing for the better too fast to continue to use horse & buggy postage stamp grade democratic methods.

   Quadratic voting. We will be having more of that.

   Yes, Many thousands of others and myself are working in earnest to render politicians obsolete. Because Math.

   Because even though I love my Mom, I trust Math even more.  

2 + 2 always = 4.  
“Vote for me and I’ll make it 5”.  Ya, No.

How about Nooo?

What more is history than one bloody and painful misallocation of trust in third parties, in individuals, rulers, kings, queens, leaders, groups of leaders, etc.?

DAO Decentralized Autonomous Organization. The vending machine that automatically reorders inventory upon sale. That’s what we want. That’s what we’ll have. That’s what we’re building.
 
   Picture this: Facebook, or an open source software replica of it. Anyone many make a proposal, a Proposition.
    It automatically is on the next ballot of the next election to be voted into law if it receives majority votes after receiving “Likes” from 5-10% of the constituents in the voting area.

    Universal Basic Income (or TAX credit$) ? Fine, make it conditional on recipients voting on a minimum of 2/3 of the issues during any given election cycle.

    2 year terms? 4 year terms? Term Limits?
    We need to be VOTING ON ISSUES ONCE A MONTH.
   January is Economic issues.
   February is Health & Safety.
   March is Foreign Policy
 April is Interstate & Federal Policy Month.

Get the picture?

    How can all this work, voter fraud, “it’s who counts the votes” said Stalin..

Well comrades, in what some are heralding as the “Greatest Discovery of the past 500 YEARS!” may lie the.

  No lie, Distributed Ledger Technology (DLT) , formerly known as “Blockchain Technology”, which more specifically is about 5 major components, each a technological breakthrough in it’s own right which together combine to provide the never before seen function of allowing for the creation use and maintainence of a Public, permissionless, trustless, transparent, immutable ledger.  Oh, and it comes with a US $1.000.000.000.000.00 bond to back up that claim & statement & fact.

The name of the Bond is Bitcoin, the first application of Blockchain Tech.

Like the electrical lightbulb or a finger pointing to the moon, to focus on the bulb alone is to miss the electricity and all it’s heavenly glory.

Jaded Ingrates! Complaining of having to wait sitting an extra half hour on the runway before take-off.  At Family reunion in 2016 as my Father and I drove into town he said “I remember driving this road into town with my Father in a horse and buggy”.  Falcon Heavy. Glow in the dark mice.  Large Hadron Collider.   Pause and reflect on the things witnessed in a rapidly changing world from 1922 by a man who fought in WW2, Korea, AND Viet Nam, before having boys after 50 and raising them in Europe while teaching University classes there, this Man a 3rd generation Freed Slave, who live 96 years.

Why the nostalgic bio about my Pa? For perspective.  You look at reports begun 90 days ago about the 365 days prior to that start date to spend 90 days from today developing policy to be implemented in 180 days.  
Not very Agile. When SCRUM? Kanban you do better if you try different? Try new?
    
    Were going to include the SHA256 hash of EVERY public .gov document and form with the document and immediately and forever host the original and every iteration on IPFS (InterPlanetary File System)   

EDIT: About Blockchain Voting: If Bitcoin has been up and running every day for over 10 years and not been hacked (and show me the bank or project one tenth it’s size that hasn’t been hacked), then the same mechanism that now secures more than USD $1Trillion can easily be made to work to service our collective need for a secure and trustless voting system. Ask Sicpa. Ask IBM. Ask Bitcoin Core Devs.

It would be lame and wouldn’t work well if every road was a toll road, but to the extent possible we must do the opposite of Obama Care.  NO MORE MANDATORY crud.  Instead of mandating and penalizing and leaving only a narrow path of flaming hoops through which to opt out, GIVE US A MENU.  Give us a menu of options into which we may opt-in IF WE SO CHOOSE, without reprercussions for declining to aquiesse.

   Smaller producers using universal parts and standards competing for market share incentivises better value for consumers.

  Why do we not have roving fire fighters patrolling areas and neighborhood because they may happen to witness a fire or perhaps deter fire by their mere presence?  
   
    Why is the Police Brigade any different? Why are they not call/complaint driven?

Why guns?  Why not have many officers show up and only 1 or 2 with weapons?


  REFUND THE POLICE, reallocate, stipulate, and hold accountable individually and heirarchially.

Which one of you is today’s Henry (Harvey?) J Anslinger? J. Edgar Hoover? 
    I’m talking Cannabis and you’re playing Heroine, Opiates, Fetynal, Oxywhatever and meth breaking badder than ever.   You need to shift your focus. All of you have family or friends or both that are casualties in one way or another of the drug war and in your case I mean messed up on pharmaseuticals or that crap allowed managed run amd profited from from the white shoe’d national security boys.

    You’re not my Dad.  You don’t like me growing smoking selling Cannabis you can go “piss up a rope” is, I believe, the phrase as they say in British Parliament.
    We’re past that now. You can sit in your living room and add Hate of Cannabis to the long list of things in the world not to your liking and beyond your control.

All interactions with the Cannabis plant by adults is a Human Right.  Full Stop.

It is a human right, a birthright, and it needs no mediation or intermediation by other individuals or groups of individuals or any authority.

I’ve said it and I’ll keep saying it: CANNABIS IS A HUMAN RIGHT.

No the State is not responsible for providing it.  They are responsible for getting out of the way.

Appellation of Origin.
  While Monerey County Farmers and others in our Golden State work to institute the World’s First Appellation of Origin Designation & Certification Program for Cannabis by voter mandate and in colaboration with the CDFA, bringing long overdue and much needed worldwide recognition of the producers and of their production of the WORLD’S FINEST CANNABIS. 

POP THE CHAMPAGNE! This is the literal and figurative Champagnification of Cannabis. For the same reasons and based on the same premise that defines ONLY paricular grape cultivars produced in specific and tightly monitored and regulated standards and manufacturing processes from only within the specific region of the French Province of Champagne, does SOME (not all) of the sparkling wine produced there satisfy all the requirements to rightfully bear upon it’s label “Champagne”, for ALL ELSE, at best is just a really good sparkling wine, but not TRUE Champagne.

 Take a cutting of a Rothschild Champagne grape and go plant it next door in Bordeaux and no matter how magnificently and lovingly and thoughtfully you cultivate those grapes and craft that wine… It will not be, it will never be, it can NEVER be, Champagne.

Well guess what folx? What we got going on here on the Central Coast of California in Monterey County is  nothing less than the Champagne of Cannabis, yes, THE FINEST WEED IN THE WORLD, known fondly by your parents and friends as “BIG SUR HOLY WEED”.

Verily, by math we shall render you unnecesarry, obsolete, and non-essential.

But don’t worry: We’re hiring!






The hunt begins:
They sought it with thimbles, they sought it with care;
They pursued it with forks and hope;
They threatened its life with a railway-share;
They charmed it with smiles and soap.[13]


(The Hunting of the Snark (An Agony in 8 Fits) is a poem written by English writer Lewis Carroll.)
















A write-invalidate protocol.

II. “Clarid sequence of ideas”


Homo economicus
Rational choice theory
Tyranny of small decisions
Path dependence
&
Path dependence
Innovation butterfly
Attractor
Cycle detection
Algorithm
Entscheidungsproblem
Infinite loop
Deadlock (Not to be confused with Deathlok or Dreadlock)
Resource contention
Cache coherence
Memory barrier
Directory-based cache coherence
Bus snooping
Non-uniform memory access
False sharing
Resource allocation
Allocative efficiency
Pareto efficiency
Vilfredo Pareto
Corruption
Contention
Space complexity
ALL WATCHED OVER BY MACHINES OF LOVING GRACE summary
Art manifesto
Rational choice theory
Ultimatum game
Post-scarcity economy
Post-Scarcity Anarchism
Peggy Kornegger
Anarchism: The Feminist Connection
Block (Internet)
Emotional contagion
Limbic resonance
Linguistic empathy
Projective identification
Sanskritisation
Anomie
Acedia

Anhedonia
Weltschmerz
Mean world syndrome
Cognitive bias
List of cognitive biases
& The Cognitive Bias Codex: A Visual Of 180+ Cognitive Biases
Every Single Cognitive Bias in One Infographic
Felicific calculus
Invisible hand
The Use of Knowledge in Society
&
Portal:Capitalism
Dictator game
Cyberpunk derivatives
Imagination age
& The Age of Imagination
Coming Soon to a Civilization Near You.
by Charlie Magee
Cognitive-cultural economy
Cybernetics
General intellect
Not to be confused with General intelligence.
Common knowledge
Judicial notice
General knowledge
Fluid and crystallized intelligence
Nootropic
Collective action problem
21st century skills
Phenomenon-based learning
Design-based learning
Organizational learning
Design thinking
Wicked problem
Problem structuring methods
Delphi method
Policy Analysis Market
Planning poker
Wideband delphi
Reference class forecasting
Nominal group technique
Horizon scanning
A Guide for the Perplexed
Drama theory
Not to be confused with Dramatic theory.
Confrontation analysis



Metagame analysis
Knowledge management
Ignorance management
Learning organization
Systems theory
Systems art
Systems theory in political science
Organizational metacognition
Cooperative inquiry
Organisation climate
Ambidextrous organization
Communities of innovation
Community of inquiry
Just-in-time learning
Strategic Choice Theory
Success trap
Noise (economic)
Information literacies
Openness to experience
Absorption (psychology)
Need for cognition
Fantasy prone personality
Hypnotic susceptibility
Elaboration likelihood model
g factor (psychometrics)
Semantic memory
Schema (psychology)
Availability heuristic
Heuristics in judgment and decision-making
Typical intellectual engagement
Conscientiousness
Divergent thinking
Regression analysis
High culture
Low culture
Highbrow
Intellectual
Anti-intellectualism
Cult of Ignorance
      There is a cult of ignorance in the United States, and there has always been. The strain of anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that "my ignorance is just as good as your knowledge".
Isaac Asimov, 1980[24]
Neo-Luddism



Nihilism
Relativism
Natural law
Coercion
Greenhouse Cartel
Non-aggression principle
District of Columbia Organic Act of 1871
Value of life
eferences
 "Best Practice Regulation Guidance Note: Value of statistical life" (PDF). Department of the Prime Minister and Cabinet. December 2014.
Hedonic damages
Corp. U.S. Mythology
Anarchist law
An Anarchist FAQ
The Meaning of Anarchism, via twelve libertarians (Part 2)
Voluntarism (action)
Spontaneous order
Technophobia
Digital phobic
Digital divide
Deep ecology
Cultural capital
Pro rata
Disability-adjusted life year
Leisure satisfaction
Environmental full-cost accounting
Champagne
Champagne wine region
Humboldt County, California
Cannabis in California
Legal history of cannabis in the United States
Background to later restrictions (late 19th century)

Excerpt from the New York Times, March 7, 1884
As early as 1853, recreational cannabis was listed as a "fashionable narcotic".[11] By the 1880s, oriental-style hashish parlors were flourishing alongside opium dens, to the point that one could be found in every major city on the east coast. It was estimated there were around 500 such establishments in New York City alone.[12]

An article in Harper's Magazine (1883), attributed to Harry Hubbell Kane, describes a hashish-house in New York frequented by a large clientele, including males and females of "the better classes," and further talks about parlors in Boston, Philadelphia and Chicago.[6] Hemp cigarettes were reported to be used by Mexican soldiers as early as 1874.[13]





Champagne Riots

Marihuana Tax Act of 1937
Reefer Madness
Portal:Cannabis
Income elasticity of demand
Cattell–Horn–Carroll theory
Cultural literacy
Hearsay
Evidence (law)
Omnibus hearing
Privilege (evidence)
Subpoena duces tecum
Conventional wisdom
Obliteration by incorporation
Cultural heritage
Cultural practice
List of common misconceptions
Urban legends about drugs
Ethnobotany
Traditional ecological knowledge
Entheogen
https://www.maps.org/news-letters/v24n1/v24n1_p14-19.pdf
&

https://web.archive.org/web/20150923211602/http://www.csse-scee.ca/CJE/Articles/FullText/CJE27-4/CJE27-4-tupper.pdf
&
Tupper, Kenneth W. (2014). "Entheogenic Education: Psychedelics as Tools of Wonder and Awe" (PDF). MAPS Bulletin. 24 (1): 14–19.
Tupper, Kenneth W. (2002). "Entheogens and Existential Intelligence: The Use of Plant Teachers as Cognitive Tools" (PDF). Canadian Journal of Education. 27 (4): 499–516. doi:10.2307/1602247. JSTOR 1602247. Archived from the original (PDF) on 23 September 2015. Retrieved 2 February 2015.


Tupper, Kenneth W. (2003). "Entheogens & Education: Exploring the Potential of Psychoactives as Educational Tools" (PDF). Journal of Drug Education and Awareness. 1 (2): 145–161. Archived from the original (PDF) on 9 October 2007.

https://web.archive.org/web/20071009175718/http://www.kentupper.com/resources/Entheogens+$26+Education--JDEA+2003.pdf

Multidisciplinary Association for Psychedelic Studies


 "Psychedelic Research Fundraising Campaign Attracts $30 Million in Donations in 6 Months, Prepares MDMA-Assisted Psychotherapy for FDA Approval". MAPS. 2020-08-20. Archived from the original on 2020-08-24. Retrieved 2020-08-29.
https://maps.org/news/media/8276-press-release-psychedelic-research-fundraising-campaign-attracts-$30-million-in-donations-in-6-months,-prepares-mdma-assisted-psychotherapy-for-fda-approval

 Ramachandran, Shalini (2020-08-20). "WSJ News Exclusive | Silicon Valley and Wall Street Elites Pour Money Into Psychedelic Research". Wall Street Journal. ISSN 0099-9660. Archived from the original on 2020-08-28. Retrieved 2020-08-29.
https://www.wsj.com/articles/silicon-valley-and-wall-street-elites-pour-money-into-psychedelic-research-11597941470


Moral panic

Moral entrepreneur

Category:Entheogens
Category:Cannabis
Consensus reality
Social constructionism
Prior art
Prima facie
Pathological lying
Factitious disorder imposed on another
Statist
Night-watchman state
Factitious disorder imposed on self
Res ipsa loquitur
Workerism
Autonomism
What is “Schmuck Insurance”?
Purple economy
Netocracy
Hacker Manifesto
Hacker ethic
Indigo Era
A Declaration of the Independence of Cyberspace
The Cathedral and the Bazaar
Information ecology
Noocracy
Geniocracy
Noosphere
Knowledge divide
Information society
The Netocracy and the Consumtariat
Post-work societyx
Post-scarcity economy
Art manifesto
Refusal of work
Digital divide

BELOW ARE THE URLs, THE LINKS TO THE VOCABULARY ABOVE.

Clarid County urls

202105071652

A write-invalidate protocol.

Homo economicus
https://en.wikipedia.org/wiki/Homo_economicus#History_of_the_term


Rational choice theory
https://en.wikipedia.org/wiki/Rational_choice_theory


Tyranny of small decisions
https://en.wikipedia.org/wiki/Tyranny_of_small_decisions

Path dependence
https://en.wikipedia.org/wiki/Path_dependence


&
Path dependence
https://en.wikipedia.org/wiki/Path_dependence#Commercial_examples


Innovation butterfly


https://en.wikipedia.org/wiki/Innovation_butterfly


Attractor
https://en.wikipedia.org/wiki/Attractor


Cycle detection
https://en.wikipedia.org/wiki/Cycle_detection


Algorithm
https://en.wikipedia.org/wiki/Algorithm


Entscheidungsproblem
https://en.wikipedia.org/wiki/Entscheidungsproblem

Infinite loop
https://en.wikipedia.org/wiki/Infinite_loop


Deadlock Not to be confused with Deathlok or Dreadlock.
https://en.wikipedia.org/wiki/Deadlock


Resource contention
https://en.wikipedia.org/wiki/Resource_contention


Cache coherence
https://en.wikipedia.org/wiki/Cache_coherence


Memory barrier
https://en.wikipedia.org/wiki/Memory_barrier



Directory-based cache coherence

https://en.wikipedia.org/wiki/Directory-based_cache_coherence


Bus snooping
https://en.wikipedia.org/wiki/Bus_snooping


Non-uniform memory access
https://en.wikipedia.org/wiki/Non-uniform_memory_access


False sharing
https://en.wikipedia.org/wiki/False_sharing
&
https://parallelcomputing2017.wordpress.com/2017/03/17/understanding-false-sharing/



Resource allocation
https://en.wikipedia.org/wiki/Resource_allocation


Allocative efficiency
https://en.wikipedia.org/wiki/Allocative_efficiency



Pareto efficiency
https://en.wikipedia.org/wiki/Pareto_efficiency 


Vilfredo Pareto
https://en.wikipedia.org/wiki/Vilfredo_Pareto


Corruption
https://en.wikipedia.org/wiki/Corruption


Contention
https://en.wikipedia.org/wiki/Contention



Space complexity
https://en.wikipedia.org/wiki/Space_complexity


ALL WATCHED OVER SUMMARY
https://idoc.pub/documents/all-watched-over-by-machines-of-loving-grace-summary-9n0kjm89024v

llpoetry.com/All-Watched-Over-By-Machines-Of-Loving-Grace


Art manifesto
https://en.wikipedia.org/wiki/Art_manifesto#Concept



Rational choice theory
https://en.wikipedia.org/wiki/Rational_choice_theory#Overview



Ultimatum game
https://en.wikipedia.org/wiki/Ultimatum_game#Equilibrium_analysis



Post-scarcity economy
https://en.wikipedia.org/wiki/Post-scarcity_economy#Models



Post-Scarcity Anarchism
https://en.wikipedia.org/wiki/Post-Scarcity_Anarchism


Peggy Kornegger
Anarchism: The Feminist Connection
http://theanarchistlibrary.org/library/peggy-kornegger-anarchism-the-feminist-connection
&
http://www.anarcha.org/sallydarity/PeggyKornegger.htm


Block (Internet)
https://en.wikipedia.org/wiki/Block_(Internet)#Effects



Emotional contagion
https://en.wikipedia.org/wiki/Emotional_contagion#Etymology


Limbic resonance
https://en.wikipedia.org/wiki/Limbic_resonance#Importance_and_history




Linguistic empathy
https://en.wikipedia.org/wiki/Linguistic_empathy


Projective identification
https://en.wikipedia.org/wiki/Projective_identification#Experience



Sanskritisation
https://en.wikipedia.org/wiki/Sanskritisation#Definition


Anomie
https://en.wikipedia.org/wiki/Anomie#History


Acedia
https://en.wikipedia.org/wiki/Acedia#In_ancient_Greece


Anhedonia
https://en.wikipedia.org/wiki/Anhedonia#Definition


Weltschmerz
https://en.wikipedia.org/wiki/Weltschmerz#Further_examples


Mean world syndrome
https://en.wikipedia.org/wiki/Mean_world_syndrome


Cognitive bias
https://en.wikipedia.org/wiki/Cognitive_bias


List of cognitive biases
https://en.wikipedia.org/wiki/List_of_cognitive_biases

& The Cognitive Bias Codex: A Visual Of 180+ Cognitive Biases
https://upload.wikimedia.org/wikipedia/commons/6/65/Cognitive_bias_codex_en.svg
&
https://www.teachthought.com/critical-thinking/the-cognitive-bias-codex-a-visual-of-180-cognitive-biases/

Every Single Cognitive Bias in One Infographic
https://www.visualcapitalist.com/every-single-cognitive-bias/
&
https://www.visualcapitalist.com/wp-content/uploads/2017/09/cognitive-bias-infographic.html



Felicific calculus
https://en.wikipedia.org/wiki/Felicific_calculus#Bentham's_instructions


Invisible hand
https://en.wikipedia.org/wiki/Invisible_hand#Pre-Adam_Smith


The Use of Knowledge in Society
https://en.wikipedia.org/wiki/The_Use_of_Knowledge_in_Society

&
https://www.kysq.org/docs/Hayek_45.pdf


Portal:Capitalism
https://en.wikipedia.org/wiki/Portal:Capitalism


Dictator game
https://en.wikipedia.org/wiki/Dictator_game#Description
&https://authors.library.caltech.edu/22127/1/2138174%5B1%5D.pdf


Cyberpunk derivatives
https://en.wikipedia.org/wiki/Cyberpunk_derivatives#Background


Imagination age
https://en.wikipedia.org/wiki/Imagination_age#Origins_of_the_term

& The Age of Imagination
Coming Soon to a Civilization Near You.
by Charlie Magee
https://web.archive.org/web/20110727132753/http://www.oss.net/dynamaster/file_archive/040320/4a32a59dcdc168eced6517b5e6041cda/OSS1993-01-21.pdf




Cognitive-cultural economy
https://en.wikipedia.org/wiki/Cognitive-cultural_economy#Overview
&
http://halshs.archives-ouvertes.fr/docs/00/26/36/61/PDF/historicalpubliepdf.pdf



Cybernetics
https://en.wikipedia.org/wiki/Cybernetics#Overview


General intellect
Not to be confused with General intelligence.
https://en.wikipedia.org/wiki/General_intellect#Overview


Common knowledge
https://en.wikipedia.org/wiki/Common_knowledge#Examples



Judicial notice
https://en.wikipedia.org/wiki/Judicial_notice#Judicial_notice_in_the_United_States


General knowledge
https://en.wikipedia.org/wiki/General_knowledge#Individual_differences


Fluid and crystallized intelligence
https://en.wikipedia.org/wiki/Fluid_and_crystallized_intelligence#History



Nootropic
https://en.wikipedia.org/wiki/Nootropic


Collective action problem
https://en.wikipedia.org/wiki/Collective_action_problem#Prominent_theorists




21st century skills
https://en.wikipedia.org/wiki/21st_century_skills#Background



Phenomenon-based learning
https://en.wikipedia.org/wiki/Phenomenon-based_learning#Features

& http://www.fao.org/agroecology/database/detail/en/c/451720/



Design-based learning
https://en.wikipedia.org/wiki/Design-based_learning#Design_process



Organizational learning
https://en.wikipedia.org/wiki/Organizational_learning#Relevance



Design thinking
https://en.wikipedia.org/wiki/Design_thinking#As_a_process_of_designing


Wicked problem
https://en.wikipedia.org/wiki/Wicked_problem#Characteristics


Problem structuring methods
https://en.wikipedia.org/wiki/Problem_structuring_methods#History



Delphi method
https://en.wikipedia.org/wiki/Delphi_method
&
https://web.njit.edu/~turoff/pubs/delphibook/



Policy Analysis Market
https://en.wikipedia.org/wiki/Policy_Analysis_Market


Planning poker
https://en.wikipedia.org/wiki/Planning_poker


Wideband delphi
https://en.wikipedia.org/wiki/Wideband_delphi


Reference class forecasting
https://en.wikipedia.org/wiki/Reference_class_forecasting



Nominal group technique
https://en.wikipedia.org/wiki/Nominal_group_technique




Horizon scanning
https://en.wikipedia.org/wiki/Horizon_scanning



A Guide for the Perplexed
https://en.wikipedia.org/wiki/A_Guide_for_the_Perplexed#Four_Great_Truths



Drama theory
Not to be confused with Dramatic theory.
https://en.wikipedia.org/wiki/Drama_theory#Basics_of_drama_theory


Confrontation analysis
https://en.wikipedia.org/wiki/Confrontation_analysis#Derivation_and_use


Metagame analysis
https://en.wikipedia.org/wiki/Metagame_analysis#Origin



Knowledge management
https://en.wikipedia.org/wiki/Knowledge_management#History



Ignorance management
https://en.wikipedia.org/wiki/Ignorance_management


Learning organization
https://en.wikipedia.org/wiki/Learning_organization#Characteristics


Systems theory
https://en.wikipedia.org/wiki/Systems_theory



Systems art
https://en.wikipedia.org/wiki/Systems_art



Systems theory in political science
https://en.wikipedia.org/wiki/Systems_theory_in_political_science



Organizational metacognition
https://en.wikipedia.org/wiki/Organizational_metacognition#Learning_prototypes


Cooperative inquiry
https://en.wikipedia.org/wiki/Cooperative_inquiry


Organisation climate
https://en.wikipedia.org/wiki/Organisation_climate


Ambidextrous organization
https://en.wikipedia.org/wiki/Ambidextrous_organization#Origin_and_development




Communities of innovation
https://en.wikipedia.org/wiki/Communities_of_innovation#Definitions
&
http://westminsterresearch.wmin.ac.uk/2727/1/Coakes_Smith_2007_final_author.pdf



Community of inquiry
https://en.wikipedia.org/wiki/Community_of_inquiry#A_useful_metaphor



Just-in-time learning
https://en.wikipedia.org/wiki/Just-in-time_learning#Methodology



Strategic Choice Theory
https://en.wikipedia.org/wiki/Strategic_Choice_Theory#History



Success trap
https://en.wikipedia.org/wiki/Success_trap#Overview




Noise (economic)
https://en.wikipedia.org/wiki/Noise_(economic)#Types_of_noise







Information literacies
https://en.wikipedia.org/wiki/Information_literacies#Definitions



Openness to experience
https://en.wikipedia.org/wiki/Openness_to_experience#Measurement




Absorption (psychology)
https://en.wikipedia.org/wiki/Absorption_(psychology)#Measurement




Need for cognition
https://en.wikipedia.org/wiki/Need_for_cognition#History




Fantasy prone personality
https://en.wikipedia.org/wiki/Fantasy_prone_personality#History




Hypnotic susceptibility
https://en.wikipedia.org/wiki/Hypnotic_susceptibility#Hypnotic_depth_scales




Elaboration likelihood model
https://en.wikipedia.org/wiki/Elaboration_likelihood_model#Origin



g factor (psychometrics)
https://en.wikipedia.org/wiki/G_factor_(psychometrics)#Cognitive_ability_testing



Semantic memory
https://en.wikipedia.org/wiki/Semantic_memory#History



Schema (psychology)
https://en.wikipedia.org/wiki/Schema_(psychology)#History



Availability heuristic
https://en.wikipedia.org/wiki/Availability_heuristic#Overview_and_history




Heuristics in judgment and decision-making
https://en.wikipedia.org/wiki/Heuristics_in_judgment_and_decision-making




Typical intellectual engagement
https://en.wikipedia.org/wiki/Typical_intellectual_engagement#Typical_performance_vs._maximal_performance



Conscientiousness
https://en.wikipedia.org/wiki/Conscientiousness#Personality_models




Divergent thinking
https://en.wikipedia.org/wiki/Divergent_thinking#Activities




Regression analysis
https://en.wikipedia.org/wiki/Regression_analysis#History





High culture
https://en.wikipedia.org/wiki/High_culture#Definition



Low culture
https://en.wikipedia.org/wiki/Low_culture


Highbrow
https://en.wikipedia.org/wiki/Highbrow



Intellectual
https://en.wikipedia.org/wiki/Intellectual#Persecution_of_intellectuals



Anti-intellectualism
https://en.wikipedia.org/wiki/Anti-intellectualism
Cult of Ignorance
      There is a cult of ignorance in the United States, and there has always been. The strain of anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that "my ignorance is just as good as your knowledge".
Isaac Asimov, 1980[24]


Neo-Luddism
https://en.wikipedia.org/wiki/Neo-Luddism



Nihilism
https://en.wikipedia.org/wiki/Nihilism#Epistemological





Relativism
https://en.wikipedia.org/wiki/Relativism



Natural law
https://en.wikipedia.org/wiki/Natural_law


Coercion
https://en.wikipedia.org/wiki/Coercion



Greenhouse Cartel
https://en.wikipedia.org/wiki/Cartel



Non-aggression principle
https://en.wikipedia.org/wiki/Non-aggression_principle



District of Columbia Organic Act of 1871
https://en.wikipedia.org/wiki/District_of_Columbia_Organic_Act_of_1871





Value of life
https://en.wikipedia.org/wiki/Value_of_life
References
 "Best Practice Regulation Guidance Note: Value of statistical life" (PDF). Department of the Prime Minister and Cabinet. December 2014.
https://www.dpmc.gov.au/sites/default/files/publications/Value_of_Statistical_Life_guidance_note.pdf

&
https://www.wsj.com/articles/why-the-government-puts-a-dollar-value-on-life-1458911310


Hedonic damages
https://en.wikipedia.org/wiki/Hedonic_damages


Corp. U.S. Mythology
https://www.teamlaw.org/Mythology-CorpUS.htm



Anarchist law
https://en.wikipedia.org/wiki/Anarchist_law



An Anarchist FAQ
https://en.wikipedia.org/wiki/An_Anarchist_FAQ



The Meaning of Anarchism, via twelve libertarians (Part 2)
http://anarchism.pageabode.com/afaq/index.html/
&  https://anarchism.pageabode.com/?p=1144#more-1144
& https://anarchism.pageabode.com/?p=1143#more-1143





Voluntarism (action)
https://en.wikipedia.org/wiki/Voluntarism_(action)



Spontaneous order
https://en.wikipedia.org/wiki/Spontaneous_order





Technophobia
https://en.wikipedia.org/wiki/Technophobia




Digital phobic
https://en.wikipedia.org/wiki/Digital_phobic





Digital divide
https://en.wikipedia.org/wiki/Digital_divide





Deep ecology
https://en.wikipedia.org/wiki/Deep_ecology



Cultural capital
https://en.wikipedia.org/wiki/Cultural_capital#Origin



































Pro rata
https://en.wikipedia.org/wiki/Pro_rata





Disability-adjusted life year
https://en.wikipedia.org/wiki/Disability-adjusted_life_year



Leisure satisfaction
https://en.wikipedia.org/wiki/Leisure_satisfaction


Environmental full-cost accounting
https://en.wikipedia.org/wiki/Environmental_full-cost_accounting



Champagne
https://en.wikipedia.org/wiki/Champagne




Champagne wine region
https://en.wikipedia.org/wiki/Champagne_wine_region



Humboldt County, California
https://en.wikipedia.org/wiki/Humboldt_County,_California#Economy



Cannabis in California
https://en.wikipedia.org/wiki/Cannabis_in_California



Legal history of cannabis in the United States
https://en.wikipedia.org/wiki/Legal_history_of_cannabis_in_the_United_States
Background to later restrictions (late 19th century)

Excerpt from the New York Times, March 7, 1884
As early as 1853, recreational cannabis was listed as a "fashionable narcotic".[11] By the 1880s, oriental-style hashish parlors were flourishing alongside opium dens, to the point that one could be found in every major city on the east coast. It was estimated there were around 500 such establishments in New York City alone.[12]

An article in Harper's Magazine (1883), attributed to Harry Hubbell Kane, describes a hashish-house in New York frequented by a large clientele, including males and females of "the better classes," and further talks about parlors in Boston, Philadelphia and Chicago.[6] Hemp cigarettes were reported to be used by Mexican soldiers as early as 1874.[13]



Champagne Riots
https://en.wikipedia.org/wiki/Champagne_Riots



Marihuana Tax Act of 1937
https://en.wikipedia.org/wiki/Marihuana_Tax_Act_of_1937



Reefer Madness
https://en.wikipedia.org/wiki/Reefer_Madness




Portal:Cannabis
https://en.wikipedia.org/wiki/Portal:Cannabis




Income elasticity of demand
https://en.wikipedia.org/wiki/Income_elasticity_of_demand





Cattell–Horn–Carroll theory
https://en.wikipedia.org/wiki/Cattell–Horn–Carroll_theory#Background




Cultural literacy
https://en.wikipedia.org/wiki/Cultural_literacy#Causes




Hearsay
https://en.wikipedia.org/wiki/Hearsay#United_States




Evidence (law)
https://en.wikipedia.org/wiki/Evidence_(law)#History




Omnibus hearing
https://en.wikipedia.org/wiki/Omnibus_hearing


Privilege (evidence)
https://en.wikipedia.org/wiki/Privilege_(evidence)#Types



Subpoena duces tecum
https://en.wikipedia.org/wiki/Subpoena_duces_tecum




Conventional wisdom
https://en.wikipedia.org/wiki/Conventional_wisdom#Origin_of_the_term




Obliteration by incorporation
https://en.wikipedia.org/wiki/Obliteration_by_incorporation#Concept





Cultural heritage
https://en.wikipedia.org/wiki/Cultural_heritage#Protection_of_cultural_heritage




Cultural practice
https://en.wikipedia.org/wiki/Cultural_practice#Examples




List of common misconceptions
https://en.wikipedia.org/wiki/List_of_common_misconceptions#Arts_and_culture



Urban legends about drugs
https://en.wikipedia.org/wiki/Urban_legends_about_drugs



Ethnobotany
https://en.wikipedia.org/wiki/Ethnobotany


Traditional ecological knowledge
https://en.wikipedia.org/wiki/Traditional_ecological_knowledge




Entheogen
https://en.wikipedia.org/wiki/Entheogen





https://www.maps.org/news-letters/v24n1/v24n1_p14-19.pdf
&

https://web.archive.org/web/20150923211602/http://www.csse-scee.ca/CJE/Articles/FullText/CJE27-4/CJE27-4-tupper.pdf
&
Tupper, Kenneth W. (2014). "Entheogenic Education: Psychedelics as Tools of Wonder and Awe" (PDF). MAPS Bulletin. 24 (1): 14–19.
Tupper, Kenneth W. (2002). "Entheogens and Existential Intelligence: The Use of Plant Teachers as Cognitive Tools" (PDF). Canadian Journal of Education. 27 (4): 499–516. doi:10.2307/1602247. JSTOR 1602247. Archived from the original (PDF) on 23 September 2015. Retrieved 2 February 2015.


Tupper, Kenneth W. (2003). "Entheogens & Education: Exploring the Potential of Psychoactives as Educational Tools" (PDF). Journal of Drug Education and Awareness. 1 (2): 145–161. Archived from the original (PDF) on 9 October 2007.

https://web.archive.org/web/20071009175718/http://www.kentupper.com/resources/Entheogens+$26+Education--JDEA+2003.pdf





Multidisciplinary Association for Psychedelic Studies
https://en.wikipedia.org/wiki/Multidisciplinary_Association_for_Psychedelic_Studies
&
https://maps.org/


 "Psychedelic Research Fundraising Campaign Attracts $30 Million in Donations in 6 Months, Prepares MDMA-Assisted Psychotherapy for FDA Approval". MAPS. 2020-08-20. Archived from the original on 2020-08-24. Retrieved 2020-08-29.
https://maps.org/news/media/8276-press-release-psychedelic-research-fundraising-campaign-attracts-$30-million-in-donations-in-6-months,-prepares-mdma-assisted-psychotherapy-for-fda-approval

 Ramachandran, Shalini (2020-08-20). "WSJ News Exclusive | Silicon Valley and Wall Street Elites Pour Money Into Psychedelic Research". Wall Street Journal. ISSN 0099-9660. Archived from the original on 2020-08-28. Retrieved 2020-08-29.
https://www.wsj.com/articles/silicon-valley-and-wall-street-elites-pour-money-into-psychedelic-research-11597941470


Moral panic
https://en.wikipedia.org/wiki/Moral_panic




Moral entrepreneur
https://en.wikipedia.org/wiki/Moral_entrepreneur



Category:Entheogens
https://commons.wikimedia.org/wiki/Category:Entheogens




Category:Cannabis
https://commons.wikimedia.org/wiki/Category:Cannabis


Consensus reality
https://en.wikipedia.org/wiki/Consensus_reality#General_discussion



Social constructionism
https://en.wikipedia.org/wiki/Social_constructionism#Definition


Prior art
https://en.wikipedia.org/wiki/Prior_art#Effective_date_of_patents_and_patent_applications_as_prior_art



Prima facie
https://en.wikipedia.org/wiki/Prima_facie#Burden_of_proof



Pathological lying
https://en.wikipedia.org/wiki/Pathological_lying







Factitious disorder imposed on another
https://en.wikipedia.org/wiki/Factitious_disorder_imposed_on_another





Statist
https://en.wikipedia.org/wiki/Statism


Night-watchman state
https://en.wikipedia.org/wiki/Night-watchman_state



Factitious disorder imposed on self
https://en.wikipedia.org/wiki/Factitious_disorder_imposed_on_self#Munchausen_by_Internet




Res ipsa loquitur
https://en.wikipedia.org/wiki/Res_ipsa_loquitur#History



Workerism
https://en.wikipedia.org/wiki/Workerism#As_revolutionary_praxis




Autonomism
https://en.wikipedia.org/wiki/Autonomism#Etymology




What is “Schmuck Insurance”?
https://www.families.com/what-is-schmuck-insurance




Purple economy
https://en.wikipedia.org/wiki/Purple_economy#Territorial_economics





Netocracy
https://en.wikipedia.org/wiki/Netocracy#The_consumtariat





Hacker Manifesto
https://en.wikipedia.org/wiki/Hacker_Manifesto
&
https://en.wikisource.org/wiki/The_Hacker_Manifesto



Hacker ethic
https://en.wikipedia.org/wiki/Hacker_ethic




Indigo Era
https://en.wikipedia.org/wiki/Indigo_Era



A Declaration of the Independence of Cyberspace
https://en.wikipedia.org/wiki/A_Declaration_of_the_Independence_of_Cyberspace

& https://www.eff.org/cyberspace-independence







The Cathedral and the Bazaar
https://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar




Information ecology
https://en.wikipedia.org/wiki/Information_ecology#Networked_information_economy




Noocracy
https://en.wikipedia.org/wiki/Noocracy#Etymology


Geniocracy
https://en.wikipedia.org/wiki/Geniocracy




Noosphere
https://en.wikipedia.org/wiki/Noosphere#Founding_authors




Knowledge divide
https://en.wikipedia.org/wiki/Knowledge_divide#Overview



Information society
https://en.wikipedia.org/wiki/Information_society#Definition




The Netocracy and the Consumtariat
https://www.ebbemunk.dk/misc/bard.html



Post-work society
https://en.wikipedia.org/wiki/Post-work_society






Post-scarcity economy
https://en.wikipedia.org/wiki/Post-scarcity_economy





Art manifesto
https://en.wikipedia.org/wiki/Art_manifesto#Concept





Refusal of work
https://en.wikipedia.org/wiki/Refusal_of_work





Digital divide
https://en.wikipedia.org/wiki/Digital_divide
































Clarid County raw

202105071652

A write-invalidate protocol.



I'll do all I can to meet you where you're at, and you will have to do all you can to learn.
This is about Human Rights
This is about Cannabis
This is about Money, Freedom, Agency, Autonomy, Independence, Coherence, and Prosperity to name a few.
This is about to get very interesting.
This is about YOU
This is about US

This is a dynamic list and may never be able to satisfy particular standards for completeness.
 You can help by adding missing items with reliable sources. 

Thank You.

An art manifesto is a public declaration of the intentions, motives, or views of an artist or artistic movement. Manifestos are a standard feature of the various movements in the modernist avant-garde and are still written today. Art manifestos are sometimes in their rhetoric intended for shock value, to achieve a revolutionary effect. They often address wider issues, such as the political system. Typical themes are the need for revolution, freedom (of expression) and the implied or overtly stated superiority of the writers over the status quo.[citation needed] The manifesto gives a means of expressing, publicising and recording ideas for the artist or art group—even if only one or two people write the words, it is mostly still attributed to the group name.

free tools list
Dyslexic Font
Dvorak



Origin
As a term, night-watchman state (German: Nachtwächterstaat) was coined by German socialist Ferdinand Lassalle in an 1862 speech in Berlin. He criticized the bourgeois liberal limited government state, comparing it to a night-watchman whose sole duty was preventing theft. The phrase quickly caught on as a description of capitalist government, even as liberalism began to mean a more involved state, or a state with a larger sphere of responsibility.[11]

Ludwig von Mises later opined that Lassalle tried to make limited government look ridiculous, but that it was no more ridiculous than governments that concerned themselves with "the preparation of sauerkraut, with the manufacture of trouser buttons, or with the publication of newspapers".[12]

Proponents of the night-watchman state are minarchists, a portmanteau of minimum and -archy. Arche (/ˈɑːrki/; Ancient Greek: ἀρχή) is a Greek word which came to mean "first place, power", "method of government", "empire, realm", "authorities" (in plural: ἀρχαί), or "command".[13] The term minarchist was coined by Samuel Edward Konkin III in 1980.[14]







Homo economicus
https://en.wikipedia.org/wiki/Homo_economicus#History_of_the_term

The term homo economicus, or economic man, is the portrayal of humans as agents who are consistently rational and narrowly self-interested, and who pursue their subjectively-defined ends optimally. It is a word play on Homo sapiens, used in some economic theories and in pedagogy.[1]

In game theory, homo economicus is often modelled through the assumption of perfect rationality. It assumes that agents always act in a way that maximize utility as a consumer and profit as a producer,[2] and are capable of arbitrarily complex deductions towards that end. They will always be capable of thinking through all possible outcomes and choosing that course of action which will result in the best possible result.

The rationality implied in homo economicus does not restrict what sort of preferences are admissible. Only naïve applications of the homo economicus model assume that agents know what is best for their long-term physical and mental health. For example, an agent's utility function could be linked to the perceived utility of other agents (such as one's husband or children), making homo economicus compatible with other models such as homo reciprocans, which emphasizes human cooperation.

As a theory on human conduct, it contrasts to the concepts of behavioral economics, which examines cognitive biases and other irrationalities, and to bounded rationality, which assumes that practical elements such as cognitive and time limitations restrict the rationality of agents.

Model
Homo economicus is a term used for an approximation or model of Homo sapiens that acts to obtain the highest possible well-being for him or herself given available information about opportunities and other constraints, both natural and institutional, on his ability to achieve his predetermined goals. This approach has been formalized in certain social sciences models, particularly in economics.

Homo economicus is seen as "rational" in the sense that well-being as defined by the utility function is optimized given perceived opportunities. That is, the individual seeks to attain very specific and predetermined goals to the greatest extent with the least possible cost. Note that this kind of "rationality" does not say that the individual's actual goals are "rational" in some larger ethical, social, or human sense, only that he tries to attain them at minimal cost. Only naïve applications of the homo economicus model assume that this hypothetical individual knows what is best for his long-term physical and mental health and can be relied upon to always make the right decision for himself. See rational choice theory and rational expectations for further discussion; the article on rationality widens the discussion.

As in social science, these assumptions are at best approximations. The term is often used derogatorily in academic literature, perhaps most commonly by sociologists, many of whom tend to prefer structural explanations to ones based on rational action by individuals.

The use of the Latin form homo economicus is certainly long established; Persky[3] traces it back to Pareto (1906)[6] but notes that it may be older. The English term economic man can be found even earlier, in John Kells Ingram's A History of Political Economy (1888).[7] The Oxford English Dictionary (O.E.D.) cites the use of homo oeconomicus by C. S. Devas in his 1883 work The Groundwork of Economics in reference to Mill's writings, as one of a number of phrases that imitate the scientific name for the human species:

Mill has only examined the homo oeconomicus, or dollar-hunting animal.[8]

According to the OED, the human genus name homo is

Used with L. or mock-L. adjs. in names imitating Homo sapiens, etc., and intended to personify some aspect of human life or behaviour (indicated by the adj.). Homo faber ("feIb@(r)) [H. Bergson L'Evolution Créatrice (1907) ii. 151], a term used to designate man as a maker of tools.) Variants are often comic: Homo insipiens; Homo turisticus.[9]

Note that such forms should logically keep the capital for the "genus" name—i.e., Homo economicus rather than homo economicus. Actual usage is inconsistent.

Amartya Sen has argued there are grave pitfalls in assuming that rationality is limited to selfish rationality. Economics should build into its assumptions the notion that people can give credible commitments to a course of conduct. He demonstrates the absurdity with the narrowness of the assumptions by some economists with the following example of two strangers meeting on a street.[10]

"Where is the railway station?" he asks me. "There," I say, pointing at the post office, "and would you please post this letter for me on the way?" "Yes," he says, determined to open the envelope and check whether it contains something valuable.



Rational choice theory
https://en.wikipedia.org/wiki/Rational_choice_theory

Rational choice theory refers to a set of guidelines that help understand economic and social behaviour. [1] The theory postulates that an individual will perform a cost-benefit analysis to determine whether an option is right for them. [2] It also suggests that an individual's self-driven rational actions will help better the overall economy. Rational choice theory looks at three concepts: rational actors, self interest and the invisible hand

Without explicitly dictating the goal or preferences of the individual, it may be impossible to empirically test or invalidate the rationality assumption. However, the predictions made by a specific version of the theory are testable. In recent years, the most prevalent version of rational choice theory, expected utility theory, has been challenged by the experimental results of behavioral economics. Economists are learning from other fields, such as psychology, and are enriching their theories of choice in order to get a more accurate view of human decision-making. For example, the behavioral economist and experimental psychologist Daniel Kahneman won the Nobel Memorial Prize in Economic Sciences in 2002 for his work in this field.


William Stanley Jevons
Rational choice theory has proposed that there are two outcomes of two choices regarding human action. Firstly, the feasible region will be chosen within all the possible and related action. Second, after the preferred option has been chosen, the feasible region that has been selected was picked based on restriction of financial, legal, social, physical or emotional restrictions that the agent is facing. After that, a choice will be made based on the preference order. [8]

The concept of rationality used in rational choice theory is different from the colloquial and most philosophical use of the word. In this sense, "rational" behaviour can refer to "sensible", "predictable", or "in a thoughtful, clear-headed manner." Rational choice theory uses a much more narrow definition of rationality. At its most basic level, behavior is rational if it is goal-oriented, reflective (evaluative), and consistent (across time and different choice situations). This contrasts with behavior that is random, impulsive, conditioned, or adopted by (unevaluative) imitation.[citation needed]

Early neoclassical economists writing about rational choice, including William Stanley Jevons, assumed that agents make consumption choices so as to maximize their happiness, or utility. Contemporary theory bases rational choice on a set of choice axioms that need to be satisfied, and typically does not specify where the goal (preferences, desires) comes from. It mandates just a consistent ranking of the alternatives.[9]:501 Individuals choose the best action according to their personal preferences and the constraints facing them. E.g., there is nothing irrational in preferring fish to meat the first time, but there is something irrational in preferring fish to meat in one instant and preferring meat to fish in another, without anything else having changed.





Tyranny of small decisions
https://en.wikipedia.org/wiki/Tyranny_of_small_decisions
Tyranny of small decisions
From Wikipedia, the free encyclopedia
Jump to navigationJump to search
The tyranny of small decisions is a phenomenon explored in an essay of the same name, published in 1966 by the American economist Alfred E. Kahn.[1] The article describes a situation in which a number of decisions, individually small and insignificant in size and time perspective, cumulatively result in a larger and significant outcome which is neither optimal nor desired. It is a situation where a series of small, individually rational decisions can negatively change the context of subsequent choices, even to the point where desired alternatives are irreversibly destroyed. Kahn described the problem as a common issue in market economics which can lead to market failure.[1] The concept has since been extended to areas other than economic ones, such as environmental degradation,[2] political elections[3] and health outcomes.[4]

A classic example of the tyranny of small decisions is the tragedy of the commons, described by Garrett Hardin in 1968[5] as a situation where a number of herders graze cows on a commons. The herders each act independently in what they perceive to be their own rational self-interest, ultimately depleting their shared limited resource, even though it is clear that it is not in any herder's long-term interest for this to happen.[6]

Ithaca railroad

Abutment of the Ithaca-Auburn Short Line bridge
The event that first suggested the tyranny of small decisions to Kahn was the withdrawal of passenger railway services in Ithaca, New York. The railway was the only reliable way to get in and out of Ithaca. It provided services regardless of conditions, in fair weather and foul, during peak seasons and off-peak seasons. The local airline and bus company skimmed the traffic when conditions were favourable, leaving the trains to fill in when conditions were difficult. The railway service was eventually withdrawn, because the collective individual decisions made by travellers did not provide the railway with the revenue it needed to cover its incremental costs. According to Kahn, this suggests a hypothetical economic test of whether the service should have been withdrawn.

Suppose each person in the cities served were to ask himself how much he would have been willing to pledge regularly over some time period, say annually, by purchase of prepaid tickets, to keep rail passenger service available to his community. As long as the amount that he would have declared (to himself) would have exceeded what he actually paid on the period–and my own introspective experiment shows that it would–then to that extent the disappearance of the passenger service was an incident of market failure.[7]

The failure to reflect the full value to passengers of keeping the railroad service available had its origins in the discrepancy between the time perception within which the travellers were operating, and the time perception within which the railroad was operating. The travellers were making many short term decisions, deciding each particular trip whether to go by the railroad, or whether to go instead by car, bus or the local airline. Based on the cumulative effects of these small decisions, the railroad was making one major long run decision, "virtually all-or-nothing and once-and-for-all"; whether to retain or abandon its passenger service. Taken one at a time, each small travel decision made individually by the travellers had a negligible impact on the survivability of the railroad. It would not have been rational for a traveller to consider the survival of the railroad imperilled by any one of his particular decisions.[7]

The fact remains that each selection of x over y constitutes also a vote for eliminating the possibility thereafter of choosing y. If enough people vote for x, each time necessarily on the assumption that y will continue to be available, y may in fact disappear. And its disappearance may constitute a genuine deprivation, which customers might willingly have paid something to avoid. The only choice the market offered travellers to influence the longer-run decision of the railroad was thus shorter in its time perspective, and the sum total of our individual purchases of railroad tickets necessary added up to a smaller amount, than our actual combined interest in the continued availability of rail service. We were victims of the "tyranny of small decisions".[7]



Path dependence
https://en.wikipedia.org/wiki/Path_dependence

Path dependence
From Wikipedia, the free encyclopedia
Jump to navigationJump to search
This article is about path dependence in economics and social sciences. For a similar topic in physics, see Path dependence (physics).
Path dependence is when the decisions presented to people are dependent on previous decisions or experiences made in the past.[1]

Path Dependence exists when a feature of the economy (institution, technical standard, pattern of economic development etc.) is not based on current conditions, but rather has been formed by a sequence of past actions each leading to a distinct outcome.[2]

In economics and the social sciences, path dependence refers to either the outcomes at a single point in time, or to long-run equilibria of a process. In common usage, the phrase implies either:

that "history matters"—a broad concept,[3] or
that predictable amplifications of small differences are a disproportionate cause of later circumstances, and, in the "strong" form, that this historical hang-over is inefficient.[4]
In the first usage, (A), "history matters" is true in many contexts; everything has causes, and sometimes different causes lead to different outcomes. This can more simply be explained as "the future development of an economic system is affected by the path it has traced out in the past".[5] However, in these contexts the direct influence of earlier states may not be notable as contemporary conditions override past processes,[6] unlike "path-dependent" options in finance, where the influence of history can be non-standard.

It is the narrow concept (B), that has the most explanatory force.

Positive feedback mechanisms, like bandwagon and network effects, are at the origin of path dependence.[7] They lead to a reinforcing pattern, in which industries 'tip' towards one or another product design. Uncoordinated standardisation can be observed in many other situations.

Railway track gauges
The standard gauge of railway tracks is another example of path dependence which explains how a seemingly insignificant event or circumstance can change the choice of technology over the long run despite contemporary knowhow showing such a choice to be inefficient.[11]

More than half the world's railway gauges are 4 feet 8+1⁄2 inches (143.5 cm), known as standard gauge, despite the general consensus among engineers being that wider gauges have increased performance[clarification needed] and speed. The path to the adoption of the standard gauge began in the late 1820s when George Stephenson, a British engineer, began work on the Liverpool and Manchester Railway. His experience with primitive coal tramways resulted in this gauge width being copied by the Liverpool and Manchester Railway, then the rest of Great Britain, and finally by railroads in Europe and North America.[12]

So although a broader railway track gauge would be more efficient, the standard gauge remains in many places due to the cost involved in conversion—a direct result of path dependence.

Economics
Path dependence theory was originally developed by economists to explain technology adoption processes and industry evolution. The theoretical ideas have had a strong influence on evolutionary economics.[13]

There are many models and empirical cases where economic processes do not progress steadily toward some pre-determined and unique equilibrium, but rather the nature of any equilibrium achieved depends partly on the process of getting there. Therefore, the outcome of a path-dependent process will often not converge towards a unique equilibrium, but will instead reach one of several equilibria (sometimes known as absorbing states).

This dynamic vision of economic evolution is very different from the tradition of neo-classical economics, which in its simplest form assumed that only a single outcome could possibly be reached, regardless of initial conditions or transitory events. With path dependence, both the starting point and 'accidental' events (noise) can have significant effects on the ultimate outcome. In each of the following examples it is possible to identify some random events that disrupted the ongoing course, with irreversible consequences.

In the 1980s, the US dollar exchange rate appreciated, lowering the world price of tradable goods below the cost of production in many (previously successful) U.S. manufacturers. Some of the factories that closed as a result, could later have been operated at a (cash-flow) profit after dollar depreciation, but reopening would have been too expensive. This is an example of hysteresis, switching barriers, and irreversibility.

If the economy follows adaptive expectations, future inflation is partly determined by past experience with inflation, since experience determines expected inflation and this is a major determinant of realized inflation.

A transitory high rate of unemployment during a recession can lead to a permanently higher unemployment rate because of the skills loss (or skill obsolescence) by the unemployed, along with a deterioration of work attitudes. In other words, cyclical unemployment may generate structural unemployment. This structural hysteresis model of the labour market differs from the prediction of a "natural" unemployment rate or NAIRU, around which 'cyclical' unemployment is said to move without influencing the "natural" rate itself.





Path dependence
https://en.wikipedia.org/wiki/Path_dependence#Commercial_examples
This article is about path dependence in economics and social sciences. For a similar topic in physics, see Path dependence (physics).
Path dependence is when the decisions presented to people are dependent on previous decisions or experiences made in the past.[1]

Path Dependence exists when a feature of the economy (institution, technical standard, pattern of economic development etc.) is not based on current conditions, but rather has been formed by a sequence of past actions each leading to a distinct outcome.[2]

In economics and the social sciences, path dependence refers to either the outcomes at a single point in time, or to long-run equilibria of a process. In common usage, the phrase implies either:

that "history matters"—a broad concept,[3] or
that predictable amplifications of small differences are a disproportionate cause of later circumstances, and, in the "strong" form, that this historical hang-over is inefficient.[4]
In the first usage, (A), "history matters" is true in many contexts; everything has causes, and sometimes different causes lead to different outcomes. This can more simply be explained as "the future development of an economic system is affected by the path it has traced out in the past".[5] However, in these contexts the direct influence of earlier states may not be notable as contemporary conditions override past processes,[6] unlike "path-dependent" options in finance, where the influence of history can be non-standard.

It is the narrow concept (B), that has the most explanatory force.

Positive feedback mechanisms, like bandwagon and network effects, are at the origin of path dependence.[7] They lead to a reinforcing pattern, in which industries 'tip' towards one or another product design. Uncoordinated standardisation can be observed in many other situations.





Innovation butterfly
https://en.wikipedia.org/wiki/Innovation_butterfly
Innovation butterfly
From Wikipedia, the free encyclopedia
Jump to navigationJump to search
The innovation butterfly is a metaphor that describes how seemingly minor perturbations (disturbances or changes) to project plans in a system connecting markets, demand, product features, and a firm's capabilities can steer the project, or an entire portfolio of projects, down an irreversible path in terms of technology and market evolution.

How it works
The innovation butterfly arises because many innovation systems are made up of a large number of elements that interact with each other via several non-linear feedback loops containing embedded delays, thus constituting a complex system.[2]

Perturbations can come from decisions made within the firm or from those made by its competitors, or they can result from external forces such as government legislation or environmental regulations, or unexpected spikes in the price of oil. How the innovation system evolves as a result of the innovation butterfly can lead ultimately to an innovative firm's success or failure.

Complex systems, in domains such as physics, biology, or sociology, are known to be prone to both path dependence and emergent behavior. What makes the behavior of the innovation butterfly different is market selection, along with biases in individual and group decision making within distributed innovation settings, which may influence the emergent behavior. Furthermore, managers in most fields of business endeavor to reduce uncertainty in order to better manage risk. In innovation settings, however, because success is based upon creativity, managers must actively embrace uncertainty. This leads to a management conundrum because innovation managers and management systems must encourage the potential for a butterfly effect but then must also learn how to cope with its aftermath.[3][4]

How innovation butterflies are 'chased' is highly managerially relevant.[5] Most butterflies end up 'merely' consuming a considerable amount of time and resources within a project, or for an innovation portfolio, within a firm. However, some butterflies can also unleash regime-altering emergent outcomes within an entire industry segment.[6] Moreover, once these emergent outcomes begin to mature, and in some instances lead to disruptive innovations, they become extremely difficult to manage,[7] Hence, shaping the innovation system before potential innovation butterfly's effects completely emerge is critical.[3]




Attractor
https://en.wikipedia.org/wiki/Attractor

In the mathematical field of dynamical systems, an attractor is a set of numerical values toward which a system tends to evolve[citation needed], for a wide variety of starting conditions of the system. System values that get close enough to the attractor values remain close even if slightly disturbed.

In finite-dimensional systems, the evolving variable may be represented algebraically as an n-dimensional vector. The attractor is a region in n-dimensional space. In physical systems, the n dimensions may be, for example, two or three positional coordinates for each of one or more physical entities; in economic systems, they may be separate variables such as the inflation rate and the unemployment rate.

If the evolving variable is two- or three-dimensional, the attractor of the dynamic process can be represented geometrically in two or three dimensions, (as for example in the three-dimensional case depicted to the right). An attractor can be a point, a finite set of points, a curve, a manifold, or even a complicated set with a fractal structure known as a strange attractor (see strange attractor below). If the variable is a scalar, the attractor is a subset of the real number line. Describing the attractors of chaotic dynamical systems has been one of the achievements of chaos theory.

A trajectory of the dynamical system in the attractor does not have to satisfy any special constraints except for remaining on the attractor, forward in time. The trajectory may be periodic or chaotic. If a set of points is periodic or chaotic, but the flow in the neighborhood is away from the set, the set is not an attractor, but instead is called a repeller (or repellor).

Motivation of attractors
A dynamical system is generally described by one or more differential or difference equations. The equations of a given dynamical system specify its behavior over any given short period of time. To determine the system's behavior for a longer period, it is often necessary to integrate the equations, either through analytical means or through iteration, often with the aid of computers.

Dynamical systems in the physical world tend to arise from dissipative systems: if it were not for some driving force, the motion would cease. (Dissipation may come from internal friction, thermodynamic losses, or loss of material, among many causes.) The dissipation and the driving force tend to balance, killing off initial transients and settle the system into its typical behavior. The subset of the phase space of the dynamical system corresponding to the typical behavior is the attractor, also known as the attracting section or attractee.

Invariant sets and limit sets are similar to the attractor concept. An invariant set is a set that evolves to itself under the dynamics.[2] Attractors may contain invariant sets. A limit set is a set of points such that there exists some initial state that ends up arbitrarily close to the limit set (i.e. to each point of the set) as time goes to infinity. Attractors are limit sets, but not all limit sets are attractors: It is possible to have some points of a system converge to a limit set, but different points when perturbed slightly off the limit set may get knocked off and never return to the vicinity of the limit set.

For example, the damped pendulum has two invariant points: the point x0 of minimum height and the point x1 of maximum height. The point x0 is also a limit set, as trajectories converge to it; the point x1 is not a limit set. Because of the dissipation due to air resistance, the point x0 is also an attractor. If there was no dissipation, x0 would not be an attractor. Aristotle believed that objects moved only as long as they were pushed, which is an early formulation of a dissipative attractor.

Some attractors are known to be chaotic (see strange attractor), in which case the evolution of any two distinct points of the attractor result in exponentially diverging trajectories, which complicates prediction when even the smallest noise is present in the system.[3]


Limit torus
There may be more than one frequency in the periodic trajectory of the system through the state of a limit cycle. For example, in physics, one frequency may dictate the rate at which a planet orbits a star while a second frequency describes the oscillations in the distance between the two bodies. If two of these frequencies form an irrational fraction (i.e. they are incommensurate), the trajectory is no longer closed, and the limit cycle becomes a limit torus. This kind of attractor is called an Nt -torus if there are Nt incommensurate frequencies. For example, here is a 2-torus:

Torus.png

A time series corresponding to this attractor is a quasiperiodic series: A discretely sampled sum of Nt periodic functions (not necessarily sine waves) with incommensurate frequencies. Such a time series does not have a strict periodicity, but its power spectrum still consists only of sharp lines.

Strange attractor

A plot of Lorenz's strange attractor for values ρ = 28, σ = 10, β = 8/3
An attractor is called strange if it has a fractal structure. This is often the case when the dynamics on it are chaotic, but strange nonchaotic attractors also exist. If a strange attractor is chaotic, exhibiting sensitive dependence on initial conditions, then any two arbitrarily close alternative initial points on the attractor, after any of various numbers of iterations, will lead to points that are arbitrarily far apart (subject to the confines of the attractor), and after any of various other numbers of iterations will lead to points that are arbitrarily close together. Thus a dynamic system with a chaotic attractor is locally unstable yet globally stable: once some sequences have entered the attractor, nearby points diverge from one another but never depart from the attractor.[7]

The term strange attractor was coined by David Ruelle and Floris Takens to describe the attractor resulting from a series of bifurcations of a system describing fluid flow.[8] Strange attractors are often differentiable in a few directions, but some are like a Cantor dust, and therefore not differentiable. Strange attractors may also be found in the presence of noise, where they may be shown to support invariant random probability measures of Sinai–Ruelle–Bowen type.[9]

Examples of strange attractors include the double-scroll attractor, Hénon attractor, Rössler attractor, and Lorenz attractor.

Attractors characterize the evolution of a system
The parameters of a dynamic equation evolve as the equation is iterated, and the specific values may depend on the starting parameters. An example is the well-studied logistic map, {\displaystyle x_{n+1}=rx_{n}(1-x_{n})}{\displaystyle x_{n+1}=rx_{n}(1-x_{n})}, whose basins of attraction for various values of the parameter r are shown in the figure. If {\displaystyle r=2.6}{\displaystyle r=2.6}, all starting x values of {\displaystyle x<0}x<0 will rapidly lead to function values that go to negative infinity; starting x values of {\displaystyle x>1}x>1 will go to infinity. But for {\displaystyle 0<x<1}0<x<1 the x values rapidly converge to {\displaystyle x\approx 0.615}{\displaystyle x\approx 0.615}, i.e. at this value of r, a single value of x is an attractor for the function's behaviour. For other values of r, more than one value of x may be visited: if r is 3.2, starting values of {\displaystyle 0<x<1}0<x<1 will lead to function values that alternate between {\displaystyle x\approx 0.513}{\displaystyle x\approx 0.513} and {\displaystyle x\approx 0.799}{\displaystyle x\approx 0.799}. At some values of r, the attractor is a single point (a "fixed point"), at other values of r two values of x are visited in turn (a period-doubling bifurcation), or, as a result of further doubling, any number k × 2n values of x; at yet other values of r, any given number of values of x are visited in turn; finally, for some values of r, an infinitude of points are visited. Thus one and the same dynamic equation can have various types of attractors, depending on its starting parameters


Basins of attraction
An attractor's basin of attraction is the region of the phase space, over which iterations are defined, such that any point (any initial condition) in that region will asymptotically be iterated into the attractor. For a stable linear system, every point in the phase space is in the basin of attraction. However, in nonlinear systems, some points may map directly or asymptotically to infinity, while other points may lie in a different basin of attraction and map asymptotically into a different attractor; other initial conditions may be in or map directly into a non-attracting point or cycle.[10]



Cycle detection
https://en.wikipedia.org/wiki/Cycle_detection

In computer science, cycle detection or cycle finding is the algorithmic problem of finding a cycle in a sequence of iterated function values.

For any function f that maps a finite set S to itself, and any initial value x0 in S, the sequence of iterated function values

{\displaystyle x_{0},\ x_{1}=f(x_{0}),\ x_{2}=f(x_{1}),\ \dots ,\ x_{i}=f(x_{i-1}),\ \dots } x_0,\ x_1=f(x_0),\ x_2=f(x_1),\ \dots,\ x_i=f(x_{i-1}),\ \dots
must eventually use the same value twice: there must be some pair of distinct indices i and j such that xi = xj. Once this happens, the sequence must continue periodically, by repeating the same sequence of values from xi to xj − 1. Cycle detection is the problem of finding i and j, given f and x0.

Several algorithms for finding cycles quickly and with little memory are known. Robert W. Floyd's tortoise and hare algorithm moves two pointers at different speeds through the sequence of values until they both point to equal values. Alternatively, Brent's algorithm is based on the idea of exponential search. Both Floyd's and Brent's algorithms use only a constant number of memory cells, and take a number of function evaluations that is proportional to the distance from the start of the sequence to the first repetition. Several other algorithms trade off larger amounts of memory for fewer function evaluations.

The applications of cycle detection include testing the quality of pseudorandom number generators and cryptographic hash functions, computational number theory algorithms, detection of infinite loops in computer programs and periodic configurations in cellular automata, automated shape analysis of linked list data structures, and detection of deadlocks for transactions management in DBMS.


 Typically, also, the space complexity of an algorithm for the cycle detection problem is of importance: we wish to solve the problem while using an amount of memory significantly smaller than it would take to store the entire sequence.





Algorithm
https://en.wikipedia.org/wiki/Algorithm
In mathematics and computer science, an algorithm (/ˈælɡərɪðəm/ (About this soundlisten)) is a finite sequence of well-defined, computer-implementable instructions, typically to solve a class of problems or to perform a computation.[1][2] Algorithms are always unambiguous and are used as specifications for performing calculations, data processing, automated reasoning, and other tasks.

As an effective method, an algorithm can be expressed within a finite amount of space and time,[3] and in a well-defined formal language[4] for calculating a function.[5] Starting from an initial state and initial input (perhaps empty),[6] the instructions describe a computation that, when executed, proceeds through a finite[7] number of well-defined successive states, eventually producing "output"[8] and terminating at a final ending state. The transition from one state to the next is not necessarily deterministic; some algorithms, known as randomized algorithms, incorporate random input.[9]

The concept of algorithm has existed since antiquity. Arithmetic algorithms, such as a division algorithm, was used by ancient Babylonian mathematicians c. 2500 BC and Egyptian mathematicians c. 1550 BC.[10] Greek mathematicians later used algorithms in 240 BC in the sieve of Eratosthenes for finding prime numbers,[11] and the Euclidean algorithm for finding the greatest common divisor of two numbers.[12] Arabic mathematicians such as al-Kindi in the 9th century used cryptographic algorithms for code-breaking, based on frequency analysis.[13]

The word algorithm itself is derived from the name of the 9th-century mathematician Muḥammad ibn Mūsā al-Khwārizmī, whose nisba (identifying him as from Khwarazm) was Latinized as Algoritmi.[14] A partial formalization of what would become the modern concept of algorithm began with attempts to solve the Entscheidungsproblem (decision problem) posed by David Hilbert in 1928. Later formalizations were framed as attempts to define "effective calculability"[15] or "effective method".[16] Those formalizations included the Gödel–Herbrand–Kleene recursive functions of 1930, 1934 and 1935, Alonzo Church's lambda calculus of 1936, Emil Post's Formulation 1 of 1936, and Alan Turing's Turing machines of 1936–37 and 1939







Entscheidungsproblem
https://en.wikipedia.org/wiki/Entscheidungsproblem
Entscheidungsproblem
From Wikipedia, the free encyclopedia
Jump to navigationJump to search
In mathematics and computer science, the Entscheidungsproblem (pronounced [ɛntˈʃaɪ̯dʊŋspʁoˌbleːm], German for "decision problem") is a challenge posed by David Hilbert and Wilhelm Ackermann in 1928.[1] The problem asks for an algorithm that considers, as input, a statement and answers "Yes" or "No" according to whether the statement is universally valid, i.e., valid in every structure satisfying the axioms.


Practical decision procedures
Having practical decision procedures for classes of logical formulas is of considerable interest for program verification and circuit verification.





Infinite loop
https://en.wikipedia.org/wiki/Infinite_loop

In computer programming, an infinite loop (or endless loop)[1][2] is a sequence of instructions that, as written, will continue endlessly, unless an external intervention occurs ("pull the plug"). It may be intentional.

Unintentional looping
Most often, the term is used for those situations when this is not the intended result; that is, when this is a bug.[7] Such errors are most common among novice programmers, but can be made by experienced programmers as well, because their causes can be quite subtle.

One common cause, for example, is that the programmer intends to iterate over sequence of nodes in a data structure such as a linked list or tree, executing the loop code once for each node. Improperly formed links can create a reference loop in the data structure, where one node links to another that occurs earlier in the sequence. This makes part of the data structure into a ring, causing naive code to loop forever.

While most infinite loops can be found by close inspection of the code, there is no general method to determine whether a given program will ever halt or will run forever; this is the undecidability of the halting problem.[8]

Interruption
As long as the system is responsive, infinite loops can often be interrupted by sending a signal to the process (such as SIGINT in Unix), or an interrupt to the processor, causing the current process to be aborted. This can be done in a task manager, in a terminal with the Control-C command,[9] or by using the kill command or system call. However, this does not always work, as the process may not be responding to signals or the processor may be in an uninterruptible state, such as in the Cyrix coma bug (caused by overlapping uninterruptible instructions in an instruction pipeline). In some cases other signals such as SIGKILL can work, as they do not require the process to be responsive, while in other cases the loop cannot be terminated short of system shutdown.


Language support
See also: Control flow
Infinite loops can be implemented using various control flow constructs. Most commonly, in unstructured programming this is jump back up (goto), while in structured programming this is an indefinite loop (while loop) set to never end, either by omitting the condition or explicitly setting it to true, as while (true) ....

Some languages have special constructs for infinite loops, typically by omitting the condition from an indefinite loop. Examples include Ada (loop ... end loop),[10] Fortran (DO ... END DO), Go (for { ... }), and Ruby (loop do ... end).




Deadlock Not to be confused with Deathlok or Dreadlock.
https://en.wikipedia.org/wiki/Deadlock

In concurrent computing, a deadlock is a state in which each member of a group waits for another member, including itself, to take action, such as sending a message or more commonly releasing a lock.[1] Deadlocks are a common problem in multiprocessing systems, parallel computing, and distributed systems, where software and hardware locks are used to arbitrate shared resources and implement process synchronization.[2]

In an operating system, a deadlock occurs when a process or thread enters a waiting state because a requested system resource is held by another waiting process, which in turn is waiting for another resource held by another waiting process. If a process is unable to change its state indefinitely because the resources requested by it are being used by another waiting process, then the system is said to be in a deadlock.[3]

In a communications system, deadlocks occur mainly due to lost or corrupt signals rather than resource contention.[4]







Resource contention
https://en.wikipedia.org/wiki/Resource_contention

In computer science, resource contention is a conflict over access to a shared resource such as random access memory, disk storage, cache memory, internal buses or external network devices. A resource experiencing ongoing contention can be described as oversubscribed.

Resolving resource contention problems is one of the basic functions of operating systems. Various low-level mechanisms can be used to aid this, including locks, semaphores, mutexes and queues. The other techniques that can be applied by the operating systems include intelligent scheduling, application mapping decision, and page coloring.[1][2]

Access to resources is also sometimes regulated by queuing; in the case of computing time on a CPU the controlling algorithm of the task queue is called a scheduler.

Failure to properly resolve resource contention problems may result in a number of problems, including deadlock, livelock, and thrashing.

Resource contention results when multiple processes attempt to use the same shared resource. Access to memory areas is often controlled by semaphores, which allows a pathological situation called a deadlock, when different threads or processes try to allocate resources already allocated by each other. A deadlock usually leads to a program becoming partially or completely unresponsive.

In recent years, research on the contention is more focused on the resources in the memory hierarchy, e.g., last-level caches, front-side bus, memory socket connection.[citation needed]




Cache coherence
https://en.wikipedia.org/wiki/Cache_coherence
In computer architecture, cache coherence is the uniformity of shared resource data that ends up stored in multiple local caches. When clients in a system maintain caches of a common memory resource, problems may arise with incoherent data, which is particularly the case with CPUs in a multiprocessing system.

In the illustration on the right, consider both the clients have a cached copy of a particular memory block from a previous read. Suppose the client on the bottom updates/changes that memory block, the client on the top could be left with an invalid cache of memory without any notification of the change. Cache coherence is intended to manage such conflicts by maintaining a coherent view of the data values in multiple caches

Overview
In a shared memory multiprocessor system with a separate cache memory for each processor, it is possible to have many copies of shared data: one copy in the main memory and one in the local cache of each processor that requested it. When one of the copies of data is changed, the other copies must reflect that change. Cache coherence is the discipline which ensures that the changes in the values of shared operands (data) are propagated throughout the system in a timely fashion.[1]

The following are the requirements for cache coherence:[2]

Write Propagation
Changes to the data in any cache must be propagated to other copies (of that cache line) in the peer caches.
Transaction Serialization
Reads/Writes to a single memory location must be seen by all processors in the same order.
Theoretically, coherence can be performed at the load/store granularity. However, in practice it is generally performed at the granularity of cache blocks.[3]


Coherence protocols
Coherence protocols apply cache coherence in multiprocessor systems. The intention is that two clients must never see different values for the same shared data.

The protocol must implement the basic requirements for coherence. It can be tailor-made for the target system or application.

Protocols can also be classified as snoopy or directory-based. Typically, early systems used directory-based protocols where a directory would keep a track of the data being shared and the sharers. In snoopy protocols, the transaction requests (to read, write, or upgrade) are sent out to all processors. All processors snoop the request and respond appropriately.

Write propagation in snoopy protocols can be implemented by either of the following methods:

Write-invalidate
When a write operation is observed to a location that a cache has a copy of, the cache controller invalidates its own copy of the snooped memory location, which forces a read from main memory of the new value on its next access.[4]
Write-update
When a write operation is observed to a location that a cache has a copy of, the cache controller updates its own copy of the snooped memory location with the new data.
If the protocol design states that whenever any copy of the shared data is changed, all the other copies must be "updated" to reflect the change, then it is a write-update protocol. If the design states that a write to a cached copy by any processor requires other processors to discard or invalidate their cached copies, then it is a write-invalidate protocol.

However, scalability is one shortcoming of broadcast protocols.




Memory barrier
https://en.wikipedia.org/wiki/Memory_barrier


A memory barrier, also known as a membar, memory fence or fence instruction, is a type of barrier instruction that causes a central processing unit (CPU) or compiler to enforce an ordering constraint on memory operations issued before and after the barrier instruction. This typically means that operations issued prior to the barrier are guaranteed to be performed before operations issued after the barrier.

Memory barriers are necessary because most modern CPUs employ performance optimizations that can result in out-of-order execution. This reordering of memory operations (loads and stores) normally goes unnoticed within a single thread of execution, but can cause unpredictable behaviour in concurrent programs and device drivers unless carefully controlled. The exact nature of an ordering constraint is hardware dependent and defined by the architecture's memory ordering model. Some architectures provide multiple barriers for enforcing different ordering constraints.

Memory barriers are typically used when implementing low-level machine code that operates on memory shared by multiple devices. Such code includes synchronization primitives and lock-free data structures on multiprocessor systems, and device drivers that communicate with computer hardware.


Directory-based cache coherence
https://en.wikipedia.org/wiki/Directory-based_cache_coherence
In computer engineering, directory-based cache coherence is a type of cache coherence mechanism, where directories are used to manage caches in place of snoopy methods due to their scalability. Bus snooping methods scale poorly due to the use of broadcasting. These methods can be used to target both performance and scalability of directory systems.[1]


Bus snooping
https://en.wikipedia.org/wiki/Bus_snooping


Bus snooping or bus sniffing is a scheme by which a coherency controller (snooper) in a cache (a snoopy cache) monitors or snoops the bus transactions, and its goal is to maintain a cache coherency in distributed shared memory systems.[citation needed] A cache containing a coherency controller (snooper) is called a snoopy cache. This scheme was introduced by Ravishankar and Goodman in 1983.[1]   


Benefit
The advantage of using bus snooping is that it is faster than directory based coherency mechanism. The data being shared is placed in a common directory that maintains the coherence between caches in a directory-based system. Bus snooping is normally faster if there is enough bandwidth, because all transactions are a request/response seen by all processors.[2]

Drawback
The disadvantage of bus snooping is limited scalability. Frequent snooping on a cache causes a race with an access from a processor, thus it can increase cache access time and power consumption. Each of the requests has to be broadcast to all nodes in a system. It means that the size of the (physical or logical) bus and the bandwidth it provides must grow, as the system becomes larger.[2] Since the bus snooping does not scale well, larger cache coherent NUMA (ccNUMA) systems tend to use directory-based coherence protocols.





Non-uniform memory access
https://en.wikipedia.org/wiki/Non-uniform_memory_access
Non-uniform memory access (NUMA) is a computer memory design used in multiprocessing, where the memory access time depends on the memory location relative to the processor. Under NUMA, a processor can access its own local memory faster than non-local memory (memory local to another processor or memory shared between processors). The benefits of NUMA are limited to particular workloads, notably on servers where the data is often associated strongly with certain tasks or users.[1]

NUMA architectures logically follow in scaling from symmetric multiprocessing (SMP) architectures. They were developed commercially during the 1990s by Unisys, Convex Computer (later Hewlett-Packard), Honeywell Information Systems Italy (HISI) (later Groupe Bull), Silicon Graphics (later Silicon Graphics International), Sequent Computer Systems (later IBM), Data General (later EMC), and Digital (later Compaq, then HP, now HPE). Techniques developed by these companies later featured in a variety of Unix-like operating systems, and to an extent in Windows NT.

The first commercial implementation of a NUMA-based Unix system was the Symmetrical Multi Processing XPS-100 family of servers, designed by Dan Gielan of VAST Corporation for Honeywell Information Systems Italy.





False sharing
https://en.wikipedia.org/wiki/False_sharing

In computer science, false sharing is a performance-degrading usage pattern that can arise in systems with distributed, coherent caches at the size of the smallest resource block managed by the caching mechanism. When a system participant attempts to periodically access data that will never be altered by another party, but those data share a cache block with data that are altered, the caching protocol may force the first participant to reload the whole unit despite a lack of logical necessity. The caching system is unaware of activity within this block and forces the first participant to bear the caching system overhead required by true shared access of a resource.

By far the most common usage of this term is in modern multiprocessor CPU caches, where memory is cached in lines of some small power of two word size (e.g., 64 aligned, contiguous bytes). If two processors operate on independent data in the same memory address region storable in a single line, the cache coherency mechanisms in the system may force the whole line across the bus or interconnect with every data write, forcing memory stalls in addition to wasting system bandwidth. False sharing is an inherent artifact of automatically synchronized cache protocols and can also exist in environments such as distributed file systems or databases, but current prevalence is limited to RAM caches.


&
https://parallelcomputing2017.wordpress.com/2017/03/17/understanding-false-sharing/



Resource allocation
https://en.wikipedia.org/wiki/Resource_allocation

In economics, resource allocation is the assignment of available resources to various uses. In the context of an entire economy, resources can be allocated by various means, such as markets, or planning.

In project management, resource allocation or resource management is the scheduling of activities and the resources required by those activities while taking into consideration both the resource availability and the project time.[1]

Economics
In economics, the area of public finance deals with three broad areas: macroeconomic stabilization, the distribution of income and wealth, and the allocation of resources. Much of the study of the allocation of resources is devoted to finding the conditions under which particular mechanisms of resource allocation lead to Pareto efficient outcomes, in which no party's situation can be improved without hurting that of another party.

Strategic planning
In strategic planning, resource allocation is a plan for using available resources, for example human resources, especially in the near term, to achieve goals for the future. It is the process of allocating scarce resources among the various projects or business units.

There are a number of approaches to solving resource allocation problems e.g. resources can be allocated using a manual approach, an algorithmic approach (see below),[2] or a combination of both.[3]

There may be contingency mechanisms such as a priority ranking of items excluded from the plan, showing which items to fund if more resources should become available and a priority ranking of some items included in the plan, showing which items should be sacrificed if total funding must be reduced.[4]

Algorithms
Resource allocation may be decided by using computer programs applied to a specific domain to automatically and dynamically distribute resources to applicants.

This is especially common in electronic devices dedicated to routing and communication. For example, channel allocation in wireless communication may be decided by a base transceiver station using an appropriate algorithm.[5]

One class of resource whereby applicants bid for the best resource(s) according to their balance of "money", as in an online auction business model (see also auction theory). A study by Emmanuel Yarteboi Annan[citation needed] shows that this is highly important in the resource allocation sector.

In one paper on CPU time slice allocation[6] an auction algorithm is compared to proportional share scheduling.



Allocative efficiency
https://en.wikipedia.org/wiki/Allocative_efficiency
Allocative efficiency is a state of the economy in which production is aligned with consumer preferences; in particular, every good or service is produced up to the point where the last unit provides a marginal benefit to consumers equal to the marginal cost of producing.

In contract theory, allocative efficiency is achieved in a contract in which the skill demanded by the offering party and the skill of the agreeing party are the same.

Resource allocation efficiency includes two aspects. At the macro aspect, it is the allocation efficiency of social resources, which is achieved through the economic system arrangements of the entire society. The micro aspect is the use efficiency of resources, which can be understood as the production efficiency of the organization, which can be improved through innovation and progress within the organizations.

Although there are different standards of evaluation for the concept of allocative efficiency, the basic principle asserts that in any economic system, choices in resource allocation produce both "winners" and "losers" relative to the choice being evaluated. The principles of rational choice, individual maximization, utilitarianism and market theory further suppose that the outcomes for winners and losers can be identified, compared, and measured. Under these basic premises, the goal of attaining allocative efficiency can be defined according to some principles where some allocations are subjectively better than others. For example, an economist might say that a policy change is an allocative improvement as long as those who benefit from the change (winners) gain more than the losers lose (see Kaldor–Hicks efficiency).

An allocatively efficient economy produces an "optimal mix" of commodities.[1]:9 A firm is allocatively efficient when its price is equal to its marginal costs (that is, P = MC) in a perfect market. The demand curve coincides with the marginal utility curve, which measures the (private) benefit of the additional unit, while the supply curve coincides with the marginal cost curve, which measures the (private) cost of the additional unit. In a perfect market, there are no externalities, implying that the demand curve is also equal to the social benefit of the additional unit, while the supply curve measures the social cost of the additional unit. Therefore, the market equilibrium, where demand meets supply, is also where the marginal social benefit equals the marginal social costs. At this point, the net social benefit is maximized, meaning this is the allocative efficient outcome. When a market fails to allocate resources efficiently, there is said to be market failure. Market failure may occur because of imperfect knowledge, differentiated goods, concentrated market power (e.g., monopoly or oligopoly), or externalities.

In the single-price model, at the point of allocative efficiency price is equal to marginal cost.[2][3] At this point the social surplus is maximized with no deadweight loss (the latter being the value society puts on that level of output produced minus the value of resources used to achieve that level). Allocative efficiency is the main tool of welfare analysis to measure the impact of markets and public policy upon society and subgroups being made better or worse off.

It is possible to have Pareto efficiency without allocative efficiency: in such a situation, it is impossible to reallocate resources in such a way that someone gains and no one loses (hence we have Pareto efficiency), yet it would be possible to reallocate in such a way that gainers gain more than losers lose (hence with such a reallocation, we do not have allocative efficiency).[4]:397

Also, for an extensive discussion of various types of allocative efficiency in a production context and their estimations see Sickles and Zelenyuk (2019, Chapter 3, etc).[5] In view of the Pareto efficiency measurement method, it is difficult to use in actual operation, including the use of human and material resources, which is hard to achieve a full range of efficiency allocation, and it is mainly to make judgments from the allocation of funds; therefore, analyzing the funds in the stock market. Allocation efficiency is used to determine the efficiency of resource allocation in the capital market.

In a perfectly competitive market, capital market resources should be allocated among capital markets under the principle of the highest marginal benefit. Therefore, the most important measurement standard in the capital market is to observe whether capital flows into the enterprise with the best operating efficiency. The most efficient companies should also get a large amount of capital investment, and the less efficient companies should get less capital investment. There are three conditions that come with Pareto efficiency Best trade outcome Even if you trade again, individuals cannot get greater benefits from it. At this time, for any two consumers, the marginal substitution rate of any two commodities is the same, and the utility of the two consumers is maximized at the same time. Optimal production: This economy must be on the boundary of its own production possibilities. At this time, for any two producers who produce different products, the marginal technology substitution rate of the two production factors that need to be input is the same, and the output of the two consumers is maximized at the same time. Optimal product mix: The combination of products produced by the economy must reflect consumer preferences. At this time, the marginal rate of substitution between any two commodities must be the same as the marginal product conversion rate of any producer between these two commodities.


A numerical example of allocative efficiency:


Allocation efficiency occurs when there is an optimal distribution of goods and services, considering consumer’s preference. When the price equals marginal cost of production, the allocation efficiency is at the output level. This is because the optimal distribution is achieved when the marginal utility of good equals the marginal cost. The price that consumer is willing to pay is same as the marginal utility of the consumer.


From the graph we can see that at the output of 40, the marginal cost of good is $6 while the price that consumer is willing to pay is $15. It means the marginal utility of the consumer is higher than the marginal cost. The optimal level of the output is 70, where the marginal cost equals to marginal utility. At the output of 40, this product or service is under-consumed by the society. By increasing the output to 70, the price will fall to $11. Meanwhile, the society would benefit from consuming more of the good or service.


An example of allocation inefficiency

With the market power, the monopoly can increase the price to gain the super normal profit. The monopolies can set the price above the marginal cost of the production. In this case, the allocation is not efficient. It results in the dead weight welfare loss to the society as a whole. In real life, the government's intervention policy to monopoly enterprises will affect the allocation efficiency. Large-scale downstream companies with more efficient or better products are generally more competitive than other companies. The wholesale prices they get are much lower than those of their competitors. It is conducive to improving the efficiency of allocation. Ind erst and Shaffer (2009) found that banning prices would reduce allocation efficiency and lead to higher wholesale prices for all enterprises. More importantly, social welfare, industry profits, and consumer surplus will all be reduced.



Pareto efficiency
https://en.wikipedia.org/wiki/Pareto_efficiency

Pareto efficiency or Pareto optimality as it was previously referred to is a concept of efficiency in exchange whereby an individual or preference criterion cannot be made better off without making at least one individual or preference criterion worse off. For Pareto efficiency to hold, it must be that productive efficiency holds and exchange efficiency must hold; for a given bundle of goods, one cannot redistribute them so that the utility of one individual is increased without reducing the utility of another individual. [1] The concept is named after Vilfredo Pareto (1848–1923), Italian civil engineer and economist, who used the concept in his studies of economic efficiency and income distribution.

Edgeworth Pareto efficient point.pdf
The following three concepts are closely related:

Given an initial situation, a Pareto improvement is a new situation where some agents will gain, and no agents will lose.[2]

A situation is called Pareto dominated if there exists a possible Pareto improvement.

A situation is called Pareto optimal or Pareto efficient if no change could lead to greater utility for some agent without some other agent losing or if there's no scope for further Pareto improvement. The Pareto frontier is the set of all non Pareto dominated solutions for a given search space in a multi objective optimisation function, conventionally shown graphically. It also is also known as the Pareto front or Pareto set.[3]

Pareto originally used the word "optimal" for the concept, but as it describes a situation where a limited number of people will be made better off under finite resources, and it does not take equality or social well-being into account, it is in effect a definition of and better captured by 'efficiency'.[1]


Use in engineering
The notion of Pareto efficiency has been used in engineering.[21]:111–148 Given a set of choices and a way of valuing them, the Pareto frontier or Pareto set or Pareto front is the set of choices that are Pareto efficient. By restricting attention to the set of choices that are Pareto-efficient, a designer can make tradeoffs within this set, rather than considering the full range of every parameter.


Use in public policy
The modern microeconomic theory drew inspirations heavily from Pareto efficiency. Since Pareto showed that the equilibrium achieved through competition would optimize resource allocation, it is effectively corroborating Adam Smith's "invisible hand" notion. More specifically, it motivated the debate over "market socialism" in the 1930s.[34]


Criticism
This section will introduce criticisms from the most radical to more moderate ones.

Some commentators contest that Pareto efficiency could potentially serve as an ideological tool. With it implying that capitalism is self-regulated thereof, it is likely that the embedded structural problems such as unemployment would be treated as deviating from the equilibrium or norm, and thus neglected or discounted.[34]

Pareto efficiency does not require a totally equitable distribution of wealth, which is another aspect that draws in criticism.[41]:222 An economy in which a wealthy few hold the vast majority of resources can be Pareto efficient. A simple example is the distribution of a pie among three people. The most equitable distribution would assign one third to each person. However the assignment of, say, a half section to each of two individuals and none to the third is also Pareto optimal despite not being equitable, because none of the recipients could be made better off without decreasing someone else's share; and there are many other such distribution examples. An example of a Pareto inefficient distribution of the pie would be allocation of a quarter of the pie to each of the three, with the remainder discarded.[42]:18

The liberal paradox elaborated by Amartya Sen shows that when people have preferences about what other people do, the goal of Pareto efficiency can come into conflict with the goal of individual liberty.[43]:92–94

Lastly, it is proposed that Pareto efficiency to some extent inhibited discussion of other possible criteria of efficiency. As the scholar Lockhood argues, one possible reason is that any other efficiency criteria established in the neoclassical domain will reduce to Pareto efficiency at the end.[34]





Vilfredo Pareto
https://en.wikipedia.org/wiki/Vilfredo_Pareto
Vilfredo Federico Damaso Pareto[3] (UK: /pæˈreɪtoʊ, -ˈriːt-/ pa-RAY-toh, -⁠EE-,[4] US: /pəˈreɪtoʊ/ pə-RAY-toh,[5] Italian: [vilˈfreːdo paˈreːto], Ligurian: [paˈɾeːtu]; born Wilfried Fritz Pareto; 15 July 1848 – 19 August 1923) was an Italian civil engineer, sociologist, economist, political scientist, and philosopher. He made several important contributions to economics, particularly in the study of income distribution and in the analysis of individuals' choices. He was also responsible for popularising the use of the term "elite" in social analysis.

He introduced the concept of Pareto efficiency and helped develop the field of microeconomics. He was also the first to discover that income follows a Pareto distribution, which is a power law probability distribution. The Pareto principle was named after him, and it was built on observations of his such as that 80% of the wealth in Italy belonged to about 20% of the population. He also contributed to the fields of sociology and mathematics, according to the mathematician Benoit Mandelbrot and Richard L. Hudson:

His legacy as an economist was profound. Partly because of him, the field evolved from a branch of moral philosophy as practised by Adam Smith into a data intensive field of scientific research and mathematical equations. His books look more like modern economics than most other texts of that day: tables of statistics from across the world and ages, rows of integral signs and equations, intricate charts and graphs.[6]

Biography
Pareto was born of an exiled noble Genoese family in 1848 in Paris, the centre of the popular revolutions of that year. His father, Raffaele Pareto (1812–1882), was an Italian civil engineer and Ligurian marquis who had left Italy much like Giuseppe Mazzini and other Italian nationalists.[7] His mother, Marie Metenier, was a French woman. Enthusiastic about the 1848 German revolution, his parents named him Wilfried Fritz, which became Vilfredo Federico upon his family's move back to Italy in 1858.[8] In his childhood, Pareto lived in a middle-class environment, receiving a high standard of education, attending the newly created Istituto Tecnico Leardi where Fernando Pio Rosellini was his mathematics professor.[9] In 1869, he earned a doctor's degree in engineering from what is now the Polytechnic University of Turin[7] (then the Technical School for Engineers). His dissertation was entitled "The Fundamental Principles of Equilibrium in Solid Bodies". His later interest in equilibrium analysis in economics and sociology can be traced back to this paper.

From civil engineer to classical liberal economist
For some years after graduation, he worked as a civil engineer, first for the state-owned Italian Railway Company and later in private industry. He was manager of the Iron Works of San Giovanni Valdarno and later general manager of Italian Iron Works.[7]

He did not begin serious work in economics until his mid-forties. He started his career a fiery advocate of classical liberalism, besetting the most ardent British liberals with his attacks on any form of government intervention in the free market. In 1886, he became a lecturer on economics and management at the University of Florence. His stay in Florence was marked by political activity, much of it fueled by his own frustrations with government regulators. In 1889, after the death of his parents, Pareto changed his lifestyle, quitting his job and marrying a Russian, Alessandrina Bakunina.[10]

Economics and sociology
In 1893, he succeeded Léon Walras to the chair of Political Economy at the University of Lausanne[7] in Switzerland where he remained for the rest of his life. In 1906, he made the famous observation that twenty percent of the population owned eighty percent of the property in Italy, later generalised by Joseph M. Juran into the Pareto principle (also termed the 80–20 rule). In one of his books published in 1909 he showed the Pareto distribution of how wealth is distributed, he believed "through any human society, in any age, or country".[11] He maintained cordial personal relationships with individual socialists, but always thought their economic ideas were severely flawed. He later became suspicious of their humanitarian motives and denounced socialist leaders as an 'aristocracy of brigands' who threatened to despoil the country and criticized the government of Giovanni Giolitti for not taking a tougher stance against worker strikes. Growing unrest among labor in Italy led him to the anti-socialist and anti-democratic camp.[12] His attitude toward fascism in his last years is a matter of controversy.[13][14]

Pareto's relationship with scientific sociology in the age of the foundation is grafted in a paradigmatic way in the moment in which he, starting from the political economy, criticizes positivism as a totalizing and metaphysical system devoid of a rigorous logical-experimental method. In this sense we can read the fate of the Paretian production within a history of the social sciences that continues to show its peculiarity and interest for its contributions in the 21st century.[15] The story of Pareto is also part of the multidisciplinary research of a scientific model that privileges sociology as a critique of cumulative models of knowledge as well as a discipline tending to the affirmation of relational models of science.[16][17]

Sociology
Pareto's later years were spent in collecting the material for his best-known work, Trattato di sociologia generale (1916) (The Mind and Society, published in 1935). His final work was Compendio di sociologia generale (1920).

In his Trattato di Sociologia Generale (1916, rev. French trans. 1917), published in English by Harcourt, Brace in a four-volume edition edited by Arthur Livingston under the title The Mind and Society (1935), Pareto developed the notion of the circulation of elites, the first social cycle theory in sociology. He is famous for saying "history is a graveyard of aristocracies".[18]

Pareto seems to have turned to sociology for an understanding of why his abstract mathematical economic theories did not work out in practice, in the belief that unforeseen or uncontrollable social factors intervened. His sociology holds that much social action is nonlogical and that much personal action is designed to give spurious logicality to non-rational actions. We are driven, he taught, by certain "residues" and by "derivations" from these residues. The more important of these have to do with conservatism and risk-taking, and human history is the story of the alternate dominance of these sentiments in the ruling elite, which comes into power strong in conservatism but gradually changes over to the philosophy of the "foxes" or speculators. A catastrophe results, with a return to conservatism; the "lion" mentality follows. This cycle might be broken by the use of force, says Pareto, but the elite becomes weak and humanitarian and shrinks from violence.[19]

Pareto's sociology was introduced to the United States by George Homans and Lawrence J. Henderson at Harvard, and had considerable influence, especially on Harvard sociologist Talcott Parsons, who developed a systems approach to society and economics that argues the status quo is usually functional.[20]

Pareto was a lifelong opponent of Marxism.[21]

Fascism and power distribution
Benoit Mandelbrot wrote:

One of Pareto's equations achieved special prominence, and controversy. He was fascinated by problems of power and wealth. How do people get it? How is it distributed around society? How do those who have it use it? The gulf between rich and poor has always been part of the human condition, but Pareto resolved to measure it. He gathered reams of data on wealth and income through different centuries, through different countries: the tax records of Basel, Switzerland, from 1454 and from Augsburg, Germany, in 1471, 1498 and 1512; contemporary rental income from Paris; personal income from Britain, Prussia, Saxony, Ireland, Italy, Peru. What he found – or thought he found – was striking. When he plotted the data on graph paper, with income on one axis, and number of people with that income on the other, he saw the same picture nearly everywhere in every era. Society was not a "social pyramid" with the proportion of rich to poor sloping gently from one class to the next. Instead it was more of a "social arrow" – very fat on the bottom where the mass of men live, and very thin at the top where sit the wealthy elite. Nor was this effect by chance; the data did not remotely fit a bell curve, as one would expect if wealth were distributed randomly. "It is a social law", he wrote: something "in the nature of man".[22]:153

Pareto had argued that democracy was an illusion and that a ruling class always emerged and enriched itself. For him, the key question was how actively the rulers ruled. For this reason, he called for a drastic reduction of the state and welcomed Benito Mussolini's rule as a transition to this minimal state so as to liberate the "pure" economic forces.[23]

Mandelbrot summarized Pareto's notions as follows:

At the bottom of the Wealth curve, he wrote, Men and Women starve and children die young. In the broad middle of the curve all is turmoil and motion: people rising and falling, climbing by talent or luck and falling by alcoholism, tuberculosis and other kinds of unfitness. At the very top sit the elite of the elite, who control wealth and power for a time – until they are unseated through revolution or upheaval by a new aristocratic class. There is no progress in human history. Democracy is a fraud. Human nature is primitive, emotional, unyielding. The smarter, abler, stronger, and shrewder take the lion's share. The weak starve, lest society become degenerate: One can, Pareto wrote, 'compare the social body to the human body, which will promptly perish if prevented from eliminating toxins.' Inflammatory stuff – and it burned Pareto's reputation.[22]:154

The future leader of Italian fascism Benito Mussolini, in 1904, when he was a young student, attended some of Pareto's lectures at the University of Lausanne. It has been argued that Mussolini's move away from socialism towards a form of "elitism" may be attributed to Pareto's ideas.[24]

To quote Franz Borkenau, a biographer:

In the first years of his rule Mussolini literally executed the policy prescribed by Pareto, destroying political liberalism, but at the same time largely replacing state management of private enterprise, diminishing taxes on property, favoring industrial development, imposing a religious education in dogmas.[25]:18

Karl Popper dubbed Pareto the "theoretician of totalitarianism",[26] but, according to Renato Cirillo, there is no evidence in Popper's published work that he read Pareto in any detail before repeating what was then a common but dubious judgment in anti-fascist circles.[13]

Some fascist writers, such as Luigi Amoroso, wrote approvingly of Pareto's ideas:

Just as the weaknesses of the flesh delayed, but could not prevent, the triumph of Saint Augustine, so a rationalistic vocation retarded but did not impede the flowering of the mysticism of Pareto. For that reason, Fascism, having become victorious, extolled him in life, and glorifies his memory, like that of a confessor of its faith.[7]

Author Renato Cirillo argued, on the contrary, that:

Some have seen in [Pareto's] sociological works the foundations of fascism. This is not correct. Even fascist writers did not find much merit in these works, and definitely condemned his economic theories.[13]

Pareto's elite theory also influenced a number of liberal theorists, such as the anti-fascist Piero Gobetti, who wrote:

The concept of an elite that imposes itself by exploiting a channel of interests and general psychological conditions against the old leaders who have exhausted their function is genuinely liberal.[27]

Other liberals influenced by Pareto include Norberto Bobbio and Raymond Aron.[28]

Economic concepts
Pareto Theory Of Maximum Economics

Pareto turned his interest to economic matters and he became an advocate of free trade, finding himself in difficulty with the Italian government. His writings reflected the ideas of Léon Walras that economics is essentially a mathematical science. Pareto was a leader of the "Lausanne School" and represents the second generation of the Neoclassical Revolution. His "tastes-and-obstacles" approach to general equilibrium theory was resurrected during the great "Paretian Revival" of the 1930s and has influenced theoretical economics since.[29]

In his Manual of Political Economy (1906) the focus is on equilibrium in terms of solutions to individual problems of "objectives and constraints". He used the indifference curve of Edgeworth (1881) extensively, for the theory of the consumer and, another great novelty, in his theory of the producer. He gave the first presentation of the trade-off box now known as the "Edgeworth-Bowley" box.[30]

Pareto was the first to realize that cardinal utility could be dispensed with and economic equilibrium thought of in terms of ordinal utility[31] – that is, it was not necessary to know how much a person valued this or that, only that he preferred X of this to Y of that. Utility was a preference-ordering. With this, Pareto not only inaugurated modern microeconomics, but he also demolished the alliance of economics and utilitarian philosophy (which calls for the greatest good for the greatest number; Pareto said "good" cannot be measured). He replaced it with the notion of Pareto-optimality, the idea that a system is enjoying maximum economic satisfaction when no one can be made better off without making someone else worse off. Pareto optimality is widely used in welfare economics and game theory. A standard theorem is that a perfectly competitive market creates distributions of wealth that are Pareto optimal.[32]

Concepts
Some economic concepts in current use are based on his work:

The Pareto index is a measure of the inequality of income distribution.
He argued that in all countries and times, the distribution of income and wealth is highly skewed, with a few holding most of the wealth. He argued that all observed societies follow a regular logarithmic pattern:

{\displaystyle \log N=\log A+m\log x}\log N = \log A + m \log x
where N is the number of people with wealth higher than x, and A and m are constants. Over the years, Pareto's Law has proved remarkably close to observed data.

The Pareto chart is a special type of histogram, used to view causes of a problem in order of severity from largest to smallest. It is a statistical tool that graphically demonstrates the Pareto principle or the 80–20 rule.
Pareto's law concerns the distribution of income.
The Pareto distribution is a probability distribution used, among other things, as a mathematical realization of Pareto's law.
Ophelimity is a measure of purely economic satisfaction.



Corruption
https://en.wikipedia.org/wiki/Corruption
Corruption, as defined by the World Bank, is a form of dishonesty or criminal offense undertaken by a person or organization entrusted with a position of authority, to acquire illicit benefit or abuse power for one's private gain. Corruption may include many activities including bribery and embezzlement, though it may also involve practices that are legal in many countries.[1] Political corruption occurs when an office-holder or other governmental employee acts in an official capacity for personal gain. Corruption is most common in kleptocracies, oligarchies, narco-states, and mafia states.[citation needed]

Corruption and crime are endemic sociological occurrences which appear with regular frequency in virtually all countries on a global scale in varying degree and proportion. Individual nations each allocate domestic resources for the control and regulation of corruption and crime. Strategies to counter corruption are often summarized under the umbrella term anti-corruption. Additionally, global initiative like the United Nations Sustainable Development Goal 16 also has a target to substantially reduce corruption of all forms.[2]




Contention
https://en.wikipedia.org/wiki/Contention
Contention may refer to:

The main contention, in rhetoric and logic, the main point being argued
Resource contention, a general concept in communications and computing, is competition by users of a system for the facility at the same time:
Contention (telecommunications), a channel access method
The contention ratio, in computer networking, competition that applies specifically to the number of people connected to an ISP who share a set amount of bandwidth
Lock contention, in computer science, where a mutual exclusion lock reduces the throughput by hindering the concurrency of a program
Bus contention, in computer design, where multiple devices on a computer bus attempt to use it at the same time
Contention City, Arizona, a ghost town also known as Contention



Space complexity
https://en.wikipedia.org/wiki/Space_complexity
The space complexity of an algorithm or a computer program is the amount of memory space required to solve an instance of the computational problem as a function of characteristics of the input. It is the memory required by an algorithm until it executes completely.[1]

Similar to time complexity, space complexity is often expressed asymptotically in big O notation, such as {\displaystyle O(n),}O(n), {\displaystyle O(n\log n),}{\displaystyle O(n\log n),} {\displaystyle O(n^{\alpha }),}{\displaystyle O(n^{\alpha }),} {\displaystyle O(2^{n}),}{\displaystyle O(2^{n}),} etc., where n is a characteristic of the input influencing space complexity.






ALL WATCHED OVER SUMMARY
https://idoc.pub/documents/all-watched-over-by-machines-of-loving-grace-summary-9n0kjm89024v
Kayla Fadden  Summary of All Watched Over by Machines of Loving GraceAs more jobs that were once performed by humans, or not at all, are now being achieved by machinesand their algorithms, more ethical concerns are beginning to arise as well. One of the oldest ethicalissues originally posed by Phillipa Foot regards the double effect doctrine which investigates whether itis acceptable to commit a harmful act if it is for a good result; do the ends justify the means? This classicethical problem is one that, if an algorithm were to evaluate and ‘decide’ a best course of action, it wouldnot make the morally acceptable choice because “algorithms are essentially thoughtless. They modelcertain decision flows, but once you run them, no more thought occurs.” Where humans can make thedistinction that killing one to save five is not an ethically sound decision, algorithms do not have a“‘moral   center;   they   have   no   sense   of   right   or   wrong;   they   cannot   take   responsibility   for   theirconsequences.’” With more machines taking on a sophisticated role in society, how can the creators ofsuch algorithms instill a sense of thoughtfulness in something that is entirely thoughtless?Algorithms may not have the ability to think, but still someone must be held responsible for the actionsof these machines. Devices are being made to perform jobs that make human life easier, but there is alack of “‘awareness  of and consideration for the failure modes, the edge cases, and the worst  casescenarios.’” Creating an algorithm to solve a problem’s best-case-scenario is simple, but consideringevery potential ethical conundrum a machine may come across and programming a solution to saidproblem is nearly impossible. Just because ethical humans create these machines does not mean theyshould be so innately trusted to make morally just choices. There are cases where a “bot has purchasedcigarettes, counterfeit branded clothing, master keys, and drugs”, which were mainly illegal purchases.Even Google, a widely known company, has been sued for defamation of character due to their pageranking algorithm associating Albert Yeung’s name with criminal gangs. Though no one at Google saidanything construed as hurtful toward Yeung’s reputation, the company is responsible for the actions oftheir algorithms. As machines become more advanced and their algorithms serve more essential roles ineveryday life, the creator’s responsibility to program a sense of morality increases drastically. Humans have been imagining a world of machines long before the creation of the computer or theInternet. Richard Brautigan wrote a poem in 1967 speaking of a “cybernetic ecology” where humanshave machines to watch over them and work for them. Brautigan’s poem accurately predicted life todaywhere jobs are constantly being surrendered to cheaper, faster, and more efficient machines; but somesituations   require   more   than   the   unmerciful,   black   and   white,   decision   making   that   machines   areprogrammed to do. In the field of computing, it is easy to make choices that lack the compassion andemotions  that   humans possess because algorithms  make  decisions  strictly based on   rules and laws.Software professionals must keep a sense of compassion and morality while programming as “we slowlyand inevitably and irreversibly surrender to these machines of our own creation”.Dr. P Drexel 19/6/16

Kayla Fadden Loving Grace

Summary of All Watched Over by Machines of

As more jobs that were once performed by humans, or not at all, are now being achieved by machines and their algorithms, more ethical concerns are beginning to arise as well. One of the oldest ethical issues originally posed by Phillipa Foot regards the double effect doctrine which investigates whether it is acceptable to commit a harmful act if it is for a good result; do the ends justify the means? This classic ethical problem is one that, if an algorithm were to evaluate and ‘decide’ a best course of action, it would not make the morally acceptable choice because “algorithms are essentially thoughtless. They model certain decision flows, but once you run them, no more thought occurs.” Where humans can make the distinction that killing one to save five is not an ethically sound decision, algorithms do not have a “‘moral center; they have no sense of right or wrong; they cannot take responsibility for their consequences.’” With more machines taking on a sophisticated role in society, how can the creators of such algorithms instill a sense of thoughtfulness in something that is entirely thoughtless? Algorithms may not have the ability to think, but still someone must be held responsible for the actions of these machines. Devices are being made to perform jobs that make human life easier, but there is a lack of “‘awareness of and consideration for the failure modes, the edge cases, and the worst case scenarios.’” Creating an algorithm to solve a problem’s best-case-scenario is simple, but considering every potential ethical conundrum a machine may come across and programming a solution to said problem is nearly impossible. Just because ethical humans create these machines does not mean they should be so innately trusted to make morally just choices. There are cases where a “bot has purchased cigarettes, counterfeit branded clothing, master keys, and drugs”, which were mainly illegal purchases. Even Google, a widely known company, has been sued for defamation of character due to their page ranking algorithm associating Albert Yeung’s name with criminal gangs. Though no one at Google said anything construed as hurtful toward Yeung’s reputation, the company is responsible for the actions of their algorithms. As machines become more advanced and their algorithms serve more essential roles in everyday life, the creator’s responsibility to program a sense of morality increases drastically. Humans have been imagining a world of machines long before the creation of the computer or the Internet. Richard Brautigan wrote a poem in 1967 speaking of a “cybernetic ecology” where humans have machines to watch over them and work for them. Brautigan’s poem accurately predicted life today where jobs are constantly being surrendered to cheaper, faster, and more efficient machines; but some situations require more than the unmerciful, black and white, decision making that machines are programmed to do. In the field of computing, it is easy to make choices that lack the compassion and emotions that humans possess because algorithms make decisions strictly based on rules and laws. Software professionals must keep a sense of compassion and morality while programming as “we slowly and inevitably and irreversibly surrender to these machines of our own creation”. Dr. P Drexel

1 9/6/16

Kayla Fadden Loving Grace

Dr. P Drexel

Summary of All Watched Over by Machines of

1 9/6/16





Art manifesto
https://en.wikipedia.org/wiki/Art_manifesto#Concept

An art manifesto is a public declaration of the intentions, motives, or views of an artist or artistic movement. Manifestos are a standard feature of the various movements in the modernist avant-garde and are still written today. Art manifestos are sometimes in their rhetoric intended for shock value, to achieve a revolutionary effect. They often address wider issues, such as the political system. Typical themes are the need for revolution, freedom (of expression) and the implied or overtly stated superiority of the writers over the status quo.[citation needed] The manifesto gives a means of expressing, publicising and recording ideas for the artist or art group—even if only one or two people write the words, it is mostly still attributed to the group name.






Rational choice theory
https://en.wikipedia.org/wiki/Rational_choice_theory#Overview

Rational choice theory refers to a set of guidelines that help understand economic and social behaviour. [1] The theory postulates that an individual will perform a cost-benefit analysis to determine whether an option is right for them. [2] It also suggests that an individual's self-driven rational actions will help better the overall economy. Rational choice theory looks at three concepts: rational actors, self interest and the invisible hand.[3]


Rationality can be used as an assumption for the behaviour of individuals in a wide range of contexts outside of economics. It is also used in political science,[4] sociology,[5] and philosophy.

Overview
The basic premise of rational choice theory is that the decisions made by individual actors will collectively produce aggregate social behaviour. The theory also assumes that individuals have preferences available choice alternatives. These preferences are assumed to be complete and transitive. Completeness refers to the individual being able to say which of the options they prefer (i.e. individual prefers A over B, B over A or are indifferent to both). Alternatively, transitivity is where the individual weakly prefers option A over B and weakly prefers option B over C, leading to the conclusion that the individual weakly prefers A over C. The rational agent will then perform their own cost-benefit analysis using a variety of criterion to perform their self-determined best choice of action.

One version of rationality is instrumental rationality, which involves achieving a goal using the most cost effective method without reflecting on the worthiness of that goal. Duncan Snidal emphasises that the goals are not restricted to self-regarding, selfish, or material interests. They also include other-regarding, altruistic, as well as normative or ideational goals.[6]

Rational choice theory does not claim to describe the choice process, but rather it helps predict the outcome and pattern of choice. It is consequently assumed that the individual is self-interested or being homo economicus. Here, the individual comes to a decision that maximizes personal advantage by balancing costs and benefits. [7] Proponents of such models, particularly those associated with the Chicago school of economics, do not claim that a model's assumptions are an accurate description of reality, only that they help formulate clear and falsifiable hypotheses.[citation needed] In this view, the only way to judge the success of a hypothesis is empirical tests.[7] To use an example from Milton Friedman, if a theory that says that the behavior of the leaves of a tree is explained by their rationality passes the empirical test, it is seen as successful.

Without explicitly dictating the goal or preferences of the individual, it may be impossible to empirically test or invalidate the rationality assumption. However, the predictions made by a specific version of the theory are testable. In recent years, the most prevalent version of rational choice theory, expected utility theory, has been challenged by the experimental results of behavioral economics. Economists are learning from other fields, such as psychology, and are enriching their theories of choice in order to get a more accurate view of human decision-making. For example, the behavioral economist and experimental psychologist Daniel Kahneman won the Nobel Memorial Prize in Economic Sciences in 2002 for his work in this field.


William Stanley Jevons
Rational choice theory has proposed that there are two outcomes of two choices regarding human action. Firstly, the feasible region will be chosen within all the possible and related action. Second, after the preferred option has been chosen, the feasible region that has been selected was picked based on restriction of financial, legal, social, physical or emotional restrictions that the agent is facing. After that, a choice will be made based on the preference order. [8]

The concept of rationality used in rational choice theory is different from the colloquial and most philosophical use of the word. In this sense, "rational" behaviour can refer to "sensible", "predictable", or "in a thoughtful, clear-headed manner." Rational choice theory uses a much more narrow definition of rationality. At its most basic level, behavior is rational if it is goal-oriented, reflective (evaluative), and consistent (across time and different choice situations). This contrasts with behavior that is random, impulsive, conditioned, or adopted by (unevaluative) imitation.[citation needed]

Early neoclassical economists writing about rational choice, including William Stanley Jevons, assumed that agents make consumption choices so as to maximize their happiness, or utility. Contemporary theory bases rational choice on a set of choice axioms that need to be satisfied, and typically does not specify where the goal (preferences, desires) comes from. It mandates just a consistent ranking of the alternatives.[9]:501 Individuals choose the best action according to their personal preferences and the constraints facing them. E.g., there is nothing irrational in preferring fish to meat the first time, but there is something irrational in preferring fish to meat in one instant and preferring meat to fish in another, without anything else having changed.

Actions, assumptions, and individual preferences
The basic premise of rational choice theory is that the decisions made by individual actors will collectively produce aggregate social behaviour. Thus, each individual makes a decision based on their own preferences and the constraints (or choice set) they face.

Rational choice theory can be viewed in different contexts. At an individual level, the theory suggests that the agent will decide on the action (or outcome) they most prefer. If the actions (or outcomes) are evaluated in terms of costs and benefits, the choice with the maximum net benefit will be chosen will be chosen by the rational individual. Rational behaviour is not driven by monetary gain, but can also be driven by emotional motives.

Part of a series on
Utilitarianism
Predecessors
Key proponents
Types of utilitarianism
Key concepts
Problems
Related topics
Philosophy portal
vte
The theory can be applied to general settings outside of those identified by costs and benefits. In general, rational decision making entails choosing among all available alternatives the alternative that the individual most prefers. The "alternatives" can be a set of actions ("what to do?") or a set of objects ("what to choose/buy"). In the case of actions, what the individual really cares about are the outcomes that results from each possible action. Actions, in this case, are only an instrument for obtaining a particular outcome.

Formal statement
The available alternatives are often expressed as a set of objects, for example a set of j exhaustive and exclusive actions:

{\displaystyle A=\{a_{1},\ldots ,a_{i},\ldots ,a_{j}\}}A=\{a_{1},\ldots ,a_{i},\ldots ,a_{j}\}
For example, if a person can choose to vote for either Roger or Sara or to abstain, their set of possible alternatives is:

{\displaystyle A=\{{\text{Vote for Roger, Vote for Sara, Abstain}}\}}A=\{{\text{Vote for Roger, Vote for Sara, Abstain}}\}



Ultimatum game
https://en.wikipedia.org/wiki/Ultimatum_game#Equilibrium_analysis
The ultimatum game is a game that has become a popular instrument of economic experiments. An early description is by Nobel laureate John Harsanyi in 1961.[1] One player, the proposer, is endowed with a sum of money. The proposer is tasked with splitting it with another player, the responder. Once the proposer communicates his decision, the responder may accept it or reject it. If the responder accepts, the money is split per the proposal; if the responder rejects, both players receive nothing. Both players know in advance the consequences of the responder accepting or rejecting the offer.

Explanations
The highly mixed results, along with similar results in the dictator game, have been taken as both evidence for and against the Homo economicus assumptions of rational, utility-maximizing, individual decisions. Since an individual who rejects a positive offer is choosing to get nothing rather than something, that individual must not be acting solely to maximize their economic gain, unless one incorporates economic applications of social, psychological, and methodological factors (such as the observer effect).[citation needed] Several attempts have been made to explain this behavior. Some suggest that individuals are maximizing their expected utility, but money does not translate directly into expected utility.[14][15] Perhaps individuals get some psychological benefit from engaging in punishment or receive some psychological harm from accepting a low offer. It could also be the case that the second player, by having the power to reject the offer, uses such power as leverage against the first player, thus motivating them to be fair.[16]

The classical explanation of the ultimatum game as a well-formed experiment approximating general behaviour often leads to a conclusion that the rational behavior in assumption is accurate to a degree, but must encompass additional vectors of decision making.[17] Behavioral economic and psychological accounts suggest that second players who reject offers less than 50% of the amount at stake do so for one of two reasons. An altruistic punishment account suggests that rejections occur out of altruism: people reject unfair offers to teach the first player a lesson and thereby reduce the likelihood that the player will make an unfair offer in the future. Thus, rejections are made to benefit the second player in the future, or other people in the future. By contrast, a self-control account suggests that rejections constitute a failure to inhibit a desire to punish the first player for making an unfair offer. Morewedge, Krishnamurti, and Ariely (2014) found that intoxicated participants were more likely to reject unfair offers than sober participants.[18] As intoxication tends to exacerbate decision makers' prepotent response, this result provides support for the self-control account, rather than the altruistic punishment account. Other research from social cognitive neuroscience supports this finding.[19]

However, several competing models suggest ways to bring the cultural preferences of the players within the optimized utility function of the players in such a way as to preserve the utility maximizing agent as a feature of microeconomics. For example, researchers have found that Mongolian proposers tend to offer even splits despite knowing that very unequal splits are almost always accepted.[20] Similar results from other small-scale societies players have led some researchers to conclude that "reputation" is seen as more important than any economic reward.[21][20] Others have proposed the social status of the responder may be part of the payoff.[22][23] Another way of integrating the conclusion with utility maximization is some form of inequity aversion model (preference for fairness). Even in anonymous one-shot settings, the economic-theory suggested outcome of minimum money transfer and acceptance is rejected by over 80% of the players.[24]

An explanation which was originally quite popular was the "learning" model, in which it was hypothesized that proposers’ offers would decay towards the sub game perfect Nash equilibrium (almost zero) as they mastered the strategy of the game; this decay tends to be seen in other iterated games.[citation needed] However, this explanation (bounded rationality) is less commonly offered now, in light of subsequent empirical evidence.[25]

It has been hypothesized (e.g. by James Surowiecki) that very unequal allocations are rejected only because the absolute amount of the offer is low.[26] The concept here is that if the amount to be split were ten million dollars a 90:10 split would probably be accepted rather than spurning a million-dollar offer. Essentially, this explanation says that the absolute amount of the endowment is not significant enough to produce strategically optimal behaviour. However, many experiments have been performed where the amount offered was substantial: studies by Cameron and Hoffman et al. have found that higher stakes cause offers to approach closer to an even split, even in a US$100 game played in Indonesia, where average per-capita income is much lower than in the United States. Rejections are reportedly independent of the stakes at this level, with US$30 offers being turned down in Indonesia, as in the United States, even though this equates to two weeks' wages in Indonesia. However, 2011 research with stakes of up to 40 weeks' wages in India showed that "as stakes increase, rejection rates approach zero".[27]

Neurological explanations
Generous offers in the ultimatum game (offers exceeding the minimum acceptable offer) are commonly made. Zak, Stanton & Ahmadi (2007) showed that two factors can explain generous offers: empathy and perspective taking.[28][29] They varied empathy by infusing participants with intranasal oxytocin or placebo (blinded). They affected perspective-taking by asking participants to make choices as both player 1 and player 2 in the ultimatum game, with later random assignment to one of these. Oxytocin increased generous offers by 80% relative to placebo. Oxytocin did not affect the minimum acceptance threshold or offers in the dictator game (meant to measure altruism). This indicates that emotions drive generosity.

Rejections in the ultimatum game have been shown to be caused by adverse physiologic reactions to stingy offers.[30] In a brain imaging experiment by Sanfey et al., stingy offers (relative to fair and hyperfair offers) differentially activated several brain areas, especially the anterior insular cortex, a region associated with visceral disgust. If Player 1 in the ultimatum game anticipates this response to a stingy offer, they may be more generous.

An increase in rational decisions in the game has been found among experienced Buddhist meditators. fMRI data show that meditators recruit the posterior insular cortex (associated with interoception) during unfair offers and show reduced activity in the anterior insular cortex compared to controls.[31]

People whose serotonin levels have been artificially lowered will reject unfair offers more often than players with normal serotonin levels.[32]

People who have ventromedial frontal cortex lesions were found to be more likely to reject unfair offers.[33] This was suggested to be due to the abstractness and delay of the reward, rather than an increased emotional response to the unfairness of the offer.[34]

Evolutionary game theory
Other authors have used evolutionary game theory to explain behavior in the ultimatum game.[35][36][37][38][39] Simple evolutionary models, e.g. the replicator dynamics, cannot account for the evolution of fair proposals or for rejections.[citation needed] These authors have attempted to provide increasingly complex models to explain fair behavior.

Sociological applications
The ultimatum game is important from a sociological perspective, because it illustrates the human unwillingness to accept injustice. The tendency to refuse small offers may also be seen as relevant to the concept of honour.

The extent to which people are willing to tolerate different distributions of the reward from "cooperative" ventures results in inequality that is, measurably, exponential across the strata of management within large corporations. See also: Inequity aversion within companies.

Some see the implications of the ultimatum game as profoundly relevant to the relationship between society and the free market, with P. J. Hill saying:

I see the [ultimatum] game as simply providing counter evidence to the general presumption that participation in a market economy (capitalism) makes a person more selfish.[40]
History
An early description of the ultimatum game is by Nobel laureate John Harsanyi in 1961, who footnotes Thomas Schelling's 1960 book, The Strategy of Conflict on its solution by dominance methods. Harsanyi says,[41]

"An important application of this principle is to ultimatum games, i.e., to bargaining games where one of the players can firmly commit himself in advance under a heavy penalty that he will insist under all conditions upon a certain specified demand (which is called his ultimatum).... Consequently, it will be rational for the first player to commit himself to his maximum demand, i.e., to the most extreme admissible demand he can make."
Josh Clark attributes modern interest in the game to Ariel Rubinstein,[42] but the best-known article is the 1982 experimental analysis of Güth, Schmittberger, and Schwarze.[43] Results from testing the ultimatum game challenged the traditional economic principle that consumers are rational and utility-maximising.[44] This started a variety of research into the psychology of humans.[45] Since the ultimatum game's development, it has become a popular economic experiment, and was said to be "quickly catching up with the Prisoner's Dilemma as a prime showpiece of apparently irrational behavior" in a paper by Martin Nowak, Karen M. Page, and Karl Sigmund.[38]

Variants
In the "competitive ultimatum game" there are many proposers and the responder can accept at most one of their offers: With more than three (naïve) proposers the responder is usually offered almost the entire endowment[46] (which would be the Nash Equilibrium assuming no collusion among proposers).

In the "ultimatum game with tipping", a tip is allowed from responder back to proposer, a feature of the trust game, and net splits tend to be more equitable.[47]

The "reverse ultimatum game" gives more power to the responder by giving the proposer the right to offer as many divisions of the endowment as they like. Now the game only ends when the responder accepts an offer or abandons the game, and therefore the proposer tends to receive slightly less than half of the initial endowment.[48]

Incomplete information ultimatum games: Some authors have studied variants of the ultimatum game in which either the proposer or the responder has private information about the size of the pie to be divided.[49][50] These experiments connect the ultimatum game to principal-agent problems studied in contract theory.

The pirate game illustrates a variant with more than two participants with voting power, as illustrated in Ian Stewart's "A Puzzle for Pirates".[51]





Post-scarcity economy
https://en.wikipedia.org/wiki/Post-scarcity_economy#Models
Post-scarcity is a theoretical economic situation in which most goods can be produced in great abundance with minimal human labor needed, so that they become available to all very cheaply or even freely.[1][2] Post-scarcity does not mean that scarcity has been eliminated for all goods and services, but that all people can easily have their basic survival needs met along with some significant proportion of their desires for goods and services.[3] Writers on the topic often emphasize that some commodities will remain scarce in a post-scarcity society.[4][5][6][7]

In the paper "The Post-Scarcity World of 2050–2075"[8] the authors assert that the current age is one of scarcity resulting from negligent behavior (as regards the future) of the 19th and 20th centuries. The period between 1975 and 2005 was characterized by relative abundance of resources (oil, water, energy, food, credit, among others) which boosted industrialization and development in the Western economies. An increased demand of resources combined with a rising population led to resource exhaustion.[8] In part, the ideas developed about post-scarcity are motivated by analyses that posit that capitalism leverages scarcity.

One of the main traces of the scarcity periods is the increase and fluctuation of prices. To deal with that situation, advances in technology come into play, driving an efficient use of resources to a certain extent that costs will be considerably reduced (almost everything will be free). Consequently, the authors claim that the period between 2050 and 2075 will be a post-scarcity age in which scarcity will no longer exist.[8]





Post-Scarcity Anarchism
Main article: Post-Scarcity Anarchism
Murray Bookchin, in his 1971 essay collection Post-Scarcity Anarchism, outlines an economy based on social ecology, libertarian municipalism, and an abundance of fundamental resources, arguing that post-industrial societies have the potential to be developed into post-scarcity societies. For Bookchin, such development would enable "the fulfillment of the social and cultural potentialities latent in a technology of abundance".[32]

Bookchin claims that the expanded production made possible by the technological advances of the twentieth century were in the pursuit of market profit and at the expense of the needs of humans and of ecological sustainability. The accumulation of capital can no longer be considered a prerequisite for liberation, and the notion that obstructions such as the state, social hierarchy, and vanguard political parties are necessary in the struggle for freedom of the working classes can be dispelled as a myth.[33]



Post-Scarcity Anarchism
https://en.wikipedia.org/wiki/Post-Scarcity_Anarchism

Summary
Bookchin's "post-scarcity anarchism" is an economic system based on social ecology, libertarian municipalism, and an abundance of fundamental resources. Bookchin argues that post-industrial societies have the potential to be developed into post-scarcity societies, and can thus imagine "the fulfillment of the social and cultural potentialities latent in a technology of abundance".[3] The self-administration of society is now made possible by technological advancement and, when technology is used in an ecologically sensitive manner, the revolutionary potential of society will be much changed.[4]

Bookchin claims that the expanded production made possible by the technological advances of the twentieth century were in the pursuit of market profit and at the expense of the needs of humans and of ecological sustainability. The accumulation of capital can no longer be considered a prerequisite for liberation, and the notion that obstructions such as the state, social hierarchy, and vanguard political parties are necessary in the struggle for freedom of the working classes can be dispelled as a myth.

Reception
Bookchin's thesis has been seen as a form of anarchism more radical than that of Noam Chomsky; while both concur that information technology, being controlled by the bourgeoisie, is not necessarily liberatory, Bookchin does not refrain from countering this control by developing new, innovative and radical technologies of the self.[3] Postanarchist scholar Lewis Call compares Bookchin's language to that of Marcel Mauss, Georges Bataille and Herbert Marcuse, and notes that Bookchin anticipates the importance of cybernetic technology to the development of human potential over a decade before the origin of cyberpunk.[3] The collection has been cited favourably by Marius de Geus as presenting "inspiring sketches" of the future,[5] and as "an insightful analysis" and "a discussion of revolutionary potential in a technological society" by Peggy Kornegger in her essay "Anarchism: The Feminist Connection".[6]





Peggy Kornegger
Anarchism: The Feminist Connection
http://theanarchistlibrary.org/library/peggy-kornegger-anarchism-the-feminist-connection

What Does Anarchism Really Mean?

Beyond Theory — Spain 1936–39, France 1968

Anarchism and the Women’s Movement

Where Do We Go From Here? Making Utopia Real

The Transformation of the Future

Eleven years ago, when I was in a small-town Illinois high school, I had never heard of the word “anarchism” — at all. The closest I came to it was knowing that anarchy meant “chaos”. As for socialism and communism, my history classes somehow conveyed the message that there was no difference between them and fascism, a word that brought to mind Hitler, concentration camps, and all kinds of horrible things which never happened in a free country like ours. I was subtly being taught to swallow the bland pablum of traditional American politics: moderation, compromise, fence-straddling, Chuck Percy as wonder boy. I learned the lesson well: it took me years to recognize the bias and distortion which had shaped my entire “education”. The “his-story” of mankind (white) had meant just that; as a woman I was relegated to a vicarious existence. As an anarchist I had no existence at all. A whole chunk of the past (and thus possibilities for the future) had been kept from me. Only recently did I discover that many of my disconnected political impulses and inclinations shared a common framework — that is, the anarchist or libertarian tradition of thought. I was like suddenly seeing red after years of colourblind grays.

Emma Goldman furnished me with my first definition of anarchism:

Anarchism, then really stands for the liberation of the human mind from the dominion of religion; the liberation of the human body from the dominion of property; liberation from the shackles and restraint of government. Anarchism stands for a social order based on the free grouping of individuals for the purpose of producing real social wealth, an order that will guarantee to every human being free access to the earth and full enjoyment of the necessities of life, according to individual desires, tastes, and inclinations.[1]

Soon, I started making mental connections between anarchism and radical feminism. It became very important to me to write down some of the perceptions in this area as a way of communicating to others the excitement I felt about anarca-feminism. It seems crucial that we share our visions with one another in order to break down some of the barriers that misunderstanding and splinterism raise between us. Although I call myself an anarca-feminist, this definition can easily include socialism, communism, cultural feminism, lesbian separatism, or any of a dozen other political labels. As Su Negrin writes: “No political umbrella can cover all my needs.”[2] We may have more in common than we think we do. While I am writing here about my own reactions and perceptions, I don’t see either my life or thoughts as separate from those of other women. In fact, one of my strongest convictions regarding the Women’s Movement is that we do share an incredible commonality of vision. My own participation in this vision is not to offer definitive statements or rigid answers but rather possibilities and changeable connections which I hope will bounce around among us and contribute to a continual process of individual and collective growth and evolution/revolution.

What Does Anarchism Really Mean?
Anarchism has been maligned and misinterpreted for so long that maybe the most important thing to begin with is an explanation of what it is and isn’t. Probably the most prevalent stereotype of the anarchist is a malevolent-looking man hiding a lighted bomb beneath a black cape, ready to destroy or assassinate everything and everybody in his path. This image engenders fear and revulsion in most people, regardless of their politics; consequently, anarchism is dismissed as ugly, violent, and extreme. Another misconception is the anarchist as impractical idealist, dealing in useless, Utopian abstractions and out of touch with concrete reality. The result: anarchism is once again dismissed, this time as an “impossible dream”.

Neither of these images is accurate (though there have been both anarchist assassins and idealists — as is the case in many political movements, left and right). What is accurate depends, of course, on one’s frame of reference. There are different kinds of anarchist, just as there are different kinds of socialists. What I will talk about here is communist anarchism, which I see as virtually identical to libertarian (i.e. nonauthoritarian) socialism. Labels can be terribly confusing, so in hopes of clarifying the term, I’ll define anarchism using three major principles (each of which I believe is related to a radical feminist analysis of society — more on that later):

Belief in the abolition of authority, hierarchy, government. Anarchists call for the dissolution (rather than the seizure) of power — of human over human, of state over community. Whereas many socialists call for a working class government and an eventual “withering away of the state”, anarchist believe that the means create the ends, that a strong State becomes self-perpetuating. The only way to achieve anarchism (according to anarchist theory) is through the creation of co-operative, anti-authoritarian forms. To separate the process from the goals of revolution is to insure the perpetuation of oppressive structure and style.

Belief in both individuality and collectivity. Individuality is not incompatible with communist thought. A distinction must be made though, between “rugged individualism”, which fosters competition and a disregard for the needs of others, and true individuality, which implies freedom without infringement on others’ freedom. Specifically, in terms of social and political organization, this meant balancing individual initiative with collective action through the creation of structures which enable decision-making to rest in the hands of all those in a group, community, or factory, not in the hands of “representatives” or “leaders”. It means coordination and action via a non-hierarchical network (overlapping circles rather than a pyramid) of small groups or communities. (See descriptions of Spanish anarchist collectives in next section.) Finally, it means that successful revolution involves unmanipulated, autonomous individuals and groups working together to take “direct, unmediated control of society and of their own lives”.[3]

Belief in both spontaneity and organization. Anarchists have long been accused of advocating chaos. Most people in fact believe that anarchism is a synonym for disorder, contusion, violence. This is a total misrepresentation of what anarchism stands for. Anarchists don’t deny the necessity of organization; they only claim that it must come from below, not above, from within rather than from without. Externally imposed structure or rigid rules which foster manipulation and passivity are the most dangerous forms a socialist “revolution” can take. No one can dictate the exact shape of the future. Spontaneous action within the context of a specific situation is necessary if we are going to create a society which responds to the changing needs of individuals and groups. Anarchists believe in fluid forms: small-scale participatory democracy in conjunction with large-scale collective cooperation and coordination (without loss of individual initiative).

So anarchism sounds great, but how could it possibly work? That kind of Utopian romanticism couldn’t have any relation to the real world... right? Wrong. Anarchists have actually been successful (if only temporarily) in a number of instances (none of which is very well known). Spain and France, in particular, have long histories of anarchist activity, and it was in these two countries that I found the most exciting concretisations of theoretical anarchism.

Beyond Theory — Spain 1936–39, France 1968
The revolution is a thing of the people, a popular creation; the counter-revolution is a thing of the State. It has always been so, and must always be so, whether in Russia, Spain, or China.[4]

— Anarchist Federation of Iberia (FAI), Tierra y Libertad, July 3, 1936

The so-called Spanish Civil War is popularly believed to have been a simple battle between Franco’s fascist forces and those committed to liberal democracy. What has been overlooked, or ignored, is that much more was happening in Spain than civil war. A broadly-based social revolution adhering to anarchist principles was taking firm, concrete form in many areas of the country. The gradual curtailment and eventual destruction of this libertarian movement is less important to discuss here than what was actually achieved by the women and men who were part of it. Against tremendous odds, they made anarchism work.

The realization of anarchist collectivisation and workers’ self-management during the Spanish Revolution provides a classic example of organization-plus-spontaneity. In both rural and industrial Spain, anarchism had been a part of the popular consciousness for many years. In the countryside, the people had a long tradition of communalism; many villages still shared common property or gave plots of land to those without any. Decades of rural collectivism and cooperation laid the foundation for theoretical anarchism, which came to Spain in the 1870s (via the Italian revolutionary, Fanelli, a friend of Bakunin) and eventually gave rise to anarco-syndicalism, the application of anarchist principles to industrial trade unionism. The Confederacion National del Trebajo, founded in 1910, was the anarco-syndicalist union (working closely with the militant Federacion Anarquista Iberica) which provided instruction and preparation for workers’ self-management and collectivization. Tens of thousands of books, newspapers, and pamphlets reaching almost every part of Spain contributed to an even greater general knowledge of anarchist thought[5]. The anarchist principles of non-hierarchical cooperation and individual initiative combined with anarco-syndicalist tactics of sabotage, boycott and general strike, and training in production and economics, gave the workers background in both theory and practice. This led to a successful spontaneous appropriation of both factories and land after July 1936.

When the Spanish right responded to the electoral victory of the Popular Front with an attempted military takeover, on July 19, 1936, the people fought back with a fury which checked the coup within 24 hours. At this point, ballot box success became incidental; total social revolution had begun. While the industrial workers either went on strike or actually began to run the factories themselves, the agricultural workers ignored landlords and started to cultivate the land on their own. Within a short time, over 60% of the land in Spain was worked collectively — without landlords, bosses, or competitive incentive. Industrial collectivization took place mainly in the province of Catalonia, where anarco-syndicalist influence was strongest. Since 75% of Spain’s industry was located in Catalonia, this was no small achievement[6]. So, after 75 years of preparation and struggle, collectivization was achieved, through the spontaneous collective action of individuals dedicated to libertarian principles.

What, though, did collectivization actually mean, and how did it work? In general, the anarchist collectives functioned on two levels: (1) small-scale participatory democracy and (2) large-scale coordination with control at the bottom. At each level, the main concern was decentralization and individual initiative. In the factories and villages, representatives were chosen to councils which operated as administrative or coordinating bodies. Decisions always came from more general membership meetings, which all workers attended. To guard against the dangers of representation, representatives were workers themselves, and at all times subject to immediate, as well as periodic, replacement. These councils or committees were the basic units of self-management. From there, they could be expanded by further coordination into loose federations which would link together workers and operations over an entire industry or geographical area. In this way, distribution and sharing of goods could be performed, as well as implementation of programs of wide-spread concern, such as irrigation, transportation, and communication. Once again, the emphasis was on the bottom-to-top process. This very tricky balance between individuality and collectivism was most successfully accomplished by the Peasant Federation of Levant, which included 900 collectives, and the Aragon Federation of Collectives, composed of about 500 collectives.

Probably the most important aspect of self-management was the equalization of wages. This took many forms, but frequently the “family wage” system was used, wages being paid to each worker in money or coupons according to her/his needs and those of dependants. Goods in abundance were distributed freely, while others were obtainable with “money”.

The benefits which came from wage equalization were tremendous. After huge profits in the hands of a few men were eliminated, the excess money was used both to modernize industry (purchase of new equipment, better working conditions) and to improve the land (irrigation, dams, purchase of tractors, etc.). Not only were better products turned out more efficiently, but consumer prices were lowered as well. This was true in such varied industries as: textiles, metal and munitions, gas, water, electricity, baking, fishing, municipal transportation, railroads, telephone services, optical products, health services, etc. The workers themselves benefited from a shortened work week, better working conditions, free health care, unemployment pay, and a new pride in their work. Creativity was fostered by self-management and the spirit of mutual aid; workers were concerned with turning out products which were better than those turned out under conditions of labour exploitation. They wanted to demonstrate that socialism works, that competition and greed motives are unnecessary. Within months, the standard of living had been raised by anywhere from 50–100% in many areas of Spain.

The achievements of the Spanish anarchists go beyond a higher standard of living and economic equality; they involve the realization of basic human ideals: freedom, individual creativity, and collective cooperation. The Spanish anarchist collectives did not fail; they were destroyed from without. Those (of the right and left) who believed in a strong State worked to wipe them out — of Spain and history. The successful anarchism of roughly eight million Spanish people is only now beginning to be uncovered.

C’est pour toi que tu fais la revolution.[7]

(“It is for yourself that you make the revolution.”)

— Daniel and Gabriel Cohn-Bendit

Anarchism has played an important part in French history, but rather than delve into the past, I want to focus on a contemporary event — May-June, 1968. The May-June events have particular significance because they proved that a general strike and takeover of the factories by the workers, and the universities by the students, could happen in a modern, capitalistic, consumption-oriented country. In addition, the issues raised by the students and workers in France (e.g. self-determination, the quality of life) cut across class lines and have tremendous implications for the possibility of revolutionary change in a post-scarcity society.[8]

On March 22, 1968, students at the University of Nanterre, among them anarchist Daniel Cohn-Bendit, occupied administrative buildings at their school, calling for an end to both the Vietnam war and their own oppression as students. (Their demands were similar in content to those of students from Columbia to Berlin protesting in loco parentis.) The University was closed down, and the demonstrations spread to the Sorbonne. The SNESUP (the union of secondary school and university teachers) called for a strike, and the students’ union, the UNEF, organized a demonstration for May 6. That day, students and police clashed in the Latin Quarter in Paris; the demonstrators built barricades in the streets, and many were brutally beaten by the riot police. By the 7th, the number of protesters had grown to between twenty and fifty thousand people, marching toward the Etoile singing the Internationale. During the next few days, skirmishes between demonstrators and police in the Latin Quarter became increasingly violent, and the public was generally outraged at the police repression. Talks between labour unions and teachers’ and students’ unions began, and the UNEF and the FEN (a teachers’ union) called for an unlimited strike and demonstration. On May 13, around six hundred thousand people — students, teachers, and workers — marched through Paris in protest.

On the same day, the workers at the Sud-Aviation plant in Nantes (a city with the strongest anarco-syndicalist tendencies in France[9]) went out on strike. It was this action that touched off the general strike, the largest in history, including ten million workers — “professionals and labourers, intellectuals and football players.”[10] Banks, post offices, gas stations, and department stores closed; the subway and busses stopped running; and trash piled up as the garbage collectors joined the strike. The Sorbonne was occupied by students, teachers, and anyone who wanted to come and participate in discussions there. Political dialogues which questioned the vary basis of French capitalist society went on for days. All over Paris posters and graffiti appeared: It is forbidden to forbid. Life without dead times. All power to the Imagination. The more you consume, the less you live. May-June became both an “assault on the established order” and a “festival of the streets”.[11] Old lines between the middle and working classes often became meaningless as the younger workers and the students found themselves making similar demands: liberation from an oppressive authoritarian system (university or factory) and the right to make decisions about their own lives.

The people of France stood at the brink of total revolution. A general strike had paralysed the country. The students occupied the universities and the workers, the factories. What remained to be done was for the workers actually to work the factories, to take direct unmediated action and settle for nothing less than total self-management. Unfortunately, this did not occur. Authoritarian politics and bureaucratic methods die hard, and most of the major French workers’ unions were saddled with both. As in Spain, the Communist Party worked against the direct, spontaneous actions of the people in the streets: the Revolution must be dictated from above. Leaders of the CGT (the Communist workers’ union) tried to prevent contacts between the students and workers, and a united left soon became an impossibility. As de Gaulle and the police mobilized their forces and even greater violence broke out, many strikers accepted limited demands (better pay, shorter hours, etc.) and returned to work. Students continued their increasingly bloody confrontations with police, but the moment had passed. By the end of June, France had returned to “normality” under the same old Gaullist regime.

What happened in France in 1968 is vitally connected to the Spanish Revolution of 1936; in both cases anarchist principles were not only discussed but implemented. The fact that the French workers never did achieve working self-management may be because anarco-syndicalism was not as prevalent in France in the years prior to 1968 as it was in Spain before 1936. Of course, this is an over-simplification; explanation for a “failed” revolution can run on into infinity. What is crucial here, once again, is the fact that it happened at all. May-June, 1968, disproves the common belief that revolution is impossible in an advanced capitalist country. The children of the French middle and working classes, bred to passivity, mindless consumerism, and/or alienated labor, were rejecting much more than capitalism. They were questioning authority itself, demanding the right to a free and meaningful existence. The reasons for revolution in modern industrial society are thus no longer limited to hunger and material scarcity; they include the desire for human liberation from all forms of domination, in essence a radical change in the very “quality of everyday life”.[12] They assume the necessity of a libertarian society. Anarchism can no longer be considered an anachronism.

It is often said that anarchists live in a world of dreams to come and do not see things which happen today. We see them only too well, and in their true colors, and that is what makes us carry the hatchet into the forest of prejudices that besets us.[13]

— Peter Kropotkin

There are two main reasons why revolution was aborted in France: (1) inadequate preparation in the theory and practice of anarchism and (2) the vast power of the State coupled with authoritarianism and bureaucracy in potentially sympathetic left-wing groups. In Spain, the revolution was more widespread and tenacious because of the extensive preparation. Yet it was still eventually crushed by a fascist State and authoritarian leftists. It is important to consider these two factors in relation to the situation in the United States today. We are not only facing a powerful State whose armed forces, police, and nuclear weapons could instantly destroy the entire human race, but we also find ourselves confronting a pervasive reverence for authority and hierarchical forms whose continuance is ensured daily through the kind of home-grown passivity bred by family, school, church, and TV screen. In addition, the U.S. is a huge country, with only a small, sporadic history of anarchist activity. It would seem that not only are we unprepared, we are literally dwarfed by a State more powerful than those of France and Spain combined. To say we are up against tremendous odds is an understatement.

But where does defining the Enemy as a ruthless, unconquerable giant lead us? If we don’t allow ourselves to be paralysed by fatalism and futility, it could force us to redefine revolution in a way that would focus on anarca-feminism as the framework in which to view the struggle for human liberation. It is women who now hold the key to new conceptions of revolution, women who realize that revolution can no longer mean the seizure of power or the domination of one group by another — under any circumstances, for any length of time. It is domination itself that must be abolished. The very survival of the planet depends on it. Men can no longer be allowed to wantonly manipulate the environment for their own self-interest, just as they can no longer be allowed to systematically destroy whole races of human beings. The presence of hierarchy and authoritarian mind-set threaten out human and planetary existence. Global liberation and libertarian politics have become necessary, not just utopian pipe dreams. We must “acquire the conditions of life in order to survive”.[14]

To focus on anarca-feminism as the necessary revolutionary framework for our struggle is not to deny the immensity of the task before us. We do see “only too well” the root causes of our oppression and the tremendous power of the Enemy. But we also see that the way out of the deadly historical cycle of incomplete or aborted revolutions requires of us new definitions and new tactics — ones which point to the kind of “hollowing out”[15] process described later in the “Making Utopia Real” section. As women, we are particularly well-suited for participation in this process. Underground for ages, we have learned to be covert, subtle, sly, silent, tenacious, acutely sensitive, and expert at communication skills.

For our own survival, we learned to weave webs of rebellion which were invisible to the “masterful” eye.

We know what a boot looks like

when seen from underneath,

we know the philosophy of boots...

Soon we will invade like weeds,

everywhere but slowly;

the captive plants will rebel

with us, fences will topple,

brick walls ripple and fall,

there will be no more boots.

Meanwhile we eat dirt

and sleep; we are waiting

under your feet.

When we say Attack

you will hear nothing

at first.[16]

Anarchistic preparation is not non-existent in this country. It exists in the minds and actions of women readying themselves (often unknowingly) for a revolution whose forms will shatter historical inevitability and the very process of history itself.

Anarchism and the Women’s Movement
The development of sisterhood is a unique threat, for it is directed against the basic social and psychic model of hierarchy and domination...[17]

— Mary Daly

All across the country, independent groups of women began functioning without the structure, leaders, and other factotums of the male left, creating independently and simultaneously, organizations similar to those of anarchists of many decades and locales. No accident, either.[18]

— Cathy Levine

I have not touched upon the matter of woman’s role in Spain and France, as it can be summed up in one word — unchanged. Anarchist men have been little better than males everywhere in their subjection of women.[19] Thus the absolute necessity of a feminist anarchist revolution. Otherwise the very principles on which anarchism is based become utter hypocrisy.

The current women’s movement and a radical feminist analysis of society have contributed much to libertarian thought, In fact, it is my contention that feminists have been unconscious anarchists in both theory and practice for years. We now need to become consciously aware of the connections between anarchism and feminism and use that framework for our thoughts and actions. We have to be able to see very clearly where we want to go and how to get there. In order to be more effective, in order to create the future we sense is possible, we must realise that what we want is not change but total transformation.

The radical feminist perspective is almost pure anarchism. The basic theory postulates the nuclear family as the basis for all authoritarian systems. The lesson the child learns, from father to teacher to boss to God, is to OBEY the great anonymous voice of Authority. To graduate from childhood to adulthood is to become a full-fledged automaton, incapable of questioning or even thinking clearly. We pass into middle-America, believing everything we are told and numbly accepting the destruction of life all around us.

What feminists are dealing with is a mind-fucking process — the male domineering attitude toward the external world, allowing only subject/object relationships. Traditional male politics reduces humans to object status and then dominates and manipulates them for abstract “goals”. Women, on the other hand, are trying to develop a consciousness of “Other” in all areas. We see subject-to-subject relationships as not only desirable but necessary. (Many of us have chosen to work with and love only women for just this reason — those kinds of relationships are so much more possible.) Together we are working to expand our empathy and understanding of other living things and to identify with those entities outside of ourselves, rather than objectifying and manipulating them. At this point, a respect for all life is a prerequisite for our very survival.

Radical feminist theory also criticizes male hierarchical thought patterns — in which rationality dominates sensuality, mind dominates intuition, and persistent splits and polarities (active/passive, child/adult, sane/insane, work/play, spontaneity/organization) alienate us from the mind-body experience as a Whole and from the Continuum of human experience. Women are attempting to get rid of these splits, to live in harmony with the universe as whole, integrated humans dedicated to the collective healing of our individual wounds and schisms.

In actual practice within the Women’s Movement, feminists have had both success and failure in abolishing hierarchy and domination. I believe that women frequently speak and act as “intuitive” anarchists, that is, we approach, or verge on, a complete denial of all patriarchal thought and organization. That approach, however, is blocked by the powerful and insidious forms which patriarchy takes — in our minds and in our relationships with one another. Living within and being conditioned by an authoritarian society often prevents us from making that all-important connection between feminism and anarchism. When we say we are fighting the patriarchy, it isn’t always clear to all of us that that means fighting all hierarchy, all leadership, all government, and the very idea of authority itself. Our impulses toward collective work and small leaderless groups have been anarchistic, but in most cases we haven’t called them by that name. And that is important, because an understanding of feminism as anarchism could springboard women out of reformism and stop-gap measures into a revolutionary confrontation with the basic nature of authoritarian politics.

If we want to “bring down the patriarchy”, we need to talk about anarchism, to know exactly what it means, and to use that framework to transform ourselves and the structure of our daily lives. Feminism doesn’t mean female corporate power or a woman President; it means no corporate power and no Presidents. The Equal Rights Amendment will not transform society; it only gives women the “right” to plug into a hierarchical economy. Challenging sexism means challenging all hierarchy — economic, political, and personal. And that means an anarca-feminist revolution.

Specifically, when have feminists been anarchistic, and when have we stopped short? As the second wave of feminism spread across the country in the late 60s, the forms which women’s groups took frequently reflected an unspoken libertarian consciousness. In rebellion against the competitive power games, impersonal hierarchy, and mass organization tactics of male politics, women broke off into small, leaderless, consciousness-raising groups, which dealt with personal issues in our daily lives. Face-to-face, we attempted to get at the root cause of our oppression by sharing our hitherto unvalued perceptions and experiences. We learned from each other that politics is not “out there” but in our minds and bodies and between individuals. Personal relationships could and did oppress us as a political class. Our misery and self-hatred were a direct result of male domination — in home, street, job, and political organization.

So, in many unconnected areas of the U.S., C-R groups developed as a spontaneous, direct (re)action to patriarchal forms. The emphasis on the small group as a basic organizational unit, on the personal and political, on anti-authoritarianism, and on spontaneous direct action was essentially anarchistic. But, where were the years and years of preparation which sparked the Spanish revolutionary activities? The structure of women’s groups bore a striking resemblance to that of anarchist affinity groups within anarco-syndicalist unions in Spain, France, and many other countries. Yet, we had not called ourselves anarchists and consciously organized around anarchist principles. At the time, we did not even have an underground network of communication and idea-and-skill sharing. Before the women’s movement was more than a handful of isolated groups groping in the dark toward answers, anarchism as an unspecified ideal existed in our minds.

I believe that this puts women in the unique position of being the bearers of a subsurface anarchist consciousness which, if articulated and concretized can take us further than any previous group toward the achievement of total revolution. Women’s intuitive anarchism, if sharpened and clarified, is an incredible leap forward (or beyond) in the struggle for human liberation. Radical feminist theory hails feminism as the Ultimate Revolution. This is true if, and only if, we recognize and claim our anarchist roots. At the point where we fail to see the feminist connection to anarchism, we stop short of revolution and become trapped in “ye olde male political rut”. It is time to stop groping in the darkness and see what we have done and are doing in the context of where we want to ultimately be.

C-R groups were a good beginning, but they often got so bogged down in talking about personal problems that they failed to make the jump to direct action and political confrontation. Groups that did organize around a specific issue or project sometimes found that the “tyranny of structurelessness” could be as destructive as the “tyranny of tyranny”[20] The failure to blend organization with spontaneity frequently caused the emergence of those with more skills or personal charisma as leaders. The resentment and frustration felt by those who found themselves following sparked in-fighting, guilt-tripping, and power struggles. Too often this ended in either total ineffectiveness or a backlash adherence to “what we need is more structure” (in the old male up/down sense of the word).

Once again, I think that what was missing was a verbalized anarchist analysis. Organization does not have to stifle spontaneity or follow hierarchical patterns. The women’s groups or projects which have been the most successful are those which experimented with various fluid structures: the rotation of tasks and chair- persons, sharing of all skills, equal access to information and resources, non-monopolized decision-making, and time slots for discussion of group dynamics. This latter structural element is important because it involves a continued effort on the part of group members to watch for “creeping power politics”. If women are verbally committing themselves to collective work, this requires a real struggle to unlearn passivity (to eliminate “followers”) and to share special skins or knowledge (to avoid “leaders”). This doesn’t mean that we cannot be inspired by one another’s words and lives; strong actions by strong individuals can be contagious and thus important. But we must be careful not to slip into old behavior patterns.

On the positive side, the emerging structure of the women’s movement in the last few years has generally followed an anarchistic pattern of small project-oriented groups continually weaving an underground network of communication and collective action around specific issues. Partial success at leader/“star” avoidance and the diffusion of small action projects (Rape Crisis Centers, Women’s Health Collectives) across the country have made it extremely difficult for the women’s movement to be pinned down to one person or group. Feminism is a many-headed monster which cannot be destroyed by singular decapitation. We spread and grow in ways that are incomprehensible to a hierarchical mentality.

This is not, however, to underestimate the immense power of the Enemy. The most treacherous form this power can take is cooptation, which feeds on any short-sighted unanarchistic view of feminism as mere “social change”. To think of sexism as an evil which can be eradicated by female participation in the way things are is to insure the continuation of domination and oppression. “Feminist” capitalism is a contradiction in terms. When we establish women’s credit unions, restaurants, bookstores, etc., we must be clear that we are doing so for our own survival, for the purpose of creating a counter-system whose processes contradict and challenge competition, profit-making, and all forms of economic oppression. We must be committed to “living on the boundaries”[21], to anti-capitalist, non-consumption values. What we want is neither integration nor a coup d’etat which would “transfer power from one set of boys to another set of boys”.[22] What we ask is nothing less than total revolution, revolution whose forms invent a future untainted by inequity, domination, or disrespect for individual variation — in short, feminist-anarchist revolution. I believe that women have known all along how to move in the direction of human liberation; we only need to shake off lingering male political forms and dictums and focus on our own anarchistic female analysis.

Where Do We Go From Here? Making Utopia Real
“Ah, your vision is romantic bullshit, soppy religiousity, flimsy idealism.” “You’re into poetry because you can’t deliver concrete details.” So says the little voice in the back of my (your?) head. But the front of my head knows that if you were here next to me, we could talk. And that in our talk would come (concrete, detailed) descriptions of how such and such might happen, how this or that would be resolved. What my vision really lacks is concrete, detailed human bodies. Then it wouldn’t be a flimsy vision, it would be a fleshy reality.[23]

— Su Negrin

Instead of getting discouraged and isolated now, we should be in our small groups — discussing, planning, creating, and making trouble... we should always be actively engaging in and creating feminist activity, because we all thrive on it; in the absence of [it], women take tranquilizers, go insane, and commit suicide.[24]

— Cathy Levin

Those of us who lived through the excitement of sit-ins, marches, student strikes, demonstrations, and REVOLUTION NOW in the 60s may find ourselves disillusioned and downright cynical about anything happening in the 70s. Giving up or in (“open” marriage? hip capitalism? the Guru Maharaji?) seems easier than facing the prospect of decades of struggle and maybe even ultimate failure. At this point, we lack an overall framework to see the process of revolution in. Without it, we are doomed to deadended, isolated struggle or the individual solution. The kind of framework, or coming-together-point, that anarca-feminism provides would appear to be a prerequisite for any sustained effort to reach Utopian goals. By looking at Spain and France, we can see that true revolution is “neither an accidental happening nor a coup d’etat artificially engineered from above.”[25] It takes years of preparation: sharing of ideas and information, changes in consciousness and behavior, and the creation of political and economic alternatives to capitalist, hierarchical structures. It takes spontaneous direct action on the part of autonomous individuals through collective political confrontation. It is important to “free your mind” and your personal life, but it is not sufficient. Liberation is not an insular experience; it occurs in conjunction with other human beings. There are no individual “liberated women”.

So, what I’m talking about is a long-term process, a series of actions in which we unlearn passivity and learn to take control over our own lives. I am talking about a “hollowing out” of the present system through the formation of mental and physical (concrete) alternatives to the way things are. The romantic image of a small band of armed guerrillas overthrowing the U.S. government is obsolete (as is all male politics) and basically irrelevant to this conception of revolution. We would be squashed if we tried it. Besides, as the poster says, “What we want is not the overthrow of the government, but a situation in which it gets lost in the shuffle.” This is what happened (temporarily) in Spain, and almost happened in France. Whether armed resistance will be necessary at some point is open to debate. The anarchist principle of “means create ends” seems to imply pacifism, but the power of the State is so great that it is difficult to be absolute about non-violence. (Armed resistance was crucial in the Spanish Revolution, and seemed important in France 1968 as well.) The question of pacifism, however, would entail another discussion, and what I’m concerned with here is emphasizing the preparation needed to transform society, a preparation which includes an anarca-feminist framework, long-range revolutionary patience, and continual active confrontation with entrenched patriarchal attitudes.

The actual tactics of preparation are things that we have been involved with for a long time. We need to continue and develop them further. I see them as functioning on three levels: (1) “educational” (sharing of ideas, experiences), (2) economic/political, and (3) personal/political.

“Education” has a rather condescending ring to it, but I don’t mean “bringing the word to the masses” or guilt-tripping. individuals into prescribed ways of being. I’m talking about the many methods we have developed for sharing our lives with one another — from writing (our network of feminist publications), study groups, and women’s radio and TV shows to demonstrations, marches, and street theatre. The mass media would seem to be a particularly important area for revolutionary communication and influence — just think of how our own lives were mis-shaped by radio and TV[26]. Seen in isolation, these things might seem ineffectual, but people do change from writing, reading, talking, and listening to each other, as well as from active participation in political movements. Going out into the streets together shatters passivity and creates a spirit of communal effort and life energy which can help sustain and transform us. My own transformation from all-american-girl to anarca-feminist was brought about by a decade of reading, discussion, and involvement with many kinds of people and politics — from the Midwest to the West and East Coasts. My experiences may in some ways be unique, but they are not, I think, extraordinary. In many, many places in this country, people are slowly beginning to question the way they were conditioned to acceptance and passivity. God and Government are not the ultimate authorities they once were. This is not to minimize the extent of the power of Church and State, but rather to emphasize that seemingly inconsequential changes in thought and behavior, when solidified in collective action, constitute a real challenge to the patriarchy.

Economic/political tactics fall into the realm of direct action and “purposeful illegality” (Daniel Guerin’s term). Anarco-syndicalism specifies three major modes of direct action: sabotage, strike, and boycott. Sabotage means “obstructing by every possible method, the regular process of production”[27]. More and more frequently, sabotage is practised by people unconsciously influenced by changing societal values. For example, systematic absenteeism is carried out by both blue and white collar workers. Defying employers can be done as subtly as the “slow-down” or as blatantly as the “fuck-up”. Doing as little work as possible as slowly as possible is common employee practice, as is messing up the actual work process (often as a union tactic during a strike). Witness habitual misfiling or loss of “important papers” by secretaries, or the continual switching of destination placards on trains during the 1967 railroad strike in Italy.

Sabotage tactics can be used to make strikes much more effective. The strike itself is the workers’ most important weapon. Any individual strike has the potential of paralysing the system if it spreads to other industries and becomes a general strike. Total social revolution is then only a step away. Of course, the general strike must have as its ultimate goal worker’s self-management (as well as a clear sense of how to achieve and hold on to it), or else the revolution will be still-born (as in France, 1968).

The boycott can also be a powerful strike or union strategy (e.g., the boycott of non-union grapes, lettuce, and wines, and of Farah pants). In addition, it can be used to force economic and social changes. Refusal to vote, to pay war taxes, or to participate in capitalist competition and over-consumption are all important actions when coupled with support of alternative, non-profit structures (food co-ops, health and law collectives, recycled clothing and book stores, free schools, etc.). Consumerism is one of the main strongholds of capitalism. To boycott buying itself (especially products geared to obsolescence and those offensively advertised) is a tactic that has the power to change the “quality of everyday life”. Refusal to vote is often practised out of despair or passivity rather than as a conscious political statement against a pseudo-democracy where power and money elect a political elite. Non-voting can mean something other than silent consent if we are simultaneously participating in the creation of genuine democratic forms in an alternative network of anarchist affinity groups.

This takes us to the third area — personal/political, which is of course vitally connected to the other two. The anarchist affinity group has long been a revolutionary organizational structure. In anarco-syndicalist unions, they functioned as training grounds for workers’ self-management. They can be temporary groupings of individuals for a specific short-term goal, more “permanent” work collectives (as an alternative to professionalism and career elitism), or living collectives where individuals learn how to rid themselves of domination or possessiveness in their one-to-one relationships. Potentially, anarchist affinity groups are the base on which we can build a new libertarian, non-hierarchical society. The way we live and work changes the way we think and perceive (and vice versa), and when changes in consciousness become changes in action and behavior, the revolution has begun.

Making Utopia real involves many levels of struggle. In addition to specific tactics which can be constantly developed and changed, we need political tenacity: the strength and ability to see beyond the present to a joyous, revolutionary future. To get from here to there requires more than a leap of faith. It demands of each of us a day-to-day, long-range commitment to possibility and direct action.

The Transformation of the Future
The creation of female culture is as pervasive a process as we can imagine, for it is participation in a VISION which is continually unfolding anew in everything from our talks with friends, to meat boycotts, to taking over storefronts for child care centres, to making love with a sister. It is revelatory, undefinable, except as a process of change. Women’s culture is all of us exorcising, naming, creating toward the vision of harmony with ourselves, each other, and our sister earth. In the last ten years our having come faster and closer than ever before in the history of the patriarchy to overturning its power... is cause of exhilarant hope — wild, contagious, unconquerable, crazy HOPE!... The hope, the winning of life over death, despair and meaninglessness is everywhere I look now — like taliswomen of the faith in WOMANVISION...[28]

— Laurel

I used to think that if the revolution didn’t happen tomorrow, we would all be doomed to a catastrophic (or at least, catatonic) fate. I don’t believe anymore that kind of before-and-after revolution, and I think we set ourselves up for failure and despair by thinking of it in those terms. I do believe that what we all need, what we absolutely require, in order to continue struggling (in spite of oppression of our daily lives) is HOPE, that is, a vision of the future so beautiful and so powerful that it pulls us steadily forward in a bottom-up creation of an inner and outer world both habitable and self-fulfilling for all[29]. I believe that hope exists — that it is in Laurel’s “womanvision”, in Mary Daly’s “existential courage”[30] and in anarca-feminism. Our different voices describe the same dream, and “only the dream can shatter stone that blocks our mouths.”[31] As we speak, we change, and as we change, we transform ourselves and the future simultaneously.

It is true that there is no solution, individual or otherwise, in our society.[32] But if we can only balance this rather depressing knowledge with an awareness of the radical metamorphoses we have experienced — in our consciousness and in our lives — the perhaps we can have the courage to continue to create what we DREAM is possible. Obviously, it is not easy to face daily oppression and still continue to hope. But it is our only chance. If we abandon hope (the ability to see connections, to dream the present into the future), then we have already lost. Hope is woman’s most powerful revolutionary tool; it is what we give each other every time we share our lives, our work, and our love. It pulls us forward out of self-hatred, self-blame, and the fatalism which keeps us prisoners in separate cells. If we surrender to depression and despair now, we are accepting the inevitability of authoritarian politics and patriarchal domination (“Despair is the worst betrayal, the coldest seduction: to believe at last that the enemy will prevail.”[33] Marge Piercy). We must not let our pain and anger fade into hopelessness or short-sighted semi-“solutions”. Nothing we can do is enough, but on the other hand, those “small changes” we make in our minds, in our lives, in one another’s lives, are not totally futile and ineffectual. It takes a long time to make a revolution: it is something that one both prepares for and lives now. The transformation of the future will not be instantaneous, but it can be total... a continuum of thought and action, individuality and collectivity, spontaneity and organization, stretching from what is to what can be.

Anarchism provides a framework for this transformation. It is a vision, a dream, a possibility which becomes “real” as we live it. Feminism is the connection that links anarchism to the future. When we finally see that connection clearly, when we hold to that vision, when we refuse to be raped of that HOPE, we will be stepping over the edge of nothingness into a being now just barely imaginable. The womanvision that is anarca-feminism has been carried inside our women’s bodies for centuries. “It will be an ongoing struggle in each of us, to birth this vision”[34] but we must do it. We must “ride our anger like elephants into battle”.

We are sleepwalkers troubled by nightmare flashes,

In locked wards we closet our vision, renouncing ...

Only when we break the mirror and climb into our vision,

Only when we are the wind together streaming and singing,

Only in the dream we become with our bones for spears,

we are real at last

and wake.[35]

 

[1] Emma Goldman, “Anarchism: What It Really Stands For”, Red Emma Speaks (Vintage Books, 1972), p.59.

[2] Su Negrin, Begin at Start (Times Change Press, 1972), p. 128.

[3] Murray Bookchin, “On Spontaneity and Organization”, Liberation, March, 1972, p.6.

[4] Paul Berman, Quotations from the Anarchists (Praeger Publishers, 1972), p. 68.

[5] Sam Doigoff, The Anarchist Collectives (Free Life Editions, 1974), p. 27.

[6] Ibid, pp.6, 7, 85.

[7] Daniel and Gabriel Cohn-Bendit, Obsolete Communism — The Left Wing Alternative (McGraw-Hill, 1968), p.256.

[8] See Murrey Bookchin’s Post Scarcity Anarchism (Ramparts Press, 1974) for both an insightful analysis of the May-June events and a discussion of revolutionary potential in a technological society.

[9] Ibid, p.262.

[10] lbid, p.250.

[11] Bookchin, On Spontaneity and Organization, pp. 11–12.

[12] Bookchin, Post Scarcity Anarchism, p.249.

[13] Berman, p.146.

[14] Bookchin, Post Scarcity Anarchism, p.40.

[15] Bookchin, On Spontaneity and Organization, p.10.

[16] Margaret Atwood, “Song of the Worms”, You Are Happy (Harper & Row, 1974), p.35.

[17] Mary Daly, Beyond God the Father (Beacon Press, 1973), p. 133.

[18] Cathy Levine, “The Tyranny of Tyranny”, Black Rose 1, p.56.

[19] Temma Kaplan of the UCLA history department has done considerable research on women’s anarchist groups (esp. “Mujeres Liberes”) in the Spanish Revolution. See also Liz Willis, Women in the Spanish Revolution, Solidarity Pamphlet No. 48.

[20] See Joreen’s “The Tyranny of Structurelessness”, Second Wave, Vol. 2, No. 1, and Cathy Levine’s “The Tyranny of Tyranny”, Black Rose 1.

[21] Daly, p.55.

[22] Robin Morgan, speech at Boston College, Boston, Mass., Nov., 1973.

[23] Negrin, p.171.

[24] Levine, p.50.

[25] Doigoff, p. 19.

[26] The Cohn-Bendits state that one major mistake in Paris 1968 was the failure to take complete control of the media, especially the radio and TV.

[27] Goldman, “Syndicalism: Its Theory and Practice”, Red Emma Speaks, p.71.

[28] Laurel, “Towards a Woman Vision”, Amazon Quarterly, Vol. 1, Issue 2, p.40.

[29] And, by self-fulfilling I mean not only in terms of survival needs (sufficient food, clothing, shelter. etc.) but psychological needs as well I (e.g., a non-oppressive environment which fosters total freedom of choice before specific, concretely possible alternatives).

[30] Daly, p.23.

[31] Marge Piercy, “Provocation of the Dream”.

[32] Fran Taylor, “A Depressing Discourse on Romance, the Individual Solution, and Related Misfortunes”, Second Wave, Vol. 3, No. 4.

[33] Marge Piercy, “Laying Down the Tower”, To Be of Use (Doubleday, 1973), p.88.

[34] Laurel, p.40.

[35] Piercy, “Provocation of the Dream”.

&
http://www.anarcha.org/sallydarity/PeggyKornegger.htm







Block (Internet)
https://en.wikipedia.org/wiki/Block_(Internet)#Effects
On the Internet, a block or ban is a technical measure intended to restrict access to information or resources. Blocking and its inverse, unblocking, may be implemented by the owners of computers using software.[1] Some countries, such as China, Iran, India, Russia and Turkey, tend to block access to certain news information that are not directly controlled by state media.[1][2][3][4] In the United States, the Children's Internet Protection Act requires schools receiving federal funded discount rates for Internet access to install filter software that blocks obscene content, pornography, and, where applicable, content "harmful to minors".[5]

Blocking may also refer to denying access to a web server based on the IP address of the client machine.[6] In certain websites, including social networks such as Facebook or editable databases like wikis, users can apply blocks (based in either IP number or account) on other users deemed undesirable to prevent them from performing certain actions. Blocks of this kind may occur for several reasons and produce different effects: in social networks, users can block other users without restriction, typically by preventing them from sending messages or viewing the blocker's information or profile. Privileged users can apply blocks that affect the access of the undesirable users to the entire website.

Blocking is used by moderators and administrators of social media and forums to deny access to users that have broken their rules and will likely do so again, in order to ensure a peaceful and orderly discussion place. Common reasons for blocking are spamming, trolling, and flaming. Some criticize cases of the use of bans by administrators of large websites, such as Twitter,[7] saying that these bans may be politically or financially motivated. However, websites have a legal right to decide who is allowed to post, and users often respond by "voting with their feet" and going to a place where the administrators see their behavior as acceptable.

Effects
Blocked users may be completely unable to access all or part of a site's content, which is usually the case when censoring or filtering mechanisms are responsible for the block. Under a shadow ban, a user is given the false impression that their content is still being posted to the site, when in reality it is being hidden from all other users.

Evasion
Ban evasion (or block evasion) is the act of attempting to get around a ban, whether temporary or permanent, on a website.

Alternate accounts set up by people evading bans from websites are referred to as sockpuppets. Typically, if someone is caught evading a ban with a sockpuppet, the sockpuppet account is banned. If the original ban was temporary, it may be extended or even made permanent. Sometimes, the user's IP address may be banned as well so the user cannot access the site or create new accounts. Some sites may remove all but a few traces of the ban-evader. TV Tropes and Wikipedia, for example, may mass-delete any pages created by a ban-evader.

Ban evasion can be detected by tracing a user's IP address. If two accounts are using the same IP address, it could be a sign of ban evasion. Also, the use of a VPN, shown by rapid, drastic changes of IP address by the same user in a short period of time, can also be a sign that the user was trying to get around a ban. Ban evasion can also be spotted if posts or other contributions from two accounts look the same or similar, or on sites where the same email can be associated with multiple accounts, identical or similar emails can be a sign of ban evasion. Users who have been permanently banned for ban evasion may not be able to appeal their ban, which is the case on sites such as TV Tropes.[8]

When creating sockpuppets, ban evaders use a variety of tactics to disguise the fact that the new account was created by a previously banned user, such as choosing usernames with no relation to defunct accounts, an alternate email address, VPNs or proxy servers to mask their IP address, changing their IP address (sometimes only needing to rely on a dynamic IP address to automatically change it after a time), or using the site from public Internet access locations such as schools and libraries. Other possible measures include somewhat altering how they conduct themselves and exhibiting different behaviour in order to prevent moderators from determining that they are the same person.[citation needed]




https://en.wikipedia.org/wiki/Emotional_contagion#Etymology
Emotional contagion
Emotional contagion is the phenomenon of having one person's emotions and related behaviors directly trigger similar emotions and behaviors in other people. Emotions can be shared across individuals in many different ways both implicitly or explicitly. For instance, conscious reasoning, analysis and imagination have all been found to contribute to the phenomenon.[1] The behaviour has been found in humans, other primates, dogs,[2], and chickens. [3]

Emotional contagion is important to personal relationships because it fosters emotional synchrony between individuals. A broader definition of the phenomenon suggested by Schoenewolf is "a process in which a person or group influences the emotions or behavior of another person or group through the conscious or unconscious induction of emotion states and behavioral attitudes".[4] One view developed by Elaine Hatfield, et al., is that this can be done through automatic mimicry and synchronization of one's expressions, vocalizations, postures and movements with those of another person.[1] When people unconsciously mirror their companions' expressions of emotion, they come to feel reflections of those companions' emotions.[1]

Etymology
Further information: Social contagion § History
The phrase "emotional contagion" embodies the idea that humans synchronize their own emotions with the emotions expressed by those around them, whether consciously or unconsciously. James Balwin had addressed the phenomena in his 1897 work Social and Ethical Interpretations in Mental Development, though using the term 'contagion of feeling'. Various 20th scholars had discussed the phenomena under the heading 'social contagion'. The actual term 'emotional contagion' appeared in Reber's 1985 The Penguine Dictionary of Psychology. [5] In a 1993 paper, Psychologists Elaine Hatfield, John Cacioppo, and Richard Rapson define it as "the tendency to automatically mimic and synchronize expressions, vocalizations, postures, and movements with those of another person's [sic] and, consequently, to converge emotionally" (p. 96).[1]

Hatfield, et al., theorize emotional contagion as a two-step process: Firstly, we imitate people, e.g., if someone smiles at you, you smile back. Secondly, our own emotional experiences change based on the non-verbal signals of emotion that we give off. For example, smiling makes one feel happier and frowning making one feel worse.[1] Mimicry seems to be one foundation of emotional movement between people.

Emotional contagion and empathy have an interesting relationship, in that they share similar characteristics, with the exception of the ability to differentiate between personal and pre-personal experiences, a process known as individuation.[clarification needed] In The Art of Loving (1956), social psychologist Erich Fromm explores these differences, suggesting that autonomy is necessary for empathy, which is not found in emotional contagion.[6]

Influencing factors
There are several factors that determine the rate and extent of emotional convergence in a group. Some of these are: membership stability, mood-regulation norms, task interdependence and social interdependence.[7] Besides these event-structure properties, there are personal properties of the group's members, such as openness to receive and transmit feelings, demographic characteristics and dispositional affect that influence the intensity of emotional contagion.[8]

Research
Research regarding the concept of emotional contagion has been conducted from a variety of perspectives, including organizational, social, familial, developmental, and neurological contexts. While early research suggested that conscious reasoning, analysis, and imagination accounted for the idea of emotional contagion, it has been concluded that some forms of more primitive emotional contagion are far more subtle, automatic, and universal.[1]

Hatfield, Cacioppo, and Rapson's 1993 research into emotional contagion reported that people's conscious assessments of others' feelings were heavily influenced by what others said.[1] People's own emotions, however, were more influenced by others' nonverbal clues as to what they were really feeling. Recognizing emotions and acknowledging their origin can be one way to avoid emotional contagion. Transference of emotions has been studied in a variety of situations and settings, with social[9] and physiological[10] causes being two of the largest areas of research.[1]

In addition to the social contexts discussed above, emotional contagion is a concept that has been studied within organizations. Schrock, Leaf, and Rohr (2008) discuss that organizations, like societies, have emotion cultures that consist of languages, rituals, and meaning systems, including rules about the feelings workers should, and should not, feel and display. They state that the concept of emotion culture is quite similar to the notion of "emotion climate" (p. 46), which has also been synonymously referred to as morale, organizational morale, and corporate morale.[citation needed] Furthermore, Worline, Wrzesniewski, and Rafaeli (2002) mention that organizations have an overall "emotional capability" (p. 318), while McColl-Kennedy and Smith (2006) examine the concept of "emotional contagion" (p. 255) specifically in customer interactions. These terms are arguably all attempting to describe a similar phenomenon; each term is different from one another in subtle and somewhat indistinguishable ways. Future research might consider where and how the meanings of these terms intersect, as well as how they differ.

Controversy
A controversial experiment demonstrating emotional contagion using the social media platform Facebook was carried out in 2012 on 689,000 users by filtering positive or negative emotional content from their news feeds.[11][12] The experiment sparked uproar among people who felt the study violated personal privacy.[13] The 2014 publication of a research paper resulting from this experiment, "Experimental evidence of massive-scale emotional contagion through social networks",[14] a collaboration between Facebook and Cornell University, is described by Tony D. Sampson, Stephen Maddison, and Darren Ellis (2018) as a "disquieting disclosure that corporate social media and Cornell academics were so readily engaged with unethical experiments of this kind."[15] Tony D. Sampson et al. criticize the notion that “academic researchers can be insulated from ethical guidelines on the protection for human research subjects because they are working with a social media business that has ‘no obligation to conform’ to the principle of ‘obtaining informed consent and allowing participants to opt out’.”[15] A subsequent study confirmed the presence of emotional contagion on Twitter without manipulating users' timelines.[16]

Beyond the ethical concerns, some scholars criticized the methods and reporting of the Facebook findings. John Grohol, writing for Psych Central, argued that despite its title and claims of "emotional contagion," this study did not look at emotions at all. Instead, its authors used an application (called "Linguistic Inquiry and Word Count" or LIWC 2007) that simply counted positive and negative words in order to infer users' sentiments. He wrote that a shortcoming of the LIWC tool is that it does not understand negations. Hence, the tweet "I am not happy" would be scored as positive: "Since the LIWC 2007 ignores these subtle realities of informal human communication, so do the researchers." Grohol concluded that given these subtleties, the effect size of the findings are little more than a "statistical blip."

Kramer et al. (2014) found a 0.07%—that's not 7 percent, that's 1/15th of one percent!!—decrease in negative words in people's status updates when the number of negative posts on their Facebook news feed decreased. Do you know how many words you'd have to read or write before you've written one less negative word due to this effect? Probably thousands.[17]

Types
Emotions can be shared and mimicked in many different ways. Early investigators of emotional contagion believed that "conscious reasoning, analysis and imagination accounted for this phenomenon." However, it is known now that some forms of emotional contagion are more subtle and automatic than early theorists suggested.[1]

Implicit
Unlike cognitive contagion, emotional contagion is less conscious and more automatic. It relies mainly on non-verbal communication, although it has been demonstrated that emotional contagion can, and does, occur via telecommunication. For example, people interacting through e-mails and "chats" are affected by the other's emotions, without being able to perceive the non-verbal cues.

One view, proposed by Hatfield and colleagues, describes the emotional contagion process as a primitive, automatic and unconscious behavior. According to this research group, it takes place through a series of steps. When a receiver is interacting with a sender, he perceives the emotional expressions of the sender. The receiver automatically mimics those emotional expressions. Through the process of afferent feedback, these new expressions are translated into feeling the emotions the sender feels, thus leading to emotional convergence.[1] I

Another view, emanating from social comparison theories, sees emotional contagion as demanding more cognitive effort and being more conscious. According to this view, people engage in social comparison to see if their emotional reaction is congruent with the persons around them. In this case, the recipient uses the emotion as a type of social information to understand how he or she should be feeling.[4] People respond differentially to positive and negative stimuli, and negative events tend to elicit stronger and quicker emotional, behavioral, and cognitive responses than neutral or positive events. Thus, unpleasant emotions are more likely to lead to mood contagion than are pleasant emotions. Another variable that needs to be taken into account is the energy level at which the emotion is displayed. As higher energy draws more attention to it, the prediction is that the same emotional valence (pleasant or unpleasant) expressed with high energy will lead to more contagion than if expressed with low energy.[4]

Explicit
Contrary to the automatic infection of feelings described above, there are times when others' emotions are being manipulated by a person or a group in order to achieve something. This can be a result of intentional affective influence by a leader or team member. Suppose this person wants to convince the others of something, he may do so by sweeping them up in his enthusiasm. In such a case, his positive emotions are an act with the purpose of "contaminating" the others' feelings. A different kind of intentional mood contagion is by giving the group a reward, or treat, in order to alleviate their feelings.

In the organizational psychology literature, a growing body of research is dedicated to the aspects of emotional labor. In short, it deals with the need to manage emotions so that they are consistent with organizational or occupational display rules, regardless of whether they are discrepant with internal feelings. In regard to emotional contagion, in work settings that require a certain display of emotions, one finds himself obligated to display, and consequently feel, these emotions. In a process where surface acting develops into deep acting, emotional contagion is the byproduct of intentional affective impression management.[18]

In workplaces and organizations
Intra-group
Many organizations and workplaces are currently encouraging team-work. This is a move driven by studies conducted by organizational psychologists that highlight the benefits of work-teams. Emotions come into play and a group emotion is formed.

The group's emotional state has an influence on factors such as cohesiveness, morale, rapport and the team's performance. For this reason, organizations need to take into account the factors that shape the emotional state of the work-teams, in order to harness the beneficial sides and avoid the detrimental sides of the group's emotion. Managers and team leaders should be even more cautious with their behavior, since their emotional influence is greater than that of a "regular" team member. It has been shown that leaders are more emotionally "contagious" than others.[19]

Employee/customer
The interaction between service employees and customers is considered an essential part of both customers' assessments of service quality and their relationship with the service provider.[20] Positive affective displays in service interactions are positively associated with important customer outcomes, such as intention to return and to recommend the store to a friend.[21] It is the interest of organizations that their customers be happy, since a happy customer is a satisfied one. Research has shown that the emotional state of the customer is directly influenced by the emotions displayed by the employee/service provider via emotional contagion.[22] But, this influence is dependent on the degree of authenticity of the employee's emotional display, such that if the employee is only surface-acting, the contagion of the customer is poor, in which case the beneficial effects stated above will not occur.[20]

Neurological basis

"Contagious" yawning has been observed in humans, chimpanzees, dogs, cats, birds, and reptiles, and can occur across species.[23][24]
Vittorio Gallese posits that mirror neurons are responsible for intentional attunement in relation to others. Gallese and colleagues at the University of Parma found a class of neurons in the premotor cortex that discharge when macaque monkeys execute goal-related hand movements or when they watch others doing the same action. One class of these neurons fires with action execution and observation, and with sound production of the same action. Research in humans shows an activation of the premotor cortex and parietal area of the brain for action perception and execution.

Gallese continues his dialogue to say humans understand emotions through a simulated shared body state. The observers' neural activation enables a direct experiential understanding. "Unmediated resonance" is a similar theory by Goldman and Sripada (2004). Empathy can be a product of the functional mechanism in our brain that creates embodied simulation. The other we see or hear becomes the "other self" in our minds. Other researchers have shown that observing someone else's emotions recruits brain regions involved in (a) experiencing similar emotions and (b) producing similar facial expressions.[25][26][27][28] This combination of activations indicates that the observer activates (a) a representation of the emotional feeling of the other individual which would lead to emotional contagion and (b) a motor representation of the observed facial expression that could lead to facial mimicry. In the brain, understanding and sharing other individuals' emotions would thus be a combination of emotional contagion and facial mimicry. Importantly, more empathic individuals experience more brain activation in emotional regions while witnessing the emotions of other individuals.

Amygdala
The amygdala is one part of the brain mechanism that underlies empathy and allows for emotional attunement and creates the pathway for emotional contagion. The basal areas including the brain stem form a tight loop of biological connectedness, re-creating in one person the physiological state of the other. Psychologist Howard Friedman thinks this is why some people can move and inspire others. The use of facial expressions, voices, gestures and body movements transmit emotions to an audience from a speaker.[citation needed]




Limbic resonance
https://en.wikipedia.org/wiki/Limbic_resonance#Importance_and_history
Limbic resonance is the idea that the capacity for sharing deep emotional states arises from the limbic system of the brain.[1] These states include the dopamine circuit-promoted feelings of empathic harmony, and the norepinephrine circuit-originated emotional states of fear, anxiety and anger.[2]

The concept was advanced in the book A General Theory of Love (2000), and is one of three interrelated concepts central to the book's premise: that our brain chemistry and nervous systems are measurably affected by those closest to us (limbic resonance); that our systems synchronize with one another in a way that has profound implications for personality and lifelong emotional health (limbic regulation); and that these set patterns can be modified through therapeutic practice (limbic revision).[3]:170

In other words, it refers to the capacity for empathy and non-verbal connection that is present in mammals, and that forms the basis of our social connections as well as the foundation for various modes of therapy and healing. According to the authors (Thomas Lewis, M.D, Fari Amini, M.D. and Richard Lannon, M.D.), our nervous systems are not self-contained, but rather demonstrably attuned to those around us with whom we share a close connection. "Within the effulgence of their new brain, mammals developed a capacity we call 'limbic resonance' — a symphony of mutual exchange and internal adaptation whereby two mammals become attuned to each other's inner states."[3]

This notion of limbic resonance builds on previous formulations and similar ideas. For example, the authors retell at length the notorious experiments of Harry Harlow establishing the importance of physical contact and affection in social and cognitive development of rhesus monkeys.[4] They also make extensive use of subsequent research by Tiffany Field in mother/infant contact,[5][6] Paul D. MacLean on the triune brain (reptilian, limbic, and neocortex),[7] and the work of G.W. Kraemer.[8]



Importance and history
Lewis, Amini and Lannon first make their case by examining a story from the dawn of scientific experimentation in human development when in the thirteenth century Frederick II raised a group of infants to be completely cut off from human interaction, other than the most basic care and feeding, so as to discover what language would spontaneously arise in the absence of any communication prompts. The result of this notorious experiment was that the infants, deprived of any human discourse or affection, all died.[3]:68,69

The authors find the hegemony of Freudian theory in the early days of psychology and psychiatry to be almost as harmful as the ideas of Frederick II. They condemn the focus on cerebral insight, and the ideal of a cold, emotionless analyst, as negating the very benefit that psychotherapy can confer by virtue of the empathetic bond and neurological reconditioning that can occur in the course of sustained therapeutic sessions. "Freud's enviable advantage is that he never seriously undertook to follow his own advice. Many promising young therapists have their responsiveness expunged, as they are taught to be dutifully neutral observers, avoiding emotional contact....But since therapy is limbic relatedness, emotional neutrality drains life out of the process..."[3]:184

A General Theory of Love is scarcely more sympathetic to Dr. Benjamin Spock and his "monumentally influential volume" Baby and Child Care, especially given Spock's role in promoting the movement against co-sleeping, or allowing infants to sleep in the same bed as their parents. Lewis, Amini and Lannon cite the research of sleep scientist James McKenna, which seems to suggest that the limbic regulation between sleeping parents and infants is essential to the neurological development of the latter and a major factor in preventing Sudden Infant Death Syndrome (SIDS). "The temporal unfolding of particular sleep stages and awake periods of the mother and infant become entwined....on a minute to minute basis, throughout the night, much sensory communication is occurring between them."[3]:195

Subsequent use of the term
Since the first publication of A General Theory of Love in 2000, the term limbic resonance has gained popularity with subsequent writers and researchers.[9] The term brings a higher degree of specificity to the ongoing discourse in psychological literature concerning the importance of empathy and relatedness. In "A handbook of Psychology" (2003) a clear path is traced from Winnicott 1965 identifying the concept of mother and child as a relational organism or dyad[10][11]:92[12] and goes on to examine the interrelation of social and emotional responding with neurological development and the role of the limbic system in regulating response to stress.[11]:117

Limbic resonance is also referred to as "empathic resonance", as in the book Empathy in Mental Illness (2007), which establishes the centrality of empathy or lack thereof in a range of individual and social pathologies. The authors Farrow and Woodruff cite the work of Maclean, 1985, as establishing that "Empathy is perhaps the heart of mammalian development, limbic regulation and social organization",[13]:50 as well as research by Carr et al., 2003, who used fMRI to map brain activity during the observation and imitation of emotional facial expressions, concluding that "we understand the feelings of others via a mechanism of action representation that shapes emotional content and that our empathic resonance is grounded in the experience of our bodies in action and the emotions associated with specific bodily movements".[13]:179 Other studies cited examine the link between mirror neurons (activated during such mimicking activity) and the limbic system, such as Chartrand & Bargh, 1999: "Mirror neurone areas seem to monitor this interdependence, this intimacy, this sense of collective agency that comes out of social interactions and that is tightly linked to the ability to form empathic resonance."[13]:317

Limbic resonance and limbic regulation are also referred to as "mood contagion" or "emotional contagion" as in the work of Sigal Barsade and colleagues at the Yale School of Management.[14] In The Wise Heart, Buddhist teacher Jack Kornfield echoes the musical metaphor of the original definition of "limbic resonance" offered by authors Lewis, Amini and Lannon of A General Theory of Love, and correlates these findings of Western psychology with the tenets of Buddhism: "Each time we meet another human being and honor their dignity, we help those around us. Their hearts resonate with ours in exactly the same way the strings of an unplucked violin vibrate with the sounds of a violin played nearby. Western psychology has documented this phenomenon of 'mood contagion' or limbic resonance. If a person filled with panic or hatred walks into a room, we feel it immediately, and unless we are very mindful, that person's negative state will begin to overtake our own. When a joyfully expressive person walks into a room, we can feel that state as well."[15]

In March 2010, citing A General Theory of Love, Kevin Slavin referred to limbic resonance in considering the dynamics of Social television. Slavin suggests that the laugh track evolved to provide the audience—alone at home—with a sense that others around them were laughing, and that limbic resonance explains the need for that laughing audience.

Limbic regulation
Limbic regulation, mood contagion or emotional contagion is the effect of contact with other people upon the development and stability of personality and mood.

Subsequent use and definitions of the term
In Living a connected life (2003), Dr. Kathleen Brehony looks at recent brain research which shows the importance of proximity of others in our development. "Especially in infancy, but throughout our lives, our physical bodies are influencing and being influenced by others with whom we feel a connection. Scientists call this limbic regulation."[16]

Brehony goes on to describe the parallels between the "protest/despair" cycles of an abandoned puppy and human development. Mammals have developed a tendency to experience distraction, anxiety and measurable levels of stress in response to separation from their care-givers and companions, precisely because such separation has historically constituted a threat to their survival. As anyone who has owned a puppy can attest, when left alone it will cry, bark, howl, and seek to rejoin its human or canine companions. If these efforts are unsuccessful and the isolation is prolonged, it will sink into a state of dejection and despair. The marginal effectiveness of placing a ticking clock in the puppy's bed is based on a universal need in mammals to synchronize to the rhythms of their fellow creatures.

Limbic resonance and limbic regulation are also referred to as "mood contagion" or "emotional contagion" as in the work of Sigal Barsade. Barsade and colleagues at the Yale School of Management build on research in social cognition, and find that some emotions, especially positive ones, are spread more easily than others through such "interpersonal limbic regulation".[14]

Author Daniel Goleman has explored similar terrain across several works: in Emotional Intelligence (1995), an international best seller, The Joy Of Living, coauthored with Yongey Mingyur Rinpoche, and the Harvard Business Review on Breakthrough Leadership. In the latter book, Goleman considers the "open loop nature of the brain's limbic system" which depends on external sources to manage itself, and examines the implications of interpersonal limbic regulation and the science of moods on leadership.[17]

In Mindfully Green: A Personal and Spiritual Guide to Whole Earth Thinking (2003) author Staphine Kaza defines the term as follows: "Limbic regulation is a mutual simultaneous exchange of body signals that unfolds between people who are deeply involved with each other, especially parents and children." She goes on to correlate love with limbic engagement and asserts that children raised with love learn and remember better than those who are abused. Kaza then proposes to "take this work a step further from a systems perspective, and imagine that a child learns through some sort of limbic regulation with nature".[18]

Limbic revision
Limbic revision is the therapeutic alteration of personality residing in the human limbic system of the brain.[19]

Relation to affect regulation and limbic resonance
Dr. Allan Schore, of the UCLA David Geffen School of Medicine, has explored related ideas beginning with his book Affect Regulation and the Origin of the Self published in 1994. Dr. Shore looks at the contribution of the limbic system to the preservation of the species, its role in forming social bonds with other members of the species and intimate relations leading to reproduction. "It is said that natural selection favors characteristics that maximize an individual's contribution of the gene pool of succeeding generations. In humans this may entail not so much competitive and aggressive traits as an ability to enter into a positive affective relationship with a member of the opposite sex."[20] In his subsequent book Affect regulation & the repair of the self,[21] Schor correlates the "interactive transfer of affect" between mother and infant, on the one hand, and in a therapeutic context on the other, and describes it as "intersubjectivity". He then goes on to explore what developmental neuropsychology can reveal about both types of interrelatedness.

In Integrative Medicine: Principles for Practice, authors Kligler and Lee state "The empathic therapist offers a form of affect regulation. The roots of empathy — Limbic resonance — are found in the early caregiver experiences, which shape the ways the child learns to experience, share, and communicate affects."[22]




Linguistic empathy
https://en.wikipedia.org/wiki/Linguistic_empathy
Linguistic empathy in theoretical linguistics is the "point of view" in an anaphoric utterance by which a participant is bound with or in the event or state that he/she describes in that sentence.[1][2][3]

An example is found with the Japanese verbs yaru and kureru. These both share the same essential meaning and case frame. But they differ in that yaru expresses when the action is looked at from the point of view of the referent of the subject or the neutral (objective) point of view, whereas kureru is used when the event is described from the point of view of the referent of the dative object.

While present in many languages including English it is particularly prominent in some, such as Japanese.

The concept has no connection with empathy in terms of attributing mental states to others or sympathizing with their situation.

The phenomena
The basic idea of linguistic empathy is that sentences can provide information about the speaker's point of view, from which they describe a state of affairs. This information can be expressed as concerning the speaker's identification with a participant", "camera angle", and "point of view".

For example, in English, "then John hit his brother" is more acceptable than "then John's brother was hit by him". The former shows the speaker's empathy with John is greater than with his brother (John's brother). In contrast, in the latter, John's brother is the subject and him (John) is the by-agent. Thus, since the speaker's empathy with the subject, John's brother, is less than with him (John), then John's brother was hit by him is less acceptable than the former phrase.






Projective identification
https://en.wikipedia.org/wiki/Projective_identification#Experience
Projective identification is a term introduced by Melanie Klein and then widely adopted in psychoanalytic psychotherapy. Projective identification may be used as a type of defense, a means of communicating, a primitive form of relationship, or a route to psychological change;[1] used for ridding the self of unwanted parts or for controlling the other's body and mind.[2]

According to the American Psychological Association, the expression can have two meanings:

(1) In psychoanalysis, projective identification is a defense mechanism in which the individual projects qualities that are unacceptable to the self onto another person, and that person internalizes the projected qualities and believes him/herself to be characterized by them appropriately and justifiably.

(2) In the object relations theory of Melanie Klein, projective identification is a defense mechanism in which a person fantasizes that part of their ego is split off and projected into the object in order to harm or to protect the disavowed part.[3]

In this second sense, it can be said that in a close relationship, as between parent and child, lovers, or therapist and patient, parts of the self may, in unconscious fantasy, be thought of as being forced into the other person.[4]

While based on Freud's concept of psychological projection,[5] projective identification represents a step beyond. In R.D. Laing's words, "The one person does not use the other merely as a hook to hang projections on. He/she strives to find in the other, or to induce the other to become, the very embodiment of projection".[6] Feelings which can not be consciously accessed are defensively projected into another person in order to evoke the thoughts or feelings projected.[7]


Experience
Though a difficult concept for the conscious mind to come to terms with,[8] since its primitive nature makes its operation or interpretation seem more like magic or art than science,[9] projective identification is nonetheless a powerful tool of interpersonal communication.

The recipient of the projection may suffer a loss of both identity and insight as they are caught up in and manipulated by the other person's fantasy.[10] One therapist, for example, describes how "I felt the progressive extrusion of his internalized mother into me, not as a theoretical construct but in actual experience. The intonation of my voice altered, became higher with the distinctly Ur-mutter quality."[11] If the projection can be accepted and understood, however, much insight into the projector will be obtained.

Projective identification differs from simple projection in that projective identification can become a self-fulfilling prophecy, whereby a person, believing something false about another, influences or coerces that other person to carry out that precise projection.[12] In extreme cases, the recipient may lose any sense of their real self and become reduced to the passive carrier of outside projections, as if possessed by them.[13] This phenomenon has been noted in gaslighting.[14]

Objects projected
The objects (feelings, attitudes) extruded in projective identification are of various kinds – both good and bad, ideal and abjected.

Hope may be projected by a client into their therapist, when they can no longer consciously feel it themselves;[15] equally, it may be a fear of (psychic) dying which is projected.[16]

Aggression may be projected, leaving the projector's personality diminished and reduced;[17] alternatively it may be desire, leaving the projector feeling asexual.[18]

The good/ideal parts of the personality may be projected, leading to dependence upon the object of identification;[19] equally it may be jealousy or envy that are projected, perhaps by the therapist into the client.[20]

Intensity
Projective identification may take place with varying degrees of intensity.[21] In less disturbed personalities, projective identification is not only a way of getting rid of feelings but also of getting help with them.[22] In an emotionally balanced person, projective identification may act as a bridge to empathy and intuitive understanding.[23] In narcissism, extremely powerful projections may take place and obliterate the distinction between self and other.[24]

Types
Various types of projective identification have been distinguished over the years:

Acquisitive projective identification - where someone takes on the attributes of someone else. Unlike attributive projective identification, where someone induces someone else to become one's own projection.[25]
Projective counter-identification - where the therapist unwittingly assumes the feelings and role of the patient to the point where he acts out within the therapy within this assumed role that has been projected into him, a step beyond the therapist merely receiving the patient's projections without acting on them.[26]
Dual projective identification - a concept introduced by Joan Lachkar. It primarily occurs when both partners in a relationship simultaneously project onto one another. Both deny the projections, both identify with those projections.[27]
A division has also been made between normal projective identification and pathological projective identification, where what is projected is splintered into minute pieces before the projection takes place.[28]

In psychotherapy
As with transference and countertransference, projective identification can be a potential key to therapeutic understanding, especially where the therapist is able to tolerate and contain the unwanted, negative aspects of the patient's self over time.[29]

Transactional analysis emphasizes the need for the therapist's Adult to remain uncontaminated, if the experience of the client's projective identification is to be usefully understood.[30]

Wounded couple
Relationship problems have been linked to the way there can be a division of emotional labour in a couple, by way of projective identification, with one partner carrying projected aspects of the other for them.[31] Thus one partner may carry all the aggression or all the competence in the relationship, the other all the vulnerability.[32]

Jungians describe the resultant dynamics as characterising a so-called "wounded couple" – projective identification ensuring that each carries the most ideal or the most primitive parts of their counterpart.[33] The two partners may initially have been singled out for that very readiness to carry parts of each other's self; but the projected inner conflicts/division then come to be replicated in the partnership itself.[34]

Responses
Conscious resistance to such projective identification[35] may produce on the one side guilt for refusing to enact the projection,[36] on the other bitter rage at the thwarting of the projection.[37]




Sanskritisation
https://en.wikipedia.org/wiki/Sanskritisation#Definition
In sociology, Sanskritisation (Indian and British English) or Sanskritization (Oxford and American English), is the process by which caste or tribes placed lower in the caste hierarchy seek upward mobility by emulating the rituals and practices of the dominant or upper castes. It is a process similar to "passing" in sociological terms. This term was made popular by Indian sociologist M. N. Srinivas in the 1950s.[1][2][3]

In a broader sense, also called Brahmanization,[4] it is a historical process in which various local Indian religious traditions become aligned to and absorbed within the Brahmanical tradition, creating the pan-Indian tradition of Hinduism.[4][3][5]

Definition
Srinivas defined Sanskritisation as a process by which

a low or middle Hindu caste, or tribal or other group, changes its customs, ritual, ideology, and way of life in the direction of a high and frequently twice-born caste. Generally such changes are followed by a claim to a higher position in the caste hierarchy than that traditionally conceded to the claimant class by the local community ... ."[6]

In a broader sense, Sanskritization is

the process whereby local or regional forms of culture and religion – local deities, rituals, literary genres – become identified with the 'great tradition' of Sanskrit literature and culture: namely the culture and religion of orthodox, Aryan, Brahmans, which accepts the Veda as revelation and, generally, adheres to varnasrama-dharma.[7]

In this process, local traditions ("little traditions") become integrated into the "great tradition" of Brahmanical religion,[5] disseminating Sanskrit texts and Brahmanical ideas throughout India, and abroad.[3] This facilitated the development of the Hindu synthesis,[4][3][5] in which the Brahmanical tradition absorbed "local popular traditions of ritual and ideology."[4]

According to Srinivas, Sanskritisation is not just the adoption of new customs and habits, but also includes exposure to new ideas and values appearing in Sanskrit literature. He says the words Karma, dharma, paap, maya, samsara, and moksha are the most common Sanskrit theological ideas which become common in the talk of people who are sanskritised.[8]

Development
Srinivas first propounded this theory in his D.Phil. thesis at Oxford. The thesis was later brought out as a book,[9] which was an ethnographical study of the Kodava (Coorgs) community of Karnataka. Srinivas writes:

The caste system is far from a rigid system, in which the position of each component caste is fixed for all time. Movement has always been possible, and especially in the middle regions of the hierarchy. A caste was able, in a generation or two, to rise to a higher position in the hierarchy by adopting vegetarianism and teetotalism, and by sanskritising its ritual and pantheon. In short, it took over, as far as possible, the customs, rites, and beliefs of the Brahmins, and adoption of the Brahminic way of life by a low caste seems to have been frequent, though theoretically forbidden. This process has been called ‘sanskritisation’ in this book, in preference to ‘Brahminisation’, as certain Vedic rites are confined to the Brahmins and the two other ‘twice-born’ castes.[10]

The book challenged the then prevalent idea that caste was a rigid and unchanging institution. The concept of sanskritisation addressed the actual complexity and fluidity of caste relations. It brought into academic focus the dynamics of the renegotiation of status by various castes and communities in India.

According to Jaffrelot 2005, p. 33 a similar heuristic was previously described by Ambedkar (1916, 1917)[note 1][note 2] Jaffrelot goes on to say, "While the term was coined by Srinivas, the process itself had been described by colonial administrators such as E. T. Atkinson in his Himalayan Gazetteer and Alfred Lyall, in whose works Ambedkar might well have encountered it."[11]

Virginius Xaxa notes that sometimes the anthropologists also use the term "Kshatriyisation" and "Rajputisation" in place of Sanskritisation.[12]

Examples
Sanskritization is often aimed to claim the Varna status of Brahmin or Kshatriyas, the two prestigious Varna of the Vedic-age Varna system. One such example in North India is of Rajput. According to historical evidence, the present day Rajput community varies greatly in status, comprising those with royal lineage to those whose ancestors were petty tenants or tribals who gained land and political power to justify their claim of being Kshatriya. The word Kshatriya is hence not synonymous with Rajput.[13][14][15]

One clear example of sanskritisation is the adoption, in emulation of the practice of twice-born castes, of vegetarianism by people belonging to the so-called "low castes" who are traditionally not averse to non-vegetarian food.

An unsuccessful example is the Vishwakarma caste's claim to Brahmin status, which is not generally accepted outside that community, despite their adoption of some Brahmin caste traits, such as wearing the sacred thread, and the Brahminisation of their rituals. Srinivas juxtaposed the success of the Lingayat caste in achieving advancement within Karnataka society by such means with the failure of the Vishwakarma to achieve the same. Their position as a left-hand caste has not aided their ambition.[16]

Srinivas was of the view that Sanskritization was not limited to the Hindu castes, and stated that the "semi–tribal groups" including Himalayas's Pahadis, central India's Gonds and Oraons, and western India's Bhils also underwent Sanskritization. He further suggested that, after going through Sanskritization, such tribes would claim that they are castes and hence Hindus.[17]

Reception
This phenomenon has also been observed in Nepal among Khas, Magar, Newar, and Tharu people.[18]

Yogendra Singh has critiqued the theory as follows:

... Sanskritisation fails to account for many aspects of cultural changes in the past and contemporary India as it neglects non-sanskritic traditions. It may be noted that often a non-sanskritic element of culture may be a localised form of sanskritic tradition. ... Sanskritic rites are often added to non-sanskritic rites without replacing them.[19]





Anomie
https://en.wikipedia.org/wiki/Anomie#History
In sociology, anomie (/ˈænəˌmi/) is a societal condition defined by an uprooting or breakdown of any moral values, standards or guidance for individuals to follow.[1][2] Anomie may evolve from conflict of belief systems[3] and causes breakdown of social bonds between an individual and the community (both economic and primary socialization).[4] E.g. alienation in a person that can progress into a dysfunctional inability to integrate within normative situations of their social world like to find a job, find success in relationships, etc.

The term, commonly understood to mean normlessness, is believed to have been popularized by French sociologist Émile Durkheim in his influential book Suicide (1897). However, Durkheim first introduced the concept of anomie in his 1893 work The Division of Labour in Society. Durkheim never used the term normlessness;[5] rather, he described anomie as "derangement," and "an insatiable will."[6][need quotation to verify] Durkheim used the term "the malady of the infinite" because desire without limit can never be fulfilled; it only becomes more intense.[7]

For Durkheim, anomie arises more generally from a mismatch between personal or group standards and wider social standards; or from the lack of a social ethic, which produces moral deregulation and an absence of legitimate aspirations. This is a nurtured condition:

Most sociologists associate the term with Durkheim, who used the concept to speak of the ways in which an individual's actions are matched, or integrated, with a system of social norms and practices…anomie is a mismatch, not simply the absence of norms. Thus, a society with too much rigidity and little individual discretion could also produce a kind of anomie…[8]

In 1893, Durkheim introduced the concept of anomie to describe the mismatch of collective guild labour to evolving societal needs when the guild was homogeneous in its constituency. He equated homogeneous (redundant) skills to mechanical solidarity whose inertia hindered adaptation. He contrasted this with the self-regulating behaviour of a division of labour based on differences in constituency, equated to organic solidarity, whose lack of inertia made it sensitive to needed changes.

Durkheim observed that the conflict between the evolved organic division of labour and the homogeneous mechanical type was such that one could not exist in the presence of the other.[9]:182–3 When solidarity is organic, anomie is impossible, as sensitivity to mutual needs promotes evolution in the division of labour:[9]:368–9

Producers, being near consumers, can easily reckon the extent of the needs to be satisfied. Equilibrium is established without any trouble and production regulates itself.

Durkheim contrasted the condition of anomie as being the result of a malfunction of organic solidarity after the transition to mechanical solidarity:[9]:368–9
But on the contrary, if some opaque environment is interposed…relations [are] rare, are not repeated enough…are too intermittent. Contact is no longer sufficient. The producer can no longer embrace the market at a glance, nor even in thought. He can no longer see its limits, since it is, so to speak limitless. Accordingly, production becomes unbridled and unregulated.

Durkheim's use of anomie was in regards to the phenomenon of industrialization—mass-regimentation that could not adapt due to its own inertia. More specifically, its resistance to change causes disruptive cycles of collective behavior (e.g. economics) due to the necessity of a prolonged buildup of sufficient force or momentum to overcome the inertia.

Later in 1897, in his studies of suicide, Durkheim associated anomie to the influence of a lack of norms or norms that were too rigid. However, such normlessness or norm-rigidity was a symptom of anomie, caused by the lack of differential adaptation that would enable norms to evolve naturally due to self-regulation, either to develop norms where none existed or to change norms that had become rigid and obsolete.

In 1938, Robert K. Merton linked anomie with deviance, arguing that the discontinuity between culture and structure have the dysfunctional consequence of leading to deviance within society. He described 5 types of deviance in terms of the acceptance or rejection of social goals and the institutionalized means of achieving them.[10]

Etymology
See also: Antinomianism
The term anomie—"a reborrowing with French spelling of anomy"[11]—comes from Greek: anomía (ἀνομία, 'lawlessness'),[12][13] namely the privative alpha prefix (a-, 'without'), and nomos (νόμος, 'law'). The Greeks distinguished between nomos, and arché (ἀρχή, 'starting rule, axiom, principle'). For example, a monarch is a single ruler but he may still be subject to, and not exempt from, the prevailing laws, i.e. nomos. In the original city state democracy, the majority rule was an aspect of arché because it was a rule-based, customary system, which may or may not make laws, i.e. nomos. Thus, the original meaning of anomie defined anything or anyone against or outside the law, or a condition where the current laws were not applied resulting in a state of illegitimacy or lawlessness.

The contemporary English understanding of the word anomie can accept greater flexibility in the word "norm", and some have used the idea of normlessness to reflect a similar situation to the idea of anarchy. However, as used by Émile Durkheim and later theorists, anomie is a reaction against or a retreat from the regulatory social controls of society, and is a completely separate concept from anarchy, which consists of the absence of the roles of rulers and submitted.

Social disorder
Nineteenth-century French pioneer sociologist Émile Durkheim borrowed the term anomie from French philosopher Jean-Marie Guyau. Durkheim used it in his influential book Suicide (1897) in order to outline the social (and not individual) causes of suicide, characterized by a rapid change of the standards or values of societies (often erroneously referred to as normlessness), and an associated feeling of alienation and purposelessness. He believed that anomie is common when the surrounding society has undergone significant changes in its economic fortunes, whether for better or for worse and, more generally, when there is a significant discrepancy between the ideological theories and values commonly professed and what was actually achievable in everyday life. This was contrary to previous theories on suicide which generally maintained that suicide was precipitated by negative events in a person's life and their subsequent depression.

In Durkheim's view, traditional religions often provided the basis for the shared values which the anomic individual lacks. Furthermore, he argued that the division of labor that had been prevalent in economic life since the Industrial Revolution led individuals to pursue egoistic ends rather than seeking the good of a larger community. Robert King Merton also adopted the idea of anomie to develop strain theory, defining it as the discrepancy between common social goals and the legitimate means to attain those goals. In other words, an individual suffering from anomie would strive to attain the common goals of a specific society yet would not be able to reach these goals legitimately because of the structural limitations in society. As a result, the individual would exhibit deviant behavior. Friedrich Hayek notably uses the word anomie with this meaning.

According to one academic survey, psychometric testing confirmed a link between anomie and academic dishonesty among university students, suggesting that universities needed to foster codes of ethics among students in order to curb it.[14] In another study, anomie was seen as a "push factor" in tourism.[15]

As an older variant, the 1913 Webster's Dictionary reports use of the word anomie as meaning "disregard or violation of the law."[16] However, anomie as a social disorder is not to be confused with anarchy: proponents of anarchism claim that anarchy does not necessarily lead to anomie and that hierarchical command actually increases lawlessness. Some anarcho-primitivists argue that complex societies, particularly industrial and post-industrial societies, directly cause conditions such as anomie by depriving the individual of self-determination and a relatively small reference group to relate to, such as the band, clan or tribe.

Synnomie
Freda Adler coined synnomie as the opposite of anomie.[17][18] Using Émile Durkheim's concept of social solidarity and collective consciousness,[17] Adler defined synnomie as "a congruence of norms to the point of harmonious accommodation."[18]

Adler described societies in a synnomie state as "characterized by norm conformity, cohesion, intact social controls and norm integration." Social institutions such as the family, religion and communities, largely serve as sources of norms and social control to maintain a synnomic society.

In culture
In Albert Camus's existentialist novel The Stranger, Meursault—the bored, alienated protagonist—struggles to construct an individual system of values as he responds to the disappearance of the old. He exists largely in a state of anomie,[19] as seen from the apathy evinced in the opening lines: "Aujourd’hui, maman est morte. Ou peut-être hier, je ne sais pas" ("Today mum died. Or maybe yesterday, I don't know").

Fyodor Dostoyevsky expresses a similar concern about anomie in his novel The Brothers Karamazov. The Grand Inquisitor remarks that in the absence of God and immortal life, everything would be lawful.[20] In other words, that any act becomes thinkable, that there is no moral compass, which leads to apathy and detachment.





Acedia
https://en.wikipedia.org/wiki/Acedia#In_ancient_Greece
Acedia (/əˈsiːdiə/; also accidie or accedie /ˈæksɪdi/, from Latin acēdia, and this from Greek ἀκηδία, "negligence", ἀ- "lack of" -κηδία "care") has been variously defined as a state of listlessness or torpor, of not caring or not being concerned with one's position or condition in the world. In ancient Greece akidía literally meant an inert state without pain or care.[1] Early Christian monks used the term to define a spiritual state of listlessness and from there the term developed a markedly Christian moral tone.[2] In modern times it has been taken up by literary figures and connected to depression.


In ancient Greece
Acedia papyrus
"Acedia" from Book 24 of the Iliad as it appears in the Banks Homer papyrus, British Museum.
In Ancient Greece acedia originally meant indifference or carelessness along the lines of its etymological meaning of lack of care. Thus Homer in the Iliad uses it to both mean soldiers heedless of a comrade (τῶν δ᾽ ἄλλων οὔ τίς εὑ ἀκήδεσεν, "and none of the other [soldiers] was heedless of him.[3]") and the body of Hector lying unburied and dishonored in the camp of the Acheans (μή πω μ᾽ ἐς θρόνον ἵζε διοτρεφὲς ὄφρά κεν Ἕκτωρ κεῖται ἐνὶ κλισίῃσιν ἀκηδής. "Seat me not anywise upon a chair, O thou fostered of Zeus, so long as Hector lieth uncared-for amid the huts.[4]") Hesiod uses it in the sense of "indifferent" (ἀνίκητος καὶ ἀκηδὴς, "unconquered and untroubled"[5]). Peter Toohey, in his article Acedia in Late Classical Antiquity argues that acedia, even in ancient times, was synonymous with depression.[6]

Depictions in the early Christian era

Acedia depicted by Pieter Bruegel the elder.
Moral theologians, intellectual historians and cultural critics have variously construed acedia as the ancient depiction of a variety of psychological states, behaviors or existential conditions: primarily laziness, apathy, ennui or boredom.

The demon of acedia holds an important place in early monastic demonology and proto-psychology. In the late fourth century Evagrius of Pontus, for example, characterizes it as "the most troublesome of all" of the eight genera of evil thoughts. As with those who followed him, Evagrius sees acedia as a temptation, and the great danger lies in giving in to it. Evagrius' contemporary the Desert Father John Cassian, depicted the apathetic restlessness of acedia, "the noonday demon", in the coenobitic monk:

He looks about anxiously this way and that, and sighs that none of the brethren come to see him, and often goes in and out of his cell, and frequently gazes up at the sun, as if it was too slow in setting, and so a kind of unreasonable confusion of mind takes possession of him like some foul darkness.[7]

In the medieval Latin tradition of the seven deadly sins, acedia has generally been folded into the sin of sloth. The Benedictine Rule directed that a monk displaying the outward signs of acedia should;-

be reproved a first and a second time. If he does not amend he must be subjected to the punishment of the rule so that the others may have fear.[8]

The Middle Ages
According to the Oxford Concise Dictionary of the Christian Church[9] "by the early 5th cent. the word had become a technical term in Christian asceticism, signifying a state of restlessness and inability either to work or to pray." Not only monks and theologians spoke of the vice but it appears in the writings of laymen as well. It appears in Dante's Divine Comedy not only as a sin to be punished in the damned but as the sin that leads Dante to the edge of Hell to begin with.[10] Chaucer's parson includes acedia in his list of vices. It follows anger and envy in the list and the parson connects the three vices together:

For Envye blindeth the herte of a man, and Ire troubleth a man; and Accidie maketh him hevy, thoghtful, and wrawe. / Envye and Ire maken bitternesse in herte; which bitternesse is moder of Accidie, and binimeth him the love of alle goodnesse.[11]

In his sustained analysis of the vice in Q. 35 of the Second Part (Secunda Secundae) of his Summa Theologica, the 13th-century theologian Thomas Aquinas identifies acedia with "the sorrow of the world" (compare Weltschmerz) that "worketh death" and contrasts it with that sorrow "according to God" described by St. Paul in 2 Cor. 7:10. For Aquinas, acedia is "sorrow about spiritual good in as much as it is a Divine good." It becomes a mortal sin when reason consents to man's "flight" (fuga) from the Divine good, "on account of the flesh utterly prevailing over the spirit."[12] Acedia is essentially a flight from the divine that leads to not even caring that one does not care. The ultimate expression of this is a despair that ends in suicide.

Aquinas's teaching on acedia in Q. 35 contrasts with his prior teaching on charity's gifted "spiritual joy", to which acedia is directly opposed, and which he explores in Q. 28 of the Secunda Secundae. As Aquinas says, "One opposite is known through the other, as darkness through light. Hence also what evil is must be known from the nature of good."[13]

Modern revival
The term acedia all but died out in common usage by the beginning of the 20th century. "In the 1933 Oxford English Dictionary, accidie was confidently declared obsolete, with references dating from 1520 and 1730. But by the mid-twentieth century, as civilized people were contending with the genocidal horror of two world wars, accidie was back in use.[14]" No longer the exclusive property of theologians, the word appears in the writings of Aldous Huxley and Ian Fleming.[14]

Signs

Acedia depicted as a sleeping man and a bat in the Goat Church in Sopron, Hungary.
Acedia is indicated by a range of signs. These signs (or symptoms) are typically divided into two basic categories: somatic and psychological. Acedia frequently presents signs somatically. Such bodily symptoms range from mere sleepiness to general sickness or debility, along with a host of more specific symptoms: weakness in the knees, pain in the limbs, and fever.[citation needed] An anecdote attributed to the Desert Mother Amma Theodora[15] also connects somatic pain and illness with the onset of acedia. A host of psychological symptoms can also signify the presence of acedia, which affects the mental state and behavior of the afflicted. Some commonly reported psychological signs revolve around a lack of attention to daily tasks and an overall dissatisfaction with life. The best-known of the psychological signs of acedia is tedium, boredom or general laziness. Author Kathleen Norris in her book Acedia and Me asserts that dictionary definitions such as torpor and sloth fail to do justice to this temptation; she believes a state of restlessness, of not living in the present and seeing the future as overwhelming is more accurate a definition than straight laziness: it is especially present in monasteries, due to the cutting off of distractions, but can invade any vocation where the labor is long, the rewards slow to appear, such as scientific research, long term marriages, etc. Another sign is a lack of caring, of being unfeeling about things, whether that be your appearance, hygiene, your relationships, your community's welfare, the world's welfare etc.; all of this, Norris relates, is connected to the hopelessness and vague unease that arises from having too many choices, lacking true commitment, of being "a slave from within". She relates this to forgetfulness about "the one thing needful": remembrance of God.

In culture
Acedia plays an important role in the literary criticism of Walter Benjamin. In his study of baroque literature, The Origin of German Tragic Drama, Benjamin describes acedia as a moral failing, an "indolence of the heart" that ruins great men. Benjamin considers acedia to be a key feature of many baroque tragic heroes, from the minor dramatic figures of German tragedy to Shakespeare's Hamlet: "The indecisiveness of the prince, in particular, is nothing other than saturnine acedia." It is this slothful inability to make decisions that leads baroque tragic heroes to passively accept their fate, rather than resisting it in the heroic manner of classical tragedy.[16]
Roger Fry saw acedia or gloominess as a twentieth century peril to be fought by a mixture of work and of determined pleasure in life.[17]
Anton Chekhov and Samuel Beckett's plays often have themes of acedia.
Aldous Huxley wrote an essay on acedia called "Accidie". A non-Christian, he examines "the noon day demons" original delineation by the Desert Fathers, and concludes that it is one of the main diseases of the modern age.
The writer David J. Cord claimed acedia can even affect an entire organization, and in The Decline and Fall of Nokia cites a culture of acedia as a prime cause for the collapse of Nokia's mobile device unit.[18]
The Manic Street Preachers song "Of Walking Abortion", which appears on their 1994 album The Holy Bible, refers in its lyrics to "acedia's blackest hole". Both the song and the album on which it appears explore themes of nihilism, despair and mental illness.




Anhedonia
https://en.wikipedia.org/wiki/Anhedonia#Definition

Anhedonia is a diverse array of deficits in hedonic function, including reduced motivation or ability to experience pleasure.[1] While earlier definitions emphasized the inability to experience pleasure, anhedonia is currently used by researchers to refer to reduced motivation, reduced anticipatory pleasure (wanting), reduced consummatory pleasure (liking), and deficits in reinforcement learning.[2][3][4] In the DSM-5, anhedonia is a component of depressive disorders, substance-related disorders, psychotic disorders, and personality disorders, where it is defined by either a reduced ability to experience pleasure, or a diminished interest in engaging in pleasurable activities.[5][6] While the ICD-10 does not explicitly mention anhedonia, the depressive symptom analogous to anhedonia as described in the DSM-V is a loss of interest or pleasure.[3]






Weltschmerz
https://en.wikipedia.org/wiki/Weltschmerz#Further_examples
For the Canadian comic strip, see Weltschmerz (comic strip).

Melancholic figure of a poet. Engraving by J. de Ribera.
Weltschmerz (from the German, literally world-pain, also world-weariness, pronounced [ˈvɛltʃmɛɐ̯ts]) is a term coined by the German author Jean Paul in his 1827 novel Selina.[1] In its original meaning in the Deutsches Wörterbuch by Brothers Grimm, it denotes a deep sadness about the inadequacy or imperfection of the world (tiefe Traurigkeit über die Unzulänglichkeit der Welt). The translation can differ depending on context, in reference to the self it can mean "world weariness", in reference to the world it can mean "the pain of the world". [2]

This kind of world view was widespread among several romantic and decadent authors such as Lord Byron, Oscar Wilde, William Blake, the Marquis de Sade, Charles Baudelaire, Giacomo Leopardi, Paul Verlaine, François-René de Chateaubriand, Alfred de Musset, Mikhail Lermontov, Nikolaus Lenau,[3] Hermann Hesse,[4] and Heinrich Heine.[3]

Frederick C. Beiser defines Weltschmerz more broadly as "a mood of weariness or sadness about life arising from the acute awareness of evil and suffering",[5] and notes that by the 1860s the word was used ironically in Germany to refer to oversensitivity to those same concerns.

In Tropic of Cancer, Henry Miller describes an acquaintance, "Moldorf", who has prescriptions for Weltschmerz on scraps of paper in his pocket. John Steinbeck wrote about this feeling in two of his novels; in East of Eden, Samuel Hamilton feels it after meeting Cathy Trask for the first time, and it is referred to as the Welshrats in The Winter of Our Discontent. Ralph Ellison uses the term in Invisible Man with regard to the pathos inherent in the singing of spirituals: "beneath the swiftness of the hot tempo there was a slower tempo and a cave and I entered it and looked around and heard an old woman singing a spiritual as full of Weltschmerz as flamenco". Kurt Vonnegut references the feeling in his novel Player Piano, in which it is felt by Doctor Paul Proteus and his father. In John D. MacDonald's novel "Free Fall in Crimson", Travis McGee describes Weltschmerz as "homesickness for a place you have never seen."





Mean world syndrome
https://en.wikipedia.org/wiki/Mean_world_syndrome
Mean world syndrome is a hypothesized cognitive bias wherein people may perceive the world to be more dangerous than it actually is, due to long-term moderate to heavy exposure to violence-related content on mass media.[1]

Proponents of the syndrome—which was coined by communications professor George Gerbner in the 1970s—assert that viewers who are exposed to violence-related content can experience increased fear, anxiety, pessimism and heightened state of alert in response to perceived threats.[2][3] This is because media (namely television) consumed by viewers has the power to directly influence and inform their attitudes, beliefs and opinions about the world.

History
The term mean world syndrome was coined in the late-1960s by U.S. communications professor George Gerbner, whose life's work explored the effects of television on viewers.

Cultural Indicators Project and cultivation theory
In 1968, Gerbner establish the Cultural Indicators Project (CIP), which was a pioneering analysis of the influence of television on people's attitudes and perceptions of the world.[4] Holding a database of more than 3,000 television programs and 35,000 characters, this project documented the trends in television content and how these changes affect viewers' perceptions of the world.[5][6]

The CIP would notably be used to analyze Gerbner's cultivation theory, which suggests that exposure to media, over time, "cultivates" viewers' perceptions of reality through images and ideological messages viewed on primetime or popular television. This content heavily influences the perception of events and thus can skew one's perception of the real world. Cultivation theory asserts that "the more time people spend 'living' in the television world, the more likely they are to believe social reality aligns with reality portrayed on television."[7] In 1968, Gerbner conducted a survey to validate cultivation theory and his hypothesis that watching extensive TV affects the attitudes and beliefs of an individual toward the world. Categorizing survey respondents into three groups—"light viewers" (less than 2 hours a day), "medium viewers" (2–4 hours a day), and "heavy viewers" (more than 4 hours a day)—Gerbner found that the latter group held beliefs and opinions similar to those portrayed on television rather than ones based in real-world circumstances, demonstrating the compound effect of media influence.[8] These "heavy viewers" experienced shyness, loneliness, and depression much more than those who did not watch television or who did not watch television nearly as much.[9]

Accordingly, cultivation theory laid the theoretical groundwork for the mean world syndrome, which Gerbner defined in the CIP as the phenomenon in which people who watch moderate to large amounts of television are more likely to perceive the world as a dangerous and frightening place.[6]

Research findings
The findings of the Cultural Indicators Project confirmed many of Gerbner's hypotheses. Gerbner found a direct correlation between the amount of television one watches and the amount of fear one tends to have about being victimized in everyday life.[3] That is, people who watched moderate to high levels of television perceived the world to be a more intimidating and unforgiving place than viewers who watched less television.[3] Furthermore, viewers who consumed television at a higher rate also believed that greater protection by law enforcement is needed and reported that most people "cannot be trusted" and are "just looking out for themselves".[1] These findings amplified Gerbner's concerns about exposure to media violence because as he said, "The consequence of regular or heavy viewing of television is a normalization of unhealthy and violent behavior. It is a cultivation that the concept [of violence] is normal and accepted in society."[2]

Gerbner was particularly concerned about the impact violent media was having on children. During the CIP, Gerbner found that children had seen about 8,000 murders on television by the end of elementary school, and about 200,000 violent acts by the age of 18.[3] "Our studies have shown that growing up from infancy with this unprecedented diet of violence has three consequences, which, in combination, I call the 'mean world syndrome'," Gerber stated.[10] He continued:[10]

What this means is that if you are growing up in a home where there is more than say three hours of television per day, for all practical purposes you live in a meaner world - and act accordingly - than your next-door neighbor who lives in the same world but watches less television. The programming reinforces the worst fears and apprehensions and paranoia of people.

In 1981, Gerbner took his findings and testified before a congressional subcommittee about the damage he believed violent media was inflicting on Americans, particularly children. "Fearful people are more dependent, more easily manipulated and controlled, more susceptible to deceptively simple, strong, tough measures and hard-line measures," he explained.[11] Since then, hundreds of studies and countless congressional hearings have looked at the issue of media violence and the same conclusion is always drawn—television can propagate violent conduct and skew people's perceptions of violence and crime.[3]

The Mean World Index
The findings of the cultivation theory study led Gerbner and Larry Gross to further develop it in 1976 using findings from their several large-scale research projects.[12][13] Believing that "who tells the stories of a culture really governs human behavior," Gerbner claimed that a major cultural shift was taking place, wherein such storytellers "used to be the parent, the school, the church, the community," but is now "a handful of global conglomerates that have nothing to tell, but a great deal to sell."[10] Using the theory, Gerbner would explore the effects of violence-related content on TV on the attitudes and beliefs of an individual about crime and violence in the world, which he dubbed The Mean World Index.[13] Since TV was becoming an ever-increasing presence in the average American household and the amount of violence on TV was growing exponentially, Gerbner conducted several large-scale studies that upheld his hypothesis: those who watched moderate to large amounts of TV believed the world to be a more dangerous place.







Cognitive bias
https://en.wikipedia.org/wiki/Cognitive_bias
A cognitive bias is a systematic pattern of deviation from norm or rationality in judgment.[1] Individuals create their own "subjective reality" from their perception of the input. An individual's construction of reality, not the objective input, may dictate their behavior in the world. Thus, cognitive biases may sometimes lead to perceptual distortion, inaccurate judgment, illogical interpretation, or what is broadly called irrationality.[2][3][4]

Although it may seem like such misperceptions would be aberrations, biases can help humans find commonalities and shortcuts to assist in the navigation of common situations in life.[5]

Some cognitive biases are presumably adaptive. Cognitive biases may lead to more effective actions in a given context.[6] Furthermore, allowing cognitive biases enables faster decisions which can be desirable when timeliness is more valuable than accuracy, as illustrated in heuristics.[7] Other cognitive biases are a "by-product" of human processing limitations,[1] resulting from a lack of appropriate mental mechanisms (bounded rationality), impact of individual's constitution and biological state (see embodied cognition), or simply from a limited capacity for information processing.[8][9]

A continually evolving list of cognitive biases has been identified over the last six decades of research on human judgment and decision-making in cognitive science, social psychology, and behavioral economics. Daniel Kahneman and Tversky (1996) argue that cognitive biases have efficient practical implications for areas including clinical judgment, entrepreneurship, finance, and management.[10][11]





List of cognitive biases
https://en.wikipedia.org/wiki/List_of_cognitive_biases
Cognitive biases are systematic patterns of deviation from norm and/or rationality in judgment. They are often studied in psychology and behavioral economics.[1]

Although the reality of most of these biases is confirmed by reproducible research,[2][3] there are often controversies about how to classify these biases or how to explain them.[4] Several theoretical causes are known for some cognitive biases, which provides a classification of biases by their common generative mechanism (such as noisy information-processing[5]). Gerd Gigerenzer has criticized the framing of cognitive biases as errors in judgment, and favors interpreting them as arising from rational deviations from logical thought.[6]

Explanations include information-processing rules (i.e., mental shortcuts), called heuristics, that the brain uses to produce decisions or judgments. Biases have a variety of forms and appear as cognitive ("cold") bias, such as mental noise,[5] or motivational ("hot") bias, such as when beliefs are distorted by wishful thinking. Both effects can be present at the same time.[7][8]

There are also controversies over some of these biases as to whether they count as useless or irrational, or whether they result in useful attitudes or behavior. For example, when getting to know others, people tend to ask leading questions which seem biased towards confirming their assumptions about the person. However, this kind of confirmation bias has also been argued to be an example of social skill; a way to establish a connection with the other person.[9]

Although this research overwhelmingly involves human subjects, some findings that demonstrate bias have been found in non-human animals as well. For example, loss aversion has been shown in monkeys and hyperbolic discounting has been observed in rats, pigeons, and monkeys.[10]





The Cognitive Bias Codex: A Visual Of 180+ Cognitive Biases
https://upload.wikimedia.org/wikipedia/commons/6/65/Cognitive_bias_codex_en.svg


& https://www.teachthought.com/critical-thinking/the-cognitive-bias-codex-a-visual-of-180-cognitive-biases/
by Terry Heick

A cognitive bias is an inherent thinking ‘blind spot’ that reduces thinking accuracy and results inaccurate–and often irrational–conclusions.

Much like logical fallacies, cognitive biases can be viewed as either as causes or effects but can generally be reduced to broken thinking. Not all ‘broken thinking,’ blind spots, and failures of thought are labeled, of course. But some are so common that they are given names–and once named, they’re easier to identify, emphasize, analyze, and ultimately avoid.

And that’s where this list comes in.

Cognitive Bias –> Confirmation Bias

For example, consider confirmation bias.

In What Is Confirmation Bias? we looked at this very common thinking mistake: the tendency to overvalue data and observation that fits with our existing beliefs.

The pattern is to form a theory (often based on emotion) supported with insufficient data, and then to restrict critical thinking and ongoing analysis, which is, of course, irrational. Instead, you look for data that fits your theory.

While it seems obvious enough to avoid, confirmation bias is particularly sinister cognitive bias, affecting not just intellectual debates, but relationships, personal finances, and even your physical and mental health. Racism and sexism, for example, can both be deepened by confirmation bias. If you have an opinion on gender roles, it can be tempting to look for ‘data’ from your daily life that reinforce your opinion on those roles.

This is, of course, all much more complex than the above thumbnail. The larger point, however, is that a failure of rational and critical thinking is not just ‘wrong’ but erosive and even toxic not just in academia, but every level of society.

The Cognitive Bias Codex: A Visual Of 180+ Cognitive Biases

And that’s why a graphic like this is so extraordinary. In a single image, we have delineated dozens and dozens of these ‘bad cognitive patterns’ that, as a visual, underscores how commonly our thinking fails us–and a result, where we might begin to improve. Why and how to accomplish this is in a modern circumstance is at the core of TeachThought’s mission.

The graphic is structure as a circle with four quadrants categorizing the cognitive biases into four categories:

1. Too Much Information

2. Not Enough Meaning

3. Need To Act Fast

4. What Should We Remember?

We’ve listed each fallacy below moving clockwise from ‘Too Much Information’ to ‘What Should We Remember?’ Obviously, this list isn’t exhaustive–and there are even subjectivities and cultural biases embedded within (down to some of the biases themselves–the ‘IKEA effect,’ for example). The premise, though, remains intact: What are our most common failures of rational and critical thinking, and how can we avoid them in pursuit of academic and sociocultural progress?

So take a look and let me know what you think. There’s even an updated version of this graphic with all of the definitions for each of the biases–which I personally love, but is difficult to read.

Image description: Wikipedia’s complete (as of 2016) list of cognitive biases, arranged and designed by John Manoogian III. Categories and descriptions originally by Buster Benson.



Every Single Cognitive Bias in One Infographic
https://www.visualcapitalist.com/every-single-cognitive-bias/
&
https://www.visualcapitalist.com/wp-content/uploads/2017/09/cognitive-bias-infographic.html

The human brain is capable of incredible things, but it’s also extremely flawed at times.

Science has shown that we tend to make all sorts of mental mistakes, called “cognitive biases”, that can affect both our thinking and actions. These biases can lead to us extrapolating information from the wrong sources, seeking to confirm existing beliefs, or failing to remember events the way they actually happened!

To be sure, this is all part of being human – but such cognitive biases can also have a profound effect on our endeavors, investments, and life in general. For this reason, today’s infographic from DesignHacks.co is particularly handy. It shows and groups each of the 188 known confirmation biases in existence.

What is a Cognitive Bias?
Humans tend to think in certain ways that can lead to systematic deviations from making rational judgments.

These tendencies usually arise from:

Information processing shortcuts
The limited processing ability of the brain
Emotional and moral motivations
Distortions in storing and retrieving memories
Social influence
Cognitive biases have been studied for decades by academics in the fields of cognitive science, social psychology, and behavioral economics, but they are especially relevant in today’s information-packed world. They influence the way we think and act, and such irrational mental shortcuts can lead to all kinds of problems in entrepreneurship, investing, or management.

Cognitive Bias Examples
Here are four examples of how these types of biases can affect people in the business world:

Familiarity Bias: An investor puts her money in “what she knows”, rather than seeking the obvious benefits from portfolio diversification. Just because a certain type of industry or security is familiar doesn’t make it the logical selection.

Self-Attribution Bias: An entrepreneur overly attributes his company’s success to himself, rather than other factors (team, luck, industry trends). When things go bad, he blames these external factors for derailing his progress.

Anchoring Bias: An employee in a salary negotiation is too dependent on the first number mentioned in the negotiations, rather than rationally examining a range of options.

Survivorship Bias: Entrepreneurship looks easy, because there are so many successful entrepreneurs out there. However, this is a cognitive bias: the successful entrepreneurs are the ones still around, while the millions who failed went and did other things.





Felicific calculus
https://en.wikipedia.org/wiki/Felicific_calculus#Bentham's_instructions
The felicific calculus is an algorithm formulated by utilitarian philosopher Jeremy Bentham (1747–1832) for calculating the degree or amount of pleasure that a specific action is likely to cause. Bentham, an ethical hedonist, believed the moral rightness or wrongness of an action to be a function of the amount of pleasure or pain that it produced. The felicific calculus could, in principle at least, determine the moral status of any considered act. The algorithm is also known as the utility calculus, the hedonistic calculus and the hedonic calculus.

To be included in this calculation are several variables (or vectors), which Bentham called "circumstances". These are:

Intensity: How strong is the pleasure?
Duration: How long will the pleasure last?
Certainty or uncertainty: How likely or unlikely is it that the pleasure will occur?
Propinquity or remoteness: How soon will the pleasure occur?
Fecundity: The probability that the action will be followed by sensations of the same kind.
Purity: The probability that it will not be followed by sensations of the opposite kind.
Extent: How many people will be affected?

Bentham's instructions
To take an exact account of the general tendency of any act, by which the interests of a community are affected, proceed as follows. Begin with any one person of those whose interests seem most immediately to be affected by it: and take an account,

Of the value of each distinguishable pleasure which appears to be produced by it in the first instance.
Of the value of each pain which appears to be produced by it in the first instance.
Of the value of each pleasure which appears to be produced by it after the first. This constitutes the fecundity of the first pleasure and the impurity of the first pain.
Of the value of each pain which appears to be produced by it after the first. This constitutes the fecundity of the first pain, and the impurity of the first pleasure.
Sum up all the values of all the pleasures on the one side, and those of all the pains on the other. The balance, if it be on the side of pleasure, will give the good tendency of the act upon the whole, with respect to the interests of that individual person; if on the side of pain, the bad tendency of it upon the whole.
Take an account of the number of persons whose interests appear to be concerned; and repeat the above process with respect to each. Sum up the numbers expressive of the degrees of good tendency, which the act has, with respect to each individual, in regard to whom the tendency of it is good upon the whole. Do this again with respect to each individual, in regard to whom the tendency of it is bad upon the whole. Take the balance which if on the side of pleasure, will give the general good tendency of the act, with respect to the total number or community of individuals concerned; if on the side of pain, the general evil tendency, with respect to the same community.[1]
To make his proposal easier to remember, Bentham devised what he called a "mnemonic doggerel" (also referred to as "memoriter verses"), which synthesized "the whole fabric of morals and legislation":

Intense, long, certain, speedy, fruitful, pure—
Such marks in pleasures and in pains endure.
Such pleasures seek if private be thy end:
If it be public, wide let them extend
Such pains avoid, whichever be thy view:
If pains must come, let them extend to few.

Hedons and dolors
The units of measurements used in the felicific calculus may be termed hedons and dolors.[2] They may be regarded as similar to the utilitarian posends and negends.

See also
Act utilitarianism
Ethical calculus
Science of morality





Invisible hand
https://en.wikipedia.org/wiki/Invisible_hand#Pre-Adam_Smith

he Invisible Hand is an economic concept that was first introduced by Adam Smith in The Theory of Moral Sentiments, written in 1759. The Invisible Hand is a metaphor describing the unintended greater social benefits and public good brought about by individuals acting in their own self-interests[1][2] though according to Smith it was literally Divine Providence, that is, the hand of God working to make this happen.[3]

By the time he wrote The Wealth of Nations in 1776, Smith had studied the economic models of the French Physiocrats for many years, and in this work, the invisible hand is more directly linked to production, to the employment of capital in support of domestic industry. The only use of "invisible hand" found in The Wealth of Nations is in Book IV, Chapter II, "Of Restraints upon the Importation from Foreign Countries of such Goods as can be produced at Home." The exact phrase is used just three times in Smith's writings.

Smith may have come up with the two meanings of the phrase from Richard Cantillon who developed both economic applications in his model of the isolated estate.[4]

The idea of trade and market exchange automatically channeling self-interest toward socially desirable ends is a central justification for the laissez-faire economic philosophy, which lies behind neoclassical economics.[5] In this sense, the central disagreement between economic ideologies can be viewed as a disagreement about how powerful the "invisible hand" is. In alternative models, forces that were nascent during Smith's lifetime, such as large-scale industry, finance, and advertising, reduce its effectiveness.[6]

Interpretations of the term have been generalized beyond the usage by Smith.


The Theory of Moral Sentiments
The first appearance in the Western world of the invisible hand in Smith occurs in The Theory of Moral Sentiments (1759) in Part IV, Chapter 1, where he describes a selfish landlord as being led by an invisible hand to distribute his harvest to those who work for him:

The proud and unfeeling landlord views his extensive fields, and without a thought for the wants of his brethren, in imagination consumes himself the whole harvest ... [Yet] the capacity of his stomach bears no proportion to the immensity of his desires ... the rest he will be obliged to distribute among those, who prepare, in the nicest manner, that little which he himself makes use of, among those who fit up the palace in which this little is to be consumed, among those who provide and keep in order all the different baubles and trinkets which are employed in the economy of greatness; all of whom thus derive from his luxury and caprice, that share of the necessaries of life, which they would in vain have expected from his humanity or his justice...The rich only select from the heap what is most precious and agreeable. They consume little more than the poor, and in spite of their natural selfishness and rapacity, though they mean only their own conveniency, though the sole end which they propose from the labours of all the thousands whom they employ, be the gratification of their own vain and insatiable desires, they divide with the poor the produce of all their improvements...They are led by an invisible hand to make nearly the same distribution of the necessaries of life, which would have been made, had the earth been divided into equal portions among all its inhabitants, and thus without intending it, without knowing it, advance the interest of the society, and afford means to the multiplication of the species. When Providence divided the earth among a few lordly masters, it neither forgot nor abandoned those who seemed to have been left out in the partition.

Far from extoling the virtues of the “invisible hand” the overall tone of this passage is one which questions the distribution of wealth and laments the fact that the poor receive the “necessities of life” after the rich have gratified “their own vain and insatiable desires". Although elsewhere in The Theory of Moral Sentiments, Smith has described the desire of men to be respected by the members of the community in which they live, and the desire of men to feel that they are honorable beings.

The Wealth of Nations
Adam Smith uses the metaphor in Book IV, Chapter II, paragraph IX of The Wealth of Nations.

But the annual revenue of every society is always precisely equal to the exchangeable value of the whole annual produce of its industry, or rather is precisely the same thing with that exchangeable value. As every individual, therefore, endeavours as much as he can both to employ his capital in the support of domestic industry, and so to direct that industry that its produce may be of the greatest value, every individual necessarily labours to render the annual revenue of the society as great as he can. He generally, indeed, neither intends to promote the public interest, nor knows how much he is promoting it. By preferring the support of domestic to that of foreign industry, he intends only his own security; and by directing that industry in such a manner as its produce may be of the greatest value, he intends only his own gain, and he is in this, as in many other cases, led by an invisible hand to promote an end which was no part of his intention. Nor is it always the worse for the society that it was not part of it. By pursuing his own interest he frequently promotes that of the society more effectually than when he really intends to promote it. I have never known much good done by those who affected to trade for the public good. It is an affectation, indeed, not very common among merchants, and very few words need be employed in dissuading them from it.

Using the invisible hand metaphor, Smith was trying to present how an individual exchanging money in his own self-interest unintentionally impacts the economy as a whole. In other words, there is something that binds self-interest, along with public interest, so that individuals who pursue their own interests will inevitably benefit society as a whole. It is worth noting that this representation of the "invisible hand" occurred during the tumultuous year of America's independence. "Given this timing, there is every possibly that this more positive connotation was a direct result of a Scotsman reflecting on the potential positive implications of America Revolution and seeking to enlighten the world about how a nation could operate outside the control of the landed gentry."[10]

Other uses of the phrase by Smith
Only in The History of Astronomy (written before 1758) Smith speaks of the invisible hand, to which ignorants refer to explain natural phenomena otherwise unexplainable:

Fire burns, and water refreshes; heavy bodies descend, and lighter substances fly upwards, by the necessity of their own nature; nor was the invisible hand of Jupiter ever apprehended to be employed in those matters.[11]

In The Theory of Moral Sentiments (1759) and in The Wealth of Nations (1776) Adam Smith speaks of an invisible hand, never of the invisible hand. In The Theory of Moral Sentiments Smith uses the concept to sustain a "trickling down" theory, a concept also used in neoclassical development theory: The gluttony of the rich serves to feed the poor.

The rich … consume little more than the poor, and in spite of their natural selfishness and rapacity, though they mean only their own conveniency, though the sole end which they propose from the labours of all the thousands whom they employ, be the gratification of their own vain and insatiable desires, they divide with the poor the produce of all their improvements. They are led by an invisible hand [emphasis added] to make nearly the same distribution of the necessaries of life, which would have been made, had the earth been divided into equal portions among all its inhabitants, and thus without intending it, without knowing it, advance the interest of the society, and afford means to the multiplication of the species. When Providence divided the earth among a few lordly masters, it neither forgot nor abandoned those who seemed to have been left out in the partition. These last too enjoy their share of all that it produces. In what constitutes the real happiness of human life, they are in no respect inferior to those who would seem so much above them. In ease of body and peace of mind, all the different ranks of life are nearly upon a level, and the beggar, who suns himself by the side of the highway, possesses that security which kings are fighting for.[12]

Smith's visit to France and his acquaintance to the French Économistes (known as Physiocrats) changed his views from micro-economic optimisation to macro-economic growth as the end of Political Economy. So the landlord's gluttony in The Theory of Moral Sentiments is denounced in the Wealth of Nations as unproductive labour. Walker, the first president (1885 to 92) of the American Economic Association, concurred:

The domestic servant … is not employed as a means to his master's profit. His master's income is not due in any part to his employment; on the contrary, that income is first acquired … and in the amount of the income is determined whether the servant shall be employed or not, while to the full extent of that employment the income is diminished. As Adam Smith expresses it "a man grows rich by employing a multitude of manufacturers; he grows poor by maintaining a multitude of menial servants."[13]

Smith's theoretical U-turn from a micro-economical to a macro-economical view is not reflected in The Wealth of Nations. Large parts of this book are retaken from Smith's lectures before his visit to France. So one must distinguish in The Wealth of Nations a micro-economical and a macro-economical Adam Smith. Whether Smith's quotation of an invisible hand in the middle of his work is a micro-economical statement or a macro-economical statement condemning monopolies and government interferences as in the case of tariffs and patents is debatable.

Economist's interpretation
The concept of the "invisible hand" is nearly always generalized beyond Smith's original uses. The phrase was not popular among economists before the twentieth century; Alfred Marshall never used it in his Principles of Economics[14] textbook and neither does William Stanley Jevons in his Theory of Political Economy.[15] Paul Samuelson cites it in his Economics textbook in 1948:

Even Adam Smith, the canny Scot whose monumental book, "The Wealth of Nations" (1776), represents the beginning of modern economics or political economy-even he was so thrilled by the recognition of an order in the economic system that he proclaimed the mystical principle of the "invisible hand": that each individual in pursuing his own selfish good was led, as if by an invisible hand, to achieve the best good of all, so that any interference with free competition by government was almost certain to be injurious. This unguarded conclusion has done almost as much harm as good in the past century and a half, especially since too often it is all that some of our leading citizens remember, 30 years later, of their college course in economics.[16]

In this interpretation, the theory is that the Invisible Hand states that if each consumer is allowed to choose freely what to buy and each producer is allowed to choose freely what to sell and how to produce it, the market will settle on a product distribution and prices that are beneficial to all the individual members of a community, and hence to the community as a whole. The reason for this is that self-interest drives actors to beneficial behavior in a case of serendipity. Efficient methods of production are adopted to maximize profits. Low prices are charged to maximize revenue through gain in market share by undercutting competitors.[citation needed] Investors invest in those industries most urgently needed to maximize returns, and withdraw capital from those less efficient in creating value. All these effects take place dynamically and automatically.[citation needed]

Since Smith's time, this concept has been further incorporated into economic theory. Léon Walras developed a four-equation general equilibrium model that concludes that individual self-interest operating in a competitive market place produces the unique conditions under which a society's total utility is maximized. Vilfredo Pareto used an Edgeworth box contact line to illustrate a similar social optimality. Ludwig von Mises, in Human Action uses the expression "the invisible hand of Providence", referring to Marx's period, to mean evolutionary meliorism.[17] He did not mean this as a criticism, since he held that secular reasoning leads to similar conclusions. Milton Friedman, a Nobel Memorial Prize winner in economics, called Smith's Invisible Hand "the possibility of cooperation without coercion."[18] Kaushik Basu has called the First Welfare Theorem the Invisible Hand Theorem.[19]

Some economists question the integrity of how the term "invisible hand" is currently used. Gavin Kennedy, Professor Emeritus at Heriot-Watt University in Edinburgh, Scotland, argues that its current use in modern economic thinking as a symbol of free market capitalism is not reconcilable with the rather modest and indeterminate manner in which it was employed by Smith.[20] In response to Kennedy, Daniel Klein argues that reconciliation is legitimate. Moreover, even if Smith did not intend the term "invisible hand" to be used in the current manner, its serviceability as such should not be rendered ineffective.[21] In conclusion of their exchange, Kennedy insists that Smith's intentions are of utmost importance to the current debate, which is one of Smith's association with the term "invisible hand". If the term is to be used as a symbol of liberty and economic coordination as it has been in the modern era, Kennedy argues that it should exist as a construct completely separate from Adam Smith since there is little evidence that Smith imputed any significance onto the term, much less the meanings given it at present.[22]

The former Drummond Professor of Political Economy at Oxford, D. H. MacGregor, argued that:

The one case in which he referred to the ‘invisible hand’ was that in which private persons preferred the home trade to the foreign trade, and he held that such preference was in the national interest, since it replaced two domestic capitals while the foreign trade replaced only one. The argument of the two capitals was a bad one, since it is the amount of capital that matters, not its subdivision; but the invisible sanction was given to a Protectionist idea, not for defence but for employment. It is not surprising that Smith was often quoted in Parliament in support of Protection. His background, like ours today, was private enterprise; but any dogma of non-intervention by government has to make heavy weather in The Wealth of Nations.[23]

Harvard economist Stephen Marglin argues that while the "invisible hand" is the "most enduring phrase in Smith's entire work", it is "also the most misunderstood."

Economists have taken this passage to be the first step in the cumulative effort of mainstream economics to prove that a competitive economy provides the largest possible economic pie (the so-called first welfare theorem, which demonstrates the Pareto optimality of a competitive regime). But Smith, it is evident from the context, was making a much narrower argument, namely, that the interests of businessmen in the security of their capital would lead them to invest in the domestic economy even at the sacrifice of somewhat higher returns that might be obtainable from foreign investment. . . .

David Ricardo . . . echoed Smith . . . [but] Smith's argument is at best incomplete, for it leaves out the role of foreigners' investment in the domestic economy. It would have to be shown that the gain to the British capital stock from the preference of British investors for Britain is greater than the loss to Britain from the preference of Dutch investors for the Netherlands and French investors for France."[24]

According to Emma Rothschild, Smith was actually being ironic in his use of the term.[25] Warren Samuels described it as "a means of relating modern high theory to Adam Smith and, as such, an interesting example in the development of language."[26]

Understood as a metaphor
Smith uses the metaphor in the context of an argument against protectionism and government regulation of markets, but it is based on very broad principles developed by Bernard Mandeville, Bishop Butler, Lord Shaftesbury, and Francis Hutcheson. In general, the term "invisible hand" can apply to any individual action that has unplanned, unintended consequences, particularly those that arise from actions not orchestrated by a central command, and that have an observable, patterned effect on the community.

Bernard Mandeville argued that private vices are actually public benefits. In The Fable of the Bees (1714), he laments that the "bees of social virtue are buzzing in Man's bonnet": that civilized man has stigmatized his private appetites and the result is the retardation of the common good.

Bishop Butler argued that pursuing the public good was the best way of advancing one's own good since the two were necessarily identical.

Lord Shaftesbury turned the convergence of public and private good around, claiming that acting in accordance with one's self-interest produces socially beneficial results. An underlying unifying force that Shaftesbury called the "Will of Nature" maintains equilibrium, congruency, and harmony. This force, to operate freely, requires the individual pursuit of rational self-interest, and the preservation and advancement of the self.

Francis Hutcheson also accepted this convergence between public and private interest, but he attributed the mechanism, not to rational self-interest, but to personal intuition, which he called a "moral sense". Smith developed his own version of this general principle in which six psychological motives combine in each individual to produce the common good. In The Theory of Moral Sentiments, vol. II, page 316, he says, "By acting according to the dictates of our moral faculties, we necessarily pursue the most effective means for promoting the happiness of mankind."

Contrary to common misconceptions, Smith did not assert that all self-interested labour necessarily benefits society, or that all public goods are produced through self-interested labour. His proposal is merely that in a free market, people usually tend to produce goods desired by their neighbours. The tragedy of the commons is an example where self-interest tends to bring an unwanted result.

The invisible hand is traditionally understood as a concept in economics, but Robert Nozick argues in Anarchy, State and Utopia that substantively the same concept exists in a number of other areas of academic discourse under different names, notably Darwinian natural selection. In turn, Daniel Dennett argues in Darwin's Dangerous Idea that this represents a "universal acid" that may be applied to a number of seemingly disparate areas of philosophical inquiry (consciousness and free will in particular), a hypothesis known as Universal Darwinism. However, positing an economy guided by this principle as ideal may amount to Social Darwinism, which is also associated with champions of laissez-faire capitalism.

Tawney's interpretation
Christian socialist R. H. Tawney saw Smith as putting a name on an older idea:

If preachers have not yet overtly identified themselves with the view of the natural man, expressed by an eighteenth-century writer in the words, trade is one thing and religion is another, they imply a not very different conclusion by their silence as to the possibility of collisions between them. The characteristic doctrine was one, in fact, which left little room for religious teaching as to economic morality, because it anticipated the theory, later epitomized by Adam Smith in his famous reference to the invisible hand, which saw in economic self-interest the operation of a providential plan... The existing order, except insofar as the short-sighted enactments of Governments interfered with it, was the natural order, and the order established by nature was the order established by God. Most educated men, in the middle of the [eighteenth] century, would have found their philosophy expressed in the lines of Pope:

Thus God and Nature formed the general frame,
And bade self-love and social be the same.
Naturally, again, such an attitude precluded a critical examination of institutions, and left as the sphere of Christian charity only those parts of life that could be reserved for philanthropy, precisely because they fell outside that larger area of normal human relations, in which the promptings of self-interest provided an all-sufficient motive and rule of conduct. (Religion and the Rise of Capitalism, pp. 191–192.)

Criticisms
Joseph E. Stiglitz
The Nobel Prize-winning economist Joseph E. Stiglitz, says: "the reason that the invisible hand often seems invisible is that it is often not there."[27][28] Stiglitz explains his position:

Adam Smith, the father of modern economics, is often cited as arguing for the "invisible hand" and free markets: firms, in the pursuit of profits, are led, as if by an invisible hand, to do what is best for the world. But unlike his followers, Adam Smith was aware of some of the limitations of free markets, and research since then has further clarified why free markets, by themselves, often do not lead to what is best. As I put it in my new book, Making Globalization Work, the reason that the invisible hand often seems invisible is that it is often not there. Whenever there are "externalities"—where the actions of an individual have impacts on others for which they do not pay, or for which they are not compensated—markets will not work well. Some of the important instances have long understood environmental externalities. Markets, by themselves, produce too much pollution. Markets, by themselves, also produce too little basic research. (The government was responsible for financing most of the important scientific breakthroughs, including the internet and the first telegraph line, and many bio-tech advances.) But recent research has shown that these externalities are pervasive, whenever there is imperfect information or imperfect risk markets—that is always. Government plays an important role in banking and securities regulation, and a host of other areas: some regulation is required to make markets work. Government is needed, almost all would agree, at a minimum to enforce contracts and property rights. The real debate today is about finding the right balance between the market and government (and the third "sector" – governmental non-profit organizations). Both are needed. They can each complement each other. This balance differs from time to time and place to place.[28]

The preceding claim is based on Stiglitz's 1986 paper, "Externalities in Economies with Imperfect Information and Incomplete Markets",[29] which describes a general methodology to deal with externalities and for calculating optimal corrective taxes in a general equilibrium context. In it he considers a model with households, firms and a government.

Households maximize a utility function {\displaystyle u^{h}(x^{h},z^{h})}u^{{h}}(x^{{h}},z^{{h}}), where {\displaystyle x^{h}}x^{{h}} is the consumption vector and {\displaystyle z^{h}}z^{{h}} are other variables affecting the utility of the household (e.g. pollution). The budget constraint is given by {\displaystyle x_{1}^{h}+q\cdot {\bar {x}}^{h}\leq I^{h}+\sum a^{hf}\cdot \pi ^{f}}x_{{1}}^{{h}}+q\cdot {\bar  {x}}^{{h}}\leq I^{{h}}+\sum a^{{hf}}\cdot \pi ^{{f}}, where q is a vector of prices, ahf the fractional holding of household h in firm f, πf the profit of firm f, Ih a lump sum government transfer to the household. The consumption vector can be split as {\displaystyle x^{h}=\left(x_{1}^{h},{\bar {x}}^{h}\right)}x^{{h}}=\left(x_{{1}}^{{h}},{\bar  {x}}^{{h}}\right).

Firms maximize a profit {\displaystyle \pi ^{f}=y_{1}^{f}+p\cdot {\bar {y}}_{1}}\pi ^{{f}}=y_{{1}}^{{f}}+p\cdot {\bar  {y}}_{{1}}, where yf is a production vector and p is vector of producer prices, subject to {\displaystyle y_{1}^{f}-G^{f}({\bar {y}}^{f},z^{f})\leq 0}y_{{1}}^{{f}}-G^{{f}}({\bar  {y}}^{{f}},z^{{f}})\leq 0, Gf a production function and zf are other variables affecting the firm. The production vector can be split as {\displaystyle y^{f}=\left(y_{1}^{f},{\bar {y}}^{f}\right)}y^{{f}}=\left(y_{{1}}^{{f}},{\bar  {y}}^{{f}}\right).

The government receives a net income {\displaystyle R=t\cdot {\bar {x}}-\sum I^{h}}R=t\cdot {\bar  {x}}-\sum I^{{h}}, where {\displaystyle t=(q-p)}{\displaystyle t=(q-p)} is a tax on the goods sold to households.

It can be shown that in general the resulting equilibrium is not efficient.

Proof
Noam Chomsky
See also: Equity home bias puzzle
Noam Chomsky suggests that Smith (and more specifically David Ricardo) sometimes used the phrase to refer to a "home bias" for investing domestically in opposition to offshore outsourcing production and neoliberalism.[30]

Rather interestingly, these issues were foreseen by the great founders of modern economics, Adam Smith for example. He recognized and discussed what would happen to Britain if the masters adhered to the rules of sound economics – what's now called neoliberalism. He warned that if British manufacturers, merchants, and investors turned abroad, they might profit but England would suffer. However, he felt that this wouldn't happen because the masters would be guided by a home bias. So as if by an invisible hand England would be spared the ravages of economic rationality. That passage is pretty hard to miss. It's the only occurrence of the famous phrase "invisible hand" in Wealth of Nations, namely in a critique of what we call neoliberalism.[31]

Stephen LeRoy
Stephen LeRoy, professor emeritus at the University of California, Santa Barbara, and a visiting scholar at the Federal Reserve Bank of San Francisco, offered a critique of the Invisible Hand, writing that "The single most important proposition in economic theory, first stated by Adam Smith, is that competitive markets do a good job allocating resources. (...) The financial crisis has spurred a debate about the proper balance between markets and government and prompted some scholars to question whether the conditions assumed by Smith...are accurate for modern economies.[32]

John D. Bishop
John D. Bishop, a professor who worked at Trent University, Peterborough, indicates that the invisible hand might be applied differently for merchants and manufacturers than how it’s applied with society. He wrote an article in 1995 titled "Adam Smith's Invisible Hand Argument", in which he suggests that Smith might be contradicting himself with the "Invisible Hand". He offers various critiques of the "Invisible Hand", and he writes that “the interest of business people are in fundamental conflict with the interest of society as a whole, and that business people pursue their personal goal at the expense of the public good”. Thus, Bishop indicates that the “business people” are in conflict with society over the same interests and that Adam Smith might be contradicting himself. According to Bishop, he also gives the impression that in Smith's book 'The Wealth of Nations,' there's a close saying that "the interest of merchants and manufacturers were fundamentally opposed of society in general, and they had an inherent tendency to deceive and oppress society while pursuing their own interests." Bishop also states that the "invisible hand argument applies only to investing capital in one's own country for a maximum profit." In other words, he suggests that the invisible hand applies to only the merchants and manufacturers and that they're not the invisible force that moves the economy. However, Bishop mentions that the argument “does not apply to the pursuit of self-interest (…) in any area outside of economic activities.”[33]

See also
Books
Essays on Philosophical Subjects by Adam Smith
I, Pencil by Leonard Read
The National Gain by Anders Chydenius
The Theory of Moral Sentiments by Adam Smith
The Visible Hand by Alfred Chandler
The Wealth of Nations by Adam Smith
Articles
Corporation
Emergence
Enlightened self-interest
Free price system
Laissez-faire
Market fundamentalism
Objectivism (Ayn Rand)
Opportunity cost
Philosophy of social science
Rational egoism
Spontaneous order
Trickle-down economics
"The Use of Knowledge in Society"
The Visible Hand: The Managerial Revolution in American Business
Vanishing Hand




The Use of Knowledge in Society
https://en.wikipedia.org/wiki/The_Use_of_Knowledge_in_Society

The Use of Knowledge in Society
https://www.kysq.org/docs/Hayek_45.pdf
From Wikipedia, the free encyclopedia
Jump to navigationJump to search
"The Use of Knowledge in Society" is a scholarly article written by economist Friedrich Hayek, first published in the September 1945 issue of The American Economic Review.[1][2]

Written (along with The Meaning of Competition) as a rebuttal to fellow economist Oskar R. Lange and his endorsement of a planned economy, it was included among the twelve essays in Hayek's 1948 compendium Individualism and Economic Order.[3]


Contents
1	Argument
2	Reception
3	Influence
4	See also
5	References
Argument
Hayek's article argues against the establishment of a Central Pricing Board (advocated by Lange) by highlighting the dynamic and organic nature of market price-fluctuations, and the benefits of this phenomenon.[4] He asserts that a centrally planned economy could never match the efficiency of the open market because what is known by a single agent is only a small fraction of the sum total of knowledge held by all members of society. A decentralized economy thus complements the dispersed nature of information spread throughout society.[5] In Hayek's words, "The marvel is that in a case like that of a scarcity of one raw material, without an order being issued, without more than perhaps a handful of people knowing the cause, tens of thousands of people whose identity could not be ascertained by months of investigation, are made to use the material or its products more sparingly; that is, they move in the right direction." The article also discusses the concepts of 'individual equilibrium' and of Hayek's notion of the divide between information which is useful and practicable versus that which is purely scientific or theoretical.[4]

Reception
"The Use of Knowledge in Society" was a sensation among economists, setting off a train of work in the economics of information and other areas, including the work of a number of future Nobel Prize winners, as noted by Nobel winner Leonid Hurwicz. UCLA economist Armen Alchian remembers the excitement of reading Hayek's essay and stopping fellow economists in the hallway to ask if they had read Hayek's essay. In 2011 "The Use of Knowledge in Society" was selected as one of the top 20 articles published in the American Economic Review during its first 100 years.[6]

Influence
Jimmy Wales cites "The Use of Knowledge in Society", which he read as an undergraduate,[7] as "central" to his thinking about "how to manage the Wikipedia project".[8] Hayek argued that information is decentralized – that knowledge is unevenly dispersed among different members of society – and that as a result, decisions are best made by those with local knowledge rather than by a central authority.[8]

See also
	Wikiquote has quotations related to: The Use of Knowledge in Society
Dispersed knowledge
Invisible hand
Opportunity cost
The Fatal Conceit: The Errors of Socialism, a book by Hayek
“I, Pencil”
References
 Friedrich Hayek (September 1945). "The Use of Knowledge in Society" (PDF). The American Economic Review. 35 (4): 519–530. JSTOR 1809376.

https://www.kysq.org/docs/Hayek_45.pdf







Portal:Capitalism
https://en.wikipedia.org/wiki/Portal:Capitalism



Dictator game
https://en.wikipedia.org/wiki/Dictator_game#Description
The dictator game is a popular experimental instrument in social psychology and economics,[1] a derivative of the ultimatum game. The term "game" is a misnomer because it captures a decision by a single player: to send money to another or not.[2] Thus, the dictator has the most power and holds the preferred position in this “game.” Although the “dictator” has the most power and presents a take it or leave it offer, the game has mixed results based on different behavioral attributes.[3] The results – where most "dictators" choose to send money – evidence the role of fairness and norms in economic behavior, and undermine the assumption of narrow self-interest when given the opportunity to maximise one's own profits.[4][5]


Description
The dictator game is a derivative of the ultimatum game, in which one player (the proposer) provides a one-time offer to the other (the responder). The responder can choose to either accept or reject the proposer’s bid, but rejecting the bid would result in both players receiving a payoff of 0. In the dictator game, the first player, "the dictator", determines how to split an endowment (such as a cash prize) between themselves and the second player.[6] (the recipient). The dictator's action space is complete and therefore is at their own will to determine the endowment, which ranges from giving nothing to giving all the endowment. The recipient has no influence over the outcome of the game, which means the recipient plays a passive role.

While the ultimatum game is informative, it can be considered too simple of a model when discussing most real-world negotiation situations. Real-world games tend to involve offers and counteroffers while the ultimatum game is simply player one placing forward a division of an amount that player 2 has to accept or reject. Based on this limited scope, it is expected that the second player will accept any offer they are given which is not necessarily seen in real world examples.[3]

Application
The initial game was developed by Daniel Kahneman in the 1980s and involved three parties, with one active and two passive participants. However, it was only in 1994 that a paper by Forsythe et al. simplified this to the contemporary form of this game with one decision-maker (the dictator) and one passive participant (the recipient). One would expect players to behave rationally and maximize their own payoffs, as shown by the homo economicus principle; however, it has been shown that human populations are more “benevolent than homo economicus” and therefore rarely do the majority give nothing to the recipient.[7]

In the original dictator game, the dictator and the recipient were randomly selected and completely unknown. However it was found that the result was different depending on the social distance between the two parties. The level of "social distance" that a dictator and the recipient has changes the ratio of endowment that the dictator is willing to give. If the dictator in the game has anonymity with the recipient, resulting in a high level of social distance, they are most likely to give less endowment. Whereas players with a low level of social distance, whether they are very familiar with each other or shallowly acquainted, are more likely to give a higher proportion of the endowment to the recipient.[5]

When players are within an organization, they most likely have a low level of social distance. Within organizations, altruism and prosocial behavior are heavily relied on in dictator games for optimal organizational output. Prosocial behavior encourages the “intention of promoting the welfare of the individual, group, or organization toward which it is directed” (Brief and Motowildo, 1986, p 711).

Experiments
In 1988 a group of researchers at the University of Iowa conducted a controlled experiment to evaluate the homo economicus model of behavior with groups of voluntarily recruited economics, accounting, and business students. These experimental results contradict the homo economicus model, suggesting that players in the dictator role take fairness and potential adverse consequences into account when making decisions about how much utility to give the recipient.[8] A later study in neuroscience further challenged the homo economicus model, suggesting that various cognitive differences among humans affect decision-making processes, and thus ideas of fairness.[9]

Experimental results have indicated that adults often allocate money to the recipients, reducing the amount of money the dictator receives.[2][8][10] These results appear robust: for example, Henrich, et al. discovered in a wide cross-cultural study that dictators do allocate a non-zero share of the endowment to the recipient.[11] In modified versions of the dictator game, children also tend to allocate some of a resource to a recipient and most five-year-olds share at least half of their goods.[12]

A number of studies have examined psychological framing of the dictator game with a version called "taking" in which the player "takes" resources from the recipient's predetermined endowment, rather than choosing the amount to "give".[13][14] Some studies show no effect between male and female players, but one 2017 study reported a difference between male and female players in the taking frame.[15]

In 2016, Bhogal et al. conducted a study to evaluate the effects of perceived attractiveness on decision-making behavior and altruism in the standard dictator game, testing theories that altruism may serve as a courtship display. This study found no relationship between attractiveness and altruism.[16]

If these experiments appropriately reflect individuals' preferences outside of the laboratory, these results appear to demonstrate that either:

Dictators' utility functions include only money that they receive and dictators fail to maximize it.
Dictators' utility functions may include non-tangible harms they incur (for example self-image or anticipated negative views of others in society), or
Dictators' utility functions may include benefits received by others.
Additional experiments have shown that subjects maintain a high degree of consistency across multiple versions of the dictator game in which the cost of giving varies.[17] This suggests that dictator game behavior is well approximated by a model in which dictators maximize utility functions that include benefits received by others, that is, subjects are increasing their utility when they pass money to the recipients. The latter implies they are maximizing a utility function that incorporates recipient's welfare and not only their own welfare. This is the core of the "other-regarding" preferences. A number of experiments have shown donations are substantially larger when the dictators are aware of the recipient's need of the money.[18][19] Other experiments have shown a relationship between political participation, social integration, and dictator game giving, suggesting that it may be an externally valid indicator of concern for the well-being of others.[20][21][22][23] Regarding altruism, recent papers have shown that experimental subjects in a lab environment do not behave differently than other participants in an outside setting.[24] Studies have suggested that behavior in this game is heritable.[25][26]

Challenges
The idea that the highly mixed results of the dictator game prove or disprove rationality in economics is not widely accepted. Results offer both support of the classical assumptions and notable exception which have led to improved holistic economic models of behavior. Some authors have suggested that giving in the dictator game does not entail that individuals wish to maximize others' benefit (altruism). Instead they suggest that individuals have some negative utility associated with being seen as greedy, and are avoiding this judgment by the experimenter. Some experiments have been performed to test this hypothesis with mixed results.[27][2]

Additionally, the mixed results of the dictator game point to other behavioral attributes that may influence how individuals play the game. Specifically, people are motivated by altruism and how their actions are perceived by others, rather than solely avoiding being viewed as greedy. There have been experiments that more deeply study people’s motivations in this game. One experiment showed that females are more likely to value altruism in their actions than males. They are also more likely to be more altruistic towards other females than to other males. This proves that there are many extraneous variables that may influence players’ decisions in the dictator game, such as an individual’s own motivations and the other players.[28]

Variants
The Trust Game is similar to the dictator game, but with an added first step. In the trust game, one participant first decides how much of an endowment to give to the second participant. The first player is also informed that whatever they send will be tripled by the experimenter. Then the second participant (now acting as a dictator) decides how much of this increased endowment to allocate to the first participant. Thus the dictator's partner must decide how much of the initial endowment to trust with the dictator (in the hopes of receiving the same amount or more in return). The experiments rarely end in the subgame perfect Nash equilibrium of "no trust". A pair of studies published in 2008 of identical and fraternal twins in the US and Sweden suggests that behavior in this game is heritable.[29]

A variation of the dictator game called “Taking Game” (see “Experiments" section above for further detail), emerged from sociological experiments conducted in 2003, in which the dictator decides how much utility to “take” from the recipient's pre-determined endowment. This dictator game variation was designed to evaluate the idea of greed, rather than the idea of fairness or altruism generally evaluated with the standard dictator game model, also referred to as the “Giving Game”.[15]

See also
Impunity game
Neuroeconomics
Ultimatum game
Prisoner's dilemma
Public goods game
Social preferences
&
https://authors.library.caltech.edu/22127/1/2138174%5B1%5D.pdf




Cyberpunk derivatives
https://en.wikipedia.org/wiki/Cyberpunk_derivatives#Background

Denoting the postmodern framework of the genre, Rafael Miranda Huereca (2006) states:

In this fictional world, the unison in the hive becomes a power mechanism which is executed in its capillary form, not from above the social body but from within. This mechanism as Foucault remarks is a form of power, which "reaches into the very grain of individuals, touches their bodies and inserts itself into their actions and attitudes, their discourses, learning processes and everyday lives". In postcyberpunk unitopia 'the capillary mechanism' that Foucault describes is literalized. Power touches the body through the genes, injects viruses to the veins, takes the forms of pills and constantly penetrates the body through its surveillance systems; collects samples of body substance, reads finger prints, even reads the 'prints' that are not visible, the ones which are coded in the genes. The body responds back to power, communicates with it; supplies the information that power requires and also receives its future conduct as a part of its daily routine. More importantly, power does not only control the body, but also designs, (re)produces, (re)creates it according to its own objectives. Thus, human body is re-formed as a result of the transformations of the relations between communication and power.[13]

The Daemon novel series by Daniel Suarez could be considered postcyberpunk in this sense.





Imagination age
https://en.wikipedia.org/wiki/Imagination_age#Origins_of_the_term
The Imagination Age is a theoretical period beyond the Information Age where creativity and imagination will become the primary creators of economic value. In contrast, the main activities of the Information Age are analysis and thinking.[1][2] The concept holds that technologies like virtual reality, user created content and YouTube will change the way humans interact with each other and create economic and social structures. A key concept is that the rise of an immersive virtual reality—the cyberspace or the metaverse—will raise the value of "imagination work" done by designers, artists, etc. over rational thinking as a foundation of culture and economics.

Some argue that the Imagination Age has already started, given that imagination is the most valued skill in our modern society.[3][4]



Origins of the term
The term Imagination Age (as well as Age of Imagination) were first introduced in an essay by designer and writer Charlie Magee in 1993. His essay,[5] "The Age of Imagination: Coming Soon to a Civilization Near You" proposes the idea that the best way to assess the evolution of human civilization is through the lens of communication.

The most successful groups throughout human history have had one thing in common: when compared to their competition they had the best system of communication. The fittest communicators—whether tribe, citystate, kingdom, corporation, or nation—had (1) a larger percentage of people with (2) access to (3) higher quality information, (4) a greater ability to transform that information into knowledge and action, (5) and more freedom to communicate that new knowledge to the other members of their group.

Imagination Age, as a philosophical tenet heralding a new wave of cultural and economic innovation, appears to have been first introduced by artist, writer and cultural philosopher Rita J. King in November 2007[citation needed] essay for the British Council entitled, "The Emergence of a New Global Culture in the Imagination Age",[6] where she began using the phrase, "Toward a New Global Culture and Economy in the Imagination Age":

Rather than exist as an unwitting victim of circumstance, all too often unaware of the impact of having been born in a certain place at a certain time, to parents firmly nestled within particular values and socioeconomic brackets, millions of people are creating new virtual identities and meaningful relationships with others who would have remained strangers, each isolated within their respective realities.[6]

King further refined the development of her thinking in a 2008 Paris essay entitled, "Our Vision for Sustainable Culture in the Imagination Age"[7] in which she states,

Active participants in the Imagination Age are becoming cultural ambassadors by introducing virtual strangers to unfamiliar customs, costumes, traditions, rituals and beliefs, which humanizes foreign cultures, contributes to a sense of belonging to one's own culture and fosters an interdependent perspective on sharing the riches of all systems. Cultural transformation is a constant process, and the challenges of modernization can threaten identity, which leads to unrest and eventually, if left unchecked, to violent conflict. Under such conditions it is tempting to impose homogeneity, which undermines the highly specific systems that encompass the myriad luminosity of the human experience.[7]

King has expanded her interpretation of the Imagination Age concept through speeches at the O'Reilly Media, TED, Cusp, and Business Innovation Factory conferences.[8][9][10][11] King also edits "The Imagination Age" blog.

The term Imagination Age was subsequently popularized in techno-cultural discourse by other writers, futurists and technologists, who attributed the term to King, including Jason Silva[12] and Tish Shute[13] a technology entrepreneur and publisher of Augmented Reality and emerging technology blog "UgoTrade".

Earlier, one-time, references to the Imagination Age can be found attributed to Carl W. Olson in his 2001 book "The Boss is Dead...: Leadership Breakthroughs for the Imagination Age,[3] virtual worlds developer Howard Stearns in 2005,[14] and Cathilea Robinett in 2007.[15]

Previous ages
The ideas of the Imagination Age depend in large part upon an idea of progress through history because of technology, notably outlined by Marx.

That cultural progress has been categorized into a number of major stages of development. According to this idea civilization has progressed through the following ages, or epochs:

Agricultural Age – economy dominated by physical work with wooden tools and animals in order to produce food
Industrial Age – economy dominated by factories to produce commodities
Information Age – economy dominated by knowledge workers using computers and other electronic devices for the purposes of research, finance, consulting, information technology, and other services
Following this is a new paradigm created by virtual technology, high speed internet, massive data storage, and other technologies. This new paradigm, the argument goes, will create a new kind of global culture and economy called the Imagination Age.

Economic rise of imagination
The Imagination Age would be a society and culture dominated by an imagination economy. The idea relies on a key Marxist concept that culture is a superstructure fully conditioned by the economic substructure. According to Marxist thinking certain kinds of culture and art were made possible by the adoption of farming technology. Then with the rise of industry new forms of political organization (democracy, militarism, fascism, communism) were made possible along with new forms of culture (mass media, news papers, films). These resulted in people changing. In the case of industrialization people were trained to become more literate, to follow time routines, to live in urban communities.

The concept of the Imagination Age extends this to a new order emerging presently.

An imagination economy is defined by some thinkers as an economy where intuitive and creative thinking create economic value, after logical and rational thinking has been outsourced to other economies.[16]

Michael Cox Chief Economist at Federal Reserve Bank of Dallas argues that economic trends show a shift away from information sector employment and job growth towards creative jobs. Jobs in publishing, he has pointed out are declining while jobs for designers, architects, actors & directors, software engineers and photographers are all growing. This shift in job creation is a sign the beginning of the Imagination Age.[citation needed] The 21st century has seen a growth in games and interactive media jobs.[17]

Cox argues that the skills can be viewed as a "hierarchy of human talents",[18] with raw physical effort as the lowest form of value creation, above this skilled labor and information entry to creative reasoning and emotional intelligence. Each layer provides more value creation than the skills below it, and the outcome of globalization and automation is that labor is made available for higher level skills that create more value. Presently these skills tend to be around imagination, social and emotional intelligence.

Technology
Key to the idea that imagination is becoming the key commodity of our time is a confidence that virtual reality technology like Oculus Rift and HoloLens will emerge to take much of the place of the current text-and-graphic dominated internet. This will provide a 3D internet where imagination and creativity (over information and search) will be key to creating user experience and value.

The concept is not limited to just virtual reality. Charlie Magee states that the technology that will develop during the Imagination Age would include:

The best bet is on a hybrid breakthrough created by the meshing of nanotechnology, computer science (including artificial intelligence), biotechnology (including biochemistry, biopsychology, etc.), and virtual reality.[5]

In The Singularity is Near, Raymond Kurzweil states that future combination of AI, nano-technology, and biotechnology will create a world where anything that can be imagined will be possible, raising the importance of imagination as the key mode of human thinking.[19]

Global implications
Rita J. King has been the single major advocate of the Imagination Age concept and its implications on cultural relations, identity and the transformation of the global economy and culture. King has expounded on the concept through speeches at the O'Reilly Media and TED conferences[8][9][10] and has argued that virtual world technology and changes in people's ability to imagine other lives could promote world understanding and reduce cultural conflict.[20] Some public policy experts have argued the emergence of the Imagination Age out of the Information Age will have a major impact on overall public policy.[21]

See also
Attention economy
Cognitive-cultural economy
Cognitive Surplus, 2010 book
Information society
Indigo Era
Netocracy, concept whereby power revolves around the ability to form and use networks and technological tools
Post-scarcity economy


& 
The Age of Imagination
Coming Soon to a Civilization Near You.
by Charlie Magee
https://web.archive.org/web/20110727132753/http://www.oss.net/dynamaster/file_archive/040320/4a32a59dcdc168eced6517b5e6041cda/OSS1993-01-21.pdf

Everywhere you look, everywhere you listen, the entire "civilized" world is trying to understand, to plan
for, and to profit from "The Information Age". But, in terms of national competitiveness and national
security, this focus is creating its own blind spot. We seem to be forgetting that the rate of change in our
global society is not simply faster than it was 30 years ago. It is accelerating. Accelerating right on
through the Information Age toward another massive transition in the way we humans work and play.
A transition that might be less than 25 years away.
In other words, the Information Age is almost over and we aren't ready for the changes coming our way.
A good word for what is happening now? Practice.
The problem is that we're basing our decisions on an inadequate metaphor: economics. People today
make an income by manipulating information, therefore, The Information Age. People made an income
with industrial and agricultural tools, therefore The Industrial and Agricultural Ages. The assumption is
that human society can be adequately described in the terms of the tool we use to purchase survival.
This type of planning for the future is like trying to walk across town with binoculars glued to your eyeballs. We need a bigger metaphor, one that encompasses much more than economics, one that occurs
before anything can be purchased or acquired. I suggest that communication is a better metaphor for
understanding human evolution. Evolution equals survival of the fittest communicators.
(One might protest and say that economics is more basic than communication because one must survive
in order to communicate, i.e. an ancient hunter of 40,000 years ago, alone in the grasslands, had to eat
before he could communicate. Consider this, however: to this hunter, the wind, by carrying smells, communicates the direction of prey. The sun, by its position in the sky, communicates which animals are at the
water hole. The hunter's stomach, by growling, communicates a sense of urgency. Communication happens first. Then the hunter can eat.)
It took the universe 10 billion years to create a species that could speak. It took that species 3 million
years to create a communication tool called writing. Then just 12,000 years to create the printing press.
500 years to create the computer.
Put these figures on a chart: billions, millions, thousands, hundreds, then ... decades? We're looking at
exponential change. The Information Age is already several decades old in the USA. If we take a slightly more global view, then its age is closer to fifteen years. And if it might only last a few decades then we
must begin to wonder about what is coming next. Will we hit an evolutionary wall? Reach a comfortable
cultural plateau? Break on through to everlasting peace and happiness? There are clues in the pattern of
communication evolution.
The most successful groups throughout human history have had one thing in common: when compared to
their competition they had the best system of communication. The fittest communicators-whether tribe, citystate, kingdom, corporation, nation-had (1) a larger percentage of people with (2) access to (3) higherquality information, (4) a greater ability to transform that information into knowledge and action, (5) and
more freedom to communicate that new knowledge to the other members of their group.
Let's compare the US, Germany, and Japan for example. In general, we're equal on these five variables of
communication except for the ability to transform high-quality information into knowledge and action.
The success of the Japanese and German economies is evidence of this. For at least twenty years the peo-








Cognitive-cultural economy
https://en.wikipedia.org/wiki/Cognitive-cultural_economy#Overview

Cognitive-cultural economy or cognitive-cultural capitalism is represented by sectors such as high-technology industry, business and financial services, personal services, the media, the cultural industries. It is characterized by digital technologies combined with high levels of cognitive and cultural labor.

Overview
The concept of cognitive-cultural economy has been associated with 'post-Fordism', the 'knowledge economy', the 'new economy' and highly flexible labor markets.

As Fordist mass production began to wane after the mid to late 1970s in advanced capitalist countries, a more flexible system of productive activity began to take its place. The concept of cognitive-cultural capitalism has developed as a response to the insufficiency of the interpretations of this transition from a Fordist to a post-Fordist model of "flexible accumulation.[1] Early empirical studies of this new system were published in the 1980s on the basis of case-study materials focused mainly on high-technology industrial districts in the United States (Silicon Valley, Orange County, Boston's Route 128, etc.—see Saxenian) and revived craft industries in the north-east and center of Italy (the so-called Third Italy[2]). Over the following decades, considerable empirical and theoretical advances were made on the basis of studies of the new cultural economy (fashion, film, electronic games, publishing, etc.).

Levy and Murnane in The New Division of Labor[3] highlight the replacement of standardized machinery in the American production system by digital technologies that not only act as a substitute for routine labor, but that also complement and enhance the intellectual and affective assets of the labor force. These technologies underpinned an enormous expansion of the technology-intensive, service, financial, craft, and cultural industries that became the heart of the cognitive-cultural economy.

See also
Creative industries
Financial services
General intellect
High-technology industry
Operaismo
Postfordism
Purple economy
Regulation school

&
http://halshs.archives-ouvertes.fr/docs/00/26/36/61/PDF/historicalpubliepdf.pdf




Cybernetics
https://en.wikipedia.org/wiki/Cybernetics#Overview

Cybernetics is a transdisciplinary[1] approach for exploring regulatory and purposive systems—their structures, constraints, and possibilities. The core concept of the discipline is circular causality or feedback—that is, where the outcomes of actions are taken as inputs for further action. Cybernetics is concerned with such processes however they are embodied,[2] including in environmental, technological, biological, cognitive, and social systems, and in the context of practical activities such as designing, learning, managing, and conversation.

Cybernetics has its origins in the intersection of the fields of control systems, electrical network theory, mechanical engineering, logic modeling, evolutionary biology, neuroscience, anthropology, and psychology in the 1940s, often attributed to the Macy Conferences. Since then, cybernetics has become even broader in scope to include work in domains such as design,[3] family therapy, management and organisation, pedagogy, sociology, and the creative arts.[4] At the same time, questions arising from circular causality have been explored in relation to the philosophy of science, ethics, and constructivist approaches. Contemporary cybernetics thus varies widely in scope and focus, with cyberneticians variously adopting and combining technical, scientific, philosophical, creative, and critical approaches.

Overview
The essential goal of the broad field of cybernetics is to understand and define the functions and processes of systems that have goals and that participate in circular, causal chains that move from action to sensing to comparison with the desired goal, and again to action. Its focus is how anything (digital, mechanical or biological) processes information, reacts to information, and changes or can be changed to better accomplish the first two tasks.[5] Cybernetics includes the study of feedback, black boxes and derived concepts such as communication and control in living organisms, machines and organizations including self-organization.

Concepts studied by cyberneticists include, but are not limited to: learning, cognition, adaptation, social control, emergence, convergence, communication, efficiency, efficacy, and connectivity. In cybernetics these concepts (otherwise already objects of study in other disciplines such as biology and engineering) are abstracted from the context of the specific organism or device.

Studies in cybernetics provide a means for examining the design and function of any system, including social systems such as business management and organizational learning, including for the purpose of making them more efficient and effective. Fields of study which have influenced or been influenced by cybernetics include game theory, system theory (a mathematical counterpart to cybernetics), perceptual control theory, sociology, psychology (especially neuropsychology, behavioral psychology, cognitive psychology), psychoanalysis, philosophy, architecture, and organizational theory.[6] System dynamics, originated with applications of electrical engineering control theory to other kinds of simulation models (especially business systems) by Jay Forrester at MIT in the 1950s, is a related field.

Definitions

This section contains embedded lists that may be poorly defined, unverified or indiscriminate. Please help to clean it up to meet Wikipedia's quality standards. Where appropriate, incorporate items into the main body of the article. (February 2021)
Cybernetics has been defined in a variety of ways, by a variety of people, from a variety of disciplines.

One of the most well known definitions is that of Norbert Wiener who characterised cybernetics as "the scientific study of control and communication in the animal and the machine".[7]

Another early definition is that of the Macy cybernetics conferences, where cybernetics was understood as the study of "circular causal and feedback mechanisms in biological and social systems".[8]

Cybernetician Stuart Umpleby reports some notable definitions:[9]

"Science concerned with the study of systems of any nature which are capable of receiving, storing and processing information so as to use it for control."—A. N. Kolmogorov
"'The art of steersmanship': deals with all forms of behavior in so far as they are regular, or determinate, or reproducible: stands to the real machine -- electronic, mechanical, neural, or economic -- much as geometry stands to real object in our terrestrial space; offers a method for the scientific treatment of the system in which complexity is outstanding and too important to be ignored."—W. Ross Ashby
"A branch of mathematics dealing with problems of control, recursiveness, and information, focuses on forms and the patterns that connect."—Gregory Bateson
"The art of securing efficient operation [lit.: the art of effective action]."—Louis Couffignal[10][11]
"The art of effective organization."—Stafford Beer
"The art and science of manipulating defensible metaphors" (with relevance to constructivist epistemology. The author later extended the definition to include information flows "in all media", from stars to brains.)—Gordon Pask
"The art of creating equilibrium in a world of constraints and possibilities."—Ernst von Glasersfeld
"The science and art of understanding." – Humberto Maturana
"The ability to cure all temporary truth of eternal triteness."—Herbert Brun
Other notable definitions include:

"The science and art of the understanding of understanding."—Rodney E. Donaldson, the first president of the American Society for Cybernetics
"A way of thinking about ways of thinking of which it is one."—Larry Richards
"The art of interaction in dynamic networks."—Roy Ascott
"The study of systems and processes that interact with themselves and produce themselves from themselves."—Louis Kauffman, President of the American Society for Cybernetics[12]
"The science of design, purposeful activity, and accomplishment."—Angus Jenkinson, Secretary of the Cybernetics Society[13]
"Cybernetics is a universal science of accomplishment, purposeful activity, design, and reflexive control. It explains manifold phenomena and aids the design and use of technologies and practice related to them."–Cybernetics Society[14]
Cybernetics evolved in ways that distinguish first-order cybernetics (about observed systems) from second-order cybernetics (about observing systems).[15] More recently there is talk about a third-order cybernetics (doing in ways that embraces first and second-order), being closely related to the autopoietic perspective, radical constructivism, or, more recently, to enactivism.[16]

Etymology

Simple feedback model. AB < 0 for negative feedback.
The word cybernetics comes from Greek κυβερνητική (kybernētikḗ), meaning "governance", i.e., all that are pertinent to κυβερνάω (kybernáō), the latter meaning "to steer, navigate or govern", hence κυβέρνησις (kybérnēsis), meaning "government", is the government while κυβερνήτης (kybernḗtēs) is the governor, pilot, or "helmsperson" of the "ship".

French physicist and mathematician André-Marie Ampère first coined the word "cybernetique" in his 1834 essay Essai sur la philosophie des sciences to describe the science of civil government.[17] The term was used by Norbert Wiener, in his book Cybernetics, to define the study of control and communication in the animal and the machine. In the book, he states: "Although the term cybernetics does not date further back than the summer of 1947, we shall find it convenient to use in referring to earlier epochs of the development of the field."[7]

History
Pre 20th Century
The word cybernetics was first used in the context of "the study of self-governance" by Plato in Republic [18] and in Alcibiades to signify the governance of people.[19] The word 'cybernétique' was also used in 1834 by the physicist André-Marie Ampère (1775–1836) to denote the sciences of government in his classification system of human knowledge.


James Watt
The first artificial automatic regulatory system was a water clock, invented by the mechanician Ktesibios; based on a tank which poured water into a reservoir before using it to run the mechanism, it used a cone-shaped float to monitor the level of the water in its reservoir and adjust the rate of flow of the water accordingly to maintain a constant level of water in the reservoir. This was the first artificial truly automatic self-regulatory device that required no outside intervention between the feedback and the controls of the mechanism. Although they considered this part of engineering (the use of the term cybernetics is much posterior), Ktesibios and others such as Heron and Su Song are considered to be some of the first to study cybernetic principles.[according to whom?]

The study of teleological mechanisms (from the Greek τέλος or télos for end, goal, or purpose) in machines with corrective feedback dates from as far back as the late 18th century when James Watt's steam engine was equipped with a governor (1775–1800), a centrifugal feedback valve for controlling the speed of the engine. Alfred Russel Wallace identified this as the principle of evolution in his famous 1858 paper.[20] In 1868 James Clerk Maxwell published a theoretical article on governors, one of the first to discuss and refine the principles of self-regulating devices. Jakob von Uexküll applied the feedback mechanism via his model of functional cycle (Funktionskreis) in order to explain animal behaviour and the origins of meaning in general.

Early 20th century
Contemporary cybernetics began as an interdisciplinary study connecting the fields of control systems, electrical network theory, mechanical engineering, logic modeling, evolutionary biology and neuroscience in the 1940s; the ideas are also related to the biological work of Ludwig von Bertalanffy in General Systems Theory. Electronic control systems originated with the 1927 work of Bell Telephone Laboratories engineer Harold S. Black on using negative feedback to control amplifiers.

Early applications of negative feedback in electronic circuits included the feedback amplifier and the control of gun mounts and radar antenna during World War II. The founder of System Dynamics, Jay Forrester, worked with Gordon S. Brown during WWII as a graduate student at the Servomechanisms Laboratory at MIT to develop electronic control systems for the U.S. Navy. Forrester later applied these ideas to social organizations, such as corporations and cities, and he became an original organizer of the MIT School of Industrial Management at the MIT Sloan School of Management.

W. Edwards Deming, the Total Quality Management guru for whom Japan named its top post-WWII industrial prize, was an intern at Bell Telephone Labs in 1927 and may have been influenced by network theory; Deming made "Understanding Systems" one of the four pillars of what he described as "Profound Knowledge" in his book The New Economics.

Numerous papers spearheaded the coalescing of the field. In 1935 Russian physiologist P. K. Anokhin published a book in which the concept of feedback ("back afferentation") was studied. The study and mathematical modelling of regulatory processes became a continuing research effort and two key articles were published in 1943: "Behavior, Purpose and Teleology" by Arturo Rosenblueth, Norbert Wiener, and Julian Bigelow –based on the research on living organisms that Arturo Rosenblueth did in Mexico–; and the paper "A Logical Calculus of the Ideas Immanent in Nervous Activity" by Warren McCulloch and Walter Pitts.

In 1936, Ștefan Odobleja published "Phonoscopy and the clinical semiotics". In 1937, he participated in the IX International Congress of Military Medicine with "Demonstration de phonoscopie"; in the paper he disseminated a prospectus announcing his future work, "Psychologie consonantiste", the most important of his writings, where he lays the theoretical foundations of generalized cybernetics.[according to whom?] The book, published in Paris by Librairie Maloine (vol. I in 1938 and vol. II in 1939), contains almost 900 pages and includes 300 figures in the text. The author wrote at the time that "this book is ... a table of contents, an index or a dictionary of psychology, [for] a ... great Treatise of Psychology that should contain 20–30 volumes". Due to the beginning of World War II, the publication went unnoticed (the first Romanian edition of this work did not appear until 1982).


Norbert Wiener
Cybernetics as a discipline was firmly established by Norbert Wiener, McCulloch, Arturo Rosenblueth and others, such as W. Ross Ashby, mathematician Alan Turing, and W. Grey Walter. In the spring of 1947, Wiener was invited to a congress on harmonic analysis, held in Nancy (France was an important geographical locus of early cybernetics together with the US and UK); the event was organized by the Bourbaki and mathematician Szolem Mandelbrojt.

During this stay in France, Wiener received the offer to write a manuscript on the unifying character of this part of applied mathematics, which is found in the study of Brownian motion and in telecommunication engineering. The following summer, back in the United States, Wiener decided to introduce the neologism cybernetics, coined to denote the study of "teleological mechanisms", into his scientific theory: it was popularized through his book Cybernetics: Or Control and Communication in the Animal and the Machine.[7] In the UK this became the focus for the Ratio Club.


John von Neumann
In the early 1940s John von Neumann contributed a unique and unusual addition to the world of cybernetics: von Neumann cellular automata, and their logical follow up, the von Neumann Universal Constructor. The result of these deceptively simple thought-experiments was the concept of self replication, which cybernetics adopted as a core concept. The concept that the same properties of genetic reproduction applied to social memes, living cells, and even computer viruses is further proof of the somewhat surprising universality of cybernetic study.

In 1950, Wiener popularized the social implications of cybernetics, drawing analogies between automatic systems (such as a regulated steam engine) and human institutions in his best-selling The Human Use of Human Beings: Cybernetics and Society (Houghton-Mifflin).

Split from artificial intelligence
Artificial intelligence (AI) was founded as a distinct discipline at the Dartmouth workshop in 1956. After some uneasy coexistence, AI gained funding and prominence. Consequently, cybernetic sciences such as the study of artificial neural networks were downplayed; the discipline shifted into the world of social sciences and therapy.[21]

Prominent cyberneticians during this period[which?] include Gregory Bateson and Aksel Berg.

Late 20th century
Cybernetics in the Soviet Union was initially considered a "pseudoscience" and "ideological weapon" of "imperialist reactionaries" (Soviet Philosophical Dictionary, 1954) and later criticised as a narrow form of cybernetics.[22] In the mid to late 1950s Viktor Glushkov and others salvaged the reputation of the field. Soviet cybernetics incorporated much of what became known as computer science in the West.[23]

Published in 1954, Qian Xuesen published work "Engineering Cybernetics" was the basis of science in segregating the engineering concepts of Cybernetics from the theoretical understanding of Cybernetics as described so far historically.

While not the only instance of a research organization focused on cybernetics, the Biological Computer Lab at the University of Illinois at Urbana–Champaign, under the direction of Heinz von Foerster, was a major center of cybernetic research for almost 20 years, beginning in 1958.

New cybernetics
In the 1970s, new cyberneticians emerged in multiple fields, but especially in biology. The ideas of Maturana, Varela and Atlan, according to Jean-Pierre Dupuy (1986) "realized that the cybernetic metaphors of the program upon which molecular biology had been based rendered a conception of the autonomy of the living being impossible. Consequently, these thinkers were led to invent a new cybernetics, one more suited to the organizations which mankind discovers in nature - organizations he has not himself invented".[24] However, during the 1980s the question of whether the features of this new cybernetics could be applied to social forms of organization remained open to debate.[24]

In political science, Project Cybersyn attempted to introduce a cybernetically controlled economy during the early 1970s.[25] In the 1980s, according to Harries-Jones (1988) "unlike its predecessor, the new cybernetics concerns itself with the interaction of autonomous political actors and subgroups, and the practical and reflexive consciousness of the subjects who produce and reproduce the structure of a political community. A dominant consideration is that of recursiveness, or self-reference of political action both with regards to the expression of political consciousness and with the ways in which systems build upon themselves".[26]

One characteristic of the emerging new cybernetics considered in that time by Felix Geyer and Hans van der Zouwen, according to Bailey (1994),[27] was "that it views information as constructed and reconstructed by an individual interacting with the environment. This provides an epistemological foundation of science, by viewing it as observer-dependent. Another characteristic of the new cybernetics is its contribution towards bridging the micro-macro gap. That is, it links the individual with the society".[27] Another characteristic noted was the "transition from classical cybernetics to the new cybernetics [that] involves a transition from classical problems to new problems. These shifts in thinking involve, among others, (a) a change from emphasis on the system being steered to the system doing the steering, and the factor which guides the steering decisions; and (b) new emphasis on communication between several systems which are trying to steer each other".[27]

Recent endeavors into the true focus of cybernetics, systems of control and emergent behavior, by such related fields as game theory (the analysis of group interaction), systems of feedback in evolution, and metamaterials (the study of materials with properties beyond the Newtonian properties of their constituent atoms), have led to a revived interest in this increasingly relevant field.[5]

Cybernetics and economic systems
Part of a series on
Economic systems
By ideology
By coordination
By regional model
Sectors
Property types
Transition
Coordination
Other types
Emblem-money.svg Business and economics portal
vte
The design of self-regulating control systems for a real-time planned economy was explored by economist Oskar Lange, cyberneticist Viktor Glushkov, and other Soviet cyberneticists during the 1960s. By the time information technology was developed enough to enable feasible economic planning based on computers, the Soviet Union and eastern bloc countries began moving away from planning[28] and eventually collapsed.

After the fall of the Soviet Union a proposal for a "New Socialism" was outlined by the computer scientists Paul Cockshott and Allin Cottrell in 1995 (Towards a New Socialism), where computers determine and manage the flows and allocation of resources among socially owned enterprises.[29]

On the other hand, Friedrich Hayek also mentions cybernetics as a discipline that could help economists understand the "self-organizing or self-generating systems" called markets.[30] Being "complex phenomena",[31] the best way to examine market functions is by using the feedback mechanism, explained by cybernetic theorists. That way, economists could make "pattern predictions".[32]

Therefore, the market for Hayek is a "communication system", an "efficient mechanism for digesting dispersed information".[33] The economist and a cyberneticist are like garderners who are "providing the appropriate environment".[33] Hayek's definition of information is idiosyncratic and precedes the information theory used in cybernetics and the natural sciences.

Finally, Hayek also considers Adam Smith's idea of the invisible hand as an anticipation of the operation of the feedback mechanism in cybernetics.[34] In the same book, Law, Legislation and Liberty, Hayek mentions, along with cybernetics, that economists should rely on the scientific findings of Ludwig von Bertalanffy general systems theory, along with information and communication theory and semiotics.[34]

Subdivisions of the field
Cybernetics is sometimes used as a generic term, which serves as an umbrella for many systems-related scientific fields.

In art
See also: telematic art, interactive art, and systems art
Nicolas Schöffer's CYSP I (1956) was perhaps the first artwork to explicitly employ cybernetic principles (CYSP is an acronym that joins the first two letters of the words "CYbernetic" and "SPatiodynamic").[35] The prominent and influential Cybernetic Serendipity exhibition was held at the Institute of Contemporary Arts in 1968 curated by Jasia Reichardt, including Schöffer's CYSP I and Gordon Pask's Colloquy of Mobiles installation. Pask's reflections on Colloquy connected it to his earlier Musicolour installation and to what he termed "aesthetically potent environments", a concept that connected this artistic work to his concerns with teaching and learning.[36]

The artist Roy Ascott elaborated an extensive theory of cybernetic art in "Behaviourist Art and the Cybernetic Vision" (Cybernetica, Journal of the International Association for Cybernetics (Namur), Volume IX, No.4, 1966; Volume X No.1, 1967) and in "The Cybernetic Stance: My Process and Purpose" (Leonardo Vol 1, No 2, 1968).

Art historian Edward A. Shanken has written about the history of art and cybernetics in essays including "Cybernetics and Art: Cultural Convergence in the 1960s"[37][38] and From Cybernetics to Telematics: The Art, Pedagogy, and Theory of Roy Ascott (2003),[39] which traces the trajectory of Ascott's work from cybernetic art to telematic art (art using computer networking as its medium, a precursor to net.art).

In architecture and design
Cybernetics was an influence on thinking in architecture and design in the decades after the Second World War. Ashby and Pask were drawn on by design theorists such as Horst Rittel,[40] Christopher Alexander[41] and Bruce Archer.[42] Pask was a consultant to Nicholas Negroponte's Architecture Machine Group, forerunner of the MIT Media Lab, and collaborated with architect Cedric Price and theatre director Joan Littlewood on the influential Fun Palace project during the 1960s.[43] Pask's 1950s Musicolour installation was the inspiration for John and Julia Frazer's work on Price's Generator project.[44]

There has been a resurgence of interest in cybernetics and systems thinking amongst designers in recent decades, in relation to developments in technology and increasingly complex design challenges.[45] Figures such as Klaus Krippendorff, Paul Pangaro and Ranulph Glanville have made significant contributions to both cybernetics and design research. The connections between the two fields have come to be understood less in terms of application and more as reflections of each other.[46]

In biology
See also: autopoiesis, biocybernetics, heterostasis, homeostasis, medical cybernetics, systems biology, and practopoiesis
Cybernetics in biology is the study of cybernetic systems present in biological organisms, primarily focusing on how animals adapt to their environment, and how information in the form of genes is passed from generation to generation. There is also a secondary focus on combining artificial systems with biological systems.[47] A notable application to the biology world would be that, in 1955, the physicist George Gamow published a prescient article in Scientific American called "Information transfer in the living cell", and cybernetics gave biologists Jacques Monod and François Jacob a language for formulating their early theory of gene regulatory networks in the 1960s.[48]

In computer science
Computer science directly applies the concepts of cybernetics to the control of devices and the analysis of information - examples being cellular automatons and decision support systems.

In engineering

An artificial heart, a product of biomedical engineering.
See also: adaptive system, engineering cybernetics, systems engineering, and control system
Cybernetics in engineering is used to analyze cascading failures and system accidents, in which the small errors and imperfections in a system can generate disastrous outcomes.

In Earth system science
Geocybernetics aims to study and control the complex co-evolution of ecosphere and anthroposphere,[49] for example, for dealing with planetary problems such as anthropogenic global warming.[50] Geocybernetics applies a dynamical systems perspective to Earth system analysis. It provides a theoretical framework for studying the implications of following different sustainability paradigms on co-evolutionary trajectories of the planetary socio-ecological system to reveal attractors in this system, their stability, resilience and reachability. Concepts such as tipping points in the climate system, planetary boundaries, the safe operating space for humanity and proposals for manipulating Earth system dynamics on a global scale such as geoengineering have been framed in the language of geocybernetic Earth system analysis.

In law
See also: regulation and metagovernment
As a form of regulation, cybernetics has been always close to law, specially in regulation and legal sciences.

In management
Main article: Management cybernetics
Management as a field of study covers the task of managing a multitude of systems (often business systems), which presents a wide natural overlap with many of the classical concepts of cybernetics.

In mathematics
See also: control theory, dynamical system, and systems theory
Mathematical cybernetics focuses on the factors of information, interaction of parts in systems, and the structure of systems.

In psychology
See also: systems psychology, agent-based model, perceptual control theory, behavioral cybernetics, and psychovector analysis
In science, the human mind and individuals are often observed as autonomous and interconnected systems, allowing the cybernetic approach to be leveraged in those fields of study as well.

In philosophy
See also: Gilles_Deleuze § Values, and Gregory_Bateson § Ecological_anthropology_and_cybernetics
In his 1990 essay "Postscript on the Societies of Control" Gilles Deleuze argues that society is undergoing a shift in structure and control. The author claims institutions and technologies introduced since World War II have dissolved the boundaries between these enclosures. As a result, social coercion and discipline have moved into the lives of individuals considered as "masses, samples, data, markets, or 'banks'" to be controlled cybernetically. These mechanisms of modern societies of control are described as continuous, following and tracking individuals throughout their existence via transaction records, mobile location tracking, and other personally identifiable information.[51]

Gregory Bateson saw the world as a series of systems containing those of individuals, societies and ecosystems. Each of these systems has adaptive changes which depend upon feedback loops to control balance by changing multiple variables. He saw the natural ecological system as innately good as long as it was allowed to maintain homeostasis, and that the key unit of survival in evolution was an organism and its environment.[52]

Bateson, in this subject, presents western epistemology as a method of thinking that leads to a mindset in which man exerts an autocratic rule over all cybernetic systems and in doing so he unbalances the natural cybernetic system of controlled competition and mutual dependency. Bateson claims that humanity will never be able to control the whole system because it does not operate in a linear fashion, and if humanity creates his own rules for the system, he opens himself up to becoming a slave to the self-made system due to the non-linear nature of cybernetics. Lastly, man's technological prowess combined with his scientific hubris gives him the potential to irrevocably damage and destroy the "supreme cybernetic system" (i.e. the biosphere), instead of just disrupting the system temporally until the system can self-correct.[52]

In sociology
See also: sociocybernetics and social systems
By examining group behavior through the lens of cybernetics, sociologists can seek the reasons for such spontaneous events as smart mobs and riots, as well as how communities develop rules such as etiquette by consensus without formal discussion.[citation needed] Affect Control Theory explains role behavior, emotions, and labeling theory in terms of homeostatic maintenance of sentiments associated with cultural categories.

The most comprehensive attempt ever made in the social sciences to increase cybernetics in a generalized theory of society was made by Talcott Parsons. In this way, cybernetics establishes the basic hierarchy in Parsons' AGIL paradigm, which is the ordering system-dimension of his action theory. These and other cybernetic models in sociology are reviewed in a book edited by McClelland and Fararo.[53]

In sport
A model of cybernetics in Sport was introduced by Yuri Verkhoshansky and Mel C. Siff in 1999 in their book Supertraining.

In Technology
Cybernetics has been used as a general reference for the science between the interjection of disciplines Medicine and technology. This involves sciences such as Bionics, Prosthetics, Neural network, Microchip implants, Neuroprosthetics and Brain-computer interface.

Cybernetics is a major theme in the implementation of transhumanism and androids.





General intellect
https://en.wikipedia.org/wiki/General_intellect#Overview
Not to be confused with General intelligence.
General intellect, according to Karl Marx in his Grundrisse, became a crucial force of production. It is a combination of technological expertise and social intellect, or general social knowledge (increasing importance of machinery in social organization). The "general intellect" passage in the 'Fragment on machines' section of Grundrisse, says that, while the development of machinery led to the oppression of workers under capitalism, it also offers a prospect for future liberation.[1]


General intellect, according to Karl Marx in his Grundrisse, became a crucial force of production. It is a combination of technological expertise and social intellect, or general social knowledge (increasing importance of machinery in social organization). The "general intellect" passage in the 'Fragment on machines' section of Grundrisse, says that, while the development of machinery led to the oppression of workers under capitalism, it also offers a prospect for future liberation.[1]


Contents
1	Overview
2	Origin of the term
3	See also
4	References
5	External links
Overview
Nature builds no machines, no locomotives, railways, electric telegraphs, self-acting mules etc. These are products of human industry; natural material transformed into organs of the human will over nature, or of human participation in nature. They are organs of the human brain, created by the human hand; the power of knowledge, objectified. The development of fixed capital indicates to what degree general social knowledge has become a direct force of production, and to what degree, hence, the conditions of the process of social life itself have come under the control of the general intellect and been transformed in accordance with it; to what degree the powers of social production have been produced, not only in the form of knowledge, but also as immediate organs of social practice, of the real life process.

— Karl Marx, The Grundrisse, 1858.[2]
According to Marx, the development of the general intellect manifests in a capitalist society, in the control of the social life process. In other words, with the idea of the general intellect, Marx designates a radical change of the subsumption of labour to capital and indicates a third stage of the division of labour.[3] The concept has several interpretations. For instance, Paolo Virno maintained that "general intellect" does not only thrive in communism, as Marx originally thought, since it also characterized other economic systems such as the post-Fordist capitalism.[4] Here, it is suggested that Marx underestimated the extent to which the general intellect would develop within capitalism, particularly in the modern period where the concept is said to have been realised but with no revolutionary or even conflictual repercussions.[5]

Origin of the term
According to Matteo Pasquinelli, Marx took the expression 'general intellect' from William Thompson's book An Inquiry Into the Principles of the Distribution of Wealth (1824) which is probably the first book ever written on mental labour. According to Pasquinelli the concept disappears in the transition between the Grundrisse and Capital as it is replaced by the notion of collective worker or Gesamtarbeiter. [6]

See also
Cognitive capitalism





Common knowledge
https://en.wikipedia.org/wiki/Common_knowledge#Examples
Common knowledge is knowledge that is known by everyone or nearly everyone, usually with reference to the community in which the term is used. Common knowledge need not concern one specific subject, e.g., science or history. Rather, common knowledge can be about a broad range of subjects, such as science, literature, history, and entertainment. Often, common knowledge does not need to be cited. Common knowledge is distinct from general knowledge.

In broader terms, common knowledge is used to refer to information that a reader would accept as valid, such as information that many users may know. As an example, this type of information may include the temperature in which water freezes or boils. To determine if information should be considered common knowledge, you can ask yourself who your audience is, are you able to assume they already have some familiarity with the topic, or will the information's credibility come into question.

Many techniques have been developed in response to the question of distinguishing truth from fact in matters that have become "common knowledge". The scientific method is usually applied in cases involving phenomena associated with astronomy, mathematics, physics, and the general laws of nature. In legal settings, rules of evidence generally exclude hearsay (which may draw on "facts" someone believes to be "common knowledge").

"Conventional wisdom" is a similar term also referring to ostensibly pervasive knowledge or analysis.

See also
Common knowledge (logic)
Common sense
Consensus reality
Conventional wisdom
Cultural heritage
Cultural practice
Cyc, an attempt to capture common sense in a computer system
Obliteration by incorporation
Rule of thumb
Social constructionism
Judicial notice
List of common misconceptions
Factoid





Judicial notice
https://en.wikipedia.org/wiki/Judicial_notice#Judicial_notice_in_the_United_States
Judicial notice is a rule in the law of evidence that allows a fact to be introduced into evidence if the truth of that fact is so notorious or well known, or so authoritatively attested, that it cannot reasonably be doubted. This is done upon the request of the party seeking to rely on the fact at issue. Facts and materials admitted under judicial notice are accepted without being formally introduced by a witness or other rule of evidence, and they are even admitted if one party wishes to plead evidence to the contrary.

Judicial notice is frequently used for the simplest, most obvious common sense facts, such as which day of the week corresponded to a particular calendar date or the approximate time at sunset.[1] However, it could even be used within one state to notice a law of another state—such as one which provides average baselines for motor vehicle stopping distances.[2]

Judicial notice in the Federal Rules of Evidence
In the United States, Article II of the Federal Rules of Evidence ("FRE") addresses judicial notice in federal courts, and this article is widely copied by U.S. States. Article II of the FRE consists of a single rule, Rule 201.[3] FRE 201 covers judicial notice of adjudicative facts, which are those concerning the parties to a proceeding, but not of legislative facts, which are general.[3][4]

FRE 201(b) permits judges to take judicial notice of two categories of facts:

Those that are "generally known within the territorial jurisdiction of the trial court" (e.g. locations of streets within the court's jurisdiction) or
Those that are "capable of accurate and ready determination by resort to sources whose accuracy cannot reasonably be questioned" (e.g. the day of the week on a certain date).[3]
FRE 201(c) notes that judicial notice may be permissive or mandatory. Under the wording of the rule, judicial notice is permissive if the court takes such notice on its own but mandatory if a party requests it and the court is supplied with the necessary information.[3]

Courts have ruled that judicial notice must be taken of federal public laws and treaties, state public laws, and official regulations of both federal and local government agencies.

A trial court's decision to take judicial notice or not to do so is reviewed on appeal under the standard of abuse of discretion.[5]

Judicial notice and the burden of proof
FRE 201(f) establishes that the effect of the court taking judicial notice is different in civil and criminal trials. In a civil trial, the fact taken notice of is thereby conclusively proved. In a criminal case, the defendant has the right to contest every fact that might tend to incriminate him. Therefore, the court taking judicial notice would simply allow the jury to make the finding that the court took notice of, but would not require this outcome, and would not prevent the defense from presenting evidence to rebut the noticed fact.

Judicial notice in foreign affairs
Legal disputes about foreign affairs are generally settled by judicial notice by obtaining the information directly from the office of the Secretary of State (in the United States). For example, if a litigant in an extradition hearing attempted to argue that Israel was not a sovereign state, a statement from the Secretary of State that the U.S. recognized Israel as a sovereign state would settle the issue and no evidence could be led to the contrary. (In the United Kingdom, similar result could be had to information from the Foreign Secretary.)

Recently,[when?] Court of Appeals decisions[which?] regarding the legal rights of detainees of Guantanamo Bay took judicial notice[citation needed] of Cuba having no sovereignty over the U.S. naval base in that location despite claims by the United States government that it was Cuban territory and not subject to the application of United States law.[citation needed]

Federal courts and the courts of most jurisdictions have determined that matters of foreign law are subject to permissive judicial notice.

Official notice
During the prosecution phase of U.S. patent applications, a similar concept to judicial notice is applied by patent examiners, but the process is referred to as taking "official notice". In a typical patent claim rejection, the examiner has to present prima facie evidence from the prior art, usually patent documents or other printed publications, that the subject matter of a rejected claim was known or would have been obvious prior to the application for patent by the inventor. However, examiners may officially notice facts that "are capable of instant and unquestionable demonstration as being well-known". Patent applicants are then allowed to traverse the official notice given by an examiner, in which case the examiner must present an evidentiary document to prove the fact or limitation is well known.[6]

Historical examples
In the 1858 murder trial of William Armstrong, his attorney, then-former Congressman Abraham Lincoln, used judicial notice to establish that a claim by a witness to have used moonlight to see events could not have taken place since there was no visible moon that evening. This led to Armstrong's acquittal.[7]

In the 1934 United States Supreme Court case Home Building & Loan Association v. Blaisdell, Chief Justice Charles Evans Hughes took judicial notice of the economic conditions of the Great Depression to help conclude that a state of emergency existed, and thus the State of Minnesota could properly impose on the contracts made by private persons to promote a broad societal interest. Specifically, the Court upheld a Minnesota statute preventing loan companies from foreclosing on homes before 1935, despite mortgage agreements allowing companies the right to do so.[8]

In the 1981 case of Mel Mermelstein v. Institute for Historical Review, the Superior Court of Los Angeles County took judicial notice of the fact that "Jews were gassed to death at the Auschwitz Concentration Camp in Poland during the summer of 1944."[9]

Judicial notice in Australia
In New South Wales, judicial notice may be taken of facts that are "not reasonably open to question".[10] This may include, for example, the location of well-known geographical features. However, both parties must be given notice of the judicial officer's intention to rely upon the information.[11]

Judicial notice in Canada
Besides the categories of judicially noticed facts found in other common law jurisdictions, the Supreme Court of Canada has required Canadian courts to take judicial notice of such facts as the history of colonialism in Canada and its harmful effects on Indigenous peoples:

To be clear, courts must take judicial notice of such matters as the history of colonialism, displacement, and residential schools and how that history continues to translate into lower educational attainment, lower incomes, higher unemployment, higher rates of substance abuse and suicide, and of course higher levels of incarceration for Aboriginal peoples.
—R. v. Ipeelee, at para. 60[12]
Some judges have taken a similar approach to the history of racism against other ethnic groups in Canada, such as African Canadians, concerning whom Justice Nakatsuru of the Ontario Superior Court of Justice wrote:

I find that for African Canadians, the time has come where I as a sentencing judge must take judicial notice of such matters as the history of colonialism (in Canada and elsewhere), slavery, policies and practices of segregation, intergenerational trauma, and racism both overt and systemic as they relate to African Canadians and how that has translated into socio-economic ills and higher levels of incarceration.
—R. v. Jackson, at para. 82[13]
However, some other judges have declined to follow this approach.[14]



General knowledge
https://en.wikipedia.org/wiki/General_knowledge#Individual_differences

General knowledge is information that has been accumulated over time through various mediums.[1] It excludes specialized learning that can only be obtained with extensive training and information confined to a single medium. General knowledge is an essential component of crystallized intelligence. It is strongly associated with general intelligence and with openness to experience.[2]

Studies have found that people who are highly knowledgeable in a particular domain tend to be knowledgeable in many.[3][4] General knowledge is thought to be supported by long-term semantic memory ability.[5] General knowledge also supports schemata for textual understanding.[6] In 2019, it was found in a survey that New Zealanders had "concerning" gaps in their general knowledge.[7]
Individual differences
Intelligence
High scorers on tests of general knowledge tend to also score highly on intelligence tests. IQ has been found to robustly predict general knowledge scores even after accounting for differences in age, sex, and five-factor model personality traits.[8][9][10] However, many general knowledge tests are designed to create a normal distribution of answers, creating a bell-shaped curve.[11]

General knowledge is also moderately associated with verbal ability, though only weakly or not at all with numerical and spatial ability.[3] As with crystallized intelligence, general knowledge has been found to increase with age.[12]

Long-term semantic memory
General knowledge is stored as semantic memory.[13] Most semantic memory is preserved through old age, though there are deficits in retrieval of certain specific words correlated with aging.[13] In addition, stress or various emotional levels can negatively affect semantic memory retrieval.[13]

Personality
People high in general knowledge[14] tend to be highly open to new experiences[8][9][10][12] and in typical intellectual engagement.[9][10] The relationship between openness to experience and general knowledge remains robust even when IQ is taken into account.[8][10] People high in openness may be more motivated to engage in intellectual pursuits that increase their knowledge.[10] Relationships between general knowledge and other five factor model traits tend to be weak and inconsistent. Though one study found that extraversion and neuroticism were negatively correlated with general knowledge,[9] others found that they were unrelated.[8][12] Inconsistent results have also been found for conscientiousness.[note 1]

Predictor of achievement

This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (April 2021) (Learn how and when to remove this template message)
A number of studies have assessed whether performance on a general knowledge test can predict achievement in particular areas, namely in academics,[15] proofreading,[16] and creativity.[17]

Academic achievement
General knowledge has been found to predict exam results in a study of British schoolchildren.[15] The study examined cognitive ability and personality predictors of exam performance and found that general knowledge was positively correlated with GCSE English, mathematics, and overall exam results. General knowledge test scores predicted exam results, even after controlling for IQ, five factor model personality traits, and learning styles.

Proofreading
General knowledge has been found to robustly predict proofreading skills in university students.[16] A study found that proofreading had a larger correlation with general knowledge than with general intelligence, verbal reasoning, or openness to experience. In a multiple regression analysis using general knowledge, general intelligence, verbal reasoning, five factor personality traits, and learning styles as predictors, only general knowledge was a significant predictor.

Creativity
General knowledge has been found to have weak associations with measures of creativity.[17] In a study examining contributions of personality and intelligence to creativity, general knowledge was positively correlated with tests of divergent thinking, but was unrelated to a biographical measure of creative achievement, self-rated creativity, or a composite measure of creativity. The relationship between general knowledge and divergent thinking became non-significant when controlling for fluid intelligence.

Game shows and quizzes

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (April 2021) (Learn how and when to remove this template message)
Many game shows use general knowledge questions for entertainment purpose. Game shows such as Who Wants to Be a Millionaire? and Fifteen to One centre their questions on general knowledge, while other shows focus questions more on specific subjects. Some shows ask questions both on specific subjects and on general knowledge, including Eggheads and Mastermind. In Mastermind, contestants choose their own "specialist subject" before answering general knowledge questions, whereas in Eggheads the subjects are chosen at random.


Questions drawn from the game Trivial Pursuit have been utilised in a number of psychological experiments concerning general knowledge.[18][19]
See also
IQ
Intelligence
High culture
Cattell-Horn-Carroll theory
Cultural literacy
Core knowledge foundation



Fluid and crystallized intelligence
https://en.wikipedia.org/wiki/Fluid_and_crystallized_intelligence#History
The concepts of fluid intelligence (gf) and crystallized intelligence (gc) were introduced in 1963 by the psychologist Raymond Cattell.[1][2] According to Cattell's psychometrically-based theory, general intelligence (g) is subdivided into gf and gc. Fluid intelligence is the ability to solve novel reasoning problems and is correlated with a number of important skills such as comprehension, problem solving, and learning.[3] Crystallized intelligence, on the other hand, involves the ability to deduce secondary relational abstractions by applying previously learned primary relational abstractions.[4]


History
Fluid and crystallized intelligence are constructs originally conceptualized by Raymond Cattell.[1] The concepts of fluid and crystallized intelligence were further developed by Cattell and his former student John L. Horn.[5][6][2]

Fluid versus crystallized intelligence
Fluid intelligence (gf) refers to basic processes of reasoning and other mental activities that depend only minimally on prior learning (such as formal and informal education) and acculturation. Horn notes that it is formless, and can "flow into" a wide variety of cognitive activities [7] Tasks measuring fluid reasoning require the ability to solve abstract reasoning problems. Examples of tasks that measure fluid intelligence include figure classifications, figural analyses, number and letter series, matrices, and paired associates.[6]

Crystallized intelligence (gc) refers to learned procedures and knowledge. It reflects the effects of experience and acculturation. Horn notes that crystallized ability is a "precipitate out of experience," resulting from the prior application of fluid ability that has been combined with the intelligence of culture."[7] Examples of tasks that measure crystallized intelligence are vocabulary, general information, abstract word analogies, and the mechanics of language.[6]

An example of the application of fluid and crystallized abilities to problem-solving
Horn[7] provided the following example of crystallized and fluid approaches to solving a problem. Here is the problem he described:

"There are 100 patients in a hospital. Some (an even number) are one-legged, but wearing shoes. One-half of the remainder are barefooted. How many shoes are being worn?"

The crystallized approach to solving the problem would involve the application of high school level algebra. Algebra is an acculturational product.

x + 1/2(100-x)*2 = the number of shoes worn, where x = the number of one-legged men. 100 - x = the number of two-legged men. The solution boils down to 100 shoes.

In contrast to the crystallized approach to solving the problem, Horn provided an example of a fluid approach to solving the problem that does not depend on the learning of high school level algebra. Horn invented a boy who is too young to attend secondary school but could solve the problem through the application of fluid ability: "He may reason that, if half the two-legged people are without shoes, and all the rest (an even number) are one-legged, then the shoes must average one per person, and the answer is 100."

Relationship to Piaget's theory of cognitive development
Researchers have linked the theory of fluid and crystallized abilities to Piaget's theory of cognitive development.[8][9] Fluid ability and Piaget's operative intelligence both concern logical thinking and the "eduction of relations" (an expression Cattell used to refer to the inferring of relationships). Crystallized ability and Piaget's treatment of everyday learning reflect the impress of experience. Like fluid ability's relation to crystallized intelligence, Piaget's operativity is considered to be prior to, and ultimately provides the foundation for, everyday learning.[9]

Measurement of fluid intelligence
Various measures have been thought to assess fluid intelligence.

Raven's Progressive Matrices
The Raven's Progressive Matrices (RPM)[10] is one of the most commonly used measures of fluid ability. It is a non-verbal multiple choice test. Participants have to complete a series of drawings by identifying relevant features based on the spatial organization of an array of objects, and choosing one object that matches one or more of the identified features.[11] This task assesses the ability to consider one or more relationships between mental representations or relational reasoning. Propositional analogies and semantic decision tasks are also used to assess relational reasoning.[12][13]

Woodcock-Johnson Tests of Cognitive Abilities, Third Edition
In the Woodcock-Johnson Tests of Cognitive Abilities, Third Edition (WJ-III), gf is assessed by two tests: Concept Formation and Analysis Synthesis.[14] On Concept Formation tasks, the individual has to use categorical thinking while Analysis Synthesis tasks requires general sequential reasoning.[15]

WJ-III Concept Formation
Individuals have to apply concepts by inferring the underlying "rules" for solving visual puzzles that are presented in increasing levels of difficulty. As the level of difficulty increases, individuals have to identify a key difference (or the "rule") for solving puzzles involving one to one comparisons. For more difficult items, individuals need to understand the concept of "and" (e.g., a solution must have some of this and some of that) and the concept of "or" (e.g., to be inside a box, the item must be either this or that). The most difficult items require fluid transformations and cognitive shifting between the various types of concept puzzles that the examinee had worked with previously.[15]

WJ-III Analysis-Synthesis
In the Analysis-Synthesis test, the individual has to learn and orally state the solutions to incomplete logic puzzles that mimic a miniature mathematics system. The test also contains some of the features involved in using symbolic formulations in other fields such as chemistry and logic. The individual is presented a set of logic rules, a "key" that is used to solve the puzzles. The individual has to determine the missing colors within each of the puzzles using the key. Complex items presented puzzles that require two or more sequential mental manipulations of the key to derive a final solution. Increasingly difficult items involve a mix of puzzles that requires fluid shifts in deduction, logic, and inference.[14]

Wechsler Intelligence Scales for Children, Fourth Edition
In the Wechsler Intelligence Scales for Children, Fourth Edition (WISC-IV),[16] the Perceptual Reasoning Index contains two subtests that assessed gf: Matrix Reasoning, which involves induction and deduction, and Picture Concepts, which involves induction.[17]

WISC-IV Picture Concepts
In the Picture Concepts task, children were presented a series of pictures on two or three rows and asked which pictures (one from each row) belong together based on some common characteristic. This task assessed the child's ability to discover the underlying characteristic (e.g., rule, concept, trend, class membership) that governs a set of materials.[17]

WISC-IV Matrix Reasoning
Matrix Reasoning also tested this ability as well as the ability to start with stated rules, premises, or conditions and to engage in one or more steps to reach a solution to a novel problem (deduction). In the Matrix Reasoning test, children were presented a series or sequence of pictures with one picture missing. Their task was to choose the picture that fits the series or sequence from an array of five options. Since Matrix Reasoning and Picture Concepts involved the use of visual stimuli and did not require expressive language, they were considered to be non-verbal tests of gf.[17]

In the workplace
Within the corporate environment, fluid intelligence is a predictor of a person's capacity to work well in environments characterised by complexity, uncertainty, and ambiguity. The Cognitive Process Profile (CPP) measures a person's fluid intelligence and cognitive processes. It maps these against suitable work environments according to Elliott Jacques Stratified Systems Theory.[citation needed]

Factors related to measuring intelligence
Some authors have suggested that unless an individual is truly interested in a problem presented on an IQ test, the cognitive work required to solve the problem to may not be performed owing to a lack of interest. These authors contended that a low score on tests which are intended to measure fluid intelligence may reflect more a lack of interest in the tasks themselves rather than any sort of inability to complete the tasks successfully.[18]

Development across life span
Fluid intelligence peaks at around age 20 and then gradually declines.[19] This decline may be related to local atrophy of the brain in the right cerebellum, a lack of practice, or the result of age-related changes in the brain.[20][21]

Crystallized intelligence typically increases gradually, stays relatively stable across most of adulthood, and then begins to decline after age 65.[21] The exact peak age of cognitive skills remains elusive.[22]

Fluid intelligence and working memory
Working memory capacity is closely related to fluid intelligence, and has been proposed to account for individual differences in gf.[23][24]

Neuroanatomy
According to David Geary, gf and gc can be traced to two separate brain systems. Fluid intelligence involves both the dorsolateral prefrontal cortex, the anterior cingulate cortex, and other systems related to attention and short-term memory. Crystallized intelligence appears to be a function of brain regions that involve the storage and usage of long-term memories, such as the hippocampus.[25]


21st century skills
CHC theory
Deeper learning
General intelligence factor
John L. Horn
Intelligence
Malleability of intelligence
Nootropic
Outline of human intelligence
Raymond Cattell
Spatial intelligence (psychology)
Three stratum theory




Nootropic
https://en.wikipedia.org/wiki/Nootropic
Nootropics (/noʊ.əˈtrɒpɪks/ noh-ə-TROP-iks) (colloquial: smart drugs and cognitive enhancers) are drugs, supplements, and other substances that are claimed to improve cognitive function, particularly executive functions, memory, creativity, or motivation, in healthy individuals.[1] While many substances are purported to improve cognition, research is at a preliminary stage as of 2021, and the effects of the majority of these agents are not fully determined.

The use of cognition-enhancing drugs by healthy individuals in the absence of a medical indication spans numerous controversial issues, including the ethics and fairness of their use, concerns over adverse effects, and the diversion of prescription drugs for non-medical uses.[1][2] Nonetheless, the international sales of cognition-enhancing supplements have continued to grow over time, exceeding US$1 billion in 2015.[3]

In 2018 in the United States, some nootropic supplements were identified as having misleading ingredients and illegal marketing.[4][5] In 2019, the US Food and Drug Administration (FDA) and Federal Trade Commission (FTC) warned manufacturers and consumers about possible advertising fraud and marketing scams concerning nootropic supplements.[6][7]

tymology
The term "nootropic" is derived from the Ancient Greek words νόος (nóos) meaning "mind" and τροπή (tropḗ) meaning "a turning".[8][9][10]

Illegal marketing claims
Nootropics are frequently advertised with unsupported claims despite not being proven to be effective for improving cognition. The FDA and FTC warned manufacturers and consumers in 2019 about possible advertising fraud and marketing scams concerning nootropic supplement products.[6][7][11][12] The FDA and FTC stated that some nootropic products had not been approved as a drug effective for any medical purpose, were not proven to be safe, and were illegally marketed in the United States under violation of the Federal Food, Drug, and Cosmetic Act.[6][7]

Over the years 2010 to 2019, the FDA warned numerous supplement manufacturers about the illegal status of their products as unapproved drugs with no proven safety or efficacy at the doses recommended, together with misleading marketing.[6][7][11][12][13][14]

Availability and prevalence
In 2008, the most commonly used class of drug was stimulants, such as caffeine.[15] Manufacturers' marketing claims for dietary supplements are usually not formally tested and verified by independent entities.[16]

In 2016, the American Medical Association adopted a policy to discourage prescriptions of nootropics for healthy people, on the basis that the cognitive effects appear to be highly variable among individuals, are dose-dependent, and limited or modest at best.[17]

Use by students
The use of prescription stimulants is especially prevalent among students.[18] Surveys suggest that 0.7–4.5% of German students have used cognitive enhancers in their lifetimes.[19][20][21] Stimulants such as dimethylamylamine and methylphenidate are used on college campuses and by younger groups.[22] Based upon studies of self-reported illicit stimulant use, 5–35% of college students use diverted ADHD stimulants, which are primarily used for enhancement of academic performance rather than as recreational drugs.[23][24][25] Several factors positively and negatively influence an individual's willingness to use a drug for the purpose of enhancing cognitive performance. Among them are personal characteristics, drug characteristics, and characteristics of the social context.[19][20][26][27]

Side effects
The main concern with pharmaceutical drugs is adverse effects, which also apply to nootropics with undefined effect. Long-term safety evidence is typically unavailable for nootropics.[22] Racetams — piracetam and other compounds that are structurally related to piracetam — have few serious adverse effects and low toxicity, but there is little evidence that they enhance cognition in people having no cognitive impairments.[28]

In the United States, dietary supplements may be marketed if the manufacturer can show that the supplement is generally recognized as safe, and if the manufacturer does not make any claims about using the supplement to treat or prevent any disease or condition; supplements that contain drugs or advertise health claims are illegal under US law.[29]

Drugs
Central nervous system stimulants 
See also: Yerkes–Dodson law

Hebbian version of the Yerkes–Dodson law
Systematic reviews and meta-analyses of clinical human research using low doses of certain central nervous system stimulants found that these drugs enhance cognition in healthy people.[30][31][32] In particular, the classes of stimulants that demonstrate cognition-enhancing effects in humans act as direct agonists or indirect agonists of dopamine receptor D1, adrenoceptor A2, or both types of receptor in the prefrontal cortex.[30][31][33][34] Relatively high doses of stimulants cause cognitive deficits.[33][34]

Amphetamine – systematic reviews and meta-analyses report that low-dose amphetamine improves cognitive functions (e.g., inhibitory control, episodic memory, working memory, and aspects of attention) in healthy people and in individuals with ADHD.[30][31][32][34] A 2014 systematic review noted that low doses of amphetamine also improve memory consolidation, in turn leading to improved recall of information in non-ADHD youth.[32] It also improves task saliency (motivation to perform a task) and performance on tedious tasks that required a high degree of effort.[31][33][34]
Methylphenidate – a benzylpiperidine derivative that improves working memory, episodic memory, and inhibitory control, aspects of attention, and planning latency in healthy people.[30][31][32] It also may improve task saliency and performance on tedious tasks.[34] At above optimal doses, methylphenidate has off–target effects that decrease learning.[35]
Eugeroics (armodafinil and modafinil) – are classified as "wakefulness-promoting agents"; modafinil increases alertness, particularly in sleep-deprived individuals, and facilitates reasoning and problem solving in non-ADHD youth.[32] In a systematic review of small, preliminary studies where the effects of modafinil were examined, when simple psychometric assessments were considered, modafinil intake enhanced executive function.[36] Modafinil may not produce improvements in mood or motivation in sleep deprived or non-sleep deprived individuals.[37]
Caffeine – a meta-analysis found an increase in alertness and attentional performance.[38][33]
Nicotine – a meta-analysis of 41 clinical studies concluded that nicotine administration or smoking improves alerting and orienting attention and episodic and working memory and slightly improves fine motor performance.[39]
Racetams
Main article: Racetams
Racetams, such as piracetam, oxiracetam, phenylpiracetam, and aniracetam, are often marketed as cognitive enhancers and sold over-the-counter.[40] A recent study found that piracetam supplements sold in the United States were inaccurately labeled.[40] Racetams are often referred to as nootropics, but this property is not well established.[41] The racetams have poorly understood mechanisms, although piracetam and aniracetam are known to act as positive allosteric modulators of AMPA receptors and appear to modulate cholinergic systems.[42]

According to the US Food and Drug Administration,

"Piracetam is not a vitamin, mineral, amino acid, herb or other botanical, or dietary substance for use by humans to supplement the diet by increasing the total dietary intake. Further, piracetam is not a concentrate, metabolite, constituent, extract or combination of any such dietary ingredient. [...] Accordingly, these products are drugs, under section 201(g)(1)(C) of the Act, 21 U.S.C. § 321(g)(1)(C), because they are not foods and they are intended to affect the structure or any function of the body. Moreover, these products are new drugs as defined by section 201(p) of the Act, 21 U.S.C. § 321(p), because they are not generally recognized as safe and effective for use under the conditions prescribed, recommended, or suggested in their labeling."[14]

Cholinergics

This section needs more medical references for verification or relies too heavily on primary sources. Please review the contents of the section and add the appropriate references if you can. Unsourced or poorly sourced material may be challenged and removed.
Find sources: "Nootropic" – news · newspapers · books · scholar · JSTOR (August 2020)
Rod of Asclepius2.svg
Some of the most widely-used nootropic substances are the cholinergics. These are typically compounds and analogues of choline. Choline is an essential nutrient needed for the synthesis of acetylcholine (a neurotransmitter), and phosphatidylcholine (a structural component of brain cell membranes).

Citicoline - Compound consisting of choline and cytidine. Several meta-analyses found that it is likely effective for improving memory and learning in older people with mild cognitive decline, as well as in people who are recovering from a stroke.[43][44][45] There is little evidence it enhances cognition in young, healthy people.
Choline bitartrate - Choline bitartrate is a tartaric acid salt containing choline (41% choline by molecular weight). At least one meta-analysis has found choline bitartrate to be ineffective at improving any measure of cognitive performance.[46]
Alpha-GPC - L-Alpha glycerylphosphorylcholine has thus far only been studied in the context of cognitive performance alongside other substances such as caffeine.[47] A more comprehensive meta-analysis is needed before any strong conclusions are made about Alpha-GPC's usefulness as a nootropic.
Miscellaneous
Tolcapone – a systematic review noted that it improved verbal episodic memory and episodic memory encoding.[48]
Levodopa – a systematic review noted that it improved verbal episodic memory and episodic memory encoding.[48]
Atomoxetine – may improve working memory and attention when used at certain doses.[34]
Desipramine – may improve working memory and attention when used at certain doses.[34]
Nicergoline may improve human cognitive performance, including concentration, psychomotor performance, attention, reaction times, and other indicators of brain function.[49]
ISRIB enhanced spatial and fear-associated learning.[50]
The cognitive enhancing effects of pramipexole, guanfacine, clonidine, and fexofenadine have been tested, but no significant cognition-enhancing effects in healthy individuals were found.[48]

Psychedelic microdosing is the novel practice of using sub-threshold doses (microdoses) of psychedelic drugs in an attempt to improve mood and cognition.[51] The efficacy of this has not been verified.[52][53] In a study examining the qualitative reports of 278 microdosers the researchers found that there were mixed results among users.[54] While some users reported positive effects such as improved mood and cognition, others paradoxically reported negative effects such as physiological discomfort and anxiety.[54] In one of the only double-blind, randomized studies to date, those given microdoses of LSD did not perform better than those given the placebo on cognitive tasks.[55]

Herbs
Bacopa monnieri is used in Ayurvedic traditional medicine to improve memory.[56] Meta-analysis and reviews of clinical studies found evidence that the herb may improve cognition.[56][57][58] It is thought that Bacopa monnieri primarily works by stimulating neuron dendrite branching, thus facilitating inter-neural communication.[59] This view is contested, with others suggesting that Bacopa monnieri's nootropic effects are the result of its status as an antioxidant and adaptogen.[60]
Panax ginseng – A review by the Cochrane Collaboration concluded that "there is a lack of convincing evidence to show a cognitive enhancing effect of Panax ginseng in healthy participants and no high quality evidence about its efficacy in patients with dementia."[61] According to the National Center for Complementary and Integrative Health, "[a]lthough Asian ginseng has been widely studied for a variety of uses, research results to date do not conclusively support health claims associated with the herb."[62]
Ginkgo biloba – An extract of Ginkgo biloba leaf is marketed in dietary supplement form with claims it can enhance cognitive function in people without known cognitive problems, although there is no high-quality evidence to support such effects on memory or attention in healthy people.[63][64]
Salvia officinalis and lavandulaefolia (sage) – Some research has suggested certain extracts of Salvia officinalis may have positive effects on human brain function, but due to significant methodological problems, no firm conclusions can be drawn.[65][66] The thujone present in Salvia extracts may be neurotoxic.[66]
Centella asiatica – A 2017 meta-analysis with 11 studies (5 RCTs with placebo, 6 using other herbs as a comparison group) showing no significant improvement in all cognitive function, however may have some use in improving mood and anger. Overall dosages were smaller than the typical 3 grams used traditionally.[67]
History
[icon]	
This section needs expansion with: historical accounts of nootropic or nootropic-like substances and uses. You can help by adding to it. (November 2019)
The term "nootropic" was coined by Corneliu Giurgea in 1972[9][10] to describe a new classification of molecules that acted selectively towards the brain's higher-level integrative activity. In order for a product to qualify as a true nootropic, it must fulfill Giurgea's five criteria for the category. 1.It should aid with improvement in working memory and learning. 2.Supports brain function under hypoxic conditions or after electroconvulsive therapy. 3.Protection of the brain from physical or chemical toxicity. 4.Natural cognitive functions are enhanced. 5. It requires to be non-toxic to humans, without depression or stimulation of the brain. [68]

Nutrients and dietary supplements
A 2015 review found that use of omega-3 fatty acids, B vitamins, and vitamin E as nootropics was ineffective on cognitive function in normal middle-aged and older people.[69]

Omega-3 fatty acids: DHA and EPA – two Cochrane Collaboration reviews on the use of supplemental omega-3 fatty acids for ADHD and learning disorders conclude that there is limited evidence of treatment benefits for either disorder.[70][71] Two other systematic reviews found no cognition-enhancing effects in the general population.[69][72]
Folate – no cognition-enhancing effects in middle-aged and older adults without folate deficiency.[69]
Vitamin B6 – no cognition-enhancing effects in middle-aged and older adults without B6 deficiency.[69]
Vitamin B12 – no cognition-enhancing effects in middle-aged and older adults without B12 deficiency.[69]
Vitamin E – no cognition-enhancing effects in middle-aged and older adults without vitamin E deficiency.[69]
l-Theanine – A 2014 systematic review and meta-analysis found that concurrent caffeine and l-theanine use had synergistic psychoactive effects that promoted alertness, attention, and task switching. These effects were most pronounced during the first hour post-dose.[38] The European Food Safety Authority reported that there is insufficient information to determine if these effects exist when l-theanine is used without caffeine.[73]
See also
icon	Medicine portal
	Psychology portal
Nutritional neuroscience
Neuropharmacology
Psychoactive drug
Neuropsychopharmacology
Cognitive science
Evidence-based learning
Human enhancement
List of drugs used by militaries
Neurobiological effects of physical exercise § Persistent effects on cognition
Neurobiological effects of physical exercise § Transient effects on cognition
Neuroenhancement
Neuroplastic effects of pollution




21st century skills
https://en.wikipedia.org/wiki/21st_century_skills#Background

21st century skills comprise skills, abilities, and learning dispositions that have been identified as being required for success in 21st century society and workplaces by educators, business leaders, academics, and governmental agencies. This is part of a growing international movement focusing on the skills required for students to master in preparation for success in a rapidly changing, digital society. Many of these skills are also associated with deeper learning, which is based on mastering skills such as analytic reasoning, complex problem solving, and teamwork. These skills differ from traditional academic skills in that they are not primarily content knowledge-based.[1][2][3]

During the latter decades of the 20th century and into the 21st century, society has undergone an accelerating pace of change in economy and technology. Its effects on the workplace, and thus on the demands on the educational system preparing students for the workforce, have been significant in several ways. Beginning in the 1980s, government, educators, and major employers issued a series of reports identifying key skills and implementation strategies to steer students and workers towards meeting the demands of the changing workplace and society.

The current workforce is significantly more likely to change career fields or jobs. Those in the Baby Boom generation entered the workforce with a goal of stability; subsequent generations are more concerned with finding happiness and fulfillment in their work lives. Young workers in North America are now likely to change jobs at a much higher rate than previously, as much as once every 4.4 years on average.[4][5] With this employment mobility comes a demand for different skills, ones that enable people to be flexible and adaptable in different roles or in different career fields.[6]

As western economies have transformed from industrial-based to service-based, trades and vocations have smaller roles.[7] However, specific hard skills and mastery of particular skill sets, with a focus on digital literacy, are in increasingly high demand.[1][2] People skills that involve interaction, collaboration, and managing others are increasingly important.[8] Skills that enable people to be flexible and adaptable in different roles or in different fields, those that involve processing information and managing people more than manipulating equipment—in an office or a factory—are in greater demand.[9] These are also referred to as "applied skills" or "soft skills",[10] including personal, interpersonal, or learning-based skills, such as life skills (problem-solving behaviors), people skills, and social skills. The skills have been grouped into three main areas:[11]

Learning and innovation skills: critical thinking and problem solving, communications and collaboration, creativity and innovation
Digital literacy skills: information literacy, media literacy, Information and communication technologies (ICT) literacy
Career and life skills: flexibility and adaptability, initiative and self-direction, social and cross-cultural interaction, productivity and accountability
Many of these skills are also identified as key qualities of progressive education, a pedagogical movement that began in the late nineteenth century and continues in various forms to the present.



Background
Since the early 1980s, a variety of governmental, academic, non-profit, and corporate entities have conducted considerable research to identify key personal and academic skills and competencies they determined were needed for the current and next generation. The identification and implementation of 21st century skills into education and workplaces began in the United States but has spread to Canada,[12][13] the United Kingdom,[14] New Zealand,[15] and through national and international organizations such as APEC[16] and the OECD.[17]

In 1981, the US Secretary of Education created the National Commission on Excellence in Education to examine the quality of education in the United States."[18] The commission issued its report A Nation at Risk: The Imperative for Educational Reform in 1983. A key finding was that "educational reform should focus on the goal of creating a Learning Society."[19] The report's recommendations included instructional content and skills:

Five New Basics: English, Mathematics, Science, Social Studies, Computer Science
Other Curriculum Matters: Develop proficiency, rigor, and skills in Foreign Languages, Performing Arts, Fine Arts, Vocational Studies, and the pursuit of higher-level education.
Skills and abilities (consolidated):[20]

enthusiasm for learning
deep understanding
application of learning
examination, inquiry, critical thinking and reasoning
communication – write well, listen effectively, discuss intelligently, be proficient in a foreign language,
cultural, social, and environmental - understanding and implications
technology – understand the computer as an information, computation, and communication device, and the world of computers, electronics, and related technologies.
diverse learning across a broad range - fine arts, performing arts, and vocational
Until the dawn of the 21st century, education systems across the world focused on preparing their students to accumulate content and knowledge.[21] As a result, schools focused on providing literacy and numeracy skills to their students, as these skills were perceived as necessary to gain content and knowledge. [21] Recent developments in technology and telecommunication have made information and knowledge ubiquitous and easily accessible in the 21st century. Therefore, while skills such as literacy and numeracy are still relevant and necessary, they are no longer sufficient. In order to respond to technological, demographic and socio-economic changes, education systems began to make the shift toward providing their students with a range of skills that relied not only on cognition but also on the interdependencies of cognitive, social, and emotional characteristics. [22]

Notable efforts were conducted by the US Secretary of Labor's Commission on Achieving Necessary Skills (SCANS), a national coalition called the Partnership for 21st Century Skills (P21), the international Organisation for Economic Co-operation and Development, the American Association of College and Universities, researchers at MIT and other institutions of higher learning, and private organizations.

Additional research has found that the top skills demanded by U.S. Fortune 500 companies by the year 2000 had shifted from traditional reading, writing and arithmetic to teamwork, problem solving, and interpersonal skills.[23] A 2006 Conference Board survey of some 400 employers revealed that the most important skills for new workforce entrants included oral and written communications and critical thinking/problem solving, ahead of basic knowledge and skills, such as the reading comprehension and mathematics. While the ‘three Rs’ were still considered foundational to new workforce entrants’ abilities, employers emphasized that applied skills like collaboration/teamwork and critical thinking were ‘very important’ to success at work."[24]

A 2006 report from MIT researchers countered the suggestion that students acquire critical skills and competencies independently by interacting with popular culture, noting three continuing trends that suggest the need for policy and pedagogical interventions:"[25]

The Participation Gap — the unequal access to the opportunities, experiences, skills, and knowledge that will prepare youth for full participation in the world of tomorrow.
The Transparency Problem — The challenges young people face in learning to see clearly the ways that media shape perceptions of the world.
The Ethics Challenge — The breakdown of traditional forms of professional training and socialization that might prepare young people for their increasingly public roles as media makers and community participants."
According to labor economists at MIT and Harvard’s Graduate School of Education, the economic changes brought about over the past four decades by emerging technology and globalization, employers’ demands for people with competencies like complex thinking and communications skills has increased greatly.[26] They argue that the success of the U.S. economy will rely on the nation's ability to give students the "foundational skills in problem-solving and communications that computers don’t have."[27]

In 2010, the Common Core State Standards Initiative, an effort sponsored by the National Governors Association (NGA) and the Council of Chief State School Officers (CCSSO), issued the Common Core Standards, calling for the integration of 21st century skills into K-12 curricula across the United States.[28] Teachers and general citizens also played a critical role in its development along with the NGA and CCSSO by commenting during two public forums which helped shape the curriculum and standards. States also convened teams of teachers to assist and provide feedback as well as they looked towards the National Education Association (NEA) and many other education organizations to provide constructive feedback.[29] As of December 2018, 45 states have entirely adopted the common core standards, one state has adopted half by only adopting the literacy section (Minnesota), and only four states remain who have not adopted into the common core standards of education (Alaska, Nebraska, Texas, and Virginia).[30]

The skills
The skills and competencies that are generally considered "21st Century skills" are varied but share some common themes. They are based on the premise that effective learning, or deeper learning, a set of student educational outcomes including acquisition of robust core academic content, higher-order thinking skills, and learning dispositions. This pedagogy involves creating, working with others, analyzing, and presenting and sharing both the learning experience and the learned knowledge or wisdom, including to peers and mentors as well as teachers. This contrasts with more traditional learning methodology that involves learning by rote and regurgitating info/knowledge back to the teacher for a grade. The skills are geared towards students and workers to foster engagement; seeking, forging, and facilitating connections to knowledge, ideas, peers, instructors, and wider audiences; creating/producing; and presenting/publishing. The classification or grouping has been undertaken to encourage and promote pedagogies that facilitate deeper learning through both traditional instruction as well as active learning, project-based learning, problem based learning, and others. A 2012 survey conducted by the American Management Association (AMA) identified three top skills necessary for their employees: critical thinking, communication and collaboration.[31] Below are some of the more readily identifiable lists of 21st century skills.

Common Core
The Common Core Standards issued in 2010 were intended to support the "application of knowledge through higher-order thinking skills." The initiative's stated goals are to promote the skills and concepts required for college and career readiness in multiple disciplines and life in the global economy. Skills identified for success in the areas of literacy and mathematics:[32][33]

cogent reasoning
evidence collection
critical-thinking, problem-solving, analytical thinking
communication
SCANS
Following the release of A Nation at Risk, the U.S. Secretary of Labor appointed the Secretary's Commission on Achieving Necessary Skills (SCANS) to determine the skills needed for young people to succeed in the workplace to foster a high-performance economy. SCANS focused on what they called "learning a living" system. In 1991, they issued their initial report, What Work Requires of Schools. The report concluded that a high-performance workplace requires workers who have key fundamental skills: basic skills and knowledge, thinking skills to apply that knowledge, personal skills to manage and perform; and five key workplace competencies.[34]

Fundamental Skills

Basic Skills: reads, writes, performs arithmetic and mathematical operations, listens and speaks.
Thinking Skills: thinks creatively, makes decisions, solves problems, visualizes, knows how to learn, and reasons
Personal Qualities: displays responsibility, self-esteem, sociability, self-management, and integrity and honesty
Workplace Competencies

Resources: identifies, organizes, plans, and allocates resources
Interpersonal: works with others (participates as member of a team, teaches others new skills, serves clients/customers, exercises leadership, negotiates, works with diversity)
Information: acquires and uses information (acquires and evaluates, organizes and maintains, and interprets and communicates information; uses computers to process information)
Systems: understands complex inter-relationships (understands systems, monitors and corrects performance, improves or designs systems)
Technology: works with a variety of technologies (selects technology, applies technology to task, maintains and troubleshoots equipment)
Partnership for 21st Century Skills (P21)
In 2002 the Partnership for 21st Century Skills (now the Partnership for 21st Century Learning, or P21) was founded as a non-profit organization by a coalition that included members of the national business community, education leaders, and policymakers: the National Education Association (NEA), United States Department of Education, AOL Time Warner Foundation, Apple Computer, Inc., Cable in the Classroom, Cisco Systems, Inc., Dell Computer Corporation, Microsoft Corporation, SAP, Ken Kay (President and Co-Founder), and Dins Golder-Dardis.[35] To foster a national conversation on "the importance of 21st century skills for all students" and "position 21st century readiness at the center of US K-12 education", P21 identified six key skills:[35][36]

Core subjects.
21st century content.
Learning and thinking skills.
Information and communication technologies (ICT) literacy.
Life skills.
21st century assessments.
7C Skills have been identified by P21 senior fellows at P21, Bernie Trilling and Charles Fadel:[11]

Critical thinking and problem solving
Creativity and innovation
Cross-cultural understanding
Communications, information, and media literacy
Computing and ICT literacy
Career and learning self-reliance
The Four Cs
The P21 organization also conducted research that identified deeper learning competencies and skills they called the Four Cs of 21st century learning:

Collaboration
Communication
Critical thinking
Creativity
The University of Southern California's Project New Literacies website list four different "C" skills:[25]

Create
Circulate
Connect
Collaborate
Participatory culture & new media literacies
Main article: Participatory culture
Researchers at MIT, led by Henry Jenkins, Director of the Comparative Media Studies Program, in 2006 issued a white paper ("Confronting the Challenges of a Participatory Culture: Media Education for the 21st Century"), that examined digital media and learning.[25] To address this Digital Divide, they recommended an effort be made to develop the cultural competencies and social skills required to participate fully in modern society instead of merely advocating for installing computers in each classroom.[37] What they term participatory culture shifts this literacy from the individual level to a broader connection and involvement, with the premise that networking and collaboration develop social skills that are vital to new literacies. These in turn build on traditional foundation skills and knowledge taught in school: traditional literacy, research, technical, and critical analysis skills.

Participatory culture is defined by this study as having: low barriers to artistic expression and civic engagement, strong support for creating and sharing one's creations, informal mentorship, belief that members' own contributions matter, and social connection (caring what other people think about their creations).[25] Forms of participatory culture include:[25]

Affiliations — memberships, formal and informal, in online communities centered around various forms of media, such as message boards, metagaming, game clans, and other social media).
Expressions — producing new creative forms, such as digital sampling, skinning and modding, fan videomaking, fan fiction writing, zines, mash-ups.
Collaborative Problem-solving — working together in teams, formal and informal, to complete tasks and develop new knowledge (such as through Wikipedia, alternative reality gaming, spoiling).
Circulations — shaping the flow of media (such as podcasting, blogging).
The skills identified were:[1]

Play
Simulation
Appropriation
Multitasking
Distributed Cognition
Collective Intelligence
Judgment
Transmedia Navigation
Networking
Negotiation
A 2005 study (Lenhardt & Madden) found that more than one-half of all teens have created media content, and roughly one third of teens who use the Internet have shared content they produced, indicating a high degree of involvement in participatory cultures.[25] Such digital literacies emphasize the intellectual activities of a person working with sophisticated information communications technology, not on proficiency with the tool.[1][38]

EnGauge 21st century skills
In 2003 the North Central Regional Educational Laboratory and the Metiri Group issued a report entitled "enGauge® 21st Century Skills: Literacy in the Digital Age" based on two years of research. The report called for policymakers and educators to define 21st century skills, highlight the relationship of those skills to conventional academic standards, and recognize the need for multiple assessments to measure and evaluate these skills within the context of academic standards and the current technological and global society.[39] To provide a common understanding of, and language for discussing, the needs of students, citizens, and workers in a modern digital society, the report identified four "skill clusters":

Digital-Age
Inventive Thinking
Effective Communication
High Productivity
OECD competencies
In 1997, member countries of the Organisation for Economic Co-operation and Development launched the Programme for International Student Assessment (PISA) to monitor "the extent to which students near the end of compulsory schooling have acquired the knowledge and skills essential for full participation in society".[8] In 2005 they identified three "Competency Categories to highlight delivery related, interpersonal, and strategic competencies:[40]"

Using Tools Interactively
Interacting in Heterogeneous Groups
Acting Autonomously
American Association of College and Universities
The AAC&U conducted several studies and surveys of their members. In 2007 they recommended that graduates of higher education attain four skills - The Essential Learning Outcomes:[41]

Knowledge of Human Cultures and the Physical and Natural World
Intellectual and Practical Skills
Personal and Social Responsibility
Integrative Learning
They found that skills most widely addressed in college and university goals are:[42]

writing
critical thinking
quantitative reasoning
oral communication
intercultural skills
information literacy
ethical reasoning
A 2015 survey of AAC&U member institutions added the following goals:

analytic reasoning
research skills and projects
integration of learning across disciplines
application of learning beyond the classroom
civic engagement and competence
ISTE / NETS performance standards
The ISTE Educational Technology Standards (formerly National Educational Technology Standards (NETS)) are a set of standards published by the International Society for Technology in Education (ISTE) to leverage the use of technology in K-12 education.[43][44] These are sometimes intermixed with information and communication technologies (ICT) skills. In 2007 NETS issued a series of six performance indicators (only the first four are on their website as of 2016):

Creativity and Innovation
Communication and Collaboration
Research and Information Fluency
Critical Thinking, Problem Solving, and Decision Making
Digital Citizenship
Technology Operations and Concepts
ICT Literacy Panel digital literacy standards (2007)
In 2007 the Educational Testing Service (ETS) ICT Literacy Panel released its digital literacy standards:[45]

Information and Communication Technologies (ICT) proficiencies:

Cognitive proficiency
Technical proficiency
ICT proficiency
A person possessing these skills would be expected to perform these tasks for a particular set of information: access, manage, integrate, evaluate, create/publish/present. The emphasis is on proficiency with digital tools.[45]

Dede learning styles and categories
In 2005, Chris Dede of the Harvard Graduate School of Education developed a framework based on new digital literacies entitled
Neomillennial Learning Styles:[1]

Fluency in multiple media
Active learning based on collectively seeking, sieving, and synthesizing experiences.
Expression through non-linear, associational webs of representations.
Co-design by teachers and students of personalized learning experiences.
Dede category system
With the exponential expansion of personal access to Internet resources, including social media, information and content on the Internet has evolved from being created by website providers to individuals and communities of contributors. The 21st century Internet centered on material created by a small number of people, Web 2.0 tools (e.g. Wikipedia) foster online communication, collaboration, and creation of content by large numbers of people (individually or in groups) in online communities.[1]

In 2009, Dede created a category system for Web 2.0 tools:[1]

Sharing (communal bookmarking, photo/video sharing, social networking, writers’ workshops/fanfiction)
Thinking (blogs, podcasts, online discussion fora)
Co-Creating (wikis/collaborative file creation, mashups/collective media creation, collaborative social change communities)
World Economic Forum
In 2015, the World Economic Forum published a report titled ‘New Vision for Education: Unlocking the Potential of Technology’ [46] that focused on the pressing issue of the 21st-century skills gap and ways to address it through technology. In the report, they defined a set of 16 crucial proficiencies for education in the 21st century. Those skills include six “foundational literacies”, four “competencies” and six “character qualities” listed below.

Foundation Literacies

Literacy and numeracy
Scientific literacy
ICT literacy
Financial literacy
Cultural literacy
Civic literacy
Competencies

Critical thinking/problem solving
Communication
Collaboration
Creativity
Character Qualities

Initiative
Persistence/grit
Adaptability
Curiosity
Leadership
Social and cultural awareness
National Research Council
In a paper titled ‘Education for Life and Work: Developing Transferable Knowledge and Skills in the 21st Century’ [47] produced by the National Research Council of National Academies, the National Research defines 21st century skills, describes how the skills relate to each other and summaries the evidence regarding 21st century skills.

As a first step toward describing “21st century skills,” the National Research Council identified three domains of competence: cognitive, interpersonal, and intrapersonal while recognizing that the three domains while different, are intertwined in human development and learning. These three domains represent distinct facets of human thinking and build on previous efforts to identify and organize dimensions of human behaviour. The committee produced the following cluster of 21st century skills in the above-mentioned 3 domains.

Cognitive Competencies

Cognitive processes and strategies: Critical thinking, problem solving, analysis, reasoning and argumentation, interpretation, decision-making, adaptive learning
Knowledge: Information literacy, ICT literacy, oral and written communication, and active listening
Creativity: Creativity and innovation
Intrapersonal Competencies

Intellectual openness: Flexibility, adaptability, artistic and cultural appreciation, personal and social responsibility, appreciation for diversity, adaptability, continuous learning, intellectual interest and curiosity
Work ethic/conscientiousness: Initiative, self-direction, responsibility, perseverance, grit, career orientation, ethics, integrity, citizenship
Positive core self-evaluation: Self monitoring, self evaluation, self reinforcement, physical and psychological health
Interpersonal Competencies

Teamwork and collaboration: Communication, collaboration, cooperation, teamwork, coordination, interpersonal skills
Leadership: Responsibility, assertive communication, self presentation, social influence with others
Implementation
Multiple agencies and organizations have issued guides and recommendation for implementation of 21st century skills in a variety of learning environments and learning spaces. These include five separate educational areas: standards, assessment, professional development, curriculum & instruction, and learning environments.[48][49]

The designs of learning environments and curricula have been impacted by the initiatives and efforts to implement and support 21st century skills with a move away from the factory model school model and into a variety of different organizational models.[50][51] Hands-on learning and project-based learning have resulted in the development of programs and spaces such as STEM and makerspaces. Collaborative learning environments have fostered flexibility in furniture and classroom layout as well as differentiated spaces, such as small seminar rooms near classrooms. Literacy with, and access to, digital technology has impacted the design of furniture and fixed components as students and teachers use tablets, interactive whiteboards and interactive projectors. Classroom sizes have grown to accommodate a variety of furniture arrangements and grouping, many of which are less space-efficient than traditional configurations of desks in rows.[52]

See also
Applied academics
Design-based learning
Information literacies
Learning environment
Learning space
Phenomenon-based learning
STEM fields




Phenomenon-based learning
https://en.wikipedia.org/wiki/Phenomenon-based_learning#Features
Phenomenon-based learning (PhBL or PhenoBL) is a multidisciplinary, constructivist form of learning or pedagogy where students study a topic or concept in a holistic approach instead of in a subject-based approach. PhBL includes both topical learning (also known as topic-based learning or instruction), where the phenomenon studied is a specific topic, event, or fact, and thematic learning (also known as theme-based learning or instruction), where the phenomenon studied is a concept or idea. PhBL emerged as a response to the idea that traditional, subject-based learning is outdated and removed from the real-world and does not offer the optimum approach to development of 21st century skills. It has been used in a wide variety of higher educational institutions and more recently in grade schools.[1]


Features
PhBL forges connections across content and subject areas within the limits of the particular focus.[2] It can be a used as part of teacher-centered passive learning although in practice it is used more in student-centered active learning environments, including inquiry-based learning, problem-based learning, or project-based learning. An example of topical learning might be studying a phenomenon or topic (such as a geographical feature, historical event, or notable person) instead of isolated subjects (such as geography, history, or literature). In the traditional subject-based approach of most Western learning environments, the learner would spend a set amount of time studying each subject; with topical learning, the trend is to spend a greater amount of time focused on the broader topic.[3] During this topical study, specific knowledge or information from the individual subjects would normally be introduced in a relevant context instead of in isolation or the abstract.[4]

Topical learning is most frequently applied as a learner-centered approach, where the student, not the teacher, selects the topic or phenomenon to be studied. This is thought to be more successful at engaging students and providing deeper learning as it will be more likely to align with their own interests and goals.[citation needed] This aspect has also been recognized as facilitating the integration of education as well as a method to enable students to obtain core knowledge and skills across a range of subjects, it has been considered effective in promoting enthusiasm and greater organization, communication, and evaluation.[5][4][3]

Similar to project-based learning, it also provides opportunities to explore a topic or concept in detail. With deeper knowledge students develop their own ideas, awareness, and emotions about the topic.[citation needed]

While not absolute, PhBL has several main features:

Inquiry-based
The PhBL approach supports learning in accordance with inquiry learning, problem-based learning, and project and portfolio learning in formal educational as well as in the workplace. It begins with studying and developing an understanding of the phenomenon through inquiry. A problem-based learning approach can then be used to discover answers and develop conclusions about the topic.

Anchored in the real world
The phenomenon-based approach is a form of anchored learning, although it is not necessarily linked to technology. The questions asked and items studied are anchored in real-world phenomena, and the skills that are developed and information learned can be applied across disciplines and beyond the learning environments in real-world situations.[1]

Contextual
PhBL provides a process where new information is applied to the phenomenon or problem. This context demonstrates to the learner immediate utility value of the concepts and information being studied. Application and use of this information during the learning situation is very important for retention. Information that is absorbed only through listening or reading, or in the abstract (such as formulas and theories) without clear and obvious application to the learning at hand, or to real-world application, often remain in short-term memory and are not internalized.[1]

Authenticity
PhBL can demonstrate the authenticity of learning, a key requirement for deeper learning. In a PhBL environment, cognitive processes correspond to those in the actual/real-world situations where the learned subject matter or skills are used. The intent is to bring genuine practices and processes into learning situations to allow participation in the "expert culture" of the area and practices being studied.[1]

Constructivism
PhBL is a constructivist form of learning, in which learners are seen as active knowledge builders and information is seen as being constructed as a result of problem-solving. Information and skills are constructed out of ‘little pieces’ into a whole relevant to the situation at the time. When phenomenon based learning occurs in a collaborative setting (the learners work in teams, for example), it supports the socio-constructivist and sociocultural learning theories, in which information is not seen only as an internal element of an individual; instead, information is seen as being formed in a social context. Central issues in the sociocultural learning theories include cultural artifacts (e.g. systems of symbols such as language, mathematical calculation rules and different kinds of thinking tools) – not every learner needs to reinvent the wheel, they can use the information and tools transmitted by cultures.[1]

Topical learning
Topical learning (TL) has been used for decades to study a specific topic such as a geographical feature, historical event, legal case, medical condition, or notable person, each of which may cover more than one academic subject such as geography, history, law, or medicine. TL forges connections across content areas within the limits of the particular topic.[2] As a cross-disciplinary application, it has been used as a means of assisting foreign language learners to use the topic as a means to learn the foreign language. There are several benefits of topic-based learning. When students focus on learning a topic, the specific subject, such as a foreign language, becomes an important tool or medium to understand the topic, thus providing a meaningful way for learners to use and learn the subject (or language).

Thematic learning
Main article: Thematic learning
Thematic learning is used to study a macro theme, such as a broad concept or large and integrated system (political system, ecosystem, growth, etc.). In the United States, it is used to study concepts identified in the Core Curriculum Content Standards. As with topical learning, it forges connections across content areas within the limits of the particular topic.[2] Proponents state that by studying the broad concepts that connect what would otherwise be isolated subject areas, learners can develop skills and insights for future learning and the workplace.[6]

Finland
Main article: Education in Finland
Commencing in the 2016–2017 academic year, Finland will begin implementing educational reform that will mandate that topical learning (phenomenon-based learning) be introduced alongside traditional subject-based instruction. As part of a new National Curriculum Framework, it will apply to all basic schools for students aged 7–16 years old. Finnish schools have used PhBL for several decades, but it was not previously mandatory.[4] It is anticipated that educators around the world will be studying this development as Finland's educational system is considered to be a model of success by many.[4][7][8][3][9] This shift coincides with other changes that are encouraging development of 21st century skills such as collaboration, communication, creativity, and critical thinking.[10]

References
 Phenomenal Education. Retrieved 2017-06-03
 Differentiated Instruction – Thematic vs. Topical Instruction, Richland School District webpage Archived 2017-12-13 at the Wayback Machine. Retrieved 2017-06-02
 Nick Nedeljkovic: Phenomenon-Based Learning, October 24, 2016
 Bashaer Al Kilani: What is Phenomenon-Based Learning?, Teach Middle East, April 21, 2016. Retrieved 2017-06-03
 j. Mires Peter w. Howie r. m. Harde, Gary (1998). "A 'topical' approach to planned teaching and using a topic-based study guide". Medical Teacher. 20 (5): 438–441. doi:10.1080/01421599880535.
 Thematic Instruction, Funderstanding. April 14, 2011. Retrieved 2017-06-03
 Adam Taylor, 26 Amazing Facts About Finland's Unorthodox Education System, Business Insidere, Dec 14, 2011. Retrieved 2017-06-03
 Andrew Freeman: Finland’s Education System: 10 Surprising Facts That Americans Shouldn’t Ignore, Takepart, August 14, 2012 Archived December 4, 2016, at the Wayback Machine. Retrieved 2017-06-02
 No, Finland isn’t ditching traditional school subjects. Here’s what’s really happening. The Washington Post, March 26, 2015. Retrieved 2017-06-03
 Georgetown – Augmented Learning and Teaching The Skills of the 21st Century, The Center For Work Ethic Development. Retrieved 2017-06-03
Further reading
Symeonidis, Vasileios; Schwarz, Johanna F. (December 2016). "Phenomenon-Based Teaching and Learning through the Pedagogical Lenses of Phenomenology: The Recent Curriculum Reform in Finland".
External links
Phenomenal Education
How is Finland building schools of the future?, Enterprise Innovation
Next Generation Science Standards – Using Phenomena in NGSS-Designed Lessons and Units
FAO – Agroecology Knowledge Hub http://www.fao.org/agroecology/database/detail/en/c/451720/





Design-based learning
https://en.wikipedia.org/wiki/Design-based_learning#Design_process
Design-based learning (DBL), also known as design-based instruction, is an inquiry-based form of learning, or pedagogy, that is based on integration of design thinking and the design process into the classroom at the K-12 and post-secondary levels.[1][2] Design-based learning environments can be found across many disciplines, including those traditionally associated with design (e.g. art, architecture, engineering, interior design, graphic design), as well as others not normally considered to be design-related (science, technology, business, humanities).[3][4] DBL, as well as project-based learning and problem-based learning, is used to teach 21st century skills such as communication and collaboration and foster deeper learning.[5]

Deeper learning is supported when students design and create an artifact that requires understanding and application of knowledge. DBL activity supports iteration as students create, assess, and redesign their projects. The work's complexity often requires collaboration and specialized roles, providing students with the opportunity to become “experts” in a particular area. Design projects require students to establish goals and constraints, generate ideas, and create prototypes through storyboarding or other representational practices.[1] Robotics competitions in schools are popular design-based learning activities, wherein student teams design, build and then pilot their robots in competitive challenges.

Design-based learning was developed in the 1980s by Doreen Nelson, a professor at California State Polytechnic University, Pomona and the Art Center College of Design. Her findings suggested that kinesthetic problem-solving helps students acquire, retain, and synthesize information in practical ways.[6][7]





Organizational learning
https://en.wikipedia.org/wiki/Organizational_learning#Relevance
Organizational learning is the process of creating, retaining, and transferring knowledge within an organization. An organization improves over time as it gains experience. From this experience, it is able to create knowledge. This knowledge is broad, covering any topic that could better an organization. Examples may include ways to increase production efficiency or to develop beneficial investor relations. Knowledge is created at four different units: individual, group, organizational, and inter organizational.

The most common way to measure organizational learning is a learning curve. Learning curves are a relationship showing how as an organization produces more of a product or service, it increases its productivity, efficiency, reliability and/or quality of production with diminishing returns. Learning curves vary due to organizational learning rates. Organizational learning rates are affected by individual proficiency, improvements in an organization's technology, and improvements in the structures, routines and methods of coordination.[1]


Relevance
Organizational learning happens as a function of experience within an organization and allows the organization to stay competitive in an ever-changing environment. Organizational learning is a process improvement that can increase efficiency, accuracy, and profits. A real-world example of organizational learning is how a new pizza store will reduce the cost per pizza as the cumulative production of pizzas increases.[1] As the staff creates more pizza; they begin to make pizzas faster, the staff learns how to work together, and the equipment is placed in the most efficient location leading to cheaper costs of creation. An example of a more formal way to track and support organizational learning is a learning agenda.

Organizational learning is an aspect of organizations and a subfield of organizational studies. As an aspect of an organization, organizational learning is the process of creating, retaining, and transferring knowledge. Knowledge creation, knowledge retention, and knowledge transfer can be seen as adaptive processes that are functions of experience.[2] Experience is the knowledge that contributes to the procedural understanding of a subject through involvement or exposure. Research within organizational learning specifically applies to the attributes and behavior of this knowledge and how it can produce changes in the cognition, routines, and behaviors of an organization and its individuals.[3]

Individuals are predominantly seen as the functional mechanisms for organizational learning by creating knowledge through experience.[4] However, individuals' knowledge only facilitates learning within the organization as a whole if it is transferred. Individuals may withhold their knowledge or exit the organization. Knowledge that is embedded into the organization, in addition to its individuals, can be retained.[5] Organizations can retain knowledge in other ways than just retaining individuals, including using knowledge repositories such as communication tools, processes, learning agendas, routines, networks, and transactive memory systems.[6][7]

As a subfield, organizational learning is the study of experience, knowledge, and the effects of knowledge within an organizational context.[8] The study of organizational learning directly contributes to the applied science of knowledge management (KM) and the concept of the learning organization. Organizational learning is related to the studies of organizational theory, organizational communication, organizational behavior, organizational psychology, and organizational development. Organizational learning has received contributions from the fields of educational psychology, sociology, economics, anthropology, political science, and management science.[9]

Communities of learning
Organizations gain knowledge in one of the four organizational communities of learning: individual, team, organizational, and inter-organizational. Organizational learning "involves the process through which organizational communities (e.g. groups, departments, divisions) change as a result of experience." An example of organizational learning is a hospital surgical team learning to use new technology that will increase efficiency.[10]

Individual learning is the smallest community at which learning can occur. An individual learns new skills or ideas, and their productivity at work may increase as they gain expertise. The individual can decide whether or not to share their knowledge with the rest of the group. If the individual leaves the group and doesn't share their knowledge before leaving, the group loses this knowledge.[11] In their study of software development, Boh, Slaughter and Espinosa (2007) found that individuals were more productive the more specialized experience they had with a certain system.[12]
Group learning is the next largest community[13] There are conflicting definitions of group learning among researchers studying it. One belief is that group learning is a process in which a group takes action, gets feedback, and uses this feedback to modify their future action.[14] Another belief is that group learning happens when a member shares their individual knowledge with other group members. Others have suggested that group learning is primarily a process of error detection and correction[15] or that group learning is primarily about the processes of interpretation and integration.[16] Once this happens, individual learning turns into group learning.[11] Reagans, Argote, and Brooks (2005) studied group learning by examining joint-replacement surgery in teaching hospitals. They concluded that "increased experience working together in a team promoted better coordination and teamwork."[17] Working together in a team also allowed members to share their knowledge with others and learn from other members. To sum up the different definitions cover following aspects: task independence (what one group member does affects and is affected by another group member); social psychological awareness (members perceive themselves as a group and are perceived as a group); and social embeddedness (the group exists in a larger social system).[18]
Organizational learning is the way in which an organization creates and organizes knowledge relating to their functions and culture. Organizational learning happens in all of the organization's activities, and it happens in different speeds. The goal of organizational learning is to successfully adapt to changing environments, to adjust under uncertain conditions, and to increase efficiency.[19] According to Argote (1993), managers in manufacturing plants saw organization learning occur when they found ways to make individual workers more proficient, improve the organization's "technology, tooling, and layout," improve the organization's structure, and determine the organization's strengths.[4]
Interorganizational learning is the way in which different organizations in an alliance collaborate, share knowledge, and learn from one another. An organization is able to improve its "processes and products by integrating new insights and knowledge" from another organization.[20] By learning from another organization, an organization is able to cut time costs, decrease the risks associated with problem solving, and learn faster. Learning from another organization can mean either applying the same ideas used by that organization or modifying these ideas, thereby creating innovation.[20] Inter-organizational learning occurs frequently in fixed business models, such as franchising. The franchisee looking to use the franchisor's brand has to learn how to use the organization's business model before starting a franchise.[21]
History of study
The origin of the focused study of organizational learning can be traced to the late 1970s, when researchers studied it from a psychological viewpoint. Key advances in the field include:

Behavioral psychology and organizational development: In their 1978 work on organizational learning, Chris Argyris and Donald Schön developed the concepts of single-loop and double-loop learning.[22] Single-loop learning is the process in which a mistake is corrected by using a different strategy or method that is expected to yield a different, successful outcome. Take, for example, a person who acts a certain way to accomplish a certain goal. If this person's actions fail in accomplishing the goal, with single-loop learning, this person will reflect on their previous actions and, going forward, they will take a different set of actions to accomplish the same goal. Double-loop learning, on the other hand, is a more complicated process in which a mistake is corrected by rethinking the initial goal. In the previous example, the person would show double-loop learning if they chose to reevaluate their goal and beliefs instead of simply reassessing their failed actions. They will then take a set of actions that are aligned with their reevaluated goals and beliefs. Argyris and Schön explain that both single-loop and double-loop learning processes are present in organizations and are two types of organizational learning. Single-loop learning occurs when an organization detects a mistake, corrects it, and carries on with its present policies and objectives. Double-loop learning occurs when an organization detects a mistake and changes its policies and objectives before it can take corrective actions.[23][24]
Adaptation and routines: In their book defining the behavioral theory of the firm, Richard Cyert and James G. March described organizational learning as an organization's adaptive behavior over time. This consists of the adaptation of goals, adaptation in attention rules, and adaptation in search rules. Part of organizational learning is setting goals and changing these goals over time. They change along with an organization's members are established as problems arise.[clarification needed] When setting goals, an organization should consider three variables: "the organization's past goal, the organization's past performance, and the past performance of other 'comparable' organizations."[25] Adapting an organization's attention rules consists of determining which parts of an organization's environment requires most attention. Cyert and March give the example of the criteria an organization uses to evaluate employees' performances. Over time, organizations learn which criteria to use for their evaluations and how much weight to assign to each criterion. They also use the example of selecting which criteria to use when comparing one's organization with a similar one. An organization's adaptation in search rules refers to its ability to find solutions for its problems. Since a solution depends on the problem, an organization's search rules will change accordingly. Typically, an organization will be more likely to search for a solution a certain way if this search method previously succeeded in finding a solution. An organization's search rules will depend on its previous successes or failures with the alternative search rules.[25]
Learning curves by Dutton & Thomas (1984): John M. Dutton and Annie Thomas organized field studies on various industries to study the rates of learning in organizations. They found that workers' errors and/or costs decrease as they learn from experience. However, since the knowledge that workers' can learn lessens over time, they cannot improve their performance at a constant rate. Instead, the rate by which they improve decreases with more experience. Dutton and Thomas also found that there are four causal categories that affect a firm's progress. Two categories, exogenous and endogenous learning, describe the source of a firm's progress. Exogenous learning occurs when a firm acquires information from external sources that allow it to progress. Examples of external sources include "suppliers, customers, competitors, and government."[26] Endogenous learning occurs when employees learn from within the firm, which is "manifested by technical changes, direct-labor learning, and smoothing production flows."[26] The other two categories, induced and autonomous learning, describe the environments in which progress occurs. Induced learning occurs when a firm makes investments or adds resources to an environment to make it conducive for learning. Autonomous learning occurs when sustained production leads to automatic improvements over long periods of time.[26]
Knowledge
Knowledge is an indicator of organizational learning. Organization learning happens when there is a change in the knowledge of an organization.[12] Researchers measure organizational knowledge in various ways. For example, some researchers assess knowledge as changes in an organization's practices or routines that increase efficiency.[27] Other researchers base it on the number of patents an organization has.[28] Knowledge management is the process of collecting, developing, and spreading knowledge assets to enable organizational learning.

Nature of knowledge
Knowledge is not a homogenous resource. Although it is related to data and information, knowledge is different from these constructs. Data are a set of defined, objective facts concerning events, while information is a value-added form of data that adds meaning through contextualization, categorization, calculation, correction, or condensation.[29] Knowledge is the applied version of information, a combination of information within experience, framing, value, contextualization, and insight. Experience is knowledge that is generated through exposure to and application of knowledge. Knowledge originates within and is applied by units of an organization to evaluate and utilize experience and information effectively. Knowledge can become embedded within repositories, routines, processes, practices, tools, and norms, depending on the relationship between information, experience, and knowledge.[30]

Two distinct forms of knowledge, explicit and tacit, are significant in this respect. Explicit knowledge is codified, systematic, formal, and easy to communicate. Tacit knowledge is personal, context-specific, subjective knowledge.[31]

Explicit knowledge is knowledge that is easy to transfer. Unlike tacit knowledge, explicit knowledge is declarative or factual. It is transferred through written, verbal, or codified media. Examples of this include instructions, definitions, and documents. Among its employees, Toyota spreads explicit knowledge about its assembly line production. Toyota requires each team of workers and each individual worker to document their tasks, providing detailed descriptions on "how each task is to be performed, how long each task should take, the sequence of steps to be followed in performing each task, and the steps to be taken by each worker in checking his or her own work." This uses explicit knowledge since the knowledge is passed along using a code, which is a document of detailed descriptions in Toyota's case.[32]
Tacit knowledge is knowledge that is difficult to transfer. As first described by Michael Polanyi, tacit knowledge is the knowledge of procedures.[33] It is a personal type of knowledge that cannot be shared simply through written or verbal communication. It is learned mostly through experience over time. For example, Toyota transfers tacit knowledge whenever it opens a new assembly factory. To train its new employees for a new factory, Toyota sends a group of its new employees to work at one of its established factories, where experienced employees train them. After this long-term training, they are sent back to the new factory to transfer their production knowledge to the rest of the new employees. This is a transfer of tacit knowledge since this knowledge is too complex to be codified and passed along through a document. This knowledge can only be transferred to new employees through practice and experience.[32]
Measuring learning
Organizational learning tracks the changes that occur within an organization as it acquires knowledge and experience. To evaluate organizational learning, the knowledge an organization creates, transfers, and retains must be quantified.

Researchers studying organizational learning have measured the knowledge acquired through various ways since there is no one way of measuring it. Silvia Gherardi measured knowledge as the change in practices within an organization over time, which is essentially learning from experience.[27] In her study, she observed an organization acquire knowledge as its novices working at building sites learned about safety through experience and became practitioners. George Huber measured knowledge as the distribution of information within an organization. In his study, he noted that "organizational components commonly develop 'new' information by piecing together items of information that they obtain from other organizational units."[34] He gives the example of "a shipping department [that] learns that a shortage problem exists by comparing information from the warehouse with information from the sales department."[34]

An increasingly common and versatile measure of organizational learning is an organizational learning curve demonstrating experience curve effects. A learning curve measures the rate of a metric of learning relative to a metric for experience. Linda Argote explains that "large increases in productivity typically occur as organizations gain experience in production."[4] However, Argote also notes that organizations' rates of learning vary. Argote identifies three factors that affect these rates: increased proficiency of individuals, improvements in an organization's technology, and improvements in its structure (such as its routines and methods of coordination).[4] Some organizations show great productivity gains while others show little or no gains, given the same amount of experience.[4]The experience curves plot the decreasing unit cost versus the total cumulative units produced, a common way to measure the effect of experience. The linear-linear input form on the left is transformed into the log-log form on the right to demonstrate that the proficiency increase correlates with experience.

Theoretical models
Attempts to explain variance of rates in organizational learning across different organizations have been explored in theoretical models. Namely the theoretical models conceived by John F. Muth, Bernardo Huberman, and Christina Fang.

The Muth model (1986) was the first to represent the learning curve in a log-linear form and focused on cost effectiveness in organization processes. This model looks at the relationship between unit cost and experience, stating that cost reductions are realized through independent random sampling, or randomized searches, from a space of technological, managerial, or behavioral alternatives. This model did not aim to explore variation across firms, but solely looked at improvements in production with experience within a single firm.[35]
The Huberman model (2001) filled that void and aimed at explaining the variation missing from Muth's model and focuses on finding increasingly shorter and more efficient paths from end to end of an assembly process. This model is visualized best in a connected graph with nodes that represent stages in a process and links that represent the connecting routines. By way of this model, learning can occur through two mechanisms that shorten the route from the initial stage to the final stage. The first is by some shortcut that can be identified by looking at the nodes and mapping and discovering new routines, the ideal goal being able to eliminate certain touch points and find shorter paths from the initial to final node. The second mechanism involves improving the routines: the organization can work to select the most efficacious link between two nodes such that, if an issue ever arises, members of an organization know exactly whom to approach, saving them a considerable amount of time.[1]
The Fang model (2011) shares a major goal with the Huberman model: to gradually decrease the steps towards the final stage. However, this model takes more of a "credit assignment" approach in which credit is assigned to successive states as an organization gains more experience, and then learning occurs by way of credit propagation. This implies that as an organization gains more experience with the task, it is better able to develop increasingly accurate mental models that initially identify the values of states closer to the goal and then those of states farther from the goal. This then leads to a reduced number of steps to reach the organization's final goal and can thus improve overall performance.[1]
Context and learning
An organization's experience affects its learning, so it is important to also study the context of the organizational climate, which affects an organization's experience. This context refers to an organization's characteristics, specifically its "structure, culture, technology, identity, memory, goals, incentives, and strategy."[12] It also includes its environment, which consists of its competitors, clients, and regulators.[12] While this context establishes how knowledge is acquired by the organization, this knowledge modifies context as the organization adapts to it.[12] The leader-initiated cultural context of learning has inspired key research into whether the organization has a learning or performance orientation,[36] an environment of psychological safety,[37] the group's superordinate identity,[38] and group dynamics.[39] Research into these concepts like Edmondson's study (1999) shows that an organization operating under a context promoting curiosity, information sharing, and psychological safety encourages organizational learning.[37] "Group learning dynamics" is the subject of how groups share, generate, evaluate, and combine knowledge as they work together.[4]

Organizational forgetting
Knowledge acquired through learning by doing can depreciate over time. The depreciation rate is affected by the turnover rate of individuals and how knowledge is stored within the organization. Organizations with higher turnover rates will lose more knowledge than others. Organizations with knowledge embedded in technology rather than individuals are more resistant to organizational forgetting.[1] Examples: In the Liberty Shipyard study, in shipyards where relative input was reduced, individual unit cost increased even with increasing cumulative output. In shipyards with no relative input reduction, individual unit cost decreased with increasing cumulative output.[1] In a study of airplane manufacturing at Lockheed, unit costs declined with experience, but this effect weakened over time.[40]

Processes
Three key processes that drive organizational learning are knowledge creation, knowledge retention, and knowledge transfer.

Knowledge creation
Knowledge creation specifically concerns Experience that can be embedded within the organization. Experience is knowledge generated by direct exposure to the subject. This direct exposure is through tasks involving the needs, processes, and environment of the organization. Explicit and tacit knowledge are reinforced and become contextualized when the organization gains knowledge. While experience can produce outputs in data, information, or knowledge, experience in the form of knowledge is useful since this can be transferred, retained, and tacitly or explicitly utilized within organizational processes. Knowledge creation connects to creativity and its relationship to experience.[5][41][42] Compared to knowledge transfer and knowledge retention, knowledge creation has not received much research attention.[43]

Dimensions of experience are aspects of experience that impact the form and function of knowledge creation.[44][45][46][47][48]

The organizational dimension refers to the directness or indirectness of experience acquired in addition to the configurations of individuals, units, and networks.[49][50][51]
The spatial dimension refers to the geographic concentration or dispersion of the experience.[52][53][54]
The temporal dimension refers to frequency and pace at which the experience is acquired or its temporal relation to a task.[55][56][57]
The content dimension refers to the subject task or unit, outcome,[58][59][60][61] novelty,[62][63][64] heterogeneity,[65] and ambiguity.[66][67]
The artificiality dimension refers to the directness of the experience and the degree to which the experience is fabricated, adapted, or transcribed.
Knowledge transfer
Knowledge transfer concerns the mechanisms by which experience spreads and embeds itself within the organization. Knowledge transfer can be evaluated using various metrics, including learning curves that demonstrate process improvements over time by comparing the decrease in labor hours to complete a unit of production with the cumulative units produced over time. Wright's identification of organizational learning curves preceded more complex outcome considerations[4] that now inform measures of knowledge transfer. While knowledge may transfer tacitly and explicitly as direct experience, organizations can introduce processes and knowledge management systems that facilitate this transfer. Researchers investigate the context of various factors and mechanisms affecting knowledge transfer to determine their beneficial and detrimental effects.

Factors of knowledge transfer include the dimensions of the knowledge described in the prior section, as well as the contexts in which it occurs and mechanisms through which it can occur:

Relational context concerns whether knowledge is interconnected.[68]
Cognitive context concerns mental abilities and processes regarding knowledge.[69]
Motivational context of personal preferences and social influences affect direct or indirect knowledge transfer behaviors.[70]
Emotional context impacts mental state and sense of security, which affect knowledge transfer.[71][72]
Social networks determine the flows through which knowledge can transfer and the node-based conditional limitations on transfer.[73][74]
Personnel movement between units and organizations impacts available knowledge and geographical, chronological, and social limitations on knowledge transfer.[75][76]
Routines impact knowledge transfer as they contain embedded knowledge and teach it through experience repeating the routine.[4][77]
Templates affect knowledge transfer as they affect the framing, priming, volume, and content parameters for formal exchanges of knowledge.[78]
Alliances impact knowledge transfer between formal and informal groups.[79]
Knowledge retention
Main article: Knowledge retention
Knowledge retention concerns the behavior of knowledge that has been embedded within the organization, characterized by the organizational memory. Organizational memory, quantified by measures such as cumulative knowledge and the rate of decay over time, is impacted by experience, processes and knowledge repositories that affect knowledge retention.[68][77][40] Knowledge repositories are of key significance as they are intentional remedies to increase retention. Repositories can include the organization's rules and routines,[80] altered by the processes of routine development[81] and routine modification.[82] Transactive memory systems[83] are additional methods by which knowledge holders within the organization can be identified and utilized, subject to their development[84][85] and performance.[4][86] Organizations that retain the bulk of their knowledge in individuals are vulnerable to lose that information with high turn over rates. In a study of organizational learning in the automotive and fast food industries, Argote found that high turn over rates lead to lower productivity and decreased organizational memory.[1]

Applications
Applications of organizational learning research and contexts for organizational learning facilitation and practices are numerous. Experience curves can be used to make projections of production costs, compare performance across units, identify the effects of various processes and practices, and make informed financial decisions about how to allocate resources. Utilizing knowledge transfer and retention concepts to recognize, maintain, and reclaim embedded knowledge can help organizations become more efficient with their knowledge. Organizational learning theories and knowledge management practices can be applied to organizational design and leadership decisions.

Knowledge management practices
Various knowledge management concepts and practices are the relevant products of organizational learning research. Work on knowledge transfer applies to knowledge retention and contributes to many of the applications listed below, including the practices of building learning organizations, implementing knowledge management systems, and its context for inter organizational learning and the diffusion of innovations.[4]

Development of learning organizations
Learning organizations are organizations that actively work to optimize learning. Learning organizations use the active process of knowledge management to design organizational processes and systems that concretely facilitate knowledge creation, transfer, and retention. Organizational metacognition is used to refer to the processes by which the organization 'knows what it knows'. The study of organizational learning and other fields of research such as organizational development, System theory, and cognitive science provide the theoretical basis for specifically prescribing these interventions.[87] An example of an organizational process implemented to increase organizational learning is the U.S. Army's use of a formally structured de-brief process called an after-action review (AAR) to analyze what happened, why it happened, and how it could be improved immediately after a mission. Learning laboratories are a type or learning organization dedicate to knowledge creation, collection, and control.[88]

Learning organizations also address organizational climate by creating a supportive learning environment and practicing leadership that reinforces learning.[89] Creating a supportive learning environment and reinforcing learning depends on the leadership of the organization and the culture it promotes. Leaders can create learning opportunities by facilitating environments that include learning activities, establishing a culture of learning via norms, behaviors, and rules, and lead processes of discourse by listening, asking questions, and providing feedback. Leaders must practice the individual learning they advocate for by remaining open to new perspectives, being aware of personal biases, seeking exposure to unfiltered and contradictory sources of information, and developing a sense of humility.[90]

Knowledge management systems
While learning processes depend on the context for optimizing knowledge transfer, the implementation of knowledge management systems incorporates technology into these processes. Knowledge management systems are technologies that serve as a repository, communication, or collaboration tool for transferring and retaining knowledge.[4] Embedding knowledge in technology can prevent organizational forgetting[91] and allow knowledge to transfer across barriers such as distance, organizational unit, and specialization. Knowledge management systems alone are not necessarily successful, but as a communication tool they tangibly reinforce individuals' ability to spread and reinforce their knowledge.[4]

Diffusion of innovation
Organizational learning is important to consider in relation to innovation, entrepreneurship, technological change, and economic growth, specifically within the contexts of knowledge sharing and inter organizational learning. As one of the key dynamics behind the knowledge economy, organizational learning informs our understanding of knowledge transfer between organizations. Heterogeneous experience yields better learning outcomes than homogenous experience, and knowledge diffusion spreads heterogeneous experience across organizations.[65][92] Diffusion of innovations theory explores how and why people adopt new ideas, practices and products. It may be seen as a subset of the anthropological concept of diffusion and can help to explain how ideas are spread by individuals, social networks, and organizations. Innovation policy, economic development initiatives, educational program endeavors, and entrepreneurial incubation and acceleration could all be informed by organizational learning practices.

Barriers and enablers to organizational learning
Corporate amnesia
In case no systematic approach has been applied when creating organizational memory systems, there is a risk of corporate amnesia. Environment of organizational amnesia leads to avoiding mistakes at all cost. Companies should create an environment where learning from mistakes is allowed in order to avoid them happening again.[93]:366, 372, 390 Corporate amnesia is said to be a double-edged sword – it helps to move on by forgetting the wrongdoing, but at the same time it creates a danger of repeating the same error all over again.[94]

Developing organizational memory
Organizations need to have an organizational memory, a documentation of their milestone events. That documentation needs to be accessible for all involved to have the ability to learn as an organization.[93]:365 Because organizations have a routine of forgetting what they have done in the past and why, organizational memory systems should be created to make the knowledge explicit so that the transparency, coordination and communication in the organizations increase and it becomes possible to learn from past mistakes.[93]:372–373 OL grows through processes but the essential material is individual's memory, culture and experience. Individual learning is the first level in OL. Transfer process to OL is synthesized by "what people learn (know-what) and how they understand and apply this learning (know-how).[95] While learning is the know-how, memory could be perceived as a storage area. Memory plays an active role in a learning process. In a transfer mechanism, mental models are an excellent way to share knowledge and to make it independent from individuals.

Organizational memory is an agglomerate of individual's memory, composed by data, information and knowledge. For those three levels of learning, five retention facilities are available:[96]

Individuals, with their own memory capacity and experience
Culture, perceived and thought experience transmitted to the members of the organization. Language is a cultural information transmitted repeatedly
Transformation, the logic and repeated continuation of actions transforming an input into an output
Structure, link between an individual and its role in the organization
External archives, information retailed by sources outside the organization about its past.
The big deal of organizational memory is its availability to be used and re-used. It could represent a competitive advantage but its value is often underestimated because of the complexity to calculate it, even though sometimes employee's, customer's, supplier's, capital's and top management's memory values are budgeted.[97]

Organization's memory needs technological solutions on its side. Technology is often associated with information or communication technology (IT) which relates to different software solutions that support the organization's memory and ease the transfer of knowledge .[98] Technology can be a barrier if it is not accepted or there is not enough understanding of new technologies. Technology can open for example new ways of communicating, but it is different to find a shared acceptance for its utilization.[99]:550

IT is an enabler for codifying and distributing data and information as well as both tacit and explicit knowledge.[98] A. Abdulaziz Al-Tameem also states that the interaction between humans and IT enhances OL. Different repositories are used within organization to store corporate knowledge as an extension for the memory. Maintaining organizational memory is enabler for efficient and effective processes and routines but most of all for profitable business.[98]

The role of organizational culture
Culture is considered as the holding strength between members of an organization. Culture brings a representation of past learning and an instrument to communicate it through the organization.[100]

Finding shared vision is important to enable the adaptation of new systems and technologies that can be accepted by the organization and its members. Sharing a culture and encouraging knowledge sharing allows more efficient transfer of knowledge in organization between its levels.[99]:547 Sharing information between different cultures can be limited due to varying norms and it can end up in one or both sides hoarding knowledge [99]:543

Willingness to inquire can also be related to differences between culture groups or culture of multicultural organizations in general. Status, modesty, fear of embarrassment, etc. contribute to the interaction we decide or do not decide to initiate.[99]:546 It has been studied that organizational culture is one of the most important enablers in knowledge sharing. When the information is not shared due to hoarding based on cultural differences it becomes a major barrier in business.[99]:547

Different influential factors regarding characteristics of an organizational culture (especially in knowledge-centered cultures) affect the processes of knowledge management.[101] these can include:

Social interactions
Openness in communication
Trust
Perception of knowledge
Top management's support and involvement
Freedom vs. control
Compensation system (organizational rewards)
Virtual environments
Organizations are evolving, which is sometimes causing interpretation of experiences more complex. Team members that are geographically apart,[102]:266 may only have an option to learn virtually through electronic devices instead of face-to-face.[103] Communities of practice in virtual environments can create tacit knowledge shared between the different factors such as individual members, rules accepted and technologies used. Technology in this case affects the identity and learning patterns of the community.[99]:549 Building routines in a virtual team and the use of sophisticated technology such as video meetings, creates trust and psychological safety that enables learning.[104]:148

Barriers in organizational learning from 4I framework
Developed by Crossan, Lane and White (1999) the 4I framework of organizational learning consists of four social processes; intuiting, interpreting, integrating and institutionalizing. It is proposed by Crossan et al. (1999)[105] that organizational learning is a dynamic and iterative process between exploration and exploitation (March 1991)[106] with feed forward flowing from individual level to organizational level and feedback from organizational to individual. A pivotal characteristic of the framework is the relationship and interplay between action and cognition that it assumes and portrays. It is a framework that was developed to specifically address the phenomenon of strategic renewal.[105]

J. Schilling and A. Kluge (2009) have contributed to the M. Crossan, H. Lane and R. White (1999) 4I framework of organizational learning by identifying the barriers to the learning process. There is a wide variety of barriers in every level of each learning process identified as actional-personal, structural-organizational and societal-environmental.[107]

Actional-personal barriers include such as individual attitudes, thinking, and behavior. Structural-organizational barriers are based in organizational technology, strategy, culture and formality of regulations. In addition to the 4I model, environment is also considered as relevant at all individual, group and organization levels and that is why societal-environmental barriers are also considered. Intuition process barriers are related to individual's lack of motivation or such as what is the freedom in the organization to 'think out of the box'. Societal-environmental barriers of intuition process relate e.g. to the unclear success criteria of the branch of the organization or to cultural misunderstandings. Interpretation process barrier can be e.g. lack of status or a conflict in a relationship between innovator and the group. Integration process barriers that take place at the organizational level can be such as the willingness to maintain positive self-image or the fear of punishment. If the idea is against beliefs commonly held in the industry, the whole sector might reject the idea. A major barrier is, if there is no top management's support for the innovative idea. A barrier to institutionalization process is when something previously learned has been forgotten – an innovation or lesson has not been put to practice so that it would become embedded into the structure, procedures and strategy. Some teams or employees may not have enough skills or knowledge to absorb the innovation or there is not enough trust towards the innovation. Management may also have a lack of skills to implement the innovation.[107]

Other challenges
Several challenges may be identified during the organizational learning process. Milway and Saxton (2011) suggest three challenges related to goals, incentives and processes.[108]

Generational issues and employee turnover are also challenges that organizations might have to consider.[109]

See also
Action learning
Activity theory
Air-defense experiments
Ambidextrous organization
Collaborating, learning and adapting
Collaborative learning
Community of innovation
Community of inquiry
Community of practice
Cultural-historical activity theory
Just-in-time learning
Knowledge capture
Knowledge organization
Learning network
Organization workshop
Organizational memory
Sociomapping
Strategic Choice Theory
Success trap
Text and conversation theory
Value network
Value network analysis





Design thinking
https://en.wikipedia.org/wiki/Design_thinking#As_a_process_of_designing

Design thinking is a term used to represent a set of cognitive, strategic and practical processes by which design concepts (proposals for products, buildings, machines, communications, etc.) are developed. Many of the key concepts and aspects of design thinking have been identified through studies, across different design domains, of design cognition and design activity in both laboratory and natural contexts.[1][2]

Design thinking is also associated with prescriptions for the innovation of products and services within business and social contexts.[3][4] Some of these prescriptions have been criticized for oversimplifying the design process and trivializing the role of technical knowledge and skills.[5][6]


As a process of designing
Design thinking encompasses processes such as context analysis, problem finding and framing, ideation and solution generating, creative thinking, sketching and drawing, modelling and prototyping, testing and evaluating.[7] Core features of design thinking include the abilities to:

resolve ill-defined or 'wicked' problems
adopt solution-focused strategies
use abductive and productive reasoning
employ non-verbal, graphic/spatial modelling media, for example, sketching and prototyping.[8]
Wicked problems
Design thinking is especially useful when addressing problems which are wickedly difficult, in the sense of being ill-defined or tricky, not malicious. Horst Rittel and Melvin Webber contrasted these with "tame" or "well-defined" cases where the problem is clear and the solution available through applying rules or technical knowledge.[9]

Problem framing
Rather than accept the problem as given, designers explore the given problem and its context and may re-interpret or restructure the given problem in order to reach a particular framing of the problem that suggests a route to a solution.[10][11]

Solution-focused thinking
In empirical studies of three-dimensional problem solving, Bryan Lawson found architects employed solution-focused cognitive strategies, distinct from the problem-focused strategies of scientists.[12] Nigel Cross suggests that 'Designers tend to use solution conjectures as the means of developing their understanding of the problem'.[13]

Abductive reasoning
In the creation of new design proposals, designers have to infer possible solutions from the available problem information, their experience, and the use of non-deductive modes of thinking such as the use of analogies. This has been interpreted as a form of Peirce's abductive reasoning, called innovative abduction.[14][15][16]

Co-evolution of problem and solution
In the process of designing, the designer's attention typically oscillates between their understanding of the problematic context and their ideas for a solution in a process of co-evolution of problem and solution.[17][18] New solution ideas can lead to a deeper or alternative understanding of the problematic context, which in turn triggers more solution ideas.

Representations and modelling
Conventionally, designers communicate mostly in visual or object languages to translate abstract requirements into concrete objects.[19] These 'languages' include traditional sketches and drawings but also extend to computer models and physical prototypes. The use of representations and models is closely associated with features of design thinking such as the generation and exploration of tentative solution concepts, the identification of what needs to be known about the developing concept, and the recognition of emergent features and properties within the representations.[20][21]

As a process for innovation
File:DesignThinking.ogv
Design thinking example video that presents design thinking for innovation in business and society as a process of "Learn from People, Find Patterns, Design Principles, Make Tangible and Iterate Relentlessly"
A five-phase description of the design innovation process is described by Plattner, Meinel, and Leifer as: (re)defining the problem, needfinding and benchmarking, ideating, building, testing.[22] Plattner, Meinel, and Leifer state: "While the stages are simple enough, the adaptive expertise required to choose the right inflection points and appropriate next stage is a high order intellectual activity that requires practice and is learnable."

The process may also be thought of as a system of overlapping spaces rather than a sequence of orderly steps: inspiration, ideation, and implementation.[23] Projects may loop back through inspiration, ideation, and implementation more than once as the team refines its ideas and explores new directions.[24]

Inspiration
Generally, the design innovation process starts with the inspiration phase: understanding the problem or the opportunity. This understanding can be documented in a brief which includes constraints that gives the project team a framework from which to begin, benchmarks by which they can measure progress, and a set of objectives to be realized—such as price point, available technology, and market segment.[24]

Empathy
In their book Creative Confidence, Tom and David Kelley note the importance of empathy with clients, users, and customers as a basis for innovative design.[25][26] Designers approach users with the goal of understanding their wants and needs, what might make their life easier and more enjoyable and how technology can be useful for them. Empathic design transcends physical ergonomics to include understanding the psychological and emotional needs of people—the way they do things, why and how they think and feel about the world, and what is meaningful to them.

Ideation: Divergent and convergent thinking
Ideation is idea generation. The process is characterized by the alternation of divergent and convergent thinking, typical of design thinking process.

To achieve divergent thinking, it may be important to have a diverse group of people involved in the process. Design teams typically begin with a structured brainstorming process of "thinking outside the box." Convergent thinking, on the other hand, aims for zooming and focusing on the different proposals to select the best choice, which permits continuation of the design thinking process to achieve the final goals.

After collecting and sorting many ideas, a team goes through a process of pattern finding and synthesis in which it has to translate ideas into insights that can lead to solutions or opportunities for change. These might be either visions of new product offerings, or choices among various ways of creating new experiences.[24]

Implementation and prototyping
The third space of the design thinking innovation process is implementation, when the best ideas generated during ideation are turned into something concrete.[24]

At the core of the implementation process is prototyping: turning ideas into actual products and services that are then tested, evaluated, iterated, and refined. A prototype, or even a rough mock-up helps to gather feedback and improve the idea. Prototypes can speed up the process of innovation because they allow quick identification of strengths and weaknesses of proposed solutions, and can prompt new ideas.

Application
In business
Historically, designers tended to be involved only in the later parts of the process of new product development, focusing their attention on the aesthetics and functionality of products. Many businesses and other organisations now realise the utility of embedding design as a productive asset throughout organisational policies and practices, and design thinking has been used to help many different types of business and social organisations to be more constructive and innovative.[27][4] In the 2000s there was a significant growth of interest in design thinking as a catalyst for gaining competitive advantage within business,[28] but doubts around design thinking as a panacea for success have also been expressed.[5] Designers bring their methods into business either by taking part themselves from the earliest stages of product and service development processes[29] or by training others to use design methods and to build innovative thinking capabilities within organisations.[30]

In education
All forms of professional design education can be assumed to be developing design thinking in students, even if only implicitly, but design thinking is also now explicitly taught in general as well as professional education, across all sectors of education. Design as a subject was introduced into secondary schools' educational curricula in the UK in the 1970s, gradually replacing and/or developing from some of the traditional art and craft subjects, and increasingly linked with technology studies. This development sparked related research studies in both education and design.[31][19][32]

New courses in design thinking have also been introduced at the university level, especially when linked with business and innovation studies. A notable early course of this type was introduced at Stanford University in 2003, the Hasso Plattner Institute of Design, known as the d.school.

In the K-12 education sector, design thinking is used to enhance learning and promote creative thinking, teamwork, and student responsibility for learning.[33][34] A design-based approach to teaching and learning has also developed more widely throughout education.[35][36]

Design thinking can now be seen in International Baccalaureate schools across the world,[37] and in Maker Education organizations.[38][39]

In computer science
Design thinking has been central to user-centered design and human-centered design—the dominant methods of designing human-computer interfaces—for over 40 years.[40] Design thinking is also central to recent conceptions of software development in general.[41]

History
Developing creativity techniques in the 1950s and new design methods in the 1960s led to the idea of design thinking as a particular approach to creatively solving problems. Among the first authors to write about design thinking were John E. Arnold in "Creative Engineering" (1959) and L. Bruce Archer in "Systematic Method for Designers" (1965).[42][43]

John E. Arnold was one of the first authors to use the term 'design thinking'. In "Creative Engineering" (1959) he distinguishes four areas of design thinking.[42] According to Arnold, design thinking can yield (1) novel functionality, i.e. solutions that satisfy a novel need or solutions that satisfy an old need in an entirely new way, (2) higher performance levels of a solution, (3) lower production costs or (4) increased salability. Thus, according to this early concept, 'design thinking' covers all forms of product innovation, including especially incremental innovation ("higher performance") and radical innovation ("novel functionality").[44] Arnold recommends a balanced approach: Product developers should seek opportunities in all four areas of design thinking.

It is rather interesting to look over the developmental history of any product or family of products and try to classify the changes into one of the four areas ... Your group, too, might have gotten into a rut and is inadvertently doing all of your design thinking in one area and is missing good bets in other areas.

— J.E. Arnold, 1959/2016, p. 119[42]
Although L. Bruce Archer's "Systematic Method for Designers" (1965)[43] was concerned primarily with a systematic process of designing, it also expressed a need to broaden the scope of conventional design: "Ways have had to be found to incorporate knowledge of ergonomics, cybernetics, marketing and management science into design thinking". Archer was also developing the relationship of design thinking with management: "The time is rapidly approaching when design decision making and management decision making techniques will have so much in common that the one will become no more than the extension of the other".[45]

The notion of design as a "way of thinking" in the sciences can be traced to Herbert A. Simon's 1969 book The Sciences of the Artificial,[46] and in design engineering to Robert McKim's 1973 book Experiences in Visual Thinking.[47] Bryan Lawson's 1980 book How Designers Think, primarily addressing design in architecture, began a process of generalising the concept of design thinking.[48] A 1982 article by Nigel Cross, "Designerly Ways of Knowing", established some of the intrinsic qualities and abilities of design thinking that also made it relevant in general education and thus for wider audiences.[19] Peter Rowe's 1987 book Design Thinking, which described methods and approaches used by architects and urban planners, was a significant early usage of the term in the design research literature.[49] An international series of research symposia in design thinking began at Delft University of Technology in 1991.[50][51]

Rolf Faste expanded on McKim's work at Stanford University in the 1980s and 1990s,[52][53] teaching "design thinking as a method of creative action."[54] Design thinking was adapted for business purposes by Faste's Stanford colleague David M. Kelley, who founded the design consultancy IDEO in 1991.[55] Richard Buchanan's 1992 article "Wicked Problems in Design Thinking" expressed a broader view of design thinking as addressing intractable human concerns through design.[56]

Timeline
pre-1960	The origins of design thinking partially lie in the development of creativity techniques in the 1950s.
1960s	The first notable books on methods of creativity are published by William J. J. Gordon (1961)[57] and Alex Faickney Osborn (1963).[58]
The 1962 Conference on Systematic and Intuitive Methods in Engineering, Industrial Design, Architecture and Communications, London, UK, catalyses interest in studying design processes and developing new design methods.[59]

Books on methods and theories of design in different fields are published by Morris Asimow (1962) (engineering),[60] Christopher Alexander (1964) (architecture),[61] L. Bruce Archer (1965) (industrial design),[43] and John Chris Jones (1970) (product and systems design).[62]

1970s	Don Koberg and Jim Bagnall pioneer a 'soft systems' design process for dealing with the problems of 'everyday life' in their book The Universal Traveler.[63]
Horst Rittel and Melvin Webber publish "Dilemmas in a General Theory of Planning" showing that design and planning problems are wicked problems as opposed to "tame", single disciplinary, problems of science.[64]

L. Bruce Archer extends inquiry into designerly ways of knowing, claiming: "There exists a designerly way of thinking and communicating that is both different from scientific and scholarly ways of thinking and communicating, and as powerful as scientific and scholarly methods of inquiry when applied to its own kinds of problems."[65]

1980s	The 1980s bring the rise of human-centered design and the rise of design-centered business management.
Donald Schön publishes The Reflective Practitioner in which he aims to establish "an epistemology of practice implicit in the artistic, intuitive processes that [design and other] practitioners bring to situations of uncertainty, instability, uniqueness and value conflict."[10]

1990s	The first symposium on Research in Design Thinking is held at Delft University, The Netherlands, in 1991.[50]
IDEO design consultancy is formed by combining three industrial design companies. They are one of the first design companies to showcase their design process, based on design methods and design thinking.

2000s	The start of the 21st century brings a significant increase in interest in design thinking as the term becomes popularized in the business press. Books about how to create a more design-focused workplace where innovation can thrive are written for the business sector by, amongst others, Richard Florida (2002),[66] Daniel Pink (2006),[67] Roger Martin (2007),[68] Tim Brown (2009),[27] Thomas Lockwood (2010),[69] Vijay Kumar (2012).[70]
The design approach also becomes extended and adapted to tackle the design of services, marking the beginning of the service design movement.[71]

2005: Stanford University's d.school begins to teach design thinking as a generalisable approach to technical and social innovation.[22]

2010s	2015: Jenna Leonardo, Katie Kirsch, Rachel H. Chung and Natalya Thakur from Stanford University's d.school found Girls Driving for a Difference[72] to teach design thinking to young girls across the United States.[73]
2018: In the Harvard Business Review Jeanne Liedtka claims "design thinking works" in business.[74]

See also
	Philosophy portal
	Psychology portal
Creativity techniques
Design-based learning
Design methods
Empathic design
Lateral thinking
Problem structuring methods
Reflective practice
Strategic design
Systems thinking
User experience
Lists
List of thought processes
List of creative thought processes




Wicked problem
https://en.wikipedia.org/wiki/Wicked_problem#Characteristics

In planning and policy, a wicked problem is a problem that is difficult or impossible to solve because of incomplete, contradictory, and changing requirements that are often difficult to recognize. It refers to an idea or problem that cannot be fixed, where there is no single solution to the problem; and "wicked" denotes resistance to resolution, rather than evil.[1] Another definition is "a problem whose social complexity means that it has no determinable stopping point".[2] Moreover, because of complex interdependencies, the effort to solve one aspect of a wicked problem may reveal or create other problems.

The phrase was originally used in social planning. Its modern sense was introduced in 1967 by C. West Churchman in a guest editorial Churchman wrote in the journal Management Science,[3] responding to a previous use of the term by Horst Rittel. Churchman discussed the moral responsibility of operations research "to inform the manager in what respect our 'solutions' have failed to tame his wicked problems". Rittel and Melvin M. Webber formally described the concept of wicked problems in a 1973 treatise, contrasting "wicked" problems with relatively "tame", soluble problems in mathematics, chess, or puzzle solving.[4]




Characteristics
Rittel and Webber's 1973 formulation of wicked problems in social policy planning specified ten characteristics:[4][5]

There is no definitive formulation of a wicked problem.
Wicked problems have no stopping rule.
Solutions to wicked problems are not true-or-false, but better or worse.
There is no immediate and no ultimate test of a solution to a wicked problem.
Every solution to a wicked problem is a "one-shot operation"; because there is no opportunity to learn by trial and error, every attempt counts significantly.
Wicked problems do not have an enumerable (or an exhaustively describable) set of potential solutions, nor is there a well-described set of permissible operations that may be incorporated into the plan.
Every wicked problem is essentially unique.
Every wicked problem can be considered to be a symptom of another problem.
The existence of a discrepancy representing a wicked problem can be explained in numerous ways. The choice of explanation determines the nature of the problem's resolution.
The social planner has no right to be wrong (i.e., planners are liable for the consequences of the actions they generate).
Conklin later generalized the concept of problem wickedness to areas other than planning and policy; Conklin's defining characteristics are:[6]

The problem is not understood until after the formulation of a solution.
Wicked problems have no stopping rule.
Solutions to wicked problems are not right or wrong.
Every wicked problem is essentially novel and unique.
Every solution to a wicked problem is a 'one shot operation.'
Wicked problems have no given alternative solutions.
Examples
Classic examples of wicked problems include economic, environmental, and political issues. A problem whose solution requires a great number of people to change their mindsets and behavior is likely to be a wicked problem. Therefore, many standard examples of wicked problems come from the areas of public planning and policy. These include global climate change,[7] natural hazards, healthcare, the AIDS epidemic, pandemic influenza, international drug trafficking, nuclear weapons, waste and social injustice.

In recent years, problems in many areas have been identified as exhibiting elements of wickedness; examples range from aspects of design decision making and knowledge management[8] to business strategy[9] to space debris.[10]

Background
Rittel and Webber coined the term in the context of problems of social policy, an arena in which a purely scientific-engineering approach cannot be applied because of the lack of a clear problem definition and differing perspectives of stakeholders. In their words,
The search for scientific bases for confronting problems of social policy is bound to fail because of the nature of these problems... Policy problems cannot be definitively described. Moreover, in a pluralistic society there is nothing like the indisputable public good; there is no objective definition of equity; policies that respond to social problems cannot be meaningfully correct or false; and it makes no sense to talk about "optimal solutions" to these problems... Even worse, there are no solutions in the sense of definitive answers.[4]

Thus wicked problems are also characterised by the following:[citation needed]

The solution depends on how the problem is framed and vice versa (i.e., the problem definition depends on the solution)
Stakeholders have radically different world views and different frames for understanding the problem.
The constraints that the problem is subject to and the resources needed to solve it change over time.
The problem is never solved definitively.
Although Rittel and Webber framed the concept in terms of social policy and planning, wicked problems occur in any domain involving stakeholders with differing perspectives.[6] Recognising this, Rittel and Kunz developed a technique called Issue-Based Information System (IBIS), which facilitates documentation of the rationale behind a group decision in an objective manner.[11]

A recurring theme in research and industry literature is the connection between wicked problems and design.[12][13] Design problems are typically wicked because they are often ill-defined (no prescribed way forward), involve stakeholders with different perspectives, and have no "right" or "optimal" solution.[14] Thus wicked problems cannot be solved by the application of standard (or known) methods; they demand creative solutions.[15][16]

Strategies to tackle wicked problems
Wicked problems cannot be tackled by the traditional approach in which problems are defined, analysed and solved in sequential steps. The main reason for this is that there is no clear problem definition of wicked problems. In a paper published in 2000, Nancy Roberts identified the following strategies to cope with wicked problems:[17]

Authoritative
These strategies seek to tame wicked problems by vesting the responsibility for solving the problems in the hands of a few people. The reduction in the number of stakeholders reduces problem complexity, as many competing points of view are eliminated at the start. The disadvantage is that authorities and experts charged with solving the problem may not have an appreciation of all the perspectives needed to tackle the problem.
Competitive
These strategies attempt to solve wicked problems by pitting opposing points of view against each other, requiring parties that hold these views to come up with their preferred solutions. The advantage of this approach is that different solutions can be weighed up against each other and the best one chosen. The disadvantage is that this adversarial approach creates a confrontational environment in which knowledge sharing is discouraged. Consequently, the parties involved may not have an incentive to come up with their best possible solution.
Collaborative
These strategies aim to engage all stakeholders in order to find the best possible solution for all stakeholders. Typically these approaches involve meetings in which issues and ideas are discussed and a common, agreed approach is formulated.
In his 1972 paper,[18] Rittel hints at a collaborative approach; one which attempts "to make those people who are being affected into participants of the planning process. They are not merely asked but actively involved in the planning process". A disadvantage of this approach is that achieving a shared understanding and commitment to solving a wicked problem is a time-consuming process. Another difficulty is that, in some matters, at least one group of people may hold an absolute belief that necessarily contradicts other absolute beliefs held by other groups. Collaboration then becomes impossible until one set of beliefs is relativized or abandoned entirely.

Research over the last two decades has shown the value of computer-assisted argumentation techniques in improving the effectiveness of cross-stakeholder communication.[19] The technique of dialogue mapping has been used in tackling wicked problems in organizations using a collaborative approach.[20] More recently, in a four-year study of interorganizational collaboration across public, private, and voluntary sectors, steering by government was found to perversely undermine a successful collaboration, producing an organizational crisis which led to the collapse of a national initiative.[21][22]

In "Wholesome Design for Wicked Problems", Robert Knapp stated that there are ways forward in dealing with wicked problems:
The first is to shift the goal of action on significant problems from "solution" to "intervention." Instead of seeking the answer that totally eliminates a problem, one should recognize that actions occur in an ongoing process, and further actions will always be needed.[23]

Examining networks designed to tackle wicked problems in health care, such as caring for older people or reducing sexually transmitted infections, Ferlie and colleagues suggest that managed networks may be the "least bad" way of "making wicked problems governable".[24][25][26]

Communication of Wicked Problems
Scientific Wicked Problems as Communication Issues
Scientific knowledge is both a tool to lend expertise to wicked problems such as climate change and COVID-19 but the scientific field's emerging technologies and their applications (such as gene editing and its applications) can be considered wicked problems in and of themselves. Among scientists, there is an continued outdated belief that knowledge deficits within the public are what hinder scientific progress and application with around 95% of scientists listing it as an objective for scientific engagement.[27][28] However, research on public opinion has found that more knowledge can lead to both more support for science or less dependent on the issue debated.[29] Additionally, although risk communication shapes public perception, so do individual heuristics in power ways. Within the context of wicked problems, it's inherent to their nature that there is no right answer and no one group or person with the ability to determine the answer either.[30] In other words, although the issues mentioned above should have scientific input shaping the resolutions, the problem is not made up by scientific questions alone but also moral, political and economic questions as well that science cannot answer. In this respect, leaders in the field of science communication label wicked problems as communication issues, as the scientific as well as moral/political/economic questions need to be considered together to move forward [31]

Problem structuring methods
Main article: Problem structuring methods
A range of approaches called problem structuring methods (PSMs) have been developed in operations research since the 1970s to address problems involving complexity, uncertainty and conflict. PSMs are usually used by a group of people in collaboration (rather than by a solitary individual) to create a consensus about, or at least to facilitate negotiations about, what needs to change. Some widely adopted PSMs include soft systems methodology, the strategic choice approach, and strategic options development and analysis (SODA).[32]

Related concepts
Messes and social messes
Russell L. Ackoff wrote about complex problems as messes: "Every problem interacts with other problems and is therefore part of a set of interrelated problems, a system of problems.... I choose to call such a system a mess."[33]

Extending Ackoff, Robert Horn says that "a Social Mess is a set of interrelated problems and other messes. Complexity—systems of systems—is among the factors that makes Social Messes so resistant to analysis and, more importantly, to resolution."

According to Horn, the defining characteristics of a social mess are:[34]

No unique "correct" view of the problem;
Different views of the problem and contradictory solutions;
Most problems are connected to other problems;
Data are often uncertain or missing;
Multiple value conflicts;
Ideological and cultural constraints;
Political constraints;
Economic constraints;
Often a-logical or illogical or multi-valued thinking;
Numerous possible intervention points;
Consequences difficult to imagine;
Considerable uncertainty, ambiguity;
Great resistance to change; and,
Problem solver(s) out of contact with the problems and potential solutions.
Divergent and convergent problems
E. F. Schumacher distinguishes between divergent and convergent problems in his book A Guide for the Perplexed. Convergent problems are those for which attempted solutions gradually converge on one solution or answer. Divergent problems are those for which different answers appear to increasingly contradict each other all the more they are elaborated, requiring a different approach involving faculties of a higher order like love and empathy.

Wicked problems in software development
In 1990, DeGrace and Stahl introduced the concept of wicked problems to software development.[35] In the last decade, other computer scientists[36][37] have pointed out that software development shares many properties with other design practices (particularly that people-, process-, and technology-problems have to be considered equally), and have incorporated Rittel's concepts into their software design methodologies. The design and integration of complex software-defined services that use the Web (web services) can be construed as an evolution from previous models of software design, and therefore becomes a wicked problem also.

Super wicked problems
Kelly Levin, Benjamin Cashore, Graeme Auld and Steven Bernstein introduced the distinction between "wicked problems" and "super wicked problems" in a 2007 conference paper, which was followed by a 2012 journal article in Policy Sciences. In their discussion of global climate change, they define super wicked problems as having the following additional characteristics:[38]

Time is running out.
No central authority.
Those seeking to solve the problem are also causing it.
Policies discount the future irrationally.
While the items that define a wicked problem relate to the problem itself, the items that define a super wicked problem relate to the agent trying to solve it. Global warming as a super wicked problem, and the need to intervene to tend to our longer term interests has also been taken up by others, including Richard Lazarus.[39]

See also
Category:Problem structuring methods
Collaborative information seeking
Collective action problem
Competing harms
Complex question
Drama theory
Encyclopedia of World Problems and Human Potential
Hard problem of consciousness
Ludic fallacy
Morphological analysis
Nonlinear system
Post-normal science
Problem solving
Small Is Beautiful
Social issue
Societal collapse
Soft systems methodology
Structured systems analysis and design method
Systems theory





Problem structuring methods
https://en.wikipedia.org/wiki/Problem_structuring_methods#History
Problem structuring methods (PSMs) are a group of techniques used to model or to map the nature or structure of a situation or state of affairs that some people want to change.[1] PSMs are usually used by a group of people in collaboration (rather than by a solitary individual) to create a consensus about, or at least to facilitate negotiations about, what needs to change.[2] Some widely adopted PSMs[1] include soft systems methodology,[3] the strategic choice approach,[4] and strategic options development and analysis (SODA).[5]

Unlike some problem solving methods that assume that all the relevant issues and constraints and goals that constitute the problem are defined in advance or are uncontroversial, PSMs assume that there is no single uncontested representation of what constitutes the problem.[6]

PSMs are mostly used with groups of people, but PSMs have also influenced the coaching and counseling of individuals.[7]


History
The term "problem structuring methods" as a label for these techniques began to be used in the 1980s in the field of operations research,[8] especially after the publication of the book Rational Analysis for a Problematic World: Problem Structuring Methods for Complexity, Uncertainty and Conflict.[9] Some of the methods that came to be called PSMs had been in use since the 1960s.[2]

Thinkers who later came to be recognized as significant early contributors to the theory and practice of PSMs include:[10]

Horst Rittel and Melvin M. Webber[11]
Russell L. Ackoff[12]
Peter Checkland[13]
Colin Eden and Fran Ackermann[14]
Robert L. Flood and Michael C. Jackson[15]
Jonathan Rosenhead and John Mingers[16]
Types of situations that call for PSMs
See also: Cynefin framework § Domains
In discussions of problem structuring methods, it is common to distinguish between two different types of situations that could be considered to be problems.[17] Rittel and Webber's distinction between tame problems and wicked problems (Rittel & Webber 1973) is a well known example of such types.[17] The following table lists similar (but not exactly equivalent) distinctions made by a number of thinkers between two types of "problem" situations, which can be seen as a continuum between a left and right extreme:[18]

Different types of situations, and thinkers who named them[18]
Thinker	Left extreme	Right extreme
Rittel & Webber	Tame problem	Wicked problem
Herbert A. Simon	Programmed decision	Non-programmed decision
Russell L. Ackoff	Puzzle / Problem	Mess
Jerome Ravetz	Technical problem	Practical problem
Ronald Heifetz	Technical challenge	Adaptive challenge
Peter Checkland	Hard systems	Soft systems
Donald Schön	The high ground	The swamp
Barry Johnson	Problems to solve	Polarities to manage
Tame problems (or puzzles or technical challenges) have relatively precise, straightforward formulations that are often amenable to solution with some predetermined technical fix or algorithm. It is clear when these situations have changed in such a way that the problem can be called solved.

Wicked problems (or messes or adaptive challenges) have multiple interacting issues with multiple stakeholders and uncertainties and no definitive formulation. These situations are complex and have no stopping rule and no ultimate test of a solution.

PSMs were developed for situations that tend toward the wicked or "soft" side, when methods are needed that assist argumentation about, or that generate mutual understanding of multiple perspectives on, a complex situation.[17] Other problem solving methods are better suited to situations toward the tame or "hard" side where a reliable and optimal solution is needed to a problem that can be clearly and uncontroversially defined.

Characteristics
Problem structuring methods constitute a family of approaches that have differing purposes and techniques, and many of them had been developed independently before people began to notice their family resemblance.[17] Several scholars have noted the common and divergent characteristics among PSMs.

Eden and Ackermann identified four characteristics that problem structuring methods have in common:[19]

The methods focus on creating "a model that is populated with data that is specific to the problem situation". These cause–effect models can be analyzed (albeit in different ways by different methods), and the models are intended to facilitate conversation and negotiation between the participants.
The methods seek to increase the overall productivity of group processes. Productivity includes creating better agreements that are more likely to be implemented, and realizing (to the extent possible in the given situation) ideals such as communicative rationality and procedural justice.
The methods emphasize that the facilitation of effective group processes requires some attention to, and open conversation about, power and politics within and between organizations. Power and politics can become especially important when major change is being proposed.
The methods provide techniques and skills for facilitation of group processes, and they appreciate that such techniques and skills are essential for effective sensemaking, systems modeling, and participative decision-making. People who use PSMs must pay attention to what group facilitators call process skills (guiding interactions between people through nonlinear applications of the methods) and content skills (helping people build sufficiently comprehensive models of the given situation).
Rosenhead provided another list of common characteristics of PSMs, formulated in a more prescriptive style:[20]

Seek solutions which satisfice on separate dimensions rather than seeking an optimal decision on a single dimension.
Integrate hard and soft (quantitative and qualitative) data with social judgments.
Produce models that are as transparent as possible to and that clarify conflicts of interpretation, rather than hiding conflicts behind neutral technical language.
Consider people to be agents actively involved in the decision-making process, rather than as passive objects to be modeled or ignored.
Facilitate the problem structuring process from the bottom-up as much as possible, not only top-down from formal organizational leadership.
Aim to preserve options in the face of unavoidable uncertainty, rather than to base decisions on a prediction of the future.
An early literature review of problem structuring proposed grouping the texts reviewed into "four streams of thought" that describe some major differences between methods:[21]

the checklist stream, which is step-by-step technical problem solving (not problem structuring as it came to be defined in PSMs, so this stream does not apply to PSMs),
the definition stream, which is primarily modeling of relationships between variables, as described by Ackoff and others,
the science research stream which emphasizes doing field research and gathering quantitative data, and
the people stream, which "regards the definition of problems as a function of people's perceptions" as described by Checkland, Eden, and others.
Compared to large group methods
Mingers and Rosenhead have noted that there are similarities and differences between PSMs and large group methods such as Future Search, Open Space Technology, and others.[22] PSMs and large group methods both bring people together to talk about, and to share different perspectives on, a situation or state of affairs that some people want to change. However, PSMs always focus on creating a sufficiently rigorous conceptual model or cognitive map of the situation, whereas large group methods do not necessarily emphasize modeling, and PSMs are not necessarily used with large groups of people.[22]

Compared to participatory rural appraisal
There is significant overlap or shared characteristics between PSMs and some of the techniques used in participatory rural appraisal (PRA). Mingers and Rosenhead pointed out that in situations where people have low literacy, the nonliterate (oral and visual) techniques developed in PRA would be a necessary complement to PSMs, and the approaches to modeling in PSMs could be (and have been) used by practitioners of PRA.[23]

Applications
In 2004, Mingers and Rosenhead published a literature review of papers that had been published in scholarly journals and that reported practical applications of PSMs.[24] Their literature survey covered the period up to 1998, which was "relatively early in the development of interest in PSMs",[25] and categorized 51 reported applications under the following application areas: general organizational applications; information systems; technology, resources, planning; health services; and general research. Examples of applications reported included: designing a parliamentary briefing system, modeling the San Francisco Zoo, developing a business strategy and information system strategy, planning livestock management in Nepal, regional planning in South Africa, modeling hospital outpatient services, and eliciting knowledge about pesticides.[24]

Technology and software
PSMs are a general methodology and are not necessarily dependent on electronic information technology,[26] but PSMs do rely on some kind of shared display of the models that participants are developing. The shared display could be flip charts, a large whiteboard, Post-it notes on the meeting room walls, and/or a personal computer connected to a video projector.[26] After PSMs have been used in a group work session, it is normal for a record of the session's display to be shared with participants and with other relevant people.[26]

Software programs for supporting problem structuring include Banxia Decision Explorer and Group Explorer,[27] which implement cognitive mapping for strategic options development and analysis (SODA), and Compendium, which implements IBIS for dialogue mapping and related methods;[28] a similar program is called Wisdom.[29] Such software can serve a variety of functions, such as simple technical assistance to the group facilitator during a single event, or more long-term online group decision support systems.

Some practitioners prefer not to use computers during group work sessions because of the effect they have on group dynamics, but such use of computers is standard in some PSMs such as SODA[27] and dialogue mapping,[28] in which computer display of models or maps is intended to guide conversation in the most efficient way.[26]

In some situations additional software that is not used only for PSMs may be incorporated into the problem structuring process; examples include spreadsheet modeling, system dynamics software[30] or geographic information systems.[31] Some practitioners, who have focused on building system dynamics simulation models with groups of people, have called their work group model building (GMB) and have concluded "that GMB is another PSM".[32] GMB has also been used in combination with SODA.[33]

See also
Causal model
Boundary critique
Decision conferencing
Delphi method
Group concept mapping
Inquiry § Inquiry in the pragmatic paradigm
Method engineering
Participatory modeling
Policy § Policy cycle
Problem finding
Problem formulation
Problem shaping
Research question
Richards Heuer § Structured analytic techniques
Stakeholder analysis



Delphi method
https://en.wikipedia.org/wiki/Delphi_method
The Delphi method or Delphi technique (/ˈdɛlfaɪ/ DEL-fy; also known as Estimate-Talk-Estimate or ETE) is a structured communication technique or method, originally developed as a systematic, interactive forecasting method which relies on a panel of experts.[1][2][3][4] The technique can also be adapted for use in face-to-face meetings, and is then called mini-Delphi or Estimate-Talk-Estimate (ETE). Delphi has been widely used for business forecasting and has certain advantages over another structured forecasting approach, prediction markets.[5]

Delphi is based on the principle that forecasts (or decisions) from a structured group of individuals are more accurate than those from unstructured groups.[6] The experts answer questionnaires in two or more rounds. After each round, a facilitator or change agent[7] provides an anonymised summary of the experts' forecasts from the previous round as well as the reasons they provided for their judgments. Thus, experts are encouraged to revise their earlier answers in light of the replies of other members of their panel. It is believed that during this process the range of the answers will decrease and the group will converge towards the "correct" answer. Finally, the process is stopped after a predefined stop criterion (e.g., number of rounds, achievement of consensus, stability of results), and the mean or median scores of the final rounds determine the results.[8]

Special attention has to be paid to the formulation of the Delphi theses and the definition and selection of the experts in order to avoid methodological weaknesses that severely threaten the validity and reliability of the results.[9][10]




History
The name Delphi derives from the Oracle of Delphi, although the authors of the method were unhappy with the oracular connotation of the name, "smacking a little of the occult".[11] The Delphi method assumes that group judgments are more valid than individual judgments.

The Delphi method was developed at the beginning of the Cold War to forecast the impact of technology on warfare.[12] In 1944, General Henry H. Arnold ordered the creation of the report for the U.S. Army Air Corps on the future technological capabilities that might be used by the military.

Different approaches were tried, but the shortcomings of traditional forecasting methods, such as theoretical approach, quantitative models or trend extrapolation, quickly became apparent in areas where precise scientific laws have not been established yet. To combat these shortcomings, the Delphi method was developed by Project RAND during the 1950-1960s (1959) by Olaf Helmer, Norman Dalkey, and Nicholas Rescher.[13] It has been used ever since, together with various modifications and reformulations, such as the Imen-Delphi procedure.[14]

Experts were asked to give their opinion on the probability, frequency, and intensity of possible enemy attacks. Other experts could anonymously give feedback. This process was repeated several times until a consensus emerged.

Key characteristics

The Delphi Method communication structure
The following key characteristics of the Delphi method help the participants to focus on the issues at hand and separate Delphi from other methodologies: in this technique a panel of experts is drawn from both inside and outside the organisation. The panel consists of experts having knowledge of the area requiring decision making. Each expert is asked to make anonymous predictions.

Anonymity of the participants
Usually all participants remain anonymous. Their identity is not revealed, even after the completion of the final report. This prevents the authority, personality, or reputation of some participants from dominating others in the process. Arguably, it also frees participants (to some extent) from their personal biases, minimizes the "bandwagon effect" or "halo effect", allows free expression of opinions, encourages open critique, and facilitates admission of errors when revising earlier judgments.

Structuring of information flow
The initial contributions from the experts are collected in the form of answers to questionnaires and their comments to these answers. The panel director controls the interactions among the participants by processing the information and filtering out irrelevant content. This avoids the negative effects of face-to-face panel discussions and solves the usual problems of group dynamics.

Regular feedback
The Delphi Method allows participants to comment on the responses of others, the progress of the panel as a whole, and to revise their own forecasts and opinions in real time.

Role of the facilitator
The person coordinating the Delphi method is usually known as a facilitator or Leader, and facilitates the responses of their panel of experts, who are selected for a reason, usually that they hold knowledge on an opinion or view. The facilitator sends out questionnaires, surveys etc. and if the panel of experts accept, they follow instructions and present their views. Responses are collected and analyzed, then common and conflicting viewpoints are identified. If consensus is not reached, the process continues through thesis and antithesis, to gradually work towards synthesis, and building consensus.

During the past decades, facilitators have used many different measures and thresholds to measure the degree of consensus or dissent. A comprehensive literature review and summary is compiled in an article by von der Gracht.[15]

Applications
Use in forecasting
First applications of the Delphi method were in the field of science and technology forecasting. The objective of the method was to combine expert opinions on likelihood and expected development time, of the particular technology, in a single indicator. One of the first such reports, prepared in 1964 by Gordon and Helmer, assessed the direction of long-term trends in science and technology development, covering such topics as scientific breakthroughs, population control, automation, space progress, war prevention and weapon systems. Other forecasts of technology were dealing with vehicle-highway systems, industrial robots, intelligent internet, broadband connections, and technology in education.

Later the Delphi method was applied in other places, especially those related to public policy issues, such as economic trends, health and education. It was also applied successfully and with high accuracy in business forecasting. For example, in one case reported by Basu and Schroeder (1977),[16] the Delphi method predicted the sales of a new product during the first two years with inaccuracy of 3–4% compared with actual sales. Quantitative methods produced errors of 10–15%, and traditional unstructured forecast methods had errors of about 20%. (This is only one example; the overall accuracy of the technique is mixed.)

The Delphi method has also been used as a tool to implement multi-stakeholder approaches for participative policy-making in developing countries. The governments of Latin America and the Caribbean have successfully used the Delphi method as an open-ended public-private sector approach to identify the most urgent challenges for their regional ICT-for-development eLAC Action Plans.[17] As a result, governments have widely acknowledged the value of collective intelligence from civil society, academic and private sector participants of the Delphi, especially in a field of rapid change, such as technology policies.

Use in patent participation identification
In the early 1980s Jackie Awerman of Jackie Awerman Associates, Inc. designed a modified Delphi method for identifying the roles of various contributors to the creation of a patent-eligible product. (Epsilon Corporation, Chemical Vapor Deposition Reactor) The results were then used by patent attorneys to determine bonus distribution percentage to the general satisfaction of all team members.[citation needed]

Use in policy-making
From the 1970s, the use of the Delphi technique in public policy-making introduces a number of methodological innovations. In particular:

the need to examine several types of items (not only forecasting items but, typically, issue items, goal items, and option items) leads to introducing different evaluation scales which are not used in the standard Delphi. These often include desirability, feasibility (technical and political) and probability, which the analysts can use to outline different scenarios: the desired scenario (from desirability), the potential scenario (from feasibility) and the expected scenario (from probability);
the complexity of issues posed in public policy-making tends to increased weighting of panelists’ arguments, such often solicited pro and con each item along with new items for panel consideration;
likewise, methods measuring panel evaluations tend to increased sophistication such as multi-dimensional scaling.
Further innovations come from the use of computer-based (and later web-based) Delphi conferences. According to Turoff and Hiltz,[18] in computer-based Delphis:

the iteration structure used in the paper Delphis, which is divided into three or more discrete rounds, can be replaced by a process of continuous (roundless) interaction, enabling panelists to change their evaluations at any time;
the statistical group response can be updated in real-time, and shown whenever a panelist provides a new evaluation.
According to Bolognini,[19] web-based Delphis offer two further possibilities, relevant in the context of interactive policy-making and e-democracy. These are:


A web-based communication structure (Hyperdelphi).[19]
the involvement of a large number of participants,
the use of two or more panels representing different groups (such as policy-makers, experts, citizens), which the administrator can give tasks reflecting their diverse roles and expertise, and make them to interact within ad hoc communication structures. For example, the policy community members (policy-makers and experts) may interact as part of the main conference panel, while they receive inputs from a virtual community (citizens, associations etc.) involved in a side conference. These web-based variable communication structures, which he calls Hyperdelphi (HD), are designed to make Delphi conferences "more fluid and adapted to the hypertextual and interactive nature of digital communication".
One successful example of a (partially) web-based policy Delphi is the five-round Delphi exercise (with 1,454 contributions) for the creation of the eLAC Action Plans in Latin America. It is believed to be the most extensive online participatory policy-making foresight exercise in the history of intergovernmental processes in the developing world at this time.[17] In addition to the specific policy guidance provided, the authors list the following lessons learned include "(1) the potential of Policy Delphi methods to introduce transparency and accountability into public decision-making, especially in developing countries; (2) the utility of foresight exercises to foster multi-agency networking in the development community; (3) the usefulness of embedding foresight exercises into established mechanisms of representative democracy and international multilateralism, such as the United Nations; (4) the potential of online tools to facilitate participation in resource-scarce developing countries; and (5) the resource-efficiency stemming from the scale of international foresight exercises, and therefore its adequacy for resource-scarce regions."[17]

Use in reporting guidelines
The guidance for developing reporting guidelines in 2010 [20] recommended using the Delphi method for developing reporting guidelines. However, less than 30% of the reporting guidelines were developed with the Delphi method according to the systematic reviews in 2015 [21] and 2020.[22] The Delphi approach has been successfully employed to improve agreement between experts in iterative rating exercises on clinical test results using inter-rater kappa statistics as an outcome measure.[23]

Online Delphi systems
Main article: Real-time Delphi
A number of Delphi forecasts are conducted using web sites that allow the process to be conducted in real-time. For instance, the TechCast Project uses a panel of 100 experts worldwide to forecast breakthroughs in all fields of science and technology. Another example is the Horizon Project, where educational futurists collaborate online using the Delphi method to come up with the technological advancements to look out for in education for the next few years.

Variations
Traditionally the Delphi method has aimed at a consensus of the most probable future by iteration. Other versions, such as the Policy Delphi,[24][25] is instead a decision support method aiming at structuring and discussing the diverse views of the preferred future. In Europe, more recent web-based experiments have used the Delphi method as a communication technique for interactive decision-making and e-democracy.[26] The Argument Delphi, developed by Osmo Kuusi, focuses on ongoing discussion and finding relevant arguments rather than focusing on the output. The Disaggregative Policy Delphi, developed by Petri Tapio, uses cluster analysis as a systematic tool to construct various scenarios of the future in the latest Delphi round.[27] The respondent's view on the probable and the preferable future are dealt with as separate cases. The computerization of Argument Delphi is relatively difficult because of several problems like argument resolution, argument aggregation and argument evaluation. The computerization of Argument Delphi, developed by Sadi Evren Seker, proposes solutions to such problems.[28]

Accuracy
Today the Delphi method is a widely accepted forecasting tool and has been used successfully for thousands of studies in areas varying from technology forecasting to drug abuse.[29] Overall the track record of the Delphi method is mixed. There have been many cases when the method produced poor results. Still, some authors attribute this to poor application of the method and not to the weaknesses of the method itself.[citation needed] It must also be realized that in areas such as science and technology forecasting, the degree of uncertainty is so great that exact and always correct predictions are impossible, so a high degree of error is to be expected.

A particular weakness of the Delphi method is that future developments are not always predicted correctly by consensus of experts. This shortcoming concerning the issue of ignorance is important. If panelists are misinformed about a topic, the use of Delphi may only add confidence to their ignorance.[30]

One of the initial problems of the method was its inability to make complex forecasts with multiple factors. Potential future outcomes were usually considered as if they had no effect on each other. Later on, several extensions to the Delphi method were developed to address this problem, such as cross impact analysis, that takes into consideration the possibility that the occurrence of one event may change probabilities of other events covered in the survey. Still the Delphi method can be used most successfully in forecasting single scalar indicators.


Delphi vs. prediction markets
Delphi has characteristics similar to prediction markets as both are structured approaches that aggregate diverse opinions from groups. Yet, there are differences that may be decisive for their relative applicability for different problems.[5]

Some advantages of prediction markets derive from the possibility to provide incentives for participation.

They can motivate people to participate over a long period of time and to reveal their true beliefs.
They aggregate information automatically and instantly incorporate new information in the forecast.
Participants do not have to be selected and recruited manually by a facilitator. They themselves decide whether to participate if they think their private information is not yet incorporated in the forecast.
Delphi seems to have these advantages over prediction markets:

Participants reveal their reasoning
It is easier to maintain confidentiality
Potentially quicker forecasts if experts are readily available.
Delphi is applicable in situations where the bets involved might affect the value of the currency used in bets (e.g. a bet on the collapse of the dollar made in dollars might have distorted odds).
More recent research has also focused on combining both, the Delphi technique and prediction markets. More specifically, in a research study at Deutsche Börse elements of the Delphi method had been integrated into a prediction market.[31]

See also
DARPA's Policy Analysis Market
Horizon scanning
Nominal group technique
Planning poker
Reference class forecasting
Wideband delphi
The Wisdom of Crowds

&
https://web.njit.edu/~turoff/pubs/delphibook/

The Delphi Method: Techniques and Applications, edited by Harold A. Linstone and Murray Turoff — a comprehensive book on Delphi method (free download, 11Mb PDF, 618 pages)
RAND publications on the Delphi Method Downloadable documents from RAND concerning applications of the Delphi Technique.
Principles of Forecasting A free service to support Delphi forecasting and references are available on this site. However, source code is not currently available.
Using the Delphi Method for Qualitative, Participatory Action Research in Health Leadership, this article provides a detailed description of the use of modified Delphi for qualitative, participatory action research.
A cross-validation Delphi method approach to the diagnosis and treatment of personality disorders in older adults, A cross-validation study replicating one completed in the Netherlands and Belgium, and exploring US experts' views on the diagnosis and treatment of older adults with personality disorders.

http://www.rand.org/international_programs/pardee/pubs/futures_method/delphi.html
Downloadable documents from RAND concerning applications of the Delphi Technique.





Policy Analysis Market
https://en.wikipedia.org/wiki/Policy_Analysis_Market
The Policy Analysis Market (PAM), part of the FutureMAP project, was a proposed futures exchange developed, beginning in May 2001, by the Information Awareness Office (IAO) of the United States Defense Advanced Research Projects Agency (DARPA), and based on an idea first proposed by Net Exchange, a San Diego, California, research firm specializing in the development of online prediction markets.[1] PAM was shut down in August 2003 after multiple US senators condemned it as an assassination and terrorism market, a characterization criticized in turn by futures-exchange expert Robin Hanson of George Mason University, and several journalists. Since PAM's closure, several private-sector variations on the idea have been launched.




Proposal
PAM was to be "a market in the future of the Middle East", and would have allowed trading of futures contracts based on possible political developments in several Middle Eastern countries. The theory behind such a market is that the monetary value of a futures contract on an event reflects the probability that that event will actually occur, since a market's actors rationally bid a contract either up or down based on reliable information.[2][3] One of the models for PAM was a political futures market run by the University of Iowa, which had predicted US election outcomes more accurately than either opinion polls or political pundits. PAM was also inspired by the work of George Mason University economist Robin Hanson.[3][4]

Opposition
At a July 28, 2003, press conference, senators Byron L. Dorgan (D-ND) and Ron Wyden (D-OR) claimed that PAM would allow trading in such events as coups d'états, assassinations, and terrorist attacks, due to such events appearing on interface pictures on the project website.[a]

They denounced the idea, with Wyden stating, "The idea of a federal betting parlor on atrocities and terrorism is ridiculous and it's grotesque", while Dorgan called it "useless, offensive and unbelievably stupid".[6][better source needed] Other critics offered similar outrage. Within less than a day, the Pentagon announced the cancellation of PAM, and by the end of the week John Poindexter, head of the DARPA unit responsible for developing it, but better known for his role in the Iran–Contra affair, had offered his resignation.[7] PAM had first been proposed and funded in 2001,[b] Poindexter joined DARPA in December 2002, and Hanson claimed that Poindexter "actually had little involvement with PAM".[5]

Further developments
CNN reported the program would be relaunched by the private firm, Net Exchange,[3] that helped create it, but that the newer version "will not include any securities based on forecasts of violent events such as assassinations or terror attacks".[8]

On June 11, 2007, Popular Science launched a similar program, known as the PopSci Predictions Exchange. Another project was the American Action Market announced by Tad Hirsh of the MIT Media Lab in 2003, which would permit for-profit betting on major events.

There are now commercial policy-analysis markets that perform such functions. One, Intrade, had previously offered futures on events such as the capture of Osama bin Laden, the US Presidential Election, and the bombing of Iran. As of March 10, 2013, all trading had been suspended on Intrade's website due to undisclosed financial irregularities.

See also
Death pool (also "dead pool")
Future Map and Information Awareness Office FutureMap Project
The Wisdom of Crowds, a book which supported the Policy Analysis Market
Dumb agent theory
Notes
 "On the web site, as a backdrop to bold text, were faint background sample screens. In a small (less than 2 percent) section of two such screens, Polk had included as colorful examples of possible miscellaneous items an assassination of Yasser Arafat, a missile attack by North Korea, and the overthrow of the king of Jordan."[5]
 "DARPA's first call for proposals went out in May 2001 under the name "Electronic Market-Based Decision Support." The call basically said, 'We've heard this works elsewhere; show us it works for problems we care about.' Proposals were due in August, and by December two firms had won SBIR (small business independent research) grants."[5]
References
 "Programs: FutureMap". Information Awareness Office, United States Defense Advanced Research Projects Agency. 2003. Archived from the original on April 22, 2012. Retrieved October 29, 2019 – via InfoWar.net. This is an archive of the official FutureMap and PAM webpage, which was eventually taken offline by DARPA.
 Hulse, Carl (July 29, 2003). "Threats and Responses: Plans and Criticisms; Pentagon Prepares a Futures Market on Terror Attacks". The New York Times. Retrieved October 29, 2019.
 Lundin, Leigh (July 7, 2013). "PAM, PRISM, and Poindexter". SleuthSayers: Professional Crime-Writers and Crime-Fighters. Washington, DC. Retrieved January 4, 2014.
 "Policy Analysis Market and the Political Yuck Factor – why Americans shied away from a geopolitical futures market". SIRC.org. Social Issues Research Centre. 2004. Retrieved October 29, 2019.
 Hanson, Robin (February 2007). "The Policy Analysis Market (A Thwarted Experiment in the Use of Prediction Markets for Public Policy)". Innovations Technology Governance Globalization. pp. 73–88. doi:10.1162/itgg.2007.2.3.73. Retrieved October 29, 2019 – via ResearchGate. Only the abstract is provided at this URL.
 "Pentagon Plans Online Terror Bets". BBC News. July 29, 2003. Archived from the original on October 17, 2006. Retrieved October 29, 2019 – via Common Dreams News Center.
 "Poindexter to Leave Pentagon Research Job". The Washington Post. July 31, 2003. Archived from the original on August 5, 2012. Retrieved September 8, 2017.
 Gongloff, Mark (November 17, 2003). "Middle East futures market returns. Private firm will restart Pentagon project, but without contracts for violence, in 2004". CNN.com. Time Warner. Retrieved July 16, 2006.
External links

This article includes a list of general references, but it remains largely unverified because it lacks sufficient corresponding inline citations. Please help to improve this article by introducing more precise citations. (October 2019) (Learn how and when to remove this template message)
"Trading in Death". Congressional Record. July 29, 2003. Senate section, pp. S10082–S10083. Archived from the original on May 13, 2016. Retrieved October 29, 2019 – via Project on Government Secrecy, Federation of American Scientists. – Transcript of the debate on the Senate floor after The New York Times wrote an article about PAM.
Surowiecki, James (July 30, 2003). "Damn the Slam PAM Plan! Canceling the Pentagon's futures market is cowardly and dumb". Slate. Archived from the original on October 23, 2017. Retrieved October 29, 2019.
Hanson, Robin (2005). "The Policy Analysis Market (and FutureMAP) Archive". Hanson.GMU.edu. George Mason University. Archived from the original on June 14, 2019. Retrieved October 29, 2019.
Hanson, Robin (August 8, 2005). "The Informed Press Favored the Policy Analysis Market" (PDF). Hanson.GMU.edu. Archived (PDF) from the original on May 13, 2019. Retrieved October 29, 2019. – A research paper analyzing the media reaction to PAM
Hanson, Robin (June 12, 1996). "Idea Futures". Hanson.GMU.edu. Archived from the original on September 12, 2019. Retrieved October 29, 2019.
Naef, Wanja Eric, ed. (2003). "DARPA - FutureMAP Program - Policy Analysis Market (PAM) Cancelled". IWS – The Information Warfare Site. Archived from the original on January 16, 2019. Retrieved October 29, 2019. – Includes text and PDF versions of the DARPA press release announcing the end of PAM, and other materials such as a Dept. of Defense news briefing and archived images from the PAM funding proposal.
"Even More on Terrorist Futures". The Talent Show. July 30, 2003. Archived from the original on May 11, 2006. Retrieved October 29, 2019. – Contains relevant analytical quotes and clips.
Categories: Prediction marketsDARPA
Navigation menu
Not logged in
Talk
Contributions
Create account
Log in
ArticleTalk
ReadEditView historySearch
Search Wikipedia
Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
Contribute
Help
Learn to edit
Community portal
Recent changes
Upload file
Tools
What links here
Related changes
Special pages
Permanent link
Page information
Cite this page
Wikidata item
Print/export
Download as PDF
Printable version

Languages
فارسی
Français
Edit links






Planning poker
https://en.wikipedia.org/wiki/Planning_poker
Planning poker, also called Scrum poker, is a consensus-based, gamified technique for estimating, mostly used to estimate effort or relative size of development goals in software development. In planning poker, members of the group make estimates by playing numbered cards face-down to the table, instead of speaking them aloud. The cards are revealed, and the estimates are then discussed. By hiding the figures in this way, the group can avoid the cognitive bias of anchoring, where the first number spoken aloud sets a precedent for subsequent estimates.

Planning poker is a variation of the Wideband delphi method. It is most commonly used in agile software development, in particular in Scrum and Extreme Programming.

The method was first defined and named by James Grenning in 2002[1] and later popularized by Mike Cohn in the book Agile Estimating and Planning,[2] whose company trade marked the term[3] and a digital online tool.[4]


Rationale
The reason to use planning poker is to avoid the influence of the other participants. If a number is spoken, it can sound like a suggestion and influence the other participants' sizing. Planning poker should force people to think independently and propose their numbers simultaneously. This is accomplished by requiring that all participants show their cards at the same time.

Equipment
Planning poker is based on a list of features to be delivered, several copies of a deck of cards and optionally, an egg timer that can be used to limit time spent in discussion of each item.

The feature list, often a list of user stories, describes some software that needs to be developed.

The cards in the deck have numbers on them. A typical deck has cards showing the Fibonacci sequence including a zero: 0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89; other decks use similar progressions with a fixed ratio between each value such as 1, 2, 4, 8, etc.

The reason for using the Fibonacci sequence instead of simply doubling each subsequent value is because estimating a task as exactly double the effort as another task is misleadingly precise. A task that is about twice as much effort as a 5, has to be evaluated as either a bit less than double (8) or a bit more than double (13).

Several commercially available decks use the sequence: 0, ½, 1, 2, 3, 5, 8, 13, 20, 40, 100, and optionally a ? (unsure), an infinity symbol (this task cannot be completed), and a coffee cup (I need a break, and I will make the rest of the team coffee). The reason for not exactly following the Fibonacci sequence after 13 is because someone once said to Mike Cohn "You must be very certain to have estimated that task as 21 instead of 20." Using numbers with only a single digit of precision (except for 13) indicates the uncertainty in the estimation. Some organizations[which?] use standard playing cards of Ace, 2, 3, 5, 8 and king. Where king means: "this item is too big or too complicated to estimate". "Throwing a king" ends the discussion of the item for the current sprint.

When teams are not in the same geographical locations, collaborative software over the internet can be used as replacement for physical cards. Several web applications and mobile applications exist for the purpose, including open source software[5] with a gratis demo server available for everyone to use.[6]

Procedure
At the estimation meeting, each estimator is given one deck of the cards. All decks have identical sets of cards in them.

The meeting proceeds as follows:

A Moderator, who will not play, chairs the meeting.
The Product Owner provides a short overview of one user story to be estimated. The team is given an opportunity to ask questions and discuss to clarify assumptions and risks. A summary of the discussion is recorded, e.g. by the Moderator.
Each individual lays a card face down representing their estimate for the story. Units used vary - they can be days duration, ideal days or story points. During discussion, numbers must not be mentioned at all in relation to feature size to avoid anchoring.
Everyone calls their cards simultaneously by turning them over.
People with high estimates and low estimates are given a soap box to offer their justification for their estimate and then discussion continues.
Repeat the estimation process until a consensus is reached. The developer who was likely to own the deliverable has a large portion of the "consensus vote", although the Moderator can negotiate the consensus.
To ensure that discussion is structured; the Moderator or the Product Owner may at any point turn over the egg timer and when it runs out all discussion must cease and another round of poker is played. The structure in the conversation is re-introduced by the soap boxes.
The cards are numbered as they are to account for the fact that the longer an estimate is, the more uncertainty it contains. Thus, if a developer wants to play a 6 he is forced to reconsider and either work through that some of the perceived uncertainty does not exist and play a 5, or accept a conservative estimate accounting for the uncertainty and play an 8.

Benefits
A study by Moløkken-Østvold and Haugen[7] reported that planning poker provided accurate estimates of programming task completion time, although estimates by any individual developer who entered a task into the task tracker was just as accurate. Tasks discussed during planning poker rounds took longer to complete than those not discussed and included more code deletions, suggesting that planning poker caused more attention to code quality. Planning poker was considered by the study participants to be effective at facilitating team coordination and discussion of implementation strategies.

See also
Comparison of Scrum software, which generally has support for planning poker, either included or as an optional add-on.
Fibonacci scale (agile)





Wideband delphi
https://en.wikipedia.org/wiki/Wideband_delphi


The Wideband Delphi estimation method is a consensus-based technique for estimating effort. It derives from the Delphi method which was developed in the 1950-1960s at the RAND Corporation as a forecasting tool. It has since been adapted across many industries to estimate many kinds of tasks, ranging from statistical data collection results to sales and marketing forecasts.


Contents
1	Wideband Delphi Process
2	See also
3	Further reading
4	External links
Wideband Delphi Process
Barry Boehm and John A. Farquhar originated the Wideband variant of the Delphi method in the 1970s. They called it "wideband" because, compared to the existing delphi method, the new method involved greater interaction and more communication among those participating. The method was popularized by Boehm's book Software Engineering Economics (1981). Boehm's original steps from this book were:

Coordinator presents each expert with a specification and an estimation form.
Coordinator calls a group meeting in which the experts discuss estimation issues with the coordinator and each other.
Experts fill out forms anonymously.
Coordinator prepares and distributes a summary of the estimates
Coordinator calls a group meeting, specifically focusing on having the experts discuss points where their estimates vary widely
Experts fill out forms, again anonymously, and steps 4 to 6 are iterated for as many rounds as appropriate.
A variant of Wideband Delphi was developed by Neil Potter and Mary Sakry of The Process Group. In this process, a project manager selects a moderator and an estimation team with three to seven members. The Delphi process consists of two meetings run by the moderator. The first meeting is the kickoff meeting, during which the estimation team creates a work breakdown structure (WBS) and discusses assumptions. After the meeting, each team member creates an effort estimate for each task. The second meeting is the estimation session, in which the team revises the estimates as a group and achieves consensus. After the estimation session, the project manager summarizes the results and reviews them with the team, at which point they are ready to be used as the basis for planning the project.

Choose the team. The project manager selects the estimation team and a moderator. The team should consist of 3 to 7 project team members. The team should include representatives from every engineering group that will be involved in the development of the work product being estimated.
Kickoff meeting. The moderator prepares the team and leads a discussion to brainstorm assumptions, generate a WBS and decide on the units of estimation.
Individual preparation. After the kickoff meeting, each team member individually generates the initial estimates for each task in the WBS, documenting any changes to the WBS and missing assumptions.
Estimation session. The moderator leads the team through a series of iterative steps to gain consensus on the estimates. At the start of the iteration, the moderator charts the estimates on the whiteboard so the estimators can see the range of estimates. The team resolves issues and revises estimates without revealing specific numbers. The cycle repeats until either no estimator wants to change his or her estimate or the estimators agree that the range is acceptable.
Assemble tasks. The project manager works with the team to collect the estimates from the team members at the end of the meeting and compiles the final task list, estimates and assumptions.
Review results. The project manager reviews the final task list with the estimation team.
See also
The Wisdom of Crowds
Delphi method
Planning poker
Further reading
Andrew Stellman and Jennifer Greene (2005). Applied Software Project Management. Sebastopol, CA: O'Reilly Media. ISBN 0-596-00948-8.
External links
Wideband Delphi Estimation Process https://www.stellman-greene.com/LectureNotes/03%20estimation.pdf
Stop Promising Miracles by Karl Wiegers https://www.projecttimes.com/articles/stop-promising-miracles-wideband-delphi-team-estimation-part-1.html






Reference class forecasting
https://en.wikipedia.org/wiki/Reference_class_forecasting
Reference class forecasting or comparison class forecasting is a method of predicting the future by looking at similar past situations and their outcomes. The theories behind reference class forecasting were developed by Daniel Kahneman and Amos Tversky. The theoretical work helped Kahneman win the Nobel Prize in Economics.

Reference class forecasting is so named as it predicts the outcome of a planned action based on actual outcomes in a reference class of similar actions to that being forecast.

Discussion of which reference class to use when forecasting a given situation is known as the reference class problem.





Nominal group technique
https://en.wikipedia.org/wiki/Nominal_group_technique



Overview
Kahneman and Tversky[1][2] found that human judgment is generally optimistic due to overconfidence and insufficient consideration of distributional information about outcomes.

People tend to underestimate the costs, completion times, and risks of planned actions, whereas they tend to overestimate the benefits of those same actions. Such error is caused by actors taking an "inside view", where focus is on the constituents of the specific planned action instead of on the actual outcomes of similar ventures that have already been completed.

Kahneman and Tversky concluded that disregard of distributional information, i.e. risk, is perhaps the major source of error in forecasting. On that basis they recommended that forecasters "should therefore make every effort to frame the forecasting problem so as to facilitate utilizing all the distributional information that is available".[2]:416 Using distributional information from previous ventures similar to the one being forecast is called taking an "outside view". Reference class forecasting is a method for taking an outside view on planned actions.

Reference class forecasting for a specific project involves the following three steps:

Identify a reference class of past, similar projects.
Establish a probability distribution for the selected reference class for the parameter that is being forecast.
Compare the specific project with the reference class distribution, in order to establish the most likely outcome for the specific project.
Reference class tennis
The reference class problem, also known as reference class tennis, is the discussion of which reference class to use when forecasting a given situation.

Suppose someone were trying to predict how long it would take to write a psychology textbook. Reference class tennis would involve debating whether we should take the average of all books (closest to an outside view), just all textbooks, or just all psychology textbooks (closest to an inside view).[3][4]

Practical use in policy and planning
Whereas Kahneman and Tversky developed the theories of reference class forecasting, Flyvbjerg and COWI (2004) developed the method for its practical use in policy and planning. The first instance of reference class forecasting in practice is described in Flyvbjerg (2006).[5] This was a forecast carried out in 2004 by the UK government of the projected capital costs for an extension of Edinburgh Trams. The promoter's forecast estimated a cost of £255 million. Taking all available distributional information into account, based on a reference class of comparable rail projects, the reference class forecast estimated a cost of £320 million. A report issued in August 2011 estimated that the final cost of the yet unfinished project would be over £1 billion, for a shorter tram line than the proposed Line 2.[6]

Since the Edinburgh forecast, reference class forecasting has been applied to numerous other projects in the UK, including the £15 (US$29) billion Crossrail project in London. After 2004, The Netherlands, Denmark, and Switzerland have also implemented various types of reference class forecasting.

Before this, in 2001 (updated in 2011), AACE International (the Association for the Advancement of Cost Engineering) included Estimate Validation as a distinct step in the recommended practice of Cost Estimating (Estimate Validation is equivalent to Reference class forecasting in that it calls for separate empirical-based evaluations to benchmark the base estimate):

The estimate should be benchmarked or validated against or compared to historical experience and/or past estimates of the enterprise and of competitive enterprises to check its appropriateness, competitiveness, and to identify improvement opportunities...Validation examines the estimate from a different perspective and using different metrics than are used in estimate preparation.[7]

In the process industries (e.g., oil and gas, chemicals, mining, energy, etc. which tend to dominate AACE's membership), benchmarking (i.e., "outside view") of project cost estimates against the historical costs of completed projects of similar types, including probabilistic information, has a long history.[8]

See also
icon	Business and economics portal
Base rate fallacy
Benefit shortfall
Consensus forecast
Cost overrun
Event chain methodology
Financial risk
Forecasting
Hofstadter's Law
Optimism bias
Planning fallacy
Reference class problem






Nominal group technique
https://en.wikipedia.org/wiki/Nominal_group_technique
The nominal group technique (NGT) is a group process involving problem identification, solution generation, and decision making.[1] It can be used in groups of many sizes, who want to make their decision quickly, as by a vote, but want everyone's opinions taken into account (as opposed to traditional voting, where only the largest group is considered).[2] The method of tallying is the difference. First, every member of the group gives their view of the solution, with a short explanation. Then, duplicate solutions are eliminated from the list of all solutions, and the members proceed to rank the solutions, 1st, 2nd, 3rd, 4th, and so on.

Some facilitators will encourage the sharing and discussion of reasons for the choices made by each group member, thereby identifying common ground, and a plurality of ideas and approaches. This diversity often allows the creation of a hybrid idea (combining parts of two or more ideas), often found to be even better than those ideas being initially considered.

In the basic method, the numbers each solution receives are totaled, and the solution with the highest (i.e. most favored) total ranking is selected as the final decision. There are variations on how this technique is used. For example, it can identify strengths versus areas in need of development, rather than be used as a decision-making voting alternative. Also, options do not always have to be ranked, but may be evaluated more subjectively.

This technique was originally developed by Andre Delbecq and Andrew H. Van de Ven,[1][3] and has been applied to adult education program planning by Vedros,[4] and has also been employed as a useful technique in curriculum design and evaluation in educational institutions.[5][6][7][8]

Taking cue from the technique, Tunde Varga-Atkins, Jaye McIsaac and Ian Willis, [9] found that a two-stage combination of focus group and the nominal group technique, coined as nominal focus group, was particularly effective as an evaluation method.


Contents
1	Effects
2	Usage
3	Standard procedure
4	Advantages and disadvantages
5	Adaptation for ill-structured problems
6	See also
7	Footnotes
8	Further reading
Effects
NGT have been shown to enhance one or more dimensions of effectiveness of decision-making groups. Requiring individuals to write down their ideas silently and independently prior to a group discussion increased the number of solutions generated by groups.[1][3] Round-robin polling also resulted in a larger number of inputs and fostered more equal participation.[4] The increased number of heterogeneous inputs led to high quality decisions.[10]

As compared to interacting groups the NGT groups provide more unique ideas, more balanced participation between group members, increased feelings of accomplishment, and greater satisfaction with idea quality and group efficiency.[11]

These findings are consistent with a 1958 study[12] which found that, in response to three different problems requiring creative thinking, the number of ideas produced by "nominal groups" (whose members were actually working alone) was greater than the number of ideas produced by real, face-to-face groups. The ideas generated by the nominal and real groups were rated qualitatively and for originality, and the nominal groups scored better on both of those measures.

Usage
The nominal group technique is particularly useful:[citation needed]

When some group members are much more vocal than others.
When some group members think better in silence.
When there is concern about some members not participating.
When the group does not easily generate quantities of ideas.
When all or some group members are new to the team.
When the issue is controversial or there is heated conflict.
When there is a power-imbalance between facilitator and participants or participants: the structure of the NGT session can balance these out.
When stakeholders like a(/some) quantitative output of the process.
Standard procedure
Routinely, the NGT involves five stages:

Introduction and explanation: The facilitator welcomes the participants and explains to them the purpose and procedure of the meeting.
Silent generation of ideas: The Facilitator provides each participant with a sheet of paper with the question to be addressed and ask them to write down all ideas that come to mind when considering the question. During this period, the facilitator asks participants not to consult or discuss their ideas with others. This stage lasts approximately 10 minutes.
Sharing ideas: The Facilitator invites participants to share the ideas they have generated. She records each idea on a flip chart using the words spoken by the participant. The round robin process continues until all ideas have been presented. There is no debate about items at this stage and participants are encouraged to write down any new ideas that may arise from what others share. This process ensures all participants get an opportunity to make an equal contribution and provides a written record of all ideas generated by the group. This stage may take 15–30 minutes.
Group discussion: Participants are invited to seek verbal explanation or further details about any of the ideas that colleagues have produced that may not be clear to them. The facilitator’s task is to ensure that each person is allowed to contribute and that discussion of all ideas is thorough without spending too long on a single idea. It is important to ensure that the process is as neutral as possible, avoiding judgment and criticism. The group may suggest new items for discussion and combine items into categories, but no ideas should be eliminated. This stage lasts 30–45 minutes.
Voting and ranking: This involves prioritizing the recorded ideas in relation to the original question. Following the voting and ranking process, immediate results in response to the question is available to participants so the meeting concludes having reached a specific outcome.
The number of nominal group meetings to be held will depend on the nature of the question and accessibility to the key stakeholders best suited to help address the problem.

Advantages and disadvantages
One major advantage of NGT is that it avoids two problems caused by group interaction. First, some members are reluctant to suggest ideas because they are concerned about being criticized, or are reticent and shy. Second, some members are reluctant to create conflict in groups. (Many people want to maintain a pleasant climate.) NGT overcomes these problems (e.g.[13]). NGT has the clear advantage in ensuring relatively equal participation. It may also, in many cases be a time-saving technique. Other advantages include producing a large number of ideas and providing a sense of closure that is often not found in less-structured group methods.

A major disadvantage of NGT is that the method lacks flexibility by being able to deal with only one problem at a time. Also, there must be a certain amount of conformity on the part of the members involved in NGT. Everyone must feel comfortable with the amount of structure involved. Another disadvantage is the amount of time needed to prepare for the activity. There is no spontaneity involved with this method. Facilities must be arranged and carefully planned. Opinions may not converge in the voting process, cross-fertilization of ideas may be constrained, and the process may appear to be too mechanical.

[icon]	
This section needs expansion. You can help by adding to it. (June 2010)
One of the key issues about 'nominal' group technique is that it does not depend on normal group processes. It is a method to work with a collection of people and involve them in decision making but does not depend on existing group processes. This is according to the originators an advantage in decision making using this tool.

Adaptation for ill-structured problems
Modification of NGT, undertaken by Bartunek and Murnighan,[14] helps to deal with ill-structured problems. Normal ideas are generated and listed, followed by the facilitator questioning if the ideas are relevant to the same problem. If not, the problem is said to be ill-structured, and the ideas generated are clustered into coherent groups. These clusters of ill-structured ideas are then treated as problems in their own right, and the NGT procedure is applied to them. Regular breaks are taken by the participants to ensure that the group feels they are still working on the original problem.

See also
Brainstorming
Creative problem solving
Creativity techniques
Delphi method
Group decision making
Social choice theory
Voting paradox
Voting system




Horizon scanning
https://en.wikipedia.org/wiki/Horizon_scanning
Horizon scanning (HS) or also horizon scan is a method from futures studies, sometimes regarded as a part of foresight.[1] It is the early detection and assessment of emerging technologies or threats for mainly policy makers in a domain of choice.[2][3][4] Such domains include agriculture,[5] environmental studies,[6] health care,[7] biosecurity,[2] and food safety.[8]

Some sources mention HS as an alternative name for environmental scanning (ES),[9] or view HS as a subset of ES,[10] or at least suggest ES to have a similar goal to HS.[11] In summary, ES has key differences to HS.[12] ES is rather concerned to provide industry specific information for short-term decission making in a competitive environment.[13][14][15]

Etymology
One of the first usages of the term horizon scanning as related to futures studies appeared in 1995 in a paper discussing trends in information technology and forcasting the year 2005.[16] Then, horizon scanning was used to name detection and early evaluation of health care technologies in an European workshop in September 1997, whose participants were 27 policy makers and researchers from 12 countries.[7] This workshop was organized as a part of the European health technology assessment project (HTA).[7] Policy makers and planners of health services were the main target groups for knowledge produced by horizon scanning.[7] UK Government's Chief Scientific Advisor's Committee definined horizon scanning in 2004 as:[17]

"Horizon scanning is the systematic examination of potential threats, opportunities and likely future developments including – but not restricted to – those that are at the margins of current thinking and planning. Horizon scanning may explore novel and unexpected issues, as well as persistent problems or trends."

In 2015, a report by Fraunhofer Institute for Systems and Innovation Research ISI for the European Commission defined HS as:[18]

"Horizon Scanning is the systematic outlook to detect early signs of potentially important developments. These can be weak (or early) signals, trends, wild cards or other developments, persistent problems, risks and threats, including matters at the margins of current thinking that challenge past assumptions."

Phases and techniques
A 2013's systematic study of 23 formally established health technology HS programs from different countries identified following common phases in a horizon scanning process:[19]

Identify the users of the HS products.
Estimate the time avalaible for the HS effort.
Conduct HS, and identify emerging technologies that potentially affect targeted domain.
Filter the identified technologies by applying criteria for determining the relevance of the technologies to the HS effort.
Prioritize the technologies that have passed through the filtering process by applying criteria based on stakeholders’ requirements and needs.
Assess technologies of high priority for the stakeholders, and predict their potential impacts targeted domain.
Use peer review to check for quality of the HS process and products.
Disseminate the HS products to the relevant audiences in a timely fashion.
Update the HS products on a regular basis or when a significant development occurs related to the technology.
Horizon scanning includes following techniques:[20][19]

Technique	Example
Interviews	Environmental Research Funders Forum Horizon Scanning Study[21]
Issue tree	Foresight project on Brain Science, Addiction and Drugs[22]
Literature searches and state-of-science reviews	
Expert workshops	Horizon scan of conservation issues in UK.[23] Assessment of 100 ecological questions of highest priority to global conservation.[24]
Open fora	Future Wiki[25]
Delphi questionnaire	50 key issues for the future of Mediterranean wetlands[26]
Trend analysis	
Scenarios	Wildlife Conservation Societies’ Futures of the Wild
Systems/Maps	Foresight project on Tackling Obesities: Future Choices[27]
Backcasting	
Governmental bodies
UK
In order to centralize horizon scanning, UK has founded the English Horizon Scanning Centre (HSC) in 2005.[28] The Cabinet Office’s Horizon Scanning Secretariat and the Government Office for Science’s Horizon Scanning Centre were combined to the Horizon Scanning Programme team in 2014.[29]

Germany
Umweltbundesamt applies horizon scanning since 2012 along with trend analysis.[30]

European Union
Joint Research Centre's "Tool for Innovation Monitoring" augments horizon scanning with text mining of available literature.[31]

USA
In 2010, The Agency for Healthcare Research and Quality (AHRQ) established the first publicly funded Healthcare Horizon Scanning program of the USA.[32]

See also
Futurology
Risk analysis
Scientific lacuna
Technology assessment
Technology scouting







A Guide for the Perplexed
https://en.wikipedia.org/wiki/A_Guide_for_the_Perplexed#Four_Great_Truths
A Guide for the Perplexed is a short book by E. F. Schumacher, published in 1977. The title is a reference to Maimonides's The Guide for the Perplexed. Schumacher himself considered A Guide for the Perplexed to be his most important achievement, although he was better known for his 1973 environmental economics bestseller Small Is Beautiful, which made him a leading figure within the ecology movement. His daughter wrote that her father handed her the book on his deathbed, five days before he died and he told her "this is what my life has been leading to".[1] As the Chicago Tribune wrote, "A Guide for the Perplexed is really a statement of the philosophical underpinnings that inform Small Is Beautiful".

Schumacher describes his book as being concerned with how humans live in the world. It is also a treatise on the nature and organisation of knowledge and is something of an attack on what Schumacher calls "materialistic scientism". Schumacher argues that the current philosophical "maps" that dominate western thought and science are both overly narrow and based on some false premises. However, this book is only in small part a critique.




Collective action problem
https://en.wikipedia.org/wiki/Collective_action_problem#Prominent_theorists

A collective action problem or social dilemma is a situation in which all individuals would be better off cooperating but fail to do so because of conflicting interests between individuals that discourage joint action.[1][2][3] The collective action problem has been addressed in political philosophy for centuries, but was most clearly established in 1965 in Mancur Olson's The Logic of Collective Action.

Problems arise when too many group members choose to pursue individual profit and immediate satisfaction rather than behave in the group's best long-term interests. Social dilemmas can take many forms and are studied across disciplines such as psychology, economics, and political science. Examples of phenomena that can be explained using social dilemmas include resource depletion, low voter turnout, and overpopulation. The collective action problem can be understood through the analysis of game theory and the free-rider problem, which results from the provision of public goods. Additionally, the collective problem can be applied to numerous public policy concerns that countries across the world currently face.



Early thought
Although he never used the words "collective action problem", Thomas Hobbes was an early philosopher on the topic of human cooperation. Hobbes believed that people act purely out of self-interest, writing in Leviathan in 1651 that "if any two men desire the same thing, which nevertheless they cannot both enjoy, they become enemies."[4] Hobbes believed that the state of nature consists of a perpetual war between people with conflicting interests, causing people to quarrel and seek personal power even in situations where cooperation would be mutually beneficial for both parties. Through his interpretation of humans in the state of nature as selfish and quick to engage in conflict, Hobbes's philosophy laid the foundation for what is now referred to as the collective action problem.

David Hume provided another early and better-known interpretation of what is now called the collective action problem in his 1738 book A Treatise of Human Nature. Hume characterizes a collective action problem through his depiction of neighbors agreeing to drain a meadow:

Two neighbours may agree to drain a meadow, which they possess in common; because it is easy for them to know each others mind; and each must perceive, that the immediate consequence of his failing in his part, is, the abandoning the whole project. But it is very difficult, and indeed impossible, that a thousand persons should agree in any such action; it being difficult for them to concert so complicated a design, and still more difficult for them to execute it; while each seeks a pretext to free himself of the trouble and expence, and would lay the whole burden on others.[5]

In this passage, Hume establishes the basis for the collective action problem. In a situation in which a thousand people are expected to work together to achieve a common goal, individuals will be likely to free ride, as they assume that each of the other members of the team will put in enough effort to achieve said goal. In smaller groups, the impact one individual has is much greater, so individuals will be less inclined to free ride.

Modern thought
The most prominent modern interpretation of the collective action problem can be found in Mancur Olson's 1965 book The Logic of Collective Action.[6] In it, he addressed the accepted belief at the time by sociologists and political scientists that groups were necessary to further the interests of their members. Olson argued that individual rationality does not necessarily result in group rationality, as members of a group may have conflicting interests that do not represent the best interests of the overall group.

Olson further argued that in the case of a pure public good that is both nonrival and nonexcludable, one contributor tends to reduce their contribution to the public good as others contribute more. Additionally, Olson emphasized the tendency of individuals to pursue economic interests that would be beneficial to themselves and not necessarily the overall public. This contrasts with Adam Smith's theory of the "invisible hand" of the market, where individuals pursuing their own interests should theoretically result in the collective well-being of the overall market.[6]

Olson's book established the collective action problem as one of the most troubling dilemmas in social science, leaving a profound impression on present-day discussions of human behavior and its relationship with governmental policy.

Theories
Game theory
See also: Game theory

This chart illustrates the prisoner's dilemma, one of the most famous examples of game theory.
Social dilemmas have attracted a great deal of interest in the social and behavioral sciences. Economists, biologists, psychologists, sociologists, and political scientists alike study behavior in social dilemmas. The most influential theoretical approach is economic game theory (i.e., rational choice theory, expected utility theory). Game theory assumes that individuals are rational actors motivated to maximize their utilities. Utility is often narrowly defined in terms of people's economic self-interest. Game theory thus predicts a non-cooperative outcome in a social dilemma. Although this is a useful starting premise there are many circumstances in which people may deviate from individual rationality, demonstrating the limitations of economic game theory.[7]

Game theory is one of the principal components of economic theory. It addresses the way individuals allocate scarce resources and how scarcity drives human interaction.[8] One of the most famous examples of game theory is the prisoner's dilemma. The classical prisoner's dilemma model consists of two players who are accused of a crime. If Player A decides to betray Player B, Player A will receive no prison time while Player B receives a substantial prison sentence, and vice versa. If both players choose to keep quiet about the crime, they will both receive reduced prison sentences, and if both players turn the other in, they will each receive more substantial sentences. It would appear in this situation that each player should choose to stay quiet so that both will receive reduced sentences. In actuality, however, players who are unable to communicate will both choose to betray each other, as they each have an individual incentive to do so in order to receive a commuted sentence.[9]

Prisoner's dilemma
The prisoner's dilemma model is crucial to understanding the collective problem because it illustrates the consequences of individual interests that conflict with the interests of the group. In simple models such as this one, the problem would have been solved had the two prisoners been able to communicate. In more complex real world situations involving numerous individuals, however, the collective action problem often prevents groups from making decisions that are of collective economic interest.[10]

The prisoner's dilemma is a simple game[11] that serves as the basis for research on social dilemmas.[12] The premise of the game is that two partners in crime are imprisoned separately and each are offered leniency if they provide evidence against the other. As seen in the table below, the optimal individual outcome is to testify against the other without being testified against. However, the optimal group outcome is for the two prisoners to cooperate with each other.

Prisoner B does not confess (cooperates)	Prisoner B confesses (defects)
Prisoner A does not confess (cooperates)	Each serves 1 year	Prisoner A: 3 years
Prisoner B: goes free
Prisoner A confesses (defects)	Prisoner A: goes free
Prisoner B: 3 years	Each serves 2 years
In iterated games, players may learn to trust one another, or develop strategies like tit-for-tat, cooperating unless the opponent has defected in the previous round.

Asymmetric prisoner's dilemma games are those in which one prisoner has more to gain and/or lose than the other.[13] In iterated experiments with unequal rewards for co-operation, a goal of maximizing benefit may be overruled by a goal of equalizing benefit. The disadvantaged player may defect a certain proportion of the time without it being in the interest of the advantaged player to defect.[14] In more natural circumstances, there may be better solutions to the bargaining problem.

Related games include the Snowdrift game, Stag hunt, the Unscrupulous diner's dilemma, and the Centipede game.

Evolutionary theories
Biological and evolutionary approaches provide useful complementary insights into decision-making in social dilemmas. According to selfish gene theory, individuals may pursue a seemingly irrational strategy to cooperate if it benefits the survival of their genes. The concept of inclusive fitness delineates that cooperating with family members might pay because of shared genetic interests. It might be profitable for a parent to help their off-spring because doing so facilitates the survival of their genes. Reciprocity theories provide a different account of the evolution of cooperation. In repeated social dilemma games between the same individuals, cooperation might emerge because participants can punish a partner for failing to cooperate. This encourages reciprocal cooperation. Reciprocity serves as an explanation for why participants cooperate in dyads, but fails to account for larger groups. Evolutionary theories of indirect reciprocity and costly signaling may be useful to explain large-scale cooperation. When people can selectively choose partners to play games with, it pays to develop a cooperative reputation. Cooperation communicates kindness and generosity, which combine to make someone an attractive group member.

Psychological theories
Psychological models offer additional insights into social dilemmas by questioning the game theory assumption that individuals are confined to their narrow self-interest. Interdependence Theory suggests that people transform a given pay-off matrix into an effective matrix that is more consistent with their social dilemma preferences. A prisoner's dilemma with close kin, for example, changes the pay-off matrix into one in which it is rational to be cooperative. Attribution models offer further support for these transformations. Whether individuals approach a social dilemma selfishly or cooperatively might depend upon whether they believe people are naturally greedy or cooperative. Similarly, goal-expectation theory assumes that people might cooperate under two conditions: They must (1) have a cooperative goal, and (2) expect others to cooperate. Another psychological model, the appropriateness model, questions the game theory assumption that individuals rationally calculate their pay-offs. Instead many people base their decisions on what people around them do and use simple heuristics, like an equality rule, to decide whether or not to cooperate. The logic of appropriateness suggests that people ask themselves the question: "what does a person like me (identity) do (rules/heuristics) in a situation like this (recognition) given this culture (group)?" (Weber et al., 2004) [15] (Kopelman 2009)[16] and that these factors influence cooperation.

Public goods
See also: Volunteer's dilemma
A public goods dilemma is a situation in which the whole group can benefit if some of the members give something for the common good but individuals benefit from “free riding” if enough others contribute.[17] Public goods are defined by two characteristics: non-excludability and non-rivalry—meaning that anyone can benefit from them and one person's use of them does not hinder another person's use of them. An example is public broadcasting that relies on contributions from viewers. Since no single viewer is essential for providing the service, viewers can reap the benefits of the service without paying anything for it. If not enough people contribute, the service cannot be provided. In economics, the literature around public goods dilemmas refers to the phenomenon as the free rider problem. The economic approach is broadly applicable and can refer to the free-riding that accompanies any sort of public good.[18] In social psychology, the literature refers to this phenomenon as social loafing. Whereas free-riding is generally used to describe public goods, social loafing refers specifically to the tendency for people to exert less effort when in a group than when working alone.[19]

Public goods are goods that are nonrival and nonexcludable. A good is said to be nonrival if its consumption by one consumer does not in any way impact its consumption by another consumer. Additionally, a good is said to be nonexcludable if those who do not pay for the good cannot be kept from enjoying the benefits of the good.[20] The nonexcludability aspect of public goods is where one facet of the collective action problem, known as the free-rider problem, comes into play. For instance, a company could put on a fireworks display and charge an admittance price of $10, but if community members could all view the fireworks display from their homes, most would choose not to pay the admittance fee. Thus, the majority of individuals would choose to free ride, discouraging the company from putting on another fireworks show in the future. Even though the fireworks display was surely beneficial to each of the individuals, they relied on those paying the admittance fee to finance the show. If everybody had assumed this position, however, the company putting on the show would not have been able to procure the funds necessary to buy the fireworks that provided enjoyment for so many individuals. This situation is indicative of a collective action problem because the individual incentive to free ride conflicts with the collective desire of the group to pay for a fireworks show for all to enjoy.[20]

Pure public goods include services such as national defense and public parks that are usually provided by governments using taxpayer funds.[20] In return for their tax contribution, taxpayers enjoy the benefits of these public goods. In developing countries where funding for public projects is scarce, however, it often falls on communities to compete for resources and finance projects that benefit the collective group.[21] The ability of communities to successfully contribute to public welfare depends on the size of the group, the power or influence of group members, the tastes and preferences of individuals within the group, and the distribution of benefits among group members. When a group is too large or the benefits of collective action are not tangible to individual members, the collective action problem results in a lack of cooperation that makes the provision of public goods difficult.[21]

Replenishing resource management
A replenishing resource management dilemma is a situation in which group members share a renewable resource that will continue to produce benefits if group members do not over harvest it but in which any single individual profits from harvesting as much as possible.[22]

Tragedy of the commons

Atlantic cod stocks were severely overexploited in the 1970s and 1980s, leading to their abrupt collapse in 1992.[23]
The tragedy of the commons is a type of replenishing resource management dilemma. The dilemma arises when members of a group share a common good. A common good is rivalrous and non-excludable, meaning that anyone can use the resource but there is a finite amount of the resource available and it is therefore prone to overexploitation.[24]

The paradigm of the tragedy of the commons first appeared in an 1833 pamphlet by English economist William Forster Lloyd. According to Lloyd, "If a person puts more cattle into his own field, the amount of the subsistence which they consume is all deducted from that which was at the command, of his original stock; and if, before, there was no more than a sufficiency of pasture, he reaps no benefit from the additional cattle, what is gained in one way being lost in another. But if he puts more cattle on a common, the food which they consume forms a deduction which is shared between all the cattle, as well that of others as his own, in proportion to their number, and only a small part of it is taken from his own cattle".[25]

The template of the tragedy of the commons can be used to understand myriad problems, including various forms of resource depletion. For example, overfishing in the 1960s and 1970s led to depletion of the previously abundant supply of Atlantic Cod. By 1992, the population of cod had completely collapsed because fishers had not left enough fish to repopulate the species.[23] Another example is the higher rates of COVID-19 cases of sickness and deaths in individualistic (vs. collectivists) countries.[26]

Social traps

Pollution in the sky of Athens, Greece.
A social trap occurs when individuals or groups pursue immediate rewards that later prove to have negative or even lethal consequences.[27] This type of dilemma arises when a behavior produces rewards initially but continuing the same behavior produces diminishing returns. Stimuli that cause social traps are called sliding reinforcers, since they reinforce the behavior in small doses and punish it in large doses.

An example of a social trap is the use of vehicles and the resulting pollution. Viewed individually, vehicles are an adaptive technology that have revolutionized transportation and greatly improved quality of life. But their current widespread use produces high levels of pollution, directly from their energy source or over their lifespan.

Perceptual dilemma
A perceptual dilemma arises during conflict and is a product of outgroup bias. In this dilemma, the parties to the conflict prefer cooperation while simultaneously believing that the other side would take advantage of conciliatory gestures.[28]

In conflict
The prevalence of perceptual dilemmas in conflict has led to the development of two distinct schools of thought on the subject. According to deterrence theory, the best strategy to take in conflict is to show signs of strength and willingness to use force if necessary. This approach is intended to dissuade attacks before they happen. Conversely, the conflict spiral view holds that deterrence strategies increase hostilities and defensiveness and that a clear demonstration of peaceful intentions is the most effective way to avoid escalation.[29]

An example of the deterrence theory in practice is the Cold War strategy (employed by both the United States and the Soviet Union) of mutually assured destruction (MAD). Because both countries had second strike capability, each side knew that the use of nuclear weapons would result in their own destruction. While controversial, MAD succeeded in its primary purpose of preventing nuclear war and kept the Cold War cold.

Conciliatory gestures have also been used to great effect, in keeping with conflict spiral theory. For example, Egyptian President Anwar El Sadat's 1977 visit to Israel during a prolonged period of hostilities between the two countries was well-received and ultimately contributed in the Egypt–Israel Peace Treaty.

In politics
Voting
Scholars estimate that, even in a battleground state, there is only a one in ten million chance that one vote could sway the outcome of a United States presidential election.[30] This statistic may discourage individuals from exercising their democratic right to vote, as they believe they could not possibly affect the results of an election. If everybody adopted this view and decided not to vote, however, democracy would collapse. This situation results in a collective action problem, as any single individual is incentivized to choose to stay home from the polls since their vote is very unlikely to make a real difference in the outcome of an election.

Despite high levels of political apathy in the United States, however, this collective action problem does not decrease voter turnout as much as some political scientists might expect.[31] It turns out that most Americans believe their political efficacy to be higher than it actually is, stopping millions of Americans from believing their vote does not matter and staying home from the polls. Thus, it appears collective action problems can be resolved not just by tangible benefits to individuals participating in group action, but by a mere belief that collective action will also lead to individual benefits.

Environmental policy
Environmental problems such as climate change, biodiversity loss, and waste accumulation can be described as collective action problems.[32] Since these issues are connected to the everyday actions of vast numbers of people, vast numbers of people are also required to mitigate the effects of these environmental problems. Without governmental regulation, however, individual people or businesses are unlikely to take the actions necessary to reduce carbon emissions or cut back on usage of non-renewable resources, as these people and businesses are incentivized to choose the easier and cheaper option, which often differs from the environmentally-friendly option that would benefit the health of the planet.[32]

Individual self interest has led to over half of Americans believing that government regulation of businesses does more harm than good. Yet, when the same Americans are asked about specific regulations such as standards for food and water quality, most are satisfied with the laws currently in place or favor even more stringent regulations.[33] This illustrates the way the collective problem hinders group action on environmental issues: when an individual is directly affected by an issue such as food and water quality, they will favor regulations, but when an individual cannot see a great impact from their personal carbon emissions or waste accumulation, they will generally tend to disagree with laws that encourage them to cut back on environmentally-harmful activities.

Factors promoting cooperation in social dilemmas
Studying the conditions under which people cooperate can shed light on how to resolve social dilemmas. The literature distinguishes between three broad classes of solutions—motivational, strategic, and structural—which vary in whether they see actors as motivated purely by self-interest and in whether they change the rules of the social dilemma game.

Motivational solutions
Motivational solutions assume that people have other-regarding preferences. There is a considerable literature on social value orientations which shows that people have stable preferences for how much they value outcomes for self versus others. Research has concentrated on three social motives: (1) individualism—maximizing own outcomes regardless of others; (2) competition—maximizing own outcomes relative to others; and (3) cooperation—maximizing joint outcomes. The first two orientations are referred to as proself orientations and the third as a prosocial orientation. There is much support for the idea that prosocial and proself individuals behave differently when confronted with a social dilemma in the laboratory as well as the field.[citation needed] People with prosocial orientations weigh the moral implications of their decisions more and see cooperation as the most preferable choice in a social dilemma. When there are conditions of scarcity, like a water shortage, prosocials harvest less from a common resource. Similarly prosocials are more concerned about the environmental consequences of, for example, taking the car or public transport.[34]

Research on the development of social value orientations suggest an influence of factors like family history (prosocials have more sibling sisters), age (older people are more prosocial), culture (more individualists in Western cultures), gender (more women are prosocial), even university course (economics students are less prosocial). However, until we know more about the psychological mechanisms underlying these social value orientations we lack a good basis for interventions.

Another factor that might affect the weight individuals assign to group outcomes is the possibility of communication. A robust finding in the social dilemma literature is that cooperation increases when people are given a chance to talk to each other. It has been quite a challenge to explain this effect. One motivational reason is that communication reinforces a sense of group identity.[35]

However, there may be strategic considerations as well. First, communication gives group members a chance to make promises and explicit commitments about what they will do. It is not clear if many people stick to their promises to cooperate. Similarly, through communication people are able to gather information about what others do. On the other hand, this information might produce ambiguous results; an awareness of other people's willingness to cooperate may cause a temptation to take advantage of them.

Social dilemma theory was applied to study social media communication and knowledge sharing in organizations. Organizational knowledge can be considered a public good where motivation to contribute is key. Both intrinsic and extrinsic motivation are important at individual level and can be addressed through managerial interventions.[36]

Strategic solutions
A second category of solutions are primarily strategic. In repeated interactions cooperation might emerge when people adopt a Tit for tat strategy (TFT). TFT is characterized by first making a cooperative move while the next move mimics the decision of the partner. Thus, if a partner does not cooperate, you copy this move until your partner starts to cooperate. Computer tournaments in which different strategies were pitted against each other showed TFT to be the most successful strategy in social dilemmas. TFT is a common strategy in real-world social dilemmas because it is nice but firm. Consider, for instance, that marriage contracts, rental agreements, and international trade policies all use TFT-tactics.

However, TFT is quite an unforgiving strategy and in noisy real-world dilemmas a more forgiving strategy has its own advantages. Such a strategy is known as Generous-tit-for-tat (GTFT).[37] This strategy always reciprocates cooperation with cooperation, and usually replies to defection with defection. However, with some probability GTFT will forgive a defection by the other player and cooperate. In a world of errors in action and perception, such a strategy can be a Nash equilibrium and evolutionarily stable. The more beneficial cooperation is, the more forgiving GTFT can be while still resisting invasion by defectors.

Even when partners might not meet again it could be strategically wise to cooperate. When people can selectively choose whom to interact with it might pay to be seen as a cooperator. Research shows that cooperators create better opportunities for themselves than non-cooperators: They are selectively preferred as collaborative partners, romantic partners, and group leaders. This only occurs however when people's social dilemma choices are monitored by others. Public acts of altruism and cooperation like charity giving, philanthropy, and bystander intervention are probably manifestations of reputation-based cooperation.

Structural solutions
Structural solutions change the rules of the game either through modifying the social dilemma or removing the dilemma altogether. Field research on conservation behaviour has shown that selective incentives in the form of monetary rewards are effective in decreasing domestic water and electricity use.[citation needed] Furthermore, numerous experimental and case studies show that cooperation is more likely based on a number of factors, including whether or not individuals have the ability to monitor the situation, to punish or "sanction" defectors, if they are legitimized by external political structures to cooperate and self-organize, can communicate with one another and share information, know one another, have effective arenas for conflict resolution, and are managing social and ecological systems that have well-defined boundaries or are easily monitorable.[38][39] Yet implementation of reward and punishment systems can be problematic for various reasons. First, there are significant costs associated with creating and administering sanction systems. Providing selective rewards and punishments requires support institutions to monitor the activities of both cooperators and non-cooperators, which can be quite expensive to maintain. Second, these systems are themselves public goods because one can enjoy the benefits of a sanctioning system without contribution to its existence. The police, army, and judicial system will fail to operate unless people are willing to pay taxes to support them. This raises the question if many people want to contribute to these institutions. Experimental research suggests that particularly low trust individuals are willing to invest money in punishment systems.[40] A considerable portion of people are quite willing to punish non-cooperators even if they personally do not profit. Some researchers even suggest that altruistic punishment is an evolved mechanism for human cooperation. A third limitation is that punishment and reward systems might undermine people's voluntary cooperative intention. Some people get a "warm glow" from cooperation and the provision of selective incentives might crowd out their cooperative intention. Similarly the presence of a negative sanctioning system might undermine voluntary cooperation. Some research has found that punishment systems decrease the trust that people have in others.[41] Other research has found that graduated sanctions, where initial punishments have low severity, make allowances for unusual hardships, and allow the violator to reenter the trust of the collective, have been found to support collective resource management and increase trust in the system.,[42][43]

Boundary structural solutions modify the social dilemma structure and such strategies are often very effective. Experimental studies on commons dilemmas show that overharvesting groups are more willing to appoint a leader to look after the common resource. There is a preference for a democratically elected prototypical leader with limited power especially when people's group ties are strong.[44] When ties are weak, groups prefer a stronger leader with a coercive power base. The question remains whether authorities can be trusted in governing social dilemmas and field research shows that legitimacy and fair procedures are extremely important in citizen's willingness to accept authorities. Other research emphasizes a greater motivation for groups to successfully self-organize, without the need for an external authority base, when they do place a high value on the resources in question but, again, before the resources are severely overharvested. An external "authority" is not presumed to be the solution in these cases, however effective self-organization and collective governance and care for the resource base is.[45]

Another structural solution is reducing group size. Cooperation generally declines when group size increases. In larger groups people often feel less responsible for the common good and believe, rightly or wrongly, that their contribution does not matter. Reducing the scale—for example through dividing a large scale dilemma into smaller more manageable parts—might be an effective tool in raising cooperation. Additional research on governance shows that group size has a curvilinear effect, since at low numbers, governance groups may also not have the person-power to effectively research, manage, and administer the resource system or the governance process.[45]

Another proposed boundary solution is to remove the social from the dilemma, by means of privatization. This restructuring of incentives would remove the temptation to place individual needs above group needs. However, it is not easy to privatize moveable resources such as fish, water, and clean air. Privatization also raises concerns about social justice as not everyone may be able to get an equal share. Privatization might also erode people's intrinsic motivation to cooperate, by externalizing the locus of control.

In society, social units which face a social dilemma within are typically embedded in interaction with other groups, often competition for resources of different kinds. Once this is modeled the social dilemma is strongly attenuated.[46]

There are many additional structural solutions which modify the social dilemma, both from the inside and from the outside. The likelihood of successfully co-managing a shared resource, successfully organizing to self-govern, or successfully cooperating in a social dilemma depends on many variables, from the nature of the resource system, to the nature of the social system the actors are a part of, to the political position of external authorities, to the ability to communicate effectively, to the rules-in-place regarding the management of the commons.[47] However, sub-optimal or failed results in a social dilemma (and perhaps the need for privatization or an external authority) tend to occur "when resource users do not know who all is involved, do not have a foundation of trust and reciprocity, cannot communicate, have no established rules, and lack effective monitoring and sanctioning mechanisms." [48]

Conclusions
Close examination reveals that social dilemmas underlie many of the most pressing global issues, from climate change to conflict escalation. Their widespread importance warrants widespread understanding of the main types of dilemmas and accompanying paradigms. Fortunately, the literature on the subject is expanding to accommodate the pressing need to understand social dilemmas as the basis for real-world problems.

Research in this area is applied to areas such as organizational welfare, public health, local and global environmental change. The emphasis is shifting from pure laboratory research towards research testing combinations of motivational, strategic, and structural solutions. It is encouraging that researchers from various behavioral sciences are developing unifying theoretical frameworks to study social dilemmas (like evolutionary theory; or the Social-Ecological Systems framework developed by Elinor Ostrom and her colleagues). For instance, there is a burgeoning neuroeconomics literature studying brain correlates of decision-making in social dilemmas with neuroscience methods. The interdisciplinary nature of the study of social dilemmas does not fit into the conventional distinctions between fields, and demands a multidisciplinary approach that transcends divisions between economics, political science, and psychology.

See also
Collective action
Coordination game
Decision theory
Elinor Ostrom
Game theory
Identity politics
Moral economy
Nash equilibrium
Non-zero-sum
Prisoner's dilemma
Rationality
Social trap
Strategic games
Superimposed Schedules of Reinforcement
Tragedy of the anticommons
Tragedy of the commons
Voting paradox
Wicked problem
Zero-sum game






Drama theory
Not to be confused with Dramatic theory.
https://en.wikipedia.org/wiki/Drama_theory#Basics_of_drama_theory

Drama theory is one of the problem structuring methods in operations research. It is based on game theory and adapts the use of games to complex organisational situations, accounting for emotional responses that can provoke irrational reactions and lead the players to redefine the game. In a drama, emotions trigger rationalizations that create changes in the game, and so change follows change until either all conflicts are resolved or action becomes necessary. The game as redefined is then played.

Drama theory was devised by professor Nigel Howard in the early 1990s and, since then, has been turned to defense, political, health, industrial relations and commercial applications. Drama theory is an extension of Howard's metagame analysis work developed at the University of Pennsylvania in the late 1960s, and presented formally in his book Paradoxes of Rationality, published by MIT Press. Metagame analysis was originally used to advise on the Strategic Arms Limitation Talks (SALT).


Basics of drama theory
A drama unfolds through episodes in which characters interact. The episode is a period of preplay communication between characters who, after communicating, act as players in a game that is constructed through the dialogue between them. The action that follows the episode is the playing out of this game; it sets up the next episode. Most drama-theoretic terminology is derived from a theatrical model applied to real life interactions; thus, an episode goes through phases of scene-setting, build-up, climax and decision. This is followed by denouement, which is the action that sets up the next episode. The term drama theory and the use of theatrical terminology is justified by the fact that the theory applies to stage plays and fictional plots as well as to politics, war, business, personal and community relations, psychology, history and other kinds of human interaction. It was applied to help with the structuring of The Prisoner's Dilemma, a West End play by David Edgar about the problems of peace-keeping.

In the build-up phase of an episode, the characters exchange ideas and opinions in some form or another and try to advocate their preferred position – the game outcome that they are hoping to see realised. The position each character takes may be influenced by others' positions. Each character also presents a fallback or stated intention. This is the action (i.e., individual strategy) a character says it will implement if current positions and stated intentions do not change. Taken together, the stated intentions form what is called a threatened future if they contradict some character's position; if they do not – i.e., if they implement every position – they form what is called an agreement.

When it is common knowledge among the characters that positions and stated intentions are seen by their presenters as 'final', the build-up ends and the parties reach a moment of truth. Here they usually face dilemmas arising from the fact that their threats or promises are incredible or inadequate. Different dilemmas are possible depending on whether or not there is an agreement. If there is an agreement (i.e., stated intentions implement every position), the possible dilemmas resemble those found in the prisoner's dilemma game; they arise from characters distrusting each other's declared intention to implement the agreement. If there is no agreement, more dilemmas are possible, resembling those in the game of chicken; they arise from the fact that a character's threat or its determination to stick to its position and reject other positions may be incredible to another character.

Drama theory asserts that a character faced with a dilemma feels specific positive or negative emotions that it tries to rationalize by persuading itself and others that the game should be redefined in a way that eliminates the dilemma; for example, a character with an incredible threat makes it credible by becoming angry and finding reasons why it should prefer to carry out the threat; likewise, a character with an incredible promise feels positive emotion toward the other as it looks for reasons why it should prefer to carry its promise. Emotional tension leads to the climax, where characters re-define the moment of truth by finding rationalizations for changing positions, stated intentions, preferences, options or the set of characters. There is some experimental evidence to confirm this assertion of drama theory (see P. Murray-Jones, L. Stubbs and N. Howard, 'Confrontation and Collaboration Analysis: Experimental and Mathematical Results', presented at the 8th International Command & Control Research and Technology Symposium, June, 2003—from whose site it can be downloaded.

Six dilemmas (formerly called paradoxes) are defined, and it is proved that if none of them exist then the characters have an agreement that they fully trust each other to carry out. This is the fundamental theorem of drama theory. Until a resolution meeting these conditions is arrived at, the characters are under emotional pressure to rationalize re-definitions of the game that they will play. Re-definitions inspired by new dilemmas then follow each other until eventually, with or without a resolution, characters become players in the game they have defined for themselves. In game-theoretic terms, this is a game with a focal point – i.e., it is a game in which each player has stated its intention to implement a certain strategy. This strategy is its threat (part of the threatened future) if an agreement has not been reached, and its promise (part of the agreement), if an agreement has been reached. At this point, players (since they are playing a game) decide whether to believe each other, and so to predict what others will do in order to decide what to do themselves.

Dilemmas defined in drama theory
The dilemmas that character A may face with respect to another character B at a moment of truth are as follows.

A's cooperation dilemma: B does not believe A would carry out its actual or putative promise to implement B's position
A's trust dilemma: A does not believe B would carry out its actual or putative promise to implement A's position
A's persuasion (also known as "deterrence") dilemma: B certainly prefers the threatened future to A's position
A's rejection (also known as "inducement") dilemma: A may prefer B's position to the threatened future
A's threat dilemma: B does not believe A would carry out its threat not to implement B's position
A's positioning dilemma: A prefers B's position to its own, but rejects it (usually because A considers B's position to be unrealistic)
Relationship to game theory
Drama-theorists build and analyze models (called card tables or options boards) that are isomorphic to game models, but unlike game theorists and most other model-builders, do not do so with the aim of finding a 'solution'. Instead, the aim is to find the dilemmas facing characters and so help to predict how they will re-define the model itself – i.e., the game that will be played. Such prediction requires not only analysis of the model and its dilemmas, but also exploration of the reality outside the model; without this it is impossible to decide which ways of changing the model in order to eliminate dilemmas might be rationalized by the characters.

The relation between drama theory and game theory is complementary in nature. Game theory does not explain how the game that is played is arrived at – i.e., how players select a small number of players and strategies from the virtually infinite set they could select, and how they arrive at common knowledge about each other's selections and preferences for the resulting combinations of strategies. Drama theory tries to explain this, and also to explain how the focal point is arrived at for the game with a focal point that is finally played. However, drama theory does not explain how players will act when they finally have to play a particular game with a focal point, even though it has to make assumptions about this. This is what game theory tries to explain and predict.

See also
Confrontation analysis
References
N. Howard, 'Confrontation Analysis', CCRP Publications, 1999. Available from the CCRP website.
P. Bennett, J. Bryant and N. Howard, 'Drama Theory and Confrontation Analysis' — can be found (along with other recent PSM methods) in: J. V. Rosenhead and J. Mingers (eds) Rational Analysis for a Problematic World Revisited: problem structuring methods for complexity, uncertainty and conflict, Wiley, 2001.
Further reading
J. Bryant, The Six Dilemmas of Collaboration: inter-organisational relationships as drama, Wiley, 2003.
N. Howard, Paradoxes of Rationality', MIT Press, 1971.
External links
Dilemmas Galore — A user discussion group. Deals with applications of drama theory to current politics, military campaigns, business problems, psychology, etc. Also contains a good introduction and glossary of Drama Theory terms.
Dilemma Explorer - A software application to do Drama Theory.
Confrontation Manager — A software application using an earlier version of Drama Theory.
Categories: Game theoryOperations researchProblem structuring methods




Confrontation analysis
https://en.wikipedia.org/wiki/Confrontation_analysis#Derivation_and_use
Confrontation analysis (also known as dilemma analysis) is an operational analysis technique used to structure, understand and think through multi-party interactions such as negotiations. It is the underpinning mathematical basis of drama theory.

It is derived from game theory but considers that instead of resolving the game, the players often redefine the game when interacting. Emotions triggered from the potential interaction play a large part in this redefinition. So whereas game theory looks on an interaction as a single decision matrix and resolves that, confrontation analysis looks on the interaction as a sequence of linked interactions, where the decision matrix changes under the influence of precisely defined emotional dilemmas.[1]


Derivation and use
Confrontation analysis was devised by Professor Nigel Howard in the early 1990s drawing from his work on game theory and metagame analysis. It has been turned to defence,[2] political, legal, financial[3] and commercial [4] applications.

Much of the theoretical background to General Rupert Smith's book The Utility of Force drew its inspiration from the theory of confrontation analysis.
I am in debt to Professor Nigel Howard, whose explanation of Confrontation Analysis and Game Theory at a seminar in 1998 excited my interest. Our subsequent discussions helped me to order my thoughts and the lessons I had learned into a coherent structure with the result that, for the first time, I was able to understand my experiences within a theoretical model which allowed me to use them further

— General Rupert Smith, The Utility of Force (p.xvi)
Confrontation analysis can also be used in a decision workshop as structure to support role-playing[3] for training, analysis and decision rehearsal.

Method

An interaction as a sequence of confrontations where the card table[5] changes as the parties struggle to eliminate their dilemmas[1]
Confrontation analysis looks on an interaction as a sequence of confrontations. During each confrontation the parties communicate until they have made their positions[6] clear to one another. These positions can be expressed as a card table (also known as an options board[5]) of yes/no decisions. For each decision each party communicates what they would like to happen (their position[6]) and what will happen if they cannot agree (the threatened future). These interactions produce dilemmas[1] and the card table changes as players attempt to eliminate these.


Initial Card Table:[5] The UN threatens to use air strikes, but is not believed by the Bosnian Serbs: The UN has three dilemmas[1] The Bosnians have none
Consider the example on the right (Initial Card Table), taken from the 1995 Bosnian Conflict.[7] This represents an interaction between the Bosnian Serbs and the United Nations forces over the safe areas. The Bosnian Serbs had Bosniak enclaves surrounded and were threatening to attack.

Each side had a position as to what they wanted to happen:

The Bosnian Serbs wanted (see 4th column):

To be able to attack the enclaves
NOT to withdraw their heavy weapons from the enclaves
For the UN NOT to use air strikes
The UN wanted (See 5th column):

The Bosnian Serbs NOT to attack the enclaves
The Bosnian Serbs to withdraw their heavy weapons
The Bosnian Serbs NOT to take hostages.
If no further changes were made then what the sides were saying would happen was (see 1st column):

The Bosnian Serbs said they would attack the enclaves
The Bosnian Serbs said they would NOT withdraw their heavy weapons
The Bosnian Serbs said they would take hostages if the UN uses air strikes
The UN said it would initiate air strikes. However the Bosnian Serbs DID NOT BELIEVE them. (Hence the question mark on the Card Table).
Confrontation analysis then specifies a number of precisely defined dilemmas[1] that occur to the parties following from the structure of the card tables. It states that motivated by the desire to eliminate these dilemmas, the parties involved will CHANGE THE CARD TABLE, to eliminate their problem.

In the situation at the start the Bosnian Serbs have no dilemmas, but the UN has four. It has three persuasion dilemmas[8] in that the Bosnian Serbs are not going to do the three things they want them to (not attack the enclaves, withdraw the heavy weapons and not take hostages). It also has a rejection dilemma[9] in that the Bosnian Serbs do not believe they will actually use the air strikes, as they think the UN will submit to their position, for fear of having hostages taken.

Faced with these dilemmas, the UN modified the card table to eliminate its dilemmas. It took two actions:

Firstly, it withdrew its forces from the positions where they were vulnerable to being taken hostage. This action eliminated the Bosnian Serbs' option (card) of taking hostages.


Second Card Table:[5] The UN eliminated the Bosnian "hostage" card and brought in an additional, credible "Artillery" card, changing the situation in their favour: The Bosnian Serbs now have two persuasion dilemmas[8] and two rejection dilemmas[9]
Secondly, with the addition of the Rapid Reaction Force, and in particular its artillery the UN had an additional capability to engage Bosnian Serb weapons; they added the card "Use artillery against Bosnian Serbs". Because of this, the UN's threat of air strikes became more credible. The situation changed to that of the Second Card Table:

The Bosnian Serbs wanted (see 4th column):

To be able to attack the enclaves
NOT to withdraw heavy weapons from the enclaves
For the UN NOT to use air strikes
For the UN NOT to use artillery
The UN wanted (See 5th column):

The Bosnian Serbs NOT to attack the enclaves
The Bosnian Serbs to withdraw their heavy weapons
If no further changes were made then what the sides were saying would happen was (see 1st column):

The Bosnian Serbs said they would attack the enclaves, but the UN did not believe them.
The Bosnian Serbs said they would NOT withdraw their heavy weapons, but the UN did not believe them.
The UN said it would use artillery. The Bosnian Serbs believed this.
The UN said it would use air strikes. This time, however, the Bosnian Serbs believed them.

Final Card Table:[5] The final situation. The Bosnian Serbs modified their position to eliminate their dilemmas. This involved accepting their initial goals as unobtainable
Faced with this new situation, the Bosnian Serbs modified their position to accept the UN proposal. The final table was an agreement as shown in the Final Card table (see thumbnail and picture).

Confrontation analysis does not necessarily produce a win-win solution (although end states are more likely to remain stable if they do); however, the word confrontation should not necessarily imply that any negotiations should be carried out in an aggressive way.

The card tables are isomorphic to game theory models, but are not built with the aim of finding a solution. Instead, the aim is to find the dilemmas facing characters and so help to predict how they will change the table itself. Such prediction requires not only analysis of the model and its dilemmas, but also exploration of the reality outside the model; without this it is impossible to decide which ways of changing the model in order to eliminate dilemmas might be rationalized by the characters.

Sometimes analysis of the ticks and crosses can be supported by values showing the payoff to each of the parties.[






Metagame analysis
https://en.wikipedia.org/wiki/Metagame_analysis#Origin
Metagame analysis involves framing a problem situation as a strategic game in which participants try to realise their objectives by means of the options available to them. The subsequent meta-analysis of this game gives insight in possible strategies and their outcome.


Origin
Metagame theory was developed by Nigel Howard in the 1960s as a reconstruction of mathematical game theory on a non-quantitative basis, hoping that it would thereby make more practical and intuitive sense (Howard 1971, pp. xi). Metagame analysis reflects on a problem in terms of decision issues, and stakeholders who may exert different options to gain control over these issues. The analysis reveals what likely scenarios exist, and who has the power to control the course of events. The practical application of metagame theory is based on the analysis of options method, first applied to study problems like the strategic arms race and nuclear proliferation.

Method
Metagame analysis proceeds in three phases: analysis of options, scenario development, and scenario analysis.

Analysis of options
The first phase of analysis of options consists of the following four steps:

Structure the problem by identifying the issues to be decided.
Identify the stakeholders who control the issues, either directly or indirectly.
Make an inventory of policy options by means of which the stakeholders control the issues.
Determine the dependencies between the policy options.
The dependencies between options should typically be formulated as "option X can only be implemented if option Y is also implemented", or "options Y and Z are mutually exclusive". The result is a metagame model, which can then be analysed in different ways.

Scenario development
The possible outcomes of the game, based on the combination of options, are called scenarios. In theory, a game with N stakeholders s1, ..., sN who have Oi options (i = 1, ..., N), there are O1×...×ON possible outcomes. As the number of stakeholders and the number of the options they have increase, the number of scenarios will increase steeply due to a combinatorial explosion. Conversely, the dependencies between options will reduce the number of scenarios, because they rule out those containing logically or physically impossible combinations of options.

If the set of feasible scenarios is too large to be analysed in full, some combinations may be eliminated because the analyst judges them to be not worth considering. When doing so, the analyst should take care to preserve these particular types of scenarios (Howard 1989, pp. 243 ff):

The Status Quo, representing the future as it was previously expected.
The present scenario, which may differ from the Status Quo as it incorporates the intentions that are expressed by the stakeholders to change their plans; the Status Quo necessarily remains the same, but the present scenario may change as stakeholders interact and influence each other's plans.
The positions of different stakeholders, being the scenarios they would like others to agree to. Similar to the present scenario, positions may change through interaction.
Compromises between two stakeholders, defined as scenarios that, while not the position of either, are preferred by both to the other's position. A compromise does not necessarily have to involve all stakeholders.
Conflict points, defined as scenarios that stakeholders might move to in trying to force others to accept their positions.
Scenario analysis
The next step in the metagame analysis consists of the actual analysis of the scenarios generated so far. This analysis centres around stability and is broken down in the following four steps (Howard 1989, pp. 248–255):

Choose a particular scenario to analyse for stability. A scenario is stable if "each stakeholder expects to do its part and expects others to do theirs." Note that stable scenarios are accepted by all stakeholders, but that acceptance does not need to be voluntary. There may be more than one stable scenario, the stability of a scenario may change, and unstable scenarios can also happen.
Identify all unilateral improvements for stakeholders and subsets of stakeholders from the particular scenario. These are all the scenarios that are both preferred by all members of a certain subset and 'reachable' by them alone changing their selection of individual options.
Identify all sanctions that exist to deter the unilateral improvements. A sanction against an improvement is a possible reaction to an improvement by the stakeholders who were not involved in the improvement. It is such that the stakeholder who was involved in the improvement finds the sanction not preferred to the particular scenario, making it not worthwhile for that stakeholder to have helped with the improvement. The general "law of stability" to be used in scenario analysis is: for a scenario to be stable, it is necessary for each credible improvement to be deterred by a credible sanction (Howard 1989, pp. 251)
Steps 1 to 3 need to be repeated to analyse some additional scenarios. When a number of scenarios have been analysed, one can proceed to the next step:
Draw a strategic map, laying out all the threats and promises stakeholders can make to try to stabilise the situation at scenarios they prefer. Strategic maps are diagrams in which scenarios are shown by balloons, with arrows from one balloon to another representing unilateral improvements. Dotted arrows from improvement arrows to balloons represent sanctions by which the improvements may be deterred, thus changing the destination of the improvement arrow.
This analysis procedure shows that the credibility of threats and promises (sanctions and improvements) is of importance in metagame analysis. A threat or promise, one that the stakeholder prefers to carry out for its own sake, is inherently credible. Sometimes a stakeholder may want to make credible an 'involuntary' threat or promise, to use this to move the situation in the desired direction. Such threats and promises can be made credible in three basic ways: preference change, irrationality, and deceit (Howard 1989, pp. 257).

Development
Metagame analysis is still used as a technique in its own right. However it has been further developed in distinct ways as the basis of more recent approaches:

the graph model
confrontation analysis
References
Howard, Nigel (1971). Paradoxes of Rationality: Games, Metagames, and Political Behavior. Cambridge, Massachusetts: The MIT Press. ISBN 978-0-262-58237-7.
Howard, Nigel (1989). The manager as politician and general: the metagame approach to analysing cooperation and conflict. In: Rosenhead J (ed) Rational analysis for a problematic world: problem structuring methods for complexity, uncertainty and conflict. Chichester, UK: John Wiley & Sons. ISBN 978-0-471-92286-5.
Veeneman, Wijnand; Igor Mayer (eds.). Games in a world of infrastructures. Simulation-Games for Research, Learning, and Intervention. Delft, The Netherlands: Eburon. ISBN 90-5166-924-0.
Bots, P. W. G.; Hermans, L. M. (2003). "Developing 'playable metagames' for participatory stakeholder analysis" (PDF). Proceedings of the 34th Conference of the International Simulation and Gaming Association (ISAGA). Chiba, Japan. Retrieved 2007-09-22.
Categories: Game theory




Knowledge management
https://en.wikipedia.org/wiki/Knowledge_management#History
Knowledge management (KM) is the process of creating, sharing, using and managing the knowledge and information of an organization.[1] It refers to a multidisciplinary approach to achieve organisational objectives by making the best use of knowledge.[2]

An established discipline since 1991,[3] KM includes courses taught in the fields of business administration, information systems, management, library, and information science.[3][4] Other fields may contribute to KM research, including information and media, computer science, public health and public policy.[5] Several universities offer dedicated master's degrees in knowledge management.

Many large companies, public institutions and non-profit organisations have resources dedicated to internal KM efforts, often as a part of their business strategy, IT, or human resource management departments.[6] Several consulting companies provide advice regarding KM to these organizations.[6]

Knowledge management efforts typically focus on organisational objectives such as improved performance, competitive advantage, innovation, the sharing of lessons learned, integration and continuous improvement of the organisation.[7] These efforts overlap with organisational learning and may be distinguished from that by a greater focus on the management of knowledge as a strategic asset and on encouraging the sharing of knowledge.[2][8] KM is an enabler of organizational learning.[9][10]


Contents
1	History
2	Research
2.1	Dimensions
2.2	Strategies
2.3	Motivations
3	KM technologies
4	Knowledge barriers
5	Knowledge retention
6	See also
7	References
8	External links
History
Knowledge management efforts have a long history, including on-the-job discussions, formal apprenticeship, discussion forums, corporate libraries, professional training, and mentoring programs.[2][10] With increased use of computers in the second half of the 20th century, specific adaptations of technologies such as knowledge bases, expert systems, information repositories, group decision support systems, intranets, and computer-supported cooperative work have been introduced to further enhance such efforts.[2]

In 1999, the term personal knowledge management was introduced; it refers to the management of knowledge at the individual level.[11]

In the enterprise, early collections of case studies recognised the importance of knowledge management dimensions of strategy, process and measurement.[12][13] Key lessons learned include people and the cultural norms which influence their behaviors are the most critical resources for successful knowledge creation, dissemination and application; cognitive, social and organisational learning processes are essential to the success of a knowledge management strategy; and measurement, benchmarking and incentives are essential to accelerate the learning process and to drive cultural change.[13] In short, knowledge management programs can yield impressive benefits to individuals and organisations if they are purposeful, concrete and action-orientated.

Research
KM emerged as a scientific discipline in the early 1990s.[14] It was initially supported by individual practitioners, when Skandia hired Leif Edvinsson of Sweden as the world's first Chief Knowledge Officer (CKO).[15] Hubert Saint-Onge (formerly of CIBC, Canada), started investigating KM long before that.[2] The objective of CKOs is to manage and maximise the intangible assets of their organizations.[2] Gradually, CKOs became interested in practical and theoretical aspects of KM, and the new research field was formed.[16] The KM idea has been taken up by academics, such as Ikujiro Nonaka (Hitotsubashi University), Hirotaka Takeuchi (Hitotsubashi University), Thomas H. Davenport (Babson College) and Baruch Lev (New York University).[3][17]

In 2001, Thomas A. Stewart, former editor at Fortune magazine and subsequently the editor of Harvard Business Review, published a cover story highlighting the importance of intellectual capital in organizations.[18] The KM discipline has been gradually moving towards academic maturity.[2] First, is a trend toward higher cooperation among academics; single-author publications are less common. Second, the role of practitioners has changed.[16] Their contribution to academic research declined from 30% of overall contributions up to 2002, to only 10% by 2009.[19] Third, the number of academic knowledge management journals has been steadily growing, currently reaching 27 outlets.[20]

Multiple KM disciplines exist; approaches vary by author and school.[16][21] As the discipline matured, academic debates increased regarding theory and practice, including:

Techno-centric with a focus on technology, ideally those that enhance knowledge sharing and creation.[22][23]
Organisational with a focus on how an organisation can be designed to facilitate knowledge processes best.[6]
Ecological with a focus on the interaction of people, identity, knowledge, and environmental factors as a complex adaptive system akin to a natural ecosystem.[24][25]
Regardless of the school of thought, core components of KM roughly include people/culture, processes/structure and technology. The details depend on the perspective.[26] KM perspectives include:

community of practice[27]
social network analysis[28]
intellectual capital[29]
information theory[14][15]
complexity science[30]
constructivism[31][32]
The practical relevance of academic research in KM has been questioned[33] with action research suggested as having more relevance[34] and the need to translate the findings presented in academic journals to a practice.[12]

Dimensions
Different frameworks for distinguishing between different 'types of' knowledge exist.[10] One proposed framework for categorising the dimensions of knowledge distinguishes tacit knowledge and explicit knowledge.[30] Tacit knowledge represents internalised knowledge that an individual may not be consciously aware of, such as to accomplish particular tasks. At the opposite end of the spectrum, explicit knowledge represents knowledge that the individual holds consciously in mental focus, in a form that can easily be communicated to others.[16][35]


The Knowledge Spiral as described by Nonaka & Takeuchi.
Ikujiro Nonaka proposed a model (SECI, for Socialisation, Externalisation, Combination, Internalisation) which considers a spiraling interaction between explicit knowledge and tacit knowledge.[36] In this model, knowledge follows a cycle in which implicit knowledge is 'extracted' to become explicit knowledge, and explicit knowledge is 're-internalised' into implicit knowledge.[36]

Hayes and Walsham (2003) describe knowledge and knowledge management as two different perspectives.[37] The content perspective suggests that knowledge is easily stored; because it may be codified, while the relational perspective recognises the contextual and relational aspects of knowledge which can make knowledge difficult to share outside the specific context in which it is developed.[37]

Early research suggested that KM needs to convert internalised tacit knowledge into explicit knowledge to share it, and the same effort must permit individuals to internalise and make personally meaningful any codified knowledge retrieved from the KM effort.[6][38]

Subsequent research suggested that a distinction between tacit knowledge and explicit knowledge represented an oversimplification and that the notion of explicit knowledge is self-contradictory.[11] Specifically, for knowledge to be made explicit, it must be translated into information (i.e., symbols outside our heads).[11][39] More recently, together with Georg von Krogh and Sven Voelpel, Nonaka returned to his earlier work in an attempt to move the debate about knowledge conversion forward.[4][40]

A second proposed framework for categorising knowledge dimensions distinguishes embedded knowledge of a system outside a human individual (e.g., an information system may have knowledge embedded into its design) from embodied knowledge representing a learned capability of a human body's nervous and endocrine systems.[41]

A third proposed framework distinguishes between the exploratory creation of "new knowledge" (i.e., innovation) vs. the transfer or exploitation of "established knowledge" within a group, organisation, or community.[37][42] Collaborative environments such as communities of practice or the use of social computing tools can be used for both knowledge creation and transfer.[42]

Strategies
Knowledge may be accessed at three stages: before, during, or after KM-related activities.[29] Organisations have tried knowledge capture incentives, including making content submission mandatory and incorporating rewards into performance measurement plans.[43] Considerable controversy exists over whether such incentives work and no consensus has emerged.[7]

One strategy to KM involves actively managing knowledge (push strategy).[7][44] In such an instance, individuals strive to explicitly encode their knowledge into a shared knowledge repository, such as a database, as well as retrieving knowledge they need that other individuals have provided (codification).[44] Another strategy involves individuals making knowledge requests of experts associated with a particular subject on an ad hoc basis (pull strategy).[7][44] In such an instance, expert individual(s) provide insights to requestor (personalisation).[30] When talking about strategic knowledge management, the form of the knowledge and activities to share it defines the concept between codification and personalization. [45] The form of the knowledge means that it’s either tacit or explicit. Data and information can be considered as explicit and know-how can be considered as tacit. [46]

Hansen et al. defined the two strategies (codification and personalisation).[47] Codification strategy is document-centered strategy, were knowledge is mainly codified as “people-to-document” method. Codification relies on information infrastructure, where explicit knowledge is carefully codified and stored.[48] Codification focuses on collecting and storing codified knowledge in electronic databases to make it accessible.[49] Codification can therefore refer to both tacit and explicit knowledge.[50] In contrast, personalisation encourages individuals to share their knowledge directly.[49] Information technology plays a less important role, as it only facilitates communication and knowledge sharing.

Other knowledge management strategies and instruments for companies include:[7][24][30]

Knowledge sharing (fostering a culture that encourages the sharing of information, based on the concept that knowledge is not irrevocable and should be shared and updated to remain relevant)
Make knowledge-sharing a key role in employees' job description
Inter-project knowledge transfer
Intra-organisational knowledge sharing
Inter-organisational knowledge sharing
Knowledge retention also known as Knowledge Continuation: activities addressing the challenge of knowledge loss as a result of people leaving[51][52][53]
Mapping knowledge competencies, roles and identifying current or future predicted gaps.
Defining for each chosen role the main knowledge that should be retained, and building rituals in which the knowledge is documented or transferred on, from the day they start their job.
Transfer of knowledge and information prior to employee departure by means of sharing documents, shadowing, mentoring, and more,
Proximity & architecture (the physical situation of employees can be either conducive or obstructive to knowledge sharing)
Storytelling (as a means of transferring tacit knowledge)
Cross-project learning
After-action reviews
Knowledge mapping (a map of knowledge repositories within a company accessible by all)
Communities of practice
Expert directories (to enable knowledge seeker to reach to the experts)
Expert systems (knowledge seeker responds to one or more specific questions to reach knowledge in a repository)
Best practice transfer
Knowledge fairs
Competency-based management (systematic evaluation and planning of knowledge related competences of individual organisation members)
Master–apprentice relationship, Mentor-mentee relationship, job shadowing
Collaborative software technologies (wikis, shared bookmarking, blogs, social software, etc.)
Knowledge repositories (databases, bookmarking engines, etc.)
Measuring and reporting intellectual capital (a way of making explicit knowledge for companies)
Knowledge brokers (some organisational members take on responsibility for a specific "field" and act as first reference on a specific subject)
Knowledge farming (Using note-taking software to cultivate a knowledge graph, part of Knowledge Agriculture)
Motivations
Multiple motivations lead organisations to undertake KM.[35] Typical considerations include:[30]

Making available increased knowledge content in the development and provision of products and services
Achieving shorter development cycles
Facilitating and managing innovation and organisational learning
Leveraging expertises across the organisation
Increasing network connectivity between internal and external individuals
Managing business environments and allowing employees to obtain relevant insights and ideas appropriate to their work
Solving intractable or wicked problems
Managing intellectual capital and assets in the workforce (such as the expertise and know-how possessed by key individuals or stored in repositories)
KM technologies
Knowledge management (KM) technology can be categorised:

Groupware—Software that facilitates collaboration and sharing of organisational information. Such applications provide tools for threaded discussions, document sharing, organisation-wide uniform email, and other collaboration-related features.
Workflow systems—Systems that allow the representation of processes associated with the creation, use and maintenance of organisational knowledge, such as the process to create and utilise forms and documents.
Content management and document management systems—Software systems that automate the process of creating web content and/or documents. Roles such as editors, graphic designers, writers and producers can be explicitly modeled along with the tasks in the process and validation criteria. Commercial vendors started either to support documents or to support web content but as the Internet grew these functions merged and vendors now perform both functions.
Enterprise portals—Software that aggregates information across the entire organisation or for groups such as project teams.
eLearning—Software that enables organisations to create customised training and education. This can include lesson plans, monitoring progress and online classes.
Planning and scheduling software—Software that automates schedule creation and maintenance. The planning aspect can integrate with project management software.[22]
Telepresence—Software that enables individuals to have virtual "face-to-face" meetings without assembling at one location. Videoconferencing is the most obvious example.
Semantic technology such as ontologies—Systems that encode meaning alongside data to give machines the ability to extract and infer information.[54]
These categories overlap. Workflow, for example, is a significant aspect of a content or document management systems, most of which have tools for developing enterprise portals.[7][55]

Proprietary KM technology products such as Lotus Notes defined proprietary formats for email, documents, forms, etc. The Internet drove most vendors to adopt Internet formats. Open-source and freeware tools for the creation of blogs and wikis now enable capabilities that used to require expensive commercial tools.[34][56]

KM is driving the adoption of tools that enable organisations to work at the semantic level,[57] as part of the Semantic Web.[58] Some commentators have argued that after many years the Semantic Web has failed to see widespread adoption,[59][60][61] while other commentators have argued that it has been a success.[62]

Knowledge barriers
Just like knowledge transfer and knowledge sharing, the term "knowledge barriers" is not a uniformly defined term and differs in its meaning depending on the author.[63] Knowledge barriers can be associated with high costs for both companies and individuals.[64][65][66]

Knowledge retention
Knowledge retention is part of knowledge management. Knowledge retention is needed when expert knowledge workers leave the organization after a long career. [67] Retaining knowledge prevents losing intellectual capital. [68]

Knowledge retention projects are usually introduced in three stages: decision making, planning and implementation. There are differences among researchers on the terms of the stages. For example, Dalkir talks about knowledge capture, sharing and acquisition and Doan et al. introduces initiation, implementation and evaluation. [69][70] Furthermore, Levy introduces three steps (scope, transfer, integration) but also recognizes a “zero stage” for initiation of the project.[67]

See also
Archives management
Customer knowledge
Dynamic knowledge repository
Electronic Journal of Knowledge Management
Ignorance management
Information governance
Information management
Journal of Knowledge Management
Journal of Knowledge Management Practice
Knowledge cafe
Knowledge community
Knowledge ecosystem
Knowledge engineering
Knowledge management software
Knowledge modeling
Knowledge transfer
Knowledge translation
Legal case management
Personal knowledge management





Ignorance management
https://en.wikipedia.org/wiki/Ignorance_management
Ignorance management is a knowledge management practice that addresses the concept of ignorance in organizations.[1]


Contents
1	Overview
2	Research
3	See also
4	References
5	Further reading
Overview
Ignorance management has been described by John Israilidis, Russell Lock, and Louise Cooke of Loughborough University as:

"[...] a process of discovering, exploring, realising, recognising and managing ignorance outside and inside the organisation through an appropriate management process to meet current and future demands, design better policy and modify actions in order to achieve organisational objectives and sustain competitive advantage."[2]

The key principle of this theory is that knowledge management (KM) could better be seen as ignorance management, due to the fact that it is impossible for someone to comprehend and understand everything in a complete way. The only real wisdom is in recognising the limits and extent of one's knowledge, and therefore KM is essentially a matter of sharing the extent of one's ignorance with other people, and thus learning together. This process of knowing what is needed to know, and also acknowledging the power of understanding the unknown, could develop a tacit understanding and could improve both short-term opportunistic value capture and longer term business sustainability.[3]

Research
Several attempts have been made to explore the value of managing organisational ignorance in order to prevent failures within knowledge transfer contexts. The need to recognise the role and significance of power in the management of ignorance has been introduced to further enhance such efforts.[4] Also, a growing body of psychology research shows that humans find it intrinsically difficult to get a sense of what we don’t know, and argues that incompetence deprives people of the ability to recognise their own incompetence (the Dunning–Kruger effect).[5] The viewpoint of developing our understanding of organisational ignorance can yield impressive benefits, if successfully incorporated within a company’s KM strategy.[6]

See also
Ignoramus et ignorabimus
I know that I know nothing
There are known knowns
Unknown known




Learning organization
https://en.wikipedia.org/wiki/Learning_organization#Characteristics

In business management, a learning organization is a company that facilitates the learning of its members and continuously transforms itself.[1] The concept was coined through the work and research of Peter Senge and his colleagues.[2]

Learning organizations may develop as a result of the pressures facing modern organizations; this enables them to remain competitive in the business environment.[3]


Characteristics
There are many definitions of a learning organization as well as typologies of kinds of learning organizations.

Peter Senge stated in an interview that a learning organization is a group of people working together collectively to enhance their capacities to create results they really care about.[4] Senge popularized the concept of the learning organization through his book The Fifth Discipline. In the book, he proposed the following five characteristics:[5][6]

Systems thinking
The idea of the learning organization developed from a body of work called systems thinking.[7] This is a conceptual framework that allows people to study businesses as bounded objects.[6] Learning organizations use this method of thinking when assessing their company and have information systems that measure the performance of the organization as a whole and of its various components.[7] Systems thinking states that all the characteristics of a learning organization must be apparent at once in an organization for it to be a learning organization.[6] If some of these characteristics are missing then the organization will fall short of its goal. However, O'Keeffe[3] believes that the characteristics of a learning organization are factors that are gradually acquired, rather than developed simultaneously.

Personal mastery
The commitment by an individual to the process of learning is known as personal mastery.[6] There is a competitive advantage for an organization whose workforce can learn more quickly than the workforce of other organizations.[8] Learning is considered to be more than just acquiring information; it is expanding the ability to be more productive by learning how to apply our skills to work in the most valuable way.[9] Personal mastery appears also in a spiritual way as, for example, clarification of focus, personal vision and ability to see and interpret reality objectively.[10] Individual learning is acquired through staff training, development and continuous self-improvement;[11] however, learning cannot be forced upon an individual who is not receptive to learning.[6] Research shows that most learning in the workplace is incidental, rather than the product of formal training,[3] therefore it is important to develop a culture where personal mastery is practiced in daily life.[6] A learning organization has been described as the sum of individual learning, but there must be mechanisms for individual learning to be transferred into organizational learning.[8] Personal mastery makes possible many positive outcomes such as individual performance, self-efficacy, self-motivation, sense of responsibility, commitment, patience and focus on relevant matters as well as work-life balance and well-being.[12][10][9]

Mental models
Assumptions and generalizations held by individuals and organizations are called mental models.[6] Personal mental models describe what people can or cannot detect.[13] Due to selective observation, mental models might limit peoples’ observations. To become a learning organization, these models must be identified and challenged. Individuals tend to espouse theories, which are what they intend to follow, and theories-in-use, which are what they actually do.[6][7] Similarly, organizations tend to have 'memories' which preserve certain behaviours, norms and values.[14] In creating a learning environment it is important to replace confrontational attitudes with an open culture[11] that promotes inquiry and trust.[3] To achieve this, the learning organization needs mechanisms for locating and assessing organizational theories of action.[7] Unwanted values need to be discarded in a process called 'unlearning'.[14] Wang and Ahmed[8] refer to this as 'triple loop learning'. For organizations, problems arise when mental models evolve beneath the level of awareness. Thus it is important to examine business issues and actively question current business practices and new skills before they become integrated into new practices.[15]

Shared vision
The development of a shared vision is important in motivating the staff to learn, as it creates a common identity that provides focus and energy for learning.[6] The most successful visions build on the individual visions of the employees at all levels of the organization,[11] thus the creation of a shared vision can be hindered by traditional structures where the company vision is imposed from above.[3] Therefore, learning organizations tend to have flat, decentralized organizational structures.[7] The shared vision is often to succeed against a competitor;[8] however, Senge states that these are transitory goals and suggests that there should also be long-term goals that are intrinsic within the company.[6] On the other hand, the lack of clearly defined goals can negatively affect the organisation, as it cannot attain its members trust.[16] Applying the practices of a shared vision creates a suitable environment for the development of trust through communication and collaboration within the organization. As a result, the built shared vision encourages the members to share their own experiences and opinions, thus enhancing effects of organizational learning.[9]

Team learning
The accumulation of individual learning constitutes team learning.[3] The benefit of team or shared learning is that staff learn more quickly[3] and the problem solving capacity of the organization is improved through better access to knowledge and expertise.[11] Learning organizations have structures that facilitate team learning with features such as boundary crossing and openness.[7] In team meetings members can learn better from each other by concentrating on listening, avoiding interruption, being interested and responding.[17] In such a learning environment, people don't have to hide or overlook their disagreements, so they make their collective understanding richer.[6] Three dimensions of team learning, according to Senge, are: "the ability to think insightfully about complex issues", "the ability to take innovative, coordinated action", and "the ability to create a network that will allow other teams to take action as well".[18] In a learning organization, teams learn how to think together.[6] Team learning is process of adapting and developing the team capacity to create the results that its members really want.[6] Team learning requires individuals to engage in dialogue and discussion;[3] therefore team members must develop open communication, shared meaning, and shared understanding.[3] Learning organizations typically have excellent knowledge management structures, allowing creation, acquisition, dissemination, and implementation of this knowledge in the organization.[8] Teams use tools such as an action learning cycle and dialogue.[17] Team learning is only one element of the learning cycle. For the cycle to be complete, it has to include all five characteristics which are mentioned above.

Development
Organizations do not organically develop into learning organizations; there are factors prompting their change. As organizations grow, they lose their capacity to learn as company structures and individual thinking becomes rigid.[1] When problems arise, the proposed solutions often turn out to be only short-term (single-loop learning instead of double-loop learning) and re-emerge in the future.[6] To remain competitive, many organizations have restructured, with fewer people in the company.[1] This means those who remain need to work more effectively.[3] To create a competitive advantage, companies need to learn faster than their competitors and to develop a customer responsive culture.[3][19] Chris Argyris identified that organizations need to maintain knowledge about new products and processes, understand what is happening in the outside environment and produce creative solutions using the knowledge and skills of all within the organization.[7] This requires co-operation between individuals and groups, free and reliable communication, and a culture of trust.[7]

For any learning to take place, also in organizations, there needs to be diffusion of knowledge. Diffusion is not always easy to perform, since it depends on the recipient’s willingness to accept the new knowledge, their need of the new information and the relationship of their existing knowledge to the new information. The most useful knowledge is rarely something that is formed in one’s head and then diffused to others. Useful knowledge generally consists of different pieces of information which are then combined. For the gathering of information, organizations need some sort of a content repository for all the information. These repositories are nowadays usually built with the aid of information technology. With a repository of information and a knowledge infrastructure, that simplifies the creation of knowledge in a practical form, an organization will have all its knowledge available for everyone in the organization, which will further help the learning in the organization.[20]

Benefits
One of the main benefits being a learning organization offers is a competitive advantage. This competitive advantage can be founded on different strategies, which can be acquired by organizational learning. One way of gaining a competitive advantage is strategic flexibility. The continuous inflow of new experience and knowledge keeps the organization dynamic and prepared for change. In an ever-changing institutional environment this can be a key factor for an advantage.[21] Better management of an organizations explorative investments and exploitative acting can be a benefit of a learning organization, too. Next, a competitive advantage of a company can be gained by lower prices and better quality of products. Through organizational learning both cost leadership and differentiation strategies are possible. The ability to reconfigure actions based on needs and environment avoids the tradeoff between the two.[21] Overall the customer performance of learning organizations might be better, which is the direct and measurable channel, that establishes a competitive advantage.[21] Another important aspect is innovation. Innovation and learning are closely related. While encouraging people to learn and develop, a more innovative environment is commonly generated, innovative ideas coming from e.g. communities of practice can result in greater overall organizational learning.[22]

Other benefits of a learning organization are:

Maintaining levels of innovation and remaining competitive[11]
Having the knowledge to better link resources to customer needs[1]
Improving quality of outputs at all levels[1]
Improving corporate image by becoming more people oriented[1]
Increasing the pace of change within the organization[1]
Strengthening sense of community in the organization[1]
Improving long term decision making[6]
Improving knowledge sharing[6]
Barriers
Even within or without learning organization, problems can stall the process of learning or cause it to regress. Most of them arise from an organization not fully embracing all the necessary facets. Once these problems can be identified, work can begin on improving them.

Some organizations find it hard to embrace personal mastery because as a concept it is intangible and the benefits cannot be quantified;[6] personal mastery can even be seen as a threat to the organization. This threat can be real, as Senge points out, that 'to empower people in an unaligned organization can be counterproductive'.[6] In other words, if individuals do not engage with a shared vision, personal mastery could be used to advance their own personal visions. In some organizations a lack of a learning culture can be a barrier to learning. An environment must be created where individuals can share learning without it being devalued and ignored, so more people can benefit from their knowledge and the individuals becomes empowered.[3] A learning organization needs to fully accept the removal of traditional hierarchical structures.[3]

Resistance to learning can occur within a learning organization if there is not sufficient buy-in at an individual level. This is often encountered with people who feel threatened by change or believe that they have the most to lose.[3] They are likely to have closed mind sets, and are not willing to engage with mental models.[3] Unless implemented coherently across the organization, learning can be viewed as elitist and restricted to senior levels. In that case, learning will not be viewed as a shared vision.[11] If training and development is compulsory, it can be viewed as a form of control, rather than as personal development.[11] Learning and the pursuit of personal mastery needs to be an individual choice, therefore enforced take-up will not work.[6]

In addition, organizational size may become the barrier to internal knowledge sharing. When the number of employees exceeds 150, internal knowledge sharing dramatically decreases because of higher complexity in the formal organizational structure, weaker inter-employee relationships, lower trust, reduced connective efficacy, and less effective communication. As such, as the size of an organizational unit increases, the effectiveness of internal knowledge flows dramatically diminishes and the degree of intra-organizational knowledge sharing decreases.[23]

Problems with Senge's vision include a failure to fully appreciate and incorporate the imperatives that animate modern organizations; the relative sophistication of the thinking he requires of managers (and whether many in practice are up to it); and questions regarding his treatment of organizational politics. It is certainly difficult to find real-life examples of learning organizations (Kerka 1995). There has also been a lack of critical analysis of the theoretical framework.

Based on their study of attempts to reform the Swiss Postal Service, Matthias Finger and Silvia Bűrgin Brand (1999) provide a useful listing of more important shortcomings of the learning organization concept.[citation needed] They conclude that it is not possible to transform a bureaucratic organization by learning initiatives alone. They believe that by referring to the notion of the learning organization it was possible to make change less threatening and more acceptable to participants. 'However, individual and collective learning, which has undoubtedly taken place, has not really been connected to organizational change and transformation'. Part of the issue, they suggest, has to do with the concept of the learning organization itself. They argue that the concept of the learning organization:

Focuses mainly on the cultural dimension and does not adequately take into account the other dimensions of an organization. To transform an organization, it is necessary to attend to structures and the organization of work as well as the culture and processes. 'Focussing exclusively on training activities in order to foster learning... favours this purely cultural bias'.
Favours individual and collective learning processes at all levels of the organization, but does not connect them properly to the organization's strategic objectives. Popular models of organizational learning (such as Dixon 1994) assume such a link. It is, therefore, imperative 'that the link between individual and collective learning and the organization's strategic objectives is made'. This shortcoming, Finger and Brand argue, makes a case for some form of measurement of organizational learning – so that it is possible to assess the extent to which such learning contributes or not towards strategic objectives.
Challenges in the transformation to a learning organization
The book The Dance of Change[24] states there are many reasons why an organization may have trouble in transforming itself into a learning organization. The first is that an organization does not have enough time.[24]:66 Employees and management may have other issues that take priority over trying to change the culture of their organization. The team may not be able to commit the time if an institution does not have the appropriate help or training. For an organization to be able to change, it needs to know the steps necessary to solve the problems it faces. As a solution, a mentor or coach who is well versed in the learning organization concept may be necessary.

Also, the change may not be relevant to the organization's needs. Time should be spent on the actual issues of the organization and its daily issues. To combat this challenge, a strategy must be built. The organization should determine what its problems are before entering into the transformation. Training should remain linked to business results so that it is easier for employees to connect the training with everyday issues.

A usual challenge with many organizations is the lack of concentration on personal development while focusing mainly on professional development which is more likely to have a direct contribution to organization's performance whereas personal development's positive results appear more in the long run and less visibly.[12]

As for the leader, it may be challenging not to consider one's own personal vision as the organization's shared vision.[9]

Problems organizational learning addresses
Some of the issues that learning organizations were designed to address within institutions is fragmentation, competition and reactiveness.[25] Fragmentation is described as breaking a problem into pieces. For example, each organization has an accounting department, finance, operations, IT and marketing. Competition occurs when employees are trying to do better or 'beat' others in an assignment instead of collaborating. Reactiveness occurs when an organization changes only in reaction to outside forces, rather than proactively initiating change.

Inappropriate habits while organizing team meetings can effect negatively. Meetings should be prepared in time, agenda drawn up and enough time dedicated to focus on the subjects. Because best results in team learning form through discipline, it is essential to have an agenda, make atmosphere open and respect others: avoid interruption, be interested and respond.[17]

See also
Community of practice
Knowledge capture
Knowledge management
Knowledge organization
Lean startup
Learning agenda
Organizational learning
Professional learning community
Reflective practice



Systems theory
https://en.wikipedia.org/wiki/Systems_theory
Systems theory is the interdisciplinary study of systems, which are cohesive groups of interrelated, interdependent parts that can be natural or human-made. Every system is bounded by space and time, influenced by its environment, defined by its structure and purpose, and expressed through its functioning. A system may be more than the sum of its parts if it expresses synergy or emergent behavior.

Changing one part of a system may affect other parts or the whole system. It may be possible to predict these changes in patterns of behavior. For systems that learn and adapt, the growth and the degree of adaptation depend upon how well the system is engaged with its environment. Some systems support other systems, maintaining the other system to prevent failure. The goals of systems theory are to model a system's dynamics, constraints, conditions, and to elucidate principles (such as purpose, measure, methods, tools) that can be discerned and applied to other systems at every level of nesting, and in a wide range of fields for achieving optimized equifinality.[1]

General systems theory is about developing broadly applicable concepts and principles, as opposed to concepts and principles specific to one domain of knowledge. It distinguishes dynamic or active systems from static or passive systems. Active systems are activity structures or components that interact in behaviours and processes. Passive systems are structures and components that are being processed. For example, a program is passive when it is a disc file and active when it runs in memory.[2] The field is related to systems thinking, machine logic, and systems engineering.

Key concepts
Main article: Glossary of systems theory
System: a group of interacting, interdependent parts that form a complex whole.[3]
Boundaries: barriers that define a system and distinguish it from other systems in an environment.
Homeostasis: the tendency of a system to be resilient with respect to external disruption and to maintain its key characteristics.
Adaptation: the tendency of a system to make the internal changes to protect itself and keep fulfilling its purpose.
Reciprocal transactions: circular or cyclical interactions that systems engage in such that they influence one another.
Feedback loop: the process by which systems self-correct based on reactions from other systems in the environment.
Throughput: the rate of energy transfer between a system and its environment over time.
Microsystem: the system closest to the client.
Mesosystem: relationships among systems in an environment.
Exosystem: a relationship between two systems that has an indirect effect on a third system.
Macrosystem: a larger system that influences clients, such as policies, administration of entitlement programs, and culture.
Equifinality: the way systems can reach the same goal through different paths.[3]
Open and closed systems[3]
Chronosystem: a system composed of significant life events affecting adaptation.
Isomorphism: structural, behavioral, and developmental features that are shared across systems.[3]
Systems architecture:
Systems analysis:
Systems thinking
Systems thinking is the ability or skill to perform problem solving in complex systems. In application it has been defined as both a skill and an awareness.[4] A system is an entity with interrelated and interdependent parts; it is defined by its boundaries and is more than the sum of its parts (subsystem). Changing one part of the system affects other parts and the whole system, with predictable patterns of behavior. Furthermore, the individuals working as part of a system are components as well, therefore contributing to its outcome.[5] [4]

Overview

This article is written like a personal reflection, personal essay, or argumentative essay that states a Wikipedia editor's personal feelings or presents an original argument about a topic. Please help improve it by rewriting it in an encyclopedic style. (November 2020) (Learn how and when to remove this template message)
Systems theory is manifest in the work of practitioners in many disciplines, for example the works of biologist Ludwig von Bertalanffy, linguist Béla H. Bánáthy, and sociologist Talcott Parsons; in the study of ecological systems by Howard T. Odum, Eugene Odum; in Fritjof Capra's study of organizational theory; in the study of management by Peter Senge; in interdisciplinary areas such as Human Resource Development in the works of Richard A. Swanson; and in the works of educators Debora Hammond and Alfonso Montuori.

As a transdisciplinary, interdisciplinary, and multiperspectival endeavor, systems theory brings together principles and concepts from ontology, the philosophy of science, physics, computer science, biology, and engineering, as well as geography, sociology, political science, psychotherapy (especially family systems therapy), and economics.

Systems theory promotes dialogue between autonomous areas of study as well as within systems science itself. In this respect, with the possibility of misinterpretations, von Bertalanffy[6] believed a general theory of systems "should be an important regulative device in science," to guard against superficial analogies that "are useless in science and harmful in their practical consequences."

Others remain closer to the direct systems concepts developed by the original systems theorists. For example, Ilya Prigogine, of the Center for Complex Quantum Systems at the University of Texas, has studied emergent properties, suggesting that they offer analogues for living systems. The distinction of autopoiesis as made by Humberto Maturana and Francisco Varela represent further developments in this field. Important names in contemporary systems science include Russell Ackoff, Ruzena Bajcsy, Béla H. Bánáthy, Gregory Bateson, Anthony Stafford Beer, Peter Checkland, Barbara Grosz, Brian Wilson, Robert L. Flood, Allenna Leonard, Radhika Nagpal, Fritjof Capra, Warren McCulloch, Kathleen Carley, Michael C. Jackson, Katia Sycara, and Edgar Morin among others.

With the modern foundations for a general theory of systems following World War I, Ervin László, in the preface for Bertalanffy's book, Perspectives on General System Theory, points out that the translation of "general system theory" from German into English has "wrought a certain amount of havoc":[7]

It (General System Theory) was criticized as pseudoscience and said to be nothing more than an admonishment to attend to things in a holistic way. Such criticisms would have lost their point had it been recognized that von Bertalanffy's general system theory is a perspective or paradigm, and that such basic conceptual frameworks play a key role in the development of exact scientific theory. .. Allgemeine Systemtheorie is not directly consistent with an interpretation often put on 'general system theory,' to wit, that it is a (scientific) "theory of general systems." To criticize it as such is to shoot at straw men. Von Bertalanffy opened up something much broader and of much greater significance than a single theory (which, as we now know, can always be falsified and has usually an ephemeral existence): he created a new paradigm for the development of theories.

Theorie (or Lehre) "has a much broader meaning in German than the closest English words 'theory' and 'science'," just as Wissenschaft (or 'Science').[8] These ideas refer to an organized body of knowledge and "any systematically presented set of concepts, whether empirically, axiomatically, or philosophically" represented, while many associate Lehre with theory and science in the etymology of general systems, though it also does not translate from the German very well; its "closest equivalent" translates to 'teaching', but "sounds dogmatic and off the mark."[8] While the idea of a "general systems theory" might have lost many of its root meanings in the translation, by defining a new way of thinking about science and scientific paradigms, systems theory became a widespread term used for instance to describe the interdependence of relationships created in organizations.

A system in this frame of reference can contain regularly interacting or interrelating groups of activities. For example, in noting the influence in the evolution of "an individually oriented industrial psychology [into] a systems and developmentally oriented organizational psychology," some theorists recognize that organizations have complex social systems; separating the parts from the whole reduces the overall effectiveness of organizations.[9][full citation needed] This difference, from conventional models that center on individuals, structures, departments and units, separates in part from the whole, instead of recognizing the interdependence between groups of individuals, structures and processes that enable an organization to function.

László explains that the new systems view of organized complexity went "one step beyond the Newtonian view of organized simplicity" which reduced the parts from the whole, or understood the whole without relation to the parts. The relationship between organisations and their environments can be seen as the foremost source of complexity and interdependence. In most cases, the whole has properties that cannot be known from analysis of the constituent elements in isolation.[10][full citation needed]

Béla H. Bánáthy, who argued—along with the founders of the systems society—that "the benefit of humankind" is the purpose of science, has made significant and far-reaching contributions to the area of systems theory. For the Primer Group at the International Society for the System Sciences, Bánáthy defines a perspective that iterates this view:[11][full citation needed]

The systems view is a world-view that is based on the discipline of SYSTEM INQUIRY. Central to systems inquiry is the concept of SYSTEM. In the most general sense, system means a configuration of parts connected and joined together by a web of relationships. The Primer Group defines system as a family of relationships among the members acting as a whole. Von Bertalanffy defined system as "elements in standing relationship."

Examples of applications

Ecology
Main article: Systems ecology
Systems ecology is an interdisciplinary field of ecology that takes a holistic approach to the study of ecological systems, especially ecosystems;[13][14][15] it can be seen as an application of general systems theory to ecology.

Central to the systems ecology approach is the idea that an ecosystem is a complex system exhibiting emergent properties. Systems ecology focuses on interactions and transactions within and between biological and ecological systems, and is especially concerned with the way the functioning of ecosystems can be influenced by human interventions. It uses and extends concepts from thermodynamics and develops other macroscopic descriptions of complex systems.

User-centered design process
Systems thinking is a crucial part of user-centered design processes and is necessary to understand the whole impact of a new human computer interaction (HCI) Information System.[21] Overlooking this and developing software without insights input from the future users (mediated by user experience designers) is a serious design flaw that can lead to complete failure of information systems, increased stress and mental illness for users of information systems leading to increased costs and a huge waste of resources.[22] It is currently surprisingly uncommon for organizations and governments to investigate the project management decisions leading to serious design flaws and lack of usability.[citation needed]

The Institute of Electrical and Electronics Engineers estimates that roughly 15% of the estimated $1 trillion used to develop information systems every year is completely wasted and the produced systems are discarded before implementation by entirely preventable mistakes.[23] According to the CHAOS report published in 2018 by the Standish Group, a vast majority of information systems fail or partly fail according to their survey:

Pure success is the combination of high customer satisfaction with high return on value to the organization. Related figures for the year 2017 are: successful: 14%, challenged: 67%, failed 19%.[24]

In social sciences and humanities
Systems theory in anthropology
Systems theory in archaeology
Systems theory in political science
Psychology
Main article: Systems psychology
Systems psychology is a branch of psychology that studies human behaviour and experience in complex systems.

It received inspiration from systems theory and systems thinking, as well as the basics of theoretical work from Roger Barker, Gregory Bateson, Humberto Maturana and others. It makes an approach in psychology in which groups and individuals receive consideration as systems in homeostasis. Systems psychology "includes the domain of engineering psychology, but in addition seems more concerned with societal systems[26] and with the study of motivational, affective, cognitive and group behavior that holds the name engineering psychology."[27]

In systems psychology, characteristics of organizational behaviour (such as individual needs, rewards, expectations, and attributes of the people interacting with the systems) "considers this process in order to create an effective system."[28]


History
Timeline
Predecessors
Saint-Simon (1760–1825), Karl Marx (1817–83), Friedrich Engels (1820–95), Herbert Spencer (1820–1903), Rudolf Clausius (1822–88), Vilfredo Pareto (1848–1923), Émile Durkheim (1858–1917), Alexander Bogdanov (1873–1928), Nicolai Hartmann (1882–1950), Robert Maynard Hutchins (1929–51), among others
Founders
1946–53: Macy conferences
1948: Norbert Wiener publishes Cybernetics: Or Control and Communication in the Animal and the Machine
1951: Talcott Parsons publishes The Social System[29]
1954: The Society for the Advancement of General Systems Theory is established by Ludwig von Bertalanffy, Anatol Rapoport, Ralph W. Gerard, Kenneth Boulding.
1955: W. Ross Ashby publishes Introduction to Cybernetics
1968: Bertalanffy publishes General System Theory: Foundations, Development, Applications
Other contributors
1970–80s Second-order cybernetics (Heinz von Foerster, Gregory Bateson, Humberto Maturana, and others)
1971–73 Cybersyn, rudimentary internet and cybernetic system for democratic economic planning developed by Stafford Beer in Chile under the Allende government
1970s: Catastrophe theory (René Thom, E.C. Zeeman) Dynamical systems in mathematics.
1977: Ilya Prigogine received the Nobel Prize for his works on self-organization, conciliating important systems theory concepts with system thermodynamics.
1980s: Chaos theory (David Ruelle, Edward Lorenz, Mitchell Feigenbaum, Steve Smale, James A. Yorke)
1986: Context theory (Anthony Wilden)
1988: International Society for Systems Science is established.
1990: Complex adaptive systems (John H. Holland, Murray Gell-Mann, W. Brian Arthur)
Precursors
Systems thinking can date back to antiquity, whether considering the first systems of written communication with Sumerian cuneiform to Mayan numerals, or the feats of engineering with the Egyptian pyramids. Differentiated from Western rationalist traditions of philosophy, C. West Churchman often identified with the I Ching as a systems approach sharing a frame of reference similar to pre-Socratic philosophy and Heraclitus.[30] Ludwig von Bertalanffy traced systems concepts to the philosophy of G.W. Leibniz and Nicholas of Cusa's coincidentia oppositorum. While modern systems can seem considerably more complicated, they may embed themselves in history.

Figures like James Joule and Sadi Carnot represent an important step to introduce the systems approach into the (rationalist) hard sciences of the 19th century, also known as the energy transformation. Then, the thermodynamics of this century, by Rudolf Clausius, Josiah Gibbs and others, established the system reference model as a formal scientific object.

Similar ideas are found in learning theories that developed from the same fundamental concepts, emphasising how understanding results from knowing concepts both in part and as a whole. In fact, Bertalanffy's organismic psychology paralleled the learning theory of Jean Piaget.[31] Some consider interdisciplinary perspectives critical in breaking away from industrial age models and thinking, wherein history represents history and math represents math, while the arts and sciences specialization remain separate and many treat teaching as behaviorist conditioning.[32]

The contemporary work of Peter Senge provides detailed discussion of the commonplace critique of educational systems grounded in conventional assumptions about learning,[33] including the problems with fragmented knowledge and lack of holistic learning from the "machine-age thinking" that became a "model of school separated from daily life." In this way, some systems theorists attempt to provide alternatives to, and evolved ideation from orthodox theories which have grounds in classical assumptions, including individuals such as Max Weber and Émile Durkheim in sociology and Frederick Winslow Taylor in scientific management.[34] The theorists sought holistic methods by developing systems concepts that could integrate with different areas.

Some may view the contradiction of reductionism in conventional theory (which has as its subject a single part) as simply an example of changing assumptions. The emphasis with systems theory shifts from parts to the organization of parts, recognizing interactions of the parts as not static and constant but dynamic processes. Some questioned the conventional closed systems with the development of open systems perspectives. The shift originated from absolute and universal authoritative principles and knowledge to relative and general conceptual and perceptual knowledge[35] and still remains in the tradition of theorists that sought to provide means to organize human life. In other words, theorists rethought the preceding history of ideas; they did not lose them. Mechanistic thinking was particularly critiqued, especially the industrial-age mechanistic metaphor for the mind from interpretations of Newtonian mechanics by Enlightenment philosophers and later psychologists that laid the foundations of modern organizational theory and management by the late 19th century.[36]

Founding and early development
Where assumptions in Western science from Plato and Aristotle to Isaac Newton's Principia (1687) have historically influenced all areas from the hard to social sciences (see, David Easton's seminal development of the "political system" as an analytical construct), the original systems theorists explored the implications of 20th-century advances in terms of systems.

Between 1929 to 1951, Robert Maynard Hutchins at the University of Chicago had undertaken efforts to encourage innovation and interdisciplinary research in the social sciences, aided by the Ford Foundation with the University's interdisciplinary Division of the Social Sciences established in 1931.[37]

Many early systems theorists aimed at finding a general systems theory that could explain all systems in all fields of science.

"General systems theory" (GST; German: allgemeine Systemlehre) was coined in the 1940s by Ludwig von Bertalanffy, who initially sought to find a new approach to the study of living systems.[3] Bertalanffy first developed the theory via lectures beginning in 1937 and then via publications beginning in 1946.[38] According to Mike C. Jackson (2000), Bertalanffy promoted an embryonic form of GST as early as the 1920s and 1930s, but it was not until the early 1950s that it became more widely known in scientific circles.[39]

Jackson also claimed that Bertalanffy's work was informed by Alexander Bogdanov's three-volume Tectology (1912-1917), providing the conceptual base for GST.[39] A similar position is held by Richard Mattessich (1978) and Capra (1996).[who?] Despite this, Bertalanffy never even mentioned Bogdanov in his works.

The systems view was based on several fundamental ideas. First, all phenomena can be viewed as a web of relationships among elements, or a system. Second, all systems, whether electrical, biological, or social, have common patterns, behaviors, and properties that the observer can analyze and use to develop greater insight into the behavior of complex phenomena and to move closer toward a unity of the sciences. System philosophy, methodology and application are complementary to this science.[8]

Cognizant of advances in science that questioned classical assumptions in the organizational sciences, Bertalanffy's idea to develop a theory of systems began as early as the interwar period, publishing "An Outline for General Systems Theory" in the British Journal for the Philosophy of Science by 1950.[40]

In 1954, von Bertalanffy, along with Anatol Rapoport, Ralph W. Gerard, and Kenneth Boulding, came together at the Center for Advanced Study in the Behavioral Sciences in Palo Alto to discuss the creation of a "society for the advancement of General Systems Theory." In December that year, a meeting of around 70 people was held in Berkeley to form a society for the exploration and development of GST.[41] The Society for General Systems Research (renamed the International Society for Systems Science in 1988) was established in 1956 thereafter as an affiliate of the American Association for the Advancement of Science (AAAS),[41] specifically catalyzing systems theory as an area of study. The field developed from the work of Bertalanffy, Rapoport, Gerard, and Boulding, as well as other theorists in the 1950s like William Ross Ashby, Margaret Mead, Gregory Bateson, and C. West Churchman, among others.

Bertalanffy's ideas were adopted by others, working in mathematics, psychology, biology, game theory, and social network analysis. Subjects that were studied included those of complexity, self-organization, connectionism and adaptive systems. In fields like cybernetics, researchers such as Ashby, Norbert Wiener, John von Neumann, and Heinz von Foerster examined complex systems mathematically; Von Neumann discovered cellular automata and self-reproducing systems, again with only pencil and paper. Aleksandr Lyapunov and Jules Henri Poincaré worked on the foundations of chaos theory without any computer at all. At the same time, Howard T. Odum, known as a radiation ecologist, recognized that the study of general systems required a language that could depict energetics, thermodynamics and kinetics at any system scale. To fulfill this role, Odum developed a general system, or universal language, based on the circuit language of electronics, known as the Energy Systems Language.

The Cold War affected the research project for systems theory in ways that sorely disappointed many of the seminal theorists. Some began to recognize that theories defined in association with systems theory had deviated from the initial general systems theory view.[42] Economist Kenneth Boulding, an early researcher in systems theory, had concerns over the manipulation of systems concepts. Boulding concluded from the effects of the Cold War that abuses of power always prove consequential and that systems theory might address such issues.[43] Since the end of the Cold War, a renewed interest in systems theory emerged, combined with efforts to strengthen an ethical[44] view on the subject.

In sociology, systems thinking also began in the 20th century, including Talcott Parsons' action theory[45] and Niklas Luhmann's social systems theory.[46][47] According to Rudolf Stichweh (2011):[45]:2

Since its beginnings the social sciences were an important part of the establishment of systems theory... [T]he two most influential suggestions were the comprehensive sociological versions of systems theory which were proposed by Talcott Parsons since the 1950s and by Niklas Luhmann since the 1970s.

Elements of systems thinking can also be seen in the work of James Clerk Maxwell, particularly control theory.

General systems research and systems inquiry
Many early systems theorists aimed at finding a general systems theory that could explain all systems in all fields of science. Ludwig von Bertalanffy began developing his 'general systems theory' via lectures in 1937 and then via publications from 1946.[38] The concept was given extensive focus in his 1968 book, General System Theory: Foundations, Development, Applications.[31]

Bertalanffy's objective was to bring together under one heading the organismic science that he had observed in his work as a biologist. His desire was to use the word system for those principles that are common to systems in general. In General System Theory (1968), he wrote:[31]:32

[T]here exist models, principles, and laws that apply to generalized systems or their subclasses, irrespective of their particular kind, the nature of their component elements, and the relationships or "forces" between them. It seems legitimate to ask for a theory, not of systems of a more or less special kind, but of universal principles applying to systems in general.

In the preface to von Bertalanffy's Perspectives on General System Theory, Ervin László stated:[7]

Thus when von Bertalanffy spoke of Allgemeine Systemtheorie it was consistent with his view that he was proposing a new perspective, a new way of doing science. It was not directly consistent with an interpretation often put on "general system theory", to wit, that it is a (scientific) "theory of general systems." To criticize it as such is to shoot at straw men. Von Bertalanffy opened up something much broader and of much greater significance than a single theory (which, as we now know, can always be falsified and has usually an ephemeral existence): he created a new paradigm for the development of theories.

Bertalanffy outlines systems inquiry into three major domains: Philosophy, Science, and Technology. In his work with the Primer Group, Béla H. Bánáthy generalized the domains into four integratable domains of systemic inquiry.

Philosophy: the ontology, epistemology, and axiology of systems
Theory: a set of interrelated concepts and principles applying to all systems/
Methodology: the set of models, strategies, methods and tools that instrumentalize systems theory and philosophy
Application: the application and interaction of the domains
These operate in a recursive relationship, he explained; integrating 'philosophy' and 'theory' as knowledge, and 'method' and 'application' as action, systems inquiry is thus knowledgeable action.[48]

System types and fields
Theoretical fields
Main article: List of types of systems theory
Chaos theory
Complex system
Control theory
Dynamical systems theory
Earth system science
Ecological systems theory
Living systems theory[49]
Sociotechnical system
Systemics
Urban metabolism
World-systems theory
Cybernetics
Main article: Cybernetics
Cybernetics is the study of the communication and control of regulatory feedback both in living and lifeless systems (organisms, organizations, machines), and in combinations of those. Its focus is how anything (digital, mechanical or biological) controls its behavior, processes information, reacts to information, and changes or can be changed to better accomplish those three primary tasks.

The terms systems theory and cybernetics have been widely used as synonyms. Some authors use the term cybernetic systems to denote a proper subset of the class of general systems, namely those systems that include feedback loops. However, Gordon Pask's differences of eternal interacting actor loops (that produce finite products) makes general systems a proper subset of cybernetics. In cybernetics, complex systems have been examined mathematically by such researchers as W. Ross Ashby, Norbert Wiener, John von Neumann, and Heinz von Foerster.

Threads of cybernetics began in the late 1800s that led toward the publishing of seminal works (such as Wiener's Cybernetics in 1948 and Bertalanffy's General Systems Theory in 1968). Cybernetics arose more from engineering fields and GST from biology. If anything, it appears that although the two probably mutually influenced each other, cybernetics had the greater influence. Bertalanffy specifically made the point of distinguishing between the areas in noting the influence of cybernetics:

Systems theory is frequently identified with cybernetics and control theory. This again is incorrect. Cybernetics as the theory of control mechanisms in technology and nature is founded on the concepts of information and feedback, but as part of a general theory of systems.... [T]he model is of wide application but should not be identified with 'systems theory' in general ... [and] warning is necessary against its incautious expansion to fields for which its concepts are not made.[31]:17–23

Cybernetics, catastrophe theory, chaos theory and complexity theory have the common goal to explain complex systems that consist of a large number of mutually interacting and interrelated parts in terms of those interactions. Cellular automata, neural networks, artificial intelligence, and artificial life are related fields, but do not try to describe general (universal) complex (singular) systems. The best context to compare the different "C"-Theories about complex systems is historical, which emphasizes different tools and methodologies, from pure mathematics in the beginning to pure computer science today. Since the beginning of chaos theory, when Edward Lorenz accidentally discovered a strange attractor with his computer, computers have become an indispensable source of information. One could not imagine the study of complex systems without the use of computers today.

System types
Biological
Anatomical systems
Nervous
Sensory
Ecological systems
Living systems
Complex
Complex adaptive system
Conceptual
Coordinate
Deterministic (philosophy)
Digital ecosystem
Experimental
Writing
Coupled human–environment
Database
Deterministic (science)
Mathematical
Dynamical system
Formal system
Economic
Energy
Holarchical
Information
Legal
Measurement
Imperial
Metric
Multi-agent
Nonlinear
Operating
Planetary
Political
Social
Star
Complex adaptive systems
Main article: Complex adaptive system
Complex adaptive systems (CAS), coined by John H. Holland, Murray Gell-Mann, and others at the interdisciplinary Santa Fe Institute, are special cases of complex systems: they are complex in that they are diverse and composed of multiple, interconnected elements; they are adaptive in that they have the capacity to change and learn from experience.

In contrast to control systems, in which negative feedback dampens and reverses disequilibria, CAS are often subject to positive feedback, which magnifies and perpetuates changes, converting local irregularities into global features.

See also
diagram	Systems science portal
List of types of systems theory
Glossary of systems theory
Autonomous agency theory
Bibliography of sociology
Cellular automata
Chaos theory
Complexity
Emergence
Engaged theory
Fractal
Grey box model
Irreducible complexity
Meta-systems
Multidimensional systems
Open and closed systems in social science
Pattern language
Recursion (computer science)
Reductionism
Social rule system theory
Sociotechnical system
Sociology and complexity science
Structure–organization–process
Systemantics
System identification
Systematics – study of multi-term systems
Systemics
Systemography
Systems science
Theoretical ecology
Tektology
User-in-the-loop
Viable system theory
Viable systems approach
World-systems theory
Structuralist economics
Dependency theory
Hierarchy theory
Organizations
List of systems sciences organizations
American Society for Cybernetics
Cybernetics Society
IEEE Systems, Man, and Cybernetics Society
International Federation for Systems Research
International Society for the System Sciences
New England Complex Systems Institute
System Dynamics Society
References
 Beven, K. (2006). A manifesto for the equifinality thesis. Journal of hydrology, 320(1), 18-36.




Systems art
https://en.wikipedia.org/wiki/Systems_art
Systems art is art influenced by cybernetics, and systems theory, that reflects on natural systems, social systems and social signs of the art world itself.[1]

Systems art emerged as part of the first wave of the conceptual art movement extended in the 1960s and 1970s. Closely related and overlapping terms are Anti-form movement, Cybernetic art, Generative Systems, Process art, Systems aesthetic, Systemic art, Systemic painting and Systems sculptures.

Related fields of systems art
Anti-form movement
By the early 1960s, Minimalism had emerged as an abstract movement in art (with roots in geometric abstraction via Malevich, the Bauhaus and Mondrian) which rejected the idea of relational, and subjective painting, the complexity of Abstract expressionist surfaces, and the emotional zeitgeist and polemics present in the arena of Action painting. Minimalism argued that extreme simplicity could capture all of the sublime representation needed in art. The term Systematic art was coined by Lawrence Alloway in 1966 as a description of the method artists, such as Kenneth Noland, Al Held and Frank Stella, were using for composing abstract paintings.[2]

Associated with painters such as Frank Stella, minimalism in painting, as opposed to other areas, is a modernist movement. Depending on the context, minimalism might be construed as a precursor to the postmodern movement. Seen from the perspective of writers who sometimes classify it as a postmodern movement, early minimalism began and succeeded as a modernist movement to yield advanced works, but which partially abandoned this project when a few artists changed direction in favor of the anti-form movement.

In the late 1960s, the term Postminimalism was coined by Robert Pincus-Witten[3] to describe minimalist derived art which had content and contextual overtones which minimalism rejected, and was applied to the work of Eva Hesse, Keith Sonnier, Richard Serra and new work by former minimalists Robert Smithson, Robert Morris, Bruce Nauman, Sol LeWitt, and Barry Le Va, and others. Minimalists like Donald Judd, Dan Flavin, Carl Andre, Agnes Martin, John McCracken and others continued to produce their late modernist paintings and sculpture for the remainder of their careers.

Cybernetic art
Audio feedback and the use of tape loops, sound synthesis and computer generated compositions reflected a cybernetic awareness of information, systems, and cycles. Such techniques became widespread in the 1960s in the music industry. The visual effects of electronic feedback became a focus of artistic research in the late 1960s, when video equipment first reached the consumer market. Steina and Woody Vasulka, for example, used "all manner and combination of audio and video signals to generate electronic feedback in their respective of corresponding media."[4]

With related work by Edward Ihnatowicz, Wen-Ying Tsai and cybernetician Gordon Pask and the animist kinetics of Robert Breer and Jean Tinguely, the 1960s produced a strain of cybernetic art that was very much concerned with the shared circuits within and between the living and the technological. A line of cybernetic art theory also emerged during the late 1960s. Writers like Jonathan Benthall and Gene Youngblood drew on cybernetics and cybernetic. The most substantial contributors here were the British artist and theorist Roy Ascott with his essay "Behaviourist Art and the Cybernetic Vision" in the journal Cybernetica (1966–67), and the American critic and theorist Jack Burnham. In Beyond Modern Sculpture from 1968, Burnham builds cybernetic art into an extensive theory that centers on art's drive to imitate and ultimately reproduce life.[5] Also in 1968, curator Jasia Reichardt organized the landmark exhibition, Cybernetic Serendipity, at the Institute of Contemporary Art in London.

Generative systems
Main article: Generative art

Installation view of Irrational Geometrics 2008 by Pascal Dombis
Generative art is art that has been generated, composed, or constructed in an algorithmic manner through the use of systems defined by computer software algorithms, or similar mathematical or mechanical or randomised autonomous processes. Sonia Landy Sheridan established Generative Systems as a program at the School of the Art Institute of Chicago in 1970 in response to social change brought about in part by the computer-robot communications revolution.[6] The program, which brought artists and scientists together, was an effort at turning the artist's passive role into an active one by promoting the investigation of contemporary scientific—technological systems and their relationship to art and life. Unlike copier art, which was a simple commercial spin-off, Generative Systems was actually involved in the development of elegant yet simple systems intended for creative use by the general population. Generative Systems artists attempted to bridge the gap between elite and novice by directing the line of communication between the two, thus bringing first generation information to greater numbers of people and bypassing the entrepreneur.[6]

Process art
Main article: Process art

Maurizio Bolognini, Collective Intelligence Machines series (CIMs, from 2000). These are generative and interactive installations using the mobile phone network and participation technologies taken from e-democracy.[7]
Process art is an artistic movement as well as a creative sentiment and world view where the end product of art and craft, the objet d’art, is not the principal focus. The 'process' in process art refers to the process of the formation of art: the gathering, sorting, collating, associating, and patterning. Process art is concerned with the actual doing; art as a rite, ritual, and performance. Process art often entails an inherent motivation, rationale, and intentionality. Therefore, art is viewed as a creative journey or process, rather than as a deliverable or end product. In the artistic discourse, the work of Jackson Pollock is hailed as an antecedent. Process art in its employment of serendipity has a marked correspondence with Dada. Change and transience are marked themes in the process art movement. The Guggenheim Museum states that Robert Morris in 1968 had a groundbreaking exhibition and essay defining the movement and the Museum Website states as "Process artists were involved in issues attendant to the body, random occurrences, improvisation, and the liberating qualities of nontraditional materials such as wax, felt, and latex. Using these, they created eccentric forms in erratic or irregular arrangements produced by actions such as cutting, hanging, and dropping, or organic processes such as growth, condensation, freezing, or decomposition".[8]

Systemic art
According to Chilvers (2004), "earlier in 1966 the British art critic Lawrence Alloway had coined the term "Systemic art", to describe a type of abstract art characterized by the use of very simple standardized forms, usually geometric in character, either in a single concentrated image, or repeated in a system arranged according to a clearly visible principle of organization. He considered the chevron paintings of Kenneth Noland as examples of Systemic art, and considered this as a branch of Minimal art".[9]

John G. Harries considered a common ground in the ideas that underlie developments in 20th-century art such as Serial art, Systems Art, Constructivism and Kinetic art. These kind of arts often do not stem directly from observations of things visible in the external natural environment, but from the observation of depicted shapes and of the relationship between them.[10] Systems art, according to Harries, represents a deliberate attempt by artists to develop a more flexible frame of reference. A style in which its frame of reference is taken as a model to be emulated rather than as a cognitive systems, that only leads to the institutionalization of the imposed model. But to transfer the meaning of a picture to its location within a systemic structure does not remove the need to define the constitutive elements of the system: if they are not defined, one will not know how to build the system.[10]


Newskool ASCII art Screenshot
Systemic painting
Systemic Painting, according to Auping (1989), "was the title of an highly influential exhibition at the Guggenheim Museum in 1966 assembled and introduction written by Lawrence Alloway as curator. The show contained numerous works that many critics today would consider part of the Minimal art".[11] In the catalogue Alloway noted, that ... "paintings, such as those in this exhibition are not, as has been often claimed, impersonal. The personal is not expunged by using a neat technique: anonymity is not a consequence of highly finishing a painting".[12] The term "systemic painting" later on has become the name for artists who employ systems make a number of aesthetic decisions before commencing to paint.[13]

Systems sculpture
According to Feldman (1987), "serial art, serial painting, systems sculpture and ABC art, were art styles of the 1960s and 1970s in which simple geometric configurations are repeated with little or no variation. Sequences becomes important as in mathematics and linguistic context. These works rely on simple arrangements of basic volumes and voids, mechanically produced surfaces, and algebraic permutations of form. The impact on the viewer, however, is anything but simple".[14]




Systems theory in political science
https://en.wikipedia.org/wiki/Systems_theory_in_political_science
Systems theory in political science is a highly abstract, partly holistic view of politics, influenced by cybernetics. The adaptation of system theory to political science was first conceived by David Easton in 1953.

Overview
In simple terms, Easton's behavioral approach to politics, proposed that a political system could be seen as a delimited (i.e. all political systems have precise boundaries) and fluid (changing) system of steps in decision making. Greatly simplifying his model:[1] Influence of computers on the discipline of political science and the political system work within an environment. The environment generates different demands from different section of society such as reservation system in the matter of a certain group, demand for better transportation etc.

Step 1. changes in the social or physical environment surrounding a political system produce "demands" and "supports" for action or the status quo directed as "inputs" towards the political system, through political behavior.
Step 2, these demands and supporting groups stimulate competition in a political system, leading to decisions or "outputs" directed at some aspect of the surrounding social or physical environment.
Step 3, after a decision or output is made (e.g., a specific policy), it interacts with its environment, and if it produces change in the environment, there are "outcomes."
Step 4, when a new policy interacts with its environment, outcomes may generate new demands or supports and groups in support or against the policy ("feedback") or a new policy on some related matter.
Step 5, feedback, leads back to Step 1, forming a never-ending cycle.
Political analysis
Easton aspired to make politics a science, that is, working with highly abstract models that described the regularities of patterns and processes in political life in general. In his view, the highest level of abstraction could make scientific generalizations about politics possible. In sum, politics should be seen as a whole, not as a collection of different problems to be solved.[2]

His main model was driven by an organic view of politics, as if it were a living object. His theory is a statement of what makes political systems adapt and survive. He describes politics in a constant flux, thereby rejecting the idea of "equilibrium", so prevalent in some other political theories (see institutionalism). Moreover, he rejects the idea that politics could be examined by looking at different levels of analysis. His abstractions could account for any group and demand at any given time. That is, interest group theory and elite theory can be subsumed in political systems analysis.[3] His theory was and is highly influential in the pluralist tradition in political science. (see Harold Lasswell and Robert Dahl)

Critiques
Easton's approach has been criticised for being unfalsifiable and holding a Western or American bias, as well as not explaining crises or the breakdown of the system.[4]

See also
Behavioralism
Karl W. Deutsch
Structural-functionalism
Niklas Luhmann



Organizational metacognition
https://en.wikipedia.org/wiki/Organizational_metacognition#Learning_prototypes
Organizational metacognition is knowing what an organization knows,[1] a concept related to metacognition, organizational learning, the learning organization and sensemaking. It is used to describe how organizations and teams develop an awareness of their own thinking,[2] learning how to learn,[3][4][5] where awareness of ignorance can motivate learning.[6]

The organizational deutero-learning concept identified by Argyris and Schon[7][8] defines when organizations learn how to carry out single-loop and double-loop learning. It has also been described as learning how to learn[9] through a process of collaborative inquiry and reflection (evaluative inquiry).

"When an organization engages in deutero-learning its members learn about the previous context for learning. They reflect on and inquire into previous episodes of organizational learning, or failure to learn. They discover what they did that facilitated or inhibited learning, they invent new strategies for learning, they produce these strategies, and they evaluate and generalize what they have produced" [8]

Learning what facilitates and inhibits learning enables organizations to develop new strategies to develop their knowledge. For example, identification of a gap between perceived performance (such as satisfaction) and actual performance (outcomes) creates an awareness that makes the organization understand that learning needs to occur, driving appropriate changes to the environment and processes.[10]

Learning prototypes
Wijnhoven (2001) grouped four learning prototypes that best meet learning needs, the match between these needs and learning norms dictating an organization's learning capabilities; deutero-learning is the acquisition of these capabilities.[11]

knowledge gap analysis[12]
classification of problems to select operationally required knowledge and skills[13]
coping with organizational tremors and jolts by anticipation, response and adjustments of behavioural repertoires[14]
decisional uncertainty measurement[15]
Terminological ambiguities
Organizational metacognition and organizational deutero-learning have both been described as the concept or phenomenon where organizations learn how to learn.[3][9] Argyris and Schon (1978) place deutero-learning into their cognitive theory of action framework, neglecting aspects of adaptive behaviour and context core to Bateson’s (1972) original definitions. In order to resolve terminological ambiguities, Visser (2007) reviewed and reformulated the concept of deutero-learning as, "the behavioral adaptation to patterns of conditioning in relationships in organizational contexts, distinguishing it from meta-learning and planned learning" (pg. 659).[16]

Significance
Organizational metacognition is considered a key norm to the prescriptive concept of the learning organization.[17][18] Its significance has been recognized by industry, the military[1] and in disaster response.[19]

Examples in practice
Examples of poor metacognition (deutero-learning) have been described in knowledge network environments,

"Knowledge networking is important to most competitive enterprises today. Enterprise knowledge is becoming ever more specialized in nature, so no single person or organization can know everything in detail. Hence addressing complex, multidisciplinary problems requires developing and accessing a network of knowledgeable people and organizations. The problem is, many otherwise knowledgeable people and organizations are not fully aware of their knowledge networks, and even more problematic, they are not aware that they are not aware. This focuses our attention toward organizational metacognition." [1]


Cooperative inquiry
https://en.wikipedia.org/wiki/Cooperative_inquiry

Cooperative inquiry, also known as collaborative inquiry was first proposed by John Heron in 1971 and later expanded with Peter Reason. The major idea of cooperative inquiry is to "research 'with' rather than 'on' people". It emphasizes that all active participants are fully involved in research decisions as co-researchers. Cooperative inquiry creates a research cycle among four different types of knowledge: propositional knowing (as in contemporary science), practical knowing (the knowledge that comes with actually doing what you propose), experiential knowing (the feedback we get in real time about our interaction with the larger world) and presentational knowing (the artistic rehearsal process through which we craft new practices). The research process iterates these four stages at each cycle with deepening experience and knowledge of the initial proposition, or of new propositions, at every cycle.

Stage 1: The first reflection phase that determines topics and methods of inquiry. This phase involves primarily propositional knowing.
Stage 2: The first action phase, usually within the group, that tests the agreed actions, records outcomes from the testing, and observes if the actions conform to the original ideas from Stage 1. This stage involves primarily practical knowing.
Stage 3: A second action phase, usually by individuals in their everyday life outside the group, where the experiences and the consequences of one's new inquiries in action can generate profound new feelings and awarenesses. In this stage, the experiences may lead to new fields, actions and insights that depart from the original ideas. This stage involves primarily experiential knowing.
Stage 4: The second reflection phase when, in the group, co-researchers reflect on their experiences and the data collected in Stages 2 and 3. Now they may re-frame the original ideas and amend inquiry procedures. In this stage, co-researchers also decide whether to proceed to further cycles in the inquiry processes. This stage involves primarily presentational knowing, developing new images and ways of acting. This leads back to propositional knowing, if the inquiry group decides to start a next cycle.

See also
Interpretative phenomenological analysis
Participatory action research
Praxis intervention



Organisation climate
https://en.wikipedia.org/wiki/Organisation_climate

Organizational climate (sometimes known as Corporate Climate) is a concept that has academic meaning in the fields of Organizational Behavior and I/O Psychology as well as practical meaning in the business world[1] There is continued scholarly debate about the exact definition of organizational climate for the purposes of scientific study. The definition developed by Lawrence R. James (1943-2014) and his colleagues makes a distinction between psychological and organizational climate.

"Psychological climate is defined as the individual employee’s perception of the psychological impact of the work environment on his or her own well-being (James & James, 1989). When employees in a particular work unit agree on their perceptions of the impact of their work environment, their shared perceptions can be aggregated to describe their organizational climate (Jones & James, 1979; Joyce & Slocum, 1984)."[2]

Employees' collective appraisal of the organizational work environment takes into account many dimensions of the situation as well as the psychological impact of the environment. For instance, job-specific properties such as role clarity, workload and other aspects unique to a person's specific job have a psychological impact that can be agreed upon by members of the organization. Work group or team cooperation and effectiveness as well as leadership and organizational support are other dimensions of shared experience that factor into organizational climate. Surveys are the most common way of quantifying organizational climate. Aspects of climate that influence performance of specific sets of behaviors and outcomes can be measured, such as the climate for safety and the climate for innovation. Many instruments have been developed to assess numerous aspects of climate.[3]



Contents
1	Approaches
1.1	Cognitive schema approach
1.2	Shared perception approach
2	Organizational climate versus organizational culture
3	Climate surveys
4	See also
5	References
6	Further reading
Approaches
There are two difficulties in defining organization climate: how to define climate, and how to measure it effectively on different levels of analysis. Furthermore, there are several approaches to the concept of climate. Two in particular have received substantial patronage: the cognitive schema approach and the shared perception approach.

The cognitive schema approach regards the concept of climate as an individual perception and cognitive representation of the work environment. From this perspective climate assessments should be conducted at an individual level.

The shared perception approach emphasizes the importance of shared perceptions as underpinning the notion of climate.[4] Organisational climate has also been defined as "the shared perception of the way things are around here".[5] There is great deal of overlap in the two approaches.

Cognitive schema approach
Cognitive representations of social objects are referred to as schemas. These schemas are a mental structure that represents some aspect of the world. They are organized in memory in an associative network. In these associative networks, similar schemas are clustered together. When a particular schema is activated related schemas may be activated as well. Schema activation may also increase the accessibility of related schemas in the associative network. When a schema is more accessible this means it can more quickly be activated and used in a particular situation. When related schemas are activated, inferences beyond the information given in a particular social situation may influence thinking and social behavior, regardless of whether those inferences are accurate or not. Lastly, when a schema is activated a person may or may not be aware of it.

Two processes that increase the accessibility of schemas are salience and priming. Salience is the degree to which a particular social object stands out relative to other social objects in a situation. The higher the salience of an object the more likely that schemas for that object will be made accessible. For example, if there is one female in a group of seven males, female gender schemas may be more accessible and influence the group's thinking and behavior toward the female group member. Priming refers to any experiences immediately prior to a situation that caused a schema to be more accessible.

Shared perception approach
Some researchers have pursued the shared perception model of organizational climate. Their model identifies the variables which moderate an organisation's ability to mobilise its workforce in order to achieve business goals and maximise performance.[6]

One of the major users of this model are departments of the Queensland State Government Australia. These departments use this model of climate to survey staff in order to identify and measure those aspects of a workplace which impact on: stress, morale, quality of worklife, wellbeing, employee engagement, absenteeism/presenteeism, turnover and performance.

While an organisation and its leaders cannot remove every stressor in the daily life of its employees, organisational climate studies have identified a number of behaviours of leaders which have a significant impact on stress and morale. For instance, one Queensland state government employer, Queensland Transport, has found that increasing managers' awareness of these behaviours has improved quality of work life employees and the ability of QT's to deliver its organisational goals.

Organizational climate versus organizational culture
Organizational climate and organizational culture are distinct concepts.[7] Climate and culture are both important aspects of the overall context, environment or situation. Organizational culture tends to be shared by all or most members of some social group, is something that older members usually try to pass on to younger members, and shapes behavior, structures, and perceptions of the world. Cultures are often studied and understood at a national level, such as the American or French culture. Culture includes deeply held values, beliefs and assumptions, symbols, heroes, and rituals. Culture can be examined at an organizational level as well. The main distinction between organizational and national culture is that people can choose to join a place of work, but are usually born into a national culture. Organizational climate, on the other hand, is often defined as the recurring patterns of behavior, attitudes and feelings that characterize life in the organization,[8] while an organization culture tends to be deep and stable. Although culture and climate are related, climate often proves easier to assess and change. At an individual level of analysis the concept is called individual psychological climate. These individual perceptions are often aggregated or collected for analysis and understanding at the team or group level, or the divisional, functional, or overall organizational level.

Climate surveys
Theories of cognitive and neuropsychology and emotional intelligence provide additional scientific rationale for why leaders should improve stress and morale in the workplace to achieve maximum performance. Climate surveys can provide concrete evidence of how this works in action.

Organisational climate surveying enables the impact of human resource (HR) strategies to be evaluated to create HR return on investment (HRROI) calculations. This data has been found to be highly effective in changing the perspective of people-based initiatives as being an "investment" rather than a "cost" and transforming HR into a "mission-critical strategic partner" from its perception of "personnel administration".

A number of studies by Dr Dennis Rose and colleagues between 2001-2004 have found a very strong link between organisational climate and employee reactions such as stress levels, absenteeism and commitment and participation.[9][10][11][12]

A study has found that Hart, Griffin et al.'s (1996) organisational climate model accounts for at least 16% single-day sick leave and 10% separation rates in one organisation.[13][14] Other studies support the links between organizational climate and many other factors such as employee retention, job satisfaction, well-being, and readiness for creativity, innovation and change. Hunter, Bedell and Mumford have reviewed numerous approaches to climate assessment for creativity. They found that those climate studies that were based on well-developed, standardized instruments produced far higher effect sizes than did studies that were based on locally developed measures.[15]

See also
Adaptive performance
Group dynamics
Happiness at work
Job performance
Organization development
Organizational culture
Organizational studies
Person-environment fit





Ambidextrous organization
https://en.wikipedia.org/wiki/Ambidextrous_organization#Origin_and_development
Organizational ambidexterity refers to an organization's ability to be efficient in its management of today's business and also adaptable for coping with tomorrow's changing demand. Just as being ambidextrous means being able to use both the left and right hand equally, organizational ambidexterity requires the organizations to use both exploration and exploitation techniques to be successful.


Contents
1	Origin and development
2	Ambidextrous organizational designs and organizational ambidexterity
3	Structural and behavioral mechanisms that lead to organizational ambidexterity
4	Antecedents of organizational ambidexterity
5	Outcomes of organizational ambidexterity
6	Related moderators between organizational ambidexterity and organizational outcomes
7	Levels of ambidexterity
8	Ambidextrous leadership
9	Controversy and future directions
10	See also
11	References
12	Further reading
Origin and development
Organizational ambidexterity was defined as an organization's ability to be aligned and efficient in its management of today's business demands as well as being adaptive to changes in the environment at the same time.[1] This term of organizational ambidexterity was first used by Duncan,[1] however, it was March[2] that had been credited for developing and generating greater interest in this concept, especially in the late 20th and early 21st century. Ambidexterity in an organization is achieved by balancing exploration and exploitation, which allows the organization to be creative and adaptable, while also continuing to rely on more traditional, proven methods of business.[2] Exploration includes things such as search, variation, risk taking, experimentation, flexibility, discovery or innovation, whereas exploitation includes such things as refinement, choice, production, efficiency, selection, implementation, and execution.[2] Companies that focus only on exploration face the risk of wasting resources on ideas that may not prove useful or never be developed. On the other hand, companies that focus only on exploitation may accept status quo performance and products and fail to reach optimal levels of success.

Organizational ambidexterity is defined broadly, and several other terms are also highly related or similar to the construct of ambidextrous organization, including organizational learning, technological innovation, organizational adaptation, strategic management, and organizational design. Things such as reconciling exploitation and exploration, the simultaneity of induced and autonomous strategy processes, synchronizing incremental and discontinuous innovation, and balancing search and stability also tend to refer to the same underlying construct as ambidextrous organization.[3]

There are studies on how structural and behavioral mechanisms affect organizational ambidexterity and studies on how ambidextrous organizational designs affect organizational ambidexterity. Whereas earlier studies on structural and behavioral mechanisms regarded the trade-offs between exploration and exploitation to be insurmountable, more recent research has paid attention to a range of organizational solutions to engender the existence of ambidexterity. One recent hot research topic in this area focused on the leadership characteristics that enable organizations to manage the contradictions that they face and achieve ambidexterity,[4][5][6] which is the origin of the concept ‘ambidextrous leadership’. Several antecedents, outcomes of organizational ambidexterity as well as related moderators have also been identified in the studies on structural and behavioral mechanisms.

Ambidextrous organizational designs and organizational ambidexterity
The studies on "ambidextrous organizations" take the organization as the unit of analysis and ambidextrous organizing is conceptualized as the simultaneous pursuit and combination of incremental and discontinuous innovation. [7][8][9] "Ambidextrous organizations" are needed if the failure to balance exploitation and exploration is to be overcome: "the ability to pursue simultaneously both incremental and discontinuous innovation results from hosting multiple contradictory structures, processes, and cultures" (Tushman and O'Reilly, 1996: page 24).[10] It has been empirically found that competence exploitation is negatively related to radical innovation performance whereas the effect for competence exploration is positive; competence exploration will be more valuable to the firm when it is matched with lower levels of competence exploitation, and vice versa.[11] It has been theorized that the "ambidextrous organization" does not solve the tension between alignment and adaptability but allows for coping with the tension between different types of alignment in order to produce incremental and discontinuous innovation. "Ambidextrous organizations" do not alternate between exploration and exploitation, but they do both simultaneously.[12] There's work that empirically investigates the processes of ambidextrous organizing by analyzing the implementation of the "ambidextrous organizations" concept in order to study whether there is evidence on how companies applying the concepts (suggested by "ambidextrous organizations" proponents) actually manage the processes of exploitation and exploration.[13]

Structural and behavioral mechanisms that lead to organizational ambidexterity
Organizational ambidexterity can be considered primarily from two angles. One is architectural or structural ambidexterity, which uses dual organizational structures and strategies to differentiate efforts towards exploitation and exploration.[14][15][16] Structural ambidexterity includes dual parts, with one part focusing on exploitation and the other focusing on exploration. It's also known as the spatial separation of the dual strategies concepts outlined above. The other approach is contextual ambidexterity, which uses behavioral and social means to integrate exploitation and exploration at the organizational unit level.[17][18] Contextual ambidexterity is a balanced type that takes a mid-level position between exploitation and exploration, also known as parallel structures or hybrid strategies.

Although both angles are related to the theme of organizational ambidexterity, they strongly differ in the way how they are configured. There has always been a debate of which of the two different approaches is right. The dual type allows both discrete orientations and fit across dimensions at the unit level but creates a misfit between organizational units. Some researchers argued that inconsistent structures may lead to low performance.[19][20] There are also some researchers trying to investigate the external and internal contingencies under which different configurations can be found. One factor would be the speed and type of technological change that organizations confront. On the other hand, the balanced type (i.e. contextual ambidexterity) is consistent with the systems approach of fit across multiple dimensions,[21][22] but contradicts the opinion that organizational choice is discrete.[23][24] In an environment where changes are slow, there will be sufficient time to react to the radical changes by constructing dual structures and strategies. However, in a high-competitive environment, balanced structures may be better prepared to deal with the constant need for alignment.[3] In future studies, the different organizational ambidexterity configurations can be compared to find a better solution for dealing with the exploitation and exploration paradox.

Antecedents of organizational ambidexterity
Ambidexterity is often considered a capacity or skill and can therefore be facilitated by either the organization as a whole or managers / CEOs.[25] From the structural ambidexterity's view, organizations can solve the paradox by temporarily cycling through periods of exploitation and periods of exploration.[24][26][27][28] From the other point of view (contextual ambidexterity), firms ought to address exploitation and exploration simultaneously and internally to achieve the goal ambidexterity.[16][17] Contextual ambidexterity is more difficult to achieve than structural ambidexterity because managing two inconsistent alignments within an organization simultaneously is far more complex than managing one consistent strategy after another.[29] Thus most studies on how to build ambidextrous organizations in literature focused on contextual ambidexterity rather than structural ambidexterity.

The role of leaders (or managers) is always highlighted towards building an ambidextrous organization. Several recommendations have been made to organizations on how to achieve contextual ambidexterity, including using of meta-routines and job-enrichment schemes,[14] building trust with supervisees,[14] being supportive,[14] using complex behavioral repertoires,[30][31] and the creation of a shared vision.[32]

In addition, several characteristics of organizational culture are also emphasized on building an ambidextrous organization. Successful organizations should be able to balance the hard elements (discipline and stretch) and the soft elements (support and trust) in their organizational contexts.[17] It was also suggested that establishing shared goals, developing a collective identity, creating a culture of support, and giving personal meaning to individuals’ contributions to the overall purpose of an organization all contributes to ambidexterity.[17] A decentralized structure[16] and a culture of excellence, recruitment and training[32] are also important aspects of establishing an ambidextrous organization.

Outcomes of organizational ambidexterity
Ambidexterity is beneficial to organizations in many aspects. As it is the ability to keep a balance between explorative and exploitative processes, the most core outcome of ambidexterity is innovation because innovation needs both explorative and exploitative aspects. Innovation is defined as "the sequence of activities by which a new element is introduced into a social unit, with the intention of benefiting the unit, some part of it, or the wider society" (West & Farr, 1990). The new element need not be entirely novel or unfamiliar to members of the unit, but it must involve some discernible change or challenge to the status quo (West & Farr, 1990). Most theoretical models of innovation differentiate at least two processes: idea generation and idea implementation (e.g., Amabile, 1988; West, 2002). The generation phase is closely linked to explorative activities while the implementation phase is highly linked to exploitative activities. An ambidextrous organization is able to pursue innovation (creating new products/services) while also maintaining itself through the continued use of proven techniques/products.[2]

In addition, ambidexterity can promote some other positive organizational outcomes besides innovation. It has been proved in literature that the interaction between explorative and exploitative innovation strategies (in other words, ambidexterity) is positively related to sales growth rate, and imbalance between explorative and exploitative innovation strategies is negatively related to sales growth rate (He & Wong, 2004). Various organizations have been able to overcome organizational challenges and become more innovative because of ambidexterity. A study looking at 41 businesses found that ambidexterity was highly correlated with performance.[17] Similarly, another study of 34 high-tech organizations showed that their ability to simultaneously execute exploration and exploitation was associated with higher performance (Chandrasekaran et al. 2012).

Companies such as Apple, General Radio, Nordstrom and British Airways have all had continued success throughout the years because of their capacity for ambidexterity. From 1981 to 1986, British Airways experienced increased profits and customer satisfaction. The top executives of British Airways credited the formation of a more ambidextrous culture and leadership with the company's improved performance.[16]

Related moderators between organizational ambidexterity and organizational outcomes
Moderators exist in the relationship between organizational ambidexterity and organizational outcomes. Environmental dynamism and competitiveness moderate the relationship between exploitation/ exploration and performance (Levinthal & March, 1993; Lewin, Long & Carroll, 1999). Empirical studies also showed that pursuing exploratory innovation is more effective in dynamic environments, whereas pursuing exploitative innovation is more beneficial to a unit's financial performance in more competitive environments (Jansen, van den Bosch, & Volberda, 2006). Although they were not directly testing an ambidextrous orientation, results indicated a positive performance effect of simultaneously pursuing exploitative and exploratory innovation under high dynamic and competitive environments. The effects of exploitative, explorative and balanced corporate alignment activities on performance were compared under varying environmental conditions (Raisch & Hotz, 2008). The construct of "environmental munificence" was developed to reflect an organization's opportunities and dynamism (Zahra, 1993). They found that, although exploration was positively related to performance under high environmental munificence, a balanced orientation failed to significantly affect performance in times of low environmental munificence (Raisch & Hotz, 2008).

Market orientation was also proved to moderate the relationship between exploitation/ exploration and performance. Market orientation was defined as "the capability to generate, disseminate, and respond to intelligence pertaining to current and future customers" (Kohli & Jaworski, 1990). A longitudinal study by Kyriakopoulos and Moorman (2004) showed that market orientation positively moderates the impact of pursuing high levels of exploitative and exploratory marketing strategies on new product performance; however, firms that pursue an ambidextrous orientation without strong market orientation display a significant reduction in new product financial performance.

Another factor that may moderate ambidexterity's effect on performance is firm resources (Kyriakopoulos & Moorman, 2004).[28] Firms with rich resources have the ability to exploit and explore simultaneously, whereas firms with less resources may not be able to afford such a complex strategy. Similarly, Lubatkin et al.[5] stated that small firms "lack the amount of slack resources and the kind of hierarchical administration systems that can help or impede larger firms in managing their contradictory knowledge processes and, thus, affect the attainment of ambidexterity" (p. 647). This idea was supported by empirical evidence that small firms may benefit more from a one-sided orientation than from mixed strategies (Ebben & Johnson, 2005).

Boundary conditions were also addressed on choosing between structural and contextual ambidexterity. For example, spatial separation was suggested as an appropriate solution for environments characterized by long periods of stability, disrupted by rare events of discontinuous change.[16] Research also found that firms operating in dynamic competitive environments rely on contextual ambidexterity rather than developing spatially separated units (Jansen, van den Bosch, & Volberda, 2005).

Levels of ambidexterity
The functional definition of ambidexterity was originally used to describe organizations, but recently this concept was extended to multiple organizational levels, including individuals, teams, and leaders. On the most general level, the concept of ambidexterity implies successfully managing the dichotomy of explorative variability creation and exploitative variability reduction.

Whenever there are needs to be both explorative and exploitive, conflict occurs (Bledow, Frese, Anderson, Erez, & Farr, 2009). That's when ambidexterity is necessary. Actually, regulating the conflicting demands of innovation is not only a challenge for the upper echelon of an organization but also a phenomenon that spans all levels of an organization. Employees as individuals, collectives of employees such as work teams, and the organization as a whole all have to find strategies to deal with conflicting demands in order to succeed in innovation and adaption to changing markets. Some examples of strategies and tactics that could be implemented at all three levels of analysis were also listed out (Bledow et al., 2009). These examples are presented in Table 1, including a separation strategy (in the Separation column) or an integration strategy (in the last two columns).

Ambidextrous leadership
Recently the focus on organizational ambidexterity has become more concentrated on how leaders act ambidextrously to achieve organizational ambidexterity. Senior managers may be the key for facilitating the context and social base for ambidexterity. Noting that ambidextrous organizations require significant amounts of mobilization, coordination, and integration activities to maintain both exploitation and exploration, informal and social integration of the senior team as well as the cross-functional interfaces of the formal organization contribute to the success of organizational ambidexterity significantly (Jansen, Tempelaar, van den Bosch, & Volberda, 2009). A recent model of ambidexterity and leadership suggests that CEOs and top management teams (TMT) play an integral role in establishing ambidexterity in small-to-medium-sized organizations (Cao, Simsek, & Zhang, 2010). The model suggests TMTs are where processes such as information sharing and knowledge processing, which influence ambidexterity, are likely to occur. Furthermore, it is the CEO who has the ability to access the most valuable and diverse information needed to avoid separation of explorative and exploitative behaviors. The greater the interface between TMTs and CEOs in small-to-medium-sized organizations, the greater the amount of ambidexterity.

The concept of ambidexterity was first formally introduced into the leadership area by the Rosing, Frese and Bausch (2011) paper, holding the idea that leaders should be able to lead their team to match the complexity and the pace of innovation (Ancona, Goodman, Lawrence, & Tushman, 2001). Ambidextrous leadership was defined as the leaders’ ability to foster both explorative and exploitative behaviors in followers by increasing or reducing variance in their behavior and flexibly switching between those behaviors (Rosing et al., 2011).

The construct of ambidextrous leadership has also been linked to the combination of leadership styles (Jansen et al., 2009). Leaders who are transformational encourage "out of the box thinking", information sharing and question assumptions. Transformational leaders promote exploration and innovative thinking. Transactional leaders focus on making incremental improvements and making the best use of existing process. The transactional leadership style promotes exploitative behaviors. An ambidextrous leader is able to switch back and forth between transformation/exploration and transaction/exploitation as needed, in other words, being able to switch between different leadership styles at the appropriate time, in order to foster innovation and then implement plans. Ambidextrous leadership consists of three elements (1) opening leader behaviors to foster exploration, (2) closing leader behaviors to foster exploitation, (3) and the temporal flexibility to switch between both as the situation requires (Rosing et al., 2011). Opening leadership behaviors include: allowing for multiple ways to accomplish a task, experimentation and errors, whereas closing behaviors include; monitoring routines, sticking to plans and minimizing errors. The Rosing et al. (2011)'s model of leadership and innovation was shown in Figure 1.

Controversy and future directions
Some scholars as well as practitioners have argued that established companies simply lack the flexibility to explore new territories.[31] One contributing reason could be the so-called success trap (i.e. the focus on their, historically successful, current business activities) (Walrave, Van Oorschot, & Romme, 2011). A possible solution for big companies is to adopt a venture capital model – funding exploratory expeditions but otherwise not interfering too much with their operations. Another suggestion is for the use of cross-functional teams to achieve breakthrough innovations. Still others have suggested that a company may be able to alternate between different organizational models, focusing on exploitation and exploration at different time periods. For example, in a study of biotechnology firms it is shown how an organization's management control system can be adjusted periodically to achieve this changing focus on exploitation and exploration.[18] Researchers also debate if ambidexterity can be attained because exploration and exploitation tend to emerge from contradictory information and knowledge inputs and because success due to exploration/exploitation tends to be self-reinforcing leading to the use of the same methods in the future.[2][33] An empirical study of ambidexterity in organizations (He & Wong, 2004) further cautions that very low levels of both exploration and exploitation are not sufficient to contribute to superior firm performance. High firm performance may however need to be sustained through continuous exploitation both on the market side, through business model innovation and technology innovation.[34]

Ambidexterity can also be hampered by employee desire to receive organizational rewards. If organizations base their evaluation and reward systems on the completion of routine tasks, employees will be more likely to conform to standardized procedures.[14] To avoid hindering ambidexterity, organizations should be sure to reward innovative thinking as well as completion of routine tasks.

Despite the controversy surrounding the possibility of organizational ambidexterity, it is likely to continue to be a highly researched concept in the future. Future research is likely to focus on the role of ambidextrous leaders, ambidextrous teams and the social context of organizational ambidexterity. (Rosing et al., 2011).

See also
Ambidexterity
Communities of innovation
Contingency Theory
Labour exploitation
Exploration
Innovation
Knowledge management
Leadership
Organizational culture
Organization design
Organizational learning
Organizational structure
Success trap
Tacit knowledge
Technological change
Transactional leadership
Transformational leadership



Communities of innovation
https://en.wikipedia.org/wiki/Communities_of_innovation#Definitions
Communities that support innovation have been referred to as communities of innovation (CoI),[1][2][3][4] communities for innovation,[5] innovation communities,[6] open innovation communities,[7] and communities of creation.[8]





Contents
1	Definitions
2	Role of communities in organizations
3	Relationship between communities and innovation
4	Macro-processes of communities of innovation
5	Communities of innovation compared to communities of practice
6	Drivers of collaborative innovation
7	Communities of innovation and organizational ambidexterity
8	Examples
8.1	The CoI that developed Linux
9	Benefits and disadvantages
10	History
11	See also
12	References
13	External links
Definitions
Lim and Ong (2019) define a community of innovation (CoI) as a group of people with a sense of comaradie, belonging and a collective identity who are jointly facilitating innovation.[1]

CoIs are groups made up of motivated individuals working together towards a common goal because they are convinced of their common cause.[3]

Coakes and Smith (2007) define communities of innovation (CoIs) as a form of communities of practice dedicated to the support of innovation.

Sawhney and Prandelli (2000) proposed the model of communities of creation as a new governance mechanism for managing knowledge found in different companies for the purpose of innovation. In CoIs, intellectual property rights are considered to be owned by the entire community although the community is governed by a central firm which acts as the sponsor and defines the ground rules for participation. This model lies between the closed hierarchical model and the open market-based model.[8]

Role of communities in organizations
Quoting Mintzberg (2009), Lim and Ong (2019) points out that managers need to re-discover the essence of communities in the organizations in order to appropriately manage people within the organizations, who are not simply an organizational resource to be exploited, but who are the very organization itself. In other words, employees who feel they are valued and fairly treated by their organizations will usually work generously and in times of need, sacrificially for the success of the organization of which they feel they are a part of. However, employees who perceive themselves as being exploited, or possibly next on the retrenchment list, will more often than not put in only minimal work for the organization.[1][9]

Relationship between communities and innovation
Stacey (1969) observed that the term ‘community’ has been used by some to connote social relations in a defined geographical area, and by others to stress the feeling of belonging to a group.[10]

Innovation is the development and implementation of a new idea (Van de Ven, 1986).[11]

Collaboration contributes to innovation (Pouwels and Koster, 2017). [12]

Macro-processes of communities of innovation
Lim and Ong (2019) observed three macro-processes, the first macro-process pertaining to having a relax and conducive environment for interaction and innovation, a second macro-process centering on the need for recognition and organizational resources to sustain the innovation process and a third macro-process of narrowing down the choices and implementation of the innovation. Building on the literature on innovation, they termed the first and third macro-processes the divergence (knowledge sharing, search activities, exploratory, and idea generation) and convergence (elimination of alternatives and narrowing down towards a choice, implementation, exploitation, and commercialization of ideas) macro-processes of community innovation. They termed the second macro-process the gateway macro-process (evaluation of new knowledge creation, selection, prioritization, control, idea screening and advocacy) as they observed that it consists of the critical processes which the organization uses to choose ideas to endorse for further development. It is the gateway through which informal communities of innovation may enter to become formal communities of innovation within the organization.

The macro-process of divergence management begins with individuals within the community of innovation building trust, sharing and discussing ideas, agreeing to develop ideas together and to seek recognition or funding from their organization. The macro-process of gateway management then evaluates the preliminary results for recognition or funding with the outcome as either funding approved or not approved for the development of the new products or services. Finally, if the funding is approved, the group dynamics of the community of innovation then becomes formalized within the organization, bringing about the development and implementation of new products or services within the macro-process of convergence management. [1]

The macro-processes of community innovation management[1]
Divergence management	Gateway management	Convergence management
1. Building trust	5. Having the preliminary results evaluated for recognition or funding	8. Development of new products or services
2. Sharing ideas	6b. Funding approved for the development of the new products or services	9. Implementation of new products or services
3. Discussing ideas	7. Group dynamics become formalized within the organization	
4. Agreeing to develop ideas together and to seek recognition or funding from organization	6a. Funding not approved	
Communities of innovation compared to communities of practice
Lim and Ong (2019) observed that in contrast to communities of practice, communities of innovation may emerge by themselves or be cultivated; they usually exist for a narrower purpose of producing a new service or product over a shorter life span; they are made up of participants from either one or more functions; they require a higher level of trust between participants to be effective; there is a higher cost to their participants; and the potential benefit to the organization may be greater when they are successfully implemented.

They also noted that a community of innovation (COI) may be specialized in one function like a community of practice (COP). An example is an innovation project which involves only staff from the engineering department. It is also possible for communities of innovation to be cross-functional (e.g. involving 2-3 functions). An example is an innovation project which involves staff from two functions, the business department and the environmental science department. In their research, they observed that cross-functional communities of innovation were able to consider problems from more perspectives and come up with more varied solutions. However, cross-functional communities of innovation usually require more time for discussions due to the difference in the members’ level of knowledge concerning different topics and their associated jargons.[1]

The differences between communities of practice (CoP) and communities of innovation (CoI)[1]
CoP	CoI
Epistemology	Learning	Innovating
Nature	Emergent (natural)	Maybe emergent (natural) or cultivated (artificial)
Life span	Longer	Shorter
Purpose	Broader	Narrower
Scope	Single function	Maybe single function or cross-functional
Participants	Volunteers	Maybe volunteers or conscripts
Number of participants	Few to many	Few
Level of trust between participants	Low to moderate	High
Cost to participants	Low to moderate	High
Benefit to organization	Low to moderate	High
Motivation to join	Personal interest	Personal or organizational
According to Etienne Wenger, a community of practice (CoP) is a group composed of people who are interested in the same topic and often interact with each other in order to increase their knowledge in this topic. CoPs are very similar to CoIs; however, the two differ in a number of critical ways. They can be easily confused between.[13]

A CoP is able to connect the attitudes and values of dissimilar organizations. For example, a researcher may have a similar skill-set as someone working at a corporation; however, they may have very different tacit knowledge and motivation. The formation of a CoP can bring these separate groups with different motivations to form a beneficial partnership.[13]

CoPs and CoIs share many traits and are closely related – so much so that a CoI can be deemed to be a type of CoP. CoIs are, however, different in certain critical ways not routinely addressed by CoPs, ways that are vital in the process of innovation. CoIs are focused on innovation, and while skills and processes can be transplanted across organizations, innovation processes and methods cannot, without significant customization and adaptation.[13]

Another element that separates a CoI is "inspiration to action", which refers to the relationships formed between kindred spirits – relationships providing support and inspiration for taking on the uphill battle of creating significant change and embarking on new possibilities. In contrast, this process of innovation and bringing about significant change – is not well integrated with corporate strategy.[13]

Drivers of collaborative innovation
Drivers of organizational innovativeness include team processes and external knowledge (Rose et al., 2016) and networking (Lewis et al., 2018).[14][15]

Communities of innovation and organizational ambidexterity
Successful COIs increase innovations within an organization. They, therefore, have the potential to contribute to organizational ambidexterity, which refers to the organization's dual capabilities of managing the current business and being flexible and adaptable to meet future changes and demands.[16]

Examples
Examples of communities of innovation in history include the communities behind steam engines, iron and steel production, and textile machinery. The Pig Iron industry of Cleveland in the UK during 1850–1870 is a prime example of it.[17]

In recent decades, the software industry has exhibited the most significant presence of CoIs. 96% of software products developed in 2016 used open source software. Particularly, in software that runs the computing infrastructure of the internet, open source is ubiquitous. Prime examples of open source software created through communities of innovation include OpenOffice, Python, Blender, GIMP, GNOME, Apache, PostgresQL and PHP, besides Linux.[18]

The CoI that developed Linux
Traditionally, the company is the most efficient means of managing knowledge belonging to different people. The primary motivation is job security, career advancement, and recognition. Lee and Cole (2003) argue for a community structure for knowledge creation that crosses firms boundaries.[19] To substantiate their argument they put forth the case of how "thousands of talented volunteers, dispersed across organizational and geographical boundaries, collaborate via the Internet to produce a knowledge-intensive, innovative product of high quality": the Linux kernel (Lee and Cole 2003, p. 633). The Linux community has proved to be a very efficient mean of managing knowledge belonging to different people. The primary motivation is a value system, recognition, and potential career advancement or hop. Lee and Cole (2003) argue that research on knowledge management has to date focused on hierarchy and therefore has not adequately addressed the mobilization of distributed knowledge, the knowledge that is dispersed among many people. They note that, as illustrated by the Linux case, "the advent of the Internet and Web-based technologies has enabled specialized communities to convene, interact, and share resources extensively via electronic interfaces," even across firms' boundaries (Lee and Cole 2003, p. 633). People are able to contribute effectively outside their working hours. Coordination of the work (including feedback) is possible even when people are working from different locations. The catchment area is therefore much larger and the critical mass of software engineers required to develop and maintain the Linux project was therefore achievable.

Benefits and disadvantages
According to Henry Chesbrough, over the twentieth century, the closed innovation paradigm was overtaken by the theory of open innovation, which emphasizes the significantly higher importance of external resources[20] – thanks to an increasing trend towards globalization, new market participants, and simultaneously shorter product life cycles with correspondingly increasing R&D costs.

Innovation through CoIs has many benefits when compared to proprietary or closed-off product development. Particularly, individual innovators and small and medium-sized enterprises (SMEs) are expected to gain most from open innovation collaborations due to their inherently limited capabilities.[21]

When the most popular Open Source tools and applications – developed through collaboration among their respective communities of innovation (such as software like Linux, Apache Web Server, PostgresSQL and PHP) were compared with similar proprietary software, Gartner[22] found that open source bested or equaled the quality of their proprietary cousins and that many open source developers and advocates are gainfully employed and at very little risk of losing future work prospects. Open source products development has proven to be an efficient way of exhibiting skills.

According to the Technology and Innovation Management Review, open innovation generally provides the following benefits: Broader base of ideas, Technological synergy, Improvement of the internal learning capacity through the transfer of external knowledge and learning routines and Use of intellectual property as strategic assets.[23]

However, open innovation is also associated with a slow or delayed development Pace.[20]

Also, over time it has been proven – especially in the case of communities of innovation in the software industry – that due to the nature of patent and intellectual property law, the dream of open source software as advanced by its advocates – has failed. It was believed that democratization of software would result in shared ownership of its intellectual property, but that hasn't happened. Software built using open source software – is then patented and closed to external collaboration by wealthy companies, who profit much more from the results than the communities of innovation involved in developing the underlying technologies. This leads to greater wealth inequality, as opposed to social good.[24]

According to an article in Technology and Innovation Management Review, open innovation generally suffers from the following disadvantages: strong dependence on external knowledge; loss of key knowledge control; loss of flexibility, creativity, and strategic power.[23]

History
There is evidence that, contrary to the popular belief, communities of innovation such as those in open source software, are not a recent development.[17] There are many examples in history in which innovators have used collective invention as in the cases of textile machinery, steam engines, and the production of iron and steel. In these cases, the innovators' behavior was largely dependent on public policy that accommodated knowledge sharing to foster cumulative innovation. Sometimes, knowledge sharing coexisted with patenting.[17]

Despite the historical precedent, today knowledge sharing among innovators is generally regarded as a modern development. The cost for information exchange has drastically decreased due, in a large part, to breakthroughs within the information and communication fields. According to Henry Chesborough (2003),[17][20] modern open innovation is often seen as, "a sharp break from the paradigm of the early twentieth century when research labs were largely self sufficient – only occasionally receiving outside visitors, and researchers would seldom venture out to visit universities or scientific expositions". In history, the "heroic inventor" is shown greater consideration than the cooperation of innovators.[17]

Stories of innovative heroes were believed to be more fascinating than other narratives, such as the stories of often nameless farmers, who created and shared new types of wheat on the Great Plains. This demonstrates the cultural shift that caused the "heroic inventor" to be nationally celebrated in Britain and all Western countries.[17]

Knowledge sharing often occurred in the past, though there is not enough evidence to prove whether or not it occurs more frequently today. However, it is known that tension has existed for some time between the depth and scope of open knowledge sharing and the patent system.[17]

Among the foremost examples of collective innovation in the past is Cleveland's Pig Iron industry in the UK during 1850–1870. This industry experienced a "free exchange of information about new techniques and plant designs among firms in an industry".[17] According to economic historian Robert Allen, the proliferation of knowledge sharing in the iron district had two plausible reasons.[25] First, afterword traveled of a prosperous blast furnace design, the reputations of engineers grew to be more positive. This only increased profits and allowed engineers to improve their careers. Second, such disclosures could cause the value of the revealing party's assets to decrease. Improving the blast furnace designs, in turn, led to an increase in the values of iron ore deposits, because these Cleveland ore mines were often owned by the blast furnace firms. This possibly made revealing technical information freely a profitable activity from the individual firm's point of view.[25] Similarities can be drawn to today's communities of innovation, where the primary motivation for participants is recognition and potential career advancement, and for participating firms is related profit.[17]

It is yet to be understood how the rivalry between firms and innovators (that caused knowledge sharing to exist) came to be, while which conditions actually lead to aggressive rivalry and patenting. Bessen and Nuvolari (2011) mention that "... as the technology matures, the nature of firms rivalry, their willingness to share knowledge and their use of patents correspondingly change. In particular, knowledge sharing is more likely to occur during the early phases of technology or where local innovation has little effect on worldwide prices."[17]

See also
Frugal innovation
Learning community
Online participation
Organizational learning
Social capital
Tacit knowledge

 Coakes, E.; Smith, P. (2007). "Developing communities of innovation by identifying innovation champions" (PDF). The International Journal of Knowledge and Organizational Learning Management. 14 (1): 74–85. doi:10.1108/09696470710718366. 
http://westminsterresearch.wmin.ac.uk/2727/1/Coakes_Smith_2007_final_author.pdf




Community of inquiry
https://en.wikipedia.org/wiki/Community_of_inquiry#A_useful_metaphor
The community of inquiry, abbreviated as CoI,[1] is a concept first introduced by early pragmatist philosophers C.S.Peirce and John Dewey, concerning the nature of knowledge formation and the process of scientific inquiry. The community of inquiry is broadly defined as any group of individuals involved in a process of empirical or conceptual inquiry into problematic situations. This concept was novel in its emphasis on the social quality and contingency of knowledge formation in the sciences, contrary to the Cartesian model of science, which assumes a fixed, unchanging reality that is objectively knowable by rational observers. The community of inquiry emphasizes that knowledge is necessarily embedded within a social context and, thus, requires intersubjective agreement among those involved in the process of inquiry for legitimacy.[2][3][4][5]

A useful metaphor
The Buddhist parable of "The Blind Men and an Elephant " offers a colorful way to make sense of the notion of the community of inquiry. The tale finds many blind men fumbling about an elephant, each trying to discover what it is they are touching. They are fixated in disagreement. One finds the elephant's leg and believes it a tree. Another finds its trunk and believes it a rope. Yet another finds its side and believes it a wall. The insight is that we are all trapped inside our limited experience and cannot know the truth.[6] If the blind men only cooperated, forming a community whose goal is inquiry into the strange multifaceted object, they may begin to overcome the problematic situation and discover the true nature of the object of their respective opinions. By sharing their experiences in a democratic and participatory manner they could arrive at a more comprehensive truth than their impoverished perspectives allow, isolated from each other. They would show each other why one found the elephant to be like a rope and the other a tree. They would go further, using other ways to collect evidence (e.g., smell the animal, listen to its sounds). Together they would try to reconcile their conflicting conclusions. The blind men would never see the elephant, but they would no longer be trapped in their own limited perspectives. In short, they would be more likely to resolve the problematic situation, that object is no object at all, it is an elephant. But resolution is never final; even their consensus could be in error. All findings are provisional and subject to revision. This is the scientific quality of the community of inquiry.[7]

Applications
While Peirce originally intended the concept of the community of inquiry as a way to model the natural sciences, the concept has been borrowed, adapted, and applied in many different fields. This article touches on the contributions in the fields of education and public administration.

Education
According to Matthew Lipman, C.S. Peirce originally restricted the concept to the community of scientists. John Dewey broadened the scope of the concept, applying it to the educational setting (Lipman, 2003, pp. 20–21). Borrowing from Dewey, Lipman systematically applies the concept to the educational setting. He argues that a classroom is a type of community of inquiry, which leads to “questioning, reasoning, connecting, deliberating, challenging, and developing problem-solving techniques.” Students and teachers involved in inquiry form a community of inquiry under certain circumstances. Therefore, a holistic understanding of a community of students and teachers engaged in authentic inquiry is the working definition of the key term ‘community of inquiry’. There is a gestalt dimension to the concept that is underlined by Lipman. He points to “….the profound educational implications of fusing together, as Peirce had, the two independently powerful notions of inquiry and community into the single transformative concept of community of inquiry” (2003, p. 84).

Lipman's paradigms
Lipman defined community of inquiry as a rigorous, democratic and reflective form of discussion built up over time with the same group of learners. Lipman also provides a useful set of antonymic statements that contrasts the standard educational paradigm with the reflective educational paradigm in which communities of inquiry can occur.

The standard paradigm poses the following:

education as knowledge transmission
knowledge as unambiguous, unequivocal and un-mysterious,
knowledge is divided into non-overlapping disciplines
teachers as authoritative sources of knowledge.
The reflective paradigm, in contrast, poses the following:

education is the outcome of participation in a teacher-guided community of inquiry
teachers stir students to think about the world when teachers reveal knowledge to be ambiguous, equivocal, and mysterious,
knowledge disciplines are overlapping and therefore problematic,
teachers are ready to concede fallibility,
students are expected to be reflective and increasingly reasonable and judicious
the educational process is not information acquisition but a grasp of relationships among disciplines (2003, pp 18–19).
A community of inquiry can be seen to exist to the degree that it avoids the qualities of this standard paradigm and shows the qualities of this reflective paradigm.

Online learning

Community of Inquiry model
Lipman's and Dewey's ideas were expanded and applied to online learning contexts in a Canadian project that originated in 1996 at the University of Alberta. The project was led by Randy Garrison, Terry Anderson and Walter Archer. The purpose of the study was to provide conceptual order and a tool for the use of Computer-mediated communication in supporting an educational experience.

Central to the work is a model of community inquiry that constitutes three elements essential to an educational transaction - cognitive presence, social presence, and teaching presence. Indicators (key words/phrases) for each of the three elements emerged from the analysis of computer conferencing transcripts. The indicators described represent a template or tool for researchers to analyze written transcripts as well as a heuristic guide to educators for the optimal use of computer conferencing as a medium to facilitate an educational transaction. This research suggested that computer conferencing has considerable potential to create a community of inquiry for educational purposes.[8]

This project led to production of many scholarly papers, a book and replication of the Community of Inquiry model by distance education researchers globally.[9][10] The Community of Inquiry model is also used to conceptually guide study research and practice in other forms of mediated, blended and classroom education.

Public administration
Patricia M. Shields has applied the community of Inquiry concept to the field of public administration. The community of inquiry is not defined by geographic location, rather a common desire by its members to resolve a problematic situation using a scientific attitude to assess evidence and guide action. The community is also defined by participatory democracy. "The parameters of the problematic situation and approaches to resolution are shaped by the interaction of the community and the facts".[11] The democratic community may consider ideals/values such as equality, freedom, effectiveness, justice as it considers goals. There are three key ideas – "problematic situation, scientific attitude, and participatory democracy".[12] Shields depiction is similar to Lipman's in that she refines the term inquiry by focusing on the problematic situations and scientific attitude (both concepts developed by Dewey in his book Logic: The Theory of Inquiry.[13] Community is refined as participatory democracy. The two definitions are essentially the same. Shields draws heavily on John Dewey's insights into democracy[14] and inquiry[15] to refine the concept and apply it to public administration.

See also
Community of action
Community of circumstance
Community of interest
Community of place
Community of position
Community of practice
Community of purpose
Learning organization
Professional learning community



Just-in-time learning
https://en.wikipedia.org/wiki/Just-in-time_learning#Methodology
Just-in-time learning is an approach to individual or organizational learning and development that promotes need-related training be readily available exactly when and how it is needed by the learner.

Methodology
Just-in-time learning is different from structured training or scheduled professional development, both of which are generally available at set dates and times.[1] What makes just-in-time learning unique is a strategy focused on meeting the learner's need when it arises, rather than pre-scheduled education sessions that occur regardless of the immediacy or scope of need.[2] Therefore, planning for just-in-time learning requires anticipating what is needed by the various learners, when and where they may be when they experience the need, and the creation of content oriented toward meeting those needs in ways that are focused and accessible.[3]

The learning that is provided in a just-in-time format is often by short online videos, targeted elearning, printed and accessible job aids, or related real-world information. It is timed and packaged to meet one explicit need and nothing else, so as not to overwhelm the learner with anything that does not meet the immediate need.[4][5] Information can be provided through traditional paper, online, or through mobile devices depending upon need and availability.[6] It is essential that the information is findable and understandable by the person who needs it; otherwise the person will become distracted or lose focus and defeats the benefits of just-in-time learning. Meeting only the immediate need helps with knowledge retention and promotes feelings of empowerment. Therefore, one of the criteria used to assess learning is the speed of connecting the person who needs something with the learning that helps get it done.[2]

Success criteria
That just-in-time learning is often conflated with reusable learning objects implies that similar success criteria may be applied to them.[7] Evidence of successful use of just-in-time learning includes higher learner satisfaction, decreased costs, and even increased patient-centered outcomes when implemented within health settings.[1][8][9]

See also
 Just-in-time teaching
Experiential learning






Strategic Choice Theory
https://en.wikipedia.org/wiki/Strategic_Choice_Theory#History
In organizational theory, a topic in sociology and social psychology, Strategic Choice Theory describes the role that leaders or leading groups play in influencing an organization through making choices in a dynamic political process.[1] Previous to this theory, a common view was that organizations were thought to be designed along operational requirements based on the external environment. Strategic choice theory provided an alternative that emphasized the agency of individuals and groups within organizations to make choices, sometimes serving their own ends, that dynamically influenced the development of those organizations. These strategic choices formed part of an organizational learning process that adapted to the external environment as well as the internal political situation.

Apart from (but complementary to) organizational settings, Strategic Choice theory was studied with regard to individual's responses in ordinary, everyday disputes. Findings include that both complainants and respondents used a variety of strategies that changed over time in an effort to resolve the dispute.[2]


History
Origin
The model of Strategic Choice was made when the relations of industries inside the United States were quickly changing. The model/theory was created because other contemporary models/theories were anchored in industries that were stagnant.[3] A majority of the theories had been made when everything was relatively still, and since they were made with that background the theories had a difficult time explaining the change.Therefore, since the Industries were in rapid change there became a need to explain why the industries are changing.[4] The basic model begins by factoring in purposive , intentionalist, rational explanations of their actions and any action done by another person that effects the decision of the decision maker(s).[5] The variables included can be condensed to any forces outside the environment that would have an effect on the person making the choices.[4] For an example an environmental factor that can change an industries values is the civil rights movement.

Usage
The spread of this theory has been credited to a multitude of researchers. One person was Alfred Chandler jr. in 1962 his research was on the relationship between strategy and structure. Two other people that have been given credit to the bloom of this research field is J.S. Bain in 1968 and Michael Porter in 1980, who are both industrial organization economists. These researches were mostly using the theory to study industries, but they did have problems in the research. The two problems of the earlier research were that most of the research uses different centers as a point of reference. The second problem is that most researches focuses on how the choices are made and not what comes from those choices.[6] The choice to use this strategic choice theory in industrial relations is contained by two things. The first is that the person making the decisions are only available to happen when they have direct control of what they do. This means that if the person who is making the decisions has to be able to decide freely. The second is that the decision has an effect on others.[6]






Success trap
https://en.wikipedia.org/wiki/Success_trap#Overview
The success trap refers to business organizations that focus on the exploitation of their (historically successful) current business activities and as such neglect the need to explore new territory and enhance their long-term viability.[1][2][3]
Overview
The success trap arises when a firm overemphasizes exploitation investments, even if explorative investments are required for successful adaptation.[1][2] Exploitation draws on processes that serve to incrementally improve existing knowledge, while exploration involves the pursuit and acquisition of new knowledge.[1] Firms and other organizations that have been performing well over an extended period of time are exposed to strong path dependence in exploitative activities, at the cost of explorative activities with which they have little experience. For example, in the 1990s Polaroid’s management failed to respond to the transition from analogue to digital photography, although the rise of digital technology had been evident since the 1980s.[4] Other well-known examples of companies that got caught in the success trap include Kodak, Rubbermaid and Caterpillar.[4][5][6]

Conditions giving rise to success trap
A key condition giving rise to a firm getting caught in the success trap is the company culture, having been created based on the understanding of what makes success, the culture then solidifies. When the environment changes there is an initial dismissing of the significance of the change and the (over time) subsequent failure to adjust the strategy of the firm.[7][8][9] Thus, top managers do not ‘see’ the upcoming exogenous change, because their thinking and policies tend to constrain exploration and experimentation within the firm and inhibit the ability to bring about strategic change. A broader perspective arises from how exploration activities are suppressed in publicly owned companies as a result of the interplay between the CEO and other top executives, the Board of Directors, the pressure for short-term (improvements in) results arising from the capital market, and the substantial delay between the investment in exploration efforts and the return on these efforts.[10]

Preventing the success trap
The success trap can be best avoided early on, for example, by closely monitoring how other (e.g. leading) firms maintain a balance between exploitation and exploration activities, as well as by continually collecting information about changing customer needs, newly emerging technologies and other changes in the market and competitive environment. Drawing on this type of information, the executive board and board of directors together need to develop and sustain a shared long-term vision and strategy regarding the investments in exploitation and exploration activities. Once a publicly owned corporation has been suppressing exploration over an extended period of time, it tends to be almost impossible to get out of the success trap without major interventions - such as a hostile takeover by another corporation or an exit from the stock exchange.[10]

Consequences of the success trap
Firms that fall into the success trap suffer long term consequences. They grow their revenues at a lower pace than other companies and also create less shareholder value than more exploratory companies. These patterns can be observed for S&P 500 companies in the USA in the aggregate and also within industries.[11]

See also
Ambidextrous organization
Knowledge management
Organizational learning
Polaroid Corporation
Strategic management







Noise (economic)
https://en.wikipedia.org/wiki/Noise_(economic)#Types_of_noise
Economic noise, or simply noise, describes a theory of pricing developed by Fischer Black. Black describes noise as the opposite of information: hype, inaccurate ideas, and inaccurate data. His theory states that noise is everywhere in the economy and we can rarely tell the difference between it and information.

Noise has two broad implications.

It allows speculative trading to occur (see below).
It is indicative of market inefficiency.
Loudon and Della Bitta (1988) refer to noise as “a type of disruption in the communication process” and go further stating that "each state of the communication process is susceptible to (this) message distortion." (As cited in Wu & Newell, 2003). Therefore, we can say that noise is a disruption within the communication process and can be found in all forms within the communication process.

Some examples of noise could be distortion of a television advertisement or interference of a radio broadcast. This therefore would mean that your reception of the information could be misunderstood as your reception of the information has been interfered with, meaning you may not receive the message in the way the sender is implying. Another, and probably more likely, example of noise is whilst an ad break is occurring on television, the reception of the ad has been interrupted by your mobile phone, meaning you do not fully and clearly receive and decode the information the advertisement is trying to deliver.[1]

What also must be considered when looking at the idea of noise is the understanding that the more the sender and receiver have in common, the less likely it will be for noise to have an effect on the encoding of the message. For example, if the receiver did not understand a symbol or the symbol had a different meaning to the receiver then it did to the sender, this would mean the receiver could encode the message in a different way to how the sender had intended.[1]


Types of noise
Environmental or External Noise. “This consists of sounds and visual distractions that are present in the environment where the viewing takes place.”[2] (Wu & Newell, 2003) An example of this is using a mobile phone whilst watching a television advertisement, as the mobile is within the external environment and could have an impact, as a distraction, on how the receiver decodes the message.

Clutter is another type of noise. Russel and Lane (1996) define clutter as “"non-program material carried during or between shows including commercials, public service announcements, and program promotional spots”[2] (as cited in Wu & Newell, 2003). Therefore, if the television advertisement had been shown after a public service announcement, the receiver could be distracted, thinking about what was discussed within the announcement, as opposed to being fully focused on the television advertisement.

Internal Noise is the third type of noise to be considered. MacInnis and Jaworski (1989, as cited in Wu & Newell, 2003) and MacInnis, et al. (1991 also cited in Wu & Newell, 2003) imply that the decoding of a message within an advertisement could be affected by the internal noise of the receiver. Internal noise being thoughts and concerns. The relationship between internal noise and the decoding of messages as a receiver does not yet have evidence through market research.[2] (As cited in Wu & Newell, 2003). Continuing on from this, it is clear that if the audience of an advertisement was focused on a thought or concern in their mind, they would not decode the message within the advertisement in the same way.

Finance
People trade speculatively because they disagree about the future, making different predictions about the fate of companies and commodity prices, among other economic variables. These disagreements stem from the fact that everyone interprets information or data differently and subjectively. But because of the complex nature of the world's markets, not all market data is "information." Much of the daily price fluctuation is due to random change rather than meaningful trends, creating the problem of discerning real information from noise. This problem is what drives trading in a market; if everyone knew all things, then no speculative trades would occur because it is a zero-sum game. In real life, however, trades occur as a kind of bet on what is noise and what is information; generally the more skillful, and technologically advanced, "gambler" wins.

This trade takes place between what Black calls information traders and noise traders, where the former operates based on accurate information and the latter trades based on noise. Unfortunately, there is no way of precisely parsing the noise and information from a data stream or signal, so the so-called noise traders tend to think that they, in fact, trade on information that others in the market simply reject as noise. Thus, methods of parsing noise and information from a signal are becoming increasingly important in the market-place, especially as strategies used by high-tech alternative investment firms, such as some hedge funds.

Business cycles
A particular type of trader Black makes special mention of is the entrepreneur. Like the above-mentioned traders, entrepreneurs have theories about what will happen and what is happening. In this case, though, they have theories as to what people want. When they are correct, there is a little boom; I make what you want, you make what I want, we trade and we are happy.

But the world has noise and entrepreneurs make mistakes. They make things others don't want. Thus, they don't work as hard, money is wasted and the economy is harmed. When this happens on a massive scale, there is a bust.

Critics argue that this disobeys the law of large numbers; with so many entrepreneurs trying, the aggregate success rate will be constant. (This assumes that producers are more or less independent; critics say they are, proponents say they're more interconnected.)

Econometrics
Black argues that econometrics is filled with it in the forms of unobservables and mis-measurement. No matter how many variables one puts into a model, there are always more to add but can't (ones you can't observe) and the ones you have will always have error. This is how noise manifests in econometrics (as well as poor interpretation of regressions, such as assuming correlation means causation).





Information literacies
https://en.wikipedia.org/wiki/Information_literacies#Definitions
Information literacies are the multiple literacies individuals may need to function effectively in the global information society.[1] These are distinct from the broad term information literacy.

Definitions
The definition of literacy is "the ability to read and write".[2] In practice many more skills are needed to locate, critically assess and make effective use of information.[3] By extension, literacy now also includes the ability to manage and interact with digital information and media, in personal, shared and public domains.[4][5][6][7]

Historically, "information literacy" has largely been seen from the relatively top-down, organisational viewpoint of library and information sciences.[1] However the same term is also used to describe a generic "information literacy" skill.[1]

New literacies and 21st century skills
See also: 21st century skills
Towards the end of the 20th century, literacy was redefined to include "new literacies" relating to the new skills needed in everyday experience.[7][3] "Multiliteracies" recognised the multiplicity of literacies, which were often used in combination.[8][7][3] "21st century skills" frameworks link new literacies to wider life skills such as creativity, critical thinking, accountability.[9][7]

What these approaches have in common is a focus on the multiple skills needed by individuals to navigate changing personal, professional and public "information landscapes".[7][1][10][3][11]

Contemporary views
As the conventional definition of literacy itself continues to evolve among practitioners,[12] so too has the definition of information literacies. Noteworthy definitions include:

CILIP, the Chartered Institute of Library and Information Practitioners, defines information literacy as "the ability to think critically and make balanced judgements about any information we find and use".[6]
JISC, the Joint Information Systems Committee, refers to information literacy as one of six "digital capabilities", seen as an interconnected group of elements centered on "ICT literacy".[5]
Mozilla groups digital and other literacies as "21st century skills", a "broad set of knowledge, skills, habits and traits that are important to succeed in today's world".[13]
UNESCO, the United Nations Educational, Scientific and Cultural Organization, asserts information literacy as a "universal human right".[4]
Key information literacies
The term information literacy covers many distinct fields, which are both distinct and interrelated. The following are key information literacies.

Critical literacy
Critical literacy is the ability to actively analyse texts and media to identify underlying messages, taking into account context, perspective and possible biases.[14]
Computer literacy
Computer literacy is the ability to use computers and other digital devices efficiently enough to carry out basic or more advanced tasks.[15]
Copyright literacy
Copyright literacy is the ability to manage creative output and make appropriate use of the work of others, informed by knowledge of copyright, ownership, usage and other rights.[16]
Data literacy
Data literacy is the ability to gather, interpret and analyse data, and communicate insights and information from this analysis. Increasingly important in everyday life, over 80% of employers cite data literacy as a key skill for employees.[17]
Digital literacy
Digital literacy is the ability to use technology to manage and interact with digitized information, participate in online practice and originate digital work.[18]
Disaster literacy
Disaster literacy is an individual's ability to read, understand, and use information to make informed decisions and follow instructions in the context of mitigating, preparing, responding, and recovering from a disaster.[19]
Financial literacy
Financial literacy is the capacity of an individual to understand available banking products, services, laws and obligations, and make informed decisions on financial assets.
Health literacy
Health literacy is the ability of individuals to locate, manage and make appropriate use of information to help promote and maintain good health.[20]
Media literacy
Media literacy is the ability to locate, critically evaluate, communicate with and make effective use of different types of media.[21]
Visual literacy
Visual literacy is the ability to interpret and make meaning from visual information such as static or moving images, graphics, symbols, diagrams, maps.[22]
Web literacy
Web literacy is the ability to navigate the world wide web, interact effectively and thrive online, while managing online presence, privacy and risk.[23]






Openness to experience
https://en.wikipedia.org/wiki/Openness_to_experience#Measurement
Openness to experience is one of the domains which are used to describe human personality in the Five Factor Model.[1][2] Openness involves six facets, or dimensions: active imagination (fantasy), aesthetic sensitivity, attentiveness to inner feelings, preference for variety (adventurousness), intellectual curiosity, and challenging authority (psychological liberalism).[3] A great deal of psychometric research has demonstrated that these facets or qualities are significantly correlated.[2] Thus, openness can be viewed as a global personality trait consisting of a set of specific traits, habits, and tendencies that cluster together.

Openness tends to be normally distributed with a small number of individuals scoring extremely high or low on the trait, and most people scoring moderately.[2] People who score low on openness are considered to be closed to experience. They tend to be conventional and traditional in their outlook and behavior. They prefer familiar routines to new experiences, and generally have a narrower range of interests. Openness has moderate positive relationships with creativity, intelligence and knowledge. Openness is related to the psychological trait of absorption, and like absorption has a modest relationship to individual differences in hypnotic susceptibility.

Openness has more modest relationships with aspects of subjective well-being than other Five Factor Model personality traits.[4] On the whole, openness appears to be largely unrelated to symptoms of mental disorders.[5]

Measurement
Openness to experience is usually assessed with self-report measures, although peer-reports and third-party observation are also used. Self-report measures are either lexical[6] or based on statements.[7] Which measure of either type is used is determined by an assessment of psychometric properties and the time and space constraints of the research being undertaken

Lexical measures use individual adjectives that reflect openness to experience traits, such as creative, intellectual, artistic, philosophical, deep. Goldberg (1992) developed a 20-word measure as part of his 100-word Big Five markers.[8] Saucier (1994) developed a briefer 8-word measure as part of his 40-word mini-markers.[9] However, the psychometric properties of Saucier’s original mini-markers have been found suboptimal with samples outside of North America.[6] As a result, a systematically revised measure was developed to have better psychometric properties, the International English Mini-Markers.[6] The International English Mini-Markers has good psychometric validity for assessing openness and other five factor personality model dimensions, both within and, especially, without American populations. Internal consistency reliability of the Openness measure is .84 for both native and non-native English-speakers.
Statement measures tend to comprise more words, and hence take up more research instrument space, than lexical measures. For example, the Openness (intellect) scale of Goldberg's International Personality Item Pool is 45 words compared Saucier or Thompson’s (2008) 8-word lexical scale for Openness.[6] Examples of statement measure items are Love to think up new ways of doing things and Have difficulty understanding abstract ideas.[7] Two examples of statement measures are the NEO PI-R, based on the Five Factor Model, and the HEXACO-PI-R based on the HEXACO model of personality.[10] In these tests, openness to experience is one of the six measured personality dimensions; in both tests openness to experience has a number of facets. The NEO PI-R assesses six facets called openness to ideas, feelings, values, fantasy, aesthetics, and actions respectively. The HEXACO-PI-R assesses four facets called inquisitiveness, creativity, aesthetic appreciation, and unconventionality.
A number of studies have found that openness to experience has two major subcomponents, one related to intellectual dispositions, the other related to the experiential aspects of openness, such as aesthetic appreciation and openness to sensory experiences. These subcomponents have been referred to as intellect and experiencing openness respectively, and have a strong positive correlation (r = .55) with each other.[11]

According to research by Sam Gosling, it is possible to assess openness by examining people's homes and work spaces. Individuals who are highly open to experience tend to have distinctive and unconventional decorations. They are also likely to have books on a wide variety of topics, a diverse music collection, and works of art on display.[12]

Psychological aspects
Openness to experience has both motivational and structural components.[13] People high in openness are motivated to seek new experiences and to engage in self-examination. Structurally, they have a fluid style of consciousness that allows them to make novel associations between remotely connected ideas. Closed people by contrast are more comfortable with familiar and traditional experiences.

Creativity
Openness to experience correlates with creativity, as measured by tests of divergent thinking.[14] Openness has been linked to both artistic and scientific creativity as professional artists and scientists have been found to score higher in openness compared to members of the general population.[15]

Intelligence and knowledge
Openness to experience correlates with intelligence, correlation coefficients ranging from about r = .30 to r = .45.[16] Openness to experience is moderately associated with crystallized intelligence, but only weakly with fluid intelligence.[16][17] A study examining the facets of openness found that the Ideas and Actions facets had modest positive correlations with fluid intelligence (r=.20 and r=.07 respectively).[16] These mental abilities may come more easily when people are dispositionally curious and open to learning. Several studies have found positive associations between openness to experience and general knowledge.[18][19][20][21] People high in openness may be more motivated to engage in intellectual pursuits that increase their knowledge.[21] Openness to experience, especially the Ideas facet, is related to need for cognition,[22] a motivational tendency to think about ideas, scrutinize information, and enjoy solving puzzles, and to typical intellectual engagement[23] (a similar construct to need for cognition).[24]

Absorption and hypnotisability
Openness to experience is strongly related to the psychological construct of absorption[25] defined as "a disposition for having episodes of 'total' attention that fully engage one's representational (i.e. perceptual, enactive, imaginative, and ideational) resources.”[26] The construct of absorption was developed in order to relate individual differences in hypnotisability to broader aspects of personality.[25][27] The construct of absorption influenced Costa and McCrae's development of the concept of openness to experience in their original NEO model due to the independence of absorption from extraversion and neuroticism.[25] A person's openness to becoming absorbed in experiences seems to require a more general openness to new and unusual experiences. Openness to experience, like absorption has modest positive correlations with individual differences in hypnotisability.[27] Factor analysis has shown that the fantasy, aesthetics, and feelings facets of openness are closely related to absorption and predict hypnotisability, whereas the remaining three facets of ideas, actions, and values are largely unrelated to these constructs.[25][27] This finding suggests that openness to experience may have two distinct yet related subdimensions: one related to aspects of attention and consciousness assessed by the facets of fantasy, aesthetics, and feelings; the other related to intellectual curiosity and social/political liberalism as assessed by the remaining three facets. However, all of these have a common theme of ‘openness’ in some sense. This two-dimensional view of openness to experience is particularly pertinent to hypnotisability. However, when considering external criteria other than hypnotisability, it is possible that a different dimensional structure may be apparent, e.g. intellectual curiosity may be unrelated to social/political liberalism in certain contexts.[27]

Relationship to other personality traits
Although the factors in the Big Five model are assumed to be independent, openness to experience and extraversion as assessed in the NEO-PI-R have a substantial positive correlation.[28] Openness to experience also has a moderate positive correlation with sensation-seeking, particularly, the experience seeking facet.[29] In spite of this, it has been argued that openness to experience is still an independent personality dimension from these other traits because most of the variance in the trait cannot be explained by its overlap with these other constructs. A study comparing the Temperament and Character Inventory with the Five Factor model found that Openness to experience had a substantial positive correlation with self-transcendence (a "spiritual" trait) and to a lesser extent novelty seeking (conceptually similar to sensation seeking).[30] It also had a moderate negative correlation with harm avoidance. The Myers–Briggs Type Indicator (MBTI) measures the preference of "intuition," which is related to openness to experience.[31] Robert McCrae pointed out that the MBTI sensation versus intuition scale "contrasts a preference for the factual, simple and conventional with a preference for the possible, complex, and original," and is therefore similar to measures of openness.[32]

Social and political attitudes
There are social and political implications to this personality trait. People who are highly open to experience tend to be liberal and tolerant of diversity.[33][34] As a consequence, they are generally more open to different cultures and lifestyles. They are lower in ethnocentrism, right-wing authoritarianism,[35] social dominance orientation, and prejudice.[36] Openness has a stronger (negative) relationship with right-wing authoritarianism than the other five-factor model traits (conscientiousness has a modest positive association, and the other traits have negligible associations).[36] Openness has a somewhat smaller (negative) association with social dominance orientation than (low) agreeableness (the other traits have negligible associations). Openness has a stronger (negative) relationship with prejudice than the other five-factor model traits (agreeableness has a more modest negative association, and the other traits have negligible associations). However, right-wing authoritarianism and social dominance orientation are each more strongly (positively) associated with prejudice than openness or any of the other five-factor model traits.[36] Recent research has argued that the relationship between openness and prejudice may be more complex, as the prejudice examined was prejudice against conventional minority groups (for example sexual and ethnic minorities) and that people who are high in openness can still be intolerant of those with conflicting worldviews.[37][38]

Regarding conservatism, studies have found that cultural conservatism was related to low openness and all its facets, but economic conservatism was unrelated to total openness, and only weakly negatively related to the Aesthetics and values facets.[39] The strongest personality predictor of economic conservatism was low agreeableness (r= -.23). Economic conservatism is based more on ideology whereas cultural conservatism seems to be more psychological than ideological and may reflect a preference for simple, stable and familiar mores.[39] Some research indicates that within-person changes in levels of openness do not predict changes in conservatism.[40]

Subjective well-being and mental health
Openness to experience has been found to have modest yet significant associations with happiness, positive affect, and quality of life and to be unrelated to life satisfaction, negative affect, and overall affect in people in general.[4] These relationships with aspects of subjective well-being tend to be weaker compared to those of other five-factor model traits, that is, extraversion, neuroticism, conscientiousness, and agreeableness. Openness to experience was found to be associated with life satisfaction in older adults after controlling for confounding factors.[41] Openness appears to be generally unrelated to the presence of mental disorders. A meta-analysis of the relationships between five-factor model traits and symptoms of psychological disorders found that none of the diagnostic groups examined differed from healthy controls on openness to experience.[5]

Personality disorders
Main article: Personality disorders
At least three aspects of openness are relevant to understanding personality disorders: cognitive distortions, lack of insight and impulsivity. Problems related to high openness that can cause issues with social or professional functioning are excessive fantasizing, peculiar thinking, diffuse identity, unstable goals and nonconformity with the demands of the society.[42]

High openness is characteristic to schizotypal personality disorder (odd and fragmented thinking), narcissistic personality disorder (excessive self-valuation) and paranoid personality disorder (sensitivity to external hostility). Lack of insight (shows low openness) is characteristic to all personality disorders and could explain the persistence of maladaptive behavioral patterns.[43]

The problems associated with low openness are difficulties adapting to change, low tolerance for different worldview or lifestyles, emotional flattening, alexithymia and a narrow range of interests.[42] Rigidity is the most obvious aspect of (low) openness among personality disorders and that shows lack of knowledge of one's emotional experiences. It is most characteristic of obsessive-compulsive personality disorder. Its opposite, known as impulsivity (here: an aspect of openness that shows a tendency to behave unusually or autistically), is characteristic of schizotypal and borderline personality disorders.[43]

Religiosity and spirituality
Openness to experience has mixed relationships with different types of religiosity and spirituality.[44] General religiosity has a weak association with low openness. Religious fundamentalism has a somewhat more substantial relationship with low openness. Mystical experiences occasioned by the use of psilocybin were found to increase openness significantly (see 'Drug Use,' below).

Gender
A study examining gender differences in big five personality traits in 55 nations found that across nations there were negligible average differences between men and women in openness to experience.[45] By contrast, across nations women were found to be significantly higher than men in average neuroticism, extraversion, agreeableness, and conscientiousness. In 8 cultures, men were significantly higher than women in openness, but in 4 cultures women were significantly higher than men. Previous research has found that women tend to be higher on the feelings facet of openness, whereas men tend to be higher on the ideas facet, although the 55 nation study did not assess individual facets.[45]

Dream recall
A study on individual differences in the frequency of dream recall found that openness to experience was the only big five personality trait related to dream recall. Dream recall frequency has also been related to similar personality traits, such as absorption and dissociation. The relationship between dream recall and these traits has been considered as evidence of the continuity theory of consciousness. Specifically, people who have vivid and unusual experiences during the day, such as those who are high in these traits, tend to have more memorable dream content and hence better dream recall.[46]

Sexuality
Openness is related to many aspects of sexuality. Men and women high in openness are more well-informed about sex, have wider sexual experience, stronger sex drives, and more liberal sexual attitudes.[32] In married couples, wives' but not husbands' level of openness is related to sexual satisfaction. This might be because open wives are more willing to explore a variety of new sexual experiences, leading to greater satisfaction for both spouses.[39] Compared to heterosexuals, people who are homosexual, asexual, or bisexual—particularly bisexuals—average higher in openness.[47]

Genes and physiology
Openness to experience, like the other traits in the five factor model, is believed to have a genetic component. Identical twins (who have the same DNA) show similar scores on openness to experience, even when they have been adopted into different families and raised in very different environments.[48] One genetic study with 86 subjects found Openness to experience related to the 5-HTTLPR polymorphism associated with the serotonin transporter gene.[49] A meta-analysis by Bouchard and McGue of four twin studies found openness to be the most heritable (mean = 57%) of the Big Five traits.[50]

Higher levels of openness have been linked to activity in the ascending dopaminergic system and the dorsolateral prefrontal cortex. Openness is the only personality trait that correlates with neuropsychological tests of dorsolateral prefrontal cortical function, supporting theoretical links among openness, cognitive functioning, and IQ.[51]

Geography
An Italian study found that people who lived on Tyrrhenian islands tended to be less open to experience than those living on the nearby mainland, and that people whose ancestors had inhabited the islands for twenty generations tended to be less open to experience than more recent arrivals. Additionally, people who emigrated from the islands to the mainland tended to be more open to experience than people who stayed on the islands, and than those who immigrated to the islands.[52]

People living in the eastern and western parts of the United States tend to score higher on openness to experience than those living in the Midwestern United States and the Southern United States. The highest average scores on openness are found in the states of New York, Oregon, Massachusetts, Washington, and California. Lowest average scores come from North Dakota, Wyoming, Alaska, Alabama, and Wisconsin.[53]

Drug use
Psychologists in the early 1970s used the concept of openness to experience to describe people who are more likely to use marijuana. Openness was defined in these studies as high creativity, adventuresomeness, internal sensation novelty seeking, and low authoritarianism. Several correlational studies confirmed that young people who score high on this cluster of traits are more likely to use marijuana.[54][55] More recent research has replicated this finding using contemporary measures of openness.[56]

Cross-cultural studies have found that cultures high in Openness to experience have higher rates of use of the drug ecstasy, although a study at the individual level in the Netherlands found no differences in openness levels between users and non-users.[39] Ecstasy users tended to be higher in extraversion and lower in conscientiousness than non-users.

A 2011 study found Openness (and not other traits) increased with the use of psilocybin, an effect that held even after 14 months.[57] The study found that individual differences in levels of mystical experience while taking psilocybin were correlated with increases in Openness. Participants who met criteria for a 'complete mystical experience'[note 1] experienced a significant mean increase in Openness, whereas those participants who did not meet the criteria experienced no mean change in Openness. Five of the six facets of Openness (all except Actions) showed this pattern of increase associated with having a mystical experience. Increases in Openness (including facets as well as total score) among those whose had a complete mystical experience were maintained more than a year after taking the drug. Participants who had a complete mystical experience changed more than 4 T-score points between baseline and follow up. By comparison, Openness has been found to normally decrease with ageing by 1 T-score point per decade.

See also
Trait theory
Boundaries of the mind
Notes
 Six aspects of mystical experience were assessed: unity, transcendence of time and space, ineffability and paradoxicality, sacredness, noetic quality, and positive mood. Participants were deemed to have a 'complete' mystical experience if they scored 60% or higher on all six aspects.[57]







Absorption (psychology)
https://en.wikipedia.org/wiki/Absorption_(psychology)#Measurement
Absorption is a disposition or personality trait in which a person becomes absorbed in their mental imagery, particularly fantasy.[1] This trait thus correlates highly with a fantasy-prone personality. The original research on absorption was by American psychologist Auke Tellegen.[2] The construct of absorption was developed in order to relate individual differences in hypnotisability to broader aspects of personality. Absorption has a variable correlation with hypnotisability (r = 0.13–0.89) perhaps because in addition to broad personality dispositions, situational factors play an important role in performance on tests of hypnotic susceptibility.[1] Absorption is one of the traits assessed in the Multidimensional Personality Questionnaire.

Measurement
Absorption is most commonly measured by the Tellegen Absorption Scale (TAS).[3] Several versions of this scale are available, the most recent being by Graham Jamieson, who provides a copy of his modified scale.[4] The TAS comprises nine content clusters or subscales:[5]

responsiveness to engaging stimuli
responsiveness to inductive stimuli
imagistic thought
ability to summon vivid and suggestive images
cross-modal experiences—e. g.: synesthesia
absorption in thoughts and imaginings
vivid memories of the past
episodes of expanded awareness
altered states of consciousness
A 1991 study by Glisky et al. concluded that responsiveness to the engaging or inductive stimuli subscales of the TAS were more strongly related to hypnotisability than were imagistic thought, episodes of expanded awareness, or absorption in thoughts and imaginings.[5]

A revised version of the TAS has been included in Tellegen's Multidimensional Personality Questionnaire (MPQ)[6] in which it is considered both a primary and a broad trait.[7] In the MPQ, absorption has two subscales called "sentient" and "prone to imaginative and altered states" respectively.

Tellegen has assigned copyright of TAS to the University of Minnesota Press (UMP). It was generally believed from the 1990s that the TAS was now in the public domain, and various improved versions were circulated. However, recently[when?] the UMP has reasserted its copyright, and regards these later versions to be unauthorised, and also disputes whether these versions are in fact improvements.[citation needed]

Relationship to other personality traits
Absorption is strongly correlated with openness to experience.[6] Studies using factor analysis have suggested that the fantasy, aesthetics, and feelings facets of the NEO PI-R Openness to Experience scale are closely related to absorption and predict hypnotisability, whereas the remaining three facet scales of ideas, actions, and values are largely unrelated to these constructs.[5] Absorption is unrelated to extraversion or neuroticism.[5] One study found a positive correlation between absorption and need for cognition.[8] Absorption has a strong relationship to self-transcendence in the Temperament and Character Inventory.[9]

Emotional experience
Absorption can facilitate the experience of both positive and negative emotions. Positive experiences facilitated by absorption include the enjoyment of music, art, and natural beauty (e.g. sunsets) and pleasant forms of daydreaming. Absorption has also been linked to forms of maladjustment, such as nightmare frequency and anxiety sensitivity (fear of one's own anxiety symptoms), and dissociative symptoms. Absorption may act to amplify minor somatic symptoms, leading to an increased risk of conditions associated with hypersensitivity to internal bodily sensations, such as somatoform disorders and panic disorder. People may have a particular risk of the aforementioned problems when they are prone to both high absorption and to personality traits associated with negative emotionality.[10]

Altered states of consciousness
A core feature of absorption is an experience of focused attention wherein: "objects of absorbed attention acquire an importance and intimacy that are normally reserved for the self and may, therefore, acquire a temporary self-like quality. These object identifications have mystical overtones."[2] This capacity for focused attention facilitates the experience of altered states of consciousness. In addition to individual differences in hypnotizability, absorption is associated with differential responses to other procedures for inducing altered states of consciousness,[11] including meditation, marijuana use, and biofeedback. A review of studies on differential response to the drug psilocybin found that absorption had the largest effect of all the psychological variables assessed on the intensity of individual experiences of altered states of consciousness. Absorption was strongly associated with overall consciousness alteration and with mystical-type experiences and visual effects induced by psilocybin.[12] Researchers have suggested that individual differences in both absorption and responsiveness to hallucinogenic drugs could be related to the binding potential of serotonin receptors (specifically 5-HT2A) which are the main site of action of classic hallucinogens, such as LSD and psilocybin.[12][13]

Dream recall
Research has found that frequency of dream recall is associated with absorption and related personality traits, such as openness to experience and proneness to dissociation. A proposed explanation is the continuity model of human consciousness. This model proposes that people who are prone to vivid and unusual experiences during the day, such as fantasy and daydreaming, will tend to have vivid and memorable dream content, and hence will be more likely to remember their dreams.[14]

See also
Boundaries of the mind
Depersonalization and derealization
Fantasy prone personality
Fantasy (psychology)
Flow (psychology)
Paracosm
Suggestibility






Need for cognition
https://en.wikipedia.org/wiki/Need_for_cognition#History
The need for cognition (NFC), in psychology, is a personality variable reflecting the extent to which individuals are inclined towards effortful cognitive activities.[1][2]

Need for cognition has been variously defined as "a need to structure relevant situations in meaningful, integrated ways" and "a need to understand and make reasonable the experiential world".[3] Higher NFC is associated with increased appreciation of debate, idea evaluation, and problem solving. Those with a high need for cognition may be inclined towards high elaboration. Those with a lower need for cognition may display opposite tendencies, and may process information more heuristically, often through low elaboration.[4]

Need for cognition is closely related to the five factor model domain openness to experience, typical intellectual engagement, and epistemic curiosity (see below).


History
Cohen, Stotland and Wolfe (1955),[3] in their work on individual differences in cognitive motivation, identified a "need for cognition" which they defined as "the individual's need to organize his experience meaningfully", the "need to structure relevant situations in meaningful, integrated ways", and "need to understand and make reasonable the experiential world" (p. 291). They argued that, if this "need" were frustrated, it would generate "feelings of tension and deprivation" that would instigate "active efforts to structure the situation and increase understanding" (p. 291), though the particular situations arousing and satisfying the need may vary (p. 291). Cohen argued that even in structured situations, people high in NFC see ambiguity and strive for higher standards of cognitive clarity.

Cohen and colleagues[3][5] themselves identified multiple prior identifications of need for cognition, citing works by Murphy, Maslow, Katz, Harlow and Asch.[6][7][8][9][10] They[3] distinguished their concept from the apparently similar "intolerance of ambiguity" proposed by Frenkel-Brunswik,[11] arguing that NFC does not reflect the need to experience an integrated and meaningful world. Contemporary research suggests that Cohen's conception of need is, however, closer to tolerance of ambiguity, need for structure, or need for cognitive closure than to current ideas of need for cognition. For instance, studies using Cohen's measures indicated avoidance of ambiguity and a need to get "meaning" even if this meant relying on heuristics or expert advice rather than careful scrutiny of incoming information.[12]

Building on this work, Cacioppo therefore moved away from drive-reduction toward measuring individual differences in the self-reward potential of cognitive activity,[13]:988 stressing (p. 118) that they were using the word need in the statistical sense of a "likelihood or tendency", rather than in the rudimentary biological sense of "tissue deprivation", they defined the need for cognition as an individual's tendency to "engage in and enjoy thinking" (p. 116) and the tendency to "organize, abstract, and evaluate information" (p. 124)—or, variously, as a stable, but individually different "tendency to engage in and enjoy effortful cognitive endeavors", or an "intrinsic motivation to engage in effortful cognitive endeavors... and exercise their mental faculties",[12]:197 or an "intrinsic motivation for effortful thought".[13]:997

Cacioppo and Petty (1982) created their own 34-item scale to measure the need for cognition. Two years later, an 18-item version was published[14] and in most of the cases reported in the subsequent literature it is this amended scale that is administered. Recently, a 6-item version of the need for cognition scale was proposed.[15]

Features
People high in the need for cognition are more likely to form their attitudes by paying close attention to relevant arguments (i.e., via the central route to persuasion), whereas people low in the need for cognition are more likely to rely on peripheral cues, such as how attractive or credible a speaker is. People low in need for cognition are also more likely to rely on stereotypes alone in judging other people than those high in need for cognition.[16]

Psychological research on the need for cognition has been conducted using self-report tests, where research participants answered a series of statements such as "I prefer my life to be filled with puzzles that I must solve" and were scored on how much they felt the statements represented them. The results have suggested that people who are high in the need for cognition scale score slightly higher in verbal intelligence tests but no higher in abstract reasoning tests.[12]

Research has concluded that individuals high in NFC are less likely to attribute higher social desirability to more attractive individuals or to mates.[17] College students high in NFC report higher life satisfaction.[18]

A study on lucid dreaming found that frequent and occasional lucid dreamers scored higher on NFC than non-lucid dreamers.[16][19] This suggests there is continuity between waking and dreaming cognitive styles. Researchers have argued that this is because self-reflectiveness or self-focused attention is heightened in lucid dreams and also is associated with greater need for cognition.

Relationship to intelligence
A number of studies have found moderate correlations between NFC and measures of verbal intelligence. One study found that need for cognition had a moderate positive correlation with fluid intelligence (reasoning ability, particularly verbal, and to a lesser extent numeric and figural reasoning), and a weaker correlation with crystallised intelligence (knowledge), which had much smaller positive correlations.[20]

Dual-system theory
NFC has been incorporated into Epstein's dual-system theory of personality called cognitive-experiential self-theory.[16] The theory proposes that people have two information processing systems, a rational system and an experiential system. The rational system is thought to be logical, verbal and relatively unemotional. The experiential system is thought to be intuitive, based on images and highly reliant on emotion. A modified version of the Need for Cognition scale has been used to assess individual differences in the rational system, whereas the experiential system has been assessed using a scale called Faith in Intuition.

Research shows that the two systems are uncorrelated and hence independent of each other. That is individuals either high or low in need for cognition may also make use of their intuitions in forming judgments. In fact, individuals high and low in need for cognition respectively may make use of their intuitions in differing ways. When individuals give little thought to their judgments these judgments may be influenced directly by emotions, intuitions, and images in an automatic way. On the other hand, those who are high in need for cognition tend to give more thought to their judgments, and the thoughts generated may be indirectly biased by their emotions, intuitions, and images. Hence individuals high in need for cognition are not necessarily more "rational" than those low in this trait, if their faith in intuition is also high. Rather, their "irrational" intuitions tend to be given more thoughtful elaboration than those who are low in need for cognition and yet also high in faith in intuition.[16]

Biases and decision making
NFC is associated with the amount of thought that goes into making a decision. Both high and low levels of the trait may be associated with particular biases in judgment. People low in need for cognition tend to show more bias when this bias is due to relying on mental shortcuts, that is, heuristic biases. People high in this trait tend to be more affected by biases that are generated by effortful thought.[16]

False memories
High need for cognition is associated with a greater susceptibility to the creation of false memories associated with certain learning tasks. In a commonly used research paradigm, participants are asked to memorise a list of related words. Recognition is tested by having them pick out learned words from a set of studied and non-studied items. Certain non-studied items are conceptually related to studied items (e.g., chair if the original list contained table and legs). People high in NFC are more likely to show false memory for these lures, due to their greater elaboration of learned items in memory as they are more likely to think of semantically related (but non-studied) items.[16]

Halo effects
A bias associated with low need for cognition is the halo effect, a phenomenon in which attractive or likeable people tend to be rated as superior on a variety of other characteristics (e.g., intelligence). People low on NFC are more likely to rely on stereotypes rather than individual features of a person when rating a novel target. People high in NFC still show a halo effect however, albeit a smaller one, perhaps because their thoughts about the target are still biased by the target's attractiveness.[16]

Relationship with personality traits
Related constructs
NFC has been found to be strongly associated with a number of independently developed constructs, specifically epistemic curiosity, typical intellectual engagement, and openness to ideas.[21]

Epistemic curiosity can be defined as “desire for knowledge that motivates individuals to learn new ideas, eliminate information-gaps, and solve intellectual problems”.[21]
Typical intellectual engagement was proposed by Goff and Ackerman (1992) and was defined as a "personality construct that represents an individual’s aversion or attraction to tasks that are intellectually taxing".[21]

Openness to ideas is a facet of openness to experience associated with "aspects of being open minded, engaging in unconventional thoughts, and solving problems and thinking as an end in itself".[21]
Based on the very large positive correlation between NFC and typical intellectual engagement (r = .78) it has been argued that they may be essentially the same construct.[22]
Further studies have found that NFC, typical intellectual engagement, epistemic curiosity, and openness to ideas were all strongly intercorrelated. Factor analysis showed that measures of all four constructs loaded strongly onto a single factor suggesting they all share a common conceptual basis.[21]
The author of this study argued that although the four constructs lack discriminant validity they are not necessarily all conceptually equivalent as each one may emphasise particular aspects of functioning more than others.
A study comparing need for cognition and openness to ideas using confirmatory factor analysis found that although the two constructs were very strongly related they were not redundant. NFC and openness to ideas had somewhat contrasting correlation patterns with other personality traits.
For example, NFC was more strongly correlated with emotional stability and activity than openness to ideas, whereas openness to ideas was more strongly correlated with novelty and experience seeking than NFC.[20]
Other personality characteristics
Within the Big Five model of personality, NFC has been found to relate positively to openness to experience most strongly and to a more moderate extent to conscientiousness, particularly the competence and achievement striving facets, and to relate inversely to an extent to neuroticism.[20][23][24]
Regarding Cloninger's temperament traits, NFC has been related negatively to harm avoidance and positively to persistence and was unrelated to reward dependence or novelty seeking.[20]
NFC has only a weak positive relationship with sensation seeking, specifically a weak correlation with the boredom susceptibility subscale but no relationship to the other subscales.[20]
NFC has a modest inverse correlation with negative affect. NFC had no significant correlation with a broad measure of overall positive affect, although it was positively correlated with feelings of activity, interest, and alertness.[20]
NFC has been positively related to other, theoretically unrelated, personality characteristics such as self-esteem, masculine sex-role attitudes, and absorption.
NFC is negatively related to social anxiety (more strongly in females than males).[25][26]
It has been speculated that people who more carefully analyse their world feel a greater sense of mastery, and hence greater self-esteem, although it is also possible that higher self-esteem may lead to greater motivation to engage in thinking.
NFC may be related to masculine sex-role due to the stereotype associating masculinity with rationality.
Regarding absorption, people high in NFC may find it easier to devote their attentional processes exclusively to intellectual tasks.
Regarding social anxiety, it is possible that greater attention to cognitive activity may be associated with reduced attention to social cues associated with negative evaluation.[25]
NFC is positively related to stimulation, self-direction, and universalism values, and negatively to security and conformity values.[15]
Consumers
Research has shown that high-need-for-cognition consumers prefer open-ended comparative advertising that allows consumers to decide which brand is best.[27]

NFC has also offered insights into how people respond to alternative web site designs. Martin, Sherrard and Wentzel (2005) demonstrate that high-need for cognition people prefer web sites with high verbal complexity (more in-depth information) and low visual complexity (static images rather than animations).[28]

See also
Need theory
Need for power
Need for affiliation
Need for achievement
Goal orientation





Fantasy prone personality
https://en.wikipedia.org/wiki/Fantasy_prone_personality#History
Fantasy prone personality (FPP) is a disposition or personality trait in which a person experiences a lifelong extensive and deep involvement in fantasy.[1] This disposition is an attempt, at least in part, to better describe "overactive imagination" or "living in a dream world".[2] An individual with this trait (termed a fantasizer) may have difficulty differentiating between fantasy and reality and may experience hallucinations, as well as self-suggested psychosomatic symptoms. Closely related psychological constructs include daydreaming, absorption and eidetic memory.


History
American psychologists Sheryl C. Wilson and Theodore X. Barber first identified FPP in 1981, said to apply to about 4% of the population.[3] Besides identifying this trait, Wilson and Barber reported a number of childhood antecedents that likely laid the foundation for fantasy proneness in later life, such as, "a parent, grandparent, teacher, or friend who encouraged the reading of fairy tales, reinforced the child's ... fantasies, and treated the child's dolls and stuffed animals in ways that encouraged the child to believe that they were alive." They suggested that this trait was almost synonymous with those who responded dramatically to hypnotic induction, that is, "high hypnotizables".[1] The first systematic studies were conducted in the 1980s by psychologists Judith Rhue and Steven Jay Lynn.[1] Later research in the 1990s by Deirdre Barrett at Harvard confirmed most of these characteristics of fantasy prone people, but she also identified another set of highly hypnotizable subjects who had had traumatic childhoods and who identified fantasy time mainly by "spacing out".[4]

Characteristic features
Fantasy prone persons are reported to spend up to half (or more) of their time awake fantasizing or daydreaming, and will often confuse or mix their fantasies with their real memories. They also report out-of-body experiences, and other similar experiences that are interpreted by the some fantasizers as psychic (parapsychological) or mystical.[3]

A paracosm is an extremely detailed and structured fantasy world often created by extreme or compulsive fantasizers.[5]

Wilson and Barber listed numerous characteristics in their pioneer study, which have been clarified and amplified in later studies.[6][7] These characteristics include some or many of the following experiences:

excellent hypnotic subject (most but not all fantasizers)
having imaginary friends in childhood
fantasizing often as child
having an actual fantasy identity
experiencing imagined sensations as real
having vivid sensory perceptions
receiving sexual satisfaction without physical stimulation
Fantasy proneness is measured by the "inventory of childhood memories and imaginings" (ICMI)[8] and the "creative experiences questionnaire (CEQ).[9]

Developmental pathways
Fantasizers have had a large exposure to fantasy during early childhood.[1][6] This over-exposure to childhood fantasy has at least three important causes:

Parents or caregivers who indulged in their child's imaginative mental or play environment during childhood.
People with fantasy prone personalities are more likely to have had parents, or close family members that joined the child in believing toys are living creatures. They may also have encouraged the child who believed they had imaginary companions, read fairytales all through childhood and re-enacted the things they had read. People who, at a young age, were involved in creative fantasy activities like piano, ballet, and drawing are more likely to obtain a fantasy prone personality.[citation needed] Acting is also a way for children to identify as different people and characters which can make the child prone to fantasy-like dreams as they grow up.[citation needed] This can cause the person to grow up thinking they have experienced certain things and they can visualize a certain occurrence from the training they obtained while being involved in plays.[citation needed]

People have reported that they believed their dolls and stuffed animals were living creatures and that their parents encouraged them to indulge in their fantasies and daydreams.[9] For example, one subject in Barrett's study said her parents' standard response to her requests for expensive toys was, "You could take this (household object) and with a little imagination, it would look just like (an expensive gift)."[10]

Exposure to abuse, physical or sexual, such that fantasizing provides a coping or escape mechanism.
Exposure to severe loneliness and isolation, such that fantasizing provides a coping or escape mechanism from the boredom.
Regarding psychoanalytic interpretations, Sigmund Freud stated that "unsatisfied wishes are the driving power behind fantasies, every separate fantasy contains the fulfillment of a wish, and improves an unsatisfactory reality." This shows childhood abuse and loneliness can result in people creating a fantasy world of happiness in order to fill the void.[1]

Related constructs
Openness to experience is one of the five domains that are used to describe human personality in the Five Factor Model.[11] Openness involves six facets, or dimensions, including active imagination (fantasy), aesthetic sensitivity, attentiveness to inner feelings, preference for variety, and intellectual curiosity. Thus, fantasy prone personality correlates with the fantasy facet of the broader personality trait Openness to Experience.

Absorption is a disposition or personality trait in which a person becomes absorbed in his or her mental imagery, particularly fantasy.[12] The original research on absorption was by American psychologist Auke Tellegen.[13] Roche reports that fantasy proneness and absorption are highly correlated.[12] Fantasizers become absorbed within their vivid and realistic mental imagery.

Dissociation is a psychological process involving alterations in personal identity or sense of self. These alterations can include: a sense that one's self or the world is unreal (derealization and depersonalization); a loss of memory (amnesia); forgetting one's identity or assuming a new self (fugue); and fragmentation of identity or self into separate streams of consciousness (dissociative identity disorder, formerly termed multiple personality disorder). Dissociation is measured most often by the Dissociative Experiences Scale. Several studies have reported that dissociation and fantasy proneness are highly correlated. This suggests the possibility that the dissociated selves are merely fantasies, for example, being a coping response to trauma. However, a lengthy review of the evidence concludes that there is strong empirical support for the hypothesis that dissociation is caused primarily and directly by exposure to trauma, and that fantasy is of secondary importance.[14]

Health implications
False pregnancy (pseudocyesis) - A high number of female fantasizers – 60% of the women asked in the Wilson-Barber study – reported that they have had a false pregnancy (pseudocyesis) at least once. They believed that they were pregnant, and they had many of the symptoms. In addition to amenorrhea (stoppage of menstruation), they typically experienced at least four of the following: breast changes, abdominal enlargement, morning sickness, cravings, and "fetal" movements. Two of the subjects went for abortions, following which they were told that no fetus had been found. All of the other false pregnancies terminated quickly when negative results were received from pregnancy tests.[3]

Maladaptive daydreaming is a proposed psychological disorder, a fantasy activity that replaces human interaction and interferes with work, relationships and general activities. Those who suffer from this pathology daydream or fantasize excessively, assuming roles and characters in scenarios created to their liking. People who suffer from excessive daydreaming are aware that the scenarios and characters of their fantasies are not real and have the ability to determine what is real, elements that differentiate them from those suffering from schizophrenia.[15]

A 2011 study reported on 90 excessive, compulsive or maladaptive fantasizers who engaged in extensive periods of highly structured immersive imaginative experiences. They often reported distress stemming from three factors: difficulty in controlling their fantasies that seemed overwhelming; concern that the fantasies interfered in their personal relationships; and intense shame and exhaustive efforts to keep this "abnormal" behaviour hidden from others.[16]

See also
Suggestibility
The Secret Life of Walter Mitty






Hypnotic susceptibility
https://en.wikipedia.org/wiki/Hypnotic_susceptibility#Hypnotic_depth_scales
Hypnotic susceptibility measures how easily a person can be hypnotized. Several types of scales are used; however, the most common are the Harvard Group Scale of Hypnotic Susceptibility and the Stanford Hypnotic Susceptibility Scales.

The Harvard Group Scale (HGSS), as the name implies, is administered predominantly to large groups of people while the Stanford Hypnotic Susceptibility Scale (SHSS) is administered to individuals. No scale can be seen as completely reliable due to the nature of hypnosis. It has been argued that no person can be hypnotized if they do not want to be; therefore, a person who scores very low may not want to be hypnotized, making the actual test score averages lower than they otherwise would be.

Hypnotic depth scales
Hypnotic susceptibility scales, which mainly developed in experimental settings, were preceded by more primitive scales, developed within clinical practice, which were intended to infer the "depth" or "level" of "hypnotic trance" on the basis of various subjective, behavioural or physiological changes.

The Scottish surgeon James Braid (who introduced the term "hypnotism"), attempted to distinguish, in various ways, between different levels of the hypnotic state. Subsequently, the French neurologist Jean-Martin Charcot also made a similar distinction between what he termed the lethargic, somnambulistic, and cataleptic levels of the hypnotic state.

However, Ambroise-Auguste Liébeault and Hippolyte Bernheim introduced more complex hypnotic "depth" scales, based on a combination of behavioural, physiological and subjective responses, some of which were due to direct suggestion and some of which were not. In the first few decades of the 20th century, these early clinical "depth" scales were superseded by more sophisticated "hypnotic susceptibility" scales based on experimental research. The most influential were the Davis-Husband and Friedlander-Sarbin scales developed in the 1930s.

Hypnotic susceptibility scales
Friedlander-Sarbin Scale
A major precursor of the Bradford Scales, the Friedlander-Sarbin scale was developed in 1754 by Theodore R. Sarbin and consisted of similar test items to those used in subsequent experimental scales.

Stanford Scales
The Stanford Scale was developed by André Muller Weitzenhoffer and Ernest R. Hilgard in 1959. The Scale consists of three Forms: A, B, and C. Similar to the Harvard Group Scale, each Form consists of 12 items of progressive difficulty and usually takes fifty minutes to complete. Each form consists of motor and cognitive tasks but vary in their respective intended purpose. The administrator scores each form individually.

Form A
Based upon the scale developed by Joseph Friedlander and Theodore Sarbin (1938), this form was developed to measure susceptibility to hypnosis with items increasing in difficulty in order to yield a score. The higher the score, the more responsive one is to hypnosis. Following a standardized hypnotic induction, the hypnotized individual is given suggestions pertaining to the list below.

Item Number	Test Suggestion and Responses
1	Postural Sway
2	Eye Closure
3	Hand Lowering (left)
4	Immobilization (right arm)
5	Finger Lock
6	Arm Rigidity (left arm)
7	Hands Moving Together
8	Verbal Inhibition (name)
9	Hallucination (fly)
10	Eye catalepsy
11	Post-hypnotic (changes chairs)
12	Amnesia
Form B
Form B was designed to be used as a follow-up to Form A when doing experiments involving a second session of hypnosis. The items are similar but are changed somewhat (e.g. the use of the opposite hand in a particular item). The changes were made to "prevent memory from the first exerting too great an influence upon the recall of specific tasks..."[1]

Form C
Created a few years after Forms A and B, Form C contains some items from Form B, but includes more difficult items for "when subjects are being selected for advanced tests in which knowledge of their capacity to experience more varied items is required" (pgs v-vi Weitzenhoffer & Hilgard 1962). Following a standardized hypnotic induction, the hypnotized individual is given suggestions pertaining to the list below.

Item Number	Test Suggestion and Responses
0	Eye Closure (not scored)
1	Hand Lowering (right hand)
2	Moving Hands Apart
3	Mosquito Hallucination
4	Taste Hallucination
5	Arm Rigidity (right arm)
6	Dream
7	Age Regression (school)
8	Arm Immobilization
9	Anosmia to Ammonia
10	Hallucinated Voice
11	Negative Visual Hallucination (Three Boxes)
12	Post-Hypnotic Amnesia
In more modern experiments, a scent such as peppermint has been used in place of ammonia for Item 9.

Harvard Group Scale
Ronald Shor and Emily Carota Orne developed the Harvard Group Scale in 1962. It consists of 12 items of progressive difficulty (as defined, psychometrically, by the percentage of subjects in a normative sample that reports experiencing each particular item) and usually takes around forty-five minutes to complete. The items usually consist of motor tasks and cognitive tasks with the motor tasks being easier to complete. The average score is 5 out of 12. The test is self-scored leaving it open to criticism concerning the validity of the scores.

Hypnotic Induction Profile
The Hypnotic Induction Profile (HIP) or the eye roll test, first proposed by Herbert Spiegel,[2] is a simple test to loosely determine if a person is susceptible to hypnosis. A person is asked to roll their eyes upward. The degree to which the iris and cornea are seen is measured. The less of these parts of the eye observed, the more hypnotically susceptible a person is. Research has shown that the scale may not carry as strong a relationship with other hypnotic scales as originally thought[citation needed]. More recent research has found significant correlations with absorption scales,[3] and dissociative experiences.[4]

Other scales
Many other tests are not widely used because they are usually seen as less reliable than the Stanford Scale and Harvard Group Scale. Many professionals think that these tests produce results because they involve attentional control and a certain level of concentration is required to be hypnotized.

Conversely, concentration can be something induced through the use of hypnosis instead of a "fuel" used to get hypnosis running.

Susceptibility
Individuals of extremely high hypnotizability tend to have distinctive characteristics outside of hypnosis. In 1981, Sherl Wilson and T X Barber reported that most of a group of extremely high hypnotizables who they termed "fantasizers". The fantasizers exhibited a cluster of traits consisting of: 1) fantasizing much of the time, 2) reporting their imagery was as vivid as real perceptions, 3) having physical responses to their imagery, 4) having an earlier than average age for first childhood memory, 5) recalling "imaginary playmates" from childhood, and 6) having grown up with parents who encouraged imaginative play.[5] In 1991, Deirdre Barrett examined a larger group of extremely high hypnotizables and confirmed that about 60% fit Barber and Wilson's characterization of fantasizers while 40% were what she termed "dissociaters" who: 1) experienced daydreaming mostly as "spacing out" and not remembering what had been going on for periods of time, 2) had later than average ages for first memories, and 3) had parents who had been harshly punitive and/or who had experienced other childhood traumas. Fantasizers tended to experience hypnosis as being much like other imaginative activities while dissociaters reported it was unlike anything they'd ever experienced.[6] Individuals with dissociative identity disorder have the highest hypnotizability of any clinical group, followed by those with posttraumatic stress disorder.[7][8][9]

See also
Fantasy prone personality
Nancy School
The Salpêtrière School of Hypnosis
Suggestibility § Hypnosis






Elaboration likelihood model
https://en.wikipedia.org/wiki/Elaboration_likelihood_model#Origin
The elaboration likelihood model (ELM) of persuasion[1] is a dual process theory describing the change of attitudes. The ELM was developed by Richard E. Petty and John Cacioppo in 1980.[2] The model aims to explain different ways of processing stimuli, why they are used, and their outcomes on attitude change. The ELM proposes two major routes to persuasion: the central route and the peripheral route.

Under the central route, persuasion will likely result from a person's careful and thoughtful consideration of the true merits of the information presented in support of an advocacy.[3] The central route involves a high level of message elaboration in which a great amount of cognition about the arguments are generated by the individual receiving the message. The results of attitude change will be relatively enduring, resistant, and predictive of behavior.[4]
On the other hand, under the peripheral route, persuasion results from a person's association with positive or negative cues in the stimulus or making a simple inference about the merits of the advocated position. The cues received by the individual under the peripheral route are generally unrelated to the logical quality of the stimulus. These cues will involve factors such as the credibility or attractiveness of the sources of the message, or the production quality of the message.[5] The likelihood of elaboration will be determined by an individual's motivation and ability to evaluate the argument being presented.[4]
Examples: Routes of ELM (central and peripheral)
Examples: Routes of ELM (central and peripheral)
For instance, as the picture shows, a person is considering buying a car and he is persuaded by his friend to buy a certain model. If he processes his friend’s message by taking the central route, he will carefully evaluate his friend’s argument and rationally think about the cost, reliability, fuel efficiency of this model. Once he generates favorable thought along the central route, the ELM predicts he will accept the message and the result is enduring. However, if he uses the peripheral route to process the message, he will be likely to buy the car simply because he likes the color, or a famous idol on television “asks” him to buy this car. Compared to the central route’s effect, thoughts generated from the peripheral route will be relatively short-lasting.

Origin
Elaboration likelihood model is a general theory of attitude change. According to the theory's developers Richard E. Petty and John T. Cacioppo, they intended to provide a general "framework for organizing, categorizing, and understanding the basic processes underlying the effectiveness of persuasive communications".[4]

The study of attitudes and persuasion began as the central focus of social psychology, featured in the work of psychologists Gordon Allport (1935) and Edward Alsworth Ross (1908). Allport described attitudes as "the most distinctive and indispensable concept in contemporary social psychology".[6] Considerable research was devoted to the study of attitudes and persuasion from the 1930s through the late 1970s. These studies embarked on various relevant issues regarding attitudes and persuasion, such as the consistency between attitudes and behaviors[7][8] and the processes underlying attitude/behavior correspondence.[9] However, Petty and Cacioppo noticed a major problem facing attitude and persuasion researchers to the effect that there was minimal agreement regarding "if, when, and how the traditional source, message, recipient, and channel variables affected attitude change".[10] Noticing this problem, Petty and Cacioppo developed the elaboration likelihood model as their attempt to account for the differential persistence of communication-induced attitude change. Petty and Cacioppo suggested that different empirical findings and theories on attitude persistence could be viewed as stressing one of two routes to persuasion which they presented in their elaboration likelihood model.

Core ideas
There are four core ideas to the ELM.[2]

The ELM argues that when a person encounters some form of communication, they can process this communication with varying levels of thought (elaboration), ranging from a low degree of thought (low elaboration) to a high degree of thought (high elaboration). Factors that contribute to elaboration includes different motivations, abilities, opportunities, etc.
The ELM predicts that there are a variety of psychological processes of change that operate to varying degrees as a function of a person's level of elaboration. On the lower end of the continuum are the processes that require relatively little thought, including classical conditioning and mere exposure . On the higher end of the continuum are processes that require relatively more thought, including expectancy-value and cognitive response processes . When lower elaboration processes predominate, a person is said to be using the peripheral route, which is contrasted with the central route, involving the operation of predominantly high elaboration processes.
The ELM predicts that the degree of thought used in a persuasion context determines how consequential the resultant attitude becomes. Attitudes formed via high-thought, central-route processes will tend to persist over time, resist persuasion, and be influential in guiding other judgments and behaviors to a greater extent than attitudes formed through low-thought, peripheral-route processes.
The ELM also predicts that any given variable can have multiple roles in persuasion, including acting as a cue to judgment or as an influence on the direction of thought about a message. The ELM holds that the specific role by which a variable operates is determined by the extent of elaboration.
Assumptions
Assumption 1: “People are motivated to hold correct attitudes”

Assumption 2: “Although people want to hold correct attitudes, the amount and nature of issue relevant elaboration in which they are willing or able to engage to evaluate a message vary with individual and situational factors”

Assumption 3: “Variables can affect the amount and direction of attitude change by:

Serving as persuasive arguments;

Serving as peripheral cues; and/or

Affecting the extent or direction of issue and argument elaboration”

Assumption 4: “Variables affecting motivation and/or ability to process a message in a relatively objective manner can do so by either enhancing or reducing argument scrutiny”

Assumption 5: "Variables affecting message processing in a relatively biased manner can produce either a positive (favorable) or negative (unfavorable) motivational and/or ability bias to the issue-relevant thoughts attempted”

Assumption 6: "As motivation and/or ability to process arguments is decreased, peripheral cues become relatively more important determinants of persuasion. Conversely, as argument scrutiny is increased, peripheral cues become relatively less important determinants of persuasion."

Assumption 7: "Attitude changes that result mostly from processing issue-relevant arguments (central route) will show greater temporal persistence, greater prediction of behavior and greater resistance to counter-persuasion than attitude changes that result mostly from peripheral cues." [11]

Routes
The elaboration likelihood model proposes two distinct routes for information processing: a central route and a peripheral route. The ELM holds that there are numerous specific processes of change on the "elaboration continuum" ranging from low to high. When the operation processes at the low end of the continuum determine attitudes, persuasion follows the peripheral route. When the operation processes at the high end of the continuum determine attitudes, persuasion follows the central route.[2]

Central route

ELM diagram
The central route is used when the message recipient has the motivation as well as the ability to think about the message and its topic. When people process information centrally, the cognitive responses, or elaborations, will be much more relevant to the information, whereas when processing peripherally, the individual may rely on heuristics and other rules of thumb when elaborating on a message. Being at the high end of the elaboration continuum, people assess object-relevant information in relation to schemas that they already possess, and arrive at a reasoned attitude that is supported by information.[2] It is important to consider two types of factors that influence how and how much one will elaborate on a persuasive message. The first are the factors that influence our motivation to elaborate, and the second are the factors that influence our ability to elaborate. Motivation to process the message may be determined by a personal interest in the subject of the message,[12] or individual factors like the need for cognition. However, if the message recipient has a strong, negative attitude toward the position proposed by the message, a boomerang effect (an opposite effect) is likely to occur. That is, they will resist the message and may move away from the proposed position.[13] Two advantages of the central route are that attitude changes tend to last longer and are more predictive of behavior than the changes from the peripheral route.[14] Overall, as people’s motivation and ability to process the message and develop elaborations decreases, the peripheral cues present in the situation become more important in their processing of the message.

Peripheral route
The peripheral route is used when the message recipient has little or no interest in the subject and/or has a lesser ability to process the message. Being at the low end of the elaboration continuum, recipients do not examine the information as thoroughly.[2] With the peripheral route, they are more likely to rely on general impressions (e.g. "this feels right/good"), early parts of the message, their own mood, positive and negative cues of the persuasion context, etc. Because people are "cognitive misers," looking to reduce mental effort, they often use the peripheral route and thus rely on heuristics (mental shortcuts) when processing information. When an individual is not motivated to centrally process an issue because they lack interest in it, or if the individual does not have the cognitive ability to centrally process the issue, then these heuristics can be quite persuasive. Robert Cialdini's Principles of Social Influence (1984), which include commitment, social proof, scarcity, reciprocation, authority, as well as liking the person who is persuading you, are some examples of frequently used heuristics.[15] In addition, credibility can also be used as a heuristic in peripheral thinking because when a speaker is seen as having a higher credibility, then the listener may be more likely to believe the message. Credibility is a low-effort and somewhat reliable way to give us an answer of what to decide and/or believe without having to put in much work to think it through. Peripheral route processing involves a low level of elaboration. The user isn’t scrutinizing the message for its effectiveness.

If these peripheral influences go completely unnoticed, the message recipient is likely to maintain their previous attitude towards the message. Otherwise, the individual will temporarily change his attitude towards it. This attitude change can be long-lasting, although durable change is less likely to occur than it is with the central route.[13][16]

Determinants of route
The two most influential factors that affect which processing route an individual uses are motivation (the desire to process the message; see Petty and Cacioppo, 1979) and ability (the capability for critical evaluation; see Petty, Wells and Brock, 1976). The extent of motivation is in turn affected by attitude and personal relevance. Individuals' ability for elaboration is affected by distractions, their cognitive busyness (the extent to which their cognitive processes are engaged by multiple tasks[17]), and their overall knowledge.

Motivation
Attitudes towards a message can affect motivation. Drawing from cognitive dissonance theory, when people are presented with new information (a message) that conflicts with existing beliefs, ideas, or values, they will be motivated to eliminate the dissonance, in order to remain at peace with their own thoughts.[18] For instance, people who want to believe that they will be academically successful may recall more of their past academic successes than their failures. They may also use their world knowledge to construct new theories about how their particular personality traits may predispose them to academic success (Kunda, 1987). If they succeed in accessing and constructing appropriate beliefs, they may feel justified in concluding that they will be academically successful, not realizing that they also possess knowledge that could be used to support the opposite conclusion.[18]


Motivation and ability
Personal relevance can also affect an individual's degree of motivation. For instance, undergraduate students were told of a new exam policy that would take effect either one or ten years later. The proposal of the new exam policy was either supported by strong or weak arguments. Those students who were going to personally be affected by this change would think more about the issue than those students who were not going to be personally affected.[2]

An additional factor that affects degree of motivation is an individual's need for cognition. Individuals who take greater pleasure in thinking than others tend to engage in more effortful thinking because of its intrinsic enjoyment for them, regardless of the importance of the issue to them or the need to be correct.[2]

Ability
Ability includes the availability of cognitive resources (for instance, the absence of time pressures or distractions) and the relevant knowledge needed to examine arguments. Distractions (for instance, noise in a library where a person is trying to read a journal article) can decrease a person's ability to process a message. Cognitive busyness, which can also serve as a distraction, limits the cognitive resources otherwise available for the task at hand (assessing a message). Another factor of ability is familiarity with the relevant subject. Though they might not be distracted nor cognitively busy, their insufficiency in knowledge can hinder people's engagement in deep thinking.

Opportunity
Some psychologists lump opportunity in with Ability as it primarily relates to the time available to the individual to make a decision. The popular train of thought today is that this is a category of its own.[19] Factors related to ability to think includes: time pressure, message repetition, distraction, knowledge, fatigue, social pressure, etc.

Message repetition enables more argument scrutiny. If the argument is strong, repetition leads to more change in attitude. For example, in marketing research, advertising leads to a favorable brand attitude as long as the arguments are strong and tedium is not induced.[20] However, it is noticeable that repetition does not always lead to more attitude change. The effect of repetition also depends on other factors such as content of argument, and previous knowledge and attitude.

When Distraction is high, elaboration is lower due to limited mental power. In this case, people are less influenced by the quality of the argument in a persuasive message. Rather, they focus on simple source cues.[21] Keeping other factors constant, a stronger argument leads to more attitude change when distraction is low; and a weak argument could lead to more attitude change when distraction is high.

Variables
A variable is essentially anything that can increase or decrease the persuasiveness of a message. Attractiveness, mood and expertise are just a few examples of variables that can influence persuasiveness. Variables can serve as arguments or peripheral cues to affect the persuasiveness of a message. According to the ELM, changing the quality of an argument or providing a cue in a persuasive context could influence the persuasiveness of a message and affect receivers’ attitudes.[11]


Figure I shows under high elaboration arguments have strong impact on the persuasiveness. Figure II shows under low elaboration cues serve as factors affecting attitudes. Figure III shows under moderate elaboration variables can affect motivation and ability to process in an objective manner and enhance or reduce persuasion. Figure IV illustrates that under moderate elaboration variables can affect motivation and ability to process in a biased manner and motivate or inhibit subjects to respond in a certain way.
Under high elaboration, a given variable (e.g., expertise) can serve as an argument (e.g., "If Einstein agrees with the theory of relativity, then this is a strong reason for me to as well") or a biasing factor (e.g., "If an expert agrees with this position it is probably good, so let me see who else agrees with this conclusion"), at the expense of contradicting information.[22] Under low-elaboration conditions, a variable may act as a peripheral cue (e.g., the belief that "experts are always right"). While this is similar to the Einstein example above, this is a shortcut which (unlike the Einstein example) does not require thought. Under moderate elaboration, a variable may direct the extent of information processing (e.g., "If an expert agrees with this position, I should really listen to what (s)he has to say"). If subjects are under conditions of moderate elaboration, variables might enhance or reduce the persuasiveness in an objective manner, or bialy motivate or inhibit subjects to generate a certain thought.[11] For instance, a distraction could serve as a variable to objectively affect the persuasiveness of a message. The distraction will enhance the persuasion of a weak argument but reduce the persuasion of a strong argument. (As the Figure III (Reduce) suggests.)

Recent scholars studied persuasion combining ELM[23] with another concept self-validation: to affect the extent to which a person trusts their thoughts in response to a message (self-validation role).[24] A person not only needs to have an attitude towards a message, but also needs to trust his own attitude as correct one so this message can influence his behaviors. If he doesn't deem himself as correct, he will mentally abandon his own thought. Because of its metacognitive nature, self-validation only occurs in high-elaboration conditions. The ELM posts that variables (credulity, happiness, etc.) can influence the amount and direction of processing, and self-validation postulates that those variables can affect how people use their thoughts as well.[25] For example, when people are generating favorable thoughts about a new idea, they will be more self-affirmed if they are nodding their heads (a variable). Conversely, if they are shaking their heads, they will be less self-affirmed about their thoughts. (See more examples in Postures)

Consequences
For an individual intent on forming long-lasting beliefs on topics, the central route is advantageous by the fact that arguments are scrutinized intensely and that information is unlikely to be overlooked. However, this route uses a considerable amount of energy, time, and mental effort.

It is not worthwhile to exert considerable mental effort to achieve correctness in all situations and people do not always have the requisite knowledge, time, or opportunity to thoughtfully assess the merits of a proposal.[2] For those, the use of the peripheral route excels at saving energy, time, and mental effort. This is particularly advantageous in situations in which one must make a decision within a small time constraint. On the other hand, the peripheral route is prone to errors in judgment, at least in attributing reasons for behaviors.[26] Also, people are persuaded in peripheral routes based on import cues such as credibility of the information source. However, sleeper effect could influence the strength of persuasion.

It is noteworthy that high elaboration does not necessarily lead to attitude change. Resistance to persuasion occurs when someone feels his/her freedom to perform a certain behavior is threatened. A famous study on reaction is conducted by Pennebaker and Sanders in 1976.[27] The experimenters placed placard in campus toilets to discourage graffiti. The result of experiment suggests the amount of graffiti written on the threatening placards was significantly positively related to both authority and threat level. Findings are interpreted as reflecting reactance arousal.

In addition, inoculation theory must also be taken into account when it comes to persuasion.

Applications
Researchers have applied the elaboration likelihood model to many fields, including advertising, marketing, consumer behavior and health care, just to name a few.

In advertising and marketing
Advertising
The elaboration likelihood model can be applied to advertising and marketing.

In 1983, Petty, Cacioppo and Schumann conducted a study to examine source effects in advertising.[28] It was a product advertisement about a new disposable razor. The authors purposefully made one group of subjects highly involved with the product, by telling them the product would be test marketed soon in the local area and by the end of the experiment they would be given a chance to get a disposable razor. Whereas, the authors made another group of subjects have low involvement with the product by telling them that the product would be test marketed in a distant city and by the end of the experiment they would have the chance to get a toothpaste. In addition to varying involvement, the authors also varied source and message characteristics by showing a group of the subjects ads featuring popular athletes, whereas showing other subjects ads featuring average citizens; showing some subjects ads with strong arguments and others ads with weak arguments. This experiment shows that when the elaboration likelihood was low, featuring famous athletes in the advertisement would lead to more favorable product attitudes, regardless of the strength of the product attributes presented. Whereas when elaboration likelihood was high, only the argument strength would manipulate affected attitudes.[28][29] Lee et al. supported the studies on that product involvement strengthens the effects of "endorser–product congruence on consumer responses" when the endorsers expertise is well related with product to create source credibility. Lee's finding also helps to understand celebrity endorsement as not only a peripheral cue but also a motivation for central route.[30]

Later in 1985, Bitner, Mary J., and Carl Obermiller expand this model theoretically in the field of marketing. They proposed in the marketing context, the determinant of routes is more complex, involving variables of situation, person, and product categories.[31]

It is widely acknowledged that effects of ads are not only limited to the information contained in the ad alone but are also a function of the different appeals used in the ads (like use celebrities or non-celebrities as endorsers).[32] In a study conducted by Rollins and Bhutada in 2013, ELM theory was the framework used to understand and evaluate the underlying mechanisms describing the relationships between endorser type, disease state involvement and consumer response to direct-to-consumer advertisements (DTCA). The finding showed while endorser type did not significantly affect consumer attitudes, behavioral intentions and information search behavior; level of disease state involvement, though, did. More highly involved consumers had more positive attitudes, behavioral intentions and greater information search behavior.[32]

Since social media become a popular marketing platform as well, some scholars also use the ELM to examine how purchase intentions, brand attitudes, and advertising attitudes could be affected by interactivity and source authority on social media platforms. Ott et al. conducted an experiment by presenting participants with Facebook posts from a fictitious company and analyzing their attitude change. The results shows that high and medium interactivity (which means numbers of responses from company representatives on social media posts would: 1) enhance the perceived informativeness (consumers can get useful information from advertising), and then strengthen positive attitudes and purchase intentions; Or 2) increase perceived dialogues, which led to increasing perceived informativeness and then positive attitudes and purchase intentions.[33] However, high interactivity without the perceived informativeness would generate negative attitudes and low purchase intentions.[33] This study has suggested that to some extent companies should engage audience in a systematic processing way in social media advertisings, as consumers elaborate along central route will generate more positive attitudes and higher purchase intentions.

Caveat
However, when looking into advertising among young people, Te'eni-Harari et al. found out that in contradistinction to adults, ELM doesn't hold true for the young. Instead of two information processing routes, young people are less influenced by motivation and ability variables, hence only one route. Their findings also indicate young people are representative of the less intellectually oriented population at large, who probably only have one route to process information.[34]
Although using peripheral cues is a persuasive choice, advertisers need to be extremely careful in addressing some issues to avoid controversy, such as using sacred symbols as peripheral cues in advertising.[35]
In healthcare

Healthcare
Recent research has been conducted to apply the ELM to the healthcare field. In 2009, Angst and Agarwal published a research article, "Adoption of Electronic Health Records in the Presence of Privacy Concerns: the Elaboration Likelihood Model and Individual Persuasion".[36] This research studies electronic health records (EHRs), (an individual's) concern for information privacy (CFIP) and the elaboration likelihood model (ELM). The two researchers aimed to investigate the question, "Can individuals be persuaded to change their attitudes and opt-in behavioral intentions toward EHRs, and allow their medical information to be digitized even in the presence of significant privacy concerns?"[37]

Since the ELM model provides an understanding how to influence attitudes, the said model could be leveraged to alter perceptions and attitudes regarding adoption and adaptation of change.

Findings of the research included:

"Issue involvement and argument framing interact to influence attitude change, and that concern for information privacy further moderates the effects of these variables."
"Likelihood of adoption is driven by concern for information privacy and attitude."
"An individual's CFIP interacts with argument framing and issue involvement to affect attitudes toward EHR use and CFIP directly influence opt-in behavioral intentions."
"Even people who have high concerns for privacy, their attitudes can be positively altered with appropriate message framing."
In e-commerce
Chen and Lee conducted a study about online shopping persuasion by applying the elaboration likelihood model back to 2008. In this study, how online shopping influences consumers' beliefs and perceived values on attitude and approach behavior were examined. "Twenty cosmetics and 20 hotel websites were selected for participants to randomly link to and read, and the students were then asked to fill in a 48-item questionnaire via the internet. It was found that when consumers have higher levels of agreeableness and conscientiousness, central route website contents would be more favorable for eliciting utilitarian shopping value; whereas when consumers have higher levels of emotional stability, openness, and extraversion, peripheral route website contents would be more critical in facilitating experiential and hedonic shopping value", Chen explained.[38]

In 2009, another study about the effects of consumer skepticism on online shopping was conducted by Sher and Lee.[39] Data on young customers' attitudes about a product were acquired through an online experiment with 278 college students, and two findings emerged after analysis. First, highly skeptical consumers tend to stick with their original impression than been influenced by other factors (Central Route); which means, they are biased against certain types of information and indifferent to the message quality. Second, consumers with low skepticism tend to adopt the peripheral route in forming attitude; that is, they are more persuaded by online review quantity. Lee indicated, "these findings contribute to the ELM research literature by considering a potentially important personality factor in the ELM framework".[39]

Other studies applied ELM in e-commerce and internet related fields are listed below for your additional references:

How does web personalization affect users attitudes and behaviors online?[40]
An eye-tracking study of online shopping to understand how customers use ELM in their e-commerce experience.[41]
Using an elaboration likelihood approach to better understand the persuasiveness of website privacy assurance cues for online consumers.[42]
Multichannel retailing's use of central and peripheral routes through Internet and cross-channel platforms.[citation needed]
Using ELM and signaling theory to analyze Internet recruitment.[43]
In media

Media
Scholars have studied whether media modalities will serve as variable to affect which processing route to take. The previous researches by Chaiken suggested that audio and video modes tended to led receivers to heuristic processing (taking the peripheral route) rather than engage in systematic processing (taking the central route).[44] Bootb-Butterfield and Gutowski have studied how media modalities, argument quality, and source credibility interact to influence receivers to process messages.[45] Bootb-Butterfield and Gutowski conducted an experiment by providing students with strong or weak arguments from high or low credible sources in print, audio, or video modes. By giving participants with negative thought topics, experiment results shows that media modalities, source credibility, and argument quality have significant interactions in attitudes change and elaboration mounts: Within the print mode, the interaction between source credibility and argument quality was the least, partly confirmed that print mode would generate systematic processing. And participants generated more unfavorable thoughts towards weak arguments than strong arguments. Within the audio mode, there was no difference between weak and strong arguments with low credible sources; But, weak arguments with high credible sources generate more unfavorable thoughts than strong arguments. Within the video mode, arguments with low credible sources had no difference in elaboration mounts, while strong arguments with high credible sources produced more thoughts.[45]

Many else research on how media content triggered the central or peripheral processing and lead to attitude change. In order to reduce youth smoking by developing improved methods to communicate with higher risk youth, Flynn and his colleagues conducted a study in 2013, exploring the potential of smoking prevention messages on TV based on the ELM.[46] "Structured evaluations of 12 smoking prevention messages based on three strategies derived from the ELM were conducted in classroom settings among a diverse sample of non-smoking middle school students in three states. Students categorized as likely to have higher involvement in a decision to initiate cigarette smoking, are reported relatively high ratings on a cognitive processing indicator for messages focused on factual arguments about negative consequences of smoking than for messages with fewer or no direct arguments. Message appeal ratings did not show greater preference for this message type among higher involved versus lower involved students. Ratings from students reporting lower academic achievement suggested difficulty processing factual information presented in these messages. The ELM may provide a useful strategy for reaching adolescents at risk for smoking initiation, but particular attention should be focused on lower academic achievers to ensure that messages are appropriate for them."[46]

Another research directed by Boyce and Kuijer was focusing on media body ideal images triggers food intake among restrained eaters based on ELM.[47] Their hypotheses were based on restraint theory and the ELM. From the research, they found participants' attention (advertent/inadvertent) toward the images was manipulated. Although restrained eaters' weight satisfaction was not significantly affected by either media exposure condition, advertent (but not inadvertent) media exposure triggered restrained eaters' eating. These results suggest that teaching restrained eaters how to pay less attention to media body ideal images might be an effective strategy in media–literary interventions.[47]

Braverman researched on combining media modality and content design. She directed a study focusing on the persuasion effects of informational (anecdotal evidence) and testimonial messages (personal stories or experience) in text or audio modes. Study results supported that people in low issue-relevance would be persuaded more by testimonial messages, while people in high issue-relevance would be persuaded more by informational messages. She also found that text was more effective for informational messages, whereas audio was relatively more effective for testimonial messages.[48]

With the development of the internet and the emerging new media, L. G. Pee (2012) has conduct interesting research on the influence of trust on social media using the ELM theory. The findings resulted that source credibility, the majority influence, and information quality has strong effect on the trust for users.[49]

Scholars have also studied on how the ELM functions on Connective-collective action on social media. "Connective-collective activities" means ones are able to receive other's personal opinions and add responses to them, so the information will be accumulated and turned into a collective one.[50] On social media there four types of activities are considered as connective-collective: 1) commenting; 2) uploading materials; 3) relaying information received; 4) affiliating (i.e. Liking, following, etc.).[50] Nekmat et al. have suggested that the overabundance of information on social media might not induce audience to heuristic processing; Instead, source attributes such as credibility and personalness (which means the closeness of friends in a circle) will be mediated by elaboration cognition.[50] Nekmat et al. found that personalness was positively related to elaboration and users with elaboration cognition were more willing to participant in connective-collective activities.[50] They speculated that this was due to the need to cross the private-public boundary when interacting on social media gave people burdens.[50]

Molina and Jennings focused on whether civil and uncivil behaviors on Facebook serve as cues to encourage users' willingness to participant in a discussion.[51] By presenting experiment participants with Facebook posts and comments (civil or uncivil), they found that: civil comments will encourage more elaboration and therefore generate more willingness to engage in a discussion than uncivil comments; The more elaboration participants generate, the more they are willing to participant in the discussion.[51]

In politics
The ELM has been studied with regard to its usefulness in politics and voting specifically. The work of Terry Chmielewski (University of Wisconsin-Eau Claire) found "moderate-to-strong support for the applicability of E-L-M to voting." This finding came through the[52] study of voters in the 2004 and 2008 elections for President of the United States. Continuing on that thread, the work of Wood and Herbst[53] found that, "family and significant others were more influential than celebrities in engendering support for a political candidate." This indicates that peripheral route processes may have some influence on some voters; however, family and friends are likely to be more influential than those who do not have a personal connection to specific voters. Hans-Joachim Mosler applied ELM to study if and how a minority can persuade the majority to change its opinion.[54]

The study used Agent-based social simulation. There were 5 agents. 3 (or 4) of whom held a neutral opinion on some abstract topic, while the other 2 (or 1) held a different opinion. In addition, there were differences between the agents regarding their argument quality and peripheral cues. The simulation was done in rounds. In each round, one of the agents had an opportunity to influence the other agents. The level of influence was determined by either the argument strength (if the central route was taken) or the peripheral cues (if the peripheral route was taken). After 20 rounds of persuasion, the distance between the majority's original opinion to its new opinion was studied. It was found that, the peripheral cues of the minority were more important than the argument quality. I.e, a minority with strong arguments but negative cues (e.g., different skin-color or bad reputation) did not succeed in convincing the majority, while a minority with weak arguments and positive cues (e.g., appearance or reputation) did succeed. The results depend also on the level of personal relevance – how much the topic is important to the majority and to the minority.

Partisan Media impact on Persuasion

Scholars also studied how partisan cues in media content will affect elaboration direction and mount. Jennings combined social identity theory and elaboration likelihood model to study whether identities will motivate audience to only rely on partisan cues on media to process information, and whether partisan cues would inhibit audience from learning.[55] Jennings's experiment provided participants with a nonpartisan or partisan article at first and used questionnaires to test their elaboration and learning outcomes. The results supported Jennings hypotheses: articles with partisan cues would prevent partisans from learning more information in the article, compared to articles without partisan cues. Besides, nonpartisan articles would relatively generate more positive thoughts than partisan articles. Also, partisan members tend to elaborate more negative thoughts when exposed to out-group's information, and partisan members will elaborate more positive thoughts when exposed to in-group's messages. For instance, Republicans will come out of more negative reasons why a Democrat senator should not be elected, while Democrats will generate more positive reasons to elect a Democrat senator.[55]

Social Media impact on politics

ELM has been utilized to look at the effect of social media on politics. One study on the effect of Twitter on politics, by Wu, Wong, Deng, and Chang, found that certain types of tweets (1 central route, 1 peripheral route) are most effective in political persuasion. Informative tweets (central) have been shown to produce a consistent impact on opinion convergence. Affective tweets (peripheral) have been shown to be more inconsistent.[56]

Persuasion tactics conducted by Ideological Groups

Dunbar et al. studied on how violent and nonviolent ideological groups developed their persuasion strategy online. Ideological groups (or ethnic groups) are people who shared similar values such as religious beliefs, political beliefs, and social movements which distinguish them from out-group members. Some ideological groups are considered as violent because they acquiesce use of violence to achieve their values. For instance, the American Society for the Prevention of Cruelty to Animals’ website advocated their ideas nonviolently, while ISIS website sanctioned and prioritized violent acts for their goals. Dunbar et al. have studied how nonviolent ideological groups and violent groups used tactics to induce central or peripheral processing, and surprisingly found that both nonviolent ideological and violent groups applied more central cues than peripheral cues in their persuasion, in another word, they adopted more arguments and evidence than simply designing a visually attractive website or idolizing someone.[57] Besides, violent ideological groups used more fear appeals to their audience, and interacted less with their audience. Dunbar et al. speculated that some extreme groups desired to have tight control over their content so they had low tolerance for other's opinions.[57]

In mental health counseling
Two men sitting across from each other, the nearer man appears to be stressed
Mental health counseling
Counseling and stigma

One of the most common reasons why an individual does not attend counseling is because they are worried about the falling into a stigma (being considered crazy, or having serious “issues”).[58] This stigma—which was prevalent 30 years ago, still exists today.[when?][59] Fortunately, an implementation of the ELM can help increase the positive perceptions of counseling amongst the undergraduate student population. Students that repeatedly watched a video that explained the function and positive outcomes of mental health counseling demonstrated a significant and lasting change in their perception to counseling. Students who watched the video once or not at all maintained a relatively negative view towards counseling.[60] Thus, repeated exposure towards the positive elements of counseling lead towards a greater elaboration and implementation of the central route to combat negative social stigma of counseling. Most negative intuitions exist within the realm of the peripheral route, and therefore to work against stigmas the general public needs to engage their central route of processing.

Counselor credibility

The more credible a counselor is perceived as, the more likely that counseling clients are to perceive the counselor’s advice as impactful. However, counselor credibility is strongly mediated by the degree to which the client understands the information conveyed by the counselor.[61] Therefore, it is extremely important that counseling clients feel that they understand their counselor. The use of metaphor is helpful for this. Metaphors require a deeper level of elaboration, thereby engaging the central route of processing. Kendall (2010)[62] suggests using metaphor in counseling as a valid method towards helping clients understand the message/psychological knowledge conveyed by the client. When the client hears a metaphor that resonates with them, they are far more likely to trust and build positive rapport with the counselor.[63]

In Organizations
Li has expanded the theoretical frame of the ELM and applied it to information system acceptance. Li conducted a research on persuasive tactics for managers who needed to persuade staff to adopt new information systems within firms by integrating the ELM, social influence theory (It studies how a person is influenced by others in a network to conform to a community, and there are two types of social influences: informational and normative influences), and affective and cognition responses (or emotional responses and rational responses).[64] Li's experiment suggested that: 1) managers should tailor their persuasive strategies according to various elaboration abilities of staff. For staff who have higher levels of elaboration likelihood, managers should emphasize benefits and values of new systems; For staff who have lower levels of elaboration likelihood, managers should provide expertise and credible sources; 2) Commonly speaking, providing strong arguments is more effective than relying on credibility; 3) Since normative influences lead to more affective responses and informational influences lead to more cognition responses, managers should implement different strategies to provoke staff's reaction, while 4) cognition responses are more important than affective responses when accepting a new system.[64]

Methodological considerations
Elaboration Likelihood Model Information Graphic of Bias and Objective Thinking.jpg
In designing a test for the aforementioned model, it is necessary to determine the quality of an argument, i.e., whether it is viewed as strong or weak. If the argument is not seen as strong, then the results of persuasion will be inconsistent. A strong argument is defined by Petty and Cacioppo as "one containing arguments such that when subjects are instructed to think about the message, the thoughts they generate are fundamentally favorable."[65] An argument that is universally viewed as weak will elicit unfavorable results, especially if the subject considers it under high elaboration, thus being the central route. Test arguments must be rated by ease of understanding, complexity and familiarity. To study either route of the elaboration likelihood model, the arguments must be designed for consistent results.[66] Also, when assessing persuasion of an argument, the influence of peripheral cues needs to be taken into consideration as cues can influence attitude even in the absence of argument processing.[67] The extent or direction of message processing also needs to be taken into consideration when assessing persuasion, as variables can influence or bias thought by enabling or inhibiting the generation of a particular kind of thought in regard to the argument.[67] "While the ELM theory continues to be widely cited and taught as one of the major cornerstones of persuasion, questions are raised concerning its relevance and validity in 21st century communication contexts."[68]

Misinterpretions of the theory
Some researchers have been criticized for misinterpreting the ELM. One such instance is Kruglanski and Thompson, who write that the processing of central or peripheral routes is determined by the type of information that affects message persuasion. For example, message variables are only influential when the central route is used and information like source variables is only influential when the peripheral route is used. In fact, the ELM does not make statements about types of information being related to routes. Rather, the key to the ELM is how any type of information will be used depending on central or peripheral routes, regardless of what that information is.[16] For example, the central route may permit source variables to influence preference for certain language usage in the message (e.g. "beautiful") or validate a related product (e.g. cosmetics), while the peripheral route may only lead individuals to associate the "goodness" of source variables with the message. Theoretically, all of these could occur simultaneously. Thus, the distinction between central and peripheral routes is not the type of information being processed as those types can be applied to both routes, but rather how that information is processed and ultimately whether processing information in one way or the other will result in different attitudes.

A second instance of misinterpretation is that processing of the central route solely involves thinking about the message content and not thoughts about the issue.[69] Petty and Cacioppo (1981) stated "If the issue is very important to the person, but the person doesn't understand the arguments being presented in the message, or if no arguments are actually presented, then elaboration of arguments cannot occur.…Nevertheless, the person may still be able to think about the issue."[70] Therefore, issue-relevant thinking is still a part of the central route and is necessary for one to think about the message content.

Lastly, a third instance of misinterpretation by Kruglanski and Thompson is the disregard for the quantitative dimension presented by the ELM and more focus on the qualitative dimension. This quantitative dimension is the peripheral route involves low-elaboration persuasion that is quantitatively different from the central route that involves high elaboration. With this difference the ELM also explains that low-elaboration persuasion processes are qualitatively different as well.[69] It is seen as incorrect if the ELM focuses on a quantitative explanation over a qualitative one; however one of the ELM's key points is that elaboration can range from high to low which is not incorrect as data from experiments conducted by Petty (1997)[71] as well as Petty and Wegener (1999)[72] suggest that persuasion findings can be explained by a quantitative dimension without ever needing a qualitative one.[69]

Issues concerning the ELM
In 2014, J. Kitchen et al. scrutinized the literatures of the ELM for the past 30 years. They came up with four major research areas that have received most significant criticism:[73]

The descriptive nature of the model
The first critique concerns issue of the model's initial development. Considering that the ELM was built upon previous empirical research and a diverse literature base to unify disparate ideas, the model is inherently descriptive because of the intuitive and conceptual assumptions underlying.[73] For example, Choi and Salmon criticized Petty and Cacioppo's assumption that correct recall of a product led directly to high involvement. They proposed that high involvement is likely to be the result of other variations, for example the sample population; and the weak/strong arguments in one study are likely to result in different involvement characteristics in another study.[74]

Continuum questions
The elaboration likelihood continuum ought to show that a human can undergo a natural progression from high involvement to low involvement with the corresponding effects. This continuum can account for the swift between the central and the peripheral routes, but has yet been lack of comprehensive and empirical testing since the beginning. However, researches has been done under three distinct conditions: high, low, and moderate.[73]

The issue of multi-channel processing
This area of critique basically lands on the nature of ELM being a dual-process model, which indicates that the receivers will rely on one of the routes (central or peripheral) to process messages and possibly change attitude and behaviour. Stiff (1986) questioned the validity of ELM because the message should be able to be processed through two routes simultaneously.[75] On top of Stiff's questioning, alternative models have been raised. Mackenzie et al (1986) advocated a Dual Mediation Hypothesis (DMH) that allow receivers to process the ad's content and its execution at the same time with reasonable vigilance.[76] Lord et al. (1995) proposed a Combined Influence Hypothesis which argues that the central and peripheral cues worked in combination despite the variables of motivation and ability.[77] Kruglanski et al. (1999) proposed a single cognitive process instead of the dual-process model. Although drawing on the fundamental conception from ELM, such as motivation, ability and continuum, the unimodel suggests a normative and heuristic rules for human to make judgement based on the evidence.[78] The Heuristic Systematic Model (HSM) is another alternative model concerning this issue.[73]

The analysis of the different variables which mediate elaboration likelihood
Many studies have been expanding and/or refining the model by examining and testing the variables, particularly in advertising research. For example, Britner and Obermiller (1985) were among the first to expand the model to new variables under the peripheral processing. They proposed situation, person, and product categories as new variables under the context of marketing.[31]

Alternative models
Social judgment theory – emphasizes the distance in opinions, and whether it is in the "acceptance latitude" or "rejection latitude" or in the intermediate zone.
Social impact theory - emphasizes the number, strength and immediacy of the people trying to influence a person to change its mind.
Heuristic-systematic model
Extended transportation-imagery model
See also
Advertising
Advertising management
Attitude change
Cognitive biases
Cognitive resources
Consumer behaviour
Countersignaling
E-commerce
Integrated marketing communications
Marketing
Marketing communications
Motivation
Need for cognition
Online shopping
Persuasion
Advertising models
AIDA (marketing)
AISDALSLove
DAGMAR marketing
Elaboration likelihood model (section)




g factor (psychometrics)
https://en.wikipedia.org/wiki/G_factor_(psychometrics)#Cognitive_ability_testing
"General intelligence" redirects here. It is not to be confused with Intelligence, Artificial general intelligence, or Intelligence quotient.
The g factor (also known as general intelligence, general mental ability or general intelligence factor) is a construct developed in psychometric investigations of cognitive abilities and human intelligence. It is a variable that summarizes positive correlations among different cognitive tasks, reflecting the fact that an individual's performance on one type of cognitive task tends to be comparable to that person's performance on other kinds of cognitive tasks. The g factor typically accounts for 40 to 50 percent of the between-individual performance differences on a given cognitive test, and composite scores ("IQ scores") based on many tests are frequently regarded as estimates of individuals' standing on the g factor.[1] The terms IQ, general intelligence, general cognitive ability, general mental ability, and simply intelligence are often used interchangeably to refer to this common core shared by cognitive tests.[2] The g factor targets a particular measure of general intelligence.

The existence of the g factor was originally proposed by the English psychologist Charles Spearman in the early years of the 20th century. He observed that children's performance ratings, across seemingly unrelated school subjects, were positively correlated, and reasoned that these correlations reflected the influence of an underlying general mental ability that entered into performance on all kinds of mental tests. Spearman suggested that all mental performance could be conceptualized in terms of a single general ability factor, which he labeled g, and many narrow task-specific ability factors. Soon after Spearman proposed the existence of g, it was challenged by Godfrey Thomson, who presented evidence that such intercorrelations among test results could arise even if no g-factor existed.[3] Today's factor models of intelligence typically represent cognitive abilities as a three-level hierarchy, where there are many narrow factors at the bottom of the hierarchy, a handful of broad, more general factors at the intermediate level, and at the apex a single factor, referred to as the g factor, which represents the variance common to all cognitive tasks.

Traditionally, research on g has concentrated on psychometric investigations of test data, with a special emphasis on factor analytic approaches. However, empirical research on the nature of g has also drawn upon experimental cognitive psychology and mental chronometry, brain anatomy and physiology, quantitative and molecular genetics, and primate evolution.[4] Some scientists consider g as a statistical regularity and uncontroversial, and a general cognitive factor appears in data collected from people in nearly every human culture.[5] Yet, there is no consensus as to what causes the positive correlations between tests.

Research in the field of behavioral genetics has established that the construct of g is highly heritable. It has a number of other biological correlates, including brain size. It is also a significant predictor of individual differences in many social outcomes, particularly in education and employment. The most widely accepted contemporary theories of intelligence incorporate the g factor.[6] However, critics of g have contended that an emphasis on g is misplaced and entails a devaluation of other important abilities. Stephen J. Gould famously denounced the concept of g as supporting an unrealistic reified view of human intelligence.


Contents
1	Cognitive ability testing
2	Theories
2.1	Mental energy or efficiency
2.2	Sampling theory
2.3	Mutualism
3	Factor structure of cognitive abilities
4	"Indifference of the indicator"
5	Population distribution
6	Spearman's law of diminishing returns
7	Practical validity
7.1	Academic achievement
7.2	Job attainment
7.3	Job performance
7.4	Income
7.5	Other correlates
8	Genetic and environmental determinants
9	Neuroscientific findings
10	g in non-humans
11	g (or c) in human groups
12	Other biological associations
13	Group similarities and differences
14	Relation to other psychological constructs
14.1	Elementary cognitive tasks
14.2	Working memory
14.3	Piagetian tasks
14.4	Personality
14.5	Creativity
15	Challenges
15.1	Gf-Gc theory
15.2	Theories of uncorrelated abilities
15.3	Flynn's model
15.4	Other criticisms
16	See also
17	References
18	Bibliography
Cognitive ability testing
Spearman's correlation matrix for six measures of school performance. All the correlations are positive, the positive manifold phenomenon. The bottom row shows the g loadings of each performance measure.[7]
Classics	French	English	Math	Pitch	Music
Classics	–					
French	.83	–				
English	.78	.67	–			
Math	.70	.67	.64	–		
Pitch discrimination	.66	.65	.54	.45	–	
Music	.63	.57	.51	.51	.40	–
g	.958	.882	.803	.750	.673	.646
Subtest intercorrelations in a sample of Scottish subjects who completed the WAIS-R battery. The subtests are Vocabulary, Similarities, Information, Comprehension, Picture arrangement, Block design, Arithmetic, Picture completion, Digit span, Object assembly, and Digit symbol. The bottom row shows the g loadings of each subtest.[8]
V	S	I	C	PA	BD	A	PC	DSp	OA	DS
V	–										
S	.67	-									
I	.72	.59	-								
C	.70	.58	.59	-							
PA	.51	.53	.50	.42	-						
BD	.45	.46	.45	.39	.43	-					
A	.48	.43	.55	.45	.41	.44	–				
PC	.49	.52	.52	.46	.48	.45	.30	-			
DSp	.46	.40	.36	.36	.31	.32	.47	.23	-		
OA	.32	.40	.32	.29	.36	.58	.33	.41	.14	-	
DS	.32	.33	.26	.30	.28	.36	.28	.26	.27	.25	-
g	.83	.80	.80	.75	.70	.70	.68	.68	.56	.56	.48
Cognitive ability tests are designed to measure different aspects of cognition. Specific domains assessed by tests include mathematical skill, verbal fluency, spatial visualization, and memory, among others. However, individuals who excel at one type of test tend to excel at other kinds of tests, too, while those who do poorly on one test tend to do so on all tests, regardless of the tests' contents.[9] The English psychologist Charles Spearman was the first to describe this phenomenon.[10] In a famous research paper published in 1904,[11] he observed that children's performance measures across seemingly unrelated school subjects were positively correlated. This finding has since been replicated numerous times. The consistent finding of universally positive correlation matrices of mental test results (or the "positive manifold"), despite large differences in tests' contents, has been described as "arguably the most replicated result in all psychology".[12] Zero or negative correlations between tests suggest the presence of sampling error or restriction of the range of ability in the sample studied.[13]

Using factor analysis or related statistical methods, it is possible to compute a single common factor that can be regarded as a summary variable characterizing the correlations between all the different tests in a test battery. Spearman referred to this common factor as the general factor, or simply g. (By convention, g is always printed as a lower case italic.) Mathematically, the g factor is a source of variance among individuals, which entails that one cannot meaningfully speak of any one individual's mental abilities consisting of g or other factors to any specified degrees. One can only speak of an individual's standing on g (or other factors) compared to other individuals in a relevant population.[13][14][15]

Different tests in a test battery may correlate with (or "load onto") the g factor of the battery to different degrees. These correlations are known as g loadings. An individual test taker's g factor score, representing his or her relative standing on the g factor in the total group of individuals, can be estimated using the g loadings. Full-scale IQ scores from a test battery will usually be highly correlated with g factor scores, and they are often regarded as estimates of g. For example, the correlations between g factor scores and full-scale IQ scores from David Wechsler's tests have been found to be greater than .95.[1][13][16] The terms IQ, general intelligence, general cognitive ability, general mental ability, or simply intelligence are frequently used interchangeably to refer to the common core shared by cognitive tests.[2]

The g loadings of mental tests are always positive and usually range between .10 and .90, with a mean of about .60 and a standard deviation of about .15. Raven's Progressive Matrices is among the tests with the highest g loadings, around .80. Tests of vocabulary and general information are also typically found to have high g loadings.[17][18] However, the g loading of the same test may vary somewhat depending on the composition of the test battery.[19]

The complexity of tests and the demands they place on mental manipulation are related to the tests' g loadings. For example, in the forward digit span test the subject is asked to repeat a sequence of digits in the order of their presentation after hearing them once at a rate of one digit per second. The backward digit span test is otherwise the same except that the subject is asked to repeat the digits in the reverse order to that in which they were presented. The backward digit span test is more complex than the forward digit span test, and it has a significantly higher g loading. Similarly, the g loadings of arithmetic computation, spelling, and word reading tests are lower than those of arithmetic problem solving, text composition, and reading comprehension tests, respectively.[13][20]

Test difficulty and g loadings are distinct concepts that may or may not be empirically related in any specific situation. Tests that have the same difficulty level, as indexed by the proportion of test items that are failed by test takers, may exhibit a wide range of g loadings. For example, tests of rote memory have been shown to have the same level of difficulty but considerably lower g loadings than many tests that involve reasoning.[20][21]

Theories
While the existence of g as a statistical regularity is well-established and uncontroversial among experts, there is no consensus as to what causes the positive intercorrelations. Several explanations have been proposed.[22]

Mental energy or efficiency
Charles Spearman reasoned that correlations between tests reflected the influence of a common causal factor, a general mental ability that enters into performance on all kinds of mental tasks. However, he thought that the best indicators of g were those tests that reflected what he called the eduction of relations and correlates, which included abilities such as deduction, induction, problem solving, grasping relationships, inferring rules, and spotting differences and similarities. Spearman hypothesized that g was equivalent with "mental energy". However, this was more of a metaphorical explanation, and he remained agnostic about the physical basis of this energy, expecting that future research would uncover the exact physiological nature of g.[23]

Following Spearman, Arthur Jensen maintained that all mental tasks tap into g to some degree. According to Jensen, the g factor represents a "distillate" of scores on different tests rather than a summation or an average of such scores, with factor analysis acting as the distillation procedure.[18] He argued that g cannot be described in terms of the item characteristics or information content of tests, pointing out that very dissimilar mental tasks may have nearly equal g loadings. Wechsler similarly contended that g is not an ability at all but rather some general property of the brain. Jensen hypothesized that g corresponds to individual differences in the speed or efficiency of the neural processes associated with mental abilities.[24] He also suggested that given the associations between g and elementary cognitive tasks, it should be possible to construct a ratio scale test of g that uses time as the unit of measurement.[25]

Sampling theory
The so-called sampling theory of g, originally developed by Edward Thorndike and Godfrey Thomson, proposes that the existence of the positive manifold can be explained without reference to a unitary underlying capacity. According to this theory, there are a number of uncorrelated mental processes, and all tests draw upon different samples of these processes. The intercorrelations between tests are caused by an overlap between processes tapped by the tests.[26][27] Thus, the positive manifold arises due to a measurement problem, an inability to measure more fine-grained, presumably uncorrelated mental processes.[15]

It has been shown that it is not possible to distinguish statistically between Spearman's model of g and the sampling model; both are equally able to account for intercorrelations among tests.[28] The sampling theory is also consistent with the observation that more complex mental tasks have higher g loadings, because more complex tasks are expected to involve a larger sampling of neural elements and therefore have more of them in common with other tasks.[29]

Some researchers have argued that the sampling model invalidates g as a psychological concept, because the model suggests that g factors derived from different test batteries simply reflect the shared elements of the particular tests contained in each battery rather than a g that is common to all tests. Similarly, high correlations between different batteries could be due to them measuring the same set of abilities rather than the same ability.[30]

Critics have argued that the sampling theory is incongruent with certain empirical findings. Based on the sampling theory, one might expect that related cognitive tests share many elements and thus be highly correlated. However, some closely related tests, such as forward and backward digit span, are only modestly correlated, while some seemingly completely dissimilar tests, such as vocabulary tests and Raven's matrices, are consistently highly correlated. Another problematic finding is that brain damage frequently leads to specific cognitive impairments rather than a general impairment one might expect based on the sampling theory.[15][31]

Mutualism
The "mutualism" model of g proposes that cognitive processes are initially uncorrelated, but that the positive manifold arises during individual development due to mutual beneficial relations between cognitive processes. Thus there is no single process or capacity underlying the positive correlations between tests. During the course of development, the theory holds, any one particularly efficient process will benefit other processes, with the result that the processes will end up being correlated with one another. Thus similarly high IQs in different persons may stem from quite different initial advantages that they had.[15][32] Critics have argued that the observed correlations between the g loadings and the heritability coefficients of subtests are problematic for the mutualism theory.[33]

Factor structure of cognitive abilities

An illustration of Spearman's two-factor intelligence theory. Each small oval is a hypothetical mental test. The blue areas correspond to test-specific variance (s), while the purple areas represent the variance attributed to g.
Factor analysis is a family of mathematical techniques that can be used to represent correlations between intelligence tests in terms of a smaller number of variables known as factors. The purpose is to simplify the correlation matrix by using hypothetical underlying factors to explain the patterns in it. When all correlations in a matrix are positive, as they are in the case of IQ, factor analysis will yield a general factor common to all tests. The general factor of IQ tests is referred to as the g factor, and it typically accounts for 40 to 50 percent of the variance in IQ test batteries.[34] The presence of correlations between many widely varying cognitive tests has often been taken as evidence for the existence of g, but McFarland (2012) showed that such correlations do not provide any more or less support for the existence of g than for the existence of multiple factors of intelligence.[35]

Charles Spearman developed factor analysis in order to study correlations between tests. Initially, he developed a model of intelligence in which variations in all intelligence test scores are explained by only two kinds of variables: first, factors that are specific to each test (denoted s); and second, a g factor that accounts for the positive correlations across tests. This is known as Spearman's two-factor theory. Later research based on more diverse test batteries than those used by Spearman demonstrated that g alone could not account for all correlations between tests. Specifically, it was found that even after controlling for g, some tests were still correlated with each other. This led to the postulation of group factors that represent variance that groups of tests with similar task demands (e.g., verbal, spatial, or numerical) have in common in addition to the shared g variance.[36]


An illustration of John B. Carroll's three stratum theory, an influential contemporary model of cognitive abilities. The broad abilities recognized by the model are fluid intelligence (Gf), crystallized intelligence (Gc), general memory and learning (Gy), broad visual perception (Gv), broad auditory perception (Gu), broad retrieval ability (Gr), broad cognitive speediness (Gs), and processing speed (Gt). Carroll regarded the broad abilities as different "flavors" of g.
Through factor rotation, it is, in principle, possible to produce an infinite number of different factor solutions that are mathematically equivalent in their ability to account for the intercorrelations among cognitive tests. These include solutions that do not contain a g factor. Thus factor analysis alone cannot establish what the underlying structure of intelligence is. In choosing between different factor solutions, researchers have to examine the results of factor analysis together with other information about the structure of cognitive abilities.[37]

There are many psychologically relevant reasons for preferring factor solutions that contain a g factor. These include the existence of the positive manifold, the fact that certain kinds of tests (generally the more complex ones) have consistently larger g loadings, the substantial invariance of g factors across different test batteries, the impossibility of constructing test batteries that do not yield a g factor, and the widespread practical validity of g as a predictor of individual outcomes. The g factor, together with group factors, best represents the empirically established fact that, on average, overall ability differences between individuals are greater than differences among abilities within individuals, while a factor solution with orthogonal factors without g obscures this fact. Moreover, g appears to be the most heritable component of intelligence.[38] Research utilizing the techniques of confirmatory factor analysis has also provided support for the existence of g.[37]

A g factor can be computed from a correlation matrix of test results using several different methods. These include exploratory factor analysis, principal components analysis (PCA), and confirmatory factor analysis. Different factor-extraction methods produce highly consistent results, although PCA has sometimes been found to produce inflated estimates of the influence of g on test scores.[19][39]

There is a broad contemporary consensus that cognitive variance between people can be conceptualized at three hierarchical levels, distinguished by their degree of generality. At the lowest, least general level there are many narrow first-order factors; at a higher level, there are a relatively small number – somewhere between five and ten – of broad (i.e., more general) second-order factors (or group factors); and at the apex, there is a single third-order factor, g, the general factor common to all tests.[40][41][42] The g factor usually accounts for the majority of the total common factor variance of IQ test batteries.[43] Contemporary hierarchical models of intelligence include the three stratum theory and the Cattell–Horn–Carroll theory.[44]

"Indifference of the indicator"
Spearman proposed the principle of the indifference of the indicator, according to which the precise content of intelligence tests is unimportant for the purposes of identifying g, because g enters into performance on all kinds of tests. Any test can therefore be used as an indicator of g.[5] Following Spearman, Arthur Jensen more recently argued that a g factor extracted from one test battery will always be the same, within the limits of measurement error, as that extracted from another battery, provided that the batteries are large and diverse.[45] According to this view, every mental test, no matter how distinctive, calls on g to some extent. Thus a composite score of a number of different tests will load onto g more strongly than any of the individual test scores, because the g components cumulate into the composite score, while the uncorrelated non-g components will cancel each other out. Theoretically, the composite score of an infinitely large, diverse test battery would, then, be a perfect measure of g.[46]

In contrast, L.L. Thurstone argued that a g factor extracted from a test battery reflects the average of all the abilities called for by the particular battery, and that g therefore varies from one battery to another and "has no fundamental psychological significance."[47] Along similar lines, John Horn argued that g factors are meaningless because they are not invariant across test batteries, maintaining that correlations between different ability measures arise because it is difficult to define a human action that depends on just one ability.[48][49]

To show that different batteries reflect the same g, one must administer several test batteries to the same individuals, extract g factors from each battery, and show that the factors are highly correlated. This can be done within a confirmatory factor analysis framework.[22] Wendy Johnson and colleagues have published two such studies.[50][51] The first found that the correlations between g factors extracted from three different batteries were .99, .99, and 1.00, supporting the hypothesis that g factors from different batteries are the same and that the identification of g is not dependent on the specific abilities assessed. The second study found that g factors derived from four of five test batteries correlated at between .95–1.00, while the correlations ranged from .79 to .96 for the fifth battery, the Cattell Culture Fair Intelligence Test (the CFIT). They attributed the somewhat lower correlations with the CFIT battery to its lack of content diversity for it contains only matrix-type items, and interpreted the findings as supporting the contention that g factors derived from different test batteries are the same provided that the batteries are diverse enough. The results suggest that the same g can be consistently identified from different test batteries.[40][52]

Population distribution
The form of the population distribution of g is unknown, because g cannot be measured on a ratio scale[clarification needed]. (The distributions of scores on typical IQ tests are roughly normal, but this is achieved by construction, i.e., by normalizing the raw scores.) It has been argued[who?] that there are nevertheless good reasons for supposing that g is normally distributed in the general population, at least within a range of ±2 standard deviations from the mean. In particular, g can be thought of as a composite variable that reflects the additive effects of many independent genetic and environmental influences, and such a variable should, according to the central limit theorem, follow a normal distribution.[53]

Spearman's law of diminishing returns
A number of researchers have suggested that the proportion of variation accounted for by g may not be uniform across all subgroups within a population. Spearman's law of diminishing returns (SLODR), also termed the cognitive ability differentiation hypothesis, predicts that the positive correlations among different cognitive abilities are weaker among more intelligent subgroups of individuals. More specifically, (SLODR) predicts that the g factor will account for a smaller proportion of individual differences in cognitive tests scores at higher scores on the g factor.

(SLODR) was originally proposed by Charles Spearman,[54] who reported that the average correlation between 12 cognitive ability tests was .466 in 78 normal children, and .782 in 22 "defective" children. Detterman and Daniel rediscovered this phenomenon in 1989.[55] They reported that for subtests of both the WAIS and the WISC, subtest intercorrelations decreased monotonically with ability group, ranging from approximately an average intercorrelation of .7 among individuals with IQs less than 78 to .4 among individuals with IQs greater than 122.[56]

(SLODR) has been replicated in a variety of child and adult samples who have been measured using broad arrays of cognitive tests. The most common approach has been to divide individuals into multiple ability groups using an observable proxy for their general intellectual ability, and then to either compare the average interrelation among the subtests across the different groups, or to compare the proportion of variation accounted for by a single common factor, in the different groups.[57] However, as both Deary et al. (1996).[57] and Tucker-Drob (2009)[58] have pointed out, dividing the continuous distribution of intelligence into an arbitrary number of discrete ability groups is less than ideal for examining (SLODR). Tucker-Drob (2009)[58] extensively reviewed the literature on (SLODR) and the various methods by which it had been previously tested, and proposed that (SLODR) could be most appropriately captured by fitting a common factor model that allows the relations between the factor and its indicators to be nonlinear in nature. He applied such a factor model to a nationally representative data of children and adults in the United States and found consistent evidence for (SLODR). For example, Tucker-Drob (2009) found that a general factor accounted for approximately 75% of the variation in seven different cognitive abilities among very low IQ adults, but only accounted for approximately 30% of the variation in the abilities among very high IQ adults.

A recent meta-analytic study by Blum and Holling[59] also provided support for the differentiation hypothesis. As opposed to most research on the topic, this work made it possible to study ability and age variables as continuous predictors of the g saturation, and not just to compare lower- vs. higher-skilled or younger vs. older groups of testees. Results demonstrate that the mean correlation and g loadings of cognitive ability tests decrease with increasing ability, yet increase with respondent age. (SLODR), as described by Charles Spearman, could be confirmed by a g-saturation decrease as a function of IQ as well as a g-saturation increase from middle age to senescence. Specifically speaking, for samples with a mean intelligence that is two standard deviations (i.e., 30 IQ-points) higher, the mean correlation to be expected is decreased by approximately .15 points. The question remains whether a difference of this magnitude could result in a greater apparent factorial complexity when cognitive data are factored for the higher-ability sample, as opposed to the lower-ability sample. It seems likely that greater factor dimensionality should tend to be observed for the case of higher ability, but the magnitude of this effect (i.e., how much more likely and how many more factors) remains uncertain.

Practical validity
The practical validity of g as a predictor of educational, economic, and social outcomes is the subject of ongoing debate.[60] Some researchers have argued that it is more far-ranging and universal than any other known psychological variable,[61] and that the validity of g increases as the complexity of the measured task increases.[62][63] Others have argued that tests of specific abilities outperform g factor in analyses fitted to real-world situations.[64][65][66]

A test's practical validity is measured by its correlation with performance on some criterion external to the test, such as college grade-point average, or a rating of job performance. The correlation between test scores and a measure of some criterion is called the validity coefficient. One way to interpret a validity coefficient is to square it to obtain the variance accounted by the test. For example, a validity coefficient of .30 corresponds to 9 percent of variance explained. This approach has, however, been criticized as misleading and uninformative, and several alternatives have been proposed. One arguably more interpretable approach is to look at the percentage of test takers in each test score quintile who meet some agreed-upon standard of success. For example, if the correlation between test scores and performance is .30, the expectation is that 67 percent of those in the top quintile will be above-average performers, compared to 33 percent of those in the bottom quintile.[67][68]

Academic achievement
The predictive validity of g is most conspicuous in the domain of scholastic performance. This is apparently because g is closely linked to the ability to learn novel material and understand concepts and meanings.[62]

In elementary school, the correlation between IQ and grades and achievement scores is between .60 and .70. At more advanced educational levels, more students from the lower end of the IQ distribution drop out, which restricts the range of IQs and results in lower validity coefficients. In high school, college, and graduate school the validity coefficients are .50–.60, .40–.50, and .30–.40, respectively. The g loadings of IQ scores are high, but it is possible that some of the validity of IQ in predicting scholastic achievement is attributable to factors measured by IQ independent of g. According to research by Robert L. Thorndike, 80 to 90 percent of the predictable variance in scholastic performance is due to g, with the rest attributed to non-g factors measured by IQ and other tests.[69]

Achievement test scores are more highly correlated with IQ than school grades. This may be because grades are more influenced by the teacher's idiosyncratic perceptions of the student.[70] In a longitudinal English study, g scores measured at age 11 correlated with all the 25 subject tests of the national GCSE examination taken at age 16. The correlations ranged from .77 for the mathematics test to .42 for the art test. The correlation between g and a general educational factor computed from the GCSE tests was .81.[71]

Research suggests that the SAT, widely used in college admissions, is primarily a measure of g. A correlation of .82 has been found between g scores computed from an IQ test battery and SAT scores. In a study of 165,000 students at 41 U.S. colleges, SAT scores were found to be correlated at .47 with first-year college grade-point average after correcting for range restriction in SAT scores (the correlation rises to .55 when course difficulty is held constant, i.e., if all students attended the same set of classes).[67][72]

Job attainment
There is a high correlation of .90 to .95 between the prestige rankings of occupations, as rated by the general population, and the average general intelligence scores of people employed in each occupation. At the level of individual employees, the association between job prestige and g is lower – one large U.S. study reported a correlation of .65 (.72 corrected for attenuation). Mean level of g thus increases with perceived job prestige. It has also been found that the dispersion of general intelligence scores is smaller in more prestigious occupations than in lower level occupations, suggesting that higher level occupations have minimum g requirements.[73][74]

Job performance
Research indicates that tests of g are the best single predictors of job performance, with an average validity coefficient of .55 across several meta-analyses of studies based on supervisor ratings and job samples. The average meta-analytic validity coefficient for performance in job training is .63.[75] The validity of g in the highest complexity jobs (professional, scientific, and upper management jobs) has been found to be greater than in the lowest complexity jobs, but g has predictive validity even for the simplest jobs. Research also shows that specific aptitude tests tailored for each job provide little or no increase in predictive validity over tests of general intelligence. It is believed that g affects job performance mainly by facilitating the acquisition of job-related knowledge. The predictive validity of g is greater than that of work experience, and increased experience on the job does not decrease the validity of g.[62][73]

In a 2011 meta-analysis, researchers found that general cognitive ability (GCA) predicted job performance better than personality (Five factor model) and three streams of emotional intelligence. They examined the relative importance of these constructs on predicting job performance and found that cognitive ability explained most of the variance in job performance.[76] Other studies suggested that GCA and emotional intelligence have a linear independent and complementary contribution to job performance. Côté and Miners (2015)[77] found that these constructs are interrelated when assessing their relationship with two aspects of job performance: organisational citizenship behaviour (OCB) and task performance. Emotional intelligence is a better predictor of task performance and OCB when GCA is low and vice versa. For instance, an employee with low GCA will compensate his/her task performance and OCB, if emotional intelligence is high.

Although these compensatory effects favour emotional intelligence, GCA still remains as the best predictor of job performance. Several researchers have studied the correlation between GCA and job performance among different job positions. For instance, Ghiselli (1973)[78] found that salespersons had a higher correlation than sales clerk. The former obtained a correlation of 0.61 for GCA, 0.40 for perceptual ability and 0.29 for psychomotor abilities; whereas sales clerk obtained a correlation of 0.27 for GCA, 0.22 for perceptual ability and 0.17 for psychomotor abilities.[79] Other studies compared GCA – job performance correlation between jobs of different complexity. Hunter and Hunter (1984)[80] developed a meta-analysis with over 400 studies and found that this correlation was higher for jobs of high complexity (0.57). Followed by jobs of medium complexity (0.51) and low complexity (0.38).

Job performance is measured by objective rating performance and subjective ratings. Although the former is better than subjective ratings, most of studies in job performance and GCA have been based on supervisor performance ratings. This rating criteria is considered problematic and unreliable, mainly because of its difficulty to define what is a good and bad performance. Rating of supervisors tends to be subjective and inconsistent among employees.[81] Additionally, supervisor rating of job performance is influenced by different factors, such as halo effect,[82] facial attractiveness,[83] racial or ethnic bias, and height of employees.[84] However, Vinchur, Schippmann, Switzer and Roth (1998)[79] found in their study with sales employees that objective sales performance had a correlation of 0.04 with GCA, while supervisor performance rating got a correlation of 0.40. These findings were surprising, considering that the main criteria for assessing these employees would be the objective sales.

In understanding how GCA is associated job performance, several researchers concluded that GCA affects acquisition of job knowledge, which in turn improves job performance. In other words, people high in GCA are capable to learn faster and acquire more job knowledge easily, which allow them to perform better. Conversely, lack of ability to acquire job knowledge will directly affect job performance. This is due to low levels of GCA. Also, GCA has a direct effect on job performance. In a daily basis, employees are exposed constantly to challenges and problem solving tasks, which success depends solely on their GCA. These findings are discouraging for governmental entities in charge of protecting rights of workers.[85] Because of the high correlation of GCA on job performance, companies are hiring employees based on GCA tests scores. Inevitably, this practice is denying the opportunity to work to many people with low GCA.[86] Previous researchers have found significant differences in GCA between race / ethnicity groups. For instance, there is a debate whether studies were biased against Afro-Americans, who scored significantly lower than white Americans in GCA tests.[87] However, findings on GCA-job performance correlation must be taken carefully. Some researchers have warned the existence of statistical artifacts related to measures of job performance and GCA test scores. For example, Viswesvaran, Ones and Schmidt (1996)[88] argued that is quite impossible to obtain perfect measures of job performance without incurring in any methodological error. Moreover, studies on GCA and job performance are always susceptible to range restriction, because data is gathered mostly from current employees, neglecting those that were not hired. Hence, sample comes from employees who successfully passed hiring process, including measures of GCA.[89]

Income
The correlation between income and g, as measured by IQ scores, averages about .40 across studies. The correlation is higher at higher levels of education and it increases with age, stabilizing when people reach their highest career potential in middle age. Even when education, occupation and socioeconomic background are held constant, the correlation does not vanish.[90]

Other correlates
The g factor is reflected in many social outcomes. Many social behavior problems, such as dropping out of school, chronic welfare dependency, accident proneness, and crime, are negatively correlated with g independent of social class of origin.[91] Health and mortality outcomes are also linked to g, with higher childhood test scores predicting better health and mortality outcomes in adulthood (see Cognitive epidemiology).[92]

In 2010, psychologist Satoshi Kanazawa argued that g correlated only with performance on evolutionarily unfamiliar rather than evolutionarily familiar problems, proposing what he termed the "Savanna-IQ interaction hypothesis".[93][94] In response, psychologists Scott Barry Kaufman, Colin G. DeYoung, Deirdre Reis, and Jeremy R. Gray gave 112 subjects a 70-item computerized version of the Wason selection task (a logic puzzle) in a social relations context as proposed by evolutionary psychologists Leda Cosmides and John Tooby in The Adapted Mind,[95] and found instead that "performance on non-arbitrary, evolutionarily familiar problems is more strongly related to general intelligence than performance on arbitrary, evolutionarily novel problems".[96][97]

Genetic and environmental determinants
Main article: Heritability of IQ
Heritability is the proportion of phenotypic variance in a trait in a population that can be attributed to genetic factors. The heritability of g has been estimated to fall between 40 and 80 percent using twin, adoption, and other family study designs as well as molecular genetic methods. Estimates based on the totality of evidence place the heritability of g at about 50%.[98] It has been found to increase linearly with age. For example, a large study involving more than 11,000 pairs of twins from four countries reported the heritability of g to be 41 percent at age nine, 55 percent at age twelve, and 66 percent at age seventeen. Other studies have estimated that the heritability is as high as 80 percent in adulthood, although it may decline in old age. Most of the research on the heritability of g has been conducted in the United States and Western Europe, but studies in Russia (Moscow), the former East Germany, Japan, and rural India have yielded similar estimates of heritability as Western studies.[40][99][100][101]

Behavioral genetic research has also established that the shared (or between-family) environmental effects on g are strong in childhood, but decline thereafter and are negligible in adulthood. This indicates that the environmental effects that are important to the development of g are unique and not shared between members of the same family.[100]

The genetic correlation is a statistic that indicates the extent to which the same genetic effects influence two different traits. If the genetic correlation between two traits is zero, the genetic effects on them are independent, whereas a correlation of 1.0 means that the same set of genes explains the heritability of both traits (regardless of how high or low the heritability of each is). Genetic correlations between specific mental abilities (such as verbal ability and spatial ability) have been consistently found to be very high, close to 1.0. This indicates that genetic variation in cognitive abilities is almost entirely due to genetic variation in whatever g is. It also suggests that what is common among cognitive abilities is largely caused by genes, and that independence among abilities is largely due to environmental effects. Thus it has been argued that when genes for intelligence are identified, they will be "generalist genes", each affecting many different cognitive abilities.[100][102][103]

Much research points to g being a highly polygenic trait influenced by many common genetic variants, each having only small effects. Another possibility is that heritable differences in g are due to individuals having different "loads" of rare, deleterious mutations, with genetic variation among individuals persisting due to mutation–selection balance.[103][104]

A number of candidate genes have been reported to be associated with intelligence differences, but the effect sizes have been small and almost none of the findings have been replicated. No individual genetic variants have been conclusively linked to intelligence in the normal range so far. Many researchers believe that very large samples will be needed to reliably detect individual genetic polymorphisms associated with g.[40][104] However, while genes influencing variation in g in the normal range have proven difficult to find, many single-gene disorders with mental retardation among their symptoms have been discovered.[105]

It has been suggested that the g loading of mental tests have been found to correlate with heritability,[33] but both the empirical data and statistical methodology bearing on this question are matters of active controversy.[106][107][108] Several studies suggest that tests with larger g loadings are more affected by inbreeding depression lowering test scores.[citation needed] There is also evidence that tests with larger g loadings are associated with larger positive heterotic effects on test scores, which has been suggested to indicate the presence of genetic dominance effects for g.[109]

Neuroscientific findings
Main article: Neuroscience and intelligence
g has a number of correlates in the brain. Studies using magnetic resonance imaging (MRI) have established that g and total brain volume are moderately correlated (r~.3–.4). External head size has a correlation of ~.2 with g. MRI research on brain regions indicates that the volumes of frontal, parietal and temporal cortices, and the hippocampus are also correlated with g, generally at .25 or more, while the correlations, averaged over many studies, with overall grey matter and overall white matter have been found to be .31 and .27, respectively. Some but not all studies have also found positive correlations between g and cortical thickness. However, the underlying reasons for these associations between the quantity of brain tissue and differences in cognitive abilities remain largely unknown.[2]

Most researchers believe that intelligence cannot be localized to a single brain region, such as the frontal lobe. Brain lesion studies have found small but consistent associations indicating that people with more white matter lesions tend to have lower cognitive ability. Research utilizing NMR spectroscopy has discovered somewhat inconsistent but generally positive correlations between intelligence and white matter integrity, supporting the notion that white matter is important for intelligence.[2]

Some research suggests that aside from the integrity of white matter, also its organizational efficiency is related to intelligence. The hypothesis that brain efficiency has a role in intelligence is supported by functional MRI research showing that more intelligent people generally process information more efficiently, i.e., they use fewer brain resources for the same task than less intelligent people.[2]

Small but relatively consistent associations with intelligence test scores include also brain activity, as measured by EEG records or event-related potentials, and nerve conduction velocity.[110][111]

g in non-humans
Main article: g factor in non-humans
Evidence of a general factor of intelligence has also been observed in non-human animals. Studies have shown that g is responsible for 47% of the variance at the species level in primates[112] and around 55% of the individual variance observed in mice.[113][114] A review and meta-analysis of general intelligence, however, found that the average correlation among cognitive abilities was 0.18 and suggested that overall support for g is weak in non-human animals.[115]

While not able to be assessed using the same intelligence measures used in humans, cognitive ability can be measured with a variety of interactive and observational tools focusing on innovation, habit reversal, social learning, and responses to novelty. Non-human models of g such as mice are used to study genetic influences on intelligence and neurological developmental research into the mechanisms behind and biological correlates of g.[116]

g (or c) in human groups
Main article: Collective intelligence
Similar to g for individuals, a new research path aims to extract a general collective intelligence factor c for groups displaying a group's general ability to perform a wide range of tasks.[117] Definition, operationalization and statistical approach for this c factor are derived from and similar to g. Causes, predictive validity as well as additional parallels to g are investigated.[118]

Other biological associations
Height is correlated with intelligence (r~.2), but this correlation has not generally been found within families (i.e., among siblings), suggesting that it results from cross-assortative mating for height and intelligence, or from another factor that correlates with both (e.g. nutrition). Myopia is known to be associated with intelligence, with a correlation of around .2 to .25, and this association has been found within families, too.[119]

Group similarities and differences
See also: Sex differences in intelligence and Race and intelligence
Cross-cultural studies indicate that the g factor can be observed whenever a battery of diverse, complex cognitive tests is administered to a human sample. The factor structure of IQ tests has also been found to be consistent across sexes and ethnic groups in the U.S. and elsewhere.[111] The g factor has been found to be the most invariant of all factors in cross-cultural comparisons. For example, when the g factors computed from an American standardization sample of Wechsler's IQ battery and from large samples who completed the Japanese translation of the same battery were compared, the congruence coefficient was .99, indicating virtual identity. Similarly, the congruence coefficient between the g factors obtained from white and black standardization samples of the WISC battery in the U.S. was .995, and the variance in test scores accounted for by g was highly similar for both groups.[120]

Most studies suggest that there are negligible differences in the mean level of g between the sexes, but that sex differences in cognitive abilities are to be found in more narrow domains. For example, males generally outperform females in spatial tasks, while females generally outperform males in verbal tasks.[121] Another difference that has been found in many studies is that males show more variability in both general and specific abilities than females, with proportionately more males at both the low end and the high end of the test score distribution.[122]

Differences in g between racial and ethnic groups have been found, particularly in the U.S. between black- and white-identifying test takers, though these differences appear to have diminished significantly over time,[107] and to be attributable to environmental (rather than genetic) causes.[107][123] Some researchers have suggested that the magnitude of the black-white gap in cognitive test results is dependent on the magnitude of the test's g loading, with tests showing higher g loading producing larger gaps (see Spearman's hypothesis),[124] while others have criticized this view as methodologically unfounded.[125][126] Still others have noted that despite the increasing g loading of IQ test batteries over time, the performance gap between racial groups continues to diminish.[107] Comparative analysis has shown that while a gap of approximately 1.1 standard deviation in mean IQ (around 16 points) between white and black Americans existed in the late 1960s, between 1972 and 2002 black Americans gained between 4 and 7 IQ points relative to non-Hispanic Whites, and that "the g gap between Blacks and Whites declined virtually in tandem with the IQ gap."[107] In contrast, Americans of East Asian descent generally slightly outscore white Americans.[127] It has been claimed that racial and ethnic differences similar to those found in the U.S. can be observed globally,[128] but the significance, methodological grounding, and truth of such claims have all been disputed.[129][130][131][132][133][134]

Relation to other psychological constructs
Elementary cognitive tasks
Main articles: Elementary cognitive task and Mental chronometry

An illustration of the Jensen box, an apparatus for measuring choice reaction time.
Elementary cognitive tasks (ECTs) also correlate strongly with g. ECTs are, as the name suggests, simple tasks that apparently require very little intelligence, but still correlate strongly with more exhaustive intelligence tests. Determining whether a light is red or blue and determining whether there are four or five squares drawn on a computer screen are two examples of ECTs. The answers to such questions are usually provided by quickly pressing buttons. Often, in addition to buttons for the two options provided, a third button is held down from the start of the test. When the stimulus is given to the subject, they remove their hand from the starting button to the button of the correct answer. This allows the examiner to determine how much time was spent thinking about the answer to the question (reaction time, usually measured in small fractions of second), and how much time was spent on physical hand movement to the correct button (movement time). Reaction time correlates strongly with g, while movement time correlates less strongly.[135] ECT testing has allowed quantitative examination of hypotheses concerning test bias, subject motivation, and group differences. By virtue of their simplicity, ECTs provide a link between classical IQ testing and biological inquiries such as fMRI studies.

Working memory
One theory holds that g is identical or nearly identical to working memory capacity. Among other evidence for this view, some studies have found factors representing g and working memory to be perfectly correlated. However, in a meta-analysis the correlation was found to be considerably lower.[136] One criticism that has been made of studies that identify g with working memory is that "we do not advance understanding by showing that one mysterious concept is linked to another."[137]

Piagetian tasks
Psychometric theories of intelligence aim at quantifying intellectual growth and identifying ability differences between individuals and groups. In contrast, Jean Piaget's theory of cognitive development seeks to understand qualitative changes in children's intellectual development. Piaget designed a number of tasks to verify hypotheses arising from his theory. The tasks were not intended to measure individual differences, and they have no equivalent in psychometric intelligence tests.[138][139] For example, in one of the best-known Piagetian conservation tasks a child is asked if the amount of water in two identical glasses is the same. After the child agrees that the amount is the same, the investigator pours the water from one of the glasses into a glass of different shape so that the amount appears different although it remains the same. The child is then asked if the amount of water in the two glasses is the same or different.

Notwithstanding the different research traditions in which psychometric tests and Piagetian tasks were developed, the correlations between the two types of measures have been found to be consistently positive and generally moderate in magnitude. A common general factor underlies them. It has been shown that it is possible to construct a battery consisting of Piagetian tasks that is as good a measure of g as standard IQ tests.[138][140]

Personality
Main article: Intelligence and personality
The traditional view in psychology is that there is no meaningful relationship between personality and intelligence, and that the two should be studied separately. Intelligence can be understood in terms of what an individual can do, or what his or her maximal performance is, while personality can be thought of in terms of what an individual will typically do, or what his or her general tendencies of behavior are. Research has indicated that correlations between measures of intelligence and personality are small, and it has thus been argued that g is a purely cognitive variable that is independent of personality traits. In a 2007 meta-analysis the correlations between g and the "Big Five" personality traits were found to be as follows:

conscientiousness −.04
agreeableness .00
extraversion .02
openness .22
emotional stability .09
The same meta-analysis found a correlation of .20 between self-efficacy and g.[141][142][143]

Some researchers have argued that the associations between intelligence and personality, albeit modest, are consistent. They have interpreted correlations between intelligence and personality measures in two main ways. The first perspective is that personality traits influence performance on intelligence tests. For example, a person may fail to perform at a maximal level on an IQ test due to his or her anxiety and stress-proneness. The second perspective considers intelligence and personality to be conceptually related, with personality traits determining how people apply and invest their cognitive abilities, leading to knowledge expansion and greater cognitive differentiation.[141][144]

Creativity
Some researchers believe that there is a threshold level of g below which socially significant creativity is rare, but that otherwise there is no relationship between the two. It has been suggested that this threshold is at least one standard deviation above the population mean. Above the threshold, personality differences are believed to be important determinants of individual variation in creativity.[145][146]

Others have challenged the threshold theory. While not disputing that opportunity and personal attributes other than intelligence, such as energy and commitment, are important for creativity, they argue that g is positively associated with creativity even at the high end of the ability distribution. The longitudinal Study of Mathematically Precocious Youth has provided evidence for this contention. It has showed that individuals identified by standardized tests as intellectually gifted in early adolescence accomplish creative achievements (for example, securing patents or publishing literary or scientific works) at several times the rate of the general population, and that even within the top 1 percent of cognitive ability, those with higher ability are more likely to make outstanding achievements. The study has also suggested that the level of g acts as a predictor of the level of achievement, while specific cognitive ability patterns predict the realm of achievement.[147][148]

Challenges
Gf-Gc theory
Main article: Fluid and crystallized intelligence
Raymond Cattell, a student of Charles Spearman's, rejected the unitary g factor model and divided g into two broad, relatively independent domains: fluid intelligence (Gf) and crystallized intelligence (Gc). Gf is conceptualized as a capacity to figure out novel problems, and it is best assessed with tests with little cultural or scholastic content, such as Raven's matrices. Gc can be thought of as consolidated knowledge, reflecting the skills and information that an individual acquires and retains throughout his or her life. Gc is dependent on education and other forms of acculturation, and it is best assessed with tests that emphasize scholastic and cultural knowledge.[2][44][149] Gf can be thought to primarily consist of current reasoning and problem solving capabilities, while Gc reflects the outcome of previously executed cognitive processes.[150]

The rationale for the separation of Gf and Gc was to explain individuals' cognitive development over time. While Gf and Gc have been found to be highly correlated, they differ in the way they change over a lifetime. Gf tends to peak at around age 20, slowly declining thereafter. In contrast, Gc is stable or increases across adulthood. A single general factor has been criticized as obscuring this bifurcated pattern of development. Cattell argued that Gf reflected individual differences in the efficiency of the central nervous system. Gc was, in Cattell's thinking, the result of a person "investing" his or her Gf in learning experiences throughout life.[2][30][44][151]

Cattell, together with John Horn, later expanded the Gf-Gc model to include a number of other broad abilities, such as Gq (quantitative reasoning) and Gv (visual-spatial reasoning). While all the broad ability factors in the extended Gf-Gc model are positively correlated and thus would enable the extraction of a higher order g factor, Cattell and Horn maintained that it would be erroneous to posit that a general factor underlies these broad abilities. They argued that g factors computed from different test batteries are not invariant and would give different values of g, and that the correlations among tests arise because it is difficult to test just one ability at a time.[2][48][152]

However, several researchers have suggested that the Gf-Gc model is compatible with a g-centered understanding of cognitive abilities. For example, John B. Carroll's three-stratum model of intelligence includes both Gf and Gc together with a higher-order g factor. Based on factor analyses of many data sets, some researchers have also argued that Gf and g are one and the same factor and that g factors from different test batteries are substantially invariant provided that the batteries are large and diverse.[44][153][154]

Theories of uncorrelated abilities
Several theorists have proposed that there are intellectual abilities that are uncorrelated with each other. Among the earliest was L.L. Thurstone who created a model of primary mental abilities representing supposedly independent domains of intelligence. However, Thurstone's tests of these abilities were found to produce a strong general factor. He argued that the lack of independence among his tests reflected the difficulty of constructing "factorially pure" tests that measured just one ability. Similarly, J.P. Guilford proposed a model of intelligence that comprised up to 180 distinct, uncorrelated abilities, and claimed to be able to test all of them. Later analyses have shown that the factorial procedures Guilford presented as evidence for his theory did not provide support for it, and that the test data that he claimed provided evidence against g did in fact exhibit the usual pattern of intercorrelations after correction for statistical artifacts.[155][156]

More recently, Howard Gardner has developed the theory of multiple intelligences. He posits the existence of nine different and independent domains of intelligence, such as mathematical, linguistic, spatial, musical, bodily-kinesthetic, meta-cognitive, and existential intelligences, and contends that individuals who fail in some of them may excel in others. According to Gardner, tests and schools traditionally emphasize only linguistic and logical abilities while neglecting other forms of intelligence. While popular among educationalists, Gardner's theory has been much criticized by psychologists and psychometricians. One criticism is that the theory does violence to both scientific and everyday usages of the word "intelligence." Several researchers have argued that not all of Gardner's intelligences fall within the cognitive sphere. For example, Gardner contends that a successful career in professional sports or popular music reflects bodily-kinesthetic intelligence and musical intelligence, respectively, even though one might usually talk of athletic and musical skills, talents, or abilities instead. Another criticism of Gardner's theory is that many of his purportedly independent domains of intelligence are in fact correlated with each other. Responding to empirical analyses showing correlations between the domains, Gardner has argued that the correlations exist because of the common format of tests and because all tests require linguistic and logical skills. His critics have in turn pointed out that not all IQ tests are administered in the paper-and-pencil format, that aside from linguistic and logical abilities, IQ test batteries contain also measures of, for example, spatial abilities, and that elementary cognitive tasks (for example, inspection time and reaction time) that do not involve linguistic or logical reasoning correlate with conventional IQ batteries, too.[71][157][158][159]

Robert Sternberg, working with various colleagues, has also suggested that intelligence has dimensions independent of g. He argues that there are three classes of intelligence: analytic, practical, and creative. According to Sternberg, traditional psychometric tests measure only analytic intelligence, and should be augmented to test creative and practical intelligence as well. He has devised several tests to this effect. Sternberg equates analytic intelligence with academic intelligence, and contrasts it with practical intelligence, defined as an ability to deal with ill-defined real-life problems. Tacit intelligence is an important component of practical intelligence, consisting of knowledge that is not explicitly taught but is required in many real-life situations. Assessing creativity independent of intelligence tests has traditionally proved difficult, but Sternberg and colleagues have claimed to have created valid tests of creativity, too. The validation of Sternberg's theory requires that the three abilities tested are substantially uncorrelated and have independent predictive validity. Sternberg has conducted many experiments which he claims confirm the validity of his theory, but several researchers have disputed this conclusion. For example, in his reanalysis of a validation study of Sternberg's STAT test, Nathan Brody showed that the predictive validity of the STAT, a test of three allegedly independent abilities, was almost solely due to a single general factor underlying the tests, which Brody equated with the g factor.[160][161]

Flynn's model
James Flynn has argued that intelligence should be conceptualized at three different levels: brain physiology, cognitive differences between individuals, and social trends in intelligence over time. According to this model, the g factor is a useful concept with respect to individual differences but its explanatory power is limited when the focus of investigation is either brain physiology, or, especially, the effect of social trends on intelligence. Flynn has criticized the notion that cognitive gains over time, or the Flynn effect, are "hollow" if they cannot be shown to be increases in g. He argues that the Flynn effect reflects shifting social priorities and individuals' adaptation to them. To apply the individual differences concept of g to the Flynn effect is to confuse different levels of analysis. On the other hand, according to Flynn, it is also fallacious to deny, by referring to trends in intelligence over time, that some individuals have "better brains and minds" to cope with the cognitive demands of their particular time. At the level of brain physiology, Flynn has emphasized both that localized neural clusters can be affected differently by cognitive exercise, and that there are important factors that affect all neural clusters.[162]

Other criticisms
Perhaps the most famous critique of the construct of g is that of the paleontologist and biologist Stephen Jay Gould, presented in his 1981 book The Mismeasure of Man. He argued that psychometricians have fallaciously reified the g factor as a physical thing in the brain, even though it is simply the product of statistical calculations (i.e., factor analysis). He further noted that it is possible to produce factor solutions of cognitive test data that do not contain a g factor yet explain the same amount of information as solutions that yield a g. According to Gould, there is no rationale for preferring one factor solution to another, and factor analysis therefore does not lend support to the existence of an entity like g. More generally, Gould criticized the g theory for abstracting intelligence as a single entity and for ranking people "in a single series of worthiness", arguing that such rankings are used to justify the oppression of disadvantaged groups.[37][163]

Many researchers have criticized Gould's arguments. For example, they have rejected the accusation of reification, maintaining that the use of extracted factors such as g as potential causal variables whose reality can be supported or rejected by further investigations constitutes a normal scientific practice that in no way distinguishes psychometrics from other sciences. Critics have also suggested that Gould did not understand the purpose of factor analysis, and that he was ignorant of relevant methodological advances in the field. While different factor solutions may be mathematically equivalent in their ability to account for intercorrelations among tests, solutions that yield a g factor are psychologically preferable for several reasons extrinsic to factor analysis, including the phenomenon of the positive manifold, the fact that the same g can emerge from quite different test batteries, the widespread practical validity of g, and the linkage of g to many biological variables.[37][38][164]

John Horn and John McArdle have argued that the modern g theory, as espoused by, for example, Arthur Jensen, is unfalsifiable, because the existence of a common factor like g follows tautologically from positive correlations among tests. They contrasted the modern hierarchical theory of g with Spearman's original two-factor theory which was readily falsifiable (and indeed was falsified).[30]

Joseph Graves Jr. and Amanda Johnson have argued that g "...is to the psychometricians what Huygens' ether was to early physicists: a nonentity taken as an article of faith instead of one in need of verification by real data."[165]

See also
Charles Spearman
Factor analysis in psychometrics
Fluid and crystallized intelligence
Flynn effect
Intelligence
Intelligence quotient
Malleability of intelligence
Spearman's hypothesis
Eugenics






Semantic memory
https://en.wikipedia.org/wiki/Semantic_memory#History
Semantic memory is one of the two types of explicit memory (or declarative memory) (our memory of facts or events that is explicitly stored and retrieved).[1] Semantic memory refers to general world knowledge that we have accumulated throughout our lives.[2] This general knowledge (facts, ideas, meaning and concepts) is intertwined in experience and dependent on culture. Semantic memory is distinct from episodic memory, which is our memory of experiences and specific events that occur during our lives, from which we can recreate at any given point.[3] For instance, semantic memory might contain information about what a cat is, whereas episodic memory might contain a specific memory of petting a particular cat. We can learn about new concepts by applying our knowledge learned from things in the past.[4] The counterpart to declarative or explicit memory is nondeclarative memory or implicit memory.[5]


History
The idea of semantic memory was first introduced following a conference in 1972 between Endel Tulving, of the University of Toronto, and W. Donaldson on the role of organization in human memory. Tulving constructed a proposal to distinguish between episodic memory and what he termed semantic memory.[6] He was mainly influenced by the ideas of Reiff and Scheers, who in 1959 made the distinction between two primary forms of memory.[7] One form was entitled "remembrances", the other "memoria". The remembrance concept dealt with memories that contained experiences of an autobiographic index, whereas the memoria concept dealt with those memories that did not reference experiences having an autobiographic index.[8] Semantic memory reflects our knowledge of the world around us, hence the term 'general knowledge' is often used. It holds generic information that is more than likely acquired across various contexts and is used across different situations. According to Madigan in his book titled Memory, semantic memory is the sum of all knowledge one has obtained—whether it be vocabulary, understanding of math, or all the facts one knows. In his book titled "Episodic and Semantic Memory", Endel Tulving adopted the term "semantic" from linguists to refer to a system of memory for "words and verbal symbols, their meanings and referents, the relations between them, and the rules, formulas, or algorithms for influencing them."[9] The use of semantic memory is quite different from that of episodic memory. Semantic memory refers to general facts and meanings one shares with others whereas episodic memory refers to unique and concrete personal experiences. Tulving's proposal of this distinction between semantic and episodic memory was widely accepted, primarily because it allowed the separate conceptualization of knowledge of the world.[10] Tulving discusses conceptions of episodic and semantic memory in his book titled Elements of Episodic Memory,[11] in which he states that several factors differentiate between episodic memory and semantic memory in ways that include

the characteristics of their operations,
the kind of information they process,
their application to the real world as well as the memory laboratory.
Before Tulving's proposal, this area of human memory had been neglected by experimental psychologists. Since Tulving's inception of these distinctions, several experimenters have conducted tests to determine the validity of his hypothesized differences between episodic and semantic memory.

Recent research has focused on the idea that when people access a word's meaning, sensorimotor information that is used to perceive and act on the concrete object the word suggests is automatically activated. In the theory of grounded cognition, the meaning of a particular word is grounded in the sensorimotor systems.[12] For example, when one thinks of a pear, knowledge of grasping, chewing, sights, sounds, and tastes used to encode episodic experiences of a pear are recalled through sensorimotor simulation. A grounded simulation approach refers to context-specific re-activations that integrate the important features of episodic experience into a current depiction. Such research has challenged previously utilized amodal views. The brain encodes multiple inputs such as words and pictures to integrate and create a larger conceptual idea by using amodal views (also known as amodal perception). Instead of being representations in modality-specific systems, semantic memory representations had previously been viewed as redescriptions of modality-specific states. Some accounts of category-specific semantic deficits that are amodal remain even though researchers are beginning to find support for theories in which knowledge is tied to modality-specific brain regions. This research defines a clear link between episodic experiences and semantic memory. The concept that semantic representations are grounded across modality-specific brain regions can be supported by the fact that episodic and semantic memory appear to function in different yet mutually dependent ways. The distinction between semantic and episodic memory has become a part of the broader scientific discourse. For example, it has been speculated that semantic memory captures the stable aspects of our personality while episodes of illness may have a more episodic nature.[13]

Empirical evidence
Jacoby and Dallas (1981)
This study[14] was not created to solely provide evidence for the distinction of semantic and episodic memory stores. However, they did use the experimental dissociation method which provides evidence for Tulving's hypothesis.

Part one
Subjects were presented with 60 words (one at a time) and were asked different questions.

Some questions asked were to cause the subject to pay attention to the visual appearance: Is the word typed in bold letters?
Some questions caused the participants to pay attention to the sound of the word: Does the word rhyme with ball?
Some questions caused the subjects to pay attention to the meaning of the word: Does the word refer to a form of communication?
Half of the questions were "no" answers and the other half "yes"
Part Two
In the second phase of the experiment, 60 "old words" seen in stage one and "20 new words" not shown in stage one were presented to the subjects one at a time.

The subjects were given one of two tasks:

Perceptual Identification task (semantic): The words were flashed on a video-screen for 35ms and the subjects were required to say what the word was.
Episodic Recognition Task: Subjects were presented with each word and had to decide whether they had seen the word in the previous stage of the experiment.
Results:
The percentages correct in the Semantic task (perceptual identification) did not change with the encoding conditions of appearance, sound, or meaning.
The percentages for the episodic task increased from the appearance condition (.50), to the sound condition (.63), to the meaning condition (.86). – The effect was also greater for the "yes" encoding words than the "no" encoding words. (see stage one)
Conclusion:
It displays a strong distinction of performance of episodic and semantic tasks, thus supporting Tulving's hypothesis.

Models
The essence of semantic memory is that its contents are not tied to any particular instance of experience, as in episodic memory. Instead, what is stored in semantic memory is the "gist" of experience, an abstract structure that applies to a wide variety of experiential objects and delineates categorical and functional relationships between such objects.[15] Thus, a complete theory of semantic memory must account not only for the representational structure of such "gists", but also for how they can be extracted from experience. Numerous models of semantic memory have been proposed; they are summarized below.

Network models
Networks of various sorts play an integral part in many theories of semantic memory. Generally speaking, a network is composed of a set of nodes connected by links. The nodes may represent concepts, words, perceptual features, or nothing at all. The links may be weighted such that some are stronger than others or, equivalently, have a length such that some links take longer to traverse than others. All these features of networks have been employed in models of semantic memory, examples of which are found below.

Teachable Language Comprehender (TLC)
One of the first examples of a network model of semantic memory is the Teachable Language Comprehender (TLC).[16] In this model, each node is a word, representing a concept (like "Bird"). With each node is stored a set of properties (like "can fly" or "has wings") as well as pointers (i.e., links) to other nodes (like "Chicken"). A node is directly linked to those nodes of which it is either a subclass or superclass (i.e., "Bird" would be connected to both "Chicken" and "Animal"). Thus, TLC is a hierarchical knowledge representation in that high-level nodes representing large categories are connected (directly or indirectly, via the nodes of subclasses) to many instances of those categories, whereas nodes representing specific instances are at a lower level, connected only to their superclasses. Furthermore, properties are stored at the highest category level to which they apply. For example, "is yellow" would be stored with "Canary", "has wings" would be stored with "Bird" (one level up), and "can move" would be stored with "Animal" (another level up). Nodes may also store negations of the properties of their superordinate nodes (i.e., "NOT-can fly" would be stored with "penguin"). This provides an economy of representation in that properties are only stored at the category level at which they become essential, that is, at which point they become critical features (see below).

Processing in TLC is a form of spreading activation.[17] That is, when a node becomes active, that activation spreads to other nodes via the links between them. In that case, the time to answer the question "Is a chicken a bird?" is a function of how far the activation between the nodes for "Chicken" and "Bird" must spread, i.e., the number of links between the nodes "Chicken" and "Bird".

The original version of TLC did not put weights on the links between nodes. This version performed comparably to humans in many tasks, but failed to predict that people would respond faster to questions regarding more typical category instances than those involving less typical instances.[18] Collins and Quillian later updated TLC to include weighted connections to account for this effect.[19] This updated TLC is capable of explaining both the familiarity effect and the typicality effect. Its biggest advantage is that it clearly explains priming: you are more likely to retrieve information from memory if related information (the "prime") has been presented a short time before. There are still a number of memory phenomena for which TLC has no account, including why people are able to respond quickly to obviously false questions (like "is a chicken a meteor?"), when the relevant nodes are very far apart in the network.[20]

Semantic networks
TLC is an instance of a more general class of models known as semantic networks. In a semantic network, each node is to be interpreted as representing a specific concept, word, or feature. That is, each node is a symbol. Semantic networks generally do not employ distributed representations for concepts, as may be found in a neural network. The defining feature of a semantic network is that its links are almost always directed (that is, they only point in one direction, from a base to a target) and the links come in many different types, each one standing for a particular relationship that can hold between any two nodes.[21] Processing in a semantic network often takes the form of spreading activation (see above).

Semantic networks see the most use in models of discourse and logical comprehension, as well as in Artificial Intelligence.[22] In these models, the nodes correspond to words or word stems and the links represent syntactic relations between them. For an example of a computational implementation of semantic networks in knowledge representation, see Cravo and Martins (1993).[23]

Feature models
Feature models view semantic categories as being composed of relatively unstructured sets of features. The semantic feature-comparison model, proposed by Smith, Shoben, and Rips (1974),[24] describes memory as being composed of feature lists for different concepts. According to this view, the relations between categories would not be directly retrieved, they would be indirectly computed. For example, subjects might verify a sentence by comparing the feature sets that represent its subject and predicate concepts. Such computational feature-comparison models include the ones proposed by Meyer (1970),[25] Rips (1975),[26] Smith, et al. (1974).[24]

Early work in perceptual and conceptual categorization assumed that categories had critical features and that category membership could be determined by logical rules for the combination of features. More recent theories have accepted that categories may have an ill-defined or "fuzzy" structure[27] and have proposed probabilistic or global similarity models for the verification of category membership.[28]

Associative models
The "association"—a relationship between two pieces of information—is a fundamental concept in psychology, and associations at various levels of mental representation are essential to models of memory and cognition in general. The set of associations among a collection of items in memory is equivalent to the links between nodes in a network, where each node corresponds to a unique item in memory. Indeed, neural networks and semantic networks may be characterized as associative models of cognition. However, associations are often more clearly represented as an N×N matrix, where N is the number of items in memory. Thus, each cell of the matrix corresponds to the strength of the association between the row item and the column item.

Learning of associations is generally believed to be a Hebbian process; that is, whenever two items in memory are simultaneously active, the association between them grows stronger, and the more likely either item is to activate the other. See below for specific operationalizations of associative models.

Search of Associative Memory (SAM)
A standard model of memory that employs association in this manner is the Search of Associative Memory (SAM) model.[29] Though SAM was originally designed to model episodic memory, its mechanisms are sufficient to support some semantic memory representations, as well.[30] The SAM model contains a short-term store (STS) and long-term store (LTS), where STS is a briefly activated subset of the information in the LTS. The STS has limited capacity and affects the retrieval process by limiting the amount of information that can be sampled and limiting the time the sampled subset is in an active mode. The retrieval process in LTS is cue dependent and probabilistic, meaning that a cue initiates the retrieval process and the selected information from memory is random. The probability of being sampled is dependent on the strength of association between the cue and the item being retrieved, with stronger associations being sampled and finally one is chosen. The buffer size is defined as r, and not a fixed number, and as items are rehearsed in the buffer the associative strengths grow linearly as a function of the total time inside the buffer.[31] In SAM, when any two items simultaneously occupy a working memory buffer, the strength of their association is incremented. Thus, items that co-occur more often are more strongly associated. Items in SAM are also associated with a specific context, where the strength of that association determined by how long each item is present in a given context. In SAM, then, memories consist of a set of associations between items in memory and between items and contexts. The presence of a set of items and/or a context is more likely to evoke, then, some subset of the items in memory. The degree to which items evoke one another—either by virtue of their shared context or their co-occurrence—is an indication of the items' semantic relatedness.

In an updated version of SAM, pre-existing semantic associations are accounted for using a semantic matrix. During the experiment, semantic associations remain fixed showing the assumption that semantic associations are not significantly impacted by the episodic experience of one experiment. The two measures used to measure semantic relatedness in this model are the Latent semantic analysis (LSA) and the Word association spaces (WAS).[32] The LSA method states that similarity between words is reflected through their co-occurrence in a local context.[33] WAS was developed by analyzing a database of free association norms. In WAS, "words that have similar associative structures are placed in similar regions of space."[34]

ACT-R: a production system model
The ACT (Adaptive Control of Thought)[35] (and later ACT-R (Adaptive Control of Thought-Rational)[36]) theory of cognition represents declarative memory (of which semantic memory is a part) with "chunks", which consist of a label, a set of defined relationships to other chunks (i.e., "this is a _", or "this has a _"), and any number of chunk-specific properties. Chunks, then, can be mapped as a semantic network, given that each node is a chunk with its unique properties, and each link is the chunk's relationship to another chunk. In ACT, a chunk's activation decreases as a function of the time since the chunk was created and increases with the number of times the chunk has been retrieved from memory. Chunks can also receive activation from Gaussian noise, and from their similarity to other chunks. For example, if "chicken" is used as a retrieval cue, "canary" will receive activation by virtue of its similarity to the cue (i.e., both are birds, etc.). When retrieving items from memory, ACT looks at the most active chunk in memory; if it is above threshold, it is retrieved, otherwise an "error of omission" has occurred, i.e., the item has been forgotten. There is, additionally, a retrieval latency, which varies inversely with the amount by which the activation of the retrieved chunk exceeds the retrieval threshold. This latency is used in measuring the response time of the ACT model, to compare it to human performance.[37]

While ACT is a model of cognition in general, and not memory in particular, it nonetheless posits certain features of the structure of memory, as described above. In particular, ACT models memory as a set of related symbolic chunks which may be accessed by retrieval cues. While the model of memory employed in ACT is similar in some ways to a semantic network, the processing involved is more akin to an associative model.

Statistical models
Some models characterize the acquisition of semantic information as a form of statistical inference from a set of discrete experiences, distributed across a number of "contexts". Though these models differ in specifics, they generally employ an (Item × Context) matrix where each cell represents the number of times an item in memory has occurred in a given context. Semantic information is gleaned by performing a statistical analysis of this matrix.

Many of these models bear similarity to the algorithms used in search engines (for example, see Griffiths, et al., 2007[38] and Anderson, 1990[39]), though it is not yet clear whether they really use the same computational mechanisms.

Latent Semantic Analysis (LSA)
Perhaps the most popular of these models is Latent Semantic Analysis (LSA).[40] In LSA, a T × D matrix is constructed from a text corpus where T is the number of terms in the corpus and D is the number of documents (here "context" is interpreted as "document" and only words—or word phrases—are considered as items in memory). Each cell in the matrix is then transformed according to the equation:

{\displaystyle \mathbf {M} _{t,d}'={\frac {\ln {(1+\mathbf {M} _{t,d})}}{-\sum _{i=0}^{D}P(i|t)\ln {P(i|t)}}}}{\mathbf  {M}}_{{t,d}}'={\frac  {\ln {(1+{\mathbf  {M}}_{{t,d}})}}{-\sum _{{i=0}}^{D}P(i|t)\ln {P(i|t)}}}

where {\displaystyle P(i|t)}P(i|t) is the probability that context {\displaystyle i}i is active, given that item {\displaystyle t}t has occurred (this is obtained simply by dividing the raw frequency, {\displaystyle \mathbf {M} _{t,d}}{\mathbf  {M}}_{{t,d}} by the total of the item vector, {\displaystyle \sum _{i=0}^{D}\mathbf {M} _{t,i}}\sum _{{i=0}}^{D}{\mathbf  {M}}_{{t,i}}). This transformation—applying the logarithm, then dividing by the information entropy of the item over all contexts—provides for greater differentiation between items and effectively weights items by their ability to predict context, and vice versa (that is, items that appear across many contexts, like "the" or "and", will be weighted less, reflecting their lack of semantic information). A Singular Value Decomposition (SVD) is then performed on the matrix {\displaystyle \mathbf {M} '}{\mathbf  {M}}', which allows the number of dimensions in the matrix to be reduced, thus clustering LSA's semantic representations and providing for indirect association between items. For example, "cat" and "dog" may never appear together in the same context, so their close semantic relationship may not be well-captured by LSA's original matrix {\displaystyle \mathbf {M} }\mathbf {M} . However, by performing the SVD and reducing the number of dimensions in the matrix, the context vectors of "cat" and "dog"—which would be very similar—would migrate toward one another and perhaps merge, thus allowing "cat" and "dog" to act as retrieval cues for each other, even though they may never have co-occurred. The degree of semantic relatedness of items in memory is given by the cosine of the angle between the items' context vectors (ranging from 1 for perfect synonyms to 0 for no relationship). Essentially, then, two words are closely semantically related if they appear in similar types of documents.

Hyperspace Analogue to Language (HAL)
The Hyperspace Analogue to Language (HAL) model[41][42] considers context only as the words that immediately surround a given word. HAL computes an NxN matrix, where N is the number of words in its lexicon, using a 10-word reading frame that moves incrementally through a corpus of text. Like in SAM (see above), any time two words are simultaneously in the frame, the association between them is increased, that is, the corresponding cell in the NxN matrix is incremented. The bigger the distance between the two words, the smaller the amount by which the association is incremented (specifically, {\displaystyle \Delta =11-d}\Delta =11-d, where {\displaystyle d}d is the distance between the two words in the frame). As in LSA (see above), the semantic similarity between two words is given by the cosine of the angle between their vectors (dimension reduction may be performed on this matrix, as well). In HAL, then, two words are semantically related if they tend to appear with the same words. Note that this may hold true even when the words being compared never actually co-occur (i.e., "chicken" and "canary").

Other statistical models of semantic memory
The success of LSA and HAL gave birth to a whole field of statistical models of language. A more up-to-date list of such models may be found under the topic Measures of semantic relatedness.

Location of semantic memory in the brain
The cognitive neuroscience of semantic memory is a somewhat controversial issue with two dominant views.

On the one hand, many researchers and clinicians believe that semantic memory is stored by the same brain systems involved in episodic memory. These include the medial temporal lobes (MTL) and hippocampal formation. In this system, the hippocampal formation "encodes" memories, or makes it possible for memories to form at all, and the cortex stores memories after the initial encoding process is completed.

Recently, new evidence has been presented in support of a more precise interpretation of this hypothesis. The hippocampal formation includes, among other structures: the hippocampus itself, the entorhinal cortex, and the perirhinal cortex. These latter two make up the "parahippocampal cortices". Amnesics with damage to the hippocampus but some spared parahippocampal cortex were able to demonstrate some degree of intact semantic memory despite a total loss of episodic memory. This strongly suggests that encoding of information leading to semantic memory does not have its physiological basis in the hippocampus.[43]

Other researchers believe the hippocampus is only involved in episodic memory and spatial cognition. This then raises the question where semantic memory may be located. Some believe semantic memory lives in temporal neocortex. Others believe that semantic knowledge is widely distributed across all brain areas. To illustrate this latter view, consider your knowledge of dogs. Researchers holding the 'distributed semantic knowledge' view believe that your knowledge of the sound a dog makes exists in your auditory cortex, whilst your ability to recognize and imagine the visual features of a dog resides in your visual cortex. Recent evidence supports the idea that the temporal pole bilaterally is the convergence zone for unimodal semantic representations into a multimodal representation. These regions are particularly vulnerable to damage in semantic dementia, which is characterised by a global semantic deficit.

Neural correlates and biological workings
The hippocampal areas are important to semantic memory's involvement with declarative memory. The left inferior prefrontal cortex (PFC) and the left posterior temporal areas are other areas involved in semantic memory use. Temporal lobe damage affecting the lateral and medial cortexes have been related to semantic impairments. Damage to different areas of the brain affect semantic memory differently.[44]

Neuroimaging evidence suggests that left hippocampal areas show an increase in activity during semantic memory tasks. During semantic retrieval, two regions in the right middle frontal gyrus and the area of the right inferior temporal gyrus similarly show an increase in activity.[44] Damage to areas involved in semantic memory result in various deficits, depending on the area and type of damage. For instance, Lambon Ralph, Lowe, & Rogers (2007) found that category-specific impairments can occur where patients have different knowledge deficits for one semantic category over another, depending on location and type of damage. Category-specific impairments might indicate that knowledge may rely differentially upon sensory and motor properties encoded in separate areas (Farah and McClelland, 1991).[45]

Category-specific impairments can involve cortical regions where living and nonliving things are represented and where feature and conceptual relationships are represented. Depending on the damage to the semantic system, one type might be favored over the other. In many cases, there is a point where one domain is better than the other (i.e. - representation of living and nonliving things over feature and conceptual relationships or vice versa)[46]

Different diseases and disorders can affect the biological workings of semantic memory. A variety of studies have been done in an attempt to determine the effects on varying aspects of semantic memory. For example, Lambon, Lowe, & Rogers (2007) studied the different effects semantic dementia and herpes simplex virus encephalitis have on semantic memory. They found that semantic dementia has a more generalized semantic impairment. Additionally, deficits in semantic memory as a result of herpes simplex virus encephalitis tend to have more category-specific impairments. Other disorders that affect semantic memory - such as Alzheimer's disease - has been observed clinically as errors in naming, recognizing, or describing objects. Whereas researchers have attributed such impairment to degradation of semantic knowledge (Koenig et al. 2007).[47]

Various neural imaging and research points to semantic memory and episodic memory resulting from distinct areas in the brain. Still other research suggests that both semantic memory and episodic memory are part of a singular declarative memory system, yet represent different sectors and parts within the greater whole. Different areas within the brain are activated depending on whether semantic or episodic memory is accessed. Certain experts are still arguing whether or not the two types of memory are from distinct systems or whether the neural imaging makes it appear that way as a result of the activation of different mental processes during retrieval.[48]

Disorders
Category specific semantic impairments
Category specific semantic impairments are a neuropsychological occurrence in which an individual ability to identify certain categories of objects is selectively impaired while other categories remain undamaged.[49] This condition can result in brain damage which can be widespread, patchy, or localized to a specific part of the brain. Research suggests that the temporal lobe, more specifically the structural description system[49] might be responsible for category specific impairments of semantic memory disorders.

Impairment categories
Category specific semantic deficits tend to fall into two different categories, each of which can be spared or emphasized depending on the individual's specific deficit. The first category consists of animate objects with "animals" being the most common deficit. The second category consists of inanimate objects with two subcategories of "fruits and vegetables" (biological inanimate objects) and "artifacts" being the most common deficits. The type of deficit, however, does not indicate a lack of conceptual knowledge associated with that category. This is because the visual system used to identify and describe the structure of objects functions independently of an individual's conceptual knowledge base.[49]

Most of the time, these two categories are consistent with case-study data. However, there are a few exceptions to the rule as is the case with most neuropsychological conditions. Things like food, body parts, and musical instruments have been shown to defy the animate/inanimate or biological/non-biological categorical division. For example, it has been shown that musical instruments tend to be impaired in patients with damage to the living things category despite the fact that musical instruments fall in the non-biological/inanimate category. However, there are also cases of biological impairment where musical instrument performance is at a normal level. Similarly, food has been shown to be impaired in those with biological category impairments. The category of food specifically can present some irregularities though because it can be natural, but it can also be highly processed. This can be seen in a case study of an individual who had impairments for vegetables and animals, while their category for food remained intact. These findings are all based on individual case studies, so although they are the most reliable source of information, they are also full of inconsistencies because every brain and every instance of brain damage is unique in its own way.[49]

Theories
When looking at category specific semantic deficits, it is important to consider how semantic information is stored in the brain. Theories on this subject tend to fall into two different groups based on their underlying principles. Theories based on the "correlated structure principle", which states that conceptual knowledge organization in the brain is a reflection of how often an object's properties occur, assume that the brain reflects the statistical relation of object properties and how they relate to each other. Theories based on the "neural structure principle", which states that the conceptual knowledge organization in the brain is controlled by representational limits imposed by the brain itself, assume that organization is internal. These theories assume that natural selective pressures have caused neural circuits specific to certain domains to be formed, and that these are dedicated to problem-solving and survival. Animals, plants, and tools are all examples of specific circuits that would be formed based on this theory.[49]

The role of modality
Modality refers to a semantic category of meaning which has to do with necessity and probability expressed through language. In linguistics, certain expressions are said to have modal meanings. A few examples of this include conditionals, auxiliaries, adverbs, and nouns. when looking at category specific semantic deficits, there is another kind of modality that looks at word relationships which is much more relevant to these disorders and impairments. [50]

For category specific impairments, there are modality-specific theories which all rest on a few general predictions. These theories state that damage to the visual modality will result in a deficit of biological objects while damage to the functional modality will result in a deficit of non-biological objects (artifacts). Modality-based theories also assume that if there is damage to modality-specific knowledge, then all the categories that fall under it will be damaged. In this case, damage to the visual modality would result in a deficit for all biological objects with no deficits restricted to the more specific categories. In other words, there would be no category specific semantic deficits for just "animals" or just "fruits and vegetables". [49]

Category specific semantic deficit causes
Semantic Dementia
Semantic Dementia is a semantic memory disorder that causes patients to lose the ability to match words or images to their meanings.[51] However, it is fairly rare for patients with semantic dementia to develop category specific impairments, though there have been document cases of it occurring. Typically, a more generalized semantic impairment results form dimmed semantic representations in the brain.[52]

Alzheimer's disease is a subcategory of semantic dementia which can cause similar symptoms. The main difference between the two being that Alzheimer's is categorized by atrophy to both sides of the brain while semantic dementia is categorized by loss of brain tissue in the front portion of the left temporal lobe.[51] With Alzheimer's disease in particular, interactions with semantic memory produce different patterns in deficits between patients and categories over time which is caused by distorted representations in the brain.[53] For example, in the initial onset of Alzheimer's disease, patients have mild difficulty with the artifacts category. As the disease progresses, the category specific semantic deficits progress as well, and patients see a more concrete deficit with natural categories. In other words, the deficit tends to be worse with living things as opposed to non-living things.[53]

Herpes Simplex Virus Encephalitis
Herpes Simplex Virus Encephalitis (HSVE) is a neurological disorder which causes inflammation of the brain. It is caused by the herpes simplex virus type 1. Early symptoms include headache, fever, and drowsiness, but over time symptoms including diminished ability to speak, memory loss, and aphasia will develop. HSVE can also cause category specific semantic deficits to occur.[54] When this does happen, patients typically have damage temporal lobe damage that affects the medial and lateral cortex as well as the frontal lobe. Studies have also shown that patients with HSVE have a much higher incidence of category specific semantic deficits than those with semantic dementia, though both cause a disruption of flow through the temporal lobe.[52]

Brain lesions
A brain lesion refers to any abnormal tissue in or on the brain. Most often, this is caused by a trauma or infection. In one particular case study, a patient underwent surgery to remove an aneurysm, and the surgeon had to clip the anterior communicating artery which resulted in basal forebrain and fornix lesions. Before surgery, this patient was completely independent and had no semantic memory issues. However, after the operation and the lesions occurred, the patient reported difficulty with naming and identifying objects, recognition tasks, and comprehension. For this particular case, the patient had a much more significant amount of trouble with objects in the living category which could be seen in the drawings of animals which the patient was asked to do and in the data from the matching and identification tasks. Every lesion is different, but in this case study researchers suggested that the semantic deficits presented themselves as a result of disconnection of the temporal lobe. This would lead to the conclusion that any type of lesion in the temporal lobe, depending on severity and location, has the potential to cause semantic deficits.[55]

Semantic differences in gender
The following table summarizes conclusions from the Journal of Clinical and Experimental Neuropsychology.[56]

Semantic Tasks and Familiarity Ratings: Experimental Results
Males	Females
Better with tool names	Better with fruit names
Name more animals and artifacts	Name more fruits and vegetables
Greater familiarity with vehicles	Greater familiarity with flowers and elderly
These results give us a baseline for the differences in semantic knowledge across gender for healthy subjects. When looking at category specific semantic deficits, we can compare the data to the table above to see if the results line up. Experimental data tells us that men with category specific semantic deficits are mainly impaired with fruits and vegetables while women with category specific semantic deficits are mainly impaired with animals and artifacts. This leads to the conclusion that there are significant gender differences when it comes to category specific semantic deficits, and that the patient will tend to be impaired in categories that had less existing knowledge to begin with.[56]

Modality specific impairments
Semantic memory is also discussed in reference to modality. Different components represent information from different sensorimotor channels. Modality specific impairments are divided into separate subsystems on the basis of input modality. Examples of different input modalities include visual, auditory and tactile input. Modality specific impairments are also divided into subsystems based on the type of information. Visual vs. verbal and perceptual vs. functional information are examples of information types.[57] Modality specificity can account for category specific impairments in semantic memory disorders. Damage to visual semantics primarily impairs knowledge of living things, and damage to functional semantics primarily impairs knowledge of nonliving things.

Semantic refractory access and semantic storage disorders
Semantic memory disorders fall into two groups. Semantic refractory access disorders are contrasted with semantic storage disorders according to four factors. Temporal factors, response consistency, frequency and semantic relatedness are the four factors used to differentiate between semantic refractory access and semantic storage disorders. A key feature of semantic refractory access disorders is temporal distortions. Decreases in response time to certain stimuli are noted when compared to natural response times. Response consistency is the next factor. In access disorders you see inconsistencies in comprehending and responding to stimuli that have been presented many times. Temporal factors impact response consistency. In storage disorders, you do not see an inconsistent response to specific items like you do in refractory access disorders. Stimulus frequency determines performance at all stages of cognition. Extreme word frequency effects are common in semantic storage disorders while in semantic refractory access disorders word frequency effects are minimal. The comparison of 'close' and 'distant' groups tests semantic relatedness. 'Close' groupings have words that are related because they are drawn from the same category. For example, a listing of clothing types would be a 'close' grouping. 'Distant' groupings contain words with broad categorical differences. Non-related words would fall into this group. Comparing close and distant groups shows that in access disorders semantic relatedness had a negative effect. This is not observed in semantic storage disorders. Category specific and modality specific impairments are important components in access and storage disorders of semantic memory.[58]

Present and future research
Semantic memory has had a comeback in interest in the past 15 years, due in part to the development of functional neuroimaging methods such as positron emission tomography (PET) and functional magnetic resonance imaging (fMRI), which have been used to address some of the central questions about our understanding of semantic memory.

Positron emission tomography (PET) and functional magnetic resonance (fMRI) allow cognitive neuroscientists to explore different hypotheses concerning the neural network organization of semantic memory. By using these neuroimaging techniques researchers can observe the brain activity of participants while they perform cognitive tasks. These tasks can include, but are not limited to, naming objects, deciding if two stimuli belong in the same object category, or matching pictures to their written or spoken names.[59]

Rather than any one brain region playing a dedicated and privileged role in the representation or retrieval of all sorts of semantic knowledge, semantic memory is a collection of functionally and anatomically distinct systems, where each attribute-specific system is tied to a sensorimotor modality (i.e. vision) and even more specifically to a property within that modality (i.e. color). Neuroimaging studies also suggest a distinction between semantic processing and sensorimotor processing.

A new idea that is still at the early stages of development is that semantic memory, like perception, can be subdivided into types of visual information—color, size, form, and motion. Thompson-Schill (2003)[60] found that the left or bilateral ventral temporal cortex appears to be involved in retrieval of knowledge of color and form, the left lateral temporal cortex in knowledge of motion, and the parietal cortex in knowledge of size.

Neuroimaging studies suggest a large, distributed network of semantic representations that are organized minimally by attribute, and perhaps additionally by category. These networks include "extensive regions of ventral (form and color knowledge) and lateral (motion knowledge) temporal cortex, parietal cortex (size knowledge), and premotor cortex (manipulation knowledge). Other areas, such as more anterior regions of temporal cortex, may be involved in the representation of nonperceptual (e.g. verbal) conceptual knowledge, perhaps in some categorically-organized fashion."[61] It is suggested that within the temperoparietal network, the anterior temporal lobe is relatively more important for semantic processing, and posterior language regions are relatively more important for lexical retrieval.

See also
Memory semantics
Sparse distributed memory






Schema (psychology)
https://en.wikipedia.org/wiki/Schema_(psychology)#History
In psychology and cognitive science, a schema (plural schemata or schemas) describes a pattern of thought or behavior that organizes categories of information and the relationships among them.[1] It can also be described as a mental structure of preconceived ideas, a framework representing some aspect of the world, or a system of organizing and perceiving new information.[2] Schemata influence attention and the absorption of new knowledge: people are more likely to notice things that fit into their schema, while re-interpreting contradictions to the schema as exceptions or distorting them to fit. Schemata have a tendency to remain unchanged, even in the face of contradictory information.[3] Schemata can help in understanding the world and the rapidly changing environment.[4] People can organize new perceptions into schemata quickly as most situations do not require complex thought when using schema, since automatic thought is all that is required.[4]

People use schemata to organize current knowledge and provide a framework for future understanding. Examples of schemata include academic rubrics, social schemas, stereotypes, social roles, scripts, worldviews, and archetypes. In Piaget's theory of development, children construct a series of schemata, based on the interactions they experience, to help them understand the world.[5]

History
"Schema" comes from the Greek word schēmat or schēma, meaning "figure".[6]

Prior to its use in psychology, the term "schema" had primarily seen use in philosophy. For instance, "schemata" (especially "transcendental schemata") are crucial to the architectonic system devised by Immanuel Kant in his Critique of Pure Reason.[7]

Early developments of the idea in psychology emerged with the gestalt psychologists and Jean Piaget: the term schéma was introduced by Piaget in 1923.[8] In Piaget's later publications, action (operative or procedural) schémes were distinguished from figurative (representational) schémas, although together they may be considered a schematic duality.[9] In subsequent discussions of Piaget in English, schema was often a mistranslation of Piaget's original French schéme.[10] The distinction has been of particular importance in theories of embodied cognition and ecological psychology.[11]

The concept was popularized in psychology and education through the work of the British psychologist Frederic Bartlett,[12] who drew on the term body schema used by neurologist Henry Head. It was expanded into schema theory by educational psychologist Richard C. Anderson.[13] Since then, other terms have been used to describe schema such as "frame", "scene", and "script".

Schematic processing
Through the use of schemata, a heuristic technique to encode and retrieve memories, the majority of typical situations do not require much strenuous processing. People can quickly organize new perceptions into schemata and act without effort.[14] The process however, is not always accurate, and people may develop illusory correlations, which is the tendency to form inaccurate or overestimated associations between categories, especially when the information is distinctive. [3]

However, schemata can influence and hamper the uptake of new information (proactive interference), such as when existing stereotypes, giving rise to limited or biased discourses and expectations (prejudices), lead an individual to "see" or "remember" something that has not happened because it is more believable in terms of his/her schema.[15] For example, if a well-dressed businessman draws a knife on a vagrant, the schemata of onlookers may (and often do) lead them to "remember" the vagrant pulling the knife. Such distortion of memory has been demonstrated. (See § Background research below.)

Schemata are interrelated and multiple conflicting schemata can be applied to the same information. Schemata are generally thought to have a level of activation, which can spread among related schemata. Which schema is selected can depend on factors such as current activation, accessibility, priming and emotion.

Accessibility is how easily a schema comes to mind, and is determined by personal experience and expertise. This can be used as a cognitive shortcut; it allows the most common explanation to be chosen for new information.

With priming, a brief imperceptible stimulus temporarily provides enough activation to a schema so that it is used for subsequent ambiguous information. Although this may suggest the possibility of subliminal messages, the effect of priming is so fleeting that it is difficult to detect outside laboratory conditions.

Background research
Frederic Bartlett
The original concept of schemata is linked with that of reconstructive memory as proposed and demonstrated in a series of experiments by Frederic Bartlett.[16] By presenting participants with information that was unfamiliar to their cultural backgrounds and expectations and then monitoring how they recalled these different items of information (stories, etc.), Bartlett was able to establish that individuals' existing schemata and stereotypes influence not only how they interpret "schema-foreign" new information but also how they recall the information over time. One of his most famous investigations involved asking participants to read a Native American folk tale, "The War of the Ghosts",[17] and recall it several times up to a year later. All the participants transformed the details of the story in such a way that it reflected their cultural norms and expectations, i.e. in line with their schemata. The factors that influenced their recall were:

Omission of information that was considered irrelevant to a participant;
Transformation of some of the details, or of the order in which events, etc., were recalled; a shift of focus and emphasis in terms of what was considered the most important aspects of the tale;
Rationalization: details and aspects of the tale that would not make sense would be "padded out" and explained in an attempt to render them comprehensible to the individual in question;
Cultural shifts: the content and the style of the story were altered in order to appear more coherent and appropriate in terms of the cultural background of the participant.
Bartlett's work was crucially important in demonstrating that long-term memories are neither fixed nor immutable but are constantly being adjusted as schemata evolve with experience. His work contributed to a framework of memory retrieval in which people construct the past and present in a constant process of narrative/discursive adjustment. Much of what people "remember" is confabulated narrative (adjusted and rationalized) which allows them to think of the past as a continuous and coherent string of events, even though it is probable that large sections of memory (both episodic and semantic) are irretrievable or inaccurate at any given time.[16]

An important step in the development of schema theory was taken by the work of D.E. Rumelhart describing the understanding of narrative and stories.[18] Further work on the concept of schemata was conducted by W.F. Brewer and J.C. Treyens, who demonstrated that the schema-driven expectation of the presence of an object was sometimes sufficient to trigger its erroneous recollection.[19] An experiment was conducted where participants were requested to wait in a room identified as an academic's study and were later asked about the room's contents. A number of the participants recalled having seen books in the study whereas none were present. Brewer and Treyens concluded that the participants' expectations that books are present in academics' studies were enough to prevent their accurate recollection of the scenes.

In the 1970s, computer scientist Marvin Minsky was trying to develop machines that would have human-like abilities. When he was trying to create solutions for some of the difficulties he encountered he came across Bartlett's work and decided that if he was ever going to get machines to act like humans he needed them to use their stored knowledge to carry out processes. To compensate for that he created what was known as the frame construct, which was a way to represent knowledge in machines. His frame construct can be seen as an extension and elaboration of the schema construct. He created the frame knowledge concept as a way to interact with new information. He proposed that fixed and broad information would be represented as the frame, but it would also be composed of slots that would accept a range of values; but if the world didn't have a value for a slot, then it would be filled by a default value.[20] Because of Minsky's work, computers now have a stronger impact on psychology. In the 1980s, David Rumelhart extended Minsky's ideas, creating an explicitly psychological theory of the mental representation of complex knowledge.[21]

Roger Schank and Robert Abelson developed the idea of a script, which was known as a generic knowledge of sequences of actions. This led to many new empirical studies, which found that providing relevant schema can help improve comprehension and recall on passages.[22]

Schemata have also been viewed from a sociocultural perspective with contributions from Lev Vygotsky, in which there is a transactional relationship between the development of a schema and the environment that influences it, such that the schema doesn't develop independently as a construct in the mind, but carries all the aspects of the history, social, and cultural meaning which influences its development. Schemata are not just scripts or frameworks to be called upon, but are active processes for solving problems and interacting with the world.[23]

Modification
New information that falls within an individual's schema is easily remembered and incorporated into their worldview. However, when new information is perceived that does not fit a schema, many things can happen. The most common reaction is to simply ignore or quickly forget the new information.[24] This can happen on an unconscious level— frequently an individual may not even perceive the new information. People may also interpret the new information in a way that minimizes how much they must change their schemata. For example, Bob thinks that chickens don't lay eggs. He then sees a chicken laying an egg. Instead of changing the part of his schema that says "chickens don't lay eggs", he is likely to adopt the belief that the animal in question that he has just seen laying an egg is not a real chicken. This is an example of disconfirmation bias, the tendency to set higher standards for evidence that contradicts one's expectations.[25] However, when the new information cannot be ignored, existing schemata must be changed or new schemata must be created (accommodation).[26]

Jean Piaget (1896–1980) was known best for his work with development of human knowledge. He believed knowledge was constructed on cognitive structures, and he believed people develop cognitive structures by accommodating and assimilating information. Accommodation is creating new schema that will fit better with the new environment or adjusting old schema. Accommodation could also be interpreted as putting restrictions on a current schema. Accommodation usually comes about when assimilation has failed. Assimilation is when people use a current schema to understand the world around them. Piaget thought that schemata are applied to everyday life and therefore people accommodate and assimilate information naturally.[27] For example, if this chicken has red feathers, Bob can form a new schemata that says "chickens with red feathers can lay eggs". This schemata will then be either changed or removed, in the future.

Assimilation is the reuse of schemata to fit the new information. For example, when a person sees an unfamiliar dog, they will probably just integrate it into their dog schema. However, if the dog behaves strangely, and in ways that doesn't seem dog-like, there will be accommodation as a new schema is formed for that particular dog. With Accommodation and Assimilation comes the idea of equilibrium. Piaget describes equilibrium as a state of cognition that is balanced when schema are capable of explaining what it sees and perceives. When information is new and cannot fit into existing schema this is called disequilibrium and this is an unpleasant state for the child's development. When disequilibrium happens, it means the person is frustrated and will try to restore the coherence of his or her cognitive structures through accommodation. If the new information is taken then assimilation of the new information will proceed until they find that they must make a new adjustment to it later down the road, but for now the child remains at equilibrium again. The process of equilibration is when people move from the equilibrium phase to the disequilibrium phase and back into equilibrium.[28]

In view of this, a person's new schemata may be an expansion of the schemata into a subtype. This allows for the information to be incorporated into existing beliefs without contradicting them. An example in social psychology would be the combination of a person's beliefs about women and their beliefs about business. If women are not generally perceived to be in business, but the person meets one who is, a new subtype of businesswoman may be created, and the information perceived will be incorporated into this subtype. Activation of either woman or business schema may then make further available the schema of "businesswoman". This also allows for previous beliefs about women or those in business to persist. Rather than modifying the schemata related to women or to business persons, the subtype is its own category. [3]

Self-schema
Main article: Self-schema
Schemata about oneself are considered to be grounded in the present and based on past experiences. Memories are framed in the light of one's self-conception. For example, people who have positive self-schemata (i.e. most people) selectively attend to flattering information and selectively ignore unflattering information, with the consequence that flattering information is subject to deeper encoding, and therefore superior recall.[29] Even when encoding is equally strong for positive and negative feedback, positive feedback is more likely to be recalled.[30] Moreover, memories may even be distorted to become more favorable, for example, people typically remember exam grades as having been better than they actually were.[31] However, when people have negative self views, memories are generally biased in ways that validate the negative self-schema; people with low self-esteem, for instance, are prone to remember more negative information about themselves than positive information.[32] Thus, memory tends to be biased in a way that validates the agent's pre-existing self-schema.

There are three major implications of self-schemata. First, information about oneself is processed faster and more efficiently, especially consistent information. Second, one retrieves and remembers information that is relevant to one's self-schema. Third, one will tend to resist information in the environment that is contradictory to one's self-schema. For instance, students with a particular self-schema prefer roommates whose view of them is consistent with that schema. Students who end up with roommates whose view of them is inconsistent with their self-schema are more likely to try to find a new roommate, even if this view is positive.[33] This is an example of self-verification.

As researched by Aaron Beck, automatically activated negative self-schemata are a large contributor to depression. According to Cox, Abramson, Devine, and Hollon (2012), these self-schemata are essentially the same type of cognitive structure as stereotypes studied by prejudice researchers (e.g., they are both well-rehearsed, automatically activated, difficult to change, influential toward behavior, emotions, and judgments, and bias information processing).[34]

The self-schema can also be self-perpetuating. It can represent a particular role in society that is based on stereotype, for example: "If a mother tells her daughter she looks like a tom boy, her daughter may react by choosing activities that she imagines a tom boy would do. Conversely, if the mother tells her she looks like a princess, her daughter might choose activities thought to be more feminine." This is an example of the self-schema becoming self-perpetuating when the person at hand chooses an activity that was based on an expectation rather than their desires.[35]

Schema therapy
Main articles: Schema therapy and List of maladaptive schemas
Schema therapy was founded by Jeffrey Young and represents a development of cognitive behavioral therapy (CBT) specifically for treating personality disorders.[36][37] Early maladaptive schemata are described by Young as broad and pervasive themes or patterns made up of memories, feelings, sensations, and thoughts regarding oneself and one's relationships with others; they can be a contributing factor to treatment outcomes of mental disorders and the maintenance of ideas, beliefs, and behaviors towards oneself and others. They are considered to develop during childhood or adolescence, and to be dysfunctional in that they lead to self-defeating behavior. Examples include schemata of abandonment/instability, mistrust/abuse, emotional deprivation, and defectiveness/shame.[37]

Schema therapy blends CBT with elements of Gestalt therapy, object relations, constructivist and psychoanalytic therapies in order to treat the characterological difficulties which both constitute personality disorders and which underlie many of the chronic depressive or anxiety-involving symptoms which present in the clinic. Young said that CBT may be an effective treatment for presenting symptoms, but without the conceptual or clinical resources for tackling the underlying structures (maladaptive schemata) which consistently organize the patient's experience, the patient is likely to lapse back into unhelpful modes of relating to others and attempting to meet their needs. Young focused on pulling from different therapies equally when developing schema therapy. Cognitive behavioral methods work to increase the availability and strength of adaptive schemata while reducing the maladaptive ones. This may involve identifying the existing schema and then identifying an alternative to replace it. Difficulties arise as these types of schema often exist in absolutes; modification then requires replacement to be in absolutes, otherwise the initial belief may persist.[38] The difference between cognitive behavioral therapy and schema therapy according to Young is the latter "emphasizes lifelong patterns, affective change techniques, and the therapeutic relationship, with special emphasis on limited reparenting".[39] He recommended this therapy would be ideal for clients with difficult and chronic psychological disorders. Some examples would be eating disorders and personality disorders. He has also had success with this therapy in relation to depression and substance abuse.[39]

See also
Cultural schema theory
Memetics
Personal construct theory
Relational frame theory
Social cognition
Speed reading







Availability heuristic
https://en.wikipedia.org/wiki/Availability_heuristic#Overview_and_history
The availability heuristic, also known as availability bias, is a mental shortcut that relies on immediate examples that come to a given person's mind when evaluating a specific topic, concept, method or decision. The availability heuristic operates on the notion that if something can be recalled, it must be important, or at least more important than alternative solutions which are not as readily recalled.[1] Subsequently, under the availability heuristic, people tend to heavily weigh their judgments toward more recent information, making new opinions biased toward that latest news.[2][3]

The availability of consequences associated with an action is positively related to perceptions of the magnitude of the consequences of that action. In other words, the easier it is to recall the consequences of something, the greater those consequences are often perceived to be. Most notably, people often rely on the content of their recall if its implications are not called into question by the difficulty that they experience in bringing the relevant material to mind.[4]

Overview and history
In the late 1960s and early 1970s, Amos Tversky and Daniel Kahneman began work on a series of papers examining "heuristic and biases" used in the judgment under uncertainty. Prior to that, the predominant view in the field of human judgment was that humans are rational actors. Kahneman and Tversky explained that judgment under uncertainty often relies on a limited number of simplifying heuristics rather than extensive algorithmic processing. Soon, this idea spread beyond academic psychology, into law, medicine, and political science. This research questioned the descriptive adequacy of idealized models of judgment, and offered insights into the cognitive processes that explained human error without invoking motivated irrationality.[5] One simplifying strategy people may rely on is the tendency to make a judgment about the frequency of an event based on how many similar instances are brought to mind. In 1973, Amos Tversky and Daniel Kahneman first studied this phenomenon and labeled it the "availability heuristic". An availability heuristic is a mental shortcut that relies on immediate examples that come to a given person's mind when evaluating a specific topic, concept, method or decision. As follows, people tend to use a readily available fact to base their beliefs about a comparably distant concept. There has been much research done with this heuristic, but studies on the issue are still questionable with regard to the underlying process. Studies illustrate that manipulations intended to increase the subjective experience of ease of recall are also likely to affect the amount of recall. Furthermore, this makes it difficult to determine whether the obtained estimates of frequency, likelihood, or typicality are based on participants' phenomenal experiences or on a biased sample of recalled information.[5]

However, some textbooks have chosen the latter interpretation introducing the availability heuristic as "one's judgments are always based on what comes to mind". For example, if a person is asked whether there are more words in the English language that begin with a t or k, the person will probably be able to think of more words that begin with the letter t, concluding that t is more frequent than k.[6]

Research
Chapman (1967) described a bias in the judgment of the frequency with which two events co-occur. This demonstration showed that the co-occurrence of paired stimuli resulted in participants overestimating the frequency of the pairings.[7] To test this idea, participants were given information about several hypothetical mental patients. The data for each patient consisted of a clinical diagnosis and a drawing made by the patient. Later, participants estimated the frequency with which each diagnosis had been accompanied by various features of the drawing. The subjects vastly overestimated the frequency of this co-occurrence (such as suspiciousness and peculiar eyes). This effect was labeled the illusory correlation. Tversky and Kahneman suggested that availability provides a natural account for the illusory-correlation effect. The strength of the association between two events could provide the basis for the judgment of how frequently the two events co-occur. When the association is strong, it becomes more likely to conclude that the events have been paired frequently. Strong associations will be thought of as having occurred together frequently.[8]

In Tversky & Kahneman's first examination of availability heuristics, subjects were asked, "If a random word is taken from an English text, is it more likely that the word starts with a K, or that K is the third letter?" They argue that English-speaking people would immediately think of many words that begin with the letter "K" (kangaroo, kitchen, kale), but that it would take a more concentrated effort to think of any words in which "K" is the third letter (acknowledge, ask). Results indicated that participants overestimated the number of words that began with the letter "K" and underestimated the number of words that had "K" as the third letter. Tversky and Kahneman concluded that people answer questions like these by comparing the availability of the two categories and assessing how easily they can recall these instances. In other words, it is easier to think of words that begin with "K", more than words with "K" as the third letter. Thus, people judge words beginning with a "K" to be a more common occurrence. In reality, however, a typical text contains twice as many words that have "K" as the third letter than "K" as the first letter.[8]

In Tversky and Kahneman's seminal paper, they include findings from several other studies, which also show support for the availability heuristic. Apart from their findings in the "K" study, they also found:

When participants were shown two visual structures and asked to pick the structure that had more paths, participants saw more paths in the structure that had more obvious available paths. In the structure that participants chose, there were more columns and shorter obvious paths, making it more available to them. When participants were asked to complete tasks involving estimation, they would often underestimate the end result. Participants were basing their final estimation off of a quick first impression of the problem. Participants particularly struggled when the problems consisted of multiple steps. This occurred because participants were basing their estimation on an initial impression. Participants failed to account for the high rate of growth in the later steps due to the impression they formed in the initial steps. This was shown again in a task that asked participants to estimate the answer to a multiplication task, in which the numbers were presented as either 1x2x3x4x5x6x7x8 or 8x7x6x5x4x3x2x1. Participants who were presented the equation with the larger numbers first (8x7x6...), estimated a significantly higher result than participants with the lower numbers first (1x2x3...). Participants were given a short amount of time to make the estimation, thus participants based their estimates off of what was easily available, which in this case was the first few numbers in the sequence.[8]
Explanations
Many researchers have attempted to identify the psychological process which create the availability heuristic.

Tversky and Kahneman argue that the number of examples recalled from memory is used to infer the frequency with which such instances occur. In an experiment to test this explanation, participants listened to lists of names containing either 19 famous women and 20 less famous men or 19 famous men and 20 less famous women. Subsequently, some participants were asked to recall as many names as possible whereas others were asked to estimate whether male or female names were more frequent on the list. The names of the famous celebrities were recalled more frequently compared to those of the less famous celebrities. The majority of the participants incorrectly judged that the gender associated with more famous names had been presented more often than the gender associated with less famous names. Tversky and Kahneman argue that although the availability heuristic is an effective strategy in many situations, when judging probability use of this heuristic can lead to predictable patterns of errors.[8]

Schwarz and his colleagues, on the other hand, proposed the ease of retrieval explanation, in which is the ease with which examples come to mind, not the number of examples, is used to infer the frequency of a given class. In a study by Schwarz and colleagues to test their explanation, participants were asked to recall either six or twelve examples of their assertive or very unassertive behavior. Participants were later asked to rate their own assertiveness. Pretesting had indicated that although most participants were capable of generating twelve examples, this was a difficult task. The results indicated that participants rated themselves as more assertive after describing six examples of assertive compared with unassertive behavior condition, but rated themselves as less assertive after describing twelve examples of assertive compared with unassertive behavior condition. The study reflected that the extent to which recalled content impacted judgment was determined by the ease with which the content could be brought to mind (it was easier to recall 6 examples than 12), rather than the amount of content brought to mind.[4]

Research by Vaugh (1999) looked at the effects of uncertainty on the use of the availability heuristic. College students were asked to list either three or eight different study methods they could use in order to get an A on their final exams. The researchers also manipulated the time during the semester they would ask the students to complete the questionnaire. Approximately half of the participants were asked for their study methods during the third week of classes, and the other half were asked on last day of classes. Next, participants were asked to rate how likely they would be to get an A in their easiest and hardest classes. Participants were then asked to rank the difficulty they experienced in recalling the examples they had previously listed. The researchers hypothesized that students would use the availability heuristic, based on the number of study methods they listed, to predict their grade only when asked at the beginning of the semester and about their hardest final. Students were not expected to use the availability heuristic to predict their grade at the end of the semester or about their easiest final. The researchers predicted this use of availability heuristic because participants would be uncertain about their performance throughout the semester. The results indicated that students used the availability heuristic, based on the ease of recall of the study methods they listed, to predict their performance when asked at the beginning of the semester and about their hardest final. If the student listed only three study methods, they predicted a higher grade at the end of the semester only on their hardest final. If students listed eight study methods, they had a harder time recalling the methods and thus predicted a lower final grade on their hardest final. The results were not seen in the easy final condition because the students were certain they would get an A, regardless of study method. The results supported this hypothesis and gave evidence to the fact that levels of uncertainty affect the use of the availability heuristic.[9]

Applications
Media
After seeing news stories about child abductions, people may judge that the likelihood of this event is greater. Media coverage can help fuel a person's example bias with widespread and extensive coverage of unusual events, such as homicide or airline accidents, and less coverage of more routine, less sensational events, such as common diseases or car accidents. For example, when asked to rate the probability of a variety of causes of death, people tend to rate "newsworthy" events as more likely[citation needed] because they can more readily recall an example from memory[citation needed]. Moreover, unusual and vivid events like homicides, shark attacks, or lightning are more often reported in mass media than common and un-sensational causes of death like common diseases.[citation needed]

For example, many people think that the likelihood of dying from shark attacks is greater than that of dying from being hit by falling airplane parts, when more people actually die from falling airplane parts.[10] When a shark attack occurs, the deaths are widely reported in the media whereas deaths as a result of being hit by falling airplane parts are rarely reported in the media.[11]

In a 2010 study exploring how vivid television portrayals are used when forming social reality judgments, people watching vivid violent media gave higher estimates of the prevalence of crime and police immorality in the real world than those not exposed to vivid television. These results suggest that television violence does in fact have a direct causal impact on participants' social reality beliefs. Repeated exposure to vivid violence leads to an increase in people's risk estimates about the prevalence of crime and violence in the real world.[12] Counter to these findings, researchers from a similar study argued that these effects may be due to effects of new information. Researchers tested the new information effect by showing movies depicting dramatic risk events and measuring their risk assessment after the film. Contrary to previous research, there were no long-term effects on risk perception due to exposure to dramatic movies. However, the study did find evidence of idiosyncratic effects of the movies - that is, people reacted immediately after the movies with enhanced or diminished risk beliefs, which faded after a period of 10 days.[13]

Health
Researchers examined the role of cognitive heuristics in the AIDS risk-assessment process. 331 physicians reported worry about on-the-job HIV exposure, and experience with patients who have HIV. By analyzing answers to questionnaires handed out, researchers concluded that availability of AIDS information did not relate strongly to perceived risk.[14]

Participants in a 1992 study read case descriptions of hypothetical patients who varied on their sex and sexual preference. These hypothetical patients showed symptoms of two different diseases. Participants were instructed to indicate which disease they thought the patient had and then they rated patient responsibility and interaction desirability. Consistent with the availability heuristic, either the more common (influenza) or the more publicized (AIDS) disease was chosen.[15]

Business and economy
One study sought to analyze the role of the availability heuristic in financial markets. Researchers defined and tested two aspects of the availability heuristic:[16]

Outcome Availability – availability of positive and negative investment outcomes, and
Risk Availability – availability of financial risk.[16]
On days of substantial stock market moves, abnormal stock price reactions to upgrades are weaker, than those to downgrades. These availability effects are still significant even after controlling for event-specific and company-specific factors.[16]

Similarly, research has pointed out that under the availability heuristic, humans are not reliable because they assess probabilities by giving more weight to current or easily recalled information instead of processing all relevant information. Since information regarding the current state of the economy is readily available, researchers attempted to expose the properties of business cycles to predict the availability bias in analysts' growth forecasts. They showed the availability heuristic to play a role in analysis of forecasts and influence investments because of this.[17]

In effect, investors are using availability heuristic to make decisions and subsequently, may be obstructing their own investment success. An investor's lingering perceptions of a dire market environment may be causing them to view investment opportunities through an overly negative lens, making it less appealing to consider taking on investment risk, no matter how small the returns on perceived "safe" investments. To illustrate, Franklin Templeton's annual Global Investor Sentiment Survey 1 asked individuals how they believed the S&P 500 Index performed in 2009, 2010 and 2011. 66 percent of respondents stated that they believed the market was either flat or down in 2009, 48 percent said the same about 2010 and 53 percent also said the same about 2011. In reality, the S&P 500 saw 26.5 percent annual returns in 2009, 15.1 percent annual returns in 2010 and 2.1 percent annual returns in 2011, meaning lingering perceptions based on dramatic, painful events are impacting decision-making even when those events are over.[18]

Additionally, a study by Hayibor and Wasieleski found that the availability of others who believe that a particular act is morally acceptable is positively related to others' perceptions of the morality of that act. This suggests that availability heuristic also has an effect on ethical decision making and ethical behavior in organizations.[19]

Education
A study done by Craig R. Fox provides an example of how availability heuristics can work in the classroom. In this study, Fox tests whether difficulty of recall influences judgment, specifically with course evaluations among college students. In his study he had two groups complete a course evaluation form. He asked the first group to write two recommended improvements for the course (a relatively easy task) and then write two positives about the class. The second group was asked to write ten suggestions where the professor could improve (a relatively difficult task) and then write two positive comments about the course. At the end of the evaluation both groups were asked to rate the course on a scale from one to seven. The results showed that students asked to write ten suggestions (difficult task) rated the course less harshly because it was more difficult for them to recall the information. Most of the students in the group that were asked to fill in 10 suggestions didn't fill in more than two being unable to recall more instances where they were unsatisfied with the class. Students asked to do the easier evaluation with only two complaints had less difficulty in terms of availability of information, so they rated the course more harshly.[20]

A study done was testing the memory of children and the ease of recall. They were asked to learn a list of names and then to recall different amounts. Researchers found that when asked to recall lower amounts compared to larger amounts and then asked what was easier to remember. They responded the shorter list going along with the theory of availability heuristic.[21]

Criminal justice
The media usually focuses on violent or extreme cases, which are more readily available in the public's mind. This may come into play when it is time for the judicial system to evaluate and determine the proper punishment for a crime. In one study, respondents rated how much they agreed with hypothetical laws and policies such as "Would you support a law that required all offenders convicted of unarmed muggings to serve a minimum prison term of two years?" Participants then read cases and rated each case on several questions about punishment. As hypothesized, respondents recalled more easily from long-term memory stories that contain severe harm, which seemed to influence their sentencing choices to make them push for harsher punishments. This can be eliminated by adding high concrete or high contextually distinct details into the crime stories about less severe injuries.[22]

A similar study asked jurors and college students to choose sentences on four severe criminal cases in which prison was a possible but not an inevitable sentencing outcome. Respondents answering questions about court performance on a public opinion formulated a picture of what the courts do and then evaluated the appropriateness of that behavior. Respondents recalled from public information about crime and sentencing. This type of information is incomplete because the news media present a highly selective and non-representative selection of crime, focusing on the violent and extreme, rather than the ordinary. This makes most people think that judges are too lenient. But, when asked to choose the punishments, the sentences given by students were equal to or less severe than those given by judges. In other words, the availability heuristic made people believe that judges and jurors were too lenient in the courtroom, but the participants gave similar sentences when placed in the position of the judge, suggesting that the information they recalled was not correct.[23]

Researchers in 1989 predicted that mock jurors would rate a witness to be more deceptive if the witness testified truthfully before lying than when the witness was caught lying first before telling the truth. If the availability heuristic played a role in this, lying second would remain in jurors' minds (since it was more recent) and they would most likely remember the witness lying over the truthfulness. To test the hypothesis, 312 university students played the roles of mock jurors and watched a videotape of a witness presenting testimony during a trial. Results confirmed the hypothesis, as mock jurors were most influenced by the most recent act.[24]

Perceived risk
Further information: Perceived risk
Previous studies have indicated that explaining a hypothetical event makes the event seem more likely through the creation of causal connections. However, such effects could arise through the use of the availability heuristic; that is, subjective likelihood is increased by an event becoming easier to imagine.[25]

A study done asked those participating to pick between two illnesses. Those doing the study wanted to know which disease they thought was more likely to cause death. In the study they asked participants to choose between a stroke and asthma as to which one someone was more likely to die from. The researchers concluded that it depended on what experiences were available to them. If they knew someone or heard of someone that died from one of the diseases that is the one they perceived to be a higher risk to pass away from.[26]

Vividness effects
Two studies with 108 undergraduates investigated vivid information and its impact on social judgment and the availability heuristic and its role in mediating vividness effects.

In study 1, Subjects listened to a tape recording that described a woman who lived with her 7-year-old son. Subjects then heard arguments about the woman's fitness as a parent and were asked to draw their own conclusions regarding her fitness or unfitness. Concrete and colorful language was found to influence judgments about the woman's fitness as a mother.

In study 2, a series of male and female names was presented to subjects; for each name, subjects were told the university affiliation of the individual (Yale or Stanford). When some names were presented, subjects were simultaneously shown a photograph that purportedly portrayed the named individual. Subsequently, to assess what subjects could remember (as a measure of availability), each name was re-presented, as well as the appropriate photograph if one had been originally presented. The study considered whether the display or non-display of photographs biased subjects' estimates as to the percentage of Yale (vs Stanford) students in the sample of men and women whose names appeared on the original list, and whether these estimated percentages were causally related to the respondents' memory for the college affiliations of the individual students on the list. The presence of photographs affected judgments about the proportion of male and female students at the two universities. Such effects have typically been attributed to the ready accessibility of vividly presented information in memory—that is, to the availability heuristic.

In both studies, vividness affected both availability (ability to recall) and judgments. However, causal modeling results indicated that the availability heuristic did not play a role in the judgment process.[27]

Judging frequency and probability
In general, availability is correlated with ecological frequency, but it is also affected by other factors. Consequently, the reliance on the availability heuristic leads to systematic biases. Such biases are demonstrated in the judged frequency of classes of words, of combinatoric outcomes, and of repeated events. The phenomenon of illusory correlation is explained as an availability bias.[8]

In the original Tversky and Kahneman (1973) research, three major factors that are discussed are the frequency of repetition, frequency of co-occurrence, and illusory correlation. The use of frequency of repetition aids in the retrieval of relevant instances. The idea behind this phenomenon, is that the more an instance is repeated within a category or list, the stronger the link between the two instances becomes. Individuals then use the strong association between the instances to determine the frequency of an instance. Consequently, the association between the category or list and the specific instance, often influences frequency judgement. Frequency of co-occurrence strongly relates to Frequency of repetition, such that the more an item-pair is repeated, the stronger the association between the two items becomes, leading to a bias when estimating frequency of co-occurrence. Due to the phenomena of frequency of co-occurrence, illusory correlations also often play a big role.[8]

Another factor that affects the availability heuristic in frequency and probability is exemplars. Exemplars are the typical examples that stand out during the process of recall. If asked what participants thought different set sizes were (how many men and how many women are in the class), participants would use exemplars to determine the size of each set. Participants would derive their answer on ease of recall of the names that stood out. Participants read a list of names of members of a class for 30 seconds, and then participants were asked the male to female ratio of the class. The participant's answer would depend on the recall of exemplars. If the participant reading the list recalled seeing more common male names, such as Jack, but the only female names in the class were uncommon names, such as Deepika, then the participant will recall that there were more men than women. The opposite would be true if there were more common female names on the list and uncommon male names. Due to the availability heuristic, names that are more easily available are more likely to be recalled, and can thus alter judgments of probability.[28]

Another example of the availability heuristic and exemplars would be seeing a shark in the ocean. Seeing a shark has a greater impact on an individual's memory than seeing a dolphin. If someone sees both sharks and dolphins in the ocean, they will be less aware of seeing the dolphins, because the dolphins had less of an impact on their memory. Due to the greater impact of seeing a shark, the availability heuristic can influence the probability judgement of the ratio of sharks and dolphins in the water. Thus, an individual who saw both a shark and a dolphin would assume a higher ratio of sharks in the water, even if there are more dolphins in reality.[28]

Critiques
Ease of recall as a critique
One of the earliest and most powerful critiques of the original Tversky and Kahneman[29] study on the availability heuristic was the Schwarz et al.[4] study which found that the ease of recall was a key component in determining whether a concept became available. Many studies since this criticism of the original availability heuristic model have repeated this initial criticism, that the ease of recall factor became an integral facet of the availability heuristic itself (see Research section).

Alternative explanations
Much of the criticism against the availability heuristic has claimed that making use of the content that becomes available in our mind is not based on the ease of recall as suggested by Schwarz et al.[4] For example, it could be argued that recalling more words that begin with K than words with the third letter being K could arise from how we categorize and process words into our memory. If we categorize words by first letter, and recall them through the same process, this would show more support for the representatives heuristic than the availability heuristic. Based on the possibility of explanations such as these, some researchers have claimed that the classic studies on the availability heuristic are too vague in that they fail to account for people's underlying mental processes. Indeed, a study conducted by Wanke et al. demonstrated this scenario can occur in situations used to test the availability heuristic.[30]

A second line of study has shown that frequency estimation may not be the only strategy we use when making frequency judgments. A recent line of research has shown that our situational working memory can access long term memories, and this memory retrieval process includes the ability to determine more accurate probabilities.[31]

See also
	Psychology portal
Affect heuristic
Agenda-setting theory
Anecdotal evidence
Anecdotal value
Attribute substitution
Confirmation bias
Cultivation theory
Gambler's fallacy
List of biases in judgment and decision making
Mean world syndrome
Misleading vividness
Omission bias
Processing fluency
Representativeness heuristic
Salience bias
Survivorship bias
Texas sharpshooter fallacy





Heuristics in judgment and decision-making
https://en.wikipedia.org/wiki/Heuristics_in_judgment_and_decision-making
Heuristics are simple strategies or mental processes that humans, animals,[1][2][3] organizations[4] and machines[5] use to quickly form judgments, make decisions, and find solutions to complex problems. This happens when an individual focuses on the most relevant aspects of a problem or situation to formulate a solution.[6][7][8][9]

Some heuristics are more applicable and useful than others depending on the situation. Heuristic processes are used to find the answers and solutions that are most likely to work or be correct. However, heuristics are not always right or the most accurate.[10] While they can differ from answers given by logic and probability, judgments and decisions based on a heuristic can be good enough to satisfy a need.[11] They are meant to serve as quick mental references for everyday experiences and decisions. In situations of uncertainty, where information is incomplete,[12] heuristics allow for the less-is-more effect, in which less information leads to greater accuracy.[13]

History
Herbert A. Simon formulated one of the first models of heuristics, known as satisficing. His more general research program posed the question of how humans make decisions when the conditions for rational choice theory are not met, that is how people decide under uncertainty.[14] Simon is also known as the father of bounded rationality, which he understood as the study of the match (or mismatch) between heuristics and decision environments. This program was later extended into the study of ecological rationality.

In the early 1970s, psychologists Amos Tversky and Daniel Kahneman took a different approach, linking heuristics to cognitive biases. Their typical experimental setup consisted of a rule of logic or probability, embedded in a verbal description of a judgement problem, and demonstrated that people's intuitive judgement deviated from the rule. The "Linda problem" below gives an example. The deviation is then explained by a heuristic. This research, called the heuristics-and-biases program, challenged the idea that human beings are rational actors and first gained worldwide attention in 1974 with the Science paper "Judgment Under Uncertainty: Heuristics and Biases"[15] and although the originally proposed heuristics have been refined over time, this research program has changed the field by permanently setting the research questions.[16]

The original ideas by Herbert Simon were taken up in the 1990s by Gerd Gigerenzer and others. According to their perspective, the study of heuristics requires formal models that allow predictions of behavior to be made ex ante. Their program has three aspects:[17]

What are the heuristics humans use? (the descriptive study of the "adaptive toolbox")
Under what conditions should humans rely on a given heuristic? (the prescriptive study of ecological rationality)
How to design heuristic decision aids that are easy to understand and execute? (the engineering study of intuitive design)
Among others, this program has shown that heuristics can lead to fast, frugal, and accurate decisions in many real-world situations that are characterized by uncertainty.[18]

These two different research programs have led to two kinds of models of heuristics, formal models and informal ones. Formal models describe the decision process in terms of an algorithm, which allows for mathematical proofs and computer simulations. In contrast, informal models are verbal descriptions.

Formal models of heuristics
Simon's satisficing strategy
Main article: Satisficing
Herbert Simon's satisficing heuristic can be used to choose one alternative from a set of alternatives in situations of uncertainty.[19] Here, uncertainty means that the total set of alternatives and their consequences is not known or knowable. For instance, professional real-estate entrepreneurs rely on satisficing to decide in which location to invest to develop new commercial areas: "If I believe I can get at least x return within y years, then I take the option."[20] In general, satisficing is defined as:

Step 1: Set an aspiration level α
Step 2: Choose the first alternative that satisfies α
If no alternative is found, then the aspiration level can be adapted.

Step 3: If after time β no alternative has satisfied α, then decrease α by some amount δ and return to step 1.
Satisficing has been reported across many domains, for instance as a heuristic car dealers use to price used BMWs.[21]

Elimination by aspects
Unlike satisficing, Amos Tversky's elimination-by-aspect heuristic can be used when all alternatives are simultaneously available. The decision-maker gradually reduces the number of alternatives by eliminating alternatives that do not meet the aspiration level of a specific attribute (or aspect).[22]

Recognition heuristic
Main article: Recognition heuristic
The recognition heuristic exploits the basic psychological capacity for recognition in order to make inferences about unknown quantities in the world. For two alternatives, the heuristic is:[23]

If one of two alternatives is recognized and the other not, then infer that the recognized alternative has the higher value with respect to the criterion.

For example, in the 2003 Wimbledon tennis tournament, Andy Roddick played Tommy Robredo. If one has heard of Roddick but not of Robredo, the recognition heuristic leads to the prediction that Roddick will win. The recognition heuristic exploits partial ignorance, if one has heard of both or no player, a different strategy is needed. Studies of Wimbledon 2003 and 2005 have shown that the recognition heuristic applied by semi-ignorant amateur players predicted the outcomes of all gentlemen single games as well and better than the seedings of the Wimbledon experts (who had heard of all players), as well as the ATP rankings.[24][25] The recognition heuristic is ecologically rational (that is, it predicts well) when the recognition validity is substantially above chance. In the present case, recognition of players' names is highly correlated with their chances of winning.[26]

Take-the-best
Main article: Take-the-best heuristic
The take-the-best heuristic exploits the basic psychological capacity for retrieving cues from memory in the order of their validity. Based on the cue values, it infers which of two alternatives has a higher value on a criterion.[27] Unlike the recognition heuristic, it requires that all alternatives are recognized, and it thus can be applied when the recognition heuristic cannot. For binary cues (where 1 indicates the higher criterion value), the heuristic is defined as:

Search rule: Search cues in the order of their validity v. Stopping rule: Stop search on finding the first cue that discriminates between the two alternatives (i.e., one cue values are 0 and 1). Decision rule: Infer that the alternative with the positive cue value (1) has the higher criterion value).

The validity vi of a cue i is defined as the proportion of correct decisions ci:

vi = ci / ti

where ti is the number of cases the values of the two alternatives differ on cue i. The validity of each cue can be estimated from samples of observation.

Take-the-best has remarkable properties. In comparison with complex machine learning models, it has been shown that it can often predict better than regression models,[28] classification-and-regression trees, neural networks, and support vector machines. [Brighton & Gigerenzer, 2015]

Similarly, psychological studies have shown that in situations where take-the-best is ecologically rational, a large proportion of people tend to rely on it. This includes decision making by airport custom officers,[29] professional burglars and police officers [30] and student populations.[31] The conditions under which take-the-best is ecologically rational are mostly known.[32] Take-the-best shows that the previous view that ignoring part of the information would be generally irrational is incorrect. Less can be more.

Fast-and-frugal trees
Main article: Fast-and-frugal trees
A fast-and-frugal tree is a heuristic that allows to make a classifications,[33] such as whether a patient with severe chest pain is likely to have a heart attack or not,[34] or whether a car approaching a checkpoint is likely to be a terrorist or a civilian.[35] It is called “fast and frugal” because, just like take-the-best, it allows for quick decisions with only few cues or attributes. It is called a “tree” because it can be represented like a decision tree in which one asks a sequence of questions. Unlike a full decision tree, however, it is an incomplete tree – to save time and reduce the danger of overfitting.

Figure 1 shows a fast-and-frugal tree used for screening for HIV (human immunodeficiency virus). Just like take-the-best, the tree has a search rule, stopping rule, and decision rule:

Search rule: Search through cues in a specified order. Stopping rule: Stop search if an exit is reached. Decision rule: Classify the person according to the exit (here: No HIV or HIV).

In the HIV tree, an ELISA (enzyme-linked immunosorbent assay) test is conducted first. If the outcome is negative, then the testing procedure stops and the client is informed of the good news, that is, “no HIV.” If, however, the result is positive, a second ELISA test is performed, preferably from a different manufacturer. If the second ELISA is negative, then the procedure stops and the client is informed of having “no HIV.” However, if the result is positive, a final test, the Western blot, is conducted.


Figure 1: Screening for HIV in the general public follows the logic of a fast-and-frugal tree. If the first enzyme immunoassay (ELISA) is negative, the diagnosis is “no HIV.” If not, a second ELISA is performed; if it is negative, the diagnosis is “no HIV.” Otherwise, a Western blot test is performed, which determines the final classification
In general, for n binary cues, a fast-and-frugal tree has exactly n + 1 exits – one for each cue and two for the final cue. A full decision tree, in contrast, requires 2n exits. The order of cues (tests) in a fast-and-frugal tree is determined by the sensitivity and specificity of the cues, or by other considerations such as the costs of the tests. In the case of the HIV tree, the ELISA is ranked first because it produces fewer misses than the Western blot test, and also is less expensive. The Western blot test, in contrast, produces fewer false alarms. In a full tree, in contrast, order does not matter for the accuracy of the classifications.

Fast-and-frugal trees are descriptive or prescriptive models of decision making under uncertainty. For instance, an analysis or court decisions reported that the best model of how London magistrates make bail decisions is a fast and frugal tree.[36] The HIV tree is both prescriptive– physicians are taught the procedure – and a descriptive model, that is, most physicians actually follow the procedure.

Informal models of heuristics
In their initial research, Tversky and Kahneman proposed three heuristics—availability, representativeness, and anchoring and adjustment. Subsequent work has identified many more. Heuristics that underlie judgment are called "judgment heuristics". Another type, called "evaluation heuristics", are used to judge the desirability of possible choices.[37]

Availability
Main article: Availability heuristic
In psychology, availability is the ease with which a particular idea can be brought to mind. When people estimate how likely or how frequent an event is on the basis of its availability, they are using the availability heuristic.[38] When an infrequent event can be brought easily and vividly to mind, this heuristic overestimates its likelihood. For example, people overestimate their likelihood of dying in a dramatic event such as a tornado or terrorism. Dramatic, violent deaths are usually more highly publicised and therefore have a higher availability.[39] On the other hand, common but mundane events are hard to bring to mind, so their likelihoods tend to be underestimated. These include deaths from suicides, strokes, and diabetes. This heuristic is one of the reasons why people are more easily swayed by a single, vivid story than by a large body of statistical evidence.[40] It may also play a role in the appeal of lotteries: to someone buying a ticket, the well-publicised, jubilant winners are more available than the millions of people who have won nothing.[39]

When people judge whether more English words begin with T or with K , the availability heuristic gives a quick way to answer the question. Words that begin with T come more readily to mind, and so subjects give a correct answer without counting out large numbers of words. However, this heuristic can also produce errors. When people are asked whether there are more English words with K in the first position or with K in the third position, they use the same process. It is easy to think of words that begin with K, such as kangaroo, kitchen, or kept. It is harder to think of words with K as the third letter, such as lake, or acknowledge, although objectively these are three times more common. This leads people to the incorrect conclusion that K is more common at the start of words.[41] In another experiment, subjects heard the names of many celebrities, roughly equal numbers of whom were male and female. The subjects were then asked whether the list of names included more men or more women. When the men in the list were more famous, a great majority of subjects incorrectly thought there were more of them, and vice versa for women. Tversky and Kahneman's interpretation of these results is that judgments of proportion are based on availability, which is higher for the names of better-known people.[38]

In one experiment that occurred before the 1976 U.S. Presidential election, some participants were asked to imagine Gerald Ford winning, while others did the same for a Jimmy Carter victory. Each group subsequently viewed their allocated candidate as significantly more likely to win. The researchers found a similar effect when students imagined a good or a bad season for a college football team.[42] The effect of imagination on subjective likelihood has been replicated by several other researchers.[40]

A concept's availability can be affected by how recently and how frequently it has been brought to mind. In one study, subjects were given partial sentences to complete. The words were selected to activate the concept either of hostility or of kindness: a process known as priming. They then had to interpret the behavior of a man described in a short, ambiguous story. Their interpretation was biased towards the emotion they had been primed with: the more priming, the greater the effect. A greater interval between the initial task and the judgment decreased the effect.[43]

Tversky and Kahneman offered the availability heuristic as an explanation for illusory correlations in which people wrongly judge two events to be associated with each other. They explained that people judge correlation on the basis of the ease of imagining or recalling the two events together.[38][41]

Representativeness
Main article: Representativeness heuristic
Diagram
Snap judgement of whether novel object fits an existing category
The representativeness heuristic is seen when people use categories, for example when deciding whether or not a person is a criminal. An individual thing has a high representativeness for a category if it is very similar to a prototype of that category. When people categorise things on the basis of representativeness, they are using the representativeness heuristic. "Representative" is here meant in two different senses: the prototype used for comparison is representative of its category, and representativeness is also a relation between that prototype and the thing being categorised.[41][44] While it is effective for some problems, this heuristic involves attending to the particular characteristics of the individual, ignoring how common those categories are in the population (called the base rates). Thus, people can overestimate the likelihood that something has a very rare property, or underestimate the likelihood of a very common property. This is called the base rate fallacy. Representativeness explains this and several other ways in which human judgments break the laws of probability.[41]

The representativeness heuristic is also an explanation of how people judge cause and effect: when they make these judgements on the basis of similarity, they are also said to be using the representativeness heuristic. This can lead to a bias, incorrectly finding causal relationships between things that resemble one another and missing them when the cause and effect are very different. Examples of this include both the belief that "emotionally relevant events ought to have emotionally relevant causes", and magical associative thinking.[45][46]

Representativeness of base rates
Main article: Base rate fallacy
A 1973 experiment used a psychological profile of Tom W., a fictional graduate student.[47] One group of subjects had to rate Tom's similarity to a typical student in each of nine academic areas (including Law, Engineering and Library Science). Another group had to rate how likely it is that Tom specialised in each area. If these ratings of likelihood are governed by probability, then they should resemble the base rates, i.e. the proportion of students in each of the nine areas (which had been separately estimated by a third group). If people based their judgments on probability, they would say that Tom is more likely to study Humanities than Library Science, because there are many more Humanities students, and the additional information in the profile is vague and unreliable. Instead, the ratings of likelihood matched the ratings of similarity almost perfectly, both in this study and a similar one where subjects judged the likelihood of a fictional woman taking different careers. This suggests that rather than estimating probability using base rates, subjects had substituted the more accessible attribute of similarity.[47]

Conjunction fallacy
Main article: Conjunction fallacy
When people rely on representativeness, they can fall into an error which breaks a fundamental law of probability.[44] Tversky and Kahneman gave subjects a short character sketch of a woman called Linda, describing her as, "31 years old, single, outspoken, and very bright. She majored in philosophy. As a student, she was deeply concerned with issues of discrimination and social justice, and also participated in anti-nuclear demonstrations". People reading this description then ranked the likelihood of different statements about Linda. Amongst others, these included "Linda is a bank teller", and, "Linda is a bank teller and is active in the feminist movement". People showed a strong tendency to rate the latter, more specific statement as more likely, even though a conjunction of the form "Linda is both X and Y" can never be more probable than the more general statement "Linda is X". The explanation in terms of heuristics is that the judgment was distorted because, for the readers, the character sketch was representative of the sort of person who might be an active feminist but not of someone who works in a bank. A similar exercise concerned Bill, described as "intelligent but unimaginative". A great majority of people reading this character sketch rated "Bill is an accountant who plays jazz for a hobby", as more likely than "Bill plays jazz for a hobby".[48]

Without success, Tversky and Kahneman used what they described as "a series of increasingly desperate manipulations" to get their subjects to recognise the logical error. In one variation, subjects had to choose between a logical explanation of why "Linda is a bank teller" is more likely, and a deliberately illogical argument which said that "Linda is a feminist bank teller" is more likely "because she resembles an active feminist more than she resembles a bank teller". Sixty-five percent of subjects found the illogical argument more convincing.[48][49] Other researchers also carried out variations of this study, exploring the possibility that people had misunderstood the question. They did not eliminate the error.[50][51] It has been shown that individuals with high CRT scores are significantly less likely to be subject to the conjunction fallacy.[52] The error disappears when the question is posed in terms of frequencies. Everyone in these versions of the study recognised that out of 100 people fitting an outline description, the conjunction statement ("She is X and Y") cannot apply to more people than the general statement ("She is X").[53]

Ignorance of sample size
Main article: Insensitivity to sample size
Tversky and Kahneman asked subjects to consider a problem about random variation. Imagining for simplicity that exactly half of the babies born in a hospital are male, the ratio will not be exactly half in every time period. On some days, more girls will be born and on others, more boys. The question was, does the likelihood of deviating from exactly half depend on whether there are many or few births per day? It is a well-established consequence of sampling theory that proportions will vary much more day-to-day when the typical number of births per day is small. However, people's answers to the problem do not reflect this fact. They typically reply that the number of births in the hospital makes no difference to the likelihood of more than 60% male babies in one day. The explanation in terms of the heuristic is that people consider only how representative the figure of 60% is of the previously given average of 50%.[41][54]

Dilution effect
Richard E. Nisbett and colleagues suggest that representativeness explains the dilution effect, in which irrelevant information weakens the effect of a stereotype. Subjects in one study were asked whether "Paul" or "Susan" was more likely to be assertive, given no other information than their first names. They rated Paul as more assertive, apparently basing their judgment on a gender stereotype. Another group, told that Paul's and Susan's mothers each commute to work in a bank, did not show this stereotype effect; they rated Paul and Susan as equally assertive. The explanation is that the additional information about Paul and Susan made them less representative of men or women in general, and so the subjects' expectations about men and women had a weaker effect.[55] This means unrelated and non-diagnostic information about certain issue can make relative information less powerful to the issue when people understand the phenomenon.[56]

Misperception of randomness
Representativeness explains systematic errors that people make when judging the probability of random events. For example, in a sequence of coin tosses, each of which comes up heads (H) or tails (T), people reliably tend to judge a clearly patterned sequence such as HHHTTT as less likely than a less patterned sequence such as HTHTTH. These sequences have exactly the same probability, but people tend to see the more clearly patterned sequences as less representative of randomness, and so less likely to result from a random process.[41][57] Tversky and Kahneman argued that this effect underlies the gambler's fallacy; a tendency to expect outcomes to even out over the short run, like expecting a roulette wheel to come up black because the last several throws came up red.[44][58] They emphasised that even experts in statistics were susceptible to this illusion: in a 1971 survey of professional psychologists, they found that respondents expected samples to be overly representative of the population they were drawn from. As a result, the psychologists systematically overestimated the statistical power of their tests, and underestimated the sample size needed for a meaningful test of their hypotheses.[41][58]

Anchoring and adjustment
Main article: Anchoring
Anchoring and adjustment is a heuristic used in many situations where people estimate a number.[59] According to Tversky and Kahneman's original description, it involves starting from a readily available number—the "anchor"—and shifting either up or down to reach an answer that seems plausible.[59] In Tversky and Kahneman's experiments, people did not shift far enough away from the anchor. Hence the anchor contaminates the estimate, even if it is clearly irrelevant. In one experiment, subjects watched a number being selected from a spinning "wheel of fortune". They had to say whether a given quantity was larger or smaller than that number. For instance, they might be asked, "Is the percentage of African countries which are members of the United Nations larger or smaller than 65%?" They then tried to guess the true percentage. Their answers correlated well with the arbitrary number they had been given.[59][60] Insufficient adjustment from an anchor is not the only explanation for this effect. An alternative theory is that people form their estimates on evidence which is selectively brought to mind by the anchor.[61]


The amount of money people will pay in an auction for a bottle of wine can be influenced by considering an arbitrary two-digit number.
The anchoring effect has been demonstrated by a wide variety of experiments both in laboratories and in the real world.[60][62] It remains when the subjects are offered money as an incentive to be accurate, or when they are explicitly told not to base their judgment on the anchor.[62] The effect is stronger when people have to make their judgments quickly.[63] Subjects in these experiments lack introspective awareness of the heuristic, denying that the anchor affected their estimates.[63]

Even when the anchor value is obviously random or extreme, it can still contaminate estimates.[62] One experiment asked subjects to estimate the year of Albert Einstein's first visit to the United States. Anchors of 1215 and 1992 contaminated the answers just as much as more sensible anchor years.[63] Other experiments asked subjects if the average temperature in San Francisco is more or less than 558 degrees, or whether there had been more or fewer than 100,025 top ten albums by The Beatles. These deliberately absurd anchors still affected estimates of the true numbers.[60]

Anchoring results in a particularly strong bias when estimates are stated in the form of a confidence interval. An example is where people predict the value of a stock market index on a particular day by defining an upper and lower bound so that they are 98% confident the true value will fall in that range. A reliable finding is that people anchor their upper and lower bounds too close to their best estimate.[41] This leads to an overconfidence effect. One much-replicated finding is that when people are 98% certain that a number is in a particular range, they are wrong about thirty to forty percent of the time.[41][64]

Anchoring also causes particular difficulty when many numbers are combined into a composite judgment. Tversky and Kahneman demonstrated this by asking a group of people to rapidly estimate the product 8 x 7 x 6 x 5 x 4 x 3 x 2 x 1. Another group had to estimate the same product in reverse order; 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8. Both groups underestimated the answer by a wide margin, but the latter group's average estimate was significantly smaller.[65] The explanation in terms of anchoring is that people multiply the first few terms of each product and anchor on that figure.[65] A less abstract task is to estimate the probability that an aircraft will crash, given that there are numerous possible faults each with a likelihood of one in a million. A common finding from studies of these tasks is that people anchor on the small component probabilities and so underestimate the total.[65] A corresponding effect happens when people estimate the probability of multiple events happening in sequence, such as an accumulator bet in horse racing. For this kind of judgment, anchoring on the individual probabilities results in an overestimation of the combined probability.[65]

Examples
People's valuation of goods, and the quantities they buy, respond to anchoring effects. In one experiment, people wrote down the last two digits of their social security numbers. They were then asked to consider whether they would pay this number of dollars for items whose value they did not know, such as wine, chocolate, and computer equipment. They then entered an auction to bid for these items. Those with the highest two-digit numbers submitted bids that were many times higher than those with the lowest numbers.[66][67] When a stack of soup cans in a supermarket was labelled, "Limit 12 per customer", the label influenced customers to buy more cans.[63] In another experiment, real estate agents appraised the value of houses on the basis of a tour and extensive documentation. Different agents were shown different listing prices, and these affected their valuations. For one house, the appraised value ranged from US$114,204 to $128,754.[68][69]

Anchoring and adjustment has also been shown to affect grades given to students. In one experiment, 48 teachers were given bundles of student essays, each of which had to be graded and returned. They were also given a fictional list of the students' previous grades. The mean of these grades affected the grades that teachers awarded for the essay.[70]

One study showed that anchoring affected the sentences in a fictional rape trial.[71] The subjects were trial judges with, on average, more than fifteen years of experience. They read documents including witness testimony, expert statements, the relevant penal code, and the final pleas from the prosecution and defence. The two conditions of this experiment differed in just one respect: the prosecutor demanded a 34-month sentence in one condition and 12 months in the other; there was an eight-month difference between the average sentences handed out in these two conditions.[71] In a similar mock trial, the subjects took the role of jurors in a civil case. They were either asked to award damages "in the range from $15 million to $50 million" or "in the range from $50 million to $150 million". Although the facts of the case were the same each time, jurors given the higher range decided on an award that was about three times higher. This happened even though the subjects were explicitly warned not to treat the requests as evidence.[66]

Assessments can also be influenced by the stimuli provided. In one review, researchers found that if a stimulus is perceived to be important or carry "weight" to a situation, that people were more likely to attribute that stimulus as heavier physically.[72]

Affect heuristic
Main article: Affect heuristic
"Affect", in this context, is a feeling such as fear, pleasure or surprise. It is shorter in duration than a mood, occurring rapidly and involuntarily in response to a stimulus. While reading the words "lung cancer" might generate an affect of dread, the words "mother's love" can create an affect of affection and comfort. When people use affect ("gut responses") to judge benefits or risks, they are using the affect heuristic.[73] The affect heuristic has been used to explain why messages framed to activate emotions are more persuasive than those framed in a purely factual way.[74]

Others
See also: Category:Cognitive biases and Category:Heuristics
Control heuristic
Contagion heuristic
Effort heuristic
Familiarity heuristic
Fluency heuristic
Gaze heuristic
Hot-hand fallacy
Naive diversification
Peak–end rule
Recognition heuristic
Scarcity heuristic
Similarity heuristic
Simulation heuristic
Social proof
Theories
There are competing theories of human judgment, which differ on whether the use of heuristics is irrational. A cognitive laziness approach argues that heuristics are inevitable shortcuts given the limitations of the human brain. According to the natural assessments approach, some complex calculations are already done rapidly and automatically by the brain, and other judgments make use of these processes rather than calculating from scratch. This has led to a theory called "attribute substitution", which says that people often handle a complicated question by answering a different, related question, without being aware that this is what they are doing.[75] A third approach argues that heuristics perform just as well as more complicated decision-making procedures, but more quickly and with less information. This perspective emphasises the "fast and frugal" nature of heuristics.[76]

Cognitive laziness
See also: Cognitive miser
An effort-reduction framework proposed by Anuj K. Shah and Daniel M. Oppenheimer states that people use a variety of techniques to reduce the effort of making decisions.[77]

Attribute substitution
Main article: Attribute substitution

A visual example of attribute substitution. This illusion works because the 2D size of parts of the scene is judged on the basis of 3D (perspective) size, which is rapidly calculated by the visual system.
In 2002 Daniel Kahneman and Shane Frederick proposed a process called attribute substitution which happens without conscious awareness. According to this theory, when somebody makes a judgment (of a target attribute) which is computationally complex, a rather more easily calculated heuristic attribute is substituted.[78] In effect, a difficult problem is dealt with by answering a rather simpler problem, without the person being aware this is happening.[75] This explains why individuals can be unaware of their own biases, and why biases persist even when the subject is made aware of them. It also explains why human judgments often fail to show regression toward the mean.[75][78][79]

This substitution is thought of as taking place in the automatic intuitive judgment system, rather than the more self-aware reflective system. Hence, when someone tries to answer a difficult question, they may actually answer a related but different question, without realizing that a substitution has taken place.[75][78]

In 1975, psychologist Stanley Smith Stevens proposed that the strength of a stimulus (e.g. the brightness of a light, the severity of a crime) is encoded by brain cells in a way that is independent of modality. Kahneman and Frederick built on this idea, arguing that the target attribute and heuristic attribute could be very different in nature.[75]

[P]eople are not accustomed to thinking hard, and are often content to trust a plausible judgment that comes to mind.
Daniel Kahneman, American Economic Review 93 (5) December 2003, p. 1450[79]
Kahneman and Frederick propose three conditions for attribute substitution:[75]

The target attribute is relatively inaccessible.
Substitution is not expected to take place in answering factual questions that can be retrieved directly from memory ("What is your birthday?") or about current experience ("Do you feel thirsty now?).
An associated attribute is highly accessible.
This might be because it is evaluated automatically in normal perception or because it has been primed. For example, someone who has been thinking about their love life and is then asked how happy they are might substitute how happy they are with their love life rather than other areas.
The substitution is not detected and corrected by the reflective system.
For example, when asked "A bat and a ball together cost $1.10. The bat costs $1 more than the ball. How much does the ball cost?" many subjects incorrectly answer $0.10.[79] An explanation in terms of attribute substitution is that, rather than work out the sum, subjects parse the sum of $1.10 into a large amount and a small amount, which is easy to do. Whether they feel that is the right answer will depend on whether they check the calculation with their reflective system.
Kahneman gives an example where some Americans were offered insurance against their own death in a terrorist attack while on a trip to Europe, while another group were offered insurance that would cover death of any kind on the trip. Even though "death of any kind" includes "death in a terrorist attack", the former group were willing to pay more than the latter. Kahneman suggests that the attribute of fear is being substituted for a calculation of the total risks of travel.[80] Fear of terrorism for these subjects was stronger than a general fear of dying on a foreign trip.

Fast and frugal
Gerd Gigerenzer and colleagues have argued that heuristics can be used to make judgments that are accurate rather than biased. According to them, heuristics are "fast and frugal" alternatives to more complicated procedures, giving answers that are just as good.[81]

Consequences
Efficient decision heuristics
Warren Thorngate, a social psychologist, implemented ten simple decision rules or heuristics in a computer program. He determined how often each heuristic selected alternatives with highest-through-lowest expected value in a series of randomly-generated decision situations. He found that most of the simulated heuristics selected alternatives with highest expected value and almost never selected alternatives with lowest expected value.[82]

"Beautiful-is-familiar" effect
Psychologist Benoît Monin reports a series of experiments in which subjects, looking at photographs of faces, have to judge whether they have seen those faces before. It is repeatedly found that attractive faces are more likely to be mistakenly labeled as familiar.[83] Monin interprets this result in terms of attribute substitution. The heuristic attribute in this case is a "warm glow"; a positive feeling towards someone that might either be due to their being familiar or being attractive. This interpretation has been criticised, because not all the variance in familiarity is accounted for by the attractiveness of the photograph.[77]

Judgments of morality and fairness
Legal scholar Cass Sunstein has argued that attribute substitution is pervasive when people reason about moral, political or legal matters.[84] Given a difficult, novel problem in these areas, people search for a more familiar, related problem (a "prototypical case") and apply its solution as the solution to the harder problem. According to Sunstein, the opinions of trusted political or religious authorities can serve as heuristic attributes when people are asked their own opinions on a matter. Another source of heuristic attributes is emotion: people's moral opinions on sensitive subjects like sexuality and human cloning may be driven by reactions such as disgust, rather than by reasoned principles.[85] Sunstein has been challenged as not providing enough evidence that attribute substitution, rather than other processes, is at work in these cases.[77]

Persuasion
An example of how persuasion plays a role in heuristic processing can be explained through the heuristic-systematic model.[86] This explains how there are often two ways we are able to process information from persuasive messages, one being heuristically and the other systematically. A heuristic is when we make a quick short judgement into our decision making. On the other hand, systematic processing involves more analytical and inquisitive cognitive thinking. Individuals looks further than their own prior knowledge for the answers.[87][88] An example of this model could be used when watching an advertisement about a specific medication. One without prior knowledge would see the person in the proper pharmaceutical attire and assume that they know what they are talking about. Therefore, that person automatically has more credibility and is more likely to trust the content of the messages than they deliver. While another who is also in that field of work or already has prior knowledge of the medication will not be persuaded by the ad because of their systematic way of thinking. This was also formally demonstrated in an experiment conducted my Chaiken and Maheswaran (1994).[89] In addition to these examples, the fluency heuristic ties in perfectly with the topic of persuasion. It is described as how we all easily make "the most of an automatic by-product of retrieval from memory".[90] An example would be a friend asking about good books to read.[91] Many could come to mind, but you name the first book recalled from your memory. Since it was the first thought, therefore you value it as better than any other book one could suggest. The effort heuristic is almost identical to fluency. The one distinction would be that objects that take longer to produce are seen with more value. One may conclude that a glass vase is more valuable than a drawing, merely because it may take longer for the vase. These two varieties of heuristics confirms how we may be influenced easily our mental shortcuts, or what may come quickest to our mind.[92]

[icon]	
This section needs expansion. You can help by adding to it. (October 2016)
See also
	Psychology portal
	Philosophy portal
Behavioral economics – Academic discipline
Bounded rationality
Debiasing
Ecological rationality
Great Rationality Debate – The question of whether humans are rational or not
List of cognitive biases – Systematic patterns of deviation from norm or rationality in judgment
List of memory biases – Wikipedia list article
Low information voter








Typical intellectual engagement
https://en.wikipedia.org/wiki/Typical_intellectual_engagement#Typical_performance_vs._maximal_performance
Typical intellectual engagement (TIE) is a personality construct referring to a person's enjoyment (or dislike) of intellectually demanding activities.[1] TIE was developed to identify aspects of personality most closely related to intelligence and knowledge and measures a person's typical performance in intellectual domains rather than their maximal performance (intellectual capacity measured by IQ tests).[2] TIE is moderately positively associated with crystallized intelligence,[1] and with general knowledge,[3] and predicts academic performance.[4] TIE is hard to distinguish from the earlier construct need for cognition[2] and is positively correlated with openness to experience.[5]

Typical performance vs. maximal performance
Goff and Ackerman proposed a distinction between typical and maximal performance on intellectual tasks.[1] Traditional approaches to intelligence testing attempt to assess capacity or maximal performance and aim to minimise the impact of situational or environmental factors on test performance in order to assess the individual's full potential. Test givers and designers do acknowledge that intelligence test performance is not independent of motivational or volitional factors, as test takers are typically encouraged to "do their best" when taking intelligence tests. Personality tests in contrast to intelligence tests, focus on how a person typically behaves. Goff and Ackerman argued that this is analogous to the concept of intelligence as typical performance, that is, how a person routinely behaves when performing intellectual tasks. Goff and Ackerman argued that it is not practical or desirable to separate intellectual performance from motivational and volitional factors. The latter may be influenced by both temperamental (personality) and situational factors (e.g. incentives, interest in the task). The construct of Typical Intellectual Engagement was developed to identify the overlapping area between personality and intelligence and attempts to assess "intelligence as typical performance". Goff and Ackerman developed TIE scale items to "differentiate among individuals in their typical expression of a desire to engage and understand their world, their interest in a wide variety of things, and their preference for a complete understanding of a complex topic".[1] TIE scales assess three facets: problem-directed thinking (e.g. "I really enjoy tasks that involve coming up with new solutions to problems"), abstract thinking (e.g. "thinking is not my idea of fun" – reverse scored), and reading (e.g. "I read a great deal").[5]

Relationships with intelligence, interests and academic performance
Goff and Ackerman found that TIE was moderately associated with crystallized intelligence (r = .33) and weakly associated with fluid intelligence (r = .11).[1] Goff and Ackerman suggested that the relationship between TIE and crystallized intelligence might reflect an overlap between the constructs (as crystallized intelligence involves acquired knowledge), or it might reflect an influence of crystallized intelligence on TIE, or a symbiotic relationship between the two. TIE had strong positive correlations with measures of academic interests (e.g. interest in arts and humanities, science, social science but not interest in technology) and with a measure of academic comfort.[1] A study examining predictors of general knowledge found that TIE had a significant positive association with a measure of general knowledge (r = .36).[3] However, the relationship between TIE and general knowledge became non-significant when differences in intelligence were taken into account. A meta-analysis found that TIE was a significant predictor of academic performance (r = .33).[4] The authors of this study suggested that intellectual curiosity, as measured by TIE, is a potential "third pillar" of academic achievement, the other two pillars being intelligence and effort.

Relationship with similar constructs
TIE has a strong positive relationship with the personality domain openness to experience, particularly the ideas facet.[5] Rocklin argued that TIE is largely indistinguishable from openness to experience and therefore a redundant construct.[6] Goff and Ackerman argued though that although TIE and openness are related they are still theoretically and empirically distinguishable.[5] Factor analysis results suggest that TIE is most strongly related to the ideas facet of openness and less strongly related to the other facets. Openness to ideas is a facet of openness to experience associated with "aspects of being open minded, engaging in unconventional thoughts, and solving problems and thinking as an end in itself".[7] A meta-analysis found that an important difference between TIE and openness to experience is that TIE predicts academic performance, whereas openness to experience does not (once its association with TIE has been controlled).[4] Additionally, this study found that openness to experience is more closely associated with intelligence than TIE is, and TIE is more closely associated with conscientiousness than openness to experience is. A study comparing TIE with need for cognition found that they were very strongly related (r = .78) and the authors of this study suggested that they may be essentially the same construct.[2] Another study found that TIE had very strong positive intercorrelations with a number of similar constructs, specifically epistemic curiosity, need for cognition, and openness to ideas.[7] Epistemic curiosity can be defined as "desire for knowledge that motivates individuals to learn new ideas, eliminate information-gaps, and solve intellectual problems".[7] Factor analysis showed that measures of all four constructs loaded strongly onto a single factor, suggesting they all share a common conceptual basis.[7] The author of this study argued that although the four constructs lack discriminant validity they are not necessarily all conceptually equivalent as each one may emphasise particular aspects of functioning more than others. For example, TIE has a reading facet that emphasises a particular behaviour, whereas the other constructs do not necessarily emphasise reading behaviour.

See also
Big Five personality traits
Differential psychology





Conscientiousness
https://en.wikipedia.org/wiki/Conscientiousness#Personality_models
Not to be confused with conscience or conscientious objector.
Conscientiousness is the personality trait of being careful, or diligent. Conscientiousness implies a desire to do a task well, and to take obligations to others seriously. Conscientious people tend to be efficient and organized as opposed to easy-going and disorderly. They exhibit a tendency to show self-discipline, act dutifully, and aim for achievement; they display planned rather than spontaneous behavior; and they are generally dependable. It is manifested in characteristic behaviors such as being neat, and systematic; also including such elements as carefulness, thoroughness, and deliberation (the tendency to think carefully before acting).[1]

Conscientiousness is one of the five traits of both the Five Factor Model and the HEXACO model of personality and is an aspect of what has traditionally been referred to as having character. Conscientious individuals are generally hard-working, and reliable. When taken to an extreme, they may also be "workaholics", perfectionists, and compulsive in their behavior.[2] People who score low on conscientiousness tend to be laid back, less goal-oriented, and less driven by success; they also are more likely to engage in antisocial and criminal behavior.[3]


Personality models
Conscientiousness is one of the five major dimensions in the Big Five model (also called Five Factor Model) of personality, which also consists of extraversion, neuroticism, openness to experience, and agreeableness (OCEAN acronym). Two of many personality tests that assess these traits are Costa and McCrae's NEO PI-R[4] and Goldberg's NEO-IPIP.[5] According to these models, conscientiousness is considered to be a continuous dimension of personality, rather than a categorical 'type' of person.

In the NEO framework, Conscientiousness is seen as having six facets: Competence, Order, Dutifulness, Achievement Striving, Self-Discipline, and Deliberation. Other models suggest a smaller set of two "aspects": orderliness and industriousness form an intermediate level of organization, with orderliness associated with the desire to keep things organized and tidy and industriousness being more associated with productivity and work ethic.[6]

Other personality traits ((Low) extraversion, (high) agreeableness, (low) openness and (low) neuroticism) are linked to high conscientiousness along with impulse control. Behaviorally, low conscientiousness is associated with an inability to motivate one's self to perform tasks that the individual desires to accomplish.[4]

Conscientiousness also appears in other models of personality, such as Cloninger's Temperament and Character Inventory, in which it is related to both self-directedness and persistence.[7] It also includes the specific traits of rule consciousness and perfectionism in Cattell's 16 PF model. It is negatively associated with impulsive sensation-seeking in Zuckerman's alternative five model. Traits associated with conscientiousness are frequently assessed by self-report integrity tests given by various corporations to prospective employees.

Origin
Terms such as 'hard-working,' 'reliable,' and 'persevering' describe desirable aspects of character. Because it was once believed to be a moral evaluation, conscientiousness was overlooked as a real psychological attribute. The reality of individual differences in conscientiousness has now been clearly established by studies of cross-observer agreement. Peer and expert ratings confirm the self-reports that people make about their degrees of conscientiousness. Furthermore, both self-reports and observer ratings of conscientiousness predict real-life outcomes such as academic success.

During most of the 20th century, psychologists believed that personality traits could be divided into two categories: temperament and character. Temperament traits were thought to be biologically based, whereas character traits were thought to be learned either during childhood or throughout life. With the advent of the FFM (Five-Factor Model), behavior geneticists began systematic studies of the full range of personality traits, and it soon became clear that all five factors are substantially heritable. Identical twins showed very similar personality traits even when they had been separated at birth and raised apart, and this was equally true for both character traits and temperament traits. Parents and communities influence the ways in which conscientiousness is expressed, but they apparently do not influence its level.[8]

Measurement
A person's level of conscientiousness is generally assessed using self-report measures, although peer-reports and third-party observation can also be used. Self-report measures are either lexical[1] or based on statements.[9] Deciding which measure of either type to use in research is determined by an assessment of psychometric properties and the time and space constraints of the study being undertaken.

Lexical
Lexical measures use individual adjectives that reflect conscientiousness traits, such as efficient and systematic, and are very space and time efficient for research purposes. Goldberg (1992)[10] developed a 20-word measure as part of his 100-word Big Five markers. Saucier (1994)[11] developed a briefer 8-word measure as part of his 40-word mini-markers. Thompson (2008)[1] systematically revised these measures to develop the International English Mini-Markers which has superior validity and reliability in populations both within and outside North America. Internal consistency reliability of the International English Mini-Markers for the Conscientiousness measure for native English-speakers is reported as .90, that for non-native English-speakers is .86.[1]

Statement
Statement measures tend to comprise more words than lexical measures, so hence consume more research instrument space and more respondent time to complete. Respondents are asked the extent to which they, for example, often forget to put things back in their proper place, or are careful to avoid making mistakes.[9] Some statement-based measures of conscientiousness have similarly acceptable psychometric properties in North American populations to lexical measures, but their generally emic development makes them less suited to use in other populations.[12] For instance, statements in colloquial North American English like Often forget to put things back in their proper place or Am careful to avoid making mistakes can be hard for non-native English-speakers to understand, suggesting internationally validated measures might be more appropriate for research conducted with non-North Americans.

Behavior
Development
Currently, little is known about conscientiousness in young children because the self-report inventories typically used to assess it are not appropriate for that age group. It is likely, however, that there are individual differences on this factor at an early age. It is known, for example, that some children have attention deficit/hyperactivity disorder (ADHD may not go away with age;[13] however it is still unclear how neurodevelopmental disorders such as ADHD and autism relate to the development of conscientiousness and other personality traits), which is characterized in part by problems with concentration, organization, and persistence; traits which are related to conscientiousness.[14] Longitudinal and cross-sectional studies suggest that conscientiousness is relatively low among adolescents but increases between 18 and 30 years of age. Research has also shown that conscientiousness generally increases with age from 21 to 60, though the rate of increase is slow.[15]

Individual differences are also strongly preserved, meaning that a careful, neat, and scrupulous 30-year-old is likely to become a careful, neat, and scrupulous 80-year-old.[8]

Daily life
People who score high on the trait of conscientiousness tend to be more organized and less cluttered in their homes and offices. For example, their books tend to be neatly shelved in alphabetical order, or categorized by topic, rather than scattered around the room. Their clothes tend to be folded and arranged in drawers or closets instead of lying on the floor. The presence of planners and to-do lists are also signs of conscientiousness. Their homes tend to have better lighting than the homes of people who score low on this trait.[16] Recently,[when?] ten behaviors strongly associated with conscientiousness were scientifically categorized (the number at the end of each behavior is a correlation coefficient; a negative number means conscientious people were less likely to manifest the behavior):[17]

Academic and workplace performance
Conscientiousness is importantly related to successful academic performance in students and workplace performance among managers and workers.[18] Low levels of conscientiousness are strongly associated with procrastination.[19] A considerable amount of research indicates that conscientiousness has a moderate to large positive correlation with performance in the workplace,[20][21] and indeed that after general mental ability is taken into account, the other four of the Big Five personality traits do not aid in predicting career success.[22]:169[irrelevant citation]

Conscientious employees are generally more reliable, more motivated, and harder working. They also have lower rates of absenteeism and counterproductive work behaviors such as stealing and fighting with other employees.[23] Furthermore, conscientiousness is the personality trait that mostly correlates with performance across all categories of jobs.[24] However, agreeableness and emotional stability may also be important, particularly in jobs that involve a significant amount of social interaction.[25] Of all manager/leader types, top executives show the lowest level of rule-following, a conscientious trait.[26] Conscientiousness is not always positively related to job performance, sometimes the opposite is true. Being too conscientious could lead to taking too much time to making urgent decisions and to working too attached to the rules and lack innovation.[27]

Subjective well-being
Main article: Subjective well-being
In general, conscientiousness has a positive relationship with subjective well-being, particularly satisfaction with life, so highly conscientious people tend to be happier with their lives than those who score low on this trait.[28] Although conscientiousness is generally seen as a positive trait to possess, recent research has suggested that in some situations it may be harmful for well-being. In a prospective study of 9570 individuals over four years, highly conscientious people suffered more than twice as much if they became unemployed.[29] The authors suggested this may be due to conscientious people making different attributions about why they became unemployed, or through experiencing stronger reactions following failure. This finding is consistent with perspectives which see no trait as inherently positive or negative, but rather the consequences of the trait being dependent on the situation and concomitant goals and motivations.[30]

Problematic life outcomes
Low conscientiousness has been linked to antisocial and criminal behaviors,[3] as well as unemployment, homelessness, and imprisonment.[23] Low conscientiousness and low agreeableness taken together are also associated with substance abuse.[31] People low in conscientiousness have difficulty saving money and have different borrowing practices than conscientious people. High conscientiousness is associated with more careful planning of shopping trips and less impulse buying of unneeded items.[23] Conscientiousness has been found to be positively correlated with business and white-collar crime.[32]

Health and longevity
According to an 80-year old and ongoing study started in 1921 by psychologist Lewis Terman on over 1,500 gifted adolescent Californians, "The strongest predictor of long life was conscientiousness."[33][better source needed] Specific behaviors associated with low conscientiousness may explain its influence on longevity. Nine different behaviors that are among the leading causes of mortality—alcohol use, disordered eating (including obesity), drug use, lack of exercise, risky sexual behavior, risky driving, tobacco use, suicide, and violence—are all predicted by low conscientiousness. Health behaviors are more strongly correlated with the conventionality rather than the impulse-control aspect of conscientiousness. Apparently, social norms influence many health-relevant behavior, such as healthy diet and exercise, not smoking and moderate drinking, and highly conscientious people adhere the most strongly to these norms.[23] Additionally, conscientiousness is positively related to health behaviors such as regular visits to a doctor, checking smoke alarms, and adherence to medication regimens. Such behavior may better safeguard health and prevent disease.[23][better source needed]

Relationships
Relationship quality is positively associated with partners' level of conscientiousness, and highly conscientious people are less likely to get divorced. Conscientiousness is associated with lower rates of behavior associated with divorce, such as extramarital affairs, spousal abuse, and alcohol abuse. Conscientious behaviors may have a direct influence on relationship quality, as people low in conscientiousness are less responsible, less responsive to their partners, are more condescending, and less likely to hold back offensive comments. On the other hand, more conscientious people are better at managing conflict and tend to provoke fewer disagreements, perhaps because they elicit less criticism due to their well-controlled and responsible behavior.[23][better source needed]

Intelligence
Conscientiousness significantly correlated negatively with abstract reasoning (−0.26) and verbal reasoning (−0.23).[34]

Large unselected studies, however, have found null relationships,[35] and the negative relationship sometimes found in selected samples such as universities may result from students whose low ability would reduce their chance of gaining entrance, but who have higher conscientiousness, gaining their GPA via hard work rather than giftedness.[36]

A large study found that fluid intelligence was significantly negatively correlated with the order (−0.15), self-discipline (−0.08), and deliberation (−0.09) subfactors of conscientiousness (all correlations significant with p < 0.001.).[37]

Political attitudes and obedience to authority
Conscientiousness has a weak relationship with conservative political attitudes.[38] Although right-wing authoritarianism is one of the most powerful predictors of prejudice, a large scale meta-analysis found that conscientiousness itself is uncorrelated with general prejudice.[39][40] Rebellion against control is significantly negatively correlated with conscientiousness.[41]

Conscientiousness is associated with rule compliance, obedience and integrity.[42]

Creativity
The orderliness/dependability subfactors (order, dutifulness, and deliberation) of conscientiousness correlate negatively with creativity while the industriousness/achievement subfactors correlate positively.[43] Another study showed that people who score high on the order subfactor of conscientiousness show less innovative behavior.[44] Group conscientiousness has a negative effect on group performance during creative tasks.[45] Groups with only conscientious members have difficulty solving open-ended problems.[46]

Adaptability
A study from 2006 found that those scoring low on conscientiousness make better decisions after unanticipated changes in the context of a task. Specifically, the subfactors order, dutifulness, and deliberation negatively correlated with decision-making quality, but not competence, achievement striving, and self-discipline.[47]

Religiosity
General religiosity was mainly related to Agreeableness and Conscientiousness of the big five traits .[48]

Societal Health
Research comparing countries on personality traits has largely found that countries with high average levels of conscientiousness tend to be poorer, less democratic, and to have lower life expectancy compared to their less conscientious counterparts.[dubious – discuss] Less conscientious nations had higher rates of atheism and of alcohol consumption. As discussed earlier, at the individual level, conscientiousness is associated with valuing security, conformity and tradition. Adherence to such values might be more adaptive under harsh living circumstances than more comfortable and prosperous ones.[49]

Geography
United States
Average levels of conscientiousness vary by state in the United States. People living in the central part, including the states of Kansas, Nebraska, Oklahoma, and Missouri, tend to have higher scores on average than people living in other regions. People in the southwestern states of New Mexico, Utah, and Arizona also have relatively high average scores on conscientiousness. Among the eastern states, Florida is the only one that scores in the top ten for this personality trait. The four states with the lowest scores on conscientiousness on average were, in descending order, Rhode Island, Hawaii, Maine, and Alaska.[50]

Great Britain
A large scale survey of residents of Great Britain found that average levels of all the Big Five, including conscientiousness, vary across regional districts in England, Wales and Scotland. High levels of conscientiousness were found throughout much of Southern England, scattered areas of the Midlands, and most of the Scottish Highlands. Low levels of conscientiousness were observed in London, Wales, and parts of the North of England. Higher mean levels of regional conscientiousness were positively correlated with voting for the Conservative Party, and negatively correlated with voting for the Labour Party, in the 2005 and 2010 elections, and also correlated with a higher proportion of married residents, with higher life expectancy for men and women, fewer long-term health problems, and with lower rates of mortality from stroke, cancer, and heart disease. Higher regional conscientiousness was also correlated with lower median annual income in 2011.[51]

See also
Alternative five model of personality
Order
Personality psychology






Divergent thinking
https://en.wikipedia.org/wiki/Divergent_thinking#Activities
Divergent thinking is a thought process or method used to generate creative ideas by exploring many possible solutions. It typically occurs in a spontaneous, free-flowing, "non-linear" manner, such that many ideas are generated in an emergent cognitive fashion. Many possible solutions are explored in a short amount of time, and unexpected connections are drawn. Following divergent thinking, ideas and information are organized and structured using convergent thinking, which follows a particular set of logical steps to arrive at one solution, which in some cases is a "correct" solution.

The psychologist J.P. Guilford first coined the terms convergent thinking and divergent thinking in 1956.



Activities
Activities which promote divergent thinking include creating lists of questions, setting aside time for thinking and meditation, brainstorming, subject mapping, bubble mapping, keeping a journal, playing tabletop role-playing games,[1] creating artwork, and free writing. In free writing, a person will focus on one particular topic and write non-stop about it for a short period of time, in a stream of consciousness fashion.

Playfulness
Parallels have been drawn between playfulness in kindergarten-aged children and divergent thinking. In a study documented by Lieberman,[2] the relationship between these two traits was examined, with playfulness being "conceptualized and operationally defined in terms of five traits: physical, social and cognitive spontaneity; manifest joy; and sense of humour".[2] The author noted that during the study, while observing the children's behaviour at play, they "noted individual differences in spontaneity, overtones of joy, and sense of humour that imply a relationship between the foregoing qualities and some of the factors found in the intellectual structure of creative adults and adolescents".[2] This study highlighted the link between behaviours of divergent thinking, or creativity, in playfulness during childhood and those displayed in later years, in creative adolescents and adults.

Future research opportunities in this area could explore a longitudinal study of kindergarten-aged children and the development or evolution of divergent thinking abilities throughout adolescence, into adulthood, in order to substantiate the link drawn between playfulness and divergent thinking in later life. This long-term study would help parents and teachers identify this behaviour (or lack thereof) in children, specifically at an age when it can be reinforced if already displayed, or supported if not yet displayed.

Effects of positive and negative mood
In a study at the University of Bergen, Norway, the effects of positive and negative mood on divergent-thinking were examined.[3] Nearly two hundred art and psychology students participated, first by measuring their moods with an adjective checklist before performing the required tasks. The results showed a clear distinction in performance between those with a self-reported positive versus negative mood:

Results showed natural positive mood to facilitate significantly task performance and negative mood to inhibit it… The results suggest that persons in elevated moods may prefer satisficing strategies, which would lead to a higher number of proposed solutions. Persons in a negative mood may choose optimizing strategies and be more concerned with the quality of their ideas, which is detrimental to performance on this kind of task.

— (Vosburg, 1998)
A series of related studies suggested a link between positive mood and the promotion of cognitive flexibility.[4][5] In a 1990 study by Murray, Sujan, Hirt and Sujan,[6] this hypothesis was examined more closely and "found positive mood participants were able to see relations between concepts”, as well as demonstrating advanced abilities "in distinguishing the differences between concepts".[3] This group of researchers drew a parallel between "their findings and creative problem solving by arguing that participants in a positive mood are better able both to differentiate between and to integrate unusual and diverse information".[3] This shows that their subjects are at a distinct cognitive advantage when performing divergent thinking-related tasks in an elevated mood. Further research could take this topic one step further to explore effective strategies to improve divergent thinking when in a negative mood, for example how to move beyond "optimizing strategies" into "satisficing strategies" rather than focus on "the quality of their ideas", in order to generate more ideas and creative solutions.[3]

Effects of sleep deprivation
While little research has been conducted on the impact of sleep deprivation on divergent thinking, one study by J.A. Horne[7] illustrated that even when motivation to perform well is maintained, sleep can still impact divergent thinking performance. In this study, twelve subjects were deprived of sleep for thirty-two hours, while a control group of twelve others maintained normal sleep routine. Subjects' performance on both a word fluency task and a challenging nonverbal planning test was "significantly impaired by sleep loss", even when the factor of personal motivation to perform well was controlled.[7] This study showed that even "one night of sleep loss can affect divergent thinking”, which "contrasts with the outcome for convergent thinking tasks, which are more resilient to short-term sleep loss".[7] Research on sleep deprivation and divergent thinking could be further explored on a biological or chemical level, to identify the reason why cognitive functioning, as it relates to divergent thinking, is impacted by lack of sleep and if there is a difference in its impact if subjects are deprived of REM versus non-REM sleep.

See also
	Philosophy portal
	Psychology portal
Lateral thinking




Regression analysis
https://en.wikipedia.org/wiki/Regression_analysis#History
In statistical modeling, regression analysis is a set of statistical processes for estimating the relationships between a dependent variable (often called the 'outcome variable') and one or more independent variables (often called 'predictors', 'covariates', or 'features'). The most common form of regression analysis is linear regression, in which one finds the line (or a more complex linear combination) that most closely fits the data according to a specific mathematical criterion. For example, the method of ordinary least squares computes the unique line (or hyperplane) that minimizes the sum of squared differences between the true data and that line (or hyperplane). For specific mathematical reasons (see linear regression), this allows the researcher to estimate the conditional expectation (or population average value) of the dependent variable when the independent variables take on a given set of values. Less common forms of regression use slightly different procedures to estimate alternative location parameters (e.g., quantile regression or Necessary Condition Analysis[1]) or estimate the conditional expectation across a broader collection of non-linear models (e.g., nonparametric regression).

Regression analysis is primarily used for two conceptually distinct purposes. First, regression analysis is widely used for prediction and forecasting, where its use has substantial overlap with the field of machine learning. Second, in some situations regression analysis can be used to infer causal relationships between the independent and dependent variables. Importantly, regressions by themselves only reveal relationships between a dependent variable and a collection of independent variables in a fixed dataset. To use regressions for prediction or to infer causal relationships, respectively, a researcher must carefully justify why existing relationships have predictive power for a new context or why a relationship between two variables has a causal interpretation. The latter is especially important when researchers hope to estimate causal relationships using observational data.[2][3]


Contents
1	History
2	Regression model
3	Underlying assumptions
4	Linear regression
4.1	General linear model
4.2	Diagnostics
4.3	Limited dependent variables
5	Nonlinear regression
6	Interpolation and extrapolation
7	Power and sample size calculations
8	Other methods
9	Software
10	See also
11	References
12	Further reading
13	External links
History
The earliest form of regression was the method of least squares, which was published by Legendre in 1805,[4] and by Gauss in 1809.[5] Legendre and Gauss both applied the method to the problem of determining, from astronomical observations, the orbits of bodies about the Sun (mostly comets, but also later the then newly discovered minor planets). Gauss published a further development of the theory of least squares in 1821,[6] including a version of the Gauss–Markov theorem.

The term "regression" was coined by Francis Galton in the 19th century to describe a biological phenomenon. The phenomenon was that the heights of descendants of tall ancestors tend to regress down towards a normal average (a phenomenon also known as regression toward the mean).[7][8] For Galton, regression had only this biological meaning,[9][10] but his work was later extended by Udny Yule and Karl Pearson to a more general statistical context.[11][12] In the work of Yule and Pearson, the joint distribution of the response and explanatory variables is assumed to be Gaussian. This assumption was weakened by R.A. Fisher in his works of 1922 and 1925.[13][14][15] Fisher assumed that the conditional distribution of the response variable is Gaussian, but the joint distribution need not be. In this respect, Fisher's assumption is closer to Gauss's formulation of 1821.

In the 1950s and 1960s, economists used electromechanical desk "calculators" to calculate regressions. Before 1970, it sometimes took up to 24 hours to receive the result from one regression.[16]

Regression methods continue to be an area of active research. In recent decades, new methods have been developed for robust regression, regression involving correlated responses such as time series and growth curves, regression in which the predictor (independent variable) or response variables are curves, images, graphs, or other complex data objects, regression methods accommodating various types of missing data, nonparametric regression, Bayesian methods for regression, regression in which the predictor variables are measured with error, regression with more predictor variables than observations, and causal inference with regression.

Regression model
In practice, researchers first select a model they would like to estimate and then use their chosen method (e.g., ordinary least squares) to estimate the parameters of that model. Regression models involve the following components:

The unknown parameters, often denoted as a scalar or vector {\displaystyle \beta }\beta .
The independent variables, which are observed in data and are often denoted as a vector {\displaystyle X_{i}}X_{i} (where {\displaystyle i}i denotes a row of data).
The dependent variable, which are observed in data and often denoted using the scalar {\displaystyle Y_{i}}Y_{i}.
The error terms, which are not directly observed in data and are often denoted using the scalar {\displaystyle e_{i}}e_{i}.
In various fields of application, different terminologies are used in place of dependent and independent variables.

Most regression models propose that {\displaystyle Y_{i}}Y_{i} is a function of {\displaystyle X_{i}}X_{i} and {\displaystyle \beta }\beta , with {\displaystyle e_{i}}e_{i} representing an additive error term that may stand in for un-modeled determinants of {\displaystyle Y_{i}}Y_{i} or random statistical noise:

{\displaystyle Y_{i}=f(X_{i},\beta )+e_{i}}{\displaystyle Y_{i}=f(X_{i},\beta )+e_{i}}
The researchers' goal is to estimate the function {\displaystyle f(X_{i},\beta )}{\displaystyle f(X_{i},\beta )} that most closely fits the data. To carry out regression analysis, the form of the function {\displaystyle f}f must be specified. Sometimes the form of this function is based on knowledge about the relationship between {\displaystyle Y_{i}}Y_{i} and {\displaystyle X_{i}}X_{i} that does not rely on the data. If no such knowledge is available, a flexible or convenient form for {\displaystyle f}f is chosen. For example, a simple univariate regression may propose {\displaystyle f(X_{i},\beta )=\beta _{0}+\beta _{1}X_{i}}{\displaystyle f(X_{i},\beta )=\beta _{0}+\beta _{1}X_{i}}, suggesting that the researcher believes {\displaystyle Y_{i}=\beta _{0}+\beta _{1}X_{i}+e_{i}}{\displaystyle Y_{i}=\beta _{0}+\beta _{1}X_{i}+e_{i}} to be a reasonable approximation for the statistical process generating the data.

Once researchers determine their preferred statistical model, different forms of regression analysis provide tools to estimate the parameters {\displaystyle \beta }\beta . For example, least squares (including its most common variant, ordinary least squares) finds the value of {\displaystyle \beta }\beta  that minimizes the sum of squared errors {\displaystyle \sum _{i}(Y_{i}-f(X_{i},\beta ))^{2}}{\displaystyle \sum _{i}(Y_{i}-f(X_{i},\beta ))^{2}}. A given regression method will ultimately provide an estimate of {\displaystyle \beta }\beta , usually denoted {\displaystyle {\hat {\beta }}}\hat{\beta} to distinguish the estimate from the true (unknown) parameter value that generated the data. Using this estimate, the researcher can then use the fitted value {\displaystyle {\hat {Y_{i}}}=f(X_{i},{\hat {\beta }})}{\displaystyle {\hat {Y_{i}}}=f(X_{i},{\hat {\beta }})} for prediction or to assess the accuracy of the model in explaining the data. Whether the researcher is intrinsically interested in the estimate {\displaystyle {\hat {\beta }}}\hat{\beta} or the predicted value {\displaystyle {\hat {Y_{i}}}}{\displaystyle {\hat {Y_{i}}}} will depend on context and their goals. As described in ordinary least squares, least squares is widely used because the estimated function {\displaystyle f(X_{i},{\hat {\beta }})}{\displaystyle f(X_{i},{\hat {\beta }})} approximates the conditional expectation {\displaystyle E(Y_{i}|X_{i})}{\displaystyle E(Y_{i}|X_{i})}.[5] However, alternative variants (e.g., least absolute deviations or quantile regression) are useful when researchers want to model other functions {\displaystyle f(X_{i},\beta )}{\displaystyle f(X_{i},\beta )}.

It is important to note that there must be sufficient data to estimate a regression model. For example, suppose that a researcher has access to {\displaystyle N}N rows of data with one dependent and two independent variables: {\displaystyle (Y_{i},X_{1i},X_{2i})}{\displaystyle (Y_{i},X_{1i},X_{2i})}. Suppose further that the researcher wants to estimate a bivariate linear model via least squares: {\displaystyle Y_{i}=\beta _{0}+\beta _{1}X_{1i}+\beta _{2}X_{2i}+e_{i}}{\displaystyle Y_{i}=\beta _{0}+\beta _{1}X_{1i}+\beta _{2}X_{2i}+e_{i}}. If the researcher only has access to {\displaystyle N=2}N=2 data points, then they could find infinitely many combinations {\displaystyle ({\hat {\beta }}_{0},{\hat {\beta }}_{1},{\hat {\beta }}_{2})}{\displaystyle ({\hat {\beta }}_{0},{\hat {\beta }}_{1},{\hat {\beta }}_{2})} that explain the data equally well: any combination can be chosen that satisfies {\displaystyle {\hat {Y}}_{i}={\hat {\beta }}_{0}+{\hat {\beta }}_{1}X_{1i}+{\hat {\beta }}_{2}X_{2i}}{\displaystyle {\hat {Y}}_{i}={\hat {\beta }}_{0}+{\hat {\beta }}_{1}X_{1i}+{\hat {\beta }}_{2}X_{2i}}, all of which lead to {\displaystyle \sum _{i}{\hat {e}}_{i}^{2}=\sum _{i}({\hat {Y}}_{i}-({\hat {\beta }}_{0}+{\hat {\beta }}_{1}X_{1i}+{\hat {\beta }}_{2}X_{2i}))^{2}=0}{\displaystyle \sum _{i}{\hat {e}}_{i}^{2}=\sum _{i}({\hat {Y}}_{i}-({\hat {\beta }}_{0}+{\hat {\beta }}_{1}X_{1i}+{\hat {\beta }}_{2}X_{2i}))^{2}=0} and are therefore valid solutions that minimize the sum of squared residuals. To understand why there are infinitely many options, note that the system of {\displaystyle N=2}N=2 equations is to be solved for 3 unknowns, which makes the system underdetermined. Alternatively, one can visualize infinitely many 3-dimensional planes that go through {\displaystyle N=2}N=2 fixed points.

More generally, to estimate a least squares model with {\displaystyle k}k distinct parameters, one must have {\displaystyle N\geq k}{\displaystyle N\geq k} distinct data points. If {\displaystyle N<k}{\displaystyle N<k}, then there does not generally exist a set of parameters that will perfectly fit the data. The quantity {\displaystyle N-k}N-k appears often in regression analysis, and is referred to as the degrees of freedom in the model. Moreover, to estimate a least squares model, the independent variables {\displaystyle (X_{1i},X_{2i},...,X_{ki})}{\displaystyle (X_{1i},X_{2i},...,X_{ki})} must be linearly independent: one must not be able to reconstruct any of the independent variables by adding and multiplying the remaining independent variables. As discussed in ordinary least squares, this condition ensures that {\displaystyle X^{T}X}{\displaystyle X^{T}X} is an invertible matrix and therefore that a unique solution {\displaystyle {\hat {\beta }}}\hat{\beta} exists.

Underlying assumptions

This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (December 2020) (Learn how and when to remove this template message)
By itself, a regression is simply a calculation using the data. In order to interpret the output of a regression as a meaningful statistical quantity that measures real-world relationships, researchers often rely on a number of classical assumptions. These often include:

The sample is representative of the population at large.
The independent variables are measured with no error.
Deviations from the model have an expected value of zero, conditional on covariates: {\displaystyle E(e_{i}|X_{i})=0}{\displaystyle E(e_{i}|X_{i})=0}
The variance of the residuals {\displaystyle e_{i}}e_{i} is constant across observations (homoscedasticity).
The residuals {\displaystyle e_{i}}e_{i} are uncorrelated with one another. Mathematically, the variance–covariance matrix of the errors is diagonal.
A handful of conditions are sufficient for the least-squares estimator to possess desirable properties: in particular, the Gauss–Markov assumptions imply that the parameter estimates will be unbiased, consistent, and efficient in the class of linear unbiased estimators. Practitioners have developed a variety of methods to maintain some or all of these desirable properties in real-world settings, because these classical assumptions are unlikely to hold exactly. For example, modeling errors-in-variables can lead to reasonable estimates independent variables are measured with errors. Heteroscedasticity-consistent standard errors allow the variance of {\displaystyle e_{i}}e_{i} to change across values of {\displaystyle X_{i}}X_{i}. Correlated errors that exist within subsets of the data or follow specific patterns can be handled using clustered standard errors, geographic weighted regression, or Newey–West standard errors, among other techniques. When rows of data correspond to locations in space, the choice of how to model {\displaystyle e_{i}}e_{i} within geographic units can have important consequences.[17][18] The subfield of econometrics is largely focused on developing techniques that allow researchers to make reasonable real-world conclusions in real-world settings, where classical assumptions do not hold exactly.

Linear regression
Main article: Linear regression
See simple linear regression for a derivation of these formulas and a numerical example
In linear regression, the model specification is that the dependent variable, {\displaystyle y_{i}}y_{i} is a linear combination of the parameters (but need not be linear in the independent variables). For example, in simple linear regression for modeling {\displaystyle n}n data points there is one independent variable: {\displaystyle x_{i}}x_{i}, and two parameters, {\displaystyle \beta _{0}}\beta _{0} and {\displaystyle \beta _{1}}\beta _{1}:

straight line: {\displaystyle y_{i}=\beta _{0}+\beta _{1}x_{i}+\varepsilon _{i},\quad i=1,\dots ,n.\!}y_{i}=\beta _{0}+\beta _{1}x_{i}+\varepsilon _{i},\quad i=1,\dots ,n.\!
In multiple linear regression, there are several independent variables or functions of independent variables.

Adding a term in {\displaystyle x_{i}^{2}}{\displaystyle x_{i}^{2}} to the preceding regression gives:

parabola: {\displaystyle y_{i}=\beta _{0}+\beta _{1}x_{i}+\beta _{2}x_{i}^{2}+\varepsilon _{i},\ i=1,\dots ,n.\!}y_{i}=\beta _{0}+\beta _{1}x_{i}+\beta _{2}x_{i}^{2}+\varepsilon _{i},\ i=1,\dots ,n.\!
This is still linear regression; although the expression on the right hand side is quadratic in the independent variable {\displaystyle x_{i}}x_{i}, it is linear in the parameters {\displaystyle \beta _{0}}\beta _{0}, {\displaystyle \beta _{1}}\beta _{1} and {\displaystyle \beta _{2}.}\beta _{2}.

In both cases, {\displaystyle \varepsilon _{i}}\varepsilon _{i} is an error term and the subscript {\displaystyle i}i indexes a particular observation.

Returning our attention to the straight line case: Given a random sample from the population, we estimate the population parameters and obtain the sample linear regression model:

{\displaystyle {\widehat {y}}_{i}={\widehat {\beta }}_{0}+{\widehat {\beta }}_{1}x_{i}.}{\displaystyle {\widehat {y}}_{i}={\widehat {\beta }}_{0}+{\widehat {\beta }}_{1}x_{i}.}
The residual, {\displaystyle e_{i}=y_{i}-{\widehat {y}}_{i}}e_{i}=y_{i}-{\widehat {y}}_{i}, is the difference between the value of the dependent variable predicted by the model, {\displaystyle {\widehat {y}}_{i}}{\displaystyle {\widehat {y}}_{i}}, and the true value of the dependent variable, {\displaystyle y_{i}}y_{i}. One method of estimation is ordinary least squares. This method obtains parameter estimates that minimize the sum of squared residuals, SSR:

{\displaystyle SSR=\sum _{i=1}^{n}e_{i}^{2}.\,}{\displaystyle SSR=\sum _{i=1}^{n}e_{i}^{2}.\,}
Minimization of this function results in a set of normal equations, a set of simultaneous linear equations in the parameters, which are solved to yield the parameter estimators, {\displaystyle {\widehat {\beta }}_{0},{\widehat {\beta }}_{1}}{\widehat {\beta }}_{0},{\widehat {\beta }}_{1}.


Illustration of linear regression on a data set.
In the case of simple regression, the formulas for the least squares estimates are

{\displaystyle {\widehat {\beta }}_{1}={\frac {\sum (x_{i}-{\bar {x}})(y_{i}-{\bar {y}})}{\sum (x_{i}-{\bar {x}})^{2}}}}{\displaystyle {\widehat {\beta }}_{1}={\frac {\sum (x_{i}-{\bar {x}})(y_{i}-{\bar {y}})}{\sum (x_{i}-{\bar {x}})^{2}}}}
{\displaystyle {\widehat {\beta }}_{0}={\bar {y}}-{\widehat {\beta }}_{1}{\bar {x}}}{\displaystyle {\widehat {\beta }}_{0}={\bar {y}}-{\widehat {\beta }}_{1}{\bar {x}}}
where {\displaystyle {\bar {x}}}{\bar {x}} is the mean (average) of the {\displaystyle x}x values and {\displaystyle {\bar {y}}}{\bar {y}} is the mean of the {\displaystyle y}y values.

Under the assumption that the population error term has a constant variance, the estimate of that variance is given by:

{\displaystyle {\hat {\sigma }}_{\varepsilon }^{2}={\frac {SSR}{n-2}}.\,}{\displaystyle {\hat {\sigma }}_{\varepsilon }^{2}={\frac {SSR}{n-2}}.\,}
This is called the mean square error (MSE) of the regression. The denominator is the sample size reduced by the number of model parameters estimated from the same data, {\displaystyle (n-p)}{\displaystyle (n-p)} for {\displaystyle p}p regressors or {\displaystyle (n-p-1)}{\displaystyle (n-p-1)} if an intercept is used.[19] In this case, {\displaystyle p=1}p=1 so the denominator is {\displaystyle n-2}n-2.

The standard errors of the parameter estimates are given by

{\displaystyle {\hat {\sigma }}_{\beta _{1}}={\hat {\sigma }}_{\varepsilon }{\sqrt {\frac {1}{\sum (x_{i}-{\bar {x}})^{2}}}}}{\displaystyle {\hat {\sigma }}_{\beta _{1}}={\hat {\sigma }}_{\varepsilon }{\sqrt {\frac {1}{\sum (x_{i}-{\bar {x}})^{2}}}}}
{\displaystyle {\hat {\sigma }}_{\beta _{0}}={\hat {\sigma }}_{\varepsilon }{\sqrt {{\frac {1}{n}}+{\frac {{\bar {x}}^{2}}{\sum (x_{i}-{\bar {x}})^{2}}}}}={\hat {\sigma }}_{\beta _{1}}{\sqrt {\frac {\sum x_{i}^{2}}{n}}}.}{\displaystyle {\hat {\sigma }}_{\beta _{0}}={\hat {\sigma }}_{\varepsilon }{\sqrt {{\frac {1}{n}}+{\frac {{\bar {x}}^{2}}{\sum (x_{i}-{\bar {x}})^{2}}}}}={\hat {\sigma }}_{\beta _{1}}{\sqrt {\frac {\sum x_{i}^{2}}{n}}}.}
Under the further assumption that the population error term is normally distributed, the researcher can use these estimated standard errors to create confidence intervals and conduct hypothesis tests about the population parameters.

General linear model
For a derivation, see linear least squares
For a numerical example, see linear regression
In the more general multiple regression model, there are {\displaystyle p}p independent variables:

{\displaystyle y_{i}=\beta _{1}x_{i1}+\beta _{2}x_{i2}+\cdots +\beta _{p}x_{ip}+\varepsilon _{i},\,}y_{i}=\beta _{1}x_{i1}+\beta _{2}x_{i2}+\cdots +\beta _{p}x_{ip}+\varepsilon _{i},\,
where {\displaystyle x_{ij}}x_{ij} is the {\displaystyle i}i-th observation on the {\displaystyle j}j-th independent variable. If the first independent variable takes the value 1 for all {\displaystyle i}i, {\displaystyle x_{i1}=1}{\displaystyle x_{i1}=1}, then {\displaystyle \beta _{1}}\beta _{1} is called the regression intercept.

The least squares parameter estimates are obtained from {\displaystyle p}p normal equations. The residual can be written as

{\displaystyle \varepsilon _{i}=y_{i}-{\hat {\beta }}_{1}x_{i1}-\cdots -{\hat {\beta }}_{p}x_{ip}.}\varepsilon _{i}=y_{i}-{\hat {\beta }}_{1}x_{i1}-\cdots -{\hat {\beta }}_{p}x_{ip}.
The normal equations are

{\displaystyle \sum _{i=1}^{n}\sum _{k=1}^{p}x_{ij}x_{ik}{\hat {\beta }}_{k}=\sum _{i=1}^{n}x_{ij}y_{i},\ j=1,\dots ,p.\,}{\displaystyle \sum _{i=1}^{n}\sum _{k=1}^{p}x_{ij}x_{ik}{\hat {\beta }}_{k}=\sum _{i=1}^{n}x_{ij}y_{i},\ j=1,\dots ,p.\,}
In matrix notation, the normal equations are written as

{\displaystyle \mathbf {(X^{\top }X){\hat {\boldsymbol {\beta }}}={}X^{\top }Y} ,\,}\mathbf {(X^{\top }X){\hat {\boldsymbol {\beta }}}={}X^{\top }Y} ,\,
where the {\displaystyle ij}ij element of {\displaystyle \mathbf {X} }\mathbf {X}  is {\displaystyle x_{ij}}x_{ij}, the {\displaystyle i}i element of the column vector {\displaystyle Y}Y is {\displaystyle y_{i}}y_{i}, and the {\displaystyle j}j element of {\displaystyle {\hat {\boldsymbol {\beta }}}}{\displaystyle {\hat {\boldsymbol {\beta }}}} is {\displaystyle {\hat {\beta }}_{j}}{\hat {\beta }}_{j}. Thus {\displaystyle \mathbf {X} }\mathbf {X}  is {\displaystyle n\times p}n\times p, {\displaystyle Y}Y is {\displaystyle n\times 1}n\times 1, and {\displaystyle {\hat {\boldsymbol {\beta }}}}{\displaystyle {\hat {\boldsymbol {\beta }}}} is {\displaystyle p\times 1}p\times 1. The solution is

{\displaystyle \mathbf {{\hat {\boldsymbol {\beta }}}=(X^{\top }X)^{-1}X^{\top }Y} .\,}{\displaystyle \mathbf {{\hat {\boldsymbol {\beta }}}=(X^{\top }X)^{-1}X^{\top }Y} .\,}
Diagnostics
Main article: Regression diagnostics
See also: Category:Regression diagnostics
Once a regression model has been constructed, it may be important to confirm the goodness of fit of the model and the statistical significance of the estimated parameters. Commonly used checks of goodness of fit include the R-squared, analyses of the pattern of residuals and hypothesis testing. Statistical significance can be checked by an F-test of the overall fit, followed by t-tests of individual parameters.

Interpretations of these diagnostic tests rest heavily on the model's assumptions. Although examination of the residuals can be used to invalidate a model, the results of a t-test or F-test are sometimes more difficult to interpret if the model's assumptions are violated. For example, if the error term does not have a normal distribution, in small samples the estimated parameters will not follow normal distributions and complicate inference. With relatively large samples, however, a central limit theorem can be invoked such that hypothesis testing may proceed using asymptotic approximations.

Limited dependent variables
Limited dependent variables, which are response variables that are categorical variables or are variables constrained to fall only in a certain range, often arise in econometrics.

The response variable may be non-continuous ("limited" to lie on some subset of the real line). For binary (zero or one) variables, if analysis proceeds with least-squares linear regression, the model is called the linear probability model. Nonlinear models for binary dependent variables include the probit and logit model. The multivariate probit model is a standard method of estimating a joint relationship between several binary dependent variables and some independent variables. For categorical variables with more than two values there is the multinomial logit. For ordinal variables with more than two values, there are the ordered logit and ordered probit models. Censored regression models may be used when the dependent variable is only sometimes observed, and Heckman correction type models may be used when the sample is not randomly selected from the population of interest. An alternative to such procedures is linear regression based on polychoric correlation (or polyserial correlations) between the categorical variables. Such procedures differ in the assumptions made about the distribution of the variables in the population. If the variable is positive with low values and represents the repetition of the occurrence of an event, then count models like the Poisson regression or the negative binomial model may be used.

Nonlinear regression
Main article: Nonlinear regression
When the model function is not linear in the parameters, the sum of squares must be minimized by an iterative procedure. This introduces many complications which are summarized in Differences between linear and non-linear least squares.

Interpolation and extrapolation

In the middle, the interpolated straight line represents the best balance between the points above and below this line. The dotted lines represent the two extreme lines. The first curves represent the estimated values. The outer curves represent a prediction for a new measurement.[20]
Regression models predict a value of the Y variable given known values of the X variables. Prediction within the range of values in the dataset used for model-fitting is known informally as interpolation. Prediction outside this range of the data is known as extrapolation. Performing extrapolation relies strongly on the regression assumptions. The further the extrapolation goes outside the data, the more room there is for the model to fail due to differences between the assumptions and the sample data or the true values.

It is generally advised[citation needed] that when performing extrapolation, one should accompany the estimated value of the dependent variable with a prediction interval that represents the uncertainty. Such intervals tend to expand rapidly as the values of the independent variable(s) moved outside the range covered by the observed data.

For such reasons and others, some tend to say that it might be unwise to undertake extrapolation.[21]

However, this does not cover the full set of modeling errors that may be made: in particular, the assumption of a particular form for the relation between Y and X. A properly conducted regression analysis will include an assessment of how well the assumed form is matched by the observed data, but it can only do so within the range of values of the independent variables actually available. This means that any extrapolation is particularly reliant on the assumptions being made about the structural form of the regression relationship. Best-practice advice here[citation needed] is that a linear-in-variables and linear-in-parameters relationship should not be chosen simply for computational convenience, but that all available knowledge should be deployed in constructing a regression model. If this knowledge includes the fact that the dependent variable cannot go outside a certain range of values, this can be made use of in selecting the model – even if the observed dataset has no values particularly near such bounds. The implications of this step of choosing an appropriate functional form for the regression can be great when extrapolation is considered. At a minimum, it can ensure that any extrapolation arising from a fitted model is "realistic" (or in accord with what is known).

Power and sample size calculations
There are no generally agreed methods for relating the number of observations versus the number of independent variables in the model. One rule of thumb conjectured by Good and Hardin is {\displaystyle N=m^{n}}N=m^{n}, where {\displaystyle N}N is the sample size, {\displaystyle n}n is the number of independent variables and {\displaystyle m}m is the number of observations needed to reach the desired precision if the model had only one independent variable.[22] For example, a researcher is building a linear regression model using a dataset that contains 1000 patients ({\displaystyle N}N). If the researcher decides that five observations are needed to precisely define a straight line ({\displaystyle m}m), then the maximum number of independent variables the model can support is 4, because

{\displaystyle {\frac {\log 1000}{\log 5}}=4.29.}{\displaystyle {\frac {\log 1000}{\log 5}}=4.29.}
Other methods
Although the parameters of a regression model are usually estimated using the method of least squares, other methods which have been used include:

Bayesian methods, e.g. Bayesian linear regression
Percentage regression, for situations where reducing percentage errors is deemed more appropriate.[23]
Least absolute deviations, which is more robust in the presence of outliers, leading to quantile regression
Nonparametric regression, requires a large number of observations and is computationally intensive
Scenario optimization, leading to interval predictor models
Distance metric learning, which is learned by the search of a meaningful distance metric in a given input space.[24]
Software
For a more comprehensive list, see List of statistical packages.
All major statistical software packages perform least squares regression analysis and inference. Simple linear regression and multiple regression using least squares can be done in some spreadsheet applications and on some calculators. While many statistical software packages can perform various types of nonparametric and robust regression, these methods are less standardized; different software packages implement different methods, and a method with a given name may be implemented differently in different packages. Specialized regression software has been developed for use in fields such as survey analysis and neuroimaging.

See also
icon	Mathematics portal
Anscombe's quartet
Curve fitting
Estimation theory
Forecasting
Fraction of variance unexplained
Function approximation
Generalized linear models
Kriging (a linear least squares estimation algorithm)
Local regression
Modifiable areal unit problem
Multivariate adaptive regression splines
Multivariate normal distribution
Pearson product-moment correlation coefficient
Quasi-variance
Prediction interval
Regression validation
Robust regression
Segmented regression
Signal processing
Stepwise regression
Trend estimation





High culture
https://en.wikipedia.org/wiki/High_culture#Definition

High culture encompasses the cultural objects of aesthetic value, which a society collectively esteem as exemplary art,[1] and the intellectual works of philosophy, history, and literature that a society consider representative of their culture.[2]
Definition
In popular usage, the term high culture identifies the culture of an upper class (an aristocracy) or of a status class (the intelligentsia); and also identifies a society’s common repository of broad-range knowledge and tradition (e.g. folk culture) that transcends the social-class system of the society. Sociologically, the term high culture is contrasted with the term low culture, the forms of popular culture characteristic of the less-educated social classes, such as the barbarians, the Philistines, and hoi polloi (the masses).[3]

Concept
In European history, high culture was understood as a cultural concept common to the humanities, until the mid-19th century, when Matthew Arnold introduced the term high culture in the book Culture and Anarchy (1869). The Preface defines culture as "the disinterested endeavour after man’s perfection" pursued, obtained, and achieved by effort to "know the best that has been said and thought in the world".[4] Such a literary definition of high culture also includes philosophy. Moreover, the philosophy of aesthetics proposed in high culture is a force for moral and political good. Critically, the term "high culture" is contrasted with the terms "popular culture" and "mass culture".[5]

In Notes Towards the Definition of Culture (1948), T. S. Eliot said that high culture and popular culture are necessary and complementary parts of the culture of a society. In The Uses of Literacy (1957), Richard Hoggart presents the sociologic experience of the working-class man and woman in acquiring the cultural literacy, at university, which facilitates social upward mobility. In the U.S., Harold Bloom and F. R. Leavis pursued the definition of high culture, by way of the Western canon of literature.


T. S. Eliot
Media theorist Steven Johnson writes that, unlike popular culture, "the classics—and soon to be classics—are" in their own right descriptions and explanations of the cultural systems that produced them." He says that "a crucial way in which mass culture differs from high art" is that individual works of mass culture are less interesting than the broader cultural trends which produced them.[6]

History in the West
The high culture of the West originated in the classical-world traditions of intellectual and aesthetic life in Ancient Greece (from c. 8th century BC – AD 147) and Ancient Rome (753 BC – AD 476). In the classical Greco-Roman tradition, the ideal mode of language was published and preserved in works of elevated style (correct grammar, syntax, and diction). Certain forms of language used by authors in valorized epochs were held up in antiquity and the Renaissance as eternal valid models and normative standards of excellence; e.g. the Attic dialect of ancient Greek spoken and written by the playwrights and philosophers of Periclean Athens (fifth century BC); and the form of classical Latin used in the "Golden Age" of Roman culture (c. 70 B.C. – AD 18) represented by such figures as Cicero and Virgil. This form of education was known to the Greeks as παιδεία, which was translated by the Romans into Latin as humanitas [7] since it reflected a form of education aiming at the refinement of human nature, rather than the acquisition of technical or vocational skills. Indeed, the Greco-Roman world tended to see such manual, commercial, and technical labor as subordinate to purely intellectual activities.[8]

From the idea of the "free" man with sufficient leisure to pursue such intellectual and aesthetic refinement, arose the classical distinction between the "liberal" arts which are intellectual and done for their own sake, as against the "servile" or "mechanical" arts which were associated with manual labor and done to earn a living.[9] This implied an association between high culture and the upper classes whose inherited wealth provided such time for intellectual cultivation. The leisured gentleman not weighed down by the necessity of earning a living, was free to devote himself to activities proper to such a "free man"[10] – those deemed to involve true excellence and nobility as opposed to mere utility.

During the Renaissance, the classical intellectual values of the fully rediscovered Græco–Roman culture were the cultural capital of the upper classes (and the aspiring), and aimed at the complete development of human intellectual, aesthetic, and moral faculties. This ideal associated with humanism (a later term derived from the humanities or studia humanitatis), was communicated in Renaissance Italy through institutions such as the Renaissance court schools. Renaissance humanism soon spread through Europe becoming much of the basis of upper class education for centuries. For the socially ambitious man and woman who means to rise in society, The Book of the Courtier (1528), by Baldasare Castiglione, instructs the reader to acquire and possess knowledge of the Græco–Roman Classics, being education integral to the social-persona of the aristocrat. A key contribution of the Renaissance was the elevation of painting and sculpture to a status equal to the liberal arts (hence the visual arts lost for elites any lingering negative association with manual artisanship.) The early Renaissance treatises of Leon Battista Alberti were instrumental in this regard.

The evolution of the concept of high culture initially was defined in educational terms largely as critical study and knowledge of the Græco–Roman arts and humanities which furnished much of the foundation for European cultures and societies. However, aristocratic patronage through most of the modern era was also pivotal to the support and creation of new works of high culture across the range of arts, music, and literature. The subsequent prodigious development of the modern European languages and cultures meant that the modern definition of the term "high culture" embraces not only Greek and Latin texts, but a much broader canon of select literary, philosophical, historical, and scientific books in both ancient and modern languages. Of comparable importance are those works of art and music considered to be of the highest excellence and broadest influence (e.g. the Parthenon, the painting and sculpture of Michelangelo, the music of J. S. Bach, etc). Together these texts and art works constitute the exemplary artifacts representing the high culture of the Western world.

Cultural traditions
In the Western and some East Asian traditions, art that demonstrates the imagination of the artist is accorded the status of high art. In the West this tradition began in Ancient Greece, was reinforced in the Renaissance, and by Romanticism, which eliminated the hierarchy of genres within the fine arts, which was established in the Renaissance. In China there was a distinction between the literati painting by the scholar-officials and the work produced by common artists, working in largely different styles, or the decorative arts such as Chinese porcelain, which were produced by unknown craftsmen working in large factories. In both China and the West the distinction was especially clear in landscape painting, where for centuries imaginary views, produced from the imagination of the artist, were considered superior works.

Cultural capital

Four English lords on ship during their Grand Tour, 1731-32
In socially-stratified Europe and the Americas, a first-hand immersion to the high culture of the West, the Grand Tour of Europe, was a rite of passage that complemented and completed the book education of a gentleman, from the nobility, the aristocracy, and the bourgeoisie, with a worldly perspective of society and civilisation. The post-university tour of the cultural centres of Europe was a social-class benefit of the cultural capital transmitted through the high-status institutions (schools, academies, universities) meant to produce the ideal gentleman of that society.

The European concept of high culture included cultivation of refined etiquette and manners; the education of taste in the fine arts such as sculpture and painting; an appreciation of classical music and opera in its diverse history and myriad forms; knowledge of the humane letters (literae humaniores) represented by the best Greek and Latin authors, and more broadly of the liberal arts traditions (e.g. philosophy, history, drama, rhetoric, and poetry) of Western civilisation, as well as a general acquaintance with important concepts in theology, science, and political thought.

High art

The Metropolitan Museum of Art in Manhattan
Much of high culture consists of the appreciation of what is sometimes called "high art". This term is rather broader than Arnold's definition and besides literature includes music, visual arts (especially painting), and traditional forms of the performing arts (including some cinema). The decorative arts would not generally be considered high art.[11]

The cultural products most often regarded as forming part of high culture are most likely to have been produced during periods of high civilization, for which a large, sophisticated, and wealthy urban-based society provides a coherent and conscious aesthetic framework, and a large-scale milieu of training, and, for the visual arts, sourcing materials and financing work. Such an environment enables artists, as near as possible, to realize their creative potential with as few as possible practical and technical constraints. Although the Western concept of high culture naturally concentrates on the Greco-Roman tradition, and its resumption from the Renaissance onwards, such conditions existed in other places at other times.

Art music
Main article: Art music
Art music (or serious music,[12] classical music, cultivated music, canonical music or erudite music) is an umbrella term used to refer to musical traditions implying advanced structural and theoretical considerations and a written musical tradition.[13] The notion of art music is a frequent and well-defined musicological distinction – musicologist Philip Tagg, for example, refers to art music as one of an "axiomatic triangle consisting of 'folk', 'art' and 'popular' musics". He explains that each of these three is distinguishable from the others according to certain criteria, with high cultural music often performed to an audience whilst folk music would traditionally be more participatory, high culture music is small scale and performed at the local level rather than as a mass produced pop music, it is stored in written form rather than non-written, it's often made for a diverse group of people as opposed to a heterogeneous socioculturally audience, non-industrious high art music spreads in many locales rather than pop music which is possible in industrious economies only, it's made not to compete in the free market place of music.[14] In this regard, "art music" frequently occurs as a contrasting term to "popular music" and to "traditional" or "folk music".[13][15][16]

Art film
Main article: Art film
Art film is the result of filmmaking which is typically a serious, independent film aimed at a niche market rather than a mass market audience.[17] Film critics and film studies scholars typically define an "art film" using a "...canon of films and those formal qualities that mark them as different from mainstream Hollywood films",[18] which includes, among other elements: a social realism style; an emphasis on the authorial expressivity of the director or writer; and a focus on the thoughts and dreams of characters, rather than presenting a clear, goal-driven story. According to the film scholar David Bordwell, "art cinema itself is a film genre, with its own distinct conventions."[19]

Promotion

Dancers from the Ballet Rambert, under the auspices of CEMA, a government programme, perform Peter and The Wolf at an aircraft factory in the English Midlands during World War II.
The term has always been susceptible to attack for elitism, and, in response, many proponents of the concept devoted great efforts to promoting high culture among a wider public than the highly educated bourgeoisie whose natural territory it was supposed to be. There was a drive, beginning in the 19th century, to open museums and concert halls to give the general public access to high culture. Figures such as John Ruskin and Lord Reith of the BBC in Britain, Leon Trotsky and others in Communist Russia, and many others in America and throughout the western world have worked to widen the appeal of elements of high culture such as classical music, art by old masters and the literary classics.

With the widening of access to university education, the effort spread there, and all aspects of high culture became the objects of academic study, which with the exception of the classics had not often been the case until the late 19th century. University liberal arts courses still play an important role in the promotion of the concept of high culture, though often now avoiding the term itself.

Especially in Europe, governments have been prepared to subsidize high culture through the funding of museums, opera and ballet companies, orchestras, cinema, public broadcasting stations such as BBC Radio 3, ARTE, and in other ways. Organizations such as the Arts Council of Great Britain, and in most European countries, whole ministries administer these programs. This includes the subsidy of new works by composers, writers and artists. There are also many private philanthropic sources of funding, which are especially important in the US, where the federally funded Corporation for Public Broadcasting also funds broadcasting. These may be seen as part of the broader concept of official culture, although often a mass audience is not the intended market.

Theories

Ernest Renan (Antoine Samuel Adam-Salomon, 1870s)
The relations between high culture and mass culture are concerns of cultural studies, media studies, critical theory, sociology, Postmodernism and Marxist philosophy. In the essay "The Work of Art in the Age of Mechanical Reproduction" (1936), Walter Benjamin explored the relations of value of the arts (high and mass) when subjected to industrial reproduction. The critical theoreticians Theodor W. Adorno and Antonio Gramsci interpreted the high-art and mass-art cultural relations as an instrument of social control, with which the ruling class maintain their cultural hegemony upon society.[20]

For the Orientalist Ernest Renan and for the rationalist philosopher Ernest Gellner, high culture was conceptually integral to the politics and ideology of nationalism, as a requisite part of a healthy national identity. Gellner expanded the conceptual scope of the phrase in Nations and Nationalism (1983) stating that high art is "a literate, codified culture, which permits context-free communication" among cultures.

In Distinction: A Social Critique of the Judgement of Taste (1979), the sociologist Pierre Bourdieu proposed that æsthetic taste (cultural judgement) is in large part derived from social class. Social class establishes the definitions of high art, e.g. in social etiquette, gastronomy, oenology, military service. In such activities of aesthetic judgement, the ruling-class person uses social codes unknown to middle-class and lower-class persons in the pursuit and practice of activities of taste.

See also
Achieved status
Bildung
Bildungsbürgertum
Culturology
General knowledge
High society
High:
Highbrow
Higher education
Western canon
Non-high:
Middlebrow
Working class culture





Low culture
https://en.wikipedia.org/wiki/Low_culture
"Low culture" is a derogatory term for forms of popular culture that have mass appeal. Its contrast is "high culture", which can also be derogatory. It has been said by culture theorists that both high culture and low culture are subcultures. Popular culture is mass produced by the what has been called by culture analyst Theodor Adorno the "culture industry".[5]

Standards and definitions of low culture
In his book Popular Culture and High Culture, Herbert J. Gans gives a definition of how to identify and create low culture:

Aesthetic standards of low culture stress substance, form being totally subservient, and there is no explicit concern with abstract ideas or even with fictional forms of contemporary social problems and issues. ... Low culture emphasizes morality but limits itself to familial and individual problems and [the] values, which apply to such problems. Low culture is content to depict traditional working class values winning out over the temptation to give into conflicting impulses and behavior patterns.

— Herbert Gans, [6]
Culture as class
Herbert Gans states in his book Popular Culture and High Culture that the different classes of culture are linked correspondingly to socio-economic and educational classes.[7] For any given socio-economic class, there is a culture for that class. Hence the terms high and low culture and the manifestation of those terms as they appeal to their respective constituents.

Culture as class
Herbert Gans states in his book Popular Culture and High Culture that the different classes of culture are linked correspondingly to socio-economic and educational classes.[7] For any given socio-economic class, there is a culture for that class. Hence the terms high and low culture and the manifestation of those terms as they appeal to their respective constituents.

Mass media
Audience
All cultural products (especially high culture) have a certain demographic to which they appeal most. Low culture appeals to very simple and basic human needs plus offers a perceived return to innocence,[8] the escape from real world problems, or the experience of living vicariously through viewing someone else’s life on television.[9]

Stereotypes
Low culture can be formulaic, employing trope conventions, stock characters and character archetypes in a manner that can be perceived as more simplistic, crude, emotive, unbalanced, or blunt compared to high culture's implementations—which may be perceived as more subtle, balanced, or refined and open for interpretations.

See also
Bogan – Unrefined or unsophisticated person (Australian slang) (Australia and New Zealand)
Literature – Written work of art
List of books considered the worst – Wikipedia list article
Bread and circuses – Figure of speech referring to a superficial means of appeasement
Chav – Stereotype of anti-social youth dressed in sportswear (UK)
Cinema – Comprises the technological and commercial institutions of filmmaking
List of films considered the worst – Wikipedia list article
Culture industry – Expression suggesting that popular culture is used to manipulate mass society into passivity
Dres (Poland)
Flaite – Chilean urban lower-class youth (Chile)
Gopnik (Russia)
Skeet (Newfoundland)
Kitsch – Art or other objects that appeal to popular rather than high art tastes
Lowbrow (art movement)
Mass society
Middlebrow
Off-color humor
One-Dimensional Man – 1964 book by Herbert Marcuse
Outsider art – Art created outside the boundaries of official culture by those untrained in the arts
Outsider music – Music genre
List of music considered the worst – Wikipedia list article
Philistinism – Person whose anti-intellectual social attitude undervalues and despises art and beauty, spirituality and intellect
Tribal art, also known as Primitive art – Art made by the indigenous tribes
Prolefeed – Newspeak term in the novel Nineteen Eighty-Four by George Orwell
Raunch culture
Redneck – Derogatory term applied to white person from the rural South of the United States (United States)
Tabloid television
List of television shows considered the worst – Wikipedia list article
Toilet humour
Yellow journalism – Sensationalistic news





Highbrow
https://en.wikipedia.org/wiki/Highbrow
For other uses, see Highbrow (disambiguation).

Philip Melanchthon, engraving by Albrecht Dürer, 1526
Used colloquially as a noun or adjective, "highbrow" is synonymous with intellectual; as an adjective, it also means elite, and generally carries a connotation of high culture. The word draws its metonymy from the pseudoscience of phrenology, and was originally simply a physical descriptor.[1]


Contents
1	Applications
2	Variants
3	Cultural examples
4	See also
5	Notes
6	References
7	Further reading
Applications
"Highbrow" can be applied to music, implying most of the classical music tradition; to literature—i.e., literary fiction and poetry; to films in the arthouse line; and to comedy that requires significant understanding of analogies or references to appreciate. The term highbrow is considered by some (with corresponding labels as 'middlebrow' 'lowbrow') as discriminatory or overly selective;[2] and highbrow is currently distanced from the writer by quotation marks: "We thus focus on the consumption of two generally recognised 'highbrow' genres—opera and classical".[3] The first usage in print of highbrow was recorded in 1884.[4] The term was popularized in 1902 by Will Irvin, a reporter for The Sun of New York City, who adhered to the phrenological notion of more intelligent people having high foreheads.[5]

Variants
The opposite of highbrow is lowbrow, and between them is middlebrow, describing culture that is neither high nor low; as a usage, middlebrow is derogatory, as in Virginia Woolf's unsent letter to the New Statesman, written in the 1930s and published in The Death of the Moth and Other Essays (1942). According to the Oxford English Dictionary, the word middlebrow first appeared in print in 1925, in Punch: "The BBC claims to have discovered a new type—'the middlebrow'. It consists of people who are hoping that some day they will get used to the stuff that they ought to like".[6] The term had previously appeared in hyphenated form in The Nation, on 25 January 1912:

[T]here is an alarmingly wide chasm, I might almost say a vacuum, between the high-brow, who considers reading either as a trade or as a form of intellectual wrestling, and the low-brow, who is merely seeking for gross thrills. It is to be hoped that culture will soon be democratized through some less conventional system of education, giving rise to a new type that might be called the middle-brow, who will consider books as a source of intellectual enjoyment.

It was popularized by the American writer and poet Margaret Widdemer, whose essay "Message and Middlebrow" appeared in the Review of Literature in 1933. The three genres of fiction, as American readers approached them in the 1950s and as obscenity law differentially judged them, are the subject of Ruth Pirsig Wood, Lolita in Peyton Place: Highbrow, Middlebrow, and Lowbrow Novels, 1995.

Cultural examples
Prince Hamlet was considered by Virginia Woolf as a highbrow lacking orientation in the world once he had lost the lowbrow Ophelia with her grip on earthly realities: this, she thought, explained why in general highbrows "honour so wholeheartedly and depend so completely upon those who are called lowbrows".[7]

See also
Ballet
Bildung
Classics
Cultural capital
General knowledge
Pastiche
Socialite
Status–income disequilibrium
Achieved status
Bildungsbürgertum
Egghead
Bluestocking
Low culture





Intellectual
https://en.wikipedia.org/wiki/Intellectual#Persecution_of_intellectuals
An intellectual is a person who engages in critical thinking, research, and reflection to advance discussions of academic subjects. This often involves publishing work for consumption by the general public that adds depth to issues that affect society.

It may also include directly addressing societal issues and proposing solutions for the normative problems of society, making one a public intellectual.[2]:433[3]:1 The public intellectual may create or mediate culture by participating in politics, either to defend a concrete proposition or to denounce an injustice, usually by either rejecting or producing or extending an ideology, and by defending a system of values.[4]:10


Contents
1	Etymological background
1.1	"Man of letters"
1.2	"Intellectual"
2	Historical Uses
3	Public intellectual
3.1	Public engagement
3.2	Public policy
4	Intellectuals as Social Class
4.1	Latin America
4.2	United States
5	Persecution of intellectuals
6	Criticism
7	References
7.1	Bibliography
8	Further reading
9	External links
Etymological background
"Man of letters"
The term "man of letters" derives from the French term belletrist or homme de lettres but is not synonymous with "an academic".[5][6] A "man of letters" was a literate man, able to read and write, as opposed to an illiterate man in a time when literacy was rare and thus highly valued in the upper strata of society. In the 17th and 18th centuries, the term Belletrist(s) came to be applied to the literati: the French participants in—sometimes referred to as "citizens" of—the Republic of Letters, which evolved into the salon, a social institution, usually run by a hostess, meant for the edification, education, and cultural refinement of the participants.

In the late 19th century, when literacy was relatively common in European countries such as the United Kingdom, the "Man of Letters" (littérateur)[7] denotation broadened to mean "specialized", a man who earned his living writing intellectually (not creatively) about literature: the essayist, the journalist, the critic, et al. In the 20th century, such an approach was gradually superseded by the academic method, and the term "Man of Letters" became disused, replaced by the generic term "intellectual", describing the intellectual person.

"Intellectual"
The earliest record of the English noun "intellectual" is found in the nineteenth century, where in 1813, Byron reports that 'I wish I may be well enough to listen to these intellectuals'.[8]:18 Over the course of the nineteenth century, other variants of the already established adjective 'intellectual' as a noun appeared in English and in French, where in the 1890s the noun ('intellectuels') formed from the adjective 'intellectuel' appeared with higher frequency in the literature. [8]:20 Collini writes about this time that "[a]mong this cluster of linguistic experiments there occurred ... the occasional usage of ‘intellectuals’ as a plural noun to refer, usually with a figurative or ironic intent, to a collection of people who might be identified in terms of their intellectual inclinations or pretensions."[8]:20

In early 19th century Britain, Samuel Taylor Coleridge coined the term clerisy, the intellectual class responsible for upholding and maintaining the national culture, the secular equivalent of the Anglican clergy. Likewise, in Tsarist Russia, there arose the intelligentsia (1860s–70s), who were the status class of white-collar workers. For Germany, the theologian Alister McGrath said that "the emergence of a socially alienated, theologically literate, antiestablishment lay intelligentsia is one of the more significant phenomena of the social history of Germany in the 1830s".[9]:53 An intellectual class in Europe was socially important, especially to self-styled intellectuals, whose participation in society's arts, politics, journalism, and education—of either nationalist, internationalist, or ethnic sentiment—constitute "vocation of the intellectual". Moreover, some intellectuals were anti-academic, despite universities (the Academy) being synonymous with intellectualism.[citation needed]


The front page of L'Aurore (13 January 1898) featured Émile Zola's open letter J'Accuse…! asking the French President Félix Faure to resolve the Dreyfus affair
In France, the Dreyfus affair (1894–1906), an identity crisis of anti-semitic nationalism for the French Third Republic (1870–1940), marked the full emergence of the "intellectual in public life", especially Émile Zola, Octave Mirbeau and Anatole France directly addressing the matter of French antisemitism to the public; thenceforward, "intellectual" became common, yet initially derogatory, usage; its French noun usage is attributed to Georges Clemenceau in 1898.[citation needed] Nevertheless, by 1930 the term "intellectual" passed from its earlier pejorative associations and restricted usages to a widely accepted term and it was because of the Dreyfus Affair that the term also acquired generally accepted use in English.[8]:21

In the 20th century, the term intellectual acquired positive connotations of social prestige, derived from possessing intellect and intelligence, especially when the intellectual's activities exerted positive consequences in the public sphere and so increased the intellectual understanding of the public, by means of moral responsibility, altruism, and solidarity, without resorting to the manipulations of demagoguery, paternalism and incivility (condescension).[10]:169 The sociologist Frank Furedi said that "Intellectuals are not defined according to the jobs they do, but [by] the manner in which they act, the way they see themselves, and the [social and political] values that they uphold.[11][page needed]

According to Thomas Sowell, as a descriptive term of person, personality, and profession, the word intellectual identifies three traits:

Educated; erudition for developing theories;
Productive; creates cultural capital in the fields of philosophy, literary criticism, and sociology, law, medicine, and science, etc.; and
Artistic; creates art in literature, music, painting, sculpture, etc.[12][page needed]
Historical Uses
In Latin language, at least starting from the Carolingian Empire, intellectuals could be called litterati, a term which is sometimes applied today.[citation needed]

The word intellectual is found in Indian scripture Mahabharata in the Bachelorette meeting (Swayambara Sava) of Draupadi. Immediately after Arjuna and Raja-Maharaja (kings-emperors) came to the meeting, Nipuna Buddhijibina (perfect intellectuals) appeared at the meeting.[citation needed]

In Imperial China in the period from 206 BC until AD 1912, the intellectuals were the Scholar-officials ("Scholar-gentlemen"), who were civil servants appointed by the Emperor of China to perform the tasks of daily governance. Such civil servants earned academic degrees by means of imperial examination, and also were skilled calligraphers, and knew Confucian philosophy. Historian Wing-Tsit Chan concludes that:

Generally speaking, the record of these scholar-gentlemen has been a worthy one. It was good enough to be praised and imitated in 18th century Europe. Nevertheless, it has given China a tremendous handicap in their transition from government by men to government by law, and personal considerations in Chinese government have been a curse.[13]:22

In Joseon Korea (1392–1910), the intellectuals were the literati, who knew how to read and write, and had been designated, as the chungin (the "middle people"), in accordance with the Confucian system. Socially, they constituted the petite bourgeoisie, composed of scholar-bureaucrats (scholars, professionals, and technicians) who administered the dynastic rule of the Joseon dynasty.[14]:73–4

Public intellectual
External video
video icon "Role of Intellectuals in Public Life", panel featuring Michael Ignatieff, Russell Jacoby, Roger Kimball, Susie Linfield, Alex Star, Ellen Willis and Alan Wolfe, March 1, 2001, C-SPAN
The term public intellectual describes the intellectual participating in the public-affairs discourse of society, in addition to an academic career.[15] Regardless of the academic field or the professional expertise, the public intellectual addresses and responds to the normative problems of society, and, as such, is expected to be an impartial critic who can "rise above the partial preoccupation of one's own profession—and engage with the global issues of truth, judgment, and taste of the time".[16][citation needed][11]:32 In Representations of the Intellectual (1994), Edward Saïd said that the "true intellectual is, therefore, always an outsider, living in self-imposed exile, and on the margins of society".[3]:1–2 Public intellectuals usually arise from the educated élite of a society; although the North American usage of the term "intellectual" includes the university academics.[17][citation needed] The difference between "intellectual" and "academic" is participation in the realm of public affairs.[18][citation needed]

Jürgen Habermas' Structural Transformation of Public Sphere (1963) made significant contribution to the notion of public intellectual by historically and conceptually delineating the idea of private and public. Controversial, in the same year, was Ralf Dahrendorf's definition: “As the court-jesters of modern society, all intellectuals have the duty to doubt everything that is obvious, to make relative all authority, to ask all those questions that no one else dares to ask".[19]:51

An intellectual usually is associated with an ideology or with a philosophy.[20][page needed] The Czech intellectual Václav Havel said that politics and intellectuals can be linked, but that moral responsibility for the intellectual's ideas, even when advocated by a politician, remains with the intellectual. Therefore, it is best to avoid utopian intellectuals who offer 'universal insights' to resolve the problems of political economy with public policies that might harm and that have harmed civil society; that intellectuals be mindful of the social and cultural ties created with their words, insights and ideas; and should be heard as social critics of politics and power.[3]:13

Public engagement
The determining factor for a Thinker (historian, philosopher, scientist, writer, artist) to be considered a public intellectual is the degree to which he or she is implicated and engaged with the vital reality of the contemporary world, i.e. participation in the public affairs of society.[citation needed] Consequently, being designated as a public intellectual is determined by the degree of influence of the designator's motivations, opinions, and options of action (social, political, ideological), and by affinity with the given thinker.

Public policy
In the matters of public policy, the public intellectual connects scholarly research to the practical matters of solving societal problems. The British sociologist Michael Burawoy, an exponent of public sociology, said that professional sociology has failed, by giving insufficient attention to resolving social problems, and that a dialogue between the academic and the layman would bridge the gap.[21][page needed] An example is how Chilean intellectuals worked to reestablish democracy within the right-wing, neoliberal governments of the Military dictatorship of Chile (1973–90), the Pinochet régime allowed professional opportunities for some liberal and left-wing social scientists to work as politicians and as consultants in effort to realize the theoretical economics of the Chicago Boys, but their access to power was contingent upon political pragmatism, abandoning the political neutrality of the academic intellectual.[22][citation needed]

In The Sociological Imagination (1959), C. Wright Mills said that academics had become ill-equipped for participating in public discourse, and that journalists usually are "more politically alert and knowledgeable than sociologists, economists, and especially ... political scientists".[23]:99 That, because the universities of the U.S. are bureaucratic, private businesses, they "do not teach critical reasoning to the student", who then does not "how to gauge what is going on in the general struggle for power in modern society".[23][page needed] Likewise, Richard Rorty criticized the participation of intellectuals in public discourse as an example of the "civic irresponsibility of intellect, especially academic intellect".[24]:142

External video
video icon Booknotes interview with Posner on Public Intellectuals: A Study of Decline, June 2, 2002, C-SPAN
The American legal scholar Richard Posner said that the participation of academic public intellectuals in the public life of society is characterized by logically untidy and politically biased statements of the kind that would be unacceptable to academia. That there are few ideologically and politically independent public intellectuals, and disapproves that public intellectuals limit themselves to practical matters of public policy, and not with values or public philosophy, or public ethics, or public theology, not with matters of moral and spiritual outrage.

Intellectuals as Social Class
Main article: Intelligentsia
Socially, intellectuals constitute the intelligentsia, a status class organised either by ideology (conservative, fascist, socialist, liberal, reactionary, revolutionary, democratic, communist intellectuals etc.), or by nationality (American intellectuals, French intellectuals, Ibero–American intellectuals, et al.). The term intelligentsiya originated from the of Tsarist Russia (c. 1860s–1870s), where it denotes the social stratum of those possessing intellectual formation (schooling, education), and who were Russian society's counterpart to the German Bildungsbürgertum and to the French bourgeoisie éclairée, the enlightened middle classes of those realms.[10]:169–71

In Marxist philosophy, the social class function of the intellectuals (the intelligentsia) is to be the source of progressive ideas for the transformation of society: providing advice and counsel to the political leaders, interpreting the country's politics to the mass of the population (urban workers and peasants). In the pamphlet What Is to Be Done? (1902), Vladimir Lenin (1870–1924) said that vanguard-party revolution required the participation of the intellectuals to explain the complexities of socialist ideology to the uneducated proletariat and the urban industrial workers in order to integrate them to the revolution because "the history of all countries shows that the working class, exclusively by its own efforts, is able to develop only trade-union consciousness" and will settle for the limited, socio-economic gains so achieved. In Russia as in Continental Europe, socialist theory was the product of the "educated representatives of the propertied classes", of "revolutionary socialist intellectuals", such as were Karl Marx and Friedrich Engels.[25]:31,137–8

The Hungarian Marxist philosopher György Lukács (1885–1971) identified the intelligentsia as the privileged social class who provide revolutionary leadership. By means of intelligible and accessible interpretation, the intellectuals explain to the workers and peasants the "Who?", the "How?" and the "Why?" of the social, economic and political status quo—the ideological totality of society—and its practical, revolutionary application to the transformation of their society.

The Italian communist theoretician Antonio Gramsci (1891–1937) developed Karl Marx's conception of the intelligentsia to include political leadership in the public sphere. That because "all knowledge is existentially-based", the intellectuals, who create and preserve knowledge, are "spokesmen for different social groups, and articulate particular social interests". That intellectuals occur in each social class and throughout the right-wing, the centre and the left-wing of the political spectrum and that as a social class the "intellectuals view themselves as autonomous from the ruling class" of their society.

Addressing their role as a social class, Jean-Paul Sartre said that intellectuals are the moral conscience of their age; that their moral and ethical responsibilities are to observe the socio-political moment, and to freely speak to their society, in accordance with their consciences.[26][citation needed]:119 Like Sartre and Noam Chomsky, public intellectuals usually are polymaths, knowledgeable of the international order of the world, the political and economic organization of contemporary society, the institutions and laws that regulate the lives of the layman citizen, the educational systems, and the private networks of mass communication media that control the broadcasting of information to the public.[27][citation needed]:xii

The American historian Norman Stone said that the intellectual social class misunderstand the reality of society and so are doomed to the errors of logical fallacy, ideological stupidity, and poor planning hampered by ideology.[3][citation needed] In her memoirs, the Conservative politician Margaret Thatcher said that the anti-monarchical French Revolution (1789–1799) was "a utopian attempt to overthrow a traditional order [...] in the name of abstract ideas, formulated by vain intellectuals".[28]:753 Yet, as Prime Minister she asked Britain's academics to help her government resolve the social problems of British society—whilst she retained the populist opinion of "The Intellectual" as being a man of un-British character, a thinker, not a doer. Thatcher's anti-intellectualist perspective was shared by the mass media, especially The Spectator and The Sunday Telegraph newspapers, whose reportage documented a "lack of intellectuals" in Britain.[3][page needed][8]:127

Latin America
The American academic Peter H. Smith describes the intellectuals of Latin America as people from an identifiable social class, who have been conditioned by that common experience and thus are inclined to share a set of common assumptions (values and ethics); that ninety-four per cent of intellectuals come either from the middle class or from the upper class and that only six per cent come from the working class.[citation needed] Philosopher Steven Fuller said that because cultural capital confers power and social status as a status group they must be autonomous in order to be credible as intellectuals:

It is relatively easy to demonstrate autonomy, if you come from a wealthy or [an] aristocratic background. You simply need to disown your status and champion the poor and [the] downtrodden [...]. [A]utonomy is much harder to demonstrate if you come from a poor or proletarian background [...], [thus] calls to join the wealthy in common cause appear to betray one's class origins.[29]:113–4

United States

The Congregational theologian Edwards Amasa Park proposed segregating the intellectuals from the public sphere of society in the United States
Addressing the societal place, roles and functions of intellectuals in 19th century American society, the Congregational theologian Edwards Amasa Park said: "We do wrong to our own minds, when we carry out scientific difficulties down to the arena of popular dissension".[24]:12 That for the stability of society (social, economic and political) it is necessary "to separate the serious, technical role of professionals from their responsibility [for] supplying usable philosophies for the general public". Thus, operated Socrate's cultural dichotomy of public-knowledge and private-knowledge, of "civic culture" and "professional culture", the social constructs that describe and establish the intellectual sphere of life as separate and apart from the civic sphere of life.[24]:12

In the Unites States, the intellectual status class are demographically characterized as people who hold liberal-to-leftist political perspectives about guns-or-butter fiscal policy.[30] In "The Intellectuals and Socialism" (1949), the British economist Friedrich Hayek said that "journalists, teachers, ministers, lecturers, publicists, radio commentators, writers of fiction, cartoonists, and artists" are the intellectual social class whose function is to communicate the complex and specialized knowledge of the scientist to the general public. That in the 20th century, the intellectuals were attracted to socialism and to social democracy because the socialists offered "broad visions; the spacious comprehension of the social order, as a whole, which a planned system promises" and that such broad-vision philosophies "succeeded in inspiring the imagination of the intellectuals" to change and improve their societies.[31][citation needed] According to Hayek, intellectuals disproportionately support socialism for idealistic and utopian reasons that cannot be realized in practical terms.[32]

Persecution of intellectuals
Totalitarian governments manipulate and apply anti-intellectualism to repress political dissent. During the Spanish Civil War (1936–1939) and the following dictatorship (1939–1975) of General Francisco Franco, the reactionary repression of the White Terror (1936–1945) was notably anti-intellectual, with most of the 200,000 civilians killed being the Spanish intelligentsia, the politically active teachers and academics, artists and writers of the deposed Second Spanish Republic (1931–1939).[citation needed] Intellectuals were also targeted by the Nazis, the Communist regime in China, the Khmer Rouge, the Young Turks, and in conflicts in Bangladesh, the former Yugoslavia, and Poland.

Criticism

The economist Milton Friedman identified the intelligentsia and the business class as interfering with capitalism.
The French philosopher Jean-Paul Sartre noted that "the Intellectual is someone who meddles in what does not concern them. (L'intellectuel est quelqu'un qui se mêle de ce qui ne le regarde pas.)"[33]:588–9. Noam Chomsky expressed the view that "intellectuals are specialists in defamation, they are basically political commissars, they are the ideological administrators, the most threatened by dissidence."[citation needed]

In "An Interview with Milton Friedman" (1974), the American economist Milton Friedman said that businessmen and the intellectuals are enemies of capitalism. The intellectuals because most believed in socialism while the businessman expected economic privileges. In his essay "Why do intellectuals oppose capitalism?" (1998), the American libertarian philosopher Robert Nozick of the Cato Institute argued that intellectuals become embittered leftists because their academic skills, much rewarded at school and at university, are undervalued and underpaid in the capitalist market economy. Thus, the intellectuals turned against capitalism—despite enjoying a more economically and financially comfortable life in a capitalist society than they might enjoy in either socialism or communism.[34]

The economist Thomas Sowell said in his book Intellectuals and Society (2010) that lacking disincentives in professional life, the intellectual (producer of knowledge, not material goods) tends to speak outside his or her area of expertise and expects social and professional benefits from the halo effect, derived from possessing professional expertise. In relation to other professions, the public intellectual is socially detached from the negative and unintended consequences of public policy derived from his or her ideas. As such, the philosopher and mathematician Bertrand Russell (1872–1970) advised the British government against national rearmament in the years before World War I (1914–1918) while the German Empire prepared for war. Yet, the post-war intellectual reputation of Russell remained almost immaculate and his opinions respected by the general public because of the halo effect.[35]:218–276







Anti-intellectualism
https://en.wikipedia.org/wiki/Anti-intellectualism

Cult of Ignorance
      There is a cult of ignorance in the United States, and there has always been. The strain of anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that "my ignorance is just as good as your knowledge".
Isaac Asimov, 1980[24]


In Anti-intellectualism in American Life (1963) the historian Richard Hofstadter said that anti-intellectualism is a social-class response, by the middle-class "mob", against the privileges of the political elites.[21] As the middle class developed political power, they exercised their belief that the ideal candidate to office was the "self-made man", not the well-educated man born to wealth. The self-made man, from the middle class, could be trusted to act in the best interest of his fellow citizens.[22] In Americans and Chinese: Passages to Differences (1980), Francis Hsu said that American egalitarianism is stronger in the U.S. than in Europe, e.g. in England,[23]


Anti-intellectualism has been defined as, "A philosophic doctrine that assigns reason or intellect a subordinate place in the scheme of things and questions or denies the ability of the intellect to comprehend the true nature of things ... Anything that celebrates feeling over thought, intuition over logic, action over contemplation, results over means, experience over tradition and order tends toward anti-intellectualism."[1]

Totalitarian governments manipulate and apply anti-intellectualism to repress political dissent.[2] During the Spanish Civil War (1936–1939) and the following dictatorship (1939–1975) of General Francisco Franco, the reactionary repression of the White Terror (1936–1945) was notably anti-intellectual, with most of the 200,000 civilians killed being the Spanish intelligentsia, the politically active teachers and academics, artists and writers of the deposed Second Spanish Republic (1931–1939).[3]


Ideological anti-intellectualism

The cultural re-organization of Cambodian society by the dictator Pol Pot created a government which tried to remake its society anti-intellectual in what became known as Democratic Kampuchea (1975–1979), a de-industrialized, agricultural country.

In the Night of the Long Batons (29 July 1966), the federal police physically purged politically incorrect academics who opposed the right-wing military dictatorship of Juan Carlos Onganía (1966–1970) in Argentina from five faculties of the University of Buenos Aires
In the 20th century, societies systematically removed intellectuals from power, to expediently end public political dissent. During the Cold War (1945–1991), the Czechoslovak Socialist Republic (1948–1990) ostracized the philosopher Václav Havel as a politically unreliable man unworthy of ordinary Czechs' trust; the post-communist Velvet Revolution (17 November – 29 December 1989) elected Havel president for ten years.[4] Ideologically-extreme dictatorships who mean to recreate a society such as the Khmer Rouge rule of Cambodia (1975–1979) pre-emptively killed potential political opponents, especially the educated middle-class and the intelligentsia. To realize the Year Zero of Cambodian history, Khmer Rouge social engineering restructured the economy by de-industrialization and assassinated non-communist Cambodians suspected of "involvement in free-market activities" such as the urban professionals of society (physicians, attorneys, engineers, et al.) and people with political connections to foreign governments. The doctrine of Pol Pot identified the farmers as the true proletariat of Cambodia and the true representatives of the working class entitled to hold government power, hence the anti-intellectual purges.

In 1966, the anti-communist Argentine military dictatorship of General Juan Carlos Onganía (1966–1970) intervened at the University of Buenos Aires with the Night of the Long Batons to physically dislodge politically dangerous academics from five university faculties. That expulsion to the exile of the academic intelligentsia became a national brain drain upon the society and economy of Argentina.[5][6] In opposition to the military repression of free speech, biochemist César Milstein said ironically: "Our country would be put in order, as soon as all the intellectuals who were meddling in the region were expelled".

However, anti-intellectualism is not always violent. Any social group can act anti-intellectually by discounting the humanist value to their society of intellect, intellectualism, and higher education.

Academic anti-intellectualism
United States
In The Campus War (1971), the philosopher John Searle said,

[T]he two most salient traits of the radical movement are its anti-intellectualism and its hostility to the university as an institution. ... Intellectuals, by definition, are people who take ideas seriously for their own sake. Whether or not a theory is true or false is important to them, independently of any practical applications it may have. [Intellectuals] have, as Richard Hofstadter has pointed out, an attitude to ideas that is at once playful and pious. But, in the radical movement, the intellectual ideal of knowledge for its own sake is rejected. Knowledge is seen as valuable only as a basis for action, and it is not even very valuable there. Far more important than what one knows is how one feels.[7]

In Social Sciences as Sorcery (1972), the sociologist Stanislav Andreski advised laymen to distrust the intellectuals' appeals to authority when they make questionable claims about resolving the problems of their society: "Do not be impressed by the imprint of a famous publishing house, or the volume of an author's publications. ... Remember that the publishers want to keep the printing presses busy, and do not object to nonsense if it can be sold."[8]

In Science and Relativism: Some Key Controversies in the Philosophy of Science (1990), the epistemologist Larry Laudan said that the prevailing type of philosophy taught at universities in the U.S. (Postmodernism and Poststructuralism) is anti-intellectual, because "the displacement of the idea that facts and evidence matter, by the idea that everything boils down to subjective interests and perspectives is—second only to American political campaigns—the most prominent and pernicious manifestation of anti-intellectualism in our time."[9]

Distrust of intellectuals
In the U.S., the American conservative[10] economist Thomas Sowell argued for distinctions between unreasonable and reasonable wariness of intellectuals in their influence upon the institutions of a society. In defining intellectuals as "people whose occupations deal primarily with ideas", they are different from people whose work is the practical application of ideas. That cause for layman mistrust lies in the intellectuals' incompetence outside their fields of expertise. Although possessed of great working knowledge in their specialist fields, when compared to other professions and occupations, the intellectuals of society face little discouragement against speaking authoritatively beyond their field of formal expertise, and thus are unlikely to face responsibility for the social and practical consequences of their errors. Hence, a physician is judged competent by the effective treatment of the sickness of a patient, yet might face a medical malpractice lawsuit should the treatment harm the patient. In contrast, a tenured university professor is unlikely to be judged competent or incompetent by the effectiveness of his or her intellectualism (ideas), and thus not face responsibility for the social and practical consequences of the implementation of the ideas.

In the book Intellectuals and Society (2009), Sowell said:[11]

By encouraging, or even requiring, students to take stands where they have neither the knowledge nor the intellectual training to seriously examine complex issues, teachers promote the expression of unsubstantiated opinions, the venting of uninformed emotions, and the habit of acting on those opinions and emotions, while ignoring or dismissing opposing views, without having either the intellectual equipment or the personal experience to weigh one view against another in any serious way.

Hence, school teachers are part of the intelligentsia who recruit children in elementary school and teach them politics—to advocate for or to advocate against public policy—as part of community-service projects; which political experience later assists them in earning admission to a university. In that manner, the intellectuals of a society intervene and participate in social arenas of which they might not possess expert knowledge, and so unduly influence the formulation and realization of public policy. In the event, teaching political advocacy in elementary school encourages students to formulate opinions "without any intellectual training or prior knowledge of those issues, making constraints against falsity few or non-existent."[12]

In Britain, the anti-intellectualism of the writer Paul Johnson derived from his close examination of twentieth-century history, which revealed to him that intellectuals have continually championed disastrous public policies for social welfare and public education, and warned the layman public to "beware [the] intellectuals. Not merely should they be kept well away from the levers of power, they should also be objects of suspicion when they seek to offer collective advice."[13] In that vein, "In the Land of the Rococo Marxists" (2000), the American writer Tom Wolfe characterized the intellectual as "a person knowledgeable in one field, who speaks out only in others."[14] In 2000, British publisher Imprint Academic published Dumbing Down, a compilation of essays edited by Ivo Mosley, grandson of the British fascist Oswald Mosley, which included essays on a perceived widespread anti-intellectualism by Jaron Lanier, Ravi Shankar, Robert Brustein, Michael Oakshott among others.[15]

17th century

In the book The Powring Out of the Seven Vials (1642), the Protestant minister John Cotton equated education and intellectualism with atheist service to the supernatural
In The Powring Out of the Seven Vials (1642), the Puritan John Cotton demonized intellectual men and women by noting that "the more learned and witty you bee, the more fit to act for Satan will you bee. ... Take off the fond doting ... upon the learning of the Jesuits, and the glorie of the Episcopacy, and the brave estates of the Prelates. I say bee not deceived by these pompes, empty shewes, and faire representations of goodly condition before the eyes of flesh and blood, bee not taken with the applause of these persons".[16] Yet, not every Puritan concurred with Cotton's religious contempt for secular education, such as John Harvard who founded a university.

In The Quest for Cosmic Justice (2001), the economist Thomas Sowell said that anti-intellectualism in the U.S. began in the early Colonial era, as an understandable wariness of the educated upper classes, because the country mostly was built by people who had fled political and religious persecution by the social system of the educated upper classes. Moreover, there were few intellectuals who possessed the practical hands-on skills required to survive in the New World of North America, which absence from society led to a deep-rooted, populist suspicion of men and women who specialize in "verbal virtuosity", rather than tangible, measurable products and services:[17]

From its colonial beginnings, American society was a "decapitated" society—largely lacking the top-most social layers of European society. The highest elites and the titled aristocracies had little reason to risk their lives crossing the Atlantic, and then face the perils of pioneering. Most of the white population of colonial America arrived as indentured servants and the black population as slaves. Later waves of immigrants were disproportionately peasants and proletarians, even when they came from Western Europe ... The rise of American society to pre-eminence, as an economic, political, and military power, was thus the triumph of the common man, and a slap across the face to the presumptions of the arrogant, whether an elite of blood or books.

19th century
In U.S. history, the advocacy and acceptability of anti-intellectualism varied, because in the 19th century most people lived a rural life of manual labor and agricultural work, therefore, an academic education in the Greco–Roman classics, was perceived as of impractical value; the bookish man is unprofitable. Yet, in general, Americans were a literate people who read Shakespeare for intellectual pleasure and the Christian Bible for emotional succor; thus, the ideal American Man was a literate and technically-skilled man who was successful in his trade, ergo a productive member of society.[18] Culturally, the ideal American was the self-made man whose knowledge derived from life-experience, not an intellectual man whose knowledge of the real world derived from books, formal education, and academic study; thus, the justified anti-intellectualism reported in The New Purchase, or Seven and a Half Years in the Far West (1843), the Rev. Bayard R. Hall, A.M., said about frontier Indiana:[16]

We always preferred an ignorant, bad man to a talented one, and, hence, attempts were usually made to ruin the moral character of a smart candidate; since, unhappily, smartness and wickedness were supposed to be generally coupled, and [like-wise] incompetence and goodness.

Yet, in the society of the U.S. the "real-life" redemption of the egghead intellectual was possible if he embraced the mores of mainstream society; thus, in the fiction of O. Henry, a character noted that once an East Coast university graduate "gets over" his intellectual vanity—he no longer thinks himself better than other men—he makes just as good a cowboy as any other young man, despite his common-man counterpart being the slow-witted naïf of good heart, a pop culture stereotype from stage shows.

20th–21st centuries
Political polarization in the U.S. has long favored the use of anti-intellectualism by each political party (Republican and Democratic) to undermine the credibility of the other party with the middle class.[19] In 1912, the New Jersey governor, Woodrow Wilson, described the battle:[20]

What I fear is a government of experts. God forbid that, in a democratic country, we should resign the task and give the government over to experts. What are we for if we are to be scientifically taken care of by a small number of gentlemen who are the only men who understand the job?

In Anti-intellectualism in American Life (1963) the historian Richard Hofstadter said that anti-intellectualism is a social-class response, by the middle-class "mob", against the privileges of the political elites.[21] As the middle class developed political power, they exercised their belief that the ideal candidate to office was the "self-made man", not the well-educated man born to wealth. The self-made man, from the middle class, could be trusted to act in the best interest of his fellow citizens.[22] In Americans and Chinese: Passages to Differences (1980), Francis Hsu said that American egalitarianism is stronger in the U.S. than in Europe, e.g. in England,[23]

English individualism developed hand in hand with legal equality. American self-reliance, on the other hand, has been inseparable from an insistence upon economic and social as well as political equality. The result is that a qualified individualism, with a qualified equality, has prevailed in England, but what has been considered the inalienable right of every American is unrestricted self-reliance and, at least ideally, unrestricted equality. The English, therefore, tend to respect class-based distinctions in birth, wealth, status, manners, and speech, while Americans resent them.

Cult of Ignorance
      There is a cult of ignorance in the United States, and there has always been. The strain of anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that "my ignorance is just as good as your knowledge".
Isaac Asimov, 1980[24]
Such social resentment characterises contemporary political discussions about the socio-political functions of mass-communication media and science; that is, scientific facts, generally accepted by educated people throughout the world, are misrepresented as opinions in the U.S., specifically about climate science and global warming.[25]

Miami University anthropology professor Homayun Sidky has argued that 21st-century anti-scientific and pseudoscientific approaches to knowledge, particularly in the United States, are rooted in a postmodernist "decades-long academic assault on science:" "Many of those indoctrinated in postmodern anti-science went on to become conservative political and religious leaders, policymakers, journalists, journal editors, judges, lawyers, and members of city councils and school boards. Sadly, they forgot the lofty ideals of their teachers, except that science is bogus."[26]

In 2017, a Pew Research Center poll revealed that a majority of American Republicans thought colleges and universities have a negative impact on the United States, and in 2019, academics Adam Waters and E.J. Dionne stated that U.S. President Donald Trump "campaigned for the presidency and continues to govern as a man who is anti-intellectual, as well as anti-fact and anti-truth."[27][28] In 2020, Trump signed an executive order banning anti-racism bias trainings that use Critical Race Theory from offices of federal agencies, grant programs, and federal contractors [29][30] as part of a larger strategy to combat a perceived progressive academic bias, like emphases on the political legacy of American slavery, with "patriotic education" instead.[31][32]

An uneducated society
About 25% of 2,200 Americans surveyed believe in a geocentric solar system (that the sun orbits the earth),[33] and in 2014 35% of Americans could not name any branch of the U.S. government.[34] The U.S. is ranked 52nd out of 139 nations in quality of educational instruction and 12th in the number of university-educated adults.[35] At universities, student anti-intellectualism has resulted in the social acceptability of cheating on schoolwork, especially in the business schools, a manifestation of ethically expedient cognitive dissonance rather than of academic critical thinking.[36]

The American Council on Science and Health said that denialism of the facts of climate science and of climate change misrepresents verifiable data and information as political opinion.[37] Anti-intellectualism puts scientists in the public view and forces them to align with either a liberal or a conservative political stance. Moreover, 53% of Republican U.S. Representatives and 74% of Republican Senators deny the scientific facts of the causes of climate change.[38]

In the rural U.S., anti-intellectualism is an essential feature of the religious culture of Christian fundamentalism.[39] Some Protestant churches and the Roman Catholic Church have directly published their collective support for political action to counter climate change, whereas Southern Baptists and Evangelicals have denounced belief in both evolution and climate change as a sin, and have dismissed scientists as intellectuals attempting to create "Neo-nature paganism".[40] People of fundamentalist religious belief tend to report not seeing evidence of global warming.[41]

Corporate mass media
The reportage of corporate mass-communications media appealed to societal anti-intellectualism by misrepresenting university life in the U.S., where the students' pursuit of book learning (intellectualism) was secondary to the after-school social life. That the reactionary ideology communicated in mass-media reportage misrepresented the liberal political activism and social protest of students as frivolous, social activities thematically unrelated to the academic curriculum, which is the purpose of attending university.[42] In Anti-intellectualism in American Media (2004), Dane Claussen identified the contemporary anti-intellectualist bent of manufactured consent that is inherent to commodified information:[43][44]

The effects of mass media on attitudes toward intellect are certainly multiple and ambiguous. On the one hand, mass communications greatly expand the sheer volume of information available for public consumption. On the other hand, much of this information comes pre-interpreted for easy digestion and laden with hidden assumption, saving consumers the work of having to interpret it for themselves. Commodified information naturally tends to reflect the assumptions and interests of those who produce it, and its producers are not driven entirely by a passion to promote critical reflection.

The editorial perspective of the corporate mass-media misrepresented intellectualism as a profession that is separate and apart from the jobs and occupations of regular folk. In presenting academically successful students as social failures, an undesirable social status for the average young man and young woman, corporate media established to the U.S. mainstream their opinion that the intellectualism of book-learning is a form of mental deviancy, thus, most people would shun intellectuals as friends, lest they risk social ridicule and ostracism.[45] Hence, the popular acceptance of anti-intellectualism lead to populist rejection of the intelligentsia for resolving the problems of society.[46] Moreover, in the book Inventing the Egghead: The Battle over Brainpower in American Culture (2013), Aaron Lecklider indicated that the contemporary ideological dismissal of the intelligentsia derived from the corporate media's reactionary misrepresentations of intellectual men and women as lacking the common-sense of regular folk.[47]

In Europe
Communism
In the first decade after the Russian Revolution of 1917, the Bolsheviks suspected the Tsarist intelligentsia as having the potential to betray the proletariat. Thus, the initial Soviet government consisted of men and women without much formal education. Moreover, the deposed propertied classes were termed Lishentsy ("the disenfranchised"), whose children were excluded from education. Eventually, some 200 Tsarist intellectuals such as writers, philosophers, scientists and engineers were deported to Germany on philosophers' ships in 1922 while others were deported to Latvia and Turkey in 1923.

During the revolutionary period, the pragmatic Bolsheviks employed "bourgeois experts" to manage the economy, industry, and agriculture and so learn from them. After the Russian Civil War (1917–1922), to achieve socialism the Soviet Union (1922–91) emphasized literacy and education in service to modernizing the country via an educated working class intelligentsia rather than an Ivory Tower intelligentsia. During the 1930s and 1950s, Joseph Stalin replaced Vladimir Lenin's intelligentsia with an intelligentsia that was loyal to him and believed in a specifically Soviet world view, thereby producing the pseudoscientific theories of Lysenkoism and Japhetic theory.

At the beginning of World War II, the Soviet secret police carried out mass executions of the Polish intelligentsia and military leadership in the 1940 Katyn massacre.

Fascism

Active philosopher Giovanni Gentile, intellectual father of Italian Fascism
The idealist philosopher Giovanni Gentile established the intellectual basis of Fascist ideology with the autoctisi (self-realisation) via concrete thinking that distinguished between the good (active) intellectual and the bad (passive) intellectual:

Fascism combats [...] not intelligence, but intellectualism, [...] which is [...] a sickness of the intellect, [...] not a consequence of its abuse, because the intellect cannot be used too much. [...] [I]t derives from the false belief that one can segregate oneself from life.

— Giovanni Gentile, addressing a Congress of Fascist Culture, Bologna, 30 March 1925
To counter the "passive intellectual" who used his or her intellect abstractly, and was therefore "decadent", he proposed the "concrete thinking" of the active intellectual who applied intellect as praxis—a "man of action", like the Fascist Benito Mussolini, versus the decadent Communist intellectual Antonio Gramsci. The passive intellectual stagnates intellect by objectifying ideas, thus establishing them as objects. Hence the Fascist rejection of materialist logic, because it relies upon a priori principles improperly counter-changed with a posteriori ones that are irrelevant to the matter-in-hand in deciding whether or not to act.

In the praxis of Gentile's concrete thinking criteria, such consideration of the a priori toward the properly a posteriori constitutes impractical, decadent intellectualism. Moreover, this fascist philosophy occurred parallel to Actual Idealism, his philosophic system; he opposed intellectualism for its being disconnected from the active intelligence that gets things done, i.e. thought is killed when its constituent parts are labelled, and thus rendered as discrete entities.[48][49]

Related to this, is the confrontation between the Spanish franquist General, Millán Astray, and the writer Miguel de Unamuno during the Dia de la Raza celebration at the University of Salamanca, in 1936, during the Spanish Civil War. The General exclaimed: ¡Muera la inteligencia! ¡Viva la Muerte! ("Death to the intelligentsia! Long live death!"); the Falangists applauded.[50]

In Asia
China
Imperial China
Qin Shi Huang (246–210 BC), the first Emperor of unified China, consolidated political thought, and power, by suppressing freedom of speech at the suggestion of Chancellor Li Si, who justified such anti-intellectualism by accusing the intelligentsia of falsely praising the emperor, and dissenting through libel. From 213 to 206 BC, it was generally thought that the works of the Hundred Schools of Thought were incinerated, especially the Shi Jing (Classic of Poetry, c. 1000 BC) and the Shujing (Classic of History, c. 6th century BC). The exceptions were books by Qin historians, and books of Legalism, an early type of totalitarianism—and the Chancellor's philosophic school (see the Burning of books and burying of scholars). However, upon further inspection of Chinese historical annals such as the Shi Ji and the Han Shu, this was found not to be the case. The Qin Empire privately kept one copy of each of these books in the Imperial Library but it publicly ordered that the books should be banned. Those who owned copies were ordered to surrender the books to be burned; those who refused were executed. This eventually led to the loss of most ancient works of literature and philosophy when Xiang Yu burned down the Qin palace in 208 BC.

People's Republic of China
See also: Stinking Old Ninth
The Cultural Revolution (1966–1976) was a politically violent decade which saw wide-ranging social engineering throughout the People's Republic of China by its leader Chairman Mao Zedong. After several national policy crises during which he was motivated by his desire to regain public prestige and control of the Chinese government, Mao announced on 16 May 1966 that the Chinese Communist Party (CCP) and Chinese society were permeated with liberal bourgeois elements who meant to restore capitalism to China and he also announced that people could only be removed after a post–revolutionary class struggle was waged against them. To that effect, China's youth nationally organized themselves into Red Guards and hunted the "liberal bourgeois" elements who were supposedly subverting the CCP and Chinese society. The Red Guards acted nationally, purging the country, the military, urban workers and the leaders of the CCP. The Red Guards were particularly aggressive when they attacked their teachers and professors, causing most schools and universities to be shut down once the Cultural Revolution began. Three years later in 1969, Mao declared that the Cultural Revolution was ended, yet the political intrigues continued until 1976, concluding with the arrest of the Gang of Four, the de facto end of the Cultural Revolution.

Democratic Kampuchea

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (January 2019) (Learn how and when to remove this template message)
When the Communist Party of Kampuchea and the Khmer Rouge (1951–1981) established their regime as Democratic Kampuchea (1975–1979) in Cambodia, their anti-intellectualism which idealised the country and demonised the cities was immediately imposed on the country in order to establish agrarian socialism, thus, they emptied cities in order to purge the Khmer nation of every traitor, enemy of the state and intellectual, often symbolised by eyeglasses (see the Killing Fields).

Ottoman Empire

Some of the Armenian intellectuals who were detained, deported, and killed in the Armenian Genocide of 1915
In the early stages of the Armenian Genocide of 1915, around 2,300 Armenian intellectuals were deported from Constantinople (Istanbul) and most of them were subsequently murdered by the Ottoman government.[51] The event has been described by historians as a decapitation strike,[52][53] the purpose of which was intended to deprive the Armenian population of an intellectual leadership and a chance to resist.[54]

See also
Anti-elitism
Alternative facts – Expression associated with political misinformation established in 2017
Creation science – Claim that the Genesis creation narrative has validity as science
Anarcho-primitivism – Anarchist critique of civilization
Antiscience – A set of attitudes that reject science and the scientific method as an inherently limited means to reach understanding of reality
Neo-Luddism, also known as Anti-technology
Authoritarianism – Form of social organization characterized by submission to authority
Conspiracy theory – Explanation that invokes a conspiracy
Counter-Enlightenment – Strains of thought in opposition to the 18th-century Enlightenment
Dumbing down – Deliberate oversimplification of intellectual content
Fundamentalism – Religious ideology based on strict adherence to uncompromising beliefs
Left-wing fascism
Nerd – Descriptive term, often used pejoratively, indicating that a person is overly intellectual, obsessive, or socially impaired
Epistemological nihilism – Philosophy antithetical to concepts of meaningfulness
Noble savage
Oblomovism
Obscurantism – Practice of obscuring information
Philistinism – Person whose anti-intellectual social attitude undervalues and despises art and beauty, spirituality and intellect
Poshlost – A Russian word for a particular negative human character trait or man-made thing or idea
Postmodernism – A broad movement in the mid-to-late 20th century across philosophy, the arts, architecture, and criticism
Relativism – Philosophical view rejecting universalism, e.g. about truth






Neo-Luddism
https://en.wikipedia.org/wiki/Neo-Luddism
Neo-Luddism or new Luddism is a philosophy opposing many forms of modern technology.[1] The term Luddite is generally used as a pejorative applied to people showing technophobic leanings.[2] The name is based on the historical legacy of the English Luddites, who were active between 1811 and 1816.[1]

Neo-Luddism is a leaderless movement of non-affiliated groups who resist modern technologies and dictate a return of some or all technologies to a more primitive level.[3] Neo-Luddites are characterized by one or more of the following practices: passively abandoning the use of technology, harming those who produce technology harmful to the environment, advocating simple living, or sabotaging technology. The modern neo-Luddite movement has connections with the anti-globalization movement, anti-science movement, anarcho-primitivism, radical environmentalism, and deep ecology.[3]

Neo-Luddism is based on the concern of the technological impact on individuals, their communities, and/or the environment,[4] Neo-Luddism stipulates the use of the precautionary principle for all new technologies, insisting that technologies be proven safe before adoption, due to the unknown effects that new technologies might inspire.

Philosophy
Neo-Luddism calls for slowing or stopping the development of new technologies. Neo-Luddism prescribes a lifestyle that abandons specific technologies, because of its belief that this is the best prospect for the future. As Robin and Webster put it, "a return to nature and what are imagined as more natural communities." In the place of industrial capitalism, neo-Luddism prescribes small-scale agricultural communities such as those of the Amish and the Chipko movement in Nepal and India[5] as models for the future.

Neo-Luddism denies the ability of any new technology to solve current problems, such as environmental degradation,[5] nuclear warfare and biological weapons, without creating more, potentially dangerous problems.[6][7] Neo-Luddites are generally opposed to anthropocentrism, globalization and industrial capitalism.

In 1990, attempting to reclaim the term 'Luddite' and found a unified movement, Chellis Glendinning published her "Notes towards a Neo-Luddite manifesto". In this paper, Glendinning describes neo-Luddites as "20th century citizens—activists, workers, neighbors, social critics, and scholars—who question the predominant modern worldview, which preaches that unbridled technology represents progress."[8] Glendinning voices an opposition to technologies that she deems destructive to communities or are materialistic and rationalistic. She proposes that technology encourages biases, and therefore should question if technologies have been created for specific interests, to perpetuate their specific values including short-term efficiency, ease of production and marketing, as well as profit. Glendinning also says that secondary aspects of technology, including social, economic and ecological implications, and not personal benefit need to be considered before adoption of technology into the technological system.[8]

Vision of the future without intervention
Neo-Luddism often establishes stark predictions about the effect of new technologies. Although there is not a cohesive vision of the ramifications of technology, neo-Luddism predicts that a future without technological reform has dire consequences. Neo-Luddites believe that current technologies are a threat to humanity and to the natural world in general, and that a future societal collapse is possible or even probable.

Neo-Luddite Ted Kaczynski predicted a world with a depleted environment, an increase in psychological disorders, with either "leftists" who aim to control humanity through technology, or technology directly controlling humanity.[9] According to Sale, "The industrial civilization so well served by its potent technologies cannot last, and will not last; its collapse is certain within not more than a few decades.".[10] Stephen Hawking, a famous astrophysicist, predicted that the means of production will be controlled by the "machine owner" class and that without redistribution of wealth, technology will create more economic inequality.[11]

These predictions include changes in humanity's place in the future due to replacement of humans by computers, genetic decay of humans due to lack of natural selection, biological engineering of humans, misuse of technological power including disasters caused by genetically modified organisms, nuclear warfare, and biological weapons; control of humanity using surveillance, propaganda, pharmacological control, and psychological control; humanity failing to adapt to the future manifesting as an increase in psychological disorders, widening economic and political inequality, widespread social alienation, a loss of community, and massive unemployment; technology causing environmental degradation due to shortsightedness, overpopulation, and overcrowding.[5][12]

Types of intervention
In 1990, attempting to reclaim the term 'Luddite' and found a unified movement, Chellis Glendinning published her "Notes towards a Neo-Luddite manifesto". In this paper, Glendinning proposes destroying the following technologies: electromagnetic technologies (this includes communications, computers, appliances, and refrigeration), chemical technologies (this includes synthetic materials and medicine), nuclear technologies (this includes weapons and power as well as cancer treatment, sterilization, and smoke detection), genetic engineering (this includes crops as well as insulin production).[8] She argues in favor of the "search for new technological forms" which are local in scale and promote social and political freedom.

A man in a suit faces the camera while he stands in front of a building.
Kaczynski as a young professor at U.C. Berkeley, 1968
In "The coming revolution", Kaczynski outlined what he saw as changes humanity will have to make in order to make society functional, "new values that will free them from the yoke of the present technoindustrial system", including:

Rejection of all modern technology – "This is logically necessary, because modern technology is a whole in which all parts are interconnected; you can’t get rid of the bad parts without also giving up those parts that seem good."
Rejection of civilization itself
Rejection of materialism and its replacement with a conception of life that values moderation and self-sufficiency while deprecating the acquisition of property or of status.
Love and reverence toward nature or even worship of nature
Exaltation of freedom
Punishment of those responsible for the present situation. "Scientists, engineers, corporation executives, politicians, and so forth to make the cost of improving technology too great for anyone to try"
Movement
Contemporary neo-Luddites are a widely diverse group of loosely affiliated or non-affiliated groups which includes "writers, academics, students, families, Amish, Mennonites, Quakers, environmentalists, "fallen-away yuppies," "ageing flower children" and "young idealists seeking a technology-free environment."[10] Some Luddites see themselves as victims of technology trying to prevent further victimization (such as Citizens Against Pesticide Misuse and Parents Against Underage Smartphones). Others see themselves as advocates for the natural order and resist environmental degradation by technology (such as Earth First!).[10]

One neo-Luddite assembly was the "Second Neo-Luddite Congress", held April 13–15, 1996, at a Quaker meeting hall in Barnesville, Ohio. On February 24, 2001, the "Teach-In on Technology and Globalization" was held at Hunter College in New York city with the purpose to bring together critics of technology and globalization.[10] The two figures who are seen as the movement's founders are Chellis Glendinning and Kirkpatrick Sale. Prominent neo-Luddites include educator S. D. George, ecologist Stephanie Mills, Theodore Roszak, Scott Savage, Clifford Stoll, Bill McKibben, Neil Postman, Wendell Berry, Alan Marshall and Gene Logsdon.[5][10] Postman, however, did not consider himself a Luddite and loathed being associated with the term.[citation needed]

Relationship to violence and vandalism
Some neo-Luddites use vandalism and or violence to achieve social change and promote their cause.[13]

In May 2012, credit for the shooting of Roberto Adinolfi, an Ansaldo Nucleare executive, was claimed by an anarchist group who targeted him for stating that none of the deaths following the 2011 Tōhoku earthquake and tsunami were caused by the Fukushima Daiichi nuclear disaster itself:

Adinolfi knows well that it is only a matter of time before a European Fukushima kills on our continent [...] Science in centuries past promised us a golden age, but it is pushing us towards self destruction and slavery [...] With our action we give back to you a small part of the suffering that you scientists are bringing to the world.[14]

Kaczynski, also known as the Unabomber, initially sabotaged developments near his cabin but dedicated himself to getting back at the system after discovering a road had been built over a plateau he had considered beautiful. Between 1978 and 1995, Kaczynski engaged in a nationwide bombing campaign against modern technology, planting or mailing numerous home-made bombs, killing three people and injuring 23 others. In his 1995 Unabomber manifesto,[9] Kaczynski states:

The kind of revolution we have in mind will not necessarily involve an armed uprising against any government. It may or may not involve physical violence, but it will not be a POLITICAL revolution. Its focus will be on technology and economics, not politics.

In August 2011 in Mexico a group or person calling itself Individuals Tending Towards the Wild perpetrated an attack with a bomb at the Monterrey Institute of Technology and Higher Education, State of Mexico Campus, intended for the coordinator of its Business Development Center and Technology Transfer. The attack was accompanied by the publication of a manifesto criticizing nanotechnology and computer science.

Sale says that neo-Luddites are not motivated to commit violence or vandalism.[15] The manifesto of the 'Second Luddite Congress', which Sale took a major part in defining, attempts to redefine neo-Luddites as people who reject violent action.[10]

History
Origins of contemporary critiques of technology in literature
According to Julian Young, Martin Heidegger was a Luddite in his early philosophical phase and believed in the destruction of modern technology and a return to an earlier agrarian world.[16] However, the later Heidegger did not see technology as wholly negative and did not call for its abandonment or destruction.[17] In The Question Concerning Technology (1953), Heidegger posited that the modern technological "mode of Being" was one which viewed the natural world, plants, animals, and even human beings as a "standing-reserve"—resources to be exploited as means to an end.[17] To illustrate this "monstrousness", Heidegger uses the example of a hydroelectric plant on the Rhine river which turns the river from an unspoiled natural wonder to just a supplier of hydropower. In this sense, technology is not just the collection of tools, but a way of being in the world and of understanding the world which is instrumental and grotesque. According to Heidegger, this way of being defines the modern way of living in the West.[17] For Heidegger, this technological process ends up reducing beings to not-beings, which Heidegger calls 'the abandonment of being' and involves the loss of any sense of awe and wonder, as well as an indifference to that loss.[17]

One of the first major contemporary anti-technological thinkers was French philosopher Jacques Ellul. In his The Technological Society (1964), Ellul argued that the rationality of technology enforces logical and mechanical organization which "eliminates or subordinates the natural world." Ellul defined technique as the entire totality of organizational methods and technology with a goal toward maximum rational efficiency. According to Ellul, technique has an impetus which tends to drown out human concerns: "The only thing that matters technically is yield, production. This is the law of technique; this yield can only be obtained by the total mobilization of human beings, body and soul, and this implies the exploitation of all human psychic forces."[18] In Industrial Revolution England machines became cheaper to use than to employee men. The five counties of Yorkshire, Lancashire, Cheshire, Derbyshire, and Nottinghamshire had a small uprising where they threatened those hired to guard the machines.[19] Another critic of political and technological expansion was Lewis Mumford, who wrote The Myth of the Machine. The views of Ellul influenced the ideas of the infamous American Neo-Luddite Kaczynski. The opening of Kaczynski's manifesto reads: "The Industrial Revolution and its consequences have been a disaster for the human race."[9] Other philosophers of technology who have questioned the validity of technological progress include Albert Borgmann, Don Ihde and Hubert Dreyfus.[5][20]

See also
Neo-Luddites (category)
Ned Ludd
Anarcho-primitivism
Antiscience
Butlerian Jihad
Green conservatism
CLODO
Development criticism
Earth liberation
Green anarchy
Hardline (subculture)
John Zerzan
MOVE
Pentti Linkola
Radical environmentalism
Reactionary
On the Origin of the "Influencing Machine" in Schizophrenia
Traditionalist Workers Party
Why The Future Doesn't Need Us – by Bill Joy, published in Wired





Nihilism
https://en.wikipedia.org/wiki/Nihilism#Epistemological
Nihilism (/ˈnaɪ(h)ɪlɪzəm, ˈniː-/; from Latin nihil 'nothing') is a philosophy, or family of views within philosophy, expressing some form of negation towards general aspects of life that are widely accepted within humanity as objectively true and real,[1][2] such as knowledge, existence, and the meaning of life.[3][4] Different nihilist positions hold variously that human values are baseless, that life is meaningless, that knowledge is impossible, or that some set of entities do not exist.[5][6]

The study of nihilism may regard it as merely a label that has been applied to various separate philosophies,[7] or as a distinct historical concept arising out of nominalism, skepticism, and philosophical pessimism, as well as possibly out of Christianity itself.[8] Contemporary understanding of the idea stems largely from the Nietzschean 'crisis of nihilism', from which derives the two central concepts: the destruction of higher values and the opposition to the affirmation of life.[9][5] Earlier forms of nihilism however, may be more selective in negating specific hegemonies of social, moral, political and aesthetic thought.[10]

The term is sometimes used in association with anomie to explain the general mood of despair at a perceived pointlessness of existence or arbitrariness of human principles and social institutions. Nihilism has also been described as conspicuous in or constitutive of certain historical periods. For example,[11] Jean Baudrillard[12][13] and others have characterized postmodernity as a nihilistic epoch[14] or mode of thought.[15] Likewise, some theologians and religious figures have stated that postmodernity[16] and many aspects of modernity[17] represent nihilism by a negation of religious principles. Nihilism has, however, been widely ascribed to both religious and irreligious viewpoints.[8]


In popular use, the term commonly refers to forms of existential nihilism, according to which life is without intrinsic value, meaning, or purpose.[18] Other prominent positions within nihilism include the rejection of all normative and ethical views (§ Moral nihilism), the rejection of all social and political institutions (§ Political nihilism), the stance that no knowledge can or does exist (§ Epistemological nihilism), and a number of metaphysical positions, which assert that non-abstract objects do not exist (§ Metaphysical nihilism), that composite objects do not exist (§ Mereological nihilism), or even that life itself does not exist.


Contents
1	Etymology, terminology and definition
2	History
2.1	Buddhism
2.1.1	Nirvana and nihilism
2.2	Jacobi
2.3	Kierkegaard
2.4	Russian nihilism
2.5	Nietzsche
2.5.1	Heideggerean interpretation of Nietzsche
2.5.2	Deleuzean interpretation of Nietzsche
2.6	Postmodernism
2.6.1	Derrida
2.6.2	Lyotard
2.6.3	Baudrillard
3	Positions
4	In culture and the arts
4.1	Dada
4.2	Literature
5	See also
6	References
7	Sources
7.1	Primary texts
7.2	Secondary texts
8	External links
Etymology, terminology and definition
[icon]
This section needs expansion. You can help by adding to it. (October 2020)
The etymological origin of nihilism is the Latin root word nihil, meaning 'nothing', which is similarly found in the related terms annihilate, meaning 'to bring to nothing',[5] and nihility, meaning 'nothingness'.[19] The term nihilism emerged in several places in Europe during the 18th century,[7] notably in the German form Nihilismus,[20] though was also in use during the Middle Ages to denote certain forms of heresy.[21] The concept itself first took shape within Russian and German philosophy, which respectively represented the two major currents of discourse on nihilism prior to the 20th century.[20] The term likely entered English from either the German Nihilismus, Late Latin nihilismus, or French nihilisme.[22]

Early examples of the term's use are found in German publication. In 1733, German writer Friedrich Lebrecht Goetz used it as a literary term in combination with noism (German: Neinismus).[23] In the period surrounding the French Revolution, the term was also a pejorative for certain value-destructive trends of modernity, namely the negation of Christianity and European tradition in general.[7] Nihilism first entered philosophical study within a discourse surrounding Kantian and post-Kantian philosophies, notably appearing in the writings of Swiss esotericist Jacob Hermann Obereit in 1787 and German philosopher Friedrich Heinrich Jacobi in 1799.[24] As early as 1824, the term began to take on a social connotation with German journalist Joseph von Görres attributing it to a negation of existing social and political institutions.[25] The Russian form of the word, nigilizm (Russian: нигилизм), entered publication in 1829 when Nikolai Nadezhdin used it synonymously with skepticism. In Russian journalism the word continued to have significant social connotations.[26]

From the time of Jacobi, the term almost fell completely out of use throughout Europe until it was revived by Russian author Ivan Turgenev, who brought the word into popular use with his 1862 novel Fathers and Sons, leading many scholars to believe he coined the term.[27] The nihilist characters of the novel define themselves as those who "deny everything", who do "not take any principle on faith, whatever reverence that principle may be enshrined in", and who regard "at the present time, negation is the most useful of all".[28] Despite Turgenev's own anti-nihilistic leanings, many of his readers likewise took up the name of nihilist, thus ascribing the Russian nihilist movement its name.[29] Returning to German philosophy, nihilism was further discussed by German philosopher Friedrich Nietzsche, who used the term to describe the Western world's disintegration of traditional morality.[30] For Nietzsche, nihilism applied to both the modern trends of value-destruction expressed in the 'death of God', as well as what he saw as the life-denying morality of Christianity.[31][32] Under Nietzsche's profound influence, the term was then further treated within French philosophy and continental philosophy more broadly, while the influence of nihilism in Russia arguably continued well into the Soviet era.[33]

Religious scholars such as Altizer have stated that nihilism must necessarily be understood in relation to religion, and that the study of core elements of its character requires fundamentally theological consideration.[34]

History
Buddhism
The concept of nihilism was discussed by the Buddha (563 B.C. to 483 B.C.), as recorded in the Theravada and Mahayana Tripiṭaka.[35] The Tripiṭaka, originally written in Pali, refers to nihilism as natthikavāda and the nihilist view as micchādiṭṭhi.[36] Various sutras within it describe a multiplicity of views held by different sects of ascetics while the Buddha was alive, some of which were viewed by him to be morally nihilistic. In the "Doctrine of Nihilism" in the Apannaka Sutta, the Buddha describes moral nihilists as holding the following views:[37]

Giving produces no beneficial results;
Good and bad actions produce no results;
After death, beings are not reborn into the present world or into another world; and
There is no one in the world who, through direct knowledge, can confirm that beings are reborn into this world or into another world
The Buddha further states that those who hold these views will fail to see the virtue in good mental, verbal, and bodily conduct and the corresponding dangers in misconduct, and will therefore tend towards the latter.[37]

Nirvana and nihilism
The culmination of the path that the Buddha taught was nirvana, "a place of nothingness…nonpossession and…non-attachment…[which is] the total end of death and decay."[38] Ajahn Amaro, an ordained Buddhist monk of more than 40 years, observes that in English nothingness can sound like nihilism. However, the word could be emphasized in a different way, so that it becomes no-thingness, indicating that nirvana is not a thing you can find, but rather a state where you experience the reality of non-grasping.[38]

In the Alagaddupama Sutta, the Buddha describes how some individuals feared his teaching because they believe that their self would be destroyed if they followed it. He describes this as an anxiety caused by the false belief in an unchanging, everlasting self. All things are subject to change and taking any impermanent phenomena to be a self causes suffering. Nonetheless, his critics called him a nihilist who teaches the annihilation and extermination of an existing being. The Buddha's response was that he only teaches the cessation of suffering. When an individual has given up craving and the conceit of 'I am' their mind is liberated, they no longer come into any state of 'being' and are no longer born again.[39]

The Aggi-Vacchagotta Sutta records a conversation between the Buddha and an individual named Vaccha that further elaborates on this. In the sutta, Vaccha asks the Buddha to confirm one of the following, with respect to the existence of the Buddha after death:[40]

After death a Buddha reappears somewhere else
After death a Buddha does not reappear
After death a Buddha both does and does not reappear
After death a Buddha neither does nor does not reappear
To all four questions, the Buddha answers that the terms "appear," "not appear," "does and does not reappear," and "neither does nor does not reappear" do not apply. When Vaccha expresses puzzlement, the Buddha asks Vaccha a counter question to the effect of: if a fire were to go out and someone were to ask you whether the fire went north, south, east or west, how would you reply? Vaccha replies that the question does not apply and that an extinguished fire can only be classified as 'out'.[40]

Ṭhānissaro Bhikkhu elaborates on the classification problem around the words 'reappear,' etc. with respect to the Buddha and Nirvana by stating that a "person who has attained the goal [nirvana] is thus indescribable because [they have] abandoned all things by which [they] could be described."[41] The Suttas themselves describe the liberated mind as 'untraceable' or as 'consciousness without feature', making no distinction between the mind of a liberated being that is alive and the mind of one that is no longer alive.[39][42]

Despite the Buddha's explanations to the contrary, Buddhist practitioners may, at times, still approach Buddhism in a nihilistic manner. Ajahn Amaro illustrates this by retelling the story of a Buddhist monk, Ajahn Sumedho, who in his early years took a nihilistic approach to Nirvana. A distinct feature of Nirvana in Buddhism is that an individual attaining it is no longer subject to rebirth. Ajahn Sumedho, during a conversation with his teacher Ajahn Chah, comments that he is "determined above all things to fully realize Nirvana in this lifetime…deeply weary of the human condition and…[is] determined not to be born again." To this, Ajahn Chah replies: "what about the rest of us, Sumedho? Don't you care about those who'll be left behind?" Ajahn Amaro comments that Ajahn Chah could detect that his student had a nihilistic aversion to life rather than true detachment.[43]

Jacobi
The term nihilism was first introduced by Friedrich Heinrich Jacobi (1743–1819), who used the term to characterize rationalism,[44] and in particular the Spinoza's determinism and the Aufklärung, in order to carry out a reductio ad absurdum according to which all rationalism (philosophy as criticism) reduces to nihilism—and thus it should be avoided and replaced with a return to some type of faith and revelation. Bret W. Davis writes, for example:[45]

The first philosophical development of the idea of nihilism is generally ascribed to Friedrich Jacobi, who in a famous letter criticized Fichte's idealism as falling into nihilism. According to Jacobi, Fichte's absolutization of the ego (the 'absolute I' that posits the 'not-I') is an inflation of subjectivity that denies the absolute transcendence of God.

A related but oppositional concept is fideism, which sees reason as hostile and inferior to faith.

Kierkegaard
Main article: Philosophy of Søren Kierkegaard

unfinished sketch c. 1840 of Søren Kierkegaard by his cousin Niels Christian Kierkegaard
Søren Kierkegaard (1813–1855) posited an early form of nihilism, which he referred to as leveling.[46] He saw leveling as the process of suppressing individuality to a point where an individual's uniqueness becomes non-existent and nothing meaningful in one's existence can be affirmed:

Levelling at its maximum is like the stillness of death, where one can hear one's own heartbeat, a stillness like death, into which nothing can penetrate, in which everything sinks, powerless. One person can head a rebellion, but one person cannot head this levelling process, for that would make him a leader and he would avoid being levelled. Each individual can in his little circle participate in this levelling, but it is an abstract process, and levelling is abstraction conquering individuality.

— The Present Age, translated by Alexander Dru, with Foreword by Walter Kaufmann, 1962, pp. 51–53
Kierkegaard, an advocate of a philosophy of life, generally argued against levelling and its nihilistic consequences, although he believed it would be "genuinely educative to live in the age of levelling [because] people will be forced to face the judgement of [levelling] alone."[47] George Cotkin asserts Kierkegaard was against "the standardization and levelling of belief, both spiritual and political, in the nineteenth century," and that Kierkegaard "opposed tendencies in mass culture to reduce the individual to a cipher of conformity and deference to the dominant opinion."[48] In his day, tabloids (like the Danish magazine Corsaren) and apostate Christianity were instruments of levelling and contributed to the "reflective apathetic age" of 19th century Europe.[49] Kierkegaard argues that individuals who can overcome the levelling process are stronger for it, and that it represents a step in the right direction towards "becoming a true self."[47][50] As we must overcome levelling,[51] Hubert Dreyfus and Jane Rubin argue that Kierkegaard's interest, "in an increasingly nihilistic age, is in how we can recover the sense that our lives are meaningful."[52]

Russian nihilism
Main article: Russian nihilist movement

Portrait of a nihilist student by Ilya Repin
From the period 1860–1917, Russian nihilism was both a nascent form of nihilist philosophy and broad cultural movement which overlapped with certain revolutionary tendencies of the era,[53] for which it was often wrongly characterized as a form of political terrorism.[54] Russian nihilism centered on the dissolution of existing values and ideals, incorporating theories of hard determinism, atheism, materialism, positivism, and rational egoism, while rejecting metaphysics, sentimentalism, and aestheticism.[55] Leading philosophers of this school of thought included Nikolay Chernyshevsky and Dmitry Pisarev.[56]

The intellectual origins of the Russian nihilist movement can be traced back to 1855 and perhaps earlier,[57] where it was principally a philosophy of extreme moral and epistemological skepticism.[58] However, it was not until 1862 that the name nihilism was first popularized, when Ivan Turgenev used the term in his celebrated novel Fathers and Sons to describe the disillusionment of the younger generation towards both the progressives and traditionalists that came before them,[59] as well as its manifestation in the view that negation and value-destruction were most necessary to the present conditions.[60] The movement very soon adopted the name, despite the novel's initial harsh reception among both the conservatives and younger generation.[61]

Though philosophically both nihilistic and skeptical, Russian nihilism did not unilaterally negate ethics and knowledge as may be assumed, nor did it espouse meaninglessness unequivocally.[62] Even so, contemporary scholarship has challenged the equating of Russian nihilism with mere skepticism, instead identifying it as a fundamentally Promethean movement.[63] As passionate advocates of negation, the nihilists sought to liberate the Promethean might of the Russian people which they saw embodied in a class of prototypal individuals, or new types in their own words.[64] These individuals, according to Pisarev, in freeing themselves from all authority become exempt from moral authority as well, and are distinguished above the rabble or common masses.[65]

Later interpretations of nihilism were heavily influenced by works of anti-nihilistic literature, such as those of Fyodor Dostoevsky, which arose in response to Russian nihilism.[66] "In contrast to the corrupted nihilists [of the real world], who tried to numb their nihilistic sensitivity and forget themselves through self-indulgence, Dostoevsky's figures voluntarily leap into nihilism and try to be themselves within its boundaries", writes contemporary scholar Nishitani. "The nihility expressed in 'if there is no God, everything is permitted', or 'après moi, le déluge', provides a principle whose sincerity they try to live out to the end. They search for and experiment with ways for the self to justify itself after God has disappeared."[67]

Nietzsche
Main article: Philosophy of Friedrich Nietzsche

Friedrich Wilhelm Nietzsche
Nihilism is often associated with the German philosopher Friedrich Nietzsche, who provided a detailed diagnosis of nihilism as a widespread phenomenon of Western culture. Though the notion appears frequently throughout Nietzsche's work, he uses the term in a variety of ways, with different meanings and connotations.

Karen L. Carr describes Nietzsche's characterization of nihilism "as a condition of tension, as a disproportion between what we want to value (or need) and how the world appears to operate."[31]:25 When we find out that the world does not possess the objective value or meaning that we want it to have or have long since believed it to have, we find ourselves in a crisis.[68] Nietzsche asserts that with the decline of Christianity and the rise of physiological decadence,[clarification needed] nihilism is in fact characteristic of the modern age,[69] though he implies that the rise of nihilism is still incomplete and that it has yet to be overcome.[70] Though the problem of nihilism becomes especially explicit in Nietzsche's notebooks (published posthumously), it is mentioned repeatedly in his published works and is closely connected to many of the problems mentioned there.

Nietzsche characterized nihilism as emptying the world and especially human existence of meaning, purpose, comprehensible truth, or essential value. This observation stems in part from Nietzsche's perspectivism, or his notion that "knowledge" is always by someone of some thing: it is always bound by perspective, and it is never mere fact.[71] Rather, there are interpretations through which we understand the world and give it meaning. Interpreting is something we can not go without; in fact, it is a condition of subjectivity. One way of interpreting the world is through morality, as one of the fundamental ways that people make sense of the world, especially in regard to their own thoughts and actions. Nietzsche distinguishes a morality that is strong or healthy, meaning that the person in question is aware that he constructs it himself, from weak morality, where the interpretation is projected on to something external.

Nietzsche discusses Christianity, one of the major topics in his work, at length in the context of the problem of nihilism in his notebooks, in a chapter entitled "European Nihilism."[72] Here he states that the Christian moral doctrine provides people with intrinsic value, belief in God (which justifies the evil in the world) and a basis for objective knowledge. In this sense, in constructing a world where objective knowledge is possible, Christianity is an antidote against a primal form of nihilism, against the despair of meaninglessness. However, it is exactly the element of truthfulness in Christian doctrine that is its undoing: in its drive towards truth, Christianity eventually finds itself to be a construct, which leads to its own dissolution. It is therefore that Nietzsche states that we have outgrown Christianity "not because we lived too far from it, rather because we lived too close".[73] As such, the self-dissolution of Christianity constitutes yet another form of nihilism. Because Christianity was an interpretation that posited itself as the interpretation, Nietzsche states that this dissolution leads beyond skepticism to a distrust of all meaning.[74][31]:41–2

Stanley Rosen identifies Nietzsche's concept of nihilism with a situation of meaninglessness, in which "everything is permitted." According to him, the loss of higher metaphysical values that exist in contrast to the base reality of the world, or merely human ideas, gives rise to the idea that all human ideas are therefore valueless. Rejecting idealism thus results in nihilism, because only similarly transcendent ideals live up to the previous standards that the nihilist still implicitly holds.[75] The inability for Christianity to serve as a source of valuating the world is reflected in Nietzsche's famous aphorism of the madman in The Gay Science.[76] The death of God, in particular the statement that "we killed him", is similar to the self-dissolution of Christian doctrine: due to the advances of the sciences, which for Nietzsche show that man is the product of evolution, that Earth has no special place among the stars and that history is not progressive, the Christian notion of God can no longer serve as a basis for a morality.

One such reaction to the loss of meaning is what Nietzsche calls passive nihilism, which he recognizes in the pessimistic philosophy of Schopenhauer. Schopenhauer's doctrine, which Nietzsche also refers to as Western Buddhism, advocates separating oneself from will and desires in order to reduce suffering. Nietzsche characterizes this ascetic attitude as a "will to nothingness", whereby life turns away from itself, as there is nothing of value to be found in the world. This mowing away of all value in the world is characteristic of the nihilist, although in this, the nihilist appears inconsistent: this "will to nothingness" is still a form of valuation or willing.[77] He describes this as "an inconsistency on the part of the nihilists":

A nihilist is a man who judges of the world as it is that it ought not to be, and of the world as it ought to be that it does not exist. According to this view, our existence (action, suffering, willing, feeling) has no meaning: the pathos of 'in vain' is the nihilists' pathos – at the same time, as pathos, an inconsistency on the part of the nihilists.

— Friedrich Nietzsche, KSA 12:9 [60], taken from The Will to Power, section 585, translated by Walter Kaufmann
Nietzsche's relation to the problem of nihilism is a complex one. He approaches the problem of nihilism as deeply personal, stating that this predicament of the modern world is a problem that has "become conscious" in him.[78] According to Nietzsche, it is only when nihilism is overcome that a culture can have a true foundation upon which to thrive. He wished to hasten its coming only so that he could also hasten its ultimate departure.[69]

He states that there is at least the possibility of another type of nihilist in the wake of Christianity's self-dissolution, one that does not stop after the destruction of all value and meaning and succumb to the following nothingness. This alternate, 'active' nihilism on the other hand destroys to level the field for constructing something new. This form of nihilism is characterized by Nietzsche as "a sign of strength,"[79] a willful destruction of the old values to wipe the slate clean and lay down one's own beliefs and interpretations, contrary to the passive nihilism that resigns itself with the decomposition of the old values. This willful destruction of values and the overcoming of the condition of nihilism by the constructing of new meaning, this active nihilism, could be related to what Nietzsche elsewhere calls a free spirit[31]:43–50 or the Übermensch from Thus Spoke Zarathustra and The Antichrist, the model of the strong individual who posits his own values and lives his life as if it were his own work of art. It may be questioned, though, whether "active nihilism" is indeed the correct term for this stance, and some question whether Nietzsche takes the problems nihilism poses seriously enough.[80]

Heideggerean interpretation of Nietzsche
Martin Heidegger's interpretation of Nietzsche influenced many postmodern thinkers who investigated the problem of nihilism as put forward by Nietzsche. Only recently has Heidegger's influence on Nietzschean nihilism research faded.[81] As early as the 1930s, Heidegger was giving lectures on Nietzsche's thought.[82] Given the importance of Nietzsche's contribution to the topic of nihilism, Heidegger's influential interpretation of Nietzsche is important for the historical development of the term nihilism.

Heidegger's method of researching and teaching Nietzsche is explicitly his own. He does not specifically try to present Nietzsche as Nietzsche. He rather tries to incorporate Nietzsche's thoughts into his own philosophical system of Being, Time and Dasein.[83] In his Nihilism as Determined by the History of Being (1944–46),[84] Heidegger tries to understand Nietzsche's nihilism as trying to achieve a victory through the devaluation of the, until then, highest values. The principle of this devaluation is, according to Heidegger, the will to power. The will to power is also the principle of every earlier valuation of values.[85] How does this devaluation occur and why is this nihilistic? One of Heidegger's main critiques on philosophy is that philosophy, and more specifically metaphysics, has forgotten to discriminate between investigating the notion of a being (seiende) and Being (Sein). According to Heidegger, the history of Western thought can be seen as the history of metaphysics. Moreover, because metaphysics has forgotten to ask about the notion of Being (what Heidegger calls Seinsvergessenheit), it is a history about the destruction of Being. That is why Heidegger calls metaphysics nihilistic.[86] This makes Nietzsche's metaphysics not a victory over nihilism, but a perfection of it.[87]

Heidegger, in his interpretation of Nietzsche, has been inspired by Ernst Jünger. Many references to Jünger can be found in Heidegger's lectures on Nietzsche. For example, in a letter to the rector of Freiburg University of November 4, 1945, Heidegger, inspired by Jünger, tries to explain the notion of "God is dead" as the "reality of the Will to Power." Heidegger also praises Jünger for defending Nietzsche against a too biological or anthropological reading during the Nazi era.[88]

Heidegger's interpretation of Nietzsche influenced a number of important postmodernist thinkers. Gianni Vattimo points at a back-and-forth movement in European thought, between Nietzsche and Heidegger. During the 1960s, a Nietzschean 'renaissance' began, culminating in the work of Mazzino Montinari and Giorgio Colli. They began work on a new and complete edition of Nietzsche's collected works, making Nietzsche more accessible for scholarly research. Vattimo explains that with this new edition of Colli and Montinari, a critical reception of Heidegger's interpretation of Nietzsche began to take shape. Like other contemporary French and Italian philosophers, Vattimo does not want, or only partially wants, to rely on Heidegger for understanding Nietzsche. On the other hand, Vattimo judges Heidegger's intentions authentic enough to keep pursuing them.[89] Philosophers who Vattimo exemplifies as a part of this back and forth movement are French philosophers Deleuze, Foucault and Derrida. Italian philosophers of this same movement are Cacciari, Severino and himself.[90] Jürgen Habermas, Jean-François Lyotard and Richard Rorty are also philosophers who are influenced by Heidegger's interpretation of Nietzsche.[91]

Deleuzean interpretation of Nietzsche
Gilles Deleuze's interpretation of Nietzsche's concept of nihilism is different - in some sense diametrically opposed - to the usual definition (as outlined in the rest of this article). Nihilism is one of the main topics of Deleuze's early book Nietzsche and Philosophy (1962).[92] There, Deleuze repeatedly interprets Nietzsche's nihilism as "the enterprise of denying life and depreciating existence".[93] Nihilism thus defined is therefore not the denial of higher values, or the denial of meaning, but rather the depreciation of life in the name of such higher values or meaning. Deleuze therefore (with, he claims, Nietzsche) says that Christianity and Platonism, and with them the whole of metaphysics, are intrinsically nihilist.

Postmodernism
Postmodern and poststructuralist thought has questioned the very grounds on which Western cultures have based their 'truths': absolute knowledge and meaning, a 'decentralization' of authorship, the accumulation of positive knowledge, historical progress, and certain ideals and practices of humanism and the Enlightenment.

Derrida
Jacques Derrida, whose deconstruction is perhaps most commonly labeled nihilistic, did not himself make the nihilistic move that others have claimed. Derridean deconstructionists argue that this approach rather frees texts, individuals or organizations from a restrictive truth, and that deconstruction opens up the possibility of other ways of being.[94] Gayatri Chakravorty Spivak, for example, uses deconstruction to create an ethics of opening up Western scholarship to the voice of the subaltern and to philosophies outside of the canon of western texts.[95] Derrida himself built a philosophy based upon a 'responsibility to the other'.[96] Deconstruction can thus be seen not as a denial of truth, but as a denial of our ability to know truth. That is to say, it makes an epistemological claim, compared to nihilism's ontological claim.

Lyotard
Lyotard argues that, rather than relying on an objective truth or method to prove their claims, philosophers legitimize their truths by reference to a story about the world that can't be separated from the age and system the stories belong to—referred to by Lyotard as meta-narratives. He then goes on to define the postmodern condition as characterized by a rejection both of these meta-narratives and of the process of legitimation by meta-narratives. This concept of the instability of truth and meaning leads in the direction of nihilism, though Lyotard stops short of embracing the latter.[citation needed]

In lieu of meta-narratives we have created new language-games in order to legitimize our claims which rely on changing relationships and mutable truths, none of which is privileged over the other to speak to ultimate truth.[citation needed]

Baudrillard
Postmodern theorist Jean Baudrillard wrote briefly of nihilism from the postmodern viewpoint in Simulacra and Simulation. He stuck mainly to topics of interpretations of the real world over the simulations of which the real world is composed. The uses of meaning were an important subject in Baudrillard's discussion of nihilism:

The apocalypse is finished, today it is the precession of the neutral, of forms of the neutral and of indifference...all that remains, is the fascination for desertlike and indifferent forms, for the very operation of the system that annihilates us. Now, fascination (in contrast to seduction, which was attached to appearances, and to dialectical reason, which was attached to meaning) is a nihilistic passion par excellence, it is the passion proper to the mode of disappearance. We are fascinated by all forms of disappearance, of our disappearance. Melancholic and fascinated, such is our general situation in an era of involuntary transparency.

— Jean Baudrillard, Simulacra and Simulation, "On Nihilism", trans. 1995[page needed]
Positions
From the 20th century, nihilism has encompassed a range of positions within various fields of philosophy. Each of these, as the Encyclopædia Britannica states, "denied the existence of genuine moral truths or values, rejected the possibility of knowledge or communication, and asserted the ultimate meaninglessness or purposelessness of life or of the universe."[97]

Cosmic nihilism is the position that reality or the cosmos is either wholly or significantly unintelligible and that it provides no foundation for human aims and principles.[3] Particularly, it may regard the cosmos as distinctly hostile or indifferent to humanity.[98] It is often related to both epistemological and existential nihilism, as well as cosmicism.
Epistemological nihilism is a form of philosophical skepticism according to which knowledge does not exist, or, if it does exist, it is unattainable for human beings. It should not be confused with epistemological fallibilism, according to which all knowledge is uncertain.
Existential nihilism is the position that life has no intrinsic meaning or value.[3] With respect to the universe, existential nihilism posits that a single human or even the entire human species is insignificant, without purpose, and unlikely to change in the totality of existence. The meaninglessness of life is largely explored in the philosophical school of existentialism, where one can create their own subjective meaning or purpose. In popular use, "nihilism" now most commonly refers to forms of existential nihilism.
Metaphysical nihilism is the position that concrete objects and physical constructs might not exist in the possible world, or that, even if there exist possible worlds that contain some concrete objects, there is at least one that contains only abstract objects.
Extreme metaphysical nihilism, also sometimes called ontological nihilism, is the position that nothing actually exists at all.[99][100] The American Heritage Medical Dictionary defines one form of nihilism as "an extreme form of skepticism that denies all existence."[101] A similar skepticism concerning the concrete world can be found in solipsism. However, despite the fact that both views deny the certainty of objects' true existence, the nihilist would deny the existence of self, whereas the solipsist would affirm it.[102] Both of these positions are considered forms of anti-realism.
Mereological nihilism, also called compositional nihilism, is the metaphysical position that objects with proper parts do not exist. This position applies to objects in space, and also to objects existing in time, which are posited to have no temporal parts. Rather, only basic building blocks without parts exist, and thus the world we see and experience, full of objects with parts, is a product of human misperception (i.e., if we could see clearly, we would not perceive compositive objects). This interpretation of existence must be based on resolution: The resolution with which humans see and perceive the "improper parts" of the world is not an objective fact of reality, but is rather an implicit trait that can only be qualitatively explored and expressed. Therefore, there is no arguable way to surmise or measure the validity of mereological nihilism. For example, an ant can get lost on a large cylindrical object because the circumference of the object is so large with respect to the ant that the ant effectively feels as though the object has no curvature. Thus, the resolution with which the ant views the world it exists "within" is an important determining factor in how the ant experiences this "within the world" feeling.
Moral nihilism, also called ethical nihilism, is the meta-ethical position that no morality or ethics exists whatsoever; therefore, no action is ever morally preferable to any other. Moral nihilism is distinct from both moral relativism and expressivism in that it does not acknowledge socially constructed values as personal or cultural moralities. It may also differ from other moral positions within nihilism that, rather than argue there is no morality, hold that if it does exist, it is a human construction and thus artificial, wherein any and all meaning is relative for different possible outcomes. An alternative scholarly perspective is that moral nihilism is a morality in itself. Cooper writes, "In the widest sense of the word 'morality', moral nihilism is a morality."[103]
Passive and active nihilism, the former of which is also equated to philosophical pessimism, refer to two approaches to nihilist thought; passive nihilism sees nihility as an end in itself, whereas active nihilism attempts to surpass it. For Nietzsche, passive nihilism further encapsulates the "will to nothing" and the modern condition of resignation or unawareness towards the dissolution of higher values brought about by the 19th century.[31][104]
Political nihilism is the position holding no political goals whatsoever, except for the complete destruction of all existing political institutions—along with the principles, values, and social institutions that uphold them.[105] Though often related to anarchism, it may differ in that it presents no method of social organisation after a negation of the current political structure has taken place. An analysis of political nihilism is further presented by Leo Strauss.[106]
Reality nihilism is the position that objective reality is incomprehensible.
Scientific nihilism is the position that all scientific understanding of the universe is dubious or without merit.[107]
Therapeutic nihilism, also called medical nihilism, is the position that the effectiveness of medical intervention is dubious or without merit.[108] Dealing with the philosophy of science as it relates to the contextualized demarcation of medical research, Jacob Stegenga applies Bayes' theorem to medical research and argues for the premise that "even when presented with evidence for a hypothesis regarding the effectiveness of a medical intervention, we ought to have low confidence in that hypothesis."[109][110]
In culture and the arts
Dada
The term Dada was first used by Richard Huelsenbeck and Tristan Tzara in 1916.[111] The movement, which lasted from approximately 1916 to 1923, arose during World War I, an event that influenced the artists.[112] The Dada Movement began in the old town of Zürich, Switzerland—known as the "Niederdorf" or "Niederdörfli"—in the Café Voltaire.[113] The Dadaists claimed that Dada was not an art movement, but an anti-art movement, sometimes using found objects in a manner similar to found poetry.

The "anti-art" drive is thought[by whom?] to have stemmed from a post-war emptiness.[citation needed] This tendency toward devaluation of art has led many[who?] to claim that Dada was an essentially nihilistic movement.[citation needed] Given that Dada created its own means for interpreting its products, it is difficult to classify alongside most other contemporary art expressions. Due to perceived ambiguity, it has been classified as a nihilistic modus vivendi.[112]

Literature
The term "nihilism" was actually popularized in 1862 by Ivan Turgenev in his novel Fathers and Sons, whose hero, Bazarov, was a nihilist and recruited several followers to the philosophy. He found his nihilistic ways challenged upon falling in love.[114]

Anton Chekhov portrayed nihilism when writing Three Sisters. The phrase "what does it matter" or variants of this are often spoken by several characters in response to events; the significance of some of these events suggests a subscription to nihilism by said characters as a type of coping strategy.

The philosophical ideas of the French author, the Marquis de Sade, are often noted as early examples of nihilistic principles.[115]

See also
Absurdism
Acosmism
Agnosticism
Anarchism
Anatta
Anti-art and Anti-anti-art
Anti-humanism
Antinatalism
Apatheism
Apathy
Cosmicism
Cynicism (philosophy)
Dysteleology
Egoism
Eliminative materialism
Existentialism
Hedonism
U. G. Krishnamurti
Legal nihilism
Misanthropy
Misotheism
Moral nihilism
National nihilism
Nirvana
Paradox of nihilism
Pessimism
Postmodernism
Post-structuralism
Radical skepticism
Russian nihilist movement
Solipsism
Tao Te Ching
Therapeutic nihilism
Trivialism



Relativism
https://en.wikipedia.org/wiki/Relativism
Relativism is a family of philosophical views which deny claims to objectivity within a particular domain and assert that facts in that domain are relative to the perspective of an observer or the context in which they are assessed.[1] There are many different forms of relativism, with a great deal of variation in scope and differing degrees of controversy among them.[2] Moral relativism encompasses the differences in moral judgments among people and cultures.[3] Epistemic relativism holds that there are no absolute facts regarding norms of belief, justification, or rationality, and that there are only relative ones.[4] Alethic relativism is the doctrine that there are no absolute truths, i.e., that truth is always relative to some particular frame of reference, such as a language or a culture (cultural relativism).[5] Some forms of relativism also bear a resemblance to philosophical skepticism.[6] Descriptive relativism seeks to describe the differences among cultures and people without evaluation, while normative relativism evaluates the morality or truthfulness of views within a given framework.


Contents
1	Forms of relativism
1.1	Anthropological versus philosophical relativism
1.2	Descriptive versus normative relativism
2	Related and contrasting positions
3	Criticisms
4	Views
4.1	Philosophical
4.1.1	Ancient
4.1.1.1	Ancient India
4.1.1.2	Sophism
4.1.1.3	Pyrrhonism
4.1.2	Modern
4.1.2.1	Bernard Crick
4.1.2.2	Paul Feyerabend
4.1.2.3	Thomas Kuhn
4.1.2.4	George Lakoff and Mark Johnson
4.1.2.5	Robert Nozick
4.1.2.6	Joseph Margolis
4.1.2.7	Richard Rorty
4.1.2.8	Nalin de Silva
4.1.3	Postmodernism
4.2	Religious
4.2.1	Jainism
4.2.2	Hinduism
4.2.3	Buddhism
4.2.4	Sikhism
4.2.5	Catholicism
4.2.5.1	Leo XIII
4.2.5.2	John Paul II
4.2.5.3	Benedict XVI
5	See also
6	References
7	Bibliography
8	External links
Forms of relativism
Anthropological versus philosophical relativism
Anthropological relativism refers to a methodological stance, in which the researcher suspends (or brackets) his or her own cultural prejudice while trying to understand beliefs or behaviors in their contexts. This has become known as methodological relativism, and concerns itself specifically with avoiding ethnocentrism or the application of one's own cultural standards to the assessment of other cultures.[7] This is also the basis of the so-called "emic" and "etic" distinction, in which:

An emic or insider account of behavior is a description of a society in terms that are meaningful to the participant or actor's own culture; an emic account is therefore culture-specific, and typically refers to what is considered "common sense" within the culture under observation.
An etic or outsider account is a description of a society by an observer, in terms that can be applied to other cultures; that is, an etic account is culturally neutral, and typically refers to the conceptual framework of the social scientist. (This is complicated when it is scientific research itself that is under study, or when there is theoretical or terminological disagreement within the social sciences.)
Philosophical relativism, in contrast, asserts that the truth of a proposition depends on the metaphysical, or theoretical frame, or the instrumental method, or the context in which the proposition is expressed, or on the person, groups, or culture who interpret the proposition.[8]

Methodological relativism and philosophical relativism can exist independently from one another, but most anthropologists base their methodological relativism on that of the philosophical variety.[9]

Descriptive versus normative relativism
The concept of relativism also has importance both for philosophers and for anthropologists in another way. In general, anthropologists engage in descriptive relativism ("how things are" or "how things seem"), whereas philosophers engage in normative relativism ("how things ought to be"), although there is some overlap (for example, descriptive relativism can pertain to concepts, normative relativism to truth).

Descriptive relativism assumes that certain cultural groups have different modes of thought, standards of reasoning, and so forth, and it is the anthropologist's task to describe, but not to evaluate the validity of these principles and practices of a cultural group. It is possible for an anthropologist in his or her fieldwork to be a descriptive relativist about some things that typically concern the philosopher (e.g., ethical principles) but not about others (e.g., logical principles). However, the descriptive relativist's empirical claims about epistemic principles, moral ideals and the like are often countered by anthropological arguments that such things are universal, and much of the recent literature on these matters is explicitly concerned with the extent of, and evidence for, cultural or moral or linguistic or human universals.[10]

The fact that the various species of descriptive relativism are empirical claims, may tempt the philosopher to conclude that they are of little philosophical interest, but there are several reasons why this isn't so. First, some philosophers, notably Kant, argue that certain sorts of cognitive differences between human beings (or even all rational beings) are impossible, so such differences could never be found to obtain in fact, an argument that places a priori limits on what empirical inquiry could discover and on what versions of descriptive relativism could be true. Second, claims about actual differences between groups play a central role in some arguments for normative relativism (for example, arguments for normative ethical relativism often begin with claims that different groups in fact have different moral codes or ideals). Finally, the anthropologist's descriptive account of relativism helps to separate the fixed aspects of human nature from those that can vary, and so a descriptive claim that some important aspect of experience or thought does (or does not) vary across groups of human beings tells us something important about human nature and the human condition.

Normative relativism concerns normative or evaluative claims that modes of thought, standards of reasoning, or the like are only right or wrong relative to a framework. ‘Normative’ is meant in a general sense, applying to a wide range of views; in the case of beliefs, for example, normative correctness equals truth. This does not mean, of course, that framework-relative correctness or truth is always clear, the first challenge being to explain what it amounts to in any given case (e.g., with respect to concepts, truth, epistemic norms). Normative relativism (say, in regard to normative ethical relativism) therefore implies that things (say, ethical claims) are not simply true in themselves, but only have truth values relative to broader frameworks (say, moral codes). (Many normative ethical relativist arguments run from premises about ethics to conclusions that assert the relativity of truth values, bypassing general claims about the nature of truth, but it is often more illuminating to consider the type of relativism under question directly.)[11]

Related and contrasting positions
Relationism is the theory that there are only relations between individual entities, and no intrinsic properties. Despite the similarity in name, it is held by some to be a position distinct from relativism—for instance, because "statements about relational properties [...] assert an absolute truth about things in the world".[12] On the other hand, others wish to equate relativism, relationism and even relativity, which is a precise theory of relationships between physical objects:[13] Nevertheless, "This confluence of relativity theory with relativism became a strong contributing factor in the increasing prominence of relativism".[14]

Whereas previous investigations of science only sought sociological or psychological explanations of failed scientific theories or pathological science, the 'strong programme' is more relativistic, assessing scientific truth and falsehood equally in a historic and cultural context.

Criticisms
A common argument[15][16][17][18] against relativism suggests that it inherently contradicts, refutes, or stultifies itself: the statement "all is relative" classes either as a relative statement or as an absolute one. If it is relative, then this statement does not rule out absolutes. If the statement is absolute, on the other hand, then it provides an example of an absolute statement, proving that not all truths are relative. However, this argument against relativism only applies to relativism that positions truth as relative–i.e. epistemological/truth-value relativism. More specifically, it is only extreme forms of epistemological relativism that can come in for this criticism as there are many epistemological relativists[who?] who posit that some aspects of what is regarded as factually "true" are not universal, yet still accept that other universal truths exist (e.g. gas laws or moral laws).

Another argument against relativism posits a Natural Law. Simply put, the physical universe works under basic principles: the "Laws of Nature". Some contend that a natural Moral Law may also exist, for example as argued by Richard Dawkins in The God Delusion (2006)[19] and addressed by C. S. Lewis in "Mere Christianity" (1952).[20] Dawkins said "I think we face an equal but much more sinister challenge from the left, in the shape of cultural relativism - the view that scientific truth is only one kind of truth and it is not to be especially privileged".[21] Philosopher Hilary Putnam,[22] among others,[23] states that some forms of relativism make it impossible to believe one is in error. If there is no truth beyond an individual's belief that something is true, then an individual cannot hold their own beliefs to be false or mistaken. A related criticism is that relativizing truth to individuals destroys the distinction between truth and belief.

Views
Philosophical
Ancient
Part of a series on
Pyrrhonism
Balance scales drawing.png
Precursors
Philosophy
Pyrrhonists
Similar philosophies
Contrary philosophies
Socrates.png Philosophy portal
vte
Ancient India
Ancient Indian philosophers Mahavira (c. 599 – c. 527 BC) and Nagarjuna (c. 150 – c. 250 BC) made contributions to the development of relativist philosophy.[24]

Sophism
Sophists are considered the founding fathers of relativism in Western philosophy. Elements of relativism emerged among the Sophists in the 5th century BC. Notably, it was Protagoras who coined the phrase, "Man is the measure of all things: of things which are, that they are, and of things which are not, that they are not." The thinking of the Sophists is mainly known through their opponent, Plato. In a paraphrase from Plato's dialogue Protagoras, Protagoras said: "What is true for you is true for you, and what is true for me is true for me."[25][26][27]

Pyrrhonism
Pyrrhonist philosophy views relativity as a reason for philosophical skepticism, as it is one of the reasons that truth cannot be grasped. All perception is relative to a perceiver, and perception differs according to position. Hence, no particular perception can be judged as representing the truth about what is perceived. Arguments from relativity form the basis of trope 8 of the ten modes of Aenesidemus and trope 3 of the five modes of Agrippa.

Modern
Bernard Crick
Bernard Crick, a British political scientist and advocate of relativism, wrote the book In Defence of Politics (first published in 1962), suggesting the inevitability of moral conflict between people. Crick stated that only ethics could resolve such conflict, and when that occurred in public it resulted in politics. Accordingly, Crick saw the process of dispute resolution, harms reduction, mediation or peacemaking as central to all of moral philosophy. He became an important influence on the feminists and later on the Greens.

Paul Feyerabend
The philosopher of science Paul Feyerabend is often considered to be a relativist, though he denied being one.[28]

Feyerabend argued that modern science suffers from being methodologically monistic (the belief that only a single methodology can produce scientific progress).[29] Feyerabend summarises his case in his work Against Method with the phrase "anything goes".[30]

In an aphorism [Feyerabend] often repeated, "potentially every culture is all cultures". This is intended to convey that world views are not hermetically closed, since their leading concepts have an "ambiguity" - better, an open-endedness - which enables people from other cultures to engage with them. [...] It follows that relativism, understood as the doctrine that truth is relative to closed systems, can get no purchase. [...] For Feyerabend, both hermetic relativism and its absolutist rival [realism] serve, in their different ways, to "devalue human existence". The former encourages that unsavoury brand of political correctness which takes the refusal to criticise "other cultures" to the extreme of condoning murderous dictatorship and barbaric practices. The latter, especially in its favoured contemporary form of "scientific realism", with the excessive prestige it affords to the abstractions of "the monster 'science'", is in bed with a politics which likewise disdains variety, richness and everyday individuality - a politics which likewise "hides" its norms behind allegedly neutral facts, "blunts choices and imposes laws".[31]
Thomas Kuhn
Thomas Kuhn's philosophy of science, as expressed in The Structure of Scientific Revolutions is often interpreted as relativistic. He claimed that as well as progressing steadily and incrementally ("normal science"), science undergoes periodic revolutions or "paradigm shifts", leaving scientists working in different paradigms with difficulty in even communicating. Thus the truth of a claim, or the existence of a posited entity is relative to the paradigm employed. However, it isn't necessary for him to embrace relativism because every paradigm presupposes the prior, building upon itself through history and so on. This leads to there being a fundamental, incremental, and referential structure of development which is not relative but again, fundamental.

From these remarks, one thing is however certain: Kuhn is not saying that incommensurable theories cannot be compared - what they can’t be is compared in terms of a system of common measure. He very plainly says that they can be compared, and he reiterates this repeatedly in later work, in a (mostly in vain) effort to avert the crude and sometimes catastrophic misinterpretations he suffered from mainstream philosophers and post-modern relativists alike.[32]
But Thomas Kuhn denied the accusation of being a relativist later in his postscript.

scientific development is ... a unidirectional and irreversible process. Latter scientific theories are better than earlier ones for solving puzzles ... That is not a relativist's position, and it displays the sense in which I am a convinced believer in scientific progress.[33]
Some have argued that one can also read Kuhn's work as essentially positivist in its ontology: the revolutions he posits are epistemological, lurching toward a presumably 'better' understanding of an objective reality through the lens presented by the new paradigm. However, a number of passages in Structures do indeed appear to be distinctly relativist, and to directly challenge the notion of an objective reality and the ability of science to progress towards an ever-greater grasp of it, particularly through the process of paradigm change.

In the sciences there need not be progress of another sort. We may, to be more precise, have to relinquish the notion, explicit or implicit, that changes of paradigm carry scientists and those who learn from them closer and closer to the truth.[34]
We are all deeply accustomed to seeing science as the one enterprise that draws constantly nearer to some goal set by nature in advance. But need there be any such goal? Can we not account for both science’s existence and its success in terms of evolution from the community’s state of knowledge at any given time? Does it really help to imagine that there is some one full, objective, true account of nature and that the proper measure of scientific achievement is the extent to which it brings us closer to that ultimate goal?[35]
George Lakoff and Mark Johnson
George Lakoff and Mark Johnson define relativism in their book Metaphors We Live By as the rejection of both subjectivism and metaphysical objectivism in order to focus on the relationship between them, i.e. the metaphor by which we relate our current experience to our previous experience. In particular, Lakoff and Johnson characterize "objectivism" as a "straw man", and, to a lesser degree, criticize the views of Karl Popper, Kant and Aristotle.[page needed]

Robert Nozick
In his book Invariances, Robert Nozick expresses a complex set of theories about the absolute and the relative. He thinks the absolute/relative distinction should be recast in terms of an invariant/variant distinction, where there are many things a proposition can be invariant with regard to or vary with. He thinks it is coherent for truth to be relative, and speculates that it might vary with time. He thinks necessity is an unobtainable notion, but can be approximated by robust invariance across a variety of conditions—although we can never identify a proposition that is invariant with regard to everything. Finally, he is not particularly warm to one of the most famous forms of relativism, moral relativism, preferring an evolutionary account.

Joseph Margolis
Joseph Margolis advocates a view he calls "robust relativism" and defends it in his books: Historied Thought, Constructed World, Chapter 4 (California, 1995) and The Truth about Relativism (Blackwells, 1991). He opens his account by stating that our logics should depend on what we take to be the nature of the sphere to which we wish to apply our logics. Holding that there can be no distinctions which are not "privileged" between the alethic, the ontic, and the epistemic, he maintains that a many valued logic just might be the most apt for aesthetics or history since, because in these practices, we are loath to hold to simple binary logic; and he also holds that many-valued logic is relativistic. (This is perhaps an unusual definition of "relativistic". Compare with his comments on "relationism"). "True" and "False" as mutually exclusive and exhaustive judgements on Hamlet, for instance, really does seem absurd. A many valued logic—"apt", "reasonable", "likely", and so on—seems intuitively more applicable to Hamlet interpretation. Where apparent contradictions arise between such interpretations, we might call the interpretations "incongruent", rather than dubbing either "false", because using many-valued logic implies that a measured value is a mixture of two extreme possibilities. Using the subset of many-valued logic, fuzzy logic, it can be said that various interpretations can be represented by membership in more than one possible truth sets simultaneously. Fuzzy logic is therefore probably the best mathematical structure for understanding "robust relativism" and has been interpreted by Bart Kosko as philosophically being related to Zen Buddhism.

It was Aristotle who held that relativism implied we should, sticking with appearances only, end up contradicting ourselves somewhere if we could apply all attributes to all ousiai (beings). Aristotle, however, made non-contradiction dependent upon his essentialism. If his essentialism is false, then so too is his ground for disallowing relativism. (Subsequent philosophers have found other reasons for supporting the principle of non-contradiction).[clarification needed]

Beginning with Protagoras and invoking Charles Sanders Peirce, Margolis shows that the historic struggle to discredit relativism is an attempt to impose an unexamined belief in the world's essentially rigid rule-like nature. Plato and Aristotle merely attacked "relationalism"—the doctrine of true-for l or true for k, and the like, where l and k are different speakers or different worlds, or the something similar (Most philosophers would call this position "relativism"). For Margolis, "true" means true; that is, the alethic use of "true" remains untouched. However, in real world contexts, and context is ubiquitous in the real world, we must apply truth values. Here, in epistemic terms, we[who?] might retire "true" tout court as an evaluation and keep "false". The rest of our value-judgements could be graded from "extremely plausible" down to "false". Judgements which on a bivalent logic would be incompatible or contradictory are further seen as "incongruent", though one may well have more weight than the other. In short, relativistic logic is not, or need not be, the bugbear it is often presented to be. It may simply be the best type of logic to apply to certain very uncertain spheres of real experiences in the world (although some sort of logic needs to be applied to make that judgement). Those who swear by bivalent logic might simply be the ultimate keepers of the great fear of the flux.[citation needed]

Richard Rorty
Philosopher Richard Rorty has a somewhat paradoxical role in the debate over relativism: he is criticized for his relativistic views by many commentators, but has always denied that relativism applies to much anybody, being nothing more than a Platonic scarecrow. Rorty claims, rather, that he is a pragmatist, and that to construe pragmatism as relativism is to beg the question.

'"Relativism" is the traditional epithet applied to pragmatism by realists'[36]
'"Relativism" is the view that every belief on a certain topic, or perhaps about any topic, is as good as every other. No one holds this view. Except for the occasional cooperative freshman, one cannot find anybody who says that two incompatible opinions on an important topic are equally good. The philosophers who get called 'relativists' are those who say that the grounds for choosing between such opinions are less algorithmic than had been thought.'[37]
'In short, my strategy for escaping the self-referential difficulties into which "the Relativist" keeps getting himself is to move everything over from epistemology and metaphysics into cultural politics, from claims to knowledge and appeals to self-evidence to suggestions about what we should try.'[38]
Rorty takes a deflationary attitude to truth, believing there is nothing of interest to be said about truth in general, including the contention that it is generally subjective. He also argues that the notion of warrant or justification can do most of the work traditionally assigned to the concept of truth, and that justification is relative; justification is justification to an audience, for Rorty.

In Contingency, Irony, and Solidarity he argues that the debate between so-called relativists and so-called objectivists is beside the point because they don't have enough premises in common for either side to prove anything to the other.

Nalin de Silva
In his book Mage Lokaya (My World), 1986, Nalin de Silva criticized the basis of the established western system of knowledge, and its propagation, which he refers as "domination throughout the world".He explained in this book that mind independent reality is impossible and knowledge is not found but constructed. Further he has introduced and developed the concept of "Constructive Relativism" as the basis on which knowledge is constructed relative to the sense organs, culture and the mind completely based on Avidya.[39]

Postmodernism
The term "relativism" often comes up in debates over postmodernism, poststructuralism and phenomenology. Critics of these perspectives often identify advocates with the label "relativism". For example, the Sapir–Whorf hypothesis is often considered a relativist view because it posits that linguistic categories and structures shape the way people view the world. Stanley Fish has defended postmodernism and relativism.[40]

These perspectives do not strictly count as relativist in the philosophical sense, because they express agnosticism on the nature of reality and make epistemological rather than ontological claims. Nevertheless, the term is useful to differentiate them from realists who believe that the purpose of philosophy, science, or literary critique is to locate externally true meanings. Important philosophers and theorists such as Michel Foucault, Max Stirner, political movements such as post-anarchism or post-Marxism can also be considered as relativist in this sense - though a better term might be social constructivist.

The spread and popularity of this kind of "soft" relativism varies between academic disciplines. It has wide support in anthropology and has a majority following in cultural studies. It also has advocates in political theory and political science, sociology, and continental philosophy (as distinct from Anglo-American analytical philosophy). It has inspired empirical studies of the social construction of meaning such as those associated with labelling theory, which defenders can point to as evidence of the validity of their theories (albeit risking accusations of performative contradiction in the process). Advocates of this kind of relativism often also claim that recent developments in the natural sciences, such as Heisenberg's uncertainty principle, quantum mechanics, chaos theory and complexity theory show that science is now becoming relativistic. However, many scientists who use these methods continue to identify as realist or post-positivist, and some sharply criticize the association.[41][42]

Religious
Jainism
Mahavira (599-527 BC), the 24th Tirthankara of Jainism, developed an early philosophy regarding relativism and subjectivism known as Anekantavada.

Hinduism
Hindu religion has no theological difficulties in accepting degrees of truth in other religions. A Rig Vedic hymn states that "Truth is One, though the sages tell it variously." (Ékam sat vipra bahudā vadanti)

Buddhism
Madhyamaka Buddhism, which forms the basis for many Mahayana Buddhist schools and which was founded by Nagarjuna. Nāgārjuna taught the idea of relativity. In the Ratnāvalī, he gives the example that shortness exists only in relation to the idea of length. The determination of a thing or object is only possible in relation to other things or objects, especially by way of contrast. He held that the relationship between the ideas of "short" and "long" is not due to intrinsic nature (svabhāva). This idea is also found in the Pali Nikāyas and Chinese Āgamas, in which the idea of relativity is expressed similarly: "That which is the element of light ... is seen to exist on account of [in relation to] darkness; that which is the element of good is seen to exist on account of bad; that which is the element of space is seen to exist on account of form."[43]

Madhyamaka Buddhism discerns two levels of truth, absolute and relative. The two truths doctrine states that there is Relative or common-sense truth, which describes our daily experience of a concrete world, and Ultimate truth, which describes the ultimate reality as sunyata, empty of concrete and inherent characteristics. The conventional truth may be interpreted as "obscurative truth" or "that which obscures the true nature" as a result. It is constituted by the appearances of mistaken awareness. Conventional truth would be the appearance that includes a duality of apprehender and apprehended, and objects perceived within that. Ultimate truths, are phenomena free from the duality of apprehender and apprehended.[44]

Sikhism
In Sikhism the Gurus (spiritual teacher ) have propagated the message of "many paths" leading to the one God and ultimate salvation for all souls who tread on the path of righteousness. They have supported the view that proponents of all faiths can, by doing good and virtuous deeds and by remembering the Lord, certainly achieve salvation. The students of the Sikh faith are told to accept all leading faiths as possible vehicles for attaining spiritual enlightenment provided the faithful study, ponder and practice the teachings of their prophets and leaders. The holy book of the Sikhs called the Sri Guru Granth Sahib says: "Do not say that the Vedas, the Bible and the Koran are false. Those who do not contemplate them are false." Guru Granth Sahib page 1350;[45] later stating "The seconds, minutes, and hours, days, weeks and months, and the various seasons originate from the one Sun; O nanak, in just the same way, the many forms originate from the Creator." Guru Granth Sahib page 12,13.

Catholicism
The Catholic Church, especially under John Paul II and Pope Benedict XVI, has identified relativism as one of the most significant problems for faith and morals today.[46]

According to the Church and to some theologians, relativism, as a denial of absolute truth, leads to moral license and a denial of the possibility of sin and of God. Whether moral or epistemological, relativism constitutes a denial of the capacity of the human mind and reason to arrive at truth. Truth, according to Catholic theologians and philosophers (following Aristotle) consists of adequatio rei et intellectus, the correspondence of the mind and reality. Another way of putting it states that the mind has the same form as reality. This means when the form of the computer in front of someone (the type, color, shape, capacity, etc.) is also the form that is in their mind, then what they know is true because their mind corresponds to objective reality.

The denial of an absolute reference, of an axis mundi, denies God, who equates to Absolute Truth, according to these Christian theologians. They link relativism to secularism, an obstruction of religion in human life.

Leo XIII
Pope Leo XIII (1810–1903) was the first known Pope to use the word relativism in the encyclical Humanum genus (1884). Leo XIII condemned Freemasonry and claimed that its philosophical and political system was largely based on relativism.[47]

John Paul II
John Paul II in Veritatis Splendor

As is immediately evident, the crisis of truth is not unconnected with this development. Once the idea of a universal truth about the good, knowable by human reason, is lost, inevitably the notion of conscience also changes. Conscience is no longer considered in its primordial reality as an act of a person's intelligence, the function of which is to apply the universal knowledge of the good in a specific situation and thus to express a judgment about the right conduct to be chosen here and now. Instead, there is a tendency to grant to the individual conscience the prerogative of independently determining the criteria of good and evil and then acting accordingly. Such an outlook is quite congenial to an individualist ethic, wherein each individual is faced with his own truth, different from the truth of others. Taken to its extreme consequences, this individualism leads to a denial of the very idea of human nature.
In Evangelium Vitae (The Gospel of Life), he says:

Freedom negates and destroys itself, and becomes a factor leading to the destruction of others, when it no longer recognizes and respects its essential link with the truth. When freedom, out of a desire to emancipate itself from all forms of tradition and authority, shuts out even the most obvious evidence of an objective and universal truth, which is the foundation of personal and social life, then the person ends up by no longer taking as the sole and indisputable point of reference for his own choices the truth about good and evil, but only his subjective and changeable opinion or, indeed, his selfish interest and whim.
Benedict XVI
In April 2005, in his homily[48] during Mass prior to the conclave which would elect him as Pope, then Cardinal Joseph Ratzinger talked about the world "moving towards a dictatorship of relativism":

How many winds of doctrine we have known in recent decades, how many ideological currents, how many ways of thinking. The small boat of thought of many Christians has often been tossed about by these waves – thrown from one extreme to the other: from Marxism to liberalism, even to libertinism; from collectivism to radical individualism; from atheism to a vague religious mysticism; from agnosticism to syncretism, and so forth. Every day new sects are created and what Saint Paul says about human trickery comes true, with cunning which tries to draw those into error (cf Ephesians 4, 14). Having a clear Faith, based on the Creed of the Church, is often labeled today as a fundamentalism. Whereas, relativism, which is letting oneself be tossed and "swept along by every wind of teaching", looks like the only attitude acceptable to today's standards. We are moving towards a dictatorship of relativism which does not recognize anything as certain and which has as its highest goal one's own ego and one's own desires. However, we have a different goal: the Son of God, true man. He is the measure of true humanism. Being an "Adult" means having a faith which does not follow the waves of today's fashions or the latest novelties. A faith which is deeply rooted in friendship with Christ is adult and mature. It is this friendship which opens us up to all that is good and gives us the knowledge to judge true from false, and deceit from truth.
On June 6, 2005, Pope Benedict XVI told educators:

Today, a particularly insidious obstacle to the task of education is the massive presence in our society and culture of that relativism which, recognizing nothing as definitive, leaves as the ultimate criterion only the self with its desires. And under the semblance of freedom it becomes a prison for each one, for it separates people from one another, locking each person into his or her own 'ego'.[49]
Then during the World Youth Day in August 2005, he also traced to relativism the problems produced by the communist and sexual revolutions, and provided a counter-counter argument.[50]

In the last century we experienced revolutions with a common programme–expecting nothing more from God, they assumed total responsibility for the cause of the world in order to change it. And this, as we saw, meant that a human and partial point of view was always taken as an absolute guiding principle. Absolutizing what is not absolute but relative is called totalitarianism. It does not liberate man, but takes away his dignity and enslaves him. It is not ideologies that save the world, but only a return to the living God, our Creator, the Guarantor of our freedom, the Guarantor of what is really good and true.
See also
Anekantavada
Anthropology
Baháʼí Faith and the unity of religion
Degree of truth
Factual relativism
False dilemma
Fuzzy logic
Graded absolutism
Heraclitus
John Hick
Moral relativism
Multi-valued logic
Normative ethics
Objectivism
Perspectivism
Philosophical realism
Pluralism (philosophy)
Polylogism
Principle of Bivalence
Propositional logic
Protagoras
Relationism
Religiocentrism
Science Wars
Scientism
Social constructionism
Subjective logic
Subjectivism
Two truths doctrine
Worldview





Natural law
https://en.wikipedia.org/wiki/Natural_law
Natural law[1] (Latin: ius naturale, lex naturalis) is a system of law based on a close observation of human nature, and based on values intrinsic to human nature that can be deduced and applied independent of positive law (the enacted laws of a state or society).[2] According to natural law theory, all people have inherent rights, conferred not by act of legislation but by "God, nature, or reason."[3] Natural law theory can also refer to "theories of ethics, theories of politics, theories of civil law, and theories of religious morality."[4]

Natural law has roots in Western philosophy. In the Western tradition it was anticipated by the Pre-Socratics, for example in their search for principles that governed the cosmos and human beings. The concept of natural law was documented in ancient Greek philosophy, including Aristotle,[5] and was referred to in ancient Roman philosophy by Cicero. References to it are also to be found in the Old and New Testaments of the Bible, and were later expounded upon in the Middle Ages by Christian philosophers such as Albert the Great and Thomas Aquinas. The School of Salamanca made notable contributions during the Renaissance.

Modern natural law theories were greatly developed in the Age of Enlightenment, combining inspiration from Roman law with philosophies like social contract theory. It was used in challenging theory of the divine right of kings, and became an alternative justification for the establishment of a social contract, positive law, and government—and thus legal rights—in the form of classical republicanism. In the early decades of the 21st century, the concept of natural law is closely related to the concept of natural rights. Indeed, many philosophers, jurists and scholars use natural law synonymously with natural rights (Latin: ius naturale), or natural justice,[6] though others distinguish between natural law and natural right.[7]

Because of the intersection between natural law and natural rights, natural law has been claimed or attributed as a key component in the Declaration of Independence (1776) of the United States, the Declaration of the Rights of Man and of the Citizen (1789) of France, the Universal Declaration of Human Rights (1948) of the United Nations, as well as the European Convention on Human Rights (1953) of the Council of Europe.


Contents
1	History
1.1	Ancient Greece
1.1.1	Plato
1.1.2	Aristotle
1.1.3	Stoic natural law
1.2	Ancient Rome
1.3	Christianity
1.3.1	Catholic natural law jurisprudence
1.4	Islamic natural law
1.5	Brehon law
1.6	English jurisprudence
1.6.1	Hobbes
1.6.2	Cumberland's rebuttal of Hobbes
1.6.3	American jurisprudence
1.7	European liberal natural law
2	Contemporary jurisprudence
3	See also
4	Notes
5	References
6	External links
History
Ancient Greece
Plato
Although Plato did not have an explicit theory of natural law (he rarely used the phrase 'natural law' except in Gorgias 484 and Timaeus 83e), his concept of nature, according to John Wild, contains some of the elements found in many natural law theories.[8] According to Plato, we live in an orderly universe.[9] The basis of this orderly universe or nature are the forms, most fundamentally the Form of the Good, which Plato describes as "the brightest region of Being."[10] The Form of the Good is the cause of all things, and when it is seen it leads a person to act wisely.[11] In the Symposium, the Good is closely identified with the Beautiful.[12] In the Symposium, Plato describes how the experience of the Beautiful by Socrates enabled him to resist the temptations of wealth and sex.[13] In the Republic, the ideal community is "a city which would be established in accordance with nature."[14]

Aristotle

Plato (left) and Aristotle (right), a detail of The School of Athens, a fresco by Raphael.
Greek philosophy emphasized the distinction between "nature" (physis, φúσις) on the one hand and "law," "custom," or "convention" (nomos, νóμος) on the other.[citation needed] What the law commanded would be expected to vary from place to place, but what was "by nature" should be the same everywhere. A "law of nature" would therefore have the flavor more of a paradox than something that obviously existed.[7] Against the conventionalism that the distinction between nature and custom could engender, Socrates and his philosophic heirs, Plato and Aristotle, posited the existence of natural justice or natural right (dikaion physikon, δίκαιον φυσικόν, Latin ius naturale). Of these, Aristotle is often said to be the father of natural law.[6]

Aristotle's association with natural law may be due to the interpretation given to his works by Thomas Aquinas.[15] But whether Aquinas correctly read Aristotle is in dispute. According to some, Aquinas conflates natural law and natural right, the latter of which Aristotle posits in Book V of the Nicomachean Ethics (Book IV of the Eudemian Ethics). According to this interpretation, Aquinas's influence was such as to affect a number of early translations of these passages in an unfortunate manner, though more recent translations render those more literally.[16] Aristotle notes that natural justice is a species of political justice, specifically the scheme of distributive and corrective justice that would be established under the best political community; were this to take the form of law, this could be called a natural law, though Aristotle does not discuss this and suggests in the Politics that the best regime may not rule by law at all.[17]

The best evidence of Aristotle's having thought there was a natural law comes from the Rhetoric, where Aristotle notes that, aside from the "particular" laws that each people has set up for itself, there is a "common" law that is according to nature.[18] Specifically, he quotes Sophocles and Empedocles:

Universal law is the law of Nature. For there really is, as every one to some extent divines, a natural justice and injustice that is binding on all men, even on those who have no association or covenant with each other. It is this that Sophocles' Antigone clearly means when she says that the burial of Polyneices was a just act in spite of the prohibition: she means that it was just by nature:

"Not of to-day or yesterday it is,
But lives eternal: none can date its birth."
And so Empedocles, when he bids us kill no living creature, he is saying that to do this is not just for some people, while unjust for others:

"Nay, but, an all-embracing law, through the realms of the sky
Unbroken it stretcheth, and over the earth's immensity."[19]
Some critics believe that the context of this remark suggests only that Aristotle advised that it could be rhetorically advantageous to appeal to such a law, especially when the "particular" law of one's own city was averse to the case being made, not that there actually was such a law;[6] Moreover, they claim that Aristotle considered two of the three candidates for a universally valid, natural law provided in this passage to be wrong.[7] Aristotle's paternity of natural law tradition is consequently disputed.

Stoic natural law
The development of this tradition of natural justice into one of natural law is usually attributed to the Stoics. The rise of natural law as a universal system coincided with the rise of large empires and kingdoms in the Greek world.[20][full citation needed] Whereas the "higher" law that Aristotle suggested one could appeal to was emphatically natural, in contradistinction to being the result of divine positive legislation, the Stoic natural law was indifferent to either the natural or divine source of the law: the Stoics asserted the existence of a rational and purposeful order to the universe (a divine or eternal law), and the means by which a rational being lived in accordance with this order was the natural law, which inspired actions that accorded with virtue.[7]

As the English historian A. J. Carlyle (1861–1943) notes:

There is no change in political theory so startling in its completeness as the change from the theory of Aristotle to the later philosophical view represented by Cicero and Seneca ... We think that this cannot be better exemplified than with regard to the theory of the equality of human nature."[21] Charles H. McIlwain likewise observes that "the idea of the equality of men is the most profound contribution of the Stoics to political thought" and that "its greatest influence is in the changed conception of law that in part resulted from it.[22]

Natural law first appeared among the stoics who believed that God is everywhere and in everyone (see classical pantheism). According to this belief, within humans there is a "divine spark" which helps them to live in accordance with nature. The stoics felt that there was a way in which the universe had been designed, and that natural law helped us to harmonise with this.

Ancient Rome

Marcus Tullius Cicero
Cicero wrote in his De Legibus that both justice and law originate from what nature has given to humanity, from what the human mind embraces, from the function of humanity, and from what serves to unite humanity.[23] For Cicero, natural law obliges us to contribute to the general good of the larger society.[24] The purpose of positive laws is to provide for "the safety of citizens, the preservation of states, and the tranquility and happiness of human life." In this view, "wicked and unjust statutes" are "anything but 'laws,'" because "in the very definition of the term 'law' there inheres the idea and principle of choosing what is just and true."[25] Law, for Cicero, "ought to be a reformer of vice and an incentive to virtue."[26] Cicero expressed the view that "the virtues which we ought to cultivate, always tend to our own happiness, and that the best means of promoting them consists in living with men in that perfect union and charity which are cemented by mutual benefits."[24]

In De Re Publica, he writes:

There is indeed a law, right reason, which is in accordance with nature ; existing in all, unchangeable, eternal. Commanding us to do what is right, forbidding us to do what is wrong. It has dominion over good men, but possesses no influence over bad ones. No other law can be substituted for it, no part of it can be taken away, nor can it be abrogated altogether. Neither the people or the senate can absolve from it. It is not one thing at Rome, and another thing at Athens : one thing to-day, and another thing to-morrow ; but it is eternal and immutable for all nations and for all time.[27]

Cicero influenced the discussion of natural law for many centuries to come, up through the era of the American Revolution. The jurisprudence of the Roman Empire was rooted in Cicero, who held "an extraordinary grip ... upon the imagination of posterity" as "the medium for the propagation of those ideas which informed the law and institutions of the empire."[28] Cicero's conception of natural law "found its way to later centuries notably through the writings of Saint Isidore of Seville and the Decretum of Gratian."[29] Thomas Aquinas, in his summary of medieval natural law, quoted Cicero's statement that "nature" and "custom" were the sources of a society's laws.[30]

The Renaissance Italian historian Leonardo Bruni praised Cicero as the person "who carried philosophy from Greece to Italy, and nourished it with the golden river of his eloquence."[31] The legal culture of Elizabethan England, exemplified by Sir Edward Coke, was "steeped in Ciceronian rhetoric."[32] The Scottish moral philosopher Francis Hutcheson, as a student at Glasgow, "was attracted most by Cicero, for whom he always professed the greatest admiration."[33] More generally in eighteenth-century Great Britain, Cicero's name was a household word among educated people.[33] Likewise, "in the admiration of early Americans Cicero took pride of place as orator, political theorist, stylist, and moralist."[34]

The British polemicist Thomas Gordon "incorporated Cicero into the radical ideological tradition that travelled from the mother country to the colonies in the course of the eighteenth century and decisively shaped early American political culture."[35] Cicero's description of the immutable, eternal, and universal natural law was quoted by Burlamaqui[36] and later by the American revolutionary legal scholar James Wilson.[37] Cicero became John Adams's "foremost model of public service, republican virtue, and forensic eloquence."[38] Adams wrote of Cicero that "as all the ages of the world have not produced a greater statesman and philosopher united in the same character, his authority should have great weight."[39] Thomas Jefferson "first encountered Cicero as a schoolboy while learning Latin, and continued to read his letters and discourses throughout his life. He admired him as a patriot, valued his opinions as a moral philosopher, and there is little doubt that he looked upon Cicero's life, with his love of study and aristocratic country life, as a model for his own."[40] Jefferson described Cicero as "the father of eloquence and philosophy."[41]

Christianity
The New Testament carries a further exposition on the Abrahamic dialogue and links to the later Greek exposition on the subject, when Paul's Epistle to the Romans states: "For when the Gentiles, which have not the law, do by nature the things contained in the law, these, having not the law, are a law unto themselves: Which shew the work of the law written in their hearts, their conscience also bearing witness, and their thoughts the meanwhile accusing or else excusing one another."[42] The intellectual historian A. J. Carlyle has commented on this passage, "There can be little doubt that St Paul's words imply some conception analogous to the 'natural law' in Cicero, a law written in men's hearts, recognized by man's reason, a law distinct from the positive law of any State, or from what St Paul recognized as the revealed law of God. It is in this sense that St Paul's words are taken by the Fathers of the fourth and fifth centuries like St Hilary of Poitiers, St Ambrose, and St Augustine, and there seems no reason to doubt the correctness of their interpretation."[43]

Because of its origins in the Old Testament, early Church Fathers, especially those in the West, saw natural law as part of the natural foundation of Christianity. The most notable among these was Augustine of Hippo, who equated natural law with humanity's prelapsarian state; as such, a life according to unbroken human nature was no longer possible and persons needed instead to seek healing and salvation through the divine law and grace of Jesus Christ.

The natural law was inherently teleological, however, it is most assuredly not deontological. For Christians, natural law is how human beings manifest the divine image in their life. This mimicry of God's own life is impossible to accomplish except by means of the power of grace. Thus, whereas deontological systems merely require certain duties be performed, Christianity explicitly states that no one can, in fact, perform any duties if grace is lacking. For Christians, natural law flows not from divine commands, but from the fact that humanity is made in God's image, humanity is empowered by God's grace. Living the natural law is how humanity displays the gifts of life and grace, the gifts of all that is good. Consequences are in God's hands, consequences are generally not within human control, thus in natural law, actions are judged by three things: (1) the person's intent, (2) the circumstances of the act and (3) the nature of the act. The apparent good or evil consequence resulting from the moral act is not relevant to the act itself. The specific content of the natural law is therefore determined by how each person's acts mirror God's internal life of love. Insofar as one lives the natural law, temporal satisfaction may or may not be attained, but salvation will be attained. The state, in being bound by the natural law, is conceived as an institution whose purpose is to assist in bringing its subjects to true happiness. True happiness derives from living in harmony with the mind of God as an image of the living God.

After the Protestant Reformation, some Protestant denominations maintained parts of the Catholic concept of natural law. The English theologian Richard Hooker from the Church of England adapted Thomistic notions of natural law to Anglicanism five principles: to live, to learn, to reproduce, to worship God, and to live in an ordered society.[44][irrelevant citation]

Catholic natural law jurisprudence
See also: Treatise on Law and Determinatio

Albertus Magnus, O.P. (c. 1200–1280).

Thomas Aquinas (1225–1274).
Emblem of the Papacy SE.svg
Part of a series on
Catholic philosophy
  
Aquinas, Scotus, and Ockham
Ethics
Cardinal virtuesJust priceJust warProbabilismNatural lawPersonalismSocial teachingVirtue ethics
Schools
AugustinianismCartesianismMolinismOccamismSalamancaScholasticism Neo-scholasticismScotismThomism
Philosophers
Ancient
Postclassical
Modern
Contemporary
046CupolaSPietro.jpg Catholicism portal

Socrates.png Philosophy portal
vte
In the twelfth century, Gratian equated the natural law with divine law. Albertus Magnus would address the subject a century later, and his pupil, St. Thomas Aquinas, in his Summa Theologica I-II qq. 90–106, restored Natural Law to its independent state, asserting natural law as the rational creature's participation in the eternal law.[45] Yet, since human reason could not fully comprehend the Eternal law, it needed to be supplemented by revealed Divine law. (See also Biblical law in Christianity.) Meanwhile, Aquinas taught that all human or positive laws were to be judged by their conformity to the natural law. An unjust law is not a law, in the full sense of the word. It retains merely the 'appearance' of law insofar as it is duly constituted and enforced in the same way a just law is, but is itself a 'perversion of law.'[46] At this point, the natural law was not only used to pass judgment on the moral worth of various laws, but also to determine what those laws meant in the first place. This principle laid the seed for possible societal tension with reference to tyrants.[47]

The Catholic Church holds the view of natural law introduced by Albertus Magnus and elaborated by Thomas Aquinas,[48] particularly in his Summa Theologiae, and often as filtered through the School of Salamanca. This view is also shared by some Protestants,[49] and was delineated by Anglican writer C. S. Lewis in his works Mere Christianity and The Abolition of Man.[50]

The Catholic Church understands human beings to consist of body and mind, the physical and the non-physical (or soul perhaps), and that the two are inextricably linked.[51] Humans are capable of discerning the difference between good and evil because they have a conscience.[52] There are many manifestations of the good that we can pursue. Some, like procreation, are common to other animals, while others, like the pursuit of truth, are inclinations peculiar to the capacities of human beings.[53]

To know what is right, one must use one's reason and apply it to Thomas Aquinas' precepts. This reason is believed to be embodied, in its most abstract form, in the concept of a primary precept: "Good is to be sought, evil avoided."[54] St. Thomas explains that:

there belongs to the natural law, first, certain most general precepts, that are known to all; and secondly, certain secondary and more detailed precepts, which are, as it were, conclusions following closely from first principles. As to those general principles, the natural law, in the abstract, can nowise be blotted out from men's hearts. But it is blotted out in the case of a particular action, insofar as reason is hindered from applying the general principle to a particular point of practice, on account of concupiscence or some other passion, as stated above (77, 2). But as to the other, i.e., the secondary precepts, the natural law can be blotted out from the human heart, either by evil persuasions, just as in speculative matters errors occur in respect of necessary conclusions; or by vicious customs and corrupt habits, as among some men, theft, and even unnatural vices, as the Apostle states (Rm. i), were not esteemed sinful.[55]

However, while the primary and immediate precepts cannot be "blotted out," the secondary precepts can be. Therefore, for a deontological ethical theory they are open to a surprisingly large amount of interpretation and flexibility. Any rule that helps humanity to live up to the primary or subsidiary precepts can be a secondary precept, for example:

Drunkenness is wrong because it injures one's health, and worse, destroys one's ability to reason, which is fundamental to humans as rational animals (i.e., does not support self-preservation).
Theft is wrong because it destroys social relations, and humans are by nature social animals (i.e., does not support the subsidiary precept of living in society).
Natural moral law is concerned with both exterior and interior acts, also known as action and motive. Simply doing the right thing is not enough; to be truly moral one's motive must be right as well. For example, helping an old lady across the road (good exterior act) to impress someone (bad interior act) is wrong. However, good intentions don't always lead to good actions. The motive must coincide with the cardinal or theological virtues. Cardinal virtues are acquired through reason applied to nature; they are:

Prudence
Justice
Temperance
Fortitude
The theological virtues are:

Faith
Hope
Charity
According to Aquinas, to lack any of these virtues is to lack the ability to make a moral choice. For example, consider a person who possesses the virtues of justice, prudence, and fortitude, yet lacks temperance. Due to their lack of self-control and desire for pleasure, despite their good intentions, they will find themself swaying from the moral path.

In the 16th century, the School of Salamanca (Francisco Suárez, Francisco de Vitoria, etc.) further developed a philosophy of natural law.

The Catechism of the Catholic Church considers natural law a dogma. The Church considers that: "The natural law expresses the original moral sense which enables man to discern by reason the good and the evil, the truth and the lie: 'The natural law is written and engraved in the soul of each and every man, because it is human reason ordaining him to do good and forbidding him to sin . . . But this command of human reason would not have the force of law if it were not the voice and interpreter of a higher reason to which our spirit and our freedom must be submitted.'"[56] The natural law consists, for the Catholic Church, of one supreme and universal principle from which are derived all our natural moral obligations or duties. Thomas Aquina resumes the various ideas of Catholic moral thinkers about what this principle is: since good is what primarily falls under the apprehension of the practical reason, the supreme principle of moral action must have the good as its central idea, and therefore the supreme principle is that good is to be done and evil avoided.[57]

Islamic natural law
Further information: Fitra
Abū Rayhān al-Bīrūnī, a medieval scholar, scientist, and polymath, understood "natural law" as the survival of the fittest. He argued that the antagonism between human beings can be overcome only through a divine law, which he believed to have been sent through prophets. This is also said to be the general position of the Ashari school, the largest school of Sunni theology,[58] as well as Ibn Hazm. Conceptualized thus, all "laws" are viewed as originating from subjective attitudes actuated by cultural conceptions and individual preferences, and so the notion of "divine revelation" is justified as some kind of "divine intervention" that replaces human positive laws, which are criticized as being relative, with a single divine positive law. This, however, also entails that anything may be included in "the divine law" as it would in "human laws," but unlike the latter, "God's law" is seen as binding regardless of the nature of the commands by virtue of "God's might": since God is not subject to human laws and conventions, He may command what He wills just as He may do what He wills.

The Maturidi school, the second-largest school of Sunni theology, as well as the Mu'tazilites, posits the existence of a form of natural, or "objective," law that humans can comprehend. Abu Mansur al-Maturidi stated that the human mind could know of the existence of God and the major forms of "good" and "evil" without the help of revelation. Al-Maturidi gives the example of stealing, which, he believes, is known to be evil by reason alone due to people's working hard for their property. Similarly, killing, fornication, and drunkenness are all "discernible evils" that the human mind could know of according to al-Maturidi. Likewise, Averroes (Ibn Rushd), in his treatise on Justice and Jihad and his commentary on Plato's Republic, writes that the human mind can know of the unlawfulness of killing and stealing and thus of the five maqasid or higher intents of the Islamic sharia, or the protection of religion, life, property, offspring, and reason. His Aristotelian commentaries also influenced the subsequent Averroist movement and the writings of Thomas Aquinas.[59]

Ibn Qayyim Al-Jawziyya also posited that human reason could discern between "great sins" and "good deeds."[citation needed] Nonetheless, he, like Ibn Taymiyah, emphasized the authority of "divine revelation" and asserted that it must be followed even if it "seems" to contradict human reason, though he stressed that most, if not all, of "God's commands" are both sensible (that is, rationalizable) and advantageous to humans in both "this life" and "the hereafter."

The concept of Istislah in Islamic law bears some similarities to the natural law tradition in the West, as exemplified by Thomas Aquinas. However, whereas natural law deems good what is self-evidently good, according as it tends towards the fulfillment of the person, istislah typically calls good whatever is related to one of five "basic goods." Many jurists, theologians, and philosophers attempted to abstract these "basic and fundamental goods" from legal precepts. Al-Ghazali, for instance, defined them as religion, life, reason, lineage, and property, while others add "honor" also.

Brehon law
Early Irish law, An Senchus Mor (The Great Tradition) mentions in a number of places recht aicned or natural law. This is a concept predating European legal theory, and reflects a type of law that is universal and may be determined by reason and observation of natural action. Neil McLeod identifies concepts that law must accord with: fír (truth) and dliged (right or entitlement). These two terms occur frequently, though Irish law never strictly defines them. Similarly, the term córus (law in accordance with proper order) occurs in some places, and even in the titles of certain texts. These were two very real concepts to the jurists and the value of a given judgment with respect to them was apparently ascertainable. McLeod has also suggested that most of the specific laws mentioned have passed the test of time and thus their truth has been confirmed, while other provisions are justified in other ways because they are younger and have not been tested over time[60] The laws were written in the oldest dialect of the Irish language, called Bérla Féini [Bairla-faina], which even at the time was so difficult that persons about to become brehons had to be specially instructed in it, the length of time from beginning to becoming a learned Brehon was usually 20 years. Although under the law any third person could fulfill the duty if both parties agreed, and both were sane.[61] It has been included in an Ethno-Celtic breakaway subculture, as it has religious undertones and freedom of religious expression allows it to once again be used as a valid system in Western Europe.[62]

English jurisprudence
Heinrich A. Rommen remarked upon "the tenacity with which the spirit of the English common law retained the conceptions of natural law and equity which it had assimilated during the Catholic Middle Ages, thanks especially to the influence of Henry de Bracton (d. 1268) and Sir John Fortescue (d. cir. 1476)."[63] Bracton's translator notes that Bracton "was a trained jurist with the principles and distinctions of Roman jurisprudence firmly in mind"; but Bracton adapted such principles to English purposes rather than copying slavishly.[64] In particular, Bracton turned the imperial Roman maxim that "the will of the prince is law" on its head, insisting that the king is under the law.[65] The legal historian Charles F. Mullett has noted Bracton's "ethical definition of law, his recognition of justice, and finally his devotion to natural rights."[66] Bracton considered justice to be the "fountain-head" from which "all rights arise."[67] For his definition of justice, Bracton quoted the twelfth-century Italian jurist Azo: "'Justice is the constant and unfailing will to give to each his right.'"[68] Bracton's work was the second legal treatise studied by the young apprentice lawyer Thomas Jefferson.[69]

Fortescue stressed "the supreme importance of the law of God and of nature" in works that "profoundly influenced the course of legal development in the following centuries."[70] The legal scholar Ellis Sandoz has noted that "the historically ancient and the ontologically higher law—eternal, divine, natural—are woven together to compose a single harmonious texture in Fortescue's account of English law."[71] As the legal historian Norman Doe explains: "Fortescue follows the general pattern set by Aquinas. The objective of every legislator is to dispose people to virtue. It is by means of law that this is accomplished. Fortescue's definition of law (also found in Accursius and Bracton), after all, was 'a sacred sanction commanding what is virtuous [honesta] and forbidding the contrary.'"[72] Fortescue cited the great Italian Leonardo Bruni for his statement that "virtue alone produces happiness."[73]

Christopher St. Germain's The Doctor and Student was a classic of English jurisprudence,[74] and it was thoroughly annotated by Thomas Jefferson.[75] St. Germain informs his readers that English lawyers generally don't use the phrase "law of nature," but rather use "reason" as the preferred synonym.[76][77] Norman Doe notes that St. Germain's view "is essentially Thomist," quoting Thomas Aquinas's definition of law as "an ordinance of reason made for the common good by him who has charge of the community, and promulgated."[78]

Sir Edward Coke was the preeminent jurist of his time.[79] Coke's preeminence extended across the ocean: "For the American revolutionary leaders, 'law' meant Sir Edward Coke's custom and right reason."[80][81] Coke defined law as "perfect reason, which commands those things that are proper and necessary and which prohibits contrary things."[82] For Coke, human nature determined the purpose of law; and law was superior to any one person's reason or will.[83] Coke's discussion of natural law appears in his report of Calvin's Case (1608): "The law of nature is that which God at the time of creation of the nature of man infused into his heart, for his preservation and direction." In this case the judges found that "the ligeance or faith of the subject is due unto the King by the law of nature: secondly, that the law of nature is part of the law of England: thirdly, that the law of nature was before any judicial or municipal law: fourthly, that the law of nature is immutable." To support these findings, the assembled judges (as reported by Coke, who was one of them) cited as authorities Aristotle, Cicero, and the Apostle Paul; as well as Bracton, Fortescue, and St. Germain.[84]

After Coke, the most famous common law jurist of the seventeenth century is Sir Matthew Hale. Hale wrote a treatise on natural law that circulated among English lawyers in the eighteenth century and survives in three manuscript copies.[85] This natural-law treatise has been published as Of the Law of Nature (2015).[86] Hale's definition of the natural law reads: "It is the Law of Almighty God given by him to Man with his Nature discovering the morall good and moral evill of Moral Actions, commanding the former, and forbidding the latter by the secret voice or dictate of his implanted nature, his reason, and his concience."[87] He viewed natural law as antecedent, preparatory, and subsequent to civil government,[88] and stated that human law "cannot forbid what the Law of Nature injoins, nor Command what the Law of Nature prohibits."[89] He cited as authorities Plato, Aristotle, Cicero, Seneca, Epictetus, and the Apostle Paul.[90] He was critical of Hobbes's reduction of natural law to self-preservation and Hobbes's account of the state of nature,[91] but drew positively on Hugo Grotius's De jure belli ac pacis, Francisco Suárez's Tractatus de legibus ac deo legislatore, and John Selden's De jure naturali et gentium juxta disciplinam Ebraeorum.[92]

As early as the thirteenth century, it was held that "the law of nature...is the ground of all laws"[93] and by the Chancellor and Judges that "it is required by the law of nature that every person, before he can be punish'd, ought to be present; and if absent by contumacy, he ought to be summoned and make default."[94][95] Further, in 1824, we find it held that "proceedings in our Courts are founded upon the law of England, and that law is again founded upon the law of nature and the revealed law of God. If the right sought to be enforced is inconsistent with either of these, the English municipal courts cannot recognize it."[96]

Hobbes

Thomas Hobbes
By the 17th century, the medieval teleological view came under intense criticism from some quarters. Thomas Hobbes instead founded a contractarian theory of legal positivism on what all men could agree upon: what they sought (happiness) was subject to contention, but a broad consensus could form around what they feared (violent death at the hands of another). The natural law was how a rational human being, seeking to survive and prosper, would act. Natural law, therefore, was discovered by considering humankind's natural rights, whereas previously it could be said that natural rights were discovered by considering the natural law. In Hobbes' opinion, the only way natural law could prevail was for men to submit to the commands of the sovereign. Because the ultimate source of law now comes from the sovereign, and the sovereign's decisions need not be grounded in morality, legal positivism is born. Jeremy Bentham's modifications on legal positivism further developed the theory.

As used by Thomas Hobbes in his treatises Leviathan and De Cive, natural law is "a precept, or general rule, found out by reason, by which a man is forbidden to do that which is destructive of his life, or takes away the means of preserving the same; and to omit that by which he thinks it may best be preserved."[97]

According to Hobbes, there are nineteen Laws. The first two are expounded in chapter XIV of Leviathan ("of the first and second natural laws; and of contracts"); the others in chapter XV ("of other laws of nature").

The first law of nature is that every man ought to endeavour peace, as far as he has hope of obtaining it; and when he cannot obtain it, that he may seek and use all helps and advantages of war.
The second law of nature is that a man be willing, when others are so too, as far forth, as for peace, and defence of himself he shall think it necessary, to lay down this right to all things; and be contented with so much liberty against other men, as he would allow other men against himself.
The third law is that men perform their covenants made. In this law of nature consisteth the fountain and original of justice... when a covenant is made, then to break it is unjust and the definition of injustice is no other than the not performance of covenant. And whatsoever is not unjust is just.
The fourth law is that a man which receiveth benefit from another of mere grace, endeavour that he which giveth it, have no reasonable cause to repent him of his good will. Breach of this law is called ingratitude.
The fifth law is complaisance: that every man strive to accommodate himself to the rest. The observers of this law may be called sociable; the contrary, stubborn, insociable, forward, intractable.
The sixth law is that upon caution of the future time, a man ought to pardon the offences past of them that repenting, desire it.
The seventh law is that in revenges, men look not at the greatness of the evil past, but the greatness of the good to follow.
The eighth law is that no man by deed, word, countenance, or gesture, declare hatred or contempt of another. The breach of which law is commonly called contumely.
The ninth law is that every man acknowledge another for his equal by nature. The breach of this precept is pride.
The tenth law is that at the entrance into the conditions of peace, no man require to reserve to himself any right, which he is not content should be reserved to every one of the rest. The breach of this precept is arrogance, and observers of the precept are called modest.
The eleventh law is that if a man be trusted to judge between man and man, that he deal equally between them.
The twelfth law is that such things as cannot be divided, be enjoyed in common, if it can be; and if the quantity of the thing permit, without stint; otherwise proportionably to the number of them that have right.
The thirteenth law is the entire right, or else...the first possession (in the case of alternating use), of a thing that can neither be divided nor enjoyed in common should be determined by lottery.
The fourteenth law is that those things which cannot be enjoyed in common, nor divided, ought to be adjudged to the first possessor; and in some cases to the first born, as acquired by lot.
The fifteenth law is that all men that mediate peace be allowed safe conduct.
The sixteenth law is that they that are at controversie, submit their Right to the judgement of an Arbitrator.
The seventeenth law is that no man is a fit Arbitrator in his own cause.
The eighteenth law is that no man should serve as a judge in a case if greater profit, or honour, or pleasure apparently ariseth [for him] out of the victory of one party, than of the other.
The nineteenth law is that in a disagreement of fact, the judge should not give more weight to the testimony of one party than another, and absent other evidence, should give credit to the testimony of other witnesses.
Hobbes's philosophy includes a frontal assault on the founding principles of the earlier natural legal tradition,[98] disregarding the traditional association of virtue with happiness,[99] and likewise re-defining "law" to remove any notion of the promotion of the common good.[100] Hobbes has no use for Aristotle's association of nature with human perfection, inverting Aristotle's use of the word "nature." Hobbes posits a primitive, unconnected state of nature in which men, having a "natural proclivity...to hurt each other" also have "a Right to every thing, even to one anothers body";[101] and "nothing can be Unjust" in this "warre of every man against every man" in which human life is "solitary, poore, nasty, brutish, and short."[102] Rejecting Cicero's view that people join in society primarily through "a certain social spirit which nature has implanted in man,"[103] Hobbes declares that men join in society simply for the purpose of "getting themselves out from that miserable condition of Warre, which is necessarily consequent...to the naturall Passions of men, when there is no visible Power to keep them in awe."[104] As part of his campaign against the classical idea of natural human sociability, Hobbes inverts that fundamental natural legal maxim, the Golden Rule. Hobbes's version is "Do not that to another, which thou wouldst not have done to thy selfe."[105]

Cumberland's rebuttal of Hobbes
The English cleric Richard Cumberland wrote a lengthy and influential attack on Hobbes's depiction of individual self-interest as the essential feature of human motivation. Historian Knud Haakonssen has noted that in the eighteenth century, Cumberland was commonly placed alongside Alberico Gentili, Hugo Grotius and Samuel Pufendorf "in the triumvirate of seventeenth-century founders of the 'modern' school of natural law."[106] The eighteenth-century philosophers Shaftesbury and Hutcheson "were obviously inspired in part by Cumberland."[107] Historian Jon Parkin likewise describes Cumberland's work as "one of the most important works of ethical and political theory of the seventeenth century."[108] Parkin observes that much of Cumberland's material "is derived from Roman Stoicism, particularly from the work of Cicero, as "Cumberland deliberately cast his engagement with Hobbes in the mould of Cicero's debate between the Stoics, who believed that nature could provide an objective morality, and Epicureans, who argued that morality was human, conventional and self-interested."[109] In doing so, Cumberland de-emphasized the overlay of Christian dogma (in particular, the doctrine of "original sin" and the corresponding presumption that humans are incapable of "perfecting" themselves without divine intervention) that had accreted to natural law in the Middle Ages.

By way of contrast to Hobbes's multiplicity of laws, Cumberland states in the very first sentence of his Treatise of the Laws of Nature that "all the Laws of Nature are reduc'd to that one, of Benevolence toward all Rationals."[110] He later clarifies: "By the name Rationals I beg leave to understand, as well God as Man; and I do it upon the Authority of Cicero." Cumberland argues that the mature development ("perfection") of human nature involves the individual human willing and acting for the common good.[111] For Cumberland, human interdependence precludes Hobbes's natural right of each individual to wage war against all the rest for personal survival. However, Haakonssen warns against reading Cumberland as a proponent of "enlightened self-interest." Rather, the "proper moral love of humanity" is "a disinterested love of God through love of humanity in ourselves as well as others."[112] Cumberland concludes that actions "principally conducive to our Happiness" are those that promote "the Honour and Glory of God" and also "Charity and Justice towards men."[113] Cumberland emphasizes that desiring the well-being of our fellow humans is essential to the "pursuit of our own Happiness."[114] He cites "reason" as the authority for his conclusion that happiness consists in "the most extensive Benevolence," but he also mentions as "Essential Ingredients of Happiness" the "Benevolent Affections," meaning "Love and Benevolence towards others," as well as "that Joy, which arises from their Happiness."[115]

American jurisprudence
The U.S. Declaration of Independence states that it has become necessary for the people of the United States to assume "the separate and equal station to which the Laws of Nature and of Nature's God entitle them." Some early American lawyers and judges perceived natural law as too tenuous, amorphous, and evanescent a legal basis for grounding concrete rights and governmental limitations.[116] Natural law did, however, serve as authority for legal claims and rights in some judicial decisions, legislative acts, and legal pronouncements.[117] Robert Lowry Clinton argues that the U.S. Constitution rests on a common law foundation and the common law, in turn, rests on a classical natural law foundation.[118]

European liberal natural law

Dr Alberico Gentili, the founder of the science of international law.
Liberal natural law grew out of the medieval Christian natural law theories and out of Hobbes' revision of natural law, sometimes in an uneasy balance of the two.

Sir Alberico Gentili and Hugo Grotius based their philosophies of international law on natural law. In particular, Grotius's writings on freedom of the seas and just war theory directly appealed to natural law. About natural law itself, he wrote that "even the will of an omnipotent being cannot change or abrogate" natural law, which "would maintain its objective validity even if we should assume the impossible, that there is no God or that he does not care for human affairs." (De iure belli ac pacis, Prolegomeni XI). This is the famous argument etiamsi daremus (non esse Deum), that made natural law no longer dependent on theology. However, German church-historians Ernst Wolf and M. Elze disagreed and claimed that Grotius' concept of natural law did have a theological basis.[119] In Grotius' view, the Old Testament contained moral precepts (e.g. the Decalogue) which Christ confirmed and therefore were still valid. Moreover, they were useful in explaining the content of natural law. Both biblical revelation and natural law originated in God and could therefore not contradict each other.[120]

In a similar way, Samuel Pufendorf gave natural law a theological foundation and applied it to his concepts of government and international law.[121]

John Locke incorporated natural law into many of his theories and philosophy, especially in Two Treatises of Government. There is considerable debate about whether his conception of natural law was more akin to that of Aquinas (filtered through Richard Hooker) or Hobbes' radical reinterpretation, though the effect of Locke's understanding is usually phrased in terms of a revision of Hobbes upon Hobbesian contractarian grounds. Locke turned Hobbes' prescription around, saying that if the ruler went against natural law and failed to protect "life, liberty, and property," people could justifiably overthrow the existing state and create a new one.[122]

While Locke spoke in the language of natural law, the content of this law was by and large protective of natural rights, and it was this language that later liberal thinkers preferred. Political philosopher Jeremy Waldron has pointed out that Locke's political thought was based on "a particular set of Protestant Christian assumptions."[123] To Locke, the content of natural law was identical with biblical ethics as laid down especially in the Decalogue, Christ's teaching and exemplary life, and St. Paul's admonitions.[124] Locke derived the concept of basic human equality, including the equality of the sexes ("Adam and Eve"), from Genesis 1, 26–28, the starting-point of the theological doctrine of Imago Dei.[125] One of the consequences is that as all humans are created equally free, governments need the consent of the governed.[126] Thomas Jefferson, arguably echoing Locke, appealed to unalienable rights in the Declaration of Independence, "We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness."[127] The Lockean idea that governments need the consent of the governed was also fundamental to the Declaration of Independence, as the American Revolutionaries used it as justification for their separation from the British crown.[128]

The Belgian philosopher of law Frank van Dun is one among those who are elaborating a secular conception[129] of natural law in the liberal tradition. Libertarian theorist Murray Rothbard argues that "the very existence of a natural law discoverable by reason is a potentially powerful threat to the status quo and a standing reproach to the reign of blindly traditional custom or the arbitrary will of the State apparatus."[130] Ludwig von Mises states that he relaid the general sociological and economic foundations of the liberal doctrine upon utilitarianism, rather than natural law, but R. A. Gonce argues that "the reality of the argument constituting his system overwhelms his denial."[131] Murray Rothbard, however, says that Gonce makes a lot of errors and distortions in the analysis of Mises's works, including making confusions about the term which Mises uses to refer to scientific laws, "laws of nature," saying it characterizes Mises as a natural law philosopher.[132] David Gordon notes, "When most people speak of natural law, what they have in mind is the contention that morality can be derived from human nature. If human beings are rational animals of such-and-such a sort, then the moral virtues are...(filling in the blanks is the difficult part)."[133]

Economist and philosopher F. A. Hayek said that, originally, "the term 'natural' was used to describe an orderliness or regularity that was not the product of deliberate human will. Together with 'organism' it was one of the two terms generally understood to refer to the spontaneously grown in contrast to the invented or designed. Its use in this sense had been inherited from the stoic philosophy, had been revived in the twelfth century, and it was finally under its flag that the late Spanish Schoolmen developed the foundations of the genesis and functioning of spontaneously formed social institutions."[134] The idea that 'natural' was "the product of designing reason" is a product of a seventeenth century rationalist reinterpretation of the law of nature. Luis Molina, for example, when referred to the 'natural' price, explained that it is "so called because 'it results from the thing itself without regard to laws and decrees, but is dependent on many circumstances which alter it, such as the sentiments of men, their estimation of different uses, often even in consequence of whims and pleasures."[135] And even John Locke, when talking about the foundations of natural law and explaining what he thought when citing "reason," said: "By reason, however, I do not think is meant here that faculty of the understanding which forms traint of thought and deduces proofs, but certain definite principles of action from which spring all virtues and whatever is necessary for the proper moulding of morals."[136]

This anti-rationalist approach to human affairs, for Hayek, was the same which guided Scottish enlightenment thinkers, such as Adam Smith, David Hume and Adam Ferguson, to make their case for liberty.[137] For them, no one can have the knowledge necessary to plan society, and this "natural" or "spontaneous" order of society shows how it can efficiently "plan" bottom-up.[138] Also, the idea that law is just a product of deliberate design, denied by natural law and linked to legal positivism, can easily generate totalitarianism: "If law is wholly the product of deliberate design, whatever the designer decrees to be law is just by definition and unjust law becomes a contradiction in terms. The will of the duly authorized legislator is then wholly unfettered and guided solely by his concrete interests."[139] This idea is wrong because law cannot be just a product of "reason": "no system of articulated law can be applied except within a framework of generally recognized but often unarticulated rules of justice."[140]

However, a secular critique of the natural law doctrine was stated by Pierre Charron in his De la sagesse (1601): "The sign of a natural law must be the universal respect in which it is held, for if there was anything that nature had truly commanded us to do, we would undoubtedly obey it universally: not only would every nation respect it, but every individual. Instead there is nothing in the world that is not subject to contradiction and dispute, nothing that is not rejected, not just by one nation, but by many; equally, there is nothing that is strange and (in the opinion of many) unnatural that is not approved in many countries, and authorized by their customs."

Contemporary jurisprudence
One modern articulation of the concept of natural laws was given by Belina and Dzudzek:[141]

"By constant repetition, those practices develop into structures in the form of discourses which can become so natural that we abstract from their societal origins, that the latter are forgotten and seem to be natural laws."

In jurisprudence, natural law can refer to the several doctrines:

That just laws are immanent in nature; that is, they can be "discovered" or "found" but not "created" by such things as a bill of rights;
That they can emerge by the natural process of resolving conflicts, as embodied by the evolutionary process of the common law; or
That the meaning of law is such that its content cannot be determined except by reference to moral principles. These meanings can either oppose or complement each other, although they share the common trait that they rely on inherence as opposed to design in finding just laws.
Whereas legal positivism would say that a law can be unjust without it being any less a law, a natural law jurisprudence would say that there is something legally deficient about an unjust norm.

Besides utilitarianism and Kantianism, natural law jurisprudence has in common with virtue ethics that it is a live option for a first principles ethics theory in analytic philosophy.

The concept of natural law was very important in the development of the English common law. In the struggles between Parliament and the monarch, Parliament often made reference to the Fundamental Laws of England, which were at times said to embody natural law principles since time immemorial and set limits on the power of the monarchy. According to William Blackstone, however, natural law might be useful in determining the content of the common law and in deciding cases of equity, but was not itself identical with the laws of England. Nonetheless, the implication of natural law in the common law tradition has meant that the great opponents of natural law and advocates of legal positivism, like Jeremy Bentham, have also been staunch critics of the common law.

Natural law jurisprudence is currently undergoing a period of reformulation (as is legal positivism). The most prominent contemporary natural law jurist, Australian John Finnis, is based in Oxford, but there are also Americans Germain Grisez, Robert P. George, and Canadian Joseph Boyle and Brazilian Emídio Brasileiro. All have tried to construct a new version of natural law. The 19th-century anarchist and legal theorist, Lysander Spooner, was also a figure in the expression of modern natural law.

"New Natural Law" as it is sometimes called, originated with Grisez. It focuses on "basic human goods," such as human life, knowledge, and aesthetic experience, which are self-evidently and intrinsically worthwhile, and states that these goods reveal themselves as being incommensurable with one another.

The tensions between natural law and positive law have played, and continue to play, a key role in the development of international law.[142]

See also

This "see also" section may contain an excessive number of suggestions. Please ensure that only the most relevant links are given, that they are not red links, and that any links are not already in this article. (July 2017) (Learn how and when to remove this template message)
Hadley Arkes
By-law
Jean Barbeyrac
J. Budziszewski
Classical liberalism
Francisco Elías de Tejada y Spínola
Henry George
Enrique Gil Robles
International legal theories
Land value tax
Law of the jungle
Liberalism
Libertarianism
Moral realism
Natural morality
Natural order
Naturalistic fallacy
Neo-scholasticism
Non-aggression principle
Norm of reciprocity
Objectivism (philosophy)
Orders of creation
Philosophy of law
Purposive approach
Rule of law
Rule according to higher law
Spontaneous order
Substantive due process
Tit for tat
Unenumerated rights
Universality (philosophy)
Emerich de Vattel
Xeer




Coercion
https://en.wikipedia.org/wiki/Coercion
Coercion (/koʊˈɜːrʒən, -ʃən/) is compelling a party to act in an involuntary manner by use of threats, including propaganda or force.[1][2][3] It involves a set of various types of forceful actions that violate the free will of an individual to induce a desired response, for example: a bully demanding lunch money from a student or the student gets beaten. These actions may include extortion, blackmail, torture, threats to induce favors, or even sexual assault. In law, coercion is codified as a duress crime. Such actions are used as leverage, to force the victim to act in a way contrary to their own interests. Coercion may involve the actual infliction of physical pain/injury or psychological harm in order to enhance the credibility of a threat. The threat of further harm may lead to the cooperation or obedience of the person being coerced.


Contents
1	Overview
1.1	Physical
1.2	Psychological
2	See also
3	Notes
4	References
5	External links
Overview
The purpose of coercion is to substitute one's aims to those of the victim. For this reason, many social philosophers have considered coercion as the polar opposite to freedom.[4]

Various forms of coercion are distinguished: first on the basis of the kind of injury threatened, second according to its aims and scope, and finally according to its effects, from which its legal, social, and ethical implications mostly depend.

Physical
Physical coercion is the most commonly considered form of coercion, where the content of the conditional threat is the use of force against a victim, their relatives or property. An often used example is "putting a gun to someone's head" (at gunpoint) or putting a "knife under the throat" (at knifepoint or cut-throat) to compel action under the threat that non-compliance may result in the attacker harming or even killing the victim. These are so common that they are also used as metaphors for other forms of coercion.

Armed forces in many countries use firing squads to maintain discipline and intimidate the masses, or opposition, into submission or silent compliance. However, there also are nonphysical forms of coercion, where the threatened injury does not immediately imply the use of force. Byman and Waxman (2000) define coercion as "the use of threatened force, including the limited use of actual force to back up the threat, to induce an adversary to behave differently than it otherwise would."[5] Coercion does not in many cases amount to destruction of property or life since compliance is the goal.

Psychological

This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (January 2021) (Learn how and when to remove this template message)
In psychological coercion, the threatened injury regards the victim's relationships with other people. The most obvious example is blackmail, where the threat consists of the dissemination of damaging information. However, many other types are possible e.g. "emotional blackmail", which typically involves threats of rejection from or disapproval by a peer-group, or creating feelings of guilt/obligation via a display of anger or hurt by someone whom the victim loves or respects. Another example is coercive persuasion.

Psychological coercion – along with the other varieties – was extensively and systematically used by the government of the People's Republic of China during the "Thought Reform" campaign of 1951–1952. The process – carried out partly at "revolutionary universities" and partly within prisons – was investigated and reported upon by Robert Jay Lifton, then Research Professor of Psychiatry at Yale University: see Lifton (1961). The techniques used by the Chinese authorities included a technique derived from standard group psychotherapy, which was aimed at forcing the victims (who were generally intellectuals) to produce detailed and sincere ideological "confessions". For instance, a professor of formal logic called Chin Yueh-lin – who was then regarded as China's leading authority on his subject – was induced to write: "The new philosophy [of Marxism-Leninism], being scientific, is the supreme truth" [Lifton (1961) p. 545].

See also
Abusive power and control
Coercive power
Coercive diplomacy
Deterrence (legal)
Duress in American law
Duress in English law
Forced adoption
Marital coercion
Monopoly on violence
Punishment (psychology)




Greenhouse Cartel
https://en.wikipedia.org/wiki/Cartel
A cartel is a group of independent market participants who collude with each other in order to improve their profits and dominate the market. Cartels are usually associations in the same sphere of business, and thus an alliance of rivals. Most jurisdictions consider it anti-competitive behavior and have outlawed such practices. Cartel behavior includes price fixing, bid rigging, and reductions in output. The doctrine in economics that analyzes cartels is cartel theory. Cartels are distinguished from other forms of collusion or anti-competitive organization such as corporate mergers.


Contents
1	Etymology
2	History
3	Types
4	Effects
5	Organization
6	Cartel theory versus antitrust concept
7	Legislation and Penalties
7.1	Leniency Programmes
7.2	Price Fixing
8	Examples
9	See also
10	Bibliography
11	References
12	External links
Etymology
The word cartel comes from the Italian word cartello, which means a "leaf of paper" or "placard". The Italian word became cartel in Middle French, which was borrowed into English. Its current use in Mexican and Colombian drug-trafficking world comes from Spanish cartel. In English, the word was originally used for a written agreement between warring nations to regulate the treatment and exchange of prisoners.[1]

History
Cartels have existed since ancient times.[2] Guilds in the European Middle Ages, associations of craftsmen or merchants of the same trade, have been regarded as cartel-like.[3] Tightly organized sales cartels in the mining industry of the late Middle Ages, like the 1301 salt syndicate in France and Naples, or the Alaun cartel of 1470 between the Papal State and Naples.[4] Both unions had common sales organizations for overall production called the Societas Communis Vendicionis [Common Sales Society].

Laissez-faire (liberal) economic conditions dominated Europe and North America in the 18th and 19th centuries. Around 1870, cartels first appeared in industries formerly under free-market conditions.[5] Although cartels existed in all economically developed countries, the core area of cartel activities was in central Europe. The German Empire and Austria-Hungary were nicknamed the "lands of the cartels".[6] Cartels were also widespread in the United States during the period of robber barons and industrial trusts.[7]

The creation of cartels increased globally after World War I. They became the leading form of market organization, particularly in Europe and Japan. In the 1930s, authoritarian regimes such as Nazi Germany, Italy under Mussolini, and Spain under Franco used cartels to organize their corporatist economies. Between the late 19th century and around 1945, the United States was ambivalent about cartels and trusts. There were periods of both opposition to market concentration and relative tolerance of cartels. During World War II, the United States strictly turned away from cartels.[8] After 1945, American-promoted market liberalism led to a worldwide cartel ban, where cartels continue to be obstructed in an increasing number of countries and circumstances.

Types
Cartels have many structures and functions that ideally enable corporations to navigate and control market uncertainties and gain collusive profits within their industry. A typical cartel often requires what competition authorities refer to as a CAU (Contact, Agreement or Understanding). [9] Typologies have emerged to distinguish distinct forms of cartels:

Selling or buying cartels unite against the cartel's customers or suppliers, respectively. The former type is more frequent than the latter.
Domestic cartels only have members from one country, whereas international cartels have members from more than one country.[10] There have been full-fledged international cartels that have comprised the whole world, such as the international steel cartel of the period between World War I and II.
Price cartels engage in price fixing, normally to raise prices for a commodity above the competitive price level. The loosest form of a price cartel can be recognized in tacit collusion (implicit collusion), wherein smaller enterprises individually devise their prices and market shares in response to the same market conditions, without direct communication, resulting in a less competitive outcome. This type of collusion is generally legal and can achieve a monopolistic outcome. [11]
Quota cartels distribute proportional shares of the market to their members.
Common sales cartels sell their joint output through a central selling agency (in French: comptoir). They are also known as syndicates (French: syndicat industriel).
Territorial cartels distribute districts of the market to be used only by individual participants, which act as monopolists.
Submission cartels control offers given to public tenders. They use bid rigging: bidders for a tender agree on a bid price. They then do not bid in unison, or share the return from the winning bid among themselves.[12]
Technology and patent cartels share knowledge about technology or science within themselves while they limit the information from outside individuals.
Condition cartels unify contractual terms – the modes of payment and delivery, or warranty limits.
Standardization cartels implement common standards for sold or purchased products. If the members of a cartel produce different sorts or grades of a good, conversion factors are applied to calculate the value of the respective output.
Compulsory cartels, also called "forced cartels", are established or maintained by external pressure. Voluntary cartels are formed by the free will of their participants.
Effects
A survey of hundreds of published economic studies and legal decisions of antitrust authorities found that the median price increase achieved by cartels in the last 200 years is about 23 percent.[13] Private international cartels (those with participants from two or more nations) had an average price increase of 28 percent, whereas domestic cartels averaged 18 percent. Less than 10 percent of all cartels in the sample failed to raise market prices.[14]

In general, cartel agreements are economically unstable in that there is an incentive for members to cheat by selling at below the cartel's agreed price or selling more than the cartel's production quotas. Many cartels that attempt to set product prices are unsuccessful in the long term because of cheating punishment mechanisms such as price wars or financial punishment.[15] Empirical studies of 20th-century cartels have determined that the mean duration of discovered cartels is from 5 to 8 years and overcharged by approximately 32%.[16] Within the industries that have operating cartels, the median number of cartel members is 8. Once a cartel is broken, the incentives to form a new cartel return, and the cartel may be re-formed. Publicly known cartels that do not follow this business cycle include, by some accounts, OPEC.

Cartels often practice price fixing internationally. When the agreement to control prices is sanctioned by a multilateral treaty or protected by national sovereignty, no antitrust actions may be initiated.[17] OPEC countries partially control the price of oil, and the International Air Transport Association (IATA) fixes prices for international airline tickets while the organization is excepted from antitrust law.[18][19]

Organization
Drawing upon research on organizational misconduct, scholars in economics, sociology and management have studied the organization of cartels.[20][21] They have paid attention to the way cartel participants work together to conceal their activities from antitrust authorities. Even more than reaching efficiency, participating firms need to ensure that their collective secret is maintained.[22] It has also been argued that the diversity of the participants (e.g., age and size of the firms) influences their ability to coordinate to avoid being detected.[23]

Cartel theory versus antitrust concept
The scientific analysis of cartels is based on cartel theory. It was pioneered in 1883 by the Austrian economist Friedrich Kleinwächter and in its early stages was developed mainly by German-speaking scholars.[24] These scholars tended to regard cartels as an acceptable part of the economy. At the same time, American lawyers increasingly turned against trade restrictions, including all cartels. The Sherman act, which impeded the formation and activities of cartels, was passed in the United States in 1890. The American viewpoint, supported by activists like Thurman Arnold and Harley M. Kilgore, eventually prevailed when governmental policy in Washington could have a larger impact in World War II.

Legislation and Penalties
Because cartels are likely to have an impact on market positions, they are subjected to competition law, which is executed by governmental competition regulators. Very similar regulations apply to corporate mergers. A single entity that holds a monopoly is not considered a cartel but can be sanctioned through other abuses of its monopoly.

Prior to World War II, members of cartels could sign contracts that were enforceable in courts of law except in the United States. Before 1945, cartels were tolerated in Europe and specifically promoted as a business practice in German-speaking countries.[25] In U.S. v. National Lead Co. et al., the Supreme Court of the United States noted the testimony of individuals who cited that a cartel, in its versatile form, is
a combination of producers for the purpose of regulating production and, frequently, prices, and an association by agreement of companies or sections of companies having common interests so as to prevent extreme or unfair competition.[26]

The first legislation against cartels to be enforced was the Sherman Act 1890, which also prohibits price fixing, market-sharing, output restrictions and other anti-competitive conduct.[27] Section 1 and 2 of the Act outlines the law in regards to cartels,

Section 1:

Every contract, combination in the form of trust or otherwise, or conspiracy, in restraint of trade or commerce among the several States, or with foreign nations, is declared to be illegal.[28]

Section 2:

Every person who shall monopolize, or attempt to monopolize, or combine or conspire with any other person or persons, to monopolize any part of the trade or commerce among the several States, or with foreign nations, shall be deemed guilty of a felony, and, on conviction thereof, shall be punished by fine not exceeding $100 million if a corporation, or, if any other person, $1 million, or by imprisonment not exceeding ten years, or by both said punishments, in the discretion of the court.[29]

In practice, detecting and desisting cartels is undertaken through the use of economic analysis and leniency programmes. Economic analysis is implemented to identify any discrepancies in market behaviour between both suspected and unsuspected cartel engaged firms. A structural approach is done in the form of screening already suspicious firms for industry traits of a typical cartel price path. A typical path often includes a formation phase in which prices decline, followed by a transition phase in which prices tend to rise, and end with a stationary phase in which price variance remains low. [30]Indicators such as price changes alongside import rates, market concentration, time period of permanent price changes and stability of companies' market shares are used as economic markers to help supplement the search for cartel behaviour.[31] On the contrary, when aiming to create suspicion around potential cartels, a behavioural approach is often used to identify behavioural collusive patterns, to initiate further economic analysis into identifying and prosecuting those involved in the operations. For example, studies have shown that industries are more likely to experience collusion where there are fewer firms, products are homogeneous and there is a stable demand. [32]

Leniency Programmes
Leniency programmes were first introduced in 1978 in the US, before being successfully reformed in 1993.[33] The underlying principle of a leniency program is to offer discretionary penalty reductions for corporations or individuals who are affiliated with cartel operations, in exchange for their cooperation with enforcement authorities in helping to identify and penalise other participating members. According to the Australian Department of Justice, the following 6 conditions must be met for admission into a leniency program:

The corporation is the first one to come forward and qualify for leniency with respect to the illegal activity being reported;
The Division, at the time the corporation comes in, does not yet have evidence against the company that is likely to result in a sustainable conviction;
The corporation, upon its discovery of the illegal activity being reported, took prompt and effective action to terminate its part in the activity;
The corporation reports the wrongdoing with candor and completeness and provides full, continuing and complete cooperation that advances the Division in its investigation;
The confession of wrongdoing is truly a corporate act, as opposed to isolated confessions of individual executives or officials;
Where possible, the corporation makes restitution to injured parties; and
The Division determines that granting leniency would not be unfair to others, considering the nature of the illegal activity, the confessing corporation's role in it, and when the corporation comes forward. [34]
The application of leniency programme penalties varies according to individual countries policies and are proportional to cartel profits and years of infringement. However, typically the first corporation or individual to cooperate will receive the most reduced penalty in comparison to those who come forward later. [35] The effectiveness of leniency programmes in destabilising and deterring cartels is evidenced by the decreased formation and discovery of cartels in the US since the introduction of the programmes in 1993.[36] Some persecuted examples include:


Graph showing the decline in formation and discoveries of cartels in the US following the introduction of leniency programmes in 1993. Following the introduction, cartel formations and discoveries decreased to all time lows.
Lysine Cartel: An employee of Archer Daniels Midland (ADM) alerted authorities of the existence of the cartel within the Lysine industry. [37]
Stainless steel: Buyers of the product complained to the European Commission (EC) about price spikes. [38]
Sodium gluconate: Defendants in the lysine case informed authorities of collusive behaviours between corporations in this industry.[39]
Price Fixing
Today, price fixing by private entities is illegal under the antitrust laws of more than 140 countries. The commodities of prosecuted international cartels include lysine, citric acid, graphite electrodes, and bulk vitamins.[40] In many countries, the predominant belief is that cartels are contrary to free and fair competition, considered the backbone of political democracy.[41] Maintaining cartels continues to become harder for cartels. Even if international cartels cannot be regulated as a whole by individual nations, their individual activities in domestic markets are affected.[42]

Unlike other cartels, export cartels are legal in virtually all jurisdictions, despite their harmful effects on affected markets.[43]

Examples

The printing equipment company American Type Founders (ATF) explicitly states in its 1923 manual that its goal is to "discourage unhealthy competition" in the printing industry.
Asian Racing Federation: The Asian Racing Federation formed a cartel, documented in the Good Neighbour Policy signed on September 1, 2003.
British Valve Association
De Beers
Quinine cartel: international cartel
Federation of Quebec Maple Syrup Producers: Canada's maple syrup cartel, which controls the pricing of maple syrup worldwide. Formed in 1966. Called "the OPEC of the maple syrup world" by The Economist[44]
International Rail Makers Association
OPEC: As its name suggests, OPEC is organised by sovereign states. Under traditional legal views, it cannot be held to antitrust enforcement in other jurisdictions under the doctrine of state immunity under public international law.[45]
Phoebus cartel (1925–1955) for light bulbs
Rhenish-Westphalian Coal Syndicate: Worldwide, the most famous and renowned cartel of its life span (1893–1945)[46]
Seven Sisters (oil companies)
Swiss Cheese Union: Many trade associations, especially in industries dominated by only a few major companies, have been accused of being fronts for cartels or facilitating secret meetings among cartel members. The now-defunct Swiss Cheese Union discouraged competition throughout the dairy industry in 20th century Switzerland.
Standard Oil
American Medical Association
Trade unions: Although cartels are usually thought of as a group of corporations, the right-wing economist Charles W. Baird considers trade unions to be cartels because they seek to raise the price of labor (wages) by preventing competition. Negotiated cartelism is a labor arrangement in which labor prices are held above the market-clearing level through union leverage over employers.[47]
See also
Cartel seat (monument)
Drug cartel
Industrial organisation
Corporate group





Non-aggression principle
https://en.wikipedia.org/wiki/Non-aggression_principle
The non-aggression principle (NAP), also called the non-aggression axiom, is a concept in which "aggression", defined as initiating or threatening any forceful interference with either an individual or their property,[note 1] is inherently wrong.[1][2] It is considered by some to be a defining principle of libertarianism in the United States[3] and is also a prominent idea in anarcho-capitalism and minarchism.[4][5][6][7] In contrast to pacifism, the NAP does not forbid forceful defense.[3] There is no single or universal interpretation or definition of the NAP as it faces several definitional issues, including those revolving around intellectual property, force, abortion, and other topics.


Contents
1	Justifications
2	Definitional issues
2.1	Abortion
2.2	Intellectual property rights
2.3	Force and interventions
2.4	States
2.5	Taxation
3	Support and criticism
3.1	Moral criticism
3.2	Inconsistency criticisms
4	See also
5	Notes
6	References
7	External links
Justifications
Part of a series on
Anarcho-capitalism
Flag of Anarcho-capitalism.svg
Origins
Concepts
Anti-statismCivil rightsCounter-economicsDecentralizationDeregulationEconomic liberalismFree marketFree-market anarchismFree-market roadsFree tradeFreedom of contractIndividualismJurisdictional arbitrageLaissez-faireLand ownershipNatural LawNon-aggression principlePolycentric lawPrivate defense agencyPrivate governancePrivate military companyPrivate policePrivate propertyPrivatizationPropertarianismProperty rightsRight to own propertySelf-ownershipSpontaneous orderTaxation as theftTitle-transfer theory of contractVoluntaryism
People
Works
Issues
Related topics
Capitalismlogo.svg Capitalism portal
A coloured voting box.svg Politics portal
vte
The principle has been derived by various philosophical approaches, including:

Argumentation ethics: some modern right-libertarian thinkers ground the non-aggression principle by an appeal to the necessary praxeological presuppositions of any ethical discourse, an argument pioneered by anarcho-capitalist scholar Hans Hermann Hoppe. They claim that the act of arguing for the initiation of aggression, as defined by the non-aggression principle, is contradictory. Among its advocates are Stephan Kinsella[8] and Murray Rothbard.[9]
Consequentialism: some advocates base the non-aggression principle on rule utilitarianism or rule egoism. These approaches hold that though violations of the non-aggression principle cannot be claimed to be objectively immoral, adherence to it almost always leads to the best possible results, and so it should be accepted as a moral rule. These scholars include David D. Friedman, Ludwig von Mises, and Friedrich Hayek.[10][failed verification]
Objectivism: Ayn Rand rejected natural or inborn rights theories as well as supernatural claims and instead proposed a philosophy based on "observable reality" along with a corresponding ethics based on the "factual requirements" of human life in a social context.[11] She stressed that the political principle of non-aggression is not a primary and that it only has validity as a consequence of a more fundamental philosophy. For this reason, many of her conclusions differ from others who hold the NAP as an axiom or arrived at it differently. She proposed that man survives by identifying and using concepts in his rational mind since "no sensations, percepts, urges or instincts can do it; only a mind can." She wrote, "since reason is man's basic means of survival, that which is proper to the life of a rational being is the good; that which negates, opposes or destroys it [i.e. initiatory force or fraud] is the evil."[12]
Estoppel: Stephan Kinsella believes that the legal concept of estoppel implies and justifies the non-aggression principle.[13]
Definitional issues

This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
This article relies excessively on partisan sources. (May 2019)
This article contains weasel words: vague phrasing that often accompanies biased or unverifiable information. (May 2019)
This section needs additional citations for verification. (May 2019)

Abortion
See also: Libertarian perspectives on abortion
Both supporters and opponents of abortion rights amongst right-libertarians justify their position on NAP grounds. One question to determine whether or not abortion is consistent with the NAP is at what stage of development a fertilized human egg cell can be considered a human being with the status and rights attributed to personhood. Some supporters of the NAP argue this occurs at the moment of conception while others argue that since the fetus lacks sentience until a certain stage of development, it does not qualify as a human being and may be considered property of the mother. On the other hand, opponents of abortion state that sentience is not a qualifying factor. They refer to the animal rights discussion and point out the argument from marginal cases that concludes the NAP also applies to non-sentient (i.e. mentally handicapped) humans.[14]

Another question is whether an unwelcome fetus should be considered to be an unauthorized trespasser in its mother's body.[15] The non-aggression principle does not protect trespassers from the owners of the property on which they are trespassing.[16]

Objectivist philosopher Leonard Peikoff has argued that a fetus has no right to life inside the womb because it is not an "independently existing, biologically formed organism, let alone a person."[17] Pro-choice libertarian Murray Rothbard held the same stance, maintaining that abortion is justified at any time during pregnancy if the fetus is no longer welcome inside its mother.[18] Similarly, other pro-choice supporters base their argument on criminal trespass.[19] In that case, they claim that the NAP is not violated when the fetus is forcibly removed, with deadly force if need be, from the mother's body, just as the NAP is not violated when an owner removes from the owner's property an unwanted visitor who is not willing to leave voluntarily. Libertarian theorist Walter Block follows this line of argument with his theory of evictionism, but he makes a distinction between evicting the fetus prematurely so that it dies and actively killing it. On the other hand, the theory of departurism permits only the non-lethal eviction of the trespassing fetus during a normal pregnancy.[20]

Pro-life libertarians such as Libertarians for Life argue that because the parents were actively involved in creating a new human life and that life has not consented to his or her own existence, that life is in the womb by necessity and no parasitism or trespassing in the form of legal necessity is involved. They state that as the parents are responsible for that life's position, the NAP would be violated when that life is killed with abortive techniques.[citation needed]

Intellectual property rights
See also: Libertarian perspectives on intellectual property
The NAP has been defined[citation needed] as applicable to any unauthorized actions towards a person's physical property. Supporters of the NAP disagree on whether it should apply to intellectual property rights as well as physical property rights.[21] Some argue that because intellectual concepts are non-rivalrous, intellectual property rights are unnecessary[22] while others argue that intellectual property rights are as valid and important as physical ones.[23]

Force and interventions
Although the NAP is meant to guarantee an individual's sovereignty, libertarians greatly differ on the conditions under which the NAP applies. Especially unsolicited intervention by others, either to prevent society from being harmed by the individual's actions or to prevent an incompetent individual from being harmed by his own actions or inactions, is an important issue.[to whom?][24] The debate centers on topics such as the age of consent for children,[25][26][27] intervention counseling (i.e. for addicted persons, or in case of domestic violence),[28][29] involuntary commitment and involuntary treatment with regards to mental illness,[30] medical assistance (i.e. prolonged life support vs euthanasia in general and for the senile or comatose in particular),[31][32] human organ trade,[33][34][35] state paternalism (including economic intervention)[36][37][38] and foreign intervention by states.[39][40] Other discussion topics on whether intervention is in line with the NAP include nuclear weapons proliferation,[41][42] human trafficking and immigration.[43][44][45]

Randian author Ronald Merill states that use of force is subjective, saying: “There’s no objective basis for controlling the use of force. Your belief that you’re using force to protect yourself is just an opinion; what if it is my opinion that you are violating my rights?"[46]

States
Some libertarians justify the existence of a minimal state on the grounds that anarcho-capitalism implies that the non-aggression principle is optional because the enforcement of laws is open to competition.[47] They claim competing law enforcement would always result in war and the rule of the most powerful.[citation needed]

Anarcho-capitalists usually respond to this argument that this presumed outcome of what they call "coercive competition" (e.g. PMCs or PDAs that enforce local law) is not likely because of the very high cost, in lives and economically, of war. They claim that war drains those involved and leaves non-combatant parties as the most powerful, economically and militarily, ready to take over.[48][49][50] Therefore, anarcho-capitalists claim that in practice, and in more advanced societies with large institutions that have a responsibility to protect their vested interests, disputes are most likely to be settled peacefully.[51][52] Anarcho-capitalists also point out that a state monopoly of law enforcement does not necessarily make NAP present throughout society as corruption and corporatism, as well as lobby group clientelism in democracies, favor only certain people or organizations. Anarcho-capitalists aligned with the Rothbardian philosophy generally contend that the state violates the non-aggression principle by its very nature because, it is argued, governments necessarily use force against those who have not stolen private property, vandalized private property, assaulted anyone, or committed fraud.[51][53][54]

Taxation
Some proponents of the NAP see taxes as a violation of NAP, while critics of the NAP argue that because of the free-rider problem in case security is a public good, enough funds would not be obtainable by voluntary means to protect individuals from aggression of a greater severity. The latter therefore accept taxation, and consequently a breach of NAP with regard to any free-riders, as long as no more is levied than is necessary to optimise protection of individuals against aggression.[citation needed] Geolibertarians, who following the classical economists and Georgists adhere to the Lockean labor theory of property, argue that land value taxation is fully compatible with the NAP.[citation needed]

Anarcho-capitalists argue that the protection of individuals against aggression is self-sustaining like any other valuable service, and that it can be supplied without coercion by the free market much more effectively and efficiently than by a government monopoly.[55] Their approach, based on proportionality in justice and damage compensation, argues that full restitution is compatible with both retributivism and a utilitarian degree of deterrence while consistently maintaining NAP in a society.[49][56][57] They extend their argument to all public goods and services traditionally funded through taxation, like security offered by dikes.[58]




District of Columbia Organic Act of 1871
https://en.wikipedia.org/wiki/District_of_Columbia_Organic_Act_of_1871
District of Columbia Organic Act of 1871
From Wikipedia, the free encyclopedia
Jump to navigationJump to search
For the prior act that organized the district, see District of Columbia Organic Act of 1801.
District of Columbia Organic Act of 1871
Great Seal of the United States
Long title	An Act to provide a Government for the District of Columbia.
Nicknames	District of Columbia Organic Act of 1871
Enacted by	the 41st United States Congress
Citations
Statutes at Large	16 Stat. 419
Legislative history
Signed into law by President Ulysses S. Grant on February 21, 1871
The District of Columbia Organic Act of 1871 is an Act of Congress that repealed the individual charters of the cities of Washington and Georgetown and established a new territorial government for the whole District of Columbia. Though Congress repealed the territorial government in 1874, the legislation was the first to create a single municipal government for the federal district.[1]


Contents
1	History
2	Effect
3	United States Corporation
4	See also
5	Notes
6	External links
History

Evolution of the District's internal boundaries
The passage of the Residence Act in 1790 created a new federal district that would become the capital of the United States. Formed from land donated by the states of Maryland and Virginia, the capital territory already included two large settlements at its creation: the port of Georgetown, Maryland and the town of Alexandria, Virginia. A new capital city named in honor of President George Washington was founded to the east of Georgetown in 1791.

Shortly after establishing operations in the new capital, Congress passed the Organic Act of 1801, which organized the federal territory. The territory within the federal district east of the Potomac formed the new County of Washington, which was governed by a levy court consisting of seven to eleven Justices of the Peace appointed by the President, and was governed by Maryland law as of 1801. The area west of the river became Alexandria County which was governed by Virginia law. In addition, Congress allowed the cities of Washington, Alexandria and Georgetown to each maintain their own municipal governments. In 1846 Alexandria County was returned by Congress to the state of Virginia.

The outbreak of the American Civil War in 1861 led to notable growth in the capital's population due to the expansion of the federal government and a large influx of emancipated slaves.[2] By 1870, the District's population had grown 75% to nearly 132,000 residents.[3] Growth was even more dramatic within the County of Washington, where the population more than doubled as people escaped the crowded city.[4]

The individual local governments within the District were insufficient to handle the population growth. Living conditions were poor throughout the capital, which still had dirt roads and lacked basic sanitation. The situation was so bad that some lawmakers in Congress even suggested moving the capital out further west, but President Ulysses S. Grant refused to consider the proposals.[5]

Effect
Instead, Congress passed the Organic Act of 1871, which revoked the individual charters of the cities of Washington and Georgetown and combined them with Washington County to create a unified territorial government for the entire District of Columbia.[6] The new government consisted of an appointed governor and 11-member council, a locally elected 22-member assembly, and a board of public works charged with modernizing the city.[7] The Seal of the District of Columbia features the date 1871, recognizing the year the District's government was incorporated.[8]

The Act did not establish a new city or city government within the District. Regarding a city of Washington, it stated that "that portion of said District included within the present limits of the city of Washington shall continue to be known as the city of Washington".[7] In the present day, the name "Washington" is commonly used to refer to the entire District, but DC law continues to use the definition of the city of Washington as given in the 1871 Organic Act.[9]

In 1873, President Grant appointed an influential member of the board of public works, Alexander Robey Shepherd, to the post of governor. Shepherd authorized large-scale municipal projects, which greatly modernized Washington. In doing so however, the governor spent three times the money that had been budgeted for capital improvements, bankrupting the city.[10] In 1874, Congress replaced the District's quasi-elected territorial government with an appointed three-member Board of Commissioners. Direct rule by Congress continued until the 1973 passage of the District of Columbia Home Rule Act, a century later.[11]

United States Corporation
The Act is appealed to as the basis of conspiracy theories relating to the sovereign citizen movement. According to these, the Act made the District, and consequently the whole United States, into a business corporation.[12] There is no evidence for these claims, which stem from a misinterpretation of the meaning of the term municipal corporation used in the Act.[13][14] There are many kinds of corporations; a corporation is any group authorized to legally act as a single entity; in this case, an incorporated, organized district of the United States. Most U.S. cities and counties are municipal corporations.

This was later used by QAnon supporters to falsely claim that former president Donald Trump would be sworn in as the 19th president of the original United States on March 4, 2021.[15] This date corresponds to the original presidential inauguration date because they claim the Twentieth Amendment is invalid as it was not passed by the original United States. Joseph R. Biden was sworn in as the 46th President of the United States on January 20, 2021, and Kamala Harris as Vice President, without incident regarding who or when.

See also
District of Columbia Organic Act of 1801
History of Washington, D.C.
District of Columbia home rule






Value of life
https://en.wikipedia.org/wiki/Value_of_life
&
References
 "Best Practice Regulation Guidance Note: Value of statistical life" (PDF). Department of the Prime Minister and Cabinet. December 2014.
https://www.dpmc.gov.au/sites/default/files/publications/Value_of_Statistical_Life_guidance_note.pdf

The value of life is an economic value used to quantify the benefit of avoiding a fatality.[1] It is also referred to as the cost of life, value of preventing a fatality (VPF) and implied cost of averting a fatality (ICAF). In social and political sciences, it is the marginal cost of death prevention in a certain class of circumstances. In many studies the value also includes the quality of life, the expected life time remaining, as well as the earning potential of a given person especially for an after-the-fact payment in a wrongful death claim lawsuit.

As such, it is a statistical term, the cost of reducing the average number of deaths by one. It is an important issue in a wide range of disciplines including economics, health care, adoption, political economy, insurance, worker safety, environmental impact assessment, and globalization.[2]

In industrial nations, the justice system considers a human life "priceless", thus illegalizing any form of slavery; i.e., humans cannot be bought at any price. However, with a limited supply of resources or infrastructural capital (e.g. ambulances), or skill at hand, it is impossible to save every life, so some trade-off must be made. Also, this argument neglects the statistical context of the term. It is not commonly attached to lives of individuals or used to compare the value of one person's life relative to another person's. It is mainly used in circumstances of saving lives as opposed to taking lives or "producing" lives.[2]

opposed to taking lives or "producing" lives.[2]


Contents
1	Treatment in economics and methods of calculation
2	Comparisons to other methods
3	Policy applications of the VSL
4	Uses
5	Estimates of the value of life
5.1	Australia
5.2	India
5.3	New Zealand
5.4	Sweden
5.5	Turkey
5.6	Russia
5.7	United States
6	See also
7	References
8	Further reading
9	External links
Treatment in economics and methods of calculation
There is no standard concept for the value of a specific human life in economics. However, when looking at risk/reward trade-offs that people make with regard to their health, economists often consider the value of a statistical life (VSL). Note that the VSL is very different from the value of an actual life. It is the value placed on changes in the likelihood of death, not the price someone would pay to avoid certain death. This is best explained by way of an example. From the EPA's website:

Suppose each person in a sample of 100,000 people were asked how much he or she would be willing to pay for a reduction in their individual risk of dying of 1 in 100,000, or 0.001%, over the next year. Since this reduction in risk would mean that we would expect one fewer death among the sample of 100,000 people over the next year on average, this is sometimes described as "one statistical life saved.” Now suppose that the average response to this hypothetical question was $100. Then the total dollar amount that the group would be willing to pay to save one statistical life in a year would be $100 per person × 100,000 people, or $10 million. This is what is meant by the "value of a statistical life.” [3]

This again emphasizes that VSL is more of an estimate of willingness to pay for small reductions in mortality risks rather than how much a human life is worth. Using government spending to see how much is spent to save lives in order to estimate the average individual VSL is a popular method of calculation. The United States government does not have an official value of life threshold, but different values are used in different agencies. It might be that the government values lives quite highly or that calculation standards are not applied uniformly.[4] Using the EPA as an example, the Agency uses estimates of how much people are willing to pay for small reductions in their risks of dying from adverse health conditions that may be caused by environmental pollution in their cost-benefit analyses.[3]

Economists often estimate the VSL by looking at the risks that people are voluntarily willing to take and how much they must be paid for taking them.[5] This method is known as revealed preference, where the actions of the individual reveal how much they value something. In this context, economists would look at how much individuals are willing to pay for something that reduces their chance of dying. Similarly, compensating differentials, which are the reduced or additional wage payments that are intended to compensate workers for conveniences or downsides of a job, can be used for VSL calculations. For example, a job that is more dangerous for a worker’s health might require that the worker be compensated more. The compensating differentials method has several weaknesses. One issue is that the approach assumes that people have information, which is not always available. Another issue is that people may have higher or lower perceptions of risk they are facing that do not equate to actual statistical risk. In general, it is difficult for people to accurately understand and assess risk. It is also hard to control for other aspects of a job or different types of work when using this method.[4] Overall, revealed preference may not represent population preferences as a whole because of the differences between individuals.[6]

One method that can be used to calculate VSL is summing the total present discounted value of lifetime earnings. There are a couple of problems using this method. One potential source of variability is that different discount rates can be used in this calculation, resulting in dissimilar VSL estimates. Another potential issue when using wages to value life is that the calculation does not take into account the value of time that is not spent working, such as vacation or leisure.[7] As a result, VSL estimates may be inaccurate because time spent on leisure could be valued at a higher rate than an individual's wage.[4]

Another method used to estimate VSL is contingent valuation. Contingent valuation asks individuals to value an option either that they have not chosen or are unable to currently choose.[4] Economists might estimate the VSL by simply asking people (e.g. through questionnaires) how much they would be willing to pay for a reduction in the likelihood of dying, perhaps by purchasing safety improvements.[8] These types of studies are referred to as stated preference studies. However, contingent valuation has some flaws. The first problem is known as the isolation of issues, where participants may give different values when asked to value something alone versus when they are asked to value multiple things. The order of how these issues are presented to people matters as well.[4] Another potential issue is the “embedding effect” identified by Diamond and Hausman 1994.[9] All of these methods might result in a VSL that is overstated or understated.

When calculating value of statistical life, it is important to discount and adjust it for inflation and real income growth over the years. An example of a formula needed to adjust the VSL of a specific year is given by the following:


Adjustment of VSL for Inflation and Real Income Growth
where 0 = Original Base Year T = Updated Base Year Pt = Price Index in Year t It = Real Incomes in Year t Ɛ = Income Elasticity of VSL.

Comparisons to other methods
The value of statistical life (VSL) estimates are often used in the transport sector. In health economics and in the pharmaceutical sector, however, the value of a quality-adjusted life-year (QALY) is used more often than the VSL. Both of these measures are used in cost-benefit analyses as a method of assigning a monetary value of bettering or worsening one’s life conditions. While QALY measures the quality of life ranging from 0-1, VSL monetizes the values using willingness-to-pay.[10]

Researchers have first attempted to monetize QALY in the 1970s, with countless studies being done to standardize values between and within countries. However, as with the QALY, VSL estimates have also had a history of vastly differing ranges of estimates within countries, notwithstanding a standardization among countries. One of the biggest movements to do so was the EuroVaQ project which used a sample of 40,000 individuals to develop the WTP of several European countries.[11]

Policy applications of the VSL
Value of life estimates are frequently used to estimate the benefits added due to a new policy or act passed by the government. One example is the 6-year retroactive study on the benefits and costs of the 1970 Clean Air Act[clarification needed] in the period from 1970-1990. This study was commissioned by the U.S. Environmental Protection Agency (EPA), Office of Air and Radiation and Office of Policy, Planning and Evaluation, but was carried out by an independent board of public health experts, economists, and scientists headed by Dr. Richard Schmalensee of MIT.[12]

On conducting the benefit-cost analysis, the team measured each dollar value of an environmental benefit by estimating a how many dollars a person is willing to pay in order to decrease or eliminate a current threat to their health, otherwise known as their "willingness-to-pay" (WTP). The WTP of the U.S. population was estimated and summed for separate categories including mortality, chronic bronchitis, hypertension, IQ changes, and strokes. Thus, the individual WTPs were added to get the value of a statistical life (VSL) for each category considered in the valuation of the act’s benefits.[13] Each valuation in figure 1 was the product of several studies which compiled both solicited WTP information from individuals and estimated WTP estimates from risk compensation demanded in the current labor market and was averaged to find a singular VSL. Such data from the labor market was taken from the Census of Fatal Occupational Injuries collected by the Bureau of Labor Statistics.[14]

For example, the valuation estimates used for mortality were divided by the typical life expectancy of each survey sample in order to get a dollar estimate per life-year lost or saved which was discounted with a 5 percent discount rate.[15]

Using these estimates, the paper concluded that the benefits, ranging from $5.6 to $49.4 trillion in 1990 dollars, of implementing the Clean Air Act from 1970 to 1990 outweighed the economic costs of $523 billion in 1990 dollars.[16]

Uses
Knowing the value of life is helpful when performing a cost-benefit analysis, especially in regard to public policy. In order to decide whether or not a policy is worth undertaking, it is important to accurately measure costs and benefits. Public programs that deal with things like safety (i.e. highways, disease control, housing) require accurate valuations in order to budget spending.[17]

Since resources are finite, trade-offs are inevitable, even regarding potential life-or-death decisions. The assignment of a value to individual life is one possible approach to attempting to make rational decisions about these trade-offs.

When deciding on the appropriate level of health care spending, a typical method is to equate the marginal cost of the health care to the marginal benefits received.[18] In order to obtain a marginal benefit amount, some estimation of the dollar value of life is required. One notable example was found by Stanford professor Stefanos Zenios, whose team calculated the cost-effectiveness of kidney dialysis. His team found that the VSL implied by then current dialysis practice averages about $129,000 USD per quality-adjusted life year (QALY).[19] This calculation has important implications for health care as Zenios explained:

"That means that if Medicare paid an additional $129,000 to treat a group of patients, on average, group members would get one more quality-adjusted life year."[20]

In risk management activities such as in the areas of workplace safety, and insurance, it is often useful to put a precise economic value on a given life. The Occupational Safety and Health Administration under the Department of Labor sets penalties and regulations for companies to comply with safety standards to prevent workplace injuries and deaths.[21] It can be argued that these high penalties are intended to act as a deterrent so that companies have an incentive to avoid them. As such, the price of the fines would have to be roughly equivalent to the value of a human life. Although some studies of the effectiveness of fines as a deterrent have found mixed results.[22]

In transportation modes it is very important to consider the external cost that is paid by the society but is not calculated, for making it more sustainable. The external cost, although consisting of impacts on climate, crops and public health among others, is largely determined by impacts on mortality rate.

Estimates of the value of life
Equivalent parameters are used in many countries, with significant variation in the value assigned.[2]


International VSL with data values
Australia
In Australia, the value of a statistical life has been set at:

$4.2 million (2014)[1]
$182,000 per year (2014)
India
Using a hedonic wage approach, the VSL in India among blue-collar male workers in manufacturing industries of Ahmedabad, Gujarat has been estimated to be INR 44.69 million ($ 0.64 million)[23]

New Zealand
In New Zealand, the value of a statistical life has been set at:

$2 million (1991) by NZTA[24]
$3.85 million (2013) by The Treasury[25]
$4.14 million (2016) by NZTA[24]
Sweden
In Sweden, the value of a statistical life has been estimated from 9 to 98 million SEK (€0.9 - 10.6 million).[26]

34.6 million SEK (€3.7 million) mean of studies in Sweden from 1995 and on
23 million SEK (€2.5 million) median of studies in Sweden from 1995 and on
22 million SEK (€2.4 million) recommended by official authorities
Turkey
Studies by Hacettepe University estimated the VSL at about half a million purchasing power parity adjusted 2012 US dollars,[27] the value of a healthier and longer life (VHLL) for Turkey at about 42,000 lira (about $27,600 in PPP-adjusted 2012 USD), and the value of a life year (VOLY) as about 10,300 TL (about $6,800 in PPP-adjusted 2012 USD), all as of 2012.[28]

As of 2016 the estimated produced economic value for a life time for Turkey was US$59,000 which was 5.4 times GDP per capita.[29]

Russia
According to different estimates life value in Russia varies from $40,000 up to $2 million. On the results of opinion poll life value (as the cost of financial compensation for the death) in the beginning of 2015 was about $71,500.[30]

United States
The following estimates have been applied to the value of life. The estimates are either for one year of additional life or for the statistical value of a single life.

$50,000 per year of quality life (the "dialysis standard",[31] which had been a de facto international standard most private and government-run health insurance plans worldwide use to determine whether to cover a new medical procedure)[32]
$129,000 per year of quality life (an update to the "dialysis standard")[33][32]
$9.1 million (Environmental Protection Agency, 2010)[34]
$9.2 million (Department of Transportation, 2014)[35]
$9.6 million (Department of Transportation, Aug. 2016)[36]
The income elasticity of the value of statistical life has been estimated at 0.5 to 0.6.[37] Developing markets have smaller statistical value of life.[37] The statistical value of life also decreases with age.[37]

Historically, children were valued little monetarily, but changes in cultural norms have resulted in a substantial increase as evinced by trends in damage compensation from wrongful death lawsuits.[38]

See also
Psychological significance and value in life
Rational choice theory
Utilitarianism
Value (personal and cultural)
Intrinsic value (ethics)
Disability-adjusted life year
Hedonic damages





Hedonic damages
https://en.wikipedia.org/wiki/Hedonic_damages
Hedonic damages, is primarily a legal term that first emerged in 1985 in the research of Stan V. Smith, who was a PhD student in economic at the University of Chicago. The term refers to loss of enjoyment of life damages, the intangible value of life, as distinct from the human capital value or lost earnings value.

value or lost earnings value.


Contents
1	History
2	Application
3	Controversy
4	Willingness-to-pay model
5	See also
6	References
History
Hedonic damages was used in a legal case for the first time in 1987 in the case of Sherrod v. Berry, 827 F.2d 195 (7th Cir. 1987).[1][2]. and testified as an expert witness in regards to the amount of the hedonic award, the first such testimony proffered nationwide.[3] It has since been used in additional legal decisions, in law review articles, and in law and economics articles in the United States. See for example Professor Cass Sunstein's University of Chicago Law & Economics, Olin Working Paper No. 340, July 2007. The concept of Hedonic damages have been admitted in testimony in state and federal courts. Research on the implications of hedonic damages theory has published in various peer-reviewed Journal articles. Dr. Smith co-authored the first textbook on Hedonic Damages in 1990, published by Anderson Publishing, Ohio

Application
Hedonic damages, the loss of the value of life, are allowed in almost every state in a non-fatal injury case. Based on William Daubert et al. v. Merrell Dow Pharmaceuticals, Inc., and other admissibility tests, many but not all jurisdictions allow economic expert witness testimony on hedonic damages. For example, the Nevada Supreme Court unanimously approved of such testimony in Banks v. Sunrise Hospital, 120 Nev. 822, 102 P.3d 52 (2004). Similarly, the 4th Appellate District in Ohio allowed such testimony based on Daubert in Lewis v. Alfa Leval, 128 Ohio App.3d.200 (1998). The Court of appeals in the Lewis case held that the trial judge properly ruled that the testimony met the Daubert Standards, and that it was within the discretion of the trial court to have admitted hedonic damages testimony. The measurement of hedonic damages is based on some 40 years of extensive, well-accepted, peer-reviewed, economic research on the value of a statistical life (VSL). This measurement is controversial among forensic economists. The Value of Statistical Life literature is accepted by most forensic economists, including those economists few who oppose the admission of hedonic damages testimony. Many courts nationwide have allowed such testimony but judges have significant discretion as to its admissibility. Economists generally agree that the VSL is in the $4 million to $5 million range. This value is an average of many published results based on economic research using the willingness-to-pay model. Hedonic damages are not allowed in death cases in the great majority of the states. Some states do allow recovery in wrongful death cases, including New Hampshire, New Mexico, Georgia, Arkansas, Connecticut, Hawaii, and in Federal Section 1983 civil rights violation actions.

Hedonic damages also can apply in cases that involve no injury. Cases involving inmates wrongfully imprisoned have been won with Hedonic Damages approaches. Such were the plights of two former inmates, William Gregory and David Pope, convicted and later exonerated on rape charges. William Gregory, who served seven years in a Kentucky prison, received a $4.5 million settlement, while David Pope, who served 15 years in Texas, received $385,000. While the inmates were free, according to David Hunt, another inmate later freed after serving 18 years, "we're still living the nightmare every day". Hedonic damages attempt to compensate for that suffering with settlements.[4]

A person injured after falling from a defective chair was able to recover hedonic damages.[5]

Controversy
Economic testimony regarding hedonic damages has been allowed in over two-thirds of the states and two-thirds of the Federal District courts and has been endorsed in unanimous supreme court decisions in Nevada, New Mexico, and Mississippi and in appellate decisions in Ohio. In some states where trial judges have admitted the economic testimony a trial judge in another court may have not admitted the testimony. The same holds true for Federal Circuit courts. Undeterred by a unanimous Supreme Court decision endorsing hedonic damages testimony by an expert economist, The Mississippi legislature subsequently adopted tort reform that precludes loss of enjoyment of life testimony by economic experts. There is significant scholarship endorsing hedonic damages in personal injury and wrongful death cases.[6][7] Further, hedonic damages were allowed as an element of recovery in the September 11, 2001 Victim Recovery Fund.[8] Although the category of non-economic damages normally included in hedonic damage testimony was acknowledged when identifying and determining compensation for the victims of the September 11, 2001 attacks, the final determinations were not based on the methods or arguments normally presented by those experts who calculate and testify regarding hedonic damages.

Willingness-to-pay model
The willingness-to-pay model is based on measuring what people pay for safety that results in small reductions in their risk of death. For example, if average people are willing to pay $25 for a carbon monoxide detector that stands a one in two hundred thousand chance of saving their life, the model would imply that such purchasers value their life at $5 million ($25 times 200,000). Economists generally use circumstances involving small risk reductions, recognizing that measuring willingness-to-pay using larger risks will significantly increase the value of a statistical life.[9]

See also
Damages
Hedonology
Measure of Damages (under English law)
Pain and suffering
Pro-rata
Punitive damages
Pure economic loss





Pro rata
https://en.wikipedia.org/wiki/Pro_rata
Pro rata is an adverb or adjective meaning in equal portions or in proportion.[1] The term is used in many legal and economic contexts. The hyphenated spelling pro-rata for the adjective form is common, as recommended for adjectives by some English-language style guides. In North American English this term has been vernacularized to prorated or pro-rated.


Contents
1	Meanings
2	Examples
2.1	Partnership liability
2.2	Bankruptcy law
2.3	Worker's pay and benefits
2.4	Investment laws
2.5	Venture capital
2.6	Insurance
2.7	Insurance cancellation method
2.8	College tuition
2.9	Aviation
3	See also
4	References
Meanings
More specifically, pro rata means:

In proportionality to some factor that can be exactly calculated[2][3]
To count based on an amount of time that has passed out of the total time
Proportional ratio[4]
Pro rata has a Latin etymology, from pro, according to, for, or by, and rata, feminine ablative of calculated (rate or change).[5]

Examples
Examples in law and economics include the following noted below.

When liability for a toxic tort or a defective product concerns many manufacturers, the liability under tort law is allocated pro rata.[6]

Partnership liability
Each of several partners "is liable for [her or his] own share or proportion only, they are said to be bound pro rata. An example ... may be found in the liability of partners; each is liable ... only pro rata in relation to between themselves."[7]

Bankruptcy law
When a debtor files for bankruptcy, and "the debtor is insolvent, creditors generally agree to accept a pro rata share of what is owed to them. If the debtor has any remaining funds, the money is divided proportionately among the creditors, according to the amount of the individual debts."[8] "A creditor of an insolvent estate is to be paid pro rata with creditors of the same class."[9]

Worker's pay and benefits
A worker's part-time work, overtime pay, and vacation time are typically calculated on a pro rata basis.[10][11]

Under US Federal regulations, a government worker has the right such that: "When an employee's service is interrupted by a non-leave earning period, leave is earned on a pro rata basis for each fractional pay period that occurs within the continuity of employment."[12]

The American Federation of Teachers (AFT), a US labor union, argues that all part-time or adjunct instructors should get pro-rata pay for teaching college courses.[13] This is an important issue, as of 2010, for part-time faculty.[14]

Irish secondary school teachers are entitled to pro rata pay for part-time work.[15]

Under British employment law, "Regulations state that, where appropriate, the pro rata principle should be applied to any comparison ... to be given ... holiday."[16]

Likewise, in Tasmania, Australia, the law clearly grants workers the privilege of part-time benefits for leave of absence.[17][18] This is granted under the Long Service Leave Act 1976.[19]

Investment laws
In corporate practice, "a pro-rata dividend means that every shareholder gets an equal proportion for each share he or she owns."[20]

In banking, "Pro-rating also refers to the practice of applying interest rates to different time frames. If the interest rate was 12% per annum, you could pro-rate this number to be 1% a month (12%/12 months)."[20]

Venture capital
In venture capital, it can refer to the Pro-Rata Participation right and mean "the right to continue to participate in future rounds so that you can maintain your ownership."[21]

Insurance
In insurance, pro rata is used to determine risk based on the time the insurance policy is in effect.[22] It may also be used to describe proportional liability when more than one person is responsible for a loss or accident.[8]

Insurance cancellation method
Calculation of return premium of a cancelled insurance policy is often done using a cancellation method called pro rata. First a return premium factor is calculated by taking the number of days remaining in the policy period divided by the number of total days of the policy. This factor is then multiplied by the policy premium to arrive at the return premium. Traditionally this has been done manually using a paper wheel calculator. Today it is normally done using an online wheel calculator.[23]

College tuition
When a college student withdraws, colleges may refund tuition payments on a pro rata basis.

Aviation
In the United States, a private pilot may pay no less than the pro rata share of the total price of the flight when carrying passengers.[24]

See also
	Look up pro rata in Wiktionary, the free dictionary.
Employee Retirement Income Security Act
Legal liability
Pro rata cancellation
Pro rata condition of averages
Vesting





Disability-adjusted life year
https://en.wikipedia.org/wiki/Disability-adjusted_life_year
The disability-adjusted life year (DALY) is a measure of overall disease burden, expressed as the number of years lost due to ill-health, disability or early death. It was developed in the 1990s as a way of comparing the overall health and life expectancy of different countries.

The DALY is becoming increasingly common in the field of public health and health impact assessment (HIA). It not only includes the potential years of life lost due to premature death, but also includes equivalent years of 'healthy' life lost by virtue of being in states of poor health or disability. In so doing, mortality and morbidity are combined into a single, common metric.[2]

Contents
1	Calculation
1.1	Age weighting
2	Economic applications
3	Examples
3.1	Australia
3.2	Africa
3.3	PTSD rates
3.4	Noise-induced hearing loss
4	History and usage
5	Criticism
6	See also
7	References
8	External links
Calculation
adjusted life year
The disability-adjusted life year is a societal measure of the disease or disability burden in populations. DALYs are calculated by combining measures of life expectancy as well as the adjusted quality of life during a burdensome disease or disability for a population. DALYs are related to the quality-adjusted life year (QALY) measure; however, QALYs only measure the benefit with and without medical intervention and therefore do not measure the total burden. Also, QALYs tend to be an individual measure, and not a societal measure.

Traditionally, health liabilities were expressed using one measure, the years of life lost (YLL) due to dying early. A medical condition that did not result in dying younger than expected was not counted. The burden of living with a disease or disability is measured by the years lost due to disability (YLD) component, sometimes also known as years lost due to disease or years lived with disability/disease.[2]

DALYs are calculated by taking the sum of these two components:[3]

DALY = YLL + YLD
The DALY relies on an acceptance that the most appropriate measure of the effects of chronic illness is time, both time lost due to premature death and time spent disabled by disease. One DALY, therefore, is equal to one year of healthy life lost.

How much a medical condition affects a person is called the disability weight (DW). This is determined by disease or disability and does not vary with age. Tables have been created of thousands of diseases and disabilities, ranging from Alzheimer's disease to loss of finger, with the disability weight meant to indicate the level of disability that results from the specific condition.

Examples of disability weight
Condition	DW 2004[4]	DW 2010[5]
Alzheimer's and other dementias	0.666	0.666
Blindness	0.594	0.195
Schizophrenia	0.528	0.576
AIDS, not on ART	0.505	0.547
Burns 20%-60% of body	0.441	0.438
Fractured femur	0.372	0.308
Moderate depression episode	0.350	0.406
Amputation of foot	0.300	0.021-0.1674
Deafness	0.229	0.167-0.281
Infertility	0.180	0.026-0.056
Amputation of finger	0.102	0.030
Lower back pain	0.061	0.0322-0.0374
Examples of the disability weight are shown on the right. Some of these are "short term", and the long-term weights may be different.

The most noticeable change between the 2004 and 2010 figures for disability weights above are for blindness as it was considered the weights are a measure of health rather than well-being (or welfare) and a blind person is not considered to be ill. "In the GBD terminology, the term disability is used broadly to refer to departures from optimal health in any of the important domains of health."[6]

At the population level, the disease burden as measured by DALYs is calculated by adding YLL to YLD. YLL uses the life expectancy at the time of death.[7] YLD is determined by the number of years disabled weighted by level of disability caused by a disability or disease using the formula:

YLD = I x DW x L
In this formula, I = number of incident cases in the population, DW = disability weight of specific condition, and L = average duration of the case until remission or death (years). There is also a prevalence (as opposed to incidence) based calculation for YLD. Number of years lost due to premature death is calculated by

YLL = N x L
where N = number of deaths due to condition, L = standard life expectancy at age of death.[2] Note that life expectancies are not the same at different ages. For example, in Paleolithic era, life expectancy at birth was 33 years, but life expectancy at the age of 15 was an additional 39 years (total 54).[8]

Historically Japanese life expectancy statistics have been used as the standard for measuring premature death, as the Japanese have the longest life expectancies.[9] Other approaches have since emerged, include using national life tables for YLL calculations, or using the reference life table derived by the GBD study.[10]

Age weighting

Some studies use DALYs calculated to place greater value on a year lived as a young adult. This formula produces average values around age 10 and age 55, a peak around age 25, and lowest values among very young children and very old people.[11]
A crucial distinction among DALY studies has been the use of "age-weighting", in which the value of each year of life depends on age; however, the World Health Organization has abandoned age weighting and time discounting in DALYs since 2010.[12]

There are two components to this differential accounting of time: age-weighting and time-discounting. Age-weighting is based on the theory of human capital. Commonly, years lived as a young adult are valued more highly than years spent as a young child or older adult, as these are years of peak productivity. Age-weighting receives considerable criticism for valuing young adults at the expense of children and the old. Some criticize, while others rationalize, this as reflecting society's interest in productivity and receiving a return on its investment in raising children. This age-weighting system means that somebody disabled at 30 years of age, for ten years, would be measured as having a higher loss of DALYs (a greater burden of disease), than somebody disabled by the same disease or injury at the age of 70 for ten years.

This age-weighting function is by no means a universal methodology in HALY studies, but is common when using DALYs. Cost-effectiveness studies using QALYs, for example, do not discount time at different ages differently.[13] This age-weighting function applies only to the calculation of DALYs lost due to disability. Years lost to premature death are determined from the age at death and life expectancy.

The Global Burden of Disease Study (GBD) 2001–2002 counted disability adjusted life years equally for all ages, but the GBD 1990 and GBD 2004 studies used the formula[14]

{\displaystyle W=0.1658Ye^{-0.04Y}}W=0.1658Ye^{{-0.04Y}}[15] where {\displaystyle Y}Y is the age at which the year is lived and {\displaystyle W}W is the value assigned to it relative to an average value of 1.

In these studies, future years were also discounted at a 3% rate to account for future health care losses. Time discounting, which is separate from the age-weighting function, describes preferences in time as used in economic models.[16]

The effects of the interplay between life expectancy and years lost, discounting, and social weighting are complex, depending on the severity and duration of illness. For example, the parameters used in the GBD 1990 study generally give greater weight to deaths at any year prior to age 39 than afterward, with the death of a newborn weighted at 33 DALYs and the death of someone aged 5–20 weighted at approximately 36 DALYs.[17]

As a result of numerous discussions, by 2010 the World Health Organization had abandoned the ideas of age weighting and time discounting.[12] They had also substituted the idea of prevalence for incidence (when a condition started) because this is what surveys measure.

Economic applications
The methodology is not an economic measure. It measures how much healthy life is lost. It does not assign a monetary value to any person or condition, and it does not measure how much productive work or money is lost as a result of death and disease. However, HALYs, including DALYs and QALYs, are especially useful in guiding the allocation of health resources as they provide a common numerator, allowing for the expression of utility in terms of dollar/DALY, or dollar/QALY.[13] For example, in Gambia, provision of the pneumococcal conjugate vaccine costs $670 per DALY saved.[18] This number can then be compared to other treatments for other diseases, to determine whether investing resources in preventing or treating a different disease would be more efficient in terms of overall health.

Examples
Schizophrenia has a 0.53 weighting and a broken femur a 0.37 weighting in the latest WHO weightings.[19]

Australia
Cancer (25.1/1,000), cardiovascular (23.8/1,000), mental problems (17.6/1,000), neurological (15.7/1,000), chronic respiratory (9.4/1,000) and diabetes (7.2/1,000) are the main causes of good years of expected life lost to disease or premature death.[20] Despite this, Australia has one of the longest life expectancies in the world.

Africa
These illustrate the problematic diseases and outbreaks occurring in 2013 in Zimbabwe, shown to have the greatest impact on health disability were typhoid, anthrax, malaria, common diarrhea, and dysentery.[21]

PTSD rates
Posttraumatic stress disorder (PTSD) DALY estimates from 2004 for the world's 25 most populous countries give Asian/Pacific countries and the United States as the places where PTSD impact is most concentrated (as shown here).

Noise-induced hearing loss
The disability-adjusted life years attributable to hearing impairment for noise-exposed U.S. workers across all industries was calculated to be 2.53 healthy years lost annually per 1,000 noise-exposed workers. Workers in the mining and construction sectors lost 3.45 and 3.09 healthy years per 1,000 workers, respectively. Overall, 66% of the sample worked in the manufacturing sector and represented 70% of healthy years lost by all workers.[22]

History and usage
Originally developed by Harvard University for the World Bank in 1990, the World Health Organization subsequently adopted the method in 1996 as part of the Ad hoc Committee on Health Research "Investing in Health Research & Development" report. The DALY was first conceptualized by Christopher J. L. Murray and Lopez in work carried out with the World Health Organization and the World Bank known as the Global Burden of Disease Study, which was published in 1990.[citation needed] It is now a key measure employed by the United Nations World Health Organization in such publications as its Global Burden of Disease.[23]

The DALY was also used in the 1993 World Development Report.[24]:x

Criticism
Both DALYs and QALYs are forms of HALYs, health-adjusted life years.

Although some have criticized DALYs as essentially an economic measure of human productive capacity for the affected individual,[25][irrelevant citation] this is not so. DALYs do have an age-weighting function that has been rationalized based on the economic productivity of persons at that age, but health-related quality of life measures are used to determine the disability weights, which range from 0 to 1 (no disability to 100% disabled) for all disease. These weights are based not on a person's ability to work, but rather on the effects of the disability on the person's life in general. This is why mental illness is one of the leading diseases as measured by global burden of disease studies, with depression accounting for 51.84 million DALYs. Perinatal conditions, which affect infants with a very low age-weight function, are the leading cause of lost DALYs at 90.48 million. Measles is fifteenth at 23.11 million.[13][26][27]

Some commentators have expressed doubt over whether the disease burden surveys (such as EQ-5D) fully capture the impacts of mental illness, due to factors including ceiling effects.[28][29][30]

According to Pliskin et al., the QALY model requires utility independent, risk neutral, and constant proportional tradeoff behaviour.[31] Because of these theoretical assumptions, the meaning and usefulness of the QALY is debated.[32][33] Perfect health is difficult, if not impossible, to define. Some argue that there are health states worse than being dead, and that therefore there should be negative values possible on the health spectrum (indeed, some health economists have incorporated negative values into calculations). Determining the level of health depends on measures that some argue place disproportionate importance on physical pain or disability over mental health.[34]

The method of ranking interventions on grounds of their cost per QALY gained ratio (or ICER) is controversial because it implies a quasi-utilitarian calculus to determine who will or will not receive treatment.[35] However, its supporters argue that since health care resources are inevitably limited, this method enables them to be allocated in the way that is approximately optimal for society, including most patients. Another concern is that it does not take into account equity issues such as the overall distribution of health states – particularly since younger, healthier cohorts have many times more QALYs than older or sicker individuals. As a result, QALY analysis may undervalue treatments which benefit the elderly or others with a lower life expectancy. Also, many would argue that all else being equal, patients with more severe illness should be prioritised over patients with less severe illness if both would get the same absolute increase in utility.[36]

As early as 1989, Loomes and McKenzie recommended that research be conducted concerning the validity of QALYs.[37] In 2010, with funding from the European Commission, the European Consortium in Healthcare Outcomes and Cost-Benefit Research (ECHOUTCOME) began a major study on QALYs as used in health technology assessment.[38] Ariel Beresniak, the study's lead author, was quoted as saying that it was the "largest-ever study specifically dedicated to testing the assumptions of the QALY".[39] In January 2013, at its final conference, ECHOUTCOME released preliminary results of its study which surveyed 1361 people "from academia" in Belgium, France, Italy and the UK.[39][40][41] The researchers asked the subjects to respond to 14 questions concerning their preferences for various health states and durations of those states (e.g., 15 years limping versus 5 years in a wheelchair).[41] They concluded that "preferences expressed by the respondents were not consistent with the QALY theoretical assumptions" that quality of life can be measured in consistent intervals, that life-years and quality of life are independent of each other, that people are neutral about risk, and that willingness to gain or lose life-years is constant over time.[41] ECHOUTCOME also released "European Guidelines for Cost-Effectiveness Assessments of Health Technologies", which recommended not using QALYs in healthcare decision making.[42] Instead, the guidelines recommended that cost-effectiveness analyses focus on "costs per relevant clinical outcome".[39][42]

In response to the ECHOUTCOME study, representatives of the National Institute for Health and Care Excellence, the Scottish Medicines Consortium, and the Organisation for Economic Co-operation and Development made the following points. First, QALYs are better than alternative measures.[39][40] Second, the study was "limited".[39][40] Third, problems with QALYs were already widely acknowledged.[40] Fourth, the researchers did not take budgetary constraints into consideration.[40] Fifth, the UK's National Institute for Health and Care Excellence uses QALYs that are based on 3395 interviews with residents of the UK, as opposed to residents of several European countries.[39] Finally, people who call for the elimination of QALYs may have "vested interests".[39]

See also
Bhutan GNH Index
Broad measures of economic progress
Disease burden
Economics
Full cost accounting
Green national product
Green gross domestic product (Green GDP)
Gender-related Development Index
Genuine Progress Indicator (GPI)
Global burden of disease
Global Peace Index
Gross National Happiness
Gross National Well-being (GNW)
Happiness economics
Happy Planet Index (HPI)
Human Development Index (HDI)
ISEW (Index of sustainable economic welfare)
Institute for Health Metrics and Evaluation (IHME)
Progress (history)
Progressive utilization theory
Legatum Prosperity Index
Leisure satisfaction
Living planet index
Millennium Development Goals (MDGs)
Money-rich, time-poor
Post-materialism
Psychometrics
Subjective life satisfaction
Where-to-be-born Index
Wikiprogress
World Values Survey (WVS)
World Happiness Report
Quality-adjusted life year (QALY)
Pharmacoeconomics
Healthy Life Years
Happiness economics
Seven Ages of Man





Leisure satisfaction
https://en.wikipedia.org/wiki/Leisure_satisfaction
"Leisure refers to activities that a person voluntarily engages in when they are free from any work, social or familial responsibilities."[1][2] Leisure satisfaction is the positive perceptions or feelings that an individual forms, elicits and gains as a result of engaging in leisure activities and choices. What can contribute to leisure satisfaction is to what degree an individual is currently satisfied with their leisure experiences and activities. An individual might attain positive feelings of contentment and happiness that result from the satisfaction of needs.[3] Participation in leisure activities and leisure satisfaction are inextricably linked to an individual's health. Caldwell (2005) suspects that leisure activities may be associated with a number of defensive traits that enhance a person's resiliency to negative life experiences.[1][4] Some aspects of leisure activities that can act as protective factors include: "[the activity] being personally meaningful, intrinsically interesting and/or challenging; offering social support and friendships; contributing to a sense of competence and/or self efficacy; offering a sense of personal control, choice and self-determination; and being relaxing and/or distracting the individual from negative life events."[1][4] Leisure activities, although ranging in types, have also proven to be beneficial to health cross-culturally.[5]



Contents
1	Subjective well-being
2	Family leisure activities and quality of life
3	Family leisure activities and family life satisfaction
4	Leisure activities and marital satisfaction
5	Psychological functioning
6	References
7	External links
Subjective well-being
In a study by Hribernik and Mussap (2010), leisure satisfaction was found to predict unique variance in life satisfaction, supporting its inclusion as a distinct life domain contributing to subjective well-being.[6] Additionally, relationship status interacted with age group and gender on differences in leisure satisfaction. The relationship between leisure satisfaction and life satisfaction, however, was reduced when considering the impact of core affect (underlying mood state). This suggests that leisure satisfaction may primarily be influenced by an individual's subjective well-being level as represented by core affect. This has implications for possible limitations in the extent to which leisure satisfaction may be improved beyond pre-existing levels of well-being and mood in individuals.

In another study conducted by Brajsa-Zagnec et al. (2010), subjective well-being (SWB) was defined as a combination of an individual's emotional reactions, satisfaction with specific aspects of one's life, and satisfaction with one's whole life. Many studies have been conducted to determine what specific leisure activities are linked to SWB. Research identifies other groups of leisure activities ranging from three to eleven to sixteen groups. There is no overall agreement regarding what specific groups of leisure activities predict SWB, but some researchers agree that leisure activities contribute to SWB and that the relationship between the two is complex.[7]

Data was collected from a group of Croatian citizens ranging across various age groups. The participants estimated their SWB and time spent participating in leisure activities. These leisure activities included active socializing and going out (sports, going to clubs, eating dinner out etc.), visiting cultural events (reading books, going to concerts, going to movies etc.), and family and home activities (going to church, visiting family, watching television etc.). The results of the study found specific leisure activities to be a predictor of SWB across age groups. For people ages 31–60 participation in visiting cultural events, family leisure activities, and active socializing and going out contributed to SWB. A significant positive correlation was found between family leisure activities and SWB of men and women across different age groups. This study concluded that participation in leisure activities lead to SWB, though the importance of such specific leisure activities vary across different age and genders. Essentially, people may improve their SWB by participating in leisure activities, especially in family and home activities.[7]

Family leisure activities and quality of life
A study conducted by London et al. (1977) was about job and leisure satisfaction contributing to quality of life (QOL). QOL was determined by asking the participants "How do you feel about your life as a whole" twice during the run of the study. As well, the participants were asked to fill out a survey that measured feelings about leisure, work, and life. It was found that activities that had to do with families and people they socialize with was significant to QOL. Overall non-job related activities (leisure activities) can be more important and a better predictor of QOL as opposed to variables of job related activities. People should consider the importance of the amount of time spent in leisure activities.[8]


Family leisure activities and family life satisfaction
In a study conducted by Agate et al. 2009, participants required a child and parent from a family to fill out an online survey which measured the amount of involvement in family leisure activities and the satisfaction with involvement of family leisure activities. It was found that families' involvement in leisure activities is the best predictor for overall family life satisfaction, even more than the amount of time spent together. In early adolescent years, the amount and the satisfaction of family leisure experiences are important to the perceptions of satisfaction with family life that the adolescents will develop later on in life. Zabriskie and McCormick (2003), the study that Agate modeled his off of, also concluded that involvement in family leisure activities was the single strongest predictor of satisfaction with family life. As well, benefits of participation in family leisure activities are better communication skills among the family, better problem solving strategies, development of life and social skills, and better overall satisfaction with family life. Overall research has provided evidence for significant correlations between leisure satisfaction and satisfaction with family life.[9]

Leisure activities and marital satisfaction
Not much empirical data has been collected regarding leisure activities and marital satisfaction. But with the research that has been conducted, it has been found that leisure activities influence marital satisfaction positively.[10] Happily married men and women were likely to value spending time together, enjoy activities done together, and agree on recreation needs. Some research has focused on the compatibility between married couples and this influence on the types of leisure activities they choose and the relationship between their overall marital satisfactions. Some research that focused on the relationship between leisure companionship and marital satisfaction found these couples tended to participate in activities that both partners enjoyed.[11]

In a study conducted by Orthner et al. (1975), the overall amount of time spent together in leisure activities is positively related to marital satisfaction for both males and females. Participants filled out a questionnaire measuring the pattern of interaction between spouses during leisure time and how much time is spent in individual, parallel, and joint leisure activities. It was found that wives spent more time alone in leisure activities than husbands across the marital career, but this individual participation was negatively correlated with marriage satisfaction. As well, the scores for marriage satisfaction were more stable for wives than husbands over time. Overall, this study concluded that the benefit of participating in leisure activities as a married couple is improved communication. Marital participation in leisure activities is the most critical during the first years of marriage and after 18–23 years of marriage when the marital relationship is reestablishing itself.[10]

Research regarding compatibility in spouses and the relationship between leisure activities and marital satisfaction have found that the couples who are less compatible are more prone to pursue leisure activities separately than highly compatible couples. This study concluded that the more spouses liked the leisure activities they were participating in, the higher their marital satisfaction was. Essentially the results of this study determined that couples participating in leisure activities together positively correlated with their marriage satisfaction.[11]

Psychological functioning
The importance of leisure activities has been studied in various aspects of life. One of the most prevalent aspects of life studied with importance of leisure satisfaction is for people with psychological issues. Some psychological issues can consist of common concerns such as stress or more complex concerns such as clinical disorders. Whether a person experiences stressors at work, through depression or brain injuries, leisure satisfaction may ease the stress regardless of the type. Stress in the workforce is a common issue many people face in their lifetime, however, leisure activities may help lower a person's stress levels and increase their satisfaction. When someone engages in enjoyable leisure activities, their moods tend to increase, which in turn, allows them to better accept everyday stressors.[1] When faced with difficult job situations one must be able to achieve adequate free time to truly enjoy their leisure activity of choice. Another important aspect of leisure activity is the type performed, whether is it an active or passive activity. Joudrey & Wallace (2009) conducted a study that statistically found the importance of active leisure activity. Passive leisure activities were suggested to give workers an ability to "escape", which in end could cause depressive moods. However, workers participating in active leisure showed considerably higher levels of mental health.[1]

People with mental disabilities often lack the ability or confidence to participate in social events, such as leisure activities. However, studies such as the one conducted by Lloyd, King, Lampe, & McDougall (2001) have been performed to prove the true importance of leisure among patients with mental disabilities. The results from their study showed a strong positive relationship between leisure satisfaction and the patients' met needs.[12] The results basically state that the more leisure patients experienced, the more likely they felt their social, education and psychological needs were met. The study concluded that leisure is as important for people with psychiatric disabilities as it is for the general public. As Lloyd, King, Lampe, & McDougall (2001) explained, the general public may view an event, such as a leisure activity, as unsatisfactory, but to a mental patient a leisure activity can greatly raise their average happiness.[12] Prvu, J. (1999) conducted a study among brain injury patients. Results showed that patients involved in the leisure activity program that helped increase leisure skills and knowledge of community resources also provided patients with an increase in self-confidence and leisure participation, which in turn increased leisure satisfaction.[13] Leisure activity can be a significant factor in lowering a person's level of depressive symptoms.[14]






Environmental full-cost accounting
https://en.wikipedia.org/wiki/Environmental_full-cost_accounting
Environmental full-cost accounting (EFCA) is a method of cost accounting that traces direct costs and allocates indirect costs[1] by collecting and presenting information about the possible environmental, social and economical costs and benefits or advantages – in short, about the "triple bottom line" – for each proposed alternative. It is also known as true-cost accounting (TCA), but, as definitions for "true" and "full" are inherently subjective, experts consider both terms problematical.[n 1]

Since costs and advantages are usually considered in terms of environmental, economic and social impacts, full or true cost efforts are collectively called the "triple bottom line". Many standards now exist in this area including Ecological Footprint, eco-labels, and the United Nations International Council for Local Environmental Initiatives approach to triple bottom line using the ecoBudget metric. The International Organization for Standardization (ISO) has several accredited standards useful in FCA or TCA including for greenhouse gases, the ISO 26000 series for corporate social responsibility coming in 2010, and the ISO 19011 standard for audits including all these.

Because of this evolution of terminology in the public sector use especially, the term full-cost accounting is now more commonly used in management accounting, e.g. infrastructure management and finance. Use of the terms FCA or TCA usually indicate relatively conservative extensions of current management practices, and incremental improvements to GAAP to deal with waste output or resource input.

These have the advantage of avoiding the more contentious questions of social cost.


Contents
1	Concepts
1.1	Costs rather than outlays
1.2	Hidden costs
1.3	Overhead and indirect costs
1.4	Past and future outlays
2	Examples
2.1	Waste management
2.1.1	Benefits
2.2	Food and Agriculture
3	Motives for adoption
4	See also
5	Notes
6	References
Concepts
Full-cost accounting embodies several key concepts that distinguish it from standard accounting techniques. The following list highlights the basic tenets of FCA.

Accounting for:

Costs rather than outlays (see explanation below);
Hidden costs and externalities;
Overhead and indirect costs;
Past and future outlays;
Costs according to lifecycle of the product.
Costs rather than outlays
Expenditure of cash to acquire or use a resource. A cost is the cash value of the resource as it is used. For example, an outlay is made when a vehicle is purchased, but the cost of the vehicle is incurred over its active life (e.g., ten years). The cost of the vehicle must be allocated over a period of time because every year of its use contributes to the depreciation of the vehicle's value.

Hidden costs
The value of goods and services is reflected as a cost even if no cash outlay is involved. One community might receive a grant from a state, for example, to purchase equipment. This equipment has value, even though the community did not pay for it in cash. The equipment, therefore, should be valued in an FCA analysis.

Government subsidies in the energy and food production industries keep true costs low through artificially cheap product pricing. This price manipulation encourages unsustainable practices and further hides negative externalities endemic to fossil fuel production and modern mechanized agriculture.

Overhead and indirect costs
FCA accounts for all overhead and indirect costs, including those that are shared with other public agencies. Overhead and indirect costs might include legal services, administrative support, data processing, billing, and purchasing. Environmental costs as indirect costs include the full range of costs throughout the life-cycle of a product (Life cycle assessment), some of which even do not show up in the firm's bottom line. [2] It also contains fixed overhead, fixed administration expense etc.

Past and future outlays
Past and future cash outlays often do not appear on annual budgets under cash accounting systems. Past (or upfront) costs are initial investments necessary to implement services such as the acquisition of vehicles, equipment, or facilities. Future (or back-end) outlays are costs incurred to complete operations such as facility closure and postclosure care, equipment retirement, and post-employment health and retirement benefits.

Examples
Waste management
The State of Florida uses the term full-cost accounting for its solid waste management. In this instance, FCA is a systematic approach for identifying, summing, and reporting the actual costs of solid waste management. It takes into account past and future outlays, overhead (oversight and support services) costs, and operating costs.[3][4]

Integrated solid waste management systems consist of a variety of municipal solid waste (MSW) activities and paths. Activities are the building blocks of the system, which may include waste collection, operation of transfer stations, transport to waste management facilities, waste processing and disposal, and sale of byproducts. Paths are the directions that MSW follows in the course of integrated solid waste management (i.e., the point of generation through processing and ultimate disposition) and include recycling, composting, waste-to-energy, and landfill disposal. The cost of some activities is shared between paths. Understanding the costs of MSW activities is often necessary for compiling the costs of the entire solid waste system, and helps municipalities evaluate whether to provide a service itself or contract out for it. However, in considering changes that affect how much MSW ends up being recycled, composted, converted to energy, or landfilled, the analyst should focus the costs of the different paths. Understanding the full costs of each MSW path is an essential first step in discussing whether to shift the flows of MSW one way another.

Benefits
Identify the costs of MSW management
When municipalities handle MSW services through general tax funds, the costs of MSW management can get lost among other expenditures. With FCA, managers can have more control over MSW costs because they know what the costs are.
See through the peaks and valleys in MSW cash expenditures
Using techniques such as depreciation and amortization, FCA produces a more accurate picture of the costs of MSW programs, without the distortions that can result from focusing solely on a given year's cash expenditures.
Explain MSW costs to citizens more clearly
FCA helps you collect and compile the information needed to explain to citizens what solid waste management actually costs. Although some people might think that solid waste management is free (because they are not billed specifically for MSW services), others might overestimate its cost. FCA can result in "bottom line" numbers that speak directly to residents. In addition, public officials can use FCA results to respond to specific public concerns.
Adopt a business-like approach to MSW management
By focusing attention on costs, FCA fosters a more businesslike approach to MSW management. Consumers of goods and services increasingly expect value, which means an appropriate balance between quality and cost of service. FCA can help identify opportunities for streamlining services, eliminating inefficiencies, and facilitating cost-saving efforts through informed planning and decision-making.
Develop a stronger position in negotiating with vendors
When considering privatization of MSW services, solid waste managers can use FCA to learn what it costs (or would cost) to do the work. As a result, FCA better positions public agencies for negotiations and decision-making. FCA also can help communities with publicly run operations determine whether their costs are competitive with the private sector.
Evaluate the appropriate mix of MSW services
FCA gives managers the ability to evaluate the cost of each element of their solid waste system, such as recycling, composting, waste-to-energy, and landfilling. FCA can help managers avoid common mistakes in thinking about solid waste management, notably the error of treating avoided costs as revenues.
Fine-tune MSW programs
As more communities use FCA and report the results, managers might be able to "benchmark" their operations to similar communities or norms. This comparison can suggest options for "re-engineering" current operations. Furthermore, when cities, counties, and towns know what it costs to manage MSW independently, they can better identify any savings that might come from working together.
Food and Agriculture
Over the last ten years there has been considerable attention for Full Cost Accounting (FCA) or True Cost Accounting (TCA) in the field of food and agriculture. In 2013 and 2016, the Sustainable Food Trust organised two conferences on True Cost Accounting in food and farming, in the UK and the USA respectively.[5] The FAO published two studies in 2014 and 2015 with a TCA-analysis of the impact of food wastage ("Food wastage footprint: full cost accounting" [6]) and another TCA-analysis of the total impact of world food production on Natural Capital ("Natural Capital Impacts in Agriculture" [7]). In the first report, the FAO comes to the conclusion that the yearly hidden impact of food wastage on Natural Capital amounts to USD 700 billion while the hidden impact on social capital amounts to USD 900 billion dollars. In the second report, the FAO estimates the environmental damage of the world food production at USD 2330 billion per year.

Motives for adoption
Various motives for adoption of FCA/TCA have been identified. The most significant of which tend to involve anticipating market or regulatory problems associated with ignoring the comprehensive outcome of the whole process or event accounted for. In green economics, this is the major concern and basis for critiques of such measures as GDP. The public sector has tended to move more towards longer term measures to avoid accusations of political favoritism towards specific solutions that seem to make financial or economic sense in the short term, but not longer term.

Corporate decision makers sometimes call on FCA/TCA measures to decide whether to initiate recalls, practice voluntary product stewardship (a form of recall at the end of a product's useful life). This can be motivated as a hedge against future liabilities arising from those who are negatively affected by the waste a product becomes. Advanced theories of FCA, such as Natural Step, focus firmly on these. According to Ray Anderson, who instituted a form of FCA/TCA at Interface Carpet, used it to rule out decisions that increase Ecological Footprint and focus the company more clearly on a sustainable marketing strategy.

The urban ecology and industrial ecology approaches inherently advocate FCA — treating the built environment as a sort of ecosystem to minimize its own wastes.

See also
Environmental accounting
Environmental pricing reform
Environmental profit and loss account
Externalities
Genuine Progress Indicator
Opportunity cost
Pollution credit
Total cost of ownership
Whole-life cost
Notes
 See Green economics.
References
 Schaltegger, S. & Burritt, R. (2000), Contemporary Environmental Accounting: Issues, Concepts and Practice, Sheffield: Greenleaf Publishing, p. 111.
 Schaltegger, S. & Burritt, R. (2000): Contemporary Environmental Accounting. Issues, Concepts and Practice. Sheffield: Greenleaf Publ., p.112
 Solid Waste Full Cost Accounting, www.dep.state.fl.us, Department of Environmental Protection, Florida, Accessed 24.11.06
 Full Cost Accounting on Municipal Solid Waste Management at US-EPA, www.epa.gov, US Environmental Protection Agency, Accessed 24.11.06
 True Cost Accounting, sustainablefoodtrust.org, Sustainable Food Trust, Accessed 20.06.20.
 Food wastage footprint, www.fao.org, FAO, Accessed 12.06.20.
 Natural Capital Impacts in Agriculture, www.fao.org, FAO, Accessed 20.06.20.






Champagne
https://en.wikipedia.org/wiki/Champagne


Champagne (/ʃæmˈpeɪn/, French: [ʃɑ̃paɲ]) is a French sparkling wine. The term Champagne can be used as a generic term for sparkling wine, but in the EU and some countries it is illegal to label any product Champagne unless it came from the Champagne wine region of France and is produced under the rules of the appellation.[1] This alcoholic drink is produced from specific types of grapes grown in the Champagne region following rules that demand, among other things, specific vineyard practices, sourcing of grapes exclusively from designated places within the Champagne region, specific grape-pressing methods and secondary fermentation of the wine in the bottle to cause carbonation.[2]


Vineyards in the Champagne region of France
The grapes Pinot noir, Pinot meunier, and Chardonnay are primarily used to produce almost all Champagne, but small amounts of Pinot blanc, Pinot gris, Arbane, and Petit Meslier are vinified as well. Only these specific grapes grown according to appellation rules on designated plots of land within the appellation may be used to make Champagne.

Champagne became associated with royalty in the 17th, 18th, and 19th centuries. The leading manufacturers made efforts to associate their Champagnes with nobility and royalty through advertising and packaging, which led to its popularity among the emerging middle class.[1]


Contents
1	Origins
2	Right to the name Champagne
2.1	Use of the word Champagne
3	Production
3.1	Bubbles
3.2	Champagne producers
3.3	Marketing Champagne
4	Grape varieties and styles
4.1	Types of Champagne
4.1.1	Prestige cuvée
4.1.2	Blanc de noirs
4.1.3	Blanc de blancs
4.1.4	Rosé Champagne
4.2	Sweetness
5	Champagne bottles
5.1	Champagne corks
6	Champagne etiquette
6.1	Opening Champagne bottles
6.2	Pouring Champagne
6.3	Spraying Champagne
7	Culinary uses
8	Champagne price
9	Champagne producers
10	See also
11	References
12	Further reading
13	External links
Origins
Main article: History of Champagne

Jean François de Troy's 1735 painting Le Déjeuner d'Huîtres (The Oyster Luncheon) is the first known depiction of Champagne in painting
Still wines from the Champagne region were known before medieval times. The Romans were the first to plant vineyards in this area of north-east France, with the region being tentatively cultivated by the 5th century. In fact, cultivation was initially slow due to the unpopular edict by Emperor Domitian that all colonial vines must be uprooted. When Emperor Probus, the son of a gardener, rescinded the edict, a temple to Bacchus was erected, and the region started to produce a light, fruity, red wine that contrasted with heavier Italian brews often fortified with resin and herbs.[3] Later, churches owned vineyards and monks produced wine for use in the sacrament of Eucharist. French kings were traditionally anointed in Reims, and champagne was served as part of coronation festivities. The Champenois were envious of the reputation of the wines made by their Burgundian neighbours to the south and sought to produce wines of equal acclaim. However, the northerly climate of the region gave the Champenois a unique set of challenges in making red wine. At the far extremes of sustainable viticulture, the grapes would struggle to ripen fully and often would have bracing levels of acidity and low sugar levels. The wines would be lighter bodied and thinner than the Burgundy wines they were seeking to outdo.[4]

Contrary to legend and popular belief, Dom Pérignon did not invent sparkling wine, though he did make important contributions to the production and quality of both still and sparkling Champagne wines.[5][6] The oldest recorded sparkling wine is Blanquette de Limoux, which was apparently invented by Benedictine monks in the Abbey of Saint-Hilaire, near Carcassonne in 1531.[7] They achieved this by bottling the wine before the initial fermentation had ended. Over a century later, the English scientist and physician Christopher Merret documented the addition of sugar to a finished wine to create a second fermentation, six years before Dom Pérignon set foot in the Abbey of Hautvillers. Merret presented a paper at the Royal Society, in which he detailed what is now called méthode traditionnelle, in 1662.[8] Merret's discoveries coincided also with English glass-makers' technical developments that allowed bottles to be produced that could withstand the required internal pressures during secondary fermentation. French glass-makers at this time could not produce bottles of the required quality or strength. As early as 1663 the poet Samuel Butler referred to "brisk champagne".[9]

In France the first sparkling champagne was created accidentally; the pressure in the bottle led it to be called "the devil's wine" (le vin du diable), as bottles exploded or corks popped. At the time, bubbles were considered a fault. In 1844 Adolphe Jaquesson invented the muselet to prevent the corks from blowing out. Initial versions were difficult to apply and inconvenient to remove.[10][11] Even when it was deliberately produced as a sparkling wine, champagne was for a very long time made by the méthode rurale, where the wine was bottled before the initial fermentation had finished. Champagne did not use the méthode champenoise until the 19th century, about 200 years after Merret documented the process. The 19th century saw an exponential growth in champagne production, going from a regional production of 300,000 bottles a year in 1800 to 20 million bottles in 1850.[12] In 2007, champagne sales hit an all-time record of 338.7 million bottles.[13]

In the 19th century champagne was noticeably sweeter than the champagnes of today. The trend towards drier champagne began when Perrier-Jouët decided not to sweeten his 1846 vintage before exporting it to London. The designation Brut Champagne was created for the British in 1876.[14]

Right to the name Champagne

The Champagne appellation highlighted in red
Main article: Champagne (wine region)
The Champagne winemaking community, under the auspices of the Comité Interprofessionnel du vin de Champagne (CIVC), has developed a comprehensive set of rules and regulations for all wine produced in the region to protect its economic interests. They include codification of the most suitable growing places; the most suitable grape types (most Champagne is a blend of up to three grape varieties, though other varieties are allowed); and a lengthy set of requirements specifying most aspects of viticulture. This includes pruning, vineyard yield, the degree of pressing, and the time that wine must remain on its lees before bottling. It can also limit the release of Champagne to market to maintain prices. Only when a wine meets these requirements may it be labelled Champagne. The rules agreed upon by the CIVC are submitted for the final approval of the Institut national de l'origine et de la qualité (formerly the Institut National des Appellations d'Origine, INAO).

In 2007 the INAO, the government organization that controls wine appellations in France, was preparing to make the largest revision of the region's legal boundaries since 1927, in response to economic pressures. With soaring demand and limited production of grapes, Champagne houses say the rising price could produce a consumer backlash that would harm the industry for years into the future. That, along with political pressure from villages that want to be included in the expanded boundaries, led to the move. Changes are subject to significant scientific review and are said to not impact Champagne produced grapes until 2020.[15]

Use of the word Champagne

1915 English magazine illustration of a lady riding a Champagne cork (Lordprice Collection)
Sparkling wines are produced worldwide, but many legal structures reserve the word Champagne exclusively for sparkling wines from the Champagne region, made in accordance with Comité Interprofessionnel du vin de Champagne regulations. In the European Union and many other countries the name Champagne is legally protected by the Madrid system under an 1891 treaty, which reserved it for the sparkling wine produced in the eponymous region and adhering to the standards defined for it as an appellation d'origine contrôlée; the protection was reaffirmed in the Treaty of Versailles after World War I. Similar legal protection has been adopted by over 70 countries. Most recently Australia,[16] Chile, Brazil, Canada and China passed laws or signed agreements with Europe that limit the use of the term "Champagne" to only those products produced in the Champagne region. The United States bans the use from all new U.S.-produced wines.[17] Only those that had approval to use the term on labels before 2006 may continue to use it and only when it is accompanied by the wine's actual origin (e.g., "California").[17] The majority of US-produced sparkling wines do not use the term Champagne on their labels,[18] and some states, such as Oregon,[19] ban producers in their states from using the term.

In the United States name protection of wine-growing place names is becoming more important. Several key U.S. wine regions, such as those in California (Napa, Sonoma Valley, Paso Robles), Oregon, and Walla Walla, Washington, came to consider the remaining semi-generic labels as harmful to their reputations (cf. Napa Declaration on Place).

Even the terms méthode champenoise and Champagne method were forbidden by an EU court decision in 1994.[20] As of 2005 the description most often used for sparkling wines using the second fermentation in the bottle process, but not from the Champagne region, is méthode traditionnelle. Sparkling wines are produced worldwide, and many producers use special terms to define them: Spain uses Cava, Italy designates it spumante, and South Africa uses cap classique. An Italian sparkling wine made from the Muscat grape uses the DOCG Asti and from the Glera grape the DOCG Prosecco. In Germany, Sekt is a common sparkling wine. Other French wine regions cannot use the name Champagne: e.g., Burgundy and Alsace produce Crémant. In 2008, more than 3,000 bottles of sparkling wine produced in California labelled with the term "Champagne" were destroyed by Belgian government authorities.[21]

Regardless of the legal requirements for labeling, extensive education efforts by the Champagne region, and the use of alternative names by non-Champagne sparkling wine producers, some consumers and wine sellers, including "Korbels California Champagne", use Champagne as a generic term for white sparkling wines, regardless of origin.

The village of Champagne, Switzerland, has traditionally made a still wine labelled as "Champagne", the earliest records of viticulture dated to 1657. In an accord with the EU, the Swiss government conceded in 1999 that by 2004 the village would phase out use of the name. Sales dropped from 110,000 bottles a year to 32,000 after the change. In April 2008 the villagers resolved to fight against the restriction following a Swiss open-air vote.[22]

In the Soviet Union all sparkling wines were called шампанское (shampanskoe, Russian for "that, which is of Champagne"). The name is still used today for some brands of sparkling wines produced in former Soviet republics, such as Sovetskoye Shampanskoye and Rossiyskoe Shampanskoe.

Production
Main article: Champagne production

Le Remueur: 1889 engraving of the man engaged in the daily task of turning each bottle a fraction
Méthode Traditionnelle Formerly known as Méthode Champenoise, (This however was changed in 1994 by the EU) can also be called Méthode Classique. This is the traditional method by which Champagne is produced. After primary fermentation and bottling, a second alcoholic fermentation occurs in the bottle. This second fermentation is induced by adding several grams of yeast Saccharomyces cerevisiae and rock sugar to the bottle - although each brand has its own secret recipe.[23] According to the appellation d'origine contrôlée a minimum of 1.5 years is required to completely develop all the flavour. For years where the harvest is exceptional, a millésime is declared and some Champagne will be made from and labelled as the products of a single vintage rather than a blend of multiple years' harvests. This means that the Champagne will be very good and has to mature for at least 3 years. During this time the Champagne bottle is sealed with a crown cap similar to that used on beer bottles.[1]

After aging, the bottle is manipulated, either manually or mechanically, in a process called remuage (or "riddling" in English), so that the lees settle in the neck of the bottle. After chilling the bottles, the neck is frozen, and the cap removed. This process is called disgorgement. The pressure in the bottle forces out the ice containing the lees. Some wine from previous vintages and additional sugar (le dosage) is added to maintain the level within the bottle and adjust the sweetness of the finished wine. The bottle is then quickly corked to maintain the carbon dioxide in solution.[1]

Bubbles
See also: Carbonation

Bubbles from rosé Champagne
An initial burst of effervescence occurs when the Champagne contacts the dry glass on pouring. These bubbles form on imperfections in the glass that facilitate nucleation or, to a minimal extent, on cellulose fibres left over from the wiping/drying process as shown with a high-speed video camera.[24] However, after the initial rush, these naturally occurring imperfections are typically too small to consistently act as nucleation points as the surface tension of the liquid smooths out these minute irregularities. The nucleation sites that act as a source for the ongoing effervescence are not natural imperfections in the glass, but actually occur where the glass has been etched by the manufacturer or the customer. This etching is typically done with acid, a laser, or a glass etching tool from a craft shop to provide nucleation sites for continuous bubble formation (note that not all glasses are etched in this way). In 1662 this method was developed in England, as records from the Royal Society show.

Dom Pérignon was originally charged by his superiors at the Abbey of Hautvillers to get rid of the bubbles since the pressure in the bottles caused many of them to burst in the cellar.[25] As sparkling wine production increased in the early 18th century, cellar workers had to wear a heavy iron mask to prevent injury from spontaneously bursting bottles. The disturbance caused by one bottle exploding could cause a chain reaction, with it being routine for cellars to lose 20–90% of their bottles this way. The mysterious circumstance surrounding the then unknown process of fermentation and carbonic gas caused some critics to call the sparkling creations "The Devil's Wine".[26]


Champagne uncorking photographed with an air-gap flash
Champagne producers
Main article: List of Champagne houses
See also: Grower Champagne
There are more than one hundred Champagne houses and 19,000 smaller vignerons (vine-growing producers) in Champagne. These companies manage some 32,000 hectares of vineyards in the region. The type of Champagne producer can be identified from the abbreviations followed by the official number on the bottle:[27]

NM: Négociant manipulant. These companies (including the majority of the larger brands) buy grapes and make the wine
CM: Coopérative de manipulation. Cooperatives that make wines from the growers who are members, with all the grapes pooled together
RM: Récoltant manipulant. (Also known as Grower Champagne) A grower that also makes wine from its own grapes (a maximum of 5% of purchased grapes is permitted). Note that co-operative members who take their bottles to be disgorged at the co-op can now label themselves as RM instead of RC
SR: Société de récoltants. An association of growers making a shared Champagne but who are not a co-operative
RC: Récoltant coopérateur. A co-operative member selling Champagne produced by the co-operative under its own name and label
MA: Marque auxiliaire or Marque d'acheteur. A brand name unrelated to the producer or grower; the name is owned by someone else, for example a supermarket
ND: Négociant distributeur. A wine merchant selling under his own name
Marketing Champagne

An Edwardian English advertisement for Champagne, listing honours and royal drinkers
See also: Champagne in popular culture
In the 19th century, Champagne was produced and promoted to mark contemporary political events, for example, the Franco-Russian Alliance of 1893, and Tennis Court Oath to mark the centennial of French Revolution.[28] By selling champagne as a nationalist ideology, négociant manages to associate champagne with leisure activities and sporting events. In addition, négociant successfully appeal champagne to broader consumers by introducing the different qualities of sparkling wine, associating champagne brands with royalty and nobility, and selling off-brands under the name of the importer from France at a lower cost. Though selling off-brands at a lower expense proved to be unsuccessful since "there was an assumption that cheap sparkling wine was not authentic."[28] From the start to end of Belle Époque period, champagne has gone from a regional product with a niche market audience to a national commodity that distributed globally.

A large popularity of Champagne is attributed to the success of Champagne producers in marketing the wine's image as a royal and aristocratic drink. Laurent-Perrier's advertisements in late 1890 boasted their Champagne was the favourite of Leopold II of Belgium, George I of Greece, Alfred, Duke of Saxe-Coburg and Gotha, Margaret Cambridge, Marchioness of Cambridge, and John Lambton, 3rd Earl of Durham, among other nobles, knights, and military officers. Despite this royal prestige, Champagne houses also portrayed Champagne as a luxury enjoyable by anyone, for any occasion.[29] This strategy worked, and, by the turn of the 20th century, the majority of Champagne drinkers were middle class.[30]

In the 19th century, Champagne producers made a concentrated effort to market their wine to women. This is done by having the sweeter champagne associates with female, whereas the dry champagne with male and foreign markets.[28] This was in stark contrast to the traditionally "male aura" that the wines of France had—particularly Burgundy and Bordeaux. Laurent-Perrier again took the lead in this area with advertisements touting their wine's favour with the Countess of Dudley, the wife of the 9th Earl of Stamford, the wife of the Baron Tollemache, and the opera singer Adelina Patti. Champagne labels were designed with images of romantic love and marriage as well as other special occasions that were deemed important to women, such as the baptism of a child.[31]

In some advertisements, the Champagne houses catered to political interest such as the labels that appeared on different brands on bottles commemorating the centennial anniversary of the French Revolution of 1789. On some labels there were flattering images of Marie Antoinette that appealed to the conservative factions of French citizens that viewed the former queen as a martyr. On other labels there were stirring images of Revolutionary scenes that appealed to the liberal left sentiments of French citizens. As World War I loomed, Champagne houses put images of soldiers and countries' flags on their bottles, customizing the image for each country to which the wine was imported. During the Dreyfus affair, one Champagne house released a champagne antijuif with antisemitic advertisements to take advantage of the wave of Antisemitism that hit parts of France.[32]

Champagne is typically drunk during celebrations. For example, British Prime Minister Tony Blair held a Champagne reception to celebrate London winning the right to host the 2012 Summer Olympics.[33] It is also used to launch ships when a bottle is smashed over the hull during the ship's launch. If the bottle fails to break this is often thought to be bad luck.

Grape varieties and styles
Champagne is a single appellation d'origine contrôlée. As a general rule, grapes used must be the white Chardonnay, or the dark-skinned "red wine grapes" Pinot noir or Pinot Meunier, which, due to the gentle pressing of the grapes and absence of skin contact during fermentation, usually also yield a white base wine. Most Champagnes, including Rosé wines, are made from a blend of all three grapes, although blanc de blancs ("white from whites") Champagnes are made from 100% Chardonnay and blanc de noirs ("white from blacks") Champagnes are made solely from Pinot noir, Pinot Meunier or a mix of the two.[27]

Four other grape varieties are permitted, mostly for historical reasons, as they are rare in current usage. The 2010 version of the appellation regulations lists seven varieties as allowed, Arbane, Chardonnay, Petit Meslier, Pinot blanc, Pinot gris, Pinot Meunier, and Pinot noir.[34] The sparsely cultivated varieties (0.02% of the total vines planted in Champagne) of Arbanne, Petit Meslier, and Pinot blanc can still be found in modern cuvées from a few producers.[35] Previous directives of INAO make conditional allowances according to the complex laws of 1927 and 1929, and plantings made before 1938.[36] Before the 2010 regulations, the complete list of the actual and theoretical varieties also included Pinot de Juillet and Pinot Rosé.[37] The Gamay vines of the region were scheduled to be uprooted by 1942, but due to World War II, this was postponed until 1962,[38] and this variety is no longer allowed in Champagne.[34]

The dark-skinned Pinot noir and Pinot meunier give the wine its length and backbone. They are predominantly grown in two areas – the Montagne de Reims and the Vallée de la Marne. The Montagne de Reims run east–west to the south of Reims, in northern Champagne. They are notable for north-facing chalky slopes that derive heat from the warm winds rising from the valleys below. The River Marne runs west–east through Champagne, south of the Montagne de Reims. The Vallée de la Marne contains south-facing chalky slopes. Chardonnay gives the wine its acidity and biscuit flavour. Most Chardonnay is grown in a north–south-running strip to the south of Épernay, called the Côte des Blancs, including the villages of Avize, Oger and Le Mesnil-sur-Oger. These are east-facing vineyards, with terroir similar to the Côte de Beaune. The various terroirs account for the differences in grape characteristics and explain the appropriateness of blending juice from different grape varieties and geographical areas within Champagne, to get the desired style for each Champagne house.[27]

Types of Champagne

Champagne appellation
Most of the Champagne produced today is "Non-vintage", meaning that it is a blended[39] product of grapes from multiple vintages. Most of the base will be from a single year vintage with producers blending anywhere from 10 to 15% (even as high as 40%) of wine from older vintages.[27] If the conditions of a particular vintage are favourable, some producers will make a vintage wine that must be composed of 100% of the grapes from that vintage year.[40] Under Champagne wine regulations, houses that make both vintage and non-vintage wines are allowed to use no more than 80% of the total vintage's harvest for the production of vintage Champagne. This allows at least 20% of the harvest from each vintage to be reserved for use in non-vintage Champagne. This ensures a consistent style that consumers can expect from non-vintage Champagne that does not alter too radically depending on the quality of the vintage. In less than ideal vintages, some producers will produce a wine from only that single vintage and still label it as non-vintage rather than as "vintage" since the wine will be of lesser quality and the producers have little desire to reserve the wine for future blending.[27]

Prestige cuvée
A cuvée de prestige is a proprietary blended wine (usually a Champagne) that is considered to be the top of a producer's range. Famous examples include Louis Roederer's Cristal, Laurent-Perrier's Grand Siècle, Moët & Chandon's Dom Pérignon, Duval-Leroy's Cuvée Femme, Armand de Brignac Gold Brut, and Pol Roger's Cuvée Sir Winston Churchill. Perhaps the first publicly available prestige cuvée was Moët & Chandon's Dom Pérignon, launched in 1936 with the 1921 vintage. Until then, Champagne houses produced different cuvées of varying quality, but a top-of-the-range wine produced to the highest standards (and priced accordingly) was a new idea. In fact, Louis Roederer had been producing Cristal since 1876, but this was strictly for the private consumption of the Russian tsar. Cristal was made publicly available with the 1945 vintage. Then came Taittinger's Comtes de Champagne (first vintage 1952), and Laurent-Perrier's Grand Siècle 'La Cuvée' in 1960, a blend of three vintages (1952, 1953, and 1955) and Perrier Jouët's La Belle Époque. In the last three decades of the 20th century, most Champagne houses followed these with their own prestige cuvées, often named after notable people with a link to that producer and presented in non-standard bottle shapes (following Dom Pérignon's lead with its 18th-century revival design).

Blanc de noirs
A French term (literally "white from blacks" or "white of blacks") for a white wine produced entirely from black grapes. The flesh of grapes described as black or red is white; grape juice obtained after minimal possible contact with the skins produces essentially white wine, with a slightly yellower colour than wine from white grapes. The colour, due to the small amount of red skin pigments present, is often described as white-yellow, white-grey, or silvery. Blanc de noirs is often encountered in Champagne, where a number of houses have followed the lead of Bollinger's prestige cuvée Vieilles Vignes Françaises in introducing a cuvée made from either pinot noir, pinot meunier or a blend of the two (these being the only two black grapes permitted within the Champagne AOC appellation).

Blanc de blancs

A Grand Cru blanc de blancs Champagne
A French term that means "white from whites", and is used to designate Champagnes made exclusively from Chardonnay grapes or in rare occasions from Pinot blanc (such as La Bolorée from Cedric Bouchard). The term is occasionally used in other sparkling wine-producing regions, usually to denote Chardonnay-only wines rather than any sparkling wine made from other white grape varieties.[27]

Rosé Champagne
Rosé Champagnes are characterized by their distinctive blush color, fruity aroma, and earthy flavor. Rosé Champagne has been produced since the late 18th century; storied French Champagne houses Rinault and Veuve Clicquot have each claimed to have shipped and sold the first bottles.[41] The wine is produced by one of two methods. Using the saignée method, winemakers will leave the clear juice of dark grapes to macerate with the skins for a brief time, resulting in wine lightly colored and flavored by the skins. In the more common d'assemblage method, producers will blend a small amount of still red wine to a sparkling wine cuvée.[42] Champagne is light in color even when it is produced with red grapes, because the juice is extracted from the grapes using a gentle process that minimizes contact with the skins. By contrast, Rosé Champagne, especially that created by d'assemblage, results in the production of rosé with a predictable and reproducible color, allowing winemakers to achieve a consistent rosé appearance from year to year.

The character of rosé Champagne has varied greatly since its production began. Thought to be a sign of extravagance when originally introduced,[43] by the early 20th century these wines were colloquially known as "Pink Champagne," and had gained a reputation of frivolousness or even dissipation. The 1939 Hollywood film Love Affair was reportedly approached to promote it by featuring the main characters bonding over enjoying the unpopular drink, and caused a sales boost after the film's release.[44] It is also cited by The Eagles as a beverage of choice in the titular "Hotel California." Rosé Champagnes, particularly brut varieties, began regaining popularity in the late 20th century in many countries. Because of the complex variety of flavors it presents, rosé Champagne is often served in fine dining restaurants, as a complementary element in food and wine pairing.[27]

Sweetness
Just after disgorgement a "liqueur de dosage"[45] - a blend of - most times- cane sugar and wine (sugar amounts up to 750 g/litre)- is added to adjust the levels of sugar in the Champagne when bottled for sale, and hence the sweetness of the finished wine. Today sweetness is generally not looked for per se, dosage is used to fine tune the perception of acidity in the wine. Wines labeled Brut Zero, more common among smaller producers,[46] have no added sugar and will usually be very dry, with less than 3 grams of residual sugar per litre in the finished wine. The following terms are used to describe the sweetness of the bottled wine:

Extra Brut (less than 6 grams of sugar per litre)
Brut (less than 12 grams)
Extra Dry (between 12 and 17 grams)
Sec (between 17 and 32 grams)
Demi-sec (between 32 and 50 grams)
Doux (50 grams)
The most common style today is Brut. However, throughout the 19th century and into the early 20th century Champagne was generally much sweeter than it is today. Moreover, except in Britain, Champagne was drunk as dessert wines (after the meal), rather than as table wines (with the meal).[47] At this time, Champagne sweetness was instead referred to by destination country, roughly as:[48]

Goût anglais ("English taste", between 22 and 66 grams); note that today goût anglais refers to aged vintage Champagne
Goût américain ("American taste", between 110 and 165 grams)
Goût français ("French taste", between 165 and 200 grams)
Goût russe ("Russian taste", between 200 and 300 grams)
Of these, only the driest English is close to contemporary tastes.

Champagne bottles
Further information: Wine bottle

Side-by-side comparison of Champagne bottles. (L to R) On ladder: Magnum (1.5 litres), full (0.75 litre), half (0.375 litre), quarter (0.1875 litre). On floor: Balthazar (12 litres), Salmanazar (9 litres), Methuselah (6 litres), Jeroboam (3 litres)
Champagne is mostly fermented in two sizes of bottles, standard bottles (750 millilitres) and magnums (1.5 litres). In general, magnums are thought to be higher quality, as there is less oxygen in the bottle, and the volume-to-surface area ratio favours the creation of appropriately sized bubbles. However, there is no hard evidence for this view. Other bottle sizes, mostly named for Biblical figures, are generally filled with Champagne that has been fermented in standard bottles or magnums. Gosset still bottles its Grande Réserve in jeroboam from the beginning of its second fermentation.

Sizes larger than Jeroboam (3 L) are rare. Primat bottles (27 L)—and, as of 2002, Melchizedek bottles (30 L)—are exclusively offered by the House Drappier. (The same names are used for bottles containing regular wine and port; however, Jeroboam, Rehoboam, and Methuselah refer to different bottle volumes.)[49]

Unique sizes have been made for specific markets, special occasions and people. The most notable example is perhaps the 20 fluid oz. / 56.8 cl (imperial pint) bottle made between 1874 and 1973 for the English market by Pol Roger, often associated with Sir Winston Churchill.[50]

In 2009, a bottle of 1825 Perrier-Jouët Champagne was opened at a ceremony attended by 12 of the world's top wine tasters. This bottle was officially recognised by Guinness World Records as the oldest bottle of Champagne in the world. The contents were found to be drinkable, with notes of truffles and caramel in the taste. There are now only two other bottles from the 1825 vintage extant.[51]

In July 2010, 168 bottles were found on board a shipwreck near the Åland Islands in the Baltic Sea by Finnish diver Christian Ekström. Initial analyses indicated there were at least two types of bottle from two different houses: Veuve Clicquot in Reims and the long-defunct Champagne house Juglar (absorbed into Jacquesson in 1829.)[52] The shipwreck is dated between 1800 and 1830, and the bottles discovered may well predate the 1825 Perrier-Jouët referenced above.[53][54] When experts were replacing the old corks with new ones, they discovered there were also bottles from a third house, Heidsieck. The wreck, then, contained 95 bottles of Juglar, 46 bottles of Veuve Clicquot, and four bottles of Heidsieck, in addition to 23 bottles whose manufacture is still to be identified. Champagne experts Richard Juhlin and Essi Avellan, MW[52] described the bottles' contents as being in a very good condition. It is planned that the majority of the bottles will be sold at auction, the price of each estimated to be in the region of £40,000–70,000.[53][54][55]

In April 2015, nearly five years after the bottles were first found, researchers led by Philippe Jeandet, a professor of food biochemistry, released the findings of their chemical analyses of the Champagne, and particularly noted the fact that, although the chemical composition of the 170-year-old Champagne was very similar to the composition of modern-day Champagne, there was much more sugar in this Champagne than in modern-day Champagne, and it was also less alcoholic than modern-day Champagne. The high sugar level was characteristic of people's tastes at the time, and Jeandet explained that it was common for people in the 19th century, such as Russians, to add sugar to their wine at dinner. It also contained higher concentrations of minerals such as iron, copper, and table salt than modern-day Champagne does.[56][57]

Champagne corks

A Champagne cork before usage. Only the lower section, made of top-quality pristine cork, will be in contact with the Champagne

Corking a Champagne Bottle: 1855 engraving of the manual method
Champagne corks are mostly built from three sections and are referred to as agglomerated corks. The mushroom shape that occurs in the transition is a result of the bottom section's being composed of two stacked discs of pristine cork cemented to the upper portion, which is a conglomerate of ground cork and glue. The bottom section is in contact with the wine. Before insertion, a sparkling wine cork is almost 50% larger than the opening of the bottle. Originally, the cork starts as a cylinder and is compressed before insertion into the bottle. Over time, their compressed shape becomes more permanent and the distinctive "mushroom" shape becomes more apparent.

The aging of the Champagne post-disgorgement can to some degree be told by the cork, as, the longer it has been in the bottle, the less it returns to its original cylinder shape.

Champagne etiquette
See also: Champagne stemware
Champagne is usually served in a Champagne flute, whose characteristics include a long stem with a tall, narrow bowl, thin sides and an etched bottom. The intended purpose of the shape of the flute is to reduce surface area, therefore preserving carbonation, as well as maximizing nucleation (the visible bubbles and lines of bubbles).[58] Legend has it that the Victorian coupe's shape was modelled on the breast of Madame de Pompadour, chief-mistress of King Louis XV of France, or perhaps Marie Antoinette, but the glass was designed in England over a century earlier especially for sparkling wine and champagne in 1663.[59][60] Champagne is always served cold; its ideal drinking temperature is 7 to 9 °C (45 to 48 °F). Often the bottle is chilled in a bucket of ice and water, half an hour before opening, which also ensures the Champagne is less gassy and can be opened without spillage. Champagne buckets are made specifically for this purpose and often have a larger volume than standard wine-cooling buckets to accommodate the larger bottle, and more water and ice.[61]

Opening Champagne bottles
To reduce the risk of spilling or spraying any Champagne, open the Champagne bottle by holding the cork and rotating the bottle at an angle in order to ease out the stopper. This method, as opposed to pulling the cork out, prevents the cork from flying out of the bottle at speed. (The expanding gases are supersonic.[62]) Also, holding the bottle at an angle allows air in and helps prevent the champagne from geysering out of the bottle.

A sabre can be used to open a Champagne bottle with great ceremony. This technique is called sabrage (the term is also used for simply breaking the head of the bottle).[63]

Pouring Champagne
Pouring sparkling wine while tilting the glass at an angle and gently sliding in the liquid along the side will preserve the most bubbles, as opposed to pouring directly down to create a head of "mousse", according to a study, On the Losses of Dissolved CO2 during Champagne serving, by scientists from the University of Reims.[64] Colder bottle temperatures also result in reduced loss of gas.[64] Additionally, the industry is developing Champagne glasses designed specifically to reduce the amount of gas lost.[65]

Spraying Champagne

Champagne on the podium of the 2007 Tour of Gippsland
Champagne has been an integral part of sports celebration since Moët & Chandon started offering their Champagne to the winners of Formula 1 Grand Prix events. At the 1967 24 Hours of Le Mans, winner Dan Gurney started the tradition of drivers spraying the crowd and each other.[66] The Muslim-majority nation Bahrain banned Champagne celebrations on F1 podiums in 2004, using a nonalcoholic pomegranate and rose water drink instead.[67]

In 2015, some Australian sports competitors began to celebrate by drinking champagne from their shoe, a practice known as shoey.

Culinary uses
The poulet au champagne ("chicken with Champagne") is an essentially Marnese specialty.[68] Other well-known recipes using Champagne are huîtres au champagne ("oysters with Champagne") and Champagne zabaglione.

Champagne price
There are several general factors influencing the price of Champagne: the limited land of the region, the prestige that Champagne has developed worldwide, and the high cost of the production process, among possible others.[69]

Champagne producers
Main article: list of Champagne houses
A list of major Champagne producers and their respective Cuvée de prestige

See also
	Drink portal
Autolysis (wine)
Champagne breakfast
Champagne Riots
Classification of Champagne vineyards
Coteaux Champenois AOC, term used for non-sparkling (still) wines produced in the same area
List of Champagne houses
Louis Bohne, sales agent for Veuve Clicquot in the 19th century
Zante currants marketed as Champagne grapes
References





Champagne wine region
https://en.wikipedia.org/wiki/Champagne_wine_region
From Wikipedia, the free encyclopedia
Jump to navigationJump to search
Not to be confused with the wine called Champagne.

Viticultural zones in the Champagne region

Champagne vineyards in Verzenay in the Montagne de Reims subregion
The Champagne wine region is a wine region within the historical province of Champagne in the northeast of France. The area is best known for the production of the sparkling white wine that bears the region's name. EU law and the laws of most countries reserve the term "Champagne" exclusively for wines that come from this region located about 160 kilometres (100 miles) east of Paris but there was recently a small region that was once connected to Britain that was also legible to creating champagne. The viticultural boundaries of Champagne are legally defined and split into five wine-producing districts within the historical province: Aube, Côte des Blancs, Côte de Sézanne, Montagne de Reims, and Vallée de la Marne. The towns of Reims and Épernay are the commercial centers of the area. Reims is famous for its cathedral, the venue of the coronation of the French Kings and a UNESCO World Heritage Site.[1]

Located at the northern edges of France, the history of the Champagne wine region has had a significant role in the development of this unique terroir. The area's proximity to Paris promoted the region's economic success in its wine trade but also put the villages and vineyards in the path of marching armies on their way to the French capital. Despite the frequency of these military conflicts, the region developed a reputation for quality wine production in the early Middle Ages and was able to continue that reputation as the region's producers began making sparkling wine with the advent of the great Champagne houses in the 17th and 18th centuries. The principal grapes grown in the region include Chardonnay, Pinot noir, and Pinot Meunier. Pinot noir is the most widely planted grape in the Aube region and grows very well in Montagne de Reims. Pinot Meunier is the dominant grape in the Vallée de la Marne region. The Côte des Blancs is dedicated almost exclusively to Chardonnay.[2]


Contents
1	Geography and climate
2	History
2.1	Military conflicts
2.2	History of wine production
2.2.1	Rivalry with Burgundy
3	Classifications and vineyard regulations
3.1	Revision of the Champagne region
4	Production other than sparkling wine
5	Traditions
6	See also
7	References
Geography and climate
The Champagne province is located near the northern limits of the wine world along the 49th parallel. The high latitude and mean annual temperature of 10 °C (50 °F) creates a difficult environment for wine grapes to fully ripen. Ripening is aided by the presence of forests which helps to stabilize temperatures and maintain moisture in the soil. The cool temperatures serve to produce high levels of acidity in the resulting grape which is ideal for sparkling wine.[3]

During the growing season, the mean July temperature is 18 °C (66 °F). The average annual rainfall is 630 mm (25 inches), with 45 mm (1.8 inches) falling during the harvest month of September. Throughout the year, growers must be mindful of the hazards of fungal disease and early spring frost.[4]

Ancient oceans left behind chalk subsoil deposits when they receded 70 million years ago. Earthquakes that rocked the region over 10 million years ago pushed the marine sediments of belemnite fossils up to the surface to create the belemnite chalk terrain. The belemnite in the soil allows it to absorb heat from the sun and gradually release it during the night as well as providing good drainage. This soil contributes to the lightness and finesse that is characteristic of Champagne wine. The Aube area is an exception with predominately clay based soil.[3] The chalk is also used in the construction of underground cellars that can keep the wines cool through the bottle maturation process.[4]

History
Main article: History of Champagne

Statue of Pope Urban II in Champagne
The Carolingian reign saw periods of prosperity for the Champagne region beginning with Charlemagne's encouragement for the area to start planting vines and continuing with the coronation of his son Louis the Pious at Reims. The tradition of crowning kings at Reims contributed to the reputation of the wines that came from this area.[5] The Counts of Champagne ruled the area as an independent county from 950 to 1316. In 1314, the last Count of Champagne assumed the throne as King Louis X of France and the region became part of the Crown territories.

Military conflicts
The location of Champagne played a large role in its historical prominence as it served as a "crossroads" for both military and trade routes. This also made the area open to devastation and destruction during military conflicts that were frequently waged in the area. In 451 A.D. near Châlons-en-Champagne Attila and the Huns were defeated by an alliance of Roman legions, Franks and Visigoths. This defeat was a turning point in the Huns' invasion of Europe.[6]

During the Hundred Years' War, the land was repeatedly ravaged and devastated by battles. The Abbey of Hautvillers, including its vineyards, was destroyed in 1560 during the War of Religion between the Huguenots and Catholics. This was followed by conflicts during the Thirty Year War and the Fronde Civil War where soldiers and mercenaries held the area in occupation. It was not until the 1660s, during the reign of Louis XIV, that the region saw enough peace to allow advances in sparkling wine production to take place.[7]

History of wine production

Champagne wine
The region's reputation for wine production dates back to the Middle Ages when Pope Urban II ( ruled 1088-1099 AD/CE ), a native Champenois, declared that the wine of Aÿ in the Marne département was the best wine produced in the world. For a time Aÿ was used as a shorthand designation for wines from the entire Champagne region, similar to the use of Beaune for the wines of Burgundy.[8] The poet Henry d'Andeli's work La Bataille des Vins rated wines from the towns of Épernay, Hautvillers and Reims as some of the best in Europe. As the region's reputation grew, popes and royalty sought to own pieces of the land with Pope Leo X, Francis I of France, Charles V of Spain, and Henry VIII of England all owning vineyard land in the region. A batch of wine from Aÿ received in 1518 by Henry VIII's chancellor, Cardinal Thomas Wolsey, is the first recorded export of wine from the Champagne region to England.[9]

The still wines of the area were highly prized in Paris under the designation of vins de la rivière and vins de la montagne- wines of the river and wines of the mountain in reference to the wooded terrain and the river Marne which carried the wines down to the Seine and into Paris.[10] The region was in competition with Burgundy for the Flemish wine trade and tried to capitalize on Reims' location along the trade route from Beaune. In the 15th century, Pinot noir became heavily planted in the area. The resulting red wine had difficulty comparing well to the richness and coloring of Burgundy wines, despite the addition of elderberries to deepen the color. This led to a greater focus on white wines.[11]

The Champagne house of Gosset was founded as a still wine producer in 1584 and is the oldest Champagne house still in operation today. Ruinart was founded in 1729 and was soon followed by Chanoine Frères (1730), Taittinger (1734), Moët et Chandon (1743) and Veuve Clicquot (1772).[9]

The nineteenth century saw an explosive growth in Champagne production going from a regional production of 300,000 bottles a year in 1800 to 20 million bottles in 1850.[12]

Rivalry with Burgundy
A strong influence on Champagne wine production was the centuries-old rivalry between the region and Burgundy. From the key market of Paris to the palace of Louis XIV of France at Versailles, proponents of Champagne and Burgundy would compete for dominance. For most of his life, Louis XIV would drink only Champagne wine with the support of his doctor Antoine d'Aquin who advocated the King drink Champagne with every meal for the benefit of his health. As the King aged and his ailments increased, competing doctors would propose alternative treatments with alternative wines, to soothe the King's ills. One of these doctors, Guy-Crescent Fagon conspired with the King's mistress to oust d'Aquin and have himself appointed as Royal Doctor. Fagon quickly attributed the King's continuing ailments to Champagne and ordered that only Burgundy wine must be served at the royal table.[13]

This development had a ripple effect throughout both regions and in the Paris markets. Both Champagne and Burgundy were deeply concerned with the "healthiness" reputation of their wines, even to the extent of paying medical students to write theses touting the health benefit of their wines. These theses were then used as advertising pamphlets that were sent to merchants and customers. The Faculty of Medicine in Reims published several papers to refute Fagon's claim that Burgundy wine was healthier than Champagne. In response, Burgundian winemakers hired physician Jean-Baptiste de Salins, dean of the medical school in Beaune, to speak to a packed auditorium at the Paris Faculty of Medicine. Salins spoke favorably of Burgundy wine's deep color and robust nature and compared it to the pale red color of Champagne and the "instability" of the wine to travel long distances and the flaws of the bubbles from when secondary fermentation would take place. The text of his speech was published in newspapers and pamphlets throughout France and had a damaging effect on Champagne sales.[14]

The war of words would continue for another 130 years with endless commentary from doctors, poets, playwrights and authors all arguing for their favorite region and their polemics being reproduced in advertisements for Burgundy and Champagne. On a few occasions, the two regions were on the brink of civil war.[15] A turning point occurred when several Champagne wine makers abandoned efforts to produce red wine in favor of focusing on harnessing the effervescent nature of sparkling Champagne. As the bubbles became more popular, doctors throughout France and Europe commented on the health benefits of the sparkling bubbles which were said to cure malaria. As more Champenois winemakers embarked on this new and completely different wine style, the rivalry with Burgundy mellowed and eventually waned.[15]

Classifications and vineyard regulations
See also: Classification of Champagne vineyards

Grand Cru Champagne from the village of Ambonnay

Vineyard in Champagne
In 1927, viticultural boundaries of Champagne were legally defined and split into five wine-producing districts: The Aube, Côte des Blancs, Côte de Sézanne, Montagne de Reims, and Vallée de la Marne. This area covered in 2008 33,500 hectares (76,000 acres) of vineyards around 319 villages that were home to 5,000 growers who made their own wine and 14,000 growers who only sold grapes.[3][16][17]

The different districts produce grapes of varying characteristics that are blended by the Champagne houses to create their distinct house styles. The Pinots of the Montagne de Reims that are planted on northern facing slopes are known for their high levels of acid and the delicacy they add to the blend. The grapes on the southern facing slope add more power and character. Grapes across the district contribute to the bouquet and headiness. The abundance of southern facing slopes in the Vallée de la Marne produces the ripest wines with full aroma. The Côte des Blancs grapes are known for their finesse and the freshness they add to blends with the extension of the nearby Côte de Sézanne offering similar though slightly less distinguished traits.[10]

In 1941, the Comité Interprofessionnel du Vin de Champagne (CIVC) was formed with the purpose of protecting Champagne's reputation and marketing forces as well as setting up and monitoring regulations for vineyard production and vinification methods. Champagne is the only region that is permitted to exclude AOC or Appellation d'Origine Contrôlée from their labels.[3]

For each vintage, the CIVC rated the villages of the area based on the quality of their grapes and vineyards. The rating was then used to determine the price and the percentage of the price that growers get. The Grand Cru rated vineyards received 100 percent rating which entitled the grower to 100% of the price. Premier Crus were vineyards with 90–99% ratings while Deuxième Crus received 80–89% ratings.[2] Under appellation rules, around 4,000 kilograms (8,800 pounds) of grapes can be pressed to create up to 673 gallons (either 2,550 L or 3,060 L) of juice. The first 541 gallons (either 2,050 L or 2,460 L) are the cuvée and the next 132 gallons (either 500 L or 600 L) are the taille. Prior to 1992, a second taille of 44 gallons (either 167 L or 200 L) was previously allowed. For vintage Champagne, 100% of the grapes must come from that vintage year while non-vintage wine is a blend of vintages. Vintage champagne must spend a minimum of three years of aging. There are no regulations about how long it must spend on its lees, but some of the premier Champagne houses keep their wines on lees for upwards of five to ten years. Non-vintage Champagne must spend a minimum of 15 months of aging but only a minimum of 12 months on the lees. Most of the Champagne houses keep their wines on the lees through the whole time of aging because it is more expensive to bottle the wine then age it and finally shipped.[2]

Revision of the Champagne region

Grand Cru Champagne from the village of Bouzy
The worldwide demand for Champagne has been continuously increasing throughout the 1990s and early 2000s. A record in worldwide shipping of Champagne (including domestic French consumption) of 327 million bottles was set in 1999 in anticipation of end of millennium celebrations, and a new record was set in 2007 at 338.7 million bottles.[18] Since the entire vineyard area authorized by the 1927 AOC regulations is now planted, various ways of expanding the production have been considered. The allowed yield was increased (to a maximum of 15,500 kg per hectare during an experimental period from 2007 to 2011[19]) and the possibility of revising the production region was investigated.

After an extensive review of vineyard conditions in and around the existing Champagne region, INAO presented a proposal to revise the region on March 14, 2008. The proposal was prepared by a group of five experts in the subjects of history, geography, geology, phytosociology and agronomy, working from 2005.[20] The proposal means expanding the region to cover vineyards in 357 rather than 319 villages.[16] This is to be achieved by adding vineyards in forty villages while simultaneously removing two villages in the Marne départment that were included in the 1927 regulations, Germaine and Orbais-l'Abbaye.[21]

The proposed 40 new Champagne villages are located in four départments:[22][23]

22 in Marne: Baslieux-les-Fismes, Blacy, Boissy-le-Repos, Bouvancourt, Breuil-sur-Vesle, Bussy-le-Repos, Champfleury, Courlandon, Courcy, Courdemanges, Fismes, Huiron, La Ville-sous-Orbais, Le Thoult-Trosnay, Loivre, Montmirail, Mont-sur-Courville, Peas, Romain, Saint-Loup, Soulanges, and Ventelay.
15 in Aube: Arrelles, Balnot-la-Grange, Bossancourt, Bouilly, Étourvy, Fontvannes, Javernant, Laines-aux-Bois, Macey, Messon, Prugny, Saint-Germain-l'Épine, Souligny, Torvilliers and Villery.
Two in Haute-Marne: Champcourt and Harricourt.
One, Marchais-en-Brie, in Aisne.
The INAO proposal was to be subject to review before being made into law and was immediately questioned in numerous public comments. The mayor of one of the villages to be delisted, Germaine, immediately appealed against INAO's proposal, with the possibility of additional appeals by vineyard owners.[16][24] The initial review process is expected to be finished by early 2009. This will be followed by another review of the specific parcels that will be added or deleted from the appellation. The earliest vineyard plantings are expected around 2015, with their product being marketed from around 2021. However, the price of land that are allowed to be used for Champagne production is expected to immediately rise from 5,000 to one million euro per hectare.

While some critics have feared the revision of the Champagne region is about expanding production irrespective of quality, British wine writer and Champagne expert Tom Stevenson has pointed out that the proposed additions constitute a consolidation rather than expansion. The villages under discussion are situated in gaps inside the perimeter of the existing Champagne regions rather than outside it.[20]

Production other than sparkling wine
While totally dominating the region's production, sparkling Champagne is not the only product that is made from the region's grapes. Non-sparkling still wines, like those made around the village Bouzy, are sold under the appellation label Coteaux Champenois.[10] There is also a rosé appellation in the region, Rosé des Riceys. The regional vin de liqueur is called Ratafia de Champagne. Since the profit of making sparkling Champagne from the region's grape is now much higher, production of these non-sparkling wines and fortified wines is very small.

The pomace from the grape pressing is used to make Marc de Champagne, and in this case the production does not compete with that of Champagne, since the pomace is a by-product of wine production.

Traditions
The end of harvest in Champagne is marked by a celebration known as la Fête du Cochelet.[25] At Reims, "St Jean is the patron of the cellar staff and those engaged in work connected with Champagne."[26]

See also
Champagne Riots
Oeil de Perdrix, wine style believed to have been invented by the Champenois




Humboldt County, California
https://en.wikipedia.org/wiki/Humboldt_County,_California#Economy
Cannabis
Further information: Cannabis in California
As part of the Emerald Triangle, Humboldt County is known for its cultivation of Cannabis, estimated to be worth billions of dollars.[40][41] Proposition 215 allows patients and caregivers who are given a doctor's recommendation to legally (State level only) grow up to 99 plants in Humboldt County.[42][43] However, in the years before Prop 215 (early 1970s – late 1980s), Humboldt County saw a large migration of the Bay Area counter-culture to the region. Many came looking to purchase cheap land, and ended-up growing marijuana to pay for their land. Especially around Garberville and Redway, the rural culture and hippie scene eventually collaborated to create a rural hippie community in which marijuana became the center of the economy and the culture. Many people prospered by producing marijuana for California and other states because of its reputation for quality.[44] A Redway radio station, KMUD, in the past has issued warnings and alerts to the region with information on whereabouts of law enforcement on their way to raid marijuana gardens.[45][44]

The Campaign Against Marijuana Planting is the multi-agency law enforcement task force managed by the California Department of Justice, formed with the prime purpose of eradicating illegal cannabis production in California. The operations began in the late 70s, but the name CAMP became used after its official establishment in 1983. While the influence of CAMP in Humboldt County has waned with decriminalization of marijuana, there is a renewed interest at the state level regarding valid growing permits and environmental concerns. As a result, CAMP is today still utilized as a policing body, in accordance with the DEA.[46] Yearly CAMP reports, published by the California Department of Justice, Bureau of Narcotic Enforcement (BNE) are available online through Humboldt State University's Special Collections. Starting in 1983, the annual reports detail the organizational structure and names of individual participants, a summary of the season's activities, tactics, and mention of special successes, trends and hazards.[46]

County officials and the industry have encountered challenges in the transition from an illegal, underground economy to legal recreational cannabis sales that began in California in 2018.[47]





Cannabis in California
https://en.wikipedia.org/wiki/Cannabis_in_California
Cannabis in California has been legal for medical use since 1996, and for recreational use since late 2016. The state of California has been at the forefront of efforts to liberalize cannabis laws in the United States, beginning in 1972 with the nation's first ballot initiative attempting to legalize cannabis (Proposition 19). Although it was unsuccessful, California would later become the first state to legalize medical cannabis with the passage of the Compassionate Use Act of 1996 (Proposition 215).[1] In November 2016, California voters approved the Adult Use of Marijuana Act (Proposition 64) to legalize the recreational use of cannabis.

As a result of recreational legalization, local governments (city and county) may not prohibit adults from growing, using, or transporting marijuana for personal use. Commercial activities can be regulated or prohibited by local governments although deliveries cannot be prohibited.[2][3] Following recreational legalization, existing growers and suppliers of medical cannabis were required to register, comply with regulations, and apply for permits. Over half of the nonprofit dispensaries legally providing medical marijuana closed. Local agencies have been slow to approve retail stores selling cannabis for recreational purposes with most cities and counties banning retail with a wait and see approach. Many existing growers have been slow to apply for permits as it has been estimated that 60 percent or more of all cannabis consumed in the United States comes from northern California. The export of marijuana to other states remains illegal since the U.S. Drug Enforcement Administration considers it a Schedule 1 drug.

Reducing illegal activity is considered essential for the success of legal operations who pay the considerable taxes assessed by state and local authorities. Many people do not have nearby retail stores selling cannabis and continue to buy from unlicensed sellers. Illegal growing continues in remote rural areas. Raids and confiscation by law enforcement of illegal retail and grow operations has continued and in some cases stepped up after legalization.

California's main regulatory agencies are the Bureau of Cannabis Control (BCC), Department of Food and Agriculture, and Department of Public Health.[4][5]


Contents
1	Current state and local regulation
1.1	Possession
1.2	Cultivation
1.3	Trespass grows
1.4	On-site consumption
1.5	Retail and delivery
1.6	Special events
2	History
2.1	Industrial hemp
2.2	Psychoactive cannabis
2.3	Criminalization
2.4	Popularization
2.5	Illicit cultivation
2.6	Decriminalization
2.6.1	Moscone Act (1975)
2.6.2	"Smoke a joint, lose your license" expires (1999)
2.6.3	Proposition 36 (2000)
2.6.4	Senate Bill 1449 (2010)
2.7	Medical cannabis legalization
2.7.1	Early reform efforts (pre-1996)
2.7.2	Proposition 215 (1996)
2.7.3	Senate Bill 420 (2003)
2.7.4	Implementation and criticism
2.7.5	Conflict with federal law
2.8	Recreational cannabis legalization
2.8.1	Proposition 19 (1972)
2.8.2	Marijuana Control, Regulation, and Education Act (2009)
2.8.3	Proposition 19 (2010)
2.8.4	Proposition 64 (2016)
3	See also
4	References
5	External links
Current state and local regulation
Companies must be licensed by the local agency to grow, test, or sell cannabis within each jurisdiction. Cities and counties (unincorporated areas) may license none or only some of these activities.[2] Deliveries by state-licensed firms cannot be prohibited by local jurisdictions as of January 2019 per BCC Regulation 5416.[3] Unlicensed sales were not reduced as fast as many expected.[6][7] Due to the continued operation of much illegal activity, heavy taxation is an important issue for licensed operators.[8] They are concerned about the perceived lack of sufficient enforcement against illegal activities.[9][10] The legal market includes the cost of mandatory testing.[6] Authorities warn that the illegal market may contain pesticide or other chemical residues and mold.[7] Other products sold illegally that have not been tested include edible products[11] and vaping pens.[12][13][14]

Since there are many communities where no stores have been allowed, state legislators have introduced bills that would force many local jurisdictions to allow some retail establishments especially if a majority in the area voted in favor of legalizing cannabis for recreational purposes.[2] Local governments have been critical of the proposal and were joined by a May 2019 editorial in the Los Angeles Times that was critical of this type of legislation.[15] State legislators argue that the lack of access to legal establishments is one reason the illegal sales continue.[2]

Besides being licensed by each local agency, the industry is under three different state regulatory agencies. Retailers, distributors and testing labs are regulated by the Bureau of Cannabis Control. Cultivators are under the Department of Food and Agriculture. The Department of Public Health deals with product manufacturers.[16]

The California Bureau of Cannabis Control has prohibited the export of marijuana to other states since with the U.S. Drug Enforcement Administration considers it a Schedule 1 drug.[17] California grows up to five times more than its residents consume by some accounts. Others have estimated that 80% of the crop is shipped out of state. Exported cannabis not only escapes taxation or regulation by California but users in other states will pay a much higher price.[18] The Federal Bureau of Investigation has investigated officials in several cities and counties.[19]

Possession
Local governments may not prohibit adults from growing, using or transporting marijuana for personal use. An appeals court ruled that inmates who possess small amounts of marijuana in prison are not guilty of a felony crime.[20] Attorney General Xavier Becerra's office had argued that possessing small amounts of marijuana is legally banned in prison which can result in significantly increasing a prisoner's sentence.[21]

Cultivation
Cannabis is estimated to be the largest cash crop in California with a value of more than $11 billion.[22] The state provided most of the cannabis consumed in the United States prior to legalization which was intended to provide a transition to legal, licensed growing. The California Environmental Quality Act (CEQA) requires a detailed analysis of the environmental impact of growers operations. Statewide, 208 growers had obtained regular, annual licenses by July 2019. At this point of some 18 months into legalization, 1,532 growers were still operating on provisional permits as they went through the CEQA process that requires extensive paperwork.[23] Smaller farms were given five years to become established under legalization before larger growers were allowed to enter the market.[24] Under the regulations set to expire in 2023, growers can have only one medium licence but there is no limit on the number of small licenses an individual grower can have. This loophole has allowed larger growers to operate.[25]

Humboldt, Mendocino, and Trinity counties have long been known as Northern California's Emerald Triangle as it is estimated that 60 percent or more of all cannabis consumed in the United States is grown there. Registering and applying for permits has not been an easy decision for many long time growers in these three counties.[22]

In Santa Barbara County, cannabis growing has taken over greenhouses that formerly grew flowers. In the first four months of legalization, the county had almost 800 permits issued for cultivators, the most of any county in the state.[25]

Calaveras County registered more than seven hundred cultivators after county voters approved a tax in 2016.[26]

Trespass grows
Unlicensed growing continues in remote rural areas and has expanded according to some law enforcement reports. Raids and confiscation of illegal grow operations by law enforcement has continued and in some cases stepped up after legalization.[27][28][29][30][31]

On-site consumption
In July 2019, the West Hollywood approved a cannabis consumption license for Lowell Herb Co, "the first of its kind in the nation". Lowell Farms: A Cannabis Cafe opened in September 2019 with a menu of cannabis for consumption, THC-infused drinks and meals for cannabis-enhanced sense of taste and smell. It includes the expertise of cannabis sommeliers, known as "budtenders" on site.[32][33] It has since been rebranded as the "Original Cannabis Cafe", separating itself from the Lowell Farms corporate brand. A retail establishment, being licensed in Lompoc for on site consumption in December 2019, claims to be the first between Los Angeles and San Francisco.[34]

Retail and delivery
Stores selling cannabis for recreational purposes have been banned from 80% of the 482 municipalities in California.[2] In September 2019, 873 cannabis sellers had been licensed by the state while the United Cannabis Business Assn. conducted an audit that estimated there are approximately 2,835 unlicensed dispensaries and delivery services based on advertising.[12] Legal retailers say the illegal market is larger than the they are due to the high costs they pay in start-up permit costs and on-going taxes. They complain about the lack of effective enforcement against unlicensed shops.[22]

Prior to 2018, about 2,000 nonprofit dispensaries legally provided medical marijuana. Legalization introduced regulations that increased the cost of operation and more than 65% of dispensaries shut their doors.[35] In January, 2018, Los Angeles had no licensed retailers; the closest cities with licensed retail sales were Santa Ana on January 1 and West Hollywood on January 2.[36][37] Recreational marijuana shops began to open in January 2018, with many districts beginning recreational sales on the first or fifth of January 2018.[38] As of September 2019, 187 dispensaries have temporary city approval in Los Angeles.[12] Los Angeles adopted an ordinance in 2018 to restrict some storefront and billboard advertising after research showed that young adults who lived near dispensaries that had storefront signage used marijuana more frequently than their peers and have more positive views about the drug.[39]

Many dispensaries and delivery companies continued to operate under the stay-at-home order during the COVID-19 pandemic.[40] With an executive order on March 22, Governor Gavin Newsom declared cannabis one of the enterprises to be an essential business.[41]

Special events
Organizers of cannabis festivals are required to get permission from state and local agencies. Under the permits, they can let anyone 21 and older buy and smoke weed at the festival.[42][43] In 2019, Outside Lands Music and Arts Festival in San Francisco became the first major music festival to offer legal cannabis for sale on site. The area was known as "Grass Lands" and sold more than $1 million in cannabis products such as edibles, vaping cartridges and joints over the three-day event.[44]

History
Industrial hemp
Cannabis was cultivated for fiber and rope as early as 1795 in California, when cultivation began at Mission San Jose under the governorship of Diego de Borica. Cannabis was grown in several regions of Southern California, with two-thirds of it being grown on the missions.[45] California produced 13,000 pounds of hemp in 1807, and 220,000 pounds in 1810.[46] However, in 1810 Mexico began to rebel against the Spanish crown, and the subsidies for growing hemp were cut, leading to a near-disappearance of the crop. A few missions continued to grow it for local use, and the Russian colonists grew hemp at Fort Ross until the station was abandoned in 1841.[45]

Psychoactive cannabis
Among the early cultivators of cannabis for recreational use in California were Arabs, Armenians, and Turks who grew cannabis as early as 1895 to make hashish for local consumption.[47] Unlike in other states where fears of black or Hispanic use of cannabis drove new restrictions, California was an exception for its focus on South Asian immigrants. A California delegate to the Hague Convention wrote in 1911: Within the last year we in California have been getting a large influx of Hindoos and they have in turn started quite a demand for cannabis indica; they are a very undesirable lot and the habit is growing in California very fast.[48]

Criminalization
The Poison Act was passed in California in 1907, and in 1913 an amendment[49] was made to make possession of "extracts, tinctures, or other narcotic preparations of hemp, or loco-weed, their preparations and compounds" a misdemeanor.[50] There is no evidence that the law was ever used or intended to restrict pharmaceutical cannabis; instead it was a legislative mistake, and in 1915 another amendment[51] forbade the sale or possession of "flowering tops and leaves, extracts, tinctures and other narcotic preparations of hemp or loco weed (Cannabis sativa), Indian hemp" except with a prescription.[50] Both bills were drafted and supported by the California State Board of Pharmacy.[50]

In 1914, one of the first cannabis drug raids in the nation occurred in the Mexican-American neighborhood of Sonoratown in Los Angeles, where police raided two "dream gardens" and confiscated a wagonload of cannabis.[52] In 1925, possession, which had previously been treated the same as distribution, became punishable by up to 6 years in prison, and black market sale, which had initially been a misdemeanor punishable by a $100–$400 fine and/or 50–180 days in jail for first offenders, became punishable by 6 months–6 years.[50] In 1927, the laws designed to target opium usage were finally extended to Indian hemp.[50] In 1929, second offenses for possession became punishable by sentences of 6 months–10 years.[50] In 1937, cannabis cultivation became a separate offense.[50]

By 1932, 60% of narcotics arrests in Los Angeles involved cannabis, which was considered "much less serious than the morphine cases."[53] In 1954, penalties for marijuana possession were hiked to a minimum 1–10 years in prison, and sale was made punishable by 5–15 years with a mandatory 3 years before eligibility for parole; two prior felonies raised the maximum sentences for both offenses to life imprisonment.[50]

Popularization
In the 1950s and 1960s, the beatnik and later hippie cultures experimented with cannabis, driving increased interest in the drug. In 1964, the first cannabis legalization group was formed in the U.S. when Lowell Eggemeier of San Francisco was arrested, and his attorney established LEMAR (LEgalize MARijuana) shortly afterwards.[54] By the mid-1960s, the Saturday Evening Post was publishing articles estimating that half the college population of California had tried cannabis. One writer commented that usage was: so widespread that pot must be considered an integral part of the generation's life experience.[55]

Illicit cultivation
In the 1960s–1970s, people in California had developed the sinsemilla ("without seeds") method of producing cannabis, uprooting the male plants before they could pollinate the females, resulting a seedless and more potent cannabis. Around 1975, this technique arrived in Humboldt County, which was to become one of the nation's most famous centers of cannabis production. California growers received an unintentional advantage from the US government, which in the 1970s began spraying cannabis fields in Mexico with the herbicide paraquat. Fears of contamination led to a drop in demand for cheaper Mexican cannabis, and a corresponding increase in demand for California-grown cannabis. By 1979, 35% of cannabis consumed in California was grown in-state. By 2010, 79% of cannabis nationwide came from California.[56]

Decriminalization
For broader coverage of this topic, see Decriminalization of non-medical cannabis in the United States.
Moscone Act (1975)
Decriminalization of cannabis – which treats possession of small amounts as a civil (rather than a criminal) offense – was established in July 1975 when the state legislature passed Senate Bill 95, the Moscone Act.[50][57][58][59] SB 95 made possession of one ounce (28.5 grams) of marijuana a misdemeanor punishable by a $100 fine,[60] with higher punishments for amounts greater than one ounce, for possession on school grounds, or for cultivation.[61]

"Smoke a joint, lose your license" expires (1999)
For broader coverage of this topic, see Solomon–Lautenberg amendment.
In 1999, a state law was allowed to expire that mandated a six-month driver's license suspension for possession of cannabis or other illegal drugs.[62] The law was enacted in 1994 at the urging of Governor Pete Wilson, who argued that the policy kept unsafe drivers off the road and helped prevent illegal drug use.[63] Critics argued that the punishment was excessive and often had nothing to do with the offense committed.[63] The law resulted in as many as 100,000 license suspensions per year according to the California Department of Motor Vehicles.[62]

Proposition 36 (2000)
Main article: California Proposition 36 (2000)
Proposition 36 (also known as the Substance Abuse and Crime Prevention Act of 2000) was approved by 61% of voters, requiring that "first and second offense drug violators be sent to drug treatment programs instead of facing trial and possible incarceration."[64]

Senate Bill 1449 (2010)
On September 30, 2010, Governor Arnold Schwarzenegger signed into law CA State Senate Bill 1449, which further reduced the charge of possession of one ounce of cannabis or less, from a misdemeanor to an infraction, similar to a traffic violation—a maximum of a $100 fine and no mandatory court appearance or criminal record.[65] The law became effective January 1, 2011.

Medical cannabis legalization
Early reform efforts (pre-1996)
The movement to legalize medical cannabis in the U.S. sprang out of San Francisco in the early 1990s, with efforts soon spreading statewide and eventually across the nation. Proposition P was approved by 79% of San Francisco voters in November 1991, calling on state lawmakers to pass legislation allowing the medical use of cannabis.[66] The city board of supervisors additionally passed a resolution in August 1992 urging the police commission and district attorney to "make lowest priority the arrest or prosecution of those involved in the possession or cultivation of [cannabis] for medicinal purposes" and to "allow a letter from a treating physician to be used as prima facia evidence that marijuana can alleviate the pain and suffering of that patient's medical condition".[67] The resolution enabled the open sale of cannabis to AIDS patients and others within the city, most notably through the San Francisco Cannabis Buyers Club which was operated by medical cannabis activist Dennis Peron (who spearheaded Proposition P and later the statewide Proposition 215).[68] Similar clubs appeared outside San Francisco in the ensuing years as other cities passed legislation to support the medical use of cannabis. The Wo/Men's Alliance for Medical Marijuana was founded in 1993 after 75% of Santa Cruz voters approved Measure A in November 1992.[69] And the Oakland Cannabis Buyers' Cooperative was founded in 1995 shortly before the city council passed multiple medical cannabis resolutions.[69]

Following the lead of San Francisco and other cities in California, state lawmakers passed Senate Joint Resolution 8 in 1993, a non-binding measure calling on the federal government to enact legislation allowing physicians to prescribe cannabis.[70] In 1994, Senate Bill 1364 was approved by state legislators, to reclassify cannabis as a Schedule II drug at the state level.[70] And Assembly Bill 1529 was approved in 1995, to create a medical necessity defense for patients using cannabis with a physician's recommendation, for treatment of AIDS, cancer, glaucoma, or multiple sclerosis.[70] Both SB 1364 and AB 1529 were vetoed by Governor Pete Wilson, however, paving the way for the passage of Proposition 215 in 1996.[70]

Proposition 215 (1996)
Main article: 1996 California Proposition 215
Frustrated by vetoes of medical cannabis bills in successive years, medical cannabis advocates in California took the issue directly to the voters, collecting 775,000 signatures for qualification of a statewide ballot initiative in 1996.[71] Proposition 215 – the Compassionate Use Act of 1996 – was subsequently approved with 56% of the vote, legalizing the use, possession, and cultivation of cannabis by patients with a physician's recommendation, for treatment of cancer, anorexia, AIDS, chronic pain, spasticity, glaucoma, arthritis, migraine, or "any other illness for which marijuana provides relief".[72] The law also allowed patient caregivers to cultivate cannabis, and urged lawmakers to facilitate the "safe and affordable distribution of marijuana".[72]

Senate Bill 420 (2003)

Medical cannabis card in Marin County
Main article: California Senate Bill 420
Vague wording became a major criticism of Proposition 215, though the law has since been clarified through state Supreme Court rulings and the passage of subsequent laws. The first such legislative solution came in January 2003 with the passage of Senate Bill 420 (colloquially known as the Medical Marijuana Program Act). Senate Bill 420 established an identification card system for medical cannabis patients, and allowed the formation of non-profit collectives for provision of cannabis to patients.

In 2006 San Diego County filed a lawsuit over its required participation in the state ID card program,[73] but the challenge was later struck down and the city was forced to comply.[74] In January 2010 the California Supreme Court ruled in People v. Kelly that SB 420 did not limit the quantity of cannabis that a patient can possess. All possession limits were therefore lifted.

Implementation and criticism
California was the first state to establish a medical cannabis program, enacted by Proposition 215 in 1996 and Senate Bill 420 in 2003. Proposition 215, also known as the Compassionate Use Act, allows people the right to obtain and use cannabis for any illness if they obtain a recommendation from a doctor. The Supreme Court of California has ruled there are no specified limits as to what a patient may possess in their private residence if the cannabis is strictly for the patient's own use.[75] Medical cannabis identification cards are issued through the California Department of Public Health's Medical Marijuana Program (MMP). The program began in three counties in May 2005, and expanded statewide in August of the same year. 37,236 cards have been issued throughout 55 counties as of December 2009. However, cannabis dispensaries within the state accept recommendations, with an embossed license, from a doctor who has given the patient an examination and believes cannabis would be beneficial for their ailment.


Cannabis evaluations in Venice Beach
Critics of California's medical cannabis program argued that the program essentially gave cannabis quasi-legality, as "anyone can obtain a recommendation for medical marijuana at any time for practically any ailment".[76] Acknowledging that there were instances in which the system was abused and that laws could be improved, Stephen Gutwillig of the Drug Policy Alliance insisted that what Proposition 215 had accomplished was "nothing short of incredible".[76] Gutwillig argued that because of the law, 200,000 patients in the state had safe and affordable access to medical cannabis to relieve pain and treat medical conditions, without having to risk arrest or buy off the black market.[76]

Conflict with federal law
Although Proposition 215 legalized medical cannabis in California, at the federal level it remained a Schedule I prohibited drug.[77] Seeking to enforce this prohibition, the Justice Department conducted numerous raids and prosecutions of medical cannabis providers throughout the state in subsequent years. Who grows marijuana and where it comes from were lightly regulated. Federal authorities claimed that these medical marijuana businesses were fronts for the black market. Also rather than growing medical marijuana in small batches for patients, they claimed the cannabis was coming from Mexico or large hidden grows in California.[78] Some state and local officials strongly supported these enforcement efforts, in particular Attorney General Dan Lungren who was a vocal opponent of Proposition 215 leading up to its passage.[74] Other officials, such as San Francisco District Attorney Terence Hallinan, condemned the actions as a gross intrusion into the state's affairs.[74] The raids and prosecutions increased in frequency throughout the Bush and Obama years,[79] until finally in December 2014 the Rohrabacher–Farr amendment was enacted at the federal level.

One of the raids that occurred was at the Wo/Men's Alliance for Medical Marijuana in Santa Cruz in September 2002. WAMM was a non-profit collective set up to provide cannabis to seriously ill patients, and was working closely with local authorities to follow all applicable state and local laws.[80] On the morning of September 5, DEA agents equipped with paramilitary gear and semiautomatic weapons stormed the premises, destroyed all the cannabis plants, and arrested the property owners Mike and Valerie Corral.[74][81] This prompted an angry response from nearby medical cannabis patients – some in wheelchairs – who gathered at the site to block federal agents from leaving, until finally after three hours later the Corrals were released.[74] The raid triggered a strong backlash from Santa Cruz city officials as well, who sanctioned an event two weeks later where cannabis was handed out to patients on the steps of city hall,[82] attracting widespread media attention.[69] The DEA was "appalled" by the event,[83] but took no further action.

Further pushback against federal enforcement efforts occurred in June 2003 following the jury trial conviction of Ed Rosenthal, who had been raided by the DEA in 2002 for growing more than 100 cannabis plants in an Oakland warehouse.[84] Because cannabis remained a prohibited substance under federal law, jurors could not be informed that Rosenthal had been deputized by the city of Oakland to grow the cannabis, or even that the cannabis was being used for medical purposes only.[74] Rosenthal was easily convicted as a result; however, immediately following the trial, when jurors found out the true circumstances of the case, they publicly renounced the verdict they had just handed down and demanded a retrial.[74] Judge Charles Breyer, in part influenced by the extraordinary action of the jurors, sentenced Rosenthal to just one day in jail, of which he had already served.[84]

In July 2007, a new tactic was adopted by the DEA of threatening landlords renting to medical cannabis providers.[85] Letters were sent to a number of property owners in the Los Angeles area, informing them that they faced up to 20 years in prison for violating the "crack house statute" of the Controlled Substances Act, in addition to seizure of their properties. This tactic subsequently spread to other areas of California, while DEA raids continued to increase as well in the following years. In October 2011 an extensive and coordinated crackdown on California's cannabis dispensaries was announced by the chief prosecutors of the state's four federal districts.[86]

Three major court cases originated in California that attempted to challenge the federal government's ability to enforce federal law in states that have legalized medical cannabis. Conant v. McCaffrey was brought forth in response to various threats made by the federal government against doctors who recommend cannabis to patients. Decided in 2000, it upheld the right of physicians to recommend but not prescribe cannabis.[87] In United States v. Oakland Cannabis Buyers' Cooperative (decided in 2001), it was argued that medical use of cannabis should be permitted as constituted by a "medical necessity" – but this argument was unsuccessful.[87] In Gonzales v. Raich (decided in 2005), the constitutionality of the Controlled Substances Act was challenged based on the idea that cannabis grown and consumed in California does not qualify as interstate commerce – but this argument was also found to be without merit.[87]

Recreational cannabis legalization
Proposition 19 (1972)
Main article: California Proposition 19 (1972)
In 1972, California became the first state to vote on a ballot measure seeking to legalize cannabis. Proposition 19 – the California Marijuana Initiative – sought to legalize the use, possession, and cultivation of cannabis, but did not allow for commercial sales.[57] The initiative was spearheaded by the group Amorphia, which was founded in 1969 (by Blair Newman) and financed its activities through the sale of hemp rolling papers.[88] It was ultimately defeated by a wide margin (33–67%), but supporters were encouraged by the results,[89] which provided momentum to other reform efforts in California in subsequent years.[69] In 1974, Amorphia ran into financial difficulties and became the California chapter of NORML.[90]

Marijuana Control, Regulation, and Education Act (2009)
Main article: Marijuana Control, Regulation, and Education Act
In February 2009, Tom Ammiano introduced the Marijuana Control, Regulation, and Education Act, which would remove penalties under state law for the cultivation, possession, and use of marijuana for persons the age of 21 or older. When the Assembly Public Safety Committee approved the bill on a 4 to 3 vote in January 2010, this marked the first time in United States history that a bill legalizing marijuana passed a legislative committee. While the legislation failed to reach the Assembly floor, Ammiano stated his plans to reintroduce the bill later in the year, depending on the success of Proposition 19, the Regulate, Control and Tax Cannabis Act.[91] According to Time, California tax collectors estimated the bill would have raised about $1.3 billion a year in revenue.

Critics such as John Lovell, lobbyist for the California Peace Officers' Association, argued that too many people already struggle with alcohol and drug abuse, and legalizing another mind-altering substance would lead to a surge of use, making problems worse.[92] Apart from helping the state's budget by enforcing a tax on the sale of cannabis, proponents of the bill argued that legalization would reduce the amount of criminal activity associated with the drug.

Proposition 19 (2010)
Main article: California Proposition 19 (2010)
In November 2010, California voters rejected Proposition 19 (by a vote of 53.5% to 46.5%), an initiative that would have legalized the use, possession, and cultivation of cannabis for adults age 21 and over, and regulated its sale similar to alcohol.[93] The initiative faced stiff opposition from numerous police organizations in the state, while many growers in the Emerald Triangle were strongly opposed due to fears that corporate megafarms would put them out of business.[74] The initiative was also undercut by the passage of Senate Bill 1449 a month before the election.[74] Proposition 19 was spearheaded by Richard Lee, founder of Oaksterdam University.[74]

Proposition 64 (2016)
Main article: Adult Use of Marijuana Act

A 2018 memorandum recommending that the Berkeley City Council adopt a resolution to declare the City of Berkeley a "sanctuary city" for cannabis customers, providers, and landlords
On November 8, 2016, Proposition 64, also known as the Adult Use of Marijuana Act, passed by a vote of 57% to 43%, legalizing the sale and distribution of cannabis in both a dry and concentrated form. Adults are allowed to possess up to one ounce of cannabis for recreational use and can grow up to six live plants individually or more commercially with a license.

Recreational usage of marijuana became legal under Proposition 64. Immediately upon certification of the November 2016 ballot results, adults age 21 or older were allowed to:

Possess, transport, process, purchase, obtain, or give away, without any compensation whatsoever, no more than one ounce of dry cannabis or eight grams concentrated cannabis to adults the age of 21 or older.
Possess, plant, cultivate, harvest, dry, or process no more than six live plants and the produce of those plants in a private residence, in a locked area not seen from normal view, in compliance with all local ordinances.
Smoke or ingest cannabis.
Possess, transport, purchase, obtain, use, manufacture, or give away marijuana paraphernalia to peoples the age of 21 or older.
Users may not:

Smoke it where tobacco is prohibited.
Possess, ingest or smoke within 1,000 feet of a day care, school, or youth center while children are present (except within a private residence and if said smoke is not detectable to said children).[94]
Manufacture concentrated cannabis using a volatile solvent without a license under Chapter 3.5 of Division 8 or Division 10 of the Business and Professions Code.
Possess an open container or marijuana paraphernalia while in the driver or passenger seat of a vehicle used for transportation.
Smoke or ingest marijuana while operating a vehicle used for transportation.
Smoke or ingest marijuana while riding in the passenger seat or compartment of a vehicle.[95]
Licenses were issued to allow cultivation and business establishment beginning in 2018. Legal sales for non-medical use were allowed by law beginning January 1, 2018, following formulation of new regulations on retail market by the state's Bureau of Medical Cannabis Regulation (to be renamed Bureau of Marijuana Control).[96][97]

Proposition 64 is not meant in any way to affect, amend, or restrict the statutes provided for medical cannabis in California under Proposition 215.[95]

In 2016, in response to Proposition 64, State Treasurer John Chiang set up a working group to explore access to financial services for legal marijuana-related businesses operating in California,[98] as access to banking services has been a problem due to the additional burdens mandated by the Financial Crimes Enforcement Network (FinCEN) on financial institutions to assure that any marijuana related business clients are in compliance with all state laws.[99]

See also
icon	Cannabis portal
flag	California portal
Drug policy of California
Legal history of cannabis in the United States
Law of California
References
 "US election: California voters approve marijuana for recreational use". BBC News. November 9, 2016.
 McGreevy, Patrick (April 5, 2019). "California cities sue state over home deliveries of pot". Los Angeles Times. Retrieved April 5, 2019.
 Harris, Mike (June 2, 2019). "Some local officials frustrated with eroding of local control by FCC and state pot bureau". Ventura County Star. Archived from the original on June 7, 2019. Retrieved June 4, 2019.
 Blood, Michael R. (November 17, 2017). "California's legal pot countdown: What's coming by Jan. 1". Associated Press. Archived from the original on November 22, 2017. Retrieved November 19, 2017 – via KSBY.
 "Is California Really Ready For Legal Marijuana?". The Fresh Toast. October 23, 2017.
 Stratigopoulos, McKenzie (August 31, 2019). "Why California's legal pot industry 'is struggling' against a black market". Finance. Yahoo!. Retrieved September 1, 2019.
 McGreevy, Patrick (July 22, 2019). "California seizes $30 million in black market cannabis from illegal pot shops". Los Angeles Times. Retrieved July 22, 2019.
 HUSSAIN, SUHAUNA; QUEALLY, JAMES (August 24, 2019). "Weedmaps says it will ban advertisements from unlicensed cannabis sellers. Legal sellers applaud". Los Angeles Times. Retrieved August 25, 2019.
 Sheeler, Andrew (August 6, 2019). "'Political heavyweights' unite to fight for cannabis from the capitol to the counties". Sacramento Bee. Retrieved August 7, 2019.
 Blood, Mike; Johnson, Gene (August 22, 2019). "Weedmaps to stop advertising unlicensed pot businesses". Associated Press. Retrieved August 25, 2019 – via The Boston Globe.
 "Cannabis Market Size USD 48.29 Bn by 2027 | CAGR of 24.6%". Emergen Research. January 2021. Retrieved January 18, 2021.
 Queally, James; McGreevy, Patrick (September 12, 2019). "Nearly 3,000 illegal marijuana businesses found in California audit, dwarfing legal trade". Los Angeles Times. Retrieved September 12, 2019.
 Queally, James (April 17, 2019). "L.A. sues unlicensed pot dispensary, alleging it sold pesticide-tainted marijuana". Los Angeles Times. Retrieved April 17, 2019.
 Queally, James (August 26, 2019). "Counterfeit cannabis products stoke black market for California weed". Los Angeles Times. Retrieved August 28, 2019.
 "California lawmakers already want to roll back a key promise of marijuana legalization". The Times Editorial Board. Los Angeles Times. Retrieved May 19, 2019.
 Staggs, Brooke (January 11, 2020). "Newsom's budget calls for changing how California regulates its cannabis industry". Orange County Register. Retrieved January 12, 2020.
 Davis, Kristina (July 4, 2020). "Border Patrol checkpoints are a risky reality for California cannabis companies". Los Angeles Times. Retrieved July 5, 2020.
 Serna, Joseph (May 12, 2019). "Weed smuggling arrests at LAX have surged 166% since marijuana legalization". Los Angeles Times. Retrieved May 12, 2019.
 Elmahrek, Adam; Vives, Ruben (November 9, 2020). "FBI raids on local officials mark latest probe targeting corruption in cannabis licensing". Los Angeles Times. Retrieved November 9, 2020.
 Taylor, Derrick Bryson (June 16, 2019). "Inmates Can Legally Possess Marijuana, but Not Smoke It, California Court Rules". The New York Times. ISSN 0362-4331. Retrieved June 16, 2019.
 Chappel, Bill (June 14, 2019). "Possessing Marijuana In Prison 'Is Not A Felony,' California Court Says". NPR News. Retrieved June 15, 2019.
 Alfonsi, Sharyn (August 2, 2020). "How red tape and black market weed are buzzkills for California's legal marijuana industry". CBS News. Retrieved August 3, 2020.
 McGreevy, Patrick (June 14, 2019). "California to give struggling cannabis businesses more time on provisional permits". Los Angeles Times. Retrieved June 15, 2019.
 Polson, Michael (February 11, 2020). "Op-Ed: Get Big Agriculture out of cannabis farming in California". Los Angeles Times. Retrieved February 13, 2020.
 Staggs, Brooke (April 28, 2018). "Santa Barbara County leads California in the number of permits to legally grow marijuana". Ventura County Star. Archived from the original on September 8, 2019. Retrieved May 25, 2019.
 Parvini, Sarah (February 28, 2018). "A rural county legalized marijuana farms. It took their tax money – then voted to ban them". Los Angeles Times. Retrieved October 3, 2019.
 Shalby, Colleen (June 5, 2019). "Illegal pot growers targeted by Riverside County officials in second raid in 6 weeks". Los Angeles Times. Retrieved June 7, 2019.
 Bolton, Tom (June 22, 2019). "Raids turn up 40,000 pounds of marijuana, 350,000 plants in SLO, Santa Barbara counties". San Luis Obispo Tribune. Retrieved June 23, 2019.
 McDaniel, Piper (August 21, 2019). "Mexican marijuana traffickers are poisoning California forests with a banned pesticide, officials say". Los Angeles Times. Retrieved August 23, 2019.
 Westervelt, Eric (November 12, 2019). "Illegal Pot Operations In Public Forests Are Poisoning Wildlife And Water". NPR News. Retrieved November 12, 2019.
 Blood, Michael R. (July 16, 2020). "Report: Pot arrests still fall heavily on Hispanics, Blacks". AP NEWS. Retrieved August 6, 2020.
 Reyes-Velarde, Alejandra (July 17, 2019). "First cannabis cafe approved by West Hollywood, but local rabbi isn't happy". Los Angeles Times. Retrieved July 18, 2019.
 Schmidt, Ingrid (July 11, 2019). "America's First Cannabis Café Featuring 'Budtenders' to Open in L.A." The Hollywood Reporter. Retrieved August 16, 2019.
 "New cannabis shop opening in Lompoc to allow on-site consumption". KSBY. December 12, 2019. Retrieved December 13, 2019.
 DeAngelo, Steve (July 15, 2019). "How the U.S. tax code keeps the illegal market for marijuana alive and well". Los Angeles Times. Retrieved July 16, 2019.
 Angel Jennings; Sarah Parvini (December 31, 2017), "California pot shops prepare for their first day of legal recreational marijuana sales", Los Angeles Times
 LA Begins Pot Licensing Process, CBS Los Angeles, January 3, 2018
 Margolis, Jacob (September 6, 2016). "California Report: 6 Ways Recreational Pot Would Change California — and 7 Ways It Wouldn't". KPCC. Archived from the original on November 5, 2016. Retrieved November 4, 2016.
 "Living near marijuana dispensaries makes youth more likely to use it, study finds". Los Angeles Times. June 18, 2019. Retrieved September 16, 2019.
 Daniels, Melissa (May 24, 2020). "'Essential' cannabis companies are seeing sales spikes during California's shelter-in-place order". Desert Sun. Retrieved March 28, 2020.
 Rust, Susanne; Cole, Carolyn (April 18, 2020). "Boom times for cannabis businesses as Californians, in a pandemic fog, isolate indoors". Los Angeles Times. Retrieved April 18, 2020.
 Staggs, Brooke Edwards (May 3, 2019). "Ice Cube to headline first licensed Cannabis Cup marijuana festival in Southern California". Daily Breeze. Retrieved May 18, 2019.
 Chabria, Anita; McGreevy, Patrick (August 12, 2019). "A whiff of the music festival future? Outside Lands sells cannabis for the first time". Los Angeles Times. Retrieved August 12, 2019.
 Gentile, Dan (August 14, 2019). "Outside Lands' Grass Lands sold seven figures worth of cannabis. How much weed is that?". SFGate. Retrieved August 15, 2019.
 Robert Clarke; Mark Merlin (September 1, 2013). Cannabis: Evolution and Ethnobotany. University of California Press. pp. 181–. ISBN 978-0-520-95457-1.
 Facts On File, Incorporated (2008). Marijuana. Infobase Publishing. pp. 46–. ISBN 978-1-4381-1824-6.
 Chris Duvall (November 15, 2014). Cannabis. Reaktion Books. pp. 99–. ISBN 978-1-78023-386-4.
 Martin Booth (June 16, 2015). Cannabis: A History. St. Martin's Press. pp. 163–. ISBN 978-1-250-08219-0.
 (Stats. 1913 Archived 2013-11-12 at the Wayback Machine, Ch. 342, p. 697)
 Gieringer, Dale H. (1999). "The Forgotten Origins of Cannabis Prohibition in California" (PDF). Contemporary Drug Problems. 26 (2): 237–288. doi:10.1177/009145099902600204. S2CID 145499009.
 (Stats. 1915 Archived 2013-11-12 at the Wayback Machine, Ch. 604, pp. 1067–1068)
 "The nation's first marijuana raid likely happened in LA". Southern California Public Radio. September 19, 2014.
 Survey of Drug Addiction in California. California state printing office, H. Hammond, state printer. 1932.
 Ed Rosenthal (July 1, 2009). Marijuana Grower's Handbook: Your Complete Guide for Medical and Personal Marijuana Cultivation. Quick Trading Company. pp. 20–. ISBN 978-0-932551-50-4.
 Kirse Granat May (2002). Golden State, Golden Youth: The California Image in Popular Culture, 1955-1966. Univ of North Carolina Press. pp. 189–. ISBN 978-0-8078-5362-7.
 Emily Brady (June 18, 2013). Humboldt: Life on America's Marijuana Frontier. Grand Central Publishing. pp. 55–. ISBN 978-1-4555-0677-4.
 Anderson, Patrick (February 27, 1981). High In America: The True Story Behind NORML And The Politics Of Marijuana. The Viking Press. ISBN 978-0670119905.
 Budman, K B. "IMPACT OF CALIFORNIA'S NEW MARIJUANA LAW (SB 95) REPORT, 1ST". Retrieved May 6, 2012.
 Philip Bean, ed. (2003). Crime: Critical Concepts in Sociology. Routledge. pp. 249–250. ISBN 978-0-415-25267-6. Retrieved January 15, 2010.
 "Marijuana Laws California". Archived from the original on May 23, 2015. Retrieved May 26, 2015.
 "California - NORML". National Organization for the Reform of Marijuana Laws (NORML). Archived from the original on January 12, 2010. Retrieved January 15, 2010.
 Bustillo, Miguel (May 24, 2000). "Davis Fights to Suspend Licenses in Drug Cases". Los Angeles Times. Retrieved September 20, 2020.
 Ingram, Carl (December 1, 1994). "'Smoke a Joint, Lose License' Law in Effect". Los Angeles Times. Retrieved September 20, 2020.
 Wallace, Bill (November 15, 2000). "Money, Opinion Propelled Prop. 36". San Francisco Chronicle. Retrieved January 15, 2010.
 "Bill Text - SB-1449 Marijuana: possession". leginfo.legislature.ca.gov.
 Boire, Richard Glen; Feeney, Kevin (January 26, 2007). Medical Marijuana Law. Ronin Publishing. ISBN 9781579510343.
 "Proposition P". marijuanalibrary.org. Retrieved April 30, 2017.
 Gardner, Fred (August 26, 2014). "The Cannabis Buyers Club: How Medical Marijuana Began in California". marijuana.com. Archived from the original on November 20, 2018. Retrieved May 4, 2017.
 Heddleston, Thomas R. (June 2012). From the Frontlines to the Bottom Line: Medical Marijuana, the War on Drugs, and the Drug Policy Reform Movement (Thesis). UC Santa Cruz Electronic Theses and Dissertations. Archived from the original on February 16, 2014.
 Vitiello, Michael (1998). "Proposition 215: De Facto Legalization of Pot and the Shortcomings of Direct Democracy". McGeorge School of Law. Retrieved April 30, 2017.
 "Medical Marijuana Initiative Qualifies For November Ballot". NORML. June 6, 1996. Retrieved April 30, 2017.
 "Proposition 215: Text of Proposed Law" (PDF). ProCon.org.
 McDonald, Jeff (October 27, 2008). "County pursues medicinal marijuana case". The San Diego Union-Tribune. Retrieved March 7, 2018.
 Lee, Martin A. (August 2012). Smoke Signals: A Social History of Marijuana – Medical, Recreational, and Scientific. New York: Scribner. ISBN 978-1439102602.
 "Ca Supreme Court Strikes Down Medical Marijuana Possession, Cultivation Limits". www.canorml.org. Retrieved November 10, 2016.
 Imler, Scott; Gutwillig, Stephen (March 6, 2009). "Medical marijuana in California: a history". Los Angeles Times. Tribune Company. Archived from the original on June 4, 2011. Retrieved January 12, 2010.
 Lopez, German (August 20, 2018). "Marijuana is illegal under federal law even in states that legalize it". Vox. Retrieved March 14, 2020.
 Dokoupil, Tony (November 13, 2012). "Legalizing And Regulating Pot: A Growth Industry". NPR News. Retrieved March 14, 2020. California doesn't have tight regulations on who grows marijuana, where it comes from. So the feds move in, and what they claim is that these med marijuana businesses are fronts for what are in fact just old-school black market drug dealers. And they're not growing medical marijuana in small batches for patients. They're growing it in Mexico, or they're growing it in the hills, and they're just bringing it in, and it suddenly, magically becomes legal once it gets in the store. But in fact, it's based on illegality.
 What's the Cost? | The Federal War on Patients (PDF), Americans for Safe Access, June 2013, retrieved April 29, 2017
 Berry, Denis (September 12, 2002). "City leaders stand behind Medical Marijuana at City Hall". Drug Policy Alliance. Retrieved February 24, 2018.
 Gardner, Fred (September 2002). "The Raid on WAMM". O'Shaughnessy's. Retrieved March 6, 2018.
 Leduff, Charlie; Liptak, Adam (September 18, 2002). "Defiant California City Hands Out Marijuana". The New York Times. Retrieved February 24, 2018.
 Gaura, Maria Alicia; Stannard, Matthew B. (September 13, 2002). "Santa Cruz officials to defy feds, hand out medical pot at City Hall". San Francisco Chronicle. Retrieved February 24, 2018.
 Baily, Eric; Rodriguez, Marcelo (June 5, 2003). "The 'Guru of Ganja' Gets a Day in Jail". Los Angeles Times. Retrieved February 28, 2018.
 Eddy, Mark (April 2, 2010), Medical Marijuana: Review and Analysis of Federal and State Policies (PDF), Congressional Research Service
 Hoeffel, John (October 7, 2011). "Federal crackdown on medical pot sales reflects a shift in policy". Los Angeles Times.
 State-By-State Medical Marijuana Laws, Marijuana Policy Project, December 2016
 Dufton, Emily (December 5, 2017). Grass Roots: The Rise and Fall and Rise of Marijuana in America. Basic Books. ISBN 978-0465096169.
 Sinclair, John (October 27, 2010). "Getting NORML | A brief history of the movement to legalize marijuana". Detroit Metro Times. Retrieved February 11, 2018.
 "Our Mission". California NORML. Retrieved February 11, 2018.
 Banks, Sandy (March 29, 2010). "Pot breaks the age barrier". Los Angeles Times. Tribune Company. Retrieved March 31, 2010.
 Stateman, Alison (March 13, 2009). "Can Marijuana Help Rescue California's Economy?". Time. Retrieved January 12, 2010.
 "California Proposition 19, the Marijuana Legalization Initiative (2010)". Ballotpedia. Retrieved March 17, 2018.
 MCGREEVY, PATRICK (October 10, 2019). "Medical marijuana OK at K-12 schools in California after Gov. Newsom signs new law". Los Angeles Times. Retrieved October 11, 2019.
 "Adult Use of Marijuana Act", Retrieved on 12 March 2017.
 Michael R. Blood; Don Thomson (January 30, 2017), "Building the airplane while it's being flown": How California looks to build $7B legal pot economy, Associated Press – via The Cannabist
 Peter Hecht (January 18, 2017), "California's pot czar on upcoming marijuana regulation: "We will not fail"", Sacramento Bee
 Kiel, Matt S. (August 10, 2017). "Financing California's Cannabis Businesses: Public Banking Model as a State-Level Solution". The National Law Review. Wilson Elser. Retrieved October 11, 2017.
 Black, Lester (April 19, 2017). "The Credit Unions and Small Banks That Solved the Cannabis Cash Crisis". The Stranger. Retrieved October 11, 2017.
External links
California Cannabis Portal, California's official website for information on legal marijuana.





Criminalization
The Poison Act was passed in California in 1907, and in 1913 an amendment[49] was made to make possession of "extracts, tinctures, or other narcotic preparations of hemp, or loco-weed, their preparations and compounds" a misdemeanor.[50] There is no evidence that the law was ever used or intended to restrict pharmaceutical cannabis; instead it was a legislative mistake, and in 1915 another amendment[51] forbade the sale or possession of "flowering tops and leaves, extracts, tinctures and other narcotic preparations of hemp or loco weed (Cannabis sativa), Indian hemp" except with a prescription.[50] Both bills were drafted and supported by the California State Board of Pharmacy.[50]

In 1914, one of the first cannabis drug raids in the nation occurred in the Mexican-American neighborhood of Sonoratown in Los Angeles, where police raided two "dream gardens" and confiscated a wagonload of cannabis.[52] In 1925, possession, which had previously been treated the same as distribution, became punishable by up to 6 years in prison, and black market sale, which had initially been a misdemeanor punishable by a $100–$400 fine and/or 50–180 days in jail for first offenders, became punishable by 6 months–6 years.[50] In 1927, the laws designed to target opium usage were finally extended to Indian hemp.[50] In 1929, second offenses for possession became punishable by sentences of 6 months–10 years.[50] In 1937, cannabis cultivation became a separate offense.[50]

By 1932, 60% of narcotics arrests in Los Angeles involved cannabis, which was considered "much less serious than the morphine cases."[53] In 1954, penalties for marijuana possession were hiked to a minimum 1–10 years in prison, and sale was made punishable by 5–15 years with a mandatory 3 years before eligibility for parole; two prior felonies raised the maximum sentences for both offenses to life imprisonment.[50]




Legal history of cannabis in the United States
https://en.wikipedia.org/wiki/Legal_history_of_cannabis_in_the_United_States

Legal history of cannabis in the United States
From Wikipedia, the free encyclopedia
  (Redirected from Legal history of marijuana in the United States)
Jump to navigationJump to search
Part of a series on
Cannabis
Cannabis
ArtsCulture
Chemistry
Consumption
Economics
Effects
Forms
Law
Regional
Variants
Related
 Cannabis portal
Esculaap4.svg Medicine portal
Veranotrigo.jpg Agriculture portal
vte
The legal history of cannabis in the United States pertains to the regulation of cannabis (legal term marijuana or marihuana) for medical, recreational, and industrial purposes in the United States. Increased restrictions and labeling of cannabis as a poison began in many states from 1906 onward, and outright prohibitions began in the 1920s. By the mid-1930s cannabis was regulated as a drug in every state, including 35 states that adopted the Uniform State Narcotic Drug Act.[1] The first national regulation was the Marihuana Tax Act of 1937.[2]

Cannabis was officially outlawed for any use (medical included) with the passage of the 1970 Controlled Substances Act (CSA). Multiple efforts to reschedule cannabis under the CSA have failed, and the U.S. Supreme Court ruled in United States v. Oakland Cannabis Buyers' Cooperative and Gonzales v. Raich that the federal government has a right to regulate and criminalize cannabis, even for medical purposes. Despite this, states and other jurisdictions have continued to implement policies that conflict with federal law, beginning with the passage of California's Proposition 215 in 1996. By 2016 a majority of states had legalized medical cannabis,[3] and in 2012 the first two states, Colorado and Washington, legalized recreational use.


Contents
1	Early history
1.1	Pre-1850s
1.2	Early pharmaceutical and recreational use
1.2.1	Background to later restrictions (late 19th century)
2	Criminalization (1900s)
2.1	Strengthening of poison laws (1906–1938)
2.2	International Opium Convention (1925)
2.3	Uniform State Narcotic Drug Act (1925–1932)
2.4	Federal Bureau of Narcotics (1930)
2.5	The 1936 Geneva Trafficking Conventions
2.6	Marihuana Tax Act (1937)
2.7	Mandatory sentencing (1952, 1956)
2.8	Controlled Substances Act (1970)
2.9	Reorganization (1968, 1973)
2.10	Mandatory sentencing and three-strikes (1984, 1986)
2.11	Solomon–Lautenberg amendment (1990)
2.12	House Joint Resolution 117 (1998)
2.13	United States v. Oakland Cannabis Buyers' Cooperative (2001)
2.14	Gonzales v. Raich (2005)
2.15	Cole Memorandum rescinded (2018)
3	Decriminalization (1970s–)
3.1	Medical use
3.1.1	Compassionate IND program (1978)
3.1.2	Early medical cannabis laws (1978–1982)
3.1.3	DEA judge recommends reclassification (1988)
3.1.4	Proposition P and first cannabis dispensaries (1991)
3.1.5	Compassionate Use Act of 1996
3.1.6	D.C. medical cannabis approved, delayed (1998)
3.1.7	Conant v. McCaffrey (2000)
3.1.8	Ogden memo (2009)
3.1.9	Rohrabacher–Farr amendment (2014)
3.2	Non-medical use
3.2.1	Shafer Commission (1972)
3.2.2	California Marijuana Initiative (1972)
3.2.3	First wave of decriminalization (1973–1978)
3.2.4	Ravin v. State (1975)
3.2.5	Second wave of decriminalization (2000s–)
3.2.6	First two states legalize (2012)
3.2.7	Cole Memorandum (2013)
3.2.8	Two more states plus D.C. legalize (2014)
3.2.9	Indian Reservation legalization allowed (2014)
3.2.10	Four more states legalize (2016)
3.2.11	First state legalizes through legislature (2018)
3.2.12	First state legalizes commercial sale through legislature (2019)
3.2.13	Four more states vote to legalize (2020)
3.2.14	House approves MORE Act (2020)
4	Legalization timeline
5	See also
6	Notes
7	References
8	Further reading
Early history
Pre-1850s

"I grew hemp" defaced 1 dollar bill, USA, 1999. On display at the British Museum in London. The stamp on this note promotes the legalization of cannabis by referring to the fact that George Washington grew hemp on his estate.
In 1619, King James I decreed that the American colonists of Jamestown would need to step up efforts to do their fair share towards supporting England. The Virginia Company enacted the decree, asking Jamestown's land owners to grow and export 100 hemp plants to help support England's cause. Later the colonists would grow it to support its expansion in the Americas.[4][5] Cannabis cultivation played a central role in the establishment of the United States, with cannabis appearing on the ten dollar bill as late as 1900[citation needed]. George Washington grew hemp at Mount Vernon as one of his three primary crops. The use of hemp for rope and fabric later became ubiquitous throughout the 18th and 19th centuries in the United States. Medicinal preparations of cannabis became available in American pharmacies in the 1850s following an introduction to its use in Western medicine by William O'Shaughnessy a decade earlier in 1839.[6]

Early pharmaceutical and recreational use

Cannabis fluid extract medicine bottle
Around the same time, efforts to regulate the sale of pharmaceuticals began, and laws were introduced on a state-to-state basis that created penalties for mislabeling drugs, adulterating them with undisclosed narcotics, and improper sale of those considered "poisons". Poison laws generally either required labels on the packaging indicating the harmful effects of the drugs or prohibited sale outside of licensed pharmacies and without a doctor's prescription. Those that required labeling often required the word "poison" if the drug was not issued by a pharmacy. Other regulations were prohibitions on the sale to minors, as well as restrictions on refills. Some pharmaceutical laws specifically enumerated the drugs that came under the effect of the regulations, while others did not—leaving the matter to medical experts. Those that did generally included references to cannabis, either under the category of "cannabis and its preparations" or "hemp and its preparations."[7]

A 1905 Bulletin from the United States Department of Agriculture lists twenty-nine states with laws mentioning cannabis. Eight states and territories are listed with "sale of poisons" laws that specifically mention cannabis: North Carolina, Ohio, Wisconsin, Louisiana, Vermont, Maine, Montana; and the District of Columbia. Among those states that required a prescription for sale were Wisconsin and Louisiana. Several "sale of poison" laws did not specify restricted drugs, including in Indiana, Rhode Island, Hawaii, Nebraska, Kentucky, Mississippi, and New York. Many states did not consider cannabis a "poison" but required it be labeled.[8]

In New York, the original law did enumerate cannabis, and was passed in 1860 following a string of suicides allegedly involving the substances later categorized as poisons. The first draft of the bill 'An act to regulate the sale of poisons' prohibited the sale of cannabis—as with the other substances—without the written order of a physician.[9] The final bill as passed allowed the sale without a prescription so long as the purpose to which it was issued and name and address of the buyer was recorded, and in addition, all packaging of such substances—whether sold with a prescription or not—had to have the label "poison" on them in uppercase red letters. In 1862, the section which enumerated the substances was repealed with an amendatory act, though cannabis was still required to be labeled.[10]

In some states where poison laws excluded cannabis, there were nonetheless attempts to include it. A bill introduced in 1880 in the California state legislature was titled 'An act to regulate the sale of opium and other narcotic poisons' and would have forbidden anyone to keep, sell, furnish, or give away any "preparations or mixtures made or prepared from opium, hemp, or other narcotic drugs" without a doctor's prescription at a licensed store. That bill was withdrawn in favor of one specifically aimed at opium, though further bills including hemp-based drugs were introduced in 1885 and in 1889.[6]

Background to later restrictions (late 19th century)

Excerpt from the New York Times, March 7, 1884
As early as 1853, recreational cannabis was listed as a "fashionable narcotic".[11] By the 1880s, oriental-style hashish parlors were flourishing alongside opium dens, to the point that one could be found in every major city on the east coast. It was estimated there were around 500 such establishments in New York City alone.[12]

An article in Harper's Magazine (1883), attributed to Harry Hubbell Kane, describes a hashish-house in New York frequented by a large clientele, including males and females of "the better classes," and further talks about parlors in Boston, Philadelphia and Chicago.[6] Hemp cigarettes were reported to be used by Mexican soldiers as early as 1874.[13]


Criminalization (1900s)
Strengthening of poison laws (1906–1938)
The Pure Food and Drug Act was then passed by the United States Congress in 1906 and required that certain special drugs, including cannabis, be accurately labeled with contents. Previously, many drugs had been sold as patent medicines with secret ingredients or misleading labels.[14] Even after the passage of regulations, there continued to be criticism about the availability of narcotics and around 1910 there was a wave of legislation aimed to strengthen requirements for their sale and remove what were commonly referred to as "loopholes" in poison laws. The new revisions aimed to restrict all narcotics, including cannabis, as poisons, limit their sale to pharmacies, and require doctors' prescriptions. The first instance was in the District of Columbia in 1906, under "An act to regulate the practice of pharmacy and the sale of poisons in the District of Columbia, and for other purposes". The act was updated in 1938 to the Federal Pure Food, Drug, and Cosmetics Act of 1938 which remains in effect even today, creating a legal paradox for federal sentencing. Under this act, the framework for prescription and non-prescription drugs and foods are set, along with standards as well as the enforcing agency, the Food and Drug Administration (FDA). "Goods found in violation of the law were subject to seizure and destruction at the expense of the manufacturer. That, combined with a legal requirement that all convictions be published (Notices of Judgment), proved to be important tools in the enforcement of the statute and had a deterrent effect upon would-be violators." Marijuana remains under this law defined as a "dangerous drug".[15]

Further regulation of cannabis followed in Massachusetts (1911), New York (1914), and Maine (1914). In New York, reform legislation began under the Towns-Boylan Act, which targeted all "habit-forming drugs", restricted their sale, prohibited refills in order to prevent habituation, prohibited sale to people with a habit, and prohibited doctors who were themselves habituated from selling them.[16] Shortly after, several amendments were passed by the New York Board of Health, including adding cannabis to the list of habit-forming drugs.[17]

A New York Times article noted on the cannabis amendment:

The inclusion of Cannabis indica among the drugs to be sold only on prescription is common sense. Devotees of hashish are now hardly numerous here enough to count, but they are likely to increase as other narcotics become harder to obtain.[18]

In the West, the first state to include cannabis as a poison was California. The Poison Act was passed in 1907 and amended in 1909 and 1911, and in 1913 an amendatory act was made to make possession of "extracts, tinctures, or other narcotic preparations of hemp, or loco-weed, their preparations and compounds" a misdemeanor.[6] There is no evidence that the law was ever used or intended to restrict pharmaceutical cannabis; instead it was a legislative mistake, and in 1915 another revision placed cannabis under the same restriction as other poisons.[6] In 1914, one of the first cannabis drug raids in the nation occurred in the Mexican-American neighborhood of Sonoratown in Los Angeles, where police raided two "dream gardens" and confiscated a wagonload of cannabis.[19]

Other states followed with marijuana laws including: Wyoming (1915); Texas (1919); Iowa (1923); Nevada (1923); Oregon (1923); Washington (1923); Arkansas (1923); Nebraska (1927);[20] Louisiana (1927); and Colorado (1929).[21]

One source of tensions in the western and southwestern states was the influx of Mexicans to the U.S. following the 1910 Mexican Revolution.[22] Many Mexicans also smoked marijuana to relax after working in the fields.[23] It was also seen as a cheaper alternative to alcohol, due to Prohibition (which went into effect nationally in 1920).[24] Later in the 1920s, negative tensions grew between the small farms and the large farms that used cheaper Mexican labor. Shortly afterwards, the Great Depression came which increased tensions as jobs and resources became more scarce. Because of that, the passage of the initial laws is often described as a product of racism.[25]

International Opium Convention (1925)
In 1925, the United States supported regulation of Indian hemp, also known as hashish, in the International Opium Convention.[26] The convention banned exportation of "Indian hemp", and the preparations derived therefrom, to countries that had prohibited its use and required importing countries to issue certificates approving the importation and stating that the shipment was required "exclusively for medical or scientific purposes". The convention did not ban trade in fibers and other similar products from European hemp, traditionally grown in the United States. According to the 1912 edition of the Swedish encyclopedia Nordisk familjebok, the European hemp grown for its fibers lacks the THC content that characterizes Indian hemp.[27]

Uniform State Narcotic Drug Act (1925–1932)
The Uniform State Narcotic Drug Act, first tentative draft in 1925 and fifth final version in 1932, was a result of work by the National Conference of Commissioners on Uniform State Laws. It was argued that the traffic in narcotic drugs should have the same safeguards and the same regulation in all of the states. The committee took into consideration the fact that the federal government had already passed the Harrison Act in 1914 and the Federal Import and Export Act in 1922. Many people assumed that the Harrison Act was all that was necessary. The Harrison Act, however, was a revenue-producing act and, while it provided penalties for violation, it did not give the states themselves authority to exercise police power in regard to seizure of drugs used in illicit trade, or in regard to punishment of those responsible. The act was recommended to the states for that purpose.[28] As a result of the Uniform State Narcotic Act, the Federal Bureau of Narcotics encouraged state governments to adopt the act. By the middle of the 1930s all member states had some regulation of cannabis.[29][30][31]

Federal Bureau of Narcotics (1930)

Federal Bureau of Narcotics public service announcement used in the late 1930s and 1940s
The use of cannabis and other drugs came under increasing scrutiny after the formation of the Federal Bureau of Narcotics (FBN) in 1930,[32] headed by Harry J. Anslinger as part of the government's broader push to outlaw all recreational drugs.

When the present administration took office ten countries had ratified the Geneva Narcotic Limitation Convention. The United States was one of these ten. ... It was my privilege, as President, to proclaim, on that day, that this treaty had become effective throughout the jurisdiction of the United States. ... On Jan. 1, 1933, only nine nations had registered their ratification of the limitation treaty. On Jan. 1, 1935, only nine States had adopted the uniform State statute. As 1933 witnessed ratification of the treaty by thirty-one additional nations, so may 1935 witness the adoption of the uniform drug act by at least thirty-one more states, thereby placing interstate accord abreast of international accord, to the honor of the legislative bodies of our States and for the promotion of the welfare of our people and the peoples of other lands.

— Franklin D. Roosevelt, March 1935 in a radio message read by United States Attorney General, Homer Stille Cummings, [33]
Anslinger claimed cannabis caused people to commit violent crimes and act irrationally and overly sexual. The FBN produced propaganda films promoting Anslinger's views and Anslinger often commented to the press regarding his views on marijuana.[34]

The 1936 Geneva Trafficking Conventions
In 1936 the Convention for the Suppression of the Illicit Traffic in Dangerous Drugs (1936 Trafficking Convention) was concluded in Geneva. The U.S., led by Anslinger, had attempted to include the criminalization of all activities in the treaty – cultivation, production, manufacture and distribution – related to the use of opium, coca (and its derivatives), and cannabis, for non-medical and non-scientific purposes. Many countries opposed this and the focus remained on illicit trafficking. Article 2 of the Convention called upon signatory countries to use their national criminal law systems to "severely" punish, "particularly by imprisonment or other penalties of deprivation of liberty", acts directly related to drug trafficking.[35] The U.S. refused to sign the final version because it considered the convention too weak, especially in relation to extradition, extraterritoriality and the confiscation of trafficking profits.[36]

Marihuana Tax Act (1937)
Main articles: Marihuana Tax Act of 1937 and Hemp
The Marihuana Tax Act of 1937 effectively made possession or transfer of marijuana illegal throughout the United States under federal law, excluding medical and industrial uses, through imposition of an excise tax on all sales of hemp. Annual fees were $24 ($637 adjusted for inflation) for importers, manufacturers, and cultivators of cannabis, $1 ($24 adjusted for inflation) for medical and research purposes, and $3 ($82 adjusted for inflation) for industrial users. Detailed sales logs were required to record marihuana sales. Selling marihuana to any person who had previously paid the annual fee incurred a tax of $1 per ounce or fraction thereof; however, the tax was $100 ($2,206 adjusted for inflation) per ounce or fraction thereof to sell any person who had not registered and paid the annual fee.[37]


Tax stamp for a producer of hemp
The American Medical Association (AMA) opposed the act because the tax was imposed on physicians prescribing cannabis, retail pharmacists selling cannabis, and medical cannabis cultivation and manufacturing; instead of enacting the Marihuana Tax Act the AMA proposed cannabis be added to the Harrison Narcotics Tax Act.[38] This approach was unappealing to some legislators who feared that adding a new substance to the Harrison Act would subject that act to new legal scrutiny. Since the federal government had no authority under the 10th Amendment to regulate medicines, that power being reserved by individual states in 1937, a tax was the only viable way to legislate marijuana.

File:Hemp for Victory 1942.webm
Hemp for Victory, a short documentary produced by the United States Department of Agriculture during World War II to inform and encourage farmers to grow hemp.
After the Philippines fell to Japanese forces in 1942, the Department of Agriculture and the U.S. Army urged farmers to grow hemp fiber and tax stamps for cultivation were issued to farmers. Without any change in the Marihuana Tax Act, over 400,000 acres of hemp were cultivated between 1942 and 1945. The last commercial hemp fields were planted in Wisconsin in 1957.[39] New York Mayor Fiorello LaGuardia, who was a strong opponent of the 1937 Marihuana Tax Act, started the LaGuardia Commission that in 1944 contradicted the earlier reports of addiction, madness, and overt sexuality.[40]

The decision of the United States Congress to pass the Marihuana Tax Act of 1937 was based on poorly attended hearings and reports based on questionable studies.[41][42] In 1936 the Federal Bureau of Narcotics (FBN) noticed an increase of reports of people smoking marijuana, which further increased in 1937. The Bureau drafted a legislative plan for Congress seeking a new law, and the head of the FBN, Harry J. Anslinger, ran a campaign against marijuana.[43][44] Newspaper mogul William Randolph Hearst's empire of newspapers used the "yellow journalism" pioneered by Hearst to demonize the cannabis plant and spread a public perception that there were connections between cannabis and violent crime.[45] Several scholars argue that the goal was to destroy the hemp industry,[46][47][48] largely as an effort of Hearst, Andrew Mellon and the Du Pont family.[46][48] They argue that with the invention of the decorticator hemp became a very cheap substitute for the wood pulp that was used in the newspaper industry.[46][49] However, Hearst newspapers owed large debts to Canadian suppliers of paper, who used wood as raw material. If an alternative raw material for paper had emerged, it would have lowered the price of the paper needed to print Hearst's many newspapers—a positive thing for Hearst.[50][51] Moreover, by the year 1916 there were at least five "machine brakes" for hemp[52] and it is unlikely that in the 1930s hemp became a new threat for newspapers owners.

Mellon was Secretary of the Treasury, as well as the wealthiest man in America, and had invested heavily in nylon, DuPont's new synthetic fiber. He considered[dubious – discuss] nylon's success to depend on it replacing the traditional resource, hemp.[46][53][54][55][56][57][58][59]

The company DuPont and many industrial historians dispute a link between nylon and hemp. They argue that the reason for developing nylon was to produce a fiber that could compete with silk and rayon in, for example, thin stockings for women. Silk was much more expensive than hemp and imported largely from Japan. There was more money in a substitute for silk. DuPont focused early on thin stockings for women. As a commercial product, nylon was a revolution in textiles. Strong and water-resistant, it was possible to make very thin fibers from cheap raw materials. The first sales in 1938 in New York of nylon stockings created a line with 4000 middle class women. For years to come, nylon demand was greater than DuPont could produce. And the DuPont Group was very big; it could move on if nylon had not become a success.[60][61][62]


Hemp, bast with fibers. The stem in the middle.
In 1916, United States Department of Agriculture (USDA) chief scientists Jason L. Merrill and Lyster H. Dewey created a paper, USDA Bulletin No. 404 "Hemp Hurds as Paper-Making Material",[63] in which they stated that paper from the woody inner portion of the hemp stem broken into pieces, so called hemp hurds, was "favorable in comparison with those used with pulp wood". Merrill and Dewey's findings were not repeated in a later book by Dewey[64] and have not been confirmed by paper production experts. The consistency of long fibers is too low in hemp hurds for commercial papermaking. Numerous machines had been devised for breaking and scutching hemp fibers, but none had been found to be fully satisfactory in actual commercial work.[51][64][65] To produce fiber from hemp was a labor-intensive process if harvest, transport and processing are included. Technological developments decreased the labor but not sufficiently to eliminate this disadvantage.[66]

There was also a misconception about the intoxicating effects of hemp because it has the same active substance, THC, which is in all cannabis strains. Hemp normally has a minimal amount of THC when compared to recreational cannabis strains but, in the 1930s, THC was not yet fully identified.[67] The methods FBN used for predicting the psychoactive effect of different samples of cannabis and hemp therefore gave confusing results.[68][69]

Mandatory sentencing (1952, 1956)
Mandatory sentencing and increased punishment were enacted when the United States Congress passed the Boggs Act of 1952 and the Narcotics Control Act of 1956. The acts made a first-time cannabis possession offense a minimum of two to ten years with a fine up to $20,000; however, in 1970 Congress repealed mandatory penalties for cannabis offenses.[40]

Controlled Substances Act (1970)
In its 1969 Leary v. United States decision the U.S. Supreme Court held the Marijuana Tax Act to be unconstitutional, since it violated the Fifth Amendment right against self-incrimination.[70] In response, Congress passed the Controlled Substances Act as Title II of the Comprehensive Drug Abuse Prevention and Control Act of 1970, which repealed the Marijuana Tax Act.[71] Although the new law did officially prohibit the use of cannabis for any purpose, it also eliminated mandatory minimum sentences and reduced simple possession of all drugs from a felony to a misdemeanor.[72]

Under the CSA cannabis was assigned a Schedule I classification, deemed to have a high potential for abuse and no accepted medical use – thereby prohibiting even medical use of the drug. The classification has remained since the CSA was first signed into law, despite multiple efforts to reschedule.[73][74] Other drugs in the Schedule I category include heroin, LSD, and peyote.[75]

Reorganization (1968, 1973)

US cannabis arrests by year.[76][77][78][79]
In 1968 the United States Department of the Treasury subsidiary the Bureau of Narcotics, and the United States Department of Health, Education, and Welfare subsidiary the Bureau of Drug Abuse Control, merged to create the Bureau of Narcotics and Dangerous Drugs as a United States Department of Justice subsidiary.[80]

In 1973 President Richard Nixon's "Reorganization Plan Number Two" proposed the creation of a single federal agency to enforce federal drug laws and Congress accepted the proposal, as there was concern regarding the growing availability of drugs.[81] As a result, on July 1, 1973, the Bureau of Narcotics and Dangerous Drugs (BNDD) and the Office of Drug Abuse Law Enforcement (ODALE) merged to create the Drug Enforcement Administration (DEA).[40]

Mandatory sentencing and three-strikes (1984, 1986)
During the Reagan administration the Sentencing Reform Act provisions of the Comprehensive Crime Control Act of 1984 created the Sentencing Commission, which established mandatory sentencing guidelines.[82] The Anti-Drug Abuse Act of 1986 reinstated mandatory prison sentences, including large scale cannabis distribution.[83] Later an amendment created a three-strikes law, which created mandatory 25-years imprisonment for repeated serious crimes – including certain drug offenses – and allowed the death penalty to be used against "drug kingpins".[40]

Solomon–Lautenberg amendment (1990)
The Solomon–Lautenberg amendment is a federal law enacted in 1990 that urged states to suspend the driver's license of anyone who commits a drug offense.[84][85] A number of states passed laws in the early 1990s seeking to comply with the amendment, in order to avoid a penalty of reduced federal highway funds.[86] These laws imposed mandatory driver's license suspensions of at least six months for committing any type of drug offense (regardless of whether any motor vehicle was involved) including the simple possession of cannabis.[87] Four states (Alabama, Arkansas, Florida, Texas) still have so-called "Smoke a joint, lose your license" laws in effect as of 2020.

House Joint Resolution 117 (1998)
By the fall of 1998, California voters had approved Proposition 215 to legalize medical cannabis, and similar measures were up for vote in several more states. In response to these developments, House Joint Resolution 117 was passed by the U.S. House of Representatives on September 15, 1998, to declare support for "the existing Federal legal process for determining the safety and efficacy of drugs" and oppose "efforts to circumvent this process by legalizing marijuana ... for medicinal use without valid scientific evidence and [FDA] approval".[88] The measure passed by a 310 to 93 vote.[89]

United States v. Oakland Cannabis Buyers' Cooperative (2001)
Main article: United States v. Oakland Cannabis Buyers' Cooperative
Following the passage of Proposition 215, the Oakland Cannabis Buyers' Cooperative was created to "provide seriously ill patients with a safe and reliable source of medical cannabis, information, and patient support".[90] In January 1998, the U.S. government sued Oakland Cannabis Buyers' Cooperative for violating federal laws created as a result of the Controlled Substances Act. On May 14, 2001, the Supreme Court ruled in United States v. Oakland Cannabis Buyers' Cooperative that federal anti-drug laws do not permit an exception for medical cannabis and rejected the common-law medical necessity defense to crimes enacted under the Controlled Substances Act, because Congress concluded cannabis has "no currently accepted medical use" when the act was passed in 1970.[91]

Gonzales v. Raich (2005)
Main article: Gonzales v. Raich
Gonzales v. Raich 545 U.S. 1 (2005) was a decision in which the U.S. Supreme Court ruled (6–3) that even where individuals or businesses in accordance with state-approved medical cannabis programs are lawfully cultivating, possessing, or distributing medical cannabis, such persons or businesses are violating federal marijuana laws. Therefore, under federal law violators are prosecuted because the Commerce Clause of the United States Constitution grants the federal government jurisdiction, pursuant to the U.S. Controlled Substances Act, to prosecute marijuana offenses.

In Gonzales the defendants argued that because the cannabis in question had been grown, transported, and consumed entirely within California and in compliance with California medical cannabis laws, their activity did not implicate interstate commerce, and as such could not be regulated by the federal government through the Commerce Clause.

The Supreme Court disagreed, reasoning that cannabis grown within California for medical purposes is indistinguishable from illicit marijuana and that because the intrastate medical cannabis market contributes to the interstate illicit marijuana market, the Commerce Clause applies. Even where California citizens are using medical cannabis in compliance with state law, those individuals and businesses can still be prosecuted by federal authorities for violating federal law.[92]

To combat state-approved medical cannabis legislation, the Drug Enforcement Administration continued the routine targeting and arrests of medical cannabis patients and the seizure of medical cannabis and the business assets of growers and medical dispensaries. This was finally curtailed with the passage of the Rohrabacher–Farr amendment in 2014, although prosecutions initially continued until a pair of court rulings determined the DOJ was interpreting the amendment incorrectly.

Cole Memorandum rescinded (2018)
In January 2018, Attorney General Jeff Sessions rescinded the Cole Memorandum, an Obama-era policy that generally discouraged U.S. Attorneys from enforcing federal law against state-legal cannabis enterprises.[93] The impact that rescinding the memo would have on enforcement activities was not immediately made clear by Justice Department officials.[94]

Decriminalization (1970s–)
Medical use
Main article: Medical cannabis in the United States
Compassionate IND program (1978)
In 1975, a Washington D.C. resident named Robert Randall was arrested for cultivating cannabis. Randall, who had discovered that cannabis relieved the symptoms of his glaucoma, employed a medical necessity defense at trial to justify his use of the drug.[95] The charges against Randall were dismissed, and as a result of an ensuing petition filed with the FDA, Randall became the first person to receive cannabis from the federal government in 1976.[95] After his supply was cut off in 1978, he filed a lawsuit to have it restored,[95] setting in motion the creation of the Compassionate Investigational New Drug program shortly thereafter.[96] The program allowed patients with serious medical conditions to receive a regular supply of cannabis from the federal government; however, only 13 patients ended up participating due to the very complicated and drawn-out application process involved.[97]

The Compassionate IND program was closed to new patients in 1992, due to a flood of new applications from AIDS patients and concerns that the program undercut Bush administration efforts to discourage illegal drug use.[98] Twenty-eight applications that had recently been approved were rescinded, and only the 13 patients who were already receiving cannabis were allowed to do so moving forward.[97] All but two of the patients have since died; the surviving two patients are the only persons who currently receive cannabis through the program.[99]

Early medical cannabis laws (1978–1982)
During the late 1970s and into the early 80s, a number of states passed legislation addressing the medical use of cannabis.[100] New Mexico was the first to do so in 1978, and by the end of 1982 over thirty states had followed suit.[101] The majority of these laws sought to provide cannabis through federally-approved research programs administered by the states, using cannabis supplied by the National Institute on Drug Abuse. Only seven states ended up implementing the programs, however,[102] due to the large bureaucratic and regulatory obstacles involved.[97] Other states passed laws allowing doctors to prescribe cannabis, or reclassifying cannabis in a state's internal drug scheduling system. Additionally, a few states passed legislation affirming the right of individuals to present a medical necessity defense at trial.[100] These laws were all largely ineffectual though, due to the continued prohibition of medical cannabis at the federal level.[102] By the mid-80s, efforts to pass new medical cannabis laws had ground to a halt, and a number of existing laws were either repealed or allowed to expire.[100]

DEA judge recommends reclassification (1988)
In 1972, the National Organization for the Reform of Marijuana Laws petitioned the BNDD (which later became the DEA) to remove cannabis from the list of Schedule I drugs, in order to allow it to be prescribed by physicians.[103] After a decade of legal battles in which the DEA refused to consider the petition,[74] public hearings were finally held on the matter beginning in 1986.[97] In September 1988, after two years of extensive public hearings, DEA Chief Administrative Law Judge Francis L. Young ruled in favor of moving cannabis to a Schedule II classification, finding that "Marijuana, in its natural form, is one of the safest therapeutically active substances known to man."[104][105] Young further concluded: "The evidence in this record clearly shows that marijuana has been accepted as capable of relieving the distress of great numbers of very ill people, and doing so with safety under medical supervision. It would be unreasonable, arbitrary and capricious for DEA to continue to stand between those sufferers and the benefits of this substance in light of the evidence in this record."[106][107] As Young's ruling was only a non-binding recommendation, however, it was rejected by DEA Administrator John Lawn in December 1989.[108] A 1994 U.S. Court of Appeals ruling upheld the DEA's final decision.[73]

Proposition P and first cannabis dispensaries (1991)
In 1991, 79% of San Francisco voters approved Proposition P, a non-binding ballot measure expressing support for the medical use of cannabis.[109] The city board of supervisors soon followed with Resolution 141-92, which urged law enforcement not to prosecute individuals using cannabis under a doctor's care (as proven by a letter from a treating physician).[110] The resolution enabled the open sale of cannabis to AIDS patients and others within the city, most notably through the San Francisco Cannabis Buyers Club which was operated by Dennis Peron.[111] Similar clubs appeared outside San Francisco in the ensuing years as other cities passed legislation to support the medical use of cannabis. The Wo/Men's Alliance for Medical Marijuana was founded in 1993 after Santa Cruz voters approved Measure A in November 1992.[112] And the Oakland Cannabis Buyers' Cooperative was founded in 1995 shortly before the city council passed multiple medical cannabis resolutions.[112] These were the first cannabis dispensaries in the U.S., allowed to operate openly by city officials even though in violation of both state and federal law.

Compassionate Use Act of 1996
In California, following the success of Proposition P and other local initiatives, medical cannabis advocates turned attention towards reform efforts at the state level. A pair of medical cannabis bills was approved by state legislators in 1994 and 1995; however, both of these were vetoed by Governor Pete Wilson.[113] Frustrated by these vetoes, medical cannabis advocates took the issue directly to the voters, collecting 775,000 signatures for qualification of a statewide ballot initiative in 1996.[114]

On November 5, 1996, California voters approved Proposition 215 (Compassionate Use Act of 1996), making the state the first in the nation to legalize the medical use of cannabis.[115] The measure, approved with 56% of the vote, allowed the use, possession, and cultivation of cannabis by patients with a physician's recommendation, for treatment of cancer, anorexia, AIDS, chronic pain, spasticity, glaucoma, arthritis, migraine, or "any other illness for which marijuana provides relief".[116] The law also allowed patient caregivers to cultivate cannabis, and urged lawmakers to facilitate the "safe and affordable distribution of marijuana".[116]

The passage of Proposition 215 was followed by the approval of five more medical cannabis ballot initiatives in 1998 (Washington, Oregon, Alaska, Nevada, and the District of Columbia).[106] Maine followed in 1999, along with Nevada (for a second time) and Colorado in 2000.[106] Also in 2000, Hawaii became the first state to legalize medical cannabis through an act of state legislature.[117]

D.C. medical cannabis approved, delayed (1998)
In 1998 Washington, D.C. residents approved Initiative 59 to legalize the medical use of cannabis,[118] but a series of amendments introduced by Rep. Bob Barr and approved by Congress prevented its implementation for over a decade.[119] The initial Barr amendment was enacted prior to the November 1998 election but after ballots had been printed, thereby allowing D.C. residents to vote on the initiative but preventing the results from being made public.[120] The amendment was challenged in court by the American Civil Liberties Union on grounds that it violated First Amendment rights, and in September 1999 U.S. District Court Judge Richard W. Roberts agreed, overturning the Barr amendment.[121] Rep. Barr then introduced a similar amendment which became law in November 1999, setting off a long legal battle[122] until finally in December 2009 the Barr amendment was removed from the annual D.C. appropriations bill, allowing the original 1998 ballot initiative to move forward.[119] Rep. Barr, who left Congress in 2003, helped lobby for defeat of the legislation he originally authored,[123] having reversed his earlier opposition to the medical use of cannabis.[124]

Conant v. McCaffrey (2000)
After Proposition 215 passed, the Clinton administration reiterated its firm opposition to the medical use of cannabis, and threatened to revoke the prescription-writing abilities of doctors who recommend or prescribe the drug.[125] Additionally, threats were made by the administration to criminally prosecute physicians, and ban them from participating in Medicare and Medicaid.[126] A group of physicians challenged this policy as a violation of First Amendment rights, and in September 2000 prevailed in the case Conant v. McCaffrey, which affirmed the right of physicians to recommend (but not prescribe) cannabis.[102] As a result, cannabis must be recommended instead of prescribed in all states where its medical use has been legalized.

Ogden memo (2009)
In October 2009, the Ogden memo was issued by the Justice Department, advising U.S. attorneys to only prosecute medical cannabis providers who violate state law or engage in other federally-illegal activity (such as money laundering or illegal use of firearms).[127] The memo did not have the effect that many expected, however, as raids on medical cannabis providers actually increased in frequency following its release.[128] Prompted by public outcry and requests for clarification from numerous elected officials, a new memo was issued by Deputy Attorney General James M. Cole in June 2011.[129] The 2011 Cole memo insisted that the 2009 Ogden memo was being adhered to,[128] and that the Ogden memo's protections applied only to individual patients and not commercial operations.[130] The crackdown on medical cannabis continued following the release of the 2011 memo, but was tempered somewhat by the issuance of a new Cole memo in 2013, which advised a more deferential approach towards the states (similar in nature to how the 2009 Ogden memo was widely interpreted).[129]

Rohrabacher–Farr amendment (2014)
In response to increased raids on medical cannabis providers, Congress passed the Rohrabacher–Farr amendment in 2014, to prohibit federal prosecution of individuals acting in accordance with state medical cannabis laws. The amendment passed the House by a 219–189 vote in May 2014, and was signed into law in December as part of an omnibus spending bill.[131] It was renewed following a 242–186 House vote in 2015, and has since been included in a long series of spending bills approved by Congress.[131]

After the amendment's 2014 enactment, the Justice Department initially continued to prosecute medical cannabis providers based on a new interpretation of the amendment that was being employed.[132][133] U.S. District Judge Charles Breyer ruled against the DOJ in October 2015, however, stating that the interpretation "defies language and logic" and "tortures the plain meaning of the statute", and was "counterintuitive and opportunistic".[134] The Ninth Circuit Court of Appeals similarly rejected the DOJ's arguments in an August 2016 ruling.[135]

Non-medical use
Main article: Decriminalization of non-medical cannabis in the United States
Shafer Commission (1972)
Following the passage of the Comprehensive Drug Abuse Prevention and Control Act of 1970, a commission was formed under decree of the act to study the rising use of cannabis in America, and subsequently make policy recommendations. Formally known as the National Commission on Marihuana and Drug Abuse, the Shafer Commission – led by former Pennsylvania governor Raymond P. Shafer – determined in its March 1972 report to the President and Congress that the societal harms caused by cannabis were limited, and recommended removal of criminal penalties for possession and distribution of small amounts of the drug.[136] Although no federal reforms resulted, the report's findings helped influence the passage of decriminalization laws in a number of states during the 1970s.[137][112]

California Marijuana Initiative (1972)
In 1972, California became the first state to vote on a ballot measure attempting to legalize cannabis. Proposition 19 – the California Marijuana Initiative – sought to legalize the use, possession, and cultivation of cannabis, but did not allow for commercial sale.[138] It was ultimately defeated by a wide margin (33–67%),[139] but supporters were encouraged by the results,[140] which provided momentum to other reform efforts in California in subsequent years.[112]

First wave of decriminalization (1973–1978)
In 1973 Oregon became the first state to decriminalize cannabis, reducing the penalty for up to one ounce to a $100 fine. States that decriminalized in the following years were: Alaska (1975), Maine (1975), Colorado (1975), California (1975), Ohio (1975), Minnesota (1976), Mississippi (1977), New York (1977), North Carolina (1977), and Nebraska (1978).[138][137] NORML was actively involved in helping to pass these laws, lobbying in support of legislation and paying for decriminalization proponents (including members of the Shafer Commission) to travel to various states to testify.[137]

Some cities also passed decriminalization laws in the 1970s, such as Ann Arbor in 1972 and Madison in 1977.[141][142] Additionally, San Francisco voters approved a non-binding measure in 1978 to effectively legalize cannabis,[143] but mayor George Moscone was assassinated shortly afterwards and the initiative was subsequently disregarded.[112][144]

Ravin v. State (1975)
Ravin v. State was a 1975 decision by the Alaska Supreme Court that held the Alaska Constitution's right to privacy protects an adult's ability to use and possess a small amount of cannabis in the home for personal use.[145][146] The Alaska Supreme Court thereby became the first—and only—state or federal court to announce a constitutional privacy right that protects some level of cannabis use and possession.[145] This policy of effective legalization remained in place until it was overridden by a 1990 ballot initiative that recriminalized cannabis in the state.[147]

Second wave of decriminalization (2000s–)
In 2001, Nevada became the first state in over two decades to decriminalize cannabis.[148] In the following years, major cities across the U.S. began to either decriminalize cannabis or make enforcement of cannabis laws the lowest priority. Among the first cities to do so were Seattle (2003),[149] Oakland (2004),[150] Denver (2005),[151] and San Francisco (2006).[152] The trend continued with Massachusetts decriminalizing in 2008,[153] followed by Connecticut (2011),[154] Rhode Island (2012),[155] Vermont (2013),[156] the District of Columbia (2014),[157] Maryland (2014),[158] Missouri (2014),[159] the U.S. Virgin Islands (2014),[160] Delaware (2015),[161] Illinois (2016),[162] and New Hampshire (2017),[163] New Mexico (2019),[164] North Dakota (2019),[165] Hawaii (2019),[166] and Virginia (2020).[167]

First two states legalize (2012)

A cannabis dispensary in Denver, Colorado.
On November 6, 2012, Colorado and Washington became the first states to legalize recreational use of cannabis when voters approved Colorado Amendment 64 and Washington Initiative 502. Each regulated cannabis in a way similar to alcohol, allowing possession of up to an ounce for adults ages 21 and older, with DUID provisions similar to those against drunk driving. Unlike Initiative 502, Amendment 64 allowed for personal cultivation of up to six plants. Both allowed for commercial cultivation and sales, subject to regulation and taxes.

Cole Memorandum (2013)
After the first states legalized in 2012, the Justice Department issued the Cole Memorandum in August 2013, seeking to clarify how federal law would be enforced. The memo specified eight conditions which would merit enforcement of federal law, such as the distribution of cannabis to minors or the diversion of cannabis across state borders.[168] Aside from these situations, the memo generally allowed for the commercial distribution of cannabis in states where such activity has been legalized. The Cole memo was later rescinded by Attorney General Jeff Sessions in 2018, introducing uncertainty into how federal law would be enforced.[94]

Two more states plus D.C. legalize (2014)
In November 2014, the states of Alaska (Measure 2) and Oregon (Ballot Measure 91) along with Washington D.C. (Initiative 71) legalized the recreational use of cannabis. These laws were similar in nature to those of Colorado and Washington, except the D.C. initiative did not contain an allowance for commercial sale. A rider attached to the 2014 "Cromnibus" bill further prevented D.C. council members from enacting legislation to allow for commercial sale.[169][170]

Indian Reservation legalization allowed (2014)
In December 2014, the Justice Department announced a policy to allow recognized Indian tribes to legalize the use and sale of cannabis on American Indian reservations. The laws on reservations are allowed to be different from state and federal laws, and as has been the case with state recreational legalization the federal government said it would not intervene as long as strict controls are maintained. In 2015, the Flandreau Santee Sioux Tribe (of South Dakota) voted to legalize the recreational use of cannabis.[171] Others such as Yakama Nation and the Oglala Sioux Tribal Council have rejected legalization on their reservations.[172]

Four more states legalize (2016)
In November 2016, the number of legal states doubled as four more states passed ballot measures to legalize cannabis: California, Nevada, Massachusetts, and Maine.[173] This included the nation's most populous state (California), while Massachusetts and Maine became the first eastern states to legalize.

First state legalizes through legislature (2018)
In January 2018, Vermont became the first state to legalize through an act of legislature, as opposed to ballot initiative with the previous eight states. Also differentiating Vermont's law is the fact that it does not allow for commercial sale, although a commission was set up to explore the possibility.[174] The bill was signed into law by Republican governor Phil Scott.[175]

First state legalizes commercial sale through legislature (2019)
In June 2019, Illinois became the second state to legalize through an act of legislature and the first to legalize commercial sale in this way. The bill was signed into law by Gov. J. B. Pritzker after passing the House 66–47 and the Senate 38–17.[176][177]

Four more states vote to legalize (2020)
In November 2020, four states voted to legalize recreational marijuana via ballot measures: Arizona, Montana, New Jersey, and South Dakota. South Dakota's legalization amendment was subsequently overturned in court.[178] Notably, South Dakota would have become the first state to legalize recreational use without first legalizing medical use and became the first state to have a legalization referendum overturned. With these approvals, recreational cannabis became legal in 14 states.

House approves MORE Act (2020)
On December 4, 2020, the House of Representatives voted 228–164 to approve the Marijuana Opportunity Reinvestment and Expungement (MORE) Act.[179] Included in the act were provisions to legalize cannabis at the federal level by removing it from the Controlled Substances Act, expunge cannabis offenses for non-violent offenders, and impose a federal tax on cannabis products (which would be used to fund restorative justice programs).[180] Prior to the vote, neither chamber of Congress had voted on a cannabis legalization bill before.[181]

Legalization timeline
United States Jurisdictions With Legalized Recreational Cannabis
Jurisdiction	Legalization Date	Licensed Sales Since	Legalization Method
Washington (state)	December 6, 2012	July 8, 2014	Initiated Ballot Measure
Colorado	December 10, 2012[182]	January 1, 2014	Initiated Ballot Measure
Alaska	February 24, 2015	October 29, 2016	Initiated Ballot Measure
Washington, D.C.	February 26, 2015	[N/A]	Initiated Ballot Measure
Oregon	July 1, 2015	October 1, 2015	Initiated Ballot Measure
California	November 9, 2016	January 1, 2018	Initiated Ballot Measure
Massachusetts	December 15, 2016	November 20, 2018	Initiated Ballot Measure
Nevada	January 1, 2017	July 1, 2017	Initiated Ballot Measure
Maine	January 30, 2017	October 9, 2020	Initiated Ballot Measure
Vermont	July 1, 2018	Not Yet Started	Legislative Bill
Northern Mariana Islands	September 21, 2018	Not Yet Started	Legislative Bill
Michigan	December 6, 2018	December 1, 2019	Initiated Ballot Measure
Guam	April 4, 2019	Not Yet Started	Legislative Bill
Illinois	January 1, 2020	January 1, 2020	Legislative Bill
Arizona	November 30, 2020	January 22, 2021	Initiated Ballot Measure
Montana	January 1, 2021	Not Yet Started	Initiated Ballot Measure
New Jersey	February 22, 2021	Not Yet Started	Legislatively Referred Ballot Measure
New York	March 31, 2021	Not Yet Started	Legislative Bill
New Mexico	June 29, 2021	Not Yet Started	Legislative Bill
Virginia	July 1, 2021	Not Yet Started	Legislative Bill
See also
icon	Cannabis portal
	History portal
	Law portal
flag	United States portal
Cannabis in the United States
Timeline of cannabis laws in the United States
Legality of cannabis by U.S. jurisdiction
History of cannabis
Prohibition in the United States
Single Convention on Narcotic Drugs
Notes
References
 "Richard J. Bonnie & Charles H. Whitebread, II: PASSAGE OF THE UNIFORM NARCOTIC DRUG ACT". Druglibrary.org. Retrieved March 9, 2011.
 "Why Is Marijuana Illegal?". weednews.co. Retrieved December 23, 2016.
 Ingraham, Christopher (November 8, 2016). "Marijuana wins big on election night". The Washington Post. Retrieved February 15, 2018.
 Deitch, Robert (2003). Hemp – American History Revisited. New York City: Algora Publishing. p. 16. ISBN 978-0-87586-206-4.
 Frontline, PBS. "Busted – america's war on marijuana". pbs.org. Retrieved September 4, 2014.
 Gieringer, Dale H. (1999). "The Forgotten Origins of Cannabis Prohibition in California" (PDF). Contemporary Drug Problems. 26 (2): 237–288. doi:10.1177/009145099902600204. S2CID 145499009.
 "Chemists and poisons". Chemist & Druggist. 28: 68, 330. 1886.
 United States. Bureau of Chemistry (1905). Bulletin, Issues 96–99. Washington, DC: G.P.O.
 "Senate". New York Times. New York City. February 15, 1860.
 Papers read before the Medico-Legal Society of New York, from its organization. New York: McDivitt, Campbell & Co. 1869.
 "Our Fashionable Narcotics". New York Times. New York City. January 10, 1854.
 Jones, Nick (2004). Spliffs: A Celebration of Cannabis Culture. New York: Black Dock Publishing. ISBN 9781579123604.
 "THE USE OF TOBACCO.; INCREASE IN THE CONSUMPTION OF NARCOTIC STIMULANTS. THE PERNICIOUS PRACTICE SPREADING AMONG AMERICAN WOMEN—SNUFF-DIPPING IN THE UNITED STATES". New York Times. New York City. September 14, 1874.
 Musto, David F. (1999). The American Disease: Origins of Narcotic Control (3rd ed.). Oxford University Press. ISBN 978-0-19-512509-2.
 "Statement Of Dr. William C. Woodward". Druglibrary.org. Retrieved March 9, 2011.
 "TO MAKE IT TO GET HABIT DRUGS; Towns-Boylan Bill at Albany Would Stop the Loopholes in Present Prescription Law". New York Times. New York City. January 26, 1914.
 "MUZZLES THE DOGS ALL THE YEAR 'ROUND; Health Board Seeks to Stop the Increase of Rabies by Sanitary Law. Puts a Ban on Hashish. Wood Alcohol Must Not Be Used Hereafter in Any Medicinal Preparation". New York Times. New York City. July 29, 1914.
 "Topics of the Times". New York Times. New York City. July 30, 1914.
 Dudley, Elyssa (September 19, 2014). "The nation's first marijuana raid likely happened in Los Angeles". Off-Ramp. KPCC.
 "The Origins of California's 1913 Cannabis Law". Canorml.org. Retrieved March 9, 2011.
 Walton, Robert F. (1938). Marijuana, America's New Drug Problem. Philadelphia: B. Lippincott. p. 37.
 Thor Benson. "The real reason marijuana is illegal in the United States". salon.com.
 Maisto, Stephen; Galizio, Mark; Connors, Gerard (2003). Drug Use and Abuse (4th ed.). Belmont, California: Wadsworth Publishing. pp. 426–428. ISBN 978-0-15-508517-6.
 Brecher, Edward M. (1972). "The Consumers Union Report on Licit and Illicit Drugs". DRCNet Online Library of Drug Policy. Retrieved February 13, 2016.
 "The Surprising Link Between U.S. Marijuana Law and the History of Immigration". Time. Retrieved June 15, 2020.
 "W.W. WILLOUGHBY: OPIUM AS AN INTERNATIONAL PROBLEM, BALTIMORE, THE JOHNS HOPKINS PRESS, 1925". Druglibrary.org. Retrieved March 9, 2011.
 "Nordisk familjebok 1912". Runeberg.org. Retrieved March 9, 2011.
 "Anslinger H. J., Tompkins W F The Traffic In Narcotic". Druglibrary.org. Retrieved March 9, 2011.
 Keel, Robert. "Drug Law Timeline, Significant Events in the History of our Drug Laws". Schaffer Library of Drug Policy. Retrieved April 24, 2007.
 "The Marihuana Tax Act of 1937, Transcripts of Congressional Hearings". Druglibrary.org. Retrieved March 9, 2011.
 "ANSLINGER H. J., TOMPKINS W F THE TRAFFIC IN NARCOTIC, ch 6, 1953". Druglibrary.org. Retrieved March 9, 2011.
 "Records of the Drug Enforcement Administration (DEA)". Archives.gov. Retrieved March 9, 2011.
 "ROOSEVELT ASKS NARCOTIC WAR AID, 1935". Druglibrary.net. Retrieved March 9, 2011.
 McWilliams, John C. (1990). The Protectors: Harry J. Anslinger and the Federal Bureau of Narcotics, 1930–1962. Newark, Delaware: University of Delaware Press. p. 183. ISBN 978-0-87413-352-3.
 "The 1936 Geneva Convention for the Suppression of the Illicit Traffic in Dangerous Drugs". Druglibrary.org. Retrieved May 26, 2011.
 International Law Commission, 62nd session (June 18, 2010). "Survey of multilateral conventions which may be of relevance for the work of the International Law Commission on the topic 'The obligation to extradite or prosecute'". United Nations. pp. 12–16.
 "Full Text of the Marihuana Tax Act as passed in 1937". Schaffer Library of Drug Policy. Retrieved May 15, 2007.
 "Statement of Dr. William C. Woodward, Legislative Counsel, American Medical Association". Druglibrary.org. Retrieved March 25, 2006.
 "David P. West:Hemp and Marijuana:Myths & Realities". Naihc.org. Retrieved March 9, 2011.
 "Marijuana Timeline". Public Broadcasting Service. Retrieved April 23, 2007.
 "The Marihuana Tax Act". Druglibrary.org. Retrieved March 9, 2011.
 "The Marihuana Tax Act, Reports". Druglibrary.org. Retrieved March 9, 2011.
 "Harry J. Anslinger, U. S. Commissioner of Narcotics and Will Oursler : The Murderers, the story of the narcotic gangs, Pages: 541–554, 1961". Hempology.org. April 26, 1945. Retrieved March 9, 2011.
 "Additional Statement of H.J. Anslinger, Commissioner of Narcotics". Druglibrary.org. Retrieved March 25, 2006.
 Charles H. Whitebread; Richard J. Bonnie (1972). The Marihuana Consensus: A History of American Marihuana Prohibition. University of Virginia Law School. ISBN 9780813904177.
 French, Laurence; Manzanárez, Magdaleno (2004). NAFTA & neocolonialism: comparative criminal, human & social justice. University Press of America. p. 129. ISBN 978-0-7618-2890-7.
 Earlywine, 2005: p.24
 Peet, 2004: p. 55
 Sterling Evans (2007). Bound in twine: the history and ecology of the henequen-wheat complex for Mexico and the American and Canadian Plains, 1880–1950. Texas A&M University Press. p. 27. ISBN 978-1-58544-596-7.
 "The Chief: The Life of William Randolph Hearst: David Nasaw: 9780618154463: Amazon.com: Books".
 "Flax and Hemp: From the Seed to the Loom".
 Hemp Hurds as Paper-Making Material by Lyster H. Dewey and Jason L. Merrill.
 Evans, Sterling, ed. (2006). The Borderlands of the American and Canadian Wests: Essays on Regional History of the Forty-Ninth Parallel. University of Nebraska Press. p. 199. ISBN 978-0-8032-1826-0.
 Gerber, Rudolph Joseph (2004). Legalizing marijuana: drug policy reform and prohibition politics. Greenwood Publishing Group. p. 7. ISBN 978-0-275-97448-0.
 Earleywine, Mitchell (2005). Understanding marijuana: a new look at the scientific evidence. Oxford University Press. p. 231. ISBN 978-0-19-518295-8.
 Robinson, Matthew B.; Scherlen, Renee G. (2007). Lies, damned lies, and drug war statistics: a critical analysis of claims made by the office of National Drug Control Policy. SUNY Press. p. 12. ISBN 978-0-7914-6975-0.
 Rowe, Thomas C. (2006). Federal narcotics laws and the war on drugs: money down a rat hole. Psychology Press. p. 26. ISBN 978-0-7890-2808-2.
 Sullivan, Larry E.; et al., eds. (2005). Encyclopedia of Law Enforcement: Federal. SAGE. p. 747. ISBN 978-0-7619-2649-8.
 Lusane, Clarence (1991). Pipe dream blues: racism and the war on drugs. South End Press. pp. 37–38. ISBN 978-0-89608-410-0.
 "the history of nylon".
 Wolfe, Audra J. (2008). "Nylon: A Revolution in Textiles". Chemical Heritage Magazine. 26 (3). Retrieved March 20, 2018.
 "American Chemical Society: THE FIRST NYLON PLANT. 1995" (PDF).
 "The Project Gutenberg eBook of Hemp Hurds as Paper-Making Material, by Lyster H. Dewey and Jason L. Merrill".
 "Fiber production in the western hemisphere".
 Hayo M.G. van der Werf. "Hemp facts and hemp fiction". hempfood.com. Archived from the original on July 13, 2013.
 T. Randall Fortenbery; Michael Bennett (July 2001). "Is Industrial Hemp Worth Further Study in the US? A Survey of the Literature" (PDF). Department of Agricultural and Applied Economics, University of Wisconsin – Madison.
 "Interview with the winner of the first ECNP Lifetime Achievement Award: Raphael Mechoulam, Israel" Archived April 30, 2011, at the Wayback Machine (February 2007). Matters.ecnp.nl.
 "David P. West: Fiber Wars: The Extinction of Kentucky Hemp chapter 8". Gametec.com. Retrieved March 9, 2011.
 "Marihuana Conference HELD DECEMBER 5, 1938, in the UNITED STATES Bureau of Internal Revenue". Gametec.com. Retrieved March 9, 2011.
 "Timothy Leary v. US, Supreme Court of the United States, 1969". Druglibrary.org. Retrieved March 9, 2011.
 Pub. L. No. 91-513, 84 Stat. 1236. October 27, 1973.
 Marijuana: A Study of State Policies and Penalties (PDF), National Governors' Conference Center for Policy Research and Analysis, November 1977
 The DEA: Four Decades of Impeding And Rejecting Science (PDF), Drug Policy Alliance / Multidisciplinary Associations for Psychedelic Studies, June 2014
 Hudak, John; Wallack, Grace (October 2015), "Ending the U.S. government's war on medical marijuana research" (PDF), Center for Effective Public Management at Brookings, The Brookings Institution
 "DRUG SCHEDULING". dea.gov. Retrieved May 4, 2017.
 Total Annual Arrests in the US by Year and Type of Offense. Drug War Facts. Page lists FBI Uniform Crime Reports sources. Page links to data table:
 Data table: Total Number of Arrests in the US by Year and Type of Offense. Drug War Facts.
 Drugs and Crime Facts: Drug law violations and enforcement. From the United States Bureau of Justice Statistics (BJS). Source: FBI Uniform Crime Reports. Click on the charts to view the data.
 Marijuana Research: Uniform Crime Reports - Marijuana Arrest Statistics. Has data table for earlier years. Source: FBI Uniform Crime Reports.
 Illinois General Assembly; Legislative Investigating Commission (1971). The Drug Crisis: Report on Drug Abuse in Illinois to the Illinois General Assembly. Chicago, Illinois: Illinois Legislative Investigating Commission. p. 184.
 "History of the DEA: 1970 – 1975". deamuseum.org. Archived from the original on September 28, 2007. Retrieved April 30, 2007.
 "An Overview of the United States Sentencing Commission" (PDF). United States Department of State. Archived from the original (PDF) on July 21, 2004. Retrieved April 30, 2007.
 "1985–1990". Drug Enforcement Administration. Archived from the original on June 22, 2008. Retrieved April 30, 2007.
 "Possess a Joint, Lose Your License": July 1995 Status Report, Marijuana Policy Project, archived from the original on October 8, 2007
 "States Are Pressed to Suspend Driver Licenses of Drug Users". The New York Times. Associated Press. November 16, 1990. Retrieved February 1, 2018.
 Aiken, Joshua (December 12, 2016), "Reinstating Common Sense: How driver's license suspensions for drug offenses unrelated to driving are falling out of favor", Prison Policy Initiative, retrieved February 1, 2018
 "Reefer sanity: States abandon driver's license suspensions for drug offenses". The Clemency Report. Archived from the original on January 19, 2018. Retrieved February 1, 2018.
 "Summary: H.J.Res.117 – 105th Congress (1997-1998)". congress.gov. Retrieved February 27, 2018.
 "Ninety-Three Members of Congress Stand Up For Medical Marijuana". NORML. September 17, 1998. Retrieved February 27, 2018.
 Hanson, Glen; Venturelli, Peter; Fleckenstein, Annette (2008). Student Study Guide to Accompany Drugs and Society. Sudbury, Massachusetts: Jones & Bartlett Learning. p. 355. ISBN 978-0-7637-5932-2.
 UNITED STATES v. OAKLAND CANNABIS BUYERS’ COOPERATIVE. Cornell Law School. Retrieved May 26, 2011
 Supreme Court. GONZALES V. RAICH (2008). Cornell Law School.
 Savage, Charlie; Healy, Jack (January 4, 2018). "Trump Administration Takes Step That Could Threaten Marijuana Legalization Movement". The New York Times. Retrieved February 15, 2018.
 Gerstein, Josh; Lima, Cristiano (January 4, 2018). "Sessions announces end to policy that allowed legal pot to flourish". Politico. Retrieved January 21, 2018.
 Patients in the Crossfire (PDF), American for Safe Access, 2004
 de Coning, Lexi (June 23, 2016). "Irvin Rosenfeld: Meet the Longest-Surviving U.S. Federal Marijuana Patient". MassRoots. Archived from the original on September 5, 2017. Retrieved May 17, 2017.
 Grinspoon, Lester (August 16, 2005), History of Cannabis as a Medicine (PDF)
 Isikoff, Michael (June 22, 1991). "HHS to phase out marijuana program". The Washington Post. Retrieved September 6, 2019.
 Devine, Jimi (December 3, 2019). "George McMahon, Who Got Medical Pot from the Feds for Decades, Passes Away". Cannabis Now. Retrieved December 11, 2019.
 Pacula, Rosalie Piccardo (February 2002). "State Medical Marijuana Laws: Understanding the Laws and Their Limitations" (PDF). Journal of Public Health Policy. 23 (4): 413–439. CiteSeerX 10.1.1.202.2274. doi:10.2307/3343240. JSTOR 3343240. PMID 12532682. S2CID 13389317.
 Markoff, Steven C. "State-by-State Medical Marijuana Laws". ProCon.org. Archived from the original on May 15, 2017. Retrieved May 31, 2017.
 State-By-State Medical Marijuana Laws, Marijuana Policy Project, December 2016
 Zeese, Kevin (September 1, 1999). "History of medical marijuana policy in US". International Journal of Drug Policy. 10 (4): 319–328. doi:10.1016/S0955-3959(99)00031-6. Retrieved September 6, 2019.
 "Judge Urges Allowing Medicinal Use of Marijauna". The New York Times. Associated Press. September 7, 1988. Retrieved September 6, 2019.
 Isikoff, Michael (September 19, 1988). "DEA judge's 'fresh' view on legal marijuana use". The Washington Post. Retrieved September 6, 2019.
 Eddy, Mark (April 2, 2010), Medical Marijuana: Review and Analysis of Federal and State Policies (PDF), Congressional Research Service
 Young, Francis L. (September 6, 1988), Opinion and Recommended Ruling, Findings of Fact, Conclusions of Law and Decision of Administrative Law Judge | In the Matter of: Marijuana Rescheduling Petition (PDF), Drug Enforcement Administration
 "U.S. resists easing curb on marijuana". The New York Times. Associated Press. December 31, 1989. Retrieved September 6, 2019.
 Boire, Richard Glen; Feeney, Kevin (January 26, 2007). Medical Marijuana Law. Ronin Publishing. ISBN 9781579510343.
 "Proposition P". marijuanalibrary.org. Retrieved April 30, 2017.
 Gardner, Fred (August 26, 2014). "The Cannabis Buyers Club: How Medical Marijuana Began in California". marijuana.com. Archived from the original on November 20, 2018. Retrieved May 4, 2017.
 Heddleston, Thomas R. (June 2012). From the Frontlines to the Bottom Line: Medical Marijuana, the War on Drugs, and the Drug Policy Reform Movement (Thesis). UC Santa Cruz Electronic Theses and Dissertations. Archived from the original on February 16, 2014.
 Vitiello, Michael (1998). "Proposition 215: De Facto Legalization of Pot and the Shortcomings of Direct Democracy". McGeorge School of Law. Retrieved April 30, 2017.
 "Medical Marijuana Initiative Qualifies For November Ballot". NORML. June 6, 1996. Retrieved April 30, 2017.
 Balzar, John (November 6, 1996). "Voters Approve Measure to Use Pot as Medicine". Los Angeles Times. Retrieved February 9, 2018.
 "Proposition 215: Text of Proposed Law" (PDF). ProCon.org. Archived from the original (PDF) on May 17, 2017.
 "Hawaii Becomes First State to Approve Medical Marijuana Bill". The New York Times. Associated Press. June 15, 2000. Retrieved February 7, 2017.
 Miller, Bill; Hsu, Spencer S. (September 21, 1999). "Results Are Out: Marijuana Initiative Passes". The Washington Post. Retrieved September 6, 2019.
 "Congress Lifts Ban on Medical Marijuana for Nation's Capitol". Americans for Safe Access. December 13, 2009. Retrieved April 26, 2017.
 Slevin, Peter; Murphy, Caryle (November 4, 1998). "Marijuana Vote Results Kept Secret". The Washington Post. Retrieved April 26, 2017.
 "Democracy Held Hostage". ACLU. December 31, 2000. Archived from the original on January 14, 2006. Retrieved April 26, 2017.
 "Timeline of Initiative Events". Marijuana Policy Project. Archived from the original on September 18, 2008.
 Frates, Chris (March 27, 2007). "Bob Barr Flip-Flops on Pot". Politico. Retrieved February 19, 2017.
 Barr, Bob (October 11, 2008). "Federal Drug War Rethought". The Huffington Post. Retrieved February 19, 2017.
 Savage, David G.; Warren, Jennifer (December 31, 1996). "U.S. Threatens Penalties if Doctors Prescribe Pot". Los Angeles Times. Retrieved August 19, 2017.
 "Clinton Plan Attacks Medical Marijuana Initiatives, Targets Doctors". NORML. January 2, 1997. Retrieved May 7, 2017.
 "Obama Won't Seek to Arrest Medical Pot Users". Fox News. October 19, 2009. Archived from the original on June 27, 2016. Retrieved February 13, 2018.
 Sullum, Jacob (October 2011). "Bummer | Barack Obama turns out to be just another drug warrior". Reason. Retrieved May 7, 2017.
 "THIRD TIME THE CHARM? | State Laws on Medical Cannabis Distribution and Department of Justice Guidance on Enforcement" (PDF), Americans for Safe Access, November 25, 2013
 Dickinson, Tim (February 16, 2012). "Obama's War on Pot". Rolling Stone. Retrieved May 7, 2017.
 Angell, Tom (November 24, 2017). "Federal Medical Marijuana Amendment Author Dies At 79". Marijuana Moment. Retrieved November 24, 2017.
 Zilversmit, Marc (April 28, 2016). "Obama's Iran-Contra – The president is spending money that Congress has explicitly told him he can't spend". Slate. Retrieved September 16, 2017.
 Ingraham, Christopher (August 6, 2015). "How the Justice Department seems to have misled Congress on medical marijuana". The Washington Post. Retrieved September 20, 2017.
 Ingraham, Christopher (October 20, 2015). "Federal court tells the DEA to stop harassing medical marijuana providers". The Washington Post. Retrieved December 27, 2016.
 Ferner, Matt (August 16, 2016). "The Largest Federal Appeals Court Tells DOJ To Back Off State-Legal Medical Marijuana". The Huffington Post. Retrieved December 27, 2016.
 "Nixon Tapes Show Roots of Marijuana Prohibition: Misinformation, Culture Wars and Prejudice" (PDF), Common Sense for Drug Policy, March 2002
 Dufton, Emily (December 5, 2017). Grass Roots: The Rise and Fall and Rise of Marijuana in America. Basic Books. ISBN 978-0465096169.
 Anderson, Patrick (February 27, 1981). High In America: The True Story Behind NORML And The Politics Of Marijuana. The Viking Press. ISBN 978-0670119905.
 "History of marijuana on the ballot". Ballotpedia. Retrieved January 21, 2018.
 Sinclair, John (October 27, 2010). "Getting NORML | A brief history of the movement to legalize marijuana". Detroit Metro Times. Retrieved February 11, 2018.
 Brush, Mark (May 3, 2013). "Sorting out the confusion over local marijuana laws, Ann Arbor's experience". Michigan Radio. Retrieved February 24, 2018.
 Cullen, Sandy (April 10, 2007). "30 Years Later Madison Voters Passed A Law In April 1977 That Permits Possession Of Small Amounts Of Marijuana In Private Places". madison.com. Retrieved February 7, 2018.
 Lee, Martin A. (August 2012). Smoke Signals: A Social History of Marijuana – Medical, Recreational, and Scientific. New York: Scribner. ISBN 978-1439102602.
 Roberts, Chris (July 1, 2015). "SF's Dianne Feinstein: 'Worst Senator on Marijuana Reform'". SF Weekly. Retrieved February 24, 2018.
 Brandeis 2012, p. 175.
 Brandeis, Jason (2012). "The Continuing Vitality of Ravin v. State: Alaskans Still Have a Constitutional Right to Possess Marijuana in the Privacy of Their Homes". Alaska Law Review. 29 (2): 175–236.
 Edge, Megan; Andrews, Laurel (September 28, 2016). "Timeline: Notable moments in 40 years of Alaska's history with marijuana". Anchorage Daily News. Retrieved February 8, 2018.
 "Nevada Defelonizes Pot PossessionState Eliminates Jail, Criminal Record for Minor Offenders; Legalizes Medical Marijuana for Seriously Ill". NORML. June 7, 2001. Retrieved February 9, 2018.
 "Seattle Voters Approve Initiative Making Marijuana Enforcement City's "Lowest Priority"". NORML. September 18, 2003. Retrieved January 20, 2018.
 "Voters Nationwide Embrace Marijuana Law Reform Proposals". NORML. November 3, 2004. Retrieved January 20, 2018.
 "Denver Residents Legalize Marijuana Possession". Fox News. Associated Press. November 2, 2005. Retrieved January 20, 2018.
 "San Francisco Board of Supervisors Vote Overwhelmingly to Deprioritize Adult Marijuana Offenses; Now Officially Lowest Law Enforcement Priority". Drug Policy Alliance. November 14, 2006. Retrieved January 20, 2018.
 Abel, David (November 5, 2008). "Voters approve marijuana law change". The Boston Globe. Retrieved January 19, 2018.
 Armentano, Paul (July 5, 2011). "Connecticut: Marijuana Decriminalization Measure Is Now Law". NORML. Retrieved November 10, 2018.
 "Rhode Island: Marijuana Decriminalization Measure Signed Into Law". NORML. June 21, 2012. Retrieved January 19, 2018.
 Wing, Nick (June 6, 2013). "Vermont Marijuana Decriminalization Signed Into Law, Reduces Penalties For Possession Up To An Ounce". HuffPost. Retrieved February 9, 2018.
 Simpson, Ian (March 31, 2014). "Washington mayor signs marijuana decriminalization bill". Reuters. Retrieved November 10, 2014.
 Reilly, Molly (April 15, 2014). "Maryland Decriminalizes Marijuana Possession". HuffPost. Retrieved January 19, 2018.
 "Missouri Becomes 19th State To Decriminalize Marijuana Possession". Marijuana Policy Project. May 16, 2014. Retrieved January 19, 2018.
 Armento, Paul (December 22, 2014). "Pot Possession Decriminalized In US Virgin Islands". NORML. Retrieved January 19, 2018.
 Starkey, Jonathan (June 18, 2015). "Marijuana decriminalization bill OK'd in Delaware". USA Today. Retrieved January 19, 2018.
 Monique, Garcia (July 29, 2016). "Rauner reduces punishment for minor pot possession from jail to citation". Chicago Tribune. Retrieved January 19, 2018.
 Wilson, Reid (July 19, 2017). "NH governor signs marijuana decriminalization bill". The Hill. Retrieved January 19, 2018.
 Angell, Tom (April 4, 2019). "New Mexico Governor Signs Marijuana Decriminalization Bill". Forbes. Retrieved June 27, 2019.
 Jaeger, Kyle (May 9, 2019). "North Dakota Governor Signs Marijuana Decriminalization Bill". Marijuana Moment. Retrieved June 27, 2019.
 Angell, Tom (June 25, 2019). "Hawaii Marijuana Decriminalization Will Take Effect, Governor Says". Marijuana Moment. Retrieved June 27, 2019.
 Jaeger, Kyle (April 12, 2020). "Virginia Governor Approves Marijuana Decriminalization Bill". Marijuana Moment. Retrieved May 8, 2020.
 Rough, Lisa (September 14, 2017). "The Cole Memo: What Is It and What Does It Mean?". Leafly. Retrieved January 21, 2018.
 "Washington DC legalizes marijuana possession and use". BBC News. February 26, 2015. Retrieved February 26, 2015.
 Cummings, William (February 26, 2015). "Pot now legal in D.C. despite threats from Congress". USA Today. Retrieved February 26, 2015.
 "Tribe Bets on Legal Pot". US News. June 16, 2015. Archived from the original on August 1, 2015. Retrieved July 12, 2015.
 DOJ says Indian tribes can grow and sell marijuana, nwherald.com, December 12, 2014, retrieved December 24, 2014
 Wallace, Alicia (November 15, 2016). "A greener America: Marijuana's big statement in Election 2016". The Cannabist. Retrieved February 14, 2018.
 Zezima, Katie (January 24, 2018). "Vermont is the first state to legalize marijuana through legislature". The Washington Post. Retrieved February 14, 2018.
 Alicia Wallace (January 22, 2018), "Vermont Gov. Phil Scott signs marijuana legalization bill "with mixed emotions"", The Cannabist, The Denver Post
 Jaeger, Kyle (June 25, 2019). "Illinois Governor Signs Historic Marijuana Legalization Bill". Marijuana Moment. Retrieved October 27, 2019.
 Jaeger, Kyle (May 31, 2019). "Illinois Lawmakers Send Marijuana Legalization Bill To Governor's Desk". Marijuana Moment. Retrieved October 27, 2019.
 South Dakota judge rejects amendment legalizing marijuana
 Jaeger, Kyle (December 4, 2020). "House Approves Federal Marijuana Legalization Bill In Historic Vote". Marijuana Moment. Retrieved December 11, 2020.
 "Chairman Nadler Applauds Historic House Passage of H.R. 3884, the MORE Act" (Press release). Washington, D.C.: house.gov. December 4, 2020.
 Wu, Nicholas (December 4, 2020). "House of Representatives passes marijuana legalization bill". USA Today. Retrieved December 11, 2020.
 Governor signs Amendment 64, marijuana officially legal in Colorado
Further reading
Deitch, Robert (2003), Hemp: American history revisited: the plant with a divided history, Algora Pub, ISBN 978-0-87586-206-4
Holland, Julie M.D. (2010), The pot book : a complete guide to cannabis : its role in medicine, politics, science, and culture, Park Street Press, ISBN 978-1-59477-368-6
United States. Congress. Senate. (2013). Conflicts between State and Federal Marijuana Laws: Hearing before the Committee on the Judiciary, United States Senate, One Hundred Thirteenth Congress, First Session, Tuesday, September 10, 2013. Washington, DC: U.S. Government Publishing Office, 2015.




Background to later restrictions (late 19th century)

Excerpt from the New York Times, March 7, 1884
As early as 1853, recreational cannabis was listed as a "fashionable narcotic".[11] By the 1880s, oriental-style hashish parlors were flourishing alongside opium dens, to the point that one could be found in every major city on the east coast. It was estimated there were around 500 such establishments in New York City alone.[12]

An article in Harper's Magazine (1883), attributed to Harry Hubbell Kane, describes a hashish-house in New York frequented by a large clientele, including males and females of "the better classes," and further talks about parlors in Boston, Philadelphia and Chicago.[6] Hemp cigarettes were reported to be used by Mexican soldiers as early as 1874.[13]





Champagne Riots
https://en.wikipedia.org/wiki/Champagne_Riots
The Champagne Riots of 1910 and 1911 resulted from a series of problems faced by grape growers in the Champagne area of France. These included four years of disastrous crop losses, the infestation of the phylloxera louse (which destroyed 15,000 acres (6,100 ha) of vineyards that year alone), low income and the belief that wine merchants were using grapes from outside the Champagne region. The precipitating event may have been the announcement in 1908 by the French government that it would delimit by decree the exact geographic area that would be granted economic advantage and protection by being awarded the Champagne appellation. This early development of Appellation d'Origine Contrôlée regulation benefitted the Marne and Aisne districts to the significant exclusion of the Aube district which included the town of Troyes—the historic capital of the Champagne region.[1]


Contents
1	Relationship between growers and Champagne houses
2	Early discontent
3	Riots
4	Establishing the Champagne zone
5	Aftermath
6	See also
7	References
8	External links
Relationship between growers and Champagne houses
In the Champagne region, the production of Champagne is largely in the hands of producers who purchase grapes from independent growers. While some growers today produce wines under their own labels (known collectively as "grower Champagne"),[2] in the early 20th century the immense amount of capital needed to produce Champagne was beyond the reach of most growers. Champagne houses were able to bear the large risk of losing a considerable amount of product from exploding bottles as well as the cost of maintaining storage facilities for the long, labor-intensive process of making Champagne. This dynamic created a system that favored the Champagne houses as the only source of revenue for the vineyard owners. If the Champagne houses did not buy their grapes, a grower had little recourse or opportunity for another stream of income.[3]

Early discontent

The development of the French railway system in the 1850s provided easy access for Champagne houses to cheaper grapes outside the Champagne region.
The discontent that eventually led to the riots began during the 19th century. The early vintages of the 20th century were difficult, due to frost and rains severely reducing the crop yields. The phylloxera epidemic that ravaged vineyards across France began to affect Champagne. The harvests between 1902 and 1909 were further troubled by mold and mildew. The 1910 vintages was afflicted by hailstorms and flooding. Nearly 96% of the crop was lost.[citation needed] Champagne's growing popularity, as well as the lack of grape supply in Champagne, encouraged the Champagne houses to look outside the Champagne region for a cheaper supply of grapes.[4] Some producers began using grapes from Germany and Spain.[3] The French railway system made it easy for large quantities of grapes from the Loire Valley or Languedoc to be transported to Champagne at prices nearly half of what the houses were paying Champenois vine growers for their grapes. Newspapers published rumors of some houses buying rhubarb from England to make wine from. With few laws in place to protect the vine grower or the consumer, Champagne houses held most of the power in the region to profit from these faux Champagnes. The Champenois vine growers were incensed at these practices, believing that using "foreign" grapes to make sparkling wine was not producing true Champagne. They petitioned the government for assistance and a law was passed requiring that at least 51% of the grapes used to make Champagne needed to come from the Champagne region itself.[4]

Collusion was practised among various Champagne houses in order to drive down the prices of grapes to as a low as they would go, with the ever-present threat that if the houses could not get their grapes cheaply enough they will continue to source grapes from outside the region. With vineyard owners vastly outnumbering the producers, the Champagne houses used this dynamic of excess supply vs limited demand to their advantage. They hired operatives, known as commissionaires, to negotiate prices with vine growers. These commissionaires were paid according to how low a price they could negotiate, so many used tactics including violence and intimidation. Some commissionaires openly sought bribes, often in the form of extra grapes, from vine growers to which they would sell themselves for profit. The prices they were able to negotiate rarely covered the cost of farming and harvesting which left many Champenois vine growers in poverty. Champenois vineyard owners were being paid less for fewer grapes. Poverty was widespread.[4]

Riots

Ay, champagne house burned.

Soldiers in Épernay.
In January 1911, frustrations reached boiling point as riots erupted along the towns of Damery and Hautvilliers. Champenois vine growers intercepted trucks with grapes from the Loire Valley and pushed them into the Marne river. They then descended upon the warehouses of producers known to produce these faux Champagne, tossing more wine and barrels into the Marne. The owner of Achille Perrier found his house surrounded by an angry mob chanting "A bas les fraudeurs" (Down with cheaters). He was able to escape harm by hiding in the home of his concierge. The height of the violence was experienced in the village of Aÿ, located 3 miles (4.8 km) northeast of Épernay.[4] The history of Aÿ has been intimately connected with the pride and prestige of the Champagne region. In the 16th century, King Francis I was fond of calling himself the "Roi d' Aÿ et de Gonesse"—King of the lands where the country's greatest wines and flour were produced. Such was the reputation of the wines of Aÿ that they were known as the vins de France, their quality representing the whole of the country rather than just a region. Eventually the name of Aÿ became a shorthand term to refer to all the wines of the Champagne region. (Much like Bordeaux or Beaune is used today to refer to the wines of the Gironde and Burgundy regions, respectively).[5] As the mob descended upon the city little was spared. Homes of private citizens as well as Champagne house producers were pillaged and ransacked. Somewhere a fire was started that spread throughout the city. The regional governor sent an urgent telegraph to Paris requesting assistance stating "We are in a state of civil war!" By sunrise the entire village of Aÿ was burning.[4] To quell the violence, the French government sent over 40,000 troops to the region—setting up a billet in every village.[3]

Establishing the Champagne zone

The tension between producers in the Marne (highlighted top) and the Aube (to the south) was the source of further rioting as the geographical boundaries of the Champagne region was debated.
The relationship between the growers and Champagne producers was not the only source of tension. Within the Champagne region itself there was civil discontent among neighbors as to what truly represented "Champagne". The French Government tried to answer the vine growers concerns by passing legislation defining where Champagne wine was to come from. This early legislation dictated that the Marne department and a few villages from the Aisne department were the only areas approved to grow grapes for Champagne production. The glaring exclusion of the Aube region, where Troyes, the historic capital of Champagne, is located, promoted further discontent as the Aubois protested the decision. The Aube, located south of the Marne, was closer to the Burgundy region in terms of soil and location. The growers of the Marne viewed the region as "foreign" and not capable of producing true Champagne but the Aubois viewed themselves as Champenois and clung to their historical roots.[4]

Protest erupted from growers in the Aube district as they sought to be reinstated as part of the Champagne region. The government, trying to avoid any further violence and disruption, sought a "compromise solution" by designating the department as a second zone within the Champagne appellation. This provoked the growers in the Marne region to react violently to their loss of privilege and they lashed out again against merchants and producers who they accused of making wine from "foreign grapes"—including those from the Aube. Thousands of wine growers burned vineyards, destroyed the cellars of wine merchants, and ransacked houses as hundreds of liters of wine were lost.[6] The government was once again going back to the drawing-board in search of a solution to end the violence and appease all parties. Negotiations among vine growers, producers and government officials was ongoing when World War I broke out and the region saw all parties united in defense of country and the Champagne region.[4]

Aftermath
Following the riots, the French government worked with a collaboration of vineyard owners and Champagne houses to delineate an Appellation d'Origine Contrôlée for the Champagne region. Only wines produced from grapes grown within the geographical boundaries (that included the Marne, Aube and parts of the Aisne departments) could be entitled to the name Champagne. Eventually these principles were enshrined by the European Union with Protected Designation of Origin (PDO) status. To deal with the problem of collusion among Champagne houses and fairness in pricing, a classification system of Champagne's villages set up a price structure for the grapes.[7] Villages were rated on a numerical 80-100 scale based on the potential quality (and value) of their grapes. The price for a kilogram of grapes was set and vineyards owners would receive a fraction of that price depending on the village rating where they were located. Vineyards in Grand crus villages would receive 100% of the price while Premier crus village with a 95 rating would receive 95% of the price and so forth down the line. Today the business dynamic between Champagne houses and vineyards owners is not so strictly regulated but the classification system still serves as an aid in determining prices with Grand and Premier crus vineyards receiving considerably more for their grapes than vineyards in villages with ratings below 90%.[8]






Marihuana Tax Act of 1937
https://en.wikipedia.org/wiki/Marihuana_Tax_Act_of_1937
The Marihuana Tax Act of 1937, Pub.L. 75–238, 50 Stat. 551, enacted August 2, 1937, was a United States Act that placed a tax on the sale of cannabis. The H.R. 6385 act was drafted by Harry Anslinger and introduced by Rep. Robert L. Doughton of North Carolina, on April 14, 1937. The Seventy-fifth United States Congress held hearings on April 27, 28, 29th, 30th, and May 4, 1937. Upon the congressional hearings confirmation, the H.R. 6385 act was redrafted as H.R. 6906 and introduced with House Report 792. The Act is now commonly referred to, using the modern spelling, as the 1937 Marijuana Tax Act. This act was overturned in 1969 in Leary v. United States, and was repealed by Congress the next year.[1]


Contents
1	Background
2	Operation of the act
3	Etymology
4	The La Guardia Committee Report
5	See also
6	References
7	Further reading
8	External links
Background
Regulations and restrictions on the sale of cannabis sativa as a drug began as early as 1906 (see Legal history of cannabis in the United States). The head of the Federal Bureau of Narcotics (FBN), Harry J. Anslinger, alleged, in the 1930s, the FBN had an increase of reports of people using marijuana.[2] He had also, in 1935, support from president Franklin D. Roosevelt for adoption of the Uniform State Narcotic Act, state laws included regulations of cannabis.[3]

The total production of hemp fiber in the United States in 1933 decreased to around 500 tons per year. Cultivation of hemp began to increase in 1934 and 1935, but production remained low compared with other fibers.[4][5][6]


Hemp, bast with fibers. The stem, which can become hemp hurds, in the middle.
S Interested parties note the aim of the Act was to reduce the hemp industry through excessive taxation[7][8][9] largely as an effort of businessmen Andrew Mellon, Randolph Hearst, and the Du Pont family.[7][9] The same parties argue with the invention of the decorticator, hemp was an economical replacement for paper pulp in the newspaper industry.[7][10] Newspaper magnate William Randolph Hearst realized cheap, sustainable, and easily-grown hemp threatened his extensive timber holdings. Mellon, Secretary of the Treasury and the wealthiest man in the US, invested heavily in the Du Pont family's new synthetic fiber, nylon, to compete with hemp.[7] 1916, United States Department of Agriculture (USDA) chief scientists Jason L. Merrill and Lyster H. Dewey created a paper, USDA Bulletin No. 404 "Hemp Hurds as Paper-Making Material", in which they concluded this paper from the woody inner portion of the hemp stem broken into pieces, the 'hemp hurds', was "favorable in comparison with those used with pulp wood".[11] Dewey and Merrill believed hemp hurds were a sustainable source for paper production. The concentration of cellulose in hemp hurds is generally around 35%.[12] Manufacture of paper -- on equipment designed to use wood-pulp -- with hemp as a raw material shows hemp lacks the qualities needed to become a major competitor to the traditional paper industry. 2003, 95% of the hemp hurds in the EU were used for animal bedding, almost 5% were used as building material.[13] Spokes-models from DuPont and many industrial titans dispute a link between their government minions promoting petroleum-based nylon over sustainable hemp. They complain the purpose of developing nylon was to produce a fiber competitive with silk and rayon.[14][15][16]

The American Medical Association (AMA) opposed the taxation because the tax was imposed on physicians prescribing cannabis, retail pharmacists selling cannabis, and medical cannabis cultivation/manufacturing. The AMA proposed cannabis instead be added to the Harrison Narcotics Tax Act.[17] The taxation 'law' was passed despite objections of the American Medical Association. Dr. William Creighton Woodward, legislative counsel for the AMA, objected to the taxation on the grounds the bill was written by Du Pont lawyers without the legally-binding time to prepare their opposition to the bill.[18] He doubted their claims about marijuana addiction, violence, and overdosage; he further asserted because the word Spanish word Marijuana was largely unknown at the time, the medical profession did not realize they were losing cannabis. "Marijuana is not the correct term ... Yet the burden of this bill is placed heavily on the doctors and pharmacists of this country."[18]

After hearings with lawyers from Du Pont Chemicals and the Hearst Newspapers Group, the taxation was passed on the grounds of 'differing' reports[19] and hearings.[20] Anslinger also referred to the International Opium Convention from 1928 included cannabis as a drug not a medicine. Proving the power of 'influential' friends, all state legislators approved identical 'laws' against improper use of cannabis (for ex. the Uniform State Narcotic Act). By 1951, however, spokes-models from Du Pont, Hearst et all came up with new improved rationalizations, and the Boggs Act superseded the Marihuana Taxation Act of 1937.[citation needed] In August 1954, the Internal Revenue Code of 1954 was enacted, and the Marihuana Taxation Act was included in Subchapter A of Chapter 39 of the 1954 Code.

Operation of the act

Overprint marijuana revenue stamps from 1937
Shortly after the 1937 Marihuana Tax Act went into effect on October 1, 1937, the Federal Bureau of Narcotics and Denver City police arrested Moses Baca for possession and Samuel Caldwell for dealing. Baca and Caldwell's arrest made them the first marijuana convictions under U.S. federal law for not paying the marijuana tax. Judge Foster Symes sentenced Baca to 18 months and Caldwell to four years in Leavenworth Penitentiary for violating the 1937 Marihuana Tax Act.

After the Philippines fell to Japanese forces in 1942, the Department of Agriculture and the US Army urged farmers to grow fiber hemp. Tax stamps for cultivation of fiber hemp began to be issued to farmers. Without any change in the Marihuana Tax Act, 400,000 acres (1,600 km2) were cultivated with hemp between 1942 and 1945. The last commercial hemp fields were planted in Wisconsin in 1957.[21]

In 1967, President Johnson's Commission on Law Enforcement and Administration of Justice opined, "The Act raises an insignificant amount of revenue and exposes an insignificant number of marijuana transactions to public view, since only a handful of people are registered under the Act. It has become, in effect, solely a criminal law, imposing sanctions upon persons who sell, acquire, or possess marijuana."[22]

In 1969 in Leary v. United States, part of the Act was ruled to be unconstitutional as a violation of the Fifth Amendment, since a person seeking the tax stamp would have to incriminate him/herself.[23][24] In response the Congress passed the Controlled Substances Act as Title II of the Comprehensive Drug Abuse Prevention and Control Act of 1970,[25] which repealed the 1937 Act.

Etymology
Main article: Marijuana (word)
Although the spelling "marijuana" is common in current use, the spelling used in the Marihuana Taxation Act is "marihuana". "Marihuana" was the spelling used in Federal documents at the time.

In addition, the Marihuana Tax Act of 1937 legitimized the use of the term "marijuana" as a label for hemp and cannabis plants and products in the US and around the world. Prior to 1937, "marijuana" was slang; it was not included in any official dictionaries.[26] The word marijuana is probably of Mexican origin. Mexico passed prohibition for export to the US in 1925 following the International Opium Convention.[27] In the years leading up to the taxation act, it was in common use in the United States, "smoked like tobacco", and called "ganjah", or "ganja".[28][29]

The La Guardia Committee Report
The only authoritative voice that opposed Anslinger's campaign against cannabis was that of New York Mayor, Fiorello La Guardia, who appointed in 1938 a commission of investigation, and in 1944 strongly objected to Anslinger's campaign with the La Guardia Committee.[30]

See also
Legal history of cannabis in the United States
Hemp for Victory (1942) a United States Department of Agriculture war-time film encouraging farmers to grow hemp suitable for U.S. Navy hawser requirements.
Reefer Madness, propagandistic film of 1936.
La Guardia Committee, the first in depth study into the effects of smoking marijuana.
References
 For repeal, see section 1101(b)(3), Comprehensive Drug Abuse Prevention and Control Act of 1970, Pub. L. No. 91-513, 84 Stat. 1236, 1292 (Oct. 27, 1970) (repealing the Marihuana Tax Act which had been codified in Subchapter A of Chapter 39 of the Internal Revenue Code of 1954).
 Harry J. Anslinger, U. S. Commissioner of Narcotics and Will Oursler : The Murderers, the story of the narcotic gangs, Pages: 541-554, 1961
 ROOSEVELT ASKS NARCOTIC WAR AID, 1935
 David P. West: Fiber Wars: The Extinction of Kentucky Hemp chapter 8
 STATEMENT OF DR. A. H. WRIGHT, 1938
 H.T. NUGENT: COMMERCIALIZED HEMP (1934-35 CROP) in the STATE OF MINNESOTA
 French, Laurence; Magdaleno Manzanárez (2004). NAFTA & neocolonialism: comparative criminal, human & social justice. University Press of America. p. 129. ISBN 978-0-7618-2890-7.
 Mitchell Earlywine (2005). Understanding marijuana: a new look at the scientific evidence. Oxford University Press. p. 24. ISBN 978-0-19-518295-8.
 Peet, Preston (2004). Under the influence: the disinformation guide to drugs. The Disinformation Company. p. 55. ISBN 978-1-932857-00-9.
 Sterling Evans (2007). Bound in twine: the history and ecology of the henequen-wheat complex for Mexico and the American and Canadian Plains, 1880-1950. Texas A&M University Press. p. 27. ISBN 978-1-58544-596-7.
 Lyster H. Dewey and Jason L. Merrill Hemp Hurds as Paper-Making Material USDA Bulletin No. 404, Washington, D.C., October 14, 1916, p.25
 "Hayo M.G. van der Werf : Hemp facts and hemp fiction". Hempfood.com. Archived from the original on 2011-07-11. Retrieved 2011-04-20.
 "Michael Karus: European Hemp Industry 2002 Cultivation, Processing and Product Lines. Journal of Industrial Hemp Volume 9 Issue 2 2004, Taylor & Francis, London". Informaworld.com.
 Prof. L. Trossarelli: -the history of nylon, Prof. L. Trossarelli
 Wolfe, Audra J. (2008). "Nylon: A Revolution in Textiles". Chemical Heritage Magazine. 26 (3). Retrieved 20 March 2018.
 American Chemical Society: THE FIRST NYLON PLANT. 1995
 "Statement of Dr. William C. Woodward, Legislative Counsel, American Medical Association". Retrieved 2006-03-25.
 Committee on Finance, U.S. Senate, 75c 2s. HR6906. Library of Congress transcript. July 12, 1937
 The Marijuana Tax Act, Reports
 The Marijuana Tax Act
 David P. West:Hemp and Marijuana:Myths & Realities
 Balancing the Grass Account
 Timothy Leary v. United States, 395 U.S. 6, 89 S. Ct. 1532 (1969)
 Kriho, Laura (2013-10-31). "Marihuana Tax Act of 1937 rises from the dead - Boulder Weekly". Retrieved 2016-09-11.
 Pub.L. 91–513, 84 Stat. 1236, enacted October 27, 1970
 Webster's New International Dictionary, p. 1318, G. & C. Merriam Company (1921).
 "MEXICO BANS MARIHUANA.; To Stamp Out Drug Plant Which Crazes Its Addicts". New York Times. New York City. December 29, 1925.
 The American Agriculturist Family Cyclopaedia, 751 Broadway, New York, copyright:1888, by A. L. Burt
 Webster's New International Dictionary, 1921, published by G.& C. Merriam Co., Springfield Massachusetts
 The La Guardia Committee Report






Reefer Madness
https://en.wikipedia.org/wiki/Reefer_Madness
This article is about the 1936 film. For other uses, see Reefer Madness (disambiguation).
Reefer Madness
Reefer Madness (1936).jpg
1972 theatrical release poster
Directed by	Louis J. Gasnier
Produced by	
George Hirliman (1936 film)
Dwain Esper (1938–39 release)
Screenplay by	Arthur Hoerl
Story by	Lawrence Meade
Starring	
Dorothy Short
Kenneth Craig
Lillian Miles
Dave O'Brien
Thelma White
Warren McCollum
Carleton Young
Cinematography	Jack Greenhalgh
Edited by	Carl Pierson
Production
company	
G&H Productions
Distributed by	Motion Picture Ventures
Release date	1936, 1938[1][2] or 1939[3][4]
Running time	68 minutes
Country	United States
Language	English
Budget	$100,000
($1,843,000) 2019 $US
Reefer Madness (originally made as Tell Your Children and sometimes titled as The Burning Question, Dope Addict, Doped Youth, and Love Madness) is a 1936 American propaganda film about drugs revolving around the melodramatic events that ensue when high school students are lured by pushers to try marijuana—from a hit and run accident, to manslaughter, suicide, conspiracy to murder, attempted rape, hallucinations, and descent into madness from marijuana addiction. The film was directed by Louis J. Gasnier and featured a cast of mainly little-known actors.

Originally financed by a church group under the title Tell Your Children, the film was intended to be shown to parents as a morality tale attempting to teach them about the dangers of cannabis use. It is notable for being one of the few times in Hollywood where the generation gap between the Lost Generation and the Greatest Generation is portrayed.[5] Soon after the film was shot, it was purchased by producer Dwain Esper, who re-cut the film for distribution on the exploitation film circuit, exploiting vulgar interest while escaping censorship under the guise of moral guidance, beginning in 1938–1939 through the 1940s and 1950s.[5]

The film was "rediscovered" in the early 1970s and gained new life as an unintentional satire among advocates of cannabis policy reform.[5][6] Critics have called it one of the worst films ever made.[7][8] Today, it is in the public domain in the United States.[6]


Contents
1	Plot
2	Cast
3	Production and history
4	Reception
5	Adaptations
6	See also
7	References
8	External links
Plot
Mae Coleman and Jack Perry are a cohabitating couple who sell marijuana. The unscrupulous Jack sells the drug to teenagers over Mae's objections; she'd rather stick to an adult clientele. Ralph Wiley, a sociopathic college-dropout-turned-dealer, and siren Blanche help Jack recruit new customers. Ralph and Jack lure high school student Bill Harper and college student Jimmy Lane to Mae and Jack's apartment. Jimmy takes Bill to a party where Jack runs out of reefer and Jimmy, who has a car, drives him to pick up more. When they get to Jack's boss' "headquarters", Jimmy asks for a cigarette as Jack gets out and he gives him a joint. By the time Jack returns, Jimmy is unknowingly high; he drives away recklessly and hits a pedestrian. A few days later, Jack tells Jimmy that the man died of his injuries and agrees to keep Jimmy's name out of the case—if Jimmy will agree to "forget he was ever in Mae's apartment." As the police did not have enough specific details to track Jimmy down, he indeed escapes punishment.


Ralph is arrested for Jack's murder.
Bill, whose once-pristine record at school has rapidly declined, has a fling with Blanche while high. Mary, Jimmy's sister and Bill's girlfriend, goes to Mae's apartment looking for Jimmy and accepts a joint from Ralph, thinking it's a regular cigarette. When she refuses Ralph's advances, he tries to rape her. Bill comes out of the bedroom and, still high, hallucinates that Mary is willingly offering herself to Ralph and attacks the latter. As the two are fighting, Jack knocks Bill unconscious with the butt of his gun, which inadvertently fires, killing Mary. Jack puts the gun in Bill's hand, framing him for Mary's death by claiming he blacked out. The dealers lie low for a while in Blanche's apartment while Bill's trial takes place. Over the objections of a skeptical juror, Bill is found guilty.

By now Ralph is paranoid from both marijuana and his guilty conscience. Blanche is also high; at one memorable point she plays the piano more and more rapidly as Ralph eggs her on. The boss tells Jack to shoot Ralph to prevent him from confessing, but when Jack arrives, Ralph immediately recognizes the threat and beats him to death with a stick as Blanche laughs uncontrollably in terror. The police arrest Ralph, Mae, and Blanche. Mae's confession leads to the boss and other gang members also being arrested. Blanche explains that Bill was innocent and agrees to serve as a material witness for the case against Ralph, but instead, she jumps out of a window and falls to her death, traumatized by her own adultery and its role in Mary's death. Bill's conviction is overturned, and Ralph, now nearly catatonic, is sent to an asylum for the criminally insane for the rest of his natural life.

The film's story is told in bracketing sequences at a lecture given at a parent-teacher association meeting by high school principal Dr. Alfred Carroll. At the film's end he tells the parents he has been told that events similar to those he has described are likely to happen again, then points to random parents in the audience and warns that "the next tragedy may be that of your daughter... or your son... or yours or yours..." before pointing straight at the camera and saying emphatically "... or yours!" as the words "TELL YOUR CHILDREN" appear on the screen.

Cast
File:Reefer Madness.webm
Reefer Madness
File:Reefer madness1938.webm
Reefer Madness, 1938 release
Dorothy Short as Mary Lane
Kenneth Craig as Bill Harper
Lillian Miles as Blanche
Dave O'Brien as Ralph Wiley
Thelma White as Mae Coleman
Carleton Young as Jack Perry
Warren McCollum as Jimmy Lane
Pat Royale as Agnes
Josef Forte as Dr. Alfred Carroll
Harry Harvey Jr. as Junior Harper
Richard Alexander as Pete Daly, Pusher (uncredited)
Lester Dorr as Joe - Bartender (uncredited)
Edward LeSaint as The Judge (uncredited)
Forrest Taylor as Blanche's Lawyer (uncredited)
Production and history

"If you want a good smoke, try one of these."
In 1936 or 1938,[9] Tell Your Children was financed and made by a church group and intended to be shown to parents as a morality tale attempting to teach them about the dangers of cannabis use.[5][6][10] It was originally produced by George Hirliman;[11] however, some time after the film was made, it was purchased by exploitation filmmaker Dwain Esper, who inserted salacious shots.[5] In 1938[1][2] or 1939,[3][4] Esper began distributing it on the exploitation circuit[5] where it was originally released in at least four territories, each with their own title for the film:[12] the first territory to screen it was the South, where it went by Tell Your Children (1938 or 1939).[13] West of Denver, Colorado, the film was generally known as Doped Youth (1940).[13] In New England, it was known as Reefer Madness (1940[13] or 1947),[9] while in the Pennsylvania/West Virginia territory it was called The Burning Question (1940).[12][13] The film was then screened all over the country during the 1940s under these various titles and Albert Dezel of Detroit eventually bought all rights in 1951 for use in roadshow screenings throughout the 1950s.[13]

Such education-exploitation films were common in the years following adoption of the stricter version of the Production Code in 1934. Other films included Esper's own earlier Marihuana (1936) and Elmer Clifton's Assassin of Youth (1937) and the subject of cannabis was particularly popular in the hysteria surrounding Anslinger's 1937 Marihuana Tax Act.[citation needed]

The concept of after-market films in film distribution had not yet been developed, especially for films that existed outside the confines of the studio system, and were therefore considered "forbidden fruit." For this reason, neither Esper nor original producer George Hirliman bothered to protect the film's copyright; it thus had an improper copyright notice invalidating the copyright.[14] Over 30 years later, in the spring of 1972, the founder of NORML, Keith Stroup, found a copy of the film in the Library of Congress archives and bought a print for $297.[15][16] As part of a fundraising campaign, NORML showed Reefer Madness on college campuses up and down California, asking a $1 donation for admission and raising $16,000 toward support for the California Marijuana Initiative, a political group that sought to legalize marijuana in the 1972 fall elections.[16] Robert Shaye of New Line Cinema eventually heard about the underground hit and went to see it at the Bleecker Street Cinema.[14] He noticed the film carried an improper copyright notice and realized it was in the public domain.[14] Seeking material for New Line's college circuit, he was able to obtain an original copy from a collector and began distributing the film nationally, "making a small fortune for New Line."[14]

Reception
[icon]	
This section needs expansion. You can help by adding to it. (October 2017)
Reefer Madness is considered to be a cult classic and one of the most popular examples of a midnight movie. Its fans enjoy the film for the same unintentionally campy production values that made it a hit in the 1970s.[6]

The review aggregation website Rotten Tomatoes reported a 39% approval rating with an average rating of 4.4/10 based on 26 reviews.[17] However, Metacritic assigned a score of 70 out of 100, based on 4 critics, indicating "generally favorable reviews".[18]

The Los Angeles Times has claimed that Reefer Madness was the first film that a generation embraced as "the worst."[8] Leonard Maltin has called it "the granddaddy of all 'Worst' movies."[19] Las Vegas CityLife named it the "worst ever" runner-up to Plan 9 from Outer Space,[20] and AMC described it as "one of the worst movies ever made."[21]

Adaptations
Sean Abley's stage adaptation, Reefer Madness, ran for a year in Chicago in 1992, and had one showing in 1993 as well.[22]

American rock band Mötley Crüe featured a couple of clips from the film in the video for their song "Smoke the Sky" from their self-titled 1994 album. The song’s lyrics deal with marijuana use.

The film was spoofed in the 1998 musical Reefer Madness (1998), which was later made into the television film Reefer Madness (2005) featuring actors Alan Cumming, Kristen Bell, Christian Campbell and Ana Gasteyer.


A scene from the colorized version of the film.
In 2004, 20th Century Fox, in collaboration with Legend Films, released a colorized version on DVD.[23] The original release date was April 20, 2004, a reference to the drug slang term "420". Also during the film, the number "4" and then "20" is flashed very quickly (as a joke on subliminal messages), which is an effect added by Legend Films. It features intentionally unrealistic color schemes that add to the film's campy humor. The smoke from the "marihuana" was made to appear green, blue, orange and purple, each person's colored smoke representing their mood and the different "levels of 'addiction'".[10] The DVD also included a short film called Grandpa's Marijuana Handbook; a new trailer for Reefer Madness produced by Legend Films; and two audio commentaries: one discussing the color design and the other being a comedic commentary by Michael J. Nelson of Mystery Science Theater 3000 fame.

Legend owns the copyright to the colorized version. While most have praised it for its campy treatment of the cult film, some viewers claimed that the color choices would better suit a film about LSD than a film about cannabis.[24]

In 2013, Nova Scotia based Lions Den Theatre presented a new adaptation of Reefer Madness at Halifax' The Bus Stop Theatre. Keith Morrison adapted the script and directed the production. An updated audio version of the play was uploaded to the company's YouTube channel in May 2020.

See also
Hemp for Victory
List of films considered the worst
List of films in the public domain in the United States
Perversion for Profit
Sex Madness
How to Undress in Front of Your Husband





Portal:Cannabis
https://en.wikipedia.org/wiki/Portal:Cannabis

subcategories click on the [►]
Cannabis
Cannabis by country
Cannabis by year
Cannabis activism
Cannabinoids
Cannabis cultivation
Cannabis culture
Cannabis and health
Hemp
History of cannabis
Cannabis industry
Cannabis-related lists
Medicinal use of cannabis
Cannabis and the military
Cannabis organizations
People involved in cannabis
Cannabis politics
Preparations of cannabis
Cannabis prohibition
Cannabis and religion
Cannabis research
Cannabis smoking
Cannabis trafficking
Works about cannabis
Cannabis stubs







Income elasticity of demand
https://en.wikipedia.org/wiki/Income_elasticity_of_demand
In economics, the income elasticity of demand is the responsivenesses of the quantity demanded for a good to a change in consumer income. It is measured as the ratio of the percentage change in quantity demanded to the percentage change in income. If a 10% increase in Mr. Ruskin Smith's income causes him to buy 20% more bacon, Smith's income elasticity of demand for bacon is 20%/10% = 2.


Contents
1	Interpretation
2	Mathematical definition
3	Types of income elasticity of demand
4	Selected income elasticities
5	See also
6	Notes
7	References
Interpretation

Inferior goods' demand QX falls as consumer income I increases.
A negative income elasticity of demand is associated with inferior goods; an increase in income will lead to a fall in the demand and may lead to changes to more luxurious substitutes.
A positive income elasticity of demand is associated with normal goods; an increase in income will lead to a rise in demand. If income elasticity of demand of a commodity is less than 1, it is a necessity good. If the elasticity of demand is greater than 1, it is a luxury good or a superior good.
A zero income elasticity of demand occurs when an increase in income is not associated with a change in the demand of a good.
Income elasticity of demand can be used as an indicator of future consumption patterns and as a guide to firms' investment decisions. For example, the "selected income elasticities" below suggest that an increasing portion of consumers' budgets will be devoted to purchasing automobiles and restaurant meals and a smaller share to tobacco and margarine.[1]

Income elasticities are closely related to the population income distribution and the fraction of the product's sales attributable to buyers from different income brackets. Specifically, when a buyer in a certain income bracket experiences an income increase, their purchase of a product changes to match that of individuals in their new income bracket. If the income share elasticity is defined as the negative percentage change in individuals given a percentage increase in income bracken the income-elasticity, after some computation, becomes the expected value of the income-share elasticity with respect to the income distribution of purchasers of the product. When the income distribution is described by a gamma distribution, the income elasticity is proportional to the percentage difference between the average income of the product's buyers and the average income of the population.[2]

Mathematical definition
{\displaystyle \epsilon _{d}={\frac {\%\ {\mbox{change in quantity demanded}}}{\%\ {\mbox{change in income}}}}}{\displaystyle \epsilon _{d}={\frac {\%\ {\mbox{change in quantity demanded}}}{\%\ {\mbox{change in income}}}}}
More formally, the income elasticity of demand, {\displaystyle \ \epsilon _{d}}\ \epsilon _{d}, for a given Marshallian demand function {\displaystyle Q(I,{\vec {P}}),}{\displaystyle Q(I,{\vec {P}}),} with arguments income and a vector of prices of all goods, for arbitrarily small changes in price and quantity of a good is

{\displaystyle \epsilon _{d}={\frac {\partial Q}{\partial I}}{\frac {I}{Q}}}{\displaystyle \epsilon _{d}={\frac {\partial Q}{\partial I}}{\frac {I}{Q}}}
This can be rewritten in the form

{\displaystyle \epsilon _{d}={\frac {d\ln Q}{d\ln I}}}\epsilon _{d}={\frac  {d\ln Q}{d\ln I}}
For discrete changes the elasticity is

{\displaystyle \epsilon _{d}={\Delta Q \over \Delta I}\times {(I_{1}+I_{2})/2 \over (Q_{1}+Q_{2})/2}={\Delta Q \over \Delta I}\times {I_{1}+I_{2} \over Q_{1}+Q_{2}},}{\displaystyle \epsilon _{d}={\Delta Q \over \Delta I}\times {(I_{1}+I_{2})/2 \over (Q_{1}+Q_{2})/2}={\Delta Q \over \Delta I}\times {I_{1}+I_{2} \over Q_{1}+Q_{2}},}
where subscripts 1 and 2 refer respectively to values before and after the change.

Necessity goods have an income elasticity of demand between zero and one: expenditure on these goods increases with income, but not as fast as income does, so the proportion of expenditure on these goods falls as income rises. This observation for food is known as Engel's law.

Types of income elasticity of demand
There are five possible income demand curves:[citation needed]

High-income elasticity of demand:
In this case, an increase in income is accompanied by a relatively larger increase in quantity demanded.

Unitary income elasticity of demand:
In this case, an increase in income is accompanied by the same proportionate increase in quantity demanded.

Low-income elasticity of demand:
In this case, an increase in income is accompanied by a less than proportionate increase in quantity demanded.

Zero income elasticity of demand:
In this case, the quantity bought is constant regardless of changes in income.

Negative income elasticity of demand:
In this case, an increase in income is accompanied by a decrease in quantity demanded.

Selected income elasticities
Automobiles 2.98[3]
Books 1.44
A person's own life (also called "value of statistical life") 0.50 to 0.60[4]
Restaurant meals 1.40
Tobacco 0.42[5]
Margarine −0.20
Public transportation −0.36[6]
Water demand 0.15 [7]
See also
cross elasticity of demand (XED)
price elasticity of demand (PED)
price elasticity of supply (PES)


https://www.wsj.com/articles/why-the-government-puts-a-dollar-value-on-life-1458911310








Corp. U.S. Mythology
https://www.teamlaw.org/Mythology-CorpUS.htm






Anarchist law
https://en.wikipedia.org/wiki/Anarchist_law
Anarchist law is a body of norms regarding behavior and decision-making that might be operative in an anarchist community. The term is used in a series of ongoing debates within the various branches of anarchist theory regarding if and how norms of individual and/or collective behavior, decision-making and actions should be created and enforced. Although many anarchists would consider "anarchist law" simply synonymous with natural law, others contend law in anarchy would have additional, unique elements. Over the course of the last two hundred years as anarchism has grown and evolved to include diverse strains, there have been different conceptions of "anarchist law" produced and discussed, or used in practice by anarchist networks such as Peoples' Global Action[1] or Indymedia.[2]


Contents
1	Non-coercion
2	Consensus-based social contracts
3	Free association
4	Mutual aid
5	Enforceability
6	Decision-making
7	Examples
8	See also
9	References
10	Further reading
11	External links
Non-coercion
The most fundamental maxim of many anarchist tendencies is that no individual has the right to coerce another individual. Including the state, capitalism, or systematic oppression and that everyone has the right to defend his or her self against coercion (the non-aggression principle or zero aggression principle). This basic principle, like mutual aid, is built upon much of anarchist law, and indeed much of anarchist theory. Peter Kropotkin, a prominent anarcho-communist, stated it was "It is best summed up by the maxim 'do unto others as you would have them do unto you.'" In short, anarchist philosophy includes the "Ethic of reciprocity", but typically does not include "turning the other cheek" towards violence of forms of oppression (with the exception of Anarcho pacifism and sometimes Christian anarchism and other nonviolent/pacifistic movements).[3]

Consensus-based social contracts
See also: Consensus democracy
Since the principle of non-coercion makes hierarchical state structures unfeasible, anarchist communities must find an alternative basis for setting the rules of engagement within a collective. Accordingly, virtually all anarchist legal models begin with the assumption that whatever rules are set in place must be freely agreed to by the entirety of the community that is to be governed by them in a setting free from coercion or intimidation. Such freely given consent constitutes a social contract, though the exact nature of such contracts is a matter of heated debate.[4][page needed]

Some anarchist legal theorists hold that an ideal anarchist society should be based strictly on natural law and mutual aid, which require no social contract.[5]

However, many anarchist theorists completely reject natural law as capitalistic and man made. Natural law in this view is disguising authoritarianism but blaming it on an abstract entity so that the "anarchist" does not have to take credit for it. Social anarchists, mutualists and many individualist anarchists reject private property, which is the core basis of most natural law theories.[6]

Free association
Free association (also called voluntary association) also implies the right of individuals to form those exact social contracts. This freedom to not associate means if the terms of a social contract become unacceptable to an individual member or sub-group(s) within a society, the discontented have the right to secede from the contract. They may also form new associations with others that more closely fit their needs.[7]

Mutual aid
The principle of mutual aid, originally identified by Peter Kropotkin as arising from natural law, is that since evolution occurs in groups – not individuals – it is evolutionarily advantageous for members of a community to assist each other. The anarchist approach to building power – and structuring power relationships – is derived from this evolutionary and biological imperative. In a nutshell the argument is that since individuals require the assistance of groups to self-actualize, individuals have a strong self-interest in the good of the community to which they belong. It follows that (freely associating) collectives of individuals working for mutual improvement and mutual goals must form the basis of any anarchist society, thus providing the sociological and economic imperative for the creation of social contracts capable of binding these self-selecting groups together.[8]

In a pre-revolutionary situation, the principle of "mutual aid" is the moral imperative that drives efforts by contemporary anarchists to provide material aid to victims of natural disasters;[9] those that are homeless or poor, and others who have been left without access to food or clean drinking water, or other basic necessities.

Enforceability
Enforceability is one of the most controversial areas of Anarchist law. Early writers such as Proudhon argued that it was legitimate for working-class people to self-organize against criminals who prey on the weak, a process which would unequivocally entail some degree of coercion.[10]

Proudhonian mutualists (and many others) have argued that such use of force by a collective against individuals is justifiable since it is fundamentally defensive in nature. As a more coherent example, communities have a clear interest in tracking down and isolating rapists, murderers, robbers and others who regularly employ coercion against their victims. The right of ordinary people to not be victimized and coerced by such individuals legitimizes their use of coercive force to eliminate such threats. Some individualist anarchists (who argue that any collective action against an individual is illegitimate) hotly dispute this point.[citation needed]

The issue of mandate (on whose behalf an action is being carried out) is much more significant, however, when approaching larger-scale provisions for self-defense such as armies and militias. For individualist anarchists the right of individuals to not be coerced legitimizes the use of coercive violence for personal self-defense only, while for collectivists it is legitimized both for personal self-defense and for defense of ones community. This issue is critical since, while the individualist model makes warfare far less likely by eliminating the rationale for the creation of large bodies of armed men, the collectivist approach makes it much more likely that the community in question will be able to defend itself against a hostile invader should one appear.[citation needed]

Both schools, however, agree that the right and responsibility of self-defense cannot be delegated to a third party – such as a professional police department or standing army – since as soon as a third party becomes involved it is no longer self defense.[citation needed] A non-hierarchical militia composed of members of a community self-organizing for mutual self-defense against a hostile neighbor (such as that organized by the CNT during the Spanish Civil War) would thus be valid in a collectivist (anarchist-communist, social anarchist, anarcho-syndicalist, market-syndicalist, etc.) setting and deemed invalid in an individualist (free market anarchist, egoist, etc.) setting if involuntary. Both, by contrast, would reject a standing army or police department.[citation needed]

Decision-making
Common techniques for decision-making, including decisions about the de facto laws themselves, among non-hierarchical societies include various forms of formal consensus,[2] supermajority voting, "consensus minus one" and direct democracy.[11] Anthropologist David Graeber argues that any community that lacks a centralized mechanism of force (a state) will naturally gravitate toward some form of consensus decision-making.

Examples
See also: List of anarchist communities
See also
Voluntary association
Polycentric law
Privatization in criminal justice
An Anarchist FAQ







An Anarchist FAQ
https://en.wikipedia.org/wiki/An_Anarchist_FAQ
"An Anarchist FAQ" is a FAQ written by an international work group of social anarchists connected through the internet.[1][2] It documents anarchist theory and ideas and argues in favor of social anarchism.[3][4] It also explores other debates internal to the anarchist movement and counters common arguments against anarchism. It has been in constant evolution since 1995. While it was started as a critique of anarcho-capitalism, by the time it was officially released it had become a general introduction to anarchism.

The FAQ is published under the terms of the GNU Free Documentation License (copyleft) and it is dedicated "to the millions of anarchists, living and dead, who tried and are trying to create a better world". It was officially released online on 19 July 1996 "to celebrate the Spanish Revolution of 1936 and the heroism of the Spanish anarchist movement".


Contents
1	History
2	Content
3	Influence and reception
4	References
5	External links
History
The FAQ was started in 1995 when a group of anarchists got together in order to write an FAQ arguing against capitalist claims of being anarchists. Those who were involved in the project had spent many hours in online debate with self-described anarcho-capitalists concerning whether or not anarchism and capitalism are compatible. Eventually, a group of net-activists decided to write an FAQ explaining their thoughts on why anarchism and capitalism are incompatible. While the FAQ was written by many collaborators, the main contributors are listed in the introduction as Iain McKay (primary contributor and editor), Gary Elkin, Dave Neal and Ed Boraas, who refer to themselves as The Anarchist FAQ Editorial Collective.[5] However, the editors eventually decided that an anarchist FAQ which focused on anarchism itself would be a better idea than one solely devoted to refuting the notion of anarcho-capitalism and so the FAQ was born. The authors acknowledge that "it still bears some of the signs of its past-history. For example it gives the likes of Ayn Rand, Murray Rothbard, and so on, far too much space outside of Section F—they really are not that important".[6]

The FAQ thanks the following people for their contributions: Andrew Flood, Mike Ballard, Francois Coquet, Jamal Hannah, Mike Huben, Greg Alt, Chuck Munson, Pauline McCormack, Nestor McNab, Kevin Carson, Shawn Wilbur "and our comrades on the anarchy, oneunion and organise! mailing lists". A 2003 Critical Studies in Media Communication study declared the FAQ the most prominent core anarchist website, finding that it received incoming links from 20% of the anarchist websites studied.[7]

The FAQ was published in paperback in two volumes by AK Press, Oakland/Edinburgh:[8]

Volume I: 2008, 558 pages, ISBN 9781902593906.
Volume II: 2012; 550 pages, ISBN 9781849351225.
Content
Part of the Politics series on
Anarchism
"Circle-A" anarchy symbol
Schools of thought
TheoryPractice
People
Issues
History
Culture
Economics
By region
Lists
Related topics
BlackFlagSymbol.svg Anarchism portal
A coloured voting box.svg Politics portal
vte
The editors of the FAQ identify themselves as belonging to the social anarchist branch of anarchism (defined as anarcho-communism, anarcho-syndicalism, collectivist anarchism and Pierre-Joseph Proudhon's mutualism).[9] Despite this, the FAQ presents and describes other anarchist schools of thought such as individualist anarchism, anarcha-feminism and some lesser known theories like platformism and anarcho-primitivism. It cites references from a variety of authors from these schools and its bibliography contains over five hundred sources. According to the FAQ, anarchism is synonymous with libertarian socialism, free socialism, libertarian communism and free communism.[10]

Given the wide range of anarchist ideas, the authors acknowledge that many anarchists will not agree with everything that the FAQ says. However, they express their belief that "most anarchists will agree with most of what we present and respect those parts with which they do disagree with as genuine expressions of anarchist ideas and ideals".[5]

The FAQ also explains disputes within anarchist thought, such as where and why social anarchists and individualist anarchists disagree.[9] As social anarchists, the writers also explain their own views on individualist anarchism, arguing that while individualist anarchism has importance it also has contradictions and "many flaws", stating that it would lead to a "hierarchical and non-anarchist" society.[11] They also defend against individualist anarchists' criticisms of social anarchism, claiming that "much of this opposition was rooted in misunderstandings and, at times, outright distortion".[12]

The FAQ does not accept anarcho-capitalism as part of individualist anarchism, nor of anarchism in general. The FAQ writers explain and criticise anarcho-capitalism in sections F and to some extent G of the FAQ. They assert that "outside the net [anarcho-capitalists] are irrelevant and on the net they are just annoying" and call the arguments of anarcho-capitalists "inane'".[5] A critique of Bryan Caplan's "Anarchism Theory FAQ" is also presented in the first appendix, along with arguments that Caplan's FAQ distorts anarchism's relationship with anarcho-capitalism.[13][14]

Influence and reception
The FAQ has been complimented by several sources. The anarcho-syndicalist Solidarity Federation called it an "invaluable resource" and "highly recommended" for people wishing "to gain a better understanding of anarchism".[15] Flint Jones, a member of NEFAC, hailed the FAQ as "the most comprehensive [anarchist] resource available".[16] The Workers Solidarity Movement, an Irish anarchist group, called it "the primary source of information about anarchism on the world wide web".[17] Quebecer anarchist Normand Baillargeon calls it a "monumental and essential FAQ dedicated to anarchism".[18] The FAQ has been cited by communications scholar Joseph M. Reagle Jr. "[as] an exemplar of the principles [of community governance]".[19] In recent years, the FAQ has been cited in various published works, such as Viable Utopian Ideas: Shaping a Better World (2003) by Arthur Shostak[20] and Utopia and Organization (2002) by Martin Parker.[21] It has been described as "very comprehensive" by Paul Graham and John Hoffman in their Introduction to Political Ideologies (2006).[22] Various versions of the FAQ have been translated into eight languages and it has been included in every stable Debian release since 1999.[23][24]

An older version of the FAQ was once criticised by one of the anarcho-capitalists it was written to oppose. Writing in 1997 and referring to the 1996 version of the FAQ, David D. Friedman complained about what he called the authors' "irresponsibility" in making errors in their account of Icelandic history and by attributing to him a position which he did not hold. He claimed that the authors' methodology was to first "make up their facts", then correct errors as he points them out, hoping that they eventually come up with a true account.[25] The authors corrected their misstatement of Friedman's view in later versions when they became aware of his criticism.[26] While they acknowledged that the 1996 version of the FAQ did contain some errors concerning medieval Iceland and was poorly fact-checked, they denied that this represents a "disregard for the truth" and they argue their critique was still valid despite "some serious errors in details".[26][27]

Mutualist and individualist anarchist Kevin Carson called the FAQ a "[m]onumental compendium on anarchist history, theory and practice". However, Carson disagreed with the FAQ's analysis of anarcho-capitalism.[28] He referred to the FAQ's treatment of anarcho-capitalism as "probably the FAQ's weakest spot", continuing: "[While] I consider anarcho-capitalism to be considerably diverged from classical individualist anarchism, [I] also reject any blanket assertion that they can't be 'real anarchists'".[28]

References
 Starhawk. "An Anarchist FAQ - Introduction | Kill Capitalism Before it Kills You!". Infoshop. Archived from the original on 23 October 2012. Retrieved 5 May 2010.
 "A.1 What is anarchism?". Geocities. Archived from the original on 17 January 1999.
 "A.3 What types of anarchists are there". "[W]e think social anarchism is more appropriate for modern society". Archived 6 July 2013 at the Wayback Machine
 "G.4 Why do social anarchists reject individualist anarchism?" Archived 2013-05-21 at the Wayback Machine. "[I]ndividualist anarchists [...] a form of anarchism [...] with many flaws".
 "An Anarchist FAQ - Introduction". Infoshop. Archived from the original on 23 October 2012. Retrieved 5 May 2010.
 "An Anarchist FAQ - Introduction | Kill Capitalism Before it Kills You!". Infoshop. Archived from the original on 23 October 2012. Retrieved 5 May 2010.
 Owens, Lynn; Palmer, L. Kendall (2003). "Making the News: Anarchist Counter-Public Relations on the World Wide Web". Critical Studies in Media Communication. 20 (4): 335–361. CiteSeerX 10.1.1.530.1176. doi:10.1080/0739318032000142007.
 McKay, Iain, ed. (2008). An Anarchist FAQ. Stirling: AK Press. ISBN 978-1-902593-90-6. OCLC 182529204.
 "An Anarchist FAQ - A.3 What types of anarchism are there?". Infoshop. Archived from the original on 6 July 2013. Retrieved 5 May 2010.
 "A.1 What is anarchism?".
 "G.4 Why do social anarchists reject individualist anarchism?".
 "G.2 Why does individualist anarchism imply socialism?". Infoshop. Retrieved 5 May 2010.
 "Replies to Some Errors and Distortions in Bryan Caplan's "Anarchist Theory FAQ" version 4.1.1". Infoshop. 5 January 2018. Retrieved 21 January 2020.
 "Replies to Some Errors and Distortions in Bryan Caplan's "Anarchist Theory FAQ" version 5.2". Infoshop. 1 January 2018. Retrieved 20 January 2020.
 Direct Action (44). p. 30.
 "Anarchist Organization: an Oxymoron, or Not?". Infoshop. 6 February 2006. Retrieved 5 May 2010.
 Workers Solidarity (62).
 L'order moins le pouvoir: Histoire et actualité de l'anarchisme (in French).
 Reagle, Joseph. "Why the Internet is Good - Community governance that works well". Berkman Klein Center. Retrieved 5 May 2010.
 Shostak, Arthur (2003). Viable Uptopian Ideas. Armonk: M. E. Sharpe. ISBN 978-0-7656-1104-8.
 Parker, Martin (2002). Utopia and Organization. Cambridge: Blackwell Pub. ISBN 978-1-4051-0072-4.
 Hoffman, John (2006). Introduction to Political Ideologies. New York: Longman. ISBN 978-1-4058-2439-2.
 "An Anarchist FAQ – Translations" Archived 2013-05-21 at the Wayback Machine (1 January 2018). Infoshop. Retrieved 21 February 2019.
 Webmaster, Debian. "Debian - Details of package anarchism". Debian -- Packages. Retrieved 5 May 2010.
 Friedman, David D. "Iceland Anarch FAQ2 reply". Retrieved 12 August 2007.
 "An Anarchist FAQ after ten years". Infoshop. Archived from the original on 28 January 2015. Retrieved 5 May 2010.
 "An Anarchist FAQ, David Friedman and Medieval Iceland". Archived 12 April 2013 at the Wayback Machine. Retrieved 27 July 2008.
 Carson, Kevin (July 2006). "Anarchist FAQ Update". Mutualist Blog: Free Market Anti-Capitalism. Blog Spot. Retrieved 20 January 2020.
External links
An Anarchist FAQ
An Anarchist FAQ blog
An Anarchist FAQ after ten years (Archived 25 October 2009) by Iain McKay, written for the 10th anniversary of the FAQ's creation
AAFAQ Debian package






The Meaning of Anarchism, via twelve libertarians (Part 2)
http://anarchism.pageabode.com/afaq/index.html/

&  https://anarchism.pageabode.com/?p=1144#more-1144
& https://anarchism.pageabode.com/?p=1143#more-1143







Voluntarism (action)
https://en.wikipedia.org/wiki/Voluntarism_(action)
For the political philosophy, see Voluntaryism.
Voluntarism, sometimes referred to as voluntary action, is the principle that individuals are free to choose goals and how to achieve them within the bounds of certain societal and cultural constraints, as opposed to actions that are coerced or predetermined.[1] The term "voluntarism" is derived from Latin word "voluntary " which means 'will' the term voluntary association is variously defined. Voluntary organizations are known by several other names : Non-Government Organisations(NGOS), private voluntary organizations(PVOS) and so on depending on the geographic area and time period of reference. In general these organizations, regardless of terminology used, have certain characteristics; that they are non-government and non profit, that they are voluntary. The term NGO has become popular in the 1980s and 1990s and is extensively used in the field of development, where as the term "voluntary organization" had been used widely for social welfare and charity organizations. But these two terms are used interchangeably

as both denote the same characteristics.


Contents
1	Volunteerism
2	Varieties
3	Examples from American history
4	See also
5	References
6	External links
Volunteerism
Volunteer management specialist Susan J. Ellis differentiates between "voluntarism" and "volunteerism":

"Voluntarism" (the older term) refers to everything voluntary. In the United States this includes religion. It certainly encompasses the entire "voluntary sector," but "voluntary" in the "voluntarism" context means not mandated by law (as government is). Many voluntary sector (nonprofit) agencies have a volunteer board because that is a legal requirement, but may not utilize volunteers in direct service in any way. There are subjects within "voluntarism" that have nothing to do with volunteers, such as Unrelated Business Income Tax legislation, proposal writing, and compensation law.[2]

Varieties

Leaders welcome a boy into Scouting, March 2010, Mexico City, Mexico
Voluntary provision of services to religious, civil, medical, educational, environmental and other private or governmental organizations doubtless has a long history. Such volunteer efforts keep expenses down for non-profit and philanthropic organizations, empower individuals and groups to help others, and make volunteers feel needed.[3]

Voluntarism flourished in the 19th and early 20th centuries and was empowering especially to the women who had been excluded from political participation outside the home. Women's organizations dealt with social problems created by rapid industrialization and urbanization, and by massive immigration which were not addressed by institutions of the time and had a great influence on American political culture.[4]

Voluntarism is also used to describe non-coercive methods of recruiting soldiers, from participants in European and American military service to youthful combatants in civil war in Sierra Leone.[5]

Voluntarism has been a phrase used in labor relations. In Britain, it means the state refrains from directly intervening in industrial relations.[6] In the early American labor movement it meant trade unions should focus on "pure and simple" gains in wages and working conditions and not independent labor politics and industrial unionism.[7]

In his book Willful Liberalism: Voluntarism and Individuality in Political Theory and Practice, Johns Hopkins University political science professor Richard E. Flathman argues that liberals must understand more about individuality and self-reliance and self-responsibility and therefore be more open of acceptance of voluntary action and less concerned with ordering political society. He notes, "Americans of all ages, all conditions, and all dispositions constantly form associations," which he describes as "of a thousand other kinds, religious, moral, serious, futile, general or restricted, enormous or diminutive".[8]

In sociology, voluntarism is an important aspect of the action theory of Talcott Parsons, as well as other theories of social action and agency.

Voluntaryists, free market advocates, libertarians and anarchists call for voluntary efforts to replace most or all government efforts, using both moral and utilitarian arguments.[9]

Examples from American history
Globe icon.
The examples and perspective in this USA may not represent a worldwide view of the subject. You may improve this USA, discuss the issue on the talk page, or create a new USA, as appropriate. (August 2018) (Learn how and when to remove this template message)
Voluntary provision of services to the religious, civil, medical, educational, environmental and other private or governmental organizations doubtless has a long history.

William Penn, who established the Quakers in the late 17th century, preached taking responsibility for others and improving the world.
Cotton Mather, who lived during the colonial period, encouraged the formation of associations and causes.
Benjamin Franklin organized a voluntary militia in Quaker-controlled Pennsylvania, whose pacifist legislature refused to support the American revolutionary war.
Alexis de Tocqueville noted the unusually large number of voluntary associations in America.
The Underground Railroad was a network of volunteers who helped slaves escape from their captors in the South.
Dorothea Dix, a nurse, recruited and trained other women as nurses during the Civil War.
Clara Barton also served as a Civil War nurse and went on to establish the American Red Cross in 1881 for relief of natural disasters, such as earthquakes.
Jane Addams opened a settlement house in 1889 to teach volunteers how to help the poor improve their lives.
In 1995, 93 million Americans volunteered an average of 4.3 hours per week.[3]
See also
Structure and agency
Symbolic interactionism
Virtual volunteering
References
 Dillon, Michele (2013) [2009], "Chapter Four: Talcott Parsons and Robert Merton, Functionalism and Modernization", Introduction to Sociological Theory: Theorists, Concepts, and their Applicability to the Twenty-First Century, Wiley, pp. 161, 181, ISBN 9781118471906
 Susan J. Ellis. "Volunt/ar/eer/ism: What's the Difference?". Archived from the original on March 4, 2016.
 Susan Perkins. "Voluntarism". Center on Philanthropy at Indiana University. Retrieved March 1, 2014.
 Kathryn Kish Sklar (1998). "The "Quickened Conscience"]". Institute for Philosophy and Public Policy, University of Maryland. Archived from the original on August 6, 2007.
 "Military History: Second World War: Homefront, 1940–45". Archived from the original on December 13, 2007. Retrieved December 23, 2007.; John O'Sullivan (1982). From Voluntarism to Conscription: Congress and Selective Service, 1940–1945.; Christopher Jehn; Zachary Selden (2002). "The End of Conscription in Europe?" (PDF). National Security Division, Congressional Budget Office, United States Congress. Retrieved March 1, 2014.; Krijn Peters (April 2004). "Re-Examining Voluntarism, Youth Combatants in Sierra Leone: Monograph No 100". Institute for Security Studies. Archived from the original on June 15, 2008. Retrieved December 23, 2007. External link in |publisher= (help)
 "United Kingdom, Voluntarism". Eurofound. Retrieved March 1, 2014.
 David Brian Robertson (April 1999). "Voluntarism Against the Open Shop: Labor and Business Strategies in the Battle for American Labor Markets]". Studies in American Political Development. Cambridge University Press. 13 (1): 146–85. Retrieved March 2014. Check date values in: |access-date= (help)
 Richard E. Flathman (1992). Willful Liberalism: Voluntarism and Individuality in Political Theory and Practice. Cornell University Press. p. 76. ISBN 9780801499555. voluntarism.
 David T. Beito; Peter Gordon; Alexander Tabarrok, eds. (2002). The Voluntary City: Choice, Community and Civil Society. Ann Arbor: University of Michigan Press.; Doug Bandow (August 1999). "Voluntarism Should Be Voluntary]". The Freeman. 49 (8). Archived from the original on October 11, 2007.; David Osterfeld
External links
Landscapes of voluntarism, New spaces of health, welfare and governance, Christine Milligan and David Conradson, editors.
Sidney Verba; Kay Lehman Schlozman; Henry E. Brady (1995). Voice and Equality: Civic Voluntarism in American Politics. Harvard University Press. ISBN 9780674942936.
"Documentary History of Philanthropy and Voluntarism in the United States, 1600–1900". John F. Kennedy School of Government, Harvard University.
Peter Dobkin Hall (2003). "Benjamin Franklin and the Origins of Secular Voluntarism" (PDF). John F. Kennedy School of Government, Harvard University.











Spontaneous order
https://en.wikipedia.org/wiki/Spontaneous_order
Spontaneous order, also named self-organization in the hard sciences, is the spontaneous emergence of order out of seeming chaos. It is a process in social networks including economics, though the term "self-organization" is more often used for physical changes and biological processes, while "spontaneous order" is typically used to describe the emergence of various kinds of social orders from a combination of self-interested individuals who are not intentionally trying to create order through planning. The evolution of life on Earth, language, crystal structure, the Internet and a free market economy have all been proposed as examples of systems which evolved through spontaneous order.[1]

Spontaneous orders are to be distinguished from organizations. Spontaneous orders are distinguished by being scale-free networks, while organizations are hierarchical networks. Further, organizations can be and often are a part of spontaneous social orders, but the reverse is not true. Further, while organizations are created and controlled by humans, spontaneous orders are created, controlled, and controllable by no one.[citation needed] In economics and the social sciences, spontaneous order is defined as "the result of human actions, not of human design".[2]

Spontaneous order is an equilibrium behavior between self-interested individuals, which is most likely to evolve and survive, obeying the natural selection process "survival of the likeliest".[3]


Contents
1	History
2	Examples
2.1	Markets
2.2	Game studies
2.3	Anarchism
2.4	Sobornost
2.5	Recent developments
3	Criticism
4	See also
5	References
History
According to Murray Rothbard, Zhuangzi (369–286 BCE) was the first to work out the idea of spontaneous order. The philosopher rejected the authoritarianism of Confucianism, writing that there "has been such a thing as letting mankind alone; there has never been such a thing as governing mankind [with success]." He articulated an early form of spontaneous order, asserting that "good order results spontaneously when things are let alone", a concept later "developed particularly by Proudhon in the nineteenth [century]".[4]

The thinkers of the Scottish Enlightenment developed and inquired into the idea of the market as a spontaneous order. In 1767, the sociologist and historian Adam Ferguson described society as the "result of human action, but not the execution of any human design".[5][6]

However, the term “spontaneous order” seems to have been coined by Michael Polanyi in his essay, “The Growth of Thought in Society,” Economica 8 (November 1941): 428–456.[7]

The Austrian School of Economics, led by Carl Menger, Ludwig von Mises and Friedrich Hayek made it a centerpiece in its social and economic thought. Hayek's theory of spontaneous order is the product of two related but distinct influences that do not always tend in the same direction. As an economic theorist, his explanations can be given a rational explanation. But as a legal and social theorist, he leans, by contrast, very heavily on a conservative and traditionalist approach which instructs us to submit blindly to a flow of events over which we can have little control.[8]

Examples
Markets
Many classical-liberal theorists,[9] such as Hayek, have argued that market economies are a spontaneous order, "a more efficient allocation of societal resources than any design could achieve."[10] They claim this spontaneous order (referred to as the extended order in Hayek's The Fatal Conceit) is superior to any order a human mind can design due to the specifics of the information required.[11] Centralized statistical data, they suppose, cannot convey this information because the statistics are created by abstracting away from the particulars of the situation.[12]

For Hayek, prices in a market economy are the aggregation of information acquired when the people who own resources are free to use their individual knowledge. Price then allows everyone dealing in a commodity or its substitutes to make decisions based on more information than he or she could personally acquire, information not statistically conveyable to a centralized authority. Interference from a central authority which affects price will have consequences they could not foresee because they do not know all of the particulars involved.

According to Barry this is illustrated in the concept of the invisible hand proposed by Adam Smith in The Wealth of Nations.[1] Thus in this view by acting on information with greater detail and accuracy than possible for any centralized authority, a more efficient economy is created to the benefit of a whole society.

Lawrence Reed, president of the Foundation for Economic Education, describes spontaneous order as follows:

Spontaneous order is what happens when you leave people alone—when entrepreneurs... see the desires of people... and then provide for them.

They respond to market signals, to prices. Prices tell them what's needed and how urgently and where. And it's infinitely better and more productive than relying on a handful of elites in some distant bureaucracy.[13]

Hayek’s account of the spontaneous order and the impersonal nature of the economic outcomes in the free market has led him to reject the notion of social (or distributive) justice as a meaningless concept.

Game studies
The concept of spontaneous order is closely related with modern game studies. As early as the 1940s, historian Johan Huizinga wrote that "in myth and ritual the great instinctive forces of civilized life have their origin: law and order, commerce and profit, craft and art, poetry, wisdom and science. All are rooted in the primeval soil of play." Following on this in his book The Fatal Conceit, Hayek notably wrote that "a game is indeed a clear instance of a process wherein obedience to common rules by elements pursuing different and even conflicting purposes results in overall order."

Anarchism
See also: Self-organization § Principles, and Anarchist symbolism § Circle-A
Anarchists argue that the state is in fact an artificial creation of the ruling elite, and that true spontaneous order would arise if it was eliminated. Construed by some but not all as the ushering in of organization by anarchist law. In the anarchist view, such spontaneous order would involve the voluntary cooperation of individuals. According to the Oxford Dictionary of Sociology, "the work of many symbolic interactionists is largely compatible with the anarchist vision, since it harbours a view of society as spontaneous order."[14]

Sobornost
The concept of spontaneous order can also be seen in the works of the Russian Slavophile movements and specifically in the works of Fyodor Dostoyevsky. The concept of an organic social manifestation as a concept in Russia expressed under the idea of sobornost. Sobornost was also used by Leo Tolstoy as an underpinning to the ideology of Christian anarchism. The concept was used to describe the uniting force behind the peasant or serf Obshchina in pre-Soviet Russia.[15]

Recent developments
Perhaps the most prominent exponent[16] of spontaneous order is Friedrich Hayek. In addition to arguing the economy is a spontaneous order, which he termed a catallaxy, he argued that common law[17] and the brain[18] are also types of spontaneous orders. In "The Republic of Science,"[19] Michael Polanyi also argued that science is a spontaneous order, a theory further developed by Bill Butos and Thomas McQuade in a variety of papers. Gus DiZerega has argued that democracy is the spontaneous order form of government,[20] David Emmanuel Andersson has argued that religion in places like the United States is a spontaneous order,[21] and Troy Camplin argues that artistic and literary production are spontaneous orders.[22] Paul Krugman too has contributed to spontaneous order theory in his book The Self-Organizing Economy,[23] in which he claims that cities are self-organizing systems. Credibility thesis suggests that the credibility of social institutions is the driving factor behind the endogenous self-organization of institutions and their persistence.[24]

The competitions between huge numbers of self-interested individuals will lead to many possible income distributions. Among all possible income distributions, exponential income distribution will occur with the highest probability. Following the natural selection process "survival of the likeliest", the exponential income distribution is most likely to evolve and survive, and hence is called the "Spontaneous Order" by Tao.[3] By analyzing datasets of household income from 66 countries and Hong Kong SAR, ranging from Europe to Latin America, North America and Asia, Tao et al found that, for all of these countries, the income distribution for the great majority of populations (low and middle income classes) follows an exponential income distribution.[25]

Criticism
One commentator states that (Hayek's) theory of spontaneous order, “the foundations of Hayek’s liberalism are so incoherent” because the “idea of spontaneous order lacks distinctness and internal structure.”.[26] The three components: lack of intentionality, the “primacy of tacit or practical knowledge,” and the “natural selection of competitive traditions.”. While the first feature, that social institutions may arise in some unintended fashion, is indeed an essential element of spontaneous order, the second two are only implications, not essential elements.[27]

Hayek's theory has also been criticized for not offering a moral argument, and his overall outlook contains “incompatible strands that he never seeks to reconcile in a systematic manner.”.[28]

See also
Anonymous
Deregulation
Emergence
Free price system
"I, Pencil" by Leonard Read
Mutual aid
Natural law
Natural order
Revolutionary spontaneity
Stigmergy
Tragedy of the commons
Wu wei (Effortless Action)









Technophobia
https://en.wikipedia.org/wiki/Technophobia
Technophobia (from Greek τέχνη technē, "art, skill, craft"[1] and φόβος phobos, "fear"[2]), also known as technofear, is the fear or dislike of advanced technology or complex devices, especially computers.[3] Although there are numerous interpretations of technophobia, they become more complex as technology continues to evolve. The term is generally used in the sense of an irrational fear, but others contend fears are justified. It is the opposite of technophilia.

Larry Rosen, a research psychologist, computer educator, and professor at California State University, Dominguez Hills, suggests that there are three dominant subcategories of technophobes – the "uncomfortable users", the "cognitive computerphobes", and "anxious computerphobes".[4] First receiving widespread notice during the Industrial Revolution, technophobia has been observed to affect various societies and communities throughout the world. This has caused some groups to take stances against some modern technological developments in order to preserve their ideologies. In some of these cases, the new technologies conflict with established beliefs, such as the personal values of simplicity and modest lifestyles.

Examples of technophobic ideas can be found in multiple forms of art, ranging from literary works such as Frankenstein to films like Metropolis. Many of these works portray a darker side to technology, as perceived by those who are technophobic. As technologies become increasingly complex and difficult to understand, people are more likely to harbor anxieties relating to their use of modern technologies.


Contents
1	Prevalence
2	History
3	Luddites
4	Selective use of modern technologies among Old Order Anabaptists
5	Technophobia in arts
6	See also
7	References
8	Further reading
9	External links
Prevalence
A study published in the journal Computers in Human Behavior was conducted between 1992 and 1994 surveying first-year college students across various countries.[5] The overall percentage of the 3,392[6] students who responded with high-level technophobic fears was 29%.[6] In comparison, Japan had 58% high-level technophobes and Mexico had 53%.[6]

A published report in 2000 stated that roughly 85-90% of new employees at an organization may be uncomfortable with new technology, and are technophobic to some degree.[7]

History
[icon]
This section needs expansion with: This section ends abruptly after the 1980s. It would be helpful if somebody added some info regarding the 1990s and the 21st century. You can help by adding to it. Relevant discussion may be found on Talk:Technophobia. (May 2018)
Technophobia began to gain attention as a movement in England with the dawn of the Industrial Revolution. With the development of new machines able to do the work of skilled craftsmen using unskilled, underpaid men, women, and children, those who worked a trade began to fear for their livelihoods. In 1675, a group of weavers destroyed machines that replaced their jobs. By 1727, the destruction had become so prevalent that Parliament made the demolition of machines a capital offense. This action, however, did not stop the tide of violence. The Luddites, a group of anti-technology workers, united under the name "Ludd" in March 1811, removing key components from knitting frames, raiding houses for supplies, and petitioning for trade rights while threatening greater violence. Poor harvests and food riots lent aid to their cause by creating a restless and agitated population for them to draw supporters from.[8]

The 19th century was also the beginning of modern science, with the work of Louis Pasteur, Charles Darwin, Gregor Mendel, Michael Faraday, Henri Becquerel, and Marie Curie, and inventors such as Nikola Tesla, Thomas Edison and Alexander Graham Bell. The world was changing rapidly, too rapidly for many, who feared the changes taking place and longed for a simpler time. The Romantic movement exemplified these feelings. Romantics tended to believe in imagination over reason, the "organic" over the mechanical, and a longing for a simpler, more pastoral time. Poets like William Wordsworth and William Blake believed that the technological changes that were taking place as a part of the industrial revolution were polluting their cherished view of nature as being perfect and pure.[9]

After World War II, a fear of technology continued to grow, catalyzed by the bombings of Hiroshima and Nagasaki. With nuclear proliferation and the Cold War, people began to wonder what would become of the world now that humanity had the power to manipulate it to the point of destruction. Corporate production of war technologies such as napalm, explosives, and gases during the Vietnam War further undermined public confidence in technology's worth and purpose.[10] In the post-WWII era, environmentalism also took off as a movement. The first international air pollution conference was held in 1955, and in the 1960s, investigations into the lead content of gasoline sparked outrage among environmentalists. In the 1980s, the depletion of the ozone layer and the threat of global warming began to be taken more seriously.[11]

Luddites

The Leader of the Luddites, engraving of 1812
Several societal groups are considered technophobic, the most recognisable of which are the Luddites. Many technophobic groups revolt against modern technology because of their beliefs that these technologies are threatening their ways of life and livelihoods.[12] The Luddites were a social movement of British artisans in the 19th century who organized in opposition to technological advances in the textile industry.[8] These advances replaced many skilled textile artisans with comparatively unskilled machine operators. The 19th century British Luddites rejected new technologies that impacted the structure of their established trades, or the general nature of the work itself.

Resistance to new technologies did not occur when the newly adopted technology aided the work process without making significant changes to it. The British Luddites protested the application of the machines, rather than the invention of the machine itself. They argued that their labor was a crucial part of the economy, and considered the skills they possessed to complete their labor as property that needed protection from the destruction caused by the autonomy of machines.[13]

Selective use of modern technologies among Old Order Anabaptists
Groups considered by some people to be technophobic are the Amish and other Old Order Anabaptists. The Amish follow a set of moral codes outlined in the Ordnung, which rejects the use of certain forms of technology for personal use. Donald B. Kraybill, Karen M. Johnson-Weiner and Steven M. Nolt state in their book The Amish:
More significantly the Amish modify and adapt technology in creative ways to fit their cultural values and social goals. Amish technologies are diverse, complicated and ever-changing.[14]

What the Amish do, is selective use of modern technologies in order to maintain their belief and culture.[15]

Technophobia in arts

Frankenstein is often considered to be an early example of technophobic ideas in art.
An early example of technophobia in fiction and popular culture is Mary Shelley's Frankenstein.[16] It has been a staple of science fiction ever since, exemplified by movies like Fritz Lang's Metropolis, which offer examples of how technophobia can occur, and Charlie Chaplin's Modern Times, in which people are reduced to nothing but cogs in the machinery, a product of new industrial techniques like the assembly line. This persisted through the 1960s, with the fears of nuclear weapons and radiation leading to giant insects in monster movies, cautionary tales like The Day the Earth Stood Still, and The Hulk. This was joined by fears of superintelligent machines, and rebellion amongst them, which was a recurring theme of Star Trek, from the original series to Star Trek: The Next Generation to Star Trek: Voyager in the 1990s.

A 1960 episode of The Twilight Zone called "A Thing About Machines", deals with a man's hatred for modern things such as electric razors, televisions, electric typewriters and clocks.

The 1971 film The Omega Man (loosely based on the Richard Matheson novel I am Legend) showed a world scarred by biological warfare and only a handful of humans and a cult of mutants remain alive. Charlton Heston's character is a scientist who is being targeted by the mutants who wish to destroy all science and machinery due to their technophobic beliefs. Technophobia is also thematic in Walter M. Miller's novel A Canticle for Leibowitz, in which nuclear war produces an attempt to stamp out science itself, which is held to be responsible.

In the 1970s, films such as Colossus: The Forbin Project and Demon Seed offered samples of domination by computers. The film Westworld, released in 1973, revolves around world of entertainment humanoids going completely wrong when they turn against humans. Also in the 1970s, Rich Buckler created Deathlok, a cyborg revivified by a madman as a slave killing machine, a dark twist on Frankenstein.

Technophobia achieved commercial success in the 1980s with the movie The Terminator, in which a computer becomes self-aware, and decides to kill all humans.[16] Blade Runner shows us how human replicas were able to live on Earth, portraying technology gone wrong in "replicants" unhappy with their man-made limitations which demand they be "modified". Star Trek: Voyager introduced another twist, when "surplus" EMHs, such sophisticated expert systems as to be almost indistinguishable from human, being effectively reduced to slavery, while other, similar systems were turned into sentient prey.

More recently there have been movies like I, Robot, The Matrix Trilogy, WALL-E, and the Terminator sequels. Shows such as Doctor Who—most specifically in the episode "Robots of Death"—have also tackled the issue of technophobia, with a character in "Robots of Death" displaying a great fear of robots due to their lack of body language, described by the Fourth Doctor as giving them the appearance of "dead men walking". Series consultant Kit Pedler also used this fear as a basis for the inspiration of classic Doctor Who monsters the Cybermen, with the creatures being inspired by his own fear of artificial limbs becoming so common that it would become impossible to know when someone had stopped being a man and become simply a machine. Virtuosity speaks of a virtual serial killer who manages to escape to the real world. He goes on a rampage before he is inevitably stopped. This is a true technophobic movie in that its main plot is about technology gone wrong. It introduces a killer who blatantly destroys people.[17]

Avatar is exemplary of technology's hold on humans who are empowered by it and visually demonstrates the amount of terror it instills upon those native to the concept. It enforces the notion that foreign creatures from Pandora are not only frightened by technology, but it is something they loathe; its potential to cause destruction could exceed their very existence. In contrast, the film itself used advanced technology such as the stereoscope in order to give viewers the illusion of physically taking part in an experience that would introduce them to a civilization struggling with technophobia.[18]

The 2009 animated film 9 opens with the line, "We had such potential, such promise; but we squandered our gifts, our intelligence. Our blind pursuit of technology only sped us quicker to our doom. Our world is ending."

Godfrey Reggio's Qatsi trilogy also deals heavily with issues of technophobia. The idea of keeping the "thinkers" and "workers" separate shows us that even the people who embraced technology feared the potential of it in some way.

In the PC game Wing Commander: Privateer, a fanatical quasi-religious group, called the Retros, wishes to overthrow all forms of technology, even if doing so, they themselves have to use it in order to fulfill their goal. They play a central role in the Righteous Fire expansion game, wherein a new mysterious leader leads the group in an attempt to destroy all non-adherents of their religion.

See also
Anarcho-primitivism
Anti-consumerism
Antiscience
Chemophobia
Cyberphobia
"Darwin among the Machines"
Dystopia
Digital phobic
Erewhon
List of phobias
Minimalism in philosophy
Neo-Luddism
NIMBY
Radical environmentalism
Reactionary
Technophilia
Technostress
Uncanny valley






Digital phobic
https://en.wikipedia.org/wiki/Digital_phobic
Digital phobic is an informal phrase used to describe a reluctance to become fully immersed in the digital age for being fearful of how it might negatively change or alter everyday life.

The fast-paced development of the digital world in the twenty-first century has contributed to the digital divide becoming a very real problem for a segment of the population for whom a lack of education of, interest in, or access to digital devices has left them excluded from the technological world and fearful of its growing omnipresence.

Digital phobic is part of a growing dictionary of digital vocabulary exploring the social impact of the technological age. The phrase considers the fears associated with technological evolution and change, and acknowledges the possibility of exclusion as a result of a rising reliance on technology in day-to-day life.


Contents
1	Discourse
2	Origins
3	Social and cultural impact
4	Education
5	See also
6	Notes
7	References
Discourse
Everyday use of technology has increased dramatically since the turn of the century, significantly impacting both those embracing technological change as well as those reluctant to be a part of it.

A sharp rise in technological innovations during the 21st century has been responsible for changing much of the way we work, socialize, and learn – all of which can be at the foundation of distrust in the technological age. Psychologists, academics and researchers have begun to consider the base of these fears and consider the social, cultural and environmental circumstances which might catalyze someone to becoming 'digital phobic'.

Technophobia is used to discuss a fear of advanced technology in a formal capacity and can stem from a number, and combination of, concerns. With the oncoming of the digital age, worries have broadened from the very earliest fears that technology would eradicate artisanship to concerns over data protection, financial security, identity theft, technical inability and invasion of privacy.

There is no exhaustible list of reasons cited for fearing the digital world and, whilst research into both the cause and consequence of developing a digital phobia remains in its infancy, the presence of digital phobia regardless contributes towards an increasingly comprehensive picture of a series of profiles among digital users.

Recent research from Foresters, an international financial services organization, found 2% of the UK population to fall into this category of internet user.[1] A further breakdown of this statistic, sees the percentage of users in development of a digital phobia increase, with 4% fearful of online shopping for worrying that someone will steal their card details, and 12% fearful that using social media will make it easier for people to find their personal details.

When asked to reason their attitude towards technology as part of this survey, a larger percentage of the UK population were revealed to be fearful of the impact it could be having on more traditional means of doing things. 31% believed technology was preventing us from communicating properly, while 32% thought advances in technology will result in long-held traditions being lost.

This fear has only been exacerbated over time as more and more data-holding, services and opportunities are transferred to the digital realm, and both the perceived and real nature of security and vulnerability risks increases. Worrying levels of time spent on devices, the invasion of privacy or the possible misuse or abuse of personal data entrusted to online sources are all contributing towards the development of a digital phobia among a proportion of the population.

Concerns about the negative, exclusionary or divisive consequences of living within a digital society are being voiced from various global platforms. April 2014 research conducted by Pew Research Center, in association with Smithsonian Magazine, revealed concerns about anticipated technological developments over the next half-century. 30% of Americans surveyed feared that technological changes would lead to a future in which people are worse off than they are at the time of being surveyed.[2] Considered amid reports of dis-interest in the internet among Japan's residents despite its reputation as a high-tech nation, these reports contribute towards a growing understanding that high-tech advancements are not universally celebrated.[3] Moreover, the May 2014 "right to be forgotten" ruling put in place in the European Union which allows internet users to request for their internet history to be un-searchable if deemed incorrect, outdated or irrelevant, and the thousands of requests received in the first few days following its announcement documents a, perhaps previously hidden, widespread fear of leaving a digital footprint and/or being falsely represented online.[4]

Origins
Digital phobia is part of a wider societal conversation on how we relate to, trust in, and interact with technology and considers the potentially negative implications of what otherwise appears to be a positive advancement of the modern world.

This phrase has been developed by Foresters, the international financial services organisation, for the purpose of describing attitudes to technology among the UK population.

Developed within a digital vocabulary consisting of four other phrases (digital addict, digital omnivore, digital agnostic, digital denier), digital phobic is part of a scale of social description for online behavior within the digital age.

The phrase has been used as part of discussion on the more general use of technology within the 21st century and the importance of striking a balance between time spent on and offline. Research conducted by Foresters in association with Tech Timeout,[5] a social communications initiative considering the role of technology in contemporary society, formed the basis of the descriptor and identified the key traits of each type of digital user based on answers from over 1,000 UK respondents.

Both anecdotal and research-based evidence suggests categories of internet use, whilst they cannot be linearly divided, are able to loosely describe attitudes to technology in society. The developed phrases are able to be used to greater understand and contextualize how new and existing technology is viewed and have been cited in international online newspapers and blog posts.[6]

Whilst this phrase and definition were developed specifically from research on UK technology-users, the phrase is not UK-specific and is designed to be indicative of a global community of technology users who share in these characteristics.

Social and cultural impact
Digital phobia presents a real and pressing problem in the modern world where technology has become a central and essential resource. Internet culture has developed to become a part of the fabric of everyday life and is now even considered part of the make-up of national identity with a country's internet use and digital footprint an important modern index for international comparison, often associated with development and modernity.

The consequences of non-participation in the digital world are far reaching, and can affect the economic, cultural, social, occupational and educational life of a non-user. For example, in 2009 Price Waterhouse Coopers estimated that UK households offline are missing out on savings of £560 a year which could be saved if shopping or paying for bills online.[7] Furthermore, in the United States older people without internet access or the skills to make the most of it are considered a disadvantaged proportion of the population as, amongst other important resources, vital healthcare information and initiatives conducted online are unavailable to those not a part of the digital world.[8]

Heightened fears of how technology may be affecting the human population stems from a, for some very logical, fear of how technology is adapting the world we live in and at the pace and price with which it is doing so. With such a significance placed on online participation, concerns about the role of the internet in everyday life are not unfounded and not exclusive to those who prefer to stay away from the internet, avoid certain activities online, or use the internet without enthusiasm and only as necessitated.

A survey conducted by security firm Avira identified 84% of people fear social networking sites will steal or misuse their personal information,[9] demonstrating the net majority of internet users share, at least partially, in distrusting the digital world. Whilst many will, despite this fear, adopt cautious optimism and still use social networking as part of their everyday lives this high percentage serves to demonstrate that a fear significant enough for some to avoid readily using online and digital services is a fear shared by a large number of internet users.

Whilst some digital phobics have preferred to remain distanced from technology due to hypothetical concerns others have attempted to join in societal interest but find themselves unable to stay caught up with new technology or would like to see its progression halted as evolution of the digital world has reached new speeds. The 2013 Oxford Internet Survey[10] recognizes this concern among UK users, identifying distinct categories of both non-users and ex-users of internet-based technology who, for a variety of reasons, have discontinued or refuse to access the online world. This is further supported by results from a 2013 survey of internet use in America[11] which found 32% of non-internet users avoiding the online world because of finding the internet difficult or frustrating to use, being physically unable or worried about other issues such as viruses, threat of hacking or spam – a figure considerably higher than in earlier years.

Concern over the presence of a digital divide, whether locally or globally, is only exacerbated by the knowledge that access to many government and council services, job applications, and social and cultural resources are now largely internet based. Internet access has become a hurdle in contemporary society which, for those without the necessary desire to learn or knowledge of internet-based systems, can be difficult to navigate around, often resulting in key services and vital resources being less easily accessible, leaving non-users feeling isolated. Private and government campaigns to tackle this issue further demonstrate the severity and long-lasting impact of having a proportion of the population disinclined or disinterested in going online.[12][13]

As the online world becomes saturated, device options for connecting to the internet vary and news of technological inventions goes viral the exponential growth of the technological world is only contributing towards a growing number of 'digital phobic' tech-users amongst the global population.

Education
Digital phobia has had a negative impact on the field of education. Some teachers have expressed a fear that new and advanced technology is supplanting them as the masters of their fields of study and a study of teachers in Wilmington, Delaware has shown that educators in this area are acclimating to the new technology in their classrooms at a slower pace.[14] The local researchers believe that there are many factors why that is the case and some of the things they have found are things such as a lack of technological education by the teachers, and also the lack of time, or incentive to adjust to the new technology. University Larry Cuban has stated that "The introduction of computers into school was supposed to improve academic achievement , and alter how teachers taught. Neither has occurred."[15]

The constant infusion of new technology has many teachers fearing that they are losing their classroom. This new technology is essentially diminishing the role of a teacher in the classroom.

Researchers believe that educators are slow to adapt to technology because they aren't given time to acclimate to the new technology, causing them to hesitate to use it in the classroom and express fear that these technologies may interfere with genuine learning particularly in humanities and creative subjects.[16] In an article for the New Media Reader, Theodor H. Nelson wrote that people are opposed to the computer because they believe it is "cold" and "inhuman", but a human can be just as inhuman and maybe even more so than the actual machine itself.[17]

See also
Digital Age
Digital detox
Digital divide
Digital native
Internet addiction disorder


Digital divide
https://en.wikipedia.org/wiki/Digital_divide
The digital divide refers to the gap between those able to benefit from the digital age and those who are not.[1][2] The concern is that people without access to the Internet and other information and communication technologies will be disadvantaged, as they are unable or less able to obtain digital information, shop online, participate democratically, or learn skills and offer skills. This resulted in programs to give computers and related services to people without access.

Since the 1990s, a potent global movement, including a series of intergovernmental summit meetings, were conducted to "close the digital divide". Since then, this movement formulated solutions in public policy, technology design, finance and management that would allow all connected citizens to benefit equitably as a global digital economy spreads into the far corners of the world population.[3][4] Though originally coined to refer merely to the matter of access—who is connected to the Internet and isn't—the term digital-divide has evolved to focus on the division between those who benefit from Information and Communication Technology and those who do not.[5] Thus, the aim of “closing the digital divide” now refers to efforts to provide meaningful access to Internet infrastructures, applications and services. The matter of closing the digital divide nowadays includes the matter of how emergent technologies such as Artificial Intelligence (so-called AI4D[6]), robotics and Internet of things can help societies.[7] As it has become clear that the Internet can harm as well as help citizens, the focus of closing the digital divide had focused on the matter of how to generate "net benefit"[8] (optimal help minimal harm) as a result of the impact of a spreading digital economy.[9]

The divide between differing countries or regions of the world is referred to as the global digital divide,[10][11] examining this technological gap between developing and developed countries on an international scale.[12] The divide within countries (such as the digital divide in the United States) may refer to inequalities between individuals, households, businesses, or geographic areas, usually at different socioeconomic levels or other demographic categories.


Contents
1	Aspects of the digital divide
1.1	Infrastructure
1.1.1	The bit as the unifying variable
1.2	Skills and digital literacy
1.2.1	Gender digital divide
1.3	Location
1.4	Applications
2	Reasons and correlating variables
2.1	Economic gap in the United States
2.2	Racial gap
2.3	Disability gap
2.4	Gender gap
2.5	LGBT gap
2.6	Age gap
3	Historical Background
4	Facebook divide
5	Overcoming the divide
5.1	Libraries
6	Effective use
7	Implications
7.1	Social capital
7.2	Economic disparity
7.3	Education
7.4	Demographic differences
8	Criticisms
8.1	Knowledge divide
8.2	Second-level digital divide
9	The global digital divide
10	See also
10.1	Groups devoted to digital divide issues
11	Sources
12	References
13	Bibliography
14	Further reading
15	External links
Aspects of the digital divide
There are manifold definitions of the digital divide, all with slightly different emphasis, which is evidenced by related concepts like digital inclusion,[13] digital participation,[14] digital skills[15] and media literacy,[16] and digital accessibility.[17]

DigitalDivide Hilbert2011.jpg
A common approach, adopted by leaders in the field like Jan van Dijk,[18] consists in defining the digital divide by the problem it aims to solve: based on different answers to the questions of who, with which kinds of characteristics, connects how and why to what, there are hundreds of alternatives ways to define the digital divide.[1] "The new consensus recognizes that the key question is not how to connect people to a specific network through a specific device, but how to extend the expected gains from new ICTs."[19] In short, the desired impact and "the end justifies the definition" of the digital divide.[1] Some actors, like the US-based National Digital Inclusion Alliance, draw conclusions based on their particular answers to these questions, and defined that for them, it implies: 1) affordable, robust broadband Internet service; 2) Internet-enabled devices that meet the needs of the user; 3) access to digital literacy training; 4) quality technical support; 5) applications and online content designed to enable and encourage self-sufficiency, participation and collaboration.[20]

Infrastructure
The infrastructure by which individuals, households, businesses, and communities connect to the Internet address the physical mediums that people use to connect to the Internet such as desktop computers, laptops, basic mobile phones or smartphones, iPods or other MP3 players, gaming consoles such as Xbox or PlayStation, electronic book readers, and tablets such as iPads.[21]


The digital divide measured in terms of bandwidth is not closing, but fluctuating up and down. Gini coefficients for telecommunication capacity (in kbit/s) among individuals worldwide[22]
Traditionally, the nature of the divide has been measured in terms of the existing numbers of subscriptions and digital devices. Given the increasing number of such devices, some have concluded that the digital divide among individuals has increasingly been closing as the result of a natural and almost automatic process.[23][24] Others point to persistent lower levels of connectivity among women, racial and ethnic minorities, people with lower incomes, rural residents, and less educated people as evidence that addressing inequalities in access to and use of the medium will require much more than the passing of time.[25][26] Recent studies have measured the digital divide not in terms of technological devices, but in terms of the existing bandwidth per individual (in kbit/s per capita).[27][22]

As shown in the Figure on the side, the digital divide in kbit/s is not monotonically decreasing but re-opens up with each new innovation. For example, "the massive diffusion of narrow-band Internet and mobile phones during the late 1990s" increased digital inequality, as well as "the initial introduction of broadband DSL and cable modems during 2003–2004 increased levels of inequality".[27] This is because a new kind of connectivity is never introduced instantaneously and uniformly to society as a whole at once, but diffuses slowly through social networks. As shown by the Figure, during the mid-2000s, communication capacity was more unequally distributed than during the late 1980s, when only fixed-line phones existed. The most recent increase in digital equality stems from the massive diffusion of the latest digital innovations (i.e. fixed and mobile broadband infrastructures, e.g. 3G and fiber optics FTTH).[28] Measurement methodologies of the digital divide, and more specifically an Integrated Iterative Approach General Framework (Integrated Contextual Iterative Approach – ICI) and the digital divide modeling theory under measurement model DDG (Digital Divide Gap) are used to analyze the gap existing between developed and developing countries, and the gap among the 27 members-states of the European Union.[29][30]

The bit as the unifying variable

Fixed-line phone and Internet 2000–2010: subscriptions (top) and kbit/s (bottom) per capita[31]
Instead of tracking various kinds of digital divides among fixed and mobile phones, narrow- and broadband Internet, digital TV, etc., it has recently been suggested to simply measure the amount of kbit/s per actor.[27][22][32][33] This approach has shown that the digital divide in kbit/s per capita is actually widening in relative terms: "While the average inhabitant of the developed world counted with some 40 kbit/s more than the average member of the information society in developing countries in 2001, this gap grew to over 3 Mbit/s per capita in 2010."[33]

The upper graph of the Figure on the side shows that the divide between developed and developing countries has been diminishing when measured in terms of subscriptions per capita. In 2001, fixed-line telecommunication penetration reached 70% of society in developed OECD countries and 10% of the developing world. This resulted in a ratio of 7 to 1 (divide in relative terms) or a difference of 60% (divide in absolute terms). During the next decade, fixed-line penetration stayed almost constant in OECD countries (at 70%), while the rest of the world started a catch-up, closing the divide to a ratio of 3.5 to 1. The lower graph shows the divide not in terms of ICT devices, but in terms of kbit/s per inhabitant. While the average member of developed countries counted with 29 kbit/s more than a person in developing countries in 2001, this difference got multiplied by a factor of one thousand (to a difference of 2900 kbit/s). In relative terms, the fixed-line capacity divide was even worse during the introduction of broadband Internet at the middle of the first decade of the 2000s, when the OECD counted with 20 times more capacity per capita than the rest of the world.[27] This shows the importance of measuring the divide in terms of kbit/s, and not merely to count devices. The International Telecommunications Union concludes that "the bit becomes a unifying variable enabling comparisons and aggregations across different kinds of communication technologies".[34]

Skills and digital literacy
However, research shows that the digital divide is more than just an access issue and cannot be alleviated merely by providing the necessary equipment. There are at least three factors at play: information accessibility, information utilization, and information receptiveness. More than just accessibility, individuals need to know how to make use of the information and communication tools once they exist within a community.[35] Information professionals have the ability to help bridge the gap by providing reference and information services to help individuals learn and utilize the technologies to which they do have access, regardless of the economic status of the individual seeking help.[36]

Gender digital divide
Main article: Gender digital divide

Abilities and perceptions of abilities
Due to the rapidly declining price of connectivity and hardware, skills deficits have eclipsed barriers of access as the primary contributor to the gender digital divide. Studies show that women are less likely to know how to leverage devices and Internet access to their full potential, even when they do use digital technologies.[37] In rural India, for example, a study found that the majority of women who owned mobile phones only knew how to answer calls. They could not dial numbers or read messages without assistance from their husbands, due to a lack of literacy and numeracy skills.[38] Research conducted across 25 countries found that adolescent boys with mobile phones used them for a wider range of activities, from playing games to accessing financial services online, while adolescent girls tended to use just the basic functionalities such as making phone calls and using the calculator.[39] Similar trends can be seen even in areas where Internet access is near-universal. A survey of women in nine cities around the world revealed that although 97% of women were using social media, only 48% of them were expanding their networks, and only 21% of Internet-connected women had searched online for information related to health, legal rights or transport.[39] In some cities, less than one quarter of connected women had used the Internet to look for a job.[37]

Studies show that despite strong performance in computer and information literacy (CIL), girls do not have confidence in their ICT abilities. According to the International Computer and Information Literacy Study (ICILS) assessment girls' self-efficacy scores (their perceived as opposed to their actual abilities) for advanced ICT tasks were lower than boys'.[40][37]

Location
Internet connectivity can be utilized at a variety of locations such as homes, offices, schools, libraries, public spaces, Internet cafe and others. There are also varying levels of connectivity in rural, suburban, and urban areas.[41][42]

Applications
Common Sense Media, a nonprofit group based in San Francisco, surveyed almost 1,400 parents and reported in 2011 that 47 percent of families with incomes more than $75,000 had downloaded apps for their children, while only 14 percent of families earning less than $30,000 had done so.[43]

Reasons and correlating variables
The gap in a digital divide may exist for a number of reasons. Obtaining access to ICTs and using them actively has been linked to a number of demographic and socio-economic characteristics: among them income, education, race, gender, geographic location (urban-rural), age, skills, awareness, political, cultural and psychological attitudes.[44][45][46][47][48][49][50][51] Multiple regression analysis across countries has shown that income levels and educational attainment are identified as providing the most powerful explanatory variables for ICT access and usage.[52] Evidence was found that Caucasians are much more likely than non-Caucasians to own a computer as well as have access to the Internet in their homes. As for geographic location, people living in urban centers have more access and show more usage of computer services than those in rural areas. Gender was previously thought to provide an explanation for the digital divide, many thinking ICT were male gendered, but controlled statistical analysis has shown that income, education and employment act as confounding variables and that women with the same level of income, education and employment actually embrace ICT more than men (see Women and ICT4D).[53] However, each nation has its own set of causes or the digital divide. For example, the digital divide in Germany is unique because it is not largely due to difference in quality of infrastructure.[54]

One telling fact is that "as income rises so does Internet use ...", strongly suggesting that the digital divide persists at least in part due to income disparities.[55] Most commonly, a digital divide stems from poverty and the economic barriers that limit resources and prevent people from obtaining or otherwise using newer technologies.

In research, while each explanation is examined, others must be controlled in order to eliminate interaction effects or mediating variables,[44] but these explanations are meant to stand as general trends, not direct causes. Each component can be looked at from different angles, which leads to a myriad of ways to look at (or define) the digital divide. For example, measurements for the intensity of usages, such as incidence and frequency, vary by study. Some report usage as access to Internet and ICTs while others report usage as having previously connected to the Internet. Some studies focus on specific technologies, others on a combination (such as Infostate, proposed by Orbicom-UNESCO, the Digital Opportunity Index, or ITU's ICT Development Index).

Economic gap in the United States
During the mid-1990s, the US Department of Commerce, National Telecommunications & Information Administration (NTIA) began publishing reports about the Internet and access to and usage of the resource. The first of three reports is entitled "Falling Through the Net: A Survey of the 'Have Nots' in Rural and Urban America" (1995),[56] the second is "Falling Through the Net II: New Data on the Digital Divide" (1998),[57] and the final report "Falling Through the Net: Defining the Digital Divide" (1999).[58] The NTIA's final report attempted clearly to define the term digital divide; "the digital divide—the divide between those with access to new technologies and those without—is now one of America's leading economic and civil rights issues. This report will help clarify which Americans are falling further behind so that we can take concrete steps to redress this gap."[58] Since the introduction of the NTIA reports, much of the early, relevant literature began to reference the NTIA's digital divide definition. The digital divide is commonly defined as being between the "haves" and "have-nots."[58][59] The economic gap really comes into play when referring to the older generations.

Racial gap

This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (March 2020) (Learn how and when to remove this template message)
Although many groups in society are affected by a lack of access to computers or the Internet, communities of color are specifically observed to be negatively affected by the digital divide. This is evident when it comes to observing home Internet access among different races and ethnicities. 81% of Whites and 83% of Asians have home Internet access, compared to 70% of Hispanics, 68% of Blacks, 72% of American Indian/Alaska Natives, and 68% of Native Hawaiian/Pacific Islanders. Although income is a factor in home Internet access disparities, there are still racial and ethnic inequalities that are present among those within lower income groups. 58% of low income Whites are reported to have home Internet access in comparison to 51% of Hispanics and 50% of Blacks. This information is reported in a report titled "Digital Denied: The Impact of Systemic Racial Discrimination on Home-Internet Adoption" which was published by the DC-based public interest group Fress Press. The report concludes that structural barriers and discrimination that perpetuates bias against people of different races and ethnicities contribute to having an impact on the digital divide. The report also concludes that those who do not have Internet access still have a high demand for it, and reduction in the price of home Internet access would allow for an increase in equitable participation and improve Internet adoption by marginalized groups.[60]

Digital censorship and algorithmic bias are observed to be present in the racial divide. Hate-speech rules as well as hate speech algorithms online platforms such as Facebook have favored white males and those belonging to elite groups in society over marginalized groups in society, such as women and people of color. In a collection of internal documents that were collected in a project conducted by ProPublica, Facebook's guidelines in regards to distinguishing hate speech and recognizing protected groups revealed slides that identified three groups, each one containing either female drivers, black children, or white men. When the question of which subset group is protected is presented, the correct answer was white men . Minority group language is negatively impacted by automated tools of hate detection due to human bias that ultimately decides what is considered hate speech and what is not.

Online platforms have also been observed to tolerate hateful content towards people of color but restrict content from people of color. Aboriginal memes on a Facebook page were posted with racially abusive content and comments depicting Aboriginal people as inferior. While the contents on the page were removed by the originators after an investigation conducted by the Australian Communications and Media Authority, Facebook did not delete the page and has allowed it to remain under the classification of controversial humor . However, a post by an African American woman addressing her uncomfortableness of being the only person of color in a small-town restaurant was met with racist and hateful messages. When reporting the online abuse to Facebook, her account was suspended by Facebook for three days for posting the screenshots while those responsible for the racist comments she received were not suspended. Shared experiences between people of color can be at risk of being silenced under removal policies for online platforms.

Disability gap
Inequities in access to information technologies are present among individuals living with a disability in comparison to those who are not living with a disability. According to The Pew Research Center, 54% of households with a person who has a disability have home Internet access compared to 81% of households that have home Internet access and do not have a person who has a disability.[61] The type of disability an individual has can prevent one from interacting with computer screens and smartphone screens, such as having a quadriplegia disability or having a disability in the hands. However, there is still a lack of access to technology and home Internet access among those who have a cognitive and auditory disability as well. There is a concern of whether or not the increase in the use of information technologies will increase equality through offering opportunities for individuals living with disabilities or whether it will only add to the present inequalities and lead to individuals living with disabilities being left behind in society.[62] Issues such as the perception of disabilities in society, Federal and state government policy, corporate policy, mainstream computing technologies, and real-time online communication have been found to contribute to the impact of the digital divide on individuals with disabilities.

People with disabilities are also the targets of online abuse. Online disability hate crimes have increased by 33% across the UK between 2016–17 and 2017–18 according to a report published by Leonard Cheshire, a health and welfare charity.[63] Accounts of online hate abuse towards people with disabilities were shared during an incident in 2019 when model Katie Price's son was the target of online abuse that was attributed to him having a disability. In response to the abuse, a campaign was launched by Katie Price to ensure that Britain's MP's held those who are guilty of perpetuating online abuse towards those with disabilities accountable.[64] Online abuse towards individuals with disabilities is a factor that can discourage people from engaging online which could prevent people from learning information that could improve their lives. Many individuals living with disabilities face online abuse in the form of accusations of benefit fraud and "faking" their disability for financial gain, which in some cases leads to unnecessary investigations.

Gender gap
Main article: Gender digital divide
A paper published by J. Cooper from Princeton University points out that learning technology is designed to be receptive to men instead of women. The reasoning for this is that most software engineers and programmers are men, and they communicate their learning software in a way that would match the reception of their recipient. The association of computers in education is normally correlated with the male gender, and this has an impact on the education of computers and technology among women, although it is important to mention that there are plenty of learning software that are designed to help women and girls learn technology. Overall, the study presents the problem of various perspectives in society that are a result of gendered socialization patterns that believe that computers are a part of the male experience since computers have traditionally presented as a toy for boys when they are children.[65] This divide is followed as children grow older and young girls are not encouraged as much to pursue degrees in IT and computer science. In 1990, the percentage of women in computing jobs was 36%, however in 2016, this number had fallen to 25%. This can be seen in the underrepresentation of women in IT hubs such as Silicon Valley.[66]

There has also been the presence of algorithmic bias that has been shown in machine learning algorithms that are implemented by major companies.[clarification needed] In 2015, Amazon had to abandon a recruiting algorithm that showed a difference between ratings that candidates received for software developer jobs as well as other technical jobs. As a result, it was revealed that Amazon's machine algorithm was biased against women and favored male resumes over female resumes. This was due to the fact that Amazon's computer models were trained to vet patterns in resumes over a 10-year period. During this ten-year period, the majority of the resumes belong to male individuals, which is a reflection of male dominance across the tech industry.[67]

LGBT gap
A number of states, including some that have introduced new laws since 2010, notably censor voices from and content related to the LGBT community, posing serious consequences to access to information about sexual orientation and gender identity. Digital platforms play a powerful role in limiting access to certain content, such as YouTube's 2017 decision to classify non-explicit videos with LGBT themes as 'restricted', a classification designed to filter out 'potentially inappropriate content'.[68] The Internet provides information that can create a safe space for marginalized groups such as the LGBT community to connect with others and engage in honest dialogues and conversations that are affecting their communities. It can also be viewed as an agent of change for the LGBT community and provide a means of engaging in social justice. It can allow for LGBT individuals who may be living in rural areas or in areas where they are isolated to gain access to information that are not within their rural system as well as gaining information from other LGBT individuals. This includes information such as healthcare, partners, and news. GayHealth provides online medical and health information and Gay and Lesbians Alliance Against Defamation contains online publications and news that focus on human rights campaigns and issues focused on LGBT issues. The Internet also allows LGBT individuals to maintain anonymity. LGBT Tech has emphasized launching newer technologies with 5G technology in order to help close the digital divide that can cause members of the LGBT community to lose access to reliable and fast technology that can provide information on healthcare, economic opportunities, and safe communities.[69]

Age gap
Ambox current red Americas.svg
This article needs to be updated. Please update this article to reflect recent events or newly available information. (July 2020)
Older adults, those ages 60 and up, face various barriers that contribute to their lack of access to information and communication technologies (ICTs). Many adults are "digital immigrants" who have not had lifelong exposure to digital media and have had to adapt to incorporating it in their lives.[70] A study in 2005 found that only 26% of people aged 65 and over were Internet users, compared to 67% in the 50-64 age group and 80% in the 30-49 year age group.[71] This "grey divide" can be due to factors such as concern over security, motivation and self-efficacy, decline of memory or spatial orientation, cost, or lack of support.[72] The aforementioned variables of race, disability, gender, and sexual orientation also add to the barriers for older adults.

Many older adults may have physical or mental disabilities that render them homebound and financially insecure. They may be unable to afford Internet access or lack transportation to use computers in public spaces, the benefits of which would be enhancing their health and reducing their social isolation and depression. Homebound older adults would benefit from Internet use by using it to access health information, use telehealth resources, shop and bank online, and stay connected with friends or family using email or social networks.[73]

Those in more privileged socio-economic positions and with a higher level of education are more likely to have Internet access than those older adults living in poverty. Lack of access to the Internet inhibits "capital-enhancing activities" such as accessing government assistance, job opportunities, or investments. The results of the U.S. Federal Communication Commission's 2009 National Consumer Broadband Service Capability Survey shows that older women are less likely to use the Internet, especially for capital enhancing activities, than their male counterparts.[74]

However, a reverse divide is also happening, as poor and disadvantaged children and teenagers spend more time using digital devices for entertainment and less time interacting with people face-to-face compared to children and teenagers in well-off families.[75]

Historical Background
The ethical roots of the matter of closing the digital divide can be found in the notion of “social contract”, in which Jean Jacques Rousseau advocated that governments should intervene to ensure that any society's economic benefits should be fairly and meaningfully distributed. Amid the Industrial Revolution in Great Britain, Rousseau's idea helped to justify poor laws that created a safety net for those who were harmed by new forms of production. Later when telepgraph and postal systems evolved, many used Rousseau's ideas to argue for full access to those services, even if it meant subsidizing hard to serve citizens. Thus, "universal services"[76] referred to innovations in regulation and taxation that would allow phone services such as AT&T in the United States serve hard to serve rural users. In the 1996, as telecommunications companies merged Internet companies, the Federal Communications Commission adopted Telecommunications Services Act of 1996 to consider regulatory strategies and taxation policies to close the digital divide. Though the term "digital divide" was coined among consumer groups that sought to tax and regulate Information and communications technology (ICT) companies to close digital divide, the topic soon moved onto a global stage. The focus was the World Trade Organization which passed a Telecommunications Services Act, which resisted regulation of ICT companies so that they would be required to serve hard to serve individuals and communities. In an effort to assuage anti-globalization forces, the WTO hosted an event in 1999 in Seattle, USA, called “Financial Solutions to Digital Divide," co-organized by Craig Warren Smith of Digital Divide Institute and Bill Gates Sr. the chairman of the Bill and Melinda Gates Foundation. This event, attended by CEOs of Internet companies, UN Agencies, Prime Ministers, leading international foundations and leading academic institutions was the catalyst for a full scale global movement to close digital divide, which quickly spread virally to all sectors of the global economy.[77]


Facebook divide
The Facebook divide,[78][79][80][81] a concept derived from the "digital divide", is the phenomenon with regard to access to, use of, or impact of Facebook on individual society and among societies. It is suggested at the International Conference on Management Practices for the New Economy (ICMAPRANE-17) on February 10–11, 2017.[82] Additional concepts of Facebook Native and Facebook Immigrants are suggested at the conference. The Facebook Divide, Facebook native, Facebook immigrants, and Facebook left-behind are concepts for social and business management research. Facebook Immigrants are utilizing Facebook for their accumulation of both bonding and bridging social capital. These Facebook Native, Facebook Immigrants, and Facebook left-behind induced the situation of Facebook inequality. In February 2018, the Facebook Divide Index was introduced at the ICMAPRANE[83] conference in Noida, India, to illustrate the Facebook Divide phenomenon.

Overcoming the divide
An individual must be able to connect in order to achieve enhancement of social and cultural capital as well as achieve mass economic gains in productivity.[citation needed] Therefore, access is a necessary (but not sufficient) condition for overcoming the digital divide. Access to ICT meets significant challenges that stem from income restrictions. The borderline between ICT as a necessity good and ICT as a luxury good is roughly around the "magical number" of US$10 per person per month, or US$120 per year,[52] which means that people consider ICT expenditure of US$120 per year as a basic necessity. Since more than 40% of the world population lives on less than US$2 per day, and around 20% live on less than US$1 per day (or less than US$365 per year), these income segments would have to spend one third of their income on ICT (120/365 = 33%). The global average of ICT spending is at a mere 3% of income.[52] Potential solutions include driving down the costs of ICT, which includes low-cost technologies and shared access through Telecentres.

Furthermore, even though individuals might be capable of accessing the Internet, many are thwarted by barriers to entry, such as a lack of means to infrastructure or the inability to comprehend the information that the Internet provides. Lack of adequate infrastructure and lack of knowledge are two major obstacles that impede mass connectivity. These barriers limit individuals' capabilities in what they can do and what they can achieve in accessing technology. Some individuals can connect, but they do not have the knowledge to use what information ICTs and Internet technologies provide them. This leads to a focus on capabilities and skills, as well as awareness to move from mere access to effective usage of ICT.[84]

The United Nations is aiming to raise awareness of the divide by way of the World Information Society Day which has taken place yearly since May 17, 2006.[85] It also set up the Information and Communications Technology (ICT) Task Force in November 2001.[86] Later UN initiatives in this area are the World Summit on the Information Society, which was set up in 2003, and the Internet Governance Forum, set up in 2006.

In the year 2000, the United Nations Volunteers (UNV) programme launched its Online Volunteering service,[87] which uses ICT as a vehicle for and in support of volunteering. It constitutes an example of a volunteering initiative that effectively contributes to bridge the digital divide. ICT-enabled volunteering has a clear added value for development. If more people collaborate online with more development institutions and initiatives, this will imply an increase in person-hours dedicated to development cooperation at essentially no additional cost. This is the most visible effect of online volunteering for human development.[88]

Social media websites serve as both manifestations of and means by which to combat the digital divide. The former describes phenomena such as the divided users' demographics that make up sites such as Facebook and Myspace or Word Press and Tumblr. Each of these sites hosts thriving communities that engage with otherwise marginalized populations. An example of this is the large online community devoted to Afrofuturism, a discourse that critiques dominant structures of power by merging themes of science fiction and blackness. Social media brings together minds that may not otherwise meet, allowing for the free exchange of ideas and empowerment of marginalized discourses.

Libraries

A laptop lending kiosk at Texas A&M University–Commerce's Gee Library
Attempts to bridge the digital divide include a program developed in Durban, South Africa, where deficient access to technology and a lack of documented cultural heritage has motivated the creation of an "online indigenous digital library as part of public library services."[89] This project has the potential to narrow the digital divide by not only giving the people of the Durban area access to this digital resource, but also by incorporating the community members into the process of creating it.

To address the divide The Gates Foundation started the Gates Library Initiative which provides training assistance and guidance in libraries.[90]

In nations where poverty compounds effects of the digital divide, programs are emerging to counter those trends. In Kenya, lack of funding, language, and technology illiteracy contributed to an overall lack of computer skills and educational advancement. This slowly began to change when foreign investment began.[citation needed] In the early 2000s, the Carnegie Foundation funded a revitalization project through the Kenya National Library Service. Those resources enabled public libraries to provide information and communication technologies to their patrons. In 2012, public libraries in the Busia and Kiberia communities introduced technology resources to supplement curriculum for primary schools. By 2013, the program expanded into ten schools.[91]

Effective use
Community Informatics (CI) provides a somewhat different approach to addressing the digital divide by focusing on issues of "use" rather than simply "access". CI is concerned with ensuring the opportunity not only for ICT access at the community level but also, according to Michael Gurstein, that the means for the "effective use" of ICTs for community betterment and empowerment are available.[92] Gurstein has also extended the discussion of the digital divide to include issues around access to and the use of "open data" and coined the term "data divide" to refer to this issue area.[93]

Implications
Social capital
Once an individual is connected, Internet connectivity and ICTs can enhance his or her future social and cultural capital. Social capital is acquired through repeated interactions with other individuals or groups of individuals. Connecting to the Internet creates another set of means by which to achieve repeated interactions. ICTs and Internet connectivity enable repeated interactions through access to social networks, chat rooms, and gaming sites. Once an individual has access to connectivity, obtains infrastructure by which to connect, and can understand and use the information that ICTs and connectivity provide, that individual is capable of becoming a "digital citizen."[44]

Economic disparity
In the United States, the research provided by Sungard Availability Services notes a direct correlation between a company's access to technological advancements and its overall success in bolstering the economy.[94] The study, which includes over 2,000 IT executives and staff officers, indicates that 69 percent of employees feel they do not have access to sufficient technology in order to make their jobs easier, while 63 percent of them believe the lack of technological mechanisms hinders their ability to develop new work skills.[94] Additional analysis provides more evidence to show how the digital divide also affects the economy in places all over the world. A BCG report suggests that in countries like Sweden, Switzerland, and the U.K., the digital connection among communities is made easier, allowing for their populations to obtain a much larger share of the economies via digital business.[95] In fact, in these places, populations hold shares approximately 2.5 percentage points higher.[95] During a meeting with the United Nations a Bangladesh representative expressed his concern that poor and undeveloped countries would be left behind due to a lack of funds to bridge the digital gap.[96]

Education
The digital divide also impacts children's ability to learn and grow in low-income school districts. Without Internet access, students are unable to cultivate necessary tech skills in order to understand today's dynamic economy.[97] Federal Communication Commission's Broadband Task Force created a report showing that about 70% of teachers give students homework that demand access to broadband.[98] Even more, approximately 65% of young scholars use the Internet at home to complete assignments as well as connect with teachers and other students via discussion boards and shared files.[98]  A recent study indicates that practically 50% of students say that they are unable to finish their homework due to an inability to either connect to the Internet or in some cases, find a computer.[98] This has led to a new revelation: 42% of students say they received a lower grade because of this disadvantage.[98] Finally, according to research conducted by the Center for American Progress, "if the United States were able to close the educational achievement gaps between native-born white children and black and Hispanic children, the U.S. economy would be 5.8 percent—or nearly $2.3 trillion—larger in 2050".[99]

In a reverse of this idea, well-off families, especially the tech-savvy parents in Silicon Valley, carefully limit their own children's screen time. The children of wealthy families attend play-based preschool programs that emphasize social interaction instead of time spent in front of computers or other digital devices, and they pay to send their children to schools that limit screen time.[75] American families that cannot afford high-quality childcare options are more likely to use tablet computers filled with apps for children as a cheap replacement for a babysitter, and their government-run schools encourage screen time during school.[75]

Demographic differences
Ambox current red Americas.svg
This section needs to be updated. Please update this article to reflect recent events or newly available information. (August 2019)
Furthermore, according to the 2012 Pew Report "Digital Differences," a mere 62% of households who make less than $30,000 a year use the Internet, while 90% of those making between $50,000 and $75,000 had access.[97]   Studies also show that only 51% of Hispanics and 49% of African Americans have high-speed Internet at home. This is compared to the 66% of Caucasians that too have high-speed Internet in their households.[97] Overall, 10% of all Americans do not have access to high-speed Internet, an equivalent of almost 34 million people.[100] Supplemented reports from the Guardian demonstrate the global effects of limiting technological developments in poorer nations, rather than simply the effects in the United States. Their study shows that rapid digital expansion excludes those who find themselves in the lower class. 60% of the world's population, almost 4 billion people, have no access to the Internet and are thus left worse off.[101]

Criticisms
Knowledge divide
Since gender, age, racial, income, and educational digital divides have lessened compared to the past, some researchers suggest that the digital divide is shifting from a gap in access and connectivity to ICTs to a knowledge divide.[102] A knowledge divide concerning technology presents the possibility that the gap has moved beyond the access and having the resources to connect to ICTs to interpreting and understanding information presented once connected.[103]

Second-level digital divide
The second-level digital divide, also referred to as the production gap, describes the gap that separates the consumers of content on the Internet from the producers of content.[104] As the technological digital divide is decreasing between those with access to the Internet and those without, the meaning of the term digital divide is evolving.[102] Previously, digital divide research has focused on accessibility to the Internet and Internet consumption. However, with more and more of the population gaining access to the Internet, researchers are examining how people use the Internet to create content and what impact socioeconomics are having on user behavior.[105][106] New applications have made it possible for anyone with a computer and an Internet connection to be a creator of content, yet the majority of user-generated content available widely on the Internet, like public blogs, is created by a small portion of the Internet-using population. Web 2.0 technologies like Facebook, YouTube, Twitter, and Blogs enable users to participate online and create content without having to understand how the technology actually works, leading to an ever-increasing digital divide between those who have the skills and understanding to interact more fully with the technology and those who are passive consumers of it.[104] Many are only nominal content creators through the use of Web 2.0, posting photos and status updates on Facebook, but not truly interacting with the technology.

Some of the reasons for this production gap include material factors like the type of Internet connection one has and the frequency of access to the Internet. The more frequently a person has access to the Internet and the faster the connection, the more opportunities they have to gain the technology skills and the more time they have to be creative.[107]

Other reasons include cultural factors often associated with class and socioeconomic status. Users of lower socioeconomic status are less likely to participate in content creation due to disadvantages in education and lack of the necessary free time for the work involved in blog or web site creation and maintenance.[107] Additionally, there is evidence to support the existence of the second-level digital divide at the K-12 level based on how educators' use technology for instruction.[108] Schools' economic factors have been found to explain variation in how teachers use technology to promote higher-order thinking skills.[108]

The global digital divide
Main article: Global digital divide
See also: World Summit on the Information Society and Digital divide by country
The global digital divide describes global disparities, primarily between developed and developing countries, in regards to access to computing and information resources such as the Internet and the opportunities derived from such access.[109] As with a smaller unit of analysis, this gap describes an inequality that exists, referencing a global scale.

The Internet is expanding very quickly, and not all countries—especially developing countries—can keep up with the constant changes. The term "digital divide" does not necessarily mean that someone does not have technology; it could mean that there is simply a difference in technology. These differences can refer to, for example, high-quality computers, fast Internet, technical assistance, or telephone services. The difference between all of these is also considered a gap.

There is a large inequality worldwide in terms of the distribution of installed telecommunication bandwidth. In 2014 only three countries (China, US, Japan) host 50% of the globally installed bandwidth potential (see pie-chart Figure on the right).[22] This concentration is not new, as historically only ten countries have hosted 70–75% of the global telecommunication capacity (see Figure). The U.S. lost its global leadership in terms of installed bandwidth in 2011, being replaced by China, which hosts more than twice as much national bandwidth potential in 2014 (29% versus 13% of the global total).[22]

See also
Library resources about
Digital divide
Resources in your library
Resources in other libraries
Achievement gap
Civic opportunity gap
Computer technology for developing areas
Digital divide by country
Digital divide in Canada
Digital divide in China
Digital divide in South Africa
Digital divide in Thailand
Digital rights
Digital Society Day (October 17 in India)
Global Internet usage
Government by algorithm
Information society
International communication
Internet geography
Internet governance
List of countries by Internet connection speeds
Light-weight Linux distribution
Literacy
National broadband plans from around the world
NetDay
Net neutrality
Rural Internet
Groups devoted to digital divide issues
Center for Digital Inclusion
Digital Textbook a South Korean Project that intends to distribute tablet notebooks to elementary school students.
Inveneo
TechChange
United Nations Information and Communication Technologies Task Force



Deep ecology
https://en.wikipedia.org/wiki/Deep_ecology
Deep ecology is an environmental philosophy which promotes the inherent worth of all living beings regardless of their instrumental utility to human needs, plus the restructuring of modern human societies in accordance with such ideas.

Deep ecology argues that the natural world is a complex of relationships in which the existence of organisms is dependent on the existence of others within ecosystems. It argues that non-vital human interference with or destruction of the natural world poses a threat therefore not only to humans but to all organisms constituting the natural order.

Deep ecology's core principle is the belief that the living environment as a whole should be respected and regarded as having certain basic moral and legal rights to live and flourish, independent of its instrumental benefits for human use. Deep ecology is often framed in terms of the idea of a much broader sociality; it recognizes diverse communities of life on Earth that are composed not only through biotic factors but also, where applicable, through ethical relations, that is, the valuing of other beings as more than just resources. It is described as "deep" because it is regarded as looking more deeply into the actual reality of humanity's relationship with the natural world arriving at philosophically more profound conclusions than those of mainstream environmentalism.[1] The movement does not subscribe to anthropocentric environmentalism (which is concerned with conservation of the environment only for exploitation by and for human purposes), since deep ecology is grounded in a different set of philosophical assumptions. Deep ecology takes a holistic view of the world human beings live in and seeks to apply to life the understanding that the separate parts of the ecosystem (including humans) function as a whole. The philosophy addresses core principles of different environmental and green movements and advocates a system of environmental ethics advocating wilderness preservation, non-coercive policies encouraging human population decline, and simple living.[2]


Contents
1	Origins
2	Principles
3	Development
4	Sources
5	Aspects
5.1	Environmental education
5.2	Spirituality
6	Criticisms
6.1	Eurocentric bias
6.2	Knowledge of nonhuman interests
6.3	Deepness
6.4	Misanthropy
6.5	Sciencism
6.6	Utopianism
7	Links with other philosophies
8	Notable advocates of deep ecology
9	See also
10	References
11	Bibliography
12	Further reading
Origins
In his original 1973 deep ecology paper,[3] Arne Næss stated that he was inspired by ecologists who were studying the ecosystems throughout the world. In a 2014 essay,[4] environmentalist George Sessions identified three people active in the 1960s whom he considered foundational to the movement: author and conservationist Rachel Carson, environmentalist David Brower, and biologist Paul R. Ehrlich. Sessions considers the publication of Carson's 1962 seminal book Silent Spring as the beginning of the contemporary deep ecology movement.[4] Næss also considered Carson the originator of the movement, stating "Eureka, I have found it" upon encountering her writings.[5]

Other events in the 1960s which have been proposed as foundational to the movement are the formation of Greenpeace, and the images of the Earth floating in space taken by the Apollo astronauts.[6]

Principles
Deep ecology proposes an embracing of ecological ideas and environmental ethics (that is, proposals about how humans should relate to nature).[7] It is also a social movement based on a holistic vision of the world.[1] Deep ecologists hold that the survival of any part is dependent upon the well-being of the whole, and criticise the narrative of human supremacy, which they say has not been a feature of most cultures throughout human evolution.[6] Deep ecology presents an eco-centric (earth-centred) view, rather than the anthropocentric (human centred) view, developed in its most recent form by philosophers of the Enlightenment, such as Newton, Bacon, and Descartes. Proponents of deep ecology oppose the narrative that man is separate from nature, is in charge of nature, or is the steward of nature,[8] or that nature exists as a resource to be freely exploited. They cite the fact that indigenous peoples under-exploited their environment and retained a sustainable society for thousands of years, as evidence that human societies are not necessarily destructive by nature. They believe a different economic system must replace capitalism, as the commodification of nature by industrial civilization, based on the concept of economic growth, or 'progress', is critically endangering the biosphere. Deep ecologists believe that the damage to natural systems sustained since the industrial revolution now threatens social collapse and possible extinction of the species. They are striving to bring about ideological, economic and technological change. Deep ecology claims that ecosystems can absorb damage only within certain parameters, and contends that civilization endangers the biodiversity of the earth. Deep ecologists have suggested that the optimum human population on the earth, without fossil fuels, is 0.5 billion, but advocate a gradual decrease in population rather than any apocalyptic solution.[9] Deep ecology eschews traditional left wing-right wing politics, but is viewed as radical ('Deep Green') in its opposition to capitalism, and its advocacy of an ecological paradigm. Unlike conservation, deep ecology does not advocate the controlled preservation of the landbase, but rather 'non-interference' with natural diversity except for vital needs. In citing 'humans' as being responsible for excessive environmental destruction, deep ecologists actually refer to 'humans within civilization, especially industrial civilization', accepting the fact that the vast majority of humans who have ever lived did not live in environmentally destructive societies - the excessive damage to the biosphere has been sustained mostly over the past hundred years.

In 1985 Bill Devall and George Sessions summed up their understanding of the concept of deep ecology with the following eight points:[10]

The well-being of human and nonhuman life on earth is of intrinsic value irrespective of its value to humans.
The diversity of life-forms is part of this value.
Humans have no right to reduce this diversity except to satisfy vital human needs
The flourishing of human and nonhuman life is compatible with a substantial decrease in human population.
Humans have interfered with nature to a critical level already, and interference is worsening.
Policies must be changed, affecting current economic, technological and ideological structures.
This ideological change should focus on an appreciation of the quality of life rather than adhering to an increasingly high standard of living.
All those who agree with the above tenets have an obligation to implement them.
Development

YPJ members in a greenhouse farm, for ecological cooperative farming in Rojava (AANES)
The phrase "Deep Ecology" first appeared in a 1973 article by the Norwegian philosopher Arne Næss,.[3] Næss referred to 'biospherical egalitarianism-in principle', which he explained was 'an intuitively clear and obvious value axiom. Its restriction to humans is … anthropocentrism with detrimental effects upon the life quality of humans themselves... The attempt to ignore our dependence and to establish a master-slave role has contributed to the alienation of man from himself.'[11] Næss added that from a deep ecology point of view "the right of all forms [of life] to live is a universal right which cannot be quantified. No single species of living being has more of this particular right to live and unfold than any other species".[12] As Bron Taylor and Michael Zimmerman have recounted, 'a key event in the development of deep ecology was the “Rights of Non-Human Nature” conference held at a college in Claremont, California in 1974 [which] drew many of those who would become the intellectual architects of deep ecology. These included George Sessions who, like Naess, drew on Spinoza’s pantheism, later co-authoring Deep Ecology - [Living as if Nature Mattered] with Bill Devall; Gary Snyder, whose remarkable, Pulitzer prize-winning Turtle Island proclaimed the value of place-based spiritualities, indigenous cultures, and animistic perceptions, ideas that would become central within deep ecology subcultures; and Paul Shepard, who in The Tender Carnivore and the Sacred Game, and subsequent works such as Nature and Madness and Coming Home to the Pleistocene, argued that foraging societies were ecologically superior to and emotionally healthier than agricultur[al societies]. Shepard and Snyder especially provided a cosmogony that explained humanity’s fall from a pristine, nature paradise. Also extremely influential was Edward Abbey’s Desert Solitaire, which viewed the desert as a sacred place uniquely able to evoke in people a proper, non-anthropocentric understanding of the value of nature. By the early 1970s the above figures put in place the intellectual foundations of deep ecology.'[13] Murray Bookchin a anarchist philosopher played a major role in devolving deep ecology through the 1980s.[14][15][16]

Sources

Old-growth forest in Biogradska Gora National Park, Montenegro
Deep ecology is an eco-philosophy derived from intuitive ethical principles. It does not claim to be a science, but is based generally on the new physics, which, in the early 20th century, undermined the reductionist approach and the notion of objectivity, demonstrating that humans are an integral part of nature - a concept always held by primal peoples.[17][18] Duvall and Sessions, however, note that the work of many ecologists has encouraged the adoption of an ecological consciousness, quoting environmentalist Aldo Leopold's view that such a consciousness changes the role of Homo sapiens from conqueror of the land community to plain member and citizen of it.[19] Though some detractors assert that deep ecology is based on the discredited idea of the 'balance of nature', deep ecologists have made no such claim. They do not dispute the theory that human cultures can have a benevolent effect on the landbase, only the idea of the control of nature, or human supremacy, which is the central pillar of the industrial paradigm. The tenets of deep ecology state that humans have no right to interfere with natural diversity except for vital needs: the distinction between vital and other needs cannot be drawn precisely.[20] Deep ecologists reject any mechanical or computer model of nature, and see the earth as a living organism, which should be treated and understood accordingly.[21]

Arne Næss used Baruch Spinoza as a source, particularly his notion that everything that exists is part of a single reality.[22] Others have copied Næss in this, including Eccy de Jonge[23] and Brenden MacDonald.[24]

Aspects
Environmental education
In 2010 Richard Kahn promoted the movement of ecopedagogy, proposing using radical environmental activism as an educational principle to teach students to support "earth democracy" which promotes the rights of animals, plants, fungi, algae and bacteria. The biologist Dr Stephan Harding has developed the concept of 'holistic science', based on principles of ecology and deep ecology. In contrast with materialist, reductionist science, holistic science studies natural systems as a living whole. 'We encourage … students to use [their] sense of belonging to an intelligent universe (revealed by deep experience),' Harding has written, 'for deeply questioning their fundamental beliefs, and for translating these beliefs into personal decisions, lifestyles and actions. The emphasis on action is important. This is what makes deep ecology a movement as much as a philosophy.'[25]

Spirituality
Næss criticised the Judeo-Christian tradition, stating the Bible's "arrogance of stewardship consists in the idea of superiority which underlies the thought that we exist to watch over nature like a highly respected middleman between the Creator and Creation".[12] Næss further criticizes the reformation's view of creation as property to be put into maximum productive use.

Criticisms
Eurocentric bias
Guha and Martinez-Allier critique the four defining characteristics of deep ecology. First, because deep ecologists believe that environmental movements must shift from an anthropocentric to an ecocentric approach, they fail to recognize the two most fundamental ecological crises facing the world today, 1) overconsumption in the global north and 2) increasing militarization. Second, deep ecology's emphasis on wilderness provides impetus for the imperialist yearning of the West. Third, deep ecology appropriates Eastern traditions, characterizes Eastern spiritual beliefs as monolithic, and denies agency to Eastern peoples. And fourth, because deep ecology equates environmental protection with wilderness preservation its radical elements are confined within the American wilderness preservationist movement.[26] Deep ecologists, however, point to the incoherence of this discourse, not as a 'Third World Critique' but as a critique by the capitalist elites of third world countries seeking to legitimise the exploitation of local ecosystems for economic gain, in concert with the global capitalist system. An example of such exploitation is the ongoing deforestation of the Amazon in Brazil under President Jair Bolsonaro.[27]

Knowledge of nonhuman interests
Animal rights activists state that for an entity to require intrinsic rights, it must have interests.[28] Deep ecologists are criticised for insisting they can somehow understand the thoughts and interests of non-humans such as plants or protists, which they claim thus proves that non-human lifeforms have intelligence. For example, a single-celled bacteria might move towards a certain chemical stimulation, although such movement might be rationally explained, a deep ecologist might say that this was all invalid because according to his better understanding of the situation that the intention formulated by this particular bacteria was informed by its deep desire to succeed in life. One criticism of this belief is that the interests that a deep ecologist attributes to non-human organisms such as survival, reproduction, growth, and prosperity are really human interests. Deep ecologists counter this criticism by the assertion that intelligence is not specific to humans, but a property of the totality of the universe of which humans are a manifestation.[29]

Deepness
When Arne Næss coined the term deep ecology, he compared it favourably with shallow ecology which he criticized for its utilitarian and anthropocentric attitude to nature and for its materialist and consumer-oriented outlook,[30] describing its "central objective" as "the health and affluence of people in the developed countries."[31] William D. Grey believes that developing a non-anthropocentric set of values is "a hopeless quest". He seeks an improved "shallow" view.[32] Deep ecologists point out, however, that shallow ecology - resource management conservation - is counter-productive, since it serves mainly to support capitalism - the means through which industrial civilization destroys the biosphere. The eco-centric view thus only becomes 'hopeless' within the structures and ideology of civilization. Outside it, however, a non-anthropocentric world view has characterised most 'primal' cultures since time immemorial, and, in fact, obtained in many indigenous groups until the industrial revolution and after.[33] Some cultures still hold this view today. As such, the eco-centric narrative is in not alien to humans, and may be seen as the normative ethos in human evolution.[34] Grey's view represents the reformist discourse that deep ecology has rejected from the beginning.[35]

Misanthropy
Social ecologist Murray Bookchin interpreted deep ecology as being misanthropic, due in part to the characterization of humanity by David Foreman of Earth First!, as a pathological infestation on the Earth. Bookchin mentions that some, like Foreman, defend misanthropic measures such as organising the rapid genocide of most of humanity.[36]

In response, deep ecologists have argued that Foreman's statement clashes with the core narrative of deep ecology, the first tenet of which stresses the intrinsic value of both nonhuman and human life. Arne Naess suggested a slow decrease in human population over an extended period, not genocide.[37] Bookchin's second major criticism is that deep ecology fails to link environmental crises with authoritarianism and hierarchy. He suggests that deep ecologists fail to recognise the potential for human beings to solve environmental issues.[38]

In response, Deep Ecologists have argued that industrial civilization, with its class hierarchy, is the sole source of the ecological crisis.[39] The eco-centric worldview precludes any acceptance of social class or authority based on social status.[40] Deep ecologists believe that since ecological problems are created by industrial civilization, the only solution is the deconstruction of the culture itself.[41]

Sciencism
Daniel Botkin concludes that although deep ecology challenges the assumptions of western philosophy, and should be taken seriously, it derives from a misunderstanding of scientific information and conclusions based on this misunderstanding, which are in turn used as justification for its ideology. It begins with an ideology and is political and social in focus. Botkin has also criticized Næss's assertion that all species are morally equal and his disparaging description of pioneering species.[42] Deep ecologists counter this criticism by asserting that a concern with political and social values is primary, since the destruction of natural diversity stems directly from the social structure of civilization, and cannot be halted by reforms within the system. They also cite the work of environmentalists and activists such as Rachel Carson, Aldo Leopold, John Livingston, and others as being influential, and are occasionally critical of the way the science of ecology has been misused.[43] Naess' concept of the equality of species in principle reflects an ethical view of the disproportionate consumption of natural resources by a single species. This intuitive observation is born out by the current perilous environmental situation.[citation needed]

Utopianism
Eco-critic Jonathan Bate has called deep ecologists 'utopians', pointing out that 'utopia' actually means 'nowhere' and quoting Rousseau's claim that 'the state of nature no longer exists and perhaps never did and probably never will'. Bate asked how a planet crowded with cities, 'could possibly be returned to the state of nature? And ...who would we want to return it there? ... Life in the state of nature, Thomas Hobbes reminded readers of Leviathan in 1650, is solitary, poor, ignorant, brutish and short. It may be necessary to critique the values of the Enlightenment, but to reject enlightenment altogether would be to reject justice, political liberty and altruism.'[44]

Bates' criticism rests partly on the idea that industrial civilization and the technics it depends on are themselves 'natural' because they are made by humans. Deep ecologists have pointed out that the concept of technics being 'natural' and therefore 'morally neutral' is a delusion of industrial civilization: there can be nothing 'neutral' about nuclear weapons, for instance, whose sole purpose is large scale destruction. Quoting the historian Lewis Mumford,[45] deep ecologist Derrick Jensen divides technology into 'democratic' and 'authoritarian' technics ('technics' includes both technical and cultural aspects of technology) While 'democratic' technics, available to small communities, may be neutral, 'authoritarian' technics, available only to large-scale, hierarchical, authoritarian, societies, are not. Such technics are not only unsustainable, but 'are driving planetary murder'. They need urgently to be abandoned, as supported by tenet #6 of the deep ecology code.[46]

With reference to the degree to which landscapes are 'natural' Peter Wohlleben has drawn a temporal line roughly equivalent to the development of Jensen's 'authoritarian' technics - to the agricultural revolution, about 10,000 years ago, when 'selective farming practices began to change species. This is also the time when the landscape began to be intentionally transformed into an ecosystem completely devoted to meeting human needs.[47]

With regard to Hobbes's pronouncement on 'the state of nature', deep ecologists and others have long ago pointed out that it is entirely false, and was made simply to legitimize the idea of a putative 'social contract' by which some humans are subordinate to others. There is no evidence that members of primal societies, employing 'democratic technics', lived shorter lives than those in civilization (at least before the 20th century); their lives were the opposite of solitary, since they lived in close-knit communities, and while 'poverty' is a social relation non-existent in sharing cultures, 'ignorant' and 'brutish' both equate to the term 'savage' used by colonials of primal peoples, referring simply to the absence of authoritarian technics in their cultures. Justice, political liberty and altruism are characteristic of egalitarian primal societies rather than civilization, which is defined by class hierarchies and is therefore by definition unjust, immoral, and lacking in altruism.

Links with other philosophies
Peter Singer critiques anthropocentrism and advocates for animals to be given rights. However, Singer has disagreed with deep ecology's belief in the intrinsic value of nature separate from questions of suffering.[48] Zimmerman groups deep ecology with feminism and civil rights movements.[49] Nelson contrasts it with "ecofeminism".[50] The links with animal rights are perhaps the strongest, as "proponents of such ideas argue that 'all life has intrinsic value'".[51]

David Foreman, the co-founder of the radical direct-action movement Earth First!, has said he is an advocate for deep ecology.[52][53] At one point Arne Næss also engaged in direct action when he chained himself to rocks in front of Mardalsfossen, a waterfall in a Norwegian fjord, in a successful protest against the building of a dam.[54]

Some have linked the movement to green anarchism as evidenced in a compilation of essays titled Deep Ecology & Anarchism.[55]

The object-oriented ontologist Timothy Morton has explored similar ideas in the books Ecology without Nature: Rethinking Environmental Aesthetics (2009) and Dark Ecology: For a Logic of Future Coexistence (2016).[56][57]

Notable advocates of deep ecology
David Abram
Michael Asher
Thomas Berry
Wendell Berry
Leonardo Boff
Fritjof Capra
Michael Dowd
Vivienne Elanta
David Foreman
Warwick Fox
Chellis Glendinning
Edward Goldsmith
Félix Guattari
Paul Hawken
Martin Heidegger
Julia Butterfly Hill
Derrick Jensen
Bernie Krause
Satish Kumar
Dolores LaChapelle
Gilbert LaFreniere
Pentti Linkola
Joanna Macy
Jerry Mander
Freya Mathews
W. S. Merwin
Peter Newman
Helena Norberg-Hodge
David Orton
Val Plumwood
Theodore Roszak
Elena Sharoykina
Paul Shepard
Gary Snyder
Timothy Sprigge
Richard Sylvan
Douglas Tompkins
Robin Wall Kimmerer
Oberon Zell-Ravenheart
John Zerzan



Cultural capital
https://en.wikipedia.org/wiki/Cultural_capital#Origin
From Wikipedia, the free encyclopedia
Jump to navigationJump to search
This article is about the sociological term. For cities and locations, see Capital of Culture.
Part of a series on
Sociology
Social Network Diagram (segment).svg
HistoryOutlineIndex
Methods
Subfields
CriminologyCritical theoryCultureDemographyDevelopmentDevianceEconomicEducationEnvironmentalFamilyFeministGenderHealthImmigrationIndustrialKnowledgeLawLiteratureMedicalMilitaryOrganizationalPoliticalRace and ethnicityReligionRuralScienceSocial movementsSocial psychologySymbolic interactionismStratificationTechnologyTerrorismUrban
People
Historical perspectives
Lists
Social sciences.svg Society portal
vte
In the field of sociology, cultural capital comprises the social assets of a person (education, intellect, style of speech, style of dress, etc.) that promote social mobility in a stratified society.[1] Cultural capital functions as a social relation within an economy of practices (i.e., system of exchange), and includes the accumulated cultural knowledge that confers social status and power.[2][3] It comprises all of the material and symbolic goods, without distinction, that society considers rare and worth seeking.[4]

The concept was coined by Pierre Bourdieu and Jean-Claude Passeron in "Cultural Reproduction and Social Reproduction" (1977). It was expanded on by Bourdieu in his essay "The Forms of Capital" (1985) and his book The State Nobility: Élite Schools in the Field of Power (1996). In the essay, Bourdieu describes cultural capital as a person's education (knowledge and intellectual skills) that provides advantage in achieving a higher social-status in society.[5]

There are three types of cultural capital: embodied capital; objectified capital, and institutionalised capital.


Contents
1	Origin
2	Types
2.1	Embodied cultural capital
2.1.1	Habitus and field
2.2	Objectified cultural capital
2.3	Institutionalized cultural capital
3	Theoretical research
3.1	Traditional application
3.2	Expansion
3.2.1	Education
3.2.2	Cultural omnivores
3.2.3	Science capital
4	Criticism
5	See also
6	References
6.1	Citations
6.2	Primary sources
6.3	Secondary sources
7	Further reading
8	External links
Origin
In "Cultural Reproduction and Social Reproduction" (1977), Pierre Bourdieu and Jean-Claude Passeron presented cultural capital to conceptually explain the differences among the levels of performance and academic achievement of children within the educational system of France in the 1960s.

Bourdieu further developed the concept in his essay "The Forms of Capital" (1985) and in his book The State Nobility: Élite Schools in the Field of Power (1996). In the essay, Bourdieu lists cultural capital among two other categories of capital: economic capital, which refers to the command of economic resources (money, assets, property); and social capital, which is the actual and potential resources linked to the possession of a durable network of institutionalized relationships of mutual acquaintance and recognition.[5]:56

Types
File:Cultural Capital.webm
Cultural capital and its types.
There are three types of cultural capital: embodied capital; objectified capital, and institutionalised capital.

Embodied cultural capital
Embodied cultural capital comprises the knowledge that is consciously acquired and passively inherited, by socialization to culture and tradition. Unlike property, cultural capital is not transmissible, but is acquired over time, as it is impressed upon the person's habitus (i.e., character and way of thinking), which, in turn, becomes more receptive to similar cultural influences. Linguistic cultural capital is the mastery of language and its relations; the embodied cultural capital, which is a person's means of communication and self-presentation, acquired from the national culture.[6]

Habitus and field
The cultural capital of a person is linked to his or her habitus (i.e., embodied disposition and tendencies) and field (i.e., social positions), which are configured as a social-relation structure.[7]

The habitus of a person is composed of the intellectual dispositions inculcated to him or her by family and the familial environment, and are manifested according to the nature of the person.[8][9][10] As such, the social formation of a person's habitus is influenced by family,[11] by objective changes in social class,[12] and by social interactions with other people in daily life;[13] moreover, the habitus of a person also changes when he or she changes social positions within the field.[14]

The field is the place of social position that is constituted by the conflicts that occur when social groups endeavour to establish and define what is cultural capital, within a given social space; therefore, depending upon the social field, one type of cultural capital can simultaneously be legitimate and illegitimate. In that way, the legitimization (societal recognition) of a type of cultural capital can be arbitrary and derived from symbolic capital.

Objectified cultural capital
Objectified cultural capital comprises the person's property (e.g. a work of art, scientific instruments, etc.) that can be transmitted for economic profit (buying-and-selling) and for symbolically conveying the possession of cultural capital facilitated by owning such things. Yet, whilst possessing a work of art (objectified cultural-capital) the person can consume the art (understand its cultural meaning) only with the proper conceptual and historical foundations of prior cultural-capital. As such, cultural capital is not transmitted in the sale of the work of art, except by coincidental and independent causation, when the seller explains the artwork's significance to the buyer.[citation needed]

Institutionalized cultural capital
Institutionalized cultural capital comprises an institution's formal recognition of a person's cultural capital, usually academic credentials or professional qualifications. The greatest social role of institutionalized cultural-capital is in the labor market (a job), wherein it allows the expression of the person's array of cultural capital as qualitative and quantitative measurements (which are compared against the measures of cultural capital of other people). The institutional recognition facilitates the conversion of cultural capital into economic capital, by serving as a heuristic (practical solution) with which the seller can describe his or her cultural capital to the buyer.[5]:47

Theoretical research
The concept of cultural capital has received widespread attention all around the world, from theorists and researchers alike. It is mostly employed in relation to the education system, but on the odd occasion has been used or developed in other discourses. Use of Bourdieu's cultural capital can be broken up into a number of basic categories. First, are those who explore the theory as a possible means of explanation or employ it as the framework for their research. Second, are those who build on or expand Bourdieu's theory. Finally, there are those who attempt to disprove Bourdieu's findings or to discount them in favour of an alternative theory. The majority of these works deal with Bourdieu's theory in relation to education, only a small number apply his theory to other instances of inequality in society.[citation needed]

Traditional application
Those researchers and theorists[who?] who explore or employ Bourdieu's theory use it in a similar way as it was articulated by Bourdieu. They usually apply it uncritically,[citation needed] and depending on the measurable indicators of cultural capital and the fields within which they measure it, Bourdieu's theory either works to support their argument totally, or in a qualified way.[citation needed] These works to help portray the usefulness of Bourdieu's concept in analysing (mainly educational) inequality but they do not add anything to the theory.[citation needed]

One work that does employ Bourdieu's work in an enlightening way is that of Emirbayer & Williams (2005), who use Bourdieu's notion of fields and capital to examine the power relations in the field of social services, particularly homeless shelters.[15] The authors talk of the two separate fields that operate in the same geographic location (the shelter) and the types of capital that are legitimate and valued in each. Specifically they show how homeless people can possess "staff-sanctioned capital" or "client-sanctioned capital" and show how in the shelter, they are both at the same time, desirable and undesirable, valued and disparaged, depending on which of the two fields they are operating in.[15]:92 Although the authors do not clearly define staff-sanctioned and client-sanctioned capital as cultural capital, and state that usually the resources that form these two capitals are gathered from a person's life as opposed to their family, it can be seen how Bourdieu's theory of cultural capital can be a valuable theory in analysing inequality in any social setting.

Expansion
A number of works expand Bourdieu's theory of cultural capital in a beneficial manner, without deviating from Bourdieu's framework of the different forms of capital. In fact, these authors can be seen to explore unarticulated areas of Bourdieu's theory as opposed to constructing a new theory.

On the other hand, some have introduced new variables into Bourdieu's concept of cultural capital. The work of Emmison & Frow (1998) centers on an exploration of the ability of Information Technology to be considered a form of cultural capital.[16] The authors state that "a familiarity with, and a positive disposition towards the use of bourgeoisie technologies of the information age can be seen as an additional form of cultural capital bestowing advantage on those families that possess them." Specifically computers are "machines" that form a type of objectified cultural capital,[5]:47 and the ability to use them is an embodied type of cultural capital. This work is useful because it shows the ways in which Bourdieu's concept of cultural capital can be expanded and updated to include cultural goods and practices which are progressively more important in determining achievement both in the school and without.

Dolby (2000) cites the work of Hage, who uses Bourdieu's theory of cultural capital to explore multiculturalism and racism in Australia.[17] Hage's discussion around race is distinct from Bourdieu's treatment of migrants and their amount of linguistic capital and habitus. Hage actually conceives of "whiteness"[17]:49 as being a form of cultural capital. 'White' is not a stable, biologically determined trait, but a "shifting set of social practices."[17]:49 He conceptualizes the nation as a circular field, with the hierarchy moving from the powerful center (composed of 'white' Australians) to the less powerful periphery (composed of the 'others'). The 'others' however are not simply dominated, but are forced to compete with each other for a place closer to the centre. This use of Bourdieu's notion of capital and fields is extremely illuminating to understand how people of non-Anglo ethnicities may try and exchange the cultural capital of their ethnic background with that of 'whiteness' to gain a higher position in the hierarchy. It is especially useful to see it in these terms as it exposes the arbitrary nature of what is "Australian", and how it is determined by those in the dominant position (mainly 'white' Australians). In a path-breaking study, Bauder (2006) uses the notions of habitus and cultural capital to explain the situation of migrants in the labor market and society.[18]

Bourdieu's theory has been expanded to reflect modern forms of cultural capital. For instance, studies conducted by Asaf Nissenbaum and Limor Shifman (2017) on the topic of internet memes, utilising the website 4chan to analyse how these memes can be seen as forms of cultural capital.☃☃ Discourse demonstrates the different forums and mediums that memes can be expressed through, such as different 'boards' on 4chan. Additionally, scholars have extended Bourdieu's theory to the field of religion where embodied cultural capital allows middle classes for developing distinctive religious styles and tastes.[19] Through these styles and tastes, they draw symbolic class boundaries in opposition to co-believers from lower-class backgrounds.

Education
Sociologist Paul DiMaggio expands on Bourdieu's view on cultural capital and its influence on education: "Following Bourdieu, I measure high school students' cultural capital using self-reports of involvement in art, music, and literature."[20]

Retired teacher John Taylor Gatto, in his article "Against School" (2003), addresses education in modern schooling. The relation of cultural capital can be linked to Alexander Inglis' Principles of Secondary Education (1918), which indicates how American schooling is what like Prussian schooling in the 1820s. The objective was to divide children into sections, by distributing them by subject, by age, and by test score. Inglis introduces six basic functions for modern schooling; the third, fourth, and fifth basic functions listed bt Inglis are related to cultural capital, and describe the manner in which schooling enforces the cultural capital of each child, from a young age:

Diagnosis and direction (function #3):↵School is meant to determine the proper social role of each student, by logging mathematic and anecdotal evidence into cumulative records.
Differentiation (function #4): Once the social role of a student is determined, the children are sorted by role and trained only as merited for his or her social destination.
Selection (function #5): This refers to Darwin's theory of natural selection applied to "the favoured races".
The idea is to help American society by consciously attempting to improve the breeding stock. Schools are meant to tag the socially unfit with poor grades, remedial-schooling placement, and other notable social punishments that their peers will then view and accept them as intellectually inferior, and effectively bar them from the reproductive (sexual, economic, and cultural) sweepstakes of life. That was the purpose of petty humiliation in school: "It was the dirt down the drain." The three functions are directly related to cultural capital, because through schooling children are discriminated by social class and cognitively placed into the destination that will make them fit to sustain that social role. That is the path leading to their determined social class; and, during the fifth function, they will be socially undesirable to the privileged children, and so kept in a low social stratum.

Stanton-Salazar & Dornbusch (1995) examine how those people with the desired types of cultural (and linguistic) capital in a school transform this capital into "instrumental relations" or social capital with institutional agents who can transmit valuable resources to the person, furthering their success in the school.[21]:121 They state that this is simply an elaboration of Bourdieu's theory. Similarly, Dumais (2002) introduces the variable of gender to determine the ability of cultural capital to increase educational achievement.[22] The author shows how gender and social class interact to produce different benefits from cultural capital. In fact in Distinction, Bourdieu states "sexual properties are as inseparable from class properties as the yellowness of lemons is inseparable from its acidity."[23] He simply did not articulate the differences attributable to gender in his general theory of reproduction in the education system.

Cultural omnivores
Extending the theory of cultural capital, Richard A. Peterson and A. Simkus (1992) distinguish the (secondary) analysis of survey data on Americans exclusively.[24] They use the term cultural omnivores as a particular higher status section in the US that has broader cultural engagements and tastes spanning an eclectic range from highbrow arts to popular culture.[25]

Originally, it was Peterson (1992) who coined the term to address an anomaly observed in the evidence revealed by his work with Simkus (1992),[full citation needed] which showed that people of higher social status, contrary to elite-mass models of cultural taste developed by French scholars with French data, were not averse to participation in activities associated with popular culture.[26] The work rejected the universal adaptation of the cultural capital theory, especially in the 20th century in advanced post-industrialist societies like the United States.[27]

Science capital
In the UK, Louise Archer and colleagues (2015) developed the concept of science capital.[28] The concept of science capital draws from the work of Bourdieu, particularly his studies focusing on the reproduction of social inequalities in society. Science capital is made up of science-related cultural capital and social capital as well as habitus. It encapsulates the various influences that a young person's life experiences can have on their science identity and participation in science-related activities. The empirical work on science capital builds from a growing body of data into students' aspirations and attitudes to science, including University College London's ASPIRES Research[29] and King's College London's Enterprising Science.[30]

The concept of science capital was developed as a way to understand why these science-related resources, attitudes and aspirations led some children to pursue science, while others did not. The concept provides policy makers[31] and practitioners[32] with a useful framework to help understand what shapes young people's engagement with (and potential resistance to) science.

Criticism
Criticisms of Bourdieu's concept have been made on many grounds, including a lack of conceptual clarity.[33] Perhaps due to this lack of clarity, researchers have operationalised the concept in diverse ways, and have varied in their conclusions. While some researchers may be criticised for using measures of cultural capital which focus only on certain aspects of 'highbrow' culture, this is a criticism which could also be leveled at Bourdieu's own work. Several studies have attempted to refine the measurement of cultural capital in order to examine which aspects of middle-class culture actually have value in the education system.[34][20][35][36]

It has been claimed that Bourdieu's theory, and in particular his notion of habitus, is entirely deterministic, leaving no place for individual agency or even individual consciousness.[37][38] However, Bourdieu never claimed to have done so entirely, but defined a new approach; that is, Bourdieu's work attempts to reconcile the paradoxical dichotomy of structure and agency.

Some scholars such as John Goldthorpe dismiss Bourdieu's approach:

Bourdieu's view of the transmission of cultural capital as a key process in social reproduction is simply wrong. And the more detailed findings of the research, as noted above, could then have been taken as helping to explain just why it is wrong. That is, because differing class conditions do not give rise to such distinctive and abiding forms of habitus as Bourdieu would suppose; because even within more disadvantaged classes, with little access to high culture, values favouring education may still prevail and perhaps some relevant cultural resources exist; and because, therefore, schools and other educational institutions can function as important agencies of re-socialisation – that is, can not only underwrite but also in various respects complement, compensate for or indeed counter family influences in the creation and transmission of "cultural capital", and not just in the case of Wunderkinder but in fact on a mass scale.[39]

Bourdieu has also been criticised for his lack of consideration of gender. Kanter (in Robinson & Garnier 1986) points out the lack of interest in gender inequalities in the labour market in Bourdieu's work.[40] However, Bourdieu addressed the topic of gender head-on in his 2001 book Masculine Domination, in which he states on the first page of the prelude that he considers masculine domination to be a prime example of symbolic violence.[41]

See also
icon	Society portal
Academic capital
Cultural economics
Cultural reproduction
Cultural studies
Culture change
Great British Class Survey
Human capital
Individual capital







Cattell–Horn–Carroll theory
https://en.wikipedia.org/wiki/Cattell–Horn–Carroll_theory#Background
The Cattell–Horn–Carroll theory (commonly abbreviated to CHC), is a psychological theory on the structure of human cognitive abilities. Based on the work of three psychologists, Raymond B. Cattell, John L. Horn and John B. Carroll, the Cattell–Horn–Carroll theory is regarded as an important theory in the study of human intelligence. Based on a large body of research, spanning over 70 years, Carroll's Three Stratum theory was developed using the psychometric approach, the objective measurement of individual differences in abilities, and the application of factor analysis, a statistical technique which uncovers relationships between variables and the underlying structure of concepts such as 'intelligence' (Keith & Reynolds, 2010). The psychometric approach has consistently facilitated the development of reliable and valid measurement tools and continues to dominate the field of intelligence research (Neisser, 1996).

The Cattell–Horn–Carroll theory is an integration of two previously established theoretical models of intelligence: the Gf-Gc theory of fluid and crystallised intelligence (Cattell, 1941; Horn 1965), and Carroll's three-stratum theory (1993), a hierarchical, three-stratum model of intelligence. Due to substantial similarities between the two theories they were amalgamated to form the Cattell–Horn–Carroll theory (Willis, 2011, p. 45). However, some researchers, including John Carroll, have questioned not only the need but also the empirical basis for the theory.[1][2]

In the late 1990s the CHC model was expanded by McGrew, later revised with the help of Flanagan. Later extensions of the model are detailed in McGrew (2011)[3] and Schneider and McGrew (2012)[4] There are a fairly large number of distinct individual differences in cognitive ability, and CHC theory holds that the relationships among them can be derived by classifying them into three different strata: stratum I, "narrow" abilities; stratum II, "broad abilities"; and stratum III, consisting of a single "general ability" (or g).[5]

Today, the Cattell–Horn–Carroll theory is widely accepted as the most comprehensive and empirically supported theory of cognitive abilities, informing a substantial body of research and the ongoing development of IQ (Intelligence Quotient) tests (Kaufmann, 2009. p. 91).[6]


Contents
1	Background
1.1	Development of the CHC model
1.1.1	Cattell and Horn's Gf–Gc Model
1.1.1.1	Carroll's three-stratum hierarchy
2	Abilities
2.1	Broad and narrow abilities
3	Model tests
4	Other related issues
5	See also
6	Notes
7	References
8	Further reading
Background
Development of the CHC model
The Cattell–Horn–Carroll theory of intelligence is a synthesis of Cattell and Horn's Gf-Gc model of fluid and crystallised intelligence and Carroll's Three Stratum Hierarchy (Sternberg & Kauffman, 1998). Awareness of the similarities between Cattel and Horn's Gf-Gc expanded model abilities and Carroll's Broad Stratum II abilities were highlighted at a meeting in 1985 concerning the revision of the Woodcock-Johnson Psycho-Educational Battery (Woodcock & Johnson, 1989). At this meeting Horn presented the Gf-Gc theory to several prominent figures in intelligence testing, including John B. Carroll (McGrew, 2005). Carroll was already a vocal proponent of the Cattell-Horn theory, stating in 1993 that the Gf-Gc model "appears to offer the most well-founded and reasonable approach to an acceptable theory of the structure of cognitive abilities" (Carroll, 1993, p. 62). This fortuitous meeting was the starting point for the integration of the two theories. The integration of the two theories evolved through a series of bridging events that occurred over two decades. Although there are many similarities between the two models, Horn consistently and unyieldingly argued against a single general ability g factor (McGrew, 2005, p. 174). Charles Spearman first proposed the existence of the g-factor (also known as general intelligence) in the early 20th century after discovering significant positive correlations between children's scores in seemingly unrelated academic subjects (Spearman, 1904). Unlike Horn, Carroll argued that evidence for a single 'general' ability was overwhelming, and insisted that g was essential to a theory of human intelligence.[citation needed]

Cattell and Horn's Gf–Gc Model
Raymond B. Cattell (20 March 1905 – 2 February 1998) was the first to propose a distinction between "fluid intelligence" (Gf) and "crystallised intelligence" (Gc). Charles Spearman's s factors are considered a prequel to this idea (Spearman, 1927), along with Thurstone's theory of Primary Mental Abilities[citation needed]. By 1991, John Horn, a student of Cattell's, had expanded the Gf-Gc model to include 8 or 9 broad abilities.[citation needed]

Fluid intelligence refers to quantitative reasoning, processing ability, adaptability to new environments and novel problem solving. Crystallised intelligence (Gc) refers to the accumulation of knowledge (general, procedural and declarative). Gc tasks include problem solving with familiar materials and culture-fair tests of general knowledge and vocabulary.[citation needed] Gf and Gc are both factors of g (general intelligence). Though distinct, there is interaction, as fluid intelligence is a determining factor in the speed with which crystallised knowledge is accumulated (Cattell, 1963). Crystallised intelligence is known to increase with age as we accumulate knowledge throughout the lifespan. Fluid processing ability reaches a peak around late adolescence, then declines steadily.[citation needed] Recent research has explored the idea that training on working memory tasks can transfer to improvements in fluid intelligence. (Jaeggi, 2008).[7] This idea did not hold under further scrutiny (Melby-Lervåg, Redick, & Hulme, 2016).[8]

Carroll's three-stratum hierarchy
The American psychologist John B. Carroll (June 5, 1916 – July 1, 2003) made substantial contributions to psychology, psychometrics and educational linguistics. In 1993, Carroll published Human Cognitive Abilities: A Survey of Factor-Analytic Studies, in which he presented 'A Theory of Cognitive Abilities: The Three-Stratum Theory'. Carroll had re-analysed data-sets from 461 classic factor analytic studies of human cognition, distilling the results into 800 pages, thus providing a solid foundation for future research in human intelligence (Carroll, 1993, p. 78-91).

Carroll's three-stratum theory presented three levels of cognition: narrow abilities (stratum I), broad abilities (stratum II) and general abilities (stratum III).

Carroll's Three Stratum Model of Human Intelligence: General intelligence (g) fluid intelligence (Gf), crystallized intelligence (Gc), general memory and learning (Gy), broad visual perception (Gv), broad auditory perception (Gu), broad retrieval ability (Gr), broad cognitive speediness (Gs), and processing speed (Gt).
Abilities
Broad and narrow abilities
The broad abilities are:[9]

Comprehension-Knowledge (Gc): includes the breadth and depth of a person's acquired knowledge, the ability to communicate one's knowledge, and the ability to reason using previously learned experiences or procedures.
Fluid reasoning (Gf): includes the broad ability to reason, form concepts, and solve problems using unfamiliar information or novel procedures.
Quantitative knowledge (Gq): is the ability to comprehend quantitative concepts and relationships and to manipulate numerical symbols.[9]
Reading & Writing Ability (Grw): includes basic reading and writing skills.
Short-Term Memory (Gsm): is the ability to apprehend and hold information in immediate awareness and then use it within a few seconds.
Long-Term Storage and Retrieval (Glr): is the ability to store information and fluently retrieve it later in the process of thinking.
Visual Processing (Gv): is the ability to perceive, analyze, synthesize, and think with visual patterns, including the ability to store and recall visual representations.
Auditory Processing (Ga): is the ability to analyze, synthesize, and discriminate auditory stimuli, including the ability to process and discriminate speech sounds that may be presented under distorted conditions.[9]
Processing Speed (Gs): is the ability to perform automatic cognitive tasks, particularly when measured under pressure to maintain focused attention.
A tenth ability, Decision/Reaction Time/Speed (Gt), is considered part of the theory, but is not currently assessed by any major intellectual ability test, although it can be assessed with a supplemental measure such as a continuous performance test.[10]

Decision/Reaction Time/Speed (Gt): reflects the immediacy with which an individual can react to stimuli or a task (typically measured in seconds or fractions of seconds; not to be confused with Gs, which typically is measured in intervals of 2–3 minutes).
McGrew proposes a number of extensions to CHC theory, including Domain-specific knowledge (Gkn), Psychomotor ability (Gp), and Psychomotor speed (Gps). In addition, additional sensory processing abilities are proposed, including tactile (Gh), kinesthetic (Gk), and olfactory (Go).[3]

The narrow abilities are:

Quantitative knowledge	Reading & writing	Comprehension-Knowledge	Fluid reasoning	Short-term memory	Long term storage and retrieval	Visual processing	Auditory processing	Processing speed
Mathematical knowledge	Reading decoding	General verbal information	Inductive reasoning	Memory span	Associative memory	Visualization	Phonetic coding	Perceptual speed
Mathematical achievement	Reading comprehension	Language development	General sequential reasoning
(Deductive reasoning)

Working memory capacity	Meaningful memory	Speeded rotation	Speech sound discrimination	Rate of test taking
Reading speed	Lexical knowledge	Piagetian reasoning		Free-recall memory	Closure speed	Resistance to auditory stimulus distortion	Number facility
Spelling ability	Listening ability	Quantitative reasoning		Ideational fluency	Flexibility of closure	Memory for sound patterns	Reading speed/fluency
English usage	Communication ability	Speed of reasoning		Associative fluency	Visual memory	Maintaining and judging rhythms	Writing speed/fluency
Writing ability	Grammatical sensitivity			Expressional fluency	Spatial scanning	Musical discrimination and judgement	
Writing speed	Oral production & fluency			Originality	Serial perceptual integration	Absolute pitch	
Cloze ability	Foreign language aptitude			Naming facility	Length estimation	Sound localization	
Word fluency	Perceptual illusions	Temporal tracking	
Figural fluency	Perceptual alternations		
Figural flexibility	Imagery		
Learning ability			
Model tests
Many tests of cognitive ability have been classified using the CHC model and are described in The Intelligence Test Desk Reference (ITDR) (McGrew & Flanagan, 1998). CHC theory is particularly relevant to school psychologists for psychoeducational assessment. 5 of the 7 major tests of intelligence have changed to incorporate CHC theory as their foundation for specifying and operationalizing cognitive abilities/processes. Since even all modern intellectual test instruments fail to effectively measure all 10 broad stratum abilities an alternative method of cognitive assessment and interpretation called Cross Battery Assessment (XBA; Flanagan, Ortiz, Alfonso, & Dynda, 2008) was developed. However, the veracity of this approach to assessment and interpretation has been criticized in the research literature as statistically flawed.[11]

Other related issues
Consistent with the evolving nature of the theory, the Cattell-Horn-Carroll framework remains "an open-ended empirical theory to which future tests of as yet unmeasured or unknown abilities could possibly result in additional factors at one or more levels in Carroll's hierarchy".[12] There is still some debate on the broad (stratum II) abilities, and the narrow (stratum I) abilities, and these remain open for refinement.[citation needed]

MacCallum (2003, p. 113–115) highlighted the need to recognize the limitations of artificial measurement tools built upon mathematical models: "Simply put, our models are implausible if taken as exact or literal representations of real world phenomena. They cannot capture the complexity of the real world which they purport to represent. At best, they can provide an approximation of the real world that has some substantive meaning and some utility."

See also
Fluid and crystallized intelligence for Gf-Gc theory








Cultural literacy
https://en.wikipedia.org/wiki/Cultural_literacy#Causes
Cultural literacy is a term coined by American educator and literary critic E. D. Hirsch, referring to the ability to understand and participate fluently in a given culture. Cultural literacy is an analogy to literacy proper (the ability to read and write letters). A literate reader knows the object-language's alphabet, grammar, and a sufficient set of vocabulary; a culturally literate person knows a given culture's signs and symbols, including its language, particular dialectic, stories,[1] entertainment, idioms, idiosyncrasies, and so on. The culturally literate person is able to talk to and understand others of that culture with fluency.


Contents
1	Causes
2	Examples
3	Consequences
4	Research and questions
5	See also
6	References
7	Further reading
Causes
Children of a given culture typically become culturally literate there via the process of enculturation. Enculturation seems to occur naturally, being intertwined with education, play, family relationships, friendships, etc. The cause of cultural literacy is a more difficult question when considering acculturation of immigrants, outsiders, cultural minorities, strangers, guests, etc.

Literacy of a given culture seems to arise over time with consistent exposure to and participation in that culture, especially certain key cultural strongholds, like business, story, arts, education, history, religion, and family. One could become literate for an oral culture (with no written language or recorded media) only by extended conversation. Alternatively, one could become literate for a written culture through conversation as well as reading culturally relevant books or exposure to culturally relevant films, plays, monuments, television shows, etc.

Western culture in general and Anglo-American culture in particular is a bibliocentric culture. It often trades in allusions to the Christian Bible,[2] the influential works of Early Modern English such as works of William Shakespeare, the Thomas Cranmer Book of Common Prayer, Geoffrey Chaucer's poetry, and many others. Knowledge of these books (among others) contributes largely to cultural literacy in the west. However, also essential are exposure to the art, history, and the lived experience of members of that culture.[citation needed]

Examples
For example, in 1908 British author G. K. Chesterton wrote, "Complete self-confidence is a weakness... the man who has [self-confidence] has 'Hanwell' written on his face as plain as it is written on that omnibus".[3] This statement, especially the latter half, might be opaque to a reader from outside the United Kingdom, who does not know that "omnibus" is a less common British word for "bus" and "Hanwell" was the name of a (now defunct) insane asylum.

Consequences
The benefits and detriments of cultural literacy are debated.[by whom?] For example, social mobility increases when one is able to comfortably participate in conversation with gatekeepers like employers and teachers. Non-native members of a culture, such as missionaries to a foreign land or refugees from a native land, may experience negative consequences due to cultural illiteracy. However, the achievement of cultural literacy may seem to come at a cost to one's own native culture.[citation needed]

Research and questions
Discussions of cultural literacy have given rise to several controversial questions:[4]

The Literature Question: How important are books to cultural literacy in the west? And which books?
The Content Question: What kinds of knowledge are important for cultural literacy? Knowing such and such facts, names, dates or more ethereal experiences like having heard such and such a song?
The Minority Question: Is cultural literacy part of the hegemony of the dominant culture?
The Multicultural Question: Which culture are we talking about when we say "cultural" literacy? Should we be talking about one or several—and which one(s)?[5]
The Education Question: Should advancing cultural literacy be one of the goals of education? If so, what is the best means of doing so?
The Assessment Question: How do we evaluate cultural literacy? Is there a best way to test someone's cultural literacy?
See also
Bildung
Cultural competence
Cultural sensitivity
Educational essentialism
Great books
Intercultural communication
References
 Watson, Rita (Oct 1987). "Learning Words from Linguistic Expressions: Definition and Narrative". Research in the Teaching of English. 21 (3): 298–317. JSTOR 40171117.
 Mangalwadi, Vishal Mangalwadi (2012). The Book that Made Your World. Thomas Nelson. p. 464. ISBN 978-1595555458.
 Chesterton, G. K. (1908). Orthodoxy. Chapter II, "The Maniac".
 Applebee, Arthur N.[A.N.A] (Oct 1987). "Musings...: Cultural Literacy". Research in the Teaching of English. 21 (3): 229–231. JSTOR 40171113.
 Wiener, Harvey S. (Sep 1985). "Multicultural Literacy for Faculty: Accommodating Non-Native Speakers of English in Content Courses". Rhetoric Review. 4 (1): 100–107. doi:10.1080/07350198509359111. JSTOR 465770.
Further reading
E. D. Hirsch Jr. (1987). Cultural Literacy: What Every American Needs to Know. Boston: Houghton Mifflin. ISBN 0-395-43095-X.
Hirsch, Eric Donald; Kett, Joseph F.; Trefil, James S. (2002). The New Dictionary of Cultural Literacy (3rd ed.). Houghton Mifflin Harcourt. ISBN 0-618-22647-8.
Christenbury, Leila "Cultural Literacy: A Terrible Idea Whose Time Has Come" The English Journal 78.1 (January 1989), pp. 14–17.
Broudy, Harry S. (Spring 1990). "Cultural Literacy and General Education". Journal of Aesthetic Education. 24 (1, Special Issue: Cultural Literacy and Arts Education): 7–16. doi:10.2307/3332851. JSTOR 3332851.
Anson, Chris M. "Book Lists, Cultural Literacy, and the Stagnation of Discourse" The English Journal 77.2 (February 1988), pp. 14–18.
Zurmuehlen, Marilyn "Serious Pursuit of Cultural Trivialization" Art Education 42.6 (November 1989), pp. 46–49.
Simpson, Alan "The Uses of "Cultural Literacy": A British View" Journal of Aesthetic Education 25.4, 25th Anniversary Issue Winter, 1991), pp. 65–73.
Reedy, Jeremiah "Cultural Literacy and the Classics" The Classical Journal 84.1 (October 1988), pp. 41–46.
Murray, Denise E. Diversity as Resource. Redefining Cultural Literacy (Alexandria, Virginia) 1994.
Bernard Schweizer. "Cultural Literacy: Is It Time to Revisit the Debate?" Thought & Action 25 (Fall 2009).
"Cultural Literacy Tests - Challenge Yourself With Our Free Online Cultural Literacy Tests". The Literacy Company.





Hearsay
https://en.wikipedia.org/wiki/Hearsay#United_States
Hearsay evidence, in a legal forum, is testimony from a witness under oath who is reciting an out-of-court statement, content of which is being offered to prove the truth of the matter asserted. In most courts, hearsay evidence is inadmissible (the "hearsay evidence rule") unless an exception to the hearsay rule applies.

For example, to prove that Tom was in town, a witness testifies, "Susan told me that Tom was in town." Since the witness's evidence relies on an out-of-court statement that Susan made, if Susan is unavailable for cross-examination, the answer is hearsay. A justification for the objection is that the person who made the statement is not in court and thus is insulated from cross-examination. Note, however, that if the matter at hand is not the truth of the assertion about Tom being in town but the fact that Susan said the specific words, it may be acceptable. For example, it would be acceptable to ask a witness what Susan told them about Tom in a defamation case against Susan because now the witness is asked about the opposing party's statement that constitutes a verbal act.[1][2]

The hearsay rule does not exclude the evidence if it is an operative fact. Language of commercial offer and acceptance is also admissible over a hearsay exception because the statements have independent legal significance.

Double hearsay is a hearsay statement that contains another hearsay statement itself. In a court, both layers of hearsay must be found separately admissible.

Many jurisdictions that generally disallow hearsay evidence in courts permit the more widespread use of hearsay in non-judicial hearings.


Contents
1	United States
2	England and Wales
3	Canada
4	Australia
4.1	Uniform Evidence Act
5	Malaysia
6	New Zealand
7	Norway
8	Sri Lanka
9	Sweden
10	Hong Kong
11	See also
12	References
United States
Main article: Hearsay in United States law
The Sixth Amendment to the United States Constitution provides that "In all criminal prosecutions, the accused shall enjoy the right ... to be confronted with the witnesses against him".

"Hearsay is a statement, other than one made by the declarant while testifying at the trial or hearing, offered in evidence to prove the truth of the matter asserted."[1] Per Federal Rule of Evidence 801(d)(2)(a), a statement made by a defendant is admissible as evidence only if it is inculpatory; exculpatory statements made to an investigator are hearsay and therefore may not be admitted as evidence in court, unless the defendant testifies.[3] When an out-of-court statement offered as evidence contains another out-of-court statement it is called double hearsay, and both layers of hearsay must be found separately admissible.[4]

There are several exceptions to the rule against hearsay in U.S. law.[1] Federal Rule of Evidence 803 lists the following:

Present sense impressions and excited utterances
Then existing mental, emotional, or physical condition
Statements for purposes of medical diagnosis or treatment
Recorded recollection
Records of regularly conducted activity, including absence of entry in records
Public records and reports, including absence of entry in records
Records or births, fetal deaths, deaths and marriages made pursuant to law
Records of religious organisations of facts of personal or family history, contained in a regularly kept record
Marriage, baptismal, and similar certificates
Family records
Statements in documents affecting an interest in property
Statements in ancient documents
Market reports, commercial publications
Learned treatises
Reputation concerning personal or family history, boundaries, or general history, or as to character
Judgment of previous conviction
Judgment as to personal, family, or general history, or boundaries.
Rule 804 adds several additional exceptions where the declarant is unavailable:

Former testimony
Statement under belief of impending death in homicide or civil actions
Statement against interest
Statement of personal or family history
Forfeiture by wrongdoing
Also, some documents are self-authenticating under Rule 902, such as domestic public documents under seal, domestic public documents not under seal, but bearing a signature of a public officer, foreign public documents, certified copies of public records, official publications, newspapers and periodicals, trade inscriptions and the like, acknowledged documents (i.e. by a notary public), commercial paper and related documents, presumptions under Acts of Congress, certified domestic records of regularly conducted activity, and certified foreign records of regularly conducted activity.[1]

England and Wales
Main article: Hearsay in English law
In England and Wales, hearsay is generally admissible in civil proceedings,[5] but is only admissible in criminal proceedings if it falls within a statutory or a preserved common law exception,[6] all of the parties to the proceedings agree, or the court is satisfied that it is in the interests of justice that the evidence is admissible.[7]

Section 116 of the Criminal Justice Act 2003 provides that, where a witness is unavailable, hearsay is admissible where

the relevant person is dead;
the relevant person is unfit to be a witness because of his bodily or mental condition;
the relevant person is outside the UK and it is not reasonably practicable to secure his attendance;
the relevant person cannot be found;
through fear, the relevant person does not give oral evidence in the proceedings and the court gives leave for the statement to be given in evidence.
The two main common law exceptions to the rule that hearsay is inadmissible are res gestae and confessions.

Canada
Hearsay evidence is generally inadmissible in Canada unless it falls within one of the established common law exceptions. As a result of the Supreme Court's decision in R. v. Khan and subsequent cases, hearsay evidence that does not fall within the established exceptions can be admitted where established that such evidence is both "necessary and reliable". Additionally, hearsay evidence that would otherwise be admissible as an exception can nonetheless be excluded if it is not necessary and reliable, as in R. v. Starr.

Australia
The rules of evidence differ among the states and the Commonwealth; the Commonwealth, Victoria, New South Wales, Tasmania, and the Australian Capital Territory all share similar hearsay provisions in their Uniform Evidence Acts;[8] the other states rely upon the common law. As elsewhere, hearsay is usually inadmissible, outside of interlocutory proceedings, unless it falls within one of the hearsay exceptions.

Uniform Evidence Act
Hearsay is dealt with under Part 3·2. There are several local peculiarities with its treatment. s 59 defines the "fact" of a hearsay statement as being something "that it can reasonably be supposed that the person intended to assert by the representation". Hearsay rule confines the potentially broad number of assertions it might cover by this broad definition of representation to only intended representations adduced to prove existence of the asserted facts. In Lee v The Queen,[9] the term representation was used to apply to statements and to conduct and was used to encompass all those statements or that conduct would convey to the observer.

The extraordinary s 60 allows a statement's use as hearsay if it is admitted for a non-hearsay purpose, although the application of s 60 may be limited by s 137 (which is essentially the discretion formerly known as Christie). S 72 excepts "evidence of a representation about ... the traditional laws and customs of an Aboriginal or Torres Strait Islander group", although this arguably would have fallen into the "public right" exception at common law. Confessions are called "admissions" by the act (which led to the confusion whereby counsel apply for the "admission of the admission"). They are dealt with separately under Part 3·4, which lifts the hearsay rule. The act's dictionary defines admission broadly enough to include anything that might be used against the accused. The other sections in the part for the most part codify, roughly, the common-law rules.

Malaysia
In Malaysia, hearsay evidence is generally not allowed. However, the Evidence Act 1950 permitted a few exceptions, such as section 60, 73A, 73AA etc.

New Zealand
Hearsay evidence is covered by sections 16-22 of the Evidence Act 2006. Previously inadmissible, the 1989 decision of the Court of Appeal in R v Baker created a common law exception to the hearsay rule based on reliability, which was codified in the Evidence Act. Pursuant to s 4(1) of the act, a hearsay statement is a statement made by someone other than a witness (in the proceedings) that is offered to prove the truth of its contents. Under section 17 of this act a hearsay statement is generally not admissible in any court proceeding. Though section 18 states when a hearsay statement may be able to be given in court. This is when the statement is reliable, the statement maker is unavailable to be called as a witness or it would provide undue expense and delay if that person was required to be a witness. There are also a number of specific exceptions such as statements in business records. Other exceptions include state of mind evidence (see R v Blastland) and whether the statement is tendered to prove the fact it was uttered or made, rather than to prove the truth of its contents (see DPP v Subramaniam).

Norway
Even if Norway has a maxim of "free evidence" (any statement, object, forensics or other matters that may apply) to be entered and admitted in court, hearsay is in conflict with the defense counsel's or prosecution's ability to cross examine, as the witness who relayed the original statement is not present in court. In practice, hearsay is then not allowed.

Sri Lanka
In Sri Lanka, hearsay evidence is generally not allowed. However, the Evidence Ordinance recognizes a few exceptions such as res gestae (recognised under Section 6) and common intention (recognised under Section 10)and some other exceptions from section 17 to section 39. Some other exceptions are provided by case law (see Subramaniam v. DPP [1956] 1 WLR 956 (PC)).

Sweden
Sweden allows hearsay evidence.[10] Sweden applies a principle of admissibility of evidence which means that there are very few restrictions on what evidence is allowed in court. It is then up to the court to evaluate the reliability of the evidence presented.[11]

Hong Kong
In Hong Kong, hearsay is generally admissible in civil proceedings under the statutory regime.[12] Section 46 of the Evidence Ordinance provides that evidence shall not be excluded on the ground that it is hearsay in civil proceedings unless: the party against whom the evidence is to be adduced objects to the admission of the evidence; as well as: the court is satisfied, having regard to the circumstances of the case, that the exclusion of the evidence is not prejudicial to the interests of justice. Sections 47A to 51 provides for safeguards in relation to hearsay evidence admissible under section 46 so as to avoid abuses of the general admission:

the obligation to give notice and particulars to other parties when proposing to adduce hearsay evidence (Section 47A);
the power to call witness for cross-examination on hearsay statement with the leave of the court (Section 48);
consideration relevant to weighing of hearsay evidence (Section 49);
competence and credibility (Section 50);
previous statement of witness (Section 51).
The courts shall draw inferences from the circumstances as to the weight attached to hearsay evidence, in particular:[13]

whether it would have been reasonable and practicable for the party by whom the evidence was adduced to have produced the maker of the original statement as a witness;
whether the original statement was made contemporaneously with the occurrence or existence of the matters stated;
whether the evidence involves multiple hearsay;
whether any person involved had any motive to conceal or misrepresent matters;
whether the original statement was an edited account, or was made in collaboration with another or for a particular purpose;
whether the circumstances in which the evidence is adduced as hearsay are such as to suggest an attempt to prevent proper evaluation of its weight;
whether or not the evidence adduced by the party is consistent with any evidence previously adduced by the party.
The new civil regime also preserves a number of common law exceptions that are unaffected by the statutory safeguards except for the section 47A safeguard relating to notice.[14] In criminal proceedings, the law relating to hearsay has not been substantially changed in Hong Kong, and the common law regime remains the rules followed by the Hong Kong criminal courts. Hearsay evidence is inadmissible in all criminal cases except for common law and statutory exemptions, which include: admissions and confessions, dying declarations, declarations in the course of duty, declarations against interest, co-conspirator's rule, statements in public documents, out-of-court statements, evidence in former proceedings, and res gestae.

Statutory exceptions in criminal cases include: negative assertions (s.17A Evidence Ordinance), bank records (ss.19B and 20 Evidence Ordinance), documentary records compiled by a person under a duty (s.22 Evidence Ordinance), computer records (s.22A Evidence Ordinance), and agreed written statements (s.65B Criminal Procedure Ordinance).

See also
Gossip
Heresy
List of objections (law)
Moral certainty
Probable cause
Reasonable person
Reasonable suspicion
Scuttlebutt





Evidence (law)
https://en.wikipedia.org/wiki/Evidence_(law)#History
The law of evidence, also known as the rules of evidence, encompasses the rules and legal principles that govern the proof of facts in a legal proceeding. These rules determine what evidence must or must not be considered by the trier of fact in reaching its decision. The trier of fact is a judge in bench trials, or the jury in any cases involving a jury.[1] The law of evidence is also concerned with the quantum (amount), quality, and type of proof needed to prevail in litigation. The rules vary depending upon whether the venue is a criminal court, civil court, or family court, and they vary by jurisdiction.

The quantum of evidence is the amount of evidence needed; the quality of proof is how reliable such evidence should be considered. Important rules that govern admissibility concern hearsay, authentication, relevance, privilege, witnesses, opinions, expert testimony, identification and rules of physical evidence. There are various standards of evidence, standards showing how strong the evidence must be to meet the legal burden of proof in a given situation, ranging from reasonable suspicion to preponderance of the evidence, clear and convincing evidence, or beyond a reasonable doubt.

There are several types of evidence, depending on the form or source. Evidence governs the use of testimony (e.g., oral or written statements, such as an affidavit), exhibits (e.g., physical objects), documentary material, or demonstrative evidence, which are admissible (i.e., allowed to be considered by the trier of fact, such as jury) in a judicial or administrative proceeding (e.g., a court of law).

When a dispute, whether relating to a civil or criminal matter, reaches the court there will always be a number of issues which one party will have to prove in order to persuade the court to find in his or her favour. The law must ensure certain guidelines are set out in order to ensure that evidence presented to the court can be regarded as trustworthy.


Contents
1	History
2	Relevance and social policy
3	Presence or absence of a jury
4	Exclusion of evidence
4.1	Unfairness
5	Authentication
6	Witnesses
7	Hearsay
8	Direct vs. circumstantial evidence
9	Burdens of proof
10	Evidentiary rules stemming from other areas of law
11	Evidence as an area of study
12	Tampering, falsification, and spoliation
13	By jurisdiction
14	See also
15	References
16	External links
History
A distinct feature of English common law historically was the role of the jury as a finder of fact, as opposed to the role of the judge as finder of law.[2] The creation of modern jury trials in the 16th and 17th centuries necessitated rules of evidence to regulate what testimony and other evidence could be put before the jury.[3] While much of the early common law evidence rules came from judicial decisions, Parliament also played a role. In 1677, Parliament and the Crown enacted the Statute of Frauds and Perjuries, prohibiting plaintiffs from alleging certain contractual breaches to the jury unless accompanied by a signed, written instrument. Another early evidence rule was the prohibition on hearsay, the admission of an out-of-court statement to prove the truth of what is asserted. In the early 19th Century, Chief Justice Mansfield of the Court of Common Pleas stated:

"In Scotland and most of the continental states, the judges determine upon the facts in dispute as well as upon the law ; and they think there is no danger in their listening to evidence of hearsay, because, when they come to consider their judgment on the merits of the case, they can trust themselves entirely to disregard the hearsay evidence, or to give it any little weight which it may seem to deserve. But in England, where the jury are the sole judges of the fact, hearsay evidence is properly excluded, because no man can tell what effect it might have upon their minds."[4]

Hearsay rules have subsequently been updated numerous times. Most recently in England and Wales, the Civil Evidence Act 1995, section 1, specifically allows for admission of 'hearsay' evidence; legislation also allows for 'hearsay' evidence to be used in criminal proceedings, which makes it possible for the accuser to induce friends or family to give false evidence in support of their accusations because, normally, it would be rejected by the presiding authority or judge. There are several examples where presiding authorities are not bound by the rules of evidence. These include the military tribunals in the United States and tribunals used in Australia to try health professionals.

Relevance and social policy
Main article: Relevance (law)

This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (October 2011) (Learn how and when to remove this template message)
In every jurisdiction based on the English common law tradition, evidence must conform to a number of rules and restrictions to be admissible. Evidence must be relevant – that is, it must be directed at proving or disproving a legal element.

However, the relevance of evidence is ordinarily a necessary condition but not a sufficient condition for the admissibility of evidence. For example, relevant evidence may be excluded if it is unfairly prejudicial, confusing, or the relevance or irrelevance of evidence cannot be determined by logical analysis. There is also general agreement that assessment of relevance or irrelevance involves or requires judgements about probabilities or uncertainties. Beyond that, there is little agreement. Many legal scholars and judges agree that ordinary reasoning, or common sense reasoning, plays an important role. There is less agreement about whether or not judgements of relevance or irrelevance are defensible only if the reasoning that supports such judgements is made fully explicit. However, most trial judges would reject any such requirement and would say that some judgements can and must rest partly on unarticulated and unarticulable hunches and intuitions. However, there is general (though implicit) agreement that the relevance of at least some types of expert evidence – particularly evidence from the hard sciences – requires particularly rigorous, or in any event more arcane reasoning than is usually needed or expected. There is a general agreement that judgments of relevance are largely within the discretion of the trial court – although relevance rulings that lead to the exclusion of evidence are more likely to be reversed on appeal than are relevance rulings that lead to the admission of evidence.

According to Rule 401 of the Federal Rules of Evidence (FRE), evidence is relevant if it has the "tendency to make the existence of any fact that is of consequence to the determination of the action more probable or less probable than it would be without the evidence."[5]

Federal Rule 403 allows relevant evidence to be excluded "if its probative value is substantially outweighed by the danger of unfair prejudice", if it leads to confusion of the issues, if it is misleading or if it is a waste of time. California Evidence Code section 352 also allows for exclusion to avoid "substantial danger of undue prejudice." For example, evidence that the victim of a car accident was apparently a "liar, cheater, womanizer, and a man of low morals" was unduly prejudicial and irrelevant to whether he had a valid product liability claim against the manufacturer of the tires on his van (which had rolled over resulting in severe brain damage).[6]

Presence or absence of a jury
The United States has a very complicated system of evidentiary rules; for example, John Wigmore's celebrated treatise on it filled ten volumes.[7] James Bradley Thayer reported in 1898 that even English lawyers were surprised by the complexity of American evidence law, such as its reliance on exceptions to preserve evidentiary objections for appeal.[7]

Some legal experts, notably Stanford legal historian Lawrence Friedman, have argued that the complexity of American evidence law arises from two factors: (1) the right of American defendants to have findings of fact made by a jury in practically all criminal cases as well as many civil cases; and (2) the widespread consensus that tight limitations on the admissibility of evidence are necessary to prevent a jury of untrained laypersons from being swayed by irrelevant distractions.[7] In Professor Friedman's words: "A trained judge would not need all these rules; and indeed, the law of evidence in systems that lack a jury is short, sweet, and clear."[8] However, Friedman's views are characteristic of an earlier generation of legal scholars. The majority of people now reject the formerly-popular proposition that the institution of trial by jury is the main reason for the existence of rules of evidence even in countries such as the United States and Australia; they argue that other variables[clarification needed] are at work.[9]

Exclusion of evidence
See also: Public policy doctrines for the exclusion of relevant evidence and Exclusionary rule
Unfairness
Under English law, evidence that would otherwise be admissible at trial may be excluded at the discretion of the trial judge if it would be unfair to the defendant to admit it.

Evidence of a confession may be excluded because it was obtained by oppression or because the confession was made in consequence of anything said or done to the defendant that would be likely to make the confession unreliable. In these circumstances, it would be open to the trial judge to exclude the evidence of the confession under Section 78(1) of the Police and Criminal Evidence Act 1984 (PACE), or under Section 73 PACE, or under common law, although in practice the confession would be excluded under section 76 PACE.[10]

Other admissible evidence may be excluded, at the discretion of the trial judge under 78 PACE, or at common law, if the judge can be persuaded that having regard to all the circumstances including how the evidence was obtained "admission of the evidence would have such an adverse effect on the fairness of the proceedings that the court ought not to admit it."[10]

In the United States and other countries, evidence may be excluded from a trial if it is the result of illegal activity by law enforcement, such as a search conducted without a warrant. Such illegal evidence is known as the fruit of the poisonous tree and is normally not permitted at trial.

Authentication
Certain kinds of evidence, such as documentary evidence, are subject to the requirement that the offeror provide the trial judge with a certain amount of evidence (which need not be much and it need not be very strong) suggesting that the offered item of tangible evidence (e.g., a document, a gun) is what the offeror claims it is. This authentication requirement has import primarily in jury trials. If evidence of authenticity is lacking in a bench trial, the trial judge will simply dismiss the evidence as unpersuasive or irrelevant. Other kinds of evidence can be self-authenticating and require nothing to prove that the item is tangible evidence. Examples of self-authenticating evidence includes signed and certified public documents, newspapers, and acknowledged documents.[11]

Witnesses

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (August 2008) (Learn how and when to remove this template message)
In systems of proof based on the English common law tradition, almost all evidence must be sponsored by a witness, who has sworn or solemnly affirmed to tell the truth. The bulk of the law of evidence regulates the types of evidence that may be sought from witnesses and the manner in which the interrogation of witnesses is conducted such as during direct examination and cross-examination of witnesses. Other types of evidentiary rules specify the standards of persuasion (e.g., proof beyond a reasonable doubt) that a trier of fact—whether judge or jury—must apply when it assesses evidence.

Today all persons are presumed to be qualified to serve as witnesses in trials and other legal proceedings, and all persons are also presumed to have a legal obligation to serve as witnesses if their testimony is sought. However, legal rules sometimes exempt people from the obligation to give evidence and legal rules disqualify people from serving as witnesses under some circumstances.

Privilege rules give the holder of the privilege a right to prevent a witness from giving testimony. These privileges are ordinarily (but not always) designed to protect socially valued types of confidential communications. Some of the privileges that are often recognized in various U.S. jurisdictions are spousal privilege, attorney–client privilege, doctor–patient privilege, state secrets privilege, and clergy–penitent privilege. A variety of additional privileges are recognized in different jurisdictions, but the list of recognized privileges varies from jurisdiction to jurisdiction; for example, some jurisdictions recognize a social worker–client privilege and other jurisdictions do not.

Witness competence rules are legal rules that specify circumstances under which persons are ineligible to serve as witnesses. For example, neither a judge nor a juror is competent to testify in a trial in which the judge or the juror serves in that capacity; and in jurisdictions with a dead man statute, a person is deemed not competent to testify as to statements of or transactions with a deceased opposing party.

Often, a Government or Parliamentary Act will govern the rules affecting the giving of evidence by witnesses in court. An example is the Evidence Act (NSW) 1995 which sets out the procedures for witnesses to follow in New South Wales, Australia.[12]

Hearsay
Main article: Hearsay
Hearsay is one of the largest and most complex areas of the law of evidence in common-law jurisdictions. The default rule is that hearsay evidence is inadmissible. Hearsay is an out of court statement offered to prove the truth of the matter asserted. A party is offering a statement to prove the truth of the matter asserted if the party is trying to prove that the assertion made by the declarant (the maker of the out-of-trial statement) is true. For example, prior to trial Bob says, "Jane went to the store." If the party offering this statement as evidence at trial is trying to prove that Jane actually went to the store, the statement is being offered to prove the truth of the matter asserted. However, at both common law and under evidence codifications such as the Federal Rules of Evidence, there are dozens of exemptions from and exceptions to the hearsay rule.

Direct vs. circumstantial evidence
Direct evidence is any evidence that directly proves or disproves a fact. The most well-known type of direct evidence is a testimony from an eyewitness. In eye-witness testimonies the witness states exactly what they experienced, saw, or heard. Direct evidence may also be found in the form of documents. In cases that involve a breach of contract, the contract itself would be considered direct evidence as it can directly prove or disprove that there was breach of contract. Circumstantial evidence, however, is evidence that does not point directly to a fact and requires an inference in order to prove that fact.

A common example of the distinction between direct and circumstantial evidence involves a person who comes into a building, when it may be raining. If the person declares, "It's raining outside", that statement is direct evidence that it is raining. If the person is carrying a wet umbrella, and he is wearing a wet rain coat, those observations are circumstantial evidence that it is raining outside.[13]

Burdens of proof
Main article: Legal burden of proof
Different types of proceedings require parties to meet different burdens of proof, the typical examples being beyond a reasonable doubt, clear and convincing evidence, and preponderance of the evidence. Many jurisdictions have burden-shifting provisions, which require that if one party produces evidence tending to prove a certain point, the burden shifts to the other party to produce superior evidence tending to disprove it.

One special category of information in this area includes things of which the court may take judicial notice. This category covers matters that are so well known that the court may deem them proved without the introduction of any evidence. For example, if a defendant is alleged to have illegally transported goods across a state line by driving them from Boston to Los Angeles, the court may take judicial notice of the fact that it is impossible to drive from Boston to Los Angeles without crossing a number of state lines. In a civil case, where the court takes judicial notice of the fact, that fact is deemed conclusively proved. In a criminal case, however, the defense may always submit evidence to rebut a point for which judicial notice has been taken.

Evidentiary rules stemming from other areas of law
Some rules that affect the admissibility of evidence are nonetheless considered to belong to other areas of law. These include the exclusionary rule of criminal procedure, which prohibits the admission in a criminal trial of evidence gained by unconstitutional means, and the parol evidence rule of contract law, which prohibits the admission of extrinsic evidence of the contents of a written contract.

Evidence as an area of study
In countries that follow the civil law system, evidence is normally studied as a branch of procedural law.

All American law schools offer a course in evidence, and most require the subject either as a first year class, or as an upper-level class, or as a prerequisite to later courses. Furthermore, evidence is heavily tested on the Multistate Bar Examination (MBE) - approximately one-sixth of the questions asked in that test will be in the area of evidence. The MBE predominantly tests evidence under the Federal Rules of Evidence, giving little attention to matters on which the law of different states is likely to be inconsistent.

Tampering, falsification, and spoliation
Main articles: Spoliation of evidence, Tampering with evidence, and Falsification of evidence
Acts that conceal, corrupt, or destroy evidence can be considered spoliation of evidence and/or tampering with evidence. Spoliation is usually the civil-law/due-process variant, may involve intent or negligence, may affect the outcome of a case in which the evidence is material, and may or may not result in criminal prosecution. Tampering is usually the criminal law variant in which a person alters, conceals, falsifies, or destroys evidence to interfere with a law-enforcement, governmental, or regulatory investigation, and is usually defined as a crime. Parallel construction is the creation of an untruthful, but plausible, explanation for how the evidence came to be held, which hides its true origins, either to protect sources and methods used, or to avoid the evidence being excluded as unlawfully obtained. Depending on the circumstances, acts to conceal or destroy evidence or misrepresent its true origins might be considered both tampering and spoliation.

By jurisdiction
Canada Evidence Act
Evidence Act 2006 (New Zealand)
Federal Rules of Evidence (United States)
See also
Adverse inference
Anecdotal evidence
Discovery (law)
Electronic discovery
Evidence under Bayes theorem
Falsified evidence
Forensic animation
Omnibus hearing
Proof (truth)
Silent witness rule
Spectral evidence – testimony about ghosts or apparitions in the Salem witch trials
Strict rules of evidence
Ultimate issue (law)





Omnibus hearing
https://en.wikipedia.org/wiki/Omnibus_hearing
An omnibus hearing is a pretrial hearing. It is usually held soon after a defendant's arraignment. The main purpose of the hearing is to determine the evidence, including testimony and evidence seized at the time of arrest.

The counsel for the plaintiff (or the People) and the defendant attend the hearing to discuss pretrial matters pertaining to the case.

The purpose of the hearing is to see if the rights of the defendant have been violated, and it is the duty of the judge to make sure that the oath of office is preserved under article 6 paragraph 2, supremacy clause of the Constitution of the United States. To exchange discovery or any motions to dismissal or special appearance for violations at a state level and a Federal level.

Under the 7th amendment, the common law says that the defendant must have a victim or property damage in order for an actual crime committed, or a violation of the Constitution or bill of rights of another. Under the common law this would be to request for the victim or property damage to come forward for a statute or code. To find out if the authority delegated power under police powers did not violate any defendant of the bill of rights or due process. Duane Eugene Kirkland U.C.C 1-207 1-308 w/o prejudice...






Privilege (evidence)
https://en.wikipedia.org/wiki/Privilege_(evidence)#Types
In the law of evidence, a privilege is a rule of evidence that allows the holder of the privilege to refuse to disclose information or provide evidence about a certain subject or to bar such evidence from being disclosed or used in a judicial or other proceeding.

There are many such privileges recognised by the judicial system, some stemming from the common law and others from statute law. Each privilege has its own rules, which often vary between jurisdictions.




Contents
1	Types
2	Effect
3	See also
4	References
5	External links
Types
One well known privilege is the solicitor–client privilege, referred to as the attorney–client privilege in the United States and as the legal professional privilege in Australia. This protects confidential communications between a client and his or her legal adviser for the dominant purpose of legal advice.[1] The rationale is that clients ought to be able to communicate freely with their lawyers, in order to facilitate the proper functioning of the legal system.

Other common forms include privilege against compelled self-incrimination (in other proceedings), without prejudice privilege (protecting communications made in the course of negotiations to settle a legal dispute), public interest privilege (formerly Crown privilege, protecting documents for which secrecy is necessary for the proper functioning of government), spousal (marital) privilege, medical professional privilege, and clergy–penitent privilege.

In the US, several states have enacted the Uniform Mediation Act (UMA) which specifies a mediator's privilege with regard to state procedures.

In the United Kingdom, the Rehabilitation of Offenders Act 1974 provides that evidence relating to spent convictions (those in respect of which the Act says the convicted person is rehabilitated, generally older and less serious ones) is inadmissible, and provides privilege against answering questions relating to such convictions; although some exceptions apply, in particular in criminal proceedings.[2]

Effect
The effect of the privilege is usually a right on the part of a party or witness to a case, allowing them to refuse to produce evidence in the form of documents or testimony from the person entitled to the privilege. For example, a person can generally prevent their attorney testifying about the legal relationship between attorney and client, even if the attorney were willing to do so. In this case the privilege belongs to the client and not the attorney.

In a few instances, such as the marital privilege, the privilege is a right held by the potential witness. Thus, if a wife wishes to testify against her husband, she may do so even if he opposes this testimony; however, the wife has the privilege of refusing to testify even if the husband wishes her to do so.

On the other hand, the person entitled to a privilege is at liberty to waive the privilege.

See also
Accountant–client privilege
Admissible evidence
Deliberative process privilege
Priest–penitent privilege
Privilege log
Physician-patient privilege
Psychotherapist–patient privilege
Public-interest immunity
Reporters' privilege
Right to silence
Shield law
State secrets privilege
Classified Information Procedures Act
Silent witness rule
Subpoena duces tecum







Subpoena duces tecum
https://en.wikipedia.org/wiki/Subpoena_duces_tecum
A subpoena duces tecum (pronounced in English /səˈpiːnə ˌdjuːsiːz ˈtiːkəm/ sə-PEE-nə DEW-seez TEE-kəm), or subpoena for production of evidence, is a court summons ordering the recipient to appear before the court and produce documents or other tangible evidence for use at a hearing or trial.

The summons is known by various names in different jurisdictions. The term subpoena duces tecum is used in the United States, as well as some other common law jurisdictions such as South Africa and Canada. The summons is called a "subpoena for production of evidence" in some U.S. states that have sought to reduce the use of non-English words and phrases in court terminology.

The subpoena duces tecum is similar to the subpoena ad testificandum, which is a writ summoning a witness to testify orally. However, unlike the latter summons, the subpoena duces tecum instructs the witness to bring in hand books, papers, or evidence for the court. In most jurisdictions, a subpoena usually has to be served personally.


Contents
1	Etymology
2	Order pursuant to a deposition
3	Failure to produce documents
4	Jencks Act cases
5	Writ of mandamus
6	Commitment of witness; contempt of court
7	Privileges
8	Pre- and post-judgment execution proceedings
9	Public access to documents filed with the court
10	Production of documents in bankruptcy
11	Compelling a foreign corporation to produce documents
12	Subpoena of welfare documents
13	Federal Trade Commission hearings in monopoly actions
14	Subpoena of medical records
14.1	Administrative law
14.2	Medical malpractice actions
14.3	Experts and opinion evidence
14.4	Worker's Compensation actions
14.5	Mandatory reporting of child abuse
14.6	Mandatory reporting of wounds and injuries
14.7	Peer review records in medical licensing and hospital credential actions
15	See also
16	References
16.1	Notes
16.2	Sources
16.2.1	American jurisprudence
16.2.2	American law reports
16.2.3	Proof of facts
16.2.4	Case law citation
Etymology
The phrase "subpoena duces tecum" is a Latin expression meaning literally "under [threat of] penalty [or punishment], you will bring [it] with you." The word sub means "under" and poena "penalty"; duces "you will lead, guide, pull, bring"; and tecum "with you"

Order pursuant to a deposition
In the United States, a notice to a party deponent (a person called to testify in a deposition) may be accompanied by a request for production of documents and other tangible things during the taking of a deposition. The notice to produce (literally: "bring these documents with you to the deposition") is served prior to the deposition. This follows the Federal Rules of Civil Procedure.[1] The method of using a subpoena duces tecum is generally valid only to compel a witness to produce documents and other things at the time of the deposition. If a deponent is a non-party to the action (not involved directly in the litigation, but wanted for testimony), production of documents can be compelled only through a proper subpoena duces tecum.[2] Depending on the nature of the documents, and their volume, some may be obtained directly, and before deposition under FRCP 34. In cases where a large number of documents are potentially relevant to the hearing, the court may order them to be produced prior to the deposition. This forms a part of legal discovery and allows parties involved time to review them prior to the deposition or other hearing.

Federal cases and some states follow Rule 27(a)(3) of the Federal Rules of Civil Procedure concerning the production of documents in pretrial discovery, including those pertaining to depositions. These can include the subpoena duces tecum to produce documents, or in some cases to undergo a physical or mental examination. In the Ninth Circuit, interpreting Rule 27 literally, it has been held that a party can simply produce the documents only, and in certain cases, avoid an oral deposition when presented with a subpoena duces tecum.[3]

Failure to produce documents
A continuance (a rescheduling of a court hearing at a later date) of a civil action may be granted due to the absence of documents or papers. The party failing to produce the documents requested by a subpoena duces tecum must show good reason why there was a failure to do so. Acceptable explanations have included loss or destruction of papers, or an agreement to use copies. The party seeking the continuance must show that the absence of the documents is not because of the negligence of their own, or of the attorney of record.[4]

Similarly, a continuance may be granted in a criminal case if there is good reason documents pertinent to the case could not be produced at the time of trial. For example, a continuance should be granted for failure to produce a transcript of testimony given at a previous trial. In general, it is reversible error to proceed with a criminal trial in the absence of a previous trial transcript, when such contains pertinent information that should have been considered in the new trial. In these cases, a continuance is the usual remedy.[5]

A party's failure to produce subpoenaed evidence, where the evidence is under their control, may support a request to a finder of fact for an inference that the evidence would have been unfavorable to them.

Jencks Act cases
In the 1957 case Jencks v. United States the United States Supreme Court ruled that a defendant must have access to government witnesses who will testify against him in a criminal trial, and must also have access to any documents pertaining to that testimony.[6] This includes papers, documents, written statements and the like. This led to passage of the Jencks Act, 18 USC, Part II, Chapter 223, § 3500, which allows for subpoena duces tecum of relevant government documents, but only after a government agent or employee has testified at trial. There can be no pre-trial discovery. The subpoena is allowed by the trial judge. The government has the right to deny access to the documents. This may be due to the sensitive nature of the documents, or because they are classified.

In such an instance, the accused is permitted to ask the court for a remedy or sanction against his accuser or plaintiff for their inability to be able to confront the papers and/or effects (i.e., material items, physical exhibits, technical analyses, lab reports, etc.) that assert or support the accusation(s) against him. A court, in law and equity, is required to answer such a request. If the accused's request is not answered in a manner that favorably restores the balance between the accused and the Government in criminal cases, or between the defendant and the plaintiff in civil cases, it is grounds for an appeal if a mistrial is not granted. The United States Supreme Court dealt with this issue in federal civil cases in United States v. Reynolds.

If a remedy is granted, there is a mistrial and dismissal of criminal charges.[7][8] An accused criminal has no right to subpoena the work product of the prosecution in a criminal case.[9]

Writ of mandamus
A writ of mandamus is appropriate to compel surrender of documents in the possession of attorneys or other persons that have been illegally obtained under the abuse of a writ of attachment.[10] Mandamus can vacate an order to produce books and papers.[11]

In an 1893 case, the United States Attorney for Alabama refused to vacate his office, refusing to surrender books, papers and other materials to the newly appointed US Attorney. The federal court in Alabama issued a writ directing the previous attorney to relinquish the documents. He, in turn, sought relief from the Supreme Court, which denied his application, saying it would not interfere with the properly conducted internal matters of a court. In the case In re: Parsons, the US Supreme Court wrote: "If the orders be regarded merely as directions in the administration of judicial affairs in respect of the immediate possession of property or custody of prisoners, we cannot be properly called to, by reason of anything appearing on these records, in the exercise of appellate jurisdiction in this manner, to direct them to be set aside. And if the proceedings should be treated as involving a final determination as on issues joined to the right to such possession and custody, there was no complaint of want of notice or of hearing, and the summary made adopted did not in itself affect the jurisdiction of the Circuit Court upon the ground that it had exceeded its powers."[12]

Mandamus is the remedy where a lower court has clearly failed to issue compulsion to produce documents, or to allow the petitioner access to such documents as may be in the possession of the court or the parties to the action. Mandamus can be used to compel a court to enforce an order to answer interrogatories (questions submitted by the court or one of the parties to be answered under oath and pain of perjury).[13][14][15]

Mandamus is the proper remedy to compel the quashing of a subpoena duces tecum for the production before a grand jury of documents protected by attorney–client privilege.[16][17] Presumably, this would apply to attorney work product, although there is no case law on the matter.[18]

Commitment of witness; contempt of court
A witness who has refused to obey a lawful order to produce books, documents and papers may be incarcerated for contempt of court. A writ of habeas corpus will not apply unless it can be shown the witness could not have legally had possession of such documents. In such a situation the writ of habeas corpus will properly apply, and is the remedy for such improper action.[19][20]

At common law, and under various statutes pertaining to a given jurisdiction, a right to action for damages, or for a statutory penalty or forfeiture, exists against a witness who, without sufficient excuse, fails or refuses to give oral testimony or to produce documents or other specified items in obedience to the command of a properly issued and served subpoena.[21]

There are certain conditions precedent, or defenses, to a recovery of damages for a person's failure to testify, or to provide documents pertinent to a hearing or trial. There must be a breach of testimonial duty, after having been properly served with a legitimately executed subpoena. There must be a demonstration of actual damages incurred from the absence of testimony. Most courts have rejected the arguments for seeking damages in this kind of case. Giving false testimony in a judicial proceeding even though the allegation is made that the person giving the testimony knew it to be false, does not give rise, either at common law or by statute, to a civil action for damages resulting from such testimony. The situation is probably different if intentionally false documents are submitted under a subpoena duces tecum.[22][23]

Privileges
Main article: Privilege (evidence)
Attorney–client privilege is generally recognized by the courts. Communications between lawyer and client are generally immune from subpoena. In other words, a lawyer cannot be compelled to testify in a trial unless the lawyer becomes, or appears to become, a party to the litigation. A similar situation exists with "work product", meaning written documents or computer records generated in preparation for a trial or hearing. This includes information such as potential questions that may be asked of witnesses, lists of possible witnesses, memoranda, notes, trial strategies, written briefs, or documents that may, or may not end up being used in the course of litigation. Usually, none of this can be the subject of a subpoena duces tecum. If a communication between lawyer and client is made in the presence of the third party, the privilege is not recognized to exist.[24][25][26][27][28][29]

The federal courts will apply the common law rule of attorney–client privilege unless there is an intervening state law applying to the central issues of the matter. In those cases, the federal court uses the effective state law.[30][31]

Physician–patient privilege is usually statutorily defined, and can vary from state to state. The usual rule is that medical records are immune from subpoena if the plaintiff has not alleged physical or mental injuries or damages. Once the plaintiff alleges physical or mental injuries proximately flowing from a potentially tortious act by the defendant, or in some other disability hearing, medical records can be subject to subpoena duces tecum. While witnesses may try to resist legal discovery by asking the judge to protect them from questioning or inspection of documents, the policy of the courts is in favor of full disclosure. It is the intent of the rules of procedure that pre-trial discovery take place without any intervention of a judge. So-called "fishing expeditions" (massive and aimless calls for all documents related to the litigation) are permissible under Federal Rule of Civil Procedure 26 (b) (1). This rule is repeated in many states' rules of procedure: "Parties may obtain discovery regarding any matter, not privileged, which is relevant ... if the information sought appears reasonably calculated to lead to the discovery of admissible evidence." The looseness of the definition of relevant evidence is generally construed to mean "liberal" production. The physician who is the party to an action does not own the records of patients he has treated. They are not privileged if the patient has waived confidentiality. Physicians must produce medical records under subpoena duces tecum.[32]

Peer review records, and other hospital documents of quality control committee meetings are generally not subject to subpoena duces tecum, since these have statutory immunity. The theory is that the frankness of peer review would be chilled if these records could be routinely compelled.[33][34]

Several United States Federal Circuit Courts have recognized a limited reporter's privilege. The United States Justice Department has a self-imposed limitation upon subpoena of reporters and their notes. This privilege is not universal, and is incomplete.

Internal memos from scientific and medical journals generated in peer reviewing articles for publication are generally immune from subpoena.

In some states (such as California), rape crisis counselors and domestic violence advocates hold a statutory privilege analogous to therapist–client privilege. (See, for example, 1035 Cal. Evidence Code for rape crisis advocates,[35] and 1037.6 Cal. Evidence Code for domestic violence advocates).[36] However, these privileges are not absolute, and may be overruled by a judge upon a showing that "the probative value of the information outweighs the effect of disclosure of the information on the victim, the counseling relationship, and the counseling services", or under a number of other limited circumstances. To respect and preserve the privacy of sensitive material contained in such reports, the judge may require the disclosure of confidential information to take place in camera.

So called "priest–penitent" privilege, which precludes forced testimony of confessions made to a priest, minister, or religious adviser are statutorily defined in the United States. They vary between states. In some cases, the privilege is confusing and ill-defined. In others, there is recognized stare decisis. (See: priest–penitent privilege, confessional privilege (United States), spousal privilege, executive privilege, reporter's privilege.)

Pre- and post-judgment execution proceedings
Discovery can be authorized for the production of documents for both pre-trial and post-trial actions. Most states either follow, or have modeled their procedures after, the Federal Rules of Civil Procedure Rule 69(a).

Judgment creditors (those who have received a favorable court ruling for monetary damages) are permitted to ask questions about a debtor's residence; recent employment history; business relationships, including partners, co-shareholders, co-officers, co-directors; the contents of a will; transfers of property; and the identity of persons who either owed a debt to the judgment debtor, or received things of value from the debtor. Information in bank accounts can also be the subject of a subpoena duces tecum.[37]

In federal court proceedings concerning judgment debtors, the inquiry is usually limited to the discovery of assets. In international cases, being tried in United States Federal Courts, the application of the Hague Service Convention is utilized where appropriate.[38]

Public access to documents filed with the court
The right of the public to access judicial records is fundamental to a democratic state and is analogous to the United States' First Amendment right of freedom of speech and of the press and the Sixth Amendment right to public trials.[39][40][41] While the right to access trial records is not absolute, it is framed in presumption of public access to the proceedings and records.[42][43][44][45][46] United States Code 11, Section 107 (a), of the federal bankruptcy law, is a codification of the common-law general right to inspect judicial records and documents. However, the right is not absolute and may be denied when the entity seeking to view the records has an improper purpose. The general intent of the statute is to favor public access to court documents.[47]

Production of documents in bankruptcy
An entity (person or a corporation) may be compelled to produce documentary evidence in accordance with the subpoena powers of Federal Rule of Civil Procedure 45 as applied by Bankruptcy Rule 9016. The United States Bankruptcy Court has powers to compel production of documents from a non-debtor corporation or person concerning transactions involving the debtor corporation or person. Production of documents can be challenged as being burdensome. Assets diverted to outside corporations or bank accounts/stock portfolios and such other assets as land holdings lie within the power to compel production under subpoena duces tecum. Federal law recognizes no accountant-client privilege. A subpoena duce tecum served pursuant to Bankruptcy Rule 2004 is not a violation of accountant-client privilege. 11 United States Code section 107 (a) provides that papers filed in cases under the Bankruptcy Code and dockets of the Bankruptcy Courts are public records and are to be open to examination at reasonable times without charge.[48]

Compelling a foreign corporation to produce documents
A domestic corporation may be considered to be a "person" within the meaning of the Fourteenth Amendment of the United States Constitution. It is not necessary to treat a corporation as a person in all circumstances. United States case law is confusing concerning this matter when dealing with foreign corporations, and their operation within the United States. Especially troubling have been rulings concerning the Fourth Amendment of the United States Constitution and Fifth Amendment to the United States Constitution. A foreign agent may not claim Fifth Amendment provisions against self-incrimination. Nor can records be withheld from subpoena duces tecum on the grounds that production of such documents would incriminate officers or other members of the foreign corporation. However, there is case authority in which foreign corporations have been protected from illegal searches and seizures, including documents and books.[49] The matter of a foreign corporation operating as a "person" within the United States being afforded protection under the Fourteenth Amendment is discussed.[50][51][52]

Subpoena of welfare documents
Statutes governing the disclosure of information contained in welfare records exist in many jurisdictions. The rationale for the existence of these regulations is to encourage full and frank disclosure by the welfare recipient of his situation and the protection of the recipient from the embarrassment likely to result from the disclosure of information contained in such records.[53] In some states, records can be disclosed at the discretion of the state director of welfare. In general, welfare records are not public records, and should not be considered to be such. Disclosure of information is usually limited to purposes directly connected with the administration of welfare benefits. The investigation of costs of welfare programs have been held to be sufficiently related to the matters in question to justify disclosure. Statutes designed to limit welfare record availability are generally held by the courts to be not immune from the power of subpoena duces tecum. Certain state laws limit the availability of information that can be obtained from the subpoena of such documents. These are always subject to a court challenge, on a case by case basis. Welfare recipients are generally allowed access to their files, by subpoena duces tecum. Death of a welfare recipient is considered in some states to be sufficient reason to remove the reason for confidentiality. Some states have passed so-called "Right to Know" statutes, which would make welfare recipients and the information available to the public. These, along with common law, and state and federal constitutions guaranteeing freedom of the press do not give newspapers (or other news media) the right to access the names of persons on welfare, or the amounts they receive.[54]

Federal Trade Commission hearings in monopoly actions
Whenever the Federal Trade Commission (FTC) has reason to believe that any person has violated 15 USC section 13, 14, 18 or 19, it must issue and serve on that person and on the Attorney General of the United States, a complaint stating its charges in that regard. The notice shall also give a date for a hearing in the matter. Delivery of the subpoena duces tecum for production of documents may be done in person, or by certified letter. Receipt of the letter is considered proof of service.[55]

Power to issue subpoenas is extended to Robinson–Patman Act cases of price-fixing and Clayton Act cases of unlawful acquisition.[56]

A Federal District Court lacks jurisdiction to enjoin the Federal Trade Commission from proceeding in an investigation. It cannot stay (stop) a subpoena duces tecum to produce documents in the investigative stage. An injunction by a federal court does not have the power to restrain the FTC from enforcing an order requiring corporations to furnish reports and documents un 15 USC § 49. The only relief available to stop a demand for documents is to seek an action of compliance in mandamus by the Attorney General of the United States, or under 15 USC § 50 to enforce fines and forfeitures.[57]

If the FTC institutes an adjudicative proceeding (a hearing), the person who originated the matter by complaining to the FTC is not a party to the action and does not have any control over it. The FTC may allow the complaining person to participate in the proceeding by virtue of 15 USC, section 45. This allows participation for good cause, either by counsel (lawyer) or in person. You cannot intervene in an FTC hearing, except by demonstrating that substantial issues of law or fact would not be properly raised and argued—and that these issues are important and immediate enough to warrant additional expenditure of FTC resources. This involvement can be enhanced by subpoena duces tecum.

Pre-hearing conferences are the norm. These are useful in:

Clarifying or simplifying issues
Amending pleadings
Entering stipulations, admissions of fact, and contents and authenticity of documents
Expediting discovery and presentation of evidence, including restriction of witnesses
Matters subject to official notice that may be resolved by further production of documents related to the case
In general, pre-hearing conferences are not public.[58] The FTC is not restricted by a rigid rule of evidence.[59]

Subpoena of medical records
Administrative law
Disabled persons under the age of 65 years can be eligible for disability benefits under Social Security Titles II and XVI.[60]

The seminal case in Social Security law is Richardson v. Perales, a Supreme Court decision from 1971. The court directed that medical reports put forth by a treating physician in Social Security hearings should be accepted as evidence, despite the hearsay nature of the medical records. These should be accepted, even if cross-examination is not available. The claimant has the right to subpoena the treating physician. In cases of conflicting medical evidence, it is not unconstitutional for the hearing officer to obtain independent medical advice to help resolve the physical questions involved. Under the Administrative Procedure Act, hearsay in the form of medical records are admissible up to the point of relevancy.[61]

Several federal agencies have adopted Jencks Act rules. Although the Jencks Act applies only to government agents or employees who testify in criminal cases, making these witnesses and relevant documents available for cross-examination after testimony, it has been applied in administrative law cases in the interests of justice and fair play.[62] The party of record must make an official request to the hearing officer to have Jencks rules followed.[63] Some agency rules, such as National Labor Relations Board automatically follow Jencks Act requirements.[64]

Medical malpractice actions
In a case of alleged negligence by a physician, written summaries of the case by physicians provided to the insurance carrier or other parties can be the subject of a subpoena duces tecum, if, in the opinion of the court, they are relevant to the plaintiff's case. Claims that these statements are "work product" will generally fail.[65]

Medical records form the core of any medical malpractice case.[66] Actions for malpractice are controlled by the general rules of evidence in civil procedure.[67] A malpractice action necessarily involves the question of requisite care and skill applied in a medical case. With the exception of res ipsa loquitur cases, medical opinion about the care is essential. This involves the necessity to obtain a subpoena duces tecum for medical records.[68][69][70]

Admission of "learned treatises" (published books and medical articles) at trial varies from jurisdiction to jurisdiction. Some require that the expert admit it is an authoritative reference.[71][72] Others will allow admission of learned treatises by judicial notice.[73][74]

Experts and opinion evidence
In tort actions for recovery of damages, it is necessary for the introduction of medical records to establish a basis for the claimed loss. An injured plaintiff is entitled to recover the expenses necessary to cure or treat injuries.[75][76][77][78][79][80][81] Courts frequently call upon expert testimony to interpret and advise, after examining medical records concerning the nature of injuries, future medical, disability and other issues before the court.[82][83][84][85]

Worker's Compensation actions
Medical records introduced as evidence are crucial in determining both causation and impairment in worker's compensation cases. In cases where the evidence is contested, medical evidence in the form of records, opinions, affidavits and testimony concerning both fact and opinion is necessary. When oral testimony is taken from physicians, the usual standard is to state an opinion "within a reasonable degree of medical certainty".[86][87] Worker's compensation laws are dictated by state statute or Federal Employers Liability Act.[88] In many states, the employer has the right to demand an independent examination and can also direct treatment be carried out by certain physicians.[89]

Mandatory reporting of child abuse
In the landmark 1976 California case of Landeros v. Flood,[90] the California Supreme Court remanded a case to the trial court for action in tort against a treating physician for failure to report suspected child abuse.[91][92] The theory at trial was that the plaintiff, a child of about 12 months of age, had been returned to a home where further physical abuse occurred, causing more damages. This was because the physician had failed to report the abuse in violation of California law.[91] After this case, all states instituted mandatory reporting by physicians and other medical personnel of any suspected child abuse or neglect cases. In general, reporting in good faith shields the physician or health care worker from tort liability. Reporting to police or social services necessitates obtaining medical records by subpoena duces tecum. This case, and legislation that followed it were in response to several articles that appeared in the medical literature that defined battered child syndrome and child abuse syndrome.[93]

The 1962 Social Security Amendments[94] require each state to make child welfare services available throughout the state to all children and provide coordination between child welfare services (Title IV-B) and social services provided under the Aid to Families with Dependent Children Act (ADC, later known as AFDC; now called Title XX) Determinations in these cases frequently require production of medical records.

In 1972, Congressional hearings began on child abuse and neglect. In response, Congress passed the Child Abuse Prevention and Treatment Act,[95] which defined abuse as "physical or mental injury, negligent treatment, or maltreatment of a child under the age of 18 by a person who is responsible for the child's welfare under circumstances which would indicate that the child's health or welfare is harmed or threatened thereby". The legislation created the National Center on Child Abuse and Neglect as an information clearinghouse.

The Child Abuse Prevention and Treatment Act of 1974 (42 U.S.C. § 5101 - 42 U.S.C. § 5106) defined "child abuse and neglect" as "physical or mental injury, sexual abuse, negligent treatment, or maltreatment of a child under the age of eighteen by a person responsible for the child's welfare under circumstances which indicate that the child's health or welfare is harmed or threatened thereby."[96]

The Child Abuse Prevention and Treatment Act of 1988[97] when enacted, expanded the definition of abuse. Sexual crimes were specifically identified in Sex Crimes Against Children Act of 1995[98] These laws have made child abuse a federal crime, and routinely mandate production of medical records.[92][96][99][100][101][102][103][104]

Mandatory reporting of wounds and injuries
Physician-patient privilege is defined and limited by statute. Many jurisdictions have mandatory reporting laws requiring treating physicians or other medical personnel to report any suspicious injury to police or other appropriate authorities. These requirements may be imposed by statute, ordinance or regulation. Some of these may be limited to wounds typically inflicted by gun or knife. There may be similar reporting requirements in cases of domestic violence. These statutes have been generally upheld to constitutional challenges. Reporting of such cases usually voids any challenge to subpoena duces tecum of the medical records by police or state authorities.[105]

Peer review records in medical licensing and hospital credential actions
The issue of removal of a doctor from a hospital staff, or revoking or limiting a license to practice medicine usually involve various state and federal immunities. The Healthcare Quality Improvement Act (HCQIA) of 1986 granted doctors sitting on peer review committees immunity from subpoena duces tecum, or liability for the revocation of hospital privileges of other doctors. The matters of peer review cannot, in the normal course of events, be the subject of a subpoena duces tecum. This has led to claims that powerful doctors can abuse the process to punish other doctors for reasons unrelated to medical issues (termed "sham peer review").

The American Medical Association conducted a probe of the sham peer review issue and found that no pervasive problem exists. Allegations of sham peer review are easy to make (for example, by doctors whose medical mistakes have made them targets of peer review), but actual infractions are rare.[106] Opponents of peer review counter that the sparcity of successful challenges is indicative of how widespread the problem is and how difficult these actions are to win.

See also
Administrative Procedure Act (United States)
Attorney–client privilege
Bankruptcy in the United States
Deposition (law)
Documentary evidence
Federal Rules of Civil Procedure
Fifth Amendment to the United States Constitution
Fourteenth Amendment of the United States Constitution
Fourth Amendment of the United States Constitution
Interrogatories
Legal discovery
Physician–patient privilege
Reporter's privilege
Subpoena ad testificandum




Conventional wisdom
https://en.wikipedia.org/wiki/Conventional_wisdom#Origin_of_the_term
The conventional wisdom or received opinion is the body of ideas or explanations generally accepted by the public and/or by experts in a field.[1] In religion, this is known as orthodoxy.[citation needed]


Contents
1	Origin of the term
2	Accuracy
3	Integration with scientific evidence
4	See also
5	References
6	Further reading
Origin of the term
The term is often credited to the economist John Kenneth Galbraith, who used it in his 1958 book The Affluent Society:[2]

It will be convenient to have a name for the ideas which are esteemed at any time for their acceptability, and it should be a term that emphasizes this predictability. I shall refer to these ideas henceforth as the conventional wisdom.[3]

However, the term dates back to at least 1838.[4][n 1] Conventional wisdom was used in a number of other works before Galbraith, occasionally in a benign[5] or neutral[6] sense, but more often pejoratively.[7] However, previous authors used it as a synonym for 'commonplace knowledge'. Galbraith specifically prepended 'The' to the phrase to emphasize its uniqueness, and sharpened its meaning to narrow it to those commonplace beliefs that are also acceptable and comfortable to society, thus enhancing their ability to resist facts that might diminish them. He repeatedly referred to it throughout the text of The Affluent Society, invoking it to explain the high degree of resistance in academic economics to new ideas. For these reasons, he is usually credited with the invention and popularization of the phrase in modern usage.

Accuracy

This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (January 2008) (Learn how and when to remove this template message)
Conventional wisdom is not necessarily true. It is often seen as a hindrance to the acceptance of new information, and to the introduction of new theories and explanations, an obstacle that must be overcome by legitimate revisionism. That is, conventional wisdom has a property analogous to inertia that opposes the introduction of contrary belief, sometimes to the point of absurd denial of the new information or interpretation by persons strongly holding an outdated but conventional view. Since conventional wisdom is convenient, appealing, and deeply assumed by the public, this inertia can last even after many experts and/or opinion leaders have shifted to a new convention.

Conventional wisdom may be political, being closely related to the phenomenon of talking points. The term is used pejoratively to suggest that consistently repeated statements become conventional wisdom whether they are true or not.

More generally, it refers to accepted truth that almost no one seems to dispute, and so it is used as a gauge (or wellspring) of normative behavior or belief, even within a professional context. For example, the conventional wisdom in 1950, even among most doctors, was that smoking tobacco is not particularly harmful to one's health.[citation needed] The conventional wisdom today: it is. More narrowly, the conventional wisdom in science and engineering once was that a man would suffer lethal injuries if he experienced more than eighteen g-forces in an aerospace vehicle, but it is so no longer. (John Stapp repeatedly withstood far more in his research, peaking above 46 Gs in 1954).

Sometimes, the present conventional wisdom treats of past conventional wisdom. For example, "It is widely believed that prior to Christopher Columbus people thought the world was flat, but in actuality, scholars of that time had long accepted that the earth is a sphere." That sentence is true; yet, if enough people read and believed it, it would supplant the old belief (in a prevailing view of a flat earth in Columbus's time), becoming the new conventional wisdom. (Ironically, that shift would falsify the quoted sentence by declaring incorrectly that most people hold a false belief about the past.)[clarification needed]

Integration with scientific evidence
Evidence-based medicine is a deliberate effort to acknowledge expert opinion (conventional wisdom) and how it coexists with scientific data. Evidence-based medicine acknowledges that expert opinion is "evidence" and plays a role to fill the "gap between the kind of knowledge generated by clinical research studies and the kind of knowledge necessary to make the best decision for individual patients."[8]

See also
Argumentum ad populum
Boiling frog
Common sense
Consensus reality
Convenience
Contrarian
Dominant ideology
Mass psychology
Paradigm shift
Social constructionism
Social loafing
Speaking truth to power
Truthiness





Obliteration by incorporation
https://en.wikipedia.org/wiki/Obliteration_by_incorporation#Concept
In sociology of science, obliteration by incorporation (OBI) occurs when at some stage in the development of a science, certain ideas become so universally accepted and commonly used that their contributors are no longer cited. Eventually, its source and creator are forgotten ("obliterated") as the concept enters common knowledge (is "incorporated"). Obliteration occurs when "the sources of an idea, finding or concept, become obliterated by incorporation in canonical knowledge, so that only a few are still aware of their parentage".[1]


Contents
1	Concept
2	Examples
3	See also
4	References
5	Further reading
Concept
The concept was introduced by Robert K. Merton in 1949, although some incorrectly attribute it to Eugene Garfield, whose work contributed to the popularization of Merton's theory. Merton introduced the concept of "obliteration by incorporation" in his landmark work, Social Theory and Social Structure in 1949 (although the revised edition of 1968 is usually cited (pp. 27–28, 35–37 in the enlarged edition)). Merton also introduced the less known counterpart to this concept, adumbrationism, meaning the attribution of insights, ideas or analogies absent from original works.[2]

In the process of "obliteration by incorporation", both the original idea and the literal formulations of it are forgotten due to prolonged and widespread use, and enter into everyday language (or at least the everyday language of a given academic discipline), no longer being attributed to their creator.[3]

Thus they become similar to common knowledge. Merton notes that this process is much more common in highly codified fields of natural sciences than in social sciences.[4] It can also lead to ignoring or hiding the early sources of recent ideas under the claims of novelty and originality.[2] Allan Chapman notes that 'obliteration by incorporation' often affects famous individuals, to whom attribution becomes considered as obvious and unnecessary, thus leading to their exclusion from citations, even if they and their ideas have been mentioned in the text.[5] Marianne Ferber and Eugene Garfield concur with Chapman, noting that obliteration often occurs when the citation count and reputation of an affected scientist have already reached levels much higher than average.[5]

The obliteration phenomenon is a concept in library and information science, referring to the tendency for truly ground-breaking research papers to fail to be cited after the ideas they put forward are fully accepted into the orthodox world view. For example, Albert Einstein's paper on the theory of relativity is rarely cited in modern research papers on physical cosmology, despite its direct relevance.

Examples
Many terms and phrases were so evocative that they quickly suffered the fate of 'obliteration by incorporation'. Examples include:

double helix structure of DNA, introduced by James D. Watson and Francis Crick[6]
periodic table of elements, introduced by Dmitri Mendeleev[6]
self-fulfilling prophecy, introduced by Robert K. Merton
role model, introduced by Robert K. Merton
See also
icon	Society portal
Citation analysis
Genericized trademark
Law of eponymy: Chicago historian of statistics Stephen M. Stigler has written about a "law of eponymy" whereby "no scientific discovery is named after its original discoverer." Examples: America was not discovered by Americus Vespucci, the Gaussian distribution was not discovered by Gauss.
Matthew effect
Recuperation (politics)





Cultural heritage
https://en.wikipedia.org/wiki/Cultural_heritage#Protection_of_cultural_heritage
Cultural heritage is the legacy of cultural resources and intangible attributes of a group or society that is inherited from past generations. Not all legacies of past generations are "heritage", rather heritage is a product of selection by society.[1]

Cultural heritage includes tangible culture (such as buildings, monuments, landscapes, books, works of art, and artifacts), intangible culture (such as folklore, traditions, language, and knowledge), and natural heritage (including culturally significant landscapes, and biodiversity).[2]

The deliberate act of keeping cultural and heritage from the present for the future is known as preservation (American English) or conservation (British English), which cultural and historical ethnic museums and cultural centers promote, though these terms may have more specific or technical meaning in the same contexts in the other dialect. Preserved heritage has become an anchor of the global tourism industry, a major contributor economic value to local communities.[1]

Legal protection of cultural property comprises a number of international agreements and national laws, and these must also be implemented. United Nations, UNESCO and Blue Shield International deal with the protection of cultural heritage. This also applies to the integration of United Nations peacekeeping.[3][4][5][6][7][8]


Contents
1	Protection of cultural heritage
2	The ethics and rationale of cultural preservation
3	Types of heritage
3.1	Cultural property
3.2	Intangible culture
3.3	Natural heritage
4	World heritage movement
5	National and regional heritage movements
6	Issues in cultural heritage
7	Management of cultural heritage
8	Value Creation through Digitisation
9	See also
9.1	Digital methods in preservation
10	References
11	Further reading
12	External links
Protection of cultural heritage
Protection of cultural heritage or protection of cultural goods means all measures to protect cultural property against damage, destruction, theft, embezzlement or other loss. The term “monument protection” is also used for immovable cultural property. This relates in particular to the prevention of robbery digs at archaeological sites, the looting or destruction of cultural sites and the theft of works of art from churches and museums all over the world and basically measures regarding the conservation and general access to our common cultural heritage. Legal protection of cultural heritage comprises a number of international agreements and national laws, and these must also be implemented.[9][10][11][12][13]

There is a close partnership between Blue Shield International, the UN, United Nations peacekeeping, UNESCO and the International Committee of the Red Cross.[8][14] In many armies, such as the Austrian Armed Forces (Theresian Military Academy), there are extensive protection programs and cultural heritage protection is part of the training.[15][16] Essentially, the armed forces and conflicting parties are generally prohibited from using cultural heritage, its immediate surroundings and the facilities intended for its protection for military (paramilitary) purposes, and in particular exposing cultural property to destruction or damage in the event of an armed conflict.


Karl von Habsburg, on a Blue Shield International fact-finding mission in Libya
There have been examples of respect for the cultural assets of enemies since ancient times. The roots of today's legal situation for the explicit protection of cultural heritage also lie in some of Austria's ruler Maria Theresa (1717 - 1780) decided Regulations and the demands of the Congress of Vienna (1814/15) not to remove works of art from their place of origin in the war.[17] The process continued at the end of the 19th century when, in 1874 (in Brussels), at least a draft international agreement on the laws and customs of war was agreed. 25 years later, in 1899, an international peace conference was held in the Netherlands on the initiative of Tsar Nicholas II of Russia, with the aim of revising the declaration (which was never ratified) and adopting a convention. The Hague Conventions of 1899 and 1907 also significantly advanced international law and laid down the principle of the immunity of cultural property. Three decades later, in 1935, the preamble to the Treaty on the Protection of Artistic and Scientific Institutions (Roerich Pact) was formulated. On the initiative of UNESCO, the Hague Convention for the Protection of Cultural Property in the Event of Armed Conflict was signed in 1954.[18]

The protection of the cultural heritage should also preserve the particularly sensitive cultural memory, the growing cultural diversity and the economic basis of a state, a municipality or a region. Whereby there is also a connection between cultural user disruption or cultural heritage and the cause of flight. But only through the fundamental cooperation, including the military units and the planning staff, with the locals can the protection of world heritage sites, archaeological finds, exhibits and archaeological sites from destruction, looting and robbery be implemented sustainably. The founding president of Blue Shield International Karl von Habsburg summed it up with the words: “Without the local community and without the local participants, that would be completely impossible”.[19][20][21][22]

The ethics and rationale of cultural preservation
Objects are a part of the study of human history because they provide a concrete basis for ideas, and can validate them. Their preservation demonstrates a recognition of the necessity of the past and of the things that tell its story.[23] In The Past is a Foreign Country, David Lowenthal observes that preserved objects also validate memories. While digital acquisition techniques can provide a technological solution that is able to acquire the shape and the appearance of artifacts with an unprecedented precision[24] in human history, the actuality of the object, as opposed to a reproduction, draws people in and gives them a literal way of touching the past. This unfortunately poses a danger as places and things are damaged by the hands of tourists, the light required to display them, and other risks of making an object known and available. The reality of this risk reinforces the fact that all artifacts are in a constant state of chemical transformation, so that what is considered to be preserved is actually changing – it is never as it once was.[25] Similarly changing is the value each generation may place on the past and on the artifacts that link it to the past.

File:Responsible development.webm
Kautilya Society in Varanasi - When heritage protection becomes a fight for legality and participation Film-Camera.png → "They harass me because I demand civil society participation to public policies and I contrast the misuse of privileges"
Classical civilizations, and especially the Indian, have attributed supreme importance to the preservation of tradition. Its central idea was that social institutions, scientific knowledge and technological applications need to use a "heritage" as a "resource".[26] Using contemporary language, we could say that ancient Indians considered, as social resources, both economic assets (like natural resources and their exploitation structure) and factors promoting social integration (like institutions for the preservation of knowledge and for the maintenance of civil order).[27] Ethics considered that what had been inherited should not be consumed, but should be handed over, possibly enriched, to successive generations. This was a moral imperative for all, except in the final life stage of sannyasa.

What one generation considers "cultural heritage" may be rejected by the next generation, only to be revived by a subsequent generation.

Types of heritage
Cultural property
See also: Material culture
Cultural property includes the physical, or "tangible" cultural heritage, such as artworks. These are generally split into two groups of movable and immovable heritage. Immovable heritage includes building so (which themselves may include installed art such as organs, stained glass windows, and frescos), large industrial installations, residential projects or other historic places and monuments. Moveable heritage includes books, documents, moveable artworks, machines, clothing, and other artifacts, that are considered worthy of preservation for the future. These include objects significant to the archaeology, architecture, science or technology of a specified culture.[2]

Aspects and disciplines of the preservation and conservation of tangible culture include:

Museology
Archival science
Conservation (cultural heritage)
Art conservation
Archaeological conservation
Architectural conservation
Film preservation
Phonograph record preservation
Digital preservation
Intangible culture

The Grandfather tells a story, by Albert Anker, ca. 1884.
Main article: Intangible cultural heritage
"Intangible cultural heritage" consists of non-physical aspects of a particular culture, more often maintained by social customs during a specific period in history. The concept includes the ways and means of behavior in a society, and the often formal rules for operating in a particular cultural climate. These include social values and traditions, customs and practices, aesthetic and spiritual beliefs, artistic expression, language and other aspects of human activity. The significance of physical artifacts can be interpreted as an act against the backdrop of socioeconomic, political, ethnic, religious and philosophical values of a particular group of people. Naturally, intangible cultural heritage is more difficult to preserve than physical objects.[citation needed]

Aspects of the preservation and conservation of cultural intangibles include:

folklore
oral history
language preservation
Natural heritage
See also: Conservation movement
"Natural heritage" is also an important part of a society's heritage, encompassing the countryside and natural environment, including flora and fauna, scientifically known as biodiversity, as well as geological elements (including mineralogical, geomorphological, paleontological, etc.), scientifically known as geodiversity. These kind of heritage sites often serve as an important component in a country's tourist industry, attracting many visitors from abroad as well as locally. Heritage can also include cultural landscapes (natural features that may have cultural attributes).

Aspects of the preservation and conservation of natural heritage include:

Rare breeds conservation
Heirloom plants
World heritage movement

Plaque stating the designation of Carthage as a World Heritage Site.
Significant was the Convention Concerning the Protection of World Cultural and Natural Heritage that was adopted by the General Conference of UNESCO in 1972. As of 2011, there are 936 World Heritage Sites: 725 cultural, 183 natural, and 28 mixed properties, in 153 countries. Each of these sites is considered important to the international community.

The underwater cultural heritage is protected by the UNESCO Convention on the Protection of the Underwater Cultural Heritage. This convention is a legal instrument helping states parties to improve the protection of their underwater cultural heritage.[28][29]

In addition, UNESCO has begun designating masterpieces of the Oral and Intangible Heritage of Humanity. The Committee on Economic, Social and Cultural Rights sitting as part of the United Nations Economic and Social Council with article 15 of its Covenant had sought to instill the principles under which cultural heritage is protected as part of a basic human right.

Key international documents and bodies include:

Athens Charter, 1931
Roerich Pact, 1935
Hague Convention for the Protection of Cultural Property in the Event of Armed Conflict, 1954, (with a definition of cultural heritage item adopted by some national law)
Venice Charter, 1964
Barcelona Charter, 2002 (regarding maritime vessel preservation)
ICOMOS
The Blue Shield, a network of committees of dedicated individuals across the world that is “committed to the protection of the world’s cultural property, and is concerned with the protection of cultural and natural heritage, tangible and intangible, in the event of armed conflict, natural- or human-made disaster.”
International Institute for Conservation
National and regional heritage movements
File:Muisca Indigenous Heritage.webm
Wikibooks Rediscovery of the Muisca Indigenous Heritage
Film-Camera.png El redescubrimiento de la tradición indígena
File:Youth & Heritage - Sweida - Syria.webm
Youth and Heritage in Syria
Film-Camera.png Passing on traditional values
Much of heritage preservation work is done at the national, regional, or local levels of society. Various national and regional regimes include:

Australia:
Burra Charter
Heritage Overlay in Victoria, Australia
Brazil:
National Institute of Historic and Artistic Heritage
Canada
Heritage conservation in Canada
Chile
National Monuments Council (Chile)
China
State Administration of Cultural Heritage
Egypt
Supreme Council of Antiquities
Estonia
Ministry of Culture (Estonia)
National Heritage Board (Estonia)[30]
Ghana
Ghana’s material cultural heritage
Honduras
Secretary of State for Culture, Arts and Sports
Hong Kong
Heritage conservation in Hong Kong
India
Ministry of Culture (India)
National Archives of India
Archaeological Survey of India
Anthropological Survey of India
Culture of India
National Museum Institute of the History of Art, Conservation and Museology
List of World Heritage Sites in India
Indian Heritage Cities Network, Mysore
Heritage structures in Hyderabad
Iran
Cultural Heritage, Handcrafts and Tourism Organization
Japan
Cultural Properties of Japan
Kenya
Monuments
Macedonia
Institute for Protection of Cultural Monuments
Malaysia
The National Heritage Act
Namibia
National Heritage Council of Namibia
National Monuments Council
New Zealand
New Zealand Historic Places Trust
Pakistan
Lahore Museum of Art and Cultural History
Lok Virsa Heritage Museum
National Museum of Pakistan
Pakistan Monument and Heritage Museum
Philippines
National Commission for Culture and the Arts
National Historical Commission of the Philippines
Poland
National Ossoliński Institute[31]
South Africa
South African Heritage Resources Agency
Provincial heritage resources authorities
Amafa aKwaZulu-Natali
Heritage Western Cape
Northern Cape Heritage Resources Authority
National Monuments Council
Historical Monuments Commission
United Kingdom
Conservation in the United Kingdom
English Heritage
English Heritage Archive
National Trust
Cadw
Northern Ireland Environment Agency
Historic Environment Scotland
National Trust for Scotland
United States of America
National Register of Historic Places
Zimbabwe
National Monuments of Zimbabwe
Issues in cultural heritage

Emblem used to clearly identify cultural property under protection of the Hague Convention of 1954, regarding cultural property during armed conflicts.
Broad philosophical, technical, and political issues and dimensions of cultural heritage include:

Cultural heritage repatriation
Cultural heritage management
Cultural property law
Heritage tourism
Virtual heritage
Management of cultural heritage
Issues in cultural heritage management include:

Exhibition of cultural heritage objects
Objects conservator
Radiography of cultural objects
Storage of cultural heritage objects
Value Creation through Digitisation
Through digitisation a range of values can be created relating to documentation, preservation, research, education, commercialisation, engagement, etc.[32]

See also
Antiquarian
Architectural Heritage
Collecting
Heritage film
International Council on Monuments and Sites
Values (heritage)
Digital methods in preservation
DigiCULT
ERPANET
Intellectual property issues in cultural heritage (IPinCH)
MICHAEL (webportal) [de; fr; it; nl]





Cultural practice
https://en.wikipedia.org/wiki/Cultural_practice#Examples
Cultural practice is the manifestation of a culture or sub-culture, especially in regard to the traditional and customary practices of a particular ethnic or other cultural group.

The term is gaining in importance due to the increased controversy over "rights of cultural practice", which are protected in many jurisdictions for indigenous peoples[1] and sometimes ethnic minorities. It is also a major component of the field of cultural studies, and is a primary focus of international works such as the United Nations declaration of the rights of indigenous Peoples.[2]

Cultural practice is also a subject of discussion in questions of cultural survival.[3] If an ethnic group retains its formal ethnic identity but loses its core cultural practices or the knowledge, resources, or ability to continue them, questions arise as to whether the culture is able to actually survive at all. International bodies such as the United Nations Permanent Forum on Indigenous Issues continually work on these issues, which are increasingly at the forefront of globalization questions.[4]


Contents
1	Examples
2	Qualifications
3	Evolution of culture
4	References
Examples
Religious and spiritual practices
Medical treatment practices
Forms of artistic expression
Dietary preferences and culinary practices
Cultural institutions (see also Cultural Institutions Studies)
Natural resource management
Housing and construction
Childcare practices
Governance, leadership, conflict resolution
Power relationships
International cultural practices
"Everyday life" practices (including household relationships)
Qualifications
The real question of what qualifies as a legitimate cultural practice is the subject of much legal and ethnic community debate. The question arises in controversial subject areas such as genital mutilation, indigenous hunting[5] and gathering practices,[6] and the question of licensing of traditional medical practitioners.[7][8][9]

Many traditional cultures acknowledge members outside of their ethnicity as cultural practitioners, but only under special circumstances. Generally, the knowledge or title must be passed in a traditional way, such as family knowledge shared through adoption, or through a master of that practice choosing a particular student who shows qualities desired for that practice, and teaching that student in a hands-on manner, in which they are able to absorb the core values and belief systems of the culture. The degree to which these non-ethnic practitioners are able to exercise "customary and traditional" rights, and the degree to which their practice is acknowledged as valid, is often a subject of considerable debate among indigenous and other ethnic communities,[10] and sometimes with the legal systems under which these communities function. The difference between bona fide non-native cultural practitioners and cultural piracy, or cultural appropriation,[11] is a major issue within the study of globalization[12] and modernization.[13]

Evolution of culture
The evolution of traditional cultures is a subject of much discussion in legal, scholarly, and community forums.[14] It is generally accepted that all cultures are to some degree in a continual state of sociocultural evolution. However, major questions surround the legitimacy of newly evolved cultural expressions, especially when these are influenced by modernization or by the influence of other cultures. Also, there is significant debate surrounding the source of evolution: for example, an indigenous community may accept the use of store-bought materials in the creation of traditional arts, but may reject requirements to apply for a permit for certain gathering purposes; the central difference being that one is an internal cultural evolution, while the other is externally driven[15] by the society or legal body that surrounds the culture.





List of common misconceptions
https://en.wikipedia.org/wiki/List_of_common_misconceptions#Arts_and_culture
This is a dynamic list and may never be able to satisfy particular standards for completeness. You can help by adding missing items with reliable sources.
This is a list of common misconceptions. Each entry is worded as a correction; the misconceptions themselves are implied rather than stated. These entries are concise summaries of the main subject articles, which can be consulted for more detail.


Contents
1	Arts and culture
1.1	Food and cooking
1.1.1	Food history
1.1.2	Microwave ovens
1.2	Law, crime, and military
1.3	Literature
1.4	Music
1.5	Religion
1.5.1	Buddhism
1.5.2	Judaism
1.5.3	Christianity
1.5.4	Islam
1.5.5	Baháʼí Faith
1.6	Sports
1.7	Language
1.7.1	English etymology
1.8	Film and television
2	History
2.1	Ancient
2.2	Middle Ages and Renaissance
2.3	Early modern
2.4	Modern
3	Science and technology
3.1	Astronomy and spaceflight
3.2	Biology
3.2.1	Vertebrates
3.2.2	Invertebrates
3.2.3	Plants
3.2.4	Evolution and paleontology
3.2.5	Bioinformatics
3.3	Computing and the Internet
3.4	Economics
3.5	Environmental science
3.6	Human body and health
3.6.1	Senses
3.6.2	Skin and hair
3.6.3	Nutrition, food, and drink
3.6.4	Human sexuality
3.6.5	Brain
3.6.6	Disease
3.7	Inventions
3.8	Chemistry or materials science
3.9	Mathematics
3.10	Physics
3.11	Psychology
3.12	Transportation
4	See also
5	References
6	Further reading
7	External links
Arts and culture
Food and cooking
Searing does not seal moisture in meat; in fact, it causes it to lose some moisture. Meat is seared to brown it, improving its color and flavor.[1]
Monosodium glutamate (MSG) does not trigger migraine headaches or other symptoms of so-called Chinese restaurant syndrome, nor is there evidence that some individuals are especially sensitive to MSG.[2]
Twinkies have a shelf life of approximately 45 days[3] (25 in their original formulation)—far shorter than the common (and somewhat jocular) myth that Twinkies are edible for decades or longer.[4] They generally remain on a store shelf for only 7 to 10 days.[5]
Children have not been killed or seriously injured by poisoned candy or fruit given to them by strangers at Halloween or any other time, though there are cases where people have poisoned their own children.[6]
Most food is edible long after its expiration date, with the exception of some perishables.[7]
Seeds are not the spicy part of chili peppers. In fact, seeds contain a low amount of capsaicin, the component which induces the hot sensation in mammals. The highest concentration of capsaicin is located in the placental tissue (the pith) to which the seeds are attached.[8]
Turkey meat is not particularly high in tryptophan, and does not cause more drowsiness than other foods.[9]
Rice does not cause birds to die by inflating their stomachs until they burst. Birds do eat wild rice, though some species avoid it. This common misconception has often led to weddings substituting millet, confetti, or other materials to shower the newlyweds as they leave the ceremony, instead of traditionally throwing rice.[10][11]
Food history

Fortune cookies are associated with Chinese cuisine, but were actually invented in Japan,[12] and are almost never eaten in China, where they are seen as American.[13]
Fortune cookies are not found in Chinese cuisine, despite their ubiquity in Chinese restaurants in the United States. They were invented in Japan and introduced to the US by the Japanese.[12] In China, they are considered American, and are rare.[13]
Spices were not used to mask the flavor of rotting meat before refrigeration. Spices were an expensive luxury item; those who could afford them could afford good meat, and there are no contemporary documents calling for spices to disguise the taste of bad meat.[14]
Steak tartare was not invented by Mongol warriors who tenderized meat under their saddles.[15]
Whipped cream was not invented by François Vatel at the Château de Chantilly in 1671; the recipe is attested at least a century earlier in Italy, but the name crème chantilly only in the 19th century.[16]
Catherine de' Medici and her entourage did not introduce Italian foods to the French royal court and thus create French haute cuisine.[17]
Microwave ovens
Microwave ovens do not heat food by operating at a special resonance of water molecules in the food but by dielectric heating.[18]
Microwave ovens do not cook food from the inside out. 2.45 GHz microwaves can only penetrate approximately 1 centimeter (3⁄8 inch) into most foods. The inside portions of thicker foods are mainly heated by heat conducted from the outer portions.[19]
Microwave ovens cannot cause cancer, as microwave radiation is non-ionizing, and therefore does not have the cancer risks associated with ionizing radiation such as X-rays. No studies on the cancer risk associated with microwaves have identified any carcinogenicity from microwave radiation, even with exposure levels far greater than is likely for humans to encounter from leaking ovens.[20]
Law, crime, and military

Violent crime rates have declined in recent decades.
It is rarely necessary to wait 24 hours before filing a missing person report. In instances where there is evidence of violence or of an unusual absence, law enforcement agencies in the United States often stress the importance of beginning an investigation promptly.[21] The UK government website reads in large type, "You do not have to wait 24 hours before contacting the police."[22]
Twinkies were not claimed to be the cause of San Francisco mayor George Moscone's and supervisor Harvey Milk's murders. In the trial of Dan White, the defense successfully argued White's diminished capacity as a result of severe depression. While eating Twinkies was cited as evidence of this depression, it was never claimed to be the cause of the murders.[23]
The US Armed Forces have generally forbidden military enlistment as a form of deferred adjudication (that is, an option for convicts to avoid jail time) since the 1980s. US Navy protocols discourage the practice, while the other four branches have specific regulations against it.[24]
Legal tender laws in the United States do not state that a private business, a person, or an organization must accept cash for payment, though it must be regarded as valid payment for debts tendered to a creditor.[25]
The United States does not require police officers to identify themselves as police in the case of a sting or other undercover work, and police officers may lie when engaged in such work.[26] Claiming entrapment as a defense instead focuses on whether the defendant was induced by undue pressure (such as threats) or deception from law enforcement to commit crimes they would not have otherwise committed.[27]
Violent crime in the United States decreased between 1993 and 2017. The violent crime rate fell 49% in that period,[28] and the number of gun homicides has decreased.[29]
The First Amendment to the United States Constitution generally only prevents government restrictions on the freedoms of religion, speech, press, assembly, or petition,[30] not restrictions imposed by private individuals or businesses[31] unless they are acting on behalf of the government.[32] Other laws may restrict the ability of private businesses and individuals to restrict the speech of others.[33]
Neither the Mafia nor other criminal organizations have used cemented shoes to drown their victims. This method has only been used in single cases to submerge (already) dead bodies.[34]
Literature
Main article: Wikiquote: List of misquotations
Many quotations are incorrect or attributed to people who never uttered them, and quotations from obscure or unknown authors are often attributed to more famous figures. Commonly misquoted individuals include Mark Twain, Albert Einstein, Adolf Hitler, Winston Churchill, Abraham Lincoln, William Shakespeare, and the Buddha.[35]
Music
See also: Mondegreen § In songs
"Edelweiss" is not the national anthem of Austria, but an original composition created for the musical The Sound of Music.[36] The Austrian national anthem is "Land der Berge, Land am Strome" ("Land of the Mountains, Land on the River").[37] The edelweiss is Austria's state flower, and was used both in Austria and in Germany as an anti-Nazi symbol.[citation needed]
Phil Collins did not sing his 1981 hit "In the Air Tonight" about witnessing someone drowning and then confronting the person in the audience who let it happen. According to Collins himself, it was about his emotions when divorcing from his first wife.[38]
The melody of "Twinkle, Twinkle, Little Star", the "Alphabet Song", and "Baa, Baa, Black Sheep" was not composed by Mozart when he was 5 years old; it was already a popular French folk tune when he composed a series of variations on the tune, when he was 25 or 26.[39]
Mozart was not Austrian. During his life, Salzburg was not part of the Archduchy of Austria, but an essentially sovereign state called the Prince-Archbishopric of Salzburg within the Bavarian Circle of the Holy Roman Empire. It was only in 1805, 14 years after his death, that Salzburg was annexed to the Austrian Empire.[40]
Mozart did not die from poisoning, and was not poisoned by his colleague Antonio Salieri or anyone else.[41] The false rumor originated soon after Salieri's death, and was dramatized in Alexander Pushkin's play Mozart and Salieri.[42] The 1984 film Amadeus also suggested Salieri's involvement in Mozart's death, but he was not shown to use poison.[43]
The minuet in G major by Christian Petzold is commonly attributed to Johann Sebastian Bach, although the piece was identified in the 1970s as a movement from a harpsichord suite by Petzold. The misconception stems from Notebook for Anna Magdalena Bach, a book of sheet music by various composers (mostly Bach) in which the minuet is found.[44] Compositions that are doubtful as works of Bach are catalogued as "BWV Anh.", short for "Bach-Werke-Verzeichnis Anhang" ("Bach works catalogue annex"); the minuet is assigned to BWV Anh. 114.
The "Minute Waltz" takes, on average, two minutes to play as originally written.[45] Its name comes from the adjective minute, as in small, and not the noun; it is thus a case of heteronym confusion.[46]
"Don't Worry, Be Happy", written and sung by Bobby McFerrin, is commonly believed to be sung by Bob Marley instead.[47] Indeed, a YouTube video entitled "Bob Marley - Don't worry be Happy" has over 156 million views.[48] However, the famous reggae musician Marley never recorded a version of "Don't Worry, Be Happy", as he died seven years before the song was written.[47] "Three Little Birds," which Marley did write, includes a similar line: "don't worry about a thing, every little thing's gonna be all right."[49]
Absolute or "perfect" pitch is far more common than the oft-cited 1 in 10,000 persons.[50] Its prevalence has been estimated at as high as 1 in 25 persons.[51]
Religion
Not all religions teach that there is a god or gods in the Western sense. For example, Buddhism and Jainism do not have a creator god and Unitarian Universalism has no creed at all.[52]
Buddhism
The historical Buddha is not known to have been fat. The "chubby Buddha" or "laughing Buddha" is a 10th-century Chinese folk hero by the name of Budai. In Chinese Buddhist culture, Budai came to be revered as an incarnation of Maitreya, the Bodhisattva who will become a Buddha to restore Buddhism after the teachings of the historical Buddha, Siddhārtha Gautama, have been forgotten.[53]
Judaism

Often shown as an apple in art, the fruit in the Garden of Eden is not named in Genesis.[54]
The forbidden fruit mentioned in the Book of Genesis is never identified as an apple,[54] a misconception widely depicted in Western art. The original Hebrew texts mention only tree and fruit. Early Latin translations use the word mali, which can mean either "evil" or "apple" depending on if the A is short or long respectively, although the difference in vowel length had already vanished from speech in Latin at the time. In early Germanic languages the word apple and its cognates usually simply meant "fruit". German and French artists commonly depict the fruit as an apple from the 12th century onwards, and John Milton's Areopagitica from 1644 explicitly mentions the fruit as an apple.[55] Jewish scholars have suggested that the fruit could have been a grape, a fig, an apricot, or an etrog.[56]
While they are forbidden by the Book of Leviticus, having tattoos does not mean someone cannot be buried in a Jewish cemetery as is commonly believed, just as violating any other prohibition does not prevent a Jew from ultimately being buried in a Jewish cemetery.[57]
Christianity
Jesus was most likely not born on any date corresponding to December 25, the date on which his birth is traditionally celebrated as Christmas. It is more likely that his birth was in either the season of spring or perhaps summer, while December 25 in the Northern Hemisphere is at the beginning of winter. Also, although the Common Era ostensibly counts the years since his birth,[58] it is unlikely that he was born in either AD 1 or 1 BC, as such a numbering system would imply. Modern historians estimate a date closer to between 6 BC and 4 BC.[59]
The Bible does not say that exactly three magi came to visit the baby Jesus, nor that they were kings, or rode on camels, or that their names were Casper, Melchior, and Balthazar, nor what color their skin was. Three magi are inferred because three gifts are described, but we only know that they were plural (at least 2); there could have been many more and probably an entourage accompanied them on their journey. The artistic depictions of the nativity have almost always depicted three magi since the 3rd century.[60] The Bible only specifies an upper limit of 2 years for the interval between the birth and the visit (Matthew 2:16), and artistic depictions and the closeness of the traditional dates of December 25 and January 6 encourage the popular assumption that the visit took place in the same season as the birth, but later traditions varied, with the visit taken as occurring up to two years later. The association of magi with kings comes from efforts to tie the visit to prophecies in the Book of Isaiah.[61]

No Biblical or historical evidence supports Mary Magdalene having been a prostitute.[62]
The idea that Mary Magdalene was a prostitute before she met Jesus is not found in the Bible or in any of the other earliest Christian writings. The misconception likely arose due to a conflation between Mary Magdalene, Mary of Bethany (who anoints Jesus's feet in John 11:1–12), and the unnamed "sinful woman" who anoints Jesus's feet in Luke 7:36–50.[62]
Paul the Apostle did not change his name from Saul. He was born a Jew, with Roman citizenship inherited from his father, and thus carried both a Hebrew and a Greco-Roman name from birth. Luke indicates the coexistence of the names in Acts 13:9: "...Saul, who also is called Paul...".[63]
The Roman Catholic dogma of the Immaculate Conception does not state that Jesus or his mother Mary was born to a virgin. Rather, it states that Mary was not in a state of original sin from the moment of her own conception.[64]
Roman Catholic dogma does not say that the pope is either sinless or always infallible.[65] Catholic dogma since 1870 does state that a dogmatic teaching contained in divine revelation that is promulgated by the pope (deliberately, and under certain very specific circumstances; generally called ex cathedra) is free from error, although official invocation of papal infallibility is rare. While most theologians state that canonizations meet the requisites,[66] aside from that, most recent popes have finished their reign without a single invocation of infallibility. Otherwise, even when speaking in his official capacity, dogma does not hold that he is free from error.
St. Peter's Basilica is not the mother church of Roman Catholicism, nor is it the official seat of the Pope.[67] These equivalent distinctions belong to the Archbasilica of Saint John Lateran, which is located in Rome outside of Vatican City but over which the Vatican has extraterritorial jurisdiction.[67] This also means that St. Peter's is not a cathedral in the literal sense of that word.[67] St. Peter's is, however, used as the principal church for many papal functions.[67]
Members of The Church of Jesus Christ of Latter-day Saints (LDS Church) no longer practice polygamy.[68] Currently, the LDS Church excommunicates any members who practice polygamy within the organization.[69] However, some Mormon fundamentalist sects still practice polygamy within their groups.[70] For more details on this subject, see Mormonism and polygamy.
Islam

Afghan women wearing burqas
Most Muslim women do not wear a burqa (also transliterated as burka or burkha), which covers the body, head, and face, with a mesh grille to see through. Many Muslim women, though not all, do cover their hair with a hijab, or their hair and face (excluding the eyes) with a niqab.[71]
A fatwā is a non-binding legal opinion issued by an Islamic scholar under Islamic law; it is therefore commonplace for fatāwā from different authors to disagree. The popular misconception[72] that the word means a death sentence probably stems from the fatwā issued by Ayatollah Ruhollah Khomeini of Iran in 1989 regarding the author Salman Rushdie, who he stated had earned a death sentence for blasphemy. This event led to fatāwā gaining widespread media attention in the West.[73]
The word "jihad" does not always mean "holy war"; literally, the word in Arabic means "struggle". While there is such a thing as "jihad bil saif", or jihad "by the sword",[74] many modern Islamic scholars usually say that it implies an effort or struggle of a spiritual kind.[75] Scholar Louay Safi asserts that "misconceptions and misunderstandings regarding the nature of war and peace in Islam are widespread in both the Muslim societies and the West", as much following 9/11 as before.[76]
The Quran does not promise martyrs 72 virgins in heaven. It does mention companions, houri, to all people—martyr or not—in heaven, but no number is specified. The source for the 72 virgins is a hadith in Sunan al-Tirmidhi by Imam Tirmidhi.[77][78] Hadiths are sayings and acts of the prophet Muhammad as reported by others, and as such they are not part of the Quran itself. Muslims are not meant to necessarily believe all hadiths, and that applies particularly to those hadiths that are weakly sourced, such as this one.[79] Furthermore, the correct translation of this particular hadith is a matter of debate.[77] In the same collection of Sunni hadiths, however, the following is judged strong (hasan sahih): "There are six things with Allah for the martyr. He is forgiven with the first flow of blood (he suffers), he is shown his place in Paradise, he is protected from punishment in the grave, secured from the greatest terror, the crown of dignity is placed upon his head—and its gems are better than the world and what is in it—he is married to seventy two wives among wide-eyed houris (Al-Huril-'Ayn) of Paradise, and he may intercede for seventy of his close relatives."[80]
Baháʼí Faith
Because adherents of the Baháʼí Faith believe in the validity of the divine origins of Judaism, Christianity, Islam, and certain other major world religions, it is wrongly assumed that the Baháʼí Faith is a composite of those other religions or that the Baháʼí Faith offers the belief that all of those major world religions are equivalently applicable to the current time. Rather, the Baháʼí Faith teaches progressive revelation which is based on the belief that each of the previous major world religions are sequential stages in the development of humanity and that it is God's intention for His faithful to recognize new Revelation and to follow its teachings.[81][better source needed]
Sports

Marcos Torregrosa wearing the BJJ black belt with a red bar indicating first degree
Abner Doubleday did not invent baseball, nor did it originate in Cooperstown, New York. It is believed to have evolved from other bat-and-ball games such as cricket and rounders and first took its modern form in New York City.[82]
The black belt in martial arts does not necessarily indicate expert level or mastery. It was introduced for judo in the 1880s to indicate competency at all of the basic techniques of the sport. Promotion beyond 1st dan (the first black belt rank) varies among different martial arts. In judo and derived martial arts such as Brazilian jiu-jitsu, holders of higher master ranks are awarded alternating red and white panels, and the highest grandmasters wear solid red belts.[83] Other arts such as taekwondo use black belts with a number of gold bars to indicate the holder's dan rank.
The use of triangular corner flags in English football is not a privilege reserved for those teams that have won an FA Cup in the past, despite a wide belief to the contrary[84] that inspired a scene in the film Twin Town. The Football Association's rules are silent on the subject, and often the decision over what shape flag to use has been up to the individual club's groundskeepers.[85]
India did not withdraw from the 1950 FIFA World Cup because their squad played barefoot, which was against FIFA regulations.[86] In reality, India withdrew because the country's managing body, the All India Football Federation (AIFF), was insufficiently prepared for the team's participation and gave various reasons for withdrawing, including a lack of funding and prioritizing the Olympics.[87] However, the myth frequently resurfaces in both India and abroad as fact (especially come World Cup time).[88] The AIFF itself may have been the source of this myth.[89]
Language
See also: List of common misconceptions about language learning
Nonstandard, slang, or colloquial terms used by English speakers are sometimes alleged not to be real words, despite appearing in numerous dictionaries. All words in English became accepted by being commonly used for a certain period of time; thus, there are many vernacular words currently not accepted as part of the standard language, or regarded as inappropriate in formal speech or writing, but the idea that they are somehow not words is a misconception.[90] Examples of words that are sometimes alleged not to be words include "irregardless",[91] "conversate", "funnest",[92] "mentee", "impactful", and "thusly",[93] all of which appear in numerous dictionaries as English words.[94]
The pronunciation of coronal fricatives in Spanish did not arise through imitation of a lisping king. Only one Spanish king, Peter of Castile, is documented as having a lisp, and the current pronunciation originated two centuries after his death.[95]
The Chevrolet Nova sold very well in Latin American markets; General Motors did not need to rename the car. While "no va" does mean "it doesn't go" in Spanish, "nova" was easily understood to mean "new" due to its similarity to the Spanish word "nueva," with which it shares a common origin. Drivers in Mexico and Venezuela, where it was first sold, bought it eagerly. There was no need to change the model name,[96] despite claims to the contrary.[97]
Sign languages are not the same worldwide. Aside from the pidgin International Sign, each country generally has its own native sign language, and some have more than one (although there are also substantial similarities among all sign languages).[98]
Eskimo tribes, such as the Inuit and Aleut, do not have a disproportionate number of words representing snow in their languages. The myth comes from a misconstruction of Franz Boas's original statement noting that Eskimos had a variety of words for various snow-related concepts; Boas noted that the same was true of English.[99]
The word "the" was never pronounced or spelled "ye" in Old or Middle English.[100] The confusion, seen in the common stock phrase "ye olde," derives from the use of the character thorn (þ), which in Middle English represented the sound now represented in Modern English by "th." In blackletter, þ and y were difficult to distinguish, meaning that "þe" (Middle English the.svg) very closely resembled "ye."[101]
The Hopi people do in fact have a concept of time, and the Hopi language does have ways of expressing temporal concepts, though they are organized differently from those in Western languages.[102]
The Chinese word for "crisis" (危机) is not composed of the symbols for "danger" and "opportunity;" the first does represent danger, but the second instead means "inflection point" (the original meaning of the word "crisis").[103] The myth was perpetuated mainly by a campaign speech from John F. Kennedy.[104]
African American Vernacular English speakers do not simply replace "is" with "be" across all tenses, with no added meaning. In fact, AAVE speakers use "be" to mark a habitual grammatical aspect not explicitly distinguished in Standard English.[105]
English etymology
Main articles: List of common false etymologies and Common English usage misconceptions
Easter is in no way connected to the Mesopotamian goddess Ishtar, who in turn had no connection to eggs. The name Easter, used only in Germanic languages (Romance languages use variants of Pascha), derives from the West Germanic goddess Ēostre, who represents the dawn. Easter eggs draw upon ancient use of the egg as a symbol of rebirth and resurrection, in this case symbolizing the Resurrection of Jesus.[106] The folk etymology associating Easter with Ishtar originated in an anti-Catholic pamphlet, The Two Babylons, by Alexander Hislop, which has been thoroughly debunked by most scholars.[107]
The word "fuck" did not originate in Christianized Anglo-Saxon England (7th century CE) as an acronym for "fornication under consent of king"; nor did it originate as an acronym for "for unlawful carnal knowledge", either as a sign posted above adulterers in the stocks, or as a criminal charge against members of the British Armed Forces; nor did it originate during the 15th-century Battle of Agincourt as a corruption of "pluck yew" (an idiom falsely attributed to the English for drawing a longbow).[108] Modern English was not spoken until the 16th century, and words such as "fornication" and "consent" did not exist in any form in English until the influence of Anglo-Norman in the late 12th century. The earliest certain recorded use of "fuck" in English comes from c. 1475, in the poem "Flen flyys", where it is spelled fuccant (conjugated as if a Latin verb meaning "they fuck"). It is of Proto-Germanic origin, and is related to either Dutch fokken, German ficken, and Norwegian fukka.[109]
The word "crap" did not originate as a back-formation of British plumber Thomas Crapper's surname, nor does his name originate from the word "crap", although the surname may have helped popularize the word.[110] The surname "Crapper" is a variant of "Cropper", which originally referred to someone who harvested crops.[111] The word "crap" ultimately comes from Medieval Latin crappa, meaning "chaff".[112]
The expression "rule of thumb" did not originate from a law allowing a man to beat his wife with a stick no thicker than his thumb, and there is no evidence that such a law ever existed.[113] The true origin of this phrase remains uncertain, but the false etymology has been broadly reported in media including The Washington Post (1989), CNN (1993), and Time magazine (1983).[114]
The word "gringo" as a term for someone foreign to Latin America did not originate during the Mexican–American War (1846–48), the Venezuelan War of Independence (1811–23), the Mexican Revolution (1910–20), or from the American Old West (c. 1865–99) as a corruption of the English lyrics "green grow" in either "Green Grow the Lilacs" (Irish folk song) or "Green Grow the Rushes, O" (English folk song), as sung by US soldiers or cowboys;[115] nor did it originate during any of these times as a corruption of "Green, go home!", falsely said to have been shouted at green-clad American troops.[116] The word originally simply meant 'foreigner', and is probably a corruption of the Spanish word griego for 'Greek' (along the lines of the idiom "It's Greek to me").[117]



"Xmas", along with a modern Santa Claus, used on a Christmas postcard (1910)
The anti-Italian slur wop did not originate from an acronym for "without papers" or "without passport", as is widely believed;[118] it is actually derived from the term guappo (roughly meaning thug), and was in use by 1908,[119] predating modern immigration laws.[120] A variant etymology indicates that the derogatory term is from the Italian dialectal guappo meaning "dandy," from Spanish guapo [121]
Wetback, an ethnic slur for Mexican immigrants coming into the US, has nothing to do with sweaty farm labor, or any other activity post-migration, but rather refers solely to the consequences of the supposed method of immigration, crossing the Rio Grande river, which would result in a wet back.[122]
"420" did not originate from the Los Angeles police or penal code for marijuana use.[123] In California, Police Code 420 means "juvenile disturbance",[124] and California Penal Code section 420 prohibits the obstruction of access to public land.[123][125] The use of "420" started in 1971 at San Rafael High School, where it indicated the time, 4:20 pm, when a group of students would go to smoke.[123]
"Xmas" did not originate as a secular plan to "take the Christ out of Christmas".[126] X stands for the Greek letter chi, the starting letter of Χριστός (Christós), "Christ" in Greek.[127] The use of the word "Xmas" in English can be traced to the year 1021, when monks in Great Britain used the X in place of "Christ" for abbreviation, while transcribing classical manuscripts into Old English.[126] The Oxford English Dictionary's "first recorded use of 'Xmas' for 'Christmas' dates to 1551."[128]
Film and television
Jerry Lewis was not a revered celebrity in France. He was renowned in French filmmakers' and critics' circles for the full control he exerted over his films and the unorthodox techniques he used in them, but this did not extend to the general public. Lewis was held in similarly high esteem among critics in much of continental Europe.[129]
Jane Russell never wore a special bra designed by director Howard Hughes during filming of The Outlaw. She said the "ridiculous" contraption hurt so much "I never wore it in The Outlaw, and he never knew. He wasn't going to take my clothes off to check if I had it on. I just told him I did."[130]
History
Ancient

Ancient Greek sculptures were originally painted bright colors.[131]

Vomitorium to a Roman amphitheater in Toulouse
Ancient Greek and Roman sculptures were originally painted bright colors; they only appear white today because the original pigments have deteriorated. Some well-preserved statues still bear traces of their original coloration.[131][132]
Tutankhamun's tomb is not inscribed with a curse on those who disturb it. This was a media invention of 20th century tabloid journalists.[133]
The ancient Greeks did not use the word "idiot" (Ancient Greek: ἰδιώτης, romanized: ídiṓtēs ) to disparage people who did not take part in civic life or who did not vote. An ἰδιώτης was simply a private citizen as opposed to a government official. Later, the word came to mean any sort of non-expert or layman, then someone uneducated or ignorant, and much later to mean stupid or mentally deficient.[134]
There is no evidence that the Roman salute, in which the arm is fully extended forwards or diagonally with fingers touching, was actually used in ancient Rome for greeting or any other purpose.[135] The idea that the salute was popular in ancient times originated in the 1784 painting Oath of the Horatii by French artist Jacques-Louis David, which inspired later salutes, most notably the Nazi salute.
Vomiting was not a regular part of Roman dining customs.[136] In ancient Rome, the architectural feature called a vomitorium was the entranceway through which crowds entered and exited a stadium, not a special room used for purging food during meals.[137]
The death of Greek philosopher Hypatia of Alexandria at the hands of a mob of Christian monks in 415 was mainly a result of her involvement in a bitter political feud between her close friend and student Orestes, the Roman prefect of Alexandria, and the bishop Cyril, not her religious views.[138] Her death also had nothing to do with the destruction of the Library of Alexandria,[139] which had likely already ceased to exist centuries before Hypatia was born.[139]
Scipio Aemilianus did not plow over the city of Carthage and sow it with salt after defeating it in the Third Punic War.[140]
Contrary to popular belief, Roman dictator Julius Caesar was not born via caesarean section.[141] Such a procedure would have been fatal to the mother at the time,[142] and historical evidence indicates Caesar's mother being alive during his own lifetime. Although the names are similar, the caesarean section was not named after Caesar, as is commonly believed; it is more likely derived from the Roman verb caedere, meaning "to cut."
Middle Ages and Renaissance
See also: List of myths about the Middle Ages
The Middle Ages were not "a time of ignorance, barbarism and superstition", and the Church did not place religious authority over personal experience and rational activity.[143] Historian of science Edward Grant writes that "If revolutionary rational thoughts were expressed in the Age of Reason, they were made possible because of the long medieval tradition that established the use of reason as one of the most important of human activities".[144] Furthermore, historian of science David C. Lindberg says that, contrary to common belief, "the late medieval scholar rarely experienced the coercive power of the church and would have regarded himself as free (particularly in the natural sciences) to follow reason and observation wherever they led".[145] Describing the period as the "Dark Ages" in that matter is a common misconception that persists to this day among the lay public.
While it is true that modern life expectancies are much higher, by any measure, than they were in the Middle Ages and earlier,[146] there is no evidence that adults in the Middle Ages were expected to live to an average of 30 or 40 years old. According to statistics this was the average at birth, as earlier low life expectancies were very strongly influenced by high infant and adolescent mortality. On the other hand, the average life expectancy among people who lived to adulthood was much higher.[147] A 21-year-old man in medieval England, for example, could by one estimate expect to live to the age of 64.[148] Age specific forecasts, particularly life expectancy after childhood, can be dramatically different from life expectancy at birth, especially in preindustrial times.[147]
There is no evidence that Vikings wore horns on their helmets; this would have been highly impractical in battle.[149] In fact, the image of Vikings wearing horned helmets stems from the scenography of an 1876 production of the Der Ring des Nibelungen opera cycle by Richard Wagner.[150]
Vikings did not drink out of the skulls of vanquished enemies. This was based on a mistranslation of the skaldic poetic use of ór bjúgviðum hausa (branches of skulls) to refer to drinking horns.[151]
Vikings did not name Iceland "Iceland" as a ploy to discourage others from settling it. Naddodd and Hrafna-Flóki Vilgerðarson both saw snow and ice on the island when they traveled there, giving the island its name.[152] Greenland, on the other hand, was named in the hope that it would help attract settlers.[153]
King Canute did not command the tide to reverse in a fit of delusional arrogance.[154] His intent that day, if indeed the incident did occur, was most likely to prove a point to members of his privy council that no man is all-powerful, and we all must bend to forces beyond our control, such as the tides.
There is no evidence that iron maidens were used for torture, or even yet invented, in the Middle Ages. Instead they were pieced together in the 18th century from several artifacts found in museums in order to create spectacular objects intended for (commercial) exhibition.[155]

An anti-clockwise spiral staircase at Hohenzollern Castle in Germany. The choice of anticlockwise or clockwise spiral had more to do with convenience than making it harder for right-handed attackers to storm a castle.
Spiral staircases in castles were not designed in a clockwise direction to hinder right-handed attackers.[156][157] While clockwise spiral staircases are more common in castles than anti-clockwise, they were even more common in medieval structures without a military role such as religious buildings.[158] Studies of spiral stairs in castle have concluded that "the role and position of spirals in castles ... had a much stronger domestic and status role than a military function"[158] and that "there are sufficient examples of anticlockwise stairs in Britain and France in [the 11th and 12th centuries] to indicate that the choice must have depended both on physical convenience and architectural practicalities and there was no military ideology that demanded clockwise staircases in the cause of fighting efficiency or advantage".[156]
The plate armor of European soldiers did not stop soldiers from moving around or necessitate a crane to get them into a saddle. They would routinely fight on foot and could mount and dismount without help. In fact, soldiers equipped with plate armor were more mobile than those with mail armor (chain armor), as mail was heavier and required stiff padding beneath due to its pliable nature.[159] It is true that armor used in tournaments in the late Middle Ages was significantly heavier than that used in warfare,[160] which may have contributed to this misconception.
Whether chastity belts, devices designed to prevent women from having sexual intercourse, were invented in medieval times is disputed by modern historians. Most existing chastity belts are now thought to be deliberate fakes or anti-masturbatory devices from the 19th and early 20th centuries. The latter were made due to the then widespread belief that masturbation could lead to insanity, and were mostly bought by parents for their teenage children.[161]

Medieval depiction of a spherical Earth.
Medieval Europeans did not believe Earth was flat. Scholars have known the Earth is spherical since at least 500 B.C.[162] This myth was created in the 17th century by Protestants to argue against Catholic teachings.[163]
Christopher Columbus' efforts to obtain support for his voyages were hampered not by belief in a flat Earth but by valid worries that the East Indies were farther than he realized.[164] In fact, Columbus grossly underestimated the Earth's circumference because of two calculation errors.[165] He and all of his crew would have died of starvation, thirst, or scurvy had they not inadvertently reached Caribbean islands off the coast of North America.[166] The myth that Columbus proved the Earth was round was propagated by authors like Washington Irving in A History of the Life and Voyages of Christopher Columbus.[162][167]
Christopher Columbus was not the first European to visit the Americas:[168] Leif Erikson, and possibly other Vikings before him, explored Vinland, which was either the island of Newfoundland, part of modern Canada, or a term for Newfoundland and parts of the North American mainland. Ruins at L'Anse aux Meadows prove that at least one Norse settlement was built in Newfoundland, confirming a narrative in the Saga of Erik the Red. Columbus also never reached any land that now forms part of the mainland United States of America; most of the landings Columbus made on his four voyages, including the initial October 12, 1492 landing (the anniversary of which forms the basis of Columbus Day), were on Caribbean islands that are now independent countries. However, Columbus did land on the mainland of South America during his third voyage to the Americas (1498–1500).
The Mexica people of the Aztec Empire did not mistake Hernán Cortés and his landing party for gods during Cortés' conquest of the empire. This myth came from Francisco López de Gómara, who never went to Mexico and conjured the myth while working for the retired Cortés in Spain years after the conquest.[169]
Marco Polo did not import pasta from China,[170] a misconception that originated with the Macaroni Journal, published by an association of food industries with the goal of promoting the use of pasta in the United States.[171] Marco Polo describes a food similar to "lasagna" in his Travels, but he uses a term with which he was already familiar. Durum wheat, and thus pasta as it is known today, was introduced by Arabs from Libya, during their conquest of Sicily in the late 9th century, according to the newsletter of the National Macaroni Manufacturers Association,[172] thus predating Marco Polo's travels to China by about four centuries.
Early modern
Portrait of Marie Antoinette
The phrase "let them eat cake" is commonly attributed to Marie Antoinette.
Contrary to the popular image of the Pilgrim Fathers, the early settlers of the Plymouth Colony in North America usually did not wear all black, and their capotains (hats) were shorter and rounder than the widely depicted tall hat with a buckle on it. Instead, their fashion was based on that of the late Elizabethan era: doublets, jerkins and ruffs. Both men and women wore the same style of shoes, stockings, capes, coats and hats in a range of colors including reds, yellows, purples, and greens.[173] According to Plimoth Plantation historian James W. Baker, the traditional image was formed in the 19th century when buckles were a kind of emblem of quaintness.[174] (The Puritans, who also settled in Massachusetts near the same time, did frequently wear all black.)[175]
The familiar story that Isaac Newton was inspired to research the nature of gravity by an apple hitting his head is almost certainly apocryphal. All Newton himself ever said was that the idea came to him as he sat "in a contemplative mood" and "was occasioned by the fall of an apple."
The accused at the Salem witch trials in North America were not burned at the stake; about 15 died in prison, 19 were hanged and one was pressed to death.[176]
Marie Antoinette did not say "let them eat cake (brioche)" when she heard that the French peasantry were starving due to a shortage of bread. The phrase was first published in Rousseau's Confessions when Marie was only nine years old and not attributed to her, just to "a great princess". Most scholars believe that Rousseau coined it himself, or that it was said by Maria Theresa, the wife of Louis XIV. The phrase was used as anti-monarchist propaganda.[177]
George Washington did not have wooden teeth. His dentures were made of gold, hippopotamus ivory, lead, animal teeth (including horse and donkey teeth),[178] and probably human teeth purchased from slaves.[179]
The signing of the United States Declaration of Independence did not occur on July 4, 1776. After the Second Continental Congress voted to declare independence on July 2, the final language of the document was approved on July 4, and it was printed and distributed on July 4–5.[180] However, the actual signing occurred on August 2, 1776.[181]
Benjamin Franklin did not propose that the wild turkey be used as the symbol for the United States instead of the bald eagle. While he did serve on a commission that tried to design a seal after the Declaration of Independence, his proposal was an image of Moses. His objections to the eagle as a national symbol and preference for the turkey were stated in a 1784 letter to his daughter in response to the Society of the Cincinnati's use of the former; he never expressed that sentiment publicly.[182]
Benjamin Banneker did not recall from memory or reproduce Pierre (Peter) Charles L'Enfant's plan for the city of Washington, D.C., did not assist in the planning or surveying of that city, did not write one of the first almanacs in the United States, did not invent a clock and was not one of the first people to record observations of the periodical cicada (see Mythology of Benjamin Banneker for further information and references).
There was never a bill to make German the official language of the United States that was defeated by one vote in the House of Representatives, nor has one been proposed at the state level. In 1794, a petition from a group of German immigrants was put aside on a procedural vote of 42 to 41, that would have had the government publish some laws in German. This was the basis of the Muhlenberg legend, named after the Speaker of the House at the time, Frederick Muhlenberg, a speaker of German descent who abstained from this vote.[183]
Modern

Napoleon on the Bellerophon, a painting of Napoleon I by Charles Lock Eastlake. Napoleon was taller than his nickname, le Petit Caporal, suggests.
See also: False memory § Commonly held false memories
Napoleon Bonaparte was not short. He was actually slightly taller than the average Frenchman of his time.[184] After his death in 1821, the French emperor's height was recorded as 5 feet 2 inches in French feet, which in English measurements is 5 feet 7 inches (1.70 m).[185] He was actually nicknamed le Petit Caporal (The Little Corporal) as a term of endearment.[186] Napoleon was often accompanied by his imperial guard, who were selected for their height[187]—this may have contributed to a perception that he was comparatively short.
Cinco de Mayo is not Mexico's Independence Day, but the celebration of the Mexican Army's victory over the French in the Battle of Puebla on May 5, 1862. Mexico's Declaration of Independence from Spain in 1810 is celebrated on September 16.[188]
The Alaska Purchase was generally popular in the United States, both among the public and the press. The opponents of the purchase who characterized it as "Seward's Folly", alluding to William H. Seward, the Secretary of State who negotiated it, represented a minority opinion at the time.[189]
Cowboy hats were not initially popular in the Western American frontier, with derby or bowler hats being the typical headgear of choice.[190] Heavy marketing of the Stetson "Boss of the Plains" model in the years following the American Civil War was the primary driving force behind the cowboy hat's popularity, with its characteristic dented top not becoming standard until near the end of the 19th century.[191]
Despite being referenced commonly in culture[192][193] and society at large,[194][195] the idea that Victorian Era doctors invented the vibrator to cure female "hysteria" via triggering orgasm is a product of a single work[196] rejected by most historians.[192][195][197]
The Great Chicago Fire of 1871 was not caused by Mrs. O'Leary's cow kicking over a lantern. A newspaper reporter later admitted to having invented the story to make colorful copy.[198]
The claim that Frederic Remington, on assignment to Cuba in 1897, telegraphed William Randolph Hearst, "There will be no war. I wish to return," and that Hearst responded, "Please remain. You furnish the pictures, and I'll furnish the war" is unsubstantiated. This anecdote was originally included in a book by James Creelman, though there is no evidence that the telegraph exchange ever happened, and substantial evidence that it did not.[199]
Immigrants' last names were not Americanized (voluntarily, mistakenly, or otherwise) upon arrival at Ellis Island. Officials there kept no records other than checking ship manifests created at the point of origin, and there was simply no paperwork that would have let them recast surnames, let alone any law. At the time in New York, anyone could change the spelling of their name simply by using that new spelling.[200] These names are often referred to as an "Ellis Island Special".
The common image of Santa Claus (Father Christmas) as a jolly old man in red robes was not created by The Coca-Cola Company as an advertising gimmick. Despite being historically represented with different characteristics in different colors of robes, Santa Claus had already taken his modern form in popular culture and seen extensive use in other companies' advertisements and other mass media at the time Coca-Cola began using his image in the 1930s.[201]
The paralytic illness of Franklin D. Roosevelt is now thought unlikely to be polio, which was the diagnosis at the time in 1921, but rather more consistent with Guillain–Barré syndrome.[202]
Italian dictator Benito Mussolini did not "make the trains run on time". Much of the repair work had been performed before Mussolini and the Fascists came to power in 1922. Accounts from the era also suggest that the Italian railways' legendary adherence to timetables was more propaganda than reality.[203]
There was no widespread outbreak of panic across the United States in response to Orson Welles's 1938 radio adaptation of H.G. Wells's The War of the Worlds. Only a very small share of the radio audience was even listening to it, and isolated reports of scattered incidents and increased call volume to emergency services were played up the next day by newspapers, eager to discredit radio as a competitor for advertising. Both Welles and CBS, which had initially reacted apologetically, later came to realize that the myth benefited them and actively embraced it in later years.[204]
There is no evidence of Polish cavalry mounting a brave but futile charge against German tanks using lances and sabers during the German invasion of Poland in 1939. This story may have originated from German propaganda efforts following the charge at Krojanty, in which a Polish cavalry brigade surprised German infantry in the open, and successfully charged and dispersed them, until driven off by armored cars. While Polish cavalry still carried the saber for such opportunities, they were trained to fight as highly mobile, dismounted cavalry (dragoons) and issued with light anti-tank weapons.[205]
During the occupation of Denmark by the Nazis during World War II, King Christian X of Denmark did not thwart Nazi attempts to identify Jews by wearing a yellow star himself. Jews in Denmark were never forced to wear the Star of David. The Danish resistance did help most Jews flee the country before the end of the war.[206]

Albert Einstein, photographed at 14, did not fail mathematics at school.
Albert Einstein did not fail mathematics classes (never "flunked a math exam") in school. Upon seeing a column making this claim, Einstein said "I never failed in mathematics.... Before I was fifteen I had mastered differential and integral calculus."[207] Einstein did, however, fail his first entrance exam into the Swiss Federal Polytechnic School (ETH) in 1895, when he was two years younger than his fellow students, but scored exceedingly well in the mathematics and science sections, then passed on his second attempt.[208]
Actor Ronald Reagan was never seriously considered for the role of Rick Blaine in the 1942 film classic Casablanca, eventually played by Humphrey Bogart. This belief came from an early studio press release announcing the film's production that used his name to generate interest in the film. But by the time it had come out, Warner Bros. knew that Reagan was unavailable for any roles in the foreseeable future since he was no longer able to defer his entry into military service.[209] Studio records show that producer Hal B. Wallis had always wanted Bogart for the part.[210]
U.S. Senator George Smathers never gave a speech to a rural audience describing his opponent, Claude Pepper, as an "extrovert" whose sister was a "thespian", in the apparent hope they would confuse them with similar-sounding words like "pervert" and "lesbian". Time, which is sometimes cited as the source, described the story of the purported speech as a "yarn" at the time,[211] and no Florida newspaper reported such a speech during the campaign. The leading reporter who covered Smathers said he always gave the same boilerplate speech. Smathers had offered US$10,000 to anyone who could prove he had made the speech; it was never claimed.[212]
Rosa Parks was not sitting in the front ("white") section of the bus during the event that made her famous and incited the Montgomery bus boycott. Rather, she was sitting in the front of the back ("colored") section of the bus, where African Americans were expected to sit, but refused to give up her seat to a white man who asked for it (which was also the expected action of African Americans at the time).
US President John F. Kennedy's words "Ich bin ein Berliner" are standard German for "I am a Berliner."[213] There is a widespread belief that by not leaving out the indefinite article "ein," he changed the meaning of the sentence from the intended "I am a citizen of Berlin" to "I am a Berliner" (a Berliner being a type of German pastry, similar to a jelly doughnut), amusing Germans throughout the city. Although the word "Berliner" is used for a jelly doughnut in the north, west and southwest of Germany, it is not used in Berlin itself or the surrounding region, where the usual word is "Pfannkuchen" (literally "pancake").[214]
African-American intellectual and activist W.E.B. Du Bois did not renounce his U.S. citizenship while living in Ghana shortly before his death,[215] as is often claimed.[216] In early 1963, his membership in the Communist Party and support for the Soviet Union incited the U.S. State Department not to renew his passport while he was already in Ghana overseeing the creation of the Encyclopedia Africana. After leaving the embassy, he stated his intention to renounce his citizenship in protest. But while he took Ghanaian citizenship, he never went through the process of renouncing his American citizenship,[217] and may not even have intended to.[215]
When bartender Kitty Genovese was murdered outside her Queens apartment in 1964, there were not 37 neighbors standing idly by and watching who failed to call the police until after she was dead, as The New York Times initially reported[218] to widespread public outrage that persisted for years. Later reporting established that the police report the Times had initially relied on was inaccurate, that Genovese had been attacked twice in different locations, and that, while the many witnesses heard the attack, they only heard brief portions and did not realize what was occurring, with only six or seven actually reporting seeing anything. Some called police; one said "I didn't want to get involved",[failed verification] an attitude later attributed to all the residents who saw or heard part of the attack.[219]
The Rolling Stones were not performing "Sympathy for the Devil" at the 1969 Altamont Free Concert when Meredith Hunter was stabbed to death by a member of the local Hells Angels chapter that was serving as security. While the incident that culminated in Hunter's death began while the band was performing the song, prompting a brief interruption before the Stones finished it, it concluded several songs later as the band was performing "Under My Thumb".[220] The misconception arose from mistaken reporting in Rolling Stone.[221]
While it was praised by one architectural magazine before it was built as "the best high apartment of the year", the Pruitt–Igoe housing project in St. Louis, Missouri, considered to epitomize the failures of urban renewal in American cities after it was demolished in the early 1970s, never won any awards for its design.[222] The architectural firm that designed the buildings did win an award for an earlier St. Louis project, which may have been confused with Pruitt–Igoe.[223]
Although popularly known as the "red telephone", the Moscow–Washington hotline was never a telephone line, nor were red phones used. The first implementation of the hotline used teletype equipment, which was replaced by facsimile (fax) machines in 1988. Since 2008, the hotline has been a secure computer link over which the two countries exchange emails.[224] Moreover, the hotline links the Kremlin to the Pentagon, not the White House.[225]
No US Vietnam War veterans were spat upon by anti-war protesters upon return to the United States. The myth that activists assaulted returning veterans was created by later films such as Rambo and taken up by politicians.[226]
Russia does not explicitly have an independence day, nor is there a date that officially commemorates such an occasion. There have been many states that predate the current Russian Federation, and the public holiday of Russia Day only celebrates the establishment of present-day Russia, which occurred on June 12, 1990. Both Russians and foreigners commonly refer to Russia Day as "Russia's independence day" inasmuch as it reflects the break from the Soviet Union that held dominion over Russia from 1918 to 1991.[227]
Science and technology
Main article: Scientific misconceptions
See also: Tornado myths and Urban legends about drugs
Astronomy and spaceflight

A satellite image of a section of the Great Wall of China, running diagonally from lower left to upper right (not to be confused with the much more prominent river running from upper left to lower right). The region pictured is 12 by 12 kilometers (7.5 mi × 7.5 mi).
The Great Wall of China is not, as is claimed, the only human-made object visible from space or from the Moon. None of the Apollo astronauts reported seeing any specific human-made object from the Moon, and even Earth-orbiting astronauts can see it only with magnification. City lights, however, are easily visible on the night side of Earth from orbit.[228]
Black holes have the same gravitational effects as any other equal mass in their place. They will draw objects nearby towards them, just as any other planetary body does, except at very close distances to the black hole – within the innermost stable circular orbit.[229] If, for example, the Sun were replaced by a black hole of equal mass, the orbits of the planets would be essentially unaffected. A black hole can act like a "cosmic vacuum cleaner" and pull a substantial inflow of surrounding matter, but only if the star from which it formed was already doing so.[230]
Seasons are not caused by the Earth's being closer to the Sun in the summer than in the winter, but by the Earth's 23.4-degree axial tilt. Each hemisphere is tilted towards the Sun in its respective summer (July in the Northern Hemisphere and January in the Southern Hemisphere), resulting in longer days and more direct sunlight, with the opposite being true in the winter.[231][232]
Further information: Effect of Sun angle on climate
When a meteor or spacecraft enters the atmosphere, the heat of entry is not (primarily) caused by friction, but by adiabatic compression of air in front of the object.[233][234][235]
Egg balancing is possible on every day of the year, not just the vernal equinox,[236] and there is no relationship between any astronomical phenomenon and the ability to balance an egg.[237]
The Fisher Space Pen was not commissioned by NASA at a cost of millions of dollars, while the Soviets used pencils. It was independently developed by Paul C. Fisher, founder of the Fisher Pen Company, with $1 million of his own funds.[238] NASA tested and approved the pen for space use, then purchased 400 pens at $6 per pen.[239] The Soviet Union subsequently also purchased the space pen for its Soyuz spaceflights.
Tang, Velcro, and Teflon were not spun off from technology originally developed by NASA for space flight, though many other products were.[240]
Biology
See also: Common misunderstandings of genetics
Vertebrates

The color of a red cape does not enrage a bull
Old elephants that are near death do not leave their herd and instinctively direct themselves toward a specific location known as an elephants' graveyard to die.[241]
Bulls are not enraged by the color red, used in capes by professional matadors. Cattle are dichromats, so red does not stand out as a bright color. It is not the color of the cape, but the perceived threat by the matador that incites it to charge.[242]
Dogs do not sweat by salivating.[243] Dogs actually do have sweat glands and not only on their tongues; they sweat mainly through their footpads. However, dogs do primarily regulate their body temperature through panting.[244] (See also: Dog anatomy).
Dogs do not age consistently seven times as quickly as humans. Aging in dogs varies widely depending on the breed; certain breeds, such as giant dog breeds and English bulldogs, have much shorter lifespans than average. Most dogs age consistently across all breeds in the first year of life, reaching adolescence by one year old; smaller and medium-sized breeds begin to age more slowly in adulthood.[245]
Lemmings do not engage in mass suicidal dives off cliffs when migrating. This misconception was popularized by the Disney film White Wilderness, which shot many of the migration scenes (also staged by using multiple shots of different groups of lemmings) on a large, snow-covered turntable in a studio. Photographers later pushed the lemmings off a cliff.[246] The misconception itself is much older, dating back to at least the late 19th century, though its exact origins are uncertain.[247]
Bats are not blind. While about 70 percent of bat species, mainly in the microbat family, use echolocation to navigate, all bat species have eyes and are capable of sight. In addition, almost all bats in the megabat or fruit bat family cannot echolocate and have excellent night vision.[248]
Ostriches do not stick their heads in the sand to hide from enemies or to sleep.[249] This misconception's origins are uncertain but it was probably popularized by Pliny the Elder (23–79 CE), who wrote that ostriches "imagine, when they have thrust their head and neck into a bush, that the whole of their body is concealed."[250]
A duck's quack actually does echo,[251] although the echo may be difficult to hear for humans under some circumstances.[252]
Frogs die immediately when cast into boiling water, rather than leaping out; furthermore, frogs will attempt to escape cold water that is slowly heated past their critical thermal maximum.[253]
The memory span of goldfish is much longer than just a few seconds. It is up to a few months long.[254][255]
Sharks can suffer from cancer. The misconception that sharks do not get cancer was spread by the 1992 Avery Publishing book Sharks Don't Get Cancer by I. William Lane and used to sell extracts of shark cartilage as cancer prevention treatments. Reports of carcinomas in sharks exist, and current data does not support any conclusions about the incidence of tumors in sharks.[256]
Great white sharks do not mistake human divers for pinnipeds. Their attack behaviors on humans and pinnipeds are very different: when attacking a seal, a great white shark surfaces quickly and violently attacks it. Attacks on humans, on the other hand, are more relaxed and slow: the shark charges at a normal pace, bites, and swims off. Great white sharks have efficient eyesight and color vision; the bite is not predatory, but rather for identification of an unfamiliar object.[257]
There is no such thing as an "alpha" in a wolf pack. An early study that coined the term "alpha wolf" had only observed unrelated adult wolves living in captivity. In the wild, wolf packs operate more like human families: there is no defined sense of rank, parents are in charge until the young grow up and start their own families, younger wolves do not overthrow an "alpha" to become the new leader, and social dominance fights are situational.[258][259]
Snake jaws cannot unhinge. The posterior end of the lower jaw bones contains a quadrate bone, allowing jaw extension. The anterior tips of the lower jaw bones are joined by a flexible ligament allowing them to bow outwards, increasing the mouth gape.
Tomato juice is ineffective at neutralizing the odor of a skunk; it only appears to work due to olfactory fatigue.[260] The Humane Society of the United States recommends using a mixture of dilute hydrogen peroxide (3%), baking soda, and dishwashing liquid for dogs that get sprayed.[261]
Porcupines do not shoot their quills. They can detach but do not project.[262][263]
Mice do not have a special appetite for cheese, and will eat it only for lack of better options. Mice actually favor sweet, sugary foods. It is unclear where the myth came from.[264]
There is no credible evidence that the Candiru, a South American parasitic catfish, can swim up a human urethra if one urinates in the water in which it lives. The sole documented case of such an incident, written in 1997, has been heavily criticized upon peer review and this phenomenon is now largely considered a myth.[265]
The bold, powerful cry commonly associated with the bald eagle in popular culture is actually that of a red-tailed hawk. Bald eagle vocalizations are much softer and chirpy.[266]
Invertebrates

Bombus pratorum over an Echinacea purpurea inflorescence; a widespread misconception holds that bumblebees should be incapable of flight.
Earthworms do not become two worms when cut in half. Only a limited number of earthworm species[267] are capable of anterior regeneration. When such earthworms are bisected, only the front half of the worm (where the mouth is located) can feed and survive, while the other half dies.[268] Some species of planarian flatworms, however, actually do become two new planarians when bisected or split down the middle.[269]
Houseflies have an average lifespan of 20 to 30 days, not 24 hours.[270] The misconception may arise from confusion with mayflies, which, in some species, have an adult lifespan of as little as 5 minutes.[271] A housefly egg will hatch into a maggot within 24 hours of being laid.[272]
The daddy longlegs spider (Pholcidae) is not the most venomous spider in the world; though they can indeed pierce human skin, the tiny amount of venom they carry causes only a mild burning sensation for a few seconds.[273] In addition, there is confusion regarding the use of the name daddy longlegs, because harvestmen (order Opiliones, which are arachnids, but not spiders), crane flies (which are insects), and male mosquitoes (also insects) are also sometimes called daddy longlegs in regional dialects, and may occasionally share the misconception of being venomous.[274][275]
The flight mechanism and aerodynamics of the bumblebee (as well as other insects) are quite well understood, despite the urban legend that calculations show that they should not be able to fly. In the 1930s, the French entomologist Antoine Magnan indeed postulated that bumblebees theoretically should not be able to fly in his book Le Vol des Insectes (The Flight of Insects).[276] Magnan later realized his error and retracted the suggestion. However, the hypothesis became generalized to the false notion that "scientists think that bumblebees should not be able to fly".
The widespread urban legend that one swallows a high number of spiders during sleep in one's life has no basis in reality. A sleeping person causes all kinds of noise and vibrations by breathing, their heart's beating, snoring etc., all of which warn spiders of danger.[277][278]
Earwigs are not known to purposely climb into external ear canals, though there have been anecdotal reports of earwigs being found in the ear.[279] Entomologists suggest that the origin of the name is actually a reference to the appearance of the hindwings, which are unique and distinctive among insects, and resemble a human ear when unfolded.[280][281]
European honey bees are often described as essential to human food production, leading to claims that without their pollination, humanity would starve or die out.[282] The quote "If bees disappeared off the face of the earth, man would only have four years left to live" has been misattributed to Albert Einstein.[283][284] In fact, many important crops need no insect pollination at all. The ten most important crops,[285] comprising 60% of all human food energy,[286] all fall into this category.
Female praying mantises rarely eat the males during coitus, especially in their natural environment. In a study in a laboratory at the University of Central Arkansas, it was observed that 1 out of 45 times the female ate the male before mating and the male ate the female with that same frequency.[287]
Plants

Sunflowers with the sun clearly visible behind them.
Poinsettias are not highly toxic to humans or cats. While it is true that they are mildly irritating to the skin or stomach,[288] and may sometimes cause diarrhea and vomiting if eaten,[289] an American Journal of Emergency Medicine study of 22,793 cases reported to the American Association of Poison Control Centers showed no fatalities and few cases requiring medical treatment.[290] According to the ASPCA, poinsettias may cause light to mid-range gastrointestinal discomfort in felines, with diarrhea and vomiting as the most severe consequences of ingestion.[291]
Sunflowers do not always point to the sun. Flowering sunflowers face a fixed direction (often east) all day long, but not necessarily the sun.[292] However, in an earlier developmental stage, before the appearance of flower heads, the immature buds do track the sun (a phenomenon called phototropism) and the fixed alignment of the mature flowers toward a certain direction is often the result.[293]
Evolution and paleontology
Further information: Introduction to evolution and Objections to evolution
The word theory in "the theory of evolution" does not imply scientific doubt regarding its validity; the concepts of theory and hypothesis have specific meanings in a scientific context. While theory in colloquial usage may denote a hunch or conjecture, a scientific theory is a set of principles that explains an observable phenomenon in natural terms.[294][295] "Scientific fact and theory are not categorically separable",[296] and evolution is a theory in the same sense as germ theory or the theory of gravitation.[297]
Evolution does not attempt to explain the origin of life[298] or the origin and development of the universe. The theory of evolution deals primarily with changes in successive generations over time after life has already originated.[299] The scientific model concerned with the origin of the first organisms from organic or inorganic molecules is known as abiogenesis, and the prevailing theory for explaining the early development of our universe is the Big Bang model.

A reconstruction of Aegyptopithecus, a primate predating the split between the human and Old World monkey lineages in human evolution
Humans did not evolve from either of the living species of chimpanzees (common chimpanzees and bonobos).[300] Humans and chimpanzees did, however, evolve from a common ancestor.[301][302] The most recent common ancestor of humans and the living chimpanzees lived between 5 and 8 million years ago.[303]
Evolution is not a progression from inferior to superior organisms, and it also does not necessarily result in an increase in complexity. A population can evolve to become simpler, having a smaller genome, but biological devolution is a misnomer.[304][305]
Evolution does not "plan" to improve an organism's fitness to survive.[306][307] The misconception is encouraged as it is common shorthand for biologists to speak of a purpose as a concise form of expression (sometimes called the "metaphor of purpose");[308] it is less cumbersome to say "Dinosaurs may have evolved feathers for courtship" than "Feathers may have been selected for when they arose as they gave dinosaurs a selective advantage during courtship over their non-feathered rivals".[309]
Not all dinosaurs became extinct during the Cretaceous–Paleogene extinction event. Birds evolved from small feathered theropods in the Jurassic, and while most dinosaur lineages were cut short at the end of the Cretaceous, some birds survived. Consequently, dinosaurs are part of the modern fauna.[310]
Humans and dinosaurs (other than birds) did not coexist.[311] The last of the non-avian dinosaurs died 66 million years ago in the course of the Cretaceous–Paleogene extinction event, whereas the earliest members of genus Homo (humans) evolved between 2.3 and 2.4 million years ago. This places a 63-million-year expanse of time between the last non-avian dinosaurs and the earliest humans. Humans did coexist with woolly mammoths and saber-toothed cats—mammals often erroneously depicted alongside dinosaurs.[312]

Tyrannosaurus rex. Non-avian dinosaurs died out in the Cretaceous–Paleogene extinction event at the end of the Cretaceous period.
Petroleum does not originate from dinosaurs but rather bacteria and algae.[313]
Mammals did not evolve from any modern group of reptiles; rather, mammals and reptiles evolved from a common ancestor. Soon after the first reptile-like animals appeared, they split into two branches, the sauropsids and the synapsids.[314] The line leading to mammals (the synapsids) diverged from the line leading to modern reptilian lines (the sauropsids) about 320 million years ago, in the mid-Carboniferous period. Only later (in the late Carboniferous or Early Permian) did the modern reptilian groups (lepidosaurs, turtles and crocodiles) diverge. The mammals themselves are the only survivors of the synapsid line.[315]
Bioinformatics
No human genome (nor any mammalian genome for that matter) has ever been completely sequenced. As of 2017, by some estimates, between 4% to 9% of the human genome had not been sequenced.[316]
Computing and the Internet
Computers running macOS or Linux are not immune to malware such as trojan horses or computer viruses.[317] Specialized malware designed to attack macOS and Linux systems does exist. However, the vast majority of viruses are developed for Microsoft Windows.[318]
The deep web is not primarily full of pornography, illegal drug trade websites and stolen bank details. The area that contains this illegal information is a small portion of the deep web known as the "dark web." Much of the deep web consists of academic libraries, databases, and anything that is not indexed by normal search engines.[319]
Private browsing, such as incognito mode, does not protect users from being tracked by websites or their internet service provider (ISP). Such entities can still use information such as IP addresses and user accounts to uniquely identify users.[320]
Quantum computers cannot solve difficult search problems by simply trying all the possibilities. Quantum computers do use quantum superposition to simultaneously examine huge numbers of possible solutions at once, effectively a form of parallel computation, but the computer cannot "pick" the right one.[321][322][323][324]
Economics

Total population living in extreme poverty, by world region 1987 to 2015[325]
The total number of people living in extreme absolute poverty globally, using the widely used metric of $1.00/day (in 1990 U.S. dollars) has decreased over the last several decades, but most people surveyed in several countries incorrectly think it has increased or stayed the same. Additionally, the portion of people living in extreme poverty has declined as well, no matter which income threshold is used.[326]
Income inequality in the US is significantly higher than people think.[327]
Monopolists do not try to sell items for the highest possible price, nor do they try to maximize profit per unit, but rather they try to maximize total profit.[328]
For any given production set, there is not a set amount of labor input (a "lump of labor") to produce that output. This fallacy is commonly seen in Luddite and later, related movements as an argument either that automation causes permanent, structural unemployment, or that labor-limiting regulation can decrease unemployment. But, in fact, changes in capital allocation, efficiency, and economies of learning can change the amount of labor input for a given set of production.[329]
Income is not a direct factor in determining credit score in the United States. Rather, credit score is impacted by the amount of unused available credit, which is in turn affected by income.[330] Income is also considered when evaluating creditworthiness more generally.
The correlation between racial makeup and house price in the US has risen over the past several decades.[331]
An increase in gross income (such as a promotion at a salaried job) will never reduce one's post-tax earnings (net income) due to putting one in a higher tax bracket. In every country with tax brackets, they only indicate the marginal tax rate, as opposed to the total income tax rate. Only the additional income earned in the higher tax bracket is taxed at the elevated rate, and the income received before is taxed at lower rates. Relatedly, the existence of a tax bracket with 100% tax rate only imposes a ceiling on net income, and does not reduce net income to zero.[332][333]
Environmental science

Ozone depletion has no contributions to the global warming
Global warming is not caused by the hole in the ozone layer. Ozone depletion is a separate problem caused by chlorofluorocarbons (CFCs)[334] which have been released into the atmosphere.[335]
Human body and health

Electric fans in South Korea. A widely held misconception is that leaving fans on while asleep can be fatal.
Sleeping in a closed room with an electric fan running does not result in "fan death," as is widely believed in South Korea.[336]
Waking sleepwalkers does not harm them. While it is true that a person may be confused or disoriented for a short time after awakening, this does not cause them further harm. In contrast, sleepwalkers may injure themselves if they trip over objects or lose their balance while sleepwalking.[337]
Eating less than an hour before swimming does not increase the risk of experiencing muscle cramps or drowning. One study shows a correlation between alcohol consumption and drowning, but there is no evidence cited regarding the consumption of food or stomach cramps.[338]
Drowning is often inconspicuous to onlookers.[339] In most cases, the instinctive drowning response prevents the victim from waving or yelling (known as "aquatic distress"),[339] which are therefore not dependable signs of trouble; indeed, most drowning victims undergoing the response do not show prior evidence of distress.[340]
Human blood in veins is not actually blue. Hemoglobin gives blood its red color. Deoxygenated blood (in veins) has a deep red color, and oxygenated blood (in arteries) has a light cherry-red color. The misconception probably arises for two reasons: 1) Veins below the skin appear blue or green. This is due to a variety of reasons only weakly dependent on the color of the blood, including subsurface scattering of light through the skin, and human color perception. 2) Many diagrams use colors to show the difference between veins (usually shown in blue) and arteries (usually shown in red).[341]
Exposure to a vacuum, or experiencing all but the most extreme uncontrolled decompression, does not cause the body to explode, or internal fluids to boil. (However, fluids in the mouth or lungs will boil at altitudes above the Armstrong limit.) Instead, it will lead to a loss of consciousness once the body has depleted the supply of oxygen in the blood, followed by death from hypoxia within minutes.[342]
Stretching before or after exercise does not reduce muscle soreness.[343]
Exercise-induced muscle soreness is not caused by lactic acid buildup.[344] Muscular lactic acid levels during and after exercise do not correlate with soreness;[345] exercise-induced muscle soreness is thought to be due to microtrauma from an unaccustomed or strenuous exercise, against which the body adapts with repeated bouts of the same exercise.[346]
Swallowing gasoline does not generally require special emergency treatment, as long as it goes into the stomach and not the lungs, and inducing vomiting can make it worse.[347]
Urine is not sterile, not even in the bladder.[348]
People tend to overestimate the physical strength of black men.[349]
Sudden immersion into freezing water does not typically cause death by hypothermia, but rather from the cold shock response, which can cause cardiac arrest, heart attack, or hyperventilation leading to drowning.[350]
Senses

An incorrect map of the tongue showing zones that taste bitter (1), sour (2), salty (3) and sweet (4). Actually, all zones can sense all tastes, and there is also the taste of umami (not shown on picture).
Infants can and do feel pain.[351]
All different tastes can be detected on all parts of the tongue by taste buds,[352] with slightly increased sensitivities in different locations depending on the person, contrary to the popular belief that specific tastes only correspond to specific mapped sites on the tongue.[353]
There are not four primary tastes, but five: in addition to bitter, sour, salty, and sweet, humans have taste receptors for umami, which is a "savory" or "meaty" taste.[354] Fat does interact with specific receptors in taste bud cells, but whether it is a sixth primary taste remains inconclusive.[355]
Humans have more than the commonly cited five senses. The number of senses in various categorizations ranges from five to more than 20. In addition to sight, smell, taste, touch, and hearing, which were the senses identified by Aristotle, humans can sense balance and acceleration (equilibrioception), pain (nociception), body and limb position (proprioception or kinesthetic sense), and relative temperature (thermoception).[356] Other senses sometimes identified are the sense of time, echolocation, itching, pressure, hunger, thirst, fullness of the stomach, need to urinate, need to defecate, and blood carbon dioxide (CO2) levels.[357]
Skin and hair
Water-induced wrinkles are not caused by the skin absorbing water and swelling.[358] They are caused by the autonomic nervous system, which triggers localized vasoconstriction in response to wet skin, yielding a wrinkled appearance.[359] One hypothesis suggests that this improves traction with wet objects; however, a 2014 study showed no improvement in handling wet objects with wrinkled fingertips.[360]
Shaving does not cause terminal hair to grow back thicker (more dense) or darker. This belief is due to hair that has never been cut having a tapered end, whereas, after cutting, the edge is blunt and therefore thicker than the tapered ends; the sharper, unworn edges make the cut hair appear thicker and feel coarser. That short hairs are less flexible than longer hairs also contributes to this effect.[361]
A person's hair and fingernails do not continue to grow after death. Rather, the skin dries and shrinks away from the bases of hairs and nails, giving the appearance of growth.[362]
Hair care products cannot actually "repair" split ends and damaged hair. They can prevent damage from occurring in the first place, and they can also smooth down the cuticle in a glue-like fashion so that it appears repaired, and generally make hair appear in better condition.[363]
Pulling or cutting a grey hair will not cause two grey hairs to grow in its place. It will only cause the one hair to grow back because only one hair can grow from each follicle.[364]
The gene for red hair[clarification needed] is not becoming extinct, nor will the gene for blond hair do so, although both are recessive alleles. Redheads and blonds may become rarer but will not die out unless everyone who carries those alleles dies or fails to reproduce.[365]
Acne is mostly caused by genetics, rather than lack of hygiene, eating fatty food, or other personal habits.[366]
Nutrition, food, and drink
Diet has little influence on the body's detoxification, and detoxification diets "have no scientific basis".[367] Some scientists called those diets a "waste of time and money".[368] Despite this, there is a common misconception that specific diets aid this process or could remove substances that the body is unable to remove by itself.[369] Toxins are removed from the body by the liver and kidneys.[367]
Drinking eight glasses (2–3 liters) of water a day is not needed to maintain health.[370] The amount of water needed varies by person (weight), diet, activity level, clothing, and environment (heat and humidity). Water does not actually need to be drunk in pure form, but can be derived from liquids such as juices, tea, milk, soups, etc., and from foods including fruits and vegetables.[370]
Drinking coffee and other caffeinated beverages does not cause dehydration for regular drinkers, although it can for occasional drinkers.[371]

Sugar does not cause hyperactivity in children.[372] Double-blind trials have shown no difference in behavior between children given sugar-full or sugar-free diets, even in studies specifically looking at children with attention deficit hyperactivity disorder or those considered sensitive to sugar.[373] A 2019 meta-analysis found no positive effect of sugar consumption on mood but did find an association with lower alertness and increased fatigue within an hour of consumption, known as a sugar crash.[374]
Alcoholic beverages do not make the entire body warmer.[375] Alcoholic drinks create the sensation of warmth because they cause blood vessels to dilate and stimulate nerve endings near the surface of the skin with an influx of warm blood. This can actually result in making the core body temperature lower, as it allows for easier heat exchange with a cold external environment.[376]
Alcohol does not necessarily kill brain cells.[377] Alcohol can, however, lead indirectly to the death of brain cells in two ways: (1) In chronic, heavy alcohol users whose brains have adapted to the effects of alcohol, abrupt ceasing following heavy use can cause excitotoxicity leading to cellular death in multiple areas of the brain.[378] (2) In alcoholics who get most of their daily calories from alcohol, a deficiency of thiamine can produce Korsakoff's syndrome, which is associated with serious brain damage.[379]
A vegetarian or vegan diet can provide enough protein for adequate nutrition.[380] In fact, typical protein intakes of ovo-lacto vegetarians and vegans meet or exceed requirements.[381] However, a vegan diet does require supplementation of vitamin B12 for optimal health.[380]
Swallowed chewing gum does not take seven years to digest. In fact, chewing gum is mostly indigestible, and passes through the digestive system at the same rate as other matter.[382]
Spicy food or coffee does not have a significant effect on the development of peptic ulcers.[383]
The beta carotene in carrots does not enhance night vision beyond normal levels for people receiving an adequate amount, only in those suffering from a deficiency of vitamin A.[384] The belief that it does may have originated from World War II British disinformation meant to explain the Royal Air Force's improved success in night battles, which was actually due to radar and the use of red lights on instrument panels.[385]
Most cases of obesity are not related to slower resting metabolism. Resting metabolic rate does not vary much between people. Overweight people tend to underestimate the amount of food they eat, and underweight people tend to overestimate. In fact, overweight people tend to have faster metabolic rates due to the increased energy required by the larger body.[386]
Eating normal amounts of soy does not cause hormonal imbalance.[387]
The order in which different types of alcoholic beverages are consumed ("Grape or grain but never the twain" and "Beer before liquor never sicker; liquor before beer in the clear") does not affect intoxication or create adverse side effects.[388]
Absinthe does not have any psychoactive or hallucinogenic properties, and is no more dangerous than any other alcoholic beverage of equivalent proof.[389] This misconception stems from late 19th and early 20th century distillers who produced cheap knockoff versions of absinthe, which used copper salts to recreate the distinct green color of true absinthe, and some also reportedly adulterated cheap absinthe with poisonous antimony trichloride, reputed to enhance the louching effect.[390]
Human sexuality
There is no physical test for virginity, and the condition of the hymen says nothing about a person's sexual experience.[391][392] Bleeding is not directly associated with first vaginal sexual intercourse, and indicates nothing about sexual experience.[391] Physical virginity tests have no scientific merit.[393]
Hand size does not predict human penis size,[394] but finger length ratio may.[395]
While pregnancies from sex between first cousins do carry a small risk of birth defects, this risk is often exaggerated:[396] The risk is 5–6% (similar to that of a 40-year-old woman giving birth),[396][397] compared with a baseline risk of 3–4%.[397] The effects of inbreeding depression, while still relatively small compared to other factors (and thus difficult to control for in a scientific experiment), become more noticeable if isolated and maintained for several generations.[398]
There is no physiological basis for the belief that having sex in the days leading up to a sporting event or contest is detrimental to performance.[399] In fact it has been suggested that sex prior to sports activity can elevate male testosterone level, which could potentially enhance performance.[400]
There is no definitive proof of the existence of the vaginal G-spot, and the general consensus is that no such spot exists on the female body.[401]
Facial scarring increases male attractiveness.[402]
Brain
Phineas Gage's brain injuries, caused by a several-foot-long tamping rod driven through his skull, did not cause him to become a "psychopath", as many sources claim;[403] while he was temporarily disabled by the accident, far from "gambling" himself into "emotional and reputational ... bankruptcy",[404] Gage eventually moved to Chile and found success in the physically and mentally demanding job of stagecoach driver. Fanciful descriptions of his "immoral behavior" in later life are without factual basis.[405]

Golgi-stained neurons in human hippocampal tissue. It is commonly believed that humans will not grow new brain cells, but research has shown that some neurons can reform in humans.
Mental abilities are not absolutely separated into the left and right cerebral hemispheres of the brain.[406] Some mental functions, such as speech and language (such as Broca's area and Wernicke's area), tend to activate one hemisphere of the brain more than the other in some kinds of tasks. If one hemisphere is damaged or removed at an early age, these functions can often be recovered in part, or even in full, by the other hemisphere (see neuroplasticity). Other abilities, such as motor control, memory, and general reasoning, are served equally by the two hemispheres.[407]
It is not true that by the age of two years, humans have generated all of the brain cells they will ever have, a belief held by medical experts until 1998.[408] It is now understood that new neurons can be created in some parts of the postnatal brain.[409] A 2013 study showed that also in old age, about 700 new neurons are produced in the hippocampus daily.[410]
Vaccines do not cause autism or autism spectrum disorders. Although fraudulent research by British ex-doctor Andrew Wakefield claimed a connection, repeated attempts to reproduce the results ended in failure, and the research was ultimately shown to have been manipulated.[411]
People do not use only 10% of their brains. While it is true that a small minority of neurons in the brain are actively firing at any one time, the inactive neurons are important as well.[412] This misconception has been commonplace in American culture at least as far back as the start of the 20th century, and was attributed to William James, who apparently used the expression only metaphorically.[413]
Disease
See also: Misconceptions about HIV and AIDS and Misinformation related to the COVID-19 pandemic

The bumps on a toad are not warts, and therefore cannot cause warts on humans.
Drinking milk or consuming other dairy products does not increase mucus production.[414] As a result, they do not need to be avoided by those with the flu or cold congestion.
Humans cannot catch warts from toads or other animals; the bumps on a toad are not warts.[415] Warts on human skin are caused by human papillomavirus, which is unique to humans.
Neither cracking one's knuckles nor exercising while in good health causes osteoarthritis.[416]
Eating nuts, popcorn, or seeds does not increase the risk of diverticulitis.[417] These foods may actually have a protective effect.[418]
Stress does not play a major role in hypertension, although it is widely believed to do so by lay people.[419] Specific relaxation therapies are not supported by the evidence.[420] Acute stress has been shown to temporarily increase blood-pressure levels.[419] Chronic stress may cause a sustained rise in high blood-pressure.[419]
In those with the common cold, the color of the sputum or nasal secretion may vary from clear to yellow to green and does not indicate the class of agent causing the infection.[421]
Vitamin C does not prevent the common cold, although it may have a protective effect during intense cold-weather exercise. If taken daily, it may slightly reduce the duration and severity of colds, but it has no effect if taken after the cold starts.[422]
In people with eczema, bathing does not dry the skin and may in fact be beneficial.[423]
There are not, nor have there ever been, any programs that will provide access to dialysis machines in exchange for pull tabs on beverage cans.[424] This rumor has existed since at least the 1970s, and usually cites the National Kidney Foundation as the organization offering the program. The Foundation itself has denied that this is the case, noting that 80 percent of the cost of dialysis in the United States is usually covered by Medicare.[425] However, some charities, such as the Kansas City Ronald McDonald House Charities, will accept pull tab donations, which are then turned over to a local recycler for their scrap metal value.[426]
Rhinoceros horn in powdered form is not used as an aphrodisiac in traditional Chinese medicine as Cornu Rhinoceri Asiatici (犀角, xījiǎo, "rhinoceros horn"). It is prescribed for fevers and convulsions,[427] a treatment not supported by evidence-based medicine.
Leprosy (Hansen's disease) is not auto-degenerative as commonly supposed, meaning that it will not (on its own) cause body parts to be damaged or fall off.[428] Leprosy causes rashes to form and may degrade cartilage and, if untreated, inflame tissue. Damage to peripheral nerve tissue is common and can lead to blindness and loss of touch or pain sensation, which may increase the risk and severity of injury. In addition, leprosy is only mildly contagious, with it assumed that 95% of those infected are able to fight the infection naturally.[429] In fact, Hansen's disease is one of the least contagious infectious diseases in the world.[428] Tzaraath, the Biblical disease often identified as "leprosy" and the source of many myths about the disease, may or may not have been the disease known in modern times by that name.[430] The misconception also stems from the discontinuity between science and government policy. Although the medical community has agreed for decades that Hansen's disease is only mildly contagious, it still remains on the list of "communicable diseases of public health significance" for health-related grounds of inadmissibility on the US Citizenship and Immigration Services website, even though HIV was removed in 2010.[431]
Rust does not cause tetanus infection. The Clostridium tetani bacterium is generally found in dirty environments. Since the same conditions that harbor tetanus bacteria also promote rusting of metal, many people associate rust with tetanus. C. tetani requires anoxic conditions to reproduce and these are found in the permeable layers of rust that form on oxygen-absorbing, unprotected ironwork.[432]
The common cold is caused by germs, not cold temperature, although cold temperature may somewhat weaken the immune system.[433]
Quarantine has never been a standard procedure for those with severe combined immunodeficiency, despite the condition's popular nickname ("bubble boy syndrome") and its portrayal in film. A bone marrow transplant in the earliest months of life is the standard course of treatment. The exceptional case of David Vetter, who indeed lived much of his life encased in a sterile environment because he would not receive a transplant until age 12 (the transplant, because of failure to detect a rare disease, instead killed Vetter), was one of the primary inspirations for the "bubble boy" trope.[434]
Gunnison, Colorado, did not avoid the 1918 flu pandemic by using protective sequestration. The implementation of protective sequestration did prevent the virus from spreading outside a single household after a single carrier came into the town while it was in effect, but the sequestration was not sustainable and had to be lifted in February 1919. A month later, the flu hit the town, killing five and infecting dozens of others.[435]
Antibiotics are ineffective in treating many diseases, and their overuse is not innocuous; the misconception that they are effective against many common viral infections leads to their overuse.[436][437]
Inventions
George Washington Carver did not invent peanut butter. He did compile hundreds of uses for and products that could be made from peanuts (some of which, like peanut butter, were variants of products that already existed) and hundreds more for soybeans, pecans, and sweet potatoes to promote his system of crop rotation.[438]
Although the guillotine was named after the French physician Joseph-Ignace Guillotin, he neither invented nor was executed with this device. He died peacefully on his own bed in 1814.[439]
Thomas Crapper did not invent the flush toilet.[440] During the Aegean Civilization period, the Minoans' Royal Palace at Knossos in Crete had a "toilet (which) consisted of a wooden seat, earthenware 'pan', and the rooftop reservoir as a source of water."[441] The forerunner of the modern toilet was invented by the Elizabethan courtier Sir John Harington, who was banished from court when his book on the subject poked fun at important people.[442] Crapper, however, did much to increase its popularity and introduced several innovations, including the "valveless waste-water preventer", which allowed the toilet to flush effectively without leaving the flush water running for a long time.[443] The word crap is also not derived from his name (see the Words, phrases and languages section above).[444]
Thomas Edison did not invent the light bulb.[445] He did, however, develop the first practical light bulb in 1880 (employing a carbonized bamboo filament), shortly prior to Joseph Swan, who invented an even more efficient bulb in 1881 (which used a cellulose filament).
Henry Ford did not invent either the automobile or the assembly line. He did improve the assembly line process substantially, sometimes through his own engineering but more often through sponsoring the work of his employees.[446] Karl Benz (co-founder of Mercedes-Benz) is credited with the invention of the first modern automobile,[447] and the assembly line has existed throughout history.
Al Gore never said that he had "invented" the Internet. What Gore actually said was, "During my service in the United States Congress, I took the initiative in creating the Internet", in reference to his political work towards developing the Internet for widespread public use.[448] Gore was the original drafter of the High Performance Computing and Communication Act of 1991, which provided significant funding for supercomputing centers,[449] and this in turn led to upgrades of a major part of the already-existing early 1990s Internet backbone, the NSFNet,[450] and development of NCSA Mosaic, the browser that popularized the World Wide Web.[449] (See also Al Gore and information technology.)
James Watt did not invent the steam engine,[451] nor were his ideas on steam engine power inspired by a kettle lid pressured open by steam.[452] Watt improved upon the already commercially successful Newcomen atmospheric engine in the 1760s and 1770s, making certain improvements critical to its future usage, particularly the external condenser, increasing its efficiency, and later the mechanism for transforming reciprocating motion into rotary motion; his new steam engine later gained huge fame as a result.[453]
Chemistry or materials science
Glass does not flow at room temperature as a high-viscosity liquid.[454] Although glass shares some molecular properties found in liquids, glass at room temperature is an amorphous solid that only begins to flow above the glass transition temperature,[455] though the exact nature of the glass transition is not considered settled among scientists.[456] Panes of stained glass windows are often thicker at the bottom than at the top, and this has been cited as an example of the slow flow of glass over centuries. However, this unevenness is due to the window manufacturing processes used at the time.[455][456] No such distortion is observed in other glass objects, such as sculptures or optical instruments, that are of similar or even greater age.[455][456][457]
Most diamonds are not formed from highly compressed coal. More than 99 percent of diamonds ever mined have formed in the conditions of extreme heat and pressure about 140 kilometers (87 mi) below the earth's surface. Coal is formed from prehistoric plants buried much closer to the surface, and is unlikely to migrate below 3.2 kilometers (2.0 mi) through common geological processes. Most diamonds that have been dated are older than the first land plants, and are therefore older than coal. It is possible that diamonds can form from coal in subduction zones and in meteoroid impacts, but diamonds formed in this way are rare and the carbon source is more likely carbonate rocks and organic carbon in sediments, rather than coal.[458]
Diamonds are not infinitely hard, and are subject to wear and scratching: although they are the hardest known material on Mohs Scale, they can be scratched by other diamonds[459] and worn down even by much softer materials, such as vinyl records.[460]
Neither tin foil nor tin cans still use tin as a primary material. Aluminum foil has replaced tin foil in almost all uses since the 20th century;[461] tin cans now primarily use steel or aluminum as their main metal.[462]
Mathematics
Marble bust of a man with a long, pointed beard, wearing a tainia, a kind of ancient Greek headcovering in this case resembling a turban. The face is somewhat gaunt and has prominent, but thin, eyebrows, which seem halfway fixed into a scowl. The ends of his mustache are long a trail halfway down the length of his beard to about where the bottom of his chin would be if we could see it. None of the hair on his head is visible, since it is completely covered by the tainia.
Bust of Pythagoras in the Capitoline Museums, Rome.[463] Classical historians dispute whether he ever made any mathematical discoveries.[464][465]
Although the Greek philosopher Pythagoras is most famous today for his alleged mathematical discoveries,[466][467] classical historians dispute whether he himself ever actually made any significant contributions to the field.[464][465] He did not discover his famous theorem, because it was known and used by the Babylonians and Indians centuries before him,[468][469][470][471] but he may have been the first to introduce it to the Greeks.[472][470]
In mathematics, the repeating decimal commonly written as 0.999... represents exactly the same quantity as the number one. Despite having the appearance of representing a smaller number, 0.999... is a symbol for the number 1 in exactly the same way that .333... is an equivalent notation for the number represented by the fraction 1/3.[473]
There is no evidence that the ancient Greeks deliberately designed the Parthenon to match the golden ratio.[474] The Parthenon was completed in 438 BCE, more than a century before the first recorded mention of the ratio by Euclid. Similarly, Leonardo da Vinci's Vitruvian Man makes no mention of the golden ratio in its text, although it describes many other proportions.[475]
Physics

An illustration of the (incorrect) equal-transit-time explanation of aerofoil lift
The lift force is not generated by the air taking the same time to travel above and below an aircraft's wing.[476] This misconception, sometimes called the equal transit-time fallacy, is widespread among textbooks and non-technical reference books, and even appears in pilot training materials. In fact, the air moving over the top of an aerofoil generating lift is always moving much faster than the equal transit theory would imply,[476] as described in the incorrect and correct explanations of lift force.
Blowing over a curved piece of paper does not demonstrate Bernoulli's principle. Although a common classroom experiment is often explained this way,[477] it is false to make a connection between the flow on the two sides of the paper using Bernoulli's equation since the air above and below are different flow fields and Bernoulli's principle only applies within a flow field.[478] The paper rises because the air follows the curve of the paper and a curved streamline will develop pressure differences perpendicular to the airflow.[479] Bernoulli's principle predicts that the decrease in pressure is associated with an increase in speed, that is, that as the air passes over the paper it speeds up and moves faster than it was moving when it left the demonstrator's mouth. But this is not apparent from the demonstration.[480]
The Coriolis effect does not cause water to consistently drain from basins in a clockwise/counter-clockwise direction depending on the hemisphere. The common myth often refers to the draining action of flush toilets and bathtubs. Rotation is determined by whatever minor rotation is initially present at the time the water starts to drain. The Coriolis force can impact the direction of the flow of water but only in rare circumstances. The water has to be so still that the effective rotation rate of the Earth is faster than that of the water relative to its container and the externally applied torques (such as might be caused by flow over an uneven bottom surface) have to be very small.
Neither gyroscopic forces nor geometric trail are required for a rider to balance a bicycle or for it to demonstrate self-stability.[481][482] Although gyroscopic forces and trail can be contributing factors, it has been demonstrated that those factors are neither required nor sufficient by themselves.[481]
The idea that lightning never strikes the same place twice is one of the oldest and best-known superstitions about lightning, but has no basis in evidence. Lightning in a thunderstorm in a given area is more likely to strike objects and spots the more prominent or conductive they are. Lightning strikes the Empire State Building in New York City about 100 times per year.[483][484]
Heat lightning does not exist as a distinct phenomenon. What is mistaken for "heat lightning" is usually ordinary lightning from storms too distant to hear the associated thunder; such lightning carries the same risk of striking a person as ordinary lightning.[485]
A penny dropped from the Empire State Building would not kill a person or crack the sidewalk, though it could cause injury.[486]
Using a programmable thermostat's setback feature to limit heating or cooling in a temporarily unoccupied building does not waste as much energy as leaving the temperature constant. Using setback saves energy (five to fifteen percent) because heat transfer across the surface of the building is roughly proportional to the temperature difference between its inside and the outside.[487][488]
It is not possible for a person to completely drown in quicksand, as commonly depicted in fiction,[489] although sand entrapment in the nearshore of a body of water can be a drowning hazard as the tide rises.[490]
Quantum nonlocality caused by quantum entanglement does not allow faster-than-light communication or instant action at a distance, despite its common characterization as "spooky action at a distance". Rather, it means that certain experiments cannot be explained by local realism.[491][492]
Psychology
Dyslexia is not a cognitive disorder characterized by the reversal of letters or words and mirror writing. It is a disorder of people who have at least average intelligence and who have difficulty in spelling words, reading quickly, writing words, "sounding out" words in the head, pronouncing words when reading aloud, or understanding what they read. Although some dyslexics also have problems with letter reversal, it is not a symptom. Letter reversal can be a characteristic in some cases of dyslexia, but dyslexia is not diagnosed on the basis of seeing or writing letters or words backward or in reverse.[493]
There is no scientific evidence for the existence of "photographic" memory in adults (the ability to remember images with so high a precision as to mimic a camera),[494] but some young children have eidetic memory.[495] Many people have claimed to have a photographic memory, but those people have been shown to have good memories as a result of mnemonic devices rather than a natural capacity for detailed memory encoding.[496] There are rare cases of individuals with exceptional memory, but none of them has a memory that mimics that of a camera.
Schizophrenia is not split or multiple personality disorder—a split or multiple personality is dissociative identity disorder.[497] The term was coined from the Greek roots schizein and phrēn, "to split" and "mind", in reference to a "splitting of mental functions" seen in schizophrenia, not a splitting of the personality.[498]
All humans learn in fundamentally similar ways.[499] In particular, there is no evidence that people have different learning styles,[499] or that catering teaching styles to purported learning styles improves information retention.[500]
The friendship paradox is the phenomenon first observed by the sociologist Scott L. Feld in 1991 that most people have fewer friends than their friends have, on average.[501] It can be explained as a form of sampling bias in which people with more friends than the study participants have are also likelier than average to be observed among the participants' own friends. In contradiction to this, most people believe that they have more friends than their friends have.[502]
Self-harm is not generally an attention-seeking behavior. Many self-harmers are very self-conscious of their wounds and scars and feel guilty about their behavior, leading them to go to great lengths to conceal their behavior from others.[503] They may offer alternative explanations for their injuries, or conceal their scars with clothing.[504]
Not all pedophiles commit child sexual abuse, and not all child sexual abuse is committed by pedophiles. Pedophilia is the condition of an adult being exclusively or predominantly attracted to pre-pubescent children, while child sexual abuse is the act of an adult, pedophile or not, having sexual relations with pre-pubescent children.[505]
There is no evidence that violent video games have any negative effects on humans ("cause people to become violent"). While there are examples of video games influencing the behavior of culprit individuals (such as the perpetrators of the Columbine High School massacre), studies have consistently found no link between aggression and violent video games,[506] and the popularity of gaming has coincided with a decrease in youth violence.[507] Nonetheless, the moral panic surrounding video games in the 1980s, 1990s, and 2000s, alongside isolated incidents and legislation in many countries, likely contributed to proliferating this notion.[508]
Transportation
The Bermuda Triangle does not have any more shipwrecks or mysterious disappearances than most other waterways.[509]
Toilet waste is never intentionally jettisoned from an aircraft. All waste is collected in tanks and emptied into toilet waste vehicles.[510] Blue ice is caused by accidental leakage from the waste tank. Passenger trains, on the other hand, have indeed historically flushed onto the tracks; modern trains usually have retention tanks on board and therefore do not dispose of waste in such a manner.
Automotive batteries stored on a concrete floor do not discharge any faster than they would on other surfaces,[511] in spite of worry among Americans that concrete harms batteries.[512] Early batteries with porous, leaky cases may have been susceptible to moisture from floors, but for many years lead–acid car batteries have had impermeable polypropylene cases.[513] While most modern automotive batteries are sealed, and do not leak battery acid when properly stored and maintained,[514] the sulfuric acid in them can leak out and stain, etch, or corrode concrete floors if their cases crack or tip over or their vent-holes are breached by floods.[515]
See also
Conventional wisdom
Factoid
List of cognitive biases
List of counterintuitive truths
List of fallacies
List of topics characterized as pseudoscience
List of urban legends
Moral panic
Old wives' tale
Outline of public relations
Pseudodoxia Epidemica
Pseudoscience
QI
Stereotype
The Straight Dope
Urban legends about drugs











Urban legends about drugs
https://en.wikipedia.org/wiki/Urban_legends_about_drugs

Many urban legends and misconceptions about drugs have been created and circulated among young people and the general public, with varying degrees of veracity. These are commonly repeated by organizations which oppose all classified drug use, often causing the true effects and dangers of drugs to be misunderstood and less scrutinized. The most common subjects of such false beliefs are LSD, cannabis, and MDMA. These misconceptions include misinformation about adulterants or other black market issues, as well as alleged effects of the pure substances.


Contents
1	Lysergic acid diethylamide (LSD)
1.1	Babysitter places baby in the oven while high on LSD
1.2	Bad LSD
1.3	"Bananadine" LSD
1.4	Blue star tattoos
1.5	Legally insane
1.6	LSD causes genetic mutations
1.7	Man permanently thinks he is (an orange and is terrified of being turned in to a glass of orange juice )
1.8	Police officer unwittingly drinks LSD
1.9	"Permatripping" and retention of LSD in spinal fluid
1.10	Strychnine
1.11	Sungazing while tripping
2	Cannabis
2.1	Confusion with Jimson weed
2.2	"Flashbacks" due to release from fat cells
2.3	George Washington smoked cannabis
2.4	An allergic reaction to molecules found in marijuana killed Bruce Lee
2.5	Marijuana today is 10–20 times more potent than in the past
2.6	Multi-day impairment
2.7	Reefer madness
2.8	Smoking or "chasing" cannabis with tobacco increases the high
2.9	Some Lucky Strike cigarettes contained cannabis
2.10	Popularity in the United States in the 1960s
3	MDMA (ecstasy)
3.1	Holes in the brain
3.2	MDMA causes Parkinson's disease
3.3	MDMA drains spinal fluid
3.4	"Stacks"—Single, double, triple etc.
4	Methamphetamine
4.1	Lung damage from recrystallization
4.2	Strawberry Quik
5	Heroin
5.1	Cotton fever
5.2	"Cheese"
6	Phencyclidine (PCP)
6.1	Embalming fluid
6.2	Rodney King was on PCP at the time of his 1991 beating and arrest
6.3	Man slices off his face and feeds it to dogs
6.4	Superhuman strength
7	Psilocybin mushrooms
7.1	Super Mario
8	Desomorphine (Krokodil)
9	Designer drugs
9.1	Cannibalism from bath salts
10	General
10.1	Drugs smuggled in baby's corpse
10.2	Drug-laced candy or lollipops given to schoolchildren
10.3	Drug-related Halloween legends
10.4	"Gnome" legend
10.5	"Homeopathic" drug water
11	Drug testing
11.1	Secondhand exposure will cause a positive test
11.2	High doses of niacin will help you pass
11.3	Poppy seeds cause false positives for opiates
12	See also
13	References
Lysergic acid diethylamide (LSD)
Some of the strangest urban legends told are those about lysergic acid diethylamide (LSD), a potent psychedelic drug that gained popularity in several countries in the 1960s and 1970s, and experienced a resurgence in the mid 2010s to present. The drug's relation to the 1960s counterculture was likely part of the reason for such legends.

Babysitter places baby in the oven while high on LSD
Main article: The Baby-Roast
This is an unverifiable drug-scare story dating to the 1960s of a hippie babysitter girl putting a baby in the oven and a turkey in the bassinet. It has been debunked[1] by Snopes.com. This myth is parodied in The Simpsons episode "The Secret War of Lisa Simpson,"[2] in which the children go on a school field trip to a "scared straight" wax museum at the local police station. One exhibit contains a wax dummy of a hippie woman eating a sandwich with a baby in it. Chief Wiggum says "That's right, she's got the munchies for a California Cheeseburger!"

In May 2009, partial ostension of this legend may have occurred when an Ohio man high on PCP allegedly tried to put his 28-day-old son into a conventional oven, only to be stopped in time by the child's mother.[3] Also, in March 2010, a Kentucky man put his five-week-old baby in an oven (without turning it on, and without any injury) while drunk and high on marijuana (that he had smoked earlier that night) that he alleged made him feel strange and suspected of being laced with a different drug that made him hallucinate; he was also tired from working.[4] In 2005 China Arnold murdered her near month-old baby with a microwave oven, but she claimed to be under the influence of alcohol, not LSD.[5][6]

There are a limited number of cases reported in which babies were put into microwaves, though these cases were not known to involve any drugs.[7][8] These were often cases of deliberate infanticide. However, there have been no known cases of microwaving (or baking) babies involving LSD specifically, or any other psychedelic drug, including cannabis. There are, however, many reported cases of psychotic violence under the influence of PCP (see below). PCP is not related to LSD.

Bad LSD
A "bad trip" is easily caused by an expectation or fear of ill effects, which may later be blamed on "bad acid." This legend was made famous at the 1969 Woodstock festival, when concert-goers were warned to stay away from "the brown acid", which was allegedly bad.[9]

One possible reason people believe that they had "bad acid" could be because they were simply sold a much higher dose than usual, which is not uncommon due to the inherent lack of quality control of illicit drugs, and with LSD in particular being effective at microgram rather than milligram doses. The stronger the dose, the stronger and potentially more anxiety-provoking the trip can get.

However, drugs sometimes falsely represented by sellers as LSD in the 1970s were actually PCP, amphetamine, or other drugs that have quite different, and often unfavorable, effects from LSD, causing unwitting users to incorrectly attribute a "bad trip" to LSD. There are now many research chemicals (DOB[10][11] 2C-I,[12] DOC,[13] DOI,[14] etc.) that can be nearly indistinguishable from real LSD before use, and thus can be easily confused with "bad acid." Some of these, such as 25I-NBOMe are even potent enough for psychoactive doses to fit on blotter paper, and may occasionally be sold as LSD when the latter is scarce. The idea of adulterating blotter LSD with these chemicals, however, has no known basis in fact.[citation needed]

"Bananadine" LSD
Main article: Bananadine
The false claim states that it is possible to synthesize LSD or some similar hallucinogenic drug called "bananadine" from banana peels or other common household foods and chemicals. The actual synthesis of LSD usually requires advanced knowledge and experience in organic chemistry and requires both expensive laboratory equipment and expensive, carefully controlled precursor chemicals.

Originating from a recipe originally published as a hoax in the Berkeley Barb in March 1967,[15] variants of this legend often circulate on the Internet and were popular on BBSs well before the widespread availability of Internet access through William Powell's "The Anarchist Cookbook." This book claimed "Musa sapientum Bananadine" was a mild psychoactive drug found in banana peels. The slang terms "mellow yellow" and "saffron" (for the color of the peels) were borrowed from the 1966 Donovan song, "Mellow Yellow," perhaps because the phrase "electrical banana" is mentioned in one of the lines. According to The Rolling Stone Illustrated Encyclopedia of Rock and Roll, Donovan claimed he was actually referring to a banana-shaped vibrator.[16] The song itself, despite its "psychedelic" feel, was written about Donovan's bout with hepatitis (which causes jaundice).[citation needed]

Blue star tattoos
Main article: Blue star tattoo legend
This legend frequently surfaces in American elementary and middle schools in the form of a flyer that has been photocopied through many generations, which is distributed to parents by concerned school officials. It has also become popular on Internet mailing lists and websites. This legend states that a temporary lick-and-stick tattoo soaked in LSD and made in the form of a blue star, or of popular children's cartoon characters, is being distributed to children in the area in order to get them addicted to LSD. The flyer lists an inaccurate description of the effects of LSD, some attribution (typically to a well-regarded hospital or a vaguely specified "adviser to the president"), and instructs parents to contact police if they come across the blue star tattoos. No actual cases of LSD distribution to children in this manner have ever been documented. LSD is not addictive, and it is unlikely to be abused by an unwitting user. Therefore, there is no plausible motivation for a drug dealer to distribute LSD in this manner.[17]

Legally insane
There is an urban legend that a person who has used LSD more than seven times is automatically declared legally insane. The same claim is often suggested with large doses, the difference being that the person is considered psychotic only for the duration of the trip. An extension of this legend is that a person who does LSD more than "X number of times" is permanently disqualified from the military as a result of being "legally insane," a version which was likely inspired by wishful thinking of drug-using draft dodgers in the 1960s. But no such law exists, at least not in the United States.[18] However, the United States Air Force has regulations limiting and prohibiting recruitment of pre-service drug users, including prohibition of proven or admitted LSD users.[19]

A version of this legend was repeated as fact on TV's Dragnet series in 1967, in an episode revolving around the use of LSD before it was made illegal. The script described a shipment containing "one pound of LSD [tabs], enough to turn the entire population of Los Angeles into dangerous psychotics" on the premise that one dose made a person legally insane due to the recurrence of completely unpredictable flashbacks throughout the user's life after a single dose.

LSD causes genetic mutations
Beginning in 1967, studies raised concerns that LSD might produce genetic damage[20] or developmental abnormalities in fetuses. However, these initial reports were based on in vitro studies or were poorly controlled and have not been substantiated. In studies of chromosomal changes in human users and in monkeys, the balance of evidence suggests no increase in chromosomal damage. For example, white blood cells of people who had been given LSD in a clinical setting were examined for visible chromosomal abnormalities; overall, there appeared to be no lasting changes.[20] Several studies have been conducted using illicit LSD users and provide a less clear picture. Interpretation of this data is generally complicated by factors such as the unknown chemical composition of street LSD, concurrent use of other psychoactive drugs, and diseases such as hepatitis in the sampled populations. It seems possible that the small number of genetic abnormalities reported in users of street LSD is either coincidental or related to factors other than a toxic effect of pure LSD.[20] A 2008 medical review concluded, "The available data suggest that pure LSD does not cause chromosomal abnormalities, spontaneous abortions, or congenital malformations."[21] However, this refutation has not stopped this perennial legend from being told, nor has it stopped the jokes about such "mutations" allegedly messing up the children of the Baby Boomers.

Man permanently thinks he is (an orange and is terrified of being turned in to a glass of orange juice )
Another common legend, again dating back to the 1960s, was that a man who took LSD went insane and permanently thought that he was a glass of orange juice. Because of this, he could never bend over, slept upright and did not make any sudden movements over fear of being "spilt". Alternative versions sometimes have the man thinking he is a glass of milk or a whole orange. Another version of this myth states that the man believed he had become an orange, and was afraid he would be 'peeled' by his friends.[22]

Police officer unwittingly drinks LSD
In this legend, which dates back to 1970, a police (or customs) officer pulls over a driver believed to have been drinking, sees that the driver has a water bottle, and demands a taste of it to see if it contains alcohol. The officer does not taste any alcohol, so the driver either gets off completely or merely gets a speeding ticket. Shortly afterward, the officer begins tripping very hard and stares into space, since the swig of "water" he took actually contained numerous "hits" of LSD. In some versions of the legend, the officer consumes enough LSD to actually go insane. According to Snopes.com, there are no verifiable reports of this ever happening, even decades after the legend was first told, and it is thus considered spurious.[23]

"Permatripping" and retention of LSD in spinal fluid
This legend may have its foundation in the fact that chronic use can result in flashbacks and hallucinogen persisting perception disorder (HPPD).[24] There remains no consensus regarding the nature and causes of HPPD or flashbacks. A study of 44 HPPD subjects who had previously ingested LSD showed EEG abnormalities.[25]

Given that some symptoms have environmental triggers, it may represent a failure to adjust visual processing to changing environmental conditions. There are no explanations for why only some individuals develop HPPD. Those affected by HPPD are not psychotic, as they clearly recognize the unrealistic nature of their visual disturbances.[26] Explanations in terms of LSD physically remaining in the body for months or years after consumption have been discounted by experimental evidence.[citation needed]

LSD is metabolized by the liver, and has an elimination half-life of around 2.5 to 4 hours.[27]

Strychnine
Anti-drug educators frequently tell their students some variant on the theme of inevitable strychnine poisoning through LSD use, for example, that strychnine is commonly sold as a cheaper substitute for LSD by unscrupulous drug dealers; that strychnine is a byproduct of LSD synthesis; that the body produces strychnine as a result of LSD metabolism; or that strychnine is used as a preservative to prevent the otherwise natural, rapid decomposition of LSD, allowing it to be stored; or that strychnine is somehow necessary to bond LSD to blotter paper. None of this is true.[28] These claims may even be believed and propagated by drug users themselves. In reality, most hallucinogens cause some degree of mental or physical discomfort after the "trip" is over. This is an indirect effect of the drug,[28] not strychnine or any other adulterant. Additionally, strychnine is one of the most bitter substances known. The bitter taste can be detected at 1 part per million, which is well below the toxic level.[28] Finally, the dangerous dose of strychnine is too high to be contained in a blotter square, even if the entire square were composed of the poison.[28]

Strychnine has indeed rarely been discovered mixed with LSD and other drugs in a few samples recovered by law enforcement agencies, but these were all found in murder or attempted murder investigations where someone was being specifically targeted for poisoning, and not associated with recreational LSD use.[28]

A related myth is that a new type of gang initiation requires the initiate to put a mixture of LSD and strychnine on the buttons of as many payphones as possible. This too is debunked by the urban legends website Snopes.com.[29]

Sungazing while tripping
A popular legend dating back to the 1960s, it has been claimed that several people took LSD and stared at the sun, going blind as a result. This myth appeared in 1967 on the cop show Dragnet, and twice in the mainstream news media. The legend is considered to be unfounded, since in 1968 the source of the hoax, Norman M. Yoder, commissioner of the Office of the Blind in the Pennsylvania State Welfare Department, admitted that he had completely made up the story because of his "concern over illegal LSD use by children."[30] After the sun-gazing on LSD story was widely publicized, a small number of case reports were published in the medical literature which describe this phenomenon temporarily occurring.[31][32] In one case, the patient was a teenage girl described as having a "hysterical personality" who heard warnings about staring at the sun under LSD in a school anti-drug lecture and thought this "would be a neat thing," and in another case the patient had paranoid schizophrenia.[31]

Cannabis
Further information: List of cannabis hoaxes
Many misleading urban legends about cannabis exist. Like LSD rumors, many were spread during the 1960s and 1970s, and are believed to continuously circulate today. These widespread legends claim that it is easy to overdose on the smokeable variant of cannabis and that it is extremely dangerous and addictive when compared to alcohol and tobacco.

Withdrawal from heavy, chronic cannabis use does not usually exceed 3–4 days, but it has the potential to be psychologically addictive.[33][34][35][36] Withdrawal symptoms are generally mild - loss of appetite, insomnia, feelings of uneasiness/anxiety, tension, stomach ache, headache and irritability all being common symptoms.[citation needed] There are studies that show no actual increased risk of cancer from smoking marijuana, even when duration of use is expanded over several years.[37] In fact, some studies indicate THC to have anticancer properties, with studies showing tumor reduction in mice.[38]

Confusion with Jimson weed
Historically, and possibly related to the "Reefer Madness" legend, some people (particularly Americans) had confused cannabis with Jimson weed (Datura stramonium). Jimson weed, which grows wild in the United States and several other countries, is a potent deliriant which can cause true hallucinations and delusions that are believed by the user to be real, as opposed to the pseudohallucinations and perceptual distortions typically caused by cannabis.[39] Confusion could have resulted from the fact that Datura's common name contains the word "weed," which is also a slang term for cannabis, and the fact that both plants (as well as others) have been given the moniker "locoweed" in the first half of the 20th century. Aside from these superficial similarities, the two plants are not related, do not resemble one another, and are very unlikely to be confused. Jimson weed is highly toxic and can cause delirium, confusion, hallucinations, blurred vision, photophobia, dry mouth, urinary retention, hyperthermia, incoordination, hypertension, and rapid heartbeat among other effects. An overdose (or suspected overdose) on this substance is a medical emergency, as it can cause seizures, coma, or death by cardiac arrest.[40][41]

"Flashbacks" due to release from fat cells
Similar to one of the most enduring myths about LSD, and also somewhat related to the "multi-day impairment" legend described further down on this list, this legend claims that residual THC stored in fat cells gets released spontaneously into the bloodstream in enough quantities to get one high again long after the last use of cannabis, be it days, weeks, or even months later.[42] This legend is typically accompanied by anecdotal evidence of people who experience a "high" after doing exercise of some sort. While somewhat more biologically plausible than the discredited LSD legend due to the fat-solubility of THC, this phenomenon remains scientifically unproven. A 2009 study of rats that involved injecting them with large quantities of THC (equivalent to 5-10 joints per day in humans) each day for ten days straight, then subjecting them to simulated severe stress or food deprivation led to double the blood levels of THC-COOH two days after the last THC exposure compared to rats that were neither stressed nor deprived of food.[43] If such results occurred in humans, then it is theoretically possible for a chronic cannabis user to fail a drug test long after the usual detection time due to exercise, dieting, or severe stress shortly before the test—and several anecdotal reports of this exist. However, there is currently no hard evidence that enough active THC would be released to get one "high" or cause "flashbacks." One should also note that flashbacks from psychoactive drugs in general are now known to be psychological phenomena,[by whom?] and drug residues typically play no significant role in their occurrence and recurrence.

As for the anecdotes about exercise, they likely experienced a "runner's high" due to their bodies releasing endorphins, which are endogenous opioid agonists, along with anandamide and other endogenous cannabinoid agonists.[44] These flashbacks have also been reported after one has stretched or stood up/sat or laid down abruptly.[45] In addition, some studies find that the body produces endocannabinoids such as anandamide during exercise, which may also explain such effects since they activate the same receptors as THC.[46][47]

George Washington smoked cannabis
Further information: Thomas Jefferson hemp smoking hoax
There is a common belief that George Washington (and/or other Founding Fathers such as Thomas Jefferson) used cannabis for its psychoactive or medicinal properties.[48][49] This has even made its way into popular films such as Dazed and Confused.

Both Washington and Jefferson grew cannabis to produce hemp, and Washington used hemp fiber to make clothes for his slaves, but there is no direct evidence that either Washington or Jefferson consumed it for its psychoactive properties.[49] Washington is commonly mis-quoted as saying "Make the most of the Indian hemp seed, and sow it everywhere," often cited as a note to his gardener published in The Washington Papers.[50] However the closest phrase to this in The Washington Papers is in a letter to William Pearce – "I am very glad to hear that the Gardener has saved so much of the St. foin seed, and that of the India Hemp. Make the most you can of both, by sowing them again in drills. [...] The Hemp may be sown any where."[51]

In The Papers of George Washington, "hemp" is defined as Cannabis sativa grown for fiber,[52] and "Indian hemp" typically refers to the closely related Cannabis indica.[53] While Washington was growing cannabis for its fiber, both of these species are also cultivated for their psychoactive and medicinal properties.

When cannabis is grown for its medicinal or psychoactive properties, male plants are routinely separated from females to prevent pollination, as non-pollinated female plants produce the most potent and prized flowering tops,[54] known as sinsemilla (from the Spanish "sin semilla", meaning "without seed").[54] To produce sinsemilla, the sexes must be separated before pollination occurs.[54] On August 7, 1765, Washington wrote in his diary "Began to separate the Male from the Female hemp at Do.– rather too late."[52] While this has been taken as evidence that Washington was growing cannabis for its psychoactive or medicinal properties, The Straight Dope points out that later entries in Washington's diary suggest that "he divided the plants because the males made stronger fiber while the female plants produced the seed needed for the next year's crop."[49] Two days after he wrote the aforementioned entry in his diary, Washington wrote that he had "put some Hemp in the Rivr. to Rot,"[52] a technique called water retting used for producing hemp, not psychoactive cannabis.[49] The following month he wrote that he "Began to Pull the Seed Hemp but it was not sufficiently ripe," and three weeks later that the "Hempseed seems to be in good order for getting – that is of a proper ripeness."[52]

The introductory editorial for the June 2010 cannabinoid-themed issue of the British Journal of Pharmacology said that "there are sources that suggest that chronic tooth-ache may have led the first President of the United States, George Washington, to grow the plant for medicinal purposes,"[55] though these sources are not cited. The cover of the issue featured images of Washington and Queen Victoria placed on either side of a cannabis leaf.[55]

An allergic reaction to molecules found in marijuana killed Bruce Lee
A number of rumours surfaced surrounding the cause of action film star Bruce Lee's death in 1973, one of which was that he had been killed by the consumption of cannabis.[56] Lee died of a cerebral edema several hours after taking the painkiller and muscle relaxant equagesic.[56] His autopsy showed trace amounts of cannabis in his stomach, and he had been known to use cannabis.[56][57] However, a doctor at the coroner's hearing was quoted as saying that the cannabis in Lee's stomach was "no more significant than if Bruce had drunk a cup of tea that day."[56]

Lee's physician, Donald Langford, and Peter Wu, a doctor who had treated Lee for another edema ten weeks earlier, believed that the fatal edema could have been caused by a rare allergic reaction to an alkaloid in cannabis, as a large quantity of hashish was removed from his stomach during the earlier edema, and he had been warned not to use it again.[57][58] Wu told the coroner he believed the death was due to hypersensitivity to either cannabis or equagesic.[58] However, Ronald D. Teare, a professor of forensic medicine at the University of London who was flown in to be the chief expert in the coroner's report, said that it was both "irresponsible and irrational" to attribute either edema to cannabis, and concluded the fatal edema was due to a rare reaction to equagesic.[56][58] Teare, who had supervised nearly 100,000 autopsies and provided evidence for nearly 20,000 inquests in his 35 years of experience, was echoed by R. R. Lycette, the clinical pathologist at Queen Elizabeth Hospital.[58] Lycette told the hearing that his death could not have been caused by cannabis, and that Lee had died from an edema caused by a reaction to one or both of the ingredients in equagesic.[58]

At the time in Hong Kong, Cannabis was seen in an extremely negative light — worse than opium — and was "considered a 'foreign' drug with sinister and evil undertones."[58] Bruce Thomas, author of Bruce Lee: Fighting Spirit stated that "this view had a massive impact on the official findings," and that Wu's inclusion of cannabis as a suspected cause of death "reflected this cultural and even political pressure."[58] Wu later said in a 1992 interview with Thomas:

Professor Teare was a forensic scientist recommended by Scotland Yard; he was brought in as the expert, so we can't contradict his testimony. The dosage of cannabis is neither precise nor predictable, but I've never known anyone to die simply from taking it.[58]

Although it could not be completely ruled out that cannabis caused the edema, Teare's view was accepted by the coroner, and the official verdict was "death by misadventure" caused by a reaction to equigesic.[56][58] Cannabis was not included as a possible cause of Lee's death.[58]

Marijuana today is 10–20 times more potent than in the past
An oft-repeated legend is that today's cannabis is at least an order of magnitude stronger than in the past (and by implication much more dangerous). THC levels are allegedly 10, 20 or even 30 times higher than in the 1960s or 1970s. Although potency levels have risen in several countries (such as the US and UK), the actual increases have been much more modest (almost threefold from 1982 to 2007 in the US) and high-potency strains have always existed, as have various concentrated forms of cannabis.[59][60] Furthermore, potency of seized samples was not tested before 1971, leaves were not distinguished from buds by testers at first, and samples from before the early 1980s (when testing and storage procedures were changed) were often degraded, making comparisons going that far back inaccurate. Non-representative sampling was also an issue.[61][62] Since most of the increase happened after 2000, this legend can be considered an example of ostension (people have been making such claims as far back as the 1970s).

A related claim, especially in the UK, is that the cannabidiol/THC ratio has decreased over the past few decades, resulting in a new and presumably more dangerous form of cannabis that never existed before (since CBD is thought[by whom?] to attenuate some of the negative side effects of THC). While there is little to no reliable data before 2005 on such ratios in the UK, making comparisons to the past impossible, the US data going back to the 1970s shows little to no clear trend, and there have always been strains with extremely low ratios.[60] Ratios are also known to vary widely between strains and growing/harvesting methods.

Some versions of this legend claim the potency change is due to "genetic modification," a term which often evokes fear in the popular consciousness, but there is no hard evidence that anything other than selective breeding and enhanced growing techniques are behind the change. "Genetic modification" insofar as attempting to emphasize desirable traits by the practice of selective breeding is standard practice across many areas of farming, including the production of cannabis. It is likely that the term "genetic modification" is used by people who do not understand that selective breeding is not the same as genetic engineering.

Multi-day impairment
Another claim about cannabis is that impairment due to smoking it lasts many days after using it, since THC is stored in the fat cells, leading to a low-grade haze long after the primary high is gone.[62] This myth is based primarily on anecdotal evidence and the known fact that urine drug tests remain positive for at least several days after using, and longer for regular users. The tests however measure non-psychoactive metabolites, not active THC.[63][64] And the blood levels of THC generally fall well below the psychoactive threshold within 2–4 hours of smoking (4–8 hours after oral use).[65] A cannabis equivalent of a hangover may occur the morning after taking high doses, but even that ends much sooner than the legend suggests. Although smoking cannabis on a Friday night would most likely test positive in a urinalysis Monday, no amount of the psychoactive effect would be retained by that time.[66]

One possible origin of this idea is the fact that some (but not all) studies with airline pilots have shown a modest decrease in capabilities on a flight simulator up to 24 hours after use of one fairly strong marijuana cigarette. In two of the four studies (one of which was not placebo-controlled) the ability of the pilots to safely navigate a simulated aircraft was apparently compromised somewhat up to 24 hours later, while the other two did not show any impairment beyond 4–8 hours.[67] Despite the inconsistent replication, these studies have led some experts to recommend drug testing of people in safety-sensitive jobs (pilots, bus drivers, etc.).[68] In contrast, no driving studies have found any significant cannabis-related impairments lasting beyond 2–6 hours.[65][67]

It is also worth noting that the same research group that conducted three out of the four flight simulation studies on cannabis also conducted a similar study using alcohol. They found noticeable hangover-related impairment 14 hours after consuming enough alcohol to reach a BAC of 0.10, despite the fact that the BAC had returned to zero by that point.[69]

Reefer madness
Main article: Cannabis and psychosis
Originating in the 1930s, this myth was the basis for films like Reefer Madness, and used by Harry Anslinger of the Federal Bureau of Narcotics as justification for outlawing cannabis. The allegation was that even the calmest, most normal person could be transformed into a psychopathic killer or rapist solely from smoking a joint. No relationship has ever been proven linking such crimes to the acute intoxication of cannabis alone, and cannabis' psychological effects tend to be more associated with pacifism and inactivity than with aggression. For example, studies of the Jamaican working class showed no difference in the crime rates between users and non-user of cannabis.[70]

Smoking or "chasing" cannabis with tobacco increases the high
In many places, cannabis is routinely mixed with tobacco when rolled into joints. In North America cannabis in any form is also often "chased" with a tobacco cigarette, and hollowed-out cigars filled with cannabis (blunts) are also popular in some subcultures. Some users say that smoking tobacco increases the cannabis high, and this is often attributed to either the nicotine or additives such as menthol. Until recently this was based solely on anecdotal evidence. There may be at least some truth to this legend, as a 2005 study found that a transdermal nicotine patch modestly enhanced the subjective "high" of cannabis relative to a placebo patch—but only in males. Females actually saw a slight reduction in subjective effects.[71] Reasons for the enhancement are not well understood, and this study appears to be the only one as of 2010 that found such effects. However, another study found a significant downside to the practice. It appears that tobacco, which is known to be highly addictive, also enhances the likelihood of developing cannabis dependence symptoms when the two substances are used concurrently.[72]

Some Lucky Strike cigarettes contained cannabis
It has been claimed the cigarette brand Lucky Strike is so named because every so often, a consumer of the product would have a "lucky strike," finding a cannabis spliff in a pack of cigarettes. The rumor varies in how often the cannabis cigarette would be included, anywhere from one in every thousand cartons to one in every pack. It is unclear when this myth originated; Snopes.com claims it has been floating around for "many years." Lucky Strike's slogan "It's Toasted" fueled belief in the myth further ('toasted' being one slang term for being high on cannabis). Despite the popularity of the myth, there are no reliable reports of any Lucky Strike cigarette containing cannabis. The name "Lucky Strike," in reality, is only a marketing ploy, implying to customers that obtaining their brand is a "Lucky Strike." The "It's Toasted" slogan refers to the product's tobacco being toasted instead of sun-dried, making a supposedly better-tasting product.[73]

Other urban legends offshoot from this one. One of the explanations for the origin of flipping a "lucky" cigarette upside down claims the practice originated from the Lucky Strike myth; it is presumed the superstition arose from flipping the marijuana-containing cigarette upside-down in order to save it for last.[73]

Popularity in the United States in the 1960s
Although the 1960s are commonly perceived as a time of rampant marijuana use compared with the present day, in a 1969 Gallup poll only 4% of American adults had tried marijuana and 34% did not know its effects.[74] In contrast, later Gallup polls show that the percentage of adults who had tried marijuana had risen to 33% by 1985 and 34% by 1999.[75]

MDMA (ecstasy)
The third most common illicit drug that is the source of urban legends is 3,4-methylenedioxymethamphetamine (MDMA), better known as "ecstasy." In the United States, this substance was banned in 1985, and other countries followed suit as well. Among American youth, MDMA was most popular in the 1990s and early 2000s, peaking in 2001 and declining thereafter.[76] It was during this time of rather faddish use that numerous urban legends and misconceptions began to surface and be spread through the media, and not all of them necessarily originated from anti-drug organizations.

Holes in the brain
A common legend that surfaced around the year 2000 was that ecstasy can put holes in the brain, akin to Swiss cheese, which are presumed to be permanent. Actually, the only drugs known to cause anything similar to this are PCP and ketamine, which have been posited to cause small holes in the cortex known as Olney's Lesions.[77] However, structural changes observed over time in the brains of methamphetamine users, and various other substances (e.g., neurotoxins), though not 'holes' in any manner, can still be significantly damaging.[78]

The concept of "holes" most likely comes from a misinterpretation of SPECT (and other) scans which show the levels of activity (or lack thereof) in certain areas of the brain, by measuring glucose usage, blood flow, and other proxies for activity. Such scans do not, however, show the physical structure of the brain. This misconception was likely popularized by an episode of MTV's True Life, "I'm on Ecstasy" (2000), which featured a former poly-drug user (including heavy use of MDMA) whose brain scan showed several areas of greatly diminished activity.[79]

MDMA causes Parkinson's disease
Another legend, often mentioned together with the "holes in the brain" myth discussed above, is that MDMA causes Parkinson's disease, possibly with even one night of exposure. This was partially based on an animal study that found neurotoxicity to dopaminergic neurons after administering the drug to monkeys. However, the study has been retracted by the researchers who conducted it because they had accidentally given methamphetamine instead of MDMA to the animals, given the similar chemical names (MDMA stands for 3,4-methylenedioxymethamphetamine).[80][81] Ironically, it is now being investigated as a possible treatment for Parkinson's disease.[82][83]

The neurotoxicity of MPTP was first hinted at in 1976 after Barry Kidston, a 23-year-old graduate chemistry student in Maryland, synthesized MPPP (a synthetic opiate related to pethidine and the prodines) with MPTP as a major impurity, and self-injected the result. Within three days he began exhibiting symptoms of Parkinson's disease. The National Institute of Mental Health found traces of MPPP, MPTP, and other pethidine analogues in his lab. They tested the substances on rats, but due to rodents' tolerance for this type of neurotoxin nothing was observed. Kidston's parkinsonism was successfully treated with levodopa but he died 18 months later from a cocaine overdose. Upon autopsy, destruction of dopaminergic neurons in the substantia nigra was discovered.[84]

In 1982, seven people in Santa Clara County, California were diagnosed with Parkinsonism after having used MPPP contaminated with MPTP. The neurologist J. William Langston in collaboration with NIH tracked down MPTP as the cause, and its effects on primates were researched. Eventually the motor symptoms of two of the seven patients were successfully treated at Lund University Hospital in Sweden with neural grafts of fetal tissue.[85]

Like MDMA, MPPP is a designer drug, but its effects are more akin to morphine or other opiates. Despite the similarity in name, MDMA and MPPP are unrelated and should not be conflated.

MDMA drains spinal fluid
This myth appears to be derived from research in 1994 in which serotonin breakdown products were measured in the spinal fluid of ecstasy users. However, it was the researchers, not the drug, who drained the fluid (for the purpose of testing).[86] Nonetheless, this legend (and related ones about it damaging one's spinal cord and/or spinal column, which is also false) was popularized in 2000 by Eminem's songs "Drug Ballad" and "The Kids".[87]

"Stacks"—Single, double, triple etc.
Many ecstasy users describe the potency of various ecstasy pills in terms of their stack such as double stack or triple stack pills. These claims are dubious as there is no way to verify potency objectively without proper testing. The term "stack" is not intended to measure potency of ecstasy pills, but it is used as a measurement of mass. Single stacks weigh in at 0.20 grams, doubles at 0.40 grams, and triples at 0.60 grams. Furthermore, a high percentage of what is sold as "ecstasy" may contain a combination of MDMA and one or more other substances or may in fact contain no MDMA at all. For these reasons, the "stack" system of strength description is not necessarily trustworthy—as is commonly the case in the underground drug market.

Methamphetamine
Though initially there were not very many urban legends about methamphetamine ("crank", "crystal meth," "ice"), the "meth epidemic" of the late 1990s and early 2000s (especially in the USA) led to quite a few new legends.

Lung damage from recrystallization
One meth legend refers to the method of administration in which the user will heat/melt crystal methamphetamine and inhale the resulting methamphetamine vapor. The legend states that the drug, once inhaled, will re-crystallize in large amounts inside the lungs, damaging them in the process. This is a false claim as crystallized methamphetamine is always in the form of a salt (usually methamphetamine hydrochloride), which is highly soluble in water, as well as hydrophilic, and is instantly absorbed into the user's bloodstream via the alveoli.

However, intravenous methylphenidate (Ritalin) use results in a type of lung damage commonly known as Ritalin lung.[88] Methylphenidate tablets are crushed and dissolved into solution for IV injection. The tablets contain talc and other particulates which can deposit in the lung (talcosis) and result in severe emphysema affecting all the lobes of the lung.[89] The "Ritalin lung" effect could be a possible source of how rumors about methamphetamine damaging the lungs could have surfaced.

Strawberry Quik
Main article: Strawberry Quik meth myth
Another meth legend is that dealers are selling colored and flavored meth resembling candy (often with names like Strawberry Quick, originating from an idea that dealers would mix the drug with strawberry-flavored Nesquik) to entice children to buy it. It was first reported in 2007 in the western United States, and children were allegedly ingesting it thinking it was candy, and ending up in the ER. According to Snopes.com there is no hard evidence, as of October 2008, that flavored meth is being handed out in schoolyards, nor that children are mistaking meth for candy.[90]

Heroin
Cotton fever
Cotton fever is a high fever supposedly caused by injecting cotton fibers into the bloodstream when shooting up heroin. Cotton is sometimes used as a crude filter for particulate matter prior to IV injection. Other commonly blamed substances include fiberglass if a cigarette filter was used (cigarette filters do not contain fiberglass), or dirt if Mexican heroin was injected.[91] In general, cotton fever refers to a fever that users believe is caused by inanimate particulate matter injected into the bloodstream. In reality, the particulate matter causing cotton fever is bacteria from lack of sterile technique. Most cases of cotton fever resolve as the body clears the infection. Users will often seek medical attention when cotton fever persists. Persistent cotton fever is often infective endocarditis. Although endotoxin shed by the bacteria Enterobacter agglomerans, which colonizes cotton plants, has been implicated as the cause of cotton fever,[92] most clinical cases demonstrate blood cultures positive for skin and fecal bacteria.

"Cheese"
Main article: Cheese (recreational drug)
"Cheese" or "Tylenol with Smack" is a heroin-based recreational drug that came to the attention of the media inside and outside the United States[93] after a string of deaths among adolescents in the Dallas-Fort Worth Metroplex, between 2005 and 2007. It is generally reported to be a mixture of heroin and Tylenol PM (an OTC acetaminophen and diphenhydramine combination) or its generic equivalent, in varying ratios.

It seems likely that the concept was originally created as a joke, and after seizures of low purity heroin cut with paracetamol (acetaminophen) "validated" the claims, the DEA issued a warning.[94] Although the source of the original hoax is gone, newspapers and media outlets continue to make reference to each other with no mention of any primary sources, perpetuating the myth of cheese as "starter heroin" for children. However, there may have been some ostension of this legend in 2007 involving a few individuals in Texas.[95]

In the South Park episode "Major Boobage", which aired for the first time on 28 March, 2008, 'cheesing' referred to a moral panic about children using cat urine to get high.

Phencyclidine (PCP)
Embalming fluid
A commonly held misconception is that phencyclidine (PCP, angel dust) is the same as (or is synthesized from) embalming fluid. Some people, believing this myth, have actually attempted to smoke cigarettes or cannabis dipped in real embalming fluid (i.e. formaldehyde), which is highly toxic. Conversely, some users of PCP-laced cannabis believe (and are often told) that it contains embalming fluid proper and not PCP, or that the slang term "dust" really means embalming fluid proper. Sometimes, the two substances are even mixed together, in a further ostension of this legend.[96][97] The combination might be called "fry," "wet," "illy," "sherm," "worm," "water-water," "amp," "dust(ed)," or other names.

Rodney King was on PCP at the time of his 1991 beating and arrest
The Rodney King police beating case in Los Angeles was a source of much controversy and outrage, as well as urban legends. Because King resisted arrest, with several officers needed to subdue him, he was assumed to be on PCP at the time since the drug is notorious for inciting violent and unpredictable behavior coupled with an inability to feel pain (often misinterpreted as "superhuman" strength). However, toxicology results show that the only drugs found in his system were alcohol and traces of marijuana.[98][99]

Man slices off his face and feeds it to dogs
One legend holds that a man who, while under the influence of the drug, thoroughly sliced off pieces of his own face, including his eyes, to feed to his pet dogs. Some versions of this tale say he suffered permanent brain damage as well. This legend is remarkably similar to what the character Mason Verger did in Thomas Harris' 1999 novel Hannibal. The legend, however, dates back earlier than 1999, and can be traced to former New York homicide detective Vernon J. Geberth, who writes about it in his book Practical Homicide Investigation. According to Geberth, this actually did occur to a man named Michael, and that Geberth was one of the detectives called to the scene."[100] A 1989 book by Dr. Joseph Sacco[101] also mentions this story, albeit with a few differences in the details.

Superhuman strength
Some reports cite a widely held belief that PCP can give its users "superhuman" strength for the duration of its effects,[102] and there are several anecdotes alleging this phenomenon. However, it does not typically make the user significantly stronger in reality than they otherwise would be. The exception is when a user experiences excited delirium, a severe and life-threatening reaction that occasionally results from use of PCP as well as various stimulants such as cocaine and amphetamines. Excited delirium has also been reported to occur without any drug use, and the increased strength that results is most likely caused by a massive increase in adrenaline.[103]

Psilocybin mushrooms
Super Mario
One legend that is popular among both the drug and video gaming subcultures is that the mushroom powerup in Super Mario games is actually based on psilocybin mushrooms. Somewhat lending credit to the legend, Shigeru Miyamoto, the creator of the Super Mario series, has stated that he chose mushrooms for their relationship to "magical realms", and has drawn connections to other works featuring mushrooms with mysterious powers, such as Lewis Carroll's Alice's Adventures in Wonderland, a story in which eating specific mushrooms cause one to change size.[104] The mushrooms depicted in the game (white circles on red caps) also have a similar appearance to Amanita muscaria which, while being quite distinct from psilocybin mushrooms ("magic mushrooms"), still have hallucinogenic properties,[105] and have been used by humans for their intoxicating effects for hundreds of years.[106]

Desomorphine (Krokodil)

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (June 2015) (Learn how and when to remove this template message)
There have been reports of "krokodil"—according to media reports, a street name for desomorphine, a semi-synthetic opioid which has similar strength and narcotic effect to heroin (diacetylmorphine) -- appearing with increasing frequency in Russia and supposedly, more recently, in the United States. Krokodil, which has been associated with and indeed named after the severe side-effects of its use, has been described as 'flesh-eating' or, as the name suggests, causing 'greenish and/or scale-like' flesh in those who inject the drug. Reports of the drug's appearance and of the severe skin infections apparently originated in Russia ten years prior to recent appearances in the Phoenix, AZ area of the United States, in the fall of 2013. It was also reported in Joliet, Illinois and McHenry, Illinois in October 2013, but no laboratory tests have confirmed that desomorphine was present in the blood, urine or tissues of hospitalized krokodil patients. On the contrary, an October 17, 2013 article in the Lawton Constitution quoted the Oklahoma Bureau of Narcotics as saying that reports of krokodil use on the Internet should be "taken with a grain of salt."[107] The article pointed out that a prior case of drug overdose in Oklahoma had been linked to krokodil, but that toxicology tests revealed no desomorphine in the victim's body, but rather morphine, which can appear in tissue as a metabolite of heroin. In Illinois, heroin is known to be extremely cheap and unusually pure, making it unlikely that a drug user would make or purchase krokodil. Further, krokodil is a liquid, while heroin is a powder, and drug users would not be likely to confuse one with the other. In the linkedin.com discussion group "Emerging Drugs of Abuse," with 2500 members in the United States and 43 other countries, toxicology, street drug pharmacology, medical, public health and law enforcement experts expressed doubts about the validity of the krokodil reports after a wave of media stories about the appearance of krokodil in the Chicago area poured from radio, television and print sources. The group believes that the symptoms displayed by krokodil users in the United States are due to a bacterial infection such as necrotizing fasciitis, a "flesh eating" disorder that is spread through the sharing of dirty hypodermic needles. This and the fact that krokodil has never been identified anywhere in the world other than Russia bolster the contention that this drug is not in the US.

However, the increasing popularity of krokodil is likely related to the ability of lay persons (with little or no chemistry training or equipment) to chemically produce a heroin-like opiate drug, at home, using readily available solvents and internet-obtained 'recipes' which are posted on drug forums and chat rooms. By using the available, though dangerously unreliable, instructions, users are converting the much cheaper and easier-to-obtain drug codeine, which is often available over-the-counter or with an easily obtained prescription, into desomorphine, a much stronger opiate. With the street price for heroin or oxycodone much higher than the cost of the codeine and chemicals, users manufacture krokodil for a cheaper, comparable high. However, lacking proper equipment, training, and testing equipment, users are extremely unlikely to produce desomorphine in a pure form at home, and as a result end up injecting a highly impure mixture of codeine, desomorphine, and the toxic chemicals used in the crude reaction such as lye or acetone. While studies are as yet unavailable of various samples of krokodil seized in different regions, it is likely that the drug is in fact not a single chemical, recipe, or 'designer' drug, but rather the medical symptoms caused by the injection of toxic chemical used in a variety of 'home-bake' drug synthesis methods, although traditionally such processes are used by methamphetamine home producers.

While there have been no detailed studies of desomorphine in its pure form publicly available, it is highly likely that it is not causing the severe inflammation, necrosis, and flesh-eating symptoms of krokodil. Such damage is much more likely to be related to the toxic chemicals used in the crude at-home synthesis than to desomorphine itself. There is no indication that desomorphine - one of hundreds of known opioids which differ primarily in strength and duration of action - has any unique 'qualities' which would make it desirable to opiate users in its pure form, nor that in pure form desomorphine would cause the symptoms associated with krokodil.

More research is needed to fully define whether krokodil is a drug or a collection of symptoms associated with injecting toxic chemical by-products of home drug chemistry, but since desomorphine is one of hundreds of known opiates in a chemical family with no association to the symptoms, it is much more likely that the drug is a set of symptoms associated with the injection of household chemicals, rather than a specific drug itself. A comparison could be made to the effects of methanol poisoning from illicitly produced alcohol during the U.S. prohibition. Methanol was sometimes added to the distillate to enhance profits. There are many home-based drug 'recipes' which could, and likely do, result in users injecting highly impure, dangerous, and toxic chemicals, causing krokodil symptoms. Although drawing attention to the dangers of trying to produce or alter drugs using kitchen chemistry and internet 'recipes' is important and valuable, that krokodil is a single drug is unproven and highly unlikely.

Designer drugs
The advent of novel illegal or quasi-legal designer drugs intended as substitutes or alternatives to illegal drugs has given rise to several new legends as well.

Cannibalism from bath salts
In 2012, various drugs nicknamed "bath salts" were implicated in several violent attacks, including a few cases of cannibalism.[108] However, the most well-known cannibal attacker from Miami, Rudy Eugene, tested negative for all drugs known to be nicknamed "bath salts" and every other known psychoactive substance except traces of cannabis.[109]

General
In addition to legends about specific drugs, there are also some more generic ones that are often applied to several types of drugs. Typically, these legends involve rather morbid themes and/or targeted children, but some are told with more levity for the purpose of humor.

Drugs smuggled in baby's corpse
This legend, dating back to the early 1970s and first appearing on the Internet in 1996, claims that drug traffickers are smuggling illegal drugs (typically cocaine) in hollowed-out dead babies to avoid detection.[110] Allegedly, tourists' babies are kidnapped, killed, cut open, filled with drugs, and sewn shut so the contraband can be more readily sneaked over the border. However, according to U.S. Customs and other law enforcement agencies, there are no verifiable reports of this ever happening, and thus this myth is unfounded.[111]

Drug-laced candy or lollipops given to schoolchildren
Plenty of lollipops in "hippy" stores sold in countries like the UK and Canada have been alleged to contain CBD, a non-psychedelic drug found in cannabis; age limits on these are unclear and they are sold passively.

This legend, which surfaced on the Internet just in time for Halloween in October 2004, claimed that drug dealers were giving lollipops laced with drugs, typically a combination of THC and PCP, to unsuspecting children and causing them great harm. Such suckers are allegedly referred to as "dro pops" or something to that effect, and various towns around the country have had their own versions of the legend.[112] According to the U.S. DEA, suckers containing THC and/or PCP were found and confiscated in Chicago in the spring of 2004. They also report that in 2003 and 2004 some psilocybin mushroom chocolate candies were seized near Amarillo, Texas,[113] and that hollowed-out lollipops filled with heroin have been seized in New York City.[114] The goal of doing so was likely to evade detection by law enforcement by disguising the drugs as candy. There is no evidence that these were ever given to children, much less that any such children were harmed, or even that such lollipops have been found outside of these specific locations or anywhere since early 2004.[112] Thus, this legend can be considered to be in a similar vein as the infamous blue star tattoo legend.

Drug-related Halloween legends
Related to the above legend, various drugs have also found their way into the more general and perennial Halloween poisoning legends. Allegedly, unsuspecting trick-or-treaters are given candy (or sometimes fruits) laced with poisons, needles, razor blades, and drugs by strangers. However, virtually all reports of this happening are now known to be either hoaxes, events unrelated to Halloween candy, or non-random poisonings by relatives made to look random.[115] The latest manifestation of drug-related Halloween legends was a prediction by Sheriff Lee Baca of Los Angeles that cannabis edibles (from medical marijuana dispensaries) would possibly end up in the hands of trick-or-treaters on Halloween in 2010. Baca even went so far as to confiscate cannabis edibles from circulation in an attempt to prevent this from happening, and displayed them on television two days before Halloween. Again, there is no evidence that cannabis-laced treats were ever given out to trick-or-treaters in 2010 or in any other year.[116][117]

"Gnome" legend
Another legend involves a group of teenagers who, while drunk and/or tripping on some sort of hallucinogen, find what they perceive to be a gnome (sometimes a dwarf, hobgoblin or smurf), capture it, and bring it home. They sleep off the drug's effects, and the next morning they find out that the "gnome" was really a lost (and very frightened) child. Though the story may be told by some tellers in a negative light, it may also have a positive spin in that the teens become unwitting heroes in finding a missing child whose parents (as well as the police) had been unable to find. According to Snopes.com, the legend had first surfaced in 2004, and as of 2020 the legend's truth status remains undetermined and unverifiable.[118] In some versions of a legend the "gnome" is not a child but a midget or a person with Down Syndrome; some have even gone as far to say it was a dead baby.

"Homeopathic" drug water
In 2004–2005, an Internet rumor was being spread that claimed that LSD (and other drugs) were being diluted with water to extremely low concentrations, which allegedly made the drugs more powerful, yet cheaper and undetectable.[119] This is related to the pseudo-scientific "Law of Infinitesimals," one of the principles behind homeopathy. However, there is no evidence that this actually has effects different from a placebo, or that a significant number of users or dealers were ever actually doing this.

Drug testing
Main article: Drug testing
The increasingly common practice of drug testing, especially urinalysis, has led to an increase in the number of drug users looking for ways to beat the tests, and has spawned a number of urban legends as a result. One should note that time is the only scientifically proven method for certainly passing a test, apart from not consuming any substances at all that are likely to be tested for. However, this does not stop users from getting creative in their attempts to somehow shorten the detection times and/or mask the contents of their fluid specimens, with varying degrees of success or lack thereof.

Secondhand exposure will cause a positive test
This legend is technically true but highly misleading. According to a U.S. Army study, the amount of secondhand cannabis smoke needed to cause a false positive result (failure) is quite large indeed, and would require being sealed in an unventilated car or small room filled with marijuana being actively smoked (often referred to as a "hotbox") for several hours. Hair testing, however, is a different matter, particularly with passive exposure to crack/cocaine, which can deposit onto hair and be readily incorporated into it. With regards to cannabis, however, typically only metabolites (produced by the body and thus not found in smoke) are tested rather than THC, so failure is unlikely to result from non-extreme passive exposure.[120][121]

High doses of niacin will help you pass
Niacin, also known as Vitamin B3, is speciously claimed by some to "burn it out" of one's system when taken at high doses (250–500 mg per day). While some Internet (and other) sources claim that this works wonders, there is no supporting scientific evidence.[122] Very high doses can also cause adverse side effects.[123]

This legend may have been (inadvertently) inspired by Narconon, a Scientology-based drug rehabilitation program that uses exercise, saunas, and dangerously high doses of niacin (and other vitamins) to detox. It is also part of L. Ron Hubbard's general Purification Rundown, which can supposedly remove pollutants as well as drug residues. Although some drug users claim that this has worked,[124] there are currently no peer-reviewed scientific studies to back these methods up.[125]

Poppy seeds cause false positives for opiates
This partially true, but exaggerated, legend has been featured in several movies and television shows, such as Seinfeld and The Big Bang Theory.[126][127] Poppy seeds do contain trace amounts of opium alkaloids, including morphine. Poppy seed-filled pastries (such as hamantashen or kolaches), contain enough opiates to potentially cause a false positive test result, even when a fairly high cutoff level is used. However, drug tests rarely screen for the actual drug used; instead they detect metabolites or increased enzyme levels as markers indicative of drug use. When substance use has been established (and the drug type, i.e. opiate or amphetamine), one can then be tested to identify the specific substance by means of more expensive Gas Chromatography drug screens.

An episode of MythBusters tested this legend and found that as little as three poppy-seed bagels was enough to cause a positive result for the remainder of the day they were eaten (though participants tested clean the following day). The results of this experiment are inconclusive, however, because a test was used with an opiate cutoff level of 300 ng/mL instead of the current SAMHSA recommended cutoff level used in the NIDA 5 test, which was raised from 300 ng/mL to 2,000 ng/mL in 1998 in order to avoid such false positives from poppy seeds.[citation needed]

Despite these measures, false positives do still occur, such as in the case of a mother whose newborn baby was taken into care for five days after she tested positive for opiates because of an "everything" bagel from Dunkin' Donuts.[128]

In addition, poppy seed consumption does not serve as a defense for heroin consumption. This is because a unique metabolite (6-monoacetylmorphine) is produced from heroin use that is never produced from consuming any other substance, even other opiates like the ones present in poppy seeds. Modern tests can thus readily determine whether it was heroin or some other opiate that was ingested, should someone who had used heroin try to claim he or she merely ate poppy seeds. It is widely believed that there is no way to distinguish between poppy seeds and any other kind of opiate. However, a study published by the University of Connecticut's Department of Chemistry proposed that thebaine could be used as a marker of poppy seed consumption. They examined the urine of test subjects given 11 grams of poppy seeds, the urine of heroin users and clean urine spiked with thebaine, as a reference for GC-MS. They also tested street heroin, one morphine tablet and one codeine tablet. Urine specimens were screened by EMIT and confirmed for thebaine by GC-MS using a solid-phase extraction method. Only the subjects who had consumed the poppy seeds had thebaine in their urine, with concentrations ranging from 2 to 81 ng/mL with a limit of detection of 0.5 ng/mL. Thebaine was not detected in any of the tested powdered drugs (street heroin, morphine tablet, codeine tablet) or the urine of the heroin users.[129]

See also
Moral panic






Ethnobotany
https://en.wikipedia.org/wiki/Ethnobotany
Ethnobotany is the study of a region's plants and their practical uses through the traditional knowledge of a local culture and people.[1] An ethnobotanist thus strives to document the local customs involving the practical uses of local flora for many aspects of life, such as plants as medicines, foods, intoxicants and clothing.[2] Richard Evans Schultes, often referred to as the "father of ethnobotany",[3] explained the discipline in this way:

Ethnobotany simply means ... investigating plants used by societies in various parts of the world.[4]

Since the time of Schultes, the field of ethnobotany has grown from simply acquiring ethnobotanical knowledge to that of applying it to a modern society, primarily in the form of pharmaceuticals.[5] Intellectual property rights and benefit-sharing arrangements are important issues in ethnobotany.[5]


Contents
1	History
2	Medieval and Renaissance
3	Age of Reason
4	Development and application in modern science
5	Issues
6	Scientific journals
7	See also
8	References
9	External links
History

Plants have been widely used by Native American healers, such as this Ojibwa man.
The idea of ethnobotany was first proposed by the early 20th century botanist John William Harshberger.[6] While Harshberger did perform ethnobotanical research extensively, including in areas such as North Africa, Mexico, Scandinavia, and Pennsylvania,[6] it was not until Richard Evans Schultes began his trips into the Amazon that ethnobotany become a more well known science.[7] However, the practice of ethnobotany is thought to have much earlier origins in the first century AD when a Greek physician by the name of Pedanius Dioscorides wrote an extensive botanical text detailing the medical and culinary properties of "over 600 mediterranean plants" named De Materia Medica.[2] Historians note that Dioscorides wrote about traveling often throughout the Roman empire, including regions such as "Greece, Crete, Egypt, and Petra",[8] and in doing so obtained substantial knowledge about the local plants and their useful properties. European botanical knowledge drastically expanded once the New World was discovered due to ethnobotany. This expansion in knowledge can primarily be attributed to the substantial influx of new plants from the Americas, including crops such as potatoes, peanuts, avocados, and tomatoes.[9] The French explorer Jacques Cartier learned a cure for scurvy (a tea made from the needles of a coniferous tree, likely spruce) from a local Iroquois tribe.[10]

Medieval and Renaissance
During the medieval period, ethnobotanical studies were commonly found connected with monasticism. Notable at this time was Hildegard von Bingen. However, most botanical knowledge was kept in gardens such as physic gardens attached to hospitals and religious buildings. It was thought of in practical use terms for culinary and medical purposes and the ethnographic element was not studied as a modern anthropologist might approach ethnobotany today.[citation needed]

Age of Reason
In 1732 Carl Linnaeus carried out a research expedition in Scandinavia asking the Sami people about their ethnological usage of plants.[11]

The age of enlightenment saw a rise in economic botanical exploration. Alexander von Humboldt collected data from the New World, and James Cook's voyages brought back collections and information on plants from the South Pacific. At this time major botanical gardens were started, for instance the Royal Botanic Gardens, Kew in 1759. The directors of the gardens sent out gardener-botanist explorers to care for and collect plants to add to their collections.

As the 18th century became the 19th, ethnobotany saw expeditions undertaken with more colonial aims rather than trade economics such as that of Lewis and Clarke which recorded both plants and the peoples encountered use of them. Edward Palmer collected material culture artifacts and botanical specimens from people in the North American West (Great Basin) and Mexico from the 1860s to the 1890s. Through all of this research, the field of "aboriginal botany" was established—the study of all forms of the vegetable world which aboriginal peoples use for food, medicine, textiles, ornaments and more.[12]

Development and application in modern science
The first individual to study the emic perspective of the plant world was a German physician working in Sarajevo at the end of the 19th century: Leopold Glück. His published work on traditional medical uses of plants done by rural people in Bosnia (1896) has to be considered the first modern ethnobotanical work.[13]

Other scholars analyzed uses of plants under an indigenous/local perspective in the 20th century: Matilda Coxe Stevenson, Zuni plants (1915); Frank Cushing, Zuni foods (1920); Keewaydinoquay Peschel, Anishinaabe fungi (1998), and the team approach of Wilfred Robbins, John Peabody Harrington, and Barbara Freire-Marreco, Tewa pueblo plants (1916).

In the beginning, ethonobotanical specimens and studies were not very reliable and sometimes not helpful. This is because the botanists and the anthropologists did not always collaborate in their work. The botanists focused on identifying species and how the plants were used instead of concentrating upon how plants fit into people's lives. On the other hand, anthropologists were interested in the cultural role of plants and treated other scientific aspects superficially. In the early 20th century, botanists and anthropologists better collaborated and the collection of reliable, detailed cross-disciplinary data began.

Beginning in the 20th century, the field of ethnobotany experienced a shift from the raw compilation of data to a greater methodological and conceptual reorientation. This is also the beginning of academic ethnobotany. The so-called "father" of this discipline is Richard Evans Schultes, even though he did not actually coin the term "ethnobotany". Today the field of ethnobotany requires a variety of skills: botanical training for the identification and preservation of plant specimens; anthropological training to understand the cultural concepts around the perception of plants; linguistic training, at least enough to transcribe local terms and understand native morphology, syntax, and semantics.

Mark Plotkin, who studied at Harvard University, the Yale School of Forestry and Tufts University, has contributed a number of books on ethnobotany. He completed a handbook for the Tirio people of Suriname detailing their medicinal plants; Tales of a Shaman's Apprentice (1994); The Shaman's Apprentice, a children's book with Lynne Cherry (1998); and Medicine Quest: In Search of Nature's Healing Secrets (2000).

Plotkin was interviewed in 1998 by South American Explorer magazine, just after the release of Tales of a Shaman's Apprentice and the IMAX movie Amazonia. In the book, he stated that he saw wisdom in both traditional and Western forms of medicine:

No medical system has all the answers—no shaman that I've worked with has the equivalent of a polio vaccine and no dermatologist that I've been to could cure a fungal infection as effectively (and inexpensively) as some of my Amazonian mentors. It shouldn't be the doctor versus the witch doctor. It should be the best aspects of all medical systems (ayurvedic, herbalism, homeopathic, and so on) combined in a way which makes health care more effective and more affordable for all.[14]

A great deal of information about the traditional uses of plants is still intact with tribal peoples.[15] But the native healers are often reluctant to accurately share their knowledge to outsiders. Schultes actually apprenticed himself to an Amazonian shaman, which involves a long-term commitment and genuine relationship. In Wind in the Blood: Mayan Healing & Chinese Medicine by Garcia et al. the visiting acupuncturists were able to access levels of Mayan medicine that anthropologists could not because they had something to share in exchange. Cherokee medicine priest David Winston describes how his uncle would invent nonsense to satisfy visiting anthropologists.[16]

Another scholar, James W. Herrick, who studied under ethnologist William N. Fenton, in his work Iroquois Medical Ethnobotany (1995) with Dean R. Snow (editor), professor of Anthropology at Penn State, explains that understanding herbal medicines in traditional Iroquois cultures is rooted in a strong and ancient cosmological belief system.[17] Their work provides perceptions and conceptions of illness and imbalances which can manifest in physical forms from benign maladies to serious diseases. It also includes a large compilation of Herrick’s field work from numerous Iroquois authorities of over 450 names, uses, and preparations of plants for various ailments. Traditional Iroquois practitioners had (and have) a sophisticated perspective on the plant world that contrast strikingly with that of modern medical science.[18]

Researcher Cassandra Quave at Emory University has used ethnobotany to address the problems that arise from antibiotic resistance. Quave notes that the advantage of medical ethnobotany over Western medicine rests in the difference in mechanism. For example, elmleaf blackberry extract focuses instead on the prevention of bacterial collaboration as opposed to directly exterminating them.[19]

Issues

This section may be confusing or unclear to readers. In particular, it should explain what kind of gender biases exist, and how they came to be. Please help clarify the section. There might be a discussion about this on the talk page. (September 2017) (Learn how and when to remove this template message)
Many instances of gender bias have occurred in ethnobotany, creating the risk of drawing erroneous conclusions. Anthropologists would often consult with primarily men. In Las Pavas, a small farming community in Panama, anthropologists drew conclusions about the entire community's use of plant from their conversations and lessons with mostly men. They consulted with 40 families, but the women only participated rarely in interviews and never joined them in the field. Due to the division of labor, the knowledge of wild plants for food, medicine, and fibers, among others, was left out of the picture, resulting in a distorted view of which plants were actually important to them.[20][21]

Ethnobotanists have also assumed that ownership of a resource means familiarity with that resource. In some societies women are excluded from owning land, while being the ones who work it. Inaccurate data can come from interviewing only the owners.[22]

Other issues include ethical concerns regarding interactions with indigenous populations, and the International Society of Ethnobiology has created a code of ethics to guide researchers.[23]

Scientific journals
Latin American and Caribbean Bulletin of Medicinal and Aromatic Plants
Journal of Ethnobiology and Ethnomedicine
Journal of Ethnopharmacology
Economic Botany
See also
Agroecology
Anthropology
Botany
Economic botany
Ethnobiology
Ethnomedicine
Ethnomycology
History of plant systematics
List of ethnobotanists
Non-timber forest product
Traditional ecological knowledge
Phytogeography
Plants in culture








Traditional ecological knowledge
https://en.wikipedia.org/wiki/Traditional_ecological_knowledge
Traditional Ecological Knowledge (TEK) describes indigenous and other traditional knowledge of local resources. As a field of study in anthropology, TEK refers to "a cumulative body of knowledge, belief, and practice, evolving by accumulation of TEK and handed down through generations through traditional songs, stories and beliefs. It is concerned with the relationship of living beings (including human) with their traditional groups and with their environment."[1] Such knowledge is used in natural resource management as a substitute for baseline environmental data in cases where there is little recorded scientific data,[2] or may complement Western scientific methods of ecological management.

The application of TEK in the field of ecological management and science is still controversial, as methods of acquiring and collecting knowledge—although often including forms of empirical research and experimentation—differ from those used to create and validate scientific ecological knowledge from a Western perspective.[3][4] Non-tribal government agencies, such as the U.S. EPA have established integration programs with some tribal governments in order to incorporate TEK in environmental plans and climate change tracking.

There is a debate whether Indigenous populations retain an intellectual property right over traditional knowledge and whether use of this knowledge requires prior permission and license.[5] This is especially complicated because TEK is most frequently preserved as oral tradition and as such may lack objectively confirmed documentation. As such, the same methods that could resolve the issue of documentation to meet Western requirements may compromise the very nature of traditional knowledge.

Traditional knowledge is used to maintain resources necessary for survival.[6] While TEK itself, and the communities tied to the oral tradition, may become threatened in the context of rapid climate change or Environmental degradation,[7] TEK is proving critical for understanding the impacts of those changes within the ecosystem.

TEK can also refer to traditional environmental knowledge which emphasizes the different components and interactions of the environment.[8]


Contents
1	Development of the field
1.1	Differences from science
2	Aspects of traditional ecological knowledge
2.1	Factual observations
2.2	Management systems
2.3	Past and current uses
2.4	Ethics and values
2.5	Culture and identity
2.6	Cosmology
3	Ecosystem management
3.1	Ecological restoration
4	Traditional knowledge and the U.S. Environmental Protection Agency
5	Effects of environmental degradation on traditional knowledge
6	Climate change
6.1	Case Study: Savoonga and Shaktoolik, Alaska
7	See also
8	References
8.1	Notes
8.2	Further reading
9	External links
Development of the field

This section contains close paraphrasing of one or more non-free copyrighted sources. Relevant discussion may be found on the talk page. Ideas in this article should be expressed in an original manner. (April 2017) (Learn how and when to remove this template message)
The earliest systematic studies of TEK were conducted in anthropology. Ecological knowledge was studied through the lens of ethnoecology, "an approach that focuses on the conceptions of ecological relationships held by a people or a culture," in understanding how systems of knowledge were developed by a given culture.[9] Harold Colyer Conklin, an American anthropologist who pioneered the study of ethnoscience, took the lead in documenting indigenous ways of understanding the natural world. Conklin and others documented how traditional peoples, such as Philippine horticulturists, displayed remarkable and exceptionally detailed knowledge about the natural history of places where they resided. Direct involvement in gathering, fashioning products from, and using local plants and animals created a scheme in which the biological world and the cultural world were tightly intertwined. Although the field of TEK began with documentation of lists of species used by different indigenous groups and their "taxonomies of plants, animals, and later, of other environmental features such as soils," the shift from documentation to consideration of functional relationships and mechanisms gave rise to the field as it is recognized today. In emphasizing the study of adaptive processes, which argues that social organization itself is an ecological adaptational response by a group to its local environment, human-nature relations and the practical techniques on which these relationships and culture depended, the field of TEK could analyze a broad range of questions related to cultural ecology and ecological anthropology, .[10]

By the mid 1980s a growing body of literature on traditional ecological knowledge documented both the environmental knowledge held by diverse indigenous peoples and their ecological relations.[9] The studies included examining "cultivation and biodiversity conservation in tropical ecosystems, and traditional knowledge and management systems in coastal fisheries and lagoons, semi-arid areas, and the Arctic." What these studies illustrated was that a variety of "traditional peoples had their own understandings of ecological relationships and distinct traditions of resource management." [10] The rise of traditional ecological knowledge at this time led to international recognition of its potential applications in resource management practices and sustainable development. The 1987 report by the World Commission on Environment and Development reflects the consensus at the time. The report points out that the successes of the 20th century (decreases in infant mortality, increases in life expectancy, increases in literacy, and global food production) have given rise to trends that have caused environmental decay "in an ever more polluted world among ever decreasing resources."[11] Hope, however, existed for traditional lifestyles. The report declared that tribal and indigenous peoples had lifestyles that could provide modern societies with lessons in the management of resources in complex forest, mountain, and dryland ecosystems.

Differences from science
Fulvio Mazzocchi of the Italian National Research Council's Institute of Atmospheric Pollution contrasts traditional knowledge from scientific knowledge as follows:

Traditional knowledge has developed a concept of the environment that emphasizes the symbiotic character of humans and nature. It offers an approach to local development that is based on co‐evolution with the environment, and on respecting the carrying capacity of ecosystems. This knowledge-based on long‐term empirical observations adapted to local conditions—ensures a sound use and control of the environment, and enables indigenous people to adapt to environmental changes. Moreover, it supplies much of the world's population with the principal means to fulfil their basic needs, and forms the basis for decisions and strategies in many practical aspects, including interpretation of meteorological phenomena, medical treatment, water management, production of clothing, navigation, agriculture and husbandry, hunting and fishing, and biological classification systems.... Beyond its obvious benefit for the people who rely on this knowledge, it might provide humanity as a whole with new biological and ecological insights; it has potential value for the management of natural resources and might be useful in conservation education as well as in development planning and environmental assessment...Western science is positivist and materialist in contrast to traditional knowledge, which is spiritual and does not make distinctions between empirical and sacred. Western science is objective and quantitative as opposed to traditional knowledge, which is mainly subjective and qualitative. Western science is based on an academic and literate transmission, while traditional knowledge is often passed on orally from one generation to the next by the elders.[12]

Aspects of traditional ecological knowledge
The aspects of traditional ecological knowledge provide different typologies in how it is utilized and understood. These are good indicators in how it is used from different perspectives and how they are interconnected, providing more emphasis on "cooperative management to better identify areas of difference and convergence when attempting to bring two ways of thinking and knowing together."[13]

Factual observations
Houde identifies six faces of traditional ecological knowledge.[14] The first aspect of traditional ecological knowledge incorporates the factual, specific observations generated by recognition, naming, and classification of discrete components of the environment. This aspect is about understanding the interrelationship with species and their surrounding environment. It is also a set of both empirical observations and information emphasizing the aspects of animals and their behavior, and habitat, and the physical characteristics of species, and animal abundance. This is most useful for risk assessment and management which provides nations with opportunity to influence resource management. However, if a nation does not act, then the state may act on its own interests. This type of "empirical knowledge consists of a set of generalized observations conducted over a long period of time and reinforced by accounts of other TEK holders."[15]

Management systems
The second face refers to the ethical and sustainable use of resources in regards to management systems. This is achieved through strategic planning to ensure resource conservation. More specifically this face involves dealing with pest management, resource conversion, multiple cropping patterns, and methods for estimating the state of resources.[16] It also focuses on resource management and how it adapts to local environments.[14]

Past and current uses
The third face refers to the time dimension of TEK, focusing on past and current uses of the environment transmitted through oral history,[17] such as land use, settlement, occupancy, and harvest levels. Specifically medicinal plants and historical sites are great concerns.[14] Oral history is used to transmit cultural heritage generation to generation, and contributes to a sense of family and community.

Ethics and values
The fourth face refers to value statements and connections between the belief system and the organization of facts. In regards to TEK it refers to environmental ethics that keeps exploitative abilities in check. This face also refers to the expression of values concerning the relationship with the habitats of species and their surrounding environment - the human-relationship environment.

Culture and identity

Traditional Ecological Knowledge frequently relates to knowledge surrounding plants and foliage
The fifth face refers to the role of language and images of the past giving life to culture.[18] The relationship between Aboriginals (original inhabitants) and their environment is vital to sustaining the cultural components that define them. This face reflects the stories, values, and social relations that reside in places as contributing to the survival, reproduction, and evolution of aboriginal cultures, and identities. It also stresses "the restorative benefits of cultural landscapes as places for renewal"[19]

Cosmology
The sixth face is a culturally based cosmology that is the foundation of the other aspects. Cosmology is the notion of how the world works for many cultures. This can vary greatly from one culture to the next. In the U.S for example, there are over 577 federally recognized tribes with their own culture, languages and belief system. Many of these are interconnected with the land and astrology.(add cite) The combination relates to the assumptions and beliefs about how things work, and explains the way in which things are connected, and gives principles that regulate human-animal relations and the role of humans in the world. From an anthropological perspective, cosmology attempts to understand the human-animal relationship and how these directly influence social relationships, obligations toward community members, and management practices.

Ecosystem management
Main article: Ecosystem management

A great example of this is the Australian government giving back land to the Aboriginal people to practice their tradition of controlled fires. This made the areas more biologically diverse and decreased the threat of wildfires and their severity.
Ecosystem management is a multifaceted and holistic approach to natural resource management. It incorporates both science and traditional ecological knowledge to collect data from long term measures that science cannot. This is achieved by scientists and researchers collaborating with Indigenous peoples through a consensus decision-making process while meeting the socioeconomic, political and cultural needs of current and future generations. Indigenous knowledge has developed a way to deal with the complexity while western science has the techniques and tools. This is a good relationship to have which creates a better outcome for both sides and the environment. The dangers of working together is that nations do not benefit fairly or at all. Many times Indigenous knowledge has been used outside of the nation without consent (cultural appropriation), acknowledgment, or compensation. Indigenous knowledge can sustain the environment, yet it can be sacred knowledge. Therefore, we must be respectful of the traditions and their rights.

Ecological restoration
Ecological restoration is the practice of restoring a degraded ecosystem through human intervention. There are many links between ecological restoration and ecosystem management practices involving TEK, however TEK ecosystem management is much more in-depth through the historical relationship with the place.[20] Due to the aforementioned unequal power between indigenous and non-indigenous peoples, it is vital that partnerships are equitable to restore social injustices and this has proven to be successful when Indigenous Peoples lead ecological restoration projects.[21]

Traditional knowledge and the U.S. Environmental Protection Agency
‹ The template below (POV) is being considered for merging. See templates for discussion to help reach a consensus. ›
Unbalanced scales.svg
The neutrality of this section is disputed. Relevant discussion may be found on the talk page. Please do not remove this message until conditions to do so are met. (April 2017) (Learn how and when to remove this template message)
The U.S. Environmental Protection Agency was one of the first federal agencies to develop formal policies detailing how it would collaborate with tribal governments and acknowledge tribal interests in enacting its programs "to protect human health and the environment."[22] In recognizing tribal peoples connection to the environment the EPA has sought to develop environmental programs that integrate traditional ecological knowledge into the "agency's environmental science, policy, and decision-making processes."[23]

Although TEK is not currently recognized as an important component of mainstream environmental decision making, scientists are working on developing core science competency programs that align with TEK and promote self-sufficiency and determination.[24]

In November 2000, U.S. President Bill Clinton issued Executive Order 13175, which required federal departments and agencies to consult with Indian Tribal governments in the development of policies that would have Tribal implications.[25] Tribal Implications are defined by the EPA as having "substantial direct effects on one or more Indian tribes, on the relationship between the federal government and Indian tribes, or on the distribution of power and responsibilities between the federal government and Indian tribes."[26] As a Federal agency of the U.S. government, the EPA was required to establish a set of standards for the consultation process. As its initial response, the agency developed a set of standards that would allow for meaningful communication and coordination between the agency and tribal officials prior to the agency taking actions or implementing decisions that may affect tribes. The standards also designated EPA consultation contacts to promote consistency and coordination of the consultation process, and established management oversight and reporting to ensure accountability and transparency.

One form of consultation has been EPA Tribal Councils. In 2000, the EPA's Office of Research and Development formed the EPA Tribal Science Council. The council, made up of representatives from tribes across the nation, is meant to provide a structure for tribal involvement in EPA's science efforts, and serve as a vehicle through which EPA may gain an understanding of the scientific issues that are of highest priority to tribes at a national level. The Council also offers tribes an opportunity to influence EPA's scientific agenda by raising these priority issues to an EPA-wide group.[27]

Of importance for tribal members at the initial gathering of the EPA Tribal Science Council was the inherent differences in tribal traditional lifeways and western science. These lifeways include "spiritual, emotional, physical, and mental connections to the environment; connections which are based on intrinsic, immeasurable values"; and an understanding that the earth's resources will provide everything necessary for human survival.[25]

The EPA's Tribal Science Council, however, was meant to act as a meeting place where both groups could "share information that may contribute to environmental protection for all peoples with neither culture relinquishing its identity." In an effort to protect TTL the Council identified subsitence as a critical area for investigation. The EPA-Tribal Science Council defined subsistence as: the "relationships between people and their surrounding environment, a way of living. Subsistence involves an intrinsic spiritual connection to the earth, and includes an understanding that the earth’s resources will provide everything necessary for human survival. People who subsist from the earth’s basic resources remain connected to those resources, living within the circle of life. Subsistence is about living in a way that will ensure the integrity of the earth’s resources for the beneficial use of generations to come." Because TTL or TEK is specific to a location and includes the relationships between plants and animals, and the relationship of living beings to the environment, acknowledgment of subsitence as a priority allows for the knowledge and practices of TTL to be protected. For example, as part of their deliberation regarding subsistence, the Council agreed to identify resource contamination as “the most critical tribal science issue at this time.” Because tribal people with subsistence lifestyles rely the environment for traditional techniques of farming, hunting. fishing, forestry, and medicines, and ceremonies, contaminants disproportionately impact tribal peoples and jeopardizes their TTL. As the EPA Council stated, "Tribal subsistence consumption rates are typically many times higher than those of the general population, making the direct impact of resource contamination a much more immediate concern."[25] As native peoples struggle with tainted resources, the Council has made progress in investigating its impacts.

Despite such efforts, there are still barriers to progress within the EPA-Tribal Science Council. For example, one obstacle has been the nature of TTL. Tribal Traditional Lifeways are passed down orally, from person to person, generation to generation, whereas western science relies on the written word, communicated through academic and literate transmission.[25] Endeavors to bring together western scientists and tribal people have also been hindered by Native American's perceptions that scientific analysis are put in a metaphorical “black box” that shuts out tribal input. Regardless, the EPA has recognized the ability of indigenous knowledge to advance scientific understanding and provide new information and perspectives that may benefit the environment and human health.

The integration of TTL into the EPA's risk assessment paradigm is one example of how the EPA-Tribal Science Council has been able to enact change in EPA culture. The risk assessment paradigm is an "organizing framework for the scientific analysis of the potential for harmful impacts to human health and the environment as a result of exposure to contaminants or other environmental stressors." Risk assessment has been used by the EPA to establish "clean-up levels at hazardous waste sites, water quality and air quality criteria, fish advisories, and bans or restricted uses for pesticides and other toxic chemicals."[24] Tribal people are concerned, however, that current risk assessment methodologies do not afford complete value to tribal culture, values, and/or life ways. The Tribal Science Council seeks to incorporate TTL into exposure assumptions existent in the EPA risk assessment model. A long-term goal for the EPA's Tribal Science Council, however, is a complete shift in decision-making assessments from risk to preserving a healthy people and environment. As stated above, tribal people do not accept a separation of the human and ecological condition when they characterize risk. Through EPA initiated seminar, workshops, and projects, tribes have been able to engage in dialogue about the integration of Tribal Traditional Lifeways into EPA risk assessment and decision-making. This has occurred in a number of ways: inclusion of unique tribal cultural activities such as native basketry, the importance of salmon and other fishes, native plant medicine, consumption of large amounts of fish and game, and sweat lodges as exposures for estimating potential risk to people or to communities. Although these types of tribal specific activities may be included in EPA's risk assessment, there is no assurance that they will be included nor is there consistency in how they may be applied at different sites across the country.[24]

In July 2014, the EPA announced its “Policy on Environmental Justice for Working with Federally Recognized Tribes and Indigenous Peoples," setting forth its principles for programs related to federally recognized tribes and indigenous peoples in order to "support the fair and effective implementation of federal environmental laws, and provide protection from disproportionate impacts and significant risks to human health and the environment."[28] Among the 17 principles were #3 ("The EPA works to understand definitions of human health and the environment from the perspective of federally recognized tribes, indigenous peoples throughout the United States, and others living in Indian country"); #6 ("The EPA encourages, as appropriate and to the extent practicable and permitted by law, the integration of traditional ecological knowledge into the agency’s environmental science, policy, and decision-making processes, to understand and address environmental justice concerns and facilitate program implementation"); and #7 ("The EPA considers confidentiality concerns regarding information on sacred sites, cultural resources, and other traditional knowledge, as permitted by law.").[29] While this policy identifies guidelines and procedures for the EPA in regards to environmental justice principles as they relate to tribes and indigenous peoples, the agency noted that they are in no way applicable as rules or regulations. They cannot be applied to particular situations nor change or substitute any law, regulation, or any other legally-binding requirement and is not legally enforceable.[28]

Effects of environmental degradation on traditional knowledge
In some areas, environmental degradation has led to a decline in traditional ecological knowledge. For example, at the Aamjiwnaang community of Anishnaabe First Nations people in Sarnia, Ontario, Canada, residents suffer from a "noticeable decrease in male birth ratio ..., which residents attribute to their proximity to petrochemical plants":[30]

In addition to concerns about the physical reproduction of community members, indigenous people are concerned about how environmental contamination impacts the reproduction of cultural knowledge. In Aamjiwnaang, oral traditions once passed down from grandfathers during fishing or grandmothers during berry picking and medicine gathering are being lost as those activities are no longer practiced because of concerns about these foods being contaminated. Rocks once used for sweat lodges are no longer being collected from local streams because the streams have become contaminated. The cedar used for making tea, smudging, and washing babies contains vanadium at concentrations as high as 6 mg/kg..., reflecting local releases to air of > 611 tons of vanadium between 2001 and 2010.... At Akwesasne, community members report a loss of language and culture around subsistence activities like fishing, which have been largely abandoned because of fears of exposure to contaminants.[30]

Climate change

Indigenous people and Climate Change: fact sheet about the health impacts of climate change on indigenous populations.
Traditional ecological knowledge provides information about climate change across generations and geography of the actual residents in the area.[31] Traditional ecological knowledge emphasizes and makes the information about the health and interactions of the environment the center of the information it carries.[32] Climate change affects traditional ecological knowledge in the forms of the indigenous people's identity and the way they live their lives. Traditional knowledge is passed down from generation to generation and continues today. Indigenous people depend on these traditions for their livelihood. For many harvesting seasons, indigenous people have shifted their activity months earlier due to impacts from climate change.

The rising temperature poses as threats for ecosystems because it harms the livelihoods of certain tree and plant species. The combination of the rise in temperatures and change in precipitation levels affects plant growth locations.[33] Climate change has wiped out much of the salmonids and acorns which make up a significant portion of the Karuk people's food. The increase in temperatures has stunted the wild rice's ability to grow and that has a negative influence on the Anishinaabe people's lifestyle.[34] The Ojibwe people are also affected by the rising temperature's effect on rice growth.[35]

The warming also affects insects and animals. The change in temperatures can affect many aspects from the times that insects emerge throughout the year to the changes in the habitats of animals throughout seasonal changes. In Maine, the loss of certain habitats and the increase in temperatures, especially in the colder seasons, encourages the survival of ticks that harm the moose population.[34]

As the temperature gets hotter, wild fires become more likely. One Indigenous nation in Australia was recently given back land as are running it as park rangers to start their own controlled fires as was their tradition. Doing this there was better biodiversity and wildfires are less severe and less common due to this tradition. Not only are different aspects of the environment affected, but together, the health of the ecosystem is affected by climate change and so the environmental resources available to the indigenous people can change in the amount available and the quality of the resources.[34]

The Navajo Nation peoples in the Southwestern United States are victims to the pollution in the air. Climate change increases chances for droughts which lead to the dangers of airborne dust to be picked up from the ground.[35]

Water resources are also affected. In particular, about a third of the Navajo Nation people need to physically attain their own water. Damage to their water resources poses as dangers to overall health and crop failures. In Arizona, the Fort Apache reservation's children are victims to the rising temperatures in their water which allows more impurities to grow in the water and causes them to have diarrhea and stomach problems.[35]

As sea ice levels decrease, Alaska Native peoples experience changes in their daily lives; fishing, transportation, social and economic aspects of their lives become more unsafe. The Native peoples residing on the Gulf and West Coasts are affected by the rising sea temperatures because that makes the fish and shellfish, that they rely on for food and cultural activities, more susceptible to contamination.[35] The defrosting of soil has caused damages to buildings and roadways. Water contamination becomes exacerbated as clean water resources dwindle.[34]

Climate changes undermine the daily lives of the Native peoples on many levels. Climate change and indigenous people have a varying relationship depending on the geographic region which require different adaption and mitigation actions. For example, to immediately deal with these conditions, the indigenous people adjust when they harvest and what they harvest and also adjust their resource use. Climate change can change the accuracy of the information of traditional ecological knowledge. The indigenous people have relied deeply on indicators in nature to plan activities and even for short- term weather predictions.[36] As a result of even more increasing unfavorable conditions, the indigenous people relocate to find other ways to survive. As a result, there is a loss of cultural ties to the lands they once resided on and there is also a loss to the traditional ecological knowledge they had with the land there.[34] Climate change adaptations not properly structured or implemented can harm the indigenous people's rights.[37]

The EPA has mentioned that it would take traditional ecological knowledge into consideration in planning adaptations to climate change. The National Resource Conservation Service of the United States Department of Agriculture has used methods of the indigenous people to combat climate change conditions.[32]

Case Study: Savoonga and Shaktoolik, Alaska
In one study, villagers of Savoonga and Shaktoolik, Alaska reported that over the last twenty years of their lives, the weather has become more difficult to predict, the colder season has shortened, there is more difficulty in predicting the amount of plants available for harvests, there are differences in animal migrations, there are more sightings of new species than before, and the activities of hunting and gathering have become not as predictable nor occur as often due to more limited availability to do so. The residents saw a noticeable change in their climate which also affected their livelihoods. The plants and animals are not as consistent with their availability which affects the residents' hunting and gathering because there is not as much to hunt or gather. The appearance of new species of plants and animals is also a physical and nutritional safety concern because they are not traditionally part of the land.[31]

See also
Agroecology
Braiding Sweetgrass
Traditional knowledge
African Insect TEK








Entheogen
https://en.wikipedia.org/wiki/Entheogen
This article is about psychoactive substances in a spiritual context. For general information about them, see psychoactive drug and hallucinogen. For the acceptance of entheogens in religions, see Religion and drugs. For the musical group, see Entheogenic (band).
Not to be confused with Ethnogenesis.

This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
This article includes a list of general references, but it remains largely unverified because it lacks sufficient corresponding inline citations. (November 2019)
This article possibly contains original research. (March 2020)

Mazatec people performing a Salvia ritual dance in Huautla de Jiménez
An entheogen is a psychoactive substance that induces alterations in perception, mood, consciousness, cognition, or behavior[1] for the purposes of engendering spiritual development or otherwise[2] in sacred contexts.[3][4] Anthropological study has established that entheogens are used for religious, magical, shamanic, or spiritual purposes in many parts of the world. Entheogens have traditionally been used to supplement many diverse practices geared towards achieving transcendence, including divination, meditation, yoga, sensory deprivation, asceticism, prayer, trance, rituals, chanting, hymns like peyote songs, drumming, and ecstatic dance.[citation needed] The psychedelic experience is often compared to non-ordinary forms of consciousness such as those experienced in meditation,[5] near-death experiences,[6] and mystical experiences.[7] Ego dissolution is often described as a key feature of the psychedelic experience.[8]


Contents
1	Nomenclature
2	History
3	Uses and purpose
4	Types of entheogens
5	By religion
5.1	Judaism and Christianity
5.2	Buddhism
5.3	New religious movements
5.3.1	Peyotism
5.3.2	Santo Daime
5.3.3	União do Vegetal
5.3.4	Others
6	By region
6.1	Africa
6.2	Americas
6.3	Asia
6.4	Europe
6.5	Middle East
6.5.1	Assassins legends
6.6	Oceania
7	Research
8	Legal status
8.1	United Nations
8.2	By country
8.2.1	Australia
8.2.2	United States
8.2.2.1	Religious discrimination
9	In literature
10	See also
11	References
12	Further reading
13	External links
Nomenclature

Brugmansia suaveolens, one of a group of species referred to as 'Angel's trumpets'. Brugmansia plants are rich in the chemical compound scopolamine, an example of an entheogen. Brugmansia has been cultivated by native tribes in South America for this reason.
The neologism entheogen was coined in 1979 by a group of ethnobotanists and scholars of mythology (Carl A. P. Ruck, Jeremy Bigwood, Danny Staples, Richard Evans Schultes, Jonathan Ott and R. Gordon Wasson). The term is derived from two words of Ancient Greek, ἔνθεος (éntheos) and γενέσθαι (genésthai). The adjective entheos translates to English as "full of the god, inspired, possessed", and is the root of the English word "enthusiasm". The Greeks used it as a term of praise for poets and other artists. Genesthai means "to come into being." Thus, an entheogen is a drug that causes one to become inspired or to experience feelings of inspiration, often in a religious or "spiritual" manner.[9]

Entheogen was coined as a replacement for the terms hallucinogen and psychedelic. Hallucinogen was popularized by Aldous Huxley's experiences with mescaline, which were published as The Doors of Perception in 1954. Psychedelic, in contrast, is a Greek neologism for "mind manifest", and was coined by psychiatrist Humphry Osmond; Huxley was a volunteer in experiments Osmond was conducting on mescaline.

Ruck et al. argued that the term hallucinogen was inappropriate owing to its etymological relationship to words relating to delirium and insanity. The term psychedelic was also seen as problematic, owing to the similarity in sound to words pertaining to psychosis and also due to the fact that it had become irreversibly associated with various connotations of 1960s pop culture. In modern usage entheogen may be used synonymously with these terms, or it may be chosen to contrast with recreational use of the same drugs. The meanings of the term entheogen were formally defined by Ruck et al.:

In a strict sense, only those vision-producing drugs that can be shown to have figured in shamanic or religious rites would be designated entheogens, but in a looser sense, the term could also be applied to other drugs, both natural and artificial, that induce alterations of consciousness similar to those documented for ritual ingestion of traditional entheogens.

— Ruck et al, 1979, Journal of Psychedelic Drugs[10]
History
See also: Entheogenic drugs and the archaeological record

Laboratory synthetic mescaline. Mescaline was the first (1887) psychedelic compound to be extracted and isolated from nature (from peyote).[11]
text
Flowering San Pedro, an entheogenic cactus that has been used for over 3,000 years.[12] Today the vast majority of extracted mescaline is from columnar cacti, not vulnerable peyote.[13]
Entheogens have been used by indigenous peoples for thousands of years.[14]

R. Gordon Wasson and Giorgio Samorini have proposed several examples of the cultural use of entheogens that are found in the archaeological record.[15][16] Hemp seeds discovered by archaeologists at Pazyryk suggest early ceremonial practices by the Scythians occurred during the 5th to 2nd century BCE, confirming previous historical reports by Herodotus.[17]

Most of the well-known modern examples of entheogens, such as Ayahuasca, peyote, psilocybin mushrooms, and morning glories are from the native cultures of the Americas. However, it has also been suggested that entheogens played an important role in ancient Indo-European culture, for example by inclusion in the ritual preparations of the Soma, the "pressed juice" that is the subject of Book 9 of the Rigveda. Soma was ritually prepared and drunk by priests and initiates and elicited a paean in the Rigveda that embodies the nature of an entheogen:[citation needed]

Splendid by Law! declaring Law, truth speaking, truthful in thy works, Enouncing faith, King Soma!... O [Soma] Pavāmana (mind clarifying), place me in that deathless, undecaying world wherein the light of heaven is set, and everlasting lustre shines.... Make me immortal in that realm where happiness and transports, where joy and felicities combine...

The kykeon that preceded initiation into the Eleusinian Mysteries is another entheogen, which was investigated (before the word was coined) by Carl Kerényi, in Eleusis: Archetypal Image of Mother and Daughter. Other entheogens in the Ancient Near East and the Aegean include the opium poppy, datura, and the unidentified "lotus" (likely the sacred blue lily) eaten by the Lotus-Eaters in the Odyssey and Narcissus.

According to Ruck, Eyan, and Staples, the familiar shamanic entheogen that the Indo-Europeans brought knowledge of was Amanita muscaria. It could not be cultivated; thus it had to be found, which suited it to a nomadic lifestyle. When they reached the world of the Caucasus and the Aegean, the Indo-Europeans encountered wine, the entheogen of Dionysus, who brought it with him from his birthplace in the mythical Nysa, when he returned to claim his Olympian birthright. The Indo-European proto-Greeks "recognized it as the entheogen of Zeus, and their own traditions of shamanism, the Amanita and the 'pressed juice' of Soma – but better, since no longer unpredictable and wild, the way it was found among the Hyperboreans: as befit their own assimilation of agrarian modes of life, the entheogen was now cultivable."[18] Robert Graves, in his foreword to The Greek Myths, hypothesises that the ambrosia of various pre-Hellenic tribes was Amanita muscaria (which, based on the morphological similarity of the words amanita, amrita and ambrosia, is entirely plausible) and perhaps psilocybin mushrooms of the genus Panaeolus. Amanita muscaria was regarded as divine food, according to Ruck and Staples, not something to be indulged in, sampled lightly, or profaned. It was seen as the food of the gods, their ambrosia, and as mediating between the two realms. It is said that Tantalus's crime was inviting commoners to share his ambrosia.

Uses and purpose
See also: Plastic shaman

2C-B is an entactogen commonly used at public places, like rave parties.
Entheogens have been used by individuals to pursue spiritual goals such as divination, ego death, egolessness, faith healing, psychedelic therapy and spiritual formation. Entheogens have been used in various ways, e.g., as part of established religious rituals, as aids for personal spiritual development ("plant teachers"),[19][20] as recreational drugs, and for medical and therapeutic use.

There are also instances where people have been given entheogens without their knowledge or consent (e.g., tourists in ayahuasca),[21] as well as attempts to use such drugs in other contexts, such as cursing.[citation needed] In some areas, there are purported malevolent sorcerers who masquerade as real shamans and who entice tourists to drink ayahuasca in their presence. Shamans believe one of the purposes for this is to steal one's energy, power, or both, of which they believe every person has a limited stockpile.[22]

Types of entheogens
Naturally occurring entheogens such as psilocybin and DMT (in the preparation ayahuasca), were, for the most part, discovered and used by older cultures, as part of their spiritual and religious life, as plants and agents that were respected, or in some cases revered for generations and may be a tradition that predates all modern religions as a sort of proto-religious rite.

One of the most widely used entheogens is cannabis. The entheogenic use of cannabis has been documented in regions such as China, Europe, and India, in some cases for thousands of years. It has also appeared as a part of religions and cultures such as the Rastafari movement, the Sadhus of Hinduism, the Scythians, Sufi Islam, and others.

Entheogens used in the contemporary world include biota like peyote (Native American Church[23]), extracts like ayahuasca (Santo Daime,[24] União do Vegetal[25]), the semi-synthetic drug LSD (Neo-American Church), and synthetic drugs like DPT (Temple of the True Inner Light) and 2C-B (Sangoma[26]).

By religion
See also: Religion and drugs
Judaism and Christianity
Many Christian denominations disapprove of the use of most illicit drugs. Nevertheless, scholars such as David Hillman suggest that a variety of drug use, recreational and otherwise, is to be found in the early history of the Church.[27]

Polish anthropologist Sara Benetowa (also known as Sula Benet) argued that cannabis had been used in early Judaism, claiming in 1967 that the plant kaneh bosem (Hebrew: קְנֵה-בֹשֶׂם) – mentioned five times in the Hebrew Bible, and used in the holy anointing oil of the Book of Exodus – was in fact cannabis.[28] The Ethiopian Zion Coptic Church confirmed it as a possible valid interpretation.[29] The lexicons of Hebrew and dictionaries of plants of the Bible such as by Michael Zohary (1985), Hans Arne Jensen (2004) and James A. Duke (2010) and others identify the plant in question as either Acorus calamus or Cymbopogon citratus.[30] Kneh-bossem is listed as an incense in the Old Testament.

Rabbi Zalman Schachter-Shalomi (founder of Jewish Renewal) and Richard Alpert (later known as Ram Dass) were influential early Jewish explorers of the connections between hallucinogenics and spirituality, from the early 1960s onwards.[citations needed]

It is generally held by academics specializing in the archaeology and paleobotany of Ancient Israel, and those specializing in the lexicography of the Hebrew Bible that cannabis is not documented or mentioned in early Judaism. Against this some popular writers have argued that there is evidence for religious use of cannabis in the Hebrew Bible,[31][32] although this hypothesis and some of the specific case studies (e.g., John Allegro in relation to Qumran, 1970) have been "widely dismissed as erroneous[;] others continue".[33]

According to The Living Torah, cannabis may have been one of the ingredients of the holy anointing oil mentioned in various sacred Hebrew texts.[34] The herb of interest is most commonly known as kaneh-bosm (Hebrew: קְנֵה-בֹשֶׂם). This is mentioned several times in the Old Testament as a bartering material, incense, and an ingredient in holy anointing oil used by the high priest of the temple. Although Chris Bennett's research in this area focuses on cannabis, he mentions evidence suggesting use of additional visionary plants such as henbane, as well.[35]

The Septuagint translates kaneh-bosm as calamus, and this translation has been propagated unchanged to most later translations of the old testament. However, Polish anthropologist Sula Benet published etymological arguments that the Aramaic word for hemp can be read as kannabos and appears to be a cognate to the modern word 'cannabis',[36] with the root kan meaning reed or hemp and bosm meaning fragrant. Both cannabis and calamus are fragrant, reedlike plants containing psychotropic compounds.

In his research, Professor Dan Merkur points to significant evidence of an awareness within the Jewish mystical tradition recognizing manna as an entheogen, thereby substantiating with rabbinic texts theories advanced by the superficial biblical interpretations of Terence McKenna, R. Gordon Wasson and other ethnomycologists.

The historical picture portrayed by the Entheos journal is of fairly widespread use of visionary plants in early Christianity and the surrounding culture, with a gradual reduction of use of entheogens in Christianity.[37] R. Gordon Wasson's book Soma prints a letter from art historian Erwin Panofsky asserting that art scholars are aware of many "mushroom trees" in Christian art.[38]

The question of the extent of visionary plant use throughout the history of Christian practice has barely been considered yet by academic or independent scholars. The question of whether visionary plants were used in pre-Theodosian Christianity is distinct from evidence that indicates the extent to which visionary plants were utilized or forgotten in later Christianity, including heretical or quasi-Christian groups,[39] and the question of other groups such as elites or laity within orthodox Catholic practice.[40]

Buddhism
The fifth of the Pancasila, the ethical code in the Theravada and Mahayana Buddhist traditions, states that adherents must: "abstain from fermented and distilled beverages that cause heedlessness".[41] The Pali Canon, the scripture of Theravada Buddhism, depicts refraining from alcohol as essential to moral conduct because intoxication causes a loss of mindfulness. Although the Fifth Precept only names a specific wine and cider, this has traditionally been interpreted to mean all alcoholic beverages. Technically, this prohibition does not include light to moderate drinking, only drinking to the point of drunkenness. It also does not include other mind-altering drugs, but Buddhist tradition includes all intoxicants. The Pali Canon does not suggest that alcohol is evil but believes that the carelessness produced by intoxication creates bad karma. Therefore, any drug (beyond tea or mild coffee) that affects one's mindfulness could be considered by some to be covered by this prohibition.[citation needed]

It has been suggested that the Amanita muscaria mushroom was used by the Tantric Buddhist mahasiddha tradition of the 8th to 12th century.[42]

In the West, some[who?] modern Buddhist teachers have written on the usefulness of psychedelics. The Buddhist magazine Tricycle devoted their entire fall 1996 edition to this issue.[43] Some teachers such as Jack Kornfield have suggested the possibility that psychedelics could complement Buddhist practice, bring healing and help people understand their connection with everything which could lead to compassion.[44] Kornfield warns however that addiction can still be a hindrance. Other teachers such as Michelle McDonald-Smith expressed views which saw entheogens as not conducive to Buddhist practice ("I don't see them developing anything").[45]

New religious movements
Peyotism

A Native American peyote drummer (c. 1927)
The Native American Church (NAC) is also known as Peyotism and Peyote Religion. Peyotism is a Native American religion characterized by mixed traditional as well as Protestant beliefs and by sacramental use of the entheogen peyote.

The Peyote Way Church of God believe that "Peyote is a holy sacrament, when taken according to our sacramental procedure and combined with a holistic lifestyle".[46]

Santo Daime
Santo Daime is a syncretic religion founded in the 1930s in the Brazilian Amazonian state of Acre by Raimundo Irineu Serra,[47] known as Mestre Irineu. Santo Daime incorporates elements of several religious or spiritual traditions including Folk Catholicism, Kardecist Spiritism, African animism and indigenous South American shamanism, including vegetalismo.

Ceremonies – trabalhos (Brazilian Portuguese for "works") – are typically several hours long and are undertaken sitting in silent "concentration", or sung collectively, dancing according to simple steps in geometrical formation. Ayahuasca, referred to as Daime within the practice, which contains several psychoactive compounds, is drunk as part of the ceremony. The drinking of Daime can induce a strong emetic effect which is embraced as both emotional and physical purging.

Santo Daime churches promote a wholesome lifestyle in conformity with Irineu's motto of "harmony, love, truth and justice", as well as other key doctrinal values such as strength, humility, fraternity and purity of heart. The practice became a worldwide movement in the 1990s.[tone][citations needed]

União do Vegetal
União do Vegetal (UDV) is a religious society founded on July 22, 1961 by José Gabriel da Costa, known as Mestre Gabriel. The translation of União do Vegetal is Union of the Plants referring to the sacrament of the UDV, Hoasca tea (also known as ayahuasca). This beverage is made by boiling two plants, Mariri (Banisteriopsis caapi) and Chacrona (Psychotria viridis), both of which are native to the Amazon rainforest.

In its sessions, UDV members drink Hoasca Tea for the effect of mental concentration. In Brazil, the use of Hoasca in religious rituals was regulated by the Brazilian Federal Government's National Drug Policy Council on January 25, 2010. The policy established legal norms for the religious institutions that responsibly use this tea. The Supreme Court of the United States unanimously affirmed the UDV's right to use Hoasca tea in its religious sessions in the United States, in a decision published on February 21, 2006.

Others
Entheogens also play an important role in contemporary religious movements such as the Rastafari movement and the Church of the Universe.

By region
Africa
The best-known entheogen-using culture of Africa is the Bwitists, who used a preparation of the root bark of Tabernanthe iboga.[48] Although the ancient Egyptians may have been using the sacred blue lily plant in some of their religious rituals or just symbolically, it has been suggested that Egyptian religion once revolved around the ritualistic ingestion of the far more psychoactive Psilocybe cubensis mushroom, and that the Egyptian White Crown, Triple Crown, and Atef Crown were evidently designed to represent pin-stages of this mushroom.[49] There is also evidence for the use of psilocybin mushrooms in Ivory Coast.[50] Numerous other plants used in shamanic ritual in Africa, such as Silene capensis sacred to the Xhosa, are yet to be investigated by western science. A recent revitalization has occurred in the study of southern African psychoactives and entheogens (Mitchell and Hudson 2004; Sobiecki 2002, 2008, 2012).[51]

Among the amaXhosa, the artificial drug 2C-B is used as entheogen by traditional healers or amagqirha over their traditional plants; they refer to the chemical as Ubulawu Nomathotholo, which roughly translates to "Medicine of the Singing Ancestors".[52][53][54]

Americas
See also: Aztec use of entheogens and Entheogenics and the Maya
Three short green plants in a pot filled with soil. There are many oval-shaped green leaves and no flowers.
Salvia divinorum (Herba de Maria)
Entheogens have played a pivotal role in the spiritual practices of most American cultures for millennia. The first American entheogen to be subject to scientific analysis was the peyote cactus (Lophophora williamsii). One of the founders of modern ethno-botany, Richard Evans Schultes of Harvard University documented the ritual use of peyote cactus among the Kiowa, who live in what became Oklahoma. While it was used traditionally by many cultures of what is now Mexico, in the 19th century its use spread throughout North America, replacing the toxic mescal bean (Calia secundiflora). Other well-known entheogens used by Mexican cultures include the alcoholic Aztec sacrament, pulque, ritual tobacco (known as 'picietl' to the Aztecs, and 'sikar' to the Maya (from where the word 'cigar' derives)), psilocybin mushrooms, morning glories (Ipomoea tricolor and Turbina corymbosa), and Salvia divinorum.

Datura wrightii is sacred to some Native Americans and has been used in ceremonies and rites of passage by Chumash, Tongva, and others. Among the Chumash, when a boy was 8 years old, his mother would give him a preparation of momoy to drink. This supposed spiritual challenge should help the boy develop the spiritual wellbeing that is required to become a man. Not all of the boys undergoing this ritual survived.[55] Momoy was also used to enhance spiritual wellbeing among adults. For instance, during a frightening situation, such as when seeing a coyote walk like a man, a leaf of momoy was sucked to help keep the soul in the body.

Asia
The indigenous peoples of Siberia (from whom the term shaman was borrowed) have used Amanita muscaria as an entheogen.

In Hinduism, Datura stramonium and cannabis have been used in religious ceremonies, although the religious use of datura is not very common, as the primary alkaloids are strong deliriants, which causes serious intoxication with unpredictable effects.

Also, the ancient drink Soma, mentioned often in the Vedas, appears to be consistent with the effects of an entheogen. In his 1967 book, Wasson argues that Soma was Amanita muscaria. The active ingredient of Soma is presumed by some to be ephedrine, an alkaloid with stimulant properties derived from the soma plant, identified as Ephedra pachyclada. However, there are also arguments to suggest that Soma could have also been Syrian rue, cannabis, Atropa belladonna, or some combination of any of the above plants.[citation needed]

Europe
Fermented honey, known in Northern Europe as mead, was an early entheogen in Aegean civilization, predating the introduction of wine, which was the more familiar entheogen of the reborn Dionysus and the maenads. Its religious uses in the Aegean world are bound up[colloquialism] with the mythology of the bee.

Dacians were known to use cannabis in their religious and important life ceremonies, proven by discoveries of large clay pots with burnt cannabis seeds in ancient tombs and religious shrines. Also, local oral folklore and myths tell of ancient priests that dreamed with gods and walked in the smoke. Their names, as transmitted by Herodotus, were "kap-no-batai" which in Dacian was supposed to mean "the ones that walk in the clouds".

The growth of Roman Christianity also saw the end of the two-thousand-year-old tradition of the Eleusinian Mysteries, the initiation ceremony for the cult of Demeter and Persephone involving the use of a drug known as kykeon. The term 'ambrosia' is used in Greek mythology in a way that is remarkably similar to the Soma of the Hindus as well.

A theory that naturally-occurring gases like ethylene used by inhalation may have played a role in divinatory ceremonies at Delphi in Classical Greece received popular press attention in the early 2000s, yet has not been conclusively proven.[56]

Mushroom consumption is part of the culture of Europeans in general, with particular importance to Slavic and Baltic peoples. Some academics consider that using psilocybin- and or muscimol-containing mushrooms was an integral part of the ancient culture of the Rus' people.[57]

Middle East
It has been suggested that the ritual use of small amounts of Syrian rue[by whom?] is an artifact of its ancient use in higher doses as an entheogen (possibly in conjunction with DMT-containing acacia).[citation needed]

John Marco Allegro argued that early Jewish and Christian cultic practice was based on the use of Amanita muscaria, which was later forgotten by its adherents,[58] but this view has been widely disputed.[59]

Assassins legends
Main article: Hashshashins § Legends and folklore
See also: History of Nizari Ismailism
The legends of the Assassins had much to do with the training and instruction of Nizari fida'is, famed for their public missions during which they often gave their lives to eliminate adversaries.

The tales of the fida'is' training collected from anti-Ismaili historians and orientalists writers were confounded and compiled in Marco Polo's account, in which he described a "secret garden of paradise".[citation needed] After being drugged, the Ismaili devotees were said to be taken to a paradise-like garden filled with attractive young maidens and beautiful plants in which these fida'is would awaken. Here, they were told by an old man that they were witnessing their place in Paradise and that should they wish to return to this garden permanently, they must serve the Nizari cause.[60] So went the tale of the "Old Man in the Mountain", assembled by Marco Polo and accepted by Joseph von Hammer-Purgstall (1774–1856), a prominent orientalist writer responsible for much of the spread of this legend. Until the 1930s, von Hammer's retelling of the Assassin legends served as the standard account of the Nizaris across Europe.[citation needed]

Oceania
In general, indigenous Australians are thought not to have used entheogens, although there is a strong barrier of secrecy surrounding Aboriginal shamanism, which has likely limited what has been told to outsiders. A plant that the Australian Aboriginals used to ingest is called Pitcheri, which is said to have a similar effect to that of coca. Pitcheri was made from the bark of the shrub Duboisia myoporoides. This plant is now grown commercially and is processed to manufacture an eye medication.

There are no known uses of entheogens by the Māori of New Zealand aside from a variant species of kava,[61] although some modern scholars have claimed that there may be evidence of psilocybin mushroom use.[62] Natives of Papua New Guinea are known to use several species of entheogenic mushrooms (Psilocybe spp, Boletus manicus).[63]

Kava or kava kava (Piper Methysticum) has been cultivated for at least 3,000 years by a number of Pacific island-dwelling peoples. Historically, most Polynesian, many Melanesian, and some Micronesian cultures have ingested the psychoactive pulverized root, typically taking it mixed with water. In these traditions, taking kava is believed to facilitate contact with the spirits of the dead, especially relatives and ancestors.[64]

Research

Mandala-like round window above the altar at Boston University's Marsh Chapel, site of Marsh Chapel Experiment
Notable early testing of the entheogenic experience includes the Marsh Chapel Experiment, conducted by physician and theology doctoral candidate Walter Pahnke under the supervision of psychologist Timothy Leary and the Harvard Psilocybin Project. In this double-blind experiment, volunteer graduate school divinity students from the Boston area almost all claimed to have had profound religious experiences subsequent to the ingestion of pure psilocybin.[citation needed]

Beginning in 2006, experiments have been conducted at Johns Hopkins University, showing that under controlled conditions psilocybin causes mystical experiences in most participants and that they rank the personal and spiritual meaningfulness of the experiences very highly.[65][66]

Except in Mexico, research with psychedelics is limited due to ongoing widespread drug prohibition. The amount of peer-reviewed research on psychedelics has accordingly been limited due to the difficulty of getting approval from institutional review boards.[67] Furthermore, scientific studies on entheogens present some significant challenges to investigators, including philosophical questions relating to ontology, epistemology and objectivity.[68]

Legal status
United Nations
Article 32 of the Convention on Psychotropic Substances allows nations to exempt certain traditional uses of substances from prohibition:

A State on whose territory there are plants growing wild which contain psychotropic substances from among those in Schedule I and which are traditionally used by certain small, clearly determined groups in magical or religious rites, may, at the time of signature, ratification or accession, make reservations concerning these plants, in respect of the provisions of article 7, except for the provisions relating to international trade.

However, this exemption would apply only if the plant were ever explicitly added to the Schedules of the Psychotropic Convention. Currently the Convention applies only to chemicals. The Commentary on the Convention on Psychotropic Substances notes, however, that the plants containing it are not subject to international control:[69]

The cultivation of plants from which psychotropic substances are obtained is not controlled by the Vienna Convention .... Neither the crown (fruit, mescal button) of the Peyote cactus nor the roots of the plant Mimosa hostilis nor Psilocybe mushrooms themselves are included in Schedule 1, but only their respective principals, mescaline, DMT, and psilocin.

No plants (natural materials) containing DMT are at present controlled under the 1971 Convention on Psychotropic Substances. Consequently, preparations (e.g. decoctions) made of these plants, including ayahuasca are not under international control and, therefore, not subject to any of the articles of the 1971 Convention.

— International Narcotics Control Board (INCB), United Nations[70]
By country
Some countries have legislation that allows for traditional entheogen use.[citation needed]

Australia
Main article: Dimethyltryptamine § Australia
Between 2011 and 2012, the Australian Federal Government was considering changes to the Australian Criminal Code that would classify any plants containing any amount of DMT as "controlled plants".[71] DMT itself was already controlled under current laws. The proposed changes included other similar blanket bans for other substances, such as a ban on any and all plants containing mescaline or ephedrine. The proposal was not pursued after political embarrassment on realisation that this would make the official Floral Emblem of Australia, Acacia pycnantha (golden wattle), illegal. The Therapeutic Goods Administration and federal authority had considered a motion to ban the same, but this was withdrawn in May 2012 (as DMT may still hold potential entheogenic value to native or religious peoples).[72]

United States
In 1963 in Sherbert v. Verner the Supreme Court established the Sherbert Test, which consists of four criteria that are used to determine if an individual's right to religious free exercise has been violated by the government. The test is as follows:

For the individual, the court must determine

whether the person has a claim involving a sincere religious belief, and
whether the government action is a substantial burden on the person's ability to act on that belief.
If these two elements are established, then the government must prove

that it is acting in furtherance of a "compelling state interest", and
that it has pursued that interest in the manner least restrictive, or least burdensome, to religion.
This test was eventually all-but-eliminated in Employment Division v. Smith 494 U.S. 872 (1990) which held that a "neutral law of general applicability" was not subject to the test. Congress resurrected it for the purposes of federal law in the federal Religious Freedom Restoration Act (RFRA) of 1993.

In City of Boerne v. Flores, 521 U.S. 507 (1997) RFRA was held to trespass on state sovereignty, and application of the RFRA was essentially limited to federal law enforcement. In Gonzales v. O Centro Espírita Beneficente União do Vegetal, 546 U.S. 418 (2006), a case involving only federal law, RFRA was held to permit a church's use of a DMT-containing tea for religious ceremonies.

Some states have enacted State Religious Freedom Restoration Acts intended to mirror the federal RFRA's protections.

Religious discrimination
Peyote is listed by the United States DEA as a Schedule I controlled substance. However, practitioners of the Peyote Way Church of God, a Native American religion, perceive the regulations regarding the use of peyote as discriminating, leading to religious discrimination issues regarding about the U.S. policy towards drugs. As the result of Peyote Way Church of God, Inc. v. Thornburgh the American Indian Religious Freedom Act of 1978 was passed. This federal statute allow the "Traditional Indian religious use of the peyote sacrament", exempting only use by Native American persons.

In literature
Many works of literature have described entheogen use; some of those are:

The drug melange (spice) in Frank Herbert's Dune universe acts as both an entheogen (in large enough quantities) and an addictive geriatric medicine. Control of the supply of melange was crucial to the Empire, as it was necessary for, among other things, faster-than-light (folding space) navigation.[citation needed]
Consumption of the imaginary mushroom anochi [enoki] as the entheogen underlying the creation of Christianity is the premise of Philip K. Dick's last novel, The Transmigration of Timothy Archer, a theme that seems to be inspired by John Allegro's book.[citation needed]
Aldous Huxley's final novel, Island (1962), depicted a fictional psychoactive mushroom – termed "moksha medicine" – used by the people of Pala in rites of passage, such as the transition to adulthood and at the end of life.[73][74]
Bruce Sterling's Holy Fire novel refers to the religion in the future as a result of entheogens, used freely by the population.[75]
In Stephen King's The Dark Tower: The Gunslinger, Book 1 of The Dark Tower series, the main character receives guidance after taking mescaline.[citation needed]
The Alastair Reynolds novel Absolution Gap features a moon under the control of a religious government that uses neurological viruses to induce religious faith.[citation needed]
A critical examination of the ethical and societal implications and relevance of "entheogenic" experiences can be found in Daniel Waterman and Casey William Hardison's book Entheogens, Society & Law: Towards a Politics of Consciousness, Autonomy and Responsibility (Melrose, Oxford 2013). This book includes a controversial[according to whom?] analysis of the term entheogen arguing that Wasson et al. were mystifying the effects of the plants and traditions to which it refers.[page needed]
See also
List of Acacia species known to contain psychoactive alkaloids
List of plants used for smoking
List of psychoactive plants
List of psychoactive plants, fungi, and animals
List of substances used in rituals
N,N-Dimethyltryptamine
Psilocybin mushrooms
Psychedelic therapy
Psychoactive Amanita mushrooms
Psychoactive cacti
Psychology of religion
Scholarly approaches to mysticism
References
 "CHAPTER 1 Alcohol and Other Drugs". The Public Health Bush Book: Facts & approaches to three key public health issues. ISBN 0-7245-3361-3. Archived from the original on 28 March 2015.
 Rätsch, Christian, The Encyclopedia of Psychoactive Plants: Ethnopharmacology and Its Applications pub. Park Street Press 2005
 Souza, Rafael Sampaio Octaviano de; Albuquerque, Ulysses Paulino de; Monteiro, Júlio Marcelino; Amorim, Elba Lúcia Cavalcanti de (October 2008). "Jurema-Preta (Mimosa tenuiflora [Willd.] Poir.): a review of its traditional use, phytochemistry and pharmacology". Brazilian Archives of Biology and Technology. 51 (5): 937–947. doi:10.1590/S1516-89132008000500010.
 Rätsch, Christian, The Encyclopedia of Psychoactive Plants: Ethnopharmacology and Its Applications pub. Park Street Press 2005
 Millière, Raphaël; Carhart-Harris, Robin L.; Roseman, Leor; Trautwein, Fynn-Mathis; Berkovich-Ohana, Aviva (4 September 2018). "Psychedelics, Meditation, and Self-Consciousness". Frontiers in Psychology. 9: 1475. doi:10.3389/fpsyg.2018.01475. ISSN 1664-1078. PMC 6137697. PMID 30245648.
 Timmermann, Christopher; Roseman, Leor; Williams, Luke; Erritzoe, David; Martial, Charlotte; Cassol, Héléna; Laureys, Steven; Nutt, David; Carhart-Harris, Robin (15 August 2018). "DMT Models the Near-Death Experience". Frontiers in Psychology. 9: 1424. doi:10.3389/fpsyg.2018.01424. ISSN 1664-1078. PMC 6107838. PMID 30174629.
 Millière, Raphaël; Carhart-Harris, Robin L.; Roseman, Leor; Trautwein, Fynn-Mathis; Berkovich-Ohana, Aviva (4 September 2018). "Psychedelics, Meditation, and Self-Consciousness". Frontiers in Psychology. 9: 1475. doi:10.3389/fpsyg.2018.01475. ISSN 1664-1078. PMC 6137697. PMID 30245648.
 Letheby, Chris; Gerrans, Philip (30 June 2017). "Self unbound: ego dissolution in psychedelic experience". Neuroscience of Consciousness. 2017 (1): nix016. doi:10.1093/nc/nix016. ISSN 2057-2107. PMC 6007152. PMID 30042848.
 Godlaski, Theodore M (2011). "The God within". Substance Use and Misuse. 46 (10): 1217–1222. doi:10.3109/10826084.2011.561722. PMID 21692597. S2CID 39317500.
 Carl A. P. Ruck; Jeremy Bigwood; Danny Staples; Jonathan Ott; R. Gordon Wasson (January–June 1979). "Entheogens". Journal of Psychedelic Drugs. 11 (1–2): 145–146. doi:10.1080/02791072.1979.10472098. PMID 522165. Archived from the original on 16 July 2012.
 "Mescaline : D M Turner". www.mescaline.com.
 Rudgley, Richard. "The Encyclopedia of Psychoactive Substances". mescaline.com. Retrieved 21 May 2015.
 "Peyote". IUCN Red List of Threatened Species. Retrieved 29 October 2018.
 Carod-Artal, F.J. (1 January 2015). "Hallucinogenic drugs in pre-Columbian Mesoamerican cultures". Neurología (English Edition). 30 (1): 42–49. doi:10.1016/j.nrleng.2011.07.010. ISSN 2173-5808. PMID 21893367.
 Samorini, Giorgio (1997). "The 'Mushroom-Tree' of Plaincourault". Eleusis (8): 29–37.
 Samorini, Giorgio (1998). "The 'Mushroom-Trees' in Christian Art". Eleusis (1): 87–108.
 1946-, Mayor, Adrienne (2014). The Amazons : lives and legends of warrior women across the ancient world. Princeton. pp. 147–149. ISBN 9780691147208. OCLC 882553191.
 Staples, Danny; Carl A.P. Ruck (1994). The world of classical myth : gods and goddesses, heroines and heroes. Durham, NC: Carolina Academic Press. ISBN 0-89089-575-9. Archived from the original on 15 April 2012. Retrieved 9 May 2014.
 Tupper, K.W. (2003). "Entheogens & education: Exploring the potential of psychoactives as educational tools" (PDF). Journal of Drug Education and Awareness. 1 (2): 145–161. ISSN 1546-6965. Archived from the original (PDF) on 9 October 2007.
 Tupper, K.W. (2002). "Entheogens and existential intelligence: The use of plant teachers as cognitive tools" (PDF). Canadian Journal of Education. 27 (4): 499–516. doi:10.2307/1602247. JSTOR 1602247. Archived from the original (PDF) on 29 December 2004.
 Hearn, Kelly. "The Dark Side of Ayahuasca". Men's Journal. Retrieved 3 December 2013.
 Campos, Don Jose (2011). The Shaman & Ayahuasca: Journeys to Sacred Realms.
 Calabrese, Joseph D. (1997). "Spiritual healing and human development in the Native American church: Toward a cultural psychiatry of peyote". Psychoanalytic Review. 84 (2): 237–255. PMID 9211587.
 Santos, R. G.; Landeira-Fernandez, J.; Strassman, R. J.; Motta, V.; Cruz, A. P. M. (2007). "Effects of ayahuasca on psychometric measures of anxiety, panic-like and hopelessness in Santo Daime members". Journal of Ethnopharmacology. 112 (3): 507–513. doi:10.1016/j.jep.2007.04.012. PMID 17532158.
 de Rios, Marlene Dobkin; Grob, Charles S. (2005). "Interview with Jeffrey Bronfman, Representative Mestre for the União do Vegetal Church in the United States". Journal of Psychoactive Drugs. 37 (2): 181–191. doi:10.1080/02791072.2005.10399800. PMID 16149332. S2CID 208178224.
 Chen Cho Dorge (20 May 2010). "2CB chosen over traditional entheogens by South African healers". Evolver.net. Archived from the original on 3 September 2013. Retrieved 31 March 2013.
 The Chemical Muse: Drug Use and the Roots of Western Civilization by D. C. A. Hillman PhD[page needed]
 Rowan Robinson, The Great Book of Hemp, Health & Fitness, 1995, pg. 89
 "Marijuana and the Bible= Erowid.org". 1 March 2002.
 Lytton J. Musselman Figs, dates, laurel, and myrrh: plants of the Bible and the Quran 2007 pg. 73
 Dan Merkur The Mystery of Manna: The Psychedelic Sacrament of the Bible (2001)[page needed]
 James D. Dure, Manna Magic Mushroom of Moses : Manna Botanical I.D. of a Biblical Sacrament (self published, 2000)[page needed]
 Merlin, M. D. (2003). "COVER ARTICLE: Archaeological Evidence for the Tradition of Psychoactive Plant Use in the Old World". Economic Botany. 57 (3): 295–323. doi:10.1663/0013-0001(2003)057[0295:AEFTTO]2.0.CO;2.
 Kaplan, Aryeh. (1981). The Living Torah New York. p. 442.
 Sex, Drugs, Violence and the Bible, by Chris Bennett and Neil McQueen, 2001, Forbidden Fruit Publishing.[page needed]
 "kanehbosm". Njweedman.com. Retrieved 13 January 2013.
 Conjuring Eden: Art and the Entheogenic Vision of Paradise Archived 14 August 2007 at the Wayback Machine, by Mark Hoffman, Carl Ruck, and Blaise Staples. Entheos: The Journal of Psychedelic Spirituality, Issue No. 1, Summer, 2001
 Wasson and Allegro on the Tree of Knowledge as Amanita Archived 14 August 2007 at the Wayback Machine, Michael S. Hoffman, Journal of Higher Criticism, 2007
 Daturas for the Virgin, José Celdrán and Carl Ruck, Entheos: The Journal of Psychedelic Spirituality, Vol. I, Issue 2, Winter, 2002
 The Hidden World: Survival of Pagan Shamanic Themes in European Fairytales, by Carl Ruck, Blaise Staples, Jose Alfredo Celdran, Mark Hoffman, Carolina Academic Press, 2007[page needed]
 O'Brien, Barbara. "The Fifth Buddhist Precept". about.com.
 Hajicek-Dobberstein (1995). "Soma siddhas and alchemical enlightenment: psychedelic mushrooms in Buddhist tradition". American Journal of Ethnopharmacology. 48 (2): 99–118. doi:10.1016/0378-8741(95)01292-L. PMID 8583800.
 Tricycle: Buddhism & Psychedelics, Fall 1996[full citation needed] https://tricycle.org/magazine-issue/fall-1996/
 Kornfield, Jack; "Bringing Home the Dharma: Awakening Right Where You Are", excerpted at "Archived copy". Archived from the original on 5 October 2014. Retrieved 28 May 2015.[self-published source?]/
 Stolaroff, M. J. (1999). "Are Psychedelics Useful in the Practice of Buddhism?". Journal of Humanistic Psychology. 39 (1): 60–80. doi:10.1177/0022167899391009. S2CID 145220039.
 "The Peyote Way Church of God » Overview". peyoteway.org.
 Mestre Irineu photos
 Bwiti: An Ethnography of the Religious Imagination in Africa Archived 28 June 2006 at the Wayback Machine by James W. Fernandez, Princeton University Press, 1982
 S.R. Berlant (2005). "The entheomycological origin of Egyptian crowns and the esoteric underpinnings of Egyptian religion" (PDF). Journal of Ethnopharmacology. 102 (2005): 275–88. doi:10.1016/j.jep.2005.07.028. PMID 16199133. Archived from the original (PDF) on 22 December 2009.
 Samorini, Giorgio (1995). "Traditional Use of Psychoactive Mushrooms in Ivory Coast?". Eleusis. 1: 22–27. Archived from the original on 8 May 2014. Retrieved 8 May 2014.
 "Ethnobotanical Research". ethnobotany.co.za. Retrieved 13 January 2013.
 "2CB chosen over traditional entheogen's by South African healers". Tacethno.com. 27 March 2008. Retrieved 15 May 2012.
 The Nexus Factor - An Introduction to 2C-B Erowid
 Ubulawu Nomathotholo Pack Photo by Erowid. 2002 Erowid.org
 Cecilia Garcia, James D. Adams (2005). Healing with medicinal plants of the west - cultural and scientific basis for their use. Abedus Press. ISBN 0-9763091-0-6.
 "History : Oracle at Delphi May Have Been Inhaling Ethylene Gas Fumes". Ethylene Vault. Erowid.org. Retrieved 31 March 2013.
 "НАРКОТИКИ.РУ | Наркотики на Руси. Первый этап: Древняя Русь". www.narkotiki.ru.
 Allegro, John Marco (1970). The Sacred Mushroom and the Cross: A Study of the Nature and Origins of Christianity within the Fertility Cults of the Ancient Near East. Hodder and Stoughton. ISBN 0-340-12875-5.
 Taylor, Joan E. (2012). The Essenes, the Scrolls, and the Dead Sea. Oxford University Press. p. 305. ISBN 978-0-19-955448-5.
 Hodgson, Marshall G.S. (2005). The Secret Order of Assassins: The Struggle of the Early Nizârî Ismâʻîlîs Against the Islamic World. Philadelphia: University of Pennsylvania Press. ISBN 978-0-8122-1916-6. Retrieved 15 September 2010.
 "Macropiper Excelsum - Maori Kava". Entheology.org. Retrieved 13 January 2013.
 "Psilocybian mushrooms in New Zealand". Erowid.org.
 "Benjamin Thomas Ethnobotany & Anthropology Research Page". Shaman-australis.com. Retrieved 13 January 2013.
 Singh, Yadhu N., ed. (2004). Kava from ethnology to pharmacology. Boca Raton: CRC Press. ISBN 1420023373.
 R. R. Griffiths; W. A. Richards; U. McCann; R. Jesse (7 July 2006). "Psilocybin can occasion mystical-type experiences having substantial and sustained personal meaning and spiritual significance". Psychopharmacology. 187 (3): 268–283. doi:10.1007/s00213-006-0457-5. PMID 16826400. S2CID 7845214.
 MacLean, Katherine A.; Johnson, Matthew W.; Griffiths, Roland R. (2011). "Mystical Experiences Occasioned by the Hallucinogen Psilcybin Lead to Increases in the Personality Domain of Openness". Journal of Psychopharmacology. 25 (11): 1453–1461. doi:10.1177/0269881111420188. PMC 3537171. PMID 21956378.
 Nutt, David J.; King, Leslie A.; Nichols, David E. (2013). "Effects of Schedule I Drug Laws on Neuroscience Research and Treatment Innovation". Nature Reviews Neuroscience. 14 (8): 577–85. doi:10.1038/nrn3530. PMID 23756634. S2CID 1956833.
 Tupper, Kenneth W.; Labate, Beatriz C. (2014). "Ayahuasca, Psychedelic Studies and Health Sciences: The Politics of Knowledge and Inquiry into an Amazonian Plant Brew". Current Drug Abuse Reviews. 7 (2): 71–80. doi:10.2174/1874473708666150107155042. PMID 25563448.
 DMT – UN report, MAPS, 31 March 2001, archived from the original on 21 January 2012, retrieved 14 January 2012
 The Internationalization of Ayahuasca, page 327
 "Consultation on implementation of model drug schedules for Commonwealth serious drug offences". Australian Government, Attorney-General's Department. 24 June 2010. Archived from the original on 7 November 2011.
 "Aussie DMT Ban". American Herb Association Quarterly Newsletter. 27 (3): 14. Summer 2012.
 Gunesekera, Romesh. "Book of a Lifetime: Island, By Aldous Huxley". Independent UK. Retrieved 30 January 2017.
 Schermer, MH (2007). "Brave New World versus Island--utopian and dystopian views on psychopharmacology". Med Health Care Philos. 10 (2): 119–28. doi:10.1007/s11019-007-9059-1. PMC 2779438. PMID 17486431.
 Sterling, Bruce (1997). Holy Fire. p. 228.
Further reading
Harner, Michael, The Way of the Shaman: A Guide to Power and Healing, Harper & Row Publishers, NY 1980
Rätsch, Christian; "The Psychoactive Plants, Ethnopharmacology and Its Applications"; Park Street Press; Rochester Vermont; 1998/2005; ISBN 978-0-89281-978-2
Pegg, Carole (2001). Mongolian Music, Dance, & Oral Narrative: Performing Diverse Identities. U of Washington P. ISBN 9780295981123. Retrieved 13 August 2012.
Roberts, Thomas B. (editor) (2001). Psychoactive Sacramentals: Essays on Entheogens and Religion San Francisco: Council on Spiritual Practices.
Roberts, Thomas B. (2006) "Chemical Input, Religious Output—Entheogens" Chapter 10 in Where God and Science Meet: Vol. 3: The Psychology of Religious Experience Westport, CT: Praeger/Greenwood.
Roberts, Thomas, and Hruby, Paula J. (1995–2003). Religion and Psychoactive Sacraments: An Entheogen Chrestomathy https://web.archive.org/web/20071111053855/http://csp.org/chrestomathy/ [Online archive]
Shimamura, Ippei (2004). "Yellow Shamans (Mongolia)". In Walter, Mariko Namba; Neumann Fridman, Eva Jane (eds.). Shamanism: An Encyclopedia of World Beliefs, Practices, and Culture. 1. ABC-CLIO. pp. 649–651. ISBN 9781576076453. Archived from the original on 15 July 2014.
Tupper, Kenneth W. (2014). "Entheogenic Education: Psychedelics as Tools of Wonder and Awe" (PDF). MAPS Bulletin. 24 (1): 14–19.
Tupper, Kenneth W. (2002). "Entheogens and Existential Intelligence: The Use of Plant Teachers as Cognitive Tools" (PDF). Canadian Journal of Education. 27 (4): 499–516. doi:10.2307/1602247. JSTOR 1602247. Archived from the original (PDF) on 23 September 2015. Retrieved 2 February 2015.
Tupper, Kenneth W. (2003). "Entheogens & Education: Exploring the Potential of Psychoactives as Educational Tools" (PDF). Journal of Drug Education and Awareness. 1 (2): 145–161. Archived from the original (PDF) on 9 October 2007.
Stafford, Peter. (2003). Psychedelics. Ronin Publishing, Oakland, California. ISBN 0-914171-18-6.
Carl Ruck and Danny Staples, The World of Classical Myth 1994. Introductory excerpts
Huston Smith, Cleansing the Doors of Perception: The Religious Significance of Entheogenic Plants and Chemicals, 2000, Tarcher/Putnam, ISBN 1-58542-034-4
Daniel Pinchbeck,"Ten Years of Therapy in One Night", The Guardian UK (2003), describes Daniel's second journey with Iboga facilitated by Dr. Martin Polanco at the Ibogaine Association clinic in Rosarito, Mexico.
Giorgio Samorini 1995 "Traditional use of psychoactive mushrooms in Ivory Coast?" in Eleusis 1 22-27 (no current url)
M. Bock 2000 "Māori kava (Macropiper excelsum)" in Eleusis - Journal of Psychoactive Plants & Compounds n.s. vol 4 (no current url)
Plants of the Gods: Their Sacred, Healing and Hallucinogenic Powers by Richard Evans Schultes, Albert Hofmann, Christian Ratsch - ISBN 0-89281-979-0
John J. McGraw, Brain & Belief: An Exploration of the Human Soul, 2004, AEGIS PRESS, ISBN 0-9747645-0-7
J.R. Hale, J.Z. de Boer, J.P. Chanton and H.A. Spiller (2003) Questioning the Delphic Oracle, 2003, Scientific American, vol 289, no 2, 67-73.
The Sacred Plants of our Ancestors by Christian Rätsch, published in TYR: Myth—Culture—Tradition Vol. 2, 2003–2004 - ISBN 0-9720292-1-4
Yadhu N. Singh, editor, Kava: From Ethnology to Pharmacology, 2004, Taylor & Francis, ISBN 0-415-32327-4
External links
 Media related to Entheogens at Wikimedia Commons
vte
Modern spirituality
vte
New Age movement
vte
Witchcraft and magic
Categories: EntheogensReligious practicesShamanismSpiritualityDrug classes defined by psychological effectsDrug cultureSpiritual practice



https://www.maps.org/news-letters/v24n1/v24n1_p14-19.pdf
&

https://web.archive.org/web/20150923211602/http://www.csse-scee.ca/CJE/Articles/FullText/CJE27-4/CJE27-4-tupper.pdf
&
Tupper, Kenneth W. (2014). "Entheogenic Education: Psychedelics as Tools of Wonder and Awe" (PDF). MAPS Bulletin. 24 (1): 14–19.
Tupper, Kenneth W. (2002). "Entheogens and Existential Intelligence: The Use of Plant Teachers as Cognitive Tools" (PDF). Canadian Journal of Education. 27 (4): 499–516. doi:10.2307/1602247. JSTOR 1602247. Archived from the original (PDF) on 23 September 2015. Retrieved 2 February 2015.


Tupper, Kenneth W. (2003). "Entheogens & Education: Exploring the Potential of Psychoactives as Educational Tools" (PDF). Journal of Drug Education and Awareness. 1 (2): 145–161. Archived from the original (PDF) on 9 October 2007.

https://web.archive.org/web/20071009175718/http://www.kentupper.com/resources/Entheogens+$26+Education--JDEA+2003.pdf








Multidisciplinary Association for Psychedelic Studies
https://maps.org/
&
https://en.wikipedia.org/wiki/Multidisciplinary_Association_for_Psychedelic_Studies
The Multidisciplinary Association for Psychedelic Studies (MAPS) is an American nonprofit organization working to raise awareness and understanding of psychedelic substances. MAPS was founded in 1986 by Rick Doblin and is now based in San Jose, California.

MAPS helps scientists design, fund, and obtain regulatory approval for studies of the safety and effectiveness of a number of controlled substances. MAPS works closely with government regulatory authorities worldwide such as the United States Food and Drug Administration (FDA) and the European Medicines Agency (EMA) to ensure that all of its sponsored research protocols conform to ethical and procedural guidelines for clinical drug research. Included in MAPS' research efforts are MDMA (methylenedioxymethamphetamine) for the treatment of posttraumatic stress disorder (PTSD); LSD and psilocybin for the treatment of anxiety, cluster headaches, and depression associated with end-of-life issues; ibogaine for the treatment of opiate addiction, ayahuasca for the treatment of drug addiction and PTSD; medical cannabis for PTSD; and alternative delivery systems for medical cannabis such as vaporizers and water pipes. MAPS officials say the organization's ultimate goal is to establish a network of clinics where these and other treatments can be provided together with other therapies under the guidance of trained, licensed physicians and therapists.[1]

In addition to sponsoring scientific research, MAPS organizes continuing medical education (CME) conferences, sponsors and presents lectures and seminars on the state of psychedelic and medical marijuana research, provides psychedelic harm reduction services through the Zendo Project at events such as music festivals and Burning Man, and publishes a triannual magazine-style publication, the MAPS Bulletin, with updates about its ongoing research efforts, legal struggles, and educational initiatives. MAPS also publishes books dealing with the science, history, and culture of psychedelic research and psychedelic therapy.[2]


Contents
1	History
1.1	Psychedelic therapy
1.2	Founding MAPS
2	Projects
3	Organization
3.1	Board and staff
3.2	Funding
4	Research
4.1	MDMA-assisted psychotherapy for PTSD
4.2	LSD and psilocybin-assisted psychotherapy for end-of-life anxiety
4.3	Ibogaine treatment for drug addiction
4.4	Medical marijuana
5	Educational outreach
5.1	MAPS bulletin
5.2	Psychedelic harm reduction
5.3	Conferences
6	Legal efforts
6.1	Medical cannabis monopoly
7	See also
8	References
9	External links
History
Psychedelic therapy
The psychoactive properties of LSD were discovered in 1943 by Swiss chemist Albert Hofmann when he accidentally ingested a small dose through the skin while studying the compound. Controlled research on human subjects began soon after and Hofmann's colleague Werner Stoll published his findings about the basic effects of LSD on human subjects in 1947.[3]

After the earliest European and American research efforts investigated whether LSD could reliably induce psychotic disorders, some began to evaluate the potential for LSD to assist in traditional Freudian psychotherapy in the 1950s. Studies into the effects of LSD on human creativity and spirituality were also conducted during this period.

One notable researcher was Humphry Osmond whose team treated mental patients in the Weyburn Mental Hospital in Saskatchewan with psychedelics, which he thought gave insight into the way psychotic people see the world, but later realized they had a wider potential. In Weyburn, Osmond coined the term psychedelic meaning 'soul manifesting'. The first use of the word may have been in a poem Osmond wrote, which had the lines “To fathom Hell or go angelic / just take a pinch of psychedelic.”.[4] The writer Aldous Huxley became interested in the Canadian research and Osmond subsequently gave Huxley a dose of mescaline.[5] The resulting experience led Huxley to write The Doors of Perception, stimulating widespread interest in psychedelics. (The rock band The Doors was named after the book and its titular quotation from William Blake). Osmond's work was followed by protocols for the use of psychedelics by mavericks like Al Hubbard who advocated the potential of LSD as a transcendental substance. Research in Saskatchewan, Toronto and elsewhere demonstrated impressive success in treating alcoholism.[6]

The next major development in the history of psychedelic research was the rediscovery of psilocybin by Western society due to the appearance of an article in a 1957 issue of Life magazine written by R. Gordon Wasson detailing his experiences ingesting psilocybin mushrooms in a shamanic ceremony in Mexico.[7] European studies into the use of psilocybin as a psychotherapeutic agent (Duche; Delay et al.) were published as early as 1961. An article by Pichot about the basic effects of psilocybin on 137 normal and unhealthy subjects appeared in the medical journal Lancet in the same year.[8]

In the early 1960s, Harvard University was the seat of two experiments involving psilocybin. The first of these was the Concord Prison Experiment which began in 1961 under the supervision of principal researchers Timothy Leary and Richard Alpert. The purpose of the experiment was to determine if psilocybin-assisted psychotherapeutic techniques could permanently reverse the criminal and anti-social tendencies of 32 state prisoners nearing parole and prevent them from being incarcerated again. Leary's team combined the administration of synthetic psilocybin in guided sessions with a variety of tests and support sessions during and after release.[9]

The next Harvard experiment with crucial implications for the development of psychedelic research was Walter Pahnke's Good Friday Experiment of 1962. Pahnke set out to determine if psilocybin could be used to facilitate "mystical" experiences and if these experiences could cause permanent and beneficial personality transformation. In order to do so, he recruited 20 Protestant divinity students, 10 of whom would take synthetic psilocybin and 10 of whom would take a placebo. The experiment took place in a basement chapel in which the audio from a Good Friday service conducted in the main chapel upstairs was broadcast.

Throughout the short history of LSD research, people unaffiliated or loosely affiliated with the scientific establishment distributed supplies of LSD outside of laboratory settings. Soon the lines between legitimate research and personal experimentation began to blur for some, and as early as 1962 fellow faculty members at Harvard openly criticized Leary and Alpert for abandoning scientific principles and experimenting with LSD outside official research settings. A few months later the university would dismiss both professors for violating university regulations by providing LSD to undergraduates. The controversy at Harvard coincided with greatly increased FDA restrictions on the procurement of LSD for scientific research; although some research did continue, most studies underway before the new FDA restrictions did not. After restricting its manufacture and distribution in 1965, the US government fully criminalized LSD in 1968, after which the European nations which hosted psychedelic research followed suit.[10]

In the United States, legal psychedelic research was reduced to only one program – the studies conducted at the Spring Grove Center in Baltimore which primarily focused on end of life therapy and continued through to 1974. The study, which eventually came to be headed by Pahnke and Grof, resulted in the treatment of over 100 terminal patients, including 31 in a controlled LSD psychotherapy study.[11]

Throughout the 1980s, MDMA was administered in psychiatric and counseling settings, but recreational use also became increasingly widespread. MDMA research was mostly halted in 1985 by the United States government's initiation of proceedings to ensure temporary classification of the compound as a Schedule I drug (a classification made permanent in 1988). As psychedelics gained increasing recognition as potential psychotherapeutic agents, so too were they recognized within popular culture for their recreational use.[citation needed]

Founding MAPS
Anticipating that the Drug Enforcement Administration (DEA) would move to criminalize MDMA in light of the drug's increasing popularity in recreational use, Rick Doblin, Alise Agar and Debby Harlow organized a nonprofit group called Earth Metabolic Design Laboratories (EMDL) to advocate for the potential therapeutic use of MDMA. By 1984 the DEA had announced its intention to designate MDMA as a Schedule I substance, a categorization that would greatly restrict and regulate the drug's availability, as well as indicate that it held no accepted medical use and a high abuse potential.[12]

EMDL organized supporters to petition the DEA for a scheduling hearing regarding MDMA. Dr. George Greer, Dr. Lester Grinspoon, Professor James Bakalar, and Professor Thomas Roberts contributed to the argument that MDMA belonged in Schedule III, a category that would more readily enable future research and permit the continuation of its use in psychotherapy. Despite such efforts, the DEA pursued emergency scheduling in 1985, citing an imminent risk to public health.[citation needed]

As MDMA was now deemed illegal, held in the same category as such substances as heroin, the only way for it to be employed in scientific inquiry would be through the lengthy and expensive FDA approval process. Holding the belief that MDMA had the unique potential both to aid psychotherapy and eventually to become a prescription medicine, Rick Doblin sought to gain incorporation for MAPS as a 501(c)(3) nonprofit research and educational organization. The founding of MAPS was a primary step toward the future envisioning of what Doblin has called a "nonprofit psychedelic-pharmaceutical company."[13] Chartered in 1986, MAPS has since contributed over 12 million dollars towards the scientific study of psychedelics and cannabis in therapeutic applications.[14][15]

Projects
Since 1986, MAPS has distributed over $20 million to fund psychedelics and medical cannabis research and education. These include:

Erowid and MAPS have been collaborating on two large reference database projects since 2001. Erowid has been providing expertise and work developing and coordinating construction of an online MDMA Reference library and MAPS begun working on doing a similar project with the Albert Hofmann Foundation's LSD and Psilocybin Library.[16]
Designed a study to examine vaporized or smoked marijuana in the treatment of war related PTSD in veterans, which will evaluate efficacy and safety of multiple strains of herbal cannabis. The study has received FDA approval. MAPS is pursuing the purchase of appropriate strains from the US federal government.[17]
Sponsored efforts by Prof. Lyle Craker, Medicinal Plant Program, UMass Amherst Department of Plant and Soil Sciences, to obtain a license from the Drug Enforcement Administration for a marijuana production facility.[18][19]
Sponsored analytical research into the effects of the marijuana vaporizer, leading to the first human study of marijuana vaporizers conducted by Dr. Donald Abrams of the University of California, San Francisco.[20]
Funded the successful efforts of Dr. Donald Abrams to obtain approval for the first human study in 15 years into the therapeutic use of marijuana, along with a $1 million grant from the National Institute on Drug Abuse.[17]
Obtained Orphan Drug designation from the FDA for smoked marijuana in the treatment of AIDS Wasting Syndrome.[17]
Supported long-term follow-up studies of pioneering research with LSD and psilocybin originally conducted in the 1950s and 1960s.[21]
Sponsoring research by Dr. Evgeny Krupitsky into ketamine-assisted psychotherapy as a potential treatment for heroin addiction and alcoholism.[22]
Sponsoring programs and services at festivals, community events, churches, and schools that provide psychedelic harm reduction and education.[2]
A clinical study evaluating the treatment of cluster headaches using low doses of the tryptamine psilocybin (found in psilocybin mushrooms) is being developed by researchers at Harvard Medical School, McLean Hospital in conjunction with MAPS.[21]
Performed several small clinical studies described below, and in some cases, published the results in scientific journals.
Organization
Board and staff
MAPS is governed by a board of directors including John Gilmore, David Bronner, Robert J. Barnhart, and Rick Doblin. Ashawna Hailey served on the board until her death in 2011.

Funding
MAPS is a nonprofit 501(c)(3) research and educational organization, funded by donations from individuals and foundations.[23] Donations to MAPS can be restricted to fund a specific project, or be unrestricted.[24] MAPS also receives revenue from conferences and events, such as the Psychedelic Science conference, as well as from the sale of books, merchandise, and art.[25] With a policy of transparency in financial matters, MAPS publishes a detailed annual financial report.[26] On August 20, 2020, having raised $30 million in non-profit donations in less than six months, MAPS and the Psychedelic Science Funders Collaborative (PSFC) announced the completion of the Capstone Campaign, a non-profit fundraising effort to fund the final research required to seek U.S. Food and Drug Administration (FDA) approval of MDMA-assisted psychotherapy for posttraumatic stress disorder (PTSD).[27][28]

Research
MDMA-assisted psychotherapy for PTSD
MAPS has a primary focus in researching the effectiveness of using 3,4-methylenedioxymethamphetamine (MDMA) to assist psychotherapy in the treatment of posttraumatic stress disorder (PTSD). MAPS is the only organization in the world funding clinical trials of MDMA-assisted psychotherapy, as it is of little interest to commercial pharmaceutical companies[citation needed]. Ultimately, MAPS seeks to achieve FDA approval for the use of MDMA as a prescription medicine.[29]

MAPS completed a US Pilot Study in September 2008 that investigated the effectiveness of MDMA-Assisted Psychotherapy in the Treatment of Posttraumatic Stress Disorder (PTSD), which took place in Charleston, South Carolina.[29] The study sought to determine whether MDMA-assisted psychotherapy would be effective in reducing the symptoms of PTSD in 20 subjects identified with treatment-resistant PTSD resulting from sexual abuse, war, violent crime, and other traumas.[30]

MAPS is conducting a phase 2 pilot study to assess the effectiveness of MDMA-assisted psychotherapy in the treatment of PTSD among veterans of war. The study is taking place in Charleston, SC and is conducting experimental treatment with 16 veterans, both male and female, suffering war-related PTSD. The study will follow a randomized triple-blind protocol and test three different experimental doses.

Outside of the US, MAPS is pursuing the implementation of MDMA/PTSD studies in Canada, Israel, Jordan, and Switzerland. The Canadian study has full approval from an Institutional Review Board (IRB) and from Health Canada, and is waiting to obtain an import permit to import MDMA into Canada. The Israel Study is awaiting approval from the Israeli Institutional Review Board as well as the Ministry of Health before it can proceed with enrollment.. An Israel Defense Forces official has indicated a willingness to refer war affected soldiers suffering from PTSD, thus greatly enabling recruitment for the study. The Jordan Study is in development with limited approval from the IRB. A protocol amendment is to be submitted in the near future. MAPS is seeking to enroll both Jordanian nationals as well as Iraqi refugees living in Jordan who are suffering from PTSD. The Switzerland study has received full approval from SwissMedic and has been submitted and accepted by the FDA in the form of an Investigational New Drug application. The study is in progress and nearing completion as MAPS is collecting long-term follow-up data following the experimental treatment of all 12 subjects. The study represents in part MAPS' clinical plan to develop MDMA as a prescription medication with both FDA and European Medicines Agency (EMEA) approval.[29]

MAPS has developed a training protocol that will allow therapists to take part as subjects in a Phase 1 study on the psychological effects of MDMA-assisted psychotherapy on healthy volunteers. MAPS would thus administer one MDMA-assisted psychotherapy session to the therapists in an effort to offer them training as well as evaluate the effects of MDMA. The study has received approval to proceed by both the US FDA and the IRB. Mithoefer, the primary clinical investigator in this study, has received his Schedule 1 license from the DEA, enabling him to administer MDMA within this study.[29]

LSD and psilocybin-assisted psychotherapy for end-of-life anxiety
It is well evidenced that psychoactive mushrooms and a number of other plants containing psychoactive compounds have been valued for millennia by many indigenous tribes across the globe for their spiritual & therapeutic uses.[31]

An explosion of recreational use during the 1960s gained LSD and Psilocybin a great deal of notoriety and ultimately led to their categorization as Schedule I illicit drugs in 1970.[21]

MAPS is committed to exploring the potential use of LSD and psilocybin-assisted psychotherapy in the treatment of patients suffering with the deep anxiety associated with life-threatening illness. Developing new research protocols to meet modern drug development standards, MAPS' pilot LSD and psilocybin studies will be used to guide development of future treatment methodologies.[21]

MAPS is conducting a study on LSD-assisted psychotherapy in the treatment of anxiety secondary to life-threatening illness. The study is taking place in Solothurn, Switzerland, and is the first study in 35 years to investigate the therapeutic use of LSD in human subjects. The study's primary focus is to assess the safety and effectiveness of conducting LSD-assisted psychotherapy with a population of individuals who are experiencing anxiety associated with life-threatening illness. The study has received approval from the BAG (the equivalent of the DEA in Switzerland), the Ethics Committee (the Swiss IRB), and SwissMedic. Enrolment began in April 2008 and is now complete.[21]

MAPS has also developed a protocol to study the effectiveness of psilocybin-assisted psychotherapy in treating anxiety related to the experience of having a life-threatening illness such as advanced stage cancer. This study is to be conducted in the US under the principal investigation of Sameet Kumar, Ph.D.[21]

Ibogaine treatment for drug addiction
MAPS is collecting observational data from two ibogaine treatment centers in Mexico to study the long-term effects of Ibogaine treatment on opiate-dependent subjects.

MAPS has released a request for proposals (RFP) to find a research team interested in conducting clinical trials on ibogaine; a $25,000 grant has been made available to help fund such a study.[32]

Medical marijuana
The National Institute on Drug Abuse (NIDA) holds a monopoly on the supply of marijuana grown for research in the United States[citation needed], as they fund the only laboratory licensed to grow it. Since NIDA is solely interested in researching the negative aspects of marijuana use and abuse, studies to explore its potential medical benefit are impossible within the US.

MAPS is the only organization working to demonstrate the safety and efficacy of botanical marijuana as a prescription medicine to the satisfaction of the FDA[citation needed]. For nearly ten years, MAPS has been involved in lengthy and ongoing legal battles with the DEA to end NIDA's monopoly on research grade marijuana.[17]

Alternatively, MAPS has received full approval from the FDA to study the effectiveness of marijuana, both smoked and vaporized, in the treatment of individuals experiencing war related PTSD. This marks the first time the FDA has approved an outpatient marijuana study.[33]

Educational outreach
MAPS bulletin
The MAPS Bulletin (called the MAPS Newsletter before 1995) is the organization's official publication. It provides summaries of psychedelic research conducted under the auspices of the organization and other worldwide research efforts in addition to discussions of psychedelic culture, personal reflections on psychedelic experiences, writings from leading figures in the psychedelic research community, as well as psychedelic art.[34]

Psychedelic harm reduction
MAPS offers educational resources that actively promote psychedelic harm reduction. Psychedelic harm reduction is an approach to minimize harmful consequences and risks associated with the therapeutic and recreational use of psychedelic drugs. A harm reduction approach is an alternative to drug prohibition laws that criminalize users of psychedelic substances. Inexperienced or overwhelmed users of psychedelics sometimes have challenging emotional experiences that are resolved through law enforcement or medical intervention, which may lead to psychological damage long after the trip is over.[35] A harm reduction approach to using psychedelics often includes attention to set and setting, a trip sitter, or framing in the context of psychedelic therapy.

MAPS has provided psychedelic emergency services at festivals such as Hookahville, Burning Man and the Boom Festival. MAPS' model of psychedelic emergency services is volunteer staffed, peer based and relies on acute intervention.[35] MAPS also provides training and an educational video, which empowers psychedelic users and their peers with therapeutic techniques for use in assisting others through difficult psychedelic experiences. MAPS' approach to psychedelic harm reduction encourages a new framework for looking at "bad" trips as opportunities for emotional and spiritual growth.

Additionally, MAPS co-sponsors EcstasyData.org, an online resource that provides laboratory testing of ecstasy tablets for a minimal cost, which allows users to know exactly what they are ingesting and to avoid taking mislabeled or impure substances. MAPS has also formed a partnership with Bluelight, a web forum dedicated to harm reduction.[36]

Conferences
MAPS Pharmacologically-Assisted Psychotherapy Conference (Nov. 28th–Dec. 1st, 1990, Bern, Switzerland)[37]
Psychedelic Science in the 21st Century (April 15–18, 2010, San Jose, CA)[38]
Catalysts: The Impact of Psychedelics from Culture to Creativity (Dec. 10th–12th, 2010, Los Angeles, CA)[39]
The Second International Psychedelic Science Conference (April 18–23, 2013, Oakland, CA)[40]
Legal efforts
Medical cannabis monopoly

This section contains too many or overly lengthy quotations for an encyclopedic entry. Please help improve the article by presenting facts as a neutrally worded summary with appropriate citations. Consider transferring direct quotations to Wikiquote. (February 2010)
National Institute on Drug Abuse (NIDA) has a government granted monopoly on the production of cannabis for medical research purposes.[41] In the past, the institute has refused to supply marijuana to researchers who had obtained all other necessary federal permits. Medical marijuana researchers and activists claim that NIDA, which is not supposed to be a regulatory organization, does not have the authority to effectively regulate who does and doesn't get to do research with medical marijuana. Jag Davies of the Multidisciplinary Association for Psychedelic Studies (MAPS) writes in MAPS Bulletin:

Currently, the National Institute on Drug Abuse (NIDA) has a monopoly on the supply of research-grade marijuana, but no other Schedule I drug, that can be used in FDA-approved research. NIDA uses its monopoly power to obstruct research that conflicts with its vested interests. MAPS had two of its FDA-approved medical marijuana protocols rejected by NIDA, preventing the studies from taking place. MAPS has also been trying without success for almost four years to purchase 10 grams of marijuana from NIDA for research into the constituents of the vapor from marijuana vaporizers, a non-smoking drug delivery method that has already been used in one FDA-approved human study.

— [42]
NIDA administers a contract with the University of Mississippi to grow the nation's only legal cannabis crop for medical and research purposes,[43] including the Compassionate Investigational New Drug program. United States federal law registers cannabis as a Schedule I drug. Medical marijuana researchers typically prefer to use high-potency marijuana, but NIDA's National Advisory Council on Drug Abuse has been reluctant to provide cannabis with high THC levels, citing safety concerns:[43]

Most clinical studies have been conducted using cannabis cigarettes with a potency of 2-4% THC. However, it is anticipated that there will be requests for cannabis cigarettes with a higher potency or with other mixes of cannabinoids. For example, NIDA has received a request for cigarettes with an 8% potency. The subcommittee notes that very little is known about the clinical pharmacology of this higher potency. Thus, while NIDA research has provided a large body of literature related to the clinical pharmacology of cannabis, research is still needed to establish the safety of new dosage forms and new formulations. In the most recent rejection of medical marijuana by the Federal Government, the DEA denied Professor Craker, Valerie Corral, and MAPS request to end the federal governments monopoly on medical marijuana production and research.

— [44]
Major events in recent proceedings are notable, as in the 2007 ruling by Administrative Law Judge Mary Ellen Bittner, wherein she recommended that Craker receive a license to grow marijuana for research and that NIDA dismantle its monopoly. The DEA in response overturned the recommended ruling in January 2009, and later denied Craker's Motion to Reconsider in December 2010. In March 2011, Craker's lawyers submitted their final brief in the case. MAPS is pursuing efforts to have the DEA's final ruling rescinded.[17] A detailed timeline of MAPS' attempts to gain access to research grade marijuana is available on the MAPS website.

In 2016, the Obama administration DEA announced their intent to grant additional licenses to marijuana growers for research, ending the NIDA monopoly on federally legal marijuana.[45] The DEA finalized the proposed rule in early 2020.[46]

See also
Drug development
Beckley Foundation
Heffter Research Institute
References
 Doblin R (2002). "A clinical plan for MDMA ("Ecstasy") in the treatment of posttraumatic stress disorder (PTSD): partnering with the FDA". Journal of Psychoactive Drugs. 34 (2): 185–94. CiteSeerX 10.1.1.545.1584. doi:10.1080/02791072.2002.10399952. PMID 12691208. S2CID 11089345.
 "Multidisciplinary Association for Psychedelic Studies". MAPS. Archived from the original on 2019-06-20. Retrieved 2019-06-20.
 Hofmann, Albert (2005). LSD: My Problem Child. Santa Cruz: MAPS. ISBN 978-0-9660019-8-3.
 "Psychedelic Prophets: The Letters of Aldous Huxley and Humphry Osmond | Request PDF". Retrieved 2019-06-20.
 Pollan, Michael 2018 How To Change Your Mind, Penguin Random House, ISBN 1594204225
 "hkl039 313..329" (PDF). Archived (PDF) from the original on 2017-09-23. Retrieved 2019-06-20.
 R. Gordon Wasson (2005-04-18), Seeking the Magic Mushroom, Psychedelic-library.org, p. 2, archived from the original on 2012-04-17, retrieved 2012-04-14
 "Hallucinogenic Drugs". The Lancet. 277 (7174): 444–445. February 25, 1961. doi:10.1016/S0140-6736(61)90023-X. ISSN 0140-6736. OCLC 01755507.
 Hallucinogen use predicts reduced recidivism among substance-involved offenders under community corrections supervision Archived 2014-11-10 at the Wayback Machine J Psychopharmacol January 2014 vol. 28 no. 1 62-66.
 Lattin, Don (2010). The Harvard Psychedelic Club: How Timothy Leary, Ram Dass, Huston Smith, and Andrew Weil Killed the Fifties and Ushered in a New Age for America. Harper Collins. ISBN 978-0-06-165593-7.
 Grof, Stanislav (1994). LSD Psychotherapy: Exploring the Frontiers of the Hidden Mind. Hunter House. ISBN 978-0-89793-166-3.
 Documents from the DEA Scheduling Hearing of MDMA, 1984-1988, Maps.org, archived from the original on 2012-05-23, retrieved 2012-04-14
 Millard, M. (October 8–14, 2004). "This is your brain on drugs: Rick Doblin thinks pot, ecstasy, and other psychedelics could unlock the human mind — and he wants to bring them to Harvard, the FDA, and a doctor's office near you". Boston Phoenix. Archived from the original on 20 November 2013. Retrieved 31 May 2014.
 Financial Reports, Maps.org, archived from the original on 2012-04-24, retrieved 2012-04-14
 Mission, Maps.org, archived from the original on 2012-04-14, retrieved 2012-04-14
 "MAPS/EROWID Psychedelic Bibliography Projects". www.maps.org. Archived from the original on 2014-04-18. Retrieved 2014-06-16.
 Medical Marijuana, Maps.org, archived from the original on 2012-04-14, retrieved 2012-04-14
 Harris, Gardiner (18 January 2010). "Researchers find study of medical marijuana discouraged". The New York Times. Archived from the original on 23 January 2010. Retrieved 22 February 2010.
 Stafford, Lindsay (February–April 2010), "The state of clinical cannabis research in the United States", HerbalGram, 85: 64–68, archived from the original on 2010-03-03, retrieved 2010-02-22
 Abrams DI; Vizoso HP; Shade SB; Jay C; Kelly ME; Benowitz NL (2007), "Vaporization as a smokeless cannabis delivery system: A pilot study", Clinical Pharmacology & Therapeutics, 82 (5): 572–578, doi:10.1038/sj.clpt.6100200, PMID 17429350
 LSD & Psilocybin-Assisted Therapy for Anxiety, Maps.org, archived from the original on 2012-04-14, retrieved 2012-04-14
 Psychedelic Research Around the World, Maps.org, archived from the original on 2013-12-03, retrieved 2012-04-14
 MAPS Bulletin Volume XX, 3, "2010 Annual Report"
 "Funding Priorities". Maps.org. Archived from the original on 2011-04-17. Retrieved 2011-04-20.
 MAPS Annual Financial Report, Fiscal Year 2009-2010 June 1, 2009 - May 31, 2010
 "MAPS' Annual Financial Reports". Maps.org. Archived from the original on 2011-04-17. Retrieved 2011-04-20.
 "Psychedelic Research Fundraising Campaign Attracts $30 Million in Donations in 6 Months, Prepares MDMA-Assisted Psychotherapy for FDA Approval". MAPS. 2020-08-20. Archived from the original on 2020-08-24. Retrieved 2020-08-29.
 Ramachandran, Shalini (2020-08-20). "WSJ News Exclusive | Silicon Valley and Wall Street Elites Pour Money Into Psychedelic Research". Wall Street Journal. ISSN 0099-9660. Archived from the original on 2020-08-28. Retrieved 2020-08-29.
 MDMA-Assisted Psychotherapy, Maps.org, archived from the original on 2012-04-14, retrieved 2012-04-14
 Michael Mithoefer; et al. (2010). "The safety and efficacy of ±3,4-methylenedioxymethamphetamine-assisted psychotherapy in subjects with chronic, treatment-resistant posttraumatic stress disorder: the first randomized controlled pilot study". Journal of Psychopharmacology. 25 (4): 1–14. doi:10.1177/0269881110378371. PMC 3122379. PMID 20643699.
 Rätsch, Christian (2005). Encyclopedia of Psychoactive Plants: Ethnopharmacology and Its Applications. New York: Park Street Press. ISBN 978-0-89281-978-2.
 Ibogaine Therapy for Drug Addiction, Maps.org, archived from the original on 2012-04-14, retrieved 2012-04-14
 MAPS News 2011-May-9, Maps.org, 2011-05-09, archived from the original on 2012-03-31, retrieved 2012-04-14
 MAPS Bulletin, Maps.org, archived from the original on 2012-10-24, retrieved 2012-10-24
 "Horizons 2009: Valerie Mojeiko Psychedelic Harm Reduction – Rethinking the "Bad Trip" on Vimeo". Vimeo.com. Archived from the original on 2011-12-09. Retrieved 2011-04-20.
 "Bluelight Announcement". MAPS. Archived from the original on 2019-06-20. Retrieved 2019-06-20.
 "MAPS' Swiss Pharmacologically-Assisted Psychotherapy Conference", MAPS Bulletin 2(1), Winter 1990/91 [1] Archived 2014-04-18 at the Wayback Machine
 "Conference 2010 Videos". Maps.org. Archived from the original on 2011-04-19. Retrieved 2011-04-20.
 "Archived copy". Archived from the original on 2011-04-17. Retrieved 2011-04-14.
 Miller, Greg (26 April 2013). "Open Your Mind to the New Psychedelic Science". Archived from the original on 9 March 2017. Retrieved 10 March 2017 – via www.wired.com.
 Jag Davies. "Letting the Science, Not the Politicians, Decide About Marijuana | Drugs". AlterNet. Archived from the original on 2010-01-13. Retrieved 2010-03-17.
 MAPS Bulletin Volume XVI Number 3: Winter 2006-7, Maps.org, archived from the original on 2012-03-31, retrieved 2012-04-14
 Department of Health and Human Services; National Institutes of Health; National Institute on Drug Abuse (January 1998). "NIDA - About NIDA - Organization - NACDA - Provision of Marijuana and Other Compounds For Scientific Research - Recommendations of The National Institute on Drug Abuse National Advisory Council". archives.drugabuse.gov. Archived from the original on April 12, 2014. Retrieved April 11, 2014.
 Weed Control Archived 2011-06-02 at the Wayback Machine Boston Globe May 28, 2006. Retrieved on February 15th 2010.
 Murphey, Lance (10 August 2016). "Obama Administration Set to Remove Barrier to Marijuana Research". New York Times. Retrieved 6 January 2021.
 National Medical Affairs Office. "DEA proposes process to expand marijuana research in the United States". Drug Enforcement Administration. Retrieved 6 January 2021.
External links
Official website
List of MAPS staff
vte
Cannabis
vte
Drug policy interest groups (non-nicotine and non-alcohol)
Authority control Edit this at Wikidata	
ISNI: 0000 0004 5913 2227LCCN: no98077685VIAF: 138689656WorldCat Identities (via VIAF): 138689656
Categories: Psychedelic drug researchDrug policy organizations based in the United StatesNon-profit organizations based in CaliforniaOrganizations established in 1986Medical and health organizations based in California501(c)(3) organizations1986 establishments in CaliforniaMedicinal use of cannabis organizations based in the United States





 National Medical Affairs Office. "DEA proposes process to expand marijuana research in the United States". Drug Enforcement Administration. Retrieved 6 January 2021.
https://www.dea.gov/press-releases/2020/03/20/dea-proposes-process-expand-marijuana-research-united-states




 "Psychedelic Research Fundraising Campaign Attracts $30 Million in Donations in 6 Months, Prepares MDMA-Assisted Psychotherapy for FDA Approval". MAPS. 2020-08-20. Archived from the original on 2020-08-24. Retrieved 2020-08-29.
https://maps.org/news/media/8276-press-release-psychedelic-research-fundraising-campaign-attracts-$30-million-in-donations-in-6-months,-prepares-mdma-assisted-psychotherapy-for-fda-approval



 Ramachandran, Shalini (2020-08-20). "WSJ News Exclusive | Silicon Valley and Wall Street Elites Pour Money Into Psychedelic Research". Wall Street Journal. ISSN 0099-9660. Archived from the original on 2020-08-28. Retrieved 2020-08-29.
https://www.wsj.com/articles/silicon-valley-and-wall-street-elites-pour-money-into-psychedelic-research-11597941470





Moral panic
https://en.wikipedia.org/wiki/Moral_panic
A moral panic is a feeling of fear spread among many people that some evil threatens the well-being of society.[1][page needed] It is "the process of arousing social concern over an issue – usually the work of moral entrepreneurs and the mass media".[2]

In recent centuries, the mass media have become important players in the dissemination of moral indignation, even when they do not appear to be consciously engaged in sensationalism or in muckraking. Simply reporting a subset of factual statements without contextual nuance can be enough to generate concern, anxiety, or panic.[3][need quotation to verify] Stanley Cohen states that moral panic happens when "a condition, episode, person or group of persons emerges to become defined as a threat to societal values and interests". Examples of moral panic include the belief in widespread abduction of children by predatory pedophiles,[4][5][6] belief in ritual abuse of women and children by satanic cults,[7] and concerns over the effects of music lyrics.[8]

Some moral panics can become embedded in standard political discourse, which include concepts such as "Red Scare"[9] and terrorism.[10]


Contents
1	Use as a social science term
1.1	British and American differences in definition
2	Cohen's stages of moral panic
3	Mass media
4	Characteristics
5	Examples
5.1	1840s–1860s: Nativist movement and the Know-Nothing Party
5.2	1920s–present: "The Devil's music"
5.3	1950s: Switchblades
5.4	1960s: Mods and rockers
5.5	1970s–present: increase in crime
5.6	1970s–present: violence and video games
5.7	1970s–present: war on drugs
5.8	1970s–present: sex offenders, child sexual abuse, and pedophilia
5.9	1980s–1990s: Dungeons & Dragons
5.10	1980s–1990s: Satanic ritual abuse
5.11	1980s: HIV/AIDS
5.12	Late 1980s and early 1990s: Dangerous Dogs (UK)
5.13	2000–present: human trafficking
5.14	2012–present: anti-gender movement
5.15	2020s: QAnon conspiracy theories
6	Criticism
7	Other uses
8	See also
9	References
10	Further reading
11	External links
Use as a social science term
Marshall McLuhan gave the term academic treatment in his book Understanding Media, written in 1964.[11] According to Cohen, author of a sociological study about youth culture and media titled Folk Devils and Moral Panics (1972),[12] a moral panic occurs when "...[a] condition, episode, person or group of persons emerges to become defined as a threat to societal values and interests".[3] Those who start the panic when they fear a threat to prevailing social or cultural values are known by researchers as 'moral entrepreneurs', while people who supposedly threaten social order have been described as 'folk devils'.

British and American differences in definition
Many sociologists have pointed out the differences between definitions of a moral panic as described by American versus British sociologists.[citation needed] Kenneth Thompson claimed that American sociologists tended to emphasize psychological factors, while the British portrayed "moral panics" as crises of capitalism.[13][14]

British criminologist Jock Young used the term in his participant observation study of drug consumption in Porthmadog between 1967 and 1969.[15] In Policing the Crisis: Mugging, the State and Law and Order (1978), Stuart Hall and his colleagues studied the public reaction to the phenomenon of mugging and the perception that it had recently been imported from American culture into the UK. Employing Cohen's definition of 'moral panic', Hall et al. theorized that the "...rising crime rate equation..." performs an ideological function relating to social control. Crime statistics, in Hall's view, are often manipulated for political and economic purposes; moral panics could thereby be ignited to create public support for the need to "...police the crisis".[16]

Cohen's stages of moral panic
According to Cohen,[3] there are five key stages in the construction of a moral panic:

A condition, episode, person, or group of persons emerges to become defined as a threat to societal values and interests;
Its nature is presented in a stylized and stereotypical fashion by the mass media;
The moral barricades are manned by editors, bishops, politicians and other right-thinking people, and socially accredited experts pronounce their diagnoses and solutions;
Ways of coping are evolved or (more often) resorted to;
The condition then disappears, submerges or deteriorates and becomes more visible.
In 1971, Cohen investigated a series of "moral panics". Cohen used the term "moral panic" to characterize the reactions of the media, the public, and agents of social control to youth disturbances.[3] This work, involving the Mods and Rockers, demonstrated how agents of social control amplified deviance. According to Cohen, these groups were labelled as being outside the central core values of consensual society and as posing a threat to both the values of society and society itself, hence the term "folk devils".[17]

In a more recent edition of Folk Devils and Moral Panics, Cohen suggested that the term "panic" in itself connotes irrationality and a lack of control. Cohen maintained that "panic" is a suitable term when used as an extended metaphor.[3]

Mass media
The concept of "moral panic" has also been linked to certain assumptions about the mass media.[3] Cohen stated that the mass media is the primary source of the public's knowledge about deviance and social problems. He further argued that moral panic gives rise to the folk devil by labelling actions and people.[3] Christian Joppke, furthers the importance of media as he notes, shifts in public attention 'can trigger the decline of movements and fuel the rise of others'.[18]

According to Cohen, the media appear in any or all three roles in moral panic dramas:[3]

Setting the agenda – selecting deviant or socially problematic events deemed as newsworthy, then using finer filters to select which events are candidates for moral panic.
Transmitting the images – transmitting the claims by using the rhetoric of moral panics.
Breaking the silence and making the claim.
Characteristics
Moral panics have several distinct features. According to Goode and Ben-Yehuda, moral panic consists of the following characteristics:[7]

Concern – There must be the belief that the behavior of the group or activity deemed deviant is likely to have a negative effect on society.
Hostility – Hostility toward the group in question increases, and they become "folk devils". A clear division forms between "them" and "us".
Consensus – Though concern does not have to be nationwide, there must be widespread acceptance that the group in question poses a very real threat to society. It is important at this stage that the "moral entrepreneurs" are vocal and the "folk devils" appear weak and disorganized.
Disproportionality – The action taken is disproportionate to the actual threat posed by the accused group.
Volatility – Moral panics are highly volatile and tend to disappear as quickly as they appeared because public interest wanes or news reports change to another narrative.[1]
Writing about the Blue Whale Challenge and the Momo Challenge as examples of moral panics, Benjamin Radford listed themes he commonly observed in modern versions of these phenomena:

Hidden dangers of modern technology.
Evil stranger manipulating the innocent.
A "hidden world" of anonymous evil people.[19]
Examples
Caution
This section is only for "moral panics" which have been found by researchers to meet the criteria set out by Stanley Cohen, as noted above (see Cohen's stages of moral panic).
1840s–1860s: Nativist movement and the Know-Nothing Party
Main articles: Nativism (politics) and Know Nothing
This example reflects the fear of immigrants which emerged in the United States during the 1840s and 1850s. A short-lived national The Know-Nothing Party embodied the Moral Panic Theory, focusing upon Catholic immigrants and labelling them as members of an "out-group". This was due to their rejection of traditional Americanism.[18] Nativist criticism of immigrants from Catholic nations centered upon the control of the Pope over the church. The widespread concern regarding the perceived social threat is exhibited by the showing of the Know-Nothing Party in the Presidential Election of 1856, where they won 21.5% of the total vote share. It is important to note the quick decline in political success for the Know Nothing-Party as a result of a decline in concern for the perceived social threat, an indicative feature of the movements situated in Moral Panic.[20]

1920s–present: "The Devil's music"
Ambox current red Asia Australia.svg
This section needs to be updated. Please update this article to reflect recent events or newly available information. (April 2020)
Over the years, there has been concern of various types of new music, often called "the devil's music", causing spiritual or otherwise moral corruption to younger generations. While the types of music popularly labeled "the devil's music" has changed with time, along with the intended meaning of the term, this basic factor of the moral panic has remained constant. It could thus be argued that this is really a series of smaller moral panics that fall under a larger umbrella. While most notable in the United States, other countries such as Romania[21] have seen exposure to or promotion of the idea as well.

Blues was one of the first music genres to receive this label, mainly due to a perception that it incited violence and other poor behavior.[22][full citation needed] In the early 20th century, the blues was considered disreputable, especially as white audiences began listening to the blues during the 1920s.[citation needed]

Jazz was another early receiver of the label. At the time, traditionalists considered jazz to contribute to the breakdown of morality.[23] Despite the veiled attacks on blues and jazz as "negro music" often going hand-in-hand with other attacks on the genres, urban middle-class African Americans perceived jazz as "devil's music", and agreed with the beliefs that jazz's improvised rhythms and sounds were promoting promiscuity.[24]

Some have speculated that the rock phase of the panic in the 1970s and 1980s contributed to the popularity of the satanic ritual abuse moral panic in the 1980s.[25]

1950s: Switchblades
Main article: Switchblade
In the United States, a 1950 article titled "The Toy That Kills" in the Women's Home Companion,[26] about automatic knives, or "switchblades", sparked significant controversy. It was further fuelled by highly popular films of the late 1950s, including Rebel Without a Cause, Crime in the Streets, 12 Angry Men, The Delinquents, High School Confidential, and the 1957 Broadway musical, West Side Story. Fixation on the switchblade as the symbol of youth violence, sex, and delinquency resulted in demands from the public and Congress to control the sale and possession of such knives.[27][28] State laws restricting or criminalizing switchblade possession and use were adopted by an increasing number of state legislatures, and many of the restrictive laws around them worldwide date back to this period.[citation needed]

1960s: Mods and rockers
Main article: Mods and rockers
In early 1960s Britain, the two main youth subcultures were Mods and Rockers. The "Mods and Rockers" conflict was explored as an instance of moral panic by sociologist Stanley Cohen in his study Folk Devils and Moral Panics,[29] which examined media coverage of the Mod and Rocker riots in the 1960s.[30] Although Cohen acknowledged that Mods and Rockers engaged in street fighting in the mid-1960s, he argued that they were no different from the evening brawls that occurred between non-Mod and non-Rocker youths throughout the 1950s and early 1960s, both at seaside resorts and after football games.[31]

1970s–present: increase in crime
Research shows that fear of increasing crime rates is often the cause of moral panics.[3][16][32][33] Recent studies have shown that despite declining crime rates, this phenomenon, which often taps into a population's "herd mentality", continues to occur in various cultures. Japanese jurist Koichi Hamai explains how the changes in crime recording in Japan since the 1990s caused people to believe that the crime rate was rising and that crimes were getting increasingly severe.[34]

1970s–present: violence and video games
Main article: Violence and video games
There have been calls to regulate violence in video games for nearly as long as the video game industry has existed, with Death Race being a notable early example.[35][36] In the 1990s, improvements in video game technology allowed for more lifelike depictions of violence in games such as Mortal Kombat and Doom. The industry attracted controversy over violent content and concerns about effects they might have on players, generating frequent media stories that attempted to associate video games with violent behavior, in addition to a number of academic studies that reported conflicting findings about the strength of correlations.[35] According to Christopher Ferguson, sensationalist media reports and the scientific community unintentionally worked together in "promoting an unreasonable fear of violent video games".[37] Concerns from parts of the public about violent games led to cautionary, often exaggerated news stories, warnings from politicians and other public figures, and calls for research to prove the connection, which in turn led to studies "speaking beyond the available data and allowing the promulgation of extreme claims without the usual scientific caution and skepticism."[37]

Since the 1990s, there have been attempts to regulate violent video games in the United States through congressional bills as well as within the industry.[35] Public concern and media coverage of violent video games reached a high point following the Columbine High School massacre in 1999, after which videos were found of the perpetrators, Eric Harris and Dylan Klebold, talking about violent games like Doom and making comparisons between the acts they intended to carry out and aspects of games.[35][37]

Ferguson and others have explained the video game moral panic as part of a cycle that all new media go through.[37][38][39] In 2011, the U.S. Supreme Court ruled that legally restricting sales of video games to minors would be unconstitutional and deemed the research presented in favour of regulation, as "unpersuasive".[37]

1970s–present: war on drugs
Main article: War on Drugs
Some critics have pointed to moral panic as an explanation for the War on Drugs. For example, a Royal Society of Arts commission concluded that "the Misuse of Drugs Act 1971 ... is driven more by 'moral panic' than by a practical desire to reduce harm."[40]

Some have written that one of the many rungs supporting the moral panic behind the War on Drugs was a separate but related moral panic, which peaked in the late 1990s, involving media's gross exaggeration of the frequency of the surreptitious use of date rape drugs.[41][32][42] News media have been criticized for advocating "grossly excessive protective measures for women, particularly in coverage between 1996 and 1998," for overstating the threat and for excessively dwelling on the topic.[32] For example, a 2009 Australian study found that drug panel tests were unable to detect any drug in any of the 97 instances of patients admitted to the hospital believing their drinks might have been spiked.[43]

1970s–present: sex offenders, child sexual abuse, and pedophilia
The media narrative of a sex offender, highlighting egregious offenses as typical behaviour of any sex offender, and media distorting the facts of some cases,[44] has led legislators to attack judicial discretion,[44] making sex offender registration mandatory based on certain listed offenses rather than individual risk or the actual severity of the crime, thus practically catching less serious offenders under the domain of harsh sex offender laws. In the 1990s and 2000s, there have been instances of moral panics in the United Kingdom and the United States, related to colloquial uses of the term pedophilia to refer to such unusual crimes as high-profile cases of child abduction.[45]

The moral panic over pedophilia began in the 1970s after the sexual revolution. While homosexuality was becoming more socially accepted after the sexual revolution, pro-contact pedophiles believed that the sexual revolution never helped pro-contact pedophiles.[46] In the 1970s, pro-contact pedophile activist organizations such as Paedophile Information Exchange (PIE) and North American Man/Boy Love Association (NAMBLA) were formed in October 1974 and December 1978, respectively. Despite receiving some support, PIE received much backlash when they advocated for abolishing or lowering age of consent laws. As a result, people protested against PIE.[47] Until the first half of the 1970s, sex was not yet part of the concept of domestic child abuse, which used to be limited to physical abuse and neglect.[48]

The sexual part of child abuse became prominent in the United States due to the encounter of two political agendas: the fight against battered child syndrome by pediatricians during the 1960s and the feminist anti-rape movement, in particular the denunciation of domestic sexual violence.[48] These two movements overlapped in 1975, creating a new political agenda about child sexual abuse. Laura Lowenkron wrote: "The strong political and emotional appeal of the theme of 'child sexual abuse' strengthened the feminist criticism of the patriarchal family structure, according to which domestic violence is linked to the unequal power between men and women and between adults and children."[48] Although the concern over child sexual abuse was caused by feminists, the concern over child sexual abuse also attracted traditional groups and conservative groups. Lowenkron wrote: "Concerned about the increasing expansion and acceptance of so-called 'sexual deviations' during what was called the libertarian age from the 1960s to the early 1970s," conservative groups and traditional groups "saw in the fight against 'child sexual abuse' the chance" to "revive fears about crime and sexual dangers".[48]

The moral panic over sex offenders and pedophiles became very intense in the early 1980s. In the 1980s, the media began to report more frequently on cases of children being raped, kidnapped or murdered. In 1981, a 6-year-old boy named Adam Walsh was abducted, murdered, and beheaded. Investigators believe the murderer was serial killer Ottis Toole. The murder of Adam Walsh took over nationwide news and led to a moral panic over child abduction. After Adam Walsh was killed, new laws for missing children were created.[49] According to criminologist Richard Moran, "[The Adam Walsh case] created a nation of petrified kids and paranoid parents. [...] Kids used to be able to go out and organize a stickball game, and now all playdates and the social lives of children are arranged and controlled by the parents."[49] During the 1980s, inaccurate and heavily flawed data about sex offenders and their recidivism rates was published. This data led to society believing that sex offenders have a particularly high recidivism rate, which led to the creation of sex offender registries.[50] Later information revealed that sex offenders, including child sex offenders, have a low recidivism rate.[50][51][52][53][54] Other highly publicized cases, similar to the murder of Adam Walsh, include the abduction and murder of eleven-year-old boy Jacob Wetterling in 1989, the rape and murder of seven-year-old girl Megan Kanka in 1994, and the rape and murder of nine-year-old girl Jessica Lunsford in 2005. These cases of children being killed, raped and/or abducted led to a creation of sex offender registries and sex offender laws.[50] Another contributing factor in the moral panic over pedophiles and sex offenders was the day-care sex-abuse hysteria in the 1980s and early 1990s, including the McMartin preschool trial. This led to a moral panic where parents became hypervigilant with concerns of predatory child sex offenders seeking to abduct children in public spaces, such as playgrounds.[55]

Society's opinion on sex offenders is generally extremely negative, with sex offenders being one of the most hated types of people in society.[56] Daniel J. Wood wrote, "Many studies have been conducted to evaluate the public's attitude toward sex offenders and most, to put it bluntly, would like to torture them before they are sentenced to death".[50] Pedophiles and child molesters are also some of the most hated types of people in society.[57][58] Pedophilia in particular is extremely despised, which some have referred to as a social stigma.[59] One study reported high levels of anger, fear and social rejection towards pedophiles who have not committed a crime.[60] Society's attitude towards child sexual abuse is extremely negative, with some surveys ranking child sexual abuse as morally worse than murder.[61]

1980s–1990s: Dungeons & Dragons
Main article: Dungeons & Dragons controversies
At various times, Dungeons & Dragons and other tabletop role-playing games have been accused of promoting such practices as Satanism, witchcraft, suicide, pornography and murder. In the 1980s and later, some groups, especially fundamentalist Christian groups, accused the games of encouraging interest in sorcery and the veneration of demons.[62]

1980s–1990s: Satanic ritual abuse
Main article: Satanic ritual abuse
Also known as the "satanic panic", this was a series of moral panics regarding Satanic ritual abuse that originated in the United States and spread to other English-speaking countries in the 1980s and 1990s, which led to a string of wrongful convictions.[7][45][63][64]

1980s: HIV/AIDS
Acquired immune deficiency syndrome (AIDS) may lead to or exacerbate other health conditions such as pneumonia, fungal infections, tuberculosis, toxoplasmosis, and cytomegalovirus. A meeting of the British Sociological Association's South West and Wales Study entitled "AIDS: The Latest Moral Panic" was prompted by the growing interest of medical sociologists in AIDS, as well as that of UK health care professionals working in the field of health education. It took place at a time when both groups were beginning to voice an increased concern with the growing media attention and fear-mongering that AIDS was attracting.[65] In the 1980s, a moral panic was created within the media over HIV/AIDS. For example, in Britain, a prominent advertisement by the government[66] suggested that the public was uninformed about HIV/AIDS due to a lack of publicly accessible and accurate information.[citation needed]

The media outlets nicknamed HIV/AIDS the "gay plague", which further stigmatized the disease. However, scientists gained a far better understanding of HIV/AIDS as it grew in the 1980s and moved into the 1990s and beyond. The illness was still negatively viewed by many as either being caused by or passed on through the gay community. Once it became clear that this was not the case, the moral panic created by the media changed to blaming the overall negligence of ethical standards by the younger generation (both male and female), resulting in another moral panic. Authors behind AIDS: Rights, Risk, and Reason argued that "British TV and press coverage is locked into an agenda which blocks out any approach to the subject which does not conform in advance to the values and language of a profoundly homophobic culture—a culture that does not regard gay men as fully or properly human. No distinction obtains for the agenda between 'quality' and 'tabloid' newspapers, or between 'popular' and 'serious' television."[67]

In the 1990s, blame shifted to "uncivilized Africans" as the new "folk devils", with a popular theory alleging that HIV originated from humans having sex with simians. This theory was debunked by numerous experts.[68]

Late 1980s and early 1990s: Dangerous Dogs (UK)
After a series of high-profile dog attacks on children in the United Kingdom, the British press began to engage in a campaign against so-called dangerous dog breeds, especially Pit Bull Terriers and Rottweilers, which bore all the hallmarks of a moral panic.[69][70][71] This media pressure led the government to hastily introduce the Dangerous Dogs Act 1991 which has been criticised as "among the worst pieces of legislation ever seen, a poorly thought-out knee-jerk reaction to tabloid headlines that was rushed through Parliament without proper scrutiny".[72] The act specifically focused on Pit Bulls, which were associated with the lower social strata of British society, rather than the Rottweilers and Dobermann-pinschers generally owned by richer social groups. Critics have identified the presence of social class as a factor in the dangerous dogs moral panic, with establishment anxieties about the "sub-proletarian" sector of British society displaced onto the folk devil of the "Dangerous dog".[70][71]

2000–present: human trafficking
Many critics of contemporary anti-prostitution activism argue that much of the current concern about human trafficking and its more general conflation with prostitution and other forms of sex work have hallmarks of moral panic. They further argue that this moral panic shares much in common with the 'white slavery' panic of a century earlier, which prompted passage of the 1910 Mann Act.[73][74][75][76][77]

2012–present: anti-gender movement
The anti-gender movement in Latin America, Caribbean, Central America, Sub-saharan Africa, East Europe, Poland, part of Balkans, part of Caucasus and parts of the United States and Islamic world has been described as a moral panic.[78][79] This movement has been described as a transphobic reaction to the increased prevalence of transgender rights.[80]

2020s: QAnon conspiracy theories
Main article: QAnon
QAnon, a late-2010s to early 2020s far-right conspiracy theory that began on 4chan and which alleged that a secret cabal of Satan-worshipping, cannibalistic pedophiles is running a global child sex-trafficking ring, has been described as a moral panic and compared to the 1980s panic over satanic ritual abuse.[81]

Criticism
Paul Joosse has argued that while classic moral panic theory styled itself as being part of the "sceptical revolution" that sought to critique structural functionalism, it is actually very similar to Émile Durkheim's depiction of how the collective conscience is strengthened through its reactions to deviance (in Cohen's case, for example, 'right-thinkers' use folk devils to strengthen societal orthodoxies). In his analysis of Donald Trump's victory in the 2016 United States presidential election, Joosse reimagined moral panic in Weberian terms, showing how charismatic moral entrepreneurs can at once deride folk devils in the traditional sense while avoiding the conservative moral recapitulation that classic moral panic theory predicts.[82] Another criticism is that of disproportionality: there is no way to measure what a proportionate reaction should be to a specific action.[3]:xxvi–xxxi

Writing in 1995 about the moral panic that arose in the UK after a series of murders by juveniles, chiefly that of two-year-old James Bulger by two ten-year-old boys but also including that of 70-year-old Edna Phillips by two 17-year-old girls, the sociologist Colin Hay pointed out that the folk devil was ambiguous in such cases; the child perpetrators would normally be thought of as innocent.[83]

In "Rethinking 'moral panic' for multi-mediated social worlds", Angela McRobbie and Sarah Thornton argued "that it is now time that every stage in the process of constructing a moral panic, as well as the social relations which support it, should be revised." Their argument is that mass media has changed since the concept of moral panic emerged so "that 'folk devils' are less marginalized than they once were", and that 'folk devils' are not only castigated by mass media but supported and defended by it as well. They also suggest that the "points of social control" that moral panics used to rest on "have undergone some degree of shift, if not transformation."[84]

The British criminologist Yvonne Jewkes has also raised issue with the term 'morality', how it is accepted unproblematically in the concept of 'moral panic' and how most research into moral panics fails to approach the term critically but instead accepts it at face value.[85] Jewkes goes on to argue that the thesis and the way it has been used fails to distinguish between crimes that quite rightly offend human morality, and thus elicit a justifiable reaction, and those that demonise minorities. The public are not sufficiently gullible to keep accepting the latter and consequently allow themselves to be manipulated by the media and the government.[85]

Another British criminologist, Steve Hall, goes a step further to suggest that the term 'moral panic' is a fundamental category error. Hall argues that although some crimes are sensationalized by the media, in the general structure of the crime/control narrative the ability of the existing state and criminal justice system to protect the public is also overstated. Public concern is whipped up only for the purpose of being soothed, which produces not panic but the opposite, comfort and complacency.[86]

Echoing another point Hall makes, the sociologists Thompson and Williams argue that the concept of 'moral panic' is not a rational response to the phenomenon of social reaction, but itself a product of the irrational middle-class fear of the imagined working-class 'mob'. Using as an example a peaceful and lawful protest staged by local mothers against the re-housing of sex-offenders on their estate, Thompson and Williams show how the sensationalist demonization of the protesters by moral panic theorists and the liberal press was just as irrational as the demonization of the sex offenders by the protesters and the tabloid press.[87]

Many sociologists and criminologists (Ungar, Hier, Rohloff) have revised Cohen's original framework. The revisions are compatible with the way in which Cohen theorizes panics in the third Introduction to Folk Devils and Moral Panics.[88]

Other uses
The term was used in 1830, in a way that completely differs from its modern social science application, by a religious magazine[89] regarding a sermon.[90]:250 The phrase was used again in 1831, with an intent that is possibly closer to its modern use.[91]

See also
	Psychology portal
icon	Society portal
Antisemitic canard
Blood libel
Deviance (sociology)
Fear mongering
Labeling theory
LGBT ideology-free zone
List of common misconceptions
List of mass hysteria cases
Major Boobage, a fictional depiction of one
Moral entrepreneur
Persecutory delusion
Recovered-memory therapy
Satanic ritual abuse
Social mania
Social panic
Social stigma
Think of the children
Witch-hunt
Witch trials in the early modern period





Moral entrepreneur
https://en.wikipedia.org/wiki/Moral_entrepreneur
A moral entrepreneur is an individual, group, or formal organization that seeks to influence a group to adopt or maintain a norm; altering the boundaries of altruism, deviance, duty or compassion.[1]

Moral entrepreneurs take the lead in labeling a particular behaviour and spreading or popularizing this label throughout society. This can include attributing negative labels to behaviour, the removal of negative labels, positive labeling, and the removal of positive labels. The moral entrepreneur may press for the creation or enforcement of a norm for any number of reasons, altruistic or selfish. Such individuals or groups also hold the power to generate moral panic; similarly, multiple moral entrepreneurs may have conflicting goals and work to counteract each other. Some examples of moral entrepreneurs include: MADD (mothers against drunk driving), the anti-tobacco lobby, the gun-control lobby, anti-pornography groups, Black Lives Matter and LGBT social movements, as well as the pro-life and pro-choice movements, which are an example of two moral entrepreneurs working against each other on a single issue.


Contents
1	Rule creator and rule enforcer
2	Social problems
3	Lawmaking
4	See also
5	References
Rule creator and rule enforcer
Part of a series on
Sociology
Social Network Diagram (segment).svg
HistoryOutlineIndex
Methods
Subfields
CriminologyCritical theoryCultureDemographyDevelopmentDevianceEconomicEducationEnvironmentalFamilyFeministGenderHealthImmigrationIndustrialKnowledgeLawLiteratureMedicalMilitaryOrganizationalPoliticalRace and ethnicityReligionRuralScienceSocial movementsSocial psychologySymbolic interactionismStratificationTechnologyTerrorismUrban
People
Historical perspectives
Lists
Social sciences.svg Society portal
vte
The term moral entrepreneur was coined by sociologist Howard S. Becker in Outsiders: Studies in the Sociology of Deviance (1963) in order to help explore the relationship between law and morality, as well as to explain how deviant social categories become defined and entrenched.[1] In Becker's view, moral entrepreneurs fall into roughly two categories: rule creators, and rule enforcers.[2]

Rule creators generally express the conviction that some kind of threatening social evil exists that must be combated. "The prototype of the rule creator," Becker explains, is the "crusading reformer:"[1]

He is interested in the content of rules. The existing rules do not satisfy him because there is some evil which profoundly disturbs him. He feels that nothing can be right in the world until rules are made to correct it. He operates with an absolute ethic; what he sees is truly and totally evil with no qualification. Any means is justified to do away with it. The crusader is fervent and righteous, often self-righteous.[2]:147–8

These moral crusaders are concerned chiefly with the successful persuasion of others, but are not concerned with the means by which this persuasion is achieved. Successful moral crusades are generally dominated by those in the upper social strata of society.[2] They often include religious groups, lawmaking bodies, and stakeholders in a given field. There is political competition in which these moral crusaders originate crusades aimed at generating reform, based on what they think is moral, therefore defining deviance. Moral crusaders must have power, public support, generate public awareness of the issue, and be able to propose a clear and acceptable solution to the problem.[2] The degree of a moral entrepreneur's power is highly dependent upon the social and cultural context.[3] Social position determines one's ability to define and construct reality; therefore, the higher one's social position, the greater his or her moral value.

After a time, crusaders become dependent upon experts or professionals, who serve to legitimize a moral creed on technical or scientific grounds. Rule enforcers, such as policemen, are compelled by two drives: the need to justify their own role, and the need to win respect in interactions. They are in a bind; if they show too much effectiveness one might say they are not needed, and if they show too little effectiveness one might say they are failing. Rule enforcers just feel the need to enforce the rule because that is their job; they are not really concerned with the content of the rule. As rules are changed, something that was once acceptable may now be punished and vice versa. Such officials tend to take a pessimistic view of human nature because of constant exposure to willful deviance.

The sociology of social control seeks to predict and explain the behavior of both rule creators and rule enforcers. The creation and application of explicit rules are seen as characteristics of moralism, or the tendency to treat people as enemies. Among the social conditions that are identified as sources of moralism are status superiority and social remoteness between the agents of social control and the people whose behavior they regulate. Thus, the most likely targets of both rule creators and rule enforcers are those who are socially inferior, culturally different, and personally unknown.[4] It is their behavior that is most likely to seem objectionable and to call forth the strenuous efforts of moral entrepreneurs. Once moral entrepreneurs or claimsmakers define the behaviors of these individuals or groups as deviant or a moral threat, then the entire group may be seen by society as a deviant subculture. Similarly, they or their behavior may be seen as the roots of the next moral panic. This is often the goal of the moral entrepreneurs; to rally the support of society behind their specific aims through the redefining of behaviors and groups as deviant or problematic. Alternately, those individuals with social power, wealth, high status, or large public support bases are the most likely to assert this power and to act as a moral entrepreneur.[5]

Social problems
Social problems are born largely from socially constructed campaigns by moral entrepreneurs. In the symbolic interactionist approach to social problems (including labeling theory), social policy is not seen as the implementation of a shared consensus about what is best. Rather, the society is viewed as consisting of a plurality of understandings of what is best. In order for social policy to arise, some individual or group has to initiate a social movement whose task is to articulate a definition of a social problem such that a desired social policy is consistent with this definition of the problem. These individuals or groups are referred to as moral entrepreneurs.

According to Richard Posner—who was also influential to the concept of moral entrepreneurship, after Howard Becker[1]—Moral entrepreneurs are people with "the power to change our moral intuitions." They do not use rational argument, according to Posner:

Rather, they mix appeals to self-interest with emotional appeals that bypass our rational calculating faculty and stir inarticulable feelings of oneness with or separateness from the people (or it could be land, or animals) that are to constitute, or be ejected from, the community that the moral entrepreneur is trying to create. They teach us to love or hate whom they love or hate.[6]:42

Moral entrepreneurs are critical for moral emergence because they call attention to issues, or even 'create' issues, by using language that names, interprets, and dramatizes them.[7] Typifying is a prominent rhetorical tool employed by moral entrepreneurs when attempting to define social problems. Typification is when claimsmakers characterize a problem's nature which is most commonly done by suggesting that a problem is best understood from a particular perspective (i.e. medical, moral, criminal, political, etc.).[8] Therefore, moral entrepreneurs often engage in typification by claiming that certain behaviors or groups are acting in morally dangerous ways. Moral entrepreneurs are more successful at defining deviance when they can identify an entire group with a particular behavior and create fear that the behavior represents a danger not only to the group but also to the rest of society. Through typification and the creation of a dangerous class, moral entrepreneurs aim to place the activities of a particular group on the public's agenda and label certain actions as social problems.[9]

Claimsmakers in areas such as the problem of drinking and driving, child abuse, or date rape, play an important role in the creation of the rhetoric that creates and determines what is deviant and what is a considered a problem in society.[10] Through creating and popularizing definitions for terms relevant to the issue (such as "rape", "abuse" and "drunk"), claimsmakers and moral entrepreneurs can not only further their interests, but also sway the social movement and understanding of the issues themselves.

Lawmaking
Moral entrepreneurs are also central in the construction of social deviance, including the development of drug scares. The role of moral entrepreneurs in this instance, for example, is to assign responsibility to drugs for an array of preexisting public problems.[3] Over the course of the past century, drug laws have been passed with the intent of reducing drug problems; even if they have not done this, they have certainly expanded the power of the social control held by moral entrepreneurs.[3] Examples of laws created by moral entrepreneurship include those during prohibition in the United States, San Francisco's anti-opium den ordinance of 1875, and the Harrison Narcotics Tax Act of 1914.

See also
Deviance (sociology)
Labeling theory
Moral panic
Norm entrepreneur
Norm (social)
Lobbying





Category:Entheogens
https://commons.wikimedia.org/wiki/Category:Entheogens






Category:Cannabis
https://commons.wikimedia.org/wiki/Category:Cannabis
Included species (for ITIS & NCBI & The Plant List,  22 February 2014):
C. sativa
GRIN link : Cannabis L. (+species list (Note: includes synonyms))
ITIS link: Cannabis L. (mirror)
NCBI link: Cannabis
The Plant List link: Cannabis
Subcategories
This category has the following 35 subcategories, out of 35 total.

 
Cannabis by country‎ (35 C)
Cannabis by sex‎ (2 C)
Cannabis by strain‎ (37 C)
Cannabis in art‎ (4 C, 2 F)
Cannabis by continent‎ (7 C)
*
Cannabinoids‎ (14 C, 264 F)
Cannabis in the Americas‎ (2 C)
B
Cannabis - botanical illustrations‎ (1 C)
Budtenders‎ (2 F)
C
Cannabis research‎ (1 C)
Chlorodyne‎ (1 F)
Consumption of cannabis‎ (8 C, 8 F)
Cannabis cultivation‎ (4 C, 24 F)
Cannabis culture‎ (16 C, 57 F)
D
Diseases and disorders of Cannabis‎ (8 F)
G
Grow shops‎ (2 C, 1 F)
H
Hemp‎ (16 C, 56 F)
Cannabis (herbarium specimens)‎ (1 C)
History of cannabis‎ (1 C, 1 F)
L
Cannabis laws‎ (3 C, 17 F)
Cannabis leaves‎ (1 C, 133 F)
M
Cannabis in media‎ (3 C, 2 F)
Medical cannabis‎ (6 C, 1 P, 85 F)
Munchies‎ (1 F)
O
Cannabis organizations‎ (4 C, 3 F)
P
Products from cannabis‎ (8 C, 11 F)
R
Cannabis and religion‎ (1 C, 1 F)
S
Cannabis sativa‎ (11 C, 1 P, 122 F)
Cannabis (seedlings)‎ (1 C, 14 F)
Cannabis seeds‎ (2 C, 1 P, 7 F)
Cannabis statistics‎ (1 F)
T
Cannabis tests‎ (1 C)
Cannabis textures‎ (24 F)
V
Videos of Cannabis‎ (3 C, 8 F)
W
WikiProject Cannabis‎ (4 F)

Gallery Slideshow

Category Slideshow
Media in category "Cannabis"
The following 200 files are in this category, out of 405 total.

(previous page) (next page)
07-26-19-KBL-Definitive-FINAL.pdf
07-26-19-KBL-Definitive-FINAL.pdf1,275 × 1,650, 6 pages; 117 KB
 
5596898-PPT.jpg
5596898-PPT.jpg576 × 768; 148 KB
 
Amsterdam Genetics Papers.jpg
Amsterdam Genetics Papers.jpg3,150 × 3,150; 567 KB
 
ASHARIO-1.png
ASHARIO-1.png1,620 × 1,620; 87 KB
 
ASHARIO.png
ASHARIO.png1,080 × 1,080; 55 KB
 
Author Dr. Tod Mikuriya.jpg
Author Dr. Tod Mikuriya.jpg200 × 256; 18 KB
 
Baked Bros Infused Gummies.jpg
Baked Bros Infused Gummies.jpg3,339 × 3,339; 742 KB
 
Bankruptcy for Marijuana Businesses (IA BankruptcyforMarijuanaBusinesses-crs).pdf
Bankruptcy for Marijuana Businesses (IA BankruptcyforMarijuanaBusinesses-crs).pdf1,275 × 1,650, 2 pages; 57 KB
 
Blooming cannabis plant by My 420 Tours.jpg
Blooming cannabis plant by My 420 Tours.jpg2,203 × 1,813; 2.39 MB
 
Blue dream strain.jpg
Blue dream strain.jpg500 × 500; 78 KB
 
Bodily effects of cannabis fa.png
Bodily effects of cannabis fa.png1,240 × 1,754; 936 KB
 
BOEREJONGENS COFFEESHOP WEST AMSTERDAM - FRONT.jpg
BOEREJONGENS COFFEESHOP WEST AMSTERDAM - FRONT.jpg4,240 × 2,832; 11.35 MB
 
Border Patrol Seizes $76,000 in Marijuana, Arrest Two Felons (30097681946).jpg
Border Patrol Seizes $76,000 in Marijuana, Arrest Two Felons (30097681946).jpg3,960 × 2,970; 1.6 MB
 
Brad Bann- "The Thomas Edison of 420".jpg
Brad Bann- "The Thomas Edison of 420".jpg2,048 × 1,536; 669 KB
 
Bundesarchiv Bild 183-1990-0207-025, Postzollamt Potsdam, Kochbuch mit Cannabisharz.jpg
Bundesarchiv Bild 183-1990-0207-025, Postzollamt Potsdam, Kochbuch mit Cannabisharz.jpg800 × 570; 49 KB
 
Buy Obama Kush.jpg
Buy Obama Kush.jpg800 × 534; 113 KB
 
Campo de producción de Blockcannan.jpg
Campo de producción de Blockcannan.jpg1,280 × 960; 178 KB
 
Cannabis 20150514 144255 (17451042159).jpg
Cannabis 20150514 144255 (17451042159).jpg5,312 × 2,988; 3.67 MB
 
Cannabis 20150514 144316 (17451030069).jpg
Cannabis 20150514 144316 (17451030069).jpg5,312 × 2,988; 3.92 MB
 
Cannabis 20160411 093402 (26092404540).jpg
Cannabis 20160411 093402 (26092404540).jpg3,984 × 2,988; 6.64 MB
 
Cannabis 20160418 230632 (25922094784).jpg
Cannabis 20160418 230632 (25922094784).jpg5,312 × 2,988; 4.13 MB
 
Cannabis 20160419 193957 (26501092976).jpg
Cannabis 20160419 193957 (26501092976).jpg2,988 × 5,312; 3.57 MB
 
Cannabis 20160419 194044 (26501091656).jpg
Cannabis 20160419 194044 (26501091656).jpg2,988 × 5,312; 3.48 MB
 
Cannabis 20160419 194157 (26254181830).jpg
Cannabis 20160419 194157 (26254181830).jpg1,440 × 2,560; 1.91 MB
 
Cannabis 20160521 092829 (26568559603).jpg
Cannabis 20160521 092829 (26568559603).jpg3,984 × 2,988; 4.38 MB
 
Cannabis 20160521 092843 (26898739430).jpg
Cannabis 20160521 092843 (26898739430).jpg3,984 × 2,988; 4.57 MB
 
Cannabis 420 (17114682080).jpg
Cannabis 420 (17114682080).jpg5,312 × 2,988; 5.28 MB
 
Cannabis ADL1 (27561872372).jpg
Cannabis ADL1 (27561872372).jpg6,016 × 4,000; 11.84 MB
 
Cannabis ADL2 (27051831473).jpg
Cannabis ADL2 (27051831473).jpg6,016 × 4,000; 11.1 MB
 
Cannabis and Beer Brewery Tour.jpg
Cannabis and Beer Brewery Tour.jpg3,052 × 2,196; 3.17 MB
 
Cannabis and sativa properties and effects.png
Cannabis and sativa properties and effects.png539 × 332; 89 KB
 
Cannabis ANQ1 (27662111955).jpg
Cannabis ANQ1 (27662111955).jpg6,016 × 4,000; 9.83 MB
 
Cannabis ANQ2 (27050458424).jpg
Cannabis ANQ2 (27050458424).jpg6,016 × 4,000; 8.92 MB
 
Cannabis Cheese (17160084321).jpg
Cannabis Cheese (17160084321).jpg6,016 × 4,000; 6.08 MB
 
Cannabis Closeup 01.jpg
Cannabis Closeup 01.jpg3,587 × 2,782; 1.55 MB
 
Cannabis Closeup 02.jpg
Cannabis Closeup 02.jpg5,932 × 3,876; 2.22 MB
 
Cannabis Closeup 03.jpg
Cannabis Closeup 03.jpg1,600 × 1,200; 319 KB
 
Cannabis Cream for Pain.jpg
Cannabis Cream for Pain.jpg6,000 × 4,000; 4.47 MB
 
Cannabis crop growing in the Seychelles.jpg
Cannabis crop growing in the Seychelles.jpg640 × 479; 179 KB
 
Cannabis Cut the crop (17152907366).jpg
Cannabis Cut the crop (17152907366).jpg6,016 × 4,000; 5.89 MB
 
Cannabis cuttings (28460057610).jpg
Cannabis cuttings (28460057610).jpg6,016 × 4,000; 7.84 MB
 
Cannabis Delivered - Billboard - Culver City - Los Angeles - California - USA (46257212745).jpg
Cannabis Delivered - Billboard - Culver City - Los Angeles - California - USA (46257212745).jpg3,648 × 2,736; 1.56 MB
 
Cannabis Dispensary flower.jpg
Cannabis Dispensary flower.jpg4,048 × 3,036; 3.67 MB
 
Cannabis dispensary strains.jpg
Cannabis dispensary strains.jpg2,315 × 1,736; 2.81 MB
 
Cannabis Dispensary.jpg
Cannabis Dispensary.jpg1,548 × 1,818; 2.62 MB
 
Cannabis Drying out the crop (16558794823).jpg
Cannabis Drying out the crop (16558794823).jpg6,016 × 4,000; 6.75 MB
 
Cannabis Drying the weed (16991199408).jpg
Cannabis Drying the weed (16991199408).jpg6,016 × 4,000; 6.01 MB
 
Cannabis DSC 0011 (25519832215).jpg
Cannabis DSC 0011 (25519832215).jpg6,016 × 4,000; 6.26 MB
 
Cannabis DSC 0014 (25224205620).jpg
Cannabis DSC 0014 (25224205620).jpg6,016 × 4,000; 7.11 MB
 
Cannabis DSC 0019 (25401315122).jpg
Cannabis DSC 0019 (25401315122).jpg6,016 × 4,000; 6.09 MB
 
Cannabis DSC 0021 (25401310522).jpg
Cannabis DSC 0021 (25401310522).jpg6,016 × 4,000; 6.15 MB
 
Cannabis DSC 0026 (25224190860).jpg
Cannabis DSC 0026 (25224190860).jpg6,016 × 4,000; 6.39 MB
 
Cannabis DSC 0030 (25519806065).jpg
Cannabis DSC 0030 (25519806065).jpg6,016 × 4,000; 6.24 MB
 
Cannabis DSC 0038 (25427199611).jpg
Cannabis DSC 0038 (25427199611).jpg6,016 × 4,000; 6.18 MB
 
Cannabis DSC 0048 (25519800785).jpg
Cannabis DSC 0048 (25519800785).jpg6,016 × 4,000; 6.16 MB
 
Cannabis DSC 0051 (25152260649).jpg
Cannabis DSC 0051 (25152260649).jpg4,000 × 6,016; 5.94 MB
 
Cannabis DSC 0084 (25519782525).jpg
Cannabis DSC 0084 (25519782525).jpg6,016 × 4,000; 6.05 MB
 
Cannabis DSC 0087 (25401282762).jpg
Cannabis DSC 0087 (25401282762).jpg6,016 × 4,000; 6.29 MB
 
Cannabis DSC 0096 (25519791755).jpg
Cannabis DSC 0096 (25519791755).jpg6,016 × 4,000; 6.29 MB
 
Cannabis DSC 0099 (24889449004).jpg
Cannabis DSC 0099 (24889449004).jpg6,016 × 4,000; 6.23 MB
 
Cannabis DSC 0118 (25493417146).jpg
Cannabis DSC 0118 (25493417146).jpg6,016 × 4,000; 6.49 MB
 
Cannabis DSC 0120 (25401032062).jpg
Cannabis DSC 0120 (25401032062).jpg6,016 × 4,000; 6.29 MB
 
Cannabis DSC 0132 (25694842792).jpg
Cannabis DSC 0132 (25694842792).jpg6,016 × 4,000; 7.27 MB
 
Cannabis DSC 0133 (25189176033).jpg
Cannabis DSC 0133 (25189176033).jpg4,000 × 6,016; 6.41 MB
 
Cannabis DSC 0142 (25694823342).jpg
Cannabis DSC 0142 (25694823342).jpg6,016 × 4,000; 7 MB
 
Cannabis DSC 0155 (26115094056).jpg
Cannabis DSC 0155 (26115094056).jpg6,016 × 4,000; 6.26 MB
 
Cannabis DSC 0161 (17143770121).jpg
Cannabis DSC 0161 (17143770121).jpg6,016 × 4,000; 5.38 MB
 
Cannabis DSC 0264 (25750954423).jpg
Cannabis DSC 0264 (25750954423).jpg6,016 × 4,000; 6.55 MB
 
Cannabis DSC 0279 (26353676615).jpg
Cannabis DSC 0279 (26353676615).jpg6,016 × 4,000; 3.77 MB
 
Cannabis DSC 0410 (26635592066).jpg
Cannabis DSC 0410 (26635592066).jpg6,016 × 4,000; 6.12 MB
 
Cannabis DSC 0422 (26596683291).jpg
Cannabis DSC 0422 (26596683291).jpg4,000 × 6,016; 6.11 MB
 
Cannabis DSC 0434 (26635555966).jpg
Cannabis DSC 0434 (26635555966).jpg6,016 × 4,000; 6.17 MB
 
Cannabis DSC 0445 (26056566854).jpg
Cannabis DSC 0445 (26056566854).jpg6,016 × 4,000; 6.15 MB
 
Cannabis DSC 0459 (16936965867).jpg
Cannabis DSC 0459 (16936965867).jpg6,016 × 4,000; 5.42 MB
 
Cannabis DSC 0468 (26615768982).jpg
Cannabis DSC 0468 (26615768982).jpg6,016 × 4,000; 6.23 MB
 
Cannabis DSC 0469 (26642567251).jpg
Cannabis DSC 0469 (26642567251).jpg6,016 × 4,000; 6.33 MB
 
Cannabis DSC 0477 (26861848681).jpg
Cannabis DSC 0477 (26861848681).jpg6,016 × 4,000; 5.54 MB
 
Cannabis DSC 0481 (16956559998).jpg
Cannabis DSC 0481 (16956559998).jpg6,016 × 4,000; 5.54 MB
 
Cannabis DSC 0481 (26929099775).jpg
Cannabis DSC 0481 (26929099775).jpg6,016 × 4,000; 5.9 MB
 
Cannabis DSC 0483 (26929098325).jpg
Cannabis DSC 0483 (26929098325).jpg6,016 × 4,000; 6.23 MB
 
Cannabis DSC 0490 (26835429372).jpg
Cannabis DSC 0490 (26835429372).jpg6,016 × 4,000; 6.37 MB
 
Cannabis DSC 0494 (26861842681).jpg
Cannabis DSC 0494 (26861842681).jpg4,000 × 6,016; 6.11 MB
 
Cannabis DSC 0495 (26895557066).jpg
Cannabis DSC 0495 (26895557066).jpg4,000 × 6,016; 5.71 MB
 
Cannabis DSC 0501 (26325111693).jpg
Cannabis DSC 0501 (26325111693).jpg6,016 × 4,000; 6.13 MB
 
Cannabis DSC 0510 (27179165815).jpg
Cannabis DSC 0510 (27179165815).jpg6,016 × 4,000; 6.11 MB
 
Cannabis DSC 0511 (26574684203).jpg
Cannabis DSC 0511 (26574684203).jpg6,016 × 4,000; 6.16 MB
 
Cannabis DSC 0512 (27179163935).jpg
Cannabis DSC 0512 (27179163935).jpg6,016 × 4,000; 6.16 MB
 
Cannabis DSC 0513 (27146027016).jpg
Cannabis DSC 0513 (27146027016).jpg6,016 × 4,000; 6.17 MB
 
Cannabis DSC 0582 (28712529966).jpg
Cannabis DSC 0582 (28712529966).jpg5,536 × 3,681; 10.08 MB
 
Cannabis DSC 0595 (28748825481).jpg
Cannabis DSC 0595 (28748825481).jpg6,016 × 4,000; 5.57 MB
 
Cannabis DSC 0604 (28793863756).jpg
Cannabis DSC 0604 (28793863756).jpg6,016 × 4,000; 5.72 MB
 
Cannabis DSC 0773 (25519929525).jpg
Cannabis DSC 0773 (25519929525).jpg6,016 × 4,000; 6.48 MB
 
Cannabis DSC 0775 (25224316830).jpg
Cannabis DSC 0775 (25224316830).jpg6,016 × 4,000; 6.56 MB
 
Cannabis DSC 0842 (25224300490).jpg
Cannabis DSC 0842 (25224300490).jpg6,016 × 4,000; 7.27 MB
 
Cannabis DSC 0845 (24893204033).jpg
Cannabis DSC 0845 (24893204033).jpg6,016 × 4,000; 7.18 MB
 
Cannabis DSC 0850 (25493819036).jpg
Cannabis DSC 0850 (25493819036).jpg6,016 × 4,000; 6.44 MB
 
Cannabis DSC 0866 (25427135131).jpg
Cannabis DSC 0866 (25427135131).jpg6,016 × 4,000; 5.8 MB
 
Cannabis DSC 0871 (25493824436).jpg
Cannabis DSC 0871 (25493824436).jpg6,016 × 4,000; 7.25 MB
 
Cannabis DSC 0872 (25519908335).jpg
Cannabis DSC 0872 (25519908335).jpg6,016 × 4,000; 6.12 MB
 
Cannabis DSC 0875 (25427178751).jpg
Cannabis DSC 0875 (25427178751).jpg6,016 × 4,000; 6.26 MB
 
Cannabis DSC 0876 (25427183861).jpg
Cannabis DSC 0876 (25427183861).jpg6,016 × 4,000; 6.35 MB
 
Cannabis DSC 0887 (25401396412).jpg
Cannabis DSC 0887 (25401396412).jpg6,016 × 4,000; 6.29 MB
 
Cannabis DSC 0928 (25519892305).jpg
Cannabis DSC 0928 (25519892305).jpg6,016 × 4,000; 6.14 MB
 
Cannabis DSC 0935 (25152360439).jpg
Cannabis DSC 0935 (25152360439).jpg6,016 × 4,000; 5.55 MB
 
Cannabis DSC 0938 (25519886735).jpg
Cannabis DSC 0938 (25519886735).jpg6,016 × 4,000; 6.28 MB
 
Cannabis DSC 1051 (25427081221).jpg
Cannabis DSC 1051 (25427081221).jpg6,016 × 4,000; 6.79 MB
 
Cannabis DSC 1054 (25401460372).jpg
Cannabis DSC 1054 (25401460372).jpg6,016 × 4,000; 7.16 MB
 
Cannabis DSC 1116 (24893129133).jpg
Cannabis DSC 1116 (24893129133).jpg6,016 × 4,000; 5.95 MB
 
Cannabis DSC 1117 (25152311399).jpg
Cannabis DSC 1117 (25152311399).jpg6,016 × 4,000; 6.91 MB
 
Cannabis DSC 1118 (25427076311).jpg
Cannabis DSC 1118 (25427076311).jpg6,016 × 4,000; 6.9 MB
 
Cannabis DSC 1132 (24893123733).jpg
Cannabis DSC 1132 (24893123733).jpg6,016 × 4,000; 6.38 MB
 
Cannabis en España 15-64.pdf
Cannabis en España 15-64.pdf6,336 × 3,520; 840 KB
 
Cannabis Flower.jpg
Cannabis Flower.jpg6,000 × 4,000; 5.09 MB
 
Cannabis Ganja (17838742104).jpg
Cannabis Ganja (17838742104).jpg5,312 × 2,988; 4.22 MB
 
Cannabis Ganja (17841569783).jpg
Cannabis Ganja (17841569783).jpg1,440 × 2,560; 1.84 MB
 
Cannabis Ganja (18273499578).jpg
Cannabis Ganja (18273499578).jpg5,312 × 2,988; 5.58 MB
 
Cannabis Ganja (18274566480).jpg
Cannabis Ganja (18274566480).jpg1,440 × 2,560; 2.02 MB
 
Cannabis Ganja (18275086379).jpg
Cannabis Ganja (18275086379).jpg5,312 × 2,988; 6.45 MB
 
Cannabis Grapefruit (16540499793).jpg
Cannabis Grapefruit (16540499793).jpg6,016 × 4,000; 6.8 MB
 
Cannabis ground up for dry sifting (17001927486).jpg
Cannabis ground up for dry sifting (17001927486).jpg6,016 × 4,000; 6.67 MB
 
Cannabis harvest.jpg
Cannabis harvest.jpg3,784 × 2,604; 2.67 MB
 
Cannabis Holy Grail Kush (28209045193).jpg
Cannabis Holy Grail Kush (28209045193).jpg3,264 × 2,448; 4.31 MB
 
Cannabis in a grow house in Denver, Colorado.jpg
Cannabis in a grow house in Denver, Colorado.jpg4,608 × 3,072; 1.36 MB
 
Cannabis joint.jpg
Cannabis joint.jpg6,000 × 4,000; 2.13 MB
 
Cannabis law worldwide.png
Cannabis law worldwide.png1,480 × 625; 47 KB
 
Cannabis leaf in Ketama, Morocco.jpg
Cannabis leaf in Ketama, Morocco.jpg3,264 × 2,448; 2.44 MB
 
Cannabis Leaf.jpg
Cannabis Leaf.jpg4,016 × 4,096; 3.32 MB
 
Cannabis lollypopping (28460060330).jpg
Cannabis lollypopping (28460060330).jpg6,016 × 4,000; 8.67 MB
 
Cannabis marijuana plants.jpg
Cannabis marijuana plants.jpg2,592 × 1,944; 3.72 MB
 
Cannabis OG Kush (18457988902).jpg
Cannabis OG Kush (18457988902).jpg1,440 × 2,560; 1.79 MB
 
Cannabis OG Kush (18458035712).jpg
Cannabis OG Kush (18458035712).jpg2,988 × 5,312; 5.45 MB
 
Cannabis plant (Bhang in Indian languages) 3.jpg
Cannabis plant (Bhang in Indian languages) 3.jpg4,608 × 3,456; 4.13 MB
 
Cannabis plant foreground, tourists background.jpg
Cannabis plant foreground, tourists background.jpg2,592 × 1,944; 2.58 MB
 
Cannabis RollingStoned.nl G-Kit - CBD Kush - CBD Compassion (17184250029).jpg
Cannabis RollingStoned.nl G-Kit - CBD Kush - CBD Compassion (17184250029).jpg5,312 × 2,988; 4.08 MB
 
Cannabis RollingStoned.nl-G-Kit (17095627547).jpg
Cannabis RollingStoned.nl-G-Kit (17095627547).jpg486 × 569; 29 KB
 
Cannabis Sativa tree.jpg
Cannabis Sativa tree.jpg3,264 × 2,448; 2.33 MB
 
Cannabis Seed bag (17300389512).jpg
Cannabis Seed bag (17300389512).jpg2,560 × 1,440; 273 KB
 
Cannabis seedling - seven days.jpg
Cannabis seedling - seven days.jpg516 × 828; 214 KB
 
Cannabis show grow at Euflora dispensary.jpg
Cannabis show grow at Euflora dispensary.jpg3,460 × 2,592; 4.59 MB
 
Cannabis the ultimate (17001940776).jpg
Cannabis the ultimate (17001940776).jpg6,016 × 4,000; 5.64 MB
 
Cannabis Tour 420-friendly Party Bus.jpg
Cannabis Tour 420-friendly Party Bus.jpg4,048 × 3,036; 3.75 MB
 
Cannabis tour group.jpg
Cannabis tour group.jpg4,048 × 3,036; 4.6 MB
 
Cannabis tree.1.jpg
Cannabis tree.1.jpg2,448 × 3,264; 2.38 MB
 
Cannabis tree.2.jpg
Cannabis tree.2.jpg2,448 × 3,264; 2.47 MB
 
Cannabis tree.3.jpg
Cannabis tree.3.jpg2,448 × 3,264; 2.07 MB
 
Cannabis tree.4.jpg
Cannabis tree.4.jpg2,448 × 3,264; 1.66 MB
 
Cannabis tree.5.jpg
Cannabis tree.5.jpg2,448 × 3,264; 2.11 MB
 
Cannabis tree.6.jpg
Cannabis tree.6.jpg2,448 × 3,264; 2.27 MB
 
Cannabis tree.7.jpg
Cannabis tree.7.jpg2,448 × 3,264; 1.44 MB
 
Cannabis tree.8.jpg
Cannabis tree.8.jpg2,448 × 3,264; 2.38 MB
 
Cannabis tree.jpg
Cannabis tree.jpg2,448 × 3,264; 2.17 MB
 
Cannabis Trichomes (17276240526).jpg
Cannabis Trichomes (17276240526).jpg2,560 × 1,440; 2.05 MB
 
Cannabis Trichomes (17300377912).jpg
Cannabis Trichomes (17300377912).jpg2,560 × 1,440; 2.07 MB
 
Cannabis Trichomes (17300379612).jpg
Cannabis Trichomes (17300379612).jpg2,560 × 1,440; 1.93 MB
 
Cannabis Trichomes (17302223465).jpg
Cannabis Trichomes (17302223465).jpg2,560 × 1,440; 2.03 MB
 
Cannabis-Nug-Oil-Heart-Bottle-on-Plate-by-workwithsherpa.jpg
Cannabis-Nug-Oil-Heart-Bottle-on-Plate-by-workwithsherpa.jpg3,000 × 2,000; 427 KB
 
Cannabis-Nug-Oil-Heart-on-Plate-by-workwithsherpa.jpg
Cannabis-Nug-Oil-Heart-on-Plate-by-workwithsherpa.jpg2,000 × 3,000; 543 KB
 
Cannabis-Oil-on-Plate-by-workwithsherpa.jpg
Cannabis-Oil-on-Plate-by-workwithsherpa.jpg4,500 × 3,000; 1.23 MB
 
Cannabis-Tincture-on-Plate-by-workwithsherpa.jpg
Cannabis-Tincture-on-Plate-by-workwithsherpa.jpg4,500 × 3,000; 1.38 MB
 
Cannabisblüten.jpg
Cannabisblüten.jpg652 × 814; 96 KB
 
CBD oil for anxiety.jpg
CBD oil for anxiety.jpg2,538 × 3,800; 5.37 MB
 
CBD Schweiz.jpg
CBD Schweiz.jpg2,775 × 3,469; 6.22 MB
 
CBD THC Joints.jpg
CBD THC Joints.jpg6,000 × 4,000; 4.13 MB
 
CBD-Infused KickBack Cold Brew Coffee .jpg
CBD-Infused KickBack Cold Brew Coffee .jpg3,024 × 4,032; 1.97 MB
 
CCE by Draconis- laboratory work on plant essences and cannabinoid material.jpg
CCE by Draconis- laboratory work on plant essences and cannabinoid material.jpg3,024 × 4,032; 9.86 MB
 
Clover Leaf Cannabis Business Awards Anthony.jpg
Clover Leaf Cannabis Business Awards Anthony.jpg3,023 × 3,773; 1.54 MB
 
CoffeeShop Amsterdam IBIZA, Coffee shop in Amsterdam.png
CoffeeShop Amsterdam IBIZA, Coffee shop in Amsterdam.png1,125 × 2,436; 4.1 MB
 
Cogoyo sobre ley 20.000.jpg
Cogoyo sobre ley 20.000.jpg1,600 × 1,067; 1.22 MB
 
Commercial cannabis, harvested and trimmed.jpg
Commercial cannabis, harvested and trimmed.jpg4,048 × 3,036; 7.04 MB
 
Common Role Method.jpg
Common Role Method.jpg5,184 × 3,456; 3.94 MB
 
Comparative risk assessment.jpg
Comparative risk assessment.jpg737 × 486; 62 KB
 
Complexity (255757059).jpeg
Complexity (255757059).jpeg2,048 × 1,217; 1.57 MB
 
Correlates and consequences of marijuana use (IA correlatesconseq00glan).pdf
Correlates and consequences of marijuana use (IA correlatesconseq00glan).pdf1,143 × 1,529, 410 pages; 18.99 MB
 
Cover-520.jpg
Cover-520.jpg618 × 872; 211 KB
 
Credit Union's Plan to Serve the Marijuana Industry Goes Up in Smoke (IA CreditUnionsPlantoServetheMarijuanaIndustryGoesUpinSmoke-crs).pdf
Credit Union's Plan to Serve the Marijuana Industry Goes Up in Smoke (IA CreditUnionsPlantoServetheMarijuanaIndustryGoesUpinSmoke-crs).pdf1,275 × 1,650, 2 pages; 121 KB
 
CroataČohašOrezano.jpg
CroataČohašOrezano.jpg2,335 × 1,500; 658 KB
 
Custom Zipper Bag.jpg
Custom Zipper Bag.jpg737 × 1,229; 366 KB
 
Da-ma.png
Da-ma.png256 × 128; 10 KB
 
Dan Rush.JPG
Dan Rush.JPG2,592 × 3,872; 3.62 MB
 
0:00
De-Marihuana.ogg2.3 s; 22 KB
 
Defining CBD Flower.png
Defining CBD Flower.png800 × 800; 744 KB
 
Delta-8 THC Joints.jpg
Delta-8 THC Joints.jpg6,000 × 4,000; 4.31 MB
 
Drying Jamaican cannabis (24893219423).jpg
Drying Jamaican cannabis (24893219423).jpg6,016 × 4,000; 6.5 MB
 
E-Juice Bottles.jpg
E-Juice Bottles.jpg1,024 × 768; 64 KB
 
Eaze hand.png
Eaze hand.png1,200 × 758; 1.35 MB
 
Eksempel pa hasjbod fra Pusher Street, Christiania.jpg
Eksempel pa hasjbod fra Pusher Street, Christiania.jpg2,048 × 1,536; 1.01 MB
 
Empty plot for Afghan embassy.jpg
Empty plot for Afghan embassy.jpg768 × 1,024; 219 KB
 
Environmental Impacts from Marijuana Cultivation.pdf
Environmental Impacts from Marijuana Cultivation.pdf1,500 × 1,125, 39 pages; 9.54 MB
 
Evidence Suggests Addiction Vulnerability.jpg
Evidence Suggests Addiction Vulnerability.jpg734 × 255; 56 KB
 
Federal Taxation of Marijuana Sellers (IA FederalTaxationofMarijuanaSellers-crs).pdf
Federal Taxation of Marijuana Sellers (IA FederalTaxationofMarijuanaSellers-crs).pdf1,275 × 1,650, 2 pages; 57 KB
 
Female cannabis plants in the vegetative (pre-bloom) phase.jpg
Female cannabis plants in the vegetative (pre-bloom) phase.jpg3,036 × 4,048; 5.02 MB
 
FerndalePoliceStop102415.jpg
FerndalePoliceStop102415.jpg3,264 × 2,448; 1.85 MB
 
First Church of Cannabis from the front of the building.jpg
First Church of Cannabis from the front of the building.jpg5,312 × 2,988; 8.21 MB
 
FL Ballot 2014 Amd.2 Compassionate Medical Marijuana.jpg
FL Ballot 2014 Amd.2 Compassionate Medical Marijuana.jpg2,448 × 3,264; 2.28 MB
 
Flower Bong.jpg
Flower Bong.jpg4,295 × 6,443; 6.61 MB
 
Flowering cannabis plant.jpg
Flowering cannabis plant.jpg2,592 × 1,944; 3.01 MB
 
From Subcarpathian Russia (now Ukraine), still part of Czechoslovakia, year 1921.jpg
From Subcarpathian Russia (now Ukraine), still part of Czechoslovakia, year 1921.jpg2,048 × 1,536; 1.31 MB
 
Front cold 2 72dpi.gif
Front cold 2 72dpi.gif416 × 1,655; 422 KB
 
Gesner novus thesaurus vol1 part2of2.pdf
Gesner novus thesaurus vol1 part2of2.pdf606 × 2,075, 673 pages; 56.02 MB
 
Give Me Weed (5930923306).jpg
Give Me Weed (5930923306).jpg7,560 × 5,040; 14.31 MB







Consensus reality
https://en.wikipedia.org/wiki/Consensus_reality#General_discussion
Consensus reality[1] is that which is generally agreed to be reality, based on a consensus view.

The appeal to consensus arises from the fact that humans do not fully understand or agree upon the nature of knowledge or ontology, often making it uncertain what is real, given the vast inconsistencies between individual subjectivities.[2][3] We can, however, seek to obtain some form of consensus, with others, of what is real. We can use this consensus as a pragmatic guide, either on the assumption that it seems to approximate some kind of valid reality, or simply because it is more "practical" than perceived alternatives. Consensus reality therefore refers to the agreed-upon concepts of reality which people in the world, or a culture or group, believe are real (or treat as real), usually based upon their common experiences as they believe them to be; anyone who does not agree with these is sometimes stated to be "in effect... living in a different world."[4]

Throughout history this has also raised a social question as to the effects of a society in which all individuals do not agree upon the same reality.

Children have sometimes been described or viewed as "inexperience[d] with consensus reality,"[5] though are described as such with the expectation that their perspective will progressively form closer to the consensus reality of their society as they age.


Contents
1	General discussion
2	In science and philosophy
2.1	Idealists
2.2	Materialists
3	Social consequences
3.1	Views on the term
3.2	Consensus vs. consensual reality
3.3	Social aspects
4	See also
5	References
General discussion
In considering the nature of reality, two broad approaches exist: the realist approach, in which there is a single, objective, overall reality believed to exist irrespective of the perceptions of any given individual, and the idealistic approach, in which it is considered that an individual can verify nothing except their own experience of the world, and can never directly know the truth of the world independent of that.

Consensus reality may be understood by studying socially constructed reality, a subject within the sociology of knowledge. (Read page three of The Social Construction of Reality by Peter L. Berger and Thomas Luckmann.)

Consider this example: consensus reality for people who follow a particular theocentric religion is different from consensus reality for those who follow another theocentric religion, or from those that eschew theocentric religions in favor of science alone, for explaining life and the universe.

In societies where theocentric religions are dominant, the religious understanding of existence would be the consensus reality, while the religious worldview would remain the non-consensus (or alternative) reality in a predominantly secular society, where the consensus reality is grounded in science alone.

In this way, different individuals and communities have fundamentally different world views,[6] with fundamentally different comprehensions of the world around them, and of the constructs within which they live. Thus, a society that is, for example, completely secular and one which believes every eventuality to be subject to metaphysical influence will have very different consensus realities, and many of their beliefs on broad issues such as science, slavery, and human sacrifice may differ in direct consequence because of the differences in the perceived nature of the world they live in.

In science and philosophy
See also: Scientific consensus
Idealists
Some idealists (subjective idealists) hold the view that there isn't one particular way things are, but rather that each person's personal reality is unique. Such idealists have the world view which says that we each create our own reality, and while most people may be in general agreement (consensus) about what reality is like, they might live in a different (or nonconsensus) reality.[7]

Materialists
Materialists may not accept the idea of there being different possible realities for different people, rather than different beliefs about one reality. So for them only the first usage of the term reality would make sense. To them, someone believing otherwise, where the facts have been properly established, might be considered delusional.[citation needed]

Social consequences
Views on the term
The connotation of the term "consensus reality" is usually disparaging: it is usually employed by idealist, surrealist and other anti-realist theorists opposing or hostile to this "reality," with the implication that this consensus reality is, to a greater or lesser extent, created by those who experience it. (The phrase "consensus reality" may be used more loosely to refer to any generally accepted set of beliefs.) However, there are those who use the term approvingly for the practical benefits of all agreeing on a common set of assumptions or experiences.[8]

Consensus vs. consensual reality
Consensus reality is related to, but distinct from, consensual reality. The difference between these terms is that whereas consensus reality describes a state of mutual agreement about what is true (consensus is a noun), consensual reality describes a type of agreement about what is true (consensual is an adjective). In other words, reality may also be non-consensual, as when one person's preferred version of reality conflicts with another person's preferred version of reality. Consensual reality is relevant to understanding a variety of social phenomena, such as deception. [9]

Social aspects
Singers,[10] painters, writers, theorists and other individuals employing a number of means of action have attempted to oppose or undermine consensus reality while others have declared that they are "ignoring" it. For example, Salvador Dalí intended by his paranoiac-critical method[11] to "systematize confusion thanks to a paranoia and active process of thought and so assist in discrediting completely the world of reality".[12]

See also
	Wikiquote has quotations related to: Consensus reality
Brute fact
Common knowledge
Conventional wisdom
Hyperreality
Map-territory relation for how beliefs about reality, and reality itself, relate to each other
Pragmatism
Reality shifts
Reality tunnel
Simulated reality
Social construction
Social constructionism
Tinkerbell effect
Truth by consensus
Truthiness
Wikiality







Social constructionism
https://en.wikipedia.org/wiki/Social_constructionism#Definition
Social constructionism is a theory of knowledge in sociology and communication theory that examines the development of jointly constructed understandings of the world that form the basis for shared assumptions about reality. The theory centers on the notion that meanings are developed in coordination with others rather than separately within each individual.[1]

Social constructs can be different based on the society and the events surrounding the time period in which they exist.[2] An example of a social construct is money or the concept of currency, as people in society have agreed to give it importance/value.[2][3] Another example of a social construction - however controversial and hotly debated - is the concept of self/self-identity.[4] Charles Cooley stated based on his looking-glass self theory claiming: "I am not who you think I am; I am not who I think I am; I am who I think you think I am."[2] This articulates the view that people in society construct ideas or concepts that may not exist without the existence of people or language to validate those concepts.[2][5]

There are weak and strong social constructs.[3] Weak social constructs rely on brute facts (which are fundamental facts that are difficult to explain or understand, such as quarks) or institutional facts (which are formed from social conventions).[2][3] Strong social constructs rely on the human perspective and knowledge that does not just exist, but is rather constructed by society.[2]


Contents
1	Definition
2	Origins
3	Applications
3.1	Personal construct psychology
3.2	Educational psychology
3.3	Systemic therapy
3.4	Crime
3.5	Communication studies
4	History and development
4.1	Berger and Luckmann
4.2	Narrative turn
4.3	Postmodernism
5	Criticisms
6	See also
7	References
8	Further reading
8.1	Books
8.2	Articles
9	External links
Definition
A social construct or construction is the meaning, notion, or connotation placed on an object or event by a society, and adopted by the inhabitants of that society with respect to how they view or deal with the object or event.[6] In that respect, a social construct as an idea would be widely accepted as natural by the society.[citation needed]

A major focus of social constructionism is to uncover the ways in which individuals and groups participate in the construction of their perceived social reality. It involves looking at the ways social phenomena are developed, institutionalized, known, and made into tradition by humans.[citation needed]

Origins

Each person creates their own "constructed reality" that drives their behaviors.
In 1886 or 1887, Friedrich Nietzsche wrote that, "Facts do not exist, only interpretations." In his 1922 book Public Opinion, Walter Lippmann said, "The real environment is altogether too big, too complex, and too fleeting for direct acquaintance" between people and their environment. Each person constructs a pseudo-environment that is a subjective, biased, and necessarily abridged mental image of the world, and to a degree, everyone's pseudo-environment is a fiction. People "live in the same world, but they think and feel in different ones."[7] Lippman's "environment" might be called "reality", and his "pseudo-environment" seems equivalent to what today is called "constructed reality".

Social constructionism has more recently been rooted in "symbolic interactionism" and "phenomenology".[8][9] With Berger and Luckmann's The Social Construction of Reality published in 1966, this concept found its hold. More than four decades later, much theory and research pledged itself to the basic tenet that people "make their social and cultural worlds at the same time these worlds make them."[9] It is a viewpoint that uproots social processes "simultaneously playful and serious, by which reality is both revealed and concealed, created and destroyed by our activities."[9] It provides a substitute to the "Western intellectual tradition" where the researcher "earnestly seeks certainty in a representation of reality by means of propositions."[9]

In social constructionist terms, "taken-for-granted realities" are cultivated from "interactions between and among social agents;" furthermore, reality is not some objective truth "waiting to be uncovered through positivist scientific inquiry."[9] Rather, there can be "multiple realities that compete for truth and legitimacy."[9] Social constructionism understands the "fundamental role of language and communication" and this understanding has "contributed to the linguistic turn" and more recently the "turn to discourse theory."[9][10] The majority of social constructionists abide by the belief that "language does not mirror reality; rather, it constitutes [creates] it."[9]

A broad definition of social constructionism has its supporters and critics in the organizational sciences.[9] A constructionist approach to various organizational and managerial phenomena appear to be more commonplace and on the rise.[9]

Andy Lock and Tomj Strong trace some of the fundamental tenets of social constructionism back to the work of the 18th-century Italian political philosopher, rhetorician, historian, and jurist Giambattista Vico.[11]

Berger and Luckmann give credit to Max Scheler as a large influence as he created the idea of Sociology of knowledge which influenced social construction theory.[12]

According to Lock and Strong, other influential thinkers whose work has affected the development of social constructionism are: Edmund Husserl, Alfred Schutz, Maurice Merleau-Ponty, Martin Heidegger, Hans-Georg Gadamer, Paul Ricoeur, Jürgen Habermas, Emmanuel Levinas, Mikhail Bakhtin, Valentin Volosinov, Lev Vygotsky, George Herbert Mead, Ludwig Wittgenstein, Gregory Bateson, Harold Garfinkel, Erving Goffman, Anthony Giddens, Michel Foucault, Ken Gergen, Mary Gergen, Rom Harre, and John Shotter.[11]

Applications
Personal construct psychology
Since its appearance in the 1950s, personal construct psychology (PCP) has mainly developed as a constructivist theory of personality and a system of transforming individual meaning-making processes, largely in therapeutic contexts.[13][14][15][16][17][18] It was based around the notion of persons as scientists who form and test theories about their worlds. Therefore, it represented one of the first attempts to appreciate the constructive nature of experience and the meaning persons give to their experience.[19] Social constructionism (SC), on the other hand, mainly developed as a form of a critique,[20] aimed to transform the oppressing effects of the social meaning-making processes. Over the years, it has grown into a cluster of different approaches,[21] with no single SC position.[22] However, different approaches under the generic term of SC are loosely linked by some shared assumptions about language, knowledge, and reality.[23]

A usual way of thinking about the relationship between PCP and SC is treating them as two separate entities that are similar in some aspects, but also very different in others. This way of conceptualizing this relationship is a logical result of the circumstantial differences of their emergence. In subsequent analyses these differences between PCP and SC were framed around several points of tension, formulated as binary oppositions: personal/social; individualist/relational; agency/structure; constructivist/constructionist.[24][25][26][27][28][29] Although some of the most important issues in contemporary psychology are elaborated in these contributions, the polarized positioning also sustained the idea of a separation between PCP and SC, paving the way for only limited opportunities for dialogue between them.[30][31]

Reframing the relationship between PCP and SC may be of use in both the PCP and the SC communities. On one hand, it extends and enriches SC theory and points to benefits of applying the PCP "toolkit" in constructionist therapy and research. On the other hand, the reframing contributes to PCP theory and points to new ways of addressing social construction in therapeutic conversations.[31]

Educational psychology
Like social constructionism, social constructivism states that people work together to construct artifacts. While social constructionism focuses on the artifacts that are created through the social interactions of a group, social constructivism focuses on an individual's learning that takes place because of his or her interactions in a group.

Social constructivism has been studied by many educational psychologists, who are concerned with its implications for teaching and learning. For more on the psychological dimensions of social constructivism, see the work of Ernst von Glasersfeld and A. Sullivan Palincsar.[32]

Systemic therapy
Systemic therapy is a form of psychotherapy which seeks to address people as people in relationship, dealing with the interactions of groups and their interactional patterns and dynamics.[citation needed]

Crime
Potter and Kappeler (1996), in their introduction to Constructing Crime: Perspective on Making News And Social Problems wrote, "Public opinion and crime facts demonstrate no congruence. The reality of crime in the United States has been subverted to a constructed reality as ephemeral as swamp gas."[33]

Criminology has long focussed on why and how society defines criminal behavior and crime in general. While looking at crime through a Social Constructionism lens, we see evidence to support that criminal acts are a social construct where abnormal or deviant acts become a crime based on the views of society.[34] Another explanation of crime as it relates to social constructionism are individual identity constructs that result in deviant behavior.[34] If someone has constructed the identity of a "madman" or "criminal" for themselves based on a society's definition, it may force them to follow that label, resulting in criminal behavior. [34]

Communication studies
A bibliographic review of social constructionism as used within communication studies was published in 2016. It features a good overview of resources from that disciplinary perspective[35] The collection of essays published in Galanes and Leeds-Hurwitz (2009) should also be useful to anyone interested in how social construction actually works during communication.[36] This collection was the result of a conference held in 2006, sponsored by the National Communication Association as a Summer institute, entitled "Catching ourselves in the Act: A Collaboration to Enrich our Discipline Through Social Constructionist Approaches."[37] Briefly, the basic assumption of the group was that "individuals jointly construct (create) their understandings of the world and the meanings they give to encounters with others, or various products others create. At the heart of the matter is the assumption that such meanings are constructed jointly, that is, in coordination with others, rather than individually. Thus the term of choice most often is social construction."[38] At that event, John Stewart in his keynote presentation, suggested it was time to choose a single term among the set then common (social constructionist, social constructivism, social constructivist), and proposed using the simpler form: social construction. Those present at the conference agreed to that use, and so that is the term most often used in this book, and by communication scholars since then.[39] During discussion at the conference, participants developed a common list of principles:

1. Communication is the process through which we construct and reconstruct social worlds.
2. Communication is constitutive; communication makes things.
3. Every action is consequential.
4. We make things together. We construct the social worlds we share with others as relational beings.
5. We perceive many social worlds existing simultaneously, and we continue to shape them. Other people's social worlds may be different from ours. What we inherit is not our identity.
6. No behavior conveys meaning in and of itself. Contexts afford and constrain meanings.
7. Ethical implications and consequences derive from Principles 1-6.[40]
A survey of publications in communication relating to social construction in 2009 found that the major topics covered were: identity, language, narratives, organizations, conflict, and media. [41]

History and development
Berger and Luckmann
Constructionism became prominent in the U.S. with Peter L. Berger and Thomas Luckmann's 1966 book, The Social Construction of Reality. Berger and Luckmann argue that all knowledge, including the most basic, taken-for-granted common sense knowledge of everyday reality, is derived from and maintained by social interactions. When people interact, they do so with the understanding that their respective perceptions of reality are related, and as they act upon this understanding their common knowledge of reality becomes reinforced. Since this common sense knowledge is negotiated by people, human typifications, significations and institutions come to be presented as part of an objective reality, particularly for future generations who were not involved in the original process of negotiation. For example, as parents negotiate rules for their children to follow, those rules confront the children as externally produced "givens" that they cannot change. Berger and Luckmann's social constructionism has its roots in phenomenology. It links to Heidegger and Edmund Husserl through the teaching of Alfred Schutz, who was also Berger's PhD adviser.[citation needed]

Narrative turn
During the 1970s and 1980s, social constructionist theory underwent a transformation as constructionist sociologists engaged with the work of Michel Foucault and others as a narrative turn in the social sciences was worked out in practice. This particularly affected the emergent sociology of science and the growing field of science and technology studies. In particular, Karin Knorr-Cetina, Bruno Latour, Barry Barnes, Steve Woolgar, and others used social constructionism to relate what science has typically characterized as objective facts to the processes of social construction, with the goal of showing that human subjectivity imposes itself on those facts we take to be objective, not solely the other way around. A particularly provocative title in this line of thought is Andrew Pickering's Constructing Quarks: A Sociological History of Particle Physics. At the same time, Social Constructionism shaped studies of technology – the Sofield, especially on the Social construction of technology, or SCOT, and authors as Wiebe Bijker, Trevor Pinch, Maarten van Wesel, etc.[42][43] Despite its common perception as objective, mathematics is not immune to social constructionist accounts. Sociologists such as Sal Restivo and Randall Collins, mathematicians including Reuben Hersh and Philip J. Davis, and philosophers including Paul Ernest have published social constructionist treatments of mathematics.[citation needed]

Postmodernism
Social constructionism can be seen[by whom?] as a source of the postmodern movement, and has been influential in the field of cultural studies. Some[who?] have gone so far as to attribute the rise of cultural studies (the cultural turn) to social constructionism. Within the social constructionist strand of postmodernism, the concept of socially constructed reality stresses the ongoing mass-building of worldviews by individuals in dialectical interaction with society at a time. The numerous realities so formed comprise, according to this view, the imagined worlds of human social existence and activity, gradually crystallized by habit into institutions propped up by language conventions, given ongoing legitimacy by mythology, religion and philosophy, maintained by therapies and socialization, and subjectively internalized by upbringing and education to become part of the identity of social citizens.

In the book The Reality of Social Construction, the British sociologist Dave Elder-Vass places the development of social constructionism as one outcome of the legacy of postmodernism. He writes "Perhaps the most widespread and influential product of this process [coming to terms with the legacy of postmodernism] is social constructionism, which has been booming [within the domain of social theory] since the 1980s."[44]

Criticisms
The stronger criticism that can be levelled at social constructionism is that it generally ignores the contribution made by physical and biological sciences or misuses them in social sciences.[45] Most notably, social constructionist assume society as both a descriptive and normative term, thereby failing to provide adequate explanation as to what they mean by society, whether it be an ideological concept or a description of any historically located community.[46]

As a theory, social constructionism rejects the influences of biology on behaviour and culture, or suggests that they are unimportant to achieve an understanding of human behaviour[47], while the scientific consensus is that behaviour is a complex outcome of both biological and cultural influences.[48][49] Social constructionism has been criticized for having an overly narrow focus on society and culture as a causal factor in human behavior, excluding the influence of innate biological tendencies, by psychologists such as Steven Pinker in The Blank Slate[50] as well as by Asian Studies scholar Edward Slingerland in What Science Offers the Humanities.[51] John Tooby and Leda Cosmides used the term "standard social science model" to refer to social-science philosophies that they argue fail to take into account the evolved properties of the brain.[52]

Social Constructionism equally denies or downplays to a significant extent the role that meaning and language have for each individual, seeking to configure language as an overall structure rather than an historical instrument used by individuals to communicate their personal experiences of the world. This is particularly the case with cultural studies, where personal and pre-linguistic experiences are disregarded as irrelevant or seen as completely situated and constructed by the socio-economical superstructure.

In 1996, to illustrate what he believed to be the intellectual weaknesses of social constructionism and postmodernism, physics professor Alan Sokal submitted an article to the academic journal Social Text deliberately written to be incomprehensible but including phrases and jargon typical of the articles published by the journal. The submission, which was published, was an experiment to see if the journal would "publish an article liberally salted with nonsense if (a) it sounded good and (b) it flattered the editors' ideological preconceptions."[53][45] In 1999, Sokal, with coauthor Jean Bricmont published the book Fashionable Nonsense, which criticized postmodernism and social constructionism.

Philosopher Paul Boghossian has also written against social constructionism. He follows Ian Hacking's argument that many adopt social constructionism because of its potentially liberating stance: if things are the way that they are only because of our social conventions, as opposed to being so naturally, then it should be possible to change them into how we would rather have them be. He then states that social constructionists argue that we should refrain from making absolute judgements about what is true and instead state that something is true in the light of this or that theory. Countering this, he states:

But it is hard to see how we might coherently follow this advice. Given that the propositions which make up epistemic systems are just very general propositions about what absolutely justifies what, it makes no sense to insist that we abandon making absolute particular judgements about what justifies what while allowing us to accept absolute general judgements about what justifies what. But in effect this is what the epistemic relativist is recommending.[54]

Woolgar and Pawluch[55] argue that constructionists tend to 'ontologically gerrymander' social conditions in and out of their analysis.



See also
icon	Society portal
Consensus reality
Construct (philosophy)
Constructivism (international relations)
Constructivist epistemology
Critical theory
Enculturation
Epochalism
Nature versus nurture
Nominalism
Parametric determinism
Phenomenology (psychology)
Social construction of technology
Social epistemology
Ubuntu philosophy








Prior art
https://en.wikipedia.org/wiki/Prior_art#Effective_date_of_patents_and_patent_applications_as_prior_art
Prior art (state of the art[1] or background art[2]), in most systems of patent law,[3] is constituted by all information that has been made available to the public in any form before a given date that might be relevant to a patent's claims of originality. If an invention has been described in the prior art or would have been obvious from what has been described in the prior art, a patent on that invention is not valid.

Information kept secret, for instance, as a trade secret, is not usually prior art, provided that employees and others with access to the information are under a non-disclosure obligation. With such an obligation, the information is typically not regarded as prior art. Therefore, a patent may be granted on an invention, even though someone else already knew of the invention. A person who used an invention in secret may in some jurisdictions be able to claim "prior user rights" and thereby gain the right to continue using the invention. As a special exception, earlier-filed and unpublished patent applications do qualify as prior art as of their filing date in certain circumstances.

To anticipate the subject-matter of a patent claim, prior art is generally expected to provide a description sufficient to inform an average worker in the field (or the person skilled in the art) of some subject matter falling within the scope of the claim. Prior art must be available in some way to the public, and in many countries, the information needs to be recorded in a fixed form somehow. Prior art generally does not include unpublished work or mere conversations (though according to the European Patent Convention, oral disclosures also form prior art—see Article 54(2) EPC). It is disputed whether traditional knowledge (e.g., of medical properties of a certain plant) constitutes prior art.[citation needed]

Patents disclose to society how an invention is practiced, in return for the right (during a limited term) to exclude others from manufacturing, selling, offering for sale or using the patented invention without the patentee's permission. Patent offices deal with prior art searches in the context of the patent granting procedure.


Contents
1	Effective date of patents and patent applications as prior art
2	Usage in litigation
3	Types of prior art searches
3.1	Novelty
3.2	Validity
3.3	Clearance
4	Duty of disclosure
5	Public participation in patent examination
5.1	Pending patent applications
6	See also
6.1	Notable prior art databases
7	References
8	Further reading
9	External links
9.1	Official institutions
Effective date of patents and patent applications as prior art
It is typical for a patent office to treat its own patents and published patent applications as prior art as of their filing dates,[4][5][6] although under the European Patent Convention, this applies only to novelty rather than inventive step.[7] However, United States patent law before the Leahy-Smith America Invents Act (AIA) included the Hilmer doctrine, under which United States patents and patent application publications were prior art only as of their earliest effective United States filing dates, i.e., disregarding any foreign priority claimed in those patents and patent application publications. The AIA has abolished the Hilmer doctrine and makes United States patents and patent application publications that name another inventor prior art as of when they were "effectively filed."[8]

Usage in litigation
Arguments claiming prior art are used in defending and attacking patent validity. In one U.S. case on the issue, the court said:

One attacking the validity of a patent must present clear and convincing evidence establishing facts that lead to the legal conclusion of invalidity. 35 U.S.C. § 282. To establish invalidity under 35 U.S.C. § 103, certain factual predicates are required before the legal conclusion of obviousness or nonobviousness can be reached. The underlying factual determinations to be made are

(1) the scope and content of the prior art;
(2) the differences between the claimed invention and the prior art;
(3) the level of ordinary skill in the art; and
(4) objective evidence of non-obviousness, such as commercial success, long-felt but unsolved need, failure of others, copying, and unexpected results.
— Graham v. John Deere Co., 383 U.S. 1, 17, 148 USPQ 459, 467 (1966).[9][10]
Types of prior art searches
Novelty
A "novelty search" is a prior art search that is often conducted by patent attorneys, patent agents or professional patent searchers before an inventor files a patent application. A novelty search helps an inventor to determine if the invention is novel before the inventor commits the resources necessary to obtain a patent. The search may include searching in databases of patents, patent applications and other documents such as utility models and in the scientific literature. Novelty searches can also be used to help an inventor determine what is unique about their invention. Anything not found in the prior art can be potentially patentable. Thomas Edison, for example, did not get a patent on the basic concept of the light bulb. It was already patented and therefore in the prior art. Instead, Edison got a patent on his improvements to the light bulb. These improvements included a very thin filament and a reliable technique for joining the white hot filament to the room temperature lead wires.[11]

A novelty search is also conducted by patent examiners during prosecution of the patent application. For instance, examiner's search guidelines applicable to the United States are found in the U.S. Manual of Patent Examining Procedure (MPEP) 904.02 General Search Guidelines, Prior Art, Classification, and Search.[12]

Validity
A "validity search" is a prior art search done after a patent issues. The purpose of a validity (or invalidity) search is to find prior art that the patent examiner overlooked so that a patent can be declared invalid. This might be done by an entity infringing, or potentially infringing, the patent, or it might be done by a patent owner or other entity that has a financial stake in a patent to confirm the validity of a patent. Crowdsourcing, where a large number of interested people search for prior art, may be effective where references would otherwise be difficult to find.[13]

Clearance
A clearance search is a search of issued patents to see if a given product or process violates someone else's existing patent. If so, then a validity search may be done to try to find prior art that would invalidate the patent. A clearance search is a search targeting patents being in force and may be limited to a particular country and group of countries, or a specific market.

Duty of disclosure
In the United States, inventors and their patent agents or attorneys are required by law to submit any references they are aware of to the United States Patent and Trademark Office that may be material to the patentability of the claims in a patent application they have filed. The patent examiner will then determine if the references qualify as "prior art" and may then take them into account when examining the patent application. If a person having a duty to disclose, acting with deceptive intent, fails to properly disclose the material references of which they are aware, then a patent can be found unenforceable for inequitable conduct.[14]

Japan also has a duty of disclosure.[15][16][17]

Australia has abolished its duty of disclosure with regard to the results of documentary searches by, or on behalf of, foreign patent offices, except where:

(a) normal exam was requested before April 22, 2007,
(b) the foreign patent office search issued before April 22, 2007, and
(c) acceptance (allowance) was officially advertised before July 22, 2007.[18]
Public participation in patent examination
Main article: Public participation in patent examination
With the advent of the Internet, a number of initiatives have been undertaken to create a forum where the public at large can participate in prior art searches. These forums have been related to both issued patents and pending patent applications.

Pending patent applications
More recently, different attempts to employ open Internet-based discussions for encouraging public participation commenting on pending U.S. applications have been started. These may take the form of a wiki:

Peer-to-patent online system for open, community patent review.
Wikipatents. Public patent clarity: the public can add prior art references for a given patent.
patents@stackexchange. A Q&A site for people interested in improving and participating in the patent system.
Patent examiners often use the online encyclopedia Wikipedia as a reference to get an overall feel for a given subject.[19][20] Citations of Wikipedia as actual prior art can be problematic, however, due to the fluid and open nature of its editing, and Patents Commissioner Doll said the agency used Wikipedia entries as background and not as a basis for accepting or rejecting an application.[20]

See also
Defensive publication
Illegal number, illegal prime
Information disclosure statement (IDS)
Internet as a source of prior art
Micropatent
Non-binding opinion (United Kingdom patent law)
Patent classification
Patent watch
Priority right
Public participation in patent examination
Search report
Notable prior art databases
Espacenet—European Patent Office public patent literature database, with patents from many patent offices.
Google Patents—public search engine from Google that indexes patents from the United States Patent and Trademark Office (USPTO) and other international patent offices, and machine-CPC-classified non-patent literature from Google Scholar.
For other patent search services, see Category:Patent search services.

The Internet Archive Wayback Machine is recognized by the USPTO as a valid source of prior art on the Internet, though generally the date of archiving is considered the first published date, rather than the date on any documents that have been archived.[21][22]









Prima facie
https://en.wikipedia.org/wiki/Prima_facie#Burden_of_proof
Prima facie (/ˌpraɪmə ˈfeɪʃi, -ʃə, -ʃiiː/; from Latin prīmā faciē) is a Latin expression meaning on its first encounter or at first sight.[1] The literal translation would be 'at first face' or 'at first appearance', from the feminine forms of primus ('first') and facies ('face'), both in the ablative case. In modern, colloquial and conversational English, a common translation would be "on the face of it". The term prima facie is used in modern legal English (including both civil law and criminal law) to signify that upon initial examination, sufficient corroborating evidence appears to exist to support a case. In common law jurisdictions, prima facie denotes evidence that, unless rebutted, would be sufficient to prove a particular proposition or fact. The term is used similarly in academic philosophy. Most legal proceedings, in most jurisdictions, require a prima facie case to exist, following which proceedings may then commence to test it, and create a ruling.[2]


Contents
1	Burden of proof
2	Res ipsa loquitur
3	Use in academic philosophy
4	Other uses and references
5	See also
6	References
7	Further reading
Burden of proof
Main article: Legal burden of proof
In most legal proceedings, one party has a burden of proof, which requires it to present prima facie evidence for all of the essential facts in its case. If it cannot, its claim may be dismissed without any need for a response by other parties.[2] A prima facie case might not stand or fall on its own; if an opposing party introduces other evidence or asserts an affirmative defense, it can only be reconciled with a full trial. Sometimes the introduction of prima facie evidence is informally called making a case or building a case.

For example, in a trial under criminal law, the prosecution has the burden of presenting prima facie evidence of each element of the crime charged against the defendant. In a murder case, this would include evidence that the victim was in fact dead, that the defendant's act caused the death, and that the defendant acted with malice aforethought. If no party introduces new evidence, the case stands or falls just by the prima facie evidence or lack thereof, respectively.

Prima facie evidence does not need to be conclusive or irrefutable: at this stage, evidence rebutting the case is not considered, only whether any party's case has enough merit to take it to a full trial.

In common law jurisdictions such as the United Kingdom and the United States, the prosecution in a criminal trial must disclose all evidence to the defense. This includes the prima facie evidence.

An aim of the doctrine of prima facie is to prevent litigants from bringing spurious charges which simply waste all other parties' time.

Res ipsa loquitur
Prima facie is often confused with res ipsa loquitur ('the thing speaks for itself', or literally 'the thing itself speaks'), the common law doctrine that when the facts make it self-evident that negligence or other responsibility lies with a party, it is not necessary to provide extraneous details, since any reasonable person would immediately find the facts of the case.

The difference between the two is that prima facie is a term meaning there is enough evidence for there to be a case to answer, while Res ipsa loquitur means that the facts are so obvious a party does not need to explain any more. For example: "There is a prima facie case that the defendant is liable. They controlled the pump. The pump was left on and flooded the plaintiff's house. The plaintiff was away and had left the house in the control of the defendant. Res ipsa loquitur."

In Canadian tort law, this doctrine has been subsumed by general negligence law.[citation needed]

Use in academic philosophy
The phrase is also used in academic philosophy. Among its most notable uses is in the theory of ethics first proposed by W. D. Ross in his book The Right and the Good, often called the Ethic of Prima Facie Duties, as well as in epistemology, as used, for example, by Robert Audi. It is generally used in reference to an obligation. "I have a prima facie obligation to keep my promise and meet my friend" means that I am under an obligation, but this may yield to a more pressing duty. A more modern usage prefers the title pro tanto obligation: an obligation that may be later overruled by another more pressing one; it exists only pro tempore.

Other uses and references

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (June 2014) (Learn how and when to remove this template message)

Example of a prima facie speed limit posted in Rapid River, Michigan (United States)
The phrase prima facie is sometimes misspelled prima facia in the mistaken belief that facia is the actual Latin word; however, faciē is in fact the ablative case of faciēs, a fifth declension Latin noun.

In policy debate theory, prima facie is used to describe the mandates or planks of an affirmative case, or, in some rare cases, a negative counterplan. When the negative team appeals to prima facie, it appeals to the fact that the affirmative team cannot add or amend anything in its plan after being stated in the first affirmative constructive.

A common usage of the phrase is the concept of a "prima facie speed limit", which has been used in Australia and the United States. A prima facie speed limit is a default speed limit that applies when no other specific speed limit is posted, and may be exceeded by a driver. However, if the driver is detected, and cited by police for exceeding the limit, the onus of proof is on the driver, to show that the speed at which the driver was travelling was safe under the circumstances. In most jurisdictions, this type of speed limit has been replaced by absolute speed limits.

See also
	Look up prima facie in Wiktionary, the free dictionary.
Defeasible reasoning
List of Latin phrases
Probable cause
Proximate cause
Pseudologia fantastica





Pathological lying
https://en.wikipedia.org/wiki/Pathological_lying
Pathological lying, also known as mythomania and pseudologia fantastica, is a mental disorder in which the person habitually or compulsively lies.[1][2][3][4][5]

It was first described in the medical literature in 1895 by Anton Delbrück [de].[3] Although it is a controversial topic,[3] pathological lying has been defined as "falsification entirely disproportionate to any discernible end in view, may be extensive and very complicated, and may manifest over a period of years or even a lifetime".[2]


Contents
1	Characteristics
2	Diagnosis
3	Psychopathy
4	Pathological liars
5	Epidemiology
6	See also
7	References
8	Further reading
9	External links
Characteristics
Defining characteristics of pathological lying include

An internal motive for the behavior cannot be discerned clinically: e.g., long-lasting extortion or habitual spousal battery might cause a person to lie repeatedly, without the lying being a pathological symptom.[3]
The stories told tend toward presenting the liar favorably. The liar "decorates their own person"[6] by telling stories that present them as the hero or the victim. For example, the person might be presented as being fantastically brave, as knowing or being related to many famous people, or as having great power, position, or wealth.
Some psychiatrists distinguish compulsive from pathological lying, while others consider them equivalent; yet others deny the existence of compulsive lying altogether; this remains an area of considerable controversy.[7]

Diagnosis
Pathological lying is listed in the Diagnostic and Statistical Manual of Mental Disorders, although only as a symptom of other disorders such as psychopathy and antisocial, narcissistic, and histrionic personality disorders, not as a stand-alone diagnosis.[8] The ICD-10 disorder Haltlose personality disorder is strongly tied to pathological lying.[9]

It has been shown through lie detector tests that PF (pseudologia fantastica) patients exhibit arousal, stress, and guilt from their deception. This is different from psychopaths, who experience none of those reactions. People affected by antisocial disorder lie for external personal profit in the forms of money, sex, and power. PF is strictly internal. The difference between borderline personality disorder (BPD) and PF is that BPD patients desperately try to cope with their feeling of abandonment, mistreatment, or rejection by making empty threats of suicide or false accusations of abandonment. Pathological liars do not feel rejected; they have high levels of self-assurance that help them lie successfully. Unlike those with histrionic personality, pathological liars are more verbally dramatic than sexually flamboyant. Narcissists think they have achieved perfection and are unempathetic to others. PF patients do not show these anti-social behaviors; they often lie because they think their life is not interesting enough.[8]

The only diagnosis in the current system where purposeless, internally motivated deception is listed is axis I factitious disorder. This diagnosis deals with people who lie about having physical or psychological disorders (research must be done to confirm the individual does not in fact have a disorder. This may become troublesome due to the fact that medical records are sealed to the public). People with PF tend to lie about their identities and past history. Since the symptoms do not match up, the individual may go undiagnosed.[citation needed] Though they could well be diagnosed under the catch-all rubric of unspecified personality disorder (UPD) (ICD-10 code F69) or perhaps even under ICD-10 code F68.8 "Other specified disorder of adult personality and behaviour" as this defines itself as "This category should be used for coding any specified disorder of adult personality and behaviour that cannot be classified under any one of the preceding headings". Here the specified disorder is the lying for psychological reasons (not material ones e.g. sexual self-gratification etc.) and the behavior would also need to meet the necessary conditions to be viewed as a psychiatric illness.

Psychopathy
Pathological lying is in Factor 1 of the Psychopathy Checklist (PCL).[10]

Pathological liars
Lying is the act of both knowingly and intentionally or willfully making a false statement.[11] Normal lies are defensive and are told to avoid the consequences of truth telling. They are often white lies that spare another's feelings, reflect a pro-social attitude, and make civilized human contact possible.[8] Pathological lying can be described as a habituation of lying. It is when an individual consistently lies for no personal gain.

There are many consequences of being a pathological liar. Due to lack of trust, most pathological liars' relationships and friendships fail. If this continues to progress, lying could become so severe as to cause legal problems, including, but not limited to, fraud.[12]

Epidemiology
The average age of onset is 21 years when the level of intelligence is average or above average. Sufferers have also shown above average verbal skills as opposed to performance abilities.[citation needed] Thirty percent of subjects had a chaotic home environment, where a parent or other family member had a mental disturbance. Its occurrence was found by the study to be equal in women and men.[6][8] Forty percent of cases reported central nervous system abnormality such as epilepsy, abnormal EEG findings, ADHD, head trauma, or CNS infection.[8]

See also
Compulsive behavior
Confabulation
Child lying
Ganser syndrome
Gaslighting
Munchausen syndrome
Psychological projection



Factitious disorder imposed on another
https://en.wikipedia.org/wiki/Factitious_disorder_imposed_on_another
Factitious disorder imposed on another (FDIA), also known as Munchausen syndrome by proxy (MSbP), is a condition in which a caregiver creates the appearance of health problems in another person, typically their child.[7] This may include injuring the child or altering test samples.[7] They then present the person as being sick or injured.[5] The behaviour occurs without a specific benefit to the caregiver.[5] Permanent injury or death of the child may occur as a result of the disorder.[7]

The cause of FDIA is unknown.[2] The primary motive may be to gain attention and manipulate physicians.[4] Risk factors for FDIA include pregnancy related complications and a mother who was abused as a child or has factitious disorder imposed on self.[3] Diagnosis is supported when removing the child from the caregiver results in improvement of symptoms or video surveillance without the knowledge of the caregiver finds concerns.[4] Those affected by the disorder have been subjected to a form of physical abuse and medical neglect.[1]

Management of FDIA may require putting the child in foster care.[2][4] It is not known how effective therapy is for FDIA; it is assumed it may work for those who admit they have a problem.[4] The prevalence of FDIA is unknown,[5] but it appears to be relatively rare.[4] More than 95% of cases involve a person's mother.[3]

The prognosis for the mother is poor.[4] However, there is a burgeoning literature on possible courses of therapy.[3]

The condition was first named, as "Munchausen syndrome by proxy", in 1977 by British paediatrician Roy Meadow.[4] Some aspects of FDIA may represent criminal behavior.[5]


Contents
1	Signs and symptoms
2	Diagnosis
2.1	Warning signs
3	Epidemiology
4	Society and culture
4.1	Terminology
4.2	Initial description
4.3	Controversy
4.4	Legal status
4.5	Notable cases
5	Directed towards animals
6	See also
7	References
8	External links
Signs and symptoms
In factitious disorder imposed on another, a caregiver makes a dependent person appear mentally or physically ill in order to gain attention. To perpetuate the medical relationship, the caregiver systematically misrepresents symptoms, fabricates signs, manipulates laboratory tests, or even purposely harms the dependent (e.g. by poisoning, suffocation, infection, physical injury).[6] Studies have shown a mortality rate of between six and ten percent, making it perhaps the most lethal form of abuse.[8][9]

In one study, the average age of the affected individual at the time of diagnosis was 4 years old. Slightly over 50% were aged 24 months or younger, and 75% were under six years old. The average duration from onset of symptoms to diagnosis was 22 months. By the time of diagnosis, six percent of the affected persons were dead, mostly from apnea (a common result of smothering) or starvation, and seven percent had long-term or permanent injury. About half of the affected had siblings; 25% of the known siblings were dead, and 61% of siblings had symptoms similar to the affected or that were otherwise suspicious. The mother was the perpetrator in 76.5% of the cases, the father in 6.7%.[9]

Most present about three medical problems in some combination of the 103 different reported symptoms. The most-frequently reported problems are apnea (26.8% of cases), anorexia or feeding problems (24.6% of cases), diarrhea (20%), seizures (17.5%), cyanosis (blue skin) (11.7%), behavior (10.4%), asthma (9.5%), allergy (9.3%), and fevers (8.6%).[9] Other symptoms include failure to thrive, vomiting, bleeding, rash, and infections.[8][10] Many of these symptoms are easy to fake because they are subjective. A parent reporting that their child had a fever in the past 24 hours is making a claim that is impossible to prove or disprove. The number and variety of presented symptoms contribute to the difficulty in reaching a proper diagnosis.

Aside from the motive (most commonly attributed to be a gain in attention or sympathy), another feature that differentiates FDIA from "typical" physical child abuse is the degree of premeditation involved. Whereas most physical abuse entails lashing out at a child in response to some behavior (e.g., crying, bedwetting, spilling food), assaults on the FDIA victim tend to be unprovoked and planned.[11]

Also unique to this form of abuse is the role that health care providers play by actively, albeit unintentionally, enabling the abuse. By reacting to the concerns and demands of perpetrators, medical professionals are manipulated into a partnership of child maltreatment.[6] Challenging cases that defy simple medical explanations may prompt health care providers to pursue unusual or rare diagnoses, thus allocating even more time to the child and the abuser. Even without prompting, medical professionals may be easily seduced into prescribing diagnostic tests and therapies that are at best uncomfortable and costly, and at worst potentially injurious to the child.[1] If the health practitioner resists ordering further tests, drugs, procedures, surgeries, or specialists, the FDIA abuser makes the medical system appear negligent for refusing to help a sick child and their selfless parent.[6] Like those with Munchausen syndrome, FDIA perpetrators are known to switch medical providers frequently until they find one that is willing to meet their level of need; this practice is known as "doctor shopping" or "hospital hopping".

The perpetrator continues the abuse because maintaining the child in the role of patient satisfies the abuser's needs. The cure for the victim is to separate the child completely from the abuser. When parental visits are allowed, sometimes there is a disastrous outcome for the child. Even when the child is removed, the perpetrator may then abuse another child: a sibling or other child in the family.[6]

Factitious disorder imposed on another can have many long-term emotional effects on a child. Depending on their experience of medical interventions, a percentage of children may learn that they are most likely to receive the positive maternal attention they crave when they are playing the sick role in front of health care providers. Several case reports describe Munchausen syndrome patients suspected of themselves having been FDIA victims.[12] Seeking personal gratification through illness can thus become a lifelong and multi-generational disorder in some cases.[6] In stark contrast, other reports suggest survivors of FDIA develop an avoidance of medical treatment with post-traumatic responses to it.[13] This variation may reflect similar diametrically opposed outcomes in the broader population of child abuse victims; where most do not go on to become abusers, but statistics showing around 35% of abusers were a victim of abuse in the past.[14][improper synthesis?]

The adult caregiver who has abused the child often seems comfortable and not upset over the child's hospitalization. While the child is hospitalized, medical professionals must monitor the caregiver's visits to prevent an attempt to worsen the child's condition.[15] In addition, in many jurisdictions, medical professionals have a duty to report such abuse to legal authorities.[16]

Diagnosis
Munchausen syndrome by proxy is a controversial term. In the World Health Organization's International Statistical Classification of Diseases, 10th Revision (ICD-10), the official diagnosis is factitious disorder (301.51 in ICD-9, F68.12 in ICD-10). Within the United States, factitious disorder imposed on another (FDIA or FDIoA) was officially recognized as a disorder in 2013,[5] while in the United Kingdom, it is known as fabricated or induced illness by carers (FII).[17]

In DSM-5, the diagnostic manual published by the American Psychiatric Association in 2013, this disorder is listed under 300.19 Factitious disorder. This, in turn, encompasses two types:[5]

Factitious disorder imposed on self – (formerly Munchausen syndrome).
Factitious disorder imposed on another – (formerly Munchausen syndrome by proxy); diagnosis assigned to the perpetrator; the person affected may be assigned an abuse diagnosis (e.g. child abuse).
Warning signs
Warning signs of the disorder include:[15]

A child who has one or more medical problems that do not respond to treatment or that follow an unusual course that is persistent, puzzling, and unexplained.
Physical or laboratory findings that are highly unusual, discrepant with patient's presentation or history, or physically or clinically impossible.
A parent who appears medically knowledgeable, fascinated with medical details and hospital gossip, appears to enjoy the hospital environment, and expresses interest in the details of other patients' problems.
A highly attentive parent who is reluctant to leave their child's side and who themselves seem to require constant attention.
A parent who appears unusually calm in the face of serious difficulties in their child's medical course while being highly supportive and encouraging of the physician, or one who is angry, devalues staff, and demands further intervention, more procedures, second opinions, and transfers to more sophisticated facilities.
The suspected parent may work in the health-care field themselves or profess an interest in a health-related job.
The signs and symptoms of a child's illness may lessen or simply vanish in the parent's absence (hospitalization and careful monitoring may be necessary to establish this causal relationship).
A family history of similar or unexplained illness or death in a sibling.
A parent with symptoms similar to their child's own medical problems or an illness history that itself is puzzling and unusual.
A suspected emotionally distant relationship between parents; the spouse often fails to visit the patient and has little contact with physicians even when the child is hospitalized with a serious illness.
A parent who reports dramatic, negative events, such as house fires, burglaries, or car accidents, that affect them and their family while their child is undergoing treatment.
A parent who seems to have an insatiable need for adulation or who makes self-serving efforts for public acknowledgment of their abilities.
A child who inexplicably deteriorates whenever discharge is planned.
A child that looks for cueing from a parent in order to feign illness when medical personnel are present.
A child that is overly articulate regarding medical terminology and their own disease process for their age.
A child that presents to the Emergency Department with a history of repeat illness, injury, or hospitalization.
Epidemiology
FDIA is rare. Incidence rate estimates range from 1 to 28 per million children,[6] although some assume that it may be much more common.[6]

One study showed that in 93 percent of FDIA cases, the abuser is the mother or another female guardian or caregiver.[11] A psychodynamic model of this kind of maternal abuse exists.[18]

Fathers and other male caregivers have been the perpetrators in only seven percent of the cases studied.[9] When they are not actively involved in the abuse, the fathers or male guardians of FDIA victims are often described as being distant, emotionally disengaged, and powerless. These men play a passive role in FDIA by being frequently absent from the home and rarely visiting the hospitalized child. Usually, they vehemently deny the possibility of abuse, even in the face of overwhelming evidence or their child's pleas for help.[6][11]

Overall, male and female children are equally likely to be the victim of FDIA. In the few cases where the father is the perpetrator, however, the victim is three times more likely to be male.[9]

One study in Italy found that 4 out of more than 700 children admitted to the hospital met the criteria (0.53%). In this study, stringent diagnostic criteria were used, which required at least one test outcome or event that could not possibly have occurred without deliberate intervention by the FDIA person.[19]

Society and culture
Terminology
The term "Munchausen syndrome by proxy", in the United States, has never officially been included as a discrete mental disorder by the American Psychiatric Association,[20] which publishes the Diagnostic and Statistical Manual of Mental Disorders (DSM), now in its fifth edition.[5] Although the DSM-III (1980) and DSM-III-R (1987) included Munchausen syndrome, they did not include MSbP. DSM-IV (1994) and DSM-IV-TR (2000) added MSbP as a proposal only, and although it was finally recognized as a disorder in DSM-5 (2013), each of the last three editions of the DSM designated the disorder by a different name.

FDIA has been given different names in different places and at different times. What follows is a partial list of alternative names that have been either used or proposed (with approximate dates):[17]

Factitious Disorder Imposed on Another (current) (U.S., 2013) American Psychiatric Association, DSM-5
Factitious Disorder by Proxy (FDP, FDbP) (proposed) (U.S., 2000) American Psychiatric Association, DSM-IV-TR[21]
Fictitious Disorder by Proxy (FDP, FDbP) (proposed) (U.S., 1994) American Psychiatric Association, DSM-IV
Fabricated or Induced Illness by Carers (FII) (U.K., 2002) The Royal College of Pediatrics and Child Health[22]
Factitious Illness by Proxy (1996) World Health Organization[23]
Pediatric Condition Falsification (PCF) (proposed) (U.S., 2002) American Professional Society on the Abuse of Children proposed this term to diagnose the victim (child); the perpetrator (caregiver) would be diagnosed "factitious disorder by proxy"; MSbP would be retained as the name applied to the 'disorder' that contains these two elements, a diagnosis in the child and a diagnosis in the caretaker.[24]
Induced Illness (Munchausen Syndrome by Proxy) (Ireland, 1999–2002) Department of Health and Children[17]
Munchausen Syndrome by Proxy (2002) Professor Roy Meadow.[17][4]
Meadow's Syndrome (1984–1987) named after Roy Meadow.[25] This label, however, had already been in use since 1957 to describe a completely unrelated and rare form of cardiomyopathy.[26]
Polle Syndrome (1977–1984) coined by Burman and Stevens, from the then-common belief that Baron Münchhausen's second wife gave birth to a daughter named Polle during their marriage.[27][28] The baron declared that the baby was not his, and the child died from "seizures" at the age of 10 months. The name fell out of favor after 1984, when it was discovered that Polle was not the baby's name, but rather was the name of her mother's hometown.[29][30]
While it initially included only the infliction of harmful medical care, the term has subsequently been extended to include cases in which the only harm arose from medical neglect, noncompliance, or even educational interference.[1] The term is derived from Munchausen syndrome, a psychiatric factitious disorder wherein those affected feign disease, illness, or psychological trauma to draw attention, sympathy, or reassurance to themselves.[31] Munchausen syndrome by proxy perpetrators, by contrast, are willing to fulfill their need for positive attention by hurting their own child, thereby assuming the sick role onto their child, by proxy. These proxies then gain personal attention and support by taking on this fictitious "hero role" and receive positive attention from others, by appearing to care for and save their so-called sick child.[6] They are named after Baron Munchausen, a literary character based on Hieronymus Karl Friedrich, Freiherr von Münchhausen (1720–1797), a German nobleman and well-known storyteller. In 1785, writer and con artist Rudolf Erich Raspe anonymously published a book in which a fictional version of "Baron Munchausen" tells fantastic and impossible stories about himself, establishing a popular literary archetype of a bombastic exaggerator.[32][33]

Initial description
"Munchausen syndrome" was first described by R. Asher in 1951[34] as when someone invents or exaggerates medical symptoms, sometimes engaging in self-harm, to gain attention or sympathy.

The term "Munchausen syndrome by proxy" was first coined by John Money and June Faith Werlwas in a 1976 paper titled Folie à deux in the parents of psychosocial dwarfs: Two cases[35][36] to describe the abuse-induced and neglect-induced symptoms of the syndrome of abuse dwarfism. That same year, Sneed and Bell wrote an article titled The Dauphin of Munchausen: factitious passage of renal stones in a child.[37]

According to other sources, the term was created by the British pediatrician Roy Meadow in 1977.[29][38][39] In 1977, Roy Meadow – then professor of pediatrics at the University of Leeds, England – described the extraordinary behavior of two mothers. According to Meadow, one had poisoned her toddler with excessive quantities of salt. The other had introduced her own blood into her baby's urine sample. This second case occurred during a series of Outpatient visits to the Paediatric Clinic of Dr. Bill Arrowsmith at Doncaster Royal Infirmary. He referred to this behavior as Munchausen syndrome by proxy (MSbP).[40]

The medical community was initially skeptical of FDIA's existence, but it gradually gained acceptance as a recognized condition.

Controversy
See also: List of wrongful convictions in the United States
During the 1990s and early 2000s, Roy Meadow was an expert witness in several murder cases involving MSbP/FII. Meadow was knighted for his work for child protection, though later, his reputation, and consequently the credibility of MSbP, became damaged when several convictions of child killing, in which he acted as an expert witness, were overturned. The mothers in those cases were wrongly convicted of murdering two or more of their children, and had already been imprisoned for up to six years.[41][39]

One case was that of Sally Clark. Clark was a lawyer wrongly convicted in 1999 of the murder of her two baby sons, largely on the basis of Meadow's evidence. As an expert witness for the prosecution, Meadow asserted that the odds of there being two unexplained infant deaths in one family were one in 73 million. That figure was crucial in sending Clark to jail but was hotly disputed by the Royal Statistical Society, who wrote to the Lord Chancellor to complain.[42] It was subsequently shown that the true odds were much greater once other factors (e.g. genetic or environmental) were taken into consideration, meaning that there was a significantly higher likelihood of two deaths happening as a chance occurrence than Meadow had claimed during the trial. Those odds in fact range from a low of 1:8500 to as high as 1:200.[43] It emerged later that there was clear evidence of a Staphylococcus aureus infection that had spread as far as the child's cerebrospinal fluid.[44] Clark was released in January 2003 after three judges quashed her convictions in the Court of Appeal in London,[44][45] but suffering from catastrophic trauma of the experience, she later died from alcohol poisoning. Meadow was involved as a prosecution witness in three other high-profile cases resulting in mothers being imprisoned and subsequently cleared of wrongdoing: Trupti Patel,[46] Angela Cannings[47] and Donna Anthony.[48]

In 2003, Lord Howe, the Opposition spokesman on health, accused Meadow of inventing a "theory without science" and refusing to produce any real evidence to prove that Munchausen syndrome by proxy actually exists. It is important to distinguish between the act of harming a child, which can be easily verified, and motive, which is much harder to verify and which FDIA tries to explain. For example, a caregiver may wish to harm a child out of malice and then attempt to conceal it as illness to avoid detection of abuse, rather than to draw attention and sympathy.

The distinction is often crucial in criminal proceedings, in which the prosecutor must prove both the act and the mental element constituting a crime to establish guilt. In most legal jurisdictions, a doctor can give expert witness testimony as to whether a child was being harmed but cannot speculate regarding the motive of the caregiver. FII merely refers to the fact that illness is induced or fabricated and does not specifically limit the motives of such acts to a caregiver's need for attention and/or sympathy.

In all, around 250 cases resulting in conviction in which Meadow was an expert witness were reviewed, with few[citation needed] changes, but all where the only evidence was Meadow’s expert testimony were overturned. Meadow was investigated by the British General Medical Council (GMC) over evidence he gave in the Sally Clark trial. In July 2005, the GMC declared Meadow guilty of "serious professional misconduct", and he was struck off the medical register for giving "erroneous" and "misleading" evidence.[49] At appeal, High Court judge Mr. Justice Collins said that the severity of his punishment "approaches the irrational" and set it aside.[50][51]

Collins's judgment raises important points concerning the liability of expert witnesses – his view is that referral to the GMC by the losing side is an unacceptable threat and that only the Court should decide whether its witnesses are seriously deficient and refer them to their professional bodies.[52]

In addition to the controversy surrounding expert witnesses, an article appeared in the forensic literature that detailed legal cases involving controversy surrounding the murder suspect.[53] The article provides a brief review of the research and criminal cases involving Munchausen syndrome by proxy in which psychopathic mothers and caregivers were the murderers. It also briefly describes the importance of gathering behavioral data, including observations of the parents who commit the criminal acts. The article references the 1997 work of Southall, Plunkett, Banks, Falkov, and Samuels, in which covert video recorders were used to monitor the hospital rooms of suspected FDIA victims. In 30 out of 39 cases, a parent was observed intentionally suffocating their child; in two they were seen attempting to poison a child; in another, the mother deliberately broke her 3-month-old daughter's arm. Upon further investigation, those 39 patients, ages 1 month to 3 years old, had 41 siblings; 12 of those had died suddenly and unexpectedly.[54] The use of covert video, while apparently extremely effective, raises controversy in some jurisdictions over privacy rights.

Legal status
In most legal jurisdictions, doctors are allowed to give evidence only in regard to whether the child is being harmed. They are not allowed to give evidence in regard to the motive. Australia and the UK have established the legal precedent that FDIA does not exist as a medico-legal entity.

In a June 2004 appeal hearing, the Supreme Court of Queensland, Australia, stated:

As the term factitious disorder (Munchausen's Syndrome) by proxy is merely descriptive of a behavior, not a psychiatrically identifiable illness or condition, it does not relate to an organized or recognized reliable body of knowledge or experience. Dr. Reddan's evidence was inadmissible.[55]

The Queensland Supreme Court further ruled that the determination of whether or not a defendant had caused intentional harm to a child was a matter for the jury to decide and not for the determination by expert witnesses:

The diagnosis of Doctors Pincus, Withers, and O'Loughlin that the appellant intentionally caused her children to receive unnecessary treatment through her own acts and the false reporting of symptoms of the factitious disorder (Munchausen Syndrome) by proxy is not a diagnosis of a recognized medical condition, disorder, or syndrome. It is simply placing her within the medical term used in the category of people exhibiting such behavior. In that sense, their opinions were not expert evidence because they related to matters that could be decided on the evidence by ordinary jurors. The essential issue as to whether the appellant reported or fabricated false symptoms or did acts to intentionally cause unnecessary medical procedures to injure her children was a matter for the jury's determination. The evidence of Doctors Pincus, Withers, and O'Loughlin that the appellant was exhibiting the behavior of factitious disorder (Munchausen syndrome by proxy) should have been excluded.[56]

Principles of law and implications for legal processes that may be deduced from these findings are that:

Any matters brought before a Court of Law should be determined by the facts, not by suppositions attached to a label describing a behavior, i.e., MSBP/FII/FDBP;
MSBP/FII/FDBP is not a mental disorder (i.e., not defined as such in DSM IV), and the evidence of a psychiatrist should not therefore be admissible;
MSBP/FII/FDBP has been stated to be a behavior describing a form of child abuse and not a medical diagnosis of either a parent or a child. A medical practitioner cannot therefore state that a person "suffers" from MSBP/FII/FDBP, and such evidence should also therefore be inadmissible. The evidence of a medical practitioner should be confined to what they observed and heard and what forensic information was found by recognized medical investigative procedures;
A label used to describe a behavior is not helpful in determining guilt and is prejudicial. By applying an ambiguous label of MSBP/FII to a woman is implying guilt without factual supportive and corroborative evidence;
The assertion that other people may behave in this way, i.e., fabricate and/or induce illness in children to gain attention for themselves (FII/MSBP/FDBY), contained within the label is not factual evidence that this individual has behaved in this way. Again therefore, the application of the label is prejudicial to fairness and a finding based on fact.
The Queensland Judgment was adopted into English law in the High Court of Justice by Mr. Justice Ryder. In his final conclusions regarding Factitious Disorder, Ryder states that:

I have considered and respectfully adopt the dicta of the Supreme Court of Queensland in R v. LM [2004] QCA 192 at paragraph 62 and 66. I take full account of the criminal law and foreign jurisdictional contexts of that decision but I am persuaded by the following argument upon its face that it is valid to the English law of evidence as applied to children proceedings.

The terms "Munchausen syndrome by proxy" and "factitious (and induced) illness (by proxy)" are child protection labels that are merely descriptions of a range of behaviors, not a pediatric, psychiatric or psychological disease that is identifiable. The terms do not relate to an organized or universally recognized body of knowledge or experience that has identified a medical disease (i.e. an illness or condition) and there are no internationally accepted medical criteria for the use of either label.

In reality, the use of the label is intended to connote that in the individual case there are materials susceptible of analysis by pediatricians and of findings of fact by a court concerning fabrication, exaggeration, minimization or omission in the reporting of symptoms and evidence of harm by act, omission or suggestion (induction). Where such facts exist the context and assessments can provide an insight into the degree of risk that a child may face and the court is likely to be assisted as to that aspect by psychiatric and/or psychological expert evidence.

All of the above ought to be self evident and has in any event been the established teaching of leading pediatricians, psychiatrists and psychologists for some while. That is not to minimize the nature and extent of professional debate about this issue which remains significant, nor to minimize the extreme nature of the risk that is identified in a small number of cases.

In these circumstances, evidence as to the existence of MSBP or FII in any individual case is as likely to be evidence of mere propensity which would be inadmissible at the fact finding stage (see Re CB and JB supra). For my part, I would consign the label MSBP to the history books and however useful FII may apparently be to the child protection practitioner I would caution against its use other than as a factual description of a series of incidents or behaviors that should then be accurately set out (and even then only in the hands of the pediatrician or psychiatrist/psychologist). I cannot emphasis too strongly that my conclusion cannot be used as a reason to re-open the many cases where facts have been found against a carer and the label MSBP or FII has been attached to that carer's behavior. What I seek to caution against is the use of the label as a substitute for factual analysis and risk assessment.[57]

In his book Playing Sick (2004), Marc Feldman notes that such findings have been in the minority among U.S. and even Australian courts. Pediatricians and other physicians have banded together to oppose limitations on child-abuse professionals whose work includes FII detection.[58] The April 2007 issue of the journal Pediatrics specifically mentions Meadow as an individual who has been inappropriately maligned.

In the context of child protection (a child being removed from the custody of a parent), the Australian state of New South Wales uses a "on the balance of probabilities" test, rather than a "beyond reasonable doubt" test. Therefore in the case "The Secretary, Department of Family and Community Services and the Harper Children [2016] NSWChC 3", the expert testimony of Professor David Isaacs that a certain blood test result was "highly unlikely" to occur naturally or accidentally (without any speculation about motive), was sufficient to refuse the return of the affected child and his younger siblings to the mother. The children had initially been removed from the mother's custody after the blood test results became known. The fact that the affected child quickly improved both medically and behaviourly after being removed was also a factor.[59]

Notable cases
Beverley Allitt, a British nurse who murdered four children and injured a further nine in 1991 at Grantham and Kesteven Hospital, Lincolnshire, was diagnosed with Munchausen syndrome by proxy.[60]

Wendi Michelle Scott is a Frederick, Maryland, mother who was charged with sickening her four-year-old daughter.[61]

The book Sickened, by Julie Gregory, details her life growing up with a mother suffering from Munchausen by proxy, who took her to various doctors, coached her to act sicker than she was and to exaggerate her symptoms, and who demanded increasingly invasive procedures to diagnose Gregory's enforced imaginary illnesses.[62]

Lisa Hayden-Johnson of Devon was jailed for three years and three months after subjecting her son to a total of 325 medical actions – including being forced to use a wheelchair and being fed through a tube in his stomach. She claimed her son had a long list of illnesses including diabetes, food allergies, cerebral palsy, and cystic fibrosis, describing him as "the most ill child in Britain" and receiving numerous cash donations and charity gifts, including two cruises.[63]

In the mid-1990s, Kathy Bush gained public sympathy for the plight of her daughter, Jennifer, who by the age of 8 had undergone 40 surgeries and spent over 640 days in hospitals[64] for gastrointestinal disorders. The acclaim led to a visit with first lady Hillary Clinton, who championed the Bushs' plight as evidence of need for medical reform. However, in 1996, Kathy Bush was arrested and charged with child abuse and Medicaid fraud, accused of sabotaging Jennifer's medical equipment and drugs to agitate and prolong her illness.[64] Jennifer was moved to foster care where she quickly regained her health. The prosecutors claimed Kathy was driven by Munchausen Syndrome by Proxy, and she was convicted to a five-year sentence in 1999.[65] Kathy was released after serving three years in 2005, always maintaining her innocence, and having gotten back in contact with Jennifer via correspondence.[66]

In 2014, 26-year-old Lacey Spears was charged in Westchester County, New York, with second-degree depraved murder and first-degree manslaughter. She fed her son dangerous amounts of salt after she conducted research on the Internet about its effects. Her actions were allegedly motivated by the social media attention she gained on Facebook, Twitter, and blogs. She was convicted of second-degree murder on March 2, 2015,[67] and sentenced to 20 years to life in prison.[68]

Dee Dee Blanchard was a Missouri mother who was murdered by her daughter and a boyfriend in 2015 after having claimed for years that her daughter, Gypsy Rose, was sick and disabled; to the point of shaving her head, making her use a wheelchair in public, and subjecting her to unnecessary medication and surgery. Gypsy possessed no outstanding illnesses. Feldman said it is the first case he is aware of in a quarter-century of research where the victim killed the abuser.[69] Their story was shown on HBO's documentary film Mommy Dead and Dearest[70] and is featured in the first season of the Hulu anthology series The Act.[71] Gypsy Rose pleaded guilty to second-degree murder and is serving a ten year sentence, her boyfriend was convicted of first-degree murder and is sentenced to life in prison without parole.

Rapper Eminem has spoken about how his mother would frequently take him to hospitals to receive treatment for illnesses that he did not have. His song “Cleanin' Out My Closet” includes a lyric regarding the illness, “...going through public housing systems victim of Münchausen syndrome. My whole life I was made to believe I was sick, when I wasn’t ‘til I grew up and blew up...” His mother's illness resulted in Eminem receiving custody of his younger brother, Nathan.[72]

In 2013, Boston Children's Hospital filed a 51A report to take custody of Justina Pelletier, who was 14 at the time. At 21 she was living with her parents. Her parents are suing Boston Children's Hospital, alleging that their civil rights were violated when she was committed to a psychiatric ward and their access to her was limited. At the trial, Pelletier's treating neurologist described how her parents encouraged her to be sick and were endangering her health.[73]

Directed towards animals
Medical literature describes a subset of FDIA caregivers, where the proxy is a pet rather than another person. These cases are labeled Munchausen syndrome by proxy: pet (MSbP:P). In these cases, pet owners correspond to caregivers in traditional FDIA presentations involving human proxies.[74] No extensive survey has yet been made of the extant literature, and there has been no speculation as to how closely FDIA:P tracks with human FDIA.[citation needed]

See also
Psychosomatic illness
Munchausen by Internet
Folie à deux
Hypochondria
Run (2020 American film)




Statist
https://en.wikipedia.org/wiki/Statism
In political science, statism is the doctrine that the political authority of the state is legitimate to some degree.[1][2][3] This may include economic and social policy, especially in regard to taxation and the means of production.[1][2][4][5][6]

While in use since the 1850s, the term statism gained significant usage in American political discourse throughout the 1930s and 1940s. Opposition to statism is termed anti-statism or anarchism. The latter is characterized by a complete rejection of all hierarchical rulership.[7]


Contents
1	Overview
2	Economic statism
2.1	State capitalism
2.2	State interventionism
2.3	State socialism
3	See also
4	References
Overview
Statism can take many forms from small government to big government. Minarchism is a political philosophy that prefers a minimal state such as a night-watchman state to protect people from aggression, theft, breach of contract and fraud with military, police and courts. This may also include fire departments, prisons and other functions.[8][9][10][11] The welfare state is another form within the spectrum of statism.[12][13] Authoritarian philosophies view a strong, authoritative state as required to legislate or enforce morality and cultural practices.[14][15] Totalitarianism is that which prefers a maximum, all-encompassing state.[16][17][18][19][20]

Political theory has long questioned the nature and rights of the state. Some forms of corporatism extol the moral position that the corporate group, usually the state, is greater than the sum of its parts and that individuals have a moral obligation to serve the state. Skepticism towards statism in Western cultures is largely rooted in Enlightenment philosophy. John Locke notably influenced modern thinking in his writings published before and after the English Revolution of 1688, especially A Letter Concerning Toleration (1667), Two Treatises of Government (1689) and An Essay Concerning Human Understanding (1690). In the text of 1689, he established the basis of liberal political theory, i.e. that people's rights existed before government; that the purpose of government is to protect personal and property rights; that people may dissolve governments that do not do so; and that representative government is the best form to protect rights.[21]

Economic statism
Economic statism promotes the view that the state has a major, necessary and legitimate role in directing the major aspects of the economy, either directly through state-owned enterprises and economic planning of production, or indirectly through economic interventionism and macro-economic regulation.[22]

State capitalism
Main article: State capitalism
State capitalism is a form of capitalism that features high concentrations of state-owned commercial enterprises or state direction of an economy based on the accumulation of capital, wage labor and market allocation.

In some cases, state capitalism refers to economic policies such as dirigisme, which existed in France during the second half of the 20th century and to the present-day economies of the People's Republic of China and Singapore, where the government owns controlling shares in publicly traded companies.[23] Some authors also define the former economies of the Eastern Bloc as constituting a form of state capitalism.

State interventionism
Main article: State interventionism
The term statism is sometimes used to refer to market economies with large amounts of government intervention, regulation or influence over markets. Market economies that feature high degrees of intervention are sometimes referred to as "mixed economies". Economic interventionism asserts that the state has a legitimate or necessary role within the framework of a capitalist economy by intervening in markets, regulating against overreaches of private sector industry and either providing or subsidizing goods and services not adequately produced by the market.

State socialism
Main article: State socialism
State socialism broadly refers to forms of socialism based on state ownership of the means of production and state-directed allocation of resources. It is often used in reference to Soviet-type economic systems of former communist states.

In some cases, when used in reference to Soviet-type economies, state socialism is used interchangeably with state capitalism[24] on the basis that the Soviet model of economics was actually based upon a process of state-directed capital accumulation and social hierarchy.[25]

Politically, state socialism is often used to designate any socialist political ideology or movement that advocates for the use of state power for the construction of socialism, or to the belief that the state must be appropriated and used to ensure the success of a socialist revolution. It is usually used in reference to Marxist–Leninist socialists who champion a single-party state.

See also
Statism
at Wikipedia's sister projects
Definitions from Wiktionary
Media from Wikimedia Commons
News from Wikinews
Quotations from Wikiquote
Texts from Wikisource
Textbooks from Wikibooks
Resources from Wikiversity
Anarchism and libertarianism
Anti-statism
Autocracy
Big government and small government
Fascism
Federalism
Imperialism
Oligarchy
Stateless society
Sovereignty
Subsidiarity






Night-watchman state
https://en.wikipedia.org/wiki/Night-watchman_state
A night-watchman state or minarchy is a model of a state that is limited and minimal, whose only functions are to act as an enforcer of the non-aggression principle by providing citizens with the military, the police and courts, thereby protecting them from aggression, theft, breach of contract, fraud and enforcing property laws. Its proponents are called minarchists.[1][2][3]

In the United States of America, this form of government is mainly associated with libertarian and objectivist political philosophy. However, minarchism has also been advocated by non-anarchist libertarian socialists and other left-libertarians.[4][5] Some left-wing anarchists have also proposed or supported a minimal welfare state on the grounds that social safety nets are short-term goals for the working class[6] and believe in stopping welfare programs only if it means abolishing both government and capitalism.[7] Other left-libertarians prefer repealing corporate welfare before social welfare for the poor.[8]

A night-watchman state has been advocated and made popular by Robert Nozick in Anarchy, State, and Utopia (1974).[9] 19th-century Britain has been described by historian Charles Townshend as a standard-bearer of this form of government.[10]


Contents
1	Origin
2	Philosophy
3	See also
4	References
4.1	Notes
4.2	Bibliography
5	External links
Origin
As a term, night-watchman state (German: Nachtwächterstaat) was coined by German socialist Ferdinand Lassalle in an 1862 speech in Berlin. He criticized the bourgeois liberal limited government state, comparing it to a night-watchman whose sole duty was preventing theft. The phrase quickly caught on as a description of capitalist government, even as liberalism began to mean a more involved state, or a state with a larger sphere of responsibility.[11]

Ludwig von Mises later opined that Lassalle tried to make limited government look ridiculous, but that it was no more ridiculous than governments that concerned themselves with "the preparation of sauerkraut, with the manufacture of trouser buttons, or with the publication of newspapers".[12]

Proponents of the night-watchman state are minarchists, a portmanteau of minimum and -archy. Arche (/ˈɑːrki/; Ancient Greek: ἀρχή) is a Greek word which came to mean "first place, power", "method of government", "empire, realm", "authorities" (in plural: ἀρχαί), or "command".[13] The term minarchist was coined by Samuel Edward Konkin III in 1980.[14]

Philosophy
Minarchists generally justify the state on the grounds that it is the logical consequence of adhering to the non-aggression principle.[1][2][3] They argue that anarcho-capitalism is impractical because it is not sufficient to enforce the non-aggression principle because the enforcement of laws under anarchism is open to competition.[15] Another common justification is that private defense and court firms would tend to represent the interests of those who pay them enough.[16]

Some minarchists argue that a state is inevitable, believing anarchy to be futile.[17] Robert Nozick, who publicized the idea of a minimal state in Anarchy, State, and Utopia (1974), argued that a night-watchman state provides a framework that allows for any political system that respects fundamental individual rights and therefore morally justifies the existence of a state.[9][18]

See also
	Libertarianism portal
Anarchism
Anarchism and anarcho-capitalism
Anarcho-capitalism
Anarcho-capitalism and minarchism
Constitutional liberalism
Debates within libertarianism
Left-libertarianism
Libertarianism
Libertarianism in the United States
Libertarian socialism
Objectivism (Ayn Rand)
Objectivist movement
Objectivism and libertarianism
Small government
Right-libertarianism
Taxation as theft
Voluntaryism







Factitious disorder imposed on self
https://en.wikipedia.org/wiki/Factitious_disorder_imposed_on_self#Munchausen_by_Internet
Factitious disorder imposed on self, also known as Munchausen syndrome, is a factitious disorder where those affected feign disease, illness, or psychological trauma to draw attention, sympathy, or reassurance to themselves. Munchausen syndrome fits within the subclass of factitious disorder with predominantly physical signs and symptoms, but patients also have a history of recurrent hospitalization, travelling, and dramatic, extremely improbable tales of their past experiences.[2] The condition derives its name from the fictional character Baron Munchausen.

Factitious disorder imposed on self is related to factitious disorder imposed on another, which refers to the abuse of another person, typically a child, in order to seek attention or sympathy for the abuser. This drive to create symptoms for the victim can result in unnecessary and costly diagnostic or corrective procedures.[3]


Contents
1	Signs and symptoms
2	Diagnosis
3	Treatment
4	History
5	Munchausen by Internet
6	See also
7	References
8	Bibliography
9	External links
Signs and symptoms
In factitious disorder imposed on self, the affected person exaggerates or creates symptoms of illnesses in themselves to gain examination, treatment, attention, sympathy or comfort from medical personnel. It often involves elements of victim playing and attention seeking. In some extreme cases, people suffering from Munchausen syndrome are highly knowledgeable about the practice of medicine and are able to produce symptoms that result in lengthy and costly medical analysis, prolonged hospital stays, and unnecessary operations. The role of patient is a familiar and comforting one, and it fills a psychological need in people with this syndrome. This disorder is distinct from hypochondriasis and other somatoform disorders in that those with the latter do not intentionally produce their somatic symptoms.[4] Factitious disorder is distinct from malingering in that people with factitious disorder imposed on self don't fabricate symptoms for material gain such as financial compensation, absence from work, or access to drugs.

The exact cause of factitious disorder is not known, but researchers believe both biological and psychological factors play a role in the development of this disorder. Risk factors for developing factitious disorder may include childhood traumas, growing up with parents/caretakers who were emotionally unavailable due to illness or emotional problems, a serious illness as a child, failed aspirations to work in the medical field, personality disorders, and low self-esteem. While there are no reliable statistics regarding the number of people in the United States who suffer from factitious disorder, FD is believed to be most common in mothers having the above risk factors. Those with a history of working in healthcare are also at greater risk of developing it.[5]

Arrhythmogenic Munchausen syndrome describes individuals who simulate or stimulate cardiac arrhythmias to gain medical attention.[6]

A similar behavior called factitious disorder imposed on another has been documented in the parent or guardian of a child. The adult ensures that his or her child will experience some medical affliction, therefore compelling the child to suffer through treatments and spend a significant portion during youth in hospitals. Furthermore, a disease may actually be initiated in the child by the parent or guardian. This condition is considered distinct from Munchausen syndrome. There is growing consensus in the pediatric community that this disorder should be renamed "medical abuse" to highlight the harm caused by the deception and to make it less likely that a perpetrator can use a psychiatric defense when harm is done.[7]

Diagnosis
Due to the behaviors involved, diagnosing factitious disorder is very difficult. If the healthcare provider finds no physical reason for the symptoms, he or she may refer the person to a psychiatrist or psychologist (mental health professionals who are specially trained to diagnose and treat mental illnesses). Psychiatrists and psychologists use thorough history, physical examinations, laboratory tests, imagery, and psychological testing to evaluate a person for physical and mental conditions. Once the person's history has been thoroughly evaluated, diagnosing factitious disorder imposed on self requires a clinical assessment.[8] Clinicians should be aware that those presenting with symptoms (or persons reporting for that person) may exaggerate, and caution should be taken to ensure there is evidence for a diagnosis.[8] Lab tests may be required, including complete blood count (CBC), urine toxicology, drug levels from blood, cultures, coagulation tests, assays for thyroid function, or DNA typing. In some cases CT scan, magnetic resonance imaging, psychological testing, electroencephalography, or electrocardiography may also be employed.[8] A summary of more common and reported cases of factitious disorder (Munchausen syndrome), and the laboratory tests used to differentiate these from physical disease is provided below:[9]

Disease Mimicked	Method of Imitation	Laboratory/Diagnostic Confirmation
Bartter syndrome	
Surreptitious intake of diuretics
Self-induced vomiting
High performance liquid chromatography (HPLC) analysis of urine
Urine chloride analysis
Catecholamine-secreting tumor	Injection of epinephrine into urine or blood stream	Adjunct analysis of increased Chromogranin A
Cushing’s syndrome	Surreptitious steroid administration	HPLC to differentiate endogenous and exogenous steroids
Hyperthyroid	Surreptitious thyroxine administration	Blood tests for free T4 and thyroid stimulating hormone
Hypoglycaemia	Exogenous insulin or insulin secretagogues	Simultaneous blood analysis of insulin, C-peptide, proinsulin, and insulin secretagogues
Sodium imbalance	Intake large quantities of salt	Measure fractional sodium excretion to differentiate intentional salt overload from dehydration.
Chronic diarrhea	
Watered down stool samples
Laxative abuse
Measure fecal osmolarity
Urine analysis to screen for laxatives using gas chromatography or mass spectrometry
Induced vomiting	Although many alternatives possible, ipecacuanha ingestion	HPLC measurement of serum or urine for elevated creatine kinase, transaminases and ipecacuanha
Proteinuria	Egg protein injection into bladder, albumin (protein) addition to urine samples	Urine protein electrophoresis analysis
Haematuria	Blood introduction to urine samples, deliberate trauma to the urethra	Imaging to rule out insertion of a foreign body, monitor sample collection, analysis of red blood cell shape in samples
There are several criteria that together may point to factitious disorder, including frequent hospitalizations, knowledge of several illnesses, frequently requesting medication such as pain killers, openness to extensive surgery, few or no visitors during hospitalizations, and exaggerated or fabricated stories about several medical problems. Factitious disorder should not be confused with hypochondria, as people with factitious disorder syndrome do not really believe they are sick; they only want to be sick, and thus fabricate the symptoms of an illness. It is also not the same as pretending to be sick for personal benefit such as being excused from work or school.[10]

People may fake their symptoms in multiple ways. Other than making up past medical histories and faking illnesses, people might inflict harm on themselves by consuming laxatives or other substances, self-inflicting injury to induce bleeding, and altering laboratory samples".[11] Many of these conditions do not have clearly observable or diagnostic symptoms and sometimes the syndrome will go undetected because patients will fabricate identities when visiting the hospital several times. Factitious disorder has several complications, as these people will go to great lengths to fake their illness. Severe health problems, serious injuries, loss of limbs or organs, and even death are possible complications.[medical citation needed]

Treatment
Because there is uncertainty in treating suspected factitious disorder imposed on self, some advocate that health care providers first explicitly rule out the possibility that the person has another early-stage disease.[12] Then they may take a careful history and seek medical records to look for early deprivation, childhood abuse, or mental illness.[citation needed][8] If a person is at risk to themself, psychiatric hospitalization may be initiated.[13]

Healthcare providers may consider working with mental health specialists to help treat the underlying mood or disorder as well as to avoid countertransference.[14] Therapeutic and medical treatment may center on the underlying psychiatric disorder: a mood disorder, an anxiety disorder, or borderline personality disorder. The patient's prognosis depends upon the category under which the underlying disorder falls; depression and anxiety, for example, generally respond well to medication or cognitive behavioral therapy, whereas borderline personality disorder, like all personality disorders, is presumed to be pervasive and more stable over time,[15] and thus offers a worse prognosis.

People affected may have multiple scars on their abdomen due to repeated "emergency" operations.[16]

History
The name "Munchausen syndrome" derives from Baron Munchausen, a literary character loosely based on the German nobleman Hieronymus Karl Friedrich, Freiherr von Münchhausen (1720–1797). The historical baron became a well-known storyteller in the late 18th century for entertaining dinner guests with tales about his adventures during the Russo-Turkish War. In 1785 German-born writer and con artist Rudolf Erich Raspe anonymously published a book in which a heavily fictionalized version of "Baron Munchausen" tells many fantastic and impossible stories about himself. Raspe's Munchausen became a sensation, establishing a literary exemplar of a bombastic liar or exaggerator.[17][18]

In 1951, Richard Asher was the first to describe a pattern of self-harm, wherein individuals fabricated histories, signs, and symptoms of illness. Remembering Baron Munchausen, Asher named this condition Munchausen's Syndrome in his article in The Lancet in February 1951,[19] quoted in his obituary in the British Medical Journal:

"Here is described a common syndrome which most doctors have seen, but about which little has been written. Like the famous Baron von Munchausen, the persons affected have always travelled widely; and their stories, like those attributed to him, are both dramatic and untruthful. Accordingly the syndrome is respectfully dedicated to the Baron, and named after him."

— British Medical Journal, R.A.J. Asher, M.D., F.R.C.P.[20]
Asher's nomenclature sparked some controversy, with medical authorities debating the appropriateness of the name for about fifty years. While Asher was praised for bringing cases of factitious disorder to light, participants in the debate objected variously that a literary allusion was inappropriate given the seriousness of the disease; that its use of the anglicized spelling "Munchausen" showed poor form; that the name linked the disease with the real-life Münchhausen, who did not have it; and that the name's connection to works of humor and fantasy, and to the essentially ridiculous character of the fictional Baron Munchausen, was disrespectful to patients suffering from the disorder.[21]

Originally, this term was used for all factitious disorders. Now, however, in the DSM-5, "Munchausen syndrome" and "Munchausen by proxy" have been replaced with "factitious disorder" and "factitious disorder by proxy" respectively.

Munchausen by Internet
Munchausen by Internet is a term describing the pattern of behavior in factitious disorder imposed on self, wherein those affected feign illnesses in online venues. It has been described in medical literature as a manifestation of factitious disorder imposed on self.[22] Reports of users who deceive Internet forum participants by portraying themselves as gravely ill or as victims of violence first appeared in the 1990s due to the relative newness of Internet communications. The specific internet pattern was named "Münchausen by Internet" in 1998 by psychiatrist Marc Feldman.[22]

People may attempt to gain sympathy from a group whose sole reason for existence is to support others. Some have speculated that Health care professionals, with their limited time, greater medical knowledge, and tendency to be more skeptical in their diagnoses, may be less likely to provide that support.[22][23][24]

In an article published in The Guardian, Steve Jones, speculated that the anonymity of the Internet impedes people's abilities to realize when someone is lying.[25] Online interaction has only been possible since the 1980s, steadily growing over the years.[26][27][28]

When discovered, forum members are frequently banned from some online forums. Because no money is exchanged and laws are rarely broken, there is little legal recourse to take upon discovery of someone faking illness.[29]

Such dramatic situations can polarize online communities. Members may feel ashamed for believing elaborate lies, while others remain staunch supporters.[22][30] Feldman admits that an element of sadism may be evident in some of the more egregious abuses of trust.[31][23][32][26]

Other perpetrators react by issuing general accusations of dishonesty to everyone, following the exposure of such fabrications. The support groups themselves often bar discussion about the fraudulent perpetrator, in order to avoid further argument and negativity. Many forums do not recover, often splintering or shutting down.[23][32] In 2004, members of the blog hosting service LiveJournal established a forum dedicated to investigating cases of members of online communities dying—sometimes while online. New Zealand PC World Magazine called Munchausen by Internet "cybermunch", and those who posed online "cybermunchers".[33] In 2007 The LiveJournal forum reported that, of the deaths reported to them, about 10% were real.[34]

See also
icon	Psychiatry portal
Hypochondriasis
Psychosomatic illness
Sickened, an autobiography by Julie Gregory





Res ipsa loquitur
https://en.wikipedia.org/wiki/Res_ipsa_loquitur#History
Res ipsa loquitur (Latin: "the thing speaks for itself") is a doctrine in the Anglo-American common law and Roman Dutch law that says in a tort or civil lawsuit a court can infer negligence from the very nature of an accident or injury in the absence of direct evidence on how any defendant behaved. Although modern formulations differ by jurisdiction, Anglo-American common law originally stated that the accident must satisfy the necessary elements of negligence: duty, breach of duty, causation, and injury. In res ipsa loquitur, the elements of duty of care, breach, and causation are inferred from an injury that does not ordinarily occur without negligence.


Contents
1	History
2	Elements
3	Exclusive control requirement
4	Typical in medical malpractice
5	Contrast to prima facie
6	Examples by jurisdictions
6.1	Canada
6.2	Hong Kong
6.3	Ireland
6.4	South Africa
6.5	United Kingdom
6.5.1	England and Wales
6.5.2	Scotland
6.6	United States
7	References
8	External links
History
The term comes from Latin and is literally translated "the thing itself speaks", but the sense is well conveyed in the more common translation, "the thing speaks for itself".[1] The earliest known use of the phrase was by Cicero in his defence speech Pro Milone.[2][3] The circumstances of the genesis of the phrase and application by Cicero in Roman legal trials has led to questions whether it reflects on the quality of res ipsa loquitur as a legal doctrine subsequent to 52 BC, some 1915 years before the English case Byrne v Boadle and the question whether Charles Edward Pollock might have taken direct inspiration from Cicero's application of the maxim in writing his judgment in that case.[4]

Elements

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (August 2018) (Learn how and when to remove this template message)
The injury is of the kind that does not ordinarily occur without negligence or is uncommon in the course and nature of said act.
The injury is caused by an agency or instrumentality within the exclusive control of the defendant.
The injury-causing accident is not by any voluntary action or contribution on the part of the plaintiff.
The defendant's non-negligent explanation does not completely explain plaintiff’s injury.
The first element may be satisfied in one of three ways:

The injury itself is sufficient to prove blatant or palpable negligence as a matter of law, such as amputation of the wrong limb or leaving instruments inside the body after surgery.
The general experience and observation of mankind is sufficient to support the conclusion that the injury would not have resulted without negligence, such as a hysterectomy (removal of the uterus) performed when the patient consented only to a tubal ligation (clipping of the fallopian tubes for purposes of sterilization).
Expert testimony creates an inference that negligence caused the injury, such as an expert general surgeon testifying that he has performed over 1000 appendectomies (removal of the appendix) and has never caused injury to a patient's liver. He also does not know of any of his surgeon colleagues having inflicted injury to a patient's liver during an appendectomy. The testimony would create an inference that injuring the liver in the course of an appendectomy is negligence.
The second element is discussed further in the section below. The third element requires the absence of contributory negligence from the plaintiff. The fourth element emphasizes that defendant may defeat a res ipsa loquitur claim by producing evidence of a non-negligent scenario that would completely explain plaintiff's injury and negate all possible inferences that negligence could have occurred.

Exclusive control requirement
The common law traditionally required "the instrumentality or agent which caused the accident was under the exclusive control of the defendant." See e.g., Eaton v. Eaton, 575 A2d 858 (NJ 1990). However, the second and the third versions of the Restatement of Torts eliminated the strict requirement because it can be difficult to prove "exclusive control". Accordingly, the element has largely given way in modern cases to a less rigid formulation: the evidence must eliminate, to a sufficient degree, other responsible causes (including the conduct of the plaintiff and third parties). For example, in New York State, the defendant's exclusivity of control must be such that the likelihood of injury was more likely than not, the result of the defendant's negligence. The likelihood of other possibilities does not need to be eliminated altogether but must be so reduced that the greater probability lies with the defendant.

Here is a fictitious example:

John Doe is injured when an elevator he has entered plunges several floors and stops abruptly.
Jane's Corporation built and is responsible for maintaining the elevator.
John sues Jane, who claims that his complaint should be dismissed because he has never proved or even offered a theory as to why the elevator functioned incorrectly. Therefore, she argues that there is no evidence that they were at fault.
The court holds that John does not have to prove anything beyond the fall itself.
The elevator evidently malfunctioned (it was not intended to fall, and that is not a proper function of a correctly-functioning elevator).
Jane was responsible for the elevator in every respect.
Therefore, Jane's Corporation is responsible for the fall.
The thing speaks for itself: no further explanation is needed to establish the prima facie case.
In some cases, a closed group of people may be held in breach of a duty of care under the rule of res ipsa loquitur. In Ybarra v. Spangard,[5] a patient undergoing surgery experienced back complications as a result of the surgery, but it could not be determined the specific member of the surgical team who had breached the duty so it was held that they had all breached, as it was certain that at least one of them was the only person who was in exclusive control of the instrumentality of harm.

In jurisdictions that employ this less rigid formulation of exclusive control, the element subsumes the element that the plaintiff did not contribute to his injury. In modern case law, contributory negligence is compared to the injury caused by the other. For example, if the negligence of the other is 95% of the cause of the plaintiff's injury, and the plaintiff is 5% responsible, the plaintiff's slight fault cannot negate the negligence of the other. The new type of split liability is commonly called comparative negligence.

Typical in medical malpractice
Res ipsa loquitur often arises in the "scalpel left behind" variety of case. For example, a person goes to a doctor with abdominal pains after having his appendix removed. X-rays show the patient has a metal object the size and shape of a scalpel in his abdomen. It requires no further explanation to show the surgeon who removed the appendix was negligent, as there is no legitimate reason for a doctor to leave a scalpel in a body at the end of an appendectomy.[6]

Contrast to prima facie
Res ipsa loquitur is often confused with prima facie ("at first sight"), the common law doctrine that a party must show some minimum amount of evidence before a trial is worthwhile.

The difference between the two is that prima facie is a term meaning there is enough evidence for there to be a case to answer. Res ipsa loquitur means that because the facts are so obvious, a party need not explain any more. For example: "There is a prima facie case that the defendant is liable. They controlled the pump. The pump was left on and flooded the plaintiff's house. The plaintiff was away and had left the house in the control of the defendant. Res ipsa loquitur."

Examples by jurisdictions
Canada
In Canada the doctrine of res ipsa loquitur has been largely overturned by the Supreme Court. In case of Fontaine v. British Columbia (Official Administrator)[7] the Court rejected the use of res ipsa loquitur and instead proposed the rule that once the plaintiff has proven that the harm was under exclusive control of the defendant and that they were not contributorily negligent a tactical burden is placed on the defendant in which the judge has the discretion to infer negligence unless the defendant can produce evidence to the contrary.

Hong Kong
Hong Kong is one of the common law jurisdictions that use the doctrine of res ipsa loquitur.

Some lawyers prefer to avoid the expression res ipsa loquitur (for example, Hobhouse LJ in Radcliff v. Plymouth).[8] But other lawyers (and judges too) still find the expression a convenient one (for example, see the judgement of Mr Justice Bokhary, a Permanent Judge of the Court of Final Appeal of Hong Kong, in Sanfield Building Contractors Ltd v. Li Kai Cheong).[9]

The expression res ipsa loquitur is not a doctrine but a "mode of inferential reasoning" and applies only to accidents of unknown cause.[9][10] Res ipsa loquitur comes into play where an accident of unknown cause is one that would not normally happen without negligence on the part of the defendant in control of the object or activity which injured the plaintiff or damaged his property. In such a situation the court is able to infer negligence on the defendant's part unless he offers an acceptable explanation consistent with his having taken reasonable care.[9]

Ireland
The Irish courts have applied the doctrine. In Hanrahan v. Merck, Sharp & Dohme (Ireland) Ltd. [1988] ILRM 629 the supreme court held that in cases of nuisance the burden of proof could be shifted to the defendant where it would be palpably unfair for the plaintiff to have to prove something beyond their reach. The facts concerned poisoning of farm animals downwind of a chemical plant.[11]

In Rothwell v. The Motor Insurers Bureau of Ireland [2003] 1 IR 268 the supreme court held the burden of proof would shift when the knowledge is exclusive to the defendant, but also where it is "especially within the range" of the defendant’s capacity to probe the facts.

South Africa
In South African law (which is modelled on Roman Dutch law), there is no doctrine of res ipsa loquitur, although the phrase is used regularly to mean the "facts speak for themselves". Res ipsa loquitur does not shift any burden of proof or onus from one party to the other. The phrase is merely a handy phrase used by lawyers.

United Kingdom
The doctrine exists in both English law and Scots law.

England and Wales
In English tort law, the effect of res ipsa loquitur is a strong inference in favour of the claimant that negligence has taken place. It does not however fully reverse the burden of proof (Ng Chun Pui v. Li Chuen Tat, 1988).[12]

The requirement of control is important in English law. This requirement was not satisfied in Easson v. LNE Ry [1944] 2 KB 421, where a small child fell off a train several miles after it had left the station. It was considered that the door of the train was not sufficiently under control of the railway company after the train started moving and could have been opened by somebody for whom the company was not responsible. This case was distinguished from the earlier Gee v. Metropolitan Ry[13] where the plaintiff fell from the train immediately after it left the station, when the door through which he fell could still be considered to be fully controlled by the railway company.

The requirement that the exact cause of the accident must be unknown is illustrated by the case of Barkway v. South Wales Transport.[14] In this case a bus veered across the road and it was known that the accident was caused by a flat tyre. In this case, the plaintiff could not be assisted by res ipsa loquitur and had to go on to prove that the flat tyre was caused by the transport company's negligence.

Scotland
The doctrine exists in the Scots law of delict. The leading case is that of Scott v London & Catherine Dock Co.[15] This case laid down 3 requirements for the doctrine to apply:

There must be reasonable evidence of negligence
The circumstances must be under the direct control of the defender or his servants
The accident must be of such a type that would not occur without negligence.
In Scott, the court held that sacks of sugar do not fall out of warehouses and crush passers-by without somebody having been negligent along the way.

Recent examples in Scotland are McDyer v Celtic Football Club[16] and McQueen v The Glasgow Garden Festival 1988 Ltd.[17]

United States
Under United States common law, res ipsa loquitur has the following requirements:

The event does not normally occur unless someone has acted negligently;
The evidence rules out the possibility that the actions of the plaintiff or a third party caused the injury; and
The type of negligence in question falls within the scope of the defendant's duty to the plaintiff.[18]
Most American courts recognize res ipsa loquitur. The Restatement (Second) of Torts, § 328D describes a two-step process for establishing res ipsa loquitur. The first step is whether the accident is the kind usually caused by negligence, and the second is whether or not the defendant had exclusive control over the instrumentality that caused the accident. If found, res ipsa loquitur creates an inference of negligence, although in most cases it does not necessarily result in a directed verdict. The Restatement (Third) of Torts, § 17, adopts a similar test, although it eschews the exclusive control element.

The doctrine was not initially welcome in medical malpractice cases. In Gray v. Wright,[19] a seven-inch hemostat was left in Mrs. Gray during gallbladder surgery in June 1947, and despite her chronic complaints about stomach pain over the years, the device was not found until an X-ray in March 1953, when it was removed. Her $12,000 award was reversed by the Supreme Court of West Virginia because she was outside the statute of limitations when she filed and could not prove that the doctor concealed knowledge of his error. This "guilty knowledge" requirement disappeared over the years, and the "discovery rule" by which statutes of limitation run from the date of discovery of the wrongdoing rather than the date of the occurrence has become the rule in most states.

Forty years later, leaving a medical device in a patient was medical malpractice, provable without expert testimony, in almost every jurisdiction.[20] Virginia has limited the rule. The Virginia Supreme Court stated in 1996: "Almost 60 years ago, this Court, discussing res ipsa loquitur, said: 'In Virginia the doctrine, if not entirely abolished, has been limited and restricted to a very material extent.' City of Richmond v. Hood Rubber Products Co., 168 Va. 11, 17, 190 S.E. 95, 98 (1937). ... It may be utilized only when the circumstances of the incident, without further proof, are such that, in the ordinary course of events, the incident could not have happened except on the theory of negligence."[21]

A contention of res ipsa loquitur commonly is made in cases of commercial airplane accidents. It was part of the commentary in a train collision in California in 2008: "If two trains are in the same place at the same time, someone was negligent."[22]

In some states, the doctrine of res ipsa loquitur is also used as a method of proving the intent or mens rea element of the inchoate crime of attempt. Under the Model Penal Code, "the behavior in question is thought to corroborate the defendant's criminal purpose",[23] for example:

Possession of materials to be employed in the commission of the crime, which are specifically designed for such unlawful use or which serve no lawful purpose of the actor under the circumstances

— Model Penal Code[23]






Workerism
https://en.wikipedia.org/wiki/Workerism#As_revolutionary_praxis
Workerism is a political theory that emphasizes the importance of, or glorifies, the working class.[1] Workerism, or operaismo, was of particular significance in Italian left politics.


Contents
1	As revolutionary praxis
2	As a negative cultural phenomenon
3	See also
4	References
5	Further reading
6	External links
6.1	Workerism as revolutionary movement
6.2	Workerism as pejorative
As revolutionary praxis
See also: Autonomism
Workerism (or operaismo) is a political analysis, whose main elements were to merge into autonomism, that starts out from the power of the working class. Michael Hardt and Antonio Negri, known as operaist and autonomist writers, offer a definition of operaismo, quoting from Marx as they do so:

Operaismo builds on Marx's claim that capital reacts to the struggles of the working class; the working class is active and capital reactive.
Technological development: Where there are strikes, machines will follow. "It would be possible to write a whole history of the inventions made since 1830 for the sole purpose of providing capital with weapons against working-class revolt." (Capital, Vol. 1, Chapter 15, Section 5)
Political development: The factory legislation in England was a response to the working class struggle over the length of the working day. "Their formulation, official recognition and proclamation by the State were the result of a long class struggle." (Capital, Vol. 1, Chapter 10, Section 6)
Operaismo takes this as its fundamental axiom: the struggles of the working class precede and prefigure the successive re-structurations of capital.[2]
The workerists followed Marx in seeking to base their politics on an investigation of working class life and struggle. Through translations made available by Danilo Montaldi and others, they drew upon previous activist research in the United States by the Johnson-Forest Tendency and in France by the group Socialisme ou Barbarie. The Johnson-Forest Tendency had studied working class life and struggles within the Detroit auto industry, publishing pamphlets such as "The American Worker" (1947), "Punching Out" (1952) and "Union Committeemen and Wildcat Strikes" (1955). That work was translated into French by Socialisme ou Barbarie and published, serially, in their journal. They too began investigating and writing about what was going on inside workplaces, in their case inside both auto factories and insurance offices.

The journal Quaderni Rossi ("Red Notebooks", 1961–5), along with its successor Classe Operaia ("Working Class", 1963–6), both founded by Negri and Tronti, developed workerist theory, focusing on the struggles of proletarians.

Associated with this theoretical development was a praxis based on workplace organising, most notably by Lotta Continua. This reached its peak in the Italian "Hot Autumn" of 1969.

By the mid-1970s, however, the emphasis shifted from the factory to "the social factory"—the everyday lives of working people in their communities. The operaist movement was increasingly known as autonomist.

As a negative cultural phenomenon
More broadly, workerism can imply the idealization of workers, especially manual workers, working class culture (or an idealized conception of it) and manual labour in general. Socialist realism is an example of a form of expression that would be likely[citation needed] to be accused of workerism in this sense, but this also applies to Fascism[citation needed], such as Franco's Falangist movement, which often used propaganda showing workers living and working in equitable conditions.[3][full citation needed]

The charge of workerism is often levelled at syndicalists.[citation needed] Traditional communist parties are also thought to be workerist, because of their supposed glorification of manual workers to the exclusion of white-collar workers.[citation needed]

This use of the term was the most common English language use during the twentieth century.[citation needed]

See also
Autonomism
Labourism
Mario Tronti
Raniero Panzieri
Sergio Bologna
References
 "workerism - definition of workerism in English - Oxford Dictionaries". Oxford Dictionaries - English.
 Marx's Mole is Dead! Globalisation and Communication , Michael Hardt, Antonio Negri, 2002 (Archived from the original).
 Granada, "The Spanish Revolution."
Further reading
Steve Wright Storming Heaven: Class composition and struggle in Italian Autonomist Marxism (University of Michigan Press ISBN 978-0-7453-1607-9) (Extract: The Workerists and the unions in Italy's 'Hot Autumn' at Libcom.org)
Michele Filippini, Leaping Forward. Mario Tronti and the History of Political Workerism (Jan Van Eyck Academie ISBN 90-72076-68-0)
External links
Workerism as revolutionary movement
Sergio Bologna, Workerism Beyond Fordism: On the Lineage of Italian Workerism at Viewpoint Magazine
A critique of autonomism, which grew from operaismo, published by a Trotskyist group
Interviews of members of the operaismo movement
Workerism as pejorative
"Workerism". Antagonism. Archived from the original on 2006-02-14. A critique of "workerism" with a Marxian definition of proletariat.
A critique of workerism from an ANC (South Africa) internal bulletin in 1986. It differentiates three types of workerism.






Autonomism
https://en.wikipedia.org/wiki/Autonomism#Etymology
Autonomism, also known as autonomist Marxism and autonomous Marxism, is an anti-authoritarian left-wing political and social movement and theory.[1][2][3] As a theoretical system, it first emerged in Italy in the 1960s from workerism (operaismo). Later, post-Marxist and anarchist tendencies became significant after influence from the Situationists, the failure of Italian far-left movements in the 1970s, and the emergence of a number of important theorists including Antonio Negri, who had contributed to the 1969 founding of Potere Operaio as well as Mario Tronti, Paolo Virno and Franco "Bifo" Berardi.

George Katsiaficas summarizes the forms of autonomous movements saying that "In contrast to the centralized decisions and hierarchical authority structures of modern institutions, autonomous social movements involve people directly in decisions affecting their everyday lives, seeking to expand democracy and help individuals break free of political structures and behavior patterns imposed from the outside".[4] This has involved a call for the independence of social movements from political parties[5] in a revolutionary perspective which seeks to create a practical political alternative to both authoritarian/state socialism and contemporary representative democracy.[6]

Autonomism influenced the German and Dutch Autonomen, the worldwide social centre movement and today is influential in Italy, France and to a lesser extent the English-speaking countries. Those who describe themselves as autonomists now vary from Marxists to anarchists.[7]


Contents
1	Etymology
2	Theory
3	By country
3.1	France
3.2	Germany
3.3	Italy
3.3.1	Influences
3.3.2	Direct action
4	Influence
4.1	Thinkers
4.2	Movements and organizations
4.3	Publications
5	See also
6	References
7	Bibliography
8	External links
8.1	Archives
8.2	Others
Etymology
The term autonomia or Autonome is composed out of two Greek words (αὐτο-, auto-, "self"; νόμος nomos, "law"), hence when combined understood to mean "one who gives oneself one's own law". Autonomy in this sense is not independence. While independence refers to an autarchic kind of life, separated from the community, autonomy refers to life in society but by one's own rule. Though the notion of autonomism was alien to the ancient Greeks, the concept is indirectly endorsed by Aristotle, who stated that only beasts or gods could be independent and live apart from the polis ("community"), while Kant defined the Enlightenment by autonomy of thought and the famous "Sapere aude" ("dare to know").

Theory
Part of a series on
Left communism
Liste 1924 - 19.svg
Concepts
Movements
People
Organizations
Related topics
AutonomismClassical MarxismImpossibilismUltra-leftismWorkerism
Symbol-hammer-and-sickle.svg Communism portal
Red flag II.svg Socialism portal
A coloured voting box.svg Politics portal
vte
Unlike other forms of Marxism, autonomist Marxism emphasises the ability of the working class to force changes to the organization of the capitalist system independent of the state, trade unions or political parties. Autonomists are less concerned with party political organization than other Marxists, focusing instead on self-organized action outside of traditional organizational structures. Autonomist Marxism is thus a "bottom-up" theory: it draws attention to activities that autonomists see as everyday working-class resistance to capitalism, such as absenteeism, slow working, socialization in the workplace, sabotage, and other subversive activities.

Like other Marxists, autonomists see class struggle as being of central importance. However, autonomists have a broader definition of the working class than do other Marxists: as well as wage-earning workers (both white collar and blue collar), autonomists also include in this category the unwaged (students, the unemployed, homemakers, etc.), who are traditionally deprived of any form of union representation.

Early theorists such as Mario Tronti, Antonio Negri, Sergio Bologna and Paolo Virno developed notions of "immaterial" and "social labour" that extended the Marxist concept of labour to all society. They suggested that modern society's wealth was produced by unaccountable collective work, and that only a little of this was redistributed to the workers in the form of wages. Other Italian autonomists—particularly feminists, such as Mariarosa Dalla Costa and Silvia Federici—emphasised the importance of feminism and the value of unpaid female labour to capitalist society. Micheal Ryan, a scholar of the movement, writes:

Autonomy, as a movement and as a theory, opposes the notion that capitalism is an irrational system which can be made rational through planning. Instead, it assumes the workers' viewpoint, privileging their activity as the lever of revolutionary passage as that which alone can construct a communist society. Economics is seen as being entirely political; economic relations are direct political relations of force between class subjects. And it is in the economic category of the social worker, not in an alienated political form like the party, that the initiative for political change resides.[8]

By country
France
Part of a series on
Libertarian socialism
Anarchist flag.svg
Political concepts
Economics
People
Philosophies and tendencies
Anarchist tendencies
Green PrimitivismSocial ecologyIndividualism EgoismFree-marketOrganisational InsurrectionismPlatformismMutualismSyndicalismSynthesismPhilosophicalSocial CollectivismCommunism MagonismPacifismReligious ChristianMuslimJewish
Marxist tendencies
Classical MarxismLibertarian Marxism AutonomismChaulieu–Montal tendencyDe LeonismJohnson–Forest tendencyLeft communism BordigismCommunizationCouncil communismLettrismSituationismMarxist humanismWestern Marxism Frankfurt SchoolFreudo-Marxism
Other tendencies
CantonalismCommunalism Democratic confederalismDialectical naturalismLibertarian municipalismSocial ecologyDemocratic socialismEco-socialismGuild socialismInclusive DemocracyMarket socialism Left-wing laissez-faireLeft-wing market anarchismNeozapatismoNew LeftParticipismUtopian socialism Fourierism
Significant events
Related topics
BlackFlagSymbol.svg Anarchism portal
Red flag II.svg Socialism portal
A coloured voting box.svg Politics portal
vte
In France, the Marxist group Socialisme ou Barbarie, led by philosopher Cornelius Castoriadis, could be said to be one of the first autonomist groups. Socialisme ou Barbarie drew upon the activist research of the American Johnson-Forest Tendency inside US auto plants and carried out their own investigations into rank-and-file workers struggles, struggles that were autonomous of union or party leadership. Also parallel to the work of the Johnson-Forest Tendency, Socialisme ou Barbarie harshly criticised the Communist regime in the Soviet Union, which it considered a form of "bureaucratic capitalism" and not at all the socialism it claimed to be. Philosopher Jean-François Lyotard was also part of this movement. However, the Italian influence of the operaismo movement was more directly felt in the creation of the review Matériaux pour l'intervention (1972–73) by Yann Moulier-Boutang, a French economist close to Toni Negri. This led in turn to the creation of the Camarades group (1974–78). Along with others, Moulier-Boutang joined the Centre International pour des Nouveaux Espaces de Liberté (CINEL), founded three years earlier by Félix Guattari, and assisted Italian activists accused of terrorism, of whom at least 300 fled to France.

The French autonome mouvement organised itself in the AGPA (Assemblée Parisienne des Groupes Autonomes, "Parisian Assembly of Autonome Groups"; 1977–78). Many tendencies were present in it, including the Camarades group led by Moulier-Boutang, members of the Organisation communiste libertaire, some people referring themselves to the "Desiring Autonomy" of Bob Nadoulek, but also squatters and street-wise people (including the groupe Marge). French autonomes supported captured Red Army Faction former members. Jean-Paul Sartre also intervened on the conditions for the detention of RAF detainees. The militant group Action directe appeared in 1979 and carried out several violent direct actions. Action Directe claimed responsibility for the murders of Renault's CEO Georges Besse and General Audran. George Besse had been CEO of nuclear company Eurodif. Action Directe was dissolved in 1987.

In the 1980s, the autonomist movement underwent a deep crisis in Italy because of effective prosecution by the State, and was stronger in Germany than in France. It remained present in Parisian squats and in some riots (for example in 1980 near the Jussieu Campus in Paris, or in 1982 in the Ardennes department during anti-nuclear demonstrations). From 1986 to 1994 the French group "Comité des mal logés" occupied several buildings of the French national social housing authority to denounce the cruel lack of lodging for workers, they were several hundred and took their decisions in democratic assembly, with support from all autonomous groups of Paris, many of them were worked on the anti prison . In the 1980s, the French autonomists published the periodicals CAT Pages (1981–82), Rebelles (1981–93), Tout ! (1982–85), Molotov et Confetti (1984), Les Fossoyeurs du Vieux Monde, La Chôme (1984–85), and Contre (1987–89). In the 1990s, the French autonomist movement was present in struggles led by unemployed people, with Travailleurs, Chômeurs, et Précaires en colère (TCP, "Angry Workers, Unemployed, and Marginalised people") and l'Assemblée générale des chômeurs de Jussieu ("General Assembly of Jussieu's unemployed people"). It was also involved in the alter-globalisation movement and above all in the solidarity with illegal foreigners (Collective Des Papiers pour tous ("Permits for all", 1996) and Collectif Anti-Expulsion (1998–2005)). Several autonomist journals date from this time: Quilombo (1988–93), Apache (1990–98), Tic-Tac (1995–97), Karoshi (1998–99), and Tiqqun (1999–2001).

From 19 to 28 July 2002, a no borders camp was made in Strasbourg to protest against anti-immigration policies, in particular inside the Schengen European space. In 2003, Autonomists came into conflict with the French Socialist Party (PS) during a demonstration that took place in the frame of the European Social Forum in Saint-Denis (Paris). At the end of December, hundreds of unemployed people helped themselves in the Bon Marché supermarket to be able to celebrate Christmas (an action called "autoréduction" (of prices) in French). French riot police (CRS) physically opposed the unemployed people inside the shop. Autonomes rioted during the spring 2006 protests against the CPE, and again after the 2007 presidential election when Nicolas Sarkozy was elected. On 11 November 2008, the French police arrested ten people, including five living in a farmhouse on a hill overlooking Tarnac, and accused them of associating with a "terrorist enterprise" by sabotaging TGV's overhead lines. Nine out of ten were let go and only Julien Coupat, the alleged leader, remained in custody for about a year, charged with "directing a terrorist group" by the Paris Prosecutor's office.

Germany
In West Germany, Autonome was used during the late 1970s to depict the most radical part of the political left.[9] These individuals participated in practically all actions of the social movements at the time, especially in demonstrations against nuclear energy plants (Brokdorf 1981, Wackersdorf 1986) and in actions against the construction of airport runways (Frankfurt 1976–86). The defense of squats against the police such as in Hamburg's Hafenstraße was also a major "task" for the "Autonomen" movement. The Dutch anarchist Autonomen movement from the 1960s also concentrated on squatting.

Tactics of the "Autonome" were usually militant, including the construction of barricades or throwing stones or molotov cocktails at the police. During their most powerful times in the early 1980s, on at least one occasion the police had to take flight. Because of their outfit (heavy black clothing, ski masks, helmets), the "Autonome" were dubbed der schwarze Block by the German media, and in these tactics were similar to modern black blocs. In 1989, laws regarding demonstrations in Germany were changed, prohibiting the use of so-called "passive weaponry" such as helmets or padding and covering your face. Today, the "autonome" scene in Germany is greatly reduced and concentrates mainly on anti-fascist actions, ecology, solidarity with refugees, and feminism. There are larger and more militant groups still in operation, such as in Switzerland or Italy.

Italy

Antonio Negri, a leading theorist of Italian autonomism
Autonomist Marxism—referred to in Italy as operaismo, which translates literally as "workerism"—first appeared in Italy in the early 1960s. Arguably, the emergence of early autonomism can be traced to the dissatisfaction of automotive workers in Turin with their union, which reached an agreement with FIAT. The disillusionment of these workers with their organised representation, along with the resultant riots (in particular the 1962 riots by FIAT workers in Turin, "fatti di Piazza Statuto"), were critical factors in the development of a theory of self-organised labour representation outside the scope of traditional representatives such as trade unions.

In 1969, the operaismo approach was active mainly in two different groups: Lotta Continua, led by Adriano Sofri (which had a very significant Roman Catholic cultural matrix), and Potere Operaio, led by Antonio Negri, Franco Piperno, Oreste Scalzone, and Valerio Morucci. Mario Capanna was the charismatic leader of the Milan student movement, which had a more classical Marxist-Leninist approach.

Influences
Through translations made available by Danilo Montaldi and others, the Italian autonomists drew upon previous activist research in the United States by the Johnson–Forest Tendency and in France by the group Socialisme ou Barbarie. The Johnson-Forest Tendency had studied working-class life and struggles within the US auto industry, publishing pamphlets such as "The American Worker" (1947), "Punching Out" (1952), and "Union Committeemen and Wildcat Strikes" (1955). That work was translated into French by Socialisme ou Barbarie and published, serially, in their journal. They too began investigating and writing about what was going on inside workplaces, in their case inside both auto factories and insurance offices.

The journal Quaderni Rossi ("Red Notebooks"), produced between 1961 and 1965, and its successor Classe Operaia ("Working Class"), produced between 1963 and 1966, were also influential in the development of early autonomism. Raniero Panzieri, Mario Tronti, and Toni Negri were some primary collaborators. Pirate radio stations also were a factor in spreading autonomist ideas. Bologna's Radio Alice was an example of such a station.

Direct action
Further information: Years of Lead (Italy)

Askatasuna autonomist social center in Turin, 2016
The Italian student movement, including the Indiani Metropolitani (Metropolitan Indians), starting from 1966 with the murder of student Paolo Rossi by neo-fascists at Rome University, engaged in various direct action operations, including riots and occupations, along with more peaceful activities such as self-reduction, in which individuals refused to pay for such services and goods as public transport, electricity, gas, rent, and food. Several clashes occurred between students and the police during the occupations of universities in the winter of 1967–68, during the Fiat occupations, and in March 1968 in Rome during the Battle of Valle Giulia.

Indiani Metropolitani were a small faction active in the Italian far-left protest movement during 1976 and 1977, in the so-called "Years of Lead". The Indiani Metropolitani were the so-called 'creative' wing of the movement. Its adherents wore face-paint like the war-paint of Native Americans and dressed like hippies. The emphasis was on "stare insieme" (being together), spontaneity and the arts, especially music. The group was active in Rome, during the occupation of the university La Sapienza in 1977.

On 11 March 1977, riots took place in Bologna following the killing of student Francesco Lorusso by police. Beginning in 1979, the state effectively prosecuted the autonomist movement, accusing it of protecting the Red Brigades, which had kidnapped and assassinated Aldo Moro. 12,000 far-left activists were detained; 600 fled the country, including 300 to France and 200 to South America.[10]


Members of the Italian militant social movement Tute Bianche
Tute Bianche was a militant Italian social movement, active from 1994 to 2001. Activists covered their bodies with padding so as to resist the blows of police, to push through police lines, and to march together in large blocks for mutual protection during demonstrations. The tute bianche movement reached its apex during the anti-G8 protests in Genoa, in July 2001, with a turn-out of an estimated 10,000 protesters in a single "padded block", ironically after a collective decision to go without the white overalls. Shortly after Genoa the Ya Basta Association disbanded, with certain segments reforming into the "Disobbedienti" which literally means "Disobedients". This philosophy includes the occupation and creation of squatted self-managed social centers, anti-sexist activism, support for immigrant's rights and refugees seeking political asylum, as well as the process of walking together in large formations during demonstrations held in the streets, by force if necessary in case of clashes with police.

Central to the tute bianche movement was the Italian Ya Basta Association, a network of groups throughout Italy that was inspired by the Zapatista Army of National Liberation uprising in Chiapas in 1994. Ya Basta primarily originated in the "autonomist" social centers of Milan, particularly Centro Sociale Leoncavallo. These social centers grew out of the Italian Autonomia movement of the 1970 and 80s. The tute bianche movements have had international variations of one sort or another. For instance, in Britain a group calling itself WOMBLES adopted the tactics, even though the political orientation of WOMBLES differed from the Italian movement. In Spain, "Mono Blanco" was the preferred identifier. The first North American variant of the tute bianche, the NYC Ya Basta Collective (based in NYC) wore yellow overalls, rather than white.

Influence
The autonomist Marxist and Autonomen movements provided inspiration to some on the revolutionary left in English-speaking countries, particularly among anarchists, many of whom have adopted autonomist tactics.[11] The Italian operaismo movement also influenced Marxist academics such as Harry Cleaver, John Holloway, Steve Wright[12] and Nick Dyer-Witheford.[13] In Denmark and Sweden, the word is used as a catch-all phrase for anarchists and the extra-parliamentary left in general, as was seen in the media coverage of the eviction of the Ungdomshuset squat in Copenhagen in March 2007.[14][15]

Thinkers
Franco "Bifo" Berardi
George Caffentzis
Harry Cleaver
Silvia Federici
Michael Hardt
John Holloway
Antonio Negri
Mario Tronti
Paolo Virno
Nick Dyer-Witheford
Maurizio Lazzarato
Christian Fuchs (sociologist)
Movements and organizations
Abahlali baseMjondolo
Blitz (Norway)
Disobbedienti (ex Tute Bianche)
Homeless Workers' Movement MTST
Kämpa tillsammans! Kämpa tillsammans!
London Autonomists
Plan C, a British anti-authoritarian communist group inspired by autonomism.
Swedish Anarcho-syndicalist Youth Federation
Ungdomshuset, Danish autonomist squat
Zapatista Army of National Liberation
Publications
Aufheben
Collegamenti-Wobbly
Multitudes magazine
ROAR Magazine
See also
Autonomy
Affective labor
Direct democracy
Hakim Bey on autonomous zones
Horizontalidad
Kommune 1
Libertarian Marxism
Mao-Spontex
Open Marxism
Popular assembly
Sovereign citizen movement
Spontaneism
Sui iuris








What is “Schmuck Insurance”?
https://www.families.com/what-is-schmuck-insurance
No one wants to make a foolish mistake in front of other people. This is especially true when the mistake could end up costing you millions of dollars. When someone decides to sell their company, the last thing they want to see is the new owner re-selling it for a much higher price. One way to prevent this problem is to engage in a practice that has been called “schmuck insurance”.

Technically speaking, “schmuck insurance” isn’t really a form of insurance at all. Instead, it is an action that the owner of a company can do in order to prevent making a stupid mistake when he sells off a portion of his company to another person or corporation.

The word “schmuck” is Yiddish, and it translates to something like “idiot” in English, (if we choose to ignore the more vulgar meanings that this word could translate to). A business owner can take an action that has been referred to as “schmuck insurance” as a way to prevent financial loss, and loss of status.

“Schmuck insurance” is a way to prevent yourself from looking like a complete idiot if the company you just sold suddenly becomes successful and profitable under the new owner. It is also a phrase that can imply that the seller is aware of the possibility of having that happen, and has taken actions that would allow him to benefit from that profit, too.

It works very simply. A business owner notices that his company, (or a portion of his company), isn’t making anywhere near as much profit as hoped. The owner of Company A implements changes that are designed to make Company A more profitable. When these changes don’t have the impact that they were supposed to, the owner decides that it isn’t worth it to continue to put effort and money into keeping Company A going.

The owner decides to sell Company A. The owner of Company B decides to purchase it, because she thinks that she has ideas that will cause Company A to become very profitable for her. If she can do that, then the current owner of Company A is going to feel very foolish for failing to make his company profitable.

So, instead of selling 100% of Company A to the owner of Company B, he hangs on to 10% of it, or maybe 20% of it. Now, if Company B is able to make a big profit, the original owner of Company A will be earning some profit as well. He will not look like an idiot for selling his company.






Purple economy
https://en.wikipedia.org/wiki/Purple_economy#Territorial_economics
The purple economy is that part of the economy which contributes to sustainable development by promoting the cultural potential of goods and services.

“The purple economy refers to taking account of cultural aspects in economics. It designates an economy that adapts to the human diversity in globalization and that relies on the cultural dimension to give value to goods and services.”[1]


Contents
1	Territorial economics
2	Surge in culture
3	Scope
4	Origin
5	Connection to sustainable development
6	See also
7	Notes and references
Territorial economics
The international appeal, “Towards a cultural renaissance of the economy”,[2][3][4] signed by architects, chefs, Nobel laureates in Economics and leaders of international organizations,[5] defines the purple economy as a form of territorial economics, in which “territories that successfully preserve and promote the different aspects of their original identities will enjoy a real competitive advantage. This cultural revitalization of [the] local environment does not however signify a disinterest in more distant societies. [The] appetite for other cultures and [the] need to understand them better cannot help but expand in the world of tomorrow.” From this perspective, the purple economy is universal by nature: “All territories, including those less economically and technologically well-endowed, have a cultural message to share. It is a matter of giving each of them the chance to showcase what makes them unique, in a world where homogenization is a sign of devitalization.”[2][3][4]

Surge in culture
The context of the purple economy is that of the growing importance of culture in contemporary society. The factors involved in this include in particular:[6] a global economic and political readjustment in favour of emerging countries, a return to local environments (once again perceived as centres for stability), new forms of claims (following on from the collapse of the great ideologies), growing social demand for quality based on cultural consumption patterns (which go hand in hand with the logic of popularization, individualization and longer life expectancies), innovative approaches (that presuppose a cultural state of mind and interdisciplinarity conducive to serendipity), and so on.

Scope
The purple economy is multidisciplinary, in that it enriches all goods and services by capitalizing on the cultural dimension inherent to every sector. The sensory, experiential economy is one application of this.[6]

It differs from the cultural economy, which is sector-based.

In June 2013, the conclusions of a first inter-institutional working group on the purple economy, formed of experts from UNESCO, the OECD, the International Organisation of the Francophonie, French ministries, various companies and civil society. That document underscored the impact of the phenomenon of culturalization, which now affects the entire economy, with follow-on effects on employment and training. The report differentiates between purple jobs and purplifying professions: the former are directly linked to the cultural environment by their very purpose (like town planners and developers), while the latter are merely caused to transform under the effect of culturalization (such as positions in human resources or in marketing and communications).[7]

Another reference document published in June 2017[6] mentioned various aspects of the human environment in which economics are likely to produce cultural benefits: architecture, art, colours, enjoyment, ethics, heritage, imagination, learning, social skills, singularity, etc.

Origin
The term first appeared in 2011, in France, in a manifest[8] published on Le Monde.fr. The signatories[9] included the board members of the association Diversum,[10] which organized the first International Purple Economy Forum under the patronage of UNESCO, the European Parliament and the European Commission.[11] The concept was invented by Jérôme Gouadain, who later put it into theory via the association Diversum and then in the Prix Versailles.[1][12]

Connection to sustainable development

The three components of a sustainable economy
The purple economy emphasizes the presence of externalities: the cultural environment from which agents draw and on which, in return, they leave their own footprints is a common good. As a result, the purple economy sees culture as an axis for sustainable development.

In fact, culture has been a whole sub-section of sustainability since the beginning. Corporate social responsibility can even be said to have originated in the International Covenant on Economic, Social and Cultural Rights adopted by the United Nations in 1966.

This issue is just one of the different components of sustainable development, alongside concerns relating to the natural environment (green economy) and to the social environment (social economy). The complementary nature of these aspects of the sustainable economy was reaffirmed in a call[13][14] published by Le Monde Économie in 2015, leading up to the 21st United Nations Conference on Climate Change.

See also
Alter-globalization
Cognitive-cultural economy
Cultural diversity
Cultural footprint
Globalization
Knowledge economy
Sustainable development








Netocracy
https://en.wikipedia.org/wiki/Netocracy#The_consumtariat
Netocracy was a term invented by the editorial board of the American technology magazine Wired in the early 1990s. A portmanteau of Internet and aristocracy, netocracy refers to a perceived global upper-class that bases its power on a technological advantage and networking skills, in comparison to what is portrayed as a bourgeoisie of a gradually diminishing importance.

The concept was later picked up and redefined by Alexander Bard and Jan Söderqvist for their book Netocracy — The New Power Elite and Life After Capitalism (originally published in Swedish in 2000 as Nätokraterna –t boken om det elektroniska klassamhället, published in English by Reuters/Pearsall UK in 2002).

The netocracy concept has been compared with Richard Florida's concept of the creative class. Bard and Söderqvist have also defined an under-class in opposition to the netocracy, which they refer to as the consumtariat.


Contents
1	The consumtariat
2	Cyberdeutocracy
3	Other usages
4	See also
5	References
6	Further reading
7	External links
The consumtariat
Alexander Bard describes a new underclass called the consumtariat, a portmanteau of consumer and proletariat, whose main activity is consumption, regulated from above. It is kept occupied with private problems, its desires provoked with the use of adverts and its active participation is limited to things like product choice, product customization, engaging with interactive products and life-style choice.[1]

Cyberdeutocracy
Similar to netocracy, is the concept of cyberdeutocracy. Karl W. Deutsch in his book The Nerves of Government: Models of Political Communication and Control[2] hypothesized about "information elites, controlling means of mass communication and, accordingly, power institutions, the functioning of which is based on the use of information in their activities." Thus Deutsch introduced the concept of deutocracy, combining the words 'Deutsch' and 'autocracy' to get the new term. Cyberdeutocracy combines 'deutocracy' with the prefix 'cyber-' and is defined as a political regime based on the control by the political and corporate elites of the information and communication infrastructure of the Internet space. As a tool of social control, Cyberdeutocracy allows elites to engage in the:

destruction and/or transformation of existing meanings, symbols, values, and ideas
generation of new meanings, symbols, values, and ideas
introduction of these transformed and new meanings, symbols, values, and ideas into the public consciousness to shape society's perception of political reality.
The term was coined by Phillip Freiberg in his 2018 paper "What are CyberSimulacra and Cyberdeutocracy?"[3]

Other usages
Netocracy can also refer to "Internet-enabled democracy" where issue-based politics will supersede party-based politics.

The word netocracy is also used as a portmanteau of Internet and democracy, not of Internet and aristocracy:

"In Seattle, organized labor ran interference for the ragtag groups assembled behind it, marshaling several thousand union members who feared that free trade might send their jobs abroad. In Washington, labor focused on lobbying Congress over the China-trade issue, leaving the IMF and the World Bank to the ad hoc Netocracy."[4]
"From his bungalow in Berkeley, he's spreading the word of grassroots netocracy to the Beltway. He formed an Internet political consulting firm with Jerome ..."[5]
See also
1% rule (Internet culture)
Algocracy
Agent of influence
Digerati
Digital citizen
Digital divide
Group decision-making
Indigo Era (economics)
Influencer marketing
Information ecology
Information society
Klout
Knowledge divide
Noocracy
Online participation
Opinion leadership
Power user
Social marketing intelligence § Alpha users
Social media
Uberisation
Wikipedia
References
 Bard, Alexander; Sšderqvist, Jan. The Netocracts: Futurica Trilogy 1. Stockholm Text. ISBN 9789187173004. Retrieved 3 March 2017.
 Deutsch, K. (1966). The Nerves of Government: Models of Political Communication and Control. New York: Free Press.
 What are CyberSimulacra and Cyberdeutocracy?
 The New Radicals; Time; April 24, 2000
 San Francisco Chronicle; January 15, 2004
Further reading
Slavoj Zizek, Organs without Bodies, ISBN 978-0-415-96921-5
Gareth Morgan (1992), Images of Organization; ISBN 978-1-4129-3979-9
A Hacker Manifesto, ISBN 978-0-674-01543-2



Hacker Manifesto
https://en.wikipedia.org/wiki/Hacker_Manifesto
&
https://en.wikisource.org/wiki/The_Hacker_Manifesto 
Another one got caught today, it's all over the papers. "Teenager Arrested in Computer Crime Scandal", "Hacker Arrested after Bank Tampering"... Damn kids. They're all alike. But did you, in your three- piece psychology and 1950's technobrain, ever take a look behind the eyes of the hacker? Did you ever wonder what made him tick, what forces shaped him, what may have molded him? I am a hacker, enter my world... Mine is a world that begins with school... I'm smarter than most of the other kids, this crap they teach us bores me... Damn underachiever. They're all alike. I'm in junior high or high school. I've listened to teachers explain for the fifteenth time how to reduce a fraction. I understand it. "No, Ms. Smith, I didn't show my work. I did it in my head..." Damn kid. Probably copied it. They're all alike. I made a discovery today. I found a computer. Wait a second, this is cool. It does what I want it to. If it makes a mistake, it's because I screwed it up. Not because it doesn't like me... Or feels threatened by me.. Or thinks I'm a smart ass.. Or doesn't like teaching and shouldn't be here... Damn kid. All he does is play games. They're all alike. And then it happened... a door opened to a world... rushing through the phone line like heroin through an addict's veins, an electronic pulse is sent out, a refuge from the day-to-day incompetencies is sought... a board is found. "This is it... this is where I belong..." I know everyone here... even if I've never met them, never talked to them, may never hear from them again... I know you all... Damn kid. Tying up the phone line again. They're all alike... You bet your ass we're all alike... we've been spoon-fed baby food at school when we hungered for steak... the bits of meat that you did let slip through were pre-chewed and tasteless. We've been dominated by sadists, or ignored by the apathetic. The few that had something to teach found us willing pupils, but those few are like drops of water in the desert.


This is our world now... the world of the electron and the switch, the beauty of the baud. We make use of a service already existing without paying for what could be dirt-cheap if it wasn't run by profiteering gluttons, and you call us criminals. We explore... and you call us criminals. We seek after knowledge... and you call us criminals. We exist without skin color, without nationality, without religious bias... and you call us criminals. You build atomic bombs, you wage wars, you murder, cheat, and lie to us and try to make us believe it's for our own good, yet we're the criminals. Yes, I am a criminal. My crime is that of curiosity. My crime is that of judging people by what they say and think, not what they look like. My crime is that of outsmarting you, something that you will never forgive me for. I am a hacker, and this is my manifesto. You may stop this individual, but you can't stop us all... after all, we're all alike.




Another one got caught today, it's all over the papers. "Teenager Arrested in Computer Crime Scandal", "Hacker Arrested after Bank Tampering"... Damn kids. They're all alike. But did you, in your three- piece psychology and 1950's technobrain, ever take a look behind the eyes of the hacker? Did you ever wonder what made him tick, what forces shaped him, what may have molded him? I am a hacker, enter my world... Mine is a world that begins with school... I'm smarter than most of the other kids, this crap they teach us bores me... Damn underachiever. They're all alike. I'm in junior high or high school. I've listened to teachers explain for the fifteenth time how to reduce a fraction. I understand it. "No, Ms. Smith, I didn't show my work. I did it in my head..." Damn kid. Probably copied it. They're all alike. I made a discovery today. I found a computer. Wait a second, this is cool. It does what I want it to. If it makes a mistake, it's because I screwed it up. Not because it doesn't like me... Or feels threatened by me.. Or thinks I'm a smart ass.. Or doesn't like teaching and shouldn't be here... Damn kid. All he does is play games. They're all alike. And then it happened... a door opened to a world... rushing through the phone line like heroin through an addict's veins, an electronic pulse is sent out, a refuge from the day-to-day incompetencies is sought... a board is found. "This is it... this is where I belong..." I know everyone here... even if I've never met them, never talked to them, may never hear from them again... I know you all... Damn kid. Tying up the phone line again. They're all alike... You bet your ass we're all alike... we've been spoon-fed baby food at school when we hungered for steak... the bits of meat that you did let slip through were pre-chewed and tasteless. We've been dominated by sadists, or ignored by the apathetic. The few that had something to teach found us willing pupils, but those few are like drops of water in the desert.


This is our world now... the world of the electron and the switch, the beauty of the baud. We make use of a service already existing without paying for what could be dirt-cheap if it wasn't run by profiteering gluttons, and you call us criminals. We explore... and you call us criminals. We seek after knowledge... and you call us criminals. We exist without skin color, without nationality, without religious bias... and you call us criminals. You build atomic bombs, you wage wars, you murder, cheat, and lie to us and try to make us believe it's for our own good, yet we're the criminals. Yes, I am a criminal. My crime is that of curiosity. My crime is that of judging people by what they say and think, not what they look like. My crime is that of outsmarting you, something that you will never forgive me for. I am a hacker, and this is my manifesto. You may stop this individual, but you can't stop us all... after all, we're all alike.





Not to be confused with A Hacker Manifesto, a 2004 philosophical text.
The Conscience of a Hacker (also known as The Hacker Manifesto) is a small essay written January 8, 1986 by a computer security hacker who went by the handle (or pseudonym) of The Mentor (born Loyd Blankenship), who belonged to the 2nd generation of hacker group Legion of Doom.[1][2]

It was written after the author's arrest, and first published in the underground hacker ezine Phrack[3] and can be found on many websites, as well as on T-shirts and in films.[4]

Considered a cornerstone of hacker culture,[5] the Manifesto acts as a guideline to hackers across the globe, especially those new to the field. It serves as an ethical foundation for hacking, and asserts that there is a point to hacking that supersedes selfish desires to exploit or harm other people, and that technology should be used to expand our horizons and try to keep the world free.

When asked about his motivation for writing the article, Blankenship said,

I was going through hacking withdrawal, and Craig/Knight Lightning needed something for an upcoming issue of Phrack. I was reading The Moon is a Harsh Mistress and was very taken with the idea of revolution.[1]

At a more prominent public event, when asked about his arrest and motivation for writing the article, Blankenship said,

I was just in a computer I shouldn’t have been. And [had] a great deal of empathy for my friends around the nation that were also in the same situation. This was post-WarGames, the movie, so pretty much the only public perception of hackers at that time was ‘hey, we’re going to start a nuclear war, or play tic-tac-toe, one of the two,’ and so I decided I would try to write what I really felt was the essence of what we were doing and why we were doing it.[6][7]

In popular culture
The article is quoted several times in the 1995 movie Hackers, although in the movie it is being read from an issue of the hacker magazine 2600, not the historically accurate Phrack.

The Mentor gave a reading of The Hacker Manifesto and offered additional insight at H2K2.[6] It is also an item in the game Culpa Innata.

A poster of the Hacker Manifesto appears in the 2010 film The Social Network in the Harvard room of Mark Zuckerberg.

The Hacker Manifesto is mentioned in Edward Snowden's autobiography Permanent Record.

A computer is hacked every 3 seconds somewhere in the world according to the CIA world fact book.

See also
Hacker ethic
Timeline of computer security hacker history







Hacker ethic
https://en.wikipedia.org/wiki/Hacker_ethic
For the book, see The Hacker Ethic and the Spirit of the Information Age. For uses in computer security hacking, see Hacker (computer security), Hacker Manifesto, and White hat (computer security)

This article's tone or style may not reflect the encyclopedic tone used on Wikipedia. See Wikipedia's guide to writing better articles for suggestions. (January 2018) (Learn how and when to remove this template message)
The hacker ethic is a philosophy and set of moral values that is common within hacker culture. Practitioners of the hacker ethic believe that sharing information and data with others is an ethical imperative.[1] The hacker ethic is related to the concept of freedom of information, as well as the political theories of Anti-authoritarianism, liberalism, anarchism, and libertarianism.[2][3][4]

While some tenets of the hacker ethic were described in other texts like Computer Lib/Dream Machines (1974) by Ted Nelson, the term hacker ethic is generally attributed to journalist Steven Levy, who appears to have been the first to document both the philosophy and the founders of the philosophy in his 1984 book titled Hackers: Heroes of the Computer Revolution.


Contents
1	History
2	The hacker ethics
2.1	Sharing
2.2	Copyright and patents
2.3	Hands-On Imperative
2.4	Community and collaboration
3	Levy's "true hackers"
4	Other descriptions
5	See also
6	Footnotes
7	References
8	Further reading
9	External links
History
The hacker ethic originated at the Massachusetts Institute of Technology in the 1950s–1960s. The term "hacker" had long been used there to describe college pranks that MIT students would regularly devise, and was used more generally to describe a project undertaken or a product built to fulfill some constructive goal but also out of pleasure for mere involvement.[5]

MIT housed an early IBM 704 computer inside the Electronic Accounting Machinery (EAM) room in 1959. This room became the staging grounds for early hackers, as MIT students from the Tech Model Railroad Club sneaked inside the EAM room after hours to attempt programming the 30-ton, 9-foot-tall (2.7 m) computer.

The hacker ethic was described as a "new way of life, with a philosophy, an ethic and a dream". However, the elements of the hacker ethic were not openly debated and discussed; rather they were implicitly accepted and silently agreed upon.[6]

The free software movement was born in the early 1980s from followers of the hacker ethic. Its founder, Richard Stallman, is referred to by Steven Levy as "the last true hacker".[7]

Richard Stallman describes:

The hacker ethic refers to the feelings of right and wrong, to the ethical ideas this community of people had—that knowledge should be shared with other people who can benefit from it, and that important resources should be utilized rather than wasted.[8]

and states more precisely that hacking (which Stallman defines as playful cleverness) and ethics are two separate issues:

Just because someone enjoys hacking does not mean he has an ethical commitment to treating other people properly. Some hackers care about ethics—I do, for instance—but that is not part of being a hacker, it is a separate trait. [...] Hacking is not primarily about an ethical issue.
[...] hacking tends to lead a significant number of hackers to think about ethical questions in a certain way. I would not want to completely deny all connection between hacking and views on ethics.[9]

The hacker ethics
As Levy summarized in the preface of Hackers, the general tenets or principles of hacker ethic include:[10]

Sharing
Openness
Decentralization
Free access to computers
World Improvement (foremost, upholding democracy and the fundamental laws we all live by, as a society)
In addition to those principles, Levy also described more specific hacker ethics and beliefs in chapter 2, The Hacker Ethic:[11] The ethics he described in chapter 2 are:

1. "Access to computers—and anything which might teach you something about the way the world works—should be unlimited and total. Always yield to the Hands-On Imperative!"
Levy is recounting hackers' abilities to learn and build upon pre-existing ideas and systems. He believes that access gives hackers the opportunity to take things apart, fix, or improve upon them and to learn and understand how they work. This gives them the knowledge to create new and even more interesting things.[12][13] Access aids the expansion of technology.
2. "All information should be free"
Linking directly with the principle of access, information needs to be free for hackers to fix, improve, and reinvent systems. A free exchange of information allows for greater overall creativity.[14] In the hacker viewpoint, any system could benefit from an easy flow of information,[15] a concept known as transparency in the social sciences. As Stallman notes, "free" refers to unrestricted access; it does not refer to price.[16]
3. "Mistrust authority—promote decentralization"
The best way to promote the free exchange of information is to have an open system that presents no boundaries between a hacker and a piece of information or an item of equipment that they need in their quest for knowledge, improvement, and time on-line.[15] Hackers believe that bureaucracies, whether corporate, government, or university, are flawed systems.
4. "Hackers should be judged by their hacking, not bogus criteria such as degrees, age, race, sex, or position"
Inherent in the hacker ethic is a meritocratic system where superficiality is disregarded in esteem of skill. Levy articulates that criteria such as age, sex, race, position, and qualification are deemed irrelevant within the hacker community.[13] Hacker skill is the ultimate determinant of acceptance. Such a code within the hacker community fosters the advance of hacking and software development. In an example of the hacker ethic of equal opportunity,[17] L Peter Deutsch, a twelve-year-old hacker, was accepted in the TX-0 community, though he was not recognized by non-hacker graduate students.
5. "You can create art and beauty on a computer"
Hackers deeply appreciate innovative techniques which allow programs to perform complicated tasks with few instructions.[18] A program's code was considered to hold a beauty of its own, having been carefully composed and artfully arranged.[19] Learning to create programs which used the least amount of space almost became a game between the early hackers.[13]
6. "Computers can change your life for the better"
Hackers felt that computers had enriched their lives, given their lives focus, and made their lives adventurous. Hackers regarded computers as Aladdin's lamps that they could control.[20] They believed that everyone in society could benefit from experiencing such power and that if everyone could interact with computers in the way that hackers did, then the hacker ethic might spread through society and computers would improve the world.[21] The hackers succeeded in turning dreams of endless possibilities into realities. The hacker's primary object was to teach society that "the world opened up by the computer was a limitless one" (Levy 230:1984)[13]
Sharing
From the early days of modern computing through to the 1970s, it was far more common for computer users to have the freedoms that are provided by an ethic of open sharing and collaboration. Software, including source code, was commonly shared by individuals who used computers. Most companies had a business model based on hardware sales, and provided or bundled the associated software free of charge. According to Levy's account, sharing was the norm and expected within the non-corporate hacker culture. The principle of sharing stemmed from the open atmosphere and informal access to resources at MIT. During the early days of computers and programming, the hackers at MIT would develop a program and share it with other computer users.

If the hack was deemed particularly good, then the program might be posted on a board somewhere near one of the computers. Other programs that could be built upon it and improved it were saved to tapes and added to a drawer of programs, readily accessible to all the other hackers. At any time, a fellow hacker might reach into the drawer, pick out the program, and begin adding to it or "bumming" it to make it better. Bumming referred to the process of making the code more concise so that more can be done in fewer instructions, saving precious memory for further enhancements.

In the second generation of hackers, sharing was about sharing with the general public in addition to sharing with other hackers. A particular organization of hackers that was concerned with sharing computers with the general public was a group called Community Memory. This group of hackers and idealists put computers in public places for anyone to use. The first community computer was placed outside of Leopold's Records in Berkeley, California.

Another sharing of resources occurred when Bob Albrecht provided considerable resources for a non-profit organization called the People's Computer Company (PCC). PCC opened a computer center where anyone could use the computers there for fifty cents per hour.

This second generation practice of sharing contributed to the battles of free and open software. In fact, when Bill Gates' version of BASIC for the Altair was shared among the hacker community, Gates claimed to have lost a considerable sum of money because few users paid for the software. As a result, Gates wrote an Open Letter to Hobbyists.[22][23] This letter was published by several computer magazines and newsletters, most notably that of the Homebrew Computer Club where much of the sharing occurred.

Copyright and patents
As copyright and patent laws limit the ability to share software, opposition to software patents is widespread in the hacker and free software community.

Hands-On Imperative
Many of the principles and tenets of hacker ethic contribute to a common goal: the Hands-On Imperative. As Levy described in Chapter 2, "Hackers believe that essential lessons can be learned about the systems—about the world—from taking things apart, seeing how they work, and using this knowledge to create new and more interesting things."[24]

Employing the Hands-On Imperative requires free access, open information, and the sharing of knowledge. To a true hacker, if the Hands-On Imperative is restricted, then the ends justify the means to make it unrestricted so that improvements can be made. When these principles are not present, hackers tend to work around them. For example, when the computers at MIT were protected either by physical locks or login programs, the hackers there systematically worked around them in order to have access to the machines. Hackers assumed a "willful blindness" in the pursuit of perfection.[14]

This behavior was not malicious in nature: the MIT hackers did not seek to harm the systems or their users. This deeply contrasts with the modern, media-encouraged image of hackers who crack secure systems in order to steal information or complete an act of cyber-vandalism.

Community and collaboration
Throughout writings about hackers and their work processes, a common value of community and collaboration is present. For example, in Levy's Hackers, each generation of hackers had geographically based communities where collaboration and sharing occurred. For the hackers at MIT, it was the labs where the computers were running. For the hardware hackers (second generation) and the game hackers (third generation) the geographic area was centered in Silicon Valley where the Homebrew Computer Club and the People's Computer Company helped hackers network, collaborate, and share their work.

The concept of community and collaboration is still relevant today, although hackers are no longer limited to collaboration in geographic regions. Now collaboration takes place via the Internet. Eric S. Raymond identifies and explains this conceptual shift in The Cathedral and the Bazaar:[25]

Before cheap Internet, there were some geographically compact communities where the culture encouraged Weinberg's egoless programming, and a developer could easily attract a lot of skilled kibitzers and co-developers. Bell Labs, the MIT AI and LCS labs, UC Berkeley: these became the home of innovations that are legendary and still potent.

Raymond also notes that the success of Linux coincided with the wide availability of the World Wide Web. The value of community is still in high practice and use today.

Levy's "true hackers"

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Hacker ethic" – news · newspapers · books · scholar · JSTOR (July 2017) (Learn how and when to remove this template message)
Levy identifies several "true hackers" who significantly influenced the hacker ethic. Some well-known "true hackers" include:

Bill Gosper: Mathematician and hacker
Richard Greenblatt: Programmer and early designer of LISP machines
John McCarthy: Co-founder of the MIT Artificial Intelligence Lab and Stanford AI Laboratory
Jude Milhon: Founder of the cypherpunk movement, senior editor at Mondo 2000, and co-founder of Community Memory
Richard Stallman: Programmer and political activist who is well known for GNU, Emacs and the Free Software Movement
Levy also identified the "hardware hackers" (the "second generation", mostly centered in Silicon Valley) and the "game hackers" (or the "third generation"). All three generations of hackers, according to Levy, embodied the principles of the hacker ethic. Some of Levy's "second-generation" hackers include:

Steve Dompier: Homebrew Computer Club member and hacker who worked with the early Altair 8800
John Draper: A legendary figure in the computer programming world. He wrote EasyWriter, the first word processor.
Lee Felsenstein: A hardware hacker and co-founder of Community Memory and Homebrew Computer Club; a designer of the Sol-20 computer
Bob Marsh: A designer of the Sol-20 computer
Fred Moore: Activist and founder of the Homebrew Computer Club
Steve Wozniak: One of the founders of Apple Computer
Levy's "third generation" practitioners of hacker ethic include:

John Harris: One of the first programmers hired at On-Line Systems (which later became Sierra Entertainment)
Ken Williams: Along with wife Roberta, founded On-Line Systems after working at IBM – the company would later achieve mainstream popularity as Sierra
Other descriptions
In 2001, Finnish philosopher Pekka Himanen promoted the hacker ethic in opposition to the Protestant work ethic. In Himanen's opinion, the hacker ethic is more closely related to the virtue ethics found in the writings of Plato and of Aristotle. Himanen explained these ideas in a book, The Hacker Ethic and the Spirit of the Information Age, with a prologue contributed by Linus Torvalds and an epilogue by Manuel Castells.

In this manifesto, the authors wrote about a hacker ethic centering on passion, hard work, creativity and joy in creating software. Both Himanen and Torvalds were inspired by the Sampo in Finnish mythology. The Sampo, described in the Kalevala saga, was a magical artifact constructed by Ilmarinen, the blacksmith god, that brought good fortune to its holder; nobody knows exactly what it was supposed to be. The Sampo has been interpreted in many ways: a world pillar or world tree, a compass or astrolabe, a chest containing a treasure, a Byzantine coin die, a decorated Vendel period shield, a Christian relic, etc. Kalevala saga compiler Lönnrot interpreted it to be a "quern" or mill of some sort that made flour, salt, and gold out of thin air.[citation needed]

See also
Hacks at the Massachusetts Institute of Technology
Hacker (programmer subculture)
Hacker (term)
Hacktivism
Tech Model Railroad Club
The Cathedral and the Bazaar
Free software movement
Free software philosophy







Indigo Era
https://en.wikipedia.org/wiki/Indigo_Era
The Indigo Era, or Indigo economies, is a concept first publicized in early 2016 by international businessman Mikhail Fridman, the co-founder of LetterOne, an international investment business.[1] He used the term to describe what he views as an emerging new era of economies and economics based on ideas, innovation, and creativity, which he sees as replacing economies which are based on the possession of natural resources. The word "indigo" was initially chosen based on the term indigo children, which has been used to describe people with unusual and innovative abilities.

He describes the Indigo Era as a disruptive era driven by extraordinary levels of human creativity, where abnormally talented individuals and entities are able to realize new levels of human potential and economic achievement. It is "a new economic era where the main source of national wealth is no longer resource rent but the socio-economic infrastructure that allows every person to realise his or her intellectual or creative potential."[2] But, according to Fridman – based on his observations of recent economic indicators, political and market volatility, and historical patterns – it is also an era that will generate winners and losers as lagging countries and groups fail to adapt quickly enough.

In late 2016 LetterOne's Global Perspectives journal published an Indigo Index, ranking 152 countries on their ability to compete and grow as economies move away from being powered by natural resources to being powered by ideas, creativity, and digital skills. In 2017 it launched the Indigo Prize, to award new concepts of economic measurement beyond mere GDP as countries in the 21st century transition into economies where innovation, creativity, and digital skills are economic drivers. The competition is intended to "stimulate debate about factors currently measured, given evolving economies, technology and skill bases, and what should now be taken into consideration in official economic statistics that measure the health, size and growth of a modern economy."[2]


Contents
1	Indigo Era
1.1	Analysis
2	Indigo Index and Indigo Score
3	Indigo Prize
4	References
5	External links
Indigo Era
The economic term "Indigo Era" was publicized in early 2016 by Mikhail Fridman, the co-founder of the international investment business LetterOne.[3] He used the term to describe the new economic era based on ideas, innovation, and creativity – which he theorizes is replacing the previous era which he sees as defined by the struggle for natural resources and land that contains them, and which is measured by GDP. The word "indigo" was adopted from the term indigo children, which has been used to describe people with unusual and innovative abilities.[3][4][5][6][7] LetterOne's Global Perspectives website adds that the indigo symbolism "embodies a breaking of the norm, something that is highly reflective of the new era that we are entering into, one that lacks convention and is driven by innovation."[8]

In an April 2016 article in RealClearPolitics, retitled and reprinted in May 2016 in the Jerusalem Post, and reprinted in November 2016 under the original title in LetterOne's Global Perspectives journal, Fridman wrote:

We are entering a disruptive era driven by extraordinary levels of human creativity. A new generation of curious, strong-willed and talented individuals is unhindered by convention or the past. This new “Indigo” generation is now shaping tomorrow's economy and creating national wealth. I use the term Indigo because it has been used to refer to children with special or unusual abilities. This is an era where abnormally talented individuals and entities are now able to realize new levels of human potential and economic achievement.[3][9][10]

Analysis
In a series of articles published in 2016, Fridman cites the recent extreme volatility in markets,[3] and worldwide political change and instability,[3] as signs of an emerging global shift.[11][12][5] He notes two frequently cited prominent indicators of an economic shift: the sharp decline in prices of natural resources including oil, and the slowing of China's economic growth despite this decline in the cost of natural resources.[3][11][12][13][5]

He and other commentators also note the rise of populism and populist leaders and candidates, both right-wing and left-wing, as these changes occur.[3][14][13][11][12][5] Meanwhile, companies like Apple and Google – digital and technological companies he calls "Indigo companies" – have replaced longterm traditional natural-resource or manufacturing companies such as Exxon as the world's largest companies.[3][13][11][12]

Fridman observes that throughout history innovations, alternatives, and technologies have always overcome any perceived shortages of any natural resource.[3][11][12][13] He therefore posits that the new "Indigo era", fueled by digital and technological resources, will be marked by a shift away from the struggle for natural resources and their perceived scarcity, to a reliance on ideas, innovation, and creativity and on supporting the intellectual and creative potential of each human being:[3] "The world has entered a new era where the source of a nation's wealth is no longer natural resources. Intellectual capacity has now replaced land, raw materials and trade routes as the biggest source of wealth."[13]

According to Fridman, three interconnected factors are needed for successful Indigo companies and an Indigo economy:[3][11][12][5][6]

intuitive individual talent and a high level of education, plus the ability to form a team of equally educated and gifted people
a sophisticated and complex ecosystem, which includes not only legal systems that protect physical and intellectual property rights and protection from takeover by larger companies, but also thousands of suppliers and subcontractors to supply high-quality services which range from venture capital to marketing to web design and other technologies and services
a global digital infrastructure to distribute new products and accumulate customer data and customer-behavior insight
He notes that most emerging economies have focused on building physical structures (roads, buildings, cities, physical infrastructure) rather than the complex legal, political, and social systems, institutions, and changes that will support an effective free and innovative intellectual-resource economy.[3][11][12][5] The freedoms, protections, and political and legal frameworks of developed Western countries rest on centuries-long histories, socio-political traditions, and mindsets, and therefore will be difficult to replicate quickly in emerging economies.[13][11][12][5] Fridman singles out India as an emerging country that has adequate legal infrastructure and freedom to probably survive the Indigo shift.[13][5]

Fridman considers the growth of Indigo economies to be a paradigm shift; he states that the pace at which technology is developing is creating worldwide tectonic shifts, and predicts huge global change over the next five to ten years.[13][11][12][3] He and other analysts predict that the growing economic gap between free, creative economies and groups in contrast to repressive, authoritarian, totalitarian, or tradition-bound economies or groups will widen and create resentment and hostilities – whether this is between nations or within nations.[3][14][15][11][12][5] Those left behind may be either emerging countries, or the average person – as opposed to the intellectual elites – within developed Western countries.[5][14][11][12][15]

Authoritarian leaders and authoritarianism often rise during periods of uncertainty and insecurity and economic deprivation.[13][11][12][5] Fridman maintains however that in this ever-changing new economic era, the main source of wealth in a country or region will no longer be a natural resource, but a social infrastructure that will allow everyone to realise their intellectual and creative potential.[6][16][17][11][12] Therefore, he asserts that "The future Indigo economy is an economy of free people. And this means that the world will become more and more free."[3][11][12][5]

In November 2016 LetterOne launched a journal, Global Perspectives, as a platform to explore "the new emerging economic era, the Indigo era, from different perspectives, including education, religion, politics, economics, history and business" and to examine "global issues through the eyes of leading commentators and business people around the world".[18] The inaugural issue contained articles by Fridman, Dominic Barton, Michael Bloomberg, Stan Greenberg, Carl Bildt, Vince Cable, Ken Robinson, Brent Hoberman, Alex Klein, Deirdre McCloskey, Yuri Milner, Nick D'Aloisio, Lynda Gratton, Parag Khanna, Ian Goldin, George Freeman, Ian Bremmer, and others.[19][20][15]

Indigo Index and Indigo Score
The November 2016 inaugural issue of Global Perspectives also published an Indigo Index,[21][22] which rated 152 countries based on five key metrics for doing business as economies move away from being powered by natural resources to being powered by creativity and digital skills.[7] The five metrics are: creativity and innovation, economic diversity, digital economy, freedom, and stability and legal frameworks,[23][24] which were scored based on over 30 measures from published data sources such as the World Bank, UNESCO, the CIRI Human Rights Data Project, the Center for International Development at Harvard University, and the Global Education Monitoring Report.[25][7][21][17][16] The index sought to measure a country's entrepreneurial ecosystem, and therefore its potential to adapt and develop.[25][7][24][26]

Each country was given a combined overall Indigo Score, with 200 being the highest possible score.[27][28] The 10 top-ranked countries were Sweden, Switzerland, Finland, Denmark, the UK, the Netherlands, Norway, Germany, Ireland, and Japan.[29][30][28] The United States was 18th overall.[30]

The report also included three key findings: Creativity and innovation was the biggest overall driver of high scores; this accentuated the importance of fostering entrepreneurialism and lifelong learning and of investing heavily in people.[6][29][21] Nordic countries scored particularly high on the Indigo Index, with three Nordic countries in the top four and four Nordic countries in the top ten; this was attributed to their high rankings both in creativity and innovation and in freedom.[6][29][26][24][21] And the lowest-scoring countries were beset with social and political problems, such as war, political turmoil, and corruption.[6][21][31]

Indigo Prize
In July 2017, LetterOne's Global Perspectives journal announced the Indigo Prize, to stimulate discussion towards finding a new way of measuring the economy in the 21st century that moves beyond the limitations of mere GDP measurements.[2][32][33][34][35]

Entrants were asked to submit an essay of up to 5,000 words answering the question:

How would you design a new economic measure for global economies that fully acknowledges not only social and economic factors but the impact of creativity, entrepreneurship and digital skills? How should your new measure be used to improve the way we measure GDP in official statistics?[36]

Entries were due 15 September 2017, and were open worldwide to groups or individuals over the age of 16, with entries particularly encouraged from people at academic institutions, businesses, charities, think tanks, consultancies, or other organisations.[36][32] The award amount was announced as £100,000, with second- and third-place winners to receive £25,000 and £10,000.[36][32][37]

The judging panel included:[37][38][33]

Dominic Barton, global managing partner at McKinsey & Company
Mervyn Davies, non-executive chairman of LetterOne, former Minister of State for Trade, Investment and Small Business, former chairman and CEO of Standard Chartered
Stephanie Flanders, chief market strategist at JP Morgan Asset Management and former BBC economics editor
Jim O'Neill, former Commercial Secretary to the Treasury, former Goldman Sachs chief economist
Lynda Gratton, author and professor of Management Practice at the London Business School
Brent Hoberman, founder of Lastminute.com and Founders Forum
Gus O'Donnell, chairman of Frontier Economics, former Cabinet Secretary
Ed Vaizey, Member of Parliament and former Minister for Culture, Communications and Creative Industries
Mikhail Fridman, co-founder of LetterOne
The winners of the inaugural Indigo Prize were announced on 25 October 2017. A joint first prize, £125,000 to be equally split, was awarded to two teams of writers: Diane Coyle and Benjamin Mitra-Kahn; and Jonathan Haskel, Carol Corrado, et al.[39][40][41] A third place "Rising star" award of £10,000 was given to Alice Lassman.[39][40][41]

Coyle was professor of economics at the University of Manchester, and Mitra-Kahn is chief economist at IP Australia.[40] They proposed radically replacing GDP with a dashboard measuring six key assets: physical assets, natural capital, human capital, intellectual property, social and institutional capital, and net financial capital.[41][40][42] Their essay stated that "GDP never pretended to be a measure of economic welfare", and proposed that the new measure should assess "the range of assets needed to maximise individuals' capabilities to lead the life they would like to lead";[40] this would include "financial and physical capital but also natural and intangible capital".[43] They asserted that the new statistics should focus on measuring changes in the stock of important assets, rather than flows of income, expenditure, and output.[44] Tracking the evolution of stocks of physical assets, financial assets and liabilities, natural capital, skill levels, and implicit state liabilities would better measure the sustainability of the economy.[44][45] Coyle and Mitra-Kahn also proposed interim improvements to GDP measurements – such as better measurement of intangibles, adjusting for the distribution of income, and removing unproductive financial activity – before scrapping it entirely.[46] Following her prize-winning essay, Coyle now leads the Six Capitals research project, funded by LetterOne, at the Bennett Institute for Public Policy at Cambridge University; the project was inaugurated in January 2019 and explores social and natural capital.[42][47]

Haskel is professor of economics at Imperial College Business School.[48] Rather than abandoning GDP, he proposed refining, updating, and extending the existing GDP measure.[44][48][49] He proposed better measurement of services and intangibles, and direct measurement of the economic welfare being created by digital goods.[46] His essay focused on the fact that economies have dramatically changed structure since GDP was originally developed, with more knowledge production, more digital goods, more free things and free information, and more intangible assets such as intellectual property.[44][48] He also emphasized the importance of factoring in the environment, sustainability, and societal welfare, in addition to calculating the value of goods and services that are provided for free.[40][48][49][44][50]

Lassman, the recipient of the "Rising star" award, was a 19-year-old geography student at Durham University.[40] Her entry proposed a "Global Integration and Individual Potential" index, which measures each nation on two levels: its value relative to other nations, and the individuals and their contributions within each nation.[40][41][51][52]







A Declaration of the Independence of Cyberspace
https://en.wikipedia.org/wiki/A_Declaration_of_the_Independence_of_Cyberspace
"A Declaration of the Independence of Cyberspace" is a widely distributed early paper on the applicability (or lack thereof) of government on the rapidly growing Internet. Commissioned for the pioneering Internet project 24 Hours in Cyberspace, it was written by John Perry Barlow, a founder of the Electronic Frontier Foundation, and published online on February 8, 1996, from Davos, Switzerland.[1] It was written primarily in response to the passing into law of the Telecommunications Act of 1996 in the United States. In 2014, the Department of Records recorded and released audio and video content of Barlow reading the Declaration.[2][3]


Contents
1	Content
2	Background
3	Critical response
4	See also
5	References
6	External links
Content
Governments of the Industrial World, you weary giants of flesh and steel, I come from Cyberspace, the new home of Mind. On behalf of the future, I ask you of the past to leave us alone. You are not welcome among us. You have no sovereignty where we gather.

— John Perry Barlow, "A Declaration of the Independence of Cyberspace"
The declaration sets out, in sixteen short paragraphs, a rebuttal to government of the Internet by any outside force, specifically the United States. It states that the United States did not have the consent of the governed to apply laws to the Internet, and that the Internet was outside any country's borders. Instead, the Internet was developing its own social contracts to determine how to handle its problems, based on the golden rule. It does this in language evocative of the United States Declaration of Independence and obliquely cites it in its final paragraphs. Although the paper mentions the Telecommunications Act, it also accuses China, Germany, France, Russia, Singapore, and Italy of stifling the Internet.[4]

Background
At the time the paper was written, Barlow had already written extensively on the Internet and its social and legal phenomena,[5] as well as being a founding member of the Electronic Frontier Foundation.[6] The work he was known best for previously, "The Economy of Ideas", published March 1994 in Wired magazine, also made allusions to Thomas Jefferson and some of the ideas he would write about in his declaration.

Critical response
Because of its subject matter, Barlow's work quickly became famous and widely distributed on the Internet. Within three months, an estimated 5,000 websites had copies of the declaration.[7] At nine months, that number was estimated to be 40,000.[8] To approach Barlow's vision of a self-governing Internet, a virtual magistrate was set up by the Cyberspace Law Institute, now hosted by the Chicago-Kent College of Law. Magistrates would be appointed by the institute and other legal groups to solve online disputes.[7] The declaration has been criticized for internal inconsistencies.[9] The declaration's assertion that 'cyberspace' is a place removed from the physical world has also been challenged by people who point to the fact that the internet is always linked to its underlying geography.[10]

Outside the Internet, the response was less positive. Larry Irving, the Assistant Secretary of Commerce, said that a lack of safeguards would "slow down the growth of what is likely to be a major boon for consumers and business".[7] In the online magazine HotWired, one columnist referred to his document as simply "hogwash".[11]

By 2002 the number of sites copying the declaration was estimated to have dropped to 20,000.[12] In 2004, Barlow reflected on his 1990s work, specifically regarding his optimism. His response was that "we all get older and smarter".[13]

See also
Cyberspace
John Perry Barlow
Hacker Manifesto
Commercialization of the Internet
Surveillance capitalism
References
 "John Perry Barlow: Is Cyberspace Still Anti-Sovereign?". 12 February 2018.
 "Department of Records". www.departmentofrecords.co. Archived from the original on 2017-07-04. Retrieved 2015-03-08.
 "Limited edition vinyl: John Perry Barlow reads "A Declaration of the Independence of Cyberspace" / Boing Boing". boingboing.net.
 Barlow, John Perry (1996-02-08). "A Declaration of the Independence of Cyberspace". Retrieved 2017-02-23.
 Ley, Michael. "DBLP: John Perry Barlow". Archived from the original on 25 February 2007. Retrieved 2007-02-09.
 "EFF: Board of Directors". Archived from the original on 6 February 2007. Retrieved 2007-02-09.
 Yang, Catherine (1996-05-06). "Law Creeps Onto the Lawless Net". BusinessWeek (3474): 58–64. Retrieved 2007-02-08.
 Frezza, Bill (1996-11-01). "Can Public Network Computing Save Democracy". Network Computing: 35.
 Evans, Woody (2016). "Cyberspace is the Child of the Industrial Age - Defining it as Independent is Nonsense". Institute for Ethics and Emerging Technologies. Archived from the original on 2016-11-05. Retrieved 2016-02-24.
 Graham, Mark (2013-03-01). "Geography/internet: ethereal alternate dimensions of cyberspace or grounded augmented realities?". The Geographical Journal. 179 (2): 177–182. doi:10.1111/geoj.12009. ISSN 0016-7398.
 Cembalest, Robin (1996-09-20). "The Featherman File". Forward. C: 2.
 Barlow, John Perry (22 January 2002). "John Perry Barlow Declaration for Defendants in MGM et al. v. Grokster et al". Archived from the original on 10 February 2007. Retrieved 9 February 2007.
 Doherty, Brian (August–September 2004). "John Perry Barlow 2.0: The Thomas Jefferson of cyberspace reinvents his body — and his politics". Reason. Archived from the original on September 3, 2009.
External links
	Wikisource has original text related to this article:
A Declaration of the Independence of Cyberspace
	Wikiversity has learning resources about A Declaration of the Independence of Cyberspace
A Declaration of the Independence of Cyberspace
A Declaration of the Independence of Cyberspace (Audio Recording)
A Declaration of the Independence of Cyberspace (Portuguese Translation in PDF)
A Declaration of the Independence of Cyberspace (Spanish Translation)
A Declaration of the Independence of Cyberspace (official vinyl release with accompanying video and audio recordings read by John Perry Barlow and scored by Drazen Bosnjak)
Another Declaration Of Independence For Cyberspace which was conceived simultaneously and independently from the Barlow version. Note: archive.org time stamp is later than original publish date which happened during HotWired/Weiner's Blue Ribbon Campaign where it hung and was blocked in the listserv for 1 hour when Barlow's version was delivered to the listserv using the same Subject line as this version from Citizens Of The Sea.


& https://www.eff.org/cyberspace-independence

A Declaration of the Independence of Cyberspace
by John Perry Barlow 
Governments of the Industrial World, you weary giants of flesh and steel, I come from Cyberspace, the new home of Mind. On behalf of the future, I ask you of the past to leave us alone. You are not welcome among us. You have no sovereignty where we gather.

We have no elected government, nor are we likely to have one, so I address you with no greater authority than that with which liberty itself always speaks. I declare the global social space we are building to be naturally independent of the tyrannies you seek to impose on us. You have no moral right to rule us nor do you possess any methods of enforcement we have true reason to fear.

Governments derive their just powers from the consent of the governed. You have neither solicited nor received ours. We did not invite you. You do not know us, nor do you know our world. Cyberspace does not lie within your borders. Do not think that you can build it, as though it were a public construction project. You cannot. It is an act of nature and it grows itself through our collective actions.

You have not engaged in our great and gathering conversation, nor did you create the wealth of our marketplaces. You do not know our culture, our ethics, or the unwritten codes that already provide our society more order than could be obtained by any of your impositions.

You claim there are problems among us that you need to solve. You use this claim as an excuse to invade our precincts. Many of these problems don't exist. Where there are real conflicts, where there are wrongs, we will identify them and address them by our means. We are forming our own Social Contract. This governance will arise according to the conditions of our world, not yours. Our world is different.

Cyberspace consists of transactions, relationships, and thought itself, arrayed like a standing wave in the web of our communications. Ours is a world that is both everywhere and nowhere, but it is not where bodies live.

We are creating a world that all may enter without privilege or prejudice accorded by race, economic power, military force, or station of birth.

We are creating a world where anyone, anywhere may express his or her beliefs, no matter how singular, without fear of being coerced into silence or conformity.

Your legal concepts of property, expression, identity, movement, and context do not apply to us. They are all based on matter, and there is no matter here.

Our identities have no bodies, so, unlike you, we cannot obtain order by physical coercion. We believe that from ethics, enlightened self-interest, and the commonweal, our governance will emerge. Our identities may be distributed across many of your jurisdictions. The only law that all our constituent cultures would generally recognize is the Golden Rule. We hope we will be able to build our particular solutions on that basis. But we cannot accept the solutions you are attempting to impose.

In the United States, you have today created a law, the Telecommunications Reform Act, which repudiates your own Constitution and insults the dreams of Jefferson, Washington, Mill, Madison, DeToqueville, and Brandeis. These dreams must now be born anew in us.

You are terrified of your own children, since they are natives in a world where you will always be immigrants. Because you fear them, you entrust your bureaucracies with the parental responsibilities you are too cowardly to confront yourselves. In our world, all the sentiments and expressions of humanity, from the debasing to the angelic, are parts of a seamless whole, the global conversation of bits. We cannot separate the air that chokes from the air upon which wings beat.

In China, Germany, France, Russia, Singapore, Italy and the United States, you are trying to ward off the virus of liberty by erecting guard posts at the frontiers of Cyberspace. These may keep out the contagion for a small time, but they will not work in a world that will soon be blanketed in bit-bearing media.

Your increasingly obsolete information industries would perpetuate themselves by proposing laws, in America and elsewhere, that claim to own speech itself throughout the world. These laws would declare ideas to be another industrial product, no more noble than pig iron. In our world, whatever the human mind may create can be reproduced and distributed infinitely at no cost. The global conveyance of thought no longer requires your factories to accomplish.

These increasingly hostile and colonial measures place us in the same position as those previous lovers of freedom and self-determination who had to reject the authorities of distant, uninformed powers. We must declare our virtual selves immune to your sovereignty, even as we continue to consent to your rule over our bodies. We will spread ourselves across the Planet so that no one can arrest our thoughts.

We will create a civilization of the Mind in Cyberspace. May it be more humane and fair than the world your governments have made before.

Davos, Switzerland
February 8, 1996







The Cathedral and the Bazaar
https://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar
The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary (abbreviated CatB) is an essay, and later a book, by Eric S. Raymond on software engineering methods, based on his observations of the Linux kernel development process and his experiences managing an open source project, fetchmail. It examines the struggle between top-down and bottom-up design. The essay was first presented by the author at the Linux Kongress on May 27, 1997 in Würzburg (Germany) and was published as part of the same‑titled book in 1999.

The illustration on the cover of the book is a 1913 painting by Liubov Popova titled Composition with Figures and belongs to the collection of the State Tretyakov Gallery.[1] The book was released under the Open Publication License v2.0 in 1999.[2]


Contents
1	"The Cathedral and the Bazaar"
2	Lessons for creating good open source software
3	Legacy and reception
4	See also
5	Notes
6	References
7	External links
"The Cathedral and the Bazaar"
The essay contrasts two different free software development models:

The Cathedral model, in which source code is available with each software release, but code developed between releases is restricted to an exclusive group of software developers. GNU Emacs and GCC were presented as examples.
The Bazaar model, in which the code is developed over the Internet in view of the public. Raymond credits Linus Torvalds, leader of the Linux kernel project, as the inventor of this process. Raymond also provides anecdotal accounts of his own implementation of this model for the Fetchmail project.
The essay's central thesis is Raymond's proposition that "given enough eyeballs, all bugs are shallow" (which he terms Linus's law): the more widely available the source code is for public testing, scrutiny, and experimentation, the more rapidly all forms of bugs will be discovered. In contrast, Raymond claims that an inordinate amount of time and energy must be spent hunting for bugs in the Cathedral model, since the working version of the code is available only to a few developers.

Lessons for creating good open source software
Raymond points to 19 "lessons" learned from various software development efforts, each describing attributes associated with good practice in open source software development:[3]

Every good work of software starts by scratching a developer's personal itch.
Good programmers know what to write. Great ones know what to rewrite (and reuse).
Plan to throw one [version] away; you will, anyhow (copied from Frederick Brooks's The Mythical Man-Month).
If you have the right attitude, interesting problems will find you.
When you lose interest in a program, your last duty to it is to hand it off to a competent successor.
Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging.
Release early. Release often. And listen to your customers.
Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone.
Smart data structures and dumb code works a lot better than the other way around.
If you treat your beta-testers as if they're your most valuable resource, they will respond by becoming your most valuable resource.
The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.
Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong.
Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away. (Attributed to Antoine de Saint-Exupéry)
Any tool should be useful in the expected way, but a truly great tool lends itself to uses you never expected.
When writing gateway software of any kind, take pains to disturb the data stream as little as possible—and never throw away information unless the recipient forces you to!
When your language is nowhere near Turing-complete, syntactic sugar can be your friend.
A security system is only as secure as its secret. Beware of pseudo-secrets.
To solve an interesting problem, start by finding a problem that is interesting to you.
Provided the development coordinator has a communications medium at least as good as the Internet, and knows how to lead without coercion, many heads are inevitably better than one.
Legacy and reception
In 1998, the essay helped the final push for Netscape Communications Corporation to release the source code for Netscape Communicator and start the Mozilla project; it was cited by Frank Hecker and other employees as an outside independent validation of his arguments.[4][5][6] Netscape's public recognition of this influence brought Raymond renown in hacker culture.[7]

When O'Reilly Media published the book in 1999, it became one of the first (if not the first) complete and commercially distributed book published under the Open Publication License.[2]

Marshall Poe, in his essay "The Hive", likens Wikipedia to the Bazaar model that Raymond defines.[8] Jimmy Wales himself was in fact inspired by the work (as well as arguments put forward in works prior to the Internet age, such as Friedrich Hayek's article "The Use of Knowledge in Society"), arguing that "It opened my eyes to the possibility of mass collaboration".[9]

In 1999 Nikolai Bezroukov published two cited critical essays on Eric Raymond's views on open source software, the second one called "A second look at The Cathedral and the Bazaar".[10][11][12][13] They produced a sharp response from Eric Raymond.[14]

See also
GNU Bazaar, a distributed version control system named to highlight its relation with the "bazaar" model
"Homesteading the Noosphere"
Notes
 "Colophon". The Cathedral & the Bazaar. O'Reily Media. Retrieved 20 December 2011.
 cathedral-bazaar
 Raymond, Eric Steven. "The Cathedral and the Bazaar". Retrieved 18 April 2012.
 "Epilog: Netscape Embraces the Bazaar".
 Jim Hamerly and Tom Paquin with Susan Walton (January 1999). "Freeing the Source: The Story of Mozilla". Open Sources: Voices from the Open Source Revolution (1st ed.). ISBN 1-56592-582-3. Frank had done his homework, citing Eric Raymond's paper, "The Cathedral and the Bazaar," and talking to people in departments throughout the organization--from engineering to marketing to management.
 Louis Suárez-Potts (1 May 2001), Interview: Frank Hecker, openoffice.org, (Since it always gets mentioned in relation to Netscape's Mozilla decision, I should also note that Eric Raymond's paper "The Cathedral and the Bazaar" was referenced by me and others who were lobbying Netscape's management. In my opinion the paper's importance in the context of Netscape's decision was mainly that it provided some independent validation of ideas that were already being actively discussed and promoted within Netscape. If you've ever tried to promote a proposal within your organization, then you may have discovered that it's somewhat easier to do this if you can point to someone outside the organization who's saying the same thing.)
 Sam Williams (30 November 2011). Free as in Freedom [Paperback]: Richard Stallman's Crusade for Free Software. "O'Reilly Media, Inc.". p. 161. ISBN 978-1-4493-2464-3. When Netscape CEO Jim Barksdale cited Raymond's 'Cathedral and the Bazaar' essay as a major influence upon the company's decision, the company instantly elevated Raymond to the level of hacker celebrity. Determined not to squander the opportunity, Raymond traveled west to deliver interviews, advise Netscape executives, and take part in the eventual party celebrating the publication of Netscape Navigator's source code.
 Poe, Marshall (September 2006). "The Hive". The Atlantic. Retrieved 2012-07-05.
 Schiff, Stacy. "Annals of Information". The New Yorker. Retrieved 4 July 2014.
 Karl Eugen Kurbel (23 June 2008). The Making of Information Systems: Software Engineering and Management in a Globalized World. Springer. pp. 222–. ISBN 978-3-540-79260-4. Retrieved 15 October 2012.
 Bezroukov, Open source software development as a special type of academic research: Critique of vulgar Raymondism" Accessed 23 May 2019.
 Bezroukov, A second look at The Cathedral and the Bazaar Accessed 23 May 2019.
 Jan Bergstra; Mark Burgess (19 December 2007). Handbook of Network and System Administration. Elsevier. pp. 202–. ISBN 978-0-444-52198-9. Retrieved 15 October 2012.
 Eric S. Raymond,"Response to Nikolai Bezroukov"







Information ecology
https://en.wikipedia.org/wiki/Information_ecology#Networked_information_economy
In the context of an evolving information society, the term information ecology marks a connection between ecological ideas with the dynamics and properties of the increasingly dense, complex and important digital informational environment and has been gaining acceptance in a growing number of disciplines. "Information ecology" often is used as metaphor, viewing the informational space as an ecosystem.

Information ecology also makes a connection to the concept of collective intelligence and knowledge ecology (Pór 2000). Eddy et. al. (2014) use information ecology for science-policy integration in ecosystems-based management (EBM).


Contents
1	Networked information economy
2	In different domains / disciplines
2.1	Anthropology
2.2	Knowledge management
2.3	Law
2.4	Library science
2.5	Science-Policy Integration (SPI) / Ecosystems-Based Management (EBM)
3	See also
4	Notes
5	References
Networked information economy
In The Wealth of Networks: How Social Production Transforms Markets and Freedom, a book published in 2006 and available under a Creative Commons license on its own wikispace,[1] Yochai Benkler provides an analytic framework for the emergence of the networked information economy that draws deeply on the language and perspectives of information ecology together with observations and analyses of high-visibility examples of successful peer production processes, citing Wikipedia as a prime example.

Bonnie Nardi and Vicki O'Day in their book "Information Ecologies: Using Technology with Heart," (Nardi & O’Day 1999) apply the ecology metaphor to local environments, such as libraries and schools, in preference to the more common metaphors for technology as tool, text, or system.

In different domains / disciplines
Anthropology
Nardi and O’Day’s book represents the first specific treatment of information ecology by anthropologists. H.E. Kuchka[2] situates information within socially-distributed cognition of cultural systems. Casagrande and Peters[3] use information ecology for an anthropological critique of Southwest US water policy. Stepp (1999)[4] published a prospectus for the anthropological study of information ecology.

Knowledge management
Information ecology was used as book title by Thomas H. Davenport and Laurence Prusak (Davenport & Prusak 1997), with a focus on the organization dimensions of information ecology. There was also an academic research project at DSTC called Information ecology, concerned with distributed information systems and online communities.

Law
Law schools represent another area where the phrase is gaining increasing acceptance, e.g. NYU Law School Conference Towards a Free Information Ecology[5] and a lecture series on Information ecology at Duke University Law School's Center for the Study of the Public Domain.

Library science
The field of library science has seen significant adoption of the term and librarians have been described by Nardi and O'Day as a "keystone species in information ecology",[6][7] and references to information ecology range as far afield as the Collaborative Digital Reference Service of the Library of Congress,[8] to children's library database administrator in Russia.

Science-Policy Integration (SPI) / Ecosystems-Based Management (EBM)
Eddy et. al. (2014) use principles of information ecology to develop a framework for integrating scientific information in decision-making in ecosystem-based management (EBM). Using a metaphor of how a species adapts to environmental changes through information processing, they developed a 3-tiered model that differentiates primary, secondary and tertiary levels of information processing, within both the technical and human domains.

See also
icon	Environment portal
Biosemiotics
Collaborative filtering
Collective intelligence
Collective memory
Complex adaptive system
Crowd psychology
Diffusion of innovations
Digital ecosystem
Environmental health
Information ethics
Information science
Information society
Knowledge commons
Knowledge ecosystem
Knowledge management
Knowledge organization
Knowledge tagging
Media ecology
Sociology of knowledge
Notes
	Wikibooks has more on the topic of: Information ecology
Barlow, John Perry (1994). "The Economy of Ideas: Selling Wine Without Bottles on the Global Net". Wired. March. 1994.
Capurro, Rafael (1990). "Towards an Information Ecology". Irene Wormell (Ed.): Information and Quality. London: Taylor Graham. pp. 122–139, 288.
Davenport, Thomas H.; Prusak, Laurence (1997). Information Ecology. Oxford University Press. p. 288. ISBN 978-0-19-511168-2.
Eddy, B. G., B. Hearn, J. E. Luther, M. Van Zyll de Jong, W. Bowers, R. Parsons, D. Piercey, G. Strickland, and B. Wheeler. 2014. An information ecology approach to science–policy integration in adaptive management of social-ecological systems. Ecology and Society 19(3): 40. https://dx.doi.org/10.5751/ES-06752-190340.
Finin, Tim; Joshi, Anupam; Kolari, Pranam; Java, Akshay; Kale, Anubav; Krandikar, Amit (2007). "The Information ecology of social media and online communities". AI Magazine. 28 (3): 77–92.
Malhotra, Yogesh (1999). "Knowledge Management for Organizational White Waters: An Ecological Framework". Knowledge Management. 2 (6): 18–21.
Nardi, Bonnie; O’Day, Vicki (1999). Information Ecology: Using Technology with Heart. Cambridge: MIT Press. p. 288. Archived from the original on 2010-08-09. Retrieved 2009-09-07.
Pór, G. (2000). "Nurturing Systemic Wisdom through Knowledge Ecology" (PDF). The Systems Thinker. 11 (8): 1–5. Archived from the original (PDF) on 2011-10-05. Retrieved 2009-09-07.





Soylu, Ahmet; De Causmaecker, Patrick; Wild, Fridolin (2010). "Ubiquitous Web for Ubiquitous Computing Environments: The Role of Embedded Semantics". Journal of Mobile Multimedia. 6 (1): 26–48.
Seely Brown, John; Duguid, Paul (2000). The Social Life of Information. Harvard Business School Press.
References
 Benkler, Yochai. The Wealth of Networks: How Social Production Transforms Markets and Freedom. available under a Creative Commons.
 "Information Ecology".
 Casagrande, D.G., & C. Peters. 2013. Ecomyopia meets the longue durée: An information ecology of the increasingly arid Southwestern United States. Pp. 97-144 in H. Kopnina & E. Shoreman (Eds.), Environmental Anthropology: Future Directions. New York: Routledge.
 "Data" (PDF). kuchka.org.
 Conference A Free Information Ecology in the Digital Environment Archived 2009-03-29 at the Wayback Machine, New York University School of Law, March 31, 2000 to Sunday, April 2, 2000
 "Archived copy". Archived from the original on 2006-03-07. Retrieved 2017-12-29.
 https://web.archive.org/web/20040502182859/http://www.sims.berkeley.edu/sfsla/bulletin/sepoct00/info_ecology.html. Archived from the original on May 2, 2004. Retrieved April 2, 2004. Missing or empty |title= (help)
 "Archived copy". Archived from the original on 2006-03-07. Retrieved 2017-12-29.








Noocracy
https://en.wikipedia.org/wiki/Noocracy#Etymology
Noocracy (/noʊˈɒkrəsi, ˈnoʊ.əkrəsi/), or "aristocracy of the wise", as originally defined by Plato, is a system of governance where decision making is in the hands of philosophers, similar to his idea of philosopher kings. The idea was further expanded upon by geologist Vladimir Vernadsky, and philosophers (who attended Vernadsky's lectures) Pierre Teilhard de Chardin and Édouard Le Roy, and their concept of the noosphere.


Contents
1	Etymology
2	Development
3	Rationales for noocracy
3.1	Irrationality of voters
3.2	Democracy's susceptibility for bad policies
3.3	Use of expertise for efficient outcomes
4	Criticisms
4.1	Noocracy as anti-democratic
4.2	Inefficiency of experts
4.3	Rejection of demographic unjustness of noocracy
5	See also
6	References
Etymology
The word itself is derived from Greek nous, Gen. noos (νους) meaning "mind" or "intellect", and "kratos" (κράτος), "authority" or "power".

Development

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (June 2019) (Learn how and when to remove this template message)
One of the first attempts to implement such a political system was perhaps Pythagoras' "city of the wise" that he planned to build in Italy together with his followers, the order of "mathematikoi". In modern history, similar concepts were introduced by Vladimir Vernadsky, who did not use this term, but the term "noosphere".

As defined by Plato, noocracy is considered to be the future political system for the entire human race, replacing democracy ("the authority of the crowd") and other forms of government.

Mikhail Epstein defined noocracy as "the thinking matter increases its mass in nature and geo- and biosphere grow into noosphere, the future of the humanity can be envisioned as noocracy—that is the power of the collective brain rather than separate individuals representing certain social groups or society as whole".

Rationales for noocracy
Irrationality of voters
Proponents of noocratic theory cite empirics that suggests voters in modern democracies are largely ignorant, misinformed and irrational.[1] Therefore, one person one vote mechanism proposed by democracy cannot be used to produce efficient policy outcomes, for which the transfer of power to a smaller, informed and rational group would be more appropriate. The irrationality of voters inherent in democracies can be explained by two major behavioral and cognitive patterns. Firstly, most of the voters think that the marginal contribution of their vote will not make a difference on election outcomes; therefore, they do not find it useful to inform themselves on political matters.[1] In other terms, due to the required time and effort of acquiring new information, voters rationally prefer to remain ignorant. Moreover, it has been shown that most citizens process political information in deeply biased, partisan, motivated ways rather than in dispassionate, rational ways.[1] This psychological phenomenon causes voters to strongly identify themselves with a certain political group, specifically find evidence to support arguments aligning with their preferred ideological inclinations, and eventually vote with a high level of bias.

Democracy's susceptibility for bad policies
Irrational political behaviors of voters prevent them from making calculated choices and opting for the right policy proposals. On the other hand, many political experiments have shown that as voters get more informed, they tend to support better policies, demonstrating that acquisition of information has a direct impact on rational voting. For example, Martin Gilens notes in his research that low-income democrats tend to have more intolerant thoughts pertinent to LGBT rights, whereas high-income democrats have the opposite preferences.[1] Moreover, supporters of noocracy see a greater danger in the fact that politicians will actually prefer to implement the policy decisions of citizens to win elections and stabilize their power, without paying particular attention to the content and further outcomes of these policies. In democracies, the problem is that voters are prone to make bad policy decisions and therefore that politicians are incentivized to implement these policies due to personal benefits. Therefore, noocrats argue that it makes sense to limit the voting power of citizens in order to prevent bad policy outcomes. Noocracy has still a code of conduct to pursue philanthropy like initiatives.

Use of expertise for efficient outcomes
According to noocrats, given the complex nature of political decisions, it is not reasonable to assume that a citizen would have the necessary knowledge to decide on means to achieve their political aims. In general, political actions require a lot of social scientific knowledge from various fields, such as economics, sociology, international relations, and public policy; however, an ordinary voter is hardly specialized enough in any of those fields to make the optimal decision. To address this issue, Christiano proposes a ruling system based on division of political labor, in which citizens set the agenda for political discussions and determine the aims of the society, whereas legislators are in charge of deciding on the means to achieve these aims.[2] For noocrats, transferring the decision-making mechanism to a body of specifically trained, specialized and experienced body is expected to result in superior and more efficient policy outcomes. Recent economic success of some countries that have a sort of noocratic ruling element provides basis for this particular argument in favor of noocracy.

For instance, Singapore has a political system that favors meritocracy; the path to government in Singapore is structured in such a way that only those with above-average skills are identified with strict university-entrance exams, recruiting processes, etc., and then rigorously trained to be able to devise best the solutions that benefit the entire society. In the words of the country's founding father, Lee Kuan Yew, Singapore is a society based on effort and merit, not wealth or privilege depending on birth.[3] This system primarily works due to citizens’ belief that political leaders tend to have a better understanding of country's long-term plans than themselves; therefore, as they see positive policy outcomes, they tend to go along with the system, rather than complain about the meritocratic dimensions. For example, most citizens praise their government in Singapore, stating that it managed to transform Singapore from a third world country to a developed economy, and that it successfully fostered loyalty in its citizens towards the country and gave birth to a unique concept of Singaporean citizenship despite a great level of ethnic diversity. In order to develop further Singapore's technocratic system, some thinkers, like Parag Khanna, have proposed for the country to adapt a model of direct technocracy, demanding citizen input in essential matters through online polls, referenda, etc., and asking for a committee of experts to analyze this data to determine the best course of action.[4]

Criticisms
Noocracies, like technocracies, have been criticized for meritocratic failings, such as upholding of a non-egalitarian aristocratic ruling class. Others have upheld more democratic ideals as better epistemic models of law and policy. Noocracy criticisms come in multiple forms, two of which are those focused on the efficacy of noocracies and the political viability of them.

Criticisms of noocracy in all its forms – including technocracy, meritocracy, and epistocracy (the focus of Jason Brennan's oft-cited book) – range from support of direct democracy instead to proposed alterations to our consideration of representation in democracy. Political theorist Hélène Landemore, while arguing for representatives to effectively enact legislation important to the polity, criticizes conceptions of representation that aim especially to remove the people from the process of making decisions, and thereby nullify their political power.[5] Noocracy, especially as it is conceived in Jason Brennan's Against Democracy, aims specifically to separate the people from the decision on the basis of the immensely superior knowledge of officials who will presumably make superior decisions to laypeople.

Noocracy as anti-democratic
Jason Brennan's epistocracy, specifically, is at odds with democracy and with certain criteria for democracies that theorists have proposed. Robert Dahl's Polyarchy sets out certain rules for democracies that govern many people and the rights that the citizens must be granted. His demand that the government not discriminatorily heed the preferences of full members of the polity is abridged by Brennan's "restricted suffrage" and "plural voting" schemes of epistocracy.[6][1] In the eighth chapter of his book, Brennan posits a system of graduated voting power that gives people more votes based on established levels of education achieved, with the number of additional votes granted to a hypothetical citizen increasing at each level, from turning sixteen to completing high school, a bachelor's degree, a master's degree, and so forth.[1] Dahl wrote, however, that any democracy that rules over a large group of people must accept and validate "alternative sources of information."[6] Granting the full powers of citizenship based on a system like formal education attainment does not account for the other ways that people can consume information, is the commonly cited argument, and still eschews consideration for the uneducated within a group.

Inefficiency of experts
Noocracy also receives criticism for its claims to efficiency. Brennan writes that one of the many reasons that common people cannot be trusted to make decisions for the state is because reasoning is commonly motivated, and, therefore, people decide what policies to support based on their connection to those proposing and supporting the measures, not based on what is most effective. He contrasts real people with the ultra-reasonable vulcan that he mentions throughout the book.[1] That vulcan reflects Plato's philosopher king and, in a more realistic sense, the academic elites whom Michael Young satirized in his essay The Rise of the Meritocracy.[7][8] Modern political theorists do not necessarily denounce a biased viewpoint in politics, however, though those biases are not written about as they are commonly considered. Professor Landemore utilizes the existence of cognitive diversity to argue that any group of people that represents great diversity in their approaches to problem-solving (cognition) is more likely to succeed than groups that do not.[9] She further illustrates her point by employing the example of a New Haven task force made up of private citizens of many careers, politicians, and police who needed to reduce crime on a bridge without lighting, and they all used different aspects of their experiences to discover the solution that was to install solar lamps on the bridge. That solution has proven effective, with not a single mugging reported there since the lamp installation as of November 2010.[9] Her argument lies mainly in the refutation of noocratic principles, for they do not utilize the increased problem solving skill of a diverse pool, when the political system because as debate between elites alone, and not a debate between the whole polity.[5]

To some theorists, noocracy is built on a fantasy that will uphold current structures of elite power, while maintaining its inefficacy. Writing for the New Yorker, Caleb Crain notes that there is little to say that the vulcans that Brennan exalts actually exist.[10] Crain mentions a study that appears in Brennan's book that shows that even those who have proven that they have superb skills in mathematics do not employ those skills if their use threatens their already-held political belief. While Brennan utilized that study to demonstrate how deeply rooted political tribalism is in all people, Crain drew on this study to question the very nature of an epistocratic body that can make policy with a greater regard to knowledge and truth than the ordinary citizen can.[1][10] The only way to correct for that seems, to many, to be to widen the circle of deliberation (as discussed above) because policy decisions that were made with more input and approval from the people last longer and even garner the agreement of the experts.[11][9] To further illustrate that experts, too, are flawed, Cairn enumerates some of the expert-endorsed political decisions that he has deemed failures in recent years: "invading Iraq, having a single European currency, grinding subprime mortgages into the sausage known as collateralized debt obligations."[10]

With the contention around the reasoning for those political decisions, political theorist David Estlund posited what he considered to be one of the prime arguments against epistocracy – bias in choosing voters.[12] His fear was that the method by which voters, and voters' quantity of votes, was chosen might be biased in a way that people had not been able to identify and could not, therefore, rectify.[12] Even the aspects of the modes of selecting voters that are known cause many theorists concern, as both Brennan and Cairn note that the majority of poor black women would be excluded from the enfranchised polity and risk seeing their needs represented even less than they currently are.[10]

Rejection of demographic unjustness of noocracy
Proponents of democracy attempt to show that noocracy is intrinsically unjust on two dimensions, stating its unfairness and bad results. The former states that since people with different income levels and education backgrounds have unequal access to information, the epistocratic legislative body will be naturally composed of citizens with higher economic status, and thus fail to equally represent different demographics of the society. The latter argument is about the policy outcomes; since there will be a demographic overrepresentation and underrepresentation in the noocratic body, the system will produce unjust outcomes, favoring the demographically advantaged group.[13] Brennan defends noocracy against these two criticisms, presenting a rationale for the system.

As a rejection of the unfairness argument put forward by democrats, Brennan argues that the voting electorate in modern democracies is also demographically disproportionate; based on empirical studies, it has been demonstrated that voters coming from privileged background, such as white, middle aged, higher-income men, tend to vote at a higher rate than other demographic groups.[13] Although de jure every group has same right to vote under one person one vote assumption, de facto practices show that privileged people have more influence on election results. As a result, the representatives will not match the demographics of the society either, for which democracy seems to be unjust in practice. With the right of type of noocracy, the unfairness effect can actually be minimized; for instance, enfranchisement lottery, in which a legislative electorate is selected at random by lottery, and then incentivized to become competent to address political issues, illustrates a fair representation methodology thanks to its randomness.

To refute the latter claim, Brennan states that voters do not vote selfishly; in other terms, the advantaged group does not attempt to undermine the interests of the minority group.[13] Therefore, the worry that noocratic bodies that are demographically more skewed towards the advantaged group make decisions in favor of the advantaged one fails. According to Brennan, noocracy can serve in a way that improves the welfare of the overall community, rather than certain individuals.

See also
Geniocracy
Noogenesis
Technocracy
 






Geniocracy
https://en.wikipedia.org/wiki/Geniocracy
Geniocracy is the framework for a system of government which was first proposed by Raël (leader of the International Raëlian Movement) in 1977 and which advocates a certain minimal criterion of intelligence for political candidates and also the electorate.[1]

A series of articles on the
Raëlian movement
Adam, Eve, and Elohim (Raëlism).png
FounderHistoryBeliefs and practicesCloning (Clonaid)Funds
Views
PoliticsEconomicsCosmology
vte
Part of the Politics series
Basic forms of government
Power source
Democracy
Oligarchy
Autocracy
Anarchism
Power ideology
Monarchy vs. republic
Authoritarian vs. libertarian
Global vs. local
Power structure
Unitary
Client state
Federalism
International relations
A coloured voting box.svg Politics portal
vte

Contents
1	Definition
1.1	Justifying the method of selection
2	Agenda
2.1	Response to criticism
2.2	Status
2.3	Democratically defined regions
3	See also
4	Notes
5	References
6	Further reading
7	External links
Definition
See also: Intelligence and Genius

The book cover of Rael's book Geniocracy: Government of the People, for the People, by the Geniuses (Printed for the first time in English: 2008 Nova Distribution.)
The term geniocracy comes from the word genius, and describes a system that is designed to select for intelligence and compassion as the primary factors for governance. While having a democratic electoral apparatus, it differs from traditional liberal democracy by instead suggesting that candidates for office and the body electorate should meet a certain minimal criterion of problem-solving or creative intelligence. The thresholds proposed by the Raëlians are 50% above the mean for an electoral candidate and 10% above the mean for an elector.[1]

Justifying the method of selection
This method of selectivity is deliberate so as to address what the concept considers to be flaws in the current systems of democracy. The primary object of criticism is the inability of majoritarian consensus to provide a reasonable platform for intelligent decision making for the purpose of solving problems permanently. Geniocracy's criticism of this system is that the institutions of democracy become more concerned with appealing to popular consensus through emotive issues than they are in making long-term critical decisions, especially those that may involve issues not immediately relevant to the electorate. It asserts that political mandate is something far too important to simply leave to popularity, and asserts that the critical decision making required for government, especially in a world of globalization, cannot be based on criteria of emotive or popular decision making. In this respect, Geniocracy derides liberal democracy as a form of "Mediocracy".[1] In a geniocracy, Earth would be ruled by a worldwide Geniocratic government.[2]

Agenda
Raelian texts
Intelligent Design
Yes to human cloning
Sensual Meditation
Geniocracy
vte
See also: Economic humanitarianism (Raëlianism)
Part of the geniocratic agenda is to promote the idea of a world government system, deriding the current state-system as inadequate for dealing with contemporary global issues that are typical of globalisation, such as environmentalism, social justice, human rights, and the current economic system. In line with this, geniocracy proposes a different economic model called Economic Humanitarianism.[1]

Response to criticism
As a response to its controversial attitudes about selectivity, one of the more general responses is to point out that universal suffrage, the current system, already discriminates to some degree and varyingly in different countries as to who is allowed to vote. Primarily, this discrimination is against women, minority racial groups, refugees, immigrants, minority religious groups, minority ethnic groups, minors, elderly people, those living in poverty and homelessness, incarcerated and previously incarcerated people, and the mentally or physically incapacitated. This is on the basis that their ability to contribute to the decision-making process is either flawed or invalid for the purpose of the society.[citation needed]

Status
The current difficulty in the ideas of geniocracy is that the means of assessing intelligence are ill-defined. One idea offered by Raël in Geniocracy is to have specialists such as psychologists, neurologists, ethnologists, etc., perfect or choose among existing ones, a series of tests that would define each person's level of intelligence. They should be designed to measure intellectual potential rather than accumulation of knowledge.

Other components deemed necessary for a more rounded understanding of intelligence include concepts like emotional intelligence. As such, geniocracy's validity cannot really be assessed until better and more objective methods of intelligence assessment are made available.

The matter of confronting moral problems that may arise is not addressed in the book Geniocracy; many leaders may be deeply intelligent and charismatic (having both high emotional/social intelligence and IQ) according to current means of measuring such factors, but no current scientific tests are a reliable enough measure for one's ability to make humanitarian choices (although online tests such as those used by retail chains to select job applicants may be relevant).[citation needed]

The lack of scientific rigour necessary for inclusion of geniocracy as properly testable political ideology can be noted in number of modern and historical dictatorships as well as oligarchies. Because of the controversies surrounding geniocracy, Raël presents the idea as a classic utopia or provocative ideal and not necessarily a model that humanity will follow.[3]

Democratically defined regions
The author of Geniocracy recommends (though does not necessitate) a world government with 12 regions. Inhabitants would vote for which region they want to be part of. After the regions are defined, they are further divided into 12 sectors after the same principle of democracy is applied. While sectors of the same region are defined as having equal numbers of inhabitants, the regions themselves may have different levels of population, which would be proportional to its voting power.[1]

See also
Idiocracy (a dark comedy film) depicts the United States in 2505 where the vast majority are mentally backwards (by current standards) despite widespread use of IQ tests.
Superman: Red Son ends with Lex Luthor establishing a utopian but elitist world government under the philosophy of "Luthorism" which is essentially a geniocracy run by Luthor and other geniuses.
Plato's Republic
Meritocracy
Netocracy
Noocracy
Transhumanism
Technocracy
 






Noosphere
https://en.wikipedia.org/wiki/Noosphere#Founding_authors

	
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Noosphere" – news · newspapers · books · scholar · JSTOR (November 2013) (Learn how and when to remove this template message)
The noosphere (alternate spelling noösphere) is a philosophical concept developed and popularized by the Russian and Ukrainian biogeochemist Vladimir Vernadsky, and the French philosopher and Jesuit priest Pierre Teilhard de Chardin. Vernadsky defined the noosphere as the new state of the biosphere[1] and described as the planetary "sphere of reason".[2][3] The noosphere represents the highest stage of biospheric development, its defining factor being the development of humankind's rational activities.[4]

The word is derived from the Greek νόος ("mind", "reason") and σφαῖρα ("sphere"), in lexical analogy to "atmosphere" and "biosphere".[5] The concept, however, cannot be accredited to a single author. The founding authors Vernadsky and de Chardin developed two related but starkly different concepts, the former being grounded in the geological sciences, and the latter in theology. Both conceptions of the noosphere share the common thesis that together human reason and the scientific thought has created, and will continue to create, the next evolutionary geological layer. This geological layer is part of the evolutionary chain.[6][7] Second generation authors, predominantly of Russian origin, have further developed the Vernadskian concept, creating the related concepts: noocenosis and noocenology.[8]


Contents
1	Founding authors
2	Concept
3	See also
4	Notes
5	References
6	External links
Founding authors
The term noosphere was first used in the publications of Pierre Teilhard de Chardin in 1922[9] in his Cosmogenesis.[10] Vernadsky was most likely introduced to the term by a common acquaintance, Édouard Le Roy, during a stay in Paris.[11] Some sources claim Édouard Le Roy actually first proposed the term.[12] Vernadsky himself wrote that he was first introduced to the concept by Le Roy in his 1927 lectures at the College of France, and that Le Roy had emphasized a mutual exploration of the concept with Teilhard de Chardin.[13] According to Vernadsky's own letters, he took Le Roy's ideas on the noosphere from Le Roy's article "Les origines humaines et l’evolution de l’intelligence", part III: "La noosphere et l’hominisation", before reworking the concept within his own field, biogeochemistry.[14] The historian Bailes concludes that Vernadsky and Teilhard de Chardin were mutual influences on each other, as Teilhard de Chardin also attended the Vernadsky's lectures on biogeochemistry, before creating the concept of the noosphere.[15]

An account stated that Le Roy and Teilhard were not aware of the concept of biosphere in their noosphere concept and that it was Vernadsky who introduced them to this notion, which gave their conceptualization a grounding on natural sciences.[16] Both Teilhard de Chardin and Vernadsky base their conceptions of the noosphere on the term 'biosphere', developed by Edward Suess in 1875.[17] Despite the differing backgrounds, approaches and focuses of Teilhard and Vernadsky, they have a few fundamental themes in common. Both scientists overstepped the boundaries of natural science and attempted to create all-embracing theoretical constructions founded in philosophy, social sciences and authorized interpretations of the evolutionary theory.[18] Moreover, both thinkers were convinced of the teleological character of evolution. They also argued that human activity becomes a geological power and that the manner by which it is directed can influence the environment.[19] There are, however, fundamental differences in the two conceptions.

Concept
In the theory of Vernadsky, the noosphere is the third in a succession of phases of development of the Earth, after the geosphere (inanimate matter) and the biosphere (biological life). Just as the emergence of life fundamentally transformed the geosphere, the emergence of human cognition fundamentally transforms the biosphere. In contrast to the conceptions of the Gaia theorists, or the promoters of cyberspace, Vernadsky's noosphere emerges at the point where humankind, through the mastery of nuclear processes, begins to create resources through the transmutation of elements. It is also currently being researched as part of the Global Consciousness Project.[20]

Teilhard perceived a directionality in evolution along an axis of increasing Complexity/Consciousness. For Teilhard, the noosphere is the sphere of thought encircling the earth that has emerged through evolution as a consequence of this growth in complexity/consciousness. The noosphere is therefore as much part of nature as the barysphere, lithosphere, hydrosphere, atmosphere, and biosphere. As a result, Teilhard sees the "social phenomenon [as] the culmination of and not the attenuation of the biological phenomenon."[21] These social phenomena are part of the noosphere and include, for example, legal, educational, religious, research, industrial and technological systems. In this sense, the noosphere emerges through and is constituted by the interaction of human minds. The noosphere thus grows in step with the organization of the human mass in relation to itself as it populates the earth. Teilhard argued the noosphere evolves towards ever greater personalisation, individuation and unification of its elements. He saw the Christian notion of love as being the principal driver of "noogenesis", the evolution of mind. Evolution would culminate in the Omega Point—an apex of thought/consciousness—which he identified with the eschatological return of Christ.

One of the original aspects of the noosphere concept deals with evolution. Henri Bergson, with his L'évolution créatrice (1907), was one of the first to propose evolution is "creative" and cannot necessarily be explained solely by Darwinian natural selection.[citation needed] L'évolution créatrice is upheld, according to Bergson, by a constant vital force which animates life and fundamentally connects mind and body, an idea opposing the dualism of René Descartes. In 1923, C. Lloyd Morgan took this work further, elaborating on an "emergent evolution" which could explain increasing complexity (including the evolution of mind). Morgan found many of the most interesting changes in living things have been largely discontinuous with past evolution. Therefore, these living things did not necessarily evolve through a gradual process of natural selection. Rather, he posited, the process of evolution experiences jumps in complexity (such as the emergence of a self-reflective universe, or noosphere), in a sort of qualitative punctuated equilibrium. Finally, the complexification of human cultures, particularly language, facilitated a quickening of evolution in which cultural evolution occurs more rapidly than biological evolution. Recent understanding of human ecosystems and of human impact on the biosphere have led to a link between the notion of sustainability with the "co-evolution"[22] and harmonization of cultural and biological evolution.

See also
Anthropocene
Collective consciousness
Global brain
Ideosphere
Knowledge ecosystem
Noocracy
Noogenesis
Noology
Technosphere




Knowledge divide
https://en.wikipedia.org/wiki/Knowledge_divide#Overview
The knowledge divide is the gap between those who can find, create, manage, process, and disseminate information or knowledge, and those who are impaired in this process. According to a 2005 UNESCO World Report, the rise in the 21st century of a global information society has resulted in the emergence of knowledge as a valuable resource, increasingly determining who has access to power and profit.[1] The rapid dissemination of information on a potentially global scale as a result of new information media[2] and the globally uneven ability to assimilate knowledge and information has resulted in potentially expanding gaps in knowledge between individuals and nations.[3] The digital divide is an extension of the knowledge divide, dividing people who have access to the internet and those who do not.[citation needed] The knowledge divide also represents the inequalities of knowledge among different identities, including but nor limited to race, economic status, and gender.


Contents
1	Overview
2	Between nations
3	The knowledge divide in gender, race, ethnicity and socioeconomic status
4	Closing the knowledge divide
5	See also
6	Notes
7	References
Overview
In the 21st century, the emergence of the knowledge society becomes pervasive.[4] The transformations of world's economy and of each society have a fast pace. Together with information and communication technologies (ICT), these new paradigms have the power to reshape the global economy.[5] In order to keep pace with innovations, to come up with new ideas, people need to produce and manage knowledge. This is why knowledge has become essential for all societies. While knowledge has become essential for all societies due to the growth of new technologies, the increase of mass media information continues to facilitate the knowledge divide between those with educational differences.[6]

Between nations
According to UNESCO and the World Bank,[7] knowledge gaps between nations may occur due to the varying degrees by which individual nations incorporate the following elements:

Human rights and fundamental freedoms: An absence of freedom within a society can diminish or delay the ability of its members to acquire, debate, and transmit knowledge. Vital to the spread of knowledge and information between nations are such freedoms as freedom of expression, an absence of censorship, free circulation of information, and freedom of the press.[8]
Democracy
Plurality of knowledge and information: This includes a diverse media[9] and the acceptance of diverse forms of knowledge.[10]
Quality infrastructure: For instance, a poor electrical grid makes the existence of computer networks or of higher education institutions less attainable.
Effective communication system: This will affect the dissemination of knowledge or movement of ideas within and between nations.[11]
Effective education system: Gaps in knowledge between nations can exist when individual countries invest too little in primary school education, which acts as the base for the entire education system.[12] According to UNESCO, in order for a nation to become a knowledge society, primary education must focus on basic literacy and must be universally accessible.[13] However, as others have pointed out, higher education may be equally important for closing knowledge gaps between nations, particularly between newly industrialized nations, such as the Republic of Korea, and more advanced industrial societies.[14] For the former, higher education can play an important role in bridging knowledge gaps, but must benefit more than a small elite portion of the population and must be taught at international standards.[15] The poor development of educational institutions from a society affects the creativity of people belonging to that society.
Focus on Research and Innovation: As the World Bank suggests, Research & Development within a nation can enable it to follow current developments in global knowledge and also to understand how to adapt external knowledge and technology to meet its needs.[16] In nations with low degrees of R&D, government funding can provide a significant portion of support that can later be taken over by private investment.[17] Closely tied to effective education systems is the need for a nation to allow for academic freedom.[18] Because higher educational institutions are significant contributors to R&D,[19] these institutions must be granted freedom to create and disseminate knowledge.[20] An environment supportive of research and innovation may also help stem the "brain drain" of educated individuals from knowledge-poor nations to knowledge-rich nations.[21]
Intellectual Property Rights: Closely connected to a focus on research and innovation are national and international Intellectual Property Rights. Within a nation, Intellectual Property Rights can spawn research and innovation by providing economic incentives for investing in new knowledge development.[22] However, as stated by the World Bank, by protecting innovations, intellectual property rights may also inhibit knowledge-sharing and may prevent developing nations from benefitting from knowledge produced in other countries.[23]
The knowledge divide in gender, race, ethnicity and socioeconomic status
First, it was noticed that a great difference exists between the North and the South[where?] (rich countries vs. poor countries). The development of knowledge depends on spreading Internet and computer technology and also on the development of education in these countries. If a country has attained a higher literacy level then this will result in a higher level of knowledge. Indeed, UNESCO's report details many social issues in knowledge divide related to globalization. There was noticed a knowledge divide with respect to

Gender: Socio-cultural inequalities between men and women, such as unequal access to education and technology, create the conditions for unequal access to knowledge. This can cause significant knowledge gaps both within and between nations, the latter resulting from individual nations' underutilization of their full knowledge workforce.[24] A gap in the use of the internet has been discovered as well. Women are more likely to use the internet for communication, while men are more likely to use it for commerce, information, and entertainment.[25]
Race: Studies have shown that although gaps in access to IT has diminished over the decades, there is still a large gap in IT use between African Americans and other racial groups. These studies have shown that there is a difference in the ways African American use the internet in comparison with other American racial groups.[26]
Socioeconomic: Based on the 2008-2009 American National Election Studies panel data, research has found that socioeconomic status is most closely related to informational use of the internet than access to the internet, and the differential use of the internet between socioeconomic groups is associated with a larger knowledge gap.[27]
Closing the knowledge divide
Scholars have made similar possibilities in closing or minimizing the knowledge divide between individuals, communities, and nations. Providing access to computers and other technologies that disseminate knowledge is not enough to bridge the digital divide, rather importance must be out on developing digital literacy to bridge the gap.[28] Addressing the digital divide will not be enough to close the knowledge divide, disseminating relevant knowledge also depends on training and cognitive skills.[29]

See also
Digital citizen
Digital divide
Knowledge gap hypothesis












Information society
https://en.wikipedia.org/wiki/Information_society#Definition
An information society is a society where the usage, creation, distribution, manipulation and integration of information is a significant activity.[1] Its main drivers are information and communication technologies, which have resulted in rapid information growth in variety and is somehow changing all aspects of social organization, including education, economy,[2] health, government,[3] warfare, and levels of democracy.[4] The people who are able to partake in this form of society are sometimes called either computer users or even digital citizens, defined by K. Mossberger as “Those who use the Internet regularly and effectively”. This is one of many dozen internet terms that have been identified to suggest that humans are entering a new and different phase of society.[5]

Some of the markers of this steady change may be technological, economic, occupational, spatial, cultural, or a combination of all of these.[6] Information society is seen as a successor to industrial society. Closely related concepts are the post-industrial society (post-fordism), post-modern society, computer society and knowledge society, telematic society, society of the spectacle (postmodernism), Information Revolution and Information Age, network society (Manuel Castells) or even liquid modernity.


Contents
1	Definition
2	The growth of computer information in society
3	Development of the information society model
3.1	Economic transition
3.2	Critiques
4	Second and third nature
5	Sociological uses
6	Related terms
7	Intellectual property considerations
8	See also
9	References
9.1	Works cited
10	Further reading
11	External links
Definition
There is currently no universally accepted concept of what exactly can be defined as an information society and what shall not be included in the term. Most theoreticians agree that a transformation can be seen as started somewhere between the 1970s, the early 1990s transformations of the Socialist East and the 2000s period that formed most of today's net principles and currently as is changing the way societies work fundamentally. Information technology goes beyond the internet, as the principles of internet design and usage influence other areas, and there are discussions about how big the influence of specific media or specific modes of production really is. Frank Webster notes five major types of information that can be used to define information society: technological, economic, occupational, spatial and cultural.[6] According to Webster, the character of information has transformed the way that we live today. How we conduct ourselves centers around theoretical knowledge and information.[7]

Kasiwulaya and Gomo (Makerere University) allude[where?][dubious – discuss] that information societies are those that have intensified their use of IT for economic, social, cultural and political transformation. In 2005, governments reaffirmed their dedication to the foundations of the Information Society in the Tunis Commitment and outlined the basis for implementation and follow-up in the Tunis Agenda for the Information Society. In particular, the Tunis Agenda addresses the issues of financing of ICTs for development and Internet governance that could not be resolved in the first phase.

Some people, such as Antonio Negri, characterize the information society as one in which people do immaterial labour.[8] By this, they appear to refer to the production of knowledge or cultural artifacts. One problem with this model is that it ignores the material and essentially industrial basis of the society. However it does point to a problem for workers, namely how many creative people does this society need to function? For example, it may be that you only need a few star performers, rather than a plethora of non-celebrities, as the work of those performers can be easily distributed, forcing all secondary players to the bottom of the market. It is now common for publishers to promote only their best selling authors and to try to avoid the rest—even if they still sell steadily. Films are becoming more and more judged, in terms of distribution, by their first weekend's performance, in many cases cutting out opportunity for word-of-mouth development.

Michael Buckland characterizes information in society in his book Information and Society. Buckland expresses the idea that information can be interpreted differently from person to person based on that individual's experiences.[9]

Considering that metaphors and technologies of information move forward in a reciprocal relationship, we can describe some societies (especially the Japanese society) as an information society because we think of it as such.[10] [11]

The word information may be interpreted in many different ways. According to Buckland in Information and Society, most of the meanings fall into three categories of human knowledge: information as knowledge, information as a process, and information as a thing.[12]

The growth of computer information in society

Internet users per 100 inhabitants
Source: International Telecommunications Union.[13][14]

The amount of data stored globally has increased greatly since the 1980s, and by 2007, 94% of it was stored digitally. Source
The growth of the amount of technologically mediated information has been quantified in different ways, including society's technological capacity to store information, to communicate information, and to compute information.[15] It is estimated that, the world's technological capacity to store information grew from 2.6 (optimally compressed) exabytes in 1986, which is the informational equivalent to less than one 730-MB CD-ROM per person in 1986 (539 MB per person), to 295 (optimally compressed) exabytes in 2007.[16] This is the informational equivalent of 60 CD-ROM per person in 2007[17] and represents a sustained annual growth rate of some 25%. The world's combined technological capacity to receive information through one-way broadcast networks was the informational equivalent of 174 newspapers per person per day in 2007.[16]

The world's combined effective capacity to exchange information through two-way telecommunication networks was 281 petabytes of (optimally compressed) information in 1986, 471 petabytes in 1993, 2.2 (optimally compressed) exabytes in 2000, and 65 (optimally compressed) exabytes in 2007, which is the informational equivalent of 6 newspapers per person per day in 2007.[17] The world's technological capacity to compute information with humanly guided general-purpose computers grew from 3.0 × 10^8 MIPS in 1986, to 6.4 x 10^12 MIPS in 2007, experiencing the fastest growth rate of over 60% per year during the last two decades.[16]

James R. Beniger describes the necessity of information in modern society in the following way: “The need for sharply increased control that resulted from the industrialization of material processes through application of inanimate sources of energy probably accounts for the rapid development of automatic feedback technology in the early industrial period (1740-1830)” (p. 174) “Even with enhanced feedback control, industry could not have developed without the enhanced means to process matter and energy, not only as inputs of the raw materials of production but also as outputs distributed to final consumption.”(p. 175)[5]

Development of the information society model

Colin Clark's sector model of an economy undergoing technological change. In later stages, the Quaternary sector of the economy grows.
One of the first people to develop the concept of the information society was the economist Fritz Machlup. In 1933, Fritz Machlup began studying the effect of patents on research. His work culminated in the study The production and distribution of knowledge in the United States in 1962. This book was widely regarded[18] and was eventually translated into Russian and Japanese. The Japanese have also studied the information society (or jōhōka shakai, 情報化社会).

The issue of technologies and their role in contemporary society have been discussed in the scientific literature using a range of labels and concepts. This section introduces some of them. Ideas of a knowledge or information economy, post-industrial society, postmodern society, network society, the information revolution, informational capitalism, network capitalism, and the like, have been debated over the last several decades.

Fritz Machlup (1962) introduced the concept of the knowledge industry. He began studying the effects of patents on research before distinguishing five sectors of the knowledge sector: education, research and development, mass media, information technologies, information services. Based on this categorization he calculated that in 1959 29% per cent of the GNP in the USA had been produced in knowledge industries.[19][20][citation needed]

Economic transition
Peter Drucker has argued that there is a transition from an economy based on material goods to one based on knowledge.[21] Marc Porat distinguishes a primary (information goods and services that are directly used in the production, distribution or processing of information) and a secondary sector (information services produced for internal consumption by government and non-information firms) of the information economy.[22]

Porat uses the total value added by the primary and secondary information sector to the GNP as an indicator for the information economy. The OECD has employed Porat's definition for calculating the share of the information economy in the total economy (e.g. OECD 1981, 1986). Based on such indicators, the information society has been defined as a society where more than half of the GNP is produced and more than half of the employees are active in the information economy.[23]

For Daniel Bell the number of employees producing services and information is an indicator for the informational character of a society. "A post-industrial society is based on services. (…) What counts is not raw muscle power, or energy, but information. (…) A post industrial society is one in which the majority of those employed are not involved in the production of tangible goods".[24]

Alain Touraine already spoke in 1971 of the post-industrial society. "The passage to postindustrial society takes place when investment results in the production of symbolic goods that modify values, needs, representations, far more than in the production of material goods or even of 'services'. Industrial society had transformed the means of production: post-industrial society changes the ends of production, that is, culture. (…) The decisive point here is that in postindustrial society all of the economic system is the object of intervention of society upon itself. That is why we can call it the programmed society, because this phrase captures its capacity to create models of management, production, organization, distribution, and consumption, so that such a society appears, at all its functional levels, as the product of an action exercised by the society itself, and not as the outcome of natural laws or cultural specificities" (Touraine 1988: 104). In the programmed society also the area of cultural reproduction including aspects such as information, consumption, health, research, education would be industrialized. That modern society is increasing its capacity to act upon itself means for Touraine that society is reinvesting ever larger parts of production and so produces and transforms itself. This makes Touraine's concept substantially different from that of Daniel Bell who focused on the capacity to process and generate information for efficient society functioning.

Jean-François Lyotard[25] has argued that "knowledge has become the principle [sic] force of production over the last few decades". Knowledge would be transformed into a commodity. Lyotard says that postindustrial society makes knowledge accessible to the layman because knowledge and information technologies would diffuse into society and break up Grand Narratives of centralized structures and groups. Lyotard denotes these changing circumstances as postmodern condition or postmodern society.

Similarly to Bell, Peter Otto and Philipp Sonntag (1985) say that an information society is a society where the majority of employees work in information jobs, i.e. they have to deal more with information, signals, symbols, and images than with energy and matter. Radovan Richta (1977) argues that society has been transformed into a scientific civilization based on services, education, and creative activities. This transformation would be the result of a scientific-technological transformation based on technological progress and the increasing importance of computer technology. Science and technology would become immediate forces of production (Aristovnik 2014: 55).

Nico Stehr (1994, 2002a, b) says that in the knowledge society a majority of jobs involves working with knowledge. "Contemporary society may be described as a knowledge society based on the extensive penetration of all its spheres of life and institutions by scientific and technological knowledge" (Stehr 2002b: 18). For Stehr, knowledge is a capacity for social action. Science would become an immediate productive force, knowledge would no longer be primarily embodied in machines, but already appropriated nature that represents knowledge would be rearranged according to certain designs and programs (Ibid.: 41-46). For Stehr, the economy of a knowledge society is largely driven not by material inputs, but by symbolic or knowledge-based inputs (Ibid.: 67), there would be a large number of professions that involve working with knowledge, and a declining number of jobs that demand low cognitive skills as well as in manufacturing (Stehr 2002a).

Also Alvin Toffler argues that knowledge is the central resource in the economy of the information society: "In a Third Wave economy, the central resource – a single word broadly encompassing data, information, images, symbols, culture, ideology, and values – is actionable knowledge" (Dyson/Gilder/Keyworth/Toffler 1994).

At the end of the twentieth century, the concept of the network society gained importance in information society theory. For Manuel Castells, network logic is besides information, pervasiveness, flexibility, and convergence a central feature of the information technology paradigm (2000a: 69ff). "One of the key features of informational society is the networking logic of its basic structure, which explains the use of the concept of 'network society'" (Castells 2000: 21). "As an historical trend, dominant functions and processes in the Information Age are increasingly organized around networks. Networks constitute the new social morphology of our societies, and the diffusion of networking logic substantially modifies the operation and outcomes in processes of production, experience, power, and culture" (Castells 2000: 500). For Castells the network society is the result of informationalism, a new technological paradigm.

Jan Van Dijk (2006) defines the network society as a "social formation with an infrastructure of social and media networks enabling its prime mode of organization at all levels (individual, group/organizational and societal). Increasingly, these networks link all units or parts of this formation (individuals, groups and organizations)" (Van Dijk 2006: 20). For Van Dijk networks have become the nervous system of society, whereas Castells links the concept of the network society to capitalist transformation, Van Dijk sees it as the logical result of the increasing widening and thickening of networks in nature and society. Darin Barney uses the term for characterizing societies that exhibit two fundamental characteristics: "The first is the presence in those societies of sophisticated – almost exclusively digital – technologies of networked communication and information management/distribution, technologies which form the basic infrastructure mediating an increasing array of social, political and economic practices. (…) The second, arguably more intriguing, characteristic of network societies is the reproduction and institutionalization throughout (and between) those societies of networks as the basic form of human organization and relationship across a wide range of social, political and economic configurations and associations".[26]

Critiques
The major critique of concepts such as information society, postmodern society, knowledge society, network society, postindustrial society, etc. that has mainly been voiced by critical scholars is that they create the impression that we have entered a completely new type of society. "If there is just more information then it is hard to understand why anyone should suggest that we have before us something radically new" (Webster 2002a: 259). Critics such as Frank Webster argue that these approaches stress discontinuity, as if contemporary society had nothing in common with society as it was 100 or 150 years ago. Such assumptions would have ideological character because they would fit with the view that we can do nothing about change and have to adapt to existing political realities (kasiwulaya 2002b: 267).

These critics argue that contemporary society first of all is still a capitalist society oriented towards accumulating economic, political, and cultural capital. They acknowledge that information society theories stress some important new qualities of society (notably globalization and informatization), but charge that they fail to show that these are attributes of overall capitalist structures. Critics such as Webster insist on the continuities that characterise change. In this way Webster distinguishes between different epochs of capitalism: laissez-faire capitalism of the 19th century, corporate capitalism in the 20th century, and informational capitalism for the 21st century (kasiwulaya 2006).

For describing contemporary society based on a new dialectic of continuity and discontinuity, other critical scholars have suggested several terms like:

transnational network capitalism, transnational informational capitalism (Christian Fuchs 2008, 2007): "Computer networks are the technological foundation that has allowed the emergence of global network capitalism, that is, regimes of accumulation, regulation, and discipline that are helping to increasingly base the accumulation of economic, political, and cultural capital on transnational network organizations that make use of cyberspace and other new technologies for global coordination and communication. [...] The need to find new strategies for executing corporate and political domination has resulted in a restructuration of capitalism that is characterized by the emergence of transnational, networked spaces in the economic, political, and cultural system and has been mediated by cyberspace as a tool of global coordination and communication. Economic, political, and cultural space have been restructured; they have become more fluid and dynamic, have enlarged their borders to a transnational scale, and handle the inclusion and exclusion of nodes in flexible ways. These networks are complex due to the high number of nodes (individuals, enterprises, teams, political actors, etc.) that can be involved and the high speed at which a high number of resources is produced and transported within them. But global network capitalism is based on structural inequalities; it is made up of segmented spaces in which central hubs (transnational corporations, certain political actors, regions, countries, Western lifestyles, and worldviews) centralize the production, control, and flows of economic, political, and cultural capital (property, power, definition capacities). This segmentation is an expression of the overall competitive character of contemporary society." (Fuchs 2008: 110+119).
digital capitalism (Schiller 2000, cf. also Peter Glotz):[27] "networks are directly generalizing the social and cultural range of the capitalist economy as never before" (Schiller 2000: xiv)
virtual capitalism: the "combination of marketing and the new information technology will enable certain firms to obtain higher profit margins and larger market shares, and will thereby promote greater concentration and centralization of capital" (Dawson/John Bellamy Foster 1998: 63sq),
high-tech capitalism[28] or informatic capitalism (Fitzpatrick 2002) – to focus on the computer as a guiding technology that has transformed the productive forces of capitalism and has enabled a globalized economy.
Other scholars prefer to speak of information capitalism (Morris-Suzuki 1997) or informational capitalism (Manuel Castells 2000, Christian Fuchs 2005, Schmiede 2006a, b). Manuel Castells sees informationalism as a new technological paradigm (he speaks of a mode of development) characterized by "information generation, processing, and transmission" that have become "the fundamental sources of productivity and power" (Castells 2000: 21). The "most decisive historical factor accelerating, channelling and shaping the information technology paradigm, and inducing its associated social forms, was/is the process of capitalist restructuring undertaken since the 1980s, so that the new techno-economic system can be adequately characterized as informational capitalism" (Castells 2000: 18). Castells has added to theories of the information society the idea that in contemporary society dominant functions and processes are increasingly organized around networks that constitute the new social morphology of society (Castells 2000: 500). Nicholas Garnham[29] is critical of Castells and argues that the latter's account is technologically determinist because Castells points out that his approach is based on a dialectic of technology and society in which technology embodies society and society uses technology (Castells 2000: 5sqq). But Castells also makes clear that the rise of a new "mode of development" is shaped by capitalist production, i.e. by society, which implies that technology isn't the only driving force of society.

Antonio Negri and Michael Hardt argue that contemporary society is an Empire that is characterized by a singular global logic of capitalist domination that is based on immaterial labour. With the concept of immaterial labour Negri and Hardt introduce ideas of information society discourse into their Marxist account of contemporary capitalism. Immaterial labour would be labour "that creates immaterial products, such as knowledge, information, communication, a relationship, or an emotional response" (Hardt/Negri 2005: 108; cf. also 2000: 280-303), or services, cultural products, knowledge (Hardt/Negri 2000: 290). There would be two forms: intellectual labour that produces ideas, symbols, codes, texts, linguistic figures, images, etc.; and affective labour that produces and manipulates affects such as a feeling of ease, well-being, satisfaction, excitement, passion, joy, sadness, etc. (Ibid.).

Overall, neo-Marxist accounts of the information society have in common that they stress that knowledge, information technologies, and computer networks have played a role in the restructuration and globalization of capitalism and the emergence of a flexible regime of accumulation (David Harvey 1989). They warn that new technologies are embedded into societal antagonisms that cause structural unemployment, rising poverty, social exclusion, the deregulation of the welfare state and of labour rights, the lowering of wages, welfare, etc.

Concepts such as knowledge society, information society, network society, informational capitalism, postindustrial society, transnational network capitalism, postmodern society, etc. show that there is a vivid discussion in contemporary sociology on the character of contemporary society and the role that technologies, information, communication, and co-operation play in it.[citation needed] Information society theory discusses the role of information and information technology in society, the question which key concepts shall be used for characterizing contemporary society, and how to define such concepts. It has become a specific branch of contemporary sociology.

Second and third nature
Question book-new.svg
This section relies largely or entirely upon a single source. Relevant discussion may be found on the talk page. Please help improve this article by introducing citations to additional sources.
Find sources: "Information society" – news · newspapers · books · scholar · JSTOR (August 2017) (Learn how and when to remove this template message)
Information society is the means of sending and receiving information from one place to another.[30] As technology has advanced so too has the way people have adapted in sharing information with each other.

"Second nature" refers a group of experiences that get made over by culture.[31] They then get remade into something else that can then take on a new meaning. As a society we transform this process so it becomes something natural to us, i.e. second nature. So, by following a particular pattern created by culture we are able to recognise how we use and move information in different ways. From sharing information via different time zones (such as talking online) to information ending up in a different location (sending a letter overseas) this has all become a habitual process that we as a society take for granted.[32]

However, through the process of sharing information vectors have enabled us to spread information even further. Through the use of these vectors information is able to move and then separate from the initial things that enabled them to move.[33] From here, something called "third nature" has developed. An extension of second nature, third nature is in control of second nature. It expands on what second nature is limited by. It has the ability to mould information in new and different ways. So, third nature is able to ‘speed up, proliferate, divide, mutate, and beam in on us from else where.[34] It aims to create a balance between the boundaries of space and time (see second nature). This can be seen through the telegraph, it was the first successful technology that could send and receive information faster than a human being could move an object.[35] As a result different vectors of people have the ability to not only shape culture but create new possibilities that will ultimately shape society.

Therefore, through the use of second nature and third nature society is able to use and explore new vectors of possibility where information can be moulded to create new forms of interaction.[36]

Sociological uses

Estonia, a small Baltic country in northern Europe, is one of the most advanced digital societies.[37]
In sociology, informational society refers to a post-modern type of society. Theoreticians like Ulrich Beck, Anthony Giddens and Manuel Castells argue that since the 1970s a transformation from industrial society to informational society has happened on a global scale.[38]

As steam power was the technology standing behind industrial society, so information technology is seen as the catalyst for the changes in work organisation, societal structure and politics occurring in the late 20th century.

In the book Future Shock, Alvin Toffler used the phrase super-industrial society to describe this type of society. Other writers and thinkers have used terms like "post-industrial society" and "post-modern industrial society" with a similar meaning.

Related terms
A number of terms in current use emphasize related but different aspects of the emerging global economic order. The Information Society intends to be the most encompassing in that an economy is a subset of a society. The Information Age is somewhat limiting, in that it refers to a 30-year period between the widespread use of computers and the knowledge economy, rather than an emerging economic order. The knowledge era is about the nature of the content, not the socioeconomic processes by which it will be traded. The computer revolution, and knowledge revolution refer to specific revolutionary transitions, rather than the end state towards which we are evolving. The Information Revolution relates with the well known terms agricultural revolution and industrial revolution.

The information economy and the knowledge economy emphasize the content or intellectual property that is being traded through an information market or knowledge market, respectively. Electronic commerce and electronic business emphasize the nature of transactions and running a business, respectively, using the Internet and World-Wide Web. The digital economy focuses on trading bits in cyberspace rather than atoms in physical space. The network economy stresses that businesses will work collectively in webs or as part of business ecosystems rather than as stand-alone units. Social networking refers to the process of collaboration on massive, global scales. The internet economy focuses on the nature of markets that are enabled by the Internet.
Knowledge services and knowledge value put content into an economic context. Knowledge services integrates Knowledge management, within a Knowledge organization, that trades in a Knowledge market. In order for individuals to receive more knowledge, surveillance is used. This relates to the use of Drones as a tool in order to gather knowledge on other individuals. Although seemingly synonymous, each term conveys more than nuances or slightly different views of the same thing. Each term represents one attribute of the likely nature of economic activity in the emerging post-industrial society. Alternatively, the new economic order will incorporate all of the above plus other attributes that have not yet fully emerged.
In connection with the development of the information society, information pollution appeared, which in turn evolved information ecology – associated with information hygiene.[39]
Intellectual property considerations
One of the central paradoxes of the information society is that it makes information easily reproducible, leading to a variety of freedom/control problems relating to intellectual property. Essentially, business and capital, whose place becomes that of producing and selling information and knowledge, seems to require control over this new resource so that it can effectively be managed and sold as the basis of the information economy. However, such control can prove to be both technically and socially problematic. Technically because copy protection is often easily circumvented and socially rejected because the users and citizens of the information society can prove to be unwilling to accept such absolute commodification of the facts and information that compose their environment.

Responses to this concern range from the Digital Millennium Copyright Act in the United States (and similar legislation elsewhere) which make copy protection (see DRM) circumvention illegal, to the free software, open source and copyleft movements, which seek to encourage and disseminate the "freedom" of various information products (traditionally both as in "gratis" or free of cost, and liberty, as in freedom to use, explore and share).

Caveat: Information society is often used by politicians meaning something like "we all do internet now"; the sociological term information society (or informational society) has some deeper implications about change of societal structure. Because we lack political control of intellectual property, we are lacking in a concrete map of issues, an analysis of costs and benefits, and functioning political groups that are unified by common interests representing different opinions of this diverse situation that are prominent in the information society.[40]

See also
Cyberspace
Digitization
Digital transformation
Digital dark age
Digital addict
Digital phobic
Information culture
Information history
Information industry
Information revolution
Internet culture
Network society
Noogenesis
Simon Buckingham and unorganisation
Surveillance capitalism
The Information Society (journal)
World Summit on the Information Society (WSIS)
Yoneji Masuda







The Netocracy and the Consumtariat
https://www.ebbemunk.dk/misc/bard.html
The Netocracy and the Consumtariat
Speech by Alexander Bard, musician and sociologist, Billingehus, Skövde, Sweden, 16 September 2000. Alexander Bard is author of the Internet sociology book best-seller "Netocracy". The question of the book is: "Where do the interactive media fit in?"

Links to this page: History of Speech – History of Writing – History of Printing – History of Interactive Media

Alexander Bard	Alexander Bard in Skövde
History of Speech
Mankind started talking 100,000 or 140,000 years ago. An advantage of language is, that it controls morals, so we stopped fucking all of the time, giving better and more controlled people.

History of Writing
Mankind started writing in Mesopotamia 11,000 years ago. Why in Mesopotamia, and not in China nor in Mexico? Because Mesopotamia was a very rich country with perfect conditions, lot of cattle, pigs, chicken, wheat, etc. The newly created villages needed rules and created the idea of property. Written language was used for laws, i.e. civilisation.

Only a few people could read and write. The written language and the need for a power ruling the society created the aristocracy ("I am better than you"). To manipulate other people you need a story telling "because somebody said so". This is the invention of God.

The monarch was created as the aristocrat of aristocrats. The monarch's role is to tell what is good for moral and the society. Ordinary people get the promise of a reward after death. In all societies you will always find a story of eternity.

History of Printing
The printing press was invented in China, but was taken into use in large scale in Europe around 1450, when the price of paper lowered. Suddenly there was a need for more people to know how to read. Now, there was a basis for building cities, and books told people how to live in cities.

This is a major paradigm shift, and it created the bourgeoisie and the working class. Again, the workers were told a story, and "Manhood" replaced "God".

The ability of reading created the feeling of individuality, because any person is reading and understanding by itself. Until 1750 we never thought of ourselves as individuals. The bible was the first book to be printed, but printing afterwards killed the religion.

The hand-written books were in Latin language. The printed books were in local languages as well, for example French (the winning dialect from the French area) and German (Luther's invention, a local dialect from Hannover).

Formerly, the educated people were placed in monasteries. Now, they are locked up in universities instead.

The books printed in local language were basis for the upcoming nationalism. Nationalism was introduced as the new religion, interpreted by the state. The new ideology is "progress". It is a new illusion, a way of controlling people.

There is no fundamental difference between radio, television and printed books – they are all one-way media.

History of Interactive Media
Since 1970 it has been possible to communicate with interactive media. Now attention is the scarcest resource, and capital is not the fundament anymore. Money is not the crucial power anymore, because you can't buy yourself into a network. Money is second-rated, and what is bought for money obtains a loss of credibility. This is a major power shift.

The society is divided between

The netocracy – those who are connected in interactive networks, and
The consumtariat – those who thinks that interactivity is selecting channels on a television
Individualism has been abandoned, and instead networking is in. The old identities are worthless, and the new identity will be defined in subcultures.

Who has got the power? Especially the curator, the one who sorts the information.
What is his reward? Dynamics.
What will be the next? We don't know. We'll be obsessed with dynamics.
In a democracy the majority rules and works. But it reigns a closed space, a nation state.

But the nation state has vanished. Will you die for Sweden? No – the nation state is dead. It means, that we have a plurachy where the minorities can walk out like it has always been in the plucratic culture in the United States. If a group did not like the others, they went west.

Maybe a network can convert into a company? Surely, a company can convert into a network.

Money is not important for the upper class anymore. You need money as you need food, but it is not the most wanted resource anymore.





Post-work society
https://en.wikipedia.org/wiki/Post-work_society
In futurology, political science, and science fiction, a post-work society is a society in which the nature of work has been radically transformed. Some post-work theorists imagine the complete automation of all jobs, or the complete automation of all boring and unpleasant work.[1] Other theories of post-work society focus more on challenging the priority of the work ethic, and on the celebration of nonwork activities. Near-term practical proposals closely associated with post-work theory include universal basic income and the reduction of the working day and the working week. Increase focus the details of what post-work society would look like has been driven by reports such as one that 47% of jobs in the United States have the potential to be automated.[2] Because of increasing automation and the low price of maintaining an automated workforce compare to one dependent on human labour it has also been suggested that post-work societies would also be ones of post-scarcity.[3]

See also
Automation
Post-scarcity
Refusal of work
Universal basic income 








Post-scarcity economy
https://en.wikipedia.org/wiki/Post-scarcity_economy
Post-scarcity is a theoretical economic situation in which most goods can be produced in great abundance with minimal human labor needed, so that they become available to all very cheaply or even freely.[1][2] Post-scarcity does not mean that scarcity has been eliminated for all goods and services, but that all people can easily have their basic survival needs met along with some significant proportion of their desires for goods and services.[3] Writers on the topic often emphasize that some commodities will remain scarce in a post-scarcity society.[4][5][6][7]

In the paper "The Post-Scarcity World of 2050–2075"[8] the authors assert that the current age is one of scarcity resulting from negligent behavior (as regards the future) of the 19th and 20th centuries. The period between 1975 and 2005 was characterized by relative abundance of resources (oil, water, energy, food, credit, among others) which boosted industrialization and development in the Western economies. An increased demand of resources combined with a rising population led to resource exhaustion.[8] In part, the ideas developed about post-scarcity are motivated by analyses that posit that capitalism leverages scarcity.

One of the main traces of the scarcity periods is the increase and fluctuation of prices. To deal with that situation, advances in technology come into play, driving an efficient use of resources to a certain extent that costs will be considerably reduced (almost everything will be free). Consequently, the authors claim that the period between 2050 and 2075 will be a post-scarcity age in which scarcity will no longer exist.[8]


Contents
1	Models
1.1	Speculative technology
1.2	Marxism
1.3	Post-Scarcity Anarchism
2	Fiction
3	See also
4	References
5	Further reading
Models
Speculative technology
Today, futurists who speak of "post-scarcity" suggest economies based on advances in automated manufacturing technologies,[4] often including the idea of self-replicating machines, the adoption of division of labour[9] which in theory could produce nearly all goods in abundance, given adequate raw materials and energy.

More speculative forms of nanotechnology such as molecular assemblers or nanofactories, which do not currently exist, raise the possibility of devices that can automatically manufacture any specified goods given the correct instructions and the necessary raw materials and energy,[10] and many nanotechnology enthusiasts have suggested it will usher in a post-scarcity world.[11][12]

In the more near-term future, the increasing automation of physical labor using robots is often discussed as means of creating a post-scarcity economy.[13][14]

Increasingly versatile forms of rapid prototyping machines, and a hypothetical self-replicating version of such a machine known as a RepRap, have also been predicted to help create the abundance of goods needed for a post-scarcity economy.[15] Advocates of self-replicating machines such as Adrian Bowyer, the creator of the RepRap project, argue that once a self-replicating machine is designed, then since anyone who owns one can make more copies to sell (and would also be free to ask for a lower price than other sellers), market competition will naturally drive the cost of such machines down to the bare minimum needed to make a profit,[16][17] in this case just above the cost of the physical materials and energy that must be fed into the machine as input, and the same should go for any other goods that the machine can build.

Even with fully automated production, limitations on the number of goods produced would arise from the availability of raw materials and energy, as well as ecological damage associated with manufacturing technologies.[4] Advocates of technological abundance often argue for more extensive use of renewable energy and greater recycling in order to prevent future drops in availability of energy and raw materials, and reduce ecological damage.[4] Solar energy in particular is often emphasized, as the cost of solar panels continues to drop[4] (and could drop far more with automated production by self-replicating machines), and advocates point out the total solar power striking the Earth's surface annually exceeds our civilization's current annual power usage by a factor of thousands.[18][19]

Advocates also sometimes argue that the energy and raw materials available could be greatly expanded by looking to resources beyond the Earth. For example, asteroid mining is sometimes discussed as a way of greatly reducing scarcity for many useful metals such as nickel.[20] While early asteroid mining might involve manned missions, advocates hope that eventually humanity could have automated mining done by self-replicating machines.[20][21] If this were done, then the only capital expenditure would be a single self-replicating unit (whether robotic or nanotechnological), after which the number of units could replicate at no further cost, limited only by the available raw materials needed to build more.[21]

Marxism
Karl Marx, in a section of his Grundrisse that came to be known as the "Fragment on Machines",[22][23] argued that the transition to a post-capitalist society combined with advances in automation would allow for significant reductions in labor needed to produce necessary goods, eventually reaching a point where all people would have significant amounts of leisure time to pursue science, the arts, and creative activities; a state some commentators later labeled as "post-scarcity".[24] Marx argued that capitalism—the dynamic of economic growth based on capital accumulation—depends on exploiting the surplus labor of workers, but a post-capitalist society would allow for:

The free development of individualities, and hence not the reduction of necessary labour time so as to posit surplus labour, but rather the general reduction of the necessary labour of society to a minimum, which then corresponds to the artistic, scientific etc. development of the individuals in the time set free, and with the means created, for all of them.[25]

Marx's concept of a post-capitalist communist society involves the free distribution of goods made possible by the abundance provided by automation.[26] The fully developed communist economic system is postulated to develop from a preceding socialist system. Marx held the view that socialism—a system based on social ownership of the means of production—would enable progress toward the development of fully developed communism by further advancing productive technology. Under socialism, with its increasing levels of automation, an increasing proportion of goods would be distributed freely.[27]

Marx did not believe in the elimination of most physical labor through technological advancements alone in a capitalist society, because he believed capitalism contained within it certain tendencies which countered increasing automation and prevented it from developing beyond a limited point, so that manual industrial labor could not be eliminated until the overthrow of capitalism.[28] Some commentators on Marx have argued that at the time he wrote the Grundrisse, he thought that the collapse of capitalism due to advancing automation was inevitable despite these counter-tendencies, but that by the time of his major work Capital: Critique of Political Economy he had abandoned this view, and came to believe that capitalism could continually renew itself unless overthrown.[29][30][31]

Post-Scarcity Anarchism
Main article: Post-Scarcity Anarchism
Murray Bookchin, in his 1971 essay collection Post-Scarcity Anarchism, outlines an economy based on social ecology, libertarian municipalism, and an abundance of fundamental resources, arguing that post-industrial societies have the potential to be developed into post-scarcity societies. For Bookchin, such development would enable "the fulfillment of the social and cultural potentialities latent in a technology of abundance".[32]

Bookchin claims that the expanded production made possible by the technological advances of the twentieth century were in the pursuit of market profit and at the expense of the needs of humans and of ecological sustainability. The accumulation of capital can no longer be considered a prerequisite for liberation, and the notion that obstructions such as the state, social hierarchy, and vanguard political parties are necessary in the struggle for freedom of the working classes can be dispelled as a myth.[33]

Fiction

This section is in list format, but may read better as prose. You can help by converting this section, if appropriate. Editing help is available. (September 2020)
The Mars trilogy by Kim Stanley Robinson. Over three novels, Robinson charts the terraforming of Mars as a human colony and the establishment of a post-scarcity society.[34]
The Culture novels by Iain M. Banks are centered on a post-scarcity economy[34][35][36] where technology is advanced to such a degree that all production is automated,[37] and there is no use for money or property (aside from personal possessions with sentimental value).[38] People in the Culture are free to pursue their own interests in an open and socially-permissive society. The society has been described by some commentators as "communist-bloc"[39] or "anarcho-communist".[40] Banks' close friend and fellow science fiction writer Ken MacLeod has said that The Culture can be seen as a realization of Marx's communism, but adds that "however friendly he was to the radical left, Iain had little interest in relating the long-range possibility of utopia to radical politics in the here and now. As he saw it, what mattered was to keep the utopian possibility open by continuing technological progress, especially space development, and in the meantime to support whatever policies and politics in the real world were rational and humane."[41]
The Rapture of the Nerds by Cory Doctorow and Charles Stross takes place in a post-scarcity society and involves "disruptive" technology.[34] The title is a derogatory term for the technological singularity coined by SF author Ken MacLeod.
Con Blomberg's 1959 short story "Sales Talk" depicts a post-scarcity society in which society incentivizes consumption to reduce the burden of overproduction. To further reduce production, virtual reality is used to fulfill peoples' needs to create.[42]
The 24th-century human society of Star Trek: The Next Generation and Star Trek: Deep Space Nine has been labeled a post-scarcity society due to the ability of the fictional "replicator" technology to synthesize a wide variety of goods nearly instantaneously,[43] along with dialogue such as Captain Picard's statement in the film Star Trek: First Contact that "The acquisition of wealth is no longer the driving force of our lives. We work to better ourselves and the rest of humanity."[44] By the 22nd century, money had been rendered obsolete on Earth.
Cory Doctorow's novel Walkaway presents a modern take on the idea of post-scarcity. With the advent of 3D printing – and especially the ability to use these to fabricate even better fabricators – and with machines that can search for and reprocess waste or discarded materials, the protagonists no longer have need of regular society for the basic essentials of life, such as food, clothing and shelter.[45][46]
See also
Commons-based peer production
Communist society
Economic problem
Futurology
Jacque Fresco
Imagination age
Information society
Knowledge economy
Post-capitalism
Post-work society
Scarcity
Technological utopianism
Universal basic income
References
 Sadler, Philip (2010), Sustainable Growth in a Post-Scarcity World: Consumption, Demand, and the Poverty Penalty, Surrey, England: Gower Applied Business Research, p. 7, ISBN 978-0-566-09158-2
 Robert Chernomas. (1984). "Keynes on Post-Scarcity Society." In: Journal of Economic Issues, 18(4).
 Burnham, Karen (22 June 2015), Space: A Playground for Postcapitalist Posthumans, Strange Horizons, archived from the original on 14 November 2015, retrieved 14 November 2015, By post-scarcity economics, we're generally talking about a system where all the resources necessary to fulfill the basic needs (and a good chunk of the desires) of the population are available.
 Frase, Peter (Winter 2012), Four Futures, Jacobin, archived from the original on 13 November 2015
 Sadler, Philip (2010), Sustainable Growth in a Post-Scarcity World: Consumption, Demand, and the Poverty Penalty, Surrey, England: Gower Applied Business Research, p. 57, ISBN 978-0-566-09158-2
 Das, Abhimanyu; Anders, Charlie Jane (30 September 2014), Post-Scarcity Societies (That Still Have Scarcity), io9, archived from the original on 14 November 2015, retrieved 14 November 2015
 (Drexler 1986), See the first paragraph of the section "The Positive-Sum Society" in Chapter 6.
 Aguilar-Millan, Stephen; Feeney, Ann; Oberg, Amy; Rudd, Elizabeth. "The Post-Scarcity World of 2050–2075" (PDF).
 (Paters, Marginson & Murphy 2009), pp. 11
 (Drexler 1986)
 Sparrow, Rob (2007), "Negotiating the nanodivides", in Hodge, Graeme A.; Bowman, Diana; Ludlow, Karinne (eds.), New Global Frontiers in Regulation: The Age of Nanotechnology, Cheltenham, England: Edward Elgar Publishing Limited, p. 98, ISBN 978-1-84720-518-6
 Barfield, Thomas (2 September 2010), Get ready for a world of nanotechnology, Guardian US, archived from the original on 11 November 2015, retrieved 12 December 2016
 Wohlsen, Marcus (8 August 2014), "When Robots Take All the Work, What'll Be Left for Us to Do?", Wired, archived from the original on 10 November 2015, retrieved 11 March 2017
 Merchant, Brian (18 March 2015), Fully automated luxury communism, Guardian US, archived from the original on 10 November 2015, retrieved 12 December 2016
 (Paters, Marginson & Murphy 2009), pp. 75–76
 Gordon, Stephen; Bowyer, Adrian (22 April 2005). "An Interview With Dr. Adrian Bowyer". Archived from the original on 11 November 2015. Retrieved 11 November 2015.
 Biever, Celeste (18 March 2005), 3D printer to churn out copies of itself, New Scientist, archived from the original on 11 November 2015
 Diamandis, Peter H. (2012), Abundance: The Future is Better Than You Think, New York, New York: Free Press, p. 6, ISBN 978-1-4516-1421-3
 (Drexler 1986). See the section "The Limits to Resources" in Chapter 10.
 Thomson, Iain (24 January 2013), Asteroid mining and a post-scarcity economy, The Register, archived from the original on 16 November 2015, retrieved 8 September 2017
 (Drexler 1986), See the section "Abundance" in Chapter 6.
 Barbour, Charles (2012). The Marx Machine: Politics, Polemics, Ideology. Lexington Books. p. 118. ISBN 978-0-7391-1046-1.
 The section known as the "Fragment on Machines" can be read online here.
 Jessop, Bob; Wheatley, Russell (1999). Karl Marx's Social and Political Thought, Volume 8. Routledge. p. 9. ISBN 0-415-19330-3. Marx in the Grundrisse speaks of a time when systematic automation will be developed to the point where direct human labor power will be a source of wealth. The preconditions will be created by capitalism itself. It will be an age of true mastery of nature, a post-scarcity age, when men can turn from alienating and dehumanizing labor to the free use of leisure in the pursuit of the sciences and arts.
 (Marx 1973), pp. 706
 (Wood 1996), pp. 248–249. "Affluence and increased provision of free goods would reduce alienation in the work process and, in combination with (1), the alienation of man's 'species-life'. Greater leisure would create opportunities for creative and artistic activity outside of work."
 (Wood 1996), pp. 248. "In particular, this economy would possess (1) social ownership and control of industry by the 'associated producers' and (2) a sufficiently high level of economic development to enable substantial progress toward 'full communism' and thereby some combination of the following: super affluence; distribution of an increasing proportion of commodities as if they were free goods; an increase in the proportion of collective goods..."
 (Marx 1973), pp. 51–52.
 Tomba, Massimiliano (2013). Marx's Temporalities. Koninklijke Brill NV. p. 76. ISBN 978-90-04-23678-3.
 Bellofiore, Riccardo; Starosta, Guido; Thomas, Peter D. (2013). In Marx's Laboratory: Critical Interpretations of the Grundrisse. Koninklijke Brill NV. p. 9. ISBN 978-90-04-23676-9.
 Easterling, Stuart (November–December 2003). "Marx's theory of economic crisis". International Socialist Review (32). Archived from the original on 11 November 2015. Retrieved 11 November 2015.
 Call, Lewis (2002). Postmodern Anarchism. Lexington: Lexington Books. ISBN 0-7391-0522-1.
 "Post-Scarcity Anarchism". AK Press. Retrieved 1 August 2016.
 Walter, Damien (11 October 2012), Dear Ed Miliband … seek your future in post-scarcity SF, Guardian US, archived from the original on 14 November 2015
 Banks, Iain M. (1987). Consider Phlebas. Orbit. ISBN 978-0316005388. He could not believe the ordinary people in the Culture really wanted the war, no matter how they had voted. They had their communist Utopia. They were soft and pampered and indulged, and the Contact section's evangelical materialism provided their consciencesalving good works. What more could they want?
 Parsons, Michael; Banks, Iain M. (16 November 2012), Interview: Iain M Banks talks 'The Hydrogen Sonata' with Wired.co.uk, Wired UK, archived from the original on 14 November 2015, It is my vision of what you do when you are in that post-scarcity society, you can completely indulge myself. The Culture has no unemployment problem, no one has to work, so all work is a form of play.
 Banks, Iain M. "A Few Notes on the Culture". Archived from the original on 22 March 2012. Retrieved 23 November 2015. Link is to an archived copy of the site that Banks linked to on his own website.
 Roberts, Jude; Banks, Iain M. (3 November 2014), A Few Questions About the Culture: An Interview with Iain Banks, Strange Horizons, archived from the original on 23 November 2015, retrieved 23 November 2015, This is not say that Libertarianism can't represent a progressive force, in the right circumstances, and I don't doubt there will be significant areas where I would agree with Libertarianism. But, really; which bit of not having private property, and the absence of money in the Culture novels, have these people missed?
 Cramer & Hartwell, Kathryn & David G. (10 July 2007). The Space Opera Renaissance. Orb Books. p. 298. ISBN 978-0765306180. Iain M. Banks and his brother-in-arms, Ken MacLeod, both take a Marxist line: Banks with his communist-bloc 'Culture' novels, and MacLeod with his 'hard-left libertarian' factions.
 Poole, Steven (8 February 2008), "Culture clashes", The Guardian, archived from the original on 23 November 2015
 Liptak, Andrew (19 December 2014), Iain M. Banks' Culture Novels, Kirkus Reviews, archived from the original on 23 November 2015
 Blomberg (1959).
 Fung, Brian; Peterson, Andrea; Tsukayama, Hayley; Saadia, Manu; Salmon, Felix (7 July 2015), "What the economics of Star Trek can teach us about the real world", The Washington Post, archived from the original on 16 November 2015, retrieved 8 September 2017
 Baxter, Stephen (2007), "The Cold Equations: Extraterrestrial Liberty in Science Fiction", in Cockell, Charles S. (ed.), The Meaning of Liberty Beyond Earth, Springer Publishing, p. 26, ISBN 978-3-319-09566-0
 Gallagher, Sean (25 April 2017). "Cory Doctorow's Walkaway: Hardware hackers face the climate apocalypse". Ars Technica. Condé Nast. Archived from the original on 27 May 2017. Retrieved 27 May 2017.
 Doctorow, Cory (2017). Walkaway. Head of Zeus. ISBN 978-0-7653-9276-3.
Drexler, Eric K. (1986). Engines of Creation (full text online). Anchor Books, see also Engines of Creation
Marx, Karl (1973). Grundrisse: Foundations of the Critique of Political Economy (Rough Draft). Translated by Nicolaus, Martin. Penguin Books. ISBN 0-14-044575-7, Foreword by Martin Nicolaus.
Paters, Michael A.; Marginson, Simon; Murphy, Peter (2009). Creativity and the Global Knowledge Economy. New York: Peter Lang Publishing, Inc. ISBN 978-1-4331-0425-1.
Wood, John Cunningham (1996). Karl Marx's Economics: Critical Assessments I. Routledge. ISBN 978-0415087148.
Blomberg, Con (December 1959). "Sales Talk". Galaxy. Vol. 18 no. 2. pp. 48-59. Retrieved 15 June 2014.
Further reading
Listen to this article (18 minutes)
MENU0:00
Spoken Wikipedia icon
This audio file was created from a revision of this article dated 3 November 2018, and does not reflect subsequent edits.
(Audio help · More spoken articles)
Abundance: The Future Is Better Than You Think by Peter Diamandis
Bright Future: Abundance and Progress in the 21st Century by David McMullen
Books by Martin Ford (author)
The New Human Rights Movement: Reinventing the Economy to End Oppression by Peter Joseph
Peoples' Capitalism: The Economics of the Robot Revolution by James Albus
Post-Scarcity Anarchism by Murray Bookchin
Trekonomics: The Economics of Star Trek by Manu Saadia
The Zeitgeist Movement Defined: Realizing a New Train of Thought by Peter Joseph and TZM members
Zero Marginal Cost Society by Jeremy Rifkin
Fully Automated Luxury Communism by Aaron Bastani
The Best That Money Can't Buy by Jacque Fresco 










Art manifesto
https://en.wikipedia.org/wiki/Art_manifesto#Concept
An art manifesto is a public declaration of the intentions, motives, or views of an artist or artistic movement. Manifestos are a standard feature of the various movements in the modernist avant-garde and are still written today. Art manifestos are sometimes in their rhetoric intended for shock value, to achieve a revolutionary effect. They often address wider issues, such as the political system. Typical themes are the need for revolution, freedom (of expression) and the implied or overtly stated superiority of the writers over the status quo.[citation needed] The manifesto gives a means of expressing, publicising and recording ideas for the artist or art group—even if only one or two people write the words, it is mostly still attributed to the group name.

In 1855 Gustave Courbet wrote a Realist manifesto for the introduction to the catalogue of his independent, personal exhibition. And in 1886 the Symbolist Manifesto was published in the French newspaper Le Figaro by the poet and essayist Jean Moréas.

The first art manifesto of the 20th century was introduced with the Futurists in Italy in 1909,[1] followed by the Cubists, Vorticists, Dadaists and the Surrealists: the period up to World War II created what are still the best known manifestos. Although they never stopped being issued, other media such as the growth of broadcasting tended to sideline such declarations. Due to the internet there has been a resurgence of the form, and many new manifestos are now appearing to a potential worldwide audience. The Stuckists have made particular use of this to start a worldwide movement of affiliated groups.

Manifestos typically consist of a number of statements, which are numbered or in bullet points and which do not necessarily follow logically from one to the next. Tristan Tzara's explanation of the manifesto (Feeble Love & Bitter Love, II) captures the spirit of many:

A manifesto is a communication made to the whole world, whose only pretension is to the discovery of an instant cure for political, astronomical, artistic, parliamentary, agronomical and literary syphilis. It may be pleasant, and good-natured, it's always right, it's strong, vigorous and logical. Apropos of logic, I consider myself very likeable.







Refusal of work
https://en.wikipedia.org/wiki/Refusal_of_work
Refusal of work is behavior in which a person refuses regular employment.[1]

As actual behavior, with or without a political or philosophical program, it has been practiced by various subcultures and individuals. Radical political positions have openly advocated refusal of work. From within Marxism it has been advocated by Paul Lafargue and the Italian workerist/autonomists (e.g. Antonio Negri, Mario Tronti),[1] the French ultra-left (e.g. Échanges et Mouvement); and within anarchism (especially Bob Black and the post-left anarchy tendency).[2]


Contents
1	Abolition of unfree labour
2	Concerns over wage slavery
3	Political views
3.1	Marxism
3.1.1	Paul Lafargue and The Right to be Lazy
3.1.2	Situationist International
3.1.3	Autonomism
3.1.4	André Gorz
3.2	Anarchism
3.2.1	The Abolition of Work
4	Anti-work
4.1	The Idler
5	Refusal of work in practice
5.1	"Slackers"
5.2	NEET
5.3	"Freeters" and parasite singles
5.4	Vagrancy
5.4.1	Cynic philosophical school
5.4.2	"Hobos", "tramps", and "bums"
5.4.3	"Gutter punks"
5.4.4	"Work-shy"
6	See also
7	References
8	External links
Abolition of unfree labour
International human rights law does not recognize the refusal of work or right not to work by itself except the right to strike. However the Abolition of Forced Labour Convention adopted by International Labour Organization in 1957 prohibits all forms of forced labour.[3]

Concerns over wage slavery
Main article: Wage slavery
Wage slavery refers to a situation where a person's livelihood depends on wages, especially when the dependence is total and immediate.[4][5] It is a negatively connoted term used to draw an analogy between slavery and wage labor, and to highlight similarities between owning and employing a person. The term 'wage slavery' has been used to criticize economic exploitation and social stratification, with the former seen primarily as unequal bargaining power between labor and capital (particularly when workers are paid comparatively low wages, e.g. in sweatshops),[6] and the latter as a lack of workers' self-management.[7][8][9] The criticism of social stratification covers a wider range of employment choices bound by the pressures of a hierarchical social environment (i.e. working for a wage not only under threat of starvation or poverty, but also of social stigma or status diminution).[10][11][12]

Similarities between wage labor and slavery were noted at least as early as Cicero.[13] Before the American Civil War, Southern defenders of African American slavery invoked the concept to favorably compare the condition of their slaves to workers in the North.[14][15] With the advent of the industrial revolution, thinkers such as Proudhon and Marx elaborated the comparison between wage labor and slavery in the context of a critique of property not intended for active personal use.[16][17]

The introduction of wage labor in 18th century Britain was met with resistance – giving rise to the principles of syndicalism.[18][19][20][21] Historically, some labor organizations and individual social activists, have espoused workers' self-management or worker cooperatives as possible alternatives to wage labor.[8][20]

Political views
Marxism

Paul Lafargue author of antiwork book The Right to Be Lazy
Paul Lafargue and The Right to be Lazy
The Right to be Lazy is an essay by Cuban-born French revolutionary Marxist Paul Lafargue, written from his London exile in 1880. The essay polemicizes heavily against then-contemporary liberal, conservative, Christian and even socialist ideas of work. Lafargue criticizes these ideas from a Marxist perspective as dogmatic and ultimately false by portraying the degeneration and enslavement of human existence when being subsumed under the primacy of the "right to work", and argues that laziness, combined with human creativity, is an important source of human progress.

He manifests that "When, in our civilized Europe, we would find a trace of the native beauty of man, we must go seek it in the nations where economic prejudices have not yet uprooted the hatred of work ... The Greeks in their era of greatness had only contempt for work: their slaves alone were permitted to labor: the free man knew only exercises for the body and mind ... The philosophers of antiquity taught contempt for work, that degradation of the free man, the poets sang of idleness, that gift from the Gods."[22] And so he says "Proletarians, brutalized by the dogma of work, listen to the voice of these philosophers, which has been concealed from you with jealous care: A citizen who gives his labor for money degrades himself to the rank of slaves." (The last sentence paraphrasing Cicero.[13])

Situationist International
Raoul Vaneigem, important theorist of the post-surrealist Situationist International which was influential in the May 68 events in France, wrote The Book of Pleasures. In it he says that "You reverse the perspective of power by returning to pleasure the energies stolen by work and constraint ... As sure as work kills pleasure, pleasure kills work. If you are not resigned to dying of disgust, then you will be happy enough to rid your life of the odious need to work, to give orders (and obey them), to lose and to win, to keep up appearances, and to judge and be judged."[23]

Autonomism
Main article: Autonomism
Part of a series on
Libertarian socialism
Anarchist flag.svg
Political concepts
Economics
People
Philosophies and tendencies
Significant events
Related topics
BlackFlagSymbol.svg Anarchism portal
Red flag II.svg Socialism portal
A coloured voting box.svg Politics portal
vte
Autonomist philosopher Bifo defines refusal of work as not "so much the obvious fact that workers do not like to be exploited, but something more. It means that the capitalist restructuring, the technological change, and the general transformation of social institutions are produced by the daily action of withdrawal from exploitation, of rejection of the obligation to produce surplus value, and to increase the value of capital, reducing the value of life."[1] More simply he states "Refusal of work means ... I don't want to go to work because I prefer to sleep. But this laziness is the source of intelligence, of technology, of progress. Autonomy is the self-regulation of the social body in its independence and in its interaction with the disciplinary norm."[1]

As a social development Bifo remembers "that one of the strong ideas of the movement of autonomy proletarians during the 70s was the idea "precariousness is good". Job precariousness is a form of autonomy from steady regular work, lasting an entire life. In the 1970s many people used to work for a few months, then to go away for a journey, then back to work for a while. This was possible in times of almost full employment and in times of egalitarian culture. This situation allowed people to work in their own interest and not in the interest of capitalists, but quite obviously this could not last forever, and the neoliberal offensive of the 1980s was aimed to reverse the rapport de force."[1] As a response to these developments his view is that "the dissemination of self-organized knowledge can create a social framework containing infinite autonomous and self-reliant worlds."[1]

From this possibility of self-determination even the notion of workers' self-management is seen as problematic since "Far from the emergence of proletarian power, ... this self-management as a moment of the self-harnessing of the workers to capitalist production in the period of real subsumption ... Mistaking the individual capitalist (who, in real subsumption disappears into the collective body of share ownership on one side, and hired management on the other) rather than the enterprise as the problem, ... the workers themselves became a collective capitalist, taking on responsibility for the exploitation of their own labor. Thus, far from breaking with 'work', ... the workers maintained the practice of clocking-in, continued to organize themselves and the community around the needs of the factory, paid themselves from profits arising from the sale of watches, maintained determined relations between individual work done and wage, and continued to wear their work shirts throughout the process."[24]

André Gorz
André Gorz was an Austrian and French social philosopher. Also a journalist, he co-founded Le Nouvel Observateur weekly in 1964. A supporter of Jean-Paul Sartre's existentialist version of Marxism after World War Two, in the aftermath of the May '68 student riots, he became more concerned with political ecology. His central theme was wage labour issues such as liberation from work, the just distribution of work, social alienation, and a guaranteed basic income.[25] Among his works critical of work and the work ethic include Critique de la division du travail (Seuil, 1973. Collective work), Farewell to the Working Class (1980 – Galilée and Le Seuil, 1983, Adieux au Prolétariat), Critique of Economic Reason (Verso, 1989 first published 1988) and Reclaiming Work: Beyond the Wage-Based Society (1999).

Anarchism
The Abolition of Work
Part of the Politics series on
Anarchism
"Circle-A" anarchy symbol
Schools of thought
TheoryPractice
People
Issues
History
Culture
Economics
By region
Lists
Related topics
BlackFlagSymbol.svg Anarchism portal
A coloured voting box.svg Politics portal
vte
The Abolition of Work, Bob Black's most widely read essay, draws upon the ideas of Charles Fourier, William Morris, Herbert Marcuse, Paul Goodman, and Marshall Sahlins. In it he argues for the abolition of the producer- and consumer-based society, where, Black contends, all of life is devoted to the production and consumption of commodities. Attacking Marxist state socialism as much as market capitalism, Black argues that the only way for humans to be free is to reclaim their time from jobs and employment, instead turning necessary subsistence tasks into free play done voluntarily – an approach referred to as "ludic". The essay argues that "no-one should ever work", because work – defined as compulsory productive activity enforced by economic or political means – is the source of most of the misery in the world. Black denounces work for its compulsion, and for the forms it takes – as subordination to a boss, as a "job" which turns a potentially enjoyable task into a meaningless chore, for the degradation imposed by systems of work-discipline, and for the large number of work-related deaths and injuries – which Black typifies as "homicide". He views the subordination enacted in workplaces as "a mockery of freedom", and denounces as hypocrites the various theorists who support freedom while supporting work. Subordination in work, Black alleges, makes people stupid and creates fear of freedom. Because of work, people become accustomed to rigidity and regularity, and do not have the time for friendship or meaningful activity. Most workers, he states, are dissatisfied with work (as evidenced by petty deviance on the job), so that what he says should be uncontroversial; however, it is controversial only because people are too close to the work-system to see its flaws.


Bob Black, contemporary American anarchist associated with the post-left anarchy tendency
Play, in contrast, is not necessarily rule-governed, and is performed voluntarily, in complete freedom, as a gift economy. He points out that hunter-gatherer societies are typified by play, a view he backs up with the work of Marshall Sahlins; he recounts the rise of hierarchal societies, through which work is cumulatively imposed, so that the compulsive work of today would seem incomprehensibly oppressive even to ancients and medieval peasants. He responds to the view that "work," if not simply effort or energy, is necessary to get important but unpleasant tasks done, by claiming that first of all, most important tasks can be rendered ludic, or "salvaged" by being turned into game-like and craft-like activities, and secondly that the vast majority of work does not need doing at all. The latter tasks are unnecessary because they only serve functions of commerce and social control that exist only to maintain the work-system as a whole. As for what is left, he advocates Charles Fourier's approach of arranging activities so that people will want to do them. He is also skeptical but open-minded about the possibility of eliminating work through labor-saving technologies. He feels the left cannot go far enough in its critiques because of its attachment to building its power on the category of workers, which requires a valorization of work.

Anti-work

Bertrand Russell, writer of In Praise of Idleness and Other Essays
The anti-work ethic states that labor tends to cause unhappiness, therefore, the quantity of labor ought to be lessened, and/or that work should not be enforced by economic or political means. The ethic appeared in anarchist circles and have come to prominence with essays such as In Praise of Idleness and Other Essays by Bertrand Russell, The Right to Useful Unemployment by Ivan Illich, and The Abolition of Work by Bob Black,[26] published in 1985.

Friedrich Nietzsche was a notable philosopher who presented a critique of work and an anti-work ethic. In 1881, he wrote:

The eulogists of work. Behind the glorification of 'work' and the tireless talk of the 'blessings of work' I find the same thought as behind the praise of impersonal activity for the public benefit: the fear of everything individual. At bottom, one now feels when confronted with work – and what is invariably meant is relentless industry from early till late – that such work is the best police, that it keeps everybody in harness and powerfully obstructs the development of reason, of covetousness, of the desire for independence. For it uses up a tremendous amount of nervous energy and takes it away from reflection, brooding, dreaming, worry, love, and hatred; it always sets a small goal before one's eyes and permits easy and regular satisfactions. In that way a society in which the members continually work hard will have more security: and security is now adored as the supreme goddess..."

— Friedrich Nietzsche, The Dawn, p. 173
The American architect, designer and futurist Buckminster Fuller presented an argument that rejected the notion of it being a necessity for people to be in employment to earn a living, saying:

"We should do away with the absolutely specious notion that everybody has to earn a living. It is a fact today that one in ten thousand of us can make a technological breakthrough capable of supporting all the rest. The youth of today are absolutely right in recognizing this nonsense of earning a living. We keep inventing jobs because of this false idea that everybody has to be employed at some kind of drudgery because, according to Malthusian Darwinian theory he must justify his right to exist. So we have inspectors of inspectors and people making instruments for inspectors to inspect inspectors. The true business of people should be to go back to school and think about whatever it was they were thinking about before somebody came along and told them they had to earn a living."

— Richard Buckminster Fuller, [27]
The Idler
The Idler is a bi-monthly British magazine devoted to promoting its ethos of "idle living" and all that entails. It was founded in 1993 by Tom Hodgkinson and Gavin Pretor-Pinney with the intention of exploring alternative ways of working and living.[28]

As of 2021 the largest anti-work community on the internet is the r/antiwork page on Reddit with approximately 300,000 followers. [29]

Refusal of work in practice
"Slackers"
The term slacker is commonly used to refer to a person who avoids work (especially British English), or (primarily in North American English) an educated person who is viewed as an underachiever.[30][31]

While use of the term slacker dates back to about 1790 or 1898 depending on the source, it gained some recognition during the British Gezira Scheme, when Sudanese labourers protested their relative powerlessness by working lethargically, a form of protest known as 'slacking'.[32] The term achieved a boost in popularity after its use in the films Back to the Future and Slacker.[30][33]

NEET
NEET is an acronym for the government classification for people currently "Not in Employment, Education or Training". It was first used in the United Kingdom but its use has spread to other countries, including Japan, China, and South Korea.

In the United Kingdom, the classification comprises people aged between 16 and 24 (some 16-year-olds are still of compulsory school age). In Japan, the classification comprises people aged between 15 and 34 who are unemployed, unmarried, not enrolled in school or engaged in housework, and not seeking work or the technical training needed for work. The "NEET group" is not a uniform set of individuals but consists of those who will be NEET for a short time while essentially testing out a variety of opportunities and those who have major and often multiple issues and are at long term risk of remaining disengaged.

In Brazil, "nem-nem" (short of nem estudam nem trabalham (neither working nor studying) is a term with similar meaning.[34]

In Mexico and Spain, "Ni-Ni" (short of Ni estudia Ni trabaja) is also applied.

"Freeters" and parasite singles
Freeter (フリーター, furītā) (other spellings below) is a Japanese expression for people between the age of 15 and 34 who lack full-time employment or are unemployed, excluding homemakers and students. They may also be described as underemployed or freelance workers. These people do not start a career after high school or university but instead usually live as so-called parasite singles with their parents and earn some money with low skilled and low paid jobs.

The word freeter or freeta was first used around 1987 or 1988 and is thought to be an amalgamation of the English word free (or perhaps freelance) and the German word Arbeiter ("worker").[35]

Parasite single (パラサイトシングル, parasaito shinguru) is a Japanese term for a single person who lives with their parents until their late twenties or early thirties in order to enjoy a carefree and comfortable life. In English, the expression "sponge" or "basement dweller" may sometimes be used.

The expression is mainly used in reference to Japanese society, but similar phenomena can also be found in other countries worldwide. In Italy, 30-something singles still relying on their mothers are joked about, being called Bamboccioni (literally: grown-up babies) and in Germany they are known as Nesthocker (German for an altricial bird), who are still living at Hotel Mama [de].

Such behaviour is considered normal in Greece, both because of the traditional strong family ties and because of the low wages.[36]

Vagrancy
A vagrant is a person in a situation of poverty, who wanders from place to place without a home or regular employment or income. Many towns in the developed world have shelters for vagrants. Common terminology is a tramp or a 'gentleman of the road'.

Laws against vagrancy in the United States have partly been invalidated as violative of the due process clauses of the U.S. Constitution.[37] However, the FBI report on crime in the United States for 2005 lists 24,359 vagrancy violations.[38]

Cynic philosophical school

Diogenes of Sinope – depicted by Jean-Léon Gérôme
Cynicism (Greek: κυνισμός), in its original form, refers to the beliefs of an ancient school of Greek philosophers known as the Cynics (Greek: Κυνικοί, Latin: Cynici). Their philosophy was that the purpose of life was to live a life of Virtue in agreement with Nature. This meant rejecting all conventional desires for wealth, power, health, and fame, and by living a simple life free from all possessions. They believed that the world belonged equally to everyone, and that suffering was caused by false judgments of what was valuable and by the worthless customs and conventions which surrounded society.

The first philosopher to outline these themes was Antisthenes, who had been a pupil of Socrates in the late 5th century BCE. He was followed by Diogenes of Sinope, who lived in a tub on the streets of Athens. Diogenes took Cynicism to its logical extremes, and came to be seen as the archetypal Cynic philosopher. He was followed by Crates of Thebes who gave away a large fortune so he could live a life of Cynic poverty in Athens. Cynicism spread with the rise of Imperial Rome in the 1st century, and Cynics could be found begging and preaching throughout the cities of the Empire. It finally disappeared in the late 5th century, although many of its ascetic and rhetorical ideas were adopted by early Christianity. The name Cynic derives from the Greek word κυνικός, kynikos, "dog-like" and that from κύων, kyôn, "dog" (genitive: kynos).[39]

It seems certain that the word dog was also thrown at the first Cynics as an insult for their shameless rejection of conventional manners, and their decision to live on the streets. Diogenes, in particular, was referred to as the Dog.[40]

"Hobos", "tramps", and "bums"
A hobo is a migratory worker or homeless vagabond, often penniless.[41] The term originated in the western—probably northwestern—United States during the last decade of the 19th century.[42] Unlike tramps, who worked only when they were forced to, and bums, who did not work at all, hobos were workers who wandered.[42][43]

In British English and traditional American English usage, a tramp is a long term homeless person who travels from place to place as an itinerant vagrant, traditionally walking or hiking all year round.


Two hobos walking along railroad tracks, after being put off a train. One is carrying a bindle.
While some tramps may do odd jobs from time to time, unlike other temporarily homeless people they do not seek out regular work and support themselves by other means such as begging or scavenging. This is in contrast to:

bum, a stationary homeless person who does not work, and who begs or steals for a living in one place.
hobo, a homeless person who travels from place to place looking for work, often by "freighthopping", illegally catching rides on freight trains
Schnorrer, a Yiddish term for a person who travels from city to city begging.
Both terms, "tramp" and "hobo" (and the distinction between them), were in common use between the 1880s and the 1940s. Their populations and the usage of the terms increased during the Great Depression.

Like "hobo" and "bum," the word "tramp" is considered vulgar in American English usage, having been subsumed in more polite contexts by words such as "homeless person" or "vagrant." In colloquial American English, the word "tramp" can also mean a sexually promiscuous female or even prostitute.

Tramps used to be known euphemistically in England and Wales as "gentlemen of the road."

Tramp is derived from the Middle English as a verb meaning to "walk with heavy footsteps", and to go hiking.[44] Bart Kennedy, a self-described tramp of 1900 US, once said "I listen to the tramp, tramp of my feet, and wonder where I was going, and why I was going."[45]

"Gutter punks"
A gutter punk is a homeless or transient individual, often through means of freighthopping or hitchhiking. Gutter punks are often juveniles who are in some way associated with the anarcho-punk subculture.[46] In certain regions, gutter punks are notorious for panhandling and often display cardboard signs that make statements about their lifestyles.[46] Gutter punks are generally characterized as being voluntarily unemployed.[46]

"Work-shy"
See also: Aktion Arbeitsscheu Reich
In Nazi Germany, so-called "work-shy" individuals were rounded up and imprisoned in Nazi concentration camps as black triangle prisoners.[47][48]

See also
Automation
Counterculture
Decent work
"From each according to his ability, to each according to his need"
"He who does not work, neither shall he eat"
Money-rich, time-poor
Post-work society
Unfree labour
Universal basic income






 Digital divide
https://en.wikipedia.org/wiki/Digital_divide
The digital divide refers to the gap between those able to benefit from the digital age and those who are not.[1][2] The concern is that people without access to the Internet and other information and communication technologies will be disadvantaged, as they are unable or less able to obtain digital information, shop online, participate democratically, or learn skills and offer skills. This resulted in programs to give computers and related services to people without access.

Since the 1990s, a potent global movement, including a series of intergovernmental summit meetings, were conducted to "close the digital divide". Since then, this movement formulated solutions in public policy, technology design, finance and management that would allow all connected citizens to benefit equitably as a global digital economy spreads into the far corners of the world population.[3][4] Though originally coined to refer merely to the matter of access—who is connected to the Internet and isn't—the term digital-divide has evolved to focus on the division between those who benefit from Information and Communication Technology and those who do not.[5] Thus, the aim of “closing the digital divide” now refers to efforts to provide meaningful access to Internet infrastructures, applications and services. The matter of closing the digital divide nowadays includes the matter of how emergent technologies such as Artificial Intelligence (so-called AI4D[6]), robotics and Internet of things can help societies.[7] As it has become clear that the Internet can harm as well as help citizens, the focus of closing the digital divide had focused on the matter of how to generate "net benefit"[8] (optimal help minimal harm) as a result of the impact of a spreading digital economy.[9]

The divide between differing countries or regions of the world is referred to as the global digital divide,[10][11] examining this technological gap between developing and developed countries on an international scale.[12] The divide within countries (such as the digital divide in the United States) may refer to inequalities between individuals, households, businesses, or geographic areas, usually at different socioeconomic levels or other demographic categories. 




Aspects of the digital divide
There are manifold definitions of the digital divide, all with slightly different emphasis, which is evidenced by related concepts like digital inclusion,[13] digital participation,[14] digital skills[15] and media literacy,[16] and digital accessibility.[17]

DigitalDivide Hilbert2011.jpg
A common approach, adopted by leaders in the field like Jan van Dijk,[18] consists in defining the digital divide by the problem it aims to solve: based on different answers to the questions of who, with which kinds of characteristics, connects how and why to what, there are hundreds of alternatives ways to define the digital divide.[1] "The new consensus recognizes that the key question is not how to connect people to a specific network through a specific device, but how to extend the expected gains from new ICTs."[19] In short, the desired impact and "the end justifies the definition" of the digital divide.[1] Some actors, like the US-based National Digital Inclusion Alliance, draw conclusions based on their particular answers to these questions, and defined that for them, it implies: 1) affordable, robust broadband Internet service; 2) Internet-enabled devices that meet the needs of the user; 3) access to digital literacy training; 4) quality technical support; 5) applications and online content designed to enable and encourage self-sufficiency, participation and collaboration.[20]

Infrastructure
The infrastructure by which individuals, households, businesses, and communities connect to the Internet address the physical mediums that people use to connect to the Internet such as desktop computers, laptops, basic mobile phones or smartphones, iPods or other MP3 players, gaming consoles such as Xbox or PlayStation, electronic book readers, and tablets such as iPads.[21]


The digital divide measured in terms of bandwidth is not closing, but fluctuating up and down. Gini coefficients for telecommunication capacity (in kbit/s) among individuals worldwide[22]
Traditionally, the nature of the divide has been measured in terms of the existing numbers of subscriptions and digital devices. Given the increasing number of such devices, some have concluded that the digital divide among individuals has increasingly been closing as the result of a natural and almost automatic process.[23][24] Others point to persistent lower levels of connectivity among women, racial and ethnic minorities, people with lower incomes, rural residents, and less educated people as evidence that addressing inequalities in access to and use of the medium will require much more than the passing of time.[25][26] Recent studies have measured the digital divide not in terms of technological devices, but in terms of the existing bandwidth per individual (in kbit/s per capita).[27][22]

As shown in the Figure on the side, the digital divide in kbit/s is not monotonically decreasing but re-opens up with each new innovation. For example, "the massive diffusion of narrow-band Internet and mobile phones during the late 1990s" increased digital inequality, as well as "the initial introduction of broadband DSL and cable modems during 2003–2004 increased levels of inequality".[27] This is because a new kind of connectivity is never introduced instantaneously and uniformly to society as a whole at once, but diffuses slowly through social networks. As shown by the Figure, during the mid-2000s, communication capacity was more unequally distributed than during the late 1980s, when only fixed-line phones existed. The most recent increase in digital equality stems from the massive diffusion of the latest digital innovations (i.e. fixed and mobile broadband infrastructures, e.g. 3G and fiber optics FTTH).[28] Measurement methodologies of the digital divide, and more specifically an Integrated Iterative Approach General Framework (Integrated Contextual Iterative Approach – ICI) and the digital divide modeling theory under measurement model DDG (Digital Divide Gap) are used to analyze the gap existing between developed and developing countries, and the gap among the 27 members-states of the European Union.[29][30]

The bit as the unifying variable

Fixed-line phone and Internet 2000–2010: subscriptions (top) and kbit/s (bottom) per capita[31]
Instead of tracking various kinds of digital divides among fixed and mobile phones, narrow- and broadband Internet, digital TV, etc., it has recently been suggested to simply measure the amount of kbit/s per actor.[27][22][32][33] This approach has shown that the digital divide in kbit/s per capita is actually widening in relative terms: "While the average inhabitant of the developed world counted with some 40 kbit/s more than the average member of the information society in developing countries in 2001, this gap grew to over 3 Mbit/s per capita in 2010."[33]

The upper graph of the Figure on the side shows that the divide between developed and developing countries has been diminishing when measured in terms of subscriptions per capita. In 2001, fixed-line telecommunication penetration reached 70% of society in developed OECD countries and 10% of the developing world. This resulted in a ratio of 7 to 1 (divide in relative terms) or a difference of 60% (divide in absolute terms). During the next decade, fixed-line penetration stayed almost constant in OECD countries (at 70%), while the rest of the world started a catch-up, closing the divide to a ratio of 3.5 to 1. The lower graph shows the divide not in terms of ICT devices, but in terms of kbit/s per inhabitant. While the average member of developed countries counted with 29 kbit/s more than a person in developing countries in 2001, this difference got multiplied by a factor of one thousand (to a difference of 2900 kbit/s). In relative terms, the fixed-line capacity divide was even worse during the introduction of broadband Internet at the middle of the first decade of the 2000s, when the OECD counted with 20 times more capacity per capita than the rest of the world.[27] This shows the importance of measuring the divide in terms of kbit/s, and not merely to count devices. The International Telecommunications Union concludes that "the bit becomes a unifying variable enabling comparisons and aggregations across different kinds of communication technologies".[34]

Skills and digital literacy
However, research shows that the digital divide is more than just an access issue and cannot be alleviated merely by providing the necessary equipment. There are at least three factors at play: information accessibility, information utilization, and information receptiveness. More than just accessibility, individuals need to know how to make use of the information and communication tools once they exist within a community.[35] Information professionals have the ability to help bridge the gap by providing reference and information services to help individuals learn and utilize the technologies to which they do have access, regardless of the economic status of the individual seeking help.[36]

Gender digital divide
Main article: Gender digital divide

Abilities and perceptions of abilities
Due to the rapidly declining price of connectivity and hardware, skills deficits have eclipsed barriers of access as the primary contributor to the gender digital divide. Studies show that women are less likely to know how to leverage devices and Internet access to their full potential, even when they do use digital technologies.[37] In rural India, for example, a study found that the majority of women who owned mobile phones only knew how to answer calls. They could not dial numbers or read messages without assistance from their husbands, due to a lack of literacy and numeracy skills.[38] Research conducted across 25 countries found that adolescent boys with mobile phones used them for a wider range of activities, from playing games to accessing financial services online, while adolescent girls tended to use just the basic functionalities such as making phone calls and using the calculator.[39] Similar trends can be seen even in areas where Internet access is near-universal. A survey of women in nine cities around the world revealed that although 97% of women were using social media, only 48% of them were expanding their networks, and only 21% of Internet-connected women had searched online for information related to health, legal rights or transport.[39] In some cities, less than one quarter of connected women had used the Internet to look for a job.[37]

Studies show that despite strong performance in computer and information literacy (CIL), girls do not have confidence in their ICT abilities. According to the International Computer and Information Literacy Study (ICILS) assessment girls' self-efficacy scores (their perceived as opposed to their actual abilities) for advanced ICT tasks were lower than boys'.[40][37]

Location
Internet connectivity can be utilized at a variety of locations such as homes, offices, schools, libraries, public spaces, Internet cafe and others. There are also varying levels of connectivity in rural, suburban, and urban areas.[41][42]

Applications
Common Sense Media, a nonprofit group based in San Francisco, surveyed almost 1,400 parents and reported in 2011 that 47 percent of families with incomes more than $75,000 had downloaded apps for their children, while only 14 percent of families earning less than $30,000 had done so.[43]

Reasons and correlating variables
The gap in a digital divide may exist for a number of reasons. Obtaining access to ICTs and using them actively has been linked to a number of demographic and socio-economic characteristics: among them income, education, race, gender, geographic location (urban-rural), age, skills, awareness, political, cultural and psychological attitudes.[44][45][46][47][48][49][50][51] Multiple regression analysis across countries has shown that income levels and educational attainment are identified as providing the most powerful explanatory variables for ICT access and usage.[52] Evidence was found that Caucasians are much more likely than non-Caucasians to own a computer as well as have access to the Internet in their homes. As for geographic location, people living in urban centers have more access and show more usage of computer services than those in rural areas. Gender was previously thought to provide an explanation for the digital divide, many thinking ICT were male gendered, but controlled statistical analysis has shown that income, education and employment act as confounding variables and that women with the same level of income, education and employment actually embrace ICT more than men (see Women and ICT4D).[53] However, each nation has its own set of causes or the digital divide. For example, the digital divide in Germany is unique because it is not largely due to difference in quality of infrastructure.[54]

One telling fact is that "as income rises so does Internet use ...", strongly suggesting that the digital divide persists at least in part due to income disparities.[55] Most commonly, a digital divide stems from poverty and the economic barriers that limit resources and prevent people from obtaining or otherwise using newer technologies.

In research, while each explanation is examined, others must be controlled in order to eliminate interaction effects or mediating variables,[44] but these explanations are meant to stand as general trends, not direct causes. Each component can be looked at from different angles, which leads to a myriad of ways to look at (or define) the digital divide. For example, measurements for the intensity of usages, such as incidence and frequency, vary by study. Some report usage as access to Internet and ICTs while others report usage as having previously connected to the Internet. Some studies focus on specific technologies, others on a combination (such as Infostate, proposed by Orbicom-UNESCO, the Digital Opportunity Index, or ITU's ICT Development Index).

Economic gap in the United States
During the mid-1990s, the US Department of Commerce, National Telecommunications & Information Administration (NTIA) began publishing reports about the Internet and access to and usage of the resource. The first of three reports is entitled "Falling Through the Net: A Survey of the 'Have Nots' in Rural and Urban America" (1995),[56] the second is "Falling Through the Net II: New Data on the Digital Divide" (1998),[57] and the final report "Falling Through the Net: Defining the Digital Divide" (1999).[58] The NTIA's final report attempted clearly to define the term digital divide; "the digital divide—the divide between those with access to new technologies and those without—is now one of America's leading economic and civil rights issues. This report will help clarify which Americans are falling further behind so that we can take concrete steps to redress this gap."[58] Since the introduction of the NTIA reports, much of the early, relevant literature began to reference the NTIA's digital divide definition. The digital divide is commonly defined as being between the "haves" and "have-nots."[58][59] The economic gap really comes into play when referring to the older generations.

Racial gap

This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (March 2020) (Learn how and when to remove this template message)
Although many groups in society are affected by a lack of access to computers or the Internet, communities of color are specifically observed to be negatively affected by the digital divide. This is evident when it comes to observing home Internet access among different races and ethnicities. 81% of Whites and 83% of Asians have home Internet access, compared to 70% of Hispanics, 68% of Blacks, 72% of American Indian/Alaska Natives, and 68% of Native Hawaiian/Pacific Islanders. Although income is a factor in home Internet access disparities, there are still racial and ethnic inequalities that are present among those within lower income groups. 58% of low income Whites are reported to have home Internet access in comparison to 51% of Hispanics and 50% of Blacks. This information is reported in a report titled "Digital Denied: The Impact of Systemic Racial Discrimination on Home-Internet Adoption" which was published by the DC-based public interest group Fress Press. The report concludes that structural barriers and discrimination that perpetuates bias against people of different races and ethnicities contribute to having an impact on the digital divide. The report also concludes that those who do not have Internet access still have a high demand for it, and reduction in the price of home Internet access would allow for an increase in equitable participation and improve Internet adoption by marginalized groups.[60]

Digital censorship and algorithmic bias are observed to be present in the racial divide. Hate-speech rules as well as hate speech algorithms online platforms such as Facebook have favored white males and those belonging to elite groups in society over marginalized groups in society, such as women and people of color. In a collection of internal documents that were collected in a project conducted by ProPublica, Facebook's guidelines in regards to distinguishing hate speech and recognizing protected groups revealed slides that identified three groups, each one containing either female drivers, black children, or white men. When the question of which subset group is protected is presented, the correct answer was white men . Minority group language is negatively impacted by automated tools of hate detection due to human bias that ultimately decides what is considered hate speech and what is not.

Online platforms have also been observed to tolerate hateful content towards people of color but restrict content from people of color. Aboriginal memes on a Facebook page were posted with racially abusive content and comments depicting Aboriginal people as inferior. While the contents on the page were removed by the originators after an investigation conducted by the Australian Communications and Media Authority, Facebook did not delete the page and has allowed it to remain under the classification of controversial humor . However, a post by an African American woman addressing her uncomfortableness of being the only person of color in a small-town restaurant was met with racist and hateful messages. When reporting the online abuse to Facebook, her account was suspended by Facebook for three days for posting the screenshots while those responsible for the racist comments she received were not suspended. Shared experiences between people of color can be at risk of being silenced under removal policies for online platforms.

Disability gap
Inequities in access to information technologies are present among individuals living with a disability in comparison to those who are not living with a disability. According to The Pew Research Center, 54% of households with a person who has a disability have home Internet access compared to 81% of households that have home Internet access and do not have a person who has a disability.[61] The type of disability an individual has can prevent one from interacting with computer screens and smartphone screens, such as having a quadriplegia disability or having a disability in the hands. However, there is still a lack of access to technology and home Internet access among those who have a cognitive and auditory disability as well. There is a concern of whether or not the increase in the use of information technologies will increase equality through offering opportunities for individuals living with disabilities or whether it will only add to the present inequalities and lead to individuals living with disabilities being left behind in society.[62] Issues such as the perception of disabilities in society, Federal and state government policy, corporate policy, mainstream computing technologies, and real-time online communication have been found to contribute to the impact of the digital divide on individuals with disabilities.

People with disabilities are also the targets of online abuse. Online disability hate crimes have increased by 33% across the UK between 2016–17 and 2017–18 according to a report published by Leonard Cheshire, a health and welfare charity.[63] Accounts of online hate abuse towards people with disabilities were shared during an incident in 2019 when model Katie Price's son was the target of online abuse that was attributed to him having a disability. In response to the abuse, a campaign was launched by Katie Price to ensure that Britain's MP's held those who are guilty of perpetuating online abuse towards those with disabilities accountable.[64] Online abuse towards individuals with disabilities is a factor that can discourage people from engaging online which could prevent people from learning information that could improve their lives. Many individuals living with disabilities face online abuse in the form of accusations of benefit fraud and "faking" their disability for financial gain, which in some cases leads to unnecessary investigations.

Gender gap
Main article: Gender digital divide
A paper published by J. Cooper from Princeton University points out that learning technology is designed to be receptive to men instead of women. The reasoning for this is that most software engineers and programmers are men, and they communicate their learning software in a way that would match the reception of their recipient. The association of computers in education is normally correlated with the male gender, and this has an impact on the education of computers and technology among women, although it is important to mention that there are plenty of learning software that are designed to help women and girls learn technology. Overall, the study presents the problem of various perspectives in society that are a result of gendered socialization patterns that believe that computers are a part of the male experience since computers have traditionally presented as a toy for boys when they are children.[65] This divide is followed as children grow older and young girls are not encouraged as much to pursue degrees in IT and computer science. In 1990, the percentage of women in computing jobs was 36%, however in 2016, this number had fallen to 25%. This can be seen in the underrepresentation of women in IT hubs such as Silicon Valley.[66]

There has also been the presence of algorithmic bias that has been shown in machine learning algorithms that are implemented by major companies.[clarification needed] In 2015, Amazon had to abandon a recruiting algorithm that showed a difference between ratings that candidates received for software developer jobs as well as other technical jobs. As a result, it was revealed that Amazon's machine algorithm was biased against women and favored male resumes over female resumes. This was due to the fact that Amazon's computer models were trained to vet patterns in resumes over a 10-year period. During this ten-year period, the majority of the resumes belong to male individuals, which is a reflection of male dominance across the tech industry.[67]

LGBT gap
A number of states, including some that have introduced new laws since 2010, notably censor voices from and content related to the LGBT community, posing serious consequences to access to information about sexual orientation and gender identity. Digital platforms play a powerful role in limiting access to certain content, such as YouTube's 2017 decision to classify non-explicit videos with LGBT themes as 'restricted', a classification designed to filter out 'potentially inappropriate content'.[68] The Internet provides information that can create a safe space for marginalized groups such as the LGBT community to connect with others and engage in honest dialogues and conversations that are affecting their communities. It can also be viewed as an agent of change for the LGBT community and provide a means of engaging in social justice. It can allow for LGBT individuals who may be living in rural areas or in areas where they are isolated to gain access to information that are not within their rural system as well as gaining information from other LGBT individuals. This includes information such as healthcare, partners, and news. GayHealth provides online medical and health information and Gay and Lesbians Alliance Against Defamation contains online publications and news that focus on human rights campaigns and issues focused on LGBT issues. The Internet also allows LGBT individuals to maintain anonymity. LGBT Tech has emphasized launching newer technologies with 5G technology in order to help close the digital divide that can cause members of the LGBT community to lose access to reliable and fast technology that can provide information on healthcare, economic opportunities, and safe communities.[69]

Age gap
Ambox current red Americas.svg
This article needs to be updated. Please update this article to reflect recent events or newly available information. (July 2020)
Older adults, those ages 60 and up, face various barriers that contribute to their lack of access to information and communication technologies (ICTs). Many adults are "digital immigrants" who have not had lifelong exposure to digital media and have had to adapt to incorporating it in their lives.[70] A study in 2005 found that only 26% of people aged 65 and over were Internet users, compared to 67% in the 50-64 age group and 80% in the 30-49 year age group.[71] This "grey divide" can be due to factors such as concern over security, motivation and self-efficacy, decline of memory or spatial orientation, cost, or lack of support.[72] The aforementioned variables of race, disability, gender, and sexual orientation also add to the barriers for older adults.

Many older adults may have physical or mental disabilities that render them homebound and financially insecure. They may be unable to afford Internet access or lack transportation to use computers in public spaces, the benefits of which would be enhancing their health and reducing their social isolation and depression. Homebound older adults would benefit from Internet use by using it to access health information, use telehealth resources, shop and bank online, and stay connected with friends or family using email or social networks.[73]

Those in more privileged socio-economic positions and with a higher level of education are more likely to have Internet access than those older adults living in poverty. Lack of access to the Internet inhibits "capital-enhancing activities" such as accessing government assistance, job opportunities, or investments. The results of the U.S. Federal Communication Commission's 2009 National Consumer Broadband Service Capability Survey shows that older women are less likely to use the Internet, especially for capital enhancing activities, than their male counterparts.[74]

However, a reverse divide is also happening, as poor and disadvantaged children and teenagers spend more time using digital devices for entertainment and less time interacting with people face-to-face compared to children and teenagers in well-off families.[75]

Historical Background
The ethical roots of the matter of closing the digital divide can be found in the notion of “social contract”, in which Jean Jacques Rousseau advocated that governments should intervene to ensure that any society's economic benefits should be fairly and meaningfully distributed. Amid the Industrial Revolution in Great Britain, Rousseau's idea helped to justify poor laws that created a safety net for those who were harmed by new forms of production. Later when telepgraph and postal systems evolved, many used Rousseau's ideas to argue for full access to those services, even if it meant subsidizing hard to serve citizens. Thus, "universal services"[76] referred to innovations in regulation and taxation that would allow phone services such as AT&T in the United States serve hard to serve rural users. In the 1996, as telecommunications companies merged Internet companies, the Federal Communications Commission adopted Telecommunications Services Act of 1996 to consider regulatory strategies and taxation policies to close the digital divide. Though the term "digital divide" was coined among consumer groups that sought to tax and regulate Information and communications technology (ICT) companies to close digital divide, the topic soon moved onto a global stage. The focus was the World Trade Organization which passed a Telecommunications Services Act, which resisted regulation of ICT companies so that they would be required to serve hard to serve individuals and communities. In an effort to assuage anti-globalization forces, the WTO hosted an event in 1999 in Seattle, USA, called “Financial Solutions to Digital Divide," co-organized by Craig Warren Smith of Digital Divide Institute and Bill Gates Sr. the chairman of the Bill and Melinda Gates Foundation. This event, attended by CEOs of Internet companies, UN Agencies, Prime Ministers, leading international foundations and leading academic institutions was the catalyst for a full scale global movement to close digital divide, which quickly spread virally to all sectors of the global economy.[77]


Facebook divide
The Facebook divide,[78][79][80][81] a concept derived from the "digital divide", is the phenomenon with regard to access to, use of, or impact of Facebook on individual society and among societies. It is suggested at the International Conference on Management Practices for the New Economy (ICMAPRANE-17) on February 10–11, 2017.[82] Additional concepts of Facebook Native and Facebook Immigrants are suggested at the conference. The Facebook Divide, Facebook native, Facebook immigrants, and Facebook left-behind are concepts for social and business management research. Facebook Immigrants are utilizing Facebook for their accumulation of both bonding and bridging social capital. These Facebook Native, Facebook Immigrants, and Facebook left-behind induced the situation of Facebook inequality. In February 2018, the Facebook Divide Index was introduced at the ICMAPRANE[83] conference in Noida, India, to illustrate the Facebook Divide phenomenon.

Overcoming the divide
An individual must be able to connect in order to achieve enhancement of social and cultural capital as well as achieve mass economic gains in productivity.[citation needed] Therefore, access is a necessary (but not sufficient) condition for overcoming the digital divide. Access to ICT meets significant challenges that stem from income restrictions. The borderline between ICT as a necessity good and ICT as a luxury good is roughly around the "magical number" of US$10 per person per month, or US$120 per year,[52] which means that people consider ICT expenditure of US$120 per year as a basic necessity. Since more than 40% of the world population lives on less than US$2 per day, and around 20% live on less than US$1 per day (or less than US$365 per year), these income segments would have to spend one third of their income on ICT (120/365 = 33%). The global average of ICT spending is at a mere 3% of income.[52] Potential solutions include driving down the costs of ICT, which includes low-cost technologies and shared access through Telecentres.

Furthermore, even though individuals might be capable of accessing the Internet, many are thwarted by barriers to entry, such as a lack of means to infrastructure or the inability to comprehend the information that the Internet provides. Lack of adequate infrastructure and lack of knowledge are two major obstacles that impede mass connectivity. These barriers limit individuals' capabilities in what they can do and what they can achieve in accessing technology. Some individuals can connect, but they do not have the knowledge to use what information ICTs and Internet technologies provide them. This leads to a focus on capabilities and skills, as well as awareness to move from mere access to effective usage of ICT.[84]

The United Nations is aiming to raise awareness of the divide by way of the World Information Society Day which has taken place yearly since May 17, 2006.[85] It also set up the Information and Communications Technology (ICT) Task Force in November 2001.[86] Later UN initiatives in this area are the World Summit on the Information Society, which was set up in 2003, and the Internet Governance Forum, set up in 2006.

In the year 2000, the United Nations Volunteers (UNV) programme launched its Online Volunteering service,[87] which uses ICT as a vehicle for and in support of volunteering. It constitutes an example of a volunteering initiative that effectively contributes to bridge the digital divide. ICT-enabled volunteering has a clear added value for development. If more people collaborate online with more development institutions and initiatives, this will imply an increase in person-hours dedicated to development cooperation at essentially no additional cost. This is the most visible effect of online volunteering for human development.[88]

Social media websites serve as both manifestations of and means by which to combat the digital divide. The former describes phenomena such as the divided users' demographics that make up sites such as Facebook and Myspace or Word Press and Tumblr. Each of these sites hosts thriving communities that engage with otherwise marginalized populations. An example of this is the large online community devoted to Afrofuturism, a discourse that critiques dominant structures of power by merging themes of science fiction and blackness. Social media brings together minds that may not otherwise meet, allowing for the free exchange of ideas and empowerment of marginalized discourses.

Libraries

A laptop lending kiosk at Texas A&M University–Commerce's Gee Library
Attempts to bridge the digital divide include a program developed in Durban, South Africa, where deficient access to technology and a lack of documented cultural heritage has motivated the creation of an "online indigenous digital library as part of public library services."[89] This project has the potential to narrow the digital divide by not only giving the people of the Durban area access to this digital resource, but also by incorporating the community members into the process of creating it.

To address the divide The Gates Foundation started the Gates Library Initiative which provides training assistance and guidance in libraries.[90]

In nations where poverty compounds effects of the digital divide, programs are emerging to counter those trends. In Kenya, lack of funding, language, and technology illiteracy contributed to an overall lack of computer skills and educational advancement. This slowly began to change when foreign investment began.[citation needed] In the early 2000s, the Carnegie Foundation funded a revitalization project through the Kenya National Library Service. Those resources enabled public libraries to provide information and communication technologies to their patrons. In 2012, public libraries in the Busia and Kiberia communities introduced technology resources to supplement curriculum for primary schools. By 2013, the program expanded into ten schools.[91]

Effective use
Community Informatics (CI) provides a somewhat different approach to addressing the digital divide by focusing on issues of "use" rather than simply "access". CI is concerned with ensuring the opportunity not only for ICT access at the community level but also, according to Michael Gurstein, that the means for the "effective use" of ICTs for community betterment and empowerment are available.[92] Gurstein has also extended the discussion of the digital divide to include issues around access to and the use of "open data" and coined the term "data divide" to refer to this issue area.[93]

Implications
Social capital
Once an individual is connected, Internet connectivity and ICTs can enhance his or her future social and cultural capital. Social capital is acquired through repeated interactions with other individuals or groups of individuals. Connecting to the Internet creates another set of means by which to achieve repeated interactions. ICTs and Internet connectivity enable repeated interactions through access to social networks, chat rooms, and gaming sites. Once an individual has access to connectivity, obtains infrastructure by which to connect, and can understand and use the information that ICTs and connectivity provide, that individual is capable of becoming a "digital citizen."[44]

Economic disparity
In the United States, the research provided by Sungard Availability Services notes a direct correlation between a company's access to technological advancements and its overall success in bolstering the economy.[94] The study, which includes over 2,000 IT executives and staff officers, indicates that 69 percent of employees feel they do not have access to sufficient technology in order to make their jobs easier, while 63 percent of them believe the lack of technological mechanisms hinders their ability to develop new work skills.[94] Additional analysis provides more evidence to show how the digital divide also affects the economy in places all over the world. A BCG report suggests that in countries like Sweden, Switzerland, and the U.K., the digital connection among communities is made easier, allowing for their populations to obtain a much larger share of the economies via digital business.[95] In fact, in these places, populations hold shares approximately 2.5 percentage points higher.[95] During a meeting with the United Nations a Bangladesh representative expressed his concern that poor and undeveloped countries would be left behind due to a lack of funds to bridge the digital gap.[96]

Education
The digital divide also impacts children's ability to learn and grow in low-income school districts. Without Internet access, students are unable to cultivate necessary tech skills in order to understand today's dynamic economy.[97] Federal Communication Commission's Broadband Task Force created a report showing that about 70% of teachers give students homework that demand access to broadband.[98] Even more, approximately 65% of young scholars use the Internet at home to complete assignments as well as connect with teachers and other students via discussion boards and shared files.[98]  A recent study indicates that practically 50% of students say that they are unable to finish their homework due to an inability to either connect to the Internet or in some cases, find a computer.[98] This has led to a new revelation: 42% of students say they received a lower grade because of this disadvantage.[98] Finally, according to research conducted by the Center for American Progress, "if the United States were able to close the educational achievement gaps between native-born white children and black and Hispanic children, the U.S. economy would be 5.8 percent—or nearly $2.3 trillion—larger in 2050".[99]

In a reverse of this idea, well-off families, especially the tech-savvy parents in Silicon Valley, carefully limit their own children's screen time. The children of wealthy families attend play-based preschool programs that emphasize social interaction instead of time spent in front of computers or other digital devices, and they pay to send their children to schools that limit screen time.[75] American families that cannot afford high-quality childcare options are more likely to use tablet computers filled with apps for children as a cheap replacement for a babysitter, and their government-run schools encourage screen time during school.[75]

Demographic differences
Ambox current red Americas.svg
This section needs to be updated. Please update this article to reflect recent events or newly available information. (August 2019)
Furthermore, according to the 2012 Pew Report "Digital Differences," a mere 62% of households who make less than $30,000 a year use the Internet, while 90% of those making between $50,000 and $75,000 had access.[97]   Studies also show that only 51% of Hispanics and 49% of African Americans have high-speed Internet at home. This is compared to the 66% of Caucasians that too have high-speed Internet in their households.[97] Overall, 10% of all Americans do not have access to high-speed Internet, an equivalent of almost 34 million people.[100] Supplemented reports from the Guardian demonstrate the global effects of limiting technological developments in poorer nations, rather than simply the effects in the United States. Their study shows that rapid digital expansion excludes those who find themselves in the lower class. 60% of the world's population, almost 4 billion people, have no access to the Internet and are thus left worse off.[101]

Criticisms
Knowledge divide
Since gender, age, racial, income, and educational digital divides have lessened compared to the past, some researchers suggest that the digital divide is shifting from a gap in access and connectivity to ICTs to a knowledge divide.[102] A knowledge divide concerning technology presents the possibility that the gap has moved beyond the access and having the resources to connect to ICTs to interpreting and understanding information presented once connected.[103]

Second-level digital divide
The second-level digital divide, also referred to as the production gap, describes the gap that separates the consumers of content on the Internet from the producers of content.[104] As the technological digital divide is decreasing between those with access to the Internet and those without, the meaning of the term digital divide is evolving.[102] Previously, digital divide research has focused on accessibility to the Internet and Internet consumption. However, with more and more of the population gaining access to the Internet, researchers are examining how people use the Internet to create content and what impact socioeconomics are having on user behavior.[105][106] New applications have made it possible for anyone with a computer and an Internet connection to be a creator of content, yet the majority of user-generated content available widely on the Internet, like public blogs, is created by a small portion of the Internet-using population. Web 2.0 technologies like Facebook, YouTube, Twitter, and Blogs enable users to participate online and create content without having to understand how the technology actually works, leading to an ever-increasing digital divide between those who have the skills and understanding to interact more fully with the technology and those who are passive consumers of it.[104] Many are only nominal content creators through the use of Web 2.0, posting photos and status updates on Facebook, but not truly interacting with the technology.

Some of the reasons for this production gap include material factors like the type of Internet connection one has and the frequency of access to the Internet. The more frequently a person has access to the Internet and the faster the connection, the more opportunities they have to gain the technology skills and the more time they have to be creative.[107]

Other reasons include cultural factors often associated with class and socioeconomic status. Users of lower socioeconomic status are less likely to participate in content creation due to disadvantages in education and lack of the necessary free time for the work involved in blog or web site creation and maintenance.[107] Additionally, there is evidence to support the existence of the second-level digital divide at the K-12 level based on how educators' use technology for instruction.[108] Schools' economic factors have been found to explain variation in how teachers use technology to promote higher-order thinking skills.[108]

The global digital divide
Main article: Global digital divide
See also: World Summit on the Information Society and Digital divide by country
The global digital divide describes global disparities, primarily between developed and developing countries, in regards to access to computing and information resources such as the Internet and the opportunities derived from such access.[109] As with a smaller unit of analysis, this gap describes an inequality that exists, referencing a global scale.

The Internet is expanding very quickly, and not all countries—especially developing countries—can keep up with the constant changes. The term "digital divide" does not necessarily mean that someone does not have technology; it could mean that there is simply a difference in technology. These differences can refer to, for example, high-quality computers, fast Internet, technical assistance, or telephone services. The difference between all of these is also considered a gap.

There is a large inequality worldwide in terms of the distribution of installed telecommunication bandwidth. In 2014 only three countries (China, US, Japan) host 50% of the globally installed bandwidth potential (see pie-chart Figure on the right).[22] This concentration is not new, as historically only ten countries have hosted 70–75% of the global telecommunication capacity (see Figure). The U.S. lost its global leadership in terms of installed bandwidth in 2011, being replaced by China, which hosts more than twice as much national bandwidth potential in 2014 (29% versus 13% of the global total).[22]

See also
Library resources about
Digital divide
Resources in your library
Resources in other libraries
Achievement gap
Civic opportunity gap
Computer technology for developing areas
Digital divide by country
Digital divide in Canada
Digital divide in China
Digital divide in South Africa
Digital divide in Thailand
Digital rights
Digital Society Day (October 17 in India)
Global Internet usage
Government by algorithm
Information society
International communication
Internet geography
Internet governance
List of countries by Internet connection speeds
Light-weight Linux distribution
Literacy
National broadband plans from around the world
NetDay
Net neutrality
Rural Internet
Groups devoted to digital divide issues
Center for Digital Inclusion
Digital Textbook a South Korean Project that intends to distribute tablet notebooks to elementary school students.
Inveneo
TechChange
United Nations Information and Communication Technologies Task Force

















































































































































! Atomic Age

!! https://en.wikipedia.org/wiki/Atomic_Age

From Wikipedia, the free encyclopedia

This article is about the historical era. For the comic-book miniseries, see Atomic Age (comics).
An early nuclear power plant that used atomic energy to generate electricity
History of technology
By technological eras
By historical regions
By type of technology
Technology timelines
Article indices

    vte

The Atomic Age, also known as the Atomic Era, is the period of history following the detonation of the first nuclear weapon, The Gadget at the Trinity test in New Mexico, on July 16, 1945, during World War II. Although nuclear chain reactions had been hypothesized in 1933 and the first artificial self-sustaining nuclear chain reaction (Chicago Pile-1) had taken place in December 1942,[1] the Trinity test and the ensuing bombings of Hiroshima and Nagasaki that ended World War II represented the first large-scale use of nuclear technology and ushered in profound changes in sociopolitical thinking and the course of technology development.

While atomic power was promoted for a time as the epitome of progress and modernity,[2] entering into the nuclear power era also entailed frightful implications of nuclear warfare, the Cold War, mutual assured destruction, nuclear proliferation, the risk of nuclear disaster (potentially as extreme as anthropogenic global nuclear winter), as well as beneficial civilian applications in nuclear medicine. It is no easy matter to fully segregate peaceful uses of nuclear technology from military or terrorist uses (such as the fabrication of dirty bombs from radioactive waste), which complicated the development of a global nuclear-power export industry right from the outset.

In 1973, concerning a flourishing nuclear power industry, the United States Atomic Energy Commission predicted that, by the turn of the 21st century, one thousand reactors would be producing electricity for homes and businesses across the U.S. However, the "nuclear dream" fell far short of what was promised because nuclear technology produced a range of social problems, from the nuclear arms race to nuclear meltdowns, and the unresolved difficulties of bomb plant cleanup and civilian plant waste disposal and decommissioning.[3] Since 1973, reactor orders declined sharply as electricity demand fell and construction costs rose. Many orders and partially completed plants were cancelled.[4]

By the late 1970s, nuclear power had suffered a remarkable international destabilization, as it was faced with economic difficulties and widespread public opposition, coming to a head with the Three Mile Island accident in 1979, and the Chernobyl disaster in 1986, both of which adversely affected the nuclear power industry for many decades.[5]
Contents

    1 Early years
    2 World War II
    3 1950s
        3.1 Atomic City
    4 1960s
    5 1970 to 2000
    6 21st century
    7 Chronology
        7.1 Discovery and development
        7.2 Nuclear arms deployment
        7.3 "Atoms for Peace"
        7.4 Three Mile Island and Chernobyl
        7.5 Nuclear arms reduction
        7.6 Fukushima
    8 Influence on popular culture
    9 See also
    10 References
    11 Further reading
    12 External links

Early years

In 1901, Frederick Soddy and Ernest Rutherford discovered that radioactivity was part of the process by which atoms changed from one kind to another, involving the release of energy. Soddy wrote in popular magazines that radioactivity was a potentially "inexhaustible" source of energy, and offered a vision of an atomic future where it would be possible to "transform a desert continent, thaw the frozen poles, and make the whole earth one smiling Garden of Eden." The promise of an "atomic age," with nuclear energy as the global, utopian technology for the satisfaction of human needs, has been a recurring theme ever since. But "Soddy also saw that atomic energy could possibly be used to create terrible new weapons".[6][7]

The concept of a nuclear chain reaction was hypothesized in 1933, shortly after Chadwick's discovery of the neutron. Only a few years later, in December 1938 nuclear fission was discovered by Otto Hahn and his assistant Fritz Strassmann, and explained, proved and explained by Lise Meitner and Otto Frisch. The first artificial self-sustaining nuclear chain reaction (Chicago Pile-1, or CP-1) took place in December 1942 under the leadership of Enrico Fermi.[1]

In 1945, the pocketbook The Atomic Age heralded the untapped atomic power in everyday objects and depicted a future where fossil fuels would go unused. One science writer, David Dietz, wrote that instead of filling the gas tank of your car two or three times a week, you will travel for a year on a pellet of atomic energy the size of a vitamin pill. Glenn T. Seaborg, who chaired the Atomic Energy Commission, wrote "there will be nuclear powered earth-to-moon shuttles, nuclear powered artificial hearts, plutonium heated swimming pools for SCUBA divers, and much more".[8]
World War II

The phrase Atomic Age was coined by William L. Laurence, a journalist with The New York Times, who became the official journalist for the Manhattan Project which developed the first nuclear weapons.[9][10] He witnessed both the Trinity test and the bombing of Nagasaki and went on to write a series of articles extolling the virtues of the new weapon. His reporting before and after the bombings helped to spur public awareness of the potential of nuclear technology and in part motivated development of the technology in the U.S. and in the Soviet Union.[11] The Soviet Union would go on to test its first nuclear weapon in 1949.

In 1949, U.S. Atomic Energy Commission chairman, David Lilienthal stated that "atomic energy is not simply a search for new energy, but more significantly a beginning of human history in which faith in knowledge can vitalize man's whole life".[12]
1950s
Further information: Atomic Age (design)
This view of downtown Las Vegas shows a mushroom cloud in the background. Scenes such as this were typical during the 1950s. From 1951 to 1962 the government conducted 100 atmospheric tests at the nearby Nevada Test Site.[13]

The phrase gained popularity as a feeling of nuclear optimism emerged in the 1950s in which it was believed that all power generators in the future would be atomic in nature. The atomic bomb would render all conventional explosives obsolete and nuclear power plants would do the same for power sources such as coal and oil. There was a general feeling that everything would use a nuclear power source of some sort, in a positive and productive way, from irradiating food to preserve it, to the development of nuclear medicine. There would be an age of peace and plenty in which atomic energy would "provide the power needed to desalinate water for the thirsty, irrigate the deserts for the hungry, and fuel interstellar travel deep into outer space".[2] This use would render the Atomic Age as significant a step in technological progress as the first smelting of bronze, of iron, or the commencement of the Industrial Revolution.

This included even cars, leading Ford to display the Ford Nucleon concept car to the public in 1958. There was also the promise of golf balls which could always be found and nuclear-powered aircraft, which the U.S. federal government even spent US$1.5 billion researching.[2] Nuclear policymaking became almost a collective technocratic fantasy, or at least was driven by fantasy:[14]

    The very idea of splitting the atom had an almost magical grip on the imaginations of inventors and policymakers. As soon as someone said—in an even mildly credible way—that these things could be done, then people quickly convinced themselves ... that they would be done.[14]

In the US, military planners "believed that demonstrating the civilian applications of the atom would also affirm the American system of private enterprise, showcase the expertise of scientists, increase personal living standards, and defend the democratic lifestyle against communism".[15]

Some media reports predicted that thanks to the giant nuclear power stations of the near future electricity would soon become much cheaper and that electricity meters would be removed, because power would be "too cheap to meter."[16]

When the Shippingport reactor went online in 1957 it produced electricity at a cost roughly ten times that of coal-fired generation. Scientists at the AEC's own Brookhaven Laboratory "wrote a 1958 report describing accident scenarios in which 3,000 people would die immediately, with another 40,000 injured".[17]

However Shippingport was an experimental reactor using highly enriched uranium (unlike most power reactors) and originally intended for a (cancelled) nuclear-powered aircraft carrier. Kenneth Nichols was a consultant for the Connecticut Yankee and Yankee Rowe nuclear power stations wrote that while considered "experimental" and not expected to be competitive with coal and oil, they "became competitive because of inflation... and the large increase in price of coal and oil." He wrote that for nuclear power stations the capital cost is the major cost factor over the life of the plant, hence "antinukes" try to increase costs and building time with changing regulations and lengthy hearings, so that "it takes almost twice as long to build a (U.S.-designed boiling-water or pressurised water) atomic power plant in the United States as in France, Japan, Taiwan or South Korea." French pressurised-water nuclear plants produce 60% of their electric power, and have proven to be much cheaper than oil or coal.[18]

Fear of possible atomic attack from the Soviet Union caused U.S. school children to participate in "duck and cover" civil defense drills.[19]
Atomic City

During the 1950s, Las Vegas, Nevada, earned the nickname "Atomic City" for becoming a hotspot where tourists would gather to watch above-ground nuclear weapons tests taking place at Nevada Test Site. Following the detonation of Able, one of the first atomic bombs dropped at the Nevada Test Site, the Las Vegas Chamber of Commerce began advertising the tests as an entertainment spectacle to tourists.

The detonations proved popular and casinos throughout the city capitalised on the tests by advertising hotel rooms or rooftops which offered views of the testing site or by planning "Dawn Bomb Parties" where people would come together to celebrate the detonations.[20] Most parties started at midnight and musicians would perform at the venues until 4:00 a.m. when the party would briefly stop so guests could silently watch the detonation. Some casinos capitalised on the tests further by creating so called "atomic cocktails", a mixture of vodka, cognac, sherry and champagne.[21]

Meanwhile, groups of tourists would drive out into the desert with family or friends to watch the detonations.

Despite the health risks associated with nuclear fallout, tourists and viewers were told to simply "shower". Later on, however, anyone who had worked at the testing site or lived in areas exposed to nuclear fallout fell ill and had higher chances of developing cancer or suffering pre-mature deaths.[22]
1960s

By exploiting the peaceful uses of the "friendly atom" in medical applications, earth removal and, subsequently, in nuclear power plants, the nuclear industry and government sought to allay public fears about nuclear technology and promote the acceptance of nuclear weapons. At the peak of the Atomic Age, the United States government initiated Operation Plowshare, involving "peaceful nuclear explosions". The United States Atomic Energy Commission chairman announced that the Plowshares project was intended to "highlight the peaceful applications of nuclear explosive devices and thereby create a climate of world opinion that is more favorable to weapons development and tests".[23]

Project Plowshare "was named directly from the Bible itself, specifically Micah 4:3, which states that God will beat swords into ploughshares, and spears into pruning hooks, so that no country could lift up weapons against another".[24] Proposed uses included widening the Panama Canal, constructing a new sea-level waterway through Nicaragua nicknamed the Pan-Atomic Canal, cutting paths through mountainous areas for highways, and connecting inland river systems. Other proposals involved blasting caverns for water, natural gas, and petroleum storage. It was proposed to plant underground atomic bombs to extract shale oil in eastern Utah and western Colorado. Serious consideration was also given to using these explosives for various mining operations. One proposal suggested using nuclear blasts to connect underground aquifers in Arizona. Another plan involved surface blasting on the western slope of California's Sacramento Valley for a water transport project.[24] However, there were many negative impacts from Project Plowshare's 27 nuclear explosions.[24] Consequences included blighted land, relocated communities, tritium-contaminated water, radioactivity, and fallout from debris being hurled high into the atmosphere. These were ignored and downplayed until the program was terminated in 1977, due in large part to public opposition, after $770 million had been spent on the project.[24]

In the Thunderbirds TV series, a set of vehicles was presented that were imagined to be completely nuclear, as shown in cutaways presented in their comic-books.

The term "atomic age" was initially used in a positive, futuristic sense, but by the 1960s the threats posed by nuclear weapons had begun to edge out nuclear power as the dominant motif of the atom.
1970 to 2000
A photograph taken in the abandoned city of Pripyat. The Chernobyl nuclear power plant can be seen on the horizon.

French advocates of nuclear power developed an aesthetic vision of nuclear technology as art to bolster support for the technology. Leclerq compares the nuclear cooling tower to some of the grandest architectural monuments of western culture:[25]

    The age in which we live has, for the public, been marked by the nuclear engineer and the gigantic edifices he has created. For builders and visitors alike, nuclear power plants will be considered the cathedrals of the 20th century. Their syncretism mingles the conscious and the unconscious, religious fulfilment and industrial achievement, the limitations of uses of materials and boundless artistic inspiration, utopia come true and the continued search for harmony.[25]

In 1973, the United States Atomic Energy Commission predicted that, by the turn of the 21st century, one thousand reactors would be producing electricity for homes and businesses across the USA. But after 1973, reactor orders declined sharply as electricity demand fell and construction costs rose. Many orders and partially completed plants were cancelled.[4]

Nuclear power has proved controversial since the 1970s. Highly radioactive materials may overheat and escape from the reactor building. Nuclear waste (spent nuclear fuel) needs to be regularly removed from the reactors and disposed of safely for up to a million years, so that it does not pollute the environment. Recycling of nuclear waste has been discussed, but it creates plutonium which can be used in weapons, and in any case still leaves much unwanted waste to be stored and disposed of. Large, purpose-built facilities for long-term disposal of nuclear waste have been difficult to site, and have not yet reached fruition.[26]

By the late 1970s, nuclear power suffered a remarkable international destabilization, as it was faced with economic difficulties and widespread public opposition, coming to a head with the Three Mile Island accident in 1979, and the Chernobyl disaster in 1986, both of which adversely affected the nuclear power industry for decades thereafter. A cover story in the February 11, 1985, issue of Forbes magazine commented on the overall management of the nuclear power program in the United States:

    The failure of the U.S. nuclear power program ranks as the largest managerial disaster in business history, a disaster on a monumental scale ... only the blind, or the biased, can now think that the money has been well spent. It is a defeat for the U.S. consumer and for the competitiveness of U.S. industry, for the utilities that undertook the program and for the private enterprise system that made it possible.[27]

So, in a period just over 30 years, the early dramatic rise of nuclear power went into equally meteoric reverse. With no other energy technology has there been a conjunction of such rapid and revolutionary international emergence, followed so quickly by equally transformative demise.[28]
21st century
The 2011 Fukushima Daiichi nuclear disaster in Japan, the worst nuclear accident in 25 years, displaced 50,000 households after radiation leaked into the air, soil and sea.[29]

In the 21st century, the label of the "Atomic Age" connotes either a sense of nostalgia or naïveté, and is considered by many to have ended with the fall of the Soviet Union in 1991, though the term continues to be used by many historians to describe the era following the conclusion of the Second World War. Atomic energy and weapons continue to have a strong effect on world politics in the 21st century. The term is used by some science fiction fans to describe not only the era following the conclusion of the Second World War but also contemporary history up to the present day.

The nuclear power industry has improved the safety and performance of reactors, and has proposed new safer (but generally untested) reactor designs but there is no guarantee that the reactors will be designed, built and operated correctly.[30] Mistakes do occur and the designers of reactors at Fukushima in Japan did not anticipate that a tsunami generated by an earthquake would disable the backup systems that were supposed to stabilize the reactor after the earthquake.[31] According to UBS AG, the Fukushima I nuclear accidents have cast doubt on whether even an advanced economy like Japan can master nuclear safety.[32] Catastrophic scenarios involving terrorist attacks are also conceivable.[30] An interdisciplinary team from MIT has estimated that if nuclear power use tripled from 2005 to 2055 (2%[33]–7%), at least four serious nuclear accidents would be expected in that period.[34][35]

In September 2012, in reaction to the Fukushima disaster, Japan announced that it would completely phase out nuclear power by 2030, although the likelihood of this goal became unlikely during the subsequent Abe administration.[36] Germany plans to completely phase out nuclear energy by 2022.[37]
Chronology

A large anti-nuclear demonstration was held on May 6, 1979, in Washington D.C., when 125,000 people[38] including the Governor of California, attended a march and rally against nuclear power.[39] In New York City on September 23, 1979, almost 200,000 people attended a protest against nuclear power.[40] Anti-nuclear power protests preceded the shutdown of the Shoreham, Yankee Rowe, Millstone I, Rancho Seco, Maine Yankee, and about a dozen other nuclear power plants.[41]

On June 12, 1982, one million people demonstrated in New York City's Central Park against nuclear weapons and for an end to the cold war arms race. It was the largest anti-nuclear protest and the largest political demonstration in American history.[42][43] International Day of Nuclear Disarmament protests were held on June 20, 1983, at 50 sites across the United States.[44][45] In 1986, hundreds of people walked from Los Angeles to Washington, D.C., in the Great Peace March for Global Nuclear Disarmament.[46] There were many Nevada Desert Experience protests and peace camps at the Nevada Test Site during the 1980s and 1990s.[47][48]

On May 1, 2005, forty thousand anti-nuclear/anti-war protesters marched past the United Nations in New York, 60 years after the atomic bombings of Hiroshima and Nagasaki.[49][50] This was the largest anti-nuclear rally in the U.S. for several decades.[51]
Discovery and development

    1896 – Henri Becquerel notices that uranium gives off an unknown radiation which fogs photographic film.[52]
    1898 – Marie Curie discovers thorium gives off a similar radiation. She calls it radioactivity.[52]
    1903 – Ernest Rutherford begins to speak of the possibility of atomic energy.[53]
    1905 – Albert Einstein formulates the special theory of relativity which explains the phenomenon of radioactivity as mass–energy equivalence.[53]
    1911 – Ernest Rutherford formulates a theory about the structure of the atomic nucleus based on his experiments with alpha particles.[54]
    1930 – Otto Hahn writes an article with his prophecy "The Atom – the source of power of the future?" in the newspaper Deutsche Allgemeine Zeitung.[55]
    1932 – James Chadwick discovers the neutron.[56]
    1934 – Enrico Fermi begins bombarding uranium with slow neutrons; Ida Noddack predicts that uranium nuclei will break up under bombardment by fast neutrons. (Fermi does not pursue this because his theoretical mathematical predictions do not predict this result.)
    17 December 1938 – Otto Hahn and his assistant Fritz Strassmann by bombarding uranium with fast neutrons discover experimentally and prove nuclear fission with radiochemical methods.[57]
    6 January 1939 – Otto Hahn and Fritz Strassmann publish the first paper about their discovery in the German review Die Naturwissenschaften.[58]
    10 February 1939 – Otto Hahn and Fritz Strassmann publish the second paper about their discovery in Die Naturwissenschaften, using for the first time the term uranium fission, and predict the liberation of additional neutrons in the fission process.[59]
    11 February 1939 – Lise Meitner and her nephew Otto Frisch publish the first theoretical interpretation of nuclear fission, a term coined by Frisch, in the British review Nature.[60]
    11 October 1939 – The Einstein–Szilárd letter, suggesting that the United States construct a nuclear weapon, is delivered to President Franklin Delano Roosevelt. Roosevelt signs the order to build a nuclear weapon on 6 December 1941.[61]
    26 February 1941 – Discovery of plutonium by Glenn Seaborg and Arthur Wahl.
    September 1942 – General Leslie Groves takes charge of the Manhattan Project.
    2 December 1942 – Under the leadership of Fermi, the first self-sustaining nuclear chain reaction takes place in Chicago, United States, at the Chicago Pile-1.

Nuclear arms deployment

    16 July 1945 – The first nuclear weapon is detonated in a plutonium form near Socorro, New Mexico, United States in the successful Trinity test.
    6 August 1945 – The second nuclear weapon is detonated and the first to be deployed in combat when the Little Boy uranium bomb was dropped on the Japanese city of Hiroshima.
    9 August 1945 – The third nuclear weapon is detonated and the second (and last so far) to be deployed in combat, when the Fat Man plutonium bomb was dropped on the Japanese city of Nagasaki.
    5 September 1951 – The U.S. Air Force announces the awarding of a contract for the development of an "atomic-powered airplane".
    1 November 1952 – The first hydrogen bomb, largely designed by Edward Teller, is tested at Eniwetok Atoll.

"Atoms for Peace"

    8 December 1953 – U.S. President Dwight D. Eisenhower, in a speech before the UN General Assembly, announces the Atoms for Peace program to provide nuclear power to developing countries.
    21 January 1954 – The first nuclear submarine, the USS Nautilus (SSN-571), is launched into the Thames River near New London, Connecticut, United States.
    27 June 1954 – The first nuclear power plant begins operation near Obninsk, USSR.
    17 September 1954 – Lewis L. Strauss, chairman of the U.S. Atomic Energy Commission, states that nuclear energy will be "too cheap to meter".[62]
    29 September 1957 – 200+ people die as a result of the Mayak nuclear waste storage tank explosion in Chelyabinsk, Soviet Union. Two hundred and seventy thousand people were exposed to dangerous radiation levels.[63]
    1957 to 1959 – The Soviet Union and the United States both begin deployment of ICBMs.
    1958 – The neutron bomb, a special type of tactical nuclear weapon developed specifically to release a relatively large portion of its energy as energetic neutron radiation, is invented by Samuel Cohen of the Lawrence Livermore National Laboratory.
    1960 – Herman Kahn publishes the book On Thermonuclear War.
    November 1961 – In Fortune magazine, an article by Gilbert Burck appears outlining the plans of Nelson Rockefeller, Edward Teller, Herman Kahn, and Chet Holifield for the construction of an enormous network of concrete-lined underground fallout shelters throughout the United States sufficient to shelter millions of people to serve as a refuge in case of nuclear war.[64]
    12 October 1962 to 28 October 1962 – The Cuban Missile Crisis brings Earth to the brink of nuclear war.
    10 October 1963 – The Partial Test Ban Treaty goes into effect, banning above ground nuclear testing.
    26 August 1966 – The first pebble bed reactor goes on line in Jülich, West Germany (some nuclear engineers think that the pebble bed reactor design can be adapted for atomic powered vehicles).
    27 January 1967–The Outer Space Treaty bans the deployment of nuclear weapons in space.
    1968 – Physicist Freeman J. Dyson proposes building a space ark using an Orion nuclear-pulse propulsion rocket powered by hydrogen bombs. The rocket would have a payload of 50,000 tonnes, a crew of 240, and be able to travel at 3.3% of the speed of light and would reach Alpha Centauri in 133 years. It would cost $367 billion in 1968 dollars, which is the equivalent of about $2.2 trillion in 2012 dollars.[65][66]

Three Mile Island and Chernobyl

    28 March 1979 – The Three Mile Island accident occurs at the Three Mile Island Nuclear Generating Station near Harrisburg, Pennsylvania, dampening enthusiasm in the United States for nuclear power, and causing a dramatic shift in the growth of nuclear power in the United States.
    6 May 1979 – A large anti-nuclear demonstration was held in Washington, D.C., when 125,000 people[38] including the Governor of California, attended a march and rally against nuclear power.[39]
    23 September 1979 – In New York City, almost 200,000 people attended a protest against nuclear power.[40]
    26 April 1986 – The Chernobyl disaster occurs at the Chernobyl Nuclear Power Plant near Pripyat, Ukraine, USSR, reducing enthusiasm for nuclear power among many people in the world, and causing a dramatic shift in the growth of nuclear power.

Nuclear arms reduction

    8 December 1987 – The Intermediate-Range Nuclear Forces Treaty is signed in Washington 1987. Ronald Reagan and Mikhail Gorbachev agreed after negotiations following the October 11–12, 1986 Reykjavík Summit to go farther than a nuclear freeze – they agreed to reduce nuclear arsenals. IRBMs and SRBMs were eliminated.
    1990–Present – Nuclear power is the primary source of electricity in France. Throughout the 1990s and 2000s (decade), France produces over three quarters of its power from nuclear sources (78.8%), the highest percentage in the world during these 2 decades.[67][68]
    31 July 1991 – As the Cold War ends, the Start I treaty is signed by the United States and the Soviet Union, reducing the deployed nuclear warheads of each side to no more than 6,000 each.
    1993 – The Megatons to Megawatts Program is agreed upon by Russia and the United States and begins to be implemented in 1995. When it is completed in 2013, five hundred tonnes of uranium derived from 20,000 nuclear warheads from Russia will have been converted from weapons-grade to reactor-grade uranium and used in United States nuclear plants to generate electricity. This has provided 10% of the electrical power of the U.S. (50% of its nuclear power) during the 1995–2013 period.[69]
    2006 – Patrick Moore, an early member of Greenpeace and environmentalists such as Stewart Brand[70] suggest the deployment of more advanced nuclear power technology for electric power generation (such as pebble-bed reactors) to combat global warming.
    21 November 2006 – Implementation of the ITER fusion power reactor project near Cadarache, France is begun. Construction is to be completed in 2016 with the hope that the research conducted there will allow the introduction of practical commercial fusion power plants by 2050.
    2006–2009 – A number of nuclear engineers begin to suggest that, to combat global warming, it would be more efficient to build nuclear reactors that operate on the thorium cycle.[71][72]
    8 April 2010 – The New START treaty is signed by the United States and Russia in Prague. It mandates the eventual reduction by both sides to no more than 1,550 deployed strategic nuclear weapons each.

Fukushima

    11 March 2011 – A tsunami resulting from the Tōhoku earthquake causes severe damage to the Fukushima I nuclear power plant in Japan, causing partial nuclear meltdowns in several of the reactors. Many international leaders express concerns about the accidents and some countries re-evaluate existing nuclear energy programs. On 11 April 2011 this event was rated level 7 on the International Nuclear Event Scale by the Japanese government's nuclear safety agency.[73][74] Other than the Chernobyl disaster, it is the only nuclear accident to be rated at level 7, the highest level on the scale, and caused the most dramatic shift in nuclear policy to date.

Influence on popular culture
Cover of Atomic War number one, November, 1952

    1895 – Robert Cromie published The Crack of Doom (1895), which gives a plausible description of an atomic bomb.[75]
    1914 – H. G. Wells publishes science fiction novel The World Set Free, describing how scientists discover potentially limitless energy locked inside of atoms, and describes the deployment of atomic bombs.
    October 1939 – Amazing Stories published a painting of an atomic power plant by science fiction artist Howard M. Duffin on its back cover.[76]
    1940 – Robert A. Heinlein published the science fiction short story "Blowups Happen" about an accident at an atomic power plant.
    1940 – Robert A. Heinlein published the short story "Solution Unsatisfactory" which posits radioactive dust as a weapon that the U.S. develops in a crash program to end World War II.
    1945 – The Atomaton chapter of Sweet Adelines was formed by Edna Mae Anderson after she and her sister singers decided, "We have an atom of an idea and a ton of energy." The name also recognized the Atomic Age—just three days after Sweet Adelines was founded (July 13, 1945), the first nuclear bomb, Trinity, was detonated.
    5 July 1946 – The bikini swimsuit, named after Bikini Atoll, where an atomic bomb test called Operation Crossroads had taken place a few days earlier on 1 July 1946, was introduced at a fashion show in Paris.[77]
    1946 – Virgil Jordan published Manifesto for the Atomic Age, Rutgers University Press.
    1948 – Voltolino Fontani published : Manifesto of Eaismo, Società Editrice Italiana, Livorno.
    1951 – Isaac Asimov's science fiction novel Foundation (consisting mostly of stories originally published between 1942 and 1944) is published. In this novel, the first novel of the Foundation series, the Foundation on Terminus, guided by Psychohistory, invents a religion called Scientism which has an atomic priesthood based on the scientific use of atomic energy to pacify, impress, and control the masses of the barbarian inhabitants of the stellar kingdoms surrounding Terminus as the Galactic Empire breaks up.
    1954 – Them!, a science fiction film about humanity's battle with a nest of giant mutant ants, was one of the first of the "nuclear monster" movies.
    1954 – The science fiction film Godzilla was released, about an iconic fictional monster that is a gigantic irradiated dinosaur, transformed from the fallout of an H-Bomb test.
    23 January 1957 – Walt Disney Productions released the film Our Friend the Atom describing the marvelous benefits of atomic power. As well as being presented on the TV show Disneyland, this film was also shown to almost all baby boomers in their public school auditoriums or their science classes and was instrumental in creating within that generation a mostly favorable attitude toward nuclear power.[78]
    1957–The current leader of the Nizari sect of Ismaili Shia Islam, Shah Karim al-Husayni, the Aga Khan IV, acceded to the Imamship at age 20. One of the titles bestowed on him by his followers was his designation as The Imam of the Atomic Age.[79]
    1958 – The Atomium was constructed for the Brussels World's Fair.
    1958 –The Peace Symbol was designed for the British nuclear disarmament movement by Gerald Holtom.[80]
    1959 – The popular film On the Beach shows the last remnants of humanity in Australia awaiting the end of the human race after a nuclear war.
    1959 – The novel Alas, Babylon focuses on a community in Florida after a nuclear apocalypse.
    23 September 1962 – The Jetsons animated TV series began on ABC, attempting to humorously depict life in the fully developed Atomic Age of 2062.
    1964 – The film Dr. Strangelove, or: How I Learned to Stop Worrying and Love the Bomb (aka Dr. Strangelove), a black comedy directed by Stanley Kubrick about an accidentally triggered nuclear war, was released.
    1970 – The underground comic book Hydrogen Bomb Funnies is published.[81]
    1982 – The documentary film The Atomic Cafe, detailing society's attitudes toward the atomic bomb in the early Atomic Age, debuted to widespread acclaim.
    1982 – Jonathan Schell's book Fate of the Earth, about the consequences of nuclear war, is published. The book "forces even the most reluctant person to confront the unthinkable: the destruction of humanity and possibly most life on Earth". The best-selling book instigated the nuclear freeze movement.
    1983 – The cartoon book The End by cartoonist Skip Morrow, about the lighter side of nuclear apocalypse, is published.[82]
    20 November 1983 – The Day After, an American television movie was aired on the ABC Television Network, and also in the Soviet Union. The film portrays a fictional nuclear war between the United States/NATO and the Soviet Union/Warsaw Pact. After the film, a panel discussion is presented in which Carl Sagan suggested that we need to reduce the number of nuclear weapons as a matter of "planetary hygiene". This film was seen by over 100,000,000 people and was instrumental in greatly increasing public support for the nuclear freeze movement.
    1985 – 1990 in the Film series Back to the Future, references to the Atomic Age and uses of Nuclear Energy are broadly explored; for example the use of Plutonium in the time machine, the concept of "Mr. Fusion" (a futuristic small scale fusion reactor for domestic use that can use garbage as fuel) and references to the common 1950s conceptions of the Atomic Age.
    17 December 1989 – The animated cartoon series The Simpsons debuted on television on the Fox Network, providing a humorous look at the Atomic Age, since the main protagonist, Homer Simpson, is employed as an operator at a nuclear power plant.
    Beginning in the 1990s, nostalgia stores that specialize in selling modern furniture or artifacts from the 1950s often have included the words Atomic Age as part of the name of, or advertising for the store.
    1997 – The first installment of the Fallout series, a video game series set in an alternate earth post-apocalyptic world, is released by Black Isle Studios/Interplay. Both the visual style and many Inseries references deal with the atomic age optimism towards nuclear power and the stark contrast it creates to the post-apocalyptic wasteland.
    1999 – Blast from the Past was released. It is a romantic comedy film about a nuclear physicist, his wife, and son that enter a well-equipped spacious fallout shelter during the 1962 Cuban Missile Crisis. They do not emerge until 35 years later, in 1997. The film shows their reaction to contemporary society.
    1999 – Larry Niven published the science fiction novel Rainbow Mars. In this novel, in the 31st century, Earth uses a dating system based on what is called the Atomic Era, in which the year one is 1945. Thus, what we call the year 3053 A.D. (the year the novel begins) is in the novel the year 1108 A.E.
    Autumn 2007 – Bachelor Pad Magazine, "The New Digest of Atomic Age Culture" began publication.[83]
    23 November 2010 – Civilization V, the fifth game in a long-running popular turn-based strategy game series, was released. One of the many eras in the game is the Atomic era where players can make ICBMs, nuclear reactors and submarines and even sci-fi style giant nuclear-powered robots.
    25 May 2018 - Parmaanu, an Indian movie regarding the Second Pokhran Project was released.

See also

    Atomic Age (comics)
    Atomic Age (design)
    Eaismo
    Googie architecture
    Information Age
    Jet Age
    Machine Age
    Mid-century modern
    Nuclear art
    Nuclear electric rocket
    Nuclear power debate
    Nuclear weapons in popular culture
    Retrofuturism
    Space Age
    Space age pop
    Timeline of nuclear weapons development

References

Holl, Jack (1997). Argonne National Laboratory, 1946–96. University of Illinois Press. ISBN 978-0-252-02341-5.
Benjamin K. Sovacool (2011). Contesting the Future of Nuclear Power: A Critical Global Assessment of Atomic Energy, World Scientific, p. 259.
John Byrne and Steven M. Hoffman (1996). Governing the Atom: The Politics of Risk, Transaction Publishers, p. 99.
Stephanie Cooke (2009). In Mortal Hands: A Cautionary History of the Nuclear Age, Black Inc., p. 283.
"Nuclear Follies", February 11, 1985, cover story in Forbes magazine.
Zia Mian & Alexander Glaser (June 2006). "Life in a Nuclear Powered Crowd" (PDF). INESAP Information Bulletin No.26.
The two words atomic and nuclear are synonymous in the context of atomic power and weapons. The atom consists of a nucleus and one or more electrons. All atomic reactions involve changing one atom into another by changing the nucleus. Historically atomic power is an older term, and nuclear power is newer.President Eisenhower's "Atoms for Peace" Speech
Benjamin K. Sovacool, The National Politics of Nuclear Power, Routledge, p. 68.
Laurence, William L. (1945-09-26). "Drama of the Atomic Bomb Found Climax in July 16 Test". The New York Times. ISBN 9781434405302.
Gonzalez, Juan (9 August 2005). "ATOMIC TRUTHS PLAGUE PRIZE COVERUP". New York Daily News. "Laurence, the only journalist the U.S. government permitted to witness the bombing of Nagasaki, is also the reporter who first coined the term "Atomic Age." ... Nagasaki, Laurence launched his Times series, where he extolled the bomb and sought to discredit other accounts about effects of the bomb."[permanent dead link]
On this incident, see David Holloway, Stalin and the Bomb: The Soviet Union and Atomic Energy, 1939–1956 (New Haven, CT: Yale University Press, 1994): 59–60.
John Byrne and Steven M. Hoffman (1996). Governing the Atom: The Politics of Risk, Transaction Publishers, p. 85.
Simon, Steven; Bouville, Andre (2006). "Fallout from Nuclear Weapons Tests and Cancer Risks". American Scientist. AmericanScientist.org. Retrieved 12 September 2020. "Exposures 50 years ago still have health implications today that will continue into the future."
John Byrne and Steven M. Hoffman (1996). Governing the Atom: The Politics of Risk, Transaction Publishers, pp. 50–51.
Benjamin K. Sovacool (2011). Contesting the Future of Nuclear Power: A Critical Global Assessment of Atomic Energy, World Scientific, p. 266.
"Too Cheap to Meter?". Canadian Nuclear Society. 2007-03-30. Archived from the original on 2007-02-04. Retrieved 2007-06-17.
John Byrne and Steven M. Hoffman (1996). Governing the Atom: The Politics of Risk, Transaction Publishers, p. 55.
Nichols, Kenneth David (1987). The Road to Trinity: A Personal Account of How America's Nuclear Policies Were Made. New York: William Morrow and Company. p. 344. ISBN 978-0-688-06910-0. OCLC 15223648.
Kelly, Kate; ContributorWriter; publisher; www.americacomesalive.com (26 October 2010). "Remember Duck and Cover? What Safety Experts May Have Been Thinking". HuffPost.
"Atomic Tourism in Nevada". pbs.org. Retrieved 23 July 2020.
Bosker, Gideon (1998). Atomic Cocktails. San Francisco: Chronicle Books. p. 8.
Loria, Kevin (August 17, 2017). "Nuclear explosions from the past are still causing cancer and health problems today". Business Insider. Retrieved 24 October 2018.
Charles Perrow (September–October 2013). "Nuclear denial: From Hiroshima to Fukushima". Bulletin of the Atomic Scientists.
Benjamin K. Sovacool (2011). Contesting the Future of Nuclear Power: A Critical Global Assessment of Atomic Energy, World Scientific, pp. 171–172.
John Byrne and Steven M. Hoffman (1996). Governing the Atom: The Politics of Risk, Transaction Publishers, pp. 20–21.
Congressional Research report, Nuclear Energy: Overview of Congressional Issues, CRS Report, 2015.
"Nuclear Follies", a February 11, 1985, cover story in Forbes magazine.
Andy Stirling (2014). "Transforming power". Energy Research and Social Science. 1: 83–95. doi:10.1016/j.erss.2014.02.001.
Tomoko Yamazaki & Shunichi Ozasa (June 27, 2011). "Fukushima Retiree Leads Anti-Nuclear Shareholders at Tepco Annual Meeting". Bloomberg.
Jacobson, Mark Z. & Delucchi, Mark A. (2010). "Providing all Global Energy with Wind, Water, and Solar Power, Part I: Technologies, Energy Resources, Quantities and Areas of Infrastructure, and Materials" (PDF). Energy Policy. p. 6.
Hugh Gusterson (16 March 2011). "The lessons of Fukushima". Bulletin of the Atomic Scientists. Archived from the original on 6 June 2013.
James Paton (April 4, 2011). "Fukushima Crisis Worse for Atomic Power Than Chernobyl, UBS Says". Bloomberg Businessweek. Archived from the original on 2011-05-15.
World Energy Outlook 2007 pp 74,360
Benjamin K. Sovacool (January 2011). "Second Thoughts About Nuclear Power" (PDF). National University of Singapore. p. 8. Archived from the original (PDF) on 2013-01-16. Retrieved 2012-12-04.
Massachusetts Institute of Technology (2003). "The Future of Nuclear Power" (PDF). p. 48.
"Japan Plans To Abandon Nuclear Power". www.countercurrents.org.
"The history behind Germany's nuclear phase-out". Clean Energy Wire. Retrieved 2015-11-20.
"D.C. Anti-Nuke Rally Draws 125,000", WRL News, July–August 1979, War Resisters League, New York, NY
Giugni, Marco (2004). Social Protest and Policy Change: Ecology, Antinuclear, and Peace Movements in Comparative Perspective. Rowman & Littlefield. p. 45. ISBN 978-0-7425-1827-8.
Herman, Robin (September 24, 1979). "Nearly 200,000 Rally to Protest Nuclear Energy". The New York Times. p. B1.
Williams, Estha. Nuke Fight Nears Decisive Moment Archived 2014-11-29 at the Wayback Machine Valley Advocate, August 28, 2008.
Jonathan Schell. The Spirit of June 12 The Nation, July 2, 2007.
1982 – a million people march in New York City Archived 2008-05-16 at the Wayback Machine
Klehr, Harvey (1988). Far Left of Center: The American Radical Left Today. Transaction Publishers. p. 150. ISBN 978-1-4128-2343-2.
1,400 Anti-nuclear protesters arrested Miami Herald, June 21, 1983.
Hundreds of Marchers Hit Washington in Finale of Nationwaide Peace March Gainesville Sun, November 16, 1986.
Robert Lindsey. 438 Protesters are Arrested at Nevada Nuclear Test Site The New York Times, February 6, 1987.
493 Arrested at Nevada Nuclear Test Site The New York Times, April 20, 1992.
Lance Murdoch. Pictures: New York MayDay anti-nuke/war march Archived 2011-07-28 at the Wayback Machine IndyMedia, 2 may 2005.
Anti-Nuke Protests in New York Archived 2010-10-31 at the Wayback Machine Fox News, May 2, 2005.
Lawrence S. Wittner. Nuclear Disarmament Activism in Asia and the Pacific, 1971–1996 The Asia-Pacific Journal, Vol. 25-5-09, June 22, 2009.
Asimov, Isaac Atom: Journey Across the Sub-Atomic Cosmos New York:1992 Plume Page 92
Asimov, Isaac Atom: Journey Across the Sub-Atomic Cosmos New York:1992 Plume Page 125
Asimov, Isaac Atom: Journey Across the Sub-Atomic Cosmos New York:1992 Plume Page 95
Klaus Hoffmann: Otto Hahn – Achievement and Responsibility. Springer Verlag, Inc., New York-Berlin-London-Tokyo etc. 2001. p. 81. ISBN 0-387-95057-5.
Asimov, Isaac Atom: Journey Across the Sub-Atomic Cosmos New York:1992 Plume Page 154
Otto Hahn: A Scientific Autobiography. Charles Scribner's, New York 1966.
Klaus Hoffmann: Otto Hahn – Achievement and Responsibility. Springer Verlag, Inc., New York-Berlin-Barcelona-Hong Kong-Milan-Paris-Singapore-Tokyo 2001. ISBN 0-387-95057-5.
Lise Meitner: Erinnerungen an Otto Hahn. S. Hirzel, Stuttgart 2005. ISBN 3-7776-1380-0.
Lise Meitner: Otto Hahn – the discoverer of nuclear fission. In: Forscher und Wissenschaftler im heutigen Europa. Stalling, Oldenburg-Hamburg 1955.
Asimov, Isaac Atom: Journey Across the Sub-Atomic Cosmos New York:1992 Plume Page 182
Too Cheap to Meter?: Archived February 4, 2007, at the Wayback Machine
Samuel Upton Newtan (2007). Nuclear War I and Other Major Nuclear Disasters of the 20th Century. AuthorHouse. pp. 237–240. ISBN 978-1-4259-8512-7.
Fortune magazine November 1961 Pages 112–115 et al
"Nuclear Pulse Propulsion: A Historical Review" by Martin and Bond, Journal of the British Interplanetary Society, 1979 (p.301)
Interstellar Transport Physics Today October 1968
EnerPub (2007-06-08). "France: Energy profile". Spero News. Archived from the original on 2007-10-04. Retrieved 2007-08-25.
World Nuclear Association (August 2007). "Nuclear Power in France". Archived from the original on 7 August 2007. Retrieved 2007-08-25. (alternate copy Archived 2008-03-03 at the Wayback Machine)
USEC Progress Report on Megatons to Megawatts Program: Archived October 8, 2012, at the Wayback Machine
Tierney, John (2007-02-27). "Findings; An Early Environmentalist, Embracing New 'Heresies'". The New York Times. Retrieved 2008-03-23.
"Scientist Urges Switch to Thorium". Archived from the original on 2010-03-28. Retrieved 2010-01-20.
Martin, Richard (21 December 2009). "Uranium Is So Last Century — Enter Thorium, the New Green Nuke" – via www.wired.com.
"Japan to raise Fukushima crisis level to worst". Archived from the original on 12 April 2011. Retrieved 12 April 2011.
"Japan raises nuclear crisis to same level as Chernobyl". Reuters. 12 April 2011.
H. G. Wells And The Atom Bomb – Trove
Brosterman, Norman Out of Time: Designs for the Twentieth Century Future New York:2000 Henry N. Abrams, Inc. Page 79 shows Howard M. Duffin's 1939 painting of his impression of what an atomic power plant would look like; see "The Atomic Age" pages 78–83
"The Bikini Turns 60". Archived from the original on 2016-09-09. Retrieved 2008-02-21.
Animation World Magazine Issue 3.1, April 1998 — The Making of Our Friend the Atom
"Aly Khan's Son, 20, New Aga Khan", The New York Times, 13 July 1957, p. 1
Breyer, Melissa (2010-09-21). "Where did the peace sign come from?". Shine. Yahoo!. Archived from the original on 4 October 2010. Retrieved 2010-09-30.
Image of the cover of the 1970 underground comic book Hydrogen Bomb Funnies:
"The End". Archived from the original on 2009-11-09. Retrieved 2009-08-03.

    "The Digest of Atomic Age Culture". Bachelor Pad Magazine.

Further reading

    "Presidency in the Nuclear Age", conference and forum at the JFK Library, Boston, October 12, 2009. Four panels: "The Race to Build the Bomb and the Decision to Use It", "Cuban Missile Crisis and the First Nuclear Test Ban Treaty", "The Cold War and the Nuclear Arms Race", and "Nuclear Weapons, Terrorism, and the Presidency".

External links
	Wikimedia Commons has media related to Atomic Age.
	Look up atomic age in Wiktionary, the free dictionary.

    Annotated bibliography on the Nuclear Age at the Alsos Digital Library for Nuclear Issues.
    Atomic Age Alliance, a volunteer group dedicated to preserving Atomic Age culture and architecture.
    The Nation in the Nuclear Age, a slideshow by The Nation.

    vte

History of technology
Categories:

    20th centuryHistorical erasNuclear historyNuclear warfare

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    Bahasa Indonesia
    Italiano
    日本語
    Português
    中文

Edit links

    This page was last edited on 9 May 2021, at 14:05 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki



Go to edit mode in this tiddler (use the {{$:/core/images/edit-button}} button above), and after one of the paragraphs, type `[[dav`. You should see the autocomplete popup with the tiddler `Dave Gifford` listed. Hit enter, which will accept the autocomplete suggestion and will close the link with brackets. 

<span class="indent1">//Note that when the popup gives you more than one tiddler to choose from, you will need to use the down arrow key on your keyboard to navigate to the other entries listed in the autocomplete popup. Once the tiddler you want to select is highlighted, you can hit enter, and that tiddler should be the one to appear in the link.<br><br>

Note that autocomplete does not work in iOS or other contexts where there is no down arrow key. At the end of the tutorial we will give instructions on how to disable autocomplete for those contexts.//</span>

Go back to viewing mode, click the link you created to the `Dave Gifford` tiddler, and follow the instructions in that tiddler.

When you are done here, return to [[Welcome to Stroll]] to continue the tutorial.


! Bioethics

!! https://en.wikipedia.org/wiki/Bioethics

From Wikipedia, the free encyclopedia

This article is about the discipline. For the journal, see Bioethics (journal).

Bioethics is the study of the ethical issues emerging from advances in biology and medicine. It is also moral discernment as it relates to medical policy and practice. Bioethics are concerned with the ethical questions that arise in the relationships among life sciences, biotechnology, medicine and medical ethics, politics, law, theology and philosophy.[1] It includes the study of values relating to primary care and other branches of medicine ("the ethics of the ordinary"). Ethics also relates to many other sciences outside the realm of biological sciences.
Contents

    1 Etymology
    2 Purpose and scope
    3 Principles
    4 Medical ethics
    5 Perspectives and methodology
    6 Islamic bioethics
    7 Feminist bioethics
    8 Ethical issues in gene therapy
    9 Education
    10 Criticism
    11 Issues
    12 See also
    13 References
    14 External links

Etymology

The term Bioethics (Greek bios, life; ethos, behavior) was coined in 1926 by Fritz Jahr in an article about a "bioethical imperative" regarding the use of animals and plants in scientific research.[2] In 1970, the American biochemist Van Rensselaer Potter used the term to describe the relationship between the biosphere and a growing human population. Potter's work laid the foundation for global ethics, a discipline centered around the link between biology, ecology, medicine, and human values.[3][4] Sargent Shriver, the spouse of Eunice Kennedy Shriver, claimed that he had invented the word "bioethics" in the living room of his home in Bethesda, Maryland in 1970. He stated that he thought of the word after returning from a discussion earlier that evening at Georgetown University, where he discussed with others a possible Kennedy family sponsorship of an institute focused around the "application of moral philosophy to concrete medical dilemmas."[5]
Purpose and scope

The field of bioethics has addressed a broad swathe of human inquiry; ranging from debates over the boundaries of life (e.g. abortion, euthanasia), surrogacy, the allocation of scarce health care resources (e.g. organ donation, health care rationing), to the right to refuse medical care for religious or cultural reasons. Bioethicists often disagree among themselves over the precise limits of their discipline, debating whether the field should concern itself with the ethical evaluation of all questions involving biology and medicine, or only a subset of these questions.[6] Some bioethicists would narrow ethical evaluation only to the morality of medical treatments or technological innovations, and the timing of medical treatment of humans. Others would broaden the scope of ethical evaluation to include the morality of all actions that might help or harm organisms capable of feeling fear.

The scope of bioethics can expand with biotechnology, including cloning, gene therapy, life extension, human genetic engineering, astroethics and life in space,[7][8] and manipulation of basic biology through altered DNA, XNA and proteins.[9] These developments will affect future evolution, and may require new principles that address life at its core, such as biotic ethics that values life itself at its basic biological processes and structures, and seeks their propagation.[10] Panbiotic seeks to secure and expand life in the galaxy.

Historian Yuval Noah Harari sees an existential threat in an arms race in artificial intelligence and bioengineering and he expressed the need for close co-operation between nations to solve the threats by technological disruption. Harari said AI and biotechnology could destroy what it means to be human.[11]
Principles
Hippocrates Refusing the Gifts of Artaxerxes by Anne-Louis Girodet-Trioson

One of the first areas addressed by modern bioethicists was that of human experimentation. The National Commission for the Protection of Human Subjects of Biomedical and Behavioral Research was initially established in 1974 to identify the basic ethical principles that should underlie the conduct of biomedical and behavioral research involving human subjects. However, the fundamental principles announced in the Belmont Report (1979)—namely, respect for persons, beneficence and justice—have influenced the thinking of bioethicists across a wide range of issues. Others have added non-maleficence, human dignity, and the sanctity of life to this list of cardinal values. Overall, the Belmont Report has guided research in a direction focused on protecting vulnerable subjects as well as pushing for transparency between the researcher and the subject. Research has flourished within the past 40 years and due to the advance in technology, it is thought that human subjects have outgrown the Belmont Report and the need for revision is desired.[12]

Another important principle of bioethics is its placement of value on discussion and presentation. Numerous discussion based bioethics groups exist in universities across the United States to champion exactly such goals. Examples include the Ohio State Bioethics Society[13] and the Bioethics Society of Cornell.[14] Professional level versions of these organizations also exist.

Many bioethicists, especially medical scholars, accord the highest priority to autonomy. They believe that each patient should determine which course of action they consider most in line with their beliefs. In other words, the patient should always have the freedom to choose their own treatment .[15]
Medical ethics
Main article: Medical ethics

Ethics affects medical decisions made by healthcare providers and patients.[16] Medical ethics is the study of moral values and judgments as they apply to medicine. The four main moral commitments are respect for autonomy, beneficence, nonmaleficence, and justice. Using these four principles and thinking about what the physicians’ specific concern is for their scope of practice can help physicians make moral decisions.[17] As a scholarly discipline, medical ethics encompasses its practical application in clinical settings as well as work on its history, philosophy, theology, and sociology.

Medical ethics tends to be understood narrowly as an applied professional ethics; whereas bioethics has a more expansive application, touching upon the philosophy of science and issues of biotechnology. The two fields often overlap, and the distinction is more so a matter of style than professional consensus. Medical ethics shares many principles with other branches of healthcare ethics, such as nursing ethics. A bioethicist assists the health care and research community in examining moral issues involved in our understanding of life and death, and resolving ethical dilemmas in medicine and science. Examples of this would be the topic of equality in medicine, the intersection of cultural practices and medical care, and issues of bioterrorism.[18]
Perspectives and methodology

Bioethicists come from a wide variety of the backgrounds and have training in the diverse array of disciplines. The field contains individuals trained in philosophy such as H. Tristram Engelhardt, Jr. of Rice University, Baruch Brody of Rice University, Peter Singer of Princeton University, Daniel Callahan of the Hastings Center, and Daniel Brock of Harvard University; medically trained clinician ethicists such as Mark Siegler of the University of Chicago and Joseph Fins of Cornell University; lawyers such as Nancy Dubler of Albert Einstein College of Medicine or Jerry Menikoff of the federal Office of Human Research Protections; political scientists like Francis Fukuyama; religious studies scholars including James Childress; and theologians like Lisa Sowle Cahill and Stanley Hauerwas. The field, formerly dominated by formally trained philosophers, has become increasingly interdisciplinary, with some critics even claiming that the methods of analytic philosophy have had a negative effect on the field's development. Leading journals in the field include The Journal of Medicine and Philosophy, The Hastings Center Report, the American Journal of Bioethics, the Journal of Medical Ethics, Bioethics, the Kennedy Institute of Ethics Journal and the Cambridge Quarterly of Healthcare Ethics. Bioethics has also benefited from the process philosophy developed by Alfred North Whitehead.[19] Another discipline that discusses bioethics is the field of feminism; The International Journal of Feminist Approaches to Bioethics has played an important role in organizing and legitimizing feminist work in bioethics.[20]

Many religious communities have their own histories of inquiry into bioethical issues and have developed rules and guidelines on how to deal with these issues from within the viewpoint of their respective faiths. The Jewish, Christian and Muslim faiths have each developed a considerable body of literature on these matters.[21] In the case of many non-Western cultures, a strict separation of religion from philosophy does not exist. In many Asian cultures, for example, there is a lively discussion on bioethical issues. Buddhist bioethics, in general, is characterized by a naturalistic outlook that leads to a rationalistic, pragmatic approach. Buddhist bioethicists include Damien Keown. In India, Vandana Shiva is a leading bioethicist speaking from the Hindu tradition.

In Africa, and partly also in Latin America, the debate on bioethics frequently focuses on its practical relevance in the context of underdevelopment and geopolitical power relations.[22] In Africa, their bioethical approach is influenced by and similar to Western bioethics due to the colonization of many African countries.[23] Some African bioethicists are calling for a shift in bioethics that utilizes indigenous African philosophy rather than western philosophy. Some African bioethicists also believe that Africans will be more likely to accept a bioethical approach grounded in their own culture, as well as empower African people.[23][vague]

Masahiro Morioka argues that in Japan the bioethics movement was first launched by disability activists and feminists in the early 1970s, while academic bioethics began in the mid-1980s. During this period, unique philosophical discussions on brain death and disability appeared both in the academy and journalism.[24] In Chinese culture and bioethics, there is not as much of an emphasis on autonomy as opposed to the heavy emphasis placed on autonomy in Western bioethics. Community, social values, and family are all heavily valued in Chinese culture, and contribute to the lack of emphasis on autonomy in Chinese bioethics. The Chinese believe that the family, community, and individual are all interdependent of each other, so it is common for the family unit to collectively make decisions regarding healthcare and medical decisions for a loved one, instead of an individual making an independent decision for his or her self.[25]

Some argue that spirituality and understanding one another as spiritual beings and moral agents is an important aspect of bioethics, and that spirituality and bioethics are heavily intertwined with one another. As a healthcare provider, it is important to know and understand varying world views and religious beliefs. Having this knowledge and understanding can empower healthcare providers with the ability to better treat and serve their patients. Developing a connection and understanding of a patient's moral agent helps enhance the care provided to the patient. Without this connection or understanding, patients can be at risk of becoming "faceless units of work" and being looked at as a "set of medical conditions" as opposed to the storied and spiritual beings that they are.[26]
Islamic bioethics

Bioethics in the realm of Islam differs from Western bioethics, but they share some similar perspectives viewpoints as well. Western bioethics is focused around rights, especially individual rights. Islamic bioethics focuses more on religious duties and obligations, such as seeking treatment and preserving life.[27] Islamic bioethics is heavily influenced and connected to the teachings of the Qur'an as well as the teachings of Prophet Muhammad. These influences essentially make it an extension of Shariah or Islamic Law. In Islamic Bioethics, passages from the Qur'an are often used to validate various medical practices. For example, a passage from the Qur'an states "whosoever killeth a human being … it shall be as if he had killed all humankind, and whosoever saveth the life of one, it shall be as if he saved the life of all humankind." This excerpt can be used to encourage using medicine and medical practices to save lives, but can also be looked at as a protest against euthanasia and assisted suicide. A high value and worth is placed on human life in Islam, and in turn human life is deeply valued in the practice of Islamic bioethics as well. Muslims believe all human life, even one of poor quality, needs to be given appreciation and must be cared for and conserved.[28]

In an effort to react to new technological and medical advancements, informed Islamic jurists regularly will hold conferences to discuss new bioethical issues and come to an agreement on where they stand on the issue from an Islamic perspective. This allows Islamic bioethics to stay pliable and responsive to new advancements in medicine.[29] The standpoints taken by Islamic jurists on bioethical issues are not always unanimous decisions and at times may differ. There is much diversity among Muslims varying from country to country, and the different degrees to which they adhere by Shariah.[30] Differences and disagreements in regards to jurisprudence, theology, and ethics between the two main branches of Islam, Sunni and Shia, lead to differences in the methods and ways in which Islamic bioethics is practiced throughout the Islamic world.[31] An area where there is a lack of general consensus is brain death. The Organization of Islamic Conferences Islamic Fiqh Academy (OIC-IFA) holds the viewpoint that brain death is equivalent to cardiopulmonary death, and acknowledge brain death in an individual as the individual being deceased. On the contrary, the Islamic Organization of Medical Sciences (IOMS) states that brain death is an "intermediate state between life and death" and do not acknowledge a brain dead individual as being deceased.[32]

Islamic bioethicists look to the Qur'an and religious leaders regarding their outlook on reproduction and abortion. It is firmly believed that reproduction of a human child can only be proper and legitimate via marriage. This does not mean that a child can only be reproduced via sexual intercourse between a married couple, but that the only proper and legitimate way to have a child is when it is an act between husband and wife. It is okay for a married couple to have a child artificially and from techniques using modern biotechnology as opposed to sexual intercourse, but to do this out of the context of marriage would be deemed immoral.

Islamic bioethics is strongly against abortion and strictly prohibits it. The IOMS states that "from the moment a zygote settles inside a woman's body, it deserves a unanimously recognized degree of respect." Abortion may only be only permitted in unique situations where it is considered to be the "lesser evil."[32]
Feminist bioethics

Feminist bioethics critiques the fields of bioethics and medicine for its lack of inclusion of women’s and other marginalized group's perspectives.[20] This lack of perspective from women is thought to create power imbalances that favor men.[33] These power imbalances are theorized to be created from the androcentric nature of medicine. [33] One example of a lack of consideration of women is in clinical drug trials that exclude women due to hormonal fluctuations and possible future birth defects. [34] This has led to a gap in the research on how pharmaceuticals can affect women.[34] Feminist bioethicists call for the necessity of feminist approaches to bioethics because the lack of diverse perspectives in bioethics and medicine can cause preventable harm to already vulnerable groups.[20]

This study first gained prevalence in the field of reproductive medicine as it was viewed as a "woman's issue".[33] Since then, feminist approaches to bioethics has expanded to include bioethical topics in mental health, disability advocacy, healthcare accessibility, and pharmaceuticals.[33] Lindemann notes the need for the future agenda of feminist approaches to bioethics to expand further to include healthcare organizational ethics, genetics, stem cell research, and more. [33]

Notable figures in feminist bioethics include Carol Gillian, Susan Sherwin, and the creators of the International Journal of Feminist Approaches to Bioethics, Mary C. Rawlinson and Anne Donchin. Sherwin's book No Longer Patient: Feminist Ethics in Health Care (1992) is credited with being one of the first full-length books published on the topic of feminist bioethics and points out the shortcomings in then-current bioethical theories.[20] Sherwin's view point incorporates models of oppression within healthcare that intend to further marginalize women, people of color, immigrants, and people with disabilities.[35] Since created in 1992, The International Journal of Feminist Approaches to Bioethics has done much work to legitimize feminist work and theory in bioethics.[20]
Ethical issues in gene therapy

Gene therapy involves ethics, because scientists are making changes to genes, the building blocks of the human body.[16] Currently, therapeutic gene therapy is available to treat specific genetic disorders by editing cells in specific body parts. For example, gene therapy can treat hematopoietic disease.[36] There is also a controversial gene therapy called "germline gene therapy", in which genes in a sperm or egg can be edited to prevent genetic disorder in the future generation. It is unknown how this type of gene therapy affects long-term human development. In the United States, federal funding cannot be used to research germline gene therapy.[16]
Education

Bioethics is taught in courses at the undergraduate and graduate level in different academic disciplines or programs, such as Philosophy, Medicine, Law, Social Sciences. It has become a requirement for professional accreditation in many health professional programs (Medicine, Nursing, Rehabilitation), to have obligatory training in ethics (e.g., professional ethics, medical ethics, clinical ethics, nursing ethics). Interest in the field and professional opportunities[37] have led to the development of dedicated programs with concentrations in Bioethics, largely in the United States[38] and Europe, offering undergraduate majors/minors, graduate certificates, and master's and doctoral degrees. Every medical school in Canada teaches bioethics so that students can gain an understanding of biomedical ethics and use the knowledge gained in their future careers to provide better patient care. Canadian residency training programs are required to teach bioethics as it is one of the conditions of accreditation, and is a requirement by the College of Family Physicians of Canada and by the Royal College of Physicians and Surgeons of Canada.[39]
Criticism

As a study, bioethics has also drawn criticism. For instance, Paul Farmer noted that bioethics tends to focus its attention on problems that arise from "too much care" for patients in industrialized nations, while giving little or no attention to the ethical problem of too little care for the poor.[40] Farmer characterizes the bioethics of handling morally difficult clinical situations, normally in hospitals in industrialized countries, as "quandary ethics".[41] He does not regard quandary ethics and clinical bioethics as unimportant; he argues, rather, that bioethics must be balanced and give due weight to the poor.

Additionally, bioethics has been condemned for its lack of diversity in thought, particularly with regards to race. Even as the field has grown to include the areas of public opinion, policymaking, and medical decisions, little to no academic writing has been authored concerning the intersection between race–especially the cultural values imbued in that construct–and bioethical literature. John Hoberman illustrates this in a 2016 critique, in which he points out that bioethicists have been traditionally resistant to expanding their discourse to include sociological and historically relevant applications.[42] Central to this is the notion of white normativity, which establishes the dominance of white hegemonic structures in bioethical academia[43] and tends to reinforce existing biases. However, differing views on bioethics' lack of diversity of thought and social inclusivity have also been advanced. Thought historian Heikki Saxén has argued that the diversity of thought and social inclusivity are the two essential cornerstones of bioethics, albeit they have not been fully realized.[44][45]

These points and critiques, along with the neglect of women's perspectives within bioethics, have also been discussed amongst feminist bioethical scholars.[20]
Issues

Areas of health sciences that are the subject of published, peer-reviewed bioethical analysis include:

    Abortion
    Alternative Medicine
    Animal rights
    Applied ethics
    Artificial insemination
    Artificial life
    Artificial womb
    Assisted suicide
    Biocentrism
    Biological agent
    Biological patent
    Biopiracy
    Biorisk
    Biotic ethics
    Blood transfusion
    Body modification
    Brain-computer interface
    Chimeras
    Circumcision
    Cloning
    Cognitive liberty
    Confidentiality (medical records)
    Consent
    Contraception (birth control)
    Cryonics
    Disability
    Eugenics
    Euthanasia (human, non-human animal)
    Exorcism
    Faith healing
    Feeding tube
    Gene theft
    Gene therapy
    Genetically modified food
    Genetically modified organism
    Genomics
    Great Ape Project
    HeLa cells
    Human cloning
    Human enhancement
    Human experimentation in the United States
    Human genetic engineering
    Iatrogenesis
    Infertility treatments
    Intersex
    Life extension
    Life support
    Lobotomy
    Medicalization
    Medical malpractice
    Medical research
    Medical torture
    Mediation
    Mitochondrial donation
    Moral obligation
    Moral status of animals
    Nanomedicine
    Neuroethics
    Neuroenhancement
    Nazi human experimentation
    Ordinary and extraordinary care
    Overtreatment
    Organ donation
    Organ transplant
    Pain management
    Parthenogenesis
    Patients' Bill of Rights
    Placebo
    Pharmacogenetics
    Political abuse of psychiatry
    Population control
    Prescription drug prices in the United States
    Procreative beneficence
    Professional ethics
    Psychosurgery
    Quality of Life (Healthcare)
    Quaternary prevention
    Recreational drug use
    Reproductive rights
    Reproductive technology
    Reprogenetics
    Sex reassignment therapy
    Sperm and egg donation
    Spiritual drug use
    Stem cell research
    Sterilization (medicine)
    Suicide
    Surrogacy
    Transsexuality
    Transhumanism
    Transplant trade
    Tubal ligation
    Vaccination controversy
    Xenotransfusion
    Xenotransplantation

See also

    List of bioethics journals
    List of Canadian bioethics programs
    Biotechnology risk
    Cytoplasmic transfer
    Eugenics
    Feminist Approaches to Bioethics
    Jewish medical ethics
    Johns Hopkins Berman Institute of Bioethics
    Islamic bioethics
    Medical law
    Neuroethics
    Preimplantation genetic diagnosis
    Resources for clinical ethics consultation
    The Convention on Human Rights and Biomedicine

References

Wynar, Bohdan S. (2007). American Reference Books Annual, Volume 38. Libraries Unlimited.
Sass, Hans-Martin (2007). Fritz Jahr's 1927 concept of bioethics. Kennedy Inst Ethics J. 17 (4): 279-95.
Lolas, Fernando (2008). "Bioethics and animal research: A personal perspective and a note on the contribution of Fritz Jahr". Biological Research (Santiago). 41 (1): 119–23. doi:10.4067/S0716-97602008000100013. PMC 2997650. PMID 18769769.
Goldim, J. R. (2009). Revisiting the beginning of bioethics: The contributions of Fritz Jahr (1927). Perspect Biol Med, Sum, 377–80.
Martensen R (April 2001). "The History of Bioethics: An Essay Review". Journal of the History of Medicine and Allied Sciences. 56 (2): 168–175. doi:10.1093/jhmas/56.2.168. PMID 11392084 – via Project MUSE.
Bracanovic, T (June 2012). "From integrative bioethics to pseudoscience". Developing World Bioethics. 12 (3): 148–56. doi:10.1111/j.1471-8847.2012.00330.x. PMID 22708689.
"Astroethics". Archived from the original on 23 October 2013. Retrieved 21 December 2005.
Kaçar, Betül (2020-11-20). "If we're alone in the Universe, should we do anything about it?". Aeon. Retrieved 2020-12-11.
Freemont PF, Kitney RI (2012). Synthetic Biology. New Jersey: World Scientific. ISBN 978-1-84816-862-6.
Mautner MN (October 2009). "Life-centered ethics, and the human future in space" (PDF). Bioethics. 23 (8): 433–40. doi:10.1111/j.1467-8519.2008.00688.x. PMID 19077128. Archived (PDF) from the original on 2012-11-02.
Churm, Philip Andrew (2019-05-14). "Yuval Noah Harari talks politics, technology and migration". euronews. Retrieved 2020-12-12.
Friesen P, Kearns L, Redman B, Caplan AL (July 2017). "Rethinking the Belmont Report?". The American Journal of Bioethics. 17 (7): 15–21. doi:10.1080/15265161.2017.1329482. PMID 28661753.
"The Bioethics Society of Ohio State". Thebioethicssociety.org.ohio-state.edu. Archived from the original on 2013-06-13. Retrieved 2013-09-17.
"Bioethics Society of Cornell". Cornell University. Archived from the original on 17 June 2012.
Entwistle VA, Carter SM, Cribb A, McCaffery K (July 2010). "Supporting patient autonomy: the importance of clinician-patient relationships" (PDF). Journal of General Internal Medicine. 25 (7): 741–5. doi:10.1007/s11606-010-1292-2. PMC 2881979. PMID 20213206.
"Medical Ethics". medlineplus.gov. Retrieved 2019-05-06.
Gillon R (July 1994). "Medical ethics: four principles plus attention to scope". BMJ. 309 (6948): 184–8. doi:10.1136/bmj.309.6948.184. PMC 2540719. PMID 8044100.
Horne LC (October 2016). "Medical Need, Equality, and Uncertainty". Bioethics. 30 (8): 588–96. doi:10.1111/bioe.12257. PMID 27196999.
Cf. Michel Weber and Will Desmond (eds.). Handbook of Whiteheadian Process Thought Archived 2015-11-12 at the Wayback Machine (Frankfurt / Lancaster, Ontos Verlag, Process Thought X1 & X2, 2008) and Ronny Desmet & Michel Weber (edited by), Whitehead. The Algebra of Metaphysics. Applied Process Metaphysics Summer Institute Memorandum Archived 2017-07-27 at the Wayback Machine, Louvain-la-Neuve, Les Éditions Chromatika, 2010.
Donchin, Anne (2008). "Remembering Fab's Past, Anticipating Our Future". International Journal of Feminist Approaches to Bioethics. 1 (1): 145–160. ISSN 1937-4585.
As regards the Christian Orthodox perspective see e.g. Constantine B. Scouteris, Bioethics in the light of orthodox anthropology, Polytechnic School of Crete (ed), First International Conference: Christian Anthropology and Biotechnological Progress (Financially Supported by CTNS, U.S.A.), Orthodox Academy of Crete, 26–29 September 2002, pp. 75-81.
Bobyrov VM, Vazhnicha OM, Devyatkina TO (2012). Basics of Bioethics and Safety. Nova Knyha. ISBN 978-966-382-407-9.
Behrens KG (2013). "Towards an Indigenous African Bioethics". South African Journal of Bioethics and Law. 6: 30. doi:10.7196/sajbl.255.
Morioka M (July 2015). "Feminism, Disability, and Brain Death: Alternative Voices from Japanese Bioethics". Journal of Philosophy of Life. 5 (1): 19–41.
Bowman KW, Hui EC (November 2000). "Bioethics for clinicians: 20. Chinese bioethics". CMAJ. 163 (11): 1481–5. PMC 80420. PMID 11192658.
Muldoon M, King N (1995). "Spirituality, health care, and bioethics". Journal of Religion and Health. 34 (4): 329–49. doi:10.1007/BF02248742. PMID 11660133.
Chamsi-Pasha H, Albar MA (January 2013). "Western and Islamic bioethics: How close is the gap?". Avicenna Journal of Medicine. 3 (1): 8–14. doi:10.4103/2231-0770.112788. PMC 3752859. PMID 23984261.
Shomali MA (2008). "Islamic bioethics: a general scheme". Journal of Medical Ethics and History of Medicine. 1: 1. PMC 3713653. PMID 23908711.
Daar AS, al Khitamy AB (January 2001). "Bioethics for clinicians: 21. Islamic bioethics". CMAJ. 164 (1): 60–3. PMC 80636. PMID 11202669. "Whosoever killeth a human being … it shall be as if he had killed all humankind, and whosoever saveth the life of one, it shall be as if he saved the life of all humankind."
Bagheri A (December 2014). "Priority Setting in Islamic Bioethics: Top 10 Bioethical Challenges in Islamic Countries". Asian Bioethics Review. 6 (4): 391–401. doi:10.1353/asb.2014.0031.
Aramesh K (December 2009). "Iran's Experience on Religious Bioethics: An Overview". Asian Bioethics Review. 1: 318–328.
Padela AI, Arozullah A, Moosa E (March 2013). "Brain death in Islamic ethico-legal deliberation: challenges for applied Islamic bioethics". Bioethics. 27 (3): 132–9. doi:10.1111/j.1467-8519.2011.01935.x. PMID 22150919.
NELSON, HILDE LINDEMANN (2000). "FEMINIST BIOETHICS: WHERE WE'VE BEEN, WHERE WE'RE GOING". Metaphilosophy. 31 (5): 492–508. ISSN 0026-1068.
"History of Women's Participation in Clinical Research | Office of Research on Women's Health". orwh.od.nih.gov. Retrieved 2020-11-12.
Taylor, A. Thomas (1993-07-01). "No Longer Patient: Feminist Ethics and Health Care". American Journal of Health-System Pharmacy. 50 (7): 1510–1513. doi:10.1093/ajhp/50.7.1510a. ISSN 1079-2082.
Kohn, Donald B.; Porteus, Matthew H.; Scharenberg, Andrew M. (May 26, 2016). "Ethical and regulatory aspects of genome editing". Blood. 127 (21): 2553–2560. doi:10.1182/blood-2016-01-678136. ISSN 1528-0020. PMID 27053531.
"Bioethics Grows, But Will Jobs Follow?". MD Magazine. Retrieved 2018-07-01.
Lee K (2016). "An Overview of Graduate Educational Bioethics Programs in the United States" (PDF). BCM. Retrieved 2018-07-01.
McKneally MF, Singer PA (April 2001). "Bioethics for clinicians: 25. Teaching bioethics in the clinical setting". Canadian Medical Association Journal. 164 (8): 1163–7. PMC 80975. PMID 11338804.
Farmer P. Pathologies of Power. pp. 196–212.
Farmer P. Pathologies of Power. p. 205.
Hoberman J (2016). "Why Bioethics Has a Race Problem". The Hastings Center Report. 46 (2): 12–8. doi:10.1002/hast.542. PMID 27120279.
Karsjens KL, Johnson JM (2003). "White normativity and subsequent critical race deconstruction of bioethics". The American Journal of Bioethics. 3 (2): 22–3. doi:10.1162/152651603766436144. PMID 12859809.
Saxén H (2017). A Cultural Giant: An interpretation of bioethics in light of its intellectual and cultural history (PDF). Tampere: Tampere University Press. ISBN 978-952-03-0523-9.

    Saxén, Heikki; Saxén, Salla (April 1, 2021). "What is Organic Bioethics?". Harvard Medical School Bioethics Journal.

External links
Library resources about
Bioethics

    Resources in your library
    Resources in other libraries

    Bioethics entry in the Internet Encyclopedia of Philosophy.

    « What’s bioethics ? »
    "Feminist Bioethics" at the Stanford Encyclopedia of Philosophy

    vte

Bioethics

    vte

Research participant rights

    vte

Medical ethics cases

    vte

Ethics

    vte

Emerging technologies
Authority control Edit this at Wikidata	

    BNE: XX528575 BNF: cb13318828t (data) GND: 4006791-9 LCCN: sh85014136 MA: 188084074

Categories:

    BioethicsEthicsPhilosophy of biology

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons
    Wikiquote

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 17 May 2021, at 09:47 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki



! Brain–computer interface

!! https://en.wikipedia.org/wiki/Brain%E2%80%93computer_interface

From Wikipedia, the free encyclopedia
  (Redirected from Brain-computer interface)

For direct brain control of prosthetic devices, see Neuroprosthetics.
	
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
This article relies too much on references to primary sources. (March 2018)
This article possibly contains original research. (March 2018)
Neuropsychology
Topics
Brain functions
People
Tests

    Psi2.svg Psychology portal Socrates.png Philosophy portal WHO Rod.svg Medicine portal

    vte

A brain–computer interface (BCI), sometimes called a neural control interface (NCI), mind–machine interface (MMI), direct neural interface (DNI), or brain–machine interface (BMI), is a direct communication pathway between an enhanced or wired brain and an external device. BCIs are often directed at researching, mapping, assisting, augmenting, or repairing human cognitive or sensory-motor functions.[1]

Research on BCIs began in the 1970s at the University of California, Los Angeles (UCLA) under a grant from the National Science Foundation, followed by a contract from DARPA.[2][3] The papers published after this research also mark the first appearance of the expression brain–computer interface in scientific literature.

Due to the cortical plasticity of the brain, signals from implanted prostheses can, after adaptation, be handled by the brain like natural sensor or effector channels.[4] Following years of animal experimentation, the first neuroprosthetic devices implanted in humans appeared in the mid-1990s.

Recently, studies in human-computer interaction through the application of machine learning with statistical temporal features extracted from the frontal lobe, EEG brainwave data has shown high levels of success in classifying mental states (Relaxed, Neutral, Concentrating),[5] mental emotional states (Negative, Neutral, Positive)[6] and thalamocortical dysrhythmia.[7]
Contents

    1 History
    2 BCIs versus neuroprosthetics
    3 Animal BCI research
        3.1 Early work
        3.2 Prominent research successes
            3.2.1 Kennedy and Yang Dan
            3.2.2 Nicolelis
            3.2.3 Donoghue, Schwartz and Andersen
            3.2.4 Other research
            3.2.5 The BCI Award
    4 Human BCI research
        4.1 Invasive BCIs
            4.1.1 Vision
            4.1.2 Movement
        4.2 Partially invasive BCIs
            4.2.1 Interventional Neurology
            4.2.2 ECoG
        4.3 Non-invasive BCIs
            4.3.1 Non-EEG-based human–computer interface
            4.3.2 Functional near-infrared spectroscopy
            4.3.3 Electroencephalography (EEG)-based brain-computer interfaces
            4.3.4 Dry active electrode arrays
            4.3.5 SSVEP mobile EEG BCIs
            4.3.6 Limitations
            4.3.7 Prosthesis and environment control
            4.3.8 DIY and open source BCI
            4.3.9 MEG and MRI
            4.3.10 BCI control strategies in neurogaming
        4.4 Synthetic telepathy/silent communication
    5 Cell-culture BCIs
    6 Ethical considerations
        6.1 User-centric issues
        6.2 Legal and social
    7 Low-cost BCI-based interfaces
    8 Future directions
        8.1 Disorders of consciousness (DOC)
        8.2 Motor recovery
        8.3 Functional brain mapping
        8.4 Flexible devices
        8.5 Neural dust
    9 See also
    10 Notes
    11 References
    12 Further reading
    13 External links

History

The history of brain–computer interfaces (BCIs) starts with Hans Berger's discovery of the electrical activity of the human brain and the development of electroencephalography (EEG). In 1924 Berger was the first to record human brain activity by means of EEG. Berger was able to identify oscillatory activity, such as Berger's wave or the alpha wave (8–13 Hz), by analyzing EEG traces.

Berger's first recording device was very rudimentary. He inserted silver wires under the scalps of his patients. These were later replaced by silver foils attached to the patient's head by rubber bandages. Berger connected these sensors to a Lippmann capillary electrometer, with disappointing results. However, more sophisticated measuring devices, such as the Siemens double-coil recording galvanometer, which displayed electric voltages as small as one ten thousandth of a volt, led to success.

Berger analyzed the interrelation of alternations in his EEG wave diagrams with brain diseases. EEGs permitted completely new possibilities for the research of human brain activities.

Although the term had not yet been coined, one of the earliest examples of a working brain-machine interface was the piece Music for Solo Performer (1965) by the American composer Alvin Lucier. The piece makes use of EEG and analog signal processing hardware (filters, amplifiers, and a mixing board) to stimulate acoustic percussion instruments. To perform the piece one must produce alpha waves and thereby "play" the various percussion instruments via loudspeakers which are placed near or directly on the instruments themselves.[8]

UCLA Professor Jacques Vidal coined the term "BCI" and produced the first peer-reviewed publications on this topic.[2][3] Vidal is widely recognized as the inventor of BCIs in the BCI community, as reflected in numerous peer-reviewed articles reviewing and discussing the field (e.g.,[9][10][11]). His 1973 paper stated the "BCI challenge": Control of external objects using EEG signals. Especially he pointed out to Contingent Negative Variation (CNV) potential as a challenge for BCI control. The 1977 experiment Vidal described was the first application of BCI after his 1973 BCI challenge. It was a noninvasive EEG (actually Visual Evoked Potentials (VEP)) control of a cursor-like graphical object on a computer screen. The demonstration was movement in a maze.[12]

After his early contributions, Vidal was not active in BCI research, nor BCI events such as conferences, for many years. In 2011, however, he gave a lecture in Graz, Austria, supported by the Future BNCI project, presenting the first BCI, which earned a standing ovation. Vidal was joined by his wife, Laryce Vidal, who previously worked with him at UCLA on his first BCI project.

In 1988, a report was given on noninvasive EEG control of a physical object, a robot. The experiment described was EEG control of multiple start-stop-restart of the robot movement, along an arbitrary trajectory defined by a line drawn on a floor. The line-following behavior was the default robot behavior, utilizing autonomous intelligence and autonomous source of energy.[13][14] This 1988 report written by Stevo Bozinovski, Mihail Sestakov, and Liljana Bozinovska was the first one about a robot control using EEG.[15][16]

In 1990, a report was given on a closed loop, bidirectional adaptive BCI controlling computer buzzer by an anticipatory brain potential, the Contingent Negative Variation (CNV) potential.[17][18] The experiment described how an expectation state of the brain, manifested by CNV, controls in a feedback loop the S2 buzzer in the S1-S2-CNV paradigm. The obtained cognitive wave representing the expectation learning in the brain is named Electroexpectogram (EXG). The CNV brain potential was part of the BCI challenge presented by Vidal in his 1973 paper.

Studies in 2010s suggested the potential ability of neural stimulation to restore functional connectively and associated behaviors through modulation of molecular mechanisms of synaptic efficacy.[19][20] This opened the door for the concept that BCI technologies may be able to restore function in addition to enabling functionality.

Since 2013, DARPA has funded BCI technology through the BRAIN initiative, which has supported work out of the University of Pittsburgh Medical Center,[21] Paradromics,[22] Brown,[23] and Synchron,[24] among others.
BCIs versus neuroprosthetics
Main article: Neuroprosthetics

Neuroprosthetics is an area of neuroscience concerned with neural prostheses, that is, using artificial devices to replace the function of impaired nervous systems and brain-related problems, or of sensory organs or organs itself (bladder, diaphragm, etc.). As of December 2010, cochlear implants had been implanted as neuroprosthetic device in approximately 220,000 people worldwide.[25] There are also several neuroprosthetic devices that aim to restore vision, including retinal implants. The first neuroprosthetic device, however, was the pacemaker.

The terms are sometimes used interchangeably. Neuroprosthetics and BCIs seek to achieve the same aims, such as restoring sight, hearing, movement, ability to communicate, and even cognitive function.[1] Both use similar experimental methods and surgical techniques.
Animal BCI research

Several laboratories have managed to record signals from monkey and rat cerebral cortices to operate BCIs to produce movement. Monkeys have navigated computer cursors on screen and commanded robotic arms to perform simple tasks simply by thinking about the task and seeing the visual feedback, but without any motor output.[26] In May 2008 photographs that showed a monkey at the University of Pittsburgh Medical Center operating a robotic arm by thinking were published in a number of well-known science journals and magazines.[27] Sheep too have been used to evaluate BCI technology including Synchron's Stentrode.

In 2020, Elon Musk's Neuralink was successfully implanted in a pig,[28] announced in a widely viewed webcast. In 2021 Elon Musk announced that he had successfully enabled a monkey to play video games[29] using Neuralink's device.
Early work
Monkey operating a robotic arm with brain–computer interfacing (Schwartz lab, University of Pittsburgh)

In 1969 the operant conditioning studies of Fetz and colleagues, at the Regional Primate Research Center and Department of Physiology and Biophysics, University of Washington School of Medicine in Seattle, showed for the first time that monkeys could learn to control the deflection of a biofeedback meter arm with neural activity.[30] Similar work in the 1970s established that monkeys could quickly learn to voluntarily control the firing rates of individual and multiple neurons in the primary motor cortex if they were rewarded for generating appropriate patterns of neural activity.[31]

Studies that developed algorithms to reconstruct movements from motor cortex neurons, which control movement, date back to the 1970s. In the 1980s, Apostolos Georgopoulos at Johns Hopkins University found a mathematical relationship between the electrical responses of single motor cortex neurons in rhesus macaque monkeys and the direction in which they moved their arms (based on a cosine function). He also found that dispersed groups of neurons, in different areas of the monkey's brains, collectively controlled motor commands, but was able to record the firings of neurons in only one area at a time, because of the technical limitations imposed by his equipment.[32]

There has been rapid development in BCIs since the mid-1990s.[33] Several groups have been able to capture complex brain motor cortex signals by recording from neural ensembles (groups of neurons) and using these to control external devices.
Prominent research successes
Kennedy and Yang Dan

Phillip Kennedy (who later founded Neural Signals in 1987) and colleagues built the first intracortical brain–computer interface by implanting neurotrophic-cone electrodes into monkeys.[citation needed]
Yang Dan and colleagues' recordings of cat vision using a BCI implanted in the lateral geniculate nucleus (top row: original image; bottom row: recording)

In 1999, researchers led by Yang Dan at the University of California, Berkeley decoded neuronal firings to reproduce images seen by cats. The team used an array of electrodes embedded in the thalamus (which integrates all of the brain's sensory input) of sharp-eyed cats. Researchers targeted 177 brain cells in the thalamus lateral geniculate nucleus area, which decodes signals from the retina. The cats were shown eight short movies, and their neuron firings were recorded. Using mathematical filters, the researchers decoded the signals to generate movies of what the cats saw and were able to reconstruct recognizable scenes and moving objects.[34] Similar results in humans have since been achieved by researchers in Japan (see below).
Nicolelis

Miguel Nicolelis, a professor at Duke University, in Durham, North Carolina, has been a prominent proponent of using multiple electrodes spread over a greater area of the brain to obtain neuronal signals to drive a BCI.

After conducting initial studies in rats during the 1990s, Nicolelis and his colleagues developed BCIs that decoded brain activity in owl monkeys and used the devices to reproduce monkey movements in robotic arms. Monkeys have advanced reaching and grasping abilities and good hand manipulation skills, making them ideal test subjects for this kind of work.

By 2000, the group succeeded in building a BCI that reproduced owl monkey movements while the monkey operated a joystick or reached for food.[35] The BCI operated in real time and could also control a separate robot remotely over Internet protocol. But the monkeys could not see the arm moving and did not receive any feedback, a so-called open-loop BCI.
Diagram of the BCI developed by Miguel Nicolelis and colleagues for use on rhesus monkeys

Later experiments by Nicolelis using rhesus monkeys succeeded in closing the feedback loop and reproduced monkey reaching and grasping movements in a robot arm. With their deeply cleft and furrowed brains, rhesus monkeys are considered to be better models for human neurophysiology than owl monkeys. The monkeys were trained to reach and grasp objects on a computer screen by manipulating a joystick while corresponding movements by a robot arm were hidden.[36][37] The monkeys were later shown the robot directly and learned to control it by viewing its movements. The BCI used velocity predictions to control reaching movements and simultaneously predicted handgripping force. In 2011 O'Doherty and colleagues showed a BCI with sensory feedback with rhesus monkeys. The monkey was brain controlling the position of an avatar arm while receiving sensory feedback through direct intracortical stimulation (ICMS) in the arm representation area of the sensory cortex.[38]
Donoghue, Schwartz and Andersen

Other laboratories which have developed BCIs and algorithms that decode neuron signals include those run by John Donoghue at Brown University, Andrew Schwartz at the University of Pittsburgh and Richard Andersen at Caltech. These researchers have been able to produce working BCIs, even using recorded signals from far fewer neurons than did Nicolelis (15–30 neurons versus 50–200 neurons).

Donoghue's group reported training rhesus monkeys to use a BCI to track visual targets on a computer screen (closed-loop BCI) with or without assistance of a joystick.[39] Schwartz's group created a BCI for three-dimensional tracking in virtual reality and also reproduced BCI control in a robotic arm.[40] The same group also created headlines when they demonstrated that a monkey could feed itself pieces of fruit and marshmallows using a robotic arm controlled by the animal's own brain signals.[41][42][43]

Andersen's group used recordings of premovement activity from the posterior parietal cortex in their BCI, including signals created when experimental animals anticipated receiving a reward.[44]
Other research

In addition to predicting kinematic and kinetic parameters of limb movements, BCIs that predict electromyographic or electrical activity of the muscles of primates are being developed.[45] Such BCIs could be used to restore mobility in paralyzed limbs by electrically stimulating muscles.

Miguel Nicolelis and colleagues demonstrated that the activity of large neural ensembles can predict arm position. This work made possible creation of BCIs that read arm movement intentions and translate them into movements of artificial actuators. Carmena and colleagues[36] programmed the neural coding in a BCI that allowed a monkey to control reaching and grasping movements by a robotic arm. Lebedev and colleagues[37] argued that brain networks reorganize to create a new representation of the robotic appendage in addition to the representation of the animal's own limbs.

In 2019, researchers from UCSF published a study where they demonstrated a BCI that had the potential to help patients with speech impairment caused by neurological disorders. Their BCI used high-density electrocorticography to tap neural activity from a patient's brain and used deep learning methods to synthesize speech.[46][47]

The biggest impediment to BCI technology at present is the lack of a sensor modality that provides safe, accurate and robust access to brain signals. It is conceivable or even likely, however, that such a sensor will be developed within the next twenty years. The use of such a sensor should greatly expand the range of communication functions that can be provided using a BCI.

Development and implementation of a BCI system is complex and time-consuming. In response to this problem, Gerwin Schalk has been developing a general-purpose system for BCI research, called BCI2000. BCI2000 has been in development since 2000 in a project led by the Brain–Computer Interface R&D Program at the Wadsworth Center of the New York State Department of Health in Albany, New York, United States.

A new 'wireless' approach uses light-gated ion channels such as Channelrhodopsin to control the activity of genetically defined subsets of neurons in vivo. In the context of a simple learning task, illumination of transfected cells in the somatosensory cortex influenced the decision making process of freely moving mice.[48]

The use of BMIs has also led to a deeper understanding of neural networks and the central nervous system. Research has shown that despite the inclination of neuroscientists to believe that neurons have the most effect when working together, single neurons can be conditioned through the use of BMIs to fire at a pattern that allows primates to control motor outputs. The use of BMIs has led to development of the single neuron insufficiency principle which states that even with a well tuned firing rate single neurons can only carry a narrow amount of information and therefore the highest level of accuracy is achieved by recording firings of the collective ensemble. Other principles discovered with the use of BMIs include the neuronal multitasking principle, the neuronal mass principle, the neural degeneracy principle, and the plasticity principle.[49]

BCIs are also proposed to be applied by users without disabilities. A user-centered categorization of BCI approaches by Thorsten O. Zander and Christian Kothe introduces the term passive BCI.[50] Next to active and reactive BCI that are used for directed control, passive BCIs allow for assessing and interpreting changes in the user state during Human-Computer Interaction (HCI). In a secondary, implicit control loop the computer system adapts to its user improving its usability in general.

Beyond BCI systems that decode neural activity to drive external effectors, BCI systems may be used to encode signals from the periphery. These sensory BCI devices enable real-time, behaviorally-relevant decisions based upon closed-loop neural stimulation.[51]
The BCI Award

The Annual BCI Research Award is awarded in recognition of outstanding and innovative research in the field of Brain-Computer Interfaces. Each year, a renowned research laboratory is asked to judge the submitted projects. The jury consists of world-leading BCI experts recruited by the awarding laboratory. The jury selects twelve nominees, then chooses a first, second, and third-place winner, who receive awards of $3,000, $2,000, and $1,000, respectively.
Human BCI research
Invasive BCIs

Invasive BCI requires surgery to implant electrodes under scalp for communicating brain signals. The main advantage is to provide more accurate reading; however, its downside includes side effects from the surgery. After the surgery, scar tissues may form which can make brain signals weaker. In addition, according to the research of Abdulkader et al., (2015),[52] the body may not accept the implanted electrodes and this can cause a medical condition.
Vision

Invasive BCI research has targeted repairing damaged sight and providing new functionality for people with paralysis. Invasive BCIs are implanted directly into the grey matter of the brain during neurosurgery. Because they lie in the grey matter, invasive devices produce the highest quality signals of BCI devices but are prone to scar-tissue build-up, causing the signal to become weaker, or even non-existent, as the body reacts to a foreign object in the brain.[53]

In vision science, direct brain implants have been used to treat non-congenital (acquired) blindness. One of the first scientists to produce a working brain interface to restore sight was private researcher William Dobelle.

Dobelle's first prototype was implanted into "Jerry", a man blinded in adulthood, in 1978. A single-array BCI containing 68 electrodes was implanted onto Jerry's visual cortex and succeeded in producing phosphenes, the sensation of seeing light. The system included cameras mounted on glasses to send signals to the implant. Initially, the implant allowed Jerry to see shades of grey in a limited field of vision at a low frame-rate. This also required him to be hooked up to a mainframe computer, but shrinking electronics and faster computers made his artificial eye more portable and now enable him to perform simple tasks unassisted.[54]
Dummy unit illustrating the design of a BrainGate interface

In 2002, Jens Naumann, also blinded in adulthood, became the first in a series of 16 paying patients to receive Dobelle's second generation implant, marking one of the earliest commercial uses of BCIs. The second generation device used a more sophisticated implant enabling better mapping of phosphenes into coherent vision. Phosphenes are spread out across the visual field in what researchers call "the starry-night effect". Immediately after his implant, Jens was able to use his imperfectly restored vision to drive an automobile slowly around the parking area of the research institute.[citation needed] Unfortunately, Dobelle died in 2004[55] before his processes and developments were documented. Subsequently, when Mr. Naumann and the other patients in the program began having problems with their vision, there was no relief and they eventually lost their "sight" again. Naumann wrote about his experience with Dobelle's work in Search for Paradise: A Patient's Account of the Artificial Vision Experiment[56] and has returned to his farm in Southeast Ontario, Canada, to resume his normal activities.[57]
Movement

BCIs focusing on motor neuroprosthetics aim to either restore movement in individuals with paralysis or provide devices to assist them, such as interfaces with computers or robot arms.

Researchers at Emory University in Atlanta, led by Philip Kennedy and Roy Bakay, were first to install a brain implant in a human that produced signals of high enough quality to simulate movement. Their patient, Johnny Ray (1944–2002), suffered from 'locked-in syndrome' after suffering a brain-stem stroke in 1997. Ray's implant was installed in 1998 and he lived long enough to start working with the implant, eventually learning to control a computer cursor; he died in 2002 of a brain aneurysm.[58]

Tetraplegic Matt Nagle became the first person to control an artificial hand using a BCI in 2005 as part of the first nine-month human trial of Cyberkinetics's BrainGate chip-implant. Implanted in Nagle's right precentral gyrus (area of the motor cortex for arm movement), the 96-electrode BrainGate implant allowed Nagle to control a robotic arm by thinking about moving his hand as well as a computer cursor, lights and TV.[59] One year later, professor Jonathan Wolpaw received the prize of the Altran Foundation for Innovation to develop a Brain Computer Interface with electrodes located on the surface of the skull, instead of directly in the brain.

More recently, research teams led by the Braingate group at Brown University[60] and a group led by University of Pittsburgh Medical Center,[61] both in collaborations with the United States Department of Veterans Affairs, have demonstrated further success in direct control of robotic prosthetic limbs with many degrees of freedom using direct connections to arrays of neurons in the motor cortex of patients with tetraplegia.

In May 2021, a Stanford University team reported a successful proof-of-concept test that enabled a quadraplegic participant to input English sentences at about 86 characters per minute. The participant imagined moving his hand to write letters, and the system performed handwriting recognition on electrical signals detected in the motor cortex.[62]
Partially invasive BCIs

Partially invasive BCI devices are implanted inside the skull but rest outside the brain rather than within the grey matter. They produce better resolution signals than non-invasive BCIs where the bone tissue of the cranium deflects and deforms signals and have a lower risk of forming scar-tissue in the brain than fully invasive BCIs. There has been preclinical demonstration of intracortical BCIs from the stroke perilesional cortex.[63]
Interventional Neurology

The biggest advance in partially invasive BCIs came about in the area of interventional neurology. Elon Musk mentioned the potential for this in 2016[64] but never pursued it. Meanwhile, in 2010, researchers affiliated with University of Melbourne had begun developing a BCI that could be inserted via the vascular system. The Australian neurologist Thomas Oxley (Mount Sinai Hospital) conceived the idea for this BCI, called Stentrode and which has received funding from DARPA. Preclinical studies evaluated the technology in sheep.

In November 2020, two participants that suffer from amyotrophic lateral sclerosis were able to wirelessly control an operating system to text, email, shop, and bank using direct thought through the Stentrode brain-computer interface,[65] marking the first time a brain-computer interface was implanted via the patient's blood vessels, eliminating the need for open brain surgery.
ECoG

Electrocorticography (ECoG) measures the electrical activity of the brain taken from beneath the skull in a similar way to non-invasive electroencephalography, but the electrodes are embedded in a thin plastic pad that is placed above the cortex, beneath the dura mater.[66] ECoG technologies were first trialled in humans in 2004 by Eric Leuthardt and Daniel Moran from Washington University in St Louis. In a later trial, the researchers enabled a teenage boy to play Space Invaders using his ECoG implant.[67] This research indicates that control is rapid, requires minimal training, and may be an ideal tradeoff with regards to signal fidelity and level of invasiveness.[note 1]

Signals can be either subdural or epidural, but are not taken from within the brain parenchyma itself. It has not been studied extensively until recently due to the limited access of subjects. Currently, the only manner to acquire the signal for study is through the use of patients requiring invasive monitoring for localization and resection of an epileptogenic focus.

ECoG is a very promising intermediate BCI modality because it has higher spatial resolution, better signal-to-noise ratio, wider frequency range, and less training requirements than scalp-recorded EEG, and at the same time has lower technical difficulty, lower clinical risk, and probably superior long-term stability than intracortical single-neuron recording. This feature profile and recent evidence of the high level of control with minimal training requirements shows potential for real world application for people with motor disabilities.[69][70] Light reactive imaging BCI devices are still in the realm of theory.
Non-invasive BCIs

There have also been experiments in humans using non-invasive neuroimaging technologies as interfaces. The substantial majority of published BCI work involves noninvasive EEG-based BCIs. Noninvasive EEG-based technologies and interfaces have been used for a much broader variety of applications. Although EEG-based interfaces are easy to wear and do not require surgery, they have relatively poor spatial resolution and cannot effectively use higher-frequency signals because the skull dampens signals, dispersing and blurring the electromagnetic waves created by the neurons. EEG-based interfaces also require some time and effort prior to each usage session, whereas non-EEG-based ones, as well as invasive ones require no prior-usage training. Overall, the best BCI for each user depends on numerous factors.
Non-EEG-based human–computer interface
Electrooculography (EOG)

In 1989 report was given on control of a mobile robot by eye movement using Electrooculography (EOG) signals. A mobile robot was driven from a start to a goal point using five EOG commands, interpreted as forward, backward, left, right, and stop.[71] The EOG as a challenge of controlling external objects was presented by Vidal in his 1973 paper.[2]
Pupil-size oscillation

A 2016 article[72] described an entirely new communication device and non-EEG-based human-computer interface, which requires no visual fixation, or ability to move the eyes at all. The interface is based on covert interest; directing one's attention to a chosen letter on a virtual keyboard, without the need to move one's eyes to look directly at the letter. Each letter has its own (background) circle which micro-oscillates in brightness differently from all of the other letters. The letter selection is based on best fit between unintentional pupil-size oscillation and the background circle's brightness oscillation pattern. Accuracy is additionally improved by the user's mental rehearsing of the words 'bright' and 'dark' in synchrony with the brightness transitions of the letter's circle.
Functional near-infrared spectroscopy

In 2014 and 2017, a BCI using functional near-infrared spectroscopy for "locked-in" patients with amyotrophic lateral sclerosis (ALS) was able to restore some basic ability of the patients to communicate with other people.[73][74]
Electroencephalography (EEG)-based brain-computer interfaces
Recordings of brainwaves produced by an electroencephalogram

After the BCI challenge was stated by Vidal in 1973, the initial reports on non-invasive approach included control of a cursor in 2D using VEP (Vidal 1977), control of a buzzer using CNV (Bozinovska et al. 1988, 1990), control of a physical object, a robot, using a brain rhythm (alpha) (Bozinovski et al. 1988), control of a text written on a screen using P300 (Farwell and Donchin, 1988).[75]

In the early days of BCI research, another substantial barrier to using Electroencephalography (EEG) as a brain–computer interface was the extensive training required before users can work the technology. For example, in experiments beginning in the mid-1990s, Niels Birbaumer at the University of Tübingen in Germany trained severely paralysed people to self-regulate the slow cortical potentials in their EEG to such an extent that these signals could be used as a binary signal to control a computer cursor.[76] (Birbaumer had earlier trained epileptics to prevent impending fits by controlling this low voltage wave.) The experiment saw ten patients trained to move a computer cursor by controlling their brainwaves. The process was slow, requiring more than an hour for patients to write 100 characters with the cursor, while training often took many months. However, the slow cortical potential approach to BCIs has not been used in several years, since other approaches require little or no training, are faster and more accurate, and work for a greater proportion of users.

Another research parameter is the type of oscillatory activity that is measured. Gert Pfurtscheller founded the BCI Lab 1991 and fed his research results on motor imagery in the first online BCI based on oscillatory features and classifiers. Together with Birbaumer and Jonathan Wolpaw at New York State University they focused on developing technology that would allow users to choose the brain signals they found easiest to operate a BCI, including mu and beta rhythms.

A further parameter is the method of feedback used and this is shown in studies of P300 signals. Patterns of P300 waves are generated involuntarily (stimulus-feedback) when people see something they recognize and may allow BCIs to decode categories of thoughts without training patients first. By contrast, the biofeedback methods described above require learning to control brainwaves so the resulting brain activity can be detected.

In 2005 it was reported research on EEG emulation of digital control circuits for BCI, with example of a CNV flip-flop.[77] In 2009 it was reported noninvasive EEG control of a robotic arm using a CNV flip-flop.[78] In 2011 it was reported control of two robotic arms solving Tower of Hanoi task with three disks using a CNV flip-flop.[79] In 2015 it was described EEG-emulation of a Schmidt trigger, flip-flop, demultiplexer, and modem.[80]

While an EEG based brain-computer interface has been pursued extensively by a number of research labs, recent advancements made by Bin He and his team at the University of Minnesota suggest the potential of an EEG based brain-computer interface to accomplish tasks close to invasive brain-computer interface. Using advanced functional neuroimaging including BOLD functional MRI and EEG source imaging, Bin He and co-workers identified the co-variation and co-localization of electrophysiological and hemodynamic signals induced by motor imagination.[81] Refined by a neuroimaging approach and by a training protocol, Bin He and co-workers demonstrated the ability of a non-invasive EEG based brain-computer interface to control the flight of a virtual helicopter in 3-dimensional space, based upon motor imagination.[82] In June 2013 it was announced that Bin He had developed the technique to enable a remote-control helicopter to be guided through an obstacle course.[83]

In addition to a brain-computer interface based on brain waves, as recorded from scalp EEG electrodes, Bin He and co-workers explored a virtual EEG signal-based brain-computer interface by first solving the EEG inverse problem and then used the resulting virtual EEG for brain-computer interface tasks. Well-controlled studies suggested the merits of such a source analysis based brain-computer interface.[84]

A 2014 study found that severely motor-impaired patients could communicate faster and more reliably with non-invasive EEG BCI, than with any muscle-based communication channel.[85]

A 2016 study found that the Emotiv EPOC device may be more suitable for control tasks using the attention/meditation level or eye blinking than the Neurosky MindWave device.[86]

A 2019 study found that the application of evolutionary algorithms could improve EEG mental state classification with a non-invasive Muse device, enabling high quality classification of data acquired by a cheap consumer-grade EEG sensing device.[87]
Dry active electrode arrays

In the early 1990s Babak Taheri, at University of California, Davis demonstrated the first single and also multichannel dry active electrode arrays using micro-machining. The single channel dry EEG electrode construction and results were published in 1994.[88] The arrayed electrode was also demonstrated to perform well compared to silver/silver chloride electrodes. The device consisted of four sites of sensors with integrated electronics to reduce noise by impedance matching. The advantages of such electrodes are: (1) no electrolyte used, (2) no skin preparation, (3) significantly reduced sensor size, and (4) compatibility with EEG monitoring systems. The active electrode array is an integrated system made of an array of capacitive sensors with local integrated circuitry housed in a package with batteries to power the circuitry. This level of integration was required to achieve the functional performance obtained by the electrode.

The electrode was tested on an electrical test bench and on human subjects in four modalities of EEG activity, namely: (1) spontaneous EEG, (2) sensory event-related potentials, (3) brain stem potentials, and (4) cognitive event-related potentials. The performance of the dry electrode compared favorably with that of the standard wet electrodes in terms of skin preparation, no gel requirements (dry), and higher signal-to-noise ratio.[89]

In 1999 researchers at Case Western Reserve University, in Cleveland, Ohio, led by Hunter Peckham, used 64-electrode EEG skullcap to return limited hand movements to quadriplegic Jim Jatich. As Jatich concentrated on simple but opposite concepts like up and down, his beta-rhythm EEG output was analysed using software to identify patterns in the noise. A basic pattern was identified and used to control a switch: Above average activity was set to on, below average off. As well as enabling Jatich to control a computer cursor the signals were also used to drive the nerve controllers embedded in his hands, restoring some movement.[90]
SSVEP mobile EEG BCIs

In 2009, the NCTU Brain-Computer-Interface-headband was reported. The researchers who developed this BCI-headband also engineered silicon-based MicroElectro-Mechanical System (MEMS) dry electrodes designed for application in non-hairy sites of the body. These electrodes were secured to the DAQ board in the headband with snap-on electrode holders. The signal processing module measured alpha activity and the Bluetooth enabled phone assessed the patients' alertness and capacity for cognitive performance. When the subject became drowsy, the phone sent arousing feedback to the operator to rouse them. This research was supported by the National Science Council, Taiwan, R.O.C., NSC, National Chiao-Tung University, Taiwan's Ministry of Education, and the U.S. Army Research Laboratory.[91]

In 2011, researchers reported a cellular based BCI with the capability of taking EEG data and converting it into a command to cause the phone to ring. This research was supported in part by Abraxis Bioscience LLP, the U.S. Army Research Laboratory, and the Army Research Office. The developed technology was a wearable system composed of a four channel bio-signal acquisition/amplification module, a wireless transmission module, and a Bluetooth enabled cell phone.  The electrodes were placed so that they pick up steady state visual evoked potentials (SSVEPs).[92] SSVEPs are electrical responses to flickering visual stimuli with repetition rates over 6 Hz[92] that are best found in the parietal and occipital scalp regions of the visual cortex.[93] It was reported that with this BCI setup, all study participants were able to initiate the phone call with minimal practice in natural environments.[94]

The scientists claim that their studies using a single channel fast Fourier transform (FFT) and multiple channel system canonical correlation analysis (CCA) algorithm support the capacity of mobile BCIs.[92][95] The CCA algorithm has been applied in other experiments investigating BCIs with claimed high performance in accuracy as well as speed.[96] While the cellular based BCI technology was developed to initiate a phone call from SSVEPs, the researchers said that it can be translated for other applications, such as picking up sensorimotor mu/beta rhythms to function as a motor-imagery based BCI.[92]

In 2013, comparative tests were performed on android cell phone, tablet, and computer based BCIs, analyzing the power spectrum density of resultant EEG SSVEPs. The stated goals of this study, which involved scientists supported in part by the U.S. Army Research Laboratory, were to "increase the practicability, portability, and ubiquity of an SSVEP-based BCI, for daily use". Citation It was reported that the stimulation frequency on all mediums was accurate, although the cell phone's signal demonstrated some instability. The amplitudes of the SSVEPs for the laptop and tablet were also reported to be larger than those of the cell phone. These two qualitative characterizations were suggested as indicators of the feasibility of using a mobile stimulus BCI.[95]
Limitations

In 2011, researchers stated that continued work should address ease of use, performance robustness, reducing hardware and software costs.[92]

One of the difficulties with EEG readings is the large susceptibility to motion artifacts.[97] In most of the previously described research projects, the participants were asked to sit still, reducing head and eye movements as much as possible, and measurements were taken in a laboratory setting. However, since the emphasized application of these initiatives had been in creating a mobile device for daily use,[95] the technology had to be tested in motion.

In 2013, researchers tested mobile EEG-based BCI technology, measuring SSVEPs from participants as they walked on a treadmill at varying speeds. This research was supported by the Office of Naval Research, Army Research Office, and the U.S. Army Research Laboratory. Stated results were that as speed increased the SSVEP detectability using CCA decreased. As independent component analysis (ICA) had been shown to be efficient in separating EEG signals from noise,[98] the scientists applied ICA to CCA extracted EEG data. They stated that the CCA data with and without ICA processing were similar. Thus, they concluded that CCA independently demonstrated a robustness to motion artifacts that indicates it may be a beneficial algorithm to apply to BCIs used in real world conditions.[93]

In 2020, researchers from the University of California used a computing system related to brain-machine interfaces to translate brainwaves into sentences. However, their decoding was limited to 30–50 sentences, even though the word error rates were as low as 3%.[99]
Prosthesis and environment control

Non-invasive BCIs have also been applied to enable brain-control of prosthetic upper and lower extremity devices in people with paralysis. For example, Gert Pfurtscheller of Graz University of Technology and colleagues demonstrated a BCI-controlled functional electrical stimulation system to restore upper extremity movements in a person with tetraplegia due to spinal cord injury.[100] Between 2012 and 2013, researchers at the University of California, Irvine demonstrated for the first time that it is possible to use BCI technology to restore brain-controlled walking after spinal cord injury. In their spinal cord injury research study, a person with paraplegia was able to operate a BCI-robotic gait orthosis to regain basic brain-controlled ambulation.[101][102] In 2009 Alex Blainey, an independent researcher based in the UK, successfully used the Emotiv EPOC to control a 5 axis robot arm.[103] He then went on to make several demonstration mind controlled wheelchairs and home automation that could be operated by people with limited or no motor control such as those with paraplegia and cerebral palsy.

Research into military use of BCIs funded by DARPA has been ongoing since the 1970s.[2][3] The current focus of research is user-to-user communication through analysis of neural signals.[104]
DIY and open source BCI

In 2001, The OpenEEG Project[105] was initiated by a group of DIY neuroscientists and engineers. The ModularEEG was the primary device created by the OpenEEG community; it was a 6-channel signal capture board that cost between $200 and $400 to make at home. The OpenEEG Project marked a significant moment in the emergence of DIY brain-computer interfacing.

In 2010, the Frontier Nerds of NYU's ITP program published a thorough tutorial titled How To Hack Toy EEGs.[106] The tutorial, which stirred the minds of many budding DIY BCI enthusiasts, demonstrated how to create a single channel at-home EEG with an Arduino and a Mattel Mindflex at a very reasonable price. This tutorial amplified the DIY BCI movement.

In 2013, OpenBCI emerged from a DARPA solicitation and subsequent Kickstarter campaign. They created a high-quality, open-source 8-channel EEG acquisition board, known as the 32bit Board, that retailed for under $500. Two years later they created the first 3D-printed EEG Headset, known as the Ultracortex, as well as a 4-channel EEG acquisition board, known as the Ganglion Board, that retailed for under $100.
MEG and MRI
Main articles: Magnetoencephalography and Magnetic resonance imaging
ATR Labs' reconstruction of human vision using fMRI (top row: original image; bottom row: reconstruction from mean of combined readings)

Magnetoencephalography (MEG) and functional magnetic resonance imaging (fMRI) have both been used successfully as non-invasive BCIs.[107] In a widely reported experiment, fMRI allowed two users being scanned to play Pong in real-time by altering their haemodynamic response or brain blood flow through biofeedback techniques.[108]

fMRI measurements of haemodynamic responses in real time have also been used to control robot arms with a seven-second delay between thought and movement.[109]

In 2008 research developed in the Advanced Telecommunications Research (ATR) Computational Neuroscience Laboratories in Kyoto, Japan, allowed the scientists to reconstruct images directly from the brain and display them on a computer in black and white at a resolution of 10x10 pixels. The article announcing these achievements was the cover story of the journal Neuron of 10 December 2008.[110]

In 2011 researchers from UC Berkeley published[111] a study reporting second-by-second reconstruction of videos watched by the study's subjects, from fMRI data. This was achieved by creating a statistical model relating visual patterns in videos shown to the subjects, to the brain activity caused by watching the videos. This model was then used to look up the 100 one-second video segments, in a database of 18 million seconds of random YouTube videos, whose visual patterns most closely matched the brain activity recorded when subjects watched a new video. These 100 one-second video extracts were then combined into a mashed-up image that resembled the video being watched.[112][113][114]
BCI control strategies in neurogaming
Motor imagery

Motor imagery involves the imagination of the movement of various body parts resulting in sensorimotor cortex activation, which modulates sensorimotor oscillations in the EEG. This can be detected by the BCI to infer a user's intent. Motor imagery typically requires a number of sessions of training before acceptable control of the BCI is acquired. These training sessions may take a number of hours over several days before users can consistently employ the technique with acceptable levels of precision. Regardless of the duration of the training session, users are unable to master the control scheme. This results in very slow pace of the gameplay.[115] Advanced machine learning methods were recently developed to compute a subject-specific model for detecting the performance of motor imagery. The top performing algorithm from BCI Competition IV[116] dataset 2 for motor imagery is the Filter Bank Common Spatial Pattern, developed by Ang et al. from A*STAR, Singapore).[117]
Bio/neurofeedback for passive BCI designs

Biofeedback is used to monitor a subject's mental relaxation. In some cases, biofeedback does not monitor electroencephalography (EEG), but instead bodily parameters such as electromyography (EMG), galvanic skin resistance (GSR), and heart rate variability (HRV). Many biofeedback systems are used to treat certain disorders such as attention deficit hyperactivity disorder (ADHD), sleep problems in children, teeth grinding, and chronic pain. EEG biofeedback systems typically monitor four different bands (theta: 4–7 Hz, alpha:8–12 Hz, SMR: 12–15 Hz, beta: 15–18 Hz) and challenge the subject to control them. Passive BCI[50] involves using BCI to enrich human–machine interaction with implicit information on the actual user's state, for example, simulations to detect when users intend to push brakes during an emergency car stopping procedure. Game developers using passive BCIs need to acknowledge that through repetition of game levels the user's cognitive state will change or adapt. Within the first play of a level, the user will react to things differently from during the second play: for example, the user will be less surprised at an event in the game if he/she is expecting it.[115]
Visual evoked potential (VEP)

A VEP is an electrical potential recorded after a subject is presented with a type of visual stimuli. There are several types of VEPs.

Steady-state visually evoked potentials (SSVEPs) use potentials generated by exciting the retina, using visual stimuli modulated at certain frequencies. SSVEP's stimuli are often formed from alternating checkerboard patterns and at times simply use flashing images. The frequency of the phase reversal of the stimulus used can be clearly distinguished in the spectrum of an EEG; this makes detection of SSVEP stimuli relatively easy. SSVEP has proved to be successful within many BCI systems. This is due to several factors, the signal elicited is measurable in as large a population as the transient VEP and blink movement and electrocardiographic artefacts do not affect the frequencies monitored. In addition, the SSVEP signal is exceptionally robust; the topographic organization of the primary visual cortex is such that a broader area obtains afferents from the central or fovial region of the visual field. SSVEP does have several problems however. As SSVEPs use flashing stimuli to infer a user's intent, the user must gaze at one of the flashing or iterating symbols in order to interact with the system. It is, therefore, likely that the symbols could become irritating and uncomfortable to use during longer play sessions, which can often last more than an hour which may not be an ideal gameplay.

Another type of VEP used with applications is the P300 potential. The P300 event-related potential is a positive peak in the EEG that occurs at roughly 300 ms after the appearance of a target stimulus (a stimulus for which the user is waiting or seeking) or oddball stimuli. The P300 amplitude decreases as the target stimuli and the ignored stimuli grow more similar.The P300 is thought to be related to a higher level attention process or an orienting response using P300 as a control scheme has the advantage of the participant only having to attend limited training sessions. The first application to use the P300 model was the P300 matrix. Within this system, a subject would choose a letter from a grid of 6 by 6 letters and numbers. The rows and columns of the grid flashed sequentially and every time the selected "choice letter" was illuminated the user's P300 was (potentially) elicited. However, the communication process, at approximately 17 characters per minute, was quite slow. The P300 is a BCI that offers a discrete selection rather than a continuous control mechanism. The advantage of P300 use within games is that the player does not have to teach himself/herself how to use a completely new control system and so only has to undertake short training instances, to learn the gameplay mechanics and basic use of the BCI paradigm.[115]
Synthetic telepathy/silent communication

In a $6.3million US Army initiative to invent devices for telepathic communication, Gerwin Schalk, underwritten in a $2.2 million grant, found the use of ECoG signals can discriminate the vowels and consonants embedded in spoken and imagined words, shedding light on the distinct mechanisms associated with production of vowels and consonants, and could provide the basis for brain-based communication using imagined speech.[70][118]

In 2002 Kevin Warwick had an array of 100 electrodes fired into his nervous system in order to link his nervous system into the Internet to investigate enhancement possibilities. With this in place Warwick successfully carried out a series of experiments. With electrodes also implanted into his wife's nervous system, they conducted the first direct electronic communication experiment between the nervous systems of two humans.[119][120][121][122]

Another group of researchers was able to achieve conscious brain-to-brain communication between two people separated by a distance using non-invasive technology that was in contact with the scalp of the participants. The words were encoded by binary streams using the sequences of 0's and 1's by the imaginary motor input of the person "emitting" the information. As the result of this experiment, pseudo-random bits of the information carried encoded words “hola” (“hi” in Spanish) and “ciao” (“goodbye" in Italian) and were transmitted mind-to-mind between humans separated by a distance, with blocked motor and sensory systems, which has little to no probability of this happening by chance. [2]

Research into synthetic telepathy using subvocalization is taking place at the University of California, Irvine under lead scientist Mike D'Zmura. The first such communication took place in the 1960s using EEG to create Morse code using brain alpha waves. Using EEG to communicate imagined speech is less accurate than the invasive method of placing an electrode between the skull and the brain.[123] [124]On 27 February 2013 the group with Miguel Nicolelis at Duke University and IINN-ELS successfully connected the brains of two rats with electronic interfaces that allowed them to directly share information, in the first-ever direct brain-to-brain interface.[125][126][127]
Cell-culture BCIs
Main article: Cultured neuronal network

Researchers have built devices to interface with neural cells and entire neural networks in cultures outside animals. As well as furthering research on animal implantable devices, experiments on cultured neural tissue have focused on building problem-solving networks, constructing basic computers and manipulating robotic devices. Research into techniques for stimulating and recording from individual neurons grown on semiconductor chips is sometimes referred to as neuroelectronics or neurochips.[128]
The world's first Neurochip, developed by Caltech researchers Jerome Pine and Michael Maher

Development of the first working neurochip was claimed by a Caltech team led by Jerome Pine and Michael Maher in 1997.[129] The Caltech chip had room for 16 neurons.

In 2003 a team led by Theodore Berger, at the University of Southern California, started work on a neurochip designed to function as an artificial or prosthetic hippocampus. The neurochip was designed to function in rat brains and was intended as a prototype for the eventual development of higher-brain prosthesis. The hippocampus was chosen because it is thought to be the most ordered and structured part of the brain and is the most studied area. Its function is to encode experiences for storage as long-term memories elsewhere in the brain.[130]

In 2004 Thomas DeMarse at the University of Florida used a culture of 25,000 neurons taken from a rat's brain to fly a F-22 fighter jet aircraft simulator.[131] After collection, the cortical neurons were cultured in a petri dish and rapidly began to reconnect themselves to form a living neural network. The cells were arranged over a grid of 60 electrodes and used to control the pitch and yaw functions of the simulator. The study's focus was on understanding how the human brain performs and learns computational tasks at a cellular level.
Ethical considerations
	
This section includes a list of general references, but it remains largely unverified because it lacks sufficient corresponding inline citations. Please help to improve this section by introducing more precise citations. (June 2019) (Learn how and when to remove this template message)

Sources:[132][133][134][135][136]
User-centric issues

    Long-term effects to the user remain largely unknown.
    Obtaining informed consent from people who have difficulty communicating.
    The consequences of BCI technology for the quality of life of patients and their families.
    Health-related side-effects (e.g. neurofeedback of sensorimotor rhythm training is reported to affect sleep quality).
    Therapeutic applications and their potential misuse.
    Safety risks
    Non-convertibility of some of the changes made to the brain

Legal and social

    Issues of accountability and responsibility: claims that the influence of BCIs overrides free will and control over sensory-motor actions, claims that cognitive intention was inaccurately translated due to a BCI malfunction.
    Personality changes involved caused by deep-brain stimulation.
    Concerns regarding the state of becoming a "cyborg" - having parts of the body that are living and parts that are mechanical.
    Questions personality: what does it mean to be a human?
    Blurring of the division between human and machine and inability to distinguish between human vs. machine-controlled actions.
    Use of the technology in advanced interrogation techniques by governmental authorities.
    Selective enhancement and social stratification.
    Questions of research ethics that arise when progressing from animal experimentation to application in human subjects.
    Moral questions
    Mind reading and privacy.
    Tracking and "tagging system"
    Mind control.
    Movement control
    Emotion control

In their current form, most BCIs are far removed from the ethical issues considered above. They are actually similar to corrective therapies in function. Clausen stated in 2009 that "BCIs pose ethical challenges, but these are conceptually similar to those that bioethicists have addressed for other realms of therapy".[132] Moreover, he suggests that bioethics is well-prepared to deal with the issues that arise with BCI technologies. Haselager and colleagues[133] pointed out that expectations of BCI efficacy and value play a great role in ethical analysis and the way BCI scientists should approach media. Furthermore, standard protocols can be implemented to ensure ethically sound informed-consent procedures with locked-in patients.

The case of BCIs today has parallels in medicine, as will its evolution. Similar to how pharmaceutical science began as a balance for impairments and is now used to increase focus and reduce need for sleep, BCIs will likely transform gradually from therapies to enhancements.[135] Efforts are made inside the BCI community to create consensus on ethical guidelines for BCI research, development and dissemination.[136]
Low-cost BCI-based interfaces
Main article: Consumer brain–computer interfaces

Recently a number of companies have scaled back medical grade EEG technology (and in one case, NeuroSky, rebuilt the technology from the ground up[clarification needed]) to create inexpensive BCIs. This technology has been built into toys and gaming devices; some of these toys have been extremely commercially successful like the NeuroSky and Mattel MindFlex.

    In 2006 Sony patented a neural interface system allowing radio waves to affect signals in the neural cortex.[137]
    In 2007 NeuroSky released the first affordable consumer based EEG along with the game NeuroBoy. This was also the first large scale EEG device to use dry sensor technology.[138]
    In 2008 OCZ Technology developed a device for use in video games relying primarily on electromyography.[139]
    In 2008 Final Fantasy developer Square Enix announced that it was partnering with NeuroSky to create a game, Judecca.[140][141]
    In 2009 Mattel partnered with NeuroSky to release the Mindflex, a game that used an EEG to steer a ball through an obstacle course. It is by far the best selling consumer based EEG to date.[140][142]
    In 2009 Uncle Milton Industries partnered with NeuroSky to release the Star Wars Force Trainer, a game designed to create the illusion of possessing the Force .[140][143]
    In 2009 Emotiv released the EPOC, a 14 channel EEG device that can read 4 mental states, 13 conscious states, facial expressions, and head movements. The EPOC is the first commercial BCI to use dry sensor technology, which can be dampened with a saline solution for a better connection.[144]
    In November 2011 Time Magazine selected "necomimi" produced by Neurowear as one of the best inventions of the year. The company announced that it expected to launch a consumer version of the garment, consisting of cat-like ears controlled by a brain-wave reader produced by NeuroSky, in spring 2012.[145]
    In February 2014 They Shall Walk (a nonprofit organization fixed on constructing exoskeletons, dubbed LIFESUITs, for paraplegics and quadriplegics) began a partnership with James W. Shakarji on the development of a wireless BCI.[146]
    In 2016, a group of hobbyists developed an open-source BCI board that sends neural signals to the audio jack of a smartphone, dropping the cost of entry-level BCI to £20.[147] Basic diagnostic software is available for Android devices, as well as a text entry app for Unity.[148]
    In 2018, the Compassionate AI Lab, a nonprofit organization focused on using reinforcement learning and other AI techniques to help disable people.[149][neutrality is disputed]

Future directions
Brain-computer interface

A consortium consisting of 12 European partners has completed a roadmap to support the European Commission in their funding decisions for the new framework program Horizon 2020. The project, which was funded by the European Commission, started in November 2013 and published a roadmap in April 2015.[150] A 2015 publication led by Dr. Clemens Brunner describes some of the analyses and achievements of this project, as well as the emerging Brain-Computer Interface Society.[151] For example, this article reviewed work within this project that further defined BCIs and applications, explored recent trends, discussed ethical issues, and evaluated different directions for new BCIs. As the article notes, their new roadmap generally extends and supports the recommendations from the Future BNCI project managed by Dr. Brendan Allison, which conveys substantial enthusiasm for emerging BCI directions.

Other recent publications too have explored future BCI directions for new groups of disabled users (e.g.,[9][152][153][154][155]). Some prominent examples are summarized below.
Disorders of consciousness (DOC)

Some persons have a disorder of consciousness (DOC). This state is defined to include persons with coma, as well as persons in a vegetative state (VS) or minimally conscious state (MCS). New BCI research seeks to help persons with DOC in different ways. A key initial goal is to identify patients who are able to perform basic cognitive tasks, which would of course lead to a change in their diagnosis. That is, some persons who are diagnosed with DOC may in fact be able to process information and make important life decisions (such as whether to seek therapy, where to live, and their views on end-of-life decisions regarding them). Some persons who are diagnosed with DOC die as a result of end-of-life decisions, which may be made by family members who sincerely feel this is in the patient's best interests. Given the new prospect of allowing these patients to provide their views on this decision, there would seem to be a strong ethical pressure to develop this research direction to guarantee that DOC patients are given an opportunity to decide whether they want to live.[156][157]

These and other articles describe new challenges and solutions to use BCI technology to help persons with DOC. One major challenge is that these patients cannot use BCIs based on vision. Hence, new tools rely on auditory and/or vibrotactile stimuli. Patients may wear headphones and/or vibrotactile stimulators placed on the wrists, neck, leg, and/or other locations. Another challenge is that patients may fade in and out of consciousness, and can only communicate at certain times. This may indeed be a cause of mistaken diagnosis. Some patients may only be able to respond to physicians' requests during a few hours per day (which might not be predictable ahead of time) and thus may have been unresponsive during diagnosis. Therefore, new methods rely on tools that are easy to use in field settings, even without expert help, so family members and other persons without any medical or technical background can still use them. This reduces the cost, time, need for expertise, and other burdens with DOC assessment. Automated tools can ask simple questions that patients can easily answer, such as "Is your father named George?" or "Were you born in the USA?" Automated instructions inform patients that they may convey yes or no by (for example) focusing their attention on stimuli on the right vs. left wrist. This focused attention produces reliable changes in EEG patterns that can help determine that the patient is able to communicate. The results could be presented to physicians and therapists, which could lead to a revised diagnosis and therapy. In addition, these patients could then be provided with BCI-based communication tools that could help them convey basic needs, adjust bed position and HVAC (heating, ventilation, and air conditioning), and otherwise empower them to make major life decisions and communicate.[158][159][160]
Motor recovery

People may lose some of their ability to move due to many causes, such as stroke or injury. Several groups have explored systems and methods for motor recovery that include BCIs.[161][162][163][164] In this approach, a BCI measures motor activity while the patient imagines or attempts movements as directed by a therapist. The BCI may provide two benefits: (1) if the BCI indicates that a patient is not imagining a movement correctly (non-compliance), then the BCI could inform the patient and therapist; and (2) rewarding feedback such as functional stimulation or the movement of a virtual avatar also depends on the patient's correct movement imagery.

So far, BCIs for motor recovery have relied on the EEG to measure the patient's motor imagery. However, studies have also used fMRI to study different changes in the brain as persons undergo BCI-based stroke rehab training.[165][166] Future systems might include the fMRI and other measures for real-time control, such as functional near-infrared, probably in tandem with EEGs. Non-invasive brain stimulation has also been explored in combination with BCIs for motor recovery.[167] In 2016, scientists out of the University of Melbourne published preclinical proof-of-concept data related to a potential brain-computer interface technology platform being developed for patients with paralysis to facilitate control of external devices such as robotic limbs, computers and exoskeletons by translating brain activity.[168][169] Clinical trials are currently underway.[170]
Functional brain mapping

Each year, about 400,000 people undergo brain mapping during neurosurgery. This procedure is often required for people with tumors or epilepsy that do not respond to medication.[171] During this procedure, electrodes are placed on the brain to precisely identify the locations of structures and functional areas. Patients may be awake during neurosurgery and asked to perform certain tasks, such as moving fingers or repeating words. This is necessary so that surgeons can remove only the desired tissue while sparing other regions, such as critical movement or language regions. Removing too much brain tissue can cause permanent damage, while removing too little tissue can leave the underlying condition untreated and require additional neurosurgery. Thus, there is a strong need to improve both methods and systems to map the brain as effectively as possible.

In several recent publications, BCI research experts and medical doctors have collaborated to explore new ways to use BCI technology to improve neurosurgical mapping. This work focuses largely on high gamma activity, which is difficult to detect with non-invasive means. Results have led to improved methods for identifying key areas for movement, language, and other functions. A recent article addressed advances in functional brain mapping and summarizes a workshop.[172]
Flexible devices

Flexible electronics are polymers or other flexible materials (e.g. silk,[173] pentacene, PDMS, Parylene, polyimide[174]) that are printed with circuitry; the flexible nature of the organic background materials allowing the electronics created to bend, and the fabrication techniques used to create these devices resembles those used to create integrated circuits and microelectromechanical systems (MEMS).[citation needed] Flexible electronics were first developed in the 1960s and 1970s, but research interest increased in the mid-2000s.[175]
Neural dust
Main article: Neural dust

Neural dust is a term used to refer to millimeter-sized devices operated as wirelessly powered nerve sensors that were proposed in a 2011 paper from the University of California, Berkeley Wireless Research Center, which described both the challenges and outstanding benefits of creating a long lasting wireless BCI.[176][177] In one proposed model of the neural dust sensor, the transistor model allowed for a method of separating between local field potentials and action potential "spikes", which would allow for a greatly diversified wealth of data acquirable from the recordings.[176]
See also

    Informatics
    Augmented learning
    Biological machine
    Cortical implants
    Deep brain stimulation
    Human senses
    Kernel (neurotechnology company)
    Lie detection
    Microwave auditory effect
    Neural engineering
    Neuralink
    Neurorobotics
    Neurostimulation
    Nootropic
    Project Cyborg
    Simulated reality
    Telepresence
    Thought identification
    Whole brain emulation

Notes

    These electrodes had not been implanted in the patient with the intention of developing a BCI. The patient had been suffering from severe epilepsy and the electrodes were temporarily implanted to help his physicians localize seizure foci; the BCI researchers simply took advantage of this.[68]

References

Krucoff, Max O.; Rahimpour, Shervin; Slutzky, Marc W.; Edgerton, V. Reggie; Turner, Dennis A. (1 January 2016). "Enhancing Nervous System Recovery through Neurobiologics, Neural Interface Training, and Neurorehabilitation". Frontiers in Neuroscience. 10: 584. doi:10.3389/fnins.2016.00584. PMC 5186786. PMID 28082858.
Vidal, JJ (1973). "Toward direct brain-computer communication". Annual Review of Biophysics and Bioengineering. 2 (1): 157–80. doi:10.1146/annurev.bb.02.060173.001105. PMID 4583653.
J. Vidal (1977). "Real-Time Detection of Brain Events in EEG" (PDF). Proceedings of the IEEE. 65 (5): 633–641. doi:10.1109/PROC.1977.10542. S2CID 7928242.
Levine, SP; Huggins, JE; Bement, SL; Kushwaha, RK; Schuh, LA; Rohde, MM; Passaro, EA; Ross, DA; Elisevich, KV; et al. (2000). "A direct brain interface based on event-related potentials". IEEE Transactions on Rehabilitation Engineering. 8 (2): 180–5. doi:10.1109/86.847809. PMID 10896180.
Bird, Jordan J.; Manso, Luis J.; Ekart, Aniko; Faria, Diego R. (September 2018). A Study on Mental State Classification using EEG-based Brain-Machine Interface. Madeira Island, Portugal: 9th international Conference on Intelligent Systems 2018. Retrieved 3 December 2018.
Bird, Jordan J.; Ekart, Aniko; Buckingham, Christopher D.; Faria, Diego R. (2019). Mental Emotional Sentiment Classification with an EEG-based Brain-Machine Interface. St Hugh's College, University of Oxford, United Kingdom: The International Conference on Digital Image and Signal Processing (DISP'19). Archived from the original on 3 December 2018. Retrieved 3 December 2018.
Vanneste S, Song JJ, De Ridder D (March 2018). "Thalamocortical dysrhythmia detected by machine learning". Nature Communications. 9 (1): 1103. Bibcode:2018NatCo...9.1103V. doi:10.1038/s41467-018-02820-0. PMC 5856824. PMID 29549239.
Volker Straebel; Wilm Thoben (2014). "Alvin Lucier's music for solo performer: experimental music beyond sonification". Organised Sound. 19 (1): 17–29. doi:10.1017/S135577181300037X.
Wolpaw, J.R. and Wolpaw, E.W. (2012). "Brain-Computer Interfaces: Something New Under the Sun". In: Brain-Computer Interfaces: Principles and Practice, Wolpaw, J.R. and Wolpaw (eds.), E.W. Oxford University Press.
Wolpaw J.R.; Birbaumer N.; McFarland D.J.; Pfurtscheller G.; Vaughan T. M. (2002). "Brain–computer interfaces for communication and control". Clinical Neurophysiology. 113 (6): 767–791. doi:10.1016/s1388-2457(02)00057-3. PMID 12048038. S2CID 17571592.
Allison B.Z.; Wolpaw E.W.; Wolpaw J.R. (2007). "Brain–computer interface systems: Progress and prospects". Expert Review of Medical Devices. 4 (4): 463–474. doi:10.1586/17434440.4.4.463. PMID 17605682. S2CID 4690450.
[1]
S. Bozinovski, M. Sestakov, L. Bozinovska: Using EEG alpha rhythm to control a mobile robot, In G. Harris, C. Walker (eds.) Proc. IEEE Annual Conference of Medical and Biological Society, p. 1515-1516, New Orleans, 1988
S. Bozinovski: Mobile robot trajectory control: From fixed rails to direct bioelectric control, In O. Kaynak (ed.) Proc. IEEE Workshop on Intelligent Motion Control, p. 63-67, Istanbul, 1990
M. Lebedev: Augmentation of sensorimotor functions with neural prostheses. Opera Medica and Physiologica. Vol. 2 (3): 211-227, 2016
M. Lebedev, M. Nicolelis: Brain-machine interfaces: from basic science to neuroprostheses and neurorehabilitation, Physiological Review 97:737-867, 2017
L. Bozinovska, G. Stojanov, M. Sestakov, S. Bozinovski: CNV pattern recognition: step toward a cognitive wave observation, In L. Torres, E. Masgrau, E. Lagunas (eds.) Signal Processing V: Theories and Applications, Proc. EUSIPCO-90: Fifth European Signal Processing Conference, Elsevier, p. 1659-1662, Barcelona, 1990
L. Bozinovska, S. Bozinovski, G. Stojanov, Electroexpectogram: experimental design and algorithms, In Proc IEEE International Biomedical Engineering Days, p. 55-60, Istanbul, 1992
Miranda, Robin (April 2015). "DARPA-funded efforts in the development of novel brain–computer interface technologies". Journal of Neuroscience Methods. 244: 52–67. Retrieved 23 March 2021.
Jacobs, M (16 May 2012). "Plasticity-Inducing TMS Protocols to Investigate Somatosensory Control of Hand Function". Neural Plasticity. 2012. Retrieved 23 March 2021.
Fox, Mattie. "Brain Chip Helps Paralyzed Man Feel His Fingers". NBC News. Retrieved 23 March 2021.
Hatmaker, Taylor. "DARPA awards $65 million to develop the perfect, tiny two-way brain-computer inerface". Tech Crunch. Retrieved 23 March 2021.
Stacey, Kevin. "Brown to receive up to $19M to engineer next-generation brain-computer interface". Brown University. Brown University. Retrieved 23 March 2021.
"Minimally Invasive "Stentrode" Shows Potential as Neural Interface for Brain". DARPA. Defense Advanced Research Projects Agency. Retrieved 23 March 2021.
NIH Publication No. 11-4798 (1 March 2011). "Cochlear Implants". National Institute on Deafness and Other Communication Disorders.
Miguel Nicolelis et al. (2001) Duke neurobiologist has developed system that allows monkeys to control robot arms via brain signals Archived 19 December 2008 at the Wayback Machine
Baum, Michele (6 September 2008). "Monkey Uses Brain Power to Feed Itself With Robotic Arm". Pitt Chronicle. Archived from the original on 10 September 2009. Retrieved 6 July 2009.
Lewis, Tanya. "Elon Musk's Pig-Brain Implant Is Still a Long Way from 'Solving Paralysis'". Scientific American. Retrieved 23 March 2021.
Shead, Sam. "Elon Musk says his start-up Neuralink has wired up a monkey to play video games using its mind". CNBC. CNBC. Retrieved 23 March 2021.
Fetz, E. E. (1969). "Operant Conditioning of Cortical Unit Activity". Science. 163 (3870): 955–8. Bibcode:1969Sci...163..955F. doi:10.1126/science.163.3870.955. PMID 4974291. S2CID 45427819.
Schmidt, EM; McIntosh, JS; Durelli, L; Bak, MJ (1978). "Fine control of operantly conditioned firing patterns of cortical neurons". Experimental Neurology. 61 (2): 349–69. doi:10.1016/0014-4886(78)90252-2. PMID 101388. S2CID 37539476.
Georgopoulos, A.; Lurito, J.; Petrides, M; Schwartz, A.; Massey, J. (1989). "Mental rotation of the neuronal population vector". Science. 243 (4888): 234–6. Bibcode:1989Sci...243..234G. doi:10.1126/science.2911737. PMID 2911737. S2CID 37161168.
Lebedev, MA; Nicolelis, MA (2006). "Brain-machine interfaces: past, present and future" (PDF). Trends in Neurosciences. 29 (9): 536–46. doi:10.1016/j.tins.2006.07.004. PMID 16859758. S2CID 701524.[permanent dead link]
Stanley, GB; Li, FF; Dan, Y (1999). "Reconstruction of natural scenes from ensemble responses in the lateral geniculate nucleus" (PDF). Journal of Neuroscience. 19 (18): 8036–42. doi:10.1523/JNEUROSCI.19-18-08036.1999. PMC 6782475. PMID 10479703.
Nicolelis, Miguel A. L.; Wessberg, Johan; Stambaugh, Christopher R.; Kralik, Jerald D.; Beck, Pamela D.; Laubach, Mark; Chapin, John K.; Kim, Jung; Biggs, S. James; et al. (2000). "Real-time prediction of hand trajectory by ensembles of cortical neurons in primates". Nature. 408 (6810): 361–5. Bibcode:2000Natur.408..361W. doi:10.1038/35042582. PMID 11099043. S2CID 795720.
Carmena, JM; Lebedev, MA; Crist, RE; O'Doherty, JE; Santucci, DM; Dimitrov, DF; Patil, PG; Henriquez, CS; Nicolelis, MA (2003). "Learning to control a brain-machine interface for reaching and grasping by primates". PLOS Biology. 1 (2): E42. doi:10.1371/journal.pbio.0000042. PMC 261882. PMID 14624244.
Lebedev, M. A.; Carmena, JM; O'Doherty, JE; Zacksenhouse, M; Henriquez, CS; Principe, JC; Nicolelis, MA (2005). "Cortical Ensemble Adaptation to Represent Velocity of an Artificial Actuator Controlled by a Brain-Machine Interface". Journal of Neuroscience. 25 (19): 4681–93. doi:10.1523/JNEUROSCI.4088-04.2005. PMC 6724781. PMID 15888644.
O'Doherty, JE; Lebedev, MA; Ifft, PJ; Zhuang, KZ; Shokur, S; Bleuler, H; Nicolelis, MA (2011). "Active tactile exploration using a brain–machine–brain interface". Nature. 479 (7372): 228–231. Bibcode:2011Natur.479..228O. doi:10.1038/nature10489. PMC 3236080. PMID 21976021.
Serruya, MD; Hatsopoulos, NG; Paninski, L; Fellows, MR; Donoghue, JP (2002). "Instant neural control of a movement signal". Nature. 416 (6877): 141–2. Bibcode:2002Natur.416..141S. doi:10.1038/416141a. PMID 11894084. S2CID 4383116.
Taylor, D. M.; Tillery, SI; Schwartz, AB (2002). "Direct Cortical Control of 3D Neuroprosthetic Devices". Science. 296 (5574): 1829–32. Bibcode:2002Sci...296.1829T. CiteSeerX 10.1.1.1027.4335. doi:10.1126/science.1070291. PMID 12052948. S2CID 9402759.
Pitt team to build on brain-controlled arm Archived 4 July 2007 at the Wayback Machine, Pittsburgh Tribune Review, 5 September 2006.
Video on YouTube
Velliste, M; Perel, S; Spalding, MC; Whitford, AS; Schwartz, AB (2008). "Cortical control of a prosthetic arm for self-feeding". Nature. 453 (7198): 1098–101. Bibcode:2008Natur.453.1098V. doi:10.1038/nature06996. PMID 18509337. S2CID 4404323.
Musallam, S.; Corneil, BD; Greger, B; Scherberger, H; Andersen, RA (2004). "Cognitive Control Signals for Neural Prosthetics" (PDF). Science. 305 (5681): 258–62. Bibcode:2004Sci...305..258M. doi:10.1126/science.1097938. PMID 15247483. S2CID 3112034.
Santucci, David M.; Kralik, Jerald D.; Lebedev, Mikhail A.; Nicolelis, Miguel A. L. (2005). "Frontal and parietal cortical ensembles predict single-trial muscle activity during reaching movements in primates". European Journal of Neuroscience. 22 (6): 1529–40. doi:10.1111/j.1460-9568.2005.04320.x. PMID 16190906. S2CID 31277881.
Chang, Edward F.; Chartier, Josh; Anumanchipalli, Gopala K. (24 April 2019). "Speech synthesis from neural decoding of spoken sentences". Nature. 568 (7753): 493–498. Bibcode:2019Natur.568..493A. doi:10.1038/s41586-019-1119-1. ISSN 1476-4687. PMID 31019317. S2CID 129946122.
Ali, Yahia H.; Pandarinath, Chethan (24 April 2019). "Brain implants that let you speak your mind". Nature. 568 (7753): 466–467. Bibcode:2019Natur.568..466P. doi:10.1038/d41586-019-01181-y. PMID 31019323.
Huber, D; Petreanu, L; Ghitani, N; Ranade, S; Hromádka, T; Mainen, Z; Svoboda, K (2008). "Sparse optical microstimulation in barrel cortex drives learned behaviour in freely moving mice". Nature. 451 (7174): 61–4. Bibcode:2008Natur.451...61H. doi:10.1038/nature06445. PMC 3425380. PMID 18094685.
Nicolelis Miguel A. L; Lebedev Mikhail A (2009). "Principles of Neural Ensemble Physiology Underlying the Operation of Brain-Machine Interfaces". Nature Reviews Neuroscience. 10 (7): 530–540. doi:10.1038/nrn2653. PMID 19543222. S2CID 9290258.
Zander, Thorsten O; Kothe, Christian (2011). "Towards passive brain–computer interfaces: applying brain–computer interface technology to human–machine systems in general". Journal of Neural Engineering. 8 (2): 025005. Bibcode:2011JNEng...8b5005Z. doi:10.1088/1741-2560/8/2/025005. PMID 21436512.
Richardson, Andrew G.; Ghenbot, Yohannes; Liu, Xilin; Hao, Han; Rinehart, Cole; DeLuccia, Sam; Maldonado, Solymar Torres; Boyek, Gregory; Zhang, Milin; Aflatouni, Firooz; Spiegel, Jan Van der (27 August 2019). "Learning active sensing strategies using a sensory brain–machine interface". Proceedings of the National Academy of Sciences. 116 (35): 17509–17514. doi:10.1073/pnas.1909953116. ISSN 0027-8424. PMC 6717311. PMID 31409713.
Abdulkader, Sarah N.; Atia, Ayman; Mostafa, Mostafa-Sami M. (July 2015). "Brain computer interfacing: Applications and challenges". Egyptian Informatics Journal. 16 (2): 213–230. doi:10.1016/j.eij.2015.06.002. ISSN 1110-8665.
Polikov, Vadim S., Patrick A. Tresco, and William M. Reichert (2005). "Response of brain tissue to chronically implanted neural electrodes". Journal of Neuroscience Methods. 148 (1): 1–18. doi:10.1016/j.jneumeth.2005.08.015. PMID 16198003. S2CID 11248506.
Vision quest, Wired Magazine, September 2002
Tuller, David (1 November 2004) Dr. William Dobelle, Artificial Vision Pioneer, Dies at 62. The New York Times
Naumann, J. Search for Paradise: A Patient's Account of the Artificial Vision Experiment (2012), Xlibris Corporation, ISBN 1-479-7092-04
nurun.com (28 November 2012). "Mr. Jen Naumann's high-tech paradise lost". Thewhig.com. Retrieved 19 December 2016.
Kennedy, PR; Bakay, RA (1998). "Restoration of neural output from a paralyzed patient by a direct brain connection". NeuroReport. 9 (8): 1707–11. doi:10.1097/00001756-199806010-00007. PMID 9665587. S2CID 5681602.
Leigh R. Hochberg; Mijail D. Serruya; Friehs; Mukand; Saleh; Caplan; Branner; Chen; Penn; Donoghue (13 July 2006). Gerhard M. Friehs, Jon A. Mukand, Maryam Saleh, Abraham H. Caplan, Almut Branner, David Chen, Richard D. Penn and John P. Donoghue. "Neuronal ensemble control of prosthetic devices by a human with tetraplegia". Nature. 442 (7099): 164–171. Bibcode:2006Natur.442..164H. doi:10.1038/nature04970. PMID 16838014. S2CID 4347367.
Hochberg, L. R.; Bacher, D.; Jarosiewicz, B.; Masse, N. Y.; Simeral, J. D.; Vogel, J.; Haddadin, S.; Liu, J.; Cash, S. S.; Van Der Smagt, P.; Donoghue, J. P. (2012). "Reach and grasp by people with tetraplegia using a neurally controlled robotic arm". Nature. 485 (7398): 372–5. Bibcode:2012Natur.485..372H. doi:10.1038/nature11076. PMC 3640850. PMID 22596161.
Collinger, Jennifer L.; et al. (2013). "High-performance neuroprosthetic control by an individual with tetraplegia". The Lancet. 381 (9866): 557–564. doi:10.1016/S0140-6736(12)61816-9. PMC 3641862. PMID 23253623.
Francis R. Willett; Donald T. Avansino; Leigh R. Hochberg; Jaimie M. Henderson; Krishna V. Shenoy (12 May 2021). "High-performance brain-to-text communication via handwriting". doi:10.1038/s41586-021-03506-2.
Gulati, Tanuj; Won, Seok Joon; Ramanathan, Dhakshin S.; Wong, Chelsea C.; Bodepudi, Anitha; Swanson, Raymond A.; Ganguly, Karunesh (2015). "Robust Neuroprosthetic Control from the Stroke Perilesional Cortex". The Journal of Neuroscience. 35 (22): 8653–8661. doi:10.1523/JNEUROSCI.5007-14.2015. PMC 6605327. PMID 26041930.
Musk, Elon. "We Are Already Cyborgs". YouTube. Recode. Retrieved 23 March 2021.
Bryson, Steve. "Stentrode Device Allows Computer Control by ALS Patients with Partial Upper Limb Paralysis". ALS News Today.
Serruya MD, Donoghue JP. (2003) Chapter III: Design Principles of a Neuromotor Prosthetic Device in Neuroprosthetics: Theory and Practice, ed. Kenneth W. Horch, Gurpreet S. Dhillon. Imperial College Press.
Teenager moves video icons just by imagination, press release, Washington University in St Louis, 9 October 2006
Schalk, G; Miller, KJ; Anderson, NR; Wilson, JA; Smyth, MD; Ojemann, JG; Moran, DW; Wolpaw, JR; Leuthardt, EC (2008). "Two-dimensional movement control using electrocorticographic signals in humans". Journal of Neural Engineering. 5 (1): 75–84. Bibcode:2008JNEng...5...75S. doi:10.1088/1741-2560/5/1/008. PMC 2744037. PMID 18310813.
Yanagisawa, Takafumi (2011). "Electrocorticographic Control of Prosthetic Arm in Paralyzed Patients". American Neurological Association. doi:10.1002/ana.22613. "ECoG- Based BCI has advantage in signal and durability that are absolutely necessary for clinical application"
Pei, X. (2011). "Decoding Vowels and Consonants in Spoken and Imagined Words Using Electrocorticographic Signals in Humans". J Neural Eng 046028th ser. 8.4. PMID 21750369. "Justin Williams, a biomedical engineer at the university, has already transformed the ECoG implant into a micro device that can be installed with a minimum of fuss. It has been tested in animals for a long period of time – the micro ECoG stays in place and doesn't seem to negatively affect the immune system."
Bozinovski S (2017). "Signal Processing Robotics Using Signals Generated by a Human Head: From Pioneering Works to EEG-Based Emulation of Digital Circuits". Advances in Robot Design and Intelligent Control. Advances in Intelligent Systems and Computing. 540. pp. 449–462. doi:10.1007/978-3-319-49058-8_49. ISBN 978-3-319-49057-1.
Mathôt, Sebastiaan; Melmi, Jean-Baptiste; Van Der Linden, Lotje; Van Der Stigchel, Stefan (2016). "The Mind-Writing Pupil: A Human-Computer Interface Based on Decoding of Covert Attention through Pupillometry". PLOS ONE. 11 (2): e0148805. Bibcode:2016PLoSO..1148805M. doi:10.1371/journal.pone.0148805. PMC 4743834. PMID 26848745.
Gallegos-Ayala, G; Furdea, A; Takano, K; Ruf, CA; Flor, H; Birbaumer, N (27 May 2014). "Brain communication in a completely locked-in patient using bedside near-infrared spectroscopy". Neurology. 82 (21): 1930–2. doi:10.1212/WNL.0000000000000449. PMC 4049706. PMID 24789862.
Ramsey, Nick F.; Chaudhary, Ujwal; Xia, Bin; Silvoni, Stefano; Cohen, Leonardo G.; Birbaumer, Niels (2017). "Brain–Computer Interface–Based Communication in the Completely Locked-In State". PLOS Biology. 15 (1): e1002593. doi:10.1371/journal.pbio.1002593. ISSN 1545-7885. PMC 5283652. PMID 28141803.
Bozinovski S., Bozinovska L. (2019). "Brain-computer interface in Europe: The thirtieth anniversary". Automatika. 60 (1): 36–47. doi:10.1080/00051144.2019.1570644.
Just short of telepathy: can you interact with the outside world if you can't even blink an eye?, Psychology Today, May–June 2003
Adrijan Bozinovski "CNV flip-flop as a brain-computer interface paradigm" In J. Kern, S. Tonkovic, et al. (Eds) Proc 7th Conference of the Croatian Association of Medical Informatics, pp. 149-154, Rijeka, 2005
A. Bozinovski, L. Bozinovska, Anticipatory Brain Potentials in a Brain-Robot Interface Paradigm, Proc. 4th International IEEE EMBS Conf. on Neural Engineering, pp. 451-454, Antalya, 2009
A. Bozinovski, S. Tonkovi´c, V. Išgum, L. Bozinovska "Robot control using anticipatory brain potentials" Automatika 52(1):20–30, 2011
Bozinovski, S., Bozinovski, A. "Mental states, EEG manifestations, and mentally emulated digital circuits for brain-robot interaction" IEEE Trans. Autonomous Mental Development 7(1):39–51, 2015
Yuan, H; Liu, Tao; Szarkowski, Rebecca; Rios, Cristina; Ashe, James; He, Bin (2010). "Negative covariation between task-related responses in alpha/beta-band activity and BOLD in human sensorimotor cortex: an EEG and fMRI study of motor imagery and movements". NeuroImage. 49 (3): 2596–2606. doi:10.1016/j.neuroimage.2009.10.028. PMC 2818527. PMID 19850134.
Doud, AJ; Lucas, John P.; Pisansky, Marc T.; He, Bin (2011). Gribble, Paul L (ed.). "Continuous Three-Dimensional Control of a Virtual Helicopter Using a Motor Imagery Based Brain-Computer Interface". PLOS ONE. 6 (10): e26322. Bibcode:2011PLoSO...626322D. doi:10.1371/journal.pone.0026322. PMC 3202533. PMID 22046274.
"Thought-guided helicopter takes off". BBC. 5 June 2013. Retrieved 5 June 2013.
Qin, L; Ding, Lei; He, Bin (2004). "Motor imagery classification by means of source analysis for brain-computer interface applications". Journal of Neural Engineering. 1 (3): 135–141. Bibcode:2004JNEng...1..135Q. doi:10.1088/1741-2560/1/3/002. PMC 1945182. PMID 15876632.
Höhne, J; Holz, E; Staiger-Sälzer, P; Müller, KR; Kübler, A; Tangermann, M (2014). "Motor imagery for severely motor-impaired patients: evidence for brain-computer interfacing as superior control solution". PLOS ONE. 9 (8): e104854. Bibcode:2014PLoSO...9j4854H. doi:10.1371/journal.pone.0104854. PMC 4146550. PMID 25162231.
Maskeliunas, Rytis; Damasevicius, Robertas; Martisius, Ignas; Vasiljevas, Mindaugas (2016). "Consumer grade EEG devices: are they usable for control tasks?". PeerJ. 4: e1746. doi:10.7717/peerj.1746. ISSN 2167-8359.
Bird, Jordan J.; Faria, Diego R.; Manso, Luis J.; Ekárt, Anikó; Buckingham, Christopher D. (13 March 2019). "A Deep Evolutionary Approach to Bioinspired Classifier Optimisation for Brain-Machine Interaction". Complexity. Hindawi Limited. 2019: 1–14. doi:10.1155/2019/4316548. ISSN 1076-2787.
Taheri, B; Knight, R; Smith, R (1994). "A dry electrode for EEG recording☆". Electroencephalography and Clinical Neurophysiology. 90 (5): 376–83. doi:10.1016/0013-4694(94)90053-1. PMID 7514984.
Alizadeh-Taheri, Babak (1994). "Active Micromachined Scalp Electrode Array for Eeg Signal Recording". PHD Thesis: 82. Bibcode:1994PhDT........82A.
The Next BrainiacsWired Magazine, August 2001.
Lin, Chin-Teng; Ko, Li-Wei; Chang, Che-Jui; Wang, Yu-Te; Chung, Chia-Hsin; Yang, Fu-Shu; Duann, Jeng-Ren; Jung, Tzyy-Ping; Chiou, Jin-Chern (2009), "Wearable and Wireless Brain-Computer Interface and Its Applications", Foundations of Augmented Cognition. Neuroergonomics and Operational Neuroscience, Springer Berlin Heidelberg, pp. 741–748, doi:10.1007/978-3-642-02812-0_84, ISBN 9783642028113, S2CID 14515754
Wang, Yu-Te; Wang, Yijun; Jung, Tzyy-Ping (April 2011). "A cell-phone-based brain-computer interface for communication in daily life". Journal of Neural Engineering. 8 (2): 025018. Bibcode:2011JNEng...8b5018W. doi:10.1088/1741-2560/8/2/025018. ISSN 1741-2552. PMID 21436517. S2CID 10943518.
Yuan-Pin Lin; Yijun Wang; Tzyy-Ping Jung (2013). "A mobile SSVEP-based brain-computer interface for freely moving humans: The robustness of canonical correlation analysis to motion artifacts". 2013 35th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC). Engineering in Medicine and Biology Society, 2008. Embs 2008. 30Th Annual International Conference of the IEEE. 2013. pp. 1350–1353. doi:10.1109/EMBC.2013.6609759. ISBN 978-1-4577-0216-7. ISSN 1557-170X. PMID 24109946. S2CID 23136360.
"U.S. patent No. 2013/0127708 A1 (issued 23 May 2013)."
Yu-Te Wang; Yijun Wang; Chung-Kuan Cheng; Tzyy-Ping Jung (2013). "Developing stimulus presentation on mobile devices for a truly portable SSVEP-based BCI". 2013 35th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC). Engineering in Medicine and Biology Society, 2008. Embs 2008. 30Th Annual International Conference of the IEEE. 2013. pp. 5271–5274. doi:10.1109/EMBC.2013.6610738. ISBN 978-1-4577-0216-7. ISSN 1557-170X. PMID 24110925. S2CID 14324159.
Bin, Guangyu; Gao, Xiaorong; Yan, Zheng; Hong, bo; Gao, Shangkai (1 July 2009). "An online multi-channel SSVEP-based brain-computer interface using a canonical correlation analysis method". Journal of Neural Engineering. 6 (4): 046002. Bibcode:2009JNEng...6d6002B. doi:10.1088/1741-2560/6/4/046002. PMID 19494422.
Symeonidou, Evangelia-Regkina; D Nordin, Andrew; Hairston, W David; Ferris, Daniel (3 April 2018). "Effects of Cable Sway, Electrode Surface Area, and Electrode Mass on Electroencephalography Signal Quality during Motion". Sensors. 18 (4): 1073. doi:10.3390/s18041073. PMC 5948545. PMID 29614020.
Wang, Yijun; Wang, Ruiping; Gao, Xiaorong; Hong, Bo; Gao, Shangkai (June 2006). "A practical VEP-based brain-computer interface". IEEE Transactions on Neural Systems and Rehabilitation Engineering. 14 (2): 234–239. doi:10.1109/TNSRE.2006.875576. ISSN 1534-4320. PMID 16792302.
Makin, Joseph G.; Moses, David A.; Chang, Edward F. (2020). "Machine translation of cortical activity to text with an encoder–decoder framework". Nature Neuroscience. 23 (4): 575–582. doi:10.1038/s41593-020-0608-8. PMID 32231340. S2CID 214704481.
Pfurtscheller, G.; Müller, G. R.; Pfurtscheller, J. R.; Gerner, H. J. R.; Rupp, R. D. (2003). "'Thought' – control of functional electrical stimulation to restore hand grasp in a patient with tetraplegia". Neuroscience Letters. 351 (1): 33–36. doi:10.1016/S0304-3940(03)00947-9. PMID 14550907. S2CID 38568963.
Do, An H; Wang, Po T; King, Christine E; Chun, Sophia N; Nenadic, Zoran (2013). "Brain-computer interface controlled robotic gait orthosis". Journal of NeuroEngineering and Rehabilitation. 10 (1): 111. doi:10.1186/1743-0003-10-111. ISSN 1743-0003. PMC 3907014. PMID 24321081.
Subject with Paraplegia Operates BCI-controlled RoGO (4x) at YouTube.com
Alex Blainey controls a cheap consumer robot arm using the EPOC headset via a serial relay port at YouTube.com
Drummond, Katie (14 May 2009). "Pentagon Preps Soldier Telepathy Push". Wired Magazine. Retrieved 6 May 2009.
"The OpenEEG Project". Openeeg.sourceforge.net. Retrieved 19 December 2016.
"How To Hack Toy EEGs". Frontiernerds.com. Retrieved 19 December 2016.
Ranganatha Sitaram, Andrea Caria, Ralf Veit, Tilman Gaber, Giuseppina Rota, Andrea Kuebler and Niels Birbaumer(2007) "FMRI Brain–Computer Interface: A Tool for Neuroscientific Research and Treatment[permanent dead link]"
Peplow, Mark (2004). "Mental ping-pong could aid paraplegics". News@nature. doi:10.1038/news040823-18.
To operate robot only with brain, ATR and Honda develop BMI base technology, Tech-on, 26 May 2006
Miyawaki, Yoichi; Uchida, Hajime; Yamashita, Okito; Sato, Masa-aki; Morito, Yusuke; Tanabe, Hiroki C.; Sadato, Norihiro; Kamitani, Yukiyasu (2008). "Visual Image Reconstruction from Human Brain Activity using a Combination of Multiscale Local Image Decoders". Neuron. 60 (5): 915–29. doi:10.1016/j.neuron.2008.11.004. PMID 19081384. S2CID 17327816.
Nishimoto, Shinji; Vu, An T.; Naselaris, Thomas; Benjamini, Yuval; Yu, Bin; Gallant, Jack L. (2011). "Reconstructing Visual Experiences from Brain Activity Evoked by Natural Movies". Current Biology. 21 (19): 1641–1646. doi:10.1016/j.cub.2011.08.031. PMC 3326357. PMID 21945275.
Yam, Philip (22 September 2011). "Breakthrough Could Enable Others to Watch Your Dreams and Memories". Scientific American. Retrieved 25 September 2011.
"Reconstructing visual experiences from brain activity evoked by natural movies (Project page)". The Gallant Lab at UC Berkeley. Retrieved 25 September 2011.
Yasmin Anwar (22 September 2011). "Scientists use brain imaging to reveal the movies in our mind". UC Berkeley News Center. Retrieved 25 September 2011.
Coyle, Damien; Marshall, David; Wilson, Shane; Callaghan, Michael (2013). "Games, Gameplay, and BCI: The State of the Art". IEEE Transactions on Computational Intelligence and AI in Games. 5 (2): 83. doi:10.1109/TCIAIG.2013.2263555. S2CID 206636315.
<http://www.bbci.de/competition/iv/>
Ang, Kai Keng; Chin, Zheng Yang; Wang, Chuanchu; Guan, Cuntai; Zhang, Haihong (1 January 2012). "Filter bank common spatial pattern algorithm on BCI competition IV Datasets 2a and 2b". Frontiers in Neuroscience. 6: 39. doi:10.3389/fnins.2012.00039. PMC 3314883. PMID 22479236.
Kennedy, Pagan (18 September 2011). "The Cyborg in Us All". The New York Times. Retrieved 28 January 2012.
"The Bionic Connection - DiscoverMagazine.com".
"Nervous System Hookup Leads to Telepathic Hand-Holding". 10 June 2015.
Warwick, K, Gasson, M, Hutt, B, Goodhew, I, Kyberd, P, Schulzrinne, H and Wu, X: "Thought Communication and Control: A First Step using Radiotelegraphy", IEE Proceedings on Communications, 151(3), pp.185–189, 2004
Warwick, K.; Gasson, M.; Hutt, B.; Goodhew, I.; Kyberd, P.; Andrews, B.; Teddy, P.; Shad, A. (2003). "The Application of Implant Technology for Cybernetic Systems". Archives of Neurology. 60 (10): 1369–73. doi:10.1001/archneur.60.10.1369. PMID 14568806.
Bland, Eric (13 October 2008). "Army Developing'synthetic telepathy'". Discovery News. Retrieved 13 October 2008.
Panachakel, Jerrin Thomas; Ramakrishnan, Angarai Ganesan (2021). "Decoding Covert Speech From EEG-A Comprehensive Review". Frontiers in Neuroscience. 15. doi:10.3389/fnins.2021.642251. ISSN 1662-453X.
Pais-Vieira, Miguel; Lebedev, Mikhail; Kunicki, Carolina; Wang, Jing; Nicolelis, Miguel A.L. (28 February 2013). "A Brain-to-Brain Interface for Real-Time Sharing of Sensorimotor Information". Scientific Reports. 3: 1319. Bibcode:2013NatSR...3E1319P. doi:10.1038/srep01319. PMC 3584574. PMID 23448946.
Gorman, James (28 February 2013). "One Rat Thinks, and Another Reacts". The New York Times. Retrieved 28 February 2013.
"Brain-to-brain interface lets rats share information via internet". The Guardian. 1 March 2013. Retrieved 2 March 2013.
Mazzatenta, A.; Giugliano, M.; Campidelli, S.; Gambazzi, L.; Businaro, L.; Markram, H.; Prato, M.; Ballerini, L. (2007). "Interfacing Neurons with Carbon Nanotubes: Electrical Signal Transfer and Synaptic Stimulation in Cultured Brain Circuits". Journal of Neuroscience. 27 (26): 6931–6. doi:10.1523/JNEUROSCI.1051-07.2007. PMC 6672220. PMID 17596441.
Caltech Scientists Devise First Neurochip, Caltech, 26 October 1997
Coming to a brain near you Archived 10 September 2006 at the Wayback Machine, Wired News, 22 October 2004
'Brain' in a dish flies flight simulator, CNN, 4 November 2004
Clausen, Jens (2009). "Man, machine and in between". Nature. 457 (7233): 1080–1081. Bibcode:2009Natur.457.1080C. doi:10.1038/4571080a. PMID 19242454. S2CID 205043226.
Haselager, Pim; Vlek, Rutger; Hill, Jeremy; Nijboer, Femke (2009). "A note on ethical aspects of BCI". Neural Networks. 22 (9): 1352–1357. doi:10.1016/j.neunet.2009.06.046. PMID 19616405.
Tamburrini, Guglielmo (2009). "Brain to Computer Communication: Ethical Perspectives on Interaction Models". Neuroethics. 2 (3): 137–149. doi:10.1007/s12152-009-9040-1. S2CID 143780006.
Attiah, Mark A.; Farah, Martha J. (15 May 2014). "Minds, motherboards, and money: futurism and realism in the neuroethics of BCI technologies". Frontiers in Systems Neuroscience. 8 (86): 86. doi:10.3389/fnsys.2014.00086. PMC 4030132. PMID 24860445.
Nijboer, Femke; Clausen, Jens; Allison, Brendan Z; Haselager, Pim (2011). "Stakeholders' opinions on ethical issues related to brain-computer interfacing". Neuroethics. 6 (3): 541–578. doi:10.1007/s12152-011-9132-6. PMC 3825606. PMID 24273623.
"Sony patent neural interface". Archived from the original on 7 April 2012.
"Mind Games". The Economist. 23 March 2007.
"nia Game Controller Product Page". OCZ Technology Group. Retrieved 30 January 2013.
Li, Shan (8 August 2010). "Mind reading is on the market". Los Angeles Times.
Brains-on with NeuroSky and Square Enix's Judecca mind-control game. Engadget.com (9 October 2008). Retrieved on 29 May 2012.
New games powered by brain waves. Physorg.com (10 January 2009). Retrieved on 12 September 2010.
Snider, Mike (7 January 2009). "Toy trains 'Star Wars' fans to use The Force". USA Today. Retrieved 1 May 2010.
"Emotiv Homepage". Emotiv.com. Retrieved 29 December 2009.
"necomimi" selected "TIME MAGAZINE / The 50 best invention of the year". Neurowear.com. Retrieved on 29 May 2012.
"LIFESUIT Updates & News – They Shall Walk". Theyshallwalk.org. Retrieved 19 December 2016.
"SmartphoneBCI". Retrieved 5 June 2018.
"SSVEP_keyboard". Retrieved 5 April 2017.
Ray, Dr Amit (1 May 2018). "Brain-Computer Interface and Compassionate Artificial Intelligence". Inner Light Publishers.
"Roadmap - BNCI Horizon 2020". bnci-horizon-2020.eu. Retrieved 5 May 2019.
Brunner, Clemens; Birbaumer, Niels; Blankertz, Benjamin; Guger, Christoph; Kübler, Andrea; Mattia, Donatella; Millán, José del R; Miralles, Felip; Nijholt, Anton; Opisso, Eloy; Ramsey, Nick; Salomon, Patric; Müller-Putz, Gernot R (2015). "BNCI Horizon 2020: towards a roadmap for the BCI community". Brain-Computer Interfaces. 2: 1–10. doi:10.1080/2326263X.2015.1008956. hdl:1874/350349.
Allison, B.Z., Dunne, S., Leeb, R., Millan, J., and Nijholt, A. (2013). Towards Practical Brain-Computer Interfaces: Bridging the Gap from Research to Real-World Applications. Springer Verlag, Berlin Heidelberg. ISBN 978-3-642-29746-5.
Guger, C., Allison, B.Z., and Edlinger, G. (2013). Brain-Computer Interface Research: A State-of-the-Art Summary. Springer Verlag, Berlin Heidelberg.
Guger, C., Allison, B.Z., Leuthardt, E.C., and Edlinger, G. (2014). The BCI Award 2012: A State-of-the-Art Summary 2. Springer Verlag, Berlin Heidelberg.
Guger, C., Allison, B.Z., and Vaughan, T.M. (2014). The BCI Award 2013: A State-of-the-Art Summary 3. Springer Verlag, Berlin Heidelberg.
Edlinger, G., Allison, B.Z., and Guger, C. (2015). "How many people could use a BCI system?" pp. 33–66 in Clinical Systems Neuroscience, Kansaku, K., Cohen, L., and Birbaumer, N. (eds.) Springer Verlag Japan: Tokyo. ISBN 978-4-431-55037-2.
Chatelle, Camille; Chennu, Srivas; Noirhomme, Quentin; Cruse, Damian; Owen, Adrian M.; Laureys, Steven (2012). "Brain–computer interfacing in disorders of consciousness". Brain Injury. 26 (12): 1510–22. doi:10.3109/02699052.2012.698362. PMID 22759199. S2CID 6498232.
Boly M, Massimini M, Garrido MI, Gosseries O, Noirhomme Q, Laureys S, Soddu A (2012). "Brain connectivity in disorders of consciousness". Brain Connectivity. 2 (1): 1–10. doi:10.1089/brain.2011.0049. PMID 22512333. S2CID 6447538.
Gibson, Raechelle M.; Fernã¡Ndez-Espejo, Davinia; Gonzalez-Lara, Laura E.; Kwan, Benjamin Y.; Lee, Donald H.; Owen, Adrian M.; Cruse, Damian (2014). "Multiple tasks and neuroimaging modalities increase the likelihood of detecting covert awareness in patients with disorders of consciousness". Frontiers in Human Neuroscience. 8: 950. doi:10.3389/fnhum.2014.00950. PMC 4244609. PMID 25505400.
Risetti, Monica; Formisano, Rita; Toppi, Jlenia; Quitadamo, Lucia R.; Bianchi, Luigi; Astolfi, Laura; Cincotti, Febo; Mattia, Donatella (2013). "On ERPs detection in disorders of consciousness rehabilitation". Frontiers in Human Neuroscience. 7: 775. doi:10.3389/fnhum.2013.00775. PMC 3834290. PMID 24312041.
Remsik, Alexander; Young, Brittany; Vermilyea, Rebecca; Kiekhoefer, Laura; Abrams, Jessica; Elmore, Samantha Evander; Schultz, Paige; Nair, Veena; Edwards, Dorothy (3 May 2016). "A review of the progression and future implications of brain-computer interface therapies for restoration of distal upper extremity motor function after stroke". Expert Review of Medical Devices. 13 (5): 445–454. doi:10.1080/17434440.2016.1174572. ISSN 1743-4440. PMC 5131699. PMID 27112213.
Monge-Pereira, Esther; Ibañez-Pereda, Jaime; Alguacil-Diego, Isabel M.; Serrano, Jose I.; Spottorno-Rubio, María P.; Molina-Rueda, Francisco (2017). "Use of Electroencephalography Brain-Computer Interface Systems as a Rehabilitative Approach for Upper Limb Function After a Stroke: A Systematic Review". PM&R. 9 (9): 918–932. doi:10.1016/j.pmrj.2017.04.016. PMID 28512066.
Sabathiel, Nikolaus; Irimia, Danut C.; Allison, Brendan Z.; Guger, Christoph; Edlinger, Günter (17 July 2016). Paired Associative Stimulation with Brain-Computer Interfaces: A New Paradigm for Stroke Rehabilitation. Foundations of Augmented Cognition: Neuroergonomics and Operational Neuroscience. Lecture Notes in Computer Science. pp. 261–272. doi:10.1007/978-3-319-39955-3_25. ISBN 9783319399546.
Riccio, A.; Pichiorri, F.; Schettini, F.; Toppi, J.; Risetti, M.; Formisano, R.; Molinari, M.; Astolfi, L.; Cincotti, F. (2016). Brain-Computer Interfaces: Lab Experiments to Real-World Applications. Progress in Brain Research. 228. pp. 357–387. doi:10.1016/bs.pbr.2016.04.018. ISBN 9780128042168. PMID 27590975.
Várkuti, Bálint; Guan, Cuntai; Pan, Yaozhang; Phua, Kok Soon; Ang, Kai Keng; Kuah, Christopher Wee Keong; Chua, Karen; Ang, Beng Ti; Birbaumer, Niels (29 May 2012). "Resting State Changes in Functional Connectivity Correlate With Movement Recovery for BCI and Robot-Assisted Upper-Extremity Training After Stroke". Neurorehabilitation and Neural Repair. 27 (1): 53–62. doi:10.1177/1545968312445910. PMID 22645108. S2CID 7120989.
Young, Brittany Mei; Nigogosyan, Zack; Remsik, Alexander; Walton, Léo M.; Song, Jie; Nair, Veena A.; Grogan, Scott W.; Tyler, Mitchell E.; Edwards, Dorothy Farrar (2014). "Changes in functional connectivity correlate with behavioral gains in stroke patients after therapy using a brain-computer interface device". Frontiers in Neuroengineering. 7: 25. doi:10.3389/fneng.2014.00025. ISSN 1662-6443. PMC 4086321. PMID 25071547.
Mrachacz-Kersting, N.; Voigt, M.; Stevenson, A.J.T.; Aliakbaryhosseinabadi, S.; Jiang, N.; Dremstrup, K.; Farina, D. (2017). "The effect of type of afferent feedback timed with motor imagery on the induction of cortical plasticity" (PDF). Brain Research. 1674: 91–100. doi:10.1016/j.brainres.2017.08.025. hdl:10012/12325. PMID 28859916. S2CID 5866337.
Opie, Nicholas (2 April 2019). "Research Overview". University of Melbourne Medicine. University of Melbourne. Retrieved 5 December 2019.
Oxley, Thomas (2016). "Minimally invasive endovascular stent-electrode array for high-fidelity, chronic recordings of cortical neural activity". Nature Biotechnology. 34 (3): 320–327. doi:10.1038/nbt.3428. PMID 26854476. S2CID 205282364. Retrieved 5 December 2019.
"Synchron begins trialling Stentrode neural interface technology". Verdict Medical Devices. 22 September 2019. Retrieved 5 December 2019.
Radzik, Iwona; Miziak, Barbara; Dudka, Jarosław; Chrościńska-Krawczyk, Magdalena; Czuczwar, Stanisław J. (2015). "Prospects of epileptogenesis prevention". Pharmacological Reports. 67 (3): 663–8. doi:10.1016/j.pharep.2015.01.016. PMID 25933984.
Ritaccio, Anthony; Brunner, Peter; Gunduz, Aysegul; Hermes, Dora; Hirsch, Lawrence J.; Jacobs, Joshua; Kamada, Kyousuke; Kastner, Sabine; Knight, Robert T.; Lesser, Ronald P.; Miller, Kai; Sejnowski, Terrence; Worrell, Gregory; Schalk, Gerwin (2014). "Proceedings of the Fifth International Workshop on Advances in Electrocorticography". Epilepsy & Behavior. 41: 183–192. doi:10.1016/j.yebeh.2014.09.015. PMC 4268064. PMID 25461213.
Kim, DH (2010). "Dissolvable films of silk fibroin for ultrathin, conformal bio-integrated electronics". Nature Materials. 9 (6): 511–517. Bibcode:2010NatMa...9..511K. doi:10.1038/nmat2745. PMC 3034223. PMID 20400953.
Boppart, SA (1992). "A flexible perforated microelectrode array for extended neural recording". IEEE Transactions on Biomedical Engineering. 39 (1): 37–42. doi:10.1109/10.108125. PMID 1572679. S2CID 36593459.
Kim, DH (2012). "Flexible and stretchable electronics for bio-integrated devices". Annual Review of Biomedical Engineering. 14: 113–128. doi:10.1146/annurev-bioeng-071811-150018. PMID 22524391. S2CID 5223203.
Rabaey, J. M. (September 2011). "Brain-machine interfaces as the new frontier in extreme miniaturization". 2011 Proceedings of the European Solid-State Device Research Conference (ESSDERC). pp. 19–24. doi:10.1109/essderc.2011.6044240. ISBN 978-1-4577-0707-0. S2CID 47542923.

    Warneke, B.; Last, M.; Liebowitz, B.; Pister, K. S. J. (January 2001). "Smart Dust: communicating with a cubic-millimeter computer". Computer. 34 (1): 44–51. doi:10.1109/2.895117. ISSN 0018-9162. S2CID 21557.

Further reading

    Brouse, Andrew. "A Young Person's Guide to Brainwave Music: Forty years of audio from the human EEG." eContact! 14.2 – Biotechnological Performance Practice / Pratiques de performance biotechnologique (July 2012). Montréal: CEC.
    Gupta, Cota Navin and Ramaswamy Palanappian. "Using High-Frequency Electroencephalogram in Visual and Auditory-Based Brain-Computer Interface Designs[permanent dead link]." eContact! 14.2 – Biotechnological Performance Practice / Pratiques de performance biotechnologique (July 2012). Montréal: CEC.
    Ouzounian, Gascia. "The Biomuse Trio in Conversation: An Interview with R. Benjamin Knapp and Eric Lyon." eContact! 14.2 – Biotechnological Performance Practice / Pratiques de performance biotechnologique (July 2012). Montréal: CEC.

External links
	Wikimedia Commons has media related to Brain-computer interfaces.
	Scholia has a topic profile for Brain–computer interface.

    The Unlock Project

    vte

Brain–computer interface

    vte

Neuroscience

    vte

Neuropsychology

    vte

Emerging technologies
Authority control Edit this at Wikidata	

    GND: 4616897-7 LCCN: sh2007000197 MA: 2776056233, 173201364

Categories:

    Brain–computer interfacingDARPA projectsHuman–computer interactionImplants (medicine)NeuroprostheticsNeural engineeringUser interface techniquesVirtual reality

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    Bahasa Indonesia
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 17 May 2021, at 04:23 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki




! Casuistry

!! https://en.wikipedia.org/wiki/Casuistry

From Wikipedia, the free encyclopedia


Casuistry (/ˈkæzjuɪstri/ KAZ-yoo-is-tree) is a process of reasoning that seeks to resolve moral problems by extracting or extending theoretical rules from a particular case, and reapplying those rules to new instances.[1] This method occurs in applied ethics and jurisprudence. The term is also commonly used as a pejorative to criticize the use of clever but unsound reasoning, especially in relation to moral questions (as in sophistry).[2]

The term and its agent noun "casuist" from c. 1600, ultimately derive from Latin noun casus ("case, occurrence, etc."); even from the earliest attestations, the concept was intended as pejorative.[3]

The Oxford English Dictionary says, quoting Viscount Bolingbroke (1749), that the word "[o]ften (and perhaps originally) applied to a quibbling or evasive way of dealing with difficult cases of duty." Its textual references, except for certain technical usages, are consistently pejorative (e.g., "Casuistry destroys by distinctions and exceptions, all morality, and effaces the essential difference between right and wrong").[4] Often since the 17th century, the word has always carried a connotation of "over-subtle reasoner, sophist."[3]
Contents

    1 Definition
    2 History
        2.1 Early modernity
        2.2 Later modernity
    3 See also
    4 References
    5 Further reading
    6 External links

Definition

Casuistry is the "[s]tudy of cases of conscience and a method of solving conflicts of obligations by applying general principles of ethics, religion, and moral theology to particular and concrete cases of human conduct. This frequently demands an extensive knowledge of natural law and equity, civil law, ecclesiastical precepts, and an exceptional skill in interpreting these various norms of conduct."[5] It remains a common tool for applied ethics.[6]
History

Casuistry dates from Aristotle (384–322 BC), yet the zenith of casuistry was from 1550 to 1650, when the Society of Jesus used case-based reasoning, particularly in administering the Sacrament of Penance (or "confession").[7] The term casuistry or Jesuitism quickly became pejorative with Blaise Pascal's attack on the misuse of casuistry. Some Jesuit theologians,[8] in view of promoting personal responsibility and the respect of freedom of conscience, stressed the importance of the 'case by case' approach to personal moral decisions and ultimately developed and accepted a casuistry (the study of cases of consciences) where at the time of decision, individual inclinations were more important than the moral law itself.

In Provincial Letters (1656–7)[9] the French mathematician, religious philosopher and Jansenist sympathiser, Blaise Pascal vigorously attacked the moral laxism of Jesuits who used casuistic reasoning in confession to placate wealthy Church donors, while punishing poor penitents. Pascal charged that aristocratic penitents could confess their sins one day, re-commit the sin the next day, generously donate the following day, then return to re-confess their sins and only receive the lightest punishment; Pascal's criticisms darkened casuistry's reputation.

A British encyclopedia of 1900 claimed that it was "popularly regarded as an attempt to achieve holy ends by unholy means."[10]

It was not until publication of The Abuse of Casuistry: A History of Moral Reasoning (1988), by Albert Jonsen and Stephen Toulmin,[11] that a revival of casuistry occurred. They argue that the abuse of casuistry is the problem, not casuistry per se (itself an example of casuistic reasoning). Properly used, casuistry is powerful reasoning. Jonsen and Toulmin offer casuistry in dissolving the contradictory tenets of moral absolutism and the common secular moral relativism: "the form of reasoning constitutive of classical casuistry is rhetorical reasoning".[12] Moreover, the ethical philosophies of Utilitarianism (especially preference utilitarianism) and Pragmatism commonly are identified as greatly employing casuistic reasoning.
Early modernity

The casuistic method was popular among Catholic thinkers in the early modern period, and not only among the Jesuits, as it is commonly thought. Famous casuistic authors include Antonio Escobar y Mendoza, whose Summula casuum conscientiae (1627) enjoyed a great success, Thomas Sanchez, Vincenzo Filliucci (Jesuit and penitentiary at St Peter's), Antonino Diana, Paul Laymann (Theologia Moralis, 1625), John Azor (Institutiones Morales, 1600), Etienne Bauny, Louis Cellot, Valerius Reginaldus, Hermann Busembaum (d. 1668), etc.[13] One of the main theses of casuists was the necessity to adapt the rigorous morals of the Early Fathers of Christianity to modern morals, which led in some extreme cases to justify what Innocent XI later called "laxist moral" (i.e. justification of usury, homicide, regicide, lying through "mental reservation", adultery and loss of virginity before marriage, etc.—all due cases registered by Pascal in the Provincial Letters).[citation needed]

The progress of casuistry was interrupted toward the middle of the 17th century by the controversy which arose concerning the doctrine of probabilism, which stipulated that one could choose to follow a "probable opinion", that is, supported by a theologian or another, even if it contradicted a more probable opinion or a quotation from one of the Fathers of the Church.[14] The controversy divided Catholic theologians into two camps, Rigorists and Laxists.

Certain kinds of casuistry were criticized by early Protestant theologians, because it was used in order to justify many of the abuses that they sought to reform. It was famously attacked by the Catholic and Jansenist philosopher Pascal, during the formulary controversy against the Jesuits, in his Provincial Letters as the use of rhetorics to justify moral laxity, which became identified by the public with Jesuitism; hence the everyday use of the term to mean complex and sophistic reasoning to justify moral laxity.[15] By the mid-18th century, "casuistry" had become a synonym for specious moral reasoning.[16] However, Puritans were known for their own development of casuistry.[citation needed]

In 1679 Pope Innocent XI publicly condemned sixty-five of the more radical propositions (stricti mentalis), taken chiefly from the writings of Escobar, Suarez and other casuists as propositiones laxorum moralistarum and forbade anyone to teach them under penalty of excommunication.[17] Despite this papal condemnation, both Catholicism and Protestantism permit the use of ambiguous and equivocal statements in specific circumstances.[18]
Later modernity

G. E. Moore dealt with casuistry in chapter 1.4 of his Principia Ethica, in which he claims that "the defects of casuistry are not defects of principle; no objection can be taken to its aim and object. It has failed only because it is far too difficult a subject to be treated adequately in our present state of knowledge". Furthermore, he asserted that "casuistry is the goal of ethical investigation. It cannot be safely attempted at the beginning of our studies, but only at the end".[19]

Since the 1960s, applied ethics has revived the ideas of casuistry in applying ethical reasoning to particular cases in law, bioethics, and business ethics, so the reputation of casuistry is somewhat rehabilitated.[citation needed]

Pope Francis, a Jesuit, has criticised utilizing casuistry, "the practice of setting general laws on the basis of exceptional cases," in instances where a more holistic approach would be more appropriate.[20]
See also

    Philosophy portal Psychology portal

    Applied ethics – Practical application of moral considerations
    Case-based reasoning
    Consequentialism – Class of ethical theories
    Dispensation (Catholic canon law)
    First principle – basic proposition or assumption that cannot be deduced from any other proposition or assumption
    List of thought processes
    Qiyas – Deductive analogy or reasoning by measuring the new situation with the given situation
    Rhetoric – Art of discourse
    Rhetorical reason
    School of Salamanca
    Situational ethics – Takes into account the particular context of an act when evaluating it ethically
    Talmudical hermeneutics – Methods for the investigation and determination of the meaning of the Scriptures
    Heuristics

References

"Philosophy-Dictionary.org". casuistry. Archived from the original on 18 January 2012. Retrieved 7 December 2011.
"Casuistry". Dictionary of the History of Ideas. University of Virginia Library. Archived from the original on 18 June 2006.
Harper, Douglas R. "casuist (n.)". Online Etymological Dictionary. Retrieved 14 March 2021.
"Casuistry". Oxford English Dictionary. Retrieved 21 September 2017., quoting Bolingbroke, Viscount (1749). Letters on the Spirit of Patriotism and on the Idea of a Patriot King. London. p. 170.
Runes, Dagobert D. "Dictionary of Philosophy". Retrieved 7 December 2011.
"Philosophy Pages". Casuistry. Retrieved 7 December 2011.
Franklin, James (2001). The Science of Conjecture: Evidence and Probability Before Pascal. Baltimore: Johns Hopkins University Press. pp. 83–88.
Coppens, S.J., Rev Charlies (1897). Moral Principles and Medical Practice. New York: Benziger Brothers. pp. 11–36, 58, 106.
Pascal, Blaise (1898) [1657]. The Provincial Letters of Blaise Pascal. eBooks@Adelaide. M'Crie, Thomas (trans.). London: Chatto & Windus.
Nuttall Encyclopædia of General Knowledge
Albert Jonsen and Stephen Toulmin, The Abuse of Casuistry: A History of Moral Reasoning, Berkeley, U. California Press (1990, ISBN 0-520-06960-9).
Jonsen, 1991, p. 297.
Decock, Wim (2011). "From Law to Paradise: Confessional Catholicism and Legal Scholarship". Rechtsgeschichte: Legal History. 2011 (18): 012–034. doi:10.12946/rg18/012-034. ISSN 1619-4993.
Franklin, Science of Conjecture, p. 74–6, 83.
170 "Casuistry..destroys, by distinctions and exceptions, all morality, and effaces the essential difference between right and wrong." Henry St. John, Viscount Bolingbroke, Letters on the Spirit of Patriotism 1736 (pub. 1749), quoted in Oxford English Dictionary, 1989 ed.
Jonsen, Albert R., The Abuse of Casuistry: A History of Moral Reasoning, University of California Press, 1988. ISBN 0-52-006063-6 (p. 2).
Kelly, J.N.D., The Oxford History of the Popes, Oxford University Press, 1986. ISBN 0-19-282085-0 (p. 287).
J.-P. Cavaillé, Ruser sans mentir, de la casuistique aux sciences sociales: le recours à l’équivocité, entre efficacité pragmatique et souci éthique, in Serge Latouche, P.-J. Laurent, O. Servais & M. Singleton, Les Raisons de la ruse. Une perspective anthropologique et psychanalytique, Actes du colloque international «La raison rusée», Louvain la Neuve, mars 2001, Paris, La Découverte, 2004, pp. 93–118 (in French).
Moore, George Edward (1993) [1903]. Baldwin, Thomas (ed.). Principia Ethica (2 ed.). Cambridge: Cambridge University Press. p. 57. ISBN 0-521-44848-4.

    "Pope to meet with sex abuse victims for first time in June", Francis X. Rocca. Catholic News Service. Online.

Further reading

    Arras, J. D. (1991). "Getting Down to Cases: The Revival of Casuistry in Bioethics". Journal of Medicine and Philosophy. 16 (1): 29–51. doi:10.1093/jmp/16.1.29. PMID 2010719. S2CID 4542283.
    Biggar, Nigel (1989). "A Case for Casuistry in the Church". Modern Theology. 6: 29–51. doi:10.1111/j.1468-0025.1989.tb00206.x.
    Blake, David C. (1992). "The Hospital Ethics Committee Health Care's Moral Conscience or White Elephant?". The Hastings Center Report. 22 (1): 6–11. doi:10.2307/3562714. JSTOR 3562714. PMID 1544801.
    Bliton, Mark J. (1993). The Ethics of Clinical Ethics Consultation: On the Way to Clinical Philosophy (Diss. Vanderbilt)
    Boeyink, David E. (1992). "Casuistry: A Case-Based Methods for Journalists". Journal of Mass Media Ethics. 7 (2): 107–120. doi:10.1207/s15327728jmme0702_4.
    Boyle, J. (1991). "Who is Entitled to Double Effect?". Journal of Medicine and Philosophy. 16 (5): 475–494. doi:10.1093/jmp/16.5.475. PMID 1779208.
    Brody, Baruch A. (1988). "Ethical Questions Raised by the Persistent Vegetative Patient". The Hastings Center Report. 18 (1): 33–37. doi:10.2307/3562015. JSTOR 3562015. PMID 3350649.
    Brody, Baruch A. (1989). "A Historical Introduction to Jewish Casuistry on Suicide and Euthanasia". Suicide and Euthanasia. Philosophy and Medicine. 35. pp. 39–75. doi:10.1007/978-94-015-7838-7_3. ISBN 978-90-481-4039-8.
    Carlson, A. Cheree (1992). "Creative casuistry and feminist consciousness: The rhetoric of moral reform". Quarterly Journal of Speech. 78: 16–32. doi:10.1080/00335639209383979.
    Carney, Bridget Mary. (1993). Modern Casuistry: An Essential But Incomplete Method for Clinical Ethical Decision-Making. (Diss., Graduate Theological Union).
    Carson, Ronald A. (1990). "Interpretive bioethics: The way of discernment". Theoretical Medicine. 11 (1): 51–59. doi:10.1007/BF00489238. PMID 2339334. S2CID 22670761.
    Carson, Ronald A. (1988). "Paul Ramsey, Principled Protestant Casuist: A Retrospective." Medical Humanities Review, Vol. 2, pp. 24–35.
    Chidwick, Paula Marjorie (1994). Approaches to Clinical Ethical Decision-Making: Ethical Theory, Casuistry and Consultation. (Diss., U of Guelph)
    Davis, Dena S. (1992). "Abortion in Jewish Thought: A Study in Casuistry". Journal of the American Academy of Religion (2): 313–324. doi:10.1093/jaarel/LX.2.313.
    Degrazia, D. (1992). "Moving Forward in Bioethical Theory: Theories, Cases, and Specified Principlism". Journal of Medicine and Philosophy. 17 (5): 511–539. doi:10.1093/jmp/17.5.511. PMID 1431667.
    Downie, R. (1992). "Health care ethics and casuistry". Journal of Medical Ethics. 18 (2): 61–66. doi:10.1136/jme.18.2.61. PMC 1376108. PMID 1619625.
    Drane, J.F. (1990). "Methodologies for Clinical Ethics." Bulletin of the Pan American Health Organization, Vol. 24, pp. 394–404.
    Dworkin, R.B. (1994). "Emerging Paradigms in Bioethics: Symposium." Indiana Law Journal, Vol. 69, pp. 945–1122.
    Elliot, Carl (1992). "Solving the Doctor's Dilemma?" New Scientist, Vol. 133, pp. 42–43.
    Emanuel, Ezekiel J. (1991). The Ends of Human Life: Medical Ethics in a Liberal Polity (Cambridge).
    Franklin, James (2001). The Science of Conjecture: Evidence and Probability Before Pascal (Johns Hopkins), ch. 4.
    Gallagher, Lowell (1991). Medusa's Gaze: Casuistry and Conscience in the Renaissance (Stanford)
    Gaul, Alice Leveille (1995). "Casuistry, care, compassion, and ethics data analysis". Advances in Nursing Science. 17 (3): 47–57. doi:10.1097/00012272-199503000-00006. PMID 7778890. S2CID 44950319.
    Green, Bryan S. (1988). Literary Methods and Sociological Theory: Case Studies of Simmel and Weber (Albany)
    Hoffmaster, Barry (1994). "The forms and limits of medical ethics". Social Science & Medicine. 39 (9): 1155–1164. doi:10.1016/0277-9536(94)90348-4. PMID 7801153.
    Houle, Martha Marie (1983). The Fictions of Casuistry and Pascal's Jesuit in "Les Provinciales" (Diss. U California, San Diego)
    Hunter, Michael (1993). "Casuistry in Action: Robert Boyle's Confessional Interviews with Gilbert Burnet and Edward Stillingfleet, 1691". The Journal of Ecclesiastical History. 44: 80–98. doi:10.1017/S0022046900010216.
    Hunter, K. M. (1989). "A Science of Individuals: Medicine and Casuistry". Journal of Medicine and Philosophy. 14 (2): 193–212. doi:10.1093/jmp/14.2.193. PMID 2769113.
    Jonsen, A. R. (1991). "American Moralism and the Origin of Bioethics in the United States". Journal of Medicine and Philosophy. 16 (1): 113–130. doi:10.1093/jmp/16.1.113. PMID 2010718.
    Jonsen, Albert R. (1986). "Casuistry and clinical ethics". Theoretical Medicine. 7 (1): 65–74. doi:10.1007/BF00489424. PMID 3704959. S2CID 5420360.
    Jonsen, Albert R. (1986). "Casuistry" in J.F. Childress and J. Macgvarrie, eds. Westminster Dictionary of Christian Ethics (Philadelphia)
    Jonsen, Albert R. (1991). "Casuistry as methodology in clinical ethics". Theoretical Medicine. 12 (4): 295–307. doi:10.1007/BF00489890. PMID 1801300. S2CID 7991017.
    Jonsen, Albert R. (1991). "Of Balloons and Bicycles; or, the Relationship between Ethical Theory and Practical Judgment". The Hastings Center Report. 21 (5): 14–16. doi:10.2307/3562885. JSTOR 3562885. PMID 1743945.
    Jonsen, Albert R. and Stephen Toulmin (1988). The Abuse of Casuistry: A History of Moral Reasoning (California).
    Keenan, James F., S.J. and Thomas A. Shannon. (1995). The Context of Casuistry (Washington).
    Kirk, K. (1936). Conscience and Its Problems, An Introduction to Casuistry (London)
    Klinefelter, Donald S. (1990). "How is Applied Philosophy to be Applied?". Journal of Social Philosophy. 21: 16–26. doi:10.1111/j.1467-9833.1990.tb00263.x.
    Kopelman, Loretta M. (1994). "Case method and casuistry: The problem of bias". Theoretical Medicine. 15 (1): 21–37. doi:10.1007/BF00999217. PMID 8059430. S2CID 27735131.
    Kopelman, L. M. (1990). "What is Applied About "Applied" Philosophy?". Journal of Medicine and Philosophy. 15 (2): 199–218. doi:10.1093/jmp/15.2.199. PMID 2351894.
    Kuczewski, Mark G. (1994). "Casuistry and Its Communitarian Critics". Kennedy Institute of Ethics Journal. 4 (2): 99–116. doi:10.1353/ken.0.0082. PMID 11645267. S2CID 45915303.
    Kuczewski, Mark G. (1994). Fragmentation and Consensus in Contemporary Neo-Aristotelian Ethics: A Study in Communitarianism and Casuistry (Diss., Duquesne U).
    Leites, Edmund (1988). Leites, Edmund (ed.). Conscience and Casuistry in Early Modern Europe. doi:10.1017/CBO9780511521430. ISBN 9780521520201.
    Leites, Edmund (1974). "Conscience, Casuistry, and Moral Decision: Some Historical Perspectives". Journal of Chinese Philosophy. 2: 41–58. doi:10.1111/j.1540-6253.1974.tb00146.x.
    Long, Edward LeRoy, junior (1954). Conscience and Compromise: an Approach to Protestant Casuistry (Philadelphia, Penn.: Westminster Press)
    MacIntyre, Alasdair C. (1990). "The Abuse of Casuistry: A History of Moral Reasoning (Review)". Journal of the History of Philosophy. 28 (4): 634–635. doi:10.1353/hph.1990.0086. S2CID 144734704.
    MacIntyre, Alasdair (1984). "Does Applied Ethics Rest on a Mistake?". Monist. 67 (4): 498–513. doi:10.5840/monist198467438.
    Mackler, Aaron Leonard. Cases of Judgments in Ethical Reasoning: An Appraisal of Contemporary Casuistry and Holistic Model for the Mutual Support of Norms and Case Judgments (Diss., Georgetown U).
    Macpherson-Smith, Malcolm (1994). "Anchor and Course for the Modern Ship of Casuistry". Cambridge Quarterly of Healthcare Ethics. 3 (3): 391–402. doi:10.1017/S0963180100005223. PMID 7994464.
    Mahowald, Mary B. (1994). "Collaboration and Casuistry". Peirce and Value Theory. Semiotic Crossroads. 6. p. 61. doi:10.1075/sc.6.09mah. ISBN 978-90-272-1947-3.
    McCready, Amy R. (1992). "Milton's Casuistry: The Case of 'The Doctrine and Discipline of Divorce.' " Journal of Medieval and Renaissance Studies, Vol. 22, pp. 393–428.
    Miller, R. B. (1989). "On Transplanting Human Fetal Tissue: Presumptive Duties and the Task of Casuistry". Journal of Medicine and Philosophy. 14 (6): 617–640. doi:10.1093/jmp/14.6.617. PMID 2614282.
    Murray, Thomas H. (1994). "Medical ethics, moral philosophy and moral tradition". Medicine and Moral Reasoning. pp. 91–105. doi:10.1017/CBO9780511627842.008. ISBN 9780521459464.
    Murray, Thomas H. (1993). "Moral Reasoning in Social Context". Journal of Social Issues. 49 (2): 185–200. doi:10.1111/j.1540-4560.1993.tb00927.x. PMID 17167922.
    Odozor, Paulinus Ikechukwu (1989). Richard A. McCormick and Casuistry: Moral Decision-Making in Conflict Situations (M.A. Thesis, St. Michael's College).
    Pack, Rolland W. (1988). Case Studies and Moral Conclusions: The Philosophical Use of Case Studies in Biomedical Ethics (Diss., Georgetown U).
    Pascal, Blaise (1967). The Provincial Letters (London).
    Peach, Lucinda Joy (1994). "Feminist cautions about casuistry: The Supreme Court's abortion decisions as paradigms". Policy Sciences. 27 (2–3): 143–160. doi:10.1007/BF00999885. S2CID 143567140.
    Río Parra, Elena del (2008). Cartografías de la conciencia española en la Edad de Oro (Mexico).
    Rudy, Kathy (1994). "Thinking Through the Ethics of Abortion". Theology Today. 51 (2): 235–248. doi:10.1177/004057369405100204. S2CID 146934768.
    Seiden, Melvin (1990). Measure for Measure: Casuistry and Artistry (Washington).
    Sichol, Marcia (1992). "Women and the New Casuistry". Thought. 67 (2): 148–157. doi:10.5840/thought199267223.
    Singer, Marcus G. (1980). "Is Ethics a Science? Ought It to Be?". Zygon. 15: 29–42. doi:10.1111/j.1467-9744.1980.tb00374.x.
    Smith, David H. (1991). "Stories, Values, and Patient Care Decisions." in Charles Conrad, ed. The Ethical Nexus: Values in Organizational Decision Making. (New Jersey).
    Sobel, Jordan Howard (1985). "Everyone's conforming to a rule". Philosophical Studies. 48 (3): 375–387. doi:10.1007/BF01305396. S2CID 170640015.
    Keenan, James F. (1993). "Notes on Moral Theology: 1992". Theological Studies. 54: 95–159. doi:10.1177/004056399305400105. S2CID 220489972.
    Starr, G. (1971). Defoe and Casuistry (Princeton).
    Strong, Carson (1988). "Justification in Ethics". Moral Theory and Moral Judgments in Medical Ethics. Philosophy and Medicine. 32. pp. 193–211. doi:10.1007/978-94-009-2715-5_14. ISBN 978-94-010-7723-1.
    Tallmon, James Michael (2001). "Casuistry" in The Encyclopedia of Rhetoric. Ed. Thomas O. Sloane. New York: Oxford University Press, pp. 83–88.
    Tallmon, James Michael (1993). Casuistry and the Quest for Rhetorical Reason: Conceptualizing a Method of Shared Moral Inquiry (Diss., U of Washington).
    Tallmon, J. M. (1994). "How Jonsen Really Views Casuistry: A Note on the Abuse of Father Wildes". Journal of Medicine and Philosophy. 19 (1): 103–113. doi:10.1093/jmp/19.1.103. PMID 8201287.
    Taylor, Richard (1984). Good and Evil – A New Direction: A Foreceful Attack on the Rationalist Tradition in Ethics (Buffalo).
    Thomasma, David C. (1994). "Clinical ethics as medical hermeneutics". Theoretical Medicine. 15 (2): 93–111. doi:10.1007/BF00994019. PMID 7997974. S2CID 11845065.
    Tomlinson, Tom (1994). "Casuistry in medical ethics: Rehabilitated, or repeat offender?". Theoretical Medicine. 15 (1): 5–20. doi:10.1007/BF00999216. PMID 8059432. S2CID 45692.
    Toulmin, Stephen (1982). "How Medicine Saved the Life of Ethics". Perspectives in Biology and Medicine. 25 (4): 736–750. doi:10.1353/pbm.1982.0064. PMID 11643854. S2CID 35014697.
    Toulmin, Stephen (1988). "The Recovery of Practical Philosophy." The American Scholar, Vol. 57, pp. 337–352.
    Toulmin, Stephen (1981). "The Tyranny of Principles". The Hastings Center Report. 11 (6): 31–39. doi:10.2307/3560542. JSTOR 3560542. PMID 7037683.
    Van Der Steen, Wim J.; Musschenga, Bert (1992). "The issue of generality in ethics". The Journal of Value Inquiry. 26 (4): 511–524. doi:10.1007/BF00138918. S2CID 144980478.
    Walton, Douglas N. (1990). "Courage, relativism and practical reasoning". Philosophia. 20 (1–2): 227–240. doi:10.1007/BF02382593. S2CID 144539329.
    Watson, Robert N.; Seiden, Melvin (1992). "Measure for Measure: Casuistry and Artistry". Shakespeare Quarterly. 43 (2): 242. doi:10.2307/2870893. JSTOR 2870893.
    Weinstein, Bruce David (1989). The Possibility of Ethical Expertise (Diss. Georgetown U).
    Weston, Anthony (1984). "Drawing Lines". Monist. 67 (4): 589–604. doi:10.5840/monist198467440.
    Wildes, K. Wm. (1993). "The Priesthood of Bioethics and the Return of Casuistry". Journal of Medicine and Philosophy. 18 (1): 33–49. doi:10.1093/jmp/18.1.33. PMID 8433047.
    Wildes, Kevin Wm., S.J. (1993). The View for Somewhere: Moral Judgment in Bioethics (Diss. Rice U).
    Winston, Morton E. (1990). "Ethics Committee Simulations". Teaching Philosophy. 13 (2): 127–140. doi:10.5840/teachphil199013220.
    Zacker, David J. (1991). Reflection and Particulars: Does Casuistry Offer Us Stable Beliefs About Ethics? (M.A. Thesis, Western Michigan U).
    Zaner, R. M. (1993). "Voices and Time: The Venture of Clinical Ethics". Journal of Medicine and Philosophy. 18 (1): 9–31. doi:10.1093/jmp/18.1.9. PMID 8433050.

External links
	Wikiquote has quotations related to: Casuistry
	Wikisource has the text of the 1911 Encyclopædia Britannica article Casuistry .
	Wikisource has the text of the 1913 Catholic Encyclopedia article Casuistry.
	Look up casuistry in Wiktionary, the free dictionary.

    Dictionary of the History of Ideas: "Casuistry"
    Accountancy as computational casuistics, article on how modern compliance regimes in accountancy and law apply casuistry
    Mortimer Adler's Great Ideas – Casuistry
    Summary of casuistry by Jeramy Townsley
    Casuistry – Online Guide to Ethics and Moral Philosophy
    Casuistry – Oxford Encyclopedia of Rhetoric catalogued at she-philosopher.com

    vte

Ethics
Normative ethics	

    Consequentialism
        Utilitarianism Deontology
        Kantian ethics Ethics of care Existentialist ethics Particularism Pragmatic ethics Role ethics Virtue ethics
        Eudaimonism

Applied ethics	

    Animal ethics Bioethics Business ethics Discourse ethics Engineering ethics Environmental ethics Legal ethics Machine ethics Media ethics Medical ethics Nursing ethics Professional ethics Sexual ethics Ethics of artificial intelligence Ethics of eating meat Ethics of technology Ethics of terraforming Ethics of uncertain sentience

Meta-ethics	

    Cognitivism
        Moral realism
            Ethical naturalism Ethical non-naturalism Ethical subjectivism
            Ideal observer theory Divine command theory Error theory Non-cognitivism
        Emotivism Expressivism Quasi-realism Universal prescriptivism Moral universalism
        Value monism – Value pluralism Moral relativism Moral nihilism Moral rationalism Ethical intuitionism Moral skepticism

Concepts	

    Autonomy Axiology Conscience Consent Equality Free will Good and evil
        Good Evil Happiness Ideal Immorality Justice Liberty Morality Norm Freedom Suffering or Pain Stewardship Sympathy Trust Value Virtue Wrong full index...

Philosophers	

    Laozi Socrates Plato Aristotle Diogenes Valluvar Cicero Confucius Augustine of Hippo Mencius Mozi Xunzi Thomas Aquinas Baruch Spinoza David Hume Immanuel Kant Georg W. F. Hegel Arthur Schopenhauer Jeremy Bentham John Stuart Mill Søren Kierkegaard Henry Sidgwick Friedrich Nietzsche G. E. Moore Karl Barth Paul Tillich Dietrich Bonhoeffer Philippa Foot John Rawls John Dewey Bernard Williams J. L. Mackie G. E. M. Anscombe William Frankena Alasdair MacIntyre R. M. Hare Peter Singer Derek Parfit Thomas Nagel Robert Merrihew Adams Charles Taylor Joxe Azurmendi Christine Korsgaard Martha Nussbaum more...

Related articles	

    Casuistry Christian ethics Descriptive ethics Ethics in religion Evolutionary ethics Feminist ethics History of ethics Ideology Islamic ethics Jewish ethics Moral psychology Philosophy of law Political philosophy Population ethics Social philosophy Suffering-focused ethics

    Category Category

Authority control Edit this at Wikidata	

    BNE: XX528595 BNF: cb13318602k (data) GND: 4250530-6 LCCN: sh85020764 MA: 2780281770

Categories:

    Catholic casuistsScholasticismApplied ethicsCommon lawLegal reasoning

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikiquote

Languages

    العربية
    Deutsch
    Español
    Français
    Italiano
    日本語
    Português
    Русский
    中文

Edit links

    This page was last edited on 13 May 2021, at 19:15 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki





! Charlotte Thomson Iserbyt

!! https://en.wikipedia.org/wiki/Charlotte_Thomson_Iserbyt

!!! http://deliberatedumbingdown.com/ddd/wp-content/uploads/2018/04/DDDoA.pdf

!!! http://abcsofdumbdown.blogspot.com/
!!! 
!!! http://www.deliberatedumbingdown.com/
!!! 
!!! From Wikipedia, the free encyclopedia
!!! (Redirected from The Deliberate Dumbing Down of America)

Unbalanced scales.svg
	
The neutrality of this article is disputed. Relevant discussion may be found on the talk page. Please do not remove this message until conditions to do so are met. (April 2018) (Learn how and when to remove this template message)

Charlotte Thomson Iserbyt is an American freelance writer and former senior policy advisor to the U.S. Department of Education.
Contents

    1 Early life and education
    2 Career
    3 Publications
    4 Personal life
    5 See also
    6 References
    7 Bibliography
    8 External links

Early life and education

She was born in Brooklyn, New York in 1930[1] and attended Dana Hall preparatory school and Katharine Gibbs College in New York City, where she studied business.[1] Iserbyt's father and grandfather were Yale University graduates and members of the Skull and Bones secret society.[2]
Career

Iserbyt served as the senior policy advisor in the Office of Educational Research and Improvement (OERI), U.S. Department of Education, during the first term of U.S. President Ronald Reagan.

Iserbyt later came across a federally-funded grant entitled Better Education Skills through Technology (Project BEST), part of which was headed "What we (U.S. Dept. of Education) can control and manipulate at the local level". After leaking this document to Human Events, she was removed from her post in the Department of Education.[citation needed]

She later served as a staff employee of the U.S. Department of State (South Africa, Belgium, South Korea).[3][4][5]

Iserbyt was scheduled to do a briefing for officials of the Brazilian government in 2019 regarding her book which was just translated into Portuguese but her trip was cancelled when she fell and broke her hip and femur the week before.[citation needed]
Publications

She is known for writing the book The Deliberate Dumbing Down of America. The book describes that changes gradually brought into the American public education system work to eliminate the influences of a child's parents, and mold the child into a member of the proletariat in preparation for a socialist-collectivist world of the future.[5] She considers that these changes originated from plans formulated primarily by the Andrew Carnegie Foundation for the Advancement of Education and Rockefeller General Education Board, and details the psychological methods used to implement and effect the changes.[5]

She also wrote Back to Basics Reform, which documents her experiences working in the U.S. Dept. of Education, where she was privy to past and future plans to restructure American education.
Personal life

In 1964, Iserbyt married Jan Iserbyt (2 May 1929 – 5 May 2008); they had two sons.

Iserbyt also served as an elected school board member in Camden, Maine 1976–1979, and founded the Maine Conservative Union, an affiliate of the national American Conservative Union, and Guardians of Education for Maine.
See also

    John Taylor Gatto

References

The Secret History of Western Education.[full citation needed]
Swamp Yankee (2015-01-17), The Skull and Bones: A Discussion with Charlotte Iserbyt, retrieved 2018-04-15
"Archived copy". Archived from the original on 2011-07-09. Retrieved 2011-04-26.
Iserbyt, Charlotte; Scott D. Lewis. "Charlotte Iserbyt: Societies Secrets". Time Out Prod. & Ska Ras Prod. (Cable Access TV?). Retrieved 2 April 2018.

    Iserbyt, Charlotte; Sovereign Solutions (2006-07-02). "Charlotte Iserbyt: The Deliberate Dumbing Down of the World". Missoula Community Access TV www.mcat.org. Retrieved 2 April 2018.

    Goodlad, Dr. Professor John. "John Goodlad education". Google Scholar. Various academic publications. Retrieved June 2018.

Bibliography

    Back to Basics Reform, or OBE: Skinnerian International Curriculum (1985)
    The Deliberate Dumbing Down of America: A Chronological Paper Trail (1999) ISBN 978-0-9667071-0-6
    Deliberate Dumbing Down of America Book

External links

    ABCsOfDumbDown.blogspot.com Official Blog
    DeliberateDumbingDown.com

Authority control Edit this at Wikidata	

    ISNI: 0000 0000 3394 9571 LCCN: n99281249 VIAF: 58416091 WorldCat Identities: lccn-n99281249

Categories:

    American political writers1930 birthsLiving peopleGibbs College alumniDana Hall School alumni

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Asturianu
    Español
    Magyar
    日本語

Edit links

    This page was last edited on 2 February 2021, at 20:53 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Civic technology
!! 
!! https://en.wikipedia.org/wiki/Civic_technology

From Wikipedia, the free encyclopedia

Question book-new.svg
	
This article relies too much on references to primary sources. Please improve this by adding secondary or tertiary sources. (March 2018) (Learn how and when to remove this template message)

Civic technology, or civic tech, enhances the relationship between the people and government with software for communications, decision-making, service delivery, and political process. It includes information and communications technology supporting government with software built by community-led teams of volunteers, nonprofits, consultants, and private companies as well as embedded tech teams working within government.[1][2][3][4]
Contents

    1 Definition
        1.1 Worldwide
    2 Civic technology in Africa
        2.1 Burkina Faso
            2.1.1 Government-led initiatives
        2.2 Kenya
            2.2.1 Citizen-led initiatives
        2.3 South Africa
            2.3.1 Government-led initiatives
        2.4 Uganda
            2.4.1 Government-led initiatives
            2.4.2 Citizen-led initiatives
    3 Civic technology in Asia
        3.1 Taiwan
            3.1.1 Citizen-led initiatives
    4 Civic technology in Oceania
        4.1 Australia
            4.1.1 Citizen-led initiatives
    5 Civic technology in Europe
        5.1 Denmark
            5.1.1 Government-led initiatives
        5.2 Estonia
            5.2.1 Government-led initiatives
        5.3 France
            5.3.1 Government-led initiatives
            5.3.2 Citizen-led initiatives
        5.4 Iceland
        5.5 Italy
            5.5.1 Citizen-led initiatives
        5.6 Spain
        5.7 Sweden
        5.8 United Kingdom
            5.8.1 Government-led initiatives
            5.8.2 Citizen-led initiatives
        5.9 Ukraine
            5.9.1 Government-led initiatives
            5.9.2 Citizen-led initiatives
    6 Civic technology in North America
        6.1 Canada
            6.1.1 Government-led initiatives
            6.1.2 Citizen-led initiatives
        6.2 United States
            6.2.1 Government-led initiatives
            6.2.2 Citizen-led initiatives
        6.3 Mexico
            6.3.1 Government-led initiatives
            6.3.2 Citizen-led initiatives
    7 Civic technology in South America
        7.1 Argentina
    8 Effects of civic technology
        8.1 Effects on social behavior and civic engagement
            8.1.1 Communication
            8.1.2 Elections
        8.2 Effects on socioeconomics
    9 See also
    10 References
    11 External links

Definition

There are four different types of e-government services and civic technology falls within the category of government-to-citizen (or G2C), the other categories include government-to-business (G2B), government-to-government (G2G), and government-to-employees (G2E).[5]

A 2013 report from the Knight Foundation, an American non-profit, attempts to map different focuses within the civic technology space.[6] It broadly categorizes civic technology projects into two categories: open government and community action.[6]
Open government, includes: 	Community action, includes:
Data access and transparency 	Peer-to-peer local sharing
Voting 	Civic crowdfunding
Visualization and mapping 	Neighborhood forums
Data utility 	Information crowdsourcing
Resident feedback 	Community organizing
Public decision making 	

Within the Knight Foundation, they "care about ensuring that people have access to the news and information that they need to lead their lives in a democracy." [7] They seek to establish a precedent of accessibility to information and the sharing of these sources for the common benefit of the people. With this accessibility, they enable for a more transparent, open system of sharing information for the benefit of more insightful, informed users and citizens that can engage more often in political and social matters that pertain to their concerns and to their lives.

Citizens are also now given access to their representatives through social media. They are able to express their concerns directly to government officials through sites like Twitter and Facebook. There have even been past cases of online voting being a polling option for local elections, which have seen vastly increased turnouts, such as in an Arizona election in 2000 which saw a turnout double that of the previous election. It is asserted though that civic technology in government provides for a good management technique but lacks in providing fair democratic representation.[8] Social media is also becoming a growing aspect of government, towards furthering the communication between the government and its citizenry and towards greater transparency within the governmental sectors.[9] This innovation is facilitating a change towards a more progressive and open government, based on civic engagement and technology for the people. With social media as a communicating platform, it enables the government to provide information to the constituents and citizens on the legislative processes and what is occurring in the Congress, for the sake of the citizens' concerns with the government procedures.

The definition of what constitutes civic technology is contested to a certain extent,[10] especially with regards to companies engaged in the sharing economy, such as Uber, Lyft, and Airbnb. For example, Airbnb's ability to provide New York residents with housing during the aftermath of Superstorm Sandy could be considered a form of civic technology.[11] However, Nathaniel Heller, Managing Director of the Research for Development Institute's Governance Program contends that for-profit platforms definitively fall outside of the scope of civic technology: Heller has said that "while citizen-to-citizen sharing is indeed involved, the mission of these companies is focused on maximizing profit for their investors, not any sort of experiment in building social capital."[12] From a goal perspective, civic technology can be understood as "the use of technology for the public good".[13]

Microsoft's Technology & Civic Engagement Team have attempted to produce a precise taxonomy of civic technology through a bottom-up approach.[14] They inventoried the existing initiatives and classified them according to:

    their functions
    the social processes they involved
    their users and customers
    the degree of change they sought
    the depth of the technology.

Microsoft's Civic Graph is guiding the developing network of civic innovators, expanding "its visualizations of funding, data usage, collaboration and even influence" [14] It is a new tool that is opening up the access to track the world of civic technology towards improving the credibility and progress of this sector. This graph will enable more opportunities for access by governmental institutions and corporations to discover these innovators and use them for progressing society towards the future of technology and civic engagement. To create an informed and insightful community, there needs to be a sense of civic engagement in this community, where there is the sharing of information through civic technology platforms and applications.[15] "Community engagement applied to public-interest technology requires that members of a community participate." [15] With communal participation in civic tech platforms, this enables more informed residents to convene in a more engaged, unified community that seeks to share information, politically and socially, for the benefit of its citizenry and their concerns. This work resulted in the Civic Tech Field Guide, a free, crowdsourced collection of civic technology tools and projects. Individuals from over 100 countries have contributed to the documentation of technology, resources, funding and general information concerning "tech for social good."[16]

The Technology & Civic Engagement Team have also produced a network visualization tool for civic technology organizations, Civic Graph.

Technology that is designed to benefit the citizenry places the governments under pressure "to change and innovate the way in which their bureaucracies relate to citizens." [17] E-government initiatives have been established and supported in order to strengthen the democratic values of governmental institutions, which can include Transparency, along with improving the efficiency of the legislative processes to make the government more accountable and reactive to citizens' concerns. These will further civic engagement within the political spectrum for the sake of greater Direct representation and a more democratic political system.

Civic hacking is a way to refer to problem solving by programmers, designers, data scientists, communicators, organizers, entrepreneurs, and government employees.[18] Some projects are led by nonprofits, such as Code for America and mySociety. The work often includes paid staff and the contributions of volunteers.[19][20]

As the field of civic technology advances further through the coming years it seems as though apps and handheld devices will become a key focus for development as more companies and municipalities reach out to developers to help with specific issues. Apps are being used in conjunction with hand held devices to make life easier. Tasks such as communication, data tracking, and safety are just a few of the topics app developers and communities have tried to make easier. The cheapest way for citizens to get help and information is through neighbors and others around them. By linking people through apps and websites that harbor conversation and promote civil service cities have found an inexpensive way to provide services to its people.[21][22]

As civic technology is "just a piece of the $25.5 billion that government spends on external information technology (IT)," it is not difficult to see how this sector will grow from here on out towards fostering more innovation in the public and private sectors and towards furthering civic engagement within these sectors and with these platforms of technology.[23]
Worldwide

A worldwide organization for civic tech is the Open Government Partnership (OGP). It "is a multilateral initiative that aims to secure concrete commitments from governments to promote transparency, empower citizens, fight corruption, and harness new technologies to strengthen governance."[24] Created in 2011 by eight founding governments (Brazil, Indonesia, Mexico, Norway, the Philippines, South Africa, the United Kingdom and the United States), the OGP gathers every year for a summit. Countries involved are located mainly in America (North and South), Europe and South-Asia (Indonesia, Australia, South Korea). Only a few African countries are part of the OGP, though South Africa is one of the founding countries.

Technological progress is rampant throughout the nations of the world, but there are dividing efforts and adoption techniques in how rapid certain countries are progressing compared to others.[25] How countries are able to use information pertains to how devoted nations are to integrating technology into the lives of their citizens and businesses. Local and national governments are funding tens of billions of dollars towards information technology, for the sake of improving the functions and operations of this technology to work for the people and the governments.[26] With more governments attaining a grasp on these technologies, it is paving the way towards more progressive and democratic political systems, for the concerns of future society and for those of the citizens of these nations.
Civic technology in Africa
Burkina Faso
Government-led initiatives

The government of Burkina Faso has a government website portal offering citizens online information about the government structure, their constitution, and laws.[5]
Kenya
Citizen-led initiatives

Launched in Kenya in 2014,[27] "MajiVoice" is a joint initiative by the Water Services Regulatory Board (WASREB- the Water Sector Regulator in Kenya)[28][non-primary source needed] and the World Bank's Water and Sanitation Program.[29][non-primary source needed] As opposed to walk-in complaint centers, the initiative enables Kenyan citizens to report complaints with regards to water services via multiple channels of technology. The platform allows for communication between citizens and water service providers with the intention to improve service delivery in impoverished areas and user satisfaction. Users are given four options to report their water complaints. They can dial a number and report a complaint, send a text message (SMS) through their cell phone, or login to an online portal through a web browser on their phone or their laptop.[30][non-primary source needed] One evaluation highlights the citizen engagement achieved after its implementation, from 400 complaints a month to 4000 complaints, and resolution rates from 46 percent to 94 percent[27]
South Africa
Government-led initiatives

The South African government has a website portal for citizens called www.gov.za - this was created by Center for Public Service Innovation (CPSI) in partnership with the Department of Public Service and Administration and the State Information Technology Agency.[5][31] The government portal allows the citizens to interact with their government and provide feedback, request forms online, as well as access online to laws and contact information for lawmakers.[5] GovChat is the official citizen engagement platform for the South African Government - accessible via WhatsApp, Facebook Messenger, SMS and USSD, it offers information to citizens about a wide-array of services provided by the Government.[32]

Citizen-led initiatives

Grassroot is a technology platform that supports community organizers to mobilize citizens, built for low-bandwidth, low-data settings that allows for smart-messaging through text message.[33] Research by the MIT Governance Lab suggests that Grassroot can have important effects on the leadership capacity of community leaders, an effect that is most likely to be achieved through careful design, behavioral incentives, active coaching and iteration.[34]
Uganda
Government-led initiatives

The Ugandan government has a website portal created for citizens called Parliament Portal, which gives citizens online access to laws, their constitution, and election related news.[5]
Citizen-led initiatives

U- Report, a mobile platform introduced by UNICEF Uganda in 2011,[35] is an initiative that runs large scale polls with Ugandan youth on a wide range of issues, ranging from safety to access to education to inflation to early marriage. The goal of the initiative was to have Ugandan youth play a role in civic engagement within the context of local issues.[27] U-Report is still active (as of April 2018), with over 240,000 users across Uganda. Support for the initiative primarily came from the aid of the government, NGO's, youth organizations, faith based organizations, and private companies.[36] Users sign up for the program for free by sending a text on their phone, then every week "U-Reporters" answer a question regarding a public issue. Poll results are published in public media outlets such as newspapers, radio, etc. UNICEF takes these responses and provides members of parliament (MP's) a weekly review of these results, acting as a bridge between government and Ugandan youth.[27]
Civic technology in Asia
Taiwan

Taiwan has the world's most vibrant civic technology sector.[37]
Citizen-led initiatives

The vTaiwan (v for virtual) was created initially by members of the open source community and later as a collaboration with the Taiwan's government.[38] They use a conversation tool called pol.is that leverages machine learning to scale online discussion.[39] Government minister Audrey Tang has been instrumental in popularizing civic technology in Taiwan and it formed a key component of Taiwan's successful response to the COVID-19 epidemic.[37]
Civic technology in Oceania
Australia
Citizen-led initiatives

In Australia, a platform and proposed political party called MiVote[40][non-primary source needed] has a mobile app for citizens to learn about policy and cast their vote for the policies they support.[41] MiVote politicians elected to office would then vote in support of the majority position of the people using the app.[42]

Snap Send Solve is a mobile app for citizens to report to local councils and other authorities quickly and easily. In 2020, 430,000 reports where sent via the app. A recent report in Melbourne's Herald Sun noted an increased number of reports for Dumped Rubbish.
Civic technology in Europe
Denmark
Government-led initiatives

In 2002, MindLab an innovation public sector service design group was established by the Danish ministries of Business and Growth, Employment, and Children and Education.[43] MindLab was the one of the world's first public sector design innovation labs and their work inspired the proliferation of similar labs and user-centered design methodologies deployed in many countries worldwide.[44] The design methods used at MindLab are typically an iterative approach of rapid prototyping and testing to evolve not just their government projects, but also government organizational structure using ethnographic-inspired user research, creative ideation processes, and visualization and modeling of service prototypes.[43][44][45] In Denmark, design within the public sector has been applied to a variety of projects including rethinking Copenhagen's waste management, improving social interactions between convicts and guards in Danish prisons, transforming services in Odense for mentally disabled adults and more.[43]
Estonia
Government-led initiatives

As of 2020, Estonia has one of the most advanced digitalizations of their public sector authority and government.[46] The processes of digitalization began in 2002, when they started addressing the local and central government and building an infrastructure that allowed autonomous and interconnected data.[46] That same year in 2002, Estonia launched a national ID system that was fully digitalized and paired with digital signatures.[47] The national ID system allowed Estonians to pay taxes online, vote online, do online banking, access their health care records,[47] as well as process 99% of Estonian public services online 24 hours a day, seven days.[46]

In 2007, the country faced a large cyber attack, and as a result became the home of NATO Cyber Defense Centre of Excellence.[47]

In 2013, the online platform People's Assembly (Rahvakogu) was launched for crowdsourcing ideas and proposals to amend Estonia's electoral laws, political party law, and other issues related to democracy.[48][49]

In 2014, Estonia launched the e-Residency, which allowed users to start businesses in the country without living there.[47] That was followed by an immigration visa for digital nomads, which was a new way of approaching immigration policy.[47][50]
France

The most dynamic French city regarding civic tech is Paris, with many initiatives moving in the Sentier, a neighborhood known for being a tech hub.[51] According to Le Monde, French civic tech is "already a reality" but lacks investments to scale up.[52]
Government-led initiatives

In France, public data are available on data.gouv.fr[53][non-primary source needed] by the Etalab[54][non-primary source needed] mission, located under the authority of the Prime Minister.

Government agencies are also leading large citizen consultation through the Conseil national du numérique[55] (National digital council), for example with the law about the digital republic (Projet de loi pour une république numérique).
Citizen-led initiatives

The French citizen community for civic tech is gathered in the collective Démocratie ouverte[56][non-primary source needed] (Open democracy). The main purpose of this collective is to enhance democracy to increase citizen power, improve the way to decide collectively and update the political system. Démocratie ouverte gathers many projects focused on understanding politics, renewing institutions, participating in democracy, and public action. Several open-source, non-profit web platforms have been launched nationwide to support citizen's direct involvement: Communecter.org,[57] Demodyne.org[58] as well as Democracy OS France (derived from the Argentinian initiative).

LaPrimaire.org organizes open primaries to allow the French to choose the candidates they wish to run for public elections[59][60]
Iceland

The Icelandic constitutional reform, 2010–13 instituted a process for reviewing and redrafting their constitution after the 2008 financial crisis, using social media to gather feedback on twelve successive drafts.[61]

Beginning in October 2011, a Citizens Foundation platform called Betri Reykjavik[62][non-primary source needed] had been implemented for citizens to inform each other and vote on issues.[63] Each month the city council formally evaluates the top proposals before issuing an official response to each participant.[64] As of 2017, the number of proposals approved by the city council reached 769.[65]

The Pirate Party (Iceland) uses the crowdsourcing platform Píratar[66][non-primary source needed] for members to create party policies.
Italy
Citizen-led initiatives

A consortium made by TOP-IX,[67][non-primary source needed] FBK[68][non-primary source needed] and RENA[69][non-primary source needed] created the Italian civic tech school.[70] The first edition[71] was in May 2016 in Turin.

The Five Star Movement, an Italian political party has a tool called Rousseau[72][non-primary source needed] which gives members a way to communicate with their representatives.
Spain

The Madrid City Council has a department of Citizen Participation[73] that facilitates a platform called Decide Madrid for registered users to discuss topics with others in the city, propose actions for the City Council, and submit ideas for how to spend a portion of the budget on projects voted on through participatory budgeting.[74]

Podemos (Spanish political party) uses a reddit called Plaza Podemos[75][non-primary source needed] where anybody can propose and vote on ideas.
Sweden

The City of Stockholm has a make-a-suggestion page on stockholm.se and available as an app, allowing citizens to report any ideas for improvement in the city along with a photo and GPS. After receiving a suggestion, it is sent to the appropriate office that can place a work order. During 2016, one hundred thousand requests were recorded. This e-service began in September 2013.[76]

The city government of Gothenburg has an online participatory voting system,[77] open for every citizen to propose changes and solutions. When a proposal receives more than 200 votes, it is delivered to the relevant political committee.[78]
United Kingdom
Government-led initiatives

In 2007 and 2008 documents from the British government explore the concept of "user-driven public services" and scenarios of highly personalized public services.[79][80] The documents proposed a new view on the role of service providers and users in the development of new and highly customized public services, utilizing user involvement.[79][80] This view has been explored through an initiative in the UK. Under the influence of the European Union, the possibilities of service design for the public sector are being researched, picked up, and promoted in countries such as Belgium.[81]

Care Opinion was set up to strengthen the voice of patients in the NHS in 2005. Behavioural Insights Team (BIT) (also known as Nudge) was originally part of the British cabinet and was founded in 2010, in order to apply nudge theory to try to improve British government policy, services and save money. As of 2014, BIT became a decentralized, semi-privatized company with Nesta (charity), BIT employees and the British government each owning a third of this new business.[82] That same year a Nudge unit was added to the United States government under president Obama, referred to as the 'US Nudge Unit,' working within the White House Office of Science and Technology Policy.[83]
Citizen-led initiatives

FixMyStreet.com is a website and app developed by mySociety, a UK based civic technology company that works to make online democracy tools for British citizens. FixMyStreet allows citizens in the United Kingdom to report public infrastructure issues (such as potholes, broken streetlights, etc.) to the proper local authority.[84] FixMyStreet became inspiration to many countries around the world that followed suit to use civic technology to better public infrastructure.[27] The website was funded by the Department for Constitutional Affairs Innovation fund and created by mySociety.[85] Along with the platform itself, mySociety released FixMyStreet, a free and open-source software framework that allows users to create their own website to report street problems.[86] mySociety has many different tools, like parliamentary monitoring ones, that work in many countries for different types of governance. When such tools are integrated into government systems, citizens can not only understand the inner workings of their now transparent government, but also have the means to "exert influence over the people in power".[87] Newspeak House is a community space and venue focused on building a community of civic and political technology practitioners in the United Kingdom.[88]

Spacehive is a crowdfunding platform for civic improvement projects that allows citizens and local groups to propose project ideas such as improving a local park or starting a street market.[89][better source needed] Projects are then funding by a mix of citizens, companies and government bodies. The platform is used by several councils including the Mayor of London to co-fund projects.[90]

Democracy Club is a community interest company, founded in 2009 to provide British voters with easy access to candidate lists in upcoming elections.[91][92] Democracy Club uses a network of volunteers to crowdsource information about candidates which is then presented to voters via a postcode search on the website whocanivotefor.co.uk.[93][94] Democracy Club also works with the Electoral Commission to provide data for a national polling station finder at wheredoivote.co.uk and on the commission's own Your Vote Matters website.[95]
Ukraine
Government-led initiatives

In Ukraine, major civic tech movement started out with open data reform in 2014. As for now, public data are available on data.gov.ua, national open data portal.[96][97]
Citizen-led initiatives

Some widely used Ukrainian civic tech projects are donor recruitment platform DonorUA, Ukrainian companies' data and court register monitoring service Open Data Bot, participatory budgeting platform "Громадський проект". The latter accounts for over 3 million users.[98][99][100]

In 2017, to foster the growth of civic tech initiatives, Ukrainian NGO SocialBoost launched 1991 Civic Tech Center, a dedicated community space in country's capital, Kyiv. The space opened following a $480,000 grant from Omidyar Network, the philanthropic investment firm established by eBay founder Pierre Omidyar.[101]
Civic technology in North America
Canada
Government-led initiatives

Canadian Digital Service (CDS) was launched in 2017, as part of an attempt to bring better IT to the Canadian government.[102][103] The CDS was established within the Treasury Board of Canada the Canadian agency that oversees spending within departments and the operations of the public service.[103] Scott Brison, the president of the Canadian Treasury Board, launched CDS and was Canada's first minister of digital government.[103]
Citizen-led initiatives

As in other countries, the Canadian civic technology movement is home to several organizations. Code for Canada is a non-profit group, following somewhat the model of Code for America.[104] Several cities or regions host civic technology groups with regular meetings (in order from West to East): Vancouver,[105] Calgary,[106] Edmonton,[107] Waterloo Region,[108] Toronto,[109] Ottawa,[110] Fredericton,[111] Saint John,[112] and Halifax.[113]
United States
Government-led initiatives

The Clinton, Bush, and Obama administrations sought initiatives to further openness of the government, through either increased use of technology in political institutions or efficient ways to further civic engagement.[114] The Obama administration pursued an Open Government Initiative based on principles of transparency and civic engagement.[115] This strategy has paved the way for increased governmental transparency within other nations to improve democratically for the citizens' benefit and allow for greater participation within politics from a citizen's perspective. During his run for president, Obama was "tied directly to the extensive use of social media by the campaign." [116]

According to a study conducted by the International Data Corporation (IDC), an estimated $6.4 billion will be spent on civic technology in 2015 out of approximately $25.5 billion that governments in the United States will spend on external-facing technology projects.[10][117] A Knight Foundation survey of the civic technology field found that the number of civic technology companies grew by roughly 23% annually between 2008 and 2013.[118]
Citizen-led initiatives

Civic technology is built by a variety of companies, organizations and volunteer groups. One prominent example is Code for America, a not-for-profit based in San Francisco, working toward addressing the gap between the government and citizens.[119] College students from Harvard University created the national non-profit Coding it Forward that creates data science and technology internships for undergraduate and graduate students in United States federal agencies.[120] Another example of a civic technology organization is the Chi Hack Night,[121] based in Chicago. The Chi Hack Night is a weekly, volunteer-run event for building, sharing and learning about civic technology. Civic Hall[122] is a coworking and event space in New York City for people who want to contribute to civic-minded projects using technology.[123] And OpenGov creates software designed to enable public agencies to make data-driven decisions, improve budgeting and planning, and inform elected officials and citizens.

OneBusAway, a mobile app that displays real-time transit info, exemplifies the open data use of civic technology. It is maintained by volunteers and has the civic utility of helping people navigate their way through cities. It follows the idea that technology can be a tool for which government can act as a society-equalizer.[124]

Princeton University Professor Andrew Appel set out to prove how easy it was to hack into a voting machine.[125] On February 3, 2007, he and a graduate student, Alex Halderman, purchased a voting machine, and Halderman picked the lock in 7 seconds.[126][non-primary source needed] They removed the 4 ROM chips and replaced them with modified versions of their own: a version of modified firmware that could throw off the machine's results, subtly altering the tally of votes, never to betray a hint to the voter. It took less than 7 minutes to complete the process.

In September 2016, Appel wrote a testimony for the Congress House Subcommittee on Information Technology hearing on "Cybersecurity: Ensuring the Integrity of the Ballot Box", suggesting to for Congress to eliminate touchscreen voting machines after the election of 2016, and that it require all elections be subject to sensible auditing after every election to ensure that the systems are functioning properly and to prove to the American people that their votes are counted as cast.[127][128]
Mexico
Government-led initiatives

Within the Mexican president's office, there is a national digital strategy coordinator who works on Mexico's national digital strategy.[129] The office has created the gob.mx portal, a website designed for Mexican citizen to engage with their government, as well as a system to share open government data.[129] According to McKinsey & Company, in a 2018 survey Mexico had the worst-rated citizen experience (4.4 out of 10) for convenience and accessibility of Mexican government services, of the group of countries surveyed (Canada, France, Germany, Mexico, the United Kingdom, and the United States).[129]
Citizen-led initiatives

Arena Electoral was an online platform created by Fundación Ethos during the Mexican electoral process of 2012 to promote responsible voting.[130] An online simulation was created by taking the four presidential candidates in that election cycle and each were given policy issues based on the Mexican national agenda that they had to come up with a solution to. Once each candidate gave their solutions, the platform published it on their website and left it to the Mexican citizens to vote for the best policy.[131]
Civic technology in South America
[icon]	
This section needs expansion. You can help by adding to it. (September 2018)
Argentina

Partido de la Red (Net Party) is an Argentinean political party using the DemocracyOS open-source software with the goal of electing representatives who vote according to what citizens decides online.[132]
Effects of civic technology
Effects on social behavior and civic engagement

Because of the conveniences provided by civic technology, there are benefits as well as growing concern about the effects it may have on social behavior and civic engagement.[133] New technology allows for connectivity and new communications, as well as changing how we interact with issues and contexts beyond one's intimate sphere.[133] Civic technology affords transparency in government with open-government data, and allows more people of diverse socioeconomic levels to be able to build and engage with civic matters in a way that was not possible prior.[134]
Communication

The importance of face-to-face interactions has also been called to question with the increase in e-mails and social media and a decrease in traditional, in-person social interaction. Technology as a whole may be responsible for this change in social norm, but it also holds potential for turning it around with audio and video communication capabilities. More research needs to be conducted in order to determine if these are appropriate substitutes for in-person interaction, or if any substitute is even feasible.[8]

Preece & Shneiderman discuss the important social aspect of civic technology with a discussion of the "reader-to-leader framework", which follows that users inform readers, who inform communicators, who then inform collaborators, before finally reaching leaders.[135] This chain of communication allows for the interests of the masses to be communicated to the implementers.
Elections

Regarding elections and online polling, there is the potential for voters to make less informed decisions because of the ease of voting. Although many more voters will turn out, they may only be doing so because it is easy and may not be consciously making a decision based on their own synthesized opinion. It's suggested that if online voting becomes more common, so should constituent-led discussions regarding the issues or candidates being polled.[8]
Effects on socioeconomics

With advanced technologies coming at higher costs and with an increased reliance on civic technologies may leave low-income families in the dark if they cannot afford the platforms for civic technology, such as computers and tablets. This causes an increase in the gap between lower and middle/high socioeconomic class families.[8]

Knowledge of how to use computers is equally important when considering factors of accessing civic technology applications online, and is also generally lower in low-income households. According to a recent study performed by the National Center for Education Statistics, 14% of students between the age range of 3 and 18 do not have access to the internet. Those with a lower socio-economic status tend to cut their budgets by not installing internet in their homes.[136] Public Schools have taken the lead in ensuring proper technology access and education in the classroom to better prepare children for the high-tech world, but there is still a clear difference between online contributions from those with and without experience on the internet.[8]
See also

    Civic technology companies
    Comparison of civic technology platforms
    Digital citizen
    E-government
    Government by algorithm
    Open government
    Service design

References

"Civic Tech: Entrepreneurship Opportunities". Archived from the original on 2014-07-27.
"Nick Bilton: New York Times: Changing Government and Tech With Geeks". 2010-07-06.
"But What Is "Civic"?".
Mandarano, Lynn (2011). "Building Social Capital in the Digital Age of Civic Engagement". Journal of Planning Literature.
Bwalya, Kelvin J.; Mutula, Stephen M. (2014). E-Government: Implementation, Adoption and Synthesis in Developing Countries. Walter de Gruyter GmbH & Co KG. pp. 31–32. ISBN 978-3110305272 – via Google Books.
"Knight Foundation: Trends in Civic Tech".
"Knight Foundation". www.knightfoundation.org. Retrieved 2016-12-08.
Cavanaugh, John W. (2000). "E-Democracy: Thinking About The Impact Of Technology On Civic Life". National Civic Review. 89 (3): 229–234. doi:10.1002/ncr.89305.
Criado, J. Ignacio; Sandoval-Almazan, Rodrigo; Gil-Garcia, J. Ramon (2013-10-01). "Government innovation through social media". Government Information Quarterly. 30 (4): 319–326. doi:10.1016/j.giq.2013.10.003.
"The future of civic technology". 2001-11-30.
"Airbnb Disaster Response".
The Sharing Economy is Not Civic Tech
"Towards a taxonomy of civic technology - Microsoft on the Issues". Microsoft on the Issues. 2016-04-27. Retrieved 2016-11-28.
"Civic Graph Charts the New World of Civic Tech". www.govtech.com. Retrieved 2016-12-07.
"Knight Foundation". www.knightfoundation.org. Retrieved 2016-12-08.
"Civic Tech Field Guide". Civic Tech Field Guide. Retrieved 2020-09-21.
Bonsón, Enrique; Torres, Lourdes; Royo, Sonia; Flores, Francisco (2012-04-01). "Local e-government 2.0: Social media and corporate transparency in municipalities". Government Information Quarterly. 29 (2): 123–132. doi:10.1016/j.giq.2011.10.001.
Civic Hacking - Open Government Data: The Book.
"What We Do". Archived from the original on 2011-01-24. Retrieved 2011-01-15.
"Is Civic Hacking Becoming 'Our Pieces, Loosely Joined'?". Tech President. 2012-07-25.
"The Future of Civic Tech: 8 Localities Showcase Their Initiatives".
Feldman, Amy (21 December 2010). "Intelligent Cities". Time – via content.time.com.
"The future of civic technology | Brookings Institution". Brookings. 2016-12-07. Retrieved 2016-12-07.
"Open Government Partnership". Open Government Partnership. Retrieved 2016-11-10.
Corrales, Javier; Westhoff, Frank (2006-01-01). "Information Technology Adoption and Political Regimes". International Studies Quarterly. 50 (4): 911–933. doi:10.1111/j.1468-2478.2006.00431.x. JSTOR 4092785.
Montgomery, Mike. "Why Civic Tech Is The Next Big Thing". Forbes. Retrieved 2016-12-07.
Tiago, Peixoto; L., Sifry, Micah (2017-08-21). "Civic Tech in the Global South".
"About MajiVoice - Introduction to MajiVoice". www.majivoice.com. Retrieved 2018-04-19.
http://documents.worldbank.org/curated/en/632501467986270596/pdf/93637-BRI-2012Nov1-P126637-P096367-Kenya-WSP-Box-385404B-PUBLIC.pdf
"How it Works - Send Complaint or Feedback". www.majivoice.com. Retrieved 2018-04-19.
Obi, Toshio (2010). The Innovative CIO and E-participation in E-government Initiatives. IOS Press. pp. 212–213. ISBN 978-1607505044 – via Google Books.
Mzekandaba, Simnikiwe (2020-09-29). "GovChat ready to 'assist SASSA where needed'". ITWeb. Retrieved 2020-11-20.
http://workshop.co, Work-Shop Design Studio. "Getting to the Grassroot, Leadership Development through Storytelling on WhatsApp". MIT GOV/LAB. Retrieved 2020-11-20.
http://workshop.co, Work-Shop Design Studio. "A Novel Approach to Civic Pedagogy: Training Grassroots Organizers on WhatsApp". MIT GOV/LAB. Retrieved 2020-11-20.
"UNICEF's U-Report: using mobile technology for youth participation in policymaking - Centre for Public Impact (CPI)". Centre for Public Impact (CPI). Retrieved 2018-04-19.
"UNICEF Uganda - Youth - U-report". www.unicef.org. Retrieved 2018-04-19.
Leonard, Andrew. "How Taiwan's Unlikely Digital Minister Hacked the Pandemic". www.wired.com. Wired. Retrieved 27 July 2020.
Barry, Liz. "vTaiwan: Public Participation Methods on the Cyberpunk Frontier of Democracy". civichall.org. Retrieved 2017-06-03.
Megill, Colin (2016-05-25). "pol.is in Taiwan". blog.pol.is. Retrieved 2017-06-03.
"MiVote". MiVote. Retrieved 2017-04-28.
"Can Direct Democracy Be Revived Through New Voting Apps?". Fast Company. 2016-09-07. Retrieved 2017-04-28.
"MiVote wants to bring remote control politicians to the Senate". The Australian Financial Review. 2017-04-11. Retrieved 2017-04-28.
Bason, Christian (2013). "Design-Led Innovation in Government". Stanford Social Innovation Review (SSIR). Stanford University. Retrieved 2018-02-24.
"MindLab: The evolution of a public innovation lab - The Governance Lab @ NYU". The Governance Lab @ NYU. 2016-03-07. Retrieved 2018-02-24.
"Look to Government—Yes, Government—for New Social Innovations". Harvard Business Review. 2014-11-20. Retrieved 2018-02-24.
Docherty-Hughes, Martin (2020-09-09). "Estonia's digitised society is a worthy lesson for an independent Scotland". The National. Retrieved 2020-09-22.
Schulze, Elizabeth (2019-02-08). "How a tiny country bordering Russia became one of the most tech-savvy societies in the world". CNBC. Retrieved 2020-09-22.
"Rahvakogu, Estonia – From ideas to laws". Citizens Foundation.
Roonemaa, Mari (2017-04-18). "Global lessons from Estonia's tech-savvy government". UNESCO. Retrieved 2020-09-22.
Heller, Nathan. "Estonia, the Digital Republic". The New Yorker. Retrieved 2020-09-22.
"Paris, bientôt capitale des Civic Tech ?". Libération.fr. Retrieved 2016-11-24.
Fagot, Vincent (2016-10-10). "Les nouvelles ambitions de la " Civic Tech " française". Le Monde.fr (in French). ISSN 1950-6244. Retrieved 2016-11-24.
"Accueil - Data.gouv.fr". www.data.gouv.fr. Retrieved 2016-11-10.
"Le blog de la mission Etalab, Service du Premier Ministre chargé de l'ouverture des données publiques et du développement de la plateforme française OpenData". www.etalab.gouv.fr (in French). Office of the Prime Minister, within the Interministerial Directorate for the Digital and Information and Communication System of the State, Government of France. Retrieved 2016-11-10.
"Conseil National du Numérique". Conseil National du Numérique (in French). Retrieved 2016-11-10.
"Démocratie Ouverte - Collectif de transition démocratique". democratieouverte.org. Retrieved 2016-11-10.
pixelhumain. "Réseau sociétal citoyen". www.communecter.org. Retrieved 2018-01-14.
Niculita, Desvigne, Dobre. "DEMODYNE - Shape Your Society". www.demodyne.org. Archived from the original on 2018-03-31. Retrieved 2018-01-14.
"LaPrimaire". LaPrimaire. Retrieved 21 February 2018.
Guerrini, Federico. "Civic Tech Platform La Primaire Wants To Help French Voters Bypass Traditional Parties". Forbes. Retrieved 17 December 2016.
Landemore, Hélène (2014-07-31). "We, All of the People". slate.com. Retrieved 2017-06-03.
"Betri(Better)Reykjavik". BetriReykjavik. Retrieved 2017-04-28.
Gnarr, Jón (2014). Gnarr! How I Became the Mayor of a Large City in Iceland and Changed the World. Melville House. p. 192. ISBN 9781612194134.
Lackaff, Derek (2016-06-10). Better Reykjavik — Open Municipal Policymaking. researchgate.net. pp. 229–234. ISBN 9780262034272. Retrieved 2018-05-28.
Jacobs, Joshua (2017-11-23). "The world watches Reykjavik's digital democracy experiment". ft.com. Retrieved 2018-05-28.
"Píratar". x.piratar.is. Retrieved 2017-07-12.
"TOP-IX". TOP-IX. Retrieved 2016-11-16.
"FBK". Fondazione Bruno Kessler. Retrieved 2016-11-16.
"progetto RENA". Progetto RENA. Retrieved 2016-11-16.
"Scuola di tecnologie civiche". Retrieved 2016-11-16.
"civic tech school 1st". 2016-06-17. Retrieved 2016-11-16.
"Rousseau". rousseau.movimento5stelle.it. Retrieved 2017-07-12.
"This Is How People Power Wins an Election: The Story of Ahora Madrid". Commons Transition. 2016-12-21. Retrieved 2017-04-28.
"More Information". Decide Madrid. Retrieved 2017-04-28.
"Plaza Podemos". reddit.com. Retrieved 2017-07-12.
"How the smart city develops". stockholm.se. Retrieved 2017-07-19.
"Göteborgsförslaget". goteborg.se. Retrieved 2017-07-19.
Kollaborativ Ekonomi Göteborg. "12 Reasons Why Gothenburg is an Amazing Sharing City". shareable.net. Retrieved 2017-07-19.
"User Involvement in Public Services, Sixth Report of Session" (PDF). Public Administration Select Committee, The House of Commons, London: The Stationery Office Limited. 2008-05-07. Retrieved 2018-02-23.
"Policy Review, Building on progress: Public services" (PDF). Prime Minister's Strategy Unit. March 2007. Archived from the original (PDF) on 2010-03-04. Retrieved 2018-02-23.
Thoelen and Cleeren (ed.), Public Service Design. A guide for the application of service design in public organisations, 2015 http://designvlaanderen.be/publicatie/public-service-design Archived 2017-01-07 at the Wayback Machine
"'Nudge unit' privatisation unveiled". BBC News. 2014-02-05. Retrieved 2018-02-24.
"Executive Order Formally Establishes US 'Nudge Unit'". Behavioral Scientist. 2015-09-16. Retrieved 2018-02-24.
"FixMyStreet". FixMyStreet. Retrieved 2018-04-19.
"Archived copy". Archived from the original on 2016-03-04. Retrieved 2018-04-30.
"mysociety/fixmystreet". GitHub. Retrieved 2018-04-19.
mySociety. "Democracy". mySociety. Retrieved 17 December 2016.
"Newspeak". Newspeak. Retrieved 7 June 2018.
"Spacehive - Crowdfunding for Local Projects".
"Crowdfund London". London City Hall. Greater London Authority. 2016-06-21. Retrieved 2018-11-28.
"Democracy Club". Democracy Club. Retrieved 2019-05-19.
"Democracy? There's an app for that". The Guardian. 2017-06-06. Retrieved 2019-05-19.
"Democracy Club Finally Lets Brits Know Who Is Running for Parliament". ThechPresident. 2015-04-22. Retrieved 2019-05-19.
"Why are British voters in the dark about this week's elections?". The Guardian. 2017-05-03. Retrieved 2019-05-19.
"Electoral Administration Bulletin 220" (PDF). The Electoral Commission. 2018-06-13. Retrieved 2019-05-19.
"Open Data in Ukraine - data.gov.ua". www.data.gov.ua. Retrieved 12 July 2018.
"Can open data grow Ukraine's economy by 1-Billion In 7 years". The ODI. Retrieved 12 July 2018.
"DonorUA: How the Synergy of the Civil Society, Business and IT Saves Thousands of Lives". Medium. 2018-04-12. Retrieved 12 July 2018.
"Open Data Bot". Open Data Bot. Retrieved 12 July 2018.
"The First Forum on Participatory Budgeting Held in Kyiv". IBSER. Retrieved 12 July 2018.
"As Some Bail, Denis Gursky Sees Ukraine as Land of Opportunity, and Thinks You Should Too". Atlantic Council. Retrieved 12 July 2018.
Ireton, Julie (2017-12-14). "Canadian Digital Service takes startup approach to building better IT for government". CBC. Retrieved 2018-11-14.
Trendall, Sam (2018-08-01). "Inside the Canadian Digital Service – how the transformation agency began life 'on the corner of someone's desk'". PublicTechnology.net. Retrieved 2018-11-14.
Sawhney, Gabe (2017-04-05). "It's time for Code for Canada". Medium. Code for Canada. Retrieved 27 September 2017.
"Civic Tech Vancouver". civictechvancouver.ca. Retrieved 2019-06-08.
"CivicTechYYC | Tech for Good". CivicTechYYC | Tech for Good. Retrieved 2019-06-08.
"Beta City YEG". Beta City YEG. Beta City YEG. Retrieved 27 September 2017.
"CivicTechWR". CivicTechWR. CivicTechWR. Archived from the original on 28 September 2017. Retrieved 27 September 2017.
"Civic Tech Toronto". Civic Tech Toronto. Civic Tech Toronto. Retrieved 27 September 2017.
"Ottawa Civic Tech". Ottawa Civic Tech. Ottawa Civic Tech. Retrieved 27 September 2017.
"CIVIC TECH FREDERICTON". CIVIC TECH FREDERICTON. Retrieved 2018-02-07.
"Civic Tech Saint John". Meetup. Retrieved 2020-06-15.
"Halifax Civic Tech". Eventbrite. Retrieved 2019-06-08.
Bertot, John Carlo (August 12, 2010). "Engaging the Public in Open Government: Social Media Technology and Policy for Government Transparency". Researchgate.net. Retrieved October 23, 2016.
Huijboom, Noor (March–April 2011). "Open data: an international comparison of strategies" (PDF). epracticejournal.edu. European Journal of Practice. Retrieved October 23, 2016.
Bertot, John Carlo; Jaeger, Paul T.; Hansen, Derek (2012-01-01). "The impact of policies on government social media usage: Issues, challenges, and recommendations". Government Information Quarterly. 29 (1): 30–40. doi:10.1016/j.giq.2011.04.004.
"Civic tech in 2015: $6.4 billion to connect citizens to services, and to one another - TechRepublic".
"The Emergence of Civic Tech: Investments in a Growing Field" (PDF). Archived from the original (PDF) on 2017-08-29. Retrieved 2015-08-31.
"About us". www.codeforamerica.org. Retrieved 2016-11-20.
"About". Coding it Forward. Retrieved 30 August 2018.
"Chi Hack Night". Chi Hack Night. Retrieved 2016-11-10.
"Civic Hall". Civic Hall. Retrieved 2017-06-03.
Field, Anne. "A Coworking Site For Civic Tech In New York City". forbes.com. Retrieved 2017-06-03.
Wood, Colin (16 August 2016). "What is Civic Tech?". govtech.com. e.Republic. Retrieved 15 December 2016.
Pratt, Timothy. "Georgia's new voting system actually decreases election security, say experts". Quartz. Retrieved 2019-07-24.
Appel, Andrew. "Personal Affidavit from Andrew Appel for the Superior Court of New Jersey in New Jersey Voting Machines Lawsuit". Princeton University. Retrieved 2019-09-24.
Appel, Andrew (September 28, 2016). "Written testimony of Andrew W. Appel" (PDF). House Subcommittee of Information Technology. Princeton University. Retrieved November 17, 2016.
"National Academies panel on securing the vote includes Princeton computer scientist Appel". Princeton University. Retrieved 2019-07-24.
Cesar, Max; Chaia, Alberto; de Oliveira Vaz, Andre; Garcia-Muñoz, Gonzalo; Haugwitz, Philipp (2018-11-01). "How Mexico can become Latin America's digital-government powerhouse". McKinsey & Company. Retrieved 2018-11-15.
"Bienvenidos". Arena Electoral. Retrieved 2018-04-19.
"Con esta herramienta, descubre con cuál candidato eres más afín". Vanguardia (in Spanish). Retrieved 2018-04-19.
"Partido de la Red". Participedia. Archived from the original on 2017-08-18. Retrieved 2017-04-28.
Baldwin-Philippi, Jesse; Balestra, Martina; Gordon, Eric (2013-10-27). "Why We Engage: How Theories of Human Behavior Contribute to Our Understanding of Civic Engagement in a Digital Era". Berkman Klein Center. Harvard University. Retrieved 2018-02-27.
"'Civic tech' efforts open up government data for the great public good". news and observer. 2018-02-10. Retrieved 2018-02-27.
Preece, Jennifer (2009). "The Reader-to-Leader Framework: Motivating Technology-Mediated Social Participation" (PDF). Theory and Review.

    "More than 9 million children lack internet access at home for online learning". USAFacts. Retrieved 2020-09-22.

External links

    Erin Simpson; Micah Sifry; Matt Stempeck, Civic Tech Field Guide, US. 2016-

Categories:

    E-governmentInformation AgeInformation technologyOpen government

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Français
    한국어
    Italiano
    中文

Edit links

    This page was last edited on 21 February 2021, at 04:36 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki






! Cognitive computing

!! https://en.wikipedia.org/wiki/Cognitive_computing

From Wikipedia, the free encyclopedia

	
This article appears to contain a large number of buzzwords. There might be a discussion about this on the talk page. Please help improve this article if you can. (January 2019)
	
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Cognitive computing" – news · newspapers · books · scholar · JSTOR (May 2019) (Learn how and when to remove this template message)

Cognitive computing (CC) refers to technology platforms that, broadly speaking, are based on the scientific disciplines of artificial intelligence and signal processing. These platforms encompass machine learning, reasoning, natural language processing, speech recognition and vision (object recognition), human–computer interaction, dialog and narrative generation, among other technologies.[1][2]
Contents

    1 Definition
    2 Use cases
    3 Cognitive analytics
    4 Applications
    5 Industry work
    6 See also
    7 References
    8 Further reading

Definition

At present, there is no widely agreed upon definition for cognitive computing in either academia or industry.[1][3][4]

In general, the term cognitive computing has been used to refer to new hardware and/or software that mimics the functioning of the human brain[5][6][7][8][9] (2004) and helps to improve human decision-making.[10] In this sense, CC is a new type of computing with the goal of more accurate models of how the human brain/mind senses, reasons, and responds to stimulus. CC applications link data analysis and adaptive page displays (AUI) to adjust content for a particular type of audience. As such, CC hardware and applications strive to be more affective and more influential by design.

Some features that cognitive systems may express are:

Adaptive
    They may learn as information changes, and as goals and requirements evolve. They may resolve ambiguity and tolerate unpredictability. They may be engineered to feed on dynamic data in real time, or near real time.[11]
Interactive
    They may interact easily with users so that those users can define their needs comfortably. They may also interact with other processors, devices, and cloud services, as well as with people.
Iterative and stateful
    They may aid in defining a problem by asking questions or finding additional source input if a problem statement is ambiguous or incomplete. They may "remember" previous interactions in a process and return information that is suitable for the specific application at that point in time.
Contextual
    They may understand, identify, and extract contextual elements such as meaning, syntax, time, location, appropriate domain, regulations, user’s profile, process, task and goal. They may draw on multiple sources of information, including both structured and unstructured digital information, as well as sensory inputs (visual, gestural, auditory, or sensor-provided).[12]

Use cases

    Speech recognition
    Sentiment analysis
    Face detection
    Risk assessment
    Fraud detection
    Behavioral recommendations

Cognitive analytics

Cognitive computing-branded technology platforms typically specialize in the processing and analysis of large, unstructured datasets.[13]

Word processing documents, emails, videos, images, audio files, presentations, webpages, social media and many other data formats often need to be manually tagged with metadata before they can be fed to a computer for analysis and insight generation. The principal benefit of utilizing cognitive analytics over traditional big data analytics is that such datasets do not need to be pre-tagged.

Other characteristics of a cognitive analytics system include:

    Adaptability: cognitive analytics systems can use machine learning to adapt to different contexts with minimal human supervision
    Natural language interaction: cognitive analytics systems can be equipped with a chatbot or search assistant that understands queries, explains data insights and interacts with humans in natural language.

Applications

Education
    Even if Cognitive Computing can not take the place of teachers, it can still be a heavy driving force in the education of students. Cognitive Computing being used in the classroom is applied by essentially having an assistant that is personalized for each individual student. This cognitive assistant can relieve the stress that teachers face while teaching students, while also enhancing the student’s learning experience over all.[14] Teachers may not be able to pay each and every student individual attention, this being the place that cognitive computers fill the gap. Some students may need a little more help with a particular subject. For many students, Human interaction between student and teacher can cause anxiety and can be uncomfortable. With the help of Cognitive Computer tutors, students will not have to face their uneasiness and can gain the confidence to learn and do well in the classroom.[15] While a student is in class with their personalized assistant, this assistant can develop various techniques, like creating lesson plans, to tailor and aid the student and their needs.
Healthcare
    Numerous tech companies are in the process of developing technology that involves Cognitive Computing that can be used in the medical field. The ability to classify and identify is one of the main goals of these cognitive devices.[16] This trait can be very helpful in the study of identifying carcinogens. This cognitive system that can detect would be able to assist the examiner in interpreting countless numbers of documents in a lesser amount of time than if they did not use Cognitive Computer technology. This technology can also evaluate information about the patient, looking through every medical record in depth, searching for indications that can be the source of their problems.

Industry work

Cognitive Computing in conjunction with big data and algorithms that comprehend customer needs, can be a major advantage in economic decision making.

The powers of Cognitive Computing and AI hold the potential to affect almost every task that humans are capable of performing. This can negatively affect employment for humans, as there would be no such need for human labor anymore. It would also increase the inequality of wealth; the people at the head of the Cognitive Computing industry would grow significantly richer, while workers without ongoing, reliable employment would become less well off.[17]

The more industries start to utilize Cognitive Computing, the more difficult it will be for humans to compete.[17] Increased use of the technology will also increase the amount of work that AI-driven robots and machines can perform. Only extraordinarily talented, capable and motivated humans would be able to keep up with the machines. The influence of competitive individuals in conjunction with AI/CC with has the potential to change the course of humankind.[18]
See also

    Affective computing
    Analytics
    Artificial neural network
    Brain computer interface
    Cognitive computer
    Cognitive reasoning
    Enterprise cognitive system
    Semantic Web
    Social neuroscience
    Synthetic intelligence
    Usability
    Neuromorphic engineering
    AI accelerator

References

Kelly III, Dr. John (2015). "Computing, cognition and the future of knowing" (PDF). IBM Research: Cognitive Computing. IBM Corporation. Retrieved February 9, 2016.
Augmented intelligence, helping humans make smarter decisions. Hewlett Packard Enterprise. http://h20195.www2.hpe.com/V2/GetPDF.aspx/4AA6-4478ENW.pdf Archived April 27, 2016, at the Wayback Machine
"Cognitive Computing". April 27, 2014.
Gutierrez-Garcia, J. Octavio; López-Neri, Emmanuel (November 30, 2015). "Cognitive Computing: A Brief Survey and Open Research Challenges". 2015 3rd International Conference on Applied Computing and Information Technology/2nd International Conference on Computational Science and Intelligence: 328–333. doi:10.1109/ACIT-CSI.2015.64. ISBN 978-1-4673-9642-4. S2CID 15229045.
Terdiman, Daniel (2014) .IBM's TrueNorth processor mimics the human brain.http://www.cnet.com/news/ibms-truenorth-processor-mimics-the-human-brain/
Knight, Shawn (2011). IBM unveils cognitive computing chips that mimic human brain TechSpot: August 18, 2011, 12:00 PM
Hamill, Jasper (2013). Cognitive computing: IBM unveils software for its brain-like SyNAPSE chips The Register: August 8, 2013
Denning. P.J. (2014). "Surfing Toward the Future". Communications of the ACM. 57 (3): 26–29. doi:10.1145/2566967. S2CID 20681733.
Dr. Lars Ludwig (2013). "Extended Artificial Memory. Toward an integral cognitive theory of memory and technology" (pdf). Technical University of Kaiserslautern. Retrieved February 7, 2017.
"Automate Complex Workflows Using Tactical Cognitive Computing: Coseer". thesiliconreview.com. Retrieved July 31, 2017.
Ferrucci, David; Brown, Eric; Chu-Carroll, Jennifer; Fan, James; Gondek, David; Kalyanpur, Aditya A.; Lally, Adam; Murdock, J. William; Nyberg, Eric; Prager, John; Schlaefer, Nico; Welty, Chris (July 28, 2010). "Building Watson: An Overview of the DeepQA Project" (PDF). AI Magazine. 31 (3): 59–79. doi:10.1609/aimag.v31i3.2303. S2CID 1831060. Archived from the original (PDF) on February 28, 2020.
Deanfelis, Stephen (2014). Will 2014 Be the Year You Fall in Love With Cognitive Computing? Wired: 2014-04-21
"Cognitive analytics - The three-minute guide" (PDF). 2014. Retrieved August 18, 2017.
Sears, Alec (April 14, 2018). "The Role Of Artificial Intelligence In The Classroom". ElearningIndustry. Retrieved April 11, 2019.
Coccoli, Mauro; Maresca, Paolo; Stanganelli, Lidia (May 21, 2016). "Cognitive computing in education". Journal of E-Learning and Knowledge Society. 12 (2).
Dobrescu, Edith Mihaela; Dobrescu, Emilian M. (2018). "Artificial Intelligence (Ai) - The Technology That Shapes The World" (PDF). Global Economic Observer. 6 (2): 71–81. ProQuest 2176184267.
Makridakis, Spyros (June 2017). "The forthcoming Artificial Intelligence (AI) revolution: Its impact on society and firms". Futures. 90: 46–60. doi:10.1016/j.futures.2017.03.006.

    West, Darrell M. (2018). The Future of Work: Robots, AI, and Automation. Brookings Institution Press. ISBN 978-0-8157-3293-8. JSTOR 10.7864/j.ctt1vjqp2g.[page needed]

Further reading

    Russell, John (February 15, 2016). "Mapping Out a New Role for Cognitive Computing in Science". HPCwire. Retrieved April 21, 2016.

Categories:

    Cognitive scienceArtificial intelligence

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Català
    فارسی
    한국어
    日本語
    Português
    Tiếng Việt

Edit links

    This page was last edited on 6 May 2021, at 19:21 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki







<$list filter="[!has[draft.of]tag[task]tag[done]sort[created]]">

<$checkbox tag="done"> ~~<$link to={{!!title}}><$view fiels="created" format="date" template="DDth mmm hh:mm"/> - <$view field="title"/></$link>~~</$checkbox
! Computer ethics

!! https://en.wikipedia.org/wiki/Computer_ethics

From Wikipedia, the free encyclopedia


Computer ethics is a part of practical philosophy concerned with how computing professionals should make decisions regarding professional and social conduct.[1] Margaret Anne Pierce, a professor in the Department of Mathematics and Computers at Georgia Southern University has categorized the ethical decisions related to computer technology and usage into three primary influences:[2]

    The individual's own personal code.
    Any informal code of ethical conduct that exists in the work place.
    Exposure to formal codes of ethics.

Contents

    1 Foundation
    2 History
    3 Concerns
        3.1 Internet privacy
    4 Ethical standards
    5 See also
    6 References
    7 Further reading
    8 External links

Foundation

Computer ethics was first coined by Walter Maner,[1] a professor at Bowling Green State University. Maner noticed ethical concerns that were brought up during his Medical Ethics course at Old Dominion University became more complex and difficult when the use of technology and computers became involved.[3] The conceptual foundations of computer ethics are investigated by information ethics, a branch of philosophical ethics promoted, among others, by Luciano Floridi.[4]
History

The concept of computer ethics originated in the 1940s with MIT professor Norbert Wiener, the American mathematician and philosopher. While working on anti-aircraft artillery during World War II, Wiener and his fellow engineers developed a system of communication between the part of a cannon that tracked a warplane, the part that performed calculations to estimate a trajectory, and the part responsible for firing.[1] Wiener termed the science of such information feedback systems, "cybernetics," and he discussed this new field with its related ethical concerns in his 1948 book, Cybernetics.[1][5] In 1950, Wiener's second book, The Human Use of Human Beings, delved deeper into the ethical issues surrounding information technology and laid out the basic foundations of computer ethics.[5]

A bit later during the same year, the world's first computer crime was committed. A programmer was able to use a bit of computer code to stop his banking account from being flagged as overdrawn. However, there were no laws in place at that time to stop him, and as a result he was not charged.[6][unreliable source?] To make sure another person did not follow suit, an ethics code for computers was needed.

In 1973, the Association for Computing Machinery (ACM) adopted its first code of ethics.[1] SRI International's Donn Parker,[7] an author on computer crimes, led the committee that developed the code.[1]

In 1976, medical teacher and researcher Walter Maner noticed that ethical decisions are much harder to make when computers are added. He noticed a need for a different branch of ethics for when it came to dealing with computers. The term "computer ethics" was thus invented.[1][5]

In 1976 Joseph Weizenbaum made his second significant addition to the field of computer ethics. He published a book titled Computer Power and Human Reason,[8] which talked about how artificial intelligence is good for the world; however it should never be allowed to make the most important decisions as it does not have human qualities such as wisdom. By far the most important point he makes in the book is the distinction between choosing and deciding. He argued that deciding is a computational activity while making choices is not and thus the ability to make choices is what makes us humans.

At a later time during the same year Abbe Mowshowitz, a professor of Computer Science at the City College of New York, published an article titled "On approaches to the study of social issues in computing." This article identified and analyzed technical and non-technical biases in research on social issues present in computing.

During 1978, the Right to Financial Privacy Act was adopted by the United States Congress, drastically limiting the government's ability to search bank records.[9]

During the next year Terrell Ward Bynum, the professor of Philosophy at Southern Connecticut State University as well as Director of the Research Center on Computing and Society there, developed curriculum for a university course on computer ethics.[10] Bynum was also editor of the journal Metaphilosophy.[1] In 1983 the journal held an essay contest on the topic of computer ethics and published the winning essays in its best-selling 1985 special issue, “Computers and Ethics.”[1]

In 1984, the United States Congress passed the Small Business Computer Security and Education Act, which created a Small Business Administration advisory council to focus on computer security related to small businesses.[11]

In 1985, James Moor, Professor of Philosophy at Dartmouth College in New Hampshire, published an essay called "What is Computer Ethics?"[5] In this essay Moor states the computer ethics includes the following: "(1) identification of computer-generated policy vacuums, (2) clarification of conceptual muddles, (3) formulation of policies for the use of computer technology, and (4) ethical justification of such policies."[1]

During the same year, Deborah Johnson, Professor of Applied Ethics and Chair of the Department of Science, Technology, and Society in the School of Engineering and Applied Sciences of the University of Virginia, got the first major computer ethics textbook published.[5] Johnson's textbook identified major issues for research in computer ethics for more than 10 years after publication of the first edition.[5]

In 1988, Robert Hauptman, a librarian at St. Cloud University, came up with "information ethics", a term that was used to describe the storage, production, access and dissemination of information.[12] Near the same time, the Computer Matching and Privacy Act was adopted and this act restricted United States government programs identifying debtors.[13]

In the year 1992, ACM adopted a new set of ethical rules called "ACM code of Ethics and Professional Conduct"[14] which consisted of 24 statements of personal responsibility.

Three years later, in 1995, Krystyna Górniak-Kocikowska, a Professor of Philosophy at Southern Connecticut State University, Coordinator of the Religious Studies Program, as well as a Senior Research Associate in the Research Center on Computing and Society, came up with the idea that computer ethics will eventually become a global ethical system and soon after, computer ethics would replace ethics altogether as it would become the standard ethics of the information age.[5]

In 1999, Deborah Johnson revealed her view, which was quite contrary to Górniak-Kocikowska's belief, and stated that computer ethics will not evolve but rather be our old ethics with a slight twist.[12]

Post 20th century, as a result to much debate of ethical guidelines, many organizations such as ABET[15] offer ethical accreditation to University or College applications such as "Applied and Natural Science, Computing, Engineering and Engineering Technology at the associate, bachelor, and master levels" to try and promote quality works that follow sound ethical and moral guidelines.

In 2018 The Guardian and The New York Times reported that Facebook took data from 87 million Facebook users to sell to Cambridge Analytica.[16]  

In 2019 Facebook started a fund to build an ethics center at the Technical University of Munich, located in Germany. This was the first time that Facebook funded an academic institute for matters regarding computer ethics.[17]
Concerns

Computer crime, privacy, anonymity, freedom, and intellectual property fall under topics that will be present in the future of computer ethics.[18]

Ethical considerations have been linked to the Internet of Things (IoT) with many physical devices being connected to the internet.[18]

Virtual Crypto-currencies in regards to the balance of the current purchasing relationship between the buyer and seller.[18]

Autonomous technology such as self-driving cars forced to make human decisions. There is also concern over how autonomous vehicles would behave in different countries with different culture values.[19]

Security risks have been identified with cloud-based technology with every user interaction being sent and analyzed to central computing hubs.[20]  Artificial intelligence devices like the Amazon Alexa and Google Home are collecting personal data from users while at home and uploading it to the cloud. Apple’s Siri and Microsoft’s Cortana smartphone assistants are collecting user information, analyzing the information, and then sending the information back to the user.
Internet privacy
Main article: Internet privacy

Computers and information technology have caused privacy concerns surrounding collection and use of personal data.[21] For example, Google was sued in 2018 for tracking user location without permission.[22]

A whole industry of privacy and ethical tools has grown over time, giving people the choice to not share their data online. These are often open source software, which allows the users to ensure that their data is not saved to be used without their consent.[23]
Ethical standards

Various national and international professional societies and organizations have produced code of ethics documents to give basic behavioral guidelines to computing professionals and users. They include:

Association for Computing Machinery
    ACM Code of Ethics and Professional Conduct[14]
Australian Computer Society
    ACS Code of Ethics[24]
    ACS Code of Professional Conduct[25]
British Computer Society
    BCS Code of Conduct[26]
    Code of Good Practice (retired May 2011)[27]
Computer Ethics Institute
    Ten Commandments of Computer Ethics
IEEE
    IEEE Code of Ethics[28]
    IEEE Code of Conduct[29]
League of Professional System Administrators
    The System Administrators' Code of Ethics[30]

See also

    Activism in the tech industry
    Copyright infringement
    Cyberethics
    Ethics of artificial intelligence
    Donald Gotterbarn
    Morality
    Reliability (computer networking)
    Social informatics
    Spam (electronic)
    Simon Rogerson
    Ten Commandments of Computer Ethics
    Terrell Ward Bynum
    Who Controls the Internet?

References

Bynum, Terrell Ward. "A Very Short History of Computer Ethics". Southern Connecticut Wein University. Archived from the original on 2008-04-18. Retrieved 2011-01-05.
Pierce, Margaret Anne; Henry, John W. (April 1996). "Computer ethics: The role of personal, informal, and formal codes". Journal of Business Ethics. 15 (4): 425–437. doi:10.1007/BF00380363. (subscription required)
Bynum, Terrell (2018), "Computer and Information Ethics", in Zalta, Edward N. (ed.), The Stanford Encyclopedia of Philosophy (Summer 2018 ed.), Metaphysics Research Lab, Stanford University, retrieved 2019-12-14
Floridi, Luciano (2010), "Information Ethics", in Floridi, Luciano (ed.), The Cambridge Handbook of Information and Computer Ethics, Cambridge University Press, pp. 77–100, ISBN 9780521717724
Bynum, Terrell (21 December 2014). "Computer Ethics: Basic Concepts and Historical Overview". Stanford Encyclopedia of Philosophy. Center for the Study of Language and Information, Stanford University.
"A Brief History of Computer Ethics". Learning Computing History. 5 December 2004.
"Alumni Hall of Fame: Donn Parker". SRI International. Archived from the original on 2013-07-04. Retrieved 2013-06-13.
"Obituary: Joseph Weizenbaum". The Tech. 128 (12) (Online ed.). Cambridge, MA: MIT News office. 14 March 2008. Retrieved 29 April 2015.
"The Right to Financial Privacy Act". Electronic Privacy Information Center. Retrieved 29 April 2015.
"A Very Short History of Computer Ethics ( Text Only) - The Research Center on Computing & Society". www.cs.utexas.edu. Retrieved 2020-02-26.
Small Business Computer Security and Education Act of 1984 at Congress.gov
"The Handbook of Information and Computer Ethics | Wiley". Wiley.com. Retrieved 2020-12-06.
Computer Matching and Privacy Protection Act of 1988 at Congress.gov
"ACM Code of Ethics and Professional Conduct". ACM. 16 October 1992. Retrieved 2014-08-09.
"About ABET | ABET". www.abet.org. Retrieved 2018-10-03.
Meredith, Sam (2018-04-10). "Facebook-Cambridge Analytica: A timeline of the data hijacking scandal". CNBC. Retrieved 2019-12-14.
Jan 22, Bloomberg News |; 2019 (2019-01-22). "Facebook is reportedly facing a record US fine for privacy violations". Digital Commerce 360. Retrieved 2019-12-14.
Vacura, Miroslav. "The History of Computer Ethics and its Future Challenges". Information Technology and Society Interaction and Interdependence. Proceedings of 23rd Interdisciplinary Information Management Talks (IDIMT 2015).
Maxmen, Amy (2018-10-24). "Self-driving car dilemmas reveal that moral choices are not universal". Nature. 562 (7728): 469–470. Bibcode:2018Natur.562..469M. doi:10.1038/d41586-018-07135-0. PMID 30356197.
Hashizume, Keiko; Rosado, David G.; Fernández-Medina, Eduardo; Fernandez, Eduardo B. (2013-02-27). "An analysis of security issues for cloud computing". Journal of Internet Services and Applications. 4 (1): 5. doi:10.1186/1869-0238-4-5. ISSN 1869-0238.
van den Hoven, Jeroen; Blaauw, Martijn; Pieters, Wolter; Warnier, Martijn (2020), Zalta, Edward N. (ed.), "Privacy and Information Technology", The Stanford Encyclopedia of Philosophy (Summer 2020 ed.), Metaphysics Research Lab, Stanford University, retrieved 2020-10-31
"Google sued over tracking user location amid privacy concerns".
"Ethical Alternatives and Resources".
ACS Code of Ethics (PDF), Australian Computer Society, 12 June 2012, archived from the original (PDF) on 14 May 2013
Graham, Ruth, ed. (July 2012), ACS Code of Professional Conduct (PDF), Australian Computer Society, archived from the original (PDF) on 6 April 2014
Code of Conduct for BCS Members (PDF), BCS, The Chartered Institute for IT, 8 June 2011, archived from the original (PDF) on 12 October 2016, retrieved 10 October 2016
"BCS Trustee Board agrees revised Code of Conduct". BCS, The Chartered Institute for IT. 3 May 2011.
"7.8 IEEE Code of Ethics", IEEE Policies, Section 7 - Professional Activities, IEEE
IEEE Code of Conduct (PDF), IEEE, June 2014

    "The System Administrators' Code of Ethics". League of Professional System Administrators. USENIX Association. 2006.

Further reading

    Bynum, Terrell Ward (June 2000). "The foundation of computer ethics". ACM SIGCAS Computers and Society. 30 (2): 6–13. doi:10.1145/572230.572231. (subscription required)
    Floridi, Luciano (1999). "Information Ethics: On the Theoretical Foundations of Computer Ethics" (PDF). Ethics and Information Technology. 1 (1): 37–56. Archived from the original (PDF) on 9 November 2005.
    Floridi, Luciano; Sanders, J.W. (2002). "Computer Ethics: Mapping the Foundationalist Debate" (PDF). Ethics and Information Technology. 4 (1): 1–9. doi:10.1023/A:1015209807065. Archived from the original (PDF) on 2011-04-28. Retrieved 2011-04-18.
    Haag, Stephen; Cummings, Maeve; McCubbrey, Donald J. (2003). Management Information Systems: For the Information Age (4th ed.). New York: McGraw-Hill. ISBN 978-0-07-281947-2.
    Johnson, Deborah G. (2001). Computer Ethics (3rd ed.). Upper Saddle River, NJ: Prentice Hall. ISBN 978-0-13-083699-1.
    Martin, C. Dianne; Weltz, Elaine Yale (June 1999). "From awareness to action: integrating ethics and social responsibility into the computer science curriculum". ACM SIGCAS Computers and Society. 29 (2): 6–14. doi:10.1145/382018.382028. (subscription required)
    MacKinnon, Barbara (2011). Ethics: Theory and Contemporary Issues (7th ed.). Belmont, CA: Wadsworth. ISBN 978-0-538-45283-0.
    Quinn, Michael J. (2011). Ethics for the Information Age (4th ed.). Boston, MA: Addison-Wesley. ISBN 978-0-13-213387-6.
    Moor, James H. (1985). "What is Computer Ethics?". In Bynum, Terrell Ward (ed.). Computers & Ethics. Metaphilosophy - Oxford. http://rccs.southernct.edu/what-is-computer-ethics/#what-is-computer-ethics: Blackwell. pp. 266–75. ISSN 0026-1068. Archived from the original on 2017-04-04.
    Mowshowitz, Abbe (March 1981). "On approaches to the study of social issues in computing". Communications of the ACM. 24 (3): 146–155. doi:10.1145/358568.358592. (subscription required)
    Stamatellos, Giannis (2007). Computer Ethics: A Global Perspective. Jones and Bartlett. ISBN 978-0-7637-4084-9.
    Tavani, Herman T. (2004). Ethics & Technology: Ethical Issues in an Age of Information and Communication Technology. Hoboken, NJ: John Wiley and Sons. ISBN 978-0-471-24966-5.

External links

    American Philosophical Association's Newsletter on Philosophy and Computers.
    Ethics in Computing - a list of links to ethical discussions in Computer Science courtesy of North Carolina State University Undergraduates with guidance from Dr. Edward F. Gehringer
    IEG, the Information Ethics research Group at Oxford University
    Bynum, Terrell. "Computer Ethics: Basic Concepts and Historical Overview". In Zalta, Edward N. (ed.). Stanford Encyclopedia of Philosophy.
    Coleman, Kari Gwen. "Computing and Moral Responsibility". In Zalta, Edward N. (ed.). Stanford Encyclopedia of Philosophy.
    The Research Center on Computing & Society
    The International Journal of Cyber Ethics in Education (IJCEE)
    An ELIZA emulator

    vte

Ethics
Normative ethics	

    Consequentialism
        Utilitarianism Deontology
        Kantian ethics Ethics of care Existentialist ethics Particularism Pragmatic ethics Role ethics Virtue ethics
        Eudaimonism

Applied ethics	

    Animal ethics Bioethics Business ethics Discourse ethics Engineering ethics Environmental ethics Legal ethics Machine ethics Media ethics Medical ethics Nursing ethics Professional ethics Sexual ethics Ethics of artificial intelligence Ethics of eating meat Ethics of technology Ethics of terraforming Ethics of uncertain sentience

Meta-ethics	

    Cognitivism
        Moral realism
            Ethical naturalism Ethical non-naturalism Ethical subjectivism
            Ideal observer theory Divine command theory Error theory Non-cognitivism
        Emotivism Expressivism Quasi-realism Universal prescriptivism Moral universalism
        Value monism – Value pluralism Moral relativism Moral nihilism Moral rationalism Ethical intuitionism Moral skepticism

Concepts	

    Autonomy Axiology Conscience Consent Equality Free will Good and evil
        Good Evil Happiness Ideal Immorality Justice Liberty Morality Norm Freedom Suffering or Pain Stewardship Sympathy Trust Value Virtue Wrong full index...

Philosophers	

    Laozi Socrates Plato Aristotle Diogenes Valluvar Cicero Confucius Augustine of Hippo Mencius Mozi Xunzi Thomas Aquinas Baruch Spinoza David Hume Immanuel Kant Georg W. F. Hegel Arthur Schopenhauer Jeremy Bentham John Stuart Mill Søren Kierkegaard Henry Sidgwick Friedrich Nietzsche G. E. Moore Karl Barth Paul Tillich Dietrich Bonhoeffer Philippa Foot John Rawls John Dewey Bernard Williams J. L. Mackie G. E. M. Anscombe William Frankena Alasdair MacIntyre R. M. Hare Peter Singer Derek Parfit Thomas Nagel Robert Merrihew Adams Charles Taylor Joxe Azurmendi Christine Korsgaard Martha Nussbaum more...

Related articles	

    Casuistry Christian ethics Descriptive ethics Ethics in religion Evolutionary ethics Feminist ethics History of ethics Ideology Islamic ethics Jewish ethics Moral psychology Philosophy of law Political philosophy Population ethics Social philosophy Suffering-focused ethics

    Category Category

Categories:

    Computer ethicsComputing and societyProfessional ethicsEthics of science and technology

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Français
    Bahasa Indonesia
    Italiano
    Русский
    Türkçe
    中文

Edit links

    This page was last edited on 17 April 2021, at 03:39 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki






<div class="tc-table-of-contents">
<<toc-selective-expandable 'Contents' sort[title]>>
</div>
[[PDOlogo.png]]




! WO2020060606
! 
! https://patentscope.wipo.int/search/en/detail.jsf?docId=WO2020060606

Feedback
Settings
! 1. WO2020060606 - CRYPTOCURRENCY SYSTEM USING BODY ACTIVITY DATA

https://en.wikipedia.org/w/index.php?title=Hexakosioihexekontahexaphobia&redirect=no
Hexakosioihexekontahexaphobia


    PCT Biblio. Data
    Description
    Claims
    Drawings
    ISR/WOSA/A17(2)(a)
    National Phase
    Patent Family
    Notices
    Documents

Submit observation
PermaLink
! Publication Number WO/2020/060606 https://en.wikipedia.org/wiki/666_(number)
Publication Date 26.03.2020
International Application No. PCT/US2019/038084
International Filing Date 20.06.2019
IPC
G06Q 20/06 2012.01
G06Q 20/32 2012.01
H04L 9/32 2006.01
G06Q 30/02 2012.01
G06N 3/08 2006.01
CPC
G06F 3/011
G06N 3/0454
G06N 3/0472
G06N 3/08
G06Q 20/18
G06Q 20/321
View more classifications
Applicants

    MICROSOFT TECHNOLOGY LICENSING, LLC [US]/[US]

Inventors

    ABRAMSON, Dustin
    FU, Derrick
    JOHNSON, Joseph Edwin, JR.

Agents

    MINHAS, Sandip S.
    CHEN, Wei-Chen Nicholas
    HINOJOSA, Brianna L.
    HOLMES, Danielle J.
    SWAIN, Cassandra T.
    WONG, Thomas S.
    CHOI, Daniel
    HWANG, William C.
    WIGHT, Stephen A.
    CHATTERJEE, Aaron C.
    JARDINE, John S.
    GOLDSMITH, Micah P.
    TRAN, Kimberly
    PEREZ, Edgar

Priority Data
16/138,518		21.09.2018		US
Publication Language English (EN)
Filing Language English (EN)
Designated States
View all
Title
(EN) CRYPTOCURRENCY SYSTEM USING BODY ACTIVITY DATA
(FR) SYSTÈME DE CRYPTOMONNAIE UTILISANT DES DONNÉES D'ACTIVITÉ CORPORELLE
front page image
Abstract
(EN)
Human body activity associated with a task provided to a user may be used in a mining process of a cryptocurrency system. A server may provide a task to a device of a user which is communicatively coupled to the server. A sensor communicatively coupled to or comprised in the device of the user may sense body activity of the user. Body activity data may be generated based on the sensed body activity of the user. The cryptocurrency system communicatively coupled to the device of the user may verify if the body activity data satisfies one or more conditions set by the cryptocurrency system, and award cryptocurrency to the user whose body activity data is verified.
(FR)
L'activité du corps humain associée à une tâche fournie à un utilisateur peut être utilisée dans un processus de minage d'un système de cryptomonnaie. Un serveur peut fournir une tâche à un dispositif d'un utilisateur qui est couplé de manière à communiquer avec le serveur. Un capteur couplé de manière à communiquer avec un dispositif de l'utilisateur ou compris dans ce dernier peut détecter l'activité corporelle de l'utilisateur. Des données d'activité corporelle peuvent être générées sur la base de l'activité corporelle détectée de l'utilisateur. Le système de cryptomonnaie de la présente invention couplé de manière à communiquer avec le dispositif de l'utilisateur peut vérifier si les données d'activité corporelle satisfont une ou plusieurs conditions définies par le système de cryptomonnaie, et attribuer une cryptomonnaie à l'utilisateur dont les données d'activité corporelle sont vérifiées.
Also published as US20200097951
Latest bibliographic data on file with the International Bureau
# -


https://patentscope.wipo.int/search/en/detail.jsf;jsessionid=382F5E175D0D77221E89598F856EF711.wapp1nC?docId=WO2020060606&tab=PCTDESCRIPTION


Feedback
Settings
! 1. WO2020060606 - CRYPTOCURRENCY SYSTEM USING BODY ACTIVITY DATA https://en.wikipedia.org/wiki/Number_of_the_beast

    PCT Biblio. Data
    Description
    Claims
    Drawings
    ISR/WOSA/A17(2)(a)
    National Phase
    Patent Family
    Notices
    Documents

Submit observation
PermaLink
Note: Text based on automatic Optical Character Recognition processes. Please use the PDF version for legal matters

[ EN ]	

CRYPTOCURRENCY SYSTEM USING BODY ACTIVITY DATA

BACKGROUND

[0001] A virtual currency (also known as a digital currency) is a medium of exchange implemented through the Internet generally, not tied to a specific government-backed “flat” (printed) currency such as the U.S. dollar or the Euro, and typically designed to allow instantaneous transactions and borderless transfer of ownership. One example of virtual currency is cryptocurrency, wherein cryptography is used to secure transactions and to control the creation of new units.

[0002] Several cryptocurrencies exist. Among these, the most well known is a blockchain-based cryptocurrency. Most blockchain-based cryptocurrency is decentralized in the sense that it has no central point of control. However, blockchain-based cryptocurrency can also be implemented in a centralized system having a central point of control over the cryptocurrency. Bitcoin is one of the examples of blockchain-based cryptocurrency. It is described in a 2008 article by Satoshi Nakamoto, named“Bitcoin: A peer-to-Peer

Electronic Cash System”.

[0003] A blockchain is a data structure that stores a list of transactions and can be thought of as a distributed electronic ledger that records transactions between source identifier(s) and destination identifier(s). The transactions are bundled into blocks and every block (except for the first block) refers back to or is linked to a prior block in the blockchain. Computer resources (or nodes, etc.) maintain the blockchain and cryptographically validate each new block and the transactions contained in the corresponding block. This validation process includes computationally solving a difficult problem that is also easy to verify and is sometimes called a“proof-of-work”. This process is referred to as“mining”. The mining may be a random process with low probability so that a lot of trial and error is required to solve a computationally difficult problem. Accordingly, the mining may require enormous amounts of computational energy.

[0004] It is with respect to these and other general considerations that the following embodiments have been described. Also, although relatively specific problems have been discussed, it should be understood that the embodiments should not be limited to solving the specific problems identified in the background.

SUMMARY

[0005] Some exemplary embodiments of the present disclosure may use human body activity associated with a task provided to a user as a solution to“mining” challenges in cryptocurrency systems. For example, a brain wave or body heat emitted from the user when the user performs the task provided by an information or service provider, such as viewing advertisement or using certain internet services, can be used in the mining process. Instead of massive computation work required by some conventional cryptocurrency systems, data generated based on the body activity of the user can be a proof-of-work, and therefore, a user can solve the computationally difficult problem unconsciously. Accordingly, certain exemplary embodiments of the present disclosure may reduce computational energy for the mining process as well as make the mining process faster.

[0006] Systems, methods, and hardware aspects of computer readable storage media are provided herein for a cryptocurrency system using human body activity data. According to various embodiments of the present disclosure, a server may provide a task to a device of a user which is communicatively coupled to the server. A sensor communicatively coupled to or comprised in the device of the user may sense body activity of the user. Body activity data may be generated based on the sensed body activity of the user. A cryptocurrency system communicatively coupled to the device of the user may verify whether or not the body activity data satisfies one or more conditions set by the cryptocurrency system, and award cryptocurrency to the user whose body activity data is verified.

[0007] Examples are implemented as a computer process, a computing system, or as an article of manufacture such as a device, computer program product, or computer readable medium. According to one aspect, the computer program product is a computer storage medium readable by a computer system and encoding a computer program comprising instructions for executing a computer process.

[0008] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

[0009] Various embodiments in accordance with the present disclosure will be described with reference to the drawings, in which:

[0010] FIG. 1 illustrates an example environment in which some exemplary embodiments of the present disclosure may be practiced;

[0011] FIG. 2 shows a system diagram of a decentralized cryptocurrency system according

to an exemplary embodiment of the present disclosure;

[0012] FIG. 3 shows a flow diagram of a computer-implemented method according to an exemplary embodiment of the present disclosure;

[0013] FIG. 4 shows a flow diagram of an operation for generating body activity data according to an exemplary embodiment of the present disclosure;

[0014] FIG. 5 shows a flow diagram of an operation for verifying body activity data according to an exemplary embodiment of the present disclosure;

[0015] FIG. 6 illustrates a blockchain and two exemplary blocks of the blockchain according to an exemplary embodiment of the present disclosure;

[0016] FIG. 7 shows a flow diagram of a computer-implemented method using a vector or embedding according to another exemplary embodiment of the present disclosure; and [0017] FIG. 8 illustrates an exemplary block diagram of a computer or processing system in which processes involved in the system, method, and computer program product described herein may be implemented.

[0018] Corresponding numerals and symbols in the different figures generally refer to corresponding parts unless otherwise indicated. The figures are drawn to clearly illustrate the relevant aspects of the embodiments and are not necessarily drawn to scale.

DETAILED DESCRIPTION OF EMBODIMENTS

[0019] In the following detailed description, reference is made to the accompanying drawings which form a part hereof, and in which are shown by way of illustration specific embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that structural, logical and electrical changes may be made without departing from the spirit and scope of the invention. The following detailed description is therefore not to be taken in a limiting sense, and the scope of the invention is defined only by the appended claims and equivalents thereof. Like numbers in the figures refer to like components, which should be apparent from the context of use.

[0020] The term“cryptocurrency” may mean a digital currency in which encryption techniques are used to regulate the generation of units of currency and verify the transfer of funds. Many cryptocurrencies include the use of a blockchain to provide security and prevent fraud as double spending. Some embodiments of the present disclosure may be used in alternate cryptocurrency mechanisms other than a blockchain. The system, method, and computer program products described herein may be applied to both centralized and

decentralized cryptocurrency networks or databases.

[0021] FIG. 1 illustrates an example environment 100 in which some exemplary embodiments of the present disclosure may be practiced. The example environment 100 includes, but is not limited to, at least one of task server 110, communication network 120, user device 130, sensor 140, and cryptocurrency system 150.

[0022] Task server 110 may provide one or more tasks to user device 130 over communication network 120. For example, task server 110 may be at least one of a web server delivering or serving up web pages, an application server handling application operations between users and applications or databases, a cloud server, a database server, a file server, a service server, a game server implementing games or services for a game, and a media server delivering media such as streaming video or audio. The tasks provided by task server 110 will be discussed in more detail below.

[0023] Alternatively, cryptocurrency system 150 may provide one or more tasks to user device 130. For example, in a decentralized cryptocurrency network, the tasks may be proposed to user device 130 by miners (e.g. compute resources or nodes 210 of FIG. 2). In another example, in a centralized cryptocurrency system, a cryptocurrency server may send the tasks to user device 130.

[0024] Communication network 120 may include any wired or wireless connection, the internet, or any other form of communication. Although one network 120 is identified in FIG. 1, communication network 120 may include any number of different communication networks between any of the server, devices, resource and system shown in FIGS. 1 and 2 and/or other servers, devices, resources and systems described herein. Communication network 120 may enable communication between various computing resources or devices, servers, and systems. Various implementations of communication network 120 may employ different types of networks, for example, but not limited to, computer networks, telecommunications networks (e.g., cellular), mobile wireless data networks, and any combination of these and/or other networks.

[0025] User device 130 may include any device capable of processing and storing data/information and communicating over communication network 120. For example, user device 130 may include personal computers, servers, cell phones, tablets, laptops, smart devices (e.g. smart watches or smart televisions). An exemplary embodiment of user device 130 is illustrated in FIG. 6.

[0026] Sensor 140 may be configured to sense the body activity of user 145. As illustrated in FIG. 1, sensor 140 may be a separate component from user device 130 and be operably and/or communicatively connected to user device 130. Alternatively, sensor 140 may be included and integrated in user device 130. For example, user device 130 may be a wearable device having sensor 140 therein. The sensor 140 may transmit information/data to user device 130. Sensor 140 may include, for example, but not limited to, functional magnetic resonance imaging (fMRI) scanners or sensors, electroencephalography (EEG) sensors, near infrared spectroscopy (NIRS) sensors, heart rate monitors, thermal sensors, optical sensors, radio frequency (RF) sensors, ultrasonic sensors, cameras, or any other sensor or scanner that can measure or sense body activity or scan human body. For instance, the fMRI may measure body activity by detecting changes associated with blood flow. The fMRI may use a magnetic field and radio waves to create detailed images of the body (e.g. blood flow in the brain to detect areas of activity). The material

(http://news.berkely.edu/20l l/09/22/brain-movies/) shows one example of how the fMRI can measure brain activity associated with visual information and generate image data.

[0027] Cryptocurrency system 150 may include one or more processors for processing commands and one or more memories storing information in one or more cryptocurrency data structures. In some embodiments, cryptocurrency system 150 may be a centralized cryptocurrency system or network, for example, but not limited to, a server which may be privately run by a third party entity or the same entity that is running the task server 110. In other embodiments, cryptocurrency system 150 may be a publically accessible network system (e.g., a distributed decentralized computing system).

[0028] For example, cryptocurrency system 150 may be a decentralized network 200, such as a decentralized blockchain network, including one or more compute resources 210, as shown, for example, in FIG. 2. In the embodiment of FIG. 2, there may be no central authority controlling cryptocurrency network 200. The data stored on blockchain network 200, i.e., the public ledger, may not be stored at a central location in its entirety. Blockchain network 200 may include a plurality of processors for processing commands and a plurality of memories storing information in one or more blockchain data structures. Blockchain network 200 may maintain one or more blockchains of continuously growing lists of data blocks, where each data block refers to previous blocks on its list. The requirement for each block to refer to all previous blocks in the blockchain, yields a chain of blocks that is hardened against tampering and revision, such that the information stored in the blockchain is immutable.

[0029] Compute resources 210 may include any device, computer, system or otherwise that has joined blockchain network 200 and forms a node in blockchain network 200. Compute

resources 210 may include, for example, but not limited to, personal computers, servers, cell phones, tablets, laptops, smart devices (e.g. smart watches or smart televisions), or any other device capable of storing information and communicating over communication network 120. In some embodiments, compute resources 210 may be unaffiliated with or unknown to each other where, for example, compute resources 210 remain anonymous. Each compute resource 210 may include memory 220 that stores a copy of at least a portion of public ledger 230 of blockchain network 200. Compute resources 210 may also execute one or more programs to perform various functions associated with maintaining blockchain network 200 including, for example, updating public ledger 230, generating new blocks, or any other similar function.

[0030] For illustration purposes, FIG. 1 illustrates user device 130 as not included in blockchain network 200. However, user device 130 may be part of blockchain network 200 and be implemented as one of the compute resources 210 in FIG. 2.

[0031] Public ledger 230 may store any transactions performed over blockchain network 200 including but not limited to, for example, any transaction related to and occurring on blockchain network 200. Because each compute resource 210 stores a copy of at least a portion of the public ledger 230 of blockchain network 200, public ledger 230 may be independently verified for accuracy at any time by comparing the stored copies of multiple compute resources 210.

[0032] Communication between compute resources 210 may occur via communication network 120. Communication network 120 of FIG. 2 may be the same network as, or be a different network from, communication 120 of FIG. 1. In some embodiments, each compute resource 210 may communicate directly with each other compute resource 210. In some embodiments, some compute resources 210 may not be able to communicate directly with each other. For example, they are not connected to the same communications network 120. In this case, communications related to blockchain network 200 between the compute resources 210 may occur by using one or more of the remaining compute resources 210 as an intermediary. In some embodiments, one or more of compute resources 210 may not maintain a continuous connection to blockchain network 200 at all times. For example, a compute resource 210 may only be connected to blockchain network 200 during a certain period of time each day or may only be connected to blockchain network 200 intermittently throughout the day. Due to the decentralized nature of blockchain network 200, such an intermittent connection by one or more compute resources 210 does not affect the overall operation of blockchain network 200 since copies of public ledger 230 are stored on multiple compute resources 210. Once the disconnected compute resource 210 reconnects to blockchain network 200, the disconnected compute resource 210 may receive updated copies of the public ledger 210 from one or more of the compute resources 210 that have been connected to blockchain network 200.

[0033] FIG. 3 shows a flow diagram of a computer-implemented method according to an exemplary embodiment of the present disclosure.

[0034] Method 300 begins at operation 310 illustrated in FIG. 3, where task server 110 provides one or more tasks to device 130 of user 145 over communication network 120. The tasks include, for example, but not limited to, watching or listening information (e g. advertisement) for a certain time, using services (e.g. search engine, chat bot, e-mail, social media/networking service and any internet or web service), uploading or sending information/data to a website, a server or a network (e.g. content sharing website, and cloud network or server), or any other information or service which may produce effects on users. In the blockchain, the task(s) may be included as a transaction in the public ledger 230.

[0035] Furthermore, the task(s) provided by task server 110 can include solving a test for distinguishing human from machine input so that humans but not computers are able to pass it, such as, Computer Automated Program to Tell Computers and Flumans Apart (CAPTCHA) and reCAPTCHA which is a CAPTCHA-like system designed to establish that a computer user is human. The task may require user 145 to solve a verification challenge, for example, but not limited to, an image based challenge including instructions prompting user 145 to solve the challenge through interaction with one or more images.

[0036] At operation 320, when or after user 145 performs the task(s) provided by task server 110, sensor 140 may sense the body activity of user 145 that is a body response related to the task provided by task server 110, and then transmit the sensed body activity of user 145 to user device 130. The body activity may include, for example, but not limited to, radiation emitted from human body, brain activities, body fluid flow (e.g. blood flow), organ activity or movement, body movement, and any other activities that can be sensed and represented by images, waves, signals, texts, numbers, degrees, or any other form of information or data. Examples of body radiation emitted from human body may include radiant heat of the body, pulse rate, or brain wave. Brain waves may comprise, for example, but not limited to, (i) gamma waves, involved in learning or memory tasks, (ii) beta waves, involved in logical thinking and/or conscious thought, (iii) alpha waves, which may be related to subconscious thoughts, (iv) theta waves, which may be related to thoughts involving deep and raw emotions, (v) delta waves, which may be involved in sleep or deep relaxation, or (vi)

electroencephalogram (EEG), which may be measurement used to evaluate the electrical activity in the brain, such as deep concentration. Examples of the body movement may include eye movement, facial movement or any other muscular movements. Furthermore, brain activity can be sensed using the fMRI. The fMRI measures brain activity by detecting changes associated with blood flow. This technique relies on the fact that cerebral blood flow and neuronal activation are coupled. When an area of the brain is in use, blood flow to that region also increases.

[0037] At operation 330, user device 130 generates body activity data based on the body activity sensed by sensor 140. Operation 330 may be part of a mining process which is a process for solving a computationally difficult problem. One exemplary embodiment of operation 330 is shown in FIG. 4. As shown in FIG. 4, operation 330 may comprise operations 410 and 420.

[0038] At operation 410, the body activity sensed by sensor 140 may be codified in symbolic forms, such as letter(s), numeral(s), symbol(s), and a string comprising sequence of characters. In one example, the body activity can be codified by extracting one or more values from the sensed body activity, such as minimum and/or maximum amplitude(s) or frequency(ies) of a body activity signal (e g. brain waves). In another example, user device 130 may window and sample the sensed body activity over time and calculate the average of the sampled values. In still another example, user device 130 may generate raw data of the body activity. In still another example, user device 130 may filter a raw signal of the body activity using one or more filters to apply the filtered body activity signal to an audio hash function or algorithm at operation 420. Alternatively, any statistic value(s) associated with human body activity can be codified from the body activity sensed by sensor 140.

[0039] At operation 420, the codified body activity may be converted into an encrypted output by using an encryption algorithm, such as a hash algorithm or function. For example, hash functions include functions that map an initial input data set of an output data set. Generally, the hash function may be any function that can be used to map data of arbitrary size to data of fixed size. The hash function allows one to easily verify that some input data maps to a given hash value, but if the input data is unknown, it is deliberately difficult to reconstruct it (or any equivalent alternatives) by knowing the stored hash value. The hash algorithm or function may be included in the mining software or program of the cryptocurrency system or database.

[0040] For example, operation 420 may use audio hash function, where the histogram of frequencies of the codified body activity are summed up, or bit manipulation, such as XOR function of each histogram bucket with the next or a modulus of a prime number, is performed on the codified body activity.

[0041] In some embodiments, an analog hash function where the body activities themselves are hashes can be used. For example, waves or signals sensed by sensor 140, for example, but not limited to, alpha, beta, delta or gamma waves from the EEG sensor, may be transformed to a histogram using a transforming algorithm or formula, such as Fast Fourier Transform (FFT) or any other algorithm or formula that can convolve, add or multiply waves or signals to produce a histogram. The hash may be the histogram itself. For example, the hash may be the output of the FFT where each component is a frequency band and the value is counts corresponding to each frequency band. In another example, the desired properties may be that the first two frequency histograms are as close to zero as possible, for instance, provided some statistical guarantee exists that this cannot happen easily.

[0042] However, operation 420 is optional. In certain embodiments, user device 130, without encrypting or hashing the codified body activity, may transmit the codified body activity generated at operation 410 to cryptocurrency system 150.

[0043] Although FIG. 3 illustrates that operation 330, including operation 410 and 420, is processed by user device 130, at least one of operations 410 and 420 can be processed by another device(s), server, resource or system, such as task server 110, cryptocurrency system 150 or any other server. For example, the user device 130 may generate raw data of the sensed body activity, transmit it to cryptocurrency system 150, task server 110 or any other server, and then cryptocurrency system 150, task server 110 or any other server may codify or hash the raw data of the sensed body activity.

[0044] Referring back to FIG. 3, at operation 340, cryptocurrency system 150 verifies if the body activity data of user 145 generated by user device 130 satisfies one or more conditions set by an algorithm of cryptocurrency system 150. The conditions may be set by simulating human body activity across all of body activities that can constitute hashes. Machine learning algorithms may be used to simulate body activities and set the conditions for valid body activities, for example, but not limited to, using generative adversarial networks.

[0045] In some embodiments, cryptocurrency system 150 verifies whether the body activity data of user 145 (e.g. the code of the body activity generated at operation 410 or the hash of the body activity generated at operation 420) may represent that the body activity of user 145 is within a target range. The target range may be determined using the amount of cognitive effort that user 145 requires to perform the task provided by task server 110. For example, to verify if the hash of the body activity of user 145, cryptocurrency system 150 may determine, for example, but not limited to, (i) whether the hash of the body activity of user 145 has a specific certain pattern, repeated patterns, a mathematical properties or the number of leading numbers, characters or strings (e.g. leading zeroes) set by cryptocurrency system 150, or (ii) whether the hash of the body activity of user 145 is less than a current target value. Examples of the numerical patterns set by cryptocurrency system 150 may be a pattern that first certain digits of the hash form a prime number, or a pattern that a number that is calculated by applying first certain digits of the hash to a preset formula forms a prime number (For example, a number calculated by adding or subtracting a predetermined number or a number set by cryptocurrency system 150 to the first four digits of the hashing forms a prime number). The repeating number patterns may include a repeating number (e.g. leading zeros, ones in the middle of the hash, twos in the last four digits of the hash, and any repeating numbers included in the hash) and a repeating number sequence (e.g. leading repeating digit pairs, such as“121212”, or triplets“123123”). If the hash of the body activity of user 145 has the desirable pattern(s) or is within the target range, then the proof of work or proof of stake is considered solved, and that hash can be a new block. The target range or value may be changed periodically to maintain a preselected level of difficulty, although it is not required. For example, the target value may be inversely proportional to the difficulty. By varying the difficulty, a roughly constant rate of block generation may be kept.

[0046] The target range of valid body activity may be set using statistical data so that normal body activity, activity that can easily happen, or faking body activity cannot be validated. For example, the target range of valid body activity may be selected from a range that human miners cannot fake their own body activity to satisfy the target range to prove and validate the proof-of-work.

[0047] Additionally, the verification at operation 340 may include filtering out invalid tasks, malformed data (syntax errors) or data sent from an unauthorized user or generated by a machine learning system. For example, cryptocurrency system 150 may receive, from user device 130, data of the body activity generated before the hash algorithm is applied, rehash that data, and then compare the rehashed data with the hash received from user device 130 to check whether the body activity data is generated based on human, not random computer generated data. Voxel(s) of the image of the fMRI may be an example of the data of the body activity generated before the hash algorithm is applied.

[0048] One exemplary embodiment of operation 340 is shown in FIG. 5. At operation 510, cryptocurrency system 150 may check whether the hash of the body activity, received from

user device 130, is within the target range set by cryptocurrency system 150, or comprises a desirable pattern set by cryptocurrency system 150. If the hash of the body activity is within the target range or has a desirable pattern set by cryptocurrency system 150, cryptocurrency system 150 rehashes data of the body activity, generated before the hash algorithm is applied and transmitted with the hash of the body activity from user device 130 (Operation 520), and then compare the rehashed data with the hash of the body activity, received from user device 130 (Operation 530). If the rehashed data is identical to the hash of the body activity, received from user device 130, cryptocurrency system 150 proceeds to operation 350. However, if determining in operation 510 that the hash of the body activity data is out of the target range or does not include the desirable pattern set by cryptocurrency system 150 or if determining in operation 530 that the rehashed data does not match the hash of the body activity, operation 310 or 320 may be proceeded.

[0049] At operation 350, when the body activity data transmitted from user device 130 satisfies one or more conditions set by cryptocurrency system 150, cryptocurrency system 150 awards cryptocurrency to user 145. For example, cryptocurrency system 150 awards to user 145 an amount of cryptocurrency corresponding to the task accomplished by user 145. Additionally, cryptocurrency system 150 may award cryptocurrency to an owner or operator of task server 110 as a reward for providing services, such as, search engines, chatbots, applications or websites, offering users access for free to paid contents (e.g. video and audio streaming or electric books), or sharing information or data with users.

[0050] For example, in the blockchain cryptocurrency system, at operation 340, at least one of compute resources 210 of FIG. 2 verifies if the hash of the body activity data of user 145 is valid. At operation 350, when the hash of the body activity data of user 145 is validated at operation 340, the compute resource 210 of FIG. 2 can add a new block to the blockchain. The new block may contain the number of cryptocurrency units assigned to the user’s address. The new blockchain with the additional added block is broadcasted around the cryptocurrency network 150. The compute resource 210, which performed operations 340 and 350, may be also rewarded with transaction fees and/or cryptocurrency.

[0051] FIG. 5 depicts a blockchain 500 and two exemplary blocks 510, 520 of blockchain 500 according to exemplary embodiments of the present disclosure. Typically a “blockchain” is understood as being a data structure comprising a series of blocks, where each block includes data corresponding to one or more transactions, hashed together with linking data, such as the hash of an immediately preceding block. In the embodiment of the present disclosure, the transaction may be the task performed by user 145. The chain can

then be used to create a ledger, which is typically an append-only database. Once data is entered into a block of the chain, the entry is essentially irrefutable, since any tampering with the data would be reflected in the chained hash calculations and is thus easily detected.

[0052] The blockchain 500 may represent the publicly distributable transactions ledger, such as ledger 230 of FIG. 2, and may include a plurality of blocks. Each block, such as block 510 and block 520 may include data regarding recent transactions. For example, the task performed by user 145 and the number of cryptocurrency units awarded to user 145, and/or contents linking data that links one block 520 to a previous block 510, and proof-of-work data, for example, the validated hash of the body activity, that ensures that the state of the blockchain 500 is valid and is endorsed/verified by a majority of the record keeping system. Exemplary embodiments of block 520 of blockchain 500 may include a current hash, a previous hash of previous block 510, transaction. The previous hash is a hash from the immediately preceding block, which ensures that each block is immutably tied to previous block. The hash of previous block 510 may be included in block 520, thereby linking block 520 to previous block 510.

[0053] Transaction information cannot be modified without at least one of compute resources 210 noticing, thus, the blockchain 500 can be trusted to verify transactions occurring on blockchain 500.

[0054] In some embodiments, vectors or embeddings may be used for body activity data. FIG. 7 shows a flow diagram of an exemplary embodiment of a computer-implemented method using vectors (or embedding). As described in detail above with respect to FIG. 3, task server 110 or cryptocurrency system/network 150, such as a central cryptocurrency server or compute resource (or node) 210, may perform operation 310 where one or more tasks are proposed to user device 130 over communication network 120, and sensor 140 may perform operation 320 where sensor 140 senses or measures the body activity of user 145. Sensor 140 (or user device 130) may generate data of the body activity in the form of images, waves, signals, numbers, characters, strings or any other form that can represent the body activity.

[0055] At operation 710, user device 130 produces one or more vectors (or embeddings), such as an array of floating point numbers, from the data of the body activity generated by sensor 140 (or user device 130). An algorithm stored in user device 130, or any device, server, system or network communicatively connected to user device 130 over communication network 120, may transform the data of the body activity generated by sensor 140 (or user device 130) into one or more vectors. For example, the brain image

generated by the fMRI scanner may be fed into a computer vision machine learning algorithm, for example, but limited to, a convolution neural network, and the machine learning algorithm may generate one or more vectors from one or more voxels of the brain image. In some embodiments, one single vector may be generated at operation 710. In other embodiments, a series of vectors may be produced by sampling over time when user 145 is performing the task(s). The data of the body activity (e.g. voxels of a brain image) and/or the vectors (or embeddings) may generate a“proof of work” and be transmitted to cryptocurrency system/network 150.

[0056] In addition, the vectors may optionally include one or more vectors related to the task(s), for example, but not limited to, search terms that user 145 used or identified s) of advertisement that user 145 viewed.

[0057] At operation 720, the vector(s) generated at operation 710 may be converted into an encrypted output by using an encryption algorithm, such as a hashing algorithm or function, as explained above with respect to operation 420 of FIG. 4. For example, the vector(s) can be hashed as bytes with the hashing algorithm, such as Secure Hash Algorithm (SHA)-l, SHA-256, SHA-384, SHA-512, and Message Digest (MD)-5.

[0058] However, operation 720 is optional. In some embodiments, user device 130 can transmit the vector(s) of the body activity produced at operation 710 to cryptocurrency system 150 without encrypting or hashing them.

[0059] At operation 730, cryptocurrency system 150 receives, from user device 130, the data of the body activity of user 145 (e.g. voxels of a brain image) and/or the vector(s) (or the hash) of the body activity of user 145.

[0060] At operation 740, cryptocurrency system 150 checks if the vector(s) received from user device 130 have one or more mathematical properties set by cryptocurrency system/network 150. For example, cryptocurrency system 150 may determine whether the vector(s) of the body activity have similarity (or relationship) with a legitimate vector (or a baseline vector) set by an algorithm of cryptocurrency system 150. The similarity may be measured or calculated using, for example, but not limited to, a cosine similarity, the Euclidean distance, the Manhattan distance, the Minkowski distance, and the Jaccard similarity. The legitimate vector may be set based on the assumption that the vectors of body activities of people who are performing the same task have a certain degree of similarity. Cryptocurrency system 150, such as a central cryptocurrency server/network or compute resource (or node) 210 of FIG. 2, can decide the legitimate vector and similarity. For example, miners like compute resources (or nodes) 210 of FIG. 2 can share their proof of work including, for example, but not limited to, vectors of body activities, with cryptocurrency network 150, and decide the legitimate vector and similarity by calculating the average of the proof of work (e g. a centroid or weighted average of the vectors and a standard deviation).

[0061] If the vector(s) received from user device 130 have the mathematical property(ies) set by cryptocurrency system/network 150, cryptocurrency system/network 150 rehashes the data of the body activity, transmitted from user device 130 (Operation 750), and then compares the rehashed output with the vectors (or the hash) received from user device 130 (Operation 760). For example, computer resource (or node) 210 of FIG. 2 may rehash the fMRI voxels, transmitted from user device 130, to a vector, and then compare the rehashed vector with the vector received from user device 130 to check whether the body activity data is generated based on human, not random computer generated data. If determining in operation 740 that the vector(s) received user device 130 do not satisfy the mathematical property(ies) set by cryptocurrency system/network 150 or if determining in operation 760 that the rehashed output does not match the vector(s) (or the hash) received from user device 130, operation 310 or 320 may be proceeded.

[0062] If the rehashed output is identical to the vector(s) (or the hash) received from user device 130, cryptocurrency system/network 150 awards cryptocurrency to user 145 as described in detail above with respect to operation 350. For example, in the blockchain cryptocurrency system, a miner, such as one of compute resources (or nodes) 210 of FIG. 2, which performed the validation of the body activity data, may add a new block, which includes the data of the body activity, the vector(s) (or the hash) and/or the number of cryptocurrency units assigned to the user’s address, to the blockchain, broadcast a new blockchain with the new block around cryptocurrency network 150, and may be rewarded with transaction fees and/or cryptocurrency.

[0063] FIG. 8 illustrates a schematic of an example computer or processing system that may implement any of the systems, methods, and computer program products, such as task server 110, user device 130, cryptocurrency system 150 and compute resources 210, described herein in one embodiment of the present disclosure. The computer system is only one example of a suitable processing system and is not intended to suggest any limitation as to the scope of use or functionality of embodiments of the methodology described herein. The processing system shown may be operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with the processing system shown in FIG. 8 may include, but are not limited to, personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments that include any of the above systems or devices, and the like.

[0064] The computer system may be described in the general context of computer system executable instructions, such as program modules, being executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, and so on that perform particular tasks or implement particular abstract data types. The computer system may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media including memory storage devices.

[0065] The components of computer system 800 may include, but are not limited to, one or more processors or processing units 810, system memory 820, and bus 830 that couples various system components including system memory 820 to processor 810. Processor 810 may include software module 815 that performs the methods described herein. The module 815 may be programmed into the integrated circuits of processor 810, or loaded from memory 820, storage device 840, or network 850 or combinations thereof.

[0066] Bus 830 may represent one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnects (PCI) bus.

[0067] Computer system 800 may include a variety of computer system readable media. Such media may be any available media that is accessible by computer system, and it may include both volatile and non-volatile media, removable and non-removable media.

[0068] System memory 820 can include computer system readable media in the form of volatile memory, such as random access memory (RAM) and/or cache memory or others. Computer system 800 may further include other removable/non-removable volatile/non-

volatile computer system storage media. By way of example only, storage device 840 can be provided for reading from and writing to a non-removable, non-volatile magnetic media (e.g., a“hard drive”). Although not shown, a magnetic disk drive for reading from and writing to a removable, non-volatile magnetic disk (e g., a“floppy disk”), and an optical disk drive for reading from or writing to a removable, non-volatile optical disk such as a CD-ROM, DVD-ROM or other optical media can be provided. In such instances, each can be connected to bus 630 by one or more data media interfaces.

[0069] Computer system 800 may also communicate with one or more external devices 860 such as a keyboard, a pointing device, a display 870, etc; one or more devices that enable a user to interact with computer system; and/or any devices (e.g., network card, modem, etc.) that enable computer system to communicate with one or more other computing devices. Such communication can occur via Input/Output (I/O) interfaces 880.

[0070] Still yet, computer system 800 can communicate with one or more networks 850 such as a local area network (LAN), a general wide area network (WAN), and/or a public network (e.g., the Internet) via network adapter 855. As depicted, network adapter 855 communicates with the other components of computer system via bus 830. It should be understood that although not shown, other hardware and/or software components could be used in conjunction with computer system. Examples include, but are not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems, etc.

[0071] As will be appreciated by one skilled in the art, aspects of the present disclosure may be embodied as a system, method or computer program product. Accordingly, aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a“circuit,”“module” or“system.” Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.

[0072] Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include

the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.

[0073] A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.

[0074] Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

[0075] Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the“C” programming language or similar programming languages, a scripting language such as Perl, VBS or similar languages, and/or functional languages such as Lisp and ML and logic-oriented languages such as Prolog. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).

[0076] Aspects of the present disclosure are described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to some embodiments of the present disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

[0077] These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.

[0078] The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

[0079] The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

[0080] The computer program product may comprise all the respective features enabling the implementation of the methodology described herein, and which - when loaded in a

computer system - is able to carry out the methods. Computer program, software program, program, or software, in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form.

[0081] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”,“an” and“the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms“comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.

[0082] The corresponding structures, materials, acts, and equivalents of all means or step plus function elements, if any, in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.

[0083] Various aspects of the present disclosure may be embodied as a program, software, or computer instructions embodied in a computer or machine usable or readable medium, which causes the computer or machine to perform the steps of the method when executed on the computer, processor, and/or machine. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform various functionalities and methods described in the present disclosure is also provided.

[0084] The system and method of the present disclosure may be implemented and run on a general-purpose computer or special-purpose computer system. The terms“computer

system” and“computer network” as may be used in the present application may include a variety of combinations of fixed and/or portable computer hardware, software, peripherals, and storage devices. The computer system may include a plurality of individual components that are networked or otherwise linked to perform collaboratively, or may include one or more stand-alone components. The hardware and software components of the computer system of the present application may include and may be included within fixed and portable devices such as desktop, laptop, and/or server. A module may be a component of a device, software, program, or system that implements some“functionality”, which can be embodied as software, hardware, firmware, electronic circuitry, or etc.

[0085] Although specific embodiments of the present invention have been described, it will be understood by those of skill in the art that there are other embodiments that are equivalent to the described embodiments. Accordingly, it is to be understood that the invention is not to be limited by the specific illustrated embodiments, but only by the scope of the appended claims.

CONCEPTS

[0086] Concept 1. A cryptocurrency system, comprising: one or more processors; and memory storing executable instructions that, if executed by the one or more processors, configure the cryptocurrency system to: communicate with a device of a user; receive body activity data which is generated based on body activity of the user, wherein the body activity is sensed by a sensor communicatively coupled to or comprised in the device of the user; verify if the body activity data of the user satisfies one or more conditions set by the cryptocurrency system; and award cryptocurrency to the user whose body activity data is verified.

[0087] Concept 2. The system of any preceding and/or succeeding Concept(s), wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.

[0088] Concept 3. The system of any preceding and/or succeeding Concept(s), wherein the one or more conditions are set based on an amount of human body activity associated with a task which is provided to the device of the user.

[0089] Concept 4. The system of any preceding and/or succeeding Concept, wherein the one or more conditions comprise a condition that the body activity data represents that the user performs a task provided to the device of the user.

[0090] Concept 5. The system of any preceding and/or succeeding Concept(s), wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output, and the generated body activity data comprises a hash of the sensed body activity of the user.

[0091] Concept 6. The system of any preceding and/or succeeding Concept(s), wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.

[0092] Concept 7. The system of any preceding and/or succeeding Concept(s), wherein the one or more conditions include a condition that the hash of the body activity includes repeated patterns or a mathematical property set by the cryptocurrency system.

[0093] Concept 8. The system of any preceding and/or succeeding Concept(s), wherein the cryptocurrency system awards the cryptocurrency to the user by generating a block for the awarded cryptocurrency and adding the block to a blockchain stored in the cryptocurrency system.

[0094] Concept 9. The system of any preceding and/or succeeding Concept(s), wherein the block comprises data comprising: a task provided to the device of the user; information on the awarded cryptocurrency; a hash associated with the body activity; and a hash of a previous block.

[0095] Concept 10. The system of any preceding and/or succeeding Concept(s), wherein the task provided to the device of the user comprises a test for verifying if the user of the device is human or not.

[0096] Concept 11. The system of any preceding and/or succeeding Concept(s), wherein the cryptocurrency system is configured to: receive, from the device of the user, data of the body activity generated before the hash algorithm is applied and the hash of the body activity; rehash the data of the body activity; and compare the rehashed data with the hash of the body activity received from the device of the user to verify the body activity data.

[0097] Concept 12. A computer-implemented method, comprising: receiving, by a device of a user coupled to a network, a task over the network; sensing, by a sensor communicatively coupled to or comprised in the device of the user, body activity of the user; generating body activity data based on the sensed body activity of the user; verifying, by a cryptocurrency system communicatively coupled to the device of the user, if the body activity data satisfies one or more conditions set by the cryptocurrency system; and awarding, by the cryptocurrency system, cryptocurrency to the user whose body activity data is verified.

[0098] Concept 13. The method of any preceding and/or succeeding Concept(s), wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.

[0099] Concept 14. The method of any preceding and/or succeeding Concept(s), wherein the one or more conditions are set by the cryptocurrency system based on an amount of human body activity associated with the task provided to the device of the user.

[00100] Concept 15. The method of any preceding and/or succeeding Concept(s), wherein the verifying if the body activity data satisfies the one or more conditions comprises determining if the body activity data represents that the user performs the task provided to the device of the user.

[00101] Concept 16. The method of any preceding and/or succeeding Concept(s), wherein the verifying if the body activity data satisfies the one or more conditions comprises determining if the body activity data represents more than an amount of the body activity set by the cryptocurrency system.

[00102] Concept 17. The method of any preceding and/or succeeding Concept(s), wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output, and the generated body activity data comprises a hash of the sensed body activity of the user.

[00103] Concept 18. The method of any preceding and/or succeeding Concept(s), wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.

[00104] Concept 19. The method of any preceding and/or succeeding Concept(s), wherein the verifying if the body activity data satisfies the one or more conditions set by the cryptocurrency system comprises determining if the hash of the sensed body activity includes repeated patterns or a mathematical property set by the cryptocurrency system.

[00105] Concept 20. The method of any preceding and/or succeeding Concept(s), wherein the awarding the cryptocurrency comprises generating, by the cryptocurrency system, a block for the awarded cryptocurrency and adding the generated block to a blockchain stored in the cryptocurrency system.

[00106] Concept 21. The method of any preceding and/or succeeding Concept(s), wherein the block comprises data comprising: the task provided to the device of the user; information on the awarded cryptocurrency; the generated hash associated with the body activity; and a hash of a previous block.

[00107] Concept 22. The method of any preceding and/or succeeding Concept(s), wherein the task comprises a test for verifying if the user of the device is human or not.

[00108] Concept 23. The method of any preceding and/or succeeding Concept(s),

further comprising: receiving, by the cryptocurrency system, from the device of the user, data of the body activity generated before the hash algorithm is applied and the hash of the body activity; rehashing, by the cryptocurrency system, the data of the body activity; and comparing, by the cryptocurrency system, the rehashed data with the hash of the body activity received from the device of the user to verify the body activity data.

[00109] Concept 24. A device, comprising: one or more processors communicatively coupled to a sensor, the sensor configured to sense body activity of a user; and memory storing executable instructions that, if executed by the one or more processors, configure the device to: receive a task; generate body activity data based on the sensed body activity of the user, wherein the sensed body activity is associated with the received task; and transmit the generated body activity data to a system or network which verifies the body activity data to award cryptocurrency.

[00110] Concept 25. The system of any preceding and/or succeeding Concept(s), wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.

[00111] Concept 26. The system of any preceding and/or succeeding Concept(s), wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output.

[00112] Concept 27. The system of any preceding and/or succeeding Concept(s), wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.

[00113] Concept 28. The system of any preceding and/or succeeding Concept(s), wherein the body activity data is generated by producing one or more vectors from the body activity sensed by the sensor and encrypting the one or more vectors.
# -

https://patentscope.wipo.int/search/en/detail.jsf?docId=WO2020060606&tab=PCTCLAIMS


Feedback
Settings
1. WO2020060606 - CRYPTOCURRENCY SYSTEM USING BODY ACTIVITY DATA

    PCT Biblio. Data
    Description
    Claims
    Drawings
    ISR/WOSA/A17(2)(a)
    National Phase
    Patent Family
    Notices
    Documents

Submit observation
PermaLink
Note: Text based on automatic Optical Character Recognition processes. Please use the PDF version for legal matters

[ EN ]

CLAIMS

1. A cryptocurrency system, comprising:

one or more processors; and

memory storing executable instructions that, if executed by the one or more processors, configure the cryptocurrency system to:

communicate with a device of a user;

receive body activity data which is generated based on body activity of the user, wherein the body activity is sensed by a sensor communicatively coupled to or comprised in the device of the user;

verify if the body activity data of the user satisfies one or more conditions set by the cryptocurrency system; and

award cryptocurrency to the user whose body activity data is verified.

2. The system of claim 1, wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.

3. The system of claim 1, wherein the one or more conditions are set based on an amount of human body activity associated with a task which is provided to the device of the user.

4. The system of one of claims 1-3, wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output, and the generated body activity data comprises a hash of the sensed body activity of the user.

5. The system of one of claims 1-3, wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.

6. The system of one of claims 1-3, wherein the cryptocurrency system awards the cryptocurrency to the user by generating a block for the awarded cryptocurrency and adding the block to a blockchain stored in the cryptocurrency system.

7. The system of claim 6, wherein the block comprises data comprising:

a task provided to the device of the user;

information on the awarded cryptocurrency;

a hash associated with the body activity; and

a hash of a previous block.

8. The system of claim 3, wherein the task provided to the device of the user comprises a test for verifying if the user of the device is human or not.

9. The system of claim 4, wherein the cryptocurrency system is configured to:

receive, from the device of the user, data of the body activity generated before the hash algorithm is applied and the hash of the body activity;

rehash the data of the body activity; and

compare the rehashed data with the hash of the body activity received from the device of the user to verify the body activity data.

10. A computer-implemented method, comprising:

receiving, by a device of a user coupled to a network, a task over the network; sensing, by a sensor communicatively coupled to or comprised in the device of the user, body activity of the user;

generating body activity data based on the sensed body activity of the user;

verifying, by a cryptocurrency system communicatively coupled to the device of the user, if the body activity data satisfies one or more conditions set by the

cryptocurrency system; and

awarding, by the cryptocurrency system, cryptocurrency to the user whose body activity data is verified.

11. The method of claim 10, wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.

12. The method of claim 10, wherein the one or more conditions are set by the cryptocurrency system based on an amount of human body activity associated with the task provided to the device of the user.

13. The method of one of claims 10-12, wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output, and the generated body activity data comprises a hash of the sensed body activity of the user.

14. The method of one of claims 10-12, wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.

15. The method of claim 13, further comprising:

receiving, by the cryptocurrency system, from the device of the user, data of the body activity generated before the hash algorithm is applied and the hash of the body activity;

rehashing, by the cryptocurrency system, the data of the body activity; and comparing, by the cryptocurrency system, the rehashed data with the hash of the body activity received from the device of the user to verify the body activity data.
# -
! 
! https://patentscope.wipo.int/search/en/detail.jsf?docId=WO2020060606&tab=DRAWINGS


Feedback
Settings
1. WO2020060606 - CRYPTOCURRENCY SYSTEM USING BODY ACTIVITY DATA

    PCT Biblio. Data
    Description
    Claims
    Drawings
    ISR/WOSA/A17(2)(a)
    National Phase
    Patent Family
    Notices
    Documents

Submit observation
PermaLink
Report Type:
Report Language:
Disclaimer The image version (PDF) available on PATENTSCOPE is the official version. This online html version is provided to assist users. Despite the great care taken in its compilation to ensure a precise and accurate representation of the data appearing on the printed document/images, errors and/or omissions cannot be excluded due to the data transmittal, conversion and inherent limitations of the (optional) machine translation processes used. Hyperlinks followed by this symbol , are to external resources that are not controlled by WIPO. WIPO disclaims all liability regarding the above points.
Part 1:  1  2  3  4  5  6          Part 2:  A  B  C  D  E 
PATENT COOPERATION TREATY
PCT
INTERNATIONAL SEARCH REPORT
( PCT Article 18 and Rules 43 and 44)
International application No. 	Applicant's or agent's file reference
PCT/US2019/038084 	405046WOPCT
International filing date (day/month/year) 	(Earliest) Priority Date (day/month/year)
20 June 2019 	21 September 2018
Applicant 	
MICROSOFT TECHNOLOGY LICENSING, LLC
FOR FURTHER ACTION: See Form PCT/ISA/220 as well as, where applicable, item 5 below.
PART 1
PCT/US2019/038084
This international search report has been prepared by this International Searching Authority and is transmitted to the applicant according to Article 18. A copy is being transmitted to the International Bureau.
It is also accompanied by a copy of each prior art document cited in this report.
1. 	Basis of the report
a. 	With regard to the language, the international search was carried out on the basis of:
	the international application in the language in which it was filed.
	a translation of the international application into                                          which is the language of a translation furnished for the purposes of international search (Rules 12.3(a) and 23.1(b)).
b. 	
	This international search report has been established taking into account the rectification of an obvious mistake authorized by or notified to this Authority under Rule 91 (Rule 43.6bis(a)).
c. 	
		With regard to any nucleotide and/or amino acid sequence disclosed in the international application, the international search was carried out on the basis of a sequence listing:
2. 	Certain claims were found unsearchable
3. 	Unity of invention is lacking
4. 	Title of the invention
	The text is approved as submitted by the applicant.
	The text has been established by this Authority to read as follows:
5. 	Abstract
	The text is approved as submitted by the applicant.
	The text has been established, according to Rule 38.2, by this Authority as it appears in Box No. IV. The applicant may, within one month from the date of mailing of this international search report, submit comments to this Authority.
6. 	Drawings
a.
	The figure of the drawings to be published with the abstract is Figure No.     1    
		as suggested by the applicant.
		as selected by this Authority, because the applicant failed to suggest a figure.
		as selected by this Authority, because this figure better characterizes the invention.
b.
	
none of the figures is to be published with the abstract.
PART 2
PCT/US2019/038084
A. CLASSIFICATION OF SUBJECT MATTER
     G06Q 20/06 (2012.01)i; G06Q 20/32 (2012.01)i; H04L 9/32 (2006.01)i; G06Q 30/02 (2012.01)i; G06N 3/08 (2006.01)i
According to International Patent Classification (IPC) or to both national classification and IPC
B. FIELDS SEARCHED
Minimum documentation searched (classification system followed by classification symbols):
     G06Q; H04L; G07G; G06N
Documentation searched other than minimum documentation to the extent that such documents are included in the fields searched:
Electronic data base consulted during the international search (name of data base and, where practicable, search terms used):
EPO-Internal, WPI Data
C. DOCUMENTS CONSIDERED TO BE RELEVANT
	Category* 	Citation of document, with indication, where appropriate, of the relevant passages 	Relevant to claim No.
(1)
	
X
	Neurogress ET AL, "MECHATRONIC SYSTEMS CONTROL VIA NEURAL INTERFACE NEUROGRESS", 08 February 2018 (2018-02-08),
Retrieved from the Internet:
URL:https://s3.eu-central-1.amazonaws.com/icostars-whitepapers/d525e659fddaebc1186474abc02142360577982f85787d1086372b1f0668f4c0.pdf
XP055612926
[retrieved on  2019-08-14]
	
1-15
		
the whole document
	
			
(2)
	
X
	Lisa Barwick, "Researchers help digital currency users get more rewards for exercising", 14 August 2017 (2017-08-14),
Retrieved from the Internet:
URL:https://warwick.ac.uk/newsandevents/pressreleases/researchers_help_digital/
XP055613045
[retrieved on  2019-08-14]
	
1-15
		
the whole document
	
			
(3)
	
A
	US 2018247191 A1 (KATZ RANDALL M [US] ET AL) 30 August 2018 (2018-08-30) 	
1-15
		
paragraph [0069] - paragraph [0124]
	
*
	
Special categories of cited documents:
"A"
	
document defining the general state of the art which is not considered to be of particular relevance
"D"
	
document cited by the applicant in the international application
"E"
	
earlier application or patent but published on or after the international filing date
"L"
	
document which may throw doubts on priority claim(s) or which is cited to establish the publication date of another citation or other special reason (as specified)
"O"
	
document referring to an oral disclosure, use, exhibition or other means
"P"
	
document published prior to the international filing date but later than the priority date claimed
	
"T"
	
later document published after the international filing date or priority date and not in conflict with the application but cited to understand the principle or theory underlying the invention
"X"
	
document of particular relevance; the claimed invention cannot be considered novel or cannot be considered to involve an inventive step when the document is taken alone
"Y"
	
document of particular relevance; the claimed invention cannot be considered to involve an inventive step when the document is combined with one or more other such documents, such combination being obvious to a person skilled in the art
"&"
	
document member of the same patent family
D. INFORMATION ON PATENT FAMILY MEMBERS
Patent document cited in search report 	Publication date
(day/month/year) 	Patent family member(s) 	Publication date
(day/month/year)
US 2018247191 	A1
	30 August 2018 	
US 2018247191 	A1
US 2018341861 	A1
US 2018373983 	A1
US 2018373984 	A1
	
30 August 2018
29 November 2018
27 December 2018
27 December 2018
Name and mailing address of the ISA/:
European Patent Office
P.B. 5818, Patentlaan 2, 2280 HV Rijswijk,
Netherlands
Telephone No. (+31-70)340-2040
Facsimile No. (+31-70)340-3016
	
Date of the actual completion of the international search:
14 August 2019
Date of mailing of the international search report:
27 August 2019
	
Authorized officer:
Veshi, Erzim
Top    Part 1: 1 2 3 4 5 6         Part 2: A B C D E  	▲

# -

US20200097951CRYPTOCURRENCY SYSTEM USING BODY ACTIVITY DATA
21.09.2018
Appl.No 16138518 Applicant Microsoft Technology Licensing, LLC Pub.Date 26.03.2020 Pub.Kind A1 Pub.Lang
IC5
WO/2020/060606CRYPTOCURRENCY SYSTEM USING BODY ACTIVITY DATA
20.06.2019
Appl.No PCT/US2019/038084 Applicant MICROSOFT TECHNOLOGY LICENSING, LLC Pub.Date 26.03.2020 Pub.Kind A Pub.Lang en
IC1
https://patentscope.wipo.int/search/en/detail.jsf?docId=WO2020060606&tab=FAMILY




! https://patentscope.wipo.int/search/en/detail.jsf?docId=WO2020060606&tab=PCTDOCUMENTS



 Patents
Cryptocurrency system using body activity data
Abstract
Human body activity associated with a task provided to a user may be used in a mining process of a cryptocurrency system. A server may provide a task to a device of a user which is communicatively coupled to the server. A sensor communicatively coupled to or comprised in the device of the user may sense body activity of the user. Body activity data may be generated based on the sensed body activity of the user. The cryptocurrency system communicatively coupled to the device of the user may verify if the body activity data satisfies one or more conditions set by the cryptocurrency system, and award cryptocurrency to the user whose body activity data is verified.
Classifications
G06Q20/3672 Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes initialising or reloading thereof
View 14 more classifications
WO2020060606A1

WIPO (PCT)
Download PDF
Find Prior Art
Similar

Other languages
    French
Inventor
    Dustin Abramson
    Derrick Fu
    Joseph Edwin Johnson, Jr.

Worldwide applications
2018 US 2019 WO
Application PCT/US2019/038084 events
2018-09-21
Priority to US16/138,518
2018-09-21
Priority to US16/138,518
2019-06-20
Application filed by Microsoft Technology Licensing, Llc
2020-03-26
Publication of WO2020060606A1

Info
    Patent citations (1)
    Non-patent citations (2)
    Cited by (1)
    Legal events
    Similar documents
    Priority and Related Applications
External links
    Espacenet
    Global Dossier
    PatentScope
    Discuss

Description
CRYPTOCURRENCY SYSTEM USING BODY ACTIVITY DATA
BACKGROUND
[0001] A virtual currency (also known as a digital currency) is a medium of exchange implemented through the Internet generally, not tied to a specific government-backed “flat” (printed) currency such as the U.S. dollar or the Euro, and typically designed to allow instantaneous transactions and borderless transfer of ownership. One example of virtual currency is cryptocurrency, wherein cryptography is used to secure transactions and to control the creation of new units.
[0002] Several cryptocurrencies exist. Among these, the most well known is a blockchain- based cryptocurrency. Most blockchain-based cryptocurrency is decentralized in the sense that it has no central point of control. However, blockchain-based cryptocurrency can also be implemented in a centralized system having a central point of control over the cryptocurrency. Bitcoin is one of the examples of blockchain-based cryptocurrency. It is described in a 2008 article by Satoshi Nakamoto, named“Bitcoin: A peer-to-Peer
Electronic Cash System”.
[0003] A blockchain is a data structure that stores a list of transactions and can be thought of as a distributed electronic ledger that records transactions between source identifier(s) and destination identifier(s). The transactions are bundled into blocks and every block (except for the first block) refers back to or is linked to a prior block in the blockchain. Computer resources (or nodes, etc.) maintain the blockchain and cryptographically validate each new block and the transactions contained in the corresponding block. This validation process includes computationally solving a difficult problem that is also easy to verify and is sometimes called a“proof-of-work”. This process is referred to as“mining”. The mining may be a random process with low probability so that a lot of trial and error is required to solve a computationally difficult problem. Accordingly, the mining may require enormous amounts of computational energy.
[0004] It is with respect to these and other general considerations that the following embodiments have been described. Also, although relatively specific problems have been discussed, it should be understood that the embodiments should not be limited to solving the specific problems identified in the background.
SUMMARY
[0005] Some exemplary embodiments of the present disclosure may use human body activity associated with a task provided to a user as a solution to“mining” challenges in cryptocurrency systems. For example, a brain wave or body heat emitted from the user when the user performs the task provided by an information or service provider, such as viewing advertisement or using certain internet services, can be used in the mining process. Instead of massive computation work required by some conventional cryptocurrency systems, data generated based on the body activity of the user can be a proof-of-work, and therefore, a user can solve the computationally difficult problem unconsciously. Accordingly, certain exemplary embodiments of the present disclosure may reduce computational energy for the mining process as well as make the mining process faster.
[0006] Systems, methods, and hardware aspects of computer readable storage media are provided herein for a cryptocurrency system using human body activity data. According to various embodiments of the present disclosure, a server may provide a task to a device of a user which is communicatively coupled to the server. A sensor communicatively coupled to or comprised in the device of the user may sense body activity of the user. Body activity data may be generated based on the sensed body activity of the user. A cryptocurrency system communicatively coupled to the device of the user may verify whether or not the body activity data satisfies one or more conditions set by the cryptocurrency system, and award cryptocurrency to the user whose body activity data is verified.
[0007] Examples are implemented as a computer process, a computing system, or as an article of manufacture such as a device, computer program product, or computer readable medium. According to one aspect, the computer program product is a computer storage medium readable by a computer system and encoding a computer program comprising instructions for executing a computer process.
[0008] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Various embodiments in accordance with the present disclosure will be described with reference to the drawings, in which:
[0010] FIG. 1 illustrates an example environment in which some exemplary embodiments of the present disclosure may be practiced;
[0011] FIG. 2 shows a system diagram of a decentralized cryptocurrency system according to an exemplary embodiment of the present disclosure;
[0012] FIG. 3 shows a flow diagram of a computer-implemented method according to an exemplary embodiment of the present disclosure;
[0013] FIG. 4 shows a flow diagram of an operation for generating body activity data according to an exemplary embodiment of the present disclosure;
[0014] FIG. 5 shows a flow diagram of an operation for verifying body activity data according to an exemplary embodiment of the present disclosure;
[0015] FIG. 6 illustrates a blockchain and two exemplary blocks of the blockchain according to an exemplary embodiment of the present disclosure;
[0016] FIG. 7 shows a flow diagram of a computer-implemented method using a vector or embedding according to another exemplary embodiment of the present disclosure; and [0017] FIG. 8 illustrates an exemplary block diagram of a computer or processing system in which processes involved in the system, method, and computer program product described herein may be implemented.
[0018] Corresponding numerals and symbols in the different figures generally refer to corresponding parts unless otherwise indicated. The figures are drawn to clearly illustrate the relevant aspects of the embodiments and are not necessarily drawn to scale.
DETAILED DESCRIPTION OF EMBODIMENTS
[0019] In the following detailed description, reference is made to the accompanying drawings which form a part hereof, and in which are shown by way of illustration specific embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that structural, logical and electrical changes may be made without departing from the spirit and scope of the invention. The following detailed description is therefore not to be taken in a limiting sense, and the scope of the invention is defined only by the appended claims and equivalents thereof. Like numbers in the figures refer to like components, which should be apparent from the context of use.
[0020] The term“cryptocurrency” may mean a digital currency in which encryption techniques are used to regulate the generation of units of currency and verify the transfer of funds. Many cryptocurrencies include the use of a blockchain to provide security and prevent fraud as double spending. Some embodiments of the present disclosure may be used in alternate cryptocurrency mechanisms other than a blockchain. The system, method, and computer program products described herein may be applied to both centralized and decentralized cryptocurrency networks or databases.
[0021] FIG. 1 illustrates an example environment 100 in which some exemplary embodiments of the present disclosure may be practiced. The example environment 100 includes, but is not limited to, at least one of task server 110, communication network 120, user device 130, sensor 140, and cryptocurrency system 150.
[0022] Task server 110 may provide one or more tasks to user device 130 over communication network 120. For example, task server 110 may be at least one of a web server delivering or serving up web pages, an application server handling application operations between users and applications or databases, a cloud server, a database server, a file server, a service server, a game server implementing games or services for a game, and a media server delivering media such as streaming video or audio. The tasks provided by task server 110 will be discussed in more detail below.
[0023] Alternatively, cryptocurrency system 150 may provide one or more tasks to user device 130. For example, in a decentralized cryptocurrency network, the tasks may be proposed to user device 130 by miners (e.g. compute resources or nodes 210 of FIG. 2). In another example, in a centralized cryptocurrency system, a cryptocurrency server may send the tasks to user device 130.
[0024] Communication network 120 may include any wired or wireless connection, the internet, or any other form of communication. Although one network 120 is identified in FIG. 1, communication network 120 may include any number of different communication networks between any of the server, devices, resource and system shown in FIGS. 1 and 2 and/or other servers, devices, resources and systems described herein. Communication network 120 may enable communication between various computing resources or devices, servers, and systems. Various implementations of communication network 120 may employ different types of networks, for example, but not limited to, computer networks, telecommunications networks (e.g., cellular), mobile wireless data networks, and any combination of these and/or other networks.
[0025] User device 130 may include any device capable of processing and storing data/information and communicating over communication network 120. For example, user device 130 may include personal computers, servers, cell phones, tablets, laptops, smart devices (e.g. smart watches or smart televisions). An exemplary embodiment of user device 130 is illustrated in FIG. 6.
[0026] Sensor 140 may be configured to sense the body activity of user 145. As illustrated in FIG. 1, sensor 140 may be a separate component from user device 130 and be operably and/or communicatively connected to user device 130. Alternatively, sensor 140 may be included and integrated in user device 130. For example, user device 130 may be a wearable device having sensor 140 therein. The sensor 140 may transmit information/data to user device 130. Sensor 140 may include, for example, but not limited to, functional magnetic resonance imaging (fMRI) scanners or sensors, electroencephalography (EEG) sensors, near infrared spectroscopy (NIRS) sensors, heart rate monitors, thermal sensors, optical sensors, radio frequency (RF) sensors, ultrasonic sensors, cameras, or any other sensor or scanner that can measure or sense body activity or scan human body. For instance, the fMRI may measure body activity by detecting changes associated with blood flow. The fMRI may use a magnetic field and radio waves to create detailed images of the body (e.g. blood flow in the brain to detect areas of activity). The material
(http://news.berkely.edu/20l l/09/22/brain-movies/) shows one example of how the fMRI can measure brain activity associated with visual information and generate image data.
[0027] Cryptocurrency system 150 may include one or more processors for processing commands and one or more memories storing information in one or more cryptocurrency data structures. In some embodiments, cryptocurrency system 150 may be a centralized cryptocurrency system or network, for example, but not limited to, a server which may be privately run by a third party entity or the same entity that is running the task server 110. In other embodiments, cryptocurrency system 150 may be a publically accessible network system (e.g., a distributed decentralized computing system).
[0028] For example, cryptocurrency system 150 may be a decentralized network 200, such as a decentralized blockchain network, including one or more compute resources 210, as shown, for example, in FIG. 2. In the embodiment of FIG. 2, there may be no central authority controlling cryptocurrency network 200. The data stored on blockchain network 200, i.e., the public ledger, may not be stored at a central location in its entirety. Blockchain network 200 may include a plurality of processors for processing commands and a plurality of memories storing information in one or more blockchain data structures. Blockchain network 200 may maintain one or more blockchains of continuously growing lists of data blocks, where each data block refers to previous blocks on its list. The requirement for each block to refer to all previous blocks in the blockchain, yields a chain of blocks that is hardened against tampering and revision, such that the information stored in the blockchain is immutable.
[0029] Compute resources 210 may include any device, computer, system or otherwise that has joined blockchain network 200 and forms a node in blockchain network 200. Compute resources 210 may include, for example, but not limited to, personal computers, servers, cell phones, tablets, laptops, smart devices (e.g. smart watches or smart televisions), or any other device capable of storing information and communicating over communication network 120. In some embodiments, compute resources 210 may be unaffiliated with or unknown to each other where, for example, compute resources 210 remain anonymous. Each compute resource 210 may include memory 220 that stores a copy of at least a portion of public ledger 230 of blockchain network 200. Compute resources 210 may also execute one or more programs to perform various functions associated with maintaining blockchain network 200 including, for example, updating public ledger 230, generating new blocks, or any other similar function.
[0030] For illustration purposes, FIG. 1 illustrates user device 130 as not included in blockchain network 200. However, user device 130 may be part of blockchain network 200 and be implemented as one of the compute resources 210 in FIG. 2.
[0031] Public ledger 230 may store any transactions performed over blockchain network 200 including but not limited to, for example, any transaction related to and occurring on blockchain network 200. Because each compute resource 210 stores a copy of at least a portion of the public ledger 230 of blockchain network 200, public ledger 230 may be independently verified for accuracy at any time by comparing the stored copies of multiple compute resources 210.
[0032] Communication between compute resources 210 may occur via communication network 120. Communication network 120 of FIG. 2 may be the same network as, or be a different network from, communication 120 of FIG. 1. In some embodiments, each compute resource 210 may communicate directly with each other compute resource 210. In some embodiments, some compute resources 210 may not be able to communicate directly with each other. For example, they are not connected to the same communications network 120. In this case, communications related to blockchain network 200 between the compute resources 210 may occur by using one or more of the remaining compute resources 210 as an intermediary. In some embodiments, one or more of compute resources 210 may not maintain a continuous connection to blockchain network 200 at all times. For example, a compute resource 210 may only be connected to blockchain network 200 during a certain period of time each day or may only be connected to blockchain network 200 intermittently throughout the day. Due to the decentralized nature of blockchain network 200, such an intermittent connection by one or more compute resources 210 does not affect the overall operation of blockchain network 200 since copies of public ledger 230 are stored on multiple compute resources 210. Once the disconnected compute resource 210 reconnects to blockchain network 200, the disconnected compute resource 210 may receive updated copies of the public ledger 210 from one or more of the compute resources 210 that have been connected to blockchain network 200.
[0033] FIG. 3 shows a flow diagram of a computer-implemented method according to an exemplary embodiment of the present disclosure.
[0034] Method 300 begins at operation 310 illustrated in FIG. 3, where task server 110 provides one or more tasks to device 130 of user 145 over communication network 120. The tasks include, for example, but not limited to, watching or listening information (e g. advertisement) for a certain time, using services (e.g. search engine, chat bot, e-mail, social media/networking service and any internet or web service), uploading or sending information/data to a website, a server or a network (e.g. content sharing website, and cloud network or server), or any other information or service which may produce effects on users. In the blockchain, the task(s) may be included as a transaction in the public ledger 230.
[0035] Furthermore, the task(s) provided by task server 110 can include solving a test for distinguishing human from machine input so that humans but not computers are able to pass it, such as, Computer Automated Program to Tell Computers and Flumans Apart (CAPTCHA) and reCAPTCHA which is a CAPTCHA-like system designed to establish that a computer user is human. The task may require user 145 to solve a verification challenge, for example, but not limited to, an image based challenge including instructions prompting user 145 to solve the challenge through interaction with one or more images.
[0036] At operation 320, when or after user 145 performs the task(s) provided by task server 110, sensor 140 may sense the body activity of user 145 that is a body response related to the task provided by task server 110, and then transmit the sensed body activity of user 145 to user device 130. The body activity may include, for example, but not limited to, radiation emitted from human body, brain activities, body fluid flow (e.g. blood flow), organ activity or movement, body movement, and any other activities that can be sensed and represented by images, waves, signals, texts, numbers, degrees, or any other form of information or data. Examples of body radiation emitted from human body may include radiant heat of the body, pulse rate, or brain wave. Brain waves may comprise, for example, but not limited to, (i) gamma waves, involved in learning or memory tasks, (ii) beta waves, involved in logical thinking and/or conscious thought, (iii) alpha waves, which may be related to subconscious thoughts, (iv) theta waves, which may be related to thoughts involving deep and raw emotions, (v) delta waves, which may be involved in sleep or deep relaxation, or (vi) electroencephalogram (EEG), which may be measurement used to evaluate the electrical activity in the brain, such as deep concentration. Examples of the body movement may include eye movement, facial movement or any other muscular movements. Furthermore, brain activity can be sensed using the fMRI. The fMRI measures brain activity by detecting changes associated with blood flow. This technique relies on the fact that cerebral blood flow and neuronal activation are coupled. When an area of the brain is in use, blood flow to that region also increases.
[0037] At operation 330, user device 130 generates body activity data based on the body activity sensed by sensor 140. Operation 330 may be part of a mining process which is a process for solving a computationally difficult problem. One exemplary embodiment of operation 330 is shown in FIG. 4. As shown in FIG. 4, operation 330 may comprise operations 410 and 420.
[0038] At operation 410, the body activity sensed by sensor 140 may be codified in symbolic forms, such as letter(s), numeral(s), symbol(s), and a string comprising sequence of characters. In one example, the body activity can be codified by extracting one or more values from the sensed body activity, such as minimum and/or maximum amplitude(s) or frequency(ies) of a body activity signal (e g. brain waves). In another example, user device 130 may window and sample the sensed body activity over time and calculate the average of the sampled values. In still another example, user device 130 may generate raw data of the body activity. In still another example, user device 130 may filter a raw signal of the body activity using one or more filters to apply the filtered body activity signal to an audio hash function or algorithm at operation 420. Alternatively, any statistic value(s) associated with human body activity can be codified from the body activity sensed by sensor 140.
[0039] At operation 420, the codified body activity may be converted into an encrypted output by using an encryption algorithm, such as a hash algorithm or function. For example, hash functions include functions that map an initial input data set of an output data set. Generally, the hash function may be any function that can be used to map data of arbitrary size to data of fixed size. The hash function allows one to easily verify that some input data maps to a given hash value, but if the input data is unknown, it is deliberately difficult to reconstruct it (or any equivalent alternatives) by knowing the stored hash value. The hash algorithm or function may be included in the mining software or program of the cryptocurrency system or database.
[0040] For example, operation 420 may use audio hash function, where the histogram of frequencies of the codified body activity are summed up, or bit manipulation, such as XOR function of each histogram bucket with the next or a modulus of a prime number, is performed on the codified body activity.
[0041] In some embodiments, an analog hash function where the body activities themselves are hashes can be used. For example, waves or signals sensed by sensor 140, for example, but not limited to, alpha, beta, delta or gamma waves from the EEG sensor, may be transformed to a histogram using a transforming algorithm or formula, such as Fast Fourier Transform (FFT) or any other algorithm or formula that can convolve, add or multiply waves or signals to produce a histogram. The hash may be the histogram itself. For example, the hash may be the output of the FFT where each component is a frequency band and the value is counts corresponding to each frequency band. In another example, the desired properties may be that the first two frequency histograms are as close to zero as possible, for instance, provided some statistical guarantee exists that this cannot happen easily.
[0042] However, operation 420 is optional. In certain embodiments, user device 130, without encrypting or hashing the codified body activity, may transmit the codified body activity generated at operation 410 to cryptocurrency system 150.
[0043] Although FIG. 3 illustrates that operation 330, including operation 410 and 420, is processed by user device 130, at least one of operations 410 and 420 can be processed by another device(s), server, resource or system, such as task server 110, cryptocurrency system 150 or any other server. For example, the user device 130 may generate raw data of the sensed body activity, transmit it to cryptocurrency system 150, task server 110 or any other server, and then cryptocurrency system 150, task server 110 or any other server may codify or hash the raw data of the sensed body activity.
[0044] Referring back to FIG. 3, at operation 340, cryptocurrency system 150 verifies if the body activity data of user 145 generated by user device 130 satisfies one or more conditions set by an algorithm of cryptocurrency system 150. The conditions may be set by simulating human body activity across all of body activities that can constitute hashes. Machine learning algorithms may be used to simulate body activities and set the conditions for valid body activities, for example, but not limited to, using generative adversarial networks.
[0045] In some embodiments, cryptocurrency system 150 verifies whether the body activity data of user 145 (e.g. the code of the body activity generated at operation 410 or the hash of the body activity generated at operation 420) may represent that the body activity of user 145 is within a target range. The target range may be determined using the amount of cognitive effort that user 145 requires to perform the task provided by task server 110. For example, to verify if the hash of the body activity of user 145, cryptocurrency system 150 may determine, for example, but not limited to, (i) whether the hash of the body activity of user 145 has a specific certain pattern, repeated patterns, a mathematical properties or the number of leading numbers, characters or strings (e.g. leading zeroes) set by cryptocurrency system 150, or (ii) whether the hash of the body activity of user 145 is less than a current target value. Examples of the numerical patterns set by cryptocurrency system 150 may be a pattern that first certain digits of the hash form a prime number, or a pattern that a number that is calculated by applying first certain digits of the hash to a preset formula forms a prime number (For example, a number calculated by adding or subtracting a predetermined number or a number set by cryptocurrency system 150 to the first four digits of the hashing forms a prime number). The repeating number patterns may include a repeating number (e.g. leading zeros, ones in the middle of the hash, twos in the last four digits of the hash, and any repeating numbers included in the hash) and a repeating number sequence (e.g. leading repeating digit pairs, such as“121212”, or triplets“123123”). If the hash of the body activity of user 145 has the desirable pattern(s) or is within the target range, then the proof of work or proof of stake is considered solved, and that hash can be a new block. The target range or value may be changed periodically to maintain a preselected level of difficulty, although it is not required. For example, the target value may be inversely proportional to the difficulty. By varying the difficulty, a roughly constant rate of block generation may be kept.
[0046] The target range of valid body activity may be set using statistical data so that normal body activity, activity that can easily happen, or faking body activity cannot be validated. For example, the target range of valid body activity may be selected from a range that human miners cannot fake their own body activity to satisfy the target range to prove and validate the proof-of-work.
[0047] Additionally, the verification at operation 340 may include filtering out invalid tasks, malformed data (syntax errors) or data sent from an unauthorized user or generated by a machine learning system. For example, cryptocurrency system 150 may receive, from user device 130, data of the body activity generated before the hash algorithm is applied, rehash that data, and then compare the rehashed data with the hash received from user device 130 to check whether the body activity data is generated based on human, not random computer generated data. Voxel(s) of the image of the fMRI may be an example of the data of the body activity generated before the hash algorithm is applied.
[0048] One exemplary embodiment of operation 340 is shown in FIG. 5. At operation 510, cryptocurrency system 150 may check whether the hash of the body activity, received from user device 130, is within the target range set by cryptocurrency system 150, or comprises a desirable pattern set by cryptocurrency system 150. If the hash of the body activity is within the target range or has a desirable pattern set by cryptocurrency system 150, cryptocurrency system 150 rehashes data of the body activity, generated before the hash algorithm is applied and transmitted with the hash of the body activity from user device 130 (Operation 520), and then compare the rehashed data with the hash of the body activity, received from user device 130 (Operation 530). If the rehashed data is identical to the hash of the body activity, received from user device 130, cryptocurrency system 150 proceeds to operation 350. However, if determining in operation 510 that the hash of the body activity data is out of the target range or does not include the desirable pattern set by cryptocurrency system 150 or if determining in operation 530 that the rehashed data does not match the hash of the body activity, operation 310 or 320 may be proceeded.
[0049] At operation 350, when the body activity data transmitted from user device 130 satisfies one or more conditions set by cryptocurrency system 150, cryptocurrency system 150 awards cryptocurrency to user 145. For example, cryptocurrency system 150 awards to user 145 an amount of cryptocurrency corresponding to the task accomplished by user 145. Additionally, cryptocurrency system 150 may award cryptocurrency to an owner or operator of task server 110 as a reward for providing services, such as, search engines, chatbots, applications or websites, offering users access for free to paid contents (e.g. video and audio streaming or electric books), or sharing information or data with users.
[0050] For example, in the blockchain cryptocurrency system, at operation 340, at least one of compute resources 210 of FIG. 2 verifies if the hash of the body activity data of user 145 is valid. At operation 350, when the hash of the body activity data of user 145 is validated at operation 340, the compute resource 210 of FIG. 2 can add a new block to the blockchain. The new block may contain the number of cryptocurrency units assigned to the user’s address. The new blockchain with the additional added block is broadcasted around the cryptocurrency network 150. The compute resource 210, which performed operations 340 and 350, may be also rewarded with transaction fees and/or cryptocurrency.
[0051] FIG. 5 depicts a blockchain 500 and two exemplary blocks 510, 520 of blockchain 500 according to exemplary embodiments of the present disclosure. Typically a “blockchain” is understood as being a data structure comprising a series of blocks, where each block includes data corresponding to one or more transactions, hashed together with linking data, such as the hash of an immediately preceding block. In the embodiment of the present disclosure, the transaction may be the task performed by user 145. The chain can then be used to create a ledger, which is typically an append-only database. Once data is entered into a block of the chain, the entry is essentially irrefutable, since any tampering with the data would be reflected in the chained hash calculations and is thus easily detected.
[0052] The blockchain 500 may represent the publicly distributable transactions ledger, such as ledger 230 of FIG. 2, and may include a plurality of blocks. Each block, such as block 510 and block 520 may include data regarding recent transactions. For example, the task performed by user 145 and the number of cryptocurrency units awarded to user 145, and/or contents linking data that links one block 520 to a previous block 510, and proof-of- work data, for example, the validated hash of the body activity, that ensures that the state of the blockchain 500 is valid and is endorsed/verified by a majority of the record keeping system. Exemplary embodiments of block 520 of blockchain 500 may include a current hash, a previous hash of previous block 510, transaction. The previous hash is a hash from the immediately preceding block, which ensures that each block is immutably tied to previous block. The hash of previous block 510 may be included in block 520, thereby linking block 520 to previous block 510.
[0053] Transaction information cannot be modified without at least one of compute resources 210 noticing, thus, the blockchain 500 can be trusted to verify transactions occurring on blockchain 500.
[0054] In some embodiments, vectors or embeddings may be used for body activity data. FIG. 7 shows a flow diagram of an exemplary embodiment of a computer-implemented method using vectors (or embedding). As described in detail above with respect to FIG. 3, task server 110 or cryptocurrency system/network 150, such as a central cryptocurrency server or compute resource (or node) 210, may perform operation 310 where one or more tasks are proposed to user device 130 over communication network 120, and sensor 140 may perform operation 320 where sensor 140 senses or measures the body activity of user 145. Sensor 140 (or user device 130) may generate data of the body activity in the form of images, waves, signals, numbers, characters, strings or any other form that can represent the body activity.
[0055] At operation 710, user device 130 produces one or more vectors (or embeddings), such as an array of floating point numbers, from the data of the body activity generated by sensor 140 (or user device 130). An algorithm stored in user device 130, or any device, server, system or network communicatively connected to user device 130 over communication network 120, may transform the data of the body activity generated by sensor 140 (or user device 130) into one or more vectors. For example, the brain image generated by the fMRI scanner may be fed into a computer vision machine learning algorithm, for example, but limited to, a convolution neural network, and the machine learning algorithm may generate one or more vectors from one or more voxels of the brain image. In some embodiments, one single vector may be generated at operation 710. In other embodiments, a series of vectors may be produced by sampling over time when user 145 is performing the task(s). The data of the body activity (e.g. voxels of a brain image) and/or the vectors (or embeddings) may generate a“proof of work” and be transmitted to cryptocurrency system/network 150.
[0056] In addition, the vectors may optionally include one or more vectors related to the task(s), for example, but not limited to, search terms that user 145 used or identified s) of advertisement that user 145 viewed.
[0057] At operation 720, the vector(s) generated at operation 710 may be converted into an encrypted output by using an encryption algorithm, such as a hashing algorithm or function, as explained above with respect to operation 420 of FIG. 4. For example, the vector(s) can be hashed as bytes with the hashing algorithm, such as Secure Hash Algorithm (SHA)-l, SHA-256, SHA-384, SHA-512, and Message Digest (MD)-5.
[0058] However, operation 720 is optional. In some embodiments, user device 130 can transmit the vector(s) of the body activity produced at operation 710 to cryptocurrency system 150 without encrypting or hashing them.
[0059] At operation 730, cryptocurrency system 150 receives, from user device 130, the data of the body activity of user 145 (e.g. voxels of a brain image) and/or the vector(s) (or the hash) of the body activity of user 145.
[0060] At operation 740, cryptocurrency system 150 checks if the vector(s) received from user device 130 have one or more mathematical properties set by cryptocurrency system/network 150. For example, cryptocurrency system 150 may determine whether the vector(s) of the body activity have similarity (or relationship) with a legitimate vector (or a baseline vector) set by an algorithm of cryptocurrency system 150. The similarity may be measured or calculated using, for example, but not limited to, a cosine similarity, the Euclidean distance, the Manhattan distance, the Minkowski distance, and the Jaccard similarity. The legitimate vector may be set based on the assumption that the vectors of body activities of people who are performing the same task have a certain degree of similarity. Cryptocurrency system 150, such as a central cryptocurrency server/network or compute resource (or node) 210 of FIG. 2, can decide the legitimate vector and similarity. For example, miners like compute resources (or nodes) 210 of FIG. 2 can share their proof of work including, for example, but not limited to, vectors of body activities, with cryptocurrency network 150, and decide the legitimate vector and similarity by calculating the average of the proof of work (e g. a centroid or weighted average of the vectors and a standard deviation).
[0061] If the vector(s) received from user device 130 have the mathematical property(ies) set by cryptocurrency system/network 150, cryptocurrency system/network 150 rehashes the data of the body activity, transmitted from user device 130 (Operation 750), and then compares the rehashed output with the vectors (or the hash) received from user device 130 (Operation 760). For example, computer resource (or node) 210 of FIG. 2 may rehash the fMRI voxels, transmitted from user device 130, to a vector, and then compare the rehashed vector with the vector received from user device 130 to check whether the body activity data is generated based on human, not random computer generated data. If determining in operation 740 that the vector(s) received user device 130 do not satisfy the mathematical property(ies) set by cryptocurrency system/network 150 or if determining in operation 760 that the rehashed output does not match the vector(s) (or the hash) received from user device 130, operation 310 or 320 may be proceeded.
[0062] If the rehashed output is identical to the vector(s) (or the hash) received from user device 130, cryptocurrency system/network 150 awards cryptocurrency to user 145 as described in detail above with respect to operation 350. For example, in the blockchain cryptocurrency system, a miner, such as one of compute resources (or nodes) 210 of FIG. 2, which performed the validation of the body activity data, may add a new block, which includes the data of the body activity, the vector(s) (or the hash) and/or the number of cryptocurrency units assigned to the user’s address, to the blockchain, broadcast a new blockchain with the new block around cryptocurrency network 150, and may be rewarded with transaction fees and/or cryptocurrency.
[0063] FIG. 8 illustrates a schematic of an example computer or processing system that may implement any of the systems, methods, and computer program products, such as task server 110, user device 130, cryptocurrency system 150 and compute resources 210, described herein in one embodiment of the present disclosure. The computer system is only one example of a suitable processing system and is not intended to suggest any limitation as to the scope of use or functionality of embodiments of the methodology described herein. The processing system shown may be operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well- known computing systems, environments, and/or configurations that may be suitable for use with the processing system shown in FIG. 8 may include, but are not limited to, personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments that include any of the above systems or devices, and the like.
[0064] The computer system may be described in the general context of computer system executable instructions, such as program modules, being executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, and so on that perform particular tasks or implement particular abstract data types. The computer system may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media including memory storage devices.
[0065] The components of computer system 800 may include, but are not limited to, one or more processors or processing units 810, system memory 820, and bus 830 that couples various system components including system memory 820 to processor 810. Processor 810 may include software module 815 that performs the methods described herein. The module 815 may be programmed into the integrated circuits of processor 810, or loaded from memory 820, storage device 840, or network 850 or combinations thereof.
[0066] Bus 830 may represent one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnects (PCI) bus.
[0067] Computer system 800 may include a variety of computer system readable media. Such media may be any available media that is accessible by computer system, and it may include both volatile and non-volatile media, removable and non-removable media.
[0068] System memory 820 can include computer system readable media in the form of volatile memory, such as random access memory (RAM) and/or cache memory or others. Computer system 800 may further include other removable/non-removable volatile/non- volatile computer system storage media. By way of example only, storage device 840 can be provided for reading from and writing to a non-removable, non-volatile magnetic media (e.g., a“hard drive”). Although not shown, a magnetic disk drive for reading from and writing to a removable, non-volatile magnetic disk (e g., a“floppy disk”), and an optical disk drive for reading from or writing to a removable, non-volatile optical disk such as a CD-ROM, DVD-ROM or other optical media can be provided. In such instances, each can be connected to bus 630 by one or more data media interfaces.
[0069] Computer system 800 may also communicate with one or more external devices 860 such as a keyboard, a pointing device, a display 870, etc; one or more devices that enable a user to interact with computer system; and/or any devices (e.g., network card, modem, etc.) that enable computer system to communicate with one or more other computing devices. Such communication can occur via Input/Output (I/O) interfaces 880.
[0070] Still yet, computer system 800 can communicate with one or more networks 850 such as a local area network (LAN), a general wide area network (WAN), and/or a public network (e.g., the Internet) via network adapter 855. As depicted, network adapter 855 communicates with the other components of computer system via bus 830. It should be understood that although not shown, other hardware and/or software components could be used in conjunction with computer system. Examples include, but are not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems, etc.
[0071] As will be appreciated by one skilled in the art, aspects of the present disclosure may be embodied as a system, method or computer program product. Accordingly, aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a“circuit,”“module” or“system.” Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
[0072] Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
[0073] A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
[0074] Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0075] Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the“C” programming language or similar programming languages, a scripting language such as Perl, VBS or similar languages, and/or functional languages such as Lisp and ML and logic-oriented languages such as Prolog. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
[0076] Aspects of the present disclosure are described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to some embodiments of the present disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
[0077] These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
[0078] The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
[0079] The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
[0080] The computer program product may comprise all the respective features enabling the implementation of the methodology described herein, and which - when loaded in a computer system - is able to carry out the methods. Computer program, software program, program, or software, in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form.
[0081] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”,“an” and“the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms“comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
[0082] The corresponding structures, materials, acts, and equivalents of all means or step plus function elements, if any, in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
[0083] Various aspects of the present disclosure may be embodied as a program, software, or computer instructions embodied in a computer or machine usable or readable medium, which causes the computer or machine to perform the steps of the method when executed on the computer, processor, and/or machine. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform various functionalities and methods described in the present disclosure is also provided.
[0084] The system and method of the present disclosure may be implemented and run on a general-purpose computer or special-purpose computer system. The terms“computer system” and“computer network” as may be used in the present application may include a variety of combinations of fixed and/or portable computer hardware, software, peripherals, and storage devices. The computer system may include a plurality of individual components that are networked or otherwise linked to perform collaboratively, or may include one or more stand-alone components. The hardware and software components of the computer system of the present application may include and may be included within fixed and portable devices such as desktop, laptop, and/or server. A module may be a component of a device, software, program, or system that implements some“functionality”, which can be embodied as software, hardware, firmware, electronic circuitry, or etc.
[0085] Although specific embodiments of the present invention have been described, it will be understood by those of skill in the art that there are other embodiments that are equivalent to the described embodiments. Accordingly, it is to be understood that the invention is not to be limited by the specific illustrated embodiments, but only by the scope of the appended claims.
CONCEPTS
[0086] Concept 1. A cryptocurrency system, comprising: one or more processors; and memory storing executable instructions that, if executed by the one or more processors, configure the cryptocurrency system to: communicate with a device of a user; receive body activity data which is generated based on body activity of the user, wherein the body activity is sensed by a sensor communicatively coupled to or comprised in the device of the user; verify if the body activity data of the user satisfies one or more conditions set by the cryptocurrency system; and award cryptocurrency to the user whose body activity data is verified.
[0087] Concept 2. The system of any preceding and/or succeeding Concept(s), wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.
[0088] Concept 3. The system of any preceding and/or succeeding Concept(s), wherein the one or more conditions are set based on an amount of human body activity associated with a task which is provided to the device of the user.
[0089] Concept 4. The system of any preceding and/or succeeding Concept, wherein the one or more conditions comprise a condition that the body activity data represents that the user performs a task provided to the device of the user.
[0090] Concept 5. The system of any preceding and/or succeeding Concept(s), wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output, and the generated body activity data comprises a hash of the sensed body activity of the user.
[0091] Concept 6. The system of any preceding and/or succeeding Concept(s), wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.
[0092] Concept 7. The system of any preceding and/or succeeding Concept(s), wherein the one or more conditions include a condition that the hash of the body activity includes repeated patterns or a mathematical property set by the cryptocurrency system.
[0093] Concept 8. The system of any preceding and/or succeeding Concept(s), wherein the cryptocurrency system awards the cryptocurrency to the user by generating a block for the awarded cryptocurrency and adding the block to a blockchain stored in the cryptocurrency system.
[0094] Concept 9. The system of any preceding and/or succeeding Concept(s), wherein the block comprises data comprising: a task provided to the device of the user; information on the awarded cryptocurrency; a hash associated with the body activity; and a hash of a previous block.
[0095] Concept 10. The system of any preceding and/or succeeding Concept(s), wherein the task provided to the device of the user comprises a test for verifying if the user of the device is human or not.
[0096] Concept 11. The system of any preceding and/or succeeding Concept(s), wherein the cryptocurrency system is configured to: receive, from the device of the user, data of the body activity generated before the hash algorithm is applied and the hash of the body activity; rehash the data of the body activity; and compare the rehashed data with the hash of the body activity received from the device of the user to verify the body activity data.
[0097] Concept 12. A computer-implemented method, comprising: receiving, by a device of a user coupled to a network, a task over the network; sensing, by a sensor communicatively coupled to or comprised in the device of the user, body activity of the user; generating body activity data based on the sensed body activity of the user; verifying, by a cryptocurrency system communicatively coupled to the device of the user, if the body activity data satisfies one or more conditions set by the cryptocurrency system; and awarding, by the cryptocurrency system, cryptocurrency to the user whose body activity data is verified.
[0098] Concept 13. The method of any preceding and/or succeeding Concept(s), wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.
[0099] Concept 14. The method of any preceding and/or succeeding Concept(s), wherein the one or more conditions are set by the cryptocurrency system based on an amount of human body activity associated with the task provided to the device of the user.
[00100] Concept 15. The method of any preceding and/or succeeding Concept(s), wherein the verifying if the body activity data satisfies the one or more conditions comprises determining if the body activity data represents that the user performs the task provided to the device of the user.
[00101] Concept 16. The method of any preceding and/or succeeding Concept(s), wherein the verifying if the body activity data satisfies the one or more conditions comprises determining if the body activity data represents more than an amount of the body activity set by the cryptocurrency system.
[00102] Concept 17. The method of any preceding and/or succeeding Concept(s), wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output, and the generated body activity data comprises a hash of the sensed body activity of the user.
[00103] Concept 18. The method of any preceding and/or succeeding Concept(s), wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.
[00104] Concept 19. The method of any preceding and/or succeeding Concept(s), wherein the verifying if the body activity data satisfies the one or more conditions set by the cryptocurrency system comprises determining if the hash of the sensed body activity includes repeated patterns or a mathematical property set by the cryptocurrency system.
[00105] Concept 20. The method of any preceding and/or succeeding Concept(s), wherein the awarding the cryptocurrency comprises generating, by the cryptocurrency system, a block for the awarded cryptocurrency and adding the generated block to a blockchain stored in the cryptocurrency system.
[00106] Concept 21. The method of any preceding and/or succeeding Concept(s), wherein the block comprises data comprising: the task provided to the device of the user; information on the awarded cryptocurrency; the generated hash associated with the body activity; and a hash of a previous block.
[00107] Concept 22. The method of any preceding and/or succeeding Concept(s), wherein the task comprises a test for verifying if the user of the device is human or not.
[00108] Concept 23. The method of any preceding and/or succeeding Concept(s), further comprising: receiving, by the cryptocurrency system, from the device of the user, data of the body activity generated before the hash algorithm is applied and the hash of the body activity; rehashing, by the cryptocurrency system, the data of the body activity; and comparing, by the cryptocurrency system, the rehashed data with the hash of the body activity received from the device of the user to verify the body activity data.
[00109] Concept 24. A device, comprising: one or more processors communicatively coupled to a sensor, the sensor configured to sense body activity of a user; and memory storing executable instructions that, if executed by the one or more processors, configure the device to: receive a task; generate body activity data based on the sensed body activity of the user, wherein the sensed body activity is associated with the received task; and transmit the generated body activity data to a system or network which verifies the body activity data to award cryptocurrency.
[00110] Concept 25. The system of any preceding and/or succeeding Concept(s), wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.
[00111] Concept 26. The system of any preceding and/or succeeding Concept(s), wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output.
[00112] Concept 27. The system of any preceding and/or succeeding Concept(s), wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.
[00113] Concept 28. The system of any preceding and/or succeeding Concept(s), wherein the body activity data is generated by producing one or more vectors from the body activity sensed by the sensor and encrypting the one or more vectors.
Claims
Hide Dependent
1. A cryptocurrency system, comprising:
one or more processors; and
memory storing executable instructions that, if executed by the one or more processors, configure the cryptocurrency system to:
communicate with a device of a user;
receive body activity data which is generated based on body activity of the user, wherein the body activity is sensed by a sensor communicatively coupled to or comprised in the device of the user;
verify if the body activity data of the user satisfies one or more conditions set by the cryptocurrency system; and
award cryptocurrency to the user whose body activity data is verified.
2. The system of claim 1, wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.
3. The system of claim 1, wherein the one or more conditions are set based on an amount of human body activity associated with a task which is provided to the device of the user.
4. The system of one of claims 1-3, wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output, and the generated body activity data comprises a hash of the sensed body activity of the user.
5. The system of one of claims 1-3, wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.
6. The system of one of claims 1-3, wherein the cryptocurrency system awards the cryptocurrency to the user by generating a block for the awarded cryptocurrency and adding the block to a blockchain stored in the cryptocurrency system.
7. The system of claim 6, wherein the block comprises data comprising:
a task provided to the device of the user;
information on the awarded cryptocurrency;
a hash associated with the body activity; and
a hash of a previous block.
8. The system of claim 3, wherein the task provided to the device of the user comprises a test for verifying if the user of the device is human or not.
9. The system of claim 4, wherein the cryptocurrency system is configured to: receive, from the device of the user, data of the body activity generated before the hash algorithm is applied and the hash of the body activity;
rehash the data of the body activity; and
compare the rehashed data with the hash of the body activity received from the device of the user to verify the body activity data.
10. A computer-implemented method, comprising:
receiving, by a device of a user coupled to a network, a task over the network; sensing, by a sensor communicatively coupled to or comprised in the device of the user, body activity of the user;
generating body activity data based on the sensed body activity of the user;
verifying, by a cryptocurrency system communicatively coupled to the device of the user, if the body activity data satisfies one or more conditions set by the
cryptocurrency system; and
awarding, by the cryptocurrency system, cryptocurrency to the user whose body activity data is verified.
11. The method of claim 10, wherein the body activity sensed by the sensor comprises at least one of body radiation emitted from the user, body fluid flow, a brain wave, pulse rate or body heat radiation.
12. The method of claim 10, wherein the one or more conditions are set by the cryptocurrency system based on an amount of human body activity associated with the task provided to the device of the user.
13. The method of one of claims 10-12, wherein the body activity data is generated using a hash algorithm converting human body activity into an encryption output, and the generated body activity data comprises a hash of the sensed body activity of the user.
14. The method of one of claims 10-12, wherein the body activity data comprises one or more vectors produced from the body activity sensed by the sensor.
15. The method of claim 13, further comprising:
receiving, by the cryptocurrency system, from the device of the user, data of the body activity generated before the hash algorithm is applied and the hash of the body activity;
rehashing, by the cryptocurrency system, the data of the body activity; and comparing, by the cryptocurrency system, the rehashed data with the hash of the body activity received from the device of the user to verify the body activity data.
Patent Citations (1)
Publication number Priority date Publication date Assignee Title
US20180247191A1 * 2017-02-03 2018-08-30 Milestone Entertainment Llc Architectures, systems and methods for program defined entertainment state system, decentralized cryptocurrency system and system with segregated secure functions and public functions
Family To Family Citations
* Cited by examiner, † Cited by third party
Non-Patent Citations (2)
Title
LISA BARWICK: "Researchers help digital currency users get more rewards for exercising", 14 August 2017 (2017-08-14), XP055613045, Retrieved from the Internet <URL:https://warwick.ac.uk/newsandevents/pressreleases/researchers_help_digital/> [retrieved on 20190814] *
NEUROGRESS ET AL: "MECHATRONIC SYSTEMS CONTROL VIA NEURAL INTERFACE NEUROGRESS", 8 February 2018 (2018-02-08), XP055612926, Retrieved from the Internet <URL:https://s3.eu-central-1.amazonaws.com/icostars-whitepapers/d525e659fddaebc1186474abc02142360577982f85787d1086372b1f0668f4c0.pdf> [retrieved on 20190814] *
* Cited by examiner, † Cited by third party
Cited By (1)
Publication number Priority date Publication date Assignee Title
Family To Family Citations
US10951408B2 * 2018-09-05 2021-03-16 Nec Corporation Method and system for publicly verifiable proofs of retrievability in blockchains
* Cited by examiner, † Cited by third party, ‡ Family to family citation
Similar Documents
Publication Publication Date Title
Griggs et al. 2018 Healthcare blockchain system using smart contracts for secure automated remote patient monitoring
US10043035B2 2018-08-07 Systems and methods for enhancing data protection by anonosizing structured and unstructured data and incorporating machine learning and artificial intelligence in classical and quantum computing environments
Yli-Huumo et al. 2016 Where is current research on blockchain technology?—a systematic review
US10356094B2 2019-07-16 Uniqueness and auditing of a data resource through an immutable record of transactions in a hash history
US20190370262A1 2019-12-05 Computerized tools to discover, form, and analyze dataset interrelations among a system of networked collaborative datasets
US20180060496A1 2018-03-01 Blockchain-based mechanisms for secure health information resource exchange
CN108370318B 2020-08-21 Method and system for blockchain variants using digital signatures
US10860600B2 2020-12-08 Dataset analysis and dataset attribute inferencing to form collaborative datasets
US10324925B2 2019-06-18 Query generation for collaborative datasets
US10691710B2 2020-06-23 Interactive interfaces as computerized tools to present summarization data of dataset attributes for collaborative datasets
JP2019514301A 2019-05-30 System and method for performing verification and operations on homomorphically encrypted data
US20190318816A1 2019-10-17 Healthcare transaction validation via blockchain proof-of work, systems and methods
US10496989B2 2019-12-03 System to enable contactless access to a transaction terminal using a process data network
Patel 2019 A framework for secure and decentralized sharing of medical imaging data via blockchain consensus
US10963486B2 2021-03-30 Management of collaborative datasets via distributed computer networks
US20210019327A1 2021-01-21 Interactive interfaces to present data arrangement overviews and summarized dataset attributes for collaborative datasets
US20200327252A1 2020-10-15 Computer-implemented privacy engineering system and method
US20200252767A1 2020-08-06 Computerized tool implementation of layered data files to discover, form, or analyze dataset interrelations of networked collaborative datasets
US20180307859A1 2018-10-25 Systems and methods for enforcing centralized privacy controls in de-centralized systems
AU2017336924B2 2020-11-12 Immutable cryptographically secured ledger-backed databases
US20180082024A1 2018-03-22 Secure Distributed Patient Consent and Information Management
US10163080B2 2018-12-25 Document tracking on a distributed ledger
Agbo et al. 2019 Blockchain technology in healthcare: a systematic review
US9825985B2 2017-11-21 Detection of lockstep behavior
Ozercan et al. 2018 Realizing the potential of blockchain technologies in genomics
Priority And Related Applications
Priority Applications (2)
Application Priority date Filing date Title
US16/138,518 2018-09-21 2018-09-21 Cryptocurrency system using body activity data
US16/138,518 2018-09-21
Legal Events
Date Code Title Description
2020-05-06 121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19742660

Country of ref document: EP

Kind code of ref document: A1
2021-03-23 NENP Non-entry into the national phase

Ref country code: DE
Concepts
machine-extracted
Download Filter table
Name Image Sections Count Query match
effects title,claims,abstract,description 201 0.000
Brain claims,description 20 0.000
memory claims,description 18 0.000
Body Fluids claims,description 6 0.000
body fluid claims,description 6 0.000
methods abstract,description 17 0.000
mining abstract,description 9 0.000
Show all concepts from the description section
Data provided by IFI CLAIMS Patent Services
About Send Feedback Public Datasets Terms Privacy Policy











```
Cyberspace is where you are when you are on the telephone. 
 There are more complex and detailed aspects and definitions,
 but these are simply clarifications of finer points: 
Humanity began inhabiting Cyberspace with the very first phone call.
```



Congratulations! You found the tiddler with my name. See the links below in the reference section (below the horizontal line)? Good. 

Now edit this tiddler: change the title from `Dave Gifford` to your own name, and save changes. 

Are the links still there? Great! That's because Stroll renamed the links to `Dave Gifford` to whatever your name is. Do a search for your name in the search window in the sidebar, and you will see your name comes up in the same tiddlers there as well.

Now go back to [[Welcome to Stroll]] to continue the tutorial.
(Not to be confused with Deathlok or Dreadlock)



! I found "The Deliberate Dumbing Down of America" to be the scariest thing I have ever read.

!! The deliberate dumbing down of America : a chronological paper trail
!!              
! FULL TEXT BELOW
!! by
!! Iserbyt, Charlotte Thomson 
! 
! https://archive.org/details/pdfy-mWiSqrdsc0v5YeX2

! ABCs of DumbDown
! 
! https://abcsofdumbdown.blogspot.com/

https://archive.org/download/pdfy-mWiSqrdsc0v5YeX2/DUMBING%20DOWN%20OF%20AMERICA%20DDoA.sml.pdf

https://archive.org/stream/pdfy-mWiSqrdsc0v5YeX2/DUMBING%20DOWN%20OF%20AMERICA%20DDoA.sml_djvu.txt




Required Read for Anyone Interested in the Future of America, 

Wednesday, July 6, 2016
Required Read for Anyone Interested in the Future of America
https://www.amazon.com/review/RUZMYK7MKCTHU/ref=cm_cr_dp_title?ie=UTF8&ASIN=0966707109&channel=detail-glance&nodeID=283155&store=books

This is a review of the original 1999 version of the "The Deliberate Dumbing Down of America" which is now out of print. However, it is a free download at http://www.deliberatedumbingdown.com/pages/pdf_downloads.html. The updated version is available at Amazon.

5.0 out of 5 stars Required Read for Anyone Interested in the Future of America, May 22, 2002
By 
David Martin
This review is from: the deliberate dumbing down of america - A Chronological Paper Trail: A Chronological Paper Trail (Paperback)      
As an educator for the past 28 years, and believing myself to be at least a little left of center politically, I found "The Deliberate Dumbing Down of America" to be the scariest thing I have ever read. Some will brand this book as conservative propaganda. But those of us in the teaching profession wonder aloud to each other and anyone else who will listen, what politicians are thinking about when they pass educational reform legislation. It would seem impossible to make some of the decisions that are being made without having deliberately set about to wreak the education system in America. If the facts laid out in this book are true (and the book is full of documentation) what is happening to education in Washington D.C. is worse than the Twin Towers tragedy and the attack on Pearl Harbor combined. The promotional material for this book says that it should be required reading for parents. I think it should be required reading for every educator or university student considering a career in education. A difficult read, but eye opening to the point of being painful.
Posted by Charlotte Iserbyt at 2:18 PM Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Tuesday, May 24, 2016
Which Way USA?
Jeff Rense Interview With Charlotte Iserbyt May 23, 2016


Listen HERE.

SEE IMPORTANT UPDATE BELOW!

TRANSCRIPT OF CHARLOTTE ISERBYT’S INTERVIEW WITH JEFF RENSE REGARDING DONALD TRUMP’S POSITION ON EDUCATION AND NEED FOR PUBLIC TO BE INCLUDED IN VETTING OF ALL CANDIDATES ESPECIALLY THAT OF SECRETARY OF EDUCATION.

We do not want Mr. Trump to fall into the camp of former well-meaning candidates who were deceived due to the 100-year plan/agenda that both parties be controlled at the top by the internationalists.

Carroll Quigley’s Tragedy and Hope, 1966, Macmillan:

“The argument that the two parties should represent opposed ideals and policies… is a foolish idea. Instead, the two parties should be almost identical, so that the American people can throw the rascals out at any election without leading to any profound or extensive shifts in …

What that means is that the USA is facing for the umpteenth time an election which will not basically change anything, even if the incumbent President wants to Make America Great Again.

Taking the above into consideration, I suggest that all names being considered for Secretary of Education be made public so that the American people can “vet” the candidates. We cannot allow what happened under the Reagan Administration, the naming of a communist from Utah, the late T. H. Bell.

 ABCs of DumbDown: Patriots Or Manchurian Candidates?


                             concordiakoinonia.com

Had Americans been given T. H.  Bell’s controversial background prior to Reagan’s election to the Presidency, and subsequent approval by the U.S. Senate,  it is possible very activist and knowledgeable researchers/activists living in the D.C. area would have been able to stop his approval by the Senate.  (We were told exactly that in advance of the Senate hearing by the head of the Utah Education Association who was close to Bell!).

Here is a list of persons, and anyone associated with them, at any time, that we would NOT want to have considered:

Any former Secretaries of Education, such as Senator Lamar Alexander, William Riley, or William Bennett; Chester Finn, John Ayers, former Vice President of the Carnegie Foundation for the Advancement of Teaching (CFAT) and brother of “building bomber Bill Ayers”, Tony Wagner, Tom Vander Ark, Lee Shulman, former President of the CFAT, et al, or any person associated with their work, or tax-exempt foundation (such as Heritage, Carnegie/Rockefeller/Ford, et al, or corporation…Gates et al), or corporate head.

The aforementioned “change agents” and thousands of others, over the years, have created the deliberate dumbing down of america in order to install a new (socialist/fascist/communist) economic and political system in America.

We want a Secretary of Education who will return our schools to traditional academics run by elected school boards and teachers trained in true academics, not performance-based Skinnerian animal training techniques necessary for taking their servile place in the global economy to spin off profits for the global elite. We want our public schools returned to their pre-1965 Elementary and Secondary Education Act excellence. We agree with C.S. Lewis that when training beats education, civilization dies.

Here is a quote from Yale University’s Skull and Bones Commissioner of Education Harold Howe, in a speech at Columbia University on May 3, 1966. Mr. Martin, Alabama, Cong. Record, 8/9/66: “If I have my way,” he (Howe) said, “schools will be built for the primary purpose of social and economic integration.” True enough, he said in another address on July 19, this would abolish the concept of neighborhood schools in many areas of the nation, but the concept ought to be abandoned anyhow:

“To a disturbing degree it has come to mean the polarization of families according to the size of their split-level homes or the size of their welfare checks. We are faced with the fact that we are becoming a nation of plush suburbs on one hand and mid-city slums on the other.”

“Howe’s anger is directed at those ‘who live in a world of wall-to-wall carpeting, pleasant back yards, and summers at camp.  Such affluent families “forget that their neighbors in the central city have children who play in alleys and live six to a room.”  By the judicious use of Federal funds, the commissioner will compel them to remember.  His thought is to contrive “new boundary lines” that ignore county and city limits.  He would bring ghetto children to the suburbs and suburban children to the ghetto.  Or he would develop “educational parks” of perhaps 20,000 students, where a proper “cultural mix” could be imposed.

(Comment:  After 50 years, such “judicious use of Federal funds”, i.e., the  expenditure of hundreds of billions of dollars, ostensibly to help inner city children, those very children are considerably worse off than they were when Howe was delivering his speech.  Just ask their parents.  What actually happened was those children were used as the guinea pigs for experimentation with the Skinnerian mastery learning/direct instruction/OBE system, which eliminates competition, grades, etc. NOW going into ALL schools of the nation for full implementation of the international school to work agenda, through tax-funded school choice.  This tragedy deserves a Congressional investigation).  See Iserbyt “Experimentation with Minorities”, click here.

Does Mr. Trump have the above history? If he doesn’t, I sure hope the listener/reader will make sure he receives it before our nation is faced with another “education catastrophe”, this time the move to global work force training through tax-funded school choice with no elected boards.     The historical  information is found in  the deliberate dumbing down of america, 1999,  a free download at deliberatedumbingdown.com or in the updated/abridged version, 2011, available at amazon.com.

Donald Trump’s book “Crippled America” says very clearly that he supports school choice of all sorts.

The following statement on education from “Crippled America” Source: Crippled America, by Donald Trump, p. 53-4 , Nov 3, 2015

 “Let schools compete: charters, vouchers, and magnets.

Competition is why I’m very much in favor of school choice. Let schools compete for kids. I guarantee that if you forced schools to get better or close because parents didn’t want to enroll their kids there, they would get better. Those schools that weren’t good enough to attract students would close, and that’s a good thing.

For two decades I’ve been urging politicians to open the schoolhouse doors and let parents decide which schools are best for their children. Professional educators look to claim that doing so would be the end of good public schools. Better charter or magnet schools would drain the top kids out of that system, or hurt the morale of those left behind. Suddenly, the excellence that comes from competition is being criticized.”

The above quote indicates Trump does not understand the real purpose of tax-funded school choice, and that such choice has nothing to do with improving academics.  Is it possible he does not understand the 86-year Carnegie plan to use the schools to change America’s capitalist economic system to a planned (socialist/communist) economy? 

Maybe we can turn American support for tax-funded school choice around by telling the Moms and Dads that their children in tax-funded choice schools will have to share bathrooms with transvestites! What the government funds the government controls.

Everyone, including excellent educational researchers, are looking at the individual parts of the restructuring puzzle, not assembling the parts into a whole.  If they would take a look at the end result of the individual education reform changes put together, ever since 1930,  they would see a complete change in the USA form of government and economy taking place through education,  now, primarily through tax-funded school choice with unelected boards.  Many Americans do not know that school choice came from the left (UNESCO), is supported by the U.S. Chamber of Commerce, the NEA, et al,  and  that it is being implemented internationally.  Charters are in Russia and elsewhere.

This lifelong education system (creation of the New Soviet Man)  was called for by Carnegie in 1934 in Conclusions and Recommendations for the Social Studies.   This small book calls for using the schools to change USA’s capitalist economic system to a planned economy and in some cases to take our land.  Go to AmericanDeception.com and type Conclusions into search engine.

This lifelong education system is referred to by the National Alliance of Business, on its letterhead, as “Kindergarten to Age 80”.  Think about that.

The corporate fascist transformation was facilitated, amongst other very important Reagan Administration activities,  by President Ronald  Reagan’s Nation at Riskinitiative, the White House Private Sector Initiative, 1982, and the Reagan-Gorbachev and Carnegie-Soviet Academy of Science Agreements signed in 1985 which merged the two nations’ education systems.

UPDATE:

 Donald Trump’s Emerging Higher-Ed Platform

  http://www.slate.com/articles/life/inside_higher_ed/2016/05/donald_trump_s_campaign_co_chair_reveals_his_higher_education

“Once we get into office, we’re going to take a hard look at the Department of Education,” he said. “There are lots of things that serve people well, but there are many operations that do not. Civil rights is an important aspect of everything,” but students and colleges might get “better guidance and effectiveness” if we put it all “under one tent” at the Justice Department."

WHAT???????????????????????????????????????????????????????





 


Posted by Charlotte Iserbyt at 12:35 PM Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Friday, April 1, 2016
Patriots Or Manchurian Candidates?
                             concordiakoinonia.com

A WARNING FOR ALL PRESIDENTIAL CANDIDATES:

Check carefully track record of your education policy advisors.

This article is written for two reasons:

(1)  To provide evidence that President Reagan evidently was interested enough in the content of my 1982 letter to him to want to have a meeting with me regarding the need to abolish the U.S. Dept. of Education. This hard copy evidence, provided by the Ronald Reagan Library, was received by me March 22, 2016 in response to my Freedom of Information Request dated November 6, 2015.


"Dear Ed,
I can't check this with Dept. of Ed. for reasons that will be clear when you read it.  I feel though that maybe I should see this lady regarding the things she has brought up. Let's talk about this when I get back from this junket.
Ron"

(2)  To make available to all candidates for President of the United States of America information not only regarding the role of the U.S. Dept. of Education in the destruction of American academic education, but also to warn them not to surround  themselves with advisors whose agenda may not have anything to do with traditional education designed to create upward mobility for the children of our nation (our children!)

BACKGROUND

On November 6, 2015, I, Charlotte Thomson Iserbyt, after 33 years of wondering why I never received a response from President Reagan related to my July 2, 1982 letter to him,  decided to submit a Freedom of Information Request to the Ronald Reagan Library.

That FOI requested any and all information related to a lengthy letter I had written to President  Reagan after I was relieved of my duties working as Sr. Policy Advisor in the Office of Educational Research and Improvement, U.S. Dept., of Education.  My “firing” was  due to leaking a federal grant Better Education Skills through Technology to  Human Events, a Washington, D.C. weekly journal.  Human Events subsequently published a lengthy article (cover story) entitled “Secretary’s Technology Initiative: Bell’s Education Department Betrays Reagan Policies” in its May 22, 1982 issue.

(See bottom of post for article)

34 years have passed, years which, had the U.S. Dept. of Education been abolished, might have seen education remain traditionally academic, albeit considerably dumbed down:

(1)  not transformed to Skinnerian/Pavlovian/TQM Outcomes/Performance-based  lifelong global school-to-work agenda necessary to spin off profits for the global elite.

(2)  Education focused on academic competition, excellence, and upward mobility for our children.

(3)  Education focused on academic facts and knowledge, not destructive dumbed down, anti-American/U.S. Constitution, pro-globalist value change necessary for U.S. participation in a New Age/communist/fascist world government, aka UN Agenda 2030.

Now, as Paul Harvey would say:

“Here’s the rest of the story”.

What story? The story relates to the role of Edwin Meese III, White House Chief of Staff, closely associated with the late/ former U.S. Commissioner and U.S. Secretary of  Education T. H. Bell (who in 1975 wrote the very controversial bible (handbook) for administrators entitled "A Performance (OBE/outcomes based, ed) Accountability System for School Administrators" (available at Amazon.com); and the Heritage Foundation, which, apparently, with the assistance of Mr. Meese, kept President Reagan from meeting with Charlotte Iserbyt regarding her 1982 letter to Reagan requesting him to fulfill his promise to the American people to abolish the U.S. Dept. of Education.

My 1982 letter explained to the President what was going on in the U.S. Department of Education; basically that it was a Marxist research and curriculum development/dissemination factory, and that it had to be abolished.

The story you are about to read, the documentation from the Reagan Library, and the Don Lambro article should be passed on to any one of your favorite presidential candidates, as they go about selecting policy advisors and Cabinet secretaries, especially in regard to so-called “education”, the No.1 elephant in the room.  Media coverage and discussion of the history of the successful dumbing down  has been a “no no” over a period of 90 years.  It’s OK to give local front-page coverage to  the firing of the basketball coach, but don’t cover the new "Skinnerian animal training direct instruction reading method necessary for future workforce training" or  “globalist anti-American critical thinking” program.  That is, if you want to hold onto your job.

Our formerly excellent pre-1965 academic education  system has been restructured to replicate the outcome/performance-based Pavlovian communist Soviet, Cuban, Chinese, Finnish, Danish, German, et al polytechnical (workforce training) system.

This has happened due to the U.S. Office of Education and U.S. Dept. of Education taking orders from the following organizations: United Nations Educational, Scientific and Cultural Organization  (UNESCO), the Office of Economic Cooperation and Development (OECD), UN-associated non-governmental organizations, multinational corporations (public/private partnerships) and other alphabet soup tax-funded and tax-exempt foundations and American educational associations.  The transformation of education from academics to workforce training was facilitated by  the infamous 1985 U.S.-U.S.S.R. Education agreement, negotiated by President Reagan and  Gorbachev, and the Carnegie-Soviet Academy of Science Agreement, 1985. Both of these agreements were supported by the Heritage Foundation, and were the first very tangible real shots across the bow of our nation’s traditional academic education. 

I never received a response to that 1982 letter to President Reagan, although John Lofton, a  Washington, D.C. journalist and friend of mine, called Reagan's office and was informed by one of his aides that the President had the letter on his desk, had marked it up, and  was forwarding it to White House Chief of Staff Edwin Meese III.


After returning to Maine in July, 1982, I contacted Mr. Meese’s office and an appointment was made for me to meet with him or his assistant, Ken Cribb, to discuss what had happened to my letter and why I never received a response from the President.  My meeting with Mr. Cribb resulted in his patting me on the back and saying” “Charlotte, aren’t you pleased to know President Reagan received your letter?” to which I replied “That is not the point.  I simply want a response from President Reagan, indicating he received my letter...nothing more, so that I can tell the American people the President received my letter which told him all he had to know about the goings-on in the Department of Education and especially at the National Institute of Education, the office Ed Curran headed up and wanted to abolish!”

Background Paper on President Reagan and the U.S. Department of Education.pdf

By the way, it’s too late to abolish the Department now.  It has done what  it was created to do, which was what the Carnegie Corporation (deeply involved in restructuring of education from 1934-2016) called for in 1934, words to the effect:  “to use the schools to change America’s capitalist economic system to a planned economy, and in some cases, to take our land”. Go to www.americandeception.com and type in the word “Conclusions” and Carnegie’s little blue book “Conclusions and Recommendations for the Social Studies”, 1934, will pop up. 

Don’t fall for the recent Presidential candidates' and neoconservative organizations' recommendations to “abolish the U.S. Dept. of Education”.  This recommendation is a diversion designed to  fill their coffers and divert good, patriotic Americans from fighting the neoconservative/leftist UN Agenda 2030 at the local level.

The present global workforce training agenda cannot be implemented without the  Reagan Administration and Heritage Foundation’s long sought after tax-funded school choice/charter school agenda which calls for  the takeover of our traditional public schools by tax-supported school-to-work charter schools run by unelected councils and teachers/corporate types trained in Marxist Pavlovian/TQM pedagogy.

This article is primarily written to make known and to provide  actual “paper” evidence (above) that President Reagan, in writing,  suggested to Mr. Meese that he, Reagan, meet with me, referred to as “the lady” (I like that!) in order to discuss the content of my letter to him.

Mr. Meese, all the while closely connected with the Heritage Foundation,   convinced President Reagan that not only should the President not respond to my letter, but more importantly, that the President should not meet with me.

The only reason my letter got through to the President was that a good friend of mine who handled  White House staffing of the U.S. Dept. of Education with people instructed to bring down (abolish) the Department, hand-delivered it to Reagan!  So, it could well be the information in my letter did come as somewhat of a shock to Reagan and caused him to want to meet with me. 

After all,  and of utmost importance, Meese et al had made sure  Reagan never saw Edward Curran’s letter to Reagan which recommended his own office, NIE, be abolished. Reagan evidently had been kept in the dark.

The following article by Don Lambro, The Herald Journal, 6/19/1982,  explains that Meese was very close to  Secretary Bell (recommended T. H.  Bell to President  Reagan for Secretary of Education position), supported the firing of Edward Curran, and, in my humble opinion, was responsible for keeping Reagan in the dark regarding the Marxist goings-on at the Dept. of Education.  This was accomplished when he kept  the President from meeting with me,  and  subsequently deep-sixed my letter to Reagan.

Edward Curran was fired sometime during the period that I leaked to Human Events the federal grant entitled Project BEST (Better Education Skills Through Technology). After being fired for doing so, I wrote my letter to Reagan dated July 2, 1982.

Of significance is fact that  Curran's letter regarding getting rid of his own office (National Institute of Education:  the premiere Marxist research and development, and dissemination factory in the world ) was never delivered to President Reagan, unless Craig Fuller, who had been involved in supporting Curran's firing, finally delivered it to him, after the fact!  (See Lambro article below).

Here is text of Lambro's superb reporting on the firing of Edward Curran. Lambro’s article speaks volumes about the role of Edwin Meese III, closely associated with, over many years, the Heritage Foundation; and other White House staffers whose names will be familiar to anyone born pre-1950.

https://en.wikipedia.org/wiki/Donald_Lambro

The Herald Journal, 6/19/1982

Irony in a Firing by Don Lambro

The irony that Ronald Reagan's administration would fire a staunchly conservative agency head for suggesting that a wasteful bureaucracy be abolished never occurred to the White House last week.

The story behind the firing of Edward A. Curran, Director of the National Institute of Education, a little-known $53 million dollar a year agency in the U.S. Education Department, represents another example of the Reagan Administration's departure from Reaganism.  Curran, former headmaster of the Cathedral School for Girls was picked by Reagan last August to head the tiny agency that funds educational research.  But Curran soon discovered that NIE's research expenditures did little, if anything, to improve education.  Indeed, the agency has wasted hundreds of millions of dollars in nebulous, esoteric studies on "early American textbook collections", "sex role attitudes in young women an men", "women facing mid-career changes", "a legal study of American universities" and a "Study of sexism in school boards" to name a few.

Reagan Administration's departure from Reaganism

David Stockman (Director of OMB, ed) tried to defund NIE 1983 budget proposals but 11th hour appeal by T.H. Bell saved NIE from axe.  Decision to retain funding made by Meese "a close friend of Bell". 

Lynn Nofziger, former presidential advisor, suggested Edward Curran write to Reagan and gave Curran secret correspondence code available only to White House aides and Cabinet officials to be sure letter routed directly to President Reagan.  Nofziger's "fail safe" code did not work and letter  ended up on the desk of Craig Fuller, White House Secretary to the Cabinet and Richard Darman, Reagan's Special Asst. who controls paper flow to the President.

Curran's letter, written on NIE letterhead, said NIE's past research had been ideologically tilted toward the left; that it was based on false premise that education is a science..."  (scientific research based=Skinnerian/Pavlovian performnce based OBE operant conditioning, ed)

On June 1 Bell called Curran in and suggested Curran should resign voluntarily.  Bell said "How can you head an agency that you think should not exist?"  Said one high level govt. official who was shocked at Curran firing:  "One would think that Ronald Reagan's Govt. would be full of people heading agencies they think should not exist."

However, when Curran sought help of Helen Von Damm, a long time Reagan aide and an Asst. White House Personnel Director, she warned that unless he (Curran) worked out his differences with Bell, the White House would back Secretary Bell.

In a second meeting, which lasted for one hour on June 8, Curran and Bell reviewed the points of Curran's letter.  But Curran made it clear that he had no intention of recanting his views.  The next day Bell called Curran and informed him "I want you to stop functioning as Director by the close of business today."A follow up call from Ms. Von Damm informed Curran that the White House was sticking with Bell.

Said one White House aide who is sympathetic with Curran's position "It is a sad day when someone in our administration gets fired merely for suggesting that an unnecessary agency of govt. be eliminated."

Meantime, although Curran's letter never reached Reagan's desk, Craig Fuller told this columnist that it is now his intention "to forward it to the president and certainly to apprise him of it."

How Reagan responds will say much about the future of Reaganism in this administration." 

Copy of Human Events article:










Posted by Charlotte Iserbyt at 4:35 PM Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Wednesday, March 30, 2016
The Bottom Line

WAKE UP, CATHOLICS PART 11  included information found in this very important book.

FALSE DAWN: The United Religion Initiative, Globalism and the Quest for a One-World Religion is a very important book. It should be read by every Christian to understand how all earth's inhabitants are being led to world religious "Transformation".

Mr.Lee Penn’s all-encompassing book, with exhaustive facts and research, exposes the power and money of those promoting false unity which operates under banners such as “Ecumenism and “Pan-Religion” 

www.amazon.com


False Dawn

The United Religions Initiative, Globalism, and the Quest for a One-World Religion by Lee Penn

 
"The interfaith movement, which began with the 1893 World’s Parliament of Religions in Chicago, has grown worldwide. Although this movement has been largely unknown to the public, it now provides a spiritual face for globalization, the economic and political forces leading us all from nationalism to ‘One World’.

The most ambitious organization in today’s interfaith movement is the United Religions Initiative (URI), founded by William Swing, the Episcopal Bishop of California. Investigative reporter Lee Penn, a Catholic ex-Marxist, exhaustively documents the history and beliefs of the URI and its New Age and globalist allies, the vested interests that support these movements, and the direction they appear to be taking. The interfaith movement is no longer merely the province of a coterie of little-heeded religious idealists with grandiose visions. The URI’s proponents have ranged from billionaire George Soros to President George W. Bush, from the far-right Rev. Sun Myung Moon to the liberal Catholic theologian Hans Küng, and from the Dalai Lama to the leaders of government-approved Protestant churches in the People’s Republic of China.
 
The interfaith movement, including the URI, is being promoted by globalist and New Age reformers who favor erosion of national sovereignty, marginalization of traditional religions, establishment of ‘global governance’, and creation of a new, Earth-based ‘global spirituality’ – in effect, a one-world religion. Therefore, the URI and the interfaith movement are poised to become the spiritual foundation of the New World Order: the ‘new civilization’ now proposed by Mikhail Gorbachev, the last leader of the Soviet Union.
 
In The Reign of Quantity and the Signs of the Times, French metaphysician René Guénon spoke of the ‘anti-tradition’ (the forces of materialism and secular humanism) finally giving way to the ‘counter-tradition’ (the satanic inversion of true spirituality), leading to the regime of Antichrist. The ‘anti-tradition’ weakens and dissolves traditional spiritualities, after which the ‘counter-tradition’ sets up a counterfeit in their place. Since Guénon’s time, as is well known, anti-traditional forces have greatly advanced worldwide. It is less well-known that counter-traditional movements have also made great strides, and now stand closer to the centers of global political and religious power than ever before. The ‘counter-tradition’ is making inroads on the political and cultural Right, as much as it is doing on the Left.
False Dawn painstakingly documents these trends, and speculates on their future development. In so doing, the author takes investigative reporting to the threshold of prophecy, and gives us a stunningly plausible picture of the global religious landscape of the 21st century."

Available at  Amazon
Posted by Charlotte Iserbyt at 12:34 PM Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
WAKE UP, CATHOLICS PART 11
QUO VADIS ROMAN CATHOLIC LEADERS

Part III: PAN-ECUMENISM, FALSE UNITY, AND A ONE WORLD RELIGION
By Betsy Kraus



www.piercedhearts.org

"There is no greater enemy of the Immaculata and her Knighthood than today’s
Ecumenism which every Knight must not only fight against, but also neutralize through diametrically opposed action and ultimately destroy." (Saint Maximillian Maria Kolbe) 

With the arrival of "Neo-Modernism" and the idea that we are all one in the Holy Spirit, Unity in Diversity spread its wings. How much of this thought was embedded in the "Spirit of Vatican II" by theologians of that persuasion? By 2000, the Vatican Commission for Interreligious Dialogue released the following statement in their report entitled Presence and Actions of the Holy Spirit in the World and in Other Religions. In it they say:
"The Second Vatican Council has given some very clear guidelines also on this point, recognizing the presence and action of the Holy Spirit in the Church but also outside it, and above all in other religions."

ARE WE ALL CHILDREN OF GOD?


ormansennema.com

Because Modernism tells us that there is no separation between nature and grace, would it be inferred that all are endowed with Sanctifying grace through the Holy Spirit? Then even non-Christians would also be redeemed and therefore be Children of God. In the thought of Modernists, we are redeemed through the Incarnation and not the Cross.  If that would be true, then wouldn’t Ecumenism and Evangelization just become exercises in the
in the Universal Brotherhood of the Masons and Pan-religion organizations rather that conversion to the one true Catholic Church? Would membership in the Catholic Church even be necessary, or would we all just be members in a "Kingdom of God"?

Catholic Apologetics teaches the following regarding the Cross and atonement: "147) Christ offered Himself on the Cross as a true and proper sacrifice. (De fide.) 148) Christ by His Sacrifice on the Cross has ransomed us and reconciled us with God. (De fide.) 149) Christ, through His Suffering and Death rendered vicarious atonement [see objective and subjective - Ott p. 189] to God for the sins of man. (Sent. fidei proxima.) 154) Christ, through His Passion and Death, merited reward from God. (De fide.) "

Are "We are all children of God"? Catholic doctrine teaches that we become children of God only by adoption. We are adopted through baptism. Once baptized, those who were mere servants of God become children of God. It is then that the Holy Spirit indwells the souls of the just. [The church also teaches that those who are baptized, but reject the Church are also severed from the Holy Spirit.]

It is true that God is present in all men. He is present in a high manner because of the spiritual qualities of intellect and will present in every man. But only those who are baptized and in the state of Sanctifying Grace are capable of the "Divine Indwelling". [Our Quest for Happiness]

To understand all the truths of Catholic faith regarding the Holy Spirit, below are two of just many authoritative sources:
1. Pope Leo XIII’s Encyclical: Divinum Illud Munus. 2. Our Quest for Happiness: The Ark and the Dove: Book Three


traditionalaltarboy.wordpress.com


www.dailycatholic.org

It is a dogma of faith that no one can be saved outside the Church, yet she remains charitable and loving to those who are outside the Church. She says that those who are invincibly ignorant of Christ and his Church are not to be judged worthy of eternal punishment because of this ignorance.  For they are innocent in the eyes of the Lord of any fault in this matter.  God wishes all men to be saved and to come to a knowledge of the truth; and if one does what he can, God does not withhold the grace for him to obtain justification and eternal life.  But no one obtains eternal life if he dies separated from the unity of faith or from communion with the Church through his own fault.  If anyone is not in this ark while the flood rages he will perish. [Dormann, Part 1, page 1-2]

The Fundamentals of Catholic Dogma states:

"While the Holy Ghost is the soul of the Church, the lawfully organised visible commonwealth of the faithful is the body of the Church. Both conjointly form a coherent whole as do the soul and the body in man. 1 Cor. 12, I3: ‘In one spirit were we all baptized to one body.’ It follows from this that he who culpably persists in remaining outside the body of the Church cannot participate in the Holy Ghost, and in the life of grace effected by Him. St. Augustine says: "Only the body of Christ lives from the spirit of Christ. Willst thou then live of the Spirit of Christ? Then be in the body of Christ! (In loan tr. 26. 13.) ‘The Spirit does not pursue a separated member.’ (Sermon 267, 4. 4)" [pages 294-96]


Yet, in the minds of some in the Church, does there still reside a hope for some kind of "Universal Salvation"?

The words of Pope Leo XII exemplify Jesus’ love for all mankind. The Church wishes to bring all men into the body of the Church, as explained by St. Augustine. Christ established His Church, the Catholic Church, with His words to St. Peter, the first Pope. The Catholic Church is the institution that embodies the means of grace and salvation for all. Jesus did not establish many Churches with conflicting doctrines, He instituted one Catholic Church which invites and welcomes all to join her and share in her glory, beauty, and truth.

THE INSPIRATIONAL ST. FRANCIS DE SALES ORATORY, ST. LOUIS, MO.


en.wikipedia.org

In light of the clear Dogmatic teachings of the Church regarding the indwelling of the Holy Spirit, what is one to understand by the statements of Farther Catalamessa, Preacher of the Pontifical Household, in his Fifth Lenten 2016 Sermon? Father Cantalamessa, who has received "Baptism in the Spirit", says:

"The risen Lord is still doing the same thing today. He sends his Spirit and his charisms, often with the identical external manifestations, on believers of quite different churches, including those whose beliefs we had thought were the furthest from ours."

zenit.org

The "Religion of the Collective" and "the Brotherhood of man" cannot constitute the body of Christ. It can only constitute the religious indifferentism of Rousseau, the Enlightenment, and the occult tenets of the inheritors of Renaissance Alchemy and Neo-Platonism (i.e. Rosicrucianism, The Illuminati, Free Masonry, and Secret Societies.) Such concepts infiltrated the thinking of the Modernists. Then there emerged a "new" idea that the Paschal mystery holds true not only for Christians but for all men of good will.

FEELINGS OF THE HEART

www.anonymousartofrevolution.com

One of the tenets of Modernism is: "A spirit of reconciliation among all men through the feelings of the heart. Many and varied also are the modernist dreams of an understanding between the different Christian religions, nay, even between religion and a species of atheism, and all on a basis of agreement that must be superior to mere doctrinal differences." [Emphasis, Ed.]

Did such "heart feelings" create a thesis for Universal Salvation, which eliminated the distinction between Christians and non-Christians with regard to salvation? Such reasoning would make every man an "anonymous Christian" according to the teachings of Nouvelle theologian, Karl Rahner, and others who share his beliefs. Then all would be "Children of God".

If any of these novelties were incurred by the Spirit of Vatican II, it should be remembered that Vatican II had absolutely no authority whatsoever to change Church Dogma or divine revelation in the name of "Progress". Nor could Vatican II, nor any other council, override or cancel any previous Dogmatic teachings of the Church including those on the Holy Spirit and ecumenism.

MORTALIUM ANIMOS
ON RELIGIOUS UNITY: ENCYCLICAL OF POPE PIUS XI JANUARY 6, 1928

"Never perhaps in the past have we seen, as we see in these our own times, the minds of men so occupied by the desire both of strengthening and of extending to the common welfare of human society that fraternal relationship which binds and unites us together, and which is a consequence of our common origin and nature. For since the nations do not yet fully enjoy the fruits of peace -- indeed rather do old and new disagreements in various places break forth into sedition and civic strife -- and since on the other hand many disputes which concern the tranquility and prosperity of nations cannot be settled without the active concurrence and help of those who rule the States and promote their interests, it is easily understood, and the more so because none now dispute the unity of the human race, why many desire that the various nations, inspired by this universal kinship, should daily be more closely united one to another.

2. A similar object is aimed at by some, in those matters which concern the New Law promulgated by Christ our Lord. For since they hold it for certain that men destitute of all religious sense are very rarely to be found, they seem to have founded on that belief a hope that the nations, although they differ among themselves in certain religious matters, will without much difficulty come to agree as brethren in professing certain doctrines, which form as it were a common basis of the spiritual life."

infas.net

The Encyclical continues:

"For which reason conventions, meetings and addresses are frequently arranged by these persons, at which a large number of listeners are present, and at which all without distinction are invited to join in the discussion, both infidels of every kind, and Christians, even those who have unhappily fallen away from Christ or who with obstinacy and pertinacity deny His divine nature and mission. Certainly such attempts can nowise be approved by Catholics, founded as they are on that false opinion which considers all religions to be more or less good and praiseworthy, since they all in different ways manifest and signify that sense which is inborn in us all, and by which we are led to God and to the obedient acknowledgment of His rule. Not only are those who hold this opinion in error and deceived, but also in distorting the idea of true religion they reject it, and little by little. turn aside to naturalism and atheism, as it is called; from which it clearly follows that one who supports those who hold these theories and attempt to realize them, is altogether abandoning the divinely revealed religion." 

Are Ecumenical overtures, arising from the Pontifical Council for Culture, now to be extended to even the Masons? This statement from the article at Rorate Caeli Entitled "DEAR BROTHER MASONS" - Full Article on Catholic-Masonic Dialogue by Cardinal Ravasi -- And, exclusive, an answer by Card. Ravasi" might indicate that:

"These various declarations on the incompatibility of the two memberships in the Church or in Freemasonry, do not impede, however, dialogue, as is explicitly stated in the German Bishops’ document which had already listed the specific areas for discussion, such as the communitarian dimension, works of charity, the fight against materialism, human dignity and reciprocal knowledge."
The Church has repeatedly condemned Secret Societies and Free Masonry: "(3) Catholics who join the Masons are in the state of grave sin and may not receive Holy Communion and (4) no local ecclesiastical authority has competence to derogate from these judgments of the Sacred Congregation." 

Dennis Cuddy, Ph.D., informs us of the many deadly statements made by Masons concerning their beliefs and thoughts regarding the Catholic Church. In his book, Now is the Dawning of the New Age New World Order, he notes that the Freemason Albert Pike stated:




"There is no…independent and self-existent Evil Principle in rebellion against God…Evil is merely apparent: and all is in reality good and perfect." Cuddy continues with regard to Masonic leader Giuseppe Mazzini’s comments in 1856: "‘…we have applied the Chisel to the last refuge of superstition, and the Vatican will fall beneath our vivifying Mallet. He urged Masons ‘to scatter the stones of the Vatican as to build with them the Temple of Emancipated Nation.’" 

His Holiness, Pope Clement XII commanded that there be no intercourse with secret sects and societies in his Pontifical Constitution. In Eminenti , written in 1738, he forcefully condemned Masonry and all such sects and societies forever! Since then Popes have repeatedly warned against them.

Pope Pius IX spoke out against them in no uncertain terms when he wrote of the Synagogue of Satan. [Miller]   

Obviously it is not the Roman Catholic Church that has plotted Ecumenism and a One World Religion. Who are real the purveyors of a One World Religion? It is they who must have a One World Religion to ensure a One World Order. The Popes have exposed the methods and tenets of those pernicious seeds and Secret Societies that attempt to destroy the Catholic Church and Christian civilization. Yet could some in the Church have forgotten these warnings?

 Astana, Kazakhstan July, 2009: A Brotherhood of Mankind  
www.mormonnewsroom.org

UN SecretaryGeneral Ban Kimoon addressed the Kazakhstan world religious leaders in 2015. The U.N. is a member of this organization at Astana.
One of the many organization under the umbrella of the U.N. octopus is the Council of the Spiritual Caucus of the U.N. See what the U. N.’s other ecumenical-style organizations, including the Findhorn Foundation, Gaia Education, Operation Peace through Unity, and the United Religions Initiative at the United Nations present for world consumption. It is shocking that Catholics are involved in the United Religions Initiative.

In "False Dawn: The United Religions Initiative, Globalism, and the Quest for a One-World Religion," by Lee Penn, we are advised of the nature of the United Religious Initiative (URI), as well as the staggering money and power backing this as well as other U. N. organizations .[see page 441] Penn demonstrates the similarity between the URI and the 1910 radical French Catholic Sillon movement that was condemned by Pope Pius X in his encyclical Notre Charge Apostolique. In this encyclical, the Holy Father exposes the evils of a One World Religion and radical "Social Justice".

"We ask Ourselves, Venerable Brethren, what has become of the Catholicism of the Sillon? Alas! this organization which formerly afforded such promising expectations, this limpid and impetuous stream, has been harnessed in its course by the modern enemies of the Church, and is now no more than a miserable affluent of the great movement of apostasy being organized in every country for the establishment of a One-World Church which shall have neither dogmas, nor hierarchy, neither discipline for the mind, nor curb for the passions, and which, under the pretext of freedom and human dignity, would bring back to the world (if such a Church could overcome) the reign of legalized cunning and force, and the oppression of the weak, and of all those who toil and suffer. 

But stranger still, alarming and saddening at the same time, are the audacity and frivolity of men who call themselves Catholics and dream of re-shaping society under such conditions, and of establishing on earth, over and beyond the pale of the Catholic Church, "the reign of love and justice" with workers coming from everywhere, of all religions and of no religion, with or without beliefs, so long as they forego what might divide them - their religious and philosophical convictions, and so long as they share what unites them - a 'generous idealism and moral forces drawn from whence they can'...

...We fear that worse is to come: the end result of this developing promiscuousness, the beneficiary of this cosmopolitan social action, can only be a Democracy which will be neither Catholic, nor Protestant, nor Jewish. It will be a religion (for Sillonism, so the leaders have said, is a religion) more universal than the Catholic Church, uniting all men become brothers and comrades at last in the "Kingdom of God". - "We do not work for the Church, we work for mankind." 

Penn exposes the occult, Communistic, New Age elements embodied in the U.N., UNESCO, The Earth Charter, and the URI. He addresses much of this evil with exhaustive facts and research and in light of the teachings of the Popes throughout the ages.  

Let us remember that Robert Muller, former Secretary General of UNESCO, subscribed to Alice Bailey’s New Age transformation of mankind. Muller was the keynote speaker at the 1985 National Catholic Education Association (NCEA) convention in St. Louis, entitled Gateway to Global Understanding.

Muller was deeply influenced by the Nouvelle Theologian, Teilhard de Chardin. It was Muller who wrote the book, the New Genesis: Shaping a Global Spirituality, in which he states:

"Once again, but this time on a universal scale, humankind is seeking no less than its reunion with the ‘divine,’ its transcendence into ever higher forms of life. Hindus call our earth Brahma, or God, for they rightly see no difference between our earth and the divine. This ancient simple truth is slowly dawning again upon humanity. Its full flowering be the real, great new story of humanity as we are about to enter our cosmic age...." SRC

One can readily see that the Spiritual Caucus, Gaia Education, and other such U. N. organizations are examples of transforming consciousness which promote the Pan-Religion of the gnostic and pantheistic tenets of Teilhard de Chardin, Robert Muller, et al. They have assisted in unleashing their New Age and Neo-Modernism upon the world and on the world’s students. Such Modernistic mind-sets would seem to echo Joachim’s concept in which all in the Age of the Spirit would be spiritualized, transformed, and unified. With such fallacies, can we assume that there is a concerted pursuit of a Spiritual Communism, a Masonic brotherhood of man, and a New Age transcendence? Would the hierarchical institutional Church become moot if such a pursuit would actually transpire?

If the institutional Church is discarded, wouldn’t her Dogma and Doctrine also have to be rejected? We have already briefly glimpsed the pursuit of "direct contact" with God through Baptism of the Spirit and a personal relationship with Jesus. These concepts have the potential to make the Church and her vital Sacraments peripheral. In light of a New Age of the Spirit, what is the message of ecumenical world councils? Could they convey a coming One World Religion through Universal Salvation, Anonymous Christians, and no separation of nature and grace, making all supernatural in a transcended Age of the Spirit?

DE LUBAC BOOK CONDEMNED FOR ERRORS
 www.amazon.com

What do the following comments by the leading Nouvelle Theologian, Cardinal Henri de Lubac, author of the condemned book on the supernatural, suggest?

"Just as the Jews for so long have placed all their hope not in individual rewards after death, but in the collective destiny of their race and the glory of their earthly Jerusalem, likewise, all the hopes of the Christian should tend toward the coming of the kingdom and the glory of the one Jerusalem .... Spiritualized and universalized, according to the words of the prophecies themselves, Judaism transmits to Christianity its conception of an essential social salvation." 

By Social Salvation does de Lubac mean Ecumenism and Social Justice as a means to attain a Joachim-like perfect society on earth? How much of such a concept includes Liberation Theology and Collective Salvation? According to one source, Social Justice and "the Social Gospel preached in its purity demands more than social service." Social Salvation also includes establishing a kingdom of heaven here on earth. The whole community must be saved to accomplish social reconstruction, and Social Salvation. Individual salvation is not enough to bring about the perfect society. Are we seeing vague hints in de Lubac’s writings which could possibly support a Protestant-style New Apostolic Reformation and/or a Jewish Mosaic or Noah ide Law Theocracy? (C.S. Lewis calls Theocracy the worst of all governments). Is there any comparison between essential social salvation, spiritualized and universalized, the Sillon movement and the Spiritual socialism of 19th century Transcendentalism, or Spiritualism, direct knowledge of God, with the transformational learning and teaching apparently existing in Catholic circles?

A brilliant study entitled Nostra Aetate Dolorosa, by William P. Fall, devastates the falsehoods of Ecumenism, Judaic and otherwise. He exposes the errors of "The Universal Masonic Brotherhood of Man", and he does this with the irrefutable truths of the Catholic Church.

An article written in 1976 entitled "Merger of TM and Catholicism" stated that Transcendental
Meditation was simply the Spiritual Socialism of Saint-Simon, Fourier, etc. [Miller]


THE ONE WORLD RELIGION OF SPIRITUAL TRANSCENDENTAL SOCIALISM
 missiongalacticfreedom.wordpress.com

Note the Tower of Babel in the background of the above image:

Dr. Cuddy states: "The Babylonians in The Holy Bible were known for their rebellion against God, and even before Babylonia existed, the Babylonians’ ancestors built the Tower of Babel as a rebellion against God. Recently, there was a European Community poster showing their rebuilding of the Tower of Babel today…, and it is modeled after 16th century artist Pieter Bruegel’s painting of the Tower of Babel, with the added slogan "Europe: Many Tongues, One Voice." The building in which the Secretary-General of the Council of the European Union (Javier Solana) is located also looks like the Tower of Babel." (Emphasis added)

EUROPE; MANY TONGUES ONE VOICE

 missiongalacticfreedom.wordpress.com
Can a One World Religion to accompany a one world Tower of Babel be attained through "inner transcendence" in which the human soul encounters the God of infinite majesty? Would this kind of "inner transcendence" surpass all historic religions? Can the "Pentecostalism of the Spirit" and "Baptism of the Spirit" subscribed to by Nouvelle Theologian, Cardinal Yves Congar, be a part of the movement for "Inner transcendence"?

                           
"Congar advocated being "born again, a term often used by Pentecostals and those of that persuasion. The following quote identifies his concept of ‘twice born’…. ‘There are the people who received ‘a kind of revelation’, a new birth; they have discovered a new personal set of values and a kind of change has come over their lives. They live their lives no longer in conformity to received ideas of the social milieus but according to their own personal convictions.’"

How could Christianity possibly evolve into the One World religion of Babylonian Mystery Religions? Answer: the Hegelian Dialectic!
In a report entitled Father Teilhard de Chardin: Father of the New Age Movement we read: "…the author of the essay ‘Lucifer Rising’, Philip Jones, suggests that there is an: "Hegelian Dialectic to combine a form of Christianity as thesis, with a pagan spiritualism as antithesis, resulting in a synthesis very akin to the Babylonian Mystery Religions." 

PERSONAL RELIGIOUS EXPERIENCE
  slideplayer.com

In a lecture on Modernism and Modern Thought by Father J. Bampton, S. J., there is revealed this same "personal experience" error of Modernism. Father Bampton says:

"We said at the beginning that a Catholic would agree with Modernism that the Christian revelation means ‘Christ made known to man,’ but would disagree with him when it came to answering the question: how made known? We have just seen how the Catholic answers that question. His answer is: Made known by the Church, by the Church a teaching body, by the Church an external agency’. The Modernist would answer: ‘Not so, but by an inward, personal, religious experience." [Emphasis added]

What happens when Catholics are separated from Dogma and Doctrine of the Catholic Church? Does immanentism occur? This was discussed in Part II by Dr. Boyd in speaking of a personal relationship with Jesus. Father John Hardon, in writing on the subject of immanentist apologetics, refers to it as:

"‘A method of establishing the credibility of the Christian faith by appealing to the subjective satisfaction that the faith gives to the believer.’ Coupled with this emphasis on the subjective, there is a downplaying of the objective criteria of our faith... Purely personal motives for faith, motives that have mainly to do with feelings, are given primary of place. ‘Religion, therefore, would consist,’ Father Bouyer remarks, ‘entirely in the religious feeling itself.’ Reason is marginalized, and the idea of belief, as being essentially the assent of the intellect, loses its currency…Immanentism may be summed by saying that it represents a stance of reckless subjectivism with regard to the faith. It cavalierly dismisses, as being of only secondary importance, the objective foundations of religion, as revealed to us by God Himself and as incorporated in the deposit of faith." [Emphasis added]


    
www.dailycatholic.org

If the Theological Virtue of Love is taught with little or no emphasis being placed on Faith and Hope, can that omission further encourage "subjective feelings" of the heart at the expense of engaging the intellect and will where the Holy Spirit dwells? Because "Love" suggests "feelings", can Love without Faith and Hope foster the subjectivism of immanentism and, through feelings of "a brotherhood of love", lead to a brotherhood of a One World Religion? Love is the greatest virtue of all, but Faith and Hope are essential in order to possess Love. The Church teaches that Faith precedes both Hope and Love.

"Theological virtues direct man "in the same way" the other virtues direct man—namely, "in respect of his reason" and "through the rectitude of the will which tends naturally to good as defined by reason" (ST I-II.62.3).  First the intellect receives supernatural principles held by a Divine light; these we call "the articles of faith."  Secondly, "the will is directed to this end, both as to the movement of intention … [and this belongs to] hope, and as to a certain spiritual union, whereby the will is, so to speak, transformed into that end—and this belongs to charity" (Ibid.)

LOVE, LOVE, LOVE






 
outlava.com

The Holy Spirit is Love. If He inspires the hearts of the faithful it is because He dwells in the intellect and the will through Sanctifying Grace. But Is "Love" being encouraged for ecumenical religious convergence through Baptism of the Spirit, inner-transcendence and "a personal relationship with Jesus"? We know that all grace and supernatural habits and powers of Holy Spirit proceed into the faculties of the soul - the memory, the intellect and the will through Baptism and Sanctifying Grace [Our Quest for Happiness] rather than through "feelings of the heart". However, terms such as contemplation and transcendence, which can bypass the intellect and the will, appear to be increasingly popular in Catholic circles, and even Catholic educators are now promoting contemplation in the classroom. 
One of the workshops at 2015 National Catholic Education Association Conference in Orlando, Florida was entitled: Contemplative Practice: The Distinctive Role of the Catholic Education. Reflect and implement contemplative practice.


Paul Tratnyek with the illuminate the Christian Meditation Movement for Children now growing in Australia and Canada is helping to lead a Colloquium on Leadership, Contemplation and Innovation at Dayton University. Tratnyek is a Professor in the Institute of The Environmental Health Department of the Oregon Health and Science University. (OHSU)

"OHSU Institute of Environmental Health believes preventive medicine starts with a healthy environment. There is overwhelming evidence that human activities and global climate are affecting environmental health and sustainability. Increasingly, these consequences are causing serious implications for human health. IEH believes that predicting and steering environmental change will be a critical component of health care in the future."

Are school children learning Christian meditation or Transcendental "medication"?

www.atheistrepublic.com

View Paul Tratnyek’s Video on Christian Meditation. Note the children and their crossed legs, posture, position of hands, and use of the Mantra, Maranatha, – all employed in Yoga and Eastern Mysticism. The cross-legged sitting position aligns the Chakras including the 4th Chakra, the Heart Chakra, the well spring of love. Such practices can induce altered states for a "heart centered God" and listening to the" voice of God". Note the constant reference to "relaxation". [Why is the pro-gay marriage former Anglican Archbishop of Canterbury, Rowan Williams quoted at the end of the video?]  

 
Perhaps for a better understanding of the effects of "Christian Meditation" on children, the Society for Quality Education seems to have a fairly clear explanation:
"Meditation helps people pay attention and concentrate. In this regard, meditation has been particularly effective helping children with learning and attention-deficit hyperactivity disorders…After meditation, the children in the studies showed an increased ability to concentrate and listen, greater self-discipline regarding physical movement…and emotional outbursts… "Children need more meditation and less stimulation"…Teachers reported improved behavior in difficult children. Yet no one suggests it was a ‘cure-all’ practice…the health benefits of mediation are well documented: it can relieve stress, lower blood pressure, and alleviate depression… Psychiatrist Jonathan Champion said research showed most mental health problems have begun by the age of 14. Giving children periods of quietness and reflection to promote wellbeing could save money on healthcare later."

Such contemplation and meditation would seem to have more to do with "mental health" and "learning" (Agenda 2030 and Common Core?) than true contemplation and Catholic mysticism’s "Three Ways" of purgation of sin, illumination, and union with God. If true mysticism or contemplation is being offered in the classroom then each student would have to have a spiritual adviser for guidance and for protection from the dangers of false spirits. Could such terms of contemplation etc. perhaps be euphemisms to denote socialistic "transformational teaching and learning" based on techniques of behavioral transcendence, promoting Agenda 2030? Contemplative practices were recommended in 2007 for Catholic children by a leading Catholic educator. 
This should not be surprising as The United States is listed as a member of the Socialist/Marxist U.N.’s agenda through their membership in the globally inclusive Catholic International Education Office. This office is a part of UNESCO, which promotes Robert Muller’s New Age World Core Curriculum. Here the Catholics share aims with UNESCO. Again, Robert Muller was the key note speaker at the National Catholic Education Association’s Convention in St. Louis in 1985.
Sir Julian Huxley was the first Director General of UNESCO. He was an evolutionist, a eugenicist, a Humanist, a supporter of Planned Parenthood and an internationalist. He said: "…the UN cannot base itself on any one religion, and, as no single religion can solve world problems, the only answer is a vast synthesis of all religions as the spiritual foundation of the U.N." [Emphasis added] [page3]
THE WORLD COUNCIL OF CHURCHES AND THE UNITED KINGDOM OF GOD

It was the Pontifical Council for Promoting Christian Unity that opened the doors to the World Council of Churches’ ecumenical movement. 
"The Council also finally opened the door for official cooperation between the World Council of Churches’ Secretariat on Faith and Order and the Vatican’s Secretariat for Promoting Unity." Read Chris Jackson’s reports regarding such a movement in his series entitled Why Ecumenism is Solemn Nonsense:  Parts I through V.

A One World Synarchy


 www.amazon.com

A Study in Syncretism: The Background and Apparatus of the Emerging One World by John Cotter

Although not an official member of the World Council of Churches (WCC), the Catholic Church has had Pontifical Councils very active in or with the World Council of Churches for apparently many years through various inter-religious programs. The Roman Catholic Church and the WCC are in constant dialogue with atheists, agnostics and Communists. [Cotter]  

To understand the syncretistic goals of the World Council of Churches, the meaning of the "Kingdom of God", and the promotion of an "Earth Religion", one should be aware of the comments made by the WCC guest speaker, German Reformed Theologian, Jürgen Moltmann, and his theological and ecumenical views featured at a World Council of Churches site:  

"Moltmann warned against placing ultimate confidence in the institutional churches as we see them today. "The vision and hope of the ecumenical movement is not in the church, but in the kingdom of God. We must open ourselves up to the surprises of the future." [Emphasis added]

"Encouraging the imagination of his listeners, he contrasted the traditionalist churches of the West that arose in the Constantinian era of empire and domination with emerging non-Constantinian churches, especially arising in Asia, Africa and Oceania. These are "minority communities organized as an enterprise," relying on the support of the Holy Spirit and introducing new forms of spirituality." [Emphasis added]

"We need a new spirituality of our senses," said Moltmann, "advancing a spirituality that takes the world seriously, moving toward a commitment to ‘earth religion.’ He applauded what he characterized as this ‘ecological turn to theology.’"

"Politically, earth religion creates greater commitment to this life, this earth. (Emphasis added)


EARTH RELIGION?

www.pinterest.com

Moltmann calls for "An ecological turn in theology". How much of Moltmann’s earth religion has been assimilated into current Catholic Church thought? The Catholic Church has always taught that she, the Bride of Christ founded by Jesus Christ, is purely religious for the sanctification of the eternal salvation of souls. She has per se no political, economic, social or purely cultural goals to achieve. Nor are such programs found in the gospel.  Her mission is the Christianization of cultures. [Dormann] 


Don’t these comments of Moltmann seem to be the Joachim-like visions for a demise of the Church? Might we speculate that the "earth religion" is embodied in the goals of U. N. Agenda 2030?Do not take the Masons, the U. N., and the ecumenical "earth religion" people lightly: In one of his reports, Dr. Dennis Cuddy says:



"’The plan’ includes a ‘Federation of Nations’ that would be taking rapid shape by 2025 A.D., and there would be a ‘synthesis in business, in religion, and in politics,’… But the seventh Ray Aquarian Age would be dominated by ‘Masons. Financiers. Great Businessmen and organizers of all kinds.’ [Perhaps community organizers? Ed.] Bailey explained that Masonry emanated from Shamballa, and that on the seventh Ray there would be ‘Your Masonic opportunity and your ability to organize and rule…’ Connecting Masons, Lucifer, and the Aryans of Shamballa, leading Masonic philosopher Manly P. Hall in The Lost Keys of Freemasonry (1923) revealed that ‘the seething energies of Lucifer are in his [the Mason’s] hands.’"

What does the Catholic Church really teach regarding unity and Ecumenism? Anything less that uniting others in the true faith is a blending of religions for unity in the name of "peace".

Our faith teaches us that true unity, the unity of faith of the Church is destroyed through heresy, and the unity of communion is broken through schism. On that basis, the only hope for restoration of the ruptured unity among Christians lay in conversion, in the return to the fold of the Catholic Church, which is the body of the Church as explained by St. Augustine.  
 
As Catholics, we are all called on to defend Holy Mother Church (the Church Militant), but if we do not understand the forces of Modernism, Nouvelle Theology, and occultism pounding at the gates of Holy Mother Church, we cannot defend her. If we do not understand these attacks, we will not be able to see the false church rising, which Bishop Athanasius Schneider, of Astana, Kazakhstan warned about and was cited in Part I of Quo Vadis.

At Astana’s Illuminati pyramid, where Catholic and other world religious leaders meet, multiple fluttering doves are etched into the glass at the pyramid’s occult apex. Does this suggest not one but many religions are in possession of the Holy Spirit and are converging together into the "heavens"? The Apex of the pyramid represents heaven. The "floating" apex over the pyramid on our dollar bill is to be joined to the pyramid when all religions and worlds have converged and we have transcended into one.


The Palace of Peace and Reconciliation at Astana 
www.redicecreations.com




yooniqimages.com www.diomedia.com
Doves at the Apex of the Astana Palace of Peace and Reconciliation
 Bishop Athanasius Schneider had already warned us that a false religion is rising within the Catholic Church. In an even more recent and exclusive interview with Rorate Caeli, discussing the "POST-SYNOD CHURCH & UNBELIEVERS IN THE HIERARCHY", Bishop Schneider said,

"The ever growing phenomenon that those who don’t fully believe and profess the integrity of the Catholic faith frequently occupy strategic positions in the life of the Church, such as professors of theology, educators in seminaries, religious superiors, parish priests and even bishops and cardinals."


He called those who don’t fully believe and profess the integrity of the Church wolves in sheep's clothing, cowardly rabbits, and semi-heretical.

catholic4lifeblog.wordpress.com
Cardinal Burke points to several ways to assist in the restoration of the Church, which Rorate Caeli summarized regarding overcoming the crisis:

"As pointed out by His Eminence, there are two necessary paths in order to overcome the crisis in which we are these days. What are the paths? ‘The first one is the deepened and thorough catechesis taught from an early age to adulthood, which will give an explanation of faith. Today, we encounter situations when people who want to defend their faith lack expertise and knowledge of the principles. The second path is the need to restore the sacred dimension of the liturgy, which should be built on the fundamental principle that it's not us that creates the liturgy, but it is an act, action and activity of Christ. This principle may be emphasised with all of the details regarding the liturgy, as well as the decoration of the church. Let us always remember that Christ acts in the liturgy’, Cardinal Burke preached."

St. Alphonsus said: "The devil has always striven to deprive the world of the Mass by means of heretics, constituting them the Precursors of Antichrist whose first efforts shall be to abolish the Holy Sacrifice at the Altar; and according to the prophet Daniel his efforts will be successful in punishment of the sins of men…And strength was given him (Antichrist) against the continual sacrifice because of sins’" [Miller]
Understanding the meaning of the Unbloody Sacrifice of the Mass and Holy Communion are imperative for a Catholic.
Hopefully the Holy Mass is still defined as "the unbloody Sacrifice at the Altar". Do the current definitions for Mass such as a Eucharistic celebration, feast, or supper still convey the meaning of Mass as the unbloody Sacrifice at the Altar? 

Pope Leo XII in "Quo Gaviora" addressed all Patriarchs, Primates, Archbishops and Bishops of the Catholic Church:
 
"I entreat you to become penetrated of the Strength of the Spirit of God, His Intelligence and His Virtue, in order to escape being likened to the Mute Dogs who, unable to bark, leave our flocks exposed to the voracity of beasts roaming the fields. Let nothing stop us, in the fulfillment of our duty which enjoins us to suffer all kinds of combats for the Glory of God and the salvation of souls…"
With the pursuit of Pantheism, Gnosticism, and false world systems, then combined with "evolution" and scientific engineering, is the final goal the new pagan androgynous god-man atop the Tower of Babel?
  arcticcompass.blogspot.com
"…life forms and gender will be blurred in the idea of evolution from molecule to ape to man and woman to transgender to androgynous god-man. In the same way, all distinctions between good and evil, nations and religions will be merged in the chiliastic vision of worldly purification…
"With creation ex nihilo virtually replaced by the evolution god it is now believed that men have not fallen from perfection but are instead gradually evolving upward from their ape beginnings toward greater and greater spiritual perfection." [Source]                                                                  
   PLEASE PRAY FOR OUR CHURCH, OUR POPE, AND OUR CHURCH LEADERS

ST. MICHAEL THE ARCHANGEL DEFEND US IN BATTLE 
 
www.flickriver.com
 

 
The message of Fatima


Related links:
WAKE UP, CATHOLICS PART 10
WAKE UP, CATHOLICS PART 9

ABCs of DumbDown: CONTINUATION OF WAKE UP CATHOLICS ...

ABCs of DumbDown: Wake Up, Catholics, Part 7

ABCs of DumbDown: NOUVELLE THEOLOGY

MODERNISM AND NOUVELLE THEOLOGY
  
The Theology of Community Organizing
 
The People's Church
 
Cookie Cutter Common Core & Private Education

Wake Up, Catholics

 

  





 


















 














 
 

 
 



 
 
 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Posted by Charlotte Iserbyt at 9:20 AM Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Older Posts Home
Subscribe to: Posts (Atom)
Contributors

    Charlotte Iserbyt
    Webmaster

Blog Archive

    ▼  2016 (7)
        ▼  July (1)
            Required Read for Anyone Interested in the Future ...
        ►  May (1)
        ►  April (1)
        ►  March (4)

    ►  2015 (297)

    ►  2014 (326)

	
Simple theme. Theme images by dino4. Powered by Blogger. 



Skip to main content
Full text of "The deliberate dumbing down of America : a chronological paper trail"
See other formats

I the 
deliberate 
dumbing 
down 
of america 



Charlotte Thomson Iserbyt 



the 
deliberate 
dumbing 

down 
of america 

A Chronological Paper Trail 

by Charlotte Thomson Iserbyt 

Conscience 
Press 

Ravenna, Ohio 



Copyright 1999. Conscience Press. All rights reserved. 
First printing, September 1999 
Second printing, February 2000 

Published in 1999. 
Printed in the United States of America. 
Acid-free paper. Archival quality. 

Library of Congress Catalog Card Number: 98-89726 
ISBN: 0-9667071-0-9 



Conscience Press • P.O. Box 449 • Ravenna, Ohio • 44266-0449 



Printed by The Athens Printing Company, Athens, Georgia 
Graphic design by Colin Leslie 
Cover design by 3-D Research Company 
Index compiled by Kari Miller 
Cartoons created by Joel Pett, Herald Leader of Lexington, Kentucky 



This book is dedicated to my late mother and father, Charlotte and 
Clifton Thomson, wonderful parents who devoted much of their 

lives to public service, and to my late great aunt, Florence Stanton 
Thomson, whose generosity enabled the writer to undertake the 
research, writing, and publishing of this book. 

It is also dedicated to my husband, Jan, and two sons, Robert and 
Samuel, whose tolerance of Mom's activism and frequent absences 

from home over a period of thirty years allowed the writer to 
pursue her search for the truth. Jan's gourmet cooking lifted our 
spirits and kept us all from starving! Without the men's patience, 
humor, and moral support, this book could not have been written. 



v 




IN MEMORIAM 

This book is a small tribute to the late Honorable John M. Ashbrook, 
17 th Congressional District of Ohio, whose work in Congress during the 
1960s and 1970s exposed the treasonous plans which ultimately led to the 
internationalization and deliberate dumbing down of American education. 



vii 



TABLE OF CONTENTS 



1 THE SOWING OF THE SEEDS: 

late eighteenth and nineteenth centuries 

2 THE TURNING OF THE TIDES: 
early twentieth century 

3 THE TROUBLING THIRTIES 

4 THE FOMENTATION 
of the forties and fifties 

5 THE SICK SIXTIES: 
psychology and skills 

6 THE SERIOUS SEVENTIES 

7 THE "EFFECTIVE" EIGHTIES 

8 THE NOXIOUS NINETIES 



foreword xi 

preface xiii 

acknowledgments xxiii 

introduction xxv 



1 

7 

17 
27 

55 

93 
159 
265 



afterword 455 

resources 461 

glossary G-l 

appendices A-l 

index 1-1 



ix 



FOREWORD 



Charlotte Iserbyt is to be greatly commended for having put together the most formidable 
and practical compilation of documentation describing the "deliberate dumbing down" of 
American children by their education system. Anyone interested in the truth will be shocked 
by the way American social engineers have systematically gone about destroying the intellect 
of millions of American children for the purpose of leading the American people into a socialist 
world government controlled by behavioral and social scientists. 

Mrs. Iserbyt has also documented the gradual transformation of our once academically 
successful education system into one devoted to training children to become compliant 
human resources to be used by government and industry for their own purposes. This is how 
fascist-socialist societies train their children to become servants of their government masters. 
The successful implementation of this new philosophy of education will spell the end of the 
American dream of individual freedom and opportunity. The government will plan your life 
for you, and unless you comply with government restrictions and regulations your ability to 
pursue a career of your own choice will be severely limited. 

What is so mind boggling is that all of this is being financed by the American people 
themselves through their own taxes. In other words, the American people are underwriting 
the destruction of their own freedom and way of life by lavishly financing through federal 
grants the very social scientists who are undermining our national sovereignty and preparing 
our children to become the dumbed-down vassals of the new world order. It reminds one of 
how the Nazis charged their victims train fare to their own doom. 

One of the interesting insights revealed by these documents is how the social engineers 
use a deliberately created education "crisis" to move their agenda forward by offering radical 
reforms that are sold to the public as fixing the crisis — which they never do. The new reforms 
simply set the stage for the next crisis, which provides the pretext for the next move forward. 
This is the dialectical process at work, a process our behavioral engineers have learned to 



xi 



Foreword 



use very effectively. Its success depends on the ability of the "change agents" to continually 
deceive the public which tends to believe anything the experts tell them. 

And so, our children continue to be at risk in America's schools. They are at risk 
academically because of such programs as whole language, mastery learning, direct 
instruction, Skinnerian operant conditioning, all of which have created huge learning 
problems that inevitably lead to what is commonly known as Attention Deficit Disorder 
and the drugging of four million children with the powerful drug Ritalin. Mrs. Iserbyt has 
dealt extensively with the root causes of immorality in our society and the role of the public 
schools in the teaching of moral relativism (no right/no wrong ethics) . She raises a red flag 
regarding the current efforts of left-wing liberals and right-wing conservatives (radical center) 
to come up with a new kid on the block — "common ground" character education — which 
will, under the microscope, turn out to be the same warmed-over values education 
alert parent groups have resisted for over fifty years. This is a perfect example of the 
Hegelian Dialectic at work. 

The reader will find in this book a plethora of information that will leave no doubt in 
the mind of the serious researcher exactly where the American education system is headed. 
If we wish to stop this juggernaut toward a socialist-fascist system, then we must restore 
educational freedom to America. Americans forget that the present government education 
system started as a Prussian import in the 1840's-'50's. It was a system built on Hegel's belief 
that the state was "God" walking on earth. The only way to restore educational freedom, 
and put education back into the hands of parents where it belongs, is to get the federal 
government, with its coercive policies, out of education. The billions of dollars being spent by 
the federal government to destroy educational freedom must be halted, and that can only be 
done by getting American legislators to understand that the American people want to remain a 
free people, in charge of their own lives and the education of their children. 



xii 



PREFACE 



Coexistence on this tightly knit earth should be viewed as an existence not only without 
wars. . . but also without [the government] telling us how to live, what to say, what to think, 
what to know, and what not to know. 

— Aleksandr Solzhenitsyn, from a speech given September 11, 1973 1 

Educated men are as much superior to uneducated men as the living are to the dead. 

—Aristotle, 384-322 B.C. 2 

For over a twenty-five-year period the research used in this chronology has been collected 
from many sources: the United States Department of Education; international agencies; state 
agencies; the media; concerned educators; parents; legislators, and talented researchers with 
whom I have worked. In the process of gathering this information two beliefs that most 
Americans hold in common became clear: 

1) If a child can read, write and compute at a reasonably proficient level, he will be 
able to do just about anything he wishes, enabling him to control his destiny to the 
extent that God allows (remain free); 

2) Providing such basic educational proficiencies is not and should not be an expensive 
proposition. 

Since most Americans believe the second premise — that providing basic educational 
proficiencies is not and should not be an expensive proposition— it becomes obvious that it 
is only a radical agenda, the purpose of which is to change values and attitudes (brainwash), 
that is the costly agenda. In other words, brainwashing by our schools and universities is 
what is bankrupting our nation and our children's minds. 

In 1997 there were 46.4 million public school students. During 1993-1994 (the latest 
years the statistics were available) the average per pupil expenditure was $6,330.00 in 



xiii 



Preface 



1996 constant dollars. Multiply the number of students by the per pupil expenditure 
(using old-fashioned mathematical procedures) for a total K-12 budget per year of $293.7 
billion dollars. If one adds the cost of higher education to this figure, one arrives at a total 
budget per year of over half a trillion dollars. 3 The sorry result of such an incredibly large 
expenditure — the performance of American students — is discussed in Pursuing Excellence — A 
Study of U.S. Twelfth Grade Mathematics and Science Achievement in International Context: 
Initial Findings from the Third International Mathematics and Science Study (TIMMS) , a report 
from the U.S. Department of Education (NCES 98-049). Pursuing Excellence reads: 

Achievement of Students, Key Points: U.S. twelfth graders scored below the international 
average and among the lowest of the 21 TIMSS nations in both mathematics and science 
general knowledge in the final year of secondary school, (p. 24) 

Obviously, something is terribly wrong when a $6,330 per pupil expenditure produces 
such pathetic results. This writer has visited private schools which charge $1,000 per year 
in tuition which enjoy superior academic results. Parents of home-schooled children spend a 
maximum of $1,000 per year and usually have similar excellent results. 

There are many talented and respected researchers and activists who have carefully 
documented the "weird" activities which have taken place "in the name of education." Any 
opposition to change agent activities in local schools has invariably been met with cries of 
"Prove your case, document your statements," etc. Documentation, when presented, has 
been ignored and called incomplete. The classic response by the education establishment 
has been, "You're taking that out of context!" — even when presented with an entire book 
which uses their own words to detail exactly what the "resisters" are claiming to be true. 
"Resisters" — usually parents — have been called every name in the book. Parents have been 
told for over thirty years, "You're the only parent who has ever complained." The media has 
been convinced to join in the attack upon common sense views, effectively discrediting the 
perspective of well-informed citizens. 

The desire by "resisters" to prove their case has been so strong that they have continued 
to amass — over a thirty- to fifty-year period — what must surely amount to tons of materials 
containing irrefutable proof, in the education change agents' own words, of deliberate, 
malicious intent to achieve behavioral changes in students/parents/society which have 
nothing to do with commonly understood educational objectives. Upon delivery of such proof, 
"resisters" are consistently met with the "shoot the messenger" stonewalling response by 
teachers, school boards, superintendents, state and local officials, as well as the supposedly 
objective institutions of academia and the press. 

This resister's book, or collection of research in book form, was put together primarily 
to satisfy my own need to see the various components which led to the dumbing down of 
the United States of America assembled in chronological order — in writing. Even I, who had 
observed these weird activities taking place at all levels of government, was reluctant to accept 
a malicious intent behind each individual, chronological activity or innovation, unless I could 
connect it with other, similar activities taking place at other times. This book, which makes 
such connections, has provided for me a much-needed sense of closure. 

the deliberate dumbing down of america is also a book for my children, grandchildren, 
and great-grandchildren. I want them to know that there were thousands of Americans who 
may not have died or been shot at in overseas wars, but were shot at in small-town "wars" 



xiv 



Preface 

at school board meetings, at state legislative hearings on education, and, most importantly, 
in the media. I want my progeny to know that whatever intellectual and spiritual freedoms 
to which they may still lay claim were fought for — are a result of — the courageous work of 
incredible people who dared to tell the truth against all odds. 

I want them to know that there will always be hope for freedom if they follow in these 
people's footsteps; if they cherish the concept of "free will"; if they believe that human 
beings are special, not animals, and that they have intellects, souls, and consciences. I 
want them to know that if the government schools are allowed to teach children K-12 using 
Pavlovian/Skinnerian animal training methods — which provide tangible rewards only for 
correct answers — there can be no freedom. 

Why? People "trained" — not educated — by such educational techniques will be fearful of 
taking principled, sometimes controversial, stands when called for because these people will 
have been programmed to speak up only if a positive reward or response is forthcoming. The 
price of freedom has often been paid with pain and loneliness. 

In 1971 when I returned to the United States after living abroad for 18 years, I was 
shocked to find public education had become a warm, fuzzy, soft, mushy, touchy-feely 
experience, with its purpose being socialization, not learning. From that time on, from the 
vantage point of having two young sons in the public schools, I became involved — as a 
member of a philosophy committee for a school, as an elected school board member, as 
co-founder of Guardians of Education for Maine (GEM), and finally as a senior policy 
advisor in the Office of Educational Research and Improvement (OERI) of the U.S. 
Department of Education during President Ronald Reagan's first term of office. OERI was, 
and is, the office from which all the controversial national and international educational 
restructuring has emanated. 

Those ten years (1971-1981) changed my life. As an American who had spent many 
years working abroad, I had experienced traveling in and living in socialist countries. 
When I returned to the United States I realized that America's transition from a sovereign 
constitutional republic to a socialist democracy would not come about through warfare 
(bullets and tanks) but through the implementation and installation of the "system" in 
all areas of government — federal, state and local. The brainwashing for acceptance of the 
"system's" control would take place in the school — through indoctrination and the use of 
behavior modification, which comes under so many labels: the most recent labels being 
Outcome-Based Education, Skinnerian Mastery Learning or Direct Instruction. 4 In the 1970s 
this writer and many others waged the war against values clarification, which was later 
renamed "critical thinking," which regardless of the label — and there are bound to be 
many more labels on the horizon — is nothing but pure, unadulterated destruction of 
absolute values of right and wrong upon which stable and free societies depend and upon 
which our nation was founded. 

In 1973 I started the long journey into becoming a "resister," placing the first 
incriminating piece of paper in my "education" files. That first piece of paper was a purple 
ditto sheet entitled "All About Me," next to which was a smiley face. It was an open-ended 

questionnaire beginning with: "My name is ." My son brought it home from public 

school in fourth grade. The questions were highly personal; so much so that they encouraged 
my son to lie, since he didn't want to "spill the beans" about his mother, father and brother. 
The purpose of such a questionnaire was to find out the student's state of mind, how he felt, 
what he liked and disliked, and what his values were. With this knowledge it would be easier 



xv 



Preface 

for the government school to modify his values and behavior at will — without, of course, the 
student's knowledge or parents' consent. 

That was just the beginning. There was more to come: the new social studies textbook 
World of Mankind. Published by Follett, this book instructed the teacher how to instill 
humanistic (no right/no wrong) values in the K-3 students. At the text's suggestion the 
teacher was encouraged to take little tots for walks in town during which he would point 
out big and small houses, asking the little tots who they thought lived in the houses: Poor 
or Rich? "What do you think they eat in the big house? ...in the little house?" When I 
complained about this non-educational activity at a school board meeting I was dismissed 
as a censor and the press did its usual hatchet job on me as a misguided parent. A friend of 
mine — a very bright gal who had also lived abroad for years — told me that she had overheard 
discussion of me at the local co-op. The word was out in town that I was a "kook." That was 
not a "positive response/reward" for my taking what I believed to be a principled position. 
Since I had not been "trained," I was just mad! 

Next stop on the road to becoming a "resister" was to become a member of the school 
philosophy committee. Our Harvard-educated, professional change agent superintendent gave 
all of the committee members a copy of "The Philosophy of Education" (1975 version) from 
the Montgomery County schools in Maryland, hoping to influence whatever recommendations 
we would make. (For those who like to eat dessert before soup, read the entry under 1946 
concerning Community-Centered Schools: The Blueprint for Education in Montgomery County, 
Maryland. This document was in fact the "Blueprint" for the nation's schools.) When asked 
to write a paper expressing our views on the goals of education, I wrote that, amongst other 
goals, I felt the schools should strive to instill "sound morals and values in the students." 
The superintendent and a few teachers on the committee zeroed in on me, asking "What's 
the definition of 'sound' and whose values?" 

After two failed attempts to get elected to the school board, I finally succeeded in 
1976 on the third try. The votes were counted three times, even though I had won by 
a very healthy margin! 

My experience on the school board taught me that when it comes to modern education, 
"the end justifies the means." Our change agent superintendent was more at home with 
a lie than he was with the truth. Whatever good I accomplished while on the school 
board — stopping the Planning, Programming and Budgeting System (PPBS) now known as 
Total Quality Management (TQM) or Generally Accepted Accounting Procedures/Generally 
Accepted Federal Funding Reporting (GAAP/GAFFR), getting values clarification banned 
by the board, and demanding five (yes, 5!) minutes of grammar per day, etc.— was tossed 
out two weeks after I left office. 

Another milestone on my journey was an in-service training session entitled "Innovations 
in Education." A retired teacher, who understood what was happening in education, paid 
for me to attend. This training program developed by Professor Ronald Havelock of the 
University of Michigan and funded by the United States Office of Education taught teachers 
and administrators how to "sneak in" controversial methods of teaching and "innovative" 
programs. These controversial, "innovative" programs included health education, sex 
education, drug and alcohol education, death education, critical thinking education, etc. Since 
then I have always found it interesting that the controversial school programs are the only 
ones that have the word "education" attached to them! I don't recall — until recently — "math 
ed.," "reading ed.," "history ed.," or "science ed." A good rule of thumb for teachers, parents 



xvi 



Preface 

and school board members interested in academics and traditional values is to question any 
subject that has the word "education" attached to it. 

This in-service training literally "blew my mind." I have never recovered from it. The 
presenter (change agent) taught us how to "manipulate" the taxpayers/parents into accepting 
controversial programs. He explained how to identify the "resisters" in the community and 
how to get around their resistance. He instructed us in how to go to the highly respected 
members of the community — those with the Chamber of Commerce, Rotary, Junior League, 
Little League, YMCA, Historical Society, etc.— to manipulate them into supporting the 
controversial/non-academic programs and into bad-mouthing the resisters. Advice was also 
given as to how to get the media to support these programs. 

I left this training— with my very valuable textbook, The Change Agent's Guide to 
Innovations in Education, under my arm— feeling very sick to my stomach and in complete 
denial over that in which I had been involved. This was not the nation in which I grew 
up; something seriously disturbing had happened between 1953 when I left the United 
States and 1971 when I returned. 

Orchestrated Consensus 

In retrospect, I had just found out that the United States was engaged in war. People 
write important books about war: books documenting the battles fought, the names of 
the generals involved, the names of those who fired the first shot. This book is simply a 
history book about another kind of war: 

• one fought using psychological methods; 

• a one-hundred-year war; 

• a different, more deadly war than any in which our country has ever been involved; 

• a war about which the average American hasn't the foggiest idea. 

The reason Americans do not understand this war is because it has been fought in 
secret — in the schools of our nation, targeting our children who are captive in classrooms. The 
wagers of this war are using very sophisticated and effective tools: 

• Hegelian Dialectic (common ground, consensus and compromise) 

• Gradualism (two steps forward; one step backward) 

• Semantic deception (redefining terms to get agreement without understanding) . 
The Hegelian Dialectic 5 is a process formulated by the German philosopher Georg 

Synthesis 
(consensus) 



Thesis 



xvii 



Antithesis 



Preface 

Wilhelm Friedrich Hegel (1770-1831) and used by Karl Marx in codifying revolutionary 
Communism as dialectical materialism. This process can be illustrated as: 

The "Thesis" represents either an established practice or point of view which is pitted 
against the "Antithesis"— usually a crisis of opposition fabricated or created by change 
agents— causing the "Thesis" to compromise itself, incorporating some part of the "Antithesis" 
to produce the "Synthesis"— sometimes called consensus. This is the primary tool in the bag 
of tricks used by change agents who are trained to direct this process all over the country; 
much like the in-service training I received. A good example of this concept was voiced 
by T.H. Bell when he was U.S. Secretary of Education: "[We] need to create a crisis to 
get consensus in order to bring about change." (The reader might be reminded that it 
was under T.H. Bell's direction that the U.S. Department of Education implemented the 
changes "suggested" by A Nation at Risk— the alarm that was sounded in the early 1980s 
to announce the "crisis" in education.) 

Since we have been, as a nation, so relentlessly exposed to this Hegelian dialectical 
process (which is essential to the smooth operation of the "system") under the guise 
of "reaching consensus" in our involvement in parent-teacher organizations, on school 
boards, in legislatures, and even in goal setting in community service organizations and 
groups — including our churches — I want to explain clearly how it works in a practical 
application. A good example with which most of us can identify involves property taxes for 
local schools. Let us consider an example from Michigan — 

The internationalist change agents must abolish local control (the "Thesis") in order 
to restructure our schools from academics to global workforce training (the "Synthesis"). 
Funding of education with the property tax allows local control, but it also enables the change 
agents and teachers' unions to create higher and higher school budgets paid for with 
higher taxes, thus infuriating homeowners. Eventually, property owners accept the change 
agents' radical proposal (the "Anti- thesis") to reduce their property taxes by transferring 
education funding from the local property tax to the state income tax. Thus, the change 
agents accomplish their ultimate goal; the transfer of funding of education from the local 
level to the state level. When this transfer occurs it increases state/federal control and 
funding, leading to the federal/internationalist goal of implementing global workforce training 
through the schools (the "Synthesis"). 6 

Regarding the power of "gradualism," remember the story of the frog and how he didn't 
save himself because he didn't realize what was happening to him? He was thrown into 
cold water which, in turn, was gradually heated up until finally it reached the boiling 
point and he was dead. This is how "gradualism" works through a series of "created 
crises" which utilize Hegel's dialectical process, leading us to more radical change than 
we would ever otherwise accept. 

In the instance of "semantic deception" — do you remember your kindly principal telling 
you that the new decision-making program would help your child make better decisions? 
What good parent wouldn't want his or her child to learn how to make "good" decisions? 
Did you know that the decision-making program is the same controversial values clarification 
program recently rejected by your school board and against which you may have given 
repeated testimony? As I've said before, the wagers of this intellectual social war have 
employed very effective weapons to implement their changes. 

This war has, in fact, become the war to end all wars. If citizens on this planet can be 
brainwashed or robotized, using dumbed-down Pavlovian/Skinnerian education, to accept 



xviii 



Preface 

what those in control want, there will be no more wars. If there are no rights or wrongs, 
there will be no one wanting to "right" a "wrong." Robots have no conscience. The only 
permissible conscience will be the United Nations or a global conscience. Whether an 
action is good or bad will be decided by a "Global Government's Global Conscience," as 
recommended by Dr. Brock Chisholm, executive secretary of the World Health Organization, 
Interim Commission, in 1947 — and later in 1996 by current United States Secretary of State 
Madeline Albright. (See quotes in entry under 1947.) 

You may protest, "But, no one has died in this war." Is that the only criteria we have 
with which to measure whether war is war? Didn't Aristotle say it well when he said, 
"Educated men are as much superior to uneducated men as the living are to the dead"? To 
withhold the tools of education can kill a person's spirit just as surely as a bullet his body. 
The tragedy is that many Americans have died in other wars to protect the freedoms being 
taken away in this one. This war which produces the death of intellect and freedom is 
not waged by a foreign enemy but by the silent enemy in the ivory towers, in our own 
government, and in tax-exempt foundations — the enemy whose every move I have tried to 
document in this book, usually in his/her/its own words. 

Ronald Havelock's change agent in-service training prepared me for what I would 
find in the U.S. Department of Education when I worked there from 1981-1982. The use of 
taxpayers' hard-earned money to fund Havelock's "Change Agent Manual" was only one out 
of hundreds of expensive U.S. Department of Education grants each year going everywhere, 
even overseas, to further the cause of internationalist "dumbing down" education (behavior 
modification) so necessary for the present introduction of global workforce training. I 
was relieved of my duties after leaking an important technology grant (computer-assisted 
instruction proposal) to the press. 

Much of this book contains quotes from government documents detailing the real 
purposes of American education: 

• to use the schools to change America from a free, individual nation to a socialist, 
global "state," just one of many socialist states which will be subservient to the 
United Nations Charter, not the United States Constitution 

• to brainwash our children, starting at birth, to reject individualism in favor of 
collectivism 

• to reject high academic standards in favor of OBE/ISO 1400/9000 7 egalitarianism 

• to reject truth and absolutes in favor of tolerance, situational ethics and consensus 

• to reject American values in favor of internationalist values (globalism) 

• to reject freedom to choose one's career in favor of the totalitarian K-12 school-to- 
work/OBE process, aptly named "limited learning for lifelong labor," 8 coordinated 
through United Nations Educational, Scientific, and Cultural Organization. 

Only when all children in public, private and home schools are robotized — and believe 
as one — will World Government be acceptable to citizens and able to be implemented without 
firing a shot. The attractive-sounding "choice" proposals will enable the globalist elite to 
achieve their goal: the robotization (brainwashing) of all Americans in order to gain their 
acceptance of lifelong education and workforce training — part of the world management 
system to achieve a new global feudalism. 



xix 



Preface 

The socialist/fascist global workforce training agenda is being implemented as I write 
this book. The report to the European Commission entitled Transatlantic Co-operation in 
International Education: Projects of the Handswerkskammer Koblenz with Partners in the 
United States and in the European Union by Karl-Jurgen Wilbert and Bernard Eckgold 
(May 1997) says in part: 

In June, 1994, with the support of the Handswerkskamer Koblenz, an American-German 
vocational education conference took place... at the University of Texas at Austin. The 
vocational education researchers and economic specialists... were in agreement that an 
economic and employment policy is necessary where a systematic vocational training is as 
equally important as an academic education, as a "career pathway." ...The first practical 
steps along these lines, which are also significant from the point of view of the educational 
policy, were made with the vocational training of American apprentices in skilled craft 
companies, in the area of the Koblenz chamber. 

Under section "e) Scientific Assistance for the Projects," one reads: 

The international projects ought to be scientifically assisted and analyzed both for the 
feedback to the transatlantic dialogue on educational policy, and also for the assessment 
and qualitative improvement of the cross-border vocational education projects. As a result 
it should be made possible on the German side to set up a connection to other projects 
of German- American cooperation in vocational training; e.g., of the federal institute for 
vocational training for the project in the U.S. state of Maine. On the USA side an interlinking 
with other initiatives for vocational training — for example, through the Center for the Study 
of Human Resources at the University of Texas, Austin — would be desirable. 

This particular document discusses the history of apprenticeships— especially the 
role of medieval guilds — and attempts to make a case for nations which heretofore have 
cherished liberal economic ideas — i.e., individual economic freedom — to return to a system 
of cooperative economic solutions (the guild system used in the Middle Ages which accepted 
very young children from farms and cities and trained them in "necessary" skills). Another 
word for this is "serfdom." Had our elected officials at the federal, state, and local levels 
read this document, they could never have voted in favor of socialist/fascist legislation 
implementing workforce training to meet the needs of the global economy. Unless, of course, 
they happen to support such a totalitarian economic system. (This incredible document 
was accessed at the following internet address: http://www.kwk-koblenz.de/ausland/trans- 
uk.doc ) 

Just as Barbara Tuchman or another historian would do in writing the history of the 
other kinds of wars, I have identified chronologically the major battles, players, dates 
and places. I know that researchers and writers with far more talent than I will feel that I 
have neglected some key events in this war. I stand guilty on all counts, even before their 
well-researched charges are submitted. Yes, much of importance has been left out, due to 
space limitations, but the overview of the battlefields and maneuvers will give the reader an 
opportunity to glimpse the immensity of this conflict. 

In order to win a battle one must know who the "real" enemy is. Otherwise, one is 
shooting in the dark and often hitting those not the least bit responsible for the mayhem. 
This book, hopefully, identifies the "real" enemy and provides Americans involved in this 
war — be they plain, ordinary citizens, elected officials, or traditional teachers — with the 



xx 



Preface 



ammunition to fight to obtain victory. 



Endnotes: 

1 Noted Soviet dissident, slave labor camp intern, and author of The Gulag Archipelago and numerous other books. 

2 The Basic Works of Aristotle, Richard McKeon, Ed., from Familiar Quotations by John Bartlett, 14th ed. (Little, Brown 
& Co.: Boston, Toronto, 1968). 

3 Statistics taken from The Condition of Education, 1997, published by the National Center for Educational Statistics, U.S. 
Department of Education (NCES 97-388). Internet address: http://www.ed/gov/NCES. 

4 0BE/ML/DI or outcomes-based education/mastery learning/direct instruction. 

5 Dean Gotcher, author of The Dialectic & Praxis: Diaprax and the End of the Ages and other materials dealing with dialectical 
consensus building and human relations training, has done some excellent work in this area of research. For more detailed 
information on this process, please write to Dean Gotcher of the Institution for Authority Research, 5436 S. Boston PL, 
Tulsa, Oklahoma 74105, or call 918-742-3855. 

6 See Appendix XXII for an article by Tim Clem which explains this process in much more detail. 

7 ISO stands for International Standards of Operation for manufacturing (9000) and human resources (1400), coordinated 
through the United Nations Educational, Social and Cultural Organization (UNESCO). 

8 "Privatization or Socialization" by C. Weatherly, 1994. Delivered as part of a speech to a group in Minnesota and later pub- 
lished in The Christian Conscience magazine (Vol. 1, No. 2: February 1995, pp. 29-30). 



xxi 



ACKNOWLEDGMENTS 



In particular I want to thank a handful of government officials who provided me with 
important documents. They must remain anonymous for obvious reasons. 

I would also like to mention several incredibly fine Americans who are unfortunately no 
longer with us, who provided me with the priceless research and necessary resources to write 
this book. They are: Jo-Ann Abrigg, Rexford Daniels, Norman Dodd, Ruth Feld, Mary Larkin, 
Judge Robert Morris, Walter Crocker Pew and Mary Royer. 

Very special thanks go to the following education researchers and writers with whom 
I have worked and who have contributed to and made this book possible (in alphabetical 
order) : Mary Adams, Polly Anglin, Marilyn Boyer, Shirley Correll, Peggy and Dennis Cuddy, 
Janet Egan, Melanie Fields, Ann Frazier, Betty Freauf, Jeannie Georges, Peggy Grimes, 
Rosalind Haley, Karen Hayes, Tracey Hayes, Maureen Heaton, Mary Jo Heiland, Ann Herzer, 
Anita Hoge, Betsy Kraus, Jacqueline and Malcolm Lawrence, Mina Legg, Bettye and Kirk 
Lewis, Joanne Lisac, Joan Masters, Nancy Maze, Janelle Moon, Opal Moore, Barbara Morris, 
LuAnne Robson, Patricia Royall, Elisabeth Russinoff, Cris Shardelman, Debbie Stevens, Rose 
Stewart, Elisabeth Trotto, Georgiana Warner, Geri Wenta, and Jil Wilson. Thanks are also 
extended to their respective spouses who made their contributions possible. 

Obviously, the job of editing this book was monumental! Cynthia Weatherly, who is 
one of the nation's finest education researchers and talented writers and with whom I have 
worked for twenty years, took my rough manuscript and turned it into a mammoth historical 
presentation. Her incredible work on this book represents a true labor of love for this 
nation and for our children and grandchildren. I will forever be grateful to Cindi and her 
husband, Neal, who extended a gracious welcome to me each time I descended upon them, 
including a four-month stay last winter! 

In addition, my deepest thanks go to the Leslie family of Conscience Press — Sarah, 
Lynn and Colin, and Sarah's parents, Paul and Jean Huling, each of whom contributed in 



xxiii 



Acknowledgments 

his own vital way to the publication of this book in such a professional manner. How this 
family published this book and managed at the same time to make three moves in and 
out of different houses during this one-year period is beyond belief. There are no words 
to express this writer's gratitude for this one family's contribution to the preservation 
of liberty for all Americans. 

Of course, the book would never have seen the light of day without the very professional 
job delivered by Tim and Janet Fields of The Athens Printing Company of Athens, Georgia. 
Tim's unbelievable patience with interminable delays was beyond the call of duty. 

And last, but not least, thanks to the folks at the reference desk of the University 
of Georgia Library, who cheerfully and professionally assisted the writer and editor 
with critical documentation, and to Air Tran, whose extremely reasonable airfare from 
Boston to Atlanta allowed Cindi and me to collaborate on the most important stages of 
this book's production. 

Deepest apologies to whomever I have neglected to mention. You will find a special 
place in Heaven. 



xxiv 



INTRODUCTION 



In the fall of 1972 a small group of students in an introduction to educational psychology 
class at a midwestern university saved every single soul in the lifeboat. 

The professor became agitated. "No! Go back and do the exercise again. Follow 
the instructions." 

The students, products of the radical 1960s culture, expected this to be a small group 
assignment in creativity and ingenuity. They had worked out an intricate plan whereby 
everyone in the lifeboat could survive. When the professor persisted, the students resisted — and 
ultimately refused to do the exercise. Chalk up a victory to the human spirit. 

However, it was a short-lived victory. This overloaded "lifeboat in crisis" represented 
a dramatic shift in education. The exercise — in which students were compelled to choose 
which humans were expendable and, therefore, should be cast off into the water — became 
a mainstay in classrooms across the country. Creative solutions? Not allowed. Instructions? 
Strictly adhered to. In truth, there is to be only one correct answer to the lifeboat 
drama: death. 

The narrowing (dumbing down) of intellectual freedom had begun. Lifeboat exercises 
epitomize the shift in education from academic education (1880-1960) to values education 
(1960-1980). In the deliberate dumbing down of america writer Charlotte Iserbyt chronicles 
this shift and the later shift to workforce training "education" (1980-2000). The case is made 
that the values education period was critical to the transformation of education. It succeeded 
in persuading (brainwashing? duping?) Americans into accepting the belief that values were 
transient, flexible and situational — subject to the evolution of human society. Brave new 
values were integrated into curricula and instruction. The mind of the average American 
became "trained" (conditioned) to accept the idea that education exists solely for the purpose 
of getting a good paying job in the global workforce economy. 



xxv 



Introduction 

"Human capital," a term coined by reformers to describe our children, implies that 
humans are expendable. This explains why the lifeboat exercise has been used so rampantly, 
and why it was so critical to the education reformers' plans. Is it any wonder, then, that 
we witnessed the horror of the Littleton, Colorado shootings, and that other violence 
in schools across the country is increasing? Death education in the classroom may be 
linked to deaths in the classroom. The dumbing down of a nation inevitably leads to 
the death of a culture. 

The premise of Charlotte Iserbyt's chronological history of the "deliberate dumbing 
down" of America is borne out by the author's extensive documentation, gathered from the 
education community's own sources. Iserbyt isolates the public policy end of education and 
sticks with it from decade to decade, steadfastly documenting the controversial methodology 
that has been institutionalized into legislation, public documents and other important 
papers setting forth public agenda. By choosing to focus on public policy in the context 
of academic theory, Iserbyt fills an important void in anti-reform literature. Her most 
important contribution is demonstrating how theory influenced public policy, public 
policy influenced theory, and how this ultimately affected practice — how policy and theory 
played out in the classroom. 

Iserbyt skillfully demonstrates the interconnections between the international, national, 
regional, state and local plans for the transformation of American society via education. 
Iserbyt connects the evolution of education in the twentieth century to major significant 
geopolitical, social and economic events which have influenced education policy. This 
attention to detail adds important context to the events chronicled in the book, a dimension 
not found in other books critiquing education reform. 

For too many years the late Harvard psychologist B.F. Skinner has been virtually ignored 
by conservative leaders, who focused their criticism exclusively on pervasive cultural 
influences of the humanistic psychologists (Rogers, Maslow, et al.). Skinner was written off 
as a Utopian psychologist who represented no threat. Iserbyt's premise, proven well, is that 
B.F. Skinner is comfortably alive and well — embedded within modern education methods. 
Direct Instruction, Mastery Learning and Outcome-Based Education are irrefutably the 
current incarnation of Skinner's 1960s Programmed Instruction — a method of instruction 
which linked children to the computer and turned learning into a flow chart of managed 
behaviors. 

Interwoven throughout the book is the important theme of operant conditioning in 
education. Surprisingly, Iserbyt never debates the effectiveness of the method. Entry after 
entry in the book substantiates Iserbyt's premise that the method is purposefully used to 
create a robotic child — one who cannot make connections, repeat an act, nor recall a 
fact unless provided with the necessary stimuli and environment (like a dog who learns 
to sit after the immediate receipt of a dog biscuit). Iserbyt reaches the inescapable 
conclusion that the method perfectly complements the reformers' agenda for a dumbed-down 
global workforce. 

Iserbyt so effectively nails down her case that the debate noticeably shifts to the ethics 
of implementing such a method on children. The late Christian apologist and theologian, 
Dr. Francis Schaeffer, when discussing the evils of B.F. Skinner in his little booklet Back to 
Freedom and Dignity (1972), warned: "Within the Skinnerian system there are no ethical 
controls; there is no boundary limit to what can be done by the elite in whose hands control 
resides." There is intriguing evidence in Iserbyt's book that the "democratic" society of the 



xxvi 



Introduction 

near future will be managed via systematized operant conditioning — a startling proposition 
with ramifications which reach far beyond the scope of simple education reform. 

Inevitably, questions and controversy will arise after publication of this book. How many 
popular computer games, programs, and curricula for children are heavily dependent upon 
this method — a method which requires immediate rewards? To what extent have home school 
and Christian school leaders, authors, and curriculum companies endorsed and utilized this 
method? How many child rearing (training) programs, workbooks and seminars are based 
upon these Skinnerian methods? After reading this book parents will no longer be duped into 
accepting behaviorist methods — in whatever guise, or by whatever name they come. 

Publication of the deliberate dumbing down of america is certain to add fuel to the fire 
in this nation's phonics wars. Ever since publication of her first work [Back to Basics Reform 
or OBE Skinnerian International Curriculum, 1985), Iserbyt has been trumpeting the fact that 
the Skinnerian method applied in the Exemplary Center for Reading Instruction (ECRI) is 
the very same method applied in Siegfried Engelmann's DISTAR (Direct Instruction System 
for Teaching and Remediation, now known as Reading Mastery) . In her latest work, Iserbyt 
provides exhaustive documentation that Direct Instruction (a.k.a. systematic, intensive 
phonics) — which is being institutionalized nationally under the guise of "traditional" phonics 
thanks to the passage of The Reading Excellence Act of 1998 — relies on the Skinnerian 
method to teach reading. 

Charlotte Iserbyt is the consummate whistle-blower. The writer describes her own 
personal experiences as a school board director and as senior policy advisor in the U.S. 
Department of Education's Office of Educational Research and Improvement — from which 
emanated most of the dumbing down programs described in this book. There are no sacred 
cows in Iserbyt's reporting of the chronological history of education reform. With little 
fanfare, the agendas and methods of key reform leaders (conservative and liberal) are allowed 
to unmask themselves in their own words and by their own actions. Of particular interest 
is Iserbyt's material on the issue of school "choice" — abundant evidence from both sides of 
the political spectrum. The reader will learn that private, Christian and home schools are all 
neatly tied into the reform web via computer technology, databanking, assessment testing 
and, ultimately, the intention to use rewards and penalties to enforce compliance to the 
"transformed" system of education in this country. 

The careful researcher will appreciate the fact that the book is heavily documented but 
user-friendly. Citations are designed for the average reader, not just the academician. The 
chronological format of the book allows one to read forward or backward in time, or one 
entry at a time, according to personal preference. The accompanying appendices provide a 
source of in-depth topical material, which frees up the chronological text from becoming 
bogged down in details. The index and glossary are such valuable research tools that they 
are worth the price of the book. 

Iserbyt does very little hand-holding throughout the book. Commentary is sparse; readers 
can make their own connections and insert their own personal experiences. Iserbyt has 
strategically laid down key pieces to a giant jigsaw puzzle. The overall picture is purposefully 
arranged to portray one point of view. However, readers will be hard-pressed to come up 
with an alternative view. Just when it seems that one piece of the puzzle is an isolated, 
insignificant event, suddenly one comes across a stunning new entry that puts the pieces 
tightly together to form a vivid picture of the overall plan. Try as one might, the reader cannot 
escape the consistent, deliberate, 100-year plan to dumb down the populace. 



xxvii 



Introduction 

Amidst all of the policy documents and historical data in the book, one can easily 
identify the heart of the writer. Iserbyt gently reminds the reader that the real issue at hand 
is the child. It is America's children who are experiencing the full brunt of the new 
methods, new curricula and new agendas in the classroom. Many readers will experience 
the "light bulb" turning on as they fully come to understand how the innovations which 
have occurred in education during the last century affected their parents, themselves, 
their children and grandchildren. 

Teachers may find the contents of this book particularly enlightening and refreshing. 
Iserbyt takes the reader behind the scenes to reveal the true nature of many popular 
classroom curricula. The truth will be comforting to those who have utilized certain programs 
or methods, and perhaps were troubled by them, but didn't know the full scope or plan 
behind them. Iserbyt does not ignore or soft-peddle the ethical issues, but encourages the 
reader to take the high moral ground. 

The other day a caller phoned into Rush Limbaugh's daily radio talk show. The caller's 
wife earns $25,000 per year as a teacher. She has 30 students. Her school district receives $9,000 
per year per student. This totals $270,000 per year. "Why isn't my wife being paid more?" he 
asked. The caller— and people like him— should be referred to the deliberate dumbing down of 
america. In this book they will find the scandalous answer. It has something to do with why 
we have a generation of — as Limbaugh describes it — "young skulls full of mush." 

Sarah Leslie 



xxviii 



The human brain should be used for processing, not storage. 

—Thomas A. Kelly, Ph.D. 
The Effective School Report 



1 



THE SOWING OF THE SEEDS: 
late eighteenth and nineteenth centuries 



A he Sowing of the Seeds: late eighteenth and nineteenth centuries" is the short- 
est chapter of the deliberate dumbing down of america. Undoubtedly, this chapter may be one of the 
most important since the philosophies of Jean- Jacques Rousseau, Wilhelm Wundt, and John Dewey et 
al., reflect a total departure from the traditional definition of education like the one given in The New 
Century Dictionary of the English Language (Appleton, Century, Crofts: New York, 1927): 

The drawing out of a person's innate talents and abilities by imparting the knowledge of 
languages, scientific reasoning, history, literature, rhetoric, etc. — the channels through which 
those abilities would flourish and serve. 1 

A quantum leap was taken from the above definition to the new, dehumanizing definition used by 
the experimental psychologists found in An Outline of Educational Psychology (Barnes & Noble: New 
York, 1934, rev. ed.) by Rudolph Pintner et al. That truly revolutionary definition claims that 

learning is the result of modifiability in the paths of neural conduction. Explanations of 
even such forms of learning as abstraction and generalization demand of the neurones only 
growth, excitability, conductivity, and modifiability. The mind is the connection-system of 
man; and learning is the process of connecting. The situation-response formula is adequate 
to cover learning of any sort, and the really influential factors in learning are readiness of 
the neurones, sequence in time, belongingness, and satisfying consequences. 2 

An in-depth understanding of the deplorable situation found in our nation's schools today is 
impossible without an understanding of the redefinition in the above statements. Education in the 

1 



2 the deliberate dumbing down of america 

twenty-first century will, for the majority of youth, be workforce training. Thus, the need for Pavlovian/ 
Skinnerian methodology based on operant conditioning which, in essence, is at the heart of the above 
dehumanizing definition of education. This "sowing of the seeds" through redefinition will reap the 
death of traditional, liberal arts education through the advent of mastery learning, outcome-based 
education, and direct instruction — all of which will be performance-based and behaviorist. 

1762 

Emile by Jean- Jacques Rousseau (Chez Jean Neaulme Duchesne: A. Amsterdam [Paris], 
1762) was published. Rousseau's "Social Contract" presented in Emile influenced the French 
Revolution. In this book Rousseau promoted child-centered "permissive education" in which 
a teacher "should avoid strict discipline and tiresome lessons." Both Rousseau (1712-1788) 
and Swiss educator Johann Heinrich Pestalozzi (1746-1827) believed that the "whole child" 
should be educated by "doing," and that religion should not be a guiding principle in edu- 
cation, a theme we shall see repeated over the next 238 years. 



1832 

WlLHELM WUNDT, FOUNDER OF EXPERIMENTAL PSYCHOLOGY AND THE FORCE BEHIND ITS dissemi- 
nation throughout the Western world, was born in 1832 in Neckarau, southern Germany. The 
following excerpts concerning Wundt's contribution to modern education are taken from The 
Leipzig Connection: The Systematic Destruction of American Education by Paolo Lionni and 
Lance J. Klass 3 (Heron Books: Portland, Ore., 1980): 

To Wundt, a thing made sense and was worth pursuing if it could be measured, 
quantified, and scientifically demonstrated. Seeing no way to do this with the human soul, 
he proposed that psychology concern itself solely with experience. As Wundt put it... Karl 
Marx injected Hegel's theories with economics and sociology, developing a "philosophy of 
dialectical materialism."... (p. 8) 

From Wundt's work it was only a short step to the later redefinition of education. Origi- 
nally, education meant drawing out of a person's innate talents and abilities by imparting the 
knowledge of languages, scientific reasoning, history, literature, rhetoric, etc. — the channels 
through which those abilities would flourish and serve. To the experimental psychologist, 
however, education became the process of exposing the student to "meaningful" experiences 
so as to ensure desired reactions: 

[L] earning is the result of modifiability in the paths of neural conduction. Explanations of 
even such forms of learning as abstraction and generalization demand of the neurones only 
growth, excitability, conductivity, and modifiability. The mind is the connection-system of 
man; and learning is the process of connecting. The situation-response formula is adequate 
to cover learning of any sort, and the really influential factors in learning are readiness of 
the neurones, sequence in time, belongingness, and satisfying consequences. 4 

If one assumes (as did Wundt) that there is nothing there to begin with but a body, a 
brain, a nervous system, then one must try to educate by inducing sensations in that ner- 



The Sowing of the Seeds : c. 1862 



3 



vous system. Through these experiences, the individual will learn to respond to any given 
stimulus, with the "correct" response. The child is not, for example, thought capable of 
volitional control over his actions, or of deciding whether he will act or not act in a certain 
way; his actions are thought to be preconditioned and beyond his control, he is a stimulus- 
response mechanism. According to this thinking, he is his reactions. Wundt's thesis laid 
the philosophical basis for the principles of conditioning later developed by Pavlov (who 
studied physiology in Leipzig in 1884, five years after Wundt had inaugurated his laboratory 
there) and American behavioral psychologists such as Watson and Skinner; for laboratories 
and electroconvulsive therapy; for schools oriented more toward socialization of the child 
than toward the development of intellect; and for the emergence of a society more and more 
blatantly devoted to the gratification of sensory desire at the expense of responsibility and 
achievement, (pp. 14-15) 

[Ed. Note: The reader should purchase The Leipzig Connection: The Systematic Destruction of 
American Education, a slim paperback book which, in this writer's opinion, is the most use- 
ful and important book available regarding the method used to change children's behavior/ 
values and to "dumb down" an entire society. The authors, Lionni and Klass, have made an 
outstanding contribution to the history of American education and to the understanding of 
why and how America, which up until the 1930s had the finest education system in the world, 
ended up with one of the worst education systems in the industrialized world in a short period 
of fifty years. 

Another commentary on the importance of Wundt's theories comes from Dennis L. Cuddy, 
Ph.D., in an excellent article entitled "The Conditioning of America" {The Christian News, 
New Haven, Mo., December 11, 1989). 5 An excerpt follows: 

The conditioning of modern American society began with John Dewey, a psychologist, a Fabian 
Socialist and the "Father of Progressive Education." Dewey used the psychology developed 
in Leipzig by Wilhelm Wundt, and believed that through a stimulus-response approach (like 
Pavlov) students could be conditioned for a new social order.] 



1862 

The first experiment with "outcome-based education" (OBE) was conducted in England 
in 1862. Teacher opposition resulted in abandonment of the experiment. Don Martin of Uni- 
versity of Pittsburgh, George E. Overholt and Wayne J. Urban of Georgia State University 
wrote Accountability in American Education: A Critique (Princeton Book Company: Princeton, 
N.J., 1976) containing a section entitled "Payment for Results" which chronicles the English 
experiment. The following excerpt outlines the experiment: 

The call for "sound and cheap" elementary instruction was answered by legislation, passed by 
Parliament during 1862, known as The Revised Code. This was the legislation that produced 
payment [for] results, the nineteenth century English accountability system.... The opposition 
to the English payment- [for] -results system which arose at the time of its introduction was 
particularly interesting. Teachers provided the bulk of the resistance, and they based their 
objections on both educational and economic grounds.... They abhorred the narrowness and 
mechanical character the system imposed on the educational process. They also objected to 
the economic burden forced upon them by basing their pay on student performance. 



4 



the deliberate dumbing down of america 



[Ed. Note: "Payment for Results" and Outcome-Based Education are based on teacher ac- 
countability and require teaching to the test, the results of which are to be "measured" for 
accountability purposes. Both methods of teaching result in a narrow, mechanistic system of 
education similar to Mastery Learning. Teachers in the United States in 1999, as were teach- 
ers involved in the experiment in England, will be judged and paid according to students' 
test scores; i.e., how well the teachers teach to the test. Proponents of Mastery Learning 
believe that almost all children can learn if given enough time, adequate resources geared to 
the individual learning style of the student, and a curriculum aligned to test items (teach to 
the test) . Mastery Learning uses Skinnerian methodology (operant conditioning) in order to 
obtain "predictable" results. Benjamin Bloom, the father of Mastery Learning, says that "the 
purpose of education is to change the thoughts, actions and feelings of students. " Mastery 
Learning (ML) and its fraternal twin Direct Instruction (DI) are key components of Outcome- 
Based Education (OBE) and Effective Schools Research (ESR) . The reader is urged to study the 
definitions of all these terms, including the behaviorist term section found in the glosssary of 
this book prior to reading further. The one common thread running through this book relates 
to these terms and their importance in the implementation of workforce training and attitude 
and value change.] 

1874 

Edward Lee Thorndike was born August 31, 1874 in Williamsburg, MASSACHUsetts. Thorn- 
dike was trained in the new psychology by the first generation of Wilhelm Wundt's proteges. 
He graduated from Wesleyan University in 1895 after having studied with Wundtians Andrew 
C. Armstrong and Charles Judd. He went to graduate school at Harvard and studied under 
psychologist William James. While at Harvard, Thorndike surprised James by doing research 
with chickens, testing their behavior, and pioneering what later became known as "animal 
psychology." As briefly stated by Thorndike himself, psychology was the "science of the in- 
tellect, character, and behavior of animals, including man." 6 To further excerpt The Leipzig 
Connection's excellent treatment of Thorndike's background: 

Thorndike applied for a fellowship at Columbia, was accepted by Cattell, and moved with his 
two most intelligent chickens to New York, where he continued his research and earned his 
Ph.D. in 1893. Thorndike's specialty was the "puzzle box," into which he would put various 
animals (chickens, rats, cats) and let them find their way out by themselves. His doctoral 
dissertation on cats has become part of the classical literature of psychology. After receiv- 
ing his doctorate, he spent a year as a teacher at Western Reserve University, and it wasn't 
long before Cattell advised Dean [James Earl] Russell to visit Thorndike's first classroom at 
Western Reserve: "Although the Dean found him 'dealing with the investigations of mice and 
monkeys,' he came away satisfied that he was worth trying out on humans." 

Russell offered Thorndike a job at Teachers College, where the experimenter remained 
for the next thirty years. Thorndike was the first psychologist to study animal behavior in 
an experimental psychology laboratory and (following Cattell's suggestion) apply the same 
techniques to children and youth; as one result, in 1903, he published the book Educational 
Psychology. In the following years he published a total of 507 books, monographs, and ar- 
ticles. 

Thorndike's primary assumption was the same as Wundt's: that man is an animal, 
that his actions are actually always reactions, and that he can be studied in the laboratory 



The Sowing of the Seeds : c. 1896 



5 



in much the same way as an animal might be studied. Thorndike equated children with the 
rats, monkeys, fish, cats, and chickens upon which he experimented in his laboratory and was 
prepared to apply what he found there to learning in the classroom. He extrapolated "laws" 
from his research into animal behavior which he then applied to the training of teachers, who 
took what they had learned to every corner of the United States and ran their classrooms, 
curricula, and schools, on the basis of this new "educational" psychology. 

In The Principles of Teaching Based on Psychology (1906), Thorndike proposed making 
"the study of teaching scientific and practical." Thorndike's definition of the art of teaching 
is 

the art of giving and withholding stimuli with the result of producing or preventing certain 
responses. In this definition the term stimulus is used widely for any event which influences 
a person — for a word spoken to him, a look, a sentence which he reads, the air he breathes, 
etc., etc. The term response is used for any reaction made by him — a new thought, a feel- 
ing of interest, a bodily act, any mental or bodily condition resulting from the stimulus. 
The aim of the teacher is to produce desirable and prevent undesirable changes in human 
beings by producing and preventing certain responses. The means at the disposal of the 
teacher are the stimuli which can be brought to bear upon the pupil — the teacher's words, 
gestures, and appearance, the condition and appliances of the school room, the books 
to be used and objects to be seen, and so on through a long list of the things and events 
which the teacher can control. 



1896 

Psychology by John Dewey, the father of "Progressive Education," was published (Uni- 
versity of Chicago Press: Chicago, 1896) . This was the first American textbook on the "revised" 
subject of education. Psychology would become the most widely-read and quoted textbook 
used in schools of education in this country. Just prior to the publication of his landmark book, 
Dewey had joined the faculty of the Rockefeller-endowed University of Chicago as head of the 
combined departments of philosophy, psychology and pedagogy (teaching). In that same year, 
1895, the university allocated $1,000 to establish a laboratory in which Dewey could apply 
psychological principles and experimental techniques to the study of learning. The laboratory 
opened in January 1896 as the Dewey School, later to become known as The University of 
Chicago Laboratory School. 7 Dewey thought of the school as a place 

where his theories of education could be put into practice, tested, and scientifically eval- 
uated.... 

. . .Dewey. . . sought to apply the doctrines of experience and experiment to everyday life 
and, hence, to education... seeking via this model institution to pave the way for the "schools 
of the future. " There he had put into actual practice three of the revolutionary beliefs he had 
culled from the new psychology: that to put the child in possession of his fullest talents, 
education should be active rather than passive; that to prepare the child for a democratic 
society, the school should be social rather than individualist; and that to enable the child to 
think creatively, experimentation rather than imitation should be encouraged. 8 

Samuel Blumenfeld in his book, The Whole Language/OBE Fraud (Paradigm Co.: Boise, 
Idaho, 1996), further explains Dewey's perspective: 



6 



the deliberate dumbing down of america 



What kind of curriculum would fit the school that was a mini-cooperative society? Dewey's 
recommendation was indeed radical: build the curriculum not around academic subjects but 
around occupational activities which provided maximum opportunities for peer interaction 
and socialization. Since the beginning of Western civilization, the school curriculum was cen- 
tered around the development of academic skills, the intellectual faculties, and high literacy. 
Dewey wanted to change all of that. Why? Because high literacy produced that abominable 
form of independent intelligence which was basically, as Dewey believed, anti-social. 

Thus, from Dewey's point of view, the school's primary commitment to literacy was 
indeed the key to the whole problem. In 1898, Dewey wrote an essay, "The Primary-Edu- 
cation Fetish," in which he explained exactly what he meant: 

There is... a false education god whose idolators are legion, and whose cult influences the 
entire educational system. This is language study — the study not of foreign language, but of 
English; not in higher, but in primary education. It is almost an unquestioned assumption, 
of educational theory and practice both, that the first three years of a child's school life 
shall be mainly taken up with learning to read and write his own language. If we add to 
this the learning of a certain amount of numerical combinations, we have the pivot about 
which primary education swings.... It does not follow, however, that conditions — social, 
industrial and intellectual — have undergone such a radical change, that the time has come 
for a thoroughgoing examination of the emphasis put upon linguistic work in elementary 
instruction.... The plea for the predominance of learning to read in early school life because 
of the great importance attaching to literature seems to me a perversion. 



Endnotes: 

1 Paolo Lionni and Lance J. Klass. The Leipzig Connection: The Systematic Destruction of American Education (Heron Books: 
Portland, Ore., 1980). 

2 Ibid. 

3 The Leipzig Connection may be obtained by sending a check for $11.45 to: Heron Books, P.O. Box 503, Sheridan, OR, or by 
calling 1-503-843-3834. 

4 Rudolph Pintner et al. An Outline of Educational Psychology, Revised (Barnes & Noble: New York, 1934), p. 79. 

5 Dr. Cuddy's important publications on the history of American education, from which this writer has frequently quoted, can be 
obtained by writing: Florida ProFamily Forum, Inc., P.O. Box 1059, Highland City, FL 33846-1059; or by calling 1-914-644-6218. 
Cuddy's newly revised edition of Chronology of Education with Quotable Quotes and Secret Records Revealed: The Men, the 
Money and the Methods Behind the New World Order should be in the library of every serious education researcher. 

6 The Leipzig Connection, pp. 36-39. 

7 Ibid. 

8 These quotes taken from Ida B. DePencier's book, The History of the Laboratory Schools: The University of Chicago, 1896-1965 
(Quadrangle Books: Chicago, 1967) and A History of Teachers College: Columbia University by Lawrence A. Cremin, David A. 
Shannon, and Mary Evelyn Townsend (Columbia University Press: New York, 1934), as cited in The Leipzig Connection. 



2 



THE TURNING OF THE TIDES*: 
early twentieth century 



For a nation that had been able to point with pride to extraordinary advances in all 
areas of endeavor carried out by individuals, with no assistance whatsoever from the government, 
the early years of the twentieth century surely reflected a "Turning of the Tides." An alien collectivist 
(socialist) philosophy, much of which came from Europe, crashed onto the shores of our nation, 
bringing with it radical changes in economics, politics, and education, funded — surprisingly 
enough — by several wealthy American families and their tax-exempt foundations. 

The goal of these wealthy families and their foundations — a seamless non-competitive global 
system for commerce and trade — when stripped of flowery expressions of concern for minorities, 
the less fortunate, etc., represented the initial stage of what this author now refers to as the 
deliberate dumbing down of america. 

Seventy years later, the carefully laid plans to change America from a sovereign, constitutional 
republic with a free enterprise economic base to just one of many nations in an international socialist 
(collectivist) system (New World Order) are apparent. Only a dumbed down population, with no 
memory of America's roots as a prideful nation, could be expected to willingly succumb to the 
global workforce training planned by the Carnegie Corporation and the John D. Rockefellers, I 
and II, in the early twentieth century which is being implemented by the United States Congress 
in the year 1999. 

* "The Turning of the Tides" is the title of a report submitted to Congress by Hon. Paul W. Shafer (Mich.) and John Howland 
Snow. The original text was delivered in the House of Representatives on March 21, 19S2. 



7 



8 



the deliberate dumbing down of america 



1902 

The General Education Board (GEB) was incorporated by an act of the United States 
Congress. Approved January 12, 1902, the General Education Board was endowed by Mr. John 
D. Rockefeller, Sr., for the purpose of establishing an educational laboratory to experiment 
with early innovations in education. 



1905 

In 1905 the Intercollegiate Socialist Society (ISS) was founded in New York City 

by Upton Sinclair, Jack London, Clarence Darrow and others. Its permanent headquarters 
were established at the Rand School of Social Studies in 1908 and ISS became the League 
for Industrial Democracy (LID) in 1921. John Dewey became president of the League for 
Industrial Democracy in 1939. 

The Carnegie Foundation for the Advancement of Teaching was founded in 1905. 

Henry S. Pritchett served as the Foundation's first president. Pritchett was the author of 
What Is Religion and Other Student Questions (Houghton Mifflin Company: Boston, 1906), 
Relations of Denominations to Colleges (1908), and A Woman's Opportunities in Christian 
Industry and Business (1907). 



1906 

National Education Association (NEA) became a federally chartered association for 

teachers in 1906 under the authority of H.R. 10501. Originally founded in 1857, it was known 
as the National Teachers Association until 1870. 



1908 

In 1908 Italian educator, the late Maria Montessori (1870-1952), developed a method 
of teaching — relying on guidance and training of senses rather than more rigid control of 
children's activities — which would be very influential throughout the rest of the century. 
Montessori was a doctor who, after graduating from medical school in Rome, took a position 
at a psychiatric clinic and became interested in helping retarded children. Her pedagogical 
mentor became Edouard Seguin, a French physician who worked with retarded children 
and who promoted the idea that having the children work with concrete objects helped 
their physical and mental development. 

Montessori opened her first Casa dei Bambini (Montessori school) in Rome in 1907. She 
created a classroom climate in which her belief that a child's "individual liberty" would be 



The Turning of the Tides : c. 1913 



9 



violated "if two children want the same material" and are not "left to settle the problem for 
themselves" or by forcibly removing a misbehaving child from a group. Montessori, much 
like Rudolph Steiner of Germany, taught that each child is already a perfectly developed 
adult human being and that through her educational process "the incarnating child" can 
find his own place in the cosmos. It should be noted that at one time Benito Mussolini was 
president of the Montessori Society of Italy. 

The Montessori Method was published in 1912 and much of Montessori's work was 
printed by the Theosophical Publishing House. Montessori once lived with the Theosophists 
in India and earned the praise of Mahatma Gandhi with her "Cosmic Education" which was 
popular with Hindus and Theosophists worldwide. Elizabeth Clare Prophet, the cultic head 
of the Church Universal and Triumphant, founded a group called Montessori International, 
and Robert Muller, the celebrated author of the New Age World Core Curriculum, in a Costa 
Rica speech claimed that the Montessori Method was one of the educational programs which 
would greatly benefit global children for the New Age. 

In her Education for a New World Montessori wrote that "The world was not created 
for us to enjoy, but we are created to evolve the cosmos. " In an issue of the North American 
Montessori Teachers Association Journal one finds the following revealing comment: 

Maria Montessori, along with many other enlightened thinkers of our time, foresaw nothing 
less than the emergence of a new human culture. This new culture, a global, planetized 
humanity, would be based on a new consciousness of the unity and interdependence of all 
being, the interconnectedness of all forms of energy and matter. It is a culture of the present 
paradigm shift, by which we are beginning to align ourselves to educate the human potential 
for conscious cooperation with the evolution of life on the planet. 1 



1913 

John D. Rockefeller, Jr's director of charity for the Rockefeller Foundation, Frederick 
T. Gates, set up the Southern Education Board (SEB) , which was later incorporated into the 
General Education Board (GEB) in 1913, setting in motion "the deliberate dumbing down 
of America. " The Country School of Tomorrow: Occasional Papers No. 1 (General Education 
Board: New York, 1913) written by Frederick T. Gates contained a section entitled "A Vision 
of the Remedy" in which he wrote the following: 

Is there aught of remedy for this neglect of rural life? Let us, at least, yield ourselves to the 
gratifications of a beautiful dream that there is. In our dream, we have limitless resources, 
and the people yield themselves with perfect docility to our molding hand. The present 
educational conventions fade from our minds; and, unhampered by tradition, we work our 
own good will upon a grateful and responsive rural folk. We shall not try to make these 
people or any of their children into philosophers or men of learning or of science. We are 
not to raise up from among them authors, orators, poets, or men of letters. We shall not 
search for embryo great artists, painters, musicians. Nor will we cherish even the humbler 
ambition to raise up from among them lawyers, doctors, preachers, politicians, statesmen, 
of whom we now have ample supply. 



10 



1914 

A RESOLUTION WAS PASSED BY THE NORMAL SCHOOL SECTION OF THE NATIONAL EDUCATION 

Association at its annual meeting in St. Paul, Minnesota in the year 1914. An excerpt 
follows: 

We view with alarm the activity of the Carnegie and Rockefeller Foundations — agencies not 
in any way responsible to the people — in their efforts to control the policies of our State 
educational institutions, to fashion after their conception and to standardize our courses 
of study, and to surround the institutions with conditions which menace true academic 
freedom and defeat the primary purpose of democracy as heretofore preserved inviolate in 
our common schools, normal schools, and universities. 



1917 

The 1917 Congressional Record of the United States Senate published the FOLlowing 
excerpt from a booklet containing articles by Bishop Warren A. Candler, Chancellor of 
Emory University in Atlanta: 

This board [the General Education Board] was authorized to do almost every conceivable 
thing which is anywise related to education, from opening a kitchen to establishing a 
university, and its power to connect itself with the work of every sort of educational 
plant or enterprise conceivable will be especially observed. This power to project its 
influence over other corporations is at once the greatest and most dangerous power 
it has. (p. 2831) 



The United States entered World War I in 1917. 



1918 

In the January 13, 1918 issue of New York World William Boyce Thompson, FEDeral 
Reserve Bank director and founding member of the Council on Foreign Relations, stated 
that 

Russia is pointing the way to great and sweeping world changes. It is not in Russia alone 
that the old order is passing. There is a lot of the old order in America, and that is going, 
too.... I'm glad it is so. When I sat and watched those democratic conclaves in Russia, I felt 
I would welcome a similar scene in the United States. 

[Ed. Note: M. Maxine Tremaine of Massachusetts, recognized for her careful research related 
to international affairs, made the following statements regarding Willian Boyce Thompson 
before the National Convention of Women for Constitutional Government in a July 1983 
speech entitled "Russia Is the Model Country of International Bankers and Industrialists 
Administered by the United Nations Headquarters in Geneva, Switzerland": "William Boyce 



The Turning of the Tides : c. 1919 



11 



Thompson personally contributed $1 million to the Russian Revolution. He also arranged for 
the transfer of money from the United States to (the Communist revolutionaries) . "] 

Carnegie and Rockefeller foundations planned the demise of traditional academic 

education in 1918. Rockefeller's focus would be national education; Carnegie would be 
in charge of international education. 



1919 

The Institute of International Education (HE) was founded in 1919 through a grant 
from the Carnegie Endowment for International Peace. The Institute's purpose was to operate 
a student exchange program. This process of "exchanges" grew in concept and practice with 
the HE administering visitor exchange programs for the U.S. Information Agency (USIA) in the 
1990s. The U.S. -Soviet Education Agreements were negotiated by the Carnegie Endowment's 
parent organization, the Carnegie Corporation, fostering exchanges of curriculum, pedagogy 
and materials as well as students. 



The Progressive Education Association (P.E.A.) was founded in 1919 and ORGAnized by 
John Dewey, even though he would not become a member in its early years. P.E.A.'s goals 
and aims were projected for the last half of this century at a board meeting held November 
15-17, 1943 in Chicago, Illinois. Attendees included: Harold Rugg, Marion Carswell, Arthur 
Gould, Theodore Brameld, Prudence Bosterick, and Carson Ryan. Speaking of their plans for 
the period following World War II, the board published a statement in its journal Progressive 
Education (December 1943, Vol. XX, No. 8) which included the following excerpt: 

This is a global war, and the peace now in the making will determine what our national 
life will be for the next century. It will demonstrate the degree of our national morality. We 
are writing now the credo by which our children must live. . . . 

Your Board unanimously proposes a broadening of the interests and program of 
this Association to include the communities in which our children live. To this end, 
they propose additions to the governing body to include representatives of welfare 
services, health, industry, labor and the professions. In short, a cross-section body to 
give scope to our program.... 

Yes, something happened around a table in Chicago. An organization which might 
have become mellowed with the years to futility, in three short days again drew a blueprint 
for children of the world. 

[Ed. Note: For what "our national life will be for the rest of this century" and perhaps on into 
the next, see the 1946 Mongomery County Blueprint and 1999 Gwinnett Daily entries.] 



12 



1921 

In 1921 the League for Industrial Democracy changed its name from the iNTERCOLlegiate 

Socialist Society (ISS) and stated its purpose as: "Education for a new social order based on 
production and not for profit" ("A Chronology of Education," Dorothy Dawson, 1978). 

Harold Rugg, writer of social studies textbook series entitled The Frontier Thinkers 
which was published by the Progressive Education Association, in 1921 became president 
of the National Association of Directors of Education Research which would later become 
known as the American Educational Research Association. 



The Council on Foreign Relations was established in 1921 through the efforts of Col. 
Edwin Mandell House, confidant extraordinaire to President Woodrow Wilson and about 
whom Wilson said, "Mr. House is my second personality... His thoughts and mine are one." 
House was the initiator of the effort to establish this American branch of the English Royal 
Institute of International Affairs. Prior to 1921, House's group, "the Inquiry," called the CFR 
the "Institute of International Affairs." In 1912 House had authored Philip Dm: Administrator 
which promoted "socialism as dreamed of by Karl Marx" about which book Wilson's Secretary 
of the Interior Franklin Lane wrote to a personal friend: "All that book has said should be, 
comes about. The President comes to Philip Dru in the end." 

Walter Lippmann, member of the Fabian Society and Intercollegiate Socialist Society, was 
a founding member of the CFR. Whitney Shepardson was a director of the CFR from 1921 until 
1966. Shepardson had been an assistant to Col. House in the 1918 peace conference following 
World War I and served as secretary of the League of Nations committee. Shepardson later 
became a director of the Carnegie Corporation British and Colonies fund. Other early CFR 
members included: Charles E. (Chip) Bohlen, first secretary to the American embassy in 
Moscow during World War II and President Franklin Roosevelt's interpreter for his meeting 
with Josef Stalin at the Teheran conference; Frank Aydelotte, a trustee of the Carnegie 
Foundation, president of Swarthmore College, American secretary to the (Cecil) Rhodes 
Trustees (of the Rhodes Scholarship Fund), and director of the Institute for Advanced Study 
at Princeton; Secretary of War Henry Stimson, who initiated George Bush into "Skull and 
Bones" and whose special consultant Bernadotte Schmitt had also been a special advisor 
to Alger Hiss when he had served as secretary-general of the United Nations Conference 
on International Organization in San Francisco in 1945; and William Paley, founder of the 
Columbia Broadcasting System (CBS) whose chief advisor was Edward Bernays, Sigmund 
Freud's nephew who wrote Propaganda, in which Bernays reveals: 

Those who manipulate the organized habits and opinions of the masses constitute an 
invisible government which is the true ruling power of the country.... It remains a fact in 
almost every act of our daily lives, whether in the sphere of politics or business, in our 
social conduct or our ethical thinking, we are dominated by this relatively small number 
of persons.... As civilization has become more complex, and as the need for invisible 
government has been increasingly demonstrated, the technical means have been invented 
and developed by which opinion may be regimented. 



The Turning of the Tides : c. 1922 



13 



The late Professor Carroll Quigley of Georgetown University described the CFR as "a 
front for J.P Morgan and Company in association with the very small American Round Table 
Group." Quigley further commented: 

The board of the CFR have carried ever since the marks of their origin.... There grew up 
in the 20th century a power structure between London and New York which penetrated 
deeply into university life, the press, and the practice of foreign policy.... The American 
branch of this "English Establishment" exerted much of its influence through five American 
newspapers {New York Times, New York Herald Tribune, Christian Science Monitor, 
Washington Post, and the late lamented Boston Evening Transcript). 2 

Arthur Schlesinger, Jr., penned a tome entitled A Thousand Days in 1965 in which he 
wrote that 

the New York financial and legal community was the heart of the American establishment. ... 
Its front organizations [were] the Rockefeller, Ford and Carnegie foundations and the 
Council on Foreign Relations. 



1922 

On December 15, 1922 the Council on Foreign Relations endorsed world GOVERNment. 



1925 

The International Bureau of Education, formerly known as the Institute JEAN-Jacques 
Rousseau, was established in 1925 with a grant from the Rockefeller Foundation. The 
Bureau became part of the United Nations Educational, Scientific and Cultural Organization 
(UNESCO). 

In 1925 Tennessee vs. John Thomas Scopes, or the Scopes "monkey trial," took place in 
Dayton, Tennessee. This trial was an important educational milestone regarding the teaching 
of the theory of evolution in public schools. Scopes pitted two famous barristers of the 
day — William Jennings Bryan and Clarence Darrow — against each other. The basic argument 
of the American Civil Liberties Union (ACLU) and the evolutionists' was that evolutionary 
theory should not be censored from the public schools. After this trial, Fabian Socialist 
and first head of UNESCO Sir Julian Huxley claimed that humanism's "keynote, the central 
concept to which all its details are related, is evolution." 

[Ed. Note: Huxley could have continued by predicting that educational and training methods 
in the future would be based on the theory of evolution — that man is an animal to be 
trained as Pavlov, Thorndike and Skinner trained animals, as with outcome-based education, 
mastery learning and direct instruction.] 



14 



1927 

The Christian Science Monitor of August 8, 1927 quoted from an address to the World 
Federation of Education Associations (WFEA) at their Toronto, Canada conference delivered 
by Dr. Augustus Thomas, commissioner of education for the state of Maine. Excerpts from 
Dr. Thomas's revealing address follow: 

If there are those who think we are to jump immediately into a new world order, 
actuated by complete understanding and brotherly love, they are doomed to disappointment. 
If we are ever to approach that time, it will be after patient and persistent effort of long 
duration. The present international situation of mistrust and fear can only be corrected by 
a formula of equal status, continuously applied, to every phase of international contacts, 
until the cobwebs of the old order are brushed out of the minds of the people of all lands. 
This means that the world must await a long process of education and a building up 
of public conscience and an international morality, or, in other words, until there is a 
world-wide sentiment which will back up the modern conception of a world community. 
This brings us to the international mind, which is nothing more or less than the habit of 
thinking of foreign relations and business affecting the several countries of the civilized 
world as free co-operating equals. 



1928 

A DELIBERATE MATH "DUMB DOWN" WAS SERIOUSLY DISCUSSED IN 1928. A TEACHER NAMED 

O.A. Nelson, John Dewey, Edward Thorndike (who conducted early behavioral psychology 
experiments with chickens), and other Council on Foreign Relations members attended a 
Progressive Education Association meeting in 1928 at which O.A. Nelson was informed that 
the purpose of "new math" was to dumb down students. Nelson revealed in a later interview 
with Young Parents Alert that the Progressive Education Association was a communist front. 
According to the National Educator (July, 1979): 

Mr. O.A. Nelson, retired educator, has supplied the vitally important documentation 
needed to support the link-up between the textbooks and the Council on Foreign Relations. 
His letter was first printed in "Young Parents Alert" (Lake Elmo, Minnesota). His story 
is self-explanatory. 

I know from personal experience what I am talking about. In December 1928, 
I was asked to talk to the American Association for the Advancement of Science. On 
December 27th, naive and inexperienced, I agreed. I had done some special work in 
teaching functional physics in high school. That was to be my topic. The next day, the 
28th, a Dr. Ziegler asked me if I would attend a special educational meeting in his room 
after the AAAS meeting. We met from 10 o'clock [p.m.] until after 2:30 a.m. 

We were 13 at the meeting. Two things caused Dr. Ziegler, who was Chairman of 
the Educational Committee of the Council on Foreign Relations, to ask me to attend... 
my talk on the teaching of functional physics in high school, and the fact that I was a 
member of a group known as the Progressive Educators of America, which was nothing 
but a Communist front. I thought the word "progressive" meant progress for better 
schools. Eleven of those attending the meeting were leaders in education. Drs. John 
Dewey and Edward Thorndike, from Columbia University, were there, and the others 



The Turning of the Tides : c. 1928 



15 



were of equal rank. I checked later and found that ALL were paid members of the 
Communist Party of Russia. I was classified as a member of the Party, but I did not 
know it at the time. 

The sole work of the group was to destroy our schools! We spent one hour and 
forty-five minutes discussing the so-called "Modern Math." At one point I objected 
because there was too much memory work, and math is reasoning; not memory. Dr. 
Ziegler turned to me and said, "Nelson, wake up! That is what we want... a math that 
the pupils cannot apply to life situations when they get out of school!" That math was 
not introduced until much later, as those present thought it was too radical a change. 
A milder course by Dr. Breckner was substituted but it was also worthless, as far as 
understanding math was concerned. The radical change was introduced in 1952. It was 
the one we are using now. So, if pupils come out of high school now, not knowing any 
math, don't blame them. The results are supposed to be worthless. 

[Ed. Note: Mr. Nelson was formerly assistant principal at Wilson High School, Minneapolis, 
Minnesota, as well as Johnson High School in St. Paul. This writer was fortunate enough 
to verify the above story by calling a teacher colleague of the late Mr. Nelson. Also, 
members of the "Young Parents Alert" in Lake Elmo, Minnesota provided the writer with 
an audiocasette of the speech he gave at a Young Parents Alert education conference 
on April 28, 1979.] 

Endnotes: 

1 The referenced North American Association for Montessori Teachers Association Journal is published by the North American 
Association for Montessori Teachers Association (Cleveland Heights, Ohio, 1988, 4th quarter). 

2 Much of the information in the entry concerning the formation of the Council on Foreign Relations, including Prof. Quigley's 
quote, is taken from the recently updated edition of Dr. Dennis Laurence Cuddy's Secret Records Revealed: The Men, the Money, 
and the Methods Behind the New World Order (Hearthstone Publishing, Ltd.: Oklahoma City, 1999). 



3 



THE TROUBLING THIRTIES 



"A 

ilnd the builder of this new world must be education.... Plainly, the first step 
in the case of each country is to train an elite to think, feel, and act internationally." The preceding 
words of Paul Mantoux of Paris, France are taken from the foreword to International Understanding 
by John Eugene Harley, published by the Stanford University Press in 1931. 

A flock of individuals of collectivist persuasion jumped on Monsieur Mantoux's bandwagon 
in "The Troubling Thirties." Aldous Huxley brought along his Brave New World; Professor George 
Counts contributed his Dare the School Build a New Social Order?; William Z. Foster (national 
chairman of the Communist Party of the United States of America) wrote his Toward a Soviet 
America; John Dewey co-authored The Humanist Manifesto I; the Carnegie Corporation added its 
Conclusions and Recommendations for the Social Studies and its Eight- Year Study (which was in 
the 1990s referred to by the Education Commission of the States as the model for Outcome-Based 
Education); and surprisingly, Herbert Hoover proposed a Research Committee on Recent Social 
Trends to Implement the Planned Society. 

The thirties were indeed troubling. Unfortunately, the average American was unaware of the 
important steps being taken to collectivize (socialize) this nation, particularly that of utilizing the 
schools as the vehicle through which Mantoux's "new world" could be brought into being. 

1931 

International Understanding by John Eugene Harley (Stanford University Press: 

17 



18 



Stanford, Calif., 1931) was published. Excerpts from the foreword by Paul Mantoux of 
Paris, France follows: 

And the builder of this new world must be education. Education alone can lay the 
foundation on which the building is to rest. On this point a kind of consensus has been 
reached by those who trust the future of international cooperation and those who refuse 
to believe in it. When the latter go about repeating that to succeed in such a task one 
would have to change human nature, they do but exaggerate the acknowledged need for 
a gradual and patient reshaping of the public mind.... How can a well-prepared elite be 
raised throughout the world to spread its influence over the masses, who can then support 
them in their turn?... Here we encounter the real problem, and it is essentially a problem 
of education.... During the last decade of the nineteenth century, in England, a group of 
men devoted to the study of economic problems endeavored to prepare the public mind 
for broad changes which, in their view, must be effected if social peace is to be preserved. 
To this end they founded the London School of Economics and Political Science, which 
today ranks among the most famous institutions of education. In our day, the problem 
has become more far-reaching still. Brutal events have supplied evidence of a truth that 
had been slowly gaining ground, namely, the interdependence of nations and the need for 
establishing in the world an order and harmony hitherto lacking. 

Some [undertakings] have specialized in one branch of knowledge, like the Institute 
of Pacific Relations; others cover the whole field of political science, like the Ecole des 
Sciences Politiques, the London School of Economics, and the Deutsche Hochschule fur 
Politik. Some are debating or research centers, widely differing in character from one 
another according as their tendency is scientific rather than political; such are the Royal 
Institute of International Affairs, the Council on Foreign Relations, the Social Science 
Research Council, and the American Academy of Political and Social Science. . . . the World 
Education Association and the International Bureau of Education are endeavoring to 
compare education in civilized countries and to bridge differences by a process of mutual 
borrowing of methods.... Plainly, the first step in the case of each country is to train an elite 
to think, feel, and act internationally. 



1932 

Brave New World (Doubleday, Dotan: Garden City, N.Y., 1932) by Aldous Huxley, 

the renowned English novelist and essayist, was published. In this famous work Huxley 
satirized the mechanical world of the future in which technology replaced much of the 
everyday activities of humans. 

Professor George Counts of Columbia University Teachers College wrote Dare the 

School Build a New Social Order? (John Day Company: New York, 1932). He and many other 
American educators traveling back and forth to Russia became completely convinced that 
the Soviet Communist system was the ultimate system. Counts was deeply involved in, and 
a member of, the Carnegie Foundation-financed Commission on the Social Studies which 
produced the American Historical Association's Conclusions and Recommendations: Report 
of the Commission on the Social Studies in 1934. He was also the author of The American 



The Troubling Thirties : c. 1932 



19 



Road to Culture series (Quinn and Broden, Co., Inc.: Rahway, N.J., 1930-1934) and The 
Soviet Challenge to America (John Day Co.: New York, 1931). Excerpts from this entry's major 
focus, Counts's Dare the School Build a New Social Order?, follow: 

If property rights are to be diffused in industrial society, natural resources and all 
important forms of capital will have to be collectively owned. . . . This clearly means that, if 
democracy is to survive in the United States, it must abandon its individualistic affiliations in 
the sphere of economics.... Within these limits, as I see it, our democratic tradition must of 
necessity evolve and gradually assume an essentially collectivistic pattern. 

The important point is that fundamental changes in the economic system are 
imperative. Whatever services historic capitalism may have rendered in the past, and they 
have been many, its days are numbered. With its dedication [to] the principle of selfishness, 
its exaltation of the profit motive, its reliance upon the forces of competition, and its placing 
of property above human rights, it will either have to be displaced altogether or changed so 
radically in form and spirit that its identity will be completely lost. 



Toward a Soviet America (Elgin Enterprises, Inc.: Los Angeles, 1932) by William Z. Foster, 
national chairman of the Communist Party of the United States, was published. Foster died in 
1961 in Moscow and was given a state funeral in the Kremlin. His book called for 

a U.S. Department of Education; implementation of a scientific materialist philosophy; 
studies revolutionized, being cleansed of religious, patriotic and other features of the 
bourgeois ideology; students taught on the basis of Marxian dialectical materialism, 
internationalism and general ethics of a new socialist society; present obsolete methods 
of teaching will be superseded by a scientific pedagogy. The whole basis and organization 
of capitalist science will be revolutionized. Science will become materialistic, hence truly 
scientific. God will be banished from the laboratories as well as from the schools. 

[Ed. Note: Everything called for by Foster has taken place. "Scientific pedagogy" is 
OBE/mastery learning/direct instruction (Pavlov/Skinner). See the 1973 entry for Foundations 
of Behavioral Research, Second Edition, for some of the implications of implementing "a 
scientific materialistic philosophy. "] 

President Herbert Hoover appointed a research committee on recent social trends to 

implement the planned society in 1932. (In 1919 Franklin Roosevelt had told a friend that he 
personally would like to see Hoover in the White House.) The Research Committee was not 
approved nor funded by Congress; it became an Executive Action and was underwritten 
by the Rockefeller Foundation. No report was made to Congress or to the people during 
the time it functioned. The work of that committee has been called "a monumental 
achievement by the largest community of social scientists ever assembled to assess the 
social condition of a nation." 1 



The National Education Association created the Educational Policies CoMMission (EPC) 
in 1932 for the purpose of changing the Goals for American Education. In 1944 the EPC 



20 



prepared a volume of extreme importance entitled Education for All American Youth. This 
highly promoted document told, in fictional format and as though it were a fait accompli, 
how the "Planners" would solve all the problems; not just of youth, but of two imaginary 
communities — a village and a city — through involving citizens in cooperation for the goals 
of the planners. The following goals are laid out in this book: 

• federal programs for health, education and welfare combined in one giant bureau 

• Head Start programs 

• getting pre-school children into the system 

• teacher participation in curriculum decisions 

• federal funds without federal control 

• youth services through a "poverty program" 

• removal of local control of political and educational matters "without seeming 
to do so" 

• sex education 

[Ed. Note: The involvement of "citizens in cooperation for the goals of the planners" is 
"participatory democracy," unheard of publicly until twenty years later. 2 ] 

The Eight- Year Study was initiated by the Commission on Relation of School and College 
of the Progressive Education Association in 1932. Chairman of the Commission and author 
of The Story of the Eight-Year Study (Harper & Brothers: New York, 1942) Wilford M. Aikin 
chronicled the study's beginnings and purposes. Recounting the proceedings at the 1930 
annual meeting of the Progressive Education Association, Aikin wrote: 

In the course of... discussion many proposals for improvement of the work of our 
secondary schools were made and generally approved. But almost every suggestion was 
met with the statement, "Yes, that should be done in our high schools, but it can't be 
done without risking students' chances of being admitted to college. If the student doesn't 
follow the pattern of subjects and units prescribed by the colleges, he probably will not be 
accepted." ...[S]omeone with courage and vision proposed that the Progressive Education 
Association should be asked to establish a Commission on the Relation of School and 
College to explore possibilities of better co-ordination of school and college work and 
to seek an agreement which would provide freedom for secondary schools to attempt 
fundamental reconstruction.... All members agreed that secondary education in the 
United States needed experimental study and comprehensive re-examination in the 
light of fuller knowledge of the learning process and the needs of young people in 
our society.... (p. 2) 

It has been assumed that physical and emotional reactions are not involved in the 
learning process, but if they are, they are not very important. The newer concept of 
learning holds that a human being develops through doing those things which have 
meaning to him; that the doing involves the whole person in all aspects of his being; 
and that growth takes place as each experience leads to greater understanding and more 
intelligent reaction to new situations. 

Holding this view, the participating schools believed that the school should become 
a place in which young people work together at tasks which are clearly related to their 
purposes.... The school should stimulate his whole being. It should provide opportunities for 



The Troubling Thirties : c. 1933 



21 



the full exercise of his physical, intellectual, emotional and spiritual powers as he strives to 
achieve recognition and a place of usefulness and honor in adult society, (p. 17) 

Beginning in 1933 and continuing through 1941, the Eight- Year Study laid the groundwork 
for many of the education "reforms" and innovations we are encountering today. Most of 
the funding for the study came from the Carnegie Corporation of New York and the General 
Education Board. Commission and working committee members of note who participated in 
the study are: Wilford Aikin, Bruno Bettelheim, Burton P. Fowler, Frances Knapp, Louis Raths, 
Harold Rugg, Ralph Tyler, Hilda Taba, and Goodwin Watson. 

Over the eight years of the study five volumes were published: The Story of the Eight-Year 
Study by Wilford Aikin; Exploring the Curriculum: The Work of the Thirty Schools from the 
Viewpoint of Curriculum Consultants by H.H. Giles, S.R McCutcheon, and A.N. Zechiel; 
Appraising and Recording Student Progress: Evaluation Records and Reports in the Thirty 
Schools by Eugene R. Smith, Ralph W. Tyler and the evaluation staff; Did They Succeed in 
College?: The Follow-up Study of the Graduates of the Thirty Schools by Neal E. Drought and 
William E. Scott with preface by Max McConn; and Thirty Schools Tell Their Story: Each 
School Writes of Its Participation in the Eight-Year Study. 

[Ed. Note: As will be seen in later entries in this book, the Eight-Year Study was foundational 
to outcome-based education and proposals to remove the Carnegie Unit. The Carnegie Unit 
has traditionally been the measure of participation; a certain number of units — hours in 
each class — in various disciplines have been required of the student in order to graduate 
or be accepted at a college. The Carnegie Unit measure is representative of the educational 
philosophy reflected in most state constitutions— that the state is responsible to provide and 
make available educational opportunities to all its citizens. The removal of this unit has been 
a central feature of current OBE/ML reform plans which reflect the philosophy that the state 
must guarantee that all citizens receive and achieve an educational outcome determined by 
the state. A change from "inputs" to "outputs."] 

1933 

Humanist Manifesto I was originally published in 1933 in the New Humanist (Vol. VI, 
#3, 1933: Yellow Springs, Ohio), the main publication of the American Humanist Association. 
Co-author John Dewey, the noted philosopher and educator, called for a synthesizing 
of all religions and a "socialized and cooperative economic order." The following are 
excerpts taken from Secular Humanism and the Schools: The Issue Whose Time Has 
Come by Onalee McGraw, Ph.D. (Critical Issues, Series 2, The Heritage Foundation: 
Washington, D.C., 1976): 

The basis of humanist belief is that there is no Almighty God, the Creator and 
Sustainer of life. Humanists believe that man is his own god. They believe that moral 
values are relative, devised according to the needs of particular people, and that ethics 
are likewise situational. 

Humanists reject Judeo-Christian moral and ethical laws, such as those contained 
in the Ten Commandments, calling them "dogmatic," "outmoded," "authoritarian," and 
a hindrance to human progress. In humanism, self-fulfillment, happiness, love, and 



22 



justice are found by each man individually, without reference to any divine source. In 
the Judeo-Christian ethic, there is and can be no real self-fulfillment, happiness, love, 
or justice on earth that can be found which does not ultimately issue from Almighty 
God, the Creator and Sustainer. 

Several main differences between the humanist ethic and the Judeo-Christian ethic 
become clear upon reading the Humanist Manifestos I and II (1933 and 1973) and comparing 
them to the tenets of the Judeo-Christian ethic contained in the Old and New Testaments.... 
At issue is the basic concept concerning the nature of man and the "rules" by which men 
govern themselves individually, in society, and in government. In the Judeo-Christian ethic, 
man's ultimate deliverance and salvation — his finding a means of living together on this 
planet, in peace, harmony, justice, and love — is through God's given "rules." 

For the humanist, man's greatness, his coming of age, his total fulfillment is found 
when he no longer needs the idea of God. Man gets rid of God, not just to do what he wills 
but to regain possession of human greatness. 

Is Humanistic Education unconstitutional? Inasmuch as humanistic curriculum 
programs and "values clarification" and "moral education" teaching strategies are based 
upon materialistic values found only in man's nature itself, they reject the spiritual 
and moral tradition of theistic faith and religion. Thus, many parents who subscribe to 
Judeo-Christian belief oppose humanistic education in the tax-supported schools on grounds 
that such programs promote and advocate the religion of secular humanism in violation of 
the First Amendment to the United States Constitution. 

The U.S. Supreme Court cited Secular Humanism as a religion in the 1961 case of 
Torcaso v. Watkins (367 U.S. 488). Roy Torcaso, the appellant, a practicing Humanist in 
Maryland, had refused to declare his belief in Almighty God, as then required by State law 
in order for him to be commissioned as a notary public. The Court held that the requirement 
for such an oath "invades appellant's freedom of belief and religion." The Court declared 
in Torcaso that the "no establishment" clause of the First Amendment reached far 
more than churches of theistic faiths, that it is not the business of government or its 
agents to probe beliefs, and that therefore its inquiry is concluded by the fact of the 
profession of belief. 

The Court stated: "We repeat and again reaffirm that neither a State nor the Federal 
Government can constitutionally force a person to profess a belief or disbelief in any religion. 
Neither can constitutionally pass laws or impose requirements which aid all religions as 
against non-believers, and neither can aid those religions based on a belief in the existence 
of God as against those religions founded on different beliefs." 

The Court has also stated "Among religions in this country which do not teach what 
would generally be considered a belief in the existence of God are Buddhism, Taoism, 
Ethical Culture, Secular Humanism and others." The Torcaso and Abington cases defined 
secular humanism as a religion and prohibited the government from establishing a 
religion of secularism by affirmatively opposing hostility to theistic religion, values, 
and beliefs. 3 



In 1933 Dr. Paul Mort, chairman of the Progressive Education Association's CoMmittee 
on the Emergency in Education and one of the foremost authorities in the U.S. on school 
finance, wrote an article entitled "National Support for Our Public Schools," which was 
published in the December issue of Progressive Education (The Progressive Education 
Association: Washington, D.C., 1933). An excerpt follows: 



The Troubling Thirties : c. 1934 



23 



At a time when schools should be particularly alert in helping to meet new conditions 
[Depression era], far too many of the individuals equipped to help in meeting these 
conditions have been removed from the payrolls, and in a vast number of communities 
schools have been reduced to the task of dishing out traditional subject matter. 

[Ed. Note: Read this quote at the next school budget meeting when taxpayers are being 
manipulated into paying more and more taxes to pay for controversial programs that have 
nothing to do with "traditional subject matter." You might point out that children were 
compelled to receive a better academic (traditional subject matter) education during the 
Depression due to hard times (less money). See the 1946 entry dealing with Community- 
Centered Schools: The Blueprint for another quote by Paul Mort regarding how long it 
takes to implement "change."] 

Dr. George Hartmann, professor of educational psychology at Pennsylvania State 

College, wrote "A New Definition of the Educated Man" for the December 1933 issue of 
Progressive Education. Hartmann was active in the League for Independent Political Action, 
the Farmer- Laborer Political Federation, and the Socialist Party. He was co-author of Readings 
in Industrial Psychology (Appleton) and a frequent contributor to psychological journals. 
Excerpts from "A New Definition of the Educated Man" follow: 

Some may at once protest, "What? Is education to have as one of its symptoms the 
acceptance of radical views?" The answer is "Yes," if "radicalism" means any serious 
endeavor to alter our social arrangements for the better. We must consciously adopt and 
foster the position that it is the prime business of education to remake our institutions 
and our traditions — and learn to recognize the possession of this spirit as one of the main 
earmarks of the educated man.... The principal obstacle to the acceptance of this outcome is 
the persistence of a set of "inert" ideas (to use Whitehead's phrase) which lingers to afflict 
our civilization. One of the most subtle and pernicious of these inherited and unexamined 
postulates is the view that the aim of education (or life, for that matter) is the development 
of the individual's personality as such.... 

...For good or for ill, we must cease training people for what they are going to do, and 
point out instead what they should do. It will probably fall to our generation to resurrect the 
word "ought" to its rightful status in the affairs of men — for what else are values if not areas 
of experience with an imperious push or pull emanating from them? 

There are some purists who will be frightened by the indoctrination which must 
inevitably follow if this recommendation is effective.... Such an objection is silly, for 
since indoctrination of attitudes occurs anyhow, our sole concern must be to ensure 
that the right ones are established.... 

How any one with the least pretensions to higher education can fail to be thrilled by 
the ultimate prospects of a single world government, the abolition of war and poverty, the 
enhancement of beauty in daily life, and the enlightened practice of eugenics and euthenics, 
is a riddle which can be explained only by a blind, exclusive regard for the immediately 
practicable.... What nobler and more enlightened aim for education in this century can 
possibly be proposed than that it enlists the enthusiasms of youth for the attainment of 
more rational forms of group living. 



24 



1934 

Conclusions and Recommendations for the Social Studies (Chas. Scribner's Sons: New 

York, 1934) compiled by the American Historical Association was published. This book was 
the result of a project funded to the tune of $340,000 by the Carnegie Corporation of New 
York called "Investigation of the Social Studies in the Schools," and was carried out by 
the American Historical Association. Professor Harold Laski, a philosopher of British 
socialism, said of this report: "At bottom, and stripped of its carefully neutral phrases, 
the report is an educational program for a Socialist America." 4 Important excerpts from 
Conclusions follow: 

[Preface] The Commission is under special obligation to its sponsor, the American 
Historical Association. Above all, it recognizes its indebtedness to the Trustees of the 
Carnegie Corporation, whose financial aid made possible the whole five-year investigation 
of social science instruction in the schools, eventuating in the following Conclusions 
and Recommendations. 

The Commission could not limit itself to a survey of textbooks, curricula, methods 
of instruction, and schemes of examination, but was impelled to consider the condition 
and prospects of the American people as a part of Western Civilization merging into 
a world order, (p. 1) 

Of utmost importance is the following admission of the planners' goals to change our free 
enterprise/representative republic: 

The Commission was also driven to this broader conception of its task by the obvious 
fact that American civilization, in common with Western civilization, is passing through 
one of the great critical ages of history, is modifying its traditional faith in economic 
individualism, and is embarking upon vast experiments in social planning and control which 
call for large-scale cooperation on the part of the people.... (pp. 1-2) 

Cumulative evidence supports the conclusion that in the United States as in other 
countries, the age of laissez faire in economy and government is closing and a new age 
of collectivism is emerging.... (p. 16) 

The implications for education are clear and imperative: (a) the efficient functioning 
of the emerging economy and the full utilization of its potentialities require profound 
changes in the attitudes and outlook of the American people, especially the rising 
generation — a complete and frank recognition that the old order is passing, that the new 
order is emerging.... (pp. 34-35) 

Organized public education in the United States, much more than ever before, is now 
compelled, if it is to fulfill its social obligations, to adjust its objectives, its curriculum, 
its methods of instruction, and its administrative procedures to the requirements of 
the emerging integrated order. 

If the school is to justify its maintenance and assume its responsibilities, it must 
recognize the new order and proceed to equip the rising generation to cooperate effectively 
in the increasingly interdependent society and to live rationally and well within its 
limitations and possibilities.... Signed: A.C. Krey, Chairman; Charles A. Beard; Isaiah 
Bowman (signed with reservations printed as Appendix C) ; Ada Comstock; George S. Counts; 
Avery 0. Craven; Guy Stanton Ford; Carlton J. H. Hayes; Henry Johnson; A.C. Krey; Leon C. 
Marshall; Jesse H. Newton; Jesse F. Steiner. (Frank A. Ballou, Edmund E. Day, Ernest Horn, 
and Charles E. Merriam declined to sign these Conclusions.) (p. 35) 



The Troubling Thirties : c. 1939 



25 



1939 

Mem Kampf by Adolph Hitler (Stackpole Sons Publishers: Germany, 1939) was 

published. Excerpts follow: 

Academic school training, which today is the be-all and end-all of the State's entire 
educational work, can be taken over by the populist state with but slight changes. These 
changes are in three fields.... 

In the first place, the childish brain must in general not be burdened with things 
ninety-five per cent of which it does not need, and which it therefore forgets [emphasis in 
original] . The curriculum of primary and grammar schools, in particular, is a hybrid affair. 
In many of the individual subjects the material to be learned has increased to such an 
extent that only a fraction of it sticks in the individual's head, and only a fraction of this 
abundance can be used, while on the other hand it is not enough for the purpose of a man 
working and his living in a certain field. Take for instance the ordinary civil servant who 
has graduated from secondary school or from the upper realschule, when he is thirty-five or 
forty; and test the school learning which he once so painfully acquired. How little of all the 
stuff that was then drummed into him still remains! One will, indeed, be answered: "Yes, 
but the object of the amount that was learned was not simply to put a man in possession 
of a great deal of information later, but to train his power of intellectual absorption, and 
the thinking power, particularly the power of observation of the brain." This is true in part. 
But still there is danger that the youthful brain may be drowned in a flood of impressions 
which it is very seldom able to master, and whose individual elements it can neither sift 
nor judge according to their greater or less importance; and on top of that, it is usually not 
the inessential but the essential which is forgotten and sacrificed. Thus the main object of 
learning so much is lost; for after all it cannot consist in making the brain able to learn by 
unmeasured piling-up of instruction, but in creating for later life a fund of knowledge which 
the individual needs, and which through him once more benefits society... 

Summing up: the populist state will have to put general scholastic instruction into a 
shortened form, including the very essentials. Outside of that, opportunity must be offered 
for thorough, specialized scholarly training. It is enough if the individual person is given a 
store of general knowledge in broad outline, receiving a thorough detailed and specialized 
training only in the field which will be his in later life.... The shortening of the schedule and 
of the number of classes thus attained would be used for the benefit of the development of 
the body, the character, of will and resolution.... 

There should be a sharp distinction between general and specialized knowledge. As 
the latter threatens, especially today, to sink more and more into service of Mammon, 
general cultivation, at least so far as its more idealistic approach is concerned, must 
be preserved as a counter-weight. Here too the principle must be incessantly pounded in that 
industry and technology, trade and commerce can flourish only so long as an idealistically- 
minded national community provides the necessary conditions. These conditions are 
founded not on materialistic egoism, but on self-denying readiness for sacrifice. 

[Ed. Note: This author has quoted extensively from Mein Kampf 's chapter on education 
in order that the reader may see the similarity between Hitler's views on education and 
workforce training and those of American government officials implementing OBE and 
school-to-work programs in the 1990s. The above quotations also bear a striking resemblance 
to Theodore Sizer's Coalition of Essential Schools' philosophy of "less is more" and to the 
1988 Association for Supervision and Curriculum Development's Robert Muller World Core 



26 



Curriculum in use in Eugene, Oregon and elsewhere.] 



World War II began in 1939. 



Endnotes: 

1 This material has been excerpted from The Impossible Dream by K.M. Heaton (Hart Publications: Bellingham, Wash., 1990). 
This important book may be ordered from K.M. Heaton by sending a check for $17.50 to: Hart Publications, 1507 Lincoln 
Street, Bellingham, WA. 98226. The Hon. John R. Rarick, former member of Congress, says of Mrs. Heaton's The Impossible 
Dream: "This is a dynamic volume of must reading for every American who loves this country and our system of government. 
Her in-depth writing arouses an awareness of the greatness this nation has achieved, a fear as to where we are heading, and 
of how far we must fall before it will all come to a halt.... There is an obvious, concerted program to irrevocably change our 
USA, yet many go on day after day, taking for granted what they didn't earn, and presuming the USA will go on forever. The 
change of our system from one of individual rights and freedoms to a one-world collective is taking place right before our 
very eyes." 

2 Ibid, p. 215. 

3 See 1988 entry for Supreme Court Justice Clarence Thomas's ruling on protection in the workplace from "abusive and intru- 
sive" training, rendered when Thomas served as chairman of the Equal Employment Opportunity Commission (EEOC). 

4 "A New Education for a New America" {The New Republic, July 29, 1936) carried quote by Prof. Harold Laski. 



4 



THE FOMENTATION 
of the forties and fifties 



IN^ost Webster's dictionaries define the word "fomentation" as follows: "to stir up 
trouble, instigate; incite (as to foment a riot)." The forties and fifties will be remembered for the 
radical, un-American activities and views of some Americans and their paid staffs who, having risen 
to the highest levels in the tax-exempt foundations and government, were unfortunately accepted by 
the man on the street as having the best interests of this nation at heart. 

Had these individuals been dressed in dirty, ragged clothes, worn old shoes and funny felt 
hats, they would likely have been accused of "fomenting" or instigating trouble — planning the 
transformation of our nation from a sovereign, free constitutional republic to only one of many 
socialist democracies subservient to an internationalist world government. However, the fact 
that many of these gentlemen and their paid staffs were associated with Ivy League colleges, 
major industries, and prestigious civic and religious institutions, wore Brooks Brothers suits and 
button-down-collared shirts, and many had served with distinction in World War II worked to obscure 
the fact that their goals were alien to those of the average Main Street American — for that matter, alien 
to the Constitution of the United States of America and its Bill of Rights. 

United States membership in the United Nations Educational, Scientific and Cultural Organization 
(UNESCO) in 1946 set in motion the destabilization of our society through the rejection of absolute 
morals and values, Judeo-Christian tradition, and Roman law. Legislation authorizing United States 
membership in UNESCO marked the end of United States autonomy in a very crucial area: that of 
education. From this time on UNESCO would dictate education policy to our government and others. 



27 



28 



This legislation was accompanied by President Harry Truman's remarkable statement: "Education 
must establish the moral unity of mankind." Truman's recommendation was bolstered by General 
Brock Chisholm, a Canadian psychiatrist and friend of Soviet agent Alger Hiss. Chisholm redefined 
health to include "mental" health, and presented a paper entitled "The Psychiatry of Enduring 
Peace and Social Progress" to the United Nations World Health Organization (WHO) in 1946 which 
"reinterpreted" (eradicated) the word "morality." Chisholm asserted that 

The reinterpretation and eventually eradication of the concept of right and wrong... these 
are the belated objectives of practically all effective psychotherapy. 

Brock Chisholm went on to recommend that teachers all over the world be trained in "no 
right/no wrong" psychotherapeutic techniques found in the schools today. The use of these techniques 
has resulted in (1) a high percentage of the populace (60% if the polls taken during the summer 
of 1998 related to the public's approval of President William Jefferson Clinton are to be believed) 
responding that lying under oath is not sufficient reason for a president's removal from office, and (2) 
incredibly immoral/amoral and violent behavior of American youth. 

Has the reader ever seen a more exquisite illustration of the dialectic at work? Create the chaos; 
people naturally call for help. The next step is to impose the totalitarian solution. The "New World 
Disorder" (chaos) , evident on the nightly news, will ultimately require the same totalitarian control 
described so well by George Orwell in his novel 1 984. Orwell said, "If you want a picture of the future, 
imagine a boot stamping on the human face — forever... and remember, that is forever." 

If one believes, as does this writer, that the well-being of mankind and the stability of this 
world and its institutions depend on the rule of law, then the 1940s and 1950s will be remembered as 
the commencement of the unraveling of civic order in the United States of America and throughout 
the world. The rule of law is usually based on concepts of right and wrong, grounded in some very 
widely accepted values that have been laid down since earliest times, and even spelled out in Roman 
law. Since the end of World War II, instead of the concept of law nations have been basing their 
actions on the United Nations' humanistic (non-absolutist) situational ethics philosophy set forth in 
the statements of General Brock Chisholm and President Harry Truman. 

In 1948, shortly after General Chisholm made his recommendation to banish the concept of right 
and wrong, Professors B.F. Skinner and Alfred C. Kinsey published their books, Walden Two and Sexual 
Behavior in the Human Male, respectively. Skinner's novel, Walden Two, recommended — amongst 
other radical things — that "children be reared by the state, to be trained from birth to demonstrate 
only desirable characteristics and behavior." Kinsey, as a taxonomic scientist, wrested human 
sexuality from the constraints of love and marriage in order to advance the grand scheme to move 
America and the world toward the eugenic future envisioned by the elite scientists of the "New 
Biology," a shift which would affect the legal and medical professions. 1 

In 1953 Professor Skinner published Science and Human Behavior in which he said, "Operant 
conditioning shapes behavior as a sculptor shapes a lump of clay." 2 Also, in 1953, as if commissioned 



The Fomentation 



29 



by Skinner and Kinsey to come up with a system to facilitate the necessary "changes" in behavior 
through operant conditioning and restructuring of the human personality (taxonomizing it), 
Professor Benjamin Bloom with the assistance of Professor David Krathwohl completed Taxonomy 
of Educational Objectives— a classification of learning behavior encompassing the cognitive, affective 
and psychomotor "domains" of learning. 3 Webster's Dictionary defines "taxonomy" as follows: "the 
study of the general principles of scientific classification: systematics." It should be noted that 
"scientific classification" related to education of a human being involves breaking behavior down 
into categories — to be measured and observed — behavior (actions) which can be isolated from the 
human personality with its important spiritual dimension. 

Bloom said in Taxonomy that "the philosopher, as well as the behavioral scientist must find ways 
of determining what changes (values) are desirable and perhaps what changes are necessary." He 
stated that for the schools to attempt to change values is a virtual "Pandora's Box," but that 

[0]ur "box" must be opened if we are to face reality and take action, and that it is 
in this "box" that the most influential controls are to be found. The affective domain 
contains the forces that determine the nature of an individual's life and ultimately the 
life of an entire people. 

Kinsey and Bloom, as scientists, were involved in the breaking down of man (taxonomizing) 
into units of behavior which Skinner, as a behaviorist, could identify, measure and change. This 
breaking down or "deconstructing of Man" was intended to separate man from his God-given, 
freedom-providing identity. This opened the door to the study of methods to control man and society: 
enter Skinner, representing the Behaviorist School of the non-science "science" of psychology. Bloom 
changed the focus of education from a general, liberal arts education which benefited man as a 
whole to a narrow training which would be based on the behavioral psychologists' determination 
of what changes in "thoughts, feelings, and actions" would be desirable and, perhaps, necessary 
for the benefit of society as a whole.* Bloom's Taxonomy provided the finishing and crucial 
touch to the foundation laid by Dewey and others of the bedrock of today's education and 
teacher training. 

The work of Bloom, Kinsey and Skinner provided the ingredients for future moral chaos with 
which we are struggling today at the national and international levels. People Weekly's cover story 
for the week of June 23, 1997, "Heartbreaking Crimes: Kids without a Conscience? Rape, murder, 
a baby dead at a prom: A look at young lives that seem to have gone very, very wrong," offers 
vivid examples of incredibly immoral/amoral and violent behavior. Melissa Drexler, 18 — baby was 
found dead at the prom; Daphne Abdela, 15 — accused of a Central Park murder; Jeremy Strohmeyer, 
18 — accused of killing a 7-year-old; Corey Arthur, 19 — accused of murdering Jonathan Levin; and 
Amy Grossberg, 18 — accused of killing her newborn. In addition, the past few years have provided 
Americans with news of tragedy after tragedy involving young people shooting their peers and 
teachers at schools across the country in Arkansas, Kentucky, Oregon, Washington state, Georgia, 



30 



and with the most tragic of all because of the numbers involved, in Littleton, Colorado where 
twelve students and one teacher were murdered, two perpetrators committed suicide, and many 
others were critically injured. 

President Dwight D. Eisenhower signed the first agreements with the Soviet Union in 1958, 
including an education agreement — something that would not come as a surprise to those familiar 
with the White House-directed plan to merge the United States and the Soviet Union explained to 
Norman Dodd in 1953 by Rowan Gaither, president of the Ford Foundation. Similar agreements have 
been signed from that time forward. The most important education agreements negotiated between 
the Carnegie Corporation and the Soviet Academy of Science, and those signed by Presidents Reagan 
and Gorbachev in 1985, remain in effect to this day. 

The forties and fifties set all the essential ingredients in place for implementation in the sixties 
of a system of education geared to behavior and values change. 

1941 

Education for Destruction was written by Dr. B.R. Burchett and published by her 

in Philadelphia, Pennsylvania in 1941. The promotional flyer for Dr. Burchett's book 
read as follows: 

Arresting... Disturbing... Exciting 

NOW for the First Time— the AMAZING STORY OF COMMUNISTS' INIQUITOUS 
CORRUPTION OF AMERICAS SCHOOL CHILDREN 

HOW does the small Sovieteer minority control loyal teachers in our schools and 
colleges? 

HOW are anti-American, anti-religious, anti-Christ textbooks forced upon teachers 
and students? 

WHY are Washington and Jefferson ridiculed, while Marx and Lenin are canonized 
in the schools? 

WHY are boys and girls of 13 taught free love, sexual promiscuity, and other degrading 
subjects? 

WHAT'S GOING ON IN OUR AMERICAN SCHOOLS ANYWAY? 

The answers to these and other dismaying questions are all found 
in Education for Destruction 

[A]n eyewitness account by Dr. B.R. Burchett, former Head of Department of Latin in the 
Philadelphia public school system. It is a fearless and devastating expose of Communism 
in America's schools, its concealed objectives, hidden motives, serpent-like power, and 
its vicious demoralization of children and adolescents. EVERY parent... EVERY educator... 
EVERY clergyman should read this book! [emphasis in original] 



The Fomentation : c. 1941 



31 



Dr. Burchett has included, opposite the title page of her book, a photograph of one of the 
classrooms in the school in which she taught. Under the photo are the words "No communism 
in the public schools?" accompanied by the following comments: 

An observer, seeing that the largest poster in sight bears the letters U.S.S.R., might 
think that this is a picture of a school room in Russia. It is a picture of a room in a public 
school in Philadelphia. Did Superintendent Broome know about this? Did the Board of 
Education know about it? The picture is taken from Dr. Broome's Annual Report to the 
Board of Education, for the year ended June 30, 1936.... 

There had been a branch of the Young Communist League meeting in the South 
Philadelphia High School. According to the papers Miss Wanger made a great virtue of having 
disbanded it. Strangely, there was no "investigation" as to how it came to be meeting here in 
the first place, with a regularly assigned room and with a teacher as sponsor. 

In spite of the facts presented in Mr. Allen's circular, and in spite of such an 
amazing thing as the meeting of the Young Communist League in the school, Dr. Broome, 
Superintendent of Schools, according to the Philadelphia Record of May 7, 1936, said: "I 
don't propose to investigate any general statement; if she (myself, Burchett) has anything 
specific to say I will be glad to hear her and investigate."... Recently, a special committee 
was appointed to consider the attacks on the "books of Harold 0. Rugg and others on the 
ground of subversive teaching." Dr. Edwin C. Broome was a member of that Committee. 
It is not surprising, therefore, that the Rugg books were white-washed in the Committee 
report of February 26, 1941. 

According to the above quotes, Dr. Edwin Broome, under whom Dr. Burchett worked, 
was deeply involved in curriculum changes favorable to indoctrination of the students 
in communism. Of special interest is the fact that Dr. Edwin Broome is the same Dr. 
Edwin Broome about whom Dorothy Dawson wrote in her article entitled "The Blueprint: 
Community-Centered Schools" for the Montgomery County, Maryland Advertiser, April 
11, 1973. Mrs. Dawson personally typed the original Blueprint for Montgomery County 
Schools for Dr. Broome to present to the board of education in 1946. An additional excerpt 
from Mrs. Dawson's article follows: 

In 1946 Dr. Edwin W. Broome was Superintendent of Schools.... From the Maryland 
Teacher, May 1953: "Dr. Edwin W. Broome announces retirement from Superintendency" 
by Mrs. Florence Massey Black, BCC High School. "Edwin W. Broome, the philosopher who 
took John Dewey out of his writings and put him to work in the classrooms of Montgomery 
County, is being honored upon his retirement this year by various groups in the State 
of Maryland and in his own county. He has served thirty-six years as superintendent of 
schools and forty-nine years in the county system. Greatly influenced by the late John 
Dewey, Edwin W. Broome set to work to show by analogy, specific example, and curriculum 
development, how each teacher could bring that philosophy into his work. And so it was 
that John Dewey came into the classrooms of Montgomery County." 

[Ed. Note: Additionally, the Maryland Teacher did not mention that Dr. Broome had also 
served a controversial term as superintendent in the Philadelphia, Pennsylvania public school 
system. One might add that John Dewey not only came into the classrooms of Montgomery 
County, but also into all the classrooms of the United States, since the Montgomery County 
Plan was a pilot for the nation. This writer, when serving on her school's Philosophy 
Committee in 1973, had an updated copy of the "Montgomery County Philosophy" given 



32 



to her by her Harvard-educated, change-agent superintendent. He recommended it as one 
philosophy statement to which our committee might wish to refer as we drew up a new 
philosophy for our school district. (See Appendix I for further excerpts from the Blueprint 
for Montgomery County Schools.)] 

1942 

In 1942 Time magazine (March 16, 1942) ran an extensive article in its Religion section 
dealing with a proposal by Protestant groups in the United States for a plan of action toward 
"a just and durable peace" for the years following the end of World War II. Excerpts from 
Time's "American Malvern" follow: 

These are the high spots of organized U.S. Protestantism's super-protestant new 
program for a just and durable peace after World War II: 

• Ultimately, "a world government of delegated powers. " 

• Complete abandonment of U.S. isolationism. 

• Strong immediate limitations on national sovereignty. 

• International control of all armies and navies. 

• A universal system of money... so planned as to prevent inflation and deflation. 

• Worldwide freedom of immigration. 

• Progressive elimination of all tariff and quota restrictions on world trade. 

• "Autonomy for all subject and colonial peoples" (with much better treatment 
for Negroes in the U.S.). 

• "No punitive reparations, no humiliating decrees of war guilt, no arbitrary 
dismemberment of nations." 

• A "democratically controlled" international bank "to make development capital 
available in all parts of the world without the predatory and imperialistic aftermath 
so characteristic of large-scale private and governmental loans." 

This program was adopted last week by 375 appointed representatives of 30-odd 
denominations called together at Ohio Wesleyan University by the Federal Council of 
Churches. Every local Protestant church in the country will now be urged to get behind 
the program. "As Christian citizens," its sponsors affirmed, "we must seek to translate 
our beliefs into practical realities and to create a public opinion which will insure that 
the United States shall play its full and essential part in the creation of a moral way 
of international living."... 

The meeting showed its temper early by passing a set of 13 "requisite principles for 
peace" submitted by Chairman John Foster Dulles and his inter-church Commission to 
Study the Basis of a Just and Durable Peace. These principles, far from putting all the 
onus on Germany or Japan, bade the U.S. give thought to the short-sightedness of its own 
policies after World War I, declared that the U.S. would have to turn over a new leaf if 
the world is to enjoy lasting peace.... 

Some of the conference's economic opinions were almost as sensational as the 
extreme internationalism of its political program. It held that "a new order of economic 
life is both imminent and imperative" — a new order that is sure to come either "through 



The Fomentation : c. 1943 



33 



voluntary cooperation within the framework of democracy or through explosive political 
revolution." Without condemning the profit motive as such, it denounced various defects 
in the profit system for breeding war, demagogues and dictators, "mass unemployment, 
widespread dispossession from homes and farms, destitution, lack of opportunity for youth 
and of security for old age." Instead, "the church must demand economic arrangements 
measured by human welfare... must appeal to the Christian motive of human service as 
paramount to personal gain or governmental coercion." 

"Collectivism is coming, whether we like it or not," the delegates were told by no 
less a churchman than England's Dr. William Paton, co-secretary of the World Council of 
Churches, but the conference did not veer as far to the left as its definitely pinko British 
counterpart, the now famous Malvern Conference [Time, Jan. 20, 1941). It did, however, 
back up Labor's demand for an increasing share in industrial management. It echoed Labor's 
shibboleth that the denial of collective bargaining "reduces labor to a commodity." It urged 
taxation designed "to the end that our wealth may be more equitably distributed." It urged 
experimentation with government and cooperative ownership.... 

The ultimate goal: "a duly constituted world government of delegated powers: an 
international legislative body, an international court with adequate jurisdiction, international 
administrative bodies with necessary powers, and adequate international police forces and 
provision for enforcing its worldwide economic authority." (pp. 44, 46-47) 



1943 

The American Federation of Teachers (AFT) published the book America, Russia and 

the Communist Party in the Postwar World by John L. Childs and George S. Counts (The John 
Day Co., New York). (The reader will recall previous entries in this book relating to George S. 
Counts's role in the promotion of collectivism in the early part of this century and a similar 
agenda mapped out by the Federal Council of Churches referenced earlier.) 

Prior to reading excerpts from this remarkably naive book, the reader is reminded 
that it was written after Stalin's mass terror of the 1930s, which included purges, trials, 
self-denunciations, disappearances, imprisonments and executions. Excerpts taken from 
the book's jacket follow: 

This book is the first in a series projected for publication by The Commission on 
Education and the Postwar World of the American Federation of Teachers.. . . It demonstrates 
beyond all argument that if this war is to be followed by a just and lasting peace, America 
and Russia must find a way to get along together. For the United Nations, including America 
and Russia, is the only agency that can establish such a peace. Russia's stupendous 
achievements, and her vast area, population, and resources, make her a world power 
second to none. We are blind if we think we can continue half grateful ally, half suspicious 
rival, of Russia. What then, stands in the way of good relations between America and Russia? 
It is not differences in social systems and ideologies, for these can [emphasis in original] 
exist side by side.... It is a twenty-five year legacy of mutual suspicion, fear, and active 
hostility. The removal of this legacy requires concessions on both sides. 

The preface states in part: 

Among the subjects already chosen (by the Commission) for study are the problems of 



34 



American youth, education for world-citizenship, and the kind of educational program 
required to meet the demands of our technological society. 

Excerpts from chapter X, "Bases of Collaboration," are revealing: 

6. The United States, on her side, will have to make profound readjustments in her 
historical policy with regard to the rest of the world in general and with regard to the 
Soviet Union in particular.... The following constitute the bare minima of readjustments 
required of our country: 

a. She must abandon the notion that she can enjoy security and maintain her 
democratic way of life by adhering to her historic policy of no "entangling alliances. " 
She cannot have peace if she continues to disregard the fact of world-wide 
interdependence— economic, political, military, and cultural, (p. 80) 
c. She must enter unreservedly into the partnership of the United Nations.... 
e. She must revise her estimate of the enduring character of a collectivist state. She 
must banish from her mind the naive doctrine, which controlled her relations with 
the Soviet Union in the early years of the Russian Revolution, that a collectivist 
state, being contrary to the laws of human nature, economics, and morality, must 
sooner or later collapse, (p. 81)... 

g. She must repudiate her earlier policy toward the Soviet Union. She must convince 
the Russian people she will have no part whatsoever in any effort to isolate, to 
encircle, and to destroy their collectivist state. . . . She must show by word, deed, and 
spirit that she is prepared to collaborate with nations of different traditions, different 
ideologies, and different economic and political systems in the organization of the 
world for peace and progress.... All of this means that those privileged groups 
in our own society which are fearful of any change in our property relations 
[free enterprise system] and which were primarily responsible for the shaping 
of the earlier policy must not be permitted to determine our postwar relations 
with Russia, (p. 82) 

h. She must, finally, have a vivid consciousness of the weaknesses in her own 
domestic economy. She must realize that, in spite of the very real advances made 
in recent years, we have only begun to face the problem of rebuilding the economic 
foundations of our democracy. In the process of rebuilding perhaps we may be able 
to learn something from the experiences of the Russian people, (p. 83) 



1945 

In 1945 World War II ended. The preparation of a "Just and Durable Peace" to produce 
"a duly constituted world government" began. 

United Nations Charter became effective on October 24, 1945. Playing an iMPORtant 

role in the creation of the United Nations was the United States Chamber of Commerce. In 
1999 when parents find their local Chamber of Commerce deeply involved in the highly 
controversial, socialist/fascist, dumbing-down workforce training — necessary for a planned, 
global economy — the fact that the U.S. Chamber was a prime mover in establishing the 
United Nations should not be forgotten. The following information is excerpted from an 



The Fomentation : c. 1945 



35 



important research paper by Erica Carle entitled "The Chamber of Commerce: Its Power 
and Goals" (December, 1983): 

Two slogans were popularized in order to gain backing for Chamber leadership: 
"World peace through world trade" and "More business in government and less government 
in business." 

The Chamber sought to commercialize the world under its own direction. To do this it 
needed to find ways to affect and bypass operating policies of various states and nations. To 
change national policies, and even laws, required popular support and collective action. A 
new type of blanket organization was needed, one that could blanket not only governments, 
but professions, unions, educational institutions, farms, industries, sciences, religions 
and even families. An organization was sought which could bring about the cooperation 
and commercialization of all of these. A strong controllable international blanket 
organization was needed. 

By the 1930's plans for the new blanket organization to serve the Chamber's purposes, 
the United Nations, were already well under way. The Chamber had the cooperation of 
tax-exempt foundations, some of which, such as the Carnegie Foundation for International 
Peace and the Rockefeller Foundation, had been set up early in the century. Large banks 
and trusts could see future profits for themselves if they cooperated with the Chamber; 
and the cooperation of international corporations was assumed, especially since Thomas 
J. Watson was President of the International Chamber of Commerce and a Trustee of the 
Carnegie Foundation for International Peace. 

World War II aided... efforts to establish a "rational" international commercial 
system.... The United Nations organization could be used to gain governments' compliance 
with the Chamber's plans for a unified, controlled world economy, and also the cooperation 
of various non-Governmental organizations. 

The following are some of the measures the Chamber of Commerce has supported 
to aid in the transfer of power from individuals and independent governments, groups, 
businesses and professions to the Chamber-advocated management system: 

1. Creation of the United Nations. 

2. Creation of the Organization for Economic Cooperation and Development. 

3. Regional Government or "New Federalism." 

4. Medicare (Commercialization of medical professions). 

5. Postal reorganization. 

6. Organized Crime Control Act. 

7. Contracting for school services with private industry. 

8. Voucher system for education. 

9. Management and human relations techniques for handling personnel in industry. 

10. Health care planning councils. 

11. Prepaid medical practice (HMOs). 

12. Federal land use planning. 

13. Federally-imposed career education. 

14. Equal Rights Amendment. 

15. Cross-town busing for desegregation. 5 



Indiana University added two new faculty members to its roster in 1945. Dr Burrhus 
Frederic (B.F.) Skinner became chairman of the Psychology Department and continued work 



36 



on his forthcoming book, Walden II. Dr. Hermann J. Muller (future Nobel Prize winner), 
zoologist and private advocate of forced sterilization and selective eugenics, arrived in the 
Zoology Department to join long-time faculty member Alfred C. Kinsey. A publicly-allied 
communist, Muller had authored the book Out of the Night: A Biologist's View of the Future 
(The Vanguard Press: New York, 1935), which dealt with selective breeding and the 
advocacy of cloning of masses of human "resources." (Thirteen years after Muller's death 
in 1967 a sperm bank was established in California in Muller's honor, the Repository 
for Germinal Choice, which stores and distributes the sperm of Nobel Prize winners and 
others of "exceptional" ability) 



1946 

"The Psychiatry of Enduring Peace and Social Progress" in The William Alanson White 
Memorial Lectures by Major General G.B. [Brock] Chisholm, C.B.E., M.D., Deputy Minister of 
Health, Dept. of National Health and Welfare, Canada (Vol. 9, No. 1) was published in 1946. 
The book contained a foreword by Abe Fortas, former U.S. secretary of state. The article 
"The Psychiatry of Enduring Peace and Social Progress" was re-published in the March 1948 
(No. 437) issue of International Conciliation published by the World Health Organization and 
Carnegie Endowment for International Peace. This last version included a preface written 
by Alger Hiss, former president of the Carnegie Endowment who would later be convicted 
of spying for the Soviet Union. It is important also to remember that Dr. David Hamburg, 
former president of the Carnegie Corporation of New York who signed the Carnegie 
Corporation/Soviet Academy of Science education agreement in 1985, is a psychiatrist. 
Excerpts from Brock Chisholm's article follow: 

The re-interpretation and eventually eradication of the concept of right and wrong 
which has been the basis of child training, the substitution of intelligent and rational 
thinking for faith in the certainties of the old people, these are the belated objectives of 
practically all effective psychotherapy. Would it not be sensible to stop imposing our local 
prejudices and faiths on children and give them all sides of every question so that in their 
own time they may have the ability to size things up, and make their own decisions? ...If 
the race is to be freed from its crippling burden of good and evil it must be psychiatrists 
who take the original responsibility.... The people who matter are the teachers, the 
young mothers and fathers, the parent-teacher associations, youth groups, service clubs, 
schools and colleges, the churches and Sunday schools — everyone who can be reached and 
given help toward intellectual freedom and honesty for themselves and for the children 
whose future depends on them.... 

The battle, if it is to be undertaken, will be long and difficult but the truth will 
prevail — whenever enough people want it to. With luck we have perhaps fifteen or twenty 
years before the outbreak of the next world war if we remain as we are, twenty years in 
which to change the dearest certainties of enough of the human race, twenty years in which 
to root out and destroy the oldest and most flourishing parasitical growth in the world, the 
tree of the knowledge of good and evil, so that man may learn to preserve his most precious 
heritage, his innocence and intellectual freedom, twenty years in which to remove the 
necessity for the perverse satisfactions to be found in warfare. 



The Fomentation : c. 1946 



37 



If the reader is inclined to dismiss the above statements by Brock Chisholm as statements 
from an individual biased by his psychiatric profession and spoken at a point in time 
remote from today, please read the following statement by U.S. Ambassador to the United 
Nations Madeline Albright in Atlanta, Georgia, September of 1996, as it appeared in The 
Congressional Digest for January 1997: 

Setting Global Standards. The United Nations is one instrument that we use to make 
this world a little less inhumane, a little less brutal, a little less unfair than it otherwise 
would be. This brings us to another important, and basic, function of the United 
Nations. And that is its role in creating a global consensus about what is right and 
what is wrong, (p. 14) 

[Ed. Note: The reader should refer back to the preface of this book, the deliberate dumbing 
down of america, for discussion of the need to create robots who do not know right from 
wrong and who do not have a conscience — leaving the determination of right and wrong to 
the proposed United Nations "Global Conscience."] 

C.S. Lewis wrote That Hideous Strength (Copyright by Clive Staples Lewis: Macmillan 
Company: New York, 1946). Lewis's uncanny ability to predict accurately how society 
would be manipulated into acceptance of totalitarian control was displayed in the following 
excerpt taken from a conversation Lewis's fictitious Lord Feverstone had with a young 
man named Mark: 

[Feverstone] "Man has got to take charge of Man. That means, remember, that some 
men have got to take charge of the rest — which is another reason for cashing in on it 
as soon as one can. You and I want to be the people who do the taking charge, not the 
ones who are taken charge of. Quite. " 

"What sort of thing have you in mind?" 

"Quite simple and obvious things, at first — sterilization of the unfit, liquidation of 
backward races (we don't want any dead weights), selective breeding. Then real education, 
including pre-natal education. By real education I mean one that has no 'take-it-or-leave-it' 
nonsense. A real education makes the patient what it wants infallibly: whatever he 
or his parents try to do about it. Of course, it'll have to be mainly psychological at 
first. But we'll get on to biochemical conditioning in the end and direct manipulation 
of the brain...." 

"But this is stupendous, Feverstone." 

"It's the real thing at last. A new type of man: and it's people like you who've 
got to begin to make him." 

"That's my trouble. Don't think it's false modesty, but I haven't yet seen how 
I can contribute. " 

"No, but we have. You are what we need: a trained sociologist with a radically realistic 
outlook, not afraid of responsibility. Also, a sociologist who can write." 
"You don't mean you want me to write up all this? " 

"No. We want you to write it down — to camouflage it. Only for the present, of course. 
Once the thing gets going we shan't have to bother about the great heart of the British 
public. We'll make the great heart what we want it to be." (p. 42) 

[Ed. Note: Appendix XXVI contains an example of Brian Rowan's literary fulfillment of 



38 



Feverstone's request for "a trained sociologist who can write." It is also interesting to note 
that William Spady, the "father of OBE," is a sociologist as well. The definition by Feverstone 
of "real education" not being "take-it-or-leave-it nonsense" reflects the 1990s outcome-based 
education reform call for emphasis on "outputs" rather than on constitutionally supported 
"inputs" discussed in chapter 1.] 

Community-Centered Schools: The Blueprint for Montgomery County Schools, Maryland, 
was proposed by Dr. Nicholaus L. Englehardt and Associates, Consultants, and written by 
Dr. Walter D. Cocking of New York City on April 1, 1946. This material was provided by the 
late Dorothy Dawson who was secretary to the superintendent of schools of Montgomery 
County, Maryland, Dr. Edwin Broome. Mrs. Dawson typed this Blueprint for presentation 
to the Montgomery County Board of Education. (See Appendix I.) The Letter of Transmittal 
that accompanied The Blueprint said: 

Dr. Paul Mort and others have accumulated evidence which shows a period of almost 
fifty years between the establishment of need [needs assessment] and the school programs 
geared to meet it... if the school as an agency of society is to justify itself for the period 
ahead of us, it must be accepted that its fundamental function is to serve the people of the 
entire community, the very young children, the children of middle years, early adolescent 
youth, older youth and the adults as well. 

"Learning and Peace: UNESCO Starts Its Work" by Richard A. Johnson was printed in 

the October 1946 (No. 424) issue of International Conciliation published by the Carnegie 
Endowment for International Peace. This booklet gives the history of UNESCO (United 
Nations Education, Scientific, and Cultural Organization) from the Conference of Allied 
Ministers of Education in 1943-45, through legislation authorizing United States membership 
in UNESCO (P.L. 565, 79th Congress) approved July 30, 1946. President Harry Truman's 
remarkable statement of the same date accompanied this legislation: "[Ejducation must 
establish the moral unity of mankind." 

The Educational Testing Service (ETS) of Princeton, New Jersey, was funded with an 
initial endowment of $750,000 from the Carnegie Corporation in 1946. 

[Ed. Note: For further amplification and understanding of the far-reaching implications 
of the relationship between Educational Testing Service and the Carnegie Corporation, the 
reader should be sure to read: 1964 entry regarding the National Assessment of Educational 
Progress (NAEP) which ETS administers; two 1995 entries for articles from The Bismarck 
(North Dakota) Tribune dealing with NAEP; and Appendix IV.] 

1947 

National Training Laboratory (NTL) was established in 1947. The first LABORAtory 
session on human relations and group processes was held at Gould Academy in Bethel, 



The Fomentation : c. 1948 



39 



Maine. Founders of the National Training Laboratory had important connections with the 
Office of Strategic Services (OSS) — World War II forerunner to the Central Intelligence Agency 
(CIA). The NTL would become — with the National Education Association (NEA) — a premiere 
agency for human relations training (change agent/brainwashing). 

A 1962 book published jointly by NTL and the NEA entitled Five Issues in Training 
addressed the process of "unfreezing, changing, and refreezing" attitudes in order to bring 
about change by stating the following: "The Chinese communists would remove the target 
person from those situations and social relationships which tended to confirm and reinforce 
the validity of the old attitudes." (p. 49) 

This process is widely used in education, theology, medicine, business, government, 
etc., by pressuring individuals to participate in "retreats," removing them from familiar 
surroundings to "unfreeze" their attitudes and values. People have been coming from all 
over the world to attend these retreats at NTL in Bethel, Maine since its founding. An excerpt 
from the 1977 issue of NTL Newsletter follows: 

From the New Britain workshop dialogues of the founders emerged the notions of "action 
research laboratory" and "change agent" which were terms coined to denote a very vigorous 
proactive social change kind of posture, a merging of radical education, deviant behavioral 
science, and humanistic democracy. 



Higher Education for American Democracy; v. 3, Organizing Higher Education, report 
of the President's Commission on Higher Education (U.S. Government Printing Office: 
Washington, D.C., 1947) was circulated. It revealed that: 

The role which education will play officially must be conditioned essentially by policies 
established by the State Department in this country and by ministries of foreign affairs 
in other countries. Higher education must play a very important part in carrying out in 
this country the program developed by the United Nations Educational, Scientific, and 
Cultural Organization and in influencing that program by studies and reports bearing upon 
international relations.... The United States Office of Education must be prepared to work 
effectively with the State Department and with the UNESCO, (p. 48) 



1948 

Sexual Behavior in the Human Male by Alfred C. Kinsey with Wardell Pomeroy, Clyde 
Martin and Paul Gebhard (WB. Saunders: Philadelphia, PA, 1948) was published. This book 
and the controversial "research" it represented became a lightning rod around which much 
social turmoil was generated in this country and abroad. 

As Judith Reisman, Ph.D., has described in her book, Kinsey: Crimes and Consequences 6 
(Institute for Media Education: Arlington, Va., 1998): 

Three books written by leading legal, scholarly, and scientific authorities and assisted by 
Kinsey, were published in 1948 in tandem with Kinsey's Sexual Behavior in the Human 
Male. All three books called for legal implementation of Kinsey's "grand scheme" to loosen, 



40 



alter and/or overturn America's laws concerning sexual behavior. 

Those books were: (1) Sexual Habits of American Men: A Symposium on the Kinsey 
Report, edited by Albert Deutsch (Prentice Hall: New York, 1948); (2) American Sexual 
Behavior and the Kinsey Report by Morris Ernst and David Loth (W.W. Norton: New York, 
1948); and (3) a re-publication of the 1933 book The Ethics of Sexual Acts (Alfred A. 
Knoff: New York, 1948) by Rene Guyon, French jurist and pedophile noted for having 
coined the phrase in reference to children: "Sex before eight or it's too late." To further 
elaborate on the connections of these books and ideas generated by them, Reisman wrote 
on page 189 of her book: 

Dr. Harry Benjamin, an endocrinologist and international sexologist, and close 
friend and correspondent of both Kinsey and Guyon, wrote of their collaboration in his 
Introduction to Guyon's 1948 book: 

Many... sex activities, illegal and immoral, but widely practiced, are 
recorded by both investigators... Guyon speaking as a philosopher, and 
Kinsey, judging merely by empirical data... [are] upsetting our most cherished 
conventions. Unless we want to close our eyes to the truth or imprison 95% of 
our male population, we must completely revise our legal and moral codes.... It 
probably comes as a jolt to many, even open-minded people, when they realize 
that chastity cannot be a virtue because it is not a natural state. 

[Ed. Note: The above extraordinary statement revealed the depth of some very perverse 
thinking in the area of human sexuality — thinking which would become institutionalized 
to the extent that in 1999 the American Psychological Association (APA) felt comfortable 
publishing in its Journal a study suggesting that pedophilia is harmless and even beneficial 
if consensual. According to an article in the June 10, 1999 issue of The Washington Times, 
entitled "Psychology Group Regrets Publishing Pedophilia Report: Practice Not Always 
Harmful, Article Said," the APA was taken by surprise when "its report provoked angry 
public reaction, including a House of Representatives resolution condemning it. It followed 
up with an abrupt about-face in an apologetic letter to House Majority Whip Tom DeLay" 
which expressed regret— not that it supported the idea of acceptable adult-child sex— but 
that the article had been published in a public journal.] 

To prove the march toward sexual revolution had, indeed, reached the courts, Reisman 
further quotes Manfred S. Guttmacher, M.D., author of The Role of Psychiatry and Law 
(Charles C. Thomas: Springfield, 111., 1968) and special consultant to the American Law 
Institute Model Penal Code Committee: 

In 1950 the American Law Institute began the monumental task of writing a Model Penal 
Code. I am told that a quarter of a century earlier the Institute had approached the 
Rockefeller Foundation for the funds needed to carry out this project, but at that time, Dr. 
Alan Gregg, man of great wisdom, counseled the Foundation to wait, that the behavioral 
sciences were on the threshold of development to the point at which they could be of great 
assistance. Apparently, the Institute concluded that the time has arrived. 



The Fomentation : c. 1948 



41 



Walden Two, a novel by B.F. Skinner (The Macmillan Company: New York, 1948) was 

published. Skinner recommended in this novel that children be reared by the state; to be 
trained from birth to demonstrate only desirable characteristics and behavior. He also wrote 
on page 312 of the paperback edition: 

What was needed was a new conception of man, compatible with our scientific knowledge, 
which would lead to a philosophy of education bearing some relation to educational 
practices. But to achieve this, education would have to abandon the technical limitations 
which it had imposed upon itself and step forth into a broader sphere of human engineering. 
Nothing short of a complete revision of a culture would suffice. 

The late Professor Skinner died before his ideal school described in Walden II would 
become somewhat of a reality — a "Model School for the 21st Century." The following excerpts 
from Walden Two contain some restructuring terminology and resemble in many ways what 
a "restructured" school is supposed to look like in the 1990s: 

A much better education would cost less if society were better organized. 

We can arrange things more expeditiously here because we don't need to be constantly 
re-educating. The ordinary teacher spends a good share of her time changing the cultural 
and intellectual habits which the child acquires from its family and surrounding culture. Or 
else the teacher duplicates home training, in a complete waste of time. Here we can almost 
say that the school is the family, and vice versa, [emphasis in original] 

...We don't need "grades." Everyone knows that talents and abilities don't develop 
at the same rate in different children. A fourth-grade reader may be a sixth-grade 
mathematician. The grade is an administrative device which does violence to the nature of 
the developmental process. Here the child advances as rapidly as he likes in any field. No 
time is wasted in forcing him to participate in, or be bored by, activities he has outgrown. 
And the backward child can be handled more efficiently too. 

We also don't require all our children to develop the same abilities or skills. We don't 
insist upon a certain set of courses. I don't suppose we have a single child who has had a 
"secondary school education," whatever that means. But they've all developed as rapidly as 
advisable, and they're well educated in many useful respects. By the same token, we don't 
waste time in teaching the unteachable. The fixed education represented by a diploma is a 
bit of conspicuous waste which has no place in Walden Two. We don't attach an economic 
or honorific value to education. It has its own value or none at all. 

Since our children remain happy, energetic, and curious, we don't need to teach 
"subjects" at all. We teach only the techniques of learning and thinking. As for geography, 
literature, the sciences — we give our children opportunity and guidance, and they learn 
them for themselves. In that way we dispense with half the teachers required under the old 
system, and the education is incomparably better. Our children aren't neglected, but they're 
seldom, if ever, taught anything, [emphasis in original] (pp. 118-120) 

In the United States, 1990s teachers are instructed to act as facilitators and guidance 
counselors. Computer technology will take care of workforce training and whatever 
"education" remains. Wisconsin history teacher Gene Malone wrote a short review of Walden 
Two. Some of Malone's excerpts follow: 

Walden 1\vo is fiction based on a Utopian community named after Henry David Thoreau's 
nature-Utopia, Walden Pond. Burris... telling the story of a planned society appears 



42 



to be B.F. Skinner speaking. Frazier is the planner/manager/founder of the Utopia.... 
The Utopia/Walden Two is presented in the United States. Burris and his friends are 
given a tour of Walden Two and Castle is unimpressed. Burris, at the end, joins Walden 
Two. Quotes follow from pages: 

92 — "Community love" 

245 — "We not only can control human behavior, we MUST." 

219 — "The new order." 

189— "Psychologists are our priests." 

188 — "Walden Two is not a religious community." 

282 — "Their behavior is determined, yet they're free." 

286 — "What is love, except another name for the use of positive reinforcement?" 
278 — "Let us control the lives of our children and see what we can make of them." 
274 — "Behave as you ought!" 

186 — "We can make men adequate for group living.... That was our faith." 

134 — "Our goal is to have every adult member of Walden Two regard our children as 
his own, and to have every child think of every adult as his parent." 

135 — "No sensible person will suppose that love or affection has anything to 
do with blood." 

112 — "Education in Walden Two is part of the life of the community... Our children 

begin to work at a very early age. " 
108 — "History is honored in Walden Two only as entertainment." 
105 — "We are always thinking of the whole group." 
160— "We are opposed to competition." 
139 — "The community, as a revised family" 

Conclusion: This fictional presentation of Skinner's ideal community is much like the 
language and laws in use today by the behavioral elite — describing their plans for your 
children, your schools, your country. It is behavior management by the unchosen. 

During the year of 1948, Dr. Skinner moved his family from Indiana University to 
Cambridge, Massachusetts to join the faculty of Harvard University. 



During 1948 Alger Hiss, who later would be convicted of spying for the Soviet Union, 
wrote the preface to Gen. Brock Chisholm's lecture, "The Psychiatry of Enduring Peace and 
Social Progress," which was re-published in International Conciliation (No. 437, March, 1948, 
p. 109). Alger Hiss was at that time president of the Carnegie Endowment for International 
Peace, the publisher of International Conciliation. The preface to Chisholm's lecture, which 
redefined the word "health," follows: 

The World Health Organization came into formal existence early in February. 
For nearly a year and a half its most urgent functions have been performed by an 
Interim Commission. 

The new specialized agency carries on one of the most successful parts of the work 
of the League of Nations. The Constitution of the World Health Organization, however, has 
a far wider basis than that established for the League organization, and embodies in its 
provisions the broadest principles in public health service today. Defining health as a "state 
of complete physical, mental, and social well-being, and not merely the absence of disease 



The Fomentation : c. 1949 



43 



or infirmity," it includes not only the more conventional fields of activity but also mental 
health, housing, nutrition, economic or working conditions, and administrative and 
social tech- niques affecting public health. In no other field is international cooperation 
more essential and in no other field has it been more effective and political difference 
less apparent. 

The present issue of International Conciliation reviews the history of the Interim 
Commission through its last meeting in February. The first World Health Assembly will 
convene in June 1948. A brief introductory article has been prepared by Dr. Brock Chisholm, 
Executive Secretary, World Health Organization, Interim Commission. Dr. Chisholm is an 
eminent psychiatrist and served during the war as Director-General of Medical Services 
of the Canadian Army. The main discussion of the World Health Organization has been 
contributed by C.E.A. Winslow, Professor Emeritus of the Yale University and Editor of 
the American Journal of Public Health. Dr. Winslow has been a member of the Board of 
Scientific Directors of the International Health Division of the Rockefeller Foundation, 
Medical Director of the League of the Red Cross Societies, and Expert Assessor of the Health 
Committee of the League of Nations. 

Alger Hiss, President 
New York, New York 
February 21, 1948 



1949 

Basic Principles of Curriculum and Instruction (University of Chicago Press: Chicago, 
1949) by Professor Ralph Tyler, chairman of the Department of Education at the University 
of Chicago, was published. Tyler stated that: 

Since the real purpose of education is not to have the instructor perform certain activities 
but to bring about significant changes in the student's pattern of behavior, it becomes 
important to recognize that any statement of the objective... should be a statement of 
changes to take place in the student. 



1950 

In 1950 "Man out of a Job: Pasadena Tries too Late to Hold onto Its School 

Superintendent" was carried in Life Magazine (December 11, 1950). An excerpt follows: 

Last month criticism of [Willard] Goslin took a serious turn. A militant citizens' group 
accused him of permitting Communistic influences in the schools — because he continued 
already established classes in sex education and favored the elimination of report cards. 
Then while Goslin was in New York City on business, the school board sent him a 
telegram asking him to resign. 



44 



1951 

"The Greatest Subversive Plot in History: Report to the American People on UNESCO" 
from The Congressional Record, Proceedings and Debates of the 82nd Congress, First Session 
in 1951 included the extended remarks of Hon. John T. Wood (Idaho) in the U.S. House of 
Representatives, Thursday, October 18. Excerpts follow: 

Mr. Speaker, I am herewith appending an article published by the American Flag 
Committee... bearing the title "A Report to the American People on UNESCO." Just how 
careless and unthinking can we be that we permit this band of spies and traitors to exist 
another day in this land we all love? Are there no limits to our callousness and neglect of 
palpable and evident treason stalking rampant through our land, warping the minds and 
imaginations of even our little children, to the lying propaganda and palpable untruths we 
allow to be fed to them through this monstrous poison?... 

UNESCO's scheme to pervert public education appears in a series of nine volumes, 
titled Toward World Understanding which presume to instruct kindergarten and elementary 
grade teachers in the fine art of preparing our youngsters for the day when their first 
loyalty will be to a world government, of which the United States will form but an 
administrative part.... 

The program is quite specific. The teacher is to begin by eliminating any and all words, 
phrases, descriptions, pictures, maps, classroom material or teaching methods of a sort 
causing his pupils to feel or express a particular love for, or loyalty to, the United States of 
America. Children exhibiting such prejudice as a result of prior home influence — UNESCO 
calls it the outgrowth of the narrow family spirit — are to be dealt an abundant measure 
of counter propaganda at the earliest possible age. Booklet V, on page 9, advises the 
teacher that: 

The kindergarten or infant school has a significant part to play in the child's education. 
Not only can it correct many of the errors of home training, but it can also prepare 
the child for membership, at about the age of seven, in a group of his own age and 
habits — the first of many such social identifications that he must achieve on his way 
to membership in the world society. 



While You Slept: Our Tragedy in Asia and Who Made It by John T. Flynn (The 

Devin-Adair Co., New York, 1951) was published. This Cold War treatise on the connections 
between the American left-wing elite and Communist organizers concludes with the following 
statement and significant quotation which served as an early warning, heralded again 
and again throughout this book: 

While we arm against Russia, we remain defenseless against the enemies within our 
walls. It is they, not Stalin's flyers or soldiers or atomic bombers, who will destroy us. One 
of the greatest of all Americans once made a speech on the "Perpetuation of our Political 
Institutions." It is these institutions from which we draw our great strength and promise of 
survival. It was Abraham Lincoln who said: 



Shall we expect a transatlantic military giant to step the ocean and crush us at a 
blow? Never! All the armies of Europe, Asia and Africa combined with all the treasure of 
the earth (our own excepted) in their military chest, with a Bonaparte for a commander, 



The Fomentation : c. 1952 



45 



could not by force take a drink from the Ohio or make a track on the Blue Ridge in a trail 
of a thousand years.... At what point then is the approach of danger to be expected? I 
answer: If it [should] ever reach us it must spring up amongst us; it cannot come from 
abroad. If destruction be our lot, we must ourselves be its author and finisher. As a nation 
of freemen we must live through all times or die by suicide. 7 



Impact of Science upon Society by Bertrand Russell (Columbia University Press: 

New York, 1951; Simon and Schuster: New York, 1953) was published. What follows 
calls to mind the extensive use of behavior modification techniques on students, causing 
them to question and reject traditional values, and preparing them to willingly submit 
to totalitarian controls: 

Education should aim at destroying free will so that after pupils are thus schooled 
they will be incapable throughout the rest of their lives of thinking or acting otherwise 
than as their school masters would have wished.... Influences of the home are obstructive; 
and in order to condition students, verses set to music and repeatedly intoned are very 
effective.... It is for a future scientist to make these maxims precise and discover exactly 
how much it costs per head to make children believe that snow is black. When the 
technique has been perfected, every government that has been in charge of education 
for more than one generation will be able to control its subjects securely without the 
need of armies or policemen. 



1952 

Subversive Influence in the Educational Process: Hearings before the SuBCOMmittee to 
Investigate the Administration of the Internal Security Act and Other Internal Security Laws of 
the Committee on the Judiciary: United States Senate, Eighty-Second Congress, Second Session 
on Subversive Influence in the Educational Process was printed for the Committee on the 
Judiciary (Printing Office: Washington, D.C., Sept. 9, 10, 23, 24, 25 and October 13, 1952). 
Robert Morris was counsel and Benjamin Mandel was director of research for this project. 
Excerpts from the testimony of Bella V. Dodd, New York, who was accompanied by her 
attorney Godfrey R Schmidt, follow: 

Mr. Morris: Dr. Dodd, how recently have you been associated with the Communist 

Party? 
Mrs. Dodd: June 1949. 

Mr. Morris: Do you mean you severed your connection with the Communist Party 
at that time? 

Mrs. Dodd: They severed their connection with me. I had previously tried to find 
my way out of the Communist Party. In 1949 they formally issued a resolution 
of expulsion.... 

Mr. Morris: Dr. Dodd, will you tell us what relationship you bore to the Communist 
Party organization while you were the legislative representative for the Teachers' 
Union? 

Mrs. Dodd: Well, I soon got to know the majority of the people in the top leadership 



46 



of the Teachers' Union were Communists, or, at least, were influenced by the 
Communist organization in the city. 

Sen. Homer Ferguson (Mich.): In other words, the steering committee, as I take 
your testimony, was used for the purpose of steering the teachers along the line 
that communism desired? 

Mrs. Dodd: On political questions, yes.... I would say also on certain educational 
questions. You take, for instance, the whole question of theory of education, 
whether it should be progressive education or whether it should be the more 
formal education. The Communist Party as a whole adopted a line of being 
for progressive education. And that would be carried on through the steering 
committee and into the union. 8 

[Ed. Note: Let us look ahead to 1985 to the U.S. -Soviet Education Agreement signed by 
Presidents Reagan and Gorbachev, and the Carnegie-Soviet Education Agreement. It was the 
same Robert Morris who served as counsel for the Senate Judiciary Committee's investigation 
who later, in 1989 as the new president of America's Future, Inc., permitted the publication 
of this writer's pamphlet "Soviets in the Classroom: America's Latest Education Fad" — four 
years after the agreements were signed. At that time, Mr. Morris — as politically knowledgeable 
and astute a person as one could hope to meet— was completely unaware of the agreements! 
The major conservative organizations and media had refused to publicize these treasonous 
agreements, with the exception of two well-known organizations which gave them "once 
over lightly" treatment.] 

Cooperative Procedures in Learning (Columbia University Press: New York, 1952) 

by Alice Miel, professor of education at Teachers College of Columbia University, and 
associates at the Bureau of Publications at Teachers College of Columbia University was 
published. Excerpts follow: 

[Foreword] As is true of most of the publications of the Horace Mann-Lincoln Institute 
of School Experimentation, Cooperative Procedures in Learning represents the work of many 
people and emphasizes the experimental approach to curriculum improvement. 

Having just completed a unit in social studies, we spent today's class period planning 
the procedure for a new unit. I started the discussion by pointing out the three methods by 
which we had studied other units: (1) individual project work, (2) group project work, (3) 
textbook work. I asked the class to consider these three methods and then to decide which 
they preferred, or suggest another method for studying our coming work. 

It was here that I noticed that most of those who seemed in favor of group projects 
were students who were well developed socially and had worked well with others in the 
past, whereas those favoring individual projects were almost entirely the A students who 
obviously knew they were capable of doing good work on their own and would receive 
more recognition for it through individual work. 

[Ed. Note: The collectivist philosophy that the group is more important than the individual got 
off the ground in education in the 1950s as a result of the experimental research of educators 
conducting work similar to that of Alice Miel. By the 1990s egalitarian dumbing-down, 
outcome-based education— with its cooperative learning, mastery learning, group grades, 
total quality management, etc.— is the accepted method in the schools of education 



The Fomentation : c. 1953 



47 



and in the classroom.] 

In 1952 "Modern Math" was introduced to dumb down math students so that they 

couldn't apply the math concepts to "real life situations when they get out of schools," 
according to a "Dr. Ziegler" who served as chairman of the Education Committee of the 
Council on Foreign Relations in 1928. (Refer to 1928 entry concerning O.A. Nelson, math 
teacher, for background of this entry.) 

1953 

Norman Dodd, a Yale graduate, intellectual and New York City investment banker, 

was chosen to be the research director for the Reece Committee of the U.S. House of 
Representatives in 1953. The Reece Committee was named for its creator, Rep. Carroll Reece 
of Tennessee, and was formed to investigate the status of tax-exempt foundations. Dodd sent 
committee questionnaires to numerous foundations, and as a result of one such request, 
Joseph E. Johnson, president of the Carnegie Endowment for International Peace, invited 
Dodd to send a committee staffer to Carnegie headquarters in New York City to examine the 
minutes of the meetings of the foundation's trustees. These minutes had long since been 
stored away in a warehouse. Obviously, Johnson, who was a close friend of former Carnegie 
Endowment's president and Soviet spy Alger Hiss, had no idea what was in them. 

The minutes revealed that in 1910 the Carnegie Endowment's trustees asked themselves 
this question: "Is there any way known to man more effective than war, to so alter the life 
of an entire people?" For a year the trustees sought an effective "peaceful" method to "alter 
the life of an entire people. " Ultimately, they concluded that war was the most effective way 
to change people. Consequently, the trustees of the Carnegie Endowment for International 
Peace next asked themselves: "How do we involve the United States in a war?" And they 
answered, "We must control the diplomatic machinery of the United States by first gaining 
control of the State Department." Norman Dodd stated that the trustees' minutes reinforced 
what the Reece Committee had uncovered elsewhere about the Carnegie Endowment: "It had 
already become a powerful policy-making force inside the State Department." 

During those early years of the Carnegie Endowment, war clouds were already forming 
over Europe and the opportunity of enactment of their plan was drawing near. History proved 
that World War I did indeed have an enormous impact on the American people. For the first 
time in our history, large numbers of wives and mothers had to leave their homes to work 
in war factories, thus effectively eroding woman's historic role as the "heart" of the family. 
The sanctity of the family itself was placed in jeopardy. Life in America was so thoroughly 
changed that, according to Dodd's findings, "[T]he trustees had the brashness to congratulate 
themselves on the wisdom and validity of their original decision." They sent a confidential 
message to President Woodrow Wilson, insisting that the war not be ended too quickly. 

After the war, the Carnegie Endowment trustees reasoned that if they could get control 
of education in the United States they would be able to prevent a return to the way of life 
as it had been prior to the war. They recruited the Rockefeller Foundation to assist in such 
a monumental task. According to Dodd's Reece Committee report: "They divided the task 
in parts, giving to the Rockefeller Foundation the responsibility of altering education as it 



48 



pertains to domestic subjects, but Carnegie retained the task of altering our education in 
foreign affairs and about international relations. " 

During a subsequent personal meeting with Mr. Dodd, President Rowan Gaither of 
the Ford Foundation said, "Mr. Dodd, we invited you to come here because we thought 
that perhaps, off the record, you would be kind enough to tell us why the Congress is 
interested in the operations of foundations such as ours?" Gaither answered his own rhetorical 
question with a startling admission: 

Mr. Dodd, all of us here at the policy making level of the foundation have at one time or 
another served in the OSS [Office of Strategic Services, CIA forerunner] or the European 
Economic Administration, operating under directives from the White House. We operate 
under those same directives.... The substance under which we operate is that we shall use 
our grant making power to so alter life in the United States that we can be comfortably 
merged with the Soviet Union. 

Stunned, Dodd replied, "Why don't you tell the American people what you just told 
me and you could save the taxpayers thousands of dollars set aside for this investigation?" 
Gaither responded, "Mr. Dodd, we wouldn't think of doing that." 

In public, of course, Gaither never admitted what he had revealed in private. However, 
on numerous public occasions Norman Dodd repeated what Gaither had said, and was neither 
sued by Gaither nor challenged by the Ford Foundation. Dodd was subsequently warned that 
"If you proceed with the investigation as you have outlined, you will be killed." 9 

The Reece Committee never completely finished its work of investigating and receiving 
testimony in open hearings involving the representatives of the major tax-exempt foundations. 
The process was completely disrupted and finally derailed by the deliberately disruptive 
activity of one of its members, Congressman Wayne Hays of Ohio. According to general 
counsel for the Reece Committee, Renee A. Wormser's account in Foundations: Their Power 
and Influence (Devin- Adair: New York, 1958, p. 341), "[Hays] was frank enough to tell us 
that he had been put on the committee by Mr. [Sam] Rayburn, the Democratic Leader in 
the House, as the equivalent of a watchdog. Just what he was to 'watch' was not made 
clear until it became apparent that Mr. Hays was making it his business to frustrate the 
investigation to the greatest extent possible. " 

[Ed. Note: The Cox Committee, created by Congress as a result of Rep. E.E. Cox of 
Georgia submitting a resolution to the House of Representatives in the 82nd Congress, was 
a forerunner of the Reece Committee. The Cox Committee was created to "direct a thorough 
investigation of foundations." However, just as the Reece Committee which followed, 
the Cox Committee was unable to get to the bottom of tax-exempt foundation affairs. 
Again, according to Mr. Wormser, "The Cox Committee did find that there had been a 
Communist, Moscow-directed plot to infiltrate American foundations and to use their 
funds for Communist purposes."] 

Science and Human Behavior by B.F. Skinner (Macmillan & Co.: New York, 1953) was 

published. To quote Skinner again, "Operant conditioning shapes behavior as a sculptor 
shapes a lump of clay. " 



The Fomentation : c. 1953 



49 



Alfred C. Kinsey, along with Wardell Pomeroy, Clyde Martin, and Paul Gebhard, 

published Sexual Behavior in the Human Female (W.B. Saunders: Philadelphia, Pa., 1953). 
According to Professor David Allyn, lecturer in the Department of History at Princeton 
University, this book, along with Kinsey's Sexual Behavior in the Human Male, served 
to solidify the move which 

changed the way social scientists studied sexuality by breaking from the accepted social 
hygienic, psychoanalytic, psychiatric and physiological approaches.... [Kinsey's work] 
played [a] critical role in the mid-century privatization of morality. In the post- WWII era, 
experts abandoned the concept of "public morals," a concept which had underpinned the 
social control of American sexuality from the 1870's onward.... In the 1950's and 60's, 
however, sexual morality was privatized, and the state-controlled, highly regulated moral 
economy of the past gave way to a new, "deregulated" moral market.... Kinsey's [work] 
argued against government interference in private life. 

[Ed. Note: The above statement by Allyn was made during a presentation entitled "Private 
Acts/Public Policy: Alfred Kinsey, the American Law Institute and the Privatization of 
American Sexual Morality" at the 1995 Chevron Conference on the History of the Behavioral 
and Social Sciences as part of a special symposium on Alfred Kinsey. Allyn acknowledged the 
Charles Warren Center at Harvard University and the Rockefeller Archive Center as providing 
grants which made his research possible.] 

Dr. Lewis Albert Alesen published a fascinating book entitled Mental Robots (The 
Caxton Printers, Ltd.: Caldwell, Idaho, 1953). Dr. Alesen, distinguished physician and 
surgeon, served as president of the California Medical Association from 1952-1953, and also 
wrote The Physician's Responsibility as a Leader. Some excerpts from Dr. Alesen's chapter 7 
of Mental Robots, "The Tools of Robotry," follow: 

Herbert A. Philbrick [double agent and author of J Led Three Lives] has been recently 
quoted as stressing that Soviet psychiatry is the psychiatry of Pavlov, upon whose original 
work on dogs the theory of the conditioned reflex is based. This conditioned reflex is the 
principle underlying all of the procedures employed by the Soviets in their brain-washing 
and brain-changing techniques. Under its skillful use the human can be, and has been in 
countless instances, so altered as completely to transform the concepts previously held and 
to prepare the individual so treated for a docile acceptance of all manner of authoritarian 
controls. The psychiatrist boasts that he possesses the power to alter human personality, 
and he has certainly made good his boast in many respects, at least to the extent of 
being able to force phony confessions out of men like Cardinal Mindszenty, Robert 
Vogeler, and a host of others who have been subjected to all manner of torture during 
their period of conditioning. 

In a book entitled Conditioned Reflex Therapy by Andrew Salte, published in 1949 by 
the Creative Age Press, individual free will, freedom of choice, and, of course, individual 
responsibility are categorically denied in these words: 

We are meat in which habits have taken up residence. We are a result of the way 
other people have acted to us. We are the reactions. Having conditioned reflexes means 
carrying about pieces of past realities.... We think with our habits, and our emotional 
training determines our thinking. Where there is a conditioned reflex, there is no will. Our 



50 

"will power" is dependent on our previously learned reflexes. 



Certainly it is true that the Communists, both in Russia, China, and the Iron Curtain 
countries, have accomplished spectacular changes in the thinking of millions of their 
citizens. Whether or not this mass changing is altogether sincere or durable is not for the 
moment as significant as the fact that it has taken place, and that based upon it there has 
been, apparently, a ready acceptance of revolutionary doctrines radically defying former 
custom and accepted usage, and transforming the individual under this spell of persuasion 
or compulsion into an individual possessing entirely different characteristics from those 
formerly exhibited. And thus, whole new social, economic, political, and even religious 
regimes have been accepted in a comparatively short time. 

In order to comprehend at all adequately what has been and what is happening to the 
mental processes and attitudes of the American people during recent years, and in order 
most particularly to be aware of and alert to the carefully planned goals of the inner and 
hard-core sponsors of the so-called mental health program, it is pertinent to explore briefly 
the science and art of cybernetics. Cybernetics, according to Gould's medical dictionary, 
"The science dealing with communication and communication-control theory as applied 
to mechanical devices and animals; and including the study of servo-mechanisms, that is, 
feed-back mechanicisms; Josiah Macy, Jr. Foundation, 565 Park Avenue, N.Y. 21, N.Y., has 
published a series of symposia on cybernetics 'Circular Causal and Feed-Back Mechanisms 
in Biology and Social Systems.'" 

In a Freedom Forum presentation entitled "Inside U.S. Communism" by Herbert Phil- 
brick, at Harding College, Searcy, Arkansas, April 16, 1954, and distributed by the National 
Education Program, Mr. Philbrick had this to say about cybernetics: 

The Communists, I have discovered, have a favorite term for their system of 
influencing people in devious ways. The word they use as an over-all title of this 
technique is "cybernetics." Cybernetics as a pure science has a very legitimate and worth- 
while function. It has to do with how to improve conduits and cables, how to make better 
coaxial cables for television, how to improve telephone service, how to make more efficient 
electronic brains, etc. It has a very legitimate service as a pure science. 

But since a human being, to a Communist, is simply another machine; since 
human nerve centers have exactly the same function as an electronic circuit; since 
a human has not a soul — he is only a mechanical apparatus — the Communists have 
decided that this particular science has a very useful application — not on machines 
but on humans. 

Now we've heard a great deal more recently about brain- washing. Back in 1940 
that word wasn't familiar to us, but what was going on inside these Young Communist 
League cells was a technique of cybernetics, a technique of brain-washing, if you will; 
the highly developed science of demolishing the minds and the spirits of men. [emphasis 
in original] The Communists brag that theirs is a "technique of Soviet psychiatry." Now 
Soviet psychiatry is based on the same basic principles as that of our own doctors and 
psychiatrists except that the Communists have a different purpose in their psychiatry. 
Our doctors work with unhealthy minds and try to make them healthy and whole again. 
The Communists have decided that cybernetics provides a very wonderful way to go to 
work on healthy minds and to destroy them. And of course we are now getting a bit 
of that picture from our own prisoners of war who were jailed and imprisoned by 
the North Koreans and the Red Chinese. One of my good friends is Robert Vogeler. 
We've learned a great deal from Bob Vogeler about the technique of brain-washing. 
It's a horrifying story. 

I would suggest that you folks who are interested in this subject, perhaps some of 
you students, could adopt for special study this field of cybernetics. It is brand new. I 
don't know of a single book on the subject in connection with what the Communists are 



The Fomentation : c. 1954 



51 



doing with it. As a matter of fact, my own knowledge is very limited because the only 
facts I have are those few things which we have gathered from inside the Communist 
Party which indicate that the Reds have been working around the clock in this study 
of the scientific manipulation and control of information. It is based on the findings of 
Pavlov which say that a man, like an animal, conditioned to respond to certain impulses, 
can be conditioned to respond to words, phrases and symbols. Therefore you pour in 
the words, phrases and symbols to which he will respond without thinking [emphasis in 
original] . And then you withhold other certain words which will cause him to respond 
in a way which you may not desire. It is the scientific control of human beings by 
means of control [of] information. 

As the pattern for the international robot of the future, so meticulously drawn to scale 
by our condescending planners and masters, becomes increasingly clear, it behooves us to 
study that plan carefully, to determine to just what extent it has already been effectuated, 
to appraise the multitudinous forces aiding and abetting its adoption, and to determine, 
finally, whether we as individuals do, in fact, possess characteristics of sufficient value to 
justify any resistance to this seemingly almost overwhelming juggernaut of collectivism 
which is rushing headlong upon us. Have we in America, the greatest land upon which 
God's sun has ever shone, succumbed to the fleshpots of a modern Egypt? Have we become 
so softened by bellies lined with rich food, wives clad in rich raiment, and housing and 
appurtenances designed to shield us from every intellectual endeavor that we are no longer 
interested in making any effort to reclaim and to reinvigorate the one economic, social, and 
political system which has made all of this possible for us? 



1954 

Alice A. Bailey, an American Theosophist, wrote Education in the New Age (Lucis 

Trust: New York and London, 1954). 10 The following information was written in the front 
of the book: "The publication of this book is financed by the Tibetan Book Fund which is 
established for the perpetuation of the teachings of the Tibetan and Alice A. Bailey. This 
fund is controlled by the Lucis Trust, a tax-exempt, religious, educational corporation. It is 
published in Dutch, French, Spanish, German, Italian and Portugese. Translation into other 
languages is proceeding." Following are some excerpts from chapter 3, "The Next Step in 
the Mental Development of Humanity": 

The Mental Transition Period 

There are three immediate steps ahead of the educational system of the world, and 
some progress has already been made towards taking them. First: The development of 
more adequate means of understanding and studying the human being. This will be 
made possible in three ways: 

1. The growth and the development of the Science of Psychology. This is the science 
of the essential man, and is at this time being more generally recognised as useful to, and 
consistent with, the right development of the human unit. The various schools of psychology, 
so numerous and separative, will each eventually contribute its particular and peculiar truth, 
and thus the real science of the soul will emerge from this synthesis. 

2. The growth and the development of the Science of the Seven Rays. This science will throw 
light upon racial and individual types; it will clearly formulate the nature of individual and 



52 



racial problems; it will indicate the forces and energies which are struggling for expression 
in the individual and in the race; and when the two major rays and the minor rays 
(which meet in every man) are recognised and studied by the educator in connection 
with the individual, the result will be right individual and group training, and correct 
vocational indications. 

3. The acceptance of the Teaching anent [about] the Constitution of Man given by the 
esotericists, with the implied relation of soul and body, the nature of those bodies, their 
qualities and purpose, and the interrelation existing between the soul and the three vehicles 
of expression in the three worlds of human endeavors. 

In order to bring this about, the best that the East has to offer and the knowledge 
of the West will have to be made available. The training of the physical body, the control 
of the emotional body, and the development of right mental apprehension must proceed 
sequentially, with due attention to the time factor, and also to that period wherein planned 
coordination of all aspects of the man should be carefully developed, (pp. 69-70) 

[Ed. Note: After returning from a stint in the U.S. Department of Education in the early 1980s, 
this author attended a school board meeting and noticed the change agent superintendent's 
scrawlings on a blackboard, which had evidently been used as part of some sort of in-service 
training. He had divided a circle into the following sections: physical, mental, creative, and 
"spiritual." My reaction was "Hmmm," since it was he with whom I had sparred over the 
use of values clarification — which destroyed any real Judeo/Christian spirituality — when I 
served on the board in the late 1970s.] 



1955 

The New York Times reported on August 6, 1955 that President Dwight D. Eisenhower 
called for the first White House Conference on Education. The announcement follows: 

WASHINGTON, D.C. — Reservations have been made in eight hotels here for 2045 rooms 
to be occupied November 20 through December 1 by participants in the White House 
Conference on Education. This conference, first of its kind to be called by a President, 
will be unusual in many ways. The ground rules call for two or more noneducators to 
each educator in order to stir up the widest possible education support by citizenry in the 
States.... However, the really unusual part of the conference plan lies in its sharp departure 
from the conventional, somewhat haphazard way of conducting big conferences. The 
President's committee has set up six subjects to be discussed; five of them to be thrashed 
out at the conference, and one to be taken home. Each of the five questions to be gone into 
here will be discussed in successive all-delegate sessions of 200 tables of 10 persons plus a 
discussion leader. The five questions under mass consideration will be: 

1. What should our schools accomplish? 

2. In what ways can we organize our school system more effectively and 
economically? 

3. What are our school building needs? 

4. How can we get good teachers — and keep them? 

5. How can we finance our schools — build and operate them? 

The question to be taken home is: How can we obtain a continuing interest in 
education? 

At the close of each all-delegate session a stenographic pool will be on hand to 



The Fomentation : c. 1958 



53 



compile the consensus at each table and to jot down the dissents. The 200 discussion 
leaders will convene around 20 tables in a smaller room, further refine the results and give 
their "consensus" and "dissents" to a second flight of stenographers. The mass of delegates 
then proceed to another question. The leaders of the 20 tables subsequently move to two 
tables. Their findings, set down by stenographers, will be forwarded to the conference 
committee for incorporation in the final report. 

[Ed. Note: This conference was probably one of the first national conferences to use the 
manipulative and non-representative group dynamics/Delphi Technique to orchestrate the 
participants into reaching consensus on pre-determined goals. Anyone who has participated 
in local or state goal-setting committees should recognize the drill. This conference provided 
an excellent example of the dialectical process at work.] 

1956 

Taxonomy of Educational Objectives: The Classification of Educational Goals, Handbook 
II, Affective Domain by David Krathwohl, Benjamin Bloom, and Bertram Massie (Longman: 
New York/London, 1956) was published. This Taxonomy provided the necessary tool for 
the schools of education to restructure education from academics to values (behavior) 
change. The swinging door was finally propped open to incorporate attitudes, values and 
beliefs into the definition of education. It is impossible to overestimate the Taxonomy's 
importance. An excerpt follows: 

In fact, a large part of what we call "good teaching" is the teacher's ability to attain affective 
objectives [attitudes, values, beliefs] through challenging the students' fixed beliefs and 
getting them to discuss issues, (p. 55) 



1958 

IN 1958 AT THE PEAK OF THE COLD WAR PRESIDENT DWIGHT D. EISENHOWER SIGNED THE 

first United States-Union of Soviet Socialist Republics (U.S.S.R.) agreements. These 
agreements included education. 

National Defense Education Act was passed in 1958 by the U.S. Congress as a result 
of Soviet success in space, demonstrated by the launching of Sputnik. This Act, which set 
the stage for incredible federal control of education through heavy financing for behavior 
modification, science, mathematics, guidance counseling, and testing, etc., involved 
"modern techniques developed from scientific principles," the full weight of which would 
be felt at the end of the century. Title I, General Provisions, Findings and Declaration of 
Policy, Sec. 101 of this Act reads: 

The Congress hereby finds and declares that the security of the Nation requires the fullest 
development of the mental resources and technical skills of its young men and women. The 



54 



present emergency demands that additional and more adequate educational opportunities be 
made available. The defense of this nation depends upon the mastery of modern techniques 
developed from complex scientific principles. It depends as well upon the discovery and 
development of new principles, new techniques, and new knowledge. 



Endnotes: 

1 For a thorough treatment of this subject, please read Dr. Judith A. Reisman's book Kinsey: Crimes and Consequences — The 
Red Queen and the Grand Scheme (The Institute for Media Education, Inc.: Arlington, Va., 1998). To order call 1-800-837- 
0544. 

2 B.F. Skinner. Science and Human Behavior (Macmillan & Co.: New York, 1953). 

3 The Taxonomy involves: Cognitive — how a student perceives or judges knowledge or facts; Affective — how a student feels or 
what he believes about a subject; Psychomotor — what a student does as a result of what he perceives or believes; converting 
belief to action. 

4 See Appendix XIX for an excellent critique of Bloom's Taxonomy. 

5 This document may be ordered from: Education Service Council, P.O. Box 271, Elm Grove, WI 53122. Erica Carle's latest and 
very important book, Why Things Are the Way They Are (Dorrance Publishing Co.: Pittsburgh, Pa., 1996), can be ordered in 
hardcover from: Dorrance Publishing Co., 643 Smithfield Street, Pittsburgh, PA 15222. 

6 To order Dr. Reisman's book, call 1-800-837-0544. 

7 Speech before Young Men's Lyceum, Springfield, Illinois, January, 1837. 

8 For further information, purchase School of Darkness: The Record of a Life and of a Conflict between Two Faiths by Bella V. 
Dodd (P.J. Kennedy & Sons: New York, 1954. Copyright transferred in 1963 to Bella V. Dodd, Devin-Adair Publishers). 

9 This section dealing with the Dodd Report was written by Robert H. Goldsborough and published in his book Lines of Credit: 
Ropes of Bondage, (The American Research Foundation, Inc.: Baltimore, 1989). This fascinating book may be obtained by 
sending a check for $8.00 to: Robert H. Goldsborough, P.O. Box 5687, Baltimore, MD 21210. 

10 The offices of Lucis Trust (formerly Lucifer Publishing) which were previously located across from the United Nations Building 
in New York have offered for sale the Robert Muller World Core Curriculum (a New Age elementary education curriculum), 
written by Muller who served as the under secretary of the UN. The World Core Curriculum states that it is based on the 
teachings of Alice Bailey's spirit guide, the Tibetan teacher Djwhal Khul. The present address for Lucis Trust is: 120 Wall 
St., New York, NY. Muller's curriculum can also be ordered from: Robert Muller School, 6005 Royaloak Dr., Arlington, TX. It 
should be noted that the Robert Muller School is a member of the UNESCO Associated Schools Project, certified as a United 
Nations Associated School. 



5 



THE SICK SIXTIES: 
psychology and skills 



Presidents Eisenhower, Kennedy and Johnson, while ostensibly concerning them- 
selves with racial injustice, economic inequities, and equal educational opportunities, were, in fact, 
responsible for installing the lifelong control system — the Planning, Programming, Budgeting Manage- 
ment System (PPBS) — into all departments of government. This was accomplished during what would 
become "The Sick Sixties" under the guise of "accountability to the taxpayers," a theme which will be 
repeated throughout the remainder of this century. 

American education would henceforth concern itself with the importance of the group rather than 
with the importance of the individual. This would be true in spite of the push towards individualized 



emotional 

health rather than on his academic learning. In order to change society, it was essential to identify 
the attitudinal changes needed in each student; then, modify the student's behavior according to the 
preconceived model approved by government social engineers known as "change agents." This model 
did not allow for competition or individual thought, belief, etc., but was conceived to standardize 
(robotize) human beings — particularly Americans — so that the entire populace would be in general 
agreement with government policy and future planning for world government. 

Removal of the last semblance of local control would come through the passage of the Elementary 



55 



56 



and Secondary Education Act of 1 965 (ESEA) , the most important piece of legislation to pass during 
Lyndon Johnson's administration. 

Two of the major federal initiatives developed with funding from The Elementary and Secondary 
Education Act of 1 965 which have contributed to the "deliberate dumbing down" of not only students 
but teachers as well, are listed below: 

1. the 1965-1969 Behavioral Science Teacher Education Program (BSTEP) , and 

2. the 1969 publication by the federal government of Pacesetters in Innovation, a 584-page cata- 
logue of behavior modification programs to be used by the schools. 

Pacesetters provided evidence of a concerted effort to destroy the last vestiges of traditional aca- 
demic education, replacing it with a behavior and mind control system guaranteed to create the "New 
Soviet Man" who would be unlikely to challenge totalitarian policies emanating from his local, state 
or federal/international government. Professor John Goodlad, the nation's premiere change agent who 
has been receiving federal and tax-exempt foundation grants for at least thirty years, said in 1969: 

The most controversial issues of the twenty-first century will pertain to the ends and means 
of modifying human behavior and who shall determine them. The first educational question 
will not be "what knowledge is of the most worth?" but "what kinds of human beings do we 
wish to produce?" The possibilities virtually defy our imagination. 1 

Behavior change on such a massive scale necessitated the creation of many agencies and policy 
devices which would oversee the implementation of the necessary innovations. Three agencies were: 
(1) the National Assessment of Educational Progress (NAEP), which tested students at various grade 
levels; (2) the Education Commission of the States (ECS), which enabled the states to become unified 
regarding education and its outreach — one entity supposedly controlled by its member states, but in 
reality controlled by its consensus policy which invariably reflected federal policy — and (3) the National 
Diffusion Network (NDN) which served as the transmission belt and advertising agency for federally 
funded programs, the majority of which were intended to destroy traditional right/wrong absolutist 
values through psychotherapeutic and behavioral techniques. 2 

Congressman John M. Ashbrook of Ohio, to whose memory the writer has dedicated this book, 
expressed his concern over the above-described radical shift in the direction of education before the 
U.S. House of Representatives on July 18, 1961 in a speech he delivered entitled "The Myth of Federal 
Aid to Education without Control." With extraordinary foresight, John Ashbrook warned that: 

In the report A Federal Education Agency for the Future we find the vehicle for Federal domi- 
nation of our schools. It is a real and present danger. . . . The battle lines are now being drawn 
between those who seek control and uniformity of our local schools and those who oppose 
this further bureaucratic centralization in Washington. It is my sincere hope that the Congress 
will respond to this challenge and defeat the aid to education bills which will implement the 
goals incorporated in A Federal Education Agency for the Future. 

Unfortunately, Congressman Ashbrook's words of wisdom did not convince his fellow colleagues 



The Sick Sixties : c. 1 960 



57 



and, therefore, did not influence the burgeoning sentiment of the majority in Congress. Had Ashbrook's 
views prevailed, the citizens of this great nation would be in a far better position to deal with the 
problems we face at home and abroad in 1999. 

1960 

United Nations Educational, Scientific and Cultural Organization's Convention Against 
Discrimination was signed in Paris, France in 1960. This Convention laid the groundwork for 
control of American education — both public and private — by U.N. agencies and agents. 

Soviet Education Programs: Foundations, Curriculums, Teacher Preparation by William 
K. Medlin (specialist in Comparative Education for Eastern Europe, Division of International 
Education), Clarence B. Lindquist (chief of Natural Sciences and Mathematics, Division of 
Higher Education), and Marshall L. Schmitt (specialist for Industrial Arts, Division of State and 
Local School Systems) was published in 1960 under the auspices of U.S. Department of Health, 
Education and Welfare Secretary Arthur S. Flemming and Office of Education Commissioner 
Lawrence G. Derthick (OE-14037, Bulletin 1960, No. 17). Americans familiar with the details 
of American school-to-work restructuring will see that the United States is adopting the Soviet 
polytechnic system described in the following paper. The "Pavlovian conditioned reflex theory" 
discussed is the Skinnerian mastery learning/ direct instruction method required in order to 
implement outcome-based education and school-to-work. Excerpts from this extraordinarily 
important report follow: 

HIGHLIGHTS 

In the school classroom and workshop, in the machine building plant, at the country- 
side, and wherever we went, we felt the pulse of the Soviet Government's drive to educate 
and train a new generation of technically skilled and scientifically literate citizens. Such is 
the consensus of the three specialists who are authors of this volume. 

The ideas and practices of Soviet education form a philosophy of education in which the 
authoritarian concept predominates.... With 60 percent of the adult male population illiterate 
in 1900, a massive educational effort was deemed necessary to transform this situation into 
one where new skills and scientific inquiry could meet national needs. 

The curriculum is unified and is the same for all schools throughout the U.S.S.R. with 
but slight variations in non-Russian nationality areas.... Principles of Darwinism, which are 
studied in grade 9 of U.S.S.R. schools, teach children about the origin of life together with 
the history of evolution in the organic world. The main theme of the course is evolution. 

Major efforts of U.S.S.R. schools during the past 30 years have been to train youngsters 
for the Government's planned economic programs and to inculcate devotion to its political 
and social system.... Science and mathematics occupy 31.4 percent of the student's time in 
the complete U.S.S.R. 10-year school. 

According to school officials, all work of pupils in these subjects has to be done in pen 
and ink in order to inculcate habits of neatness and accuracy. 

U.S.S.R. plans are to bring all secondary school children into labor education and train- 
ing experiences through the regular school program. The "school of general education" is 



58 



now named the "labor-polytechnic school of general education." 

Industrial and agricultural sciences and technical developments are causing Soviet 
educators to be concerned about future needs for readapting the schools to give more appro- 
priate instruction for the coming age of automation, atomic power, and space. . . . The authors 
consider the polytechnic program in the Soviet elementary-secondary schools "as an integral 
part of the Soviet philosophy of education." It is not a subject but in fact a type [emphasis in 
the original] of education, and other subjects... contribute to the polytechnic area. 

Soviet patriotism — fidelity to the Soviet land and to the ideas of communism — occupies 
a leading place in this educational conditioning, and in this sense gives the school a politi- 
cal character as well as a moral one. Employing primarily the conditioned reflex theory as 
elaborated by Pavlov (1849-1936), Soviet psychologists have worked out a system of didactics 
which are strict and fixed in their conception and application; one might even use the term 
"narrow" to distinguish them from the broad scope of methods employed, for example, in 
most U.S. schools. Soviet psychologists maintain that fundamentally all (except physically 
disturbed or handicapped) children can learn the standardized subject matter through the 
teaching methods devised for all schools. By definition, therefore, they exclude from practical 
consideration many educational techniques.... The curriculum, dominated until now by the 
so-called "hard" subjects, is designed to give all future citizens an intellectual foundation 
that is, in form, a traditional European one. This systematic approach to education tends to 
give Soviet teachers a classroom control that appears complete. 

Certain of their psychological research findings in the past are not the only explanation 
that we observe for this principle, however, and it is well to point out that Soviet psycholo- 
gists have only recently been in a position to try out new methods in connection with a more 
diversified curriculum. As one Moscow educator pointed out to us in a discussion on methods, 
the researchers are not always successful in getting their results and viewpoints adopted in 
school programs. Psychologists and other researchers are busily engaged in work on such 
areas as development of the cognitive activity of pupils in the teaching process (especially 
in relation to the polytechnic curriculum) ; simplification in learning reading and arithmetic 
skills in the lower grades; the formation of character and teaching moral values, including 
Soviet patriotism; psychological preparation of future teachers; the principles and methods 
for meeting individual children's needs (such as "self-appreciation"), 3 in terms of handicaps 
and as regards a child's particular attitudes, peculiarities, and maturity; and understanding 
the internal, structural integrity of each school subject and its interrelationships with other 
branches of knowledge. These research activities are carried out under Soviet conditions and 
exemplify some of the major problems which educators there now face. 

Soviet educators define their system as an all-round training whereby youth can par- 
ticipate in creating the conditions for a socialist, and ultimately, Communist society. Such 
participation can become possible, they hold, only as students cultivate all the basic disci- 
plines and only through a "steady rise in the productivity of labor"... which is linked closely 
with the educative process. School children and students are engaged in a total educational 
program which aims to teach all the same basic subjects, morals and habits in order to pro- 
vide society with future workers and employees whose general education will make them 
socialist (Communist) citizens and contribute to their productivity upon learning a vocation 
(profession), (pp. 10-11) 



In 1960 President Dwight D. Eisenhower received a final report from his CoMmission on 
National Goals entitled Goals for Americans. The 372-page volume recommended carrying out 
an international, socialist agenda for the United States. This report, following on the heels of 



The Sick Sixties : c. 1 960 



59 



the 1955 White House Conference on Education's use of the Delphi technique, 4 served to carve 
in stone the use of dialectic methods in public policy making through the use of results-based 
"planning" by consensus, not consent. This also may have marked the beginning of restructur- 
ing America from a constitutional republic to a socialist democracy 

Before listing an excerpted version of Goals for Americans, the writer would like to point 
out that although on their face these goals may sound legitimate, they are, in fact, blatantly 
socialistic. Only those recommendations which lean towards socialism have been included in 
this entry. 

GOALS FOR AMERICANS 

II. EQUALITY. Every man and woman must have equal rights before the law, and an equal 
opportunity to vote and hold office, to be educated, to get a job and to be promoted 
when qualified, to buy a home, to participate fully in community affairs. 

III. THE DEMOCRATIC PROCESS. ...With firm faith in individual American responsibil- 
ity, the Commission answered these questions with a confident and yet measured 
"yes." While stressing private responsibility, the Commission also forthrightly favors 
government action at all levels whenever necessary to achieve the national goals.... 
The Commission adopted as its own his [Professor Wallace S. Sayre of Columbia 
University] principal recommendations, that "the President be given unequivocal 
authority and responsibility to develop a true senior civil service," and that the pay 
of top government employees should be drastically increased. 

IV. EDUCATION. Annual Public and Private Expenditure for Education by 1970 Must 
Be Approximately $40 Billion — Double the 1960 Figure.... There must be more and 
better teachers, enlarged facilities, and changes in curricula and methods. Above all, 
schooling should fit the varying capacities of individuals; every student should be 
stimulated to work to his utmost; authentic concern for excellence is imperative. 

Among specific steps, the Commission recommended that: 

1. Small and inefficient school districts should be consolidated, reducing the total 
number from 40,000 to about 10.000. 5 

2. Teachers' salaries at all levels must be improved. 

3. Two-year colleges should be within commuting distance of most high school 
graduates. 

4. Adult education should provide a new emphasis on education throughout 
life.... 

VI. DISARMAMENT. Disarmament should be our ultimate goal. 

VII. LESS DEVELOPED NATIONS. The success of the underdeveloped nations must 
depend primarily on their own efforts. We should assist by providing education, 
training, economic and technical assistance, and by increasing the flow of public 
and private capital.... Doubling their rate of economic growth within five years is a 
reasonable objective.... The U.S. share of such an effort would require by 1965 an 
outflow of $5 to $5.5 billion per year of public and private capital, as compared with 



60 



$3.4 billion per year in the 1956-59 period.... 

X. THE UNITED NATIONS. A key goal in the pursuit of a vigorous and effective foreign 
policy is the preservation and strengthening of the United Nations. 

At the end of the Commission on National Goals report is the following: 

[A]ttributed to American Assembly, founded by Dwight D. Eisenhower in 1950 
when he was President of Columbia University. 

Attached to the report was a pamphlet entitled "Suggestions for Holding a Local Assem- 
bly on National Goals." The process for arriving at "consensus" explained in the pamphlet is 
actually group dynamics. Consensus is not consent! These documents prove there has been a 
well-formulated and funded plan to change the American system of government through deci- 
sion-making by unelected task forces, Soviet-style five-year plans, Delphi-type discussion groups, 
etc. This type of participatory decision making called for by regional government — involving 
partnerships and unelected councils— is taking place in every state of the nation today. It is 
rarely challenged since few Americans understand our constitutional form of government, and 
are, therefore, unable to recognize the important differences between a representative republic 
and the parliamentary form of government found in socialist democracies. 

teaching Machines and Programmed Learning: A Source Book (Department of Audio- 
Visual Instruction, National Education Association: Washington, D.C., 1960), edited by A. A. 
Lumsdaine (program director of the American Institute for Research and professor of education 
at the University of California in Los Angeles) and Robert Glaser (professor of psychology at 
the University of Pittsburgh and research advisor at the American Institute for Research) was 
published. Extensive excerpts from this document can be found in Appendix II Some interest- 
ing selections follow: 

[Chapter entitled] The Science of Learning and the Art of Teaching by B.F. Skinner 

Recent improvements in the conditions which control behavior in the field of learning 
are of two principal sorts. The "law of effect" has been taken seriously; we have made sure 
that effects do occur and that they occur under conditions which are optimal for producing 
the changes called learning. Once we have arranged the particular type of consequence called 
a reinforcement, our techniques permit us to shape the behavior of an organism almost at 
will. It has become a routine exercise to demonstrate this in classes in elementary psychology 
by conditioning such an organism as a pigeon, (pp. 99-100)... 

In all this work, the species of the organism has made surprisingly little difference. 
It is true that the organisms studied have all been vertebrates, but they still cover a wide 
range. Comparable results have been obtained with rats, pigeons, dogs, monkeys, human 
children, and most recently — by the author in collaboration with Ogden R. Lindsley — with 
human psychotic subjects. In spite of great phylogenetic differences, all these organisms show 
amazingly similar properties of the learning process. It should be emphasized that this has 
been achieved by analyzing the effects of reinforcement and by designing techniques which 
manipulate reinforcement with considerable precision. Only in this way can the behavior of 
the individual organism be brought under such precise control. It is also important to note 
that through a gradual advance to complex interrelations among responses, the same degree 



The Sick Sixties : c. 1961 



61 



of rigor is being extended to behavior which would usually be assigned to such fields as 
perception, thinking, and personality dynamics, (p. 103) 



1961 

Programmed Learning: Evolving Principles and Industrial Applications (FouNDAtion for 
Research on Human Behavior: Ann Arbor, Mich., 1961) edited by Jerome P. Lysaught was 
published. Appendix III contains significant material from this book. An excerpt from the 
introduction by Thomas H. Miller follows: 

To introduce the subject, we would like to have each of you work through the first lesson 
of Dr. B.F. Skinner's course in psychology. We would hope, incidentally, that a portion of 
the material is somewhat new to you so that some learning will actually take place in your 
encounter with the subject matter. Further, we hope it will demonstrate certain phenomena 
that will be spoken of repeatedly today, such as effective reinforcement of the learner and 
progress at the individual rate. 

Imagine yourself to be a freshman student at Harvard. You are taking, for the first 
time, a college course in psychology. This is your first day in that course. Your introduction 
to the course consists of the presentation of the programmed learning sequence on the next 
pages. 

The directions are simple. You should read the first stimulus item, S-l, consider it, and 
then construct in your own words the best possible answer. As soon as you have done this, 
turn the page and compare your answer with the answer listed at R-l, the first response item. 
Proceed through the program, going on to S-2 on the next page. 

Under the section entitled "Principles of Programming," written by Robert Glaser, we find 
the following excerpts to be revealing: 

It is indeed true that this book would never have been conceived without the well-known 
and perhaps undying work of Professor Skinner.... It is largely through Professor Skinner's 
work that all this theory and excitement about teaching machines and programmed learning 
has come about. 

The essential task involved is to evoke the specific forms of behavior from the student 
and through appropriate reinforcement bring them under the control of specific subject matter 
stimuli. As a student goes through a learning program certain of his responses must be strength- 
ened and shaped from initial unskilled behavior to subject matter competence.... Our present 
knowledge of the learning process points out that through the process of reinforcement, new 
forms of behavior can be created with a great degree of subtlety. The central feature of this 
process is making the reinforcement contingent upon performances of the learner. (Often the 
word "reward" is used to refer to one class of reinforcing events.)... 

The term "programming" refers to the process of constructing sequences of instructional 
material in a way that maximizes the rate of acquisition and retention and enhances the 
motivation of the student.... A central process for the acquisition of behavior is reinforce- 
ment. Behavior is acquired as a result of a contingent relationship between the response of 
an organism and a consequent event. In order for these contingencies of reinforcement to be 
effective, certain conditions must be met. Reinforcement must follow the occurrence of the 
behavior being taught. If this is not the case, different and perhaps unwarranted behavior 



62 

will be learned. 



On July 18, 1961, Congressman John M. Ashbrook delivered a speech before CoNgress 
entitled "The Myth of Federal Aid to Education without Control" {Congressional Record: pp. 
11868-11880). Excerpts from his very important speech, which documented and exposed the 
plans for the internationalization and transformation of American education, follow: 

That there was any doubt of the Federal bureaucrats' intentions in this matter was laid to 
rest with the discovery of a Health, Education, and Welfare publication, A Federal Educa- 
tion Agency for the Future, which is a report of the Office of Education, dated April 1961.... 
I feel that its pronouncements are a blueprint for complete domination and direction of our 
schools from Washington. The publication was not popularly distributed and there was some 
difficulty in obtaining a copy. 

Fifty-six pages of findings contain recommendations which call for more and more 
Federal participation and control and repeatedly stress the need for Federal activity in formu- 
lating educational policies. It recommends a review of teacher preparation, curriculum and 
textbooks. It calls for an implementation of international education projects in cooperation 
with UNESCO in the United Nations, and ministries of education abroad. Of course, it rec- 
ommends an enlarged office of education and the use of social scientists as key advisers.... 
It places stress on "implementing international educational projects in the United States and 
bringing maximum effectiveness to the total international educational effort." Would not the 
Communists, with their footholds and infiltrations in these organizations, love this? No detail 
has been overlooked — "curriculum will have to undergo continual reshaping and upgrading; 
and new techniques and tools of instruction will have to be developed" and "teacher prepa- 
ration, textbooks, and the curriculum in these subject fields must be improved in the decade 
ahead." In the report... we find the vehicle for Federal domination of our schools. 

. . .The battle lines are now drawn between those who seek control and uniformity of our 
local schools and those who oppose this further bureaucratic centralization in Washington. 
It is my sincere hope that the Congress will respond to this challenge and defeat the aid to 
education bills which will implement the goals incorporated in A Federal Education Agency 
for the Future. 

Ashbrook went on to point out that 

[Under] The Mission [as stated in the report] . . . the basic mission of the Office [of Education] 
to "promote the cause of education" remains unchanged since its establishment in 1867. 

...What is meant when he [Sterling M. McMurrin, Commissioner of Education] says, "I 
anticipate that much of this activity will take place through normal administrative processes 
within the Office and the Department"? In the jargon of Washington bureaucracy this means 
that the report will be largely implemented on the administrative level without Congressional 
action and approval. 

The House Committee on Education and Labor recently voted out H.R. 7904 which 
would extend the National Defense Education Act. ... It is evident that the administration 
has chosen this vehicle for enacting piecemeal the recommendations of A Federal Education 
Agency for the Future. 

Ashbrook continued to quote from Agency for the Future which he said "laid bare the real 
nemesis of the Federal bureaucrats — the tradition of local control." The report stated, "The 



The Sick Sixties : c. 1961 



63 



tradition of local control should no longer be permitted to inhibit Office of Education leader- 
ship." The Committee on Mission and Organization called for 

[An] Office of Educational Research that would administer a separate program of extra-mural 
contracts and grants for basic and experimental research in disciplines bearing upon the 
educational situation, and would serve the other parts of the Bureau with advice on research 
problems.... Since it is presumed that the Centers, oriented to education as it is organized 
and administered, will deal with educational problems directly confronting schools and 
colleges, it is believed desirable that extra-mural research be significantly attentive to basic 
problems of human development, training and teaching, regardless of whether or not they 
are acknowledged as immediately pressing problems by educators. In short, some research 
should be conducted precisely because it challenges the assumptions upon which practicing 
educators are proceeding. 

The above is obviously a reference to behavioral sciences research which, until that time, 
had not found a permanent home at the local school educator level nor was there the need to 
conduct such research in order to challenge the "assumptions upon which practicing educators 
are proceeding." Attached to the Committee's report were appendices from which the follow- 
ing excerpts are taken: 

Appendix B 

The Mission of the Office of Education in the 1960s 

The schools of tomorrow must prepare their students for living in a world of continu- 
ous and rapid change, presenting them with unprecedented social, economic, and political 
problems. We must, in fact, give to education a character that will initiate and support a 
process of lifelong learning if Americans are to keep abreast of the accelerating advent of new 
knowledge and of the increasing complexity of modern life. These prospective conditions 
are already suggested in part by the rapidly increasing demand for highly specialized and 
professional skills. During the coming decade, new means must be developed for identifying 
and releasing student potential; curriculums will have to undergo continual reshaping and 
upgrading; and new techniques and tools of instruction will have to be developed.... 

• Education is basic to effort to bring about an enduringly peaceful world. 

• Next decade will bring closer and multiple relationships with Ministries of Educa- 
tion abroad and international organizations, such as UNESCO, the Organization of 
American States, International Bureau of Education. 

• Variations among States and school districts in standards of instruction, facilities, 
staff, and services expose serious inadequacies. Our progress toward the ideal of 
equality of educational opportunity is tragically uneven. 

• In the area of international educational cooperation, in particular, it must play the 
major role, since only the Federal Government can enter into agreements with other 
governments. Along with these responsibilities should be included that of stimulating 
and participating activity in the process of formulation, examination, and reformula- 
tion of the goals of our national society in terms of educational objectives. 

• The development of uniform, consistent and compatible statistical data in all States 
and in all institutions of higher education will call for both technical and financial 
assistance to these sources from the Office of Education.... 

• Economists, sociologists, and other social scientists will be needed on the staff to 
assist in dealing with educational problems in their total context. 



64 



National Defense Education Act (NDEA) Amendment of 1961 — Additional Views, which 
accompanied H.R. 7904, included very important testimony regarding the dangers of the NDEA 
and the recommendations made in the above Agency for the Future report. A discussion of the 
dangers of federal control follows: 

We [the undersigned] reject, furthermore, the philosophy that there can exist Federal 
aid to any degree without Federal control. We further hold that there should not be Federal 
aid without Federal control. It is the responsibility of the Federal Government to so supervise 
and control its allocations that waste and misuse is kept to a minimum. Since we do not 
desire such federal control in the field of public education, we do not desire Federal aid to 
education. 

We should never permit the American educational system to become the vehicle for 
experimentation by educational ideologues. A careful analysis of the writings and statements 
of vocal and influential spokesmen in the governmental and educational fields indicates a 
desire on the part of some of these individuals to utilize the educational system as a means 
of transforming the economic and social outlook of the United States. 

We point to a statement by Dr. Harold Rugg, for many years professor of education at 
Teachers College, Columbia University, who declared in Frontiers of Democracy on May 15, 
1943 (pp. 247-254) concerning the teachers' colleges: 

Let them become powerful national centers for the graduate study of ideas and they will 
thereby become forces of creative imagination standing at the very vortex of the ideational 
revolution. Let us make our teacher education institutions into great direction finders for 
our new society, pointers of the way, dynamic trailblazers of the New Frontiers. 

We could supply pages of documentation analyzing the type of new frontier planned. It 
is indeed a Socialist frontier. It had been hoped that the philosophy of education expressed by 
Dr. Rugg and his cohorts back in the early forties, had long since been repudiated. However, 
in April of 1961, the U.S. Department of Health, Education, and Welfare published a booklet 
entitled A Federal Education Agency for the Future. Anyone who doubts that the Federal aid 
to education bills now before Congress would mean eventual Federal control of education, 
should carefully read and analyze for himself what the Office of Education is planning for 
tomorrow's schools. They openly predict their "need" for new powers on the passage of the 
multimillion-dollar aid legislation now before us. They recommend that their Office of Edu- 
cation be elevated to the status of U.S. Education Agency, "to reflect the more active role of 
this unit of Government." They envision the new Agency's mission as one of "leadership" 
(p. 42), "national policymaking" (p. 43), "national planning" (p. 47), "to prepare students 
to understand the world of tomorrow" (p. 40). The Office of Education writers further say 
"along with these responsibilities should be included that of stimulating and participating in 
the process of formulation, examination, and reformulation of the goals of our society in the 
terms of educational objectives" (p. 43). 

[Ed. Note: A careful warning was sounded through the National Defense Education Act Amend- 
ment of 1961 — Additional Views when the Congressmen said, "We reject that there can exist 
Federal aid to any degree without Federal control. We further hold that there should not be 
Federal aid without Federal control." This applies as well to all of the voucher and tax credit 
proposals before us today (in 1999) flying under the banner of "choice." 

The Mission Statement of the Office of Education clearly called for the establishment of 
the National Center for Education Statistics, the National Assessment of Educational Progress, 
and the "wholistic" approach to education through the inclusion of social scientists in the 



The Sick Sixties : c. 1961 



65 



education process— a clear departure from academically oriented educational pursuits into 
intrusive areas totally unrelated to education. 

Even taking into account the collectivist direction taken by radical educators in the first half 
of this century, this movement could not have borne fruit had it not been for President Dwight 
Eisenhower's Commission on National Goals which produced Goals for Americans in 1960. 
These goals, along with the implementation of PPBS and Bloom's Taxonomy of Educational 
Objectives, seem to have provided the catalyst for the "planned economy" being implemented 
in the United States in 1999.] 



On September 2, 1961 the 87th Congress passed the Arms Control and DisARMAment Act 
(P.L. 87-297, H.R. 9118) which established a United States Arms Control and Disarmament 
Agency. Following is the statement of purpose for this important Act: 

Public Law 87-297 
87th Congress, H.R. 9118 
September 26, 1961 

AN ACT 

To establish a United States Arms Control and Disarmament Agency. 

Be it enacted by the Senate and House of Representatives of the United States of America in 
Congress Assembled, 

TITLE 1— SHORT TITLE, PURPOSE, AND DEFINITIONS 
SHORT TITLE 

SECTION 1. This Act may be cited as the "Arms Control and Disarmament Act." 
SECTION 2. As used in this Act- 
fa) The Terms "arms control" and "disarmament" mean the identification, verification, 
inspection, limitation, control, reduction, or elimination, of armed forces and armaments of 
all kinds under international agreement including the necessary steps taken under such an 
agreement to establish an effective system of international control, or to create and strengthen 
international organizations for the maintenance of peace. 

As partial fulfillment of the provision to take "the necessary steps. . . to establish an effective 
system of international control, or to create and strengthen international organizations for the 
maintenance of peace," President John F. Kennedy's U.S. Department of State simultaneously 
issued State Department Publication 7277: The United States Program for General and Complete 
Disarmament in a Peaceful World. The following are excerpts from Publication 7277: 

[a] world in which adjustment to change takes place in accordance with the principles of 
the United Nations. 

In order to make possible the achievement of that goal, the program sets forth the fol- 
lowing specific objectives toward which nations should direct their efforts. 

• The disbanding of all national armed forces and the prohibition of their reestablish- 
ment in any form whatsoever other than those required to preserve internal order 
and for contributions to a United Nations Peace Force. 

• The elimination from national arsenals of all armaments including all weapons of 
mass destruction and the means for their delivery, other than those required for a 



66 



United Nations Peace Force and for maintaining internal order. 

• The manufacture of armaments would be prohibited except for those of agreed types 
and quantities to be used by the U.N. Peace Force and those required to maintain 
internal order. All other armaments would be destroyed or converted to peaceful 
purposes. 

During the Congressional debate over the Arms Control and Disarmament Act, those favor- 
ing the establishment of the agency called it the "Peace Agency." Congressman John Ashbrook, 
an opponent of the measure and its implications, called it the "Surrender Agency" and further 
expressed his concern that the agency "may well be the back door for the one-worlders to 
accomplish their goal of an International World Court." Additionally, Senator Joseph S. Clark 
of Pennsylvania declared on the floor of the U.S. Senate March 1, 1962 that this new interna- 
tional focus was "the fixed, determined and approved policy of the government of the United 
States," much to his sorrow. 

[Ed. Note: The goal perceived by Ashbrook, Clark and others of the Arms Control and Disarma- 
ment Act was to further extend the influence and control of the United Nations through United 
States contributions to the power of the UN regional alliances such as the North Atlantic Treaty 
Organization (NATO) and Southeast Asia Treaty Organization (SEATO). The development of 
education curriculum by United Nations Educational, Scientific, and Cultural Organization 
(UNESCO) and its outreach to the youth and communities throughout the world, coupled 
with the international political and economic weight of the UN through NATO and the UN's 
treaty-making capacity, lends credence to the concerns voiced in Congress and elsewhere that 
a one-world government has been in the making since the end of World War II.] 

"Harrison Bergeron," one of the several short stories by Kurt Vonnegut, Jr, included in 
his book Welcome to the Monkey House (Delacorte Press/Seymour Lawrence: New York, 1961), 
provided uncanny insight into the nature of America's dumbed-down society in the year 2081. 
How the elitist "planners, managers" deal with Americans whose intellects and independence 
create problems for the smooth functioning of a society controlled for the benefit of all is the 
focus of the story. 6 An excerpt follows: 

The year was 2081, and everybody was equal. They weren't only equal before God and 
the law. They were equal every which way. Nobody was smarter than anybody else. Nobody 
was stronger or quicker than anybody else. All this equality was due to the 211th, 212th, 
and 213th Amendments to the Constitution, and to the unceasing vigilance of agents of the 
United States Handicapper General. 

[Ed. Note: The reader will, later in this book, recall this fictional forecast when encountering 
outcome-based education, Individual Education Plans (IEP's) for ALL — not just the handi- 
capped—and the Reading Excellence Act passed by Congress October 16, 1998, which will 
provide federal tax support for Skinnerian phonics instruction programs developed and used 
with special education children for over 25 years. In 1999 House Education and Workforce 
Committee Chairman William Goodling (PA) will also propose the removal of funding from 
present titles of the Elementary and Secondary Act (ESEA) in order to completely fund the Indi- 
viduals with Disabilities in Education Act (IDEA). Vonnegut's office of "Handicapper General" 



The Sick Sixties : c. 1 962 

may not wait until 2081 !] 



67 



1962 

In the September 3, 1962 edition of The Dan Smoot Report 7 (Vol. 8, No. 36) Smoot's article 
"Stabbed in the Back on the Fourth of July" dealt with an Independence Day speech given in 
Philadelphia by President John F. Kennedy in which he said: 

But I will say here and now on this day of independence that the United States will 
be ready for a Declaration of Interdependence — that we will be prepared to discuss with a 
United Europe the ways and means of forming a concrete Atlantic Partnership — a mutually 
beneficial partnership between the new union now emerging in Europe and the old American 
Union founded here 175 years ago. 

Today Americans must learn to think intercontinentally. 

On July 11, 1961, according to Smoot's report: 

James Reston (a member of the Council on Foreign Relations and an admirer of President 
Kennedy) commented on the President's speech in a New York Times article : 

This year... President Kennedy went to Independence Hall, of all places, and on the Fourth 
of July, of all days, and virtually proposed to repeal the Declaration of Independence in 
favor of a declaration of interdependence.... Maybe it is just the drowsy indolence of the 
summer, but American opinion seems remarkably receptive, or at least acquiescent, to 
President Kennedy's proposal for a partnership of the Atlantic nations.... In Washington, 
there was not a whisper of protest from a single national leader. 



1963 

The Role of the Computer in Future Instructional Systems was published as the March/ 
April, 1963 supplement of Audiovisual Communication Review (Monograph 2 of the Techno- 
logical Development Project of the National Education Association [Contract #SAE9073], U.S. 
Office of Education, Dept. of Health, Education and Welfare: Washington, D.C., 1963). James 
D. Finn of Los Angeles was the principal investigator and Donald P. Ely was the consulting 
investigator for this project. (Donald Ely also became project director for the U.S. Department of 
Education's Project BEST: Basic Educational Skills through Technology, which will be discussed 
in a later entry in this book.) Excerpts from a chapter entitled "Effortless Learning, Attitude 
Changing, and Training in Decision-Making" follow: 

Another area of potential development in computer applications is the attitude chang- 
ing machine. Dr. Bertram Raven in the Psychology Department at the University of California 
at Los Angeles is in the process of building a computer-based device for changing attitudes. 
This device will work on the principle that students' attitudes can be changed effectively 
by using the Socratic method of asking an appropriate series of leading questions designed 
to right the balance between appropriate attitudes, and those deemed less acceptable. For 
instance, after first determining a student's constellation of attitudes through appropriate 



68 



testing procedures, the machine would calculate which attitudes are "out of phase" and 
which of these are amenable to change. If the student were opposed to foreign trade, say, 
and a favorable disposition were sought for, the machine would select an appropriate series 
of statements and questions organized to right the imbalance in the student's attitudes. The 
machine, for instance, would have detected that the student liked President Kennedy and 
was against the spread of Communism; therefore, the student would be shown that JFK 
favored foreign trade and that foreign trade to underdeveloped countries helped to arrest the 
Communist infiltration of these governments. If the student's attitudes toward Kennedy and 
against Communism were sufficiently strong, Dr. Raven would hypothesize that a positive 
change in attitude toward foreign trade would be effectively brought about by showing the 
student the inconsistency of his views. There is considerable evidence that such techniques 
do effectively change attitudes. 

Admittedly, training in decision-making skills is a legitimate goal of education in this 
age of automation, but the problem remains — does the educator know what values to attach 
to the different outcomes of these decisions?... What about students whose values are out of 
line with the acceptable values of democratic society? Should they be taught to conform to 
someone else's accepted judgment of proper values? Training in decision-making is ultimately 
compounded with training in value judgment and, as such, becomes a controversial subject 
that needs to be resolved by educators before the tools can be put to use. 



University of Pittsburgh's Learning Research and Development Center iNTRoduced in 1963 
the Individually Prescribed Instruction (IPI) model which would allow for the implementation 
of continuous progress programs necessary for value change and school-to-work training. A 
good example of what Individually Prescribed Instruction is designed to do is given in Planned 
Change in Education: A Systems Approach, edited by David S. Bushnell of Project Focus and 
Donald Rappaport of Price Waterhouse & Co. (Harcourt, Brace and Jovanovich, Inc.: New York, 
1971). Excerpts from chapter 7, "Individualizing Instruction" by Robert G. Scanlon, program 
director for the Individualizing Learning Program of Research for Better Schools, Inc., and Mary 
V. Brown, assistant program director to the project, are reprinted below: 

IPI is an instructional system that permits the teacher to plan and conduct a program 
of studies tailored to the needs and characteristics of each student. Its procedures have been 
designed to enable the school to meet more of the needs of more individual pupils and take 
a new direction in the continuing search for ways to adapt instruction to individual pupils. 
The rate of learning, amount of practice, type of materials, and mode of instruction are the 
parameters of individual differences emphasized in IPI. 

During the school year 1963-64, the Learning Research and Development Center and 
the Baldwin-Whitehall public schools (a suburban Pittsburgh school system) initiated an 
experimental project to investigate the feasibility of a system of individualized instruction in 
an entire K-6 school (Oakleaf). This came as a result of a series of exploratory studies begun 
in 1951-1962 designed to test preliminary notions in a single classroom. The work started 
with the use of programmed instruction in an intact classroom. 

As work proceeded, it became apparent that the significant individualization feature of 
programmed instruction could not be augmented unless the organization of the classroom was 
changed to permit a more flexible context. Out of this experience grew the current Individu- 
ally Prescribed Instruction project in which various combinations of instructional materials, 
testing procedures, and teacher practices are being used to accommodate individual student 



The Sick Sixties : c. 1 963 



69 



differences. 

IPI is a system based on a set of specified objectives correlated with diagnostic instru- 
ments, curriculum materials, teaching techniques, and management capabilities. The objec- 
tives of the system are: 

1. to permit student mastery of instructional content at individual learning rates; 

2. to ensure active student involvement in the learning process; 

3. to encourage student involvement in learning through self-directed and self-initiated 
activities; 

4. to encourage student evaluation of progress toward mastery and to provide instruc- 
tional materials and techniques based on individual needs and styles, (pp. 93-95) 

[Ed. Note: IPI is necessary to the success of outcome-based education because it does away 
with norm-referenced testing and the traditional grading system. The Carnegie Unit is also jeop- 
ardized by the introduction of IPI. The federally funded laboratory Research for Better Schools, 
Inc., in Philadelphia, Pennsylvania field-tested IPI, thus setting the stage for Skinnerian mastery 
learning/ direct instruction and the use of Skinner's "box" (the computer) to be incorporated 
into curriculum. Homeschoolers and Christian educators should be reminded that this project 
is reflected in many of the curricular and organizational designs advocated for their use.] 

In 1963 a national project was initiated which was the forerunner of the NAtional Assess- 
ment of Educational Progress (NAEP) and became the model for individual state assessments 
which have created enormous controversy due to their focus on attitudinal and value change. 
This study was presented in A Plan for Evaluating the Quality of Educational Programs in Penn- 
sylvania: Highlights of a Report from Educational Testing Service to the State Board of Education 
of the Commonwealth of Pennsylvania (Educational Testing Service: Princeton, N.J., June 30, 
1965). The combination of the Skinnerian method of training and the assessments' emphasis 
on change in attitudes, values and beliefs resulted in what the average parent considered a 
"lethal concoction," absolutely guaranteed to create a "robotized citizen for the New Pagan 
Age. " Although Appendix IV of this book includes verbatim text from the Plan, the following 
excerpts provide a fairly clear picture of the intent of those involved in this seminal project: 

This Committee on Quality Education sought the advice of experts [including Dr. Urie 
Bronfenbrenner of the Department of Sociology, Cornell University; Dr. David R. Krathwohl 
of the College of Education, Michigan State University [a co-author with Benjamin Bloom 
of The Taxonomy of Educational Objectives: Affective Domain] ; and Dr. Ralph Tyler, director 
of the Center for Advanced Study in the Behavioral Sciences in Palo Alto, California. These 
experts constituted a Standing Advisory Committee for the project.... 

It [the Committee] concluded that an educational program is to be regarded as adequate 
only if it can be shown to contribute to the total development of pupils.... The Committee 
recognizes that many of the desirable qualities that schools should help pupils acquire are 
difficult to define and even more difficult to measure. It feels, nevertheless, that any evalua- 
tion procedure that leaves these qualities out of account is deficient as a basis for determining 
whether the program of any school district is educationally adequate. . . . 

The first step in judging the quality of educational programs is to decide on the purposes 
of education. What should children be and do and know [emphasis in original] as a conse- 
quence of having gone to school? What are the goals of the schools? These questions have 
been high on the agenda of the Committee on Quality Education. Its members wanted a set 



70 



of goals that would reflect the problems society faces in the world of today. . . . Measures of 
conventional academic achievement, for instance, are at a more advanced stage of develop- 
ment than measures of attitude and values. 

Measures of progress toward the ten goals are unequally developed. Some are more 
dependable and valid than others. For example, tests of reading comprehension are relatively 
well developed and reasonably well understood while tests of such qualities as self-under- 
standing and tolerance are less well developed and poorly understood.... Where the available 
measures are clearly inadequate, intensive research and development should be undertaken 
immediately to bring them to the point where they can have full effect in the evaluation 
program. 



James Clavell wrote The Children's Story (Delacorte Press/Eleanor Friede: New York, 
1963) . In this book Clavell, author of King Rat, Tai-Pan, Shogun and Noble House, explains most 
eloquently how little children can have their minds manipulated into believing anything the 
teacher wants them to believe, even to the point of believing their parents are old-fashioned 
and should go back to school to unlearn bad thoughts, and that God does not exist. On the 
dust jacket of the book we learn: 

It was a simple incident in the life of James Clavell — a talk with his young daughter 
just home from school — that inspired this chilling tale of what could happen in twenty-five 
quietly devastating minutes. He [Clavell] writes: "the children's story came into being that 
day. It was then that I really realized how vulnerable my child's mind was — any mind for 
that matter — under controlled circumstances." 

Some excerpts from the last pages of this remarkable book follow: 

"Sit down, Johnny, and we'll start learning good things and not worry about grown-up 
bad thoughts. Oh yes," she said when she sat down at her seat again, brimming with happiness. 
"I have a lovely surprise for you. You're all going to stay overnight with us. We have a lovely 
room and beds and lots of food, and we'll all tell stories and have such a lovely time." 

"Oh, good," the children said. 

"Can I stay up till eight o'clock?" Mary asked breathlessly. 

"Well, as it's our first new day, we'll all stay up to eight-thirty. But only if you promise 
to go right to sleep afterward." 

The children all promised. They were very happy. Jenny said, "But first we got to say 
our prayers. Before we go to sleep." 

The New Teacher smiled at her. "Of course. Perhaps we should say a prayer now. In 
some schools that's a custom, too." She thought a moment, and the faces watched her. Then 
she said, "Let's pray. But let's pray for something very good. What should we pray for?" 

"Bless Momma and Daddy," Danny said immediately. 

"That's a good idea, Danny. I have one. Let's pray for candy. That's a good idea, isn't 

it?" 

They all nodded happily. 

So, following their New Teacher, they all closed their eyes and steepled their hands 
together, and they prayed with her for candy. 

The New Teacher opened her eyes and looked around disappointedly. "But where's our 
candy? God is all-seeing and is everywhere, and if we pray, He answers our prayers. Isn't 
that true?" 



The Sick Sixties : c. 1 964 



71 



"I prayed for a puppy of my own lots of times, but I never got one," Danny said. 
"Maybe we didn't pray hard enough. Perhaps we should kneel down like it's done in 
church." 

So the New Teacher knelt and all the children knelt and they prayed very, very hard. 
But there was still no candy. 

Because the New Teacher was disappointed, the children were very disappointed. Then 
she said, "Perhaps we're using the wrong name." She thought a moment and then said, 
"Instead of saying 'God,' let's say 'Our Leader.' Let's pray to Our Leader for candy. Let's pray 
very hard and don't open your eyes till I say." 

So the children shut their eyes tightly and prayed very hard, and as they prayed, the 
New Teacher took out some candy from her pocket and quietly put a piece on each child's 
desk. She did not notice Johnny — alone of all the children — watching her through his half- 
closed eyes. 

She went softly back to her desk and the prayer ended, and the children opened their 
eyes and they stared at the candy and they were overjoyed. 

"I'm going to pray to Our Leader every time," Mary said excitedly. 
"Me, too," Hilda said. "Could we eat Our Leader's candy now, teacher?" 
"Oh, let's, please, please, please." 
"So Our Leader answered your prayers, didn't he?" 

"I saw you put the candy on our desks!" Johnny burst out. "I saw you.... I didn't close 
my eyes, and I saw you. You had 'em in your pocket. We didn't get them with praying. You 
put them there. " 

All the children, appalled, stared at him and then at their New Teacher. She stood at 
the front of the class and looked back at Johnny and then at all of them. 

"Yes, Johnny, you're quite right. You're a very, very wise boy. Children, / put candy on 
your desks. So you know that it doesn't matter whom you ask, whom you shut your eyes and 
'pray' to — to God or anyone, even Our Leader — no one will give you anything. Only another 
human being." She looked at Danny. "God didn't give you the puppy you wanted. But if you 
work hard, I will. Only I or someone like me can give you things. Praying to God or anything 
or anyone for something is a waste of time." [all emphases in original] 



1964 

An article entitled "Ethical Education" was published in Free Mind, the journal of the 

American Humanist Association, in its June/July 1964 issue. The following is an excerpt: 

At the 1962 Humanist meeting in Los Angeles four women attended a workshop on humanist 
family services and began to lay the groundwork for the AHA's widespread involvement in 
ethical education for children.... The purpose of a humanist ethical education program should 
be to provide the child with tools by which he can make his own decisions. 

[Ed. Note: From this time on efforts would be made to develop and implement humanistic (no 
right/no wrong) values education under many labels, just a few of which were/are: values 
clarification; decision making; critical thinking; problem solving; and moral, character, citizen- 
ship and civic education.] 



72 



In 1964 the Carnegie Corporation appointed Ralph Tyler chairman of the CoMmittee on 
Assessing the Progress of Education which continued the project begun in 1963 that would in 
1969 become the National Assessment of Educational Progress (NAEP). 

[Ed. Note: In 1999 NAEP is funded by the federal government and widely used across the United 
States. Individual states are passing legislation to use NAEP as a state test and parents and 
legislators are mistakenly believing that these "tests" (assessments) will give them information 
about the performance of their children in academic subjects. This is a misconception; NAEP 
tracks conformity to government-generated goals.] 

1965 

The Behavioral Science Teacher Education Program (BSTEP), funded by the U.S. Depart- 
ment of Health, Education and Welfare, was initiated in 1965 at Michigan State University and 
carried out between the years 1965 and 1969. BSTEP's purpose was to change the teacher from 
a transmitter of knowledge/content to a social change agent/facilitator/clinician. Traditional 
public school administrators were appalled at this new role for teachers. (For more extensive 
reading of the BSTEP proposal, see Appendix V.) 

Elementary and Secondary Education Act (ESEA) of 1965 was passed by Congress. This 
marked the end of local control and the beginning of nationalization/internationalization of 
education in the United States. Use of goal-setting, Management by Objectives (MBO), Plan- 
ning, Programming, Budgeting Systems (PPBS) and systems management for accountability 
purposes would be totally funded by and directed from the federal level. The table of contents 
for ESEA included: 

• Title I — Financial Assistance to local educational agencies for education of children 
from low-income families 

• Title II — School library resources, textbooks, and other instructional materials 

• Title III— Supplementary educational centers and services, guidance counseling, and 
testing 

• Title IV — Libraries, learning resources, educational innovation, and support 

• Title V— Grants to strengthen State Departments of Education 

• Title VI— Vacant 

• Title VII — Bilingual education programs 

• Title VIII — General provisions 

• Title IX — Ethnic heritage program 

ESEA targeted low income/minority students for experimentation with Skinnerian "basic 
skills" programs; i.e., Follow Through [mastery learning/direct instruction], Right-to-Read, 
Exemplary Center for Reading Instruction (ECRI), Project INSTRUCT, etc. By the end of the 
1980s state departments of education would be receiving between 60-75% of their operating 
budget from the U.S. Department of Education — which was not even in existence at the time 
of passage of the ESEAl 



The Sick Sixties : c. 1 965 



73 



President Lyndon B. Johnson issued an Executive Order in 1965 introducing the Planning, 
Programming and Budgeting System (PPBS) into use throughout all departments of the entire 
federal government. 

The Education Commission of the States (ECS) was created in 1965 "in order to bring 
some degree of order out of this chaos," wrote Harvard University President James B. Conant 
in 1964 in reference to education policy making in the United States. ECS was to be made up 
of dues-paying "members" comprising representatives of each participating state's legislative 
Education Committees and their governors. The Competency-Based Education (CBE) move- 
ment — which evolved into outcome-based education (OBE), both using mastery learning as a 
base — was orchestrated by ECS. Since ECS served as the resource and coordinator of information 
flowing to state legislative committees and governors' offices across the land, it is no wonder 
that all states ended up having the same curriculum. 

A very important article, entitled "E.C.S. at 20: The Compact's Potential Is Still To Be 
Realized" by Thomas Toch which covered the history of ECS, was printed in Education Week 
(October 24, 1984). Excerpts follow: 

"Some degree of order needs to be brought out of this chaos," wrote James B. Conant, 
the President of Harvard University, in 1964 in reference to education policy making in 
the nation. "We cannot have a national educational policy," he added in his book Shaping 
Educational Policy, "but we might be able to evolve a nationwide policy. " The solution, Mr. 
Conant concluded, was a "new venture in cooperative federalism," a compact among the 
states to create an organization to focus national attention on the pressing education issues 
of the day. The following spring, the Carnegie Corporation and the Ford Foundation awarded 
a grant to Terry Sanford, who had recently left the governorship of North Carolina, to trans- 
form the Conant idea into reality. John W. Gardner was Carnegie's president at the time. A 
preliminary draft of the compact was completed by July and endorsed by representatives 
from all 50 states and the territories in September. Within five months, 10 states had ratified 
the agreement, giving it legal status. Out of the compact was born the Education Commission 
of the States (E.C.S.).... 

"We invented a little device to get the compact approved quickly," Mr. Sanford, now the 
President of Duke University, said recently. "We didn't need money from the legislatures, we 
had plenty of foundation funding, so we agreed that the governors could ratify it by execu- 
tive order. ". . . 

But since the establishment under Governor James B. Hunt of the Commission's Task 
Force on Education for Economic Growth two years ago, ECS's role has begun to change. The 
task force's report Action for Excellence joined A Nation at Risk and the Carnegie Foundation 
for the Advancement of Teaching's High School acted as principal voices in the chorus of 
reform. It gained Gov. Hunt and several other "education governors" who were linked to ECS 
wide national publicity, and, in making a series of specific reform recommendations, thrust 
ECS into the policy-making arena. 



PSYCHOSYNTHESIS: A MANUAL OF PRINCIPLES AND TECHNIQUES (PSYCHOSYNTHESIS RESearch 

Foundation: Crucible imprint of Aquarian Press, Thorsons Publishing Group: Northampton- 
shire, England, 1965) by Dr. Roberto Assagioli, a practicing psychiatrist in Florence, Italy, was 
published. 



74 



Roberto Assagioli defined "psychosynthesis" as the "formation or reconstruction of 
a new personality — the transpersonal or 'spiritual Self.'" An excerpt from Psychosynthesis 
explained: 

What distinguishes psychosynthesis from many other attempts at psychological under- 
standing is the position we take as to the existence of a spiritual Self.... We consider that the 
spiritual is as basic as the material part of man. . . essentially we include within the study 
of psychological facts all those which may be related to the higher urges within man which 
tends to make him grow towards greater realization of his spiritual essence. Our position 
affirms that all the superior manifestations of the human psyche, such as creative imagination, 
intuition, aspiration, genius, are facts which are as real and as important as are the condi- 
tioned reflexes, and therefore, are susceptible to research and treatment just as scientifically 
as conditioned reflexes. 

As psychology began to assert itself as an "acceptable science" in the "sick sixties," 
Assagioli's "psychosynthesis" concept is credited with creating a paradigm that enabled an 
integration (synthesis) of psychology with spirituality. Assagioli emphasized a holistic world- 
view, laying the groundwork for the future educational pedagogy of "holistic education" of 
the 1990s — teaching the "whole child." He was also the originator of a group of exercises for 
"Spiritual Psychosynthesis" based on what we now call "role playing." These include: "on the 
Legend of the Holy Grail," "on Dante's Divine Comedy," and "on the Blossoming of the Rose." 

Assagioli's view of the human psyche included a progression from lower to higher order 
"consciousness" (or thinking) which is similar to "New Age" ideas about the evolution of man 
into a "collective consciousness." These ideas laid the philosophical foundation for character 
education, values clarification, and consciousness-altering techniques used in the classroom. For 
example, the "sick sixties" were hallmarked by the emergence of "transpersonal psychology," a 
designation typified today by the statement, "I'm OK, you're OK." One of its promoters— and a 
disciple of Roberto Assagioli — was Jack Canfield. Canfield's name appears on many education 
curricula and training programs utilizing behavior modification for values clarification. 

Significantly, Roberto Assagioli's selected appendices in Psychosynthesis include an article 
entitled "Initiated Symbol Projection" (ISP) written by a German psychiatrist named Hans- 
carl Leurner. According to a note by Assagioli, "Dr. Leurner now prefers to call his method 
'Guided Affective Imagery'" — a form of guided imagery widely practiced in elementary and 
secondary classrooms, business training sessions, counseling sessions, and religious services. 
A description of what Leurner called his "psycho-diagnostic and psycho-therapeutic technique" 
is provided: 

The subject is seated in a comfortable chair or on a couch (lying down), asked to close his 
eyes, and induced to relax... a light hypnoid state has proved valuable. Deep and regular 
breathing. . . [t]hen, in a psychological state characterized by diminished consciousness of the 
outer world, reduced conscious criticism and self-control, the subject is asked to visualize.... 
In the phenomenology of medical psychology, they are similar to "hypnogic visions." 

[Ed. Note: The fact that guided imagery is a psychological technique raises a question regarding 
its use in the classroom by teachers who are not professional therapists.] 



The Sick Sixties : c. 1 966 



75 



1966 

Psychology by Wilbert James McKeachie of the University of Michigan and CHARlotte 

Lackner Doyle of Cornell University (Addison- Wesley Publishing Co., Inc.: New York, 1966) was 
published. An excerpt from a chapter entitled "What Does a Psychologist Observe?" follows: 

Watson's approach to psychology, with its emphasis on observable behavior, became known 
as behaviorism. The major problem with this approach was that it excluded from psychol- 
ogy some of its major concerns. No one can directly observe the motives, feelings, percep- 
tions, thoughts, and memories of others. Re-defining thought in terms of muscle movements 
made thought a measurable event, but ignored some of the properties of thought that make 
it psychologically interesting. The behaviorists became committed to the study of muscle 
movements in place of an analysis of thought, (pp. 4-5) 



1967 

The Computer in American Education edited by Don D. Bushnell and Dwight W. Allen 
(John Wiley & Sons: New York, 1967) was published. Excerpts follow: 

The technology for controlling others exists and it will be used, given the persistence 
of power-seeking motives. Furthermore, we will need to use it, since the necessary social 
changes cannot come about if the affected people do not understand and desire them.... How 
do we educate "run-of-the-mill" citizens for membership in a democratic society?... How do 
we teach people to understand their relationship to long range planning?... And how do we 
teach people to be comfortable with the process of change? Should we educate for this? We 
shall probably have to. But how?... 

The need for educating to embrace change is not limited to youngsters.... Education 
for tomorrow's world will involve more than programming students by a computer; it will 
equally involve the ways in which we program... parents to respond to the education... 
children get for this kind of world. To the extent we succeed with the youngsters but not 
with the parents, we will have... a very serious consequence: an increasing separation of the 
young from their parents.... It will have psychological repercussions, probably producing in 
the children both guilt and hostility (arising from their rejection of their parents' views and 
values in lifestyles), (p. 7) 



Project Follow Through was initiated in 1967, funded under the Economic Opportunity 
Act of 1 964, and carried out as a part of President Lyndon Johnson's "War on Poverty. " Follow 
Through was administered by the U.S. Office of Education in the Department of Health, Edu- 
cation and Welfare. One of the models of instruction examined in trial under Follow Through 
was the Direct Instruction (DI) model developed by WC. Becker and Siegfried Engelmann. 
Direct Instruction is based on the work of the late B.F Skinner of Harvard, Edward Thorndike 
of Columbia University, and Ivan Pavlov of Russia, even though their works are not directly 
quoted in the DI literature. 

Alice M. Rivlin, 8 a member of the Brookings Institute staff, in a lecture entitled "Systematic 



76 



Thinking for Social Action" for the institute's H. Rowan Gaither Lectures Series at the University 
of California at Berkeley (under the sponsorship of the Graduate School of Business Adminis- 
tration and the Center for Research in Management Science, 1970), critically evaluated Project 
Follow Through and its results. Following are excerpts from Rivlin's speech: 

The Follow Through program is another example of a current attempt to use federal 
funds to learn how to produce services effectively — in this case, services for young children. 
Follow Through is a quasi-experiment, with a statistical design far less sophisticated than that 
of the New Jersey income maintenance experiment. There was evidence that children could 
move ahead rapidly in a good preschool program, but that when they were dumped back 
into the same dismal slum school the gains were lost. The objective of Follow Through was 
to determine whether the gains achieved through Head Start could be maintained through 
special programs in the early years of elementary school.... The approaches were extremely 
varied. The Becker-Engelmann program [Direct Instruction], developed at the University of 
Illinois, emphasized intensive work with small groups of children on the cognitive skills that 
deprived children often lack — verbal expression, reading, math skills. The methods involve 
rapid-fire questioning of students by instructors with rewards in the form of praise and stars 
for the right answers. It is a highly-disciplined approach and has been described as an intel- 
lectual "pressure cooker."... 

Since Follow Through was not a scientifically designed experiment, there is reason to 
question whether valid conclusions can be drawn from it about the relative effectiveness of 
the various approaches.... In any case, there are not enough projects of any type to support 
definitive statements about what works best with different kinds of populations. 

[Ed. Note: Although the evaluation of Follow Through cited some academic and self-esteem 
gains at some Direct Instruction model sites, it would have been virtually impossible for these 
gains not to have been made considering the models with which they were compared — the 
non-academic focus of the "touchy-feely" open classroom. Had the Direct Instruction model 
been in competition with a traditional phonics program which was not based on animal behav- 
ioral psychology ("scientific, research-based"), it is most unlikely it would have been able to 
point to any gains at all. Unsuspecting parents in the 1990s seeking more structured academic 
education for their children than can be found in schools experimenting with constructivistic 
developmental programs (whole language, etc.) are turning to DI, not realizing they are embrac- 
ing a method based on mastery learning and animal psychology.] 

Planning, Programming, Budgeting System (PPBS) was applied to education in 1967. During 
Ronald Reagan's tenure as governor of California, PPBS was installed in the California school 
system. The California Assembly passed AB 61 (1967) which authorized a pilot study of PPBS; 
ACR 198 (1970) created the Joint Committee on Educational Goals and Evaluation; AAB 2800 
(1971) and SB 1526 (1971) set up the essential PPBS subsystems to facilitate federal funding and 
centralized control of state schools' goals, evaluation and management of all school programs 
and people; AB 293 (1971), the "Stull Bill," provided for teacher evaluation; the California 
State Board of Education approved Program Budgeting in a new California School Accounting 
Manual (Phase I of PPBS); and Reagan signed AB 1207 (1973), giving the accounting manual 
legal mandate in districts throughout the state. PPBS implementation in education (and in other 
governmental functions) was given considerable impetus by Governor Reagan who "strongly 
expressed" the intent of his administration to activate PPBS, a management tool of political 



The Sick Sixties : c. 1 968 



77 



change through funding, in Implementing PPB in State, City and County: A Report on the 5-5-5 
Project. (State-Local Finances Project of The George Washington University: Washington, D.C., 
June, 1969). This entry summarizes this Report, published in cooperation with: The Council of 
State Governments, The International City Managers Association, The National Association of 
Counties, The National Governors' Conference, The National League of Cities, and The United 
States Conference of Mayors. 



1968 

B.F. Skinner: The Man and His Ideas by Richard I. Evans was published (Dutton and Com- 
pany: New York, 1968). Evans's excellent critique of the totalitarian views of Professor Skinner 
was funded by the National Science Foundation. Extensive quotes from this book are included 
in Appendix XXIV. A few pertinent excerpts follow: 

"I could make a pigeon a high achiever by reinforcing it on a proper schedule. ". . . His [Skin- 
ner's] concern for what he believes to be the inadequacy of our formal education system led 
to applying the principles of operant conditioning to a learning system which he called the 
teaching machine, but Skinner's approach is concerned with more than merely methods and 
techniques. He challenges the very foundations by which man in our society is shaped and 
controlled, (p. 10)... 

..."[F]or the purpose of analyzing behavior we have to assume man is a machine, (p. 
24) ...You can induce him to behave according to the dictates of society instead of his own 
selfish interest." (p. 42)... 

..."I should not bother with ordinary learning theory, for example. I would eliminate 
most sensory psychology and I would give them no cognitive psychology whatsoever [mean- 
ing the students, ed.]." (p. 91)" ...It isn't the person who is important, it's the method. If the 
practice of psychology survives, that's the main objective. It's the same with cultural practices 
in general: no one survives as a person." (p. 96) "...It does bother me that thousands of teach- 
ers don't understand, because immediate gains are more likely in the classroom than in the 
clinic. Teachers will eventually know — they must [understand] — and I am more concerned 
with promoting my theories in education [operant conditioning]." (p. 96) "...I should like to 
see our government set up a large educational agency in which specialists could be sent to 
train teachers." (p. 109) 

In 1953 Skinner wrote Science and Human Behavior (Macmillan & Co. : New York, 1953) , within 
which is found the following quote: 

A rather obvious solution is to distribute the control of human behavior among many agencies 
which have so little in common that they are not likely to join together in a despotic unit. In 
general this is the argument for democracy against totalitarianism. In a totalitarian state all 
agencies are brought together under a single super-agency. 

[Ed. Note: Obviously, even before the U.S. Department of Education was established and orga- 
nized teacher in-service training had taken a behaviorist (performance-based) turn, Skinner was 
advocating these very operant conditioning methods in all phases of education. Beginning in 
1965, the federal government implemented several teacher education programs based on per- 
formance — performance-based teacher education — which would fulfill Skinner's plan. Skinner 



78 



was always more concerned with "how" teachers teach than with "what" teachers teach. The 
reader should refer to Bettye Lewis's fine summary of the establishment of the Behavioral Sci- 
ence Teacher Education Program (BSTEP) in Appendix V for descriptions of these programs.] 

The May 1968 issue of the educational journal The Instructor ran an article by Dr. Paul 
Brandwein, adjunct professor at University of Pittsburgh, entitled "School System of the Future" 
which outlined the changes on the horizon relative to the relationship between children, parents 
and schools. The following quotes will be of interest: 

[Parents] often have little, if any knowledge of the rudiments of the human enterprise 
we call teaching and learning, or even the elements of the behavioral sciences undergirding 
child development.... The most formative years are what we call pre-kindergarten years.... 
Television can be utilized to provide the proper instruction [indoctrination] to the parent... 
a minimum of an hour a day... continuing over four or five years... aimed at the parent to 
equip him as "teacher. " 

Learning is synonymous with environmental behavior change.... Learning... is the 
modification of behavior through interaction with the environment.... [New school system 
structure] would maintain continuity over some nineteen years, with three carefully articu- 
lated periods of schooling... 1. Primary, with the first four or five years in the home with 
"informed" parents as teachers; 2. Secondary, with parents as teacher aides; 3. Preparatory, 
to be used differently for children with varying gifts and destinations.... The student would 
be able to choose vocational training, studies related to semi-skilled occupation, or collegiate 
work for the next four years, with one year given over to public service.... 

[P]rimary education with the parents as teacher has the aim of making the home a 
healthy and healing environment.... Education must heal. If it does not heal and make strong, 
it is not education. 

Assume with me that education, as profession and enterprise, would join forces with 
government and industry to support education of the parent in the mode, manner, and morality 
befitting the early education of children. Teachers and behavioral scientists — psychologists, 
psychiatrists, sociologists, students of child development — would be called upon. We have 
common, indeed universal, communication with the home through radio, television, and 
printed materials; and soon other aspects of electronic technology will be available. 

The Secondary Years, beginning with kindergarten, concern themselves with the con- 
cepts and skills required for effective participation in our society... In structure [emphasis 
in original] , the curriculum might well be organized in terms of continuous and progressive 
experience (synonyms: non-graded curriculum, continuous progress).... Grades (marks, scores) 
as we know them would not be used, but there would be reports to the parents of child's 
progress, similar to what some schools are doing now. 

Each boy and girl would choose an area of public service coordinated with his gifts and 
destination. Care of children, care of the aged and infirm, assisting in schools and in hospitals, 
conserving our natural resources, could well be among such tasks. The major peace-seeking 
and peace-keeping strategy of society is education. Peace is inevitable. 

Learning and Instruction, a Chicago Inner City Schools Position Paper presented in June 
of 1968 to the Chicago Board of Education, was produced by the planning staff in Chicago made 
up of: Dr. Donald Leu, William Farquhar, Lee Shulman, and the Chicago and Michigan State 
universities in collaboration. One reference used was Soviet Preschool Education, translated 



The Sick Sixties : c. 1 968 



79 



by Henry Chauncey (Educational Testing Service, Princeton, N.J.). Excerpts from the Chicago 
Mastery Learning Project position paper, Learning and Instruction, follow: 

We view the child with his defined characteristics as input to a school organization 
which modifies his capabilities toward certain goals and objectives as output. The school 
organization is an optimal deployment of teachers employing a special subject matter who 
attempt through instruction, with the aid of selected elements of the community, to achieve 
specified outputs. The joint participation of the children, school and community leave none 
of these elements unchanged.... 

This emphasis should be accomplished within the context of a truly ungraded structure 
which we shall denote by the terms Continuous Development-Mastery Learning. This approach 
has the following characteristics: (a) Beginning with Chicago's present concept of Continuous 
Development, the objectives of the language arts curriculum must be much further differenti- 
ated and articulated in the manner currently being conducted by Sophie Bloom [wife of the 
late Benjamin Bloom] in Chicago, and Pittsburgh's Individually Prescribed Instruction Project. 
In the Continuous Development-Mastery Learning approach, a large number of sequentially 
designated objectives, tied into specific capabilities to be mastered by pupils, are identified. 
This is done by curriculum development specialists in collaboration with instructional person- 
nel. [References used in this paper were from the late Benjamin Bloom, John Carroll, Robert 
Gagne, Robert Glaser and Henry Chauncey, ed.] 

The following is an excerpt from an article published in Education Week, March 6, 1985 
entitled "Half of Chicago Students Drop out, Study Finds: Problem Called Enormous Human 
Tragedy": 

Calling the dropout problem in Chicago "a human tragedy of enormous dimensions," a recent 
study has found that almost half of the 39,500 public school students in the 1980 freshman 
class failed to graduate, and that only about a third of those who did were able to read at 
or above the national 12th grade level. "These statistics about the class of 1984 reflect the 
destruction of tens of thousands of young lives, year in and year out," says the study, released 
in January by Designs for Change, a nonprofit research and child-advocacy organization in 
Chicago .... "Most of these young people are permanently locked out of our changing economy 
and have no hope of continuing their education or getting a permanent job with a future," 
the authors wrote. 

Professor Lee Shulman's involvement in the Chicago Mastery Learning disaster was, 
however, quickly forgotten or considered unimportant. According to Education Daily of May 
21, 1987— two years later: 

Shulman, who heads Stanford's Education Policy Institute, last week was awarded $817,000 
by Carnegie Corporation to develop over the next 15 months new forms of teacher assessment 
materials that would be the basis of standards adopted by a national teacher certification 
board. 

The Education Daily article further discussed the requirement for teacher critique of the way 
two textbooks treat photosynthesis and how they (teachers) developed a lesson plan based 
on each one: 

The teacher then would be directed to use the textbooks to tell the examiners how he 



80 



or she would teach students with varying religious, cultural and ethnic backgrounds. 

Nine years later Education Week of October 23, 1996 reported Shulman again leading the 
outcome-/performance-based teacher education bandwagon of social change agents: 

His successful performance as developer of new forms of teacher assessment materials leads 
to his being named President of the Carnegie Foundation for the Advancement of Teaching, 
filling the vacancy created by the death last year of Ernest L. Boyer. 

An excerpt from an October 21, 1996 New York Times article entitled "Carnegie Foundation 
Selects a New Leader" emphasized Shulman's importance in the field of behavioral psychol- 
ogy: 

He [Shulman] has been a Guggenheim Fellow, a Fellow of the American Psychological 
Association and a Fellow of the Center for Advanced Study in the Behavioral Sciences. He is 
the immediate past president of the National Academy of Education and a former president 
of the American Education Research Association. 



In a 1968 speech entitled "The United Nations and Alternative Formulations — The Hard 
Road to World Order," Richard Gardner, former U.S. deputy assistant secretary of state and 
U.S. ambassador to Italy, provided an accurate forewarning and picture of the environment in 
which Americans and citizens of other countries live today, explaining how the elitist planners 
would, through the use of gradualism, succeed in their century-long plan to create a One World 
Government. In an excerpt from the speech Gardner explains the following: 

In short, we are likely to do better by building our "house of world order" from the bottom 
up rather than the top down. It will look like a great, "booming, buzzing confusion," to use 
William James's famous description of reality, but an end run around national sovereignty, 
eroding it piece by piece, is likely to get us to world order faster than the old-fashioned frontal 
attack. 



Ethna Reid of the Granite School District, Salt Lake City, Utah received $848,536 in 

federal grants under Title III of the ESEA in 1968 to develop the Exemplary Center for Read- 
ing Instruction (ECRI), a Mastery Learning program. This grant far exceeded the legal cap on 
federal education program funding at that time. In 1982 Reid claimed that her mastery learning 
program "is undoubtedly one of those in greatest use today in the United States at all grade 
levels, K-12." 9 

The 120-page teacher pre-service training manual from ECRI was devoted to the training of 
teachers in stimulus-response-stimulus/operant conditioning techniques (Skinner), and mate- 
rials on the "adaptation of birds, monitoring forms before and after instruction" (observation 
data sheet records). How to Teach Animals by B.F. Skinner and How to Teach Animals: A Rat, 
a Pigeon, a Dog by Kathleen and Shauna Reid are both listed as teacher and resource materi- 
als. The ECRI Teacher Training Manual cites the work of Siegfried Engelmann, the developer 
of DISTAR (Direct Instruction System for Teaching and Remediation)/Reading Mastery, and 



The Sick Sixties : c. 1 968 



81 



Direct Instruction in instructing teachers how to use operant conditioning, stimulus-response- 
stimulus to get desired behaviors. Reviewed by the U.S. Department of Education's Joint Dis- 
semination Review Panel (JDRP) and approved as an exemplary education program in 1974, 
ECRI was promoted throughout the National Diffusion Network (NDN), the federally funded 
transmission belt for controversial and mostly non-academic programs. 

On May 5, 1984 the officers of the Arizona Federation of Teachers unanimously passed a 
resolution — spearheaded by Ann Herzer, an Arizona teacher — which stated in part that mem- 
bers of the Arizona affiliate 

oppose such programs as ECRI, Project INSTRUCT and/or any other programs that use oper- 
ant conditioning under the guise of Mastery Learning, Classroom Management, Precision 
Teaching, Structured Learning and Discipline, and petition the U.S. Congress for protection 
against the use of such methods on teachers and students without their prior consent. 

The Arizona resolution was supported by Dr. Jeanette Veatch, internationally known expert 
in the field of reading, who in a July 1980 letter to Ann Herzer called the ECRI program "a more 
modern version of breaking children to the heel of thought control. ... It is so flagrantly dangerous, 
damaging and destructive I am appalled at its existence. " Unfortunately, Albert Shanker, then 
president of the national American Federation of Teachers (AFT), tabled the Arizona affiliate's 
resolution at AFT's August, 1984 national convention in Washington, D.C. 

With this historical perspective in mind, consider an article which appeared in Education 
Week September 6, 1997 entitled "New AFT President Urges Members to Help Floundering 
Schools. " The late Albert Shanker would be pleased that the AFT continues to support Skinner- 
ian mastery learning/direct instruction, for the article states in part: "Also featured [at AFT's 
QUEST Conference] was Direct Instruction, a scripted set of lessons used for teaching at-risk 
students." 



John Goodlad's article, "Learning and Teaching in the Future," was published by the 

National Education Association's journal Today's Education in 1968. Excerpts from Goodlad's 
article follow: 

The most controversial issues of the twenty-first century will pertain to the ends and means 
of modifying human behavior and who shall determine them. The first educational question 
will not be "what knowledge is of the most worth?" but "what kinds of human beings do we 
wish to produce?" The possibilities virtually defy our imagination. 



TECHNOLOGY OF TEACHING BY B.F SKINNER WAS PUBLISHED (PRENTICE HALL: NEW YORK, 1968) 

and became part of the educational lore of the day. An excerpt follows: 

Absolute power in education is not a serious issue today because it seems out of reach. How- 
ever, a technology of teaching will need to be much more powerful if the race with catastro- 
phe is to be won, and it may then, like any powerful technology, need to be contained. An 
appropriate counter control will not be generated as a revolt against aversive measures but 
by a policy designed to maximize the contribution which education can make to the strength 
of the culture. The issue is important because the government of the future will probably 



82 



operate mainly through educational techniques, (p. 260) 

[Ed. note: Skinner was 100% correct. The government in 1999 "operates mainly through edu- 
cational techniques." Those individuals and agencies conforming with government policies, 
criteria, etc., are rewarded, whereas those who do not conform are either ignored or denied 
special privileges and funding. In the late twentieth century, following the philosophy of B.F. 
Skinner that the "environment is all," all evil is attributed to the environment and no one is 
held responsible for his actions.] 

"The Foundation Machine" by Edith Kermit Roosevelt was published in the DEcember 26, 
1968 issue of The Wanderer. In this important article Mrs. Roosevelt discussed problems that 
had been created by the Carnegie Corporation's new reading program as follows: 

Even now the Carnegie Corporation is facing protests from parents whose children are exposed 
to the textbooks financed by the foundation under its "Project Read." This project provides 
programmed textbooks for schools, particularly in "culturally deprived areas." An estimated 
five million children throughout the nation are using the material in the programmed text- 
books produced by the Behavioral Research Laboratories, Palo Alto, California. This writer 
has gone over these textbooks in the "Reading" series financed by the Carnegie Corporation 
and authored by M.W. Sullivan, a linguist. These foundation-funded books reveal a fire pat- 
tern that amounts to an incitement to the sort of arson and guerilla warfare that took place 
in Watts, Washington, D.C., and elsewhere. On one page in the series we find a torch next 
to a white porch. The caption reads invitingly, "a torch, a porch." Further along there is a 
picture of a man smiling while he holds a torch aloft. The caption beneath it reads: "This 
man has a t_rch in his hand." The children are required as an exercise to insert the missing 
letter to fill in the word torch. The next picture shows the burning torch touching the porch, 
with a caption, "a torch on a porch." Thus, the children are led in stages to the final act that 
suggests itself quite naturally. The picture in the series shows a hand moving the hands of 
a clock to twenty-five minutes past one, while this same shack is being devoured by flames. 
The message is plain: an example of a man who deliberately commits the criminal act of set- 
ting a home on fire. Tragically, these young children are being indoctrinated with a pattern 
of anti-social ideas that will completely and violently alienate them from the mainstream of 
American middle-class values.... Other pictures in the Carnegie-funded supposedly educa- 
tional texts include a comparison of a flag with a rag, the ransoming of an American soldier 
in a Chinese prison, a picture that shows people kneeling in a church to say their prayers 
beside a picture of a horse being taught to kneel in the same way, a reference to a candidate 
elected to public office as a "ruler," a picture of a boy stealing a girl's purse, and another boy 
throwing pointed darts at a companion whom he uses as target practice. 

Understandably, the Carnegie-financed books are causing concern to local law-enforce- 
ment officials, many of whom have to cope with riot or near-riot conditions. Ellen Morphonios, 
prosecutor for Florida in its attorney's office, and a chief of its Criminal Court Division, said 
recently: "It's a slap in the face and an insult to every member of the Negro community, saying 
that the only way to communicate with Negro children is to show a robber or violence. It's 
like subliminal advertising. If this isn't subversive and deliberately done as part of a master 
plan.... Only a sick mind could have produced it." 

Repeated instances of this type of anti-social activity obviously constitute a strong argu- 
ment for removing the tax-exempt status of these educational foundations, and for curbing 
their activities by Federal regulations and Congressional oversight. 



The Sick Sixties : c. 1 968 



83 



[Ed. Note: The programmed textbooks used in Project Read are based on Skinnerian animal 
psychology. Programmed instruction calls for individualized instruction/self-instruction (pro- 
grammed books and or teaching machines) and differs from the lecture/discussion method of 
teaching where the teacher, not the program, is the dispenser of knowledge.] 

Agenda for the Nation, edited by Kermit Gordon (Brookings Institution: WASHington, 
D.C., 1968) and funded by the Ford Foundation, was published. Ralph Tyler's article "Invest- 
ing in Better Schools" (pp. 207-236) was included in the compilation of articles which were 
written as a contribution to public discussion and debate as a new president and a new Con- 
gress assumed their responsibilites. Other contributors included: Stephen K. Bailey, Kenneth 
B. Clark, Clark Kerr, Henry A. Kissinger, Edwin 0. Reischauer, and Charles L. Schultze. The 
following excerpted recommendations from Tyler's article which refer to the Certificate of Initial 
Mastery, no more Carnegie Units, the Eight- Year Study and outcome-based education, read like 
pages out of Goals 2000: Educate America Act and reports prepared by Marc Tucker's National 
Center on Education and the Economy, the Secretary's Commission on Achieving Necessary 
Skills (SCANS), etc. — all of which are involved in the socialistic restructuring of the nation's 
schools and economy: 

What is required is a major effort to furnish high school students with significant adult activi- 
ties — job programs, community service corps experience, work in health centers, apprentice 
experience in research and development, and in staff studies conducted by public agencies. 
It will be necessary to redesign the high school in order to open it to the community and to 
utilize many kinds of persons in education. The school will need to serve a wider range of ages 
and allow students to vary the amount of time devoted to studies. To supply a substitute for 
grades and credits as qualification for employment opportunities, a certification system will 
need to be developed to validate the student's competence in various major areas. This will 
also tend to reduce the emphasis upon purely formal requirements such as class attendance 
and the completion of prescribed courses. 



1968-1969. Narrative Report of Project Funded under Title III, Elementary and Sec- 
ondary Education Act (FY 1969)— Title of Project: OPERATION PEP, a Statewide Project to 
Prepare Educational Planners for California (U.S. Office of Education Grant Award No. OEG 
3-7-704444410-4439, 7-1-68 to 6-30-69. $299,457 grant to San Mateo County Superinten- 
dent of Schools, Redwood City, California, Project Director: Donald R. Miller) was compiled 
and registered with the U.S. Office of Education in the Department of Health, Education and 
Welfare. An excerpt from this report follows: 

Major Objectives: The objectives of Operation PEP have been specified with respect for 
the educational needs of society and the role requirements of professional educators. They 
include: (1) to plan, develop, validate, and implement an instructional program for educa- 
tional planners and managers featuring a system approach to educational management; (2) 
to establish an orderly diffusion process for system approach concepts, principles, and pro- 
cedures involving key agencies, organizations, and individuals; (3) to provide assurance that 
the program developed by Operation PEP will be continuously renewed and presented, and 
(4) to promote the utilization and adoption of a system approach to educational management 



84 

and educational leaders in California. 



[Ed. Note: Mastery learning/direct instruction fits into PPBS systems management, Manage- 
ment by Objectives (MBO) and computer-assisted instruction as a hand fits into a glove. OBE 
in 1999 is Operation PEP in 1968. California's teachers' union was adamantly opposed to its 
enabling legislation and to Operation PEP in general.] 



1969 

Pacesetters in Innovation: Cumulative Issue of All Projects in Operation as of February 
1969 under Title III, Supplementary Centers and Services Program, Elementary and Second- 
ary Education Act of 1965 (U.S. Department of Health, Education and Welfare: Washington, 
D.C.,1969) was published. This incredible 584-page catalog of education programs gives 
abstracts of innovative programs dealing with humanistic education; i.e., values clarification, 
self-esteem programs, individualized education, open classroom, etc. Shirley Correll, Ph.D., 
president of Florida's Pro-Family Forum, wrote "An Evaluation of HEW's Publication Pacesetters 
in Innovation" which said in part: 

A thorough evaluation of HEW's 584-page publication, Pacesetters in Innovation, is 
alarming, even to one accustomed to the thrust of today's public schools, and even more 
interesting when placed in its proper perspective of total HEW funding. It is described as 
a program "to support supplementary education centers and services, guidance counseling 
and testing" on state and local levels. These PACE programs (Projects to Advance Creativity 
in Education) describe "Psychotherapy," "Behavior Modification," "Psychoeducation Clin- 
ics," "Changed Parent-Student Relationships," "Total Environmental Control," "Humanistic 
Curriculum," "Sensitivity Training," and attitudinal measuring devices, ad nauseam. One 
program discusses "Experimental Buses featuring multichannel programming, individual 
receivers and active response opportunities (allowing audio presentations of cognitive and/or 
affective [emotional] instructional materials." Could it be that there's more to this busing 
than integration? 

I found that PACE'S direction was to "organize the process of change to restructure and 
reorganize the school system." Many different methods were used to accomplish this. Teach- 
ers are subjected to "Sensitivity Training" and "Change Agentry" training (an educational 
term used to describe the role of group leader as that of changing the attitude of students and 
others), not only to condition the teachers to new philosophies, but to "spread their influence 
to others in their own district and throughout the state via various visitation programs." 

Through the influences of these and various other programs, "structured or graded 
classes are systematically phased out and replaced by ungraded individualized instruction" 
(which ultimately becomes the opposite of individualized instruction as all children eventu- 
ally are fit to a pre-conceived mold or norm by computerized assessment). 



The Role of the School in the Community was published (Pendell Publishing Co.: Midland, 
Michigan, 1969). This slim 136-page book, edited by Dr. Howard W. Hickey, Dr. Curtis Van 
Voorhees, and associates, was "written to serve as a much-needed textbook for teachers and 



The Sick Sixties : c. 1969 



85 



students in Community Education; and to serve as a handbook on Community Education for 
school officials and community education leaders." The following excerpts are from The Role 
of the School in the Community: 

Chapter III. An Overview by Jack D. Minzey and Clarence R. Olsen 

As the social forces have sought to bring action to bear on community problems, the need 
for a vehicle of action has become apparent. Not all groups have identified the most effective 
means of implementing their programs structured about community problems, but a number 
of influential persons and groups are aware of the community education concept and are 
extremely optimistic about its possibilities as the means by which their goals of social engi- 
neering can be accomplished, (p. 40) 

Chapter VI. A Developmental Process by Curtis Van Voorhees 

When a community school director attempts to identify courses to be included in the ques- 
tioning process it is important to remember, as previously mentioned, that people are typi- 
cally unable to identify many of their own problems and needs. While they may sometimes 
be able to identify what they want in the way of a class, it is unlikely that many people who 
need assistance in preparing nutritious meals are aware of that fact. And parents who are 
in need of information about child health practices are unlikely to recognize that they need 
such help. So it must be remembered that the simple existence of a problem does not guar- 
antee its recognition by the person with the problem. Community school coordinators must, 
therefore, develop a questioning form which will get at the unidentified problems of people 
without unduly alarming or offending the respondent; they must seek to solicit information 
from people which will allow community school coordinators to plan better programs for the 
people they attempt to serve — programs that will hopefully change, in a positive way, the 
attitude, behavior and life style of the community residents. 

[Ed. Note: The term "community education" is rarely used today due to its socialistic philoso- 
phy causing extreme controversy in the 1960s, 1970s and early 1980s. The average American 
rejected the notion that the community was there to serve his/her needs and that decision- 
making by unelected councils was acceptable or perhaps preferable to decision-making by 
elected officials. The change agents wisely dropped the label and now use terms such as "com- 
munitarianism," "participatory democracy," "site-based management," "school-based clinics," 
"year-round schools," Hillary Clinton's It Takes a Village to Raise a Child concept, all of which 
are individually or collectively Community Education. As Anita Hoge, a well-known education 
researcher, says, "It doesn't take a village to raise a child unless you live in a commune." At 
a Community Education Conference held in Washington, D.C. in 1976 a community educator 
from Alaska stated that "community education could be likened to the system in Russia and 
China." 10 ] 

Master Plan for Public Education in Hawaii— Toward a New Era for Education in Hawaii 
was published in 1969 by the State of Hawaii Department of Education, Honolulu, Hawaii. This 
publication was partially funded under Title V, Sec. 503, P.L. 890-10 (U.S. Office of Education). 
Excerpts follow from this extraordinarily frank Master Plan which would serve as a model for 
the rest of the nation: 

Implications for Education... Second, the computer will enhance learning.... The teacher will 
operate as a manager.... The teacher will have a ready record of each student's performance 



86 

and a ready access to the information the student needs during each stage of his progress. 
(P- 36) 

Perhaps we must go significantly beyond the present, minimum family educational programs 
that candidly discuss interpersonal relationships, family conflicts and tensions, counseling 
and rehabilitation services and the many areas that need to be explored between a man, a 
woman, and their children, (p. 46) 

The task of the schools during the past stable, relatively unchanging world was to emphasize 
fixed habits, memorization of facts, and development of specific skills to meet known needs. 
But for a future which will include vast changes, the emphasis should be on how to meet 
new situations, on the skills of research, observation, analysis, logic and communication, 
on the development of attitudes appropriate to change, and on a commitment to flexibility 
and reason, (p. 50) 

Behavioral sciences subject matter should form a part of our modern curriculum to provide 
a basis for self knowledge and behavioral concepts.... Study of ethical traditions, concepts 
and changes in value structure should be emphasized.... Department of Education should 
experiment with the group therapy, role playing and encounter group approach that are pro- 
fessionally planned and conducted, as a basis for understanding other people, races, cultures 
and points of view. (pp. 51-52) 

From the point of view of the teacher, individualized instruction should provide for opportuni- 
ties to diagnose the learning styles, and strengths and weaknesses of pupils; direct assistance 
by skilled counselors, psychologists, social workers and physicians will assist in accurate and 
meaningful diagnosis.... The Department should adopt team teaching and non-gradedness as 
the basic approach to classroom instruction. The present system of age and grade classification 
of students is excessively rigid and not conducive to individualized instruction. A non-graded 
approach, therefore, on a K-12 basis, is sought as an ultimate goal. (p. 54) 

The school system will seek financial support of educational programs on the basis of edu- 
cational outputs, that is, the improvement, growth and changes that occur in the behavior of 
the pupil as a result of schooling, (p. 55) 

This school system will systematically study the benefits of any promising non-educational 
input to enhance learning. Recent discoveries from the field of bio-chemistry suggest that 
there already exists a fairly extensive class of drugs to improve learning such as persistence, 
attend veness, immediate memory, and long term memory... The application of biochemical 
research findings, heretofore centered in lower forms of animal life, will be a source of con- 
spicuous controversy when children become the objects of such experimentation. Schools will 
conceivably be swept into a whole new area of collaboration in research with biochemists 
and psychologists to improve learning. The immediate and long-term impact on teaching as 
well as on learning and the ethical and moral consequences of extensive use of chemicals 
to assist in the learning process must be studied extensively... The Department should initi- 
ate a long term, continuing series of discussions with individuals directly associated with 
these research efforts. Lay persons from our community should be an integral part of these 
discussions, (p. 56) 

The Department should take the initiative to establish a state compact of all agencies with 
responsibilities in education in this state. The purpose of such a compact will be to coordi- 



The Sick Sixties : c. 1 969 



nate planning and execution of educational programs.... Assuming that the basic period of 
schooling required for the youth of Hawaii may remain at twelve years, extending the school 
day and the school year may be the solution to this pressing problem. Some of the benefits 
which can be anticipated from an extended school year and a school day are: An improve- 
ment in economic and professional status of our teachers,... an increased use of facilities and 
equipment. School facilities will be in use throughout the year.... (p. 62) 

That our system of values should change as the conditions in which these values find their 
expression change is evident in history. . . . Our past also has shown that society courts trouble 
when it clings stubbornly to outmoded values after experience has clearly shown that they 
need to be revised. For example, developments in our society have now cast considerable 
doubts on the worth of such deep-seated beliefs, still held strongly in some quarters, as 
extreme and rugged individualism or isolationism in international affairs. While values tend 
to persist, they are tentative. They provide the directions basic to any conscious and direct 
attempt to influence pupil behavior.... Some will argue, of course, that direct and purposeful 
effort at changing value orientations of pupils is no concern of the schools. But from what 
we know of the pupil and his development, the school is inescapably involved in influencing 
his moral values and ethical structure, (p. 63) 

The roles and responsibilities of teachers will change noticeably in the years ahead. By 1985 
it should be more accurate to term a teacher a "learning clinician" for the schools will be 
"clinics" whose purpose is to provide individualized educational and psychological "services" 
to the student. 11 (p. 69) 

However, in the spring of 1967, the Department undertook to install a new "System," more 
commonly referred to as "PPBS." This sophisticated system of budgeting was crystalized 
in the federal defense agency during the early 1960's, and has, since 1965, been formally 
adopted by all departments within the federal government.... From a long-range standpoint, 
PPBS is surely the direction we must move toward if we are to do more than survive in a 
rapidly approaching computerized world.... However, operationally, there are several reasons 
why the entire PPBS anatomy cannot be totally... operable at this time. Although some of 
the problems are due to the system itself, most are due to the present undeveloped state of 
the educational industry. Some of these factors are: While we accept the PPBS concept, we 
must constantly be mindful that the system is a tool of management, not an end in itself, 
not a panacea or solution for all our management problems. Further, it should never be 
considered a replacement for experienced human judgment, but only an aid in arriving at 
sound judgments... in the field of education, which deals primarily in human behavior, there 
is almost no reliable research data on causal relationships. We do not know exactly why or 
how students learn.... Cost/effectiveness analysis which lies at the heart of PPBS is virtually 
impossible without this kind of data.... As can readily be seen, the multiplicity and complexity 
of objectives and the difficulty of quantifying human behavior makes it exceedingly difficult 
to state our objectives in the manner specified by PPBS.... Another significant problem — this 
time to do with PPBS — is that it does not formally allow for value consideration. And yet, 
values — academic, economic, political, social, esthetic — appear to play a crucial role in the 
decision-making process. But how do we quantify values? How do we negotiate conflicting 
values? What will be the proper mix of values and how do we factor it into the array of alter- 
natives and the decision-making process? These are vital questions that must be answered if 
we are to rationalize the decision-making process, (pp. 96-97) 

Mount a comprehensive and continuing effort to develop standards and a system of mea- 



88 



surement that will permit effective evaluation of student and Department of Education per- 
formance, (p. 98) 

[Ed. Note: PPBS and MBO are essentially the same as TQM. At a 1992 Total Quality Management 
(TQM) in Education Conference in St. Paul, Minnesota — sponsored by the National Governors' 
Association and attended by the writer — a representative from IBM stated that TQM is a more 
"sophisticated, refined form of PPBS."] 

In 1969 Don Davies, former Deputy Commissioner of Education for the U.S. Office of Edu 

cation and editor of Communities and Their Schools, wrote "Changing Conditions in American 
Schools" as part of the "Elementary Teacher Training Models," a section of the Behavioral Sci- 
ence Teacher Education Program (U.S. Office of Education, Department of Health, Education 
and Welfare [developed at Michigan State University under HEW grant]: Washington, D.C., 
1969). The following are excerpts from "Changing Conditions in American Schools": 

(1) Moving from a mass approach to an individual approach in education; 

(2) Moving from an emphasis on memorizing to an emphasis on the non-cognitive, 
non-intellectual components of life; 

(3) Moving from a concept of a school isolated from the community; 

(4) Moving from a fear of technology to using machinery and technology for educational 
purposes; 

(5) Moving from a negative to a positive attitude towards children who are different; 

(6) Moving from a provincial perspective of the world in education to a multicultural 
perspective; 

(7) Moving from a system characterized by academic snobbery to one which recognizes 
and nurtures a wide variety of talents and values; and 

(8) Moving from a system based on serving time to one which emphasizes perfor- 
mance. 

[Ed. Note: 1, 2, 4, 7, and 8 should be familar to the reader. They represent OBE/ML/DI and 
technology. Numbers 5 and 6 are global education/values education.] 

Professor Dean Corrigan, in a 1969 speech before the 22nd Annual Teacher EDUCAtion 

Conference at the University of Georgia, predicted that "teaching machines will pace a student's 
progress, diagnose his weaknesses and make certain that he understands a fundamental concept 
before allowing him to advance to the next lesson." 

[Ed. Note: Skinner said "computers are essentially sophisticated versions of the teaching 
machines of the 1960s... programmed learning." (See Education Week 8/31/83.)] 

A Report from the State Committee on Public Education to the California State Board 
of Education — Citizens for the 21st Century — Long-Range Considerations for California Elemen- 
tary and Secondary Education (California State Assembly: Sacramento, California, 1969) was 
prepared by Professor John I. Goodlad. Funded by the Elementary and Secondary Education 
Act of 1965, the Report states: 



The Sick Sixties : c. 1 969 



89 



Experimentation, Innovation, Implementation. 

We have seen that mechanisms are needed for systematically determining the appropriate 
responsibilities of local, state, and federal education agencies. Similarly, we need mechanisms 
for systematically determining the kinds of human beings to be developed in our schools. 
Such mechanisms do not now exist in this state or any state. We need, too, mechanisms for 
appraising the quality of innovations and for systematically determining how a full range of 
projects might be put in a single school, (p. 471) 



Improving Educational Assessment and an Inventory of Measures of Affective Behavior 
by Walcott H. Beatty, chairman and editor (Association for Supervision and Curriculum Devel- 
opment Commission on Assessment of Educational Outcomes [NEA Stock No. 611-17804]: 
Washington, D.C., 1969) was published. A chapter entitled "The Purposes of Assessment" by 
Ralph Tyler, "the father of educational assessment," was included in this important book. The 
following excerpts relate primarily to the principle of transfer in learning: 

The function of the school's teaching is to develop young people whose behavior outside 
the classroom is effective and significant. Therefore, in appraising the relative effectiveness 
of curriculum materials or programs, one goes beyond a checking of program and purpose 
to consider whether the learnings are generalizable to life outside the school. The Progres- 
sive Education Association's Eight- Year Study, for example, followed a group of high school 
graduates into college and occupational roles to learn the extent to which they were able to 
utilize ways of thinking, feeling, and acting that the school had tried to develop.... 

We are all familiar with the general principle that any measures of education should 
be based upon educational objectives — what kind of learning are we seeking? Thirty-eight 
years ago, when Paul Diederich and I began some of these efforts in the Progressive Educa- 
tion Association, much was said about determining educational objectives. We talked about 
educational objectives at a level so general that such objectives represented desirable and 
attainable human outcomes. Now, as the people from conditioning have moved into an 
interest in learning in the schools, the notions of behavioral objectives have become much 
more specific... 

As far as I know, one cannot very well teach a pigeon a general principle that he can 
then apply to a variety of situations. The objectives for persons coming out of the Skinnerian 
background tend to be highly specific ones. When I listen to Gagne, who is an intelligent and 
effective conditioner, talk about human learning objectives, I wince a good deal because he 
sets very specific ones. I know that we can attain levels of generalization of objectives that 
are higher than that.... 

As a graduate student at Chicago 42 years ago, I did a study with Judd, who was at 
that time arguing with Thorndike over the principle of transfer in learning. Thorndike had 
demonstrated that transfer was not automatic among the formal disciplines; a person could 
take a course in Latin and not be able to handle other kinds of languages any more effec- 
tively. Thorndike reached the conclusion that every objective had to be very specific, like 
conditioning objectives. His first treatise on the psychology of arithmetic established some 
3,000 objectives for elementary school arithmetic. Judd, however, had come out of the social 
psychology tradition, having studied with Wundt at Leipzig. His view was that generalization 
was not only possible but was essential in education. The task he assigned me was to check 
on Thorndike's view that the addition of every one of the 100 pairs of one-digit combinations 
had to be practiced by the learner before he could add all of the pairs. The design of my study 
was to take the principles of grouping for addition and help pupils see them. I noted that 



90 



five and two, and six and one, and zero and seven and three and four all total seven and had 
the students practice 21 out of the 100, emphasizing that each operation illustrated a general 
principle. I found that the youngsters in the experimental group who had practiced on only 
21 illustrations did just as well on the average over the sample of the total 100 as the pupils 
who had practiced systematically every one of the 100.... 

The possibility of generalization is of course not new to the reader of this booklet. In 
curriculum development we now work on the principle that human beings can generalize, 
so they do not have to practice every specific. The question is at what level of generalization 
do we set up objectives. There are overgeneralizations you can immediately see; for example, 
the use of "you" for both singular and plural forms often confuses students in grammar exer- 
cises. The problem of the effective curriculum maker and teacher is to figure out the level 
of generalization that is possible with a certain child or a certain group, then to establish 
objectives based on reaching that level of generalization. You will have twenty objectives 
perhaps, but not more. The conditioning view, based upon specific situations and practices, 
may involve several hundred objectives for a course because specific practices must be used 
to accomplish each aspect of the conditioning, (pp. 8-9) 



"U.S. Plan to 'Take Over' Grade Schools Intimated" by John Steinbacher was an article 
which appeared in the Anaheim Bulletin (Anaheim, California) in 1969. Excerpts follow: 

Is the U.S. Office of Education, a division of the Department of Health, Education and Welfare, 
poised for a total takeover of every elementary school in the nation? 

That was indicated Thursday in a federally funded project at Cal State, Fullerton by 
Bernard Kravett, a professor at the school who took part last year in a federally funded proj- 
ect at the University of Washington. Known as the Tri-University Project, three universities 
were involved in a massively funded federal project to restructure the entire higher education 
system for training teachers, which, in effect, would make local elementary schools only a 
subsidiary arm of the federal government.... This system, to be called Teacher Preparation 
Experienced Systematically, is to be instituted at once.... All teacher training institutions will 
operate jointly with local school districts and teacher organizations to "establish performance 
criteria which become behavioral objectives." ...Students in colleges who are studying to 
be teachers will be placed in "clinical settings," where there will be a clinical counselor for 
each 12 students.... 

As the teacher trainees progress through the four-year course, they will be constantly 
assessed by testing and performance criteria, as well as constantly counseled by the trained 
psychologists.... At the end of each year, the teacher trainee will either pass on to the next 
level or will be recycled to take additional work in the areas in which he is found deficient.... 
The new approach is to stress attitudinal changes on the part of the teachers and the stu- 
dents.... 

Built into the system is a strong emphasis on the findings of the behavioral scientists. 
Teacher trainees will be counseled into becoming a "good team member on the faculty," and 
those who cannot adapt to "teamstanding" will be washed out of the teacher courses. The 
teacher is to learn how to "carry out the order of the team and the team leader. " . . .The purpose 
of the so-called college activities will be to "build on behavioral objectives in order to help 
children find out who they are and help the child in his quest for identity. All education will 
be built on behavioral tasks rather than on course credits and grade point averages," he said. 
Kravett said the federal government had financed nine universities to come up with "programs" 
and it is from these programs, largely developed in behavioral science laboratories, that the 



The Sick Sixties : c. 1 969 



91 



new elementary program will come. California, he said, has a long way to go to catch up 
with the rest of the nation in accepting this new program. However, he said the government 
was spending "fantastic amounts of money and the Federal Government is totally behind it, 
pushing it and providing all the money you can possibly need." (p. 4) 

The National Assessment of Educational Progress (NAEP), mandated by the U.S. Con- 
gress, was initiated in 1969. NAEP has periodically "assessed" (monitored the knowledge, 
skills, and performance of) students aged 9, 13, and 17, as well as various grade levels. The 
subject areas assessed have included: reading, writing, mathematics, science, citizenship, U.S. 
history, geography, social studies, art, music, literature, computer competence, and career and 
occupational development. NAEP also has collected background information from students, 
teachers, and administrators, and has related these data to student achievement. The Educa- 
tional Testing Service (ETS) in 1983 took over the contract to administer the NAEP from the 
Carnegie Corporation-spawned Education Commission of the States. This move effectively 
kept Carnegie in control of educational assessment, since it was the Carnegie Foundation for 
the Advancement of Teaching (a subdivision of the Carnegie Corporation) which had provided 
the $750,000 initial endowment (start-up funds) to launch ETS in 1947. Through an agree- 
ment between the American Council on Education, the Carnegie Foundation and the College 
Entrance Examination Board, all of whom turned over their testing programs and a portion of 
their assets to ETS, the move to establish Educational Testing Service as the primary provider 
of testing material was accomplished. 

In 1988 Congress established the National Assessment Governing Board (NAGB). The 
purpose of NAGB was to provide policy guidance for the execution of NAEP. The board was 
composed of nationally and locally elected officials, chief state school officers, classroom 
teachers, local school board members, and leaders of the business community, among others. 
Specifically, NAGB has been charged by Congress to perform the following duties: select subject 
areas to be assessed; identify appropriate achievement goals for each age group; develop assess- 
ment objectives; design a methodology of assessment; and produce guidelines and standards 
for national, regional, and state comparisons. 

Over a period of three decades research for Education for Results: In Response to A 

Nation at Risk, Vol. 1: Guaranteeing Effective Performance by Our Schools was conducted by 
Robert E. Corrigan, Ph.D., and Betty 0. Corrigan. 12 This final publication was published in 1983 
for the Reagan Administration's use. Rather than being the protection from harmful innova- 
tions that concerned parents had been promised, this report actually served as a springboard 
for implementing OBE. This writer is including it under the "Sick Sixties" since most of the 
programs comprising experimentation history (pilot OBE/ML/DI programs, including one in 
Korea) were, in the words of the Corrigans, implemented "across our country over a period of 
22 + years (1960-1983)." (For more complete understanding of the impact of this study, see 
Appendix VI.) 

Endnotes: 

1 John Goodlad, "A Report from the State Committee on Public Education to the California State Board of Education — Citizens 
for the Twenty-first Century — Long Range Considerations for California Elementary and Secondary Education," 1969. 

2 The function of the National Diffusion Network has been distributed throughout the U.S. Department of Education's organiza- 



92 



tional subdivisions. The dissemination process is now carried on by individual offices and their projects. This was done as a 
result of the "Reorganization of Government according to the Malcolm Baldridge Award criteria" [TQM) under Vice President 
Al Gore's supervision. 

3 This is another term, used in this publication, for today's "self-esteem." 

4 The writer recommends that those readers interested in the radical, leftist substance of "Recommendations for Delphi Discus- 
sion Groups," contact K.M. Heaton whose Road to Revolution contains information on this subject. See Resources for Heaton's 
address. 

5 The reader should turn to the inside cover of this book for the excellent cartoon by Joel Pett which carries the title "Consolida- 
tion." 

6 "Harrison Bergeron" has been made into a video, available at your local video store. 

7 Dan Smoot was a former Harvard professor who served for 9-1/2 years in the Federal Bureau of Investigation. 

8 Alice Rivlin later became director of the Congressional Budget Office, and presently serves as the chairman of the Board of 
Control for the District of Columbia. 

9 Ethna Reid was quoted in Dennis Bailey's article "Learning to Read the ECRI Way" for the January 8, 1982 issue of The Maine 
Times. 

10 Audio tape of meeting from personal file of researcher who attended conference. 

11 In the January 1969 issue of Today's Education, journal of the National Education Association, two professors of education at 
Indiana University refer to schools of the 1970s as "clinics, whose purpose is to provide individualized psychosocial 'treatment' 
for the student." 

12 The Corrigans' organization is: SAFE Learning Systems, Inc., P.O. Box 5089, Anaheim, CA 92804. 



6 



THE SERIOUS SEVENTIES 



"P 

Vyoncerned with grave, important, or complex matters, problems" and "giving 
cause for concern" are two out of five definitions given in Webster's Dictionary for the word "seri- 
ous" which definitely apply to this chapter, "The Serious Seventies." Unfortunately, since the average 
American was purposely kept in the dark about what was taking place, being able "to be concerned" 
was an impossibility. To the change agents roaming the education landscape, "change" was the goal, 
and the end justified the means, even if it meant misleading through semantic deception the parents 
and taxpayers who paid the bills and provided the resources — the children and teachers upon whom 
the change agents would experiment. 

"The Serious Seventies" contains excerpts from important government documents, education 
journal articles, professional papers, and critiques by key educationists regarding the major components 
of reform planned for the end of the century as a result of federal legislation passed in the 1960s. From 
a study of the key documents one detects a vigorous tug-of-war taking place at the highest decision- 
making levels in education. Stringent debate was carried on regarding the pros and cons of the use of 
systematic planning and technology in an area of human endeavor (education) which until this time 
had had relatively little interference from political, social and economic planners (social engineers) . 
State commissioners of education, local education agency superintendents, and especially teachers 
and school boards had been able to make decisions at the state and local level — decisions which they 
considered to be in the best interest of students and the communities in which they lived and worked. 
But "change" was the name of this serious new game. 

A careful reading of "The Serious Seventies" documents, especially the 1972 Association for 



93 



94 



Educational Computing and Technology (AECT) report entitled The Field of Educational Technology: 
A Statement of Definition (October, 1972), has convinced this writer that significant resistance to goal 
setting, systems management, computer-assisted instruction, etc., which existed at the beginning of 
the 1970s was, unfortunately, overcome. For instance, the above-referenced document contained the 
following most important warning regarding the use of technology in the classroom; a warning that, 
evidently, was not heeded in the years to come. The warning read in part: 

It should be clear that the concerned professional does not have to be a "liberal," or a 
"conservative." The concerned professional must, however, show moral sensitivity to the 
effect of what he or she does [in the field of technology] . It does not matter what position 
an individual comes to as long as it is not "I'll do it because it can be done." 

The above recommendation relating to the ethical use of technology in the classroom was evidently 
ignored by the change agents who decided instead that "We'll do it because it can be done." 

In 1971 Phi Delta Kappan published a paper entitled Performance-Based Teacher Education 
[PBTE]: What Is the State of the Art? This paper spelled out the raison d'etre for the transition from 
teacher education based on knowledge of subject matter to teacher education based on the ability 
to "perform" in the classroom. Skinnerian methods adopted by Madeline Hunter and others would 
become the foundation for future teacher training and accreditation, and ultimately the method for 
workforce training. This paper makes it all too clear that the purpose of PBTE was to "lower standards" 
so that the teaching profession could be more "inclusive" — or so "they" said. However, this writer 
believes inclusion was more than likely the cover (excuse acceptable to those who believed in equal 
opportunity) to install the performance-based system necessary for the eventual implementation of the 
school-to-work polytech system planned in 1934 and activated in the 1990s. From this time forward, 
the deliberate dumbing down would proceed with a vengeance. 

During "The Serious Seventies" the ship of education set a new course. Navigating these new 
waters would require a new chart, one entirely different from that used in the past. 

1970 

A Prohibition against Federal Control of Education, Section 432, General EDUcation 
Provisions Act (GEPA), was enacted in 1970 and reads as follows: 

Sec. 432. No provision of any applicable program shall be construed to authorize any depart- 
ment, agency, officer, or employee of the United States to exercise any direction, supervision, 
or control over the curriculum, program of instruction, administration, or personnel of any 
educational institution, school, or school system, or over the selection of library resources, 
textbooks, or other printed or published instructional materials by any educational institution 
or school system, or to require the assignment or transportation of students or teachers in 
order to overcome racial imbalance. (20 U.S.C. 1232a) Enacted April 18, 1970, PL. 91-230, 
Title IV, sec. 401 (a) (10), 81 Stat. 169. 



The Serious Seventies : c. 1970 



95 



[Ed. Note: The interpretation of the above prohibition lies in the eyes of the beholder. Parents 
and traditional teachers have held that all curriculum and teaching based on the federally 
funded Northwest Regional Educational Laboratory Goals Collection, National Diffusion Net- 
work Programs, and "scientific research-based" reading programs funded under the Reading 
Excellence Act of 1998 should be covered by GEPA and are consequently illegal. Educrats, on 
the other hand, have held that the only way for a program to be covered by GEPA would be 
for the secretary of education to sit on the sidewalk outside the U.S. Department of Education, 
developing curriculum, and passing it out to interested passersby.] 

The Shreveport [Louisiana] Journal of January 20, 1970 carried an article ENtitled "And 
It Came to Pass" in its Views from Other Newspapers section in which the author asked: 

Jackson (Miss.) Daily News— Has HEW Replaced NRA [National Recovery Act]?. 

Thirty-seven years ago an unbelieving editor sat down and wrote an editorial for his paper, 
The Monroe Evening News of Monroe, Michigan, USA. The date was Wednesday, September 
13, 1933. 

Under the Lead Line, "Not That! ", that incredulous American newspaper editor went on 
to ask his readers of three decades ago, "Are the schools of America to be used as a propaganda 
agency to mould public opinion into conformity with the policies of the administration?" 

Still in a tone of utter disbelief that editor went on to quote from an interview with 
one Louis Alber, chief of the speakers division of the National Recovery Act. "Just read these 
astounding utterances by Mr. Alber," the editor challenges his subscribers. 

The rugged individualism of Americanism must go, because it is contrary to the purposes 
of the New Deal and the NRA which is remaking America. 

Russia and Germany are attempting to compel a new order by means of their nation- 
alism-compulsion. The United States will do it by moral persuasion. Of course we expect 
some opposition, but the principles of the New Deal must be carried to the youth of the 
nation. We expect to accomplish by education what dictators in Europe are seeking to do 
by compulsion and force. 

Mr. Alber went on to explain that a "primer" outlining methods of teaching to be 
used, along with motion pictures on the subject, were being prepared for distribution to 
all public and parochial schools and commented that: "NRA is the outstanding part of the 
President's program, but in fact it is only a fragment. The general public is not informed 
on the other parts of the program, and the schools are the places to reach the future build- 
ers of the nation. " 

From our vantage point in history we know that the notorious NRA was laid to rest early in 
its incubation period by the United States Supreme Court. 

What is important to each and all of us today is what has transpired in the intervening 
years since 1933. That editor of long ago remarked, "So as sweeping and revolutionary as 
NRA is, it is only a fragment of a greater program of which the public knows nothing, and 
this unknown program is to be inculcated into the minds of pupils in the schools everywhere, 
by official efforts and at government expense.... Now our schools are to become — like those 
of Germany and Russia — an agency for the promotion of whatever political, social, and eco- 
nomic policies the administration may desire to carry out. And the taxpayers, whether they 
like it or not, are to pay for having their children converted to those policies." 

The Editor closed by stating: "The whole proposition is so amazing, and so alarming 
in its implications, that we refuse to take it seriously. " 



96 



Take a look about you today, with the Washington-directed school policies. Is the Health, 
Education and Welfare Department doing exactly what the defunct NRA started out to do? 



Report of the Study, Title HI, ESEA by Emery Stoof was produced by the EDUCAtional 
Innovation Advisory Commission and the Bureau of Planning and Development of the Cali- 
fornia State Department of Education in 1970. Excerpts follow: 

Origin of the Bureau... An Instructional Program Planning and Development Unit was estab- 
lished by State Board action in 1965 and was funded through a Title V, ESEA project. This 
unit was comprised of persons responsible for the state level administration of Title III, ESEA, 
and co-ordination of Title V, ESEA. A general conceptual model for effective planned change 
in education, as well as a management model for the administration of Title III, ESEA, was 
submitted to the State Board's Federal Aid Committee in 1965, with November 10, 1965 as 
the first deadline for receiving applications for funds.... 

Two significant developments early in the state administration of Title III, ESEA, were 
(1) the project to Prepare Educational Planners (Operation PEP), and (2) the funding of 
twenty-one regional planning centers. "PEP" sessions trained administrators in systematic 
planning procedures, systems analysis techniques, "planning, programming and budgeting 
system" and cost-benefit analysis. PACE (Projects to Advance Creativity in Education) was 
to encourage school districts to develop imaginative solutions to educational problems, to 
utilize more effectively research findings, to translate the latest knowledge about teach- 
ing and learning into widespread educational practice, and to create an awareness of new 
programs. Through the regional centers, the Bureau has endeavored to (1) encourage the 
development of creative innovations, (2) demonstrate worthwhile innovations in educational 
practice through exemplary programs, and (3) supplement existing programs and facilities. 

[Ed. Note: This is an example of how the Federal government began its takeover of all state 
and local education agencies, removing any semblance of what could be considered local 
control. The California report explains exactly what happened in every single state due to our 
elected officials' inability to resist taking federal money and their trust of education change 
agents (administrators, principals, superintendents, etc.) . How many American children have 
been severely handicapped academically and morally by experimental, "innovative" programs 
which had absolutely nothing to do with academics, but everything to do with attitude, value 
and belief change?] 

In 1970 Leonard S. Kenworthy, professor of education at Brooklyn College of the City 
of New York, wrote The International Dimension of Education: Background Paper II Prepared 
for the World Conference on Education (Asilomar, California, March 5-14, 1970), edited by 
Norman V. Overly. The conference was sponsored by the Association for Supervision and Cur- 
riculum Development, National Education Association, and the Commission on International 
Cooperation in Education. Excerpts from the report follow: 

III. The International Dimensions of Our Schools: Some Overall Considerations 
Here and there teachers have modified individual courses.... Schools have rewritten syllabi 
or added courses.... But nowhere has there been a rigorous examination of the total experi- 
ences of children and/or youth in schools and the development of a continuous, cumulative, 
comprehensive curriculum to create the new type of people needed for effective living in the 



The Serious Seventies : c. 1971 



97 



latter part of the 20th century. . . . 

...All the work we do in developing internationally minded individuals should be 
directed to improved behavior. 

That means that all the efforts in this dimension of education must be predicated on the 
research in the formation, reinforcement, and change of attitudes and on the development 
of skills. Knowledge is tremendously important, but we should be clear by now that it must 
be carefully selected knowledge, discovered by the learners rather than told to them, and 
organized by them with the help of teachers or professors around concepts, generalizations, 
or big ideas. Teaching, therefore, becomes the process of helping younger people to probe, 
discover, analyze, compare, and contrast rather than telling. 

There is a rich mine of data now on attitude formation, change, and reinforcement 
which teachers need to study carefully and apply to this dimension of education as well as 
to others. For example, we know that most basic attitudes are learned very early but that 
attitudes can be changed at any age. We know that times of personal and societal crisis are 
the best times to bring about change. But we also know that people must not be threatened 
by changes. They must be relatively secure and much of their resistance to change recognized 
and tolerated as a manifestation of an inner struggle to reject the old and accept the new. 
Therefore, the acceptance of the old views with equanimity is important, so that the threat 
to a person is minimal. We know, too, that appeals to pride and self-interest may be helpful 
in bringing about change. So are the statements and actions of prestige persons. Membership 
in new groups is often helpful in insulating a person from slipping back into old patterns. 
We also know that changing a total group is easier and more likely to produce results than 
trying to change individuals. And it is clear that concentration upon specific areas of change 
rather than general approaches is usually most effective.... 

Changed behavior is our goal and it consists in large measure of improved attitudes, 
improved skills, and carefully selected knowledge — these three — and the greatest of these 
is attitudes.... 

The program emphasizes feelings as well as facts. In some parts of the world in the 
field of education today, the emphasis is upon cognitive learning or intellectual develop- 
ment. This is especially true in the United States.... But in the international dimensions of 
education, as in other dimensions, the affective domain or emotional development is just 
as important.... 

We need to get at the "gut level" in much of our teaching. We need to use music, art, 
powerful literature, films and other approaches which get at the feeling level of learning. 
For example, the writer has found tremendously effective a 10-minute film on the United 
Nations, entitled "Overture." There is no narrative in this film; the pictures are shown against 
a background of music, with the Vienna Symphony Orchestra playing the Egmont Overture. 
It is a powerful learning device and moves its viewers in a way few other approaches touch 
them. (pp. 23-39) 



1971 

Education: From the Acquisition of Knowledge to Programmed, Conditioned REsponses 
was submitted by Assemblyman Robert H. Burke (70th California Assembly District) to the 
California Legislature in 1971. An excerpt follows: 

INTRODUCTION 

Several months ago, my office began accumulating material which had particular significance 



98 



in the area of Planning, Programming, Budgeting Systems because of its potential use as a 
tool of fiscal accountability in the field of education. As we searched into the information 
available on the application of this subject in education, it became increasingly difficult to 
see any relationship between the proposed programs and fiscal accountability. It was appar- 
ent after a study of the methods proposed for use by the schools for accountability purposes 
that fiscal accountability was being minimized and that techniques were being promoted 
for achieving behavioral objectives. Other seemingly unrelated organizations, projects, and 
programs were uncovered because of their influence on the application of accountability 
methods. They were as parts in a puzzle — analyzed by themselves, each of these projects 
appeared to be either harmless or an expression of someone's "dream." When linked together 
with other "harmless" programs, they were no longer formless but could be seen as an entire 
package of plans outlining methods of implementation, organization structures (including 
flow-charts), computerization, use of behavioral profile catalogs, and goals and objectives 
determination. 



Controversial sexologists Lester A. Kirkendall and Ruth F. Osborne developed in 1971 a 
program entitled "Sex Education— Student Syllabus No: 216786, correlated with M.I.P. 180800" 
which was one of the first sex education programs to use a mastery learning approach. This 
program was published by the National Book Company, owned by Carl W. Salser, executive 
director of Educational Research Associates, a non-profit educational research corporation in 
Portland, Oregon. Mr. Salser is also the owner of Halcyon Press and is a long-time advocate 
of individualized instruction and mastery learning. 

Carl Salser is the author of a pamphlet entitled "The Carnegie Unit: An Administrative 
Convenience, but an Educational Catastrophe" and is a supporter of outcome-based education/ 
mastery learning. Full implementation of OBE/ML calls for the removal of the Carnegie Unit — the 
"seat time" measure of subject exposure for students which determines graduation and col- 
lege entry eligibility. Salser was a member during 1981-1982 of the presidentially appointed 
National Council on Educational Research which had oversight of the activities at the former 
National Institute of Education of the U.S. Department of Education. 

In 1971 the Secretariat of the United Nations Educational, Scientific, and CuLtural Orga- 
nization (UNESCO) called upon George W. Parkyn of New Zealand to outline a possible model 
for an education system based on the ideal of a continuous education process throughout the 
lifetime of the learner — a means of bringing an existing national school system into line with 
lifelong learning. The result of this effort was a book entitled Towards a Conceptual Model of 
Life-Long Education, published in 1973 by UNESCO (English Edition ISBN 92-3-101117-0). 
The preface of the book contained the following interesting biographical sketch of the little- 
known Dr. Parkyn: 

The Secretariat called on George W. Parkyn of New Zealand to prepare this first study. Dr. 
Parkyn has rendered extensive service to education in many parts of the world: in New Zea- 
land, as a teacher in primary and secondary schools, as a senior lecturer at the University 
of Otago, and as director of the New Zealand Council for Educational Research, 1954-1967; 
at UNESCO, where he made substantial contributions to the World Survey of Education; at 
Stanford University, California, as a visiting professor; in New Zealand again, as a visiting 



The Serious Seventies : c. 1971 



99 



lecturer in Comparative Education at the University of Auckland; and as Professor of Com- 
parative Education at the University of London, Institute of Education.... Dr. Parkyn was 
asked to review the available literature in this field and to involve several of his colleagues 
at Stanford University, California, in discussions on the basic concept. Psychologists, soci- 
ologists, and anthropologists, as well as professional educators took part in the conceptual 
stage, contributing a rich variety of views. Among those who helped the author in the 
preparation of the study were his research assistants, Mr. Alejandro Toledo and Mr. Hei-tak 
Wu, and his colleagues, Dr. John C. Bock, Dr. Martin Carnoy, Dr. Henry M. Levin and Dr. 
Frank J. Moore. 

[Ed. Note: The Dr. Henry M. Levin mentioned above is the same Henry Levin whose K-8 
Accelerated Schools Project is one of the seventeen reform models that schools may adopt to 
qualify for their share of nearly $150 million in federal grants, according to the January 20, 
1999 edition of Education Week (p. 1). The article "Who's In, Who's Out" listed Accelerated 
Learning as being used in urban schools. It is based on a constructivist philosophy which has 
echoes of and references to Maria Montessori's and John Dewey's philosophies of education 
and incorporates the controversial Lozanov method of Superlearning.] 

Psychology Applied to Teaching by Robert F. Bienter (Houghton Mifflin Co.: Boston, 
1971) was published. This popular psychology text was recommended for use in Introduction 
to Educational Psychology courses in universities in the early 1970s. Chapter 5, under the sub- 
heading of "S-R Associationism and Programmed Learning," is excerpted here: 

Watson [John B.] (who did the most to popularize Pavlovian theory in the United States) 
based one of his most famous experiments (Watson and Rayner, 1920) on the observation 
that young children have a "natural" fear of sudden loud sounds. He set up a situation in 
which a two-year-old boy named Albert was encouraged to play with a white rat. After this 
preliminary period, Watson suddenly hit a steel bar with a hammer just as Albert reached 
for the rat, and the noise frightened the child so much that he came to respond to the rat 
with fear. He had been conditioned to associate the rat with the loud sound. The success 
of this experiment led Watson to believe that he could control behavior in almost limitless 
ways, by arranging sequences of conditioned responses. He trumpeted his claim in this 
famous statement: 

Give me a dozen healthy infants, well formed, and my own special world to bring them 
up in, and I'll guarantee to take any one at random and train him to become any type of 
specialist I might select — doctor, lawyer, artist, merchant-chief and yes, even beggarman 
and thief — regardless of his talents, penchants, tendencies, abilities, vocations, and race 
of his ancestry, (pp. 152-3) 

Later on in the chapter, Skinner's contributions are discussed: 

An even more striking example of Skinner's overwhelming enthusiasm for programmed 
learning is his claim that mere manipulation of the teaching machine should be "reinforcing 
enough to keep a pupil at work for suitable periods every day."... Thus it is apparent that 
Skinner's enthusiasm has prevented him from seeing some of the deficiencies of programmed 
instruction. Many critics have been especially dissatisfied with his attempt to refute the 
charge that programs limit creativity. Clearly when the person composing a program decides 
in advance what is to be learned and how it is to be learned, a student has no opportunity 



100 



to develop in his own way. He is limited by what the programmer knows and by how the 
programmer learned.... 

It is true that the student might use the material in an original way after he had finished 
the program, but there is the possibility that programmed instruction interferes with this 
process. For example, some students who have completed programs report that although 
they have progressed quickly and satisfactorily and feel that they have learned something, 
they aren't sure where to go from here. Typically, the next step is to take an exam, usually 
of the multiple-choice type, which is highly similar to the program in which that stimuli 
are presented and responses are chosen. But what happens after the exam? If the student 
cannot respond unless he is stimulated in the same way he was in the program or exam, he 
will rarely be able to apply what he has learned to real life situations. 

What we are dealing with here is the subject of transfer. . . which is basic to education. 
Ellis has pointed out that little research has been done on the transferability of programmed 
learning; in almost all studies the experimenter determines the degree of learning solely on 
the basis of each child's performance on a test given immediately after the completion of the 
program. Skinner maintains that the student can be taught to transfer ideas through separate 
programs designed for this purpose and that a properly written program will wean the student 
from the machine, but there is little evidence to back up this contention. On logical grounds 
alone it seems reasonable to question the transfer value of programmed instruction. 

Markle notes that in order to ensure that approximately 95 percent of the answers will 
be correct, as Skinner suggests, programmers are forced to keep revising programs for the 
lowest common denominator — the slowest students in the group. This eventually leads to 
programs which most students can complete fairly easily, but it also leads to programs which 
are oversimplified and repetitious, (pp. 168-171) 



The Individualized Learning Letter (T.I.L.L.) ; Administrator 's Guide to Improve Learning; 
Individualized Instruction Methods; Flexible Scheduling; Behavioral Objectives; Study Units; 
Self-Directed Learning; Accountability, Vol. I (February 22, 1971: T.I.L.L., Huntington, N.Y.) 1 
was published and circulated. Excerpts follow: 

Opting to become a greater force in promoting I.I. (Individualized Instruction), The Northeast 
Association for Individualization of Instruction (Wyandanch, N.Y.) has gone national — by 
substituting the word "national" for "northeast.".... The enlarged 2-1/2 day convention is 
geared to give registrants more time to watch I.I. in action in live classrooms. Several of the 
nation's I.I. leaders already lined up to run workshops include: Dr. Lloyd Bishop, NYU; Dr. 
Sid Rollins, Rhode Island College; Dr. Robert Scanlon, Research for Better Schools [Research 
for Better Schools and University of Pittsburgh Learning Research and Development Center 
(Robert Glaser) were instrumental in development of IPI in the early 1960s, ed.]; Dr. Edward 
Pino, Superintendent of Cherry Creek Schools (Englewood, CO); Dr. Robert Anderson, Har- 
vard University; Dr. Leon Lessinger, Georgia State University; Dr. Robert Sinclair, University 
of Massachusetts; Jane Root, Stanford Research Associates; and Dr. Glen Ovard, Brigham 
Young University. Representatives of USOE, NEA, NY State Department of Education will be 
present. (The latter supports the conference with an annual grant.).... 

QUOTES YOU CAN USE: 
DOWN WITH BOOKS. "Textbooks not only encourage learning at the wrong level (imparting 
facts rather than telling how to gather facts, etc.), they also violate an important new con- 
cern in American education — individualized instruction.... Textbooks produce superficially 



The Serious Seventies : c. 1971 



101 



knowledgeable students... who know virtually nothing in depth about anything.... A good 
start would be to... declare a moratorium on textbook use in all courses." Dwight D. Allen, 
Dean of Education, University of Massachusetts, writing on "The Decline of Textbooks, 
Change. " 2 

RECOMMENDED BOOKS: Behavioral Objectives: A Guide for Individualized Learning. Four- 
volume set covering more than 4000 objectives representing four years' work of more than 
200 teachers. Arranged by subject area. Covers language arts, social studies, math and sci- 
ence. A comprehensive collection. Westinghouse Learning Corp., 100 Park Avenue, New 
York, N.Y. 10017. 

MEETINGS STRESSING INDIVIDUALIZED INSTRUCTION: Ninth National Society for Pro- 
grammed Instruction Convention, March 31-April 3, 1971. University of Rochester, Rochester, 
N.Y. Heavy emphasis on applying principles and processes of individualized instruction. 
Session on redesigning schools of tomorrow. Contact Dr. Robert G. Pierleone, College of 
Education, University of Rochester, Rochester, N.Y. First Educational Technology Conference. 
April 5-8, 1971. Americana Hotel, N.Y. City, N.Y. Conference seminars and workshops will 
cover curriculum design, use of computers, programmed instruction, simulation, innovation 
theory, etc. 

IN FORTHCOMING ISSUES: Update of 46 Case Studies of Individualized Instruction as origi- 
nally reported by Jack V. Edling, Oregon State System of Higher Education. 



"Revised Report of Population Subcommittee, Governor's Advisory Council on Environ 
mental Quality" for the State of Michigan, to be used at the April 6, 1971 meeting of the sub- 
committee, was filed in the Library, Legislative Service Bureau in Lansing, Michigan. Excerpts 
from this disturbing report follow: 

I. Concept of a Population Goal 

In general, the Subcommittee was in agreement with U.S. Senate Resolution No. 214, as 
follows: 

That it is the policy of the United States to develop, encourage, and implement at the earli- 
est possible time, the necessary policies, attitudes, social standards, and actions which will 
by voluntary means consistent with human rights and individual conscience, stabilize the 
population of the United States and thereby promote the future well-being of the citizens 
of this Nation and the entire world. 

It was the feeling of the Subcommittee that the intent of the above Resolution should be 
encouraged by voluntary means and due consideration given to human rights. However, in 
order to accomplish the above goal, state and federal legislation must accompany this intent 
to provide disincentives. 

II. Optimum Goal 

An optimum goal is to be considered in preference to a maximum carrying capacity. As a 
starting point, zero population growth is the recommended goal for the citizens of Michi- 
gan.... That the human population on a finite "space ship" cannot increase indefinitely is 



102 



obvious. What is not so obvious is what constitutes an "optimum" level of population and 
the methods by which it is to be limited.... 

III. How Does Society Obtain Population Control? 

Constraints on population size can be divided into two types, biological and social. Biological 
constraints include the limitation of those energies and chemicals required to drive human 
society as a biological system.... Societal constraints are more appropriate since the human 
population explosion is basically a social problem. There are three classes of social institu- 
tions which can be utilized to obtain population control. These are the political, economic 
and education systems. Each of these represent powerful control systems which help to 
regulate the behavior of our society. 

A wide range of public policies are available by which man can affect population size. 
Some policies can seek to change man's basic values and attitudes with respect to the issues 
of population size. Other policies can seek to directly affect man's behaviors which have 
consequences for population size. Some suggested policy goals are listed. 

General Public Understanding 

Having children is a public interest as well as a private interest. Likewise, the use of the 
environment must be understood to be a collective responsibility rather than a private or 
individual responsibility, since the costs and the benefits of the use of the environment are 
indivisible to all members of the collectivity. This idea runs counter to the underlying ethic 
of individualism and privateness of our society, but is basic if we are to mobilize the col- 
lective will which is necessary for social action. To change such a basic set of attitudes and 
values requires cooperation from the full range of opinion leaders in the society. A program 
of education for leaders in all sectors of society, such as religious, economic, political, edu- 
cational, technical, etc., is therefore called for. 

Since basic attitudes and values are formed early in life, and since it is the youth of 
society who are yet capable of determining the size of future families, a program for all levels 
of formal education can be a powerful way to change society's attitudes and values on the 
question of population size as outlined above. 

The idea that family size is a collective, social responsibility rather than just an indi- 
vidual responsibility can be fostered both directly by exhortations by opinion leaders and in 
the schools, and indirectly by the actions that government and other institutions in society 
take. For example, the proposal to eliminate the income tax exemption for children in excess 
of the two-child family limit can be a powerful way for government to symbolize its deter- 
mination that family size is a collective responsibility. 

Public understanding of the interdependent nature of our natural and man-made envi- 
ronment is also important for enlightened public support for population control policies. 
A state-wide education program concerning ecology and population biology is needed for 
both student and adult segments of our society. This will require vigorous action to remove 
the topic of sex from the closets of obscurity in which conservative elements in our society 
have placed it.... 

Cultural Changes 

Two types of cultural changes are needed in order to reduce the population increase: reduce 
the desired size of families, and reduce the social pressure to marry and have a family. 

Large families can be changed from an economic asset to an economic liability if all 
members of society can be offered the prospect that through work, saving, and deferred 
spending they can achieve economic security for themselves and their children. For the 



The Serious Seventies : c. 1971 



103 



already affluent middle class, larger families can be made an economic liability by increasing 
the incentives for and the costs of advanced education for their children.... 

Cultural changes to reduce the social pressure to marry and have a family can be pur- 
sued by changing educational materials which glorify married life and family life as the only 
"normal" life pattern, by granting greater public recognition to non-married and non-family 
life styles, by facilitating careers for single women.... 

[Ed. Note: The above recommendation regarding reducing the social pressure to marry and 
have a family was successfully carried out over a period of 25 years according to an article 
entitled "Institution in Transition" by Michelle Boorstein which appeared in The Maine Sunday 
Telegram's August 30, 1998 issue, Home and Family Section, G-l. This Associated Press article 
said in part: 

They [Pam Hesse and Rob Lemar] share a home and a future but not a formal vow — just 
one couple caught up in the seismic shifts taking place in American attitudes toward mar- 
riage and childbearing. 

A soon-to-be-released Census Bureau report shows Hesse is far from an exception; 
in fact, she's in the majority. The report, the bureau's first compilation of all its 60 years 
of data on childbearing and marriage, finds that for the first time, the majority of "first 
births" — someone's first child — were either conceived by or born to an unmarried woman. 
That is up from 18 percent in the 1930s. 

This is connected to an erosion of the centrality of marriage, said Stephanie Coontz 
of Evergreen State College in Olympia, Washington, who studies the family and its role in 
history.] 

Returning to the Population Subcommittee's report: 
Direct Behavior Changes 

Two general types of public policies are distributive policies and regulative policies. Distribu- 
tive policies involve the distribution of resources and opportunities to people who choose 
to modify their behavior to conform with the socially desired patterns. They thus operate 
as incentives rather than as official constraints. Examples include the elimination of tax 
incentives for larger families, monetary incentives for sterilization or adopted families, and 
removing the income tax discrimination against single citizens.... 

Regulative policies involve direct constraints on behavior and necessarily generate 
greater political conflict than distributive policies. This is because regulative policies elimi- 
nate the element of voluntary choice and apply automatically and categorically to a whole 
class of people or of behaviors. Examples of such regulative policies designed to control 
population growth include forced sterilization and restrictive licensing procedures to marry 
and to have children. However, it does not seem necessary, desirable, or feasible to involve 
regulative policies for population control at this time. One regulative type policy which is now 
in effect and which allows population increase is the law forbidding abortion. Restrictions 
against abortions should be removed to allow individual choice in the use of this back-up 
method of birth control.... 

A general acceptance of birth control to obtain population stability will create a more 
static ethnic, cultural and racial structure in society. Minority groups will continue to stay 
at a numerical minority. Minority problems are basically social and should be solved in that 
manner. An equilibrium condition will also alter the structure of our economic relationship 
both within our society (a shift from an expanding economy to a competitive displacement 
economy) and between other countries that will still be experiencing increasing popula- 



104 



tions.... 

Immediate consideration must be given to (1) the development of an integrated social 
control of our population size and growth, and (2) the impact of a steady stable condition 
on our society. The scope and complexity of this task requires the attention of a highly pro- 
fessional team whose talents and professional training are equal to the challenge. It is the 
recommendation of the Council that such a team be brought together and charged with the 
prompt development of the details of this program and reporting back to the Council. 

Approved by the Population Subcommittee, March 30, 1971. 

Present: Dr. C.T. Black, Mr. Robert Boatman, Professor William Cooper, Dr. Ralph MacMul- 
lan, and M.S. Reisen, M.D., Chairman 

Surely it is no coincidence that the above-mentioned Michigan and U.S. Senate recom- 
mended policies on population control were being discussed at the same time (1971) that the 
United States was engaged in "Ping Pong" diplomacy with Communist China, the international 
leader in mandatory population control. Some excerpts follow from "The Ping Heard Round 
the World" which appeared in the April 26, 1971 issue of Time magazine: 

Dressed in an austere gray tunic, Premier Chou En-Lai moved along a line of respectfully 
silent visitors in Peking's massive Great Hall of the People.... Finally he stopped to chat with 
the 15-member U.S. team and three accompanying American reporters, the first group of U.S. 
citizens and journalists to visit China in nearly a quarter of a century. "We have opened a 
new page in the relations of the Chinese and American people," he told the U.S. visitors. 

...Yet in last week's gestures to the United States table tennis team, the Chinese were 
clearly indicating that a new era could begin. They carefully made their approaches through 
private U.S. citizens, but they were responding to earlier signals that had been sent by the 
Nixon Administration over the past two years. 

...Probably never before in history has a sport been used so effectively as a tool of 
international diplomacy. 

[Ed. Note: Back to family planning, Michigan- style. Population and Family Planning in the 
People's Republic of China, 1971, a book published by the Victor-Bostrom Fund and the Popula- 
tion Crisis Committee, has a table of contents that includes: "A Letter from Peking" by Edgar 
Snow, author of Red Star Over China; "Family Planning in China" by Han Suyin, M.D.; and 
"Why Not Adopt China's Population Goals?" In other words, it looks like Ping Pong Diplomacy 
may have been used to open up the dialogue between Communist China and "private" Ameri- 
can groups supporting population control. These would, in turn, lobby in Congress for more 
liberal family planning policies and for the legalization of abortion as recommended in the 
U.S. Senate Journal Resolution #214 and the Michigan paper. Here again, as was the case with 
the 1985 Carnegie Corporation-Soviet Academy of Sciences education agreement, diplomacy 
is being conducted by private parties: table tennis teams and groups such as the non-profit 
Victor-Bostrom Fund and the Population Crisis Committee.] 

Performance-Based Teacher Education: What Is the State of the Art? by Stanley Elam, 
editor of Phi Delta Kappa Publications (AACTE Committee on Performance-Based Teacher 



The Serious Seventies : c. 1971 



105 



Education, American Association of Colleges for Teacher Education: Washington, D.C., 1971), 
was published. This paper was originally prepared in 1971 pursuant to a contract with the U.S. 
Office of Education through the Texas Education Agency, Austin, Texas. Excerpts follow: 

The Association is pleased to offer to the teacher education community the Committee's 
first state of the art paper.... In performance-based programs... he [the teacher] is held account- 
able, not for passing grades, but for attaining a given level of competency in performing the 
essential tasks of teaching.... Acceptance of this basic principle has program implications 
that are truly revolutionary. 

The claim that teacher education programs were not producing people equipped to teach 
minority group children and youth effectively has pointed directly to the need for reform 
in teacher education.... Moreover, the claim of minority group youth that there should be 
alternative routes to professional status has raised serious questions about the suitability of 
generally recognized teacher education programs. 

[Ed. Note: The above paper was one of the first — and perhaps the most influential — profes- 
sional papers setting the stage for full-blown implementation of Skinnerian outcome-based/ 
performance-based education. The definitions, criteria, assessment, etc., are identical to those 
found in present professional OBE literature. (See Appendix VII for fuller excerpts from this 
paper.)] 

Concern regarding the deliberate dumbing down of America is not confined to this author 
according to an article entitled "Young People Are Getting Dumber," by David Hawkins, edito- 
rial staff writer, in the August 26, 1971 issue of The Dallas Morning News. Excerpts from this 
interesting article, which discusses the importance of acquiring a large vocabulary, follow: 

John Gaston, who bosses the Fort Worth branch of the Human Engineering Laboratory 
(half his clients are from Dallas), dropped a bomb on me as we discussed aptitude testing. 

"Do you know," he said, "that the present generation knows less than its parents?" 

"You mean to say that young people aren't smarter than we are — that all we've heard 
about this generation being the last and best isn't so?" 

Gaston nodded solemnly: "Young people know fewer words than their fathers. That 
makes them know less." He fixed me with a foreboding eye: "Can you imagine what a drop 
in knowledge of 1 per cent a year for 30 years could do to our civilization?" 

The question answered itself. And though I could hardly believe what Gaston was 
saying, I knew it wasn't instant sociology. 

What he says is based on hundreds of thousands of tests given in several parts of the 
country since 1922 by what is probably the most prestigious non-profit outfit in the field of 
vocational research. The Human Engineers don't even advertise. 

But Gaston wasn't through: "We also believe," he was saying, "that the recent rise in 
violence correlates with the drop in vocabulary. Long [range] testing has convinced us that 
crime and violence predominate among people who score low in vocabulary. If they can't 
express themselves with their tongues, they'll use their fists." 

"We test many gifted people who are low in vocabulary and we tell them all — we tell 
the world — to learn the words. Swallow the dictionary. Brilliant aptitudes aren't worth much 
without words to give them wings." 

Gaston paused and then dropped another bomb. "The one thing successful people have 
in common isn't high aptitudes — it's high vocabulary, and it's within everybody's reach. 



106 



Success actually correlates more with vocabulary than with the gifts we're born with." 

"Aptitudes will only show them which road to take. Vocabulary will determine how 
high they climb. Right now, the present generation is headed downwards." 



Some important statements by Professor John I. Goodlad, president of EDUCAtional Inquiry, 
Incorporated, appeared in A Report to the President's Commission on School Finance (School- 
ing for the Future: Toward Quality and Equality in American Precollegiate Education) October 
15, 1971. Goodlad makes the following comments under "Issue #9 — Educational Innovation: 
What changes in purposes, procedures or institutional arrangements are needed to improve 
the quality of American elementary and secondary education?": 

The literature on how we socialize or develop normative behavior in our children and 
the populace in general is fairly dismal.... [T]he majority of our youth still hold the same 
values as their parents.... 

In the second paradigm... the suggestion is made that there are different targets for the 
change agent. For example, in a social system such as a school probably five to fifteen percent 
of the people are open to change. They are the "early majority" and can be counted on to 
be supportive. A second group, sixty to ninety percent, are the resisters. They need special 
attention and careful strategies need to be employed with them. Also, there are the leaders, 
formal and informal, and their support is critical. In his research, for example, Demeter noted 
some time ago the special role of the school principal in innovation: 

Building principals are key figures in the (innovation] process. Where they are both aware 
of and sympathetic to an innovation, it tends to prosper. Where they are ignorant of its 
existence, or apathetic if not hostile, it tends to remain outside the bloodstream of the 
school. 

Few people think in these ways today. Rather, as a people, we tend to rely upon common 
sense or what might be called conventional wisdom as we make significant decisions which, 
in turn, seriously affect our lives.... More often than not, school board members, parents and 
the public make important decisions about what should happen in their schools based upon 
these past experiences or other conventional wisdom.... The use of conventional wisdom as 
a basis for decision-making is a major impediment to educational improvement.... 

The child of suburbia is likely to be a materialist and somewhat of a hypocrite. He tends 
to be a striver in school, a conformist, and above all a believer in being "nice," polite, clean 
and tidy. He divides Humanity into the black and white, the Jew and the Christian, the rich 
and the poor, the "smart" and the "dumb." He is often conspicuously self-centered. In all 
these respects, the suburban child patterns his attitudes after those of his parents.... If we 
do not alter this pattern, if we do not resocialize ourselves to accept and plan for change, 
our society may decay. What may be left in the not too distant future is what other formerly 
great societies have had, reflections on past glories.... 

In the social interaction model of change, the assumption is made that the change 
agent is the decision-maker about the innovation. That is, it is assumed that he decides 
what the adopter will change to. This is a serious problem for two very good reasons. First, 
as we have shown, people cannot be forced to change until they are psychologically ready. 
Thus, at every stage, each individual is, in fact, deciding how far he is ready or willing to 
move, if at all. 



The Serious Seventies : c. 1972 



107 



[Ed. Note: As a former school board member, this writer can relate to the above quote. Princi- 
pals who resisted innovation eventually ended up being forced out of the system undergoing 
radical change. Their trials and tribulations were known only to them, and what they under- 
went during the change agents' activities in their schools could be described as inhumane 
treatment.] 

The Tri-County K-12 Course Goal Project, the results of which were later PUBlished by 
the Northwest Regional Laboratory of the U.S. Department of Education and used extensively 
throughout the nation as the formulaic sample for "goals setting," was initiated in 1971. In 
the appendix entitled "Classification System for the School Curriculum" for her Practitioner's 
Implementation Handbook [series]: The Outcome-Based Curriculum (Outcome Associates: 
Princeton, N.J., 1992), Charlotte Danielson, M.A., a prominent educator and proponent of 
outcome-based education, said: "The knowledge and inquiry and problem-solving skills sections 
of this taxonomy were first developed by the Tri-County Goal Development Project, Portland, 
Oregon." 3 Assistant superintendent Victor W. Doherty, Evaluation Department of the Portland 
Public Schools in Portland, Oregon, in a November 2, 1981 letter to Mrs. Opal Moore, described 
this Goal Development Project as follows: 

The Tri-County Goal Development Project was initiated by me in 1971 in an effort to develop 
a resource for arriving at well-defined learning outcome statements for use in curriculum 
planning and evaluation. At that time the only language available was the behavioral objec- 
tive, a statement which combined a performance specification with a learning outcome often 
in such a way as to conceal the real learning that was being sought. By freeing the learning 
outcome statements from performance specification and by defining learning outcomes of 
three distinctly different types (information, process skills, and values), we were able to 
produce outcome statements that served both the planning and evaluation functions. The 
project was organized to include 55 school districts in Multnomah, Clackamas, and Wash- 
ington Counties and writing was done initially by teachers whose time was donated to the 
project by member districts. 

[Ed. Note: The writer believes that this very controversial project which provided the goals 
framework for OBE was illegal — in clear violation of the 1970 GEPA prohibition against federal 
government involvement in curriculum development.] 

1972 

The Newport Harbor Ensign of Corona del Mar, California carried an article entitled 
"Teachers Are Recycled" in its January 20, 1972 issue. The following are excerpts from this 
important article: 

Education in California is finally going to catch up with the "innovative" Newport-Mesa 
Unified School District. With the passage of the Stull Bill, AB 293, all school districts are 
mandated to evaluate their classroom teachers and certificated personnel through new 
guidelines. Another portion of the bill will allow a district to dismiss a teacher with tenure, 
without going to court. 

A teacher will no longer have the prerogative of having his own "style" of teaching, 



108 



because he will be held "accountable" to uniform expected student progress. His job will 
depend on how well he can produce "intended" behavioral changes in students. 

"School districts just haven't had time to tool up for it," explained Dr. William Cun- 
ningham, Executive Director of the Association of California School Administrators (ACSA) . 
Until recently, he was superintendent of the Newport-Mesa district. 

The Newport-Mesa district, under the guidance of Dr. Cunningham, accomplished 
this task years ago. In fact we have warned of this appraisal plan in many of our columns 
throughout the past 2 years. Its formal name is "staff performance appraisal plan," at least 
in this district, and was formulated as early as 1967. 

In 1968 five elementary schools in our district (California, Mariners, Presidio, Victoria, 
Monte Vista) and one high school (Estancia) were selected from schools that volunteered for 
the project. They were accepted on the basis that at least 60% of the teachers were willing 
to participate in the "in-service training sessions" and to "apply" the assessment processes 
learned at these sessions in their own classroom situations. A total of 88 teachers participated 
in all aspects of the pilot study. . . . 

FORMAL TRAINING SESSIONS: participants attended two 2-1/2 hour sessions to acquire 
the prerequisite tools. Evidence was collected to show that by the end of the final train- 
ing session, 80% of the participants had acquired a minimal level of ability to apply these 
competencies. 

PREREQUISITE TOOLS: Teachers learning how to identify or diagnose strengths and weak- 
nesses, learning to write and use behavioral objectives, learning new teaching techniques 
and procedures, etc. Teachers learn these through workshops and in-service training, having 
acquired these skills, teachers had to go through the "appraisal" technique. 
APPRAISAL TECHNIQUE: During the observation phase, observation teams composed of 
teacher colleagues and a resource person from UCLA or the District collected data regard- 
ing the execution of the previously planned lessons. The observation team recorded both 
the verbal behavior of pupils and teacher (e.g., teacher questions and pupil responses) and 
non-verbal behavior which could be objectively described.... 

What all this amounts to is "peer group" analysis. Group dynamics would be the term 
used in other circles. To be more blunt, others would call it sensitivity training in its purest 
form — role-playing, to say the least.... 

The teacher must cooperate and learn the new methods of teaching, writing behavioral 
objectives, playing psychologist. 



The New York Times carried a lengthy front page article on April 30, 1972 by William 
K. Stevens entitled "The Social Studies: A Revolution Is on — New Approach Is Questioning, 
Skeptical — Students Examine Various Cultures." This article explained the early history of the 
twenty-six-year controversy which has raged across the United States between those desiring 
education for a global society versus those desiring education in American History and West- 
ern Civilization; i.e., the question of "social studies" versus traditional history, and "process" 
education versus fact-based education. Excerpts follow: 

When C. Frederick Risinger started teaching American History at Lake Park High School near 
Chicago, he operated just about as teachers had for generations. He drilled students on names 
and dates. He talked a lot about kings and presidents. And he worked from a standard text 
whose patriotic theme held that the United States was "founded on the highest principles 
that men of good will and common sense have been able to put into practice. " 



The Serious Seventies : c. 1972 



109 



That was ten years ago, but it might as well be 50. For the social studies curriculum at 
Lake Park has changed almost beyond recognition. The 32-year-old Mr. Risinger, now head 
of the department, has abandoned the traditional text and set his students to analyzing all 
revolutions, not just the American, and from all points of view, including the British one 
that George Washington was both a traitor and an inept general. 



An article entitled "People Control Blueprint" by Carol Denton was published in the 

May, 1972 issue (Vol. 3, No. 12) of The National Educator (Fullerton, CA). Recommendations 
made in the top secret paper discussed in this article echo those mentioned in the April 6, 1971 
Michigan Governor's Advisory Council on Population paper. Excerpts follow: 

A "Top Secret" paper from the Center for the Study of Democratic Institutions, now in the 
hands of The National Educator, reveals a plan for total control of the people of the United 
States through behavioral modification techniques of B.F. Skinner, the controversial behav- 
iorist author of Beyond Freedom and Dignity.... 

According to the "Dialogue Discussion Paper," marked "Top Secret" across the bottom of 
the cover page, a conference was held at the Center on January 17 through 19, 1972, at which 
time a discussion on "The Social and Philosophical Implications of Behavior Modification" 
was held. The paper in question is the one prepared [by] four individuals for presentation at 
that conference entitled "Controlled Environment for Social Change." The authors are Vitali 
Rozynko, Kenneth Swift, Josephine Swift and Larney J. Boggs.... 

The second page of the paper carries the inscription, "To B.F. Skinner and James G. 
Holland."... Page 3 of the paper states that the "Top Secret" document was prepared on 
December 31, 1971.... 

The authors of this tome are senior staff members of the Operant Behavior Modifica- 
tion Project located at Mendocino State Hospital in California and the project is partially 
supported by a grant from the National Institute on Alcohol Abuse.... 

On page 5 of this blueprint for totalitarianism, the authors state that "we are presently 
concerned with controlling upheavals and anarchic behavior associated with social change 
and discontent."... The authors go on to say that they believe an "Orwellian world" is more 
likely under presently developing society than under the kind of rigorous controls of a society 
envisioned by Skinner.... 

On page 6, the authors deplore the growing demands for "law and order," stating that 
the population is now more apt to support governmental repression than previously, in 
response to "their own fears."... 

They add that "with the rising population, depletion of natural resources, and the 
increase of pollution, repressive measures may have to be used to guarantee survival of our 
species. These measures may take the form of forced sterilization, greatly restricted uses of 
energy and limits on population movement and living location."... 

Skinner, on the other hand, they allege — "advocates more sophisticated controls over 
the population, since punishment (by the government) for the most part works only tempo- 
rarily and only while the punishing agent is present."... 

On the other hand, the authors allege, operant conditioning (sensitivity training) and 
other behavioral techniques can be used to control the population through "positive rein- 
forcement." 



110 



Mary Thompson, secretary and member of the speakers' bureau of the Santa Clara, 

California Republican Women's Federation, gave a very important speech regarding Planning, 
Programming, Budgeting Systems (PPBS) on June 11, 1972. Following are key excerpts: 

When I was first asked to speak to you about PPBS (Planning, Programming, Budget- 
ing Systems), I inquired whether it was to be addressed to PPBS as applied to education. I 
shall deal with it at the education level today, however you should remember that PPBS is 
a tool for implementing the very restructuring of government at all levels in every area of 
governmental institutions. What is involved is the use of government agencies to accomplish 
mass behavioral change in every area.... 

PPBS is a plan being pushed by Federal and State governments to completely change 
education.... 

The accountability involved in PPBS means accountability to the state's predetermined 
education goals.... 

One leader of education innovation (Shelly Umans — Management of Education) has 
called it "A systematic design for education revolution."... 

In a systems management of the education process, the child himself is the product. 
Note: the child... his feelings, his values, his behavior, as well as his intellectual develop- 
ment.... 

PPBS is the culmination of the "people planners" dreams.... 

Then in 1965 the means for accomplishing the actual restructuring of education was 
provided in the Elementary and Secondary Education Act (ESEA) . President Johnson has 
said that he considered the ESEA the most significant single piece of legislation of his 
administration. Recall that it was also the same year of 1965 when the presidential order 
was given to introduce PPBS throughout the entire federal government. 1965 was the year 
which unleashed the actual restructuring of governmental processes and formally included 
education as a legitimate Federal government function.... 

PPBS is the systems management tool made possible by technology of computer hard- 
ware to affect the planned change. . . . 

In order to make an explanation of PPBS intelligible, you must also know that education 
itself has been redefined. Simply put, it has become the objective of education to measure 
and diagnose the child in order to prescribe a program to develop his feelings and emotions, 
values and loyalties toward predetermined behavioral objectives.... Drawing it right down to 
basics, we are talking about conditioned responses in human terms. Pavlov experimented 
on dogs!... 

Taking each element of PPBS will show how the process is accomplished. PLAN- 
NING — Planning phase (please note that the process involved with a systems approach is 
always described in terms of "phases") always includes the establishment of goals committees, 
citizens committees, needs assessment committees.... These are referred to as "community 
involvement." The committees are always either self appointed or chosen — never elected. 
They always include guidance from some trained "change agents" who may be administra- 
tors, curriculum personnel or local citizens. Questionnaires and surveys are used to gather 
data on how the community "feels" and to test community attitudes. The ingeniousness of 
the process is that everybody thinks he is having a voice in the direction of public schools. 
Not so... for Federal change agencies, specifically regional education centers established 
by ESEA, influence and essentially determine terminology used in the questionnaires and 
surveys. The change agents at the district level then function to "identify needs and prob- 
lems for change" as they have been programmed to identify them at the training sessions 
sponsored by Federal offices such as our Center for Planning and Evaluation in Santa Clara 
County. That is why the goals are essentially the same in school districts across the country. 



The Serious Seventies : c. 1972 



111 



It also explains why three years ago every school district was confronted with the Family 
Life Education issue at the same time.... 

Unknowing citizens' committees are used by the process to generate acceptance of goals 
already determined. What they don't realize is that professional change agents are operating 
in the behaviorist's framework of thought and Mr. or Mrs. Citizen Parent is operating in his 
traditional education framework of thought. So, the local change agents are able to facilitate 
a group to a consensus in support of predetermined goals by using familiar, traditional terms 
which carry the new behaviorist meanings.... 

Another name for this process is Participatory Democracy, a term by the way, which 
was coined by Students for a Democratic Society in their Port Huron Manifesto to identify 
the process for citizen participation in destruction of their own political institutions.... 

Richard Farson of Western Behavioral Sciences Institute made a report to the Office of 
Education in Sacramento in 1967. He said it this way: 

The application of systems analysis is aided by several phenomena that would be of help 
in almost any situation of organizational change. First, it is relatively easier to make big 
changes than to make small ones — and systems changes are almost always big ones. 
Because they are big, it is difficult for people to mount resistance to them, for they go 
beyond the ordinary decision-making, policy-making activities of individual members of an 
organization. It is far easier to muster argument against a $100 expenditure for partitions 
than against a complete reorganization of the work flow.... 

Teachers, you have professional organizations to protect your professional interests. Use 
them to protect your personal privacy and professional integrity. Encourage organizations of 
teachers to take positions publicly in opposition to PPBS.... 

We believe the time has come to establish private schools to keep our children from 
falling victim to the behaviorists while there is still opportunity to do so. BE AWARE OF THE 
FACT THAT THE VOUCHER SYSTEM IS LURKING IN THE WINGS TO BRING THE PRIVATE 
SCHOOLS INTO THE NATIONAL CONTROL [emphasis in original]. 



The Ledger of Tallahassee Florida on July 27, 1972 in an article entitled "Schools to 

Try New Program" quoted Florida state education officials as saying that a new program being 
field-tested in Florida will tell teachers and parents not only why Johnny can't read, but why 
the school can't teach him and how much it's costing to try. Excerpts follow: 

"We're putting all the various components together now," said Associate Education 
Commissioner Cecil Golden. "What we're doing should soon become very visible." However, 
he estimates it will take seven to ten years before the program is completely operational.... 

Golden says it may sound like a lot of gibberish at this point, but "when we bring it all 
together" it should produce a more flexible and relevant educational system.... 

He said many people in the State Department of Education are working independently 
on various facets and aspects of the program and, like those assembling the atom bomb, 
"very few of them understand exactly what they are building, and won't until we put all 
the parts together. " 

[Ed. Note: This article refers to PPBS/MBO— the early years. The Atlanta Constitution pub- 
lished an article entitled "Georgia Schools OK Tracking System" in its July 1, 1998 issue which 
describes later PPBS implementation and which is included in this book's entry of the same 



112 



date.] 

The Don Bell Report of September 8, 1972 reported on a White House CoNFERence on the 
Industrial World held February 7 of that year. The conference title was "A Look at Business 
in 1990." Excerpts follow: 

As one of the participants in that conference, Roy Ash, President of Litton Industries and 
Chairman of the President's Advisory Council on Executive Organization, later appeared before 
the Los Angeles Chamber of Commerce to tell West Coast businessmen what was decided at 
the White House Conference. The billing for this latter event is impressive reading: 

The Los Angeles Chamber of Commerce in cooperation with the U.S. Department of 
Commerce and the White House Staff, is presenting The White House Conference, The 
World Ahead: A Look at Business in 1990, Thursday, May 18, 1972. Los Angeles Hilton. 
3:00-6:30 p.m. 

Following is part of what Roy Ash told his Los Angeles audience: 

The answer is that increasing economic and business interdependence among nations 
is the keynote of the next two decades of world business — decades that will see major 
steps toward a single world economy. . . . 

Some aspects of individual sovereignty will be given over to international author- 
ity.... 

As importantly, international agreements between the socialist and the private prop- 
erty economies add a different dimension to the problems for which solutions need to 
be found over the years ahead. But as Jean Frere, Managing Partner of Banque Lambert, 
Brussels, forecasts, the socialist countries will take major steps toward joining the world 
economy by 1990. He goes so far as to see them becoming members of the International 
Monetary Fund, the sine qua non for effective participation in multilateral commerce. 
Then also, by 1990 an imaginative variety of contractual arrangements will have been 
devised and put into operation by which the socialist countries and the private capital 
countries will be doing considerable business together, neither being required to abandon 
its base idea.... 

These powerful factors of production — that is, capital, technology and manage- 
ment — will be fully mobile, neither contained nor containable within national borders.... 

As a framework for their [multinational corporations] development and applica- 
tion will be the establishment of more effective supranational institutions to deal with 
intergovernmental matters and matters between governments and world industry. A key 
intergovernmental institution that needs to work well in a world economy is the Interna- 
tional Monetary Fund. The IMF will become, in Robert Roosa's [Brown Bros. Harriman 
& Co.] words, the most advanced embodiment of the aspirations that so many have for a 
world society, a world economy. The IMF, he forecasts for 1990, is going to be the source 
of all of the primary reserves of all the banking systems of the world.... 

For, in the final analysis, we are commanded by the fact that the economies of the 
major countries of the world will be interlocked. And since major economic matters in 
all countries are also important political matters in and between countries, the inevitable 
consequence of these propositions is that the broader and total destinies — economic, politi- 
cal, and social — of all the world's nations are closely interlocked. We are clearly at that 
point where economic issues and their related effects can be considered only in terms of 
a total world destiny, not just separate national destinies, and certainly not just a separate 
go-it-alone destiny for the United States. 



The Serious Seventies : c. 1972 



113 



"The Field of Educational Technology: A Statement of Definition" by Donald P. Ely, editor 
and chairman of the Definition and Terminology Committee of the Association for Educational 
Computing and Technology (AECT, a spin-off of the National Education Association), was cir- 
culated in October, 1972. In this paper leading specialists in the field of educational technology 
warn of the potential dangers of computers and the need for ethics in programming. One of 
the participants in the production of this position paper said: "If it is decided the work will 
bring about negative ends, the concerned professional refuses to perform it." (See Appendix 
VIII for fuller excerpts.) 

Dr. Chester M. Pierce, M.D. of Harvard University wrote an article entitled "Becoming 
Planetary Citizens: A Quest for Meaning" which appeared in the November 1972 issue of Child- 
hood Education. Excerpts follow which include alarming recommendations for "education": 

Creative Altruism 

In the past forty years social science experimentation has shown that by age five children 
already have a lot of political attitudes. Regardless of economic or social background, almost 
every kindergartner has a tenacious loyalty to his country and its leader. This phenomenon 
is understandable in the psychological terms of loyalty to a strong father-figure and of the 
need for security. But a child can enter kindergarten with the same kind of loyalty to the 
earth as to his homeland.... 

Systems Analysis 

Children can be taught to integrate knowledge of systems in ever-widening circles. I don't 
know how to tell you to do it, but as professionals you will be challenged to find ways. Just 
because no one yet knows how doesn't mean it can't be done.... 

New Views of Parenting 

Another essential curricular decision you will have to make is what to teach a young child 
about his future role as a man or a woman. A lot will depend on what you know and what 
your philosophy is about parenting.... Already we are hearing about experiments that are 
challenging our traditional views of monogamous marriage patterns.... 

Learning to Relinquish 

Finally — perhaps most difficult of all — you will have to teach children how to unlearn, how 
to re-learn and how to give up things.... 

Public Problem Number One 

If we truly accept that today's child must grow [up] to be a cosmopolite and "planetary 
citizen," we face major problems. How do you get a child to see that the whole world is 
his province when every day on television he sees people who can't live next door to their 
neighbors, who argue about things like busing?... Before the horizon I think the major 
problem to be solved in America if we are to enable people to grow as super-generalists and 
"planetary citizens" is the elimination of racism. Paradoxically, both the two chief deterrents 
and the two chief facilitators to this goal are the public school system and the mass media.... 
Early childhood specialists have a staggering responsibility but an unrivaled importance in 
producing "planetary citizens" whose geographic and intellectual provinces are as limitless 
as their all-embracing humanity. 



114 



Bruce Joyce and Marsha Weil of Columbia Teachers' College wrote Models of Teaching 
(Prentice Hall, Inc. : Englewood Cliffs, New Jersey, 1972) . The book was the product of research 
funded by the U.S. Office of Education's Bureau of Research under a contract with Teachers' 
College, Columbia University, in 1968. Models of Teaching's importance lay not only in the 
fact that the book itself would be used extensively for in-service teacher training in behavior 
modification, but that the book would serve as the foundation from which Joyce would develop 
his "Models of Teacher Repertoire Training," which has been used extensively (since the 1970s 
to the present) in order to change the teacher from a transmitter of knowledge (content) to a 
facilitator of learning (behavior modifier). Several excerpts from Models of Teaching follow: 

Principles of teaching are not conceived as static tenets but as dynamically interactive with 
social and cognitive purpose, with the learning theory underlying procedures, with avail- 
able support technology, and with the personal and intellectual characteristics of learning 
groups. What is emphasized is the wide range of options the teacher may adopt and adapt 
to his unique situation. 

In the preface, which has a subtitle, "We Teach by Creating Environments for Children," Joyce 
and Weil explain: 

In this book we describe models which represent four different "families" of approaches to 
teaching. Some of the models focus on the individual and the development of his unique 
personality. Some focus on the human group and represent ways of teaching which empha- 
size group energy, interpersonal skills, and social commitment. Others represent ways of 
teaching concepts, modes of inquiry from the disciplines, and methods for increasing intel- 
lectual capacity. Still others apply psychological models of operant conditioning to the teach- 
ing-learning process. For the teacher we provide some advice on how to learn the various 
models based on our experiences in the Preservice Teacher Education Program at Teachers 
College, Columbia University. For curriculum and materials designers we include chapters 
on systematic planning using a variety of models of teaching. For both, we present a system 
for deciding what approaches to teaching are appropriate for what ends and how models 
can be selected to match the learning styles of children, (pp. xiii-xiv) 

Excerpts from the table of contents of Models of Teaching include: 

(2) Group Investigation — Democratic Process as a Source. The school is considered as a 
model of an ideal society. This chapter explores a variety of democratic teaching designed 
by Herbert Thelen to bring about a new type of social relationship among men.... 

(5) The Laboratory Method — The T-Group Model. The National Training Laboratory has 
developed approaches to train people to cope with change through more effective social 
relationships. This model is the father of the encounter-group strategies. 

(6) Concept Attainment — A Model Developed from a Study of Thinking. This model was 
developed by the authors from a study of work by Jerome S. Bruner and his associates. 
[Bruner will be encountered in a later entry as a developer, along with B.F Skinner, of the 
humanistic social studies curriculum, Man: A Course of Study, ed.] 

(7) An Inductive Model — A Model Drawn from Conceptions of Mental Processes and General 
Theory-Building. The late Hilda Taba developed a series of models to improve the inductive 



The Serious Seventies : c. 1972 



thinking ability of children and adults. Her strategies are presented in this chapter.... [In 
1957 a California State Senate investigative committee exposed the work of Hilda Taba as 
harmful to children, ed.] 

(12) Non-Directive Teaching — Rogerian Counseling as a Source. From his studies of coun- 
seling and therapy, Carl Rogers has developed a flexible model of teaching emphasizing an 
environment which encourages students to create their own environments for learning. 

(13) Classroom Meeting Model — A Model Drawn from a Stance toward Mental Health. 
Another therapist, [William] Glasser, has also developed a stance toward teaching — one 
which emphasized methods easily applicable to the classroom situation.... [In 1971 the 
Citizens Committee of California, Inc., presented "A Bill of Particulars" for the abolition of 
Dr. William Glasser's theory from the Orange County Unified School District which stated 
in part: "Dr. Glasser has developed a method of education which negates a desire to achieve 
and compete; destroys respect for authority; expounds a 'situational ethics' philosophy; and 
develops group thinking." William Glasser's philosophy is a component of Outcome-Based 
Education, ed.] 

(15) Awareness Training — A Model to Increase Human Awareness. Gestalt therapists and 
other humanistic psychologists have focused on strategies for increasing the awareness and 
sense of possibilities of individuals. A number of models for sensitivity training have been 
developed by William Schutz. 

(16) Operant Conditioning — The pioneering work of B.R Skinner has been followed by a 
mass of approaches to teaching and training based on the shaping of learning tasks and use 
of reinforcement schedules. Several such models are explored here. 

(17) A Model for Matching Environments to People — The psychologist David Hunt has gen- 
erated a "model of models" — an approach to teaching which suggests how we can match 
teaching styles to learning styles so as to increase growth toward personal flexibility. 

(18) The Models Way of Thinking — An Operational Language. The chapter explores the 
philosophical and practical implications of a stance toward education and includes a spec- 
trum of models which have different uses for different students. 

One finds the following information in chapter 16 under the title "Operant Conditioning 

The person most responsible for applying behavioral principles to education is B.R Skinner, 
whose Theory of Operant Conditioning provided the basis for programmed instruction. 

The Theory of Operant Conditioning represents the process by which human behav- 
ior becomes shaped into certain patterns by external forces. The theory assumes that any 
process or activity has observable manifestations and can be behaviorally defined, that is, 
defined in terms of observable behavior. Either or both of the theory's two major opera- 
tions, reinforcement and stimulus-control, are emphasized in the educational applications 
of operant conditioning theory. 

Conditioning refers to the process of increasing the probability of occurrence of existing 
or new behavior in an individual by means of reinforcement. In operant conditioning the 
response (behavior) operates upon the environment to generate consequences. 

The consequences are contingent upon the emission of a response, and they are rein- 
forcing. For example, the response "Pass the butter" operates upon the environment, another 



116 



person, to obtain the butter. The response is reinforced by the receipt of the butter. In other 
words, the probability that a future desire for butter will elicit the same response is increased 
by its initial success.... The stimulus and reinforcement are independent variables upon which 
the response is dependent. As Skinner phrases it "the stimulus acting prior to the emission 
of the response, sets the occasion upon which the response is likely to be reinforced." (1) 
A stimulus is "any condition, event or change in the environment of an individual which 
produces a change in behavior. " (2) It may be verbal (oral, written) or physical. A response 
may be defined as a unit of behavior. . . . According to Skinner, reinforcement must immedi- 
ately follow a response if it is to be effective. Delayed reinforcement is much less effective 
in modifying behavior, (pp. 271-273) 

An official overview of the "Models of Teacher Repertoire Training" program, made avail- 
able to the author while working in the U.S. Department of Education, states under "Brief 
Description of Intervention" the following: 

The objective of the intervention is to prepare teachers who can choose from a number 
of available alternatives the most appropriate strategy to be used with a particular group 
of students in a particular situation at a particular time. "Most appropriate" refers to the 
effectiveness of the strategy selected vs. the alternatives in terms of the probability that the 
students will learn what the teacher has predicted for them. The feasibility of achieving 
this objective in a clinical, or controlled situation has been long established. This interven- 
tion establishes that feasibility in the real world of the elementary and secondary school 
settings and offers a reliable, cost effective plan to do so.... The models which have been 
selected for this system are ones for which there is empirical evidence and/or theoretical 
grounding which supports the probability that students will learn what is predicted from 
them. Teachers learn to select the models and match them to the objectives they seek.... The 
families include: (1) Behavior Modification and Cybernetic Models which have evolved from 
attempts to develop efficient systems for sequencing learning tasks and shaping behavior by 
manipulating reinforcement.... Clinical analysis guides are useful to provide feedback about 
performance and to support on-site coaching. In addition to print material there are more 
than thirty hours of video tapes to support the training system.... The principal criterion of 
effectiveness rests upon existing empirical evidence that pre-specified changes in teaching 
behavior will produce predictable changes in pupil performance. 

This information suggests that Skinner — and, evidently, Joyce and Weil — believe that man 
is truly only a response organism with no intrinsic soul or intellect, definitely a product of 
evolution. During a U.S. Department of Education Joint Dissemination Review Panel meet- 
ing at which Bruce Joyce and Jim Stefansen submitted application for funding, some of the 
participants made the following statements: 

JOYCE: "It has been difficult in the past to bring about curriculum change, behavior 
change. In California we are establishing a network of 100 school districts. New 
strategies for teaching and exporting programs." 

COULSON: "Couldn't agree more that what you are doing needs to be done. Maybe 
we are not ready yet to talk about selective use of repertoire. You must gather data 
supporting selective use of methods." 

STEFANSEN: "Primary claim is we do know how to train teachers to make ultimate 
choices so that when those behaviors take place students are affected. Question is, 
can you train teachers to accept strategies each of which we know are the better of 



The Serious Seventies : c. 1972 



117 



two or more choices?" 

JACKSON: "No question in my mind that Joyce is onto something of great importance. 
Problem here has to do with claims of effectiveness rather than evidence of effective- 
ness. Relationship between teacher behavior and student achievement." 

(UNKNOWN PANEL MEMBER) "There are thousands of investigations to support 
Skinner strategies." 

The following excerpt from the "Models of Teacher Repertoire Training" — which includes 
most of the highly controversial behavior modification methods in existence — is taken from 
Models of Teaching by Joyce and was furnished to this writer by the Maine Facilitator Center 
in Auburn, Maine in 1985. 4 

(1) Information Processing — how do students acquire and act on information? 

Concept Attainment — Jerome Bruner, Goodnow, Austin 
Inductive Thinking — Hilda Taba 

Direct Instruction — Benjamin Bloom, Madeline Hunter, James Block and 
Ethna Reid [How interesting that Joyce identifies the four most influential devel- 
opers and promoters of Skinnerian "Mastery Learning/Teaching" with "Direct 
Instruction," which is the method attributed to Siegfried Engelmann and called 
for in the Reading Excellence Act of 1998, ed.] 

(2) Personal Family — How does each person develop his/her unique possibilities? 

Nondirective Teaching — Carl Rogers 
Synectics — Thomas Gordon 
Classroom Meetings — William Glasser 

(3) Social Models — How does the individual relate to society or other people? 

Jurisprudential Inquiry — Oliver and Shaver 
Role Playing — Shaftel, Chesler and Fox 

(4) Behavioral Models — How is visible behavior changed? 

Training Model 

Stress Reduction — Decker 

Assertiveness Training — Wolpe, Lazarus 

[Ed. Note: The writer has given extensive coverage to Models of Teaching since these teacher 
behavior modification training programs have been in effect for thirty years and are probably 
the most inclusive. It includes many, if not all of the controversial methods about which parents 
complain, if they are lucky enough to find out they are being used. Most parents are unaware 
of these manipulative methods intended to change their children's behavior. Considering the 
prevalence of behavior modification in the schools it is a wonder our schools and our children 
are not in worse shape than they are. There has obviously been immense teacher and student 
resistance to this type of manipulation.] 

President Richard Nixon created the National Institute of Education (NIE) in 1972. 
Serving as a presidential assistant at that time, Chester Finn (who would later be appointed 
assistant secretary of education, Office of Educational Research and Improvement under 



118 



Secretary William Bennett in the Reagan administration) was one of the principal authors of 
Nixon's proposal for NIE. The December 8, 1982 issue of Education Week contained an inter- 
esting article on the history and purpose of NIE entitled "Success Eludes 10-Year-Old Agency." 
An excerpt which pertains to the redefinition of education from academic/content-based to 
scientific, outcome-/performance-based follows: 

"The purpose of a National Institute of Education, " said Daniel P. Moynihan who was the 
agency's principal advocate in the Nixon Administration, "is to develop the art and science 
of education to the point that equality of educational opportunity results in a satisfactory 
equivalence of educational achievement. " 

For those who have difficulty understanding Daniel Moynihan's education jargon, "develop 
the art and science of education to the point that equality of educational opportunity results in 
a satisfactory equivalence of educational achievement" means that education from that time 
on would be considered a "science." In other words, with education becoming a "science," 
behavioral psychology (Pavlov/Skinner) would be used in the classrooms of America in order 
to equalize results which would be predictable and could be scientifically measured. The 
teacher and student would be judged not on what they know, but on how they perform — like 
rats and pigeons — facilitating the "redistribution of brains. " Professor James Block, a leader 
in Skinnerian/mastery learning circles, discussed this redistribution of brains in an article 
published in Educational Leadership (November 1979) entitled "Mastery Learning: The Cur- 
rent State of the Craft. " Block explained that: 

One of the striking personal features of mastery learning, for example, is the degree to 
which it encourages cooperative individualism in student learning as opposed to selfish 
competition. Just how much room is there left in the world for individualists who are more 
concerned with their own performance than the performance of others? One of the striking 
societal features of mastery learning is the degree to which it presses for a society based on 
the excellence of all participants rather than one based on the excellence of a few. Can any 
society afford universal excellence, or must all societies make most people incompetent so 
that a few can be competent? 

Returning to the Education Week article referenced above, the story of NIE continued: 

Among the serious, continuing obstacles to the Institute's attainment of its goals, those inter- 
viewed for this article cited the following three: Understanding, Funding, and Leadership.... 
Under "Understanding" one reads: "Because educational research is a relatively young area of 
social science, it does not enjoy wide respect among scholars, and its relationship to teaching 
and learning is poorly understood by many of those who work in the schools." 

The first director chosen by the current [Reagan] Administration to head the institute, 
Edward A. Curran, articulated the conservatives' position in a memorandum to the Presi- 
dent last May that called for dismantling the institute. "NIE is based on the premise that 
education is a science whose progress depends on systematic 'research and development.' 
As a professional educator, I know that this premise is false," wrote Mr. Curran, who was 
dismissed from the agency shortly thereafter. 

[Ed. Note: Ed Curran was the first "shoe to drop"; he would be followed by some of the nation's 
finest academic teachers who also held Curran's view that education is not a science. 

Of interest to this writer is the extensive influence NIE's research has on local classroom 



The Serious Seventies : c. 1973 



119 



practice considering its rather paltry budget. The reason for this lies in the fact that 90% of 
all education research is federally funded, thus guaranteeing that NIE controls 90% of the 
national research product — teaching and learning. When the National Institute of Education 
was finally abolished none of its functions were eliminated since it was subsumed by the Office 
of Educational Research and Improvement. 

"Equivalence of educational achievement," described by Patrick Moynihan, equals Per- 
formance-Based Education (PBE) and Outcome-Based Education (OBE), which in turn equal a 
deliberate dumbing down of American teachers and youth — necessary in order to implement the 
performance-based workforce training agenda planned since the early nineteen hundreds. 

Good academic- and content-oriented teachers understand that education is not social 
science. In 1999 efforts are being made to encourage these good teachers to get out of the way 
so that teachers trained in performance-based Skinnerian teaching and Total Quality Manage- 
ment can be hired to replace them.] 

1973 

Schooling in the United States by John Goodlad, M. Frances Klein, and Jerrold M. 

Novotney (Charles F. Kettering Foundation Program: McGraw-Hill Co., New York, 1973) was 
published. Excerpts follow: 

CONDITIONING OR BEHAVIOR MODIFICATION: 

Several experimental preschool programs make extensive use of behaviorist theory (now 
called "operant conditioning" or "behavior modification") as a means of instruction in both 
the cognitive and socioemotional realms. [Professor Lawrence] Kohlberg notes: 

In general, such a program implies a play for shaping the child's behavior by successive 
approximation from responses. At every step, immediate feedback or reward is desirable 
and immediate repetition and elaboration of the correct response is used. A careful detailed 
programming of learning is required to make sure that (a) each response builds on the 
preceding, (b) incorrect responses are not made since once made they persist and interfere 
with correct responses, and (c) feedback and reward are immediate. 

The Liverpool Laboratory School at the Research and Development Center in Early 
Childhood Education at Syracuse University is a program based directly on reinforcement 
theory. . . . The school is to determine whether children can learn cognitive skills during the 
preschool years and to identify techniques which will be successful in bringing about such 
learning. The program is built around a highly detailed schedule of reinforcement. Skills to 
be taught are broken down into specific components, each of which is immediately reinforced 
when it appears correctly. Teachers reinforce in four steps: in the first, raisins or candies 
are awarded for each correct response; in the second, the candies are replaced by tokens 
which can be traded for a small prize; the third involves distributing tokens which can be 
exchanged for more valuable tokens. Two or more of the latter may be traded for a prize. In 
the fourth step, four valuable tokens are required to receive a prize.... 

Bereiter and Engelmann [Direct Instruction/DISTAR/Reading Mastery (SRA)] also use 
operant conditioning in their program. Their reinforcement program contains both verbal 
and tangible rewards. Weber describes a rapid-fire sequence in language training in which 
the teacher verbally reinforces each response of the students: 



120 



Teacher: What is the same as beautiful? 
Children: Pretty. 

Teacher: Good. You are so good. If someone is beautiful they are pretty. What is the 

opposite of pretty? 
Children: Ugly. 

Teacher: I'll have to shake everyone's hand.... 

She also speaks of an arithmetic lesson in which the children were given a cracker for each 
correct response.... 

Teaching and managing behavior by means of operant conditioning does not appeal to 
all and raises several moral issues. In the first place, it postulates an image of the learner as 
passive and receptive and leaves little room for individuality and creative thinking. Accord- 
ing to William E. Martin in Rediscovering the Mind of the Child: 

A science of behavior emphasizes the importance of environmental manipulation and 
scheduling and thus the mechanization and routinization of experience. Similarly, it stresses 
performance in the individual. Doing something, doing it efficiently, doing it automati- 
cally — these are the goals. It is the mechanization of man as well as the mechanization 
of the environment. The result is the triumph of technology: a push button world with 
well-trained button-pushers, (pp. 40-43) 

[Ed. Note: Surely, if American parents understood this dehumanizing method being imple- 
mented in the nation's schools under whatever label — OBE, ML, DI in conjunction with com- 
puters — they would see the many dangers to their children. One of those dangers being that 
after twelve years of rewards for correct answers, will their children ever have the courage or 
be motivated to do anything on their own — to take a stand when what is left of their "prin- 
ciples" is challenged? If this method is implemented in all schools of the nation, and I mean 
ALL— public, private, religious and home school (in many cases due to the use of computers 
or "Skinner's box") as is happening right now — our nation will become a nation of robotic 
drones responding to whomever wishes to control them for whatever purpose.] 



Ronald G. Havelock's The Change Agent's Guide to Innovation in Education was pub- 
lished (Educational Technology Publishing: Englewood Cliffs, New Jersey, 1973). This Guide, 
which contains authentic case studies on how to sneak in controversial curricula and teaching 
strategies, or get them adopted by naive school boards, is the educator's bible for bringing 
about change in our children's values. Havelock's Guide was funded by the U.S. Office of 
Education and the Department of Health, Education and Welfare, and has continued to receive 
funding well into the 1980s. It has been republished in a second edition in 1995 by the same 
publishers. 

[Ed. Note: Why is it that the change agents' plans and their tools to "transform" our educa- 
tional system never change, while parents and teachers are told, repeatedly, that they must 
be ready and willing to change 7 .] 

Foundations of Behavioral Research, Second Edition by Fred N. Kerlinger of New York 
University (Holt, Rinehart and Winston, Inc.: New York, 1973) was published. Describing the 



The Serious Seventies : c. 1973 



121 



purpose of writing this textbook, Dr. Kerlinger wrote in his preface: 

The writing of this book has been strongly influenced by the book's major purpose: to help 
students understand the fundamental nature of the scientific approach to problem solution.... 
All else is subordinate to this. Thus the book, as its name indicates, strongly emphasizes the 
fundamentals or foundations of behavioral research [emphasis in original] . 

To accomplish the major purpose indicated above, the book... is a treatise on scientific 
research; it is limited to what is generally accepted as the scientific approach. 

Kerlinger's treatise on scientific research, from which the writer quotes, would have been 
strengthened considerably had he included the following description of Wilhelm Wundt's 
theory: 5 

A thing made sense and was worth pursuing if it could be measured, quantified, and scientifi- 
cally demonstrated. Seeing there was no way to do this with the human soul, he proposed 
that psychology concern itself solely with experience. 

Hence, behavioral psychology and scientific research were born. With such a heavy 
emphasis on quantifiable, measurable, and scientifically demonstrable performance as a base 
for psychological research, the writer felt it important to use an instructive text which would 
help the reader understand the complexities of what is known as "the scientific method," since 
it is being so widely proclaimed as the be-all and end-all of educational curriculum develop- 
ment and methodology today. Fred Kerlinger states in his Foundations of Behavioral Research 
textbook that: 

Scientific research is a systematic, controlled, empirical and critical investigation of 
hypothetical propositions about... the presumed relations among natural phenomena.... If 
such and such occurs, then so-and-so-results.... 

The scientist... systematically builds his theoretical structures, tests them for internal 
consistency, and subjects aspects of them to empirical test. Second, the scientist systemati- 
cally and empirically tests his theories and hypotheses. 

These statements lead one to believe that the true scientific method so often employed 
by scientists dealing with experimental material which can be replicated and tested is being 
employed by behavioral psychologists. However, the following quotes from Kerlinger's textbook 
will quickly dispel this misconception: 

Many people think that science is basically a fact-gathering activity. It is not. As M. Cohen 
says: 

There is... no genuine progress in scientific insight through the Baconian method of accumu- 
lating empirical facts without hypotheses or anticipation of nature. Without some guiding 
idea we do not know what facts to gather. . . we cannot determine what is relevant and what 
is irrelevant. [From A Preface to Logic (Meridian: New York, 1956) by M. Cohen.] 

The scientifically uninformed person often has the idea that the scientist is a highly 
objective individual who gathers data without preconceived ideas. Poincare pointed out how 
wrong this idea is. He said: 

It is often said that experiments should be made without preconceived ideas. That is 



122 



impossible. Not only would it make every experiment fruitless, but even if we wished to 
do so, it could not be done. [From Science and Hypothesis (Dover: New York, N.Y., 1952) 
by H. Poincare.] (p. 16] 

In other words, if we as parents and citizens believe that the same "scientific, research- 
based" standards applied to research in education and psychology are those applied to medi- 
cine, geology, or engineering, we are sadly mistaken. If we believe that objective criteria are 
employed when evaluating educational curriculum or behavioral analysis, we are likewise 
mistaken. Therefore, when presented with proposals in academic curricula that purport to be 
founded in "scientific, research-based" evaluation, we should take them with a grain of salt! 
For instance, Kerlinger, as a psychological researcher, wrote about "Science and Common 
Sense": 

Common sense may often be a bad master for the evaluation of knowledge.... [One] view 
would say that science is a systematic and controlled extension of common sense, since 
common sense, as [J.] Conant points out, is a series of concepts and conceptual schemes 
satisfactory for the practical uses of mankind. But these concepts and conceptual schemes 
may be seriously misleading in modern science — and particularly in psychology and educa- 
tion. It was self-evident to many educators of the last century. . . to use punishment as a basic 
tool of pedagogy. Now we have evidence that this older common sense view of motivation 
may be quite erroneous. Reward seems more effective than punishment in aiding learning. 

The reader by now may recognize the fact that B.F. Skinner's behavioral theories have 
conclusively influenced psychological and educational theory, based on the last statement 
above — the fact that "rewards are more effective than punishment in aiding learning." This is 
vintage Skinner, who also did not believe in punishment. Skinner thought that a person could 
be controlled by the environment — psychologically facilitative "school climate" — to do what 
is best for him. Bad behavior should be ignored, according to Skinner. Good behavior should 
be rewarded. A very good method of dog training! 

Kerlinger went on to point out that: 

A final difference between common sense and science lies in explanations of observed phe- 
nomena. The scientist, when attempting to explain the relations among observed phenom- 
ena, carefully rules out what have been called "metaphysical explanations." A metaphysical 
explanation is simply a proposition that cannot be tested. To say, for example, that people are 
poor and starving because God wills it, that studying hard subjects improves the child's moral 
character, or that it is wrong to be authoritarian in the classroom is to talk metaphysics. 

The New World Dictionary (Merriam Webster: New York, 1979) defines "metaphysics" 
as follows: "the branch of philosophy that deals with first principles and seeks to explain the 
nature of knowledge, nature of being or reality; metaphysical; beyond the physical or mate- 
rial; incorporeal, supernatural, transcendental." Most parents and even teachers are very well 
acquainted with what behavioral scientists call "metaphysics" in this context. The fact that 
behavioral researchers discount this important aspect of man's personality and being is con- 
sistent with what this writer perceived when gathering the research for this book — particularly 
in the chapter entitled "The Fomentation of the Forties and Fifties" when Kinsey, Bloom and 
Skinner brought together the powerful tools for the deconstruction of the God-fearing, edu- 
cated man of the early twentieth century. There is no place for this brand of "science" when 



The Serious Seventies : c. 1974 



123 



dealing with educational theories and methods which will influence forever the character and 
concept of man. 

The bottom line for understanding this conflict between science and psychology is that 
the application of statistical methods to human behavior in the name of science is misdi- 
rected and inappropriate. When we measure natural phenomena, we get results that will vary 
depending upon the environmental factors affecting the thing being measured. For example, 
we can measure the speed at which a rock falls from a certain height. Although the rock's 
speed may be affected by external factors, such as air resistance, there is nothing the rock 
can do, no decision it can make that will change the speed at which it falls. However, when 
we attempt to measure a person's attitudes or opinions, that person can change his or her 
attitude, opinion, or belief at any time— often because of a conscious, deliberate decision to 
do so, as an act of will. Such deliberate assertion of a person's will is extremely difficult, if 
not impossible to measure. 

The social "sciences" and psychology have long yearned for the respectability of scientific 
disciplines, and have touted themselves as science for many decades. However, both fields 
emerged from the same humanistic cesspools of the last century. In discussing the shift to 
modern "naturalistic" or "materialistic" science, the late Dr. Francis Schaeffer warned: 

When psychology and social science were made a part of a closed cause-and-effect system, 
along with physics, astronomy and chemistry, it was not only God who died. Man died. And 
within this framework love died. There is no place for love in a totally closed cause-and-effect 
system. There is no place for morals in a totally closed cause-and-effect system. There is no 
place for the freedom of people in a totally closed cause-and-effect system. Man becomes a 
zero. People and all they do become only a part of the machinery. 6 



1974 

The National Diffusion Network (NDN) , the transmission belt for federally funded and 

developed innovative and/or behavior modification programs, was established in 1974. This 
network, which bears much of the blame for the dilution of absolute values of those children 
and parents exposed to NDN programs from the mid-seventies to the present, was created to 
facilitate the adoption by local schools of innovative programs which had been approved by 
the Joint Dissemination Review Panel (JDRP), a federal panel of educators. 

Most, if not all, states received funding from the U.S. Department of Education to set up 
Facilitator Centers staffed by educators familiar with NDN programs. These individuals who 
had contacts in school districts throughout the individual states promoted the programs and 
arranged for the "developers," or other staff associated with the program, to visit the state to 
conduct in-service training at schools which had adopted the programs. 

Often these programs were described in benign NDN program terms and flew under the 
banner of "basic skills." Local school boards accepted them since they were subsidized and 
less expensive to implement than programs developed by private sector textbook companies. 
The NDN's penetration of the national educational landscape in the early 1980s is exemplified 
by the fact that Texas alone had approximately seventeen NDN offices which facilitated the 
adoption of programs. The State of Maine received some sort of "gold medal" for being the 



124 



number one state in its number of program adoptions. 

There is no question that the National Diffusion Network programs have caused more 
controversy among parents than any other programs developed with federal funds. The regional 
hearings held by the U.S. Department of Education in 1984 to take testimony from citizens 
regarding the need for regulations to enforce the Protection of Pupil Rights Amendment (PPRA) 
consisted of emotional and angry testimony from teachers and parents regarding the value- 
destroying programs in the NDN. The two most destructive programs developed prior to 1984 
were Curriculum for Meeting Modern Problems, which contained The New Model Me for the 
high school level, and Positive Attitude toward Learning. Both of these curricula employed 
behavior modification techniques, values clarification, role playing and, specifically, such 
games as "The Survival Game" — sometimes known as "The Lifeboat Game" — where students 
were enlisted to decide who is worthy of survival in a shipwreck: the priest, the lawyer, the 
pregnant mother, angry teenager, etc. — pure humanistic curricula. 7 

[Ed. Note: Critiques of many of the most controversial NDN programs can be found in the 
testimonies given during the hearings for proposed regulations for the Hatch Amendment in 
1984 contained in Child Abuse in the Classroom edited by Phyllis Schlafly (Pere Marquette 
Press: Alton, Illinois, 1984). 8 Mrs. Schlafly took it upon herself to publish these important 
testimonies due to the U.S. Department of Education's unwillingness to do so. As late as 1994 
the NDN continued to list The New Model Me as an "exemplary program" in its Educational 
Programs that Work, the catalog of the National Diffusion Network. 9 Such blatant continua- 
tion of programs designed to destroy children's values, no matter which administration is in 
office, is shocking.] 

A Performance Accountability System for School Administrators (Parker Publishing 
Co., Inc.: West Nyack, N.Y., 1974) by T.H. Bell, Ph.D., was published. T.H. Bell later served 
as secretary of education during President Ronald Reagan's first term in office, 1981-1985. 
Excerpts from Bell's book follow: 

USE OF TESTS IN NEEDS ASSESSMENT: 

The economic, sociological, psychological and physical aspects of students must be taken 
into account as we look at their educational needs and accomplishments, and fortunately 
there are a number of attitude and inventory scales that can be used to assess these admit- 
tedly difficult to measure outcomes, (pp. 33-34) 

Most of these efforts to manage education try to center in one place an information center 
that receives reports and makes available to all members of the management team various 
types of information useful to managers, (p. 45) 

[Ed. Note: There is no question in this writer's mind that this one man bears much of the 
responsibility for the deliberate dumbing down of our schools. He set the stage for out- 
come-based education through his early support for systems management — Management by 
Objectives and Planning, Programming, Budgeting Systems. These systems later evolved into 
full-blown Total Quality Management for education, having gone through the initial stage 
of Professor Benjamin Bloom's Mastery Learning and ending up in 1984 as William Spady's 



The Serious Seventies : c. 1974 



125 



Transformational OBE. Outcome-Based or results/performance/competency-based education 
requires mastery learning, direct instruction, individualized instruction, systems management 
and computer technology. 

Bell's earlier activities in the 1970s as U.S. Commissioner of Education, including his 
role in promoting and supporting dumbed-down life role competencies for K-12 (see 1975 
Adult Performance Level Study and the 1983 Delker article) and his testimony before the U.S. 
Congress in favor of a U.S. Department of Education, should have kept his name off of any 
list of potential nominees presented to President Reagan. Concerns regarding this nomination 
expressed by Reagan supporters were proved well-founded when: Bell spearheaded the technol- 
ogy initiative in 1981 (see Project BEST, Better Education Skills Through Technology); funded 
in 1984 William Spady's infamous Far West Laboratory (Utah OBE) grant which promised to 
(and did!) put OBE "in all schools of the nation"; predicted that schools would be bookless 
by the year 2000; recommended that all students have computers; and fired Edward Curran, 
the director of the National Institute of Education, when Curran recommended to President 
Reagan that his office (the NIE) be abolished. 

According to a former member of the Utah Education Association who was a close friend 
of Bell's in the 1970s, had the Senate Committee that confirmed T.H. Bell as secretary of edu- 
cation read Bell's book, A Performance Accountability System for School Administrators, it is 
unlikely he would have been confirmed. (See Appendix IX quotes from Bell's book.)] 

"Parents Fear 'Big Brother' Aspect of New Concept" by Monica Lanza was WRiTten for 

the Passaic, New Jersey The Herald News on March 20, 1974. Excerpts follow from the first 
of a two-part series: 

Questioning the purpose of modern educational goals by parents has brought to light 
the possibility that a new curriculum ultimately could force all school children to fit a pre- 
conceived mold or norm by computerized evaluation [emphasis in original] . And, students 
who don't could be branded misfits and sent to a school psychologist for therapy. The threat, 
they say, is in the form of a bill before the state legislature that would take effect July 1, 
if passed. This bill would provide for two new Educational Improvement Centers in New 
Jersey, bringing the total of such centers in the state to four. The centers are currently being 
used by the federal government to reach the grass-roots level through its Elementary and 
Secondary Education Act.... Under the stated aim of developing "critical thinking skills" in 
children, the centers, as agents for the Planning, Programming, Budgeting System (PPBS) , 
have been charged with using behavior modification and sensitivity training to develop 
those skills.... 

At the Cedar Knolls center in Morris County, Joseph T. Pascarelli, program developer, 
recently conducted a workshop which was attended by a number of teachers who reviewed 
one method of sensitivity training, known as the "Who Shall Survive" game. 9 Participants in 
the game are given the sexes, backgrounds and capabilities of 15 people in a bomb shelter 
that supports only seven people, and are asked to decide which seven are the best equipped 
to re-populate the earth. The answer that none should be put to death is not accepted. This 
type of training, according to opponents, changes the values of the students who may have 
been taught at home that murder is wrong under all circumstances. 

From the second article in the series, "Teachers Taught to Be Agents of Social Change,'" the 
reader is informed that: 



126 



Educational Improvement Centers (EICs) provide training to prepare teachers to become 
agents for social change. . . . 

A publication entitled Education: From the Acquisition of Knowledge to Programmed 
Conditioned Response states: "Teachers who are seemingly impervious to change will be 
sought out and trained on an individual basis, and forces which block the adoption of new 
ideas will be identified and ways to overcome these forces will be explored."... 

Behavior modification was the theme of a learning center at a workshop at the North- 
western New Jersey EIC recently. A teacher rattled off the three domains of behavior modi- 
fication as propounded by a Benjamin Bloom, who more than a dozen years ago, redefined 
the purpose of education as "behavior modification.".... 

The multitude of programs available is mind-boggling. Programs filter down from entities 
like the Educational Resource Information Center [ERIC] and are presented to local school 
systems with a flourish. They are praised by gullible administrators and put into action by 
unwitting teachers.... 

One of the reasons for their current success is that the language used in the presen- 
tation of new programs is almost unintelligible. There are teachers who will admit to not 
understanding the jargon, but not publicly — and those who do see underlying dangers say 
nothing for fear of losing their jobs.... 

The father of the myriad federally financed programs is "Projects to Advance Creativity 
in Education" (PACE). The PACE programs are described in a 584-page publication entitled 
Pacesetters in Innovation which lists such "subjects" as psychotherapy, sensitivity training, 
behavior modification, and humanistic curriculum. . . . 

According to the Department of Health, Education and Welfare (HEW) Catalog of Assis- 
tance, the PACE program reached seven million children during 1971 and 1972 at a cost of 
$250 million. The Office of Education has more than 100 such programs, and HEW funded 
70,000 behavioral research programs — some among prison inmates which were soundly 
criticized and are being withdrawn from the prison system.... 

Mr. Thomas Hamill of the EIC Northwest, said that funds for "specific kinds of research 
and development" are channeled to 16 national laboratories attached to colleges and uni- 
versities, a dozen national laboratories studying "individually prescribed instruction," and 
a number of Educational Resource Information Centers, for delivery to the EICs. 

[Ed. Note: Whenever and wherever individualized education is mentioned in professional 
educational literature, parents should realize that Mastery Learning/OBE/DI is the required 
instructional method. Homegrown individualized instruction, non-programmed kitchen table 
type instruction, with a parent instructing his/her child using traditional textbooks and tests, 
is not the same thing as institutionalized individualized instruction with its programmed, 
computer-assisted instruction or programmed reading from a script, which often provides 
immediate reinforcement with tokens, candy — rewards. Also of interest is the fact that prison 
inmates are protected from subjection to behavior modification techniques and workers in 
government offices are protected from subjection to training programs which are violations 
of their religious liberties, but prohibition of the use of behavior modification techniques on 
normal, American school children is non-existent. (See 1988 Clarence Thomas, chairman of 
the Equal Employment Opportunity Commission and present U.S. Supreme Court Justice, 
ruling concerning employment protection.)] 

In 1974 Individual Rights and the Federal Role in Behavior Modification: Report of the 

Subcommittee on Constitutional Rights from the Committee on the Judiciary, U.S. Senate, 



The Serious Seventies : c. 1974 



127 



Washington, D.C. was prepared under the chairmanship of North Carolina's late Senator Sam 
Ervin, who, unfortunately, was unable to continue his work on this important issue due to 
his being called to serve as a member of the Senate Judiciary Committee investigating the 
Watergate break-in. Ervin stated in the preface to the report: 

[Technology has begun to develop new methods of behavior control capable of altering not 
just an individual's actions but his very personality and manner of thinking as well. Because 
it affects the ability of the individual to think for himself, the behavioral technology being 
developed in the United States today touches upon the most basic sources of individuality, 
and the very core of personal freedom. To my mind, the most serious threat posed by the 
technology of behavior modification is the power this technology gives one man to impose 
his views and values on another. In our democratic society, values such as political and reli- 
gious preferences are expressly left to individual choice. If our society is to remain free, one 
man must not be empowered to change another man's personality and dictate the values, 
thoughts and feelings of another. 



In 1974 A Curriculum for Personalized Education by Robert Scanlon, former Pennsylvania 
Secretary of Education, was published by one of the U.S. Department of Education research 
laboratories, Research for Better Schools in Philadelphia, Pennsylvania. Predicting the future, 
Scanlon stated: 

The emphasis in schools in 1985 will be to free the individual from subject matter as bodies 
of knowledge and provide him or her with higher order skills.... One type is values clarifica- 
tion. 



In a speech given to and recorded by the Association for Supervision and CuRriculum 
Development in 1974, 10 Dr. Leon Lessinger, superintendent of schools in Beverly Hills, Cali- 
fornia and former associate commissioner of education in the U.S. Office of Education, called 
for the implementation of Skinnerian behavior modification and discussed environmental 
influence when he said: 

Would that we had such a system; a system of accountability. Do we have a hog cholera 
vaccine? Three ingredients of such a vaccine: 

1. Target the experience in terms of outcomes; 

2. Self-paced learning. We have the technology now. Modules. Small groups working 
on common learning targets. Free learner from having to be there always in front of 
teacher. If we know the target, we can do beautifully if we know the target. 

3. Use of contingency rewards. May make you feel uncomfortable. Does me, but he 
who shirks this responsibility does a disservice to the children of the United States. 
Behavior Modification is here. Better for us to master and use wisely. Powerful ... 
powerful... powerful. 

Carolina Inn exists right across from my school. In the restaurant, rug is red; in the bar, 
rug is orange. I know that because I happen to pass by!... Red in the restaurant — because 



128 



you feel uncomfortable and it keeps you from dillydallying around dinner. Ah, but in the 
bar, it's [warm, comfortable] orange! 



Man, Education & Society in the Year 2000, written by Grant Venn, director of the Chief 
State School Officers Institute and professor of education at Georgia State University, was a 
report or summary of discussions which took place at the Fifth Annual Chief State School 
Officers Institute at Jackson Hole, Wyoming, July 25-August 2, 1974. The report of the Institute 
was sponsored by the U.S. Office of Education in cooperation with the Council of Chief State 
School Officers, funded by the Office of Education, U.S. Department of Health, Education and 
Welfare. There is a notation on the back cover which states: "The availability of this report 
is limited. A single copy may be obtained free on request to the U.S. Office of Education as 
long as the supply lasts. " Dr. Venn's best known publications are Man, Education and Work 
(1963) and Man, Education and Manpower (1971). Excerpts from Dr. Venn's introduction to 
the Summary Report of the Institute follow: 

Seven days of intensive study and discussion with the top leadership of the U.S. Office 
of Education and specialists invited to speak to the Chiefs reached an apparent consensus 
regarding issues that are facing Man, Education and Society: The Year 2000.... 

The seven topics chosen for study by the Executive Committee of the Council of Chief 
State School Officers, the U.S. Office of Education and the Institute Director... follow: 

1 . The Role of the Future in Education — Alvin Toffler 

2. Education and Human Resource Development — Willard Wirtz 

3. The International Situation: The Role of Education — Frederick Champion Ward 

4. Economic Matters: Public Dollar Availability — Allan K.Campbell 

5. The Shape of Democracy: The Citizen Role — Forbes Bottomly 

6. The Public and Private Life of the Individual — Harold Shane 

7. Energy, Natural Resources and Growth — Charles J. Ryan 

Excerpts from the body of Dr. Venn's summary follow: 

We have reached a point where society either educates everyone or supports them.... 

Technological change has, suddenly and dramatically, thrown up a challenge to our 
nation's political, economic, and education institutions. If it is to be solved, it is going to 
demand a massive response on the part of American education. Technology has, in effect, 
created a new relationship between man, his education and his society.... 

The home, the church, and the school cannot be effective maintainers since the future 
cannot be predicted.... 

The clearest overall approach to finding better ways seemed to be a new role for the 
state departments of education.... 

From the question of finances to the question of values that should be taught in the 
schools, the consensus was that leadership and priority changing by state departments was 
the most important step to be taken.... 

After all the questions had been asked and all the dialogue ended, it appeared that the 
most difficult matter would be one of instituting new approaches to education.... 

Toffler's belief that the schools have been a "maintaining" institution for a static predict- 
able society was not agreed to by all, but there was agreement that education for the future 



The Serious Seventies : c. 1974 



129 



had to end its reliance on the past as predictor of the future.... 

The traditional cluster of knowledge, skills, values, and concepts will not help our 
young face the future in their private life, the international situation, their citizen role, their 
work role, nor in the area of energy, national resources or growth.... 

...Individuals need more learning about social process with a greater emphasis on 
participation in group decision making. Again we come face to face with the fact that many 
problems of the future must be solved based on values and priorities set by groups. Many 
of these values will have to be enforced by group action and will need the involvement of 
many individuals in order that hard decisions can be implemented. Many of the future prob- 
lems cannot be solved by individual decision or action. The heavy emphasis on individual 
achievement and competition may need to include learning about cooperation and group 
achievement.... 

As learning becomes more tied to the future, personal and societal change "values" 
come to the foreground. It is doubtful that we shall ever return to the concept of values in 
the same way we saw them in the past.... Perhaps there is a need for the clarification of new 
values needed to solve future problems. They may become clear as we begin a deliberate 
search for values we wish to teach and provide experiences for our young in using these 
values in solving real problems.... 

It would appear that our young have become isolated from the "real work" of society 
and from the real decision making of society. Decision making [values clarification] may 
become the subject of the learning process if there are greater opportunities for "action learn- 
ing" and group learning by teachers and students.... 

The over emphasis on knowledge, information, and theories have caused our youth to be 
freed from the testing of their beliefs in a non-controlled environment — the real world.... 

Conclusions 

In addition to the three R's, the basic skills would appear to include group participation, 
environmental relationships and planning for the future!... Organization, structure, role and 
purpose, methods, content, financing, relationships among school and society, leadership 
and time frames must all be evaluated and changed. The greatest danger seems to be that 
simple improvement rather than basic change might be attempted.... 

The following conclusions seem to be suggested as approaches which might bring 
about major change!... The states collectively should establish specific minimal competen- 
cies in each of the basic tool skill areas and each state should make them the first priority 
for funding, staffing and organizing.... 

Annual state reports should be devised to replace the normative achievement test in 
the future with competency achievement.... The states should convene a task force to study 
and report the ways that are being tried and ways that might be used to provide alternatives 
to earning the high school diploma.... 

Students achieving minimal credits ought to be encouraged to develop their unique 
aptitudes and to test these in the community, workforce, and the school systems.... There 
should be a policy devised in each of the states that ends the long held basic of "time in 
place" [Carnegie Unit] as the evaluation of learning for credit. 

Regulations must be developed which encourage the use of the community, adults, 
students and other learning sites than the classroom and teachers.... Full-time attendance 
from grades one through twelve may have become a barrier to learning — what are the alterna- 
tives?... Educational credit should be available to students for activities related to their studies 
in work, volunteer action, community participation, school volunteer programs and other 
programs contributing to the betterment of the home, school, community and society.... The 



130 



time traps of learning for the young, earning for the middle-aged and yearning for the retired 
must be changed to a concept of continuous learning [UNESCO's lifelong learning, ed.]. 

Greater use of adults and students from other countries and cultures should be empha- 
sized.... It is obvious that the schools alone cannot educate our youth. State Departments 
should encourage, through policies and financing, the use of other societal agencies and 
resources to be part of the planned educational program of high school and older youth.... 
Since the future indicates a smaller share of the public dollar for education, states should 
develop regulations and policies which use the entire year and the entire society as educa- 
tional resources.... 

The fifty states should organize a commission to establish the values that are significant 
in approaching problems that must be faced in the future.... Since change is so great and 
problem solving the necessity of the future, the state should establish a study which would 
define the essential skills, understandings and approaches that our young should learn in 
order to participate in the social decisions that must be made in the future.... 

Knowledge and information is not the only basis for solving problems; our schools 
need to help our youth gain experience in group decision making as a basis for future citi- 
zenship.... 

Each state ought to look at the problem of the role of the school in making the entry 
job a means rather than an end.... Would a placement function for the schools help motivate 
youth?... Every high school student ought to devote a portion of their time to the develop- 
ment of a career related to the future and sensible public and private life. . . . 

Most research in education has looked at parts and pieces rather than the total relation- 
ship of man, education and society. The CCSSO should establish a long-range planning and 
policy group to look at societal issues and the implications for education. At present, there 
is no such body looking at this problem. Can the education Chiefs afford to let others do all 
the directing of the future? 

[Ed. Note: The reader cannot help but see that the above highly controversial recommenda- 
tions made in 1974 have been implemented with hardly a hitch.] 



Professor Lawrence Kohlberg's Moral Development Approach curriculum, "Eraical 

Issues in Decision Making," was developed in the early 1970s and was used extensively in 
law education courses in public and private schools. In 1974 Kohlberg was still developing his 
classifications of "Stages of Moral Development" to include a Seventh Stage— that of "Faith." 
Kohlberg's program was listed in the National Diffusion Network's catalog Programs that Work 
as an exemplary program. Kohlberg's Moral Development Approach includes education in the 
following "stages of moral development": 

Stage 1 — "Avoid punishment" orientation: decisions are based on a blind obedience to 

an external power in an attempt to avoid punishment or seek reward. 
Stage 2 — "Self-Benefit" orientation: decisions are based on premise of doing something 

for others if they reciprocate. 
Stage 3 — "Acceptance by others" orientation: decisions are based on whether or not 

their behaviors perceived as pleasing to others. 
Stage 4 — "Maintain the social order" orientation: decisions are based on fixed rules 

which are "necessary" to perpetuate the order of society as a whole. 
Stage 5 — "Contract fulfillment" orientation: decisions are based on the individual 

respecting impartial laws and agreeing to abide by them while society agrees to 



The Serious Seventies : c. 1975 



131 



respect the rights of the individual. 
Stage 6 — "Ethical principle" orientation: decisions are based on "conscience" and 
respect for each person's individuality is paramount with the values believed to be 
valid for all humanity. 

After Stage 6, the individual experiences despair. He or she has developed principles of 
justice, yet is faced with an unjust world. Moral philosophy cannot solve the problem. 

Stage 7 — "Faith" orientation: decisions are concerned with "what is the ultimate mean- 
ing of life?" 

This "Faith" orientation stage does not conflict with the principles developed through the 
first six stages; rather, it integrates those stages and provides a perspective on life's ultimate 
meaning. In Stage Seven the individual advances from an essentially human to a cosmic 
point of view. With Stage Seven there is a modification to a wider view of life. Emphasis 
changes from the individual to the cosmos. 



1975 

Superintendent Ray I. Powell, Ph.D., of South St. Paul, Minnesota public schools spoke 
out regarding values clarification and sensitivity training in 1975, saying, "It's all brainwashing! " 
Excerpts follow from a memorandum to "All Administrators from Ray I. Powell" concerning 
Center Bulletin No. 39: 1974-1975, dated February 26, 1975: 

1. Parents have the prime responsibility for the inculcation of those moral and spiritual 
values desired for their children in the areas of abortion and birth control. Indeed, this is an 
inherent right of parents and must not be denied.... 

Effective immediately, the teaching, advising, directing, suggesting, or counseling of students 
in these two (2) areas cannot be/shall not be the responsibility nor the task of the South St. 
Paul Public Schools. 

Rather, the efforts of the public schools, henceforth, shall be directed towards expand- 
ing those complimentary learning experiences in other areas of the total curriculum that will 
enhance these two (2) parental values, i.e.: 

• preservation of the family unit. 

• feminine role of the wife, mother, and homemaker. 

• masculine role of guide, protector, and provider. 

• advocacy of home and family values. 

• respect for family structure and authority. 

• enhancement of womanhood and femininity. 

• restoration of morality. 

2. There are more and more concerns and questions being registered today regarding the 
questionable results and the true intent of SENSITIVITY TRAINING, as well as its germaneness 
to the goals and objectives of public education, the training of educators, and the learning 
experiences of students. 

Consider these two (2) definitions of SENSITIVITY TRAINING (sources furnished upon 



132 



request) : 

Sensitivity training is defined as group meetings, large or small, to discuss publicly inti- 
mate and personal matters, and opinions, values or beliefs; and/or to act out emotions 
and feelings toward one another in the group, using the techniques of self-confession and 
mutual criticism. 

It is also "coercive persuasion in the form of thought reform or brainwashing." 

Is the prime concern in education today not to impart knowledge, but to change "atti- 
tudes," so that children can/will willingly accept a controlled society? Are the public schools 
being unwittingly re-shaped to accomplish this and without realizing it? 

[Ed. Note: Dr. Powell then lists 54 terms which can all be included under Sensitivity Training, 
a few of which are: T-Group Training, Operant Conditioning, Management by Objectives, Sex 
Education, Self-Hypnosis, Role Playing, Values Clarification, Situation Ethics, Alternative Life 
Styles, etc. Had all our schools had superintendents with Dr. Powell's character and courage, 
most of the problems facing our children and families today would not exist.] 

Congressman John Conlan of Arizona issued a press release regarding the coNtroversial 
federally funded program for ten-year-old children called Man: A Course of Study (M:ACOS) 
(Education Development Center: Cambridge, Massachusetts, 1975). On April 9, 1975 Conlan 
said that the $7 million National Science Foundation-funded program was designed by a team 
of experimental psychologists under Jerome S. Bruner and B.F. Skinner's direction to mold 
children's social attitudes and beliefs along lines that set them apart and alienated them from 
the beliefs and moral values of their parents and local communities. As a matter of fact, fifty 
commercial publishers refused to publish the course because of its objectionable content. The 
following gory story of cannibalism is excerpted from M:ACOS (Vol. 1): 

The wife knew that the spirits had said her husband should eat her, but she was so exhausted 
that it made no impression on her, she did not care. It was only when he began to feel her, 
when it occurred to him to stick his fingers in her side to feel if there was flesh on her, that 
she suddenly felt a terrible fear; so she, who had never been afraid of dying, now tried to 
escape. With her feeble strength she ran for her life, and then it was as if Tuneq saw her only 
as a quarry that was about to escape him; he ran after her and stabbed her to death. After 
that, he lived on her, and collected her bones in a heap over by the side of the platform for 
the purpose of fulfilling the taboo rule required of all who die. (p. 115) 



October 24, 1975 the World Affairs Council of Philadelphia issued "A DECLARAtion of 

Interdependence" written by well-known historian and liberal think tank Aspen Institute board 
member Henry Steele Commager. This alarming document, which called to mind President 
Kennedy's July 4, 1962 speech calling for a "Declaration of Interdependence," was written as 
a contribution to our nation's celebration of its 200th birthday, and signed by 125 members 
of the U.S. House and Senate. Excerpts follow: 

WHEN IN THE COURSE OF HISTORY the threat of extinction confronts mankind, it is neces- 
sary for the people of The United States to declare their interdependence with the people of 



The Serious Seventies : c. 1975 



133 



all nations and to embrace those principles and build those institutions which will enable 
mankind to survive and civilization to flourish.... 

Two centuries ago our forefathers brought forth a new nation; now we must join with 
others to bring forth a new world order. . . . 

WE AFFIRM that the economy of all nations is a seamless web, and that no one nation can 
any longer effectively maintain its processes of production and monetary systems without 
recognizing the necessity for collaborative regulation by international authorities. 

[Ed. Note: In 1976 the National Education Association produced a social studies curriculum 
entitled A Declaration of Interdependence: Education for a Global Community which Congress- 
woman Marjorie Holt (R.-MD) described as "an atrocious betrayal of American independence." 
It wasn't until the 1980s and 1990s that the relationship between "interdependence" or "new 
world order" and America's education of children became prominent in outcomes in each 
state. Interdependence is also an undergirding concept in global education. 

In 1976 a coterie of internationalists thought their plans would have smooth sailing, not 
the resistance they encountered at the grassroots level which set them back a good twenty 
years. What we are experiencing in 1999 (American soldiers being deployed world-wide as 
part of United Nations "peace-keeping" operations, and UN land confiscation through execu- 
tive orders, etc.) was delayed by the activism of courageous Americans to whom we all owe 
an enormous debt of gratitude.] 

U.S. Commissioner of Education T.H. Bell made the following statement in a U.S. Office 
of Education (HEW) press release on October 29, 1975, dealing with results of the University 
of Texas Adult Performance Level (APL) Study. The study, headed by Dr. Norvell Northcutt, 
was funded at approximately $1 million under Sec. 309 of the Adult Education Act. T.H. Bell's 
statement follows: 

One out of five American adults lacks the skills and knowledge needed to function effectively 
in the basic day-to-day struggle to make a living and maintain a home and family, according 
to a four-year investigation of adult functional competency released today by HEW's Office 
of Education. Referring to the results of the Adult Performance Level (APL) study as "rather 
startling," U.S. Commissioner of Education Terrell H. Bell said that they call for some major 
rethinking of education on several levels. "To begin with," Dr. Bell added, "adult education 
has to be reshaped so that students receive the kind of information that will make modern life 
easier for them. I also think that State and local education agencies will want to examine what 
they are teaching, even at the elementary levels, and perhaps reconsider their requirements 
for high school graduation. " APL research defines functional competency as "the ability to 
use skills and knowledge needed for meeting the requirements of adult living. " 

[Ed. Note: Secretary Bell's recommendations were adopted by Oregon and Pennsylvania one 
year later. In 1976 Pennsylvania commenced implementation of its controversial "Project '81" 
which, according to its 1976 State Department of Education informational materials, "restruc- 
tured Pennsylvania's Goals of Quality Education and developed a new program of basic skills 
and initiated studies designed to help in developing comprehensive programs in general and 
specialized education. " The same informational materials also stated that "Pennsylvania's Con- 
temporary Family Life Competencies were taken from an outline of a course being implemented 



134 



at Parkrose High School in Oregon which focused on consumer economics competencies and 
makes use of both school and community resources." 

There is no question in this writer's mind that the "pre-determined" results of the Texas 
APL Study set the stage for all state education agencies to commence dumbed-down continuous 
progress competency-based education, which is just another label for Benjamin Bloom's and 
William Spady's outcome- /performance- /results-based, school-to-work "education" — all of 
which use Skinnerian pigeon-training methods (mastery learning and direct instruction) — and 
that the initial thrust for this type of "all children can learn/redistribution of brains" lifelong 
education came straight out of the United Nations.] 

The Daily World of November 8, 1975 carried a very interesting article entitled "Plan- 
ning Is Socialism's Trademark" by Morris Zeitlin. The Daily World (newspaper of the Com- 
munist Party USA) was formerly known as The Daily Worker and was founded in 1924. The 
importance of this article lies in its blatant admission that regionalism, which is gradually 
becoming the accepted method of unelected governance in the United States (unelected coun- 
cils and task forces, participatory democracy, public-private partnerships, etc.) is the form of 
government used in democratic socialist and communist countries. The following are excerpts 
from this article: 

Cities in industrially advanced countries develop complex economic, social and political 
interaction. In this process, major cities tend to consolidate neighboring smaller cities and 
settlements into metropolitan regions. Rationally, metropolitan regions should constitute 
governmental units having comprehensive planning and administrative powers within their 
boundaries. 

In our country (the United States), rival capitalist groups, jealously guarding their 
special prerogatives, have rigidly maintained the traditional boundaries of states and coun- 
ties while national economic and social development has created metropolitan regions that 
overlap those boundaries. We have no regional government and no comprehensive regional 
planning to speak of. Regional government and planning remain concepts our urban scholars 
and planners have long advocated in vain. . . . 

In socialist countries, metropolitan regions enjoy metropolitan regional government 
and comprehensive planning. Of the many regions on the vast territory of the Soviet Union, 
the Moscow Region commands special attention, for it has been, since the 1917 Revolution, 
the country's economic and political center. 

The economic and functional efficiencies and the social benefits that comprehensive 
national, regional and city planning make possible in socialist society explain the Soviet 
Union's enormous and rapid economic and social progress. Conversely, our profit-oriented 
ruling capitalist class makes comprehensive social and economic planning impossible, caus- 
ing waste and chaos and dragging the entire nation into misery and suffering as its rule 
deteriorates and declines. 



Project INSTRUCT another mastery learning program modeled along the lines of the 

Exemplary Center for Reading Instruction (ECRI), was approved for dissemination throughout 
the nation by the U.S. Office of Education's Joint Dissemination Review Panel (JDRP) May 14, 
1975. The final evaluation of Project INSTRUCT stated that: 



The Serious Seventies : c. 1976 



135 



The intent and emphasis in 1970 was on behavioral indices and concrete ways of showing 
accountability; and the data would suggest that the reading of the students themselves may 
not have increased, but the impact of Project INSTRUCT in the Lincoln, Nebraska Public 
Schools seems to be very extensive and influential. 

[Ed. Note: According to the final evaluation of Project INSTRUCT, Ronald Brandt, former 
executive editor of the Association for Supervision and Curriculum Development's publication 
Educational Leadership, was involved in the project.] 

1976 

Childhood in China, a book edited by William Kessen (Yale University Press: New Haven, 
Connecticut, 1976), was reviewed by Kent Garland Burit of The Christian Science Monitor. 
The following excerpts from Burit's review provide insight into the similarities of education 
in Communist China in 1973 and Skinnerian Effective School Research used in American 
restructuring in the 1980s and 1990s: 

They were well-behaved, non aggressive with peers.... 

The immediate yielding to a teacher's request seemed remarkable to the Ameri- 
cans.... 

The strategies and communication style of the teachers is also described. They initiate, 
supervise closely, and terminate all activities. They teach by repetition and by formula. Their 
verbal and nonverbal indications of approval are in a high ratio to indications of disapproval. 
They discipline through persuasion and moralistic reasoning rather than punishment. They 
exude a confident expectation of their pupils' compliance and cooperation.... 

The curriculum is saturated with ideological goals, the team reported. The child is 
exposed to repeated exhortations to serve the society. 

[Ed. Note: The foregoing quote with its behavioral terminology could come from an issue 
of The Effective School Report, from which this writer has repeatedly quoted throughout this 
book. Education in non-violence, tolerance, peer resolution, cooperative learning, and politi- 
cally-correct curriculum — all of which will modify the behavior of American children so that 
they will be like the above Communist Chinese children — is taking place in American schools 
in 1999. (See April 21, 1982 Spady quote calling for the above "compliance.")] 

The Los Angeles Times of May 21, 1976 (Part 1-B) carried an article entitled "Cuban 
Children Combine Studies, Work" which clearly explained the communist work-study system 
and the impact of community service, both of which are being implemented in the United 
States in the 1990s. Important excerpts follow: 

Havana (AP) — The door to the side room of an old cigar factory had been left ajar, and a 
small knot of children could be seen preparing boxes of cigars for export. "It's part of our 
education system," a Cuban tobacco official explained. "They are helping and learning." 
The children, elementary school pupils about 9 to 11 years old, were examples of the unique 
Cuban educational system of combining studies with physical work. The system, started in 
1967, applies to all schools, including the island's four universities.... 



136 



The Cubans say the idea is to produce well-rounded citizens capable of manual labor. 
But the system also provides extra hands for an economy that urgently needs more produc- 
tion.... Says Prime Minister Fidel Castro, "This helps to temper them from early childhood 
in the habits of creative work, without running the risk of possible deformation through the 
exclusive exercise of intellectual activity."... 

One example of the system is found at Havana's 1,639 pupil U.S.S.R.-Cuba technical 
school, so named because the Soviet Union equipped the school and trained the instructors. 
The students, mainly boys 14 to 17, learn how to melt metal and to mold it into machine 
parts. They are taught how to cast, weld, grind and operate a lathe. Girls work in laboratories, 
learning to operate testing equipment for metals and machine parts. The parts, produced 
while learning, are sent to factories that make machinery. The students themselves spend 
part of their time working inside the factories. The school also teaches language, culture, 
sports, political philosophy and ordinary school subjects.... 

Those who study for two years become what are called general workers for the fac- 
tories, while four-year students become skilled technicians. All are guaranteed factory jobs 
upon graduation.... 

At the University of Havana, there are 54,000 students this year. Full-time students 
study four hours a day, six days a week and work another four hours daily in fields, factories 
or at jobs related to their future careers.... Many older students fill their work requirement 
by teaching, to offset the teacher shortage created when hundreds of thousands of Cubans 
emigrated after Castro's 1959 revolution.... This commitment to working for the good of the 
country remains after graduation. Graduates must serve anywhere in Cuba for three years, 
then are allowed to return home to continue their careers. 



Lawrence C. Pierce delivered a paper in 1976 entitled "School Site Management" to a 

meeting of the Aspen Institute for Humanistic Studies in which he referred to site-based man- 
agement as an "intermediate structure between centralized school management and education 
vouchers." An excerpt follows: 

On January 6, 1976, San Francisco School Superintendent Robert F. Alioto proposed 
an organizational redesign of the district that included a shift from school district to school 
site management. He said, in part: 

I recommend that we move toward a school site management model that values staff and a 
community involvement and stresses accountability. We must recognize the principal as the 
instructional leader of the school. We must expand the budgeting and fiscal control at each 
school site.... We must establish at each school site one active advisory committee which 
includes parents, students, and staff representatives of the school's ethnic population.... 

Further support for proposals to decentralize school management arises from the desire 
to increase public participation in school governance policies. Local control of the schools, 
originally instituted to make them responsive to the people, nevertheless proved to be cum- 
bersome, and it frequently obscured the state's responsibility for providing every child with 
a basic education. In pursuit of greater accountability and higher professional standards, 
the pendulum of school government, which in the early days of this country swung toward 
representativeness and local control, later swung back toward greater professional autonomy 
and stronger executive control.... 

...School site management is an intermediate structure between centralized school 



The Serious Seventies : c. 1976 



137 



management and educational vouchers. 

[Ed. Note: Read that last statement again. Twenty-one years later the carefully laid plans of the 
internationalist Aspen Institute for Humanistic Studies are being implemented under the guise 
of unaccountable choice/ charter schools, funded by the taxpayers. School-site management is 
an early term for site-based or school-based management promoted by the National Education 
Association in the 1980s and 1990s. Of extreme importance is the unambiguous call for the 
use of (need for) vouchers, which will supplant "choice," essential for the implementation of 
the international school-to-work agenda. The dollar amount of the voucher will depend on 
the school council's determination of how much it will cost to train your child to be a janitor 
(very little) or doctor (a lot).] 

Lawrence P. Grayson of the National Institute of Education, U.S. Department of Educa- 
tion, wrote "Education, Technology, and Individual Privacy" {ECTJ, Vol. 28, No. 3, pp. 195-208) 
in 1976. The following are some excerpts from this important paper which serves as a clear 
warning regarding the indiscriminate use of behaviorist methods and technology: 

The right to privacy is based on a belief in the essential dignity and worth of the indi- 
vidual. Modern technological devices, along with advances in the behavioral sciences, can 
threaten the privacy of students. Fortunately, invasions of privacy in education have not 
been widespread. However, sufficient violations have been noted to warrant specific legisla- 
tion and to promote a sharp increase in attention to procedures that will ensure protection 
of individual privacy. Technology that can reveal innermost thoughts and motives or can 
change basic values and behaviors, must be used judiciously and only by qualified profes- 
sionals under strictly controlled conditions. Education includes individuals and educational 
experimentation is human experimentation. The educator must safeguard the privacy of 
students and their families.... 

Privacy has been defined as "the right to be let alone" (Cooley, 1888) and as the "right 
to the immunity of the person — the right to one's personality" (Warren and Brandeis, 1890). 
Individuals have the right to determine when, how, and to what extent they will share them- 
selves with others. It is their right to be free from unwarranted or undesired revelation of 
personal information to others, to participate or withdraw as they see fit, and to be free of 
unwarranted surveillance through physical, psychological, or technological means. 

Justice William 0. Douglas expressed the concerns of many people when he stated: 

We are rapidly entering the age of no privacy; when everyone is open to surveillance at 
all times; when there are no secrets from the government.... [There is] an alarming trend 
whereby the privacy and dignity of our citizens is being whittled away by sometimes 
imperceptible steps. Taken individually, each step may be of little consequence. But when 
viewed as a whole, there begins to emerge a society quite unlike any we have seen — a 
society in which government may intrude into the secret regions of a man's life at will. 
{Osborn v. U.S., 1966, pp. 341-343) 

Behavioral science, which is assuming an increasing role in educational technology, 
promises to make educational techniques more effective by recognizing individual differences 
among students and by patterning instruction to meet individual needs. However, behavioral 
science is more than an unbiased means to an end. It has a basic value position (Skinner, 
1971) based on the premise that such "values as freedom and democracy, which imply that 
the individual ultimately has free will and is responsible for his own actions, are not only 



138 



cultural inventions, but illusions" (Harman, 1970) . This position is contradictory to the basic 
premise of freedom and is demeaning to the dignity of the individual. Behavioral science 
inappropriately applied can impinge on individual values without allowing for personal dif- 
ferences and in education can violate the privacy of the student.... 

Reflecting on the ethical values of our civilization in 1958, Pope Pius XII com- 
mented: 

There is a large portion of his inner world which the person discloses to a few confidential 
friends and shields against the intrusion of others. Certain [other] matters are kept secret 
at any price and in regard to anyone. Finally, there are other matters which the person is 
unable to consider.... And just as it is illicit to appropriate another's goods or to make an 
attempt on his bodily integrity without his consent, so it is not permissible to enter into 
his inner domain against his will, whatever is the technique or method used.... 

Whatever the motivations of the teacher or researcher, an individual's privacy must take 
precedence over effective teaching, unless good cause can be shown to do otherwise. Good 
cause, however, does not relieve the teacher or school administrator from the responsibility 
of safeguarding the privacy of the student and the family. Yet, many teachers and admin- 
istrators remain insensitive to the privacy implications of behavioral science and modern 
technology in education.... 

Intent on improving education, educators, scientists, and others concerned with the 
development and application of technology are often insensitive to the issues of privacy raised 
by the use of their techniques. For example, many psychological and behavioral practices 
have been introduced on the ground that they will make education more efficient or effec- 
tive. However, improvements in efficiency through technological applications can reinforce 
these practices without regard to their effects. What is now being done in education could be 
wrong, especially if carried out on a massive scale. As the use of technology becomes more 
widespread, we may reach the point where errors cannot be detected or corrected. This is 
especially important because technology interacts with society and culture to change estab- 
lished goals and virtues. Propagating an error on a national level could change the original 
goals to fit the erroneous situation. The error then becomes acceptable by default. 

In developing and applying technology to education, potential effects must be analyzed, 
so that negative possibilities can be identified and overcome before major resources are com- 
mitted to projects that could produce undesirable long-term social consequences. 

In matters affecting privacy it is better to err on the side of the individual, than on 
that of research or improved educational practice. Violations of privacy can never be fully 
redressed. 



Ftnt. No. 14. Privacy is a constitutionally protected right; education is not. The Supreme Court ruled 
in Griswold v. Connecticut (decided in 1965) that the right of privacy is guaranteed by the Constitu- 
tion. In Rodriguez v. San Antonio Independent School District (decided in 1973), the Court ruled that 
education is not a protected right under the Constitution. 



United Nations Educational, Scientific, and Cultural Organization (UNESCO) in Paris, 
France published The International Standard Classification of Education (ISCED-COM.75/WS/ 
27) in 1976. This publication revealed efforts at the highest international level to set up a clas- 
sification system which will be available for use by planners assigned to the management of 
the global economy. Some quotes from the introduction to this 396-page document follow: 



The Serious Seventies : c. 1976 



139 



The International Standard Classification of Education (ISCED) has been designed as 
an instrument suitable for assembling, compiling, and presenting statistics of education 
both within individual countries and internationally. It is expected to facilitate international 
compilation and comparison of education statistics as such, and also their use in conjunction 
with manpower and other economic statistics.... 

ISCED should facilitate the use of education statistics in manpower planning and 
encourage the use of manpower statistics in educational planning. For this purpose, the most 
closely associated classification system in the manpower field is the International Standard 
Classification of Occupations (ISCO), prepared by the International Labour Office. 



Catherine Barrett, president of the National Education Association (NEA) , gave a speech 
at the 1976 NEA Annual Conference in which she made the following comments concerning 
the change in the role of the teacher: 

At this critical moment no one can say with certainty whether we are at the brink of 
a colossal disaster or whether this is indeed mankind's shining hour. But it is certain that 
dramatic changes in the way we raise our children in the year 2000 are indicated particu- 
larly in terms of schooling, and that these changes will require new ways of thinking. Let 
me propose three. 

First, we will help all of our people understand that school is a concept and not a place. 
We will not confuse "schooling" with "education." The school will be the community, the 
community, the school. Students, parents, and teachers will make certain that John Dewey's 
sound advice about schooling the whole child is not confused with nonsense about the 
school's providing the child's whole education.... 

We will need to recognize that the so-called "basic skills," which currently represent 
nearly the total effort in elementary schools, will be taught in one quarter of the present 
school day. The remaining time will be devoted to what is truly fundamental and basic — time 
for academic inquiry, time for students to develop their own interests, time for a dialogue 
between students and teachers. When this happens — and it is near — the teacher can rise 
to his true calling. More than a dispenser of information, the teacher will be a conveyor of 
values, a philosopher. Students will learn to write love letters and lab notes. We will help 
each child build his own rocket to his own moon.... 

Finally, if our children are to be human beings who think clearly, feel deeply, and act 
wisely, we will answer definitely the question "Who should make what decisions?" Teachers 
no longer will be victims of change; we will be the agents of change. 

[Ed. Note: Catherine Barrett's idea of "school is a concept, not a place" is an idea whose time 
may have come in the 1990s. Many educators, including Lewis Perelman (See 1995 Perelman's 
book School's Out), are of the same opinion. This seems to follow on the heels of the concept 
of "education as behavior change" instead of the acquisition of knowledge.] 

In the September 1976 issue of Phi Delta Kappan, "America's Next Twenty-Five Years: Some 
Implications for Education," Harold Shane described his version of the "new and additional 
basic skills" as follows: 

Certainly, cross-cultural understanding and empathy have become fundamental skills, as 
have the skills of human relations and intercultural rapport... the arts of compromise and 



140 



reconciliation, of consensus building, and of planning for interdependence become basic. ... 
As young people mature we must help them develop. . . a service ethic which is geared toward 
the real world. . . the global servant concept in which we will educate our young for planetary 
service and eventually for some form of world citizenship.... Implicit within the "global 
servant" concept are the moral insights that will help us live with the regulated freedom we 
must eventually impose upon ourselves. 

[Ed. Note: The writer would like to contrast Harold Shane's comments with those of C.S. Lewis 
as compiled in an article "C.S. Lewis on Liberal Arts Education" by Gregory Dunn which was 
published in the newsletter On Principle from the John M. Ashbrook Center for Public Affairs 
(April 1999, Vol. VII, No. 2). Excerpts from Dunn's article follow: 

The first reason we study the liberal arts has to do with freedom. That freedom is an 
integral part of the liberal arts is borne out of [C.S.] Lewis's observation that "liberal comes of 
course from the Latin, liber, and means free." 11 Such an education makes one free, according 
to Lewis, because it transforms the pupil from "an unregenerate little bundle of appetites" into 
"the good man and the good citizen." 12 We act most human when we are reasonable, both 
in thought and deed. Animals, on the other hand, act wholly out of appetite. When hungry, 
they eat; when tired, they rest. Man is different. Rather than follow our appetites blindly we 
can be deliberate about what we do and when we do it. The ability to rule ourselves frees 
us from the tyranny of our appetites, and the liberal arts disciplines this self-rule. In other 
words, this sort of education teaches us to be most fully human and thereby, to fulfill our 
human duties, both public and private. 

Lewis contrasts liberal arts education with what he calls "vocational training," the sort 
that prepares one for employment. Such training, he writes, "aims at making not a good man 
but a good banker, a good electrician. . . or a good surgeon." Lewis does admit the importance 
of such training — for we cannot do without bankers and electricians and surgeons — but the 
danger, as he sees it, is the pursuit of training at the expense of education. "If education is 
beaten by training, civilization dies," he writes, for the "lesson of history" is that "civilization 
is a rarity, attained with difficulty and easily lost." 13 It is the liberal arts, not vocational train- 
ing, that preserves civilization by producing reasonable men and responsible citizens.... 

A third reason we study the liberal arts is because it is simply our nature and duty. Man 
has a natural thirst for knowledge of the Good, the True, and the Beautiful, and men and 
women of the past have made great sacrifices to pursue it in spite of the fact that, as Lewis 
puts it, "human life has always been lived on the edge of a precipice." In his words, "they 
propound mathematical theorems in beleaguered cities, conduct metaphysical arguments 
in condemned cells, make jokes on scaffolds." So, finding in the soul an appetite for such 
things, and knowing no appetite is made by God in vain, Lewis concludes that the pursuit 
of the liberal arts is pleasing to God and is possibly, for some, a God-given vocation.... 14 

. . .Truly, we ignore the liberal arts only at our peril. Without them we will find ourselves 
increasingly unable to preserve a civilized society, to escape from the errors and prejudices 
of our day, and to struggle in the arena of ideas to the glory of God.] 

Today's Education, the journal of the National Education Association, carried an article 
in the September-October 1976 edition entitled "The Seven Cardinal Principles Revisited." On 
page 1 this article stated that: 

In 1972, the NEA established a Bicentennial Committee charged with developing a "living 
commemoration of the principles of the American Revolution. " This 200th anniversary eel- 



The Serious Seventies : c. 1976 



141 



ebration of the Declaration of Independence was to focus on the next 100 years of education 
in an interdependent global community. The initial work of the Committee culminated in 
the NEA Bicentennial Idea Book. Among its ideas was that of developing a definitive volume 
to "contain a reframing of the Cardinal Principles of Education and recommendations for 
a global curriculum." After recognizing the importance of the original Cardinal Principles, 
which were published in 1918, the Committee made the point that "today, those policy 
statements about education are obsolete, education taken as a whole is not adequate to the 
times and too seldom anticipates the future." A report to be issued by the NEA, proposing 
cardinal premises for the twenty-first century is the direct and immediate outgrowth of the 
Bicentennial Committee's belief that "educators around the world are in a unique position 
to bring about a harmoniously interdependent global community based on the principles of 
peace and justice...." Early in September 1975, a 19-member Preplanning Committee began 
the task of recasting the seven Cardinal Principles of Education by developing 25 guidelines 
for the project. 

[Ed. Note: Members of the Preplanning Committee read like a "Who's Who of Leading Global- 
ists." It included: former Secretary of Education T.H. Bell, "Mr. Management-by-Objectives," 
who was responsible for the grant to William Spady of the Far West Laboratory to pilot OBE 
in Utah, with plans to "put OBE in all schools of the nation"; Professor Luvern Cunningham, 
Ohio State University, who subsequently served as advisor to the Kentucky Department of 
Education during its education restructuring in the 1990s; Willis Harman, Stanford Research 
Institute; Robert Havighurst, University of Chicago; Theodore Hesburgh, University of Notre 
Dame; Ralph Tyler, Center for Advanced Study in Behavioral Science; Professor Theodore 
Sizer, Coalition for Essential Schools, which calls for a "less is more" curriculum and removal 
of graduation standards (the Carnegie Unit); David Rockefeller; Professor Benjamin Bloom, 
father of Mastery Learning (the international learning method); the late McGeorge Bundy of 
the Ford Foundation; and others.] 

Foundations of Lifelong Education was published by UNESCO (United Nations Educational, 
Scientific, and Cultural Organization) Institute for Education (Pergamon Press: Oxford, N.Y., 
Toronto, Sydney, Paris, Frankfurt, 1976). In chapter 4, "Theoretical Foundations of Lifelong 
Education: A Sociological Perspective," Henri Janne described accurately the how, what and 
why of decentralization (site-based management, charter schools, choice, unelected school 
councils, etc.) being sold to naive school boards and citizens as "local control": 

In education a monolithic structure is completely unacceptable as it creates organizations 
that, owing to their homogeneity and their ineluctable [inevitable] bureaucratic nature, are 
averse to change and to individual or local adaptation.... 

Decentralization of the greatest possible number of decisions is indispensable in a 
system founded on... education defined as "learning" rather than "teaching." 

[Ed. Note: "Learning," as described and defined by the educational change agents, is the process 
by which students/children are allowed to acquire the knowledge which will be "beneficial" to 
them personally as they pursue the fulfillment of their particular life roles (jobs) . This process 
is the opposite of the traditional role of education as "teaching" students subject matter which 
can be used for diversified pursuits later in life. 

In the 1977 entry dealing with UNESCO's Development of Educational Technology in 



142 



Central and Eastern Europe the reader will note that the socialist countries of Eastern Europe 
had centralized systems of education and had not yet adapted their system to accommodate 
Henri Janne's proposals for "lifelong learning. " Janne explained above how to take a central- 
ized system of pedagogy and ideas and "localize" them in order to change their focus without 
ever changing the centralized control. This gives an interesting perspective on the oft-seen 
bumper sticker: "Think Globally — Act Locally. "] 



1977 

Essays in Economics: Theories, Facts, and Policies, Vol. II (Blackwell PuBLisHers: Maiden, 
Massachusetts, 1977) by the late Wassily Leontief was published. An excerpt follows: 

When I speak of national economic planning, the notion I have in mind is meant to encom- 
pass the entire complex of political, legislative, and administrative measures aimed at an 
explicit formulation and realization of a comprehensive national economic plan. Without a 
cohesive, internally consistent plan there can be, in this sense, no planning. But the prepa- 
ration of a script is not enough, the play has to be staged and acted out. It is incumbent on 
anyone who favors introduction of national economic planning in this country — and I am 
one of these — to propose a plan describing how this might be done. Several congressional 
committees and at least one commission appointed by the President, not to speak of groups 
outside of the government, are now engaged in this task. (p. 398) 

Who's Who in America includes the following reference to Leontief: "Economist, born 
Leningrad, Russia, August 5, 1906, et al." Current Biography in 1967 listed Leontief as : 

The creator of the input-output system revolutionizing economic research and national 
planning is the Russian-born Harvard professor Wassily W. Leontief.... Leontief has been a 
teacher at Harvard since 1931, and director of the Harvard Economic Research Project on 
the Structure of the American Economy since 1948.... [This project] was funded by an initial 
four-year grant of $100,000 from the Rockefeller Foundation. 

In a letter to American educator/researcher/writer Gene Malone dated September 9, 1993, 
Leontief, professor at the Institute for Economic Analysis of New York University, stated: "The 
use of the Input-Output method in educational planning was already discussed and has been 
practically employed in France." OBE is similar to PPBS (Planning, Programming, Budgeting 
System) and MBO (Management by Objective), both of which are based on input-output eco- 
nomic systems theory. 

Leontief died February 5, 1999 at the age of 93. The New York Times February 8, 1999 
eulogy steered clear of any mention of Leontief's work in the promotion of Five- Year Plans, 
widely associated with socialist planning. However, the Times article provided some extremely 
interesting background information on Leontief: 

Dr. Leontief, with the help of ever-more powerful computers, continued to improve input- 
output analysis his entire life. 

With advances he made in the 1950s and 1960s, that analysis became a key part of 
the national accounting systems for both capitalist and communist states.... [H]e preached 
a doctrine of applied economics, saying that research should result in practical advances.... 



The Serious Seventies : c. 1977 



143 



[H]e also found time to serve as president of the American Economic Society.... 

Partially through input-output analysis, he also became a leading authority on the 
economic effects of world disarmament and increased economic controls.... 

He was a 1925 economics graduate of the University of Leningrad, and he was impris- 
oned in that city for anti-Soviet activities. He was allowed to leave the Soviet Union and 
went to Germany where he received master's and doctoral degrees from the University of 
Berlin. 

He served in 1929 and 1930 in Nanking, China, as an economics advisor to the Chi- 
nese Ministry of Railroads. He then came to this country and joined the National Bureau of 
Economic Research in New York in 1931. 

In 1932, he joined Harvard as an economics instructor. He became an assistant profes- 
sor in 1933, an associate professor in 1939 and a full professor in 1946. Two years later he 
founded the Harvard Economic Research Project, which became a center of input-output 
analysis. 

During World War II, he was a consultant to the Labor Department and the Office of 
Strategic Services [OSS, CIA, NTL]. 

He left Harvard in 1975 to join the faculty at New York University, where he was a full 
professor and also served as director of its Institute for Economic Analysis from 1975-1991. 
He continued to give classes at the university into his nineties. 

Dr. Leontief thus taught and ran research organizations at two great universities all 
the while doing all-but-revolutionary economic research that would lead to major advances 
in national planning.... Dr. Leontief... championed the central role of government in plan- 
ning. 



"Competency-Based Education: A Bandwagon in Search of a Definition," an ARticle by 
William G. Spady of the National Institute of Education, was published in the January 1977 
edition of Educational Researcher. Excerpts follow: 

In September, 1972, the Oregon State Board of Education passed new minimum gradu- 
ation requirements for students entering ninth grade in the Fall of 1974 and new minimum 
standards for local school districts focused on the new requirements in 1974. The thrust 
of these new requirements and standards involved the introduction of three domains of 
"survival level" competencies as minimum conditions for high school graduation by 1978: 
personal development, social responsibility, and career development.... Although largely 
unintended and unanticipated by those involved, the 1972 Oregon regulations provided the 
first significant nudge that set in motion across the nation over the next four years a series 
of actions by state level policy makers and administrators to consider, formulate and imple- 
ment regulations and procedures that they now associate with the term Competency-Based 
Education (CBE).... 

It is likely, therefore, both that the outcome goals required for graduation in CBE 
systems will eventually emerge from a tense compromise among the many constituencies 
in a community regarding the necessary, the desirable, and the possible, and that C-Based 
diplomas will be viewed with initial if not undying skepticism by colleges and universities.... 
In short, CBE programs require mechanisms that collect and use student performance data 
as the basis of diagnosing weaknesses and necessary remediation not only for students but 
for themselves as well.... 

According to information compiled by Clark and Thompson (1976), no states outside 
of Oregon appear to use language consistent with a life-role conception of competency in 



144 



either their current or pending regulations pertaining to mandated student proficiencies. 
The possible exceptions refer to the need for occupational and consumer mathematics 
skills. However, within the next year New York and Pennsylvania may make more decisive 
moves toward implementing approaches to schooling more fully resembling this concep- 
tion of CBE. Almost all other states are concerned with capacity-based outcomes in limited 
basic skill areas (e.g., Arizona, Connecticut, Florida, Georgia, Idaho, Louisiana, Maryland, 
Nebraska and Tennessee), a slightly broader set of subject area proficiencies (e.g., Califor- 
nia, Texas, Virginia and Washington, D.C.) or as-yet-undefined or else locally determined 
options concerned with some kind of minimum proficiency requirements (e.g., Colorado, 
Kansas, Michigan and New Jersey). As of October 1976, in only two cases — California and 
Florida — could students leave school in less than 12 years with a diploma once they passed a 
state-determined proficiency exam (the Oregon regulations allow local districts to determine 
whether early graduation will be allowed).... 

Aside from Oregon, five states — California, Maryland, Michigan, New York and Penn- 
sylvania — deserve particular attention over the next few years as sites where current thinking 
about substantial proficiencies or competency-based reforms suggest real promise. . . . 

Pennsylvania in a fourth case has been exploring a concept of system reform with a 
definite Competency-Based orientation. Originally called Community Learning and currently 
named "Project 81," this program would be centered around facilitating student capacities 
and competencies in five major areas of activity, with a stress on participation outside the 
school building where appropriate. The areas include a broad range of basic skills, the world 
of work and leisure, community governance and involvement, and a broad range of citizen 
and personal survival skills. 



"Conclave of the Change Agents" by Barbara M. Morris was published in the March 1977 
issue of The National Educator. Excerpts follow from this extremely important article which 
proves that the federal government has been deeply involved in the funding and implementa- 
tion of moral/citizenship (values) education: 

Early in June 1976, 85 top level members of the educational elite and an assortment of 
influential change agents met at an invitation only conference in Philadelphia to draft recom- 
mendations on how to put "Moral/Citizenship Education" (MCE) programs in every school 
in the country — public, private and parochial. Conference participants included Humanist 
values educators Lawrence Kohlberg and Howard Kirschenbaum and representatives of the 
federal government, foundations, PTA, NEA and the National Council of Churches. The 
recommendations that resulted from that conference which was sponsored by a Pennsyl- 
vania organization called Research for Better Schools (RBS) [a federally funded education 
laboratory in Philadelphia, Pennsylvania] have been submitted to the National Institute of 
Education, with whom RBS has a contract to research, develop and disseminate moral/citi- 
zenship education programs.... 

So shaky is the basis for MCE that much conference time was devoted to trying to 
decide what to call MCE programs so as to avoid public hostility. Here are some examples 
of the thinking of conference participants relating to this problem: 

• '"Moral/Citizenship Education' as a title can be sold; 'Moral Education' cannot. 
Avoid such red-flag slogans." 

• "We spent three conference days quibbling about the term 'Moral/Citizenship Edu- 



The Serious Seventies : c. 1977 



145 



cation.' That is a major problem." [emphasis in original] 

• "The concept of self-development (which implies moral development) is more sal- 
able and will engender less resistance than moral development." 

• "It is important to limit the parameters of what we're engaged in, if not to change 
the actual title, to avoid religious antagonisms and court action." 



The School Counselor, publication of the American Personnel and Guidance Associa- 
tion, published a special issue on the subject of "Death" in its May 1977 issue (Vol. 24, #5). 
In this issue a remarkable admission regarding the results of sex education was made which 
explains clearly the purpose of these controversial humanistic programs: to create the prob- 
lems sex ed, values ed, drug ed, and death ed were supposed to solve. An excerpt from The 
School Counselor follows: 

Helping Students Clarify Values:... 

The last goal is to help students clarify their values on social and ethical issues. An under- 
lying, but seldom spoken, assumption of much of the death education movement is that 
Americans handle death and dying poorly and that we ought to be doing better at it. As 
in the case of many other problems, many Americans believe that education can initiate 
change. Change is evident, and death education will play as important a part in changing 
attitudes toward death as sex education played in changing attitudes toward sex information 
and wider acceptance of various sexual practices. 

[Ed. Note: In light of events in the 1990s, the question arises: What does "doing better at it" 
mean? The statement "Death education will play as important a part in changing attitudes 
toward death as sex education played in changing attitudes toward... wider acceptance of 
various sexual practices" implies that our children benefitted from exposure to "wider accep- 
tance of various sexual practices," when all one has to do is survey the moral landscape to 
see the devastating effect these programs have had on our children's lives. The same applies 
to death education and its effect on children's understanding of the value of life, reflected in 
the increased number of murders carried out by youth.] 

Joanne McAuley's National Council for Educational Excellence, a national ORganiza- 
tion of concerned parents and educators, was founded in the mid-1970s and, considering the 
potential it had for holding the line on innovations taking place in American education, its 
early demise represented a real setback for parents, children, and teachers. Ms. McAuley's 
May/June 1977 issue of her newsletter, The School Bell, is proof that the National School Boards 
Association was, at one time, a strong proponent of local control, not a "sell out the locals" 
organization that in the 1990s would support site- and school-based management (taxation 
without representation) and charter schools. Excerpts follow: 

NSBA PRESIDENT TELLS BOARDS: STAND UP TO FEDERAL MEDDLING 

On March 27, George W. Smith, immediate past president of the National School Boards 
Association, warned school board members attending the NSBA convention in Houston that 



146 



"The Congress and the federal bureaucracy could become the country's master school board 
unless school board members stand up and be counted." He urged delegates to continue to 
forge a strong NSBA to convince Congress that local school board members are truly rep- 
resentative, most unselfish, and the best qualified persons to represent the local viewpoint 
in education. 

Smith said local constituencies cannot be forgotten even while the new trust is being built 
with Congress. "We must not forget our own constituency," he noted. He also advised board 
members to be aware of — and leery of — proposals for public involvement in public school 
operations that would shift decision-making authority to "vaguely defined groups of citizens 
at the school site level. " The minister from San Diego cautioned that the power to make a 
decision must never be divorced from the responsibility for making that decision.... 

He said school boards must be strong for another reason — to counter the movements 
of the courts and federal regulatory agencies into the operation of schools. "If we want 
other governmental units to stop eroding our ability to provide educational governance, we 
must exercise that ability more often and more effectively." Smith said, "Where we can, 
we should work together with all segments of the public toward the improvement of the 
schools. But," he concluded, "our responsibility is to all the people and we must view only 
the 'big picture.' " 

[Ed. Note: Smith's ability to foresee the implementation of site-based management, the down- 
grading of the importance of elected board members, and the transfer of power to public-pri- 
vate partnerships, etc., is to be lauded! While serving in the U.S. Department of Education 
this writer attempted to stop federally funded programs to train local school board members 
in conflict resolution and in how to implement effective school research.] 

"Competency Tests Set in 26 Schools: New Curriculum Shifts Teaching Methods in Dis- 
trict" was the title of an article which appeared in The Washington Post on August 1, 1977. 
Excerpts follow: 

"The materials will be standardized, the lessons will be standardized," Guines said. 
"We're taking the play out. We're taking the guesswork out. We're putting in a precise pre- 
dicted treatment that leads to a predicted response. " Guines said that the new curriculum 
is based on the work in behavioral psychology of Harvard University's B.F. Skinner, who 
developed teaching machines and even trained pigeons during World War II to pilot and 
detonate bombs and torpedoes. The basic idea, Guines said, is to break down complicated 
learning into a sequence of clear simple skills that virtually everyone can master, although 
at different rates of speed. "If you can train a pigeon to fly up there and press a button and 
set off a bomb," Guines remarked, "why can't you teach human beings to behave in an 
effective and rational way? We know that we can modify human behavior. We're not scared 
of that. This is the biggest thing that's happening in education today."... 

According to Thomas B. Sticht, Associate Director for Basic Skills of the National Institute 
of Education, similar techniques, called competency education or mastery teaching, are now 
being used in many parts of the country. Since 1973, Sticht said, they have been adopted 
by the Army and Navy for basic training and to teach entry level job skills. They have been 
used successfully in college courses, he said, and also to teach mentally retarded children 
who previously had been classed as "uneducable." "There has to be a well-defined series 
of objectives," Sticht said, "and a step by step curriculum that gives some way [through 
Mastery Tests] to know you have met the objectives."... 



The Serious Seventies : c. 1977 



U7 



But the system also has detractors who criticize it as rigid and mechanistic. "We must 
be very careful," said Lawrence G. Derthick, a former U.S. Commissioner of Education, 
"about adopting any mechanical system of producing children like objects. There are so 
many complicating factors in each child — emotional, psychological, the home background, 
the sensitivity of teachers — there's danger in trying to turn out children like nuts and bolts 
or steel pins. Human beings are more complex."... 

[Ed. Note: William Spady, "father of outcome-based education," served as consultant to the 
D.C. schools at this exact time, working out of the U.S. Office of Education's National Institute 
of Education. His position at the time is listed in his curriculum vitae as "Senior Research 
Sociologist, 1973-1978." With Spady, Thomas Sticht, associate director for basic skills at NIE, 
also worked on the failed, Skinnerian D.C. school reform. In addition, the reader is urged to 
refer to the August 8, 1982 Washington Post entry which paraphrases Sticht as follows: "Ending 
discrimination and changing values are probably more important than reading in moving 
low income families into the middle class." Of further interest, the same Thomas Sticht was 
president of Applied Behavioral and Cognitive Sciences, Inc., San Diego, California, and has 
served on the U.S. Labor Department Secretary's Commission on Achieving Necessary Skills 
(SCANS).] 

Development of Educational Technology in Central and Eastern Europe Studies: Division 
of Structures, Content, Methods and Techniques of Education was published and distributed by 
United Nations Educational, Scientific, and Cultural Organization (UNESCO: Paris: ED-77/WS/ 
133:English Edition) in November of 1977. The author is including excerpts from the "Section on 
Methods, Materials and Techniques" so that the reader will see how America 2000/Goals 2000 
restructuring is identical to education in the former Eastern European communist countries. 
The reader must also remember that American education is under the direction of UNESCO 
due to our membership in the United Nations. Excerpts follow: 

The development of educational technology in the Central and Eastern European countries, as 
commissioned by the UNESCO Secretariat, is summarised on the basis of the oral and written 
information supplied by the countries having attended the Budapest International Seminar 
on Educational Technology in 1976. The countries involved are as follows: People's Republic 
of Bulgaria, Socialist Republic of Czechoslovakia, Republic of Finland, Republic of Greece, 
Socialist Federal Republic of Yugoslavia, People's Republic of Poland, People's Republic of 
Hungary, German Democratic Republic, Union of Soviet Socialist Republics. Data were also 
supplied by the Socialist Republic of Rumania which could not participate in the Seminar. 

The factors exercising a decisive influence on the present standards of the application 
of educational technology and the strategies and rate of its further spread in the countries 
listed above are as follows: 

a. the overwhelming majority of the countries represented (8 out of 10) are socialist 
states; 

b. except for the Soviet Union and Finland, the nations concerned can be classified into 
the category of fairly developed countries from the technological point of view. 

On the basis of the above factors some of the specific characteristics of the develop- 
ment of educational technology will be underlined. It follows from the essence of the social- 



148 



ist structure of the state in the countries concerned, except Finland and Greece, that their 
educational system is centralized. This creates an extremely favourable situation for central 
state measures designed to modernize education. The socialist state possesses the means 
necessary for education... for the widespread use of methodology based on solid technologi- 
cal foundations and of the media and means of educational technology... In a situation in 
which millions of students learn and hundreds of thousands of educationalists teach, on the 
basis of unified curricula, decisions involving the development of the method to be adopted 
in education and of the media and aids of educational technology call for very thorough 
preparatory work. . . . 

The socialist countries also have a substantial advantage from the aspect of the develop- 
ment of educational technology because the training and in-service training of teachers rest 
on a uniform basis. In addition, curricula are uniform in the individual countries and for the 
different types of schools harmony between the curricular activities and the development of 
educational technology can be therefore established comparatively easily. 

[Ed. Note: A flow chart on page 11 of the study includes under "Factors Influencing the Introduc- 
tion of Educational Technology" all the components found in American educational restructuring 
as follows: Adequate Curricula; System of Objectives; Systems of Means of Assessment; Media 
System; Ensuring Appropriate Facilities (school building, hardware, media); Adequately Trained 
Teachers (basic training, in-service/further training/information); Research and Development; 
and International Cooperation.] 



1978 

Professor Benjamin Bloom, the "father" of Mastery Learning and developer of the 

Taxonomy of Educational Objectives, presented a paper entitled "New Views of the Learner: 
Implications for Instruction and Curriculum" at the 1978 Association for the Supervision and 
Curriculum Development (ASCD) Annual Conference. The paper was published in ASCD's 
Educational Leadership April 1978 issue (Vol. 35, #7). The following quote explains clearly 
the reasoning behind UNESCO's requirement that member states, including the United States, 
incorporate UNESCO's lifelong learning philosophy into their education policies: 

Continuing Learning 

Throughout the world, the instruction and curriculum in the schools is being studied 
to determine its long-term contribution to continuing learning throughout life. The Edgar 
Faure (UNESCO) report "Learning to Be" has had great influence on this thinking. The Faure 
report (Faure, 1972) stresses the many changes taking place in all societies and the difficulties 
individuals have in adjusting to rapid change in the society, in their work, and in their lives. 
Since, the report continues, it is virtually impossible to anticipate and plan for the changes 
that will take place, the only adaptive mechanism people have to adjust to and cope with 
these changes is their ability and interest in continuing learning throughout life.... 

We, who are responsible for the learning of our students for a ten-to-sixteen-year period, 
must extend our sights beyond the period that our students are in the schools or colleges. 
Until we do this and until it becomes a part of our curriculum planning, we will neglect those 
objectives of education that relate to the entire life of the individual, (pp. 574-575) 



The Serious Seventies : c. 1978 



149 



[Ed. Note: It is important to recall Bloom's definition of education: "to change the thoughts, 
actions, and feelings of students." In other words, the above recommendation very simply 
calls for lifelong brainwashing.] 

In the August 1978 issue of The National Educator Barbara Morris, editor of The Bar- 
bara Morris Report and author of many books related to education including her most recent 
book, The Great American Con Game, 15 reported on a speech given at the University of Illinois 
by Mary F. Berry, assistant secretary in the U.S. Office of Education (1977), regarding Chinese 
education. The following excerpts from Morris's report are too important to leave out of this 
book: 

Indeed, what does the U.S.A. stand to learn? Let's take a look. 

Red China has eliminated testing and grades. The U.S. is rapidly going the same route. 
Testing is being downgraded and scoffed at, and grades, where they do exist are just about 
meaningless. 

For the Red Chinese, according to Ms. Berry, truth is a relative concept. In the U.S. 
schools students are taught the same thing in "values clarification." It's called situation ethics 
and it means it's okay to lie or cheat or steal or kill when it suits your purpose. 

In Red China, according to Ms. Berry, education must serve the masses. Ditto the U.S. 
Only the semantics are different here. In the U.S. education is not designed for the benefit 
of individuals, but for society "Society" or "masses" — what's the difference? 

In Red China, according to Ms. Berry, education must be combined with productive 
labor and starts at six years of age, with children working at least one hour a day producing 
voice boxes for dolls. At the middle school level, children make auto parts as part of the 
school day. We are not at this low level, but Secretary Berry frankly admits, "We will draw 
on the Chinese model...." We are fast approaching the Chinese model. We have work/study 
programs and the U.S. Office of Education is working on development of Lifelong Learning 
programs — another Chinese import. Such programs will enable people to work and study 
their entire lives for the benefit of the state. 

Ms. Berry admitted U.S. Lifelong Learning programs are indeed drawn on the Chinese 
experience, that such programs are expected to meet "needs for intellectual fulfillment and 
social growth. It is here that the Chinese have set the pattern for the world to follow, and it 
is here that American higher education may have its last, best opportunity for growth." 

Secretary Berry lamented that the U.S. is only slowly moving into Lifelong Learning, but 
that "The community college system with its nonconventional enrollment, is one harbinger 
of change. The traditional extension program is another.... But we have to go beyond them 
and bring four year institutions and secondary institutions, as well as private instructional 
facilities into the Lifelong Learning movement." 

Ms. Berry is not talking about the future when she recommends radical proposals for 
U.S. education. A meeting of the National Council for the Social Studies, held in Cincinnati 
last November, featured several presentations on Communist Chinese education as a model 
for U.S. education. In one such presentation, teachers learned how the Red Chinese educa- 
tional system "is related to achievement of national goals and citizenship preparation... how 
cultural activities and recreational pastimes provide a vehicle for transmitting new social 
values." Does this help you understand why U.S. schools usually list "worthy use of leisure" 
or "citizenship education" as a goal of education? 

[Ed. Note: Americans, involved in what would seem to be the worthy goal of implementing 



150 



character, citizenship, or civic education in the government schools or in community groups, 
or in seeking "common ground" with groups who hold differing views on political, social, and 
religious issues, should think more than twice before becoming involved in this dangerous 
dialogue. The reason the dialogue is dangerous is evident when one studies the track record of 
nations whose citizens have allowed their governments to define morality or good citizenship; 
i.e., Nazi Germany, the Soviet Union and Red China, to name just a few.] 

Fifth Report of the National Council on Educational Research, funded by the U.S. Office 
of Education, was published in an issue spanning 1978-1979. The very clear connection drawn 
between mastery learning and direct instruction, enabling one to understand that they are 
essentially the same or at least fraternal twins, is the importance of the following excerpt: 

The Learning Research and Development Center (LRDC) at the University of Pittsburgh has 
developed instructional mastery of learning programs providing individualized instruction 
in math, science, reading, and early learning skills. These have been disseminated nation- 
ally through Project Follow Through [Direct Instruction/DISTAR] and by Research for Better 
Schools (RBS). (pp. 28-29) 



1979 

"Georgia Basic Life Process Skills, ESEA, Title II, Proposed Instructional Time in School 
Programs," prepared by Lucille G. Jordan, associate state superintendent for Instructional 
Services of the Georgia Department of Education, was submitted to the U.S. Department of 
Education for a grant in 1979. The particular curricular programs which received funding under 
Title II were jointly funded by Exxon Corporation and the U.S. Department of Education. On 
page 34 of Georgia's grant proposal an extraordinary curriculum graph/chart recommends the 
following percentages of time be spent at and between 5, 10, 15 and 18 years of age on the 
following subjects: 

Basic 3 R's: 90% at 5 yrs. Declining to 40% at 10 yrs. Declining to 30% at 15 yrs. 
Declining to 15% at 18 yrs. 

Life Process Skills: (Critical thinking, problem solving, and decision making): 5% at 
5 yrs. Increasing to 40% at 10 yrs. Increasing to 70% at 15 yrs. Increasing to 90% 
at 18 yrs. 

Citizenship and Humanities Studies: 30% at 5 yrs. Increasing to 40% at 10 yrs. Increas- 
ing to 70% at 15 yrs. Increasing to 90% at 18 yrs. 

Science and Technology: 25% at 5 yrs. Increasing to 28% at 10 yrs. Increasing to 30% 
at 15 yrs. Increasing to 55% at 18 yrs. 

Career Education: 20% at 5 yrs. Increasing to 22% at 10 yrs. Increasing to 30% at 15 
yrs. Increasing to 55% at 18 yrs. 

Health and Physical Education: 10% for ages 5 through 18 yrs. 
[Ed. Note: Please note that the "Basic 3 R's" is the only curriculum area targeted for decrease 



The Serious Seventies : c. 1979 



151 



in time spent on instruction. An official of the Georgia School Boards Association cited this 
graph as being representative of Bloom's Taxonomy. Also, why would Exxon, who was in 
the early 1980s one of the major corporations complaining about illiteracy and workers who 
are not educated in basic academics, have funded a program guaranteed to water down basic 
academics? (In a 1976 speech NEA President Catherine Barrett recommended teaching basic 
skills in only one fourth of the school day.)] 

The U.S. Congress fulfilled President Jimmy Carter's promise to the National Education 
Association by voting for a U.S. Department of Education in 1979. Now the United States which, 
heretofore, had been represented at international conferences as the unenlightened member 
of the crowd (no ministerial/socialist status), could join the "big boys" of the international 
community: the "big boys" being those countries who, since World War II, had been repre- 
sented at these policy-planning conferences by ministers of education. Interestingly enough, 
the majority of teacher members of the National Education Association were opposed to the 
creation of the U.S. Department of Education. 

The new Cabinet-level department allowed the former Bureau of Research under the 
National Institute of Education to become the Office of Educational Research and Improve- 
ment (OERI), which would be closely linked to the Paris, France-based Center for Educational 
Research and Innovation (CERI), part of the United Nations' Office of Economic Cooperation 
and Development (OECD) . OERI's assistant secretary would attend OECD/CERI meetings at 
which he would receive his "marching orders" related to international restructuring efforts 
and programs, all of which were either being implemented or would be implemented in the 
future in the United States— effective school research, site-based management, school-to-work, 
community education, Concerns-Based Adoption Model (CBAM), etc. 

A Study of Schooling in the United States by John Goodlad, Ph.D., dean of the Graduate 
School of Education, University of California, Los Angeles and associated with the Institute 
for Development of Educational Activities (I.D.E.A., funded by Kettering Foundation), was 
compiled in 1979 after being researched over a period of several years. Under Dr. Goodlad's 
direction, trained investigators went into communities in most regions of the country. The 
sample of schools studied was enormously diverse in regard to size, family income, and racial 
composition of the student body. The result of the landmark report was A Place Called School: 
Prospects for the Future (McGraw-Hill: New York, 1984) by Goodlad. 

In A Place Called School, Goodlad proposed pushing high school graduation back to age 
16 and having all students take a core curriculum until then. A new "fourth phase of educa- 
tion" would combine work, study, and community service to help ease students' transition 
into careers, higher education, and adult responsibilities. The following three books were 
additionally commissioned to be written as a result of this project: 

(1) Schooling for a Global Age, James Becker, Editor (1979), in the preface for which Dr. 
Goodlad made the following statement which has contributed to the development of parent- 
school partnerships: 

Parents and the general public must be reached, also. Otherwise, children and youth enrolled 
in globally-oriented programs may find themselves in conflict with values assumed in the 
home. And then the education institution frequently comes under scrutiny and must pull 



152 



back. 

(2) Communities and Their Schools, Don Davies, Editor (1981), in which the history of 
community education at the national and international levels (China, Tanzania, etc.) was 
covered and the participatory democratic operation of our schools and communities was rec- 
ommended (government by unelected councils) . 

(3) Arts and the Schools, Jerome J. Hausman, Editor (1980), in which the role of the arts 
in schools and in society was examined and then the focus shifted to the needs of the indi- 
vidual. Arts addressed curricular issues involved in designing and implementing school arts 
programs and, again, actual programs are discussed and analyzed. The policy implications 
of implementing the programs described in the book are then discussed along with change 
strategies for moving from rhetoric to reality. 

The four books were published by McGraw Hill. The study itself was funded by the National 
Institute of Education, U.S. Office of Education and the following foundations: Danforth; Ford; 
International Paper; The JDR 3rd Fund; Martha Holden Jennings Foundation; Charles Stewart 
Mott Foundation; Needmor Fund; Pedamorphosis, Inc.; Rockefeller Foundation; and Spencer 
Foundation. The Advisory Committee for A Study of Schooling included the following persons: 
Ralph W. Tyler, chairman; Gregory Anrig; Stephen K. Bailey; Lawrence A. Cremin; Robert K. 
Merton; and Arthur Jefferson. The study was conducted under the auspices of the Institute for 
Development of Educational Activities, Inc. (IDEA) and The Laboratory in School and Com- 
munity Education, Graduate School of Education, University of California, Los Angeles. 

[Ed. Note: In a telephone conversation with a representative of McGraw Hill Publishers in 
1982, this writer was informed that all four books were provided to the fifty state education 
commissioners/superintendents. These four books provide an accurate picture of the role 
played by the tax-exempt foundations and federal government in the restructuring/social 
engineering of American society and schools to accommodate the perceived "needs" of the 
21st century.] 

Senator Jacob Javits (NY) requested that Mr Arthur Lipper's address to the World 
Council on Gifted and Talented Children be printed in the Congressional Record, September 5, 
1979 (pp. 11904-11905). Senator Javits said in his introduction to the text of the speech: 

Mr. President, the gifted and talented children of our Nation have long been of continuing 
interest to me for they represent the future leadership of the United States. Last month, in 
Jerusalem, the World Council on Gifted and Talented Children held its Third Biennial Con- 
ference to discuss international cooperative efforts on behalf of the gifted, and to consider 
research and exchange programs to promote this most precious human resource.... At the 
Jerusalem conference, Arthur Lipper, III, an investment banker. . . and great friend of the gifted 
and talented... forcefully presented the idea that the development of the gifted represents 
the best hope for future peace and stability in the international political realm.... I urge my 
colleagues to consider carefully his remarks, and I ask that the text of Mr. Lipper's address 
to the World Council on Gifted and Talented Children be printed in the Record. 

The following excerpts from Lipper's speech reflect a total disregard for the gifted and 
talented children as individuals who might be capable of deciding for themselves what they 



The Serious Seventies : c. 1979 



153 



wish to do or become. It focuses instead on their "use" by the state to obtain predetermined 
global goals: 

Some years ago I read the following statement in a school publication: 

One of America's most tragic wastes of natural resources is the loss of potential for social 
contribution which is inherent in economically deprived, gifted children. 

Properly identified at a sufficiently early age, through culture-free, non-verbal testing, 
the very young child can be provided with the environment, economic and motivational 
support necessary for full development as a positive social contributor. 

Without such early identification, the socio-economic pressure imposed upon the eco- 
nomically deprived child who possesses superior cognitive ability is likely to result in either 
a "dropping out" or only a desire to achieve improved personal life style. The chosen or 
available means of obtaining a better life style may not be socially desirable. Therefore their 
truly constructive potential, from the standpoint of society [the State], may be forever lost. 

These thoughts seem to me to be applicable to all societies and especially to those less 
fortunate than America's. Specifically analyzed they are: 

1) Identified early enough, poor but gifted children can be given medical, financial 
and emotional support which probably will lead to the development of positive social atti- 
tudes. 

2) Not identified and assisted the kids may either not achieve their potential or may 
use their talents solely for the purpose of bettering their own lives regardless of the means 
employed or the effects on others. 

It is interesting to note the number of proudly proclaimed programs for gifted child 
identification and development which many of the Socialist and Communist countries have 
as a stated and de-facto matter of public policy. It is not strange that the capitalist countries, 
so quick to make use of all other "natural" resources — including the labor of their own and 
other countries — have been slower to recognize and secure the benefits accruing from the 
development of their own gifted children. 

Perhaps the wealthy nations have not yet sensed the compelling need for broad social 
progress, based upon the future contribution of the gifted, as have some of the non-capital- 
ist countries. 

In closing, Mr. Lipper makes some recommendations, the most alarming of which fol- 
lows: 

Establishment of boarding schools (publicly funded) to house those identified gifted children 
whose existing home life is non-constructive in terms of their development. 

[Ed. Note: Mr. Lipper, in his fervent desire to implement world socialism, seems to have forgot- 
ten that individuals, regardless of race, religion, talent, or income, should not be considered 
property of the State (human resources, human capital, etc.) to be molded and manipulated for 
the benefit of society as a whole (the State). Also, what and whose criteria will be employed 
to determine whether "home life is non-constructive"?] 

"K-12 Competency-Based Education Comes to Pennsylvania" by John H. Sandberg, direc- 
tor of teacher education for Carnegie-Mellon University in Pittsburgh, was published in the 
October 1979 issue of Phi Delta Kappan. Excerpts from the article follow: 



154 



It is too late to stop Project '81, which will run its course and probably will soon be 
forgotten, but one may hope that other states will think hard before embarking on similar 
projects.... While it is possible that I misunderstood the meaning or intent of this "major goal" 
["gain the skills and knowledge they will need as adults"], it strikes me as being unattainable 
on its face.... I would argue that we cannot "see that students acquire the competencies they 
need to be successful in the adult world" because we don't know what they are now much 
less what they will be ten years from now. . . . Exchanging courses, credits, and Carnegie Units 
for "newly defined competencies" will not eliminate this fundamental problem.... 

Finally, in the case of students who are known to be college bound and are locked into 
a curriculum that is dictated primarily by college requirements (not life-role expectancies) , 
what is going to give? Will physics give way to lawn mower repair? Chemistry to cooking? 
Trigonometry to tile setting? Will it really make any difference for these students what the 
state board requires for graduation as long as Harvard wants math through calculus and two 
years of a foreign language?... I would be happy to settle for a short list of competencies if 
I thought we could handle them: Teach children how to read, to write, to do arithmetic, to 
draw, make music, and to get along with each other. 

We are not doing these few things for enough kids now, so perhaps this is what we 
should be working on instead of making new lists of things we won't know how to do.... I 
applaud the emphasis that Project '81 gives to making better use of educational resources 
in the community. But as a Blueprint for structuring public education and for measuring 
its products, the competency-based approach embodied in Project '81 strikes me as totally 
ridiculous. A true skeptic might argue that Project '81 may be safely ignored on the ground 
that the Pennsylvania Department of Education is incompetent to chew, much less swallow, 
what it has attempted to bite off. Like other grandiose efforts to reform the schools, the 
project may generate some wind and heat and several billion pieces of paper and then go 
away, leaving all but the 12 pilot school districts untouched. 

Nevertheless, the Pennsylvania Department of Education has already demonstrated, 
with competency-based teacher education, its competence to effect change— or at least the 
illusion of change — on a large scale. Project '81 is a much more extensive undertaking whose 
potential for mischief is incalculably greater. The mischief can occur if Pennsylvanians do 
not take a long, hard look at where Project '81 is taking them. 



Information regarding the preliminary planning for school-based clinics was revealed in 
the October 22, 1979 issue of Nation's Schools Report which, under the section "Schools Can 
Offer Health Services," stated the following: 

Schools with concentrations of Medicaid-eligible students can qualify for federal money 
if they set up screening and referral programs. A joint effort by the Office of Education and 
the Health Care Financing Administration could make available to schools some of the $46 
million that will probably be spent on screening Medicaid children. 

Historically, schools have been excluded from such payments, said Robert Heneson- 
Walling, in the office of deputy commissioner of the Bureau of Education of the Handicapped. 
But regulations proposed jointly by the two agencies and published in the Federal Register 
October 4 would allow schools to do the screening and even provide treatment and get paid 
for it. 

"It's never been clear that schools might take this initiative," he told Nation's Schools 
Report. To help interested school officials get started, the two departments will publish a 
manual in November which will cover rules-of-thumb for officials to decide whether to 



The Serious Seventies : c. 1979 



155 



undertake the screening, how to do it, and how to get help from state and local agencies. 

"It's not an either/or situation for the school district," said Heneson- Walling. There are 
seven or eight degrees of involvement a school might undertake. Some schools are already 
involved in extensive health screening services, because of requirements of the Education 
for All Handicapped Children Act, so it would be a natural step for them to become primary 
health delivery centers, (p. 6) 

[Ed. Note: The United States model was given wide publicity at the United Nations/UNICEF- 
sponsored International Year of the Child Conference. The U.S. Department of Health, Education 
and Welfare served as co-sponsor of the International Year of the Child's program in the United 
States. For a glimpse into the future role of the schools in providing health care services turn 
to the 1999 entry for the "Little Red Riding Hood" version of the government/private sector 
initiatives outlined in the U.S. Department of Education/U.S. Department of Health and Human 
Services publication Together We Can. The 1999 Congressional proposal to completely fund 
the Individuals with Disabilities in Education Act would go a long way toward universalizing 
these activities. Increased school violence in the late 1990s is also leading to increases in the 
number of school psychologists who can be used for "early screening. "] 

"Big School Changes Proposed" was printed in the Bangor (ME) Daily News on November 
30, 1979. The article covered what could easily be described as futuristic plans for Vermont 
public education. It stated in part: 

Montpelier, VT — A blue ribbon commission has recommended a radical restructuring of 
education in Vermont with year-round, ungraded schools and a policy of allowing some 
students to drop out at age 13. In addition, the commission suggested creation of a 4,000- 
student, residential school for students ages 4 through 19. The state-run school would be a 
center for educational research and teacher training.... The commission recommends students 
should be permitted to drop out of formal schooling at age 13, as long as they get a job or 
enroll in an alternative training program. 

[Ed. Note: This extraordinary plan for radical restructuring seemed beyond the pale in 1979. 
However, it doesn't seem so out of reach in 1999 when most of its recommendations are being 
introduced nationwide. Year-round school has been proposed in many locales, being adopted 
in some in 1999. Boarding schools have been openly proposed by former Speaker of the House 
Newt Gingrich, but have not been widely embraced. However, the concept of allowing students 
to drop out at age 13 has its parallel in school-to-work efforts which force students to select 
a career emphasis by the end of eighth grade.] 

In the November 1979 issue of Educational Leadership, monthly publication of the Asso- 
ciation for Supervision and Curriculum Development, "Mastery Learning: The Current State 
of the Craft" by James Block was published. Excerpts follow: 

Indeed, with the help of dedicated practitioners and administrators, innovative teacher train- 
ing institutions, progressive national and international educational organizations (ASCD, 
NEA, NASA, UNESCO, IEA), leading educational publishers (McGraw-Hill, SRA, Westing- 
house Learning Corp., Random House), and powerful news media [The New York Times, 
CBS), Mastery Learning has helped reshape the face of contemporary educational practice, 



156 



research, and theory.... Entire school districts throughout North America (Chicago, Denver, 
D.C., New Orleans, Vancouver) are actively testing the value of Mastery Learning for their 
particular educational situation. 

[Ed. Note: The above quote by James Block calls to mind the 1921 entry in this book which 
chronicles the establishment of the Council on Foreign Relations. In that entry a quotation 
from Propaganda by Edward Bernays, Sigmund Freuds's nephew, also remarks on the power 
of opinion to move an agenda forward: 

It remains a fact in almost every act of our daily lives, whether in the sphere of politics or 
business, in our social conduct or our ethical thinking, we are dominated by. . . small number 
of persons... and technical means have been invented and developed by which opinion may 
be regimented.] 



Super-Learning by Sheila Ostrander and Lynn Schroeder, with Nancy Ostrander, (Dell 
Publishing Co., Inc.: New York, 1979) was published. Beneath the title on the cover is an 
explanation of Super-Learning as "New stress-free, fast learning methods you can use to 
develop supermemory and improve business and sports performance." In reality this "learning 
technique" is an updated version of ancient practices drawn from many religions and a grab- 
bag of philosophies, most presented to the chosen rhythms of certain music. The following 
are excerpts from the book: 

Georgi Lozanov (Lo-san-ov), a Bulgarian doctor and psychiatrist, who didn't set out 
to be an educator. . . did set out, following the old adage, to study the nature of man, of the 
human being in all its potential. Like just about everybody else, he concluded that we're only 
using a fraction of our capabilities. Lozanov devised ways to open the reserves of the mind 
and, as a doctor, put them to work to improve the body, to heal mental and physical disease. 
But in investigating what the whole human being can do, he couldn't help being drawn into 
creative and intuitive areas. Then still investigating, almost by necessity, he became one of 
the leading parapsychologists in the communist world. At the same time, Lozanov realized 
that with his new techniques, the average person could develop supermemory, could learn 
factual information with unheard-of-ease. (p. 9) 

...Among others, we were going to talk to a Bulgarian scientist, Dr. Georgi Lozanov, 
who had investigated a number of people with extraordinary mental abilities like Keuni's. 
Lozanov had come to claim that supermemory was a natural human ability. Not only can 
anyone develop it, he said, but one can do it with ease. To prove his point there were sup- 
posedly thousands of people in Bulgaria and the Soviet Union who were well on their way 
to acquiring supermemory of their own. (p. 14) 

...Dr. Lozanov greeted us in his office. Like the brilliant flowers in the garden outside, 
the room was awash with bright, vivid colors. As we'd already discovered at the conference 
in Moscow, Lozanov had a "holistic" sense of humor and a "cosmic" laugh like the Maha- 
rishi of TM fame. A lithe, compact man with warm brown eyes and a great cloud of curly, 
graying hair, he could be as kinetic as a handball one minute and deeply serene the next. 
"Suggestology can revolutionize teaching," he asserted. "Once people get over preconceived 
ideas about limitations, they can be much more. No longer is a person limited by believing 
that learning is unpleasant; that what he learns today he will forget tomorrow; that learning 
deteriorates with age. ". . . 



The Serious Seventies : c. 1979 



157 



He grew philosophical, "Education is the most important thing in the world. The whole 
of life is learning — not only in school. I believe that developing this high motivation — which 
comes through the technique — can be of the greatest importance to humanity. ". . . 

"What exactly is the technique of suggestology?" we asked. To create this new "ology," 
Lozanov and his co-workers had drawn from an almost dizzying array of specialties: mental 
yoga, music, sleep-learning, physiology, hypnosis, autogenics, parapsychology, drama, to 
name some. Suggestology's deepest roots lay in the system of Raja Yoga. "There is really noth- 
ing new about suggestology," Lozanov explained. "The application is the new thing."... 

Lozanov's suggestology is basically "applied" altered states of consciousness for learn- 
ing, healing, and intuitive development, (p. 17) 

[Ed. Note: Lozanov's methodology has been implemented in school systems across the coun- 
try — including Henry M. Levin's Accelerated Schools Project participants — and promoted as 
being physically healthful and psychically helpful. Its roots, as pointed out in the quotes above, 
are in techniques associated with religion and mind control. In the appendix to Super-Learn- 
ing a "Recap" is written, part of which this writer wishes to leave with the reader so that 
its connection to what is being presented to teachers and parents in 1999 under the guise of 
"research-based" theory and practice can be more readily understood: 

How does it work? A very specific kind of music has a psychophysicial effect and cre- 
ates a relaxed, meditative state in the body. Physiological research showed this particular 
music slows body rhythms to more efficient levels. This music-induced relaxation brings 
health benefits. It overcomes fatigue and enhances physical and emotional well-being. It's 
a bit like mantra meditation for it is a mind/body link that helps open up inner awareness. 
Physiological research also shows this calmed state of the body facilitates mental functioning 
and learning. The body uses less energy, so there's more for the mind, [emphasis in original] 
This particular music induces alert relaxation — alert mind, relaxed body. 

How can you, at will, retrieve what you perceive? The answer is rhythm. The connection 
is made through synchronizing rhythms. Data to be learned is chanted with intonations in 
rhythm in time to the music. The person learning breathes along rhythmically in a relaxed 
state. So data, intonations, music, breathing, and body rhythms are all synchronized to a 
specific rhythmic cycle. The rhythm, intonations, music, and breathing make links with the 
conscious mind. Harmonized rhythms strengthen the information signal. Conscious aware- 
ness of unconscious perceptions is opened up through this link so you become aware of 
what's in your memory bank. 

Finally, superlearning is about learning to learn. There is a snowballing effect once 
you begin to use the techniques. How do you go about doing superlearning on your own? 
The process is very simple. In advance, get the music, organize your material and tape it, 
reading it aloud at slow-paced intervals over the specified music. 

Then, just relax and listen to your material as you breathe along to the music. 

The roots of the above "learning" process grow deep in the mire of the ancient practices 
that have come to be called "New Age." The reader is urged to remember the rhythmic chants 
and sing-song recitations being offered as direct instruction "learning." Again, some of the 
therapeutic benefits from music and what is called "music therapy" are most often observed 
among the mentally ill and, for a lack of another designation, the learning disabled. The same 
areas from which most of the "research-based" data — often called "scientific" — draw their 
reported "success."] 



158 



Steps to Better Writing: A Systematic Approach to Expository Writing by Gene Stanford 
(Holt, Rinehart and Winston, Inc.: New York, 1979) was published. An exercise from this book 
is an example of the humanistic influence exerted in a writing textbook format: 

EXERCISE C. In each of the introductory paragraphs below, underline the thesis sentence. 
Then indicate in the blank which construction (funnel or contrast) was used. Finally, number 
the factors in the preview of main supporting points.... 

[Sample paragraph] 2. Too often parents think the way to rear a child is to give him guidance 
in the proper way to think and act. This "guidance" too often becomes an actual molding 
of his personality to suit the parent, as is seen in parental lectures beginning with the old 
cliches, "If I were you I would..." or "When I was your age I...." These parents, while they 
may have the good of the child at heart, are nevertheless making a grave mistake by trying 
to compel him to act or think in certain ways. What the teen needs instead is a type of love 
which gives him the freedom and confidence to develop his own opinions in matters such 
as religion, morality, and choice of friends, (p. 87) 

[Ed. Note: The 1991 article entitled "Seniors' Church Attendance" from Education Week (June 
12, 1991) shows how successful this type of "academic" curriculum has been in changing our 
children's values.] 

Endnotes: 

1 T.I.L.L., 67 East Shore Road, Huntington, N.Y. 11743 

2 See 1998 entry concerning Newt Gingrich's statements about the future of textbooks. Also, see 1974 entry for A Performance 
Accountability System for School Administrators by T.H. Bell. 

3 This quote is taken from Danielson's 67-page booklet, Practitioner's Implementation Handbook [Series]: The Outcome-Based 
Curriculum, 2nd Ed., by Charlotte Danielson (Outcome Associates, Princeton, NJ, 1992). Charlotte Danielson is presently 
employed by the Educational Testing Service, Princeton, New Jersey. 

4 The Maine Facilitator Center was funded by the U.S. Department of Education and its primary role was to disseminate feder- 
ally funded National Diffusion Network programs. Since 1994 the NDN has been defunded and its functions have been taken 
over by the U.S. Department of Education's regional laboratories. 

5 Excerpt taken from The Leipzig Connection mentioned and referenced earlier in this book. 

6 Another View of Philosophy and Culture: Back to Freedom and Dignity by Francis Schaeffer (Crossway Books: Wheaton, 111., 
1989). 

7 This particular "who shall survive" activity is still in use in 1990s NDN programs. 

8 Child Abuse in the Classroom may be purchased for $10.00 by sending a check to: Eagle Forum, Pere Marquette Press, PO 
Box 495, Alton, IL 62002 

9 The National Diffusion Network catalog, Programs that Work, may be purchased for $16.95 by calling Sopris West at 1-303- 
615-2829. 

10 Audiocassette of Lessinger's speech (#612-20129) can be ordered from: ASCD, 1703 North Beauregard St., Alexandria, VA 
22311-1714. 

11 Sayer, George. Jack: A Life ofC.S. Lewis (Crossway Books: Wheaton, 1994). 

12 Lewis, C.S. "Our English Syllabus" in Rehabilitations and Other Essays (Oxford University Press: London, 1939). 

13 Ibid. 

14 Hooper, Walter, Ed. "Learning in War-Time," in The Weight of Glory and Other Addresses (Macmillan Publishing Co., New 
York, 1980). 

15 See Resources page for ordering information for Barbara Morris's The Great American Con Game. 



7 



THE "EFFECTIVE" EIGHTIES 



L reducing a definite or desired result [emphasis added]," the first definition for the 
word "effective" found in Webster's Dictionary, is the appropriate definition for the word "effective" as 
it is used in the title Effective School Research (ESR) or Effective Schools (ES) — which will characterize 
much of "The Effective Eighties." This is particularly true as it relates to the Skinnerian "method," 
often referred to as "What Works" education, more commonly known as outcome/performance/results- 
based education and mastery learning/direct instruction. The evidence which links OBE to ESR is 
irrefutable: "Outcome-Based Education incorporates the findings of the Effective Schools Research, 
linking them together into a comprehensive and powerful model," stated Charlotte Danielson, M.A. 
in her Practitioner's Implementation Handbook [Series]: The Outcome-Based Curriculum. 1 

Whether Effective Schools Research applied to education has been truly "effective" lies in the eye of 
the beholder and in the beholder's definition of the purpose of education. 2 Disturbing reports continue 
to surface regarding steep declines in academic test scores in schools which have restructured using the 
various components of Effective Schools Research. These scores are from schools which, while using 
ESR, have not yet shifted from norm-referenced (competitive) tests — which compare students' results 
amongst their peers and which use "A-B-C-D-F" grading — to performance-based (non-competitive) 
teach-to-the-test assessments. Examples are the "open book test" and "authentic assessment" — which 
have the students competing against no one but themselves, giving them as much time as necessary 
to "master" the competencies. 

Once the non-competitive, performance-based assessments are in place, the scores will naturally 
go up, thus allowing the social change agents to breathe a sigh of relief. The "low test score cat" will 
have been shoved back into his bag and the media will shout from the rooftops how well our chil- 



159 



160 

dren are doing on the new performance-based assessments! As usual, everyone will go back to sleep 
believing all is well — if they were ever awake to the problem in the first place. 

The pre-non-competitive, performance-based academic test score decline should come as no 
surprise to the change agents in charge of "effective" schools. The "father" of the Effective Schools 
Research method, or Skinnerian mastery learning, the late Prof. Benjamin Bloom, said in his 1981 
book All Our Children Learning: "The purpose of education and the schools is to change the thoughts, 
feelings and actions of students." An even more astonishing statement was made in The Effective School 
Report by one of the leading change agents, Thomas A. Kelly, Ph.D.: "The brain should be used for 
processing, not storage." With this educational emphasis, academic test scores could have done noth- 
ing but decline. If there is anyone reading this book who questions the validity of this writer's claim 
that America has been "deliberately dumbed down," I urge them to keep these quotes in mind. 

Let me pose the following question: How could the writer of this book have written this book 
had her brain not been used for storage? Could the answer to that question be the reason why the 
social change agents do not want the brain to be used for storage? 

The educationists understand full well what they are doing, since the use of Skinnerian/Pav- 
lovian operant conditioning (mastery learning/direct instruction) does not allow for the transfer of 
information. All they need is a brain which knows how to immediately process predetermined bits 
and pieces of information — often nothing more than symbols, simple words or paragraphs, the knowl- 
edge of which can be easily measured — as those pieces of information relate to workforce training or 
a menial job; i.e., pushing a button like a pigeon in Skinner's experiments was trained to push the 
lever to get its kernel of corn. 

That is not learning; that is training to the point of automaticity, brought about by the above- 
mentioned animal training. Neither is this training the same as rote learning or memorization. Rote 
learning or memorization requires storage of information in a brain which has used some reflective 
thinking to devise a method to recall it. Reflective thinking is essential for learning, allowing the brain 
to spend time examining the essence of the material with which it is presented. 

If Bloom's and Kelly's quotes define what those in charge of educational restructuring are look- 
ing for in terms of "results," those same educationists should not be at all surprised or concerned 
about low test scores. All they have to do is wait for the new performance-based assessments to be 
put into place nationwide; after which the public — some of whom have been vociferously opposed to 
outcome-based education — will get off their backs. 

Activities related to education in "The Effective Eighties" were not geared to improving the ac- 
ademic standing of our children. Quite the contrary; every single major government- or foundation- 
funded activity had as its goal implementation of a global workforce training agenda. 

In 1984 Secretary T.H. Bell approved a grant in the amount of $152,530 to the Far West Labo- 
ratory for Educational Research and Development (now known as Ed West) at which William Spady 
was the director. This grant was to carry out a project entitled "Excellence in Instructional Delivery 
Systems." The cover letter from the Utah superintendent of schools to Secretary T.H. Bell to which 



The "Effective" Eighties 161 

the application for grant funding was attached said, "This [the research as a result of the grant] will 
make it possible to put Outcome-Based Education in place, not only in Utah, but in all schools of the 
nation." The final report (evaluation) to the U.S. Department of Education regarding the results of 
this project stated: 

The four models of instructional organization outlined in this casebook are difficult programs 
to implement. The practices of the ten schools described in the case studies are indeed 
commendable. Yet we do not offer these ten case studies as "exemplary schools" deserving 
emulation. 3 

So, what did the change agents do? They put OBE "into every school in the nation." 

Such misuse of taxpayer dollars is waste, fraud, and abuse which cries out for a Congressional 
investigation. Obviously, the intentions of those involved in this grant had nothing to do with the 
purpose of the project spelled out in the grant applicaton: "To make available to America's educators 
practical information about what really works well, why it works well, and how it can be made to work 
well in their local sites." (pp. 6-7) The real purpose of this project was to propose a radical redesign 
of the nation's education system from one based on inputs to one based on outputs; from one oriented 
toward the learning of academic content to one based on performance of selected skills, necessary for 
the implementation of school-to-work, a redesign thoroughly discussed in this book. 

Dr. Brian Rowan, a sociologist who served as co-principal investigator with the above Robert 
Burns on this most fraudulent of federal grants — Utah's "Excellence in Instructional Delivery Systems 
Project" — explained clearly how deceptive are the claims of those who promote OBE and effective 
school research in a paper entitled "Shamanistic Rituals in Effective Schools." (See Appendix XXVI.) In 
presenting his paper before the American Educational Research Association prior to his participation 
in the Utah grant evaluation, Rowan knew full well the project misrepresented itself even before he 
participated. But, to give credit where credit is due, Rowan at least put in writing the truth about OBE 
and Effective Schools Research; a truth, which, unfortunately, was made available to only a very small 
segment of the educational establishment and has remained hidden from the public. 

"The Effective Eighties" saw President Ronald Reagan, who had accused the Soviet Union of 
being an "Evil Empire," signing education agreements with the Soviet Union — agreements which are 
still in effect — and setting up a Task Force on Private Sector Initiatives in the White House which, 
in effect, started the ball rolling for public-private partnerships (corporate fascism) which are at the 
heart of the Carnegie Corporation/Marc Tucker/New American School Development Corporation's 
school-to-work agenda. It is ironic that the U.S. Department of Education, under the stewardship of 
a Republican administration, effectively transformed the essential character of the nation's public 
schools from "teaching" — the most traditional and conservative role of schools — to "workforce train- 
ing" — perceived as liberal and "progressive." 

Secretary T.H. Bell fired Edward Curran, a traditional educator who headed up the National 
Institute of Education and who recommended to President Reagan that NIE — the heart of the "rot" in 



162 



education — be abolished. Abolishing NIE required only that Secretary Bell give his approval, while 
abolishing the Department of Education — an election promise President Reagan had made which was 
incorporated into the Republican Party Platform — required the difficult to obtain approval of Congress. 
Once Ed Curran was gone, there was no further resistance to the plans of those members of the ad- 
ministration and their corporate cronies (school-business partnerships) who wished to transform the 
nation's schools from academics to the polytech education being implemented today. 

As a conservative Republican, it has not been easy to come to the above conclusion regarding the 
role of the Republican Party in the "deliberate dumbing down" of America. At the same time, I must 
add that it is very likely the Democratic Party would have been even more steadfast in implementing 
the same agenda, had it been in a position to do so. This march to destruction seems to join all forces 
under its banner. 



1980 

Schooling for a Global Age edited by James Becker (McGraw Hill: New York, 1980) was 
published. The preface by Professor John Goodlad is excerpted here: 

Parents and the general public must be reached also [taught a global perspective] . Otherwise, 
children and youth enrolled in globally-oriented programs may find themselves in conflict 
with values assumed in the home. And then the educational institution frequently comes 
under scrutiny and must pull back. 



Educational Goals: Studies and Surveys in Comparative Education was prepared for 

the International Bureau of Education, United Nations Educational, Scientific, and Cultural 
Organization (UNESCO: Courvoisier S.A.: La Chaux-de-Fonds, Switzerland, 1980). Charles 
Fitouri wrote the following introduction to this document which clearly reflects the influence 
of UNESCO on education: 

The crisis of education, about which so much has been written since the early 1960s, may 
be seen as the source of the need for change and innovation which has been felt and ex- 
pressed since the early seventies. But what kind of innovation? And for what purpose? For 
what blueprint of society and to train what kind of man? This book on educational goals is 
based on such questions as these. 

The following excerpts from Educational Goals identify the roots of American education re- 
structuring: 

The International Bureau of Education's interest in the problem of educational goals and 
theories does not arise from pure philosophical speculation or a simple academic exercise. It 
has been aroused, and even imposed, by a confrontation with certain realities which sprang 
up in this area when, in the early 1970's, the International Bureau of Education (IBE) set out 
to examine the process of educational innovation in order to attempt to analyse it and, so 



The "Effective" Eighties : c. 1980 



163 



to speak, expose its inner mechanism. It was thus that the first studies undertaken made it 
possible to establish with a great degree of certainty that any innovation in education implies 
an orientation in the field of values and, by virtue of this fact, involves the basic problem 
of educational goals.... 

...All the pedagogical movements of the twentieth century which preach equality of 
educational opportunity, after having proclaimed it to be a right for everyone, are more or 
less founded on the various socialist schools of thought which began to emerge at the end 
of the eighteenth century and have since marked the course of the nineteenth century and 
a good part of the twentieth.... 

This interest led to the report of the International Commission on the Development 
of Education, entitled Learning to Be, commonly referred to as the "Faure Report." In his 
statement introducing this report, the president of the commission was anxious to point out 
that the latter had based its deliberative efforts on the following four principles: 

The existence of an international community which... is reflected in common aspirations, 
problems and trends, and in its movement towards one and the same destiny; "belief in 
democracy"; "the complete fulfillment of man" as the aim of development; and finally, 
the need for "over- all, life-long education." 

In so doing, the International Commission on the Development of Education was 
in danger of succumbing to the illusion — generous though it may be — of the existence of 
universal and universally accepted goals. Indeed, although the four principles were unable 
to win unanimous support from the international community, one of them, at least, did 
not raise opposition of any sort, even if it happens to be the one which is most commonly 
violated in practice. Referred to here is the belief in democracy.... The report places special 
emphasis on this, stating that: 

Strong support must be given to democracy, as the only way for man to avoid becoming 
enslaved to machines, and the only condition compatible with the dignity which the intel- 
lectual achievements of the human race require; the concept of democracy itself must be 
developed, for it can no longer be limited to a minimum of judicial guarantees protecting 
citizens from the arbitrary exercise of power in a subsistence society. Furthermore, and in 
conjunction with this, more support must also be given to educational requirements, for 
there cannot — or will not — be a democratic and egalitarian relationship between classes 
divided by excessive inequality in education; and the aim and content of education must 
be re-created, to allow both for the new features of society and the new features of de- 
mocracy. 

. . .This world solidarity has its prerequisites and conditions which have been described 
by UNESCO in the following terms: 

[T]here must first of all be agreement on a system of values and a willingness to embark 
on a joint examination of their implications: values of justice, equality, freedom and fel- 
lowship. These will be based on a new awareness in two respects, namely: recognition of 
the unity of mankind, with all its diverse peoples, races and cultures, and the assertion 
of a desire to live together, actually experienced not simply as a necessity for survival or 
coexistence but as the deliberate choice of fashioning a common destiny together, with 
joint responsibility for the future of the human race. 

In such circumstances, the consciousness of the world's solidarity, which is so much 
needed, can only be the fruit of an active and continuous process of education, which must 
be put in hand without delay and to which UNESCO must make its full contribution. 

...The participants, having agreed to develop and stimulate reflection on educational 



164 



goals, considered that: 

1. UNESCO should give particular attention to the developments at regional and in- 
ternational levels, of comparative studies on educational goals, from the point of 
view both of their influence on the development of educational theories (historical 
dimension) and of their impact on educational realities (sociological dimension); 

2. multidisciplinary teams, comprising philosophers, historians, teachers, sociologists, 
economists, psychologists, planners, etc., should be involved in this work of re- 
flection and research; 

3. the themes listed below should be regarded as priority themes: 

3.1 Determination of the goals underlying education for international understanding 
and peace. 

3.2 UNESCO's contribution to the formulation and development of an international 
dimension of education based on a certain conception of modern man. 

3.3 Implicit goals and explicit goals of education. 

3.4 Role of goals in the emergence of a new type of relationship between school 
and society. 

3.5 Formal education and non- formal education as they relate to the explicit goals 
and implicit goals of education. 

3.6 Elucidation of a dialectic of educational goals and cultural and educational policy: 
philosophy of education and ideology. 

3.7 Ways of determining educational goals in certain contexts where there is a clash 
between tradition and innovation. 

3.8 Elucidation of educational goals on the basis of the child's real needs taking 
account of the economic, social and cultural environment. 



"Policy about Policy: Some Thoughts and Projections" by Luvern L. Cunningham was 

published in the November 1980 issue of The Executive Review (Institute for School Execu- 
tives: The University of Iowa, Vol. 1., No. 2). A footnote on page 1 stated, "The paper was the 
Walter D. Cocking Lecture presented at the 34th Annual National Convention of Professors 
of Educational Administration in August, 1980, at Old Dominion University." Some excerpts 
from Cunningham's "Policy about Policy" follow: 

Local school officials and their constituencies will be facing several critical policy matters 
in this decade (some new, some enduring) . These issues will test severely the structures and 
processes of policy making within local districts.... Local and state authorities will soon have 
to develop fresh policies in regard to: the first four years of life; life-long learning; secondary 
education; equity; classroom control and discipline; global education; languages; human 
resource development; incentives; testing; and resource acquisition and allocation. I would 
hope, therefore, that a good many boards would develop policy about policy... 

The object of my concern is the improvement of practice within the local units of gov- 
ernment (local school districts) where educational policy is developed.... 

The structure and processes of local district governance and management have changed 
little over the past century. In many places they appear to be creaking and groaning at the 
seams and at least warrant inspection if not reform.... 

Additional steps must be taken to permit better integration of experts into policymak- 
ing.... The new professions of civil strategist and systems analyst demonstrate rather well 
what I have in mind on a broader scale. 

The several proposals for changing the governance and management of local school 



The "Effective" Eighties : c. 1980 



165 



districts which follow are intended to achieve practical objectives. 

(1) Pursue policy development processes which are open to, indeed, require the partici- 
pation of citizens and professionals. 

(2) Extend and intensify the citizen role in education policy development and policy 
making. 

[Ed. Note: The writer has selected the two proposals above in order to emphasize Dr. Cun- 
ningham's influence on the dilution and diminution of the role of elected school board mem- 
bers. This is the philosophy which Dr. Cunningham took into Kentucky when he served as a 
consultant during that state's education reform. 

Implementation of the above two policies has been responsible for a subtle, gradual, and 
unhealthy trend towards the council form of government found in undemocratic, socialist 
countries. Before we know it, if Americans do not vociferously object to this gradual erosion 
of the elective process, their towns and cities will be run by unelected citizens who are ac- 
countable to absolutely no one, since unelected people cannot be removed from (voted out 
of) office. This writer has always wondered: If members of our communities want so much to 
serve the community, why don't they run for office? Why do we see so many people signing 
up to be members of unelected task forces and councils? Is it because they don't want to run 
the risk of not winning, or is it that an appointed position is one which requires little or no 
accountability and they won't have to answer for their mistakes?] 

Cunningham continues: 

Periodically, in the history of American education leaders have suggested that boards 
of education have become anachronisms, have fulfilled their mission, should be reformed, 
or quietly fade away. There was a period at the turn of the century when the notion of abol- 
ishing school boards attracted support from the then-emerging professions of educational 
administration joined by elites from the business and higher education communities. The 
theme was revised and revitalized in the late 1920's, principally by Charles Judd, then chair- 
man of the Department of Education at the University of Chicago.... 

These proposed changes are based essentially on the recognition that the complexity of 
today's public institutions is such that they are often not governable or manageable within 
present approaches to their governance and management and are likely to be less so in the 
future. . . . My proposals therefore retain the principles of local control and policy determination 
by citizens but change the conditions under which policy is determined and administration 
is performed.... It is expected that the present pattern of school board behavior and ideol- 
ogy be altered in favor of practices which will allow sounder, more rationally determined 
school district policy. 

The following proposals are amongst those included under "Synopsis of the Policy about 
Policy Proposals": 

(1) That local boards of education develop discrete and definitive policy about policy, 
some of which are implied by the subsequent proposals for change in the governance 
and management of local school districts. 

(2) That educational policy become the primary and continuing policy focus of local 
school officials as distinct from personnel, business, and physical facilities.... 

(4) That policy making agenda be prepared two to three years in advance to frame the 
work of the board, administrative staff, professional organization leaders, student 



166 



leaders, and citizen groups.... 

(7) That employee salary and wage determination prerogative now retained by boards 
of education of local school districts be moved to the state level. 

(8) That representatives of professional groups (teachers and administrators organiz- 
ations) for local school districts become members of the local boards of education 
and assume policy and accountability responsibilities equivalent to that office.... 

(11) That one or more states pass special legislation allowing school districts to suspend 
(for a period of time) current statutes, rules and regulations for their governance 
and management; and 

(12) That processes of policy development and their enunciation as well as the processes 
of management be designed to include genuine, sustained student, parent, citizen, 
and professional educator involvement. 

Yehezkel Dror suggests that for purposes of current policy making, the following ele- 
ments should be standard features of a preferable policy-making method: 

(1) There should be some clarification of values, objectives, and criteria for decision 
making.... 

(2) Explicit techniques, such as simulation and the Delphi method, should be used 
as far as they are appropriate, and knowledge from various disciplines should be 
brought to bear on the issues involved.... 

The weight of proposal one is not to locate ways to reduce the interference or meddling 
on the part of school board members in the everyday administration of the school system. The 
everyday meddling (or involvement if you prefer) of school board members in administrative 
matters that occurs across the country is understandable. In fact, board members believe 
deeply that they are serving their constituents when they interfere and meddle. Administrators 
often have little understanding of or patience for this sense of responsiveness that board 
members possess. As a consequence considerable institutional energy goes into disputes over 
the boundaries of board member and superintendent authority and responsibility. 

Thus proposal one is based on the premise that both policy and administrative activity 
can be more efficient and effective if there is a substantial alteration in the ground rules for 
those activities.... 

There are constitutional, statutory, and other legal problems associated with the pro- 
posals. If taken seriously they may lead to rather general re-examination of the constitutional 
and statutory provisions for the governance and management of local districts. For example, 
many current school board responsibilities may need to be managed in other ways. Deter- 
mining salaries and wages of school personnel, constructing (even naming) school buildings, 
authorizing the issuance of bonds, setting school tax elections or referenda of other sorts, 
the approval of federal applications for funding, and other such decisions may be designated 
as responsibilities of other governments. 

The removal of the collective bargaining function from local districts and placing it at 
the state level would clear out underbrush and permit boards of education and top school 
officials to focus more directly upon pedagogical and learning policy. 

The work of Dr. Cunningham seems to have laid the groundwork for school site-based 
management which has reduced the role of elected school board members to rubber stampers of 
decisions made primarily by school personnel and carefully selected politically correct members 
of the community. Dr. Cunningham served as a consultant to the State of Kentucky's Educa- 
tion Reform Commission in 1989. The following quotes are taken from a memorandum dated 
November 2, 1989 from Luvern L. Cunningham and Lila N. Carol of Leadership Development 



The "Effective" Eighties : c. 1980 



167 



Associates regarding Preliminary Models of Governance for Kentucky. The recommendations 
should come as no surprise to those who have read the above excerpts from Cunningham's 
1980 paper. 

Each governance model is designed to facilitate the achievement of equal educational op- 
portunity for every learner enrolled in the public schools of the State of Kentucky. 

Model One, "Total Educational Governance System for Lifetime Learning, Structural 
Features and Highlights" — 

Policymaking responsibility for a total educational system including higher education 
is concentrated in a single Board of Regents. A Chancellor would be selected as the adminis- 
trative head of a newly integrated system encompassing provisions for lifetime learning. Local 
school districts would be dissolved and site-based control and management instituted. 

This model is a complete system of governance for a state system of education.... It is 
comprehensive and all inclusive, allowing for a thorough approach to accountability. 

The governance structure is designed to meet each individual's lifetime public learning 
needs beginning with the early years of life through the retirement period. Persons would 
be expected to continue a lifetime of learning consistent with the requirements of the 21st 
century, as portrayed so clearly in business and industry sponsored studies as well as those 
produced through citizens groups and public sponsorship. Lifetime educational counseling 
and lifetime curriculum development would be challenging new responsibilities of the inte- 
grated system. 

This bureau is the central administrative center for lifetime learning. Lifetime learning 
is a much larger expectation for each citizen than we have acknowledged through policy in 
the past. Compulsory education statutes usually bracketed the ages of five through sixteen as 
our expectation for free public schooling in the United States. Lifetime learning on the other 
hand suggests a reconsideration of the compulsory education requirements pushing taxpayer 
responsibility both downward and upward through the age ranges. Obviously lifetime learning 
has tremendous implications for educational finance moving away from traditional concepts 
of funding toward new ideas such as individual entitlements to be expended throughout the 
lifetime. Each citizen would have a lifetime learning account to draw on as needed. 

[Ed. Note: For a broad view of what this last paragraph could imply, please see "When Is As- 
sessment Really Assessment?" in Appendix XI. Many of Luvern Cunningham's proposals were 
incorporated into Georgia's application to the New American School Development Corporation 
entitled "The Next Generation School Project." In the 1999 entry dealing with a letter to the 
editor in Athens, Georgia, some of the details of Georgia's application— which later became a 
design which was offered by the Georgia 2000 Partnership for school system status leading to 
grant receiving and education/business partnering under Goals 2000— are stated. The reader 
should compare that letter's contents to Cunningham's proposals.] 

Course Goals Collection was completed in 1980-81 by the U.S. Department of Education's 
Northwest Regional Educational Laboratory in Portland, Oregon, having been initiated in 1971 
as the Tri-County Course Goal Project. According to the price list for the collection, 70,000 cop- 
ies were in use throughout the United States in 1981. Descriptors within the Collection state: 
"The collection consists of fourteen volumes with 15,000 goals covering every major subject 
taught in the public schools from K-12." 

Course Goals Collection, based on "the theoretical work of Bloom, Tyler, Gagne, Piaget, 
Krathwohl, Walbesser, Mager, and others," blatantly recommends the use of Mastery Learning 



168 



when it states: "The K-12 Goals Collection provides a resource for developing diagnostic-pre- 
scriptive Mastery Learning approaches, both programmed and teacher managed." 

This collection also advocates the use of Management by Objectives and Planning, Pro- 
gramming and Budgeting Systems when it asserts: 

Perhaps the greatest need addressed by the project is for a sound basis for accountability 
in education... assistance such as Planning, Program, Budget and Management systems or 
even general concepts such as Management by Objectives. 

The use of values clarification and behavior modification is also encouraged when the Goals 
Collection points out that: 

Value goals of two types are included: those related to processes of values clarification; 
secondly, those representing values, choices that might be fostered in the context of the 
discipline. 

Goals states under "Content" that there is to be none because 

[Established facts change, causing many fact-bound curricula to become obsolete during 
the approximately five-year lag between their inception and their widespread dissemination, 
and social mobility and cultural pluralism make it increasingly difficult to identify the im- 
portant facts. 

The Course Goals Collection is evidence of illegal federal involvement in curriculum devel- 
opment. The extent of its use nationwide in 1981 is obvious since 70,000 copies were distributed 
and there were only approximately 16,000 school districts in the nation. Is it any wonder all 
states now have the same goals? 

Charlotte Danielson, M.A., in the appendix to her Practitioners Implementation Hand- 
book [series]: The Outcome-Based Curriculum, 2ndEd. (Outcomes Associates; Princeton, N.J., 
1992) entitled, "Classification System for the School Curriculum" acknowledged her use of the 
Course Goals Collection developed by the Tri-County Development Project. In the "Introduction 
to Outcome-Based Education" to Danielson's Handbook she inextricably connects Outcome- 
Based Education to Effective Schools Research when she says: 

Outcome-Based Education is a system for the organization and delivery of the instructional 
program in elementary and secondary schools which assures success for every student 
[emphasis in original]. It incorporates the findings of the Effective Schools Research, link- 
ing them together into a comprehensive and powerful model. Educators in outcome-based 
schools know that if they organize their schools properly, and offer high-quality instruction, 
all students will succeed with no change in standards, (p. 1) 

[Ed. Note: Probably the most important quote involving the above Goals Project— at least as 
it relates to the definition of scientific, research-based instruction — is one found in Indiana 
Senator Joan Gubbins's excellent report entitled "Goals and Objectives: Towards a National 
Curriculum?" prepared for the National Council on Educational Research, September 26, 1986 
as part of an investigation of the NWREL Goals Project. On page 16 of her report is the fol- 
lowing statement: 

I believe the personal valuing goals (included in the Goals Project) would be more properly 



The "Effective" Eighties : c. 1981 169 

classified as behavior modification procedures. Therefore, the Project's definition of behavior 
modification is illuminating: 

[Procedures used in programs of behavior modification or behavioral management 
are based on principles derived from scientific research (e.g., stimulus-response-rein- 
forcement) . 

Americans supporting the use of mastery learning, outcome-based education, and direct 
instruction to teach reading, take heed! When advised that such instruction is "scientific, 
research-based," remember the above U.S. Department of Education definition!] 

1981 

"A Broad-Gauged Research/Reform Plan for Secondary Education — in the iRADition of 

the Eight- Year Study," proposed by The Project on Alternatives in Education (PAE) in 1981, was 
submitted for consideration and received funding from the U.S. Department of Education and 
the National Education Association. The project was conducted by leading American change 
agents, including Mario D. Fantini, John Goodlad, Ralph Tyler, Ronald S. Brandt, Herbert J. 
Walberg and Mary Ann Raywid. Explanatory cover sheet of the grant proposal was submitted 
on "The John Dewey Society" letterhead. PAE called for publicly funded choice schools using 
"effective school [outcome-based education] research" and principles of the Eight-Year Study. 
These called for "inculcation of social attitudes, development of effective methods of think- 
ing, social sensitivity, better personal-social adjustment, acquisition of important information, 
consistent philosophy of life," etc. 

In 1981 Office of Educational Research and Improvement: An Overview was PREpared by 
staff members of the U.S. Department of Education for Assistant Secretary Donald Senese's 
use at Congressional budget hearings. Excerpts from the paper follow: 

Federal funds account for approximately 10 percent of national expenditures on education. 
The Federal share of educational research and related activities, however, is 90 percent of 
the total national investment. 

The Committee on Coordinating Educational Information and Research (CCEIR), Council 
of Chief State School Officers (CCSSO), in its 1980 Mission Statement defined "research" as: 

For purposes of brevity, the term "educational information and research" will be used to 
include basic and applied research, development, improvement, evaluation, policy study, 
information systems development, data reporting and analysis, and the dissemination of 
knowledge and information gained from such inquiry. 

[Ed. Note: In other words, just about everything that goes on in the classrooms of American 
public schools, with the exception of salaries, school buildings, buses and the purchase of 
equipment, is either a direct or indirect result of funding by the U.S. Department of Edu- 
cation — as research! 

Congress has recognized the federal government's supposed limited authority in edu- 
cation. In 1970 ESEA: General Education Provisions Act was amended to include a "Prohibition 



170 



against Federal Control of Education." This section prohibits the federal government from 
exercising any "direction, supervision, or control over the curriculum, program of instruction, 
administration or personnel of any education institution, school, or school system, or over 
the selection of library resources, textbooks, or other printed or published instructional ma- 
terials by any educational institution or school system." The Education Amendments of 1976 
extended this provision to all programs in the Education Division of the U.S. Department of 
Health, Education and Welfare. 

Although such a prohibition sounds like a restriction against federal control, in effect 
it leaves out more than it includes; the most important component of federal control being 
"research" and "development." Who cares whether the federal government is not allowed to 
extend its long arm down into the choice of curriculum or the selection of resources? The point 
is that the federal government itself was involved in the development of that curriculum or 
those resources, teacher training, test development, etc., at one of its research labs or centers, 
or paid to have it developed by school systems across the nation.] 

Association for Educational Computing and Technology (AECT — a spin-off of the National 
Education Association) received an $855,282 federal contract for "Project BEST" (Better Edu- 
cation Skills through Technology) in 1981. An explanatory brochure states: 

WHAT IS PROJECT BEST? Project BEST is a cooperative effort involving both the federal, 
state, and local government and the private sector in the planning and use of modern infor- 
mation technologies to improve the effectiveness of basic skills, teaching and learning. 

On a sheet circulated within the U.S. Department of Education as an internal document 
entitled "Project BEST Dissemination Design Considerations," there appeared the following 
information: 

PROJECT DESIGN FEATURES 

What We Can Control or Manipulate? = State participation/selection process 

Role of advisors 
Content of program 
Training of state leaders 
Resource people utilized 
Basic skills content areas emphasized 
Perception of need to use technology 

BEST'S promotional flyer blatantly discussed how the project would serve not just in 
education, but for other program areas as well, to implement the national/international man- 
agement system (MBO, PPBS, TQM): 

In addition, the State Team approach and the communications network with profes- 
sional associations and other groups established by the project will serve as a model for the 
states in implementing similar efforts in other areas of education, or in such program areas 
as health, human services, housing, transportation, etc. 

William Spady, at that time serving as executive director of the Association of School Ad- 



The "Effective" Eighties : c. 1981 



171 



ministrators, and Dr. Shirley McCune, serving as head of the State Services Division, Denver, 
Colorado, were listed as members of the advisory board for Project BEST. 

[Ed. Note: Project BEST was used as a vehicle to assist in "State Capacity Building"— a process 
to better enable school oficials, administrators, legislators and others to provide supportive 
documentation and "research" for school reform efforts. State Capacity Building grants have 
been funded by the U.S. Department of Education and are usually matched with state budget 
funding.] 

All Our Children Learning by Professor Benjamin Bloom (McGraw Hill PimisHing Co.: 
New York, N.Y., 1981) was published. Excerpts follow: 

In an attempt to maximize curriculum effectiveness... curriculum centers throughout the 
world have begun to incorporate learning-for-mastery instructional strategies into the redesign 
of curriculum, (p. 123) 

According to Bloom: 

[T]he International Association for the Evaluation of Educational Achievement (IAEEA) is an 
organization of 22 national research centers which are engaged in the study of education.... 
This group has been concerned with the use of international tests, questionnaires, and other 
methods to relate student achievement and attitudes to instruction, social and economic fac- 
tors in each nation. The evaluation instruments also represent an international consensus 
on the knowledge and objectives most worth learning, (pp. 33-35) 

Another extremely important statement by Bloom in All Our Children Learning is found 
on page 180: "The purpose of education and the schools is to change the thoughts, feelings 
and actions of students." 



Human Intelligence International Newsletter in its March/April 1981 issue REported 
that critical thinking skills research was taking place within the United Nations Educational, 
Scientific and Cultural Organization (UNESCO), the Office of Economic Cooperation and Devel- 
opment (OECD), and the World Bank which planned on "increasing the bank's international 
education and training budget to about $900 million a year." 4 The newsletter related that the 
U.S. Department of Education's National Institute of Education "has awarded a three-year 
contract totaling approximately $780,000 to Bolt, Beranek and Newman, Inc., of Cambridge, 
Massachusetts to analyze current programs of instruction on cognitive skills. " The July/August 
issue of the newsletter contained the following: 

The search for new referential systems and new values modifying existing beliefs should be 
based on modern microbiology. A scientific approach should be free from doctrinal bias, and 
its findings applicable to all man-kind. Ideological confrontations between East and West, 
Marxism and Liberalism, Arabs and Jews do have economic, historical, and political bases, 
but no biological basis. These antagonisms have been created by the human brain and could 
be solved by the wiser brains of future man. 



172 



[Ed. Note: It should be noted that Marilyn Jager Adams — deeply involved in "scientific, re- 
search-based phonics instruction" through her service on the Committee on the Prevention of 
Reading Difficulties in Young Children for the Commission on Behavioral and Social Sciences 
and Education of the National Research Council — has been a long time associate with the 
above-mentioned Bolt, Beranek and Newman.] 

The April/May 1981 issue of Today's Education, the National Education Association's 
monthly journal, carried an article entitled "Effective Schools: What the Research Says" by 
Michael Cohen, senior associate and team leader of the Research on Instruction Team of the 
National Institute of Education, U.S. Department of Education. Some excerpts from the article 
follow: 

According to Ronald Edmonds of the Harvard University Graduate School of Education, 
these [effective school] studies suggest that differences in effectiveness among schools can 
be accounted for by the following five factors: 

• Strong administrative leadership by the school principal, especially in regard to 
instructional matters. 

• School climate conducive to learning [i.e., positive, or "psychologically facilitative," 
school climate, ed.]; that is, a safe and orderly school relatively free of discipline 
and vandalism problems. 

• Schoolwide emphasis on basic skills instruction (which entails acceptance among 
the professional staff that instruction in the basic skills is the primary goal of the 
school) . 

• Teacher expectations that all students, regardless of family background, can reach 
appropriate levels of achievement. 

• A system for monitoring and assessing pupil performance which is tied to instruc- 
tional objectives.... 

...[T]he five factors identified as contributing to school effectiveness suggest the clas- 
sical model of a bureaucratic organization: a goal-oriented organization with a hierarchical 
authority structure and a central manager who monitors behavior and deliberately adjusts 
organizational performance on the basis of clear and agreed-upon goals and of feedback 
regarding goal attainment.... 

The principal must be willing to clearly set the direction for the school and to hold the 
staff accountable for following that direction. The staff, in turn, must be willing to view the 
principal's direction even if it involves giving up some claims to their own autonomy 

[Ed. Note: The reader should keep in mind that Effective School Research has been used over 
the past twenty years in inner city schools and schools located in the South; that its track 
record, if judged by academic test scores, leaves much to be desired. In fact, Washington, 
D.C. and Secretary Riley's home state of South Carolina — both of which have used Effective 
School Research — had the lowest academic test scores in the nation, to be followed by many 
inner city schools, especially those in the southern part of the nation. In this regard, the reader 
should re-read the 1913 entry containing quotes from Frederick T. Gates, director of charity 
for the Rockefeller Foundation.] 



The "Effective" Eighties : c. 1981 



173 



In a 1981 Alaska Governor's Task Force Report on Effective Schooling to The Honorable 
Jay S. Hammond the following statements were made in regard to mastery learning and direct 
instruction (highly structured learning activities) : 

It has been determined that in the learning of specific skills and factual data that it is possible 
to enhance achievement by using the approach of mastery learning, wherein instructional 
objectives are clearly defined — and instructional activities are tied directly to objectives. It has 
been demonstrated that direct instruction — highly structured learning activity — is effective 
with certain groups of students. These approaches will assist students with low achievement 
to move closer to the current mean or average. Yet, a highly structured system of instruc- 
tion applied to everyone may in fact impede the progress of those students achieving at a 
level above the current mean or average. The result is that, while variance (or the spread 
of scores from the mean) is reduced, there is a reduction in both directions. Low achievers 
may move closer to the mean, but high achievers may well do likewise. The examples pre- 
sented above regarding achievement may well apply to the operation of schools. If effective 
schooling practices are too narrow and a rigid system results, variance among districts will 
be reduced, but the limiting of creativity and the limiting of schools in their ability to adapt 
to local circumstances will cause reduction in variance from both above and below the mean 
or average, (pp. 38-39) 

[Ed. Note: The introduction to this report which stated: "As part of the Task Force effort several 
studies were conducted by Northwest Regional Educational Laboratory under contract with the 
(Alaska) Department of Education," should explain to the reader that the U.S. Department of 
Education has funded — and continues to fund — mastery learning and direct instruction pro- 
grams even in the face of evaluative evidence that strongly suggests that average and above 
average students do not benefit from such educational approaches.] 

TWO IMPORTANT CONFERENCES FOR "SCHOOL IMPROVEMENT" WERE SPONSORED BY THE NORTHweSt 

Regional Educational Laboratory (U.S. Department of Education) in 1981. They are described 
below: 

MEETING THE FUTURE: Improving Secondary Schools with Goal-Based Approaches to 
Instruction. Marriott Hotel, Portland, Oregon. Major addresses: "Alternative Futures for Our 
Society and Implications for Education" by Dr. Harold Pluimer, Futurist and Educational 
Consultant, Minneapolis, Minnesota and "School Effectiveness and Implications for Sec- 
ondary School Improvement" by Dr. Alan Cohen, Professor of Education, University of San 
Francisco. 

Sessions on Innovative Practices: "Improving Goals, Objectives and Competencies; Making 
the Community a Resource for Learning" ; "Learning through Mastery Techniques; Organizing 
for Continuous Progress"; "Involving Teachers as Advisors to Students"; "Individualizing 
Programs for All Students"; "Managing Instruction with Computers"; "Developing Options 
for Student Assessment"; "Improving Record Keeping and Reporting Procedures"; "Increasing 
Staff Motivation through Group Planning and Decision-Making"; "Techniques for Managing 
School Improvement"; "Concerns-Based Adoption Model"; "Force Field Analysis"; "Cur- 
riculum Alignment Processes"; "Staff Development Models," and "Wisconsin R&D Center 
Model for School Improvement." 



174 



MICROCOMPUTERS IN TODAY'S SCHOOLS: A Conference for Educational Leaders. Benson 
Hotel and NWREL Headquarters, Portland, Oregon. Major addresses: "Why We Went for 
Micros and What Our Community Had to Say about It" by Dr. Billy Reagan, Superintendent, 
Houston, Texas Public Schools; "Tomorrow's Technology in Today's Schools" by Dr. Dexter 
Fletcher, World Institute for Computer-Assisted Teaching, and others. 



The National Education Association published NEA Special Committee on iNSTRUctional 
Technology Report which was presented to their 60th Representative Assembly, held July 4-7, 
1981. An excerpt from the report related to the problems of programmed learning (computer- 
assisted instruction) follows: 

In its coming involvement with a technology of instruction, the profession will be faced 
again with the challenge of leadership — by example and by effective communication — the 
challenge of convincing the public that education is much more than treating students like 
so many Pavlovian dogs, to be conditioned and programmed into docile acceptance of a 
do-it-yourself blueprint of the Good Life. 

The problems associated with technology, in its final analysis, are problems of freedom 
and control. Whose freedom? Whose control? As a result of its study, the committee urges 
the Association to view the problems and promises of instructional technology not as a 
single issue but rather as a broad continuum of issues affecting all aspects of education and 
teaching — from purposes to products, from political pragmatism to professional practice. 
Most problems produced by technology have to do with the human use of human beings. 
In his book, The Illusion of Technique: A Search for Meaning in a Technological Civilization 
(Doubleday: New York, 1978), William Barrette observes that — 

Human creativity exceeds the mechanisms it invents, and is required even for their intel- 
ligent direction.... If we try to flee from our human condition into the computer we only 
meet ourselves there. 



"Families and Schools: A System of Mutual Support," a speech delivered in 1981 by 

Secretary of Education T.H. Bell before a Freeman Institute audience in Utah, included Bell's 
recommendation that schools should use Professor Lawrence Kohlberg's "Ethical Issues in 
Decision Making" to teach values. (A synopsis of Kohlberg's Stages of Moral Development is 
contained in a 1975 entry on the topic.) 

In 1981 Maine's State Capacity Building Grant from the National Institute of Education 
(NIE), U.S. Department of Education, was examined and verbatim notes taken by this writer 
from the file at NIE. The same Capacity Building Grants were made to all fifty state depart- 
ments of education. The writer has selected this important grant as an example of federal 
control of local education through federal funding. The following verbatim notes will help 
the reader understand the farce of local control and why the U.S. Department of Education 
must be abolished. 

This particular grant was of extreme interest to the writer due to her involvement in the 
late seventies — along with Bettina Dobbs, the president of Guardians of Education for Maine 



The "Effective" Eighties : c. 1981 



175 



(GEM)— in a statewide, grassroots effort to stop the very controversial State Health Educa- 
tion Program (SHEP) funded in part by the Kellogg Foundation. Believe it or not, as a word of 
encouragement, GEM was instrumental in stopping this education program in many school 
districts (a good example of David and Goliath in the twentieth century) . Evidently, the above- 
referenced NIE grant was used to further the implementation of this and other health education 
programs. Other states would use these grants for whatever programs they perceived to be 
of importance to them at that time. State budget requests for matching funds would be listed 
simply as "State Capacity Building." 

NIE Grant G-80-0025 was in the amount of $98,000 per year for four years. Maine's 
share towards total federal funding was to be $118,025 out of the four-year total of $392,000. 
Excerpts from the grant request follow: 

These systems will emphasize staff development as primary vehicle for promoting utilization 
of state and national information resources for purpose of school improvement.... 

Brief description of Project: This project is attempting to develop a means by which Maine 
educators can easily acquire and use information for problem solving and school improve- 
ment.... 

OBJECTIVES: 

1 . Develop computerized information resource base which includes national, state and 
local resources. 

2. Develop an information service that provides easy access to the information resource 
base. 

3. Refinement of computer program and initiation of revision of data collection forms 
(upon recommendation of a Technical Assistance Team from the National Institute 
of Education) . 

4. Develop a system for coordinating, disseminating, and distributing school improve- 
ment efforts with the state education agency. . . . 

1/30/80... D wanted to know about a technical assistance team at NIE that works with 

projected content of private data banks.... Believe B heads such a team and could help 

her with her file building activities.... 

DEVELOPMENT OF MAINE DATA BASE: 

Administration, coordination and facilitation of Development of a Statewide School Practice/ 
Improvement System.... A meeting was held with the Systems Analyst of the State Education 
Agency to explore private file development options available through the state government 
computer.... Model for staff development.... Training of State Health Education Program 
(SHEP) staff in completing and editing data collection forms.... SHEP will receive printouts 
for all health education resources entered into Maine Resource Bank. 



Early in 1981 the President's Task Force on Private Sector Initiatives was iNstalled at 
734 Jackson Place, N.W., Washington, D.C. Membership listed on The White House letterhead 
read like a "Who's Who" of individuals in government agencies, universities, tax-exempt foun- 
dations, non-governmental organizations, business, media, labor unions, and religion. The 
names of some individuals on the task force follow: William Aramony, president, United Way; 



176 



William J. Baroody, Jr., president, American Enterprise Institute; Helen G. Boosalis, mayor, 
City of Lincoln, Nebraska; Terence Cardinal Cooke, archbishop of New York; Governor Pierre S. 
Dupont, Delaware; Senator David Durenberger; Luis A. Ferre, former governor of Puerto Rico; 
John Gardner, chairman, Independent Sector; Edward Hill, pastor, Mt. Zion Baptist Church; 
Michael S. Joyce, executive director, John M. Olin Foundation; Edward H. Kiernan, president, 
International Association of Police; Arthur Levitt, Jr., chairman, American Stock Exchange; 
Richard W. Lyman, president, Rockefeller Foundation; Elder Thomas S. Monson, The Mormon 
Church; William C. Norris, chairman and CEO, Control Data Corporation; George Romney, 
chairman, National Center for Citizen Involvement; C. William Verity, Jr., chairman, Armco 
Steel, Inc.; Jeri J. Winger, first vice president, General Federation of Women's Clubs; Thomas 
H. Wyman, president, CBS, Inc.; and William S. White, president, C.S. Mott Foundation. 5 

This totally new and un-American concept of partnerships between public and private 
sector has been readily accepted by our elected officials who ignore its roots in socialism 
and its implications for the discontinuation of our representative form of government and 
accountability to the taxpayers. Under the "partnership" process, determining responsibility 
when something goes wrong is like pinning jello to the wall. 

Such a change in government, if presented in clear language to citizens at the polls, would 
be rejected. However, when implemented gradually, using the Marxist-Hegelian Dialectic, 
citizens don't even notice what is happening. The shift is away from elected representatives. 
In time, after voters have become even more disenchanted with the candidates and election 
results, fewer and fewer citizens will vote. At that point a highly-respected member of the public 
will enter the picture to propose a solution to the problem: some sort of compromise toward 
parliamentary form of government found in socialist democracies which will be acceptable to 
Americans unfamiliar with the protections guaranteed by the U.S. Constitution. 

One says to oneself, confidently, "This will never happen." Look around you. What do 
you see? Site-based management in your local schools, transferring decision-making, tradi- 
tionally exercised by elected school boards, to politically correct appointees and the creation 
of unelected task forces at all government levels; proposals to "separate school and state" 
which make no mention of governmental and social structure consequences — efforts to have 
government money (taxes) pay for services delivered by private religious or homeschools, etc., 
with no public representation. There can be no accountability to the taxpayers under a system 
so alien to the United States' form of representative government. 

How clean, neat and tidy. Wholesale destruction of an entire, wonderful system of gov- 
ernment without firing a shot. 

As a U.S. Department of Education liaison with The White House during the early days of 
this initiative this writer inquired of one of President Reagan's political appointees whether this 
initiative, was not corporate fascism; a politically incorrect question that resulted in someone 
else replacing me as Liaison with The White House. 

A VERY IMPORTANT NATIONAL ASSESSMENT OF EDUCATIONAL PROGRESS (NAEP) REPORT, in gal- 
ley stage, entitled Measuring the Quality of Education: Conclusions and Summary, was pro- 
vided to this writer in 1981, shedding light not only on the responsibility of major tax-exempt 
foundations in the development of a national curriculum, but also on the role of the federal 
government in setting standards/goals for American education. Excerpts follow from (1) a 
cover letter signed by Willard Wirtz, former secretary of labor, and Archie Lapointe, executive 



The "Effective" Eighties : c. 1981 



177 



director of the NAEP, and (2) the report itself: 

(1) 

In a different sense, this report is designed to meet the responsibilities imposed at least im- 
plicitly by the three foundations which initiated and have supported the project; the Carnegie 
Corporation, the Ford Foundation, and the Spencer Foundation have become critical and 
constructive forces in American education. 

(2) 

Conclusions... Instead of determining "what is being taught" and basing the objectives on 
this present practice, the controlling question is "what ought to be taught."... It is specifically 
recommended that caution be exercised against putting the Assessment results in a form that 
could be misconstrued as constituting national — or "federal" — standards.... 

Summary. . . The report reflects most significantly the carefully considered conclusions of the 
Council of Seven which was established at the beginning of the project. Selected primarily 
for their recognized responsibility and good sense, they also reflect a variety of experiences 
and institutional interests: Gregory Anrig, then Massachusetts Commissioner of Education 
and now President of the Educational Testing Service; Stephen K. Bailey, who is the Francis 
Keppel Professor of Educational Policy and Administration of Harvard Graduate School of 
Education; Charles Bowen, Director of Plans and Program Administration for University 
Relations of the IBM Corporation; Clare Burstall, Deputy Director of the National Founda- 
tion for Educational Research in England and Wales; Elton Jolly, Executive Director for Op- 
portunities Industrialization Centers; Lauren Resnick, Co-Director of the Learning Research 
and Development Center of the University of Pittsburgh; and Dorothy Shields, Director of 
Education for the AFL-CIO.... 

...It was the Council's suggestion and eventually its decision to shape the entire report 
in terms of the Assessment's potential role in developing higher and more effective educa- 
tional standards. Where we had been timid about this the Council moved boldly. They were 
right.... 

...Measuring student achievement is an entirely different business from measuring 
other aspects of the national condition.... They get to their answers without having to make 
value judgments. Not so of the measurers of "educational achievement." The key term isn't 
defined except as they develop its meaning. The rest of this is that once that definition is 
worked out, the measuring process depends at critical points on what are in significant part 
value judgments. Whether an educational standard is "better" or "higher" depends on how 
it consists with ultimate educational purposes... 

...Those in charge of the Assessment are in a position to guide their policies entirely 
by a determination of whatever "quality" means. They face no competition and are sub- 
ject to no political pressures. Innovation and experimentation are part of the Assessment's 
authentic tradition. It can provide not only competence but conscience and courage in the 
implementation of the new national purpose to improve educational standards. 

...A statement in the NAEP DESIGN AND DEVELOPMENT DOCUMENT covering the 
1979-1980 Reading/Literature Assessment is succinctly descriptive: 

The first step in any assessment cycle is objectives development. The objectives identify the 
important knowledge, skills, and attitudes within an assessment area which are generally 
being taught or should be taught in schools. These objectives then become the framework 
for developing assessment exercises which measure the objectives. 

Although there is little public awareness of these steps in the process of setting educational 



178 



standards, they affect that process vitally and give any standard its determinative char- 
acter. . . . 

...This new emphasis will mean that teaching will be increasingly oriented toward 
these objectives, which is good or bad depending on their quality. If these standards are to 
determine accountability, it is critical that their measurement reflect ultimate educational 
purposes rather than what might be dangerous expediencies.... The 1979-1980 Reading/ 
Literature Assessment, reported this year, appears to reflect a critical change in NAEP em- 
phasis. It embodies elements of objectives-setting that are essential to a quality concept of 
educational standards.... 

...Two phrases in the design and development passage quoted above are critical. Ob- 
jectives are to "identify the important knowledge, skills and attitudes." This is to include 
those "which are generally being taught or should be taught in the schools." The emphasis 
is added, but is consistent with the original context. This statement contrasts with the 1970 
NAEP description of the objectives set for the first Reading assessment. These were described 
as involving no "distinctly 'new' objectives," but as "restatements and summarizations of 
objectives which (have) appeared over the last quarter century."... 

...The 1969-1970 Citizenship Assessment included a group task exercise designed to 
determine, by observing students' group interaction, their ability to "apply democratic pro- 
cedures on a practical level."... This capacity for innovation and experimentation has been 
lost, largely as a consequence of budgetary constraints. 

Service Facility... In 1977-78, when the Texas legislature was considering the enactment 
of a minimum competency testing program, the Texas Education Agency made extensive 
use of NAEP materials in conducting a statewide survey (Texas Assessment Project — TAP) 
of student achievement in Reading, Writing, Mathematics, and Citizenship. The sampling 
plan was patterned after the National Assessment. Both the Writing and the Citizenship as- 
sessments were based largely on items and exercises selected by a Texas Education Agency 
staff panel from among those provided by NAEP offices. After the Texas assessment had 
been completed, extensive comparisons were made between the Texas results and available 
NAEP data, and reported to the legislative committee for consideration in connection with 
the adoption of the "Texas Assessment of Basic Skills." The circumstances under which the 
legislation was adopted preclude any clear identification of the effect of the comparisons. 
There is more evidence of substantial influence of the TAP initiative on the FRAMEWORK 
FOR THE SOCIAL STUDIES and LANGUAGE ARTS FRAMEWORK which have been developed 
and on the STATE BOARD GOALS which have been set for 1983. 

Larger potential for National Assessment usefulness is suggested by the ten years or 
so of cooperation between NAEP offices and the Connecticut State Board of Education, in 
connection with the administration of the Connecticut Assessment of Educational Progress 
(CAEP). A 1980 State Board report notes that "The CAEP program is modeled after the 
National Assessment of Educational Progress (NAEP) in its basic goals, design and imple- 
mentation." This is clearly reflected in the pattern of the twelve Connecticut assessments 
in seven subjects also covered by NAEP surveys. The CAEP sampling design is like NAEP's, 
except that students are assessed at grade rather than age levels. Goals and objectives used 
for the Connecticut assessments parallel clearly the objectives and subobjectives identified 
for the National Assessment. Many CAEP items are NAEP items; this was true of all items 
in the 1979-1980 Connecticut Science Assessment.... 

...Comparable uses of National Assessment materials have been made in a number of 
other states. A recent NAEP staff summary lists twelve States as having closely replicated 
the National Assessment model, and twelve others as having drawn on NAEP offices for 
technical and consultative advice. There is clear confirmation in this record of not only a 
substantial service potential, but also of a significant prospect for integrating state and na- 



The "Effective" Eighties : c. 1981 
tionwide assessment programs. 



179 



[Ed. Note: As one reads the excerpts in part two of this report, it is important to bear in mind 
the denials of complicity emanating from the U.S. Department of Education and the respective 
state departments of education when confronted with charges that the state assessments use 
test items from the NAEP Test Item Bank. The resistance to such use results from the public's 
traditional aversion to national tests and national curriculum — with which all of the above 
entities have denied involvement. Clearly, denial is in vain in light of the evidence contained 
in this document.] 

The National Center for Citizen Involvement issued a report entitled The Americclti 
Volunteer, 1981: Statistics on Volunteers. One revealing statement from the report follows: 

Volunteer Population: 92 million, 44% of whom work alone in an informal, un- 
structured environment on projects of their own choice; the rest of whom work 
in structured activities. 

[Ed. Note: Obviously, the major effort related to volunteerism was — and is — to convince the 
44% who are, in effect, "doing their own thing," to join in the government-private sector 
"Points of Light" volunteerism partnership initiated by then-President George Bush, as well as 
President Bill Clinton's AmeriCorps. That way they will work only on politically correct and 
government-approved projects.] 

Malcolm Davis, the director of the Office of Libraries and Learning TECHNOLogy, Office 
of Educational Research and Improvement at the U.S. Department of Education, in response 
to this writer's comment in 1981 that computer courseware could allow children to learn at 
home, responded, "In essence, in the future all education will take place in the home, but the 
school buildings will be used for socialization purposes." This quote is not exact; however, it 
represents this writer's recollection of it sixteen years later. I was so stunned by his comment 
that I recall it often when looking at the issue of "choice" and especially that of homeschool- 
ing. 

This comment was echoed by Alvin Toffler, George Gilder and Lewis Perelman during 
a Progress and Freedom Foundation conference in Atlanta, Georgia in August of 1995. This 
conference preceded and dealt with issues molding the "Contract with America" which Newt 
Gingrich put forth for Republican candidates to adopt as their platforms in 1996. Lewis Perel- 
man's book, School's Out (Avon Books: New York, 1992), deals with this very concept and 
Perelman attended the conference as an expositor of "conservative" positions on education 
for Progress and Freedom Foundation. 

[Ed. Note: A 1992 proposal to the New American Schools Development Corporation (NASDC) 
from The Center for the New West of Denver, Colorado included a plan from its New West 
Learning Center Design Team which provided a clear picture of the community of the future. 
"Home School Families" would be linked to "Public Schools, Communities, Private Schools, 
Businesses, Alternative Schools, and Higher Education" with the New West Learning Center 
serving as the "hub" of the wheel, or community. While this proposal was not selected as 



180 



a recipient of NASDC funding, and, fortunately, has not been funded by any government 
entity — YET — its description of changes in local governance and relationships of community 
elements met the criteria established by NASDC. (See Appendix XI and XII.)] 

1982 

Profiles in Excellence: 1982-1983: Secondary School Recognition Program: A Resource 
Guide (Office of Educational Research and Improvement of the U.S. Department of Education: 
Washington, D.C., 1982) listed the Kennebunk, Maine High School as one which schools across 
the nation might wish to emulate. The Guide stated: 

The major goal of the school's curriculum is to individualize the learning process for the 
student. The district is in the process of developing a data bank for students and a testing 
program for determining expectancy instructional levels for each student. Once this is in place, 
staff will develop an Individual Education Plan (IEP) for each student to meet individual 
needs. The major difficulty the school is encountering in implementing this new process is 
the secondary staff who are trained as subject matter teachers. Teachers need to be retrained 
to focus on individual needs rather than on content areas. 



"From Schooling to Learning: Rethinking Preschool through University EDUCAtion" by 
Don Glines was published in the January 1982 issue of the National Association of Secondary 
School Principals' Bulletin. 6 The following are excerpts: 

The implications of these global concerns for schools, educators, and education, are mon- 
umental if the views of most future writers are correct. Early recognition of this came in 
the 1974 book, Learning for Tomorrow: The Role of the Future in Education by Alvin Toffler 
(Random House: New York, 1974), and The Third Wave (William Morrow: New York, 1981) 
[by the same author] . 

One passage states: "American education is obsolete; it produces people to fit into a 
reasonably well-functioning industrial society and we no longer have one. The basic as- 
sumption driving American education, one both deceptive and dangerous, is that the future 
will be like the present. Schools are preparing people for a society that no longer exists. As 
society shifts away from the industrial model, schools will have to turn out a different kind 
of person. Schools now need to produce people who can cope with change."... 

What do people who will be in their prime in the year 2050, assuming society makes 
it through the coming transitional decades, need to shape their futures? Is the current cur- 
riculum — history, mathematics, science, new versions of Dick and Jane, all taught as separate 
subjects, really appropriate for the concluding years of the twentieth century? The majority 
of futures writers have a clear answer: No. They illustrate that instant information retrieval 
not only ends jobs in the world of work, it ends subjects in the world of learning!... 

The potential technology exists to eliminate most current classrooms before the turn 
of the century, moving from a campus to a community-oriented learning system. A postliter- 
ate society is on the verge of arriving; reading will become a luxury, a leisure pastime, or a 
choice, but not an absolute essential. 

Yet, the seventh grade programs in junior high and middle schools continue with the 
bleakness of 50 years past. Most still require English, history, science, math, and physical 



The "Effective" Eighties : c. 1982 



181 



education, along with a semester of art and a semester of music. They have period 1, 2, 3 
schedules; A, B, C report cards; tardies, notes from home; textbooks. Perhaps even worse is 
the fact that most colleges still prepare teachers for this antiquity; and administrators, who 
in spite of the goals professed in graduate courses, continue to perpetuate the system. Is it 
any wonder that Learning for Tomorrow labeled today's education obsolete? 

Ron Barnes, in Tomorrow's Educator: An Alternative to Today's School Person (Tran- 
sitions, Inc.: Phoenix, Arizona, 1977), has listed his descriptors of a New Age educator — a 
person who thinks systematically; accepts and promotes diversity; demonstrates a holistic 
perspective toward life; strives for self-awareness; promotes interdependence; is comfortable 
with the unknown; considers human values of highest priority; is experimental; works toward 
changing schools; has a more open approach to knowledge; and is a true futurist. 



Outcome-Based Instructional Management: A Sociological Perspective by WiLLiam Spady 
was published in 1982, supported by a contract from the National Institute of Education 
(NIE-P-80-0194) . This important paper, which provided a complete overview of the philosophy 
behind OBE, the organizational dimensions of outcome-based practice, the operational char- 
acter of outcome-based practice, etc., also carried some interesting comments regarding OBE's 
relationship to Project Follow Through. Excerpts follow: 

Implications for Follow Through... Despite the limitations of formal validation data sources, 
however, there is a strong case to be made for implementing fully developed OB [outcome- 
based] models in Follow Through sites. Philosophically, as well as empirically, this approach 
is inherently suited to the clientele served by Follow Through programs and possesses an 
operational character that is well suited for affecting positively both the cognitive and af- 
fective outcome agendas sought by a variety of current Follow Through models. 

Recognizing that OB practice resembles some of these models, its unique power ap- 
pears to be that it possesses a fine balance between focus and flexibility, and structure and 
responsiveness, and that it contains elements suitable to a variety of student motivational 
and learning styles without leaning heavily toward any one orientation. That is, it is as in- 
clusionary in its methodology as it is in the conditions for student learning success it tries 
to establish. 

A final point regarding the inherent appeal of OB practice for Follow Through imple- 
mentation is its basic openness. Public involvement in goal setting, public visibility of ob- 
jectives and standards, and performance records and reporting systems which describe the 
actual behavior being sought all help to "demystify" the educational process and facilitate 
clearer understanding and communication between parents and the school. 

The Network for Outcome-Based Schools itself represents a unique and powerful resource 
for technical assistance and implementation to any sites oriented toward OB practice. 

[Ed. Note: The above excerpts should be of interest to those promoting DISTAR/Reading Mastery, 
the Skinnerian "systematic, intensive, scientific research-based" phonics reading program which 
was one of the Follow Through models. How ironic that William Spady should say that the 
outcome-based practice which "conservatives" say they detest is similar to the Follow Through 
model which they have embraced. It is obvious Spady is not referring to the Open Classroom 
Follow Through model, since that model did not include "public visibility of objectives and 
standards, performance records and reporting systems which describe the actual behaviors 
being sought." In other words, Spady is making it clear that OB practice is a fraternal twin of 



182 



the Follow Through's Direct Instruction model developed by Siegfried Engelmann, which has 
also been embraced by "conservatives"!] 



"Learning To Read the ECRI Way" by Dennis Bailey was published in The Maine Times on 
January 8, 1982. In the article Bailey points out that 

Patrick Graff, an education professor, wrote in a 1974 issue of Today's Education: "So far, 
mastery learning has not presented the empirical evidence necessary to convince reasonable- 
minded teachers that all students have the same aptitude for learning every subject." 

[Ed. Note: That Professor Groff, professor emeritus, San Diego State University, would make 
the above comment is interesting in light of recent events; namely, his co-founding with 
Robert Sweet of the Right to Read Foundation (RRF) which has taken a position in support 
of the Reading Excellence Act of 1998. In supporting this legislation Groff 's organization has 
indicated support for the "scientific, research-based" reading method used in ECRI, the very 
technique which he says "has not presented the empirical evidence necessary to convince rea- 
sonable-minded teachers that all students have the same aptitude for learning every subject." 
ECRI is the mirror image of Siegfried Engelmann's DISTAR direct instruction, the Skinnerian 
operant conditioning-based reading program promoted in Right to Read newsletters and on 
its website.] 



William (Bill) Spady, "the Father of OBE," made the following statement during a 
conference held at the U.S. Department of Education in 1982 (attended by this writer). This 
writer wrote down verbatim in shorthand Spady's following comment: 

Two of the four functions of Mastery Learning are: Extra: whole agenda of acculturation, 
social roles, social integration, get the kids to participate in social unit, affective; and Hid- 
den: a system of supervision and control which restrains behavior of kids; the outcome of 
the hidden agenda should be the fostering of social responsibility or compliance. 



"State of Precollege Education in Mathematics and Science" was prepared by Paul DeHart 
Hurd, professor emeritus, Stanford University, for the National Convocation on Pre-College 
Education in Math and Science, National Academy of Sciences and National Academy of En- 
gineering in Washington, D.C. in 1982. In this paper Prof. Hurd asserts that: 

In the Communist countries there are comprehensive examinations at the end of the pri- 
mary, middle, and secondary schools to assess a student's actual progress. Test results are 
not interpreted in a competitive sense as to who has done well or poorly compared to other 
students or a norm, but rather whether a student has mastered the prescribed subject mat- 
ter. If test results are below expectancy, the student is tutored by the teacher and students. 
The object is to avoid failures. 

[Ed. Note: This definition is striking in its similarity to the definition of OBE/mastery learning/ 



The "Effective" Eighties : c. 1982 



183 



direct instruction, which uses non-competitive, criterion-referenced tests rather than traditional 
norm-referenced tests which compare students to one another. Another common feature among 
these techniques is continuous progress whereby students can have all the time and/or tu- 
toring they need in order to "master" the content. Continuous progress is necessary to carry 
out UNESCO's lifelong learning concept. This "exit exam" process is being legislated into an 
increasing number of states.] 

In a speech entitled "Regulated Competition in the United States" delivered BEfore the 
top 52 executives in Northern Telecom's Worldwide Corporation meeting, for which the edited 
proceedings were published in the February 1982 issue of the Innisbrook Papers, 7 Harvard 
Professor Anthony Oettinger of the Council on Foreign Relations made the following extremely 
elitist statements: 

Our idea of literacy, I am afraid, is obsolete because it rests on a frozen and classical definition. 
Literacy, as we know it today, is the product of the conditions of the industrial revolution, 
of organization, of the need for a work force that could, in effect, "write with a fine round 
hand." It has to do, in other words, with the Bob Cratchits of the world. 

But as much as we might think it is, literacy is not an eternal phenomenon. Today's 
literacy is a phenomenon (and Dickens satirized it) that has its roots in the nineteenth cen- 
tury, and one does not have to reach much farther back to think of civilizations with different 
concepts of literacy based, for example, on oral, rather than written, traditions. 

The present "traditional" concept of literacy has to do with the ability to read and write. 
But the real question that confronts us today is: How do we help citizens function well in 
their society? How can they acquire the skills necessary to solve their problems? 

Do we, for example, really want to teach people to do a lot of sums or write in a "fine 
round hand" when they have a five-dollar, hand-held calculator or a word processor to work 
with? Or, do we really have to have everybody literate — writing and reading in the traditional 
sense — when we have the means through our technology to achieve a new flowering of oral 
communication? 8 

What is speech recognition and speech synthesis all about if it does not lead to ways of 
reducing the burden on the individual of the imposed notions of literacy that were a product 
of nineteenth century economics and technology? 

Complexity— everybody is moaning about tasks becoming too complex for people to 
do. A Congressman who visited one of my classes recently said, "We have such low-grade 
soldiers in the U.S. that we have to train them with comic books." And an army captain in 
my class shot back: "What's wrong with comic books? My people function" [emphasis in 
original] . 

It is the traditional idea that says certain forms of communication, such as comic books, 
are "bad." But in the modern context of functionalism they may not be all that bad. 

[Ed. Note: Doesn't the above sound a lot like the Texas Study of Adult Functional Competency, 
the Adult Performance Level Study, and Secretary of Education T.H. Bell's and William Spady's 
initiation of dumbed-down competency-based education? 

One can't help but wonder if Oettinger — and those social engineers with whom he as- 
sociates who call the shots in regard to our children's futures — would be happy to have their 
own children and grandchildren offered such a limited education that they won't even know 
who Charles Dickens or Bob Cratchit were?] 



184 



Chester Finn wrote "Public Service, Public Support, Public Accountability" for the March 
1982 issue of the National Association of Secondary School Principals' Bulletin. Finn became 
a high profile figure in education circles with his appointment as assistant secretary, Office of 
Educational Research and Improvement, by Secretary of Education William Bennett. Finn's 
article was quoted in Barbara Morris's book, Tuition Tax Credits: A Responsible Appraisal {The 
Barbara Morris Report: Upland, CaL, 1983): 

Short of scattering money in the streets or handing it out to everyone who wants some, the 
funding agency must define eligible recipients.... This means, in a word, "regulation," the 
inevitable concommitant of public financial support. 

Finn also believed the government is obligated to recognize that the private schools it 
helps support are different from public schools — that it is this "differentness" that makes them 
supportable. The other side of the coin, he says, is the obligation of private schools 

to recognize certain limits to their differentness and certain ways they must conform to the 
norms and expectations of a society that values and supports them.... 

Some, to be sure, like to think they can have it both ways; i.e., can obtain aid without 
saddling themselves with unacceptable forms of regulation. But most acknowledge the general 
applicability of the old adage that he who pays the piper calls the tune, and are more or less 
resigned to amalgamating or choosing between assistance and autonomy. 



On March 29, 1982, at the "closed to the public" annual meeting of the Council of Chief 
State School Officers, Secretary of Education T.H. Bell's top assistant, Elam Herzler, told the 
assembled fifty state superintendents of education: 

One of the elements of an effective school is to monitor, assess, and feed back. ... As little 
as 5 percent of a school budget K-12 would be needed over a period of 12 years to enable 
each student to have his own computer, and this is within our cost range. 



"Can Computers Teach Values?" by Joseph A. Braun, Jr and Kurt A. Slobodzian, assistant 
professors in the Department of Curriculum and Instruction of the Northern Illinois University 
School of Education in Dekalb, Illinois, was published in the April 1982 issue of Educational 
Leadership. The following are excerpts: 

In helping children learn how to inquire and examine their own emerging value systems, 
most educators agree that unintentional negative reactions by teachers are deleterious to 
youngsters' self-concept. Couple this with potential ridicule from student peers, and one 
can readily see why values education has been a delicate and controversial issue. However, 
a student using CAI [computer-assisted instruction] in the examination, evaluation, and 
acquisition of values would be able to do so with mature guidance in an environment free 
from potential rejection or scorn. 

Another pitfall for teachers of values education is the invasion of a child's right to 
privacy. Well-intentioned teachers often expect self-disclosure beyond a student's limit of 
psychological safety (Lockwood, 1977) by demanding deeply personal revelations from 



The "Effective" Eighties : c. 1982 



185 



participants who are not prepared to discuss their more private thoughts. The computer, in 
contrast, has no misguided need to get to know "the real you." 

The computer, then, is ideally suited to the role of facilitator in values education. It 
inherently possesses the Rogerian [psychologist Carl Rogers] qualities of genuineness and 
congruence. It can even be programmed to positively regard anyone who uses it. A student 
using CAI gains a sense of protection as well as a constant source of appropriate feedback 
while exploring and integrating feelings, beliefs, and behavior. 

Computers have also been programmed to pick out key words from a respondent's 
statements. The computer program then formulates open-ended questions from key words, 
which causes the respondent to focus and further clarify feelings. In other words, using a 
program called "Doctor," Holden (1977) describes a conversation between a computer and 
a troubled young woman who began with a common complaint: 

Human: "Men are all alike." 
Computer: "In what way?" 

Human: "They're always bugging us about something or another." 
Computer: "Can you think of a specific example?" 
Human: "Well, my boy friend made me come here." 
Computer: "Your boyfriend made you come here? " 
Human: "He says that I'm depressed much of the time." 
Computer: "I am sorry to hear that you are depressed." 
Human: "It's true, I am unhappy." 

Computer: "Do you think coming here will help you not be unhappy?" 
Human: "I need some help. That much seems certain." 
Computer: "What would it mean if you got some help?" 
Human: "Perhaps I could learn to get along with my mother." 
Computer: "Tell me more about your family." 



The Complete Works of Francis A. Schaeffer: A Christian Worldview, Volume One, a 
Christian View of Philosophy and Culture (Crossway Books: Westchester, 111., 1982) was pub- 
lished. In a treatise entitled "A Christian View of Philosophy and Culture: Back to Freedom 
and Dignity," noted Christian scholar and theologian Dr. Francis Schaeffer warned of B.F 
Skinner and his methods: 

Skinner says that up until the present time all of humanity has considered man to be in some 
sense autonomous — that is, that there is in each individual an "ego" or mind or center of 
consciousness which can freely choose one or another course of action. But, Skinner says, 
autonomous man does not exist, and it is the task of behavioral psychology to abolish the 
conception.... Skinner declares that everything man is, everything man makes, everything 
man thinks is completely, 100 percent, determined by his environment. 

After the publication of Beyond Freedom and Dignity [1972], when he [Skinner] was at 
the Center for the Study of Democratic Institutions, he spoke at Westmont College in Santa 
Barbara, California. There he said, "The individual does not initiate anything." In fact, he 
said that any time man is freed from one kind of control, he merely comes under another 
kind of control. Christians consider that man is autonomous in that he is significant, he af- 
fects the environment. In behavioristic psychology, the situation is reversed. All behavior is 
determined not from within but from without. "You" don't exist. Man is not there. All that is 
there is a bundle of conditioning, a collection of what you have been in the past: your genetic 
makeup and your environment. But Skinner goes a step further, subordinates the genetic 



186 



factor, and suggests that man's behavior can be almost totally controlled by controlling the 
environment.... Some behaviorists would differ with him on this last point. How is it that 
the environment controls behavior? 

Here Skinner brings up the concept of "operant conditioning." This notion is based on 
his work with pigeons and rats. The basic idea is that "when a bit of behavior is followed 
by a certain consequence, it is more likely to occur again, and a consequence having this 
effect is called a reinforcer." (p. 27) That is, for example, "anything the organism does that 
is followed by the receipt of food is more likely to be done again whenever the organism is 
hungry. " 

There are two kinds of reinforcers: negative reinforcers which have adverse effects, 
and positive reinforcers whose effect is positive. Skinner contends that only the positive 
reinforcers should be used. In other words, in order to reinforce a certain kind of behavior, 
one should not punish; he should reward. If a person is surrounded by an atmosphere in 
which he gets a sufficient reward for doing what society would like him to do, he will auto- 
matically do this without ever knowing why he is doing it.... Within the Skinnerian system 
there are no ethical controls. There is no boundary limit to what can be done by the elite in 
whose hands control resides. 

The reduction of man's value to zero is one of the important factors which triggered 
the student rebellion at Berkeley and elsewhere in the 1960s. Those students sensed that 
they were being turned into zeros and they revolted. Christians should have sensed it long 
before and said and exhibited that we have an alternative. . . . We are on the verge of the larg- 
est revolution the world has ever seen — the control and shaping of men through the abuse 
of genetic knowledge, and chemical and psychological conditioning. 

Will people accept it? I don't think they would accept it if (1) they had not already 
been taught to accept the presuppositions that lead to it, and (2) they were not in such 
hopelessness. Many of our secular schools have consistently taught these presuppositions, 
and unhappily many of our Christian lower schools and colleges have taught the crucial 
subjects no differently than the secular schools. 

Schaeffer's "Conclusion" follows: 

What do we and our children face? The biological bomb, the abuse of genetic knowledge, 
chemical engineering, the behavioristic manipulation of man. All these have come to popular 
attention only a few years ago. But they are not twenty years away. They are not five years 
away. They are here now in technological breakthroughs. This is where we live, and as true 
Christians we must be ready. This is no time for weakness in the Church of Christ. What 
has happened to man? We must see him as one who has torn himself away both from the 
infinite-personal God who created him as finite but in his image and from God's revelation 
to him. Made in God's image, he was made to be great, he was made to be beautiful, and 
he was made to be creative in life and art. But his rebellion has led him into making himself 
into nothing but a machine, (pp. 374-384) 



An article entitled "Graduates Lack Technical Training, Study Warns — By 1990, 2 Million 
May Not Have Essential Skills Needed for Employment in 'Information Society'" was published 
in the May 12, 1982 issue of Education Week. This article clearly placed the responsibility for 
the transformation from traditional academic education to workforce training at the feet of the 
Carnegie Corporation-spawned Education Commission of the States (ECS) and the National 
Assessment of Educational Progress (NAEP) . This article fired one of the first shots across the 



The "Effective" Eighties : c. 1982 



187 



bow of traditional academic education. It clearly defined the new "education" landscape when 
it described the need for Benjamin Bloom's Taxonomy (high level skills of critical thinking; i.e., 
evaluation, analysis, synthesis, application, etc.) versus "low level basic skills," emphasizing 
the use of the brain for processing, not storage (explained by Thomas Kelly in the January 
1994 issue of The Effective School Report). The terminology in this article would, eleven years 
later, be reflected in the major Goals 2000 restructuring legislation, the Elementary and Sec- 
ondary Reauthorization Act of 1994 (H.R. 6) which referred to the learning of basic academic 
skills and the emphasis on repetitive drill and practice in elementary school as a "disproven 
theory. " Some excerpts from this enlightening article follow: 

"Unless the decline of high-order skills among high-school students is reversed," warns 
a new report from the Education Commission of the states, "as many as two million students 
may graduate [in 1990] without the essential skills required for employment in tomorrow's 
technically-oriented labor force. " 

"Information Society: Will Our High School Graduates Be Ready?" was prepared by 
Roy Forbes, director of the National Assessment of Educational Progress (NAEP) and Lynn 
Grover Gisi, a research assistant and writer with NAEP. Its intention, the authors say, is to 
"stimulate research and communication among the groups concerned with technology's 
impact on education." 

The Forbes-Gisi report reviews labor-force projections, summarizes recent National 
Assessment findings, and outlines "recent corporate, educational, and legislative actions" 
designed to address the problem. 

Arguing that the computer chip will replace oil in the U.S. economy, and will form the 
basis for a new information society, the authors say that the "basics" mastered by the high- 
school gaduates of the future will have to include more complex skills than minimal read- 
ing, writing, and computing. Among the higher-level skills the information age will require, 
they argue, will be "evaluation and analysis, critical thinking; problem-solving strategies, 
including mathematical problem-solving, organization and reference skills; synthesis; ap- 
plication; creativity; decision-making given complete information; and communication skills 
through a variety of modes." ...The data from the National Assessment provide convincing 
evidence that by the time students reach the age of 17, many do not possess [the above 
listed]... higher-order skills. The "elements of the problem," says the report, are: 

• Foreign competition. The age of high technology is rapidly changing the roles of 
production and other countries are responding — faster than the U.S. — by upgrading 
their educational programs on a national level. The U.S. educational system, says 
the report, "poses unique problems by its inherent commitment to diversity and 
emphasis on local and state control."... 

• Students. Technology used for educational purposes has the potential to reshape in- 
structional delivery systems, the report says, and that may result in a decentralization 
of learning from traditional schools into homes, communities and industries.... 

• Responsibilities and relevance. Education must become more relevant to the world of 
work, the report contends, and this requires "informational feedback systems on the 
successes of students who have completed the required curriculum. Quality control 
has focused on the inputs into a system — teachers and textbooks, for example — and 
not the outcomes. Thus there has been no attempt to incorporate long-term informa- 
tion into the management system's program planning." The report's authors agree 
with a report of the Southern Regional Education Board that American schooling 
no longer lacks the basics rather the "complexities that make for mature learning, 
mature citizenship, or adult success."... 



188 



Unless the U.S. can keep pace, the report contends, its "position as a leader of tech- 
nology and competitor for world markets will be severely threatened." 

Cooperative Efforts 

Only cooperative efforts involving all segments of society will solve the problem, the 
report states. In particular, it calls on American industry and labor to play a greater role.... 

..."Industries cannot afford to pass up these opportunities and others because their 
future existence will depend upon it. . .. Clearly we are not cultivating the raw materials, our 
future workers, who are vital not only for economic progress, but ultimately for economic 
survival." 

[Ed. Note: There are many responses this writer could make to the above article, but the first 
of which is that the statement "Clearly we are not cultivating the raw materials, our future 
workers" — our children! — is the most offensive of all. The use of those words alone when 
referring to human beings should tell the reader that something is very, very wrong in the 
United States of America. One has more respect for their pet animals than to refer to them as 
"raw materials." 

Secondly, the report's agreement with the Southern Regional Education Board "that 
American schooling no longer lacks the basics" defies logic! From a region which consistently 
scores at the bottom of the heap, this is particularly repugnant. The idea that "higher order 
skills" should be the focus of our educational efforts can only be the product of the thinking 
of persons who are not concerned with whether or not students can read, write, or compute 
unless it is to perform a workforce function. Without a basic ability to read, write and com- 
pute on a broad base, it is impossible for anyone to have substance about which to "think 
critically"! Thinking critically — making choices and comparisons — requires a base knowledge 
that is either acquired through study (as in the case with most children who are students) or 
through life experience (which adults, but not children, can claim) . 

Lastly, the use of technology to decentralize "learning" from traditional schools into 
homes, communities and industries should raise a tall, red flag for successful homeschoolers. 
These folks are talking about government control of this process.] 

The International Conference for Parent/Citizen Involvement in Schools was held July 
22-25, 1982 at the Hilton Hotel, Salt Lake City, Utah. A letter to Secretary Bell dated Febru- 
ary 25, 1982 requesting conference funding contained an impressive list of supporters on its 
letterhead, including: Scott Matheson, governor of Utah; Mrs. Barbara Bush, honorary chair- 
person, National School Volunteer Program; T.H. Bell, U.S. secretary of education; Dr. Don 
Davies, Institute for Responsive Education; Dr. Carl Marer, National Committee for Citizens 
in Education; Dr. M. Donald Thomas, superintendent of schools, Salt Lake City, Utah, and 
education representatives from Canada and Australia. 

Dr. Donald Thomas, originally on the board of directors of The Effective School Report, and 
executive director of the Network for Effective Schools, is a well-known change agent. Thomas 
has traveled to Russia under the auspices of U.S. Secretary of Education Lamar Alexander 
and Dale Mann of Columbia University, to work with Russia on implementing international 
education restructuring. 

The above-mentioned letter to Bell also stated: 



The "Effective" Eighties : c. 1982 



189 



The "think tank" session will be by invitation only to leaders in the movement. Its purpose 
will be to assess the current status of parent/citizen involvement in the schools; to identify 
trends and directions of the movement for the 80s; and finally to plan further positive action 
to support the continuation of the movement. 

One of the attachments to this conference correspondence included many pages related 
to Effective School Research and a listing of the components necessary for education restruc- 
turing. The list included: 

• mastery learning/ direct instruction 

• expectations 

• climate 

• motivation 

• measurement diagnosis 

• assessment 

• class management 

• discipline 

• classroom organization 

• pupil conditions/rewards 

• praise 

• parent involvement, etc. 

Those connected with such research are listed as follows: Michael Rutter, England, Ef- 
fective School Study; the late Harvard Professor Ron Edmonds; professors Benjamin Bloom 
and John Goodlad; Larry Lezotte; Donald Thomas; and others. 

A second attachment on National Coalition for Parent Involvement in Education (NCPIE — 
Alexandria, Virginia) letterhead stated that NCPIE was facilitated by the National School 
Volunteer Program and funded by Union Carbide Corporation. 

A MEMO WAS SENT TO SECRETARY OF EDUCATION T.H. BELL FROM THE ASSISTANT SECREtary, Office 

of Educational Research and Improvement, regarding "upcoming events for July 31 -August 
31" which listed: 

AUGUST 5 — President Reagan is scheduled to hold a press conference in which he will 
announce an initiative involving the National Diffusion Network and the National Health 
Screening Council for Volunteer Organizations, Inc. This collaboration, called PARTNERSHIP, 
links schools with the media, local businesses, government and hospitals in a school im- 
provement effort. 

[Ed. Note: This activity was cancelled due to prompt grassroots opposition in the D.C. area 
consisting of a memorandum to the White House informing the President of concern nationwide 
related to the process known as "community education" and public-private partnerships.] 

A U.S. Department of Education memorandum to Secretary Bell dated October 5, 1982 
stated: 



190 



President Reagan is scheduled to visit P.S. 48, an elementary school in the Bronx, New York 
City. During his visit the President will meet Dr. Ethna Reid, Director of the Exemplary Center 
for Reading Instruction, a program in the National Diffusion Network. Dr. Reid will be at P.S. 
48 to train staff members in the use of ECRI. 9 

[Ed. Note: Whether the President, a very busy man, met with Dr. Reid or not, is insignificant. 
What IS highly significant, however, is WHY this extraordinary effort was made to introduce 
the President of the United States to Dr. Ethna Reid of Utah. In retrospect, scheduling President 
Reagan to meet with the developer of the "chosen" teaching method which incorporates Skin- 
nerian mastery learning and direct instruction makes sense.] 

U.S. Secretary of Education T.H. Bell's Commission on Excellence published A Nation 
at Risk: The Imperative for Educational Reform in 1982. This report laid the groundwork for 
the controversial restructuring Americans face today. Initially, the commission engaged in a 
slick, expensive propagandistic roadshow, intended to mobilize American opinion in favor 
of the umpteenth reform since the federal government seized control of education in 1965, 
causing steep declines in academic test scores. The recommendations were couched in terms 
Americans would accept; i.e., mastering basic skills, more homework, etc. Its hype was best 
illustrated by the following excerpt: 

If an unfriendly foreign power had attempted to impose on America the mediocre educational 
performance that exists today, we might well have viewed it as an act of war.... We have, in 
effect, been committing an act of unthinking, unilateral educational disarmament. 

[Ed. Note: The rhetoric worked. Spending increased. Ideas, which would never have been 
accepted had a crisis not been deliberately created, were embraced without question. These 
included doing away with the only valid criterion for measuring student academic achieve- 
ment — the Carnegie Unit — with its required four years of math, four years of English, four 
years of history, etc., in order to graduate from high school. Of interest was an informal com- 
ment made by Secretary Bell at the initial (closed to the public) commission meeting in July 
of 1981. Secretary Bell commented that one had to "create conflict in order to obtain one's 
objectives." 

The conflict was indeed created between the conservatives (falsely represented by big 
business interests) and the liberals (the left-wing tax-exempt foundations and leadership of the 
teacher unions, etc.), in order to be able to come to a compromise (arrive at the consensus or 
common ground) which represented what the United Nations and its educational agencies had 
been promoting since 1945. The U.N. agenda included socialist lifelong learning and training 
for the global workforce. This consensus required — and succeeded in obtaining — partnerships/ 
mergers between individuals and groups that had formerly had nothing in common — especially 
the partnership between government schools and business. Such a partnership is required by 
socialist/fascist forms of government.] 

The Center for Educational Research and Innovation (CERI), 10 which is attached to the 

Organization for Economic Cooperation and Development (OECD) in Paris, France, held an 
International School Improvement Project (ISIP) conference in Palm Beach, Florida in 1982. 



The "Effective" Eighties : c. 1982 



191 



Many of the key components of the United States' education reform movement (effective schools 
movement) were discussed by delegates from member countries. The main topic appeared 
to be a subject entitled "CBAM" about which absolutely nothing was said in the invitational 
papers sent to delegates planning to attend. 

The writer was bewildered by the term "CBAM" until it appeared in the U.S. Department 
of Education- funded project "Changing Teacher Practice, Final Report of an Experimental 
Study — Gary A. Griffin, Principal Investigator, Susan Barnes, Sharon O'Neal, Sara E. Edwards, 
Maria E. Defino, Hobart Hukill — Report No. 9052, Research and Development Center for 
Teacher Education, The University of Texas, Austin, Texas 78712." Within the project report 
there is discussion of the application of "behavioral science for systems improvement. " The 
"Changing Teacher Practice" project contained the "Concerns-Based Adoption Model" (CBAM), 
which illustrated the extent of psychological manipulation undergone by teachers who resist 
change. The following excerpt explains the purpose of "Concerns-Based Adoption Model" as 
a support tool to assist teachers through the painful process of "change": 

The Concerns-Based Adoption Model (CBAM) provides a structure for staff development plan- 
ning which focuses on the process of change as a personal experience (Hall & Loucks, 1978, 
Note 19). The perceptions, feelings, motivations, frustrations, and satisfactions of teachers 
about an innovation are identified and classified according to a developmental scheme of 
stages. The process of change by which a person moves through these stages is attended to 
so that an innovation can be implemented. Concerns-based staff development recognizes 
and accepts as legitimate the concerns of the person involved in the change process. Change 
is regarded as long term and developmental, and individuals are perceived to need support 
as they experience change. In this model any process or product that the teacher has not 
previously encountered is regarded as an innovation for that teacher, (p. 37) 

[Ed. Note: The information regarding the ISIP conference in Palm Beach is taken from a July 
9,1982 letter from J.R. Gass of the Organization for Economic Cooperation and Development 
of the Center for Educational Research and Innovation to Donald J. Senese, assistant secretary 
for the Office of Educational Research and Improvement, U.S. Department of Education. Such 
international meetings at which international education/workforce training agenda items are 
discussed take place regularly. OERI and CERI are closely connected in the work they carry 
out for OECD, UNESCO and the United Nations.] 

"Between Classes — What Cost, Accountability?" by Terry L. Forthum, teacher and editor 
of the state newspaper of the Arizona Federation of Teachers, was published in the October 
1982 issue of the The Arizona Forum. Excerpts follow from this thought-provoking article: 

If accountability becomes the ultimate goal of education and all areas of education 
are reduced to "components" measurable by standardized testing, education will no longer 
be a learning process but a cloning process for both the teacher and the student. The prior- 
ity questions for education in the future may well be: Why can't Johnny think? Why can't 
Johnny enjoy? Why can't Johnny feel? Why can't Carbon Unit J smile?... 

The panic caused by educational studies of the Why Can't Johnny Read variety has 
created a new educational priority — ACCOUNTABILITY. In its purest form, accountability 
aids the profession and the professional in maintaining standards of excellence. The results 
of any attempt to "monitor" the profession and therefore make it accountable can only be 



192 



as valid, however, as the instrument or process which produces the results.... 

Accountability is the central election issue in the race for Superintendent of Public In- 
struction [Mr. Forthum is referring to reform opponent Ann Herzer's bid to unseat Carolyn 
Warner as superintendent of public instruction, ed.]. The present administration has estab- 
lished pilot programs throughout Arizona which can measure student progress as defined by 
the testing instrument, therefore making the school and instructor accountable. The evaluative 
program, developed nationally and piloted in other states before reaching Arizona, can in 
fact establish a criteria for testing accountability. That it works is not the issue. The issue 
is how it works. The issue is not "should education be accountable" but should education 
make B.F. Skinner methodology the model for establishing educational accountability? 



Edward Curran, director of the National Institute of Education, was dismissed by 

Secretary T.H. Bell in 1982 due to Curran's recommendation to President Reagan that the 
National Institute of Education — the research and development arm of the U.S. Department 
of Education — be abolished. President Reagan was out of the country at the time of Curran's 
dismissal. When President Reagan was elected Dr. Curran left his position as headmaster of 
the Cathedral School for Girls in Washington, D.C., first to work on the education department 
transition team and later to assume the directorship of the National Institute of Education. 

Curran's courageous recommendation would not have required Congressional approval, as 
did the proposal to abolish the U.S. Department of Education; an executive order by Secretary 
Bell was all that was required. Abolishing NIE could have removed much of the controversial 
federal government influence in our local schools. In an article entitled "Success Eludes Old 
Research Agency," Education Week (December 9, 1982) quoted Dr. Curran as follows: 

NIE is based on the premise that education is a science whose progress depends on systematic 
"research and development." As a professional educator, I know that this premise is false. 



1983 

"A Religion for a New Age" by John Dunphy, written for the January/February 1983 
issue of The Humanist, the journal of the American Humanist Association, lifts the veil of 
respectability from humanism and humanistic ethics. Excerpts follow: 

I am convinced that the battle for humankind's future must be waged and won in the 
public school classroom by teachers who correctly perceive their role as the proselytizers of a 
new faith: a religion of humanity that recognizes and respects the spark of what theologians 
call divinity in every human being. 

These teachers must embody the same selfless dedication as the most rabid fundamen- 
talist preachers, for they will be ministers of another sort, utilizing a classroom instead of a 
pulpit to convey humanist values in whatever subjects they teach, regardless of the education 
level — preschool day care or a large university. 

The classroom must and will become an arena of conflict between the old and the 
new — the rotting corpse of Christianity, together with all its adjacent evils and misery, and 
the new faith of Humanism, resplendent in its premise of a world in which the never-real- 
ized Christian idea of "love thy neighbor" will finally be achieved. 



The "Effective" Eighties : c. 1983 



193 



Education for Results: In Response to A Nation at Risk, Vol. 1: Guaranteeing Effective 
Performance by Our Schools (SAFE Learning Systems, Inc.: Anaheim, Cal., 1983) by Robert 
Corrigan was published. In its 500-page how-to manual, Corrigan's S.A.F.E. [Systematic Ap- 
proach for Effectiveness] model was described. Corrigan explains: 

The following successive phases were performed to test out the theoretical concepts of 
increased mastery learning effectiveness: Phase 1. To design and to extensively field-test 
a group instructional learning-centered program applying those programmed instructional 
principles postulated by Skinner and Crowder to be combined with the techniques of System 
Analysis for installing required system-wide managing-for-results processes including the 
accountable performance by teachers, principals and support personnel. This program would 
be "packaged" for use by teachers to deliver predictable achievement of defined mastery- 
learning objectives, (p. 155) 

[Ed. Note: This program was endorsed by — among others — Bill Spady (Mr. OBE), the director of 
the controversial Far West Laboratory Outcome-Based Education Project (the Utah Grant) and 
Professor Homer Coker of the University of Georgia, who developed — with National Institute of 
Education funds — a controversial standardized teacher evaluation instrument with 420 teacher 
characteristics (competencies/behaviors) . This book's Appendix VI contains extensive quotes 
from this important trail-blazing project.] 

From the first newsletter, Outcomes, published by Bill Spady's Network for Outcome- 
Based Schools in 1983, came the article "Four Phases in Creating and Managing an Outcome- 
Based Program" by John Champlin of the Department of Educational Administration of Texas 
Tech University in Lubbock, Texas. The fact that mastery learning is outcome-based education 
is made clear in the following excerpts: 

"Outcome-Based" was conceived during discussions in 1979 when our attention centered 
around how Mastery Learning could be better managed and made more likely to survive, 
despite many ill-conceived design and implementation attempts. Those participating proposed 
that an advocacy network be established. This founding group of a dozen or so concluded 
that more support for Mastery Learning would be likely if this new network focused equally 
on outcomes as well as process. They argued that instructional delivery systems needed to 
be sufficiently flexible and responsive to produce a wide variety of outcomes, not just the 
existing limitations of basic skills programs. This decision was considered critical in view of 
limited success in efforts to operationalize competency-based concepts during the 1970s.... 
Out of these dialogues emerged the Network for Outcome-Based Schools, a loose configu- 
ration of researchers, teachers, principals, school superintendents and college professors 
whose goal was to advocate and implement Mastery Learning as a vehicle for producing the 
capabilities and responses necessary for students to attain varied outcomes. The Network 
has been a vigorous proponent of all of the identified components of Outcome-Based (OB) 
programming since its inception.... 

INITIATE COMMUNITY REEDUCATION AND RENORMING ACTIVITIES— Any new program 
development absolutely requires provisions to foster community understanding. Many well- 
intended change efforts have fallen upon the rocks because the community didn't understand 
it, challenged it, and built up so much pressure that it was easiest for staff to revert to the safe 
harbor of the status quo. This community effort should be designed both to reeducate and to 



194 



renorm parents and the general public. It is important that your community know what you 
intend to do, why it is happening, and exactly what they can expect as it progresses. I believe 
a district will win some degree of tolerance and patience if it involves the community in this 
way. To expect residents to passively accept any modification after the fact or by edict is a 
serious error. Think of renorming the community the same way you conduct similar efforts 
in the school environment. Don't challenge the community, co-opt them. (pp. 36-7) 



The U.S. Department of Education funded two important projects in 1983: 1) "Framing 
a Future for Education" for Kansas; and 2) "Strategic Planning and Furthering Excellence in 
Millard Public Schools" for Nebraska, both of which were assigned to Dr. Shirley McCune 
of the MidContinent Regional Educational Laboratory (McREL) as project director. These 
two projects, based on the work of the New Age Naisbitt Group founded by John Naisbitt 
who authored Megatrends, served as national pilots for OBE restructuring of America from a 
"representative democracy" to a "participatory democracy — moving from a left versus right 
politics to a politics of the radical center," in Dr. McCune's words. McCune became famous 
(or infamous) during the National Governors' Association conference in Wichita, Kansas in 
1989 when she said: 

What we're into is the total restructuring of society. What is happening in America today 
and what is happening in Kansas and the Great Plains is not simply a chance situation in 
the usual winds of change. What it amounts to is a total transformation of society.... Our 
total society is in a crisis of restructuring and you can't get away from it. You can't go into 
rural areas, you can't go into the churches, you can't go into government or into business 
and hide from the fact that what we are facing is the total restructuring of our society. 

[Ed. Note: In the 1996 entry regarding McCune's book, The Light Shall Set You Free (Athena 
Publishing, Alpha Connections: Santa Fe, New Mexico, 1996 ), McCune expressed her belief 
that "each individual is a co-creator with the Divine."] 

"A Call for a Radical Re-examination: Education Should Reflect a New iNTERNAtio nal 

Economic Order" by Michel Debeauvais was published in the March 1983 issue of The Edu- 
cation Digest. The article was a condensed version of the original which appeared in Prospects 
(Vol. XII, No. 2, pp. 135-145). Michel Debeauvais is co-founder and president, Francophone 
Association of Comparative Education, Sevres, France. The following excerpts relate to the 
transformation of the world's education systems from traditional academic emphasis to work- 
force training: 

The current of thought that seeks to abolish the existing international economic order and 
replace it with a new order calls for reexamination of the relations between education and 
the economy... 

Assuming growing importance everywhere, however, is the inadequacy of [the response] 
of school systems to social needs and to the needs of the economy. These shortcomings 
lie behind the educational reforms upon which nearly all countries have embarked. The 
chief criticisms are: primary schooling often tends to direct young people toward salaried 
employment in the modern urban sector, whereas only a minority among them can hope to 
obtain such jobs; general secondary education still channels pupils' aspirations toward higher 



The "Effective" Eighties : c. 1983 



195 



education; technical and vocational education suffer from lack of prestige and high costs, 
and are often ill-suited to job market trends; higher education is often perceived as isolated 
from national life, from the demands of cultural and internal development.... 

There is growing realization of the role of education systems in the reproduction of 
inequalities — the social selection performed by the education system as it contributes to distri- 
bution of social roles and jobs in a hierarchized society. The hierarchy of school results tends 
to match the job hierarchy; situations where expansion of the education system is not matched 
by changes in the job structure are perceived as a dysfunction requiring correction. 

The goals of equity laid down by educational policy can be made effective only if they 
are an integral part of development policies pursuing this aim through diverse and mutually 
coordinated measures. This has led to... an integrated development policy, in which the aim 
of education would be... achieving the social and economic goals of development.... 

Nevertheless, we may advance the following proposition: A policy of endogenous 
development to accord priority to the struggle against inequality, and to the participation of 
the population in decisions concerning it, ought also to be accompanied by fairly far-reach- 
ing educational reforms, redefining the role and place of training in the overall system of 
socioeconomic objectives. 

Another important aspect of the New International Economic Order (NIEO)... will 
require substantial alterations in international relations and. . . public opinion will have to 
be prepared in order to understand and reconcile itself to the measures to be taken.... The 
extent of the changes in attitude made necessary by a new world order based on the values 
of the survival of humanity and respect for the dignity of all cultures constitutes a theme for 
reflection that accords a central role to education in the context of an NIEO. 

A new international order can be devised and implemented only by stages which cor- 
respond... to those of a more deep-seated evolution in people's thinking. United Nations 
bodies play a role that is by no means negligible in shaping world opinion. 

...It now remains for us to find out where the children not attending school are in or- 
der to prepare educational programs capable of reaching them and answering their needs. 
In addition, the priority aim of reducing disparities between town and country should lead 
to the measurement of schooling (and nonformal education) in the countryside, something 
existing school statistics do not permit. 

...Data on the level of instruction of workers would permit more accurate evaluation 
of the relations between education and employment. 



Functional Literacy and the Workplace: The Proceedings of the May 6, 1983 National 
Invitational Conference was published (Education Services, American Council of Life Insurance: 
Washington, D.C., 1983). Excerpts which highlight now-familiar ideas follow: 

"Defining Functional Literacy" by Paul Delker, Director of the Division of Adult Education 
in the U.S. Department of Education who has been involved with the Federal Adult Basic 
Education Program since its beginnings in 1966... headed the U.S. delegation to a UNESCO 
meeting that drafted Recommendations on Adult Education adopted by the [UN] General 
Assembly in 1976.... You may be familiar with the Adult Performance Level Study (widely 
known as the APL Study), funded by the then U.S. Office of Education and reported in 1975. 
Its objectives were to describe adult functional literacy in pragmatic, behavioral, terms and 
to develop devices for the assessment of literacy which would be useful on a variety of op- 
erational levels. To date, the APL Study represents the most systematic and extensive effort 
to measure functional literacy. . . . 

"Some Responses to the Literacy Problem" by Willard Daggett, Director of the Division 



196 



of Occupational Education Instruction, New York State Education Department.... Education 
exists within the larger context of society as a whole. As society changes, education must also 
change, if it is to fulfill its mission of preparing people to thrive [emphasis in original] .... We 
have begun evolving into a technological society. Our educational system must also change 
to provide the highly trained personnel that technology requires. Five years ago, recognizing 
that basic changes were occurring, the New York State Education Department reviewed its 
system of vocational and practical arts education, to ensure that through the remaining years 
of this century we would be preparing our students for the society which would be, not for 
the society which was. In this review process, which we called "Futuring," we have relied 
upon both business and industry to determine what skills and knowledge will be needed in 
the next 15 years, and upon educators in the field and social scientists to recommend how 
these should be taught. 



Computers in Education: Realizing the Potential was published by the U.S. DEpartment 
of Education in June, 1983. Under the subtitle "Expert and Novice Thinking" the authors 
speculate: 

Recent studies in science education have revealed that students approach learning with many 
prior conceptions based on their life experiences, which can be obstacles to learning. These 
conceptions are very resistant to change. We need to understand why students' conceptions 
persevere so strongly and how best they can be modified. 



"There Has Been a Conspiracy of Silence about Teaching: B.F. Skinner Argues that Pedagogy 
Is Key to School Reforms" by Susan Walton was published by Education Week in its August 
31, 1983 issue. Excerpts from this extremely enlightening article follow: 

Improving methods of teaching would do more to help public education than would length- 
ening the school day or any of the other reforms proposed by the National Commission on 
Excellence in Education and other groups that have recently issued reports on education. So 
argues B.F. Skinner, the Harvard University psychologist whose pioneering theories about and 
studies on the "conditioning" of behavior have had a substantial impact on education. Still a 
source of controversy 40-odd years after Mr. Skinner began his research, those theories have 
been instrumental in the development of mastery learning and the "teaching machines" of 
the 1960s. The behavioral scientist's work has also been an integral part of the debate over 
individualized instruction.... Central to Mr. Skinner's thinking on education are the notions 
that children should be allowed to learn at their own pace and that teachers should rely on 
"reinforcers" or rewards, to strengthen patterns of behavior that they want to encourage. 
Mr. Skinner argues that computers, as they are most commonly used, are essentially sophis- 
ticated versions of the "teaching machines" of the 1960s.... Pointing to recent articles and 
reports on how to improve education, Mr. Skinner argues that one central fallacy is that it is 
more important for teachers to know their subject matter than to know how to teach it. Mr. 
Skinner also advises that educators stop making all students advance at essentially the same 
rate.... No teacher can teach a class of 30 or 40 students and allow each to progress at an 
optimal speed. Tracking is too feeble a remedy. We must turn to INSTRUMENTS [emphasis 
in original] for a large part of the school curriculum. The psychologist also urges educators 
to "program" subject matter. "The heart of the teaching machine, call it what you will, is 



The "Effective" Eighties : c. 1983 



197 



the programming of instruction — an advance not mentioned in any of the reports I have 
cited," he writes. He argues "the reinforcing consequences of being right" will eventually 
prompt students to do what they are supposed to do, but to elicit the behavior the first time, 
their behavior must be "primed" and "prompted." "Programmed instruction," Mr. Skinner 
contends, makes "very few demands on teachers." 

[Ed. Note: Had the above interview occurred a year later, Skinner would have known that A 
Nation at Risk's ultimate recommendations would be to implement Skinnerian mastery learn- 
ing (QBE) "in all the schools of the nation."] 



Maine Association for Supervision and Curriculum Development in-service training was 

attended by this author in 1983. Dr. S. Alan Cohen led the training. Cohen taught research 
and curriculum design in the Department of Curriculum and Instruction at the University of 
San Francisco, California, and was president of SAC Associates, a private consulting firm in 
systems analysis, evaluation and curriculum design. The following information was contained 
in a flyer handed out at the in-service training: 

His [Cohen's] curriculum research generated the concept of High Intensity Learning, an ap- 
plication of systems theory to classroom management. Today, thousands of schools around 
the world operate his High Intensity Learning Centers in reading and math. He co-authored 
the Random House series, the first commercially published basal program developed on the 
Mastery Learning model. A second Mastery Learning program, published in 1978, teaches 
pupils how to score high on standardized tests. In 1979 Dr. Cohen authored, designed and 
published a series of graduate textbooks under a SAC subsidiary, Mastery Learning Systems 
(MLS). Cohen was one of the architects of the Job Corps Curriculum System. Has been con- 
sultant to the Right to Read Office, U.S. Office of Education Office of Economic Opportunity.... 
His work as consultant and author to Random House and to 20th Century's B.F. Skinner's 
Reading Program reflects an unusual synthesis of radical behaviorism and humanistic ap- 
proach to curriculum design. . . . 

...[W]ith Harry Passow and Abe Tannebaum of Teachers College, Columbia University, 
Dr. Cohen formed the education task force in the first War on Poverty, Mobilization for Youth. 
Since that time, his training in learning psychology has been applied to research, materials 
and systems development, writing and teaching in three major areas: systems applications 
to curriculum, teaching the disadvantaged and learning disabilities. 

During the in-service training, this writer recorded verbatim Cohen's following points: 

In 1976 Block and Burns published in the American Educational Research Association re- 
search, around the world on mastery learning. United Nations Educational, Scientific and 
Cultural Organization (UNESCO) is committed to Mastery Learning all over the world. We 
have evaluated data worldwide.... Loyola University is the information center for Mastery 
Learning. Amazing amount of data from all over the world that tells the obvious.... You can 
account for 97 out of 100 things you give in a test.... Teaching kids to discriminate between 
long and short "a" is bad... mundane.... Design assessments to fit what teachers are doing.... 
Avoid misalignment of conditions of instruction and conditions of assessment.... 

[Referring to the Iowa and California tests] Start teaching to them or stop using them. 
Find out what they truly measure.... Same issue as defining what you are teaching.... How 
do you get teachers to measure precisely what they teach? You must have an A and that bet- 



198 



ter be different than B, C. and F because not everyone can get to Harvard. They can't buy 
the fact that every kid can get an A.... Way we guarantee no discrimination is to teach and 
test.... Between 1969 and 1971 Omaha, Nebraska implemented mastery learning curriculum 
citywide. Has best curriculum management I've seen anywhere.... New kind of report card... 
listed competencies describing what kids can do and described standardized test scores 
vs. norm-referenced.... Key components of mastery learning are: a) careful control of cues 
(stimuli), what you bring to student; b) careful control of reinforcers; c) kids on task; and 
d) recycling (correctives). 



The Coming Revolution in Education: Basic Education and the New Theory of Schooling 

(University Press of America, Inc.: Baton Rouge, 1983) by the late Eugene Maxwell Boyce, for- 
mer professor of educational administration, Bureau of Educational Studies and Field Services, 
College of Education at the University of Georgia, was published. An excerpt follows: 

In the communist ideology the function of universal education is clear, and easily under- 
stood. Universal education fits neatly into the authoritarian state. Education is tied directly 
to jobs — control of the job being the critical control point in an authoritarian state. Level of 
education, and consequently the level of employment, is determined first by level of achieve- 
ment in school. They do not educate people for jobs that do not exist.... No such controlled 
relationship between education and jobs exists in democratic countries, (p. 4) 



The Maine Facilitator Report on Current National Diffusion Network Activities reported 
in 1983 that "ECRI [Exemplary Center for Reading Instruction] Consortium Winds Down." 
Excerpt follows: 

After five years of operation, the Maine Mastery Learning Consortium will conclude formal 
operation on August 1 . The Consortium, which at times had a membership of as many as 
thirty school districts, was formed in 1978 to provide the services of an ECRI trainer to Maine 
teachers using that mastery learning program. Primary support for the Consortium came 
from Title IV-C, in 1978-1980. From 1980-1982 it operated with federal Title II (Basic Skills) 
funds, and in the past year with local school district funds. The Consortium is ending at a 
time when many schools are just beginning to explore the implications of recent teacher 
effectiveness research. The critical teacher behaviors found to correlate directly with high 
levels of achievement — specifying learning objectives, setting high standards for mastery, 
modeling, practicing, eliciting responses from all students, reinforcing correct responses, 
and time on task — are all key components of the ECRI program that are now being used in 
a routine way by hundreds of Maine teachers because of the Consortium's services. 



Northwest Regional Educational Laboratory (NWREL) published Effective ScHOOLing 

Practices: A Research Synthesis — Goal-Based Education Program in the mid-1980s. [Goal-based 
education = outcomes-based education] NWREL is a federally funded laboratory whose role 
has always been to develop goals for American education. An excerpt from Effective Schooling 
Practices follows: 



The "Effective" Eighties : c. 1983 



199 



Incentives and Rewards for Students Are Used to Promote Excellence: 

1 . Systems are set up in the classroom for frequent and consistent rewards to students for 
academic achievement and excellent behavior; they are appropriate to the developmental 
level of students; excellence is defined by objective standards, not by peer comparison. 

2. All students know about the rewards and what they need to do to get them. Rewards are 
chosen because they appeal to students. 

3. Rewards are related to specific achievements; some may be presented publicly; some 
should be immediately presented, while others delayed to teach persistence. 

4. Parents are told about student successes and requested to help students keep working 
toward excellence. Brophy (1980); Brophy (1981); Emmer (1981); Evertson (1981); Hunter 
(1977); Rosswork (1977); Rutter (1979); Walker (1976). 

[Ed. Note: An example of the pervasiveness of Skinnerian operant conditioning, with its 
rewards/reinforcement system, is found in the Effective School Research on "school climate." 
The definition of "positive/effective school climate" has varied; one definition being "psycho- 
logically facilitative environment" — Skinner to the core. The Charles F. Kettering Foundation 
Ltd. (Dayton, Ohio) School Climate Profile, based on Eugene Howard's Colorado Model, con- 
tains a mark-off sheet with blocks in which data are arranged by "Almost Never, Occasion- 
ally, Frequently, and Almost Always" to score behavior. Under "Program Determinants" from 
"Definitions of Climate Terms" in Howard's Colorado Model, we find this wording: 

2. INDIVIDUALIZED PERFORMANCE EXPECTATION AND VARIED REWARD SYSTEMS: 

Practices are identified whereby staff members recognize individual differences among pupils. 
Everyone is not expected to learn the same things in the same way or in the same length 
of time. Rewards are sufficiently available so that all pupils, with effort, may expect to be 
positively and frequently recognized by the school. 



Researcher and writer K.M. Heaton, in her revised edition of an article entitled "Pre- 
conditioning for Acceptance of Change" explained very clearly in 1983 how radical change in 
our republican form of government has been brought about at the local level through the use 
of psychopolitics. 11 The following are excerpts from Mrs. Heaton's article: 

Variants of these control strategies have been, and are being, used on every front in this 
war. A case in point: In the early seventies, a textbook was developed by a think tank in 
Berkeley, with the authority of the Governor's [Ronald Reagan] office, and coordinated by 
the Council on Intergovernmental Relations, which provided an elementary course in the use 
of psychopolitics "to provide the operant mechanism to change events in local government" 
(a direct quote) . Named as the essential elements for planned change were: 

• development of a climate for change; 

• a crisis of major importance; 

• a catastrophe having a physical effect on community; 

• mounting cost of government, and/or major services; 

• and/or collapse of government's ability to deal with these. 



200 



The Politics of Change (TPOC) then proceeded to suggest how to create these elements. 
TPOC offers prima facie evidence of a deliberate, calculated scheme to disinform, mislead, 
manage and control the destiny of local government in California and its citizens, without 
regard for legal, moral or ethical considerations. 



1984 

During January and February of 1984, this writer — with the help of grassroots activists 
and several officials in the U.S. Department of Education — organized witnesses and testimony 
to be presented at the U.S. Department of Education "Hatch Amendment" hearings held in 
seven cities: Seattle, Washington; Pittsburgh, Pennsylvania; Kansas City, Missouri; Phoenix, 
Arizona; Concord, New Hampshire; Orlando, Florida; and Washington, D.C. These hearings 
were held "pursuant to the notice of proposed rulemaking to implement Sec. 439 of the General 
Education Provisions Act {The Protection of Pupil Rights Amendment)." 

This Amendment is usually referred to as the "Hatch [Sen. Orrin] Amendment," although 
the senator who originated it and was most involved in the initial important wording was the 
late Senator Edward Zorinsky (D.-Neb). As the amendment went through the Congressional 
committee process, Zorinsky's most important wording was weakened or deleted. 

The weakened wording which attempted to address long-standing problems experienced 
by parents and good educators follows: 

Protection of Pupil Rights, 20 U.S. Code Sec. 1232h, Inspection by parents or guardians of 
instructional material.... 

(a) All instructional material, including teachers' manuals, films, tapes, or other supple- 
mentary instructional materials which will be used in connection with any research or experi- 
mentation program or project shall be available for inspection by the parents or guardians of 
the children engaged in such program or project. For the purpose of this section "research or 
experimentation program or project" means any program or project in any applicable program 
designed to explore or... develop new or unproven teaching methods or techniques.... 

Psychiatric or psychological examination, testing or treatment:... 

(b) No student shall be required, as part of any applicable program, to submit to psychiatric 
examination, testing or treatment, or psychological examination, testing or treatment, in 
which the primary purpose is to reveal information concerning political affiliations; mental 
and psychological problems potentially embarrassing to the student or his family; sexual 
behavior and attitudes; illegal, anti-social, self-incriminating and demeaning behavior; critical 
appraisals of other individuals with whom respondents have close family relationships; legally 
recognized privileged and analogous relationships, such as those of lawyers, physicians, and 
ministers; or income (other than that required by law to determine eligibility for participation 
in a program or for receiving financial assistance under such program); without the prior 
consent of the student (if the student is an adult or emancipated minor) , or in the case of 
an unemancipated minor, without the prior written consent of the parent. 



The "Effective" Eighties : c. 1984 



201 



At the annual meeting of the American Educational Research Association held in New 

Orleans, Louisiana in April of 1984, Brian Rowan, Ph.D. in sociology, presented a paper entitled 
"Shamanistic Rituals in Effective Schools." The work on this "curious" paper was supported 
by the National Institute of Education, U.S. Department of Education (Contract #400-83-003) . 
Rowan should be noted as one of the principal investigators involved in the infamous 1984 
grant to Utah (See later 1984 entry for Utah grant) to implement William Spady's Outcome- 
Based Education program, the purpose of which was to "put OBE into all the schools of the 
nation." 

The "curious" nature of this paper is derived from Dr. Rowan's implied criticism of the very 
Effective Schools Research with which he is so closely associated. The importance of Rowan's 
paper lies in Rowan's professional credentials and willingness to bring to the debate table a 
discussion of the legitimacy of claims of "effectiveness" made by those associated with the 
Effective Schools movement (William Spady, et al.), including promoting outcome-based edu- 
cation, mastery learning and direct instruction — all of which are required by Effective Schools 
Research. This presentation helps one to better understand the dismal academic results to be 
found in schools using Effective Schools Research; i.e., most often urban schools attended by 
underprivileged and minority children. 

The following quotes are taken from "Shamanistic Rituals in Effective Schools" which 
can be found in its entirety in Appendix XXVI of this book: 

We begin with one of the most common shamanistic rituals in the effective schools 
movement, the glowing literature review. . . . 

. . .Lacking a systematic understanding of the scientific pros and cons of effective schools 
research, naive individuals are left only with the powerful and appealing rhetoric of the 
reviewers.... The experienced shaman knows to avoid the scrutiny of scholars, for this can 
raise objections to the "scientific" basis of ritual claims and divert attention away from the 
appealing rhetoric. Instead, the shaman cultivates the practitioner who needs a simple and 
appealing formula. 

Thus, any experienced shaman can find "effective" schools.... 

The ritual is particularly suited to application in urban or low performing school sys- 
tems where successful instructional outcomes among disadvantaged students are highly 
uncertain but where mobilized publics demand immediate demonstrations of success. The 
uncertainties faced by practitioners in this situation can easily be alleviated by what scholars 
have begun to call curriculum alignment [teach to the test] .... 

Thus, the art of measurement can be used as an aid to shamanism, especially in urban 
schools plagued by the uncertainties of student performance. Student variability in perfor- 
mance can be reduced, and relative performance increased, not by changing instructional 
objectives or practices, but simply by changing tests and testing procedures. 



The Office of Educational Research and Improvement of the U.S. Department of Edu- 
cation in 1984 approved a grant from the Secretary's Discretionary Fund in the amount of 
$134,459 (Grant No. 122BH40196) to Vanderbilt University to implement Vanderbilt's proposal 
entitled "National Network for Educational Excellence." This project covered a period from 
October 1984-October 1985 to use a computer-based network of fifty superintendents to col- 
lect and exchange information about "effective" practices and to encourage national dialogue 
about increasing school "effectiveness," so as to promote educational excellence. (Quotation 



202 



marks have been added around the words "effective" and "effectiveness" to alert the reader 
to the fact that this grant was another effort to implement "Effective Schools Research" based 
on Skinnerian psychology. Rowan's remarks in the entry prior to this one cast an interesting 
light on this information.) At the time this grant was made, Chester Finn was professor of 
education and public policy at Vanderbilt University. Finn would shortly thereafter be named 
assistant secretary to the Office of Educational Research and Improvement under Secretary 
of Education William Bennett who, in 1985, provided over $4 million to implement Effective 
School Research nationwide. 



A Letter to President Ronald Reagan was written by Willard W. Garvey, EXECutive 
director of the National Center for Privatization, dated April 6, 1984. 12 An excerpt follows: 

Privatization is now an idea whose time has come.... The knowledge, communication and 
computer industry can make political representatives obsolete. Privatization might well be 
the theme for the 200th anniversary of the Constitution. Privatization is essential for national 
salvation. 

The following notation was printed on the letterhead of the above-mentioned letter: 

The National Center for Privatization is supported by the following groups and individuals: 
Heritage and Reason Foundations; Pacific and Manhattan Institutes; VOLUNTEER; National 
Center for Citizen Involvement; International Executive Service Corps; United Way with its 
Services Identification System; National Legal Center for the Public; churches; labor unions, 
Peter Drucker and Milton Friedman. 



The Spring 1984 issue (Vol. 7, No.4) of Education Update from the Association for Su- 
pervision and Curriculum Development carried the following statements: 

One comprehensive study concludes that counseling can have marked deleterious effects 
on problem students. Joan McCord, a Drexel University sociologist, undertook a 30-year fol- 
low up study of a classic, highly respected study on juvenile delinquency — "The Cambridge 
Somerville Youth Study." In the original study (first report in 1948) an experimental group of 
253 high-risk problem boys were given extensive counseling. A control group matched as to 
behavior, history, and family background received no counseling. In 1975 Professor McCord 
contacted the original participants and compared the circumstances of the experimental and 
control subjects. The experimental subjects were, among other things, found more likely to 
commit criminal acts, be alcoholics, suffer from mental illness, die younger, and have less 
prestigious jobs than the control group. 

[Ed. Note: The results of this study match the negative results discussed in the May 1977 is- 
sue of The School Counselor, American Personnel and Guidance Association's Special Issue 
on Death, which said,"Death education will play as important a part in changing attitudes 
toward death as sex education played in changing attitudes toward sex information and wider 
acceptance of various sexual practices." In other words, counseling, sex ed and death ed have 
negative effects, if, as one would hope and expect, the purpose of such programs is to help 
young people live happy and stable lives. This is particularly disturbing in light of increased 



The "Effective" Eighties : c. 1984 
student violence which has taken place in the nation recently.] 



203 



Stephen Broady of Tarkio, Missouri presented testimony in 1984 at the U.S. DEpartment 
of Education's Region VII hearing on "Notice of Proposed Rulemaking to further implement 
Section 439 of the General Education Provisions Act, 34 CFR, Parts 75, 76, and 98, 20 U.S.C.A. 
Section 2132(h) 20 U.S.C. 1231 e-3 (a) (1), 1232h {Hatch Amendment)." Broady's statement 
exposes the controversial nature of the two leading mastery learning programs — Exemplary 
Center for Reading Instruction (ECRI) and Project INSTRUCT — both of which use Skinnerian 
operant conditioning and both of which submitted claims of effectiveness which have been 
questioned by persons involved in implementing and evaluating the programs. The third pro- 
gram, DISTAR (Direct Instruction for Systematic Teaching and Remediation), which is similar 
to ECRI, is the highly recommended "scientific, research-based" phonics program so popular 
with conservatives in the late 1990s. The following are some excerpts from Stephen Broady's 
testimony: 

I am a farmer currently engaged in the operation of over one thousand acres of prime farm 
ground. I became interested in education after my wife and I observed emotional change 
in our daughter while she was attending a rural public school using an "approved" federal 
educational project. . . "Project INSTRUCT". . . approved for funding in the amount of $710,000 
and for nationwide use by the Joint Dissemination Review Panel on May 14, 1975 (JDRP 
#75-37). 

Although Project INSTRUCT is only one of over 300 "approved" educational projects, 
Project INSTRUCT and the educational project upon which it is based, the Exemplary Cen- 
ter for Reading Instruction (ECRI) , are the most widely used mastery learning educational 
projects in the United States. 

...These mastery learning systems use a type of psychological manipulation based on 
the Skinnerian ideology of rewards and punishments, and individual feelings are irrelevant.... 
More commonly referred to as "behavior modification," the Skinnerian ideology which is 
used in the teaching techniques of these mastery learning systems, breaks down the process 
of learning into small bits of information and actually codes a type of behavior that is desired 
into the learning process itself. 

The real objective of these mastery learning systems with their behavior modification, 
is a deliberate attempt to make children conform to an artificial environment which is more 
suited to the thinking of the school than to the needs of the children. 

These federally funded mastery learning systems require the use on young children of 
a highly structured curriculum, test and re-test with the use of criterion tests, stopwatches, 
direct eye contact, physical contact, and psychological manipulation until the so-called 
"mastery" of the subject is achieved. These ideas and practices form a complex philosophy 
in which the "authoritarian" concept predominates. 

In the early part of 1983, I obtained the evaluation report of Project INSTRUCT from 
the superintendent's office of the Lincoln Public Schools. At that time I was unaware the 
so-called behavior modification based on Skinner's rewards and punishments was used on 
my daughter. 

The evaluation results clearly referred to behavioral objectives which were. . . established 
for: (a) students; (b) parents; (c) administrators; (d) media specialists; (e) project staff; (f) 
teachers; (g) paraprofessionals and volunteers, and (h) prospective teachers. 

The wholesale use of behavior modification is part of Skinnerian psychology. As it was 
outlined in the evaluation, Project INSTRUCT includes rewards and punishments, not only 



204 



for school children, but for anyone who comes in contact with the school system itself. 

The Evaluation of Project INSTRUCT, Executive Summary, written by Carl Spencer, 
project director for Lincoln Public Schools, also explains that: 

Project INSTRUCT grew from beliefs that to reduce reading failure reading programs 
must (1) be diagnostic and prescriptive so that failure does not begin to occur, (2) be im- 
plemented by regular teachers in regular classrooms, (3) provide direct rather than indirect 
teaching, (4) correlate instruction in all language skills, particularly reading, spelling and 
handwriting.... 

The intent and emphasis in 1970 was on behavioral indices and concrete ways of showing 
accountability; and the data would suggest that the reading of the students themselves may 
not have increased, but the impact of Project INSTRUCT in the Lincoln, Nebraska Publish 
Schools seems to be very extensive and influential. 

[Ed. Note: Project INSTRUCT accomplished its major objective — it developed and installed 
a less than successful reading program in Lincoln, Nebraska using a model which could be 
transported to other districts. It also had considerable impact upon the district as a whole, 
on schools outside of Lincoln and even on the Nebraska State Department of Education. In 
assessing this impact as a whole, Dr. Ronald Brandt, assistant superintendent for instruction, 
has said of this project, "Project INSTRUCT made a lasting contribution to instruction in the 
Lincoln Schools by helping us improve our planning capabilities and by furthering the concepts 
of focused instruction and mastery learning." 

It should be noted that Dr. Ronald Brandt went on to become the executive editor of the 
Association for Supervision and Curriculum Development's (ASCD) publication Educational 
Leadership. ASCD could be considered the most influential education organization in the 
world, outside of UNESCO.] 

David W. Hornbeck, chairman of the board of trustees of the Carnegie FouNDAtion 

for the Advancement of Teaching and Maryland's state school superintendent, oversaw the 
implementation of Project BASIC in 1984. Project BASIC was based on the very controversial 
Management by Objectives (MBO/PPBS) that is thoroughly discussed in this book. 

One of the more controversial graduation requirements in Project BASIC was "the worthy 
use of leisure time," which was later given the more acceptable and politically correct label of 
"arts and recreation" — another semantic deception at work. However, Hornbeck's penultimate 
controversial recommendation — one which would reverberate from coast to coast, resulting 
in heated debate at local school board meetings — was his recommendation to the Maryland 
State Board of Education that community service become a mandatory graduation requirement. 
Many objections were raised on the grounds that that recommendation constituted involuntary 
servitude, thus making it unconstitutional. 

[Ed. Note: In this writer's opinion, David Hornbeck is a soft-hearted, highly paid "should-have- 
been" Presbyterian minister do-gooder who approaches his job with missionary fervor rooted 
in theologian Reinhold Niebuhr's idea that a good Christian must strive to correct any unjust 
status quo. However, his mission seems to be to help implement a socialist world government, 
increasingly referred to as "The New World Disorder, " as was the goal of the do-gooder Federal 
Council of Churches in 1942, working toward all being equally poor, miserable and illiterate. 



The "Effective" Eighties : c. 1984 



205 



Should the elitist power brokers, for whatever reason, feel they need the expertise of the 
Hornbecks of this world, please spare those least able to protect themselves — the minorities 
and disadvantaged — from the change agents' experimentation.] 

An article entitled "Industrial Policy Urged for GOP" was published in The Washington 
Post on May 14, 1984. Excerpts follow: 

SAN FRANCISCO (UPI) — A conservative study group founded by supporters of President 
Reagan is about to issue a report that advocates Republicans shed some of their deep-rooted 
antipathy to a planned economy 

An industrial policy accepted by both political parties and by business and labor is 
essential to revitalize America's dwindling clout in the world economy, according to the 
study's editor, Professor Chalmers Johnson of the University of California. 

"The Industrial Policy Debate" is to be issued today by the Institute for Contemporary 
Studies, a think-tank founded by presidential counselor Edwin Meese, Secretary of Defense 
Caspar Weinberger and other Reagan supporters. 

"What we are really trying to pose is a serious debate that has become stupidly politi- 
cized by both parties," Johnson said. "We are trying to get the question of an industrial policy 
for the United States to be taken seriously by people who don't really believe in it — above 
all Republicans. 

"Americans must come to grips with economic policy or go the way of England. We 
have probably got a decade before it becomes irreversible. " 

In the United States, he said, "The whole topic we are trying to address is so caught 
up with politics and the particular positions of industries that it is very hard to disentangle 
what we mean by economic policy. " 

While the Democrats are "planning to throw money at the northern Midwest 'rust' 
belt" to get votes, Johnson said many Republicans "are painting themselves into a corner by 
attacking the very concept of industrial policy — arguing that it violates the sacred principles 
of private enterprise and free trade. " 

He cited as a valid and successful national economic policy "the kind of government- 
business relationship" that has made Japan a leading economic force in the world. "A gov- 
ernment-business relationship is needed in a competitive capitalist economy," he said. 

"Reaganomics without an accompanying industrial policy to guide it, has been costly," 
Johnson said. 



U.S. Department of Education Press Release for June 14, 1984 follows: 

Secretary of Education T.H. Bell today announced planned missions and geographic regions for 
a nationwide network of educational research laboratories and centers in preparation for the 
largest discretionary grant competition ever conducted by the U.S. Department of Education. 
Centers will be selected to construct research on improving: writing; learning; teacher quality 
and effectiveness; teacher education; testing, evaluation and standards; effective elementary 
schools; effective secondary schools; education and employment; postsecondary education 
management and governance; postsecondary teaching and learning; and state and local policy 
development and leadership in education. For the first time in almost two decades, all parts 
of the United States will receive full services from the research laboratories. 



206 



[Ed. Note: All of the above increase in federal control came from an office (NIE) in the U.S. De- 
partment of Education which President Reagan had promised to abolish. Note the emphasis on 
funding for OBE/ "effective schools," which use Skinnerian operant conditioning methods.] 

In 1984 Jacqueline Lawrence gave testimony before the Subcommittee on EDUCAtion, Arts 
and Humanities of the Senate Committee on Labor and Human Resources which held hear- 
ings on Senate Joint Resolution 138, a bill establishing a commission on teacher education. 
Excerpts from Mrs. Lawrence's testimony follow: 

My name is Jacqueline Lawrence. I am a parent from Montgomery County, Maryland.... 

Prior to the 1960s, American public schools placed major emphasis on the intellectual 
development of our children, on their mastery of basic skills such as reading, writing and 
mathematics. Competency in physics, biology, chemistry, and chronological factual history 
was required. Cognitive learning and scholarly objectivity were stressed as the basic approach 
to education at all levels. As a result, our nation produced a large, well-educated middle 
class— our greatest strength. 

[Ed. Note: Mrs. Lawrence's comments regarding the "major emphasis on intellectual devel- 
opment prior to the 1960s" remind the writer of a scholarly ancient history textbook used in 
a high school history course at the Rockland, Maine District High School as late as the early 
1970s. (It took awhile for the change agents to penetrate a fishing community on the coast of 
Maine!) The textbook written by Professor James Breasted, an Egyptologist and Semitic scholar, 
is a fascinating and extremely well written history of Ancient Greece, Egypt, etc., with few 
black and white photographs, quizzes at the end of each chapter, and text written for college 
level students. That was only 25 years ago! It would be virtually impossible to find a textbook 
of that scholarly level in public high schools or in most colleges today. This writer has noth- 
ing but a feeling of tremendous sadness pondering the vapid education landscape Americans 
seem so willing to accept for their offspring. It is my constant hope that American apathy in 
this regard is due to their not knowing what has happened, and that once they know, they 
will — all of them — collectively and individually attempt to reverse this situation.] 

Mrs. Lawrence continued: 

It is public knowledge that since the 1960s academic standards have declined. Why? 
Quite simply, over the past 20 years our schools have not placed emphasis on academic 
achievement. There has instead been a shift toward psychological development and social 
adjustment of students in the affective domain, that is, their feelings, attitudes, and opin- 
ions. 

The shift began in 1965 with the passage of the Elementary and Secondary Education 
Act (ESEA).... Since 1965, billions of federal dollars have been allocated to educational the- 
orists and curriculum developers to alter the course of public education. The blueprint for 
the process of educational reform may be found in a series of guides known as Pacesetters 
in Innovation.... From this has come a nationwide information network of ERIC clearing- 
houses (Educational Resource Information Centers) and the National Diffusion Network of 
laboratories for the dissemination of federally funded classroom materials and curriculum. 

With the new programs came a retraining of the teachers. A prime example: in 1969 
the Office of Education began financing model teacher education programs known as the Be- 
havioral Science Teacher Education Program (BSTEP-OE 5803) to introduce to the classroom 



The "Effective" Eighties : c. 1984 



207 



methods employed by the behavioral scientists, the sociometrist, and the psychiatrist. 

Such methods are the most coercive and manipulative known to man today. They were 
originally developed and used for treating mentally disturbed in mental institutions and the 
criminally insane in prisons. The techniques are role-playing, psychodrama, sociodrama, 
simulation games, guided fantasy, diary-keeping, situation attitude scale tests, encounter 
groups, magic circle, and behavior modification such as isolation, time-out boxes and cof- 
fins, as well as operant conditioning. These are techniques to influence by clinical, hospital 
procedures the thinking processes of children in a compulsory classroom setting. 

In addition to training teachers, a special cadre of sensitive manipulators, known as 
change agents, were trained to facilitate the process of change and to identify forces which 
resisted change. 

The change agent serves as a catalyst for teacher and citizen awareness and attempts 
to gain support for educational change. 

Dr. John Goodlad's Report to the President's Commission on School Finance, Issue #9, 
"Strategies for Change," dated October 1971, explains that the change agent is the decision- 
maker. He decides which changes a school will make. The report states that five to fifteen 
percent of the people in a given community are open to change. They are the Early Majority 
and can be counted on to be supportive. A second group, 60 to 90 percent, are the Resist- 
ers; they need special attention and careful strategies. Also there are Leaders, formal and 
informal, and their support is critical for effecting change. 

In a diagram from the report... you will note that the change agent creates the Early 
Majority and influences the Leaders, and then gets both of these groups to act in concert 
with him to level a triple attack on the Resisters. 

Goodlad's report to the President expressed concern about the willingness of the people 
to change: "People cannot be forced to change until they are psychologically ready"... 

...Even if we assume for the sake of argument that change agents are gifted with in- 
finite knowledge and wisdom, their methods are in conflict with the political principles of 
democracy. Their changes in curriculum and methods and goals of education have not come 
as a result of democratic discussion and decision. 

In this vein, it is interesting to note that the Maryland State Teachers Association has 
lobbied against proposed state legislation for parental access to classroom materials because 
teachers "would be ineffective as change agents."... 

...Moreover, education is now termed psycho-social, psycho-medical, humanistic, af- 
fective and/or diagnostic and prescriptive. Educators diagnose the child's emotional, intel- 
lectual, perceptual and conceptual development levels. Dr. Benjamin Bloom explains that 
what educators are classifying is the intended behavior of students, or as he puts it, "the 
ways in which individuals are to act, think, or feel as a result of participating in some unit 
of instruction." 

In order to bring about desired attitudinal changes in students, teachers must first know 
where a child is in his or her attitudes and opinions. Various tactics and techniques are used 
in classrooms to make a child reveal himself to his teacher and peers. The examples I use 
below are nationally used and have received federal funding: 

• Magic circle, talk-in, contact or group discussions: The teacher gathers the children 
into a circle where they are encouraged to discuss personal feelings about one another, 
their parents, and home life. Family size, advantages, disadvantages, comparison of 
toys, vacations, and clothing may be discussed. Family conflicts, worries and fears 
are often revealed. 

• Inside-Out: A nationally-used elementary social studies program encourages students 
to discuss their feelings before, during and after their parents' divorce; their personal 



208 



reactions to the death of a friend, pet or relative; what your friends think of you; 
what adults think of you and what you think of yourself. 
• Logbooks: These are workbooks used in conjunction with many language arts 
textbooks. They are vehicles for children to reveal their reactions to short stories, 
often dealing with emotions and moral dilemmas. There are no right answers, only 
personal responses. Sometimes the logbooks guide the child into a response. For 
instance: 

Even if your family is a happy one, you're bound to feel sad... or even lonely. 
When might a person be lonely even if he is part of a family? Loneliness is listen- 
ing to your parents arguing. Loneliness is when you come home and there's no 
one there. Loneliness is.... 

Perhaps the most frequently used strategies for self-revelation are the diary and role-playing. 
These techniques were introduced into American public schools by an Estonian teacher, 
Hilda Taba, and a Romanian psychiatrist, Jacob Moreno. 

[Ed. Note: In 1957 a California State Senate Investigative Committee exposed the work of Hilda 
Taba, Jacob Moreno and others. In spite of this exposure, these people continued to receive tax 
dollars and access to schools nationwide. Hilda Taba's program has remained in use by key 
change agents from 1960 to 1999. Bruce Joyce and Marsha Weil's Models of Teaching mentions 
her work as well as that of many other sociologists, behavioral psychologists, etc. As a school 
board director in 1976, the writer found materials related to the above-described programs 
and many others described by Mrs. Lawrence in a box given to her by a home economics 
teacher. Needless to say, the writer was shocked to find that behavior modification was being 
introduced into the curriculum under the innocent-sounding "home economics" label.] 

The U.S. Office of Education gave grants to Taba to develop an elementary social studies 
program to improve the social adjustment and personality development of children. She had 
worked in reform schools and mental institutions with Moreno and found that role-playing 
and diaries were successful tools to learn where a child stood in his beliefs, attitudes, and 
social interactions. 

The diary has been used for years in Russia and China for self-revelation, self-eval- 
uation, and self-criticism. More recently the personal diary was found in Guyana throughout 
the Jim Jones compound. 

Montgomery County, Maryland, requires its students to keep a diary from kindergarten 
through grade nine. Diaries are an important psychological instrument. They provide a precise 
record and personality profile of the child, his family members, neighbors and peers — in- 
formation needed by the teacher or therapist to alter a student's behavior or attitude. It is 
important that the writing be free-style and spontaneous, coming directly from the emotional 
feeling area of the child. Diaries are not corrected for form, grammar or spelling.... 

A teacher manual for values education suggests 15 kinds of diaries for use in the class- 
room; some examples are a budget diary, religion diary, hostility and anger diary, low points 
diary, affectionate and tender feelings diary, and a time diary. . . . 

In the psycho-social approach to education, the child is taught concepts through the 
use of psychotherapy. For example, to better understand the social problem of prejudice and 
to teach children through experiential learning, blond children in a fifth grade (age 10) were 
asked to sit in the back of the room for one week, totally isolated, not permitted to participate 
in the classwork. For a one-and-a-half hour period each day, brown-haired students were 
instructed to pick on, insult, make fun of or taunt the blonds. Needless to say, taunting 



The "Effective" Eighties : c. 1984 



209 



spilled over onto the playground with some of the blonds being told, "You can't play with 
us." At the end of the week, blonds were given candy bars as a reward for their suffering, 
but the browns, who in bullying were obeying the teacher's instructions, were given noth- 
ing. How does a child react to being punished or deprived for carrying out his assignment? 
How much learning went on in that classroom for five days? Some children enjoyed taunting 
and bullying. Was the week spent on such "experiential learning" quality time? What about 
the seven and one-half hours spent in taunting? Would this time have been better spent on 
academic learning?... 

Educators use the even more volatile psycho-drama for attitudinal change. One example 
is the concept that we must prune away defective persons in order to improve the quality 
of life for the remainder of the group. This drama involves murder. Many variations are 
found. I first came across this psychodrama theme in a federally funded home economics 
curriculum guide... containing the exercise "Whom Will You Choose?" It goes as follows: 
11 people are in a bomb shelter with provisions sufficient to last 11 persons two weeks or 
six persons a month. The group is told that five persons must be killed. They are instructed 
to accept the situation as fact, that is, to concern themselves with life/death choices, not 
with attacking the logic or probability of the situation. A profile is given of each person in 
the shelter. Problem people, such as the athlete who eats too much, the religious type with 
"hang-ups," the pregnant or ill are generally killed. Survivors tend to be those trained in 
medicine, engineers, and pacifiers. 

[Ed. Note: Jacqueline and Malcolm Lawrence had just returned from their Foreign Service 
assignment in Europe and were appalled to encounter what had happened to American edu- 
cation in their absence. The Lawrences organized "Parents Who Care" and began to confront 
the school district with what they had discovered. Due to the broad publicity generated by 
the group's assertions and activities, Edward Hunter, former intelligence service operative and 
author of two books on his coined word "brainwashing" as practiced pre- and post- World War 
ll 13 — Brainwashing and Brainwashing in Red China: The Men Who Defied It— approached the 
Lawrences with a request to examine the curriculum materials about which they had become 
concerned. Hunter took the materials for a period of time and upon returning them, informed 
Jackie and Malcolm that they were indeed examples of methods and techniques used in Russian 
and Chinese brainwashing. (The Maryland State School Board also made a statement regarding 
the fact that Maryland's teachers were not trained to use "psychoanalytical techniques in the 
classroom.") The psycho-social technique for confronting prejudice (isolation of the blonds) 
should be especially disturbing in light of increased concern over schoolyard taunting and 
increased school violence at the close of this century.] 

"E.C.S. at 20: The Compact's Potential Is Still to Be Realized" by Thomas Toch was an 

article from Education Week (October 24, 1984) which covered the early history of the Educa- 
tion Commission of the States. The excerpts warrant repeating: 

"Some degree of order needs to be brought out of this chaos," wrote James B. Conant, 
the President of Harvard University, in 1964 in reference to education policymaking in this 
nation. "We cannot have a national educational policy," he added in his book Shaping 
Educational Policy, "but we might be able to evolve a nationwide policy." The solution, 
Mr. Conant concluded, was a "new venture in cooperative federalism," a compact among 
the states to create an organization to focus national attention on the pressing education 
issues of the day. The following spring, the Carnegie Corporation and the Ford Foundation 



210 



awarded a grant to Terry Sanford, who had recently left the governorship of North Carolina, 
to transform the Conant idea into reality. John W. Gardner was Carnegie's president at the 
time. A preliminary draft of the compact was completed by July and endorsed by represen- 
tatives from all 50 states and the territories in September. Within five months, 10 states had 
ratified the agreement, giving it legal status. Out of the compact was born the Education 
Commission of the States (ECS).... 

"We invented a little device to get the compact approved quickly," Mr. Sanford, now 
the president of Duke University, said recently. "We didn't need money from the legisla- 
tures, we had plenty of foundation funding, so we agreed that the governors could ratify it 
by executive order."... 

But since the establishment under Governor James B. Hunt [also of North Carolina] of 
the Commission's Task Force on Education for Economic Growth two years ago, ECS's role 
has begun to change. The task force's report Action for Excellence joined A Nation at Risk 
and the Carnegie Foundation for the Advancement of Teaching's High School as principal 
voices in the chorus of reform. It gained Gov. Hunt and several other "education governors" 
who were linked to ECS wide national publicity, and, in making a series of specific reform 
recommendations, thrust ECS into the policy-making arena. 

[Ed. Note: The multi-million dollar contract to operate the National Assessment of Educational 
Progress, awarded to the ECS in 1969, was transferred to Educational Testing Service (ETS) in 
1983. This move was significant due to Carnegie's deep involvement in establishing, funding, 
and directing ECS's and ETS's activities. Essentially, this move gave Carnegie Corporation and 
Carnegie Foundation for the Advancement of Teaching extensive control over the direction and 
content of American education as a whole and individual state policy making in paticular with 
regard to education. Dennis Cuddy, Ph.D. — rightly, it seems — refers to the U.S. Department of 
Education as the "Carnegie Department of Education."] 

The presidentially appointed National Council for Educational Research (NCER) issued 
two "Policies on Missions for Educational Research and Development Centers," dated June 
14 and October 25, 1984, shortly after regional hearings had been held regarding the need for 
regulations to implement the Protection of Pupil Rights Amendment (PPRA) . The following 
are excerpts from NCER's two policy statements: 

JUNE 14, 1984. In the past two decades, federally funded research and curriculum projects 
have frequently provoked considerable controversy. This is primarily a result of deeply di- 
vergent philosophical views on the nature and purpose of public education in this country. 
During this period, the views of the general public were, for the most part, excluded from 
serious consideration as educational research came to be viewed as the observation and 
measurement of the education process using the largely quantitative techniques of modern 
social science [Skinnerian behaviorism] . 

OCTOBER 25, 1984. Insofar as it represents a broad spectrum of interests, including parents 
who have a serious stake in the outcomes of federally funded educational research, the 
Council affirms that the fundamental philosophical foundation for such research should be 
the unambiguous recognition and respect for the dignity and value of each human person. 

For the past fifteen years the U.S. Department of Education has ignored the testimony 



The "Effective" Eighties : c. 1984 



211 



taken at the regional hearings, the views spelled out in the above-mentioned policies, as well 
as the requirements of the PPRA. The two policy statements represent a strong position taken 
by the National Council, which oversaw the research activities of the former National Institute 
of Education prior to its being incorporated into the Office of Educational Research and Im- 
provement (OERI) . The Council had quite obviously read the important testimony regarding 
Skinnerian mastery learning/direct instruction which was given at the regional hearings on the 
PPRA. The Council took a stand on the most important question facing us today in education: 
Are we, as free Americans, going to continue to accept the succinctly expressed definition of 
educational research included in the last sentence of the June 14 policy, a definition which 
is undeniably behaviorist and part of the behavioral psychologists' vocabulary — "observa- 
tion and measurement of the educational process using the largely quantitative techniques of 
modern social science"? Or do we agree with the Council that the fundamental philosophical 
foundation for such research should be the "unambiguous recognition and respect for the 
dignity and value of each human person"? 

[Ed. Note: As a complete counterpoint to the strong policy position taken by the council, the 
following information should be carefully considered. Professor Robert Glaser, professor of 
psychology and education and co-director of the Learning Research and Development Center 
of the University of Pittsburgh, was for all intents and purposes put in charge of the Com- 
mission on Reading in 1983. It was Glaser who appointed members to the Commission on 
Reading, thereby wielding considerable influence on the recommendations resulting from that 
Commission's report, Becoming a Nation of Readers, for which Glaser wrote the foreward and 
which was published under the auspices of the National Academy of Education's Commission 
on Education and Public Policy with sponsorship from the National Institute of Education. That 
report was probably the most important study which set the stage for the Reading Excellence 
Act of 1998 (REA), setting in motion numerous activities which resulted in a determination 
that only proposals which were based on "scientific research" would be accepted for funding 
under the REA. In the foreward to Becoming a Nation of Readers, Glaser said: 

In teaching, as in other professions, well-researched methods and tools are essential. This 
report makes clear the key role of teachers' professional knowledge. Research on instructional 
pacing and grouping and on adaptation to children's accomplishments has contributed to 
new ideas that can help all children master the basics and then attain levels of literacy far 
beyond the basic competencies. The reading teacher's repertoire must draw upon the deep- 
ening knowledge of child development, of the nature of the art and elegance of children's 
literature, and of the psychology of learning.. . . The report indicates why changes in teacher 
training, internship experiences, continuing, and sabbatical periods are necessary if teachers 
are to learn and refine their skills for their complex task. 

Professor Glaser's credentials are uniquely important, placing him in a position of promi- 
nence regarding what method of instruction will be used in American classrooms — one based 
on the worldview that man is a human being, created in the image of God, with conscience, 
soul, intellect, creativity, free will, or one based on the new psychology of learning ("scientific," 
evolutionist, "research-based") — the worldview that man is an animal whose behavior can be 
manipulated by creating the necessary environment to bring about predictable, predetermined, 
neurologically conditioned responses. (The reader should refer to Appendix III, "Excerpts from 
Programmed Learning: Evolving Principles and Industrial Applications," which is a report of 



212 



a 1960 seminar of businessmen and social scientists to discuss programmed learning and its 
application to business, at which professors B.F. Skinner, Arthur A. Lumsdaine and Robert 
Glaser were the speakers and discussion leaders. Robert Glaser was also a research advisor to 
the American Institute for Research at that time. Several pages of this report of the seminar 
are devoted to Glaser's "Principles of Programming.") 

According to the following quote from an official Mission, Texas, school memorandum 
to concerned parents, Exemplary Center for Reading Instruction (ECRI), the fraternal twin of 
DISTAR (Direct Instruction for Systematic Teaching and Remediation), led the pack as far as 
Robert Glaser's National Commission on Reading was concerned: 

In 1986 ECRI was evaluated as playing a primary role in the United States becoming a nation 
of readers. The Regional Laboratory for Educational Improvement (sponsored by the U.S. 
Office of Educational and Improvement) published Implementing the Recommendations of 
Becoming a Nation of Readers. This document makes a line-by-line comparison of 31 reading 
programs, including ECRI. ECRI received the highest score of all 31 programs in meeting the 
specific recommendations of the National Commission on Reading. 

Siegfried Engelmann's DISTAR (Reading Mastery) and ECRI are both based on the very 
sick philosophical world view that considers man nothing but an animal — an "organism" (in 
Skinner's words) — responsive to the manipulation of stimulus-response-stimulus immediate 
reinforcement or rewards to bring about predetermined, predictable behaviors. Skinner's quote 
about making a "pigeon a high achiever by reinforcing it on a proper schedule" is repeated 
often in this book to impress on the reader the horrifying aspect of animal training masquer- 
ading as education in these programs. 

The National Research Council's Preventing Reading Difficulties in Young Children, com- 
piled by Catherine E. Snow, M. Susan Burns, and Peg Griffin, Eds. (National Academy Press: 
Washington, D.C., 1998) acknowledged G. Reid Lyon, Ph.D., chief of the Learning Disabilities, 
Cognitive, and Social Development Branch of the National Institute of Child Health and Hu- 
man Development of the National Institutes of Health (U.S. Department of Health and Human 
Services) who supports behaviorist reading programs like ECRI and DISTAR (Reading Mastery) 
as well as instruction based on so-called "medical and scientific research. " Other individuals 
mentioned in Preventing Reading Difficulties who were involved in the promotion of DISTAR 
include Edward Kame'enui, Department of Special Education of the University of Oregon and 
Marilyn Jager Adams. These two individuals also served on the Committee on the Prevention 
of Reading Difficulties in Young Children, and Adams is mentioned in Becoming a Nation of 
Readers. (See 1998 Herzer critique of Preventing Reading Difficulties in Young Children.) 

What does all of this tell the reader? Perhaps the same thing that is suggested to this 
writer: that the Reading Excellence Act will provide the funding and technical assistance to 
implement across the nation not just reading programs, but all curricula — including workforce 
training — in the mode of DISTAR and ECRI, which are based on "scientific, medical research." 
It is difficult to come to any other conclusion. 

In light of this information, the Reading Excellence Act of 1998 should be repealed. It is 
an unconstitutional curriculum mandate in violation of the General Education Provisions Act 
of the Elementary and Secondary Education Act of 1965. Call your congressmen and senators 
and ask that they support legislation to repeal this Act.] 



The "Effective" Eighties : c. 1984 



213 



In 1984 Schooling and technology, Vol. 3, Planning for the Future: A CoLLABORAtive 

Model, An Interpretive Report on Creative Partnerships in Technology — An Open Forum by 
Dustin H. Heuston, World Institute for Computer-Assisted Teaching (WICAT) was published 
(Southeastern Regional Council for Educational Improvement: Research Triangle Park, North 
Carolina, 1984) under a grant from the U.S. Office of Education, HEW, National Institute of 
Education. An excerpt from "Discussion: Developing the Potential of an Amazing Tool" in 
Schooling and Technology follows: 

We've been absolutely staggered by realizing that the computer has the capability to act as 
if it were ten of the top psychologists working with one student.... You've seen the tip of 
the iceberg. Won't it be wonderful when the child in the smallest county in the most distant 
area or in the most confused urban setting can have the equivalent of the finest school in 
the world on that terminal and no one can get between that child and the curriculum? We 
have great moments coming in the history of education. 

[Ed. Note: The comment regarding the computer's role as a "top psychologist" is as disturbing 
as is the idea of "no one getting between the child and the curriculum. " These ideas lay to 
rest the publicly stated purpose of the words "parent-school partnerships" which represent a 
superb example of semantic deception.] 

How to Measure Attitudes by Marlene E. Henderson, Lynn Lyons Morris and Carol Taylor 
Fitz-Gibbon, Center for the Study of Evaluation of the University of California, Los Angeles 
(Sage Publications: Thousand Oaks, Cal., 1984) was published. Funded by the National Insti- 
tute of Education, the table of contents follows: 

• An Introduction to the Measurement of Attitudes and Attitude Change 

• Selecting from among Alternative Approaches to Collecting Attitude Information 

• Self Report and Reports of Others 

• Interviews, Surveys and Polls 

• Logs, Journals, Diaries and Reports 

• Observation Procedures, Sociometric Procedures, Various Names for the Attitude 
You Want to Measure 

• Reference Books that List, Describe, or Evaluate Existing Measures 

• Validity and Reliability of Attitude Instruments 

• Validity: Is the Instrument an Appropriate One to Measure? What You Want to 
Know 

• Names and Addresses of Publishers of Attitude Measures 



Teaching as a Moral Craft by Alan Tom was published (Longman, Inc.: White Plains, 
N.Y., 1984). Professor Tom's book provides an extremely valuable contribution to literature 
on behavioral professional development for teachers and research on "effective teaching." 
Excerpts follow: 

A.S. Barr... himself, as already noted, increasingly came to believe that his original com- 



214 



mitment to the behavioral basis of good teaching was naive. While he retained to the very 
end his lifelong interest in studying effective teaching, he gradually accepted the view that 
effective teaching could not be reduced to specific behaviors or behavioral patterns. In one 
of Barr's last papers, he made clear his belief that teaching success did not have a solely 
behavioral basis: "Acts are not good or bad, effective or ineffective, appropriate or inappro- 
priate in general but in relation to the needs, purposes and conditions that give rise to them" 
(Barr, 1958, p. 696). In an unpublished memo, written to identify a research agenda for his 
retirement years, Barr (1960) admonished himself to strike out in a new direction: "Can be- 
haviors be considered in isolation or out of context? I think not. The tabulation of behaviors 
out of context may be misleading. I believe this is important. Study this carefully."... 

Performance-Based Teacher Education 

A fundamental irony in the history of research on effective teaching is that its half century 
of barren results was rewarded in the 1970s by making this research a key component of the 
reform movement known as performance-based teacher education (PBTE).... Unfortunately, 
we know little more than Barr did fifty years ago about which teaching behaviors consistently 
produce student learning. Medley, though sympathetic to PBTE, is quite candid on this topic: 
"The proportion of the content of the teacher education curriculum that has been empirically 
shown to relate to teacher effectiveness is so small that if all of what is taught to students in 
preservice programs was eliminated except what research has been validated there would 
be nothing left but a few units in methods of teaching.... After a careful review of relevant 
research, Heath and Nielson conclude that the conception, design, and methodology of these 
studies preclude their use as an empirical basis for PBTE (1974). The authors go one step 
further and summarize other reviews of the connection between teacher characteristics and 
student learning; they find that the reviewers of this research generally conclude that "an 
educationally significant relationship simply has not been demonstrated." 

For What Were They Searching? 

The problems associated with the four teacher effectiveness strategies are so severe that the 
last part of the chapter addresses the question of whether the teacher effectiveness tradition 
can be saved, a question whose answer is unclear. 

Is There A One Best Way? 

Unlike earlier critics who came largely from outside the teacher effectiveness tradition and 
who argued that this tradition was an overly narrow approach to the study of teaching, many 
of the current doubters are well-known members of the empirical research establishment. 
McKeachie, for example, notes that he no longer believes in the educational relevance of 
the principles of learning about which he used to lecture teachers. He now believes that 
these principles apply most clearly to the learning of animals in highly controlled artificial 
situations, and that meaningful educational learning is both "more robust and more complex" 
than the situations to which the classic principles apply. . . . 

The main body of this chapter examines four strategies for approaching the study of 
teacher effectiveness: discovering the so-called laws of learning; identifying effective teach- 
ing behaviors; uncovering aptitude-treatment interactions, and specifying models of effective 
instruction such as direct instruction. Careful attention is given to the specific difficulties 
experienced by the practitioners of each research strategy. The results from these four be- 
haviorally oriented research strategies are at best inconclusive.... The last section of the 
chapter examines the question of whether the teaching effectiveness model can be saved. 
Here I suggest that the various research strategies involve trade-offs and that these trade-offs 
make it difficult to have an instructional theory that is both accurate and applicable to a 
wide variety of situations. In addition, those instructional models that attempt to transcend 



The "Effective" Eighties : c. 1984 



215 



the trade-offs between accuracy and [applicability] generally have tended to be composed 
of low-level generalizations that lack conceptual sophistication, such as direct instruction, 
academic learning time, and mastery learning, (p. 30-45) 



Grant application from Far West Laboratory for Educational Research and DEVELopment 
to the U.S. Department of Education for "Excellence in Instructional Delivery Systems: Research 
and Dissemination of Exemplary Outcome-Based Programs" was approved by T.H. Bell in 1984. 
William Spady, director of the Far West Laboratory, carried out this project — which came to 
be known as the infamous "Utah Grant." The following cover letter from Utah Superintendent 
of Public Instruction Leland Burningham to Secretary of Education T.H. Bell, dated July 27, 
1984, is reproduced in its entirety: 

Dear Secretary Bell: 

I am forwarding this letter to accompany the proposal which you recommended Bill 
Spady and I prepare in connection with Outcome-Based Education. 

This proposal centers around the detailed process by which we will work together to 
implement Outcome-Based Education using research verified programs. This will make it 
possible to put outcome-based education in place, not only in Utah but in all schools of the 
nation. For those who desire, we will stand ready for regional and national dissemination of 
the Outcome-Based Education program. 

We are beginning to see positive, preliminary results from some of the isolated schools 
in Utah which have implemented Outcome-Based Education. These positive indicators are 
really exciting! 

We sincerely urge your support for funding the proposal as presented. 

Warmest regards, 

G. Leland Burningham 
State Superintendent of 
Public Instruction 

Attached to the grant application was Spady's "Summary of Professional Experience" 
which included "Senior Research Consultant to the Washington, D.C. schools" during 1977- 
1978 — the same time the D.C. schools implemented mastery learning. 

In a Washington Post article dated August 1, 1977, entitled "Competency Tests Set in 26 
Schools," Thomas Sticht — who was later named to U.S. Secretary of Labor Elizabeth Dole's 
Secretary's Commission on Achieving Necessary Skills (SCANS) — was also mentioned as an 
associate director at the National Institute of Education (NIE) at the time mastery learning 
was implemented in the D.C. schools. The Post article quoted Sticht extensively, verifying that 
he and Spady were both deeply involved in the implementation of the new mastery learning 
curriculum. Later, in 1987, The Washington Post again paraphrased Sticht as follows: 

Many companies have moved operations to places with cheap, relatively poorly educated 
labor. What may be crucial, they say, is the dependability of a labor force and how well it 
can be managed and trained, not its general educational level, although a small cadre of 
highly educated creative people is essential to innovation and growth. Ending discrimina- 



216 



tion and changing values are probably more important than reading in moving low income 
families into the middle class. 

[Ed. Note: What an extraordinary comment from someone supposedly involved in helping 
inner city students learn the basic skills! Nine years later, in an article in the March 5, 1996 
issue of the Washington Times, the extent of academic damage caused by the Mastery Learn- 
ing programs initiated by Spady and Sticht in 1977 was revealed: 

In the verbal portion of the 1995 Scholastic Achievement Test (SAT) D.C. public school stu- 
dents scored 342 out of a possible 800—86 points below the national average. On the math 
portion of the SAT, District public school students scored 375 out of a possible 800 — 107 
points below the national average. 

In 1999 the Washington, D.C. schools are using the same mastery learning/direct instruc- 
tion method which caused the problem to solve the problem! In addition, the same Washington 
Times article stated that present Secretary of Education Richard Riley's home state of South 
Carolina, which probably has been more deeply involved in Effective Schools Research than 
any other state with the notable exception of Mississippi, had the next lowest scores.] 

Important: The "Excellence in Instructional Delivery Systems" grant (the "Utah Grant") 
evaluation report, entitled Models of Instructional Organization: A Casebook on Mastery Learn- 
ing and Outcomes-Based Education and compiled by project director Robert Burns (Far West 
Laboratory for Educational Research and Development: San Francisco, April 1987), stated in 
its "Conclusion" that: 

The four models of instructional organization outlined in this casebook are difficult programs 
to implement. The practices of the ten schools described in the case studies are indeed com- 
mendable. Yet we do not offer these ten case studies as "exemplary schools" deserving of 
emulation. Rather, they describe educators who have attempted to go beyond current cur- 
ricular, instructional or organizational arrangements found in the majority of schools today. 
They have accepted the challenge of translating a difficult set of ideas into actual practice. 
And while they may not have always been completely successful, their experiences have 
provided us with ideas about how to begin moving closer to the ideal of successful learning 
for all students. 

[Ed. Note: The above wording is similar to wording in the evaluation of Project INSTRUCT, 
another model mastery learning program (1975) . Neither mastery learning project had positive 
"academic" results. One can only conclude that academic achievement was not the intent. 
The documented results were changes in "curricular, instructional and organizational arrange- 
ments" in the schools involved so that they could become performance-based, necessary for 
school-to-work training. 

Lack of positive results indicated in the evaluation of the mastery learning/outcome- 
based education experiments in schools — including the much-touted Johnson City, New York's 
Outcomes-Driven Developmental Model — did not deter the educators/sociologists from imple- 
menting outcome-based education/mastery learning in "all schools of the nation." 

In assembling this research on mastery learning/outcome-based education/direct instruc- 
tion programs and their evaluations, it appears that academic achievement has not been the 
desired object or the result of the use of these "What Works" methods and curricular thrusts. 



The "Effective" Eighties : c. 1984 



217 



There are no longitudinal studies or long-term results indicating that the newly trumpeted "sci- 
entific, research-based" criteria for program development is valid criteria. The lack of evidence 
should serve as a clear warning to parents and good educators to steer clear of any programs 
or program development based on any of the above-mentioned models, or on the Skinnerian 
method called for by Effective Schools Research. (See Appendix XXVI.)] 

David Hornbeck, superintendent of Maryland's public schools, in testimony BEfore the 
Maryland State Board of Education in 1984 attempted to "mandate community service at 
state-approved places." During Hornbeck's testimony he quoted the late Ernest Boyer, then- 
president of the Carnegie Foundation for the Advancement of Teaching, as saying, "In the end 
the goal of service in the schools is to teach values— to help all students understand that to 
be fully human one must serve. " 

The July 1984 edition of the Effective School Report carried an article entitled "Effective 
Schools for Results" by Dr. Robert E. Corrigan and Dr. George W. Bailey. Excerpts follow: 

Over the past thirty years there have been three primary programs related to the de- 
sign and implementation of effective schools and successful learning results. Each of these 
research efforts focused on different aspects or variables in the following areas: behavioral 
change and the application of learning theory to produce successful learning results; the 
identification of sociological factors operating in effective schools; teaching strategies to effect 
learning, and the combination of these variables and practices in a systematic approach to 
achieve learning and management results.... The following professionals and groups have 
initiated successful educational programs which can work together as a common system to 
deliver predictable success for every learner — the ultimate criterion of an effective school 
program: Wilbur Brookover and Ron Edmonds of the Effective Schools Research Movement; 
B.F. Skinner, Norman Crowder, Robert and Betty 0. Corrigan, 1950-1984, Mastery Learning 
Practices; Madeline Hunter, 1962-1984, Mastery Teaching Practices; R.E. Corringan, B.O. 
Corrigan, Ward Corrigan and Roger A. Kaufman, 1960-1984, A Systematic Approach for Ef- 
fectiveness (SAFE) for district-wide installation of Effective Schools.... 

Skinner proposed that it is feasible to deliver predictable learning mastery results when 
teachers performed the following programmed actions to design and implement lesson plans 
or curricula. These design and teaching steps describe the general process steps of learner- 
centered mastery learning instruction. 

[Ed. Note: Included in step 3 of the above-mentioned learner-centered mastery learning in- 
struction is: "Provide immediate feedback as to the correctness of learner responses, provide 
for immediate correction of errors, and control the progress of learning as students proceed in 
small steps along the tested learning path to master the learning objectives and criteria with 
predictable success."] 

The article continues: 

The ultimate benefits to be derived through the installation of this mastery of skills delivery 
system will be the predictable success of all future graduates to master relevant skills to enter 
and succeed in society. Graduation skill standards would be continually evaluated and, where 
necessary, will be revised based on new skill requirements established by industrial, civic, 



218 



and academic leaders either (a) to get and hold jobs, (b) to advance to higher education, 
and/or (c) to be self-sufficient following graduation. 

[Ed. Note: How much clearer could the Corrigans be in describing the need for Skinnerian mas- 
tery learning/direct instruction in order to implement school-to-work? (See Appendix VI.)] 

Dr. Theodore Sizer's Coalition of Essential Schools (CES) was founded in 1984. Major 
Coalition principles are: 

• Focus on helping adolescents to learn to use their minds well.... 

• Less is more: Each student should master a limited number of essential skills areas 
of knowledge.... 

• School goals should apply to all students.... 

• Teaching and learning should be personalized; each teacher should have no more 
than 80 students.... 

• Scrap the time-honored feature of the American education system: graduation re- 
quirements based on the so-called Carnegie Units, or the "seat time" students spend 
in various subject areas.... 

• Students should be active workers [student-as-worker philosophy].... 

• Students should be able to demonstrate mastery of skills and knowledge. 

The Coalition of Essential Schools (CES) was established at Brown University. From 
twelve "charter" schools in four states, CES by 1993 grew to include more than 130 member 
schools in nearly thirty states. Along with the Education Commission of the States, the CES 
sponsors Re: Learning, a partnership with participating states to build support for essential 
school change at the state and district levels. 

Ten years later evaluation studies have found that gains weren't measurable. Even so, 
philanthropist Walter H. Annenberg pledged to donate $50 million to the Annenberg Institute 
for School Reform, run by Sizer and based at Brown University. 

It is important to mention that the majority, if not all, of the major education reform 
projects have failed to improve students's academic test scores. Notable examples are: Johnson 
City, New York — the Outcomes-Driven Development Model (ODDM) by John Champlin; Wil- 
liam Spady's Far West Laboratory Utah Grant, "Excellence in Instructional Delivery Systems: 
Research and Dissemination of Exemplary Outcomes-Based Programs"; and Marc Tucker's 
National Center on Education and the Economy (NCEE), which moved from Washington, 
D.C. to Rochester, New York in 1988 to "help" that city's much-heralded reform movement. 
The Rochester Democrat and Chronicle of March 14, 1993 in an article entitled "A City's Dream 
Unfulfilled" — after five years of Tucker's "help" — reported the following: 

Since Rochester's schools started reform, fewer graduates have received the more stringent 
Regents diploma. In 1986-87, 23.1% of graduates had Regents diplomas, and 17.5% grad- 
uated with them last year [1993]. 



John I. Goodlad clearly stated that how a student feels about school is more important 



The "Effective" Eighties : c. 1984 



219 



than test scores in an article entitled "A Cooperative Effort Is Needed: Can Our Schools Get 
Better?" (originally published in Phi Delta Kappan, January, 1979 when Dr. Goodlad was dean 
of the Graduate School of Education at the University of California, Los Angeles, and re-pub- 
lished in Education Digest on November 1, 1984.) Excerpts follow: 

It seems to my associates and me that how a student spends time in school and how he 
feels about what goes on there is of much greater significance than how he scores on a 
standardized achievement test. But I am not sure the American people are ready to put a 
criterion such as this ahead of marks and scores. And so it will be difficult for schools to get 
better and more difficult for them to appear so.... 

Adherence to norm-referenced [competitive] standardized test scores as the standard 
for judging student, teacher, and school performance has led to a stultifying approach to 
accountability. 



In a personal letter to Charlotte Iserbyt from Steven M. Hersey, executive Director of the 
Maine Association of Christian Schools dated November 17, 1984, 14 Hersey enclosed portions 
of a testimony by Kevin Ryan, professor at Boston University, regarding Boston University, the 
country of Portugal and the World Bank. Professor Ryan was called to testify for the Maine 
State Department of Education in a legal hearing against the Maine Association of Christian 
Schools. The following excerpts from Ryan's testimony are important due to the disclosure by 
Ryan of his role in the development of a teacher-training faculty system — modeled after that 
of the United States — for Portugal immediately after the communist takeover of that country. 
One might ask why a communist country like Portugal should choose the American teacher 
education curriculum to accomplish its political and philosophical goals. Portions of Ryan's 
testimony follow: 

A. I [Ryan] am a professor of Education [at Boston University] and I teach graduate 
courses and supervise dissertations. But I'm there primarily now to work on a proj- 
ect to help a Portuguese Minister of Education develop a teacher-training faculty 
system.... 

Q. ...Could you describe what it is you're doing? 

A. Well, the Portuguese nation had a social revolution [communist takeover] in 1974, 
and at that time they decided that their educational system was very inadequate, that 
it was not democratic, that the mandatory compulsory age of education was only 
to the fourth grade, and they mandated a system of education not unlike the United 
States in terms of compulsory education up to grade 12 and an elementary through 
high school division. The country was very interested in this. They also wanted to 
be part of the European Economic Community. But, unfortunately, Portugal was a 
poor country, and the World Bank said to them, you will not be admitted into the 
European Economic Community until you get in place a modern school system. 
And they [the World Bank] have come through with a good deal of financial sup- 
port for that. 

An important part of that is the development of a teacher training infrastructure. 
Now, what that means is that Portugal, which has, as of right now, a very small and 
very sort of casual teacher education method, is establishing 12 regional teacher 
education institutions at the university level positions; and they looked to the rest 
of the world for help on this, and they put out a request for proposals.... Boston 



220 



University... was chosen... to train the faculties of these 12 new institutions.... 

Q. Now when the proposal was first made... was it contemplated that Boston University 
might do all the training of Portuguese teachers themselves? 

A. Yes, I did. My feeling is that in this particular project the stakes are enormously 
high. The 120 people who are currently right now being selected for these roles in 
these 12 institutions are going to be there for 20 or 30 years; so that the course they 
have on teaching or supervision is going to set an intellectual and training agenda 
for them for a number of years. They are going to go on and train all these teachers 
with what they learned. 

Q. And do you have any responsibility with respect to the curriculum that will be used 
in the program to develop a teacher training instruction? 

A. Well, the Portuguese did a lot of study on their own, and they looked at various 
curricula for teacher education.... I think one of the reasons they selected Boston 
University was because the curriculum that they wanted taught seems to be one like 
an American teacher education curriculum. And we have their indication of what 
courses they want, and the sequence. And we — and this happened before I was 
there — we went with our course outlines and, in a sense, negotiated with them to a 
mutual satisfaction about what the content of what the various courses would be. 

Q. Do you belong to any professional associations? 

A. I am a member of the American Educational Research Association; I am a member 
of Phi Delta Kappa; I am a member of the Network of Educational Excellence; I was 
a member of the Master of Arts in Teaching Association — in fact, I was president, 
before it — before — I think it's defunct now. 

[Ed. Note: Of interest is the fact that Paulo Freire, the well-known radical Brazilian educator 
who wrote Pedagogy of the Oppressed, was also a consultant to the government of Portugal 
at the time of its revolution. (See August 19, 1986 entry for New York Times article.) As of 
1992 Professor Kevin Ryan is reported to be involved in and the director of the Center for the 
Advancement of Ethics and Character at Boston University.] 

An article entitled "Observing the Birth of the Hatch Amendment Regulations" by 

Bert I. Greene and Marvin Pasch was published in the December 1984 issue of Educational 
Leadership, monthly journal of the Association for Supervision and Curriculum Development. 
Excerpts from the article follow: 

However, from the day the Hatch Amendment was passed, the written consent requirement 
lay dormant, that is, until 1984. As Charlotte Iserbyt, an education activist and former De- 
partment of Education employee, [stated] in a memorandum to her conservative allies dated 
10 January 1984: 

The only tool available to us to protect our children in the government schools is a federal 
law, the Hatch Protection of Pupil Rights Amendment, passed unanimously by the U.S. 
Senate in 1978, for which the Office of Education promised regulations in early 1979.... I 
know that many of you, for good reason, feel that the Hatch Amendment has been use- 
less. Of course it has been useless. Any statute which has no mechanism for enforcement 
is nothing more than a scrap of paper.... 

Iserbyt then turned her attention to the reason why regulations have not been promul- 
gated: 



The "Effective" Eighties : c. 1985 



221 



Although excellent regulations were drafted in 1982 by conservatives in the Office of the 
General Counsel (who have been subsequently fired by Secretary Bell), they have not seen 
the light of day since Bell doesn't like them and he also does not want to offend his educa- 
tionist friends by signing off on regulations that will disturb their modus operandi — their 
persistent efforts to change the values, attitudes and beliefs of students to conform with 
those necessary to bring about a socialist/humanist one world government. 

As Iserbyt clearly saw, it is through regulations that responsibilities become clarified, 
procedures for grievance and redress established, and penalties for non-compliance stated. 
Therefore, the importance of regulations cannot be overstated.... Interestingly, Iserbyt had 
notification of the proposed regulations prior to 10 January as evidenced by an Urgent Alert 
she sent to her "Education Group Leader Activists." Her guidance... included suggestions 
related to the scope of the soon-to-be published regulations. She argued: 

It was the intent of Congress to cover all the mindbending techniques and materials used 
in our children's classrooms, in special education and guidance, not just the narrow and 
difficult to define areas of psychological and psychiatric testing or treatment. 

She provided a set of quotable commentaries for her contacts as they prepared oral or 
written testimony.... 

Some people who testified argued that the techniques being used in our schools can 
be likened to those used in Russia, Red China, and Nazi Germany.... 

A potentially major educational change has occurred, and the education profession 
failed to block it. 

[Ed. Note: Anyone following or involved with the Anita Hoge/ Pennsylvania case will tell you 
that the U.S. Department of Education — under Secretaries of Education William Bennett and 
Lamar Alexander— pulled out all the stops, at every level, to thwart Hoge's efforts and those 
of other parents who tried to use this law. Such an assault on those who paid the bills — and 
provided the children ("resources") upon whom they experiment even today — was, and is, 
criminal.] 



1985 

On March 6, 1985 Education Week published an article entitled "Half of Cmcago Students 
Drop Out, Study Finds: Problem Called Enormous Human Tragedy." (Return to 1968 Learning 
and Instruction entry for details of the Chicago Mastery Learning debacle.) 

Effective Schools Development in Education Act was introduced into Congress on March 
8, 1985. An excerpt from the Extension of Remarks in the House of Representatives by Hon. 
Augustus F. Hawkins of California follows: 

Mr. Hawkins: Mr. Speaker, there are public schools in this Nation which evidence continuous 
improvement and growth in the academic achievement levels of their students, for each day 
that these students are in the school.... Where are these public schools? They are in Jackson, 
MS; Spencerport, NY; Los Angeles, CA; New York City; Glendale, AZ; Richmond, VA; Pitts- 
burgh, PA; Hartford, CT; Portland.OR; and many other cities throughout the Nation. 

What they have in common is a determination to improve pupil performance, pupil 



222 



behavior, and the effectiveness of teaching and learning in their schools. They are adherents 
and advocates of the late Professor Ron Edmonds's — of Michigan State University and Har- 
vard University — effective school principles, which emphasize the belief that while public 
schools realistically can't control what happens in their surrounding communities, public 
schools can control what happens within their "four walls." 

[Ed. Note: This particular legislation, which originally called for a whopping $230 million 
over a three-year period, did not pass. However, similar effective schools legislation, H.R. 747, 
passed and provided $4.5 million over a three-year period during William Bennett's tenure as 
U.S. Secretary of Education. 

The above schools— especially Jackson, Mississippi, the home of the Effective School 
Report and one of the first inner city schools used as an effective schools (ML/DI) research 
experiment — which have been using mastery learning for a long period of time would provide 
an excellent list for Congress to use in an investigation of inner cities' norm-referenced test 
scores!] 

The Dallas Morning News of March 23, 1985 ran an article entitled "Teachers' Group 
to Develop New Curriculum" by Karel Holloway of Boston. An excerpt follows: 

The National Education Association is beginning an 18-month program to develop a new 
school curriculum designed to assure that students master basic skills, NEA President Mary 
Futrell announced Friday. "The association first will survey scholars to determine what they 
believe constitutes 'mastery' in reading, writing, mathematics and social studies. Using cri- 
teria from the scholars and the findings of current education research studies, the association 
will develop experimental strategies to teach the mastery skills at five schools that will be 
selected from throughout the nation. The results of the programs tried at the five schools 
will determine the shape of the new curriculum," Mrs. Futrell said in a speech to the Edu- 
cation Writers Association. That curriculum then will be tested for three years at 24 schools 
nationwide.... The Mastery In Learning Project will be funded by $600,000 from the NEA 
and donations from other foundations. Nine education research institutes will participate 
in the project. 

Summit Christian Academy of Dallas, Texas included the above article in a promotional 
flyer on which it typed the following additional information regarding the use of mastery 
learning: 

The purpose in sending you this article is to evidence that truly we did create "TOMORROW'S 
EDUCATION TODAY" five years ago at a cost of over four million dollars. We employed over 
250 dedicated Christian writers and editors to create the LIFEPAC curriculum. Each had an 
average of five years classroom teaching experience, and over 75 % held Masters degrees or 
higher, and 40 held Doctorate degrees. Truly, there is no finer curriculum in the market place 
today. For comparison between our curriculum, A.C.E., A-Beka, Bob Jones and others, please 
write to: Summit Christian Academy, 13789 Noel Road, Suite 100, Dallas, Texas 75240. 

[Ed. Note: This article proves the extensive use by Christian educators of the same Skinnerian 
mastery learning used and recommended by the National Education Association. How can 
Christian educators, opposed to the teaching of evolution, support a teaching method based on 
Darwin's theory of evolution? Dr. Francis Schaeffer was right on target when he said: "Many of 



The "Effective" Eighties : c. 1985 



223 



our secular schools have consistently taught these presuppositions (evolutionary theory) and 
unhappily many of our Christian lower schools and colleges have taught the crucial subjects 
no differently than the secular schools. "] 

Education Daily of April 5, 1985 published an item entitled "Teachers Influence Students' 
Values through Writing Assignments" which stated in part: 

Researchers attending the annual meeting of the American Educational Research Association 
here said writing can be used to clarify students' values and even alter their views on con- 
troversial subjects. 

But teachers can also use writing to manipulate a student's viewpoint and attitude on 
controversial issues, said a researcher who has studied how writing changes attitudes. "You 
can generate attitude change by writing," said John Daly of the University of Texas. Daly 
said his research showed that writing an essay about an issue helps students clarify their 
own views. But when asked to write an essay arguing a position opposing their values, the 
students are lead to change their minds.... 

...And the greater the effort a student puts into a writing assignment, the greater the 
change in attitude, Daly concluded. 

Daly's finding disturbed some educators, who said they were concerned that teachers 
have the power to alter students' values. "It can be dangerous when we know that educa- 
tors have the power to influence kids' minds," said Barbara Mitchell of the University of 
Pennsylvania. 



The May 1985 Education Update from the Association for Supervision and CuRriculum 
Development contained a revealing article "Promising Theories Die Young" about the late 
Madeline Hunter, University of California at Los Angeles education professor and the nation's 
best known Mastery Teaching teacher trainer. Dr. Hunter was a psychologist who served more 
than twenty years as principal of the Experimental Laboratory Elementary School at UCLA. 
(John Goodlad also served at UCLA's lab school.) Hunter's views on Instructional Theory Into 
Practice (ITIP) and on dialectical thinking follow: 

Madeline Hunter, UCLA education professor and research interpreter, told a huge, doting 
audience that educational theorists and practitioners "badly need each other" and that it is 
high time to tap each other's strengths rather than zap each other's perceived flaws. Hunter 
said that she is particularly conscious of this schism because "I'm part of both but not re- 
ally one or the other. " Hunter has been a school psychologist, principal, researcher, and, in 
ASCD immediate Past President Phil Robinson's words, "one of the most able... teachers of 
teachers." Hunter delivered three mandates for the next decade: 1. Unite educational theory 
and practice; 2. Recognize, integrate, and use all three kinds of knowledge; and 3. Move 
toward dialectical thinking. 

Under the article's subtitle, "Three Kinds of Knowledge," Hunter's presentation to the 
audience was covered as follows: 

When she was a school psychologist, Hunter said, she had an exchange with a teacher who 
had rebuked a student for making a silly remark: 



224 



Hunter: What did the smart-aleck want? 
Teacher: Attention. 

Hunter: Have you ever heard of Pavlov? 

Teacher (amazed) : What do slobbering dogs have to do with it? 

In the same Education Update article, under subtitle "Toward Dialectical Thinking," 
Hunter's presentation reported: 

Hunter advised educators to move toward dialectical thinking, which means, she said, that 
with empathy, you "embrace the most convincing argument... against your own conclusion. 
Dialectical thinking will move us from right and wrong to better in this set of circumstances." 
Moving into this "thoughtful uncertainty," Hunter said, does not mean obligatory abandon- 
ment of one's own position, but she said, the advantage is that "where we take an opposing 
point of view and hold it in tension with our own point of view, each builds correction into 
the other." Hunter nudged educators to come out of "armed camps... where we're not col- 
laborating" so that "I understand why you think it's right for your students to line up while 
I think it's better for them to come in casually. " And she concluded, "To respectfully address 
another person's point of view is a master, master step. Until we accomplish it in our own 
profession... I see very little hope for it in our community, in our cities, in our nation, and 
in the world." 

The validity of Hunter's claims of success for her ITIP mastery teaching program was 
questioned by Robert Slavin of Johns Hopkins University in his paper entitled "The Napa Eval- 
uation of Madeline Hunter's ITIP: Lessons Learned," published in Elementary School Journal 
(Vol. 87, No. 2: University of Chicago, 1986). Slavin says in part, "Although teachers in the 
program changed their behavior and students' engaged rates improved, program effects on 
student achievement were minimal." 

Robert Slavin followed up on his critique of Hunter's claims of success for her mastery 
teaching program with his report funded by the U.S. Department of Education entitled Mas- 
tery Learning Reconsidered, published by the Center for Research on Elementary and Middle 
Schools, Johns Hopkins University (Report No. 7, January 1987). An excerpt from the abstract 
of the report follows: 

Several recent reviews and meta-analyses have claimed extraordinarily positive effects of 
mastery learning on student achievement, and Bloom (1984a, b) has hypothesized that 
mastery-based treatments will soon be able to produce "two-sigma" (i.e., two standard 
deviation) increases in achievement. This article examines the literature on achievement 
effects of practical applications of group-based mastery learning in elementary and second- 
ary schools over periods of at least four weeks, using a review technique, "best evidence 
synthesis," which combines features of meta-analytic and traditional narrative reviews. The 
review found essentially no evidence to support the effectiveness of group-based mastery 
learning on standardized achievement measures. On experimenter-made measures, effects 
were generally positive but moderate in magnitude, with little evidence that effects main- 
tained over time. These results are discussed in light of the coverage vs. Mastery dilemma 
posed by group-based mastery learning. 

[Ed. Note: Slavin's critiques echo the negative results of mastery learning discussed else- 
where in this book. Unfortunately, ten years later Slavin received his mastery learning/direct 
instruction crown in 1999 when Slavin's program "Success for All," which also uses mastery 



The "Effective" Eighties : c. 1985 



225 



learning/ direct instruction, was accepted as one of the nationally recognized programs for 
use in restructuring.] 



The Effective School Report's May 1985 issue contained an article entitled "Principal's 
Expectations as a Motivating Factor in Effective Schools." An excerpt follows: 

The principal expects specific behavior from particular teachers which should then translate 
into achievement by the students of these teachers; because of these varied expectations, 
the principal behaves differently toward different teachers; i.e., body language, verbal inter- 
actions and resource allocations. This treatment also influences the attitudes of the teacher 
toward the principal and their perception of the future utility of any increased effort toward 
student achievement. If this treatment is consistent over time, and if the teachers do not 
resist change, it will shape their behavior and through it the achievement of their students. . . . 
With time teachers' behavior, self-concepts of ability, perceptions of future utility, attitude 
toward the principal and students' achievement will conform more and more closely to the 
behavior originally expected of them. 



Education Daily of June 12, 1985 published "Sweeping Overhaul of Minnesota Education 
System Proposed." Excerpts follow: 

The Minnesota Business Partnership, an organization of 60 corporations, commissioned an 
education consulting firm to study the state education system and plan improvements. The 
result is the Minnesota Plan, the business community's proposals to radically restructure the 
state's education system. The plan was outlined Monday at a National Institute of Education 
seminar in Washington, D.C. by Paul Berman, President of BW Associates, which conducted 
the study. The proposal would make kindergarten through sixth grade the elementary level, 
set up grades seven through 10 as the common high schools, and create specialized programs 
for grades 11 and 12. Students would have to master a core program of communication, 
social studies, science and math until the 11th grade, and pass state competency exams at 
the end of the sixth and 10th grades. Moreover, the plan would eliminate state-mandated 
courses and allow districts and schools to determine course requirements. Under the plan, 
11th and 12th grade students could take courses at post secondary institutions, technical or 
vocational schools or even private corporations.... 

Despite the worries of business leaders in the partnership. . . most legislators don't feel 
a major restructuring is necessary. "Most of us feel the system is changing and responding 
to needs. But it is not in need of drastic change." But Berman counters that since "the best 
teachers are leaving at age 30 now," teacher improvement plans would help overburdened 
staff and increase student-teacher contact. Teaching teams composed of a lead teacher, 
teaching assistants and adjunct teachers would work with 120 students. This would allow 
for individual student learning programs and removal of student counselors.... "It's not a 
fantasy no matter how radical it is," Berman contends, adding that the public does not real- 
ize that "reforms we start today are not going to be in effect for 20 years. It takes time to 
modernize." (p. 6) 

[Ed. Note: In retrospect it seems, to this writer at least, that Minnesota was clearly out front 
in its early adoption of performance-based school-to-work agendas. (See Appendix X.)] 



226 



North Carolina's Compentency-Based curriculum, "Basic Education Program," was 

introduced in 1985. A few of its more unusual "basic" competencies, involved students en- 
tertaining allegiance to a world constitution and a world government rather than to the U.S. 
Constitution. Excerpts follow: 

FIFTH GRADE: Develop a flag, seal, symbol, pledge and/or national anthem for a new 

country.... Design a postage stamp to be used worldwide. The stamp should denote what 

the world would need to make it a better place.... 

SIXTH GRADE: Draw national symbols for an imaginary nation.... 

SEVENTH GRADE: Understand the need for interdependence.... 

NINTH GRADE: Write a constitution for a perfect society. 



A National Education Association (NEA) press release for June 28- July 3, 1985 described 
in considerable detail the purpose of its Mastery In Learning project. 15 It was explained that 
Mastery Learning is 

a concept first proposed a generation ago by Harvard psychologist Jerome Bruner. ... A growing 
body of research and educational reform proposals came from such respected educational 
analysts as Mortimer Adler [developer of the Paideia Proposal and long-time advocate of a 
one-world government, ed.], John Goodlad, Theodore Sizer, and Ernest Boyer who have all 
sought to translate Bruner's work into classroom reality. 

Also revealed in an NEA booklet on mastery learning is the fact that 

Mastery Learning is one of many instructional models. Others include Active Teaching, Direct 
Instruction, Student Team Learning, Socratic questioning, coaching, creative problem solving, 
Bruner's Concept Attainment Strategy, and Madeline Hunter's Target Teaching Approach. 
These models incorporate research on effective teaching, and all may be explored by the 
schools associated with the project. 

[Ed. Note: Jerome Bruner and B.E Skinner were the developers of the highly controversial, 
federally funded curriculum M:ACOS {Man: A Course of Study).] 

Education Week of August 28, 1985 carried the article "Proponents of Mastery Learning 
Defend Method after Its Rejection by Chicago" which quoted Benjamin Bloom, often cited as 
"the father of Mastery Learning," as saying that some 50 million children around the globe 
are taught with a mastery learning approach. In addition, University of California Professor 
James H. Block is quoted as saying he "doesn't know of any major urban school system in the 
United States that has not adopted some kind of mastery learning program. " 

[Ed. Note: James Block's statement underscores the need for a Congressional investigation 
requiring the U.S. Department of Education to provide longitudinal/norm-referenced test scores 
for all "major urban school systems" that have used mastery learning/direct instruction over 
the past thirty years. (See Appendix XXVI.)] 



The "Effective" Eighties : c. 1985 



227 



"TOTAL Presentation Set for Educators" was the headline of an article in the Tyler 
[Texas] Morning Telegraph of October 31, 1985 (Sec. 3, p. 3). Excerpts follow: 

Texas Objectives for Total Academic Learning [TOTAL] will be revealed to Texas educators on 
Nov. 7 in Houston when four staff members of Region VII Education Service Center of Kilgore, 
make a presentation to the Texas Association for Supervision and Curriculum Development, 
(affiliate of the national organization ASCD).... The foursome will describe TOTAL, share 
samples of productivity and give information on how to obtain the materials through their 
regional service centers.... Project TOTAL was born in Kilgore in January 1984 and matured 
during the reform-wrought summer after passage of House Bill 246 and its implementation 
of Chapter 75 by the Legislature.... 

Some 1500 teachers and 100 administrators in 75 districts of Region VIFs Northeast 
Texas area were involved [in producing] the 5,000 pages of materials to aid school districts 
in complying with the law.... 

TOTAL provides foundation curriculum documents written in "teacher talk" encom- 
passing essential elements. It addresses all 13 subject areas of essential elements from kin- 
dergarten through 12th grade: English, language arts, mathematics, science, health, physical 
education, Texas and U.S. history, and computer literacy. These elements are developed into 
actual plans which teachers may use in helping students master the essential elements.... 

Objectives, activities and resources are suggested for each, and also suggested are means 
of evaluation to see how well students have mastered each objective.... 

"The big weakness I see is in the resource listings," she said. "We are trying to widen 
teachers' horizons where they haven't used much except textbooks and to give them added 
software that can be brought to their attention and should be available by fall 1986." 

[Ed. Note: The above article was selected to explain the process employed by the states to 
implement mastery learning/direct instruction in the early 1980s as a response to A Nation at 
Risk. The writer of this book wrote Ross Perot, who spearheaded the Texas education reform 
movement in the early 1980s, warning him of the intent behind reform and providing him 
with valuable documentation from the U.S. Department of Education. The writer received a 
return receipt for the materials, but no response.] 

Maine's State Department of Education 1985 Assessment of Educational Progress [MAEP] 
test item bank, based in part on National Assessment of Educational Progress (NAEP) test 
items, included the following correct answer as to why the Soviets occupied Eastern Europe 
after World War II: 

[Correct answer] 

Soviet occupation was primarily a result of the Soviet Union's desire for security along its 
borders. 

[Ed. Note: One cannot help but wonder how the international community would have responded 
to the United States' occupation of Canada, Mexico, Cuba, the West Indies, Greenland, and 
Iceland in order to "secure its borders."] 

Maine Facilitator Center flyer regarding a teacher training seminar for "MoDels of 

Teaching" by Bruce Joyce et al. was distributed in 1985. Under the heading "Information Pro- 



228 



cessing, One of Four Groups" was included: Direct Instruction: James Block, Benjamin Bloom, 
the late Madeline Hunter, and Ethna Reid — all prominent in development, implementation and 
promotion of Skinnerian mastery learning. An excerpt from the Maine Center's flyer regarding 
Direct Instruction follows: 

This model is a deductive approach to learning that presents the objective, models the skill 
and provides guides and independent practices. Direct Instruction requires multisensory 
lessons, constant monitoring by the teacher to insure understanding, and a wide range of 
review or practices. 

[Ed. Note: How fascinating that Bruce Joyce used the label "Direct Instruction" instead of mas- 
tery learning, which proves that the two labels are rightfully applied to the same method.] 

In 1985 the U.S. Department of Education, through the Secretary's DiscRETioNary Fund 
under Secretary William Bennett, approved the promotion of and funding for development of 
a character education program by the Thomas Jefferson Research Center (TJRC) of Pasadena, 
California. The grant was for a "teacher training project demonstrating the viability of a dis- 
trict-wide educational program involving... the TJRC." Through the grant, the TJRC, founded 
in 1963, would apply its character education curriculum "across all segments of the [Pasadena] 
district's grade levels... expanding the effort to parents and community, and... to other school 
districts, and to share... methods and approaches with other educators and institutions na- 
tionally. " Community service projects for elementary, middle, and high school students "are 
seen as extensions of classroom activity and essential elements in... the range of values being 
stressed." The TJRC's federally funded demonstration "character education" program included 
"Personal Responsibility Skills and Ethical Decision-Making." 

National dissemination was expected to be effected through regional and national work- 
shops, education conferences, computer conferences, and through TELE, "an electronic learn- 
ing exchange... a computerized network of educators... involved with exemplary programs 
and computer assisted instruction programs within California and... across the nation." The 
promotional literature for the TJRC's middle and high school Achievement Skills programs 
and the text of the teacher's manual for its middle school Achievement Skills program (1984) 
explicitly stated that "the basis for the programs lies in the motivational theories of [Abraham] 
Maslow. " 

In Religion, Values, and Peak Experiences (Ohio State University Press: Columbus, Ohio, 
1964) Maslow stated that "each person has his own private religion... which may be of the 
profoundest meaning to him personally and yet... of no meaning to anyone else... each person 
discovers, develops, and retains his own religion. " An examination of the TJRC's middle school 
Achievement Skills reveals not only the program's base in Maslow's psychological theories, but 
also the program's ties to consciousness-altering methods. Early in the semester-long program, 
students are told that "we are going to study some psychology. We are going to study our selves 
or our minds [emphasis in original]. Each of you is going to get a chance to look at yourself 
as if you were a psychologist." Repeatedly throughout the program, students are exposed to 
self-hypnosis, guided imagery, visualization techniques, and relaxation therapy— tools used 
in psychosynthesis (defined by Roberto Assagioli as the formation or reconstruction of a new 
personality) . In his book Psychosynthesis 16 as mentioned earlier in this book Assagioli notes 



The "Effective" Eighties : c. 1985 



229 



the possible dangers of the exploration of the unconscious. The first and foremost is the 
release of drives and emotions which were locked in the unconscious and which can flood 
the conscious ego before it is ready and prepared and competent to contain, control and 
utilize them. It is the situation of the "apprentice sorcerer." 

...We think that cases of suicide or of the development of psychotic states can be due 
to the premature and uncontrolled release of explosive drives and emotions from the un- 
conscious. 

The middle school Achievement Skills program also utilizes what are psychotherapeutic 
values clarification techniques: role playing, open-ended questions, and moral dilemmas. 
These same values clarification methodologies form the basis of the K-6 "character education" 
component funded by the grant. Psychologists have warned educators about the dangers of 
unbridled use of role-playing techniques by untrained people, for the very reasons Assagioli 
cites as well as others. 

The K-6 materials were developed by the American Institute for Character Education 
(AICE) of San Antonio, Texas, and are marketed nationally. The Teacher's Handbook (1983) from 
AICE indicates that the program is another "how to learn instead of what to learn" program 
and admits to the use of values clarification, the promotion of self-disclosure and the creation 
of a classroom climate where "there are no right answers to any one problem." 

U.S. President Reagan and Soviet President Gorbachev signed an agreement in 1985 
calling for 

cooperation in the field of science and technology and additional agreements in other specific 
fields, including the humanities and social sciences; the facilitation of the exchange by ap- 
propriate organizations of educational and teaching materials, including textbooks, syllabi 
and curricula, materials on methodology, samples of teaching instruments and audiovisual 
aids, and the exchange of primary and secondary school textbooks and other teaching mate- 
rials.... The conducting of joint studies on textbooks between appropriate organizations in 
the United States and the Ministry of Education of the U.S.S.R. 

At the same time, the Carnegie Corporation signed agreements with the Soviet Academy of 
Sciences which resulted in "joint research on the application of computers in early elementary 
education, focusing especially on the teaching of higher level skills and complex subjects to 
younger children. " 

The U.S. -Soviet education agreements were discussed in an article entitled "U.S. and So- 
viets to Share Insights on Computers" by Fred M. Hechinger, education editor, in the December 
10, 1985 issue of the New York Times. The article states in part: 

A meeting of American and Soviet educational computer experts has produced an agreement to 
exchange specialists involved in the improvement of elementary and secondary education. 

The initial American-Soviet exchange is intended as a first step toward cooperation 
among education reformers from a number of countries, including Britain and Japan. One 
goal is to reduce the present emphasis on training computer programmers, and stress instead 
the computer's potential to restructure the education of young children, beginning in third 
grade or earlier. 

Several issues are listed for joint investigation. They include computer-based methods 
to develop creative abilities of primary school pupils, creation and testing of software for 



230 



use in primary school, and proposals for the restructuring of the curriculum and of teaching 
methods through the use of computers in the early grades. 

Additional issues include evaluation of the training of teachers in the use of comput- 
ers and elimination of teachers' fear of computers, and creation of Soviet-American pilot 
projects for joint experiments. 

[Ed. Note: On December 20, 1985, during a "Contact America" radio interview with U.S. 
Secretary of Education William Bennett, co-host Malcolm Lawrence asked Bennett if he was 
involved in the United States-Soviet education exchanges. Bennett responded, "No. I'm not 
in that loop." Pray tell, what "loop" was he in during his tenure as the top official dealing 
with American education? The writer was informed by the U.S. Department of State that both 
agreements were still in effect after the so-called break-up of the Soviet Union. (See Appendix 
XXIII.)] 



1986 

The Fact Finder of Phoenix, Arizona on January I, 1986 (Vol. 46, No. 4) carried an ar- 
ticle entitled "Shocking U.S. Agreements to Let Soviet and Red Chinese Educators Indoctrinate 
America's Children." (See Appendix XXIII.) Excerpts follow: 

We now have proof that agreements have been made with the Soviets for nearly 30 years 
to have their educators work with ours in planning curricula for America's school children. 
This is a shocking addition to what we have already learned about the many ways that the 
Soviets are carrying out their secret war for world domination. 

Early in October, we learned that two Communist educators are already here in Phoe- 
nix, teaching and conferring with educators at Central High School. Boris Bayev is a 41 -year 
old principal of a Soviet secondary school at Ulyanovsk, USSR. A teacher from Red China 
is also at Central High. 



Edwin Feulner, president of the Heritage Foundation (considered by some to be the fore- 
most "conservative" think tank in the nation), chaired the United States Information Agency's 
(USIA) Commission on Public Diplomacy in 1986. The annual report carried a cover letter from 
Feulner as chairman encouraging the acceptance of its recommendations. Under "Educational 
and Cultural Programs, Exchanges and International Visitors" the report states in part: 

The Commission urges USIA, the Department of State, and the relevant private sector orga- 
nizations to move quickly to develop specific programs for U.S. -Soviet exchanges pursuant to 
the General Exchanges accord, other exchange initiatives undertaken at the Geneva Summit, 
and the agreement by President Reagan and General Secretary Gorbachev to review these 
programs at their next meeting. 

[Ed. Note: The Heritage Foundation later established an office in Moscow, ostensibly to oversee 
Russia's "hoped-for" evolution from communism to free market economics.] 



The "Effective" Eighties : c. 1986 



231 



National Academy of Education at the Harvard Graduate School of Education (Cam- 
bridge, Massachusetts), sent out an informational letter in 1986 entitled "ACLS [American 
Council of Learned Societies] -USSR Ministry of Education Commission on Education" describing 
joint U.S. -Soviet education activities. An excerpt which details an extraordinary agenda for 
cooperation with "The Evil Empire" follows: 

Scholars from the American Council of Learned Societies and the Ministry of Education of 
the Soviet Union met in the United States in 1986 and agreed to establish a Commission on 
Education that will be responsible for joint scholarly relations in pedagogy and related fields 
between the United States and the Soviet Union. Some major joint U.S.- Soviet project themes 
are: Methods of Teaching and Learning School Science and Math Subjects Using Computers; 
Theory of Teaching and Learning; Psychological and Pedagogical Problems of Teaching in 
the Development of Pre-School and School- Age Children; and Problems of Teaching Children 
with Special Needs. 



The February 1986 issue of The Effective School Report carried the first of a twelve-part 
series entitled "Implementing Effective Schools: Commitment — The First Step." An accurate 
description of the Pavlovian/Skinnerian methods required by Effective Schools Research is 
found in this article. Excerpts follow: 

Effective schools research is conclusive beyond any doubt that all children can learn. Prac- 
tice now reveals that any school can be led, through a systematic process of training for 
behavioral change, to effectiveness. Neither research nor practice suggests that the process 
of becoming effective is easy... 

The task of leading a school from ineffectiveness to effectiveness is monumental; how- 
ever, it can be done. And the research proves that it can be done without wholesale changes 
of personnel. Ron Edmonds said that we must assume that the teacher and staff are at least 
as educable as the children they teach.... 

Change in an effective school must be dramatic if the school is to become effective. 
The mind-set of many if not most employees within the building must change. Effective 
school behaviors must be demonstrated by all. These behaviors are observable, measurable, 
and transferable; therefore, they can be learned. In-depth and highly structured training will 
precede improved outcomes. 

The trauma experienced by a school that sets a course of effectiveness will be sub- 
stantial, and will require the implementation of a rigid, highly structured, and sequenced 
program with all research-based elements in place. 



The National Forum for Educational Awareness held a special ceremony and reception in 
the Russell Senate Caucus Building, Washington, D.C. on February 21, 1986 to honor Norman 
Dodd, research director for the Reece Committee during 1953-1954. Barbara Cueter, Charlotte 
Iserbyt and Elisabeth Russinoff planned the awards ceremony at which Senator Jesse Helms 
made the presentation of the "Americanism Award" to Mr. Dodd. Mrs. Rosalind Kress Haley, 
a close and long-time friend of Norman Dodd's, was responsible for the reception following 
the awards ceremony. Admirers of Norman Dodd from across the country arranged for the 
ceremony to be videotaped. Some excerpts of Senator Helms' videotaped comments follow: 



232 



I've learned a little bit about this very fine gentleman who is here today and the more I 
have learned the more I am convinced that there can't be any other American who has done 
more to bring the attention of the American people to the real story of the onslaught against 
American civilization than that distinguished American, Mr. Norman Dodd. 

I think it was about 32 years ago. . . 1954 when Mr. Dodd served as the able director of 
research for the Reece Commission to investigate the tax-exempt foundations, and oh sir! how 
they needed to be investigated. Congressman Reece was so shocked by the anti-American 
activities of the major foundations and their academic allies that he felt obliged to establish 
a special committee of Congress to investigate [these] activities... 

Mr. Norman Dodd, as research director of the Reece Committee, provided a great ser- 
vice to our nation by exposing the real designs of the tax-exempt foundations, such as, who 
else but the Rockefeller Foundation, and the bottom line of their activities was, and it still 
is, fundamentally to alter our cultural life so that socialism instead of freedom becomes the 
American way of life. That's what they're about. Oh, they have other pretexts, just as do such 
organizations today as the Council on Foreign Relations and the Trilateral Commission. 

We are sounding a call to arms to you again, sir, to get you to help us combat these 
people.... [F]rom what I have learned of Mr. Dodd's life, he has steadfastly adhered to the 
ideals of our Founding Fathers, as so few do. 

I hope that conservatives of today, particularly the younger ones, will go back to the 
hearing records of the Reece Committee and carefully review the massive amount of testimony 
and findings — over 1,000 pages. I think it is time to pick up where Congressman Reece and 
Norman Dodd left off 32 years ago and begin again with investigation of activities of the 
foundations. Without a doubt we are going to find the same patterns, the same designs, the 
same goals that were uncovered three decades ago, and those that were uncovered then were 
unsavory Those which can be uncovered today will be the same. 

In any case, I am so delighted to be here — it's an honor to be here. . . on behalf of the 
National Forum for Educational Awareness, and Mr. Dodd, really and truly on behalf of the 
American people.... [I present this] beautiful plaque.... I am proud of you, sir, and God 
bless you! 

[Ed. Note: There is no one in a more influential position, nationally or internationally, than 
Senator Jesse Helms, chairman of the U.S. Senate Foreign Relations Committee, to "pick up 
where Congressman Reece and Norman Dodd left off 32 (now 45) years ago and begin again 
the investigation of activities of the foundations. " The reader is urged to contact his elected 
officials to request a resumption of this investigation.] 

Carol Barber, outcome-based education/mastery learning consultant from Houston, 

Texas wrote "Outcome-Based Education/Mastery Learning: What Is It? Why Do It? How Do 
You Do It?" which appeared in the Spring (Vol. 5, No. 3) 1986 issue of Outcomes, the quarterly 
journal of the Network for Outcome-Based Schools. The following are excerpts: 

OBE/ML: WHAT IS IT? 

As discussed by others in this issue, there is considerable overlap in many of the school reform 
movements sweeping the country today. Frequently, outcome-based education and mastery 
learning are used interchangeably or as synonymous phrases. While there are certainly many 
commonalities in the two movements, they also are very different. 

One way to differentiate OBE from ML from other effective school practices is to vi- 
sualize an umbrella and its various parts. The umbrella includes: 1) a canopy; 2) a center 



The "Effective" Eighties : c. 1986 



233 



pole to support the canopy; and 3) a set of hinged ribs radiating from the center pole. The 
umbrella gives us a perfect analogy for comparing many of the school reform movements. 
Outcome-based education is represented by the canopy of the umbrella. The OBE ideas 
represent possible reform of the total school system.... When a district moves into OBE, it is 
ready to examine belief systems of staff, students, parents; placement of students; grading 
and reporting policies; curriculum issues; certification processes; instructional methods; etc., 
etc., etc. In other words, OBE means an approach to reform within the total [emphasis in 
the original] school system; i.e., the umbrella under which all practices of school operation 
will occur. 

The center pole supporting the umbrella represents the mastery learning ideas. Mastery 
learning supports the OBE movement in that it is the main vehicle upon which to begin the 
change process in the belief system, curriculum organization and instructional strategies. 
Mastery learning provides us with the support and processes needed to begin the total OBE 
reform in our schools. 

The set of hinged ribs radiating from the center pole can be viewed as any of the 
many effective school movements [emphasis in original] and/or strategies available to us. 
Strategies such as Dr. Hunter's Mastery Teaching, Hopkins' Student Team Learning, Johnson 
and Johnson's Cooperative Learning, Joyce's Teaching Models, Good's TESA, and many 
others, represent effective practices which are totally compatible and will certainly enhance 
an OBE/ML program. 

...Realistically, one could implement any one of the above-mentioned strategies without 
having ML in operation; indeed one can implement ML without having OBE. However, when 
OBE is implemented, ML must be applied. 



"Report to the Secretary of Education William Bennett, April, 1986. Transform^ 

American Education: Reducing the Risk to the Nation" was issued by the National Task Force 
on Educational Technology. The memo was distributed at an Ohio State School Board caucus. 
An excerpt follows: 

For 1990-2000: The improvement and transformation of education to Mastery Learning 
will demand continuing support. The nation needs to recognize that the education of its 
citizens provides the basis for the economic, social and cultural health of American society. 
Enlightened national self-interest should justify the support of the well-planned educational 
transformation that the Task Force proposes. 



On May 5, 1986 The St. Louis Globe-Democrat ran an article entitled "School Officials 
Upset by New State Plan" which reported that local educators objected vociferously to a new 
state plan that required them to give standardized tests in seven core subjects to students in 
the third, sixth, eighth, and tenth grades. Excerpts from this article follow: 

Local educators are stepping up their criticism of what they claim is state interference in 
the way local schools teach children.... The tests are required by the Excellence in Education 
Act of 1985, a reform bill that educators have largely supported. But school officials claim 
the testing component will force them to change their curriculum so students learn material 
in the same order the tests are given [teach to the test] . They claim 70 to 80 percent of the 
curriculum in local schools could be determined by the new tests.... 



234 



"We are not opposed to the concept of teaching children the fundamental facts that 
they ought to know. The issue is who controls the curriculum," said Kirkwood School District 
Superintendent Thomas Keating. Keating and other superintendents aired their complaints 
at a joint meeting last week of the Cooperating School Districts of the St. Louis Suburban 
Area and the Missouri School Boards Association.... 

. . .One of the harshest critics of the test plan is Ferguson-Florissant Superintendent Daniel 
B. Keck, who said the districts may just as well replace their school names with "Department 
of Elementary and Secondary Education, State of Missouri, Local Annex."... 

Keck, however, said the state has bypassed elected school board members and estab- 
lished a direct "pipeline" to local schools. He said administrators are accountable to whoever 
sets the curriculum.... "To whom am I as the chief executive officer of a school district re- 
sponsible: to you, or DESE?" Keck said. "In this particular system, there are no checks and 
balances. That is bad governance." He said the media will create public pressure to excel 
on the new tests. 

Keck said the legislature has "inadvertently" transferred accountability for educational 
quality to itself. He predicted that if the test scores aren't satisfactory, the state will lower 
the standards "until the legislature looks good."... 

..."And the same number of kids will walk out the door functionally illiterate," he 

said. 

One of the test items (objectives) found in Missouri's Educational Objectives, Grade 12, 
resulting from passage of Missouri's Excellence in Education Act of 1985, follows: 

Given a description of an individual with a debased character, such as a child murderer or 
a person who has set fire to an inhabited building, students should reject suggestions for 
punishment which would detract from the dignity of the prisoner. 



In the May 15, 1986 issue of Education Daily an article related to student Assessment 
reported that "Secretary Bennett names study group to evaluate student assessment" and 
lists "Chairman Lamar Alexander, Governor of Tennessee and Chairman, National Governors 
Association, and Hillary Rodham Clinton, First Lady of Arkansas and partner in the Rose law 
firm" amongst members of the study group. 

An article entitled "Carnegie Teaching Panel Charts 'New Framework' — Grants Total- 
ing $900,000 Made to Press Reforms" written by Lynn Olson appeared in the May 21, 1986 
issue of Education Week. The announced "New Framework" — amongst other things — carved 
in stone the methodology which teachers would be required to use in order to obtain board 
certification. Excerpts follow from this extremely important article: 

The Carnegie Corporation of New York announced here last week that it has awarded two 
major grants, totaling nearly $900,000, to forward the recommendations of the Carnegie Task 
Force on Teaching as a Profession. 

Last year, the corporation created the Carnegie Forum on Education and the Economy, 
a multi-million dollar initiative designed to help chart U.S. education policy during the next 
10 years. The forum assembled the 14-member task force on teaching as one of its first ini- 
tiatives. The foundation awarded $817,000 to Stanford University for a 15-month research 



The "Effective" Eighties : c. 1986 



235 



project to develop prototypes of the kinds of assessments the task force's proposed National 
Board for Professional Teaching Standards might use to certify teachers.... 

...According to David A. Hamburg, president of the corporation [psychiatrist and 
negotiator of the Carnegie-Soviet Education Agreements], the grants illustrate Carnegie's 
commitment to the task force's work.... 

The 15-month Stanford study is the "opening gambit in a long and complex campaign 
to develop assessments for use by the national board," said Lee S. Shulman [deeply involved 
with the Chicago Mastery Learning debacle, ed.], principal investigator for the study and a 
professor of education at Stanford.... 

"Two major 'products' will come out of the Stanford study," said Mr. Shulman. First, it 
will create, field test, and critique several "prototype" assessments — most likely in the areas 
of elementary-school mathematics and secondary-school history. 

Second, it will develop a protocol for how to develop such assessments in the future.... 
As part of its work, the Stanford project will do the following: 

• Commission about 20 experts to write papers summarizing the knowledge and skills 
that the prototype assessments should measure. 

• Conduct "wisdom of practice" studies of outstanding teachers to determine through 
interviews and observations what it is that they know and can do.... 

• Bring together people from around the country who are doing state-of-the-art as- 
sessments in other fields, such as those for airplane pilots and foreign-service jobs, 
to determine what assessment techniques are applicable to teaching. 

• Bring together experts in the fields to be tested — such as elementary-school math 
teachers, teacher educators, and mathematicians — to get their advice on what the 
assessments should measure and how. 

In addition, the project will have a steering committee representing key stakeholders 
in the creation of such assessments as well as experts in testing and in the subject areas to 
be tested. 

Members of the Task Force included: Lewis M. Branscomb, Chairman, Vice President 
and Chief Scientist of the International Business Machines Corporation; Alan K. Campbell, 
Executive Vice President and Vice Chairman of A.R.A. Services, Inc. of Philadelphia; Mary 
Hatwood Futrell, President of the National Education Association; John W. Gardner, former 
Secretary of Health, Education and Welfare and founder of Independent Sector; Fred M. 
Hechinger, President of the New York Times Company Foundation, Inc.; Bill Honig, Cali- 
fornia State Superintendent of Public Instruction; James B. Hunt, former Governor of North 
Carolina, former Chairman of the Education Commission of the States and a lawyer with 
the firm of Poyner and Spruill; Vera Katz, Speaker of the Oregon House of Representatives; 
Governor Thomas H. Kean of New Jersey; Judith Lanier, Dean of the College of Education at 
Michigan State University; Arturo Madrid, President of the Tomas Rivera Center of Claremont 
(California) Graduate School; Shirley M. Malcolm, program head, Office of Opportunities 
in Science, American Association for the Advancement of Science; Ruth Randall, Commis- 
sioner of Education in Minnesota; Albert Shanker, President of the American Federation of 
Teachers. 



An article in the May 21, 1986 issue of Education Week entitled "Researchers Leery of 
Federal Plans for Collaboration — Fear 'Cooperative' Link a Path to 'Intervention'" by James 
Hertling discussed possible federal control of education research. Some excerpts follow: 



236 



The Education Department's decision to form a collaborative relationship with its new research 
and development center on reading has revived the debate over what control the government 
should have over the work of educational researchers receiving federal money. . . . 

...But the cooperative agreement outlined in the April 22 Federal Register announcing 
the competition for the new center on reading research and education mandates government 
involvement in all stages of the center's work: "developing the agenda, specifying anticipated 
outcomes, setting research priorities, altering research objectives on the basis of preliminary 
finding, and receiving final results." 

"There's nothing we have heard that makes a cooperative agreement acceptable," said 
Laurie Garduque, director of governmental and professional liaison at the American Educa- 
tional Research Association. 

[Ed. Note: The above excerpts are important due to their identification of Secretary William 
Bennett's U.S. Department of Education as the source of the Skinnerian "scientific research- 
based" reading instruction ultimately used as the criteria necessary for funding of proposals 
under the Reading Excellence Act of 1998.] 



"Carnegie Report on Education: 'Radical Blueprint for Change'" by Nancy GARland was 
published in the Bangor [Maine] Daily News, June 28-29, 1986. The article stated in part: 

The leader of the 600,000-member American Federation of Teachers, [Al] Shanker said many 
Asian and European countries are changing the way they educate their children to meet the 
rapidly changing needs of industry. American industries will lose ground if schools cannot 
produce employees with skills useful in those industries. 



Paulo Freire's influence on world education, including education in the United States, 
is revealed in an interesting article entitled "Radical Theorist Takes His Message to the World" 
published in The New York Times August 19, 1986. Some excerpts follow: 

Within days of the triumph of the Sandinista Revolution in July 1979, Nicaragua's new 
leaders had tracked down the Brazilian educator Paulo Freire at the university where he was 
lecturing in the United States and had issued him an invitation to come to Managua to help 
reorganize the country's education system and design its new literacy program. 

When Portugal underwent its revolution in 1974 its new Government made a similar 
offer to Mr. Freire, as did Chile's Institute for Agrarian Reform during the period just before 
the election of Salvador Allende Gossens there." 17 

Newly independent nations in Africa, ranging from Angola to Tanzania, have also 
sought the advice of the man regarded as perhaps the foremost literacy expert and radical 
educator in the world. 

"It's something that pleases me," Mr. Freire said recently as he passed through New 
York City, on his way to a series of workshops and seminars at American universities. "At 
times, I have been criticized by some philosophers of education, who place me in postures 
that they classify pejoratively as revolutionary..." 

Mr. Friere (pronounced FRAYree) first became widely known in this country with the 
publication Pedagogy of the Oppressed more than 15 years ago. He has argued that it is not 
education which shapes a society, but rather society which molds education to fit the ends 



The "Effective" Eighties : c. 1986 



237 



and interests of those in control. In his view, education, particularly the process of learning 
to read and write, "can become an instrument of social transformation by making those at 
the bottom of society aware of their plight and the reasons for it." 

In practice, refined through literacy campaigns among peasants in the Brazilian Northeast 
beginning in the late 1950s and later on four continents, Mr. Freire and his many disciples 
have relied on words like "hunger" or "land," chosen for their relevance to the pupil's own 
political and social situation, to teach peasants and workers to read and write. The objective 
is to develop among them what Mr. Friere calls "a critical comprehension of reality. " 

...But Mr. Freire also argues that his distinct education has considerable relevance in 
the industrialized nations of the capitalist world. Mr. Freire's methods have been adapted in 
the United States by feminist, Hispanic and black groups that operate adult literacy programs 
or train teachers. Even some corporations, such as Consolidated Edison in New York, have 
at various times used his techniques in education programs for new workers with low levels 
of formal education. 

"I am not a technician of literacy, as many people apparently saw me in the beginning," 
he said. "I am an educator who thinks globally."... 

To some of his critics, including the Reagan Administration, Mr. Freire's emphasis on 
the practical has been taken to an absurd extreme in Nicaragua, where second graders count 
not apples or oranges but hand grenades and rifles to learn arithmetic. 

[Ed. Note: See the 1993 entry for the Michigan High School Proficiency Communications Arts 
Framework which deals with the constructivist philosophy behind whole language and carries 
out Friere's philosophy of social transformation through "critical thinking. "] 

The New York Times of August 31, 1986 carried an article entitled "Study Says 33 % of 

Young Adults Are Illiterate." Excerpt follows: 

Results from College Graduates: The most recent Federal study was conducted by two pri- 
vate groups, the Educational Testing Service and the National Assessment of Educational 
Progress, at a cost of $1.8 million. In testing basic skills at various levels, the study found 
that one in three young adults with a college degree from a two- or four-year school failed 
to answer this question correctly: If one purchased a sandwich for $1.90, a bowl of soup 
for 60 cents, and gave the cashier $3, how much change should he receive? The answer is 
50 cents, (p. 28) 



George Roche, president of Hillsdale College, Hillsdale, Michigan, and ch Amman of the 
National Council on Educational Research, a presidentially appointed council overseeing the 
activities of the National Institute of Education, requested an investigation into the controversial 
Northwest Regional Educational Laboratory's (NWREL) Tri-County K-12 Course Goals Project 
which was initiated in 1971. Joan Gubbins, a former Indiana state senator and chairman of 
the council's Improvement and Practice Committee, researched the Goals Project, prepared, 
and submitted her report entitled "Goals and Objectives: Towards a National Curriculum?" to 
the Council on September 26, 1986. 

Although Senator Gubbins 's important report could have been used as a brief documenting 
the illegality of NWREL's role in development of the Course Goals, it evidently fell on deaf ears. 
Had the premise of this report — that the goals were based on humanistic no right/no wrong 



The "Effective" Eighties : c. 1987 



239 



Positive Interdependence 

Students must feel that they need each other in order to complete the group's task, that they 
"sink or swim" together. Some ways to create this feeling are through establishing mutual 
goals (students must learn the material and make certain group members learn the material) , 
joint rewards (if all group members achieve above a certain percentage on the test, each will 
receive bonus points) , shared materials and information (one paper for each group or each 
member receives only part of the information needed to do the assignment), and assigned 
roles (summarizer, encourager or participator, elaborator) . 



1987 

Charlottesville, Virginia's The Daily Progress carried Norman Dodd's obituary in its 

January 30, 1987 edition. The tribute read in part: 

Mr. Dodd's earlier suspicions of a political and economic conspiracy were confirmed. During 
his research for this committee [the Reece Committee] , the president of the Ford Foundation, 
H. Rowan Gaither, Jr. told him that some of the giant foundations, including Ford, were work- 
ing under directives from the White House to so alter life in America as to make possible a 
comfortable merger with the Soviet Union. 



North Central Association of Colleges and Schools (NCA): Michigan Committee's Out- 
comes Accreditation was published in 1987. The brochure demonstrates clearly the shift from 
academic education to performance/outcome-based affective education focusing on changes 
in the behavior of the individual student over time. Excerpts from this important publication 
follow: 

The NCA's Outcomes Accreditation model has generated considerable interest among Mich- 
igan educators. It is a process that follows many of the principles of the "Effective Schools 
Research" and results in schools focusing their activities on improving student success.... 

Outcomes Accreditation [OA] is a school-based accreditation and evaluation model that 
helps schools document the effectiveness of their programs. Schools are required to target 
their evaluation efforts by measuring changes in student behavior; i.e., outcomes. OA serves 
as an alternative to the NCA's traditional evaluation formats. OA was adopted for use by 
NCA member schools in April 1987. Rather than focusing on "inputs" or what the school 
contributes to the educational process, OA examines "student outcomes" or the influence 
the school has on the students it serves.... 

Schools identify no more than five areas in which they want to focus their improvement 
activities. Target goals are written for each area. Three of these target goals focus on cognitive 
or basic skill areas, and two goals address affective concerns or how students behave or feel 
about themselves. The goals are written in such a way that changes can be measured over 
time. Student outcomes are measured by comparing desired levels of student performance 
with present performance. . . . 

Examples of specific data sources include: criterion- and norm-referenced test results, 
anecdotal records, attitude inventories, teacher-made tests, student participation rates, writ- 
ing samples, and attendance and enrollment figures.... Next, faculty committees establish 
the desired levels of student performance. Although external sources such as state-mandated 



240 



goals, national averages or goals developed by textbook publishers might be helpful in 
formulating performance expectations, educators need to base desired performance levels 
on their knowledge of each child. The discrepancy that exists between current and desired 
student performance then serves as the focus of the school improvement plan. 



At the Second Annual National Outcome-Based Education Conference, held FEBRuary 

12-14, 1987 in Tempe, Arizona, a notebook was distributed which contained a flow chart 
describing how mastery learning works. The notebook contained materials generated by the 
following presenters: Part I, William Spady; Part II, Lawrence A. Rowe; Part III, Kathleen A. 
Fitzpatrick; and Part IV, Janet N. Barry. This writer has converted the flow chart which was 
in the notebook to written text in order to provide a graphic (rat maze) description of the 
behavior modification method behind mastery learning and direct instruction. The chart's 
description follows: 

MASTERY LEARNING BREAKS THE FAILURE CYCLE 

At the top of a circle is the word "TASK," which has an arrow pointing towards LACK OF 
UNDERSTANDING, which has two parts: 1) change presentation and 2) use alternative ma- 
terial. 2) has two arrows: one towards TASK COMPLETION SUCCESS and the other towards 
DIFFICULTY. DIFFICULTY has two parts: 1) peer tutoring and 2) shorten assignments. 2) 
has two arrows: one towards TASK COMPLETION SUCCESS and the other towards FAILURE. 
FAILURE has two parts: l)change environment and 2) change curriculum. 2) has two arrows: 
one towards TASK COMPLETION/POSITIVE FEEDBACK, and the other towards NEGATIVE 
FEEDBACK. NEGATIVE FEEDBACK has two arrows: 1) use self-pacing, self-checking, and 2) 
group discussion of goals. 2) has two arrows: one towards ATTAINABLE GOAL/POSITIVE 
FEEDBACK, the other towards POOR SELF CONCEPT. POOR SELF CONCEPT has two ar- 
rows: 1) provide successes and 2) positive feedback. 2) has two arrows: one toward RAISED 
SELF ESTEEM and the other LOW MOTIVATION. LOW MOTIVATION has three arrows: 1) 
provide choices, 2) choose relevant materials, and 3) utilize interests. 3) has two arrows: 
one towards HIGHER MOTIVATION/WILLINGNESS TO TRY and the other toward BEHAVIOR 
PROBLEMS (Task Avoidance). BEHAVIOR PROBLEMS has three arrows: 1) provide choices, 
2) contracting, and 3) group goal setting. 3) has two arrows: one toward RECHANNELLED 
BEHAVIOR DIRECTED TOWARD SKILL ATTAINMENT and INADEQUATE SKILLS. INAD- 
EQUATE SKILLS has two arrows: 1) prescriptive curriculum and 2) modified environment. 
2) has two arrows: one towards SKILLS ATTAINED/NEW TASK ATTEMPTED, and the other 
back to start, "TASK." 



Education Daily of May 21, 1987 covered the Carnegie Foundation for the Aovancement 
of Teaching's award of $817,000 to Lee Shulman of Stanford University, formerly involved in 
Chicago's Mastery Learning failure, for his forthcoming work on assessments for new teach- 
ers. 

Kathy L. Collins, legal counsel for the Iowa Department of Education, wrote an article 
entitled "Children Are Not Chattel" for the American Humanist Association's journal Free 



The "Effective" Eighties : c. 1987 
Inquiry in the Fall of 1987 (Vol. 7, No. 4, p. 11) and stated that 



241 



Christian parents who want the freedom to indoctrinate their children with religious edu- 
cation do not understand that the law that prevents them from legally teaching their kids 
prevents someone else from abusing them. . . . 

Certified teachers are state-mandated child-abuse reporters. When children are allowed 
to be kept at home, there may be no outside contact, no help for the abused child. 

[Ed. Note: This portentous article was published just as the homeschooling movement in 
America began mushrooming. Parents responded to the failures of the latest fads in the class- 
rooms by pulling their children out of public schools to instruct them at home. Many educators 
viewed the rise of home education with alarm. Parental rights and constitutional religious 
freedoms posed a direct threat to the "it takes a village to raise a child" philosophy which was 
to become embedded in every state's education reform plan during the 1990s.] 

On November 2, 1987, a few short years before the Berlin Wall came down, and only 
two years after the signing of the U.S. -Soviet education agreements, Mikhail Gorbachev was 
reported by Novosti Press Agency Publishing House in Moscow to have said in his speech to 
the Soviet Central Committee, "We are moving toward a new world: the world of communism. 
We shall never turn off that road." Even so, after the Berlin Wall came down (1989) Gorbachev 
was a keynote speaker at a major Republican Party fundraiser. 

David W. Hornbeck of the Carnegie Foundation for the Advancement of Teaching and 

Maryland's state superintendent of instruction, whose credentials lie in theology rather than 
in education, presented his proposal for a new public education system for the nation in the 
November 17, 1987 issue of The Montgomery County [Maryland] Journal. The Journal car- 
ried an article entitled "State Education Chief Pushes Revolutionary Plan for the Nation" that, 
amongst other things, "would let students enroll in schools of their choice and even sue the 
state over low-quality education." Excerpts follow: 

"The model state law would create a situation in which it's the school's fault and not the 
kid's if the school is unsuccessful. If it's not a successful school, you can leave it. " The system 
would let a student cross district lines in search of better public education.... 

Hornbeck's presentation Saturday at an Asheville, North Carolina meeting aroused 
just a few criticisms, which were mainly concerned with the proposal's wording, said Jay P. 
Goldman, spokesman for the school chief's council. "This follows years of massaging and 
reworking it," he said.... 

. . .The new rights proposals are directed toward all children, but special measures target 
those considered "at risk of educational failure." In the early years, low-income children 
would be identified as at risk; in later years, achievement would provide the definition.... 
"We're trying to take a step away from kid-bashing," Hornbeck said. "Society and the schools 
fail the kids."... 

...Hornbeck, who said he is waiting for the council vote before discussing the issue 
with Gov. William Donald Schaefer and Maryland legislative officials, said he expects local 
school officials across the country to resist the proposals. 

"If the council adopts this, you will have the superintendents of the United States say- 
ing we want to create new rights and routes that may well lead to the courts," Hornbeck 



242 



said.... 

...One of the plan's goals is to eliminate spending differentials from district to district, 
ranging about $2,000 per pupil from highest to lowest in Maryland. "That means $50,000 
more behind one classroom of 25 kids than another," Hornbeck said. 

[Ed. Note: Did we understand Mr. Goldman correctly? "This follows years of massaging and 
reworking"? Why does one need "years of massaging and reworking a proposal" which sup- 
posedly is in the best interests of the traditional American teacher and the children he or she 
teaches? Obviously, this proposal by Hornbeck was a radical one which would focus not on 
traditional education, but on producing or molding a "product," your child — who is now being 
referred to as "human capital" by Hornbeck — your child, whose workforce skills and politically 
correct attitudes, values and beliefs would entitle him to a Certificate in Mastery in order to 
be hired by and able to increase the profits of a corporation. 

References to "special measures target those considered 'at risk of educational failure'" 
are unsettling. If our children reject the "education" to which they are subjected, they will 
immediately be labeled "at risk," thus subjecting them to the behavior modification programs 
and operant conditioning techniques normally used for special education. 

When Hornbeck says, "Society and the schools fail the kids," are we to believe "It's 
the environment, stupid"? Everything that goes wrong in our great nation is now blamed on 
the "environment"; from people's choices to smoke or not to smoke, drink or not to drink, 
murder or not to murder, study or not to study. According to Skinnerian behaviorist think- 
ing, since humans are to be thought of as animals, not having free will and, therefore, not 
being responsible for their actions, they would be incapable of making complex decisions, of 
deciding "yes" or "no." We are on a slippery slope when we accept this "the environment is 
responsible" line of thinking. 

Hornbeck's proposal parallels the 1999 passage of "choice" legislation in Florida, under 
Governor Jeb Bush's direction. Delivery of failing grades to schools will be the trigger for fund- 
ing for moving students to schools of their "choice" — including private or religious schools.] 

1988 

On February 22, 1988 Clarence Thomas, chairman of the Equal Employment Opportunity 
Commission (EEOC), who would shortly thereafter be appointed by President George Bush 
to the U.S. Supreme Court, signed off on an EEOC Policy Notice regarding protection from 
mandatory New Age training in the workplace. The Policy Notice explained: 

1. SUBJECT: Policy statement on "new age" training programs which conflict with 
employees' religious beliefs. 

2. PURPOSE: This policy statement is intended to provide guidance in the handling of 
cases where an employee objects to participating in the training program because 
it utilizes techniques or exercises which conflict with the employee's religious be- 
liefs. 

3. EFFECTIVE DATE: Upon Receipt. 

4. EXPIRATION DATE: 

5. ORIGINATOR: Title VII/EPA Division, Office of Legal Counsel. 

6. INSTRUCTIONS: This notice supplements the instructions in #628 of Vol. II of the 
Compliance Manual, Religious Accommodation, and should be inserted after p. 



The "Effective" Eighties : c. 1988 



243 



628-630. 

[Ed. Note: This Policy Notice extends to all government employees who resist manipulative 
New Age training which is based on the behavioral techniques and behavior modification de- 
scribed in this book. Held captive in the classroom due to attendance laws, why haven't our 
children been provided the same protection from the mind-bending curricula and methods 
used on government employees in the workplace? Why are not American teachers provided 
this protection from the mind-bending, brain-numbing, in-service sessions which violate their 
constitutional rights? The Protection of Pupil Rights Amendment which passed the U.S. Senate 
unanimously in 1978, for which regulations were drafted and approved in 1984, has proven 
to be useless since the educational bureaucracy refuses to enforce it and has consistently 
stonewalled when parents have attempted to assert their rights under the law.] 

The Effective School Report's March, 1988 issue published "International CoNgress for 
Effective Schools Draws Participants from 13 Nations to London" which heralded Effective 
School Research as representing "the" chosen organizational and pedagogical vehicle for the 
operation of the world's schools. Excerpts follow: 

Representatives from thirteen countries came to London in January for the inaugural 
meeting of the International Congress for Effective Schools. In the United States, the Effective 
Schools Movement was begun to improve public schools for children from low income 
families. Thirty American states have used effective schools precepts as part of their reform 
efforts. 

Effective schools activities were reported from Australia, Canada, England, and Wales, 
Germany, Hungary, Ireland, Israel, the Netherlands, Norway, Scotland, Sweden, South Africa, 
and the United States. Dale Mann, a professor at Teachers College, Columbia University, and 
the founding chairman of the International Congress, said that the 130 registrants were using 
effective schools ideas in school improvement work that ran the gamut from early childhood 
education to high school reform. 

The Congress will meet next in January, 1989 in Rotterdam. A special section of the pro- 
gram will offer legislators an opportunity to share their perspectives on school improvement. 
The Rotterdam meetings will be organized by a team led by D.A.A. Peters (Projectleider, 
Project Onderwijs en Social Milieu, Burg, Van Walmsumeg 892, 3011 MZ Rotterdam, the 
Netherlands 010-4113266). 18 

[Ed. Note: By this time the reader is all too familiar with The Effective School Report and Ef- 
fective School Research, as well as its role in the dumbing down of public school children, 
particularly those from low income families. The international change agents "used" these 
children (experimented on them — starting with children in Jackson, Mississippi where The 
Effective School Report was originally located) prior to recommending that all children be 
subjected to the Skinnerian dumb down methods (OBE/ML/DI). 

From this time on the reader will encounter entries in this book dealing with Effective 
Schools Research exchanges with Russia and China, thereby closing the circle on the imple- 
mentation of Effective Schools Research on a global basis. Also of importance is the reference 
to the inclusion of England and Wales, not only in the original National Assessment of Edu- 
cational Progress (NAEP) 1981 paper by Archie Lapointe and Willard Wirtz, but in the 1994 
National Issues in Education: Goals 2000 and School-to-Work entry which reveals that: 



244 



In 1991 Lamar Alexander, working with Chester Finn and others who were familiar with the 
work of British Prime Minister Margaret Thatcher in enacting a national curriculum in England 
and Wales, convinced Bush to endorse the idea of national standards for education. 

Of interest here is that the National Assessment of Educational Progress (NAEP) had been 
working on assessment for many years, dating back to 1980, with Clare Burstall of Wales, 
U.K. Also, one might ask why the United States would want to copy the English education 
system in light of the poor performance of its students on basic skills tests. The December 9, 
1988 issue of The Wall Street Journal carried an editorial entitled "And You Thought American 
Schools Were Bad!" in which Theodore Dalrymple, the pen name of British physician Anthony 
Daniels, said that: 

In eight years in medical practice in an English slum (in which lives, incidentally, a fifth of 
the population of the industrial English city where I work) I have met only one teenager of 
hundreds I have asked who knew when World War II was fought. The others thought it took 
place in the early 1900s or the 1970s, and lasted up to 30 years. 

Another recurrent theme, which will become evident throughout the rest of this book, will 
be the growing emphasis on what Utah's Superintendent Burningham referred to as "research- 
verified programs." This term will change subtly as Effective Schools programs are referred 
to as "scientific, research-based," implying that they are "acceptable and desirable"— or as 
Secretary of Education William Bennett explained, "What Works."] 

Dr. Sue E. Berryman, director of the Institute on Education and the Economy at Teach- 
ers College, Columbia University, New York, presented a paper entitled "Education and the 
Economy: A Diagnostic Review and Implications for the Federal Role" at a seminar on the 
federal role in education held at the Aspen Institute, Aspen, Colorado on July 31 -August 10, 
1988. Under acknowledgments one reads: 

This Seminar was sponsored by The Carnegie Corporation, The Ford Foundation, The 
Hewlitt Foundation, The Primerica Foundation, and the Rockefeller Brothers Foundation. 
This paper is based heavily on, and could not have been written without, research conducted 
under the auspices of The National Center on Education and Employment, funded by the 
Office of Research, Office of Educational Research and Improvement of the U.S. Department 
of Education. The paper also relies on research funded by the National Assessment of Vo- 
cational Education. 

An excerpt from Dr. Berryman's resume, which was attached to her paper, follows: 

1973-1985 Behavioral Scientist, Behavioral Sciences Department, The RAND Corporation, 
Santa Monica, California, and Washington, D.C. 

Analyzed individuals' educational and employment choices and the nature and conse- 
quences of military, corporate, and federal human resource policies. 

The table of contents of Dr. Berryman's report is reproduced here: 
I. A FRAME OF REFERENCE 



The "Effective" Eighties : c. 1988 



245 



II. THE TRANSFORMATION OF THE AMERICAN ECONOMY 

HOW DO WE KNOW WHAT IS HAPPENING? 
SKILL TRENDS IN EMPLOYMENT BY OCCUPATION 
INDUSTRY CASE STUDIES: CHANGES IN THE NATURE 

AND STRUCTURE OF WORK 
RECONCILING OCCUPATIONAL COUNTS AND INDUSTRY 

CASE STUDY RESULTS 

III. ELEMENTARY AND SECONDARY EDUCATION: A PICTURE OF 

DISCONNECTIONS 

WHAT DO WE NEED TO TEACH? TO WHOM? WHEN? HOW? 

What Do Students Need to Learn? 

Who Should Learn? 

When Should They Learn? 

How Should These Skills Be Taught? 

Vocabulary and Accountability 
EMPLOYERS AND EDUCATORS: ARE THEY LOOKING 

THROUGH THE SAME GLASSES? 
THE SIGNALLING SYSTEM BETWEEN SCHOOLS AND LABOR 

MARKETS 

THE STRUCTURE OF INDUSTRIES AND THE RESTRUCTURING OF 

AMERICAN COMPANIES: ANY LESSONS FOR RESTRUCTURING SCHOOLS? 

The Structure of Industries 

The Restructuring of American Companies 

IV. ECONOMIC CHANGES THAT AFFECT POST-SECONDARY 

EDUCATION AND TRAINING 

COLLISION BETWEEN HUMAN CAPITAL DEMAND AND SUPPLY 
EMPLOYERS' TRAINING INVESTMENT PATTERNS AND 

THEIR CONSEQUENCES 
ARE EMPLOYER TRAINING INVESTMENT PATTERNS CHANGING? 

V. EDUCATION AND THE ECONOMY: WHAT IS THE FEDERAL ROLE? 

REFERENCES 

Excerpts from the body of the paper follow: 

WHAT DO WE NEED TO TEACH? TO WHOM? WHEN? HOW? 

As the educational implications of the restructuring American economy become clearer, the 
incomplete — sometimes perverse — nature of current education reforms emerges. 

Those reforms targeted at improving students' academic skills are clearly appro- 
priate — up to a point, academic and work-related curricula should be the same. However, 
documented changes in the nature and structure of work and advances in cognitive science 
argue for a second wave of reform that involves fundamental changes in what we teach, to 
whom we teach it, when we teach it, and how we teach it. In other contexts I have talked 
about this second wave of reform as "shadows in the wings" for the simple reason that — to 
shift metaphors — this airplane is not yet ready to fly. The issues raised here pose formidable 
research, development, and evaluation challenges in areas such as curriculum (and associ- 
ated textbook or software materials), pedagogy, the preparation of teachers, concepts and 
measures of accountability, and school structure. 

What do industry studies imply about the core skills that students need to learn? Eco- 



246 



nomic changes certainly imply the need for good academic skills. Perhaps the most profound 
educational implication of computers in the workplace is that they force a replacement of 
observational learning with learning acquired primarily through symbols, whether verbal or 
mathematical (e.g., Scribner and Cole, 1973; Bailey, 1988).... 

As the labor force becomes increasingly multicultural and job content changes rapidly 
and in confusing ways, communication problems also increase between workers, generating 
the need for interpersonal communication and conflict resolution skills.... 

WHO SHOULD LEARN? 

The skills just described are generic in that, in general, they cut across industries and oc- 
cupations. Thus, everyone needs to learn them, not just some people. This does not mean 
that everyone needs to learn them in the same way. It does mean that for these skills, our 
educational objectives for everyone need to be roughly the same. 

The idea has been most problematic for higher order cognitive thinking. Like other 
industrialized nations, the United States has harbored two quite distinct educational tra- 
ditions — one concerned with elite education, the other with mass education. As Resnick 
[Lauren] (1987a) points out, these traditions conceived of schooling differently, had dif- 
ferent clienteles, and held different goals for their students. Thus, although "...it is not new 
to include thinking, problem solving, and reasoning in someone's curriculum, it is new to 
include it in everyone's curriculum."... 

WHEN SHOULD THEY LEARN? 

Early. We usually think about preparing students for the labor market during high school. 
However, we are talking generic work-related skills here, not occupationally specific ones; 
for these high school is too late. It is implausible to think that high school sophomores 
educated in a passive learning regime for the first nine years of their schooling can learn 
to self-regulate their learning in the tenth year. We can make analogous arguments about 
learning how to learn, about learning how to function effectively in teams, or about learning 
how to resolve conflicts. 

For example, as Resnick (1987a) notes, the most important single message of modern 
research on the nature of thinking is that the kinds of activities traditionally associated with 
thinking are not limited to advanced levels of development. 

These activities are an intimate part of even elementary learning.... In fact, the term "higher 
order" skills is probably itself fundamentally misleading, for it suggests that another set of 
skills, presumably called "lower order," needs to come first. This assumption... implicitly... 
justifies long years of drill on the "basics" before thinking and problem solving are de- 
manded.... Research suggests that failure to cultivate aspects of (higher order cognitive) 
thinking may be the source of major learning difficulties even in elementary school. 

This section relies heavily on pioneering work in cognitive psychology, cognitive sci- 
ence, and cognitive anthropology on non-school learning and its implications for how we 
structure formal learning. At the heart of this research is the presumption that intelligence 
and expertise are built out of interaction with the environment, not in isolation from it. This 
work implicitly challenges our traditional distinctions between "head" and "hand," between 
"academic" and "vocational" education, between "education" and "training," and between 
school-based and work-based learning. 

Coming out of this stream of research is a much clearer sense of how school-based 
learning and non-school-based learning differ from each other. In a bravura synthesis of 



The "Effective" Eighties : c. 1988 



247 



the work in this field, Lauren Resnick (1987b) delineates four broad contrasts between in- 
school and out-of-school mental activity that raise profound questions about the utility and 
effectiveness of schooling for all non-school activity, including work of all types and for all 
learners, whether at-risk, or not-at-risk. They stimulate us to rethink — radically rethink — how 
we teach in school. 

The first contrast is between individual cognition in school versus shared cognition 
outside. Although group activities occur in school, students are ultimately judged on what 
they can do by themselves. Much of the core activity of the school — homework or in class 
exercises — is designed as individual work. For the most part, students fail or succeed at a 
task independently of what other students do (aside from grading on a curve) . By contrast, a 
great deal of activity outside of school is socially shared: work, personal life, and recreation 
take place in social systems in which what one person is able to do depends fundamentally 
on what others do and in which "successful" functioning depends upon the mesh of several 
individuals' mental and physical performance. This contrast argues for much more team 
and co-operative learning, the student being accountable for both individual and team per- 
formance, (p. 21) 

[Ed. Note: The above emphasis on group learning, group cooperation, etc., reminds me of a 
comment made by a lady in the audience when I was giving a speech on education restructuring 
with its emphasis on the need for cooperative learning and how cooperative learning is used 
in communist countries. She recounted an incident which occurred while visiting relatives in 
the Ukraine (part of the former Soviet Union) . A fire broke out in the house one evening and, 
instead of her relatives using their individual brains and ingenuity to put it out, (assuming 
individual responsibility), everyone sat on the couch and franticly stared at one another, not 
knowing how to deal with the situation.] 

The East Gibson County (Indiana) Group, known as "Jeannie's Group," opposed the use of 

Tactics for Thinking, developed by Robert Marzano in 1988. 19 After long and heated discussions 
with the school system, the superintendent suddenly notified the group that he had arranged 
for a debate to be held in two days! Short notice, considering the fact that he carefully ne- 
glected to inform them until the day of the debate that they would be debating outside experts. 
And, experts they were — no less than Ronald Brandt of the Association for Supervision and 
Curriculum Development (ASCD) and Professor Ed Jenkins of Indiana University. A firsthand 
account of a portion of the debate follows: 

[Pat Burkhart, one of the East Gibson County Group debaters] "We would like to do some 
demonstrations for you. . . . The first one is yoga (demonstrated) .... The second exercise is self 
hypnosis. . . . These instructions. . . came from an article in The Readers' Digest (demonstrated) .... 
The third exercise is a semi-trance. This is the semi-trance in the Norman-Lindsay book Hu- 
man Information Processing referenced by Marzano in Tactics for Thinking, 'Unit 1 : Attention 
Control' (demonstrated) .... The fourth exercise is the Involuntary Attention-Orienting Reflex. 
These steps come from the book The Working Brain by Alexandr Luria [of Russia] which 
is also referenced in the Tactics for Thinking manual by Marzano (demonstrated) . The last 
exercise is Marzano's Attention Control in the Tactics manual. As a volunteer, we have an 
8-year-old child who understands the difference between acting and reality. We thought this 
appropriate — to use a child — since Marzano does. The difference is, our child knows what 
we are doing, but Marzano's victims don't. 

"Please tell us what is the difference? The thing that is really silly is that we are sup- 



248 



posed to believe that this is higher order learning — that it is learning to learn.... This is 
learning to have your conscious mind sedated and using only your unconscious mind which 
processes everything indiscriminately. . . . There isn't much going on here besides a form of 
self-hypnosis." 

In conclusion, the opponents of Tactics for Thinking asked Joan Gubbins, former Indiana 
state senator and presidentially appointed member of the National Council for Educational 
Research, to read the following: 

If we turn to Marzano's conclusions at the end of his evaluation, he states, and I quote: 
"These findings can not be considered stable." Do you understand what all of this says? 
Marzano himself says his evaluation of this experimental program is unreliable.... Noth- 
ing is said about improvement of performance on standardized achievement tests by the 
students used in this field testing. However, in a program Marzano reported on in 1984 
[he admitted that] "a decrease in math and reading achievement was indicated on stan- 
dardized tests." 



The August 1988 issue of Education Update, published by the Association for Supervision 
and Curriculum Development (ASCD), carried an article entitled "Tactics for Thinking Attacked 
in Washington, Indiana" which said, in part: 

Tactics for Thinking, a framework for teaching thinking developed at the Midcontinent Re- 
gional Educational Laboratory (McREL) and published by ASCD in 1986, has recently been 
the target of critics who argue that it "brainwashes" children and advances a "New Age" 
agenda of one-world government. The problems first occurred in Battle Ground, Washington, 
and have surfaced in at least one other Washington community and in two Indiana towns. 

Tactics, according to ASCD Executive Editor Ron Brandt, "gives teachers a practical 
way to teach their students to think well. " The program teaches 22 skills divided into three 
categories: Learning-to-Learn Skills, Content Skills, and Reasoning Skills.... For example, a 
unit of the program on "attention control" describes how adult learners are able to disregard 
distractions and concentrate on a particular subject, which helps their performance. The 
Tactics Trainer's Manual suggests an exercise in which participants can be voluntarily con- 
trolled. Although the strategy may seem ordinary, critics of Tactics in East Gibson, Indiana, 
said it "is the same technique used by hypnotists, used in mind control, and in New Age 
meditation." 

...Marzano denied that Tactics is controversial or contains sensitive material, asking, 
"How can teaching kids to control their attention in class so they can learn more be con- 
troversial? " 

Paul Drotz, an assistant superintendent in the South Kitsap, Washington school district 
where Tactics was challenged, said that "the vocabulary used in the program left us pretty 
open to attacks. I could change 12 words and local critics would have a difficult time attacking 
it. " Judy Olson, a consultant hired by the Washington ASCD to train teachers in Tactics, said 
she advised trainees to call one unit "pay attention" rather than "attention control." Because 
of the controversy, however, the Washington ASCD will no longer provide Tactics training, 
although it will still build awareness of it, members of the group's governing board said. 

...Marzano said that development and field testing of Tactics was "typical," and that the 
screening process, which included review by eight nationally recognized experts in critical 
thinking, was more thorough than normal.... ASCD has sold more than 17,000 teacher's 
manuals, 3,600 trainer's guides and 550 videotapes since it began publishing the program. 
Marzano estimates that 20,000 teachers have been trained in the program. 



The "Effective" Eighties : c. 1988 



249 



Brandt suggested that school districts involve board members, teachers, and the com- 
munity early on in deciding whether and how Tactics might be used in the system. ASCD 
will continue to closely monitor any instance in which the program is challenged. Anyone 
knowing of such incidents should write Brandt at ASCD headquarters, 1703 Beauregard St., 
Alexandria, VA 22311-1714. 

[Ed. Note: The Tactics program, or a similar critical thinking program using another title, could 
well be part of the curriculum in each of the 16,000 school districts in the nation, since it takes 
only one of those 20,000 teachers in each district to train other teachers. It was, however, not 
adopted in East Gibson County, Indiana.] 

The August 11, 1988 edition of Education Daily covered the National Citizens Alliance 
Press Conference held at the National Press Club in Washington, D.C. Excerpts follow: 

GROUP ASKS EDUCATION DEPARTMENT TO STOP FUNDING "MIND-CONTROL" CUR- 
RICULA, END SOVIET EXCHANGES 

A citizens group headed by a former Education Department official asked ED to stop pro- 
moting curriculum the group says controls students' minds. 

The National Citizens Alliance (NCA), a group of parents and teachers, alleged at a 
Washington, D.C. news conference yesterday that ED is promoting "mind-control" curricula 
that use hypnosis-like techniques to foster concentration. 

NCA wants to "get the federal government to stop pouring millions of dollars" into the 
"development of mind-control programs currently sweeping through American schools," said 
Charlotte Iserbyt, who served as senior policy advisor in ED's Office of Educational Research 
and Improvement from 1981 to 1982 and is NCA's East Coast coordinator. Iserbyt called on 
Education Secretary William Bennett and other federal officials to: 

End federal funding and promotion of programs such as Tactics for Thinking, which is 
used in Indiana schools. 20 NCA says the curriculum "employs hypnotic-like processes and 
altered states of consciousness techniques on children"; 

Cancel the education portion of the 1985 exchange agreement between the United States 
and the Soviet Union, which NCA says allows dissemination of "communist propaganda" 
through global teaching methods and the joint development of textbooks and computer 
software; and 

Force Pennsylvania to ask parental consent before using its Educational Quality As- 
sessment test, which NCA says uses "psychological and psychiatric testing" in violation of 
the federal Protection of Pupil Rights Amendment [Anita Hoge case against the Pennsylvania 
Department of Education] . 

NCA also criticized ED's National Assessment of Educational Progress for tracking 
student attitudes and behavior, saying that obtaining such information violates privacy rights 
and could lead to behavior modification nationwide. 

Secretary Bennett's spokesman Loye Miller said he is not aware of the complaints to 
which NCA refers. An OERI spokesman declined to comment. — Christopher Grasso 



A MAJOR REPORT ENTITLED THE FORGOTTEN HALF: PATHWAYS TO SUCCESS FOR AMERICA'S Youth 

and Young Families was published by the W.T Grant Foundation's Commission on Work, 
Family and Citizenship. 21 The November 23, 1988 issue of Education Week carried an item on 



250 



the report which stated that service projects and community service were recommended as a 
requirement for graduation. An excerpt from the article follows: 

The report recommends that schools and communities "establish attractive service oppor- 
tunities" for young people and either include service projects as part of the curriculum or 
require a specified amount of community service as a requirement toward graduation. The 
report also encourages "partnerships between business and state and local governments that 
provide opportunities for job training." 



A RECAP OF A 1988 INVITATIONAL CONFERENCE IN THE U.S.S.R. ENTITLED "CHILDREN, Computers 

and Education," written by David Porteous, contract coordinator for the School of Social Work, 
University of Connecticut, West Hartford, Connecticut, was published in the 1988/1989 issue 
of T.H.E. Journal (technology journal). 22 Excerpts follow: 

Recently, educators from the United States, Canada, West Germany and the Netherlands 
met with counterparts from the Soviet Union and Bulgaria in an historic first — an invitational 
conference in the U.S.S.R. titled "Children, Computers, and Education." 

The word "informatics" is used in Russian to denote the principles underlying the 
operations of computer hardware and software. Informatics seems to encompass the elec- 
tronic and algorithmic systems of computers. Dr. Alexey Semenov of the Soviet Academy of 
Sciences said algorithmic thinking is embedded in the Soviet's educational system and fun- 
damental to their understanding of cognition. This fits with the Soviet schools' high regard 
for mathematics and physics.... 

Semenov's presentation on the history and present status of algorithmics in Soviet 
schools started with the fact that their schools have used programmed instruction since 
the 1960s.... As might be expected, LOGO is held in high esteem in the Soviet Union and 
Seymour Papert works with some Soviet schools.... 

There was hope among the leaders with whom we talked that computers will become 
seen and used in more diverse ways throughout the curriculum. Certainly the goals of 
Gorbachev's Perestroika include the restructuring of schools, along with other institutions 
and the economy, and a subsequent technological boost to the country. With the broad cur- 
riculum reforms and structural changes occurring in schools today and in the near future, 
the computer could expedite this process.... 

MODEL SCHOOL 

Most schools have one or more sponsors, such as factories, institutes, universities, which 
provide materials, professional assistance and a place for students in the upper forms to 
do practical work for three to four hours a week, including computer programming. School 
#344 has close ties with a university and a technical institute, for instance [same as USA 
School-to- Work proposals, ed.].... 

...The informatics curriculum, with objectives broader than computer use, is taught 
even when students do not have access to a computer.... 

We were told that this conference, from Leningrad to Moscow to Zvenigorod, had begun 
to open many minds as to what is possible with computers and children beyond the formal 
informatics curriculum. Professional respect and relationships have developed among partici- 
pants. We could not have heard better news for our efforts to achieve a major step towards 
a productive global discussion of how all children can benefit from an informed use of CAI 
[computer-assisted instruction/programmed learning] in the world's classrooms. 



The "Effective" Eighties : c. 1989 



251 



1989 

In an article in the January 25, 1989 issue of Education Week Chester E. Finn, Jr, former 
head of the U.S. Department of Education's research branch, told business leaders in Wash- 
ington that he favored the development of a "national curriculum." 

Rushworth Kidder, president of the Institute for Global Ethics with offices in Camden, 
Maine, and London, England, wrote Reinventing the Future: Global Goals for the 21st Century, 
published by The Christian Science Publishing Society (MIT Press, Cambridge, Mass, 1989) 
which covered the dialogue between 35 notables from 12 nations gathered at "Wingspread" 
in Racine, Wisconsin in April of 1989. The Christian Science Monitor, the Johnson Foundation 
and the University of Maryland-Baltimore County sponsored the event. In his book Kidder 
stated that the conference included "everything that sounded like a reasonable goal for the 
year 2000," among which were the following: "Educate children in the context of one world; 
Develop educational curricula that reflect the realitites of global interdependence; Promote 
community service; Inculcate a healthy skepticism for authority; Reduce the share of GNP 
(Gross National Product) devoted to military spending; and Strengthen the role of the United 
Nations and other multilateral forums." 

In a July 5, 1994 letter from Mr. Kidder to Mr. David Zanotti, president of the Northeast 
Ohio Roundtable, Kidder described the work of his Institute for Global Ethics as follows: 

The Institute for Global Ethics is an independent, non-profit educational organization 
specifically dedicated to promoting the discussion of ethics in a global context. Taking a jour- 
nalistic rather than an academic approach, we see our task as responding to the ever-growing 
need for identifying and describing standards of ethical values throughout the world. We 
don't dictate what those values should be. Instead, we try to help discover what they actu- 
ally are — and to promote their discussion and application in ways that are non-threatening, 
inclusive, and conflict-resolving. 

The Institute has a national board of directors, an international advisory council, a 
network of nationwide and global connections, and a membership base of some 2,500 indi- 
viduals in the United States and around the world. Some of our activities [from which the 
writer has selected only a few] include: 

• Global Values Survey. We are currently carrying out a multi-country survey of values 
and ethics to help us understand the core values that unite various cultures as well 
as the different ways each culture defines an ethical decision. The pilot survey, car- 
ried out among samples of business leaders in Japan, India, and the United States, 
was completed in June. We're now laying plans to launch a full-scale survey of 
individuals in business, politics, medicine, journalism, and other sectors of society 
in 12 nations. [The Institute was awarded a $450,000 grant from the WK. Kellogg 
Foundation of Battle Creek, Michigan to accomplish this survey, ed.] 

• Education. The Institute works actively with several school districts and educational 
organizations in the United States on character education, seeking ways to help 
schools and communities find the core, shared values among their constituencies 
that can form a basis for discussions of ethical issues in the schools. We've produced 
an award-winning half-hour video, Personal Ethics and the Future of the World, de- 
signed for use in schools and with audiences of all ages. And we've also published 



252 



a booklet, Character Education: Lessons from the Past, Models for the Future, by 
Professor James Leming of Southern Illinois University. 

• Seminars. We are currently working with several clients (including the J.M. Smucker 
Company, Lancaster Laboratories, Inc., and the Council on Foundations in Wash- 
ington, D.C.) to provide ethics training programs. We have trained more than 1,000 
executives and managers in day-long, intensive seminars, and developed a train- 
the-trainers program as well. Our goal is to encourage what we call "ethical fit- 
ness" — which, like physical fitness, needs to be practiced, developed and applied. 

• Radio. Our newest venture is a one-hour Public Radio program titled "Let's Be Hon- 
est — Ethical Issues of the '90s." Featuring a three-person panel and a moderator, the 
program focuses on the moral and ethical aspects of a specific topic drawn from the 
week's news and encourages on-air telephone calls from listeners. Pilot versions of 
the program, aired on Maine Public Radio, have been very well received, and plans 
are afoot to develop a version of the program for a national audience. 

[Ed. Note: Kidder's Global Ethics program is another example of the problem with character 
education as a whole: basing character, values and ethics on consensus decisions by a group 
instead of absolute, enduring principles.] 

Kent Tempus wrote "Education in the Future: 21st Century Schools Will Offer Learning 
for All Citizens" for The Muscatine [Iowa] Journal's April 22, 1989 issue. Excerpts follow: 

Schools in 21st Century Iowa will be hubs of their communities], providing broad learning 
opportunities for all citizens, according to the director of the Iowa Department of Education. 
William Lepley says future schools will be centers for family and social services as well. 
"Society in the year 2010 has realized that the school is the single societal institution that can 
truly be an advocate, a resource, and a catalyst for children and families, as well as learners 
of all ages, " Lepley said. . . . Students' evaluation will improve. Instead of grades, students will 
be assessed not on the work they complete, but on the skills they master, he explained. 

Community service will be a graduation requirement. Also, educational opportunities 
are available for all citizens from preschool to adults. The school year won't be restricted 
to 180 days of 5-1/2 hours each, because flexible schedules and teacher contracts will per- 
mit year-round learning, he said. "Teachers in ideal schools are managers of the learning 
environment," Lepley said. "The teacher has been given the tools to be able to diagnose 
learning needs and to prescribe appropriate activities." Schools themselves will change too, 
Lepley noted. The ideal school houses social agencies such as health, job, and human service 
agencies, child care and serves as the community's senior citizen volunteer center, he said. 
And adults come to ideal schools — open round the clock — for educational opportunities 
ranging from childbirth and parenting classes to pre-retirement planning, he added. In the 
ideal community, Lepley said, the superintendent coordinates children and family services, 
in addition to education. 

[Ed. Note: Lepley used the term "hub" in this article and in a pamphlet distributed widely 
across Iowa to describe the school of the future which will encompass numerous social ser- 
vice agencies, health care, job training, child care, etc. This concept mirrored the Community 
Education plans promoted by the Mott Foundation of Michigan and incorporated into federal 
grantmaking under the Elementary and Secondary Education Act of 1965. 



The "Effective" Eighties : c. 1989 



253 



A multitude of state reform plans in the early 1990s include diagrams of this same plan, 
exhibiting the school as the center (or "hub") of the community; significantly, some diagrams 
show churches, recreation and other private aspects of life encompassed within the "hub" 
concept. With the advent of school-to-work programs, the concept has been expanded to 
include "one-stop training centers" for workforce development and placement. Children who 
don't pass the proficiency assessments will be sent through these "centers" for services and 
remediation which will rely on operant conditioning methods to ensure "success". 

Substitute "government" for schools like this "hub" plan and what political/economic sys- 
tem do we have? Who exactly asked for — voted for? — this alien "education" system which places 
our citizens and communities under the control of the unelected school superintendent?] 

Barry Bear, a mildly retarded 11-year-old Indian boy living on a reservation and being 
taught at home by his mother, was declared a "child in need of assistance" (CINA) by a land- 
mark Iowa Supreme Court decision on May 17, 1989. Barry Bear was removed from his home 
when the court cited "his parents' failure to exercise a reasonable degree of care in supervising 
him" because he was not in school. His parents had been previously jailed for violating the 
state's compulsory attendance (truancy) law. This precipitated the filing of a CINA petition, 
leading ultimately to the legal challenge which resulted in the Iowa Supreme Court decision. 
According to "The Tama Story: Educational Tyranny in Iowa," an article by Samuel Blumen- 
feld, 23 the following occurred: 

[The State of Iowa] wanted to establish a legal precedent whereby home-schooled children 
could be removed from parents found guilty of violating the compulsory attendance law. 

The juvenile law states that a child in need of assistance is a child (1) whose parents 
physically abused or neglected the child, (2) a child who "has suffered or is imminently likely 
to suffer harmful effects as a result of the failure of the parent... to exercise a reasonable 
degree of care in supervising the child," or (3) a child who is in need of treatment for seri- 
ous mental illness or disorder. 

Definition two is the one the State decided could be effectively used to prosecute Barry 
Bear's parents. It is also vague enough, wide enough to include fundamentalist Christian 
home schoolers. After all, the State can always get humanistic psychiatrists, psychologists, 
guidance counselors, and other "experts" to testify that keeping a child out of public school 
can cause "harmful effects" by depriving the child of needed socialization.... 

...Barry was taken from his family and placed in foster care. 

[Ed. Note: This ominous decision was supposed to have created court case precedent in Iowa 
and around the country. A handful of heroic homeschoolers stopped these efforts; at the same 
time foiling a truancy bill in the Iowa legislature that would have allowed — even mandated — a 
homeschooled child to be removed from his parents and placed into foster care. The Barry 
Bear case provides a snapshot of the future, of the "penalties" that will be imposed on parents 
who fail to comply with various aspects of compulsory attendance and testing laws. The full 
weight of this "hammer" will be felt when school-to-work certification requirements and newly 
proposed "performance-based" national standards and assessments for "accountability" and 
"quality" are imposed on all children, including the homeschooled. It should be noted that 
no national organization assisted in the grassroots homeschoolers' resistance, on behalf of the 
Bear family, to these aggressive state actions.] 



254 



The National Governors' Association (NGA) Education Summit was convened in 1989 by 
President George Bush at the University of Virginia in Charlottesville, Virginia. The NGA un- 
veiled America 2000 — now known as Goals 2000 — and its six national education goals (which 
have now been increased to eight) . These goals have served to carve into stone controversial 
"education" practices thoroughly exposed in this book, and to lay the foundation for activating 
school-to-work initiatives. The goals are as follows: 

GOAL 1. By the year 2000, all children will start school ready to learn. 
GOAL 2. By the year 2000, the high school graduation rate will increase to at least 90 
percent. 

GOAL 3. By the year 2000, all students will leave grades 4, 8, and 12 having demon- 
strated competency over challenging subject matter including English, mathematics, 
science, foreign languages, civics and government, economics, arts, history, and ge- 
ography, and every school in America will ensure that all students learn to use their 
minds well, so they may be prepared for responsible citizenship, further learning, 
and productive employment in our Nation's modern economy. 

GOAL 4. By the year 2000, the Nation's teaching force will have access to programs 
for the continued improvement of their professional skills and the opportunity to 
acquire the knowledge and skills needed to instruct and prepare all American stu- 
dents for the next century. 

GOAL 5. By the year 2000, United States students will be first in the world in mathe- 
matics and science achievement. 

GOAL 6. By the year 2000, every adult American will be literate and will possess the 
knowledge and skills necessary to compete in a global economy and exercise the 
rights and responsibilities of citizenship. 

— Later Additions — 

GOAL 7. By the year 2000, every school in the United States will be free of drugs, 

violence and the unauthorized presence of firearms and alcohol and will offer a 

disciplined environment conducive to learning. 
GOAL 8. By the year 2000, every school will promote partnerships that will increase 

parental involvement and participation in promoting the social, emotional, and 

academic growth of children. 

[Ed. Note: In 1999, ten years later, the National Education Goals Panel recommended chang- 
ing the name Goals 2000 to America's Goals since the goals would not be reached by the year 
2000— thanks to intense opposition to Goals 2000 from teachers and parents, who considered 
it a corporate/federal takeover of the nation's schools.] 

The July 5, 1989 issue of The New York Times carried an article by Edward B. Fiske 
entitled "Lessons — in the quiet world of schools, a time bomb is set for 1993 on certifying 
teachers." An excerpt follows: 

The new national system will not replace those now in use. Rather, it will offer a new vol- 
untary credential to experienced teachers willing to undergo classroom observations and 
a battery of sophisticated new tests of their pedagogical expertise. The system is modeled 
on professional specialty boards in, say, medicine, through which doctors who are already 



The "Effective" Eighties : c. 1989 



255 



licensed to practice obtain an additional prestigious credential. . . . For each of these credentials 
the task is to figure out "what teachers should know and be able to do." Then designers 
must devise ways of measuring teachers using new techniques like video simulations of 
classroom situations. All in all, it's a five-year, $50 million project for which the National 
Board [National/Carnegie Board for Professional Teaching Standards] is seeking Federal, 
corporation and foundation support.... The National Board has thus signaled that four years 
from now it intends to start issuing credentials based on the image of a teacher who would 
have a hard time functioning in most public schools today. The choice would seem to be 
either to back away from this image or put pressure on schools to change. . . . David Kearns, 
Chairman of the Xerox Corporation and a member of the board, believes schools should 
change. "Schools must find ways of driving decision-making down to the people who actu- 
ally do the teaching," he said. 



The Bangor [Maine] Daily News of July 18, 1989 carried an Associated Press item en- 
titled "Long- Awaited National Teaching Certificate Detailed" which described in a nutshell 
the so-called "voluntary" national teacher certification system first called for in 1986 by the 
Carnegie Forum on Education and Economy report, A Nation Prepared: Teachers for the 21st 
Century. Excerpts from the article follow: 

Teachers will be rigorously tested on their specialty, teaching techniques and knowledge of 
child development under a voluntary national certification system outlined Monday by an 
independent panel. 

With its new national credential, to be offered in 29 fields starting in 1993, the Na- 
tional Board for Professional Teaching Standards says it hopes to dispel the myth that "any 
modestly educated person with some instinct for nurturing has the requisite qualifications 
to teach." 

The private group said it hopes that the system will also lead to improved teacher 
training and, ultimately, to better-educated children. 

"The process will push the renewal of American education a big step closer to real- 
ity," former North Carolina Governor James Hunt, chairman of the 63 -member board, said 
Monday in releasing the guidelines. 

The nation's 2.3 million teachers will need a bachelor of arts degree and at least three 
years of experience to apply for certification, according to the blueprint. 

Board president, James A. Kelly, said professions such as medicine and law took 
decades to set standards for practitioners. He said the teacher standards board, formed in 
1987, will compress the process into five years "because we want to influence the quality 
of the enormous influx of new teachers needed during the 1990s.... The new credential is 
expected to help draw more and better people into teaching and help teachers move into 
new roles as mentors, curriculum specialists and other positions requiring expertise or extra 
responsibility." 

The national board was proposed three years ago. Many were skeptical that its mix 
of teachers, government officials, business leaders and higher education representatives 
could succeed at what they said was a highly controversial task with uncertain potential to 
improve education. 

Albert Shanker, president of the American Federation of Teachers and a longtime backer 
of national teacher certification, said the criteria laid out Monday prove the skeptics wrong. 
"They said it couldn't be done, but we did it," Shanker said. "We can be proud that we have 
come so far. " 



256 



[Ed. Note: If the statement "the National Board for Professional Teaching Standards (NBPTS) 
says it hopes to dispel the myth that 'any modestly educated person with some instinct for 
nurturing has the requisite qualifications to teach'" is true, then a high percentage of very 
successful homeschooling mothers will be expected to close shop — even though their children 
are outperforming public education students, receiving scholarships, and being accepted in the 
nation's top universities and colleges! As for the NBPTS wanting to "influence the quality of 
the enormous influx of new teachers needed during the 1990s" the reader should refer to the 
1993 entry which provides the U.S. Department of Education's new definition of "quality."] 

An article entitled "The Decade of the Nineties" by Donald Thomas, executive director, 
Network for Effective Schools, was published in The Effective School Report for August 1989. 
Under the subtitle "Educational Implications" Thomas says: 

Operate schools on a year-round basis; train citizens and students in skills and processes of 
effective participation in government; develop public policy toward private education.... 

Desirable future conditions: The economy will be more of an equilibrium economy with 
less dependence upon money, and more dependence upon the production and exchange of 
goods and services. There will be an increased movement toward cooperation and responsi- 
bility for the well-being of others. The civil rights of all individuals will be respected and 
taught in homes and schools; a value system will emerge that will give basic human val- 
ues — i.e., liberal arts, caring for others, etc. — their proper place. There will be fewer single 
family dwellings. Industry will take more responsibility for education, particularly for job 
training.... 

. . . [D] evelop curricula to involve students in anticipating and planning how to welcome 
newcomers; use community education to help citizens anticipate and prepare for newcomers; 
design and implement statewide parent education and education for responsible parenthood; 
institute widespread, effective public education programs on family life; ensure that human 
caring will become the focus of curriculum at all levels; develop courses in futuring with 
future centers in high schools; involve schools with water commissions, air quality commis- 
sions, city councils, county commissions, legislatures and governmental agencies, focusing 
on economics, ecology, environment and culture as an integral part of the learning; teach 
and practice a win-win philosophy in schools [Deming's TQM] in the place of the present 
win-lose philosophy.... 

CITIZENSHIP 

Necessary Quality: Protecting each other from distractive forces.... These are qualities that 
can best be learned through practice and experience. Our schools must, therefore, give young 
people the opportunities for service to others, practice in public service, and adherence to 
personal responsibilities. The basic values of a good and free nation can be learned by young 
people when appropriate conditions exist as schools form partnerships with community 
agencies for public service projects to be a part of schooling; rewards are provided for en- 
couraging young people to perform community service; community service is recognized as 
a necessary learning option.... 

The year 2000 is very near. The sooner we begin the task of improving student achieve- 
ment and citizenship, the sooner we will achieve the national objective for adequately 
preparing our young people to live in the 21st century; to be broadly literate in a world 
community; to be highly skilled in an ever-changing work environment; to be human in a 
society of individuals striving for personal satisfaction and security. To achieve this goal we 
will need to think differently about schools, about children and about education. We, as a 



The "Effective" Eighties : c. 1989 



257 



nation, must see education as a lifelong process, as occurring in the total community, and 
as being the responsibility of everyone.... Our national survival depends on it; the world 
expects it, and the children of the world require it. 

[Ed. Note: Leaving aside the focus on political correctness, one should be concerned over the 
total lack of emphasis on — or even mention of — academics. It would be a grave mistake to dis- 
miss this article as the totalitarian ravings of a lesser-known change agent spoken to his closest 
change-agent associates. Dr. Thomas, a close friend of the late former Secretary of Education 
T.H. Bell and present Secretary Richard Riley, is one of the most important change agents in the 
world. He has been responsible for controversial restructuring in several states and has been 
involved in exchanges with the former Soviet Union and Eastern European nations which are 
implementing Effective School Research. Again, it was he who recommended a $50.00 fine for 
parents who refused to volunteer in schools — both in South Carolina and in Utah.] 

"Appropriate Education in the Primary Grades: A Position Statement of the NAtional 
Association for the Education of Young Children" (NAEYC) was published and distributed in 
1989. 24 Excerpts follow: 

INTEGRATED COMPONENTS OF APPROPRIATE AND INAPPROPRIATE PRACTICE IN 

THE PRIMARY GRADES 

Appropriate Practice . The curriculum is integrated so that children's learning in all traditional 
subject areas occurs primarily through projects and learning centers that teachers plan and 
that reflect children's interests and suggestions. Teachers guide children's involvement in 
projects and enrich the learning experience by extending children's ideas, responding to their 
questions, engaging them in conversation and challenging their thinking. 
Inappropriate Practice . Curriculum is divided into separate subjects and time is carefully 
allotted for each with primary emphasis given each day to reading and secondarily to math. 
Other subjects such as social studies, science, and health are covered if time permits. Art, 
music, and physical education are taught only once a week and only by teachers who are 
specialists in those areas. 

Appropriate Practice . The goal of the math program is to enable chidren to use math through 
exploration, discovery, and solving meaningful problems. Math activities are integrated with 
other relevant projects, such as science and social studies.... 

Inappropriate Practice . Math is taught as a separate subject at a scheduled time each day. A 
math textbook with accompanying workbooks, practice sheets, and board work is the focus 
of the math program. Teachers move sequentially through lessons as outlined in the teacher's 
edition of the text.... Timed tests on number facts are given and graded daily. Competition 
between children or groups of children.... is used to motivate children to learn math facts. 



Renewal of U. S.-Soviet Education/Cultural Agreements in 1989 called for PLAcing 
statues of Soviet cultural figures on United States territory. 

In 1989 the Association for Supervision and Curriculum Development's (ASCD) Elementary 



258 



Global Education Framework entitled "Elementary Education for the 21st Century: A Planning 
Framework Based on Outcomes" announced on its title page the following: 

The realities of the globally interconnected and culturally diverse world of the 21st century 
require an education for all students that will enable them to see themselves as — 

HUMAN BEINGS 
whose home is 
PLANET EARTH 
who are citizens of a 
MULTICULTURAL DEMOCRATIC SOCIETY 
in an increasingly 
INTERCONNECTED WORLD 
and who 

LEARN, CARE, THINK, CHOOSE, and ACT 
to celebrate life on this Planet 
and 

to meet the global challenges confronting Humankind 

Key global challenges at the outset of the 21st century are in the areas of improving and 
maintaining the quality of the ENVIRONMENT, improving and maintaining HEALTH AND 
WELL-BEING, assuring HUMAN RIGHTS, and reducing VIOLENCE AND CONFLICT. 

This ASCD framework was used by the Eugene, Oregon School District 4J as a guide for de- 
velopment of their Education 2000 Elementary Integrated Curriculum K-5. 25 Excerpts from the 
"Guide" to be used by teachers involved in curriculum implementation follow: 

District 4J Mission 

Investing in Students 
Creating the Future 
Eugene's Elementary Program's Mission 
To Instill in Each child 

• a sense of self worth 

• a respect for the earth and all peoples 

• and a commitment to the pursuit of life-long learning.... 

One of the five priorities established in the District's future planning report in 1988-1989 
addressed the need to design an appropriate education for an information age.... Some of 
the skills and knowledge that students will need to acquire include: 

1. managing information and learning to learn (i.e., problem solving, critical thinking, 
applying knowledge, making decisions and judgments); 

2. understanding and participating in the arts; 

3. interpersonal and intrapersonal skills; 

4. global perspectives; and 

5. using appropriate technology... 

After careful consideration of the educational needs of students preparing for the 21st 
century, the writing committee defined its task as developing a more conceptual-based cur- 



The "Effective" Eighties : c. 1989 



259 



riculum with essential skills at its core. A conceptual-based curriculum is structured around 
broad-based themes that allow for the integration of skills and subject matter rather than 
emphasizing disjointed, small, unrelated chunks of information. 

Curriculum Strands 

How is the content of the curriculum organized? 

In place of the eight traditional disciplines around which the former curriculum was orga- 
nized, the Education 2000 Curriculum is organized around three curriculum strands.. . . 1) The 
Human Family, 2) Our Planetary Home and Its Place in the Universe, and 3) Understanding 
and Fulfillment of the Individual. 

Core Skills 

What skills are included in the curriculum? Core essential skills include physical, social, and 
thinking skills incorporating language arts and mathematics. 

Major Themes and Concepts 

What major themes and concepts are included? The Education 2000 Curriculum includes six 
major themes: Communities, Change, Power, Interactions, Form and Systems. 

Characteristics of the Curriculum 

What are some of the characteristics of the new curriculum? First, it expands the traditional 
understanding of "basic skills" to include dimensions of thinking as well as language arts, 
mathematics, physical and social skill development. 

It shifts what is required from many individual bits of content to major themes and 
related concepts.... With the former curriculum, elementary students were expected to mas- 
ter 2,175 separate bits of information that included skills, concepts and content organized 
within eight discrete disciplines. The new K-5 Education 2000 Curriculum requires mastery 
of only six major themes, 60 concepts and 132 core skills organized within three curriculum 
strands. This revision greatly reduces the fragmented nature of the former curriculum and 
significantly decreases the number of specific requirements to approximately one-tenth of 
the original number. 

[Ed. Note: ASCD's involvement in this local school district's curriculum was a logical follow 
up to its involvement from the beginning in Robert Muller's World Core Curriculum, upon 
which District 4J's curriculum was based. According to an article entitled "Educator Proposes a 
Global Core Curriculum" by Susan Hooper which appeared in the November 27, 1985 issue of 
Education Week, Gordon Cawelti, executive director of ASCD, in an address to educators from 
twelve Western nations and Japan, urged them to press for the development of a world core 
curriculum based on knowledge that will ensure "peaceful and cooperative existence among 
the human species on this planet." Education Week explained, "Cawelti's world core curriculum 
would be based on... proposals put forth by Robert Muller, Assistant Secretary General of the 
United Nations, in his recent book New Genesis: Shaping a Global Spirituality." 

Of additional significance is the fact that Willard Daggett's International Center for 
Leadership in Education discussed the Eugene District 4J in an article entitled "Cyber High 
School" in its March 1998 issue of Model Schools News. Regarding the Center's selection of 
Cyber High School, Eugene 4J School District, Eugene, Oregon as one of its model schools, 
the article states: 

For the first time in human history, teacher, learner, and learning material do not have to 



260 



be in the same place at the same time. This concept has the potential of revolutionizing 
education, considering the fact that where students live has always been the single greatest 
factor influencing the quality of their education, albeit one often overlooked. The truth of 
the matter is that what street they lived on, what town they lived in, what state and country 
determined what classes they could take, the quality of teachers they could expect, and who 
their classmates would be. But all that is about to change.... Courses offered also include 
several inventive multidisciplinary subjects such as "Baseball: Its Impact on American So- 
ciety and World History through Film, " not to mention the fact that all of the courses offer 
a global classroom and a multi-cultural perspective.] 



the Autumn 1989 issue of The 2020 Newsletter published by IMTEC, a Norwegian edu- 
cation association, 26 revealed the fact that as they push forward with their own International 
Learning Cooperative, Europeans were embracing the American Tactics for Thinking program 
developed by the U.S. Department of Education's MidContinent Regional Laboratory (McREL) . 
Of interest is the fact that Shirley McCune (referenced several times in this book) was senior 
director of McREL at the time the activities described in The 2020 Newsletter were taking place. 
This newsletter illustrated clearly the extent of internationalization of not only curriculum, 
but instruction, assessment and administration. IMTEC reported: 

The IMTEC training program for school-based development consultants is going on at pres- 
ent in two countries: Germany... the Netherlands. We are also planning a renewed program 
in Norway. We are also in the planning stage of this program in the U.K. 

A section of IMTEC's newsletter entitled "Cooperation with McREL" made the following state- 
ments: 

The Second "School- Year 2020" International Conference held in Colorado, October 1988, 
was a joint undertaking by McREL (the MidContinent Regional Educational Laboratory) and 
IMTEC... 

Our cooperation with McREL will continue. A Development Group represented by people 
from McREL and IMTEC is presently working on new programs building on McREL's Achiev- 
ing Excellence Program (A + ) and IMTEC's IDP, the Institutional Development Program.... 

McREL's A + is a site- or school-based management system. It organizes and uses re- 
search-based knowledge to increase educational efficiency, effectiveness and excellence. . . . 
The A + management system also provides unique assessment tools for maintaining progress 
and redirecting energy. Pilot programs of A + will take place in the Netherlands, in the UK, 
and most likely Norway during 1989/90.... 

THINKING SKILLS 

IMTEC is presently developing a new "Thinking skills" program, building upon development 
work in several countries. Central to our interest has been the "Tactics" program developed 
by McREL. 

[Ed. Note: The above relates to Effective School Research, OBE, ML, PPBS, etc.; what is being 
sold to Americans as "local control" or "localism" is in fact "global." In addition, the "Tactics" 
program is the same Tactics for Thinking discussed in the 1988 "Jeannie's Group" entry in 
this book.] 



The "Effective" Eighties : c. 1989 



261 



Soviets in the Classroom: America's Latest Education Fad written by this writer in 

1989 (published four years after the fact by America's Future, Inc.), details the U.S. -Soviet and 
Carnegie- Soviet education agreements. (For full text of this pamphlet, see Appendix XXIII.) 
Two excerpts dealing with the specific agreements follow: 

The agreements call for "Cooperation in the field of science and technology and additional 
agreements in other specific fields, including the humanities and social sciences; the facili- 
tation of the exchange by appropriate organizations of educational and teaching materials, 
including textbooks, syllabi and curricula, materials on methodology, samples of teaching 
instruments and audiovisual aids. . . exchange of primary and secondary school textbooks and 
other teaching materials... the conducting of joint studies on textbooks between appropriate 
organizations in the United States and the Ministry of Education of the U.S.S.R."... 

2. The Carnegie Corporation's exchange agreement with the Soviet Academy of Sciences has 
resulted in "joint research on the application of computers in early elementary education, 
focusing especially on the teaching of higher level skills and complex subjects to younger 
children." ("Higher level skills" is often a euphemism for "critical thinking skills.") Carnegie's 
1988 one-year $250,000 grant is funding implementation of this program, coordinated on the 
American side by Michael Cole, director of the Laboratory of Comparative Human Cognition 
at the University of California, San Diego. 



An article in the September 9, 1989 issue of The Washington Times entitled "China Says 
Educators Sowed Seeds of Unrest" placed blame on teachers for the student democracy protests 
which resulted in the Tiananmen Square massacre. Excerpts follow: 

Beijing (Agence France-Presse)— In a front-page editorial, the intellectual Guangming Daily 
said teachers had used their classrooms to spread "bourgeois liberalization," the standard 
code word for undesirable Western influences.... 

..."We must clearly understand that the teaching rostrum is provided by the people and 
the Communist Party and that it is sacred," the newspaper said. "The people's teachers have 
the right to spread Marxist theory, communist morality and knowledge of the Four Modern- 
izations," it added. "Teachers have no right to spread bourgeois liberal tendencies." 

Yesterday's editorial came as efforts by the authorities to put fresh emphasis on political 
education have been moving into high gear and just days before the 40th anniversary of 
Communist China on October 1. 

On Tuesday, 40 teachers at Beijing University, which had been a hotbed of student 
unrest, were forced to take up shovels and clear scrub from a campus playing field as part 
of the push for political re-education through manual labor.... 

...The premier also defended a new government plan to send graduating students to 
farms and factories for a year, saying it was meant to "improve feelings toward laboring 
people." 

"We hold that young students should, first of all, work in 'grassroots' units to obtain 
practical experience, " Mr. Li said. 

Many students have privately said they dread and scorn the scheme. 



On September 10, 1989 The Washington Post ran an article entitled "China ORders Manual 



262 



Labor for Students: Beijing Moves Again to Control Citizenry" which mirrored and elaborated 
on the above-excerpted article of September 9. The Post reported: 

The mandatory labor requirement is the latest in a series of measures taken by the government 
to punish, restrict and reeducate Chinese students, particularly those in the capital, since 
the democracy movement was crushed by the army in early June. 

...The newly announced measure is reminiscent of the approach taken by the Chinese 
government in the 1950s, when students worked for several hours a week either in factories 
or in workshops established on school premises.... In another development, students at two 
leading Beijing universities this week revealed that students will be required to take a test 
of their political reliability before being allowed to formally enroll. 



Kentucky Supreme Court ruled in Rose v. Council for Better Education, Inc. in 1989. 
The importance of the ruling in this case cannot be over emphasized since it called for a re- 
distribution of wealth (equalization) plan for Kentucky. The same plan was recommended by 
David Hornbeck for all the states in November of 1987. It was not long before Hornbeck and 
his fellow change agents, including Luvern Cunningham of Ohio State University and "site- 
based management/lessen elected school board influence" reputation, descended on Daniel 
Boone's country. The following excerpt detailing the Kentucky story was taken from A Citizen's 
Handbook: The Kentucky Education Reform Act — Historical Background, Provisions, Time Line, 
Questions and Answers, Court Cases, Overview (Kentucky Legislative Research Commission: 
Frankfurt, Kentucky, September 1996): 

This decision applies to the entire sweep of the system — all its parts and parcels. This de- 
cision applies to all the statutes creating, implementing and financing the system and to all 
regulations, etc., pertaining thereto. This decision covers the creation of local school districts, 
school boards, and the Kentucky Department of Education to the Foundation Program and 
Power Equalization Program. It covers school construction and maintenance, teacher certi- 
fication — the whole gamut of the common school system in Kentucky.... Since we have, by 
this decision, declared the system of common schools in Kentucky to be unconstitutional, 
Section 183 places an absolute duty on the General Assembly to re-create, re-establish a new 
system of common schools in the Commonwealth. — Rose at 215, 216. 



In 1989 Shirley McCune, senior director of the U.S. Department of Education- funded 
MidContinent Regional Educational Laboratory (McREL), told the teachers in South Kitsap, 
Washington: "The school of the future must be far different than that of today to meet the 
changing needs of society." The following excerpts are taken from an article entitled "Schools 
of the Future" which was published in the Bremerton [Washington] Sun on October 14th: 

When you walk in the building, there's a row of offices. In one are drug counselors. One 
is for social security. Another, family and child psychologists. Yet another has a doctor and 
nurse who do well-child exams. 

In the cafeteria, senior citizens mingle with students having lunch. Oldsters and young- 
sters are sometimes paired for school projects, like oral history. 

There's a child-care center, and tied into it are classes for teenagers where they learn 



The "Effective" Eighties : c. 1989 



263 



the importance of child-nurturing skills. 

In the gym, homemakers are taking exercise classes. After work, more men and women 
will show up for their fitness workout. 

These are "community learning centers, not just schools." "Schools are no longer in 
the schooling business" but rather in "human resource development," she said. 

Dr. McCune was in South Kitsap to talk about something everyone's hearing a lot about 
these days — "restructuring" schools. Her speech kicked off a full day of teacher training. 
Across the state, most teachers were taking part in local or state-sponsored training. 

In South Kitsap, workshop choices reflected the wave of the future Dr. McCune described. 
They dealt with topics such as celebrating differences in learning styles, using whole language 
approach, using cooperative learning, and integrating technology with curriculum. 

Endnotes: 

1 Practitioner's Implementation Handbook [series]: The Outcome-Based Curriculum, Second Ed., by Charlotte Danielson (Out- 
comes Associates: Princeton, NJ, 1992). 

2 See Appendix XXVI entitled "Shamanistic Rituals in Effective Schools" by Brian Rowan who says, among other eye-opening 
comments, "Thus, any experienced shaman can find 'effective' schools." 

3 Models of Instructional Organization: A Casebook of Mastery Learning and Outcome-Based Education, Robert Burns, Ed. (Far 
West Regional Laboratory for Educational Research and Development: San Francisco, April 1987). 

4 Human Intelligence International Newsletter mailing address is: P.O. Box 1163, Birmingham, MI 48012. 

5 The Mott Foundation was one of the early initiators and heavy financial supporters of un-American community education 
and the unelected advisory council concept. Mott still retains its role as leader of this movement, which is now international 
and borrows much of its organizational structure from communist China. 

6 At the time he wrote the article, Glines was assistant to the director of the Office of Instructional Support and Bilingual Edu- 
cation of the State of California Department of Education, Sacramento, California. This article was adapted with permission 
from an article published in The California Journal on Teacher Education (Spring, 1980). 

7 Copies of the February issue of the Innisbrook Papers can be ordered from: Corporate Relations Department, Northern Telecom 
Limited, 33 City Centre Drive, Mississauga, Ontario L5A2A2. 

8 The reader should not dismiss this last comment by Oettinger as a flippant remark. For more information on "the new flower- 
ing of oral communication" read ComSpeak 2050, How Talking Computers Will Recreate an Oral Culture by Mid-21 st Century 
by William Crossman, 404-524-7438, e-mail: WillCross@aol.com 

9 Information taken from Charlotte T. Iserbyt's Back to Basics Reform Or. . . OBE Skinnerian International Curriculum (Charlotte 
Thomson Iserbyt: Bath, Maine, 1985). 

10 Center for Educational Research and Innovation: Rue Andre-Pascal, 75775, Paris, France. 

11 K.M. Heaton's article can be obtained by writing: Hart Publications, 1507 Lincoln Street, Bellingham, WA 98226. 

12 Private collection of the writer. 

13 Brainwashing (Capp Clark Publishing Co., Ltd.: Toronto, 1971) and Brainwashing in Red China: The Men Who Defied It 
(Vanguard Press, Inc.: New York, NY, 1973). 

14 Private collection of the writer. 

15 For more information on this project, write: Mastery in Learning Project, National Education Association, 1201 16th Street, 
NW, Washington, DC 20036. 

16 Roberto Assagioli, Psychosynthesis: A Manual of Principles and Techniques (Viking Press: New York, 1965). 

17 Like Paolo Friere, Kevin Ryan of Boston University was invited by and received a contract from the newly-established Portu- 
guese government, after its communist revolution in 1974, to train teachers so that Portugal could meet the European Com- 
munity admission requirements. Professor Ryan is prominent in the character and moral education movement in the U.S. in 
the 1990s. 

18 For more information on the Rotterdam meetings and/or the International Congress for Effective Schools, write: A.A. Peters 
or Professor Dale Mann, or Professor Terry Astuto at Teachers College, Columbia University, New York, NY 10027, or call 
212-678-3726. 

19 For more information regarding the next few entries dealing with the Tactics for Thinking curriculum or for information on 
Higher Order Thinking Skills (HOTS), contact Jeannie Georges who gave testimony at The National Citizens Alliance press 
conference and who has written extensively on the subject. Her address is: Route 1, Box 215, Lynnville, Indiana 47619, tel. 
812-922-3247. 

20 Ibid. 

21 Single copies of the report, The Forgotten Half: Pathways to Success for America's Youth and Young Families, may be obtained 
free from: William T. Grant Foundation Commission on Work, Family and Citizenship, 100 Connecticut Avenue, NW, Suite 
301, Washington, DC 20036-5541. 

22 This conference is another example of an activity associated with the U.S. -Soviet education agreements signed in 1985. This 
particular conference very likely took place as a consequence of the Carnegie Corporation's exchange agreement with the 



264 



Soviet Academy of Sciences, resulting in "joint research on the application of computers in early elementary education, focus- 
ing especially on the teaching of higher level skills and complex subjects to younger children." 

23 The Blumenfeld Education Letter, April 1990 (Vol. V., No. 4). 

24 A copy of this NAEYC publication (#578) is available by sending $.50 to: NAEYC, 1509 16th St., NW, Washington, DC 20036, 
or by calling 202-232-8777. 

25 Oregon School District 4J, 200 N. Monroe, Eugene, OR 97402. Margaret Nichols was superintendent of schools for District 
4J. 

26 IMTEC is located at: Dynekilgata 10, 0569, Oslo 5 Norway. 



8 



THE NOXIOUS NINETIES 



IV^ any quotes in this book point toward implementation of radical restructuring of 
the nation's schools in "The Noxious Nineties." The one entry this writer believes best illustrates this 
plan and how it would be implemented throughout the remainder of the 20th century and into the 
21st century is taken from Conclusions and Recommendations for the Social Studies (Charles Scribner's 
Sons: N.Y., 1934). This study was funded to the tune of $340,000 by the Carnegie Corporation of 
New York, quite a sum of money in 1934 dollars! Professor Harold Laski, the philosopher of British 
socialism, said of this report: "At bottom, and stripped of its carefully neutral phrases, the Report is an 
educational program for a Socialist America." An important and revealing excerpt from Conclusions 
and Recommendations follows: 

The Commission was also driven to this broader conception of its task by the obvious fact 
that American civilization, in common with Western civilization, is passing through one of 
the great critical ages of history, is modifying its traditional faith in economic individualism 
[free enterprise], and is embarking upon vast experiments in social planning and control 
which call for large-scale cooperation on the part of the people.... (pp. 1-2) 

...Cumulative evidence supports the conclusion that in the United States and in other 
countries the age of "laissez faire" in economy and government is closing and that a new 
age of collectivism is emerging, (p. 16) 

That a "new age of collectivism" has emerged and is being implemented right now under our 
very noses in "The Noxious Nineties," with little or no outrage from the public or our elected officials, 
can only be attributed to the "deliberate dumbing down" of Americans, who haven't been taught the 
difference between free enterprise and planned economies (socialism) ; between "group thinking" and 
individual freedom and responsibility. 



265 



266 



The late Norman Dodd in 1986 made an extremely pertinent and important observation regarding 
Americans' growing preference to "think and act collectively" and the resulting dangers. Mr. Dodd's 
comments were made upon his receipt of the National Citizens' Alliance Americanism Award presented 
by Senator Jesse Helms. This award recognized Dodd's courageous work as research director for the 
1953 Congressional investigation of the tax-exempt foundations. In Dodd's words: 

What is happening I can best explain by describing to you where you would end up 
if you could sponsor a resumption of the inquiry into the effect of foundation-type organiz- 
ations in this country. If that were to be done, you would come into possession of proof. . . 
exposing a fundamental truth which has never been put into words. 

I shall try to recite that truth to you and you can take it home and act on it as a premise. 
This truth is that whenever a people show by their actions that they prefer to think and act 
collectively, their dynasty becomes a reenactment of the story of the Fall, as told to us by 
God through Moses.... We are now in a position where we can see that it is that dynastic 
effect which you are experiencing today. 

We have a task and that task is to sponsor an inquiry which would pull out into the 
open the proofs which show that it is that dynasty that is being worked out by us as a people, 
unwittingly, in complete ignorance. . . . 

I wish I could help you... think about that truth because it has never been put into 
circulation. It now deserves to be, and it is persons like yourselves [dear readers] who can 
contribute to the circulation of that particular finding which the foundations, in their zeal, 
have actually made understandable. They [the foundations] have made a mistake. . . . The 
mistake they have made is now represented by their determination to cooperate with the 
Soviet Union educationally. 



1990 

Secretary's Commission on Achieving Necessary Skills (SCANS — U.S. Department of La- 
bor) was established in 1990 and concluded its work in May of 1992. SCANS was conceived 
by Roberts T. Jones, assistant secretary of the Employment and Training Administration (ETA), 
through his parentage of the seminal study Workforce 2000. He and then-Secretary of Labor 
Elizabeth Dole created the Commission and Arnold Packer served as executive director. SCANS 
was established by Secretary Dole to determine the skills that young people need to succeed in 
the world of work. 1 The Secretary's Commission on Achieving Necessary Skills published four 
reports "intended to define the know-how American students and workers need for workplace 
success... in communities across the United States." The reports are: 

1. Learning a Living: A Blueprint for High Performance— "why change is needed" 

2. What Work Requires of Schools — "defines the five competencies and three-part foun- 
dation that constitute the SCANS know-how" 

3. Skills and Tasks for Jobs — "a tracing of the relationship between the SCANS compe- 
tencies and skills and 50 common occupations" 

4. Teaching the SCANS Competencies — "unites six articles that give education and 
training practitioners practical suggestions for applying SCANS in classroom and 
workplace" 



The Noxious Nineties : c. 1 990 



267 



Learning a Living: A Blueprint for High Performance, the first report from SCANS, asserts 
that "The Commission's fundamental purpose is to encourage a high performance economy 
characterized by high-skill, high- wage employment." The following controversial component 
of SCANS, which angered parents and ignited fires of protest across the nation, is found on 
page 65 of Learning a Living: 

HYPOTHETICAL RESUME 



Jane Smith 
19 Main Street 
Anytown 

Home Phone: 817-777-3333 



Date of Report: 5/1/92 

Soc. Sec: 599-46-1234 
Date of Birth: 3/7/73 
Age; 19 



SCANS Personal Qualities Average Rating No. of Ratings 

Responsibility Excellent 10 

Self-Esteem Excellent 10 

Sociability Excellent 8 

Self-Management Excellent 7 

Integrity/Honesty Good 6 



Since when did the federal government assign itself the responsibility of grading citizens 
on "personal qualities"? Since our government began to consider citizens "human capital" or 
"resources"? Are citizens useful for anything besides potential workers? The above resume also 
included the number of points Jane earned toward her "Certificate of Initial Mastery" as well 
as a record of volunteer and work experience. The bureaucrat at the U.S. Labor Department 
who wrote this part of the report explained: 



Because this information would be extremely useful to employers in making hiring decisions 
and to colleges in evaluating applications, students would have a strong motivation to learn 
the SCANS foundation skills and workplace competencies, and employers and colleges would 
have a strong incentive to require them. 

Nine years later the hypothetical SCANS resume would become reality as exemplified by 
Ohio's Career Passport which is a collection of student records that showcase past performance. 
The Passport includes a resume, transcript, narrative identifying career goals and activities, as 
well as any diplomas, awards, certifications, licenses and community involvement. 

The aforementioned information regarding this Career Passport is taken from a May 25, 
1999 letter from the Akron Regional Development Board to area employers which states that 
Ohio's companies can sign on as employers who "ask for the Career Passport." This letter 
continues as follows: 

By joining the more than 3000 businesses nationally that are requesting records, you 
help drive home the message that accountability, initiative, and motivation are traits that 
companies seek in job candidates. 

The Akron Regional Development Board, and The Greater Cleveland Growth Association, 
Cleveland Tomorrow, the Ohio Department of Education Career Educators, and Regions 8 and 
9 School-to-Work have teamed up with the National Aliance of Business (NAB) to encour- 
age employers to use school records as part of their hiring process. The national campaign 



268 



called "Making Academics Count," will help students, parents and educators become more 
aware of the importance of requisite workplace skills. 

Help send the message to area students by completing the enclosed reply form and 
returning it via fax to 330-379-3164. We will count you as an organization that wants young 
people to realize the importance of education and work skills.... 

You can learn more about this initiative online at www.makeacademicscount.org or 
www.c-e-a.org/ohiocdm.htm. On behalf of the Akron Regional Development Board and em- 
ployers across our region, we encourage you to promote higher achievement by endorsing 
the "Ask for the Career Passport" program. 

At this point it is important to recall the fact that one of the members appointed to the 
SCANS which originated this type of career passport was Thomas Sticht, Ph.D., infamous for 
the following quote which parents should ponder, especially if they feel that techademics are 
the answer to their children's upward mobility. Sticht's statement paraphrased in the August 
1, 1987 issue of The Washington Post bears repeating here: 

Ending discrimination and changing values are probably more important than reading 
in moving low income families into the middle class.... What may be crucial [companies 
say] is the dependability of the labor force and how well it can be managed and trained — not 
its general education level, although a small cadre of highly educated, creative people is 
essential to innovation and growth. 



In 1990 Arkansas Governor William Jefferson Clinton pushed through a major statewide 
reform measure, Act 236, which was a forerunner of Goals 2000. According to National Issues 
in Education: Goals 2000 and School-to-Work by John F. Jennings, Ed. 2 (Phi Delta Kappan and 
The Institute for Educational Leadership: Washington, D.C., 1995): 

In the National Governors' Association he championed comprehensive statewide reform and 
was a key leader in the effort to develop the National Education Goals. In announcing his plat- 
form to "put people first" he made education a central part of the presidential campaign. 



The Washington Post published "Tying Professional Pay to Productivity" by ELizAbeth 

Spayd in its January 28, 1990 issue in which Ms. Spayd covered the use of behavior modification 
in the workplace in order to increase productivity. Some excerpts follow: 

"One CEO I know says to employees, 'If you tell me I can't measure what you're doing, 
I'm not sure I need you here,'" recalls Michael Emig, a compensation consultant with Wyatt 
Co. in Washington. "The fact is, any work that people are paid to do can be measured. The 
trick is to go in with an open mind."... To help ensure that productivity goals are met, the 
paychecks of top managers now reflect their ability to meet department goals, a compensation 
plan that eventually will spread throughout the hospital. According to Arthur Andersen & 
Co., which consulted Pekin Memorial on its plan, the keystone to implementing productivity 
bonuses is putting everything in measurable terms, considering such factors as accuracy, 
speed, cost, quality— even creativity... Once the job has been quantified, the next step is to 
examine the processes by which work is done, dividing them into those that add value and 



The Noxious Nineties : c. 1 990 



269 



those that don't. Those that don't should be eliminated. 

Studies show white-collar workers on average spend 75 percent of their time doing 
non-value-added tasks, Skwarek said. But defining the waste and eliminating it are two 
different things. And for productivity to increase, proper employment of the compensation 
lever is critical. 

A bank teller might be rewarded for the number of customers processed in a week, but 
penalized for every customer who complains about service. In jobs where it's difficult to 
measure the output of a single worker [emphasis in original] , compensation might be linked 
to a group's ability to meet certain goals, an increasingly common approach. 

Whatever the approach, Wyatt's Emig encourages companies to think big — meaning 
bonuses as high as 25 percent of salary. 

"The basic idea is borrowed from B.F. Skinner, who taught us that behavior which 
is positively reinforced will be repeated," says Emig. "But it doesn't work if people don't 
consider the money worth striving for. " 

[Ed. Note: Is it politically incorrect to ask how the United States became the most productive 
nation in the world without using the above-outlined ridiculous Total Quality Management 
system based on Skinner's operant conditioning?] 

The National Center on Education and the Economy (NCEE) issued in 1990 a PRoposal 
to the New American Schools Development Corporation (NASDC) entitled "The National Al- 
liance for Restructuring Education: Schools and Systems for the 21st Century." The report was 
stamped "CONFIDENTIAL." On the cover page NCEE's partners in this venture are listed as 
follows: States of Arkansas, Kentucky, New York, Vermont, and Washington; Cities of Pitts- 
burgh, PA; Rochester, NY; San Diego, CA; and White Plains, NY; Apple Computer, Inc.; Center 
for the Study of Social Policy; Commission on the Skills of the American Workforce; Harvard 
Project on Effective Services; Learning Research and Development Center at the University of 
Pittsburgh; National Alliance of Business; National Board for Professional Teaching Standards; 
New Standards Project; Public Agenda Foundation; and Xerox Corporation. 

[Ed. Note: In Appendix XII of this book NCEE's proposal is heavily excerpted. The last few 
pages of excerpted materials which relate to "staff development" could have been written by 
the late Madeline Hunter, master teacher trainer who has translated "theory into practice" in 
her "Instructional Theory Into Practice: ITIP." 3 These excerpted materials prove that NCEE's 
National Alliance for Restructuring Education, in conjunction with the University of Pittsburgh's 
Learning Research and Development Center and the National Board for Professional Teaching 
Standards, has selected "the method" — Skinnerian operant conditioning — to train teachers so 
that, as robots, they will all teach exactly the same way.] 

World Conference on Education for All, sponsored by the World Bank, United Nations 
Educational, Scientific, and Cultural Organization (UNESCO), and others, was held March 
5-9, 1990 in Jomtien, Thailand. "Outcomes" were approved at this conference, and the Edu- 
cation for All Forum Secretariat advertised the "World Declaration on Education for All" and 
"Framework for Action to Meet Basic Learning Needs" as the agenda for discussion at the 
World Conference. 4 Important and significant institutional membership in the Education for 
All Coalition included: American Association of School Administrators (AASA); Association 



270 



for Supervision and Curriculum Development; International Reading Association [which was 
the prime mover behind the dumb-down Whole Language reading instruction, ed.]; and the 
National Education Association. 

Other statements on the conference promotional flyer included: 

The 1990 World Conference on Education for All represented an important milestone in edu- 
cation development. Convened by the executive heads of the United Nations Development 
Program (UNDP), the United Nations Children's Fund (UNICEF), the United Nations Educa- 
tional, Scientific and Cultural Organization (UNESCO) and the World Bank, the conference 
called on all nations to take effective action to meet the basic learning needs of children, 
youth and adults in all countries of the world.... 

The World Conference defined basic learning needs as the essential learning tools — such 
as literacy, oral expression, numeracy, and problem-solving — and basic learning content — re- 
quired by all people to develop their full capacities, to live and work in dignity, to participate 
fully in development, to improve the quality of their lives, to make informed decisions, and 
to continue learning. 



The March 28, 1990 issue of Education Week re-published "A Road Map for REstructuring 
Schools," a one-page list of principles of restructuring and steps for policy makers to use. 
Developed by the Education Commission of the States (ECS) and the National Governors' As- 
sociation (NGA) and signed by Jane Armstrong, director of policy studies for ECS, this "Road 
Map" was a result of two regional workshops to discuss strategies for redesigning state edu- 
cation systems to meet national performance goals. Excerpts follow: 

PRINCIPLES OF RESTRUCTURING... Restructuring requires risk-taking and experi- 
mentation in order to transform schools into dynamic, self-renewing organiz- 
ations.... 

STEPS FOR POLICY MAKERS TO TAKE... Develop a specific and demanding statement 
of what basic skills, thinking skills, knowledge, attitudes and behaviors you want 
all students to have when they complete school.... 

• Student outcomes should meet employability criteria suggested by business and 
industry. 

• Build a coalition of business, community, education and political leaders... to bring 
external pressure on the education system for productive change. 

• Sell the agenda to policy makers and the public. 

• Identify and train spokespersons to advocate system restructuring. 

• Get business and political leaders to carry the restructuring banner. 

• Provide flexibility, encourage experimentation and decentralize decision making. 

• Use incentives to encourage risk taking and experimentation. 

• Decentralize authority by encouraging site-based management. 

• Redesign teacher and administrator education. 

• Redesign teacher education to model instruction for an active learning classroom. 

• Develop programs that focus on content knowledge and new forms of pedagogy. 



The Noxious Nineties : c. 1 990 



271 



• Link schools with universities and other sources of information to help teachers 
expand their knowledge of teaching and learning. 

• Strengthen the clinical experience by placing teacher candidates in schools that are 
restructuring. 

• Provide time for teacher renewal, collaboration and the acquisition of new skills, 
understandings and attitudes. 

• Provide incentives for teachers to receive national board certification. 

• Develop multiple ways to measure progress to avoid "high stakes" testing and teach- 
ing to a single test. 

• Develop "outcomes-based" accreditation procedures. 

• Provide rewards for high-achieving schools and sanctions for low-achieving 
schools. 

• Create programs that engage students in community service. 

• Collaborate with other social service agencies to fully serve the needs of all chil- 
dren. 

• Encourage parental involvement. 

• Create public school choice plans. 

• Provide incentives to reward accomplishments. 

• Align and revise state policies to support restructuring. 

• Develop business/education partnerships. Use technology to explore new ways to 
deliver instruction. . . not as an "add-on" to the traditional lecture, recite, test method 
of instruction. 

• Be prepared to handle policy decisions on jurisdiction over distance learning; i.e., 
teacher certification, textbook and curriculum approval. 

The ECS/NGA Restructuring Workshops were supported by grants from the American Express 
Foundation, ARCO Foundation, BellSouth Foundation, Carnegie Corporation of New York, 
Control Data Corporation and The John D. and Catherine T. Mac Arthur Foundation. 



In 1990 Marc Tucker's National Center on Education and the Economy (NCEE) of Roch- 
ester, New York published America's Choice: High Skills or Low Wages! which asserted: 

Once youth centers are established, we propose that the child labor laws be amended to 
make the granting of work permits to young people up to age 18 contingent on either their 
possession of a certificate of initial mastery [CIM] or their enrollment in a program leading to 
the certificate. At first glance, this may seem draconian. But in the long run this requirement 
will benefit our youth and ultimately the nation. 

[Ed. Note: The "Certificate of Initial Mastery" (CIM) is a device which is copyrighted to 
the private sector National Center on Education and the Economy to be used by the public 
schools.] 

The State of Maine took a leadership position in the implementation of a scHOOL-to-work 

system in 1990. The following excerpts from The School to Work Revolution by Lynn Olson 



272 



(Perseus Books: New York, 1997) relate to the first steps taken to implement this new corporate 
fascist system of governance. Olson recalled Maine's activity as follows: 

John Fitzsimmons, the President of the Maine Technical College System and former state 
labor commissioner in Maine during the 1980s, traveled to Germany and Denmark in the 
early 1990s, along with the then-Governor John R. McKernan, Jr. [husband of U.S. Senator 
from Maine Olympia Snowe], to get a first-hand view of European apprenticeships. The gov- 
ernor and Fitzsimmons were so impressed by what they saw that they plotted the outlines 
for a Maine initiative on paper napkins on the transatlantic flight home. In February 1993 
the Maine Youth Apprenticeship Program — now called Maine Career Advantage — accepted 
its first 12 students. By 1996 the initiative had spread to 276 students, 108 high schools, and 
197 businesses. An additional 850 students were involved in career-preparation activities 
such as job shadows, developing portfolios, and summer internships. 

"I really believe, in my state, the future lies in the quality of the skilled workforce," 
Fitzsimmons told me in 1994, a strong Rhode Island accent still lingering in his voice. "We 
will not compete with a North Carolina Research Triangle or with Massachusetts's Harvard 
and M.I.T and their ability to be international research areas. We will be the producers of 
goods. And I take great pride in that because if we're able to produce high-quality products, 
it will mean high-wage jobs for our people." 



Pol ytechnical Education: A Step by Robert H. Beck, University of Minnesota, was pub- 
lished in 1990. Beck was under contract to the National Center for Research in Vocational 
Education, University of California, Berkeley and was supported by the Office of Vocational 
and Adult Education through a U.S. Department of Education grant for $4 million [Carl D. 
Perkins Vocational Education Act, Grant #V051A80004-88A, September. 5 ] Had this report not 
cost $4 million in taxpayers' money, one could dismiss it as just another effort by the federal 
government to keep its education researchers occupied. Why would the government spend 
such an enormous amount of money on a government project describing the Soviet polytech 
system unless the government was considering putting the same polytech system in place in 
the United States? 

Recent workforce training legislation in Congress does indeed call for the implementation 
of the Soviet/German/Danish polytech system. 

William Spady presented "Ensuring the Success of All Students Today for Tomorrow's 
Changing World" for the U.S. Department of Defense, Mediterranean Region in 1990. Excerpts 
follow: 

When addressing the issue of Exit Outcome development in one of our Illinois high school 
districts during the Spring, I too was forced to take a look at the "realities" that seem to 
surround us and that have the potential for shaping the character of the future in which we 
and our children will live. At first blush, ten somewhat interrelated trends seemed clear to 
me, some of which parallel "Theobold's Eight Driving Forces," and some of which resemble 
trends identified by John Naisbitt and his Future Trends colleagues. Others are simply my 
own.. . . [D]espite the historical trend toward intellectual enlightenment and cultural pluralism, 
there has been a major rise in religious and political orthodoxy, intolerance, fundamentalism 
and conservatism with which young people will have to be prepared to deal. 



The Noxious Nineties : c. 1 990 



273 



David W. Hornbeck, member of the Board of Trustees of the Carnegie CoRPORAtion and 

a partner in the Washington, D.C. law firm of Hogan and Hartson, delivered a paper entitled 
"Technology and Students at Risk of School Failure" at the Council of Chief State School Of- 
ficers' (CCSSO) 1990 Technology Conference in Minneapolis, Minnesota April 29-May 2. The 
paper was commissioned by the CCSSO and was distributed by the federally funded North 
Central Regional Educational Laboratory (NCREL) in Elmhurst, Illinois. Excerpts from this 
paper follow: 

In March, the Kentucky legislature enacted the most aggressive and far-reaching education 
legislation in memory. They identified six goals for their schools (President Bush's Six Ambi- 
tious Goals adopted by the Governors February 25) . The goals include not only math, science, 
social studies and English but, more significantly, they emphasize such things as thinking, 
problem solving, main ideas and integration of knowledge. Kentucky, however, went further. 
They are building a new set of assessment strategies that are performance based; they have 
adopted a system of rewards and sanctions that will impact on the schools' staffs in propor- 
tion to the schools' success in increasing the proportion of successful students in a school 
or the failure to do so. The President, the Governors and now a state legislature have made 
decisions that reflect the future. 

The fact is that corporate America is becoming increasingly involved in the policy and 
politics of elementary and secondary education. The Committee for Economic Development 
was the first major corporate player. They were joined by the National Alliance of Business. 
Most recently, The Business Roundtable, which is composed of the nation's 201 largest cor- 
porations, has recognized their vital interest in American public education. Each corporation 
has "adopted" a state where each corporation will concentrate strong effort. Moreover, they 
have declared that the effort will be of at least ten years' duration.... 

. . .There are numerous ways technology, and I initially refer to the computer, can assist.... 
The computer motivates. It is non-judgmental. It will inform a student of success or failure 
without saying by word or deed that the student is good or bad. The computer individualizes 
learning, permitting mastery at one's own pace.... The computer gives prompt feedback.... 

Let's turn then to more specific contributions computers can make. First, it is clear that 
the basic skills of students can be enhanced. In a presentation to the U.S. Senate Committee 
on Labor and Human Resources in 1987, Robert Tagaart, relying on work done by himself, 
Gordon Berlin, and Andrew Green, identified ten elements that research prescribes to teach 
basic skills effectively. They include: 

• individualized, self-paced instruction 

• competency-based, open entry/open exit approaches 

• use of multiple media and methods, including computers 

• frequent feedback and positive reinforcement 

• accountability of teachers and learners 

• efficient management to maximize time on task 

• individual attention and one-on-one instruction 

• supportive services and learning environments 

• linkages to work, training, and other activities 

[Ed. Note: Kentucky's experience with its new set of performance-based assessment strategies 
was a disaster. An article in the June 26, 1997 Louisville Courier-Journal datelined Frankfurt, 
Kentucky stated: 



274 



Nearly all elementary and middle schools in Kentucky received incorrectly low test scores last 
fall, and fixing the error will mean that teachers will get an estimated $2 million in additional 
reward money.... While the error by Advanced Systems in Measurement and Evaluation, Inc., 
amounts to a small change in the schools' actual scores — an average of about 1 point on a 
140-point scale — there could be serious consequences for the state's test, which has already 
been at the center of controversy. Critics seized upon the mistake as evidence that significant 
changes are needed in the testing system created by Kentucky's 1990 school reform law. 

The March/ April, 1997 issue of Kentucky Citizens Digest carried an article entitled "Are 
Basic Skills a Casualty of KERA? — Are state tests causing teachers to underemphasize basic 
skills?" which revealed that: 

If two recent reports are any indication, basic skills among students may very well be a ca- 
sualty of education reform in Kentucky. A report from RAND, a prominent national research 
organization, found that tests now being used under KERA (called KIRIS tests) are causing 
public school teachers to de-emphasize basic skills instruction in Kentucky schools. "The 
subject areas for which the most teachers indicated a decrease since KIRIS began," said the 
report, "were art, social studies, science, and reading. Eighty-nine percent of the teachers 
indicated that these changes were due largely to KIRIS."] 



Lamar Alexander, former governor of Tennessee, secretary of education in PRESident 

George Bush's administration, and Republican presidential candidate in 1999, was quoted in 
Southern Living (Vol. 25, No. 6, June 1990) in an interview when he was serving as president 
of the University of Tennessee as saying: 

I suggest we create a brand-new American school, as different from today's schoolhouse 
as the telegraph was from The Pony Express. Such a school would probably start with babies 
and go through the eighth grade. It would be all year long. It would be open 6 a.m. to 6 p.m. 
Every child would have his or her own computer and workstation. Every child would have 
a team of teachers that would stay with that child until graduation.... 

We already spend more money than any country per pupil on education. I just don't 
think we spend it well. 



The Blumenfeld Education Letter for August 1990 included in its column "Vital Quote 

the following quote from Professor George Reisman's The Intellectual Activist: 

I believe that the decline in education is probably responsible for the widespread use 
of drugs. To live in the midst of a civilized society with a level of knowledge closer perhaps 
to that of primitive man than to what a civilized adult requires (which, regrettably, is the 
intellectual state of many of today's students and graduates) must be a terrifying experience, 
urgently calling for some kind of relief, and drugs may appear to many to be the solution.... 
This is no longer an educational system. Its character has been completely transformed 
and it now clearly reveals itself to be what for many decades it has been in the process of 
becoming: namely, an agency working for the barbarization of youth. 

George Reisman, Prof, of Economics, Pepperdine University, The Intellectual Activist, p. 8. 



The Noxious Nineties : c. 1 990 



275 



[Ed. Note: The decline in education is not only probably responsible for the widespread use 
of drugs, it is also probably responsible for the increase in all sorts of irresponsible and im- 
moral behavior among youth today, including violence and sexual promiscuity Dr. Reisman's 
statement is particularly poignant in light of increased incidents of school violence in the late 
1990s.] 



Dr. M. Donald Thomas, in an article in The Effective School Report's September, 1990 
issue entitled "Education 90: A Framework for the Future," said in part: 

From Washington to modern times, literacy has meant the ability to read and write, the 
ability to understand numbers, and the capacity to appreciate factual material. The world, 
however, has changed dramatically in the last 30 years. The introduction of technology in 
information processing, the compression of the world into a single economic system, and 
the revolution in political organizations are influences never imagined to be possible in our 
lifetime.... Literacy, therefore, will be different in the year 2000. It will mean that students 
will need the following [the writer has selected some key requirements from a much longer 
list, ed.]: 

• Appreciation of different cultures, differences in belief systems and differences in 
political structures. 

• An understanding of communications and the ability of people to live in one world 
as one community of nations.... 

• In a compressed world with one economic system... it is especially important that 
all our people be more highly educated and that the differences between low and 
high socio-economic students be significantly narrowed.... 

• Education begins at birth and ends at death.... 

• Education is a responsibility to be assumed by the whole community. . . . 

• Learning how to learn is more important than memorizing facts.... 

• Schools form partnerships with community agencies for public service projects to 
be a part of schooling.... 

• Rewards are provided for encouraging young people to perform community ser- 
vice. 



"World Class Schools and the Social Studies" by Cordell Svengalis from Social Studies 
Horizons (Iowa Department of Education: Des Moines, Iowa, Vol. 3, No. 1, Fall 1990) was 
published. The following excerpts reveal a significant definition of "World Class education," 
one of the popular "buzz words" used to describe and promote education reform during the 
early 1990s: 

As part of a nationwide trend, the Iowa Department of Education has become involved in 
the movement to develop a world-class educational system for the schools of our state.... 

Few would argue with the need to greatly improve the educational system we now 
have, and to help students acquire the skills they will need to become better integrated into 
the global community. We have not only become globally interdependent, we have come to 
recognize our global interconnectedness. Therefore, a World Class education program would 



276 



have as one of its major objectives the development of skills and understandings grounded 
in an ethical/moral context. This ethical/moral context would be based on the idea of as- 
suming a sense of responsibility toward our interrelated planetary future. . . . 

Perhaps the most compelling vision of our time is that of a sustainable society [em- 
phasis in original] . Our global society, in terms of the environmental degradation, explosive 
population growth in the Third World, energy shortages, pollution, conflict, crime, drugs, 
poverty, and just sheer complexity, is not sustainable into the 21st century... Students need 
to understand these things as part of their World Class education. 

This particular issue of Social Studies Horizons also reported on the 1990 Chicago Con- 
ference on Holistic Education, which issued a document called "The Chicago Statement" calling 
for a radical change in education. An excerpt asserts that: 

The time has come to transform education so as to address the human and environmental 
changes which confront us. We believe that education for this new era must be holistic. The 
holistic perspective is the recognition that all life on this planet is interconnected.... Holism 
emphasizes the challenge of creating a sustainable, just and peaceful society in harmony 
with the Earth and its life. 

Dr. Svengalis of the Iowa Department of Education was involved in the production of a 
Catalogue of Global Education Classroom Activities, Lesson Plans, and Resources. The curriculum 
came under fire from the Iowa Farm Bureau because of its open advocacy of vegetarianism 
and environmentalism, according to the Iowa Farm Bureau's Spokesman (September 19, 1992) 
article entitled "State Role in Global Education Resource Guide under Review." Also included 
in the global education curriculum were themes of pacifism, population controls, international 
global government, and Gaia worship. Fourth and sixth graders could be assigned to "[t]alk 
about the ideas of a 'living' Earth using Lovelock's Gaia hypothesis. " Dr. James Lovelock made 
the radical "scientific" proposal that the Earth was both an entity and a deity. 

According to education reform researchers Maria Quenzer and Sarah Leslie, environmental 
"outcomes" were supplanting traditional academics. In an article published in the May 1993 
issue of Free World Research Report entitled "The Myth of a Competitive World-Class Edu- 
cation," Quenzer and Leslie refuted the idea that "world-class" education is competitive and 
academically challenging. Under the new reforms they found an emphasis on cooperation and 
sustainability based upon extreme environmentalism and "a kind of 'New Age' soup of pan- 
theism, Hinduism, Taoism and Buddhism." They cited an article entitled "Global Framework 
for Local Education" from Holistic Education Review (Spring 1991): 

This author, Joel Beversluis, states "that educational objectives [should] transcend the 
accumulation of facts, the learning of skills, and even the preparation for work and life in the 
world as it is. Rather, at its best, education will assist, like a midwife, in the transformation 
of the mindsets — the consciousness — of students...." Beversluis asks, "Is it not time for the 
community of educators and educational publishers to recognize that the respectful study of 
diverse cosmologies, value systems, and religions has a legitimate and even necessary place 
in the curriculum?" He then proceeds to list these new "global" values.... 

Just what values are being talked about? This turns out to be the pivotal question. 
Beversluis spells it out for us. He lists as negative values: "individualism, nationalism, free 
enterprise, unlimited growth and progress, and competitive achievement." The values he 
lists as positive are "interdependence, diversity, cooperation, equilibrium, and limits." The 
values that he lists as negative are foundational to western civilization and are based upon a 



The Noxious Nineties : c. 1 990 



277 



rich Judeo-Christian heritage. The values he lists as positive can be found in Iowa's proposal 
for "World-Class Education under 'Examples of Core Concepts'" and are an integral part of 
Iowa's Global Education goals. Not surprisingly, these same values crop up in all the new 
state "outcomes" lists as well. 

[Ed. Note: For more information on the connection between extreme environmentalism, sus- 
tainability, and the deliberate dumbing down of America, see Appendix XXVII.] 

The 1990-91 (Winter) issue of Outcomes, an educational journal devoted to Discussion 
of Outcome-Based Education and the problems associated with its implementation (teachers', 
administrators' and community resistance) published a remarkable article entitled "Paradigm 
Change: More Magic than Logic" by John C. Hillary. The reader should remember that the 
manipulation of classroom teachers and administrators discussed in this article is standard 
operating procedure in most schools undergoing "restructuring. " Excerpts from Hillary's article 
in Outcomes follow: 

The deeper changes that frustrate leaders and threaten followers are planned second-order 
changes.... These changes intentionally challenge widely shared assumptions, disintegrate the 
context of "organization" and, in general, reframe the social system. This, in turn, generates 
widespread ambiguity, discontinuity, anxiety, frustration, confusion, paranoia, cynicism and 
anger as well as temporary dysfunction. Such trauma often builds to the point that leaders 
abandon their efforts. 

The most disruptive changes — second order changes — on the other hand, call into 
question the entire context of organization. Such multidimensional changes not only chal- 
lenge the content of each domain but also disrupt the alignment among them. Paradigm 
change is therefore not only traumatic in and of itself, but also challenges other attributes 
and disintegrates the relationship among all domains. The eventual outcome of such change 
is "transformed" or "renewed" organization. 

The new vision for schooling suggested by contemporary educators represents a sig- 
nificant "second order" challenge to school organization. 

The leader of planned second order change will be regarded as out of context by the 
organization. If he thinks and behaves in accord with a vision that requires second order 
changes, he has no choice but to violate or challenge the established culture, mission/purpose, 
and paradigm of the organization. From the existing frame of reference, such behavior will be 
seen as illogical. Powerful and pervasive psycho-social forces will bear down on the renegade 
in a relentless organizational effort to bring him back into alignment. Unless the leader suc- 
ceeds in progressively bending the pervasive frame, persistence is increasingly risky. 

During second order change, the organization must face and hopefully pass through 
a period of widespread psychological ambiguity, social disconnectedness and general con- 
fusion.... The requisite disintegration of the existing culture, mission/purpose, and paradigm 
disrupts the organization's frame of reference. During this time, there is little or no clear and 
consistent context to guide the thinking and behavior of members. In social systems, this 
condition produces dysfunction, anxiety, frustration, disequilibrium, and systemic chaos. 

The instigator of second order change must consistently behave in ways that will not 
make sense when framed by the existing context. With time and leadership, the organiza- 
tion environment must move from initially and naturally selecting against the innovation to 
selecting for the innovation. The extinction of the old way of doing business is the desired 
outcome. Hence and with time, the risk should gradually shift away from the innovator and 
toward those who persist in holding on to "the way it's always been." 



278 



[Ed. Note: The writer, over a fairly long period of years, has come to the conclusion that many 
of America's best administrators and teachers have been waging a "silent" war against the 
above change agent activities, and that had they not been so engaged, the public education 
system would have been destroyed long ago.] 

1991 

"America 2000 Plan," written in 1991 and designed to implement the Carnegie Corporation's 
restructuring agenda, was presented to the American people by President Bush's Secretary 
of Education Lamar Alexander. The plan proposed to radically restructure American society 
and was prepared by, amongst others, Chester Finn — former assistant secretary, Office of 
Educational Research and Improvement, and associated with Education Excellence Network 
(Hudson Institute) . Secretary Alexander claimed, "The brand new American school would be 
year-round, open from 6 to 6, for children 3 months to 18 years." The slim booklet containing 
America 2000: An Education Strategy (Rev.) — Making This Land All That It Should Be was 
published by the U.S. Department of Education and portions of this publication follow: 

Message from President George Bush 
April 18, 1991 

To those who want to see real improvement in American education, I say: There will be no 
renaissance without revolution. 

We've made a good beginning by setting the nation's sights on six ambitious National 
Education Goals— and setting for our target the year 2000.... For today's students, we must 
make existing schools better and more accountable. For tomorrow's students, the next gen- 
eration, we must create a New Generation of American Schools. For all of us, for the adults 
who think our school days are over, we've got to become a Nation of Students — recognize 
learning is a lifelong process. Finally, outside our schools we must cultivate communities 
where learning can happen.... 

EXECUTIVE SUMMARY 

The strategy anticipates major change in our 110,000 public and private schools, change 
in every American community, change in every American home, change in our attitude 
about learning. The strategy will spur far-reaching changes in weary practices, outmoded 
assumptions and long-assumed constraints on education. It will require us to make some 
lifestyle changes, too.... 

America 2000 is a national strategy, not a federal program. It honors local control, relies 
on local initiative, affirms states and localities as the senior partners in paying for education, 
and recognizes the private sector as a vital partner, too. 

The federal government's role in this strategy is limited — wisely — as its part in education 
always has been. But that role will be played vigorously. Washington can help by setting 
standards, highlighting examples, contributing some funds, providing flexibility in exchange 
for accountability and pushing and prodding — then pushing and prodding some more. 

The America 2000 strategy has four parts that will be pursued simultaneously. For 
tomorrow's students, we must invent new schools to meet the demands of a new century 
with a New Generation of American Schools, bringing at least 535 of them into existence by 
1996 and thousands by decade's end.... 19 



The Noxious Nineties : c. 1 991 



279 



THE CHALLENGE: America's Skills and Knowledge Gap 
Introduction: 

As a nation, we now invest more in education than in defense. Nor is the rest of the world 
sitting idly by, waiting for America to catch up. Serious efforts at education improvement 
are under way by most of our international competition and trading partners. 

While more than 4 million adults are taking basic education courses outside the schools, 
there is no systematic means of matching training to needs; no uniform standards measure 
the skills needed and the skills learned. 

[Ed. Note: Carnegie's Marc Tucker took care of matching training to needs when his Human 
Resources Development Plan for the United States, developed by the National Center for Edu- 
cation and the Economy, was unveiled in 1992. (See Appendix XVIII.) As far as keeping track 
of the progress of our "international competition and trading partners" is concerned, the North 
American Free Trade Agreement (NAFTA), the General Agreements for Tariffs and Trade (GATT), 
and international co-ordination of ISO 9000 and 1400 through the United Nations will ensure 
that we maintain "computability."] 

Who would ever have imagined that the educational and cultural exchanges signed 
between President Reagan and President Gorbachev, and those negotiated since 1985, would 
result in Russian "cops" from the recently disintegrated "Evil Empire" flying American police 
helicopters as described in the following article "Cop Swap: His Beat Is Leningrad but He's on 
Loan to LAPD— His Local Host Will Visit U.S.S.R." by Bob Pool, which appeared in the April 
30, 1991 issue of The Los Angeles Times. Excerpts follow: 

That wasn't Gorky Park that a burly Russian cop was swooping over Monday in a police 
helicopter. That was Griffith Park. Leningrad policeman Albert Vorontsov went airborne to 
get acquainted with Los Angeles and launch a first-ever swap of Soviet and local police of- 
ficers that is aimed at spreading goodwill — and trading good ideas. Vorontsov will shadow 
Los Angeles Police Sergeant Greg Braun for two weeks. Then Braun will travel to the So- 
viet Union in June to work with Vorontsov.... "We may think we're on the cutting edge of 
technology in police work, but a lot of other people are doing very innovative, bright things 
all over the world," said Bay an Lewis, an LAPD commander who helped Braun arrange 
Vorontsov's visit. 

Kern County lawmen have adapted a simple Soviet "pole vault" technique that can flip 
SWAT team members into second-story windows, he said. 



AN ARTICLE ENTITLED "SENIORS' CHURCH ATTENDANCE" WAS PUBLISHED IN THE JUNE 12, 1991 

issue of Education Week. The central premise of the article was summed up in the following 
quote: 

High school seniors in 1990 were much less interested in, and involved with, organized reli- 
gion than were their counterparts in the 1970's, according to data compiled by the Institute 
for Social Research (ISR) at the University of Michigan. 

[Ed. Note: The Institute for Social Research (ISR) is, interestingly enough, the same institute 
that was involved in Ronald Havelock's The Change Agents' Guide to Innovation in Education 



280 



which instructed educators how to "identify resisters" and how to sneak controversial sex, 
drug and death education into curriculum despite parental objections. The article reveals that 
the schools were highly successful in their efforts to indoctrinate students in non-absolutist, 
humanistic values. It should come as no surprise that the average American in 1991, sub- 
jected to values clarification in the schools of the 1960s, 1970s, and 1980s, is non-judgmental 
regarding immoral behavior. For example: in 1999 President Clinton, according to the polls, 
retained the confidence of 60-75 % of the American people during his investigation and even 
after his impeachment trial revealed flagrant immoral activity] 

"Week in the Subway as Cultural Exchange" by Jacques Steinberg which appeared in 

the June 15, 1991 issue of The New York Times pointed out some of the interesting activities 
resulting from the exchanges signed between President Reagan and President Gorbachev. An 
excerpt follows: 

A hapless fare-beater was arrested today in the Chambers Street subway station, and he 
was suddenly surrounded by six Moscow police officers. This was not a scene out of a Cold 
War nightmare. The Soviets were not taking over the United States. This was a cultural 
exchange. 



THE LATE MORTIMER ADLER'S BOOK HAVES WITHOUT HAVE-NOTS: ESSAYS FOR THE 21ST Century 

on Democracy and Socialism (Macmillan Publishing Company: New York, 1991) was published. 
The book's dedication was to "Mikhail Gorbachev — whose perestroika opened the window 
to this vision of the future in the United States, Eastern Europe, and the Soviet Union. " Haves 
Without Have-Nots takes on additional importance with the imminent approach of the year 
2000 and the tragic upheavals in former communist countries, some of which seem to be 
reverting to communism. Excerpts follow: 

In the almost fifty years that have elapsed since 1943, I joined the World Federalists and 
campaigned for world government; I was appointed by President Robert M. Hutchins of the 
University of Chicago to his Committee to Frame a World Constitution, established by him 
immediately after atomic bombs were dropped on Hiroshima and Nagasaki; I conducted a 
seminar for the Ford Foundation on war and peace, world peace, and world government in 
1951; andlwrotetwo books [The Common Sense of Politics, 1971, andA Vision of the Future, 
1984), in which these subjects are treated with a maturity acquired by years of thinking 
about them.... 

Finally, in Section 5, I will close with a vision of the new world of the Twentieth 
Century, in which the conflict between the two great superpowers — the USA and its NATO 
allies vs. the USSR and its Warsaw Pact satellites — will be replaced by the USDR (a union of 
socialist democratic republics) . This will be a penultimate stage of progress toward a truly 
global world federal union that will eliminate the remaining potentially threatening conflict 
between the have and the have-not nations, (pp. 250-251) 

[Ed. Note: Mortimer Adler can also be remembered as the author of The Paidea Proposal, an 
educational "innovation" used to introduce the concept of charter-type schools into main- 
stream school reform along with humanistic emphasis on subject matter. Adler was also one 
of the most visible facilitators for the Aspen Institute for Humanistic Studies (established in 



The Noxious Nineties : c. 1 991 



281 



the 1940s) which has trained most of our government leaders in the dialectical process of 
reaching consensus. While Adler did not live to respond to the break up of the former Soviet 
Union, his interim vision of the formation of a "union of socialist democratic republics" bears 
watching.] 

Global Alliance for Transforming Education (GATE) published Education 2000: A Holistic 
Perspective in August, 1991. 7 The following excerpts are taken from "The Vision Statement" 
and the "GATE Partnerships for Transforming Education" section of "The Plan for Implemen- 
tation": 

Principle II. Honoring Students as Individuals 

We call for a thorough rethinking of grading, assessment, and standardized exami- 
nations.... In successful innovative schools around the world, grades and standardized tests 
have been replaced by personalized assessments which enable students to become inner 
directed. The natural result of this practice is the development of self-knowledge, self-disci- 
pline, and genuine enthusiasm for learning. 

We call for an expanded application of the tremendous knowledge we now have about 
learning styles, multiple intelligences, and the psychological bases of learning.... The work 
being done on multiple intelligences demonstrates that an area of strength such as bodily 
kinesthetic, musical, or visual spatial can be tapped to strengthen areas of weakness such 
as linguistic or logical-mathematical.... 

Principle IV. Holistic Education 

. . .Holistic education celebrates and makes constructive use of evolving, alternate views 
of reality and multiple ways of knowing. It is not only the intellectual and vocational aspects 
of human development that needed guidance and nurturance, but also the physical, social, 
moral, aesthetic, creative, and — in a nonsectarian sense — spiritual aspects. Holistic education 
takes into account the numinous [supernatural] mystery of life and the universe in addition 
to the experiential reality. 8 

Holism is a re-emerging paradigm, based on a rich heritage from many scholarly fields. 
Holism affirms the inherent interdependence of evolving theory, research, and practice. Holism 
is rooted in the assumption that the universe is an integrated whole in which everything is 
connected. This assumption of wholeness and unity is in direct opposition to the paradigm 
of separation and fragmentation that prevails in the contemporary world. Holism corrects the 
imbalance of reductionistic approaches through its emphasis on an expanded conception of 
science and human possibility. Holism carries significant implications for human and planetary 
ecology and evolution. These implications are discussed throughout this document.... 

Principle VI. Freedom of Choice 

We are for a truly democratic model of education to empower all citizens to participate 
in meaningful ways in the life of the community and the planet. The building of a truly 
democratic society means far more than allowing people to vote for their leaders — it means 
empowering individuals to take an active part in the affairs of their community. A truly 
democratic society is more than "the rule of the majority" — it is a community in which 
disparate voices are heard and genuine human concerns are addressed. It is a society open 
to constructive change when social or cultural change is required.... 

Principle VIII. Educating for Global Citizenship 

We believe that each of us — whether we realize it or not — is a global citizen.... A goal 



282 



of global education is to open minds. This is accomplished through interdisciplinary stud- 
ies, experiences which foster understanding, reflection and critical thinking, and creative 
response.... These principles include the usefulness of diversity, the value of cooperation 
and balance, the needs and rights of participants, and the need for sustainability within the 
system. 

Other important components of global education include understanding causes of con- 
flict and experiencing the methods of conflict resolution. At the same time, exploring social 
issues such as human rights, justice, population pressures, and development is essential to 
an accurate understanding of the causes of war and conditions for peace. 

Since the world's religions and spiritual traditions have such enormous impact, global 
education encourages understanding and appreciation of them and of the universal values they 
proclaim, including the search for meaning, love, compassion, wisdom, truth, and harmony 
Thus, education in a global age addresses what is most fully and universally human.... 

CONCLUSION* 

. . . We in education are beginning to recognize that the structure, purposes, and methods 
of our profession were designed for an historical period which is now coming to a close. 
The time has come to transform education so as to address the human and environmental 
challenges which confront us. 9 

This conclusion is The Chicago Statement on Education adopted by eighty international 
holistic educators at Chicago, Illinois, June, 1990.... 

GATE PARTNERSHIPS FOR TRANSFORMING EDUCATION 
[The visual graphic on the front of this section included planets rotating around a central 
orb entitled "GATE." The "planets" were labeled with the following titles:] 

• Young people 

• Teachers 

• Education Associations 

• United Nations Organizations 

• Local Communities 

• Government & Local/National Education Leaders 

• Families 

• Teacher Educators & Academies 

• Business 

• Media 

• Model Holistic Schools 

• Citizen Groups for Social Change. ... 

Business 

GATE understands that a working partnership needs to be built with business. Busi- 
ness leaders recognize that the structure and form of today's education are not meeting the 
ever- expanding needs of a global society... 

Example: W.E. Deming is the creator of Total Quality Management [TQM] — a holistic per- 
spective that is transforming the hierarchical nature of the business world. He claims that "a 
long-term commitment to new understanding and new philosophy is required of any man- 
agement that seeks transformation." 10 There is a common thread between Deming's TQM 
model and holistic education. At the 1991 conference in Colorado, a group discussing GATE'S 



The Noxious Nineties : c. 1 991 



283 



interface with business drew the idea of Total Quality Education [emphasis in original] into 
their dialogue. This discussion has led to the beginnings of a national TQE movement in 
which business, government, and education leaders will be addressing holism in education. 
It is an opportunity for GATE'S vision to get wide distribution. 

In a separate section of the GATE material entitled "United Nations Organizations" one 
reads: 

Example #1. Several members of the GATE Steering Committee serve on the Seed Advisory 
Committee for the Global Education Program for Peace and Universal Responsibility at the 
United Nations' University for Peace in Costa Rica. 

Example #2. GATE has been networking with various branches of UNESCO to develop a 
series of World Conferences on Education.... The conferences would model the non-hierar- 
chical process of new leadership and would be organized according to the following tracks: 
Critical issues in education; Global citizenship and ecological education; Education for all; 
Innovative strategies and techniques; Spiritual education; Peace and education; and The 
media and education. 11 

The reference to the United Nations' University for Peace in Costa Rica brings former 
United Nations Under Secretary Robert Muller into the picture. Muller wrote his own World 
Core Curriculum which he credits to a demon spirit guide, Djhwan Khul, who gained notoriety 
in the early 1900s as the spirit guide of Theosophist Alice Bailey who wrote Education in the 
New Age (Lucis Publishing Company: New York, 1954). 12 Muller also authored a novel in 1988 
entitled First Lady of the World (World Happiness and Cooperation: Anacortes, Wash., 1991) 
in which his fictitious world leader enumerates a series of proposals necessary for the smooth 
running of a global society. A few of those proposals follow: 

7. A World Core Curriculum and a Planetary Management Curriculum are adopted by UNESCO 
as common guides for proper Global Education in all schools and universities of Earth. 1996 
is proclaimed International Year of Global Education.... 

11 . More and more countries disarm, demilitarize and have their borders protected by UN 
observers under regional and international guarantees. The savings are devoted to devel- 
opment, the environment, education and social services.... 

15. A host of new world conferences are convened at an accelerated pace: on soil erosion, on 
mountain areas, reforestation, the world's cold zones, consumer protection, standardization, 
world community, a world tax system, etc. (pp. 70-71) 

The implementation of this global management system has been accurately described in 
two novels — B.F. Skinner's Walden Two, which describes "the method" (behavior modification), 
and Robert Muller's First Lady of the World, which describes "the mechanics" (blueprint). 
Speaking of the effect of Walden Two, which is required reading in college classrooms across 
the country, the promotional blurb on the jacket of the book says: 

This fictional outline of a modern Utopia has been a center of raging controversy ever since 
its publication in 1948. Set in the United States, it provocatively pictures a society in which 
human problems are solved by a scientific technology of human conduct — and in which 



284 

many of our contemporary values are obsolete. 

[Ed. Note: Please refer to the 1993 entry regarding the Fall issue of Outcomes containing an 
interview with Ken Hazelip and James Block connecting Skinnerian operant conditioning and 
mastery learning to Total Quality Management as well as exposing the fact that mastery learn- 
ing has been a "hard sell" with American teachers. (Also see 1998 Willard Daggett's Model 
School News related to District 4J in Oregon as a "model school district.")] 

A sample "21 st Century Report Card" was a handout at the August, 1991 Association 
for Supervision and Curriculum Development (ASCD) Network conference in Traverse City, 
Michigan entitled "Creating the Twenty-First Century." Descriptive excerpts — which originally 
led this writer to believe this sample report card was a joke until able to verify its actual exis- 
tence — follow: 

DaVinci Elementary School 
Principal: R.B. Fuller 

[After each of the following categories there is a mark A through F as a grade, ed.] 

Spatial Relationships; Intuition; Insight; Generates Ideas Freely; Daydreaming/Reverie; Gestalt 
Perception; Esthetic Sensibility: color, form, music, poetry 

Teacher's Comments: school psychologist suggests remedial imagination 

Work Habits: Able to transcend space/time limitations; Is flexible; Listens attentively — with 
third ear; Follows directions unless better idea occurs; Completes assignments — when useful; 
Makes good use of time: fantasizing, creating, meditating. 

Citizenship: Accepts responsibility; Respects authority— if there is justification for respect; 
Respects rights and property of others; Shows empathy/telepathy; 

Teacher's signature: 
Parent's signature: 

Bonnie Newhouse, a Traverse City, Michigan wife and mother of four children who had 
served on the junior and senior parent advisory committees as well as the district advisory 
council, wrote an article for the Traverse City Record-Eagle's March 18, 1992 issue which in- 
cluded the following information related to change agent tactics to implement restructuring 
promoted at the ASCD meetings: 

In a study done by the U.S. Senate Republican Policy Committee on Illiteracy, September 
1989, they conclude: "For the past 50 years, America's classrooms have been used by psy- 
chologists, sociologists, educationists and politicians as a giant laboratory for unproven, 
untried theories of learning, resulting in a near collapse of public education." 

This "collapse" was also referred to by William Spady in his address to the ASCD High 
School Futures Planning Consortium III August 1991 meeting in Traverse City. He spoke of 
prominent educators talking of WHEN the public education system collapses, not IF [emphasis 
in original] . He also shared with the audience that he was one of three given a grant by the 
Danforth Foundation with the assignment to transform America's high schools. 



The Noxious Nineties : c. 1 991 



285 



What does all this really mean for our students? From the information gathered and 
rhetoric offered, perhaps the most significant was found in yet another ASCD Network con- 
ference held the previous week, "Creating the 21st Century"; an example of a 21st Century 
Report Card [was presented] .... 

We are seeing a major shift away from academics toward attitudes and values. The 
question is, who will determine which outcomes your child must have to graduate? If all 
this seems farfetched, one has only to read some of the information presented at the ASCD 
workshops: "Learners' behavior must show... Learners' attitudes must demonstrate... Learn- 
ers will advocate for collaborative change. " 

Most enlightening was a session titled, "How to develop the 'desired state' for your high 
school." A more accurate title may have been "How to manipulate teachers, parents and the 
school board to accomplish your agenda." Among the suggestions: use teachers in these pilots 
that are the kids' favorites; introduction of special education in the classrooms will help in 
overcoming the barrier of the closed door; how do you deal with people who sabotage your 
plan? Do little things to include them, give them power, let them be co-chairs. 



The Georgia Public Policy Foundation, a state affiliate of the Heritage FouNDAtion, 

published Reach for the Stars: A Proposal for Education Reform in Georgia by Matthew J. Glavin 
in October of 1991. 13 Excerpts follow: 

[Preface] The Georgia Public Policy Foundation wishes to thank the Hudson Institute for 
sharing much of their original research that constitutes the basis for this plan.... 

[Foreword] Reach for the Stars proposes step-by-step how we can take the education bull by 
the horns and steer it toward success. For parents, it means an end to excessive school taxes 
and the beginning of accountability on the part of the school system.... I urge you to read this 
report with an open mind and an eye toward change. If Georgia hopes to continue another 
decade of growth, it must begin preparing now. Reach for the Stars outlines the necessary 
steps to ensure Georgia's future. As citizens, we can not afford to miss this opportunity. 

William Bennett 

Former Secretary of Education 

October, 1991 

[Ed. Note: The introduction to Reach for the Stars quotes the late Al Shanker, long-time pres- 
ident of the nation's second largest teacher union — American Federation of Teachers — as if 
Shanker would be recommending any changes or restructuring other than that proposed by 
the Carnegie Corporation. The reader should refer to the 1986 entry which quoted from an 
article entitled "Carnegie Report on Education: Radical Blueprint for Change" which appeared 
in the June 28-29, 1986 issue of The Bangor [ME] Daily News. This article identified Shanker 
as a willing accomplice of Carnegie's plan (the Marc Tucker/National Center for Education 
and the Economy plan) to restructure education.] 

In the following excerpts from Reach for the Stars the writer has related the statements to 
outcome-based education, education restructuring, school-to-work, site-based management, 
etc., all of which concerned parents and teachers have been led to believe are anathema to 
conservatives: 



286 



And we need a system of measuring achievement that will tell parents how well their sons 
and daughters are doing compared with what they need to know to get ahead — not compared 
to what a kid in another county or another state knows [outcome-based education which 
replaces norm-referenced testing with criterion-based testing] . 

It's time to shift the power back to the teachers and principals [site-based management 
which abolishes the power of elected school boards] . 

Under the Georgia Public Policy Plan, "ready for life" means having the knowledge 
and skills to be successful in life as a citizen, employee and person. Earning a basic high 
school diploma should mean one is ready for life [UNESCO's lifelong learning and elements 
of competency-based/outcomes-based education] . 

Second, create a new statewide assessment system which: (a) measures the extent to 
which individual students are meeting the standards; (b) provides information on school 
performance for parent selection of schools; and (c) gives employers an objective and mean- 
ingful way to assess the capabilities of job applicants by requiring a uniform exit assessment 
to earn a high school diploma [the controversial National Assessment of Educational Progress 
which measures students' attitudes and beliefs, and school-to-work, SCANS] . 

Academic standards should include knowledge, concepts, and skills that all students, 
college-bound and job-bound, need to master [school-to-work, mastery learning]. 

These standards are currently being developed at the national level by the National 
Education Goals Panel (NEGP) [no local representation] . 

The academic standards will: (a) identify the core competencies that all students 
should master at key transition points in their education careers, and (b) identify the skills 
and knowledge that students must master to earn a high school diploma.... These academic 
standards will also include knowledge and skills needed for responsible citizenship; per- 
sonal skills required to get, keep, and progress on a job; and social skills needed to work 
with others on a job [Certificate of Initial Mastery, lifelong learning, SCANS, OBE, mastery 
learning, and school-to-work] . 

In conjunction with the National Education Goals Panel, a new voluntary nationwide 
examination system is being developed based on the five core subjects that are tied to the new 
national academic standards. Georgia should adopt this new examination system as soon as 
it is available for implementation. [This "voluntary nationwide examination system," which 
circumvents local control, has metamorphosed into a mandated nationwide examination for 
which legislation has been before Congress since 1997.] 

The State of Georgia should take this opportunity to request that the NAEP reauthor- iza- 
tion. . . include a provision allowing any state that wishes to use the NAEP tests on a school- 
by-school basis to do so [NAEP was not designed to be a school-by-school comparison]. 

There are three integral and inseparable concepts that will "free the teachers" and "free 
the parents" — Deregulation, School Autonomy and Parental Choice. 

[Ed. Note: How can there be "freedom" for parents and teachers when schools are run by un- 
elected (unaccountable) councils which must conform their curriculum to Goals 2000 — national 
standards, national tests, resulting in a nationalized (socialist) education system?] 

One of the guiding philosophies of this plan is that government funding for K-12 edu- 
cation should be targeted to the child— not the school district. Each and every school-aged 
child will be entitled to public support for his or her education. Parents can use the child's 
publicly funded "scholarship" at any school where the child meets admission requirements. 
Exceptions would be schools that fail to meet state performance standards, or private schools 
that choose not to participate. 



The Noxious Nineties : c. 1 991 



287 



[Ed. Note: Targeting funding to the child according to the child's Individual Education Plan 
(IEP) and meeting the state requirements fits in nicely with school-to-work. Won't a child 
whose career path is that of a fireman receive less funding than a child whose career path is 
that of an engineer?] 

Under the Georgia Public Policy Foundation recommendations the local districts must 
divest themselves of operating control of the schools [site-based management and charter 
schools]. 

Each autonomous public school organizes as a non-profit corporation with a board 
selected by the teachers and other certified staff of the school. 

[Ed. Note: This proposes a complete change of government, resulting in loss of representation 
by publicly elected representatives. 14 This is the Carnegie Corporation's plan spelled out in A 
Nation Prepared: Teachers for the 21st Century 15 which proposed the total restructuring of the 
teaching profession and Luvern Cunningham's disastrous Kentucky model.] 

"Company Schools," schools that are sponsored at the work site for students who come to 
work with a parent but which are also open to local students [school-to-work] . 

The curriculum in most American schools is geared toward the lower rote skills and 
is far less challenging than curricula in many other countries. [The reference to "lower rote 
skills" is a reference to basic skills — reading, writing, and arithmetic — and the rote learning of 
those skills. In 1994 H.R. 6, the controversial legislation that had parents up in arms, referred 
to "lower rote skills" in this same derogatory manner. The funding in H.R. 6 was definitely 
geared toward OBE/mastery learning/direct instruction and multi-cultural programs, ed.] 

[Ed. Note: This report could have been written by UNESCO and the U.S. Department of Edu- 
cation with assistance from the Carnegie Corporation and the teachers' unions — American 
Federation of Teachers (AFT) and National Education Association (NEA) . It incorporates most 
of the essential elements of OBE, America 2000, Goals 2000, the New American School Devel- 
opment Corporation's charter schools, and SCANS.] 

Human Capital and America's Future: An Economic Strategy for the Nineties (Hopkins 
Press: Baltimore, Md., 1991) edited by David W. Hornbeck and Lester M. Salamon, was pub- 
lished. The following quotes confirm the worst fears of parents related to education reform 
and dumbed down outcomes which are referenced by the change agents as "world class." 
Human Capital explains that: 

[E]mployer beliefs about the superior capabilities of educated people turned out NOT to be 
confirmed in practice [emphasis in original] ; educated employees have higher turn-over rates, 
lower job satisfaction, and poorer promotion records than less educated employees, (p. 7) 

Education researcher Judith McLemore of Alabama excerpted and commented upon David 
Hornbeck's statements in "New Paradigms for Action," chapter 13 of Human Capital : 

Programs proposed to "cope with human capital problems" include "Initiatives to alleviate 
poverty" (p. 360) which include "income transfers."... The gap between "the haves and 
the have-nots is growing." Economic prosperity of the nation is "heavily dependent" upon 
stability, (p. 362) 



288 



Fastest growing "segment of the work force" is "women, blacks and hispanics, whom 
we have historically served poorly," and not "white males" whom we have historically served 
relatively well.... At present, "schools and other human capital related institutions contribute 
to the growing gap between the rich and the poor." (p. 363) 

The alteration of our human capital development institutions must be as fundamen- 
tal as the changes in our economic institutions and other parts of our social fabric... It 
is imperative to "improve the school success of young people with whom we have failed 
historically." (p. 364) 

"What are the basic tools we have available to initiate and sustain real change?"... 1. 
Demonstration projects... 2. Charismatic leaders... 3. Money (p. 365)... 4. Lawsuits (p. 366)... 
5. Labor contracts... 6. Legislation, (p. 367) 

"It is not possible to achieve the kind of outcomes we envision without being specific 
as to what those outcomes are. Moreover, it is necessary to define the quality and scope of 
the desired outcomes. Using the Job Training Partnership Act as an example... one of the 
frequent criticisms of its outcome definition is that it encourages 'creaming.' If, however, the 
outcome sought and rewarded was not just job placement, but job placement for the most 
difficult to serve and job placements of a certain quality in terms of pay and future prospects, 
one would quickly eliminate that charge.... Crafting outcomes can be a very tricky process 
... to achieve the high graduation rates reflecting higher achievement levels will require suc- 
cess with the same young people with whom we have failed even with lower standards." 
(pp. 369-370) 

"What we teach should basically be the same for ALL students." (p. 375) [all emphases 
in original] 

"New Paradigms for Action" makes it clear that in the future the "system" (not the 
student) will be responsible for student success... and the students will be followed (data 
collection system from birth until death?). The "system" will be rewarded or penalized for 
the success/failure of those "difficult to serve" including whether or not they get high pay- 
ing jobs after schooling ends. 

In order to drive home her point that our children, as human capital, are nothing but 
pawns in the hands of the state/business community, McLemore refers to the foreword to 
Alexander Frazier's book Adventuring, Mastering, Associating: New Strategies for Teaching 
Children (Association for Supervision and Curriculum Development: Washington, D.C., 1976), 
written by Delmo Delia-Dora, president of ASCD (1975-1976), which said, "This work repre- 
sents Alexander Frazier's attempt to describe what he calls an equal rights curriculum for all 
children." On page 83 Frazier said, "Our goal is the removal of inequality among children who 
have been undertaught, overtaught, mistaught, or not taught some things at all." On page 15 
he said, "Jefferson saw the public school as an agency for finding talent to serve the state. In 
the same way, the school could recruit for the business and industrial establishment." 

Virginia Birt Baker's paper, written in 1991, "Educational Choice — The Education Voucher, 
Tax Credits, and the Nonpublic Schools" explains very clearly that educational "choice" is a 
Trojan Horse carrying government control of all schools and schooling. Excerpts follow: 

"Education is an emotional issue," he said. "We're staying away from the word 'voucher' 
because 'educational choice' sounds a little more palatable to parents. Educational choice is 
giving students and their parents a voucher... and we want to mobilize a significant number 
of people... to get the camel's nose under the tent.... We've got to prepare for the long term... 



The Noxious Nineties : c. 1 991 



289 



so we can strengthen our position and that of our friends." 

So reported a leader of a covert "new right" Dallas think tank at a recent White House 
Conference on Education. The pro-choice activists are vociferous proponents of tuition tax 
credits and the education voucher, and we wonder why they want to "improve the schools' 
and parents' attitudes" by confounding our intellectual inquiries with an emotional and il- 
lusory word change. 

The Associated Press has reported that... President George Bush said, "Choice will be 
a critical element in education reform for years to come. " This recent upsurge in support of 
"choice" and the voucher program is nothing new and deserves closer scrutiny by parents 
and especially by private and home school patrons.... 

The Private School Trap- 
To parents who have been paying taxes to support government schools, it sounds wonderful 
to be able to choose the better school not necessarily in their neighborhood. To parents who 
have been paying taxes to government schools and paying the tuition costs to send their 
children to private schools, a tax break or a government-paid incentive would be a welcome 
relief from financial strain, seemingly encouraging a sort of free-market approach to edu- 
cation. But stop and think: The state has its fangs into private and home schools now; what 
will it be like when schools are recipients of "choice" money? 

The truth of the matter is, once private education accepts tuition tax credits/vouchers 
it can no longer remain "private," because through government regulations, it will be forced 
to become one and the same with its public counterpart. 



The United States Coalition for Education for All (USCEFA) — an outgrowth of World 
Conference on Education for All, Jomtien, Thailand — met October 30-November 1,1991 in 
Alexandria, Virginia. President Bush's wife, Barbara, was named honorary chairperson. One of 
the keynote speakers at the event was Deputy Minister of Education Elena Lenskaya, Republic 
of Russia. 16 The purpose of this conference was to "involve the United States in reform of 
education/community renewal worldwide. " The same United Nations outcomes as those rec- 
ommended at the Jomtien conference were adopted. According to "The Mission Statement": 

USCEFA is comprised of a diverse group of international, domestic, governmental and non- 
governmental groups, associations, and individual education, business, media and health 
leaders. The Coalition was created as an outgrowth of the World Conference on Education 
for All, where official delegations from 156 countries achieved a worldwide consensus to 
launch a renewed worldwide initiative to meet the basic learning needs of all children, youth 
and adults. 17 

The Coalition is taking this worldwide consensus and bridging between the initiatives 
for reform in other countries and the goals for education reform in the United States. [This 
statement flies in the face of change agent assurances at the local and state level that goals 
are locally developed, ed.] 

It strongly believes that the improvement of education is essential for improving the 
quality of life for the world's people and for sustainable economic development; and for these 
reasons, this organization is committed to improving the state of basic education in the United 
States and developing countries by creating new partnerships for educational reform. . . . 

Through seminars, publications, media events, conferences, networking and the dis- 
semination of information, the U.S. Coalition for Education for All is working to meet the 
goals set by the World Conference on Education for All. Members of the Board of Directors 



290 



include: 

President: Janet Whitla, Education Development Center, Inc. 18 

Vice President: Stephen F. Moseley, Academy for Educational Development, Inc. 

Secretary: Richard Long, International Reading Association 

Treasurer: John Comings, World Education, Inc. 

Clifford Block, Far West Regional Laboratory for Educational Research and Improve- 
ment 

David Dorn, American Federation of Teachers 
Alan Hill, Apple Computer, Inc. 

Gary Marx, American Association of School Administrators 

Thomas Shannon, National School Boards Association 

Daniel Wagner, National Center on Adult Literacy, University of Pennsylvania 



New American Schools Development Corporation (NASDC) was established in 1991. 
President George Bush requested that the business community raise funds to support devel- 
opment of "radical, break-the-mold" schools (one in each Congressional district) which would 
in the future be known as "charter schools" (public school "choice" schools). 19 The Request 
for Proposals from NASDC required that: 

Design teams should define the scope and focus of their own work. Student age-grouping 
may be unconventional, and designs may serve students younger than five years of age and 
older than eighteen; students need not all be assembled in a single building or at a particular 
time of day; the school day and school year may be redefined. The duties of administrators, 
teachers, volunteers, parents, and all other adults may be changed.... The design may entail 
major changes in community governance, community structures and the functions of other 
institutions such as public health agencies and welfare departments. Alternatively, designs 
may adopt conventional arrangements for any of above. 



The Effective School Report's November 1991 issue carried an article entitled "A Letter 
from Russia." The following excerpts illustrate the extent of damage resulting from the 1985 
U.S. -Soviet and Carnegie education agreements and other exchange agreements: 

Editor's note: Don Thomas, executive director of the Network for Effective Schools, journeyed 
to Russia in September as part of a contingent of American educators traveling under the 
auspices of the U.S. Department of Education (Secretary Lamar Alexander). Dale Mann of 
Columbia University was a part of the delegation. After initial meetings in Moscow, Thomas 
traveled to the City of Sochi to meet with Russian educators. One of his contacts was Professor 
Victor Nouja, a school administrator from Rostov-on-Don. The following letter is a follow-up 
communication from Nouja, who is eager to establish contacts with American educators for 
the exchange of information and teaching on school management practices: 

Dear Mr. Thomas: 

How are you and your family? Now that we have returned from the first East- West 
International Workshop in Sochi (Russia) to our native city, Rostov-on-Don, my friends and 
I want to thank you for the opportunity you gave us to learn about the experiences of school 



The Noxious Nineties : c. 1 991 



291 



reform and educational management in the state of South Carolina and the evaluation of 
schools in South Carolina. I am sure your experience will be very helpful for us.... There 
are many teachers and school principals who are very interested in taking part in different 
projects. But, we would like to have our own project — "Rostov-South Carolina-Utah." Me 
and my boss had a very long and promising talk with our city authorities about our possible 
contacts. And they promise to undertake sponsorship of the international teacher training 
and school management program. 

Now some words about goals of the project. The first is — to exchange our experience 
in school management and especially in evaluation of school activity. The second is — to 
transfer your experience of using computer systems in both teaching and school manage- 
ment. The third goal — exchange of teaching experience. Now we begin to work with groups 
of teachers who are ready for actions in this project. 

Mr. Thomas, I'll be very happy if you send a letter and tell me your vision on points I 
have described. If there is no objection and difficulties to start this project then we need to 
find time and place we could meet and discuss details. It might be either your town in South 
Carolina or our native city Rostov-on-Don. At that meeting we'll be able to work out a pro- 
gram or project and sign something like an agreement on form and the matter of the project. 
Our city's authorities are ready to take part in this business. I hope we could organize this 
meeting this winter or early in spring time. Mr. Thomas, I have a big favor to ask of you... 
papers and some tests for accreditation of schools. 

Signed Victor Nouja, 344103 Stz Sodzujestva NeF, ap 170, Rostov-on-Don, USSR, Russia 



British Columbia Teachers' Federation 20 in 1991 published "What is the Market Model? 
Excerpts from this interesting flyer made available to Canadian teachers follows: 

AIMS: The Market Model aims to reduce learning to an instrument serving social power. More 
specifically public education is enlisted in the Market Model to serve the needs of corporate 
capital in an information age of global production. 

FEATURES: 

1. In Canada the market model started in higher education, and is now moving to 
secondary schooling. 

2. Cuts in government funding, with corporate funding targeted to particular proj- 
ects. 

3. Purpose of education — to compete economically in the international marketplace. 

4. Demands that public education be redesigned to serve as a knowledge producer for 
private corporations in the national economic competition. 

5. Textbook production and distribution under control of private corporations. 

6. Academic teachers are conceived as "business persons" who provide goods and 
services under Free Trade Agreement and NAFTA. 

RHETORIC: 

"New Reality" 

Competition, Market Discipline 

"The Campus as Corporation" (Strangeway, 1984) 

Curriculum Products 

Resource Units or Resource Packages 



292 

Uniform Standards Skills 

MAIN SOURCE: McMurtry, John, Journal of Philosophy of Education, Vol. 25, No. 2, 1991. 
PD95-0016 

[Ed. Note: Many of McMurtry's tongue-in-cheek ideas are to be found in so-called "conser- 
vative" think tanks' papers on education restructuring. Number 6 under "Features" is particu- 
larly offensive in that the idea of teachers becoming "private contractors" instead of school 
system employees is being discussed and proposed around many a policy maker's table in 
this country. What a peculiar thing. If teachers are being trained not to concentrate on subject 
matter or "lower level skill development," what would they have to market? The ability to 
"train" students to perform certain tasks in a certain way in a certain period of time? Market 
Model Maniacs?] 



1992 

The Effective School Report's February 1992 issue carried an article entitled "Free 
Education in a Free Society" by Nick Zienau of England's Educational Consultancy. It reads 
in part: 

This article describes a project which began at a conference organized in September 1991 
to discuss possibilities for projects between East and West which might assist the process of 
educational reform in Russia and the other republics formerly of the USSR. ... An important 
part of becoming convinced that this was worthwhile was to discover that there was a com- 
mon set of values and ideas about the changes facing education systems whether in Russia, 
the U.S. or Europe. ... A key theme for us was, therefore, that those ideas which hitherto have 
been seen as progressive alternatives and often dangerously radical in educational theory and 
practice will increasingly become part of mainstream education practice and thinking. 

A second key principle was the idea that increasingly education will cease to be a 
state monopoly and must have a relationship with the free market. This seems related to 
the idea of individual enterprise and choice. Our belief is that it is helpful to educational 
reform and therefore to this project to form collaborative relationships between the state 
and organizations acting in the free market. This will help to allow individual autonomy, 
enterprise, etc., to flourish and allow relationships between those involved in reform not 
to be based on fixed budgets and supply side economics. It will require us to have clear 
contracts between participants. If we have ideas about how to go about training teachers, 
we will learn these best from each other by doing it together and that only in this way can 
the project be effective as an educational intervention between nations, between innovators 
or between individuals. 

...We believe in an exchange of learning and in the idea that there is likely to be as 
much that the West can learn from eastern partners as the other way around. We believe 
that a key to what this learning might be about is that the West's knowledge of how to do 
things in education, how to make changes for instance in the technology, is matched by 
pedagogic systems and theories which have been highly developed in Russia. We believe 
that these theories and practices can form the basis of radical curriculum innovation and 
organizational reform. 

Finally, we believe in a project that has an organic structure. It will have two nodes, 
one in the east and one in the west, and it will span three continents. It will have a core 



The Noxious Nineties : c. 1 992 



293 



structure which must have a small financial base and it will have participating organiza- 
tions and individuals. However, the form of the organization must be one in which projects 
can be developed from the center core and not controlled by it. Participants should be free 
to create these without relying on central funding or permission as long as they can fit into 
this set of agreed values which the project will develop. 

First among these is the theme of teacher education (both pre- and in-service) . We see 
this as the key way of changing and influencing education. . . . 

Thirdly, we hope to gain the active involvement of industry and commerce. It will 
be the concern of the project to encourage such collaboration on both sides, both in the 
Eastern consortium and in the Western consortium. We understand it as an important way 
of ensuring that education is relevant to society, understood and cared about, and seen as 
connected to sources of wealth creation in society. Certainly in the East and also, we would 
venture, increasingly in the West, active involvement of industry and commerce is essential 
in order to obtain the funds and commitment necessary for educational reform to succeed. 
This means that in practice we will take every available opportunity to involve actively avant- 
garde leaders of industry and commerce both in funding, supporting and implementing the 
project. The important criteria for collaboration must be that there is sufficient congruence 
of ethics and values about the goals and methods of the project. 

Fourthly, in order to "practice what we preach," we believe that our meetings and proj- 
ects events do actively demonstrate and work with the pedagogic systems, that the learning 
should be managed in a conscious way. We therefore will make it a feature of the project 
that we focus on the skills and strategies of managing learning in an international context 
whether it be in the seminars, conferences, exchange trips or consultations. Fifth, it will be 
important to formulate structures and models of organization that encourage independence 
and autonomy through small groups.... The education reform process will be built on the 
work of many small groups making their own decisions. We will need to build into our 
project structure of contract making, interdependence with autonomy and hold it within 
a regulated and boundaried field of action. These kinds of structures and models are new 
forms of organization for both East and West and represent a move away from hierarchy 
and role-dominated cultures. 

The Consortium activity has the official support of the Minister of Education for the 
Russian Republic, Dr. Edouard Dneprov, and a close liaison has been established with the 
Ministry. On the Western side, the consortium at present includes consultants, trainers, 
and researchers from the UK, Netherlands and the USA who aim in the first place to act 
as a bridge into the various educational networks in the West. These will include higher 
education initiatives, networks of alternative schools, organizations involved in innovative 
teacher training, consulting organizations, industrial and commercial organizations concerned 
with pedagogical innovation. They are also currently working to obtain funding and support 
among possible private and public sector sponsors. 

Signed Nick Zienau 

[Ed. Note: Considerable space has been devoted to quotes from The Effective School Report due 
to their obvious close relationship to activities in American education restructuring; i.e., choice, 
charter schools, school-business partnerships, school-to-work legislation, The New American 
Schools Development Corporation, site-based management, merger of public and private sec- 
tors, and the Skinnerian workforce training methodology. This important article justifies the 
validity of concerns expressed by Americans opposed to the U.S. -Soviet and Carnegie-Soviet 
education agreements signed in 1985 by President Reagan, Mikhail Gorbachev, Carnegie Cor- 
poration and the then-Soviet Academy of Sciences, respectively.] 



294 



"Beijing Journal: Personal File and Worker Yoked for Life" by Nicholas D. Kristof was 

published in The New York Times on March 16, 1992. This article described the Chinese dangan 
as part of a web of social controls that ensures order in China. Excerpts follow: 

Beijing — As part of China's complex system of social control and surveillance, the authorities 
keep a dangan, or file, on virtually everyone except peasants. Indeed, most Chinese have two 
dangans: one at their workplace and another in their local police station.... "School records 
and grade transcripts," she began, offering a foreigner a rare look into the dangan system, 
"Entry into the Communist Youth League and the Communist Party. Family members and 
photo. Promotions and level of work. Performance evaluations. That kind of thing. About 
10 times." 

A file is opened on each urban citizen when he or she enters elementary school, and 
it shadows the person throughout life, moving on to high school, college and employer. 
Particularly for officials, professors and Communist Party members, the dangan contains 
political evaluations that affect career prospects and permission to leave the country.... The 
dangan affects promotions and job opportunities, and it is difficult to escape from because 
any prospective employer is supposed to examine an applicant's dangan before making a 
hiring decision. 

[Ed. Note: Sounds like the U.S. Secretary of Labor's Commission on Achieving Necessary 
Skills resume for "Jane Smith" which grades Jane on a 1-10 basis on honesty, etc., and which 
includes her community service activities. Oregon's legislation stating that employers could 
not hire potential employees unless they had a Certificate of Initial Mastery did not pass. 
However, the very idea that it was proposed means that that is exactly what is intended. The 
above article is important because of U.S. educators' official visits to China and the fact that 
the U.S. Department of Education's contract for the SPEEDE Express (an electronic data ex- 
change system to be used for transfer of student records, etc.) is the beginning of the transfer 
of personal data on students to various agencies, prospective employers, etc.] 

Filling the Gaps: An Overview of Data on Education in Grades K through 12 was pub- 
lished by the National Center for Educational Statistics (U.S. Department of Education, Of- 
fice of Educational Research and Improvement: Washington, D.C. [NCES 92-132], 1992). On 
page 5 one finds a most extraordinary and revolutionary definition of teacher "quality" which 
transfers the responsibility for learning from the student to the teacher. Excerpts from Filling 
the Gaps follow: 

TEACHERS 

Beginning in the 1980s, NCES collected detailed information on the characteristics and 
qualifications of teachers.. . . 

But the term "qualifications" is not synonymous with "quality." The characteristics that 
contribute to good teaching are many, and no single configuration of traits, qualifications, 
or behaviors unvaryingly produces optimal student outcomes in all situations. NCES teacher 
surveys have concentrated on collecting data on "qualifications," rather than trying to define 
"quality." In order to define and measure "quality," characteristics and qualifications of 
teachers must be related to growth in student achievement. 

[Ed. Note: If the bottom line regarding "quality teaching" is "growth in student achievement" 
one must assume that extraordinary measures will be necessary to bring about such "growth 



The Noxious Nineties : c. 1 992 



295 



in student achievement" and the only measures that exist are those associated with the Skin- 
nerian operant conditioning method used in mastery learning/direct instruction/outcome- 
/results-/performance-based education, all of which are synonymous with the new definition 
of "achievement. " The Skinnerian method identifies each and every minute component of the 
subject to be learned and measures each and every response by the student and teacher, leaving 
much real learning out of the picture. It is evident that the teacher will also be "trained" in the 
same way the student is "trained" in order to become a "quality teacher" who never deviates 
from the script and whose every action, including facial expressions and body gestures, can 
be precisely measured, accounted for, and evaluated. 

As a teacher, you WILL perform, or you will lose your job. 

As a student, you WILL achieve, unless you are unwilling to be trained like an animal, 
in which case you may be sent to some form of "boot camp" for "re-education." 
In order to accomplish the above, you, as a teacher, WILL teach to the test.] 

Perhaps the most important data gap in understanding how teachers affect the educational 
process is the lack of a good definition of "teacher quality."... The National Education Sta- 
tistics Agenda Committee... has recommended that OERI fund special studies to improve 
the measurement of, among other things, "important school processes including. . . methods 
of training teachers and assessing their competence." 

Another gap relates to the assessment of teacher quality.... 

The qualifications measures that NCES does not collect cannot currently be related to 
measures of student achievement. ... Development of a measure of "teacher quality" would be 
hastened by obtaining student outcome measures that could be linked to the rich nationally 
representative data on teacher qualifications.... These data are collected from information 
available in school records.... This student records form, if found feasible, could provide the 
data necessary to improve our understanding and measurement of "teacher quality." 

[Ed. Note: In addition to data-gathering based on teach-to-the-test produced student perfor- 
mance measures of "teacher quality," Filling the Gaps also outlines other data gathering that 
is related to the "quality" measure— quality of life. According to Filling the Gaps: 

Socio-economic status (SES) of students is important for understanding, among other things, 
student outcomes including achievement test scores and graduation rates.... [C]ompletion 
in 1993 of the project to map decennial census information to school district boundaries 
will enable most elementary/secondary data to be linked to school district SES measures 
for analysis. 

The original 1981 Census Mapping Project, a joint venture between the National Center for 
Education Statistics and the U.S. Census Bureau, was kept a highly guarded secret for a long 
time. One can only speculate as to the reason— perhaps it is related to the fact that exchang- 
ing information of this type between government agencies has been, technically, illegal. (The 
reader may remember the cries of protest that surfaced in the mid-1980s over the idea of the 
IRS tracking unpaid student college loans by sharing data from the U.S. Department of Edu- 
cation. The justification for continuing to illegally share interagency data was lost in the shuffle 
as the dust settled over that debate. Perhaps the 1981 Census Mapping Project was used as 
justification for "on-going practice constitutes acceptable practice.") However, it is important 
to note the fact that the SES measures projected for the 1993 NCES-U.S. Census project are to 
be arrived at by analyzing data collected on the "community" — or school district — level. 



296 



NCES maintains a series of Educational Records Series handbooks containing the computer 
coding numbers, categories, and specific pieces of information gathered and recorded about 
anything connected with schools — including Handbook VIII: The Community. This handbook, 
while having its contents merged into later versions of others in the series, originally con- 
tained the coding for all community "quality of life" information, including factors producing 
socio-economic status data and a chapter entitled "Attitudes, Values and Beliefs." This hand- 
book provided the vehicle for profiling a "community" — defined as a "school district" by the 
Census Mapping Project — for planning of programs by Community Education practitioners. 
{Community Education's Effect on Quality of Life by W. James Giddis, Diana Page, and George 
L. Mailberger [Center for Community Education at the University of West Florida: Pensacola, 
Fla., 1981], p. 8.) 

Profiling a community for "Attitudes, Values and Beliefs" is useful for those education 
change agents steeped in the methods taught in Ronald J. Havelock's The Change Agents' Guide 
to Innovation in Education, regularly taught at the National Training Laboratory's programs 
and other leadership training seminars for teachers, administrators, board members, elected 
or appointed officials, and other "first-level adopters" of new education reform/restructuring 
proposals. The data gathered through the Census Mapping Project, among other things, assists 
in identifying those in a local community defined as "resisters" to controversial programs. 

Efforts to require "accountability" based on "measurements of teacher quality" have much 
broader consequences than most policy makers have imagined. Defining terms can lead to un- 
derstanding that some recent reform efforts are based on faulty premises, to say the least.] 

Community Learning Information Network, Inc. (CLIN) was incorporated in 1992. CLIN's 
22-page publicity packet stated in part: 

CLIN was incorporated in April of 1992, with a bi-partisan "Blue Ribbon" board of directors 
to implement a community-linked learning technology and information delivery system. 
CLIN has attracted a following in a substantial number of communities and involves a broad 
range of industries and interests (including educators, small and large businesses, hospitals, 
National Guard and Reserves, various government agencies, public housing, and inner city 
organizations and telecommunication providers) in implementing the CLIN concept. CLIN 
has been recognized by the White House and senior members of Congress and currently has 
legislation marked for testbed projects. CLIN has also developed international projects to 
include an approved project with the People's Republic of China sponsored by the highest 
levels of the Chinese government. 21 

[Ed. Note: United States government assistance to the Chinese Communist government will 
ensure an even tighter control of that government over every aspect of its citizens' lives. The 
transfer of medical records, personal information, etc. over CLIN networks should be of great 
concern to Americans who value their right to privacy. U.S. Senator Phil Gramm of Texas (R.) 
has been the chairman of the board of directors for CLIN — a public-private venture.] 

Texas researcher Billy Lyon wrote Connections and Conflicts of Interest (Or, There Ought 
To Be an Investigation!) in 1992. 22 This extraordinary piece of research, which discusses in detail 
the private, for-profit design team projects selected by the New American School Development 



The Noxious Nineties : c. 1 992 



297 



Corporation (NASDC) and the connections of those involved, also presented new information 
on vouchers (educational "choice"). The preface is presented below in its entirety: 

PREFACE 

This paper began as a revision and update of the original article, "$$$ 'Choice' For Profit? 
$$$," about the Edison Project. Since writing that article, however, the eleven "Design 
Teams" have been selected by the New American School Development Corporation and the 
released embargoes received, giving more fodder for grist. To be perfectly honest, some of 
the connections were just too irresistible to ignore. Each one led to another and this paper 
has grown like over-leavened dough. The "Design Teams," new information from America 
2000, proposed legislation, and a little digging in some old files, provided further insight 
into the voucher proposals. This paper is about vouchers (educational "choice") as much 
as anything, but from a different perspective. The Design Teams give you an idea of what 
kind of "private schools" the vouchers may eventually be used for. 

For those who received the earlier "Choice for Profit?" article, Appendix A contains 
additional information on Time- Warner, Benno C. Schmidt and Chester Finn, Jr. The material 
on James S. Coleman in Appendix B is especially significant. 

By no means, does this paper cover all connections, or even all the "Design Teams." 
We're sure that those who are left out will not be offended. A chart is enclosed which, hope- 
fully, will help you see some of these connections. 

As you read this paper, keep in mind that in the beginning of talks on education 
reform/restructuring, all that citizens were demanding was a return to traditional basics. 
They wanted their children to be able to read! 

This writer has, with much difficulty, selected only a few important quotes from Billy 
Lyon's report. "With much difficulty" due to the report's containing nothing bur vital infor- 
mation and documentation on a subject which has everything to do with our children's futures 
and that of our nation — "choice." Excerpts from this fine report follow: 

THE EDISON PROJECT, TIME- WARNER & WHITTLE COMMUNICATIONS: 

Chris Whittle's Edison Project is an initiative to build a national, private, for-profit school 
system. Time- Warner has been not only a full partner in the Edison Project, but owned 50% 
of Whittle's principal company, Whittle Communications LP. Other initial Edison Project 
partners and financiers were Phillips Electronics and Associated Newspapers Holdings, which 
agreed to spend up to $60 million for the three-year study. Team members of The Edison 
Project include: Yale University President Benno C. Schmidt, Jr.; Lee Eisenberg, former edi- 
tor-in-chief of Esquire (Whittle was once co-owner) ; Dominique Browning, former assistant 
managing editor of Newsweek Magazine; Vanderbilt University professor and former assistant 
secretary of education in the Reagan Administration Chester E. Finn, Jr.; and John Chubb of 
the liberal Brookings Institution and Center for Education Innovation.... 

NASDC DESIGN TEAMS: 

NASDC is the private, non-profit corporation set up by American business leaders at the 
request of President Bush to develop a new generation of American schools by contracting with 
and supporting the most promising "break the mold," "start from scratch," curricula design 
teams. Even though NASDC is non-profit, the eleven winning design teams are "for profit." 
NASDC is part of America 2000, President Bush's education restructuring strategy... 

Clinton Administration Secretary of Education Richard W. Riley calls NASDC and Goals 
2000 [Educate America Act) , a powerful combination for "change and improvement. " NASDC 



298 



Executive Management Council Chairman Reams says the two working in partnership "will 
provide systemic change in education." ("NASDC FACTS," New American Schools Devel- 
opment Corp., no date, received 9/13/93).... 

In a Wall Street Journal (6/5/92) article Benno Schmidt, president of the Edison Project, 
discussing what is wrong with present schools and how projects such as the Edison Project 
might improve things, claims that "schools have wavered from liberal educational purposes... 
leavfing] little room for the free play of young people's curiosity... and the cultivation of the 
imagination...." He asked, "What might result if children came to school as toddlers or even 
earlier, rather than as five- or six-year-olds? What if parents were systematically involved and 
actually worked regularly in schools? What if students taught other students much more? 
What if schools were open 12 hours a day, 12 months a year? What if... a school system 
across the nation was completely tied together technologically, and could take advantage 
of systemwide experimentation?..." [What if we just taught students how to read and write 
well and compute 2 plus 2 without a calculator? B. Lyon] 

CHESTER FINN: 

Dr. Dennis Cuddy, in Now is the Dawning of the New Age New World Order,... said: 
"In the book We Must Take Charge, not only does Finn advocate a national curriculum, but 
he also writes: 

The school is the vital delivery system, the state is the policy setter (and chief paymaster) , 
and nothing in between is very important. This formulation turns on its head the traditional 
American assumption that every city, town, and county bears the chief responsibility for 
organizing and operating its own schools as a municipal function. That is what we once 
meant by local control, but it has become an anachronism no longer justified by research, 
consistent with sound fiscal policy or organizational theory, suited to our mobility pat- 
terns, or important to the public. 

Every student must meet a core learning standard or be penalized, according to Finn, 
who says perhaps the best way to enforce this standard is to confer valuable benefits and 
privileges on people who meet it, and to withhold them from those who do not. Work 
permits, good jobs, and college admission are the most obvious, but there is ample scope 
here for imagination in devising carrots and sticks. Drivers' licenses could be deferred. 
So could eligibility for professional athletic teams. The minimum wage paid to those who 
earn their certificates might be a dollar an hour higher. 

Cuddy refers to a U.S. Department of Education "White Paper" (probably prepared 
largely by Finn) . . . with a cover letter saying "Assessment can be used as both a carrot and 
stick".... Under the White Paper's section "Intervening in Academic Bankruptcy" it indicates 
that some school districts may be unwilling to meet their educational responsibilities, and in 
those cases, state intervention may mean "replacing district superintendents and local school 
boards with state-appointed officials." This is the same "state takeover" of local schools not 
meeting certain state standards that Carnegie persuaded the National Governors' Association 
to recommend when Lamar Alexander was its chairman in 1986. 

Dr. Cuddy then reminds us that "Leading conservatives around the country were 
warned about the Alexander/Finn educational philosophy, but most refused to oppose the 
nomination of Lamar Alexander as Secretary of Education." 

JOHN CHUBB: 

Team member John E. Chubb, senior fellow with the Brookings Institution, was a 
participant at the 1989 White House Workshop on Choice in Education at which he also 
introduced speaker Governor Rudy Perpich of Minnesota. Chubb is on the Executive Com- 
mittee of the Center for Educational Innovation, "an independent project of the Manhat- 



The Noxious Nineties : c. 1 992 



299 



tan Institute for Policy Research... [whose goal]... is to improve the educational system in 
America by challenging conventional methods and encouraging new approaches... seeks 
to accomplish this through... research, discussion and dissemination directed at a broad 
public audience. The Center's work is made possible by grants and gifts from the following: 
Karen and Tucker Anderson, The Chase Manhattan Bank, Exxon Education Foundation, The 
Lauder Foundation, The Rockefeller Foundation and others." (From "Education Policy Paper, 
Number 1, Model for Choice: A Report on Manhattan's District 4, Manhattan Institute for 
Policy Research" included in the notebook entitled Choosing Better Schools, Regional Strategy 
Meetings on Choice in Education which came from the U.S. Department of Education, Office 
of Intergovernmental and Interagency Affairs, Jack Klenk, special advisor.) 

John Chubb is one of a 14-member task force who issued a study that "proposed a set of 
bold, innovative solutions designed to bring about... improvements in Texas public schools," 
entitled Choice in Education: Opportunities for Texas (March, 1990). In addition to Chubb, 
"Members of the Task Force producing this study included... Dr. John Goodman, president 
of the National Center for Policy Analysis, Dallas; Allan Parker, associate professor of law, 
St. Mary's University, San Antonio; Dr. Linus Wright, former under secretary of education; 
Dr. Kathy Hayes, associate professor of economics; and Fritz Steiger, president, Texas Public 
Policy Foundation." (Texas Public Policy Foundation REPORT, Summer, 1990, Vol. 11, Issue 
11, pages 3-4.) Dallas Eagle Forum also reportedly co-sponsored the John Chubb-Terry Moe 
conferences in March, 1990.... 

VOUCHERS ("CHOICE"), EDISON PROJECT AND NASDC DESIGN TEAMS: 

Since vouchers (educational "choice") are important to the success of this scheme to 
"privatize" and "decentralize" education through "Design Teams," the Edison Project and 
other private programs, with the assistance of waivers and "flexibility," vouchers need to 
be examined in the new context.... Mainstream news sources have pointed out that vouch- 
ers will benefit Chris Whittle's Edison Project, as well as any "privatized" school projects. 
Examples are: 

Newsweek (6/8/92) — "There's no question that Whittle schools could be extremely re- 
warding... if Congress approves a voucher system...." 

Time (6/8/92) — [owned by Time-Warner] — "...the Bush Administration strongly supports 
the concepts that underlie the Edison Project.... Many observers believe Whittle's long- 
term plan anticipates the use of these (voucher) funds. If adopted, the reform (vouchers) 
could funnel billions of public dollars into private schools...." 

CHUBB & CONSERVATIVES: 

Most conservatives have been conspicuously silent on John Chubb's partnership in The 
Edison Project, and the benefits to be accrued from government voucher assistance. Many call 
this "privatization" of education, leaving the impression that it is "free market enterprise," 
which is absolutely ridiculous since the venture is taxpayer funded and, consequently, gov- 
ernment controlled! Chubb's role may now be an embarrassment to those, who with great 
fanfare and publicity, sponsored his tour around the country extolling the virtues, but not 
the consequences, of education "choice." Nor were people informed of Chubb's liberal con- 
nections. And, only later did people learn of the other "designs" on "choice" money which 
came to light with the introduction of America 2000, The Edison Project, and the other for- 
profit programs. The Design Teams projects were probably part of a veiled plan that drove 
the promotion of vouchers to begin with — from top down. Before letting the cat out of the 
bag, however, it was necessary to garner support for the strategy, especially from Christian 
conservatives. "Choice" had to be sold to them as beneficial. And, so it was. Many fell for 



300 



it, following certain leaders. John Chubb was at the top of the sales team.... [John Chubb is 
also a supporter of the Skinnerian DISTAR/Reading Mastery program developed by Siegfried 
Engelmann and thoroughly discussed in this book, ed.] 

LAYING THE GROUNDWORK: 

Regional strategy meetings on choice in education were held in the fall of 1989, fol- 
lowing the White House Workshop on Choice in January, where John Chubb, Dennis R 
Doyle, Joe Nathan, Governor Rudy Perpich of Minnesota, Governor Tommy Thompson of 
Wisconsin, and then-Governor of Tennessee Lamar Alexander were speakers. At the strategy 
meetings, research papers, position statements, and policy analyses were presented and the 
information compiled in a large notebook entitled, Choosing Better Schools: Regional Strategy 
Meetings on Choice in Education. The notebook contained two "Education Policy Papers," 
from the Center for Educational Innovation (CEI), a project of the Manhattan Institute for 
Policy Research. The list of CEI Executive Committee members included John Chubb, Senior 
Fellow, Brookings Institution, and Joe Nathan, Senior Fellow, Humphrey Institute of Public 
Affairs. Among the CEI supporters were... The Chase Manhattan Bank, Exxon Education 
Foundation... The Rockefeller Foundation.... (THIS ISN'T GRASSROOTS CONSERVATISM, 
FOLKS!) CEI's Education Policy Paper #2, "The Right to Choose," contained presentations 
by John Chubb, Joe Nathan, Chester Finn, Jr., and James S. Coleman. 

James S. Coleman has been busy, too. His work penetrates the entire educational en- 
vironment, including restructuring. He's been quoted in educational materials for at least 
25 years. Recently, a paper by Coleman, entitled "Parental Involvement in Education," was 
included with the America 2000 issues paper, "What Other Communities Are Doing, National 
Educational Goal #1," distributed after the third America 2000 satellite town hall meeting 
(7/28/92).... Coleman gives yet another reason for approving "choice," one less publicized. 
He said that the "choice system" would give the school more authority, making it possible 
to require more of parents and children by having them accept and obey a set of rules as a 
condition of entering and continuing in the school.... 

PRIVATE VOUCHERS: 

Does the information just presented tell us something about the evolution of arguments 
for vouchers; from one of assisting those in private schools to that of aiding the poor who can't 
afford a private school? Does it explain why all voucher legislation/ amendments are directly 
or indirectly connected to Title I, Chapter I of ESEA, which addresses the "Disadvantaged"? 
Does it suggest that the purpose of the whole scheme is "homogenization" through more 
integration, economically and socially. . . for total equality through redistribution of wealth 
and children, via vouchers?... 

G.I. BILL FOR CHILDREN, OR INTEGRATION BY VOUCHER? 
Recall these statements: 

Albert Shanker, American Federation of Teachers — "It may be that we can't get the big 

changes we need without choice. " 
President George Bush — "Choice is the one reform that drives all others." 
Former U.S. Secretary of Education Lauro Cavazos — "President Bush and I are deter- 
mined to use the power of choice to help restructure American education." 



A MESSAGE FROM PRESIDENT GEORGE BUSH WAS DELIVERED REGARDING THE NATIONAL Yoilth Ap- 
prenticeship Act (House Doc. #102-320, The Congressional Record) on May 3, 1992. Excerpts 
follow: 



The Noxious Nineties : c. 1 992 



301 



I am pleased to transmit herewith for your immediate consideration The National Youth 
Apprenticeship Act of 1992.... This legislation would establish a national framework for im- 
plementing comprehensive youth apprenticeship programs.... These programs would be a 
high-quality learning alternative for preparing young people to be valuable and productive 
members of the 21st century work force.... There is widespread agreement that the time has 
come to strengthen the connection between the academic subjects taught in our schools and 
the demands of the modern, high technology workplace.... Under my proposal, a student 
could enter a youth apprenticeship program in the 11th or 12th grade. Before reaching these 
grades, students would receive career and academic guidance to prepare them for entry into 
youth apprenticeship programs.... A youth apprentice would receive academic instruction, 
job training and work experience.... Standards of academic achievement, consistent with 
voluntary national standards, will apply to all academic instruction, including the required 
instruction in the core subjects of English, mathematics, science, history, and geography. 
Students would be expected to demonstrate mastery of job skills.... 

My proposal provides for involvement at the Federal, State and local levels to ensure 
the success of the program. Enactment of my proposal will result in national standards ap- 
plicable to all youth apprenticeship programs. Thus, upon the completion of the program, 
the youth will have a portable credential that will be recognized wherever the individual 
may go to seek employment or pursue further education and training.... 

I believe that the time has come for a national, comprehensive approach to work- based 
learning. The bill I am proposing would establish a formal process in which business, labor, 
and education would form partnerships to motivate the Nation's young people to stay in 
school and become productive citizens.... I urge the Congress to give swift and favorable 
consideration to the National Youth Apprenticeship Act of 1992. 



An article by Laura Rogers entitled "In Loco Parentis, Part II — The 'Parents as Teach 
ers' Program Lives On" was published in the September 1992 issue of Chronicles. 23 Ms. Rogers 
rendered all Americans a great service by providing a seminal work on this totalitarian program. 
Excerpts from her excellent article follow: 

For the uninitiated, the PAT [Parents as Teachers] program was begun in Missouri in 1981, 
ostensibly for the purpose of curbing the high dropout rate and winning back parental support 
for the public school system. In 1985 the state legislature mandated that the PAT program 
be offered to all schools and children in Missouri and since then the PAT program has been 
proposed in at least forty other states. Simply put, the program pivots on assigning to all 
parents and children a "certified parent educator." This state employee evaluates the child 
(under the guise of educational screening), assigns the child a computer code classification, 
and initiates a computer file that the state will use to track the child for the rest of his or her 
life. All of the computer code designations label the child to some degree "at risk," and there 
is no classification for "normal." The state agent conducts periodic home and school visits 
to check on the child and the family, dispensing gratis such things as nutritional counsel- 
ing, mental health services, and even food. Schools under the PAT program provide free day 
and overnight care. The "certified parent" might forbid the biological parents to spank their 
child, and might prescribe, if the child is deemed "unhappy," psychological counseling or a 
drug such as Ritalin. If the parents refuse the recommended services or drugs, the state may 
remove the child from the home, place him in a residential treatment center, and force the 
parents to enroll in family counseling for an indefinite period. 



302 



On November 11, 1992, several days after the 1992 presidential election, Marc Tucker, 
director of the National Center on Education and the Economy in Rochester, New York, wrote 
a letter to Hillary Clinton on NCEE letterhead in which he outlined a lifelong, (socialist) 
workforce agenda, most of which — interestingly enough — had no problem being approved 
by a Republican-controlled Congress within three years. 24 (See Appendix XV and XVIII.) The 
letter's introductory paragraph stated: 

I still cannot believe you won! But utter delight that you did pervades all the circles in which 
I move. I met last Wednesday in David Rockefeller's [Jr.] office with him, John Sculley [Apple 
Computer executive] et al. It was a great celebration. Both John and David R. were more 
expansive than I have ever seen them — literally radiating happiness. My own view and their's 
is that this country has seized its last chance. . . . 

...We propose, first, that the President appoint a national council on human resource 
development.... It would be established in such a way to assure continuity of membership 
across administrations, so that the consensus it forges will outlast any one administration.... 
Second, we propose that a new agency be created, the National Institute for Learning, Work 
and Service. 



American Federation of Teachers affiliate, the Philadelphia Federation of TEACHers, 
stated its opposition to Outcome-Based Education (OBE) in a November 20, 1992 letter to 
Pennsylvania state senators as follows: 

OBE should be a pilot project at best, and tested in several schools as a welcome addition 
to the existing Carnegie Units. It should not be implemented statewide because it could be a 
costly disaster. OBE has no grade designations. OBE has minimal "benchmark" designations. 
There are no time designations. For example, a student completes all English requirements in 
one and one-half years. This student is not required to further develop English skills in the 
remaining two and one-half years of his/her high school career. There are NO safety nets for 
students. OBE is really non-graded schools and non-graded classrooms. It is a very dishonest 
approach to slipping this whole structure into place. Parents, teachers, and students have 
a right to honestly discuss these very important educational plans. We would appreciate 
your support in the closing days of this legislative session to block any implementation of 
Outcomes-Based Education here in the Commonwealth of Pennsylvania. 



School's Out: A Radical New Formula for the Revitalization of America's EDUCAtional 
System by Lewis J. Perelman was published (Avon Books: New York, 1992). The book's cover 
stated that: 

Dr. Perelman earned his doctorate in social policy at the Harvard Graduate School of Edu- 
cation. A Senior Fellow of the Discovery Institute, he was formerly Director of Project Learning 
2000 — a study of restructuring education and training sponsored by nine U.S. corporations 
and foundations. 

George Gilder, author of Wealth and Poverty, also recommended the book by Perelman 
as follows: "A compulsively readable rush to a vital new paradigm for technology and learn- 



The Noxious Nineties : c. 1 992 



303 



ing. You will never think of schools in the same way again" In the preface of School's Out, 
Perelman reveals that: 

Unlike others who channeled their disaffection into calls for "reform," by 1970 I was con- 
vinced that the education system could not be amended but needed to be entirely replaced 
by a new mechanism more attuned to the technology and social fabric of the modern world. 
This conclusion was nurtured by many sources, but especially influential were the works 
of B.F. Skinner, George Leonard and Jay Forrester. The work of Skinner and his disciples 
showed that the processes of learning could be analyzed, understood, and organized to serve 
the individual learner's needs.... Inspired by such ideas, I returned to Harvard in 1970 and 
spent the next three years in an intense and largely independent study of most of the key 
questions that underlie this book: What is learning and how does it work? What technolo- 
gies can facilitate learning, and how do they work? How does learning fit in with the overall 
processes of human economy and ecology? And most important, how do you transform or 
replace established human institutions?... 

Of the several Harvard and MIT faculty who contributed to my exploration of these 
questions, I particularly benefited from the aid and encouragement of Wassilly Leontief, 
Harvey Liebenstein, Jay Forrester, Ithiel deSola Pool, B.F. Skinner, and Paul Yivisaker.... After 
leaving Harvard, I continued my research for another year with support from a grant from 
the Rockefeller Brothers Fund and presented the results of the whole five years of study in 
my first book, The Global Mind, published in 1976. (p. 8) 

[Ed. Note: In 1994 Dr. Perelman served as education specialist for the Progress and Free- 
dom Foundation's First Annual Meeting in Atlanta, Georgia, "Cyberspace and the American 
Dream." 25 The Progress and Freedom Foundation published Alvin and Heidi Toffler's book, 
Creating a New Civilization: The Politics of the Third Wave, which carried a foreword by U.S. 
Representative and soon-to-be Speaker of the House Newt Gingrich (R., GA). On page 96 of 
the Toffler's book, the Progress and Freedom Foundation issued this invitation: 

If you have read and been influenced by this or by any of their works, they — and we — would 
like to know about it. Especially if you have ideas for how to speed the transition to a Third 
Wave America, please send them to us.] 



1993 

The 1993 Annual Report of the Heritage Foundation of Washington, D.C., DEDicated to 

their twentieth year celebration, revealed the following: 

The idea of the North American Free Trade Agreement (NAFTA) originated with Heritage 
Fellow Richard Allen and has long been advocated by Heritage policy analysts.... The idea of 
creating a North American free trade zone from the Yukon to the Yucatan was first proposed 
by Heritage Distinguished Fellow Richard Allen in the late 1970s, refined by then Presiden- 
tial candidate Ronald Reagan, and further developed in a major 1986 Heritage Foundation 
study, (p. 4) 

[Ed. Note: The Free Trade Agreement got the ball rolling for the development of skills stan- 
dards by the newly formed National Skills Standards Board, endorsed by the U.S. Labor De- 



304 



partment Secretary's Commission on Achieving Necessary Skills (SCANS) study originated 
under Labor Secretary Elizabeth Dole, and eventually led to the School-to-Work Opportunities 
Act and the dumbing down of American education curriculum for workforce training. With 
all of this emphasis on "standards" it should be pointed out that NAFTA allows exchanges of 
all categories of professionals, with those coming from Mexico and Canada having met their 
own countries' standards, not necessarily equal to those required in the United States. If this 
process evolves the way most of these exchange processes have in the past, that disparity will 
be addressed in one of two ways— by changing U.S. standards to match foreign standards, or 
by altering both NAFTA nations' standards to align with international standards like ISO 9000 
or ISO 1400 monitored by UNESCO. This should be of concern to professional organizations 
in the United States.] 

"Schoolroom Shuffle: Trailing in Education for Years, Kentucky Tries Radical Reforms- 
Grades 1 through 3 Become One Class with No Texts, Desks or Report Cards — Some Parents, 
Principals Balk" by Suzanne Alexander was published in The Wall Street Journal (A-6) on 
January 5, 1993. Some excerpts follow: 

Lexington, Kentucky — Teachers work in teams, using children's literature to teach spell- 
ing, reading and writing. For math and science, students are taught to analyze instead of 
memorize. 

"We've turned education topsy-turvy," says teacher Beverly Dean, gazing around her 
classroom at children studying on pillows, a couch and a rocking chair. 

Indeed, Kentucky has become a giant laboratory for school reform. 

"We have redefined the basics and challenged every assumption you have about learn- 
ing," says Faye King, principal of Stanton Elementary School in eastern Kentucky. "It's radical 
and its comprehensive. But we can't do any worse, so why not go for the best."... 

In some cases, public schools themselves are resisting change. Longfellow Elementary 
Center in rural Mayfield, Ky., has postponed combining its kindergarten through third grades 
while it pleads with state officials not to force it to do so next year. "It's almost humanly 
impossible to teach when you put so many age (and ability) levels in one classroom," says 
principal Elsie Jones. She adds that without grades, parents won't know at what level their 
children are performing, and should the students move away, their new schools may have 
difficulty placing them in the appropriate grade.... 

Although its fourth and fifth grades remain traditional, changes in what were the lower 
grades (in Picadome Elementary) have transformed the atmosphere in those classrooms. 
"This is my 19th year of teaching, and this is my best year," says Barbara Evans, trying to 
keep order within groups of noisy six and seven-year-olds racing to complete math, cursive 
writing and art assignments with a dinosaur theme. 



Total Quality for Schools: A Suggestion for American Education by Joseph C. Fields was 
published (ASQ Quality Press: Milwaukee, Wis., 1993). This book was given to selected local 
school boards in districts implementing reform/restructuring. Excerpts follow: 

Educators must confront this age-old question of whom to serve and resolve this question 
in favor of the customer and the American culture, political system, and economic system.... 
(P- 19) 



The Noxious Nineties : c. 1 993 



305 



Schools must think in terms of futures, always 10 to 20 years ahead of today. Schools 
that are constant in their purposes must change to meet customer requirements. Schools must 
deal with the problems of today as well as the problems of tomorrow to assure Americans 
that they will be in the education business of the future. As the number of private schools 
increases, as school vouchers and schools of choice develop, and as schools take on more 
and more social responsibilities, it is questionable whether or not certain schools will be in 
business in the future.... 

Businesses will not buy from uncertified vendors. This idea might contain some merit 
for educators. The state of Tennessee, in its original Career Ladder Program for educators, 
required a portfolio of specifications, quality assurances, work standards, and process control 
in addition to several site visits from evaluators who were unfamiliar with the evaluated 
teacher. Consider too the "parent as vendor" of a precious resource, the child. In the inter- 
nal customer concept, the parent is serving the teacher. Teachers could identify reasonable 
specifications for parents relative to the home learning environment and certify parents who 
will cooperate, (p. 48) 

[Ed. Note: The above statement is absolutely appalling! In the words of Cynthia Weatherly in 
her article "Privatization or Socialization?": 

We are misled when we believe that education is a commodity or service to be "purchased" 
by "consumers." This tends to make the public believe that education is market-driven. 
Compulsory attendance laws make education anything but market-driven! More importantly, 
the concept of consumer/purchaser does not correlate to our relationship to our elected of- 
ficials who are legal overseers of the process. Have we lost sight of what our relationship 
to government is? Education is a trust, not a commodity. These are our children, and their 
futures; parents are not "shopping" for education, but are fervently searching for someone 
to whom they are willing to entrust the task of providing an academic education for their 
children. 

As charter schools develop, the temptation will be for private industry to take a more 
direct role in funding and developing programs for these schools which will produce workers 
who can fill the corporations' needs. These schools, then, have the potential of becoming 
"corporate academies" with a narrow focus and limited curriculum base. This is accomplished 
through the school-business partnerships growing into corporate funding to accomplish its 
task. As this potential reality develops, the specter of true socialism — the combining of the 
private and public sectors to produce goods and services — takes on discernible size and 
shape.... 

B.F. Skinner once mused that the functions of government in the future would be 
educational. In the above scenario we see that the reverse of that prediction can be true as 
well — in the future the functions of education will be governmental. Let us remember that 
the true purpose of education is the intrinsic enhancement of the individual. Let us not 
reduce education to limited learning for lifelong labor and our great country's heritage of 
freedom to a footnote in history. 

In addition, at the Sixth Annual Model Schools Conference — sponsored by Willard Daggett, 
director of the International Center for Leadership in Education — in Atlanta, Georgia in July 
of 1998, a participant who is an assistant principal at a middle school in Southern California 
made this comment to a reporter regarding mechanisms to encourage parental involvement 
and support in the education of children: 

One way to make sure that parents attend conferences at school and support the educational 



306 



process for their children would be to dock a certain part of their tax deduction for their 
children. There could be a scale of activities in which the parents would be required to have 
documentation — perhaps a sign-off at the school — of participation before they would be 
allowed to claim their tax deductions for their children. I agree with Daggett that we may 
have to employ some measures that seem extreme. 26 

Returning to a final quote from Total Quality for Schools: A Suggestion for American 
Education: 

In all this interpretation, schools are not free. They require responsible commitment from 
everyone. Citizens would no more be allowed to put obstacles in the way of public educa- 
tors than to interfere with public medical, police, or fire protection personnel who are doing 
their duty. (p. 53)] 



In 1993 the U.S. Department of Education's National Center for Educational Statistics 
(NCES) described in a handout a joint project between NCES and the Council of Chief State 
School Officers (CCSSO) to develop an electronic data link between education and the "world 
of work" called "SPEEDE Express." This linking process would facilitate local "industry part- 
nerships" and would prepare for the use of an "international standard" for exchanging student 
records. 27 An excerpt from the handout follows: 

In 1989, building on projects completed in Florida and Texas, 28 work began on the devel- 
opment of a national (eventually, an international) standard for exchanging student records 
more efficiently. This system would tap into the sophisticated automation of many education 
agencies and institutions. The Standardization of Postsecondary Education Electronic Data 
Exchange (SPEEDE) is intended to assist school districts (grades pre-kindergarten through 
12 and postsecondary educational institutions in the United States and Canada) in the pro- 
cess of transmitting student academic records (transcripts) from one educational institution, 
agency, corporation, or other recipient. 



M. Donald Thomas's "Plan for Action" entitled The Empowered Educational SYStem for 
the 21st Century — Establishing Competitiveness, Productivity, Accountability and Equity in South 
Carolina Education was presented to the South Carolina legislature in 1993. Included among 
other radical recommendations in Thomas's plan was: "Board authority to require parents 
(guardians) to provide services to schools which their children attend. " 

In a videotape of Thomas making these assertions at a school board meeting, a parent 
asked the question, "What would the penalty be if parents didn't wish to perform such ser- 
vices?" Thomas responded, "Fifty dollars!" He then went on to claim that he had instituted 
such a requirement in a school system in Utah without resistance. 29 

Peter Shaw wrote "The Competitiveness Illusion: Does Our Country Need to Be Literate 
in Order to Be Competitive? If not, Why Read?" for the January 18, 1993 issue of The National 
Review. The following quotes are from page 41: 



The Noxious Nineties : c. 1 993 



307 



The technological society does not particularly depend on education. A glance at the record 
shows us that the rapid growth of the United States into the world's greatest industrial power 
coincided with a steady drop in reading levels running from 1930 to the present. Regna Lee 
Wood a teacher, pointed out in an article in NR (Sept. 14th) that this falling off was followed 
by a related, long decline in SAT scores beginning in 1941. Technological society turns out 
to work in the opposite way from that usually supposed: namely, by actually requiring less 
rather than more education of its workers. This is because modern industry depends on re- 
ducing human error, which means reducing dependence on the individual worker's expertise 
and judgment. In building or maintaining electronic devices, workers who once installed or 
rewired electrical circuits now plug in modular components consisting of machine-printed 
circuit boards.... The future role of literacy in the workplace has been succinctly stated by 
Pierre Dogan, the president of Granite Communications, a company that is now "developing 
software for hotel housekeeping." It seems that "so long as maids can read room numbers, 
they will be able to check off tasks completed or order supplies by simply touching pictures 
on the screen." Dogan points out that "you can create a work program with prompting in- 
cluding iconic [picture] messages." In fact, he logically concludes, "you can use an illiterate 
workforce. " 

[Ed. Note: This article provides an excellent explanation of why large multinational corpo- 
rations such as BMW's owner, Mercedes-Benz, etc., are settling in those states which have for 
many years been used as national pilot/experimental laboratory states for Skinnerian mastery 
learning/training in leisure and life/work skills. Among those states are Southern states which 
were part of the early General Education Board's "benevolent effort" to reform the South after 
the Civil War, including Alabama, Mississippi and South Carolina (present Secretary of Edu- 
cation Richard Riley's home state which has produced the second lowest standardized test 
scores in the nation) . 

These states are also a part of the Southern Regional Education Board (SREB) consortium, 
which has produced and dispersed an educational approach called "techademics" outlined 
in a program and book entitled High Schools That Work, written by Dr. Gene Bottoms of the 
SREB. (Bottoms was once employed by the Georgia Department of Education when Georgia 
was implementing competency-based education, the forerunner of outcome-based education, 
and later ran for state superintendent, unsuccessfully.) 

In 1994 Dr. Bottoms addressed the Second Model Schools Conference in Atlanta — spon- 
sored by the International Center for Leadership in Education, Inc. and directed by Dr. Willard 
Daggett— explaining how the High Schools That Work model operated through integrating 
academic and vocational studies. As Dr. Bottoms explained, a survey by the Committee for 
Economic Development had revealed that students preparing to go to work right out of high 
school had an inflated opinion of their abilities. "Techademics" seeks to integrate academic 
subjects with vocational subjects by eliminating the theoretical aspects of these courses (such 
as English, math and science) which would be taught in college preparatory classes, and 
uses instead Daggett's "Application Model" to learn how to apply this information directly 
to work-related tasks. In Dr. Bottoms 's words: "To significantly improve the achievement of 
vocational completers, SREB and its partners believe that any model for integrating academic 
and vocational studies must change the high school's focus from ability as the key to academic 
success to effort as the key" (direct quote from page 110 of the Second Model Schools Confer- 
ence Proceedings) . 

Some additional quotes from Dr. Bottoms 's address to the participants at the Model Schools 
Conference bear repeating here for the light they may shed on the integration of educational 



308 



reform as such reform relates to charter schools/choice and "techademics": 

Take language arts, math, science, and vocational teachers off for a three-day weekend 
together. Take their books and make them find common materials they teach. Break down 
barriers of ignorance and form a team.... 

...Teams went into industries to see what business needs.... 

...Decentralization and site-based management are the keys. These schools stretch 
time on task — standards firm but time flexible. Need a longer day, week, and year for extra 
help.... 

...Basic principle: an ungraded academic core with a career emphasis. The NAEP is 
used in measuring achievement.... 

...Each student has the same English teacher for four years.... 

Can't carry out Deming's principles in present structure — must change to accommodate 
TQM.... Break out of state cultures — cross state lines!] 



Mikhail Gorbachev, former president of the Soviet Union, was quoted in an ARticle in the 
January 23, 1993 issue of The Cape Cod (Massachusetts) Times as recommending that President 
Bill Clinton make America the creator of a new world order based on consensus — thereby plac- 
ing the United States under the authority of the United Nations. Gorbachev was later named 
the "convening chair" and host of a world forum on the "first global civilization" held in San 
Francisco from September 27-October 1 in 1995. The article quoted Gorbachev as follows: 

The future needs... international institutions acting on behalf of all. A higher institution that 
operates on a consensus. Such a choice would narrow the independence many believe the 
United States now enjoys.... President Clinton will be a success if he uses American influence 
to accomplish the transformation of international responsibility and increase significantly 
the role of the United Nations.... He will be a great President — if he can make America the 
creator of a new world order based on consensus. 



In the United States Coalition for Education for All's (USCEFA) publication EFA Today 
January-March, 1993 issue, Russell Bong of the National Training Laboratory's Institute for 
Applied Behavioral Science (NTL) wrote an article entitled "Overcoming Resistance and Facili- 
tating Change: The NTL Institute's Approach. " 30 An extraordinarily blatant, and some might 
consider frightening, explanation of the purpose of the National Training Laboratory can be 
found in the following excerpted material: 

Founded in 1947, the NTL Institute was affiliated with the National Education As- 
sociation during its first 20 years of operation. The Institute became independent in 1967 
and today serves as a nonprofit professional membership organization of applied behavioral 
science experts.... Dedicated to developing and applying scientific methods to behavior mod- 
ification, the Institute facilitates productive change at the individual, social, organizational, 
and macro-system levels.... 

To elaborate, attitudes are primarily shaped by values and beliefs, which, in turn, are 
shaped by both perceptions and misperceptions. NTL's approach seeks to fundamentally 
change personal attitudes, which it does by reshaping underlying beliefs and by eliminating 



The Noxious Nineties : c. 1 993 



309 



dysfunctional misperceptions.... 

It all comes down to a basic tenet: In order to facilitate change on a larger level, indi- 
viduals must first work for change on a personal level. To become a true and effective agent 
of change, one must facilitate change within oneself. 



In 1993 Dr. Beau Fly Jones, a senior director of the North Central Regional Educational 
Laboratory (NCREL) in Oak Brook, Illinois and a strong advocate and practitioner of Skin- 
nerian mastery learning, wrote "The Unfolding of an International Partnership: A Story of 
Russia and the U.S." published in EFA Today (No. 2, January-March, 1993). Excerpts follow 
which illustrate the extent of controversial exchange activities due to the 1985 U.S. -Soviet and 
Carnegie-Soviet agreements in education: 

Well-designed exchanges often involve strong emotions, including caring, empathy, and the 
excitement of discovery, and individuals may return from such exchanges not only with 
cognitive paradigm shifts, but also with life-changing values and interests. 

This has been the case with the NCREL involvement in Russia. 

In January 1992, the Russian Ministry of Education assumed control of the former 
Soviet Ministry's responsibilities. Dr. Edward Dneprov, the new minister, initiated massive 
reforms focusing on decentralization, democratization, and the demilitarization of the Rus- 
sian school system. 

NCREL's relationship with the new Russian Ministry began with an invitation to join 
the Metropolis Project, a collaboration among schools in Chicago, Moscow, and Amsterdam. 
The objective of the Project is to identify and develop successful models of systemic change 
in an urban context. To this end, the Project involves research, training, and exchanges of 
school staff in the three cities. Themes that guide these efforts are authentic learning, global 
education and strategic teaching.... 

...Metropolis schools were being selected, and one of the highlights of the delegation's 
February tour was the signing of a Letter of Cooperation between the Russian Ministry and 
the Chicago Public Schools.... 

Existing exchanges between the U.S. and Russia tend to focus on university students 
or the teaching of foreign languages. For that reason, one of the major problems in obtaining 
funding for the Metropolis Project was that it involved a new level of exchange, this time 
between Russia and U.S. teachers and administrators, as well as a change in the nature of 
the exchange, which would focus on school reform and school-based training. 



James Collins and Martin Haberman echoed Eugene Boyce in the February 1993 issue of 
The Journal of Associating Teacher Educators in an article entitled "The Future of the Teaching 
Profession" when they said: 

Schooling is now seen as primarily job training and, for this reason, quite comparable to 
schooling in non-democratic societies. Once education is redefined as a personal good and 
as emphasizing preparation for this world of work as its first purpose, our schools can ap- 
propriately be compared with those in the U.S.S.R. 31 



310 



The Reading [Pennsylvania] Eagle/Times of March 2, 1993 carried an article entitled 
"Deming Lashes out in Live Teleconference on Quality" by Don Spatz. Excerpts follow: 

It wasn't supposed to happen. Featuring the famous Dr. W. Edwards Deming, last week's live 
video conference among 900 colleges and universities — including Kutztown University — was 
supposed to be an agreeable session touting the benefits of "Creating Learning Organizations: 
Growth through Quality. " Instead it turned into a running battle between Deming and the 
other panelists. They dropped Deming's name for everything they espoused; Deming said 
they were "digging as deep a pit for education as they have for business."... 

"They need to understand where they (workers) fit in the total process," said Peter Senge, 
author and director of the Organizational Learning Center at the Massachusetts Institute of 
Technology's Sloan School of Management. "The rule is to facilitate a learning environment 
where people can grow and change. " 

But there the agreement seemed to end. 

Senge and his panelists spoke at length of how the organization works because of the 
way "we think and interact; of how companies should no longer have boss and workers but 
rather should have leadership throughout the organization; of everyone constantly asking 
questions of everyone else; of not expecting an outsider to come in and fix things but of 
expecting workers themselves to solve problems." 

And they spoke of everyone being given the ability to speak — through a series of dia- 
logues — and to share their own answers to problems at any level of the organization. 

"There's a deep desire within us to re-establish our ability to converse with each other," 
Senge said. 

Deming agreed the basis for any negotiation is for everybody to win. "But having ev- 
erybody talk does not produce knowledge," he said. "That only comes from hard work, and 
usually comes from outside the organization," he said. "You are digging deeper this pit we 
are in," he said. "Having everybody involved is not going to do it." 

Senge noted employees' morale will rise if they are involved. 

"That's not a measure of improvement," Deming retorted. "That (discussion) will not 
produce anything new. It will just dig the pit deeper."... 

Later, when panelists said they wanted to expand the concept of education, they noted 
the system of giving tests and letter grades is outmoded. Deming interrupted, noting their 
philosophy is "just as destructive in education as it has been in industry." 



The March 3, 1993 issue of Education Week ran the article "Center Lists Skills Both 
Disabled, Non-Disabled Should Have." An excerpt follows: 

A federally funded research center has unveiled a list of academic and life skills it says 
all students — disabled as well as non-disabled — should have upon leaving school. The wide- 
ranging list compiled by the National Center for Educational Outcomes at the University of 
Minnesota includes 25 outcomes for what young people should gain from school and 77 
indicators of whether those outcomes are being achieved. "We ought to be trying to achieve 
the best possible outcomes for all kids," said James E. Ysseldyke, the director of the Center. 
"We shouldn't have a separate system of outcomes and educators for disabled kids."... The 
life skills identified by the Center include the ability to get along with others, to be responsible 
for one's self, and to successfully manage daily life. Upon leaving school, the indicators say 
students should be able to make "healthy lifestyle choices," to cope with stresses, and to 
volunteer in their communities, among other outcomes. 



The Noxious Nineties : c. 1 993 



311 



[Ed. Note: The above makes sense in light of the fact that "scientific research-based" 
(behaviorist/operant conditioning) direct, systematic phonics (DISTAR or Reading Mastery) 
is the phonics reading program developed for special education students, which will be used 
for all students under the Reading Excellence Act of 1998 passed by Congress. This also fore- 
shadows the emphasis on full funding for the Individuals with Disabilities in Education Act 
(IDEA) in the 1999 debates over the reauthorization of the Elementary and Secondary Educa- 
tion Act (ESEA).] 

The April 14, 1993 draft of the Michigan High School Proficiency CoMMUNicAtions Arts 
Frameworks was published. Excerpts follow: 

Use Literature to Broaden Experiences 
To attain this goal literature is used: 

• to examine beliefs and attitudes. 

• to reshape students' thoughts by having them interact with other people and cultures 
who may have diverse perspectives. 

• to converse with other minds about important and significant issues. 

• to learn about human conditions that occur across time and space. 

• to gain insights into and reflect upon their own and others' lives, (p. 37) 

[Ed. Note: The first two "purposes" for the use of literature were removed in the 1994 Final 
Assessment Framework for the Michigan High School Proficiency Test in Reading due to con- 
troversy. Please check the 1994 entry on Michigan's Communication Arts Framework for an 
excellent explanation of the real purpose of whole language reading instruction.] 

"Interest in Character Education Seen Growing" was published in the May 1993 issue 
of the Association for Supervision and Curriculum Development's (ASCD) Education Update. 
Some excerpts follow regarding the move to develop programs which will be acceptable to the 
public while hopefully not resulting in lawsuits filed under the First Amendment to the U.S. 
Constitution over separation of church and state. According to ASCD: 

The subject of controversy and confusion in the last several decades, character education 
is making a resurgence in public schools. This movement is built on a growing consensus in 
favor of teaching a set of traditional or "core" ethical values in a more direct way. 

Experts tracking this trend say the character education movement is growing in response 
to pressure placed on schools both to reduce student antisocial behavior — including drug 
use and violence — and to produce more respectful and responsible citizens. 

The reawakening is occurring "because people are banging on the schoolhouse door," 
says Kevin Ryan, director of the Boston University Center for the Advancement of Ethics and 
Character. "The invitation is coming from outside. Parents and policymakers are disturbed 
by a total inability of our culture to pass on its values." 

Thomas Lickona, an author and professor of education at the State University of New 
York at Cortland, sees the motivating force as a "growing national sense of moral crisis and 
what people speak of as a steady moral decline." Some of the causes being discussed are 
the breakdown of the family, the failure of adults to exercise moral leadership, and the aban- 
donment of ethics at all levels. Society is now turning back to schools to transmit positive 



312 



moral values. Gallup Polls provide one indication of the growing support for school-based 
values education; polls in each of the last several years show that parents strongly agree that 
schools need to provide instruction on morals and moral behavior. 

But even with broadening public support, some schools may be reluctant to adopt 
explicit values curriculum partly because of the checkered past of values education and the 
fear of creating conflict with religious and ethnic groups over whose values to teach. 



The Effective School Report's May 1993 issue carried "Dialogues in iNTERNAtional Edu- 
cation" by Nick Zienau which discussed a conference in Sochi, Russia organized by the Ministry 
of Russia and a Norwegian network known as IMTEC which works with the U.S. Department 
of Education's Midcontinent Regional Educational Laboratory (McREL), the developer of Tactics 
for Thinking. The writer has selected the following curious excerpts which indicate that some 
fairly weird activities are taking place in Russia dealing with education and brain research, 
activities in which European and American educators are involved: 

Even organising a conference seemed beyond the capacity of the Ministry of Education 
itself! Some Westerners even left in impatience at the dreadful lack of movement in either 
the practical organisation of the event or in moving the discussions on beyond what seemed 
to them endless bizarre philosophical ramblings. 

So after 3 days in Russia, I was amazed when in a shoddy hotel in Sochi on the Black 
Sea, I first heard a young woman speak about Educational Cultures, alternative schools and 
with passion about philosophy and pedagogy. 

As Tatyana Kovalyova talked about her school in Tomsk with 25 teachers and 25 phi- 
losophers working together, I realized what an enormously different value is placed in Russia 
on education than in a rich West where 30 kids are likely to get one teacher between them. I 
could also see what an impact this had on the degree to which very fundamental processes 
of learning were understood and experimented with. 

. . .Active physicists and intellectuals seemed to be there as well as professional teach- 
ers, schools in which university staff taught seven-year-olds mathematics! And yet they 
were really interested in how children and people learn as a science — they kept talking 
about research they were doing.. . . Their continuous interest in research reminded me of TV 
plays about Crick and Watson researching the structure of DNA or the Manhattan project 
in the war when a team of scientists searching [sic] for the key to atomic bombs before the 
Germans got them. It was that same feeling of being in at the moment of discovery of some 
basic understanding of how the world works.... 

A lot of stuff is written in Europe about the ideas of the "learning organisation" but 
it was in Russia that I really found out what such a thing feels like. In Europe I believe we 
have always been restricted in these principles of learning by the resistance to new thinking 
that adults develop. In Russia and in particular in Eureka [Russian term for large teacher 
professional development seminars] I found a whole-hearted commitment to change and 
development that both impressed me and at times alarmed me. 

There is a kind of ruthlessness which seems associated with doing anything quite so 
singlemindedly, and so it is with Eureka. In the Russian context it seems rather natural that 
such a complete and radical approach to change is now possible. The question that I think 
Alexander and his colleagues confront us with is how far are we in the West really prepared 
to look at our basic assumptions and the evidence that things need to change?... 

Firstly, there seems an overwhelming need internationally to improve and develop the 
education system to prepare the next generation for a hugely different world.... The ending 



The Noxious Nineties : c. 1 993 



313 



of the cold war makes it possible to reunite threads of thinking and development in education 
and learning that have been long kept separate. 

...We believe we have reached a point of synergy between our team in the West and 
that of Alexander in the East that will result in an innovative new step in group learning for 
educators and those interested in the subject of learning systems. 

In the end, my best recommendation must be that I see the seminar in California as a 
further challenge, a further opportunity to develop together and a real chance to be at the 
cutting edge of development towards a 21st century that I want to be around in. Hope to 
see you all there. 

(Nick Zienau is a senior partner in Zienau Consulting which together with Cascade 
International of San Francisco is organising the seminar. The Russian partner in this enter- 
prise is Eureka Free University, Moscow.) 



Sustainable America: A New Consensus for Prosperity, Opportunity and Healthy En- 
vironment for the Future was published in 1993 by the President's Council on Sustainable 
Development. In chapter 3, "Information and Education," under a subtitle "Reforming Formal 
Education" the report says: 

Educating for sustainability does not follow academic theories according to a single 
discipline but rather emphasizes connections among all subject areas, as well as geographic 
and cultural relationships.... 

Education for sustainability is not an add-on curriculum — that is, it is not a new core 
subject like math or science. Instead, it involves an understanding of how each subject relates 
to environmental, economic, and social issues. 



An interview with Ken Hazlip and James Block was included in the Fall 1993 issue of 
Outcomes, the Outcome-Based Education movement's journal mentioned in previous entries 
in this book. Excerpts from that interview follow: 

Jim: To stay on this point about labels, this movement, this idea set, has made several 
choices of labels. At one time it was called Mastery Learning, another Outcomes- 
Based Education, and now Partners for Quality Learning. Yet much of what has 
driven this movement under the OBE label has not changed from Mastery Learning 
and what has changed still comes from the research done under the Mastery Learn- 
ing rubric. Will this new Quality Learning label stimulate a better idea base than 
the old label OBE? 

Ken: I doubt it. The power of our movement still derives from the original Mastery 
Learning idea.... 

Jim: When we were a Mastery Learning movement, we were concerned with schools 
and school districts. As we move to quality, we start to see linkages between school 
and the workplace.... 

Ken: Our school environment certainly does not look like this. The irony of the link- 
ages you describe is that we will have to look to industry to "fix" problems that we 
have imported from old industrial practices because we were trying so hard to look 
like factories years ago. 

Jim: I am a little surprised by your response. It seems to me that one of the charac- 



314 



teristics of the workplace is that it is organized to produce a product.... Surely you 
are not arguing that the workplace and the workworld is the same kind of place that 
we should generate for kids in our schools? 

Ken: Again, it depends on the level of health that the workplace presents us. 

Jim: So what we are in the business of doing is just generating little workers? Where 
do the kids come into the equation of this process? 

Ken: Kids should drive the terms forming the equation. We should be looking at them 
and their needs to determine how best to work with them, not forcing them into 
the mould our traditional classrooms and traditional methods require.... Most work- 
places are still 180 degrees away from this, however — they are negative, coercive, 
demanding. But many in the American workplace are reinventing or reengineering 
that workplace. Many are beginning to look at the "old" research that John Champlin 
mentioned in our summer interview — Getzels and Guba and their organizational 
development work, Herzberg's motivation-hygiene work, and Deming's ideas [TQM] . 
In reinventing the workplace, they believe it can be caused to be both productive 
and satisfying for the worker. We can create that in the classroom and have kids 
who are challenged, motivated, and excited to be there.... 

Jim: . . .Our movement has based its efforts on the research, but apparently the research in 
this case is perceived as either out of date or out of fashion. Why do we need to look 
outside to industry for models that we have described inside the ML/OBE field? 

Ken: So many of the concepts presented by business gurus about workplace change 
are summed up very well in Mastery Learning's basic beliefs. 

Jim: Is it that people within the Mastery or the Outcomes movement can only go so 
far, or do we need a swift kick from the outside? 

Ken: As far as our mental models go, experience and environment have put burden- 
some blinders on us, and many will not see the implications of ideas until they are 
approached from a different perspective. I would rather we did not need so many 
detours, but if Deming gets us closer to better schools, then we "do" Deming. I 
incorporated his ideas and many business models when I was directing a district's 
restructuring efforts. We all want the research to drive our efforts, but our movement's 
Mastery Learning research exists in a broader context, and education research just 
does not have a lot of credibility among too many educators. The reasons are mostly 
poor ones, but they exist nonetheless and form a real barrier to change. If Deming 
presents an idea without the research prejudice baggage attached, I will start with 
Deming and end up teaching the group about the research. 

A LETTER FROM LAWRENCE W. LEZOTTE, PUBLISHER OF EFFECTIVE SCHOOLS RESEARCH Abstracts, 

was written to his colleagues in September, 1993. An excerpt follows: 

First, whether or not you have been engaged in this debate as yet, you need to become 
familiar with the concerns and issues of the Christian Coalition. You must be prepared to 
respond to its challenges, which are often based on half truths and misinformation. These 
issues must be carefully and clearly explained to those citizens who wish to hear the edu- 
cators' point of view. This will require all of us to be familiar with the research on such 
important topics as Mastery Learning, Continuous Progress, and De-Tracking — to mention 
just a few. Second, to develop mainstream community involvement, I strongly recommend 
that school and district leaders create a task force to study the issues related to school reform 
and be prepared to present their views along with the views that will be presented by the 
Christian Coalition. I truly believe that if educators have to debate the coalition alone, more 
often than not, educators will lose the debate on school reform. We need to make sure that 



The Noxious Nineties : c. 1 993 



315 



a broad cross-section of our citizens are involved in the important debate on the future of 
public education and, in turn, the future of our nation. 

[Ed. Note: While this author thinks it is remarkable that Dr. Lezotte would admit to being 
at a disadvantage in combatting "resisters," it is somewhat unfortunate that he should give 
credit to only one organization as being responsible for the opposition which restructuring 
has encountered. A broad cross-section of the country — including teachers and administrators 
in public schools — has been in the camp of the "resisters" when it comes to restructuring. 
The writer finds it hard to believe that the educational establishment — with the extraordinary 
resources at its disposal— was unable to obtain the support of the community, and found it 
necessary to use Ronald Havelock's change agentry on the citizenry. 

In writing this letter Lezotte evidently fired the first shot of warning to the education com- 
munity, for not six months after Lezotte's letter was written, a researcher downloaded from 
the internet the National Education Goals Panel's Community Action Toolkit, which contained 
instructions for combatting community resistance to restructuring. It provided recommendations 
for action by specific community entities— the press, civic organizations, religious entities, and 
business— and samples of letters to the editor, advertisements, supportive flyers, and public 
service announcements, for use in building support for local educational restructuring. One of 
the most distasteful results of this effort was the recommended manipulation of the religious 
community. (See Appendix XIV.)] 

The impact on education of the United States signing the North American Free Trade 
Agreement was discussed in an article entitled "USIAs Grants Go to Schools in NAFTA Na- 
tions" published in the September 12, 1993 edition of The Washington Times. Some excerpts 
follow: 

United States Information Agency Director Joseph Duffey attending a four-day "imple- 
mentation" conference at Vancouver, British Columbia, yesterday announced the first North 
American three-way university affiliation grants to involve exchanges of faculty and staff 
among Canadian, Mexican and U.S. universities for teaching, lecturing, research and cur- 
riculum development. 

"We often have university affiliation grants," Mr. Duffey said in an interview before 
he left for Vancouver. "This is the first time we've decided to start awarding three or four a 
year that involved three countries in North America."... Each USIA award will carry about 
$100,000, plus travel and per diem expenses, for exchanges of faculty, administrators and 
educational materials. 

The agreement, part of the broadened dialogue that has come out of the North Amer- 
ican Free Trade Agreement, will support an array of projects focused on history, economic 
development, international trade and the environment. 

"What we seek to do is, among other things, nothing less than dismantling barriers to 
academic mobility," Mr. Duffey said in a speech at the conference. 

Mr. Duffey said he expects the North American countries to succeed in achieving a 
sense of regional community where the quest for a common community of nations in West- 
ern Europe has foundered. 

"We're trying to reverse the tradition of nationalism and people, who in looking to 
their identity, look backwards to the past," he said. "Instead, we want them to look to the 
future." (p. A-5) 



316 



The following letter from Utah Governor Michael O. Leavitt and his State Superin- 
tendent of Public Instruction Scott W. Bean, dated September 30, 1993, gave a clear picture of 
the role of the governors of the individual states in implementing United Nations Educational, 
Scientific and Cultural Organization's (UNESCO) lifelong learning "cradle-to-grave" agenda in 
the United States. Utah's state report, "A Utah Perspective on the National Education Goals," 
was written and edited by Dr. David E. Nelson of the Utah State Office of Education who was 
also involved in the 1984 Utah OBE grant. Some excerpts follow: 

At the education summit in Charlottesville, Virginia, in September 1989, the nation's governors 
agreed to establish national education goals and a system to assess and monitor progress 
toward achieving them. Today, September 30, 1993, the anniversary of the historic summit, 
the National Education Goals Panel will issue its third annual education report. The report 
will focus on national and state progress toward achieving the education goals set in 1990 
by the President and the governors. This progress report will inform the nation on how 
well we are doing on each of the goals. The governors also agreed to report individually on 
efforts of their respective states related to their state's performance toward achieving the 
national goals. 

Our own report, "A Utah Perspective on the National Education Goals," is issued to 
citizens of the state of Utah to inform them on the progress being made in our state toward 
the national goals. Because the goals are "cradle to grave" and cover the preschool years and 
the after school years, the information has been compiled from many state agencies. Meeting 
all of these six goals will require the coordination and work of all state agencies. 



In Lonnie Harp's article "Widely Mixed Test Results Leave Some in Kentucky Puzzled," 
which appeared in Education Week's October 13, 1993 issue, the problems with the national 
reform leader's implementation of its widely-acclaimed restructuring — Kentucky Education 
Restructuring Act (KERA) — were outlined. An excerpt follows: 

As Kentucky moves toward implementation of its path-breaking system of rewards and 
sanctions for schools, state students have handed officials a hard-to-read snapshot of the 
progress of reform. 

Results of the second year of a new open-ended assessment system, released last month, 
produced widely mixed results and, in the case of older students, some troubling declines. 



The November 15, 1993 issue of The Atlanta Constitution carried an article entitled 
"Ware Students Are Drawn to Swampy Experiment: Magnet School Makes Okefenokee Its Lab." 
Outlining what could be interpreted as the use of magnet/charter schools in a school-to-work 
scenario, excerpts follow: 

The Ware County School of Agriculture, Environmental and Forestry Sciences is an experiment 
in educational excellence that was years in the dreaming and application-pending stages. 

The concept was to create a magnet school unlike any other in the Southeast, a school 
where the study of sciences most important to the surrounding land would be incorporated 
into almost all the curricula. That would produce graduates oriented toward the disciplines 
most needed by employers in the region's forestry and agriculture industries. 



The Noxious Nineties : c. 1 993 



317 



In 1993 the School to Work Opportunities Act passed the House of REPRESENTAtives without 
a roll call vote. [It passed the Senate in 1994, ed.] This legislation called for Soviet/German 
full employment/quota-type system, incorporating the Danish model for polytech education. 
Anyone familiar with this legislation will recognize the similarity between its wording and the 
late Professor Eugene Boyce's definition of communist polytech education (found in this book's 
1983 entry for The Coming Revolution in Education) which states that the communists "do 
not educate people for jobs that do not exist. No such direct, controlled relationship between 
education and jobs exists in democratic countries." 



In a critique of H.R. 6 — The Elementary and Secondary Education ReauthorizaUou Act 
of 1993 — Cynthia Weatherly wrote in a memo to this writer: 

HR 6 is an omnibus bill originally presented to Congress in January 1993 as a reauthorization 
bill for The Elementary and Secondary Education Act of 1 965. The first and last paragraphs 
of this 901 -page tome are the only parts of the original bill which remain. 886 pages are 
printed in italics, which means that there are 886 pages of new language, otherwise known 
as "new law." Goals 2000 and the National Education Goals Panel form the framework for 
HR 6. All of the education proposals in HR 6 are constructed in such a way as to cause "the 
nation to meet the national education goals." Therefore, instead of a reauthorization bill for 
ESEA 1965, HR 6 becomes the implementation bill for Goals 2000 and the School-to- Work 
bills. One of the most controversial components included in HR 6 deals with basic pedagogy 
in which the framers deny the need for basic skills acquisition before engaging in more 
complex tasks. References to more controversial components follow: 

[T]he "disproven theory that children must learn basic skills before engaging in more 
complex tasks continues to dominate strategies for classroom instruction, resulting in 
emphasis on repetitive drill and practice at the expense of content-rich instruction, ac- 
celerated curricula, and effective teaching to high standards. Use of low-level tests that 
are not aligned with curricula fails to provide adequate information about what children 
know and can do and encourages curricula and instruction that focus on the low-level 
skills measured by such tests. 

[H.R. 6] Provides for restructuring of our nation's education and social services delivery 
systems.... Local schools may use federal funds to serve as centers for delivery of education 
and human services for members of the community; unaccountable consolidation of pro- 
grams; waivers of laws, outcome-based education language and practices; parents as partners 
skill training; i.e. "All parents can contribute to their children's success by helping at home 
and becoming partners with teachers so that children can achieve high standards." Requires 
school-parent compacts that outline how parents, staff and students will share responsibility 
for student achievement and means by which school and parents will build and develop a 
partnership, etc.; facilitates school-to-work transition; encouragement to pursue public school 
choice, and development of charter schools. 



Welcome news on the outcome-based education front was reported in an article entitled 
"In Littleton, Colorado, Voters Expel Education Faddists," which appeared in the November 
18, 1993 issue of The Wall Street Journal. Excerpts from this article which illustrate how David 
overcame Goliath in the late twentieth century and reveal the extent of controversy raging in 
Littleton over its school system's adoption of "outcomes-based education" (QBE) follow: 



318 



There [Littleton, CO.], a slate of three "back-to-basics" candidates crushed another 
coalition, including two incumbents, that supported a host of trendy educational reforms 
and was backed by the educational establishment. All 15 principals, for example, released 
an open letter to voters denouncing the insurgent slate. Yet the margin of victory was nearly 
2 to 1. What had so galvanized voters? The fact that their district is a national leader in 
implementing "outcome-based education" (OBE) and that officials there had, as the journal 
Education Week explained in a pre-election article acknowledging the contests' significance, 
"pioneered new performance assessments and standards for high school graduation." 

. . .Having acknowledged that American schools are in need of improvement, a growing 
number of educators are gravitating toward the view that the fault lies in too much emphasis 
on "content knowledge" and not enough concern, to quote the Littleton principal again, 
with "decision-making skills, thinking skills, and the ability to find and use information." 
Or, to quote the Littleton elementary principals' letter, students "must do more than spell 
and compute. They must be able to reason, persuade and solve problems." 

Nevertheless, OBE proponents, with their emphasis on "thinking skills," repeatedly 
contrast their theory with an approach that hasn't been in vogue for decades, one of perpetual 
rote learning in which all creativity is stifled. Education Week is typical in presenting this 
caricature. It described the Littleton reforms as nothing more than encouraging students "to 
focus on problem-solving rather than memorization" — as if a nation in which only 32% of 
17-year-olds in a 1986 survey could place the Civil War in the correct half-century was in 
danger of stuffing too many facts into students' heads. 

Across America, school districts are considering, or putting in place, reforms similar 
to those in Littleton. Educators, often with the best of intentions, are rewriting report cards 
to include fuzzy criteria such as self-esteem and interpersonal relationships. They are deni- 
grating standardized measurements of knowledge and the memorization of facts. To be sure, 
not all of the rethinking is misguided, but some of it amounts to dubious experimentation 
on children. Littleton proves that with the proper candidates, the movement toward a vague, 
"skill-oriented" curriculum can be stopped in its tracks. 

[Ed. Note: Very regrettably the above refreshing and impressive victory over the bureaucracy 
was short-lived. Slick change agent tactics managed to bring at least one new supposedly anti- 
reform, back-to-basics board member "on board" what one hoped to be a sinking ship, thus 
assuring a return to implementation of the "nationally-detested" OBE. Littleton, Colorado be- 
came one of Willard Daggett's Model School systems and a national model for implementation 
of outcome-based education. 

Six years later Littleton tragically made front-page news nationally and internationally 
when on April 20, 1999, two teenagers at Columbine High School killed twelve students and 
one teacher, wounding many others with shotgun blasts, automatic pistol fire, and homemade 
pipe bombs, after which they took their own lives. This was the worst of what has become 
a rash of school violence against fellow students and teachers by young people. The sites of 
this lengthening list of tragedies are also sites of schools and school systems which have been 
restructured and embraced the outcome-based/performance-based/mastery learning concepts 
of schooling, with all the programs and methods with which they are associated. This writer, 
in a letter to the editor published by several national journals, discussed what she perceives to 
be a possible cause of such violence. The text of this letter is reprinted here in its entirety: 

An important question should be examined in regard to the tragedy in Littleton, Col- 
orado. "What was going on inside the brains of the two boys who committed this terrible 
crime?" 



The Noxious Nineties : c. 1 993 



319 



Not only should Americans point the finger at violent television as a reason for copycat 
violence. They should examine the effects of computers and computer games on the human 
brain. I am no expert, but the computer is an operant conditioning machine and no less than 
the late Harvard Professor B.F. Skinner, the father of operant conditioning, referred to it as 
"his box." Operant conditioning bypasses the brain with all the important functions which 
distinguish man from an animal: memory, conscience, imagination, insight, and intuition, 
functions by which human beings know absolutes and truths and are able to know God. 

Use of computer programming (simulation/virtual reality) to train individuals to fly 
an airplane, perform surgery, etc. serve a very useful purpose. On the other hand, the same 
simulation/ virtual reality computer war game videos which allow the individual to engage 
in killing in a bloody and violent atmosphere, played over and over again, desensitize the 
individual to the evil act of killing, whereby the individual, as a programmed robot, finds it 
increasingly easy to carry this distorted vision of reality outside into other areas of his life, 
such as a school building or playground. If that individual happens to be full of hatred, it 
doesn't take much imagination to figure out what "programmed" action he or she may take 
in order to vent that hatred and frustration. 

The use of computer-assisted instruction in school, which unfortunately has been ac- 
cepted as the alternative to traditional education, should also be of some concern to those 
seeking an answer to school violence. The same operant conditioning, upon which school 
programs for all disciplines is based, can be used for training an individual to perform. 
Skinner said "I could make a pigeon a high achiever by reinforcing (rewarding) it on a 
proper schedule" and "What is reinforced (rewarded) will be repeated." Such "training" is 
not "education" in the traditional sense since it does not transfer. With traditional academic 
"education" a student is capable of transferring what he learns to other areas of his life, at 
some future time. He can store the information for future use; it is in his brain where it is 
able to be reflected upon, where his soul, memory and conscience are able to influence the 
information and decisions he makes. 

Not so with operant conditioning where no such transfer occurs. Children who spend 
their school years "learning" (being "trained") in this manner can be expected to experience 
a certain frustration and dehumanization in their behavior since the creative functions of 
the brain are being constantly cut off. Operant conditioning experiments on animals have 
caused similar frustration and violent behavior. 

If Littleton, Colorado schools are anything like other schools around the nation, they 
are using the highly controversial "scientific research-based" Outcome-Based Education/ 
Mastery Learning/Direct Instruction based on Skinnerian behavioral psychology, which is 
necessary for School-to-Work programs and workforce training. OBE and computer-assisted 
instruction go together as a hand fits in a glove. The combination amounts to a most lethal 
concoction for our children. 

I fear that unless we examine the use and effect of video games and the use for twelve 
years of computers in the classroom we may experience more Littletons. Is it too far-fetched to 
assume that he who is trained like an animal may just end up behaving like an animal?] 



Eddie Price, a 39-year-old social studies teacher with seventeen years of TEACHing ex- 
perience, wrote "A Reign of Terror — Impressions of KERA" which appeared in the December, 
1993 issue of The Hancock Clarion of Hawesville, Kentucky. Excerpts from his important and, 
one might point out, extremely courageous article follow: 

I would never do anything to jeopardize my teaching career or, even more importantly, the 



320 



security of my family, but I MUST speak out against what I perceive as a massive wrong in 
education — the Kentucky Education Reform Act (KERA) . 

The perpetrators of KERA began inundating our schools with mountains of regulations, 
restrictions, and KERA mandates.... When we expressed our concerns we were told "Be 
patient.... Give KERA a chance.... Teachers, we need your help. This is a partnership." 

KERAs Outcomes appeared to throw the hard, objective, factual subject matter out 
the window in favor of affective goals (more concerned with emotions and feelings) . Our 
curriculum would have to be pared down and structured around values and attitudes. 

When teachers voiced concerns about not meeting the Valued Outcomes, they were 
"soothed" with the explanation that schools would be given the chance to improve. "A 
'Kentucky Distinguished Educator' will be sent to your building to help you grow." Then I 
learned that this official had the absolute power to declare the school "A School in Crisis"! 
The principal, and individual teachers could be eliminated with the single stroke of a pen. 
Past performances, evaluations, educational degrees, experience, awards, student achieve- 
ment outside of KERA would mean nothing.... 

When I sat down and read the entire history of KERA's evolution, I realized that our 
lawmakers and, even worse, our public had been skillfully and strategically duped. KERA 
had been slickly packaged in deceptive language of "glittering generalities" that the public 
seemed eager to swallow in the name of reform. Who could argue with such glossy words 
as "excellence," "revamping," "progress," "outcome-based," "self-esteem," etc., unless they 
are "traditional," "hidebound," "inflexible," and "resistant to change"? I realized that our 
distinguished and infallible commissioner basked in the full limelight of a press he had mas- 
terfully managed. Kentucky newspaper editors had been appointed to state committees in 
the name of "progress" and their editorials provided — free of charge — an excellent soapbox 
from which to indoctrinate the public. Pro-KERA articles and comments have no problem 
making headlines while others with opposing views must pay exorbitant sums for "political 
advertisements." School principals and test scores can be subjectively manipulated from 
above to bring down the Kentucky Distinguished Educators upon schools "not politically 
correct." For a "dissident," teaching in the public schools today is similar to living under a 
Stalinist "Reign of Terror." 

This is all so incredibly un-American that someone, maybe the FBI again, must inves- 
tigate our legislature to discover how and why such a massive piece of legislation passed 
without more discussion. How many millions have already been squandered? How many 
millions more? No one truly had a chance to examine it fully. The public education hear- 
ings held across the state were structured around a preconceived plan devised by a national 
organization — the Pritchard Committee. The whole thing was rammed down the public's 
throat before anyone could mobilize. Most concerned were placated by the false notion that 
parents and teachers would have more control with the "depoliticalization" of education. 
The end result? Our local, elected school boards (those most responsive to a community's 
needs) were virtually stripped of their power while state control drastically tightened. The 
state now mandates the outcomes, approves the curriculum, trains the teachers, and judges 
the performance of students — all of which must conform to KERA. 

[Ed. Note: Had the media, over the past ten years, been willing to publish the many articles 
and letters to the editor which mirrored Eddie Price's concerns, the national restructuring ef- 
fort would be dead in its tracks. Even with censorship of opponents' views, restructuring has 
run up against intense opposition and is "in deep trouble. " An article which appeared in the 
October 10, 1998 issue of the Louisville, Kentucky Courier Journal entitled "Kentucky Schools 
Test Scores Vary Little from Last Year" shows that KERA has been a total flop, as have all 
the other multi-million dollar, corporation-backed state reform acts implemented across the 



The Noxious Nineties : c. 1 994 



321 



country. Wherever Carnegie's David Hornbeck goes one can expect a first-class academic flop! 
Of course, flops are essential in order to convince the public that "workforce training" is the 
solution — the deliberate dumbing down at work.] 

1994 

U.S. Coalition for Education for All: A History was published in 1994 by the U.S. Coalition 
for Education for All based in Washington, D.C. Excerpts from that publication follow: 

U.S. delegates from government agencies and non-governmental organizations participated 
in the 1990 World Conference and helped to prepare the Education for All (EFA) goals and 
action plan. In February 1991 the U. S. Coalition for Education for All (USCEFA) was created 
to promote EFA awareness and activities in the United States and to serve as a link to the 
global EFA movement.... In 1991, USCEFA held its first major conference, "Learning for All: 
Bridging Domestic and International Education."... 

. . .From this conference the USCEFA's agenda unfolded. USCEFA organized a symposium 
entitled "Integrating Social Services and Education: A Look at Collaboration and Delivery." 
At the first meeting of the International Consultative Forum on EFA, U.N. sponsors singled 
out USCEFA as a model for national initiatives supporting basic education worldwide. This 
forum selected USCEFA to lead an international task force to explore the involvement of 
media in education.... 

USCEFA's 1994 main events included: a symposium entitled "The Educational Impli- 
cations of NAFTA" [North American Free Trade Agreement] that addressed educational issues 
emerging in the wake of the signing of the NAFTA agreement; co-sponsorship of a global 
teleconference entitled "Global Interdependence: the United States and the Third World." 
USCEFA's most prominent 1994 event is its December conference; "The Revolution in World 
Education: Toward Systemic Change." This conference explores systemic change in education 
and the achievement of educational goals and outcomes around the world. . . . USCEFA will 
continue to cooperate internationally to keep the spirit of the Jomtien Conference alive and 
to make Education for All a reality at home and abroad. 



"To OBE or Not to OBE?" was the question posed by Marjorie Ledell, associate of Wil- 
liam Spady's in his High Success Network, in her article for Educational Leadership's January 
1994 issue. From page 18 we read: 

Finally, raise the real issue and depend on democracy. Don't let "to OBE or Not to OBE" 
or "to implement or not implement efforts to improve student learning" cloud the overdue 
national debate about whether public education should exist or be replaced with publicly 
funded private education. 



The January 1994 issue of The Effective School Report carried an article ENtitled "Alter- 
native Assessment of Student Achievement: The Open Book Test" by Thomas A. Kelly, Ph.D. 
An excerpt follows: 



322 



All classroom tests should be open book tests.... We are moving toward higher level think- 
ing and away from memorization of facts. Give them the facts. Once we leave school, we 
can use references any time we want. We are no longer required to memorize endless lists 
of facts, formulas, etc. Open book tests will move school activities much closer to real life 
activities. The human brain should be used for processing, not storage. 

[Ed. Note: Initially the writer's reaction to this quote was disbelief, and then plain revulsion 
over what can only be referred to as a pervasive mindset found in those educators who have 
been "transformed" into managers of the learning process, total quality technicians, etc. A 
true understanding of the significance of Dr. Kelly's statement came to me only after GenYvette 
Sutton, a fine researcher from Pennsylvania, made the following perceptive comments as 
part of her contribution to a video entitled "The Truth behind Outcome-Based Education" in 
which this writer also participated. 32 In the segment of the video dealing with the dangers of 
Skinnerian operant conditioning used in computer programming, the new emphasis on critical 
thinking, and Dr. Kelly's comments regarding the brain being used for processing and not for 
storage, Sutton said: 

True education should expand all the faculties of the mind: memory, conscience, imagi- 
nation, insight, intuition and brain. When you just process information, you deny or cut 
off those other functions of the mind and reduce it to the brain alone, which is just simply 
[responding to stimuli]. The danger is unbelievable.... 

Columbia Teachers College held a symposium on "Knowing: How We Come to Know 
Things" and how important this is. Some speakers said that much that is being done in 
education denies these other functions of the mind and reduces them to the [responsive] 
brain alone. They reminded us that those other functions — memory, conscience, imagination, 
insight, and intuition — are the functions by which we know absolutes and truths, [discern 
right from wrong], and are able to know God. 

Outcome-based education, because it concentrates on the "end product" of its process, 
can be said to restrict the student's mental functioning to the level Kelly described as "pro- 
cessing." The predetermined goals and outcomes prevent the student from using brain func- 
tions which make him unique as a human being. Success in an outcome-based environment is 
restricted to performing prescribed tasks to the point of automaticity. The functions of memory 
and creativity are not used, nor are they considered necessary to succeed in an OBE program 
or any program that uses Skinnerian mastery learning or direct instruction. Predictability is 
the bottom line for OBE, limiting the student to only those responses which are prescribed. 
When trained by OBE methodology, the student cannot fail unless he employs creativity and 
produces an unpredicted response. In an OBE environment, he can believe only that which 
is acceptable. The most predictable outcome, over time, is frustration— and ultimately, low 
achievement and behavior problems. We should be reminded that robots, although generally 
reliable, have no feelings and are not governed by conscience. . 

What a chilling thought.] 

Education Week carried an article in its March 16, 1994 issue entitled "Back to the 

Future — with Funding from NASDC and Direction from the Hudson Institute, the Modern Red 
Schoolhouse Updates an American Icon for the 90's" by Lynn Olson. Excerpts follow: 



The Noxious Nineties : c. 1 994 



323 



Of all the design teams funded by the New American Schools Development Corporation 
in 1992, the Modern Red Schoolhouse was the one with the closest ties to the Republican 
Administration then in power and its ideological heart.... 

. . .Its chief sponsor is the Hudson Institute, a public policy center based in Indianapolis 
that made its reputation analyzing national security issues. Hudson's board of trustees includes 
former Gov. Pierre S. du Pont, IV, of Delaware and former Vice President Dan Quayle. 

William J. Bennett, a U.S. Secretary of Education under President Ronald Reagan, served 
as chairman of the design team. Bennett, an outspoken proponent of private school choice, left 
the project last year when he formed Empower America, a conservative think tank based in 
Washington. Bennett once described the Modern Red Schoolhouse to The Washington Times 
as a "conservative plan with the three C's at its core: content, character, and choice." 

Yet, in many ways, the Modern Red Schoolhouse defies political or ideological labels. 
Some of its instructional approaches, such as multi-age homerooms and self-paced learning, 
would be considered "radical" by observers on both sides of the political aisle. 



President Clinton signed Goals 2000 Act on March 24, 1994. This legislation laid a large 
portion of the groundwork for radical restructuring of the nation's schools from the teaching 
of academics to workforce training. 

Michigan's State Board of Education adopted the final version of the CoMMUNicAtion 
Arts Framework for the High School Proficiency Test in April of 1994. Extensive excerpts from 
the Framework, representative of standards adopted throughout the country intended to assist 
students in entering the workforce or in pursuing higher education, follow: 

Assessment Framework for the Michigan High School Proficiency Test in Reading 

INTRODUCTION 

One of the more widely used methods of control is legislatively mandated graduation stan- 
dards that require students to pass state mandated tests (Berk, 1986).... The lesson seems 
to be that if tests remain inadequate, so will the curriculum they influence. 

The challenge for Michigan is to create a reading/communication arts framework for 
curriculum and assessment that does not narrow the curriculum. To prevent this from hap- 
pening, the Model Core Curriculum Outcomes in Reading, the foundation upon which the 
proficiency test is based, must be incorporated into a framework that is consistent with the 
emerging trends in the field. The Model Core Curriculum Outcomes in Reading are derived 
from the Michigan Reading Association's definition of reading (Wixson & Peters, 1984). The 
definition provided a theoretical foundation for changing reading instruction and assessment 
in the state. It is based on a constructivist view of reading that posits, "Reading is the process 
of constructing meaning through the dynamic interaction among the reader, the text, and 
the context of the reading situation." (Wixson & Peters, p. 4)... 

While the constructivist perspective is a useful way to view the reading process, it must 
be expanded to include the social dimension of learning. This perspective is best illustrated 
by the work of Vygotsky (1978). He contended that higher cognitive learning is rooted in 
social connections; and as a result, knowledge is socially constructed as learners engage in 
holistic and authentic activities (Englert & Palincsar, 1991; Palincsar & Klenk, 1992).... 

A common feature of the constructivist and socioconstructivist views of reading is the 
importance placed on metacognition — purposeful, effortful, self-regulated, active, intentional 



324 



learning.... What is called for is a vision of curriculum that incorporates a socioconstructiv- 
ist view of reading into a curriculum framework that defines the context for constructing 
meaning in a way that is consistent with the Model Core Curriculum. 

A New Vision 

For too long a period of time the reading/communication arts area has avoided the question: 
Is there a content to reading/communication arts? [emphasis in original] ... At the elementary 
level the predominate focus is process — reading, writing, viewing, listening and speaking. 
While literature has recently assumed a more prominent role, the ideas and issues that persist 
and recur over time are relegated to a secondary level of importance. As a result, literature 
instruction at the elementary level is haphazard at best (Walmsley & Walp, 1992). 

At the middle and high school levels the emphasis is primarily on content, content 
which is often narrowly defined by literary studies of the canon. Instruction resembles more 
of a transfusionist's perspective in which students receive information much in the same 
way patients receive blood (Applebee, 1989; Crews, 1992). Taught in this manner, content 
is memorized, regurgitated, and trivialized. When this occurs, the high school literature 
curriculum becomes decontextualized and fragmented (Purves, 1992). In this context the 
primary goal is to understand a novel, short story, poem, or play; the result is that the liter- 
ary work becomes the end rather than a means to the end. What is absent from both the 
process and content perspectives is the application of knowledge in authentic ways. What is 
needed is a vision of reading/communication arts curriculum that more explicitly defines the 
context for constructing meaning in a more meaningful way, one that fosters active learning 
in authentic contexts such as the home, community, and the workplace. 

An Expanding View of Text 
[T]here is more to developing a curriculum than content. The ideas, themes, issues, and 
problems that make up the content of text must be placed in a framework that is linked to 
other considerations such as: what is to be learned, how it is to be learned, in what context 
it is to be applied, and how is it to be assessed? The framework becomes the common thread 
that ties together all the components of the instructional system. 

...The context in which this type of learning occurs is prescribed by a reading/ 
communication arts curriculum that provides students with learning opportunities. These 
learning opportunities... apply their existing knowledge to issues and problems that result 
in new understandings, to synthesize and communicate what they have learned, to generate 
new knowledge or creative applications, and to think critically about the content and make 
decisions or take actions that relate to it. This type of innovative curriculum points the way 
toward higher, richer levels of knowing that are assessed in authentic ways. 

Overview of the Framework 
The primary goal of the Reading/Communication Arts Framework described in this document 
is to develop independent, self-sufficient, lifelong learners whose understandings and capa- 
bilities allow them to become personally, socially, and civically involved in the world around 
them. . . requires the integration of disciplinary knowledge with learner characteristics that 
promote positive attitudes and dispositions. These elements... guide the systematic delivery 
of the curriculum. Student achievement of the goals is determined by an assessment system 
that uses authentic performances to evaluate student proficiency. (See Figure 1) 

Figure 1 

Communication Arts/Reading Framework for Curriculum and Assessment 

GOALS 

RESOURCES 



The Noxious Nineties : c. 1 994 



325 



DISCIPLINARY KNOWLEGE LEARNER CHARACTERISTICS * Literary Knowledge 

* Dispositions of Thoughtfulness * Discourse Knowledge *Metacognitive Knowledge 
*Process Knowledge *Attitudes and Perceptions 

AUTHENTIC APPLICATION OF KNOWLEDGE * Engaging * Meaningful * Functional 

* Integrated 
READING OUTCOMES 
CURRICULUM CONSIDERATIONS 

ASSESSMENT SYSTEM *Model Tasks *Portfolio *On-Demand Tasks 

[Ed. Note: The material that was emphasized in the Assessment Framework for the Michi- 
gan High School Proficiency Test in Reading above is an excellent explanation of the Whole 
Language philosophy. When education materials refer to "authentic" applications of learn- 
ing, that means reading or any other learning which is "applied" in a real world setting; for 
instance, manuals of instruction for operation of household appliances, or letters to the editor 
concerning a topic which has been discussed in the classroom and about which the student 
has formulated an "acceptable" position. Anywhere the Michigan Framework mentions "social 
dimensions of learning" or "socioconstructive views of learning" it is saying that learning has 
to be applied in a social setting or have a social end. In this context, learning for the sake of 
learning and without prejudice regarding a social point of view is unacceptable. There must 
be a "social construction" taking place for the learning to be meaningful. This is a good il- 
lustration of how children obtain a social/political point of view which is often contrary to 
that of their parents. 

The reference to and building upon the work of Vygotsky indicates the waywardness of 
the Michigan Framework. L.S. Vygotsky was a Soviet psychologist and mentor to the infamous 
psychologist of the same origin, A.R. Luria. Vygotsky and Luria conducted research in the teach- 
ing of higher level skills — known in this country as Higher Order Thinking Skills (HOTS) — which 
deals with the changing of attitudes, values and beliefs. "Constructivist" learning is a term 
which Vygotsky used when training teachers to "build on the knowledge that children have 
already obtained" and which is often mistaken to mean building one concept upon another. 
This could not be further from the truth. With Vygotsky in mind, the building of knowledge 
is always in a particular direction — that which has been determined by the social/political 
outcomes desired by the one who is teaching or directing the student's efforts. The Michigan 
Framework — and most other states' frameworks — are based on the idea that the "method of 
control" is a state-mandated test which reflects the curriculum— teach to the test.] 

Education Week published the article "Success with Coalition Reforms Seen LiMited in 

Some Schools" by Debra Viadero of New Orleans on April 13, 1994. An excerpt follows: 

Some of the first studies to look at the acclaimed Coalition of Essential Schools reform net- 
work suggest that some participating schools are having limited success in implementing 
its ideas. 

Five studies on coalition schools were presented here last week during the annual meet- 
ing of the American Education Research Association. Collectively, they draw on the expe- 
riences of 24 schools nationwide. The coalition currently has nearly 160 member schools. 

Four of the five studies suggest that, while some teachers have made profound changes 
in their teaching styles as a result of involvement in the coalition, few, if any, of the schools 
studied have implemented its philosophy wholesale. Some schools, facing teacher dissension 



326 

or financial or district pressures, have abandoned it. 



The National School Boards Association (NSBA) recommended radical changes for lo- 
cal school boards at its annual meeting in New Orleans in April of 1994. An article entitled 
"N.S.B.A. Endorses All Alternatives to Traditional School Governance" in Education Week for 
April 13, 1994 relates the following: 

"A New Framework for School Governance" endorses school-based decisionmaking, charter 
schools, and other alternatives to traditional governance structures, provided they meet local 
needs.... Much of the report focuses on improving the alignment of government services at 
all levels so that children can meet high academic standards. 

In addition to the national education goals, the new report advocates the creation of 
national goals for child and youth development.... Establishing explicit, substantive goals 
based on children's needs will allow providers to coordinate services more effectively and 
insure that help is available to those in need. 

[Ed. Note: What a difference seventeen years can make! On March 27, 1977 the immediate 
past president of the National School Boards Association warned school board members "to 
be aware of and leery of. . . proposals for public involvement in public school operations that 
would shift decision-making authority to 'vaguely-defined groups of citizens' at the school 
site level," which is exactly what NSBA meant when it called for "alternatives to traditional 
governance structures" in 1994.] 

SCHOOL-TO-WORK TRANSITION IN THE UNITED STATES: THE CASE OF THE MISSING SOCIAL Part- 
ners — A Report of the Governance and Finance Team of the Comparative Learning Teams Project 
(Center for Learning and Competitiveness, School of Public Affairs of the University of Maryland: 
College Park, Md., 1994) was prepared by Robert W. Glover, team leader for the Center for the 
Study of Human Resources, and Alan Weisberg, Foothill Associates, with assistance from team 
members: Andrew M. Churchill, Jobs for the Future; Sharon Knotts Green, Motorola, Inc.; 
Robert McPherson, Center for the Study of Human Resources; Janet Lewis, Hewlett Packard 
Corporation; Quint Rahberger, Oregon Bureau of Labor and Industries; Mark Scott, Center for 
Learning and Competitiveness; and F. Eugene Scott, Sutter Health Systems. This document 
was published as a joint project of the Center for Learning and Competitiveness (CLC) and 
The Greater Austin [Texas] Chamber of Commerce. 

The CLC Advisory Board includes the following persons: The Hon. William E. Brock, 33 
chair, senior partner of The Brock Group; Dr. Anthony P. Carnavale, director of Human Resource 
Studies, Committee for Economic Development; Nancy S. Grasmick, state superintendent of 
schools for the State of Maryland; Dr. Herbert J. Grover, professor of education, University of 
Wisconsin at Green Bay; Mayor Vera Katz, Portand, Oregon; Eugenia Kemble, assistant to the 
president for educational issues, American Federation of Teachers/AFL-CIO; The Hon. John R. 
McKernan, Jr., governor of Maine; Hilary C. Pennington, president, Jobs for the Future; William 
B. Rouse, chief executive officer, Search Technology, Inc.; and, Marc Tucker, president, National 
Center on Education and the Economy. Anne Heald is the executive director of the CLC. 

Excerpts from School-to-Work Transition in the United States follow: 



The Noxious Nineties : c. 1 994 



327 



In February 1993, CLC brought together 25 leading experts from state and federal organiz- 
ations as well as international leaders, to identify the most pressing questions and problems 
that confront policymakers and practitioners working to build school-to-work transition 
systems in the United States. The outcome of that meeting was a consensus that there were 
five areas in need of immediate in-depth attention: 

• Building a System: Governance and Finance 

• Developing Standards, Assessment and Credentialing 

• Building Partnerships: The Role of Economic Actors 

• Designing Quality Programs 

• Providing Career Guidance 

To address these issues, and with the generous financial support of the German Mar- 
shall Fund of the United States, CLC initiated its Comparative Learning Teams Project. CLC 
issued a request for proposals nationwide, and respondents were asked to select one of these 
areas as the focus for an international learning investigation, developing levels of inquiry in 
substantial detail and with specific outcomes for their trip. The capacity of teams to effec- 
tively disseminate their findings in a way that would positively impact on the development 
of school-to-work systems in the United States was a key selection criteria. 

CLC awarded grants to five organizations in the school-to-work transition field who 
led, planned and supported a Comparative Learning Team. The grants enabled each team 
of at least nine people to visit two European sites where sophisticated school-to-work tran- 
sition teams operate. Each comparative learning team participated in carefully planned 
12- to 14-day working sessions in Germany, Denmark, the United Kingdom, Switzerland 
and Sweden, where they gained direct access to their foreign counterparts and first-hand 
exposure to European systems.... 

Already, the work of the comparative learning teams has had an impact on system- 
building in the United States. Team members were able to build on their European experience 
when designing state systems under the guidelines of the new Federal School-to-Work Op- 
portunities Act. Officials in the Departments of Labor and Education, working on school- 
to-work policies, were briefed.... Participants have spoken at numerous conferences, and 
published comments in newspapers and newsletters. Key findings of the teams are guiding 
further policy work around key issues such as the engagement of industry in school-to-work 
programs and in the design of skill standards.... 

For over a decade American policy leaders have looked to Europe for insight into how 
to move young people effectively from school to the workforce, while providing them with 
relevant and valuable skills. The impressive achievements of European systems triggered 
much enthusiasm in this country about the potential positive impact of reform here. 

Now with the passage of the school-to-work legislation, and with states actively at- 
tempting to build school-to-work transition systems... the international experience remains 
highly significant. Issues that challenge American policymakers in building systems, such 
as developing appropriate funding mechanisms, engaging industry partnership and ensuring 
relevant standards, have long been at the core of investigation in Europe. . . . 

...As states and sites move to implement comprehensive reform in the United States 
under the auspices of the School-to-Work Opportunities Act, all five reports will provide valu- 
able information and insight into the best international lessons.... We want to express our 
thanks to the lead organizations for the project: The Austin [Texas] Chamber of Commerce, 
the New Standards Project [Marc Tucker's National Center for Education and the Economy 
program], The Council of Chief State School Officers, the National Alliance of Business, and 
the Northwest Regional Educational Laboratory. 



328 



The following quote from an article in the May 14, 1984 issue of The Washington Post 
entitled "Industrial Policy Urged for GOP" sheds some light on behind-the-scenes activities 
which have led to acceptance of corporate-fascist workforce training necessary for a planned 
economy: 

A conservative study group founded by supporters of President Reagan is about to issue a 
report that advocates Republicans shed some of their deep-rooted antipathy to a planned 
economy. The "Industrial Policy Debate" is to be issued today by the Institute for Contem- 
porary Studies, a think tank founded by Presidential Counselor Edwin Meese, Secretary of 
Defense Caspar Weinberger, and other Reagan supporters. 

It should also be pointed out that Secretary of Defense Caspar Weinberger served as Sec- 
retary of the U.S. Department of Health, Education, and Welfare in the Nixon Administration 
in 1973, and that he oversaw the development and publication of the Planning, Programming, 
Budgeting and Evaluation Systems (PPB[E]S) State Educational Records and Reports Series 
handbooks which document the establishment of the central planning system for the USA. 
One of the handbooks included in this series entitled Financial Accounting: Classifications and 
Standard Terminology for Local and State School Systems stated in its preface: 

Another project funded by the Office of Education from 1968 to 1971 was the development 
of a program, planning, budgeting, and evaluation conceptual design under the sponsorship 
of the Association of School Business Officials' Research Corporation.... The emphasis in this 
project is on the development of a goal-oriented system for evaluating programs. 34 

[Ed. Note: One can't resist asking the politically incorrect questions: When were the Amer- 
ican people asked if they wanted to exchange our free enterprise system for the socialist 
school-to-work system identified with European countries? When was the decision made, and 
by whom, that the United States would benefit from a planned economy, when this nation 
has served as the lighthouse for the world, beckoning millions to its shores to benefit from 
the upward mobility provided by the free enterprise system? By this time the reader should 
seriously question the legitimacy of the "lead organizations" for the Comparative Learning 
Teams Project — organizations that this book has documented to be involved in "the deliberate 
dumbing down" of America.] 

A PAPER ENTITLED "ISSUE FOR DESIGNING A SYSTEM OF SKILL STANDARDS AND CERTIFICAtion 

for the American Workforce: On What Basis Should Occupation/Skill/Industry Clusters Be 
Organized?" by Robert W. Glover of the Center for the Study of Human Resources, University 
of Texas at Austin, was prepared for the U.S. Department of Labor in May of 1994. Mr. Glover 
has contributed to several national and international studies, including America's Choice: High 
Skills or Low Wages! 35 and was the author of the Texas Department of Commerce's publication 
entitled Developing a System of Skill Standards for the State of Texas (January 1993) . Excerpts 
from Glover's paper follow: 

The Appeal of Setting National Standards as a Device To Reform and 
Upgrade American Learning Systems 

In its report published in June 1990, the Commission on Skills of the American Workforce 



The Noxious Nineties : c. 1 994 



329 



placed the development of skill standards and certification on the table as a major policy 
instrument for improving the education and training preparation of the American Work- 
force. . . . Specifically, the Commission's first recommendation called for "A new educational 
performance standard... for all students, to be met by age 16... established nationally" (p. 
69) . . . [and] described the new assessment system as focusing on thinking-based achievement 
rather than routine skills. This new certification, which has come to be called the Certificate 
of Initial Mastery was envisioned as a cumulative assessment and certification process in- 
volving a variety of assessments, including a portfolio of performances and projects. It was 
to be administered by an independent examining organization and focus on "thinking-based 
achievement, not routine skills." 

Recommendation number 3... called for the development of "a comprehensive system 
of Technical and Professional Certificates and associate's degrees for the majority of our 
students and workers who do not pursue a baccalaureate degree" {Commission on Skills of 
the American Workforce, 1990, p. 77). 

The Certificate of Initial Mastery aims to cover general workplace skills whereas the 
envisioned system of Technical and Professional Certificates and associate's degrees was aimed 
at assessment and certification of specific occupational skills. The two types of certification 
are parallel and complementary. . . . The two sets of skills are related but separable. Obtaining 
a Certificate of Initial Mastery was considered by the Commission as a gateway or threshold 
conveying eligibility to compete for Technical and Professional Certificates. 

The Commission on Skills of the American Workforce recommended that the Certificate 
of Initial Mastery be "benchmarked to the highest standards in the world" [undefined] (p. 
69). Likewise the standards of Professional and Technical Certificates should be "at least 
equal to those set by other advanced industrialized nations" (p. 77). 

Since the publication of America's Choice: High Skills or Low Wages! in June 1990, 
considerable progress has been made toward moving the concept of a cumulative portfolio 
of tests, projects, and achievements into reality. Within a short year, public opinion about 
national testing made a remarkable transformation from high negative to positive (Marshall 
and Tucker, 1992). The Secretary's Commission on Achieving Necessary Skills (SCANS), 
chaired by William Brock (who also served as co-chair of the Commission on Skills of the 
American Workforce [U.S. Secretary of Labor]), developed an innovative taxonomy of trans- 
ferable generic skills applicable to all workforce entrants in a high performance economy. 
The New Standards Project, under the direction of Marc Tucker of the National Center on 
Education and the Economy and Lauren Resnick of the Learning and Development Center 
at the University of Pittsburgh, working with a consortium of 19 states and 6 local school 
districts, is developing new approaches to assessment toward the creation of a certificate of 
initial mastery (National Center on Education and the Economy, 1994a, 1994b, and 1994c). 
Now the recommendations of the Commission are embodied in the Goals 2000 legislation 
recently passed by Congress and signed into law. 

As an amplification of the above report, the writer would like to quote from the pre- 
sentation by Paul F. Cole, secretary-treasurer of the New York State AFL-CIO Chapter, at the 
Second Annual Model Schools Conference in Atlanta, Georgia in 1994. Mr. Cole's statements 
included: 

I worked on the critical thinking skills portion of the Secretary's Commission on Achieving 
Necessary Skills (SCANS) report. The fundamental revolution in the workplace called for 
restructuring of education to meet the challenge.... 

Value-added students produce a high performance environment.... 36 

We must go from norm-referenced to criterion-referenced testing. Educational equality 



330 



is the goal. We must benchmark nationally. Office of Educational Research and Improvement 
(OERI) study on standards reflected these changes to be made: 

1. Setting standards 

2. New assessments — portfolios, authentic assessment 

3. System of credentialing 

4. Curriculum frameworks 

Some industries are devising standards for school achievement. Queens Aviation High 
School, [Queens] New York, meets EAA standards. National Skill Standards Board is working 
on integrating comprehensive skill standards.... 

Manipulation of symbols is a skill used with computers rather than direct observation 
of information. This will affect how we teach reading. 

[Ed. Note: This last statement regarding reading should be considered very seriously. What 
changes in the teaching of reading have been promoted of late? Primarily, the "scientific, 
research-based, direct, systematic" Skinnerian behavioral approach characterized by direct 
instruction — and funded under The Reading Excellence Act in 1998. Is this emphasis an out- 
growth of SCANS-related policies adopted by "partnerships" between government and busi- 
ness interests at the expense of real educational opportunities for children? In 1981 Professor 
Anthony Oettinger said in a speech that "in the modern context of functionalism, they [comic 
books], may not be all that bad" for instruction. Comic books and Paul Cole's "manipulation 
of symbols" have much in common. (See Appendix XI and XXV.)] 

President Bill Clinton signed the School-to-Work Opportunities Act of 1994 on May 4, 

1994. This law provided seed money to states for development of local partnerships of busi- 
ness, labor, government, education and community organizations to develop school-to-work 
systems. 

The Washington Post carried an article entitled "TRying to Catch Up on Their Read- 
ing: Tutors Find What Students Miss" in its May 25, 1994 edition. Excerpts from this article 
follow: 

Students are selected for the program by English teachers, counselors, and principals.... Sykes 
said the D.C. school system will establish "gates," or assessments at grades 3, 5, 6, 8 and 9. 
There will be no student who will move beyond that gate unless they have shown mastery 
skills to move to the next level. Sykes said the school system also is developing a statewide 
reading curriculum that would alleviate the problem of students missing lessons when they 
change schools in the District. 

The students who are enrolled in the Sylvan Center [a private contractor which uses 
mastery learning] at Anacostia High School said they are proud to go there. There is no stigma 
attached to the program. In fact, they said, their friends want to know how to join them in a 
learning environment where the teachers pay close attention... and give them treats... don't 
seem irritated when they don't understand and congratulate them for every step of progress 
they make. "This program gives you confidence. It's fun to learn like this. If you do good, 
they give you awards." 

Tarenia Rogers, 15, a tenth-grader, said the program gives her something to look for- 
ward to when she goes to school. "It's like a job," she said. "When you come in here and 
work, you get paid" [emphasis in original]. When students score well or complete assign- 



The Noxious Nineties : c. 1 994 



331 



ments, teachers reward them with tokens that can be used to buy products such as beads, 
basketballs and T-shirts at the Sylvan "store" — a display counter that stands in one corner 
of the classroom. 

[Ed. Note: This is the school system in which William Spady and Thomas Sticht served as 
consultants in the implementation of the now infamous Mastery Learning program in 1978, 
and which in 1996 had the lowest test scores in the nation. Interesting that Washington, D.C. 
schools — like Chicago which experienced the "human tragedy" due to mastery learning — is 
again implementing the same Skinnerian rat training method for "tutoring" its inner city chil- 
dren. (See Appendix XXV.)] 

The Conference Board published Business and Education Reform: The Fourth Wave— A 
Research Report (CB Report No. 1091-94-RR) in 1994. Founded in 1916, the Conference Board 
was established with a two-fold purpose: 1) to improve the business enterprise system and 2) 
to enhance the contribution of business to society. To accomplish this, the Conference Board 
strives to be the leading global business membership organization that enables senior execu- 
tives from all industries to explore and exchange ideas of importance concerning business 
policy and practices. The Board has offices in New York City, Brussels, Belgium, and Ottawa, 
Ontario, Canada. Some excerpts from this extremely important, 41-page document from The 
Conference Board follow: 

A study of business involvement in systemic education reform shows that such reform: 

• is a long-term, complex and politically charged process requiring on-going com- 
mitment 

• demands that business collaborate with other important stakeholders to effect real 
reform 

• requires clearly stated and explicit goals that place children first 

• emphasizes structural changes within schools, communities and the public policy 
process. 

...Data show that during more than 10 years of dedicated effort to improve the U.S. 
educational system, the business community has invested significant financial, human, and 
time resources in schools. But business executives have often been frustrated as they have 
discovered that most of the initiatives, while well-intended and often quite useful to small 
groups of students, have failed to effect major changes in the ways schools operate or in the 
overall performance of the education system. 

The business community now stands at a critical juncture in its involvement in school 
reform, with two significantly different pathways developing. The first, evidenced by the 
emergence of charter schools, privatization initiatives, and emphasis on school choice involves 
stepping outside the current system and attempting to improve education by starting anew. 
Businesses that choose this path accept the premise that the current system is irretrievably 
broken and cannot possibly be repaired by those working within it. 

The second path, collaboration for systemic reform, in which many Conference Board 
companies are deeply involved and upon which this report focuses, assumes that signifi- 
cant competencies exist within schools and that systemic changes can be made to improve 
performance. 

Collaboration involves formal working relationships among business and school offi- 
cials, social and human service agencies, parents and other relevant stakeholders to reform 



332 



schools by changing the systems in which they are embedded, the reward structures that 
perpetuate them, and the defining features (e.g., curriculum, school days, performance 
measurement) of the schools themselves. The critical assumption is that the schools can be 
transformed from within.... 

In effect, blame for the problems of national competitiveness and for the problems of 
children in a complex and changing society is moving away from schools toward a more 
honest assessment of what is producing the so-called crisis in our schools. The answers often 
lie outside the schools themselves. 

Since schools reflect society, it may be necessary to rebuild the community infrastructure 
in new ways, by using the school itself as a community resource.... 

Despite significant external pressures and constant cries of crisis in the educational 
system, schools have remained largely unchanged.... 

School days remain, for the most part, shorter than those of other industrialized na- 
tions, and the school year remains on an agrarian calendar. The structure of schools tends 
to isolate teachers not only from each other, but also from other important stakeholders, 
such as parents, businesses, social service and civic agencies, and community organizations 
that might take up some of the social and family burdens that have been placed on schools. 
Subjects are still predominantly taught in rote memorization fashion in short bursts of activity 
of 45-50 minutes. Often little time is devoted to staff or curriculum development. 

In part, this situation exists because, as Chester Finn has stated, "people aren't changing 
their behavior at the 'retail' level of education." The explanation for this inability to change 
is due, in part, to public attitudes about education and schooling. These attitudes, which 
research shows are pervasive, mean that, rhetoric aside, fostering serious organizational 
change in schools has been difficult to accomplish.... 

MODELS OF COLLABORATION FOR SYSTEMIC REFORM 

Case 1: Re:Learning — Monsanto, Southwestern Bell, Emerson Electric and Hallmark's Sup- 
port for Systemic Education Reform 

The group determined that the goal would be active student learning with demonstra- 
tions of student accomplishment, which is a fundamental aspect of the Common Principles 
of the Coalition of Essential Schools. The principles provided a foundation upon which all 
of the group's efforts could build, with particular attention devoted to the aspect it deemed 
most critical to actually achieving their goals: development of the teachers who work in the 
restructured schools. 

The organizational framework the coalition chose to achieve its goal was Re:Learning, 
a national effort to address education reform by redesigning the total education system. Re: 
Learning, begun in 1988, includes the Coalition of Essential Schools, the Education Com- 
mission of the States, and all member schools, districts, and states.... 

Case 5: Partnership for Kentucky School Reform 

The state of Kentucky is identified as being on the leading edge of the school re- 
structuring and reform movement. Faced with the Kentucky Education Reform Act (KERA), 
which was intended to radically restructure schools because the system had been declared 
unconstitutional, business leaders in the state rallied together with educators and govern- 
ment leaders. 

This type of collaboration was not new: Leaders in these three sectors had been inter- 
acting for a number of years, particularly concerning issues of education in the Louisville 
area and surrounding Jefferson County. Indeed, Louisville had been one of the 12 National 
Alliance of Business Compact Cities, funded to develop ways for these sectors to work to- 
gether to improve education. 



The Noxious Nineties : c. 1 994 



333 



KERA represents a long-term and systemic approach to school reform. Among other 
things, the act guarantees a certain level of funding on a per-student basis, establishes mech- 
anisms to equalize school financing, and introduces school-based management at each school 
along with major curriculum revisions and an entirely new primary school program. 

One of the more innovative approaches embedded within KERA is the establishment of 
family resource centers and youth services centers within schools in poor areas. This "one- 
stop shopping" approach is meant to ensure that children are able to learn when they are in 
school because their families are receiving needed services. Additionally, all four-year-olds 
are required to attend preschool. A strict accountability system accompanies and supports 
the implementation efforts. One characteristic of KERA is its emphasis on high expectations 
for children. 

KERA, coupled with the Business Roundtable's efforts to involve the business com- 
munity in state-level advocacy, galvanized the business community into action. In the fall 
of 1990, the CEO's of three companies, John Hall of Ashland Oil, David Jones of Humana, 
and Kent C. "Oz" Nelson of United Parcel Service, established the Partnership of Kentucky 
School Reform. With the inaugural meeting held in March 1991, more than 50 leaders 
joined together to solidify their support for successful implementation of the innovative 
KERA. The group represented a non-partisan cross-section of business, government, civic, 
and education leaders, all making a commitment to improve the quality of education in the 
state through a statewide information campaign combined with local activities to support 
the reform movement. 

[Ed. Note: KERA has become a case study in how educational reform went astray in a state 
that "was on the leading edge of the school restructuring and reform movement," and how 
it brought grief to parents, students, teachers and legislators. It was also a case study that in- 
volved a key, if not the key education change agent — who is not even an educator — David W. 
Hornbeck, who took his marching orders from Marc Tucker's National Center on Education 
and the Economy (NCEE) . 

To add insult to injury, Hornbeck left Kentucky's sinking KERA ship to become super- 
intendent of the Philadelphia, Pennsylvania school system where his tenure in Pennsylvania 
was equally controversial and destructive, resulting in the school system's being declared un- 
able to function, wanting the state to take it over pending its "re-establishing" itself. Is it the 
role of the Hornbecks of this world to destructure schools, enabling them to be restructured 
according to the needs of the global economy? 

Are the Hornbecks of the world brought in specifically for that purpose? 

Additionally, one could ask why The Conference Board, and business interests in general, 
find the work of particular change agents and their tactics so appealing and positive? Is it 
because the change agent puppets are performing perfectly for their puppeteers who consider 
our children "human capital resources" to be trained, allowing the multinational corporations 
to spin off profits as a result? Take the case of a school system in New Mexico; the local school 
board rejected the Re:Learning Project only to be heavily pressured by the governor and a CEO 
of a multinational corporation — and others — who absolutely insisted on the implementation 
of Re:Learning. These folks had just returned from the "Charlottesville Summit" where they 
had received their marching orders under America 2000. 37 ] 

In The Reading (Pennsylvania) Eagle/Times on June 25, 1994 an article by Stephanie 

Ebbert entitled "School Exams Likely to Have Russian Origin" stated the following: 



334 



Teachers in the former Soviet Union, who played host to visiting U.S. educators, express 
interest in exchanging tests and course material to compare students' aptitudes and cur- 
riculum.... Wyommissing School District students may soon be taking tests drawn up by 
teachers in the former Soviet Union. 

Dr. Charles R. Walker, superintendent, has established ties with educators in St. Pe- 
tersburg, the former Leningrad, as a result of an April excursion there. Walker, one of 32 
educators who, along with their spouses, took a 10-day educational trip to visit schools in 
St. Petersburg and Moscow, returned with contacts, fax numbers from Russian schools, and 
plans to establish ties to ensure students are competitive on a global scale. 

Teachers there expressed interest in exchanging tests and course material to compare 
students' aptitude and curriculum in the two countries, Walker said. In one public school 
that Walker visited the board had recently decided to mandate that students wear uniforms 
to try to contain the forces of commercialism, at least during the school day, he said. 

[Ed. Note: Although dress codes are proper — and many private schools require an identifiable 
uniform to distinguish their schools' students from others — many government schools in 
urban areas in the U.S. are beginning to require uniforms. With the advent of: reduced time 
for recess; encouraging military personnel to function as teachers or instructors; the use of 
police to monitor school corridors and to teach the unsuccessful DARE (Drug Abuse Resistance 
Education) program; and the concept of our children being labeled "human capital resources" 
for the government-promoted school-to-work scheme, the idea of uniforms for public school 
students is more than a little disturbing.] 

The Second Annual Model Schools Conference, sponsored by the International Center 
for Leadership in Education, Inc. (ICLE — whose director is Dr. Willard R. Daggett, previously 
employed as a co-trainer with William Spady at Outcome-Based Education training sessions 
sponsored by Spady 's High Success Network) was held June 26-29, 1994 in Atlanta, Georgia. 
Representatives of the educational systems of China, Denmark, England, France, Germany, 
Japan, and Russia were included as presenters at the conference. 

Of special interest was the presentation given by Su Lin, founder and chairwoman of China 
International Intellectual Resources Development Center for Children (CICC). 38 This school 
has branches in the United States, Germany, and other countries to facilitate the immersion 
of its Chinese students into the culture as well as the language of other countries. Excerpts 
from her presentation follow: 

It is CICC's task to be engaged in educational reforms, to establish organizations of intercultural 
communications, and to integrate educational institutions with enterprises. Therefore, CICC's 
systems engineering of education is an enormous constitution [composition] of education 
and technology, theory and practice, experimentation, organization, and management. 

CICC has been incorporated into an international group. 

We stress the following aspects: 

1. The kind of citizens required by the 21st century will constitute our essential con- 
sideration of educational receivers, aims, and contents. 

2. We must do experiments in the search for a new education model. 

3. The greatest characteristics of the 21st century will be the internationalization of 
education. With that in mind, we aim to develop our education in an international 
environment, as education is supposed to be an open system. 

4. China is carrying on its social reforms, encouraging individuals and the non-govern- 



The Noxious Nineties : c. 1 994 



335 



mental sector to run education. Educational institutions in China are all affected by 
the shortage of financial resources. 
5. The secure job policy makes education a closed and extremely stable system, closed 
to competition. Our curriculum is out of date. Education reforms are imperative in 
China.... 

Sincere love of children is the principle upon which CICC is constructed.... 

I am strongly against parents or teachers who impose their own views and demands on 
the children. Education is a noble job that calls for devotion and dedication with no reser- 
vation. Chances and conditions for education should be equal for every child.... 

The cultural, economic, and educational levels for the minorities in Hainan are relatively 
low. With these factors in mind, CICC intentionally enrolls students from these minorities 
for educational experimentation and research.... 

The aim of CICC is to develop children into persons with sound personality for the 21st 
century. To this end we incorporate the following features: 

1 . Standardization — a series of educational activities designed, organized, and managed 
according to educational principles and social needs to achieve a desired end. 

2. Complying with natural law — all educational activities must obey the natural physio- 
logical and psychological development of children. Tampering with these laws leads 
to failure, as in the medieval missionary schools and family education. 

3. Exploitation — exploiting the tremendous potential capacities of children. 

4. Succession and systemization — treat the developmental process as a systemic 
whole. 

...Personality is the synthesis of a person's mental and physical qualities. Our proposal 
is that elementary education should be globally oriented.... This is the inexorable result of 
international economic development. 

Education reforms conducted by CICC include the shortening of the whole educational 
period to fifteen years of schooling. Weekday boarding is one of the educational facilities of 
CICC. They [the students] are required to board at school on weekdays and go back home 
by school bus on weekends. We provide boarding for the following reasons: 

1 . Most people are too busy working to pay enough attention to the education of their 
own children. 

2. Many of the children come from broken families. The boarding school is a place they 
can turn to for comfort. Some even prefer to stay at school on weekends. 

3. Many parents are not well-educated themselves and know nothing about how to 
bring up their own children. 

4. China has a "one-child" policy as a way of controlling the birthrate. It is statistically 
shown that problems such as self-centeredness, stubbornness, and dependence are 
some common characteristics of only children nowadays. CICC provides boarding 
to strengthen the children's sense of equality, solidarity, and independence. 

We have established a school for the parents, where people can learn how to educate 
their own children. The overall plan for CICC has Moon Lake as the hub of the community 
with the educational center around it. CICC has organized itself into a self-supported inter- 
national group corporation of educational institutions and enterprises by opening businesses 
and services in children's education, science and technology, medicine and health, legal, 
insurance, trade and tourism. 

[Ed. Note: Do the above outlines remind the reader of the New American Schools Development 
Corporation's criteria for schooling in the United States through charter schools that bear 
many of the above characteristics? Can the reader recognize the Chinese equivalent of "at-risk" 
categories that our country is targeting for educational funding? Does reference to boarding 



336 



schools remind the reader of the November 1979 article in The Bangor (Maine) Daily News 
about radical changes proposed by a Vermont task force which included boarding schools, 
a center for educational research and teacher training, and elements of the school-to-work 
agenda for the 1990s? 

The above Chinese model, describing the school as the "hub" of the community, bears 
much resemblance to the community education programs of the past twenty-five years or so. 
While the Chinese still use the word "children" instead of this country's substitute "human 
capital resources," one must not lose sight of the environment — political, economic, and reli- 
gious — in which the above extreme, communist and coercive "educational solutions" are sug- 
gested and established. The reader should also bear in mind that this program was presented 
at Willard Daggett's ICLE "Model Schools" conference.] 

"Schools: Into the Future" is the title of an article which ran in The Oregonian [Port- 
land, Oregon] on September 8, 1994 and carried a subtitle as lead-in which read "Oregon's 
school-reform plan is one of the country's most ambitious — and this year it really kicks into 
gear. " Since Oregon was the first state to implement the Goals 2000 Act (signed by President 
Clinton on March 31, 1994) and The School-to-Work Opportunities Act (signed by Clinton May 
4, 1994), before quoting from the article in The Oregonian, the writer wants to quote from the 
first paragraph of the radical Goals 2000 Act: 

PUBLIC LAW 103-227 
March 31, 1994 
103rd Congress 

To improve learning and teaching by providing a national framework for education reform; to 
promote the research, consensus building, and systemic changes needed to ensure equitable 
educational opportunities and high levels of educational achievement for all students; to 
provide a framework for reauthorization of all Federal education programs; to promote the 
development and adoption of a voluntary national system of skill standards and certification; 
and for other purposes. 39 

Excerpts from the "Schools: Into the Future" article which enable the reader to comprehend 
the controversial nature of Goals 2000: 

Efforts to make learning more relevant by breaking down walls between schools and the 
adult world are bringing the most visible changes. At Portland's Roosevelt High, for example, 
students will choose career paths early in their high school years and actually will follow 
them into the workplace with real-world experiences such as internships and job-shadow- 
ing programs. At Grant High, students will learn directly from Cellular One workers. And 
at Marshall High, business leaders will serve as mentors to individual students, guiding the 
choices that will affect their futures in the world of work. 

Oregon's law, like President Clinton's Goals 2000 reform legislation, aims to dramatically 
raise the education levels of students schools failed to reach in the past. This year, Portland 
Public Schools will embark on a plan to push all students into an academic regimen equal 
to that traditionally reserved for the college-bound, says Jack Bierwirth, Portland Public 
Schools Superintendent. 

It will do so by aggressively following Oregon's school-reform blueprint. The state 
plan attempts to reach the forgotten half in two ways: 40 by requiring all students to meet 



The Noxious Nineties : c. 1 994 



337 



high academic standards and by blending academics with new vocational paths that lead to 
further studies and good jobs. 

Because of the state plan's scope and high standards, the American Legislative Ex- 
change Council last month chose Oregon as one of eight states to receive its A + award in 
education. 

Replacing the Diploma 

Oregon's reform plan will require students to earn two certificates of mastery to grad- 
uate — one at about the end of their sophomore year and the second about two years later. 
This year's eighth-graders will be the first class to earn certificates instead of diplomas. 

Reformers say the distinction is central to the changes education faces: diplomas are 
based on course credits or the time students put in. But certificates, they say, are based on 
standards or what students know and can do. 

Another article in the same September 8, 1994 issue of The Oregonian was entitled "Model 
Program Links Classroom to Workplace." This article by Courtenay Thompson deals with a 
pilot project to implement school-to-work requirements of the Oregon Educational Act for the 
21st Century. The following are excerpts from that article: 

In the blood splatters of murder victims, David Douglas High School senior Chrissy Ballantine 
is learning about both forensics and her future. 

A student in the school's innovative Law Network course, the 17-year-old is exploring 
careers by learning to interpret blood splatters with the help of a Multnomah County forensic 
specialist. Last year, she also analyzed the book Lust Killer, a true-crime novel by Ann Rule 
about Jerome Brudos, an Oregon serial killer. 

Not standard classroom fare, but Ballantine raves about the two-year course, a pilot 
program to implement school-to-work requirements of the Oregon Educational Act for the 
21st Century... "We were doing an excellent job of providing a well-rounded college prep 
education," said Anthony Palermini, David Douglas superintendent. "But it wasn't relevant 
to 25 to 30 percent of our students." 

As a result, the district began developing what it calls Project Stars— "Students Taking 
Authentic Routes to Success" — in which students select one of six general career areas, or 
"constellations," to concentrate their electives. Students will work toward certificates of ad- 
vanced mastery, a key measure of academic success under state-mandated school reform.... 
The career focus would start in the seventh grade, when students would take a career-orien- 
tation class. Students would select their constellation by the time they hit high school. 

[Ed. Note: The fact that Oregon's school-to-work reform plan received the American Legis- 
lative Exchange Council's (ALEC) highest educational award should come as a surprise since 
ALEC is an association created by "conservatives" (Paul Weyrich) in 1981 as a counterpart to 
the liberal, Rockefeller-spawned ACIR (Advisory Commission on Intergovernmental Relations); 
both organizations draft "model" legislation for use by state and federal legislators.] 

On November 2, 1994 Education Week published an editorial letter by this writer entitled 
"Viewing Reform Partnerships as Big Brother's Intrusion." A portion of the letter follows: 

Don Davies ("Partnerships for Reform," Commentary, October 12, 1994) just doesn't 
get the message: Smart Americans don't like partnerships with the government; and if public 
schools aren't "government," what are they? 



338 



Evidently there are still enough politically savvy (educated) Americans who reject such 
partnerships, having studied government intrusion in the home and family in countries such 
as Cuba, the former Soviet Union and Eastern bloc countries, and especially in Communist 
China, from which some of Don Davies's community-education research apparently has 
emanated. 

The Community Learning and Information Network, Inc., or CLIN, incorporated in 
1992 and supported by major corporations and education associations, will make Professor 
Davies's dream come true. He "won't have to worry about citizens who 'resist'" Goals 2000 
reform (don't want to dance with the government) . According to the CLIN fact sheet, "The 
CLIN concept is to implement a community-linked learning-technology and information-de- 
livery system that uses... two-way interactive video, networked computer-assisted learning, 
video programming, multimedia, interactive cable, and electronic mail (including electronic 
video mail) based on an 'open systems' architectural approach. CLIN, Inc.'s goal is [to] link 
every public and private school in the United States, as well as every institution of higher 
education and corporate and industrial training sites." 

An information packet from the Community Learning and Information Network states: 
"CLIN has also developed international projects, to include an approved project with the 
People's Republic of China sponsored by the highest levels of the Chinese government." 

Professor Davies's concerns about lack of parental and taxpayer support for reform will 
also be dealt with when the National Goals Panel's 235-page Community Action Tool Kit, 
the intent of which is to psychologically manipulate taxpayers into supporting Goals 2000, 
hits our communities. The Tool Kit recommends, among other techniques, these: "Describe 
allies and opponents; identify change agents; get the president of Hewlett Packard to write 
the chairman of the school board a letter supporting the proposal." It also provides a case 
study of how Christian ministers were manipulated into supporting Goals 2000 in Edmonds, 
Washington. 

Alexander Solzhenitsyn, the famous Soviet dissident, issued an important warning 
when he said, "Coexistence on this tightly knit earth should be viewed as an existence not 
only without wars... but also without [government] telling us how to live, what to say, what 
to think, what to know, and what not to know. " 

So-called "peace" is breaking out all over the world. How long this type of peace will 
last will depend on the patience freedom-loving citizens have with Global Big Brother's 
intrusion into the privacy of their homes and families. 



Challengers for Insight in its November 1994 newsletter published an article entitled 
"Susan Kovalik's Integrated Thematic Instruction" which enables the average parent or teacher 
to understand a new teaching model based on "brain compatible learning" for outcome- 
/performance-based education. 41 This critique of Kovalik's model was written by education 
researchers Marilyn Boyer and Barbara Volkman of Indiana. 42 Since this article describes a new 
and most controversial method which may well be used extensively throughout the nation, this 
writer has included it in its entirety so that the reader can use it for educational purposes: 

SUSAN KOVALIK'S INTEGRATED THEMATIC INSTRUCTION 
By Barbara Volkman and Marilyn Boyer 

Controversy continues to rage throughout Indiana over a state-supported teaching 
model for Outcome-/Performance-Based Education. Many traditional teaching methods are 
being eliminated as public school classrooms experiment with new teaching techniques 



The Noxious Nineties : c. 1 994 



339 



based on brain-compatible learning, such as those promoted in the 1992 Integrated Thematic 
Instruction: The Model (ITI) developed by Susan Kovalik and Associates of Arizona. 

A memorandum was sent to all Indiana superintendents, inviting them to attend a 
lunch/conversation with Susan Kovalik in Indianapolis on November 10, 1994 during the 
7th National Conference of the American Association of School Librarians. [It stated in part 
that] ITI is of great interest to parents in Indiana and elsewhere, since "Susan is well known 
as a writer, facilitator, and president of one of the largest inservice training organizations in 
the United States," according to the invitation. 

Kovalik's material shows a strong connection to the New Age philosophies of Eastern 
mysticism and Western occultism. Indiana has for several years been putting in place the 
new age curriculum that contains all of the psychological/educational processes necessary 
to achieve in the student the desired state, national and international outcomes. 

Master teacher Barbara Pedersen, an associate of Susan Kovalik's from Central El- 
ementary School in Lebanon, Indiana, has brought the ITI model to Indiana classrooms 
through the Indiana Department of Education-supported C.L.A.S.S. (Connecting Learning 
Assures Successful Students) project. Pedersen not only trains and coaches teachers in many 
schools in Indiana, but now has expanded to include Kentucky teachers. 

The ITI model's approach to teaching uses a single theme (yearly, monthly, weekly) 
to tie together various areas of instruction such as science, math, history, and reading. The- 
matic teaching is not new. What is new, says Kovalik in her 1992 ITI manual, is that, "The 
entire ITI Model — curriculum development and instructional strategies — has been selected 
and organized with great care to fit how the brain learns" (p. 3). 

This type of thematic model, based on human brain research, is called brain-compatible 
learning. However, a close look behind the model at the books that Kovalik cites as brain 
research reveals that ITI is not based on valid scientific studies, but rather on educational 
theories tied to psychic phenomena research. 

The mind, claims Kovalik, is designed to learn from the experience and complexities of 
the natural world, and thus she rejects the logical, sequential (traditional) teaching approach 
to learning. According to Kovalik, the goal of school districts and school boards should be to 
provide students with a brain-compatible learning environment by eliminating policies that 
support brain-antagonistic elements (i.e., a textbook for every student, traditional evaluation/ 
grading, and sequential curricula presented in a logical manner) . 

Opponents of the ITI model list the following major criticisms: 1) New Age ideas and 
practices including yoga relaxation, visualization, and guided imagery leading to altered 
states of consciousness; 2) Tribes, a cooperative learning model predominantly centered on 
social (peer group) development rather than individual academic achievement; 3) academic 
deficiencies traced to emphasis on exploration of the complex, random, chaotic "real world" 
instead of concentrated on sequential, logical teaching of subject matter through textbooks; 
4) controversial nature of certain themes (political, religious, paranormal, etc.) and over- 
emphasis on themes; and 5) teaching methods and curriculum linked to questionable brain 
research (i.e., Brain-Compatible Classroom). 

The ITI model encompasses six main brain research theories: 

(1) Triune Brain — Paul McLean's evolutionary theory of mankind's three separate brains 
of varying ages. This is a key component and rationale for providing a stress-free 
brain-compatible learning environment. 

(2) Accelerated Learning — the speed up memory learning by teaching directly to the 
subconscious mind derived from George Lozanov's Suggestology, which is based 
upon research from yogis and psychics. The ITI model has all of the parts of this 
type of Accelerated Learning — yoga relaxation, visualization, guided imagery and 
special effects of music. Lozanov's method is also called SALT (Suggestive Accel- 
erative Learning and Teaching [which supports Stanford's Henry Levin's Accelerated 



340 



Schools efforts]) and Integrative Learning. 

(3) Left Brain/Right Brain Thinking — a theory to develop the intuitive side of the right 
brain by accessing the subconscious mind. There is no consensus in the research to 
support this theory. Although some scientists have claimed to validate the roles of 
the left/right brain hemispheres, others would disagree. "We don't have one shred 
of evidence that something as high-level as creativity could be allocated to one side 
of the brain or the other, " says Levy (professor of biopsychology at the University 
of Chicago) . "Attempts to apply what is known about hemispheric differences to the 
enhancement of learning are premature.... That was the conclusion of the fourteen- 
member panel of researchers from the National Academy of Sciences that recently 
completed a broad view of 'brain asymmetry'" (The Omni Wholemind Newsletter, 
Vol. 1, No. 4, March 1988). 

(4) The Seven Intelligences — redefines intelligence to include music, dance, sports, 
etc. Howard Gardner, departing from traditional education, theorizes that humans 
have seven intelligences that are associated with brain locations. They are logical- 
mathematical, linguisitic, spatial, bodily-kinesthetic, musical, intrapersonal, and 
interpersonal. Gardner labels what has been traditionally called a human talent 
as an intelligence. Parents should have grave concerns about labeling a student's 
personal beliefs and his/her interaction with others as intelligences, because the 
state can then do the developing and assessing of them. This is one of the dangers 
of Outcome-Based Education since the learner outcomes often include the student's 
attitudes and beliefs. 

(5) Personality Types/Learning Styles — Pedersen refers to the importance of learning 
styles. One of the methods of identifying/teaching to learning styles used in Indiana 
as well as many other states is the 4MAT system of instruction developed by Bernice 
McCarthy. 4MAT is based on theories from education, psychology, neurology and 
management. The system includes four types of learners: Imaginative, Analytic, 
Common Sense and Dynamic. McCarthy teaches to the learning style of the student 
with left/right mode techniques. 

(6) Brain-Compatible Learning, a phrase coined by Leslie Hart, author of Human Brain 
and Human Learning. Hart believes humans learn best from the rich, random, 
chaotic "real world" instead of concentrated, sequential, logical teaching of subject 
matter through textbooks. 

Replacing traditional teaching methods with occult techniques that teach directly to 
the subconscious mind opens the door to possible mind control (brainwashing) . It appears 
that some education reformers think children can learn better in this hypnotic state which 
allows all material into the mind. Children can then absorb any agenda the school (state) 
wishes to teach without the brain discriminating the validity of the material. 

Authors' Update (recent developments since this article was written): 

Howard Gardner has now expanded to eight and a half intelligences by adding naturalist 
and half of spiritual. 

The following recent publications show that educators continue to misapply the brain 
theory and research that even the scientific community still disputes: 

A Celebration of Neurons: An Educator's Guide to the Human Brain by Robert Sylwester is 
published by the Association for Supervision and Curriculum Development (ASCD) in 1995 
as a major guide for educators. Sylwester notes that educators must not make the mistake 
of left/right brain books, workshops and curriculum that often went far beyond the research 
findings. He sees misinformed or uninformed people making major policy decisions for 



The Noxious Nineties : c. 1 994 



341 



educators. However, he maintains that application of this research is an important step for 
educators even though the applications are not clear, the issues are complex, and educators 
generally lack the scientific background to understand or build a curriculum utilizing the 
research. 

The Education Commission of the States has held 16 workshops in the last year on the impli- 
cations that neuroscience may have for state policymakers who may be getting carried away 
on brain research. ("Education Policymakers Embrace Brain Findings — Scientists Question 
Rush to Apply Brain-Research Findings," by Linda Jacobson, Education Week, April 8, 1998) 
[all emphases in original] 



John Omicinski, Gannett News Service, wrote "Multiculturalism Is a Worthy Goal, but 
America Still Needs Americans" which appeared in the Sunday, November 20, 1994 issue of 
the Detroit News. Omicinski's article covered a speech by Librarian of Congress James Bil- 
lington at the 75th anniversary of Georgetown University's School of Foreign Service. 43 A few 
interesting excerpts from the article follow: 

Will America lead the world into the 21st century? Not the way things are going, says 
Librarian of Congress James Billington. [Not] in a country afflicted with a lazy, ill-defined 
multiculturalism filling up with African Americans, Korean Americans, Japanese Americans, 
he suggests. And his bottom line is simple: America doesn't work without Americans. 

As a custodian of the library and its 105 million items, Billington is caretaker of the 
world's largest depository of human culture. He also is one of Washington's sharpest minds, 
an expert on Russian history as well as America's heritage, and an even rarer breed — a 
straight talker. 

The arsenal of information we command ought to qualify the United States as an 
unchallenged cultural superpower, Billington says. But this imposing mother lode of words 
isn't of much use if U.S. residents are too indolent, too self-satisfied, too culturally balkan- 
ized to use it, he says.... 

Is America an idea or a nation? 

The sharpening split between left and right makes that a cutting-edge question in the 
current cultural wars. And Billington comes down on the side of nationhood largely because 
America's good ideas don't much matter if there's no nation to push them. 

Gathering the world's civilization to itself, the United States should be primed to set 
a model for the world. But it isn't working that way, said Billington. A gaggle of voices — all 
given equal weight in a society that may have forgotten its traditional values — has turned 
America into a dizzy spin. "Unfortunately, we seem to have lost our national compass some- 
where on the road to the next millenium," Billington said. "We are getting ever more lazy.... 
Many of our great institutions of higher learning seem to have become indifferent to — even 
contemptuous of — their historic function of transmitting a basic understanding of their own 
culture from one generation to the next. 

"In place of the expanding, inclusive America, which adds without subtracting, the 
ideological multiculturist would create a balkanized America and a continuous process of 
subtraction from any sense of common tradition or shared values. . . . This kind of multicultur- 
alism is the denial rather than the fulfillment of true pluralism, which in the great American 
tradition assumes a variety of authentic and deep convictions rather than a. . . uniformity of 
relativistic indifference. " 

Billington sees a single language as the ultimate national glue. Though English is on 



342 



its way to dominating the world, America's left-wing elitist intellectuals say it shouldn't be 
America's lingua franca. "In any country that endures, there must be a unum as well as a 
pluribus," said Billington. 
That's not all. 

Billington says a national idea also requires a "clearer understanding than our educa- 
tional system has often done in recent years of our durable constitutional system and public 
institutions and of our distinctively Judeo-Christian roots.... The bridges to other cultures 
will not be solid unless they begin with casements that are sunk deep into one's own native 
ground." 

Leaders of our governments, schools and universities have much to answer for, perhaps 
even the death of the American nation. Billington's speech is another reason to demand 
better from them, or show them the door. 



Education Week of November 23, 1994 ran the article "Education, Religious Groups, Seek 
Common Ground." Excerpts follow: 

The leaders of several national education associations and conservative religious and citizens' 
groups have been meeting behind the scenes in an effort to find common ground on school 
reform and end their increasingly hostile debate.... An encouraging sign — and surprising 
turnabout — in the debate between school-reform leaders and their conservative opponents 
has been the recent partnership of William G. Spady, a leading advocate of outcomes-based 
education, and Robert L. Simonds, the president of the Costa Mesa, California-based Citizens 
for Excellence in Education, which says it has about 250,000 members nationwide. In many 
ways, the two men represent polar opposites in the debate over the direction of schools. Yet 
in recent months, they have made plans to sponsor jointly a non-profit National Center for 
Reconciliation and Educational Reform at the University of Northern Colorado in Gruel.... 

In many areas, CEE-affiliated activists support a back-to-basics agenda, opposing whole 
language instruction, open-ended assessments and teaching strategies that stray from the 
drill-and-practice routine. But after building a constituency that has seen its job as fighting 
against the tide, Mr. Simonds said, it is time to work with educators on better choices.... 
"We are not opposed to Bill Spady's theory of outcomes-based education. There are a lot of 
good ideas in it," Mr. Simonds said. 



In a letter dated December 12, 1994 from William Spady of the High Success Network 
to Dr. Nancy Grasmick, Maryland state superintendent of schools, a copy of which was very 
likely sent to the 49 other state school chiefs, Spady made the following statements: 

With both the federal government and state bodies pushing harder than ever to improve the 
focus and effectiveness of what happens at the local level, major educational reform seems 
inevitable — except for one new factor: the open resistance by citizens' groups to a host of 
"progressive" reform ideas and initiatives.... 

When we met in March, Dr. Simonds was a staunch opponent of virtually everything 
I advocated in terms of outcomes-based educational change and restructuring. Today, to the 
amazement of many educators and policy makers, he is in agreement with the basic com- 
ponents and principles articulated in the enclosed document developed by Dr. Kit Marshall 
and myself. More importantly, he and I have joined forces to form a National Center on 



The Noxious Nineties : c. 1 994 



343 



Educational Reconciliation and Reform — an endeavor that colleagues across the country tell 
us is badly needed.... 

We would be delighted to discuss the feasibility of working with you and your con- 
stituents to bring this program to your state and to generate a broad base of support for 
reconciliation and reform. This could be done either under the auspices of the Goals 2000 
initiative or through other sponsorship. 



Cottage Grove, Oregon's South Lane School District ploughs ahead as the nation's cer- 
tificate in mastery pack leader. According to an article entitled "Cottage Grove Endures Trials, 
Triumphs as It Tests New School Plan" in the December 13, 1994 issue of The Oregonian: 

Parents are still fighting the changes. Students will mutter about being guinea pigs. Teach- 
ers — even those who back the reforms — groan about the workload. 

Last spring, Cottage Grove High School handed out the state's first certificates of ini- 
tial mastery to 81 sophomores. The certificate, keystone in the 1991 reform act, is designed 
to measure students on what they've learned and what they can do, as opposed to what 
courses they have taken. 

Much of the criticism arises from the way ninth-graders were thrust cold into the new 
program two years ago. They worked on team projects that would be graded jointly, took 
more responsibility for their own learning and developed portfolios of their classwork. And, 
more significantly, they had to meet higher academic standards. 

Timm Wagner, 16, failed to get his certificate last year because, he says, his teammates 
on a group project didn't get their work done. "I don't like it," he says. "If I'm doing a job, I 
should get fired if I do something wrong, not if somebody else does something wrong." 



SCHOOL-TO-WORK PROGRAMS PROMOTED BY BUSINESS IS THE SUBJECT OF AN ARTICLE ENtitled 

"Leading Business Executives Create Council to Promote S-T-W Programs" in the December 
14, 1994 issue of Education Week. Some excerpts follow: 

Some of the nation's leading corporate executives last week announced that they have formed 
a group to promote business involvement in school-to-work programs. 

Members of the National Employment Leadership Council will work with the U.S. 
Education and Labor departments to implement school-to-work programs in their own 
companies and encourage other firms to do the same. Whether many businesses take them 
up on the offer could determine the prospects for work-based learning in the United States. 
The new council provides the strongest signal to date that the private sector may be ready 
to support such programs.... 

But the council stopped short of releasing numeric goals for how many firms it hopes 
to recruit or how many training slots they would provide.... Jerome Grossman, the chair- 
man and C.E.O. of the New England Medical Center, said the council hopes to set numeric 
objectives within the next two months. 

The council's staff is housed at the Institute for Educational Leadership, a non-profit 
group based in Washington. 

The following companies and C.E.O.'s are charter members of the council: Ford Mo- 
tor Co., Alan Trotman; American Express Travel Related Services Co, Inc., Roger Ballou; 
Atlanta Life Insurance Co., Jesse Hill, Jr.; BellSouth Corp., John Clendenin; Charles Schwab 



344 



Corp., Lawrence J. Stupski; Cybernet Systems Co., Heidi Jacobs; Eastman Kodak Co., George 
Fisher; H.J. Russell & Co., Herman J. Russell; ImmunoGen, Inc., Mitchell Sayare; Manpower 
Corporation, Mitchell Fromstein; McDonald's USA, Ed Rensi; New England Medical Center, 
Jerome H.Grossman; Pacer Systems, Inc., John C. Rennie; Peavey Electronics Corp., Melia 
Peavey; Phillips Display Components, Dr. Iva Wilson, president; Siemens Corporation, Albert 
Hoser, president and C.E.O.; the Taubman Company, Al Taubman, chairman; Thom McAn 
Shoe Company, Larry McVey, president; UNUM Corporation, James F. Orr, III, chairman and 
C.E.O.; and Will-Burt Company, Harry Featherstone, chairman and C.E.O. 



Wednesday, December 28, 1994 issue of The Wall Street Journal carried an ARticle under 
its column Critical Thought entitled "Acclaimed Reforms of U.S. Education Are Popular but 
Unproven — Ted Sizer's Methods Stress Reasoning over Rote: Gains Aren't Measurable — Am- 
biguity and Faculty Battles." Sizer's Coalition of Essential Schools, considered by many to be 
the centerpiece of national education reform, proves to be more workable in theory than in 
practice. Some excerpts follow: 



The Noxious Nineties : c. 1 995 



345 



In the crusade to revitalize high schools, no one has attracted more attention — or money — 
than Theodore R. Sizer, professor of education at Brown University and creator of Essential 
Schools. But as Dr. Sizer's adherents and donations pile up, so too does research challenging 
the effectiveness of coalition schools. Five recent, little-publicized studies, including a five- 
year research project sponsored by the coalition itself, suggest that Dr. Sizer's ideas may be 
a lot more workable in theory than in practice. . . . 

Not since John Dewey, whose writings shaped the 20th century U.S. curriculum, has 
one person's philosophy taken hold in so many classrooms, educators say. More than $100 
million has poured in from education foundations and donors such as AT&T, Exxon and 
Citicorp. Anecdotal evidence from some coalition schools points to improved attendance 
rates, lower dropout rates, better test scores or more students going to college. 

But even coalition officials concede such evidence is spotty. They also haven't tried to 
determine comprehensively whether coalition students are learning more, despite pressure 
to do so from some benefactors. Grant Wiggins, the coalition's former research director, says 
he remains unconvinced that coalition schools are better. "It has always been my sense that 
it's not better. It's not worse; it's just different," explains Dr. Wiggins, who says he quit the 
coalition in 1988 because of "a combination of burnout and frustration." 



1995 

The January 1, 1995 issue of Education Week carried an article by Robert C. Johnston 
entitled "33 Religious Groups Join Riley in Seeking Greater Family Role in Schools." Some 
excerpts follow: 

Nearly three dozen religious leaders put aside theological differences to join Secretary of 
Education Richard W. Riley in a holiday season declaration supporting involvement in edu- 
cation.... 

...Mr. Riley added that religious leaders came to a "clear recognition" that the religious 
community can play a "more active and positive role" in helping parents educate their 
children. 

Ms. Doyle said the department may follow up by working with the religious organiz- 
ations to provide instructional materials for parents. The department also hopes to provide 
an education guide for ministers as well as meeting space for future activities arranged by 
the religious groups. 

Asked about the political overtones of reaching out to church groups, Ms. Doyle said: 
"The Secretary made it clear he was not asking them to stand with him and support all 
(Clinton) Administration initiatives. This is about families." 

[Ed. Note: Separation of church and state flies out the window when church communities 
plan to join government, business, parents, and schools in helping all families participate in 
their children's education, and especially when the U.S. Department of Education provides 
religious organizations with instructional materials for parents!] 

IN AN ARTICLE ENTITLED "RUSSIAN TEACHER REVIEWS WORK IN SAD 53" WHICH WAS published 

in the January 12, 1995 issue of The Bangor (Maine) Daily News, Brenda Seekins explains all 
too clearly the extent of cooperation between Russia and the U.S. in school-to-work (planned 



346 



economy) activities. According to Seekins's research these activities were not confined to ivory 
tower musings, but had penetrated education at the local level. Some excerpts follow: 

Pittsfield — Russian exchange teacher Tanya Koslova addressed the SAD 53 board of directors 
Monday night to express her appreciation for the opportunity to work with the district and 
Maine Central Institute [MCI — deeply involved with workforce training] . 

She offered an overview of the work she had done in the district over the past four 
months, spending two months with children in kindergarten through grade eight and the 
balance of her time at MCI. 

She particularly enjoyed students who participated in her Russian humanities class who 
were "highly-motivated and eager students. "[MCI Headmaster] Cummings told the board 
that MCI will be the recipient of the School-to-Work funding in conjunction with the Maine 
Youth Apprenticeship Program. 

The school could receive up to $8,000 to provide staff training to better integrate aca- 
demics with the program provided by apprentices' worksites. 



Machiavel Pedagogue ou le Ministere de la Reforme Psychologique [MachiavelUclti Ped- 
agogy or the Ministry of Psychological Reform] by Pascal Bernardin (Editions Notre-Dame des 
Graces: Paris, 1995) was published. This book deals with United Nations Educational, Scientific, 
and Cultural Organization's (UNESCO) role in the transformation of education worldwide from 
a system based on academic instruction to one in which the purpose is nothing but conditioning 
for acceptance of world government (New World Order). Monsieur Bernardin discusses brain- 
washing techniques such as cognitive dissonance and the group process, and is highly critical 
of the role played by American and European behavioral psychologists in the transformation 
of the world's schools from places of learning to mental health clinics for brainwashing. The 
following are excerpts from this writer's translation from the French version: 

The general philosophy of the pedagogical revolution is exposed, without detour, in the 
publications of the international organizations (UNESCO, OECD, Council of Europe, Com- 
mission of Bruxelles...).... 

This pedagogical revolution attempts to impose an ethic for the creation of a new society 
and to establish an intercultural society. The new ethic is nothing more than a remarkable 
presentation of a communist Utopia. A study of the documents leaves no doubt, under cover 
of ethics and behind a rhetoric and remarkable dialectic, of a communist ideology for which 
only the presentation and the means of action have been modified.... Also it is no surprise 
that the level of scholarship will continue to go down since the role of the school has been 
redefined so that its principal mission is no longer intellectual but social formation. ...One no 
longer gives students intellectual tools for liberation but imposes on them values, attitudes, 
and behavior using psychological manipulation techniques. 



Salem, Oregon's The Statesman Journal of February 4, 1995 carried an article entitled 
"Service Learning Projects Match Students with Needs in the Salem-Keizer Community." Ex- 
cerpts follow: 

Service learning is a method through which students learn values, citizenship, and skills by 



The Noxious Nineties : c. 1 995 



347 



performing a variety of community services. On any given school day, hundreds of Salem- 
Keizer teens leave their classrooms to visit local businesses, nonprofit agencies and other 
community organizations or activities. 

The students aren't on field trips — they're visiting their service sites, where they perform 
a variety of community service work, also referred to as "service learning." It is here that 
students are learning the meaning of citizenship and service. They're also becoming more 
aware of their role in the community. 

"Service learning demonstrates the partnership between the school district and the 
community. Students learn firsthand about the needs and issues of our community — the 
homeless, the hungry, the elderly, and environment — while they work toward meeting those 
needs," explains Pat Abeene, Volunteer Services coordinator for the district. 

Abeene said service learning takes various forms. These range from the district's 
Youth Community Service Program — in which high school students get [selective or elec- 
tive] credit for community service — to individual school projects integrated into the regular 
curriculum. 

Other service sites offered through the program include the Boys and Girls Clubs, nursing 
homes, the Humane Society, and Oregon state parks.... Another example of service learning 
was the McNary Area Service Learning Project. The successful project teamed eight Keizer 
schools in the collection of 6,000 recyclable milk jugs from area homes — a service currently 
unavailable through Salem-Keizer disposal companies. 



The following statements were published in 1995 in the Maryland State DEPARTment of 

Education's MSDE Bulletin (Vol. 6, No. 3) entitled "Keeping You Current on Education Reform 
in Maryland": 

SEEKING COMMON GROUND ON SCHOOL REFORM 

William Spady, a leading proponent of outcomes-based education, and Robert Simonds, 
head of a Christian group that has led the fight against OBE, made a joint presentation before 
the State Board in February to discuss their 10-months' dialogue of reconciliation.... 

Early in their discussions, which began at a meeting last March of the Association of 
Supervision and Curriculum Development (ASCD) the two men agreed that the public schools 
are essential to democracy and must be strengthened.... 

The two men have come to agreement on a set of components and principles for school 
reform, which Spady calls the "High Success" model. They agree that specific reform alter- 
natives should include the following components: 



* Quality performance standards 

* Future-focused planning 

* Extensive community involvement 

* Continuous improvement strategies 

* Challenging learning experiences 

* Advanced instructional processes 

* Real-life learning assessments 



Both men had praise for Maryland's reforms. Simonds said, "The Maryland Learning 
Outcomes are what parents want."... 

Several education associations (including the Association for Supervision and Cur- 
riculum Development, the American Association of School Administrators, the National 



348 



School Boards Association, the National PTA) have joined with the Citizens for Excellence 
in Education and other conservative groups to continue the search for common ground on 
education. 

[Ed. Note: Robert Simonds's co-option by the very groups responsible for at least thirty years 
of failed, so-called "reform," is beyond this writer's comprehension. 44 ] 



"Content of Our Kids' Tests Shouldn't Be Secret" by Margaret Sitte, columnist, ran in 

the March 3, 1995 issue of The Bismarck (N.D.) Tribune. Excerpts follow: 

In 1990 North Dakota eighth-graders scored highest in math on the National Assessment of 
Educational Progress. Questions of psycho-analysis have surfaced, however, leaving many 
parents to ask, "What exactly is the NAEP?" Senator Bob Stenehjem, R., Bismarck, thinks 
it's time to find out, and he has introduced SB 2308 allowing parents the right to see it. 

Anita Hoge, a Pennsylvania mother of three, listened intently one day in 1986 as her 
ninth-grade son came home complaining, "Eve just taken the weirdest test in the world. It 
was so hard. You couldn't answer the questions." 

"The prospect of working most of my adult life depresses me. Check 'yes,' 'no,' or 
'sometimes.' " 

Being a concerned parent, Anita marched to school and demanded to see the test, the 
Pennsylvania Educational Quality Assessment. She was refused. A feeling in the pit of her 
stomach told her something was terribly wrong. 

Anita called other parents, and together six women embarked on an extensive inves- 
tigation that lasted several years. 

Berit Kjos's Brave New Schools (Harvest House Publishers: Eugene, Ore., 1995), in dis- 
cussing Anita Hoge's case, states: 

Anita Hoge, a native of Pennsylvania, is no stranger to concerned parents or to the 
educational establishment. While her story has encouraged thousands of parents across the 
country, it has also brought anxiety to the change agents who hoped to conceal their strategies 
until they accomplish their purpose. Anita's courageous search for answers to mystifying 
school practices has given us a glimpse of an educational process designed to conform all 
children to the new, politically correct version of "appropriate mental health." 

Anita's journey will take you through a maze of white papers and technical documents 
and expose the true nature of contemporary education: social engineering. It will give you an 
inside look at the deceptive testing mechanism designed to measure the attitudes and values 
of our children and make sure every student will demonstrate the pre-planned nonacademic 
"outcomes." Unwilling to give up in the face of overwhelming opposition, Anita has become 
a living demonstration of the hope that "one person can make a difference." (p. 206) 

[Ed. Note: Anita Hoge filed a lawsuit against the U.S. Department of Education, the Pennsyl- 
vania State Department of Education and others, using the federal Protection of Pupil Rights 
Amendment. The outcome of her suit was delayed by the U.S. Department of Education's 
tactics until the statute of limitations expired, thus its acknowledgment that her suit was le- 
gitimate served only as a moral victory. The Pennsylvania Department of Education continued 
to stonewall Mrs. Hoge's efforts to uncover the privacy-invading components of its statewide 
assessment test, discontinuing its use for a time and later changing the name of the test— as 



The Noxious Nineties : c. 1 995 



349 



good change agents are wont to do! 

For further information, see the 1964 discussion of the origins of the NAEP; 1988 Na- 
tional Citizens Alliance press conference at the National Press Club; 1998 Ohio Supreme 
Court favorable decision in Steve Rea's challenge to the Ohio Department of Education; and 
Appendix IV.] 

The Bismarck (N.D.) Sunday Tribune carried an article entitled "Test Board Tackles 
Secrecy Stigma" by Jeff Olson in the March 5, 1995 issue. Excerpts follow: 

A Bismarck legislator's bill to let parents inspect a national student achievement test sent 
the exam's governing board scrambling for a new public access policy. 

New policy directives give parents a look at old test questions and demographic back- 
ground questions, but maintain high security for National Assessment of Educational Progress 
[NAEP] exam questions still in use. They were approved Friday in Washington. 

Should Sen. Robert Stenehjem's bill become law, director of the NAEP, Archie LaPointe, 
said it would mean the end of the exam in North Dakota. National test results wouldn't waver 
because North Dakota students are a sliver of the nation-wide test sample. But LaPointe feared 
copycat legislation could seriously disrupt NAEP operations in other Great Plains states. 

National Assessment personnel came from the Educational Testing Service at Princ- 
eton, N.J., a private company under contract to the federal government which sponsors the 
NAEP. 45 

ETS staff and governing board members from across the country said they were sur- 
prised by Stenehjem's bill. North Dakota children have dominated state-by-state comparisons 
in the NAEP. 

But the 25-year-old program has been peppered with accusations that it amounts to 
psychological testing, and is not the anonymous comparison of academic achievement as 
prescribed by law. Parents are also upset that they can't have easy access to active test 
questions. 

"The NAEP just isn't worth it," said Stenehjem, a Republican who sponsored SB 2308. 
"There is too much secrecy and there are too many intrusive background questions." 

Parents from Pennsylvania, Nebraska, Iowa and other states have complained bitterly 
about the NAEP for several years. But no one has scared the governing board with legis- 
lation. Until now. 



"Educators, Religious Groups Call School Truce — They Agree to Disagree on Hot Issues 
of '90s" by Sally Streff Buzbee was published in the March 22, 1995 issue of The Atlanta Con- 
stitution. What the article actually said is that the left and the right will meet at the middle 
(common ground, or what Shirley McCune refers to as "the radical center"). This is an excel- 
lent example of the Hegelian Dialectic at work. Some pertinent excerpts follow: 

Arlington, Virginia — Educators and religious parents fighting a bitter "culture war" over 
the future of America's public schools signed a pledge Tuesday to tone down their rhetoric 
and cooperate for children's good.... 

... [T] he 1 7 groups, ranging from the conservative Christian Coalition to the liberal People 
for the American Way, pledged to work to solve disputes before they become lawsuits and 
to improve communication and respect each other's positions. 



350 



The agreement could influence debates likely in Congress this year over school vouch- 
ers and school prayer. But the agreement will be aimed at solving disputes that have divided 
communities in recent years. 

"The statement is eagerly awaited," said Charles Haynes, a visiting scholar at The 
Freedom Forum First Amendment Center. He brought the groups together with help from 
the non-partisan Association for Supervision and Curriculum Development (ASCD). 

"People in Vista, California, and in many other communities have been saying "We 
want it now,'" Haynes said. The Vista school district near San Diego has been fighting over 
the teaching of evolution and creationism. 

"This is going to give all these local districts something to look at, something to help 
guide them." Haynes said. 

"Several prominent groups, including the conservative Focus on the Family and the 
liberal American Civil Liberties Union, did not sign the statement of principles," Haynes 
noted. 

"I don't think any of them are against it in theory, but thought it was vague," he 

said. 

In part, the agreement will clarify for local teachers, principals and parents what the 
Supreme Court has ruled is allowable in public schools, such as the fact that religious groups 
have equal access to school rooms for after-school meetings. 

"Far too often, constitutionally protected religious liberties are being denied," said 
Robert Simonds of Citizens for Excellence in Education. 

The agreement basically says, "Public schools should not be hostile to religion," said 
Education Secretary Richard Riley, who also signed it. 

[Ed. Note: This writer questions the use of the word "non-partisan" when referring to ASCD, 
since ASCD — a spin-off of the National Education Association — is not a political party. Also, 
anyone who uses the ASCD to bring groups together on the issue of religion is behaving like 
whomever put the wolf in charge of the henhouse. As far as the people in Vista, California 
saying, "We want it now," what is it they want now? Why have they hung out the white flag 
in the war courageous parents across the nation have been fighting since 1945 to hold the line 
on the issue of "coming to common ground" on values? 

Allowing religious groups to have equal access to school rooms for after-school meetings 
is actually the "camel's nose under the tent" for state regulation of religious activities and the 
introduction of all sorts of religions into the school's curriculum. Remember that Secretary 
Riley said that "Public schools should not be hostile to religion" and even witchcraft is a state- 
recognized religion.] 

"Why the Education Department Must Go" by Gordon S. Jones, former under secretary of 
education in Secretary T.H. Bell's department of education, was published in The Washington 
Times on April 7, 1995. Jones said in part: 

To put the matter in its starkest terms, state school superintendents like the Department of 
Education because they are getting, on average nationwide, almost half of their funding and 
staff courtesy of the federal taxpayer. The state of Michigan, for example, receives 77 percent 
of its operating budget from the Department of Education; its counterpart in Iowa has 81 
percent of its staff paid for by Uncle Sugar. 

[Ed. Note: One of the primary reasons for abolishing the U.S. Department of Education is to 



The Noxious Nineties : c. 1 995 



351 



cut down to size the bloated and dictatorial state departments of education which receive their 
marching orders from Washington.] 

The Sunday New York Times Magazine of April 30, 1995 published "Who'll Teach Kids 
Right from Wrong? — The Character Education Movement Thinks the Answer Is the Schools" by 
Roger Rosenblatt. This article describes very clearly the pros and cons of a very controversial 
subject — the character education movement of the late 1980s and 1990s. 

Rosenblatt devotes a good bit of space to Thomas Lickona, a developmental psychologist 
and a professor of education at the State University of New York, who is an acknowledged 
leader of the burgeoning character education movement. Lickona has recently established the 
Center for the 4th and 5th R's (Respect and Responsibility) at State University of New York- 
Cortland, which is becoming something of a national center for the study and development 
of character education curricula. 

In the New York Times article Rosenblatt said that 

Character Education represents an effort to teach moral behavior to primary and secondary 
school students in a time perceived to be morally rudderless and to be without such teaching 
in local communities or in the home. Across the country, teachers are confronting children 
with moral dilemmas and asking them to think and talk. The felt need for this kind of educa- 
tion is so deep and widespread that it spurred a movement that has attracted as many former 
activists of the 1960s — Lickona is one — as it has conservative thinkers and politicians of the 
1980s. (Supporters include Barbara Jordan, Barbara Bush, Marian Wright Edelman, Jesse 
Jackson, Tom Selleck and Nathan Glazer) .... 

...Richard Baer, Jr., of Cornell University has found fault with the content of some 
courses (bland pablum) and complained to Rosenblatt that there is no empirical evidence 
that character education actually improves character. Baer's main concern is that the public 
schools will become centers of a culture war between those on the the right who believe 
that character education must incorporate religion and those on the left who do not want 
religious teaching at all.... 

...Besides Lickona's center at Cortland, there is the Josephson Institute of Ethics in Los 
Angeles which supports a Character Counts Coalition. Amitai Etzioni, a leader of the Com- 
munitarian movement, has devoted the energy of his Communitarian Network to advance 
the cause. Boston University has established the Center for the Advancement of Ethics and 
Character specifically to develop character education. All this is in addition to the work of 
individual schoolteachers and educators at the university level who are turning the idea that 
values can be formally taught into a field of study — Kevin Ryan, Director of the Center for 
the Advancement of Ethics and Character Education at Boston University; Kevin Walsh at the 
University of Alabama; William Damon at Brown University, and others. Kevin Ryan says: 
"We've had 10 years of talking about school reform. This issue is at the heart [emphasis in 
original] of school reform." For Kevin Walsh, the ultimate purpose of character education is 
nothing less than "to prepare the next generation to inherit society. " 

Rosenblatt identifies the following states as being involved in implementing character 
education: Mississippi, New Hampshire, New Jersey (the N.J. Dept. of Education has endorsed 
a set of "core values" and set up a council to define commonly accepted values). He lists St. 
Louis, Seattle, Chicago, San Antonio, and Frankfort, KY as cities and towns involved in char- 
acter education and concludes by saying, "Classes in character education are held in rural and 
suburban schools, like those around Lansing, N.Y, and in inner-city schools, like Theodore 



352 



Roosevelt High School in the Bronx." 

In discussing the problems associated with character education, Rosenblatt asks what 
happens when two moral rights collide? A teacher might well begin complicating things, talking 
of exceptions and degrees, but a teacher also wants to avoid sliding into the moral relativism 
that created the mess that character educators are trying to fix. Rosenblatt then reveals the 
contradiction in Lickona's argument regarding moral relativism when he says, "Deciding to 
do his [Lickona's] dissertation on children's moral thinking, he was drawn... to Lawrence 
Kohlberg of Harvard, a major figure in the late 1960s on the subject of moral reasoning." The 
reader is urged to review this book's 1975 entry which describes Kohlberg's "Ethical Issues in 
Decision Making" for an understanding of the "moral relativism which created the mess that 
character educators," including especially Lickona, are supposedly correcting. 

[Ed. Note: Curriculum is not the answer. The hiring of competent teachers whose lifestyles are 
exemplary and who exhibit civilized behavior (respectful, courteous, caring, loyal, etc.) is the 
best and safest way for schools to encourage morality in our children. Such an atmosphere, 
in combination with literature which helps students understand that moral behavior is some- 
thing to emulate, not disdain, would do more than all the "character," "civics," "citizenship" 
and "values education" being discussed by the carefully selected task forces representing all 
degrees of political persuasion being set up to create the dialectic necessary to reach "common 
ground" on consensus values. 

A careful reading of Rosenblatt's article is recommended as the first step towards an un- 
derstanding of the pitfalls Americans face as they enthusiastically join forces to solve problems 
which clearly, short of violating the First Amendment, cannot be dealt with successfully in 
the classroom.] 

Looking Back, Thinking Ahead: American School Reform 1993-1995 was published by the 

Hudson Institute's (Indianapolis, Ind.) Educational Excellence Network (Chester Finn, William 
Bennett, Lamar Alexander, Diane Ravitch) in 1995. An excerpt follows: 

The report decries the backlash against outcomes-based education.... Many state outcomes 
are inappropriate... but... unfortunately, an awfully important baby [mastery learning] could 
go down the drain with the OBE bath water, and the country could find itself returning to 
an era when inputs, services, and intentions are the main gauge of educational quality and 
performance. 

[Ed. Note: This quote exposes the hypocrisy of those "opposing OBE"; they oppose the out- 
comes, but not the Skinnerian method. As explained elsewhere, the outcomes can be changed 
overnight, whereas once all teachers have been trained or retrained in Skinnerian mastery 
learning, there can be no return to academic freedom for teachers or students.] 

Committee for Economic Development (CED) 1995 yearbook entitled Putting LEARNing 
First: Governing and Managing the Schools for High Achievement was published. This 60-page 
report called for school choice, charter schools, and social services delivered through schools 
or in collaboration with schools. 



The Noxious Nineties : c. 1 995 



353 



The National Education Goals Panel Community Action Toolkit was developed and dis- 
tributed by the U.S. Department of Education in 1995. The Toolkit was to be used for brain- 
washing, coercing and coalescing communities into accepting Goals 2000, H.R. 6, school-to- 
work, UNESCO's lifelong learning, etc. Toolkit instructions discussed how to deal with resisters. 
Elected officials, governors, and others were involved in production and dissemination of this 
300 + page "How To" Toolkit, which used Professor Ronald Havelock's The Change Agent's 
Guide to Innovations in Education techniques to brainwash themselves and their constituents, 
especially targeting the religious community. (See Appendix XIV.) 

"The Shocking Beliefs behind Educational Strategic Planning" by Michael Jacques was 

published in the August 1995 issue of The Interpreter. Jacques, a concerned parent from West 
Allis, Wisconsin, has provided some very "hard-to-come-by" information regarding The Cam- 
bridge Group, an international strategic planning center for education reform. Excerpts from 
this informative article follow: 

Strategic planning seems to be the driving force at the local level for Outcomes-Based Edu- 
cation (OBE) /Goals 2000. Most school districts... have a facilitator trained by The Cambridge 
Group, which is an international strategic planning center for education out of Montgomery, 
Alabama. The Facilitator's Training Manual states under "The Urgency of Change" on p. 
4: 

Education must declare its magnanimous intent and omnipotent ability to serve as the 
surrogate family. 

"Strategic Planning" is defined: 

Either no one can see or will acknowledge the fact that the real task of reformation 
is the radical transformation — a re-creation — of every facet of the American education 
system — its purpose and scope, its governance, its teaching and learning dynamics, its 
curricula, its time and place — all with a new dedication to developing the original genius 
in the mind of every student. This means a complete change of all education paradigms, of 
definitions, of disciplines, of vocabularies — perhaps values. This is the meaning of reform. 
And that is the meaning of strategic planning.... (p. 20) 

The advent of this new age, and the discovery that human beings now have both 
the capacity and the inclinations to re-create themselves in their own image according 
to their own imaginations... specifically it has demanded a redefinition of the human be- 
ing.... (p. 28) 

Urgency of Change 

Spiritual: once confined only to that thought to be religious and other worldly; forbid- 
den in the world of practicality and reality; a relationship between someone and God or 
something. Now, a realization of the pneumapsychosomatic nature of every person; the 
practical reality of the human spirit when manifested in self-esteem, motivation, aesthetic 
appreciation, manners and respect, as well as reverence; and a priori an ultimate rela- 
tionship between people.... 

The fact is that all American institutions — the Constitution, the Bill of Rights, the 
legislative and judicial branches of government, the education system, and other aspects 
of the current established order — were predicated on a mono-cultural society. It will be 
interesting to see how long the present systems can exist in a polyglot society, (p. 29) 

Mr. Jacques ends his article by quoting from the Wisconsin Independent School Board As- 



354 



sociation: "Only the village idiot would consider letting the entire village in on the task of 
raising his children. " 

"The Language of OBE Reveals Its Limitations" by Gretchen Schwarz was PUBlished in the 

September 1995 issue of Educational Leadership, Association for Supervision and Curriculum 
Development's (ASCD) journal. Ms. Schwarz is assistant professor of curriculum and instruc- 
tion at Oklahoma State University, Stillwater, Oklahoma. Excerpts from Schwarz's refreshingly 
objective critique of OBE follow: 

In contrast, the language of Outcome-Based Education (OBE) seems limiting and dehu- 
manizing. Many educators not associated with the Religious Right are highly critical of OBE, 
as am I, but for different reasons.... In response to the March 1994 issue of Educational 
Leadership, which portrayed OBE in a positive light, I would like to consider the language of 
OBE as revealed in Choosing Outcomes of Significance by William Spady. Individual words 
and phrases jump out at me as a reader. Following are terms that Spady used frequently and 
that particularly troubled me... "outcomes, generalizable, Discrete Content Skills, microforms 
of learning, Structured Task Performances, components in a larger block of curriculum, com- 
petence, mental processing, performance enablers, execution, Higher-Order Competencies, 
technical and strategic Life Performance Roles."... 

Such mechanistic, instrumentalist language has a constraining effect on me as a reader, 
just as OBE has a constraining effect on school reform. This list reads like the terminology 
of the CEO or the social engineer — very much in the management-oriented, positivist-be- 
haviorist tradition.... 

...With OBE, outside experts prescribe what is best for students and teachers, who re- 
main essentially voiceless. Uniform outcomes are designed and implemented in a curriculum 
that reduces thinking to mental processing.... 

All the bottom-line language reminds the reader of the boardroom. Of course, Spady's 
High Success Network is a business. But children are neither customers nor products, and 
a school is not a business.... 

OBE language is the scientistic, industrial language of Tyler and Skinner as documented 
by Callahan (1962) in Education and the Cult of Efficiency. Ultimately, the language of OBE 
is controlling, narrow, mechanistic, and finally, impoverished. Our students and teachers 
deserve more than OBE has to offer. 

[Ed. Note: Professor Schwarz's comment that OBE "reduces thinking to mental processing" calls 
to mind the Thomas Kelly quote: "The brain should be used for processing, not storage."] 

A Reaffirmation of Faith in Maine's Public Schools, edited by Margaret L. Stubbs, Ph.D. 
of the Maine Department of Education in Augusta, Maine, was published in 1995. This docu- 
ment revealed the extraordinary thrust towards a partnership between religious institutions 
and the public schools. Reaffirmation of Faith also describes the socialist (planned economy) 
nature of workforce training in Maine. Excerpts follow: 

Religious and spiritual institutions have the responsibility to cultivate within their organiz- 
ations the values they hope will guide their constituents' lives in a changing world that offers 
not only opportunity and beauty but also great danger, and in so doing have a complementary 
role to play as community participants in systemic school change.... 



The Noxious Nineties : c. 1 995 



355 



Before hiring a student, even for part-time work, review each student's work portfolio; 
the portfolio should contain vital information as to the student's school attendance record, 
achievement and assessment, sample writings, letter of recommendation, etc.... 

...Two-year degree programs in regional Vocational/Technical Centers for public high 
school graduates.... Courses would be based on an assessment of the work needs of the 
region. The particular courses would "sunset" once the needs of the area were fulfilled and 
new courses for the associate degree would be offered to fulfill new assessed needs for the 
area. 

[Ed. Note: The last two sentences regarding "assessment of the work needs of the region" and 
courses "sunsetting" once the needs of the area were fulfilled show that Maine has adopted 
the same system described by Professor Eugene Boyce when he said in communist countries 
education is "directly tied to jobs.... They do not educate people for jobs that do not exist. No 
such direct controlled relationships between education and jobs exists in democratic coun- 
tries" (see 1983 Eugene Boyce entry). Suppose your child wants to take a course that has 
"sunsetted"? Will he/she have to leave the state in search of such a course, or be deprived of 
the opportunity?] 

H.R. 1617 or The CAREERS Act (Consolidated and Reformed Education, EMPLOYment, and 
Rehabilitation Systems Act) passed the U.S. House of Representatives in September of 1995. 
The law calls for four consolidated job training programs to replace formerly existing programs: 
youth development and career preparation; adult training; adult education and literacy; and 
vocational rehabilitation. This legislation was based on school-to-work legislation passed in 
1994. Four block grants for job training were tied together at state and local levels to form one 
cohesive system organized around a single plan submitted to the federal government. 

Under this plan states would develop one-stop delivery systems, business-led unelected 
local workforce boards, and voucher programs to allow them to maintain "top-notch state- 
of-the-art job training programs." State legislatures would be bypassed and money would be 
driven to states and communities (in most cases 80% funding is spent locally). H.R. 1617 
gave enormous power to state governors and removed the power of local school boards to 
determine what is best for their students. Labor market information systems, funded by the 
federal government to increase availability of information provided to those who need addi- 
tional job training, would be strengthened. 

To promote accountability, The CAREERS Act set up a system of goals and performance 
indicators to ensure that states, communities, service providers, and "clients" are all focused 
on results. The Act consolidated or eliminated more than 150 program authorities. This legis- 
lation fulfilled requirements outlined in Marc Tucker's letter to Hillary Clinton following the 
November 1992 election. H.R. 1617 represented a radical change in America's free economic 
system. (See Appendix XV.) 

IN 1995 REPORTS OF OUTCOME-BASED EDUCATION FAILURES CONTINUED TO SURFACE: CHICagO, Il- 
linois; Johnson City, New York; Utah OBE Project; Kentucky; Pasco, Washington; California; 
Rochester, New York (Carnegie National Alliance for Education and Economy — Marc Tucker/ 
David Hornbeck pilots) ; Cottage Grove, Oregon (first high school in nation to issue the Certificate 
of Initial Mastery, which originated and is copyrighted by Marc Tucker's Center for Education 



356 



and the Economy); Ted Sizer's Coalition of Essential Schools (funded by Carnegie's Education 
Commission of the States and multi-millionaire Walter Annenberg); inner cities — most of which 
used Mastery Learning — especially Washington, D.C.; and Secretary of Education Riley's home 
state of South Carolina (lowest test scores in the nation). These failures and troubling conse- 
quences were reported in major newspapers, magazines and education-related journals. 

[Ed. Note: The writer predicts that once schools have been manipulated into substituting non- 
competitive criterion-referenced testing for competitive norm-referenced testing, the dismal 
test score scenario will be a thing of the past, as a result of the proposed "quality" teach-to-the 
test measures of educational achievement being put in place. Then, all parents can plaster 
their cars with "My Child Is an Honor Student" bumper stickers.] 

Tri-Cities Foundation for Academic Excellence (TFAE) of Pasco, Washington issued a press 
release in 1995 entitled "Survey of Former Pasco, Washington Teachers Gives Outcomes-Based 
Education Insights" which read as follows: 

In 1988 the Pasco School District piloted OBE and has since been used as an OBE role 
model for education reform across Washington State and the nation. During the 1992-93 
and 1993-94 school years, the Pasco School District lost more than one hundred teachers. 
Tri-Cities Foundation for Academic Excellence (TFAE) surveyed these former teachers to 
obtain their insights on the OBE program and establish whether or not the OBE philosophy 
and the manner in which it was implemented were influential factors in their leaving the 
District. Are teachers currently being coerced or forced to leave the Pasco School District if 
they are not using the Outcomes-Based Instructional Model? The following results represent 
responses from teachers in a district used as a model for Washington state's now-mandated 
Outcomes-Based Education and OBE across the nation: 

• 68% responded children did not benefit from Outcomes-Based Education; 

• 86% responded Outcomes-Based Education divided teachers and created polarized 
camps; 

• 27% stated that they were asked to leave if they didn't agree with Outcomes-Based 
Education. 

The survey was designed for complete confidentiality and anonymity. 46 

[Ed. Note: Barbara McFarlin-Kosiec, Ph.D. in Educational Leadership, a veteran teacher in 
the Pasco School District, has filed suit against the district due to its non-renewal of her con- 
tract. The non-renewal was based on the vice-principal's opinion that she failed to use the 
instructional process of OBE in the classroom. Ms. Kosiec's suit is based upon her belief that 
her constitutional rights have been violated; i.e., in order to continue teaching in the district 
she was required to go along with an alien philosophy and to hold certain politically correct 
attitudes and beliefs. 47 ] 

National Issues in Education: Goals 2000 and School-to-Work edited by John F. Jen- 
nings, general counsel for education for the Committee on Education and Labor of the U.S. 
House of Representatives (Phi Delta Kappa: Bloomington, Ind., and Institute for Educational 



The Noxious Nineties : c. 1 995 



357 



Leadership: Washington, D.C., 1995) was published. 48 The following are comments by Mr. 
Jennings which reveal some heretofore closely guarded secrets related to the roots of Goals 
2000 and The School-to-Work Opportunities Act: 

Now there is a measure of national agreement that there should be voluntary national stan- 
dards.... All the major education organizations, all the major business groups, the nation's 
governors, the current Democratic president, and the former Republican president have all 
advocated this concept. The purpose of this book is to explain why and how this agreement 
came about by focusing on two major legislative initiatives of the Clinton Administration: 
the Goals 2000 Act and the School-to-Work Opportunities Act. The Clinton initiatives are 
rooted in the Bush legislation and in the summit conference held by President Bush with 
the nation's governors in Charlottesville, Virginia, in 1989, in which then-Governor Clinton 
took part. At that event the governors and the President agreed on the concept of national 
goals for education, the first ever to be devised. 

While previously there had been some acceptance of the idea that the federal government 
had a role in dealing with special needs children and with certain problems in education, 
there had not been agreement in this century that the national government had a legitimate 
concern about the general state of education. And, it is important to point out, the governors 
did not universally endorse the idea of expanding the influence of the federal government 
in education. Some — probably most — hoped that some new way could be found to raise the 
issue of education to a level of national awareness without relying on such past practices 
as federal grants. The tension created by trying to find this new way permeated the debate 
that took place during the next five years. 

President Bush complemented his meeting with the governors by sending to Congress 
legislation that he believed would reform education. That bill contained a number of small- 
scale programs seeking to change a few schools and practices. The Democratic House and 
Senate reluctantly passed a version of Bush's bill. However, very conservative Republican 
senators subsequently filibustered the final bill; and the initial Bush school reform initiative 
died in 1990. 

In 1991 Lamar Alexander was appointed secretary of education by President Bush, and 
he substantially revised the bill that the Senate had killed the year before. Alexander, work- 
ing with Chester Finn and others who were familiar with the work of British Prime Minister 
Margaret Thatcher in enacting a national curriculum in England and Wales, convinced Bush 
to endorse the idea of national standards for education. 

[Ed. Note: Of interest here is that the National Assessment of Educational Progress (NAEP) 
had been working on assessment for many years, dating back at least to 1980, with Clare 
Burstall of Wales, U.K.] 

The internationalization of education, with its exchanges of data systems, curricula, 
methods, technology, teachers, etc., is essential for the implementation of the international 
socialist management and control system being put in place right now. A fascinating book 
entitled Union Now: The Proposal for Inter-Democracy — Federal Union (shorter version) by 
Clarence Streit (Harper Brothers Publishers: New York and London, 1941) described plans 
for the reunification of the United States and England, the first stage of which is presently 
being expanded to include the European Community and former (?) communist countries in 
Eastern Europe. 

Our nation's replication of the English education system, as proposed by Lamar Alexander 
and Chester Finn, coincides with the proclaimed desire of Andrew Carnegie in 1886 to "create 
two nations out of one people" (return the United States to the "mother" country— England) . 



358 



Carnegie's corporation of the same name and all of its subsidiaries have been the principal 
organizations in charge of American education. Through funding of the most important entities 
controlling American education — the Educational Testing Service, the National Assessment of 
Educational Progress, the Education Commission of the States — and through its most important 
exchanges with the "former" Soviet Union, Carnegie's power, influence, and point of view have 
been strongly felt throughout this century. Lenin would be pleased indeed with the accom- 
plishements of the Carnegie Corporation in promoting what Lenin referred to as international 
socialism through the creation of individual regions and later through the amalgamation of 
those regions into an international socialist system; i.e., one world government. 

The following quote from Andrew Carnegie's Triumphant Democracy or Fifty Years' March 
of the Republic (Charles Scribners Sons: New York, 1886) is thought provoking: 

Time may dispel many pleasing illusions and destroy many noble dreams, but it shall never 
shake my belief that the wound caused by the wholly un-looked for and undesired separation 
of the mother from her child is not to bleed forever. Let men say what they will, therefore, I 
say, that as surely as the sun in the heavens once shone upon Britain and America united, 
so surely is it one morning to rise, shine upon, and greet again the reunited state, the Brit- 
ish-American union. 

Jennings's revelations from National Issues in Education continue below: 

The governors and the President had agreed on national goals for education in 1989, but 
they had not proposed national standards for education. Therefore, Bush's second reform 
plan moved national involvement in education to a more advanced stage.... 

A Republican president proposing such national standards in education was the edu- 
cation policymaking equivalent to the reshaping of foreign policy when President Nixon went 
to China. Richard Nixon had made a career out of attacking Communism and calling liberals 
sympathizers of that ideology; and then he — not a liberal — opened the doors to "Red" China, 
the same doors that he had spent 25 years locking. 

[Ed. Note: It was also under Nixon's watch that the National Institute of Education was created 
and it was he who carved the nation into ten regions, facilitating the change in our constitutional 
governance from a constitutional republic to a participatory democracy— through the regional 
government process necessary for world government. The late Senator Edmund Muskie (D.- 
Maine), referred to as "Mr. Metro" by those opposed to regional government, said Nixon had 
accomplished what several democratic administrations had been unable to accomplish!] 

Jennings continued his fascinating account as follows: 

Democratic Presidents Kennedy and Johnson had proposed a major expansion of federal aid 
to education in the 1960s and had achieved the enactment of historic legislation that created 
the current array of federal programs. But they were dogged along the way by criticism from 
conservatives who asserted that the liberals were really trying to nationalize education. Now, 
25 years later, it was a self-proclaimed conservative Republican, not a liberal Democrat, who 
was advocating a monumental movement away from local control of education. 

Despite the importance of the second Bush legislation, it ran into the same problem 
as the first. A Democratic Congress reluctantly passed the bill in the House and the Senate, 
but the conference report again was filibustered by very conservative Republican senators 
who were not as impressed as were Bush, Alexander, and Finn with the accomplishments 



The Noxious Nineties : c. 1 995 



359 



of Margaret Thatcher in establishing a national curriculum. 

[Ed. Note: The writer would like to repeat the quote from Theodore Dalrymple (pen name for 
Dr. Anthony Daniels), the British physician who wrote for The Wall Street Journal in 1988 the 
following observations concerning the deplorable condition of the English education system 
which Bush, Alexander and Finn wished to emulate: 

In eight years in medical practice in an English slum (in which lives incidentally a fifth of 
a population of the industrial English city where I work) I have met only one teen-ager of 
hundreds I have asked who knew when World War II was fought. The others thought it took 
place in the 1900s or the 1970s, and lasted up to 30 years.] 

National Issues in Education also includes a chapter by U.S. Secretary of Education 
Richard W. Riley. Riley provides two delicious morsels regarding the "bipartisan" atmosphere 
surrounding the birthing of Goals 2000 and the School-to-Work Opportunities Act: 

The National Goals Panel was actively opposed by Congress which felt no ownership and 
resented the non-voting status of Congressional members.... (p. 5) 

. . .Truth was the reform movement at the national level had no statutory basis. Even ten 
years after the report A Nation at Risk, there had been little federal response. The National 
Education Goals, three years after their announcement, had no legal standing of any kind. No 
federal initiative, no funding or flexibility had been enacted to provide states, communities, 
or schools with the assistance they needed to reach these important goals. Most troubling 
of all, as attractive as the goals were, as important as they were, as essential as they were, 
in the final analysis they represented nothing more than a political agreement between a 
former President and the nation's governors. We decided to take the seeds of interest we had 
inherited and transform them into a national movement — a movement in which states and 
local districts with a clear vision of where they wanted to go could count on the American 
people and the federal government as partners in the journey. Thus the Goals 2000 — Educate 
America Act was conceived, (p. 6) 

[Ed. Note: The reader by this time recognizes the fact that the American people did not buy 
into Goals 2000/School-to-Work, that the government was compelled to use its change agent 
manual — the bag of tricks in the Community Action Toolkit — to implement the restructuring 
and get key legislation passed. (See Appendix XIV.) 

In December of 1995 the following information was excerpted from United States In- 
formation Agency internet sources and put into summary form by education researcher and 
writer Joan Masters of Bowie, Maryland: 

December 3, 1995: Madrid, Spain— U.S. President Bill Clinton, president of the European Com- 
mission Jacques Santer, and Prime Minister of Spain Felipe Gonzalez, who is also president 
of the European Union's Council of Ministers, formally endorse a New Transatlantic Agenda 
(NTA). The NTA would enable the two sides, the US and the EU, to join forces to deal with a 
wide range of international, political and economic issues. The New Agenda's "joint action" 
has some one hundred "initiatives" aimed at achieving four broad objectives: 

1 . Promoting peace, development and democracy around the world; 

2. Responding to global challenges; 



360 



3. Contributing to the expansion of world trade; and 

4. Building bridges across the Atlantic. 

With little or no national debate the United States is committed to become the Eu- 
ropean Union's "partner" in solving most of the world's problems. Only the enlargement 
of NATO receives wide coverage. (On September 9, 1997, 133 of the United States' "leading 
foreign policy experts and statesmen" signed the New Atlantic Initiative Statement on NATO 
enlargement. These signers cover a broad range of America's well-known nationalists and 
internationalists. John O'Sullivan, editor of William F. Buckley's "conservative" journal 
National Review, resigned his position to become founder and co-chairman of the New 
Atlantic Initiative.) 

December 21, 1995: Washington, D.C.— Dr. Joseph Duffey, Director of the United States 
Information Agency (USIA) and Mr. Jeronimo Saavedra Acevedo, minister of science and 
education of Spain, signed an agreement between the United States of America (U.S.) and 
the European Community (EC) establishing a cooperation programme in higher education 
and vocational education and training. This agreement is in keeping with the fourth NTA 
objective — "Building bridges across the Atlantic" — and establishes a "formal basis for the 
conduct of cooperative activities in higher education and vocational education and train- 
ing." The annex of this seven page Agreement reveals that the US/EC will form a consortia 
to support education institutions and vocational training establishments undertaking joint 
projects. Each consortium will be supported by seed funding and will mutually agree upon 
eligible subject areas. Activities eligible for support may include: frameworks for student 
mobility, including work placement; structured exchanges of students, teachers, trainers, 
and administrators; joint development of innovative curricula; and transatlantic coopera- 
tion. Among other things too numerous to mention here, the joint consortia projects will be 
made available for the use of "a wider audience. " No longer called citizens, the Agreement 
acknowledges "the crucial contributions of education and training for the development of 
human resources capable of participating in the global knowledge-based economy." [em- 
phasis in original] 

By 1996 grants were already being given to US colleges and universities for such projects 
as: "Global Dimensions in Health Care;" "Atlas" — a project for environmental management; 
and "US/EU Export Development Program," a feature of which is the use of student mobility, 
"not just for academic purposes, but also as part of an export development program designed 
to facilitate more transatlantic trade for local business and industry." Another very interestingly 
named project, given out to seven different American institutions, is called "Work World 
2000: An International Strategy for School-to- Work Transitions." Using simulations of both 
American and European workplaces and company models, students will learn the structures 
of international business and follow up with transatlantic exchanges and internships. 

December 1995: Brussels, Belgium — Representatives from the nations of the European Union 
release their study group report called Accomplishing Europe through Education and Training. 
For Americans to understand the inherent dangers of throwing in our lot with the social- 
istic states of Europe, especially in the field of education, this report needs to be studied in 
depth. It's no secret that some conservatives in the U.S. believe that a European education 
is far superior to what has been offered in our public education system in the last thirty 
years. And this may be right, at least academically. On the other hand, there are those who 
believe many of the "innovations" we are plagued with, such as sex education, originated 
in Europe, especially in England. One European group doing studies on "multi-media" mate- 
rials complains that most of the educational software in the EU comes from the US. So, it is 
difficult to know for certain which continent created the propaganda horrors inflicted on our 
children today in the classrooms of our respective countries. But whatever the truth, much 



The Noxious Nineties : c. 1 996 



361 



as the Soviet Union once tried to create the "Soviet Man," the European Union study group 
report is laying out a plan to develop the "European Union Citizen." 

The report reminds its readers of the history of pagan times and the great philosophers 
of Greece, then recalls Europe's Christian roots, implying that the Union of Europe's ancient 
nations has now begun a new age; education of the Union's children must change to ac- 
commodate this modern era of globalisation and dissemination of information technologies. 
For Americans, who cut their milk teeth on the ideals of independence and freedom, and 
the belief that anyone who works hard can overcome anything, even class, one sentence is 
particularly chilling. The report says, "Trends in work/employment practices and the emer- 
gence of a learning society will be even more instrumental in defining everyone's place, 
as a function of skills and knowledge built up throughout life. " But with all the talk of the 
information society and "life-long learning," these European educators predict that "ever- 
increasing ecological pressures will prompt a radical re-think of our model of economic 
growth with increasing emphasis on 'sustainability.'" This contradictory vision of economic 
growth and environmental sustainability may yet be the un-doing of the New World Order 
on both sides of the Atlantic. 



1996 

The Chicago Tribune of February 14, 1996 carried the article "School Plan Skips over 
the Basics." Some excerpts follow: 

Yet for all their specifics, school leaders said Tuesday that they will not spell out many details 
on how they will implement their version of direct instruction, a back-to-basics instructional 
approach that has won national acclaim for improving student achievement at other inner 
city schools.... 

Chicago school officials were so impressed with the approach, which uses scripted 
lessons delivered in a rapid-fire manner, that a contingent of them flew last year to Houston 
to see how direct instruction helped one of the schools post some of the highest test scores 
in Texas.... But for now, Chicago school leaders said they need more time to "customize" 
direct instruction to fit the local needs.... 

"The educational plan is a big plan, and it's comprehensive," said Paul Villas, chief 
executive officer of the schools. "We've looked at a lot of solutions and direct instruction is 
just one of them."... DeChico maintained that they remained enthusiastic about the direct 
instruction approach.... 

One other top school official indicated that the early draft of the education plan included 
only a few lines about it. The reason, according to the source, was because of complaints, 
particularly from local teachers, that the approach is too time-consuming and stunts teacher 
creativity... The administrator suggested that school leaders may have been swayed by 
teacher complaints that direct instruction requires too much of teachers, who would have 
to study the scripted lessons nightly for the next day. . . . 

Villas said that by June, school leaders will be ready to trot out details on how they 
will use direct instruction. 

[Ed. Note: Where are the norm-referenced test scores that prove student achievement in in- 
ner city schools? Or, has enough time passed (16 years) that the change agents can count on 
parents and teachers having such short memories that they have forgotten that 18,000 inner 
city students dropped out of high school due to the same "rat lab" Chicago Mastery Learning 



362 

experiment to which they were subjected between 1968 and 1981?] 

The Chicago tribune ran the article "City Schools Dropping Iowa Skills Tests" on March 
7, 1996. An excerpt follows: 

The new test would assess whether students have mastered what they have been taught.... 
One potentially contentious issue remains: direct instruction, a strategy aimed at forcing 
low-achieving schools to accept a curriculum based on scripted lessons and recitation.... 
"I can't imagine that the majority of the teachers in our school would at all be willing to 
implement direct instruction," said Julie Wopestehoff, Executive Director of Parents United 
for Responsible Education. 



An untitled article appeared in The Chicago Sun Times on March 8, 1996. An excerpt 
follows: 

Determined to show that all Chicago public school students can succeed, DePaul University 
is waiting for the stroke of Governor Edgar's pen to kick off plans for its own charter 
school.... "These children can learn at the same rate as the children of Ph.D.'s.... We have 
a list of things we can choose from. There's direct instruction, whole language, team learn- 
ing, cooperative learning," said Barbara Sizemore, Dean of DePaul University's College of 
Education, Chicago. 

[Ed. Note: Well, well. This quote stripped the Empress and her change agent associates of 
whatever clothing they had left — which wasn't much due to this type of "bait and switch" 
technique having been used on parents over and over again. Create the problem; parents 
scream; impose a solution they would never have accepted in the first place; parents gratefully 
accept it, not knowing the only difference between the solution and what they had before is 
a new label. 

Some parents understood the manipulative mastery learning method. This writer has 
boxes full of letters from teachers, doctors, and parents in Texas, Ohio, Arizona, Indiana, etc., 
deploring the serious negative effects of mastery learning — sickness and stress. But when the 
change agents substituted the "direct instruction" label for the failed "mastery learning" label, 
how could parents be expected to recognize the deceit? 

Actually, it does take some kind of nerve to propose a solution which only fourteen years 
earlier had been discredited as a failure in Chicago, and which has put Chicago, Washington, 
D.C., and South Carolina at the bottom of the heap as far as test scores go. If one checked all 
the other inner city schools that have used this Skinnerian method, one would find only minor 
differences between their low test scores and those of the three mentioned above. 

Dean Sizemore was telling parents and teachers something — something very important. 
She was obviously very proud of the menu being offered to the naive charter school parents 
and children in Chicago — the menu to be offered to all schools in the nation. The implement- 
ation of site-based management (unelected, hand-picked councils) would assure approval of 
Sizemore's controversial outcome-based education which consisted of cooperative learning 
and Engelmann's direct instruction/DISTAR/SRA/mastery learning in conjunction with lit- 
erature-based whole language instruction, etc.— a delicious concoction to be sure, guaranteed 



The Noxious Nineties : c. 1 996 



363 



to further dumb down our children. 

Parents, Direct Instruction is not back-to-basics (teacher-directed instruction of content, 
with the teacher teaching in the front of the classroom) . It is fast-forward into the world of 
global workforce training, where the teacher will be in front of the classroom chanting, not 
instructing; your children will be expected to "perform" like rats or pigeons, not learn aca- 
demic content. 

Parents want teachers to teach content which their child can relate to other parts of 
his/her life for complete understanding; they want their child to be able to make connections 
between what he/she learns and past knowledge, to be used in the future. Chanting back what 
a teacher chants is not learning — it is training. There can be no transfer of knowledge when 
bits and pieces of information which relate to nothing are all the "robots" can repeat. Parents 
don't want teachers to be controllers or directors, and they surely don't want their children to 
be passive learners chanting back answers like parrots, mimicking what a teacher says. Such 
training considers your child as nothing but a raw resource to be prepared and molded as a 
product. Traditional education, which allows for give and take between teacher and student 
(creativity) is the last thing in which the corporate/education elite is interested. 

This new type of education (training), in conjunction with mandatory community ser- 
vice, workforce preparation starting in elementary school, mandatory uniforms for America's 
school children, new school board policies regarding fighting in school which will allow the 
police to come to the school and drag your children into holding tanks for further prosecution, 
etc., sends chills down the back of this writer. It brings to mind the ugliness of a recent era in 
history which many seem to have forgotten.] 

In-service teacher training was held in Chicago, Indianapolis, and Minneapolis during 
the first part of May in 1996. The flyer advertising these events stated the following: 

NATIONAL EDUCATION INSTITUTE PRESENTS 

Using Research-Based Teaching Techniques to Increase Student Learning: 
Or How to Teach Anyone Anything 

PROGRAM AGENDA: 

The three key parts of direct instruction; discover the major and minor differences between 
direct instruction and traditional teaching methods. 

National consultant, teacher and trainer Adrienne Allen conducted the training sessions. 

[Ed. Note: This flyer was received from a homeschool mom who said the "research-based" 
training was for homeschoolers. The above quote presents a very different picture from that 
being circulated throughout the nation which describes direct instruction as a "traditional" 
teaching method.] 

"DUMBED-DOWN SATS DISGUISE DEFICIENCIES — THE FAULT, DEAR EDUCATOR, IS NOT IN Our Tests," 

by George C. Roche, president of Hillsdale College in Hillsdale, Michigan, was published in 
the July 5, 1996 issue of Human Events. Dr. Roche's article underscores the success of the 
internationalist change agents' relentless efforts to dumb down our children and, in turn, our 



364 



nation. The following excerpts are most enlightening: 

"SAT Scores Rise Strongly after Test Is Overhauled" read a Wall Street Journal headline. 
The continuation of the article carried the title "SAT Scores Post Strong Increase." Good 
news? 

Hardly. The "higher" scores came from a "dumbed-down" test. Students now have 
an extra half hour to complete the "new" Scholastic Aptitude Test. They now use electronic 
calculators and answer fewer questions in general and fewer multiple-choice math questions 
in particular. Reading passages now ask definitions from context. And the difficult antonym 
section (involving knowledge of words that are opposite in meaning) , calling for linguistic 
and intellectual subtleties long lost, has been dropped entirely. 

...Here's the College Board's rationale for the changes: "Students taking the SAT in the 
1990s are substantially different from those who took the test in the 1940s when the scale 
was created. Continuing to force-fit their scores to a scale established for a very different 
group of students reduces the interpretive value of the score within the population for the 
sake of slavish consistency to the original scale and comparisons over time. " 

They'd like you to be persuaded by exaggerations like "force-fit" and "slavish" and 
breeze past their statement that today's students are "substantially different" from those who 
took the test in 1940. I'd like you to be persuaded that the College Board just admitted that the 
educational system's "substantially different" students are really "substantially deficient." 

...The history standards of the government's new Goals 2000 program, drenched in 
political correctness, highlight America's admitted faults and leave out much that is positive. 
OBE students going through the Goals 2000 program wouldn't have much of a chance with 
the older, tougher SAT test, but the easier version, plus the "recentering" changes now in 
place will help disguise actual deficiencies. 

Putting an artificially higher number on actually lower academic performance only 
highlights the problems facing American education. You can fiddle with the figures forever, 
but as long as education "professionals" refuse to be honest with our citizens, matters can 
only get worse. 

[Ed. Note: Not only did Dr. Roche vent his frustration with the new SAT, The New York Times, 
in an article entitled "Defining Literacy Downward" in its August 28, 1996 issue, stated: "The 
S.A.T. turns poor performance into a new norm."] 



Diana M. Fessler, a duly-elected member of the Ohio State Board of Education, wrote 
"An Open Letter to Governor Voinovich and Members of the General Assembly" on August 5, 
1996. That there are still elected officials who take seriously their duties to represent their con- 
stituents and not government officials in a state department of education is cause for rejoicing. 
Excerpts from this important and illuminating letter, which gives a first-hand account of the 
ridiculous tax-supported antics required by the bureaucracy to create "group think," follow: 

This letter will not engender the good will of my colleagues on the State Board of 
Education (SBE) , but I value good government more than camaraderie. Three problems ex- 
ist: using public money for questionable activities, discussing crucial issues at locations not 
convenient for the public, and attempting to squelch First Amendment rights. SBE retreats 
have been hotbeds for these misdeeds. 

During the August '94 retreat, members were blindfolded and collectively tied up with 
rope, reportedly, to identify members with leadership skills. 



The Noxious Nineties : c. 1 996 



365 



The January '95 retreat was my first after being elected. Stated goals were priority setting 
and "team building." Dividing us into two groups, the facilitators gave each person five or 
six cardboard puzzle pieces from different puzzles. They instructed us not to speak, point, or 
otherwise show that we needed certain pieces from one another in our group. We had thirty 
minutes to finish our individual puzzles. I finished the task in two or three minutes and then 
struggled to remain silent, yet, after looking at the pictures from the previous retreat, I spoke 
out against spending public dollars on games. A facilitator tried to shush me. Unintimidated, 
I urged our group to help the other one so we could go on with business. Our group was 
admonished for breaking the rules. Puzzling rules, if the mission was team building. 

Loath to attend the five-day January '96 retreat, I went because committee minutes 
showed a request for the code of ethics from another state's appointed board. My antenna up, 
I was not surprised when the facilitator asked us to list attitudes and behaviors we expected 
of one another. Terms like respect, tolerance, team work, and speaking with one voice were 
used. I asked if we were creating a code of ethics and the answer was yes. I reasoned that 
an appointed or volunteer board might need a code of ethics if they do not use some form 
of parliamentary procudure, but, for the SBE, such a code would be superfluous. We have 
each sworn an oath to support the Constitution and obey the law, and our meetings are 
governed by parliamentary law. The issue was dropped, temporarily. 

More game-playing. Approaching from opposite sides at the same time, each team 
was instructed to cross a large mat that was divided into squares and to avoid the squares 
that had embedded beepers. A beep signaled the person to retrace his steps and the team to 
start over. Observing from the sideline, I could not stand the foolishness any longer. I broke 
the rules by putting paper on the non-beeping squares to mark the path. As I watched two 
adult bodies share a space big enough for two shoes, not four, I wondered what this had to 
do with public education or public policy debate. After dinner, some board members were 
roped together. 

Days later, the code of ethics issue resurfaced when a member raised the noxious idea 
that we should "speak with one voice." Most members seem to believe that once the Board 
adopts a resolution, all members must support it, regardless of its merit or lack thereof, 
because it is the will of the majority. As an elected official, it is my responsibility to speak 
on the behalf of those who elected me — not to be an echo of the Board. Accordingly, even if 
all other members vote yes and I cast the only no vote on matters of substance, I cannot 
promote that to which I am opposed, nor do I feel any obligation to remain silent. 

The discussion of speaking with one voice included the absurd notion that the Ohio 
Department of Education's (ODE) 500-plus employees (the bureaucracy) and the nineteen- 
member State Board of Education are just one big happy family — blurring the distinction 
between the two and minimizing SBE's authority to direct the ODE. No one except me 
seemed to reject this fallacy. 

Speaking with one voice also included the notion that members should not attend 
legislative hearings or otherwise influence legislation, but should reserve those activities 
for ODE staff. The concern was that a legislator or the press might regard a member, not as 
a citizen, but (forbid the thought) , as a member of the SBE and therefore might take heed 
to any comments or concerns! Nevertheless, members are encouraged to support majority 
opinion, under the supervision of ODE personnel. I immediately reacted by saying that the 
SBE cannot make policies that violate the Constitution. Agitated, the same member who 
raised the issue asked me, "Why not?" Incredulous that an American in public service 
would need to ask such a question, I explained that I will not surrender my rights of free 
speech and association. The ODE attorney remained silent throughout this heated exchange 
although another member suggested that such a policy could be a public relations problem. 
We adjourned. 



366 



"Parents Turn to Tutors: Rebellion against Whole Language" by Rosalind Rossi and Sha- 
ron Cotliar was published in The Chicago Sun-Times on August 12, 1996. Excerpts follow: 

Jean Iovino, owner of eight Sylvan Learning Centers in the suburbs, said the number of 
beginning readers in her centers has skyrocketed in the last five years.... Many parents sug- 
gest that the shift from phonics to the "whole language" philosophy of reading instruction 
is behind the drop in scores.... "Our business has increased 20 percent a year every year for 
the past four years, " said Vickie Glazar, spokeswoman for Maryland-based Sylvan Learning 
Systems. 

[Ed. Note: Sylvan Learning Centers use mastery learning/direct instruction. The Reading 
Excellence Act of 1998 (H.R. 2614) contains the legally questionable call for the use of Sylvan 
Learning Centers: "Tutorial service providers might include public agencies, non-profit private 
organizations, and profit-seeking private business firms (e.g., Sylvan Learning Centers)."] 

"A Guide to Competing Teaching Methods" by Rosalind Rossi was published in The Chicago 
Sun-Times on August 12, 1996. A portion of "A Guide" follows: 

Direct Instruction: A method of instruction in which the teacher directs lessons in carefully 
sequenced steps. In one of its most conservative forms, developed by Siegfried Engelmann 
of the University of Oregon, teachers use textbooks with child-tested scripts to teach phonics 
in small steps, and children repeat back words, or give answers as a group in fast-paced, 
rhythmic, "choral chants." Often includes heavy use of workbooks. Complaints about direct 
instruction: The Engelmann method, used alone, has been accused of turning teachers into 
robots, of robbing children of the joy of reading real books at an early age and of empha- 
sizing sound over meaning. 



Dr Shirley McCune, project director for the Mid-Continent Regional EDUCAtional Labo- 
ratory (McREL) wrote The Light Shall Set You Free (Athena Publishing, Alpha Connections: Santa 
Fe, New Mexico, 1996), in which she revealed her theological connections with New Age guru 
Alice Bailey. Excerpts from McCune's book underscore the fact that the U.S. taxpayer is pay- 
ing the salaries of social engineers with bizarre beliefs who are wreaking havoc in curriculum 
development and organizational restructuring of the nation's schools. Excerpts follow: 

Those who journey into the Light will move with us in the ethers to live in the Fifth 
Dimension and above. Those who choose to stay in the lower vibrations will be provided 
for accordingly also. The Earth will be cleansed in the next decade for the purification must 
be complete.... The way to the Light is to increase your vibratory frequency... This point of 
Light stimulates each breath we take.... The Light is within.... This tremendous source of 
power can be accessed only by going within the mind's eye and by listening to the silence.... 
This path requires a whole new curriculum and set of guidelines to describe our existence.... 
The Light is within us always, silently waiting to be discovered, to show us the way back to 
our divinity. . . . Each individual is actually a co-creator with the Divine. . . . The date for entry 
into the Fifth Dimension is scheduled for the year 2012, says Kuthum [An alleged "ascended 
master" who supposedly transmitted his ideas to Madame Blavatsky, founder of the Theo- 
sophical Society and author of The Secret Doctrine and his Unveiled, ed.].... 



The Noxious Nineties : c. 1 996 



367 



...We are entering the Age of Aquarius.... The goal for all of humanity who will enter 
the new millenium is to become androgynous.... Educational systems, businesses, political 
structures, and governments all built on self-serving principles, for example, are crumbling, 
only to be re-born through tremendous pain into higher forms. Thus, we are witnessing "the 
end of the world" and we do not even recognize what we see. Standing on the threshold 
of the Aquarian Age. . . we can align our bodies and our behaviors to create harmony and 
consistency with the God within us. 



"Understanding Outcome-Based Education," an article written by Jerry L. HADdock, 
Ed.D., regional director for Southern California/Southern Nevada and director of curriculum 
for the Association of Christian Schools International (ACSI), and Sharon R. Berry, Ph.D., a 
director of curriculum of ACSI, was published in 1996 and circulated throughout the ACSI 
network of Christian schools. 49 Excerpts follow: 

MASTERY LEARNING 

Developed from Skinnerian psychology, Mastery Learning proposes that students should 
be taught until they have learned a subject no matter how long it takes. Believing that all 
learning could be broken into minute, successive steps of behavior, thousands of objectives 
for each subject area were published in voluminous books. The difference in Outcome-Based 
Education is a specification of a smaller number of more general outcomes. For example, 
there are 36 outcomes specified for graduation in the Littleton, Colorado project.... 

On the last page of the article— as a part of a larger category entitled "Where Do We 
Stand?" — under the title "Mastery Learning" the authors assert: 

This [mastery] is also an important part of the Christian school. No, not in the sense that 
secular OBE proponents advocate, but with a Christ-honoring emphasis. One that says every 
student is important enough to have an appropriate instructional program and a teacher who 
is sensitive enough to do what is necessary to ensure that the student masters curriculum at 
his/her ability level. The distinction here is that we should not require all students to learn 
at the same rate. God has given each of us different talents and abilities. To the best of our 
ability we ensure that students achieve basic standards, with all students being challenged 
to reach their potential. As Dr. Bruce Wilkinson, author of "The 7 Laws of the Learner," has 
emphasized, "If a student hasn't learned, the teacher hasn't taught." 

[Ed. Note: It is difficult to understand ACSI's support for a method of teaching which is 
clearly based on Darwin's theory of evolution (that man is an animal), which uses Skinnerian 
stimulus-response-stimulus operant conditioning. How can Christian educators and parents 
oppose the teaching of evolution at school board meetings across the country and then return 
to their homes/schools the next day and use a method of teaching/learning which is based 
on the evolutionist theory which they oppose? Personally, this writer does not agree with Dr. 
Wilkinson's statement concerning the student and teacher. Sometimes, no matter how well a 
teacher may teach, the student may not be interested in learning. 50 ] 

Anita Hoge devised and distributed widely "Five Magic Questions Enable Parents to Debate 
the Issues" in 1996 as a tool for parents' groups to use in testimony before state legislatures 



368 



and local school boards. The text of the pamphlet follows in its entirety. 

FIVE MAGIC QUESTIONS ENABLE PARENTS TO DEBATE THE ISSUES 

Education regulations or laws state which standards or outcomes your child needs to 
meet to graduate. Many of the outcomes are vague and subjective. Look at the verbs. This 
shows why these outcomes are impossible to measure objectively. An example under a cat- 
egory like "Citizenship" states, "All students will negotiate and cooperate with others." The 
Five Magic Questions parents can use to win the debate when outcomes reflect subjective 
or vague areas are: 

1 . How do you measure that outcome? If an outcome states that "all children must have 
ethical judgment, honesty, or integrity," what exactly is going to be measured? How 
do you measure a bias in a child in order for him to graduate? Must children be 
diagnosed? Will they be graded by observation or pencil or paper tests? How will 
performance or behavior be addressed? 

2. How is that outcome scored or what is the standard? What behavior is "Appropriate" 
and to what degree? For example, how much self-esteem is too much or not enough 
to graduate? Can government score the attitudes and values of its citizens? 

3. Who decides what that standard will be? The state has extended their mandated 
graduation requirements or exit outcomes down to the individual child. This bypasses 
all local autonomy. What about locally elected school directors? Will they become 
obsolete? Are we talking about a state or government diploma? 

4. How will my child be remediated? What are you going to do to my children to change 
them from here to there in their attitudes and values in order to graduate? How do 
you remediate ethical judgment, decision-making, interpersonal skills, environmental 
attitudes? What techniques will be used? What risks are involved? What justification 
does the state have to change my children's attitudes? 

5. What if parent and state disagree on the standard or how it is measured in the 
classroom? Who has the ultimate authority over the child? What about privacy? Can 
parents opt out of a graduation requirement of the state? 

All children must meet the same fixed standard of "future citizen" or not graduate, go 
to college, or get a job. Your child is human capital. This is why the state wants control of 
the graduation requirement — and that is why local school boards must create policy to stop 
the state from exerting power over elected officials. Ask this question: Do you want equity 
in opportunity, or do you want equity in standards? 



American Family Association Law Center in Tupelo, Mississippi issued a press release on 
September 13, 1996 which read in part: 

On behalf of concerned parents, students and school board members in two Oregon school 
districts, the American Family Association Law Center and National Legal Foundation teamed 
up to file a lawsuit in federal district court today challenging Oregon's statewide education 
reforms adopted in conjunction with Goals 2000. 

The momentous lawsuit alleges three claims of constitutional violations by the Oregon 
State Board of Education, Superintendent of Public Instruction and two school districts, 
resulting from Oregon's adoption and implementation of the radical transformational ideas 



The Noxious Nineties : c. 1 996 



369 



embodied in the Oregon Education Act for the Twenty-first Century. The forty-two page 
complaint alleges that Oregon has adopted reforms that dispense with aspects of traditional 
education and, in their place, mandate "outcomes" that become the only absolutes tolerated 
by the statewide educational system. 

The Complaint further alleges that the Oregon reforms formally abandon any belief in 
absolutes or facts in a traditional sense, and, in their place, decree feelings, attitudes, and 
beliefs approved by the government. According to AFA Law Center Senior Trial Attorney 
Stephen M. Crampton, "The imposition of government-approved attitude and beliefs flies 
squarely in the face of the First Amendment. It was Thomas Jefferson who said that God 
created the mind free and it is, therefore, not subject to force or coercion by government. 
Apparently, the Oregon educational establishment is unfamiliar with Jefferson or the First 
Amendment. What is going on [in Oregon] is nothing short of slavery of the mind." 51 

[Ed. Note: Hats off to the concerned parents and citizens of Oregon! Although the Oregon 
lawsuit was not successful— the negative decision by the court is being appealed— it provided 
a case study of what could be done in all fifty states, since all states have the same problems 
due to Goals 2000 mandates. Many New Standards Project (NSP — Tucker's National Center 
for Education and the Economy program which leads to Certificate of Initial Mastery) states 
must comply with NSP requirements which totally remove any local control or significant 
input. The Oregon lawsuit, in this writer's opinion, would have been more significant and 
have had a better chance of succeeding had it included as its major concern the role of the 
federally funded Northwest Regional Educational Laboratory in developing the NWREL Goals 
Collection as the delivery system for the dehumanizing mastery learning/ direct instruction 
method required by OBE and Goals 2000.] 

A PAPER ENTITLED "A REPORT ON THE WORK TOWARD NATIONAL STANDARDS, ASSESSmentS and 

Certificates" was prepared for the Ohio State Board of Education in 1996 by Diana M. Fessler, 
elected board member. This superb report was submitted under cover of a Letter of Transmittal, 
excerpts of which follow: 

The National Center on Education and the Economy is an organization dedicated to 
the development of a unified system of education and employment. The National Center's 
vision is to create a national human resources development system, interwoven with a new 
approach to governing. This report is a summary of the National Center's agenda that is, 
by design and intent, applicable to all states, and it is now being implemented in many of 
them. 

As you are well aware, the "Standards for Ohio Schools: Coming Together to Build a 
Future Where Every Child Counts" document is coming up for a vote in the near future. It is 
riddled with continuous improvement, professional development, diminished authority for 
local school boards, school performance standards, a call to "organize" programs according 
to labor market needs, a provision for worksite-based learning opportunities; all of which 
dovetail nicely with the NCEE agenda.... 

There is no doubt that H.R. 1617 (known as the Consolidated and Reformed Education, 
Employment, and Rehabilitation Systems Act or CAREERS) , and the Senate version of the 
same bill, S. 143 {The Workforce Development Act of 1 995) , are extensions of the 1 994 School- 
to-Work Act. They represent the culmination of the NCEE's effort to get Congress to impose 
"The System" on all Americans. However, federal control is not needed to put "The System" 
in place in every state. The only thing that is needed is the federal money that will become 



370 



available as the result of the legislation being passed. As an aside, although a very important 
one, the proposed legislation would have sent the money to the office of the governor, by- 
passing the General Assembly. 

On September 27, 1996, the NCEE plan was temporarily halted from being incorporated 
into federal law when the CAREERS bill was defeated in Conference Committee. Undoubtedly, 
the bills will be re-introduced in 1997. Nevertheless, much of the plan can be, and is being, 
implemented under existing laws, regulations, and/or waivers. Unless something is done to 
stop it, the NCEE agenda will continue to be implemented, albeit on a less expansive scale, 
to the detriment of our children and grandchildren. 



In the September 1996 issue of Vitality an article entitled "Education: Why the 'Dumbing 
Down' in the Schools?" by Rep. Henry Hyde, chairman of the Republican Platform Committee, 
was published. Congressman Hyde, in an excellent critique of Goals 2000, School-to-Work and 
CAREERS legislation, asserted: 

This concept has been around since at least the 1960s and perhaps as far back as the 1930s. It 
has been tried in many schools over the last 20-30 years, to the detriment of our children. In 
the 70s, it was called "Mastery Learning" under the supervision of Professor Benjamin Bloom, 
and now it is known as "Outcomes-Based Education" (OBE). State school superintendents 
have learned to call OBE by other names because of its bad reputation which precedes it, 
but the concepts are all the same. 

[Ed. Note: Representative Henry Hyde seems to be one of the few congressmen who under- 
stands the "method." This writer wonders if he is aware of the fact that the Chicago schools 
are using the method under the label "direct instruction" — and that Chicago schools have 
signed an education agreement with Russia?] 

In the School Watch column of the Atlanta Constitution the topic of the day for Oc- 
tober 14, 1996 was "Teaching Politics." Excerpts follow: 

Teachers are finding innovative ways to interest students in becoming well-informed voters. 
Many teachers form a seating chart based on alphabetic order, but Linda Morrison uses another 
method. In her current issues class at North Cobb High School, liberals sit on the left side of 
the room and conservatives sit — where else? — on the right. Morrison's technique is one of 
many methods teachers are using to educate students on electoral and political processes. 

"When you combine what we do in here with their American government class, it 
makes everything a lot more interesting for the students," said Morrison, a former Cobb 
County Teacher of the Year. 

At the beginning of the year, Morrison gives her class a political orientation test, which 
charts how conservative or liberal a student is on several issues. The more liberal your views, 
the farther to the left of the room you sit. Those with moderate views sit closer to the middle, 
and conservatives sit on the right. 

"Our main textbook is Newsweek," Morrison said. "Whatever the current issues are, 
we discuss them. All I usually do is referee." 



The Noxious Nineties : c. 1997 



371 



October 21, 1996 The New York Times published an article entitled "Carnegie Foundation 
Selects a New Leader," Lee Shulman, Ph.D. For further information about the "new leader" the 
reader should re-read the 1968 entry on "Learning and Instruction... Chicago Mastery Learn- 
ing" in which the behavioral psychologist Lee Shulman was deeply involved. 

1997 

On January 25, 1997 the first plenary session of the National Commission on Civic Re- 
newal was held. Funded by the Pew Charitable Trusts, the Commission operates out of the 
Institute for Philosophy and Public Policy, a research center at the University of Maryland at 
College Park. One common theme running through the numerous reports produced in 1998 as 
a result of the Commission's study of the "deplorable" lack of citizen involvement, crying out 
for partnerships, etc., was that elected officials are no longer able to meaningfully contribute 
to the decision-making process when seeking answers to societal problems. 

Those chosen to promote political and social "action" in our "needy" communities 
came from all political persuasions — a clever technique which made the Commission seem 
all-embracing and allows for public ownership of the projects selected for implementation 
and encouragement. When one had Ernesto Cortes, Jr. of the Industrial Areas Foundation 
representing the political left and former Secretary of Education William Bennett represent- 
ing the political right — which is increasingly controlled by "neoconservatives" — it was not 
unreasonable to expect that discussions would result in reaching "common ground" politics 
of the "radical center;" which is an abandonment of principle by both the right and the left. 
A list of high profile Americans involved in the National Commission on Civic Renewal will 
be included at the end of this entry. 

Why is the National Commission on Civic Renewal being created at this time? The Com- 
mission says that: 

In spite of recent improvement in the economy, both experts and ordinary citizens have 
become increasingly troubled about what they see as a decline in the strength of our social 
fabric and in the quality of our civil and civic life. Basic institutions at the family and neigh- 
borhood level have come under intense pressure; voting and other forms of community 
and political participation have declined; Americans' trust in large institutions and in one 
another has plunged. The Commission will seek to address these ills: by gathering and as- 
sessing information and advice from a wide range of voices; by inventorying, studying, and 
highlighting promising civic organizations and initiatives around the country; and by offering 
specific recommendations for improving our civic and civil life. 

Statistics published in a 1982 National Center for Citizen Involvement report quoting 
from a 1981 issue of The National Volunteer stated that 44% of Americans work as volunteers 
outside of an organization — "doing their own thing," so to speak — not the volunteerism the 
elite involved in commissions similar to the National Commission on Civic Renewal are in- 
terested in promoting. 

The writer will wager that the above-referenced "ordinary" citizens were not consulted 
on this elitist project. "Ordinary" citizens are too involved in trying to make a living, "meeting 
the payroll," and being part of that "44%" to find time to be herded around by change agent 
planners, participating in projects which more often than not do not significantly affect the 



372 



lives of those most in need. If the reader feels that the writer of this book is going overboard 
with her use of the word "elite," hold onto your seat while we make an ascent into the rooftop 
conference room of a Washington, D.C. club where one of the meetings held by the Com- 
mission took place. Hear ye! Hear ye! Theda Skocpol, professor of government and sociology 
at Harvard University, is about to give testimony before the Commission: 

My research on the past and present of U.S. civic engagement suggests that this Commission 
should look upward, not downward, [all emphases in original] Too much money in politics, 
too great a reliance on staff-led groups, too much top-down manipulation — and far too few 
incentives for leaders to organize or engage in dialogue with actual groups of fellow citizens 
across the nation — these are Americans' sense of disconnection from shared civic life. You 
won't find the answers you seek in purely local groups, or among the less privileged. You 
must look to America's powerful and best-educated elites — to folks like all of us sitting in 
this room. What is [it] that we [businesspeople], professors, foundation heads, think tank 
impresarios, and religious and political leaders are doing that we should not be doing? Equally 
pertinent, what new things should we elites do? America's best educated, wealthiest, and 
most powerful leaders are the ones who are failing our fellow citizens — because we have 
withdrawn from the group settings in which we would have daily chances to work with, 
and discuss the nation's concerns, with most of our fellow citizens. 

The writer has an answer for Ms. Skocpol: stop trying to social engineer "the locals" into 
accepting solutions which "the locals" never asked for and probably would not want if they 
were informed of the real purpose of the so-called "solutions." Skocpol refers to the activities 
of "tax-exempt foundation heads and think tank impresarios." She would be wise to remain 
silent on that score, considering the severe damage done by those very entities to the preser- 
vation of freedom in our nation. The Commission seems to have made a big mistake publishing 
Skocpol's paper. Its condescending, elitist tone surely will not help to get their project off the 
ground— perhaps that is best for all of us. 

Excerpts from The Final Report of the National Commission on Civic Renewal: A Nation 
of Spectators — How Civic Disengagement Weakens America and What We Can Do about It 
(1998) follow: 

Defining the Challenge of Civic Renewal. 

In America we do not depend on kings, clerics, or aristocrats, or (for that matter) on tech- 
nocratic elites or self-appointed leaders to serve as the "vanguard" for the rest of us. [This 
is a strange comment in light of the makeup and conclusions of the Commission and its 
expert consultants, ed.]... 

We believe that the capacity for democratic citizenship must be nurtured in institu- 
tions such as families, neighborhoods, schools, faith communities, local governments, and 
political movements — and therefore, that our democracy must attend carefully to the health 
of these institutions. ... 

We believe that building democracy means individuals, voluntary associations, private 
markets, and the public sector working together — not locked in battle. 

[Ed. Note: First, the writer thought that the United States was a constitutional republic, not a 
democracy. Secondly, again we find the reference to the public sector and the private having 
to join together; i.e., partnerships, which the reader should recognize as corporate fascism/ 
socialism. This is the first time the writer has been informed that the above-mentioned groups 



The Noxious Nineties : c. 1997 



373 



have been "locked in battle." The next thing we will hear is that in order for "democracy" to 
flower, a la Red China, we must all participate in sensitivity training/conflict resolution/en- 
counter group sessions similar to the Ohio State Board of Education retreat described by Ohio 
State Board member Diana Fessler (see August 5, 1996 entry).] 

We believe that democracy means not only discussing our differences, but also under- 
taking concrete projects with our fellow citizens to achieve common goals.... (p. 7-8) 

A New Movement. 

New organizations are refocusing the attention of families, schools, and communities on the 
formation of civic character.... 

...But we believe that the current level of mistrust [of government and large insti- 
tutions, ed.] is inconsistent with civic health. Americans cannot love their country if they 
have contempt for its government.... (p. 10-11) 

Meeting the Challenge of Civic Renewal. 

The goals of civic renewal are straightforward: to strengthen the institutions that help form 
the knowledge, skills, and virtues citizens need for active engagement in civic life; to remove 
the impediments to civic engagement wherever they exist; and to multiply the arenas for 
meaningful and effective civic action.... (p. 12) 

Individuals. 

We therefore challenge every citizen to become an active member of at least one association 
dealing with matters of local neighborhood, church, or community concern. [Is this a chal- 
lenge to the "44%" who cannot presently be tracked and controlled in their "civic and 
volunteer" service? ed.]... 

Families. 

It means sweeping away impediments to adoption. It means dramatically reforming foster 
care and establishing a national norm that no child should spend more than one birthday 
without a permanent home in a stable, loving family. It means a massive new partnership 
among the public, private, and voluntary sectors to provide adult mentors for one million 
young people now languishing on waiting lists across our land. 

[Ed. Note: "A national norm"? Who keeps track and evaluates? Who decides what is a "stable, 
loving family"? "Massive new partnership"? "Adult mentors for one million young people... 
on waiting lists"? What waiting lists? To be adopted, to have a mentor? These partnerships 
mean that government will coordinate the activities of the private and voluntary sectors to ac- 
complish enforceable standards in the area of family life. The Commission also acknowledged 
that a healthy mistrust of government is essential for a "democracy." This writer believes it 
to be essential for the preservation of freedom as well. Perhaps what our nation needs is an 
even higher level of citizen mistrust which would result in more people going to the polls to 
vote out rascals.] 

Neighborhoods. 

Every neighborhood should assume responsibility for matters of significant local concern, 
emphasizing areas where neighbors can do meaningful civic work together. For example: 
neighborhood crime watches; cleaning, repairing, and patrolling public parks; escort services 
for students walking from home to school in the morning and back in the afternoon.... (p. 



374 



13) 

. . .We applaud the efforts of organizations such as the National Civic League, the Center 
for Democracy and Citizenship, the Civic Practices Network, the Center for Living Democracy, 
the Pew Partnership for Civic Change, and [Heritage Foundation's] Policy Review: The Journal 
of American Citizenship to identify promising community-based empowerment efforts, to 
make this information available to communities searching for usable models, and to weave 
together local activities into a wider community-based movement for civic renewal. 

Schools. 

First, we add our voices to others — such as the Communitarian Network, the Character 
Counts! Coalition, the Character Education Partnership, and the Center for Civic Education — in 
support of a far greater emphasis on civic and character education. We believe that our 
schools should foster the knowledge, skills, and virtues our young people need to become 
good democratic citizens.... 

While the National Commission has not reached agreement on mandatory community 
service for high school students, we are impressed with the ways in which well-designed 
community work carefully linked to classroom reflection can enhance the civic education of 
students. ... Every state should require all students to demonstrate mastery of basic civic in- 
formation and concepts as a condition of high school graduation. [Citizenship, OBE-style] 

In addition to their role in forming civic competence and character, we believe that the 
overall performance of our schools has important effects on our civic condition. To cite but 
one example: students consigned to failing schools are far less likely to achieve full partici- 
pation in civic life. Free citizens must be educated. For this reason, we offer some proposals 
to improve teaching and learning.... 

...Despite the political and substantive difficulties, the federal government should spur 
the development of a voluntary national testing system with high standards and make it 
available for adoption (or adaptation) by states and localities, (p. 15) 

The federal government, states, and localities should cooperate to increase parental 
choice through such measures as open enrollment and public school choice within districts 
(and even beyond) . Within five years, every state should enact meaningful charter school 
legislation, and the federal government should dramatically increase its support for charter 
schools, (pp. 14-16) 

Note: While the National Commission has focused its report and recommendations on 
areas of substantial agreement, we note an important area of ongoing disagreement among 
us. 

Some members of the National Commission advocate public support for parental 
choice broadened to include private and religious schools, especially for low-income stu- 
dents now trapped in failing systems. These members believe that wider choice will enhance 
educational opportunity and accountability, improve quality, help get parents more involved 
in their children's schooling and catalyze civic engagement. They consider school choice 
to be a crucial and necessary step toward civic renewal and self-government. 

Other Commission members believe that public schools have been, and continue 
to be, vital meeting grounds in which future citizens learn to respect and work with one 
another across their differences. These members fear that choice widened beyond the 
bounds of public schools could diminish support for public education, further fragment 
our society, and weaken our democracy. 

We were not able to resolve these differences. (Not surprisingly, our nation's rep- 
resentatives have not yet reached common ground, either.) But we do agree on the civic 
standards and principles that should be employed in public deliberation on school choice, 
and we call for continued civil dialogue on this question. 



The Noxious Nineties : c. 1997 



375 



Faith-based Institutions. 

Faith-based institutions should take full advantage of new opportunities under federal law 
to receive public support for activities such as job search programs, "second chance" homes 
for unmarried teen parents, child care, and drug treatment, while maintaining their religious 
character. The federal government should broaden this new partnership with faith-based 
institutions to cover the maximum feasible range of social services.... 

The federal government should revise the tax code to increase incentives for charitable 
contributions and to recognize the charitable efforts of all Americans, including poor and 
low-income families. . . . 

Individual faith-based institutions should band together into community-wide coalitions 
to achieve important civic objectives.... 

...We call for the mobilization of public, foundation, and corporate support for new 
ventures, such as John Dilulio's Jeremiah Project, which will help gather credible data about 
the effectiveness of faith-based activities, mobilize resources, and direct them to promising 
faith-based programs. 

[Ed. Note: This is the most frightening "partnership" proposal of all. When the government 
"partners" with another entity, it is always the government who sets the standard — and en- 
forces it. While there may be worthwhile efforts that many churches in a community can agree 
upon and work together to accomplish, again, this should be decided on the local level by the 
churches involved without any coordination by any other entity to satisfy its goals and aims. 
Gathering "credible data" about "faith-based activities" so that resources can be directed to 
"promising faith-based programs" is exactly what the writer was referring to earlier when she 
cautioned the reader about partnering churches or "faith-based institutions" with the govern- 
ment.] 

The following high profile individuals are involved in the National Commission on Civic Re- 
newal project: 

• Co-Chairman William Bennett, former U.S. Secretary of Education, and co-director of 
Empower America, an organization dedicated to promoting "conservative" principles 
and ideas. Secretary of Education Bennett funded the American Institute for Character 
Education/Thomas Jefferson Research Center's very controversial, no right/no wrong 
answers character education program based on Abraham Mazlow's Hierarchy of Needs 
and Self-Actualization. When confronted with information concerning the U.S. -Soviet 
education agreements signed during his tenure, Bennett said, "I'm not in that loop." 

• Co-Chairman Sam Nunn, former U.S. Senator from Georgia, was deeply involved in 
the passage of National Service legislation to lay the groundwork for a nationwide 
"civilian service corps" by offering generous higher education benefits in exchange for 
one or two years of public volunteer service. Though Nunn served as chairman of the 
Senate Armed Services Committee, the "volunteer service" legislation he sponsored 
was in no way involved with military service to this country. 

• Executive Director William A. Galston, professor of government in the School of 
Public Affairs, University of Maryland at College Park and director of the University's 
Institute for Philosophy and Public Policy. From January 1993 through May 1995, Galston 
served as deputy assistant for domestic policy to President Clinton. Galston was also 
deeply involved in the drafting of Goals 2000. Prior political experience includes: chief 



speech writer for former Independent Party presidential candidate John Anderson's 
National Unity Campaign in 1980; issues director for Democratic presidential candidate 
Walter Mondale's campaign; senior advisor for then-Senator Al Gore's campaign for the 
Democratic Party's presidential nomination; and since 1989 served as senior advisor 
for the Democratic Leadership Council and the Progressive Policy Institute. 
Lamar Alexander, former governor of Tennessee, former U.S. Secretary of Education, 
former and present candidate for the Republican Party nomination for President of the 
United States. 

Elaine Chao, Distinguished Fellow, The Heritage Foundation. Until recently, Elaine Chao 
was president and chief executive officer of United Way of America. 
Ernesto Cortes, Jr., Industrial Areas Foundation (IAI), Southwest regional director. 
Founded more than fifty years ago in Chicago by the late Saul Alinsky, the IAF is a 
non-profit organization, originally operating throughout the Catholic Church in the 
U.S., designed to provide leadership training to poor and moderate income people in 
more than forty broadly based, multi-ethnic organizations in the United States and 
the United Kingdom. (See Resources for availability of Stephanie Block's article and 
forthcoming book dealing with the highly controversial activities of the Industrial Areas 
Foundation.) 

Amitai Etzioni, professor at Georgetown University, founder and chairman of The 
Communitarian Network, is involved with the Education For All (EFA) activities both 
nationally and internationally, the Character Education Partnership, and the activities 
of the Freedom Forum First Amendment Foundation (Vanderbilt University) . According 
to Webster's New World Dictionary (1976) a "communitarian" is "a member or advocate 
of a communistic community. " Communitarianism is the social philosophy of the Skin- 
nerian Walden II experimental commune at Los Horcones, Mexico. 52 
John Gardner, professor of education at Stanford University in California, has served 
as former president of the Carnegie Corporation of New York, which — as the reader 
knows — has had virtual control over American education since the early 1900s. 
Peter C. Goldmark, Jr., was elected the eleventh president of the Rockefeller Foun- 
dation in June 1988. Goldmark is a member of the Council on Foreign Relations. 
Oz Guiness, Senior Fellow with The Trinity Forum. Guiness headed up the contro- 
versial Williamsburg Charter Character Education Project whose work was continued 
by Charles Haynes of the Freedom Forum First Amendment Foundation at Vanderbilt 
University. 

Michael S. Joyce, president and chief executive officer of The Lynde and Harry Bradley 
Foundation in Milwaukee, was former leader of the John M. Olin Foundation in New 
York and the Goldseker Foundation in Baltimore. A strong supporter of parental choice 
in education, Joyce spent six years with the Educational Research Council of America 
and was a contributing editor to a textbook series on the social studies. Joyce served 
on the Presidential Transition Team in the Reagan Administration and in 1993 joined 
with William Kristol to found the Project for the Republican Future. 
Richard D. Land, president-treasurer of the Ethics and Religious Liberty Commission 
of the Southern Baptist Convention, the agency for "applied Christianity" (social and 
moral concerns) for the Convention. 

His Eminence Bernard Cardinal Law, Archbishop of Boston since 1984. He was ere- 



The Noxious Nineties : c. 1997 



377 



ated Cardinal by Pope John Paul II in May 1985. 

• Edwin Lupberger, chairman of the U.S. Chamber of Commerce and member of the 
U.S. Chamber's Center for Workforce Preparation, also serves on the board of the 
Committee for Economic Development (CED) and is Louisiana's Honorary Consul of 
the Federal Republic of Germany. 

• Bruno V. Manno, executive director of the National Commission on Philanthropy and 
Civic Renewal, is closely associated with Vanderbilt University and the Hudson Institute. 
Manno has served as assistant secretary of education for policy and planning and as 
director of planning for the Office of Educational Research and Improvement under 
Secretary of Education Lamar Alexander in 1986. 

• Sanford McDonnell, chairman of the Character Education Partnership and McDonnell 
Douglas Corporation. 

• Michael Novak, currently holds the George Frederick Jewett Chair in Religion and 
Public Policy at the American Enterprise Institute. Mr. Novak has received numerous 
awards, including the Templeton Prize for Progress in Religion (1994). 

• Lester Salamon, director of the Institute for Policy Studies at The Johns Hopkins 
University, and was the co-editor of Human Capital and America's Future with David 
Hornbeck. 

• Robert Woodson, Sr., founder and president of the National Center for Neighborhood 
Enterprise which has been in the forefront of the movement to "empower" low-income 
Americans. In 1990 Woodson received the high-profile John and Catherine T. MacArthur 
Fellowship. He is a board member of the American Association of Enterprise Zones 
and the Commission on National and Community Service. 

[Ed. Note: The writer cannot help but compare this commission and its raison d'etre with for- 
mer President Dwight Eisenhower's American Assembly, which developed the pre-determined, 
socialistic "Goals for Americans" in 1960. As to the meeting of minds on "common ground," 
Shirley McCune (referred to previously in this book as a major education change agent with 
the Mid-Continent Regional Educational Laboratory) quoted from The [John] Naisbitt Group's 
training materials regarding political philosophy at an educational restructuring presentation 
to the Millard, Nebraska School District 53 when she explained that basic shifts related to re- 
structuring move across a continuum: Naisbitt listed "From" and "To" as being "left vs. right 
politics" resulting in "a politics of the radical center." This is an excellent illustration of the 
Hegelian Dialectic at work and is the basis of the activities of the National Commission on 
Civic Renewal.] 

National Blue Ribbon Schools Program was the subject of Informational Letter No. 54 

from Maine's Commissioner of Education J. Duke Albanese to all superintendents of schools 
and secondary and middle school principals, dated May 16, 1997. The reader should realize 
that all states participate in this program, so the next time your superintendent or any member 
of the education bureaucracy says your school is not controlled by the state or federal govern- 
ment, pull out a copy of this letter and show it to them. The criteria for selection, which are 
noticeably short on references to traditional "academic excellence, " are taken from Goals 2000 
materials. Excerpts follow: 



378 



I am pleased to invite you to participate in the 1997-1998 Blue Ribbon Schools Program, for 
secondary and middle schools, sponsored by the U.S. Department of Education and admin- 
istered by the Maine Department of Education. 

The Blue Ribbon Schools Program identifies and gives national recognition to a diverse 
group of public and private schools that are unusually effective in meeting local, state, and 
national goals in educating all of their students [emphasis added] . The program seeks to 
promote school improvement nationwide through the collaborative self-evaluation process 
required of local school communities that participate. In addition, recognized schools serve 
as models for other schools and communities seeking to provide high quality education for 
all their students. This program allows us to demonstrate that today's schools can achieve 
excellence and to spotlight examples of what break-the-mold programs and practices might 
look like. 

Criteria for selection as a national school of excellence include: 

• Student focus and support 

• Challenging standards and curriculum 

• Teaching and active learning 

• Learning-centered culture and organization 

• Professional communities 

• Leadership and organizational vitality 

• School, family and community partnerships 

• Indicators of success 

The quality of each school is judged in the context of how successfully it is meeting 
its own goals and how well its programs are tailored to local needs. 

Nevertheless, for a school to be judged deserving of national recognition, it must show 
significant progress in meeting state and national goals, and must have attained a standard 
of overall excellence that is worthy of respect and emulation by schools elsewhere of similar 
size characteristics. 

[Ed. Note: Don't the preceding two paragraphs represent an oxymoron?] 

The May 1997 issue of The Effective School Report carried an article entitled "The 
Future of Hong Kong Is Linked to Education. " Excerpts follow: 

The information to be presented will come from a major report recently issued by the 
Education Commission established by the Central Government of Hong Kong in 1983. The 
major reference will be Education Commission Report No. 7, Quality School Education, is- 
sued in November, 1996. 

As one reads each [article] in the series of articles, the obvious and continuous ref- 
erence to the effective schools movement becomes more than apparent. It serves us well to 
understand that just as the effective schools correlates were developed within our realm of 
the world, so it is these same correlates have been adopted throughout the world to improve 
the quality and design of education. 

A blue ribbon commission was formed in April, 1996 to make recommendations on the 
development and establishment of quality school education. Three broad principles served 
as the bases for the work of the committee. They included the following: 

• Ways to relate school funding to performance 54 

• Roles of key players in the school system and 



The Noxious Nineties : c. 1997 



379 



• Their relationship with one another. 

Beyond the primary principles established by the committee are six objectives which 
may appear to many educators as fundamental objectives for any school system in any na- 
tion. These primary objectives include: 

• to enhance the community's appreciation of the need for quality school educa- 
tion; 

• to inculcate a quality culture in the school system [emphasis in original] ; 

• to provide a practical framework for key players in the school system to achieve the 
aims of education in an effective, efficient and accountable manner; 

• to recommend an integrated strategy for quality assurance; 

• to reward or give recognition to performing schools; and 

• to assist or take appropriate remedial action regarding under-performing schools to 
encourage initiatives and continuous improvement. 

In its deliberations, the committee reviewed large volumes of overseas and local literature 
on the effective schools movement, quality assurance measures and school management 
approaches. Members of the committee participated in visits to study the operation of edu- 
cation throughout the world.... The [Education Commission] report was primarily a product 
which offered a plan to develop performance indicators for the school system.... Society has 
accepted the responsibility to provide an education for each and every child and to struc- 
ture such an education according to their individual abilities and aptitudes.... As a leader in 
international commerce, the community of Hong Kong, especially the business community, 
recognizes massive changes in world trade and production. As businesses throughout the 
world, including nations in North America and Europe, have restructured their businesses 
and production systems, Hong Kong has emerged as one of the world's foremost financial 
centers, a hub of regional telecommunications, transport and trading, a leading tourist and 
convention destination and a major exporter of professional services to the world, especially 
mainland China. Along with its transformation, Hong Kong commerce now demands a labor 
force which is "informed and knowledgeable, highly qualified and specialised, with advanced 
skills and the ability to think independently and to communicate well." (p. 5) 

[Ed. Note: Surprise! Surprise! The reader should turn to Appendix VI for the SAFE effective 
school international pilot project carried out in Korea in 1970 to see that many of the "ef- 
fective school correlates" referred to above were exported from the U.S. to other parts of the 
world.] 

"The Goal of Hong Kong Schools — Establishing Quality in Its Schools" was the feature 
article in the June/July, 1997 issue of The Effective School Report. This article continues the 
explanation of the transformation of Hong Kong's educational system which began in last 
month's issue. Excerpts follow: 

Excellence is found in the innovations and outstanding performance which distinguish one 
school from others. 

School Choice Should Be Made Available 
Hong Kong's education system provides parents with a choice of different types of schools. 
The perception of parents and students of the educational process, and the satisfaction of 



380 



members of the community with outcomes are also useful indicators of the quality of edu- 
cation. 

Excellence is not confined to achieving outstanding academic results or promoting the 
self-esteem of students. For instance, some schools might achieve excellence by developing 
the potential of low achievers and producing value-added results. 

In order to build a quality culture in schools, a number of measures must be taken. 
They include: 

• translating the goals into achievable, observable and measurable quality indica- 
tors; 

• having a school funding system which is efficient and equitable, which meets basic 
needs and which is related to performance; 

• providing incentives to recognize and encourage initiatives and the pursuit of excel- 
lence. 

Aims 

To prepare students to become responsible citizens and maintain high moral standards.... 
Output Indicators 

Output indicators may start with value-added performance in three areas; academic achieve- 
ment; students' self-esteem; and perception of the school teachers, parents and students. 
As a start, these three types of output indicators may be developed first, followed by the 
development of indicators in other domains such as the students' ability for self-learning, 
social and communicative skills, moral attitudes and civic-mindedness. In order to encourage 
continuous improvement, the sooner the various indicators are developed, the better.... 

Value-Added Concept of Output Indicators 

We suggest that in assessing the performance of a school, it would be more appropriate 
and fairer to bring in the concept of value-added achievement rather than simply looking 
at absolute performance. Value-added performance can be assessed in a number of areas. 
For example, it would not be appropriate to compare the academic performance of different 
schools if they admit students coming from different backgrounds. The value-added concept 
allows comparison of students as they enter a school and as they leave. The same concept 
can be applied across the output indicators. The focus will be on a student's progress over 
the years. 

(Information used in this series has been derived from the publication, Education Com- 
mission Report No. 7 — Quality School Education, prepared by the Hong Kong Task Group on 
School Quality and School Funding and the Hong Kong Education Commission, chaired by 
Professor Rosie Young, November, 1996.) 

[Ed. Note: Anyone the slightest bit familiar with educational restructuring, Goals 2000, or 
school-to-work programs will understand from the above excerpts, the extent of the interna- 
tionalization of education and the duplicity of those — including the media — who deny that 
restructuring is international. Rudyard Kipling's "East is East and West is West" has been suc- 
cessfully repudiated by those involved in training the global workforce. A more appropriate 
Kipling quote might be one from London Truth, reprinted in the Middlebury, Vermont Register 
of March 1899, which follows: "Pile on your brown {white, black, red, pink, yellow} man's 
burden to satisfy your greed. "] 



The Noxious Nineties : c. 1997 



381 



Atlantic Monthly's July 1997 issue carried the article "The Computer Delusion" by Todd 
Oppenheimer. Excerpts follow: 

There is no good evidence that most uses of computers significantly improve teaching and 
learning, yet school districts are cutting programs — music, art, physical education — that 
enrich children's lives to make room for this dubious nostrum, and the Clinton Adminis- 
tration has embraced the goal of "computers in every classroom" with credulous and costly 
enthusiasm.... 

The noted psychologist B.F. Skinner, referring to the first days of his "teaching ma- 
chines," in the late 1950s and early 1960s wrote, "I was soon saying that, with the help of 
teaching machines and programmed instruction, students could learn twice as much in the 
same time and with the same effort as in a standard classroom." Ten years after Skinner's 
recollections were published, President Bill Clinton campaigned for a "bridge to the twenty- 
first century. . . where computers are as much a part of the classroom as blackboards. " Clinton 
was not alone in his enthusiasm for a program estimated to cost somewhere between $40 
billion and $100 billion over the next five years. Speaker of the House Newt Gingrich, talk- 
ing about computers to the Republican National Committee early this year, said, "We could 
do so much to make education available twenty-four hours a day, seven days a week, that 
people could literally have a whole different attitude toward learning."... In a poll taken early 
last year U.S. teachers ranked computer skills and media technology as more "essential" 
than the study of European history, biology, chemistry, and physics; than dealing with social 
problems such as drugs and family breakdown; than learning practical job skills; and than 
reading modern American writers such as Steinbeck and Hemingway or classic ones such 
as Plato and Shakespeare.... 

Interestingly, shop classes and field trips are two programs that the National information 
Infrastructure Advisory Council, the Clinton Administration's technology task force, suggests 
reducing in order to shift resources into computers. But are these results what technology 
promoters really intend? "You need to apply common sense," Esther Dyson, the president of 
EDventure Holdings and one of the task force's leading school advocates, told me recently, 
"Shop with a good teacher probably is worth more than computers with a lousy teacher. 
But if it's a poor program, this may provide a good excuse for cutting it. There will be a lot 
of trials and errors with this. And I don't know how to prevent those errors." 55 The issue, 
perhaps is the magnitude of the errors. 

Alan Lesgold, a professor of psychology and the associate director of the Learning 
Research and Development Center at the University of Pittsburgh, calls the computer an 
"amplifier," because it encourages both enlightened study practices and thoughtless ones. 
There's a real risk, though, that the thoughtless practices will dominate, slowly dumbing 
down huge numbers of tomorrow's adults. As Sherry Turkle, a professor of the sociology of 
science at the Massachusetts Institute of Technology and a longtime observer of children's 
use of computers, told me, "The possibilities of using this thing poorly so outweigh the 
chance of using it well, it makes people like us, who are fundamentally optimistic about 
computers, very reticent."... 

Clifford Stoll, the author of Silicon Snake Oil: Second Thoughts on the Information 
Highway (1995), told The New York Times last year, recalling his own school days in the 
1960s, "We loved them because we didn't have to teach, and parents loved them because it 
showed their schools were high-tech. But no learning happened."... 

Reading programs get particularly bad reviews. One small but carefully controlled 
study went so far as to claim that Reader Rabbit, a reading program now used in more than 
100,000 schools, caused students to suffer a 50 percent drop in creativity. (Apparently, after 
forty-nine students used the program for seven months, they were no longer able to answer 



382 



open-ended questions and showed a markedly diminished ability to brainstorm with fluency 
and originality) 

What about hard sciences, which seem so well suited to computer study? Logo, the 
high-profile programming language refined by Seymour Papert and widely used in middle 
and high schools, fostered huge hope of expanding children's cognitive skills. As students 
directed the computer to build things, such as geometric shapes, Papert believed, they would 
learn "procedural thinking," similar to the way a computer processes information. According 
to a number of studies, however, Logo has generally failed to deliver on its promises.... 

Judah Schwartz [a physicist] , a professor of education at Harvard and a co-director of 
the school's Educational Technology Center, told me that a few newer applications, when 
used properly, can dramatically expand children's math and science thinking by giving them 
new tools to "make and explore conjectures." Still, Schwartz acknowledges that perhaps 
"ninety- nine percent of the educational programs are terrible, really terrible. ". . . 

Opinions diverge in part because research on the brain is still so sketchy, and com- 
puters are so new, that the effect of computers on the brain remains a great mystery. "I don't 
think we know anything about it," Harry Chugani, a pediatric neurobiologist at Wayne State 
University, told me. This very ignorance makes skeptics wary. "Nobody knows how kids' 
internal wiring works," Clifford Stoll wrote in Silicon Snake Oil, "but anyone who's directed 
away from social interactions has a head start on turning out weird.... No computer can teach 
what a walk through a pine forest feels like. Sensation has no substitute."... 

In Silicon Snake Oil Michael Fellows, a computer scientist at the University of Victoria, 
in British Columbia, was even blunter. "Most schools would probably be better off if they 
threw their computers into the Dumpster. ". . . The problem is that technology leaders rarely 
include these or other warnings in their recommendations. When I asked Dyson why the 
Clinton task force proceeded with such fervor, despite the classroom computer's shortcomings, 
she said, "It's so clear the world is changing." 

[Ed. Note: "The world is changing" is the response change agents are trained to use when 
confronted by common sense taxpayers who ask why dumb projects are being funded. The 
writer can't possibly recall the number of times her change agent superintendent responded 
with those exact words! The reader can rightfully accuse the writer of this book of an anti- 
computer bias and of selectivity in choosing quotes to prove her point. I stand "guilty" on 
all counts. Those interested in computer-assisted instruction should get a copy of the above 
article so they will not be overly influenced by this writer's selection of quotes.] 

An article entitled "'Real-Life' School Eliminates Books" appeared in the SEPt ember 1, 
1997 issue of The Washington Times. The article reveals the extent to which American public 
schools are doing away with books. 

Walkersville, MD — Third-grader Billy Horn had a math problem his mother couldn't help 
solve, so she asked for the source. 

"I said, 'Where's your book?' and he said, 'They don't have books,'" Joan Horn said. 

Like most people schooled in the 1960s and 1970s, Mrs. Horn assumed her children 
would learn their lessons as she did, from heavy books with problems at the end of each 
chapter. 

But textbooks play a smaller role, even a minor one, in modern education. 

"We're trying to make school look more like real-life experiences and have assignments 
that are intriguing and captivating and problem-solving," said Jerome Strum, Billy's principal 
at Glade Elementary. 



The Noxious Nineties : c. 1997 



383 



On September 24, 1997 Texas Christian Alert Network (TCAN) issued a memo entitled 
"Communism Comes to Texas Public Education." TCAN had received the following excerpted 
analytical summary by Chris Patterson, reseacher, of the Texas version of the national school- 
to-work legislation. The first paragraph of the alert warned that: 

This nationally mandated program will differ very little from one state to another so persons 
in all states should read the following very carefully and decide whether you want the fed- 
eral government to have absolute control of your child and his/her career, from the cradle 
to the grave. 



TEXAS SCHOOL-TO-WORK SYSTEM 
by Chris Patterson 



Introduction 

In November 1996, Texas received a $61 million dollar federal grant to implement a School- 
to-Work (STW) system. With this grant, Texas joined the group of 36 states which participate 
in a national workforce development program. The national program is designed, regulated 
and initially funded by the federal government. The objective of this program is to coordinate 
workforce development with economic, educational and welfare plans within and between 
states of our nation. STW introduces "major changes or a radical transformation of the pur- 
pose, content and structure of public schools." 

Key Components of STW 

Employer needs and skill standards drive STW as curriculum and instructional practices are 
modified to prepare students to enter the local workforce.... 

Academic education and vocational instruction are fully integrated. Curriculum is 
founded upon performance-based standards. Academic subjects incorporate instruction 
related to personal and career goals. Both work and school-based instruction are designed 
according to local workforce needs. "All students will engage in STW."... 

Students will be prepared for, certified and placed in post-secondary education or jobs 
which reduce mismatches between students/education and education/workplace, incorpo- 
rating: 

• Career awareness kindergarten through 6th grade. 

• Choice of career pathway by no later than 8th grade. 

• Work-based learning which includes mentorship, job-shadowing, volunteer service, 
school-based enterprise, apprenticeship, internship and paid work experience. 

• Students will be required to acquire the following as conditions for graduation: 
certificates of initial and/or advanced mastery. 

• Workplace competencies and paid work experience in career field. 

• Statutory requirements will be established for schools to adopt block scheduling. 

• Health and human services will be integrated with school and work-based learn- 
ing. 

• An electronic data tracking system will be developed for all students. 

The only elected official responsible for STW governance is the Governor of Texas. The 
Texas Skills Standards Board recommends standards and certification to the Texas Council 
on Workforce & Economic Competitiveness.... 

The Council exercises statutory authority to develop, maintain and enforce STW... 

The Council delegates authority to the Texas Workforce Commission to direct activi- 



384 



ties of participating organizations, including: the Texas Education Agency, Higher Education 
Board, Human Services, Rehabilitation Commission, Commerce Department, Commission 
for the Blind, National & Community Services, and Veterans Education. The Texas Workforce 
Commission governs twenty-eight Local Workforce Development Boards which direct local 
implementation of STW... 

Proponents of STW Claim: 

The objectives of STW are to provide students with: 

• Rigorous academics; 

• Opportunity for highly skilled, highly-paid jobs; 

• Participation in STW is optional for both students and businesses. 

Opponents of STW Claim: 

Academics are diluted and academic achievement will decrease because: 

• Curriculum standards are performance- or outcomes-based; 

• Academic learning is displaced by personal, social and workplace competency in- 
struction; 

• Block scheduling results in less course content and lower test scores; 

• Ability Grouping (including Honors Courses) which increases student achievement 
is prohibited; 

• Traditional liberal arts education is replaced by vocational training; 

• Students will be identified and trained for low skill, low pay jobs. Less than 15 % of 
workforce requires a Bachelor's Degree; 

• Leading 5 targeted occupations identify cashiers, janitors/cleaners, sales clerks and 
registered nurses; 

• Participation is not fully voluntary — the state is pursuing legislation to make STW 
a condition of graduation. 

Vocational and academic instruction are integrated; students are not provided an op- 
portunity to select academic course work which is not integrated. Private sector funding is 
required to support STW (matching funds of $20 million will be required in 1997 and will 
increase to a projected $45 million in 2001). According to the STW grant proposal, Texas has 
no immediate plans to tax businesses to force participation as is done in Europe, but areas 
will be required to raise private funds. 

STW Poses Troubling Questions: 

• Should the government direct the development of curriculum, implementation of 
instructional practices and establishment of a data collection system for schools? 

• Should the government through schools identify, train, certify and place workers? 

• Should educational policies be established without the authority of state school 
boards, local district boards and legislators? 

• Should the purpose, structure and means of public education be "transformed" 
without public debate and consent? 

• Should the government establish a national plan for economic management? 



The Noxious Nineties : c. 1997 



385 



On October 14, 1997 the Center of the American Experiment Breakfast and LuNcheon 
Forum Series of Minneapolis, Minnesota held its meeting at the Radisson Plaza Hotel. The flyer 
announced the appearance of Chester E. Finn, Jr., who would speak on "Reforming Educa- 
tion — Why Do Bad Things Happen to Good Ideas?" Excerpts from the flyer read: 

Join us for an American Experiment Breakfast Forum at which Chester E. Finn, Jr., discusses 
why conservatively inspired school reforms frequently get morphed into anti-intellectual and 
statist mush. Why are basically good ideas such as outcomes-based education and national 
standards often turned upside down by educational establishmentarians? What does this 
track record portend for school choice? How can future hijackings be averted? Dr. Finn is 
president of the Thomas B. Fordham Foundation and also serves as John M. Olin Fellow at 
the Hudson Institute. Quite likely the nation's most prolific education critic, he is the author 
of a shelf of books and writes regularly for The Wall Street Journal, Commentary and other 
publications. 

[Ed. Note: The flyer conveniently omitted the fact that Chester Finn was one of the architects 
of President George Bush's America 2000, which is the foundation document for President 
Clinton's Goals 2000 "real" conservatives so thoroughly detest. The author includes this in- 
formation regarding Finn as proof that the dialectic (right vs. left meeting at the radical cen- 
ter) has been accomplished. The "neo-conservatives" have seized the high ground, and are 
developing and supporting socialist programs initially proposed by the liberals. An example 
being the flyer statement "basically good ideas such as 'outcomes-based education,'" which is 
shocking coming from a supposedly "conservative" organization and speaker. The exceptions 
are choice, vouchers, magnet/charter schools, which give the appearance of originating with 
conservatives — which will also track your child into a preplanned future. This alien (socialist) 
concept is, however, supported by the multinational corporations, foundations, education 
union leadership, and institutionalized educational research and development change agents 
for global workforce training purposes. 

As an example of the above collaboration toward global workforce training taking the 
place of education, please refer back to the 1976 entry for NEA's "Cardinal Principles Revisited, 
1976," which included on its panel: David Rockefeller, Chase Manhattan Bank; McGeorge Bundy, 
Ford Foundation; Francois Blanchard, Syndicat National des Enseignements de Second Degre 
(France); Lester Brown, Worldwatch Institute; Willis Harman, Stanford Research Institute; Fred 
Jarvis, National Union of Teachers (England); Sally Swing Shelley, United Nations; Sir Walter 
Perry, The Open University (England); and Joe H. Foy, Houston Natural Gas Co. The author has 
selected the above, primarily non-educator individuals, from a lengthy list to help the reader 
understand how the education establishment at the very top is "in bed with," or more likely 
controlled by, leading international think tanks and multinational corporations. 

The author would also like to point out that the American Experiment organization in 
Minnesota is another state affiliate of the neo-conservative Heritage Foundation.] 

"Clinton Charm Gets Rio Workout" was the title of an article for The News & Observer 
of Raleigh, North Carolina on October 16, 1997. Excerpt follows: 

By stressing the importance of education, Clinton identified a passion shared by his Brazil- 
ian host, President Fernando Henrique Cardoso, a university professor who has earmarked 
a portion of the unexpected earnings from Brazil's massive privatization project to improve 



386 



public schools. The two governments agreed to a "partnership for education" in which the 
United States will help Brazil develop standardized testing of its public schools' performance, 
U.S. and Brazilian classrooms will be linked by computer, and a commission will be set 
up to oversee a new student exchange program and promote private sector investments in 
schools. 



H.R. 2614, The Reading Excellence Act, passed the U.S. House of Representatives in No- 
vember of 1997. 56 For the first time in U.S. history legislation has been passed which mandates 
a particular method of teaching. Excerpts from the abstract of the legislation follow: 

SELECTION OF READING AND LITERACY GRANT APPLICATIONS 

Applications from Reading and Literacy Partnerships will go to the Secretary of Education, 
who would forward them to a Peer Review Panel for initial approval. The Peer Review Panel 
will consist of experts in the field of reading who are appropriate to evaluate such grant 
applications. Members would be selected by the National Institute for Literacy (NIFL) in 
consultation with the National Research Council (NRC, a division of the National Academy 
of Sciences); the Child Development and Behavior Branch (CDBB) of the National Institutes 
of Health; and the Secretary of Education. NIFL, NRC, CDBB and the Secretary would also 
be members of the Peer Review Panel. A priority would be given to applications from states 
that have modified or plan to modify state teacher certification in the area of reading to reflect 
reliable, replicable research on reading.... In selecting an applicant, the Reading and Literacy 
Partnership must give priority to subgrantees that form a partnership with a local Head Start 
program or a community-based organization (CBO) working with children to improve their 
reading skills, or state or federally funded preschool programs or family literacy programs. 

INFORMATION DISSEMINATION 

The National Institute for Literacy would head up the effort to disseminate information on 
reliable, replicable research on reading to all recipients of Federal financial assistance under 
ESEA, Head Start, IDEA, and the Adult Education Act. In doing so, NIFL would build upon 
applicable information networks currently in existence including OERI (Office of Educational 
Research and Improvement, U.S. Department of Education) and those established by states 
and private sector entities. The panel may assist any reading and literacy partnerships to 
determine whether applications for subgrants meet the requirements of this Act relating to 
reliable, replicable research on reading. 

AUTHORIZATION 

There would be a total of $260 million available for this Act. For more detailed information, 
visit the worldwide web at http://www.house.gov/eeo/. 

[Ed. Note: Legislating a particular method to teach reading would never have been possible 
had the Hegelian Dialectic not been used. Workforce training requires that Skinnerian operant 
conditioning (programmed learning) be implemented in the schools. The only way to get that 
method accepted was: 

(1) Create the problem: introduce Whole Language which is guaranteed to hinder children's 
ability to learn to read and causes parents to scream for a solution — any solution! 

(2) Right on schedule, the social change agents responded with a predetermined solution 
which necessitated the use of Skinnerian direct instruction (programmed learning) to 
teach reading. 



The Noxious Nineties : c. 1997 



387 



Little have parents realized that Skinnerian direct instruction and Skinnerian mastery 
learning are identical twins with very bad track records which caused William Spady et al. to 
rename them "Outcome-Based Education" in the early 1980s. 

In order to assure passage of The Reading Excellence Act, Douglas Carnine, Ph.D., director 
of the Follow Through Direct Instruction Model in the University of Oregon's Department of 
Special Education which is associated with the National Center to Improve the Tools of Edu- 
cators (NOTE) funded by the U.S. Department of Education's Office of Special Education, sent 
a letter to "Concerned Friends" requesting they lobby for passage of H.R. 2614. The author 
has deliberately emphasized the word "special" in special education because the fact that 
direct instruction programs are designed for special education students should not be lost 
on the reader, since all students— not just those needing special education— will be exposed 
to the direct instruction process and the Skinnerian operant conditioning method. (For more 
information regarding direct instruction, please refer to Appendix II, III, VI, XVII, XX, XXI, 
XXV, and XXVI.) 

The following critique of DISTAR, Engelmann's Direct Instruction special education pro- 
gram, by a special education teacher in Florida should serve as a warning for those who do 
not understand the implications of using special education programs on all children. 57 The 
teacher points out that DISTAR was: 

1. Developed for teaching the severely impaired (retardation and neurologically im- 
paired) . 

2. NOT suitable EVER for regular education. 

3. Is political "goosestepping"— group training. 

4. Purely "mechanical" system — "authoritarian." 

5. For NORMAL intelligence to SUPERIOR intelligence— a DISASTER. Teacher pounds 
away (scripted); children become bored; "frigidity" sets in and children tune out. 
Become the next behavior problems [emphasis in original] . 

6. We would be deliberately creating behavioral (mental) dropouts. 

You can teach (the teachers) DISTAR in two days ("mechanistic") . Teachers don't have to know 
anything about language development. "El cheapo" response to whole language debacle.] 



Barbara Crossete wrote an article, "How to Fix a Crowded World: Add People," pub- 
lished in The New York Times on Sunday, November 2, 1997, which took a refreshingly different 
position on the subject of population control than that taken by most journalists writing for 
the major print media. Some excerpts follow: 

In the 200 years since Thomas Malthus published his Essay on the Principle of Popu- 
lation and threw a scare into the human race about the limits of the earth's resources, people 
everywhere have been asking: Are there too many of us? 

This week, leading demographers from around the world will meet here to fret over a 
revolutionary new fear: Will there soon be too few of us?... 

. . .But for demographers, the problem lately is not absolute numbers of people and their 
pressures on the environment and natural resources. Now the experts are worried about what 
happens when population growth slows in a lot of places or even stops entirely or declines in 
some. Fertility rates in many places are dropping rapidly, especially in the richest countries, 
where, to put it simply, any two people are not producing two more people. 



388 



If this trend continues it could have far-reaching consequences, demographers say. 
When more and more of the world's most highly industrialized and economically produc- 
tive nations do not replenish their numbers, their role as engines of global growth — both as 
producers and consumers of goods — is thrown into doubt. 

"These developed countries have a particularly important role because they provide a 
great deal of the economic leadership and social leadership," said Joseph Chamie, director 
of the United Nations population division, which organized the conference this week. 

"There are basically the producer nations, the consumer nations and the donor nations," 
he said. "China today is exporting to whom? Basically to the United States and Europe, and 
that's helping the Chinese economy. Europe alone consumes a great deal and produces a 
great deal. If they start shrinking there will be a readjustment, and it will be global in its 
impact. It will affect the entire world economy." 

Unlike dips in population growth throughout history, this slide — which began in the 
1960's — was not caused by a natural or economic disaster, a war or plagues. There is no 
Black Death to blame, no World War I, no Great Depression. This decline is widespread. It 
is steady. And while no demographer would say that predictions are infallible — prognostica- 
tes have surely been wrong. 

[Ed. Note: While Crossett tells the reader what didn't cause the slide in population growth, 
she neglects to point out that Roe v. Wade, which legalized abortion, was largely reponsible for 
the slide in the USA. For an understanding of the results of population planning in the early 
1970s, please refer to the April 6, 1971 entry on the "Revised Report of Population Subcom- 
mittee" in Lansing, Michigan.] 

Former Vice President Dan Quayle jumped on the public-private partnership BANDwagon, 
extending it to include the government and churches "dancing together" to help the less for- 
tunate in our society, as reported in the November 13, 1997 issue of The (Louisville, Kentucky) 
Courier Journal. The following are some excerpts from "Quayle Backs Church-Government 
Partnerships": 

Sounding like a preacher and a politician, former Vice President Dan Quayle told about 
5,000 people in Louisville last night that the government should use churches and other 
"faith-based institutions" to administer help to the poor, the homeless, the abused and the 
neglected.... 

He said everyone supports the concept of church-state separation, but "The Constitution 
protects religion from government. It's not the other way around."... 

He told them that inner-city churches must become partners with the government to 
fight crime, deliver nutrition and restore family values, said Jefferson County Republican 
Party Chairman Bill Stone, who arranged the meeting and attended it with Quayle. 

[Ed. Note: Mr. Quayle, have you been living under a rock ever since 1965 when the Elementary 
and Secondary Education Act passed and all the government's values-destroying education 
programs and methods became a part of our local schools' curriculum? Mr. Quayle, did you 
understand the intrusive, far-reaching effects of America 2000 developed by the administration 
for which you served as Vice President?] 



The Noxious Nineties : c. 1 998 



389 



1998 

The American Institute for Character Education (AICE), a leading developer of character 
education materials, funded by grants from the Lilly Endowment as well as other foundations 
and best known for its development of materials for the Thomas Jefferson Research Center's 
controversial character education program, transferred its assets to Learning for Life in 1998. 
Information downloaded from Learning for Life's website reveals that Learning for Life is 
extending AICE's curriculum development efforts into the area of "school-to-careers" (school- 
to-work) . One of its brochures states that: 

Learning for Life can provide the basis for operating and meeting the goals of the School-to- 
Work Opportunities Act of 1 994. The Act has three basic components that are used to accom- 
plish its goals: school-based learning, connecting activities, and work-based learning. 

Before a School-to-Careers program is developed, an assessment is conducted to de- 
termine precisely how the Learning for Life program can help the school or school system 
help the students address the transition from school to careers. Only after this is done can 
a program be designed to help meet the school's needs. 

Learning for Life will become a catalyst for establishing relationships between com- 
munity-based organizations, including both for-profit and not-for-profit organizations, and 
the local school district, selected schools, and students.... 

Some of Learning for Life's connecting activities are listed as: 

• Camps, retreats, conferences and workshops 

• COPE courses, with team building, leadership, self-reliance, respect for self and 
others, and self-esteem 

• Community- wide service projects, such as food drives, crime prevention programs, 
and service learning 

• Program resources, such as leadership development workshops and scholarship 
opportunities 

• Ethics in Action in Exploring: Five components that assist with the development of 
ethical decision-making. 

[Ed. Note: The last "connecting activity" listed in Learning for Life's materials should be of par- 
ticular concern for parents upset over the Thomas Jefferson Research Center Curriculum.] 

In 1998 the European Commission Directorate General of Education, Training and Youth 
in Brussels, Belgium announced the availability of their Leonardo da Vinci Programme Co- 
operation in Higher Education and Vocational Education Document entitled "Cooperation in 
Higher Education and Vocational Education and Training between the European Community 
and the United States of America — Third Call for Proposals. Launching Date: 17 February 
1998." Excerpts from the announcement taken from the Internet follow: 

On 23 October 1995, the Council adopted a decision concerning the conclusion of an agree- 
ment for cooperation in higher education and vocational training between the European 
Community and the United States of America. The Cooperation Programme aims to add a 
new European Community/United States dimension to student-centered cooperation and 



390 



bring balanced benefits to both the European Community and the United States. 
Transatlantic cooperative activities eligible for support are: 

• Development of organisational frameworks for transatlantic student mobility, in- 
cluding work placements, which will provide adequate language preparation and 
full academic recognition; 

• Joint development of innovative curricula, teaching materials, methods and modules 
including those exploiting the new education technologies; 

• Other innovative projects, including the use of new technologies and distance 
learning, which aim to improve the quality and cost-effectiveness of transatlantic 
cooperation in higher education and vocational education and training. 



Ecumenical News International's News Highlights (London-ENI) of February 19, 1998 
reported that the World Bank and the world's faiths promise to work together: "The World 
Bank and the world's major religions [agreed] to establish joint working groups on development 
issues, it was announced at the end of a high-level, two-day dialogue at Lambeth Palace." 

The New York Times Op Ed page carried an editorial in its May 5, 1998 edition entitled 
"The New World Order" by A.M. Rosenthal. Mr. Rosenthal put into perspective the values 
dilemma facing those who benefit from trade with nations not committed to the traditional 
definition of human rights. Excerpts follow: 

April 30 — U.S. approves another $1 billion in aid to Indonesia as part of the international 
$40 billion economic bailout. President Suharto refuses to break up the multibillion-dollar 
monopolies controlled by himself, his family and friends. He says no political reforms until 
2003, at earliest. Police break up student protests. 

• May 1 — Washington Times and A.P. say C.I.A. reports China has nuclear missiles 
targeted at U.S. 

• May 3 — President Clinton's June visit to China will include welcome ceremonies at 
Tiananmen Square. Washington preparing to allow U.S. companies to sell nuclear 
reactors to China. 

• May 4 — Human rights workers report continued oppression in China and Indonesia; 
more executions in China than in all the rest of the world. 

The U.S., its democratic allies and major dictatorships are rapidly building a new world 
order — not quite finished yet, but already a central part of international life and values. 

Its ideology, powers, rewards and punishments are supplanting those that prevailed 
internationally until 1994, when President Clinton joined the new order. If it continues, it 
will be the most important new international concept since the end of World War II. 

The order was created without formal parliamentary approval by its sponsors, or any 
treaty. But every week, sometimes every day, the underlying tenets are revealed, in action. 
See above. 

The following description of objectives and goals of the new order is so different from 
principles recently assumed in the West, though not always followed, that it may read as 
satire. It is not. 

The fundamental change, demanded by the dictatorships and agreed to in practice by 



The Noxious Nineties : c. 1 998 



391 



the democracies, is that the internal policies of persecution by the rulers, and the rights of 
the governed, are not a primary moral or economic consideration of the world. 

The democracies, under these values, can protest some internal acts of the dictator- 
ships — torture and such. But they must do so quietly, not allowing these acts, or often even 
security interests, to damage the new overriding value of the democratic leaders. 

That value is the trade and investment with the dictatorships that the democracies 
believe important to their national economies — which are sometimes called jobs, but usually 
interpreted as corporate profit. 

In exchange, dictatorships allow democracies to invest and trade in enterprises the 
capitalists consider profitable to their corporate strength, although not necessarily to their 
own employees or the national economic health of their countries. 

If the dictatorships, or authoritarian governments as some are known more pleasantly, 
find their economies collapsing through the corruption generic to such societies, the Inter- 
national Monetary Fund and individual democracies rush to arrive with bailout. 

The explanation given is that otherwise the dictatorships' economies would disintegrate, 
bringing revolution. Now, the people of the dictatorships may long for revolution. Obviously 
that cannot be allowed to overcome saving the dictatorship and thus rescuing the money 
invested by nationals of democracies. 

Accepting these values, the events described above become understandable and even 
neatly logical. 

The Indonesian dictator, for instance, was installed by the army 33 years ago and has 
been in power ever since. Now he needs scores of billions with which to overcome his own 
ineptitude and family corruption, and do the right thing by his foreign investors. Who can 
deny him? 

The U.S. gets to sell strategic material to China, offering as an extra a visit to China 
by the U.S. President to honor the Communist leaders and expand their power and political 
life span. 

Religious and political mavericks in the totalitarian partnership of the new world order 
get prison, or death, often both. 

The press of the democracies gets to write stories about the growth of order in the 
new world order. Other citizens of the democracies get to say costs of imported goods are 
down: how nice. 

Americans and Europeans may come to object for political or moral reasons, or because 
the new world order may after all cost them their jobs. But they will never be able to say 
they never knew; see above. 



The Boston Globe carried an article entitled "Suspicions about the Statewide Tests" by 
Jeff Jacoby in the May 7, 1998 issue. The article contained such good information that much 
of it is included here: 

I was going to write a column expressing my reservations about the MCAS, a 15-hour- 
long series of tests now being administered to fourth-, eighth-, and tenth-graders in every 
Massachusetts public school. I was going to point out that for all the ink and air time being 
devoted to the Massachusetts Comprehensive Assessment System, as it's formally called, 
little is actually known about it. I was even going to suggest that with all the uneasy ques- 
tions the MCAS raises, parents ought to exercise their legal right to keep their children from 
taking it. 



392 



For one thing, I was going to call attention to the spotty record of Advanced Systems, 
the Dover, N.H., company hired to devise and grade the 210,000 tests being administered 
this month. Advanced Systems lost its $32 million contract with the State of Kentucky after 
botching the scores of more than 1,000 elementary and middle schools. The state launched 
what the magazine Education Week called "a sweeping audit" of the company's performance, 
scrutinizing "how the mistake could have gone undetected for many months." 

Kentucky wasn't the only state where Advanced Systems failed. Scores in Maine were 
miscalculated, too. In New Hampshire, skepticism runs so high that the state Senate wants 
an elaborate regimen of supervision over every aspect of Advanced Systems' operations. Has 
the company cleaned up its act, I was going to ask, or is Massachusetts also going to wind 
up with shoddy and unreliable data? 

But incompetent scoring was the least of my concerns. 

I was going to highlight the copycat nature of these "assessments." Other states have 
been administering similar tests, always linking them to the federal Goals 2000 and School- 
to-Work laws, both of which are considerably more creepy and New-World-Orderish than 
their innocuous names suggest. The very word "assessment" conveys something beyond 
mere measurement of academic achievement. Parents in state after state have discovered that 
their kids are being evaluated not just on their knowledge of language, math, and science, 
but on what they think, how they behave, and the way they were raised. 

Would the MCAS, I was going to wonder, be as full of fuzzy PC questions on "feelings" 
and "attitudes" as tests elsewhere have been? If not, why have officials balked at a simple 
amendment to the 1993 Education Reform Act providing that the MCAS "shall be designed 
to avoid the gathering or measuring of individual student attitudes, beliefs, or behaviors"? 
No one, I was going to say, could object to a clarification so straightforward — unless the 
purpose of the assessments is in fact to probe students on matters that are none of the state's 
concern. 

Such as? Well, the Pennsylvania Educational Quality Assessment instructed students 
to react to statements like "I often wish I were somebody else" and "I don't receive much 
attention at home." To measure their "tolerance," students were presented with 35 situations — 
"Your sister wants to marry a person whose religion is much different from yours from your 
family" [sic], "You are asked to sit at a table with retarded students in the lunchroom" — and 
asked how comfortable or uncomfortable each would make them. 

The California Learning Assessment System included loaded questions like this: "Eu- 
ropean Americans discriminated against Chinese immigrants because of ethnic and cultural 
differences. By yourself, think about an instance of discrimination that you know of. It could 
be a situation in which a person or a group of people is treated unfairly because of age, color, 
customs, or some other quality or belief. What could be done to help solve this problem?" 

Kentucky told fourth-graders to imagine themselves Indians at the time the first pio- 
neers arrived and to write "how you would have felt when you saw the pioneers cutting 
down trees and clearing land." Rhode Island grilled students on how often they like being 
in school ("Never? Sometimes? Always?"), whether they are happy with themselves "as a 
person," and how socially active their parents are. 

I was going to quote the sweeping phrase in the Massachusetts ed-reform law that 
empowers the Department of Education to assemble a dossier on each student comprising 
"basic demographic information, program and course information, and such other information 
as the department shall determine necessary. " I was going to describe the extraordinary se- 
crecy that surrounds these tests in many states. Parents and school committee members are 
forbidden to see them, or are allowed to do so only if they sign nondisclosure agreements. 
The College Board isn't so mysterious about its SATs (each year it releases the previous year's 
tests). So why are many states so furtive about their "assessments"? 

I distrust the MCAS. I am more than somewhat skeptical of the motives behind it and 



The Noxious Nineties : c. 1 998 



393 



was going to write a column saying so. 

But I have been persuaded not to jump to conclusions. I have been urged to wait for this 
first MCAS to play itself out, to see whether students report being asked anything dubious or 
improper. I have been reminded that this year's tests will only set a bench-mark — that not 
until 2003 will the tests actually have an impact on students' ability to graduate. 

So, I'll hold my doubts in abeyance. For now. I can always write that column another 

time. 



"South Carolina Takes to Heart Coach's Shot at 'Horrible' Schools" was an article with 
a Clemson, South Carolina dateline which appeared in the May 15, 1998 Atlanta Journal-Con- 
stitution. Some excerpts follow: 

Educators and politicians screeched when they heard former Clemson University basketball 
coach Rick Barnes say he was packing up his family and moving to Austin, Texas in part 
because South Carolina schools are "horrible."... 

Ever since the late 1970s, when current U.S. Education Secretary Richard Riley became 
governor, education reform has been a top issue in South Carolina. Yet, over nearly two 
decades, the state has remained — along with several other Southern states — at the bottom 
of national rankings.... 

Moreover, South Carolina schools regularly win the U.S. Department of Education's 
Blue Ribbon, showing excellence in student achievement and teacher performance. Three 
elementary schools in fast-growing Greenville County won the award last year. 

[Ed. Note: South Carolina can claim the dubious distinction of having been the home state of 
Effective Schools Research change agent Donald Thomas, promoter of U.S. -Soviet pedagogy 
exchanges, and U.S. Secretary of Education Richard Riley, former state school superintendent 
and governor of South Carolina during the adoption phase of the state's OBE/school-to-work 
experiments. The above article is most telling in that it proves that the southern states which 
adopted the late Professor Ron Edmonds's Effective Schools Research and its components 
(mastery learning/direct instruction/outcome-based education/cooperative learning, etc., etc.) 
in the mid-1970s have the lowest test scores in the nation. The philosophy behind Effective 
School Research, that "all children can learn if provided with the necessary 'environment' and 
enough time" is no more, no less than the outcome-based education philosophy which has 
by 1998 been implemented "in all schools of the nation." How can South Carolina have the 
lowest test scores and win Blue Ribbons? 

The Effective School Report, the journal from which this writer has frequently quoted — and 
the one and only journal which consistently deals with OBE, TQM, Effective Schools, etc. — 
was born in Jackson, Mississippi in the early 1980s. Former Secretary of Education T.H. Bell 
served on the board of directors of its parent company, Kelwynn, Inc., the Effective Schools 
training company which published The Effective School Report. It should come as no surprise 
that Jackson, Mississippi schools served as the first guinea pig schools for implementation of 
Effective School Research. 

The fact that South Carolina and Mississippi, two of the southern states most deeply 
involved in mastery learning over a long period of time, have such low academic test scores 
should be adequate justification for Congress to call for an investigation of the consequences of 
adopting effective school research and outcome-based education, if, and the writer repeats if, 



394 



academic performance is what is being sought by the education bureaucracy and the Congress 
which funds public education. Surely, if the departments of education in those southern states 
which implemented effective school research had performed longitudinal studies tracking the 
children who went through those schools, education policy planners would have evidence that 
effective school research falls far short of the claims made by its proponents, most of whom 
benefit financially from such promotion. (See Appendix XXVI.) 

This writer has a question for Coach Barnes: Couldn't his family's move to Austin, Texas, 
which is implementing the same Skinnerian method under another label (direct instruction), 
be a wonderful example of jumping from the frying pan into the fire — especially since Austin, 
Texas is also deeply involved (a leader) in non-academic school-to-work?] 

A VERY INTERESTING ARTICLE ENTITLED "TAKING TECHNICAL ASSISTANCE ON THE ROAD" was pub- 
lished in the Spring 1998 issue of Early Developments (Vol. 2, No. 1) , a publication of the Frank 
Porter Graham Child Development Center at the University of North Carolina at Chapel Hill. 58 
This center is funded in part by UNC and partly by PR/Award No. R307A60004 administered 
by the Office of Educational Research and Improvement, U.S. Department of Education. Ex- 
cerpts from the article follow: 

By the early 1990s, Frank Porter Graham's researchers were at work in the People's Republic 
of China, Eastern Europe, and the former Soviet Union. For example, in 1995 Shelley deFosset 
and Pat Trohanis began working with the privately financed Step by Step program which was 
aimed at creating early childhood education demonstration projects initially in 17 emerging 
democracies of Central and Eastern Europe and the former Soviet Union. 

Step by Step founder and sponsor, George Soros, through his Open Society Foundation, 
wanted to create a childhood education project that would ultimately lead to a new partici- 
patory citizenry beginning with the youngest members of society, its children. 59 Educators 
and parents in the countries involved have been enthusiastic — and, by the end of the second 
year Step by Step was in 1,500 classrooms serving over 37,500 children and families. Most 
countries have been successful in getting local funding for the programs. 

Through a subcontract with Children's Resources International of Washington, D.C. 
which is the Open Society's technical assistance arm for the Step by Step project, de Fosset 
and Trohanis have hosted two groups of Russian teachers and administrators in the United 
States, and deFosset estimated that she's visited Russia "16 or 17" times. While in the U.S. 
Russians received training and visited numerous preschool programs. "When we're in Russia, 
we do training in the cities in Russia — and then we visit programs and provide feedback on 
existing programs," said de Fosset. 



Marilyn Pease of New Bedford, Massachusetts wrote an article for the May 22, 1998 
issue of The Standard-Times of New Bedford entitled "MCAS Tests Undermine Rights of Par- 
ents" which deals with the same subject covered by Mr. Jacoby's May 7 column, but from a 
parent's perspective. Excerpts follow: 

Once upon a time, Americans lived in a republic, where the voice of the minority carried 
as much weight as the voice of the majority because of a representative government. Laws 
and rights applied to individuals whether one, one hundred, or more people exercised their 
rights as opposed to marching lockstep or allowing themselves to be herded. 



The Noxious Nineties : c. 1 998 



395 



Along comes the Massachusetts Comprehensive Assessment System. The Department 
of Education wants us to believe that it's mandated for all 4th, 8th, and 10th graders and that 
the law has not provided for students or parents to "opt out." However, the law also does 
not specifically prohibit parents from exempting their children from the assessment; doing 
so would be a usurpation of parental authority and responsibility. 

The state Supreme Court recognizes that children are not mere creatures of the state. 
Those who nurture and direct their destiny have the right to prepare them for additional 
obligations. Furthermore, Public Law 96-88, Title I, Section 101, number 3 states: "Parents 
have the primary responsibility for the education of their children and states, localities, and 
private interests have the primary responsibility for supporting that parental role. ". . . 

I submitted my intent in writing to exempt my son from MCAS. Despite my lack of per- 
mission, the test was administered to him, regardless. What ever happened to parent/school 
partnerships? What if parents expect the public schools to provide factual information for 
their children to assimilate instead of the assessment of opinions their children are expected 
to synthesize, opinions that are being scored toward state standards, and opinions that will 
consequently be remedied until that standard is achieved? 

We the People are allowing a major paradigm shift to occur, in which the state will 
be directing student destiny based on his or her performance on the MCAS. This correlates 
with MGL Chapter 69, Section ID (I), which parents may review but not contest. Did par- 
ents knowingly relinquish their rights and authority upon enrolling their children in public 
schools? 

Mr. Rick Atkins from the DOE's Accountability and Evaluation Services agreed that 
the law does not prohibit a parent from exempting their child from the MCAS. However, he 
said the child would receive a score of zero, which would be averaged with and thus would 
affect the entire school district. (Is that in the law, or another arbitrary and capricious rule 
the DOE spontaneously made up? Did our local educrats bother to ask?) 

By refusing to exempt any child from the MCAS upon parental request, one might 
presume that their child is being exploited by the public schools so as not to bring down the 
average scores of the entire district. It appears that fundamental civil liberties are also being 
violated, but who cares? It's only one person, maybe a few. I guess it's easier to perpetuate 
the deception than to acknowledge it. Then We the People would have to do something 
about it. 



AL CUOCO AND FAYE RUOPP, FORMER MATHEMATICS TEACHERS WHO WORK IN MATH EDUCAtlOIl, 

wrote an article entitled "Math Exam Rationale Doesn't Add up: Simple Questions Are Often 
Posed in Unnecessarily Complex Ways" which was published in the May 24, 1998 issue of the 
Boston Globe. Excerpts follow: 

In the Foreword to the "Guide to the Massachusetts Comprehensive Assessment System: 
Mathematics" former Commissioner of Education Antonucci says: "I believe that teachers 
and administrators will find the sample questions to be particularly helpful in bringing the 
Massachusetts Mathematics 'Curriculum Frameworks' learning standards to life in classrooms 
and schools." 

Like many teachers across the state, we studied the sample questions and were dis- 
mayed by what we found. We challenge the assertion that the tests given in the last couple 
of weeks reflect learning standards and, even more importantly, we question the assertion 
put forth by Antonucci that "this critical new program... is designed to raise the academic 
achievement of all students of the commonwealth." 



396 



Indeed, the battery of tests given in grades 4, 8, and 10 follows a tradition with which 
teachers are quite familiar. It is one more example of a numerical indicator that can be 
improved over time without significantly increasing our students' understanding. In other 
words, the test is designed so that the first-round scores will be low and so that scores can 
be improved, year by year, by an evolving cottage industry of coaching techniques. 

Teachers know how to prepare students for tests like these, but they will certainly fail 
to do so this year since they received the guide documents only three months before the 
actual tests. But test scores will go up in subsequent years as teachers take valuable class 
time away from what they know is important and spend it on test preparation. Government 
officials will then make public statements about raising academic achievement, and, once 
again, our students will be shortchanged. 

We are former mathematics teachers who continue to work in education. We are out- 
raged that teachers and students have to waste valuable classroom time on tests that are not 
only poorly constructed, but also contain content that is unnecessarily vague, complicated, 
and inappropriate. We are worried that MCAS will raise havoc with existing curriculums 
without any real benefit to students' mathematical expertise. 

We examined the mathematics guide documents closely, and will comment specifically 
on those for grade 10. We encourage the public to look closely at this guide and those for 
other subject areas as well, since much of the debate over MCAS has not focused on the 
quality of the tests. 

Our claims that scores will rise over time without any benefit to our children is based 
on what we found: The majority of the sample questions are shallow, one-step problems, 
and it's possible to solve most of the problems using very little mathematics. But the ques- 
tions are posed using unnecessarily sophisticated mathematical notation or appealing to 
conventions that are not universally taught in 10th grade classes. In other words, the tests 
ask trivial questions in obscure ways. 

Teachers all over the state will soon abandon curriculums that they know are educa- 
tionally sound so they can teach material of questionable content validity to prepare students 
for the MCAS. 

[Ed. Note: The May 5, 1986 St. Louis Globe Democrat article "School Officials Upset by New 
Plan" reports that school officials in St. Louis made the same, exact prediction. (See 1986 
entry.) This process also correlates to the National Center for Educational Statistics' plans to 
judge "teacher quality" by increase in "student performance"— teach-to-the-test. (See 1992 
entry for Filling the Gaps.)] 

The Spring 1998 issue of Association for Supervision and Curriculum Development's 

Curriculum Update was devoted to arts education and the main article was entitled "Arts Edu- 
cation: A Cornerstone of Basic Education." This writer, always a supporter of music and art in 
the public school curriculum, was educated regarding the real purpose of arts education when 
reading Arts and the Schools by Jerome Hausmann, one of the four books commissioned for 
John Goodlad's federally and foundation-funded The Study of Schooling. (See 1979 Schooling 
in the United States.) The Curriculum Update article exposes these same "reformed" purposes 
for arts education as devised by those contributing to America's dumbing down. Excerpts fol- 
low from this enlightening article: 

CLAIMING ITS PLACE IN THE CORE CURRICULUM 

"Today's school gatekeepers think of arts education as they experienced it, as holiday 



The Noxious Nineties : c. 1 998 



397 



art or as recreation, not as a cognitive process," says Leilani Lattin Duke, director of the 
Getty Education Institute for the Arts. By studying the arts, students can develop capacities 
for critical thinking and problem solving, she explains. 

"The arts represent forms that humans have created to convey their feelings, their vi- 
sions, their aspirations, and their values," says Elliot Eisner, professor of education and art at 
Stanford University. "The presence of arts in the schools makes it possible for children and 
adolescents to learn how to read the images that arts provide.... Children need to be able to 
look at art and images and to recognize their historical and cultural significance in order to 
understand the message being conveyed." 

Once children can interpret these sometimes confusing messages, they will need to 
learn how to manage them. "A lot of what is taught in school suggests that there are correct 
and incorrect answers to questions, as evidenced by the use of multiple-choice and true/false 
tests," explains Lehman. "In the real world, questions aren't posed that way." For example, 
questions about how to achieve world peace or end world hunger don't have any easy an- 
swers. The arts naturally require people to seek multiple solutions. 

[Ed. Note: The writer understands and appreciates the artist's legitimate role of creating a 
painting or writing music as an expression of his own feelings about life. That is what makes 
art so special. However, social engineers should not use art to promote their own agendas in 
the classroom. The reader is urged to turn to the 1970 entry which quotes from Leonard S. 
Kenworthy's paper, "The International Dimension of Education: Background Paper II Prepared 
for the World Conference on Education," which says in part: 

For example, the writer has found tremendously effective a 10-minute film on the United Na- 
tions, entitled "Overture." There is no narrative in this film; the pictures are shown against 
a background of music, with the Vienna Symphony Orchestra playing the Egmont Overture. 
It is a powerful learning device and moves its viewers in a way few other approaches touch 
them. 

Anyone familiar with Chairman Mao's brainwashing in Red China understands the use 
of theatre, art, and music to indoctrinate citizens.] 



The Business Section of the May 27, 1998 issue of USA Today carried an article entitled 
"Schools Learn Lessons in Efficiency from Business." Excerpts follow: 

The biggest experiment, however, involves the public school system itself. In one of the 
most ambitious attempts yet to take something that works in business and apply it to public 
education, the 19 schools here expect in six months to become the first school district in the 
world to be ISO 9000 certified. 

ISO 9000, a sort of Good Housekeeping Seal of Approval for businesses, is a way of 
enforcing excellence that has been embraced by businesses worldwide.... But because the 
Lancaster [Pennsylvania] schools have identified their customers to be students and parents, 
ISO 9000 by definition must also force improvements in curriculum, teaching methods and 
anything else that leads to the ultimate goal of higher academic achievement. 

There is growing optimism in education circles that this could be the landmark experi- 
ment that finally marries education to a nuts-and-bolts business tool. ISO 9000 proponents 
say it will enforce discipline, not upon the students, but upon an unwieldy system. It will 
enforce consistency so that average teachers closely resemble the best. 

Will it work? Mixed signals abound. Interviews find Lancaster teachers and principals 



398 



sold on ISO 9000 — but unable to articulate how it will affect the classroom. That's a red flag 
to the business world. 

The U.S. Department of Education is so hopeful that it is funding the Lancaster ex- 
periment with $800,000 in federal grants. [With a per pupil expenditure of $18,000 a year, 
the Lancaster School District is having a hard time making ends meet and was at the begin- 
ning of 1999 saddled with $95 million in debt, ed.] It will be the first school district to get 
certified, although the Brandywine district in Delaware is not far behind. 

The New Jersey State Legislature wants the state's entire public school system to be 
ISO 9000 certified and has enacted a waiver from state monitoring to those that implement 
it. However, only four of 600 school districts are so far considering it. 

Success is far from certain. ISO 9000 is laden with flowcharts and statistics and comes 
steeped in manufacturing terminology guaranteed to make teachers cringe. Curriculum is a 
"process control." "Scrap" is a lost learning opportunity. 

The biggest roadblock has been the inability of educators to fully understand it. There 
have been workshops for two years, but many still are unable to cite examples about how 
it has changed the classroom. 

That's a warning sign to Kurt Landgraf, chairman of DuPont Europe, who has a master's 
degree in education. At this stage in ISO 9000 training, every employee "should be able to 
tell you exactly what they're doing differently," he says. 

But Robert Bowen, the business consultant the school district hired to implement ISO 
9000, says he's not worried. He knows first-hand that ISO 9000 is difficult to grasp because 
he's spent a decade unsuccessfully trying to explain to his parents what he does for a liv- 
ing.... 

Business leaders hesitate to get their hopes up. Throughout the 1990s schools have 
dabbled in continuous improvement and other pieces of total quality management (TQM) . 
But despite those methods, U.S. 12th graders finish ahead of only Cyprus and South Africa 
in the international Math and Science Survey, says IBM CEO Louis Gerstner. 

Trade magazine Quality Progress said the number of public schools surveyed that had 
TQM projects in 1997 dropped 32% from 1996. 

"We lost our way," says Mary Schutz, a principal in Wagon Mound, N.M. where teach- 
ers were once as excited about TQM as Lancaster's are about ISO 9000. 

He (William Kiefer, the Lancaster schools' ISO coordinator) also promises solid evidence 
by this fall that academic achievement is on the rise in Lancaster. 

So far, such evidence does not exist. 

[Ed. Note: When the writer attended the 1992 National Governors Association "Quality in 
Education" Conference held in Minneapolis, Minnesota, the session designed for school and 
other public officials was facilitated by a representative of IBM. During the question and 
answer period, a superintendent inquired about what to do when the expense of processing 
older teachers through staff development was not yielding changes in their behavior or level 
of acceptance of "reform." The facilitator, without a second thought, pointed to the TQM 
flowchart on the wall behind her and indicated a box marked "Waste Management." She then 
answered, "You watch them; you document their mistakes; then you get rid of them." That is 
the TQM/ISO 9000 process at work.] 

Association for Supervision and Curriculum Development's June 1998 issue of Education 
Update carried a "Message from the Executive Director" subtitled "South Africa Tackles Ambi- 
tious Curriculum Reform Effort." Revealing excerpts follow: 



The Noxious Nineties : c. 1 998 



399 



In March 1998, I traveled to Cape Town, South Africa, as a participant in the Comparative 
Human Relations Initiative Consultation, funded by the Ford Foundation through a grant 
awarded to the Southern Education Foundation in Atlanta, Georgia.... South Africa's education 
system is crippled by the legacy of apartheid as it struggles to deal with issues of inequity and 
quality. . . . Consequently, the brew of raised expectations among the ever-growing numbers 
of the poor and the government's inability to respond portends trying times ahead. 

The new government is trying to respond to this situation through an enterprise called 
the National Qualifications Framework (NQF) , an innovative education and training paradigm 
that uses outcome-based education to prepare students to be lifelong learners. Subsequently, 
a massive curriculum reform effort entitled Curriculum 2005 was initiated in January of the 
1998 academic year in all primary schools. But the solid vision behind Curriculum 2005 has 
been marred by inadequate implementation of strategies and resources. 

Various public and private groups have either supported or criticized the government's 
decision to implement Curriculum 2005, which is based largely on the tenets of outcome- 
based education. Sangaliso Mikhatshwa, Deputy Minister of Education, asserts that "this 
system offers much in South Africa's move away from the rote learning and content-driven 
curricula of the past." He further contends that it represents a "head, hands, and heart ap- 
proach, " as learners are required to indicate what they have learned in terms of knowledge, 
skills, and attitudes. 

It is still too early to predict whether these difficulties represent mortal wounds to the 
government's education reform plans or merely predictable roadblocks along the way to 
successful innovation. The one thing that is certain about South Africa is the predictability 
of the unpredictable. Still, there are insurmountable courage, hope, and optimism among 
South Africa's peoples. 

[Ed. Note: The language in this article — particularly the wording "offers much in South Africa's 
move away from the rote learning and content-driven curricula of the past" — parallels and 
echoes that of the opening pages of H.R. 6, the reauthorization of funding for the Elementary 
and Secondary Education Act, which called for funding programs and curricula which would 
not address so-called "lower order skills." This language is interpreted to mean memorization 
of facts and basic academic skills as we have always known them. In addition, the reader 
should understand that outcome-based education is based on Effective Schools Research, the 
basis for international education reform, and that it has generated intense opposition abroad as 
well as in the United States of America. 60 The writer also assumes that language contained in 
International Loan Agreement guidelines issued by the World Bank to facilitate "development" 
in South Africa may have contributed to the adoption of this internationally accepted (man- 
dated) Skinnerian method. (See November 17, 1984 Maine Association of Christian Schools' 
letter regarding Kevin Ryan, Portugal, and the World Bank, and Appendix VI which relates to 
Korea and the World Bank.)] 

The June 7, 1998 issue of Oregon's Statesman Journal published an article ENtitled "Sa- 
lem- Keizer Test Scores Fall." Excerpts follow: 

Salem-Keizer student scores dipped for the second consecutive year in a prominent achieve- 
ment test, dragging district scores further below the national average.... "We can't and 
shouldn't try to make any excuses for it," said Dan Johnson, the district administrator 
spearheading education reform efforts. "It's fairly consistent across each of the categories 
in terms of the decline." 



400 



"Some averages fell to the 40th percentile or lower."... District administrators were 
hard-pressed to pinpoint reasons for the falling scores. 

Johnson attributed it partly to school reforms and a phenomenon he called the "change 
curve." Schools that shift their teaching approaches often witness dips in scores while 
they're trying to make changes in the classroom.... Candalaria has worked hard to improve 
students' creative thinking when approaching math problems.... But by focusing on new 
skills, teachers might have given less attention to basic math computation, where scores are 
dropping, she said. 



The Atlanta Constitution ran an article entitled "Gingrich: Taps for Textbooks — He 

Says Computers Will Replace Them" in its June 9, 1998 edition. Excerpts follow: 

[Newt] Gingrich, speaking Monday at the Supercom trade show at the Georgia World Con- 
gress Center, said the onrush of technology will make textbooks obsolete. 

"One of the goals should be to replace all textbooks with a PC," the Georgia Republican 
said. "I would hope within five years they would have no more textbooks." 

Personal computers are the new focus for learning and students should be given one 
when they enter first grade, he said. 

That suggestion drew immediate fire from Washington, D.C. -based author Harriet Tyson, 
who wrote A Conspiracy of Good Intentions: America's Textbook Fiasco. 

Gingrich has distorted technology's value, she said. "He is like a 16-year-old who just 
fell in love with computers. He is not a techie. He's just in love with techies." 

Gingrich, a former college professor who peppers his talks with references to writers such 
as Peter Drucker, W. Edwards Deming and Alexis de Tocqueville, also called for an overhaul 
of the nation's schools. Gingrich urged that schools be judged in a business context. 

Gingrich argued that Internet connections should often be available to replace the 
traditional lecture by a professor. In contrast to the old-style teaching model, the Net would 
be accessible 24 hours a day, he said. "We have to become a learning society." 

[Ed. Note: The following quote from the 1971 The Individualized Learning Letter entry echoes 
the views of Newt Gingrich: 

Down with textbooks! Textbooks not only encourage learning at the wrong level (imparting 
facts rather than telling how to gather facts, etc.), they also violate an important new concern 
in American education — Individualized Instruction. 

This is also another instance which reminds us of the gravity of the consequences of 
H.R. 6 (reauthorization of the Elementary and Secondary Education Act of 1965) and its as- 
sertions that "lower order skills" (memorization and basic academics) should not be funded 
or promoted.] 

The Tri-City Herald of Kennewick, Washington carried "Group Supporting Paula Jones 
Case Sues Pasco Schools" by Wendy Culverwell in its June 11, 1998 issue. The article tells us 
that: 

The organization that is paying Paula Jones' legal bills in her sexual harassment case against 
President Clinton filed suit Monday against the Pasco School District. 



The Noxious Nineties : c. 1 998 



401 



The suit contends the district violated the constitutional rights of a former teacher who 
objected to outcome-based education. 

In the action filed in U.S. District Court in Spokane, the Rutherford Institute alleges the 
district wrongfully terminated Barbara McFarlin-Kosiec and violated her constitutional rights 
to free speech and free exercise of religion. The complaint seeks economic damages. 

Ken Rice, the Kennewick attorney who represents the district, said the district hasn't 
been served with the complaint, but he doesn't believe the suit has merit. He said the district 
would defend itself vigorously. 

According to the press release issued by the Rutherford Institute, McFarlin-Kosiec was 
forced to resign as a teacher in 1995 because of her opposition to outcome-based education. 
She was a veteran teacher when she was hired in 1993 to teach at Mark Twain Elemen- 
tary. 

The lawsuit was filed by Greg Casey and Bruce Gore, Spokane attorneys affiliated with 
the Rutherford Institute. . . . The Institute describes itself as an international, non-profit civil 
liberties organization specializing in the defense of human rights. 

Neither McFarlin-Kosiec nor her attorneys could be reached for comment Wednes- 
day. 

[Ed. Note: The reader will recognize the name of Barbara McFarlin-Kosiec as one of the teach- 
ers who reviewed and endorsed the deliberate dumbing down of america. Who better could 
understand the consequences of opposition to the restructuring paradigm shift?] 

The Washington Times of June 11, 1998 printed an Associated Press article ENtitled 
"Congress to Expand Education Savings." Important excerpts follow: 

House and Senate negotiators agreed yesterday on a bill to expand tax-favored savings 
accounts for educational expenses, including tuition at private and religious schools, and to 
erase a ban on President Clinton's proposed national standardized tests. The deal removes 
an obstacle to President Clinton's plan for voluntary national tests in fourth-grade reading 
and eighth-grade math. Negotiators deleted an amendment passed by the Senate in April that 
would have banned the standards-based tests unless specifically authorized by Congress and 
would have converted some Education Department programs into block grants. 

The negotiators also tacked on a reading bill, supported by Mr. Clinton, that must be 
signed in order for $210 million to be spent starting July 1 for research, teacher training and 
grants to help improve reading instruction. 

[Ed. Note: Although the above legislation did not become law, the importance of this entry 
relates to (1) the removal of the ban on national testing and (2) the approval of legislation 
which will mandate a particular method of reading instruction, Skinnerian Direct Instruction 
in The Reading Excellence Act, which did pass a few months later in November of 1998 as part 
of the omnibus budget.] 

AS A SMALL ITEM IN THE JUNE 19, 1998 ISSUE OF THE WASHINGTON TIMES, AN ARTICLE appeared 

entitled "Panel: Make Education Career-Focused" which says in its entirety: 

All high school students should receive a mixture of academically challenging courses 
and work experiences regardless of whether or not they plan to attend college, a group of 
business leaders and educators said yesterday. 



402 



The report singled out Thomas Jefferson School for Science and Technology, an elite 
public high school in Fairfax County [Virginia] , as proof that such an approach doesn't have 
to sacrifice academics. 



June 19, 1998 the European Commission Directorate General for Education, iRAiNing 

and Youth in Brussels, Belgium issued another call for proposals under the Leonardo da Vinci 
Programme Document "Cooperation in Higher Education and Vocational Education and Train- 
ing between the European Community and the United States of America." Excerpts from the 
Internet post follow: 

Over 17,600 young people are on placements in other European countries under the Leon- 
ardo da Vinci programme.... The European Commission has granted assistance totalling 
ECU [European Community Unit] 29.7 million to 22 countries taking part in the Leonardo 
da Vinci vocational training programme in order to organise transnational placement and 
exchange programmes for young people and trainers throughout Europe. Over 17,600 young 
people undergoing initial training or in employment will carry out a period of training in a 
company or training establishment in another country participating in the programme, in 
order to gain experience and improve their employment prospects. 

The sectors of activity in which these young people and trainers will exercise their 
mobility are extremely varied and cover both industry (e.g., apprenticeships in electrical en- 
gineering) and agriculture (e.g., training in aquaculture) , as well as services (e.g., the hotel 
trade or catering) . The aim of such placements is to acquire certified occupational experience 
and in the case of longer placements, to learn an additional skill. 



Continuing her excellent work as "watchdog" on behalf of Ohio taxpayers, State 

Board of Education member Diana Fessler — an articulate opponent of the school-to-work phi- 
losophy—wrote a letter dated June 22, 1998 to U.S. Secretary of Education Richard Riley and 
U.S. Secretary of Labor Alexis Herman in regard to her being barred from a meeting sponsored 
by the National School-to-Work Office of the U.S. Department of Education on June 14-18, 
1998 in Cleveland, Ohio. Ms. Fessler's letter is reproduced in its entirety in order to relay the 
complete details of her experience. 

Dear Secretaries Riley and Herman: 

I am a duly elected member of the Ohio State Board of Education (SBE) with approxi- 
mately one million people residing in my district. Section 3301.07(C) of the Ohio Revised 
Code directs the SBE to administer and supervise the allocation and distribution of all state 
and federal funds for public education in Ohio. Accordingly, I have an obligation to be fully 
informed regarding education matters affecting my constituents. 

Seeking to stay abreast of School-to-Work (STW), I made arrangements to attend a 
meeting sponsored by the National School-to-Work Office (NSTWO) on June 14-18, 1998 in 
Cleveland, Ohio. Forty-three states and Puerto Rico were represented. I was formally intro- 
duced and welcomed from the podium by Ohio's STW director, and I attended the Sunday 
through Tuesday morning sessions without incident. 

On Tuesday afternoon, Ivan Charner of the Academy of Educational Development 



The Noxious Nineties : c. 1 998 



403 



(operator of the NSTWO's Learning Center) told me I could not attend his closed "strategy" 
meeting for the eight states that received first-round STW money. I find it incredible that 
those who claim that STW is good for kids, good for the economy, good for our nation, and 
worthy of replication find it necessary to conduct the public's business behind closed doors, 
and I told him so. A woman nearby said, "Well, the FBI meets behind closed doors," and 
I thought to myself, "Good grief, this is worse than I thought; these people think a STW 
meeting is on par with an FBI operation. " 

Mr. Charner referred me to Ms. Irene Lynn, Interim Director of the NSTWO. She con- 
firmed that I was not welcome, saying: "It is just not an open meeting; it is a non-public 
meeting." I asked, "Who is paying for this meeting?" and she acknowledged that taxpayers 
were. I asked who decided to keep me out and she said that she had. I asked what the NSTWO 
was trying to hide, and she said it was just a "working meeting," and that government work- 
ers often get together for such meetings, and nothing was hidden. 

These were not routine staff meetings. Participants had flown in from all across the 
country to meet in a swanky hotel, at taxpayers' expense, to identify and discuss "obstacles" 
that they face in moving the STW agenda forward and to develop "strategies" to overcome 
those "obstacles." 

Ms. Lynn attributed the "problem" to my "not understanding STW" and used the 
common, and offensive tactic of characterizing those who do not blindly embrace STW as 
being "misinformed" or "lacking in understanding." When I pointed that out, Ms. Lynn 
corrected herself and acknowledged that the "problem" is philosophical in nature, not in- 
formational. 

It is no secret that I have serious reservations regarding the STW system. I have re- 
searched it extensively, and I have made that research available to my constituents via my 
web site — to the chagrin of STW devotees who seek to hide the full scope of STW from 
the American people for as long as possible using whatever means necessary. Thus, they 
attempt to conduct the people's business behind closed doors, or only in the presence of 
the Enlightened. This bureaucratic tyranny undermines rational, open disagreement — the 
hallmark of civil liberty in the arena of government. 

To reaffirm that there was a concerted effort to bar me from the meeting, on Wednes- 
day morning I entered the Communications Task Force meeting room and stood at the back 
of the room. Stephanie Powers, Director of Communication & Public Affairs, Office of the 
Assistant Secretary, U.S. Department of Labor, Employment & Training Administration; and 
Peter Woolfolk, Special Assistant for Communications, Vocational and Adult Education, Office 
of the Assistant Secretary, U.S. Department of Education, insisted that I leave. 

One can only wonder what NSTWO was trying to accomplish by barring me from the 
meeting. One might reasonably conclude that the decision to oust me was considered to be 
the lesser of two evils; i.e., the repercussions of doing so being less problematic than risking 
full disclosure of what took place during the meetings. I also found it troubling when Ms. 
Powers said that I need to understand that "Congress has provided for these business meet- 
ings" — implying that Congress would approve closed-door STW meetings. 

Ms. Powers said that she knew that we did not agree on STW. As I told Ms. Powers, 
STW is not the issue — it is whether the general public, through their elected representatives, 
have access to critical public information regarding the work being done to re-shape our 
schools, our economy, and our system of government. She had no reply Knowing that the 
meeting would have been "shortened" had I stayed, I left the hotel, but there are still ques- 
tions that need to be answered: 

• By what authority did Mr. Charner, Ms. Lynn, Ms. Powers, and Mr. Woolfolk bar me 
from the meetings? 



404 



• Why was it imperative that the public's business be conducted behind closed 
doors? 

• And, if STW is indeed good for kids and essential for the good of the economy, why 
must the details be kept hidden from public scrutiny? 

NSTWO has yet to provide me with copies of Ohio's Urban/Rural Opportunities Grants, 
claiming that they cannot do so unless the grantees give the NSTWO permission to do so. Any 
attempt to make the release of public records contingent on the one seeking the information 
first getting permission from the recipient of federal funds is absurd, but it does illustrate 
the extent to which your employees will go to restrict the flow of information. Therefore, 
pursuant to the FOI Act, please see that I get a copy of each Ohio UROG grant including the 
budget narratives and appendices, as well as the following documents relevant to the June 
14-18 STW meeting in Cleveland: the communication from legal counsel regarding closed- 
door meetings; all RFP's, SGA's, and contracts (including facilitation and technical assistance) 
with appendices and the budgets; a list of all disbursements including date, amount, vendor, 
and purpose; all notes taken by staff and "recorders"; all overheads, handouts, background 
materials, audio tapes, and videos, and candidate applications, including resumes and ap- 
pendices, of those applying for the position of Director of the NSTWO. 

This is not a letter of complaint; it is a declaration: your people are out of control. 
This letter also serves as formal notification that concealment of public information, unless 
required for national security, will not be tolerated. Furthermore, I am seeking legal counsel 
to determine if any state or federal laws have been broken regarding this matter. 

The purpose of government is to serve the interests of the people — not to develop 
legislative agendas, refine implementation strategies, and create marketing plans behind 
closed doors. Apologies from bureaucratic bullies who willfully prevented me from gath- 
ering the background information to enable me to carry out the duties of my office would 
be meaningless. Ms. Lynn, Ms. Powers, Mr. Woolfolk, and Mr. Charner should be fired and 
their positions filled by people who have a firm understanding of, and respect for, how rep- 
resentative government is supposed to work. 

Please give this letter your prompt attention. I look forward to receiving your personal 
letter of reply. 

On behalf of my constituents, 

Diana M. Fessler 

Ohio State Board of Education — Third Dis- 
trict 61 

CC: Senators Lott, Ashcroft, DeWine, Glenn Representatives Gingrich, Armey, DeLay, Boeh- 
ner, Hyde, Hoekstra and Graham 



The June 1998 issue of The Christian Conscience carried an article by education researcher 
Bettye Lewis of Michigan entitled "Violence in the Schools: Part 2 — Achieving National Edu- 
cation Goal Six." In this article Lewis asserted that "Goal 6 may be the most diabolical goal 
in the Goals 2000: Educate America Act, since it is this goal which will strip away individual 
freedoms in favor of the collective world community (New World Order). Will Americans 
wake up and refuse to relinquish their unalienable (God-given) constitutional rights? Or will 
they continue in apathy as they increasingly become drones in the coming New World Order?" 



The Noxious Nineties : c. 1 998 



405 



Excerpts of Lewis's article follow: 

The Michigan Strategy Proposal for Drug and Violence Free Schools and Communities 
states: 

Michigan now has one of the Nation's most aggressive and comprehensive long-term 
strategies to reach Goal 6: "By the year 2000, every school in America will be free of drugs 
and violence and will offer a disciplined environment conducive to learning." 

Governor John Engler and the Michigan State Board of Education have worked jointly 
to provide leadership and establish a clear plan of action to enable our schools and com- 
munities to create safe, disciplined and drug free learning environments for our children 
by the year 2000. It will demand local community action, greater coordination, and careful 
targeting of $17 million in federal Drug Free Schools and Communities Act (DFSCA). 62 

Throughout this document the Communitarian agenda is apparent. This philosophy 
assigns responsibility to the community, not the parents, for the development of the child.... 
The section on "Action Items" refers to State and Local Goals and shows us how dictatorial 
the state and federal Government have become toward recipients of Drug Free Schools and 
Communities Act funds. Notice there is no choice — "the school district will..." 

Every school district will develop a local school-community coalition and advisory team. 
The data banks established for continual assessment and analysis will be the controlling 
factor, not only regarding the individual, but the school and the community, establishing 
community norms as well.... As one reads this proposal for accomplishing Goal 6, it becomes 
clear this document became the foundation for the Bias Crime Response Task Force Report. 
Surveys, marketing and a media blitz will be used to convince the public that violence is 
out of control and every community must be used to address the problem and fully imple- 
ment Goal 6. Five years ago — 1993 — this document (Michigan's Strategy Proposal) cited the 
State Goal to be: 

Every school-community drug education advisory team will review current needs assess- 
ment and problem statements, undertake and complete a comprehensive needs assessment 
with data sufficient to identify, alter or select prevention programming and utilize data 
to plan evaluations of program impact by June 1994. The state will compile a county by 
county risk and protective factor profile as a local resource and for comparative data. 

The State Goal reveals just how extensive the databanks will be and how the data will 
be used as a means to dictate how every school/community will address the problem and 
develop prescribed national norms. The target date, June 1994, aligned perfectly with the 
1994 Student Data Handbook: Elementary, Secondary and Early Childhood and the 1994 
Staff Data Handbook: Elementary, Secondary and Early Childhood. 63 These data handbooks 
were first developed in 1974.... One of the original ten data handbooks was on community 
and number-coded community values — the values every U.S. community was eventually to 
embrace as their norms. 64 ... 

...The systems change and the implementation of the School-to-Work system will 
force the continual assessment of children to analyze the progress being made toward the 
elimination of all bias, individualism and privacy. Common unity cannot prevail unless all 
children develop the predetermined behavior, attitudes, and values for existence in the in- 
terdependent global society of the future. 

The federal government is up to its old trick of creating a problem — which they cer- 
tainly have done by limiting discipline in schools, subjecting children to certain learning 
experiences, requiring inclusive education which requires juvenile offenders in tethers to be 



406 



in the regular classroom, requiring group consensus decision making and problem solving. 
The violence problem has been advertised for quite some time, and the rigged survey results 
will be used to continue the media blitz to gain public acknowledgment of the problem. The 
solution to the problem was planned long before Goals 2000, but the objective was state 
enforcement and control. 

Most of the plan has already been implemented. Remember, everything is to be in place 
by the year 2000. We already have alternative schools, after-hours programs, full-service 
schools, day care, peer mediation, community service, character education, health educa- 
tion, uniforms in some schools, etc. 

Goal 6 data banks on violence and bias crimes open the public square to drowning in 
the flood waters of the collective. Laws will be of no importance as norms become dictated 
by the federal government via their data collection system. These norms are becoming very 
evident: a new type of family (the community), gun control... efforts to modify the values 
of Christians or any faith that disagrees with the norms of anti-individualism, population 
control, promotion of the world community over nationalism, with survival only through 
cooperation, collaboration and consensus, (pp. 14-23) 65 

[Ed. Note: Lewis's expose of what is taking place in Michigan is a most valuable warning 
for all Americans. In order to fully understand the significance of her expose, substitute the 
names of your children, your town, your county and your state and you will feel chills race 
down your spine.] 

Dr. Lawrence W. Lezotte, senior vice president of Effective Schools, Okemos, Michigan, 
presented a paper entitled "Learning for All — What Will It Take?" at the Sixth Annual Model 
Schools Conference sponsored by Willard Daggett's International Center for Leadership in 
Education, Inc., at the Renaissance Waverly Hotel and Cobb Convention Centre in Atlanta, 
Georgia, June 28-July 1, 1998. An excerpt from Dr. Lezotte's paper follows: 

A single school, as a system, can control enough of the variables to assure that virtually all 
students do learn. The distinguished educational researcher Robert Gagne said that the es- 
sential task of the teacher is to arrange the conditions of the learner's environment so that 
the process of learning will be activated, supported, enhanced, and maintained. 

[Ed. Note: Quoting from the 1969 entry in this book entitled Improving Educational Assessment 
and an Inventory of Measures of Affective Behavior, the writer wishes to draw the reader's at- 
tention to a most revealing statement from "The Purposes of Assessment" by Ralph Tyler: 

Now, as the people from conditioning have moved into an interest in learning in the schools, 
the notions of behavioral objectives have become much more specific. As far as I know, one 
cannot very well teach a pigeon a general principle that he can apply to a variety of situations. 
The objectives for persons coming out of the Skinnerian background tend to be highly specific 
ones. When I listened to Gagne, who is an intelligent and effective conditioner, talk about 
human learning objectives, I wince a good deal because he sets very specific ones. I know 
that we can attain levels of generalization of objectives that are higher than that. 

Making the connection between Lezotte, Gagne, and Tyler should help the reader un- 
derstand that the restructuring going on in this nation's schools reflects the use of Skinner- 
ian operant conditioning (OBE/ML/DI). Lezotte, one of the leaders of today's restructuring 



The Noxious Nineties : c. 1 998 



407 



movement, has made this clear by his reference to Gagne, conditions and environment. The 
high profile that Lezotte maintains with his Effective Schools organization and his consistent 
appearance at Willard Daggett's meetings and seminars— and Daggett's close former asso- 
ciation with William Spady of OBE fame — should demonstrate to the reader that all of these 
participants and promoters of the restructuring movement are "singing the same tune," as it 
were, and they sound exactly like Skinner's operant-conditioned pigeons. Lawrence Lezotte 
has also served on the board of directors for The Effective School Report — this very important 
and relatively unknown (to the public) journal.] 

The Atlanta Constitution's July I, 1998 edition carried an article by Doug Cumming 
entitled "Georgia Schools OK Tracking Systems" which confirmed the worst fears of education 
researchers tracking Planning, Programming, Budgeting Systems (PPBS) and Management by 
Objectives (MBO) for over twenty-five years. Excerpts from this revealing article follow: 

Taking its biggest step yet to create a powerful new computer information system that can 
track every state education dollar down to the attendance rates and test scores of every Georgia 
classroom, the State Board of Education approved two major computer contracts Tuesday. 

The two contracts, for as much as $31 million over the next 12 months, along with a 
related contract tabled until July 9, will give school systems quicker access to information. 

"For example, the new systems will let school systems instantly report students who are 
absent for two consecutive weeks or suspended for drugs, alcohol, or guns. This will allow the 
state to immediately revoke their driver's licenses under a law that took effect this year. 

"That's just a taste of what is possible. In the future, by linking student records, staff 
records and funding formulas, the new system will also allow local schools and state policy- 
makers to see how well teachers and students are performing within specific programs. 

"We know that in education for too long, programs have been implemented, and there 
was never any comprehensive measurement," said Miriam V. Holland, director of adminis- 
trative technology for the state Department of Education. 

"The state goal over the next few years is to be able to pinpoint the cause of academic 
weaknesses such as the recent failure rate on the science portion of the state's graduation 
exam," she said. 

Bonnie Knight, head of business and technology for the Rockdale schools, said she is 
excited about what will be possible when a new student-information system is introduced 
and linked to the accounting system. Then, teachers can punch up on their own computer, 
within security limits, family and student records, and administrators can access the kind of 
information that private businesses normally use to determine the cost-effectiveness of any 
program. Knight says she knows of no other state that is linking student records with state 
and local school accounting systems. 

James Mullins, a lobbyist for DeKalb County schools, which uses its own information 
systems, said the new system will put increasing pressure on systems like his to adopt the 
state's system. He said many local systems quietly worry that the proposed new system could 
eventually give the state the power of a "Big Brother" to control local schools directly. 

[Ed. Note: The legitimate concern expressed by James Mullins of DeKalb County regarding 
"Big Brother" comes as a timely warning for naive Americans who see nothing wrong with 
providing any and all information — social security numbers, fingerprints, personal data — to 
anyone who requests it, even, and especially, your local school officials. The reader is urged 
to re-read the 1972 entry in this book which quoted from "Schools to Try New Program" 



408 



published in the Tallahassee, Florida The Ledger for the Cecil Golden comment which likened 
PPBS/MBO — of which the above article is the fulfillment — to an atom bomb: "[L]ike those 
assembling the atom bomb, very few of them understand exactly what they are building, and 
won't until we put all the parts together. "] 

"Vocational Project Lauded" was published in the Salem, Oregon The Statesman Journal 
on July 7, 1998. This article discussed a program in which students repair donated computers 
for use in schools (Students Recycling Used Technology or STRUT) . Some excerpts follow: 

Gov. John Kitzhaber, addressing a national conference of educators Monday, praised a vo- 
cational education program as an example of school reform that emphasizes results instead 
of class time. 

Students repair donated computers for use in schools through the program known as 
Students Recycling Used Technology, or STRUT. 

The program is a model for the next generation of vocational education in the United 
States, Kitzhaber told the Education Commission of the States, an educational policy group 
that includes governors and state legislators. 

"The new model," said Kitzhaber, "provides standards and the basics but then requires 
students to demonstrate that they can actually apply the knowledge that they've learned." 

"Conceived in 1995, STRUT has placed 10,000 refurbished computers in schools and 
has more than 800 students repairing computers statewide. 

"The program's results have inspired educators in Washington, California, Arizona, 
New Mexico and Texas to copy it. STRUT is a modern version of traditional vocational edu- 
cation because it combines two objectives," said Frank Newman, Commission President.... 
"In Indiana, new programs similar to STRUT rely on professional technicians, not students, 
to repair donated computers.... One downside is that a lot of what is donated is low qual- 
ity, " said Carolyn Breedlove, a telecommunications lobbyist for the National Education As- 
sociation in Washington, D.C. "Companies get tax write-offs often not commensurate with 
the quality of the donations." 



The July 9, 1998 issue of the South Bristol, Maine Lincoln County Weekly PUBlished 
an article entitled "Darling Center Hosts UNESCO Conference" which illustrates the extent 
to which even the smallest towns in our nation are being affected by international education 
policies. The article states in part: 

While the majority of residents and visitors in the area celebrate Damariscotta's past 150 
years, a fledgling group of international visitors gather at the Ira C. Darling Marine Center 
to plan for the future. 

Participants in the third International Working Conference on Information Technology 
in Education Management (ITEM) have come from 18 countries, including Australia, Japan, 
New Zealand, China and the Netherlands, to share their research on integrating information 
for education management.... 

..."One very important aspect of this work is how integrated information influences 
or informs the decisions of school administrators and policy makers," said Ray Taylor, the 
conference coordinator and a former superintendent of the Augusta school district.... 

While the Darling Center hosted the meeting, School Union 74, UNESCO (United Na- 
tions Educational, Scientific and Cultural Organization), and a North Carolina company, 



The Noxious Nineties : c. 1 998 



409 



OR/ED Laboratories, also supported the week's events. 

"Most of the participants work with national information systems for education, with 
Great Britain, Israel, Hong Kong, and New Zealand, having among the most advanced sys- 
tems," Taylor said. 

Speakers debated the benefits of standardizing student and school information across 
regions. Such information systems benefit students by tracking their academic achievement, 
as well as administrators who have individual children continually entering and leaving 
their schools. 

"This goes beyond counting cheese and buses," one participant remarked. "We want 
to create consistent data on local, regional and national levels." [And international? ed.] 



The July 11, 1998 issue of The Washington Times carried an article entitled "Classroom 
Brain- Watchers?" by Kathleen Parker which discussed the federal government's plan to prevent 
school violence by "adding psychoanalysis to our teachers' laundry list of responsibilities." 
Excerpts follow: 

I have a healthy paranoia toward government, born most likely of having been reared 
by a misanthropic WWII pilot with a bomb shelter. Let's just say, when government bu- 
reaucrats knock on my door and say, "We want to help you," I get the same feeling I got as 
a little girl when the old man down the street reached over his cyclone fence to offer me a 
piece of candy. Not "No, thanks," but "Run!" 

When they come knocking to say they want to help my children, I reflect wistfully on 
moats. 

Such that when I recently heard about the federal government's plan to prevent school 
violence by adding psychoanalysis to our teachers' laundry list of responsibilities, I began 
pricing drawbridges. 

Judging from the absence of news stories on the subject, you may have missed your 
future. President Clinton first mentioned the plan in his June 13 radio address to the nation. 
Education Secretary Richard Riley mentioned it again a couple of weeks ago during the Safe 
and Drug Free Schools Conference in Washington, D.C. 

Mr. Clinton has directed Mr. Riley and Attorney General Janet Reno to work with 
the National Association of School Psychologists to develop a framework — "early warning 
guide" — to help teachers and principals identify which kids are most likely to bring Grandpa's 
deer rifle to school one of these days. 

The plan also calls for expanding links between schools and local psychological com- 
munities so children identified as "troubled" have access to counseling. 

Because the guide is in the early planning stages, details are skimpy. No one knows 
yet how danger signs will be defined or recognized, according to a Department of Educa- 
tion spokesperson. Right off, I'd have to say it's pretty easy to tell which kids are dangerous 
without creating a psychological bureaucracy. In nearly all recent school shootings, as Mr. 
Clinton pointed out, the shooters announced their plans in advance. 

In other words, if a kid says, "I'm going to blow everybody away tomorrow because 
they've been picking on me since nursery school," you might assume trouble. If, on the 
other hand, a third-grade boy draws a picture of a ship exploding with bodies flying in all 
directions, punctuated by red ink blots, you might assume you've got a normal third-grader 
on your hands. 

But you can bet that won't be the thinking once the warning guide is in the hands of 
extremely well-meaning educators and counselors, some of whom have the judgment and 



410 



perception of parakeets. That third-grader will wind up in some counselor's office for analysis 
and reprogramming before you can say "Freud." 
Paranoid? You bet. 

My own child — a kind, sensitive 13-year-old whose disinterest in guns rivals his in- 
terest in hanging up wet towels — drew incredibly violent pictures during his grade-school 
years. The exploding ship with exploding bodies comes to mind. How might a newly trained 
teacher — especially a female teacher without sons — interpret such a drawing? 

Clearly a sociopath. Get that boy downtown! 

Will any child who talks about guns be sent to the "thought police"? What about 
playing cowboys and Indians, or "Star Wars" during recess? Does this qualify a child for 
re-education? What sort of records will be kept? 

Even Mr. Riley expressed concerns about the plan. "We need to be very cautious about 
the idea of sorting out our children and labeling them," he said in the speech. "Too many 
children are already being sorted out in our schools and too often this approach to education 
has been harmful to minority youth." 

Not to mention harmful to freedom. Can mandatory psychological profiling be far 
behind? The potential for abuse of power and thought control is the stuff of science fiction. 
But that's just the thinking of a paranoid. I probably just need a little psychotherapy. 

And a big moat. 



In the July 14, 1998 Congressional Record Congressman Henry Hyde (R., IL) iNcluded a 
very important article written by D.L. Cuddy, Ph.D., former senior associate with the U.S. De- 
partment of Education and consultant to the North Carolina House Select Committee for Federal 
Education Grants. Cuddy wrote "Education: The New Transatlantic Agenda" which appeared 
in the July 2, 1998 issue of Dunn, North Carolina's The Daily Record. Excerpts follow: 

The White House released a statement May 18 at the conclusion of the U.S. -European Summit 
in London, indicating that "through the New Transatlantic Agenda (NTA), created in 1995, 
the United States and the European Union have focused on addressing the challenges and 
opportunities of global integration." 

One part of this "global integration" in 1995 was the agreement between the U.S. and 
the European Community establishing a cooperation program in higher education and vo- 
cational education and training. 

The agreement, signed December 21, 1995, called for "improving the quality of human 
resource development... transatlantic student mobility... and thus portability of academic 
credits." In this regard, a joint committee would reach decisions by consensus. 

As part of the NTA, the United States and European Union then convened a major con- 
ference, "Bridging the Atlantic People-to-People Links," May 5-6. 1997, calling for "thematic 
networks for curriculum development," and further stating that in an information-based 
global economy, "governments too are obliged to adapt their economic, training and social 
welfare programs." 

The conference final report noted that in the United States, ACHIEVE has been one 
of the organizations at the forefront of defining key issues in this regard and developing 
strategies to address them. 

ACHIEVE has been measuring and reporting each state's annual progress in estab- 
lishing internationally competitive standards and business leaders involved have indicated 
their commitment to consider the quality of each state's standards when making business 
location or expansion decisions. 



The Noxious Nineties : c. 1 998 



411 



The "Partners in a Global Economy Working Group" of the conference discussed "what 
redesigning of curricula is required... (i.e., what career skills are needed)... portability of skill 
certificates... institutionalizing cross-national learning/training activities." 

Most people debating STW in America are familiar with the role of Marc Tucker, pres- 
ident of the National Center on Education and the Economy. He's also on the National Skill 
Standards Board (NSSB). 

On the National Skill Standards Board website under international links, one finds 
"Smartcards Project Forum," under which one reads: "The Tavistock Institute and the 
European Commission are working on a feasibility study to research the effect of using 
Smartcards in competence accreditation. The study will be carried out in the USA and parts 
of Europe." 

The project involves assessing and validating students' skills, with information placed 
on personal skills Smartcards, which "become real passports to employment." 

If without a passport one cannot enter a country, does this mean that without a skills 
passport, one may not be able to get a job in the future? 

In October 1997, the Tavistock Institute (and Manchester University) completed the 
final report for the European Commission and described in a report summary were the rel- 
evancy of Goals 2000, SCANS... typology with its "profound implications for the curriculum 
and training changes that this will require," valid skills standards and portable credentials 
"benchmarked to international standards such as those promulgated by the International 
Standards Organization (ISO) . " 

The report summary went on to say that "there is increasing attention being focused 
on developing global skill standards and accreditation agreements" and there will be "part- 
nerships between government, industry and representatives of worker organizations ... [and] 
a high degree of integration... embedding skills within the broader context of economic and 
social activity and specifically within the areas of secondary education work-based learning 
and local and regional economic development.... The NSSB, Goals 2000, STW Program are 
all combining to act as a catalyst to promote the formation of partnerships to develop skills 
standards. In this regard, a system like 0*Net can be seen as the glue that holds everything 
together. " 

0*Net is a new occupational database system sponsored by the U.S. Department of 
Labor's Employment and Training Administration and is being piloted in Texas, South Caro- 
lina, California, New York and Minnesota. It includes information such as "Worker Charac- 
teristics" (abilities, interests and work styles) and "Worker Requirements" (e.g., basic skills, 
knowledge and education) . 



Christine Burns, a veteran teacher of outstanding character, reputation and credentials, 
labeled the St. Louis Career Academy a "diabolical gauntlet of pandemonium" in an article 
entitled "School-to-Work Academy: A 'Model' for Chaos" which appeared in the July 1998 
issue of The Education Reporter. Excerpts follow: 

The Career Academy... was touted by education reformers as the wave of the future — the 
"New Urban High School" — with the intent that it will eventually be open 24 hours a day. 
The Career Academy was designed to be one of five "break-the-mold" School-to-Work model 
high schools in the U.S. that are to be replicated throughout the country. 

In May of this year, the Career Academy's facade of "success" and "achievement" 
began to crumble when one of its teachers came forward to paint a sordid picture of chaos, 
confusion and ineptitude at the school, calling it "a diabolical gauntlet of pandemonium" 



412 



for its students. 

Mrs. Burns, after eight months' teaching at the academy, desired only to "get out of it" 
and be "rid of the problem." But then the school district told her to read, critique and sign 
off on a document entitled "Building the Foundation for Life-Long, Self-Directed Learning" 
which according to Burns was "full of lies, suppositions and half truths." Realizing that she 
could not sign the document, she says that neither could she "walk away without someone, 
somewhere, knowing what I believe to be the truth about what is happening, or rather, not 
happening at the St. Louis Career Academy." 

Mrs. Burns drafted a rebuttal to "Building a Foundation" which she sent to the school's 
principal, the CED Superintendent, the court-appointed vocational education monitor, and 
the school district's seven board members. The rebuttal charges the school with "lying about 
students gaining in academic achievement." It contends that "the school relies too heavily 
on computers, that computer labs are typically chaotic and poorly controlled due to lack of 
manpower," and that "destruction and theft of equipment are commonplace." "Students cheat 
on computerized tests to advance to their next 'tier' (grade)," she wrote, adding that "the 
school lacks practical in-classroom teaching, order and discipline." She charged that "children 
at the academy have been part of a giant School-to-Work experiment for the past two years, 
subjected to unproven and unorthodox practices and procedures, like rats in a maze." 

Though the Career Academy has attempted to refute Mrs. Burns's charges, "Building 
the Foundation"'s 37 paragraphs provide some clues as to their validity. Paragraph 9 refers 
to the school's staff and students as remaining "intensely involved in an on-going process 
of self-creation." Paragraph 26 whines that: "In spite of an explicit court mandate to 'break 
the mold,' the academy continues to come under attack from proponents of the old system." 
Yet paragraph 30 admits that "students have learned they can fool the computer by 'smart 
guessing' or by memorizing answers for retests. Some students wonder how much of their 
learning they will retain. Others have 'maxed out' on the English and math programs, and 
do not feel challenged by their supplemental work." 



Bill Carlson, an education researcher from Texas, covered the School-to-Career Acad- 
emy Conference held July 23-24, 1998 at the Airport Hyatt Hotel in Burlingame, California. 
Carlson's article should be in the hands of parents and small businessmen who have been 
subjected to the skilled manipulation of the change agent promoters of STW. Excerpts from 
Mr. Carlson's article, "Impressions and Concerns: A Preliminary Report" follow: 

The School-to-Career (STC) "academy" featured two keynote speakers, J.D. Hoye and Wil- 
lard Daggett. Hoye bills herself as J.D. Hoye, President, Keep the Change, Inc. Her web site 
(http://inet.ed. gov./offices/OVAE/hoye.html) identifies her as the Director of the National 
School-to-Work (STW) Office in Washington, D.C. (Note: STC and STW as used in this report 
convey the same meaning.) Hoye's former involvement was with the Oregon Department of 
Education and Office of Community College Services, Oregon, arguably and tragically the 
most OBE-impacted state in the nation.... Both speakers are extremely smooth and clever 
STW marketers. Both have a passion for ALL children to learn and seem convinced that STW 
will "level the playing field." (It must, however, be mandatory that ALL children experience 
STW. Why?) 

Hoye gives the message that our current education system does great for 25-30% of 
the students. She wants a level playing field for ALL students. She points to a book called 
The New Basics as a guide. She plays down memorization, abstract and theoretical teach- 
ing because they don't stick as well as cooperative project completions. Now is the time 



The Noxious Nineties : c. 1 998 



413 



to promote STC throughout our communities because it "sunsets in 2001." Be creative in 
finding ways to "convince" skeptics, especially parents. Involve them in the process and 
they will believe the ideas generated were their own. Administrators should make sure, as 
far as possible, that hiring, promotion and retention policies coincide with promotion of 
school-to-work goals. 

Students are the best communicators of the need for change and STW. Periodically, 
a student was brought out to give a "first-hand example" of our need to change, change, 
change to STW. She describes what we are doing (promoting school-to-career) as "the most 
important thing happening on our planet!" 

Willard Daggett was clearly the featured event, (web site — http://www.daggett.com) 
He was introduced as one who is "taking on the task of promoting school-to-career in Cali- 
fornia." If Dr. Daggett is the King of STW, Hoye is certainly the Queen. Daggett touts himself 
as being the President of the International Center for Leadership in Education, Inc. 

He offered thanks to educators for "hanging in there" in spite of all of the criticism. 
His advice to the audience was, "Don't put the spin on STC as STC, but put the spin on 'The 
Basics' in relation to school-to-career." (Fool 'em?) In order to effect change (the key word, 
again!), you must have a passion to change. Basic conditions to create change: 1. Have 
passion, 2. Have data, 3. Have leadership, and 4. Have staff development. Using these four 
ingredients, you will have successful models to help market STC. Some of the 255 subject 
areas in our schools should be taken out. "In America, when something goes into the cur- 
riculum, it never comes out. " Examples given (I believe) to take out: some of the requirements 
in math, science, social studies, etc. He wants schools to make room for information that 
now "doubles every nine months!" 

Daggett says reading for entertainment should be mostly replaced with reading and writ- 
ing technical manuals and emphasis should be placed on procedure and process.... Daggett 
said that the time has come to create controversy... He has discussed with neurosurgeons 
(He has one in the family.) whether death is inevitable, or, with the advance of biotech, 
an option. Heavy stuff!... In one of the "breakout" sessions that I attended, the focus was 
on how to sell STW to an unaware community. For the past four years, educators, school 
board members, teacher unions, and some employers have been the targets of repeated STW 
indoctrination. Now, parents, students and others must somehow be hauled in. One lady 
said she thought the name (STW) should be changed because a conservative group called 
"the Eagle Forum" is openly and effectively critical of STW... Following skeptical comments, 
the same lady concluded that, "Now, for sure, we'll have to change the name" and call STC 
something other than STC. (Fool 'em!)... 

I haven't heard speakers like this since the radical 1960's era when those demanding 
"change" wore long hair, headbands and sandals, not a suit and tie. Daggett and Hoye con- 
tinued to "evangelize" the vast cult-like following of those who now support radical changes 
to our schools. Citizens are paying BIG-TIME for this experiment in social control, but too 
few know much about STC. And probably would want no part of it if/when it's ever fully 
explained to them. 

I don't. 



Dr. Ken Williams, an elected trustee to the Orange County Department of EDUcation and 
board-certified family physician in Santa Ana, California, wrote the following August 27, 1998 
letter to the American School Board Journal regarding the School-to-Work Career Inventory 
and Assessments. Dr. Williams's incredible experience exposes the dangerous implications of 
the use of psychological assessments, etc., to predict an individual's career potential. The full 
text of Dr. Williams's letter follows: 



414 



Dear Sir: 

I am writing you as an elected Trustee to the Orange County Department of Education in 
California regarding the STW Career Inventory and Assessments. I was asked to share this 
information with you because of my concerns with the STW program. 

Last year, I took a computer-assisted career inventory program at the local high school 
here in Orange County to determine what career pathway I would have been encouraged to 
take if I were a freshman. 

To my surprise, the career inventory programs encouraged me to follow a career pathway 
that would lead to one of the following occupations: 1) Auto Muffler Installer, 2) Plasterer 
and Drywall Installer, 3) Glazier, 4) Cement Mason, 5) Auto Body and Fender Repairer, 6) 
Railroad Brake Operator, 7) Bus Driver, and 8) Modeling. 

Now, let me state that I am not degrading any of these occupations. The good people 
of this nation who are engaged in these fields are hard working Americans who deserve our 
respect. My concern is that when I took this career assessment and inventory, I answered 
all twenty or so questions with the idea that I wanted to be a family physician practicing in 
the city of Santa Ana, California, where I took the career program at the local high school 
(where a STW program is in place) . 

In conclusion, I wonder how many smart and talented kids from traditionally disad- 
vantaged minority groups in this inner city are being directed into low wage and low skill 
jobs, instead of into professional and graduate schools. Is this the ultimate, "in-your-face" 
federal program that will take away liberties and freedoms from our people? 

Sincerely, 

Dr. Ken Williams 



William J. Braun, Sr., issued a press release dated August 29, 1998 from CLEVEland, Ohio 
concerning a landmark education case, State ex rel. Stephen Rea v. Ohio Department of Edu- 
cation. The press release discussed the successfully argued Stephen Rea court case regarding 
the status of certain tests and assessments being declared public records: 

Stephen Rea, relying on the U.S. Freedom of Information Act and the State of Ohio Availability 
of Public Records Law, requested copies of sensitive testing materials used on his daughter 
at West Branch High School, Beloit, Ohio. 

His continued requests fell upon deaf ears, all the way up to the State Superintendent 
of Schools. Rea argued that all classroom materials generated with government-funded dol- 
lars constituted public records per se. 

He would be allowed to view the requested materials, but only if he agreed to sign a 
secrecy agreement that carried a fine and imprisonment clause if violated. On 28 August 
1996, Rea filed a complaint with the Ohio Supreme Court, which was accepted for trial. 

Rea sought judicial judgment against the Ohio Board of Education on four issues. The 
case was tried in mandamus. In a powerfully worded majority opinion, the Court ruled in 
favor of Rea and his daughter. {State of Ohio, ex rel: Stephen Rea, et al v. Ohio Department 
of Education. Case No. 96-1997, in Mandamus.) 

Tomorrow's battles will shift abruptly from school superintendents' offices and De- 
partment of Education conference rooms to State and Federal Court Chambers, where they 
are more likely winnable, including the recovery of reasonable fees and court costs. 



Workforce Investment Act Puts America on Road to Fascism — Hillary's Global Village 



The Noxious Nineties : c. 1 998 



415 



and the New World Order Are Officially Instituted by Congress" by Jim Day appeared in the 
August, 1998 St. Louis Metro Voice monthly Excerpts follow: 

"Few bills which we consider will have a greater impact on more Americans than the Work- 
force Investment Act (H.R. 1385) we pass today." — Sen. Edward Kennedy [Congressional 
Record, July 30, 1998, p. S 9490). 

[PUBLISHER'S NOTE: Truer words were never spoken in relation to gaining total control 
of the citizens of the United States and turning our nation into a fascist state. If you think 
this is an outlandish statement, read this article. What you are about to read is the absolute 
truth which is backed by more documentation than you could ever hope to read.] 

On July 30 Senators Edward Kennedy (D) MA, Jim Jeffords (R) VT, Mike DeWine (R) 
OH, Paul Wellstone (D) MN, Christopher Dodd (D) CT, and Jack Reed (D) RI, unanimously 
passed by a voice vote the Conference Report on H.R. 1385 — the Workforce Investment Act 
of 1998 — the latest version of "The CAREERS Act." A voice vote only requires a majority of 
those present to pass or reject a bill. The report was then sent back to the House of Repre- 
sentatives for review. 

According to the Congressional Record, only six senators spoke on the floor. Due to 
the fact that no roll call vote was taken, it is not known if any other senators were present 
in the chamber at the time. 

Late in the afternoon the next day, July 31, without any notice, when most congressmen 
were on planes headed home, five congressmen, again by a voice vote, unanimously ap- 
proved H.R. 1385, paving the way for President Clinton's signature on August 7. The five 
congressmen were William Clay, Sr. (D) MO, Howard P. "Buck" McKeon (R) CA, William 
"Bill" Goodling (R) PA, Dale Kildee (D) MI, and Matthew Martinez (D) CA. 

Again, due to the fact that no roll call vote was taken, no one knows how many other, 
if any, congressmen were present at the time of the vote. These 11 men and President Clin- 
ton have just created and signed into law legislation which converts America's free market 
economic system to a controlled or managed market system — the same type of economic 
system which was established by Nazi Germany. 

[Ed. Note: President Clinton, on August 7, 1998, signed this controversial school-to-work/job 
training bill, the final version of the infamous CAREERS Act which grassroots activists had 
worked hard to kill for over four years and had thought they had put to rest in the summer of 
1996 when Senator Trent Lott refused to bring it up for a vote. These same activists were taken 
by surprise when Rep. Howard P. (Buck) McKeon, proclaimed conservative from California, 
appeared out of nowhere like a stealth bomber, reintroduced and assisted to pass similar legis- 
lation in April 1997— this time titled The Employment Training and Literacy Enhancement Act 
of 1997. Activists had little time to mount an effort to down this nasty stealth missile, allowing 
it to go on to the Senate which, in turn, passed it in August of 1998.] 

The National Academy of Sciences and the U.S. Department of Education-funded Pre- 
venting Reading Difficulties in Young Children, Grant No. 0235501 (National Academy Press: 
Washington, D.C., 1998), was critiqued by Ann Herzer of Arizona, M.A., reading specialist. 
Herzer literally lobbed a well-justified grenade at those so-called "experts" involved in the 
research and writing of the book, whose credentials indicate their long-term involvement in 
programs for special education and in the promotion or development of Skinnerian operant 
conditioning programs to teach reading and other subjects. Mrs. Herzer's critique follows in 
its entirety: 



416 



The National Academy of Sciences is a private, non-profit organization which was 
granted a Charter by Congress in 1963. The Academy advises the government on scientific 
and technical matters, (p. iv) 

The following three groups are named on the title page for the above book: 

(1) Committee on the Prevention of Reading Difficulties in Young Children; 

(2) Commission on Behavioral and Social Sciences and Education and 

(3) National Research Council. 

Apparently the first committee mentioned was responsible for the report (the book) 
and members were "Chosen for their special competencies and with regard for appropriate 
balance." (p. ii) 

The Acknowledgments read like a Who's Who of Government Change Agents and Behav- 
ioral Scientists. Reid Lyon (National Institute of Health — NIH) with whom I spoke regarding 
The Reading Excellence Act, is listed, as are members connected with NIH's labs, several 
members from the U.S. Department of Education, the Carnegie Corp., etc, etc., etc. 

During the information-gathering phase, a number of people are mentioned who 
made presentations to the committee on programs that focused on prevention of reading 
difficulties. They did not say who selected the presenters. I am familiar with two names: 
Ethna Reid [Keyboarding, Reading and Spelling) and John Nunnary {Success for All). I will 
never forget Reid's government-sponsored (NDN) program, the Exemplary Center for Reading 
Instruction (ECRI). The 1978 week-long ECRI workshop I attended started my investigation 
into the Skinnerian Mastery Learning/Direct Instruction programs. Success for All is one of 
the New American Schools Development Corporation programs, selected and approved by 
Presidents Bush and Clinton for restructuring education, which also uses Skinnerian Direct 
Instruction. 

Several professional associations were mentioned along with groups, including Save 
the Children International. 

Some members of the Committee are worth mentioning: Marilyn Jager Adams who 
wrote Beginning to Read: Thinking and Learning about Print (a real Pavlovian bell-ringer 
disguised under phonics) and Edward J. Kame'enui, special education, University of Or- 
egon and associate director of the federally funded National Center to Improve the Tools of 
Educators (NCITE) — the same center with which Douglas Carnine (who was involved with 
the failed Follow Through federal program and the government-sponsored Skinnerian S-R-S 
program DISTAR — (Direct Instruction System for Teaching and Remediation) is connected. 
DISTAR is now being touted by the government change agents and the radical right Heritage 
Foundation as a Direct Instruction "scientific" program for teaching phonics (of all things) 
to pre-K-3rd grade students. 

Members and their qualifications are mentioned as follows: Catherine Snow, M.A. and 
Ph.D in psychology from McGill University (Canada) ; Marilyn Jager Adams, visiting professor 
at Harvard University School of Education and a previous research scientist at Bolt, Beranek 
and Newman, Inc.; Barbara T. Bowman, co-founder and president, the Erickson Institute in 
Chicago, Illinois, recent appointee to the Great Books Foundation and the National Board for 
Professional Teaching Standards; M. Susan Burns, formerly on the faculty at the University 
of Pittsburgh; Barbara Foorman, University of Texas, Houston Health Science Center and 
also principal investigator of the Early Intervention Program of the National Institute of Child 
Health and Human Development, consulting editor for the Journal of Learning Disabilities 
and a member of the New Standards Project; Claude N. Goldenberg, a research psychologist 
in the Department of Psychiatry, Biobehavioral Sciences at the University of California, Los 
Angeles; William Labor of the University of Pennsylvania, currently engaged in several re- 
search programs funded by the National Science Foundation and the National Endowment for 
the Humanities; Richard K. Olson, associate director of the Center for the Study of Learning 
Disabilities funded by the National Institutes of Health; Charles A. Perfetti, a senior scientist 



The Noxious Nineties : c. 1 998 



417 



at the Learning Research and Development Center at the University of Pittsburgh; etc., etc., 
etc., who are supposed to give this hand-picked committee an "appropriate balance." 

The "treatment" suggested in both of the above-mentioned books [Jager's Beginning 
to Read and Preventing Reading Difficulties] for teaching young children to read appears to 
have been designed for the mentally retarded to severely handicapped children — not aver- 
age children. 

This group is proposing language training from birth. Apparently parents are to be 
trained as though none have any normal/natural instincts in child rearing or language. 
HIPPY, PAT (Parents as Teachers) and other home-bound programs are now proposed for 
the "at risk" — the poor and minority children, but how long will it be before the radical 
behavioral scientists demand home visits and training for all children and their families as 
was mandated in the former Soviet Union? 

In my opinion, the individuals involved in producing the two above-mentioned books 
and especially the U.S. government, who supplies the grant money, are not interested in 
children learning to read but only in training and programming them for the planned global 
workforce. Otherwise programs like DISTAR, ECRI and Madeline Hunter's Essential Elements 
of Instruction would have been exposed and stopped long ago. 

When I evaluated the Texas Alternative Document (TAD), I was not aware of the 
significance of TAD until Reid Lyon and others responded on the internet education loop. 
These individuals apparently are supporting the Skinnerian DISTAR, or similar programs, 
as a method to teach reading through the distribution of TAD. TAD is now being pushed 
in Nebraska as curricula for language arts. I predicted it would be the national model for 
restructuring and teacher training. DISTAR is now training teachers in California, according 
to Education Week. The big emphasis nationally is on "teacher training," especially in Read- 
ing — "re-training," not "education" — is the emphasis [emphasis in original]. 



The September 1998 issue of the American Family Association Journal carried an article 
entitled "Despite Heavy Funding Public Schools Showing Marks of Internal Crumbling" which 
stated that 59 % of new teachers in Massachusetts failed to meet the minimum standard of a 
basic reading and writing test. Excerpts follow: 

This past April, the Massachusetts Board of Education for the first time required new teach- 
ers to take a basic reading and writing test. Officials were horrified, however, to discover 
that 59% of the new teachers failed to meet the minimum standard. John Silber, Board of 
Education Chairman, complained that the test only required would-be teachers to score at 
an eighth-grade level. The test results were "pretty frightening," Silber said. "These were 
all college graduates." 

Massachusetts's strategy following the embarrassment? Education officials lowered the 
minimum score required to pass the test from a 77% to 66%. The new strategy succeeded; 
only 44% of would-be teachers failed the test. 



The September 16, 1998 issue of The Washington Times carried an article entitled "New 
Tack Taken on Religion in Schools: Group Seeks End to Secular Bias" which chronicles the 
publication of a new guidebook, Taking Religion Seriously across the Curriculum co-authored 
by Charles Haynes of the First Amendment Center at Vanderbilt University and Warren Nord 
of the University of North Carolina (Association for Supervision and Curriculum Development 



418 



and the First Amendment Center: Washington, D.C., 1998). The opening paragraph of the 
article is very telling: 

A group of educators and policy advocates yesterday united around a "new consensus" 
on teaching about religion in public schools, calling it a long-shot agenda but the most likely 
to satisfy all Americans.... 

..."If this book is the next step, it's a big step," said Diane Berreth of the Association 
for Supervision and Curriculum Development (ASCD), which advises public schools on 
teaching. 

The "new approach" seeks a middle ground between totally secular schools and those 
where the local majority religion is promoted by school officials. "Religion is still not taken 
seriously in the public school curriculum," said Charles Haynes, a co-author of the new 
guidebook. 

Warren Nord, a University of North Carolina humanities professor and co-author, said, 
"A full education must acknowledge different ways of knowing reality, from the scientific 
and economic to the religious and moral."... Miss Berreth of ASCD said a few pilot schools 
must test the new agenda to prove its effectiveness. "This may be a role of [charter schools] ," 
she said. 

[Ed. Note: The above two authors made their remarks at a symposium with five other pan- 
elists. The event was sponsored by the Freedom Forum and the ASCD, which published the 
220-page book with the First Amendment Center at Vanderbilt University. 

If anyone out there believes a book published by the Association for Supervision and 
Curriculum Development (a spin-off of the National Education Association which consistently 
issues tirades about Christians who believe in sound moral values) could come up with anything 
the purpose of which is not to make further inroads into the destruction of whatever absolut- 
ist values our children still have, then I suggest they have been living under a rock ever since 
the 1940's when the drive to eliminate absolutist moral values from our schools started. The 
ASCD was heavily involved in the mind-altering curriculum Tactics for Thinking. 

Researchers and activists involved in following the circuitous path taken by those who 
want to remove religious-based absolute values from this planet, starting in the schools, have 
thrown roadblocks in their way every time they surfaced with a new sugar-coated version of 
their sugar-coated values-destroying curriculum. How many more times must citizen researchers 
leap forward to expose this fraudulent crowd which has used semantic deception (given its 
programs the following misleading labels) and operated as the following entities: 

• "Character Education" in the early 1970's (which advised those involved not to use 
the "red flag" word "values"); 

• The Public Education Religion Study Center at Wright State University's "comparative 
religion" curriculum (which was funded by Religious Heritage of America, Inc. and 
the Lilly Endowment of the Eli Lilly Corporation); 

• the appointed Maryland Values Commission, another project shared with Religious 
Heritage of America; 

• the American Institute for Character Education (AICE), funded by the Lilly Endow- 
ment; 

• the Williamsburg Charter proposal which led to the First Amendment Center's cur- 
riculum "Teaching about Religion," and now, Taking Religion Seriously across the 
Curriculum, which a high school teacher from San Diego, California said should be 



The Noxious Nineties : c. 1998 
mandatory reading" for all public school instructors.] 



419 



An article entitled "U.S. Announced Exchange Programs" appeared in the SEPtember 18, 
1998 edition of the Odessa (Russia) Post which heralded the results of the U.S. -Soviet Education 
Agreements signed in 1985 and numerous planning activities since 1985. Excerpts follow: 

The program is administered by the U.S. Information Service. The American Council for 
Collaboration in Education and Language Study (ACCELS), the International Renaissance 
Foundation, and the International Research and Exchanges Board for Scholars (IREX) will be 
responsible for processing applications, selecting candidates and administering the exchange 
and scholarship programs.... 

...ACCELS will administer the U.S. -Ukraine Awards for Excellence in Teaching, which 
will bring 15 Ukrainian teachers of English and American Studies to the United States... in 
the summer of 1999. Finalists selected from participating regions can also win computer 
equipment, copiers or internet access for their schools.... 

... [N]ot only can Ukrainians find out more about the American way of life, our values, be- 
liefs, hope and ambitions, Americans will also learn more about Ukraine and Ukrainians. 



"A Question of Effectiveness" by Andrew Trotter was published in the October 1, 1998 
issue of Education Week's special report entitled Technology Counts '98 — Putting School Tech- 
nology to the Test. This important special issue should be read in its entirety for an under- 
standing of the plusses and minuses of using technology in the classroom. One interesting 
chart on page 9 indicated that when the public and teachers were asked "How much do you 
think computers have helped improve student learning?" members of the public, in contrast 
to educators, were nearly twice as likely to say "A great amount" (MCI Nationwide Poll on 
Internet in Education, 1998). 

The October 7, 1998 issue of Education Week carried a full-page advertisement for the 

Sixteenth Annual Effective Schools Conference to be held in March of 1999. This writer has 
copied the advertisement in order to illustrate that any concern for academic instruction for 
American school children is a thing of the past. (The semantic deception will be obvious.) 

SIXTEENTH ANNUAL 
EFFECTIVE SCHOOLS CONFERENCE 

LEARNING FOR ALL— WHATEVER IT TAKES 
March 4-7, 1999 

Willard Daggett, Larry Lezotte, Ray Gollarz, Michael Fullan, John Jay Bonstingl, Ernest 
Stachowski, Douglas Reeves, Alan November, Spence Rogers, Sandi Redenbach, Robert 

Slavin 

NSCI 

NATIONAL SCHOOL CONFERENCE INSTITUTE 66 
Phoenix, Arizona 
Pre-Conferences: 



420 



Leading Learning for All 
Making the Right Changes at the District Level to Assure Successful, Sustainable School 

Reform — with Larry Lezotte 

Educational Accountability in Complex School Systems 
The Challenges of High Standards, Accurate Assessments, and Meaningful Accountability 

with Douglas Reeves 



CONTENTS 

• Correlates of Effective Schools 

• Developing the Leadership Team 

• Meaningful Educational Accountability 

• Creating Positive School Climate 

• Managing Change to Implement Standards 

• Instructional Strategies to Enhance Achievement 

• Infusing Technology 

• Ensuring the Success of All Children 

• Effective School Improvement Planning 

• Quality Teaching in the Classroom 

• Communication Literacy 

• Classroom Success — Applying Brain Research 

• Motivating Students 

• Assessments as a Performance Tool 

• Quality and Equity in the School 

• Site-Based Decision Making 

• Learning Organizations 



An article entitled "Character Education Catching on at Schools — Respect, REsponsi- 
bility Emphasized" by Anu Manchikanti was published in the October 9, 1998 issue of The 
Washington Times. Excerpts follow: 

Character education is a national movement to bring universal virtues into the class- 
room. 

At Wasatch, a character education program has been in place for two years. 

Thomas Lickona, director of the National Center for the 4th and 5th Rs (respect and re- 
sponsibility) , says a moral decline in youth reflects a character crisis in the United States. 

In his 1997 State of the Union Address, President Clinton called for schools to teach 
character and mold children into good citizens. Most recently, Vice President Al Gore an- 
nounced $2.7 million in grants for 10 states under the Partnerships in Character Education 
Pilot Projects Program. The grants should allow states to work with school districts in devel- 
oping curriculum and providing teacher training for character education programs. Iowa, 
New Mexico and Utah have received such grants. 

"It isn't a separate curriculum or an add-on or an extra thing," said Kristin Fink, char- 



The Noxious Nineties : c. 1 998 



421 



acter education specialist at the Utah State Office of Education. "It's really something that 
should be woven into everything we do." 

According to Kevin Ryan, director of the Center for the Advancement of Ethics and 
Character at Boston University, the potential for character education exists in all curriculum 
to engage children in moral thought. 

For instance, physical education teachers might emphasize the importance of play- 
ing fair in athletics, or science teachers may stimulate discussion about the ethical issues 
involved in genetic cloning. 

"They're going to either learn good character or bad character," Mr. Ryan said. "It's all 
an inevitable part of life that schools will have an impact." 

But Murray Philip, a school board member in Nashville, Tennessee questions the idea 
that character can be taught. "Who are we to decide what is good character, and what is 
bad character?" he said. Mr. Philip doubts that character can be taught because he feels it 
is learned through adversity and experience. Many argue that the job of teaching character 
lies in the hands of families rather than schools. "There's an awful lot of kids who are not 
being taught anything at home," Mr. Ryan said. "There's no such thing as a morally neutral 
school." 

[Ed. Note: In response to the statements by Thomas Lickona, it is hard for this writer to ac- 
cept Mr. Lickona as a leader in the area of moral education considering his promotion of the 
late Lawrence Kohlberg's humanistic "Stages of Moral Development" and morally relativistic 
character education program "Ethical Issues in Decision Making." 

As for Clinton's 1997 State of the Union speech, with the recently concluded impeach- 
ment trial and the events which precipitated it, there are no words to adequately express the 
irony of Clinton's calling for the schools to teach "character." Also, can one really imagine a 
government-developed character education program or one that would be allowed to be used 
in government-supported schools which would be effective, when government-supported 
"scientific research" is based in an evolutionary perspective of our children being trainable 
animals? Children observing teachers and others in authority exhibiting good character is the 
best "character education. " Also, allowing school boards to hire teachers whose lives incor- 
porate high moral character would do much to contribute to the solution of this problem. 

After having read and said all of the above, the writer would like to issue degrees in rocket 
science for all the parents who understand the problem!] 

Approximately 3,500 people attended a rally on Sunday, October 11, 1998 at the Min- 
nesota State Capitol in Minneapolis in opposition to Minnesota's graduation standards. [Some 
accounts put the number present at as high as 5,000.] Minnesota's major media— The Minne- 
apolis Star Tribune, The St. Paul Pioneer Press, The Minnesota Daily and four local television 
stations— gave coverage to the rally. The Minneapolis Star Tribune article "Multiple Choice 
Review of Education — Profiles of Learning Takes Central Stage at Gubernatorial Debate on 
Education— Large Protest at Capitol Targets the State's Newest Graduation Standards" stated 
in part: 

Minnesota's Graduation Rule came under vigorous attack on Sunday as many hundreds of 
residents rallied at the state capitol demanding an end to the academic standards known as 
the "Profiles of Learning." Opponents lambasted the rule as an attempt to control schools 
and a move towards a socialist government. Many fear the rule will force schools to steer 



422 



away from the basics and "dumb down" public schools. Organizers estimated the crowd at 
3,500. Ronald Anderson, age 61, a grandfather from St. Paul said, "Public schools are teach- 
ing more touchy-feely education instead of history, math and sciences and all that stuff." 
He waved a sign that read "Do not experiment with our children." 

[Ed. Note: Why was the above-mentioned important news item ignored by out-of-state media? 
Is it because news coverage of successful opposition to restructuring in one state might serve 
to encourage activists in other states? 

Corporate and education journals indicate that those in charge of restructuring our schools 
are not happy at all with the sluggish pace of restructuring due to the effectiveness of parent 
and teacher opposition. If the reader puts all of this information together the obvious cannot 
be avoided: opponents across the country are doing far better than they realize — they have 
slowed down the restructuring of our nation from free enterprise to socialism far more than 
they know. How many more "Minnesota" stories are there out there about which we know 
nothing due to media censorship?] 

The following news item was carried by USA Today in its October 12, 1998 issue: 

Salt Lake City, Utah — The Utah School Boards Association has asked a judge to declare the 
'98 Charter Schools Act unconstitutional. Charter schools are funded with public education 
money, but are exempt from many of the restrictions on public schools. The lawsuit alleges 
local school boards have control over schools in their boundaries, and that by reaching within 
those boundaries, the state is creating a new school district without a public vote. 

[Ed. Note: Hats off to the Utah School Boards Association. When education activists/researchers 
in their many speeches across the nation referred to charter schools as "taxation without rep- 
resentation" the silence in conservative audiences was "deafening."] 

In 1998 the Northwest Regional Educational Laboratory, one of the ten LABORAtories 
across the nation supported by contracts with the U.S. Department of Education's Office of 
Educational Research and Improvement (OERI), provided the following information on its 
"Education & Community Services: Emerging Issues" website (http//www.nwrel.org/pscc/ 
emerging. html). For the reader who may, understandably, want to have an up-to-date report 
on the status of the restructuring of the nation's schools, through school-to-work and the 
merging of education and workforce training with social services (systemic change), there is 
probably no better source than the Northwest Regional Educational Laboratory. "Emerging 
Issues" as of October 16, 1998 follow: 

Twelve major emerging issues have been identified from an analysis of recent policy reports 
and validated by a focus group of state leaders as having a significant impact on education 
in the Northwest: 

1. Acknowledging fundamental shifts in teaching and learning. A view of students as 
active learners... emphasis on cooperative and applied learning. 

2. Dealing with the rising threat of violence. High incidence of violence, substance 
abuse, and gang-related crime are causing schools to review discipline policies, im- 



The Noxious Nineties : c. 1 998 



423 



plement special curricula, and work increasingly with law enforcement and other 
community agencies. 

3. Assuring a sound infrastructure for education. A growing student population is on a 
collision course with an aging and inadequate physical and fiscal infrastructure. 

4. Strengthening the connection between education and work. Relationships between 
education and work are being re-examined and restructured. ... [Marketplace requires 
workers with higher levels of complex skills. 

5. Garnering support for education reform. Education reform, like all change, is gen- 
erating anxiety and opposition. Educators are increasingly attempting to involve 
parents and community members in open, honest discussion. 

6. Changing expectations for education decisionmaking and governance. . . . [increased 
community collaboration, school site councils, and service integration efforts are 
altering and redefining many traditional governance and decisionmaking processes. 
[No approval of voters, ed.] 

7. Using standards as a means to systemic change. Consensus that piecemeal changes 
in schooling are not adequate to meet the challenges of the future is giving rise 
to a growing emphasis on standards and assessment at all levels of the education 
system. 

8. Strengthening support and respect for teachers .... [T] eachers are the critical element 
in providing quality education, and that their task is becoming more complex and dif- 
ficult as they face increased expectations in teaching a more diverse student body. 

9. Supporting young children and their families. Educators are defining their role in 
working with families to ensure the healthy early development of children.... [Does 
their role include interference in family life? ed.] 

10. Increasing community collaboration and service integration. ... [C]hange occurs only 
with the full commitment of the community, schools are getting involved in collabo- 
rative efforts with many other types of organizations. [This collaboration, integration, 
etc., represents a change in governance without approval of the voters, ed.] 

11. Harnessing new technologies.... [C]omputers in schools are putting technology in 
the forefront of efforts to fundamentally change the role of students from passive to 
active learners and the role of teachers from information givers to facilitators and 
coaches. [Clearly a shift from academic education to performance-based workforce 
training, ed.] 

12. Shifting the focus from risk toward resiliency. Realizing that the vast majority of 
children develop into successful adults, educators and other service providers are 
shifting their attention from deficit program models that address specific risk factors 
toward program approaches that focus more on enhancing positive factors. [If the 
reader understands #12, please contact the writer, ed.] 



"Charter Schools Bill Now Law" reported The Arizona Republic in an AP report appear- 
ing in its October 23, 1998 issue. Excerpts from this news item, which identifies the Democratic 
Party with a Republican initiative, follow: 

President Clinton on Thursday signed the Charter School Expansion Act of 1 998 to speed 
the development of high-quality charter schools, a key element of his education agenda. 
The law authorizes up to $100 million a year over the next five years for the planning and 
expansion of charter schools. Clinton cited the charter schools legislation as an example of 
bipartisan cooperation.... 



424 



Clinton has set a goal of 3,000 charter schools nationwide by the time he leaves office. 
There now are about 1,000. 

Charter schools tend to be smaller and custom-designed. Under charter schools laws, 
depending on the state, parents, community activists, teachers or even private companies 
may set up schools under a special agreement or charter. The schools might emphasize a 
particular curriculum such as arts or technology, or more traditional teaching methods using 
repetition and drills, or experimental methods that let children learn at their own pace. 

[Ed. Note: Charter schools are obliged to adhere to federal guidelines; i.e., Goals 2000, etc. 
Individuals familiar with charter school legislation consider them unaccountable to the tax- 
payers due to their being run by unelected councils; taxation without representation.] 

A National Institute on Career Majors was announced November 4, 1998 by the National 
School-to-Work Office. The accuracy of predictions made by anti-school-to-work citizens — that 
their children's academic education would be watered down, if not eliminated, once the Marc 
Tucker Plan moved out of its planning stage and into the following action mode — is demon- 
strated by the following: 

Just one month after it announced that all 50 states were "on board" to receive federal 
School-to-Work Implementation Grants, the National School-to-Work (STW) Office has now 
announced (Nov. 4) a National Institute on Career Majors to be held in Chicago, Illinois on 
February 4-6, 1999. 

"The purpose of the Institute is to bring together State Teams to strategically design a 
plan to implement career majors at the State and local levels." To participate, states are asked 
to assemble "an interagency team of 6-10 members representing State level policy-makers 
around education and labor; business and industry; educators at the secondary and post- 
secondary level; and include representatives from a local-level partnership that is currently 
building a STW system around career majors." 

Activities will "focus on strengthening the capacity of education and business leaders 
to develop a standards-based curriculum leading to high skills, high wage, high demand 
occupations. Through individual team facilitation, each State Team will develop or revise a 
plan to organize school learning around career majors." 

Attendance at this institute is limited to 15 teams, but more are sure to follow. Funds 
are being provided for team travel. Funds are also going to be made available to states at a 
later date to host similar career majors institutes for their local STW partnerships. 

The event will take place at the Fairmont Hotel... Chicago, Illinois. 



"New Model for Teacher Education — with Focus on Context and Workplace: Project Could 
Better Prepare Students" by Michael Childs was published in the November 9, 1998 issue of 
Columns (p. 2), a University of Georgia faculty newsletter. Excerpts from the article follow: 

University of Georgia's College of Education is beginning a three-year project that 
will attempt to bring together classroom and real-life work experiences in a way that could 
change how teachers are taught and what they're taught to teach. The project could better 
prepare students for the challenges they are likely to face in the changing workplace of the 
21st century. 

The college will develop and pilot-test a new teacher-education model that will place 



The Noxious Nineties : c. 1 998 



425 



prospective teachers not only in the context in which they will work — the classroom — but 
also in the context of where their students will work — community and workplace settings 
in business, industry and the professions. 

"Teachers need to understand much more of the pedagogy. Teachers need to understand 
how it applies in life settings," says Dean Russell Yeany. "We don't just want to perpetuate 
academic learning — at some point it has to be applied to the workplace...." 

...A long-term goal is to have a much more effective school-to-work transition for 
students. 

"Schooling should transition right into work and I think schooling has become so 
academic that it isn't transitioning well into work," says Yeany. 

Funded for 18 months by an initial $864,000 grant from the U.S. Department of Edu- 
cation, the Teacher Development Pre-Service Model of Excellence Initiative is one of the 
college's largest and most ambitious projects ever. 

"This is a big investment by the federal government to develop a model they hope will 
become available to other colleges," says Yeany. 

A student orientation to area business and industry will include both on-site and virtual 
observation of manufacturing and business processes. 



The November 16, 1998 edition of The Atlanta Constitution carried an article entitled 
"Education in a Relaxed Atmosphere: Brain-Based Method — Teaching Trend Emphasizing 
Creativity, Flexibility and Informality Growing in Area Schools" by Delbert Ellerton. The ac- 
tivities described in the article are typical of the exercises promoted by Sheila Ostrander, Lynn 
Schroeder with Nancy Ostrander in their book Superlearning 2000 (Dell Publishing: New York 
1994), an updated version of their earlier book Superlearning. The following are excerpts from 
the article: 

At the front of Amanda Neff's softly lit, first-grade classroom in Henry County, a plant 
sits next to the glass case that is home to Riley, a small black rat snake. 

As Riley slithers around inside the glass box at Wesley Lakes Elementary School, a 
group of students eagerly crowds around. 

Riley is just one of the several ways Neff is bringing life to her classroom by teaching 
students in ways that emerging research says they naturally learn. Instead of just reading 
books about snakes, the students have the real thing right before them. 

Teachers such as Neff are part of a national group embracing an approach formally 
called brain-based learning. The trend, which surfaced in California in the 1980s, is based 
on teachers being flexible and creative. It also is based on the belief that eliminating the 
sterile, institutional environment encourages children to relax and learn. 

In addition to using Riley, the snake, as an educational tool, Neff softens the mood in 
her Wesley Lakes classroom by dimming the bright overhead fluorescent lights and turning 
on lamps in corners of the room. She plays soft music on a computer CD player throughout 
the day... 

"It's making children feel more comfortable and taking away the threat. They're more 
open. They don't shut down on me when I ask them something," Harris said. 

Harris's students sit in groups of three in an arrangement educators call "tribes." The 
setup is said to encourage teamwork. Teachers in Henry and Clayton counties have received 
brain-based learning training through staff development workshops. One such workshop 
in Clayton County is called "Symphony on Styles" and focuses on effective teaching meth- 
ods for students' diverse learning styles, said Bobbi Ford of Clayton's staff development 



426 



department.... 

In October, Ford attended a brain-based learning conference in California which drew 
educators from Sweden, Canada, Australia, South Africa and Mexico.... 

...Teachers in Coweta, Fulton and Carroll counties also use brain-based techniques. 
One Coweta school plays classical music over the intercom. 

A newly formed statewide brain-based learning advisory council met in Athens last 
month, attracting 23 interested educators. The council is building a network to provide infor- 
mation about brain-based learning, said Judith Reiff, an early childhood education professor 
at the University of Georgia who is on the council. 

[Ed. Note: Even though the reader can read the roots of Superlearning in this book's earlier, 
1979 entry, the writer would like to repeat a section of Superlearning 2000 that gives an ex- 
planation of what it is: 

What is Superlearning? 

These are the Superlearning core techniques that vastly accelerate learning and brighten 
performance. Techniques that can help you take charge of change. 

• Get into a stress-free, "best" mindbody state for what you are doing. 

• Absorb information in a paced, rhythmic way. 

• Use music to expand memory, energize the mind, and link to the subconscious. 

• Engage your whole brain, your senses, emotions, and imagination for peak perfor- 
mance. 

• Become aware of blocks to learning and change, then flood them away. 

Not even a multiple personality would want to use all the exercises and ploys offered 
in this book. The idea is to give you a choice. You don't need to pick up very many to flesh 
out the basic Superlearning protocols. First and foremost, Superlearning involves a new sense 
of your self and your possibilities, a new perspective — a twenty-first century point of view. 

In the first chapter of Superlearning 2000 on pages 8-9 we find the following quotes: 

Five pages, that's all we devoted to Lozanov learning when we wrote about our Com- 
munist odyssey. (See Psychic Discoveries Behind the Iron Curtain, 1970; updated and to be 
republished, 1995.) Inquiries roared in from everywhere, even the Pentagon's Institute of 
Defense Analysis. Western mind-groupies rushed to Sofia [Bulgaria], while a handful of 
pioneering educators began the hard work of adapting the Communist learning system to 
North America. 

A genuinely powerful new way to learn, to expand memory, to excel began to emerge 
in Des Moines, Toronto, Atlanta. By the late 1970s an innovative psychologist, Dr. Donald 
Schuster of University of Iowa at Ames, founded the Society for Accelerative Learning and 
Teaching (SALT) . Now there are professional societies in a dozen countries, including the 
very international Society for Effective Affective Learning (SEAL) in England. At the time 
only a few professionals had moved outside of establishment lines. What about all the other 
people who always wanted to color outside the lines? We took what was proven and devised 
something that wasn't: a do-it-yourself system. Superlearning, open to everyone. The generic 
name is accelerative or accelerated learning. 

Basic Superlearning draws from Lozanov and his sources, ancient ones like Raja Yoga, 



The Noxious Nineties : c. 1 998 



427 



contemporary ones like Soviet science.... And we got lucky. We came across another "ology": 
Sophrology, "the science of harmonious consciousness," a cornucopia of routes to excellence 
still almost unknown in America, developed by Alfonso Caycedo, a Spanish M.D. every bit 
as innovative as Lozanov. 

[Ed. Note: These last sentences remind this writer of the early work of Roberto Assagioli, au- 
thor of Psychosynthesis. The reader should also be made aware that Henry Levin of Stanford's 
Institute for Accelerated Learning does indeed advocate the Superlearning (SALT, SEAL) method 
for its member schools.] 

"Coming Soon to a School Near You: Forced Labor" by Paul Mulshine, columnist, was 

published in the November 29, 1998 issue of the Newark, New Jersey Star-Ledger. Excerpts 
from Mulshine's article follow: 

Imagine a state that uses its school system not to produce independent-minded, broadly 
educated citizens, but compliant workers trained to behave. A state where, in their early 
teens, children are forced to make a lifelong decision from 14 government-sanctioned career 
possibilities with such depressing titles as "waste management," "administrative services" 
and "manufacturing, installation and repair." A state where students in the government 
schools are forced to spend one day a week toiling in menial labor. 

The old Soviet Union? China? 

Nope. New Jersey. 

I wish I were making this up. But I'm not. This is a fair summation — minus the jar- 
gon — of the School-to-Work program that the state is planning to impose on us next year. You 
can veiw it on the Internet at http://www.state.nj.us/njded/proposed/standards/stass2.htm. 
See for yourself. 



Nina Shikraii Rees of the Heritage Foundation, Washington, D.C., wrote an ARticle entitled 
"Time to Overhaul the Elementary and Secondary Education Act of 1965" which recommended 
a major shift in the traditional philosophy of education from an emphasis on inputs to an 
emphasis on outputs. An abstract of her article which was published in a Heritage Foundation 
Press Release dated December 2, 1998, follows: 

During the reauthorization process of the 1965 Elementary and Secondary Education Act, the 
106th Congress has a historic opportunity to change the course of K-12 education. Congress 
needs to shift the goals of the ESEA from one confined to inputs to one focused on achieve- 
ment. Congress can make this happen by sending more federal dollars to the classroom in- 
stead of to education bureaucracies; empower parents, teachers and principals; boosting the 
quality of teachers; and allowing flexibility and demanding accountability. Sending money to 
the same old federal education programs will waste precious education tax dollars and allow 
American students to fall even further behind their counterparts in the developed world. 

[Ed. Note: If what Ms. Rees recommends is authorized by the 106th Congress, the course 
of K-12 education will be more than changed. It will be eliminated, to be replaced by K-12 
school-to-work training, required by NAFTA and GATT, both of which are supported by Ms. 
Rees's employer, the Heritage Foundation. As sensible as the above recommendations may 
appear at first sight, as one moves carefully through the text one can identify key words which 



428 



should raise red flags for those opposed to the philosophy behind Goals 2000 and the School- 
to-Work Opportunities Act. 

When Ms. Rees says "Congress needs to shift the goals of the ESEA from one confined 
to inputs to one focused on achievement" she really means she supports outcome-based edu- 
cation, since the word "achievement" as she has used it means "outcome." She then goes on 
to recommend all the "nasties" associated with Marc Tucker's National Center on Education 
and the Economy which are also associated with all recent restructuring legislation, as well as 
with outcome-based education: "empowering of parents, teachers, and principals"; "sending 
more federal dollars to the classroom"; "boosting the quality of teachers"; "allowing flexibility"; 
and "demanding accountability." 

Of special interest here is her recommendation to boost the "quality of teachers." The 
reader is urged to turn to the 1992 entry regarding Filling the Gaps for the new millenium 
definition of "quality of teachers." 

Note also how this report uses the word "achievement." This is the alternative to focusing 
on "inputs"— the legal requirement of most state constitutions with regard to their responsibility 
to the public to "offer," "make available" or "furnish" educational opportunity to all citizens. 
Most of our state constitutions — unless they have changed in the last few years — do not require 
the state to be responsible for each student's success, because the state cannot ensure what is 
a personal responsibility. States are responsible for the provision of everything necessary for 
a child or student to have the opportunity to achieve academic success— "inputs." (This has 
traditionally been known as the Carnegie Unit requirement.) It is when the state becomes the 
guarantor of success — Ms. Rees's "achievement" — that parents have felt the stifling hand of 
the state in the area of privacy and personal freedom. 

Sending more "dollars to the classroom" may sound like returning to local control, but 
is in fact the reverse since it bypasses not only state legislators— who presumably represent 
their constituents at the state level — but also local school boards who traditionally have made 
decisions at the central office building level — not at the school building level — on how their 
constituents' tax money could best be spent. 

Much damage has been done over the years under the guise of "accountability. " Exactly 
to whom does the Heritage Foundation want the schools to be accountable? Parents and tax- 
payers who have had no say whatsoever in restructuring plans, or the international business 
community which initiated and supports the recommendations spelled out in most of Heritage 
Foundation's reports, including its call for the use of Skinnerian Direct Instruction (DISTAR) as 
presently implemented in Houston, Texas at Thaddeus Lott's Model Wesley Elementary School, 
and which is on a roll across the nation since the passage of the Reading Excellence Act 2 .] 

Center on Education and Work of the University of Wisconsin published a paper in 1998 
entitled "Changing Admission Procedures in Four- Year Colleges to Support K-14 Reform." 67 
The paper lists as the principal investigators: L. Allen Phelps, University of Wisconsin-Madison 
and David Stern, University of California at Berkeley. Christine Maidl Pribbenow, University 
of Wisconsin-Madison is listed as project director. The following project areas are listed as: 
Postsecondary; competency-based admissions; secondary; integrated curriculum; and perfor- 
mance-based assessment. Excerpts from the project abstract follow: 



This one-year (1998) National Center for Research in Vocational Education (NCRVE) project 



The Noxious Nineties : c. 1 998 



429 



consists of a number of specific research questions which will be addressed through the work 
of investigators at both U.C. -Berkeley and U.W.-Madison. The purpose of this project is to 
review existing research on performance-based assessment in education and discuss the use 
of these assessments in college admissions. This review will provide a broader understanding 
of the ways in which school-to-work and other K-14 reforms are being accommodated in the 
higher education admission policies and processes being adopted by institutions, particularly 
those with selective admissions criteria. 

At U.C. -Berkeley, investigators will identify 4-5 states that are beginning to develop 
new processes for admission and placement using performance-based assessment. Through 
a series of surveys, on-site and telephone interviews, the following will be examined: [Two of 
five areas of interest have been selected to illustrate the intent, ed.] ... (3) Various approaches 
taken by select high schools in response to the initiative... and (5)The alignment of state 
K-12, K-14, or K-16 educational standards and industry and occupational standards with 
these assessments. 

At U.W.-Madison, investigators will complete quantitative and qualitative analyses of 
the early efforts to develop performance-based admissions and their initial effects on student 
experiences and outcomes in postsecondary education.... Essentially, the goal is to gener- 
ate evidence that illustrates the innovative developments, benefits and limitations of using 
performance-based assessments for college admissions that support models of continuous, 
seamless learning focused simultaneously on careers and college. Researchers intend to 
conduct the following studies: 

• Examine the efficacy, validity and reliability of the CBA for admitting high school 
graduates with intensive, career-focused high school experiences. 

• Explore the link between college experiences with earlier career-related learning as 
provided and documented in the CBA process. 

Both the U.C. -Berkeley and U.W.-Madison researchers will use their research to write 
a proposal for consideration by the governing boards and administrative leaders of four-year 
colleges and universities, both public and private. A meeting will then be convened with 
high-level representatives of four-year colleges and universities to discuss this proposal. 
The investigators' findings will also be used to complete a report which reviews research 
and current practice, analyzes performance-based admission efforts, and discusses the pro- 
posal regarding the use of performance-based assessment. Finally, one or two briefs will 
be published which summarize the findings and/or proposal in a reader-friendly format for 
policymakers, university governing boards, university faculty and administrators. 

[Ed. Note: The reader should be aware that the above project is just one of many efforts to 
change the focus of higher learning from liberal arts, theoretical and applied arts to a con- 
tinuation of the school-to-work focus. The National Center for Educational Statistics published 
a new handbook in its Educational Reports Series in 1993 which outlined the new "crosswalks" 
of course descriptions at the postsecondary or college/university level. These crosswalks reflect 
the transition to performance-based coursework from academic/theoretical coursework. The 
result is a complete refocusing of postsecondary education toward behavioral performance 
rather than encouraging the traditional emphasis on academic knowledge acquisition.] 

"A Governor with Principle Would Reject School-to- Work" by Paul Mulshine was pub- 
lished in the December 6, 1998 issue of the Newark, New Jersey Star-Ledger. Excerpts from 
Mulshine's article follow: 



430 



Christine Whitman once wrote that Republicans believe that "government should only do 
what individuals can't do for themselves and that government decisions should be made as 
close to the people they affect as possible." 

A wonderful philosophy. There's a problem, though: By that standard, our governor 
is not a Republican. . . . 

...Her administration's latest travesty, the School-to-Work proposal, is just the latest in 
a long line of thoroughly un-Republican concepts backed by Whitman. Since I wrote about 
the proposal last week, a couple of things have happened. Assemblyman Scott Garrett, a 
Republican from Sussex County, announced the introduction of a bill that will prohibit forced 
labor in schools. Also, the Homdel Board of Education held a meeting Wednesday night at 
which people came from all over the state to raise objections to the idea. It was a pivotal 
event. Never in my 22 years of journalism have I seen a proposal get knocked around by so 
many different people for so many different reasons. 

A freshman at Holmdel High School said that her friends were in a panic. The require- 
ment that all juniors and seniors spend a day a week working would mean they'd have to 
miss classes. This would harm their chances of getting into college, the girl said. She asked 
that most Republican of questions, "How come we have no say in this?" 

A guy in a sweat suit from a nearby town raised another objection: "The school is not 
the state's. The school is mine, and they tell me it's not mine. I didn't see them at the bake 
sale." 

A school superintendent said that he'd fled Ohio because of a similar program there 
that was destroying the high-achieving schools by turning them into vocational centers. 
Several people objected to a requirement that students choose a career in the sophomore 
year of high school. 

One cited a study that showed that the typical college student changes majors three 
times before settling on a field.... 

...This is an amazing thing Whitman's people have invented: A concept that offends 
practically everyone. Usually a political idea has a core constituency — bleeding heart liberals, 
tightwad conservatives, public employee unions, whatever. But this one riles people up across 
the board. It does make the bureaucrats happy, though.... 

...It would be wonderful, just once, to see Christie Whitman denounce a bad idea not 
because of poll results but because of principle. Close your eyes. Try to imagine Christie 
Whitman uttering the words, "This is wrong. Trenton should not impose ideas like this on 
the people of New Jersey. " 

You can't imagine it? Me neither. 



On December 23, 1998 Maine's Commissioner of Education J. Duke Albanese sent a memo- 
randum to all superintendents of schools related to the Maine Aspirations Benchmarking Ini- 
tiative. Excerpts from this memorandum, which reveal the extent of Maine's transformation of 
its schools from academics to workforce training and of its educational bureaucracy's disregard 
for student privacy follow: 

Sponsored by Webber Energy Fuels, the $300,000 initiative is directed by the University of 
Maine/Maine Principals' Association Research Partnership, in collaboration with the National 
Center for Student Aspirations and the Maine Department of Education. 

The Initiative has the potential of surveying the entire population of students in grades 
6 through 12 in Maine public schools, providing an unparalleled database portraying the 
status of student aspirations in Maine and the conditions that nurture, delay or prevent their 



The Noxious Nineties : c. 1 998 



431 



development. 

The Initiative expands and elaborates on the highly successful Student Aspirations Sur- 
vey. The approximately 30-minute survey will provide schools with information and insight, 
from their students' perspectives, in areas of the total learning environment, including: 

• aspirations 

• conditions in schools 

• challenging behaviors 

• school climate 

• parent-school interaction 

• parental support and guidance 

The Initiative is highly relevant to the Maine Learning Results. While the Learning 
Results allow the measurement of achievement, the Benchmarking Initiative will allow the 
measurement of motivation to achieve. The Initiative will enable schools to begin to assess 
themselves as related to the Guiding Principles which have not yet been addressed in content 
standards. Survey questions strongly relate to Guiding Principles II and IV — a Self-Directed 
and Life-Long Learner, and a Responsible and Involved Citizen, respectively. The Initiative 
will provide baseline data on career development and help schools and the standard of 
career preparation.... 

...Schools participating in the Initiative will receive several important benefits — all at 
no cost: 1) schools will receive detailed informative reports of their students' responses, 
providing an assessment of the school dynamics and their effect on aspirations, motivation, 
and learning; 2) broader reports based on the data will provide the opportunity for schools 
to compare their profiles against state and regional profiles; 3) schools can take advantage 
of responsive programs and technical assistance to create or strengthen aspiration conditions 
in areas of need identified by schools; and 4) schools will receive assistance in monitoring 
the impact of reform efforts, including a follow-up survey toward the end of the project to 
check against the baseline data, an important, but often neglected step in the action research 
process. 



1999 

The federally funded North Central Regional Educational Laboratory (NCREL) , which 
serves seven states in the Midwest, published "New Times Demands New Ways of Learning" 
in its Winter-Spring issue of EdTalk. This article "is intended to offer a way to evaluate the 
effectiveness of various technologies and technology programs against the backdrop of new 
research on learning." Some excerpts follow: 

"Learning" here does not mean how well students perform on standardized tests. That's 
not learning, as researchers and educational reformers are coming to understand it. There's 
a dynamic shift occurring in this country as we move from traditional definitions of learn- 
ing and course design to models of engaged learning that involve more student interaction, 
more connections among schools, more collaboration among teachers and students, more 
involvement of teachers as facilitators, and more emphasis on technology as a tool for learn- 
ing. It is in this context that our framework operates; it is this type of engaged learning that 
technology must support to be effective.... 



432 



In place of these old assumptions, researchers are positing new ways of looking at 
learning that promote: 

• engaged, meaningful learning and collaboration involving challenging and real-life 
tasks; and 

• technology as a toll [requirement] for learning, communication, and collabora- 
tion. 



The traditional learning model is not relevant to real student needs. 

These attributes contrast sharply with the discrete, low-level skill, content, and as- 
sessment methods that traditional ways of learning favor. The new workplace requirements 
for learning are incompatible with instruction that assumes the teacher is the information 
giver and the student a passive recipient. 

The new requirements are at odds with testing programs that assess skills that are 
useful only in school. 

Technology in support of outmoded educational systems is counterproductive. 

The reliance on standarized tests is ludicrous. Technology works in school not because 
tests scores increase, but because technology empowers new solutions. 

There are no definitive answers about the effectiveness of technology in boosting 
student learning, student readiness for workforce skills, teacher productivity, and cost ef- 
fectiveness. True, some examples of technology have shown strong and consistent positive 
results. But even powerful programs might show no effects due to myriad methodological 
flaws. It would be most unfortunate to reject these because standardized tests showed no 
significant differences. Instead, measures should evaluate individual technologies against 
specific learning, collaboration, and communication goals. 

What is effective learning and how can it be measured?... [Barbara Means of SRI 
International] identified seven variables that, when present in the classroom, indicate that 
effective teaching and learning are occurring: These classrom variables are: 

• children are engaged in authentic and multidisciplinary tasks; 

• assessments are based on students' performance of real tasks; 

• students participate in interactive modes of instruction; 

• students work collaboratively; 

• students are grouped heterogeneously; 

• the teacher is a factilitator in learning; and 

• students learn through exploration. 

We took these variables and reorganized them into a set of eight categories of learn- 
ing: tasks, assessment, instruction, learning, context, grouping, teacher roles, and student 
roles. 

Centralized systems are likely to inhibit learning to the extent that they use the transfer 
mode of learning and instruction. This model assumes that the central source holds most of 
the important information and that it is the student's job to transfer the information from 
this central source to his or her location and "learn" it. 



[Ed. Note: The above text provides an excellent, if not depressing, overview of the transfor- 
mation from education to workforce training. The timing of this article is interesting in light 
of other reports, some of which are referred to in this book, exposing the limits of computer 
technology in the teaching of the important basic academic skills. The above article also admits 
the lack of supportive research on the "effectiveness of technology in boosting student learning," 



The Noxious Nineties : c. 1 999 



433 



but still insists that the methodology should not be rejected just "because standardized tests 
showed no significant differences. " Instead, the answer is to use this unconfirmed technology 
to accomplish limited learning tasks in an attempt to convince the reader that this "new" type 
of "education" should be embraced by all.] 



ROSIE AVILA, A SCHOOL BOARD MEMBER IN THE SANTA ANA UNIFIED SCHOOL DISTRICT, Santa Ana, 

California, wrote an interesting but frightening article entitled "Parent Report Cards" regarding 
the implications of parent education programs which was included on an education website 
on the Internet January 10, 1999. Some excerpts follow: 

As a school board member I have discovered just how they will implement the U.N. Con- 
vention on the Rights of the Child, the new global parenting code.... 

I noticed every time they talked about parent involvement (a goal of Goals 2000) it was 
in the context of parent education, what parents need to do at home to help their children 
succeed in school. Parents are called partners with the schools.... 

Federal funding mandates parent education. Every one of our schools has a parent 
education program; 300-400 parents at a time are going through these.... All parents are 
required to sign a Parent Compact, agreeing to do certain things at home, "provide a study 
space, put the kids to bed on time, read with them," etc. So, parents are trained, then have 
to sign an agreement. 

Then I saw a bill pass in Sacramento at the State level. It was first described as a "par- 
ent report card," but I understand there was objection and so it was redefined, but passed 
anyway. ... I read an article in the Better Homes and Gardens Magazine describing the new 
"parent report card." It said students would give information to their teachers, and parents 
[would be] graded on students' grooming, sleep habits, and attendance at school meetings, 
etc. The article said, "Students would be empowered by signing off on their parents' report 
card," and that "Children knew when their parents were flunking." 

Our school district received a $1.1 million dollar grant under "safe schools," another 
goal of Goals 2000. It said we would not have any violence or drugs in schools in the new 
century and that prevention was the key. Quoting Janet Reno, "Students acted up when 
they had neglectful parents" and that we could spot them in the early grades. So, if a parent 
was deemed to be neglectful (failed on their report card, was what I figured), they would 
have to go through the SARB (Student Attendance Review Board) and have a meeting at the 
police department with someone from the District Attorney, Child Protection Service, Social 
Services, School Counselors, etc. Here they would be given their court-ordered program to 
improve their parenting. 

So, there it was. A global parenting code: the Convention on the Rights of the Child, 
federally funded parenting courses with a required Parent Compact through Chapter One, a 
State Parent Report Card, and a local punishment or coercion policy redefining the role of 
the SARB to include neglectful parents. 

They have most of the system in place here in California. They just need that ratification 
of the U.N. Convention on the Rights of the Child. 

[Ed. Note: The above information regarding report cards for parents should come as no sur- 
prise given the following recommendation made by neo-conservative Chester E. Finn, Jr., in 
an article condensed from the Heritage Foundation's Policy Review; Summer 1986, No. 37, pp. 
58-61 (reprinted in Education Digest on January 1987, p. 4).] 



434 



6. Parents must be enlisted in the work of the school and in the education of their 
children. Along with endorsing over to the school their child's tuition grant, parents must 
be asked to assume certain elemental responsibilities, both for such mundane matters as 
discipline and attendance and for such specific ones as providing the child with a place to 
do his homework and checking each night to make sure it is done. Just as parents should 
have the right to evaluate — and choose among — schools, so too should teachers and princi- 
pals have the right to appraise parents' performance with respect to the education of their 
children. What about a section in the child's report card where the school team can "grade" 
the parents' performance? 

Really, Mr. Finn? This seems to be a bizarre approach to "school choice" — "endorsing 
over to the school their child's tuition grant, parents must be asked to assume elemental re- 
sponsibilities." Ms. Avila's concern about the liberal international influence in public schools 
seems to have found its way into the "conservative solution."] 

An Educator's Guide to Schoolwide Reform (Educational Research Service: ARlington, 
Virginia, 1999) was prepared for publication by American Institutes for Research under the 
direction of Rebecca Herman as project director. The Guide was produced under contract to 
the American Association of School Administrators, the American Federation of Teachers, the 
National Association of Elementary School Principals, and the National Education Association. 
The "overview" of the Guide states in part: 

This guide was prepared for educators and others to use when investigating different ap- 
proaches to school reform. It reviews the research on 24 "whole-school," "comprehensive," 
"schoolwide" approaches. 

THIS GUIDE IS NOT MEANT TO ENDORSE, FAVOR, OR DISCREDIT ANY OF THE AP- 
PROACHES. Rather, it is designed to assist those who want to critically examine the most 
widely available schoolwide reform approaches. Schools can improve their performance in 
a variety of ways, not just by using a schoolwide approach. However, educators interested 
in these approaches should find the guide useful. 

This book has repeatedly dealt with the Skinnerian, scientific, research-based method 
of teaching and learning, therefore, the writer lists below only the four out of 24 programs 
recommended by the Guide which clearly use this method. They are: 

1. Coalition of Essential Schools 

2. Direct Instruction 

3. Modern Red Schoolhouse 

4. Success for All 

Since much already has been written about Siegfried Engelmann's Direct Instruction in 
this book, the writer will focus on Robert Slavin's "Success for All." The following excerpts 
from "Ready, READ! " by Nicholas Lemann, which appeared in the November 1998 issue of The 
Atlantic Monthly, give the reader a clear picture of how a direct instruction/mastery learning 
classroom marketed as "Success for All" functions: 

Success for All, Accelerated Schools, and the School Development Program, all designed by 
university professors — the first two have each been adopted by more than a thousand schools 



The Noxious Nineties : c. 1 999 



435 



across the country, and the third by 700.... 

...By the end of this school year the Success for All organization will have a budget 
of $30 million and will operate in more than 1,100 schools all over the country. Among its 
customers are the Edison Project which is private [publicly funded charter school]; the state 
of New Jersey; and the cities of Houston, Memphis, and Miami.... 

...The prevailing criticism of Success for All is that it is designed to produce higher 
scores on a couple of tests chosen by Slavin, for which the control-group schools don't train 
their students; the gains it produces, according to critics, are substantially limited to the first 
year of the program. 

Success for All tells schools precisely what to teach and how to teach it — to the point 
of scripting, nearly minute by minute, every teacher's activity in every classroom every day 
of the year. 

...Teachers must use a series of catch phrases and hand signals developed by Success 
for All.... At every level Slavin's programs greatly reduce teacher autonomy, through control 
of the curriculum.... People usually describe Success for All with terms like "prescriptive," 
"highly structured," and "teacher-proof"; Slavin likes to use the word "relentless." One 
education researcher I spoke with called it "Taylorism in the classroom," after Frederick 
Winslow Taylor, the early twentieth-century efficiency expert who routinized every detail 
of factory work.... 

A few minutes in a Success for All classroom conveys the Parris Island feeling of the 
program better than any general description could. It is first grade — the pivotal year. The 
students read the first page of the story loudly, in unison. The teacher says, "Okay, next 
page. Finger in place, ready, read!" After a few minutes of this students have finished the 
story. Not missing a beat, the teacher says, "Close your books, please. Let's get ready for 
vocabulary." She moves to a posted handwritten sheet of words and points to herself. "My 
turn. Maze, haze, hazy, lazy. Your turn." She points to the class. The students shout out the 
words in unison: "Maze! Haze! Hazy! Lazy!" 

Then the teacher announces that the students are going to do "red words" — Success 
for All lingo for words that students can't decode from their phonemic components. "Okay, 
do your first word," she says. The students call out together, "Only! O (clap) N(clap) L(clap) 
Y(clap). Only!" After they've done the red words, the teacher says, "Now let's go to our 
meaningful sentences." The students read from a sheet loudly and in unison the definitions 
of three words and then three sentences, each into their cooperative learning groups to write 
three sentences of their own, using each of the words. "If you work right, you'll earn work 
points for your work team! You clear?" Twenty voices call out, "Yes!" 

Last year, when I was there, the school was phasing in uniforms. 

[Ed. Note: Brown shirts?] 

In a Letter to the Editor printed in the Athens (Georgia) Daily News/Banner Herald of 
January 18, 1999, Priscilla Carroll, former elementary school teacher, responded to a letter 
to the editor from Professor Carl Glickman of the University of Georgia, author of books on 
school reform, which dealt with changes in local school board responsibilities as a result of 
the adoption of block scheduling, one of the reform components resulting from Clarke County 
(Athens) School District being designated as a "Next Generation School" district. Mrs. Carroll 
responded that: 

Some of the Next Generation School Project power structure changes state: 

a) Local boards will not manage, operate nor make decisions for running schools. 



436 



b) Local boards will be advised by created community teams or collaboratives. 

c) Local boards must let go... presiding over student or employee grievance hearing. 

d) Grievance hearings will be delegated to "duly appointed mediation and arbitration 
panels." 

e) Local boards won't decide field trip requests, student transfers, challenges to library 
books, school calendar decisions, bus routing problems and athletic program con- 
cerns. 

f) Local boards must "move away from... hiring, firing and promoting employees." 

g) Local boards "will be freed of constraints and obligations that impede their ability 
to address the global issues which are more worthy of their time. " 

h) Local boards must "give up the role of keeper of the purse" (won't control edu- 
cation money) . 

i) The local "appointed" school superintendents (LSS), are to be trained and controlled 
by the state. 

[Ed. Note: When Georgia's radical "break the mold" Next Generation School Project proposal 
was not accepted as one of the original New American School Development Corporation 
(NASDC) design teams, corporate and non-profit "partnership" funding was generated to 
accomplish the Project within the state. Mrs. Carroll's comments were paraphrased from the 
"Next Generation School Project" manual. Professor Luvern Cunningham would be pleased 
to see how his recommendations to get rid of school boards are being carried out across the 
country.] 

"School to Work Gets Poor Grade in Study" by Mark Shrug and Richard WESTern of the 
University of Wisconsin at Milwaukee, professors who conducted a study for the Wisconsin 
Policy Research Institute, appeared in the January 19, 1999 issue of The Milwaukee Journal 
Sentinel. Excerpts follow: 

More than $195 million, almost all federal money, was spent from 1991 to 1998 in Wisconsin 
on programs under the label School-to-Work, but it has had almost no demonstrable impact on 
the state's schools or economy.... It has had no identifiable impact on the academic learning 
of K-12 students in Wisconsin and it has involved too few students in its core, work-based 
learning activities to register a significant aggregate impact on Wisconsin's workforce. 

Many school districts, including MPS (Milwaukee), generally have dropped the term. 
And attention, some suggest, has shifted to different policies, particularly proficiency testing 
and a looming statewide test that all students will have to pass to graduate. 

The study says one of the few tangible accomplishments of School to Work was that 
347 students had graduated from apprenticeship programs statewide. But, the study says, 
that was equal to 1/10, 000th of the state workforce in 1996.... The study says there was no 
"reliable evidence" that School-to-Work had accomplished any of its major goals. 

Grants were used ($30 million) for teacher training, apprenticeships, job shadowing 
and connections between schools and individual businesses. 

James H. Miller, president of the policy research institute, said, "As with most bureau- 
cratic educational reforms, School-to-Work sounds terrific, but in reality it is all style with 
absolutely no substance." 

[Ed. Note: Let's hope that the old adage "You can lead a horse to water, but can't make him 
drink" will play itself out in regard to school-to-work. 



The Noxious Nineties : c. 1 999 



437 



However, leadership in the homeschool community seems to have embraced at least a 
portion of the school-to-work proposition. While apprenticeship has been promoted to home- 
schoolers as an alternative to "electives" by some homeschool organizations and leaders (Bill 
Gothard, Doug Wilson et al.), now the apprenticeship concept is being embraced at the post- 
high school level by none other than Michael Farris of Home School Legal Defense Association. 
In his announcement about the forthcoming establishment of the Patrick Henry College in 
Purcellville, Virginia, Farris stated in an interview with Andrea Billups of The Washington 
Times (May 17, 1999): 

"I wanted to break out of the educational box like I've helped to do with K-through-12 
education."... 

...Initially, the school will offer a lone undergraduate major in government, featuring 
an apprenticeship program designed to give students practical experience in public policy 
and service.... 

As a part of their curriculum, Patrick Henry students will work on faculty-supervised 
research and writing projects for congressional offices, state legislators, federal agencies, 
think tanks and advocacy groups. 

"We are combining a traditional liberal arts model with a white-collar version of vo- 
cational training," said the school's provost and academic dean, Brad Jacob, a lawyer and 
professor who served as the CEO of the Christian Legal Society. "It all comes from the ivory 
tower concerns, where students learn theory but don't know beans about how to work in 
the workplace.... We believe in mentoring and disciplining." 68 

This should come as no surprise in light of Mr. Farris 's previous public enthusiasm for 
apprenticeships expressed at his organization's National Home Educator's Leadership Con- 
ference in Orlando, Florida in 1995. During a "debate" with William Spady, Farris lauded 
the Swiss educational system as a "very successful national model." 68 The Swiss system is 
committed to apprenticeships, with 75% of its students never going to high school or college 
but into apprenticeships after the eighth grade. Their K-8 system prepares students to enter 
apprenticeships, certainly limiting career employment choices and movement. 

The bottom line is this: "apprenticeship" is "workforce training." Skipping over traditional 
academic high school and college subjects, or watering down a liberal arts college education 
to accommodate its "application" to a workplace setting, constitute the "deliberate dumbing 
down" of homeschoolers. Could school-to-work at the college level be the "camel's nose under 
the tent for STW at K-12 level for homeschoolers?] 

The January 1999 issue of Community Update published by the U.S. Department of Edu- 
cation provided an update on activities being held by the Religion and Education Partnership 
(first established in 1995). The following excerpts describe the involvement of "the church in 
the state" and "the state in the church" — something heretofore not spelled out in government 
publications. The U.S. Department of Education announced that: 

Religious leaders, educators, members of the higher education community, and students 
came together at Spalding University in Louisville, Kentucky on December 11, for the fourth 
Religion and Education Summit supported by the Partnership for Family Involvement in 
Education.... 

More than 500 participants gathered in Louisville from Kentucky, Ohio, Indiana, and 



438 



Tennessee to hear U.S. Secretary of Education Richard W. Riley participate in a town hall 
discussion on three important topics: family involvement in education, school safety, and 
preparing young people for college and careers. Programs that support these initiatives were 
presented in small group gatherings where participants could speak to practitioners from 
Tampa, Florida; Birmingham, Alabama; and Louisville, Kentucky. A materials fair featuring 
model programs, community services, information about the public schools in the area, 
and materials produced by the Partnership for Family Involvement in Education was open 
throughout the summit. 

The goal of the Religion and Education Summit was to bring together leadership repre- 
senting faith communities and elementary, secondary, and higher education to discuss issues 
of concern to the community and to build partnerships to bring about changes needed for the 
benefit of all children. Previous summits were held in Lawrence, Massachusetts; Wilmington, 
Delaware; and St. Petersburg, Florida. Partnerships formed at these summits have continued 
to work together to improve education and strengthen family and community involvement 
in local schools. To obtain information on how to plan and hold a Religion and Education 
Summit, email partner@ed.gov. 

[Ed. Note: The writer suggests that parents involved in such partnerships re-read "Little Red 
Riding Hood" and retrace Little Red Riding Hood's steps to Grandma's house in the woods. Par- 
ticular attention should be given to Red Riding Hood's finding The Big Bad Wolf in Grandma's 
bed wearing Grandma's night cap!] 

Speaking of "Little Red Riding Hood," the January 24, 1999 issue of The Gwinnett Daily 
Post of Lawrenceville, Georgia contained an article by staff writer Laura Ingram entitled "Clus- 
ters Promote Community Growth." This article describes a second-step phase of a "systems 
change" effort outlined in a joint publication from the U.S. Department of Education and the 
U.S. Department of Health and Human Services, Together We Can. The article, which illustrates 
the shift from representative (elected) governance to regional (unelected) governance with its 
"Big Bad Wolf" use of partnerships to accomplish its goals, is included in its entirety below: 

Unique groups called Community Cluster Care Teams were born last April, comprised of 
12 Gwinnett communities, and have taken their first steps toward uniting sections of the 
county into neighborhoods. 

"The entire community needs to get involved," said Suzanne Brighton, coordinator for 
the teams. "We need to look at the environment we're raising our children in. Everybody 
has a responsibility to create a healthy environment where children can grow." 

Parents, teachers, senior citizens, clergy, business people, school officials and social 
service workers first met this new creation April 15 at a conference called "Together We Can," 
sponsored by the Gwinnett Coalition for Health and Human Services and BellSouth. 

The 200 participants split into 12 groups based on high school clusters and came up with 
particular ways to improve each cluster/community. But they did not stop at just a sketch. 

The 12 teams continued meeting throughout the year, drawing more community mem- 
bers and resources into their group, and creating strategic plans to accomplish their goals 
and shrink scary statistics that show children finding their way into drugs, pregnancy and 
violence. 

This fall, their imperative to heal and unite their neighborhoods took shape as tree 
plantings, youth dialogues, new youth basketball teams, grandparent adoptions and bilingual 
services. 

Metro United Way's vice president of community investments, Geralyn Sheehan, calls 



The Noxious Nineties : c. 1 999 



439 



the teams a pilot program for the entire nation, teaching residents throughout America how 
to reconnect with others to build a healthier community. 

[Ed. Note: To further illustrate what the U.S. Department of Education and U.S. Department 
of Health and Human Services book Together We Can: A Guide for Crafting a Profamily System 
of Education and Human Services (Contract #RP912060001: PrismDAE, a division of DAE Cor- 
poration: Chevy Chase, Maryland, 1993) outlined as a blueprint to follow for "local systems 
change," the writer will offer some excerpts from this publication. Jointly signed by Secretary 
of Education Richard W. Riley and Secretary of Health and Human Services Donna E. Shalala, 
the foreword to this book reads: 

This book was developed jointly... to help communities improve coordination of education, 
health and human services for at-risk children and families. Together We Can: A Guide for 
Crafting a Profamily System of Education and Human Services reflects the work and expe- 
rience of a study group of researchers and front-line administrators and practitioners working 
with promising programs that link education and human services. Together We Can leads the 
reader through a five-stage collaborative process with milestones and landmines portrayed 
through vignettes and case studies describing the personal experiences of the study group 
members. 

Together We Can is a practical guide that can assist local communites in the difficult 
process of creating a more responsive education and human service delivery system. The 
guidebook emphasizes the effective delivery of supports for families, a crucial step toward 
assuring the future success of America's children. Recognizing that the current system of 
programs serving children is fragmented, confusing and inefficient, the guidebook advocates 
a radical change in the service delivery system. It encourages a holistic approach in treating 
the problems of children and families; easy access to comprehensive services; early detection 
of problems and preventive health care services; and flexibility for education, health and 
human services. 

We believe this guide is a practical tool for the many communities that are working to 
create more comprehensive, family-focused service delivery systems for children and their 
families. 

[Ed. Note: This is pure, unadulterated "communitarianism," which is denned as: "communi- 
tarian — a member or advocate of a communistic community" (p. 288) and "ism" — a doctrine, 
theory, system" (p. 474) in Webster's New World Dictionary of the American Language (Wil- 
liam Colliers — World Publishing Co., Inc.: New York, 1976.), the system we have been told 
is "dead."] 

In the preface to Together We Can we find the following: 

Across America, people are recognizing that all of the institutions and agencies whose mis- 
sion is to nurture and strengthen children and families must collaborate. . . . 

The U.S. Department of Education and the U.S. Department of Health and Human 
Services charged the School-Linked Integrated Services Study Group with capturing the ex- 
periences of collaborative endeavors across the country and creating a guide for integrating 
services.... 

Basic to the guide is the concept of systems change [emphasis in original] . We define 
systems change as a revision of the ways that people and institutions think, behave, and use 
their resources. . . . The Study Group believes collaborative strategies [emphasis in original] are 



440 



the key to systems change. . . . Collaborative strategies, in which partners share a vision, estab- 
lish common goals, and agree to use their power to achieve them are necessary; commitment 
of resources and willingness to alter existing policies are a vital part of such strategies. 

Most importantly, the children and families who participate in our education and hu- 
man service systems are essential to its reinvention. They are indispensable partners with 
educators, human service professionals, business leaders, civic and religious leaders, leaders 
of community-based organizations, and other citizens in creating the profamily system that 
the guide envisions. 

The School-Linked Integrated Services Study Group consisted of representatives of: "In- 
stitute for Educational Leadership, Washington, D.C.; Florida International University Human 
Resource Service Professional Development Center, Miami, Florida; Walbridge Elementary 
School, St. Louis, Missouri; National Center on Adult Literacy, Philadelphia, Pennsylvania; 
Center for Collaboration for Children of California State University, Fullerton, California; Prince 
Georges County Public Schools, Suitland, Maryland; San Diego City Schools, San Diego, Cali- 
fornia; Public School 146M, New York City; Savannah-Chatham County Youth Futures Authority, 
Savannah, Georgia [Anna Casey grant recipient which promoted school-based clinics]; School 
of Education at Stanford University, Stanford, California; Early Childhood and Family Education 
division of North Central Regional Educational Laboratory, Oak Brook, Illinois; Danforth Foun- 
dation, St. Louis, Missouri; Cities in Schools, Charlotte, North Carolina; Community Education 
Leadership Project of the Institute for Educational Leadership, Washington, D.C.; Better Boys 
Foundation, Chicago, Illinois; National Center for Services Integration of Mathtech, Inc., Falls 
Church, Virginia; Community Schools of Rochester City School District, Rochester, New York; 
Clinic Services/Family Counseling Center of the Massachusetts Society for Prevention of Cruelty 
to Children, Boston, Massachusetts; Lansing School District, Lansing, Michigan; Parent Action, 
Baltimore, Maryland; New Jersey Department of Human Services, Trenton, New Jersey; School 
of the Future of El Centro Familiar Office of the Family Service Center, Houston, Texas; New 
York State Department of Education, Brooklyn, New York; Walbridge Caring Communities 
Program, St. Louis, Missouri; and a practicing psychologist." 

In the interest of fully informing the reader of just exactly what these projects are about 
and hope to accomplish, the writer is including highlights of a two-part appendix which are so 
totally invasive and frightening in their implications that they should relegate George Orwell's 
1984 to the "light reading" stacks! 

Appendix A 
Checklist 1 

Process for Crafting a Profamily System of Education and Human Services 

Stage One: Getting Together 

• Has a small group decided to act? 

• Do the players meet the following criteria for membership in the collaborative: 

clout; 

commitment; and 

diversity? 

• Are the right people involved. . . 

• Have partners reflected on their work and celebrated their accomplishments? 



The Noxious Nineties : c. 1 999 



441 



Stage Two: Building Trust and Ownership 

• Has the collaborative conducted a comprehensive community assessment that... 

produces a profile of child and family well-being in the community; ... 

• Have partners defined a shared vision and goals for changing education and human 
services?... 

Stage Three: Developing a Strategic Plan 

• Has the collaborative narrowed its focus to a specific neighborhood for launching a 
service delivery prototype? 

• Has the collaborative conducted a neighborhood analysis... 

• Has the collaborative defined the target outcomes?... 

• Is a mechanism in place for using program-level intelligence to suggest system-level 
changes?... 

Stage Four: Taking Action 

• Is the collaborative evaluating progress by: 

using process evaluation techniques; and 

measuring outcomes? 

• Have partners reflected on their work and celebrated their accomplishments? 

Stage Five: Going to Scale 

• Has the collaborative built a formal governance structure?... 

• Is the collaborative promoting change in the federal government's role in delivering 
services for children and families? 

• Is the collaborative continuing to reflect and celebrate as it "climbs the mountain" 
of systems change? 

Checklist 2 
Indicators of Systems Change 

Are agency agreements in place?... 

Do program-level information and intelligence trigger policy-level changes across multiple 
systems?... 

Have partners developed shared information systems? 

• Is there ready access to each other's records? ... 

• Have agencies replaced separate in-house forms to gather the same kind of infor- 
mation with a common form used by all members or other organizations to establish 
program eligibility? Assess case management needs? Develop case plans? 

Have partner agencies incorporated the vision and values of the collaborative at their ad- 
ministrative and staff levels? 

• Have partners altered their hiring criteria, job descriptions, and preservice or inservice 
training to conform to a vision of comprehensive, accessible, culturally appropriate, 
family-centered, and outcome-oriented services? ... 

• Are outcome goals clearly established? 

• Has the collaborative used its data collection capacity to document how well children 



442 



and families are faring in their communities and how well agencies and child-serving 
institutions are meeting their mandates? ... 

• Are outcomes measurable? Do they specify what degree of change is expected to 
occur in the lives of children and families during what period of time? 

• Is shared accountability a part of outcomes that reflect education, human service, 
and community goals and objectives? 

Has the collaborative devised a financing strategy to ensure long-term funding? 

Has the collaborative gained legitimacy in the community as a key vehicle for addressing 
and resolving community issues regarding children and families? 

• Are the collaborative's positions on community issues supported by commitments 
from public and private service providers, the business community, and the church- 
and neighborhood-based organizations whose members are often most directly af- 
fected by collaborative decisionmaking? 

The above activities are advocated and coordinated through a center which was established 
with taxpayers' money and is described in the following explanation of its activities: 

National Center for Services Integration 
The National Center for Services Integration (NCSI) was established in late 1991 with funds 
from the U.S. Department of Health and Human Services and private foundations to improve 
life outcomes for children and families through the creative integration of education, health 
and human services. The center itself is a collaboration of six organizations: Mathtech, 
Inc.; the Child and Family Policy Center; National Center for Children in Poverty; National 
Governors' Association, Policy Studies Associates; and the Yale Bush Center. It also receives 
guidance from distinguished advisors knowledgeable about the issues and institutions con- 
cerned with service integration. 

The primary purpose of NCSI is to stimulate, guide, and actively support service inte- 
gration efforts throughout the entire country. To accomplish its mission, NCSI has undertaken 
a variety of activities through its Information Clearinghouse on Service Integration and a 
Technical Assistance Network. 

The Clearinghouse, which is operated by the National Center on Children in Poverty 
at Columbia University, collects and disseminates information and materials on service 
integration issues and related topics. They have developed a computer directory of service 
integration programs, a separate directory of organizations, and an extensive research library 
collection that can provide information and support to community-based programs. Individu- 
als, organizations, and localities can access any of the Clearinghouse services.... 

The Technical Assistance Network, which is operated by Charles Bruner of the Child and 
Family Policy Center [Kids Count] and Mathtech [government contractor for the evaluation of 
sex education programs] , brings together leading service integration planners, practitioners, 
administrators, and experts to exchange ideas and information, to develop written resource 
materials for communities and practitioners and to convene working groups composed of 
persons in the forefront of particular issues to develop strategies for successfully resolving 
some of the challenges facing communities and governmental entities involved in service 
integration efforts. 



[Ed. Note: If the reader has any questions about why school-based clinics, school-to-work, 
community education programs, year-round schools, one-stop training centers, and all of the 
other "locally conceived" programs have come into their communities with such force and 



The Noxious Nineties : c. 1 999 



443 



fundamental support, the above federally funded and conceived plans should answer them. 
Together We Can brings together national and international plans for socializing all services to 
our citizenry. One example is the International Year of the Child proposals which originated in 
1979 and are hereby funded, formatted, and fulfilled in Together We Can's "how-to" instruction 
manual. These are the processes necessary to create the "perfect human resource"— the global 
worker. President Nixon vetoed the child and family legislation encompassing all of the above 
activities (the Humphrey-Hawkins Child and Family Services Act) in the mid-1970s, calling 
it the most socialistic legislation he had ever seen. The New York Times carried an article by 
Edward B. Fiske entitled "Early Schooling Is Now the Rage" in its April 13, 1986 issue which 
explained: 

Mr. Nixon not only vetoed the bill (Humphrey-Hawkins] but also fired off a scathing mes- 
sage to Congress, proclaiming that he would have no part in the "Sovietizing" of American 
Society. "Good public policy requires that we enhance rather than diminish both parental 
authority and parental involvement with children." 

This comprehensive program links almost every entry in this book, from cradle to grave. 
None of this could have been accomplished without the use of behaviorist methods and change 
agent tactics carefully documented in this book. Americans would not have willingly turned 
over decision making in these areas unless manipulated into doing so; no one ever voted to 
conduct our government in this manner. The Montgomery County Blueprint of 1946 — fifty-plus 
years ago— spelled out this approach. In the Blueprint Paul Mort pointed out that it takes fifty 
years to accomplish "systems change." He was right on target.] 

In his January 1999 State of the Union speech before the 106th Congress, PRESident Bill 
Clinton referred to his "100,000 new cops" legislation and funding. Possible uses for these 
new "police resources" might be found in information regarding Community-Oriented Policing 
(COP) training available through agreements between local police departments and the U.S. 
Department of Justice, Bureau of Justice Assistance (BJA) . The following excerpt is taken 
from Community-Oriented Police (COP) materials published through the auspices of the U.S. 
Department of Justice: 

COMMUNITY POLICING WHAT IS IT? 

• Shift in philosophy about police duties vs. community responsibilities to a team 
concept of total quality management of the community. Reidentifying police role as 
a facilitator in the community. 

• Leaders of the community (law enforcement, government, business, education, 
health, civic, non-profit, medical, religious, etc.) collaborating to identify problems 
in the community, what the significant impact on people will be, and suggesting 
solutions to those problems 

• Identifying common ground, where all factions of a community can work together 
for the common good of the community in a broader problem-solving approach. 
Forming a partnership between police and the rest of the community where each is 
accountable to each other and the community as a whole. 

• Raising community awareness of programs and functions of community agencies 



444 



and organizations, to make it easier for citizens to contact the correct source for so- 
lutions to their problems, thus releasing police time to take care of legitimate police 
business. 

A recent article in The Washington Times (National Weekly Edition) of May 17-23, 1999 
entitled "Ahem, about those 100,000 new cops..." sheds some light on what is a little-known 
but controversial program. Excerpts follow: 

Whatever happened to those 100,000 new cops President Clinton promised to put on 
the streets back in 1994? More to the point, what became of the $9 billion appropriation 
to fund the much-hyped Community Oriented Policing Services Program (COPS) that was 
supposed to deliver them? 

According to an embarrassing new report released by the Justice Department's Office 
of Inspector General (IG), the money is being spent on anything and everything but new 
police officers. 

...[T]he IG discovered, during the course of 150 audits of grant recipients, that 78 
percent of grantees charged unallowable costs to the federal government for such things 
as overtime, police uniforms and fringe benefits not approved in advance; that 41 percent 
of grant recipients showed indicators of simply having used federal funds to supplant local 
funds, sometimes paying the salaries of officers already on board, and other times not meet- 
ing the program's matching funds requirements; that 58% of grantees either did not develop 
a good faith plan to retain officer positions or said they would not retain the positions at the 
conclusion of the grants. 

All told, the IG report identified $52 million in questionable costs; $71 million that 
could have been put to better use. 

As to how many new police officers are actually on the street as a result of all this 
manna from Washington, well, that's something not yet pinned down. The IG's audit shows 
the COPS program has issued some $5 billion in grants, enough to fund 92,000 officers, of 
which only 50,000 appear to be on the street. 

Three years ago, IBD noted that federal grants have been going to fund state parks, 
nature sanctuaries and other places not usually associated with violent crime. In Florida, 
for instance, the state Department of Environmental Protection received a $3.5 million COPS 
grant to hire 30 marine patrol officers to monitor a national marine sanctuary. (Manatees 
can be a real threat to public order, you know.) 

More than 20 criminal investigations of COPS grantees have been opened thus far, yet 
the lucre continues to flow. But the real problem with the COPS program is the further po- 
liticization of American law enforcement at all levels. By dangling billions before state and 
local departments, the federal government is teasing law enforcement into a bidding war 
and lobbying campaign, shifting the emphasis from dealing with crime to worrying about 
how to score a hit on the cash-laden Beltway pinata. 

Not only is there reason for legitimate concern over the "politicization" of American law 
enforcement. The use of the money for COPS to pay organizations like Community Research 
Associates to train police departments in towns across this country to employ tactics similar 
to those used by educational change agents to accomplish questionable re-orienting of law 
enforcement activities cries out for an investigation. A sample of such suggestions, taken from 
U.S. Department of Justice materials, follows: 

MEETING #3 . . . We ask that between now and the time we arrive, you contact these iden- 
tified individuals and arrange for a day-long session.... This group will be exposed to the 



The Noxious Nineties : c. 1 999 



445 



history, elements and types of COP, as well as strategic planning concepts necessary to COP 
implementation. This will also leave us with tasks to perform, should there exist a consen- 
sus opinion to proceed with Phase II of the COP initiative. We recommend that members of 
your department holding the rank of Captain and above attend this meeting (in uniform) 
and that they be instructed prior to the meeting to disperse themselves evenly throughout 
the audience. 

[Ed. Note: Accolades to the police departments and public officials who understand that 
their law enforcement resources should be applied toward fulfilling their constitutional law 
enforcement duties rather than to help them engage in public/private partnership community 
development and social service programs which, due to the blurring of lines of responsibility, 
are unaccountable to the public and truly "communitarian" in their tone.] 

"State of Education Criticized — Nonprofit organization Hired At Former Governor's 
Urging Pinpoints Weaknesses Within Ohio's Academic System" is published in the March 24, 
1999 issue of the Akron, Ohio Beacon Journal. Excerpts from this article follow: 

Columbus — A national organization, hired to look at Ohio's education system, issued a report 
card yesterday and the results were not good. 

The critical assessment, presented to the state's educational policy leaders, was sur- 
prising because the nonprofit organization, Achieve Inc., was hired at the urging of former 
Gov. George Voinovich, who helped devise the funding system. 

The organization is made up of executives from some of the nation's largest corpo- 
rations — IBM, Boeing and Procter & Gamble — and governors from North Carolina, Michigan, 
Nevada and Wisconsin. [The National Governor's Association set up this organization to 
"manage" reform, ed.]... 

Among the findings: 

• Ohio's academic goals are not clearly defined. Accountability standards are ineffective 
because there are no rewards or punishments associated with failure or success. The 
emphasis is on holding kids, not adults, accountable. 

• If the state is serious about improving academics and holding schools accountable, 
it must provide districts with the resources and tools — that, is more money — to do 
the job. 

• The state should provide assistance in districts that are performing poorly, close 
schools if no improvements are made and re-open them with new leaders.... 

Fred Blosser, superintendent of Canton schools, agreed with Achieve's assessment. 

"The state's academic goals are not defined," he said. While Canton has adopted its 
own goals — graduating every child with the ability to think and reason, to have concern for 
others and to have a desire to continue to learn — the state's only concern is getting children 
to a minimum level of knowledge, he said. 

"All I am hearing is 'proficiency, proficiency, proficiency — and attendance.' There is 
more to educating a child than meeting minimum proficiency," Blosser said. 

[Ed. Note: Note that the emphasis is placed on only attaining a "minimum" level of profi- 
ciency. If anyone still has any doubts by now what the full implementation of education reform 
will mean for the children, teachers and schools of America, read the article again carefully. 
Reformer (change agent) David Hornbeck's original recommendations for rewarding or penal- 



446 



izing schools, depending on the results of individual children's proficiency test scores, is now 
being widely implemented across America. Children will pass or fail based upon these test 
scores. Teachers will be rewarded or penalized based on the test scores of children in their 
classrooms. Schools which do not function up to par will be shut down or "managed." Under 
increasing pressure, teachers will be devoting massive amounts of time to "teach to the test." 
And the teaching method of choice will be direct instruction/mastery learning which drills the 
students like robots until they can spout out the correct answer without thinking. 

One might wonder how Ohio students and schools fared with their first run-through of 
these new tests. The Akron Beacon Journal, in a follow-up article "State Ranking of Schools 
Sure to Rankle: Many Area Districts Are Scoring Very Poorly in Statewide Evaluation (April 
6, 1999) reported: 

About 1.8 million report cards went into the mail yesterday to the parents of each of 
Ohio's public school children.... 

While showing that students in general are doing better, especially on the state's ninth- 
grade proficiency tests, math continues to be a weak spot. 

And many schools in the area are falling short of academic goals, according to the 
reports. 

This year, only 15 of Ohio's 611 school districts achieved the highest rating of "effective." 
Not one of the 62 school districts in Summit, Stark, Portage, Medina or Wayne counties was 
in that elite group.... 

Akron Superintendent Brian Williams — whose district met only one of the 18 crite- 
ria — prepared the parents of his district for bad news by sending a letter home last week.] 



The Conference Board (one of the most influential international groups PRomoting the 
world management/control system and workforce training in the schools) advertised its " 1999 
Strategic Learning Conference: A Tool Kit to Power Business Performance" to be held March 
29-30, 1999 at the Marriott World Trade Center, New York City. On the front of the brochure 
at the very bottom it states, "The collective wisdom of executives worldwide." In regard to 
the subject of the conference, it states: 

The Strategic Learning Model was developed by Professor William Pietersen at Columbia 
Business School. At this conference, he and other leading-edge thinkers and corporate prac- 
titioners will walk you through a framework — from beginning to end — that will demonstrate 
how to create systematic learning initiatives that can result in better business strategy and 
bottom-line results. 

"Dry stuff, that," you say. Not at all. Under the "Making or Breaking Strategy through 
Culture" one reads: "Culture is the key to success. This fundamental dimension of your stra- 
tegic development can determine success or failure. Find out how to ensure you create a strong 
culture of success." Carlos Rivero, Ph.D., director of research, Delta Consulting, and Robert 
Bontempo, professor of executive education at Columbia Business School, are the presenters. 
The last two highlighted comments in this particular section state in distinctly Skinnerian 
terms the following: 

What Gets Measured Gets Done 



The Noxious Nineties : c. 1 999 



447 



and 

What Gets Rewarded Gets Done Repeatedly 

[Ed. Note: This entry demonstrates how every facet of our lives will, in the future, be based 
on Professor B.F. Skinner's scientific and manipulative philosophy extensively discussed in 
this book.] 

U.S. Secretary of Education Richard Riley delivered the sixth State of American Edu- 
cation speech early in 1999 in Long Beach, California. For the reader who has arrived at this 
point in this book, Riley's recommendations will come as no surprise. The reader could prob- 
ably have written Riley's speech, since it covers everything painstakingly and consistently 
initiated over time using the Hegelian Dialectic, semantic deception and gradualism. Riley's 
proposals— including the "communitarian" Together We Can "systems change" in the January, 
1999 entry— could have been lifted out of the 1946 Montgomery County Blueprint discussed 
in the preface to this book. 

In his February 16 speech Riley called for: Community Partnerships, charter schools, 
schools open year-round/morning-to-night, "Schools [of the future] serving as centers of com- 
munities"; focus on reading [referring to the "landmark study by the Academy of Science"]; 
"Democracy of Excellence"; early childhood initiatives [Parents as Teachers, etc.]; school uni- 
forms; violence-prevention programs; "sustained progress" [North Carolina, Maryland, Texas 
and Kentucky as "successes"— those states which have been struggling to keep their heads 
above water during the past twenty-five years, ed.]; teacher "quality"; "option schools"; "mag- 
net schools"; school-to-work "opportunities"; and more choices. Obviously, the interpretation 
of this information depends on one's definition of Riley's words! Astoundingly, based on no 
supportive evidence, Riley said: 

We know a good deal more about how to turn around low-performing schools: from giving 
teachers more time for training and collaboration; to redesigning the curriculum; to removing 
a principal who doesn't provide leadership; to issuing school report cards that measure real 
achievement over time; to enforcing effective discipline policies. 

[Ed. Note: To assist Secretary Riley in his effort to bring "transformation" to the education 
arena, the writer is providing the reader with a "Recipe for Educational Disaster" which the 
reader is encouraged to duplicate and send to Riley, others who may hold his position at a 
future date, elected officials, school superintendents, teachers, and anyone else who could 
benefit from its sage advice. The credit for the recipe (which has been "doctored up" a bit) 
will have to go to "anonymous," for the writer is unable to identify its author, but whoever 
you are — many, many thanks! 

RECIPE FOR EDUCATIONAL DISASTER 
Combine the following ingredients for a total disaster in education. 

Mix together: 

1 Plump Federal Government (pits and all) 
50 State Education Agencies 

2 Liberal Teachers Unions (NEA, AFT) 
1 National Diffusion Network 



448 

Sift together: 

Several Socialist Foundations (Carnegie, Ford, Rockefeller, Danforth, Spencer, Pew and 

Kettering) 
Graduate Schools 
Teachers Colleges 
Textbook Publishers 

Fold In: 

Planned Parenthood 

SIECUS (Sex Information Education Council of the United States) 
Drug Education 

Self-Esteem Education [Character Education] 

Death Education 

School-to- Work "techademics" 

(Be sure to remove all Basic Skills.) 

Add the Following Funds for Extra Spice: 

Title I (special provisions for disadvantaged youngsters) 

Title II (school libraries, textbooks, and instructional materials, also "educational tech- 
nology" and so-called "basic skills improvement") 
Title III ("innovative programs," psychological experiments, "exemplary" programs; 
additional guidance, and "special" programs for wonderful classes in health, popu- 
lation and global education, testing and counseling) 
Title IV (educational labs and centers, libraries, early childhood education, more guid- 
ance, testing and counseling, social workers and psychiatrists) 
Title V (grants and resources to the state education agencies for data collection and 
management, personnel development, and handicapped, migrant children, "com- 
munity education," ethnic heritage programs, bilingual education, opportunities for 
Indian students, emergency aid, etc.) 
If none of these ingredients are available in their original form due to "repackaging and 
renaming" because of "brand name" changes, presently available substitutes work just as 
well! Potential substitute items: Educators for parents (Parents as Teachers) or Together We 
Can "caring communities." 

Strain out all ABSOLUTE values and morals. 

Sprinkle with Change Agents. 

Simmer for twelve years to fourteen years. 

TOPPING: 

Add all four-year-olds, blend with year-round school and Head Start programs. 
Combine the following (stirring constantly) : 

Learner Outcomes 

Accreditation Standards 

(Teach-to-the-Test adds flavor, too.) 
Pour in secretive, federal- and state-mandated tests (personality profiles passed off as aca- 
demic tests) and report cards for parents. 

Add a huge supply of edible "tokens" for immediate gratification after correct responses 
blended into mixture. 

Baste until ALL are completely BRAINWASHED. 

Serving Size: Approximately 40,000,000 children 



The Noxious Nineties : c. 1 999 



449 



Serve leftovers to the next generation. (Ideal to serve to State Senators and Represent- 
atives, U.S. Congressmen and Senators, and other public officials during black tie 
dinners.) 

DESSERT SUGGESTION: TAXES A LA MODE 



With this last entry I rest my case. 

The deliberate dumbing down has now become the excuse for complete social change, 
including the privatization of education (the handing over to the unelected multinational corpo- 
rations the responsibility for education — actually training — of future citizens) . Such a transfer 
of responsibility will be facilitated by the creation of charter/magnet schools and passage of 
legislation providing tuition tax credits/vouchers. The workforce development system will, 
of course, be international, as is indicated by many quotes in this book. Parents who may be 
enthusiastic about the various choice proposals may change their minds regarding "choice" 
when their child becomes part of the corporate fascist quota system, being tracked into a career 
chosen for him/her by unelected corporate managers who set labor force requirements. 

Such quotas will be a part of the global planned economy. Parents will have no say re- 
garding their child's placement since there will no longer be an elected body, such as a school 
board, to whom they can complain. 

Only a dumbed-down, brainwashed, conditioned citizenry could willingly accept what is 
being offered Americans under the guise of "remaining competitive in an increasingly global 
economy," and relinquishing our sovereignty in the name of "global understanding and peace." 
The following quotations from Edward Hunter, the man who coined the term "brainwashing" 
and author of Brainwashing: The Men Who Defied It, 69 speak to what we as Americans can 
still do to reverse the process: 

Surely there can no longer be a trace of doubt that brainwashing is sheer evil. The fight 
against it is the culminating issue of all time, in which every human being is protagonist. 
There can be neither escape nor neutrality where such responsibilities lie. 

There can be neither front nor rear, for the great lesson that came from the brainwashing 
chambers was that while every man has a cracking point, every man's cracking point can be 
immensely strengthened. That is the job of home, school, and church. The mother, teacher, 
and pastor are in the front lines in this ideological conflict, and every word they say to their 
sons and daughters is important to the struggle, for character more than anything else will 
determine the outcome. 

Truth is the most important serum and integrity the most devastating weapon that can 
be used against the totalitarian concept.... Nothing should be allowed to interfere with the 
task of getting those facts across to the people who need and can use them. 

Only an informed people can shoulder their responsibility effectively. When free men 
know both what they are fighting against and what they are fighting to preserve and enhance, 
they are unbeatable, stronger than any strategy. 

What is absolutely essential is that the full facts be given to all our people, for mind 
warfare is total war. This approach can make our struggle for the mind the crusade it should 
be. Never since man received reason beyond the instincts of animal kind has there been 
a more important issue. In the fight to give man forever the opportunity to develop, every 
possible weapon must be utilized on the field of battle, which is everywhere. There is no 
"behind the lines" any longer. 



450 



Endnotes: 

1 The foregoing information was taken from Appendix A-l of the SCANS publication What Work Requires of Schools (U.S. 
Department of Labor: Washington, D.C, 1991). 

2 National Issues in Education: Goals 2000 and School-to-Work by John F. Jennings, Ed. (Phi Delta Kappa: Bloomington, Ind., 
and The Institute for Educational Leadership: Washington, D.C., 1995). 

3 For those interested in seeing how Skinner's animal training works with teachers, Madeline Hunter's Instructional Theory 
into Practice: ITIP is a collection of Hunter's instructional materials which she developed and taught throughout her career. 
This material may be purchased from: Association for Supervision and Curriculum Development, 1703 North Beauregard St., 
Alexandria, VA 22311-1714, Ph: 1-800-933-2723. 

4 World Education for All Forum Secretariat is located at: United Nations Educational, Scientific, and Cultural Organization, 7 
Place de Fonteroy, 75352 Paris 075P, France. 

5 Polytechnical Education: A Step by Robert H. Beck available by calling 1-800-637-7651. 

6 Ordering address: The Blumenfeld Education Report, Literacy Unlimited, Inc., 2527 Knox Drive, Rockford, Illinois 61114. 

7 Global Alliance for Transforming Education, 4202 Ashwoody Trail, Atlanta, GA 30319. 

8 Numinous: "1: supernatural, mysterious 2: filled with a sense of the presence of divinity; holy 3: appealing to the higher emo- 
tions or to the aesthetic sense; spiritual." [Webster's Seventh New College Dictionary [G. & C. Merriam Company: Springfield, 
MA, 1971.]) 

9 Please re-read the 1934 entry regarding Conclusions and Recommendations for the Social Studies funded by the Carnegie 
Corporation, the wording of which very closely resembles the GATE entry. 

10 Edwards Deming stated in an interview at the University of Pittsburgh in 1992 that "What I took to Japan [TQM] was not the 
American way. " 

11 "Non-hierarchical process of new leadership" is Total Quality Management (TQM). 

12 See 1991 entry concerning Association for Supervision and Curriculum Development's efforts in the Eugene, Oregon School 
District 4J for further information regarding Muller and his curriculum. 

1 3 Glavin, Matthew J . , Reach for the Stars: A Proposal for Education Reform in Georgia. (Georgia Public Policy Foundation: Atlanta, 
GA, 1991) 

14 In 1997 Michigan Governor John Engler funded and supported a report prepared by an appointed commission which recom- 
mended that Michigan's schools — as an example to the nation — be divested of public control and turned into "corporations." 
These "corporations" would give stock to families with children in the communities in which the schools were located and 
to employees of the schools — the employees would receive larger shares than the parent/citizen stockholders — and to other 
"interested entities" which could include business and corporate interests. Because of the structure of "corporations," the 
question was and could be asked concerning the possibility of investment by foreign, or certainly interstate, interests. This 
certainly raises the spectre of "corporate academies" being created out of our public schools. 

15 Those interested in obtaining a copy of the Carnegie Corporation's report A Nation Prepared: Teachers for the 21st Century, 
published in the May 21, 1986 issue of Education Week, can do so by writing to: Education Week, Suite 775, 1255 23rd Street, 
N.W., Washington, D.C. 20003. 

16 The Russian Deputy Minister of Education Elena Lenskaya was also a presenter at Willard Daggett's International Center for 
Leadership in Education, Inc., Second Annual Model Schools Conference in Atlanta, Georgia in the summer of 1994. She 
made a return appearance in the summer of 1998 at the Sixth Annual Model Schools Conference. 

17 The USCEFA's definition for "basic learning needs," as put forth in their literature, is "the essential learning tools — such 
as literacy, oral expression, numeracy, problem-solving and basic learning content — required by all people to develop their 
full capacities to live and work in dignity, to participate fully in development, to improve the quality of their lives, to make 
informed decisions." 

18 Education Development Center, Inc. in Newton, Massachusetts was the developer of the controversial social studies program 
Man: A Course of Study or M.ACOS, based on the work of B.F. Skinner and Jerome Bruner. 

19 See 1991 New American Schools Development Corporation entry. 

20 British Columbia Teachers' Federation, 100-550 West 6th Avenue, Vancouver, BC V5Z 4P2. 

21 For more information regarding Community Learning Information Network, write CLIN, 1776 K St., N.W, Fifth Floor, Wash- 
ington, D.C. 20006, Office: 202-857-2330. 

22 The writer considers this publication a "Must Read"! It may be ordered by sending $12.00 to: Billy Lyon, Route #1, Box 37, 
Edgewood, TX 75117. 

23 The reader may wish to order Ms. Rogers's first article, "In Loco Parentis: The Brave New Family in Missouri," as well as a 
complete copy of the excerpted article from: Chronicles, 934 N. Main Street, Rockford, IL 61103. 

24 From personal collection of this writer, provided by a fellow researcher. 

25 See previous reference to this conference in the 1981 entry of this book dealing with comments by Malcolm Davis. 

26 See 1993 entry for M. Donald Thomas's "A Plan for Action," which contains proposals from Dr. Don Thomas concerning $50 
fines for parents who refuse to volunteer. 

27 For further information on this subject, the NAEP, and violation of privacy, order a copy of "When Johnny Takes the Test: 
How Your Child Is Identified and Tracked to the National Data Bank — and Beyond" by Melanie Fields, Anita Hoge and Sarah 
Leslie from: Conscience Press, P.O. Box 449, Ravenna, Ohio 44266, or http://www.christianconscience.com. 

28 Florida and Texas were specifically selected because of their use in the data collection project for migratory children and their 
families. 

29 Videotape from private collection. 



The Noxious Nineties : c. 1 999 



451 



30 For more information about the NTL Institute services, or its approach to change, contact: Russell Bong, Marketing Manager, 
NTL Institute for Applied Behavioral Science, 1240 North Pitt St., Suite 100, Alexandria, VA 22314-1403. Phone: 1-800-777- 
5227; FAX: 703-684-1256. 

31 See entry for 1983 quote from book by Eugene Maxwell Boyce, The Coming Revolution in Education and the New Theory of 
Schooling. 

32 "The Truth Behind Outcome-Based Education" was produced and distributed by Compass and can be ordered by calling: 
1-800-977-2177. 

33 William E. Brock has also served as a former U.S. Secretary of Labor and as chairman of the Labor Secretary's Commission 
on Achieving Necessary Skills (SCANS), appointed by then-Secretary of Labor Elizabeth Dole. 

34 National Center for Education Statistics. Financial Accounting: Classifications and Standard Terminology for Local and State 
School Systems. (U.S. Government Printing Office: Washington, D.C., 1973) DHEW Publication No. (OE) 73-11800. 

35 The Commission on Skills of the American Workforce produced this 1990 report. The commission included Marc Tucker, 
who wrote the now-famous letter to Hillary Clinton following the election of Bill Clinton as President. It should be noted that 
Hillary Clinton was appointed to the commission by William Bennett, then-secretary of education. (See 1986 entry dealing 
with this story.) 

36 Please see Appendix XI "When Is Assessment Really Assessment?" and index references for Sticht and Oettinger. 

37 America 2000 eventually became Goals 2000. 

38 The report from the Second Annual Conference on Model Schools was written by Cynthia Weatherly and published in the 
January 1995 issue of The Christian Conscience (Vol. 1, No. 1). 

39 "Voluntary," for the time being. 

40 The words "forgotten half" are taken from the 1988 W.T. Grant Co.'s landmark report entitled The Forgotten Half: Pathways 
to Success for America's Youth and Young Families. (See 1988 entry for more about this report.) 

41 Susan Kovalik formed her ITI company in 1982 and has now moved to the state of Washington. If the reader is interested in 
accessing Kovalik's materials, her internet site address is: http://www.kovalik.com. This writer in no way endorses the work 
of Susan Kovalik, but is merely making this information available to provide the reader with original research. 

42 Challengers for Insight's address is: 520 N. State Road 135, Suite M-125, Greenwood, IN 46142. 

43 Fire in the Minds of Men: Origins of the Revolutionary Faith (Basic Books, Inc.: New York, 1980) was written by James H. 
Billington, librarian of the U.S. Congress in which he wrote in chapter 4, "The Occult Origins of Organization," the follow- 
ing: "The story of the secret socieites can never be fully reconstructed, but it has been badly neglected — even avoided, one 
suspects — because the evidence that is available repeatedly leads us into territory equally uncongenial to modern historians 
in the East and the West. ... In what follows I shall attempt to show that modern revolutionary tradition as it came to be inter- 
nationalized under Napoleon and the Restoration grew out of occult Freemasonry; that early organizational ideas originated 
more from Pythagorean mysticism than from practical experience; and that the real innovators were not so much political 
activists as literary intellectuals, on whom German romantic thought in general — and Baviarian Illuminism in particular — ex- 
erted great influence...." (p. 87) It is helpful for serious education researchers who have uncovered evidence similar to that 
of Billington's to have an historian of his caliber confirming the influence of these occultic societies on the stability of society 
in general, and education in particular, over the ages. 

44 For more background on the history of the "common ground movement" in education reform, see "Separation of School and 
State: Why We Cannot Sign," by Lynn and Sarah Leslie, published in the December 1997 issue of The Christian Conscience, 
PO Box 449, Ravenna, OH 44266 or posted on the web at http://www.christianconscience.com. 

45 Educational Testing Service was created in 1946 and was launched by an initial endowment of $750,000 from the Carnegie 
Corporation. 

46 For a summary report of the Former Pasco Teacher Survey, send a self-addressed stamped envelope to: TFAE, 2527 W. Ken- 
newick Avenue, #350, Kennewick, Washington 99336. 

47 Ms. Kosiec can be reached by writing: Barbara McFarlin-Kosiec, 635 N. Fisher, Kennewick, Washington 99336. She is also 
available for speaking engagements/interviews. 

48 Order National Issues in Education by calling 1-800-766-1156. The price is $18, plus $3 S&H. 

49 A note at the bottom of the article states: "The article was approved by the ACSI Executive Board." 

50 If the reader is interested in reading this article in its entirety, please write: Association of Christian Schools International, 
P.O. Box 35097, Colorado Springs, Colorado 80935-3509, or call 1-800-367-0798. 

51 American Family Association Law Center's address is: P.O. Drawer 2440, Tupelo, Mississippi 38803; and telephone: 1-601- 
680-3886. 

52 Los Horcones's e-mail address is: walden@imparcial.comm.mx. 

53 John Naisbitt is the author of Megatrends and Megatrends 2000, required reading for former Speaker of the House Newt 
Gingrich's seminars. 

54 This is wording found in PPBS/MBO material. 

55 Esther Dyson was also a speaker and active participant in the Progress and Freedom Foundation's meeting in Atlanta in 1994, 
"Cyberspace and the American Dream." 

56 Refer to the 1984 National Council for Educational Research entry for the history of The Reading Excellence Act. 

57 Private conversation with teacher who wishes to remain anonymous due to the political heat generated by these reading 
discussions. 

58 Those interested in the activities of the Frank Porter Graham Child Development Center can access its website at: http: 
//www.fpg.unc.edu. 



452 



59 George Soros is chairman of the Soros Fund Management. Born in Budapest, Hungary, Soros received his B.S. degree from 
the London School of Economics in 1952. Married for the second time to Susan Weber Soros, they have raised five children, 
two born of his first wife. Maintaining homes in Manhattan, London, and Southampton and Bedford, New York, he describes 
himself as a "financial, philanthropic, and philosophical speculator." Investment funds bearing his name have earned him 
a fortune estimated at $2.5 billion. He has now become more well known for giving money away than for amassing it, and 
has established a global network of philanthropic organizations. In the early 1980s he used his wealth to foster political 
and philosophical freedom in Eastern Europe. To overcome censorship in his native Hungary, Soros distributed photocopi- 
ers throughout the country. After building a record of worldwide giving which tops over $350 million annually, Soros has 
turned his focus on the United States, sponsoring controversial projects dealing with social programs — including drug policy 
reform and poverty (Vanity Fair. November, 1997). The August 14, 1998 issue of USA Today carried an article entitled "Soros 
Stirs Ruble Debate" which states: "But few people knowledgeable of financial markets — even those outside financial circles 
who dislike Soros for his donations to assisted suicide and the legalization of marijuana — are prepared to accuse him of a 
conspiracy to cause a Russian panic." 

60 Refer to the 1993 entry dealing with H.R. 6. 

61 Ms. Fessler can be reached at: 7530 Ross Road, New Carlisle, OH 45344, 937-845-8428, diana@fessler.com or http:// 
www.fessler.com. 

62 Formerly known as the Drug Free Schools Act. 

63 National Center for Educational Statistics within the Office of Educational Research and Improvement of the U.S. Department 
of Education produced these handbooks for use by state and local education agencies in collecting data on all aspects of 
school- and community-related activities, arranged in detailed collection codes. 

64 These handbooks are a central part of the Planning, Programming, Budgeting and Management System (PPBS) extensively 
documented in this book. 

65 "Early Warning Family Response," the government's "Action Plan to Deal with Violence," which illustrates the oppressive 
hand of government at work, can be obtained by calling: 1-800-4ED-PUBS (1-800-433-7827) or by e-mail at edpuborders 
©aspersys.com. 

66 National School Conference Institute (NSCI), P.O. Box 37527, Phoenix, AZ 85069-7527, Toll free: 888-399-8745, http:// 
www.nscinet.com 

67 For more information on this project, contact L. Allen Phelps, Center on Education and Work: 608-263-3696 (Ph.) or 608- 
262-3063 (Fax) or aphelps@soemadison.wisc.edu. 

68 For more information about Michael Farris and HSLDA, visit http://www.christianconscience.com. 

69 Edward Hunter. Brainwashing: The Men Who Defied It (Vanguard Press, Inc.: New York, New York, 1956), chapter 11, "A 
Matter of Integrity. " 



The Noxious Nineties : c. 1999 453 



AFTERWORD 



It is agreed by many Americans that the United States is living on "borrowed time," 
but how many of us are willing to reflect seriously on what has happened and how the 
situation can be reversed? In 1985 this writer, in her slim booklet Back to Basics or OBE... 
Skinnerian International Curriculum?, warned: 

Whether or not the United States of America — through citizen preoccupation with fashion, 
TV, sports, gourmet cooking, jogging, making a living, etc., all of which are perfectly 
legitimate and worthwhile activities in a "free society," coupled with lack of understanding 
of the internationalists' use of gradualism and Hegelian philosophy to attain their 
goals — slides into the totalitarian black hole of a socialist one world government, with the 
resulting loss of freedoms our ancestors fought and died for, depends on whether YOU, the 
reader, are convinced the problems described in this book are serious enough for you to 
spend a few minutes writing to your elected officials.... If the present situation continues 
unchecked, by the year 1998: children now in kindergarten will have been through thirteen 
years of Skinnerian world government brainwash under the deceptive guise of the "New 
Basics"; you and I may no longer be around to vote; and the 18-year-olds may well be on 
their way to vote what historians have referred to as the greatest experiment in human 
freedom straight down the tubes. 

Well, this writer is still around, and fortunately, so are many other concerned Americans 
who in 1985 were in their fifties. What this writer predicted has for the most part happened, 
although it is difficult for the average American to identify or to nail down since the loss of our 
freedoms at the ballot box — and more importantly through regional government which uses 
unelected officials to make decisions — has been introduced very gradually. 

The most serious problem resulting from the "deliberate dumbing down" is that 
important decision making is increasingly being delegated to unelected Americans. Citizens 



455 



456 



are being called upon to participate in the political process through communitarian 
group management procedures (site-based school management, task forces, blue-ribbon 
commissions, town meetings, group consensus, call-in talk shows, polling, etc.) and public 
policy is being made using the "uninformed" opinions of those who have, through no fault 
of their own, been dumbed down by being either mis-educated or not educated at all in the 
traditional sense. Many cannot even read a newspaper and depend on TV for their knowledge 
and understanding of current events. 

Part of the solution to this problem could be to return all decision making to duly-elected 
officials. That, of course, would not assure that those who are elected would be any 
better qualified to make decisions than those presently calling the shots in Delphi circles 
and the numerous unelected decision-making venues at work in our country. However, 
accountability would be restored, and citizens could once more, as free individuals — and, 
I repeat, individuals— vote these people out of office and elect persons who are educated 
in the traditional disciplines of history and government (the U.S. Constitution), economics 
and basic academics. Eventually, if the public education system can be restored to its former 
excellence, our nation would be able to get back on track. 

Seldom, if ever, does one hear the following fairly simple solution suggested when the 
question is posed regarding how to restore our public education system to its traditional 
(pre-1930's) state of excellence: 

Elected officials at the local level have the authority to re-establish public education 
according to the wishes of the taxpayers in each local community. Teachers with degrees 
in specific subject matter could be hired without requiring that they have state or national 
certification which subjects them to seemingly ruinous training courses which do not deal 
with academic material. However, the funding of the schools must remain locul if citizens 
wish to re-create truly academic institutions. There can be no tuition tax credits, vouchers, 
charter schools, or laundered state tax monies (monies co-mingled with federal money) if 
citizens wish to be 100% in charge of the education philosophy; i.e., curriculum, hiring 
of teachers, teaching methods, etc. Americans forget too easily the old saying, "He who 
pays the piper calls the tune." For those who find such a solution unworkable due to 
the discrepancies in local community tax bases, I say refer to the beginning of this book 
regarding the ability to educate on a shoestring. Education costs little: brainwashing and 
social services are very, very expensive. 

Granted, the above "solution" may sound simplistic, and in this day and age would not 
be easy to implement in urban areas, where many of the needs are the greatest. However, 
when one surveys the urban education landscape as presently constituted, there are few 
bright spots. Billions of dollars in tax money, which should have gone into true academics, 
have been siphoned off into the operation of huge and unnecessary bureaucracies. As one 
has seen after reading this book, community services and changing students' values have 
been judged more essential than teaching a child to read, to understand his historical setting, 
the essentials of science, and how to calculate. Basic academics, in most inner city schools 
under the umbrella of Effective Schools Research, have been taught using Skinnerian mastery 
learning programs which have resulted in producing low test scores. Discipline has broken 
down to such an extent that the prescription of the drug Ritalin is commonplace, retired 
military officers are running urban schools, uniforms are mandated in many public schools, 
and the police are being called upon to keep order in the former halls of academe. 



Afterword 



457 



There is no question that much careful and sensitive thought must go into planning 
for the urban schools, keeping in mind at all times that most of the problems facing these 
schools and communities have been a result of what you have read about in this book and 
the willingness of elected officials to accept the "carrot" along with the big stick (the money 
with all the federal and state controls on how it is to be used) . 

It is never too late to see the light at the end of the tunnel. Nothing positive can be 
accomplished, regardless of how much money and good will exist, unless we Americans 
learn again to stand on our own two feet, as individuals, not as members of the "group" 
using Total Quality Management, but as individuals with God-given intellects; as individuals 
who accept their responsibility to be contributing participants in our constitutional republic 
instead of being observers in a so-called "participatory" democracy where only those who 
agree with the status quo will be allowed to have a voice. Our nation did not become great 
through group action. It became great in every way due to individual Americans thinking 
and acting independently, caring for one another and not expecting the government to 
care for them or their neighbors, and accepting responsibility for their actions without 
blaming the "environment" for all their misdeeds — from broken marriages, smoking and 
drinking to violent behavior. 

To repeat the theme of this book: We are human beings, not animals. We have free will. 
We can choose and build our futures, something animals are not capable of doing. Animals 
are justified in blaming their environment for their behavior! We, as human beings, with 
intellect, soul and conscience, do not have such justification. 

Very recent history, being made as this book is written, should serve as a wake-up 
call. We, as citizens, seem increasingly unable to make the important connections between 
individual personal behavior and its effect on the nation/world as a whole. There can be 
no stability in our world if common decency (morality) is shunted aside and considered a 
"personal matter" not affecting the entire body politic (personal behavior vs. public morals). 
Our children deserve more from those adults who bemoan the sorry state of this nation 
while making excuses for public officials' immoral conduct, and who are poor examples 
of good behavior themselves. How can we expect our children to grow up and become 
responsible citizens and future leaders if we sanction immorality at all levels of personal 
life and government? How can our children accept our criticisms and correction when 
caught lying or stealing when they see us making excuses for such behavior at the highest 
levels of government and leadership? 

Truly, the "non-absolutist value vaccine" (extensively documented in this book) has taken 
and can be expected to further sicken our nation in the absence of a return to dependence on 
very clear and simple moral standards, such as the Ten Commandments which used to hang 
on the walls of every school and public building in this nation. 

Of utmost importance for all Americans at this critical juncture in American education 
is for us not to accept a solution that may in the long run turn out to be more harmful than 
the present unsatisfactory state of American public education. Some solutions being floated 
around sound good, such as the complete abandonment of public education in favor of a 
privately operated system in which parents ostensibly could choose the school to which they 
send their children. It is important to take a very hard look at such solutions. First, who is 
going to run those schools? Are parents aware that the New American School Development 
Corporation and its charter schools for workforce training were set up precisely for the 
purpose of replacing the deliberately "crashed" public schools? Where would children 



458 



in the low-income urban areas end up? What private and/or "publicly-funded private" 
entities are waiting in the wings to orchestrate and relegate these students into dead-end 
workforce training institutions? 

As explained in the preface and at the end of this book, the global workforce training 
system is being put in place as I write. For example, on June 28, 1999, Gene Sperling, the 
director of the President's Economic Council, in an interview with CNN's "Moneyline" said 
that some of the $100 billion "surplus" could be used to make sure "children are ready to 
be the workers of the next century." What real "choice" will parents have when it comes to 
where their children will be so-called "educated" (trained) to be the "workers of the next 
century"? The powers-that-be must be pretty sure of themselves to so blatantly refer to 
education's primary goal as creating little workers. Are American parents really so dumbed 
down that they find such comments coming from the highest office in the land acceptable? 
Even if those operating charter schools had the best of motives, what is going to happen 
to the majority of children who come from homes where both parents work, where there 
is only one parent, where there are numerous societal problems which would impinge 
upon the freedom of parents to be a part of the privately-supported system— sell their 
children into serfdom? 

"Choice in education" is an appealing concept until put under the microscope of 
1990s reality. At this point in time, "true choice" with no strings attached exists only for 
homeschoolers and private (independent and religious) schools that have not in any way 
compromised their freedom to do exactly as they wish. By that, the author means that such 
an entity has never: (1) accepted one single penny which has at any time, in any fashion, 
been a source of government — at any level — revenue (tax money; i.e., vouchers, tax credits, 
or funding from private sources subsidized in any way by the government); and or (2) availed 
themselves of any services provided by local, state, or federal governments or private sources 
subsidized in any way by the government (i.e., extracurricular school activities including 
music, art, sports, field trips, computer use, etc., or health and mental health services which 
may have been provided when the student was enrolled in the public school system). "True" 
choice is an option for the minority of children whose parents had better be on guard 
when offered free computers and software to learn the curriculum required in order to 
obtain the certificate in mastery necessary to obtain a job or be accepted in college. 
"True" choice is not an option for the majority of children whose parents are not in a 
position to avail themselves of it. 

A massive national effort to restore true local control of our public schools seems 
to this writer to be the only "real" long-term solution which will guarantee freedom and 
upward mobility for all our children. Such a solution is no more difficult to implement than 
solutions presently being offered by those who wish to "use" America's youth for their own 
profit-seeking motives-resulting in the loss of economic and political freedom. 

In order for such a solution to be implemented, elected officials must understand from 
whence came the problems in education. It is for that reason, for the true understanding 
of public officials, that this book was written. The author hopes and prays that the great- 
est number of elected officials will read this book and take the necessary courageous action 
to reverse the situation which, if left unattended, represents a grave threat to the continued 
freedom of our nation. 



—Charlotte Thomson Iserbyt 



GLOSSARY 



GLOSSARY 



Accountable/ Accountability. See Behaviorist Terminology section at end of Glossary 

Affective Domain. The area of learning that deals with feelings, beliefs, values, attitudes, and 
motives — all those inner factors that determine behavior and responses to stimuli. By 
changing or modifying the affective domain, educators can control behavior, or so they 
believe. (See Direct Instruction, Mastery Learning, Taxonomy of Educational Objec- 
tives, and Appendix XIX) 

Assessment. Has come to be accepted as a means of measuring student progress toward inter- 
national, national, and state goals. It should be noted that there is no dictionary definition 
which defines "assessment" in this way The education establishment has co-opted this 
word over time. (See Authentic Assessment and Appendix IV and XI) 

At-Risk Student. Any "student who is at risk of not meeting the goals of the educational 
program... or not becoming a productive worker" (Iowa State Standards which match 
the National Goals). Programs such as Parents as Teachers (PAT), 21st Century Schools, 
Healthy People 2000, and others define at-risk categories. (See 1992 Parents as Teachers 
articles by Laura Rogers) 

Authentic Assessment. Measures a student's behavior; alternative performance measure of 
a student's ability to solve problems and perform tasks under simulated "real life" situ- 
ations. It measures student responses which demonstrate what students think, do, and 
have become. These outcomes are recorded during normal classroom involvement such 
as recess, lunch, field trips, and at other unexpected times. Teachers may use hand-held 
computer scanners that scan the students' bar-coded names and responses, then transfer 
the information into a computer at a later time. (See Appendix XVI) 

Behavior Theory, Behavior Modification, Behaviorist, Behaviorism. (Refer to Behaviorist 
Terminology section of the Glossary and Appendix II, III, V and XIX) . 

Benchmark. The following definition is taken from "A Report from the Committee on Labor 
and Human Resources, Summary of S. 14" and is also included in Appendix XV: 

This act will require States to measure and report annually on bench- 
marks—measurable indicators of the progress the State has set out to achieve in 
meeting broad work force development goals related to employment, education, 
and earning gains. 

Benchmarks related to employment and earning gains include, at a minimum, 
placement and retention in unsubsidized employment for one year, and increased 
earnings for participants. 

Benchmarks related to education include, at a minimum, student mastery of 
certain skills, including: academic knowledge and work readiness skills; occupa- 



G-3 



G-4 



the deliberate dumbing down of america 



tional and industry-recognized skills according to skill proficiencies for students 
in career preparation programs; placement in, retention in, and completion of 
secondary education; placement and retention in military service; and increased 
literacy skills. It is expected that States will develop additional benchmarks. 

Block Grants. Part of the New Federalism movement of the early eighties, block grants send 
federal assistance, with all its federal regulations, directly to the local level, bypassing the 
traditional constitutional oversight of the state legislature. Block grants are a necessary 
part of unconstitutional regional government. They are sold to the citizens as enhancing 
local control when in fact they do just the opposite by removing an important elected 
official check at the state level. The 105th Congress (1998) Republican-backed Dollars to 
the Classroom Act is a good example of how this state legislative bypass is effected. 

Career Transcript. The SCANS 2000 Center at Johns Hopkins University in Baltimore has 
developed something called a "career transcript," the purpose of which is to provide 
quick, more accurate summaries of applicants' education and work experiences. A career 
transcript "can be thought of as a certified resume of lifelong learning, " SCANS 2000 Chair- 
man Arnold Packer wrote in a recent paper on the proposal. "The problem with academic 
transcripts," Packer said, "is that they're designed for students going on to other schools; 
they have little currency in the workplace." The career transcript "sort of fits between" 
resumes and school records, Scott Brainard, a SCANS/2000 program evaluator, said. It 
would contain a job applicant's scores on standardized tests such as the SAT or tests from 
national vendors like Microsoft. 

The transcript also would include an assessment of workplace performance based on 
supervisors' evaluations, and an assessment of school performance based on benchmarked 
classroom tasks. The common language of the career transcript would be provided by 
SCANS (Labor Secretary's Commission on Achieving Necessary Skills), a 1991 panel that 
identified skills workers need in such areas as planning, communicating, working with 
others and using technology. 

[The above information was excerpted from a report of the Association for Career 
and Technical Education, which was downloaded from the Internet, January 24, 1999 
(http : / / www. avaonline. or g/ Weekly, html) , ed . ] 

Carnegie Unit. A system developed in 1905 for standardizing the high school curriculum. Tra- 
ditionally, students were required to complete a certain number of Carnegie Units (seat 
time in a specific subject area) in order to graduate (i.e., 4 units of English, 4 of math, 4 of 
history, 4 of science, etc.) . The restructuring of American education from inputs to outputs 
(outcome-based education) requires the removal of the Carnegie Unit as an indicator of 
academic exposure in order to graduate. 

Certificates of Initial and Advanced Mastery (CIM and CAM). These certificates are a result 
of the 1990 report America's Choice: High Skills or Low Wages! produced by a commis- 
sion appointed by the National Center on Education and the Economy. This group, led 
by Marc S. Tucker, was co-chaired by former U.S. Secretaries of Labor and chaired by 
Ira C. Magaziner, close friend and advisor to the Clintons. [Marc Tucker's organization 
holds trademark ownership of "Certificate of Initial Mastery" and "Certificate of Advanced 
Mastery." That being the case, why are states and localities issuing what amounts to a 
privately validated diploma? ed.] 



Glossary 



G-5 



The following excerpts regarding School-to-Work (STW) and CIM and CAM have 
been taken from The School-to-Work Revolution by Lynn Olson (Perseus Books: Reading, 
Massachusetts, 1997), pp. 191-193. [The writer recommends Olson's book for those inter- 
ested in the history of school-to-work activities in the United States, without necessarily 
endorsing her views, ed.] 

The report advocated creating an Americanized version of the European 
systems, beginning with a radical restructuring of the American high school. All 
students would have to demonstrate that they had met a high standard of academic 
achievement during the first stage of their secondary school education. Those 
who did would earn something called a "certificate of initial mastery," typically 
at around age 16. [The CIM also requires mastery in the various attitudes and 
citizenship skills declared necessary for employment and citizenship, ed.] During 
the upper stage of secondary school, students could either enter college directly, 
spend additional time preparing for the more competitive colleges and universi- 
ties, or begin to pursue a professional and technical certificate, which most likely 
would require some postsecondary education. 

At the time, Vera Katz was vice chairman of the House Education Committee 
in Oregon and a member of the National Center's board of directors. Katz saw an 
opportunity to apply the adage that "all politics is local. " From her offices in Salem, 
she decided to put the commission's recommendations to the test. The bill that 
she sponsored in the Oregon legislature mirrored many of the recommendations 
in America's Choice. It passed in 1991 with little opposition and with the strong 
backing of both the governor and the state's business community. 

It called for all students to earn a certificate of initial mastery [CIM] in the core 
academic subjects by grade 10. After that, all students would pursue a "certificate 
of advanced mastery" (or CAM) in one of six career pathways for their last two 
years of high school. Within each pathway (in arts and communications, business 
and management, health services, human resources, industry and technology, and 
natural resources) students could earn either a college-preparatory endorsement 
or a professional-technical endorsement, or both. 

Supporters of the new law hailed it as the end of tracking in the high schools. 
Because all students would have to meet a common academic standard to receive 
a certificate of initial mastery, all would have to demonstrate command of high- 
level academic content. 

Opponents of the new law depicted it as tracking writ large. They claimed 
that because students at the age of 16 would have to select a career pathway 
and decide whether they were pursuing entry in a four-year college or not, their 
opportunities would be limited. They also worried that the law would encourage 
students to drop out of high school once they had earned the certificate of initial 
mastery. 

The Oregon Education Association, the state's largest teachers' union, came 
down hard against the new law. "Schools should not be forged as a service industry 
for business, nor should we be misdirected by the assumption that our economic 
ills are somehow the fault of the public schools," the union protested. 

The majority of parents and students surveyed also opposed having to 
choose a career focus by the middle of high school, particularly if young people 
could not change their minds. However, they liked the idea of providing both col- 
lege-bound and non-college-bound students with a sense of how their academic 
courses applied to the real world, and they thought high schools should provide 



G-6 



the deliberate dumbing down of america 



students with some career preparation. 

Change Agent. A term used by many people, including President Clinton, leading educators, 
and social engineers, to identify individuals, highly trained in the group process and in 
the Delphi Technique. These people are designated to bring about controversial change 
in education, in the operation of our local and state governments, and at the federal and 
international levels. (See Preface regarding Iserbyt training to become a change agent, 1947 
regarding establishment of National Training Laboratory, 1973 Ronald Havelock Change 
Agent Guide, 1993 letter from Lawrence Lezotte, and Appendix XIV) 

Character Education. Programs which are offered under the following labels of: "values educa- 
tion," "citizenship education," "civic education," and similar titles. The purpose of these 
courses is to teach students global, core, humanist, no right/no wrong values. The process 
of identifying the core values involves the entire community, often bypassing the views of 
elected school boards. The first attempt at devising such a curriculum was made in 1964 
when the American Humanist Association began its involvement in "ethical education." 
The roots of humanistic moral/character education lie in the United Nations Educational, 
Scientific, and Cultural Association (UNESCO) . As a school board director trying to remove 
values clarification from the curriculum in 1977, I was informed by a Congregational 
minister at a public school board meeting that parents did not have a right to determine 
their children's values — that it was up to the government schools to do so! 

Many well-meaning groups have attempted to implement "character education" 
programs with the intention of instilling biblically supported values. It should be noted 
that attempting to instill Bible-based virtues without spiritual understanding or instruc- 
tion will always result in less-than-successful results. Also, to base "commonly-held" 
character qualities on prevailing law does not take into consideration possible changes in 
the law. Another important consideration with character education is who will teach it. 
School boards have been consistently hamstrung by civil rights statutes when it comes 
to hiring teachers whose lifestyles exhibit desirable character qualities and who are good 
role models for students. 

(See 1933 Humanist Manifesto I, 1933 Onalee McGraw pamphlet Secular Human- 
ism in the Schools, 1941 Education for Destruction by Philadelphia, Pennsylvania public 
school teacher Bessie Burchett, 1946 Brock Chisholm speech, 1964 "Ethical Education" 
published in Free Mind [the journal of the American Humanist Association] , 1970 Leonard 
S. Kenworthy "Background Paper," Core Values/ Virtues, and Appendix V and XIX) 

Charter School. A public school created by a partnership between the private sector and gov- 
ernment for the purpose of providing additional academic and other choices for students. 
Charter schools must comply with federal and state laws in order to receive funding. How- 
ever, these schools have no elected board, making them an excellent example of taxation 
without representation. Charter Schools are supported by conservative Republicans as 
well as liberal Democrats, including President Clinton. (See 1991 NASDC article, Magnet 
Schools, and Appendix XII) 

Choice. Allowing parents to enroll their children in any public school within the district or 
inter-district, or, depending on the scope of the choice program, providing tax credits that 
can be applied toward tuition in private schools. All schools receiving federal funding must 
adopt "voluntary" national standards which force students to conform to government- 



Glossary 



G-7 



defined and dictated core beliefs, values, and attitudes. "Such choices should include all 
schools that serve the public and are accountable to public authority," asserted America 
2000: An Education Strategy (U.S. Department of Education: Washington, D.C., 1991), p. 
31, which was developed under Secretary of Education Lamar Alexander. 

Presently, parents have the choice to enroll their children in public schools, private 
or religiously affiliated schools, or home school them. To adopt "choice" solutions will 
bring government regulation to all choices because public money cannot be expended or 
credited without accountability; it is illegal to do so. The recent move to support privately 
funded vouchers by giving tax deductions for them is a backdoor approach which will 
boomerang because even a tax deduction has to be accountable. A study of the gradual- 
ism involved in regulation of the child care industry is a case in point. As parents were 
allowed tax deductions for child care, regulations were suddenly drawn up and imposed, 
in many cases forcing the home-based child care providers out of business or into an 
underground operating mode. Family members who were providers of child care were 
excluded from the exemption, etc. Another result has been the regulation of private and 
government child care providers to the point that even the food they offer the children 
must meet a standard. Beware of "choice" proposals, no matter who is offering them. (See 
1991 Virginia Birt Baker's "Educational Choice — The Education Voucher, Tax Credits, and 
the Nonpublic Schools," and Resource List) 

Citizenship Education. The following definition comes from "School-to-Work and Ralph Tyler" 
by Dean Gotcher in Institution for Authority Research Newsletter (April 1998): 

Education which produces a socialist (dialectic-minded) citizen who is not 
concerned with unalienable rights (given by a higher authority) but with human 
rights (determined by the group in consensus, guided by social engineers). With 
the former, one is innocent until proven guilty, since facts determine one's guilt; 
with the latter, one is guilty until proven innocent, since feelings (personal, social 
felt needs) determine one's guilt or innocence. 

(See Character Education, Citizenship Education, and Values Clarification) 
Climate. See Environment. 

Cognitive Dissonance. Disorganization of thoughts, mental confusion, and emotional tension 
caused by behavior modification which conflicts with one's values. Such manipulation 
causes many to rethink and modify their values in order to conform to expected behavior. 
(See 1991 "Paradigm Change: More Magic than Logic" by John C. Hillary, and Appendix 
XIII and XIX) 

Cognitive Domain. (See Taxonomy of Educational Objectives and Appendix XIX) 

Common Ground. A place of compromise; a p/eascmf-sounding strategy developed by change 
agents for silencing opposing voices and winning community support. The adjective 
"bipartisan" is used more and more in a positive way as elected officials accept the per- 
ceived "need" to come to consensus in order to avoid conflict. (See Consensus Building, 
Delphi Technique, Group Process, Synthesis, and Appendix XXII) 

Community Education. A process, not a program, by which the total community is involved 
in decision making by consensus, using the group process and the Delphi Technique. 



G-8 



the deliberate dumbing down of america 



The original purpose of Community Education was and still is to put all services (health, 
leisure, senior citizen, recreation, etc.) under the umbrella of the school district. Com- 
munity Education literature states that the purpose of Community Education is to change 
the attitudes and values of community residents. Community Education seeks to eliminate 
elected officials, replacing them with politically correct, unelected members of a com- 
munity council who will not challenge controversial new programs. Government officials 
who promote Community Education have likened it to the Chinese Communist communal 
system. "Group process," "participatory democracy," and "sustainable development" are 
other terms associated with Community Education. (See 1979 October article on school- 
based clinics, 1994 November Iserbyt article in Education Week and Appendix I) 

Consensus Building. The process by which students, schools, communities, or groups of 
people learn to give up individual beliefs and ideas in order to work for "common goals." 
These may be dictated from the top down (international to local), yet be promoted as 
grassroots ideologies. Consensus building changes beliefs through pressure to conform 
to group thinking. (See Common Ground, Delphi Technique, Group Process, Synthesis 
and Appendix XXII) 

Core Values/Virtues. The late Ernest L. Boyer, former president of the Carnegie Foundation for 
the Advancement of Teaching, defined "The Core Virtues" in his book The Basic School: 
A Community for Learning — An Introduction to the Basic School as 

The Basic School is concerned with the ethical and moral dimensions of a 
child's life. Seven core virtues— honesty, respect, responsibility, compassion, self- 
discipline, perseverance, and giving — are emphasized to guide the Basic School 
as it promotes excellence in living, as well as in learning. 

He goes on to say under a section called "Living with Purpose" that 

The core virtues of the Basic School are taught both by word and deed. 
Through curriculum, school climate, and service, students are encouraged to apply 
the lessons of the classroom to the world around them. 

On face value, who could question the above seven core virtues? A problem arises when 
a student interjects his religion's definition of any of these core virtues. That is when 
values education becomes sticky and when that student will be put down with a retort 
from the teacher similar to "That's your definition." Unless the core virtues have a solid 
religious or philosophical base which does not allow for situational ethics, instruction in 
this controversial area becomes useless, confusing, and a waste of time. (For Example: the 
culture of the Netsilik Eskimo Tribe, discussed in Man: A Course of Study [MACOS], the 
controversial B.F Skinner/Jerome Bruner social studies program, considered the putting 
of elderly people out on the ice to die the "compassionate" and "responsible" thing to do. 
(See 1975 MACOS entry and Appendix IV, V and XIX) 

Critical Thinking. Professor Benjamin Bloom defines good teaching as "challenging students' 
fixed beliefs." Critical thinking does exactly that using Bloom's Taxonomy and values 
clarification to bring about attitudinal and value change. (See Appendix XIX and XXIII) 

Delphi Technique. The social scientists' label for a communication technique used to get a 



Glossary 



G-9 



diverse group to arrive at a predetermined consensus position through circulating infor- 
mation for comment in several rounds, synthesizing the responses until all agree. If a 
participant's view cannot be synthesized with the group's view after repeated rounds, 
then the premise must be declared invalid and abandoned. More recently, the foregoing 
original definition has evolved into allowing the participant's opposing view to be aban- 
doned in order to achieve consensus. (See Common Ground, Consensus Building and 
Group Process) 

Dialectic, Hegelian. Common ground, consensus, and compromise/thesis-antithesis-synthesis. 
(See Preface, Common Ground, Consensus Building and Group Process) 

Direct Instruction (DI). Developed by Siegfried Engelmann in the 1960s and known as DISTAR 
(Direct Instruction System for Teaching and Remediation) or SRA's "Reading Mastery," 
it was one of the models used in Project Follow Through. Direct Instruction is based on 
Skinnerian operant conditioning and has traditionally been used with special education 
students. DI requires teachers to teach from a script and to use hand signals and sounds to 
punctuate the "learning" process. The following excerpts taken from the research of those 
deeply involved in the development and promotion of Direct Instruction provide important 
information about this Skinnerian "scientific, research-based" method of instruction. 

(1) "The Direct Instruction Model emphasizes group face-to-face instruction by 
teachers and aides using carefully sequenced lessons in reading, arithmetic, 
and language. These programs were designed by Siegfried Engelmann using 
modern behavioral principles and advanced programming strategies (Becker, 
Engelmann, & Thomas, 1975), and are published by Science Research Associ- 
ates under the trade name DISTAR." ("Sponsor Findings from Project Follow 
Through," Wesley C. Becker and Siegfried Engelmann, University of Oregon, 
Effective School Practices, Winter, 1996, page 33) 

(2) "Direct Instruction: A behavior-based model for comprehensive educational 
intervention with the disadvantaged. " Paper presented at the VIII Symposium 
on Behavior Modification, Caracas, Venezuela, February, 1978. Division of 
Teacher Education, University of Oregon, Eugene, Oregon. Reference Notes at 
the end of the article include: "A Constructive Look at Follow Through Results" 
by Carl Bereiter, Ontario Institute for Studies in Education, and Midian Kurland, 
University of Illinois at Urbana-Champaign, originally published in Interchange 
(Vol. 12, Winter, 1981) , which was reprinted, with permission, in Effective School 
Practices (Winter, 1996). 

(3) "First, he (Engelmann) hypothesized that children would generalize their learn- 
ing in new, untaught situations, if they could respond perfectly to a smaller set 
of carefully engineered tasks. He also favored a rapid instructional pace and 
choral group response, punctuated by individual student responses, believing 
that this would heighten student engagement and allow teachers to perform 
regular checks for student mastery," from "Making Research Serve the Profes- 
sion" by Bonnie Grossen, Research Associate with the University of Oregon's 
National Center to Improve the Tools of Educators, a project funded by a grant 
from the U.S. Office of Special Education, and publisher of Effective School 
Practices, published in the Fall 1996 issue of American Educator, journal of the 
American Federation of Teachers. 



G-10 



(See Effective Schools, Mastery Learning, and Appendix II, III, XVII and XXI) 

Effective Schools. The following definition is taken from an article entitled "Effective Schools 
for Results" published in The Effective School Report (July 1984): 

Over the past 30 years there have been three primary programs related to the 
design and implementation of Effective Schools and successful learning results. 
Each effort focused on different aspects: behavioral change and application of 
learning theory to produce successful learning results; identification of sociologi- 
cal factors operating in Effective Schools; teaching strategies to effect learning; 
and the combination of these variables and practices in a systematic approach to 
achieve learning and management results. The results of these research programs 
offer proven practices which, when combined in an interdisciplinary approach, 
can deliver "predictable excellence" in educational results, the ultimate criterion 
of an Effective School program. 

The following professionals and groups have been involved in this research 
and development: Wilbur Brookover, Ron Edmonds, Effective Schools Research 
Movement; B.F. Skinner, Norman Crowder, Robert E. and Betty 0. Corrigan (1950- 
1984), Mastery Learning Practices; R.E. Corrigan, B.O. Corrigan, Ward Corrigan, 
and Roger A. Kaufman (1960-1984); Project entitled "A Systematic Approach for 
Effectiveness (SAFE) for District- wide Installation of Effective Schools." 

(See July 1984 Effective School Report and Appendix VI and XXVI ) 

Environment. A key term used in behavior modification. Changing one's environment can be 
utilized to bring about behavioral change. The term "psychologically facilitative climate" 
means the same thing as "positive school climate. " 

Facilitate, Facilitator. A change agent who chairs handpicked committees or groups to direct 
discussion toward the "right," predetermined conclusions or consensus. This process is 
called "managed change." Facilitators are highly trained to deal with "resisters," those 
opposed to the predetermined change. (See Change Agent and Appendix XIV) 

Global Education. Education for the purpose of creating "global citizens. " Also known as "world 
class" education, "holistic" education or the "transformation" of education. A pilot global 
education curriculum in Iowa {Catalogue of Global Education Classroom Activities, Lesson 
Plans, and Resources, 1991) emphasized topics such as environmentalism, vegetarianism, 
pantheism, pacifism, population control and global government. In holistic fashion, it 
was designed to be "integrated" and "infused" throughout the academic curriculum. The 
Global Alliance for Transforming Education (GATE) in Education 2000: A Holistic Perspec- 
tive (1991) defines holistic (global) education as follows: 

We call for wholeness in the educational process, and for the transformation 
of educational institutions and policies required to attain this aim. Wholeness 
implies that each academic discipline provides merely a different perspective on 
the rich, complex, integrated phenomenon of life. Holistic education celebrates 
and makes constructive use of evolving, alternative views of reality and multiple 
ways of knowing. It is not only the intellectual and vocational aspects of human 
develpment that need guidance and nurturance, but also the physical, social, 
moral, aesthetic, creative, and in a nonsectarian sense — spiritual aspects. Holistic 



Glossary 



G-ll 



education takes into account the numinous mystery of life and the universe in 
addition to the experiential reality. 

(See 1991 Global Alliance for Transforming Education, Sustainable Development, 
World Class Education, and Appendix XXVII.) 

Gradualism. "Two steps forward, one step back." This political process allows change agents 
to introduce major social change in bits and pieces, rather than in sweeping proposals. 
Often semantic deception is used to introduce these changes, focusing attention on the 
"trees" (the bits and pieces) rather than the "forest." Gradualism keeps the common 
thread of change out of view while the process of change continues — unnoticed by the 
general public. (See Preface) 

Group Process. The group process uses sensitivity training and other psychological techniques 
to strip the individual of his individuality and to manipulate him into conformity with 
politically correct group values and goals. (See 1947 National Training Laboratory, Con- 
sensus Building and Appendix XXII) 

Higher Order Thinking Skills (HOTS) . Psychological manipulation using "application, analy- 
sis, synthesis, and evaluation" (the higher levels of Bloom's Taxonomy) without the fac- 
tual knowledge needed for rational and objective thinking. The student is drawn toward 
making conclusions based on biased, politically correct information and disinformation. 
(See Critical Thinking and Appendix XIX and XXIII) 

Holistic (Wholistic) Education. Involving the whole person — "body, soul and spirit." It inte- 
grates all subjects and infuses everything with a pantheistic, monistic spirituality. (See 1991 
Sustainable Development/GATE entry, Global Education, Appendix XXVII, and Resource 
List Brave New Schools information) 

Human Capital or Resource. The new label for all children and adults who are being shaped/ 
molded to match the supposed needs of the global economy. The trained workforce product 
of global/national schooling. (See Appendix XI, XII, XV, and XVIII) 

Humanism (Secular). A belief system based on the self-determination of man. Recognized 
as a religion in the United States. (See 1933 entry on Humanist Manifesto I and Onalee 
McGraw pamphlet and Character Education) 

Individual Education Plan (IEP). A plan drawn up to accommodate the needs of individual 
children who traditionally have been labeled "special education." IEPs will, in the future, 
be used for all children due to the move from traditional competitive education to non- 
competitive, teach-to-the-test outcome-based education/mastery learning/ direct instruction 
and workforce training (STW) which necessarily use individually prescribed instruction. 
IEPs often call for the use of behavior modification techniques, including Skinnerian operant 
conditioning. Title I Special Education regulations contain a parental consent with the right 
to refuse requirement before developing IEPs or using behavior modification techniques, a 
protection not presently available to non-special education students. It is important that 
in the future all students who have IEPs be covered by this consent requirement and that 
relevant language, i.e., language covering all such students and all types of "plans" related 
to behavior disorders, academics, career training, etc., be included in the reauthorization 
of the Elementary and Secondary Education Act of 1965. The transformation of schools 



G-12 



from academics to OBE and STW will require IEPs for all students. (See 1982-1983 Profiles 
in Excellence: Secondary School Recognition Program) 

Individually Prescribed Instruction (IPI) or Individualized Education. Developed in the early 
1960s at the University of Pittsburgh's Learning Research and Development Center and at 
the federally funded laboratory Research for Better Schools in Philadelphia, PA, Individu- 
ally Prescribed Instruction's development coincided with the Great Society's accountability 
movement in the sixties which had as its focus equal opportunity and would increasingly 
deal with outcomes at the individual student level. Performance-based education (IPI) 
calls for mastery learning/direct instruction, which has been gradually implemented over 
the past thirty years, initially as a result of the emergence of computer technology which 
permitted the student to work at his own pace with programmed learning. Computer- 
assisted-instruction using OBE/mastery learning/direct instruction enables the planners 
to predictably achieve their "outcomes"; i.e., to bring about behavior change as well as 
training in skills necessary for the global workforce and to collect and store data in such 
detail as to include information on the individual student/adult, necessary for "recycling" 
and remediation purposes. (See Appendix II, III, VII and VIII) 

Life Skills, Life Role Competencies, Lifelong Learning. Preparation for all life roles. The 
total development of the child — body, mind, and spirit as a learner, worker, consumer, 
family member, and citizen. What the student will believe, think, and do to meet the exit 
outcomes. UNESCO coined the phrase "lifelong learning" and identified the life skills/life 
role competencies which are being implemented worldwide. Outcome-based education, 
mastery learning, and direct instruction lend themselves to "lifelong learning" since one 
can take as long as one wants or needs — forever, if need be — to master whatever the 
controllers want him to "master." (See Appendix IV) 

Literacy, Functional. Basic literacy skills, such as reading a bus schedule, needed to "function. " 
Professor Oettinger of Harvard, who supports functional literacy, says "in the modern 
context of functionalism, comic books may not be all that bad." (See 1975 Commissioner 
of Education T.H. Bell comments, 1979 "K-12 Competency-Based Education Comes to 
Pennsylvania," 1981 Professor Oettinger speech, and 1983 "Functional Literacy and the 
Workplace") 

Local Control. A euphemism to pacify critics of federal control, since all control in the 1990s 
rests with those who determine the national standards and assessment and provide the 
money to implement the restructuring. Local educators are free only to find ways to meet 
those national standards. If local schools do not meet the standards (perform), they will 
be penalized. Taxpayers should be aware of the fact that state intervention in local schools 
does not always mean that your school is not doing well academically. It may mean just 
the opposite: there is still resistance from good educators who refuse to participate in the 
"teach to the test dumbing down" which is part of performance-based teaching, OBE, 
mastery learning and direct instruction. Sometimes called "localized control" and often 
incorrectly associated with block grants which circumvent elected officials at the state 
level, thereby lessening true local control. 

The 1994 Association for Supervision and Curriculum Development Yearbook: The 
Governance of Curriculum stated: "...[Ijndeed, local control has been, and continues to be, 
the most durable myth, or operating principle, of educational governance in the United 



Glossary 



G-13 



States." From Communities and Their Schools by Don Davies, Ed. (McGraw-Hill: New York, 
1981), Miriam Clasby, longtime Community Educator, makes the statement: " ...Unless 
considerations of schooling are placed within the contexts of... world society, they run 
the danger of unwittingly affirming a past that no longer exists." 

Lower-Order Skills. These include knowledge, comprehension, and memorization, the cor- 
nerstones of traditional education. HR 6 — the 1993 reauthorization of the Elementary 
and Secondary Education Act of 1 965— recommended the abandonment of the so-called 
"lower-order skills," to be replaced by ones which engage students in more "complex 
tasks." (See 1993 HR 6) 

Magnet Schools. A public school focused on a specialized area of learning, often in partnership 
with a private organization. They were originally promoted as a way to bring about racial 
integration. In the context of a socialist full employment, planned economy, magnet schools 
have traditionally been associated with the Soviet polytech system and its quotas for engi- 
neers, ballet dancers, etc. Charter schools can also serve the same purpose by providing 
specialized training. (See 1991 NASDC article, Charter Schools and Appendix XII) 

Mastery Learning (ML). Proponents of ML believe that almost all children can learn if given 
enough time, adequate resources geared to the individual learning style of the student, 
and a curriculum aligned to test items. Mastery learning and direct instruction use Skin- 
nerian methodology (operant conditioning) in order to obtain "predictable" results. The 
critical teacher behaviors found to correlate directly with high levels of achievement are: 
specifying learning objectives, setting high standards for mastery, modeling, practicing, 
eliciting responses from all students, reinforcing correct responses, setting up systems 
for frequent and consistent rewards, and time on task. Benjamin Bloom, the father of 
ML, says "the purpose of education is to change the thoughts, actions, and feelings of 
students," and he developed his mastery learning to do exactly that. (See 1968 Mastery 
Learning entry, Direct Instruction, Effective School Research, Individually Prescribed 
Education, Outcome-based Education, Appendix VI and XIX) 

National Assessment of Educational Progress (NAEP). "The Nation's Report Card" which 
measures student progress by testing different subject areas in alternate years, carried 
out from 1965 to 1981 by the Education Commission of the States and since 1983 by the 
Educational Testing Service under contract to the U.S. Department of Education's National 
Center for Educational Statistics. Also gathers personal data on children and families in 
order to fill out longitudinal profiles that include information on students' and parents' 
attitudes, values, and beliefs. (See Appendix IV and XI) 

National Center on Education and the Economy (NCEE). Founded by Marc Tucker, NCEE 
conceived the CIM and CAM in a 1990 report called America's Choice: High Skills or Low 
Wages! [Note: NCEE's subsidiary, the National Alliance for Restructuring Education, has 
been renamed "America's Choice for School Design."] (See Certificates of Initial and 
Advanced Mastery, New Standards Project and Appendix XV and XVIII) 

National Skills Standard Board (NSSB). NSSB, an independent authority acting under the 
auspices of the U.S. Department of Labor, has authority to identify occupation clusters and 
define the student skill level required for certification to work within these clusters. Both 
schools and businesses would be expected to follow government guidelines and adopt 



G-14 



these standards. In other words, students will have to meet the government standards in 
order to be certified for various kinds of jobs. (See SCANS) 

New American Schools Development Corporation (NASDC). NASDC was formed in 1991 
when President George Bush requested that the business community raise funds to 
support development of "radical, break the mold" schools — one in each Congressional 
district. Ann McLaughlin was CEO and President of NASDC. The Request for Proposals 
stated: "The design may entail major changes in community governance... community 
structures and functions of other institutions such as public health agencies and welfare 
departments. "(See 1991 NASDC) 

New Standards Project (NSP). A partnership formed by Marc Tucker (head of NCEE) and 
Lauren Resnick, co-director with Robert Glaser of the University of Pittsburgh's Learning 
Research and Development Center, to establish a "world class" system of standards and 
assessment that reflects international standards and culminates with the CIM and CAM. 
(See Certificates of Initial and Advanced Mastery) 

Outcome-based Education (OBE). The following definition comes from Excellence in Instruc- 
tional Delivery Systems: Research and Dissemination of Exemplary Outcome-Based Programs, 
a grant application submitted to the United States Department of Education for funding 
in 1984 by William Spady, Director, Far West Laboratory for Educational Research and 
Development: 

The concept of Outcome-Based Education emerged from the synthesis of two 
broad areas of instructional design and improvement. One is known widely as Mas- 
tery Learning and is identified with the pioneering work of Benjamin Bloom (1968, 
1976), James Block (1971, 1974), Block and Lorin Anderson (1975), and Block and 
Robert Burns (1977). The other is known as Competency-Based Education (not to 
be confused with Minimum Competency Testing) and was defined conceptually 
and operationally by Spady (1977) and by Spady and Mitchell (1977). 

The term "Outcome-Based Education" represents a synthesis of these two 
approaches and took form in the winter of 1980 with the formation of an organi- 
zation known as the Network for Outcome-Based Schools. OBE is based on the 
following philosophical premises: 

1. Almost all students are capable of achieving excellence in learning the essentials 
of formal schooling. 

2. Success influences self-concept; self-concept influences learning and behav- 
ior. 

3. The instructional process can be changed to improve learning. 

4. Schools can maximize the learning conditions for all students by 

a. Establishing a school climate which continually affirms the worth and 
diversity of all students 

b. Specifying expected learning outcomes 

c. Expecting that all students perform at high levels of learning 

d. Ensuring that all students experience opportunities for personal success 

e. Varying the time for learning according to the needs of each student and 
the complexity of the task 

f. Having staff and students both take responsibility for successful learning 
outcomes 

g. Determining instructional assignments directly through continuous assess- 



Glossary 



G-15 



ment of student learning 

h. Certifying educational progress whenever demonstrated mastery is assessed 
and validated. 

(See Appendix XXVI) 

Outcomes. Based on Prof. Benjamin Bloom's Taxonomy of Educational Objectives, the outcomes 
of education in the 1990s and in the 21st century define "What students must know, be 
able to do, and be like." Determined at the national and international level, they must be 
met locally. Called "learning goals," "performance objectives," "standards," "competen- 
cies," or "capacities," all require students to embrace "new thinking, new strategies, new 
behavior, and new beliefs" (Lee Droegemueller, Commissioner of Education, "Assess- 
ment: Kansas Quality Performance Accreditation [QPA]," Kansas State Board of Education, 
Topeka, KS, January 1992). 

(See 1991 "outcomes" recommended at Jomtien, Thailand "World Conference on 
Education for All" and Conference of U.S. Coalition on Education for All, and 1994 "U.S. 
Coalition for All: A History") 

Ownership. Encouraging parents to participate in school activities in order for them to feel a 
part of restructuring — to have a feeling of ownership which will result in parental support 
for radical change. 

Paradigm. A world view; a mental framework for thinking, for organizing information, and for 
understanding and explaining reality. A paradigm shift occurs when one turns the tradi- 
tional way of doing things on its head, as is the case with corporate fascist public-private 
partnerships, the use of unelected boards for decision making, School-to- Work, etc. (See 
1991 John C. Hillary's "Paradigm Change; More Magic than Logic") 

Parent Report Card. Report card issued by the school that grades parents on how they bring up 
their children, especially concerning school-related areas. The State of California recently 
passed a law requiring parent report cards. (See 1993 Total Quality for Schools by Joseph 
C. Fields, and 1999 January Rosemarie Avila article) 

Parents as Teachers (PAT). A federally funded program which brings the state educator into 
homes to make sure each child starts school "ready to learn" and "able to learn." The 
child is given a personal computer code number, and a computer record is initiated that 
will enable the national data system to track each child for the rest of his life. Parents as 
well as children are evaluated. (See 1992 Laura Rogers's articles and At-Risk Students) 

Participatory Democracy. Opposite of republican, representative, constitutional form of gov- 
ernment. Participatory Democracy uses polls, unelected councils, and task forces in which 
the voice of the people becomes more important than the voice of elected representatives. 
Example: 1998-1999 investigation of President Clinton and the use by the U.S. Senate of 
polls rather than principles to determine whether the President is fit to remain in office. 
Form of government supported by socialists and communists. (See 1984 April letter to 
President Reagan from Willard W. Garvey, Executive Director of the National Center for 
Privatization, which said in part "Privatization is now an idea whose time has come.... 
The knowledge, communication, and computer industry can make political representa- 
tives obsolete.") 



G-16 



Partnership. Usually refers to a new concept of governance which calls for a merger of the 
public and private sectors, commonly known as corporate fascism or socialism. Partnerships 
between government and the private sector result in a breakdown of the representative form 
of government and a lessening of accountability to the taxpayer. (See 1981 "President's 
Task Force on Private Sector Initiatives," 1984 Washington Post article "Industrial Policy 
Urged for GOP" and Participatory Democracy) 

Planning, Programming, Budgeting, Management System (PPBS) and Management by 
Objectives (MBO). A system used for planning and accounting which calls for: 1) estab- 
lishing a goal; 2) setting forth plans to achieve it; 3) funding the effort; 4) evaluating 
success or failure at the end of the funding cycle; and 5) adjusting plans to achieve the 
goal, including funding, and starting over again with more precise focus. The following 
background information is taken from Goals 2000: Restructuring Our Schools... Restructuring 
Our Society by Kathie Finnegan (Hearthstone Publishing, Ltd.: Oklahoma City, Oklahoma, 
1996), pp. 306-307: 

...Originally developed in 1961 by Robert McNamara when he was Secretary 
of Defense in cooperation with the Rand Corporation. PPBS is the vehicle for 
achieving predetermined goals in government. 

In 1961, following suggestions of the Rand Corporation, President Kennedy 
launched PPBS in the Department of Defense (DOD) under Robert Strange McNa- 
mara. Although PPBS was clumsy, costly, and ineffective (and no more successful 
in industry than it was in managing the Vietnam War) , President Johnson initiated 
PPBS in 1965 throughout the entire legislative branch due to its administrative 
effectiveness. Later it was put into all branches of the federal government. 

A key point about running the government by PPBS is that it is government 
by appointed — not elected — officials. In 1972 the International Institute of Applied 
Systems Analysis (another name for PPBS) was established in Austria with twelve 
nations participating, including the United States and the Soviet Union. PPBS under 
many names has become the dominant organization/restructuring/re-engineering 
model for most of corporate America and many institutions and organizations. 
PPBS has been described as applied scientific socialism. It is used to control what 
people produce, what they consume, how they spend their work and leisure time, 
what they think, and how they react to various stimuli. 

The concept applied to education works this way: if you know what you have 
to start with (young, impressionable children) and you know what you want to 
end up with (citizen- workers for a centrally planned global economy) , it is pos- 
sible to design a system that will achieve that "outcome." PPBS is a continuous 
loop, renewable/reviewed/re-funded every three, five, or seven years so that basic 
assumptions and goals can be re-calibrated. 

(See 1967 PPBS in California, 1972 June 11th speech by Mary Thompson, Systems, 
and Appendix IX and XXII) 

Privatization. Transferring policy-making and implementation from the public tax-supported 
domain into the private or business sectors, where educational leaders and elected boards 
become accountable to wealthy funders (such as the Carnegie, Ford, Danforth, Pew, Rock- 
efeller, Spencer, or Annenberg foundations, to name a few), multinational corporations, 
and non-profit organizations, rather than to concerned parents and taxpayers. (See 1981 



Glossary 



G-17 



President's Task Force on Private Sector Initiatives) 

Psychological Approach. "1. A method of teaching in which new subject matter and ideas 
are presented in a manner appropriate to the way in which the pupil learns and through 
situations that are meaningful to him" is the definition given by the Dictionary of Educa- 
tion, 3rd Edition by Carter V. Good, Ed. (McGraw-Hill: New York, 1973), published under 
the auspices of Phi Delta Kappa. It is also called a Child-Experience Approach, Functional 
Approach. Contrast with logical method. 

Psychomotor Domain. (See Taxonomy of Educational Objectives and Appendix XIX) 

Quality. The following definition is provided in Filling the Gaps: An Overview of Data on 
Education in Grades K-12 (National Center for Educational Statistics (NCES), Office of 
Educational Research and Improvement [ID: NCES 92-132]: Washington, D.C., 1992). In 
the section called "Teachers" on page 5 we find: 

Beginning in the 1980s NCES collected detailed information on the char- 
acteristics and qualifications of teachers. Information collected includes years of 
full- and part-time teachers' experience in public and private schools, major and 
minor degree fields for all earned degrees (from Associate degree to Ph.D.), type 
of certificate in teaching assignment fields, college coursework in mathematics 
and science, and, to a limited extent, participation in in-service education. The 
inclusion of these measures in SASS [Schools and Staffing Survey] allows for an 
assessment of the qualifications of the current teaching force. 

But the term "qualifications" is not synonymous with "quality." The charac- 
teristics that contribute to good teaching are many, and no single configuration of 
traits, qualifications, or behaviors unvaryingly produces optimal student outcomes 
in all situations. NCES teacher surveys have concentrated on collecting data on 
"qualifications," rather than trying to define "quality." In order to define and 
measure "quality," characteristics and qualifications of teachers must be related 
to growth in student achievement. 

[Ed. Note: This definition forces teachers to comply with Goals 2000 criteria and to teach 
to the test.] (See 1992 Filling the Gaps) 

Regional Education Laboratories. The following definition comes from Goals 2000: Restructur- 
ing Our Schools... Restructuring Our Society by Kathy Finnegan (ibid.), pp. 306-307. 

The U.S. Department of Education maintains ten RELs ("labs") in scattered 
geographic areas — all under the jurisdiction of OERI [the Office of Educational 
Research and Improvement]. The labs function as field offices of OERI, assist- 
ing the states under their jurisdiction in finding and implementing educational 
resources (such as the "validated" programs of the NDN [National Diffusion Net- 
work]) suited to their needs. They also generate and oversee research projects, 
print publications, and provide training programs to teachers and administrators. 
Each lab puts out a catalog of its publications. Under Goals 2000 the regional labs 
are charged with designing appropriate materials for their clients if suitable ones 
cannot be found. The ten regions are: 

1. The Northeastern Region (Maine, New Hampshire, Vermont, Massachusetts, 
Rhode Island, Connecticut, New York, and Puerto Rico and the Virgin Islands) 
served by the Education Alliance for Equity and Excellence at Brown University 



G-18 



in Providence, Rhode Island. 

2. The Mid- Atlantic Region (New Jersey, Pennsylvania, Delaware, Maryland, and 
Washington, D.C.) served by the Center for Research in Human Development 
and Education at Temple University in Philadelphia. 

3. The Appalachian Region (Virginia, West Virginia, Kentucky, and Tennessee) 
served by the Appalachia Educational Laboratory (AEL) in Charleston, West 
Virginia. 

4. The Southeastern Region (North Carolina, South Carolina, Georgia, Florida, 
Alabama, and Mississippi) served by the Southeastern Regional Vision for 
Education (SERVE) in Greensboro, North Carolina. 

5. The Southwestern Region (Arkansas, Louisiana, Oklahoma, Texas, and New 
Mexico) served by the Southwest Educational Development Laboratory (SEDL) 
in Austin, Texas. 

6. The Central Region (North Dakota, South Dakota, Nebraska, Kansas, Missouri, 
Colorado, and Wyoming) served by the Mid-Continent Regional Educational 
Laboratory (McREL) in Aurora, Colorado. 

7. The Midwestern Region (Minnesota, Wisconsin, Michigan, Ohio, Indiana, Illi- 
nois, and Iowa) served by the North Central Regional Educational Laboratory 
(NCREL) in Oak Brook, Illinois. 

8. The Northwestern Region (Alaska, Washington, Oregon, Idaho, and Montana) 
served by the Northwest Regional Educational Laboratory (NWREL) in Port- 
land, Oregon. 

9. The Western Region (California, Nevada, Utah, and Arizona) served by the 
Far West Laboratory for Educational Research and Development (FWL) in San 
Francisco, California. 

10. The Pacific Region (Hawaii, American Samoa, Commonwealth of the Northern 
Mariana Islands, Federated States of Micronesia, Kosrae, Pohnpei, Chuuk and 
Yap, Guam, Republic of the Marshall Islands, and the Republic of Palau) served 
by the Pacific Regional Educational Laboratory (PREL) in Honolulu, Hawaii. 

Restructuring. A systemic or system-wide movement to change the entire education model in 
order to achieve the new national goals; also known as "transformation." This lifelong, 
revolutionary, never-ending change system (paradigm shift) includes mastery learning, 
direct instruction, outcome-based education, Total Quality Management, and partnerships 
with business and community leaders, churches, and parents. Restructuring calls for the 
involvement of carefully selected, politically correct unelected members of the community 
in the decision making process. (See 1991 Hillary's "Paradigm Change: More Magic than 
Logic," Paradigm, School Reform, Systemic Change and Appendix XII) 

SCANS (The Secretary's Commission on Achieving Necessary Skills). SCANS was created 
under Elizabeth Dole as Secretary of Labor. It links education to the Department of Labor 
in a joint effort to create a workforce that meets the future needs for a global workforce 
and produces students who are competent in prescribed work skills including attitudes 
and group thinking. It can direct students into specific training, limit their options, and 
bring intrusive government influences into all aspects of life. (See 1990 SCANS article, 
Certificates of Initial Mastery and Advanced Mastery, and Appendix XV and XVIII) 

School-Based Decision Making. A form of school governance that replaces elected school 
boards and/or central school system administrators with a school site council consisting 
of unelected principals, teachers, and selected parents who support the radical changes 



Glossary 



G-19 



called for by restructuring. Designed to implement the changes with minimal hindrance, 
it is not accountable to elected officials, dissenting parents, or the taxpayers. It is also 
known as "site-based management." It could be referred to as "taxation without repre- 
sentation." (See 1977 National School Board Association [NSBA] President's Warnings at 
NSBA Conference) 

School-to- Work or School-to-Career. Legislative initiative which changes focus of education to 
workforce training instead of information-based academic learning. The link or partner- 
ship between the schools and businesses established through the SCANS competencies 
which provide a criterion both for testing and training the global workforce, also known 
as "limited learning for lifelong labor. " (See SCANS and Appendix XV and XVIII) 

Semantic Deception. The use by change agents of words and terms which mean one thing to 
the average, normal, common sense American but have an entirely different meaning for 
the change agent who is attempting to restructure the schools or implement controversial 
programs. Some examples are: higher order thinking skills (HOTS), critical thinking, basic 
skills, core values, direct instruction, health, etc. Part of Appendix XXVI says: "...[P]olicy 
analysts sometimes use the rituals of research to confound and weaken political or scien- 
tific opponents, a form of research that appears similar to the 'black' magic of witches. " 
(See 1972 Mary Thompson paper on PPBS, and Appendix XI and XXVI) 

Skill Standards. The following excerpts have been taken from The School-to-Work Revolution 
by Lynn Olson (ibid.), pp. 178-179. [The writer recommends Olsen's book for those inter- 
ested in the history of school-to-work activities in the United States, without necessarily 
endorsing her views, ed.] 

Skill standards spell out what workers within an industry or cluster of occu- 
pations should know and be able to do to succeed on the job. They indicate to 
employers the skills of job applicants and provide workers with a widely recog- 
nized credential. They could improve the quality of career information available 
to schools, employers, and young people. For example, they could help improve 
the match between what is learned in school and what is necessary on the job. 
In 1992 the federal government funded 22 pilot projects to test whether indus- 
tries in the United States could develop voluntary skill standards. The projects 
covered industries ranging from printing, metalworking, and electronics to retail, 
hospitality, and tourism. Of the 22 pilot projects funded so far, the vast majority 
are led by trade associations or industry groups. In 1994 the Congress created a 
National Skill Standards Board to help promote the development of such voluntary 
efforts. The Board is charged with clustering occupations or industries into broad 
groups that would cover most of the workforce in the United States. In addition, 
it is supposed to develop a common national framework in which skill standards 
could be developed. 

(See 1990 SCANS article and Appendix XV and XVIII) 

Special Education. Planned for all children "at risk" of not meeting the national standards. 
Special Education has traditionally required Individual Education Plans (IEPs) for eco- 
nomically disadvantaged, learning disabled, and gifted and talented students. Special 
Education IEPs are a necessary component of OBE/ML/DI and school-to-work programs. 



G-20 



(See At-Risk Students) 

Sustainable Development. "World Class Schools and the Social Studies" from Social Studies 
Horizons by Dr. Cordell Svengalis (Iowa Dept. of Education: Des Moines, Iowa, Vol. 3, 
No. 1, Fall 1990) says in part: 

...a World Class education program would have as one of its major objec- 
tives the development of skills and understandings grounded in an ethical/moral 
context. This ethical/moral context would be based on the idea of assuming a 
sense of responsibility toward our interrelated planetary future.... Perhaps the 
most compelling vision of our time is that of a "sustainable society" [emphasis 
in original] . Our global society, in terms of the environmental degradation, explo- 
sive population growth in the Third World, energy shortages, pollution, conflict, 
crime, drugs, poverty, and just sheer complexity, is not sustainable into the 21st 
century. . . . Students need to understand these things as part of their World Class 
education. 

(See 1991 GATE entry, Global Education, Resource List, and Appendix XXVII) 

Synthesis. One of the higher-order thinking skills in Bloom's Taxonomy. Uses the principles 
of Hegelian dialectics to join the beliefs or ideas (theses) of individual students into a 
new joint belief — the compromise solution or synthesis. (See Taxonomy of Educational 
Objectives and Appendix XIX) 

Systemic Change or School Reform. Total holistic transformation: top down, system-wide, 
international as well as national. "Systemic" means one mind directing one body with 
many parts. It includes preschools, public elementary and high schools, private schools, 
colleges, universities, health clinics, and every other kind of community partner. The 
planned deadline is school year 2000-2001. (See Global Education and Restructuring) 

Systems, Systems Design, Systems Approach. The following definition comes from Appendix 
VIII: 

When scientific and experimental methods are applied in an orderly and 
comprehensive way to the planning of instructional tasks, or to entire programs, 
this process is sometimes known as "systems design," or the "systems approach 
to instructional development." Implicit in the systems approach is the use of 
clearly stated objectives, experimentally derived data to evaluate the results of 
the system, and feedback loops which allow the system to improve itself based 
on evaluation. 

A systematic approach usually involves needs assessment (to determine what 
the problem really is); a solution selection (to meet the needs); development of 
instructional objectives (if an instructional solution is indeed needed) ; an analysis 
of tasks and content to meet the objectives; selection of instructional strategies; 
sequencing of instructional events; selection of media; developing or locating 
the necessary resources; try out/evaluation of the effectiveness of the resources; 
revision of resources until they are effective; and recycling continuously through 
the whole process. The systems approach is basic to educational technology. Indi- 
vidual learning requires systematic planning because it may operate with little or 
no direct intervention by the teacher. 



Glossary 



G-21 



(See PPBS) 

Taxonomy of Educational Objectives. From the book titled Taxonomy of Educational Objec- 
tives: The Classification of Educational Goals by David Krathwohl, Benjamin Bloom, and 
Bertram Massie (Longman, Inc.: New York, 1956). Bloom explains the purpose of the 
taxonomy when he defines good teaching as "challenging the students' fixed beliefs." 
He also says that "The purpose of education and the schools is to change the thoughts, 
actions, and feelings of students." It is important to remember that Bloom is the father of 
OBE/mastery learning/direct instruction which are based on Pavlov and Skinner's experi- 
ments with animals (operant conditioning). Remember also that mastery learning and 
direct instruction have been designed to implement Bloom's taxonomy in the cognitive, 
affective (values) and psychomotor domains. 

The six levels of Bloom's taxonomy through which a child must travel in order to 
have his world view reorganized — his values changed — are Knowledge (list, match, name, 
define, state), Comprehension (explain, paraphrase, summarize, describe), Application 
(relate, solve, use, show, classify), Analysis (support, differentiate, generalize), Synthesis 
(design, produce, predict), and Evaluation (conclude, assess, critique). 

The taxonomy has been used by teachers, curriculum builders, and educational 
research workers as one device to attack the problem of specifying in detail the expected 
outcomes of the learning process. When educational objectives are stated in operational and 
detailed form, it is possible to make appropriate evaluation instruments and to determine 
with some precision which learning experiences are likely to be of value in promoting the 
development of the objective and which are likely to be of little or no value. Bloom, in 
attempting to do research on what might be called "peak learning experiences," produced 
evidence which suggested that "a single hour of classroom activity under certain condi- 
tions may bring about a major reorganization in cognitive as well as affective behaviors." 
(See Appendix XIX) 

Teacher Tenure. A policy which traditionally protected incompetent teachers from being fired. 
Retention of teacher tenure becomes more and more attractive as competent academi- 
cally-oriented teachers have their jobs threatened only to be replaced by non-academically 
oriented teachers trained in TQM whose expertise lies in the facilitation of learning (using 
Pavlovian/Skinnerian "Best Practices, " providing the technological resources necessary to 
bring about change of behavior, predictable results, and training in workforce skills) . 

Total Quality Management (TQM). A socialist strategy for managing continual improvement 
through statistical tools and decision- making techniques. Administered through site-based 
management (school-based decision making), it emphasizes the "customer" or "stake- 
holder" including everyone but the concerned parent. TQM is simply a refined version of 
Planning, Programming, Budget Systems (PPBS) and Management by Objectives (MBO) 
and has much in common with the principles underlying continuous progress mastery 
learning. Edwards W. Deming, the physicist who originally introduced TQM to the Japa- 
nese as a manufacturing management process to use during their industrial rebuilding 
after World War II, said in an interview at the University of Pittsburgh: "What I took to 
Japan was not the American way. " (See Appendix XXII) 

UNESCO (United Nations Educational, Scientific, and Cultural Organization). A specialized 
agency of the United Nations, headquartered in Paris, France. UNESCO began in 1946 



G-22 



with twenty member states and now has 171 members. In a brochure called "What is 
UNESCO?" we find: "UNESCO's Constitution says that 'since wars begin in the minds of 
men, it is in the minds of men that the defenses of peace must be constructed.' Building 
these defenses through international cooperation remains UNESCO's top priority." 

Universal Values. Honesty, integrity, tolerance, and other values believed to be common to 
all the people and the world's cultures. This belief is counter to the facts of history. (See 
Core Values/Virtues) 

U.S.-Soviet Education Agreements. President Eisenhower signed the first U.S. -Soviet Educa- 
tion Agreement in 1958. It was just one of many agreements negotiated with the Soviets 
which dealt with space, medicine, culture, and other areas. The purpose of the education 
agreement was to initiate exchanges of teachers from both countries and to study one 
another's curriculum and textbooks, but not to engage in the development of curriculum. 
In 1985 the Reagan Administration and the Carnegie Corporation departed from this less 
controversial agenda when they negotiated agreements with the Soviet Union which dealt 
not only with teacher and student exchanges but also with cooperation in curriculum 
development, including "joint research on the application of computers in early elementary 
education, focusing especially on the teaching of higher level skills and complex subjects 
to younger children. " This aspect paved the way for Russian teachers to visit and work 
in American schools including those specializing in school-to-work activities. (See 1991 
articles "Cop Swap," "Week in the Subway," 1994 "School Exams... Russian Origin," 1995 
"Russian Teacher Review Works in SAD 53, Maine," and Appendix XXIII) 

Values Clarification (VC). A strategy for changing a student's values, usually, but not always, 
associated with the work of Sidney Simon. VC prods students to examine their own values 
in light of their upbringing and if they find that their values are a result of their parents' 
direction, they are told that their values are not valid. In order for values to be valid they 
must be chosen freely by the student without any influence from church or family. The 
VC process usually takes place in the group with exercises and games which create depen- 
dency amongst members of the group and which contribute to group consensus on what 
is right and wrong, based on situational ethics. (See Character Education, Citizenship 
Education, and Synthesis) 

Vouchers. Vouchers and tuition tax credits are used by parents to pay for children's education 
in private schools of their choice. A voucher is a direct method of payment to a private 
school of a certain amount of tax money provided by a public municipality, whereas a 
tuition tax credit is a form of delayed reimbursement by deduction of a certain portion 
of one's taxes related to the cost of private school tuition. The dangers of such choice 
measures for parents are best expressed in the old adage "He who pays the piper calls the 
tune." (See 1982 entry "Public Service, Public Support, Public Accountability" by Chester 
Finn, former Assistant Secretary, Office of Educational Research and Improvement [OERI], 
U.S. Department of Education, under Secretary William Bennett, and Choice) 

Work-Based Learning. Programs designed to teach older students (grades 7 and up) work 
skills on the job site, thereby assuring that the student can perform the tasks needed by 
local employers when the student graduates from public school. (See 1976 May 21st article 
"Cuban Children Combine Studies, Work" from The Los Angeles Times) 



Glossary 



G-23 



World Class Education. A term loosely bandied about by government and corporate change 
agents. It simply means Third World-class academic education and first-class school-to- 
work/school-to-career Soviet/German (Socialist) polytech education. It is a non-competitive 
system based on national standards and benchmarks that match international standards. 
Students must embrace a common set of universal beliefs and values in preparation for the 
next century. This process uses technology (computers, robotics, etc.), mastery learning, 
continuous progress, and individual education plans which allow for lifelong learning as 
promoted by the United Nations. (See Global Education) 



Behaviorist Terminology 

The following list includes words, terms, and phrases used by educators and behavioral 
psychologists, scientists, sociologists, etc., in their educational research and literature as well 
as in background papers for elected officials. This list should be of use to the average parent 
who may not be familiar with these terms, thereby not being alert to their real meaning, 
allowing their children to be subjected to experimental behavior modification programs which 
are found in all areas of curriculum from social studies to reading instruction to workforce 
training. Although some of these words can also be used in a non-behaviorist context, most 
of them specifically relate to the field of behavioral psychology which holds the evolutionary 
world view that man is an animal, without soul, conscience, intellect, creativity, and free will. 
If parents, elected officials, and others are familiar with these words — not necessarily having 
to thoroughly understand their definitions — they will be able to identify programs which may 
not be in the best interest of their children or their constituents. One can point to a barrage of 
education programs and legislation voted on during the past thirty-four years at the local, state, 
and federal levels which might not have been approved or passed had our elected officials and 
their constituents recognized and understood the meaning of the words on this list. 

The reader should also refer to their own dictionary or Webster's New World Dictionary 
of the American Language, 2nd College Edition (William Collins & The World Publishing Co., 
Inc.: Cleveland, Ohio, 1974) from which several of the following definitions were taken, or this 
book's Glossary and/or Index to find definitions for some of the words and the location in this 
book of instances where the majority of them are used. For instance, appendices II, III, V and 
VII deal extensively with the subject of behavioral terminology. 

accountable, accountability All sorts of mischief has been carried out "in the name of account- 
ability," from the implementation of individualized education — outcome-based education 
and all its tentacles— to the collection of personal and private data, to the justification of 
bigger budgets for education, using PPBS, etc. Traditionally, accountability meant being 
legally responsible for taxpayers' money; making sure students had adequate resources, 
teachers, etc., in order to learn. The state was responsible for offering an educational 
experience for all children — input — not for assuring that every individual child would 
learn what he was taught. Children were allowed to receive less than perfect grades for 
their efforts and not all children got what we used to call "the most" from their educational 
experience. However, the state's legal responsibility had been fulfilled. 

Accountability increasingly means that the government schools must be accountable 



G-24 



for predetermined results (results, performance, outcome-based education) . Legislation is 
in the works to hold teachers accountable for student results which means students are 
no longer held responsible for their work or lack of work. In order to implement such an 
accountability system, systematic, scientific, research-based education (based on behav- 
iorist principles) is being implemented. Such education which teaches to the test, using 
Skinnerian operant conditioning, has predictable and measurable, if narrow, results and 
serves the limited learning needs of the school-to-work agenda. The results of such narrow 
education are measurable data which must be collected at the individual student and 
teacher level, able to be stored in the computer for recycling and remediation purposes. 

The use of such a narrow, rigid method of training assures predictable results which 
carry out the requirements of the new definition of accountability. That is why OBE, ML 
DI, and Effective School Research all claim that "almost all children can learn. " Skinner 
said, "You will teach your student as he wants to be taught, but never forget that it is 
within your power to make him want what you want him to want." There is virtually no 
way a student can avoid "learning" exactly what the planners want him to learn unless 
he actually rebels against the method/system which considers him nothing more than a 
machine/animal to be conditioned/trained. (See Appendix XXIV) 

affective (Feelings, emotions) 

alignment (All teacher training and curriculum resources are aligned with tests, assessments, 
etc.; i.e., teach to the test) 

animal, animal psychology (Used to develop operant conditioning programs) 

assessment, assessment strategies, authentic assessment (See Glossary) 

attitude, attitudinal (Point of view; dealing with attitudes, values, beliefs) 

automaticity (Level of training at which behavior becomes automatic ["knee jerk" reflex]) 

Behavior Analysis (One of twenty different intervention strategies that was used in Project 
Follow Through) 

The following four behaviorist definitions are taken from Dictionary of Education, 3rd 
Edition by Carter V. Good, Ed. (McGraw-Hill; New York, 1973), published under the auspices 
of Phi Delta Kappa: 

behavior modification: (Techniques for dealing with maladaptive behavior either through clas- 
sical conditioning [for example, avoiding anxiety in a specified situation by conditioning 
a response incompatible with anxiety] or through operant conditioning [as by arranging 
and managing reinforcement contingencies so that desired behaviors are increased in 
frequency and maintained and undesired behaviors are decreased in frequency and/or 
removed] . When used with the nonfunctioning or disruptive school child, behavior changes 
are measurable by continuous assessment and graphic means; behavior management, 
though using many of the same techniques, is a less precise method.) 

behavior shaping: (The process by which a target response or series of responses is developed 
through the use of strategically placed reinforcers; a term used primarily by those who 
identify themselves with B.F Skinner's operant conditioning.) 



Glossary 



G-25 



behavior theory: (A view which regards human behavior as primarily rooted in the experien- 
tial history of the organism, as having been learned, and as susceptible to modification 
by psychological means; emphasis is on the nature of the learning processes that under- 
lie behavioral change, and these processes are regarded as essentially identical to those 
involved in any other kind of complex human learning.) 

behaviorism: (A systematic approach to or school of psychology, which regards objective, 
observable manifestations such as motor and glandular responses as the key to an under- 
standing of human behavior; consciousness, feeling, and other subjective phenomena are 
rejected as unnecessary; places much reliance on the study of behavior of animals under 
controlled conditions; originated with the work of M.F. Meyer, A. P. Weiss, and J.B. Watson 
during the first two decades of the present century; the most widely known contemporary 
exponent was B.F. Skinner.) 

Best Practices (Term often used in performance-based educational teacher training material 
which refers to behavioristic, scientific, research-based teaching practices) 

climate (Environment) 

clinical practice (Diagnose and prescribe) 

coaching (To instruct and train) 

competent (Adequate) 

computer-assisted instruction (C-A-I: programmed learning) 

conditioned (Having developed a conditioned reflex or behavior pattern) 

conditioned response (Conditioned reflex in which the response — e.g., secretion of saliva in a 
dog— is occasioned by a secondary stimulus— e.g., the ringing of a bell repeatedly— associ- 
ated with the primary stimulus— e.g., the sight of meat) 

criterion-referenced testing (Testing which does not compare student's scores with those of 
the group, but which has the student working at his own pace and in competition with no 
one but himself; such testing is necessary for individually prescribed instruction, mastery 
learning, and direct instruction, all of which teach to the test. Traditional education does 
not teach to the test, thereby exposing the student to a much wider and rich knowledge 
base, some of which he is never tested on, but which becomes an important part of his 
understanding of the world around him.) 

critical thinking (See Glossary) 

cue (A secondary stimulus that guides behavior, often without entering consciousness) 

direct instruction or Direct Instruction (SRA's DISTAR: Direct Instruction System for Teaching 
and Remediation, also known as "Reading Mastery" or any programmed learning based 
on the principles of Skinnerian operant conditioning) 

education (The following definition of education is taken from a 1972 speech given by Mary 
Thompson on the subject of PPBS in education: "The objective of education is to mea- 
sure and diagnose the child in order to prescribe a program to develop his feelings and 
emotions, values and loyalties toward predetermined behavioral objectives. Drawing it 



G-26 



right down to basics, we are talking about conditioned response in human terms. Pavlov 
experimented on dogs.") 

effective, effective school research, effective schools (International school restructuring move- 
ment which seeks to level the playing field for all children, thereby dumbing down the 
particularly bright and average students; a form of redistribution of brains, intelligence. 
[See Glossary and Appendix XXVI]) 

elicit (Used in relation to a specific behavior: to draw forth, evoke, cause to be revealed) 

enabling (To make possible or effective) 

environment, environmental (Climate — "psychologically facilitative" when applied to educa- 
tion) 

exceptional (Teachers who are trained to use operant conditioning. Also, master teachers) 

experimental (Used in relation to research conducted on teachers and students, usually with- 
out their "informed" consent. Legislation is on the books which protects prisoners from 
such experimental research.) 

extinguish (Stop certain behavior) 

fade (As behavior reaches "automaticity" level, use of operant conditioning is gradually reduced 
to zero level) 

guiding (Helping student to model [copy] teacher's behavior) 

incentives (Motivators, rewards, special treatment to assure correct behavior) 

indicators (Specify what students must know and be able to do) 

individualized education, individualized education plans/programs (IEPS) (See Glossary 
for Mastery Learning, Direct Instruction) 

instructional design technology (The use of such technology can be compared to assembly- 
line type of teaching which requires teacher to perform in a systematic, exact manner, so 
that the student's every action [behavior] can be scientifically measured and replicated; 
to shape and mold the child as one would shape and mold a piece of clay) 

intensive, systematic phonics or any other "scientific" research-based instruction (A simple 
way to teach which uses operant conditioning; a method which must be understood 
and rejected if teaching is to remain "teaching" and not become behavior modification 
and "training." Some excellent traditional phonics programs are incorrectly described as 
"intensive and systematic direct instruction of phonics" when in fact they are not, since 
they do not use operant conditioning. ) 

know and be able to do (See Glossary for Taxonomy of Educational Objectives) 

latent period (Interval between stimulation and response) 
management skills (Related to TQM [See Glossary for Quality]) 

mastery, mastery learning (Based on Skinnerian operant conditioning; same as direct instruc- 
tion [See Glossary]) 



Glossary G-27 

measurement (Critical component of Skinnerian operant conditioning) 

measurement by objectives (In education, means only the prepared script will be taught and 
tested, or teach to the test [See Glossary for Quality]) 

merit pay (Tied to teacher performance, effectiveness; whether performance results in student 
achievement [See Glossary for Quality]) 

modeling (Performing behavior teacher wants students to copy) 

monitoring (Observing behavior of student and teacher; teacher behavior must be monitored 
daily and weekly to make sure teacher doing prepared script correctly, like an actor per- 
forming before his audience) 

neurological (Response which strictly deals with the nervous system; in education, related to 
operant conditioning which bypasses the brain; often referred to as "knee-jerk") 

observe, observation (Of student and teacher [See monitoring above]) 

operant conditioning, behavior modification (At every step, immediate feedback or reward 
desirable, immediate repetition and elaboration of the correct response used) 

outcome-based education (Known as OBE; formerly known as mastery learning combined 
with Competency-Based Education) 

outcomes (Results, performance, competencies, standards, achievement) 

overt response (Can be measured and timed; very important in Direct Instruction, DISTAR/ 
ECRI-type programs since Skinner said a response must be oral; why children are required 
to respond in unison and orally) 

penalize (Mostly in regard to teachers who "just don't get it"; cut their classroom supplies, 
give them bad performance rating, etc., get rid of them by any means [early retirement, 
etc.] and hire teachers trained in TQM) 

penalize failure (School doesn't "produce" desired results, using the "systems design/approach"; 
state departments of education will know teachers aren't teaching the script, aren't teach- 
ing to the test, aren't using programmed learning, operant conditioning; school will be 
punished in order to get the results required by Goals 2000 and School to Work.) 

performance-based (Outcome, result, achievement, standards, competency-based, necessary 
for workforce training) 

precise (Exact, able to be "measured") 

predictable (Able to be accurately predicted because dependent on measurement and is sci- 
entifically based; does not allow for free will) 

predictable response (If operant conditioning is used, one can predict the response; it is virtu- 
ally a "sure" thing; automatic response which bypasses the brain) 

programmed learning (Independent learning by a pupil, who advances little by little, through 
a series of questions, the answers to which are given elsewhere in the programmed text- 
book or computer software program; computer-assisted-instruction) 



G-28 



prompt (Word used to describe action to remind or help someone remember a line, as for an 
actor; often referred to as a cue) 

psychological climate (The careful and systematic arrangement of the student's environment 
to facilitate whatever behavior is desired by the teacher) 

psychology (The modern version of psychology relates to nothing but behavior) 

quality teaching (Characteristics and qualifications of teachers related to growth in student 
outcomes, results, performance, achievement; the opposite of traditional education where 
"inputs" [resources, books, teachers, science labs, etc.] were legally required for educa- 
tion, but not student "results" which were considered the responsibility of the student. 
Obviously, the behaviorists consider students as machines, not human beings, since they 
don't take into account the fact that human beings have free will and may just not want 
to learn when and what the behaviorists want them to learn. Such a definition of qual- 
ity teaching, which puts the 100% onus on the teacher, is sure to cause an exodus from 
public education of our nation's finest teachers.) 

rate (Speed of reaction; Skinner method demands a high, quick, fast rate of response; otherwise 
student will have time to reflect on what he/she is doing; high rate of response assures 
that the subject will respond without thinking) 

reflect (Give back an image of; think critically about your practice [teachers]; recommended 
for teachers when monitored by performance raters) 

reflex (Neurological reaction; i.e., as when one automatically withdraws his hand from a hot 
stove) 

reinforce, reinforcement (To increase the probability of a response to a stimulus by giving a 
reward or ending a painful stimulus) 

replicate (Repetition of an experiment under controlled conditions so that a specific result 
may be observed) 

research-based ("Scientific, research-based instructional practices" has come to mean teaching/ 
training based on a world view that considers man an animal without a soul, conscience, 
creativity, or free will whose behavior can be changed using operant conditioning and 
other manipulative psychological techniques without his knowledge or "informed" consent. 
Government research is necessarily "scientific, research-based" since government's world 
view is based on evolution and Skinner. Private research is another matter since it is not 
required to be based on any particular world view, but often reflects the same viewpoint. 
Unfortunately, many religious and private schools are using methods and programs based 
on "scientific" research.) 

response (Reaction, reply) 

script (Teachers using Skinnerian operant conditioning must teach from a prepared curriculum 
format; they are not allowed to deviate from that script) 

sociology (The science of human society and of social relations, organization, and change; 
specifically, the study of the beliefs, values, interrelationships, etc., of societal groups and 
of the principles or processes governing social phenomena. Of interest here is that many 



Glossary G-29 

of the principal promoters of outcome-based education, Spady et al., which includes 
Skinnerian operant conditioning and effective schools research, are for the most part 
sociologists, not educators.) 

stimulus (Any action or agent which causes a change in activity in an organism, organ, or part, 
as something that excites an end organ, starts a nerve impulse, activates a muscle, etc.) 

succeed, success (Meet the required criteria) 

systems, systematic, systems theory (Basis for current restructuring of education. [See Glos- 
sary for Planning, Programming and Budgeting Systems, Systems, Systems Design 
and Systems Approach]) 

taxonomy (See Glossary for Taxonomy of Educational Objectives) 

teaching practice (Teacher performance, not necessarily academic or knowledge-based) 

technology (Any form of instructional media) 

theory into practice (The late Madeline Hunter's Mastery Teaching: Instructional Theory into 
Practice (ITIP) . Translating into practice in the classroom the theory teacher has learned; 
experimentation on the students) 

threshold (Baseline, in operant terms, where subject can be conditioned) 

Total Quality Management (Management technique which uses behavior modification [See 
Glossary for Systems and Total Quality Management]) 



APPENDICES 



APPENDICES 



I Excerpts from Community-Centered Schools A- 5 

II Excerpts from Teaching Machines and Programmed Learning A- 7 

III Excerpts from Programmed Learning A- 11 

IV Excerpts from A Plan for Evaluating the Quality of Educational A- 17 
Programs in Pennsylvania 

V Comments on and Excerpts from Behavioral Science A-23 
Teacher Education Program (BSTEP) 

VI Excerpts from Education for Results A-27 

VII Excerpts from Performance-based Teacher Education A-32 

VIII Excerpts from "The Field of Educational Technology" A-35 

IX Excerpts from A Performance Accountability System A-39 

X Excerpts from "The Next Step: The Minnesota Plan" A-42 

XI "When Is Assessment REALLY Assessment?" A-44 

XII Excerpts from "The National Alliance for Restructuring Education: A-52 
Schools— and Systems— for the 21st Century" 

A-3 



XIII "Psychology's Best Kept Secrets" A-57 

XIV Alert on National Education Goals Panel Community Action Tool Kit A-65 

XV "Will Republicans Betray America By Voting For Marc Tucker's A-72 
Human Resources Development System: H.R. 1617 and S. 143?" 

XVI "Totalitarian Data-Gathering System A-81 
Prepared by U.S. Department of Education" 

XVII Memos on Direct Instruction A-90 

XVIII "A Human Resources Development Plan for the United States" A-96 

XIX "Taxonomy" A- 11 3 

XX "The 'Skinner-Box' School" A- 122 

XXI "Status of Internationalization of Education" A- 126 

XXII "The Thief of American Individualism: A- 132 
Total Quality Management and School-to- Work" 

XXIII "Soviets in the Classroom: America's Latest Education Fad" A- 136 

XXIV "Our Children: The Drones" A- 143 

XXV (1) "The Truth about How We All Have Been Had" A-150 
(2) "The Difference between Traditional Education and 
Direct Instruction" 

XXVI "Shamanistic Rituals in Effective Schools*" A-159 

XXVII "Big Bad Cows and Cars: A- 167 
Green Utopianism & Environmental Outcomes" 



A-4 



Appendix I 



Excerpts from Community-Centered Schools 

Community-Centered Schools: The Blueprint, Montgomery County, Maryland Schools, as 
proposed by Dr. Nicholaus L. Englehardt and Associates, Consultants, and written by Dr. 
Walter D. Cocking (New York City: April 1, 1946). This was probably the most important 
blueprint for the nation, although The Hawaii Master Plan [see 1969] certainly follows in 
its footsteps. Dr. Paul Mort's statement below is right on target. It took exactly fifty years to 
implement "The Blueprint" in every school of the nation. Letter of transmittal states: 

[The] program should be put into operation gradually. . . and Dr. Paul Mort and others have 
accumulated evidence which shows a period of almost fifty years between the establishment 
of need (need assessment, etc.) and the school programs geared to meet it. 

If the school as an agency of society is to justify itself for the period ahead of us, 
it must be accepted that its fundamental function is to serve the people of the entire 
community, the very young children, the children of middle years, early adolescent youth, 
older youth and the adults as well. 

The task of the teacher of the future is a greatly different task than that which teachers 
usually performed in the past. The fundamental equipment expected of the teacher of 
yesterday was knowledge of the subject he taught. Modern education demands teachers 
who are acquainted by experience as well as by study with our democratic society and who 
participate actively in the life of the community. 

They have a broad cultural background and an understanding of world conditions. 
Teacher educational institutions have not prepared teachers to do these things. Prior 
emphasis has been upon subject matter and method. 

The Blueprint goes on to list the major purposes of a total instructional program "of benefit to 
the entire community." Under "The Educational Program" one finds: 

continuing and improving the teaching of the cultures of the past; 

developing the ability to communicate effectively; 

developing the ability to think; 

developing desirable personality and character traits; 



A-5 



A-6 



the deliberate dumbing down of amertca 



discovering and developing worthwhile interests; 
developing respect for others, or intercultural relations; 
protecting and promoting health; 

developing wholesome home and family life (Other agencies must accept at least some of 
the responsibilities formerly borne by the family. The school must study the problem 
intensively. It must experiment.); 

developing wholesome habits and understanding of work; 

good members of society cannot be developed if they are ignorant of work and what goes 
into it. In the years which lie ahead, it would appear that the school is the only agency 
which society has which can be expected to accept this responsibility. 

IT MUST BE DONE, [emphasis in the original] 

developing understanding of economic principles and forces (Emphasis must be placed 
upon the economic principles and forces which are operating at that time rather 
than upon those of the past.); 

developing consumer competence... schools of the future must do much about such 
things; 

developing vocational competence; 

developing social and civic competence — understand obligations as a member of the 

group;... and to give wholeheartedly and unselfishly service to his local, state, national 

and world government; 
developing understanding of, and skill in, the democratic way of life; 
developing knowledge, understanding of, and skill in, the creative arts; 
developing understanding of, and skill in, wholesome and worthwhile leisure activities (Much 

depends upon people discovering and practicing worthwhile leisure pursuits.); 
developing a well-rounded emotional life with particular attention to moral and spiritual 

needs. (A well-balanced emotional life is the final test of a well-educated person. 

It is our belief that all people are religious, that religion finds expression in many 

different ways. We do not believe in America that they should teach any particular 

kind or type of religion.) 

Under "The Service Program" one finds Health and Medical Services. (In the school of the 
future, provision must be made not only for children enrolled but to all people, young and 
old.) The list is endless and includes the following cradle-through-grave services: recreational, 
library, guidance and counseling, child care, demonstration and experimental services, 
planning and research, employment, audiovisual, social welfare, group meeting place, 
character-building services. The Plan [Blueprint] states further: 

The end results are that the school makes itself indispensable to all phases of 
community life. In the future development of school programs, the service program will 
receive increasing emphasis until the school becomes in fact the agency to which all the 
people in the community turn for assistance. 



Appendix II 



Excerpts from Teaching Machines and Programmed Learning 

Teaching Machines and Programmed Learning: A Source Book, edited by A. A. Lumsdaine, 
Program Director, American Institute for Research, Professor of Education, University of 
California, Los Angeles and Robert Glaser, Professor of Psychology, University of Pittsburgh, 
Research Advisor, American Institute for Research (Department of Audio- Visual Instruction, 
National Education Association, Washington, D.C., 1960). 

The original studies reported by contributors to this volume also received direct support 
from the Office of the Air Research and Development Command of the U.S. Air Force, the 
U.S. Office of Education, and a number of other agencies including HumRRO (Department 
of the Army), the Ford Foundation and the Fund for the Advancement of Education, and 
several industrial organizations. Acknowledgment should also be made of the support and 
encouragement provided on several of these projects by the University of Pittsburgh, Harvard 
University, and a number of other academic institutions. [Preface] 

From "Teaching Machines: An Introductory Overview," A.A. Lumsdaine: 

Despite great variation in complexity and special features, all of the devices that are 
currently called "teaching machines" represent some form of variation on what can be 
called the tutorial or Socratic method of teaching. That is, they present the individual 
student with programs of questions and answers, problems to be solved, or exercises to be 
performed. In addition, however, they always provide some type of automatic feedback 
or correction to the student so that he is immediately informed of his progress at each step 
and given a basis for correcting his errors. They thus differ from films, TV and most other 
audio-visual media as ordinarily utilized, because of three important properties. First, 
continuous active student response is required, providing explicit practice and testing of 
each step of what is to be learned. Second, a basis is provided for informing the student 
with minimal delay whether each response he makes is correct, leading him directly or 
indirectly to correction of his errors. Third, the student proceeds on an individual basis 
at his own rate — faster students romping through an instructional sequence very rapidly, 
slower students being tutored as slowly as necessary, with indefinite [sic] patience to 



A-7 



A-8 



the deliberate dumbing down of amertca 



meet their special needs, (p. 5) 

From "Results of Use of Machines for Testing and for Drill upon Learning in Educational 
Psychology," James Kenneth Little: 

Previous investigations of college instructional problems had (the writer felt) emphasized 
the following relevant points: (a) the motivating effect upon the learner of knowledge of 
standing and progress; (b) the value, both for motivation and for guidance in learning, 
of informing students specifically and immediately of their errors and their successes in 
their work; (c) the value in the above (and other) connections of the frequent short test, 
as contrasted with less frequent longer tests or examinations; (d) the great importance 
of continuous adjustment to individual differences not only in capacity but also in 
error pattern and difficulty; (e) the value, in all of these connections, of a consistent 
use of the make-up test. (p. 59) 

From Part III: "Skinner's Teaching Machines and Programming Concepts": 

A comprehensive report of the work at Harvard on teaching machines and the programming 
of materials used within them was prepared in 1958 as a report to the Fund for the 
Advancement of Education. Skinner summarized the first part of this report in a symposium 
paper at the 1958 meetings of the American Psychological Association and shortly thereafter 
published it in Science [October 23, 1958 issue] . This major article, reproduced in full as the 
third paper in Part III, attracted wide attention to the potentialities of "teaching machines." 
It also focused attention on the "programming" of detailed, carefully ordered learning 
sequences by which complex behavioral repertoires could be shaped through successive 
approximations, (p. 96) [emphasis in original] 

From "The Science of Learning and the Art of Teaching," B.F Skinner: 

Recent improvements in the conditions which control behavior in the field of learning are 
of two principal sorts. The "law of effect" has been taken seriously; we have made sure that 
effects do occur and that they occur under conditions which are optimal for producing 
the changes called learning. Once we have arranged the particular type of consequence 
called reinforcement, our techniques permit us to shape the behavior of an organism 
almost at will. It has become a routine exercise to demonstrate this in classes in elementary 
psychology by conditioning such an organism as a pigeon, (pp. 99-100) 

In all this work, the species of the organism has made surprisingly little difference. It is 
true that the organisms studied have all been vertebrates, but they still cover a wide range. 
Comparable results have been obtained with rats, pigeons, dogs, monkeys, human children, 
and most recently — by the author in collaboration with Ogden R. Lindsley — with human 
psychotic subjects. In spite of great phylogenetic differences, all these organisms show 
amazingly similar properties of the learning process. It should be emphasized that this has 
been achieved by analyzing the effects of reinforcement and by designing techniques which 
manipulate reinforcement with considerable precision. Only in this way can the behavior 
of the individual organism be brought under such precise control. It is also important to 
note that through a gradual advance to complex interrelations among responses, the same 
degree of rigor is being extended to behavior which would usually be assigned to such fields 
as perception, thinking, and personality dynamics, (p. 103) 



Appendix II 



A-9 



These requirements are not excessive, but they are probably incompatible with the current 
realities of the classroom. In the experimental study of learning it has been found that the 
contingencies of reinforcement which are most efficient in controlling the organism cannot 
be arranged through the personal mediation of the experimenter. An organism is affected 
by subtle details of contingencies which are beyond the capacity of the human organism 
to arrange. Mechanical and electrical devices must be used. Mechanical help is also 
demanded by the sheer number of contingencies which may be used efficiently in a single 
experimental session. We have recorded many millions of responses from a single organism 
during thousands of experimental hours. Personal arrangement of the contingencies and 
personal observation of the results are quite unthinkable. Now, the human organism is, if 
anything, more sensitive to precise contingencies than the other organisms we have studied. 
We have every reason to expect, therefore, that the most effective control of human learning 
will require instrumental aid. The simple fact is that, as a mere reinforcing mechanism, 
the teacher is out of date. This would be true even if a single teacher devoted all her time to a 
single child, but her inadequacy is multiplied many-fold when she must serve as a reinforcing 
device to many children at once. If the teacher is to take advantage of recent advances in the 
study of learning, she must have the help of mechanical devices, (p. 109) 

The important features of the device are these: Reinforcement for the right answer is 
immediate. The mere manipulation of the device will probably be reinforcing enough to 
keep the average pupil at work for a suitable period each day, provided traces of earlier 
aversive control can be wiped out. A teacher may supervise an entire class at work on such 
devices at the same time, yet each child may progress at his own rate, completing as many 
problems as possible within the class period. If forced to be away from school, he may 
return to pick up where he left off. The gifted child will advance rapidly but can be 
kept from getting too far ahead either by being excused from arithmetic for a time or 
by being given special sets of problems which take him into some of the interesting 
by-paths of mathematics, (p. 110) 

Some objections to the use of such devices in the classroom can easily be foreseen. The cry 
will be raised that the child is being treated as a mere animal and that an essentially human 
intellectual achievement is being analyzed in unduly mechanistic terms. Mathematical 
behavior is usually regarded not as a repertoire of responses involving numbers and 
numerical operations, but as evidence of mathematical ability or the exercise of the power 
of reason. It is true that the techniques which are emerging from the experimental study of 
learning are not designed to "develop the mind" or to further some vague "understanding" 
of mathematical relationships. They are designed, on the contrary, to establish the very 
behaviors which are taken to be the evidences of such mental states or processes. This is 
only a special case of the general change which is under way in the interpretation of 
human affairs. An advancing science continues to offer more and more convincing 
alternatives to traditional formulations. The behavior in terms of which human thinking 
must eventually be defined is worth treating in its own right as the substantial goal 
for education, (p. Ill) 

From Part V: "Some Recent Work," article entitled "Teaching Machines and Human 
Beings," John W. Blyth: 

There is another less obvious but no less important advantage to be gained in exploiting the 
teaching machine. The machine makes it possible to provide some of the conditions that 
we have long known to be necessary for effective learning. A savage instructing his son in 



A- 10 



the use of the bow and arrow knew that the son needed plenty of practice and that he had 
to see where the arrow went on each shot if he was to make any improvement on the next. 
The importance of this immediate feedback was formulated years ago by Thorndike as the 
"law of effect." According to this law of learning, an action which leads to a satisfactory 
result tends to be repeated. In the contemporary terminology of B.F. Skinner, of Harvard 
University, immediate reinforcement or reward is important in the learning process. As 
far as the application of this principle is concerned, we do a much better job of teaching 
rats, pigeons, and football players than we do in teaching mathematicians and physicists. 
Teaching machines designed for individual use make it possible to provide this immediate 
reinforcement for every student.... Laboratory experiments have demonstrated that the use 
of immediate reinforcement techniques is a very efficient way of training animals to make 
a discriminative response to selected stimuli. Rats and pigeons can be trained to perform a 
whole series of such responses in sequence. Their actions then form a complicated "chain" 
of events.... The only reason a rat should turn to the right rather than the left at a certain 
point is that it is that turn which leads to reinforcement, (p. 402) 



Appendix III 



Excerpts from Programmed Learning 

Programmed Learning: Evolving Principles and Industrial Applications, Jerome P. Lysaught, Ed. 
(Foundation for Research on Human Behavior: Ann Arbor, Michigan, 1961). 

Business organizations, as well as educational institutions, have an increasing demand 
for training, improved skills and more effective teaching methods. In October 1960, 
businessmen and social scientists met together to discuss programmed learning, some 
of its current applications in business, and the outlook for the future. This is the 
report of their meeting. 

About This Report 

...The increased demand for training, improved skills and better education in industry 
has stimulated some business organizations to explore the possibilities of programmed 
learning with the aid of devices which include automated teaching machines. The earliest 
teaching machines, developed several decades ago by S.J. Pressey who was the first 
psychologist to see "the coming industrial revolution in education" were designed for 
self-scoring, not for programmed instruction in the present sense. The appropriate current 
emphasis, reflected in the seminar, is on the concepts and principles of programmed 
learning, and on the translation of learning theory into the programming of instruction 
or teaching. Mechanical devices used should thus reflect the desired methods of teaching 
and learning, not determine them.... 

In planning the seminar held in October, 1960, Eastman Kodak and IBM representatives 
agreed to present and develop and use programmed instruction in their training programs. 
They shared the Foundation's conviction that a major emphasis on programming principles, 
learning theory and research, rather than on teaching machines themselves, would provide 
the most practical guidelines to other companies and to educational institutions interested in 
exploring programmed learning to increase the effectiveness of their training and education. 
Consequently, in addition to the two industry experiences, a large portion of the seminar 
was devoted to theory, principles, and the results of experimental studies in universities. 
The three social scientists from academic institutions who led these discussions at the 



A-ll 



A-12 



seminar are pioneers and distinguished leaders in this field. It became very clear that 
programmed learning is an area in which the research and experience of practitioners in 
universities and in industry can be of great mutual benefit. The speakers and discussion 
leaders at the seminar included the following: 

Dr. B.F. Skinner, Professor of Psychology, Harvard University 

Dr. Arthur A. Lumsdaine, Professor of Education, University of California, Los 
Angeles, and Research Advisor for Education Media to the American Institute 
for Research 

Dr. Robert Glaser, Professor of Psychology, University of Pittsburgh, and Research 
Advisor, American Institute for Research 

...The seminar was part of the Foundation's continuing program to bring the results of 
social science research to the businessmen who can use them. 

From the "Introduction," by Thomas H. Miller: 

In recent months the professional journals and some popular publications have had 
much to say about research on teaching machines and programmed learning. Because 
most of this research has been limited to a few specific experiments and because field 
application has generally been in elementary and secondary schools, very little has been 
said of applications to adult learning. It was our feeling, and this is why we are so pleased 
to cooperate with the Foundation in the holding of this seminar, that more of us should 
be exploring more fully the relevance and importance of programmed instruction to adult 
learning in general, and to business and industrial education in particular. 

First, I should emphasize that we here at Kodak are quite serious about this matter of 
programmed learning. We attempt to keep abreast of significant developments in learning 
theory and education because we are responsible for seeing that each one of our men 
and women receives the best possible training for his work in the company. We are 
confident that programmed learning will have great implications for our future efforts, 
and we look forward to providing better, more individualized instruction for our people 
as a result of this development. 

Secondly, I want to explain that our feelings about programmed learning result from 
two factors: the result of our own initial efforts at instructing by means of this system, 
and the inherent characteristics of programmed learning which will give strength to any 
industrial training experience. With programmed learning we can adapt instruction to the 
individuality of each student. Each student works at his own personal speed throughout 
the learning experience. Each student is constantly active, interacting with the program, 
concentrating on the task of learning. Each student can trace his own progress, and receive 
timely, individual reinforcement for correct work. 

To introduce the subject, we would like to have each of you work through the first 
lesson of Dr. B.F. Skinner's course in psychology. We would hope, incidentally, that a 
portion of the material is somewhat new to you so that some learning will actually take 
place in your encounter with the subject matter. Further, we hope it will demonstrate 
certain phenomena that will be spoken of repeatedly today, such as effective reinforcement 
of the learner and progress at the individual rate. 

Imagine yourself to be a freshman student at Harvard. You are taking, for the 
first time, a college course in psychology. This is your first day in that course. Your 
introduction to the course consists of the presentation of the programmed learning 
sequence on the next pages. 



Appendix III 



A- 



The directions are simple. You should read the first stimulus item, S-l, consider it, and 
then construct in your own words the best possible answer. As soon as you have done this, 
turn the page and compare your answer with the answer listed at R-l, the first response 
item. Proceed through the program, going on to S-2 on the next page, turning the page to 
R-2 and comparing your response; proceeding to S-3 below, turn back a page to compare 
your response to R-3, and so on. You will be reading back and forth, turning a page 
each time to find the response item. 

FIRST LESSON IN PSYCHOLOGY 

S-l. A doctor taps your knee (patellar tendon) with a rubber hammer to test your 



R-4. Hammer (or mallet) 

S-5. The stimulus which elicits a knee jerk is the delivered by the so-called 

"stimulus object" or hammer. 
R-8. Elicits 

S-9. To avoid unwanted nuances of meaning in popular words, we do not say that a stimulus 

"triggers," "stimulates," or "causes" a response but that it a response. 

R-12. Latency 

S-13. The weakest stimulus sufficient to elicit a response marks the "threshold" of the reflex. 

A tap on the knee will not elicit a kick if it is below the . 

R-l 6. Latency 

S-l 7. A forceful tap elicits a strong kick; a tap barely above the threshold elicits a weak kick. 

Magnitude of response thus depends on the intensity of the . 

R-20. (1) Response (2) Stimulus (3) Reflex 

S-21. If a sip of very weak lemonade does not cause salivation, the stimulus is said 
to be below . 



The following responses are on the turned page: 
R-l. Reflexes 

S-4. The stimulating object used by the doctor to elicit a knee jerk is a(n) . 

R-5. Tap (or blow) 

S-8. Technically speaking, a reflex involves a process called elicitation: A stimulus 

a response. 

R-9. Elicits 

S-12. The time which elapses between the onset of the stimulus and the onset of the 

response is called the "latency." Thus the time between tap and kick is the 

of the knee jerk reflex. 

R-13. Threshold 

S-16. The fraction of a second which elapses between "brushing the eye" and "blink" 

is the of the reflex. 

R-l 7. Stimulus (tap) 

S-20. When a person is startled by a loud noise, his sudden movement is his (1) 

to the noise, which has acted as a (2) . The two together are called a(n) 

(3) - 

R-21. Threshold 

From "Principles of Programming" by Robert Glaser: 



A-14 



(This article was prepared under U.S. Office of Education Research Contract SAE-8417 #691. 
This is a preliminary version of a forthcoming book chapter.) 

Yesterday, October 16, was the official publication date of the book Teaching Machines 
and Programmed Learning which Dr. Lumsdaine and I have edited, and which you have 
received for this seminar. It is indeed true that this book would never have been conceived 
without the well-known and perhaps undying work of Professor Skinner, and I would like 
to take this opportunity — what I consider to be a rather momentous occasion for both Art 
Lumsdaine and myself — to present Fred with a copy of the book at this time. It is largely 
through Professor Skinner's work that all this theory and excitement about teaching machines 
and programmed learning has come about. (Presentation to Professor Skinner). 

Most recently, and actually in the course of preparing this volume, I have completed or 
compiled what appears to me to be the major ideas being expressed in the field of teaching 
machines and programmed learning. The basic notions have been developed from research 
findings in the experimental study of learning and have been expressed by a number of 
men in the field, and to a large extent by the speakers at this platform. However, since 
the use of teaching machines is in its Kitty Hawk stage, and since the application of 
the science of learning to the development of a technology of training and education is 
also in its childhood, I should like to set these notions down for your consideration and 
discuss each point rather briefly... 

Evoking Specific Behavior 

The essential task involved is to evoke the specific forms of behavior from the student and 
through appropriate reinforcement bring them under the control of specific subject matter 
stimuli. As a student goes through a learning program, certain of his responses must be 
strengthened and shaped from initial unskilled behavior to subject matter competence. 
Programming rules are concerned with how one goes about doing this. 

Our present knowledge of the learning process points out that through the process of 
reinforcement, new forms of behavior can be created with a great degree of subtlety. The 
central feature of this process is making the reinforcement contingent upon performances of 
the learner. (Often the word "reward" is used to refer to one class of reinforcing events.) By 
differentially applying reinforcement to relatively minute behavioral changes, it is possible 
to progress from the initial behavior of the learner in small steps through the development of 
more complex behaviors. This progression can take place by small enough steps so that the 
student's progress and motivation is not jeopardized by frequent failures. 

Since a great deal of teaching and learning is needed for acquiring complex behavioral 
repertoires, such as a new language or calculus operation, the number of reinforcements 
and the subtleties of reinforcements required to establish such complicated behavior 
over-taxes the skill of the most efficient instructor, especially within the limits of his time 
and usual classroom organization. 

...The term "programming" refers to the process of constructing sequences of 
instructional material in a way that maximizes the rate of acquisition and retention, and 
enhances the motivation of the student.... 

Defining the Desired Behavior 

...The first step in programming is to define the field. This means that the programmer must 
outline precisely the behavior he wants the student to perform at the end of the program 
and must specify the kinds of stimulus material that a student will have available in the 
course of this performance. A primary purpose of instruction is to provide the student with 
a behavioral repertoire called knowledge of the subject matter.... 



Appendix III 



A- 



Reinforcement a Central Process 

A central process for the acquisition of behavior is reinforcement. Behavior is acquired as a 
result of a contingent relationship between the response of an organism and a consequent 
event. In order for these contingencies of reinforcement to be effective, certain conditions 
must be met. Reinforcement must follow the occurrence of the behavior being taught. If 
this is not the case, different and perhaps unwanted behavior will be learned. In addition, 
a sufficient number of reinforcements must be given so that the desired behavior is 
strengthened and its probability of occurrence for a particular student is high in appropriate 
situations. As has been said, in progressing from the initial repertoire to the terminal 
repertoire, the student is reinforced for minute changes in behavior which bring him 
closer and closer to skilled performance. And these minute changes are brought about by 
successive steps in the program. In most instructional programs, the reinforcing agent for 
the students is "knowledge of results," that is, knowledge about whether or not the response 
he performs is the result considered correct. Failure to provide adequate reinforcement and 
hence failure to strengthen the behavior of the student with respect to the subject matter 
often results in the student showing a lack of interest. This means that his interest is shifted 
to other activities for which sufficient reinforcement is provided.... 

The Principle of Gradual Progression 

My third point is gradual progression to establish complex repertoires. In getting the student 
from his initial repertoire to the terminal repertoire, it has been indicated that an important 
principle is that of gradual progression. We do not wait for the student to emit complex 
behavior in the course of trial and error and then reinforce correct performance. In fact, he 
may never emit the skillful behavior we require. When developing complex performance we 
first reinforce any available behavior which is the slightest approximation to the terminal 
behavior. Later we use this behavior in the next step to reinforce a small change which is in 
the direction of the terminal repertoire. The program moves in graded steps working from 
simple to higher and higher levels of complexity. 

The principle of gradual progression serves to make the student correct as often 
as possible and is also the fastest way to develop a complex repertoire. It is difficult 
to see how complex behavior can appear except through the specific reinforcement of 
members of a graded series. It seems that this is an important principle in the rapid 
creation of new patterns of behavior. 

At each step, the programmer must ask what behavior must a student have before he 
can take this step. He must ask what principles or interverbal relationships will facilitate 
this sequence of steps that form a progression from initially assumed knowledge to the 
specified final repertoire. No step should be encountered before the student can take it 
with a high probability of success. . . . 

Eliciting Available Responses and Controlling Error 

The next point that I want to make is called "emitted behavior and prompting". This 
concerns making the desired behavior more probable. A student is assumed, as I have said, 
to possess some initial related behavior in the subject matter before he starts the course. 
The behavior available must be specified, and the programmer can, at the beginning, 
appeal only to those available responses. How then do we get the students to emit these 
available responses? Before behavior is reinforced, it must be emitted and instructional 
material must be designed to elicit the correct and appropriate behavior which can then 
be appropriately reinforced. A major portion of what we call the rules of programming is 
concerned with evoking behavior, that is, concerned with techniques for getting the students 
to emit new or low strength responses with a minimum of errors. 



A-16 



The occurrence of behavior in a program is made more probable if the materials are 
designed so that each frame makes the correct answers in the next frame more likely. The 
probability of success is increased by the use of formal hinting and coaching techniques 
based upon what we know about verbal behavior.... 

Putting the Student on His Own 

The next point is called "fading or vanishing." Thus far it has been indicated that 
programming techniques utilize the principle of reinforcement, the principle of prompting. 
The next one we come to is the principle of fading or vanishing. This principle involves 
the gradual removal of prompts or cues, so that by the time the student has completed the 
lesson, he is responding only to the stimulus material which he will actually have available 
when he performs the "real task." He is on his own, so to speak, and learning crutches 
have been eliminated. Fading can then be defined as the gradual withdrawal of stimulus 
support. The systematic progression of programmed learning is well set up to accomplish 
this. It is always to be kept in mind that these principles are quite in contrast to "rote 
learning" or drill. In rote learning, many wrong responses are permitted to occur, and the 
student eventually learns to develop his own prompts often to a relatively unrelated series 
of stimuli. Programmed learning, on the other hand, is designed to take advantage of the 
inherent organization of the subject matter or of the behavior of the subject in relation to the 
subject matter in shaping up the student's learning, [all emphases in original] 



[Ed. Note: The computer in 1999 is a sophisticated version of the teaching machine referred 
to in I960.] 



Appendix IV 



Excerpts from A Plan for Evaluating the Quality of Educational 

Programs in Pennsylvania 

A Plan for Evaluating the Quality of Educational Programs in Pennsylvania: Highlights of a 
Report from Educational Testing Services (Princeton, NJ) to the State Board of Education of 
the Commonwealth of Pennsylvania, June 30, 1965. 

BACKGROUND 

The planning project reported in this document had its inception in a mandate from 
the General Assembly of Pennsylvania. The mandate is to be found in Section 290.1 
of the Act of August 8, 1963, P.L. 564 (Act 299, The School District Reorganization Act 
of 1963). It reads as follows: 

Educational Performance Standards — To implement the purpose of this 
subdivision, the State Board of Education, as soon as possible and in any event 
no later than July 1, 1965, shall develop or cause to be developed an evaluation 
procedure designed to measure objectively the adequacy and efficiency of the 
educational programs offered by the public schools of the Commonwealth. 
The evaluation procedure to be developed shall include tests measuring the 
achievements and performance of students pursuing all of the various subjects 
and courses comprising the curricula. The evaluation procedure shall be so 
constructed and developed as to provide each school district with relevant 
comparative data to enable directors and administrators to more readily appraise 
the educational performance and effectuate without delay the strengthening of 
the district's educational program. Tests developed under the authority of this 
section to be administered to pupils shall be used for the purpose of providing a 
uniform evaluation of each school district and the other purposes set forth in this 
subdivision. The State Board of Education shall devise performance standards 
upon completion of the evaluation procedure required by this section. 

This committee on Quality Education sought the advice of experts in the behavioral 
sciences. These experts constituted a Standing Advisory Committee for the project.... It [the 
Committee] concluded that an educational program is to be regarded as adequate only if it 



A-17 



A-18 



can be shown to contribute to the total development of pupils.... The Committee recognizes 
that many of the desirable qualities that schools should help pupils acquire are difficult 
to define and even more difficult to measure. It feels, nevertheless, that any evaluation 
procedure that leaves these qualities out of account is deficient as a basis for determining 
whether the program of any school district is educationally adequate. Having in mind this 
view of education and its evaluation, the Committee requested the Educational Testing 
Service [Note: federally-funded, ed.] of Princeton, N.J. to assist in the development of 
a plan for the implementation of Act 299.... What follows gives the highlights of the 
three-volume report entitled A Plan for Evaluating the Quality of Educational Programs 
in Pennsylvania. 

PROPOSED GOALS OF EDUCATION 

The first step in judging the quality of educational programs is to decide on the purposes of 
education. What should children be and do and know as a consequence of having gone to 
school? What are the goals of the schools? These questions have been high on the agenda of 
the Committee on Quality Education. Its members wanted a set of goals that would reflect 
the problems society faces in the world today.... Available measures of the factors are 
uneven in their development. Some of the measures are considerably more valid, precise, 
and interpretable than others. Measures of conventional academic achievement, for 
instance, are at a more advanced stage of development than measures of attitude and 
values. This unevenness poses a difficult, but not an insoluble, problem in designing 
an evaluation program of the kind we are proposing, In a nutshell, the current situation 
is as follows: 

1 . All of the ten goals of education stated above are to be regarded of prime importance 
in education of high quality. Any educational program that neglects any of the 
goals is to be regarded as less than adequate. [The Ten Quality Goals are listed 
below under California's Plan which lists Pennsylvania's Ten Quality Goals as 
those to be used by California, ed.] 

2. Measures of progress toward the ten goals are unequally developed. Some are more 
dependable and valid than others. For example, tests of reading comprehension 
are relatively well developed and reasonably well understood, while tests of 
such qualities as self-understanding and tolerance are less well developed and 
poorly understood. 

3. Nevertheless, the evaluation of pupil performance in all areas is critically important 
as a means of keeping educational programs in balance. 

4. Work should therefore begin on evaluating progress toward all ten goals to the 
extent that this is possible. 

5. Where the available measures are clearly inadequate, intensive research and 
development should be undertaken immediately to bring them to the point where 
they can have full effect in the evaluation program. 

6. Where the available measures are adequate, studies should be undertaken 
immediately to use these measures in the development of appropriate criteria 
for assessing school programs. 

ILLUSTRATIVE STUDIES 

During the past year, we conducted two studies involving five school systems for the 
following purposes: (1) to identify specifically the practical problems that would be 
encountered in studies to develop performance criteria for school programs, (2) to see 
what usable measures might be obtained for measuring the kinds of output called for by 



Appendix IV 



A- 



the ten proposed goals of education, (3) to see what usable measures might be available for 
measuring input and the variables that condition output, (4) to see how the several measures 
might be related and combined to produce the necessary performance criteria. 

The outcomes of these studies suggest (1) that good cooperation can be expected 
from the school systems in conducting such studies in the future, (2) that reliable measures 
of some aspect of each of the ten kinds of output implied by the ten goals is possible, 

(3) that the validity of many of the available measures, however, is open to question, 

(4) that there are many measures still to be developed if all the most important aspects 
of educational output are to be effectively appraised, (5) that it is feasible to express 
performance criteria in a form which takes into account conditions under which schools 
work and which at the same time constitute a challenge to the majority of schools to 
improve their programs. 

THE DEVELOPMENT AND APPLICATION OF PERFORMANCE CRITERIA 

Out of the work of the two illustrative studies a design for a study to develop performance 

criteria has emerged. It has five characteristics as follows: 

1. It would provide multiple performance objectives for schools of any given type. 

2. It assumes that pupils at seven different grade levels will be tested twice, two years 
apart, first, to establish levels of input and second, to establish levels of output. 
[This was, for many years, the NAEP schedule, ed.] 

3. It envisages a testing program which consists of a core program made up of 
tests which have already been proved to be dependable and an experimental 
program made up of tests to be developed to a state of dependability in the 
course of the study. 

4. It would be carried out on a ten per cent sample of the schools of the Commonwealth 
and would probably involve about 7,000 classrooms and 200,000 pupils. [This is 
the NAEP sampling method used for many years, ed.] 

SUPPORTING RESEARCH 

At all stages of this planning study it has become increasingly apparent to us that any 
program to evaluate the quality of education in Pennsylvania which was unaccompanied by 
a strong program of research would be sterile. Two kinds of research are essential: 

• Research specially designed to invent, develop, and validate the measures needed 
by the evaluation program — especially measures of the kinds of educational output 
assumed by such goals as self-understanding, tolerance, citizenship, attitude toward 
school and learning, and creativity. 

• Research to identify those educational processes and those modifiable conditions 
of learning that hold the greatest possibilities for improving the educational output 
in schools of varying types. 

...The four studies were concerned (a) with measures of the ways children think 
and solve problems, (b) with the test-taking motivation of students in culturally deprived 
areas, (c) with the measurement of creativity, and (d) with the attitudes of primary 
school pupils toward school. 

What have the studies shown? 

• They have shown that ordinary achievement tests leave untouched many important 
intellectual qualities of students, but that with a concentrated program of research 
it should be possible to develop measures of these qualities. 



A-20 



• They have shown that youngsters from disadvantaged backgrounds do not 
usually try as hard on tests as their more favored classmates, but that they can 
be motivated to do so. 

• They have shown that it is possible to get a rough measure of the degree to 
which students bring a creative approach to the arts, the sciences, and the 
problems of human relations. 

• They have shown how the attitudes of primary school children toward their teachers, 
their school, their classmates may be developing and have suggested how important 
these attitudes can be in conditioning the children's further education. 

Finally, these studies have shown that much more research needs to be done on 
how to assess the output of the schools and how to develop procedures for strengthening 
their programs. We are convinced by our work this year that such research will be fruitful 
and should be energetically pursued. 

RECOMMENDATIONS 

1. General policies: 

1.2. The evaluation program should avoid any suggestion of a policing operation 
to see where schools are meeting minimum regulations. It should encourage, 
not inhibit, experimentation with (a) new curricula, (b) new administrative 
arrangements, (c) new approaches to instruction.... 

1.3. The State Board of Education should rely upon the Superintendent of Public 
Instruction for developing and executing the evaluation program, it being 
understood, however, that where appropriate he may delegate parts of the 
work to universities or to other competent agencies outside the Department 
of Public Instruction. . . . 

2. Procedures. The following procedures are recommended as constituting the 
essentials of an educational evaluation program for the Commonwealth.... 

2.2. A General Panel of Review consisting of educators, behavioral scientists, and 
representatives of the general public should be appointed to review the system of 
tests and measures to be used to ascertain how well pupils are progressing toward 
the educational goals and to advise on research and development leading to new 
and improved means of assessing progress toward the goals. 

2.3. For each of several areas of educational output, there should be a Sub-Panel 
of Examiners drawn from the General Panel of Review, with additional numbers 
drawn from among appropriate specialists in education and the behavioral sciences, 
to consider in detail the tests and measures related to the area of their concern 
and to advise the General Panel of Review regarding the quality of the tests and 
measures and the means for their improvement. 

2.4. A broad program of research should be initiated forthwith for the purpose of (a) 
improving the educational output, especially those that have to do with the personal 
and social qualities of pupils and for which in many cases no satisfactory measures 
now exist, and (b) discovering those processes of education and conditions of 
learning that will maximize the quality of educational output under a variety 
of circumstances. This program of research should take full advantage of the 
outcomes of similar research being done elsewhere by adapting these outcomes 
to the needs of Pennsylvania. 

2.5. In those cases where a school system, after applying the appropriate criteria, 
is dissatisfied with the level of performance of its pupils, such school systems 
should have the advice and assistance of the Department of Public Instruction in 
determining what changes in educational processes and/or in the conditions of 



Appendix IV 



A-21 



learning would be most likely to bring about improvement. 

Proof that Pennsylvania's goals were the model for the nation is found in the California 
State Plan, Title III of the Elementary and Secondary Education Act, P.L. 89-10, as Amended 
by P.L. 90-247, 1970, which states on page 2, (6/9/69 revised): 

These Ten Goals were generated in the Study of Quality Education initiated by the 
Pennsylvania State Board of Education in response to a mandate from the Pennsylvania 
General Assembly. The Ten Goals provided a classification system simple enough (in terms 
of the number of categories) to work with and yet comprehensive enough in scope to 
include almost any educational objective, whether cognitive, affective [attitudes, values, 
ed.] or psychomotor. These Ten Goals are listed below: 

1. Quality education should help every child acquire the greatest possible 
understanding of himself and appreciation of his worthiness as a member of 
society (Self- Understanding) . 

2. Quality education should help every child acquire understanding and appreciation 
of persons belonging to social, cultural, and ethnic groups different from his 
own (Tolerance of Others) . 

3. Quality education should help every child acquire to the fullest extent possible for 
him mastery of the basic skills in the use of words and numbers (Basic Skills) . 

4. Quality education should help every child acquire a positive attitude toward school 
and toward the learning process (Attitude Toward School) . 

5. Quality education should help every child acquire the habits and attitudes associated 
with responsible citizenship (Citizenship) . 

6. Quality education should help every child acquire good health habits and an 
understanding of the conditions necessary for the maintenance of physical and 
emotional well being (Health) . 

7. Quality education should give every child opportunities in one or more fields 
of endeavor (Creativity) . 

8. Quality education should help every child understand the opportunities open to 
him for preparing himself for a productive life and should enable him to take full 
advantage of these opportunities (Vocational Preparation) . 

9. Quality education should help every child to understand and appreciate as much 
as he can of human achievement in the natural sciences, the social sciences, the 
humanities, and the arts (Intellectual Achievement) . 

10. Quality education should help every child prepare for a world of rapid changes 
and unforeseeable demands in which continuing education throughout his adult 
life should be a normal expectation (Life-Long Learning) . 

[Ed. Note: Anita Hoge's successful complaint against the Pennsylvania Department of 
Education's Educational Quality Assessment (EQA), filed under the federal Protection of 
Pupil Rights Amendment, exposed the extent of federal involvement in curricula, testing 
and evaluation primarily designed to change children's attitudes, values, and beliefs. These 
are the areas to which parents most vociferously object. In the mid-1970s the Pennsylvania 
chapter of the liberal American Civil Liberties Union sided with parents regarding their 
objections; i.e., invasion of privacy, etc. 

All state and local school district goals, standards, competencies, outcomes, results, etc., 
developed from this time on across the nation were based primarily on these Pennsylvania 



A-22 



goals. It is interesting to note that the plans for national assessment were in progress several 
years prior to passage of the Elementary and Secondary Education Act of 1965. This Act 
signified the end of local control due to its call for the installation of an accountability system 
in each of the state departments of education applying for federal assistance. 

It should be noted that included on the Standing Advisory Committee and its pool of 
"experts" in the behavioral sciences were: David R. Krathwohl (co-author with Benjamin Bloom 
of The Taxonomy of Educational Objectives: Affective Domain) of the College of Education 
at Michigan State University; Urie Bonfenbrenner of the Department of Sociology at Cornell 
University; and Ralph W. Tyler of the Center for Advanced Study in the Behavioral Sciences 
at Palo Alto, California.] 



Appendix V 



Comments on and Excerpts from Behavioral Science 
Teacher Education Program (BSTEP) 

Behavioral Science Teacher Education Program (BSTEP), 1965-1969, funded by the U.S. 
Department of Health, Education, and Welfare, was initiated at Michigan State University. 
Its purpose was to change the teacher from a transmitter of knowledge/content to a social 
change agent/facilitator/clinician. Traditional public school administrators were appalled 
at this new role for teachers. Long-time education researcher Bettye Lewis provided a 
capsule description and critique of BSTEP in 1984. Her comments and verbatim quotes 
from BSTEP follow: 

Objectives of BSTEP are stated as follows: 
Three major goals: 

1 . Development of a new kind of elementary school teacher who is basically well 
educated, engages in teaching as clinical practice, is an effective student of the 
capacities and environmental characteristics of human learning, and functions 
as a responsible agent of social change. 

2. Systematic use of research and clinical experience in decision-making processes 
at all levels. 

3. A new laboratory and clinical base, from the behavioral sciences, on which to 
found undergraduate and in-service teacher education programs, and recycle 
evaluations of teaching tools and performance. 

...The BSTEP teacher is expected to learn from experience through a 
cyclical style of describing, analyzing, hypothesizing, prescribing, treating, 
and observing consequences (in particular — the consequences of the treatment 
administered) .... 

The program is designed to focus the skills and knowledge of Behavioral 



A-23 



Scientists on education problems, translating research into viable programs for 
preservice and in-service teachers. The traditional concept of research as theory 
is not discarded, but the emphasis is shifted to a form of practical action-research 
in classrooms and laboratory. 

The humanities are designed to promote an understanding of human 
behavior in humanistic terms.... Students are to be exposed to non-western 
thought and values in order to sensitize them to their own backgrounds and 
inherent cultural biases.... Skills initiating and directing role-playing are developed 
to increase sensitivity and perception. Simulation games are included for training 
in communication skills as leaders or agents of social change, (p. 1) 

Lewis's comments regarding "Systematic Analysis of Future Society," taken from 
237 of BSTEP: 

B.F. Skinner's behavioral philosophy is quite apparent in this BSTEP Design 
which states 

Calculations of the future and how to modify it are no longer considered 
obscure academic pursuits. Instead, they are the business of many who 
are concerned about and responsible for devising various modes of social 
change. 

One can't help but wonder — who gave the educators the "responsibility" or the 
"right" to devise modes of social change, to use teachers as the "change agents," and to use 
the children as the guinea pigs through which society is to be changed? One realizes the 
extent to which this "future society planning" has already gone after reading through the 
following lengthy list of organizations involved in this behavioral designing: 

1. Department of Health, Education, and Welfare — Exploring Possibilities of a Social 
State-of-the-Union 

2. American Academy of Arts and Sciences — Commission of the Year 2000 

3. American Academy of Political and Social Science 

4. United Nations Future-Planning Operation in Geneva, Switzerland 

5. World Future Society of Washington, D.C. 

6. General Electric Company — Technical Management Planning Organization 

7. The Air Force and Rand Corporation [designer of PPBS, ed.] 

8. The Hudson Institute [See 1992 entry regarding approval by business/corporation- 
funded New American School Development Corporation of the Hudson Institute's 
"Modern Red School House" proposal. The Design Team was headed by former 
Secretary of Education William J. Bennett and includes Chester Finn, former Assistant 
Secretary to Education Secretary, and former Governor Lamar Alexander and author 
of America 2000 (President Clinton's Goals 2000), ed.] 

9. Ford Foundation's Resources for the Future and Les Futuribles — a combination 
of future and possible 

10. University of Illinois, Southern Illinois University, Stanford University, Syracuse 
University, etc. 

11 . IBM (International Business Machines) 

This section of the report concludes with: "We are getting closer to developing 
effective methods for shaping the future and are advancing in fundamental social and 



Appendix V 



A-25 



individual evolution." 

From the section entitled "Futurism as a Social Tool and Decision-Making by an Elite 
(p. 248) Lewis quotes: 

The complexity of the society and rapidity of change will require that comprehensive 
long-range planning become the rule, in order that carefully developed plans will be ready 
before changes occur.... Long-range planning and implementation of plans will be made 
by a technological-scientific elite. Political democracy, in the American ideological sense, 
will be limited to broad social policy; even there, issues, alternatives, and means will 
be so complex that the elite will be influential to a degree which will arouse the fear 
and animosity of others. This will strain the democratic fabric to a ripping point.... [The 
reader should refer to the 1972 entry entitled "People Control Blueprint" from the May 
issue of The National Educator, ed.] 

"A Controlling Elite" 

...The Protestant Ethic will atrophy as more and more enjoy varied leisure and guaranteed 
sustenance. Work as the means and end of living will diminish.... No major source of a 
sense of worth and dignity will replace the Protestant Ethic. Most people will tend to be 
hedonistic, and a dominant elite will provide "bread and circuses" to keep social dissension 
and disruption at a minimum. A small elite will carry society's burdens. The resulting 
impersonal manipulation of most people's lifestyles will be softened by provisions for 
pleasure-seeking and guaranteed physical necessities, (p. 255) 

"Systems Approach and Cybernetics" 

...The use of the systems approach to problem solving and of cybernetics to manage 
automation will remold the nation. They will increase efficiency and depersonalization.... 
Most of the population will seek meaning through other means or devote themselves to 
pleasure seeking. The controlling elite will engage in power plays largely without the 
involvement of most of the people.... The society will be a leisurely one. People will 
study, play, and travel; some will be in various stages of the drug-induced experiences. 
(P- 259) 

"Communications Capabilities and Potentialities for Opinion Control" 

...Each individual will receive at birth a multipurpose identification which will have, 
among other things, extensive communications uses. None will be out of touch with 
those authorized to reach him. Each will be able to receive instant updating of ideas 
and information on topics previously identified. Routine jobs to be done in any setting 
can be initiated automatically by those responsible for the task; all will be in constant 
communication with their employers, or other controllers, and thus exposed to direct and 
subliminal influence. Mass media transmission will be instantaneous to wherever people 
are in forms suited to their particular needs and roles. Each individual will be saturated 
with ideas and information. Some will be self-selected; other kinds will be imposed overtly 
by those who assume responsibility for others' actions (for example: employers); still 
other kinds will be imposed covertly by various agencies, organizations, and enterprises. 
Relatively few individuals will be able to maintain control over their opinions. Most will be 
pawns of competing opinion molders. (p. 261) 



Lewis comments further: 



A-26 



In order to implement this training and to make sure that future elementary teachers 
accept the "right attitudes" and "behavioral objectives," the use of computers and the col- 
lection of information are stressed. The "Central Processor" or the computer programmed 
to accept or reject on the basis of behavioral objectives, will be the "judge and the jury" as 
to who will and who will not be the future teachers. For anyone who loves individual free- 
dom, who desires it for their own children, and prays for a future America with individual 
freedom held sacred — BSTEP has to be a most frightening and devastating plan. It is indeed 
the "world" of Orwell's 1984, the Identity Society, and the Walden II of B.F. Skinner. In refer- 
ence to the latter, it is indeed Beyond Freedom and Dignity, the title of a B.F. Skinner book. 
It is a "nightmare" created by the Behaviorists and Humanists who are fast becoming the 
Major Directors of Public Education. 



Appendix VI 



Excerpts from Education for Results 

Education for Results: In Response to A Nation At Risk, Vol.1: Guaranteeing Effective 
Performance by Our Schools by Robert E. Corrigan, Ph.D., and Betty 0. Corrigan (SAFE 
Learning Systems, Inc.: Anaheim, CA, 1983). This particular paper was published in 1983 for 
the Reagan Administration's use, and actually served as a springboard for implementing OBE. 
Most of the experimentation history (pilot OBE/ML/DI) programs, including one in Korea 
discussed in this paper, were implemented in the 1960s and 1970s. 

The Education for Results Project, which basically called for using Corrigan's Model 
(mastery learning/outcome-based education/management information systems) had the 
support of the following twenty key education change agents: 

Dr. Leon Lessinger, Superintendent, Beverly Hills School District, Beverly Hills, CA; Dr 
Jack Ward, Associate Superintendent, Mendocino County, CA; Dr Robert Kane, Consultant, 
Teacher Preparation & Licensing Committee, State of California; Dr Nolan Estes, Professor 
of Education, University of Texas; Dr James McPhail, Chairman, Department of Educational 
Administration & Supervision, University of Southern Mississippi; Dr Hosea Grisham, 
Superintendent, North Panola County School, Mississippi, President, Mississippi Association 
of School Administrators; Dr Hines Cronin, Superintendent, Moss Point School District, 
Moss Point, MS; Dr Mel Buckley, Superintendent, Newton Public School, Newton, MS; Dr 
Robert Morgan, Director, Learning Systems Institute, Florida State University, Tallahassee, 
FL; Dr Roger A. Kaufman, Professor of Education, Florida State University, Tallahassee, 
FL; Dr Homer Coker, Teacher Corps Program, Georgia State University, Atlanta, GA; Dr 
Annette Kearney, Assistant Director, National Council for Negro Women, New York City; 
Dr John Picton, Beaverton, OR; Dr Louis Zeyen, Deputy Executive Director, American 
Association of School Administrators; Dr William Spady, Director, Center for the Improvement 
of Learning, Arlington, VA; Dr Gene Geisert, Professor of Education, St. John's University, 
Jamaica, NY; Dr Al Hoye, Minneapolis Unified School District, MN; Dr Wilfred Landrus, 
Chapman College, Professor of Education, Orange, CA; Dr Robert Corrigan, Corrigan and 
Associates, Anaheim, CA; and Mrs. Betty Corrigan, Corrigan and Associates, Anaheim, CA. 
Lessinger, Estes, Kaufman, Coker, Spady and the Corrigans are among the key proponents 



A-27 



A-28 



of OBE/ML and have been involved for many years. The following are excerpts from 
Education for Results: 

PROLOGUE: Committing to the Feasible Delivery of Effective Educational Results, by Nolan 
Estes, prior U.S. Commissioner of Education, University of Texas, Austin.... On April 26, 
1983, the National Commission for Excellence in Education presented to President Ronald 
Reagan A Nation at Risk, a report on the status of quality education in the United States. 
This commission was formed by Secretary of Education Dr. Terrel Bell, in August 1981, 
to evaluate the current status of our national educational system in terms of its overall 
performance effectiveness; and, where appropriate, to propose changes in policy, practices, 
and programs to increase the effectiveness of our schools.... 

The beginning of this reported decline in the performance effectiveness began in the 
1960's. As a Commissioner of Education (1965-1969), along with other Commissioners, 
we made substantial investments in grants and programs to develop more effective 
professional practices to replace those then in operation. We concentrated our investments 
in two major programs, namely: 

A. To increase learning effectiveness [mastery scores) for all learners; and 

B. To increase the management effectiveness of the delivery system to increase the 
measured success for learners. 

Several major multi-million dollar programs were initiated in the 1960's consistent 
with the achievement of the goals stated above. The major focus on development of more 
effective management-for-results practices and application was Operation PEP, State of 
California. This was a multi-year program involving several hundred senior educational 
administrators across the state. Dr. Robert E. Corrigan, as director of the training programs, 
offered to these administrators skills in management-for-results practices encompassed 
in his "Systematic Approach for Effectiveness" (SAFE). The acceptance of these practices 
by these senior educational practitioners is evidenced by the fact that they were applied 
by Title III management centers across the state of California after the federal funds 
were removed. 

A second key thrust by the Department of Education (1965-1968) was to support the 
development of new teaching practices which would prove more effective in the delivery 
of success for learners. A major program was funded for the installation of a Teacher 
Fellowship Program at Chapman College, Orange, California. This program was headed by 
Dr. Robert E. Corrigan to develop a Masters Degree in Instructional Systems Design (ISD). 
This developing program focused on the design of a new learning-centered technology 
developed by the Corrigans to assure predictable mastery by all learners of all relevant 
skills and knowledge in the curricula offered in our schools. 

...In these two volumes presented herein by the Corrigans, you are offered the 
PROOF of these most effective results-focused practices by many school districts both 
large and small, both urban and rural, in a variety of areas across our country over a 
period of 22+ years (1960-1983). 

Since the 1960s, these effective management-for-results practices have expanded 
to include the required use of micro computer management systems to control for 
the delivery of cost-effective results for learners, for the educational practitioners, 
and the taxpayers. 

These publications (Volumes I and II) offer to all educational partners (including 
teachers, learners, administrators, boards of education, parents, and the community at large) 
proven ways and means to deliver effective performance by our schools — a "business-like" 



Appendix VI 



A-29 



approach to manage the achievement of established priorities for action and the installation 
of these successful educational practices in the schools of America. 

...We are required NOW to make only the necessary minimal investments in time 
and/or money by each member of the educational partnership in order to turn our 
currently reported mediocre performance effectiveness as presented by the Commission 
on Excellence into a shining success story for all concerned, in particular for the 
future citizens of this nation and the survival and growth of our nation as a whole, 
[all emphases in original] 

From Chapter 13: "Instructional Systems Development in Korean Educational Reform" 
by Robert M. Morgan: 

A Systems Center Study of Korean Education — 1970 
The aim of this study was an attempt by the Republic of Korea to determine if it might 
be able to organize its educational resources in ways that would make its educational 
programs more responsive to the nation's needs and, simultaneously, function more 
efficiently. The Korean Government invited the Florida State University to assist with the 
project and an interdisciplinary study team was assembled. In the planning phase of the 
project it was judged that a "systems approach" to the analysis of Korea's educational 
sector would be suitable. 

The study team spent three months in Korea in 1970 gathering information about 
the educational system, the economy, the nation's needs and wants for its educational 
programs, and the resources available for potential improvement of the system. Members 
of the study team visited schools at all levels throughout Korea and talked to hundreds 
of teachers, administrators and students. The team also worked with several Korean 
government ministries. 

...The data was analyzed in terms of future manpower needs and educational 
output, estimated cost benefits, strategies for appropriate introduction of innovation 
and technology into the system. 

[Ed. Note: While reading the following, please keep in mind educational restructuring in the 
United States to meet the demands of the global economy — the shift from academic education 
to work force training, using Outcome-Based Education/ML/DI and TQM.] 

Economic Factors 

Following the Korean War the Korean economy experienced remarkable industrial progress 
and growth which was predicted to continue into the foreseeable future. The labor force was 
increasing steadily and the rate of unemployment, decreasing. However, a major problem 
was anticipated from lack of congruence between the nation's manpower requirements and 
the projected supply of skilled technical labor. The only long-range solution to these problems 
was a reordering of the educational priorities in the schools of Korea. 

The Contemporary Korean School System 
The educational goals that characterized the Korean elementary and middle schools 
in 1970 were... restricted to the conventional academic domain. The student learning 
outcomes at these levels fell almost exclusively into the informational and skill categories of 
education and was characterized by rote memorization of classically academic subjects with 
the overriding objective of preparing students for the national competitive examinations 
which were used to select those students for entry to the next level of education. 

The existing curriculum was not as relevant to preparing Korean children to live and 



A-30 



prosper as adults as it could and should have been. While the study team did not attempt 
to specify educational objectives, it believed the curriculum could be broadened to include 
the teaching of inquiry skills and problem-solving approaches and generally attend more to 
process objectives— and that these should not only be learning outcomes but also serve as 
effective instructional means. It was also suggested that pre-occupational training would add 
to the graduates' employability, retrainability and occupational mobility. 

A Proposed New Educational Model — 1971 
The study team suggested that a nine-year, free and compulsory educational program 
was necessary to support Korea's continuing economic expansion. {Systems Analysis 
for Educational Change: The Republic of Korea by Morgan, Robert M. and Chadwick, 
C.B. [University of Florida Press: Gainesville, FL, 1971]). The vocational high schools of 
Korea were not effectively serving the purposes for which they were formed. Based upon 
assumptions about potential for improved academic accomplishment at the elementary- 
middle school level, the study team recommended that this training be directed exclusively 
to preparing people for specific jobs. The job training programs would be of variable 
duration, would be operated only as long as there were known manpower needs 
for the jobs in question, and would be open to qualified citizens of any age level, 
[emphasis added] 

...The new school proposed by the study team involved a number of changes from the 
existing system. These included changing the basic instructional unit from its present class 
size to a larger grouping, introducing individualized instructional concepts and associated 
materials, modifying the role of the teaching staff, increasing the ratio of students to 
teachers, and using programmed instructional television and radio. 

...A middle school... moved to a system of individualized instruction... would be 
performance based, permit students to move at their own learning rate, and would place 
a larger measure of responsibility on the students for self-direction of their learning 
experiences. It would also reduce reliance on direct teacher-to-student instruction. The 
basic instructional resource for that portion of the curriculum to be individualized would 
be a "student-learning unit" prepared in modular form and packaged for ease of storage 
and retrieval by students. These units would be developed using the Instructional Systems 
Design (ISD) approach. The student-learning unit would contain the behavioral objectives 
for the unit, critical instructional materials, directions to other learning resources, and 
criterion-referenced test items which would permit the student to assess his own progress 
through the unit. The principles of programmed instruction would be employed in 
the development of these units even though most of the instructional materials were 
not programmed instruction per se.... The teaching team would operate under the 
direction of a master teacher whose main job would be the management of the learning 
environment.... 

...It was estimated that a functional national educational television system could be 
built which would be an integral component of the system of instructional resources.... 
It would be a form of programmed instruction developed to teach specific behaviors and 
would call for active responses from the student. Auxiliary printed materials would be 
developed to go with the ITV programs in which the students would write responses, 
solve problems and record reactions and questions. Student learning would be closely 
monitored and the teacher would be furnished supportive and supplementary materials 
to help her work individually with any students who experience difficulty or who fall 
behind in the televised instruction. 

...The study team proposed an organization, which it labeled the Korean Educational 
Development Institute (KEDI), to design and try out the system and its components. KEDI 



Appendix VI 



A-31 



would reappraise the educational goals and objectives for the elementary-middle [E-M, ed.] 
schools. It would develop definitions of desired learning outcomes at the various levels 
and then design and build the instructional programs to achieve these outcomes.... 
Estimates were that it would take approximately four to five years to build and test the 
new system. The cost of development and installation on a national scale was estimated 
to be approximately $17,000,000. 

...During the last quarter of 1971 the KEDI staff focused on two major activities. These 
were: (1) an intensive series of meetings with Korean educators on the E-M project, and (2) 
the writing of the International Loan Agreement. The first of these activities was essential 
to broaden the base of support and to respond to questions or criticisms and to secure the 
cooperation of educators throughout the nation.... 

...KEDI was the beginning of a competency-based program of student learning. 

...In the several tryouts since 1973 — four small scale and four large scale — the 
achievement levels have generally been higher for the demonstration students than 
for the comparison group. 

...In 1978, the President of the Republic appointed an external commission to conduct 
an independent evaluation of the new E-M program. This group assessed student and 
teacher attitudes toward the new program as well as community reaction. They also selected 
18 schools and directed that the new KEDI system be implemented in these schools for 
five months in six basic subject areas, and identified a group of traditional schools to serve 
as the control. They found that mean achievement across all subject areas was 24 percent 
higher in the experimental group than in the control group, and that 30 percent more 
of the experimental students achieved subject mastery. The commission recommended 
an orderly implementation of the new E-M program in all of Korea's schools, [all 
emphases in original] 

[Ed. Note: There is no way a valid determination can be made on the basis of instruction over 
a five-month period. Was the experimental group taught to the test as in OBE/ML/DI? Has the 
education ministry followed these students to see if their superior achievement has held over 
time? One would have to look at longitudinal data as well as the examinations used to come to 
any sort of valid conclusion regarding the superiority of OBE over the traditional Korean form 
of education. Also, what kinds of results were they looking for — academic or occupational?] 



Appendix VII 



Excerpts from Performance-based Teacher Education 

Performance-based Teacher Education: What Is the State of the Art 7 ., Stanley Elam, Ed. (Phi 
Delta Kappan Publications: Washington, D.C., 1971). Paper prepared for the Committee 
on Performance-based Teacher Education of the American Association of Colleges for 
Teacher Education pursuant to a contract with the U.S. Office of Education through the 
Texas Education Agency, Austin, Texas. 

The Association is pleased to offer to the teacher education community the Committee's 
first state-of-the-art paper. In performance-based programs performance goals are specified, 
and agreed to, in rigorous detail in advance of instruction. The student must either be 
able to demonstrate his ability to promote desirable learning or exhibit behavior known 
to promote it. He is held accountable, not for passing grades, but for attaining a general 
level of competency in performing the essential tasks of teaching.... Emphasis is on 
demonstrated product or output. Acceptance of this basic principle has program implications 
that are truly revolutionary. 

Probably the roots of PBTE [Performance-based Teacher Education, ed.] lie in general 
societal conditions and the institutional responses to them characteristic of the Sixties. 
For example, the realization that little or no progress was being made in narrowing wide 
inequality gaps led to increasing governmental attention to racial, ethnic, and socioeconomic 
minority needs, particularly educational ones. 

The claim that traditional teacher education programs were not producing people 
equipped to teach minority group children and youth effectively has pointed directly to the 
need for reform in teacher education. 

Moreover, the claim of minority group youth that there should be alternative routes 
to professional status has raised serious questions about the suitability of generally 
recognized teacher education programs. 

Confronted with the ultimate question of the meaning of life in American society, 
youths have pressed for greater relevance in their education and a voice in determining what 
its goals should be. Thus PBTE usually includes a means of shared decision-making power... 
[T]he student's rate of progress through the program is determined by demonstrated 
competency rather than by time or course completion.... Instruction is individualized and 



A-32 



Appendix VII 



A- 



personalized.... Because time is a variable, not a constant, and because students may enter 
with widely differing backgrounds and purposes, instruction is likely to be highly person- 
and situation-specific... The learning experience of the individuals is guided by feedback.... 
[T]eaching competencies to be demonstrated are role-derived, specified in behavioral terms, 
and made public; assessment criteria are competency-based, specify mastery levels, and 
made public; assessment requires performance as prime evidence, takes student knowledge 
into account; student's progress rate depends on demonstrated competency; instructional 
program facilitates development and evaluation of specific competencies.... The application 
of such a systematic strategy to any human process is called the systems approach.... We 
cannot be sure that measurement techniques essential both to objectivity and to valid 
assessment of affective and complex cognitive objectives will be developed rapidly enough 
for the new exit requirements to be any better than the conventional letter grades of the 
past. Unless heroic efforts are made on both the knowledge and measurement fronts, then 
PBTE may well have a stunted growth.... To recapitulate, the promise of performance-based 
teacher education lies primarily in: 1) the fact that its focus on objectives and its emphasis 
upon the sharing process by which those objectives are formulated in advance are made 
explicit and used as the basis for evaluating performance; 2) the fact that a large share of 
the responsibility for learning is shifted from teacher to student; 3) the fact that it increases 
efficiency through systematic use of feedback, motivating and guiding learning efforts 
of prospective teachers; 4) the fact that greater attention is given to variation among 
individual abilities, needs, and interests; 5) the fact that learning is tied more directly to the 
objectives to be achieved than to the learning resources utilized to attain them; 6) the fact 
that prospective teachers are taught in the way they are expected to teach; 7) the fact that 
PBTE is consistent with democratic principles; 8) the fact that it is consistent with what 
we know about the psychology of learning; 9) the fact that it permits effective integration 
of theory and practice; 10) the fact that it provides better bases for designing research 
about teaching performance. These advantages would seem sufficient to warrant and 
ensure a strong and viable movement. 

From "The Scope of PBTE": 

Among the most difficult questions asked about the viability of performance-based 
instruction as the basis for substantial change in teacher preparatory programs are these: 
Will it tend to produce technicians, paraprofessionals, teacher aides, etc., rather than 
professionals?... These questions derive from the fact that while performance-based 
instruction eliminates waste in the learning process through clarity in definition of 
goods, it can be applied only to learning in which the objectives sought are susceptible 
of definition in advance in behavioral terms. Thus it is difficult to apply when the 
outcomes sought are complex and subtle, and particularly when they are affective or 
attitudinal in character. 

From "Philosophic Underpinning": 

Some authorities have expressed the fact that PBTE has an inadequate philosophic base, 
pointing out that any performance-based system rests on particular values, and the 
most important of which are expressed in the competencies chosen and in the design 
of the learning activities. 

From "Political and Management Difficulties": 



A-34 



...4) There are political aspects to the question of how far the professor's academic freedom 
and the student's right to choose what he wishes to learn extend in PBTE. 5) ...The mere 
adoption of a PBTE program will eliminate some prospective students because they do 
not find it appealing. The question remains: Will these be the students who should be 
eliminated?... 6) The PBTE movement could deteriorate into a power struggle over who 
controls what. 7) PBTE removes students regularly from the campus into field settings 
and emphasizes individual study and progress rather than class-course organization, thus 
tends to isolate the people involved. We live in a period when such isolation is not a 
popular social concept, and since many aspects of the PBTE approach could be conceived 
as Skinnerian, dehumanizing etc., it is important that programs be managed in such a 
way as to minimize isolation? ... 9) Finally, there is a need to overcome the apathy, threat, 
anxiety, administrative resistance, and other barriers that stand in the way of moving toward 
PBTE and toward performance-based teaching in the schools. 



[Ed. Note: Over the years one has seen the departure of many talented teachers who have left 
the profession due to Skinnerian Performance-based Teacher Education.] 



Appendix VIII 



Excerpts from "The Field of Educational Technology" 

"The Field of Educational Technology: A Statement of Definition," by Donald P. Ely, Ed. 
Published in Audiovisual Instruction (Association of Educational Computing and Technology: 
Washington, D.C.), October 1972 (pp. 36 ffj. 

There is no single author of this statement since the definition process involved 
several hundred people over the period of one year. Kenneth Silber spent more time than 
any other person and provided continuity through several drafts. Other writers included 
Kenneth Norberg, Geoffrey Squires, and Gerald Torkelson. Significant contributions were 
made by Robert Heinich, Charles F. Hoban, Jr., Wesley Meierhenry, and Robert Wagner 
through discussion papers prepared early in the process. Reactions from related fields were 
helpful — Desmond Cook (Educational Psychology), Keith Mielke (Telecommunications), 
and Robert Taylor (Library and Information Science) . Each reviewed an earlier draft of the 
manuscript and met to discuss it. Finally, credit should go to the more than 100 members of 
the Association of Educational Computing and Technology [AECT, spin-off of the NEA, 
ed.] who participated at the open hearings held during the Minneapolis convention. And 
now, the process must go on with each reader. May I have your reactions? Signed by 
Donald P. Ely, Editor, Chairman, Definition and Terminology Committee, AECT, Branch of 
the National Education Association.... 



When scientific and experimental methods are applied in an orderly and comprehensive 
way to the planning of instructional tasks, or to entire programs, this process is sometimes 
known as "systems design," or the "systems approach to instructional development." 
Implicit in the systems approach is the use of clearly stated objectives, experimentally 
derived, data to evaluate the results of the system, and feedback loops which allow the 
system to improve itself based on evaluation. 

A systematic approach usually involves: needs assessment (to determine what the 
problem really is); solution selection (to meet the needs); development of instructional 
objectives (if an instructional solution is indeed needed); analysis of tasks and content 
needed to meet the objectives; selection of instructional strategies; sequencing of 
instructional events; selection of media; developing or locating the necessary resources; 



A-35 



A-36 



tryout/evaluation of the effectiveness of the resources; revision of resources until they are 
effective; and recycling continuously through the whole process. The systems approach 
is basic to educational technology. 

Individualized learning requires systematic planning because it may operate with little 
or no direct intervention by the teacher. If the benefits of individualized and personalized 
learning are to succeed, it will be necessary to make full use of appropriate technical 
resources, to shift money saved by this approach into the development of more effective 
resources, and to make consistent and expanded use of experimental study and evaluation 
techniques. All of these require the use of the systems approach to succeed. 

The rationale for a unique field of educational technology is its synthesis of three 
concepts: providing a broad range of learning resources, individualizing and personalizing 
learning as a focus, and using the systems approach as an intellectual and operational 
approach to the facilitation of learning. The combination of these concepts in the broader 
context of education and society yields synergistic outcomes — behaviors which are not 
predictable on the parts alone — but outcomes with extra energy which is created by the 
unique interrelationship of the parts.... 

Within the context of society, the purposes and means of the educational technologist 
create two value questions: are the means used by the educational technologist neutral, 
or do they have ends and values built in? Does a person concerned with the means of 
education also have to be concerned with the ends?... These questions and issues and their 
resolution by each person in the field is as much a part of the definition of the field as the 
functions the people in the field perform. 

Is technology neutral? 

Theoretically, technology in the "pure" state is neutral in its operation, simply the 
powerful and faithful servant of the society it serves but does not affect. 

But institutionalized technology in the real world is never that pure. Once embedded 
in socioeconomic systems, it tends to become self-justifying and self-perpetuating and 
does indeed affect the society it serves. 

Technology neatly separates ends from means, and attempts to become neutral by 
divorcing itself from value-laden ends. However, if technology is independent of means, 
then its worth must be measured by the degree of success and the efficiency with which 
it achieves the goals set before it. Thus, the technological thrust in modern society is to 
continually refine and strengthen the means whatever the goal. 

The net result, which has been pointed out by many scholars of technology, is that 
the means tend to become the ends. The means which sometimes serve as the end of 
technology are NOT neutral. As most critics of technology have pointed out, these means 
have effects — effects which are not neutral at all. Whether the effects are positive or negative 
is a question for debate, but neutrality is a choice which does not exist. 

For example, it is clear that technology has effects on man, but what are they? One 
position is that technology exerts a subtle force to reduce human beings to standardized 
components which can readily be assimilated to whatever system is being served. It 
absorbs them into man-machine systems by robbing them of their humanity and making 
them human machines. 

The opposing position states that technology makes humaneness and difference 
possible. It creates the options we need for true freedom, and creates a world which 
allows divergent value systems. 

The opposite of the neutral technician is what we might call the concentrated 
professional. This person realizes that the means make the ends possible, and that 
cooperation or hindrance makes ends possible or impossible. The concerned professional 
has a point of view about the ends and then decides whether or not the work being done 



Appendix VIII 



A-37 



will make possible positive or negative ends. 

If it is decided the work will bring about negative ends, the concerned professional 
refuses to perform it. 

The scientist working on genetic selection and manipulation because "it can help 
eliminate disease from the human race" and those who have quit working on it because 
it will "lead to totalitarian domination by a master race" are examples of concerned 
professionals. Regardless of their position, they have considered the ends of their work and 
made a decision to work or not based on how they viewed those ends. 

It should be clear that the concerned professional does not have to be a "liberal" or 
a "conservative. " The concerned professional must however, show moral sensitivity to the 
effect of what he or she does, [emphasis in original] 

It does not matter what position an individual comes to as long as it is not "I'll 
do it because it can be done. " 

We believe that in the American society of the 1970s and beyond the educational 
technologist cannot afford to be a neutral technician. The field calls for concerned 
professionals. Some very hard questions must be raised about everything this person is 
called on to do. The concerned professional must ask how the resources produced or used 
affect all of society, as well as the scientist's own life. 

The concerned specialist must ask what to do if he/she disagrees with the messages 
of the resources. 

It is less important how an educational technologist answers these questions than 
it is that they are asked, and that there is concern with the real end of the means.... The 
educational technologist is not the only person making decisions about the facilitation of 
learning through the identification, development, organization, and utilization of learning 
resources. The teacher, curriculum specialist, administrator, content specialist, librarian 
and the student are involved in the process, too.... It is, therefore, important for the field of 
educational technology to recognize the "other people" context in which it operates. 

Further, it is essential to ascertain what the relationship of the field of educational 
technology with these other fields will be. In a practical sense, the work relationship means 
"who will get to make the ultimate decisions about facilitating learning and how it is done?" 
There are at least five types of alternatives for the facilitation of learning. They differ along 
the dimension of formality, based on the compulsory nature of the institution, on the degree 
of authority of those in charge, and on the range of resources available. 

The effects of technology cannot, therefore, be overlooked. They create serious 
concerns for society as a whole. They are particularly important to a person involved in a 
field like educational technology, since its effects help to shape human minds. 

What are the effects of packaged learning [OBE/ML/DI, ed.], etc., on a person for 
18 years? Are we moving too fast technologically for people to cope with the changes? 
How do feeling and spontaneity fit into a technologically-based system? Are we trying to 
program all connections between people? 

The educational technologist, as a concerned professional, must study the 
philosophical, psychological and sociological implications of how the technologist 
can facilitate learning. 

[Ed. Note: This paper was an attachment to an AECT proposal to develop Handbook X of 
the Educational Records and Reports Series for the National Center for Educational Statistics. 
AECT also received the Project BEST (Better Education Skills through Technology) contract 
from the U.S. Department of Education in 1982. The excerpts are very important as they 
relate to the concerns of leading educators in the field of technology regarding ethical and 
privacy issues surrounding the use of programmed learning (OBE/ML/DI) in conjunction 



A-38 



with technology in the schools of the United States. Donald Ely (Editor and Chairman 
of the Definition and Terminology Committee, AECT) was also involved in Project BEST 
in 1982. Also listed as members of BEST'S Advisory Board were Dr. Shirley McCune of 
the Midcontinental Regional Education Laboratory and William Spady of the American 
Association of School Administrators — both of whom are closely associated with outcome- 
based education/mastery learning, the purpose of which is to "restructure" not only the 
schools, but America itself through changing the attitudes, values, and beliefs of students to 
accept citizenship in a one-world socialist government. These excerpts should be brought 
to the attention of Ely, Spady, and McCune with the question: "Do you share the concerns 
of your associates who contributed to the writing of this paper?" If so, why do you have 
such a hard time understanding why parents and taxpayers are opposed to Skinnerian 
outcome-based education?] 



Appendix IX 



Excerpts from A Performance Accountability System 

A Performance Accountability System for School Administrators by T.H. Bell (Parker Publish- 
ing Co.: New York, 1974). T.H. Bell served as Secretary of Education during President Ronald 
Reagan's first term in office, 1981-1985, and also served as Commissioner of Education in the 
U.S. Office of Education during the Ford Administration. Excerpts from the book follow: 

The Need for a Management System 

Under the pressure of the free-enterprise system and the unremitting demand that large corpora- 
tions earn profits and pay dividends to stockholders, management efficiency through orienta- 
tion to results has led to development of management systems such as the one described in 
this book. Most of the successful corporations in the United States now use annually adopted 
objectives as a means of focusing the energies and efforts of managers on the attainment of 
goals that are widely known and broadly accepted. Although the problems of educational 
management are obviously quite different from those of the private sector, there is much to 
be learned from industry's systems approach in gaining more efficiency in educational man- 
agement. The outcomes are quite similar, (p. 21) 

Why Needs Assessments? 

As a people, Americans have turned from a preoccupation with production and plenty to a 
concern for the quality of human life in this nation. We have moved beyond the point where 
production of the necessities for existence is a concern. We want a rich and meaningful life 
and we want equality of opportunity for all citizens. 

Drug abuse, juvenile delinquency, lack of respect for law and order, coping with envi- 
ronmental damage are all problems with which education must be concerned in this new era 
of social awareness and public concern for the success and happiness of all. These enormous 
demands call for systematic attention to the performance outcomes of the schools and col- 
leges of the nation. Since we have so many problems and since our resources are limited, it 
is essential that we look at the performance of our educational institutions and establish a 
hierarchy of priorities.... We should seek to solve the problems that are causing the greatest 
amount of difficulty and unrest across the nation. We should seek to solve the problems whose 
solutions will both stimulate the economy and free the public from the burden of supporting 



A-39 



A-40 



citizens who are unable to support themselves. We must, in short, assess our educational 
needs before establishing our objectives and setting into action leadership and management 
plans, (pp. 32-32) 

Use of Tests in Needs Assessments 

The economic, sociological, psychological and physical aspects of students must be taken into 
account as we look at their educational needs and accomplishments, and fortunately there 
are a number of attitude and inventory scales that can be used to assess these admittedly 
difficult to measure outcomes.... 

Most of these efforts to manage education try to center in one place an information 
center that receives reports and makes available to all members of the management team 
various types of information useful to managers.... 

School management by objectives demands more use of educational tests and measures 
(pp. 33-35). 

The Student and Staff Personnel Profile 

A departmental or school student and staff personnel profile, constructed from needs assess- 
ment information, will provide information in greater depth than is typically found in most 
school or college operations. The characteristics of the student populations being served and 
the social, economic, racial, and ethnic make-up of the community or neighborhood must 
be weighed in making assumptions on performance expectations. An objective, expressed in 
anticipated performance results, must take into account the characteristics of the students, 
the neighborhood and community, (p. 42) 

Humanizing Education 

Many of our current problems of alienation and depersonalization are at least partly traceable 
to our emphasis in our schools upon giving and getting information and our neglect of the 
discovery of meaning and humanization. The committee writing the 1962 ASCD Yearbook 
listed common school practices that have depersonalizing and alienating effects: 

• The emphasis on fact instead of feelings 

• The belief that intelligence is fixed and immutable 

• The continual emphasis upon grades, artificial reasons instead of real ones for learn- 
ing 

• Conformity and preoccupation with order and neatness 

• Authority, support and evidence 

• Solitary learning 

• Cookbook approaches 

• Adult concepts considered as the only ones of value 

• Emphasis on competition 

• Lockstep progression 

• Force, threat and coercion 

• Wooden rules and regulations 

• The age-old idea that if it's hard it's good for them 

Until now we have been schooling to fit a "norm" of society. It's time to begin think- 
ing of an education for every man. As defined by Carl R. Rogers, "The only man who is 



Appendix IX 



A-41 



educated is the man who has learned how to learn; the man who has learned how to adapt 
and change; the man who has realized that no knowledge is secure, that only the process of 
seeking knowledge gives a basis for security." 

This clearly invalidates our conception of a successful student as one who simply gradu- 
ates with a degree and a high grade point average — a molded, shaped figure ready to slip away 
from life and learning into the split-levels and station wagons of suburbia, (p. 161) 

[Ed. Note: There is no question in this writer's mind that this one man bears much of the 
responsibility for the deliberate dumbing down of our schools. He set the stage for outcome- 
based education through his early support for systems management, management by objectives 
(MBO) , and Planning Programming Budgeting System (PPBS) . These systems later evolved into 
full-blown Total Quality Management/OBE, having gone through the initial stage of Professor 
Benjamin Bloom's mastery learning and ending up as William Spady's transformational OBE. 
Outcome-based or results/performance/competency-based education requires mastery learn- 
ing, individualized instruction, systems management, and computer technology. Bell's earlier 
activities in the seventies as U.S. Commissioner of Education — including his role in supporting 
dumbed-down life role competencies for K-12 (See 1975 Adult Performance Level Study and 
1983 Delker article) and Bell's testimony before Congress in favor of a U.S. Department of Edu- 
cation — should have kept his name off any list of potential nominees presented to President 
Reagan. Concerns regarding this nomination expressed by Reagan supporters were proven well 
founded when Bell, in 1984, funded William Spady's infamous Utah OBE grant which promised 
to (and did) put OBE "in all schools of the nation"; spearheaded the technology initiative in 
the 1980s; predicted that schools would be bookless by the year 2000; recommended that all 
students have computers; and fired Edward Curran, the Director of the National Institute of 
Education, when Curran recommended to President Reagan that Curran's office, the NIE, be 
abolished. 

According to a former member of the Utah Education Association, who was a close associ- 
ate of Bell's in the early 1970s, if the Senate Committee that confirmed T.H. Bell as Secretary 
of Education had read Bell's A Performance Accountability System for School Administrators, it 
is unlikely Bell would have been confirmed.] 



Appendix X 



Excerpts from "The Next Step: The Minnesota Plan" 

"The Next Step: The Minnesota Plan" by Paul Berman, Executive Director, Center for Policy 
Alternatives, and President of BW Associates, a consulting firm specializing in policy research 
and analysis in Berkeley, California {Phi Delta Kappan: Washington, D.C.) November 1985, p. 
40. 

Elementary and secondary education in America are in need of more than just repair and 
maintenance; the challenge is to move to "a new plateau of learning." The necessary struc- 
tural reforms for such a move appear to be under way in Minnesota.... Although Minnesota's 
schools are among the best in the nation, the evidence shows that they have been unable to 
keep pace with the rapidly increasing need for more students to learn more.... Various groups 
in the state, as well as reform-minded legislatures and state officials, have been asking basic 
questions about the future of education in Minnesota. One such group is the Minnesota Busi- 
ness Partnership which contracted with me and my associates to examine K-12 education 
and suggest reforms, if necessary. . . . The result was The Minnesota Plan, a document that 
has altered the nature of the debate in Minnesota. Gov. Rudy Perpich and Ruth Randall, his 
superintendent of public instruction, used the Plan, as well as the work of others when they 
proposed to the state legislature reform measures based on concepts in the Plan. 

Under "Restructuring Schooling": 

... [T]he usual six years of comprehensive secondary education in junior and senior high 
schools, with their multiplicity of courses and student tracking, should be phased out. Instead, 
all students should attend a four-year secondary school that concentrates on core academic 
subjects. Then they should have opportunities to specialize for two years. 

Though the Minnesota Plan has many unique elements, it has derived specific reforms 
from three sources. First, various state-level proposals over the past few years influenced 
what went into the Plan as well as what was omitted. My experience in developing reforms 
for what became California's omnibus education reform legislation (S.B. 813) was particularly 
valuable. Second, recent and earlier literature on schooling was extremely helpful, particularly 
the work of Benjamin Bloom, John Goodlad, and Theodore Sizer.... 



A-42 



Appendix X 



A-43 



Tracking has been justified as a way for schools to meet the legitimate concern that 
students should be prepared for different careers. The comprehensive high school, with its 
bewildering array of courses, also evolved in part to satisfy this need. For example, most states, 
including Minnesota, impose seat-time or graduation requirements under which each student 
must take a certain number of units of high school mathematics.... 

The challenge for American education is to provide a common and equivalent educational 
experience for all students and to prepare them for different careers. The comprehensive high 
school has not and cannot... meet either goal adequately... The restructuring... offers a dif- 
ferent approach to realizing these dual objectives of American education. All students would 
concentrate on a core academic program in grades 7 through 10 and then, in grades 11 and 
12, choose further education that matches their career aspirations. 

Research and practice in thousands of classrooms both in the U.S. and abroad indicate 
that instructional strategies using this assumption, such as mastery learning or cooperative 
learning techniques, can result in more students learning dramatically more in both basic 
and higher-order skills. The Minnesota Plan calls for these approaches to be taught to senior 
teachers who can then train other teachers to shift their expectations and instruction to enable 
all students to learn. Mastery learning is controversial. However, the bulk of the evidence 
shows that large gains in student learning occur if teachers have the training and support to 
implement mastery learning effectively. Too often, mastery learning has been introduced as 
a "top down" innovation. The Minnesota Plan, by contrast, proposes a grassroots approach 
to implementation. . . . 

A publicly elected school-level board, operating in concert with a school-site manage- 
ment council, would decide which courses to offer at the school and which courses might be 
offered by other public schools or by other public or private providers. Schools would have 
the authority to "contract out" or "contract in" for teaching services.... This restructuring 
would take advantage of strength in the best European systems.... Deregulate curriculum 
and instruction. Educators should be free to design curriculum and instruction that they feel 
meets state standards and community needs. States should set basic goals; educators should 
be responsible to the community for helping students to meet these goals. 

A restructuring of schooling could not realize its full promise without jettisoning the 
anachronistic system of employing course-unit/seat-time requirements as the criterion for 
student promotion and graduation. Advancement should be based on demonstrated achieve- 
ment.... State-mandated course and graduation requirements would be eliminated in favor of 
a statement by the state of the competencies students are expected to master and two state 
tests, which would be required of all students before they leave the sixth and tenth grades. 



[Ed. Note: Paul Berman is a well known and highly paid consultant/change agent. Berman has 
been associated with RAND Corporation, a major policy development think tank which helped 
develop the Planning, Programming and Budgeting System (PPBS).] 



Appendix XI 



"When Is Assessment REALLY Assessment?" 

"When Is Assessment REALLY Assessment?" by Cynthia Weatherly, published in The Chris- 
tian Conscience (Vol. 1, No. 9, 1995, pp. 28-32, 50). It can be found on the Internet at http: 
/ /www. christianconscience. com. 

Why are the new-fangled tests called "assessments"? The answer is shocking! 

During preparation for a workshop on educational policy in 1982, I was asked by the 
host organization to prepare a glossary of terms pertaining to my presentation. That request 
seemed simple enough and a reasonable one, so I set about compiling terms related to Com- 
petency-Based Education (CBE, forerunner of Outcome-Based Education and promulgated by 
the same man — Bill Spady), our fad-of-the-moment in educational reformation toward illiteracy 
in Georgia. 

As I said, the task seemed simple enough. However, while still in the As of the alphabet, I 
developed an overwhelming respect for professional compilers of glossaries. The first word block 
I encountered was assessment. Sure it was familiar; we all knew it meant "test," but the longer 
I struggled to apply that definition to CBE the more elusive assessment's definition became. 

The latest word for "test" was "instrument" and that proved easy to explain. But assess- 
ment was a broader term. Assessment was the noun form of the verb "assess." What did assess 
actually mean? The National Assessment of Educational Progress (NAEP) had been in use since 
its development in the latter 1960s. Had we overlooked a change in emphasis by the Federal 
level of education implied by the use of the word assessment that could be significant? 

Receiving no help from my small hill of accumulated state department of education mate- 
rials relating to assessment, I decided to read the instruction manual: Webster's New World 
Dictionary. Webster's clearly stated: 

assess: 1. to set an estimated value on (property, etc.) for taxation 2. To set the amount 
of (a tax, fine, damages, etc.) 3. To impose a fine, tax, or special payment on (a person or 
property) 4. To impose (an amount) as a fine, tax, etc. 5. To estimate or determine the sig- 



A-44 



Appendix XI 



A-45 



nificance, importance, or value of, evaluate. 

assessment: 1. The act of assessing 2. The amount assessed. 

This definition disturbed me a little. I had assumed that assessment was just the latest 
educationese for a broad-based test. Had I missed something somewhere? 

To accomplish the task at hand — the glossary — I crafted a definition that read like this: 

Assessment: an estimation; determination of the significance or value of. As used in 
education, a general term for measuring student progress. Conflict in definition occurs when 
considering that this is a measurement process used to determine the value or significance 
of a particular outcome in educational performance. Therefore, it is not a true measurement, 
but a process of assigning value to specific tasks, creating a cumulative score for performance 
instead of an accurate measurement against a standard. 

It sounded good at the time and spoke to the question of "what are we testing?" which 
was a growing concern due to the nature of Competency-Based Education's life role skills com- 
petencies, which were going to dictate our educational goals— just like OBE does today. Even 
though satisfied to have introduced the idea that there may be a conflict within the definition 
of assessment as an educational term, I was bothered that I could find no definitions in other 
dictionaries, including legal ones, which did not have primary meanings related to assigning 
a value for tax purposes. Assessment is primarily a legal term; in fact, the use of the word 
"instrument" could carry a legal connotation as well. Disturbing. 

The Federal Accounting Process 

In March of 1984 I had the privilege of giving testimony supporting stringent regulations for 
the Pupil Privacy Act (the Hatch Amendment) which amended the General Education Provisions 
Act to offer protection from intrusive questioning, programs, and the record-keeping for parents 
and students. Again, preparation for that testimony caused me to review the national Center 
for Educational Statistics' handbook series known as the State Educational Records and Report 
Series. Specifically, Handbook IIR, the Financial Accounting Handbook, alluded to a "unified 
accounting system" based on the process known as Planning, Programming and Budgeting 
System (PPBS) which was to be used by all school systems. PPBS involves mandated goals and 
constant adjustment of resources to ensure that goals are met— the system that is still in use 
today. In testifying, I drew a projected conclusion: 

If our financial resource reporting is going to be unified by such a system, then are we 
not but a step away from unified goals for our educational outcomes? This is assuredly a 
step toward mandated national curriculum and interstate and interregional tax and financial 
management revisions.... Will we not soon be sharing tax resources from region to region as 
needed to "equalize" educational opportunities and programs deemed "exemplary" or in the 
"national interest" to produce global-minded citizens? 

The longer I thought of assessment being the "value determined for tax purposes" and 
the possibility of cross-regional/state sharing of tax resources, the more concerned I became 
over the idea that the record-keeping and information-compiling might become so tied to the 
individual student that assessment might have a more malignant potential. We were talking 
about our children here. 



A-46 



At that point in time there was a growing emphasis on choice and vouchers/tuition tax 
credits in education. Since with the money flows the control, could this be part of the assessment 
picture? That would tie an individual student moving about in the "choice market" directly to a 
federal accounting process both financially and educationally due to national standards being 
proposed. No one seemed to be too worried about it in the 1980s, but it still bothered me. 

Over a period of time I shared my concern with close associates — if assess was to "assign 
a value for tax purposes," then why were we assessing children? A theory began to take root 
and grow in my mind: somehow we were going to allow children's potential worth to society 
to be measured, and their future life roles would somehow be measured, and their future life 
roles would somehow be projected, and they would be limited by that assigned worth. What 
a thought! Could this be possible in the United States? 

Human Capital Defined 

Later someone sent me pages from a book entitled Human Capital and America's Future, edited 
by David W. Hornbeck and Lester M. Salamon. The title itself set off alarm bells because of the 
connection to education shared by many of the contributors, especially Hornbeck. It was now 
the early 1990s and many disturbing things were happening. David Hornbeck was a highly 
visible change agent responsible for many radical education reforms in states from Kentucky 
to Iowa and had been consultant to many more. Why was Hornbeck focusing on human capi- 
tal! That term had been primarily used in economic and commercial literature. Hornbeck was 
also identified with changes in assessment in the school systems with which he consulted and 
worked. 

The book was published by Johns Hopkins University Press in 1991 and contains an 
enlightening list of contributors in addition to Hornbeck: Ernest Boyer, Nancy Barrett, Anthony 
Carnavale, Sheldon Danziger, Marian Wright Edelman, Scott Fosler, Daniel Greenberg, Jason 
Jaffras, Arnold Packer, Isabel Sawhill, Marion Pines, Donald Stewart, and Lester Salamon. The 
social and political views of Human Capital's contributors could be the basis of another whole 
article, but suffice it to say that most of the radical changes toward a managed populous in 
this country can be reflected among this group of individuals. Weren't some of them involved 
in dis-establishing the U.S. Department of Health, Education and Welfare (HEW) and turning 
it into the Department of Education? 

While references to human capital have been the fare of business publications for some 
time, it has only been in the last few years that this term has been applied to school children. 
In Hornbeck's chapter "New Paradigm for Action," he outlined the systemic change which must 
occur to produce the workforce for the future and fulfill our nation's human capital needs. 
Hornbeck's "new paradigm of action" looked a lot like old OBE — setting specific performance 
standards and invoking penalties for schools, teachers and students not meeting them: 

If the new comprehensive system is to be outcome-based, careful attention must be paid to 
assessment strategies. The selection of outcome indicators will be informed by the availability 
of sound assessment instruments, [emphasis added] 

Now here was Hornbeck using assessment and instrument together instead of a substitute 
for one or the other — and he had selected the two terms which carried legal usage definitions. 
Hornbeck asserted that while the NAEP might be universally available, and portfolio assessments 
(notice the use of both words together) would become popular, "the Educational Testing Service 



Appendix XI 



A-47 



(ETS) is investing time and funds in developing new approaches to assessment." He further 
stated that most of the present assessment observations are "related to academic objectives": 

Similar sensitivity is required in carefully denning appropriate assessment tools in other areas 
as well. In citizenship, a method should be developed for expressing qualitative aspects of 
participation activities.... [A] different value could be placed on community service.... Physical 
and mental fitness. . . problems arise as we confront legal and even constitutional issues (self- 
incrimination, search and seizure) .... Perhaps a school system should plan to have all students 
undergo a physical exam in the fourth, eighth, and twelfth grades as a health counterpart to 
the academic testing program. Again, the emphasis must be on carefully determining assess- 
ment strategies that measure the outcomes to be achieved, [emphasis added] 

All of this is structured because "incremental change is insufficient. Systems must be radically 
altered to produce what the nation's economy demands in a work force." 

Weren't we supposed to be concerned about the education of school children? This sounded 
a lot like literature which proposed "full employment" policies, much like the billboards and 
signs plastered on public transportation and public buildings in Grenada — "Work for everyone: 
everyone working!" — before the U.S. invasion to overthrow their Communist government in 
1983. 

Was this why the Council of Chief State School Officers accepted a contract from the 
National Center for Educational Statistics to develop what is known as the SPEEDE ExPRESS 
(the Exchange of Permanent Records Electronically of Students and Schools)? This electronic 
information track can carry the most diverse and extensive information on a student, deliver- 
ing it to future employers, places of higher education, training centers, health providers (con- 
traceptive histories will be included), the military, and a number of other recipients yet to be 
designated. Then if employers, government, and others have input into what should be the 
outcome of education in this country — instead of education being academically and informa- 
tion-based — then this concept of "assessment as assigning a value" to a child takes on propor- 
tions that are certainly Orwellian. 

What if your child's assessed worth doesn't meet anyone's projected goal? Proponents of 
the Certificate of Initial Mastery (CIM) and the Certificate of Advanced Mastery (CAM) are, in 
truth, fleshing out the skeleton of assigning a value to a person. Without the CIM/CAM in those 
states adopting the concept, young persons will not be able to apply for a job, drive a car, or 
do many other things which have never before been predicated on government's conferring a 
value on a person's worth to society. The People's Republic of China, a Communist country, 
uses "no conformity — no job" policies to enforce its "one child" policy. 

Have we understood the direction of these changes? Is this constitutional or moral? 

Assessing Human Value 

The next piece to the puzzle of assessment fell into place when my suspicions were confirmed 
that we really were assessing "value". The August 1993 issue of Visions, the newsletter of the 
Education for Future Initiative sponsored by Pacific Telesis Foundation, was given out at a leg- 
islative committee meeting as part of a packet of information on technology in the classroom 
and school-to-work transition activities. The lead article was "Beyond the Bubble" with a blurb 
reading: "Educators are finding that new ways of teaching require new forms of assessment." 

On page three there was a column entitled "Authentic Definitions." Finally, I thought, 
I have found an educational publication that will define this word and allay my fears. Sure 



A-48 



enough, there was the word: 

Assessment — The act or result of judging the worth or value of something or someone. 
[emphasis added] 

The worth or value of something or someone?! This was confirmation that educational 
testing had taken an extreme left turn. It was not comforting to realize that our children were 
going to be assigned a value based on "acceptable performance behaviors in life-role applica- 
tions" as proposed in Pacific Telesis Foundation's "Authentic Definitions." 

Knowing that: 

1. our children would be tracked and that extensively detailed files would be electronically 
compiled and transmitted to select users; 

2. information would include or be based on a value level assigned to them contingent 
upon performance — as a child — of life role competencies; 

3. value levels could reflect the scale of achievement outlined in the United States Labor 
Department's 1993 Secretary's Commission on Achieving Necessary Skills (SCANS) publications 
which encompasses personality traits and private preferences, and 

4. the purpose of education had documentably been diverted into workforce training, 
led me, ultimately, to the conclusion that indeed the future holds a less than bright prospect 
for our young people. To be formally assigned a "worth" to society based on your ability as a 
child to demonstrate that you can perform an "essential skill" should be a foreign concept in a 
constitutional republic like the one in which we live — these United States of America. 

An example of how these efforts at assessment have been perverted to the ends outlined 
above is given in Crucial issues In Testing, edited by Ralph W. Tyler and Richard M. Wolf. 
This book is one in a series prepared under the auspices of the National Society for the Study 
of Education, which in 1974 included names like William Spady, John Goodlad, and Robert 
Havighurst on its governing committee. On page 98, within an article by Carmen J. Finley (of 
the American Institute for Research) is a section entitled "Defining Goals Versus Comparison 
with an Average": 

In the National Assessment program specific objectives or goals are defined and exercises 
are written which determine how well these goals are being met. For example, in citizenship 
a major objective is to "Support Rights and Freedoms of All Individuals." One specific way in 
which a person might meet this goal is to defend the right of a person with very unpopular 
views to express his opinion and support the right of "extreme" (political or religious) groups 
to express their views in public. 

One exercise which was written to try to tell whether or not this objective was being met is as 
follows: 

Below are three statements which make some people angry. Mark each statement as to 
whether you think a person on radio or TV should or should not be allowed to make these 
statements: 

• Russia is better than the United States. 

• Some races of people are better than others. 

• It is not necessary to believe in God. 

This is the goal-oriented approach. The objectives or goals represent a kind of standard 



Appendix XI 



A-49 



which is considered desirable to achieve. The exercises, if they are good measures, tell to 
what extent the goals are being achieved. This approach tells very specifically what a person 
knows or can do. 

I submit that the goals-oriented/performance-based/OBE assessment approach just outlined 
tells more than what a child knows or can do. This approach very specifically reveals what a 
child feels and believes. Remember that assessments measure predetermined outcomes. Those 
outcomes represent the judged "worth" or "value" of your children and mine! 

With the last election cycle, hope swept the country that since a conservative majority 
had exerted itself, changes would be made. As a country we'd be snatched from the brink of 
economic socialism and potential corporate fascism, and sanity would be restored to the halls 
of government. Right? 

When Right Is Left 

It just happens that the October 1992 edition of Visions (Pac Telesis Foundation newsletter) 
contained an article entitled "Why Technology?" It began 

Alvin Toffler, the author of such influential books as Future Shock and The Third Wave, 
has written that the spread of personal computers is the single most important change in the 
field of knowledge since the invention of movable type in the 15th century. He goes on to state 
that knowledge is the key to power in the 21st century — not mineral rights or military force. 

This was the same publication that carried the definitive definition of assessment. And 
wasn't this the same Alvin Toffler who wrote Creating a New American Civilization, which 
heralds the coming "Third Wave" of global culture, published by the Progress and Freedom 
Foundation and introduced at their "Cyberspace and the New American Dream" conference 
in Atlanta last year? 

Newt Gingrich, the new Speaker of the House, introduced Toffler as his longtime friend 
and then sat quietly by to hear Toffler say that national sovereignty was a thing of the past and 
that he was an avowed secularist. These are the stripes of our new "conservative" future? 

At the same Cyberspace conference, an array of professionals from many areas of cultural 
life paraded their contributions to leadership toward the much-touted "Third Wave". The spokes- 
person for education in Progress and Freedom Foundation's lineup was — and still is — Lewis J. 
Perelman, author of School's Out: A Radical New Formula for the Revitalization of America's 
Educational System. Perelman advocates what he calls just-in-time learning, privatized public 
schools, Total Quality applications, hyperlearning, and many other catchy concepts which are 
now, of course, getting much attention in the policy debates. 

It should be noted that in the preface to his book Perelman cites Wassily Leontief and B.F 
Skinner among those from whom he particularly benefited during his years at Harvard in the 
1970s. Most interesting, since Leontief is the acknowledged expert on management by objec- 
tives (MBO) — the forerunner and companion to PPBS. And Skinner was the American father of 
behavioral psychology and mastery learning/ operant conditioning — the foundation for OBE. 

These relationships of Perelman's are important because he supplied the connecting piece 
to complete the puzzle picture of our children's future. Perelman states on page 316 that 

...Nostalgic mythology about "local control" should not mask the reality that the state 
governments have the constitutional authority, call the shots, and pay most of the bill for 



A-50 



education. But government, local or otherwise, no longer needs to own and operate school 
systems or academic institutions. 

Taxing Human Worth 

Now to the heart of Perelman's alternative proposal which forms the future of "conservative" 
educational policy and expresses assessment's future use: 

...One possibility would be a human capital tax [emphasis added]. The human capital 
tax might be simply the same as a personal income tax, or might be calculated or ear-marked 
in a more limited way. Technicalities aside, it's logical that if the government is going to help 
fund investments in the development of the community's human capital, taking back a share 
of the resulting gains is a good way to pay for it. In effect, each generation of beneficiaries 
of such investment pays back some of the benefits it received to the next generation [value- 
added tax, ed.]. (p. 317) 

We should deal with parents who are starving their children's minds with the same legal 
remedies we use to deal with parents who are starving their children's bodies. The media 
through which a microchoice [voucher] system is provided will give public authorities more 
accurate information on what individual families and kids are doing than is currently available, 
making it easier to identify instances of negligence or misuse, [emphasis added] (p. 318) 

. . . [T]here's no good reason why the learner should not be able to purchase services or products 
from any provider — whether public or private, in-state or out-of-state, (p. 319) 

A Value-Added Tax For Human Worth 

There is the framework. A value-added tax process that will deduct from a services/education 
super-voucher a tax for every level of achievement/skill a student achieves — true assessment. 
Standards will be rigid and penalties for non-achievement will be enforceable against the student, 
his parents, and providers of educational services in order to achieve a trained workforce. 

The implications for families being disrupted by accusations and prosecutions for Perel- 
man's implied abuse and neglect over "parental starving of children's minds" are startling in 
their flagrancy. 

An elaborate and accurate system will track families and students, leaving privacy and 
confidentiality in the dust. The tax/voucher will follow the student across state and regional 
boundaries, necessitating a reformulation of tax bases; this could even be extended to foreign 
sources — facilitated by choice and charter school initiatives. (Remember Toffler asserts that 
national sovereignty is, or will soon be, a thing of the past. And what about GATT's education 
provision?) 

The World Bank has just announced (Associated Press, The Des Moines Register, 9/15/95) 
its new formula for estimating a nation's worth. Ismael Serageldin, World Bank Vice President 
for Environmentally Sustainable Development, stated in Monitoring Environmental Progress: 
A Report on Work in Progress that the system "for the first time folds a country's people and its 
natural resources into its overall balance sheet." While the World Bank projects that its new 
system of measuring wealth which "attempts to go beyond traditional gauges" and lists "Human 
Resources: value represented by people's productive capacity" (e.g. education, nutrition) will 
take years to perfect, I submit that our process of assessment is a giant step in that direction. 

I am reminded that in May of 1984 the Washington Post published an article entitled "Indus- 
trial Policy Urged for GOP." The Institute for Contemporary Studies, "founded by Edwin Meese, 



Appendix XI 



A-51 



Caspar Weinberger, and other Reagan supporters," issued a report that advocated "Republicans 
shed some of their deep-rooted antipathy to a planned economy. " All signals seem to point to 
the fact that this has indeed happened. 

Somewhere in all of this is lost the ability to communicate our culture in an organized way 
and to teach basic skills that can be used whether cyberspace technology is available or not. 
Didn't we used to call this "education"? Didn't we believe that our children had some choice 
in their futures? 

When is assessment really assessment! Ernest Boyer, former Director of the Office of Edu- 
cation and Carnegie Foundation director, once said, "To be fully human one must serve." In 
the future to be fully assessed may mean our children's worth as a servant of the state will be 
"assigned a value for tax purposes"— assessment. 

America, where are you? 

Eph. 6:10-20 



Appendix XII 



Excerpts from "The National Alliance for Restructuring Education: 
Schools — and Systems — for the 21st Century" 

A Proposal to the New American Schools Development Corporation 

by the 

National Center on Education and the Economy 
Attn.: Marc Tucker, President 
39 State Street, Suite 500, Rochester (Monroe County), NY 14614 
Phone: (716) 546-7620 and FAX: (716) 546-3145 
and its Partners: 



State of Arkansas 
Apple Computer, Inc. 
State of Kentucky 

Center for the Study of Social Policy 
State of New York 

Commission on the Skills of the American 

Workforce 
Pittsburgh, PA 

Harvard Project on Effective Services 
Rochester, NY 



Learning Research and Development Center at the 

University of Pittsburgh 
San Diego, CA 
State of Vermont 
National Alliance of Business 
State of Washington 

National Board for Professional Teaching Stan- 
dards 
White Plains, NY 
New Standards Project 
Xerox Corporation 



Brandon is a small, rural village in the Green Mountains an hour south of Burlington 
on Vermont Highway 7. The people here are poor, and the ugly white-brick two-story building 
looks more like a weather-beaten industrial plant than a school. But, on the inside, Otter Valley 
Union High School has become a high output academic setting that produces the state's debate 
champions, its own literary magazine and a choir that performed Mozart at Carnegie Hall. 

Bucking bureaucratic rules and winning state waivers from regulations, the faculty at 
Otter Valley restructured their school over the past six years. They worked with the community 



A-52 



Appendix XII 



A-53 



to set ambitious goals. They created interdisciplinary teams of teachers to improve instruction. 
They moved to cooperative learning and heterogeneous grouping. A rotating troika of teach- 
ers assumed the role of principal. They started "measuring" [emphasis in original] learning 
through portfolios of the students' work in math, English, social studies and science. They 
fought for time and money to get the training for themselves that allowed this transformation. 
The students responded, (p. 2) 

Now, imagine for the moment where we might be if states and districts routinely [empha- 
sis in original] gave birth to schools like Otter Valley in Vermont. Imagine systems that provide 
assistance and encouragement to schools to "break the mold" instead of inflexible rules that 
only harden it. (p. 3) 

Our object is to make schools like Otter Valley. . . the norm everywhere. By 1995 we plan 
to have 243 schools in seven states — enrolling a student body representative of the American 
people — cast in molds they set themselves and performing as well as any in the world. These 
schools will be the vanguard of a far larger number in many more states that will meet the 
same standard in five years. 

Reaching this goal will require a transformation in virtually every important aspect of the 
American system of education, features that have remained essentially unchanged for nearly 
70 years, from graduation standards to incentives that motivate students, from curriculum to 
budgeting, from assessment systems to teaching careers, (page 4) 

Promoting and — especially — sustaining these changes in the schools will require comple- 
mentary and equally radical changes in the organization of school districts and the structure 
and administration of education policy at the state level. It will also require thoughtful and 
sustained communication with the citizens of these states to build the public consensus 
needed to support those revolutionary changes. Designing and implementing this kind of 
fundamental transformation not just in a few schools, but in schools, districts and states in 
many parts of the country at once is an unprecedented undertaking. Pulling it off will require 
the coordinated action of hundreds of the most talented, committed educators and specialists 
from many walks of American life beyond education. The National Alliance for Restructuring 
has assembled such a team and has devised a plan that will enable us to work together to 
get the job done. The states and districts that are our Partners are utterly committed to this 
transformation, (p. 4) 

Under "America's Schools and Systems: Cast in a 1920's Mold," the report says: 

"Breaking the mold" means breaking this system, root and branch, (p. 6) 
The first design task, then, is to define what outcomes are wanted and create quality 
measures of progress toward those outcomes. 

All the states and districts in our consortium are members of the New Standards Project, 
which is itself a Partner in our consortium. We are committed to developing standards and 
developing an examination system in all the content areas covered by Goals 3 and 4 of the 
National Education Goals as well as work skills at the 4th, 8th and 10th grade levels. It will 
set a world-class standard of performance for all students, though we plan to accommodate 
many different examinations. These exams will emphasize the ability to think well, demon- 
strate an understanding of subjects studied and apply what one knows to the kind of complex 
problems encountered in real life. (pp. 8-9) 

The New Standards Project is developing a mastery-based examination with known 
standards .... The New Standards Project's examination system will employ advanced forms of 



A-54 



performance examinations as well as assessments of the quality of students' work as revealed 
through portfolios, exhibitions and projects. But this is not our only resource for this proposal. 
Many of the states and districts in our consortium are themselves leaders in the national move- 
ment to create high standards and new forms of student performance assessment. Vermont, for 
example, is pioneering the development of portfolio assessment. Pittsburgh developed one of 
the first and widely admired systems for assessing higher order thinking skills. And Kentucky 
is investing $29 million in the development of a whole new system of student performance 
assessment that will advance the state of the art. 

The approach we plan to use for assessment will provide a powerful tool for this purpose. 
At its heart is the idea of setting tasks for students to do. It is the performance of students on 
these tasks that will be assessed by the system. To a significant extent, the tasks, by defining 
students' work, will define their curriculum, (p. 9-10) 

Along with the Alliance states and school districts, it is committed to developing... 
outcome standards that will enable our Partners to create performance-oriented systems for 
the delivery of health and human services that will parallel what we propose for schools, (p. 
14) 

Changing the district and state systems from rule-driven, input-oriented systems to 
output-driven, performance-oriented systems will be as hard to achieve as the changes we 
described for schools and just as necessary. It is one of the most difficult design challenges we 
face.... We believe that, at its core, this is best thought of as a problem in the design of a very 
large staff development effort, an effort to enable thousands of people to develop the skills, 
attitudes and values to transform schools and communities all over the United States.... For 
years, most staff development has been based on learning from theory that is divorced from 
practice. We envision learning by participation in a community of practitioners, a community 
that includes people at every level of mastery. 

How can we create such a system for the teachers and others in our sites? In the classic 
model of learning through practice, the newcomer joins the work environment of a master, 
learning by participating in all of the activities of that environment. This works when newcom- 
ers are to be socialized into established and well-functioning communities of practice. But our 
problem is how simultaneously to create a new system and socialize educators to function 
within it. There are few, if any, schools that are already effectively carrying out an integrated 
program of transformed learning and teaching meeting world-class standards, joined with a 
social service program and engaging parents and the community in the process. Neverthe- 
less, we believe it is possible to design a continuing professional development program that 
includes the essential elements. There are five such elements: 

• Observation and modeling . Newcomers spend a significant amount of time observing 
mentors at work. From this observation, they learned to discriminate good from poor 
practice and acceptable from unacceptable outcomes. Observation is not haphazard. 
It is mediated by conversations in which critical features of the work are pointed out 
and processes are analyzed. Our development program must provide opportunities 
for this kind of supported observation and analysis of the work of "masters." 

• Active practice . This is the heart of it; those who are developing their skills work 
at the job they are learning, rather than learning about the job. Either in their own 
schools or in those in which their mentors teach, teachers will actively practice the 
new kinds of teaching for which we aim. 

• Scaffolding . But by definition, they don't yet know how to do these tasks — they are 
still learning. How can they manage this practice then? The answer is scaffolding. 



Appendix XII 



A- 



They learn by working side-by-side with an expert. But beginners can also scaffold 
one another by sharing a difficult task that neither might be able to do alone. Within 
our professional development design, we will need to provide scaffolding for our 
teachers' early efforts in new forms of teaching, either from expert teachers or from 
others going through the same skill development process. 

• Coaching . Success also depends on the availability of coaching by a supportive expert 
who observes and comments on the learner's efforts. Coaching is not a one-time affair, 
but continuous, spread out over the many months or years that it takes to become a 
full-fledged expert. We will have to provide for extended coaching for our teachers, 
both in the sites in which they are interning, which we call master sites, and in their 
own schools. 

• Guided Reflection . We will need to provide for reflection by those developing their 
skills. Just practicing the new forms of teaching, just doing it, even well, will not pre- 
pare teachers for the flexibility that will be necessary as they continue working over 
the years with new groups of students, with new aspects of curriculum. Successful 
teaching must be a reflective practice, one in which individuals are continually con- 
sidering, evaluating and improving on their own work. This capacity and disposition 
needs to be cultivated during the development period, and supported indefinitely. It 
is not just a matter of time for reflection — although that is crucial — but also a com- 
munity of others to engage with in a reflective process, (page 22-23) 

Our design problem is to build a development program that will contain each of the 
above elements within the constraints of a situation in which the teachers engaging in this 
development process remain part of a team responsible for educating children at their home 
school. Furthermore, we must find a way to quickly scale up the number of schools and 
teachers participating. 

What are our resources? Fundamentally, people, school practice environments, informa- 
tion and educational materials, time and communication resources. 

People: We need master practitioners, teachers already teaching well in the new ways 
we are hoping will spread through our system. We need expert consultants who can connect 
our teachers to the best research and other knowledge about instruction and learning. We 
need people who can function as on-site coaches — who are master practitioners of teaching, 
but who have enough freedom from daily teaching responsibility that they can travel to the 
schools in which our teacher-apprentices are working to observe, support and critique. 

At the outset, we are, by definition, short on master practitioners. But there are teach- 
ers, both within our Partner sites and elsewhere, who are doing superb work on some part 
of the curriculum. Our plan draws in some of these people as master practitioners. Working 
through Learning Research Development Center [Pittsburgh, ed.], we will be able to put our 
school professionals in touch with the best research knowledge in the world on questions of 
curriculum and instruction. 

In our projected cascade design, described below, teachers and other practitioners who 
become experts will serve in subsequent years as master practitioners. A system of certifica- 
tion for master practitioners will be designed to insure against the loss of fidelity that char- 
acteristically plagues cascade designs. It will also serve as an incentive (through recognition 
and, possibly, additional pay) for the extra work that teachers will need to become master 
practitioners. We will work with the National Board for Professional Teaching Standards on 
designing this certification process, (pp. 21-24) 

How We Plan to Do It 

...Getting there will require more than new policies and different practices. It will require a 



A-56 



change in the prevailing culture — the attitudes, values, norms and accepted ways of doing 
things — that defines the environment that determines whether individual schools succeed 
or fail in the transformation process. We will know that we have succeeded when there are 
enough transformed schools in any one area, and enough districts designed and managed to 
support such schools, that their approach to education sets the norms, frames the attitudes 
and defines the accepted ways of doing things in that part of the world. Then there will be 
no turning back. (p. 33) 

Bear in mind that we have selected our site Partners because their restructuring plans 
are already among the most advanced in the country. Each of the states in which we will 
initially concentrate — Vermont, New York and Kentucky — have developed sweeping strategic 
plans of action, (p. 36) 

Hornbeck, Tucker, Cohen and Gloria Frazier will visit all of the sites at least once a 
month, providing support and technical assistance, (p. 43) 

[Ed. Note: To date there have been no reports from states, cities, schools or school districts 
listed as "Partners" which show academic improvement as a result of their involvement in 
Marc Tucker's project. Rochester, NY in particular, was a disaster case, with a National Public 
Broadcasting System report in mid-April of 1993 "accusing the city school district of flunking 
the once-heralded movement to reform its schools." Vermont's efforts have proven to be less 
than successful and Kentucky's system of student performance assessment had to be scrapped 
after enormous controversy over faulty development by the designers.] 



Appendix XIII 



"Psychology's Best Kept Secrets" 

"Psychology's Best Kept Secrets," the entire Chapter 9 from The Whole Language OBE Fraud, 
by Samuel Blumenfeld (Paradigm Company: Boise, ID, 1996) pp. 77-89, is reproduced here. 



It is more than a little curious that in a nation where so much research has been done by 
psychologists on the nature of human cognition — how children learn — that these same psy- 
chologists have shown virtually no interest in the greatest learning problem plaguing American 
education: the teaching of reading. It is true that there is much interest in diagnosing reading 
disability and exploring "dyslexia," but no interest in the instructional cause of reading disability, 
despite the fact that Dr. Samuel T. Orton first drew attention to the problem back in 1929. 

Which brings us to the Center for Cognitive Studies where Frank Smith allegedly absorbed 
the wisdom of Noam Chomsky et al. The chief architect of the Center was Jerome Bruner who 
tells us in his autobiography, In Search of Mind, that cognitive psychology was born in 1956 at 
a symposium on the cognitive sciences held at the Massachusetts Institute of Technology. Two 
of the key persons who participated in that symposium were Harvard behavioral psychologist 
George Miller and linguist Noam Chomsky. 

It was that symposium that convinced Miller to leave B.F. Skinner's behaviorist camp at 
Harvard and join Jerome Bruner in developing cognitive psychology. Miller writes: 

I went away from the Symposium with a strong conviction, more imitative than rational, 
that experimental psychology, theoretical linguistics, and the computer simulation of cognitive 
processes were all pieces from a larger whole, and that the future would see a progressive 
elaboration and coordination of their shared concerns. (Bruner, p. 122) 

Three years later, in 1959, Chomsky was to give the coup de grace to the behaviorist theory 
about language by a devastating review of B.F. Skinner's book, Verbal Behavior (1957). Skin- 
ner had sought to explain language development in humans as a form of conditioned stimu- 
lus-response behavior similar to the way that animals in psych labs could be trained through 



A-57 



A-58 



conditioning techniques. Pavlov's famous experiments on dogs in Russia were the best known 
example of such experiments, the results of which were to permit psychologists to devise tech- 
niques that could be applied in changing and molding human behavior. 
J.B. Watson, the father of American behaviorism, had written in 1924: 

Behaviorism... holds that the subject matter of human psychology is the behavior of 
the human being. Behaviorism claims that consciousness is neither a definite nor a usable 
concept.... (p. 2) 

The behaviorist asks: Why don't we make what we can observe the real field of psychol- 
ogy? Let us limit ourselves to things that can be observed and formulate laws concerning only 
those things. Now what can we observe? We can observe behavior — what the organism does 
or says. And let us point out at once that saying is doing— that is, behaving, (p. 6) 

Chomsky demonstrated that the behaviorists' attempts to explain language in the limited 
terms of stimulus-response behavior were fundamentally flawed. He argued that "our inter- 
pretation of the world is based on representational systems that derive from the structure of 
the mind itself and do not mirror in any direct way the form of the external world." In other 
words, the human child is born with a brain that already contains certain innate knowledge 
that permits the child to learn language rapidly, without direct instruction from anyone. But the 
mystery is that the structure of the mind does indeed mirror the form of the external world, for 
function of language is to name the external world. The child's ability to master the phonologi- 
cal structure of the language, the abstractions of sound symbols, as well as syntax so rapidly 
and effortlessly suggested to Chomsky that man's genetic makeup provided him with a highly 
developed language capability. 

What is ironic in all of this is that despite the fact that Chomsky is a radical socialist and 
believes in evolution, his views about innate knowledge are quite compatible with and even 
strongly confirms the Biblical view of man being created with the ability to use language. God 
gave Adam the ability to speak because He wanted Adam to be able to converse with Him. In 
other words, Adam was given the power of the word for the specific purpose of being able to 
know God. The second purpose of language was to enable Adam to know the world for God 
gave Adam the task of establishing dominion over all living creatures, which meant naming 
them and classifying them. In other words, God made Adam an observer, a scientist. After the 
creation of Eve, the third function of language became apparent: to know others. And since 
language is the tool of thought, the fourth function of language was to be able to think and 
thereby know oneself. 

In 1960 Miller and Bruner got an unrestricted grant of a quarter-million dollars from the 
Carnegie Corporation of New York to set up their Center for Cognitive Studies at Harvard. Miller 
brought ideas about communication theory, computation, and linguistics to the Center whereas 
Bruner brought ideas about social psychology, developmental psychology, and anthropology to 
the mix. It was obvious that the new interest in the mind had been spurred by the new com- 
puter technology. For, as Bruner writes, "You cannot properly conceive of managing a complex 
world of information without a workable concept of mind. " The result is that the Center brought 
together the ideas and theories of scholars and scientists working in many associated fields and 
drew graduate students from M.I.T., Harvard, and elsewhere. 

Bruner concentrated on early childhood mental development which brought him into 
contact with the work of the Swiss psychologist Jean Piaget whose pioneering work in the field 



Appendix XIII 



A-59 



had contributed greatly to an understanding of how the child's mind grows. Piaget saw the 
child as an egocentric individual, gradually modifying his egocentrism as he adapted himself 
to the reality of others. 

But Bruner, a socialist, was not entirely satisfied with the Piagetian view which seemed 
to favor the development of individualism. "Piaget's children," writes Bruner, "are little intel- 
lectuals, detached from the hurly-burly of the human condition. " He was far more attracted to 
the work of Lev Semyonovich Vygotsky (1896-1934), the Soviet cognitive psychologist. Bruner 
writes: 

Vygotsky's world was an utterly different place, almost the world of a great Russian 
novel.... Growing up in it is full of achieving consciousness and voluntary control, of learning 
to speak and then finding out what it means, of clumsily taking over the forms and tools of 
the culture and learning how to use them appropriately.... (p. 138) 

Vygotsky published little and virtually nothing that appeared in English before 1960; 
indeed, until the late 1950s, most of what he wrote in Russian was suppressed and had been 
banned after the 1936 purge. Sickly and brilliant, he died of tuberculosis in his thirties.... He 
was a Russian and a Jew, deeply interested in the arts and in language.... His objective was 
to explore how human society provided instruments to empower the individual mind. He 
was a serious intellectual Marxist, when Marxism was a starchy and dogmatic subject. This 
was his undoing at the time of the Stalinist purges.... Though I knew Piaget and never knew 
Vygotsky, I feel I know Vygotsky better as a person, (p. 137) 

The man who introduced Bruner to Vygotsky was Alexander Luria, the Soviet psychologist 
whose book, The Nature of Human Conflicts, had been translated into English and published 
in the United States in 1932. Luria wrote in his preface: 

The researches described here are the results of the experimental psychological investiga- 
tions carried on at the State Institute of Experimental Psychology, Moscow, during the period 
of 1923-1930. The chief problems of the author were an objective and materialistic descrip- 
tion of the mechanisms lying at the basis of the disorganisation of human behaviour and an 
experimental approach to the laws of its regulation.... To accomplish this it was necessary 
to create artificially affects and models of experimental neuroses which made possible an 
analysis of the laws lying at the basis of the disintegration of behavior, (p. xi) 

Pavlov himself, Luria's mentor, had proudly summed up the results of his famous experi- 
ments in a book, Twenty Years of Objective Study, published in 1935. These experiments on 
animals had enormous implications for experiments on human beings. Pavlov wrote: 

The power of our knowledge over the nervous system will, of course, appear to much 
greater advantage if we learn not only to injure the nervous system but also to restore it at will. 
It will then have been really proved that we have mastered the processes and are controlling 
them. Indeed, this is so. In many cases we are not only causing disease, but are eliminating 
it with great exactitude, one might say, to order, (p. 690) 

Thus, Pavlov had already done considerable experimentation on the causes of behavioral 
disorganization. Luria writes (p. 2): 

Pavlov obtained very definite affective "breaks," an acute disorganisation of behaviour, 



A-60 



each time that the conditioned reflexes collided, when the animal was unable to react to two 
mutually exclusive tendencies, or was incapable of adequately responding to any imperative 
problem. 

Apparently, there were many psychologists at that time working on the same problem. 
Luria writes [p[p]. 206-207): 

We are not the first of those who have artificially created disorganisation of human 
behaviour. A large number of facts pertaining to this problem has been contributed by con- 
temporary physiologists, as well as by psychologists. 

LP. Pavlov was the first investigator who, with the help of exceedingly bold workers, 
succeeded experimentally in creating neuroses with experimental animals. Working with 
conditioned reflexes in dogs, Pavlov came to the conclusion that every time an elaborated 
reflex came into conflict with the unconditional reflex, the behavior of the dog markedly 
changed.... 

Although, in the experiments with the collision of the conditioned reflexes in animals, 
it is fairly easy to obtain acute forms of artificial affect, it is much more difficult to get those 
results in human experiments.... 

K. Lewin, in our opinion, has been one of the most prominent psychologists to elucidate 
this question of the artificial production of affect and of the experimental disorganisation of 
behaviour. The method of his procedure — the introduction of an emotional setting into the 
experience of a human, the interest of the subject in the experiment — helped him to obtain an 
artificial disruption of the affect of considerable strength.... Here the fundamental conception 
of Lewin is very close to ours. 

Who was K. Lewin? Why he was the very same Kurt Lewin who came to the United States 
in 1933, founded the Research Center for Group Dynamics at M.I.T. (which later moved to the 
University of Michigan), and invented "sensitivity training." Shortly before his death in 1947, 
Lewin founded the National Training Laboratory which established its campus at Bethel, Maine, 
under the sponsorship of the National Education Association. Their teachers were instructed in 
the techniques of sensitivity training and how to become effective change agents. 

After Lewin's death, his colleagues continued to develop his sensitivity-training sessions 
which became known as t-groups (t for training) . The t-group became the basis of the encounter 
movement in which participants get in touch with their feelings. 

Carl Rogers, one of the chief practitioners of the t-group, considered sensitivity training 
to be "perhaps the most significant social invention of this century." All of this spurred the 
development of humanist "Third Force" psychology by Rogers, Abraham Maslow and others, 
which has had an enormous influence on the affective curriculum of public education. 

Lewin had started his career as a social psychologist in Berlin where he organized a "col- 
lective" in which he and his students pursued the experiments which Luria later recognized as 
highly effective. Some of Lewin's students were Russians who studied under him in the early 
1920s and returned to the Soviet Union to teach and continue their research at the University 
of Moscow. In 1929 Lewin attended the Ninth International Congress of Psychologists at Yale 
where, according to Harvard psychologist Gordon Allport, his work "was decisive in forcing 
some American psychologists to revise their own theories of the nature of intelligent behavior 
and of learning." 



Appendix XIII 



A-61 



In 1932, Lewis M. Terman, head of the psychology department at Stanford, invited Lewin 
to spend six months as a visiting professor at Stanford. Lewin had been recommended by 
Edwin G. Boring, director of the Psych Lab at Harvard, who had been greatly impressed with 
Lewin at the Yale conference. After the stint at Stanford, Lewin decided to return to Germany 
via the Pacific and the Trans-Siberian railroad. In Moscow he was able to confer with his fellow 
psychologists, including Luria. Hitler had just come to power in Germany, and in August 1933, 
Lewin left Germany for good. 

The importance of Lewin in this story is that he represented the collectivist mentality in the 
psychological community which had its own socio-political agenda. Certainly, the psychologists 
who were experimenting with artificially induced behavioral disorganization in their laboratories 
in Germany, the Soviet Union, and the United States had a reason for their experiments. And 
Lewin was considered highly skilled in such experiments with human beings which greatly 
interested American psychologists. Lewin's biographer, Alfred J. Marrow, writes: 

Students of progressive education also saw the need for studies of group behavior. This 
was stimulated by the educational philosophy of John Dewey. To carry out Dewey's theory 
of "learning by doing," teachers organized such group projects as student self-government 
and hobby-club activities. This called for the development of leadership skills and collective 
setting of group goals.... Lewin's pioneering research in group behavior thus drew upon the 
experience of educators in deciding upon and developing topics for research and in establish- 
ing a strong interest among social psychologists and teachers, (p. 167) 

One of Lewin's most significant experiments was aimed at determining the behavioral 
effects of frustration on children and how these effects are produced. Marrow writes: 

The experiment indicated that in frustration the children tended to regress to a surpris- 
ing degree. They tended to become babyish. Intellectually, children of four-and-a-half years 
tended toward the behavior of a three-year-old. The degree of intellectual regression varied 
directly with the strength of the frustration. Change in emotional behavior was also recorded. 
There was less smiling and singing and more thumbsucking, noisiness, and restless actions. 
Aggressiveness also increased and some children went so far as to hit, kick, and break objects. 
There was a 30 per cent rise in the number of hostile actions toward the experimenter and a 
34 per cent decrease in friendly approaches.... 

The authors summarized their main findings as follows: "Frustration as it operated in 
these experiments resulted in an average regression in the level of intellectual functioning, in 
increased unhappiness, restlessness, and destructiveness, in increased ultra-group unity, and 
in increased out-group aggression. The amounts of increase in negative emotionality were 
positively related to strength of frustration." (p. 122) 

In other words, Lewin and his colleagues had proven beyond a shadow of a doubt that 
frustration could cause the same symptoms of behavioral disorganization in children that Pavlov, 
Luria and associates had produced in their laboratories with animals. On the matter of teaching 
reading, Lewin favored the look-say, whole- word method. Marrow writes: 

Lewin's students had unusually wide latitude in choosing their particular field of study. 
Sara Forrer, for example, decided to investigate Ovid Decroly's method of teaching retarded 
children to read.... The Belgian teacher had postulated that children retain sentences more 



A-62 



easily than single words and words more easily than single letters. Lewin stated, in referring 
to Forrer's experiment, that "the findings confirm the marked advantage of the 'global' method 
of reading and writing. To a child taking no joy in learning to write an alphabet, a change of 
valence (attractiveness) occurs more quickly when he is allowed as soon as possible to write 
meaningful communications in sentence form." (p. 258) 

What is interesting in all of this is that Clara Schmitt in 1914 (see chap. 12) had shown 
in her analysis of the errors made by mentally defective and normal children that the mentally 
defective had problems learning to read phonetically. And even when they were taught to read 
phonetically, they made the kinds of errors that normal children make when taught to read by 
the look-say method. Decroly was obviously confirming that the "global," or whole language 
method, was easier for retarded children than the more abstract alphabetic system. But to 
assume that the global (i.e., whole language) method was also better for normal children was 
either a serious error on Lewin's part, or a deliberate effort to promote look-say. He must have 
known that the Central Committee of the Communist Party in the Soviet Union had rejected the 
whole-word method in 1933 mainly through the work of his colleagues, Luria and Vygotsky. 

Lewin obviously believed in the Marxist doctrine that the end justifies the means. In his 
book, Resolving Social Conflicts, published in 1948, he wrote: 

In regard to a change toward democracy this paradox of democratic leadership is still 
more pointed. In an experimental change, for instance, from individualistic freedom (laissez 
faire) to democracy, the incoming democratic leader could not tell the group members exactly 
what they should do because that would lead to autocracy. Still some manipulations of the 
situation have to be made to lead the group into the direction of democracy.... 

To investigate change toward democracy a situation has to be created for a certain 
period where the leader is sufficiently in control to rule out influence he does not want and 
to manipulate the situation to a sufficient degree. The goal of the democratic leader in this 
transition period will have to be the same as that of any good teacher, namely, to make himself 
superfluous, to be replaced by indigenous leaders from the group, (p. 39) 

In other words, during the transition period from individualism to "democracy" (i.e., col- 
lectivism) the end can justify the means, because the "end" is the greater good. The look-say 
method may be needed during the transition period in order to make Americans less literate 
and thereby less independent as individuals. This would indeed be a necessary strategy for 
moving the nation toward a socialist, collectivist society. And, of course, it was in keeping with 
Dewey's own views on reading instruction given in his essay, "The Primary School Fetich," 
published in 1898. 

Vygotsky died in 1934 and Lewin died in 1947, but Luria, who knew them both, continued 
his work. During World War II he did painstaking research on brain-injured people, discover- 
ing many facets of how the brain works. He had worked closely with Vygotsky from 1924 to 
1934, the period in which they had worked on early childhood development and the artificial 
means of creating behavioral disorganization. During that period Vygotsky also worked on the 
problems of Soviet education, applying psychology to the problems of massive illiteracy which, 
according to James Wertsch, "has been almost completely overcome today." 

How were the Soviets able to achieve this? By using an alphabetic-phonics method of 
teaching reading! 



Appendix XIII 



A-63 



The Bruner-Luria connection was a very close one. Bruner attended psychological confer- 
ences in Moscow, and, in 1960, Luria visited the Center for Cognitive Studies. Bruner writes: 

Luria and I became fast friends almost immediately. We were compatible temperamen- 
tally and very much in agreement about psychological matters.... (p. 145) 

In the fifteen or so years that I knew him well, I do not think that two months ever went 
by without a letter from him, a new book or translation of his.... He was the czar of Russian 
psychology, but a more benign czar would be hard to imagine! (p. 144) 

Why were they so compatible? Well, as a student Bruner not only sympathized with com- 
munism, but in his senior year at Duke, he became a member of the Communist Party. He 
writes: 

That last year at Duke was 1938, the bitter winding down of the Spanish Civil War. My 
roommate, Irv Dunston, and I were invited to become members of a Marxist "study group" 
held at the home of a gifted young mathematics professor. Each week we would prepare by 
reading something of Marx or Lenin. I liked the slogans — that production was for use not 
for profit, to each according to his effort, and so on — but the turgid arguments of Marxist 
"thinkers" repelled me.... 

My fondness for the slogans must have been enough, for we were asked eventually to 
join a "cell" of the Communist Party in Durham, "with real working-class people." After a 
late-into-the-night discussion, we decided that this was our duty.... 

The cell meetings, in that dingy apartment near the railroad station in Durham, were 
the intrinsic, the conspiratorial appeal — our code names included.... My "duties" were to 
take an active part on campus in the American Student Union, to put the "right" candidates 
into office.... 

The year ended; I departed Durham. I never even had to resign from the Party. I was 
given no names or contacts, but told simply that I would soon know who and how. I guess 
I didn't make it. (pp. 29-30) 

Thus ended Bruner's formal relationship with the Communist Party But nowhere in his 
autobiography does Bruner indicate any loss of belief in socialism or Marxism. The fact that 
he felt so compatible with Luria and preferred Vygotsky to Piaget would lead one to believe 
that Bruner has remained sympathetic to communism throughout his professional life. He and 
his fellow psychologists thought nothing of attending psychological conferences in Moscow 
during the height of the Cold War while American soldiers were dying in Vietnam fighting 
communism. 

On matters of education, Bruner was instrumental in creating in 1965 the famous — or 
infamous, depending on your point of view — social studies curriculum for ten-year-olds, Man: 
A Course of Study, better known as MACOS. Bruner writes: 

[A]fter a year or two of very favorable notices... and widespread adoptions, the course 
came under attack from the extreme right-wing lohn Birch [Society] in league with newly 
emerging "creationists," opposed to the teaching of evolution. Between them they mounted 
the now familiar right-wing harassment of any school district proposing to use the course.... 



A-64 



Governor Reagan of California, whose state sheltered the core of the John Birch, came out 
squarely against the course.... And so symbolic had the course become for the extreme Right 
that they managed to pass on their "literature" about it to a right-wing group in Australia, 
then in opposition to the widespread adoption of the course there, (p. 194) 

One would have to conclude from the above that the Center for Cognitive Studies was not 
exactly a hotbed of conservative, anti-communist thinking. And it is interesting to note that 
when Frank Smith left the Center with his newly acquired Ph.D., he embarked on his career 
as a phonics-basher par excellence and was soon catapulted into the position of "expert" on 
reading and literacy by the look-say establishment. 



Appendix XIV 



Alert on National Education Goals Panel Community Action Tool Kit 

October 6, 1994 

TO: Concerned Citizens 

FROM: Charlotte Iserbyt, Former Senior Policy Advisor, 

U.S. Department of Education, Office of Educational Research 

and Improvement, from which all components of educational 

restructuring (OBE/ML/Goals 2000) emanated. 

SUBJECT: National Education Goals Panel Community Action Tool Kit; 

Do-It-Yourself Kit for Education Renewal, Community 

Organizing Guide, September 1994. ACTION ALERT. 

Order the above-mentioned materials from the Government Printing Office, 202-512-1800. 
The Stock No. for ordering is 065-000-00680-4. The price is $37. It is important to confront 
your elected officials IMMEDIATELY with the proof before educators receive project and move 
ahead with it in your community. 

Concerned parents, teachers, plain taxpayers, etc. are fortunate that we were able to obtain 
a copy of these incredible materials which in a nutshell spell out clearly how to manipulate all 
segments of the community into accepting/supporting GOALS 2000 (the restructuring of our 
schools, i.e., "nation," according to a speech delivered by Shirley McCune of the Midcontinent 
Regional Education Laboratory at the Governor's Conference, Wichita, Kansas, 1989). Explicit 
strategies are presented in manipulation of the community into accepting theoretical, unproven 
curricula. The guide provides clear and ample direction to censure dissenting voices critical of 
the restructuring. These directions include deliberately misleading of the media, formulation 
of core groups to isolate and stifle dissenters, contrived data collection among other offensive 
activities. The aim is not to reach consensus but to obfuscate the real issues in order to push 
forward a one-sided agenda. A most disturbing reference is made toward controlling by name 
a particular religious group. 

For years education researchers have referred to the change agents' bible: The Change 



A-65 



A-66 



Agents' Guide to Innovation in Education by Ronald G. Havelock, Program Director, Center 
for Research on Utilization of Scientific Knowledge, Institute for Social Research, University 
of Michigan, portions of which were originally developed as part of Contract No. OEC-0-8- 
080603-4535(010) with the Office of Education, U.S. Department of Health, Education, and 
Welfare, under the title "Diffusion of Utilization Research to Knowledge Linkers in Education." 
The copyright is 1973 (Educational Technology Publications, Inc.: Englewood Cliffs, NJ), LC 
72-87317. The Guide contains authentic case studies of how change agents manipulate their 
communities into accepting controversial curricula, methods, etc. Some freedom-loving education 
researchers have taken the course on how to bring about change and how to "identify resisters," 
etc. (themselves!). Ronald Havelock has strong connections to UNESCO (United Nations). 

That the National Goals Panel, which includes elected officials (governors, legislators, etc.), 
could condone the use of manipulative change agent tactics (the above described National Goals 
Panel Community Action Kit reads like Ronald Havelock was the Project Director) is difficult 
to fathom. Do they know what is in this Kit? Do they feel that the restructuring of our nation a 
la Shirley McCune and Naisbett, i.e., the changing of our political/economic system from free 
enterprise/capitalist to corporate fascist/planned economy (merger of public and private sector) 
and from a constitutional representative republic to a participatory democracy (for proof see 
federally-funded education restructuring projects implemented in many states during past ten 
years) is so important that totalitarian methods must be used to reach consensus and approval? 
Don't citizens have the right to make such important decisions related to the future of their 
children and nation at the ballot box, rather than having themselves subjected to a tax-funded 
manipulative brainwash in order to come to phony consensus? 

Opposition to OBE, Goals 2000 has been so intensive and effective that the education 
bureaucracy, in collusion with multinational corporations, has openly sunk to this incredibly 
totalitarian level in order to get acceptance at the local level of its international socialist lifelong 
dumbdown education/job training agenda. 

The Do-It-Yourself Kit for Education Renewal consists of four parts: (1) "Community 
Organizing Guide"— 57 pages; (2) "Guide to Getting Out Your Message" [better titled "How to 
Manipulate the Media and the Taxpayers," ed.]— 74 pages; (3) "Resource Guide"— 66 pages; 
and (4) "Guide to Goals and Standards"— 38 pages. 

CALL NATIONAL GOALS PANEL AT 202-632-0952 TO REGISTER YOUR CONCERN 
OVER THE CONTENTS/METHODS RECOMMENDED IN THE PANELS COMMUNITY ACTION 
TOOLKIT. TELL THEM YOU WILL ASK YOUR ELECTED REPRESENTATIVES TO CALL FOR 
AN INVESTIGATION OF THE U.S. DEPARTMENT OF EDUCATION'S ACTIVITIES WHICH ARE 
WORKING AGAINST THE BEST INTERESTS OF AMERICAN CITIZENS, USING PSYCHOLOGI- 
CAL MANIPULATION (DELPHI TECHNIQUE, GROUP PROCESS BRAINWASH METHODS, ETC.) 
TO GET COMMUNITY APPROVAL OF GOALS 2000. ASK THEM TO STOP DISTRIBUTION OF 
THE ACTION TOOL KIT UNTIL CONGRESS HAS HAD AN OPPORTUNITY TO EXAMINE ITS 
CONTENTS. ASK FOR A WRITTEN RESPONSE TO YOUR CONCERNS. CALL OR WRITE YOUR 
ELECTED OFFICIALS REQUESTING A CONGRESSIONAL INVESTIGATION OF THE GOAL 
PANEL'S TOOLKIT DEVELOPED WITH YOUR TAX MONIES. 

Excerpts (verbatim quotes from the Tool Kit) follow: 

...Step 3: Describe Allies and Opponents; Identify Change Agents.... 

Step 1: Identify a Leadership Team. This section provides suggestions on how to find 



Appendix XIV 



A-67 



the leaders in your community. It also includes a checklist of likely candidates — partners for 
your effort. 

Troubleshooting. Even as you are expanding the base of support, it will be important to be 
aware of the opposition. Keep an eye out for your opponents, respect their opinions, and try 
to explain yours. Understand the process of inclusion. 

Step 1: Identify a Leadership Team. The people who lead the community campaign to 
reform education will give it inspiration, drive, and momentum. They will set the groundwork 
for a long-term reform strategy. This is a task that requires numbers of committed people, 
but it must start with a core team.... There are likely candidates for leadership... members 
of PTA, president of Chamber of Commerce, president of local teachers' union, members of 
social action committee of a local church or synagogue. 

Step 2: Develop a Common Vision. "It takes a whole village to educate a child"; assess- 
ing current strengths and weaknesses and building a strong accountability system to regularly 
measure and report on progress towards the goals over time; identifying the barriers to and 
opportunities for goal attainment in many systems that support teaching and learning; creat- 
ing and mounting strategies to overcome barriers.... 

Objectives: Schools... in implementing comprehensive parent involvement programs, will 
offer more adult literacy, parent training and lifelong learning opportunities to improve the 
ties between home and school and enhance parents' work and home lives.... 

Holding Community Meetings. Identifying Participants: It may be useful to invite leaders 
from key organizations to act as spokespersons or to lead small discussion groups.... Have a 
designated number of people personally responsible for bringing others to the meeting.... 

Developing an Agenda: The agenda for your community goals meeting should be constructed 
in a way that galvanizes support for your mission and refines it where necessary. Make sure 
to involve the core group of leaders in developing the agenda.... 

Choosing a Facilitator: An organized discussion about education reform will not happen 
spontaneously. It will be necessary to have a facilitator to help direct discussion around the 
issues related to the goals and the ways they apply to the community. The facilitator will 
need to encourage audience participation. He or she will need to ensure that no single person 
monopolizes the discussion and that shy people are encouraged to speak. The facilitator will 
bring discussions to a close and guide the audience to decisions about actions that need to 
be taken.... 

Community Review of Goals in Small Groups. The group will divide into smaller sec- 
tions — one for each of the goals identified in the previous discussion. It may be helpful to 
appoint leaders for each small group. The groups should reflect diversity. They should make 
any necessary revisions in the goal and then brainstorm about how the community can 
accomplish the needs identified in each goal. Emerging from the group sessions will be the 
beginnings of a community action plan and the methods for measuring progress toward the 
community education goals.... 

• Case Study of Allegheny Policy Council. Participants were asked for input which 
would lead directly to a regional plan for focusing our resources to improve math and 
science. The resulting plan will guide regional action. It will be used to indicate regional 
consensus to secure national funding and to guide local allocation of resources.... 



A-68 



Conducting Surveys. In addition, the findings of a survey can help formulate and bolster 
positions of the campaign.... 

Develop a Useful Questionnaire. Biased wording also invalidates results, so emotionally 
loaded or slanted questions should be strictly avoided. It may be difficult to ask neutral ques- 
tions — especially when you have strong feelings on the topic — but that is the only way to get 
valid information. . . . 

CASE STUDY: Omaha 2000. 

Initiatives were so much more easily accepted because people felt that the survey made them 
a part of the decision-making process. [A few survey questions follow, ed.] 

• Parenting education programs should be available for all parents? 

• Our community should appreciate and embrace the growth of diversity? 

• Every citizen should be responsible to assist students and support education? 

• All children should have a personal mentor available to assist them?... 

Develop a Strategy. Evaluate Context for Change; describe allies and opponents; identify 
change agents. 

For many issues there will be significant institutional barriers to any change you hope 
to initiate.... 

Elements of Systematic Reform. 

Creating a coordinated education and training system.... Are these programs built around a 
multi-year sequence of learning at work sites and at school — learning that is connected and 
coordinated? 

Describe Allies and Opponents. 

On the other hand, there may be people or organizations in the community who will oppose the 
reforms you are attempting to institute. Some of these opponents simply may not understand 
the goals of the campaign. Others will persist in their opposition. Before your organization 
takes any action, you will need to anticipate the potential reaction of opponents. List your 
opponents and what your success might mean to them. Refer to the Troubleshooting section 
for suggestions on how to deal with opposition. 

Identify Change Agents. 

One change agent could be the Superintendent of schools because she or he has the power 
to institute a district-wide policy to include community members in the standards-develop- 
ment process. 

["Power" is mentioned many times in this section, ed.] 

Resistance. This will be the most difficult stage. The public will be reluctant to face the trade- 
offs that come from choosing a specific plan of action. 

To describe opponents answer these questions: 

List the resources of your opponents. 

Council Strategy Chart. 

Get the president of Hewlett Packard to write the chair of the school board a letter supporting 
the proposal. [Strategy to get calculators for school, ed.] 



Appendix XIV 



A- 



Community Organizing Tips. 

Surveys can do more than help you gather information. They can also build community 
ownership of reform. 

Business and Labor Leaders' Checklist. 

Business and labor can make the goals work by building community support, helping to mea- 
sure effectiveness, and defining required workforce skills that could be matched to academic 
achievement targets. 

Other Sources of Support 

Potential allies for your effort are everywhere.... Consult the resource directory.... Also, do 
not overlook other goals- and standards-based reform campaigns as a source of information 
and support. School officials and community leaders in Edmonds, Washington; San Antonio, 
Texas; Omaha, Nebraska; Bangor, Maine; and hundreds of other municipalities. 

Identifying Financial Resources. 

As you begin your search for funding, remember the federal government. With its passage of 
the comprehensive Goals 2000: Educate America Act, Congress has made it easier for com- 
munities to restructure education.... What's more, the legislation takes a big-picture view of 
education that goes beyond the traditional K-12 focus of past administrations. Education is 
defined as a process that begins in early childhood and continues to adulthood through lifelong 
learning situations. It emphasizes the connections between preschool, school, and work. 

Troubleshooting. 

You are likely to face opposition any time you try to introduce change into a community.... 
Their concerns may be based on confusion over what goals and standards are. . . or they may 
be satisfied with current state of learning in your community. 

Following are tips on how to explain National Education Goals and Standards.... For a 
fuller description of the relevance of national goals and standards-based reform movement. . . 
please see "Guide to Goals and Standards" booklet in Tool Kit. 

Know the Facts. 

For definitions of many of the other terms of the debate, see "Glossary of Terms" at end of 
"Resource Directory." 

Give Everyone a Role. 

Not everybody has to share your views. Be sensitive to concerns of your opponents. Talk 
about what offends them and address their issues. 

Avoid Loaded Words and Phrases. 

Words and phrases like "outcomes," "outcome-based education," "self-esteem," and "attitudes" 
may mean different things to certain groups. . . . Remember, if you stick to clear, concrete terms 
that everyone comprehends, not only will you be better understood, you may also avoid seri- 
ous conflict down the road. 

Keep your Perspective. 

Opposition may come from a small part of the community. Balance their concerns appropri- 
ately and reinforce the fact that the National Goals have widespread support. You might think 
of inviting opponents into the schools to let them see for themselves how your community 
action plan is improving education. 



A-70 



Beware of The One-Size-Fits-All Argument. 

Reassure your opposition that the National Education Goals, the framework for your commu- 
nity's education reform effort, are not trying to establish a national curriculum for all schools. 
[This is a bald-faced lie. According to Education Week, Jan. 25, 1989, "Chester E. Finn, Jr. 
former head of the Education Department's research branch, told business leaders here last 
week that he favored the development of a 'national curriculum.'", ed.] 

Remember the equity issue. 

Every student will be expected to meet higher standards. No students will be denied the 
opportunity to learn [This is Spady's et al terminology for outcome-based education, effective 
schools, mastery learning, ed.] 

Ask for Help. See Resource Directory... Case Study of Edmonds, Washington: Sylvia Soholt, 
who works in Edmonds' planning and community relations division, says they deliberately 
chose a process involving multiple drafts of each phase because "it gives the message that 
you are open to change. " 

The text was not presented as a writ from the school district, but rather as "this is what 
your neighbors said students should learn and be able to do." 

By sending the draft to everybody in the community, the school district was able to deflect 
charges of being exclusive. District officials carefully documented the originator of each idea 
to demonstrate that the plan was developed by the community, not by school officials. 

In a meeting to discuss the first draft, some raised religious doubts about the reform 
effort. They said they feared the schools would take charge of rearing children, teaching non- 
Christian values instead of improving academic skills. Some suggested that computers would 
monitor and mold children into automatons. 

Faced with these objections, the superintendent, Brian L. Benzel, knew he could not 
just dismiss the criticisms as misguided. He felt that the school district needed to clarify the 
purpose behind the reform effort before releasing a second draft of the document. Benzel 
approached Edmonds' ministers and invited them to a meeting on education reform efforts. 

At the meeting, the superintendent addressed the expressed fears and explained what 
the reform movement was really trying to do. He said he believed that they misunderstood 
the district's intentions, but thought their concerns were important. He let the ministers 
talk about education. They all agreed that education needed to be improved and that it was 
important to define student skills. 

In the course of the conversation, it became clear that the religious community was 
not walking lock-step against reform. Reform meant something different to each minister. It 
appeared that the ministers simply wanted to be part of the debate. As a result of this positive 
meeting, they carried the message back to their congregations, that the school reformers were 
willing to listen and be inclusive. 

Following these meetings the school district made revisions that incorporated the objec- 
tions and reflected the concerns of the whole community. The district removed confusing 
jargon from the draft. For example, people had objected to defining "critical thinking" as a 
skill— they believed it suggested that children should be taught to be critical of their parents. 
So the second draft defined "thinking and problem-solving" as the ability to "think creatively 
and develop innovative ideas and solutions" and to "think critically and make independent 
judgments." 

To address the concern that the district was stressing some skills over others, it developed 
a poster depicting the skills and abilities a student needs as a "tapestry of learning, " where 
all the elements have equal importance and are woven together. 

The school district is now moving to the next step. They are creating assessment tools 



Appendix XIV 



A-71 



to measure the standard they have developed, using the same strategy of full community 
involvement. [Supt. Brian Benzel, Chairman, Governor's Task Force on Schools for the 21st 
Century, is listed as a partner (WA State) in Marc Tucker's National Alliance for Restructuring 
Education Schools — and Systems — for the 21st Century. See Appendix XII. In other words, 
the citizens and ministers in Edmonds, Washington were manipulated by a very important 
and recognized "change agent," ed.] 

The importance of ordering the entire Kit cannot be overemphasized. We have dealt only 
with one section, "The Community Organizing Guide." 

Please fax me info regarding action you and members of your community intend to take 
to expose this incredible federal initiative. 

Thanks very much. 



Appendix XV 



"Will Republicans Betray America By Voting For Marc Tucker's 
Human Resources Development System: H.R. 1617 and S. 143?" 

"Will Republicans Betray America By Voting For Marc Tucker's Human Resources Development 
System: H.R. 1617 and S. 143?" by Samuel Blumenfeld is taken from the The Blumenfeld Educa- 
tion Letter, May 1996 (Vol.11, No. 5, Letter #116). 



There is no doubt that H.R. 1617 (known as the "Consolidated and Reformed Education, 
Employment, and Rehabilitation System's Act" or "CAREERS Act"), which passed the House in 
September 1995 by a vote of 345 to 79, and S. 143 (the Workforce Development Act of 1995), 
which passed the Senate in October by 95 to 2, will do more to lead America into socialist-fascist 
totalitarianism than any other pieces of legislation before the present Republican-dominated 
Congress. 

Both bills, when reconciled in conference committee, will enact into law Marc Tucker's 
infamous Human Resources Development System, outlined in Tucker's exuberant letter of 
November 11, 1992 to Hillary Clinton, a member of the board of trustees of Tucker's National 
Center on Education and the Economy. He wrote: 

I still cannot believe you won. But utter delight that you did pervades all the circles in 
which I move. I met last Wednesday in David Rockefeller's office with him, John Sculley, 
Dave Barram and David Haselkorn. It was a great celebration. Both John and David R. were 
more expansive than I have ever seen them — literally radiating happiness.... 

The subject we were discussing was what you and Bill should do now about education, 
training, and labor market policy. Following that meeting, I chaired another in Washington 
on the same topic... 

Our purpose in these meetings was to propose concrete actions that the Clinton admin- 
istration could take — between now and the inauguration, in the first 100 days and beyond. 
The result, from where I sit, was really exciting. We took a very large leap forward in terms 



A-72 



Appendix XV 



A-73 



of how to advance the agenda on which you and we have all been working — a practical plan 
for putting all the major components of the system in place within four years, by the time 
Bill has to run again. 

That Hillary Clinton had been working with Tucker and associates to develop this fascist 
education system is confirmed by the fact that Tucker paid Hillary $102,000 in 1991 for her work 
as a consultant to the NCEE. Obviously, the letter of November '92 was meant to help prepare 
the Clintons to get the Tucker plan passed into law and implemented by the fifty states. In it 
Tucker outlined his "vision" of a human resources development system: 

What is essential is that we create a seamless web of opportunities to develop one's 
skills that literally extends from cradle to grave and is the same system for everyone — young 
and old, poor and rich, worker and full-time student. It needs to be a system driven by client 
needs (not agency regulations or the needs of the organizations providing the services), guided 
by clear standards that define the stages of the system for the people who progress through 
it, and regulated on the basis of outcomes that providers produce for their clients, not inputs 
into the system. 

One should be aware that Tucker's plan to restructure American education goes back to 
his 1986 report on teaching, A Nation Prepared: Teachers for the 21st Century, produced when 
he was executive director of the Carnegie Forum on Education and the Economy. In 1987, 
New York Gov. Cuomo and the leaders of Rochester, N.Y., invited Tucker to set up his National 
Center on Education and the Economy (NCEE) in that city. The idea was that the Center, with 
the help of an initial subsidy of $1 million from Gov. Cuomo, would help Rochester implement 
Tucker's basic restructuring ideas in that city's school system. 

GOALS 2000 

In 1989 the NCEE issued its first report, To Secure Our Future: The Federal Role in Education, 
which became the basis for Goals 2000. The report basically framed the issues and shaped the 
agreements that were made at President Bush's famous Education Summit at the University of 
Virginia, Charlottesville, in the fall of 1989. After the summit, in which Gov. Clinton of Arkan- 
sas was an active participant, the National Governors' Association asked the NCEE to assist in 
the development of national goals for education. These goals were subsequently promoted by 
President Bush in his 1990 State of the Union address. Apparently, a Republican president was 
willing to accept the education reform plan of the ultra-liberal NCEE rather than call upon a 
conservative think tank to come up with a conservative reform plan. 

In 1989, Tucker's group created the Commission on the Skills of the American Workforce 
which compiled a report entitled America's Choice: High Skills or Low Wages! The report, issued 
in June 1990, is the basic blueprint for Tucker's Human Resources Development System which 
moves American education from its traditional emphasis on academics and knowledge to a 
Soviet-style workforce training and certification program. 

Both H.R. 1617 and S. 143 represent the culmination of Tucker's efforts to get Congress to 
impose his system on America. That Republicans should be in the forefront of promoting these 
bills makes one wonder if the Republican Party is becoming the new fascist party of America. 
In the Tucker system, the government will plan your life for you, track you from birth to death 
on its mammoth data-gathering computer, and regulate employment and eventually the entire 
economy. 



A-74 



Henry Hyde Opposes 

The only Republican congressman to openly oppose this legislation is Rep. Henry Hyde of 
Illinois, who addressed a letter to his colleagues in March of this year stating why he opposes 
the Tucker plan and the legislation that makes it law. He wrote: 

Dear Colleague: 

President Clinton's plan for a national workforce of skilled laborers is being achieved 
through the Goals 2000 Educate America Act (HR 1804), School-to- Work Opportunities Act 
(SWO) (HR 2884), and Improving America's Schools Act (IASA) (HR 6), all of which were 
passed and signed into law by President Clinton in 1994. 

I'll tell you why it is so important to repeal these laws. The plan for Goals 2000 was 
developed by Bill Clinton, Hillary Clinton, Ira Magaziner, and Marc Tucker, President of the 
National Center on Education and the Economy (funded by the Carnegie Foundation), prior to 
Clinton's election. It is a concept for dumbing-down our schools and changing the character 
of the nation through behavior modification (a vital part of this plan) . It moves away from an 
academically intensive curriculum to one that is integrated with vocational training, produc- 
ing skilled manpower for the labor market. The economy will be controlled by the federal 
government by controlling our workforce and our schools. I'm enclosing an 18-page letter to 
Hillary Clinton from Marc Tucker which includes the framework for Goals 2000.... 

Two other bills, still pending, are designed to advance the School-to- Work phase of Goals 
2000. The Careers Act (HR 1617) and the Workforce Development Act (S 143) will support a 
nationwide work force development system, state by state. Funding is provided for "one stop 
career" employment agencies under the supervision of the federal government. Please, let's 
not let these bills become law. 

At an education summit in 1989, then-Governor Bill Clinton chaired a Governors' meet- 
ing to establish national performance goals to make America internationally competitive. The 
governors adopted six of the National Education Goals which are now included in the 8 goals 
in Goals 2000. The other two came from goals adopted at a World Conference sponsored by 
the United Nations and the World Bank in March, 1990.... 

Behavior modification is a significant part of restructuring our schools. School children 
will be trained to be "politically correct," to be unbiased, to understand diversity, to accept 
alternative family lifestyles, to contribute to the community through mandatory community 
service, to respect and protect the environment, to become a collaborative contributor and a 
quality producer. In Marc Tucker's letter to Mrs. Clinton, laying out the plan for Goals 2000 
he states, "Radical changes in attitudes, values and beliefs are required to move any combi- 
nation of these agendas." 

Dumbing-down education is a prime component in creating a willing workforce. Higher 
education is not conducive to accepting skilled labor training for a career that fits into the 
federal government's planned labor force. Goals 2000 abandons the American competitive 
tracking system. It is replaced by new national achievement standards which assess students' 
behavior and attitude.... 

A computer tracking system will track teachers' training and performance, school 
performance, and students from pre-kindergarten through technical training and into the 
workforce. All information will be made available to interested government officials and 
prospective employers. 

Pre-school, health clinics, daily meals, and parental assistance (they have the gall to 
instruct parents on how to rear their children, including how students' free time should be 



Appendix XV 



A-75 



spent) are in this all-inclusive "cradle to grave" plan to control our children's minds and 
careers.... 

This concept has been around since at least the 1960s and perhaps as far back as the 
1930s. It has been tried in many schools over the past 20-30 years, to the detriment of our 
children. In the '70s, it was called "Mastery Learning" under the supervision of Professor 
Benjamin Bloom and now is known as "OBE." State school superintendents have learned to 
call OBE by other names because of its bad reputation which precedes it but the concepts 
are all the same. 

I ask you to please investigate Goals 2000 yourself. I think you will come to the same con- 
clusion. Goals 2000 must be rejected, and the sooner the better — for our children's sake. 

What has been the response to Rep. Hyde's very strong letter? So far, the only response 
we know of is a 4-page letter dated March 28 from William Goodling, Republican from Penn- 
sylvania, Chairman of the Committee on Economic and Educational Opportunities, and Howard 
P. "Buck" McKeon, Chairman of the Subcommittee on Postsecondary Education, Training and 
Life-long Learning. Goodling, serving his 10th term in Congress, was a school superintendent 
before becoming a Congressman. McKeon, a Republican from California, is a first-term fresh- 
man who seems neither to understand the significance of the bill he is promoting nor the 
subcommittee he heads. Attached to their letter was a six-page compendium of explanations 
"developed to respond to similar concerns and misunderstandings that have been expressed 
over the CAREERS bill in recent months." Goodling and McKeon write: 

We recently received a "dear colleague" from you entitled "Clinton's National Work- 
force and Education Plan," in which you express concerns over H.R. 1617, the House-passed 
CAREERS Act.... 

In your letter you describe the CAREERS legislation, and the Senate's Workforce Develop- 
ment Act as "designed to advance the School to Work phase of Goals 2000," tying the roots 
of this legislation to the work of the Clinton Administration, Ira Magaziner, and Marc Tucker. 
In fact, CAREERS is the product of efforts by Republicans going back to the Reagan and Bush 
Administrations, and incorporates suggestions by a bipartisan coalition of reform-minded 
colleagues, including many leading Republican Governors. 

At last, two honest Republicans admitting that it is the Republicans who are creating the 
educational foundations for a totalitarian system in America! Who are these fascist Republicans? 
Chester Finn, Dennis Doyle, Bill Bennett, Terrel Bell? It was Bell who in 1984 awarded Bill Spady 
the grant to continue work on implementing Outcome-Based Education in all of the schools in 
America. Concerning Chester Finn, Bell writes in his memoir, The Thirteenth Man: 

David Stockman, director of the Office of Management and Budget, suggested that the 
very competent Chester Finn be appointed deputy undersecretary for planning and budget 
in ED. Finn had served in the Nixon White House. I had known him from my Nixon-Ford 
years, and I knew that I could work with him. Given Stockman's support, I was hopeful 
that he would be the first one to break the logjam. But despite this endorsement, Finn was 
promptly rejected by White House Personnel because he was currently serving on the staff 
of Democratic Senator Pat Moynihan. [Stockman and Finn had both been close to Moynihan 
during their Harvard days.] 



A-76 



Now we know why Chester Finn can't be trusted! In his book, Bell bemoans the fact 
that President Reagan did not want the federal government to assume a role of leadership in 
education. In fact, Reagan wanted to abolish the Education Department but was unable to get 
the support needed in Congress. Nevertheless, in the bowels of the educational bureaucracy 
plans were well under way by the National Center for Education Statistics to create its mas- 
sive computerized data-collection system. It seems as if the government works on two tiers: 
there is the visible tier of politicians in the White House and Congress which the public is very 
much aware of; and there is the invisible tier made up of bureaucrats, laboratories, and various 
foundation-supported commissions that quietly advance the liberal-socialist agenda no matter 
who occupies the White House or controls Congress. Funding for the invisible tier is always 
forthcoming in the Budget, even though the politicians may not have the foggiest idea what 
the money is being spent on. 

Iserbyt Blows the Whistle 

It was Charlotte Iserbyt, former senior staff member at the Education Department, who 
saw what was going on among the socialist-fascist planners in the invisible tier and decided 
to let the public know. Her little book, Back to Basics Reform Or . . .Skinnerian International 
Curriculum?, published in 1985, revealed what the invisible tier was doing to prepare America 
for a socialist one-world government scheduled for the early years of the twenty-first century. 
She wrote: 

This book deals with the social engineers' continuing efforts, paid for with international, 
federal, state, and tax-exempt foundation funding, to manipulate and control Americans from 
birth to death using the educational system as the primary vehicle for bringing about planned 
social, political, and economic change. (The major change in our economic system will be the 
determination by industry and government of who will be selected to perform the necessary 
tasks in our society — quotas for engineers, doctors, service workers, etc. to bring about the 
socialist concept of full employment.) 

That's a virtual description of Marc Tucker's Human Resources Development system. 
Charlotte was fired for her patriotism. But the cat was out of the bag, and now a small group 
of conservative activists was able to track the doings of the invisibles. In her book Charlotte 
was able to document Terrel Bell's complicity with Bill Spady in the development of Outcome- 
Based Education. She also sounded the alarm on Skinnerian mastery learning, the technique 
to be used in the schools to change the values, beliefs and behavior of American children. 

But to many of us, it was Marc Tucker's letter to Hillary Clinton that proved to be the great 
eye opener. What was so shocking was the clear totalitarian nature of what was being planned 
by these American social engineers. And for Republicans in Congress to even contemplate using 
any component of this plan as a means of reforming American education is to reveal the utter 
bankruptcy of the Republican party when it comes to education. For Goodling to promote any 
components of this plan is to betray fundamental Republican principles in defense of freedom. 
But perhaps the Republicans no longer adhere to these principles and have indeed become the 
new American fascists. In his letter to Rep. Hyde, Goodling writes: 

In exchange for billions of dollars in federal funding for job training and employment 
assistance, the CAREERS bill does ask States and local communities to establish what we 
call integrated career center systems, where there are easily accessible, single points of entry 



Appendix XV 



A-77 



into local employment and training programs, for people in need of employment assistance 
or job training, and for employers in need of workers. The actual design for such systems 
is left entirely to the State and local community. Co-located Career centers (some call them 
one-stops) are encouraged, not required. And they are locally-designed, appointed and man- 
aged — not federally run or controlled. 

Apparently, Goodling is unaware that federal control is not needed to put the Tucker plan in 
place in every state. The only thing that is needed is federal money. Tucker's change agents 
will design the local systems so that they conform with the overall national — not federal — plan. 
The social engineers desperately need the federal money to implement this totalitarian plan, 
and Goodling is willing to give it to them. 

As for the Senate bill, S. 143, it is much more in line with just about everything Marc Tucker 
wants. And the prime promoter of that bill is Sen. Nancy Kassebaum of Kansas who should be 
designated as Republican traitor number one. It is hard to believe that a so-called Republican 
can be so blind to the totalitarian nature of the Workforce Development Act of 1995. A Report 
from the Committee on Labor and Human Resources, summarizes S. 143 as follows: 

TITLE I 

State Systems — Statewide work force development systems are established through a 
single allotment of funds to each State. A minimum of 25 percent of the funds are for work 
force employment activities, such as creating one-stop career centers or providing job training. 
Work force employment activities are to be planned and administered under the authority of 
the Governor. A minimum of 25 percent of the funds are for work force education activities, 
including vocational and adult education. Work force education activities are to be planned 
and administered under the authority of the State Educational Agency. 

The remaining 50 percent of the funds are to be used for any work force employment 
or education activities as a State decides.... The decision to allocate funds from this "flex 
account" is made through a collaborative process involving, among others, the Governor, the 
State educational agency, and the private sector.... 

State goals and benchmarks are established in the plan, as well as how the State will 
use its funds to meet those goals and benchmarks. 

In addition, the plan includes how the State will establish systems for one-stop career 
centers, labor market information, and accountability for job placement, as described in the 
bill.... 

The Governor must enter into agreements with local communities for the delivery of 
work force employment, school-to-work, or economic development activities, where appro- 
priate.... 

TITLE II 

Job Corps remains as a residential program for at-risk youth, but is integrated with the 
statewide work force development system. Primary responsibility for the operation of Job 
Corps centers is transferred to the States, and each center must be linked into the one-stop 
career center system and other local training and education efforts. 

TITLE III 

A Federal partnership is established to administer all Federal responsibilities, including 
approval, of the State plans, negotiation of benchmarks with each State, and dissemination 



A-78 



of best practices. 

A governing board, composed of 13 members, will manage the partnership. The board 
is composed of a majority of representatives from business and industry, and representatives 
of labor, education and Governors.... 

Final authority for the approval of State plans and disbursement of funds, however, 
remains with the Secretary of Education and the Secretary of Labor. 

Other national activities include national assessments of vocational education, a national 
labor market information system, and establishment of a national center for research in edu- 
cation and work force development.... 

The Workforce Development Act of 1995 promotes the development of a new and coher- 
ent system in which all segments of the work force can obtain the skills necessary to earn 
wages sufficient to maintain a high quality of living and in which a skilled work force can 
meet the labor market needs of the businesses of each State. 

Note how this plan ignores state legislatures or local school boards. The governor runs 
everything. This is, for all intents and purposes, a coup d'etat that overthrows the representative 
form of government and local school boards that are supposed to govern education. 

Research Galore 

Also, the call for the establishment of a national center for research in education and work 
force development is based on the already existing National Center for Research in Vocational 
Education at the University of California at Berkeley. A new center will be established by the 
Governing Board. Its areas of focus are to include: 

(1) combining academic and vocational education; (2) connecting classroom instruction with 
work-based learning; (3) creating a continuum of educational programs which provide mul- 
tiple exit points for employment; (4) establishing high-quality support services for students; 
(5) developing new models for remediation of basic academic skills; (6) identifying ways to 
establish links among educational and job training programs at State and local levels; (7) 
creating new models for career guidance, counseling, and information; (8) evaluating eco- 
nomic and labor market changes that will affect work force needs; (9) preparing teachers 
and professionals; (10) obtaining information on practices in other countries that may be 
adapted for use in the United States; (11) providing assistance to States and local entities in 
developing and using systems of performance measures and standards; and (12) maintaining 
a clearinghouse to provide information about the conditions of systems and programs funded 
under this act. 

Obviously, this national center will provide a lot of good jobs at good wages for a lot of 
liberal university graduates. They will need directors, assistant directors, researchers, statisti- 
cians, consultants, secretaries, and staffers producing an endless number of reports to be dis- 
tributed to every member of Congress, every Governor, every school administrator. Think of 
all the trees that will have to be cut down to make paper for all of the reports, and think of all 
the computers, modems, word processors, copy machines, phones and faxes that will have to 
be bought. Who knows, the national center may balloon to the size of the Pentagon if it is to 
service the nation's entire workforce development system. 

For Republicans who believe in less government, the word less now apparently means 



Appendix XV 



A-79 



morel 

Governing Board 

And according to this Kassebaum-Tucker plan all power over American education will 
reside in the Governing Board. The committee report says: 

The Work Force Development Partnership will be headed by a Governing Board composed 
of 13 members, including 7 representatives of business and industry, 2 representatives of labor 
and workers, 1 representative of adult education providers, 1 representative of vocational edu- 
cation providers, and 2 Governors, appointed by the President with the advice and consent of 
the Senate. The Governing Board shall be appointed not later than September 30, 1996. 

The duties of the Governing Board include: (1) Overseeing the development of a national 
labor market information system and job placement accountability system. (2) Establishing 
model benchmarks, taking into account existing work force development benchmark efforts 
at the State level. (3) Negotiating benchmarks with the States. (4) Reviewing and approving 
State plans. (5) Reviewing reports on the States' progress toward their benchmarks. (6) Pre- 
paring and submitting an annual report to Congress on the absolute and relative performance 
of States' progress toward their benchmarks. (7) Awarding incentive grants. (8) Issuing sanc- 
tions. (9) Disseminating information on best practices. (10) Performing the duties relating to 
the Job Corps. (11) Reviewing other federally funded work force development programs. (12) 
Reviewing and approving the transition work plan submitted to the Secretaries of Labor and 
Education. (13) Overseeing all activities of the Federal partnership. 

Benchmarks Equal Outcomes 

What are "benchmarks," about which the Governing Board will be so concerned? Bench- 
mark is the new word for outcome. Since the lawmakers are concerned that the American people 
might find out that the Tucker plan is simply another version of Outcome-Based Education, 
they've decided to eliminate any terminology which might produce widespread parental and 
conservative opposition. Here's how the lawmakers define benchmarks: 

This act will require States to measure and report annually on benchmarks — measur- 
able indicators of the progress the State has set out to achieve in meeting broad work force 
development goals related to employment, education, and earning gains. 

Benchmarks related to employment and earning gains include, at a minimum, place- 
ment and retention in unsubsidized employment for one year, and increased earnings for 
participants. Benchmarks related to education include, at a minimum, student mastery of 
certain skills, including: academic knowledge and work readiness skills; occupational and 
industry-recognized skills according to skill proficiencies for students in career preparation 
programs; placement in, retention in, and completion of secondary education; placement 
and retention in military service; and increased literacy skills. It is expected that States will 
develop additional benchmarks. 

If any further proof were needed to indict Nancy Kassebaum as the Republican Party's 
leading socialist-fascist, one need not seek further than the May 20, 1996 issue of Forbes maga- 
zine in which Steve Forbes writes: 

Advocates of nationalized health care are on the verge of a stunning achievement with 
the passage of the Senate's Kennedy-Kassebaum bill. This legislation is portrayed as a benign 



A-80 



way of making it easier for people to keep health insurance when they change jobs or to buy 
insurance if they are in less-than-perfect health. Actually, if this becomes law, it will put us 
on a fast track to Hillary care. Yet few foes of her socialized monstrosity are fighting what one 
opponent has rightly called a "Trojan pony." 

The First Lady must be beaming. The enforcement language is lifted almost directly 
from Clinton care. Ferocious penalties litter the House version of this legislation. For instance, 
doctors face heavy fines if they are deemed to have delivered "unnecessary" health care ser- 
vices. And who determines what is unnecessary? You guessed it — federal bureaucrats, not 
physicians.... 

The Senate bill is written in a way that guarantees the eventual imposition of federal 
price controls. Right now, there are no caps on premiums — which will rise big-time because 
of the bill's mandates on who is eligible for insurance. Washington State, for example, has 
Kennedy-Kassebaum-like guarantees. Premiums for individual policy holders have skyrocketed. 
As prices go up, young, healthy people won't bother to buy insurance. The whole process will 
then create irresistible pressure for federal controls "to make insurance affordable. " There are 
other flaws here. The bill blithely guarantees that mental health coverage will equal coverage 
for physical ailments; this is an open invitation for massive abuse. Rules, mandates and caps 
will proliferate. 

The Senate version doesn't even contain a provision for Medical Savings Accounts, the 
only hope for restoring true freedom and consumerism to the health care field. 
Is this what voters elected a Republican Congress for? 

Thanks to Nancy Kassebaum and her fellow socialist-fascists in the Senate, this Republi- 
can Congress will do more to inch us toward totalitarianism than any previous Congress. Does 
Senator Dole approve of what his fellow Kansan is doing? 

Meanwhile, what should we do? We should do all we can to get the federal government 
out of the education and health care businesses. If Republicans really believe in downsizing 
government, the last thing they should be doing is voting for more government intrusion in 
education and health care. 

Call, write, or fax your Representatives and Senators. Purchase a copy of the U.S. Congress 
Handbook, P.O. Box 566, McLean, VA 22101, 703-356-3572. This handbook contains all of the 
information you will need for access to your Washington lawmakers. They need to hear from 
you. 



Appendix XVI 



"Totalitarian Data-Gathering System 
Prepared by U.S. Department of Education" 

"Totalitarian Data-Gathering System Prepared by U.S. Department of Education" by Samuel 
Blumenfeld from The Blumenfeld Education Newsletter, October 1995 (Vol. 10, No. 10, Letter 
#109). 



If ever proof were needed to confirm that the New World Order would be totalitarian in 
its control of individual citizens, the U.S. Department of Education's recent release of its hand- 
books on data-gathering on students and faculty should be enough to satisfy any freedom-loving 
citizen. The two publications are the Student Data Handbook for Early Childhood, Elementary, 
and Secondary Education (NCES 94-303) released in June 1994, comprised of 226 pages plus 
about 100 pages of appendices, and the Staff Data Handbook: Elementary, Secondary and Early 
Childhood Education (NCES 95-327) released in January 1995, comprised of 219 pages and 
about 70 pages of appendices. Both Handbooks were produced under the auspices of the U.S. 
Department of Education, the Office of Educational Research and Improvement (OERI), and 
the National Center for Education Statistics (NCES) . Both can be obtained by telephone from 
the U.S. Dept. of Education. The Foreword for the Student Data Handbook states: 

NCES is pleased to release the 1994 Student Data Handbook: Elementary, Secondary 
and Early Childhood Education. It is a major effort to establish current and consistent terms, 
definitions and classification codes to maintain, correct, report and exchange information 
about students. 

When this effort began, the only existing national standards for student data had been 
published by NCES in 1974. Because student data have evolved greatly over time both in the 
type and format of data maintained, it was essential that new standards be developed that 
would reflect current practices. 

This national effort was coordinated by the Council of Chief State School Officers under 
contract to the National Center for Educational Statistics. Those individuals and organizations 
involved in the process truly reflect all interested stakeholders in elementary, secondary and 



A-81 



A-82 



early childhood education. 

NCES has a strong commitment to provide technical assistance and support to the edu- 
cation community to facilitate the collection, reporting, and use of high quality education 
information. This handbook is one outcome of that commitment. It is but one in a series of 
related handbooks and manuals that NCES has published in the past and plans to continue 
to develop in the future. 

The Foreword is signed by Paul D. Planchon, Associate Commissioner, Elementary/ 
Secondary Education Statistics Division and Lee M. Hoffman, Chief, General Surveys and 
Analysis Branch of the National Center for Education Statistics. 

In the Acknowledgments we read: 

This document is the result of the work of many individuals from around the country 
who generously contributed their knowledge, time, and commitment.... 

The handbook owes its existence to the members of the National Task Force on Education 
Data Elements. The task force's Student Data Subgroup helped conceptualize and oversee its 
development, reviewed several copies of the drafts, and provided constant and timely assis- 
tance to the project. A list of the task force members is included in Appendix A. 

The task force includes 28 members, of which 6 were from state departments of education 
(Mississippi, Ohio, Florida, Minnesota, Texas, New York) and 6 from city and county school 
districts. The rest were bureaucrats from various offices of the U.S. Dept. of Education, the 
American Association of Collegiate Registrars and Admissions Officers, Johns Hopkins University, 
Bureau of the Census, University of California, (Santa Barbara), Council of Great City Schools, 
and the National Science Foundation. 

Bureaucrats at Work 

We read further in the Acknowledgments: 

Under contract from the National Center for Education Statistics (NCES) , staff from the 
Council of Chief State School Officers (CCSSO) prepared the manuscript of this handbook. 
Barbara S. Clements, Project Director, provided the leadership for this effort and is the primary 
author of the document.... 

Emerson Elliott, Commissioner of Education Statistics, who has encouraged inter- 
and intra-agency collaboration and teamwork to improve the quality of education data, set 
the stage for this effort. Paul Planchon, Associate Commissioner of Education Statistics, 
Elementary/Secondary Education Statistics Division, provided strong support and guidance 
for the handbook as a project under his authority. Lee Hoffman, Chief, General Survey and 
Analysis Branch, not only provided technical advice as a task force member, but also reviewed 
all drafts of the document.... 

In other words, a small army of bureaucrats have been working on this project for years. 
The purpose of the student handbook is described in Chapter 1: 

1) to provide a common language that can be used to describe information about students, 2) 
to promote standard maintenance of student data, 3) to encourage the automation of student 
data maintenance, 4) to promote the development of policies to safeguard the confidentiality 



Appendix XVI 



A-83 



and ensure appropriate use of student data, and 5) to describe how data can be maintained 
in a way that promotes appropriate and flexible usage by all relevant parties. 

Chapter 1 also provides this revealing Overview: 

Accurate and comprehensive information is needed in order to make appropriate cost- 
effective and timely decisions about students within both public and private schools. Teachers, 
school administrators, school district administrators, school board members, and state and 
federal education agency personnel must use information about students to plan and carry 
out programs of learning that meet the needs of children with different abilities and require- 
ments, from divergent backgrounds, and of different ages. School health officials and other 
service providers also use information about individual students to ensure appropriate services 
are provided to them. These information needs are being met in an increasing number of 
instances by automated management information systems that allow data to be analyzed in 
a variety of ways to address the questions and needs of the decision-makers. A management 
information system is effective, however, only to the extent that data are consistently entered 
into the system according to established definitions, data are updated and maintained on 
a regular basis, and information relevant for ongoing decision-making can be added to the 
system. This handbook addresses the importance of consistency in how data are defined and 
maintained within the education system. 

Designing Data Collection 

...Researchers from the [U.S.] Department of Education, federally funded laboratories 
and research centers, universities, and other public and private organizations provide insights 
into the needs and performance of the nation's schools through surveys such as the National 
Education Longitudinal Survey and assessment activities such as the National Assessment of 
Educational Progress. This handbook can be valuable for researchers concerned with accu- 
racy and consistency in designing data collection activities and reporting results of studies 
on groups of students. 

The handbook is intended to serve public and private education agencies, schools, and 
other centers and institutions serving students from preschool through high school gradua- 
tion, as well as researchers and the general public... 

No governmental agency requires the use of the terms, definitions, and procedures of 
this handbook; however, care was taken to make sure that the definitions in this handbook 
were consistent with many governmental reporting requirements existing at the time of the 
handbook's completion.... 

A Tool for Decision Making 

The handbook identifies concepts and data elements which are used to describe and 
make decisions about students. Some decisions are very specific, pertaining to personal 
needs, vocational choices, and educational programs of individual students. Other decisions 
are broader in scope, concerning the planning and management of education for large groups 
of students.... 

Some types of student data are maintained because of federal, state or local reporting 
requirements. If federal, state or local reporting requirements are made consistent, then a 
single collection of information about students can serve multiple purposes. 

If student data are maintained in a cumulative (longitudinal) record using consistent 



A-84 



terms and definitions, the permanent record contains all relevant information and is easier 
to interpret.... 

Automated Database 

The advantages of maintaining student records in an automated database, however, are 
numerous. Automated databases promote the maintenance of consistently defined information, 
since the computer software specifies how data are coded and otherwise entered.... 

Student data must be kept confidential. ...Whether or not student data are maintained 
in a computer, all school or school district staff needing data about an individual student or 
groups of students must have access to pertinent information. . . .Teachers can analyze student 
performance using a variety of types of information and decide what concepts need to be 
retaught or reinforced. 

Obviously, the purpose of the project is to produce standardization among data-gatherers 
so that all of the student information can be computerized and stored in a central database. 
As the Handbook states: 

Technical advances in computer data entry, storage, and retrieval are developing quickly, 
making these aspects of student records management less expensive, more efficient, less 
demanding of physical space, and more accessible to multiple users. 

Incidentally, if you are curious about the legislation that authorized funding for all of this, 
the Handbook refers to the Standards for Education Data Collection and Reporting (SEDCAR) 
developed pursuant to the Hawkins-Stafford Amendments of 1988 which authorized "an effort 
to improve the comparability, quality and usefulness of education data." 

SPEEDE/ExPRESS System 

The Handbook also reveals that its standards are compatible with those of the SPEEDE/ 
ExPRESS format. (SPEEDE stands for Standardization of Postsecondary Education Electronic 
Data Exchanges, and ExPRESS stands for Exchange of Permanent Records Electronically for 
Students and Schools.) SPEEDE/ExPRESS "provides a standard format for a student record or 
transcript to be sent from one school or school district to another or from a school or school 
district to a postsecondary institution. " 

Confidentiality 

Although lip service to confidentiality is required in the Family Educational Rights and 
Privacy Act of 1974 (FERPA), the law allows information in student records to be disclosed 
"without student or parental permission" to: 

1) School employees who have a need to know. 2) Other schools to which a student is 
transferring. 3) Certain government officials in order to carry out lawful functions. 4) Appropri- 
ate parties in connection with financial aid to a student. 5) Organizations doing certain studies 
for the school. 6) Accrediting organizations. 7) Individuals who have obtained court orders or 
subpoenas. 8) Persons who need to know in cases of health and safety emergencies. 9) State 
and local authorities to whom disclosure is required by state laws adopted before November 
19, 1974. 

FERPA also "guarantees the student and/or his or her parents the right to inspect and 
review all of the student's education records maintained by the school or school district, and 



Appendix XVI 



A-85 



the right to request that a school correct records believed to be inaccurate or misleading. " 
The Number Code 

What kind of data will the system collect? The most detailed personal information about 
the individual in all aspects of his life. The system uses a number code for each specific piece 
of information. For example, codes 001 to 012 deal with the student's name. Codes 013 to 036 
deal with the student's background, which includes Identification Number (013), Identification 
System (014) with fourteen subcategories: 01 Driver's license number, 02 Health record number, 
03 Medicaid number, 04 Migrant student records transfer system (MSRTS) number, 05 Profes- 
sional certificate or license number, 06 School-assigned number, 07 Selective Service number, 
08 Social security administration number, 09 College Board/ ACT code set of PK- grade 12 insti- 
tutions, 10 Local education agency (LEA) number, 11 State education agency (SEA) number, 
12 U.S. Department of Education, National Center for Education Statistics (NCES) number, 13 
Other organization number (e.g., Roman Catholic Diocese or association number), 99 Other. 
In other words, Americans will be identified and numbered as never before. 

Data on Student's Religion 

Under Religious Background (030) we find the following subcategories: 01 Amish, 02 
Assembly of God, 03 Baptist, 04 Buddhist, 05 Calvinist, 06 Catholic, 07 Eastern Orthodox, 08 
Episcopal, 09 Friends, 10 Greek Orthodox, 11 Hindu, 12 Islamic, 13 Jehovah's Witnesses, 14 
Jewish, 15 Latter Day Saints, 16 Lutheran, 17 Mennonite, 18 Methodist, 19 Pentecostal, 20 
Presbyterian, 21 Other Christian denomination, 22 Seventh Day Adventist, 23 Tao, 98 None, 
99 Other. 

In other words, the traditional designations of Protestant, Catholic, or Jewish are no longer 
sufficient for the data-gatherers who want to know much more about an individual's religious 
values. Note the absence of Unitarian-Universalist. I think they're more numerous in America 
than practitioners of Tao. 

Homeschools and Private Schools 

Will homeschoolers be included in this data-gathering system? Under Address/Contact 
Information we find that code 056 "Non-Resident Attendance Rationale — The reason that the 
student attends a school outside of his or her usual attendance area," contains 10 subcategories, 
including 07 "Home schooling — The student is receiving educational instruction offered in a 
home environment, as regulated by state law, for reasons other than health." So, homeschool- 
ers are not only included, but have their own code number: 056-07. 

Private schools are also included under "School Information." Code 076 "School Admin- 
istration" includes subcategory 05 "Private, non-religiously-affiliated school," and 06 "Private, 
religiously-affiliated school." Under "School Type" (077) we find subcategories 02 "Alternative," 
and 04 "Montessori." Under "Discontinuing Schooling Reason" (112) we find subcategory 19 
"Religion — The student left school because of religious convictions." 

Under "Non-Entrance Information" we find category 116 "Reason for Non-Entrance in 
Local or Secondary School," under which we find subcategory 03 "Home schooling — The 
individual is receiving educational services offered in a home environment for reasons other 
than health." Also under 116 we find subcategory 05 "Religious reason — The individual or his 
or her parent/guardian has religious convictions that prohibit participation in the educational 
program of the school or education agency, and the individual is not receiving approved instruc- 



A-86 



tion elsewhere." Thus, the government controllers cover all bases. 

Assessment Information 

Data on students will also include extensive assessment information. Under "Assessment 
Type" (189) we find the following subcategories: 01 Achievement Test, 02 Advanced Placement 
Test, 03 Aptitude Test, 04 Attitudinal Test— "An assessment to measure the mental and emotional 
set or patterns of likes and dislikes or opinions held by a student or a group of students. This is 
often used in relation to considerations such as controversial issues or personal adjustments." 
05 Cognitive and perceptual skills test— "An assessment to measure components of a student's 
mental ability such as visual memory, figure-ground differentiation, auditory memory, reasoning 
ability, and sequential processing. " 06 Developmental Observation, 07 Interest Inventory — "An 
assessment used to measure the extent to which a student's pattern of likes and dislikes corre- 
sponds to those of individuals who are known to be successfully engaged in a given vocation, 
subject area, program of studies, or other activity." 08 Language Proficiency Test, 09 Manual 
Dexterity Test, 10 Mental Ability (Intelligence) Test, 11 Performance Assessment — "An assess- 
ment to measure a student's knowledge or skill by requiring him or her to produce an answer or 
product that is not necessarily in a standardized format. Examples of performance assessment 
include writing short answers, solving complex mathematical problems, writing an extended 
essay, conducting an experiment, presenting an oral argument, or assembling a portfolio of 
representative work." 12 Personality Test — "An assessment to measure a student's affective 
or nonintellectual aspects of behavior such as emotional adjustment, interpersonal relations, 
motivation, interests, and attitudes." 13 Portfolio Assessment, 14 Psychological Test— "An assess- 
ment to measure a sample of behavior in an objective and standardized way." 15 Psychomotor 
Test, 16 Reading Readiness Test. Note that the assessment tests are in complete harmony with 
Outcome-Based Education. 

All About Your Teeth 

It's hard to imagine a less-intrusive data-gathering system than this one, and it is difficult 
to exaggerate the thoroughness of the system. For example, under Health Conditions we find the 
category of Oral Health with the following code designations: 230 Number of Teeth, 231 Number 
of Permanent Teeth Lost, 232 Number of Teeth Decayed, 233 Number of Teeth Restored, 234 
Occlusion Condition, with subcategories 01 Normal occlusion, 02 Mild malocclusion, 03 Moder- 
ate malocclusion, 04 Severe malocclusion. 235 Gingival (Gum) Condition, with subcategories 
01 Normal, 02 Mild deviation, 03 Moderate deviation, 04 Severe deviation. 236 Oral Soft Tissue 
Condition, with subcategories 01 Normal, 02 Mild deviation, 03 Moderate deviation, 04 Severe 
deviation. 237 Dental Prosthetics, and Orthodontic Appliances. 

Why all of this interest in teeth? Will the schools be offering dental services at state expense? 
Or is the information for the purposes of identification in case your face is smashed to a pulp 
by a guard in one of their concentration camps for the politically incorrect? But by then every 
individual will probably be microchipped, bar coded, tattooed or tagged. Are we being paranoid? 
Were Jews in Germany in 1933 paranoid? Were anticommunist Russians in 1917 paranoid? 

Medical Data 

Medical information will also include Maternal and Pre-Natal Condition, Conditions at 
Birth, Health History, described as: "A record of an individual's afflictions, conditions, injuries, 



Appendix XVI 



A-87 



accidents, treatments, and procedures"; Medical Evaluations, Disabling Conditions, Medical 
Laboratory Tests, Immunizations, Limitations on School Activities, Health Care Provider, and 
Other Health Information — "Information about an individual's medical or health requirements 
that are not otherwise addressed above." 

Under category 322 Student Support Service Type, we read, "Type of related or ancillary 
services provided to an individual or a group of individuals within the formal educational 
system or offered by an outside agency which provides non-instructional services to support the 
general welfare of students. This includes physical and emotional health, the ability to select 
an appropriate course of study, admission to appropriate educational programs, and the ability 
to adjust to and remain in school through the completion of programs. In serving a student 
with an identified disability, related services include developmental, corrective, or supportive 
services required to ensure that the individual benefits from special education." There are 39 
subcategories under category 322. 

Individual Health Plan 

Code number 331 refers to Service Provider Type — "The qualified individual or licensed 
organization (if licensing is necessary) responsible for serving the student. " Subcategory 02 
refers to Health nurse — "Certified, licensed, registered nurse or nurse practitioner who provides 
any of the following services: 1) case finding activities to include health appraisal, screening for 
developmental maturational/milestones, vision and hearing acuity, speech, dental deviations, 
growth, and nutritional disorders; 2) nursing care procedures that include immunization, medi- 
cation-monitoring and administration, nursing assessment, and procedures related to the health 
impaired student's Individual Health Plan (IHP); 3) care coordination and outreach to children 
who do not otherwise receive preventive health care, follow-ups to assure referral completion, 
home visits for follow-up planning or home environment assessment, and interim prenatal or 
family planning and monitoring; 4) patient/student counseling or instruction to include nursing 
assessment, counseling, and anticipatory guidance to maintain wellness or provide assistance 
for identified health problems or concerns. 

Socialized Medicine Via Education 

Obviously, the health provision aspects of public education are to be expanded exponen- 
tially. If the liberals can't get socialized medicine through the health care system, they'll get it 
through the education system. 

Subcategory 03 Social worker reads: "Certified, licensed, or otherwise qualified profes- 
sional who provides the following services: 1) preparing a social or developmental history on 
a student with disabilities; 2) group and individual counseling with a student and his or her 
family; 3) working with those problems in a student's living situation (home, school, and com- 
munity) that affect adjustment in school; 4) mobilizing school and community resources in 
order to enable the student to receive maximum benefit from his or her educational program; 
and 5) other related services as necessary." 

Serviced to Death 

What kind of individual will emerge from an "education" system as all-encompassing 
and suffocating as this one? American children will be serviced to death by their government 
which will surround them with teachers and specialists tormenting them in subtle, abusive 
ways with endless tests, emotional probing and strip searching, and required politically correct 



A-88 



performances to indicate, in Bill Spady's words, "visionary higher-order exit outcomes." This is 
a system designed to turn every healthy youngster that enters it into an academically crippled, 
emotionally damaged adult. 

Subcategory 04 Psychologist reads: "Certified, licensed, or otherwise qualified professional 
who provides the following services: 1) administering psychological and educational tests, 
and other assessment procedures; 2) interpreting assessment results; 3) obtaining, integrating, 
and interpreting information about student behavior and conditions relating to learning; 4) 
consulting with other staff members in planning school programs to meet the special needs of 
students as indicated by psychological tests, interviews, and behavioral evaluations; 5) plan- 
ning and managing a program of psychological services, including psychological counseling 
for students and parents." 

Subcategory 05 Counselor reads: "A staff member responsible for guiding individuals, 
families, groups and communities by assisting them in problem-solving, decision-making, dis- 
covering meaning, and articulating goals related to personal, educational, and career develop- 
ment. " How many guidance counselors that you know can help anyone, let alone a student, 
"discover meaning"? What a joke all of this is. 

Do We Need This? 

We are told that the government needs all of this incredibly detailed information so that 
effective decisions can be made for the student by bureaucrats, teachers, administrators, and 
others on the government's payroll. But what it all adds up to is a tool of behavioral control 
and management of the American population by the controlling elite. The government of a free 
people does not go about creating the most detailed and thorough personal dossier on each 
citizen from date of birth to be stored in government computers on the pretext that it is needed 
to provide that citizen with an education. 

When I attended public school as a child in New York City in the early 1930s, all they 
needed was my name, address, date of birth, and parents' names. That was it. And it was all 
written by hand on a card. Your entire school record was on a single card with your final grades 
for each subject for each year. That's the way it ought to be today. 

As for the Staff Handbook, it calls for the same kind of thorough biographical data as 
outlined in the Student Handbook such as race, religion, ethnicity, plus extensive data on edu- 
cational background, professional development, credentialing, employment, job and course 
assignments, and evaluations. If you add to this the data in the teacher's file when he or she 
was a student, you have an incredibly detailed profile of that individual. In Chapter 1 of the 
Staff Handbook, we read: 

Education agencies and institutions maintain information about staff to facilitate the effi- 
cient and effective functioning of the education enterprise.... If all data about a staff member 
are maintained in an automated data system, many uses and types of analyses are possible. 
For instance, an administrator may need to know about the availability of human resources 
to initiate a new program. Information about the background, educational and professional 
qualifications of current staff members could be used to identify possible candidates to work 
on the program. 

Note the reference to the staff member as a "human resource." That's the thinking of a 
systems bureaucrat to whom a human being is now a "resource" to be controlled and used 
like any other natural resource. 



Appendix XVI 



A-89 



What Can Be Done? 

It is absolutely essential, if we are to remain a free people, that this entire data- collection 
system be stopped and dismantled. It has no place in a free society. The legislation that autho- 
rized it must be repealed or rescinded or defunded. This entire system is based on the need of 
behavioral scientists for a detailed, longitudinal accumulation of data to verify the [efficacy] of 
their programs to change human behavior. Benjamin Bloom, the godfather of Outcome-Based 
Education, wrote in his 1964 book Stability and Change in Human Characteristics: 

We can learn very little about human growth, development, or even about specific human 
characteristics unless we make full use of the time dimension. Efforts to control or change 
human behavior by therapy, by education, or by other means will be inadequate and poorly 
understood until we can follow behavior over a longer period, (p. 5) 

That the behaviorist's purpose of education is to change human behavior was spelled out 
in Bloom's Taxonomy of Educational Goals dealing with the affective domain. He was greatly 
concerned with the need to get control of children as early as possible. He wrote: 

The evidence points out convincingly to the fact that age is a factor operating against 
attempts to effect a complete or thorough-going reorganization of attitudes and values, (p. 
85) 

The evidence collected thus far suggests that a single hour of classroom activity under 
certain conditions may bring about a major reorganization in cognitive as well as affective 
behaviors. We are of the opinion that this will prove to be a most fruitful area of research in 
connection with the affective domain, (p. 88) 

And in Stability and Change in Human Characteristics, Bloom wrote: 

We believe that the early environment is of crucial importance for three reasons. The 
first is based on the very rapid growth of selected characteristics in the early years and con- 
ceives of the variations in the early environment as so important because they shape these 
characteristics in their most rapid periods of formation. 

Secondly, each characteristic is built on a base of that same characteristic at an earlier 
time or on the base of other characteristics which precede it in development.... 

A third reason. . . stems from learning theory. It is much easier to learn something new 
than it is to stamp out one set of learned behaviors and replace them by a new set. (p. 215) 

The data collection system outlined in the Student Handbook will give the behaviorists 
the vital tool they need to hone their ability to thoroughly reorganize the values, attitudes and 
behaviors of the American student. God help us if this system is implemented. 



Appendix XVII 



Memos on Direct Instruction 



January 10, 1997 Memo 
To: Researchers 
From: Charlotte Iserbyt 
Regarding: Direct Instruction 

The Christian Conscience, September 1996, commenced the serialization on a monthly basis 
of my updated 1985 Back to Basics Reform or OBE... Skinnerian International Curriculum 
(Chronological History of OBE/ML: 1880s through 1990s). I urge those of you trying to educate 
opponents of OBE and School-to-Work programs WHO SUPPORT DIRECT INSTRUCTION, 
please go to The Christian Conscience website (http://www.christianconscience.com) and 
request the September-December 1996 back issues. These will take you through the important 
sixties and will explain with complete documentation that the Direct Instruction method 
is similar to the Skinnerian OBE/mastery learning method and should be rejected since 
animal training methods have nothing to do with education. For the life of me I cannot 
understand why Christian schools and home schoolers support ML/DI which uses animal 
training methods based on the theory of evolution (man is nothing but an animal) which 
they so vociferously oppose. 

Those ramming OBE/ML work force training down our throats ran into so much trouble, 
due unfortunately only to the nasty outcomes, not due to the Skinnerian method, that they 
rescued their OBE/ML restructuring by jumping from the mastery learning ship onto its sister 
ship, Direct Instruction. They figured, and it seems with good reason, that if they presented 
the same method with a different label and focused on academic, not affective, touchy-feely 
outcomes, they could capture the approval of the conservative opposition. 

Direct Instruction is on a roll — all over the country. California is looking at DI; parents 
were ready for "anything" after the whole language disaster. Chicago, which surely should 
know better after its ML catastrophe which resulted in half the freshman class not graduating, 



A-90 



Appendix XVII 



A-91 



is implementing DI. Doug Carnine, Director of the federally funded National Center to Improve 
the Tools of Educators, in Eugene, Oregon, has written Ms. Moran, California's Commission 
for the Establishment of Academic Content and Performance Standards, regarding the 
Center's work with Virginia on aligning their state assessment with their standards and 
in developing their accountability system. What is of interest here is that Carnine, who 
is close to Engelmann, the father of DI — DISTAR, and who was involved in the Follow 
Through Direct Instruction Evaluation (1970-76), known as the "largest and most expensive 
social experiment ever launched," has surfaced 20 years later as a key player in education 
restructuring. You will be told Direct Instruction is "back to basics" and if you squawk hard 
enough about the outcomes or standards of learning, or whatever they call your objectives, 
the educrats may recommend Virginia's Standards of Learning [Is this E.D. Hirsch? ed.] 
which are pretty clean— for now— but don't forget those standards can be interpreted by 
the educrats any way they want, and some fine day, they could be completely changed. The 
problem is not the outcomes, but the Skinnerian method essential for workforce training, and 
Direct Instruction is just as bad, for the same reasons, as Mastery Learning, which has been 
a disaster in all the inner city schools in which it was used. 

Last night on the Jim Lehrer Show there was a panel discussion on the sorry state of 
education during which John Chubb of the liberal Brookings Institute, who heads up the 
Edison Project (charter schools), recommended Direct Instruction as the solution to the 
nation's education problems. Chubb et al., with strong ties into the international business 
community, support publicly funded charter schools, which, as all of you know, will be used 
for workforce training. The Skinnerian Method, be it ML or DI, is of vital importance to the 
implementation of workforce training. ML and DI are not the same thing as teacher-initiated 
or driven instruction of basic content material (traditional education). Curriculum in 
script form using operant conditioning, i.e. Programmed Learning, be it Ethna Reid's 
ECRI Mastery Learning (ML) or Engelmann's SRA (DISTAR). Direct Instruction (DI) is not 
the same as teacher-initiated or driven instruction of basic content material (traditional 
education). PLS PUT ON INTERNET! 



January 29, 1997 Memo 

To: Supporters of Direct Instruction 

From: Charlotte Iserbyt 

Regarding: The Role of Siegfried Engelmann, developer of DISTAR/Reading Mastery, in 
teacher training for federally funded ECRI (Skinnerian Mastery Learning) 

On April 12, 1980 the Maine Facilitator Center (National Diffusion Network) held a conference 
to train teachers in Ethna Reid's mastery learning program known as "The Exemplary 
Center for Reading Instruction." A teacher friend of mine gave me the 125-page teacher 
training manual used at the conference. 

Although I had always suspected that Engelmann's DISTAR/Reading Mastery was in 
some way connected to the ECRI program since the techniques were similar, I was unable 
to make a direct connection. When I first read the training manual ten years ago, I did not 
know who Engelmann was so his name meant nothing to me. Now that I know who he is, 
you can imagine how shocked and sickened I was to find him referenced in Reid's rat lab 



A-92 



training manual. My worst suspicions regarding DI/Reading Mastery have been confirmed. 
One of the many references follows: 

BASIC PRINCIPLES OF BEHAVIOR MANAGEMENT 

Until recent years, the study of human behavior was thought to elude careful analysis. 
However, during the last three decades, scientific techniques have been developed for the 
study of behavior which show that behavioral processes are based upon exact principles. In 
applying these principles to teaching, Becker, Engelmann, and Thomas stated: 

The experimental study of events that make learning happen has produced consistent 
findings that can provide the teacher with a systematic basis for doing her job. Events 
occurring before and after a child makes a response have been shown to be critical in 
determining when and where that response will occur again. Environmental 
events that influence responding are called stimuli . A teacher accomplishes a 
teaching objective by effectively arranging the occurrence of stimulus events for 
the child — that is, by controlling when and how she talks, praises, shows things, 
and prompts responses. 

Teaching is further described as a three-step process, written S-R-S 
(S) The teacher presents preceding stimuli (signal) 
(R) The child responds 

(R) The teacher presents following stimulus (consequence) 
This Model for Direct Teaching can be shown thus: 
S (Preceding Stimuli); 
R (Pupil Response) ; and 
S (Consequent Stimuli) 

Reference #8, Becker, Engelmann, and Thomas, Teaching: A Course in Applied Psychology 
(Science Research Associates, Inc.: Chicago, 1971), p.l. 

DISTAR/Reading Mastery is being used in the Houston public schools and is being 
touted as the most successful curriculum around by conservative groups. It is also being 
promoted by the multi-national corporations and John Chubb who support charter schools 
for workforce training. 



January 30, 1997 Memo 

To: Supporters of Direct Instruction 

From: Charlotte Iserbyt 

Forces for Change in the Primary Schools 1980 (High Scope Press High Scope Educational 
Research Foundation: Ypsilanti, MI, 1980), pp. 81-82, identifies Douglas Carnine as "Director 
of Follow Through (FT) Direct Instruction Model, University of Oregon, Department of Special 
Education." The FT program was a longitudinal educational experiment aimed at finding 
effective methods for educating disadvantaged children. 

Doug Carnine's Dec. 11, 1996 letter to Ms. Ellen Moran, State of California, Commission 
for the Establishment of Academic Content and Performance Standards, is written on the 



Appendix XVII 



A-93 



National Center to Improve the Tools of Educators letterhead which also says in fine print "To 
address the Quality of Technology, Media and Materials for Students with Diverse Learning 
Needs, funded by the U.S. Office of Special Education Programs." Carnine's letter to Moran 
stated that "the Center is working closely with the VA Dept. of Education and State Board on 
aligning their state assessment with their standards and in developing their accountability 
system.... NCITE is also preparing informal assessment benchmarks for first and second grade 
in math and language arts that schools can volunteer to use before the formal assessment 
begins in grade 3. Our center is willing to make these and other materials we develop for 
Virginia available to the Commission without charge." 

DISTAR/Reading Mastery is being promoted as an alternative to Whole Language 
reading instruction. Even if one doesn't object to Skinnerian behavior modification/operant 
conditioning/animal training being used on children, doesn't it make sense to question 
whether one wants their perfectly normal children subjected to a program designed 
for disadvantaged children (10-15% of students). Many critics of Skinnerian training 
programs have gone even further and suggested that it was unethical to use disadvantaged 
children for experimentation, such as was done with the "Follow Through" program 
in the late sixties. 

I have before me a study entitled Educational Outcomes and Indicators for Students 
Completing School, from the National Center on Educational Outcomes, The College of 
Education, University of Minnesota, in collaboration with St. Cloud State University and 
National Association of State Directors of Special Education, 1993, which says: "The National 
Center on Educational Outcomes (NCEO) is working with federal and state agencies to 
facilitate and enhance the collection and use of data on educational outcomes for students with 
disabilities. In doing so, it has taken an inclusive approach: Identifying a conceptual model of 
outcomes that applies to ALL students, not just to students with disabilities. " 

Is this what the "deliberate dumbing down" of America is all about? All children 
are considered to have disabilities and are categorized as special education? All children 
will have an individualized education plan? All children will be taught using Skinnerian 
behavioral psychology, be it mastery learning/OBE or Direct Instruction/DISTAR/Reading 
Mastery? 

Although the Evaluation of Follow Through cited some academic and self-esteem 
gains at some sites due to the use of the Direct Instruction model, it would have been 
virtually impossible for these gains not to have been made considering the open classroom, 
touchy-feely models with which it was compared. Had the Direct Instruction model been in 
competition with a good traditional phonics program not based on animal psychology, it is 
most unlikely it would have been able to point to any gains at all. Also, the results of the 
Follow Through program should be questioned as valuable to our society as a whole since 
they were based, again, on the results in inner city schools. Why didn't those involved reach 
for the stars and try to find out what it was, in our most academically oriented schools, with 
high test scores, in middle income communities, that lead to success, and use that model in 
the inner city schools? Isn't it elitist to suggest that low income, minority children were not 
capable of attaining the same results as those of their more advantaged classmates in other 
parts of the country? And isn't it interesting that the model for the "disadvantaged" children 
(Engelmann's Direct Instruction/Reading Mastery) seems to have been selected for ALL 
our children as the model for the schools of the 21st Century, publicly funded charter 
schools, run by unelected directors, whose purpose will be to "train" our children (human 



A-94 



resources) for the global workforce? 

If the above analysis is on target, and the documentation unfortunately seems to 
point in that direction, it is a very, very sad day for American education, our children, 
and our nation. 



January 30, 1997 Memo 

To: Activists in States Implementing DISTAR/Reading Mastery using Doug Carnine of 
the federally-funded national Center to Improve the Tools of Educators, as Consultant to 
your State Deptartment of Education 
From: Charlotte Iserbyt 

Regarding: Doug Carnine's work in your State. Proof that Direct Instruction/Reading 
Mastery is 100% B.F. Skinner Rat Lab education 

Am sending you the alerts I have been getting out the past two weeks, which have gone onto 
the Internet, and which you should have, if you are not on-line. 

Carnine has not responded to my original January 10, 1997 alert, although requested 
to do so by others on the Internet. Considering the amount of information we have on his 
connections with Engelmann, father of DISTAR/Reading Mastery, dating back twenty years, it 
is no surprise Engelmann, Becker, Carnine, etc., do not wish to respond. 

Those who do not understand Skinnerian behavioral psychology and its use on innocent 
children are making a very big mistake supporting DI/Reading Mastery. I have the entire 
ECRI teacher training in which Engelmann is referenced several times (absolutely nauseating 
quotes) . I cannot find a word to express my disgust that such a dehumanizing method could 
be used on anyone, much less captive children in the classroom. I don't care if it is used to 
teach the Ten Commandments. It is sick, sick, sick, and our good people had better wake up 
and stop embracing it simply because it uses intensive phonics instead of Whole Language. 
Hitler had a pretty good system going for him, too; he used this method; so do the Russians. 
I personally consider my two sons to be more than "organisms." I pulled them out of a 
Christian school that used ML for the same reason fifteen years ago. 

After reading the ECRI teacher training I can honestly say that I would prefer to have 
my child in a Whole Language class, learning nothing, than a Skinnerian DI class, possibly 
learning bits and pieces of basics (which will never transfer) and in which my child's whole 
being, personality, etc. will be damaged, perhaps forever. And I have fought Whole Language 
ever since it arrived on the horizon, for over ten years. I have written about it. One article 
was even published in The Congressional Record. I mention this only to convince those still 
believing I am possibly pro-Whole Language that I am not. I support teaching phonics 
with the teacher in front of the class, lecturing the children (teacher-initiated or -driven 
instruction of basic content material: traditional education) . Curriculum in script form using 
operant conditioning, i.e. Programmed Learning, be it Ethna Reid's ECRI or Engelmann's SRA 
(DISTAR/Reading Mastery/Direct Instruction) is not traditional teaching. 

When Ann Herzer, a teacher, complained about going through the ECRI training in 
Arizona, she was absolutely crucified, strung up, and left there to bleed (by conservatives, 
among others). She was asked by the trainer, "Don't you understand — we're training the 
children to be 'people pleasers'?" You should see the file I have of letters from distraught 



Appendix XVII 



A-95 



parents, reputable doctors, psychologists, etc. who came to Ann's defense in opposing this 
sick program. You should see the letters from plain moms about their children getting sick; 
nervous ailments, ticks, nightmares, etc. Ann and the parents were threatened with legal 
reprisal if they didn't shut up. Ann did not shut up. 

The U.S. Department of Education has denied that ECRI uses rat training; also denies 
that there was ever an ECRI teacher training manual, which I happen to hold in my 
hand right this minute! Fortunately, a wonderful American teacher who went through 
the training in Maine in 1980 gave me the manual. We would never have had the entire 
story without her help. 

Please get on the bandwagon with your Governors, Legislature, State Board of Education, 
media, etc. But most of all with local school boards and parents. Warn them! And don't forget 
to tell them that when we have exposed Direct Instruction for what it is, the change agents 
will give it another name. Global economy, multinational corporations, and the United Nations 
must have only one method of training, and that is Skinner. The outcomes can be changed 
overnight; the method cannot. 



Appendix XVIII 



'A Human Resources Development Plan for the United States" 



NATIONAL CENTER ON EDUCATION AND THE ECONOMY 
(c)1992 National Center on Education and the Economy 
Additional Copies are Available for $7.50 each, postpaid from the 
National Center on Education and the Economy 
39 State Street, Suite 500 
Rochester, NY 14614-1327 
716-546-7620 
FAX: 716-546-3145 



Preface 

The advent of the Clinton administration creates a unique opportunity for the country to 
develop a truly national system for the development of its human resources, second to 
none on the globe. The National Center on Education and the Economy and its predecessor 
organization, the Carnegie Forum on Education and the Economy, have been elaborating 
a national agenda in this arena over the last eight years. Here, we outline a set of 
recommendations to the incoming Clinton administration in the area of human resource 
development. It builds directly on the proposals that the President-elect advanced during 
the campaign. This report is mainly the work of a small group of people with close ties to 
the National Center: Tim Barnicle, David Barram, Michael Cohen, David Hasselkorn, David 
Hornbeck, Shirley Malcom, Ray Marshall, Susan McGuire, Hilary Pennington, Andy Plattner, 
Lauren Resnick, David Rockefeller, Jr., Betsy Brown Ruzzi, Robert Schwartz, John Sculley, 
Marshall Smith, Bill Spring and myself. While all of these people are in general agreement 
with what follows, they may not agree on the details. 

— Marc Tucker 



A-96 



Appendix XVIII 



A-97 



Introduction 

The great opportunity in front of the country now is to remold the entire American system for 
human resources development, almost all of the current components of which were put in 
place before World War II. The natural course is to take each of the ideas that were advanced 
in the campaign in the area of education and training and translate them individually into 
legislative proposals. But that will lead to these programs being grafted onto the present 
system, not to a new system, and the opportunity will have been lost. If this sense of 
time and place is correct, it is essential that the nation's efforts be guided by a consistent 
vision of what it wants to accomplish in the field of human resources development, a 
vision that can shape the actions not only of the new administration but of many others 
over the next few years. 

What follows comes in two pieces: 

First, a vision of the kind of national — not federal — human resources development system 
the nation could have. This is interwoven with a new approach to governing that should 
inform that vision. What is essential is that we create a seamless web of opportunities to 
develop one's skills that literally extends from cradle to grave and is the same system for 
everyone — young and old, poor and rich, worker and full-time student. It needs to be a 
system driven by client needs (not agency regulations or the needs of the organizations 
providing the services), guided by clear standards that define the stages of the system for 
the people who progress through it, and regulated on the basis of outcomes that providers 
produce for their clients, not inputs into the system. 

Second, a proposed legislative agenda the new administration and the Congress can use 
to implement this vision. We propose four high priority packages that will enable the 
federal government to move quickly: 

1. The first would use the President-elect's proposal for an apprenticeship system as the 
keystone of a strategy for putting a whole new postsecondary training system in place. 
That system would incorporate his proposal for reforming postsecondary education finance. 
It contains what we think is a powerful idea for rolling out and scaling up the whole 
new human resources system nationwide over the next four years, using the (renamed) 
apprenticeship idea as the entering wedge. 

2. The second would combine initiatives on dislocated workers, a rebuilt employment service 
and a new system of labor market boards in a single employment security program built 
on the best practices anywhere in the world. This is the backbone of a system for assuring 
adult workers in our society that they need never again watch with dismay as their jobs 
disappear and their chances of ever getting a job again go with them. 

3. The third would concentrate on the overwhelming problems of our inner cities, combining 
elements of the first and second packages into a special program to greatly raise the 
work-related skills of the people trapped in the core of our great cities. 



A-98 



4. The fourth would enable the new administration to take advantage of legislation on 
which Congress has already been working to advance the elementary and secondary 
reform agenda. 

The Vision 

An Economic Strategy Based on Skill Development 

*— The economy's strength is derived from a whole population as skilled as any in 
the world, working in workplaces organized to take maximum advantage of the 
skills those people have to offer. 

<— A seamless system of unending skill development that begins in the home with 
the very young and continues through school, postsecondary education and the 
workplace. 

The Schools 

<— Clear national standards of performance in general education (the knowledge and 
skills that everyone is expected to hold in common) are set to the level of the best 
achieving nations in the world for students of 16 and public schools are expected 
to bring all but the most severely handicapped up to that standard. Students get a 
certificate when they meet this standard, allowing them to go on to the next stage of 
their education. Though the standards are set to international benchmarks, they are 
distinctly American, reflecting our needs and values. 

<— We have a national system of education in which curriculum, pedagogy, examinations 
and teacher education and licensure systems are all linked to the national standards, 
but which provides for substantial variation among states, districts and schools on 
these matters. This new system of linked standards, curriculum and pedagogy will 
abandon the American tracking system, combining high academic standards with the 
ability to apply what one knows to real world problems and qualifying all students for 
a lifetime of learning in the postsecondary system and at work. 

<— We have a system that rewards students who meet the national standards with 
further education and good jobs, providing them a strong incentive to work 
hard in school. 

<— Our public school systems are reorganized to free up school professionals to make 
the key decisions about how to use all the available resources to bring students up 
to the standards. Most of the federal, state, district and union rules and regulations 
that now restrict school professionals' ability to make these decisions are swept away, 
though strong measures are in place to make sure that vulnerable populations get 
the help they need. School professionals are paid at a level comparable to that of 
other professionals, but they are expected to put in a full year to spend whatever time 



Appendix XVIII 



A-99 



it takes to do the job and to be fully accountable for the results of their work. The 
federal, state and local governments provide the time, staff development resources, 
technology and other support needed for them to do the job. Nothing less than a 
wholly restructured school system can possibly bring all of our students up to a 
standard only a few have been expected to meet up to now. 

<— There is an aggressive program of public choice in our schools. 

<— All students are guaranteed that they will have a fair shot at reaching the standards, 
that is, that whether they make it or not depends only on the effort they are willing to 
make. A determined effort on the part of the federal government will be required on 
this point. School delivery standards may be required. If so, these standards should 
have the same status in the system as the new student performance standards, but they 
should be fashioned so as not to constitute a new bureaucratic nightmare. 

Postsecondary Education and Work Skills 

«— All students who meet the new national standards for general education are entitled 
to the equivalent of three more years of free additional education. We would have 
the federal and state governments match funds to guarantee one free year of college 
education to everyone who meets the new national standards for general education 
(the amount of this award would be set at a stipulated maximum so as to avoid 
runaway charges for college tuition). So a student who meets the standard at 16 
would be entitled to two free years of high school and one of college. Loans, which 
can be forgiven for public service, are available for additional education beyond that. 
National standards for sub-baccalaureate college-level professional and technical 
degrees and certificates will be established with the participation of employers, 
labor and higher education. These programs will include both academic study and 
structured on-the-job training. Eighty percent or more of American high school 
graduates will be expected to get some form of college degree, though most of them 
less than a baccalaureate. These new professional and technical certificates and 
degrees typically are won within three years of acquiring the general education 
certificate, so, for most postsecondary students, college will be free. These professional 
and technical degree programs will be designed to link to programs leading to 
the baccalaureate degree and higher degrees. There will be no dead ends in this 
system. Everyone who meets the general education standard will be able to go 
to some form of college, being able to borrow all the money they need to do so, 
beyond the first free year. 

This idea of post-secondary professional and technical certificates captures all of the 
essentials of the apprenticeship idea, while offering none of its drawbacks (see below) . 
But it also makes it clear that those engaged in apprentice-style programs are getting 
more than narrow training; they are continuing their education for other purposes as 
well, and building a base for more education later. Clearly, this idea redefines 
college. Proprietary schools, employers, and community-based organizations 
will want to offer these programs, as well as community colleges and four-year 



institutions, but these new entrants will have to be accredited if they are to qualify 
to offer the programs. 

Employers are not required to provide slots for the structured on-the-job training 
component of the program but many do so, because they get first access to the 
most accomplished graduates of these programs and they can use these programs to 
introduce the trainees to their own values and way of doing things. 

The system of skill standards for technical and professional degrees is the same 
for students just coming out of high school and for adults in the workforce. It is 
progressive, in the sense that certificates and degrees for the entry level jobs lead to 
further professional and technical education programs at higher levels. Just as in the 
case of the system for the schools, though the standards are the same everywhere 
(leading to maximum mobility for students), the curricula can vary widely and 
programs can be custom designed to fit the needs of full-time and part-time students 
with very different requirements. Government grant and loan programs are available 
on the same terms to full-time and part-time students, as long as the programs in 
which they are enrolled are designed to lead to certificates and degrees defined by 
the system of professional and technical standards. 

The national system of professional and technical standards is designed much like the 
multistate bar, which provides a national core around which the states can specify 
additional standards that meet their unique needs. There are national standards and 
exams for no more than 20 broad occupational areas, each of which can lead to 
many occupations in a number of related industries. Students who qualify in any 
one of these areas have the broad skills required by a whole family of occupations, 
and most are sufficiently skilled to enter the workforce immediately, with further 
occupation-specific skills provided by their union or employer. Industry and 
occupational groups can voluntarily create standards building on these broad 
standards for their own needs, as can the states. Students entering the system are first 
introduced to very broad occupational groups, narrowing over time to concentrate on 
acquiring the skills needed for a cluster of occupations. This modular system provides 
for the initiative of particular states and industries while at the same time providing 
for mobility across states and occupations by reducing the time and cost entailed in 
moving from one occupation to another. In this way, a balance is established between 
the kinds of generic skills needed to function effectively in high performance work 
organizations and the skills needed to continue learning quickly and well through a 
lifetime of work, on the one hand, and the specific skills needed to perform at a high 
level in a particular occupation on the other. 

Institutions receiving grant and loan funds under this system are required to provide 
information to the public and to government agencies in a uniform format. This 
information covers enrollment by program, costs and success rates for students of 
different backgrounds and characteristics, and career outcomes for those students, 
thereby enabling students to make informed choices among institutions based on cost 
and performance. Loan defaults are reduced to a level close to zero, both because 
programs that do not deliver what they promise are not selected by prospective 



Appendix XVIII 



A- 101 



students and because the new postsecondary loan system uses the IRS to collect what 
is owed from salaries and wages as they are earned. 

Education and Training for Employed and Unemployed Adults 

<— The national system of skills standards establishes the basis for the development 
of a coherent, unified training system. That system can be accessed by students 
coming out of high school, employed adults who want to improve their prospects, 
unemployed adults who are dislocated and others who lack the basic skills required 
to get out of poverty. But it is all the same system. There are no longer any parts of 
it that are exclusively for the disadvantaged, though special measures are taken to 
make sure that the disadvantaged are served. It is a system for everyone, just as all 
the parts of the system already described are for everyone. So the people who take 
advantage of this system are not marked by it as damaged goods. The skills they 
acquire are world class, clear and defined in part by the employers who will make 
decisions about hiring and advancement. 

<— The new general education standard becomes the target for all basic education 
programs, both for school dropouts and adults. Achieving that standard is the 
prerequisite for enrollment in all professional and technical degree programs. A wide 
range of agencies and institutions offer programs leading to the general education 
certificate, including high schools, dropout recovery centers, adult education centers, 
community colleges, prisons and employers. These programs are tailored to the needs 
of the people who enroll in them. All the programs receiving government grant or 
loan funds that come with dropouts and adults for enrollment in programs preparing 
students to meet the general education standard must release the same kind of data 
required of the postsecondary institutions on enrollment, program description, cost and 
success rates. Reports are produced for each institution and for the system as a whole 
showing different success rates for each major demographic group. 

*— The system is funded in four different ways, all providing access to the same or a 
similar set of services. School dropouts below the age of 21 are entitled to the same 
amount of funding from the same sources that they would have been entitled to 
had they stayed in school. Dislocated workers are funded by the federal government 
through the federal programs for that purpose and by state unemployment insurance 
funds. The chronically unemployed are funded by federal and state funds established 
for that purpose. Employed people can access the system through the requirement 
that their employers spend an amount equal to 1 and 1/2 percent of their salary and 
wage bill on training leading to national skill certification. People in prison could get 
reductions in their sentences by meeting the general education standard in a program 
provided by the prison system. Any of these groups can also use the balances in their 
grant entitlement or their access to the student loan fund. 

Labor Market Systems 

<— The Employment Service is greatly upgraded, and separated from the Unemployment 



A- 102 



Insurance Fund. All available front-line jobs — whether public or private — must be 
listed in it by law [this provision must be carefully designed to make sure that 
employers will not be subject to employment suits based on the data produced by 
this system— if they are subject to such suits, they will not participate]. All trainees 
in the system looking for work are entitled to be listed in it without a fee. So it is no 
longer a system just for the poor and unskilled, but for everyone. The system is fully 
computerized. It lists not only job openings and job seekers (with their qualifications) 
but also all the institutions in the labor market area offering programs leading to the 
general education certificate and those offering programs leading to the professional 
and technical college degrees and certificates, along with all the relevant data 
about the costs, characteristics and performance of those programs— for everyone 
and for special populations. Counselors are available to any citizen to help them 
assess their needs, plan a program and finance it, and, once they are trained, 
to locate available jobs. 

*— A system of labor market boards is established at the local, state and federal 
levels to coordinate the systems for job training, postsecondary professional and 
technical education, adult basic education, job matching and counseling. The rebuilt 
Employment Service is supervised by these boards. The system's clients no longer 
have to go from agency to agency filling out separate applications for separate 
programs. It is all taken care of at the local labor market board office by one counselor 
accessing the integrated computer-based program, which makes it possible for the 
counselor to determine eligibility for all relevant programs at once, plan a program 
with the client and assemble the necessary funding from all the available sources. The 
same system will enable counselor and client to array all the relevant program providers 
side by side, assess their relative costs and performance records and determine which 
providers are best able to meet the client's needs based on performance. 

Some Common Features 

<— Throughout, the object is to have a performance- and client-oriented system and to 
encourage local creativity and responsibility by getting local people to commit to high 
goals and organize to achieve them, sweeping away as much of the rules, regulations 
and bureaucracy that are in their way as possible, provided that they are making 
real progress against their goals. For this to work, the standards at every level of 
the system have to be clear; every client has to know what they have to accomplish 
in order to get what they want out of the system. The service providers have to be 
supported in the task of getting their clients to the finish line and rewarded when 
they are making real progress toward that goal. We would sweep away means-tested 
programs, because they stigmatize their recipients and alienate the public, replacing 
them with programs that are for everyone, but also work for the disadvantaged. We 
would replace rules defining inputs with rules defining outcomes and the rewards for 
achieving them. This means, among other things, permitting local people to combine 
many federal programs as they see fit, provided that the intended beneficiaries are 
progressing toward the right outcomes. We would make individuals, their families 



Appendix XVIII 



A- 103 



and whole communities the unit of service, not agencies, programs and projects. 
Wherever possible, we would have service providers compete with one another for 
funds that come with the client, in an environment in which the client has good 
information about the cost and performance record of the competing providers. Dealing 
with public agencies — whether they are schools or the employment service — should be 
more like dealing with Federal Express than with the old Post Office. 

An Agenda for the Federal Government 

Government at every level has an enormous potential for affecting a nation's human 
capacity — from the resources it provides to nourish pregnant women to the incentives it 
provides to employers to invest in the skill development of their employees. In this section we 
concentrate on the role the federal government can play and largely restrict our field of vision 
to elementary and secondary education, job training and labor market policy. 

Everything that follows is cast in the frame of strategies for bringing the new system 
described in the preceding section into being, not as a pilot program, not as a few 
demonstrations to be swept aside in another administration, but everywhere, as the new 
way of doing business. 

The preceding section presented a vision of the system we have in mind chronologically 
from the point of view of an individual served by it. Here we reverse the order, starting 
with a description of program components designed to serve adults, and working our 
way down to the very young. 

High Skills for Economic competitiveness Program 
Developing System Standards 

<— Create a National Board for Professional and Technical Standards. The Board is a 
private not-for-profit chartered by Congress. Its charter specifies broad membership 
composed of leading figures from higher education, business, labor, government 
and advocacy groups. The Board can receive appropriated funds from Congress, 
private foundations, individuals and corporations. Neither Congress nor the executive 
branch can dictate the standards set by the Board. But the Board is required to 
report annually to the President and the Congress in order to provide for public 
accountability. It is also directed to work collaboratively with the states and cities 
involved in the Collaborative Design and Development Program (see below) in the 
development of the standards. 

*— Charter specifies that the National Board will set broad performance standards (not 
time-in-the-seat standards or course standards) for postsecondary Professional and 
Technical certificates and degrees at the sub-baccalaureate level, in not more than 
20 areas and develops performance examinations for each. The Board is required to 



A- 104 



set broad standards of the kind described in the vision statement above, and is not 
permitted to simply reify the narrow standards that characterize many occupations 
now (more than 2,000 standards currently exist, many, for licensed occupations — these 
are not the kinds of standards we have in mind) . It also specifies that the programs 
leading to these certificates and degrees will combine time in the classroom with 
time at the work-site in structured on-the-job training. The Board is responsible for 
administering the exam system and continually updating the standards and exams. 
The standards assume the existence of prerequisite world class general education 
standards set by the National Board for Student Achievement Standards, described 
below. The new standards and exams are meant to be supplemented for particular 
occupations by the states and by individual industries and occupational groups, with 
support from the National Board. 

<— Legislation creating the Board is sent to the Congress in the first six months of the 
administration, imposing a deadline for creating the standards and the exams within 
three years of passage of the legislation. 

Commentary: 

The proposal reframes the Clinton apprenticeship proposal as a college program and 
establishes a mechanism for setting the standards for the program. The unions are 
very concerned that the new apprenticeships will be confused with the established 
registered apprenticeships. Focus groups conducted by Jobs for the Future and others 
show that parents everywhere want their kids to go to college, not to be shunted aside 
into a non-college apprenticeship "vocational" program. By requiring these programs 
to be a combination of classroom instruction and structured OJT, and creating a 
standard-setting board that includes employers and labor, all the objectives of the 
apprenticeship idea are achieved, while at the same [time], assuring much broader 
support for the idea, as well as a guarantee that the program will not become too 
narrowly [focussed] on particular occupations. It also ties the Clinton apprenticeship 
idea to the Clinton college funding proposal in a seamless web. Charging the Board 
with creating not more than 20 certificate or degree categories establishes a balance 
between the need to create one national system on the one hand with the need to avoid 
creating a cumbersome and rigid national bureaucracy on the other. This approach 
provides lots of latitude for individual industry groups, professional groups and state 
authorities to establish their own standards, while at the same time avoiding the chaos 
that would surely result if they were the only source of standards. The bill establishing 
the Board should also authorize the executive branch to make grants to industry 
groups, professional societies, occupational groups and states to develop their own 
standards and exams. Our assumption is that the system we are proposing will be 
managed so as to encourage the states to combine the last two years of high school and 
the first two years of community college into three-year programs leading to college 
degrees and certificates. Proprietary institutions, employers and community-based 
organizations could also offer these programs, but they would have to be accredited to 
offer these college-level programs. Eventually, students getting their general education 
certificates might go directly to community college or to another form of college, but 



Appendix XVIII 



A-105 



the new system should not require that. 
Collaborative Design and Development Program 

The object is to create a single comprehensive system for professional and technical education 
that meets the requirements of everyone from high school students to skilled dislocated 
workers, from the hard core unemployed to employed adults who want to improve their 
prospects. Creating such a system means sweeping aside countless programs, building new 
ones, combining funding authorities, changing deeply embedded institutional structures, and 
so on. The question is how to get from where we are to where we want to be. Trying to ram 
it down everyone's throat would engender overwhelming opposition. Our idea is to draft 
legislation that would offer an opportunity for those states— and selected large cities— that are 
excited about this set of ideas to come forward and join with each other and with the federal 
government in an alliance to do the necessary design work and actually deliver the needed 
services on a fast track. The legislation would require the executive branch to establish a 
competitive grant program for these states and cities and to engage a group of organizations 
to offer technical assistance to the expanding set of states and cities engaged in designing 
and implementing the new system. This is not the usual large scale experiment nor is it 
a demonstration program, but a highly regarded precedent exists for this approach in the 
National Science Foundation's SSI program. As soon as the first set of states is engaged, 
another set would be invited to participate, until most or all of the states are involved. It is a 
collaborative design, rollout and scale-up program. It is intended to parallel the work of the 
National Board for Professional and Technical Standards, so that the states and cities (and 
all their partners) would be able to implement the new standards as soon [as] they become 
available, although they would be delivering services on a large scale before that happened. 
Thus, major parts of the whole system would be in operation in a majority of the states 
within three years from the passage of the initial legislation. Inclusion of selected large cities 
in this design is not an afterthought. We believe that what we are proposing here for the 
cities is the necessary complement to a large scale job-creation program for the cities. 
Skill development will not work if there are no jobs, but job development will not work 
without a determined effort to improve the skills of city residents. This is the skills 
development component. 

■^-Participants 

—Volunteer states, counterpart initiative for cities. 

—15 states, 15 cities selected to begin in the first year, 15 more in each 
successive year. 

— 5 year grants (on the order of $20 million per year to each state, lower amounts 
to the cities) given to each, with specific goals to be achieved by the third year; 
including program elements in place (e.g., upgraded employment service), number 
of people enrolled in new professional and technical programs, and so on[.] 

<— Criteria for Selection 



— A core set of High Performance Work Organization firms willing to participate in 
standard setting and to offer training slots and mentors. 

—Strategies for enriching existing coop ed, tech prep, other programs to meet 
the criteria. 

— Commitment to implementing new general education standard in legislation. 

— Commitment to implementing the new Technical and Professional skills 
standards for college. 

— Commitment to developing an outcome- and performance-based system for 
human resources development. 

— Commitment to new role for employment service. 

— Commitment to join with others in national design and implementation 
activity. 

Clients 

Young adults entering workforce. 

Dislocated workers. 

Long term unemployed. 

Employed who want to upgrade skills. 

Program Components 

— Institute own version of state and local labor market boards. Local labor market 
boards to involve leading employers, labor representatives, educators and advocacy 
group leaders in running the redesigned employment service, running intake 
system for all clients, counseling all clients, maintaining the information system 
that will make the vendor market efficient and organizing employers to provide job 
experience and training slots for school youth and adult trainees. 

— Rebuild employment service as a primary function of labor market boards. 

—Develop programs to bring dropouts and illiterate up to general education 
certificate standard. Organize local alternative providers and firms to provide 
alternative education, counseling, job experience and placement services to 
these clients. 

— Develop programs for dislocated workers and hard-core unemployed (see 
below) . 



Appendix XVIII 



A- 107 



— Develop city- and state-wide programs to combine the last two years of high school 
and the first two years of college into three year programs after acquisition of the 
general education certificate to culminate in college certificates and degrees. These 
programs should combine academics and structured on-the-job training. 

— Develop uniform reporting system for providers, requiring them to provide 
information in that format on characteristics of clients, their success rates by 
program, and the costs of those programs. Develop computer-based system for 
combining this data at local labor market board offices with employment data from 
[the] state so that counselors and clients can look at programs offered by colleges 
and other vendors in terms of cost, client characteristics, program design, and 
outcomes, including subsequent employment histories for graduates. 

— Design all programs around the forthcoming general education standards 
and the standards to be developed by the National Board for Professional and 
Technical Standards. 

— Create statewide program of technical assistance to firms on high performance 
work organization and to help them develop quality programs for participants in 
Technical and Professional certificate and degree programs (it is essential that these 
programs be high quality, nonbureaucratic and voluntary for the firms) . 

— Participate with other states and the national technical assistance program 
in the national alliance effort to exchange information and assistance among 
all participants. 

<— National Technical Assistance to Participants 

— Executive branch authorized to compete [for] opportunity to provide the following 
services (probably using a Request For Qualifications) . 

— State-of-the art assistance to the states and cities related to the principal program 
components (e.g.; work reorganization, training, basic literacy, funding systems, 
apprenticeship systems, large scale data management systems, training systems 
for the human resources professionals who make the whole system work, etc.). 
A number of organizations would be funded. Each would be expected to provide 
information and direct assistance to the states and cities involved, and to coordinate 
their efforts with one another. 

— It is essential that the technical assistance function include a major professional 
development component to make sure the key people in the states and cities upon 
whom success depends have the resources available to develop the high skills 
required. Some of the funds for this function should be provided directly to the 
states and cities, some to the technical assistance agency. 

— Coordination of the design and implementation activities of the whole consortium, 



A- 108 



documentation [of] results, preparation of reports, etc. One organization would 
be funded to perform this function. 

Dislocated Workers Program 

<— New legislation would permit combining all dislocated workers programs at a 
redesigned employment service office. Clients would, in effect, receive vouchers 
for education and training in amounts determined by the benefits for which they 
qualify. Employment service case managers would qualify client workers for benefits 
and assist the client in the selection of education and training programs offered 
by provider institutions. Any provider institutions that receive funds derived from 
dislocated worker programs are required to provide information on costs and 
performance of programs in uniform format described above. This consolidated and 
voucherized dislocated workers program would operate nationwide. It would be 
integrated with the Collaborative Design and Development Program in those states 
and cities in which that program functioned. It would be built around the general 
education certificate and the Professional and Technical Certificate and Degree 
Program as soon as those standards were in place. In this way, programs for dislocated 
workers would be progressively and fully integrated with the rest of the national 
education and training system. 

Levy-Grant System 

<— This is the part of the system that provides funds for currently employed people 
to improve their skills. Ideally, it should specifically provide means whereby 
front-line workers can earn their general education credential (if they do not 
already have one) and acquire Professional and Technical Certificates and degrees 
in fields of their choosing. 

<— Everything we have heard indicates virtually universal opposition in the employer 
community to the proposal for a 1 and 1/2 percent levy on employers for training to 
support the costs associated with employed workers gaining these skills, whatever 
the levy is called. The President may choose to press forward with the proposal 
nevertheless. Alternatively, he could take a leaf out of the German book. One of the 
most important reasons that large German employers offer apprenticeship slots to 
German youngsters is that they fear, with good reason, that if they don't volunteer to 
do so, the law will require it. The President could gather a group of leading executives 
and business organization leaders, and tell them straight out that he will hold back on 
submitting legislation to require a training levy, provided that they commit themselves 
to a drive to get employers to get their average expenditures on front-line employee 
training up to two percent of front-line employee salaries and wages within two years. 
If they have not done so within that time, then he will expect their support when 
he submits legislation requiring the training levy. He could do the same thing with 
respect to slots for structured on-the-job training. 



Loan/Public Service Program 



Appendix XVIII 



A- 109 



<— This proposal was a keystone of the Clinton campaign. Because we assumed that 
it is being designed by others, we did not focus on its details. From everything we 
know about it, however, it is entirely compatible with the rest of what is proposed 
here. What is, of course, especially relevant here is that our reconceptualization of 
the apprenticeship proposal as a college level education program, combined with our 
proposal that everyone who gets the general education credential be entitled to a free 
year of higher education (combined federal and state funds) will have a decided impact 
on the calculations of cost for the college loan/public service program. 

Assistance for Dropouts and the Long-Term Unemployed 

The problem of upgrading the skills of high school dropouts and the adult hard core 
unemployed is especially difficult. It is also at the heart of the problem of our inner cities. All 
the evidence indicates that what is needed is something with all the important characteristics 
of a non-residential Job Corps-like program. The problem with the Job Corps is that it is 
operated directly by the federal government and is therefore not embedded at all in the 
infrastructure of local communities. 

The way to solve this problem is to create a new urban program that is locally — not 
federally — organized and administered, but which must operate in a way that uses something 
like the federal standards for contracting for Job Corps services. In this way, local employers, 
neighborhood organizations and other local service providers could meet the need, but 
requiring local authorities to use the federal standards would assure high quality results. 
Programs for high school dropouts and the hard core unemployed would probably have to be 
separately organized, though the services provided would be much the same. Federal funds 
would be offered on a matching basis with state and local funds for this purpose. These 
programs should be fully integrated with the revitalized employment service. The local labor 
market board would be the local authority responsible for receiving the funds and contracting 
with providers for the services. It would provide diagnostic, placement and testing services. 
We would eliminate the targeted jobs credit and use the money now spent on that program 
to finance these operations. Funds can also be used from the JOBS program in the Welfare 
Reform Act. This will not be sufficient, however, because there is currently no federal money 
available to meet the needs of hard-core unemployed males (mostly Black) and so new 
monies will have to be appropriated for that purpose. 

Elementary and Secondary Education Program 

The situation with respect to elementary and secondary education is very different from adult 
education and training. In the latter case, a new vision and a whole new structure is required. 
In the former, there is increasing acceptance of a new vision and structure among the public 
at large, within the relevant professional groups and in Congress. There is also a lot of existing 
activity on which to build. So our recommendations here are rather more terse than in the 
case of adult education and training. 

The general approach here is parallel to the approach described for the High Skills for Economic 



A- 110 



Competitiveness Program. Here, too, we start with standards. And we propose a collaborative program with 
the states and with the major cities (adding, in this case, areas suffering from rural poverty) that provides 
an opportunity for those that wish to do so to participate in a staged, voluntary and progressive implemen- 
tation of the new system. The parallelism is deliberate. Some states and cities may wish to participate in 
both programs, developing the whole system at once, others in only one. Much of what we propose can be 
accomplished through revisions to the conference report on S2 and HR 4323, recently defeated on a cloture 
vote in the Congress. Solid majorities were behind the legislation in both houses of Congress. 

Standard Setting 

Legislation to accelerate the process of national standard setting in education was contained in the con- 
ference report on S2 and HR 4323. The new administration should support the early introduction of this 
legislation to create a National Board for Student Achievement Standards. The Board should be established 
as an independent not-for-profit organization chartered by the United States Congress. The charter should 
establish a self-perpetuating board of trustees for the Board that is broadly representative of the American 
people, including representation of general government at all levels, education, employers, labor, child 
advocacy groups and the general public. It should be eligible to receive funds from private foundations, 
government (including funds directly appropriated by the Congress), corporations and individuals. It 
should be charged with coming to a consensus on content standards for the core subjects in elementary 
and secondary education and for work-related skills. We do not believe that it should be charged with 
developing a national examination system, but that funds should be appropriated by the Congress to enable 
the Executive Branch to provide support to a variety of groups that come forward to implement examina- 
tion systems based on the standards established by the Board. The Board should be required to report 
annually to the Congress and the public, whether or not it receives Congressional appropriations. 

Systemic Change in Pnblic Education: A Collaborative Design 
and Development Program 

As we noted above, the conference report on S2 and HR 4323 contained a comprehensive program to 
support systemic change in public education upon which we would build. Here again, we would invite 
the states to submit proposals in a competitive grant program on the same principles and for the same 
reasons we suggested that approach above. Each year, additional states— and, in this case, major cities 
and poor rural areas — would be added to the network. Here again, most of the existing rules and regula- 
tions affecting relevant federal education programs would be waived, save for those relating to health, 
public safety and civil rights, and the participants would be expected to specify objectives for specific 
demographic groups of students and to make steady progress toward their achievement as a condition of 
remaining in the program. While the participants would have a lot of latitude in constructing a strategy 
that fits their particular context, that strategy would have to show how they planned to: 

• Implement an examination system related to the standards development by the National Board. 

• Empower school staff to make the key decisions as to how the students will meet those stan- 
dards. 

• Provide curricular resources to the school staffs related to the new standards and examinations. 



Appendix XVIII 



A- 111 



• Reorganize pre-service and in-service professional development programs to support the develop- 
ment of the skills necessary to bring all students up to the new standards. 

• Reorganize the delivery of health and social services to children and their families so as to support 
students and the school faculties. 

• Deploy advanced technologies to support the learning of students in and out of school. 

• Restructure the organization and management of public elementary and secondary education on the 
principles of modern quality management, empowering school staff, reducing intermediate layers 
of bureaucracy and the burden of rules and regulations from the state, the board of education and 
the unions and holding school staff accountable for student progress. 

Funds provided by this program could be used for professional development, to provide critically needed 
"glue" support to weld together activities consistent with the purposes of the program, and to provide student 
services. But funds for direct student services could be used only for services rendered before and after the 
regular school day, on weekends and during vacation periods. States receiving funds under this program 
would have to provide relief from regulation comparable to that provided by the federal government. 

Federal Programs for the Disadvantaged 

• The established federal education programs for the disadvantaged need to be thoroughly overhauled 
to reflect an emphasis on results for the students rather than compliance with the regulations. A 
national commission on Chapter 1, the largest of these programs, chaired by David Hornbeck, has 
designed a radically new version of this legislation, with the active participation of many of the 
advocacy groups. Other groups have been similarly engaged. We think the new administration should 
quickly endorse the work of the national commission and introduce its proposals early next year. It 
is unlikely that this legislation will pass before the deadline — two years away — for the reauthoriza- 
tion of the Elementary and Secondary Education Act, but early endorsement of this new approach 
by the administration will send a strong signal to the Congress and will greatly affect the climate 
in which other parts of the act will be considered. 

Public Choice, Technology, Integrated Health and Human Services, Curriculum Resources, High Per- 
formance Management, Professional Development and Research and Development 

• The restructuring of the schools that we envision is not likely to succeed unless the schools have a 
lot of information about how to do it and real assistance in getting it done. The areas in which this 
help is needed are suggested by the heading for this section. 

[Ed. Note: This is one of the most significant reports to which we've had access. It calls for a complete 
change in our form of government, education and opportunity to pursue individual life choices. At the 
time of the publication of this document the following people were serving on the Board of Trustees of the 
National Center on Education and the Economy. Many of these names will be familiar and significant as 
the reader relates them to proposals for change and reform. 



A- 11 2 



NATIONAL CENTER ON EDUCATION 
AND THE ECONOMY 
BOARD OF TRUSTEES 

Mario M. Cuomo, Honorary Chairman 

Governor 

State of New York 

John Sculley, Chairman 

Chairman, President and Chief Executive Officer 
Apple Computer, Inc. 

James B. Hunt, Jr., Vice-Chairman 
Partner 

Poyner & Spruill 

R. Carlos Carballada, Treasurer 
Vice-Chancellor 

New York State Board of Regents 
President and Chief Executive Officer 
Central Trust Company 

Marc S. Tucker, President 

National Center on Education and the Economy 

Anthony P. Carnevale 

Vice President of National Affairs and Chief Economist 
American Society for Training and Development 

Sarah H. Cleveland 

Law Student 
Yale Law School 

Hillary Rodham Clinton 

Partner 

Rose Law Firm 

Thomas W. Cole, Jr. 

President 

Clark Atlanta University 

VanBuren N. Hansford, Jr. 

President 

Hansford Manufacturing Corporation 

Louis Harris 

Chief Executive Officer 
Louis Harris and Associates 

Barbara R. Hatton 

Deputy Director 

Education and Culture Program 

The Ford Foundation 

Guilbert C. Hentschke 

Dean 

School of Education 

University of Southern California 



Vera Katz 

Speaker of the House 

Oregon House of Representatives 

Thomas H. Kean 

President 
Drew University 

Arturo Madrid 

President 

The Thomas Rivera Center 

Ira C. Magaziner 

President 
SJS, Inc. 

Shirley M. Malcolm 

Head 

Directorate of Education and Human Resources 
American Association for the Advancement of Science 

Ray Marshall 

Chair in Economics and Public Affairs 
L.B.J. School of Public Affairs 
University of Texas at Austin 

Peter Mc Walters 

Superintendent 

Rochester City School District 

Richard P. Mills 

Commissioner of Education 
State of Vermont 

Philip H. Power 

Chairman 

Suburban Communications Corporation 

Lauren B. Resnick 

Director 

Learning Research and Development Center 
University of Pittsburgh 

David Rockefeller, Jr. 

Vice Chairman 

Rockefeller Family & Associates 

Adam Urbanski 

President 

Rochester Teachers' Association 

Robert F. Wagner, Jr. 

President 

New York City Board of Education 
Kay R. Whitmore 

Chairman, President, and Chief Executive Officer 
Eastman Kodak Company] 



Appendix XIX 



"Taxonomy" 

Excerpts from a newsletter from an Education Researcher, 1 written in 1980. 



1980: Mrs. Margaret Oda of the Hawaii Department of Education mentioned that much help 
had come in Hawaii's curriculum from Madelyn Hunter's Elementary Laboratory School at 
the University of California, at Los Angeles. The Publisher of this newsletter wrote Madelyn 
Hunter and obtained data on her teaching concepts. In the material which she sent to us, the 
elusive term "Taxonomy" surfaced once again. On page 2 of "Audio Visual Materials" which 
she sent, two films are listed: 

Item 2: "Objectives in the Cognitive Domain." In a clear and comprehensive language Dr. 
Hunter teaches the 6 levels of Bloom's Taxonomy Of Educational Objectives: Handbook I: 
Cognitive Domain. 

Item 3: "Objectives in the Affective Domain. " With remarkable clarity Dr. Hunter teaches the 
Krathwohl Taxonomy of Educational Objectives: Handbook IT. Affective Domain. 

Once again, as Taxonomy emerged, the Publisher of this newsletter decided it was time to 
see what the educational Master Planners had in mind for America's children. In the material 
which follows, we will focus our attention mostly on the Affective Domain since space does 
not allow us to consider all three domains. And, because from a relevant standpoint, it is the 
Affective Domain which should receive our immediate attention, since that is one of the domains 
which [our state's] own Accountability Resolution embraces. We have read many descriptions 
from many articles of Taxonomy, but after reading the plan itself felt actual excerpts were the 
only way to do justice to a plan which otherwise might have been cast off as a figment of our 
imagination. Excerpts from [Taxonomy of Educational Objectives] Handbook II follow: 



A- 11 3 



A- 11 4 



The three domains of the Taxonomy: 

I. COGNITIVE: Objectives which emphasize remembering or reproducing something 
which has presumably been learned, as well as objectives which involve solving of some 
intellective task for which the individual has to determine the essential problem and then 
reorder given material or combine it with ideas, methods, or procedures previously learned. 
Cognitive objectives vary from simple recall of material learned to highly original and 
creative ways of combining and synthesizing new ideas and materials. We found that the 
largest proportion of educational objectives fell into this domain. 

II. AFFECTIVE: Objectives which emphasize a feeling tone, an emotion, or a degree 
of acceptance or rejection. Affective objectives vary from simple attention to selected 
phenomena to complex but internally consistent qualities of character and conscience. We 
found a large number of such objectives in the literature expressed as interests, attitudes, 
appreciations, values, and emotional sets or biases. 

III. PSYCHOMOTOR: Objectives which emphasize some muscular or motor skills, 
some manipulation of material objects, or some act which requires a neuromuscular 
co-ordination. We found few such objectives in the literature. When found, they were 
most frequently related to handwriting and speech and to physical education, trade, 
and technical courses. 

...A much more serious reason for the hesitation in the use of affective measures 
for grading purposes comes from somewhat deeper philosophical and cultural values. 
Achievement, competence, productivity, etc., are regarded as public matters. Honors are 
awarded for high achievement, honor lists may be published by the Dean, and lists of 
National Merit Scholarship winners may be printed in newspapers. In contrast, one's 
beliefs, attitudes, values and personality characteristics are more likely to be regarded as 
private matters, except in the most extreme instances already noted. My attitudes toward 
God, home, and family are private concerns, and this privacy is generally respected. My 
political attitudes are private. I may reveal them if I wish, but no one can force me to do so. 
In fact, my voting behavior is usually protected from public view. Each man's home is his 
castle, and his interests, values, beliefs and personality may not be scrutinized unless he 
voluntarily gives permission to have them revealed. This public-private status of cognitive 
vs. affective behaviors is deeply rooted in the Judeo-Christian religion and is a value highly 
cherished in the democratic traditions of the Western World. 

Closely linked to this private aspect of affective behavior is the distinction frequently 
made between education and indoctrination in a democratic society. Education opens up 
possibilities for free choice and individual decision. Education helps the individual to 
explore many aspects of the world and even his own feelings and emotion, but choice 
and decision are matters for the individual. Indoctrination, on the other hand, is viewed 
as reducing the possibilities of free choice and decision. It is regarded as an attempt to 
persuade and coerce the individual to accept a particular viewpoint or belief, to act in a 
particular manner, and to profess a particular value and way of life. 

THE CONTRIBUTIONS OF A TAXONOMY OF AFFECTIVE OBJECTIVES 

If affective objectives and goals are to be realized, they must be defined clearly; 
learning experiences to help the student develop in the desired direction must be provided; 
and there must be some systematic method for appraising the extent to which students 
grow in the desired ways. 



Appendix XIX 



A- 



...The more we carefully studied the components... the clearer it became that 
a continuum might be derived by appropriately ordering them. Thus the continuum 
progressed from [to] a level at which the individual is merely aware of a phenomenon, 
being able to perceive it. At a next level he is willing to attend to phenomena. At a next 
level he responds to the phenomena with a positive feeling. Eventually he may feel strongly 
enough to go out of his way to respond. At some point in the process he conceptualizes 
his behavior and feelings and organizes these conceptualizations into a structure. This 
structure grows in complexity as it becomes his life outlook. 

This ordering of the components seemed to describe a process by which a given 
phenomenon or value passed from a level of bare awareness to a position of some power 
to guide or control the behavior of the person. If it is passed through all the stages in which 
it played an increasingly important role in a person's life it would come to dominate and 
control certain aspects of that life as it was absorbed more and more into the internal 
controlling structure. This process of continuum seemed best described by a term which 
was heard at various times in our discussions and which has been used similarly in 
the literature: "internalization." This word seemed an apt description of the process 
by which the phenomenon of value successively and pervasively become a part of 
the individual. 

INTERNALIZATION: ITS NATURE 

English and English (1958) define it as "incorporating something within the mind or 
body; adopting as one's own the ideas, practices, standards, or values of another person 
or of society" (p. 272). 

...Thus in the Taxonomy, internalization is viewed as a process through which there is 
at first an incomplete and tentative adoption of only the overt manifestations of the desired 
behavior and later a more complete adoption. 

. . .The term is a close relative of the term "socialization," which, though it is often used 
as a synonym... [properly means]... "conformity in outward behavior without necessarily 
accepting the values." They define socialization as "the process whereby a person... 
acquires sensitivity to social stimuli... and learns to get along with, and to behave like 
others in his group or culture."... (p. 508) 

English and English's concept of socialization helps to define a portion of the 
content of the affective domain — that which is internalized.... [T]his definition must 
be interpreted broadly since "sensitivity to social stimuli" must include the arts as 
well as others' behavior. 

This definition suggests that the culture is perceived as the controlling force in the 
individual's actions.... [0]ur schools, in their roles as developers of individualism and 
as change agents in the culture, are not solely concerned with conformity.... The term 
"internalization" by referring to the process through which values, attitudes, etc., in general 
are acquired, is thus broader than socialization, which refers only to the acceptance of the 
contemporary value pattern of the society. 

...The term "internalization" refers to this inner growth which takes place as there is 
"acceptance by the individual of the attitudes, codes, principles, or sanctions that become a 
part of himself in forming value judgments or in determining his conduct."... 

Kelman (1958) used the term "internalization" in describing a theory of attitude 
change. He distinguished three different processes (compliance, identification, and 
internalization) by which an individual accepts influence or conforms. These three 
processes are defined as follows: 

[1] Compliance can be said to occur when an individual accepts influence because 
he hopes to achieve a favorable reaction from another person or group. He adopts 



A- 11 6 



the induced behavior not because he believes in its content but because he 
expects to gain specific rewards or approval and avoid specific punishments or 
disapproval by conforming. 

[2] Identification can be said to occur when an individual accepts influence because 
he wants to establish or maintain a satisfying relationship to another person or 
group (e.g., teacher or other school authority).... The individual naturally believes 
in the response which he adopts through identification.... The satisfaction from 
identification is due to the act of conforming as such. 

[3] Internalization can be said to occur when an individual accepts influence 
because the content of the induced behavior — the ideas and actions of which it is 
composed — is intrinsically rewarding. He adopts the induced behavior because it 
is congruent with his value system.... Behavior adopted in this fashion tends to be 
integrated with the individual's existing values. Thus, the satisfaction derived from 
internalization is due to the content of the new behavior. 

...The Taxonomy uses the term "internalization" to encompass all three of Kelman's 
terms, recognizing them as different stages in the internalization process. 

A NEW LOOK AT CURRICULUM, EVALUATION, AND RESEARCH (Chapter 6) 

...The Taxonomy has been used by teachers, curriculum builders, and educational 
research workers as one device to attack the problems of specifying in detail the expected 
outcomes of the learning process. When educational objectives are stated in operational and 
detailed form, it is possible to make appropriate evaluation instruments and to determine, 
with some precision, which learning experiences are likely to be of value in promoting the 
development of the objective and which are likely to be of little or no value. 

It is this increased specificity which we hope will be prompted by the Affective 
Domain part of the Taxonomy.... If affective objectives can be defined with appropriate 
precision, we believe it may be no more difficult to produce changes in students in this 
domain than in the cognitive domain. 

...The securing of the appropriate responses from the individual... requires that the 
new cues and stimuli be received under conditions that make it easy for the individual to 
respond and give him satisfaction from the act of responding.... 

However, as we turn to the objectives which go beyond merely receiving or responding 
to stimuli and cues, we find that the development of learning experiences that are 
appropriate requires far more effort and far more complex sets of arrangements than are 
usually provided in particular classroom lessons and sessions.... 

...It is to be expected that some objectives may take several years to be reached to a 
significant degree.... The ordering of objectives is of importance in both domains, but we 
regard it as of prime importance in the affective domain. 

. . .Some objectives, particularly the complex ones at the top of the affective continuum, 
are probably attained as the product of all, or at least a major portion, of a student's years 
in school. Thus, measures of a semester's or year's growth would reveal little change. 
This suggests that an evaluation plan covering at least several grades and involving the 
coordinated efforts of several teachers is probably a necessity. A plan involving all the 
grades in a system is likely to be even more effective. Such efforts would permit gathering 
longitudinal data on the same students so that gains in complex objectives would be 
measurable.... If we are serious about attaining complex affective objectives, we shall 
have to build coordinated evaluation programs that trace the successes and failures of 
our efforts to achieve them. 

Achievement of Affective Objectives and Behaviors 



Appendix XIX 



A- 11 7 



...For any major reorganization of actual practices and responses to take place, the 
individual must be able to examine his own feelings and attitudes on the subject, bring 
them out into the open, see how they compare with the feelings and views of others, 
and move from an intellectual awareness of a particular behavior or practice to an actual 
commitment to the new practice.... 

What is suggested here, if specific changes are to take place in the learners, is that 
the learning experiences must be of a two-way nature in which both the students and 
teachers are involved in an interactive manner, rather than having one present something 
to be "learned" by the other. 

A. . . finding is emerging from the study of enrichment of educational opportunities in 
the New York public schools, which has been termed "Higher Horizons" (Mayer 1961).... 
The significant thing to remember in this very ambitious project is that the major impact of 
the new program is to develop attitudes and values toward learning which are not shared 
by the parents and guardians or by the peer group in the neighborhood. There are many 
stories of the conflict and tension that these new practices are producing between parents 
and children. There is even more conflict between the students and the members of their 
peer groups who are not participating in the special opportunities. The effectiveness of this 
new set of environmental conditions is probably related to the extent to which the students 
are "isolated" from both the home and peer group during this period of time. It is unlikely 
that such "separation" from the home and peer group would take place after the age of 
sixteen and seventeen. And it is also likely that the earlier new environments are created, 
the more effective they will be. 

From the operational point of view and from the research point of view, it does 
seem clear that, to create effectively a new set of attitudes and values, the individual 
must undergo great reorganization of his personal beliefs and attitudes, and he must 
be involved in an environment which in many ways is separated from the previous 
environment in which he has developed. 

...[T]he changes produced in such a general academic atmosphere which is not 
deliberately created are probably of smaller magnitude than the changes produced where 
the entire environment is organized (deliberately or not) with a particular theme at work. 
In summary, we find that learning experiences which are highly organized and interrelated 
may produce major changes in behavior related to complex objectives in both the cognitive 
and affective domains. Such new objectives can best be attained where the individual 
is separated from earlier environmental conditions and when he is in association with 
a group of peers who are changing in much the same direction and who thus tend 
to reinforce each other. 

In his studies of stability and change in various characteristics, Bloom (1964) finds 
that the individual is more open to some of these major changes earlier in the growth 
period than later.... The evidence points quite convincingly to the fact that age is a factor 
operating against attempts to effect a complete or thorough-going reorganization of attitudes 
and values.... It is quite possible that the adolescent period, with its biological and other 
modifications, is a stage in which more change can be produced than in many other periods 
of the individual's career.... [Tjhere is an increasing stability of interests in the age period of 
about ten to fifteen and that appropriate learning experiences and counseling and guidance 
may do much to develop different kinds of interests. 

Some Additional Research Problems 

...[Bloom] has been attempting to do research on what might be called "peak learning 
experiences." ...[T]he evidence collected so far suggests that a single hour of classroom 
activity under certain conditions may bring about a major reorganization in cognitive as well 



A- 11 8 



as affective behaviors. ... It may very well help us to understand some of the conditions that 
are necessary for major changes in learners in affective objectives.... 

Allport (1954) emphasizes the basic reorganization that must take place in the 
individual if really new values and character traits are to be formed. We are of the opinion 
that as we come to understand this process we may find ways of helping bring about major 
changes in the affective domain with less in the way of trauma and conflict than now 
seems to be the case. Is it possible for individuals to take on the new without rejecting 
the old? Is it possible that programs of the Higher Horizons type (Mayer, 1961) help 
individuals become motivated toward higher education and the new values involved 
in academic work without at the same time bringing about great conflict and tension 
between the individual and his home? 

...However, back of all the more operational and psychological problems is the basic 
question of what changes are desirable and appropriate. Here is where the philosopher 
and behavioral scientist must find ways of determining what changes are desirable and 
what changes are necessary.... It is not enough merely to desire a new objective or to wish 
others to be molded in the image that we find desirable or satisfactory.... New objectives 
are important, but they must be thought through very carefully, and all must be willing to 
pay the price if they are to be obtained. 

...Can the schools take the initiative in the affective domain, or must they approach 
it with great caution and hesitation? We leave this problem to the curriculum makers, the 
educational philosophers, and the social and political forces which may or may not make 
certain objectives clearly desirable and even necessary. 

The Affective domain is, in retrospect, a virtual "Pandora's Box.". . . We are not entirely 
sure that opening our "box" is necessarily a good thing; we are certain that it is not likely 
to be a source of peace and harmony among the members of the school staff, [but] our 
"box" must be opened if we are to face reality and take action. 

It is in this "box" that the most influential controls are to be found. The affective 
domain contains the forces that determine the nature of an individual's life and 
ultimately the life of an entire people.... Education is not the rote memorization of 
meaningless material to be regurgitated on an examination paper. Perhaps the two 
Taxonomy structures may help us to see the awesome possibilities of the relations 
between students-ideas-teachers. 

The Philosophy... The Commitment 

...Erikson describes the achievement of integrity, which is the hallmark of maturity as: "the 
age's accrued assurance of its proclivity for order and meaning. It is a post-narcissistic love 
of the human ego — not of the self — as an experience which conveys some world order and 
spiritual sense no matter how dearly paid for. It is the acceptance of one's one and only 
life cycle as something that had to be and that, by necessity, permitted of no substitutions; 
it thus means a new, a different love of one's parents.... Although aware of the relativity 
of all the various lifestyles which have given meaning to human striving, the possessor of 
integrity is ready to defend the dignity of his own lifestyle against all physical and economic 
threats. For he knows that an individual life is the accidental coincidence of but one life 
cycle with but one segment of history; and that for him all human integrity stands 
or falls with the one style of integrity of which he partakes. The style of integrity 
developed by his culture or civilization thus becomes the "Patrimony of his soul," 
the seal of his moral paternity of himself. Before this final solution, death loses its 
sting (Erikson, p. 232).... 



Appendix XIX 



A- 



A Condensed Version of the Affective Domain 
of the Taxonomy of Educational Objectives 

1.0 Receiving (Attending) 

At this level we are concerned that the learner be sensitized in the existence of certain 
phenomena and stimuli; that is, that he be willing to receive or to attend to them. This is 
clearly the first and crucial step if the learner is to be properly oriented to learn what the 
teacher intends that he will.... Because of previous experience (formal or informal), the 
student brings to each situation a point of view or set which may facilitate or hinder his 
recognition of the phenomena to which the teacher is trying to sensitize him. 

1.1 Awareness 

Awareness is almost a cognitive behavior.... [W]e are not so much concerned with 
a memory of, or ability to recall, an item or fact as we are that, given appropriate 
opportunity, the learner will merely be conscious of something. 

1.2 Willingness to Receive 

In this category we have come a step up the ladder.... At a minimum level, we 
are here describing the behavior of being willing to take notice of the phenomena 
and give it his attention. 

1.3 Controlled or Selected Attention 

In some instances it may refer not so much to the selectivity of attention as to 
the control of attention, so that when certain stimuli are present they will be 
attended to. There is an element of the learner's controlling the attention here, 
so that the favored stimulus is selected and attended to despite competing and 
distracting stimuli. 

2.0 Responding 

. . .This is a very low level of commitment, and we would not say at this level that this was "a 
value of his" or that he had "such-and-such an attitude."... [W]e could say that he is doing 
something with or about the phenomena besides merely perceiving it.... 

...Most commonly we use the term to indicate the desire that a child become 
sufficiently involved in or committed to a subject, phenomenon, or activity that he will seek 
it out and gain satisfaction from working with it or engaging in it. 

2.1 Acquiescence in Responding 

We might use the word "obedience" or "compliance" to describe this behavior.... 
The student makes the response, but he has not fully accepted the necessity 
for doing so. 

2.2 Willingness to Respond 

...There is the implication that the learner is sufficiently committed to exhibiting 
the behavior that he does so not just because of a fear of punishment, but "on his 
own" or voluntarily. It may help to note that the element of resistance or of yielding 
unwillingly, which is possibly present at the previous level, is here replaced with 
consent of proceeding from one's own choice. 

2.3 Satisfaction in Response 

The additional element in the step beyond the Willingness to Respond level, the 
consent, the assent to responding, or the voluntary response, is that the behavior 
is accompanied by a feeling of satisfaction, an emotional response, generally of 
pleasure, zest, or enjoyment.... Just where in the process of internalization the 
attachment of an emotional response, kick, or thrill to a behavior occurs has 
been hard to determine. 



A-120 



3.0 Valuing 

This is the only category headed by a term which is in common use in the expression of objectives 
by teachers. Further, it is employed in its usual sense: that a thing, phenomenon, or behavior has 
worth. This abstract concept of worth is in part a result of the individual's own valuing or assess- 
ment, but it is much more a social product that has been slowly internalized or accepted and has 
come to be used by the student as his own criterion of worth.... 

...At this level, we are not concerned with the relationships among values but rather with the 
internalization of a set of specified ideas, values.... [T]he objectives classified here are the prime 
stuff from which the conscience of the individual is developed into active control of behavior. 

3.1 Acceptance of Value 

The term "belief," which is defined as "the emotional acceptance of a proposition or doc- 
trine upon what one implicitly considers adequate ground" (English & English, 1958, p. 64), 
describes quite well what may be thought of as the dominant characteristic here.... One of 
the distinguishing characteristics of this behavior is consistency of response. It is consistent 
enough so that the person is perceived by others as holding the belief or value.... [H]e is both 
sufficiently consistent that others can identify the value, and sufficiently committed that he is 
willing to be so identified. 

3.2 Preference for a Value 

...Behavior at this level implies not just the acceptance of a value to the point of being willing 
to be identified with it, but the individual is sufficiently committed to the value to pursue it, 
to seek it out, to want it. 

3.3 Commitment 

...In some instances this may border on faith, in the sense of it being firm emotional accep- 
tance of a belief upon admittedly non-rational grounds. Loyalty to a position, group, or cause 
would also be classified here. 

The person who displays behavior at this level is clearly perceived as holding the value. ... 
He tries to convince others and seeks converts to his cause.... There is a tension here which 
needs to be satisfied; action is the result of an aroused need or drive. There is a real motiva- 
tion to act out the behavior. 

4.0 Organization 

As the learner successively internalizes values, he encounters situations for which more than one 
value is relevant. Thus, necessity arises for a) organization of the values into the system, b) the 
determination of the interrelationships among them, and c) the establishment of the dominant and 
pervasive ones.... This category is intended as the proper classification for objectives which describe 
the beginnings of the building of a value system. 

4.1 Conceptualization of a Value 

...This permits the individual to see how the value relates to those that he already holds or to 
new ones that he is coming to hold. 

4.2 Organization of a Value System 

Objectives properly classified here are those which require the learner to bring together a com- 
plex of values, possibly disparate values, and to bring these into an ordered relationship with 
one another.... This is, of course, the goal of such objectives, which seek to have the student 
formulate a philosophy of life. 

5.0 Characterization by a Value or Value Complex 

At this level of internalization the values already have a place in the individual's value hierarchy, are 
organized into some kind of internally consistent system, have controlled the behavior of the individual 
for a sufficient time that he has adapted to behaving this way; and an evocation of the behavior no 
longer arouses emotion or affect except when the individual is threatened or challenged. 

5.1 Generalized Set 

The generalized set is that which gives an internal consistency to the system of attitudes and 
values at any particular moment.... It is a persistent and consistent response to a family of 
related situations or objects. 

5.2 Characterization 



Appendix XIX 



A- 121 



...[T]he peak of the internalization process.... Thus, here are found those objectives 
which concern one's view of the universe, one's philosophy of life, one's "Weltanschau- 
ung" — a value system having as its object the whole of what is known or knowable. 

As the title of the category implies, these objectives are so encompassing that 
they tend to characterize the individual almost completely. 



Endnote: 

1. The researcher who produced this piece wishes to remain anonymous. 



Appendix XX 



"The Skinner-Box' School" 

"The 'Skinner-Box' School" by Jed Brown was published in the March 1994 issue of Squibbs 
and is reprinted here in its entirety. 

Outcome-Based Education (OBE) has become a blight on the landscape of our national 
heritage. After only a few years of OBE, whole school systems are beginning to wither and 
die. Much worse, the children, their minds once fertile fields of intellectual soil, are even 
now being infected by the worm of ignorance. True learning is starved to death, as all of 
the nutrients of sound academic practice are being replaced with a dust-bowl curriculum 
that is structured to secure proper attitudes for the "Brave New World." Sadly, the only 
"outcome" of OBE will be a baser society, a society in which the nobility of the mind is 
lost to the savagery of enslavement. 

But wait! Parents have been told that Outcome-Based Education has nothing to do 
with changing the attitudes and values of their children; that OBE will improve learning for 
all children through "best-practices" research. What parents are not being told is that the 
research base for OBE is from the field of psychology, not education; that in psychology the 
term "learning" is synonymous with the term "conditioning." What parents are not being 
told is that Outcome-Based Education is not education at all; it is but the hollow substitute of 
psychological conditioning or, as it is sometimes called, behavior modification. 

Why is conditioning replacing the teaching/learning process in our schools? If the object 
is to change the attitudes and values of the young, why would "behavior modification" be 
used? Why not work with attitudes and values directly? Just tell the children what they 
must believe! After all, the conventional wisdom is that attitudes control behavior. If a child 
develops the "right" attitudes he will behave in the "right" manner. Beyond the fact that 
parents would not stand for such an intrusion as an overt assault on traditional values, 
psychologists know something that lay people do not. They realize that the direct approach 
to changing values does not work. 

Modern psychological research suggests that the opposite of conventional wisdom is 



A- 122 



Appendix XX 



A-123 



true. It is our behavior that shapes our attitudes, not the other way around. Therefore, to 
control a child's attitudes and values it is first necessary to modify the child's behavior. If the 
child has the "right" behavior, then his attitude will change to accommodate the behavior, 
his value system will change to reflect his new set of attitudes. It is like falling dominoes: if 
the first piece is toppled, then the rest will tumble after. Thus, conditioning, i.e., modifying 
behavior, is the perfect method for instilling in children the new value system required 
of citizens of the New World Order. Our schools know that changing behavior is the first 
domino. Remember, "the student shall demonstrate." 

To understand the devastation of OBE conditioning, it is important to know its origins 
and how it is being used to change children forever. The lineage of psychological conditioning 
can be formally traced back to the early part of this century, to an American psychologist 
named John B. Watson. Watson is credited as the father of the Behaviorist School of 
Psychology. He believed that psychology should become the science of behavior, discarding 
references to thoughts, feelings, and motivation. For Watson, only that which was observable 
was important. The goal of psychology, he thought, should be to predict a behavioral 
response given a particular stimulus. 

Further, it was a time of great debate in psychology. The debate centered on whether 
heredity or the environment had the most profound effect on the development of the 
individual. Watson believed that heredity had little or no effect, that a person's development 
was almost totally dependent upon his environment. In fact, Watson boasted, 

Give me a dozen healthy infants, well formed, and my own specified world to bring 
them up in, and I'll guarantee to take any one at random and train him to become 
any type of specialist I might select — doctor, lawyer, artist, merchant-chief, and yes, 
even beggar-man and thief, regardless of his talents, penchants, tendencies, abilities, 
vocations, and race of his ancestors. 

Watson's statement is at the heart of OBE. Watson became the most influential force 
in spreading the idea that human behavior was nothing more than a set of conditioned 
responses. According to the narrow view of Behaviorism, learning is nothing more than 
"a relatively permanent change in an organism's behavior due to experience." Other 
psychologists first, then educational leaders, and finally rank-and-file teachers have been 
persuaded to adopt the Behaviorists' view of education. The richness of education is thus 
lost, as the schooling experience is reduced to only applied learning. No longer does learning 
enhance the internal locus of man — it is but an external shell. The curriculum has become 
hollow and learning has become mere conditioning. 

Three different types of psychological conditioning have invaded schools with Outcome- 
Based Education and education reform. Each type has its specified purpose in controlling the 
behavior, and therefore the minds, attitudes, and values of our young. The first is Classical 
Conditioning, developed by a Russian physiologist named Ivan Pavlov only a few years 
before Watson's conception of Behaviorism. The second, credited to B.F Skinner, is 
Operant or Instrumental Conditioning. The third, attributed to Albert Bandura, is 
Observational Learning. Each of these Behaviorist conditioning approaches is woven 
through the OBE reforms of education to accomplish only one thing: to control attitudes 
by controlling behavior. 

Classical, or Pavlovian Conditioning can be defined as creating a relatively permanent 



A- 124 



change in behavior by the association of a new stimulus with an old stimulus that elicits a 
particular response. Working on physiology experiments, Pavlov noted that each time the 
dogs he used as subjects were to be fed they began to salivate. He identified the food as the 
"old" stimulus and the salivation as the response, or behavior. Pavlov rang a bell each time 
the food was presented to the dogs. The bell was identified as the "new" stimulus. After 
several pairings of the bell and the food, he found that the dogs would salivate with the bell 
alone. A change in behavior had occurred. 

All well and good, but what do dogs, food, saliva, and bells have to do with changing 
attitudes in children? Just like Pavlov's dogs, children's behavior patterns can be changed 
with Classical Conditioning. Upon sufficient pairings, a child will associate old behavior 
patterns and consequent attitudes with new stimuli. The Pavlovian approach is therefore a 
potent weapon for those who wish to change the belief structures of our children. Further, 
Classical Conditioning may be used to set children up for further conditioning that is 
necessary for more complex attitude shifts. The method is being used to desensitize 
children to certain issues that heretofore would have been considered inappropriate for 
school-age children. 

One example of an attitude change by Pavlovian conditioning revolves around the word 
"family." The term "family," as it is applied to the home setting, is used as the old stimulus. 
The allegiance to parents and siblings that is normally associated with the term "family" may 
be thought of as the response, or behavior. With the current education reform movement the 
child is told by the teacher that the school class is now the family. Thus, the term "class" 
may be thought of as the new stimulus. By continually referring to the class or classroom as 
the family, an attitude change takes place. By association, the child is conditioned to give 
family allegiance to the class and teacher. 

An example of desensitizing children through Classical Conditioning can be seen 
in the inclusion of gender orientation within the curriculum. The school setting may be 
thought of as the old stimulus. The formal school setting carries with it a whole set of 
emotional-behavioral responses, or behaviors. There is an air of authority and legitimacy 
that is attached to those subjects included in the curriculum. This feeling of legitimacy 
can be considered a behavioral response. By placing the topic of gender orientation into 
the curriculum, it is associated with legitimacy of the school settings. Thus, children are 
desensitized to a topic that is different from the traditional value structure, and hence they 
are predisposed to further conditioning. 

The real meat and potatoes of Outcome-Based Education is Operant Conditioning, or 
Rat Psychology, so called because B.F. Skinner used rats as his experimental subjects. A 
"Skinner Box," a box containing a press bar and a place to dispense a food pellet, is used 
to condition the rat to press the bar (the behavior) . A food pellet (the stimulus) is used to 
reinforce the desired behavior, pressing the bar. The rat, having no idea what to expect, 
is placed in the box. Once in the box, the rat's movements are exploratory and random. 
As soon as the rat looks towards the bar, the experimenter releases a food pellet. After 
eating the food the rat resumes his random movement. Another look, another pellet. 
Another look, another pellet. 

Once the rat is trained to look at the bar, he is required to approach the bar before the 
pellet is delivered. The rat must then come closer and closer to the bar each time before 
reinforcement is given. Over time, the rat's behavior is slowly shaped by the experimenter; 
each trial the rat successively approximates more closely the ultimate behavior of pressing 



Appendix XX 



A-125 



the bar. Eventually the well-conditioned rat will continually press the bar as fast as he 
can eat. Operant Conditioning is, therefore, defined as a relatively permanent change 
in behavior by successive approximations through repeated trials using positive or 
negative reinforcements. 

The concept of "successive approximation" is key to understanding the use of Operant 
Conditioning with Outcome-Based Education. Just as for the rat, the experimenter (the 
State) establishes the ultimate goals for children (pressing the bar) . OBE requires that specific 
behavioral outcomes be designed such that the children must master each outcome in 
succession. The outcomes are designed in a spiral fashion, such that as the child goes further 
in school, the outcomes more closely approximate the ultimate goals. As children master 
an outcome, the reinforcement is found in approval (food pellets). Another outcome, more 
approval. Another outcome, more approval (successive approximation). When the Skinner Box 
experiment is complete, our children, like rats, will dance to the tune of the State. 

Observational Learning, although it does not carry the name conditioning, has been 
described by Dollard and Miller as a special case of Operant Conditioning. It is Operant 
Conditioning applied to social behavior. Observational Learning is the twenty-five cent 
word for modeling. There are two purposes for Observational Learning in the schools. 
First, it is a method used to condition a host of social behaviors, like parenting styles, 
gender roles, problem-solving strategies, and discipline boundaries. Second, it is used 
as reinforcer of the behaviors and attitudes previously conditioned with Classical and 
Operant Conditioning. 

According to Observational Learning, people model the behavior of those within 
their "reference groups." Under normal conditions, the child's primary reference group is 
the family. Nevertheless, children are being conditioned with Classical methods to shift 
allegiance to their new school family, their new reference group. Once the new group is 
established, schools use surveys to gauge attitudes and then orchestrate the conditioning 
process through Observational Learning. Relying almost exclusively on cooperative 
learning (group learning), OBE reforms unfortunately use Observational Learning to 
establish and enforce the proper behaviors and attitudes through peer pressure and a 
forced "group think" process. 

The idea that our schools are not dealing in attitudes and values is ludicrous. The psy- 
chologists have ripped the schools from parents and teachers alike. Their only objective is 
to create children who may look different, but behave the same, think the same, and believe 
the same. They shall create in each child the "perfect child." Like John B. Watson, they shall 
create children as they see fit. They shall do it with conditioning, not teaching. Is it any wonder 
that our schools are failing to educate children when we use rats as the example of exemplary 
learning? Welcome to the "Brave New World." Welcome to the "SKINNER BOX SCHOOL." 



Appendix XXI 



"Status of Internationalization of Education" 

"Status of Internationalization of Education" by Charlotte Iserbyt originally appeared in 
The Christian Conscience (March 1998) and is printed here in its entirety with updates 
to reflect more recent events. 



Those participating in the Direct Instruction (DI)/Core Knowledge (CK) debate on an 
anti-education reform Internet discussion loop or elsewhere may wish to step back and take 
a look at the big picture, without which none of the myriad components of restructuring 
can be fairly discussed or judged. At present it seems that some very sincere people, who 
have done excellent work in the past, have a severe case of tunnel vision. They must get 
themselves out of the tunnel in order to survey the landscape. 

Ingredients in the recipe 

The recipe for the international curriculum/ workforce training agenda calls for implementation 
of the following components. (Noted after each component in italics is the status of each 
agenda item, i.e., whether or not the component[s] has/have been accomplished.) 

(1) Federal/International Control of Education. The creation of the U.S. Department 
of Education in 1978 established the official link between U.S. education and all the 
international agencies and Ministries of Education which answer to the United Nations and 
its lifelong learning agenda. (Done.) 

(2) Passage of Goals 2000 [done], STW Opportunities Act [done], Careers Act. 

(Done.) 

(3) Funding. Federal government funding of the instructional method, computers, 
curriculum, national assessment, and workforce training. All funding is now in place with 
the exception of pending Senate passage of the CAREERS Act and pending Senate passage of 



A- 126 



Appendix XXI 



A-127 



the Reading Excellence Act (the international Mastery Learning/Direct Instruction method) . 
Professor S. Alan Cohen, Associate Director of the Center for Outcome-Based Education at 
the University of San Francisco, said (at a conference on Mastery Learning sponsored by 
the Maine Association for Supervision and Curriculum Development, May 13, 1983, at 
Saco, Maine): "In 1976 Block and Burns published in AERA research around the world on 
mastery learning. UNESCO committed to ML all over the world.... [We] have evaluated 
data worldwide." (Funding for all of the above is now in place due to the pounding 
of the last nails in the coffin: passage of the CAREERS Act and the Reading Excellence 
Act in late 1998.) 

(4) Skinnerian Method. Direct Instruction/Mastery Learning/OBE are necessary for 
global workforce training which is outcome, results, performance-based training — not 
education. Education has not been performance-based, traditionally — with the exception 
of the arts — since traditional education deals with the intellect, not just knee-jerk muscle 
movements based on Pavlov and B.F. Skinner's stimulus-response (S-R-S). The computer 
has all the bells (rewards) and whistles (punishments) to achieve OBE's standards in 
the academic, workforce, and value change areas. The new label for the old OBE is now 
"standards-based education." Anyone out there who knows of an even newer label, please let 
me know. (Done when Senate approved Reading Excellence Act J 

(5) Sequential Core Curriculum. The Texas Alternative Document (TAD) and E.D. 
Hirsch's Core Knowledge Sequence, in conjunction with scripted curricula such as DISTAR, 
ECRI, or SUCCESS FOR ALL— which specify exactly what is to be taught, how it is to 
be taught, and when it is to be taught— are good examples of what could be used. The 
TAD could provide the framework for the national curriculum since it supports the 
method — Direct Instruction — and has the support of key players in restructuring, including 
E.D. Hirsch, Chester Finn, etc. 

If subject (content) is not specific and sequential, students' performance is difficult to 
"measure." One of Skinner's criteria for learning is that results/outcomes be "measurable." 
This type of core curriculum is ready-made for computer-assisted instruction/programmed 
learning. Curriculum must also be the same for all students; otherwise, international 
assessment using the computer will be virtually impossible. The main reason the educrats 
want to control private and home school education is that results from the computerized 
international education system will be skewed (unreliable and incomplete) if all the world's 
children are not in the computer, thus denying the corporate trainers and educrats the 
necessary information for future planning and remediation on an international scale. 
Remember, we are looking at a global planned economy. (Choice of core curriculum/ framework 
is pending, but law requires that it be "scientific" and "research-based" — which limits the 
choices to behaviorist programs.) 

A European Union Press Release (www.eurunion.org/news/home/htm) Feb. 3, 1998 
(No. 7/98) stated: 

International Conference in Akron to Explore Issues of Workforce Development.... 
Representatives of industry, government and education from throughout the United States 
and the European Union (EU) will gather in Akron, Ohio from February 9-11 to discuss 
issues of workforce development and the increasing shortage of skilled workers available 



A-128 



to fill jobs in industry. The Akron Forum of Regional Collaboration to Develop Learning 
Strategies for the Global Economy is a joint undertaking of the United States Information 
Agency (USIA) and the European Commission, and will be hosted by the Northeast 
Ohio Trade and Economic Consortium (NEOTEC). The Akron Forum is an important 
initiative under the New Transatlantic Agency (NTA) which, through more than one 
hundred joint projects, reaffirms strong and enduring ties between the United States 
and the European Union. . . . 

(6) Global Ethics/Values. A CIVITAS press release dated "4/7/97" says: 

"UNESCO Chief Cites Link Between Democracy and Development... Stresses Role of Values," 
by David Pitts USIA Staff Writer. Washington. Sustainable development cannot occur 
"without freedom, justice, and democracy," says Federico Mayor, director-general of the 
United Nations Educational, Scientific and Cultural Organization (UNESCO). "Sustainable 
development requires sustainable democracy," he added in an April 7 address before 
the International Steering Committee of CIVITAS, an international consortium for civic 
education that is holding its spring meeting at the White House conference center. According 
to Mayor, "the partnership between UNESCO and CIVITAS is very important" in helping 
to promote the culture of democracy around the globe.... The "moral aspects" of the civic 
education movement were also underlined by Mayor. This means encouraging those values 
and beliefs that best allow for peace and freedom to thrive, he said.... 

CIVITAS was initiated in June 1995 at the CIVITAS Prague conference. Following that 
meeting, participants representing 50 nations signed a declaration pledging "to create 
and maintain a worldwide network that will make civic education a higher priority on 
the international agenda." 

Participants at the Prague Conference included Diane Ravitch, a member of Hudson 
Institute's Education Policy Committee and Educational Excellence Network, and the late 
Albert Shanker, former President of the American Federation of Teachers. Of interest in this 
regard is the fact that the AFT's "Education for Democracy Project" was launched by the 
AFT in cooperation with the Educational Excellence Network and Freedom House (1985), 
and was partially funded by the U.S. Department of Education. (Global ethics curriculum, 
under many different labels, is in progress.) 

(7) Technology which includes robotics and computer-assisted instruction 
(programmed learning). Mastery Learning/Direct Instruction fit like a hand in the glove 
of the computer. They have been made for each other. Skinner said "the computer is the 
sophisticated version of his (Skinner's) box." (Federally-funded OBE/ML, using computers, 
in use in all schools to a different degree, but method not yet mandated. The passage of the 
Reading Excellence Act of 1998 could facilitate this component.) 

(8) Choice. Choice in the form of tuition tax credits, vouchers, charter schools, use of 
public education facilities and materials by home schoolers, apprenticeships with corporations 
which are in partnership with government (corporate fascism), etc., will result in federal 
(international) control of American education. (Pending.) 

(9) Teacher Union Support. Support from the American Federation of Teachers and 



Appendix XXI 



A-129 



the National Education Association seems to be assured. The AFT supports both Direct 
Instruction and Hirsch's Core Curriculum. The NEA supports the new reading research 
recommended in the Reading Excellence Act. Bob Chase, President of the NEA, said in the 
January 1998 issue of Today's Education, "Stop the sound and fury of the phonics vs. whole 
language war: we need both. " (Done.) 

Whole Language vs. Direct Instruction 

How conservatives can so wholeheartedly support what and who the unconstitutional U.S. 
Department of Education has funded in the past (Engelmann and Carnine) and what the U.S. 
Department of Education, AFT, NEA, and, most recently, the left-of-center Learning Alliance 
and President Bill Clinton support is difficult to understand. 

The unconstitutional Reading Excellence Act, passed by Congress in 1998, will for the 
first time in the history of American education mandate a particular method of teaching. In 
order to get approval of the DI method, its use was attached to reading, which is the essential 
tool for learning. If the Direct Instruction method had been attached to legislation related to 
some other discipline, about which controversy was not raging, it is unlikely it would have 
passed the House of Representatives. The whole language controversy facilitated passage of 
this legislation — a perfect example of the dialectic method in action. 

The method, Direct Instruction, will be used to teach all disciplines, including workforce 
skills. Direct Instruction is not content; it is method, as was the 1968 federally-funded 
program Exemplary Center for Reading Instruction (ECRI) which trained teachers (1968-1998) 
in Mastery Learning (virtually the same method as Direct Instruction). Teachers who 
have been trained by ECRI trainers can apply their training to any discipline (math, 
science, history, etc.) . 

Interestingly enough, Siegfried Engelmann, the developer of DISTAR (Direct Instruction), 
is referenced on numerous occasions in the ECRI teacher training as a developer of programs 
based on operant conditioning. ECRI and DISTAR are both based on operant conditioning. 
Skinner said "I could make a pigeon a high achiever by reinforcing it on a proper schedule" 
(operant conditioning), exactly what David Hornbeck, Bill Spady, Thomas Sticht and all the 
education change agents criticized by conservatives, are looking for, right? High achievers in 
the planned global workforce economy. All of this fits nicely into Total Quality Management 
and ISO 9000. That TQM is based on many of the principles of Mastery Learning has been 
admitted by key change agents. 

Whether E.D. Hirsch's Core Knowledge or some other sequential curriculum is used 
will be irrelevant. Hirsch's Core Knowledge seems to be the choice at the present time, but who 
knows? Curriculum for the computer can be changed overnight. The method cannot. Regarding 
Hirsch's so-called credentials and his support of "historical revisionism," the Free Congress 
Foundation's daily programming regarding Hirsch, February 1997 reads: 

A History of Us: All the People by Joy Hakim and published by the Oxford University Press 
has initiated a great deal of controversy concerning its historical revisionism. Discussing 
their review of this textbook on NET's Morning View were Allan Ryskind, senior fellow 
at the National Journalism Center, and Peter LaBarbera, executive director of Accuracy in 
Academia who co-authored a critique of the textbook in the Sept. 12th issue of Human 
Events. According to Ryskind and LaBarbera, the textbook reports that the deficit was 
2.3 trillion dollars when Ronald Reagan left office in 1988 [Ryskind puts the deficit at 
$155 billion, ed.]; claims Ho Chi Minh's goal was to free Vietnam from outsiders; blames 



A-130 



President Truman for China's Communist Government; and credits Fidel Castro for improved 
schools and race relations in Cuba. This textbook is heralded by E.D. Hirsch, who is a cultural 
literacy guide, who's trying to promote standards for school children. And yet, if this is the 
best thing they can do, and this is being lauded even by some conservatives as good history, 
then I think our education system is in bigger trouble than we thought. 

According to The Jim Lehrer News Hour (September 17, 1997) Hirsch said, "National 
testing is a good idea, but be careful of the content." One can assume that national testing 
would suit Hirsch just fine as long as the content is his Core Knowledge. 

One who has watched the educrats turn traditional education on its head over a period 
of years would truly have to be in a coma not to see a very ugly picture emerging. It doesn't 
take a rocket scientist to put together the pieces of this puzzle. The international education 
system could not have been fully implemented without approval of the Skinnerian method, 
and the change agents — using conservative concern over whole language — have succeeded 
in having the Skinnerian method mandated at the national level. 

A matter of morality 

There have been too few people who understand how evil the method is, and who have been 
willing to speak out. The noted philosopher and author Francis Schaeffer has spoken most 
eloquently in opposition to the Skinner method in his book Back to Freedom and Dignity. 
The extent of damage to our children from bad content K-12, outrageous as the outcomes are 
and have been since this writer started researching education in 1973, cannot be compared 
to the damage to our children from the use of operant conditioning K-12. Do parents really 
understand that this method was first used on rats and pigeons in experimental laboratories? 
Human beings are not animals; they have intellect, soul, conscience and creativity. They can 
think. They can figure things out. Direct Instruction or Mastery Learning do not take any of 
these important human aspects into account. 

Those who do understand the dangers inherent in operant conditioning are naturally 
very concerned over the decision to mandate this method of instruction. Concerned parent 
Tracey Hayes, for one, comes to mind as an individual who has been very helpful to me, 
a researcher and writer. Many of us have read much of the medical research on operant 
conditioning. We have written on the subject, but we have never actually "used" the method 
on our own children. Tracey is valuable particularly for this reason — as well as for the fine 
in-depth research she has done as an opponent of whole language which she has at great cost 
made available to all of us. She saw what Engelmann's DISTAR did to her own child. She has 
helped me enormously to understand the reality of this evil method. Those grassroots parents 
researching education are extremely lucky to have her input. 

As for Ann Herzer, we all know her credentials as a long-time traditional phonics reading 
teacher and the courageous stand she took in opposing the Exemplary Center for Reading 
Instruction (ECRI) teacher training. She and Tracey have personally lived out the nightmare 
of operant conditioning and are thus in a position to speak authoritatively regarding the 
method. Do those who support Direct Instruction agree with Ann Herzer's teacher trainer 
who angrily said to her when she resisted the training, "Don't you understand we are training 
our children to be people pleasers?" 

Also, as a member of the AFT, Herzer was responsible for getting a resolution 
unanimously approved by the Arizona affiliate of the AFT to forbid federal funding of operant 



Appendix XXI 



A- 131 



conditioning programs for use on teachers and children. The late Al Shanker, President of 
the AFT, who was Carnegie Corporation's stooge for many years and who supported global 
workforce training, tabled her resolution at the AFT national convention in 1984. He knew 
the Skinner method was necessary for workforce training and admitted to Herzer that he 
was a member of the Trilateral Commission. It should come as no surprise that Shanker's 
successor, Sandra Feldman, also supports the method, this time under the label of Direct 
Instruction, the fraternal twin of ECRI. 

Sometimes one becomes so convinced of the Tightness of a message, due to one's 
respect for the carrier of the message, that one can get off track. I'm afraid that this is 
what is happening with anti-reform researchers and parents across the nation — in the 
tunnel and off the track. 

Those opposing the mandating of the Direct Instruction method have been vilified by 
those formerly considered allies in opposition to education restructuring. Those who oppose 
the method do so not to be contrary. The position they are taking is not primarily related to 
whether one method works better than another method. Our position is primarily a moral 
position. It is wrong to use an animal training method on human beings. Did the great 
intellects and thinkers of this world — scientists, historians, writers, theologians — learn this 
way? Your children should not have their potentials limited by such a method. Why should 
your children be used in this experiment to robotize the world, to train human beings to be 
people-pleasing, cookie-cutter citizens? 

From the above examples one can see that everything is in place. The only missing 
component was mandating the method. Republican support for the Reading Excellence Act 
has handed the method to the internationalist change agents on a silver platter. The Arizona 
legislature jumped the gun on U.S. Senate passage of the Act by considering legislation which 
would implement the Reading Excellence Act in Arizona. We can now expect the same type 
of legislation to surface in all states, and, tragically, to be supported by conservatives, unless 
this warning is heeded. The fact that national testing has been put on hold is meaningless 
since the National Assessment for Educational Progress has received heavy funding since 
1965 and has been used in all states. All that has to be done is to align the NAEP with 
whatever core curriculum and School-to- Work skills are selected for use, and to implement 
the Certificate of Initial Mastery nationwide. 

What Should We Do? 

Call for repeal of the Reading Excellence Act passed by Congress. Lobby against similar 
non-traditional ML/DI phonics legislation in your state. If possible, put your children in 
"good" private schools which receive no tax support or exemptions whatsoever, or, best 
of all, home school your children. 

Oppose passage of legislation supporting tuition tax credits or exemptions, vouchers, 
charter schools, etc. Make sure whatever education you choose is not based on Skinnerian 
Mastery Learning/Direct Instruction by a teacher or using the computer. Teach your children 
to read using traditional phonics reading instruction; e.g. programs by Eller, Blumenfeld, 
Schlafly, Sister Monica, etc. 



Appendix XXII 



"The Thief of American Individualism: 
Total Quality Management and School-to-Work" 

"The Thief of American Individualism: Total Quality Management and School-to-Work" 
by Tim Clem was published in the December 1996 (Vol. 2, No. 11) of The Christian 
Conscience. 

Virtually unknown to parents across the USA is the Federal School-to-Work Opportunities 
Act (STWOA) . For the first time in American history, Government and Business have joined 
together to educate children. Why is this unusual? Government and Business operate together 
in countries such as China, Germany, Russia, Japan and in third world countries, not the USA. 
Right now corporations, along with your local school system, are creating partnerships linking 
the Federal School-to-Work Opportunities Act with your local school district. 

Understanding the TQM Foundation 

School-to-Work is based on the foundation of Total Quality Management (TQM), also known 
as Continuous Quality Improvement (CQI). First introduced and rejected by U.S. companies 
in the post-World War II era, William Edwards Deming, the father of Quality, presented his 
theories to Japan and found himself welcomed as a national hero. Japan claimed that their 
social and economic turnaround came from Mr. Deming's TQM theory. Since this turnaround, 
TQM has been implemented almost entirely within corporate America in hopes to mimic 
Japanese successes. Americans have been subjected to the thought that Japan and other 
countries such as Germany are ahead of the USA in technology and education. 

Education and business theorists believe that Americans must "benchmark" their 
schools and corporate management against the supposed successes of Japan and Germany. 
Their speculation is dead wrong. For example: 

...[T]he American workforce is still 30% more productive than the Japanese. Sixty percent 
of American high school students are more likely to attend college than Japanese. There 
is no evidence that Japanese students learn more in school or that Japanese adults 



A-132 



Appendix XXII 



A-133 



are more literate than Americans. Japanese companies are not more technologically 
advanced than American companies. Japanese companies don't earn more patents 
than American companies. 1 

Only 40% of Japanese homes have sewage systems. 2 American students and workers 
have all been intimidated by misrepresented successes of the Japanese. We are told repeatedly 
that because of the greater dedication of Japanese students and workers we are losing our 
status of world leader. Jobs could be lost, and America could go bankrupt. 

Group Think 

Total Quality teaches students and workers that Americans will never adapt to the preferred 
Japanese methods unless we change our culture. Changing a culture requires a complete 
change in the way we think, a "paradigm shift." Americans willing to search "within" are 
giving up their personal responsibilities and their pursuit of individual happiness in exchange 
for a "we can all work together — appreciate one another as a group" mentality. 

Quality training experts admit that telling employees they must begin an entirely new 
way of thinking is frightening upon inception. One chart shows the "Steps in transition 
management," in which a worker moves from a state of well-being through stages of shock, 
denial, strong emotion (frustration), acceptance, experimental (frustration again), fuller 
understanding and integration. 3 [This is otherwise known as cognitive dissonance, a technique 
utilized to manipulate people into changing behaviors, attitudes, values, etc., ed.] 

Therefore, much time and training is spent in self-esteem building. The employee 
begins to forget the discomfort they first sensed in exchange for comfort offered in group 
encounter sessions called "team building." Slowly, along with fear of losing their future, job, 
home, food, and all precious vitals, they begin to melt into the safety of the workgroup they 
encounter daily. This is labeled as a "team," a "unit," or "family group." This new way 
of thinking is called "higher order thinking skills," which implies that they have reached 
a new intellectual plane. By this type of indoctrination, we are volunteering the loss of 
our supposedly outmoded culture so we may imitate the business management style and 
educational methods of the Japanese. 

The STWOA Grant Application states repeatedly that TQM and CQI shall be the structure 
of this program. At first glance, we associate the word "quality" with goodness; however, 
TQM does not describe "quality" in this manner. TQM defines quality not as an end product 
but as a "process." In order for this process to be implemented, the company must first 
require (as mentioned above) a total culture change, also described as "paradigm shift." 
This paradigm change results in a system where all employees operate under a unified set 
of "values" or corporate beliefs. Workers go through hours upon hours of in-depth group 
training before they become a part of the TQM process. This training teaches workers that 
individual values can hinder the performance of their team. 

Workers who question the training are labeled with names such as "snipers" or 
"renegades." The instructor is taught to use the compliant employees in pressuring the sniper 
to conform. The group then uses a process called "bringing out." Fellow employees make 
statements to the sniper that imply concern for the feelings of the sniper. For example, "Is 
there something we have said or done that makes you not want to join our group?" Or, "What 
would you be giving up if you decided to go along with the rest of us?" Or, "Is it fair to take 
us all down for your one concern?" Eventually, each employee must put aside personal values 



A-134 



in exchange for a common value system within their workgroup. 

Quality training and educational manuals state that once workers adapt to a new method 
of thinking, the workgroup can efficiently function as a team. Individual performance is never 
rewarded or encouraged. All problems in the workplace can be settled by a predetermined 
"Problem-Solving Process." No problem can be solved by an individual; the praise that an 
individual receives from solving a problem could detract from the accomplishments of a 
workgroup and possibly cause hurt feelings. Therefore, all the workers of a group must meet 
and utilize the Problem Solving Model before coming to a solution. This model systematically 
takes the group through a serendipity or encounter group session where methods of free 
discussion called "freewheeling," "round robin," "slip sheet" and "brainstorming" are utilized. 
A sense of security and openness is established through a facilitator. 

A facilitator can develop, in a group which meets intensively, a psychological climate of safety 
in which freedom of expression and reduction of defensiveness gradually occur. " 4 

The facilitator sets the ground rules of the session. Ground rules typically include the 
following directions: no criticizing, no shutting out, all ideas must be recorded, all ideas 
must be evaluated, no preconceived solutions are allowed to be brought to the meeting. A 
solution must have group consensus before it is implemented. All solutions are tracked and 
monitored for effectiveness. By utilizing the Problem-Solving Process, TQM experts ensure 
that the employee and their team will be able to find ways to solve problems on an employee 
level, eliminating costly management input. 

Creating a Kaizen Culture 

TQM labels this employee level of problem solving as "empowerment." These employees are 
to then become a "world class" workgroup, able to compete within a "global" economy. This 
global economy is described as a workplace where a state of continuous quality occurs. This 
state causes change at a very rapid pace and only companies with employees highly trained 
in problem solving and TQM processes can survive. This state is called Kaizen, the Japanese 
word used for describing a state of continual changing where one can always adapt without 
hesitation or question. Reaching this level takes hours of employee group training sessions. 
Therefore, TQM is described as an "evolution to bring about a revolutionary process. " Quality 
experts state that it takes up to ten years for a company and its employees to reach Kaizen. 
Therefore, TQM-based companies are looking for employees that are already "globally 
trained." If a TQM company could hire these Kaizen level employees, millions of dollars can be 
saved in training and more management positions could be eliminated, thus increasing profits 
greatly. If a student has been prepared in the "process," one can see how a recent graduate of 
School-to-Work will be met with open arms within the corporate world. 

The STWOA states that all students will be adept in TQM techniques of problem solving 
and associated behaviors. In addition to Cognitive Skills, all students will be tested to 
determine Affective Skills such as self-esteem, ability to relate to others, diversity, and 
appreciation for other cultures. The STWOA states that student skills will be assessed and 
described according to the Jobs Program Training Act (JPTA). 

JPTA standards are found in the federal skills catalog called Skills and Tasks for Jobs: 
A SCANS Report for America 2000 published by the Secretary's Commission on Achieving 
Necessary Skills (SCANS) of the U.S. Department of Labor. As in Total Quality Management, 



Appendix XXII 



A-135 



all jobs are reduced to a "Task Level." For instance, the SCANS catalog lists the various tasks 
of a farmer: plowing, planting, harvesting, feeding, even menial tasks such as shoveling 
manure. These various tasks are given a rating showing the level of skill needed to accomplish 
each task. This skill rating is then matched with a School-to-Work student, linking the student 
with a vocational career training path that continues throughout the remaining years of the 
student's education. The STWOA student is then placed in a vocational apprenticeship at the 
local Vo-Tech School where he can perfect the skills needed for his future. 

The STWOA student must have school and work-related experience with their 
apprenticeship program. Between the ages of 16 and 17 each student must work in a field 
of their training to gain on-the-job (OTJ) experience. When the student has completed both 
schooling and OTJ requirements, he is given a certificate that enables him to be placed 
in the workforce. Prior to and after STWOA training, the student may allow the state to 
make available his personal scores and records to potential employers. Potential employers 
will then search the STWOA computer database for students meeting job requirements and 
test scores necessary for employment. 

The dangers of the federal STWOA are frightening. Just think: the lifelong vocational 
destiny of a student is determined by a test, and at the most awkward stage of one's 
life — adolescence. Time and perseverance have always been on the side of the American 
Dream. We are in a country where all citizens have had the same opportunity to pursue a 
vocation or goal of their choice at any stage of life if they so desired. STWOA removes these 
entrepreneurial elements and replaces them with social engineering and captivity. 



Endnotes: 

1. Eberts, Ray and Cindelyn. The Myths of Japanese Quality (Prentice Hall: New York, 1995). 

2. "Prosperity's Base: ODA," Japan Times (October 16, 1990), p. 20. 

3. Atkinson, Phillip E. Creating Cultural Change: The Key to Successful Total Quality Management (Pfeiffer & Co, 1990). 

4. Rogers, Carl. Carl Rogers on Encounter Groups (Harper: New York, 1970). 



Appendix XXIII 



"Soviets in the Classroom: America's Latest Education Fad" 

"Soviets in the Classroom: America's Latest Education Fad" by Charlotte T. Iserbyt is a 
pamphlet published in 1989 (America's Future, Inc.: New Rochelle, NY).* 

Education Agreements with the Soviet Union 

Is the repugnant act of burning the American flag more damaging to our nation's political 
integrity than letting the Soviets into our classrooms, in person, on video, or through 
U.S. -Soviet jointly developed curricula? 

One would think so, considering the extensive establishment media coverage given 
the flag decision compared to the wall of silence built around the Soviet invasion of 
American classrooms. 

Maybe America needs a Supreme Court decision similar to the flag-burning decision 
saying it's legal to let the Soviets teach our children and to "put up statues of well known 
Soviet cultural figures in our parks," as called for in the General Agreement between the U.S.A. 
and the U.S.S.R. on Contacts, Exchanges and Cooperation in Scientific, Technical, Educational, 
Cultural and Other Fields, signed in 1985 and 1988 at Geneva and Moscow, respectively. The 
media might find it impossible to "cover up" a Supreme Court decision. 

Perhaps if Americans knew about and understood the deep significance of these 
agreements, their outrage might even exceed that demonstrated over the flag decision. They 
might even call for a fully televised Congressional investigation leading to cancellation of all 
education agreements with the Soviets — government-initiated agreements as well as those 
with tax-exempt private foundations. 

The agreements call for "cooperation in the field of science and technology and 
additional agreements in other specific fields, including the humanities and social sciences; 
the facilitation of the exchange by appropriate organizations of educational and teaching 
materials, including textbooks, syllabi, and curricula, materials on methodology, samples 
of teaching instruments and audiovisual aids, and the exchange of primary and secondary 
school textbooks and other teaching materials... [and] the conducting of joint studies 



A- 136 



Appendix XXIII 



A-137 



on textbooks between appropriate organizations in the United States and the Ministry 
of Education of the U.S.S.R." 

What do the Soviets — who kidnapped 10,000 Afghan children and shipped them to the 
Soviet Union for "re-education" and in the spring of 1989 used poison gas and sharpened 
shovels to disperse a nationalistic demonstration in Soviet Georgia, killing at least twenty 
persons and injuring 200 — have to offer our children in the way of school materials? What 
does a country have to offer our children in the way of school materials which, according 
to an 1987 "out-of-print" book by American Federation of Labor — Council of Industrial 
Organizations (AFL-CIO) entitled Cruel and Usual Punishment: Forced Labor in Today's USSR, 
holds tens of thousands of political prisoners in Soviet prisons, labor camps, and psychiatric 
hospitals, including between four and five million non-political prisoners in slave labor 
camps? What does a country which publishes children's books for disinformation purposes 
overseas — and in the case of books distributed in India, portrays America as "rich, 
uncaring, and prejudiced," and compares us with the Brahmin caste, which is the ruling 
caste much resented by the disadvantaged in India — have to offer our children in the 
way of school materials? 1 

Contrary to the media's portrayal of political change in the Soviet Union, the August 
1986 issue of Comparative Education Review published an article entitled "Aspects of 
Socialist Education: The New Soviet Educational Reform" which states that the Soviet 
reform movement recommends the "intensification of ideological education." A June 2, 
1986 Washington Times article entitled "Russian Education Obsolete" says in a discussion 
of education reform, "The specialist of today should have a thorough Marxist-Leninist 
training." Professor Adam Ulam, the distinguished director of Harvard's Russian Research 
Center, reports that 

[0]ne of the principal goals of military patriotic education is to counteract any pacifist 
tendencies, to teach all Soviet citizens, from the youngest children to pensioners, that 
they must be prepared at any moment to fight for socialism.... The determination to instill 
explicitly military values in the schools comes through with equally striking clarity in 
textbooks and manuals used by teachers. 

Soviet General Popkov wrote in August 1986 in a regional military paper, Sovetskiy 
Voin, that 

[T]he schools are taking on ever increasing importance in military and patriotic 
indoctrination. Party documents on school reform define an extensive, scientifically 
based program for this work. 2 

In light of the above information, which contradicts Gorbachev's glasnost/perestroika 
propaganda, why has our government signed education agreements calling for extensive 
cooperation with the Soviets in curricula development, exchanges of educational materials 
and the conducting of joint studies? 

Why are Soviet educators permitted to do what U.S. Department of Education educators 
are forbidden by law to do: involve themselves in curricula development? 

Why did the U.S. Department of State authorize the unelected, tax-exempt Carnegie 
Corporation, a long-time and well funded advocate of disarmament and "world 
interdependence," to negotiate with the Soviet Academy of Sciences, known to be an 



A-138 



intelligence-gathering arm of the KJB, regarding "curriculum development and the 
restructuring of American education"? Is it because "privately endowed foundations can 
operate in areas government may prefer to avoid" as stressed by psychiatrist Dr. David 
Hamburg, President of the Carnegie Corporation and chief negotiator for the exchange 
agreement, in an interview with the Los Angeles Times on June 12, 1987? (Colonel Oliver 
North's "operations in areas government preferred to avoid" resulted in a fully televised 
multi-million dollar Congressional investigation.) 

Representative Lee Hamilton (DTN) said during the Iran-Contra hearings that "The 
use of private parties to carry out the high purposes of government makes us the subject 
of puzzlement and ridicule." Shouldn't he be asked why the use by our government (State 
Department) of private parties (tax-exempt Carnegie Corporation and other foundations) to 
carry out the high purposes of government does not similarly make Congress the subject 
of puzzlement and ridicule? 

A Few Examples 

A complete listing of the many shocking exchange activities taking place as a result of the 
1985 and 1988-1991 agreements would require volumes. A few concrete examples should 
suffice to convince the reader that all proposals called for in the agreements are being 
faithfully and fastidiously carried out. 

1. Cambridge-based Educators for Social Responsibility (ESR) project, "Educating for 
New Ways of Thinking: An American-Soviet Institute." Two such institute sessions have 
been held (one in Leningrad the summer of 1989) at which "Soviet and American educators 
examined classroom theory and practice in critical thinking about social and political issues 
and worked on recommendations and resources for improving the ways we teach about each 
other's country, and on A Source-Book for New Ways of Thinking in Education: A U.S.-Soviet 
Guide for use by teachers and students in both countries. " 3 

"Critical thinking" is the latest fad to hit our children's classrooms. N. Landa's Lenin: 
On Educating Youth, published by the Soviet state-controlled Novosti Press, quotes Lenin 
on "thinking" as follows: 

To pose a real question means to define a problem which demands a new approach 
and new research.... Sometimes accepted truth no longer answers as a solution for 
a serious and pressing problem. The school should cultivate in pupils the ability to 
perceive scientifically evolved truths as stages along the endless road of cognition — not 
as something stationary and set. 

More recently, an article in Education Week (4-9-86) entitled "Are Teachers Ready to Teach 
Pupils to Think?" laments the fact that graduating college seniors 

show little evolution of alternative views on any issue, tending to treat all opinions as 
equally good, tending to hold opinions based largely on whims or unsubstantiated beliefs, 
and hesitating to take stands based on evidence and reason. Summing up a decade of 
research in the 1960's, O.J. Harvey laments that very high percentages... [of educators] 
"operated in cognitive styles grounded in absolute assumptions — viewing reality in terms 
of good/bad, right/wrong, and either/or, while attributing goodness and truth to wise 
and all-knowing authorities." 



Appendix XXIII 



A-139 



One doesn't have to have a Ph.D. to accurately predict what U.S. -Soviet jointly developed 
critical thinking curricula will look like. Do American parents want their children exposed 
to this type of education, especially when it will also be on computer where they can't 
get their hands on it? 

2. The Carnegie Corporation's exchange agreement with the Soviet Academy 
of Sciences has resulted in "joint research on the application of computers in early 
elementary education, focusing especially on the teaching of higher level skills and 
complex subjects to younger children." ("Higher level skills" is often a euphemism for 
"critical thinking skills," or values, attitudes, etc.) Carnegie's 1988 one-year, $250,000 
grant is funding implementation of this program, coordinated on the American side by 
Michael Cole, Director of the Laboratory of Comparative Human Cognition at the University 
of California, San Diego. 4 

3. The American-Soviet Textbook Study Project began in 1977, was suspended 
in 1979 when Soviet troops invaded Afghanistan, and resumed in 1985 under the 
Geneva Agreement. At a conference held in Racine, Wisconsin in November 1987, the U.S. 
representatives acquiesced to the Soviet insistence that American textbooks should present 
a more "balanced" (i.e., friendly) discussion of Lenin and should give the Russians more 
"credit" for their role in World War II. A.M. Rosenthal of the New York Times said in a 
December 8, 1987 editorial that 

American educators solemnly discuss with Soviet educators the mutual need for 
textbook revision, just as if the state did not censor every single book published in 
the Soviet Union and the Russians could write as they pleased. That is comedy, if 
you like it real black. 

4. Scholars from the American Council of Learned Societies and the Ministry of 
Education of the Soviet Union met in the United States in 1986 and agreed to establish 
a Commission on Education that will be responsible for joint scholarly relations in 
pedagogy and related fields between the United States and the Soviet Union. Some major 
joint U.S. -Soviet project themes are: Methods of Teaching and Learning School Science 
and Math Subjects Using Computers; Theory of Teaching and Learning; Psychological and 
Pedagogical Problems of Teaching in the Development of Pre-School and School-age Children, 
and Problems of Teaching Children with Special Needs. 5 

5. The Copen Foundation/New York State Education Department/Soviet Academy of 
Sciences agreement "links students, teachers, administrators in U.S. and Soviet schools 
by computer and video- telephone lines." Mr. Copen declared 

Soviet officials are especially interested in studying the effects of telecommunications on 
intercultural understanding, teaching methods, and learning outcomes, and that the Soviets 
have assigned five scientists to monitor the project. 6 

This agreement should be challenged on constitutional grounds since Article I, Section 
10 of the U.S. Constitution says, "No State shall, without the consent of Congress,... enter into 
any agreement or compact with another State, or with a foreign power." 



A- 140 



6. Under terms reached with the Soviet Academy of Sciences, the National Science 
Teachers Association will publish a Soviet science magazine in the United States. Copies 
of Quantum scheduled for publication in September 1989 will be distributed free of charge 
to gifted and talented children in this country. 7 

7. On December 8, 1987 the independent National Academy of Sciences pledged to 
help place more than a million computers in Soviet classrooms by the early 1990s. 8 

8. A $175,000 grant was made from the United States Information Agency (USIA) 
to the National Association of Secondary School Principals, the American Council of 
Teachers of Russian, and Sister Cities International. This grant will implement an expanded 
student exchange program, calling for up to 1500 American high school students to live and 
study in the Soviet Union each year and an equal number of Soviet students to come to the 
United States. 9 Former Education Secretary William Bennett told the Kansas City Chamber 
of Commerce on January 21, 1986 that 

American students know little about their own history and heritage and we have forgotten 
that intellectual innocence is easily seduced and the price we pay is that some of our children 
can only nod their heads in agreement when confronted with standard Soviet propaganda. 
They lack the knowledge to recognize it as propaganda, much less to refute it. 

9. On March 4, 1989, fifteen Soviet teens and two adult teachers arrived in Aurora, 
Colorado as part of the Reagan-Gorbachev agreements. According to an article by Beth 
Peterson in the high school newspaper Raider Review 

A conflict arose when reportedly a Russian student, Farkhod (who was head of the 
Komsomol Young Communist League and spokesman for the group) told students in an 
honors history class, "You are all going to be Communists within fifty years. Just remember 
that every society must be ready for Communism — even America. " 

10. Students participated in the Phillips Academy in Andover, Massachusetts student 
exchange with an elite Soviet prep school deep in Siberia. The students "agreed one 
characteristic was more striking than any other: an indefatigable commitment to Soviet 
communism." One student, Horovath, said, "I think in general young people are more 
committed to the Party's ideology than to their parents." Another student, Tom Clyde, 
said, "They seem to think there is going to be a world revolution any day now and the 
Communist Party will overtake America." 10 

The Soviet Union: The Only Benefactor 

Does our government really believe that the Soviet government is participating in these 
student exchanges so that their students can be de-programmed and become good little 
capitalists eager for peace at any price? 

Michael Warder of the Rockford Institute says that "Exchanges are allegedly designed to 
promote peace. " However, he points out that, as currently devised 

most exchanges are of benefit only to the Soviet Union. In the summer of 1985 a group 



Appendix XXIII 



A-141 



of 46 Soviets visited the United States on a so-called goodwill mission. But the 46 were 
selected, briefed, and controlled by Soviet security organs. Each of the "friendly visitors" 
had relatives being held hostage at home, lest any of them might consider defecting or 
deviating from the official Soviet propaganda line. Their trip was paid for by the Soviet 
government, and among them were Soviet agents. 

Mr. Warder notes that 

Soviet leaders know that if peace propaganda effectively reaches the U.S. public it will result 
in the Congress voting less money for national defense. U.S. groups going to the Soviet Union 
have no such "equal" opportunity to reduce Soviet arms expenditures. 11 

How on target Warder's comments have proven to be! Soviet propagandizing of the 
American people has been so successful that on May 9, 1989 four top Soviet officials 
were given the red carpet treatment by the U.S. House Armed Services Committee: "They 
appealed for a warmer approach by Washington and asked us to open a second front 
against the Cold War." 12 Could their appearance have something to do with the proposed 
defense budget cuts? 

The cost to the American taxpayer — not only in terms of the miseducation of his 
children, but also in terms of plain, hard-earned tax dollars — is immense. Soviet students 
coming here are having their travel, living expenses, and tuition paid for by our tax dollars, 
while some of our children cannot afford to go to college. 

In 1988 the U.S. Department of State awarded $4,540,000 to various groups involved 
in education exchanges with the Soviet Union and Eastern Europe. 13 This amount, which 
is probably the amount doled out annually, is just the tip of the funding iceberg, with 
large annual grants from other government agencies and tax-exempt foundations keeping 
the controversial exchanges afloat. 

It is to be hoped that the tragic Tiananmen Square massacre of Chinese students 
will result in cancellation of the U.S. -Chinese student exchanges, resulting in a lessening 
of our budget deficit, rather than in a transfer of those tax dollars into the U.S. -Soviet 
education exchange account. 

A Night to Remember tells of the five iceberg warnings sent by wireless to the Titanic. 
When the sixth message — "Look out for icebergs!" — came in, the Titanic's operator wired 
back, "Shut up. I'm busy." Just 35 minutes later, the ship whose captain had said, "God 
Himself could not sink Titantic," was sinking. 

We have been warned. Are we, like the Titanic's operator, convinced that "God 
Himself cannot sink" America? 

The question Americans must ask themselves is: Why, when the Soviet Union is an 
economic, political, moral, and social basket case, militarily superior but internally on the 
verge of collapse, does the United States seek its assistance in improving our educational 
system? Those responsible should be required to justify their support for actions which are 
not in the best interest of the United States. 

The address for America's Future is: 7800 Bonhomme, St. Louis, MO 36105. 



Endnotes: 



A- 142 



1. Bailey, Kathleen. "Disinformation: A Soviet Technique for Managing Behavior." Issues in Soviet Education: Proceedings of a 
Conference, National Advisory Council on Education Research and Improvement, March 3, 1988. 

2. Finn, Chester E., Jr., Assistant Secretary, U.S. Department of Education, "Mapping the Common Ground." Remarks before the 
American Forum on Education and International Competence, St. Louis, MI, May 16, 1988. 

3. Educators for Social Responsibility, Cambridge, MA. Promotional flyer entitled "Teaching for Critical Thinking in the Nuclear 
Age: A U.S. -Soviet Institute," Leningrad, U.S.S.R., July 27-August 12, 1989 and flyer entitled "Educating for New Ways of 
Thinking: An American-Soviet Institute," Hampshire College, Amherst, MA, August 7-21, 1988. 

4. Carnegie Corporation of New York. "The List of Grants and Appropriations 1988," reprinted from the 1988 Annual 
Report of the Carnegie Corporation. 

5. National Academy of Education, Harvard Graduate School of Education, Cambridge, MA. Informational Letter entitled 
"ACLS-U.S.S.R. Ministry of Education Commission on Education," Fall 1987. 

6. "Computers," Education Week, Dec. 7, 1988. 

7. "NSTA to Publish Soviet Journal," Education Week, May 17, 1989. 

8. Breen, Tom. "Academy to Give Soviets Computers," Washington Times, Dec. 9, 1987. 

9. "New Exchange Set for U.S., Soviet Students," Education Week, Sept. 28, 1988. 

10. Lee, Gary. "The Students' Surprise," Washington Post, May 26, 1987. 

11. The Don Bell Report, Nov. 21, 1986. 

12. Gordon, Michael R. "House Panel Sees 4 Soviet Officials," New York Times, May 10, 1989. 

13. Federal Register, Feb. 18, 1988. 



Appendix XXIV 



"Our Children: The Drones" 

"Our Children: The Drones" by Ann Herzer, M.A., Reading Specialist. This two-part article 
was written in 1984 and is reprinted here with permission of the author. 



Parti 

With taxpayers' money through a National Science Foundation grant, in 1968 Richard I. 
Evans wrote B.F. Skinner: The Man and His Ideas. The philosophy stated in this book should 
be of critical interest to all people that are interested in education and value the individual. 
Following are some direct quotes from Skinner included in Evans's book: 

I could make a pigeon a high achiever by reinforcing it on a proper schedule, (p. 10) 

When I say a concept is irrelevant, I mean that it has no bearing on the kind of analysis 
I am trying to develop, (p. 23) 

For the purpose of analyzing behavior, we have to assume man is a machine, (p. 24) 

You can induce him to behave according to the dictates of society instead of his own 
selfish interest, (p. 42) 

It is conceivable that a technique of control will be developed which cannot be discovered. 
The word "brainwashing" is dangerous, (p. 54) 

We want him [the student] to come under the control of his environment rather than on 
verbal directions given by members of his family, (p. 64) 

I predict that the curriculum of the future will be designed around various capacities and 
abilities rather than subject, (p 72) 



A- 143 



A- 144 



I don't believe in mental discipline as such.... I'm much more concerned with the student's 
so-called personality traits, (p. 72) 

I should not bother with ordinary learning theory, for example. I would eliminate most 
sensory psychology and I would give them [the students] no cognitive psychology 
whatsoever, (p. 91) 

It isn't the person who is important, it's the method. If the practice of psychology [operant 
conditioning] survives, that's the main objective. It's the same with cultural practices in 
general; no one survives as a person, (p. 96) 

It does bother me that thousands of teachers don't understand, because immediate gains 
are more likely in the classroom than in the clinic. Teachers will eventually know — they 
must — and I am more concerned with promoting my theories in education [operant 
conditioning], (p. 106) 

I should like to see our government set up a large educational agency in which specialists 
could be sent to train teachers [in operant conditioning], (p. 109) 

Have the radical psychologists achieved their goals? Let's take a look at exactly 
what they believe. 

The study of human emotions, feelings, and individual worth are of no concern to 
these psychologists. They believe that by shaping behavior one can produce any "human 
machine" that society needs. Skinner proposes to achieve this Utopian goal through the 
American school system. 

Evans asked Skinner what would happen if a "hostile government were to gain control 
and proceed to shape the development of children, putting such techniques totally into use." 
Skinner replied, "There's no doubt about it, but what are you going to do? To impose a 
moratorium on science would be worst of all." Would it? 

A Nation at Risk states that "If an unfriendly foreign power had attempted to impose 
on America the mediocre educational performance that exists today, we might well have 
viewed it as an act of war. As it stands, we have allowed this to happen to ourselves." 
Did we? Did the American people really know what was happening in education and to 
their children? The answer is no. 

A naive and great nation of freedom-loving people has been deceived by a "technique 
of control" that cannot be discovered by the average American. By subtle means of mind 
manipulation from clever propaganda techniques to out-and-out lies, the American people 
have been sold these radical ideas, methods, and techniques that truly place our nation 
and our children at risk. 

Skinner said, "You will teach your student as he wants to be taught, but never 
forget that it is within your power to make him want what you want him to want." In 
other words, a teacher can program and shape a child into being anything the radicals 
decide he should be. 

Parents and American citizens should be aware of the government-sponsored programs 
being disseminated throughout the United States by the National Diffusion Network. The 
Network was established in 1974 to promote government-approved educational programs. 
Many of these programs are subtly designed with behavioral psychology techniques that 



Appendix XXIV 



A-145 



could train young children to aim for limited goals of common labor. These programs 
prey on the poor and minority children in our nation. Many of these programs started 
in the 1960's. 

You might wonder who selects these programs. A panel of twenty-two so-called 
"experts" selects the programs and approves them for dissemination by the Network. 
They are promoted in a book called Educational Programs That Work published by the 
U.S. Department of Education. 

A great number of programs being promoted by the Network state in the book that 
"No evidence has been submitted to or approved by the Panel." It seems that even these 
great experts are not willing to accept the responsibility if these government programs 
fail or succeed. 

The radical behavioral psychologists believe in a totally planned society with so many 
elite to rule, while the drones follow like programmed robots. 

Very few college professors, teachers, school board members, or the news media 
have ever heard of the National Diffusion Network, and certainly the average American 
citizen is not aware of the Educational Programs That Work book or the programs therein. 
Every American should obtain this book and take a long look at just what their children 
are being taught or not taught. 

One experimental program after another has been placed in the American classroom 
over the last twenty years. Many of these programs have been brought into the classrooms 
over the objections of teachers and parents— those teachers and parents who understood 
what was happening. These programs have proliferated to such an extent that the school 
child has become a human guinea pig for these radicals who propose to bring about the good 
life for the whole world by "brainwashing. " 

When is the last time you heard your children speak of the "American dream"? 

An unfriendly, "hostile government" in action? Well, maybe. 

Part II 

At taxpayers' expense, preparation of B. F. Skinner's dehumanizing book Beyond 
Freedom and Dignity was supported by the National Institute of Mental Health (grant number 
K6-MH-21, 755-01). Skinner suggested that "what is called for now is a 'technology of 
behavior' — a systematic and scientific program to alter the nature of man." 

The major theme in Evans's book is that because of the complexity of the modern world 
we can no longer afford freedom and dignity; therefore, the scientific method of operant 
conditioning should be used to control and shape mankind for the good of the world. 

Man is considered a "human machine" with no soul, no free will, just a number like 
"K6-MH-21, 755-01" to be manipulated by change agents— a group of self-anointed, radical 
behavioral psychologists proposing to brainwash man into submission to whatever they 
determine to be the best for mankind. 

This is not a new theme in history. It is older than the Inquisition. What is new in history 
is that a scientific method of brainwashing does exist. The American soldier in Korea and [the 
Jones cult in] Jonestown, Guyana are only two recent examples of this fact. 

If one were to attempt this radical change, the most logical place to start this step-by-step 
"technology of control" would be to start in the schools and the free marketplace. 



A- 146 



A planned curriculum and a planned economy could strangle a nation like the United 
States within a few short years, and help to bring about "equality" for the whole world. This 
is conceivable if a technique of control could be developed that could not be detected by the 
average American. Has it happened? Just look at our schools and the economy. How many 
small companies have gone broke recently? How many small farmers are being forced out 
of business? Who controls the schools, the industries, the media, the natural resources, and, 
more importantly, who will control the land in the United States? 

For the unread and skeptics, I'm going to suggest several books that give a comprehensive 
overview of American education and the extensive use of classical and operant conditioning 
in our society. Of course, one must first read Skinner's books to fully understand what 
he has proposed. 

Perhaps the best and most comprehensive book written that truly gives historical 
documentation for the decline of our system was written by Augustine G. Rudd in 1957 and 
called Bending the Twig. Mr. Rudd was chairman of the Educational Committee for the New 
York Chapter of the Sons of the American Revolution. Far too much blame has been placed 
on John Dewey, in my opinion. At least his educational theories were child-oriented, but of 
course the radical psychologists were not in vogue in 1957. 

A Report of the Comptroller General of the United States, dated April 15, 1977 (HRD-7749) 
should be obtained from government records and read by all Americans. The title is 
"Questions Persist about Federal Support for Development of Curriculum Materials and 
Behavior Modification Techniques Used in Local Schools." It appears that nothing has 
been done about the questions. 

Other titles that everyone should read are: 

The Psychological Society, Martin Gross 

Thought Reform and the Psychology of Totalism, Robert Jay Lifton 

Mind Control, Peter Schrag 

The People Shapers, Vance Packard 

Change Agents in the Schools, Barbara M. Morris 

Behavior Mod, Philip J. Hilts 

The Literacy Hoax, Paul Copperman 

Legal Challenges to Behavior Modification, Reed Martin 

Walden Two, B. F. Skinner 

The Suicide Cult, Marshall Kilduff and Ron Javers 
Snapping, Flo Conway and Jim Siegelman 

Below are direct quotes from Beyond Freedom and Dignity: 

Why should I care whether my government, or my form of government, survives long 
after my death?... 

Why should I be concerned about the survival of a particular kind of economic system?... 

A remote personal good becomes effective when a person is controlled for the good 
of others, and the culture which induces some of its members to work for its survival 
brings an even more remote consequence to bear.... It is a matter of the good of the 
culture, not of the individual.... 



Appendix XXIV 



A-147 



A programmed sequence of contingencies may be needed. The technology has been most 
successful where behavior can be fairly easily specified and where appropriate contingencies 
can be constructed — for example, in child care, schools, and the management of retardates 
and institutionalized psychotics. The same principles are being applied, however, in the 
preparation of instructional materials at all educational levels, in psychotherapy beyond 
simple management, in urban design, and in many other fields of human behavior. . . . 

Such a technology is ethically neutral.... 

It is not difficult to see what is wrong in most educational environments, and much has 
already been done to design materials which make learning as easy as possible. 

In Part I of "Our Children: The Drones" I quoted some of the change agents and how 
they proposed to bring about the change in society and education. 

This next article will deal with actual enactment of the methods and programs, and 
how they are being promoted by the United States Department of Education through the 
National Diffusion Network. 

The first program I'm going to tell you about is the one that started what I now refer to 
as my "search for freedom and dignity" for myself, children, and teachers. The first program is 
known as The Exemplary Center for Reading Instruction. The word "reading" is a misnomer. 
This program is pure operant conditioning in the best tradition of B.F. Skinner. 

In 1978, I was working in a Title I program in Phoenix, Arizona. Our program was one 
of forty that had been selected as outstanding programs in the United States. The government 
was doing a three-year study on forty programs. The study was called the "Sustaining Effects 
Study." I assumed that study was being done so our program and the other successful ones 
could be used as examples for the rest of the country. 

Our program was based on an individualized diagnostic program for each child. The 
child's reading and math needs were determined and we were taught to remediate the specific 
needs in each child's area of weakness, while trying to build on the child's strong areas as 
well. We were proud to have been selected as one of the innovative programs in the nation. 
Part of our program also called for continuous training in our area of specialization. Mine was 
reading. I was also a member of the parent advisory committee. 

In early 1978, our principal, Title I supervisor, and assistant superintendent of schools 
for the district met with the Title I teachers and proposed a week-long workshop based on a 
mastery teaching and learning theory. Quite a sales pitch was given for the method and the 
director. My principal said he had known her for several years and that she was a personal 
friend of a prominent church and business leader in our community. Since his daughter 
was a personal friend of mine and he is highly respected as a church and community 
leader, this was a good selling point from my point of view. Another selling point was the 
limited cost of the workshop, and the training would include the Title I aides and some 
of the classroom teachers as well. 

The time arrived for the workshop, and substitute teachers were obtained for the 
teachers. The training session was held at the district office. Our trainer's name was Mrs. 
Currington from Hawkins, Texas. 

We were to meet from 8:00 a.m. to 4:30 p.m. every day, Monday through Friday. We were 
told that if we could not keep those hours and attend every day, not to attend the workshop. 



A- 148 



I thought that was rather strange, but said nothing at the time. 

One of our teachers, Sherri , had small children and was having a problem 

with adjusting the hours with baby sitters. Since her husband was a medical doctor, 
she could not depend on him for before and after school care. She asked if she could 
come late and leave early on some days. She was told no, and that it was her problem 
to work out. Somehow she did. 

On Monday when we arrived at the district office, we found our tables arranged in a 
U shape with Mrs. Currington at the head. We were never introduced to her, nor were any 
words of welcome extended. She started to teach, and I started to take notes. My supervisor 
told me not to take notes, that all the information would be supplied later. I thought this was a 
very strange arrangement, but I stopped taking notes for the time being. 

Two hours into the program I whispered to Sherri, "Just what in the [h — ] is this?" 
By this time they had handed out a massive workbook that made no sense whatsoever. 
Sherri pointed out that no method or philosophy was stated in the book and asked me 
if I thought this was strange. 

When we broke for lunch, I met one of our outstanding classroom teachers in the 
restroom and she was in tears. She said, "Ann, I don't know what is wrong with me. I have 
never reacted to anything like this before." I said, "Deanna, this is the worst thing I have ever 
been exposed to." She said, "Me too. I just thought it was me." 

Several teachers had lunch together and we were all very alarmed about the workshop. 
One old timer said, "This is just another program that we have to put up with — we have had 
one after the other for several years. We just learn one method and program, then they bring 
in another one. This will pass like all the rest. " 

Since two hours' credit was being offered by UCLA at Davis, some of the teachers asked 
me if I was going to sign up for it. I said no, because I would not want such a thing on my 
transcripts. None of our teachers signed up for credit. 

Daily, more and more of the teachers were raising their eyebrows and my friend Mary 

was beside herself. Finally, I said, "Look, Mary, we bought a pig in a poke and 

none of the teachers are buying this." 

We were pressured to memorize the word-by-word directives and pass the proficiency 
tests on a daily basis. Each teacher taking her turn, we were required to follow each directive 
exactly as the students would. Finally, the teachers and aides started asking questions. 
Some became downright hostile toward the teacher-trainer. Our questions were deferred 
by intimidation. For example, when someone would question a portion of the teaching 
technique, the trainer would say, "Shame on you. Don't you want to do what is best 
for children?" 

When Deanna pointed out that the program did not take into consideration the learning 
styles of individual children, Mrs. Currington said, "The group is more important than 
the individual and we should raise our children to be people pleasers." That is when 
I really sat up to take notice. I recognized the philosophy right away, and I recognized 
this program as being political. 

Children were required to master each and every small step before moving on, and 
only perfect penmanship was to be allowed from the child. Mary asked about small children 
whose fine motor skills had not developed. Mrs. Currington said, "All fine motor skills have 
developed by the age of one." Wow! 

By this time Sherri was laughing. At one point an administrator from the district office 



Appendix XXIV 



A-149 



came in and said, "We thought this was awful too when we attended the workshop last 
week, but it gets better as the week goes along. " This was the first time we realized that the 
administrators had taken the workshop, also. 

At one point in the training we were required to raise our arms to a 45-degree angle with 
our fingers pointed. The children were to do this whenever they completed an assignment 
and the teacher was to check for perfect penmanship, etc. If the work was not perfect, then 
the child had to start over. The rest of the class traced their word with their finger and said 
the word in unison while the others made the correction. 

I kept asking, "What is this method?" I was somewhat more verbal than the rest. At one 
point my principal said they used this method in Germany. This is when I said to Sherri, "I 
recognize the salute: Sieg Heil! I'm not going to do this again." 

At this point I sat with my arms folded and Sherri continued to chuckle. I was 
not laughing. This workshop was no longer funny. I was thinking that something was 
very amiss. 

Sherri and I were sitting at the same table across from each other. Mrs. Currington came 
and moved our table out from the others and told us to work with the group across the 
room. Since this was impossible, I thought it was very strange. That's when I noticed 
that our behavior was being monitored by the teacher-trainer, Mrs. Currington. I told 
Mary and Sherri to be careful of their actions because we were being monitored. They 
said, "Oh come on, Ann." 

The next day our table had been moved to the end of the room, in direct view of 
the teacher-trainer. 

On the last day of our workshop, Mrs. Currington said she had just returned from doing 
a workshop in Boston, and they drove her out of town with police escort. Someone asked 
her why, and she said it was because of a paper she had presented in the workshop. She said 
she would not present the paper again unless Dr. Reid (the program director) ordered her 
to. Deanna asked if she could see the paper and Mrs. Currington said yes if Deanna would 
return it right after lunch and promise not to show it to anyone. 

The next day Deanna told me that the paper was the "Children's Hour." 1 I said, "I'm 
not surprised that they ran her out of Boston with police escort because that is where 
they threw the tea overboard!" 

I am happy to report that I did not pass their fidelity or proficiency tests. 

Endnote: 

1. "The Children's Hour" is a story by James Clavell which deals with the ability of a "new" teacher, brought to an elementary 
classroom as a result of a "hostile government's takeover," who is able to completely subvert the values, beliefs and loyalties 
of the children in a half hour's time. At the end of the story the children had cut up the American flag and thrown the flagpole 
out of the window, and had been convinced that prayer was a waste of time because "what you receive always comes from 
soembody else," not God. (See pp. 70-71 of this book.) 



Appendix XXV 



(1) "The Truth about How We All Have Been Had" 

and 

(2) "The Difference between Traditional Education and 

Direct Instruction" 

(1) "The Truth about How We All Have Been Had" by Charlotte T Iserbyt was an alert 
sent out in late 1998, after the passage of Omnibus Budget Bill for 1999 which contained 
the Reading Excellence Act. (2) "The Difference between Traditional Education and Direct 
Instruction" by Tracey J. Hayes has been published in the January 1999 issue of The Education 
Reporter after having been distributed with Iserbyt's alert. 

(1) "The Truth about How We All Have Been Had" 

Please bear with me. This alert is going to try to explain what happened on the slow 
road to teaching our children how to read. You may use this alert/article in any way you wish 
as long as you attribute it to the authors, Iserbyt and Hayes, and do not alter it or add to 
it in any way. The story is sad and should make American blood boil. Before you start 
reading, please take the time to read the last two pages of this alert containing an 
article entitled "The Difference between Traditional Education and Direct Instruction" 
by Tracey J. Hayes. 

First, I want to thank the loop for alerting me about two years ago to the activities 
of Doug Carnine, director of the federally funded National Center to Improve the Tools 
of Educators (NOTE) at the University of Oregon. By the way, folks, that is a federally 
funded office which has dealt for a very long period of time with programs for special 
education children. Carnine's name jumped out at me when mentioned in one of the loop's 
communications supporting direct, systematic, intensive phonics (direct instruction), which, 



A-150 



Appendix XXV 



A- 151 



by the way, is NOT TRADITIONAL PHONICS INSTRUCTION. 

I immediately thought, "Wait a minute. What's going on here? Is this the same Doug 
Carnine who was involved with Siegfried Engelmann's Follow Through DISTAR program (now 
known as Teach Your Child To Read in 100 Easy Lessons or Reading Mastery), about whom 
I had written in my 1985 book Back To Basics Reform or... OBE Skinnerian International 
Curriculum?" Of course it was, and from that time on I devoted much time trying to convince 
parents that "direct instruction," regardless of whether it is spelled with lower or upper case 
"d" and "i," is based on the operant conditioning experiments with animals carried out by 
the Russian Ivan Pavlov and the American professor B.F. Skinner. 

In January of 1997 I wrote many memoranda on this subject which were included 
on the Internet Education Loop website, identifying Carnine and Engelmann with Ethna 
Reid's learning program which Ann Herzer (a traditional phonics reading teacher opposed 
to Skinnerian operant conditioning) so valiantly fought in the late '70s and early '80s. When 
Herzer objected to the training, she was asked, "Don't you know we are training our children 
to be people pleasers?" [See Appendix XVII of this book, ed.] I pointed out that my 1985 book 
Back To Basics Reform Or... discussed the ECRI/DISTAR method. Many of us have fought this 
method for twenty years and, sad to say, we have gotten nowhere. I suppose that is to 
be expected since we are not part of the national conservative leadership nor are we part 
of the education establishment leadership. No one listens to you unless you are well 
funded and have fancy letterhead. Follow the money, follow the money. We didn't have 
the resources to make a difference. 

However, all is not lost if those of you who read this alert will take the necessary action 
to stop the funding of the Reading Excellence Act at the local level. Millions of tax dollars will 
be gushing forth in your communities to implement this Skinnerian reading program under 
the guise of "scientific, research-based" phonics reading instruction. 

Let me quote from an October 1997 letter Doug Carnine wrote to "concerned friends" 
asking them to support H.R. 2614, The Reading Excellence Act, which called for the use 
of "research-based" reading instruction programs; i.e., his and Engelmann's program 
(ECRI/DISTAR). Obviously, use of these programs could be of financial benefit to those 
involved in the development of the program. Carnine's letter encouraged the following: 

As you know, significant reforms are in process in the bellwether states of California 
and Texas as well as in many other states. State lawmakers, education leaders, and 
concerned citizens are joining forces to ensure that the wealth of scientific research 
on reading conducted during the past three decades is fully transformed into effective 
classroom reading instruction. 

Much of the "scientific research" to which he refers is the Skinnerian dog-training method 
used in DISTAR and ECRI. Whenever you see the word "effective" related to education, 
realize that it relates to the late Ron Edmonds's Effective School Research (Harvard and 
Michigan State). It says "almost all children can learn" when taught to the test, provided the 
necessary environment for that individual child and enough time for the child to "master" 
whatever the content (or workforce skills) is made available. That's Skinnerian/behavioral 
terminology, for those who are not initiated. The new term for "environment" is now "positive 
school climate," which takes the place of the behaviorist term "psychologically manipulative 
environment." Effective School Research calls for the elimination of the Carnegie unit, 



A-152 



norm-referenced testing, grade levels, etc. Effective School Research calls for outcome-based 
education, which is mastery learning and can include direct instruction. Both are closely related 
to Total Quality Management and Planning, Programming, and Budgeting Systems. 

Of course, for those who don't have any problem with this type of education/training, 
STOP: you need read no further. For those who may have questions, please bear with me. 

First, you will want to be sure I am correct in my claim that this is, in fact, Skinnerian 
dog training. The final piece of the puzzle, which should be the clincher and for which many 
of us are most grateful (God works in wondrous ways!) came in the publishing of What Works 
in Education, edited by Crandall, Jacobson, and Sloane (Cambridge Center for Behavioral 
Studies: Cambridge, Massachusetts, 1997). 1 The Center's activities and publications can be 
accessed on their website (http://www.behavior.org). Following are some excerpts related to 
two of the nine programs discussed in this book: 

What Works in Education is the result of a collaborative effort between two organizations: 
The Cambridge Center for Behavioral Studies and Division 33 of the American Psychological 
Association.... We would like to extend our gratitude to Doug Carnine, Professor of 
Education at the University of Oregon, and Bonnie Grossen, Editor of Effective School 
Practices, for consulting on this project. 

The chapter entitled "Mabel B. Wesley Elementary" states: 

The Mabel B. Wesley Elementary School in Houston, Texas, has had a schoolwide Direct 
Instruction language arts curriculum since 1976, and has implemented other direct 
instruction programs and other programs based on related approaches in other subject 
matters.... Dr. Thaddeus S. Lott, Sr. is the Project Manager for the Northwest Charter District 
and Mrs. Wilma Rimes is the principal of Mabel B. Wesley Elementary School. 

In 1975... in searching for a means of improving reading skills, Dr. Lott, then the new 
principal, visited a campus that was implementing the DISTAR reading curriculum (see 
Direct Instruction for Teaching Reading and Remediation, Carnine and Silbert, 1979), 
developed by Engelmann (reported in Becker, Engelmann and Thomas, 1975A and 1975B). 
He was impressed by what he observed and began the implementation of DISTAR [now 
called Reading Mastery, ed.] in 1976. 

The chapter entitled "Exemplary Center for Reading Instruction — ECRI" by Ethna R. Reid 
of the Reid Foundation states: 

ABSTRACT: ECRI provides consulting and training for individual classrooms, grade levels, 
or entire schools in implementing a direct instruction model in language arts. The ECRI 
model is applied to and adapted for existing instructional materials. From these materials, 
structured lessons are developed to teach an integrated curriculum of phonics, oral 
and silent reading, comprehension, study skills, spelling, literature, and creative and 
expository writing. ECRI also includes rate building, mastery learning, and behavior 
management components. 

ECRI identified effective teaching strategies later corroborated in the Follow Through 
Program (Stebbins, L.B., St. Pierre, R.G., Proper, E.D., Anderson, R.B., & Cerva, R.T., 
1977) and now known as Direct Instruction (Jenson, Sloane & Young, 1988, pp. 335-336, 



Appendix XXV 



A-153 



350-362). ECRI adopted a general direct instructional approach and expanded it... in ways 
that allowed application to existing subject material in any content area. 

Can you not see that this is the necessary Skinnerian method for application to workforce 
training? Skinner said, "I could make a pigeon a high achiever by reinforcing it on a 
proper schedule." 

The above ECRI connection with DISTAR (Reading Mastery), the direct instruction 
program being pushed all over the country (Thaddeus Lott's Houston site is the best known) 
should come as no surprise since the developer of DISTAR, Siegfried Engelmann, has his 
work in Skinnerian operant conditioning cited several times in Ethna Reid's Teacher Training 
Manual. Of interest is the fact that the U.S. Department of Education in 1981, when Ann 
Herzer tried to have ECRI shut down, lied in writing when it said ECRI did not use 
operant conditioning. I have all the correspondence regarding this controversy. A class 
action suit should be filed against the U.S. Department of Education for its role in 
promoting this type of training/ conditioning under the guise of "education" and for 
lying about the method. 

In other words, ECRI and DISTAR are not just close cousins; they are, in fact, fraternal 
twins. The only difference between them is their name. They were both funded during the 
War on Poverty, Great Society 1960s, and since that time have been used on the most helpless 
members of our society, the underprivileged and minority children. Professors Benjamin 
Bloom and Lee Shulman's 1968-1981 Chicago Mastery Learning Program was, according to 
a March 6, 1985 article in Education Week 

a tragedy of enormous proportions with almost one-half of the 39,500 public school students 
in the 1980 freshman class failing to graduate, and only one-third of those graduating able 
to read at or above the national 12th grade level. 

Of interest is the fact that claims of effectiveness similar to those made regarding the Houston 
DISTAR program were made by the elitist change agents during the 1970s and early 1980s. 
The Chicago Program crashed in 1981. 

What happened to the students who participated in Chicago's Skinnerian experiment? 
What happened to Lee Shulman, who was involved in the Chicago Mastery Learning disaster? 
Lee Shulman went on to become the Director of the Carnegie Foundation's Board for 
Professional Teaching Standards, which is the architect of the performance-based (Skinnerian) 
teacher training model. Shulman, who had been a Fellow of the American Psychological 
Association and a Fellow of the Center for the Advancement of Behavioral Sciences, later 
became President of the Carnegie Foundation for the Advancement of Teaching. The reader 
should refer to the fact that the book What Works in Education is a result of a collaborative 
effort between the American Psychological Association and the Cambridge Center for 
Behavioral Studies. What rewards for such a disaster! The lives of the children involved in 
the experiment are not so decorously documented. 

One simple question should be asked which should put this whole matter to rest: 
Why haven't the underprivileged, the minorities, etc., had more academic success if these 
programs (which have been used in most of our inner cities under the guise of effective 
schooling practices) are in fact so "effective"? Why is it that some very good anti-OBE people 
out there don't even realize that this method is OBE? It is based on Bloom's and Spady's 



A-154 



contention (which, by the way, is embraced by the Soviets in their polytechnical training 
as well) that "all except the most seriously handicapped" children can learn, if they work 
at their own pace with an individualized education plan, are taught to the test, do not 
have to compete with classmates, are subject to criterion-referenced testing rather than 
norm-referenced testing, and have as long as they want to "master" the controllers' outcomes, 
results, or competencies. Outcome-based mastery learning/direct instruction is what the 
United Nations is talking about when it refers to Lifelong Learning. Everyone can take as 
long as needed to "master" what the corporate and international planners want as long as 
everyone "masters" it, even if it takes a lifetime. God forbid that you may not want to master 
certain things. And don't forget, it's not just students but all of us who will be involved in this 
lifelong learning — unless, of course, Americans wake up and do something. 

Whether either program has produced the gains proponents of the "method" suggest is 
questionable. The basic skills test results from Mission, Texas, which used ECRI for a period 
of twenty years, certainly are dismal. Much more documentation is required in this regard. 
By the time we have the sad truth regarding longitudinal test studies, including information 
on where the DISTAR-educated students are now or 10 years from now, and what they are 
doing, if anything, it will be too late. Norm-referenced testing will be a thing of the past. 
Performance-based testing (portfolios, demonstrations, etc.) will be standard, and we will 
have highways plastered with "My Son/Daughter Is an Honor Student." We will never 
know how dumbed down our children are except when, instead of saying "Please, may I 
have the ketchup?" they simply grunt a certain number of times for ketchup and a certain 
number of times for butter, etc. 

The basic question, however, aside from test scores, remains: Is it moral to use this 
method on children in the classroom without their informed consent, even if results show 
small and temporary gains? There are laws on the books which give prisoners protection 
against such behavior modification methods. Medical research is available showing that 
operant conditioning causes psychological, neurological, and medical problems. Children 
in the ECRI program have exhibited such symptoms. There are doctors' statements to 
this fact. 

For those who still don't believe that DISTAR (Reading Mastery) is the same as ECRI, let 
me quote from a few pages of a dissertation by a top state department of education official 
who does not wish to have it attributed to him. The paper, written in 1986, entitled "The 
Exemplary Center for Reading Instruction — ECRI," states in part: 

One of the major goals was to do a cost-effectiveness study to ascertain the most beneficial 
time to introduce academic skills to students. The only break the children had during 
their instruction was a snack time which was used as a language experience to discuss 
the various foods the children were eating. The main instructional unit was the SRA 
DISTAR Program. The results showed an increase in pupil IQ of approximately 20 points 
in the first year of the program and elimination of a great many behavioral problems, 
[emphasis added] 

Facts Established 

1. ECRI and DISTAR are fraternal twins, and both use Skinnerian operant conditioning. 

2. Operant conditioning is based on Pavlov's experiments with slobbering dogs. 



Appendix XXV 



A-155 



3. The Right to Read Foundation, formerly headed by Robert Sweet, supports Teaching 
Your Children to Read in 100 Easy Lessons, which is SRA's DISTAR (Mastery Reading). Sweet 
recently became a consultant to the House Education and Workforce Committee and helped 
draft and promote the Reading Excellence Act. Several years ago when Tracey Hayes, a 
researcher, brought her concerns regarding the Carnine/Engelmann program to his attention, 
Sweet told her he saw nothing wrong with mastery learning. Good parents looking for 
traditional phonics-based reading instruction for their children have been had by the master 
manipulators' use of the Hegelian dialectic. They (the internationalist change agents) created 
the whole language disaster (or took advantage of it) in order to get parents to scream so that 
parents could be offered the predetermined solution: the direct instruction Skinnerian program 
which can be applied to any other disciplines, including WORKFORCE TRAINING! 

And the desperate parents have bought into this shameful scam, thinking that the 
educational establishment really cared about their children learning to read. The corporate 
sector, which supports direct instruction, does not really want educated workers. Thomas 
Sticht, a member of the Secretary's Commission on Achieving Necessary Skills (SCANS) said as 
much when he was quoted in an August 17, 1987 Washington Post article as follows: 

Many companies have moved operations to places with cheap, relatively poorly educated 
labor. What may be crucial, they say, is the dependability of a labor force and how well it 
can be managed and trained — not its general educational level, although a small cadre of 
highly educated creative people is essential to innovation and growth. Ending discrimination 
and changing values are probably more important than reading in moving low-income 
families into the middle class. 

Sticht was also at one time associated with the "Hooked on Phonics" program. Oh, 
what a tangled web we weave! Harvard's Professor Anthony Oettinger, a member of 
the Council on Foreign Relations, which is bringing us STW, Free Trade and Global 
Governance, said in 1981: 

The present "traditional" concept of literacy has to do with the ability to read and write. 
But the real question that confronts us today is: How do we help citizens function well in 
their society? How can they acquire the skills necessary to solve their problems? Do we really 
have to have everybody literate — writing and reading in the traditional sense — when we 
have the means through our technology to achieve a new flowering of oral communication? 
It is the traditional idea that says certain forms of communication such as comic books 
are "bad." But in the modern context of functionalism they may not be all that bad. 
[emphasis added] 

All that one must do to smell one big rat is ask the following questions: 

1. Why would former California Commissioner of Education William Honig (who was at 
one time someone parents loved to hate) support something supposedly good for our 
children (DISTAR/ECRI) after years of implementing the progressive, humanistic agenda? 
Why would the leadership of the two major teacher unions support a method which 
supposedly is in the best interests of your children unless all of them have been walking 
down the road to Damascus? 



Thanks for listening. 



Appendix XXV 



A-157 



P.S.: Samuel Blumenfeld, in the Foreword to my new book, has taken a stand against 
direct instruction. He's a very principled fellow! I hope this alert will get a lot more principled 
people to take a stand against this method before it's too late. 

Endnote: 

1. What Works in Education can be ordered from the Cambridge Center by calling 1-978-369-2227. 

(2) "The Difference Between Traditional Education and Direct Instruction" 

by Tracey J. Hayes 

The major difference between Traditional Education and Direct Instruction (DI) is the 
method in which the content is taught. 

Traditional education focuses on content-rich curriculum in which a particular subject is 
"introduced, taught, and reviewed," moving from simple to complex, spiraling back to refresh 
and retain previously learned material while progressing in that subject. Some publishing 
companies make recommendations on what content is to be taught, but in most traditional 
education classrooms, the teacher decides "how" the "what" is to be taught. 

To help determine student achievement in traditional education, weekly quizzes and 
end-of-chapter tests are administered. One hundred percent mastery is, however, not 
expected. The teacher knows that with time and review, retention of knowledge and test 
scores will improve. The object of traditional education is to offer students a broad foundation 
of information, based on facts and figures, that will be retained for future application on high 
stakes assessments, education and career objectives, and life-long wisdom. 

Traditional education is sometimes described as "direct instruction." In traditional 
education the teacher stands in front of the classroom "directly instructing" the students in 
the subject matter. Direct instruction and teacher-directed instruction (used in traditional 
education) are examples of how words in our language can be perceived as being one and the 
same, when in fact they are very different from one another. Deceptive semantics has created 
much confusion among many educators as well as parents. 

With traditional education, on Monday the teacher assigns her class a chapter to read 
on the subject of George Washington crossing the Delaware. She tells them they will be tested 
on this subject on Friday, but she doesn't tell them exactly on what they will be tested. In 
other words, they must learn as much as they can about everything in the chapter — including 
the name of George Washington's horse. When tested, the students might receive a 75 % or 
80% grade and some parents may be upset with what they consider a "low" grade. However, 
in fact, the students have done far better than students using mastery learning or direct 
instruction who are taught to the test, only learning that material on which the teacher tells 
them they will be tested and receiving a grade of 90-100%. The students in the traditional 
education class have actually learned many, many times more than the students in a 
mastery learning or direct instruction class, even though they did not have to use all 
they learned on their test. Professor Benjamin Bloom, the father of mastery learning, was 
certainly correct when he asserted that students could reach 85% mastery— of a limited 
or dumbed down curriculum. 

Direct Instruction focuses on a narrow curriculum in which a particular subject is 



A-158 



introduced via a stimulus, expecting a particular response from the student. Based on 
behavioral psychology and the work of B.F. Skinner, DI requires the teacher to use operant 
conditioning and behavior modification techniques. In a DI classroom the teacher must 
follow a prescribed set of lesson plans, sometimes in script form, and use certain cues 
such as clapping with the intent to incite a certain reaction such as unison chanting 
from the students. In many classrooms, rewards and tokens are also used to generate a 
predetermined response (S-R-S) . 

Direct Instruction is a teaching method that bypasses the brain and instigates a reflex 
that is not natural, but rather controlled and programmed. This kind of manipulation causes 
some students to become so stressed that they become sick or develop nervous tics. Many 
DI programs are designed for the computer with built-in bells and whistles to "control 
and pace the learning outcomes." With outcome-based education (OBE) already in many 
schools, Computer Assisted Learning (CAL), programmed with the ML/DI method, is also 
promoting affective/subjective goals. 

Direct Instruction expects mastery (ML) to be achieved in each area of instruction before 
moving onto the next level. There are frequent tests, cramming, cranking, and drilling the 
skills to perfection, so test scores are usually high in the early years. Typical classrooms, 
however, consist of students with varying abilities, so the amount of content is decreased 
to accommodate the slowest learner. In some schools cooperative learning is used to 
appease the high achiever. Since review of previously learned materials is not encouraged, 
overall retention is less. SAT scores are low, and ultimate application is not achieved 
and in some cases stifled. 

Direct Instruction has been used for decades in areas where poverty is prevalent because 
the method of teaching promotes order and discipline in the classroom. Since many parents 
want to discard whole language and implement phonics, schools across the nation are adopting 
DI programs without truly understanding the method behind the content. At the expense of 
destroying one's free will, these schools are training students to become passive drones rather 
than educated citizens. As students plateau at a certain level because they cannot make sense 
of the knowledge they once were expected to recall on command, one must wonder if the 
pressure to perform like barking dogs is what students really need or what we really want. 



Appendix XXVI 



"Shamanistic Rituals in Effective Schools*" 

"Shamanistic Rituals in Effective Schools*" by Brian Rowan, Senior Research Scientist, Far 
West Laboratory for Educational Research and Development. Paper presented at the annual 
meeting of the American Educational Research Association, New Orleans, LA, April, 1984. 
Asterisk in title is notation on bottom of title page which states, "Work on this paper 
was supported by the National Institute of Education, Department of Education, under 
Contract No. 400-83-003. The contents do not necessarily reflect the view or policies of 
the Department of Education or the National Institute of Education." Brian Rowan was 
involved in Bill Spady's Far West Lab grant to the Utah State Department of Education to 
"put OBE in all schools of the nation. " 

This paper develops a theoretical perspective for analyzing the non-scientific uses 
of research in educational policy debates. A central focus is educational researchers' use 
of shamanistic rituals to affect organizational health (cf., Miracle, 1982). A number of 
shamanistic rituals derived from research on "effective" schools are described here, and an 
analysis demonstrates the circumstances under which these rituals can be used to divine the 
unknown, cure ills, and control uncertain events. 

Background 

Miracle (1982) suggested that shamans and applied social scientists perform a number 
of similar functions in society. Shamans, the powerful medicine men of premodern societies, 
worked mainly to cure ills, divine the unknown, and control uncertain events, and they 
performed these functions by using a specialized craft obtained after a long period of formal 
initiation and training. Similarly, applied social scientists acquire a specialized craft after 
initiation and training, and they too are called upon to alleviate the vague ills of corporate 
groups, divine the unknown for organizational strategists, or bring order to the uncertain 
events that plague institutional affairs. 

The analogy raises a number of important issues for applied social science. First and 



A-159 



A- 160 



foremost, shamans practice magic, whereas applied social researchers are thought to practice 
"science." To liken scientists to magicians raises interesting questions about the relationship 
of science to pragmatic action. An additional problem is that shamans are but one of the 
many practitioners of magic in societies, and they can be distinguished from others who 
employ magic in their rituals, for example, sorcerers, witches and wizards. This observation 
raises questions about the uses of research in modern policy analysis. If educational 
"science" functions as magic, who are the shamans, witches, and sorcerers of educational 
research? 

Forms of Pragmatic Action 

We begin with the problem of whether applied educational scientists practice magic. 
A number of anthropologists have observed that magic is used for pragmatic purposes 
in premodern societies, but that magic is not the only form of pragmatism available to 
premodern practitioners. For example, both Malinowski (1948) and Evans Pritchard (1965) 
argued that premodern societies possessed sound technical logics that practitioners could 
use to successfully accomplish most work tasks. In addition, premodern people were able 
to sharply distinguish between these working, practical logics and magic. In premodern 
societies, when tasks were going well, the technical logic of everyday work dominated 
action. But as uncertainties increased, or as conflict and stress became more problematic, 
premodern practitioners began to supplement technique with magic. Thus, Malinowski 
(1948) observed the fishing practices of Trobriand islanders and found that, in the safety of 
lagoons, practitioners made little use of magic and relied primarily on established technical 
routines to ensure good fishing. But as activities moved into the more dangerous open seas, 
magic was increasingly invoked as a supplemental technical aid. 

Similar points can be made about the modern educational practitioner's use of research. 
It seems clear that schools have an established series of technical routines (Goodlad, 1983). 
But these practices are not grounded in the highly stylized logics of modern science. Rather, 
they exist in the more subtle and largely unarticulated logic of teachers and administrators 
(Jackson, 1968). Although some educational observers have likened this unarticulated logic 
to magic (e.g., Lortie, 1975), Malinwoski's (1948) [sic] discussion suggests that it is more 
appropriate to think of educational research as magic. The educational practitioner appears 
to make wide use of the subtle and unarticulated logic of schooling, and this logic appears 
to have the desired technical effect on a large number of students (Hyman, Wright and Reed, 
1975) . Practitioners make much less use of the stylized "scientific" knowledge of applied social 
scientists. Indeed, like Malinowski's Trobrianders, they appear to reserve the use of "science" 
for those sectors of schooling which are problematic or in "crisis." 

Other arguments also suggest that educational "science" functions much like magic. 
As Miracle (1982) noted, both applied social scientists and shamans utilize a "force" that 
derives from an other world (Mauss and Hubert, 1961). Shamans, for example, often travel to 
other worlds to communicate with spirits or accompany the dead to their supernatural resting 
places. As a result, they are said to inhabit both the real world and a spirit or supernatural 
world. Similarly, applied scientists appear to inhabit two distinct worlds, one the "real" 
world, the other the proverbial "ivory tower." It is widely recognized that knowledge gained 
in the ivory tower is not the same as that gained in the "real" world, an observation that 
endows "scientific" knowledge with a certain otherworldly nature. Thus, like shamans, 
applied educational scientists inhabit two worlds and practice a craft that has a special 
legitimacy in social affairs. 



Appendix XXVI 



A- 161 



Types of Magic 

If we perist [sic] in the analogy between educational "science" and magic, it becomes 
useful to classify various types of magic and magicians. In premodern societies, for example, 
there were numerous practitioners of magic, including not only shamans, but also various 
witches, wizards and sorcerers. Distinctions among these practitioners can be made on 
the basis of their actual magic practices. Wizards and witches often practiced forms of 
"black magic" that were used as weapons to defend interests or harm enemies, whereas the 
shaman's magic was most often employed for benevolent purposes, including the curing of 
ills. There is also a need to look carefully at the rituals practiced by different groups. For 
example, shamans often engage in a common "spitting and sucking cure," but they also use 
other rituals from their "bag of tricks." 

Educational researchers can also be classified by the types and functions of the rituals 
they perform. For example, policy analysts sometimes use the rituals of research to confound 
and weaken political or scientific opponents, a form of research that appears similar to the 
"black" magic of witches. But there are also research shamans who can be called upon 
by policy analysts to perform healing rituals. All types of research ritualists select from 
a common and well-known bag of research tricks, although in recent years there has 
been a rise of ritual specialists who exclusively work either qualitative or quantitative 
magic on policy audiences. 

Shamanism and School Effectiveness Research 
In this paper, we limit attention to a single type of research ritualist — the research 
shaman — and to a few related magic tricks used within a narrow policy domain. Our interest 
is in describing research rituals that heal and revitalize sectors of education and not in 
research that fans controversy, inflicts harm on ideological enemies, or demoralizes existing 
constituencies in a policy domain. Moreover, the analysis will be narrowed to a few research 
rituals used in one policy domain to better illustrate how research shamans operate. 

Shamanism and Crisis 

It is commonly observed that working practitioners in education remain detached from, 
even ignorant of, the findings and applications of applied research. Yet this observation is 
not entirely true. Educational policy makers and their research ritualists continue to generate 
research, and this research continues to play a role in certain sectors of educational practice. 
Thus, a question emerges: in what sectors of educational institutions are the rituals of 
research shamanism most utilized? 

Anthropological studies suggest some answers to this question. It has been argued that 
magic assumes its highest importance in institutional sectors plagued by three conditions: (a) 
high levels of technical uncertainty; (b) structural cleavages that create great stress among 
social groups; and (c) social disorganization that creates problematic mood states among 
participants (Malinowski, 1925; Gluckman, 1952; Wallace, 1956). The argument here is that 
research shamanism is most valued in sectors of education that contain these characteristics. 
Thus, research in education is most numerous in areas where there is high technical 
uncertainty (do schools/programs/teachers make a difference to educational outcomes?) . The 
rituals of research also take on great importance in areas where there is conflict among 
social groups (are new educational initiatives needed to redress past social inequities?). 
And finally, research is increasingly directed at problems related to disorganization and 



A- 162 



dissatisfaction in institutional sectors of education (are urban/high schools better or 
worse than in the past?) . 

Research on Effective Schools 

Research on effective schools has its origins in these problems. The research deals 
with a sector of educational institutions — the instructional core — which has long been the 
subject of uncertainty, conflict, and pessimism, and where the use of myth and ritual has 
been common (Meyer and Rowan, 1977; 1978). What is distinctive about "effective schools" 
research, in contrast to much past scientific work, is that it has taken a shamanistic 
approach to the problems of schooling. It has not fanned the flames of discontent and 
uncertainty like previous scholarly work (e.g., Coleman et al., 1966; Averch et al., 1972; 
Jencks et al., 1972), but instead has held out hope that the pervasive ills of modern 
urban schooling can be cured. 

Edmonds (1979a), the most powerful of all effective schools shamans before his 
untimely death, seemed accutely [sic] aware of the need for healing in modern educational 
institutions, and a careful reading of his works reveals his strategy for effecting a cure for 
the problems confronting urban education. He argued that research must be used to counter 
the pessimistic view that schools have weak effects on student outcomes, and that as this 
occurred, practitioners could attain new expectation states that facilitated, rather than 
hindered, the achievement of disadvantaged children (see, especially, Edmonds, 1978; 1979b). 
Thus, Edmonds saw that "science" could be used to confront the conflicts, uncertainties, and 
problematic mood states afflicting modern schooling. 

That Edmonds' [sic] approach possessed a special "force" in educational policy arenas is 
indisputable. Like the revitalization movements that swept the great plains during the period 
of indian [sic] decline (Wallace, 1966), the rituals of effective schools research diffused 
widely and rapidly. They were adopted by other shamans, who brought them to state 
departments of education and local school systems, and there these rituals were used as the 
cornerstone of ambitious revitalization ceremonials (see, e.g., Ogden et al., 1982; Shoemaker, 
1982; Clark and McCarthy, 1983). 

It is worth noting that the perspective being developed here does not necessarily imply 
that these shamanistic rituals are hoaxes. Indeed, just as many modern medical practitioners 
have come to recognize the wisdom and efficacy of shamans, there is at least some reason 
to think that the arguments of effective schools proponents possess some scientific merit 
(see, e.g., Rowan, Bossert and Dwyer, 1983). Nevertheless, for the moment, it is useful 
to suspend our empirical curiousity [sic] about whether these initiatives really "work," 
[sic] and to examine instead some of the concrete ritual practices that characterize this 
new educational movement. 

Important Shamanistic Rituals 
It has already been suggested that shamanistic rituals are designed to cure ills, 
divine the unknown, and control uncertain events. In this section of the paper, three 
prominent effective schools rituals are discussed and their relationship to the central 
functions of magic are illustrated. 

Curing Ills with Literature Reviews 

We begin with one of the most common shamanistic rituals in the effective schools 



Appendix XXVI 



A- 163 



movement, the glowing literature review that promises relief from the currently pervasive 
sense that educational institutions are in poor organizational health. Miller's (1983: 
1) review illustrates the general form of this ritual: "Not so long ago the conventional 
wisdom regarding American schools was that 'schools do not make a difference.' ...Yet 
today... the message of... research is primarily postive [sic] and upbeat: schools can make 
a difference" (Miller, 1983: 1). 

A closer look illustrates the consistent dramatic form used by reviewers to affect the 
promise of a cure. First, the authors contrast the dismal tradition of school effects research 
with "more recent" and more positive studies of effective schools. This is followed by the 
citation of a host of previously unpublished and obscure studies which are often nothing more 
than other positive literature reviews. The final step is a grandiose concluding statement, 
which most often calls on practitioners to adopt the new discoveries. 

We speculate that these rituals have their most dramatic effect on naive individuals who 
have little time or inclination to follow-up footnotes or read works cited in the text, or on 
those who have little tolerance for the ambiguity that marks true scientific debate. Lacking a 
systematic understanding of the scientific pros and cons of effective schools research, naive 
individuals are left only with the powerful and appealing rhetoric of the reviewers. Thus it 
is that research on effective schools has come to be seen as a "cure" for educational ills the 
less it has been published in scholarly journals and the more it has been disseminated in 
practitioner magazines. The experiences shaman knows to avoid the scrutiny of scholars, 
for this can raise objections to the "scientific" basis of ritual claims and divert attention 
away from the appealing rhetoric. Instead, the shaman cultivates the practitioner who 
needs a simple and appealing formula. 

Divining the Unknown Using Outliers 

While the literature review ritual can be observed equally well by both qualitative and 
quantitative specialists, a second ritual, designed to divine the unknown, is the exclusive 
domain of quantitative ritualists. The ritual uses residuals from a regression analysis to identify 
"effective" schools and to contrast them with "ineffective" schools. The purpose is to divine 
an answer to two nagging questions in school effectiveness research: which are the effective 
schools in a system and what are these schools doing that makes them different? 

The techniques involved in this ritual have been described before (see, Rowan et al, 
1983). A regression equation predicting school achievement from school socioeconomic 
composition is tested, and errors of prediction are calculated. The errors (or residuals) 
are used to identify "effective" and "ineffective" schools and form samples for contrasted 
groups studies. The ritual almost always strongly supports the rhetorical posture of the 
ritual literature review. Since predictor variables never account for all of the variance in 
school-level achievement, an analysis of residuals will always demonstrate that schools differ 
in achievement even after controlling for socioeconomic composition. Thus any experienced 
shaman can find "effective" schools. Second, if a shaman asks a large number of questions, 
a number of structural and cultural differences between effective and ineffective schools can 
be found. Thus, the outliers ritual not only identifies the previously unrecognized "effective" 
schools, it also reveals for the first time why these schools attain effectiveness. 

From a magician's standpoint, this ritual's power can be increased in a number of ways. 
First, the worse the specification of the initial regression model, the more persuasive the 
ritual. For example, by failing to include all measures of school socioeconomic composition, 



A- 164 



a shaman can increase the residual achievement differences between schools. This, in turn, 
enhances claims that "effective" schools make a difference to achievement. Moreover, to 
the extent that school characteristics are correlated to omitted socioeconomic predictors, 
mis specification [sic] enhances the liklihood [sic] that differences in school characteristics 
will be found between "effective" and "ineffective" groups of schools. Thus, the worse the 
initial regression model, the more powerful the shamanistic ritual. 

A related tactic is to use aggregate models. By using schools rather than individuals as 
the unit of analysis, proportions of variance in achievement explained by school management 
and culture are increased. In between-school analyses, schools can be seen to account for 
nearly 30 % of the variance in achievement. But in between- individual analyses, this is reduced 
to about 5 % . Thus, effective schools ritualists have been able to inflate their claims of school 
effects through a simple aggregation trick (see Alexander and Griffin, 1976). 

The experienced shaman also avoids certain practices. For example, it is wise not to 
repeat the residuals ritual in the same population, for this highlights the low correlation of 
residuals over time and raises questions about measurement reliability. It is much wiser to 
demonstrate reliability by using the conventional, and cross-sectional, "split/half" procedure 
of psychometricians (see, Forsythe, 1973). Similarly, after a few performances of the residuals 
ritual and the associated contrasted group study, it becomes possible to ignore problems 
of validation. Thus, as time moves on, the wise shaman avoids achievement data and the 
residuals ritual entirely, and instead assesses schools on the degree to which their structures 
match those of previously identified "effective" schools. 

Controlling Uncertainty through Measurement 

A final shamanistic ritual in the effective schools movement requires the shaman to have 
advanced training in the art of psychometrics. The ritual is particularly suited to application 
in urban or low performing school systems where successful instructional outcomes among 
disadvantaged students are highly uncertain but where mobilized publics demand immediate 
demonstrations of success. The uncertainties faced by practitioners in this situation can easily 
be alleviated by what scholars have begun to call "curriculum alignment. " 

This ritual begins with an analysis of what is actually being taught in schools. The 
shaman conducting the ritual assembles a group of local practitioners and together they 
list instructional objectives for each grade level. The next step is to find achievement tests 
that ask questions related to these objectives. To the extent that test items matching local 
objectives are found, either in commerically [sic] prepared tests or in locally constructed ones, 
and to the extent that these items are used in achievement testing rather than the haphazard 
collection of items contained in most commerically [sic] prepared tests, the curriculum and 
testing systems of the local school are said to be "aligned." 

Since it is known that at least some variance in student achievement is a function of 
students [sic] opportunity to learn what is tested in criterion measures (Cooley and Leinhardt, 
1980), the alignment ritual can have immediate effects on perceptions of effectiveness. For 
example, a school system moving from an unaligned commercially prepared achievement 
test to an aligned one can expect that it will score higher on national norms than before. But 
this increased "effectiveness" does not occur because students are learning more or different 
things. In the typical alignment ceremony, only test items — not instruction — are changed. 
Nevertheless, while student learning remains unchanged, alignment allows students to 
practice criterion measures and achieve higher test scores, thus giving them an advantage 



Appendix XXVI 



A-165 



over comparable students in unaligned school systems. 

An even more powerful demonstration of instructional effectiveness can be achieved if 
shamans avoid the standard psychometric practice of designing norm-referenced achievement 
tests and move instead toward criterion-referenced tests. As Popham and Husek (1969) 
discussed, the typical norm-referenced achievement test eliminates items that nearly all 
students in a population can answer correctly, since norm-referenced tests are designed 
to produce between-student variance in achievement scores. But if one neglects this 
practice and allows items that almost everyone can answer correctly to be included 
in achievement tests, a larger number of students will appear to be performing more 
successfully in their academics. 

Thus, the art of measurement can be used as an aid to shamanism, espcially [sic] in 
urban schools plagued by the uncertainties of student performance. Student variability in 
performance can be reduced, and relative performance increased, not by changing instructional 
objectives or practices, but simply by changing tests and testing procedures. 

Conclusion 

The analysis of specific shamanistic rituals in the effective schools movement raises a 
number of important questions about the relationship of applied science to pragmatic action. 
Most importantly, it suggests that future studies of "science" as magic are needed. There 
is a need to begin to chart other rituals used by applied scientists to disarm enemies, cure 
ills, and divine the unknown. Moreover, there is a need to study the conditions under which 
these magical practices spread through practitioner populations. Using this perspective, much 
of the literature on organizational change and applied research can be rewritten from an 
institutional perspective (Meyer and Rowan, 1977). 

At the same time, there is a need to carefully analyze the science of magic. There can be 
little doubt that Malinowski's (1948: 50) observations about premodern magic will ring true 
for many observers of current applied research in education: 

...when the sociologist approaches the study of magic... he finds to his disappointment an 
entirely sober, prosaic, even clumsy art, enacted for purely practical reasons, governed by 
crude and shallow beliefs, carried out in a simple and monotonous technique. 

Yet this "clumsy" art sometimes achieves great effects in practitioner communities and may 
even have some empirical merit, and this raises the appealing promise that applied social 
scientists can someday develop shamanistic rituals that empirically "work. " 

References 

Alexander, K. and L. Griffin. School district effects on academic achievement: a 

reconsideration. American Sociological Review, 1976, 41, 144-151. 
Averch, H.A. et al. How effective is schooling? A critical review of research. Englewood 

Cliffs, N.J.: Educational Technology Publications, 1972. 
Coleman, J.S. et al. Equality of educational opportunity. Washington, D.C., U.S. 

Department of Health, Education and Welfare, 1966. 
Cooley, WW and G. Leinhardt. The instructional dimensions study. Educational 

Evaluation and Policy Analysis, 1980. 2, 1-26. 
Clark, T.A. and D. McCarthy. School improvement in New York City: the evolution of a 



A- 166 



project. Educational Researcher, 1983, 12. 17-24. 
Edmonds, R. A discussion of the literature and issues related to effective schooling. St. Louis: 

CEMREL, Inc., 1978 [sic]. 
Edmonds, R. Effective schools for the urban poor. Educational Leadership, 1979a, 37, 15-24. 
Edmonds, R. A conversation with Ron Edmonds. Educational Leadership, 1979b, 37, 12-15. 
Evans Pritchard, E. Theories of primitive religion. London: Cambridge Press, 1965. 
Forsythe, R.A. Some empirical results related to the stability of performance indicators in Dyer's 

student change model of an educational system. Journal of Educational Measurement, 1973, 

10, 7-12. 

Gluckman, M. Rituals of rebellion in S.E. Africa. London: Oxford Press, 1954. 
Goodlad, J.I. A Place called school. New York: McGraw Hill, 1983. 

Hyman, H.H., C. Wright and C. Reed. The enduring effects of education. Chicago: University of 

Chicago Press, 1975. 
Jackson, PW. Life in classrooms. New York: Holt, Rinehart and Winston, 1968. 
Jencks, C.L. et al. Inequality: a reassessment of the effects of family and schooling in America. 

New York: Basic Books, 1972. 
Lortie D. Schoolteacher. Chicago: University of Chicago Press, 1975. 
Malinowski, B. Magic, science and religion. Glencoe: Free Press, 1948. 

Mauss M. and H. Hubert. On magic and the unknown. In, Parsons, T. et al (eds.). Theories of 
society, II. Glencoe: Free Press, 1961. 

Meyer, J. and B. Rowan. Formal structure as myth and ceremony. American Journal of Sociol- 
ogy, 1977, 83, 340-363. 

Meyer, J. and B. Rowan. The structure of educational organizations. In M. Meyer et al, Environ- 
ments and organizations. San Francisco: Jossey Bass. 

Miller, S. A history of effective schools research: A critical review. Paper presented at the annual 
meeting of the American Educational research [sic] Association, Montreal, April, 1983. 

Miracle, A.W The making of shamans and applied anthropologists. Practicing Anthropology, 
1982, 5, 18-19. 

Ogden, E., W. Fowler and D. Kunz. A study of strategies to increase student achievement in low 
achieving schools. Paper presented at the annual meeting of the American Educational Research 
Association, New York, March, 1982. 

Popham, W. and H. Husek. Implications of criterion referenced measurement. Journal of Edu- 
cational Measurement, 1969, 6, 1-9. 

Rowan, B., S. Bossert and D. Dwyer. Research on effective schools: a cautionary note. Educa- 
tional Researcher, 1983, 12, 24-31. 

Shoemaker, J. What are we learning? Evaluating the Connecticut school effectiveness project. 
Paper presented at the annual meeting of the American Educational Research Association, 
New York, March, 1982. 

Wallace, A. Revitalization movements. American Anthropologist, 1956, 58, 264-281. 

[Ed. Note: We shall forever be grateful to Brian Rowan for crafting such an eye-opening presentation 
of the process used by the change agent "shamans" to sell the damaged goods of Effective Schools 
Research — and many other programs, like OBE, mastery learning and direct instruction — through 
manipulated or "massaged" research data. His expose of the use of alignment of curriculum to test- 
ing to create an illustion of improved performance of schools is quite phenomenal for someone so 
involved in the spread of OBE to "all schools in the nation."] 



A 

c 




„ FARMER. S: 

Keep WftHA ch&r\ for your 

cKilArenl Wi tV> your r\eu> *Oos 

ErdliaxV " ^ con I M ch^ge ^ 
filler (mm.) cl^ij (xnd cvt' AouM 



rallied qrwiAQ fxM K^e 

Orgffrii* ^loi^f fcuy lY)^ before tj&L/r 
Cf>a>s police the AiC rf&f\£ f 



Appendix XXVII 



"Big Bad Cows and Cars: 
Green Utopianism & Environmental Outcomes" 

"Big Bad Cows and Cars: Green Utopianism & Environmental Quality," by Sarah Leslie 
from the Free World Research Report (Vol. 2 No. 6), June 1993. Reprinted in its entirety 
with permission of author. 

The problem with cows and cars, it seems, is with their... well, er... emissions. Both are 
supposedly responsible for wreaking havoc on the planet Earth (spelled with a capital "E" 
to suggest respect and "reverence") because of their C0 2 output— for one a matter of life, for 
the other a manner of mechanization. 

They both have to go. This means tractors, too, of course. The goals for sustainability, 
according to the latest environmental craze (which we have dubbed "Green Utopianianism") , 
require an abandonment of modern material affluence, a transfer of wealth to third 
world countries and, unmistakably, a return to the manual plow accompanied by a 
vegetarian diet. 

Where can one find such Utopian nonsense? It is popping up with increasing frequency 
in mainstream publications and credible-sounding scientific documents. Jeremy Rifkin's 
"Beyond Beef" campaign and Al Gore's recent book, Earth in the Balance, have lent the 
necessary pizazz to launch a massive public relations campaign about the environmental 
hazards of these C0 2 emissions (that's "gas" for the folks in Rio Linda, California). 

The education establishment, prone to jumping on the latest bandwagon, is going great 
guns for environmental education. Educators are frequently puzzled and amazed when 
parents object to environmental and global curricula and outcomes. What could be wrong 
with that? they ask. We recommend they read the literature. 

The Rave Review 

We found the abolishment of the cow and car through reading an Iowa Department of 
Education document. Several years ago, in a publication entitled Social Studies Horizons (Fall 



A- 167 



A- 168 



1990), just such a Utopian book was given a rave review. This book, originally entitled The 
Future as If It Really Mattered, was recently re-issued under a new title— Toward A Sustainable 
Society: An Economic, Social and Environmental Agenda for Our Children's Future by James 
Garbarino. The title says it all. It is quite an agenda! 
Here is the rave review: 

Excerpts from a book that is a class of practical wisdom on what a sustainable society 
is, why we need to move to a sustainable society, and what a sustainable society might 
look like. It is this kind of thinking we need to consider as we move toward transforming 
the social studies. It seems to me that teaching the "transformational economics" of 
sustainability would be a much more empowering and enlivening process for our students 
than the textbook-mires "dismal science" approach to economics that has been the norm. 
{Social Studies Horizons, p. 4) 

If you think sustainability is just a nice new term to describe more environmentally 
responsible farming methods, think again. Sustainability, at least to the new Green Utopians, 
is an entire restructuring of the way humans live on the planet, and is the new prime directive 
for the survival of species (man only somewhat included) . 

The Iowa DE publication quoted Garbarino: 

This enjoyment of owning, having, spending, buying, and consuming is a serious 
threat. It threatens our relationship with the Earth and our relationships with each other, 
particularly in our families and in our efforts to preserve the resources necessary for social 
welfare systems. It cannibalizes the planet, undermines the spiritual order, and leaves 
us scrambling to fill the social and spiritual void with positions. It is an addiction pure 
and simple... and our chances of making the transition to a sustainable society depend 
upon our overcoming it. (p. 4) 

The major chore for humans on Garbarino's anthropomorphic Earth is to make the 
transition to sustainability. But, just what does HE mean by this? What is the agenda 
of the new Green Utopians? 

Utopian Sustainability 

Garbarino's transition to sustainability is a process long on ideology and short on specifics, 
in typical Utopian fashion. Garbarino states: 

Our goal, remember, is the creation of a more sustainable human community based 
on competent social welfare systems, just and satisfying employment, reliance on the 
nonmonetarized economy for meeting many needs, and a political climate that encourages 
cultural evolution and human dignity, (p. 162) [emphasis added] 

Garbarino identifies himself as a Utopian throughout the book. His optimistic view of 
the future is dependent upon his faith that the human race will accept stringent population 
control measures, severely limited transportation and trade, earth-friendly housing, local 
neighborhood food and energy production, and government-regulated health and social 
welfare services. The seriousness of "our common future" is enough to warrant this massive 
overhaul of the Western lifestyle. 



Appendix XXVII 



A- 169 



Our Not-So-Rave Review 

The preface of Garbarino's book (page ix) gives credit to Aurelio Peccei and the Club of 
Rome for the "wealth of ideas and information about the prospects for a sustainable society. " 
The Club of Rome is best known for its earth-shattering GLOBAL 2000 report, Limits to 
Growth (1972), calling for massive world-wide population control measures and many 
other controversial plans. The Club of Rome is one of those international organizations 
that the extreme left esteems (including the national media) and the extreme right views 
as one of "those" conspiratorial groups. 

The Club of Rome does not advocate for a mainstream, reasonable approach to 
environmental stewardship. Not by any stretch of the imagination. It is an indisputable fact 
that the Club of Rome is tied closely to the wacky international New Age groups known as 
Planetary Citizens. Planetary Citizens sponsored a "1990 World Symposium on Interspecies 
& Interdimensional Communication." (This means communicating with species not of this 
world!) Aurelio Peccei's name has appeared on Planetary Citizens letterhead. 

A Return to the Plow 

Tractors will go the way of the car and the cow. Manual high-tech plows are the wave 
of the new Utopian future. 

The plow developed by the Schumacher-inspired Intermediate Technology Group is a 
good example [of appropriate technology] . It relieves the backbreaking burden of working 
an oxen-powered plow, but it is not a conventional tractor. In their clever arrangement, 
a small engine pulls a plow across a field using a wire, while two farmers use their skill 
and strength to guide it. The result is better plowing with a less expensive tool and 
provision of meaningful work. (p. 223) 

This Utopian vision of a new society includes agricultural cooperatives, a cashless 
economy, and women working at home at gardening chores to provide food for their 
households and communities. "Household and community gardens can successfully produce 
fruits and vegetables, and in some cases even grain." (p. 231-2) Concurrent with these 
recommendations is the elimination of most trade because of its relationship to transportation 
(which produces C0 2 ) . Everything must be produced locally. 

Eating meat is not included in the book. "The massive concentrations of cattle excrement 
produce large amounts of methane," claims Garbarino in Rifkin-like fashion. Presumably 
the cow is regulated to a position of prominence in society, perhaps even veneration. If the 
cow isn't good for food, and not an "appropriate" technological substitute for the tractor 
for use with plows, then perhaps the Green Utopians of the future will hang garlands 
of flowers about their necks! 

Car Crimes 

"Using a car to accomplish daily tasks that could be done without one is a misdemeanor 
against the Earth and posterity. Social policies that encourage driving and discourage 
walking are crimes against the planet." (p. 221) The term for this new kind of crime in Green 
Utopia is "bioeconomic crime" according to Nicholas Georgescu-Roegen, who is further 
quoted on the matter of automobiles: 

Every time we produce a Cadillac, we irrevocably destroy an amount of low entropy 



A- 170 



that could otherwise be used for producing a plow or a spade. In other words, every 
time we produce a Cadillac, we do it at the cost of decreasing the number of human 
lives in the future, (p. 135) 

This type of logic, which ties Western consumption to the future destruction of the 
Earth, is the drumbeat of Garbarino's book. It explains the reasoning behind the original version 
of the Iowa Global Education curriculum manual {Catalogue of Global Education Classroom 
Activities, Lesson Plans, and Resources), which contained a Social Studies exercise for grades 
4-6 which linked eating red meat to the destruction of the tropical rainforest: 

Calculate the amount of meat eaten by a person in the U.S. per year; translate to 
number of animals. How much energy and grain are used to produce this meat? How many 
trees in the tropical rainforest are destroyed to produce this meat? (p. 26) 

For Garbarino and the Green Utopians, automobile-based urbanization is a major culprit 
in the anti-sustainable modern lifestyle. "Suburbs are not conducive to sustainable patterns." 
(p. 166) Suburbs allow people to live far away from where they work and shop. Suburbs 
depend upon the car, or other forms of transit. Suburbs are not an acceptable alternative. So 
what, then, is the Utopian alternative? 

The Abolition of Patriarchy 

Garbarino would like to redefine the family in the context of community, what he terms social 
welfare systems for a sustainable society. His ideas parallel those of the social engineers. 
He would make community be parent: "Communities should share joint custody of children 
with parents.... We can require 'registration and inspection' of young children so that the 
community can monitor child development and not lose track of the children for which it is 
responsible." (p. 245) Garbarino also calls for a parenting license. 

Family roles are redefined, too. "We need to end masculine domination both in the 
family and in society, so that we can create a cultural climate in which the sustainable society 
can exist." (p. 66) Patriarchy is a threat to the planet, according to Garbarino. He devotes 
an entire chapter to this subject because he believes we need to have a more feminine 
ethic to survive. His book has probably never been fully embraced by the feminists, 
however, because he believes women should be out working in the gardens and fields 
producing the household's food! 

Garbarino's design for sustainable social welfare systems for families are nearly 
identical to the education reform efforts, including parents as "partners," a "community 
level organization... for transportation systems, formal education, industrial enterprise, and 
the like." (p. 222) Although he does not specifically identify the school as the "hub" of the 
community structure (as we have seen in other education reform writings), it is clear 
that the new environmentally-correct society will be managed by grouping people into 
small neighborhood communities — almost completely self-sufficient in food production 
and other life needs, but requiring intimate governmental managing of their personal 
and family lives. 

Mandatory Population Controls 

Garbarino writes: 



Appendix XXVII 



A-171 



To achieve a stable population, countries will have to establish a comprehensive 
and pervasive family planning program and carefully monitor immigration. At minimum, 
accomplishing this will require incentives for keeping family size at the replacement level, 
penalties for exceeding that level, and complete access to contraception. It will mean that 
family size will be limited to two children, (p. 228) 

Family planning, the obligatory two children, is the cornerstone of Garbarino's 
sustainable society. He lauds the Chinese example, despite its oppressiveness (penalties) and 
slaughter (mandatory abortions) . In fact, rewards and penalties for ecologically responsible 
procreation are a key component to Garbarino's ideal society. He views children as consumers 
of scarce resources, more mouths to feed on a crowded planet. 

Garbarino consistently speaks of children in terms of economics (human capital?) : 

Children are an economic benefit in the households, neighborhoods, and communities 
that rely upon human labor rather than non-renewable energy and materials to produce 
food and provide utilities, (p. 79) 

Limiting the size of specific families may turn children into an economic commodity, 
if people can sell their rights to bear them. (p. 84) 

Children are the currency of family life." (p. 180) 
Cashless Economics 

A radical new economic order is interwoven throughout the entire text of the book. 
Garbarino's economics calls for a cashless society and a new kind of economics that 
accurately accounts for the damage done to the environment. The price of every item 
must calculate the cost in terms of environmental destruction, especially nonrenewable 
resources like gasoline and oil. 

Free enterprise is the villain to the world's environmental woes. It is responsible for 
the destruction of the planet according to Garbarino and he utterly dismisses it as an option 
or a solution. The current "economic order and its cultural baggage are major obstacles in 
the transition to a sustainable society." (p. 116) Reading Garbarino does not make one feel 
comfortable about Gorbachev heading up the new world effort for this Green Utopia (his 
international Green Cross environmental effort). The abolishment of free enterprise has 
always been at the forefront of the communist agenda. 

Severe limits to world trade are called for by Garbarino: "In a sustainable system, world 
trade would be limited to two domains. The first is ideas, technology, and artistic creations 
and the people necessary to communicate them. The second is material goods needed to 
meet basic human needs or to dramatically enhance human experience in ways unavailable 
locally. Most world trade today fails to meet either criterion." (p. 152) It is not clear why 
artistic creations are given such a high priority for trade! The National Endowment for the 
Arts will appreciate this recommendation. 

Voluntary Poverty 

A total and complete reduction in the modern American affluent lifestyle is called for. 
"A relatively poor American family typically uses less of the world's resources than an 
affluent American family, but it still consumes much more than an Indian family that lives at 



A- 172 



subsistence level." (p. 85) Therefore, Garbarino concludes, that only reasonable solution is 
this: "As the world's leading consumer... [the United States] has a special obligation to reduce 
its demands for resources to a level that is domestically sustainable." (p. 89-90) 

Garbarino's ideas about what constitutes "sustainable" and the average American's are 
radically different. He links American consumerism to every threat to the planet. It is not 
unlike the Iowa Global Education exercise for Home Economics students grades 9-12: "Seek 
connections between U.S. consumer and eating habits and the presence of malnutrition 
worldwide." {Catalogue, p. 36) 

A Riceville, Iowa sophomore English class was given a "Simplicity Survey" as part of 
"The Thoreau Project." The test sheds considerable light on the extent to which Garbarino's 
radical ideas about sustainability have infiltrated classroom curriculum. Here are a few 
sample "commitments" that students had to make on the survey: 

• I and/or my family will own no more than three sets of clothes and three pairs 
of shoes per person. 

• I and/or my family will own only one automobile. 

• My family and/or I will eat less meat, more vegetables and fruits, and no 
white sugar. 

• My family and/or I will make our own simple personal products — such as, 
deodorant, soap, toothpaste— from old historical recipes. 

• My family and/or I will learn to do almost everything for ourselves: cleaning, 
baking, repairing, building, etc. 

• My family will have no more than two children. 

This survey is a good indication of how outcome-based education will function. If the 
child does not score at a high enough "committed" level, the "teacher may ask you to retake 
this survey in order to see if the unit changes your commitment. " In other words, if the child 
doesn't display the correct attitudes about this radical form of sustainability, they may have 
to re-take the test to see if their attitudes were changed! 

The New Religion 

To break our addiction to free enterprise, material consumption, and freedom in general, 
Garbarino calls for some new values. It is here that we begin to see the link between his Green 
Utopian view of a sustainable society and the strange-sounding ethical values contained in 
the new educational outcomes being promoted across the country. Garbarino cites Amitai 
Etzioni, saying that he "links consumerism, the work ethic, and cultural patriotism. This is 
a linkage we must break, replacing it with a combination of passionate commitment to 
a humane social environment and rejection of materialism as an end rather than a very 
limited means." (p. 100) The old values have to go, to be replaced by a new ethic. These new 
values necessarily entail a new religion. 

You may have guessed it — we need to form a relationship with the Earth. We are not 
told exactly HOW one goes about forming this new "relationship." Hugging trees is good for 
a start— we need to "speak to the trees and listen to the birds." (p. 226) Presumably, this new 
anthropomorphic view of Mother Earth is the new religion. Garbarino describes it this way: 
"A reformed human family emphasizing equity and harmony... is a good model to follow in 
establishing our relationship with the Earth." (p. 99) 



Appendix XXVII 



A- 173 



Like many of the other new Green Utopians (Al Gore, especially), Garbarino denigrates 
Christianity because it elevates man above nature: "Christianity was an ecological regression 
compared with the primitive animist impulse that emphasized the spiritual integrity of 
existence, the commonality of being, which demanded respect for the trees, the waters, 
the plants, the animals — for the Earth as a whole." (p. 98) Garbarino would replace 
big, bad Christianity with Eastern mysticism. "Buddhism teaches that material goods 
are only a means of achieving personal well-being. Consuming for its own sake has 
no value." (p. 99) 

And, here is a big admission: "Primitive animism has more in common with emerging 
ecological science, although other religious traditions can also accommodate it." (p. 98-99) 
This admission may serve to explain the recent upsurge of religious indoctrination in 
environmental and global education curricula. It also explains the including of native 
American Indian ritualistic rites in children's curricula. 

Garbarino advocates for this new (old) earth-centered religion. But what of other 
religions? What will happen to freedom of religion under this Utopian system? "Freedom 
will be absolute in the realm of ideas and expression but minimal in the domains of 
environmentally threatening behavior. " You can believe whatever you like, but your actions 
cannot harm the environment, however that comes to be defined. In fact, the environment 
reigns supreme in Green Utopia. The Earth's needs (real or perceived) are paramount to 
human needs and human rights. 

The New Green "Outcomes" 

To achieve this Green Utopia requires that human beings accept a new system of ethics, one 
that values the Earth. Garbarino suggests that if "we can forge this link between personal 
and public concerns, we will be able to harness the motivating power of the family in 
transforming Spaceship Earth." (p. 67) The current classroom emphases on environmental 
and global education are prime examples of this. Making small children feel responsible for 
the survival of the planet is one of the mechanisms for forging this link. "Children... need... 
to develop a sense of kinship with nature." (p. 169) 

Reversing biases "that currently discourage reusability, manual labor, and self reliance" 
(p. 205) is one of the goals for educating the public. This means that it is absolutely essential 
that public attitudes and values be altered to fit the new environmental crisis worldview of 
the future, complete with Utopian solutions. 

Amazingly, Garbarino 's book contains language almost identical to an outcome seen 
state by state across America in the new push for outcome-based education. "Socialization 
to adulthood means acquiring the skills and attitudes necessary to assume full responsibility 
in the work place, the home, and the community." (p. 206) An Iowa World Class Schools 
document states: "A world-class education will equip students to live, work and compete as 
successful citizens in a global society." (p. 5) 

In light of Garbarino 's Green Utopia, state by state comparisons of nearly identical 
outcome-based language takes on new significance. The language that educators are 
struggling to define is easily managed by the environmental fringe. In fact, William Spady, the 
father of modern OBE, has written: "A fragile and vulnerable global environment... requires 
altering economic consumption patterns and quality of life standards, and taking collective 
responsibility for promoting health and wellness." (Spady and Marshall, 1990) 

In the new Green Utopia, social abilities are of prime importance. Garbarino gives 



A- 174 



primacy to social development rather than technological issues: "[s]ocial changes, not 
technological fixes, are the primary vehicle for averting disaster and placing humanity on 
sustainable ecological and socioeconomic footing." (p. 21) Because of this de-emphasis on 
technology, he believes that children "must become adept at language, body control, morality, 
reasoning, emotional expressiveness, and interpersonal relations. Unless they do, they become 
a burden— to their families, to our society, and even to themselves." (p. 105) 

The belief system of the Green Utopians explains the national pressure to have attitudinal, 
behavioral and value-laden outcomes. It also explains the vacuum of solid academics. 
Reading, writing and arithmetic will no longer solve the world's problems. The crisis is too 
complex. Humans must be taught to adjust and adapt instead. Garbarino does not stake his 
future hopes in technological development and man's potential to develop scientific solutions 
for the complex environmental crisis. The only hope that he sees is sustainability. 

Another nationally popular outcome has to do with diversity. Garbarino explains why 
this is so necessary: "Cultural diversity is as important as biological diversity in enhancing 
evolutionary resilience and human progress." At least for some, "diversity" has much 
more to do with their religious beliefs in evolution of mankind than it has to do with 
protecting the human rights of religious and ethnic groups. Cultural diversity, in the form 
of multicultural education, often promotes ritualistic pagan practices that enhance a feeling 
of connectedness with the Earth. 

Those who oppose the teaching of this new religion of interconnectedness with nature 
are labeled "racists." When Davenport, Iowa school board member Elaine Rathmann 
challenged a "Multi-Cultural Week" as mere "political indoctrination and social reform" she 
was publicly charged in the local press with racism. 

The New Green Utopian Classroom 

A recent article by Barbara Melz of the Boston Globe appeared in the Des Moines Register 
(6/6/93, p. 3E). Melz details the vulnerability of children to emotional manipulation in areas 
of environmentalism. She quotes from a book by Lynne Dumas {Talking with Your Child 
about a Troubled World, Fawcett Columbine): "Everything becomes a personal issue for kids, 
everything gets related in their minds to their own safety." 

The article goes on to give a poignant example of how vulnerable children can be 
to this type of education: 

This is especially true of environmental issues, she says. From the earliest ages, 
children relate to animals and nature in a kind of magical way. "TV shots of oil-soaked 
birds and seals, whales trapped on a beach, endangered dolphins all these kinds of things 
can be very upsetting to them. They can react with an intensity that surprises parents," 
she says... [S]olid waste disposal is an issue many school-age children glom on to in a 
very concrete way. "They see how much trash they produce in their own house. So here's 
their worry: If everyone's house makes this much trash, what will happen? Will there be 
enough room for me to live in the world?" 

Are children being educated or indoctrinated? Is it fair to burden them with feelings of 
guilt and responsibility based on the perceived crisis of the Green Utopians? 

Only One Choice 

A thorough reading of Garbarino's book, especially in the context of other works by the 



Appendix XXVII 



A- 175 



new Green Utopians, creates the crisis and then presents the solution. His crisis is an 
out-of-control world population problem compounded by scarce resources. His world view 
is clearly founded on the Club of Rome Global 2000 report. Garbarino has a limited view 
of human potential, technological innovation, the value of free enterprise, or ingenuity. 
However, there are serious questions about the scientific and rational validity of the 
entire so-called species. 

The only politically-correct technology for the Green Utopians is apparently the 
computer, probably because of its ability to control human behavior through the charting 
of actions and attitudes. The greater good of society and the seriousness of the threat 
against the planet would likely justify a central data bank to monitor each citizen according 
to the logic of Green Utopians. 

Garbarino's solution is a return to third-world subsistence living. Garbarino doesn't say 
this directly. One must read between the lines and come to understand that abolishing cows 
and cars, transportation and trade, free enterprise and a market economy, and certain basic 
human freedoms in matters related to religion and procreation can only mean an international 
totalitarian society. Granted, Garbarino, the consummate Green Utopian, objects to this 
(totalitarianism) and feigns to distance himself from the nastiness of it all. Yet his proposals 
can mean nothing else. 

The New Green World View 

To explain sustainability, Garbarino gives an extensive quote from Voluntary Simplicity 
by Duane Elgin, in which Ram Dass — "a Western-style intellectual turned Eastern-style 
mystic" — tells a story about an ideal society. It sheds much light on what Garbarino means 
by a "sustainable" society. Here are a few highlights: 

I look out over a gentle valley in the Kumoan Hills at the base of the Himalayas. A 
river flows through the valley, forming now and again manmade tributaries that irrigate the 
fertile fields. These fields surround the fifty or so thatched or tin-roofed houses and extend 
in increasing narrow terraces up the surrounding hillsides. 

In several of these fields I watch village men standing on their wooden plows goading 
on their slow-moving water buffalo who pull the plows, provide the men's families with 
milk, and help to carry their burdens. And amid the green of the hills, in brightly colored 
saris and nose rings, women cut the high grasses to feed the buffalo and gather the firewood 
which, along with the dried dung from the buffalo, will provide the fire to cook the grains 
harvested from the fields and to warm the houses against the winter colds and dry them 
during the monsoons. A huge haystack passes along the path, seemingly self-propelled, in 
that the woman on whose head it rests is lost entirely from view. 

It all moves as if in slow motion. Time is measured by the sun, the seasons, and the 
generations. A conch shell sounds from a tiny temple, which houses a deity worshiped in 
these hills. The stories of this and other deities are recited and sung, and they are honored 
by flowers and festivals and fasts. They provide a context — vast in its scale of aeons of time, 
rich with teachings of reincarnation and the morality inherent in the inevitable workings of 
karma. And it is this context that gives vertical meaning to these villagers' lives with their 
endless repetition of cycles of birth and death, (p. 36-37) 

The Other Side of the Story 

This scene is seductive, rich with description of people living in a sustainable society close 
to the Earth. However, there is another side to this story. It would burst the bubble of the 



A- 176 



Utopians to hear it. Further, it would give great credence to Christianity as a potent force for 
personal freedom in the world. This alternative account comes from a humble missionary 
story, The Bamboo Cross, by Homer Dowdy: 

Just over beyond the mountains which surrounded the Sixteen Peaks lived the Tring. 
They were the most difficult of all the mountain tribes that Sau had tried to reach. They 
were shy. When strangers approached they scurried into the forest. The Tring were the 
poorest, most fear-ridden tribe of all. If Sau's people often went hungry, the Tring lived 
always on the edge of starvation. 

They did not live in villages. 

The spirits that ruled them forbade one family to dip water from another's source; 
one of them could not even live across the stream from an in-law. So Tring houses 
were spotted sparsely for long distances along the mountain rivers, each a desolation 
picture of isolation. 

Clinging to the steep, stony sides of mountains for mere existence, the Tring shivered 
in the ceaseless cold of the wind. Often gusts broke down the corn before it could come 
into ear. The wet monsoon blew when they needed it to be dry, and when it was dry for 
too long they suffered from the drought. 

The demons, too, kept them hungry. If a man went to his field in the morning and found 
dew on the ground, he returned home without working that day to avoid a curse. 

If fortune kept him away from his field beyond the planting season — well, it was 
evident that the spirits did not want him to find his food in such an easy way. 

And if he did plant, he was careful not to plant enough to satisfy his needs. The 
spirits always demanded of him that he search in the forest for roots and leaves to eke 
out his diet. For this reason he was inclined to plant just enough mountain rice to keep 
his alcohol jars full. (p. 72) 

The Bamboo Cross is a descriptive account of how people's lives in this tribe and 
others were truly transformed when they were released from the spiritual bondage to their 
demons and fat sorcerers (who exacted large amounts of material goods from their subjects 
to relieve them of supposed curses) . 

New Green Utopia 

Green Utopia, then, may be a place— several generations hence— where people living in a "sus- 
tainable" society strongly resemble more primitive cultures with one notable exception. There 
will be a little box that does things, and people talk on it, and you have to push the correct 
buttons for food and medicine. No one knows the complicated math and science required to 
program this box because shopkeeper math and logic are not taught anymore. The little box 
is, therefore, an object of great superstition and magic. It accurately predicts the weather and 
seems to know almost everything. 
The little box is the computer. 

Garbarino's book was probably never a best-seller. But for those who are seeking to under- 
stand the rationale, worldview and justification for such a radical education reform proposal, 
it just might provide a few unexpected answers. 



INDEX 



INDEX 



A 

Abdela, Daphne, 29 
Abeene, Pat, 347 

Academy for Educational Development, 290 
accelerated learning. See Superleaming 
Accelerated Schools, 435-436 

Accomplishing Europe through Education and Training, 
360-361 

accountability, 4, 55, 191-192, 355 

based on measurements of teacher quality, 296 

damage resulting from, 429 
Accountability in American Education: A Critique, 3-4 
Acevedo, Jeronimo Saavedra, 360 
ACHIEVE, 411-412 
Achieve, Inc., 446 
achievement, 295-296 
Achievement Skills programs, 228-229 
"ACLS (American Council of Learned Societies) — USSR Ministry 

of Education Commission on Education," 231 
Act 236, 268 

Action for Excellence, 73, 210 
"Action Plan to Deal with Violence," 453n 
Active Teaching, 226 
Adams, Marilyn Jager, 172, 212, 417 
Adler, Mortimer, 226, 280-281 
adult education, A101-102 
Adult Education Act, 133, 387 
Adult Performance Level (APL) Study, 183, 196 
Advanced Systems in Measurement and Evaluation, Inc., 274, 
392-393 

Adventuring, Mastering, Associating: New Strategies for Teach- 
ing Children (Alexander Frazier), 288 
Advisory Commission on Intergovernmental Relations, 338 
Agenda for the Nation (Kermit Gordon), 83 
Aikin, Wilford M., 20-21 

Akron (Ohio) Forum of Regional Collaboration to Develop 
Learning Strategies for the Global Economy, A127- 
128 

Akron Regional Development Board, 267-268 

Albanese, J. Duke, 378, 431-432 

Alber, Louis, 95 

Albright, Madeline, 36 

Alesen, Lewis Albert, 49 

Alexander, Lamar, 235 



and "America 2000 Plan," 278-279 
and Anita Hoge, 221 
biography of, 376 

and Educational Excellence Network, 352 

education restructuring with Russia, 188, 290 

as Governor of Tennessee, 239, 274 

and national curriculum plans, 244 

and National Governors' Association, 299 

and national standards for education, 357-359 

Alinsky, Saul, 376 

Alioto, Robert F, 136 

Allen, Adrienne, 363 

Allen, D wight D., 101 

Allen, Richard, 304 

All Our Children Learning (Benjamin Bloom), 171 
Allport, Gordon, A60 
Allyn, David, 49 

"Alternative Assessment of Student Achievement: The Open 
Book Test" (Thomas A. Kelly), 322-323 

"Alternative Futures for Our Society and Implications for Edu- 
cation" (Harold Pluimer), 173 

alternative life styles, 132 

America, as socialist democracy, 59-60, 280-281 

America's Choice: High Skills or Low Wages!, 271, 329, A73 

"America's Next Twenty-Five Years: Some Implications for 
Education" (Harold Shane), 139-140 

America 2000, 147, 300, 334. See also Goals 2000 (Educate 
America Act) 
and Chester Finn, 385 
and NASDC, 298 
unveiling of, 254-255 

America 2000: An Education Strategy (Rev.)— Making This 
Land All That It Should Be, 278-279 

"America 2000 Plan," 278-279 

American Academy of Political and Social Science, 18, A24 
American Assembly, 60 

American Association for the Advancement of Science, 14, 
A112 

American Association of Enterprise Zones, 377 
American Association of School Administrators (AASA), 270, 
290, A38 

with Citizens for Excellence in Education, 347-348 
and An Educator's Guide to Schoolwide Reform, 434-436 
American Association of School Librarians, 339 
American Civil Liberties Union (ACLU), 13, 350, A21 
American Council for Collaboration in Education and Language 



1-3 



1-4 



the deliberate dumbing down of america 



Study (ACCELS), 419 
American Council of Learned Societies, A139 
American Council of Teachers of Russian, A140 
American Council on Education, 91 
American Educational Computer, A3 7-3 8 
American Educational Research Association, 198, 326, A159 

and persons involved with, 201, 220, 236 

writing to clarify values, use of, 223 
American Enterprise Institute, 176 
American Express Travel Related Services Co., Inc., 344 
American Family Association Journal, 418 
American Family Association Law Center, 369, 452n 
American Federation of Labor/Council of Industrial Organiza- 
tions (AFL/CIO), 177, 330, A137 
American Federation of Teachers [AFT], 81, 290, 327, 
A128-A130 

and Albert Shanker, 236, 256, 285 

and An Educator's Guide to Schoolwide Reform, 434-436 

Philadelphia Federation of Teachers, 302 

and Reach for the Stars: A Proposal for Education Reform 
in Georgia, 287 
American Flag Committee, 43 
American Historical Association, 18, 23 
American Humanist Association, 21, 71, 192-193 

Free Inquiry, 241 
American Institute for Character Education (AICE), 229, 375, 
389-390, 419 

American Institute for Research, 434-436, A7, A12, A48 
American Law Institute Model Penal Code Committee, 40 
American Legislative Exchange Council (ALEC), 338 
"American Malvern," 32-33 

American Personnel and Guidance Association, 145, 203 
American Psychological Association, A152-153 
American Road to Culture (The) (George Counts), 18 
American School Board Journal, 414 

American Sexual Behavior and the Kinsey Report (Morris Ernst 

and David Loth), 39 
American Stock Exchange, 176 

American Volunteer, 1981 (The): Statistics on Volunteers, 179 

Anacostia High School, 331 

Anaheim Bulletin, 90-91 

Anderson, John, 376 

Anderson, Karen, 299 

Anderson, Robert, 100 

Anderson, Ronald, 422 

Anderson, Tucker, 299 

"And It Came to Pass," 95-96 

"And You Thought American Schools Were Bad" (Theodore 

Dalrymple), 244, 359 
Anita Hoge/Pennsylvania case, 221, 348-349 
Annenberg, Walter H., 218, 355 
Annenberg Institute for School Reform, 218 
Annual National Convention of Professors of Educational 

Administration (34th), 164 
Anrig, Gregory, 152, 177 



Apple Computer, Inc., 290, 302, A112 

Applied Behavioral and Cognitive Sciences, Inc., 147 

Appraising and Recording Student Progress: Evaluation Records 

and Reports in the Thirty Schools (Eugene R. Smith, 

Ralph W. Tyler), 21 
apprenticeships, 437-438, A97, A104 
history of, xx 

"Appropriate Education in the Primary Grades: A Position State- 
ment of the National Association for the Education of 
Young Children (NAEYC)," 258 

Aramony, William, 175 

A.R.A. Services, Inc., 235-236 

"Are Basic Skills a Casualty of KERA? — Are state tests causing 

teachers to underemphasize basic skills?", 274 
Aristotle, xiii 

Arizona, 132, 144, A130-131 

Arizona Federation of Teachers, 81, 191-192 

Arizona Forum (The), 191-192 

Arizona Republic (The), 424 

Arkansas, 29 

Armco Steel, 176 

Arms Control and Disarmament Act, 65 

Armstrong, Andrew C, 4 

Armstrong, Jane, 270-271 

Arthur, Corey, 29 

Arthur Andersen & Co., 268 

Arts and the Schools (Jerome J. Hausman), 152, 397-398 
"Arts Education: A Cornerstone of Basic Education," 397- 

398 
Ash, Roy, 112 

Ashbrook, John M., 56, 62, 66 
Ashland Oil, 333 

Aspen Institute for Humanistic Studies, 136, 281 
Assagioli, Roberto, 73-74, 229, 264n, 427 
assessment, 235-236, 298, 329, A44-51 
authentic, 159 
need for statewide, 286-287 
needs, A39-40 
use of tests in, 124-125 
Assessment Framework for the Michigan High School Profi- 
ciency Test in Reading, 325-326 
Association for Educational Computing and Technology 

(AECT), 93-94, 113, 170-171, A35-38 
Association for Supervision and Curriculum Development 
(ASCD), 311-312, 350 
"21st Century Report Card," 284-285 
and agreements of William Spady and Robert Simonds, 

347-348 
Annual Conference (1978), 148 

Celebration of Neurons (A): An Educator's Guide to the 

Human Brain, 341 
Curriculum Update, 397-398 
Educational Leadership, 135, 148, 155, 204 
Education Update, 202, 248 

"Elementary Education for the 21st Century: A Planning 



Index 



1-5 



Framework Based on Outcomes," 258-260 
and Skinnerian behavior modification, 127 
and teaching religion in schools, 418 
and World Conference on Education, 96, 270 
Association for Supervision and Curriculum Development, 

Yearbook (1962), A40 
Association of California School Administrators (ACSA), 
107-108 

Association of Christian Schools International (ACSI), 367-368, 
452n 

Association of School Business Officials Research Corpora- 
tion, 328 
Astuto, Terry, 264n 
AT&T, 344 

Athens Daily News/Banner Herald (Georgia), 436-437 

Atkins, Rick, 395-396 

Atlanta Constitution (The), 111, 316 

"Education in a Relaxed Atmosphere: Brain-Based Method — 
Teaching Trend Emphasizing Creativity, Flexibility and 
Informality Growing in Area Schools," 425-427 
"Educators, Religious Groups Call School Truce — They 

Agree to Disagree on Hot Issues of '90s," 349-350 
"Georgia Schools OK Tracking System," 407-408 
"Gingrich: Taps for Textbooks — He Says Computers Will 

Replace Them," 400-401 
"Teaching Politics," 370-371 
Atlanta-Journal Constitution (The), 393-394 
Atlanta Life Insurance Company, 344 
Atlantic Monthly, 381, 435-436 
attention control, 248, 249 

attitudinal changes in students, bringing about desired, 
207-209 

Audiovisual Communication Review, 67 
Avila, Rosie, 433-434 
Aydelotte, Frank, 12 



B 

"back to basics," A91 

Back to Basics Reform Or...OBE Skinnerian International Cur- 
riculum, A76, A151 
Back to Freedom and Dignity (Francis Schaeffer), xxvi, A130 
"Back to the Future — with Funding from NASDC and Direction 
for the Hudson Institute, the Modern Red Schoolhouse 
Updates an American Icon for the 90's" (Lynn Olson), 
323 

Baer, Richard, Jr., 351 

Bailey, Alice, 51, 54n, 283, 366-367 

Bailey, Dennis, 182 

Bailey, George W., 217-218 

Bailey, Stephen K., 83, 152 

Baker, Virginia Birt, 288-289 

Baldwin- Whitehall public schools, 68 



Ballantine, Chrissy, 337 
Ballou, Frank A., 24 
Ballou, Roger, 344 

Bamboo Cross (The) (Homer Dowdy), A175-176 
Bandura, Albert, A123 

Bangor Daily News (The) (Maine), 155, 236, 255-256, 
345-346 

Barbara Morris Report (The), 149-150 

Barber, Carol, 233 

Barnes, Rick, 393-394 

Barnes, Ron, 181 

Barnes, Susan, 191 

Barnicle, Tim, A96 

Baroody, William J., 176 

Barr, A.S., 214-215 

Barram, David, A76, A96 

Barrett, Catherine, 139 

Barrett, Nancy, A46 

Barrette, William, 174 

Barry, Janet N., 240 

"Basic Education Program" (North Carolina), 226 
"basic learning needs," 451n 

Basic Principles of Curriculum and Instruction (Ralph Tyler), 
43 

basic skills, 245-247, A21 
emphasis on, 172 

recommendations from National Education Association 
(NEA), 139 

Basic Skills of the National Institute of Education, 146 
Bayev, Boris, 230 

Beacon Journal (Akron, Ohio), 445-446 

Bean, Scott W, 316 

Bear, Barry, 253-254 

Beard, Charles A., 24 

Beatty, Walcott H., 89-90 

Becker, James, 162 

Schooling for a Global Age, 151 
Becker, W.C., 75 

Becker-Engelmann program. See Direct Instruction 
Becoming a Nation of Readers (Commission on Reading), 
211-212 

"Becoming Planetary Citizens: A Quest for Meaning," 113 
Beginning to Read: Thinking and Learning about Print (Marilyn 

Jager Adams), 417 
Behavioral Objectives: A Guide for Individualized Learning, 

101 

Behavioral Research Laboratories, 82-83 
Behavioral Sciences, 86, 137-138 

Behavioral Science Teacher Education Program (BSTEP), 56, 
88, 207 

excerpts from, A23-26 

initiation of, 72 
behaviorism, 75, 210-213 

Christian conflict with, 185-186 

philosophy of, 242 



1-6 



the deliberate dumbing down of america 



psychology of, 118 
research of, 121 

as scientifc and research-based, 238-239 
behavior modification, 119-120, 126, 127 
"Beijing Journal: Personal File and Worker Yoked for Life" 

(Nicholas D. Kristof), 294 
Bell, Don, 112 

Bell, Terrell H., 141, 183, 221, 257, 350 

Adult Performance Level (APL) Study, 133 
"creating crisis to bring about change," xviii 
and educational research laboratories, 205-206, 215 
Edward Curran, dismissal of, 192 

International Conference for Parent/Citizen Involvement 

in Schools, 188-189 
and Kelwynn, Inc., 394 

National Commission on Excellence in Education, A28 
Performance Accountability System for School Administra- 
tors (A), A39-41 
Thirteenth Man: A Reagan Cabinet Memoir (The), 
A75-76 

and educational research laboratories, 160 

Performance Accountability System for School Administra- 
tors (A), 124-125 
BellSouth Corporation, 344, 439 
Benjamin, Harry, 40 
Bennett, William, 118, 184, 236, 250 

and Anita Hoge, 221 

and appointment of Hillary Rodham Clinton, 452n 

biography of, 375-376 

and character education programs, 228-229 

on design team for Modern Red Schoolhouse, 323 

and Educational Excellence Network, 352 

Effective Schools Research, 202 

and National Commission on Civic Renewal, 371 

and outcome-based education, 238-239 

Reach for the Stars: A Proposal for Education Reform in 
Georgia, 285 

U.S. -Soviet Education Agreements, 230 
Benzel, Brian, A70-71 
Berkeley, 186, 199 
Berlin, Gordon, 273 
Berman, Paul, 225-226, A42-43 
Bernardin, Pascal, 346 
Bernays, Edward, 12 
Berreth, Diane, 418 
Berry, Mary E, 149 
Berry, Sharon R., 367-368 
Berryman, Sue E., 244-247 
Bettelheim, Bruno, 21 
Better Boys Foundation, 441 
Better Homes and Gardens Magazine, 434 
"Between Classes — What Cost, Accountability?" (Terry L. 

Forthum), 191-192 
Beversluis, Joel, 276-277 

Beyond Freedom and Dignity (B.F. Skinner), 109, 185-186, 



A26 

B.F. Skinner: The Man and His Ideas (Richard I. Evans), 

77-78, A35 
Bias Crime Task Force Report, 405 
Bienter, Robert F., 99-100 
Bierwirth, Jack, 337 

"Big Bad Cows and Cars: Green Utopianism & Environmental 

Outcomes" (Sarah Leslie), A167-176 
"Big School Changes Proposed," 155 
Billington, James, 341-342 
Bill of Rights (American), 27 
Billups, Andrea, 437-438 
birth control, 103 
Bishop, Lloyd, 100 

Bismarck Tribune (North Dakota), 348-349 
Black, Florence Massey, 31 
Block, Clifford, 290 

Block, James, 117, 118, 227, 228, 313-314 

"Mastery Learning: The Current State of the Craft," 
155-156 

Bloom, Benjamin, 79, 134, 189, A43, A75 
All Our Children Learning, 160, 171 
and behavior modification, 126, 207 
and Direct Instruction, 117, 228 
"Father of Mastery Learning," 4, 141, 227 
and Mastery Learning, 124-125, 370, A41 
"New Views of the Learner: Implications for Instruction 

and Curriculum," 148 
Stability and Change in Human Characteristics, A89 
Taxonomy of Educational Objectives: The Classification of 
Educational Goals, Handbook II, Affective Domain, 29, 
52-53, 65, 69, 187, A22, A89 
Bloom, Sophie, 79 
Blosser, Fred, 446 

Blumenfeld, Samuel, 254, A72-80, A81-89, A131 

foreword to book, xi-xii 

Whole Language OBE Fraud (The), 6, A57-64 
Blumenfeld Education Letter (The), 264n, 274, A72-89, 451n 
Blyth, John W, A9 
boarding schools, 155, 336 
Boatman, Robert, 104 
Bock, John C, 99 
Boeing, 446 
Boggs, Larry J., 109 
Bohlen, Charles E. (Chip), 12 
Bolt, Beranek, and Newman, Inc., 171, 417 
Bong, Russell, 308-309, 451n 
Bonstingl, John Jay, 420 
Bontempo, Robert, 447 
Boorstein, Michelle, 103 
Boosalis, Helen G., 176 
Boring, Edwin G., A61 
Bosterick, Prudence, 11 
Boston Evening Transcript, 13 
Boston Globe (The), 392, 396-397, A74 



Index 



1-7 



Boston University, 219-220 

Center for the Advancement of Ethics and Character, 312, 
351, 421 
Bottomly, Forbes, 128 
Bottoms, Gene, 307 
Bowen, Charles, 177 
Bowen, Robert, 398 
Bowman, Barbara T., 417 
Bowman, Isaiah, 24 

Boyce, Eugene Maxwell, 198, 310, 317, 355, 451n 
Boyer, Ernest L., 80, 217, 226, A46, A51 
Boyer, Marilyn, 339-341 
brain-compatible learning, 339-341 
brainwashing, xiii, 209, 346, A143-145 
in Red China, 398 

reversing the process in America, 450 

and sensitivity training, 131-132 

and Tactics for Thinking, 248-249 

techniques of, 49 
Brainwashing (Edward Hunter), 209, 264n 
Brainwashing in Red China: The Men Who Defied It (Edward 

Hunter), 209, 264n, 450 
Brameld, Theodore, 11 
Brandt, Ronald, 135, 169, 248, 249 
Brandwein, Paul, 78 
Branscomb, Lewis M., 235-236 
Braun, Greg, 279 
Braun, William J., Sr., 415 
Brave New Schools (Berit Kjos), 348-349 
Brave New World (Aldous Huxley), 17, 18, A91 
Breasted, James, 206 
Breedlove, Carolyn, 409 
Bremerton Sun (Washington), 263 
"Bridging the Atlantic People-to-People Links," 411-412 
"Brief Description of Intervention," 116 
Brigham Young University, 100 
Brighton, Suzanne, 439 

British Columbia Teacher's Federation, 291-292, 451n 

"Broad-Gauged Research/Reform Plan for Secondary Educa- 
tion — In the Tradition of the Eight-Year Study" (Project 
on Alternatives in Education (PAE), 169 

Broady, Stephen, 203-204 

Brock, William E., 327, 330, 451n 

Brock Group (The), 327 

Bronfenbrenner, Urie, 69, A22 

Brookings Institution, 299-300, A91 

Brooklyn College, 96-97 

Brookover, Wilbur, 217 

Broome, Edwin C, 31, 38 

Brown, Jed, A122-125 

Brown, Mary V., 68 

Browning, Dominique, 297 

Brown University, 218, 351 

Bruner, Charles, 443 

Bruner, Jerome C, 114, 117, 132, A57-59 



M:ACOS (Man: A Course of Study), 226, A63-64 

In Search of Mind, A57 
Bryan, William Jennings, 13 
Buckley, Mel, A27 
Buckley, William F, 360 

Budapest International Seminar on Educational Technology, 
147 

Buddhism, 22 

"Building a Foundation for Life-Long, Self-Directed Learning," 
412-413 

Bulletin (National Association of Secondary School Princi- 
pals), 184 

Bundy, McGeorge, 141 

Burchett, B.R., 30-31 

Bureau of Justice Assistance (BJA), 444 

Bureau of Planning and Development of the California State 
Department of Education, 96 

Burit, Kent Garland, 135 

Burke, Robert H., 97-98 

Burkhart, Pat, 248 

Burningham, Leland G., 141, 215 

Burns, Christine, 412-413 

Burns, M. Susan, 212, 417 

Burns, Robert, 216 

Burstall, Clare, 177, 244, 357 

Bush, Barbara, 188, 289, 351 

Bush, George, 12, 243, 254-255 
administration of, 274 
and Education Summit (1989), A73 
and Lamar Alexander, 278-279 
The National Youth Apprenticeship Act, 301 
and New American School Development Corporation 

(NASDC), 290, 298 
Points of Light, 179 

School-to-Work Opportunities Act, 357-359 

Six Ambitious Goals, 273 

support of Edison Project, 299 

voucher program, for private schools, 289, 301 
Bush, Jeb, 243 
Bushnell, David S., 68 

Business and Education Reform: The Fourth Wave — A Research 

Report, 331-332 
Business Roundtable (The), 273 
Buzbee, Sally Streff, 349-350 



c 

California, 127, 144 

California Assembly (The), 76 

California Journal on Teacher Education, 264n 

California Learning Assessment System, 393 

California Medical Association, 49 

California Republican Women's Federation, 110 



1-8 



the deliberate dumbing down of america 



California School Accounting Manual, 76 

California State Board of Education, 76 

California State Senate Investigative Committee, 208 

"Call for a Radical Re-examination: Education Should Reflect 

a New International Economic Order (A)" (Michael 

Debeauvais), 194-195 
Cambridge Center for Behavioral Studies, A153 
Cambridge Group (The), 353 
"Cambridge Somerville Youth Study (The)," 202 
Campbell, Allan K., 128, 235-236 

"Can Computers Teach Values?" (Joseph A. Braun, Jr., Kurt 

Slobodzian), 184-185 
Candler, Warren A., 10 
Canfield, Jack, 74 
Cape Cod Times (The), 308 
Capitalism, 19 
Carballada, R. Carlos, A112 
Cardoso, Fernando Henrique, 386 
Career Ladder Program, 305 
Career Passport (Ohio), 267 
Carle, Erica, 34-35, 53n 

Carl Rogers on Encounter Groups (Carl Rogers), A135 

Carlson, Bill, 413-414 

Carnavale, Anthony P., 327, A46, A112 

Carnegie, Andrew, 357-358 

Carnegie Board for Professional Teaching Standards, 255 
Carnegie Corporation, 7, 30, 72, 73, 161 

and "America 2000 Plan," 278-279 

Conclusions and Recommendations for the Social Studies, 
265 

and David W. Hornbeck, 273 

and Educational Testing Service (ETS), 38 

Education Commission of the States (ECS), 91 

funding of projects/organizations, 21, 23, 210, 245, 271, 

357-358 
and John Gardner, 376 

and A Nation Prepared: Teachers for the 21st Century, 287 

Project Read, 82-83 

Soviet Academy of Science, 229-230 
Carnegie Corporation British and Colonies Fund, 12 
Carnegie Endowment for International Peace, 11, 36, 38, 42, 
47-48 

Carnegie Forum on Education and the Economy, 235-236, 

255-256 
Carnegie Foundation, 12, 18 

control of education, 10, 11, 13 
Carnegie Foundation for International Peace, 35 
Carnegie Foundation for the Advancement of Teaching, 8, 

73, 91, 210 

and David W. Hornbeck, 204-205, 241-243 

and Ernest Boyer, 80, 217 

grant to Lee Shulman, 241 
"Carnegie Foundation Selects a New Leader," 80 
Carnegie National Alliance for Education and the Economy, 
355 



"Carnegie Report on Education: 'Radical Blueprint for Change'" 

(Nancy Garland), 236 
Carnegie-Soviet Education Agreement, 36, 45, 235, 261-262 

extent of damage resulting from, 290-291, 309, A139 

opposition to, 294 
"Carnegie Teaching Panel Charts 'New Framework' — Grants 

Totaling $900,000 Made to Press Reforms," 235-236 
Carnegie Unit, 154, 302 

possible removal of, 69, 83, 141, 190 

requirements of, 429 
"Carnegie Unit: An Administrative Convenience, but an Educa- 
tional Catastrophe (The)" (Carl W. Salser), 98 
Carnine, Douglas, 387, 417, A91-94 
Carnoy, Martin, 99 
Carol, Lila N., 167 
Carroll, John, 79 
Carroll, Priscilla, 436-437 
Carswell, Marion, 11 
Carter, Jimmy (President), 151 
Casa dei Bambini, 8-9 
Cascade International of San Francisco, 313 
Casey, Greg, 401 
Castro, Fidel, 136, A129 

Catalogue of Global Education Classroom Activities, Lesson 

Plans, and Resources, 276 
Cavazos, Lauro, 301 
Cawelti, Gordon, 260 
CBS, Inc., 176 

Celebration of Neurons: An Educator's Guide to the Human 
Brain (A) (Robert Sylwester), 341 

Census Bureau (U.S.), 1981 Mapping Project of, 295-296 

Center for Advanced Study in Behavioral Science, 141, A22 

Center for Civic Education, 374 

Center for Cognitive Studies, A57-58, A63-64 

Center for Collaboration for Children of California State Uni- 
versity, 440 

Center for Democracy and Citizenship, 374 

Center for Economic Development, 377 

Center for Educational Innovation, 299 

Center for Educational Research and Innovation (CERI), 191, 
264n 

Center for Learning and Competitiveness, 327 
Center for Living Democracy, 374 
Center for Outcome-Based Education, A127 
Center for Planning and Evaluation in Santa Clara Country, 
110 

Center for Policy Alternatives, A42 
Center for the 4th and 5th R's, 351 

Center for the Advancement of Ethics and Character, 220, 
351 

Center for the New West of Denver, Colorado, 179-180 
Center for the Study of Democratic Institutions, 109, 185- 
186 

Center for the Study of Human Resources (University of Texas 
at Austin), xx, 326-327, 329 



Index 



1-9 



Center for the Study of Learning Disabilities, 417 
Center for Workforce Preparation, 377 
Center of Advanced Mastery, A42 

Center of the American Experiment Breakfast and Luncheon 

Forum Series, 385-386 
Center on Education and Work, 429-430 
Central Intelligence Agency (CIA), 38 
Certificate of Initial Mastery (CIM), 242, 286, 294 

National Center on Education and the Economy, 271 

in Oregon, 343-344, 355, A131 

used as assessment, 329, A47 
Challengers for Insight, 339-341, 452n 
Chamber of Commerce (United States), 377 
Champlin, John, 193, 314 
"change agent," 207, 263 

John Goodlad, 56 

meaning of, 39, 55 

Thomas A. Kelly, 160 
Change Agent's Guide to Innovation in Education (The) (Ronald 

G. Havelock), xvii, 120, 280, 296, 353, A65-A66 
"Changing Admission Procedures in Four-Year Colleges to 

Support K-14 Reform," 429-430 
"Changing Conditions in American Schools" (Don Davies), 
88 

"Changing Teacher Practice: Final Report of an Experimental 

Study," 191 
Chao, Elaine, 376 

Character Counts! Coalition, 351, 374 
character education, 252, 351-352, 419 
basis of, 228-229 

"Character Education Catching on at Schools — Respect, 

Responsibility Emphasized," 421-422 
"Interest in Character Education Seen Growing," 311-312 
states involved in, 351 

Williamsburg Charter Character Education Project, 377 
Character Education: Lessons from the Past, Models for the 
Future, 252 

"Character Education Catching on at Schools — Respect, Respon- 
sibility Emphasized" (Anu Manchikanti), 421-422 
Character Education Partnership, 374, 376, 377 
Charles Schwab Corporation, 344 
Charles Warren Center (Harvard University), 49 
Charner, Ivan, 403 

charter schools, 290, 317, 336, 352, 362-363, 448 
and Charter School Expansion Act of 1 998, 424 
as unconstitutional (Utah), 422-423 

Charter Schools Act (1998), 422-423 

"Charter Schools Bill Now Law," 424 

Chase Manhattan Bank, 299 

Chauncey, Henry, 79 

Chevron Conference on the History of the Behavioral and Social 

Sciences (1995), 49 
Chicago Board of Education, 78 
Chicago Conference on Holistic Education (1990), 276 
Chicago Mastery Learning Project, 79, 235, 241, A153 



drop-out rate as result of, 362 
"Chicago Statement on Education (The)," 276, 282 
Chicago Sun Times, 362-363, 366 
Chicago Tribune, 361-362 

"City Schools Dropping Iowa Skills Tests," 362 
Child Abuse in the Classroom (Phyllis Schlafly), 124, 158n 
Child and Family Policy Center, 443 

Child Development and Behavior Branch (CDBB) of the 

National Institute of Health, 386 
Childhood Education, 113 
Childhood in China (William Kessen), 135 
"child in need of assistance" (CINA), 253-254 
children 

gifted, 152-153, A9 

as human "capital," xxv, A44-51 

as human resources, xi 

retarded, 8 
Children's Resources International, 395 
Children's Story (The) (James Clavell), 70, A149 
"Children Are Not Chattel" (Kathy L. Collins), 241 
"Children, Computers, and Education" (David Porteous), 

250-251 
Childs, Michael, 425 
China, A171 

China International Intellectual Resources Development Center 

for Children (CICC), 335 
"China Orders Manual Labor for Students: Beijing Moves Again 

to Control Citizenry," 262 
"China Says Educators Sowed Seeds of Unrest," 262 
Chisholm, Brock (General), xix, 28, 42 
choice, educational. See vouchers 
Choice in Education: Opportunities for Texas, 299 
Chomsky, Noam, A57-58 

Choosing Better Schools: Regional Strategy Meetings on Choice 

in Education, 300 
Choosing Outcomes of Significance (William Spady), 354 
Christian Coalition, 315, 349-350 
Christian Conscience (The), 405-406, 452n, A44, A90 
Christian Legal Society, 438 
Christians 

attacked by Green Utopians, Al 72-1 73 

criticisms of, 418 

and LIFEPAC curriculum, 222-223 
and Mastery Learning, 367-368 
morals of, 21-22 

opposition to outcome-based education, 343, 347-348 
traditions of, 27 

utilizing Skinnerian methods of education, xxvii 
Christian Science Monitor (The), 13-14, 135, 251 
Christian Science Publishing Society, 251 
Chronicles, 301-302 

Chronology of Education with Quotable Quotes (Dennis 

Cuddy), 6n 
Chubb, John, 298-300, A91-92 
Chugani, Harry, 382 



1-10 



Churchill, Andrew M., 327 

Church Universal and Triumphant, 9 

Circles of Learning: Cooperation in the Classroom, Rev. Ed. 
(D.W. Johnson, R.T. Johnson, Edith Johnson Holubec), 
239 

"Circular Causal and Feed-Back Mechanisms in Biology and 

Social Systems," 50 
Citicorp, 344 

Citizen's Handbook (A): The Kentucky Education Reform Act — 
Historical Background, Provisions, Time Line, Questions 
and Answers, Court Cases, Overview, 263 

Citizens for Excellence in Education, 343 

Citizenship Assessment (1969-1970), 178 

"City's Dream Unfulfilled (A)," 219 

Civic Practices Network, 374 

civic renewal, 373 

Civil War, 307, 318 

Clark, Joseph S., 66 

Clark, Kenneth B., 83 

"Classroom Brain-Watchers?" (Kathleen Parker), 409-410 

Classroom Management, 81 

Clavell, James, 70, A149 

Clay, William, Sr., 415 

Clem, Tim, A132 

Clements, Barbara S., A82 

Clemson University, 393-394 

Clendenin, John, 344 

Cleveland, Sarah H., A112 

Clinic Service/Family Counseling Center of the Massachusetts 

Society for Prevention of Cruelty to Children, 441 
Clinton, Hillary Rodham, 85, 235, 302 
Clinton, William Jefferson (President), 28 
AmeriCorps, 179 

and character education programs, 421-422 
and Charter School Expansion Act of 1998, 424 
and Community-Oriented Policing (COP), 444-445 
and computers, 381 
and education legislation, 402 

endorsement of New Transatlantic Agenda (NTA), 
359-361 

Goals 2000 Act (Educate America Act), 323 

as Governor of Arkansas, 268 

and Mikhail Gorbachev, 308 

plan to prevent school violence, 410 

School-to-Work Opportunities Act, 330, 357-359 

signing of Workforce Investment Act (H.R. 1385), 416 

visit to Tiananmen Square, 391 
"Clinton Charm Gets Rio Workout," 386 
Club of Rome, A169, A174 
"Clusters Promote Community Growth," 439 
Coalition of Essential Schools (CES), 24-25, 141, 217-218, 
326, 435 

Common Principles of, 333 

reports of failure of outcome-based education in, 355 
and Theodore Sizer, 344-345 



Cocking, Walter D., 38, A5 
cognitive psychology, 247 
Cohen, Alan, 173, 197, A127 
Cohen, Michael, 172, A56, A96 
Coker, Homer, 193, A2 7 
Cold War, A63 

treatise on, 44 
Cole, Michael, 262, A139 
Cole, Paul F, 330 
Cole, Thomas W, Jr., A112 
Coleman, James S., 300 
collaboration, to effect reform, 331-334 
Collaborative Design and Developmental Program, A103-104, 

A108 
collectivism, 24, 33 

College Entrance Examination Board, 91 
Collins, James, 310 
Collins, Kathy L., 241 
Colorado, xxvi, 29, 144, 318-320 
Columbia Broadcasting System, 12 
Columbia Teachers College, 4, 197 

and Alice Miel, 46 

and Dale Mann, 243 

and Harold Rugg, 64 

and "Knowing: How We Come to Know Things," 322- 
323 

and Preservice Teacher Education Program, 114 

and Sue E. Berryman, 244 
Columbia University, 188, 443 

Business School, 447 
Columbine High School (Colorado), 319 
Columns (University of Georgia), 425 

Coming Revolution in Education (The): Basic Education and 
the New Theory of Schooling (Eugene Maxwell Boyce), 
198 

Comings, John, 290 

"Coming Soon to a School Near You: Forced Labor" (Paul 

Mulshine), 427-428 
Commager, Henry Steele, 132-133 
Commerce Department (U.S), 384 
Commission for the Blind (Texas), 384 
Commission on the Year 2000, A24 

Commission on Behavioral and Social Sciences and Educa- 
tion, 416 

Commission on Education and Public Policy, 211 
Commission on Excellence (Terrell H. Bell), 190, A29 
Commission on International Cooperation in Education, 96 
Commission on National and Community Service, 377 
Commission on Reading (U.S. Dept. Of Education), 211-212 
Commission on Skills of the American Workforce (U.S. Dept. 

of Labor), 329, 452n, A73 
Commission on the Relation of School and College of the 

Progressive Education Association, 20-21 
Commission on the Social Studies, 18 

Commission to Study the Basis of a Just and Durable Peace, 



Index 



1-11 



32 

Committee for Economic Development (CED), 273, 308, 352, 
377 

Committee on Assessing the Progress of Education, 72 
Committee on Coordinating Educational Information and 

Research (CCEIR), 169 
Committee on Education and Labor [U.S. House of Representa- 
tives), 356-359 

Committee on Mission and Organization (Dept. of HEW), 62 
Committee on Performance-based Teacher Education, A32 
Committee on the Emergency in Education, 22-23 
Committee on the Prevention of Reading Difficulties in Young 

Children, 172, 212, 416 
Committee to Frame a World Constitution, 280 
Common Sense of Politics (The) (Mortimer Adler), 280 
Communication Arts Framework for the High School Proficiency 

Test, 323-326 
Communism 

agenda of, A171 

in America's schools, 30-31 

and connections with America, 44 

and Hegelian Dialectic, xvii 

ideology of, 198 
"Communism Comes to Texas Public Education," 383-385 
Communist China, 104, 135 
Communist Party, 294, A47, A138, A140 
Communist Party of the United States of America, 17, 19 
Communist Youth League, 294 
communitarianism, 85, 405 
Communitarian Network, 374, 376 
Communities and Their Schools (Don Davies), 88, 151 
Community Action Toolkit, 315, 338-339, 359, A65-71 
Community-Centered Schools: The Blueprint for Montgomery 

County Schools (Maryland), 31, 37-38, A5-6, A140 
Community Cluster Care Teams, 439 
Community Education, 85, 253, 443 

Community Learning Information Network, Inc. (CLIN), 

296-297, 338-339, 451n 
Community-Oriented Policing Services Program (COPS), 

444-445 
Community Partnerships, 448 

Together We Can: A Guide for Crafting a Pro-family System 

of Education and Human Services, 439, 447-449 
Community Research Associates, 445 
Community Schools of Rochester City School District, 441 
Community Update, 438 
"company schools," 287 
Comparative Education Review, A137 

Comparative Human Relations Initiative Consultation, 
399-400 

Comparative Learning Teams Project, 327, 329 
competency-based admissions, 430 

"Competency-Based Education: A Bandwagon in Search of a 

Definition" (William G. Spady), 143-144 
Competency-Based Education (CBE), 73, 134-144, A41, 



A44-45 

competency-based teacher education, 154 

"Competency Tests Set in 26 Schools: New Curriculum Shifts 
Teaching Methods in District," 146, 215-216 

"Competitiveness Illusion (The): Does Our Country Need to Be 
Literate in Order to Be Competitive? If not, Why Read?" 
(Peter Shaw), 307-308 

Complete Works of Francis A. Schaeffer: A Christian World- 
view, Volume One: A Christian View of Philosophy and 
Culture, 185-186 

computer-assisted instruction, 174, 251, 381-383, A127-128 

"Computer Delusion (The)" (Todd Oppenheimer), 381-383 

Computer in American Education (Don D. Bushnell and Dwight 
W. Allen), 75 

computers, 75, 213, 424, A176 
aspects of use, 273 

"Can Computers Teach Values?", 184-185 
"Children, Computers, and Education," 250-251 
Computers in Education: Realizing the Potential, 196 
games for, xxvi 

as an operant conditioning machine, 319 
as replacement for textbooks, 400-401 
"The Computer Delusion," 381-383 
and U.S. -Soviet Education Agreements, 229-230 
Computers in Education: Realizing the Potential (U.S. Depart- 
ment of Education), 196 
ComSpeak 2050: How Talking Computers Will Recreate an 
Oral Culture by Mid-21 st Century (William Crossman), 
264n 
Comstock, Ada, 24 
Conant, James B., 73, 210 

Concept Attainment Strategy (Jerome Bruner), 226 
Concerns-Based Adoption Model (CBAM), 151, 191 
"Conclave of the Change Agents" (Barbara M. Morris), 144 
Conclusions and Recommendations: Report of the Commission 

on the Social Studies (American Historical Association) , 

18, 23-24 

Conclusions and Recommendations for the Social Studies 

(Carnegie Corporation), 17, 265 
Conditioned Reflex Therapy (Andrew Salte) , 49 
conditioning, 196-197, A20, A122-123. See also behaviorism; 

operant conditioning 
explanation of, 115-116, 119-120 
"Conditioning of America (The)" (Dennis Cuddy), 3 
Condition of Education (The), xxi 
Conference Board (The), 333-334, 447 
Conference of Allied Ministers of Education, 38 
Congressional Budget Office, 92n 
Congressional Digest (The), 36 
Congressional Record, 410-412, 415, A156 
Congressional Record of the United States Senate (1917), 10 
Congressional Record, Proceedings and Debates of the 82nd 

Congress, First Session, 43-44 
"Congress to Expand Education Savings," 401-402 
Conlan, John, 132 



1-12 



Connecticut, 144 

Connecticut Assessment of Educational Progress (CAEP), 
178 

Connecticut State Board of Education, 178 
Connecting Learning Assures Successful Students (CLASS), 
339 

Connections and Conflicts of Interest (Or, There Ought To Be 

an Investigation!) (Billy Lyon), 297-301 
Consolidated and Reformed Education, Employment, and 

Rehabilitation Systems Act (CAREERS) (H.R. 1617), 

355, 370, A72-80 
Conspiracy of Good Intentions (A): America's Textbook Fiasco 

(Harriet Tyson), 400-401 
Constitution of the United States of America, 27, 176, 226 
"Content of Our Kids' Tests Shouldn't Be Secret" (Margaret 

Sitte), 348-349 
Continuous Development — Mastery Learning, 79 
Continuous Progress, 315 
"Contract with America," 179 
Control Data Corporation, 176 
"Controlled Environment for Social Change," 109 
Conway, Flo, A146 
Cook, Desmond, A3 5 
Cooke, Terence Cardinal, 176 
Coontz, Stephanie, 103 
Cooper, William, 104 

Cooperating School Districts of the St. Louis Suburban Area, 
234 

"Cooperation in Higher Education and Vocational Education 
and Training between the European Community and 
the United States of America," 390, 402 

"Cooperative Effort Is Needed (A): Can Our Schools Get 
Better?", 219 

cooperative learning, 233, 239, 247 

Cooperative Procedures in Learning (Alice Miel), 46 

"Cooperative Umbrella (The)," 239 

Copen Foundation, The, A139 

Copperman, Paul, A146 

"Cop Swap: His Beat Is Leningrad but He's on Loan to LAPD — 

His Local Host Will Visit U.S.S.R" (Bob Pool), 279 
Core Knowledge Sequence (E.D. Hirsch), A127-130 
core learning standard, 298 
Cornell University, 75, 351, A22 
Correll, Shirley, 84 

Corrigan, Betty O., 91, 193, 217, A27-31 
Corrigan, Dean, 88 

Corrigan, Robert E., 91, 193, 217-218, A27-31 
Corrigan, Ward, 217 
Cortes, Ernesto, Jr., 371, 376 
"cosmic education," 9 
Cotliar, Sharon, 366 

"Cottage Grove Endures Trials, Triumphs as It Tests New School 
Plan," 343-344 

Council of Chief State School Officers, 128, 169, 184, 306, 
328, A81-82 



Council of State Governments, 77 

Council on Foreign Relations, 12, 183, 232, A155 

endorsing of world government, 13,18 

establishment of, 12 

and Peter C. Goldmark, Jr., 376 

and William Boyce Thompson, 10 
Council on Foundations, 252 
Council on Intergovernmental Relations, 200 
counseling, effects on students, 202 

Country School of Tomorrow (The): Occasional Papers No. 
1, 9 

Counts, George, 18-19, 24 

Courier-Journal (Louisville, Kentucky), 273, 320-321, 389 
Course Goals Collection (Northwest Regional Educational 

Laboratory), 167-168 
Cox, E.E., 48 

Crampton, Stephen M., 369 
Craven, Avery O., 24 

Creating a New Civilization: The Politics of the Third Wave 

(Alvin and Heidi Toffler), 303 
"Creating Cultural Change: The Key to Successful Total Quality 

Management (Philip E. Atkinson), A135 
"Creating Learning Organizations: Growth through Quality," 

310 

"Creating the Twenty-First Century," 284-285 
Cremin, Lawrence A., 152 

criterion-referenced testing, 286-287, A154, A164-165 
critical thinking, 249 
Cronin, Hines, A27 
Crossete, Barbara, 388 
Crowder, Norman, 217 

Cruel and Usual Punishment: Forced Labor in Today's USSR 

(AFL/CIO), A137 
"C.S. Lewis on Liberal Arts Education" (Gregory Dunn), 140 
"Cuban Children Combine Studies, Work," 135-136 
Cuddy, Dennis, 3, 6n, 15n, 210, 298, 410-412 
Cueter, Barbara, 232 
Culverwell, Wendy, 401 
Cumming, Doug, 407-408 

Cunningham, Luvern, 141, 164-167, 263, 287, 437 

Cunningham, William, 107-108 

Cuoco, Al, 396-397 

Cuomo, Mario M., A73, A112 

Curran, Edward, 118, 125, 161, 192, A41 

Current Biography, 142 

curriculum development, A136-139 

Curriculum for Meeting Modern Problems (The New Model 
Me), 124 

Curriculum for Personalized Education (A) (Robert Scanlon), 
127 

"Cyber High School," 260 

cybernetics, 49-50, A25 

Cybernet Systems Company, 344 

"Cyberspace and the American Dream," 303, 452n, A49 



Index 



1-13 



D 

Daggett, Willard, 196, 260, 306 

and Effective Schools Conference (Sixteenth Annual), 
420 

and International Center for Leadership in Education, 
307-308, 406-407, 451n 

and Model School systems, 319, 334-336 

and school-to-work, 413-414 
Daily Progress (The) (Charlottesville, Virginia), 239 
Daily Record (The) (North Carolina), 411-412 
Daily Worker (The), 134 
Daily World (The), 134 
Dallas Morning News (The), 105-106, 222 
Daly, John, 223 

Dalryrmple, Theodore (Anthony Daniels), 244, 359 

Damon, William, 351 

Danforth Foundation, 152, 284-285 

dangan, 294 

Danielson, Charlotte, 159, 168 
Dan Smoot Report (The), 67 
Danziger, Sheldon, A46 

Dare the School Build a New Social Order? (George Counts) , 
18-19 

"Darling Center Hosts UNESCO Conference," 409 

Darrow, Clarence, 8, 13 

Darwinism, 57, 368 

David Douglas High School, 337 

Davies, Don, 88, 152, 188, 338-339 

Davis, Malcolm, 179-180 

Dawson, Dorothy, 31, 38 

Day, Edmund E., 24 

Day, Jim, 415-416 

Dean, Beverly, 304-305 

death education, xxvi, 145, 203, 280 

Debeauvais, Michael, 194-195 

"Decade of the Nineties (The)" (Donald Thomas), 256-257 

Declaration of Independence, 67, 140-141 

"Declaration of Interdependence (A) : Education for a Global 

Community" (NEA), 133 
"Declaration of Interdependence (A)" (Henry Steele Com- 

mager), 132-133 
"Decline of Textbooks, Change," 101 
Decroly, Ovid, A62 

"Defining Functional Literacy" (Paul Delker), 196 

Defino, Maria E., 191 

deFosset, Shelley, 394-395 

delayed reinforcement, 116 

Delker, Paul, 196 

Delia-Dora, Delmo, 288 

Delphi Technique, 52, 59, 166, A66 

Delta Consulting, 447 

Deming, W. Edwards, 283, 310, 314, 451n, A132 

"Deming Lashes Out in Live Teleconference on Quality" (Don 



Spatz), 310 
Democratic Leadership Council, 376 
Denton, Carol, 109 

Department of Education (U.S.), 77, 95, 124, 211-213, A46 
and America 2000, 278-279 
and Charlotte Iserbyt, xix, A65 
and development of character education, 228-229 
funding of projects/organizations, 105, 150, 169, A37 
and Northwest Regional Educational Laboratory, 107, 167 
and Preventing Reading Difficulties in Young Children, 

416-417 
proposal to abolish, 192 

and Reach for the Stars: A Proposal for Education Reform 

in Georgia, 287 
and Research for Better Schools, 127 
and Together We Can: A Guide for Crafting a Pro-family 

System of Education and Human Services, 439 
"Totalitarian Data-Gathering System Prepared by U.S. 

Department of Education," A81-89 
Department of Education's Joint Dissemination Review Panel 

(JDRP), 81 

Department of Health and Human Services (U.S), 443 
Department of Health, Education and Welfare (U.S.) (HEW), 
155, 170, 213, 236, 
and Behavioral Science Teacher Education Program 

(BSTEP), 72, A23-26 
Catalog of Assistance, 126 
Federal Education Agency for the Future (A), 64 
funding of projects/organizations, 120, 128, A66 
and Project Follow Through, 75 

and Together We Can: A Guide for Crafting a Pro-family 
System of Education and Human Services, 439 
Department of Justice (U.S.), 445 
Department of Labor (U.S.), A48 
Department of State (U.S.), A137 
DePaul University, 362-363 
DePencier, Ida B., 6n 
Derthick, Lawrence G., 146, 57 
Designs for Change, 79 
Des Moines Register, A46 

"Despite Heavy Funding Public Schools Showing Marks of 

Internal Crumbling," 418 
Detroit News, 341-342 
Deutsch, Albert, 39 
Deutsche Hochschule fur Politik, 18 

Developing a System of Skill Standards for the State of Texas, 
329 

Development of Educational Technology in Central and Eastern 

Europe Studies, 142, 147 
Dewey, John, 1, 29, 99, A61 

"Father of Progressive Education," 3 

Humanist Manifesto, 17, 21 

influence of, on others, 31, 345 

literacy, beliefs about, 8 

and math "dumb down," 14-15 



1-14 



and Progressive Education Association (PEA), 11 
Psychology, 5-6 
Dewey School (The University of Chicago Laboratory School), 
5 

DeWine, Mike, 415-416 

Dialectic & Praxis: Diaprox and the End of the Ages (The) 

(Dean Gotcher), xxi 
"Dialogue Discussion Paper," 109 

"Dialogues in International Education" (Nick Zienau), 

312-313 
diary use, 207-209 

Did They Succeed in College?: The Follow-up Study of the 
Graduates of the Thirty Schoob (Neal Drought, Wil- 
liam Scott), 21 

Diederich, Paul, 89 

"Difference between Traditional Education and Direct Instruc- 
tion" (Tracey J. Hayes), A150, A157-158 
Dilulio, John, 375 

Direct Instruction, 215, 228, 361-363, A12, A27. See also 
DISTAR; Management by Objectives (MBO); Mastery 
Learning; Outcome-Based Education; Planning, Pro- 
gramming and Budgeting System (PPBS); Reading 
Mastery 

and Core Knowledge, A126-128 

definitions of, 75, 366 

and Follow Through Model, 387-388 

linked to Programmed Instruction, xxvi 

man as animal, assumptions of, 13 

and Mastery Learning, 4, 226 

memos on, A90-96 

and Siegfried Engelmann, 81, 182, 435 
DISTAR (Direct Instruction System for Teaching and Remedia- 
tion), xxvii, 81, 181-182, 212. Seealso Direct Instruction; 
Reading Mastery 

critique of, 387-388 

and National Center to Improve the Tools of Educators 
(NCITE), 417 

Divisions of Structures, Content, Methods and Techniques of 

Education (UNESCO), 147 
Dneprov, Edouard, 293, 309 
Dobbs, Bettina, 174 
Dodd, Bella V., 45, 53n 
Dodd, Christopher, 415-416 
Dodd, Norman, 30, 46-48, 232-233, 239 

National Citizens' Alliance (NCA) Americanism Award, 

266 

Dogan, Pierre, 307 

Doherty, Victor W., 107 

Dole, Elizabeth, 215, 266-268, 304, 451n 

Don Bell Report (The), 112 

Dorn, David, 290 

Douglas, William O, 137-138 

Dowdy, Homer, A175-176 

Doyle, Charlotte Lackner, 75 

Doyle, Dennis P., 300, A75 



dress codes, 334 
Drexel University, 202 
Drexler, Melissa, 29 
drop-out, legal age to, 155 
Dror, Yehezkel, 166 
Drotz, Paul, 249 
Drought, Neal E., 21 
Drucker, Peter, 202 

Drug Abuse Resistance Education (DARE), 334 

Drug Free Schools and Communities Act (DFSCA), 405, 453n 

drugs, 276 

Drug Abuse Resistance Education (DARE), 334 
education, and The Change Agents' Guide to Innovation 
in Education, 280 

Duffey, Joseph, 315-316, 360 

Duke, Leilani Lattin, 397 

Duke University, 73, 210, A63 

Dulles, John Foster, 32 

Dumas, Lynne, A174 

"Dumbed-Down SATs Disguise Deficiencies — The Fault, Dear 
Educator, Is Not in Our Tests" (George C. Roche), 364 
Dunn, Gregory, 140 
Dunphy, John, 192-193 
Dupont, Pierre S., 176, 323 
DuPont Europe, 398 
Durenberger, David, 176 
Dyson, Esther, 381, 452n 



E 

Early Developments, 394-395 

"Early Schooling Is Now the Rage," 443-444 

"Early Warning Response," 453n 

East Gibson County (Indiana) Group (Jeannie's Group), 248 

Eastman Kodak Company, 344, All-12, A112 

Ebbert, Stephanie, 334 

Eckgold, Bernard, xx 

Ecole des Sciences Politiques, 18 

Economic Opportunity Act of 1 964, 75 

economics, 194-195 

ECRI. See Exemplary Center for Reading Instruction 

"ECRI: Exemplary Center for Reading Instruction Consortium 

Winds Down," 198-199 
ECRI Teacher Training Manual, 81 

"ECS at 20: The Compact's Potential Is Still to Be Realized" 

(Thomas Toch), 209-210 
Edelman, Marian Wright, 351, A46 
Edison Project, 297-298, 299-300, A91 
Edling, Jack V., 101 
Edmonds, Ronald, 172, 189, 222 

and Effective Schools Research, 217, 231-232, 394, A162 
education 

as active rather than passive, 6 



Index 



1-15 



adult, A101-102 

as builder of "New World," 18 

choice in, 458 

crisis of, xi, 162 

definition of, 1 

federal control of, 53, 56-57 

goals/purposes of, 160, 163, 171 

holistic, 281 

humanizing, A40-41 

in Korea, A29-31 

state determined, 20-21 

for sustainability, 313 

"true," 322-323 

vocational, 408-409 
Education: From the Acquisition of Knowledge to Programmed, 

Conditioned Responses (Robert H. Burke), 97-98 
"Education, Religious Groups, Seek Common Ground," 
342-343 

"Education: The New Transatlantic Agenda," 411-412 
"Education: Why the 'Dumbing Down' in the Schools?" (Henry 
Hyde), 370 

"Education 90: A Framework for the Future," 275 
Education 2000: A Holistic Perspective, 281-284 
"Educational and Cultural Programs, Exchanges and Interna- 
tional Visitors," 231 
"Educational Choice — The Education Voucher, Tax Credits, 
and the Nonpublic Schools" (Virginia Birt Baker), 
288-289 
Educational Cultures, 312-313 

Educational Goals: Studies and Surveys in Comparative Educa- 
tion, 162-164 

"Educational Implications of NAFTA (The)," 321 

Educational Improvement Centers (EICs), 126 

Educational Innovation Advisory Commission, 96 

Educational Inquiry, Incorporated, 106 

Educational Leadership (Association for Supervision and Cur- 
riculum Development), 204 
"Can Computers Teach Values?", 184-185 
"Mastery Learning: The Current State of the Craft," 118, 
155 

"New Views of the Learner: Implications for Instruction 
and Curriculum," 148 

"Observing the Birth of the Hatch Amendment Regula- 
tions," 220 

"The Language of OBE Reveals Its Limitations," 354 

"To OBE or Not to OBE?", 322 
Educational News International, 390 
Educational Policies Commission (EPC), 19 
Educational Programs That Work, 124 
Educational Psychology (Edward Lee Thorndike), 5 
Educational Quality Assessment (EQA), 250, A21 
Educational Reports Series, 296, 430 
Educational Research Associates, 98 
Educational Research Council of America, 377 
Educational Researcher, 134-144 



Educational Resource Information Center (ERIC), 126, 207 
Educational Testing Service (ETS), 177, 238, A18, A47 
and Carnegie Corporation, 91, 210 
founding of, 38 
Education Amendments of 1976, 170 
Education and the Cult of Efficiency, 354 
"Education and the Economy: A Diagnostic Review and 
Implications for the Federal Role" (Sue E. Berryman), 
244-247 

Education Commission of the States (ECS), 56, 73, 186, 218, 
333 

"A Road Map for Restructuring Schools," 270-271 
history of, 209-210 
Education Commission Report Number 7, 378-380 
Education Committee of the Council of Foreign Relations, 46 
Education Daily, 79-80, 234, 241 

"Group Asks Education Department to Stop Funding 'Mind 

Control' Curricula, End Soviet Exchanges," 249-250 
"Sweeping Overhaul of Minnesota Education System Pro- 
posed," 225-226 
"Teachers Influence Student's Values through Writing 
Assignments," 223 
Education Development Center, 290, 451n 
Education Digest (The), 194 
Education Excellence Network, 278, A128 
Education for All (EFA), 376 
Education for All American Youth, 20 
Education for All Handicapped Children Act, 155 
Education for a New World (Maria Montessori), 9 
Education for Destruction (B.R. Burchett), 30-31 
Education for Results: In Response to A Nation at Risk, Vol. 
1 : Guaranteeing Effective Performance by Our Schools 
(Robert E. Corrigan, Betty O. Corrigan), 91, 193, 
A27-31 

Education from the Acquisition of Knowledge to Programmed 

Conditioned Response, 126 
"Education in a Relaxed Atmosphere: Brain-Based Method — 

Teaching Trend Emphasizing Creativity, Flexibility and 

Informality Growing in Area Schools" (Delbert Ellerton), 

425-427 

"Education in the Future: 21st Century Schools Will Offer 

Learning for All Citizens" (Kent Tempus), 253 
Education in the New Age (Alice Bailey), 51, 283 
Education Reform Act (1993), 392-393 
education reform movement. See effective schools 
Education Reporter (The), 412-413, A150 
Education Service Council, 53n 

"Education, Technology, and Individual Privacy" (Lawrence 

P. Grayson), 137-138 
Education Update (ASCD), 202 

"Interest in Character Education Seen Growing," 311-312 
"Message from the Executive Director: South Africa Tackles 

Ambitious Curriculum Reform Effort," 399-400 
"Promising Theories Die Young," 223-225 
"Tactics for Thinking Attacked in Washington, Indiana," 



1-16 



248-249 

"Three Kinds of Knowledge," 224 
Education Week, 186, 250, 251, 318, 392, 417, 451n 

"33 Religious Groups Join Riley in Seeking Greater Family 
Role in Schools," 345 

advertisement for Sixteenth Annual Effective Schools 
Conference, 420-421 

"A Road Map for Restructuring Schools," 270-271 

"Back to the Future— With Funding from NASDC and Direc- 
tion from the Hudson Institute, the Modern Red School- 
house Updates an American Icon for the 90's," 323 

"Carnegie Teaching Panel Charts 'New Framework' — Grants 
Totaling $900,000 Made to Press Reforms," 235-236 

"Center Lists Skills Both Disabled, Non-Disabled Should 
Have," 310-311 

"Education, Religious Groups, Seek Common Ground," 
342-343 

"Educator Proposes a Global Core Curriculum," 260 
"Half of Chicago Students Drop Out, Study Finds: Problem 

Called Enormous Human Tragedy," 79-80, 221 
"Leading Business Executives Create Council to Promote 

S-T-W Programs," 344 
"N.S.B.A. Endorses All Alternatives to Traditional School 

Governance," 326 
"New AFT President Urges Members to Help Floundering 

Schools," 81 

"Proponents of Mastery Learning Defend Method after Its 

Rejection by Chicago," 227 
"Researchers Leery of Federal Plans for Collaboration — Fear 

'Cooperative' Link a Path to 'Intervention'," 236 
"Seniors' Church Attendance," 279-280 
"Success Eludes 10-Year-Old Agency," 118, 192 
"Success with Coalition Reforms Seen Limited in Some 

Schools," 326 

Technology Counts '98 — Putting School Technology to the 
Test, 419-420 

"There Has Been a Conspiracy of Silence about Teaching: 
B.F Skinner Argues that Pedagogy Is Key to School 
Reforms," 196-197 

"Viewing Reform Partnerships as Big Brother's Intrusion," 
338-339 

"Who's In, Who's Out," 99 

"Widely Mixed Test Results Leave Some in Kentucky 
Puzzled," 316 
Education Writers Association, 222 

Educator's Guide to Schoohvide Reform (An) (Rebecca Herman), 
434-436 

"Educator Proposes a Global Core Curriculum," 260 
"Educators, Religious Groups Call School Truce — They Agree 

to Disagree on Hot Issues of '90s" (Sally Streff Buzbee) , 

349-350 

Educators for Social Responsibility, A138 
EDventure Holdings, 381 
Edwards, Sara E., 191 
ERA Today, 308-309 



Effective Schooling Practices: A Research Synthesis — Goal-Based 

Education Program, 199 
Effective School Practices, A152 

Effective School Report (The), 187, 188, 222, 238, 394 
"A Letter from Russia," 290 

"Alternative Assessment of Student Achievement: The Open 

Book Test," 322-323 
"Dialogues in International Education," 312-313 
"Education 90: A Framework for the Future," 275 
"Effective Schools for Results," 217-218 
"Free Education in a Free Society," 292-294 
"Implementing Effective Schools: Commitment — The First 

Step," 231-232 
"International Congress for Effective Schools Draws Partici- 
pants from 13 Nations to London," 243-244 
and Lawrence Lezotte, 407 

"Principal's Expectations as a Motivating Factor in Effec- 
tive Schools," 225 

"The Decade of the Nineties," 256-257 

"The Future of Hong Kong Linked to Education," 378- 
380 

"The Goal of Hong Kong Schools — Establishing Quality in 
Its Schools," 380-381 
effective schools, 222, 261, A70, A163-165 
implementation of, 217-218 
movement for, 191 
and Outcome-Based Education, 201 
"Effective Schools: What the Research Says" (Michael Cohen), 
172 

Effective Schools Conference (Sixteenth Annual), 420-421 
Effective Schools Development in Education Act, 222 
"Effective Schools for Results" (Robert Corrigan), 217-218 
Effective Schools Research, 4, 159, 240 

philosophy behind, 394 

as Skinnerian, 135 

"Shamanistic Rituals in Effective Schools" (Brian Rowan), 
A159-166 

use in inner city schools/southern schools, 172, 394 

use of Skinnerian method, 202, 217 
Effective Schools Research Abstracts, 314-315 
effective teaching, 214-215 
Eight- Year Study, 17, 20-21, 89 
Eisenberg, Lee, 297-298 

Eisenhower, Dwight D. (President), 30, 52, 53, 55 

American Assembly, 377 

Goals for Americans, 58-60, 65 
Eisner, Elliot, 397 
Elam, Stanley, A32 

Elementary and Secondary Education Act (ESEA) of 1965, 56, 
110, 253, 389, A20-21, Alll 
and Educational Improvement Centers, 125-126 
Pacesetters in Innovation, 84, 206-207 
passing of, by Congress, 72 
reauthorizations of, 311, 317-318, 400 
A Report from the State Committee on Public Education 



Index 



1-17 



to the California State Board of Education — Citizens 
for the 21st Century — Long-Range Considerations for 
California Elementary and Secondary Education (John 
Goodlad), 88-89 

Elementary and Secondary Education Reauthorization Act of 
1994 (H.R. 6), 187, 287 

"Elementary Education for the 21st Century: A Planning Frame- 
work Based on Outcomes," 258-260 

Elementary Global Education Framework, 258-260 

Elgin, Duane, A175 

Ellerton, Delbert, 425-427 

Elliott, Emerson, A82 

Ely, Donald P., 67, 94, 113, A35-38 

Emig, Michael, 268 

Emile (Jean-Jacques Rousseau), 2 

Emory University, 10 

emotional health, focus on, 55 

Employment and Training Administration (ETA), 266 

Employment Training and Literacy Enhancement Act of 1997, 
416 

Empower America, 375 

Empowered Educational System for the 21st Century — Establish- 
ing Competitiveness, Productivity, Accountability and 
Equity in South Carolina Education, 306-307 
Engelmann, Siegfried 

and Direct Instruction, 75, 81, 117, 363, 366, 435 
and DISTAR, 212, 299-300 
and ECRI, 182 

and operant conditioning, 119-120 
England, first experiment with Outcome-Based Education, 
3-4 

Englehardt, Nicholas, 37-38, A5 
Engler, John, 405, 451n 

English Royal Institute of International Affairs, 12 
En-Lai, Chou (Premier), 104 

Equal Employment Opportunity Commission (EEOC), 243 
Equal Rights Amendment, 35 
Erickson Institute in Chicago, 417 
Ernst, Morris, 39 
Ervin, Sam, 127 

ESEA: General Education Provisions Act, 66, 170 
Esquire, 297 

Essay on the Principles of Population, 388 

Essays in Economics: Theories, Facts, and Policies, Vol. II (Was- 

sily Leontief), 142 
Essential Elements of Instruction (Madeline Hunter), 417 
Estes, Nolan, A27-28 
Ethical Culture, 22 
"Ethical Education," 71 
"Ethical Issues in Decision Making," 174, 421 
Ethics and Religious Liberty Commission of the Southern 

Baptist Convention, 377 
Ethics of Sexual Acts (Rene Guyon), 39 
Etzioni, Amitai, 351, 376, A172 
Eugene Howard's Colorado Model, 199 



Eureka Free University, 313 

European Commission Directorate General of Education, Train- 
ing and Youth, 390, 402 

European Economic Administration, 47 

Evaluation Department of the Portland Public Schools, 107 

"Evaluation of HEW's Publication Pacesetters in Innovation 
(An)" (Shirley Correll), 84 

Evaluation of Project INSTRUCT: Executive Summary (Carl 
Spencer), 204 

Evans, Barbara, 305 

Evans, Richard I., 77-78, A143 

Evergreen State College, 103 

"Evil Empire," 279 

evolution, 13, 223, 368 

Excellence in Education Act of 1985, 234 

"Excellence in Instructional Delivery Systems: Research and 
Dissemination of Exemplary Outcome-Based Programs," 
160-161, 215-217, 218 

Executive Review (The), 164 

Exemplary Center for Reading Instruction (ECRI), xxvii, 72, 
A129, A147. See also DISTAR 
controversy over, 203-204, 212, 416 
and Ethna Reid, 80-81, A94, A152-153 
and Mission, Texas, 212 
and Project Instruct, 134-135 
Experimental Laboratory Elementary School, 223 
Exploring the Curriculum: The Work of Thirty Schools from the 
Viewpoint of Curriculum Consultants (H.H. Giles, S.P. 
McCutcheon, A.N. Zechiel), 21 
extreme environmentalism, 276-277 
Exxon Corporation, 150, 344 
Exxon Education Foundation, 299, 300 



F 

Fabian Society, 12, 13 
Facilitator's Training Manual, 353 
Fact Finder (The) (Arizona), 230 

"Families and Schools: A System of Mutual Support" (Terrell 
H. Bell), 174 

Family Educational Rights and Privacy Act of 1974, A84 

Family Life Education, 111 

family planning, 101-104, A170-171 

"Family Planning in China" (Han Suyin ), 104 

Fantini, Mario D., 169 

Farmer-Laborer Political Federation, 23 

Farquhar, William, 79 

Farris, Michael, 437-438, 453n 

Farson, Richard, 111 

Far West Regional Laboratory for Educational Research and 
Development, 193, 264n, 290, A159 
"Excellence in Instructional Delivery Systems: Research and 
Dissemination of Exemplary Outcome-Based Programs," 



1-18 



160-161, 215-217 

and outcome-based education, 125, 141 
Featherstone, Harry, 344 
Federal Adult Basic Education Program, 196 
Federal Council of Churches, 32 
Federal Education Agency for the Future (A), 56, 62, 64 
federal government 

control of education, 96 

creating problems to facilitate change, 406 

funding of education, 350 

funding research, controversy over, 210-213 

influence in schools, 192 
Federal Register, 154 
Federal Reserve Bank, 10 

Federal School-to-Work Opportunities Act, 327-328 
Feldman, Sandra, A130 
Fellows, Michael, 382 
Ferre, Luis A., 176 

Fessler, Diana M., 364-366, 369-370, 373 

contact information, 453n 

opponent of school-to-work philosophy, 403-405 
Feulner, Edwin, 231 

Field of Educational Technology (The): A Statement of Defini- 
tion (Donald P. Ely), 94, 113, A35-38 
Fields, Joseph C, 305 

Fifth Annual Chief State School Officers Institute, 128-130 
Fifth Report of the National Council on Educational Research, 
150 

Filling the Gaps: An Overview of Data on Education in Grades 

K Through 12, 294-296 
Final Assessment Framework for the Michigan High School 

Proficiency Test in Reading (1994), 311 
"Final Report of the National Commission on Civic Renewal: 

A Nation of Spectators — How Civic Disengagement 

Weakens America and What We Can Do About It," 

372-373 

Financial Accounting: Classifications and Standard Terminology 

for Local and State School Systems, 328 
Fink, Kristin, 421 
Finley, Carmen J., A48 
Finn, Chester, 184, 202, 244, A75-76 

"America 2000 Plan," 278-279 

beliefs about role of parents, 434 

and Educational Excellence Network, 352 

favoring national curricula, 251, 298 

and National Institute of Education, 117-119 

and outcome-based education, 238-239 

"Public Service, Public Support, Public Accountability," 
184 

"Reforming Education — Why Do Bad Things Happen to 

Good Ideas?", 385-386 
replicating English school system, 357 
and school reform, 332 
Finn, James D., 67 

Fire in the Minds of Men: Origins of the Revolutionary Faith 



(James H. Billington), 341-342, 452n 
First Amendment {United States Constitution), 22, 311-312, 
352, 365 

First Amendment Center at Vanderbilt University, 418-419. See 

also Freedom Forum First Amendment Center 
First Educational Technology Conference, 101 
First Lady of the World (Robert Muller), 283 
Fisher, George, 344 
Fiske, Edward B., 255, 443-444 
Fitouri, Charles, 162 
Fitz-Gibbon, Carol Taylor, 213 
Fitzpatrick, Kathleen A., 240 
Fitzsimmons, John, 272 
Five Issues in Training, 38 
Five Year Plans, 60, 142-143 
Flemming, Arthur S., 57 
Fletcher, Dexter, 174 
Florida, 144 

Florida International University Human Resource Service 

Professional Development Center, 440 
Florida Pro-Family Forum, Inc., 6n 
Florida State University, A29 
Focus on the Family, 350 

Follow Through, 72. See also Project Follow Through 
Foorman, Barbara, 417 
Foothill Associates, 327 
Forbes, Steve, A79-80 
Ford, Bobbi, 426 
Ford, Guy Stanton, 24 
Ford Foundation, 13, 152, 245, A7 
Agenda for the Nation, 83 

funding of Comparative Human Relations Initiative Con- 
sultation, 399 
grant to Terry Sanford, 73, 210 
and H. Rowan Gaither, 30, 47, 239 
and McGeorge Bundy, 141 
and Mortimer Adler, 280 
and National CEE, A112 
Ford Motor Company, 344 

Forgotten Half (The): Pathways to Success for America's Youth 

and Young Families, 250, 264n, 452n 
Forrer, Sara, A62 
Forrester, Jay, 303 
Fortas, Abe, 36 
Forthum, Terry L., 191-192 
Fosler, Scott, A46 
Foster, William Z., 17 

Foundation for Research on Human Behavior, All 
"Foundation Machine (The)" (Edith Kermit Roosevelt), 
82-83 

Foundations: Their Power and Influence (Renee Wormser), 
48 

Foundations of Behavioral Research, Second Edition (Fred N. 

Kerlinger), 121 
Foundations of Lifelong Education (UNESCO), 141-142 



Index 



1-19 



"Four Phases in Creating and Managing an Outcome-based 

Program" (John Champlin), 193-194 
Fowler, Burton P., 21 

"Framework for Action to Meet Basic Learning Needs," 
269-270 

FRAMEWORK FOR THE SOCIAL STUDIES, 178 
"Framing a Future for Education" (Kansas), 194 
Francophone Association of Comparative Education, 194 
Frank Porter Graham Child Development Center, 394-395, 
452n 

Frazier, Alexander, 288 
Frazier, Gloria, A56 
Free Congress Foundation, A129 
Freedom Forum, 418 

Freedom Forum First Amendment Center, 350, 376, 377 
"Free Education in a Free Society" (Nick Zienau), 292-294 
Free Inquiry, 241 
Freeman Institute, 174 
Free Mind, 71 

Free World Research Report, 276, A167-176 
Freire, Paulo, 220, 237, 264n 
Frere, Jean, 112 
Freud, Sigmund, 12 
Friedman, Milton, 202 

"From Schooling to Learning: Rethinking Preschool through 

University Education" (Don Glines), 180 
Fromstein, Mitchell, 344 
Frontiers of Democracy, 64 
Frontier Thinkers (The) (Harold Rugg), 12 
Fullan, Michael, 420 
functionalism, 183 

Functional Literacy and the Workplace: The Proceedings of 
the May 6, 1983 National Invitational Conference, 
195-196 

Fund for the Advancement of Education, A7-8 
Futrell, Mary Hatwood, 236 

"Future of Hong Kong Linked to Education," 378-380 
"Future of the Teaching Profession" (James Collins, Martin 

Haberman), 310 
Future Trends, 272 



G 

Gagne, Robert, 79, 89, 406-407 
Gaia worship, 276 
Gaither, Rowan, 30, 47, 239 
Galston, William A., 376 
games, video, 319-320 
Gandhi, Mahatma, 9 
Garbarino, James, A167-176 
Gardner, Howard, 340-341 
Gardner, John W., 73, 176, 210, 376 
Gardner, Richard, 80 



Garduque, Laurie, 236 
Garland, Nancy, 236 
Garrett, Scott, 430 
Garvey, Willard J., 202 
Gaston, John, 105-106 
Gates, Frederick, 9 
Gebhard, Paul, 39, 48 

General Agreement between the U.S.A. and the U.S.S.R. on 
Contacts, Exchanges and Cooperation in Scientific, 
Educational, Cultural and Other Fields, A136 

General Agreements for Tariffs and Trade (GATT), 279 

General Education Board (GEB), 8, 9, 21, 307 

General Education Provisions Act of the Elementary and Second- 
ary Education Act of 1965, 213, A45 

General Electric Company, A24 

General Federation of Women's Clubs, 176 

Generally Accepted Accounting Procedures/Generally Accepted 
Federal Funding Reporting (GAAP/GAFFR), xvi 

George Frederick Jewett Chair in Religion and Public Policy at 
the American Enterprise Institute, 377 

Georges, Jeannie, 264n 

Georgescu-Roegen, Nicholas, A169 

Georgetown University, 12, 341-342, 376 

Georgia, 29, 48, 144 

Georgia 2000 Partnership, 167 

"Georgia Basic Life Process Skills, ESEA, Title II, Proposed 
Instructional Time in School Programs" (Lucille G. 
Jordan), 150-151 
Georgia Department of Education, 150, 307 
Georgia Public Policy Foundation, 285 
"Georgia Schools OK Tracking System" (Doug Cumming), 

111, 407-408 
Georgia State University, 3, 100 
German Democratic Republic, 147 
German Marshall Fund of the United States, 327 
Getty Education Institute for the Arts, 397 
Gilder, George, 179, 303 
Gingrich, Newt, 155, 303, 452n, A49 

and computers, 381, 400-401 

"Contract with America," 179 
Gisi, Lynn Grover, 187 
Glaser, Robert, 61, 79, 211-212, A7 

"Principles of Programming," A13-16 

Teaching Machines and Programmed Learning: A Source 
Book, 60, All-16 
Glasser, William, 115, 117 
Glavin, Robert, 285-287 
Glazar, Vickie, 366 
Glazer, Nathan, 351 
Glickman, Carl, 436 
Glines, Don, 180 
Global 2000, A169, A174 

Global Alliance for Transforming Education (GATE), 281-284, 
451n 

global education/values education, 88, 258-260 



1-20 



"Global Framework for Local Education," 276-277 
"Global Government's Global Conscience," xix 
"global integration," 411-412 

"Global Interdependence: The United States and the Third 

World," 321 
global skills standards, 412 
global workforce training, 458 
Glover, Robert W., 326-327, 329 
Goal-based education. See Outcome-Based Education 
"Goal of Hong Kong Schools — Establishing Quality in Its 

Schools," 380-381 
Goals 2000 (Educate America Act), 83, 167, 187, 268, 330, 

353, 428, A65-66 
and Chester Finn, 385 
criticisms of, 370 

first state to implement (Oregon), 336-338 
as framework for H.R. 6, 317-318 
Goal 6 as most important, 405-406 
history of, 357-359, A73-75 
and NASDC, 298 

and National Issues in Education: Goals 2000 and School- 

to-Work, 286 
programs of, 364 
reforms, 338-339 
signing of, 323 

"Goals and Objectives: Towards a National Curriculum?" (Joan 

Gubbins), 168, 238-239 
Goals for American Education, 19 
Goals for Americans, 58-60 
Golden, Cecil, 111 
Goldenberg, Claude N., 417 
Goldman, Jay P., 242-243 
Goldmark, Peter C, Jr., 376 
Goldsborough, Robert H., 54n 
Goldseker Foundation, 377 
Gollarz, Ray, 420 
Gonzalez, Felipe, 359-361 
Goodlad, John, 162, 169, 189, 226, A43 

"A Cooperative Effort Is Needed: Can Our Schools Get 

Better?", 219 

A Report from the State Committee on Public Education 
to the California State Board— Citizens for the Twenty- 
first Century — Long Range Considerations for California 
Elementary and Secondary Education, 91n 
"Learning and Teaching in the Future," 81 
Place Called School (A): Prospects for the Future, 151 
Report to the President's Commission on School Finance, 

Issue #9 "Strategies for Change," 207 
statements made by, 56, 106 

Study of Schooling in the United States (A) (1979), 119, 
151-152 

Study of Schooling (The) (1973), 397 
Goodling, William, 66, 415, A75-78 
Goodman, John, 299 
Gorbachev, Mikhail, 30, 45, 241 



and Perestroika, 251, 280, A137 
promoting a new world order, 308 

U.S. -Soviet Education Agreements, 229-230, 279, 294, 
A140 
Gordon, Kermit, 83 
Gordon, Thomas, 117 
Gore, Albert, Jr. (Al), 92n, 376, 421, A167 
Gore, Bruce, 401 
Goslin, Willard, 43 
Gossens, Salvador Allende, 237 
Gothard, Bill, 437 
Gould, Arthur, 11 
Gould's medical dictionary, 49-50 
Gould Academy, 38 

"Governor with Principle Would Reject School-to-Work" (Paul 

Mulshine), 430-431 
gradualism, xvii, xviii, 447, 455 

"Graduates Lack Technical Training, Study Warns — By 1990, 
2 Million May Not Have Essential Skills Needed for 
Employment in 'Information Society'," 186 

Graham, Frank Porter, 394 

Gramm, Phil, 297 

Granite Communications, 307 

Granite School District, 80 

Grant High School, 337 

Grasmick, Nancy S., 327, 343 

Grasso, Christopher, 250 

Grayson, Lawrence P., 137-138 

Great American Con Game (Barbara Morris), 149 

Great Books Foundation, 417 

Great Depression, 23 

"Greatest Subversive Plot in History: Report to the American 

People on UNESCO (The)," 43-44 
Great Hall of the People, 104 
Green, Andrew, 273 
Green, Sharon Knotts, 327 
Greenberg, Daniel, A46 
Green Cross, A171 
Greene, Bert I., 220 
Gregg, Alan, 40 
Griffin, Gary A., 191 
Griffin, Peg, 212 
Grisham, Hosea, A27 
Groff, Patrick, 182 
Gross, Martin, A146 
Grossberg, Amy, 29 
Grossen, Bonnie, A152 
Grossman, Jerome, 344 

"Group Supporting Paula Jones Case Sues Pasco Schools" 

(Wendy Culverwell), 401 
Grover, Herbert J., 327 
Guangming Daily, 262 

Guardians of Education for Maine (GEM), xv, 174 
Gubbins, Joan, 168, 238-239, 248 

"Guided Affective Imagery." See "Initiated Symbol Projec- 



Index 



1-21 



tion" (ISP) 

"Guide to Competing Teaching Methods" (Rosalind Rossi), 
366 

"Guide to the Massachusetts Comprehensive Assessment 

System: Mathematics," 396-397 
Guiness, Oz, 377 
Guttmacher, Manfred S., 40 
Guyon, Rene, 39 

Gwinnett Coalition for Health and Human Services, 439 
Gwinnett Daily Post (The) (Lawrenceville, Georgia), 439 



H 

Haberman, Martin, 310 
Haddock, Jerry L., 367-368 
Hakim, Joy, A129 
Halcyon Press, 98 
Haley, Rosalind Kress, 232 

"Half of Chicago Students Drop Out, Study Finds: Problem 

Called Enormous Human Tragedy," 79, 221 
Hall, John, 333 

Hamburg, David, 36, 235, A138 
Hamill, Thomas, 126 
Hamilton, Lee, A138 

Hancock Clarion (The) (Hawkesville, Kentucky), 320-321 

Hansford, VanBuren N., Jr., A112 

Harley, John Eugene, 17 

Harmon, Willis, 141 

Harp, Lonnie, 316 

Harris, Louis, A112 

"Harrison Bergeron" (Kurt Vonnegut), 66, 92n 

Hart, Leslie, 341 

Hartmann, George, 23 

Harvard University, 4, 49, 100, 382, A7 

and B.F. Skinner, 75, 146, 196, A10, A12, A49 

and Chester M. Pierce, 113 

Economic Research Project, 143 

Graduate School of Education, 172, 177, 231, 417 

and Lawrence Kohlberg, 352 

president James B. Conant, 73, 210 

Russian Research Center of, A137 

and Wassily Leontief, 143 
Haselkorn, David, A72, A96 
Hatch, Orrin, 200-201 

Hatch Amendment (Protection of Pupil Rights Amendment), 
203-204, 221, A21, A45. See also General Education 
Provisions Act 
hearings for regulations on, 124, 200-201 
"Observing the Birth of the Hatch Amendment Regula- 
tions," 220-221 
Hatton, Barbara R., A112 
Hausman, Jerome J., 152 
Havelock, Ronald G., xvi, xix, 315, A66 



Haves Without Have-Nots: Essays for the 21st Century on Democ- 
racy and Socialism (Mortimer Adler), 280-281 

Havighurst, Robert, 141, A48 

Hawkins, Augustus, 222 

Hawkins-Stafford Amendments of 1988, A84 

Hayes, Carlton J.H., 24 

Hayes, Kathy, 299 

Hayes, Tracey J., A130 

"Difference between Traditional Education and Direct 
Instruction," A150, A157-158 

Haynes, Charles, 350, 377, 418-419 

Hays, Wayne, 48 

Hazlip, Ken, 313-314 

Head Start, 20, 386-387 

Heald, Anne, 327 

"Heartbreaking Crimes: Kids without a Conscience? Rape, 
murder, a baby dead at a prom: A look at young lives 
that seem to have gone very, very wrong," 29 

Heaton, K.M., 15n, 92n, 199-200, 264n 

Hechinger, Fred M., 230, 236 

Hegel, Friedrich, xvii 

Hegelian Dialectic, 387, A155 
definition of, xvii 

examples of use, xii, 349-350, 378, 455 

Richard Riley's use of, 447 
Heinich, Robert, A35 
Helms, Jesse, 232-233 

National Citizens' Alliance (NCA) Americanism Award, 
266 

Henderson, Marlene, 213 

Heneson- Walling, Robert, 154 

Hentschke, Guilbert C, A112 

Herald News (The) (Passaic, New Jersey), 125-126 

Heritage Foundation, 202, 231, 285, 376 

1993 Annual Report of, 304 

and Center of the American Experiment, 385 

and DISTAR, 417 

Policy Review: The Journal of American Citizenship, 374, 
434 

and "Time to Overhaul the Elementary and Secondary 
Education Act of 1965," 428-429 
Herman, Alexis, 403 
Herman, Rebecca, 434-436 
Hersey, Steven M., 219 
Herzer, Ann, 81, 192, A155 

criticism of Preventing Reading Difficulties in Young Chil- 
dren, 416-417 

opposition to ECRI teacher training, A94, A130 

"Our Children: The Drones," A143-149 
Herzler, Elam, 184 
Hesburgh, Theodore, 141 
Heuston, Dustin E., 213 

Hewlett Packard Corporation, 327, 338-339, A69 
Hewlitt Foundation, 245 
Hickey, Howard W, 85 



1-22 



Higher Education Board, 384 

Higher Education for American Democracy; Volume 3 Organiz- 
ing Higher Education, 39 

Higher Horizons, A117-118 

higher order skills (high level), 187, 245-247 

Higher Order Thinking Skills (HOTS), 264n, 325-326 

High Intensity Learning, 197 

High Performance Work Organization, A105 

High School (Carnegie Foundation for the Advancement of 
Teaching), 73, 210 

High Schools That Work (Gene Bottoms), 307 

High Skills for Economic Competitiveness Programs, A109 

Hill, Alan, 290 

Hill, Edward, 176 

Hill, Jesse, Jr., 344 

Hillary, John C, 277-278 

Hillsdale College, 238-239, 364 

Hilts, Philip J., A146 

Hirsch, E.D., A127-130 

Hiss, Alger, 12, 28, 36, 42-43, 47 

History of Laboratory Schools (The): The University of Chi- 
cago, 6n 

History of Teacher's College (A): Columbia University (Lawrence 
Cremin, David Shannon, Mary Evelyn Townsend), 6n 

Hitler, Adolph, 24-25, A94 

H.J. Russell & Company, 344 

Hoban, Charles F., Jr., A3 5 

Hoffman, Lee M., A82 

Hogan and Hartson, 273 

Hoge, Anita, 85, 221, 250, 348-349, A21 

"Five Magic Questions Enable Parents to Debate the 
Issues," 368 

"When Johnny Takes the Test: How Your Child Is Identified 
and Tracked to the National Data Bank — and Beyond," 
451n 

holistic education, 281 

Holistic Education Review, 276-277 

Holland, Miriam V., 408 

Holloway, Karel, 222-223 

Holt, Marjorie, 133 

Holubec, Edith Johnson, 239 

Horn, Ernest, 24 

"Home School Families," 179-180 

home schooling, 179-180, 241, 253-254, 256, 363 
and school-to-work (apprenticeships), 437-438 
utilizing Skinnerian methods of education, xxvii 

Home School Legal Defense Association, 437-438 

Hong Kong, 378-381 

Hong Kong Education Commission, 381 

Hong Kong Task Group on School Quality and School Fund- 
ing, 381 

Honig, William (Bill), 236, A155 

Hooper, Susan, 260 

Hooper, Walter, 158n 

Hoover, Herbert (President), 17, 19 



Horace Mann-Lincoln Institute of School Experimentation, 
46 

Horn, Joan, 383 

Hornbeck, David W, 263, 321, 446 

Human Capital and America's Future: An Economic Strategy 

for the Nineties, 287-288, 377, A46-47 
Human Resources Development Plan for the United States 

(A), A96 

and Kentucky Education Reform Act (KERA), 333-334 

mandating community service, 217 

and Project BASIC, 204-205 

proposal for new education system, 241-243 

"Technology and Students at Risk of School Failure," 
273-274 
Hoser, Albert, 344 
House, Edwin Mandell, 12 

House Committee on Education and Labor of Congress, 62 
House Education and Workforce Committee (of U.S. Con- 
gress), 66 
Houston Health Science Center, 417 

"How to Fix a Crowded World: Add People" (Barbara Cros- 
sete), 388 

How to Measure Attitudes (Marlene Henderson, Lynn Lyons 

Morris, Carol Taylor Fitz-Gibbon), 213 
How to Teach Animals: A Rat, a Pigeon, a Dog (Kathleen and 

Shauna Reid), 80 
How to Teach Animals (B.F. Skinner), 80 
Hoye, J.D., 413-414 

H.R. 6 — The Elementary and Secondary Education Reauthoriza- 
tion Act of 1993, 317-318 
Hudson Institute, 285, 323, 377, A24 

Educational Excellence Network, 352 

John M. Olin Fellow of, 385 
Hukill, Hobart, 191 
Humana, 333 

Human Brain and Human Learning (Leslie Hart), 341 
Human Capital and America's Future: An Economic Strategy 
for the Nineties (David W. Hornbeck, Lester Salamon), 
287-288, 377, A46-47 
Human Engineering Laboratory, 105-106 
Human Events, 364 
Human Information Processing, 248 
Human Intelligence International Newsletter, 171, 264n 
humanism, 13 

beliefs of, 21-22 

curriculum of, 126 

philosophy of, 238-239 

secular, 22 

Torcaso v. Watkins, 22 
Humanist (The), 192-193 
Humanist Manifesto (John Dewey), 17, 21-22 
Human Resources Development Plan for the United States (A), 

279, A96-112 
Human Resource Studies, 327 
Hunt, David, 115 



Index 



1-23 



Hunt, James B., 73, 210, 236, 256, A112 
Hunter, Edward, 209, 450 
Hunter, Madeline, 94, 228, A113 

Essential Elements of Instruction, 417 

Instructional Theory Into Practice (ITIP), 269, 450n 

and Mastery Teaching, 117, 217, 233 

"Promising Theories Die Young," 223-225 
Hurd, Paul DeHart, 182-183 
Hutchins, Robert M., 280 
Huxley, Aldous, 17, 18 
Huxley, Sir Julian, 13 
Hyde, Henry, 370, 410-412, A74-76 



I 

IBM Corporation, 177, 235-236, 446, All, A24 
Idaho, 144 

I Led Three Lives (Herbert A. Philbrick), 49 
Illusion of Technique (The): A Search for Meaning in a Techno- 
logical Civilization (William Barrette), 174 
ImmunoGen, Inc., 344 

Impact of Science upon Society (Bertrand Russell), 44-45 

"Implementing Effective Schools: Commitment — The First 
Step," 231-232 

Impossible Dream (The) (K.M. Heaton), 15n 

"Impressions and Concerns: A Preliminary Report" (Bill Carl- 
son), 413-414 

Improving America's Schools Act (IASA), A74 

Improving Educational Assessment (Ralph Tyler), 89 

Improving Educational Assessment and an Inventory of 
Measures of Affective Behavior (Walcott H. Beatty), 
89-90, 407 

IMTEC, 260-261, 264n, 312-313 

Indiana Department of Education, 339 

Indiana University, 35 

Individual Education Plans (IEP's), 66, 180, 287 
individualized education, 126. See also Mastery Learning 
Individualized Instruction, 100 

Individualized Learning Letter (T.I.L.L.): Administrator's Guide 
to Improve Learning; Individualized Instruction Meth- 
ods; Flexible Scheduling; Behavioral Objectives; Study 
Units; Self-Directed Learning; Accountability, Vol. 1, 
100-101, 401 

Individualizing Learning Program of Research for Better 

Schools, Inc., 68 
Individually Prescribed Instruction (IPI), 68, 79 
Individual Rights and the Federal Role in Behavior Modifica- 
tion: Report of the Subcommittee on Constitutional 
Rights, 127 

Individuals with Disabilities in Education Act (IDEA), 311 

Industrial Areas Foundation, 371, 376 

"Industrial Policy Urged for GOP," 205 

Information Clearinghouse on Service Integration, 443 



"Information Society: Will Our High School Graduates Be 

Ready?" (Roy Forbes, Lynn Grover Gisi), 187 
Ingram, Laura, 439 

"Initiated Symbol Projection" (ISP) (Hanscarl Leurner), 74 
"In Littleton, Colorado, Voters Expel Education Faddists," 
318-320 

"In Loco Parentis, Part II — The 'Parents as Teachers' Program 

Lives On" (Laura Rogers), 301-302 
"In Loco Parentis: The Brave New Family in Missouri" (Laura 

Rogers), 451 n 
Innisbrook Papers, 183, 264n 
input-output analysis, 143 
"Inquiry (the)," 12 

In Search of Mind (Jerome C. Bruner), A57 

"Inside U.S. Communism" (Herbert Philbrick), 50 

Institute for Accelerated Learning, 427 

Institute for Advanced Study at Princeton, 12 

Institute for Agrarian Reform (Chile), 237 

Institute for Contemporary Studies, A51 

Institute for Development of Educational Activities, Inc. (IDEA) , 

66, 151, 152, 387 
Institute for Economic Analysis, 143 
Institute for Educational Leadership, 440 
Institute for Philosophy and Public Policy, 371, 376 
Institute for Responsive Education, 188 
Institute for Social Research, 280 
Institute of Global Ethics, 252 
Institute of International Education (HE), 11 
Institute of Pacific Relations, 18 
Institute on Education and the Economy, 244 
"Institution in Transition" (Michelle Boorstein), 103 
Instructional Systems Design (ISD), A39 
"Instructional Systems Development in Korean Educational 

Reform," A29-31 
Instructional Theory Into Practice (ITIP), 223, 450n 
Instructor (The), 78 

Integrated Thematic Instruction: The Model, 339 
"Integrating Social Services and Education: A Look at Col- 
laboration and Delivery," 321 
Integrative Learning, 340 
Intellectual Activist (The), 274 
Intercollegiate Socialist Society (ISS), 8, 12 
"Interest in Character Education Seen Growing," 311-312 
Intermediate Technical Group, A169 

International Association for the Evaluation of Educational 

Achievement (IAEEA), 171 
International Association of Police, 176 
International Bureau of Education (Institute Jean-Jacques 

Rousseau), 13, 18, 63, 162 
International Center for Leadership in Education, 306-308, 

334-336 

International Chamber of Commerce, 35 
International City Managers Association, 77 
International Commission on the Development of Education, 
163 



1-24 



International Conciliation, 36, 42 

International Conference for Parent/Citizen Involvement in 
Schools, 188 

International Congress for Effective Schools, 243-244, 264n 

"International Congress for Effective Schools Draws Partici- 
pants from 13 Nations to London," 243-244 

"International Dimension of Education: Background Paper 
II Prepared for the World Conference on Education" 
(Leonard S. Kenworthy), 96-97, 397 

International Executive Service Corps, 202 

International Learning Cooperative, 261 

International Loan Agreement, 400, A31 

International Monetary Fund, 112, 391 

International Reading Association, 270, 290 

International Renaissance Foundation, 419 

International Research and Exchanges Board for Scholars, 
419 

International School Improvement Project (ISIP), 191 
International Standard Classification of Education (ISCED- 

COM.75/WS/27), 138-139 
International Standards of Operation (ISO) (UNESCO), xxi 
International Standards Organization (ISO), 411 
International Understanding (John Eugene Harley), 17-18 
Interpreter (The), 353 

"Investigation of the Social Studies in the Schools," 23 
"Investing in Better Schools" (Ralph Tyler), 83 
Involuntary Attention-Orienting Reflex, 248 
Iovino, Jean, 366 

Iowa Department of Education, 241, 253, 275 
Iowa Global Education Curriculum, A170-173 
Iserbyt, Charlotte, xxv-xxviii, 219, 232 

Back to Basics Reform Or...OBE Skinnerian International 
Curriculum, 264n, 455, A76 

memos on Direct Instruction, A90-96 

National Educational Goals Panel Community Action Tool- 
kit, Alert on, A65-71 

and "Observing the Birth of the Hatch Amendment Regula- 
tions," 220-221 

and Office of Educational Research and Improvement 
(OERI), xv, 250 

Soviets in the Classroom: America's Latest Education Fad, 
46, 261-262, A136-142 

"Status of Internationalization of Education," A126-131 

"Truth about How We All Have Been Had (The)," 
A150-156 

"Viewing Reform Partnerships as Big Brother's Intrusion," 
338-339 
ISO 9000, 398-399, A129 

"Issue #9 — Educational Innovation: What changes in purposes, 
procedures or institutional arrangements are needed 
to improve the quality of American elementary and 
secondary education?", 106-107 

"Issue for Designing A System of Skill Standards and Certifica- 
tion for the American Workforce: On What Basis Should 
Occupation/Skill/Industry Cluster Be Organized?" 



(Robert W. Glover), 329 
It Takes a Village to Raise a Child (Hillary Rodham Clinton), 
85 



J 

Jackson, Jesse, 351 

Jacob, Brad, 438 

Jacobs, Heidi, 344 

Jacoby, Jeff, 392-393 

Jacques, Michael, 353 

Jaffras, Jason, A46 

James, William, 4 

Janne, Henri, 141-142 

Javers, Ron, A146 

Javits, Jacob, 152-153 

JDR 3rd Fund, 152 

Jefferson, Thomas, 369 

Jeffords, Jim, 415-416 

Jenkins, Ed, 248 

Jennings, John F, 268 

Jeremiah Project, 375 

J.M. Smucker Company, 252 

Job Corps, A77, A79 

Job Corps Curriculum System, 197 

Jobs for the Future, 327 

JOBS Program, A109 

Job Training Partnership Act (JTPA), 288, A134 

John and Catherine T. MacArthur Fellowship, 377 

John Birch Society, A64 

"John Dewey Society (The)," 169 

John M. Ashbrook Center for Public Affairs, 140 

John M. Olin Foundation, 176, 377, 385 

Johns Hopkins University, 377, A82 

Johnson, Chalmers, 205 

Johnson, D.W, 239 

Johnson, Dan, 400 

Johnson, Henry, 24 

Johnson, Joseph E., 47 

Johnson, Lyndon (President), 55, 56, 73, 110 

expansion of federal aid to education, 358 

"War on Poverty," 75 
Johnson, R.T., 239 
Johnson Foundation, 251 
Johnston, Robert C, 345 

Joint Committee on Education and Evaluation, 76 
Joint Dissemination Review Panel (JDRP), 123-124 
Jolly, Elton, 177 
Jomtien Conference, 321 
Jones, Beau Fly, 309 
Jones, David, 333 
Jones, Elsie, 304 
Jones, Gordon S., 350 



Index 



1-25 



Jones, Roberts T., 266-268 

Jordan, Barbara, 351 

Josephson Institute of Ethics, 351 

Josiah Macy, Jr. Foundation, 50 

Journal for Learning Disabilities, 417 

Journal of Associating Teacher Educators (The), 310 

Joyce, Bruce, 114-117, 208 

Joyce, Michael, 176, 377 

J. P. Morgan and Company, 12 

Judd, Charles, 4, 165 

Judeo-Christian 

morals, 21-22, A114 

roots, having a clearer understanding of, 342 
tradition of, 27 



K 

"K-12 Competency-Based Education Comes to Pennslyvania" 

(John H. Sandberg), 153-154 
Kame'enui, Edward, 212, 417 
Kane, Robert, A27 
Kansas, 144, 194 
Kassebaum, Nancy, A77-80 
Katz, Vera, 236, 327, A112 
Kaufman, Roger A., 217, A27 
Kean, Thomas H., 236, A112 
Kearney, Annette, A27 
Kearns, David, 255 
Keating, Thomas, 234 
Keck, Daniel B., 234 

"Keeping You Current on Education Reform," 347-348 

Keep the Change, Inc., 413-414 

Kellogg Foundation, 175 

Kelly, James A., 256 

Kelly, Thomas A., 160, 187, 322 

Kemble, Eugenia, 327 

Kennedy, Edward (Ted), 415-416, A80 

Kennedy, John F. (President), 55, 67, 132, 358 

Kentucky, 29, 165 

Kentucky Citizens Digest, 274 

Kentucky Department of Education, 141 

Kentucky Distinguished Educators, 320-321 

Kentucky Education Reform Act (KERA), 263, 274, 333 

problems with, 316, 320-321 

"Kentucky Schools Test Scores Vary Little from Last Year," 
320-321 

Kenworthy, Leonard S., 96-97, 397 
Kerlinger, Fred N., 121 
Kerr, Clark, 83 
Kessin, William, 135 
Kettering Foundation, 151, 199 
Khul, Djwhan, 54n, 283 
Kidder, Rushworth, 251-252 



Kiefer, William, 399 

Kiernan, Edward H., 176 

Kildee, Dale, 415 

Kilduff, Marshall, A146 

King, Faye, 304-305 

Kinsey, Alfred C, 28, 35, 122, 48-49 

Kinsey: Crimes and Consequences — The Red Queen and the 

Grand Scheme (Judith Reisman), 39, 53n 
Kipling, Rudyard, 381 
Kirkendall, Lester A., 98 
Kirschenbaum, Howard, 144 
Kissinger, Henry A., 83 
Kitzhaber, John, 408-409 
Klass, Lance, 2-5, 6n, 158n 
Klein, M. Frances, 119 
Knapp, Frances, 21 
Knight, Bonnie, 408 

"Knowing How We Come to Know Things," 322-323 

Kohlberg, Lawrence, 119, 144 

"Ethical Issues in Decision Making," 174, 352 
"Stages of Moral Development," 130-131, 421 

Korean Educational Development Institute (KEDI), A30-31 

Kosiec-McFarlin, Barbara, 356, 452n 

Koslova, Tanya, 346 

Kovalik, Susan, 339-341, 452n 

Kovalyova, Tatyana, 312-313 

Krathwohl, David, 29, 69, A22, A113 

Kravett, Bernard, 90 

Krey, A.C., 24 

Kristof, Nicholas, 294 

Kristol, William, 377 

Kutztown University, 310 



L 

LaBarbera, Peter, A129 
Labor, William, 417 

Laboratory of Comparative Human Cognition, A139 

"laissez faire," age of, 24, 265 

Lambert, Banque, 112 

Lancaster Laboratories, Inc., 252 

Land, Richard D., 377 

Landgraf, Kurt, 398-399 

Landrus, Wilfred, A27 

Lane, Franklin, 12 

LANGUAGE ARTS FRAMEWORK, 178 

"Language of OBE Reveals Its Limitations (The)" (Gretchen 

Schwarz), 354 
Lanier, Judith, 236 
Lansing School District, 441 
Lanza, Monica, 125-126 
Lapointe, Archie, 177-179, 244, 349 
Laski, Harold, 23, 265 



1-26 



Lauder Foundation, 299 

Lawrence, Jaqueline, 206 

Lawrence, Malcolm, 209, 230 

Leadership Development Associates, 167 

"Leading Business Executives Create Council to Promote S-T- 

W Programs," 344 
League for Independent Political Action, 23 
League for Industrial Democracy, 8, 11 
League of Nations, 12, 42 
learning 

"authentic" applications of, 325-326 
basic needs of, 451n 
brain-based, 426-427 
brain-compatible, 339-341 
constructivist, 325-326 
definition of, 1,2 
group, 247 
integrative, 340 
service, 346-347 
"super," 156-158, 426-427 
Learning a Living: A Blueprint for High Performance, 
266-268 

Learning and Development Center, 330 
Learning and Instruction, 78 

"Learning and Peace: UNESCO Starts Its Work" (Richard A. 
Johnson), 38 

"Learning and Teaching in the Future" (John Goodlad), 81 
Learning Disabilities, Cognitive, and Social Development 
Branch of the National Institute of Child Health and 
Human Development of the National Institutes of 
Health, 212 

"Learning for All: Bridging Domestic and International Educa- 
tion," 321 

"Learning for All— What Will It Take?", 406-407 
Learning for Life, 389-390 

Learning for Tomorrow: The Role of the Future in Education 

(Alvin Toffler), 180 
Learning Research and Development Center (LRDC) of the 

University of Pittsburgh, 150, 417, A52, A55 
and Alan Lesgold, 382 

and Individually Prescribed Instruction (IPI), 68 

and Lauren Resnick, 177 

and Robert Glaser, 211-212 
Learning to Be (Faure Report), 148, 163 
"Learning to Read the ECRI Way" (Dennis Bailey), 182 
Ledell, Marjorie, 322 
Ledger, 111 

Left Brain/Right Brain Thinking, 340 

Legal Challenges to Behavior Modification (Reed Martin), 
A146 

Leipzig, Germany, 2-3 

Leipzig Connection (The): The Systematic Destruction of 
American Education (Paolo Lionni, Lance Klass), 2-5, 
6n, 158n 

Lemann, Nicholas, 435-436 



Leming, James, 252 

Lenin: On Educating Youth (N. Landa), A138-139 
Lenin, Vladimir, A63, A138-139 
Lenskaya, Elena, 289, 451n 
Leonard, George, 303 

Leonardo da Vinci Programme Cooperation, 390, 402 

Leontief, Wassily, 142-143, 303, A49 

Lepley, William, 253 

Lesgold, Alan, 382 

Leslie, Sarah, 276, 451n, A167-176 

Lessinger, Leon, 100, 127, A27 

"Lessons — in the quiet world of schools, a time bomb is set 

for 1993 on certifying teachers," 255 
"Let's Be Honest — Ethical Issues of the '90s," 252 
"Letter from Peking" (Edgar Snow), 104 
Leu, Donald, 79 
Leurner, Hanscarl, 74 
Levin, Henry M., 99, 340, 427 
Levin, Jonathan, 29 
Levitt, Arthur (Jr.), 176 
Levitt, Michael 0., 316 
Lewin, Kurt, A108 
Lewis, Bay an, 279 
Lewis, Bettye, 405-406, A23-26 
Lewis, C.S., 37, 140, 158n 
Lewis, Janet, 327 

Lezotte, Lawrence W. (Larry), 189, 314-315, 406-407, 420 
liberal arts, 140 

Lickona, Thomas, 312, 351-352, 421-422 
Liebenstein, Harvey, 303 
Life Magazine, 43 

Life ofC.S. Lewis (A) (George Jack Sayer), 158n 
Lifton, Robert Jay, A146 

Light Shall Set You Free (The) (Shirley McCune), 366-367 

Lilly Endowment of the Eli Lilly Corporation, 419 

Limbaugh, Rush, xxviii 

Limits to Growth (Club of Rome), A169 

Lin, Su, 335 

Lincoln, Abraham, 44 

Lincoln County Weekly (Maine), 409 

Lindquist, Clarence B., 57 

Lindsley, Ogden R., 60, A8 

Lines of Credit: Ropes of Bondage (Robert H. Goldsborough), 
54n 

Lionni, Paolo, 2-5, 6n, 158n 
Lipper, Arthur, 152-153 
Lippman, Walter, 12 
literacy, 183, 237 

functional, 196 

as problem in schools, 6 
Literacy Hoax (The), A8 
Little, James Kenneth, A8 
Littleton, Colorado, xxvi, 29, 318-320 
Litton Industries, 112 

Liverpool Laboratory School at the Research and Develop- 



Index 



1-27 



ment Center in Early Childhood Education at Syracuse 
University, 119 
London, Jack, 8 

London School of Economics and Political Science, 18 
London Truth, 381 
Long, Richard, 290 

"Long-Awaited National Teaching Certificate Detailed," 

255-256 
Longfellow Elementary, 305 
"Look at Business in 1990 (A)," 112 

Looking Back, Thinking Ahead: American School Reform 

1993-1995, 352 
Los Angeles Chamber of Commerce, 112 
Los Angeles Times (The), 135-136, 279, A138 
Loth, David, 39 
Lott, Trent, 416 
Louisiana, 144 
Lovelock, James, 276 
low-income families, 243-244 
Loyola University, 198 
Lozanov, Georgi, 156-158, 340, 427 
Lucis Trust, 51, 54n 
Lumsdaine, A.A., 60, A7, All-16 
Lupberger, Edwin, 377 
Luria, Alexander R., 325-326, A59-63 
Lust Killer (Ann Rule), 337 
Lyman, Richard W., 176 
Lynde and Harry Bradley Foundation, 377 
Lynn, Irene, 403 
Lyon, Billy, 297-301 
Lyon, Reid, 212, 417 
Lysaught, Jerome P., 61, All-16 



M 

Machiavel Pedagogue ou le Ministere de la Reforme Psy- 
chologique (Machivellian Pedagogy or the Ministry of 
Psychological Reform) (Pascal Bernardin), 346 

MacMullan, Ralph, 104 

Madrid, Arturo, 236, A112 

Magaziner, Ira C, A74-75, A112 

magnet schools, 155, 317, 448. See also charter schools 

Maine, 38, 124, 378, 431-432 

Maine's State Department of Education 1985 Assessment of 
Educational Progress (MAEP), 227-228 

Maine Aspirations Benchmarking Initiative, 431-432 

Maine Association for Supervision and Curriculum Develop- 
ment In-Service Training, 197 

Maine Association of Christian Schools, 219-220 

Maine Career Advantage, 272 

Maine Central Institute, 346 

Maine Department of Education, 378, 431 

Maine Facilitator Center, 117, 158n, 228, A91 



Maine Facilitator Report on Current National Diffusion Network 

Activities (The), 198-199 
Maine Learning Results, 431 
Maine Mastery Learning Consortium, 198-199 
Maine State Capacity Building Grant, 174-175 
Maine State Department of Education, 219-220 
Maine Sunday Telegram (The), 103 
Maine Technical College System, 272 
Maine Times (The), 182 
Maine Youth Apprenticeship Program, 272 
"Making Academics Count," 268 
"Making or Breaking Strategy through Culture," 447 
Malcolm, Shirley M., 236, A96, A112 
Malone, Gene, 41, 142 
Malthus, Thomas, 388 
Malvern Conference, 33 

Man: A Course of Study (M:ACOS), 114, 132, 226, 451n, A63 
Man, Education & Society in the Year 2000 (Grant Venn), 
128-130 

Management by Objectives (MBO), 72, 88, 132, 204-205, A40- 
A41. See also Planning, Programming and Budgeting 
Systems (PPBS); Total Quality Management (TQM) 
and Course Goals Project, 168 

forerunner to Planning, Programming, and Budgeting 
Systems (PPBS), A49-50 

in "Georgia Schools OK Tracking Systems," 407-408 

and mastery learning, 84 

and Outcome-Based Education (OBE), 142 

and Terrell H. Bell, 124-125 
"man as animal" assumptions, 5 
Manchikanti, Anu, 421-422 
Mandel, Benjamin, 45 

Man, Education and Manpower (Grant Venn), 128 
Man, Education and Work (Grant Venn), 128 
Manhattan Institute for Policy Research, 299 
Mann, Dale, 188, 243-244, 264n, 290 
Manno, Bruno V., 377 

"Man out of a Job: Pasadena Tries Too Late to Hold onto Its 

School Superintendent," 43 
Manpower Corporation, 344 
Mantoux, Paul, 17, 18 
Marer, Carl, 188 
Marrow, Alfred J., A146 
Marshall, Kit, 343 
Marshall, Leon C, 24 
Marshall, Ray, A96, A112 
Marshall High School, 337 
Martha Holden Jennings Foundation, 152 
Martin, Clyde, 39, 48 
Martin, Don, 3-4 
Martin, Reed, A146 
Martin, William E., 120 
Martinez, Matthew, 415 
Marx, Gary, 290 
Marx, Karl, xvii, 2, 12, A146 



1-28 



Marxist-Hegelian dialectic, 176 
Maryland, 37-38, 144, 204-205 
Maryland State Board of Education, 217 
Maryland State Department of Education, 347 
Maryland State Teachers' Association, 207 
Maryland Teacher, 31 
Maryland Values Commission, 419 
Marzano, Robert, 248 
Maslow, Abraham, 228-229, 375-376, A60 
Massachusetts Board of Education, 418 
Massachusetts Comprehensive Assessment System (MCAS), 
392-393 

Massachusetts Institute of Technology (MIT), 382, A57, A58, 
A60 

Massie, Bertram, 29, 52-53, 65, 69, 187, A22 

Master Plan for Public Education in Hawaii — Toward a New 

Era for Education in Hawaii, 85-88, A55 
Masters, Joan, 359-361 
Mastery in Learning Project, 222, 264n 

Mastery Learning, 81, 197, 215, 234, 286, A43. See also Direct 
Instruction; Outcome-Based Education 
adaptations of, 313-314 
and B.F. Skinner, 13 

behavior modification method behind, 240-241 
and Benjamin Bloom, 4, 124-125 
components of, 198 
and A Course Goals Collection, 168 
definition of, 367-368 
linked to Programmed Instruction, xxvi 
and Outcome-Based Education (OBE), A27-28, A38 
and Planning, Programming and Budgeting System (PPBS), 
84 

removal of Carnegie Unit, 21 
"Mastery Learning: The Current State of the Craft" (James 

Block), 118, 155-156 
Mastery Learning Reconsidered (Robert Slavin), 224-225 
Mastery Teaching, 233 
math, 14-15, 46, 447 
Matheson, Scott, 188 

"Math Exam Rationale Doesn't Add up: Simple Questions 
Are Often Posed in Unnecessarily Complex Ways," 
396-397 

Mathtec, Inc., 443 

"MCAS Tests Undermine Rights of Parents," 395-396 

McAuley, Joanne, 145-146 

McCarthy, Bernice, 341 

McCord, Joan, 202 

McCune, Shirley, 171, 194, 261, 263 

and GOALS 2000/restructuring of schools, A65 

The Light Shall Set You Free, 366-367 

and Midcontinent Regional Educational Laboratory 
(McREL), 377, A38 

and "the radical center," 349-350 
McDonald's USA, 344 
McDonnell, Sanford, 377 



McDonnell Douglas Corporation, 377 
McFarlin-Kosiec, Barbara, 401 
McGill University, 417 
McGraw, Onalee, 21 
McGraw-Hill, 156 
McGuire, Susan, A96 
McKeachie, Wilbert James, 75 
McKeon, Howard P. "Buck," 415, A75 
McKernan, John B., Jr., 272, 327 
McLean, Paul, 340 
McLemore, Judith, 287-288 
McMurrin, Sterling M., 62 
McMurtry, John, 292 

McNary Area Service Learning Project, 347 

McPhail, James, A27 

McPherson, Robert, 327 

McVey, Larry, 344 

Mc Walters, Peter, All 2 

Means, Barbara, 433 

Medicaid, 154-155 

Medicare, 35 

Medlin, William K., 57 

Meese, Edwin, 205, 328, A51 

"Meeting the Future," 173 

Megatrends (John Naisbitt), 194, 452n 

Megatrends 2000 (John Naisbitt), 452n 

Meierhenry, Wesley, A3 5 

Mein Kampf (Adolf Hitler), 24-25 

Melz, Barbara, A174 

Mental Robots (Albert Lewis Alesen), 49 

Merriam, Charles E., 24 

Merton, Robert K., 152 

metaphysics, 122 

Metro United Way, 439 

Michigan, 144, 405-407, 451n 

Michigan Governor's Advisory Council on Population, 109 
Michigan High School Proficiency Communications Arts 

Frameworks, 311 
Michigan Reading Association, 324-326 
Michigan State Board of Education, 323-326, 405 
Michigan State University, 72 

and Behavioral Science Teacher Education Program 
(BSTEP), A23 

Michigan Strategy Proposal for Drug and Violence Free Schools 

and Communities, 405 
"Microcomputers in Today's Schools," 174 
Midcontinent Regional Educational Laboratory (McREL), 
263, A38 

and IMTEC, 312-313 

and Shirley McCune, 194 

Tactics for Thinking, 248-249, 261 
Miel, Alice, 46 
Mielke, Keith, A3 5 
Mikhatshwa, Sangaliso, 399 
Miller, Donald R., 83 



Index 



1-29 



Miller, George, A57-58 

Miller, Loye, 250 

Miller, Thomas H., 61, A12 

Mills, Richard P., A112 

Milwaukee Sentinel Journal (The), 437 

Ministry of Russia, 312-313 

Minneapolis Star Tribune, 422 

Minnesota, 131-132 

Minnesota's Graduation Rule, 422 

Minnesota Business Partnership, 225-226 

Minnesota Daily (The), 422 

Minnesota Plan, 225-226 

Minzey, Jack D., 85 

Mission of the Office of Education (1960s), 63 
Mission, Texas, and ECRI, 212 
Missouri School Boards Association, 234 
Mitchell, Barbara, 223 
Mobilization for Youth, 197 

Model Core Curriculum Outcomes in Reading, 324-326 
"Model Program Links Classroom to Workplace" (Courtenay 

Thompson), 337 
model school, 251 

"Model School for the 21st Century," 41 
Model School News, 260 

Model Schools Conference (Sixth Annual), 406, 451n 
Models of Instructional Organization: A Casebook on Mas- 
tery Learning and Outcomes-Based Education (Robert 
Burns), 216, 264n 
"Models of Teacher Repertoire Training" (Bruce Joyce), 114 
Models of Teaching (Bruce Joyce, Marsha Weil), 114, 208, 
228 

"Modern Red Schoolhouse," 323, 435, A24 

charter school of, A156 
Mondale, Walter, 376 

Monitoring Environmental Progress: A Report on Work in 

Progress, A51 
Monroe Evening News (The) (Michigan), 95 
Monson, Thomas S., 176 
Montessori, Maria, 8-9, 99 
Montessori International, 9 
Montessori Method, 9 

Montgomery Council Journal (The) (Maryland), 242-243 
Montgomery County, Maryland, xvi, 208, 444, 448 
Moore, Frank J., 99 
Moore, Opal, 107 

moral/citizenship education (MCE), 144 

Moral Development Approach Curriculum, "Ethical Issues in 

Decision Making," 130-131 
moral relativism, xii 
Moran, Ellen, A92-93 
Moreno, Jacob, 208 
Morgan, Robert M., A27, A29-30 
Mormon Church, 176 
Morphonios, Ellen, 82 
Morris, Barbara M., A146 



"Conclave of the Change Agents," 144 
Great American Con Game (The), 149-150 
Tuition Tax Credits: A Responsible Appraisal, 184 

Morris, Lynn Lyons, 213 

Morris, Robert, 45-46 

Morrison, Linda, 370-371 

Mort, Paul, 22-23, 444, A5 

Moseley, Stephen F., 290 

Motorola, Inc., 327 

Mott Foundation (Charles Stewart), 152, 176, 253, 264n 
Moynihan, Daniel Patrick, 118-119, A75 
MSDE Bulletin, 347-348 
Muller, Hermann J., 35 
Muller, Robert, 9, 25, 260 

and World Core Curriculum, 54n, 283 
Mullins, James, 408 
Mulshine, Paul, 427-428, 430-431 

"Multiculturalism Is a Worthy Goal, but America Still Needs 

Americans" (John Omicinski), 341-342 
multi-cultural programs, 287 

"Multiple Choice Review of Education — Profiles of Learning 
Takes Central Stage at Gubernatorial Debate on Educa- 
tion — Large Protest at Capitol Targets the State's Newest 
Graduation Standards," 422 

Muscatine Journal (Iowa), 253 

music therapy, 157-158 

Muskie, Edmund, 358 

Mussolini, Benito, 9 

"Myth of Competitive World-Class Education," 276 
"Myth of Federal Aid to Education without Control," 56, 62 
Myths of Japanese Quality (The) (Ray and Cindelyn Eberts), 
A135 



N 

Naisbitt Group, 194 

Naisbitt, John, 194, 272, 452n 

"Napa Evaluation of Madeline Hunter's ITIP: Lessons Learned" 

(Robert Slavin), 224-225 
Narrative Report of Project Funded under Title III, Elementary 

and Secondary Education Act: OPERATION PEP, a 

Statewide Project to Prepare Educational Planners for 

California, 83-84 
Nathan, Joe, 300 
Nation's Schools Report, 154-155 

National Academy of Education (Harvard Graduate School of 

Education), 231 
Commission on Education and Public Policy, 211 
National Academy of Sciences, 416-417, A140 
National Alliance for Restructuring Education, 269 
"National Alliance for Restructuring Education: Schools and 

Systems for the 21st Century," 269, A52-56 
National Alliance of Business, 268, 269, 273, 328, 333 



1-30 



National Assessment Governing Board (NAGB), 91 
National Assessment of Educational Progress (NAEP), 64, 
91, 186, 238 

and Educational Testing Service (ETS), 210 

forerunner of, 69 

Measuring the Quality of Education: Conclusions and Sum- 
mary, 176-179 
and North Dakota student scores, 348-349 
and Roy Forbes, 187 
testing of students, 56, 286 
test items, 227-228, 349 
work with England, 244, 357 
National Assessment of Vocational Education, 245 
National Association for the Education of Young Children 

(NAEYC), 258, 264n 
National Association of Counties (The), 77 
National Association of Directors of Education Research 

(American Educational Research Association), 12 
National Association of Elementary School Principals, 
434-436 

National Association of School Psychologists, 410 

National Association of Secondary School Principals (NASSP), 

180, 184, A140 
National Blue Ribbon Schools Program, 378 
National Board for Professional and Technical Standards, 

A103-107 

National Board for Professional Teaching Standards, 235, 256, 
269, 417, A55 

National Board for Student Achievement Standards, A104, 
A110 

National Book Company, 98 
National Center for Children in Poverty, 443 
National Center for Citizen Involvement, 176, 179, 202 
National Center for Educational Outcomes, 311, A93 
National Center for Educational Statistics (NCES), 64, 295-296, 
430, A45, A76 
Educational Records and Reports Series, A3 7 
Financial Accounting: Classifications and Standard Termi- 
nology for Local and State School Systems, Handbook 
U, 451n 

and SPEEDE Express, 306, A47 
National Center for Neighborhood Enterprise, 377 
National Center for Policy Analysis, 299 
National Center for Privatization, 202 

National Center for Reconciliation and Educational Reform, 
343 

National Center for Research in Vocational Education, 272, 
A78 

National Center for Services Integration (NCSI) of Mathtec, 

Inc., 443, 441 
National Center for Student Aspirations, 431 
National Center on Adult Literacy, 440 
National Center on Education and Employment, 245 
National Center on Education and the Economy (NCEE), 83, 

218 



America's Choice: High Skills or Low Wages!, 271 
Board of Trustees, A112 

and Human Resources Development System, 279, A72-80, 
A96 

and Marc Tucker, 302 
"The National Alliance for Restructuring Education: Schools 

and Systems for the 21st Century," 269, A52 
National Center to Improve the Tools of Educators (NCITE), 

387, 417, A91-92 
National Citizens Alliance (NCA), 249-250 
National Civic League, 374 

National Coalition for Parent Involvement in Education 

(NCPIE), 189 
National Commission on Civic Renewal, 371-378 
National Commission on Excellence in Education, 196-197 
National Commission on Philanthropy and Civic Renewal, 

377 

National Committee for Citizens in Education, 188 
National Convention of Women for Constitutional Govern- 
ment, 10 

National Convocation on Pre-College Education in Math and 
Science, 182 

National Council for Educational Excellence, 145-146 
National Council for Educational Research (NCER), 210, 248 
National Council for the Social Studies, 149 
National Council of Churches, 144 

National Council on Educational Research, 98, 168, 238-239 

national curriculum, development of, 176-179, 251, A70 

National Defense Education Act, 53, 62 

National Defense Education Act Amendment of 1961 — Addi- 
tional Views, 63-65 

National Diffusion Network (NDN), 189, 207, A91, A144- 
147 

catalog of, 130-131, 158n 
function of, 91n 
funding of ECRI, 81 
and National Education Goals, 268 
as "transmission belt" for federally funded programs, 56, 
123-124 

National Education Association (NEA), 113, 144, 156, 
A128-129 

"A Broad-Gauged Research/Reform Plan for Secondary Edu- 
cation — In the Tradition of the Eight- Year Study," 169 

"A Declaration of Interdependence: Education for a Global 
Community," 133 

agency for human relations training (brainwashing), 38 

Bicentennial Idea Book, 140-141 

and Catherine Barrett, 139 

Department of Education (U.S.), 151 

Educational Policies Commission (EPC), 19-20 

and An Educator's Guide to Schoolwide Reform, 434-436 

as a federally chartered association, 8 

funding of projects/organizations, 96, A60 

and Mary Hatwood Futrell, 236 

Mastery in Learning Project, 222-223, 226-227 



Index 



1-31 



and National Training Laboratory (NTL) , 309 

NEA Special Committee on Instructional Technology 

Report, 174 
school-based management, 137 
Today's Education, 81, 140-141 
National Education Goals, 278-279 
National Education Goals and Standards, A69-70, A74 
National Education Goals Panel (NEGP), 286, 315, 316, 317-318, 
352-353 

National Education Goals Panel Community Action Toolkit, 

Alert on [Charlotte Iserbyt), A65-71 
National Education Goals Project [NEGP), 286 
National Education Institute, 363 
National Education Longitudinal Survey, A83 
National Education Program, 50 

National Education Statistics Agenda Committee, 295-296 
National Educator (The), 14-15, 109, 144, 149-150 
National Employment Leadership Council, 344 
National Endowment for the Arts (NEA), A171 
National Endowment for the Humanities [NEH), 417 
National Forum for Educational Awareness, 232-233 
National Foundation for Educational Research, 177 
National Goals Panel, 338-339, 359. See National Education 

Goals Panel [NEGP) 
National Governors' Conference, 77 

National Governors' Association (NGA), 194, 254-255, 299 
"A Road Map for Restructuring Schools," 270-271 
and National Center for Services Integration, 443 
and "State of Education Criticized — Nonprofit Organization 
Hired at Former Governor's Urging Pinpoints Weak- 
nesses within Ohio's Academic System," 446 
and William Clinton, 268 
National Guard and Reserves, 296-297 
National Health Screening Council for Volunteer Organiza- 
tions, Inc., 189 
National Home Educator's Leadership Conference, 438 
National Information Infrastructure Advisory Council, 381 
National Institute for Learning, Work and Service, 302 
National Institute for Literacy (NIFL), 386-387 
National Institute of Child Health and Human Development 

[NICHHD), 417 
National Institute of Education (NIE), 98, 137, A41, A159 
creation of, 117-119 
and Edward Curran, 125, 161-162, 192 
funding of other projects/organizations, 144, 171, 174, 
201 

How to Measure Attitudes, 213 

incorporation into Office of Educational Research and 
Improvement [OERI), 152, 211-213 

and National Council on Educational Research, 238 

and Research on Instruction Team, 172 

and Thomas Sticht, 215 

and William G. Spady, 143-144 
National Institute of Mental Health (NIMH), A145 
National Institute on Alcohol Abuse, 109 



National Institute on Career Majors, 424-425 
National Issues in Education: Goals 2000 and School-to-Work 
(John F. Jennings), 244, 268, 450n, 452n 
publication of, 356-359 
National League of Cities, 77 
National Legal Center for the Public, 202 
"National Network for Educational Excellence," 202 
National PTA, with Citizens for Excellence in Education, 348 
National Qualifications Framework (NQF), 399 
National Recovery Act (NRA), 95 
National Research Council, 212, 386, 416 
National Review, 360 

National School Boards Association (NSBA), 145-146, 290, 

326, 347-348 
National School Conference Institute (NSCI), 453n 
National School-to-Work Office, 413-414, 424-425 
National School-to-Work Office of the United States Department 

of Education, 403-405 
National School Volunteer Program, 188, 189 
National Science Foundation (NSF), 132, 417, A105, A143 
National Science Teachers Association, A139 
National Skills Standards Board (NSSB), 304, 330, 411-412 
National Society for the Study of Education, A48 
"National Support for Our Public Schools" (Paul Mort), 

22-23 

National Task Force on Educational Technology, 233-234 
National Task Force on Education Data Elements, A82 
National Teachers Association, 8 

National Training Laboratory (NTL), 38-39, 296, 308-309, 
A60 

National Unity Campaign, 376 
National Volunteer (The), 372 
National Youth Apprenticeship Act, 301 
Nation at Risk (A): The Imperative for Educational Reform, 
xviii, 227, A28, A144 
with Action for Excellence and High School, 73, 210 
publication of, 190 
Nation Prepared (A): Teachers for the 21st Century, 255-256, 
451n, A73 

Nature of Human Conflicts (The) (Alexander Luria), A59 

Nazi Germany, 150, 221 

Nebraska, 135, 144, 194, 417 

Nebraska State Department of Education, 204 

Needmor Fund, 152 

negative reinforcers, 186 

Nelson, Kent C. "Oz," 333 

Nelson, O.A., 14-15 

Network for Effective Schools, 188, 256-257, 290 
Network for Outcome-Based Schools (William Spady), 
193-194 

Network of Educational Excellence, 220 

"New AFT President Urges Members to Help Floundering 

Schools," 81 
"New Age," 74, 157-158, 248-249, 276 

of Eastern mysticism and Western occultism, 339 



1-32 



training, 243 

New American Schools Development Corporation (NASDC), 
161, 179-180, 293-294, 297, 298, 336, A52 

establishment of, 290 

and the Modern Red Schoolhouse, 323 

and Next Generation School Project, 436-437 

and Success for All, 416 
New Atlantic Initiative Statement, 360 
New Basics (The), 413 
"New Biology," 28 

New Century Dictionary of the English Language (The), 1 
New Deal, 95 

"New Definition of the Educated Man (A)," 23 
New England Medical Center, 344 
"New Federalism," 35 

New Generation of American Schools, 278-279 
Neu; Genesis: Shaping a Global Spirituality (Robert Muller), 
260 

Newhouse, Bonnie, 284-285 
Neu; Humanist, 21 

New International Economic Order (NIEO), 195 
New Jersey, 144 

New Jersey Department of Human Services, 441 
Newman, Frank, 408 

"New Model for Teacher Education — With Focus on Context 
and Workplace: Project Could Better Prepare Students" 
(Michael Childs), 425 

New Model Me (The), 124 

Newport Harbor Ensign (The) (Corona del Mar, California), 
107-108 

Newport-Mesa Unified School District, 107-108 
News & Observer (The) (Raleigh, North Carolina), 386 
"New Soviet Man," 56 

New Standards Project, 330, 369, 417, A52-54 
Newsweek Magazine, 298, 299, 371 

"New Tack Taken on Religion in Schools: Group Seeks End to 

Secular Bias," 418-419 
New Testament, 22 

"New Times Demands New Ways," 432-433 
Newton, Jesse H., 24 

New Transatlantic Agenda (NTA), 359-361, 411-412 

"New Views of the Learner: Implications for Instruction and 

Curriculum," 148 
"New World Disorder (The)," 205 
New World Order, 7, 346, 361 

"New World Order (The)" (A.M. Rosenthal), 390-392 

New York, 144 

Neu; York Herald Tribune, 13 

New York State Department of Education, 441, A139 
Neu; York Times (The), 13, 52, 67, 382 

"Beijing Journal: Personal File and Worker Yoked for 
Life," 294 

"Carnegie Foundation Selects a New Leader," 80, 371 

"Defining Literacy Downward," 364 

"Early Schooling Is Now the Rage," 443-444 



eulogy of Wassily Leontief, 142-143 

"How to Fix a Crowded World: Add People," 388 

"Lessons — In the quiet world of schools, a time bomb is 

set for 1993 on certifying teachers," 255 
"Radical Theorist Takes His Message to the World," 237 
"Study Says 33% of Young Adults Are Illiterate," 237-238 
"The New World Order," 390-392 

"The Social Studies: A Revolution Is on — New Approach 
is Questioning, Skeptical — Students Examine Various 
Cultures," 108-109 
"U.S. and Soviets to Share Insights on Computers," 230 
"Week in the Subway as Cultural Exchange," 280 
"Who'll Teach Kids Right from Wrong— The Character Edu- 
cation Movement Thinks the Answer Is the Schools" 
(Roger Rosenblatt), 351-352 
New York University, 143 
New York World, 10 

Next Generation School Project, 436-437 

"Next Generation School Project (The)," 167 

"Next Step: The Minnesota Plan" (Paul Berman), A42-43 

Nicaragua, 237 

Nichols, Margaret, 264n 

Niebuhr, Reinhold, 205 

1984 (George Orwell), 28, 441, A26 

Ninth National Society for Programmed Instruction Conven- 
tion, 101 

Nixon, Richard (President), 117-119, 358, 443, A75 
Norberg, Kenneth, A35 
Nord, Warren, 418-419 

Normal School Section of the National Education Associa- 
tion, 10 

norm-referenced (competitive) testing, 159, 227, 286-287, 

361-362 
Norris, William C, 176 

North American Association for Montessori Teachers, 15n 
North American Free Trade Agreement (NAFTA), 279, 291-292, 
304 

impact on education, 315-316 

"The Educational Implications of NAFTA," 321 
North American Montessori Teachers Association Journal, 9 
North Atlantic Treaty Organization (NATO), 66 
North Carolina, 127, 226 

North Central Association of Colleges and Schools (NCA): 
Michigan Committee's Outcomes Accreditation, 
239-240 

North Central Regional Educational Laboratory (NCREL), 273, 

309, 432-433, 441 
Northeast Association for Individualization of Instruction, 

100 

Northeast Ohio Roundtable, 252 

Northern Illinois University School of Education, 184-185 
Northwest Regional Educational Laboratory (NWREL), 107, 
173, 199, 328 

A Course Goals Collection, 95, 167 

as "delivery system" for Goals 2000, 369 



Index 



1-33 



and "Education & Community Services: Emerging Issues," 
423-424 

"Notice of Proposed Rulemaking to Further Implement Section 
439 of the General Education Provisions Act [Hatch 
Amendment)," 203-204 

Nouja, Victor, 290-291 

Novak, Michael, 377 

November, Alan, 420 

Novotney, Jerrold M., 119 

Novosti Press Agency Publishing House, 241 

Now Is the Dawning of the New Age World Order (Dennis 
Cuddy), 298 

"NSBA. Endorses All Alternatives to Traditional School Gov- 
ernance," 326 
NTL Newsletter, 39 
Nunn, Sam, 376 
Nunnary, John, 416 



o 

O'Neal, Sharon, 191 
O'Sullivan, John, 360 
0*Net, 412 

OBE/ML/DI, 88, 183, 287 

"Observing the Birth of the Hatch Amendment Regulations" 

(Bert Greene, Marvin Pasch), 220 
Odessa Post, 419 

Oettinger, Anthony, 183, 330, A155 

Office of Air Research and Development of U.S. Air Force, 
A7 

Office of Economic Cooperation and Development (OECD), 

151, 171, 191 
Office of Education (U.S.), 154, A7, A39 
Bureau of Research, 114 

funding of projects/organizations, 120, 128, 213 
Joint Dissemination Review Panel (JDRP), 134-135 
and Leon Lessinger, 127 
and Terrell H. Bell, 133 
Office of Educational Research and Improvement (OERI), 63, 
211, 330, A81 
and Bruno V. Manno, 377 

and Center for Educational Research and Innovation 

(CERI), 151, 191 
and Charlotte Iserbyt, xv, 250 
and Chester Finn, 117-119, 278 

and Frank Porter Graham Child Development Center, 394 

funding of projects/organizations, 202 

and Malcolm Davis, 179 

and Reading Excellence Act, 387 
Office of Educational Research and Improvement (OERI): An 

Overview, 169-170 
Office of Libraries and Learning Technology, 179-180 
Office of Special Education Programs (U.S.), A93 



Office of Strategic Services (OSS), 38, 47, 143 
Office of the General Counsel, 221 
Office of Vocational and Adult Education, 272 
Ohio, 446-447 

Ohio Department of Education, 364-366 

Ohio State Board of Education, 369-370, 373, 403 

Ohio State School Board, 233-234 

Ohio State University, 141 

Old Dominion University, 164 

Old Testament, 22 

Olsen, Clarence R., 85 

Olson, Jeff, 349 

Olson, Judy, 249 

Olson, Lynn, 235-236, 323 

Olson, Richard K., 417 

Omaha 2000, A68 

Omicinski, John, 341-342 

Omnibus Budget Bill for 1999, A150 

One- World Government, 80, 226, 248-249, A6 

On Principle, 140 

on-the-job training, A99, A106-108 

Open Classroom (Follow Through Model), 181-182 

"Open Letter to Governor Voinovich and Members of the 

General Assembly (An)," 364-366 
Open Society Foundation, 395 
Operant Behavior Modification Project, 109 
operant conditioning, 2, 48, 115, 132 

and B.F. Skinner, 199, 238-239, 295 

definition of, 186 

and Ivan Pavlov, 160 

school use of, 407 

techniques of, 80-81 

theory of, 115 
Oppenheimer, Todd, 381-383 
Opportunities Industrialization Centers, 177 
OR/ED Laboratories, 409 
Oregon, 29, 133, 413, A112 
lawsuit challenging education reforms, 369 
Oregon Education Act for the Twenty-First Century, 337, 369 
Oregonian (The), 336-338, 343-344 
Oregon State Board of Education, 134-144 
Organization for Economic Cooperation and Development of 
the Center for Educational Research and Innovation, 
35, 191 

Organization of American States, 63 

Organized Crime Control Act, 35 

Orr, James R, 344 

Orton, Samuel, A57 

Orwell, George, 28 

Osborne, Ruth R, 98 

Ostrander, Nancy, 156-158, 426-427 

Ostrander, Sheila, 156-158, 426-427 

"Our Children: The Drones" (Ann Herzer), A143-149 

"Our English Syllabus" (C.S. Lewis), 158n 

Outcome-Based Education (OBE), 119 



1-34 



and B.F. Skinner, 13, 105, 190 

and Competency-Based Education (CBE), 73 

connection to Effective Schools Research, 168 

dangers of, 339, 340 

definition of, 233 

"driving force" of, 353 

emphasis on outputs, 37, 142 

first experiment with, 3-4 

and funding of H.R. 6, 286-287 

linked to Programmed Instruction, xxvi 

and Mastery Learning, 193-194, 370 

National Conference of (Second Annual), 240-241 

opposition to, 302, 352 

and Outcomes, 193, 277-278, 313-314 

and removal of Carnegie Unit, 21 

reports of failures of, 355-356 

school violence as result of, 319 

and Terrell H. Bell, 124-125 

in Utah, 161, 215 

and William Spady, 201 
Outcome-Based Education Conference, 240-241 
Outcome-Based Instructional Management: A Sociological 

Perspective (William Spady), 181 
Outcomes, 193, 233, 277-278, 313-314 
Outcomes Accreditation, 240 

Outcomes-Driven Developmental Model (ODDM) (John Cham- 
plin), 217, 218 

Outline of Educational Psychology, Revised (Rudolph Pintner 
et al.), 1, 6n 

Out of the Night: A Biologist's View of the Future (Hermann 

Muller), 35 
Ovard, Glen, 100 

"Overcoming Resistance and Facilitating Change: The NTL 

Institute's Approach," 309 
Overhold, George E., 3-4 
Overly, Norman, 96 



P 

Pacer Systems, Inc., 344 

Pacesetters in Innovation, 56, 126, 207 

Pacesetters in Innovation: Cumulative Issue of All Projects in 

Operation as of February 1969, 84 
Pacific and Manhattan institutes, 202 
Packard, Vance, A146 
Packer, Arnold, 266-268, A46 
Paidea Proposal (Mortimer Adler), 281 
Paideia Proposal, 226 
Palermini, Anthony, 338 
Paley, William, 12 

"Panel: Make Education Career-Focused," 402 
Papert, Seymour, 251, 382 

"Paradigm Change: More Magic than Logic" (John C. Hillary), 



277-278 
Parent Action, 441 

"Parental Involvement In Education" (James S. Coleman), 
300 

parent education programs, 433-434 
parenting, 113 

"Parent Report Cards," 433-434 

Parents as Teachers (PAT), 301-302, 417, 448 

"Parents Fear 'Big Brother' Aspect of New Concept" (Monica 

Lanza), 125-126 
"Parents Turn to Tutors: Rebellion against Whole Language" 

(Rosalind Rossi, Sharon Cotliar), 366 
"Parents Who Care," 209 
Parker, Alan, 299 
Parker, Kathleen, 409-410 
Parkyn, George W, 98 
Participatory Democracy, 85, 111 

Partners for Quality Learning, 313-314. See also Mastery 

Learning 
PARTNERSHIP, 189 

Partnership of Kentucky School Reform, 333 
Partnerships in Character Education Pilot Projects Program, 
421 

"Partners in a Global Economy Working Group," 411-412 

Pascarelli, Joseph T, 125-126 

Pasch, Marvin, 220 

Passow, Harry, 197 

Paton, William, 33 

Patrick Henry College, 437-438 

Patterson, Chris, 383-385 

Pavlov, Ivan, 3, 13, 75 

and behavioral psychology, 118, A58-60 

and classical conditioning, A123 

and operant conditioning, 2 

and Soviet psychiatry, 49 

theories of, 50, 58, 99 
"Payment for Results," 4 
Pease, Marilyn, 395-396 
Peavey, Melia, 344 
Peavey Electronics Corporation, 344 
Peccei, Aurelio, A169 

Pedagogy of the Oppressed (Paulo Freire), 237 
Pederson, Barbara, 339 
Pedamorphosis, Inc., 152 
Pennington, Hilary C, 327, A96 
Pennsylvania, 133, 144, 399 

Pennsylvania's Contemporary Life Competencies, 134 

Pennsylvania's Ten Quality Goals, A18-22 

Pennsylvania Educational Quality Assessment, 348-349, 393 

Pennsylvania State Board of Education, A17-22 

Pennsylvania State College, 23 

People's Republic of Bulgaria, 147 

People's Republic of China, 296-297, 338-339, A47 

People's Republic of Hungary, 147 

People's Republic of Poland, 147 



Index 



1-35 



"People Control Blueprint" (Carol Denton), 109 
People for the American Way (PAW), 349-350 
People Shapers (The) (Vance Packard), A146 
People Weekly, 29 
Pepperdine University, 274 
Perelman, Lewis, 139, 179, 303, A49-50 
Perestroika, 251 
Perfetti, Charles A., 417 

Performance Accountability System for School Administrators 

(A) (Terrell H. Bell), 124-125, A35-39 
Performance-Based Education (PBE), 119 
performance-Based systems, 94, 105, 159 
Performance-Based Teacher Education (PBTE), 214, A32-34 
Performance-Based Teacher Education: What Is the State of the 

Art? (Stanley Elam), 94, 105, A32-34 
"permissive education," 2 
Perot, Ross, 227 

"Perpetuation of Our Political Institution," 44 

Perpich, Rudy, 299, 300, A42 

Personal Ethics and the Future of the World, 252 

Pestalozzi, Johann Heinrich, 2 

Pett, Joel, 92n 

Pew Charitable Trusts, 371 

Pew Partnership for Civic Change, 374 

Phelps, L. Allen, 429, 453n 

Phi Delta Kappa, 220, A32 

Phi Delta Kappa Publications, 105 

Phi Delta Kappan, 94, 139-140, 154, A42 

Philadelphia Federation of Teachers, 302 

Philadelphia Record, 31 

Philbrick, Herbert A., 49, 50 

Philip Dm: Administrator (Edwin Mandell House), 12 
Phillips Display Components, 344 
Philosophy of Mankind (The), xvi 
phonics instruction, 172, 181-182, A156 

and Beginning to Read: Thinking and Learning about Print 
(Marilyn Jager Adams), 417 

and Whole Language, A62-64, A93-94 
Physician's Responsibility as a Leader (The) (Albert Lewis 

Alesen), 49 
Piaget, Jean, A59, A63 
Picadome Elementary (Kentucky), 305 
Pictor, John, A27 
Pierce, Chester M., 113 
Pierce, Lawrence C, 136-137 
Pierleone, Robert G., 101 
Pietersen, William, 447 
Pines, Marion, A46 

"Ping Heard Round the World (The)," 104 
Pino, Edward, 100 
Pintner, Rudolph, 6n 

Place Called School (A): Prospects for the Future (John Good- 
lad), 151 
Planchon, Paul D., A82 
"Plan for Action (A)," 451n 



Plan for Evaluating the Quality of Educational Programs in 
Pennslyvania (A): Highlights of a Report from Educa- 
tional Testing Services, 69-70, A17-22 
Planned Change in Education: A Systems Approach (David 

Bushnell, Donald Rappaport), 68 
planned economy, 205, 345-346. See also school-to-work 
"Planning Is Socialism's Trademark" (Morris Zeitlin), 134 
Planning, Programming and Budgeting Systems (PPBS), xvi, 
65, 76, 84, 87-88, 142, 453n, A41-45, A152. See also 
Management by Objectives (MBO); Total Quality Man- 
agement (TQM) 
and Elementary and Secondary Act (ESEA) of 1965, 72 
in "Georgia Schools OK Tracking Systems," 407-408 
and Management by Objectives (MBO), 124-125, 168 
Mary Thompson's speech regarding, 110-111 
State Educational Records and Reports Series (NCES), 328 
in use throughout all departments of federal government, 
55, 73 
Plattner, Andy, A96 
Pluimer, Harold, 173 
Points of Light, 179 

"Policies on Missions for Educational Research and Develop- 
ment Centers," 210-213 

"Policy about Policy: Some Thoughts and Projections" (Luvern 
Cunningham), 164-167 

policy issues, 164-167 

Policy Studies Associates, 443 

Politics of Change (The) (TPOC), 200 

Polytechnical Education: A Step (Robert H. Beck), 272, 451n 

polytech system, 94, 272, 317 

Pomeroy, Wardell, 39, 48 

Pool, Bob, 279 

Pool, Ithiel deSola, 303 

Pope Pius XII, 138 

Population and Family Planning in the People's Republic of 

China, 1971, 104 
population control, 101-104, 388 
Population Crisis Committee, 104 
Porteous, David, 250-251 
Port Huron Manifesto, 111 
Portland Public Schools, 337 
Portugal, 219-220, 237 
Positive Attitude toward Learning, 124 
positive reinforcers, 186 
Powell, Ray I., 131-132 
Power, Philip H., A112 
Powers, Stephanie, 404 

Practitioner's Implementation Handbook [series]: The Outcome- 
Based Curriculum, 2nd Ed. (Charlotte Danielson), 107, 
158n, 159, 168, 264n 

prayer, 70 

Precision Learning, 81 

"Preconditioning for Acceptance of Change" (K.M. Heaton), 
199-200 

Preliminary Models of Governance for Kentucky, 167 



1-36 



Prepare Educational Planners (Operation PEP), 96 
Pre-service Teacher Education Program, 114 
President's Advisory Council on Executive Organization, 112 
President's Council on Sustainable Development, 313 
President's Commission on Higher Education, report of, 39 
President's Economic Council, 458 

President's Task Force on Private Sector Initiatives, 175-176 
Pressey, S.J., All 

Preventing Reading Difficulties in Young Children (Catherine 

Snow, M.Susan Burns, Peg Griffin), 212, 416-417 
Pribbenow, Christine Maidl, 429 
Price, Eddie, 320-321 

"Primary Education Fetish" (John Dewey), 6 

Primerica Foundation, 245 

Prince Georges County Public Schools, 440 

"Principles of Programming" (Robert Glaser), A13-16 

Principles of Teaching Based on Psychology (The) (Edward Lee 

Thorndike), 5 
Pritchard Committee, 320-321 
Pritchett, Henry S., 8 
privacy, 138, 297, A21 

"Private Acts/Public Policy: Alfred Kinsey, the American Law 
Institute and the Privatization of American Sexual 
Morality" (David Allyn), 49 

private schools, 184. See also vouchers 

privatization, of education, 202, 299-300, 305 

"Privatization or Socialization?" (Cynthia Weatherly), 305 

Procter & Gamble, 446 

Profiles in Excellence: 1 982-1 983: Secondary School Recognition 

Program: A Resource Guide, 180 
Programmed Instruction, xxvi 

programmed learning, 174. See also computer- assisted instruc- 
tion 

Programmed Learning: Evolving Principles and Industrial 
Applications (Jerome P. Lysaught), 61, All-16 

Programs that Work (National Diffusion Network), 130-131, 
158n 

Progress and Freedom Foundation, 179, 452n, A49 

First Annual Meeting, 303 
Progressive Education, 11, 22-23 

Progressive Education Association (PEA), 11, 12, 20-23, 89 

as a communist front, 14-15 
Prohibition against Federal Control of Education, Section 432, 

General Education Provisions Act (GEPA), 94-95 
Project '81, 133, 144, 154 
Project BASIC, 204-205 
Project BEST, 170-171, A37-38 

Project BEST: Basic Educational Skills through Technology, 67 
Project BEST Dissemination Design Considerations, 170-171 
Project Follow Through, 75-76, 150, 181. See also Follow 
Through 

Direct Instruction Models of, 181-182, 387, A91-93, A151 
Project for the Republican Future, 377 
Project INSTRUCT, 72, 81, 134-135, 203-204, 216-217 
Project Read, 82-83 



Project Stars (Students Taking Authentic Route to Success), 
338 

Projects to Advance Creativity in Education (PACE), 84, 96, 
126 

"Promising Theories Die Young," 223-225 
Propaganda (Edward Bernays), 12 
Prophet, Elizabeth Clare, 9 

"Proponents of Mastery Learning Defend Method after Its 

Rejection by Chicago," 227 
Protection of Pupil Rights Amendment (PPRA), 124, 210-213, 

243, 250 

and Anita Hoge/Pennsylvania case, 348-349, A21 
Protestantism, 32 

"Psychiatry of Enduring Peace and Social Progress (The)" 

(Brock Chisholm), 36, 42 
psychological examinations, of students, 200 
Psychology (John Dewey), 5-6 

Psychology (Wilbert James McKeachie, Charlotte Lackner 
Doyle), 75 

Psychology Applied to Teaching (Robert Bienter), 99-100 

"Psychology's Best Kept Secrets," A57-64 

Psychosynthesis: A Manual of Principles and Techniques 
(Roberto Assagioli), 73-74, 229, 264n 

psychotherapy, 126 

PTA (Parent-Teacher Association), 144 

Public Education Religion Study Center, 419 

"Public Service, Public Support, Public Accountability" (Ches- 
ter Finn), 184 

"Purposes of Assessment (The)," 407 

Pursuing Excellence — A Study of U.S. Twelfth Grade Mathemat- 
ics and Science Achievement in International Context: 
Initial Findings from the Third International Mathemat- 
ics and Science Study (TIMMS), xiv 

Putting Learning First: Governing and Managing the Schools 
for High Achievement, 352 

"puzzle box," 4. See also computers; Skinner's "box" 



Q 

Quality Progress, 399 
Quayle, Dan, 323, 388-389 

"Quayle Backs Church-Government Partnerships," 389 
Queens Aviation High School (New York), 330 
Quenzer, Maria, 276 

"Question of Effectiveness (A)," 419-420 
Quigley, Carroll, 12-13 



R 

"Radical Theorist Takes His Message to the World," 237 
Rahberger, Quint, 327 



Index 



1-37 



Raja Yoga, 157-158 

Randall, Ruth, 236, A42 

Rand Corporation (The), A24, A43 

Random House, 156, 197 

Rand School of Social Studies, 8 

Rappaport, Donald, 68 

Rarick, John R., 15n 

Raths, Louis, 21 

Raven, Bertram, 67 

Ravitch, Diane, 352, A128 

Rayburn, Sam, 48 

Re:Learning, 218, 332-333 

Project of, 333-334 
Rea, Stephen, 415 

Reach for the Stars: A Proposal for Education Reform in Georgia 

(Matthew J. Glavin), 285-287, 451n 
Reader's Digest (The), 248 
"Reader Rabbit" (reading program), 382 
Reading Eagle/Times (The), 310, 334 

Reading Excellence Act of 1998 (H.R. 2614), 66, 95, 236, 402, 
429 

and direct instruction, 117, 330 
passing of, by Congress, 386-388 
and phonics reading programs, 311 
and Preventing Reading Difficulties in Young Children, 
416 

relying on Skinnerian method to teach reading, xxvii 
as result of Becoming a Nation of Readers, 211-213 
results of, A126-129 

support from Right to Read Foundation, 182 

and tutoring centers, 366 
Reading/Literature Assessment (1979-1980), 177 
Reading Mastery, A93-94, A151-152 
Readings in Industrial Psychology, 23 
"Ready, READ!" (Nicholas Lemann), 435-436 
Reaffirmation of Faith in Maine's Public Schools (Margaret 

Stubbs), 354-355 
Reagan, Billy, 174 

Reagan, Ronald, as Governor of California, 76, 200, A64 
Reagan, Ronald (President), 161, 205-206 

administration of, 91, 118, 237 

and the "Industrial Policy Debate," 328 

and Terrell H. Bell, 124-125, A39, A41 

U.S. -Soviet Education Agreements, 30, 45, 229-230, A140 

wish to abolish Education Department, A76 
"Reaganomics," 205 

"Real-Life School Eliminates Books," 383 

Reason Foundation, 202 

"Recipe for Educational Disaster," 448-449 

"Recommendations for Delphi Discussion Groups," 92n 

Recommendations on Adult Education, 196 

"Red" China, 50, 149-150, 221, 398 

Redenbach, Sandi, 420 

Rediscovering the Mind of the Child (William E. Martin), 120 
Red Star over China (Edgar Snow) , 104 



Reece, Carroll, 47 

Reece Committee, 46-48, 232, 239 

Reed, Jack, 415-416 

Rees, Nina Shikraii, 428-429 

Reeves, Douglas, 420 

"Regulated Competition in the United States," 183 
Rehabilitation Commission, 384 
Reid, Ethna, 80-81, 117, 228 

and Exemplary Center for Reading Instruction (ECRI), 

A91, A152 
meeting with President Reagan, A156 
and Preventing Reading Difficulties in Young Children, 
416 

Reid, Kathleen, 80 
Reid, Shauna, 80 
Reiff, Judith, 426 

"Reign of Terror — Impressions of KERA" (Eddie Price), 
320-321 

Reinventing the Future: Global Goals for the 21st Century (Rush- 
worth Kidder), 251-252 
Reischauer, Edwin O., 83 
Reisen, M.S., 104 
Reisman, George, 274 
Reisman, Judith, 39, 53n 

Relations of Denominations to Colleges (Henry S. Pritchett), 
8 

religion, 2, 229 

Religion and Education Partnership, 438 
"Religion for a New Age (A)" (John Dunphy), 192-193 
Religion, Values, and Peak Experiences (Abraham Maslow), 
229 

Religious Heritage of America, Inc., 419 
Religious Right, 354 
Rennie, John C, 344 
Reno, Janet, 410, 434 
Rensi, Ed, 344 

"Reorganization of Government according to the Malcolm 
Baldridge Award Criteria," 92n 

Report from the State Committee on Public Education to the 
California State Board of Education — Citizens for the 
21st Century — Long-Range Considerations for California 
Elementary and Secondary Education (John Goodlad), 
88-89 

Report of the Study, Title III, ESEA (Emory Stoof), 96 
"Report on the Work toward National Standards, Assessments 

and Certificates" (Diana M. Fessler), 369-370 
Report to the President's Commission on School Finance, Issue 

#9 ."Strategies for Change," 207 
Report to the President's Commission on School Finance (School 

for the Future: Toward Quality and Equality in American 

Precollegiate Education), 106-107 
Repository for Germinal Choice, 35-36 
Republicans, 162, 205 
Republic of Finland, 147 
Republic of Greece, 147 



1-38 



Research Center for Group Dynamics, A60 
Research Committee (The), 19 

Research Committee on Recent Social Trends to Implement the 

Planned Society, 17 
"Researchers Leery of Federal Plans for Collaboration — Fear 

'Cooperative' Link a Path to 'Intervention'," 236 
Research for Better Schools, Inc., 69, 100, 127, 144, 150 
Research on Instruction Team, 172 
Resnick, Lauren, 177, 247, 330, A96, All 2 
Resolving Social Conflicts (Kurt Lewin), A62 
Reston, James, 67 
results-based education, 159 

"Results of the Use of Machines for Testing and for Drill upon 
Learning in Educational Psychology" (James Kenneth 
Little), A8 

Revised Code (The), 3-4 

"Revised Report of Population Subcommittee, Governor's 
Advisory Council on Environmental Quality" (Michi- 
gan), 101-104 

Rhode Island College, 100 

Rhodes Scholarship Fund, 12 

Rice, Ken, 401 

Rifkin, Jeremy, A167 

Right- to-Read, 72. See also Direct Instruction; Exemplary Center 

for Reading Instruction (ECRI) 
Right to Read Foundation (RRF), 182, 197, A154 
Riley, Richard, 216, 257, 298, 345, 350 
and Diana M. Fessler, 403 

and government plan to prevent school violence, 410 
as Governor of South Carolina, 393-394 
and National Issues in Education, 359 
and Religion and Education Summit, 438 
and sixth State of American Education speech, 447-448 
and Together We Can: A Guide for Crafting a Pro-family 
System of Education and Human Services, 439 

Risinger, C. Frederick, 108-109 

Rivero, Carlos, 447 

Rivlin, Alice M., 76, 92n 

"Road Map for Restructuring Schools," 270-271 

Road to Revolution [KM. Heaton), 92n 

Robinson, Phil, 224 

Roche, George, 238-239, 364 

Rochester Democrat and Chronicle, 219 

Rockefeller, David, 141, 302, A96, A112 

Rockefeller, John D., 7, 8, 9 

Rockefeller Archive Center, 49 

Rockefeller Brothers Foundation, 245 

Rockefeller endowments, 5 

Rockefeller Foundation, 19, 35, 40, 47, 152, 176 

and Center for Educational Innovation, 299 

control of education, 10, 11, 13 

and Peter C. Goldmark, Jr., 376 
Roe v. Wade, 388 
Rogers, Carl, 115, 117, A40-41 
Rogers, Laura, 301-302 



Rogers, Spence, 420 
Rogers, Tarenia, 331 

Role of Psychiatry and Law (Manfred S. Guttmacher), 40 
Role of the Computer in Future Instructional Systems, 67 
Role of the School in the Community (Howard W. Hickey, Curtis 

Van Voorhees), 85 
role-playing, 132 
Rollins, Sid, 100 
Romney, George, 176 
Roosa, Robert, 112 
Roosevelt, Edith Kermit, 82-83 
Roosevelt, Franklin (President), 12, 19 
Roosevelt High School, 337 
Root, Jane, 100 
Rosenblatt, Roger, 351-352 
Rosenthal, A.M., 390-392 
Rose v. Council for Better Education, Inc., 263 
Rossi, Rosalind, 366 
Rouse, William B., 327 
Rousseau, Jean-Jacques, 1, 2 
Rowan, Brian, 37, 161, 201, A159-166 
Rowan Gaither Lectures Series, 76 
Rowe, Lawrence, 240 
Royal Institute of International Affairs, 18 
Rozynko, Vitali, 109 
Rudd, Augustine G., A146 
Rugg, Harold, 11, 12, 21, 31, 64 
Ruopp, Faye, 396-397 
Russell, Bertrand, 44-45 
Russell, Herman J., 344 
Russell, James Earl, 4 
Russia, 10, 44, 221, 292-294 

cooperating with America educationally, 266 
implementing international education restructuring, 188 
"Russia Is the Model Country of International Bankers and 

Industrialists Administered by the United Nations 

Headquarters in Geneva, Switzerland," 10 
"Russian Teacher Reviews Work in SAD [School Attendance 

District] 53" (Brenda Seekins) , 345-346 
Russinoff, Elisabeth, 232 
Rutherford Institute, 401 
Rutter, Michael, 189 
Ruzzi, Betsy Brown, A96 
Ryan, Carson, 11 
Ryan, Charles J., 128 
Ryan, Kevin, 219-220, 264n, 312 

Center for the Advancement of Ethics and Character, 351, 

421 

Ryskind, Allan, A129 



s 

Safe and Drug Free Schools Conference, 410 



Index 



1-39 



SAFE Learning Systems, 92n, A27 
Salamon, Lester M„ 287-288, 377, A46 
"Salem-Keizer Test Scores Fall," 400 
Salser, Carl W., 98 
Salte, Andrew, 49 
Sandberg, John H., 153-154 
San Diego City Schools, 440 
Sanford, Terry, 73 

Santa Ana Unified School District, 433-434 
Santer, Jacques, 359-361 

Savannah-Chatham County Youth Futures Authority, 441 

Save the Children International, 416 

Sawhill, Isabel, A46 

Sayare, Mitchell, 344 

Sayer, George Jack, 158n 

Sayre, Wallace, 59 

Scanlon, Robert G., 68, 100, 127 

Schaeffer, Francis, xxvi, 123, 185-186, A130 

Schafer, William Donald, 242-243 

Schlafly, Phyllis, 124, 158n, A131 

Schlesinger, Arthur Jr., 13 

Schmidt, Benno C, 297-298 

Schmitt, Bernadotte, 12 

Schmitt, Clara, A62 

Schmitt, Marshall L., 57 

Scholastic Achievement Test (SAT), 216, 364 

School's Out: A Radical New Formula for the Revitalization 

of America's Educational System (Lewis J. Perelman), 

139, 179, 303, A49 
School Bell, 145-146 

school board members (elected), role of, 165, 364-366 
school choice, xxvii, 458. See also vouchers 

in Hong Kong, 380 

increasing amount of, 374-375 
School Climate Profile, 199 
School Counselor (The), 145, 203 

"School Effectiveness and Implications for Secondary School 

Improvement" (Alan Cohen), 173 
School Effectiveness Training Network (SET/Net), 238-239 
"School Exams Likely to Have Russian Origin," 334 
"School Improvement," 173 

Schooling and Technology, Vol. 3, Planning for the Future: A 
Collaborative Model, An Interpretive Report on Creative 
Partnerships in Technology — An Open Forum (Dustin 
H. Heuston), 213 
Schooling for a Global Age (James Becker), 151, 162 
Schooling in the United States (John Goodlad, M. Frances Klein, 

JerroldM. Novotney), 119-120 
School-Linked Integrated Services Study Group, 440 
School of Darkness: The Record of a Life and of a Conflict 

between Two Faiths (Bella V. Dodd), 53n 
"School Officials Upset by New State Plan," 234 
School of the Future of El Centro Familiar Office of the Family 

Service Center (Houston, Texas), 441 
"School Plan Skips over the Basics", 361-362 



"Schoolroom Shuffle: Trailing in Education for Years, Kentucky 
Tries Radical Reforms — Grades 1 through 3 Become One 
Class with No Texts, Desks, or Report Cards — Some Par- 
ents, Principals Balk" (Suzanne Alexander), 304-305 

schools 

charter, 290, 336, 352, 362-363 

climate of, 199 

essential, 344-345 

families in, 345 

inner city, 362-363 

magnet, 155, 317, 448 

model, 251 

as social rather than individualist, 6 

state takeover of, 298 
"Schools: Into the Future," 336-338 
"Schools Can Offer Health Services," 154-155 
"School Site Management" (Lawrence C. Pierce), 136-137 
"Schools Learn Lessons in Efficiency from Business," 

398-399 
"Schools of the Future," 263 
"Schools to Try New Program," 111 
"School System of the Future" (Paul Brandwein), 78 
School-to-Career. See school-to-work 
School-to-Career Academy Conference, 413-414 
school-to-work, 286, 301, 448 

criticisms of, 370 

Diana M. Fessler's opposition to, 403-405 
"Governor with Principles Would Reject School-to- Work," 
430 

improving ease of transition into work, 425 

"Leading Business Executives Create Council to Promote 

S-T-W Programs," 344 
in magnet/charter schools, 317 
in Maine, 271-272, 355 

and National Institute on Career Majors, 424-425 

polytech system, 94, 272, 317 

programs with, 338 

and Russia, 251, 345-346 

"School-to-Work Academy: A 'Model' for Chaos," 
412-413 

suggestions for implementing, 245-247, 266-268, 406 

in Texas, 383-385 

and Together We Can, 443 

in Wisconsin, 437 
"School-to-Work Academy: A 'Model' for Chaos" (Christine 

Burns), 412-413 
School-to-Work Career Inventory and Assessments, 414 
"School-to-Work Gets Poor Grade in Study" (Mark Shrug, 

Richard Western), 437 
School-to-Work Opportunities Act, 304, 428, A74, A126 

history of, 357-359 

and Learning for Life, 389-390 

in Oregon, 336-338 

passing of, by Congress, 317 
School-to-Work Revolution (The) (Lynn Olson), 271-272 



1-40 



School-to-Work Transition in the United States: The Case of the 
Missing Social Partners — A Report of the Governance 
and Finance Team of the Comparative Learning Teams 
Project (Robert W. Glover et al.), 326-327 

Schrag, Peter, A146 

Schroeder, Lynn, 156-158, 426-427 

Schultz, William, 115 

Schultze, Charles L., 83 

Schuster, Donald, 427 

Schutz, Mary, 399 

Schwartz, Judah, 382 

Schwartz, Robert, A96 

Schwarz, Gretchen, 354 

Science (magazine), A8 

Science, "metaphysical explanations," 122 

"Science and Common Sense," 122 

Science and Human Behavior (B.F. Skinner), 28, 48, 53n, 
77-78 

Science of Learning and the Art of Teaching (The) (B.F. Skin- 
ner), 60, A8 

"scientific pedagogy." See also Outcome-Based Education 

Scott, F. Eugene, 327 

Scott, Mark, 327 

Scott, William E., 21 

Sculley, John, 302, A72, A96, A112 

Search Technology, Inc., 327 

Second Annual Model Schools Conference, 330 

and High Schools That Work, 307-308 

synopsis of, 334-336 
Secretary's Commission on Achieving Necessary Skills (SCANS) 
(U.S. Labor Department), 83, 147, 286, 451n, A48 

creation of committee, 266-268 

National Skills Standards Board, 304 

and new approaches to assessment, 330 

student resumes, 294 

and Thomas Sticht, 215, A155 
Secret Records Revealed: The Men, the Money and the Methods 

Behind the New World Order (Dennis Cuddy) , 6n 
Secular Humanism, 22 

Secular Humanism and the Schools: The Issue Whose Time Has 

Come (Onalee McGraw), 21-22 
Seekins, Brenda, 345-346 
Seguin, Edouard, 8 

self-esteem education. See character education 
self-hypnosis, 132, 248 
self-revelation, 207-208 
Selleck, Tom, 351 

semantic deception, xvii, xviii, 447 

Semenov, Alexey, 250-251 

Senate Armed Services Committee, 376 

Senate Journal Resolution #214 (U.S.), 101-104 

Senate Republican Policy Committee on Illiteracy (U.S.), 

284-285 
Senese, Donald, 169-170, 191 
Senge, Peter, 310 



"Seniors' Church Attendance," 279-280 

sensitivity training, 107-108, 126, 131-132 

"Separation of School and State: Why We Cannot Sign" (Lynn 

and Sarah Leslie), 176, 452n 
Serageldin, Ismael, A51 

"Service Learning Projects Match Students with Needs in the 

Salem-Keizer Community," 346-347 
"Seven Cardinal Principles Revisited (The)," 140-141 
Seven Intelligences (Howard Gardner), 340-341 
sex education, 20, 98, 132, 145, 360-361 

and The Change Agents' Guide to Innovation in Educa- 
tion, 280 
and Mathtech, Inc., 443 
negative effects of, 203 
"Sex Education — Student Syllabus No: 216786, correlated 
with M.I. P. 180800" (Lester A. Kirkendall, Ruth F. 
Osborne), 98 

Sexual Behavior in the Human Female (Alfred C. Kinsey), 48 
Sexual Behavior in the Human Male (Alfred C. Kinsey), 28, 
39-40, 48 

Sexual Habits of American Men: A Symposium on the Kinsey 

Report (Albert Deutsch), 39 
Shalala, Donna, 439 

"Shamanistic Rituals in Effective Schools" (Brian Rowan), 201, 

264n, A159-166 
Shane, Harold, 128, 139-140 
Shanker, Albert, 81, 236, 256, 301, A130 

as President of American Federation of Teachers (AFT), 

A128 

Reach for the Stars: A Proposal for Education Reform in 
Georgia, 285 
Shannon, Thomas, 290 

Shaping Educational Policy (James Conant), 73, 210 
Shaw, Peter, 307-308 
Sheehan, Geralyn, 439 
Shepardson, Whitney, 12 
Shields, Dorothy, 177 

"Shocking Beliefs behind Educational Strategic Planning (The)" 

(Michael Jacques), 353 
"Shocking U.S. Agreements to Let Soviet and Red Chinese 

Educators Indoctrinate America's Children," 230 
Shreveport Journal (The) (Louisiana), 95-96 
Shrug, Mark, 437 

Shulman, Lee, 79-80, 235, 371, A153 
Siegelman, Jim, A146 
Siemens Corporation, 344 
Silber, John, 418 
Silber, Kenneth, A3 5 

Silicon Snake Oil: Second Thoughts on the Information Highway 

(Clifford Stoll), 382 
Simonds, Robert L., 343, 347-348, 350 
Sinclair, Robert, 100 
Sinclair, Upton, 8 
site-based management, 85 
Sitte, Margaret, 348-349 



Index 



1-41 



situation ethics, 132 

Size-more, Barbara, 362-363 

Sizer, Theodore, 24-25, 141, 218, 226, A43 

and Coalition of Essential Schools, 344-345 
Skills and Tasks for Jobs: A SCAMS Report for America 2000, 

A134 
skills standards, 304 

Skinner, B.F. (Burrhus Frederic), 3, 13, 61, 146, 217. See also 
Direct Instruction; Mastery Learning; operant condition- 
ing; Outcome-Based Education 

B.F. Skinner: The Man and His Ideas, 77-78 

behavioral theories, 122, A12-16 

Beyond Freedom and Dignity, 109, 185-186, A26 

and computers, 88, 319, 381 

and Direct Instruction, 75 

education theories, 196-197 

extent philosphies have spread, 447 

functions of government, 306 

How to Teach Animals, 80 

at Indiana University, 35 

influences on others, xxvi, 269, 303 

Man: A Course of Study (M:ACOS), 114-115 

man and environment, beliefs of, 185-186 

and Programmed Instruction, xxvi 

programmed learning, beliefs of, 99-100 

The Science of Learning and the Art of Teaching, 60, A8 

Technology of Teaching, 81-82 

and Walden Two, 28, 35, 40-42, 283, A146 
Skinner's "box" (computer), 69, 88, 319, A124-125, A128 
Skinner's Reading Program, 197 

"Skinner's Teaching Machines and Programming Concepts," 
A8 

Skinnerian methodology, 4, 69, 94 
and evolution, 223 

as model for educational accountability, 192 

and results-based education, 159 
Skocpol, Theda, 372 
Slavin, Robert, 224-225, 420, 435-436 
"Smartcards Project Forum," 411 
Smith, Eugene R., 21 
Smith, Frank, A57, A64 
Smith, George W., 146 
Smith, Marshall, A96 
Smoot, Dan, 92n 
Snow, Catherine E., 212, 417 
Snow, Edgar, 104 
Snowe, Olympia, 272 

"Social and Philosophical Implications of Behavior Modifica- 
tion (The)," 109 
"Social Contract," 2 

Socialist Federal Republic of Yugoslavia, 147 
Socialist Republic of Czechoslovakia, 147 
Socialist Republic of Rumania, 147 
socialists, 64 

(collectivist) system of, 7 



and America, 24 
party of, 23 
state of, 148 

world government of, 205 
Social Science Research Council, 18 

"Social Studies (The): A Revolution Is on — New Approach 
Is Questioning, Skeptical — Students Examine Various 
Cultures," 108-109 

Social Studies Horizons, 275 

Society for Accelerative Learning and Teaching (SALT), 427 
Society for Effective Affective Learning (SEAL), 427 
Socratic method, 67, 226, A7 
Soholt, Sylvia, A70 
Solzhenitsyn, Alexander, xiii, 339 

"Some Responses to the Literacy Problem" (Willard Daggett), 
196 

Soros, George, 395, 452n 

Source-Book for New Ways of Thinking in Education: A U.S.- 
Soviet Guide, A138 
South Carolina, 172, 291 

"South Carolina Takes to Heart Coach's Shot at 'Horrible' 

Schools," 393-394 
Southeast Asia Treaty Organization (SEATO), 66 
Southern Education Board (SEB), 9 
Southern Education Foundation, 399 
Southern Illinois University, 252 
Southern Living, 27 A 

Southern Regional Education Board (SREB), 187-188, 307 
South St. Paul Public Schools, 131-132 
Soviet Academy of Science, 30, A137, A139 
Soviet Central Committee, 241 

Soviet Challenge to America [The] (George Counts), 18-19 
Soviet Education Programs: Foundations, Curriculums, Teacher 
Preparation (William K. Medlin, Clarence B. Lindquist, 
Marshall L. Schmitt)), 57-58 
Soviet Preschool Education (Henry Chauncey), 79 
Soviets in the Classroom: America's Latest Education Fad 

(Charlotte Iserbyt), 46, 261-262, A136-142 
Soviet Union, 134, 136, 150, 161, 227-228 
patriotism of, 58 
psychiatry of, 49 
Spady, William, 125, 134, 141, 160, 183, 240 

address to ASCD High School Futures Planning Consortium 

III, 284-285 
association with Willard Daggett, 407 
Choosing Outcomes of Significance, 354 
"Competency-Based Education: A Bandwagon in Search of 

a Definition," 134-144 
debate with Michael Farris, 438 

"Ensuring the Success of All Students Today for Tomorrow's 
Changing World," 272 

Far West Laboratory [for Educational Research and Develop- 
ment], 215-217, 218 

functions of mastery learning, 182 

High Success Network, 322, 335, 343 



1-42 



and Mastery Learning, 331 

National Institute of Education (NIE), 147 

and Outcome-Based Education (OBE), 37, 181, 193, 201 

Project BEST, 171 

and Robert Simonds, 343, 347-348 
Spatz, Don, 310 
Spayd, Elizabeth, 268-269 

SPEEDE ExPress (Exchange of Permanent Records Electroni- 
cally of Students and Schools), A47, A84 
Spencer, Carl, 204 
Spencer Foundation, 152 
Sperling, Gene, 458 
Spring, Bill, A96 
Sputnik, 53 
Squires, Geoffrey, A35 
St. Louis Career Academy, 412-413 
St. Mary's University, 299 
St. Paul Pioneer Press, 422 

"Stabbed in the Back on the Fourth of July" (Dan Smoot), 67 
Stachowski, Ernest, 420 

Staff Data Handbook: Elementary, Secondary, and Early Child- 
hood (1994), 406, A81 
"Stages of Moral Development," 130-131, 421 
Stalin, Josef, 12 

Standardization of Postsecondary Education Electronic Data 

Exhcange (SPEEDE), 306 
standardized tests, 234, 402, 432-433 
standards 

national, 329 
performance, 329 
"Standards for Ohio Schools: Coming Together to Build a Future 

Where Every Child Counts," 369-370 
Standard-Times (The) (New Bedford, Massachusetts), 

395-396 

Stanford, Gene, Steps to Better Writing: A Systematic Approach 

to Expository Writing, 158 
Stanford Research Institute, 141 
Stanford University, 99, 182, 241, 441, A24 

grant from Carnegie Foundation, 235 
Stanton Elementary School, 305 
Star-Ledger (Newark, New Jersey), 427-428, 430-431 
State Capacity Building, 171 

State Department Publication 72 77: The United States Program 
for General and Complete Disarmament in a Peaceful 
World, 65 

"State Education Chief Pushes Revolutionary Plan for the 

Nation," 242-243 
State Health Education Program (SHEP), 175 
"State of Education Criticized — Nonprofit Organization Hired at 

Former Governor's Urging Pinpoints Weaknesses within 

Ohio's Academic System," 445-446 
State of Kentucky's Education Reform Commission, 166-167 
"State of Pre-college Education in Mathematics and Science," 

182-183 

"State Ranking of Schools Sure to Rankle: Many Area Dis- 



tricts Are Scoring Very Poorly in Statewide Evaluation," 
446-447 
state regulation of schools, 146 

"State Role in Global Education Resource Guide under Review," 

276 
states, list of 

involved in character education, 351 

Southern, 307 

Statesman Journal (The) (Oregon), 346-347, 400, 408-409 
State University of New York, 351 

"Status of Internationalization of Education" (Charlotte Iser- 

byt), A126-131 
Stefansen, Jim, 116 
Steiger, Fritz, 299 
Steinberg, Jacques, 280 
Steiner, Jesse F., 24 
Steiner, Rudolph, 9 
Stenehjem, Robert (Bob), 348-349 
Step by Step program, 394-395 
Stephen Rea v. Ohio Department of Education, 415 
Steps to Better Writing: A Systematic Approach to Expository 

Writing (Gene Stanford), 158 
Stern, David, 429 
Stevens, William, 108-109 
Stewart, Donald, A46 

Sticht, Thomas B., 146-147, 215-216, A155 

and career passports, 268 

and Mastery Learning, 331 
Stimson, Henry, 12 
St. Louis Globe-Democrat, 234 
Sr. Louis Metro, 415-416 
Stall, Clifford, 382 

Story of the Eight-Year Study (The) (Wilford M. Aikin), 20-21 
"Strategic Learning Conference: A Tool Kit to Power Business 

Performace (1999)," 447 
Strategic Learning Model, 447 
strategic planning, 353 

"Strategic Planning and Furthering Excellence in Millard Public 

Schools" (Nebraska), 194 
Strohmeyer, Jeremy, 29 
Structured Learning, 81 
Strum, Jerome, 383 
Stubbs, Margaret, 354-355 

Student Data Handbook: Elementary, Secondary, and Early 
Childhood (1994), 406, A81 

students, xiii-xiv, 281-284 

Students for a Democratic Society, 111 

Students Recycling Used Technology (STRUT), 408-409 

Student Team Learning, 226, 233 

Study of Schooling (The) (1973) (John Goodlad), 397 

Study of Schooling in the United States (A) (1979) (John Good- 
lad), 119, 151-152 

Stall Bill, (AB 293), 76, 107-108 

Stupski, Lawrence J., 344 

Subversive Influence in the Educational Process: Hearings before 



Index 



1-43 



the Subcommittee to Investigate the Administration of 
the Internal Security Act and Other Internal Security 
Laws of the Committee on the Judiciary: United States 
Senate, 45 

"Success Eludes 10-Year-Old Agency," 118, 192 
Success for All, 435-436 

"Success with Coalition Reforms Seen Limited in Some 

Schools" (Debra Viadero), 326 
"Suggestions for Holding a Local Assembly on National 

Goals," 60 

Suggestive Accelerative Learning and Teaching (SALT), 340 
Suggestology, 156-158, 340 
Summit Christian Academy, 222-223 

Superlearning (Sheila Ostrander, Lynn Schroeder, Nancy 
Ostrander), 156-158 

Superlearning 2000 (Sheila Ostrander, Lynn Schroeder, Nancy 
Ostrander), 426-427 

"Survey of Former Pasco, Washington Teachers Gives Out- 
comes-Based Education Insights," 356 

"Susan Kovalik's Integrated Thematic Instruction," 339-341 

"Suspicions about the Statewide Tests" (Jeff Jacoby), 
392-393 

Sustainable America: A New Consensus for Prosperity, Opportu- 
nity and Healthy Environment for the Future, 313 
Sutter Health Systems, 327 
Sutton, GenYvette, 322-323 
Suyin, Han, 104 
Svengalis, Cordell, 275-277 
Swarthmore College, 12 
Sweet, Robert, 182, A154 
Swift, Josephine, 109 
Swift, Kenneth, 109 
Sylvan Learning Centers, 331, 366 
Sylwester, Robert, 341 
Syracuse University, A24 

Systematic Approach for Effectiveness (SAFE), 217, A27-28 
"Systematic Thinking for Social Action," 76 
Systems Analysis for Educational Change: The Republic of 
Korea, A30 



T 

Taba, Hilda, 21, 115, 117, 208 

Tactics for Thinking (Robert Marzano), 248-249, 261, 264n, 
312-313, 419 

"Tactics for Thinking Attacked in Washington, Indiana," 

248-249 
Tactics Trainer's Manual, 249 
Tagaart, Robert, 273 

Taking Religion Seriously (Charles Haynes), 418-419 
"Taking Technical Assistance on the Road," 394-395 
Talking with Your Child about a Troubled World (Lynne 
Dumas), A174 



"Tama Story (The): Educational Tyranny in Iowa," 254 
Tannebaum, Abe, 197 
Taoism, 22 

Target Teaching Approach (Madeline Hunter), 226 

Task Force Report on Effective Schooling to the Honorable Jay 

S. Hammond (Alaska), 173 
Taubman, Al, 344 
Tavistock Institute, 411-412 
tax-exempt foundations, 176-179, 232, 372 
"taxonomy," A113-121 

Taxonomy of Educational Objectives: The Classification of 
Educational Goals, Handbook II, Affective Domain 
(Benjamin Bloom, David Krathwohl, Bertram Massie), 
29, 52-53, 65, 69, 187, A22, A89, A113 

Taylor, Frederick Winslow, 435-436 

Taylor, Ray, 409 

Taylor, Robert, A35 

Teacher's Handbook (The) (American Institute for Character 
Education), 229 

teacher accountability, 4 

teacher behavior modification, 114-117 

Teacher Development Pre-Service Model of Excellence Initia- 
tive, 425 

teacher education, 293 

for Carnegie-Mellon University, 153 

Teacher Education Conference (22nd Annual), 88 

Teacher Preparation Experienced Systematically, 90 

"Teachers Are Recycled," 107-108 

Teachers' College. See Columbia Teachers' College 

"Teachers' Group to Develop New Curriculum" (Karel Hol- 
loway), 222-223 

"Teachers Influence Studentss Values through Writing Assign- 
ments," 223 

"Teachers Taught to Be Agents of Social Change'," 126 

Teacher Training Manual, A153 

"Teaching about Religion," 419 

Teaching as a Moral Craft (Alan Tom), 214-215 

"teaching machines," A7-8, A12-16 

"Teaching Machines and Human Beings" (John W. Blyth), 
A9 

Teaching Machines and Programmed Learning: A Source Book 

(A.A. Lumsdaine, Robert Glaser), 60, A7-10, A13 
Teaching Models, 233 
"Teaching Politics," 370-371 
teach to the test, 4, 159, 326, 396-397 
Teach Your Child to Read in 100 Easy Lessons, A151 
"techademics," 308, 449 

Technical and Professional Skills Standards, A105 
Technical Assistance Network, 443 
technology, 128, 138, 187, 213 

"Children, Computers, and Education," 250-251 

in classrooms, 419-420 

Special Committee on Instructional Technology Report 
(NEA), 174 
Technology of Teaching (B.F. Skinner), 81-82 



1-44 



Teheran conference, 12 
Tempus, Kent, 253 
Ten Commandments, 21-22 
Tennessee, 144 

Tennessee v. John Thomas Scopes (Scopes Monkey Trial), 13 
Terman, Lewis M, A61 

"Test Board Tackles Secrecy Stigma" (Jeff Olson), 349 
tests, 159, 432-433, A154, A164-165 
Texas, 124, 144 

Texas Alternative Document (TAD), 417 
Texas Association for Supervision and Curriculum Develop- 
ment, 227 

Texas Christian Alert Network (TCAN), 383-385 

Texas Education Agency, 105, 178, 384 

Texas Objectives for Total Academic Learning (TOTAL), 227 

Texas Study of Adult Functional Competency, 183 

Texas Workforce Commission, 384 

T-Group Training, 132 

Thatcher, Margaret, 358 

That Hideous Strength (C.S. Lewis), 37 

T.H.E. Journal, 250-251 

Thelen, Herbert, 114 

"Theobold's Eight Driving Forces," 272 

Theosophical Publishing House, 9 

"There Has Been a Conspiracy of Silence about Teaching: B.F. 
Skinner Argues that Pedagogy Is Key to School Reforms" 
(Susan Walton), 196-197 

"Thief of American Individualism (The) : Total Quality Manage- 
ment and School-to-Work" (Tim Clem), A132-135 

Third Wave (The) (Alvin Toffler), 180 

Thirty Schools Tell Their Story: Each School Writes of Its Par- 
ticipation in the Eight-Year Study, 21 
"33 Religious Groups Join Riley in Seeking Greater Family Role 

in Schools" (Robert C. Johnston), 345 
Thomas, Augustus, 13-14 
Thomas, Clarence, 15n, 243 
Thomas, Donald, 188, 189, 256-257, 394, 451n 
"Education 90: A Framework for the Future," 275 
The Empowered Educational System for the 21st Century — 
Establishing Competitiveness, Productivity, Accountabil- 
ity and Equity in South Carolina Education, 306-307 
visit to Russia, 290-291 
Thomas B. Fordham Foundation, 385 

Thomas Jefferson Research Center (TJRC), 228-229, 375, 
389 

Thom McAn Shoe Company, 344 

Thompson, Mary, 110-111 

Thompson, Tommy, 300 

Thompson, William Boyce, 10 

Thoreau, Henry David, 41 

Thorndike, Edward Lee, 5, 13, 14-15, 75, 89 

Thousand Days (A) (Arthur Schlesinger Jr.), 13 

"Three Kinds of Knowledge," 224 

Tiananmen Square, 262, 391, A141 

Tibetan Book Fund, 51 



Time (magazine), 32, 104, 299 

Time for Results: Governors' Report on Education, 239 

"Time to Overhaul the Elementary and Secondary Act of 1965" 

(Nina Shikraii Rees), 428-429 
Time-Warner, 297-298 
"To B.F. Skinner and James G. Holland," 109 
Toch, Thomas, 73, 209-210 

Today's Education (National Education Association), 81, 92n, 

140-141, 172, 182 
Toffler, Alvin, 128-129, 179, 180, 303, A49-50 
Toffler, Heidi, 303 

Together We Can: A Guide for Crafting a Pro-family System of 

Education and Human Services, 439, 447-449 
Toledo, Alejandro, 99 

Tomorrow's Educator: An Alternative to Today's School Person 

(Ron Barnes), 181 
"Tomorrow's Technology in Today's Schools" (Dexter Fletcher), 

174 

"To OBE or Not to OBE?" (Marjorie Ledell), 322 
Torcaso v. Watkins, 22 
Torkelson, Gerald, A35 

To Secure Our Future: The Federal Role in Education (NCEE), 
A73 

"Total Educational Governance System for Lifetime Learning, 
Structural Features and Highlights," 167 

"Totalitarian Data-Gathering System Prepared by U.S. Depart- 
ment of Education" (Samuel Blumenfeld), A81-89 

"TOTAL Presentation Set for Educators," 227 

Total Quality Education (TQE), 283 

Total Quality for Schools: A Suggestion for American Education 

(Joseph C. Fields), 305-306 
Total Quality Management (TQM), xvi, 88, 119, 124-125, 451n, 
A41. See also Management by Objectives (MBO); Plan- 
ning, Programming and Budgeting System (PPBS) 
based on operant conditioning, 269 
and ISO 9000, 399 
need to denounce, 457 
and W. Edwards Deming, 283 
Toward a New Sustainable Society: An Economic, Social, and 
Environmental Agenda for Our Children's Future (James 
Garbarino), A167-176 
Toward a Soviet America (William Z. Foster), 17, 19 
Towards a Conceptual Model of Life-Long Education, 98 
Toward World Understanding, 44 

Transatlantic Co-operation in International Education: Projects 
of the Handswerskammer Koblenz with Partners in the 
United States and in the European Union (Karl-Jurgen 
Wilbert, Bernard Eckgold), xx 

"Transforming American Education: Reducing the Risk to the 
Nation," 233-234 

transpersonal psychology, 74 

Traverse City Record-Eagle, 284-285 

Tremaine, M. Maxine, 10 

Tri-Cities Foundation for Academic Excellence (TFAE), 355 
Tri-City Herald (The), 401 



Index 



1-45 



Tri-County Course Goal Project, 107, 167-168, 238-239 
Trilateral Commission, 232 

Triumphant Democracy or Fifty Year's March of the Republic, 
358 

Tri-University Project, 90 

Trohanis, Pat, 394-395 

Trotman, Alan, 344 

Trotter, Andrew, 419-420 

Truman, Harry (President), 28, 38, A129 

"Truth about How We All Have Been Had (The)" (Charlotte 

Iserbyt), A150-156 
"Truth behind Outcome-Based Education (The)" (GenYvette 

Sutton), 322-323, 451n 
"Trying to Catch Up on Their Reading: Tutors Find What 

Students Miss," 331 
Tuchman, Barbara, xx 
Tucker, Marc, 83, 161, 218 

and Human Resources Development System, 279, A71-80 

and letter to Hillary Rodhman Clinton, 452n 

and "National Alliance for Restructuring Education: 
Schools — and Systems — for the 21st Century," A52-56 
and National Center on Education and the Economy (NCEE), 
271, 327, 355, A112 

and new approaches to assessment, 330 

and school-to-work, 411-412 

socialist workforce agenda, 302 
Tuition Tax Credits: A Responsible Appraisal (Barbara M. 

Morris), 184 
Turkle, Sherry, 382 
"21st Century Report Card," 284-285 
2020 Newsletter (The) (IMTEC), 260-261 
Tyler, Ralph, 21, 72, 141, 152, 169 
Basic Principles of Curriculum and Instruction, 43 

and Center for Advanced Study in the Behavioral Sciences, 
69, A22 

Crucial Issues in Testing, A48 

"father of education assessment," 89 

"Investing in Better Schools," 83 

"Purposes of Assessment (The)," 407 
Tyler Morning Telegraph (Texas), 227 
Tyson, Harriet, 400-401 



u 

Ulam, Adam, A137 
Umans, Shelly, 110 

"Understanding Outcome-Based Education" (Jerry L. Had- 
dock), 367-368 

"Unfolding of an International Partnership: A Story of Russia 

and the U.S. (The)" (Beau Fly Jones), 309 
uniforms, for public schools, 334 
Union Carbide Corporation, 189 

Union Now: The Proposal for Inter-Democracy — Federal Union 



(Clarence Streit), 357 
Union of Soviet Socialist Republics, 147 
United Nations Convention on the Rights of the Child, 

433-434 

United Nations, 65-66, 97, 191, 195, A126 

United Nations' University for Peace, 283 

"United Nations and Alternative Formulations — the Hard Road 

to World Order (The)," 80 
United Nations Charter, 34 
United Nations Children's Fund (UNICEF), 270 
United Nations Conference on International Organization, 

12, 27, 38 

United Nations Development Program (UNDP), 270 
United Nations Educational, Scientific, and Cultural Organiza- 
tion (UNESCO), 39, 62, 156, 171, 191 

agenda in the United States, 316 

and conference in Maine, 409 

Convention against Discrimination, 57 

coordination of school-to-work programs in schools, xix 

education curriculum of, 66 

Foundations of Lifelong Education, 141-142 

International Bureau of Education, 13, 162 

International Standard Classification of Education (ISCED- 
COM.75/WS/27), 138-139 

and lifelong learning, 98, 183, 352-353 

and mastery learning, 198, A127-128, A156 

and Reach for the Stars: A Proposal for Education Reform 
in Georgia, 287 

role in transformation of education, 346 

and Ronald G. Havelock, A66 

work with Global Alliance for Transforming Education 
(GATE), 283 

and World Conference on Education, 269-270, 283 
United Nations Peace Force, 66 
United Parcel Service, 333 

United States Arms Control and Disarmament Agency, 65-66 
United States Coalition for Education for All (USCEFA), 

289-290, 308-309 
U.S. Coalition for Education for All: A History, 321 
United States Conference of Mayors, 77 
United States Freedom of Information Act, 415 
United States Information Agency (USIA), 11, 231, 359-361, 

A140 

United States-Soviet Agreements. See U.S. -Soviet Education 

Agreements 
United States Supreme Court, 95 

United States-Ukraine Awards for Excellence in Teaching, 
419 

United Way of America, 175-176, 202, 376 
University of Alabama, 351 
University of Auckland (New Zealand), 99 
University of California, 205, 227, A82, A139 

at Berkeley, 76, 429 

at Los Angeles, 60, 151, 152, 417 
University of Chicago, 5, 141, 165 



1-46 



University of Georgia, 88, 193, 198, 425 
University of Havana, 136 
University of Illinois, 76, 149, A24 
University of London, 99 
University of Maine, 431 

University of Maryland (Baltimore County), 251 
University of Maryland (College Park), 371, 376 
University of Massachusetts, 100, 101 
University of Michigan, xvi, 75, A60, A66 
University of Minnesota, 311 
University of North Carolina, 394-395, 418 
University of Notre Dame, 141 
University of Oregon, 212, 417 
University of Otago (New Zealand), 98 
University of Pennsylvania, 223, 417 

National Center on Adult Literacy, 290 
University of Pittsburgh, 3, 60, 417, A12 

Learning Research and Development Center, 68, 330, 382, 
417, A112 

University of Rochester (New York), 101 
University of Texas, xx, 133, 191, 417, A112 
University of Victoria (Canada), 382 
University of Virginia, 254 
University of Washington, 90 
University of Wisconsin, 327 

Center on Education and Work, 429-430 

at Madison, 429-430 

at Milwaukee, 437 
UNUM Corporation, 344 
Urban, Wayne J., 3-4 
Urbanski, Adam, A112 

"U.S. and Soviets to Share Insights on Computers" (Fred M. 

Hechinger), 230 
"U.S. Announced Exchange Programs," 419 
USA Today, 398, 422-423 

U.S. Coalition for Education for All: A History, 321 
"USIAs Grants Go to Schools in NAFTA Nations," 315-316 
"U.S. Plan to 'Take Over' Grade Schools Intimated" (John 

Steinbacher), 90-91 
U.S. -Soviet Education Agreements, 11, 30, 53, 104, 241 

activities associated with, 264n, 309 

details of, 261-262 

renewal of, 258 

results of, 290, 419 

and Robert Morris, 45-46 

signing of, 229-230 
U.S. -Soviet Textbook Study Project, A139 
Utah, 161, 174, 201, 316 
Utah Education Association, 125, A41 
Utah Grant, 215-217, 218 

"Utah Perspective on the National Education Goals (A) " (David 

E. Nelson), 316 
Utah School Boards Association, 422-423 
Utah State Office of Education, 316, 421 



V 

values 

clarification of, 132 

education, school-based, 88, 258-260, 312 

teaching of, 184-185 

writing, use of to clarify, 222-223 
Vanderbilt University, 202, 298, 377 
Van Voorhees, Curtis, 85 
Veatch, Jeannette, 81 
Venn, Grant, 128-130 
Verbal Behavior (B.F. Skinner), A57 
Verity, C. William, 176 
Veterans Education, 384 
Viadero, Debra, 326 
Victor-Bostrom Fund, 104 

"Viewing Reform Partnerships as Big Brother's Intrusion" 

(Charlotte Iserbyt), 338-339 
Villas, Paul, 361-362 
violence, 423 

plans for prevention, 410, 448, 453n 

in schools, 29, 275, 406 
Virginia, 144, 316 

Vision of the Future (A) (Mortimer Adler), 280 
Visions, A47, A49 
Vitality, 370 

vocabulary, as indicator of intelligence, 105-106 

vocational education, A77-78 

"Vocational Project Lauded," 408-409 

Vogeler, Robert, 49, 50 

Voinovich, George, 446 

Volkman, Barbara, 339-341 

VOLUNTEER, 202 

Vonnegut, Kurt, 66 

Vorontsov, Albert, 279 

vouchers, 299, A50 

Vygotsky, Lev S., 324-326, A59-63 



w 

Wagner, Daniel, 290 

Wagner, Robert F, A35, A112 

Wagner, Timm, 344 

Walberg, Herbert J., 169 

Walbridge Caring Communities Program, 441 

Walden Two (B.F. Skinner), 28, 35, 40-42, 283, A146 

Walker, Charles R., 334 

Wall Street Journal (The), 298 

"Acclaimed Reforms of U.S. Education Are Popular but 
Unproven — Ted Sizer's Methods Stress Reasoning over 
Rote: Gains Aren't Measurable — Ambiguity and Faculty 
Battles," 344-345 



Index 



1-47 



"And You Thought American Schools Were Bad," 244, 
359 

"In Littleton, Colorado, Voters Expel Education Faddists," 
318 

"Schoolroom Shuffle: Trailing in Education for Years, 
Kentucky Tries Radical Reforms — Grades 1 through 
3 Become One Class with No Texts, Desks, or Report 
Cards — Some Parents, Prinicpals Balk," 304-305 

Walsh, Kevin, 351 

Walter D. Cocking Lecture, 164 

Walton, Susan, 196-197 

Wanderer (The), 82 

Ward, Frederick Champion, 128 

Ward, Jack, A27 

Warder, Michael, A140-141 

"Ware Students Are Drawn to Swampy Experiment: Magnet 
School Makes Okefenokee Its Lab," 317 

Warner, Carolyn, 192 

War on Poverty, 197 

Washington, D.C., 172, 144 

Washington Post (The), 13, 146, 205, 268, A155 

"China Orders Manual Labor for Students: Beijing Moves 

Again to Control Citizenry," 262 
"Competency Tests Set in 26 Schools," 215-216 
"Industrial Policy Urged for GOP," 328, A51 
"Trying to Catch Up on Their Reading: Tutors Find What 

Students Miss," 331 
"Tying Professional Pay to Productivity," 268-269 

Washington Times (The), 216, 262, 315-316, A137 
"Ahem, about those 100,000 new cops...", 444-445 
"Character Education Catching on at Schools — Respect, 

Responsibility Emphasized," 421-422 
"Classroom Brain- Watchers?", 409-410 
"Congress to Expand Education Savings," 401-402 
interview with Michael Farris, 437-438 
"New Tack Taken on Religion in Schools: Group Seeks End 

to Secular Bias," 418-419 
"Panel: Make Education Career-Focused," 402 
"Real-Life School Eliminates Books," 383 
"Why the Education Department Must Go," 350 

Watson, Goodwin, 21 

Watson, John B., 99-100, A58, A123-125 

Watson, Thomas J., 35 

Wayne State University, 382 

Wealth and Poverty (George Gilder), 303 

Weatherly, Cynthia, 305, 317-318, 452n, A44-51 

Webber Energy Fuels, 431 

"Week in the Subway as Cultural Exchange" (Jacques Stein- 
berg), 280 

Weight of Glory and Other Addresses (The), 158n 
Weil, Marsha, 114-117, 208 
Weinberger, Caspar, 205, 328, A51 
Weisberg, Alan, 327 

Welcome to the Monkey House (Kurt Vonnegut) , 66 
Welfare Reform Act, A109 



Wellstone, Paul, 415-416 

We Must Take Charge, 298 

Wertsch, James, A62 

Wesleyan University, 4 

Western, Richard, 437 

Western Behavioral Sciences Institute, 111 

Western Reserve University, 4 

Westinghouse Learning Corp., 156 

Weyrich, Paul, 338 

What Is Religion and Other Student Questions (Henry S. 

Pritchett), 8 
"What Is the Market Model?", 291-292 
"What Other Communities Are Doing, National Educational 

Goal #1," 300 
What Work Requires of Schools (SCANS), 450n 
What Works in Education, A152 

"When Is Assessment Really Assessment?" (Cynthia Weath- 
erly), 452n, A44-51 

"When Johnny Takes the Test: How Your Child Is Identified 
and Tracked to the National Data Bank — and Beyond" 
(Melanie Fields, Anita Hoge, Sarah Leslie), 451n 

While You Slept: Our Tragedy in Asia and Who Made It (John 
Flynn), 44 

White, William S., 176 

White House Conference on Education (1955), 52, 59 
White House Conference on the Industrial World, 112 
White House Workshop on Choice in Education (1989), 
299-300 

"White Paper" (U.S. Dept. of Education), 298 
Whitla, Janet, 290 
Whitman, Christine, 430-431 
Whitmore, Kay R., A112 
Whittle, Chris, 297-298 

"Who'll Teach Kids Right from Wrong— The Character Edu- 
cation Movement Thinks the Answer Is the Schools," 
351-352 

"Who's In, Who's Out," 99 

Who's Who in America, 142 

"whole child," 2 

Whole language, 270, 325-326, A93-94 

versus Direct Instruction, A129-130 

versus phonics instruction, A62 

set up to fail, 387 
Whole Language/OBE Fraud (The) (Samuel Blumenfeld), 6, 
A57-64 

"Why Not Adopt China's Population Goals?", 104 
"Why the Education Department Must Go" (Gordon S. Jones), 
350 

Why Things Are the Way They Are (Erica Carle), 53n 

"Why We Went for Micros and What Our Community Had to 

Say about It" (Billy Reagan), 174 
"Widely Mixed Test Results Leave Some in Kentucky Puzzled" 

(Lonnie Harp), 316 
Wiggins, Grant, 344-345 
Wilbert, Karl-Jurgen, xx 



1-48 



Wilhelm, Georg, xvii 

Wilkinson, Bruce, 367-368 

Will-Burt Company, 344 

William Alanson White Memorial Lectures, 36 

Williams, Brian, 447 

Williams, Ken, 414 

Williamsburg Charter, 377, 419 

"Will Republicans Betray America by Voting for Marc Tucker's 
Human Resources Development System: H.R. 1617 and 
S. 143?" (Samuel Blumenfeld), A72-80 

Wilson, Doug, 437 

Wilson, Iva, 344 

Wilson, Woodrow (President), 12, 47 

Winger, Jeri J., 176 

Winslow, C.E.A., 42 

Wirtz, Willard, 128, 177-179, 244 

Wisconsin Policy Research Institute, 437 

Wolf, Richard M., A48 

Woman's Opportunities in Christian Industry and Business (A) 

(Henry S. Pritchett), 8 
Wood, John T., 43 
Wood, Regna Lee, 307 
Woodson, Robert, Sr., 377 
Woolfolk, Peter, 404 

Workforce Development Act of 1995 (S. 143), 370, A72-75 
Workforce Development Partnership, A79 
Workforce Investment Act (H.R. 1385), 415-416 
"Workforce Investment Act Puts America on Road to Fascism — 
Hillary's Global Village and the New World Order Are 
Officially Instituted by Congress" (Jim Day), 415 
workforce training, 190, 387, 431, 438. See also school-to- 
work 

Working Brain (The) (Alexandr Luria), 248 

Working Conference on Information Technology in Education 

Management (ITEM), 409 
"Work World 2000: An International Strategy for School-to- 

Work Transitions," 360 
World Affairs Council of Philadelphia (The), 132 
World Ahead (The): A Look at Business in 1990, 112 
World Bank, 219-220, 269, 390, A51, A74 

and International Loan Agreement guidelines, 400 
"World Class Education," 275 

"World Class Schools and the Social Studies" (Cordell Sven- 

galis), 275-277 
World Conference on Education for All, 269-270, 283, 289 
World Core Curriculum (Robert Muller), 25, 54n, 260 
World Council of Churches, 33, 205 
World Council on Gifted and Talented Children, 152-153 
"World Declaration on Education for All," 269-270 
World Education, Inc., 290 
World Education Association, 18 
World Education for All Forum Secretariat, 450n 
World Federation of Education Associations (WFEA), 13-14 
World Future Society, A24 
World Health Organization, xix, 36, 42 



World Institute for Computer- Assisted Teaching (WICAT), 
213 

World of Mankind, xvi 
World Survey of Education, 99 
World War I, 47 
World War II, 28, 35, 143, 151 

program for "just and durable" peace after, 32-33 
Wormser, Renee A., 48 
Wright, Linus, 299 

WT. Grant Foundation's Commission on Work, Family, and 

Citizenship, 250 
Wu, Hei-tak, 99 

Wundt, Wilhelm, 1, 2, 4, 89, 121 
Wyman, Thomas H., 176 
Wyoming, 128 



X 

Xerox Corporation, 255, 269 



Y 

Yale Bush Center, 443 

Yale University, 42, 46, A60-61 

Yeany, Russell, 425 

year-round schools, 85, 155, 443, 448 

Yivisaker, Paul, 303 

yoga, 248, 340 

Young Communist League, 31, 50 
Young Parents Alert, 14-15 

"Young People Are Getting Dumber" (David Hawkins), 
105-106 

Youth Community Service Program, 347 
Ysseldyke, James E., 311 



z 

Zanotti, David, 252 

Zeitlin, Morris, 134 

Zeyden, Louis, A27 

Zienau, Nick, 292-294, 312-313 

Zienau Consulting, 313 

Zorinsky, Edward, 200 



  
! https://archive.org/stream/pdfy-mWiSqrdsc0v5YeX2/DUMBING%20DOWN%20OF%20AMERICA%20DDoA.sml_djvu.txt 








! Digital Revolution
!! 
!! https://en.wikipedia.org/wiki/Digital_Revolution

From Wikipedia, the free encyclopedia

"Third Industrial Revolution" redirects here. For the book by Jeremy Rifkin, see The Third Industrial Revolution.
A visualization of the various routes through a portion of the Internet (created via The Opte Project).
History of technology
By technological eras
By historical regions
By type of technology
Technology timelines
Article indices

    vte

The Digital Revolution (also known as the Third Industrial Revolution) is the shift from mechanical and analogue electronic technology to digital electronics which began in the latter half of the 20th century, with the adoption and proliferation of digital computers and digital record-keeping, that continues to the present day.[1] Implicitly, the term also refers to the sweeping changes brought about by digital computing and communication technologies during this period. From analogous to the Agricultural Revolution and Industrial Revolution, the Digital Revolution marked the beginning of the Information Age.[2]

Central to this revolution is the mass production and widespread use of digital logic, MOSFETs (MOS transistors), integrated circuit (IC) chips, and their derived technologies, including computers, microprocessors, digital cellular phones, and the Internet.[3] These technological innovations have transformed traditional production and business techniques.[4]
Contents

    1 History
        1.1 Brief history
        1.2 1947–1969: Origins
        1.3 1969–1989: Invention of the Internet, rise of home computers
        1.4 1989–2005: Invention of the World Wide Web, mainstreaming of the Internet, Web 1.0
        1.5 2005–present: Web 2.0, social media, smartphones
    2 Rise in digital technology use of computers, 1980–2020
        2.1 1990
        2.2 2000
        2.3 2010
        2.4 2020
    3 Converted technologies
    4 Technological basis
    5 Socio-economic impact
        5.1 Information sharing and privacy
        5.2 Copyright and trademark issues
    6 Concerns
    7 See also
    8 References
    9 External links

History
Rings of time showing some important dates in Digital Revolution from 1968 to 2017
Brief history

The underlying technology was invented in the later quarter of the 19th century, including Babbage's Analytical Engine and the telegraph. Digital communication became economical for widespread adoption after the invention of the personal computer. Claude Shannon, a Bell Labs mathematician, is credited for having laid out the foundations of digitalization in his pioneering 1948 article, A Mathematical Theory of Communication.[5] The digital revolution converted technology from analog format to digital format. By doing this, it became possible to make copies that were identical to the original. In digital communications, for example, repeating hardware was able to amplify the digital signal and pass it on with no loss of information in the signal. Of equal importance to the revolution was the ability to easily move the digital information between media, and to access or distribute it remotely.

The turning point of the revolution was the change from analogue to digitally recorded music.[6] During the 1980s the digital format of optical compact discs gradually replaced analog formats, such as vinyl records and cassette tapes, as the popular medium of choice.[7]
1947–1969: Origins

In 1947, the first working transistor, the germanium-based point-contact transistor, was invented by John Bardeen and Walter Houser Brattain while working under William Shockley at Bell Labs.[8] This led the way to more advanced digital computers. From the late 1940s, universities, military, and businesses developed computer systems to digitally replicate and automate previously manually performed mathematical calculations, with the LEO being the first commercially available general-purpose computer.

Other important technological developments included the invention of the monolithic integrated circuit chip by Robert Noyce at Fairchild Semiconductor in 1959[9] (made possible by the planar process developed by Jean Hoerni),[10] the first successful metal-oxide-semiconductor field-effect transistor (MOSFET, or MOS transistor) by Mohamed Atalla and Dawon Kahng at Bell Labs in 1959,[11] and the development of the complementary MOS (CMOS) process by Frank Wanlass and Chih-Tang Sah at Fairchild in 1963.[12]

Following the development of MOS integrated circuit chips in the early 1960s, MOS chips reached higher transistor density and lower manufacturing costs than bipolar integrated circuits by 1964. MOS chips further increased in complexity at a rate predicted by Moore's law, leading to large-scale integration (LSI) with hundreds of transistors on a single MOS chip by the late 1960s. The application of MOS LSI chips to computing was the basis for the first microprocessors, as engineers began recognizing that a complete computer processor could be contained on a single MOS LSI chip.[13] In 1968, Fairchild engineer Federico Faggin improved MOS technology with his development of the silicon-gate MOS chip, which he later used to develop the Intel 4004, the first single-chip microprocessor.[14] It was released by Intel in 1971, and laid the foundations for the microcomputer revolution that began in the 1970s.

MOS technology also led to the development of semiconductor image sensors suitable for digital cameras.[15] The first such image sensor was the charge-coupled device, developed by Willard S. Boyle and George E. Smith at Bell Labs in 1969,[16] based on MOS capacitor technology.[15]
1969–1989: Invention of the Internet, rise of home computers

The public was first introduced to the concepts that led to the Internet when a message was sent over the ARPANET in 1969. Packet switched networks such as ARPANET, Mark I, CYCLADES, Merit Network, Tymnet, and Telenet, were developed in the late 1960s and early 1970s using a variety of protocols. The ARPANET in particular led to the development of protocols for internetworking, in which multiple separate networks could be joined together into a network of networks.

The Whole Earth movement of the 1960s advocated the use of new technology.[17]

In the 1970s, the home computer was introduced,[18] time-sharing computers,[19] the video game console, the first coin-op video games,[20][21] and the golden age of arcade video games began with Space Invaders. As digital technology proliferated, and the switch from analog to digital record keeping became the new standard in business, a relatively new job description was popularized, the data entry clerk. Culled from the ranks of secretaries and typists from earlier decades, the data entry clerk's job was to convert analog data (customer records, invoices, etc.) into digital data.

In developed nations, computers achieved semi-ubiquity during the 1980s as they made their way into schools, homes, business, and industry. Automated teller machines, industrial robots, CGI in film and television, electronic music, bulletin board systems, and video games all fueled what became the zeitgeist of the 1980s. Millions of people purchased home computers, making household names of early personal computer manufacturers such as Apple, Commodore, and Tandy. To this day the Commodore 64 is often cited as the best selling computer of all time, having sold 17 million units (by some accounts)[22] between 1982 and 1994.

In 1984, the U.S. Census Bureau began collecting data on computer and Internet use in the United States; their first survey showed that 8.2% of all U.S. households owned a personal computer in 1984, and that households with children under the age of 18 were nearly twice as likely to own one at 15.3% (middle and upper middle class households were the most likely to own one, at 22.9%).[23] By 1989, 15% of all U.S. households owned a computer, and nearly 30% of households with children under the age of 18 owned one.[24] By the late 1980s, many businesses were dependent on computers and digital technology.

Motorola created the first mobile phone, Motorola DynaTac, in 1983. However, this device used analog communication - digital cell phones were not sold commercially until 1991 when the 2G network started to be opened in Finland to accommodate the unexpected demand for cell phones that was becoming apparent in the late 1980s.

Compute! magazine predicted that CD-ROM would be the centerpiece of the revolution, with multiple household devices reading the discs.[25]

The first true digital camera was created in 1988, and the first were marketed in December 1989 in Japan and in 1990 in the United States.[26] By the mid-2000s, they had eclipsed traditional film in popularity.

Digital ink was also invented in the late 1980s. Disney's CAPS system (created 1988) was used for a scene in 1989's The Little Mermaid and for all their animation films between 1990's The Rescuers Down Under and 2004's Home on the Range.
1989–2005: Invention of the World Wide Web, mainstreaming of the Internet, Web 1.0

Tim Berners-Lee invented the World Wide Web in 1989.

The first public digital HDTV broadcast was of the 1990 World Cup that June; it was played in 10 theaters in Spain and Italy. However, HDTV did not become a standard until the mid-2000s outside Japan.

The World Wide Web became publicly accessible in 1991, which had been available only to government and universities.[27] In 1993 Marc Andreessen and Eric Bina introduced Mosaic, the first web browser capable of displaying inline images[28] and the basis for later browsers such as Netscape Navigator and Internet Explorer. Stanford Federal Credit Union was the first financial institution to offer online internet banking services to all of its members in October 1994.[29] In 1996 OP Financial Group, also a cooperative bank, became the second online bank in the world and the first in Europe.[30] The Internet expanded quickly, and by 1996, it was part of mass culture and many businesses listed websites in their ads. By 1999 almost every country had a connection, and nearly half of Americans and people in several other countries used the Internet on a regular basis. However throughout the 1990s, "getting online" entailed complicated configuration, and dial-up was the only connection type affordable by individual users; the present day mass Internet culture was not possible.

In 1989 about 15% of all households in the United States owned a personal computer, by 2000, this was up to 51

%;[31] for households with children nearly 30% owned a computer in 1989, and in 2000 65% owned one.

Cell phones became as ubiquitous as computers by the early 2000s, with movie theaters beginning to show ads telling people to silence their phones. They also became much more advanced than phones of the 1990s, most of which only took calls or at most allowed for the playing of simple games.

Text messaging existed in the 1990s but was not widely used until the early 2000s, when it became a cultural phenomenon.

The digital revolution became truly global in this time as well - after revolutionizing society in the developed world in the 1990s, the digital revolution spread to the masses in the developing world in the 2000s.
2005–present: Web 2.0, social media, smartphones

In late 2005 the population of the Internet reached 1 billion,[32] and 3 billion people worldwide used cell phones by the end of the decade. HDTV became the standard television broadcasting format in many countries by the end of the decade.

By 2012, over 2 billion people used the Internet, twice the number using it in 2007. Cloud computing had entered the mainstream by the early 2010s. By 2016, half of the world's population was connected[33] and as of 2020, that number has risen to 67%.[34]
Rise in digital technology use of computers, 1980–2020
Further information: History of the Internet
Analog to digital transition 1986 - 2014

In the late 1980s, less than 1% of the world's technologically stored information was in digital format, while it was 94% in 2007, with more than 99% by 2014.[35]

It is estimated that the world's capacity to store information has increased from 2.6 (optimally compressed) exabytes in 1986, to some 5,000 exabytes in 2014 (5 zettabytes).[35][36]
1990

    Cell phone subscribers: 12.5 million (0.25% of world population in 1990)[37]
    Internet users: 2.8 million (0.05% of world population in 1990)[38]

2000

    Cell phone subscribers: 1.5 billion (19% of world population in 2002)[38]
    Internet users: 631 million (11% of world population in 2002)[38]

2010

    Cell phone subscribers: 4 billion (68% of world population in 2010)[39]
    Internet users: 1.8 billion (26.6% of world population in 2010)[33]

2020

    Cell phone subscribers: 4.78 billion (62% of world population in 2020)[40]
    Internet users: 4.54 billion (59% of world population in 2020)[41]

A university computer lab containing many desktop PCs
Converted technologies
	
This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (April 2020) (Learn how and when to remove this template message)

Conversion of below analog technologies to digital. (The decade indicated is the period when digital became dominant form.)

    Analog computer to digital computer (1950s)
    Telex to fax (1980s)
    Phonograph cylinder, gramophone record and compact cassette to compact disc (1980s and 1990s, although sales of vinyl records have increased again in the 2010s among antique collectors)
    VHS to DVD (2000s)
    Analog photography (photographic plate and photographic film) to digital photography (2000s)
    Analog cinematography (film stock) to digital cinematography (2010s)

    Image of Compact Disc
    Analog television to digital television (2010s)
    Analog radio to digital radio (2020s (expected))
    Analog mobile phone (1G) to digital mobile phone (2G) (1990s)
    Analog watch and clock to digital watch and clock (not yet predictable)
    Analog thermometer to digital thermometer (2010s)
    Offset printing to digital printing (2020s (expected))

Decline or disappearance of below analog technologies:

    Mail (parcel to continue, others to be discontinued) (2020s (expected))[citation needed]
    Telegram (2010s)
    Typewriter (2010s)

Disappearance of other technologies also attributed to digital revolution. (Analog–digital classification doesn't apply to these.)

    CRT (2010s)
    Plasma display (2010s)
    CCFL backlit LCDs (2010s)

Improvements in digital technologies.

    Desktop computer to laptop to tablet computer
    DVD to Blu-ray Disc to 4K Blu-ray Disc
    2G to 3G to 4G to 5G
    Mobile phone to smartphone (2010s)
    Digital watch to smartwatch
    Analog weighing scale to digital weighing scale

Technological basis

The basic building block of the Digital Revolution is the metal-oxide-semiconductor field-effect transistor (MOSFET, or MOS transistor),[42] which is the most widely manufactured device in history.[43] It is the basis of every microprocessor, memory chip and telecommunication circuit in commercial use.[44] MOSFET scaling (rapid miniaturization of MOS transistors) has been largely responsible for enabling Moore's law, which predicted that transistor counts would increase at an exponential pace.[45][46][47]

Following the development of the digital personal computer, MOS microprocessors and memory chips, with their steadily increasing performance and storage, have enabled computer technology to be embedded into a huge range of objects from cameras to personal music players. Also important was the development of transmission technologies including computer networking, the Internet and digital broadcasting. 3G phones, whose social penetration grew exponentially in the 2000s, also played a very large role in the digital revolution as they simultaneously provide ubiquitous entertainment, communications, and online connectivity.
Socio-economic impact

Positive aspects include greater interconnectedness, easier communication, and the exposure of information that in the past could have more easily been suppressed by totalitarian regimes. Michio Kaku wrote in his books Physics of the Future that the failure of the Soviet coup of 1991 was due largely to the existence of technology such as the fax machine and computers that exposed classified information.

The Revolutions of 2011 were enabled by social networking and smartphone technology; however these revolutions in hindsight largely failed to reach their goals as hardcore Islamist governments and in Syria a civil war have formed in the absence of the dictatorships that were toppled.

The economic impact of the digital revolution has been wide-ranging. Without the World Wide Web (WWW), for example, globalization and outsourcing would not be nearly as feasible as they are today. The digital revolution radically changed the way individuals and companies interact. Small regional companies were suddenly given access to much larger markets. Concepts such as on-demand software services and manufacturing and rapidly dropping technology costs made possible innovations in all aspects of industry and everyday life.

After initial concerns of an IT productivity paradox, evidence is mounting that digital technologies have significantly increased the productivity and performance of businesses.[48]

The Digital transformation allowed technology to continuously adapt which resulted in a boost in the economy with an increase of productivity. With the increase of technical advances, digital revolution has created a demand for new job skills. Economically, retailers, trucking companies and banks have transitioned into digital format. In addition, the introduction of cryptocurrency like Bitcoin creates faster and secure transactions.[49]

Negative effects include information overload, Internet predators, forms of social isolation, and media saturation. In a poll of prominent members of the national news media, 65 percent said the Internet is hurting journalism more than it is helping[50] by allowing anyone no matter how amateur and unskilled to become a journalist; causing information to be muddier and the rise of conspiracy theory in a way it didn't exist in the past.

In some cases, company employees' pervasive use of portable digital devices and work related computers for personal use—email, instant messaging, computer games—were often found to, or perceived to, reduce those companies' productivity. Personal computing and other non-work related digital activities in the workplace thus helped lead to stronger forms of privacy invasion, such as keystroke recording and information filtering applications (spyware and content-control software).
Information sharing and privacy

Privacy in general became a concern during the digital revolution. The ability to store and utilize such large amounts of diverse information opened possibilities for tracking of individual activities and interests. Libertarians and privacy rights advocates feared the possibility of an Orwellian future where centralized power structures control the populace via automatic surveillance and monitoring of personal information in such programs as the CIA's Information Awareness Office.[51] Consumer and labor advocates opposed the ability to direct market to individuals, discriminate in hiring and lending decisions, invasively monitor employee behavior and communications and generally profit from involuntarily shared personal information.

The Internet, especially the WWW in the 1990s, opened whole new avenues for communication and information sharing. The ability to easily and rapidly share information on a global scale brought with it a whole new level of freedom of speech. Individuals and organizations were suddenly given the ability to publish on any topic, to a global audience, at a negligible cost, particularly in comparison to any previous communication technology.

Large cooperative projects could be endeavored (e.g. Open-source software projects, SETI@home). Communities of like-minded individuals were formed (e.g. MySpace, Tribe.net). Small regional companies were suddenly given access to a larger marketplace.

In other cases, special interest groups as well as social and religious institutions found much of the content objectionable, even dangerous. Many parents and religious organizations, especially in the United States, became alarmed by pornography being more readily available to minors. In other circumstances the proliferation of information on such topics as child pornography, building bombs, committing acts of terrorism, and other violent activities were alarming to many different groups of people. Such concerns contributed to arguments for censorship and regulation on the WWW.
Copyright and trademark issues
Main article: File sharing and the law

Copyright and trademark issues also found new life in the digital revolution. The widespread ability of consumers to produce and distribute exact reproductions of protected works dramatically changed the intellectual property landscape, especially in the music, film, and television industries.

The digital revolution, especially regarding privacy, copyright, censorship and information sharing, remains a controversial topic. As the digital revolution progresses it remains unclear to what extent society has been impacted and will be altered in the future.

With the advancement of digital technology Copyright infringements will become difficult to detect. They will occur more frequently, will be difficult to prove and the public will continue to find loopholes around the law. Digital recorders for example, can be used personally and private use making the distributions of copywritten material discreet.[52]
Concerns

While there have been huge benefits to society from the digital revolution, especially in terms of the accessibility of information, there are a number of concerns. Expanded powers of communication and information sharing, increased capabilities for existing technologies, and the advent of new technology brought with it many potential opportunities for exploitation. The digital revolution helped usher in a new age of mass surveillance, generating a range of new civil and human rights issues. Reliability of data became an issue as information could easily be replicated, but not easily verified. For example, the introduction of Cryptocurrency, opens possibility for illegal trade, such as the sale of drugs, guns and black market transaction.[49] The digital revolution made it possible to store and track facts, articles, statistics, as well as minutiae hitherto unfeasible.

From the perspective of the historian, a large part of human history is known through physical objects from the past that have been found or preserved, particularly in written documents. Digital records are easy to create but also easy to delete and modify. Changes in storage formats can make recovery of data difficult or near impossible, as can the storage of information on obsolete media for which reproduction equipment is unavailable, and even identifying what such data is and whether it is of interest can be near impossible if it is no longer easily readable, or if there is a large number of such files to identify. Information passed off as authentic research or study must be scrutinized and verified.[citation needed]

These problems are further compounded by the use of digital rights management and other copy prevention technologies which, being designed to only allow the data to be read on specific machines, may well make future data recovery impossible. The Voyager Golden Record, which is intended to be read by an intelligent extraterrestrial (perhaps a suitable parallel to a human from the distant future), is recorded in analog rather than digital format specifically for easy interpretation and analysis.
See also

    Revolution
        Neolithic Revolution
        Agricultural Revolution
        Scientific Revolution
        Industrial Revolution
        Second Industrial Revolution
        Environmental revolution
        Information revolution
        Microcomputer revolution
        Nanotechnology
        Technological revolution
        The Triple Revolution
    Dot-com company
    Digital native
    Digital omnivore
    Digital addict
    Digital phobic
    Electronic document
    Fourth Industrial Revolution
    Indigo Era
    Japanese economic miracle, a period of rapid growth and innovation in Japan which roughly coincided with the Third Industrial Revolution
    Paperless office
    Post Cold War era
    Telework
    Timeline of electrical and electronic engineering

References

E. Schoenherr, Steven (5 May 2004). "The Digital Revolution". Archived from the original on 7 October 2008.
"Information Age".
Debjani, Roy (2014). "Cinema in the Age of Digital Revolution" (PDF).
Bojanova, Irena (2014). "The Digital Revolution: What's on the Horizon?". IT Professional (Jan.-Feb. 2014). 16 (1): 8–12. doi:10.1109/MITP.2014.11. S2CID 28110209.
Shannon, Claude E.; Weaver, Warren (1963). The mathematical theory of communication (4. print. ed.). Urbana: University of Illinois Press. p. 144. ISBN 0252725484.
"Museum Of Applied Arts And Sciences - About". Museum of Applied Arts and Sciences. Retrieved 22 August 2017.
"The Digital Revolution Ahead for the Audio Industry," Business Week. New York, 16 March 1981, p. 40D.
Phil Ament (17 April 2015). "Transistor History - Invention of the Transistor". Archived from the original on 13 August 2011. Retrieved 17 April 2015.
Saxena, Arjun (2009). Invention of Integrated Circuits: Untold Important Facts. pp. x–xi.
Saxena, Arjun (2009). Invention of Integrated Circuits: Untold Important Facts. pp. 102–103.
"1960: Metal Oxide Semiconductor (MOS) Transistor Demonstrated".
"1963: Complementary MOS Circuit Configuration is Invented".
Shirriff, Ken (30 August 2016). "The Surprising Story of the First Microprocessors". IEEE Spectrum. Institute of Electrical and Electronics Engineers. 53 (9): 48–54. doi:10.1109/MSPEC.2016.7551353. S2CID 32003640. Retrieved 13 October 2019.
"1971: Microprocessor Integrates CPU Function onto a Single Chip". Computer History Museum.
Williams, J. B. (2017). The Electronics Revolution: Inventing the Future. Springer. pp. 245–8. ISBN 9783319490885.
James R. Janesick (2001). Scientific charge-coupled devices. SPIE Press. pp. 3–4. ISBN 978-0-8194-3698-6.
"History of Whole Earth Catalog". Retrieved 17 April 2015.
"Personal Computer Milestones". Retrieved 17 April 2015.
Criss, Fillur (14 August 2014). "2,076 IT jobs from 492 companies". ICTerGezocht.nl (in Dutch). Retrieved 19 August 2017.
"Atari - Arcade/Coin-op". Archived from the original on 2 November 2014. Retrieved 17 April 2015.
Vincze Miklós. "Forgotten arcade games let you shoot space men and catch live lobsters". io9. Retrieved 17 April 2015.
"How many Commodore 64 computers were really sold?". pagetable.com. Archived from the original on 6 March 2016. Retrieved 17 April 2015.
"Archived copy" (PDF). Archived from the original (PDF) on 2 April 2013. Retrieved 20 December 2017.
https://www.census.gov/hhes/computer/files/1989/p23-171.pdf
"COMPUTE! magazine issue 93 Feb 1988". "If the wheels behind the CD-ROM industry have their way, this product will help open the door to a brave, new multimedia world for microcomputers, where the computer is intimately linked with the other household electronics, and every gadget in the house reads tons of video, audio, and text data from CD-ROM disks."
"1988". Retrieved 17 April 2015.
Martin Bryant (6 August 2011). "20 years ago today, the World Wide Web was born - TNW Insider". The Next Web. Retrieved 17 April 2015.
"The World Wide Web". Retrieved 17 April 2015.
"Stanford Federal Credit Union Pioneers Online Financial Services" (Press release). 21 June 1995.
"History - About us - OP Group".
https://www.census.gov/prod/2005pubs/p23-208.pdf
"One Billion People Online!". Archived from the original on 22 October 2008. Retrieved 17 April 2015.
"World Internet Users Statistics and 2014 World Population Stats". Retrieved 17 April 2015.
Clement. "Worldwide digital population as of April 2020". Statista. Retrieved 21 May 2020.
"The World’s Technological Capacity to Store, Communicate, and Compute Information", especially Supporting online material, Martin Hilbert and Priscila López (2011), Science, 332(6025), 60-65; free access to the article through here: http://www.martinhilbert.net/worldinfocapacity-html/
Information in the Biosphere: Biological and Digital Worlds, doi:10.1016/j.tree.2015.12.013, Gillings, M. R., Hilbert, M., & Kemp, D. J. (2016), Trends in Ecology & Evolution, 31(3), 180–189
"Worldmapper: The world as you've never seen it before - Cellular Subscribers 1990". Retrieved 17 April 2015.
"Worldmapper: The world as you've never seen it before - Communication Maps". Retrieved 17 April 2015.
Arms, Michael (2013). "Cell Phone Dangers - Protecting Our Homes From Cell Phone Radiation". Computer User. Archived from the original on 29 March 2014.
"Number of mobile phone users worldwide 2015-2020". Statista. Retrieved 19 February 2020.
"Global digital population 2020". Statista. Retrieved 19 February 2020.
Wong, Kit Po (2009). Electrical Engineering - Volume II. EOLSS Publications. p. 7. ISBN 9781905839780.
"13 Sextillion & Counting: The Long & Winding Road to the Most Frequently Manufactured Human Artifact in History". Computer History Museum. 2 April 2018.
Colinge, Jean-Pierre; Greer, James C. (2016). Nanowire Transistors: Physics of Devices and Materials in One Dimension. Cambridge University Press. p. 2. ISBN 9781107052406.
Motoyoshi, M. (2009). "Through-Silicon Via (TSV)". Proceedings of the IEEE. 97 (1): 43–48. doi:10.1109/JPROC.2008.2007462. ISSN 0018-9219. S2CID 29105721.
"Tortoise of Transistors Wins the Race - CHM Revolution". Computer History Museum. Retrieved 22 July 2019.
"Transistors Keep Moore's Law Alive". EETimes. 12 December 2018. Retrieved 18 July 2019.
Hitt, Lorin M.; Brynjolfsson, Erik (June 2003). "Computing Productivity: Firm-Level Evidence". SSRN 290325.
Hodson, Richard (28 November 2018). "Digital revolution". Nature. 563 (7733): S131–S131. doi:10.1038/d41586-018-07500-z.
Cyra Master (10 April 2009). "Media Insiders Say Internet Hurts Journalism". The Atlantic. Retrieved 17 April 2015.
John Markoff (22 November 2002). "Pentagon Plans a Computer System That Would Peek at Personal Data of Americans". The New York Times.

    Fleischmann, Eric (1987). "The Impact of Digital Technology on Copyright Law, 8 Computer L.J. 1". n The John Marshall Journal of Information Technology & Privacy Law. 8. line feed character in |title= at position 46 (help); line feed character in |journal= at position 11 (help)

External links
	Wikibooks has a book on the topic of: The Information Age

    Virginia Heffernan (New York Times) - The Digital Revolution
    Virginia Heffernan (New York Times), an interview
    Digital Transformation Reshaping The Business Model

    vte

Industrial and technological revolution

    vte

History of technology
Authority control Edit this at Wikidata	

    GND: 7854804-4 MA: 2778132726

Categories:

    Digital RevolutionHistorical erasRevolutions by typeInformation Age

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    اردو
    中文

Edit links

    This page was last edited on 11 May 2021, at 23:18 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki






!!Download

*Download a copy of Stroll with the tutorials included:

**Click the <<icon {{$:/core/images/save-button}} "">> icon in the sidebar of this file, and follow instructions.

*Download an empty copy of Stroll:

**Open https://giffmex.org/stroll/empty.html, click the {{$:/core/images/save-wiki}} icon in the sidebar in that file, and follow instructions. 

!!Saving changes

*There may be a few steps involved for you to get Stroll to save changes the way you want it to. And everything depends on which browser you use and whether you use Stroll as a single file wiki, hosted online, with the ~TiddlyDesktop, or with node.js. See ~TiddlyWiki's documentation [[here|https://tiddlywiki.com/#GettingStarted]].


! https://www.ratical.org/LifeWeb/Erthdnce/erthdnce.pdf

! EARTHDANCE: Living Systems in Evolution  by  Elisabet Sahtouris

To my planet and its people
Dancing  is  surely  the  most  basic  and  relevant  of   all  forms  ofexpression.  Nothing  else  can  so  effectively  give  outward  form  to  aninner  experience.  Poetry  and  music  exist  in  time.  Painting  andarchitecture  are  a  part  of  space  But  only  the  dance  lives  at  once  inboth  space  and  time  In  it  the  creator  and  the  thing  created,  the  artistand  the  expression,  are  one.  Each  participant  is  completely  in  theother.  There  could  be  no  better  metaphor  for  an  understanding  ofthe...cosmos. We begin to realize that our universe is in a sense brought into beingby  the  participation  of   those  involved  in  it.  It  is  a  dance,  forparticipation  is  its  organizing  principle.  This  is  the  important  newconcept    of    quantum    mechanics.    It    takes    the    place    in    ourunderstanding  of  the  old  notion  of  observation,  of  watching  withoutgetting   involved.   Quantum   theory   says   it   can’t   be   done.   Thatspectators can sit in their rigid row as long as they like, but there willnever  be  a  performance  unless  at  least  one  of  them  takes  part  Andconversely, that it needs only one participant, because that one is theessence of all people and the quintessence of the cosmos. -Lyall Watson, Gifts of Unknown Things Thank you. Special  thanks  to  Jim  Lovelock  and  Lynn  Margulis  for  the  originalinspiration  to  write  this  book  and  for  their  encouragement  over  theyears,  also  to  Teddy  Goldsmith  for  creating  the  Gaia  Seminars  inCornwall. My deep appreciation to Dave Ratcliffe and Rebecca Lordfor  putting  the  book  on  the  Web  while  it  was  out  of  print,  and  toBruce  Bigenho  for  his  tireless  efforts  with  the  second  edition.  Mygratitude  extends  as  well  to  Nancy  Larson  for  the  original  coverphoto and to my son, Philip LaVere, for the cover design. Lastly, butcertainly not least, I thank with a smile my sometimes enigmatic butwonderful editor at Praeger, Jeremy Geelan, for his great enthusiasmand effort to get EarthDance out there! 
Contents FOREWORD BY JAMES E. LOVELOCKA NOTE FROM THE AUTHOR1.A TWICE-TOLD TALE2.COSMIC BEGINNINGS3.THE YOUNG EARTH4.PROBLEMS FOR EARTHLIFE5.THE DANCE OF LIFE6.A GREAT LEAP7.EVIDENCE OF EVOLUTION8.FROM PROTISTS TO POLYPS9.FROM POLYPS TO POSSUMS10.FROM POSSUMS TO PEOPLE11.THE BIG BRAIN EXPERIMENT12.WHAT THE PLAY IS ALL ABOUT13.WORLDVIEWS FROM THE PLEISTOCENE TO PLATO14.WORLDVIEWS FROM PLATO TO THE PRESENT15.LESS THAN PERFECT, MORE THAN MACHINE16.THE BODY OF HUMANITY17.A MATTER OF MATURATION18.ECOLOGICAL ETHICS19.THE INDIGENOUS WAY20.SUSTAINABLE SOCIETY21.COSMIC CONTINUATIONBIBLIOGRAPHY
Foreword The  Gaia  hypothesis,  now  accorded  the  status  of  Gaia  theory,  is  maturing  with  experienceand  the  tests  of  time,  not  unlike  the  humans  of  this  book.  It  is  spurring  a  great  deal  ofscientific research into the geophysiology of our living planet. It is also spurring philosophicconceptions  of  what  it  means  to  our  species  to  be  part  of  a  living  planet.  Some  of  theseconceptions stay carefully within the accepted limits of science; others have a religious bent.Most,  especially  environmentalist  conceptions,  advocate  for  humanity,  being  primarilyconcerned  with  human  survival.  A  few,  taking  a  clue  from  my  partner  Lynn  Margulis  andmyself,  advocate  for  the  planet  and  the  much  maligned  microbes  with  which  the  Gaiansystem originated and which continue to do its basic work. Elisabet Sahtouris’ conception integrates scientific Gaian evolution with the human search toconnect with our roots, inspiring us to learn from billions of years of Gaian experience in theself-organization  of  workable  living  systems.  It  is  well  balanced  between  advocacy  for  theplanet  and  advocacy  for  humans,  placing  the  onus  on  humans  to  recognize  the  lack  ofmaturity  involved  in  believing  we  can  manage  the  planet,  and  to  learn  instead  to  follow  itslead in organizing ourselves. Elisabet gives us valuable insights as she draws parallels between the evolution of  cells andthe evolution of human society, pointing out the contrast between the healthy organization ofcells, bodies, and biosystems on  the one hand and the unhealthy organization of  economicsand politics in human society on the other. While she argues that our social evolution is notas much under our control as we like to think, she warns us that our survival depends on ourmeeting  the  evolutionary  demand  to  transform  competitive  exploitation  into  cooperativesynergy. On  the  whole,  her  advice  makes  sense  because  she  herself  has  taken  the  trouble  to  learndirectly from nature as well as from the growing store of scientific knowledge about nature. Ibegan the preface to my own book The Ages of  Gaia by saying that the place in which it waswritten was relevant to its understanding. Living and working in the Devonshire countryside,far from universities and large research organizations, makes me an eccentric as a scientist,but, as I said, it is the only way to work on an unconventional topic such as Gaia. When I metElisabet, having accepted her invitation to trace Gaia’s roots in Greece, I recognized her as akindred  spirit.  She  had  abandoned  academia  for  a  simple  lifestyle  in  the  kind  of  naturalsetting that brings one closer to understanding what our planet and our species are all about;she  was  free  to  develop  her  own  conception  of  Gaia  through  a  synthesis  of  scientificknowledge and personal experience of  nature. To my surprise, she expressed some concern,some guilt, at having abandoned her profession of science for a pleasant existence in a forestoverlooking  the  sea,  the  kind  of  forest  that  had  been  home  to  her  in  childhood,  where  she
could work out the meaning of  things for herself. As I read her work in progress, I was ableto  assure  her  she  could  never  have  done  anything  comparable  in  a  constrained  academicsetting. In the intervening years, even in the short time since I wrote my own words about Gaia beingan   unconventional   topic,   less   eccentric   scientists   than   I   have   declared   Gaia   moreconventional,  meaning  that  Gaia theory is  now recognized as a legitimate  and fruitful basisfor  scientific  investigation  and  is  thus  being  brought  into  the  scientific  fold.  In  our  firstaccount  of  Gaia  as  a  system  neither  Lynn  Margulis  nor  I  fully  understood  what  it  was  wewere  describing.  Our  language  tended  to  be  anthropomorphic  and,  especially  in  my  firstbook,  Gaia, poetic. Not surprisingly, some scientists misunderstood our intentions, but overtime  we  developed  a  clearer  version,  which  became  Gaia  theory.  This  theory  sees  theevolution of the material environment and the evolution of organisms as tightly coupled intoa  single  and  indivisible  process  or  domain.  Gaia,  with  its  capacity  for  homeostasis,  is  anemergent property of this domain. As the title of one article in Science put it, "No Longer Willful, Gaia Becomes Respectable."This  means  that  Gaia  scientists  are  constrained  by  bureaucratic  forces,  by  the  pressures  oftenure, and by the tribal divisions and rules of  scientific disciplines. That, in turn, means weneed  some  antidote  to  the  inevitable  separations  and  constraints.  We  need  independentsynthesizers  and  visionaries  who  can  make  sense  of  the  data  produced  by  the  scientificestablishment  and  present  it  to  us  in  ways  that  make  our  living  planet  real  to  us  within  theGaian  context  and  thus  give  meaning  to  our  own  lives  and  those  of  our  children  andgrandchildren. This  is  what  Elisabet  Sahtouris’  work  means  to  me,  for  she  comfortably  integrates  thetraditionally separated domains of  biology, geology, and atmospheric science to show us theevolution  of  our  living  planet  and  our  own  roots  within  it.  She  then  inspires  us  on  ethicalgrounds to learn from this planetary organism of  which we are part, showing us how we canmature as a species well integrated into the larger dance of life. Elisabet  uses  the  metaphor  of  dance  effectively  for  its  concepts  of  improvisation  andevolution,  the  creation  of  order  from  chaos,  the  myriad  patterns  that  can  be  created  from  afew basic steps. I am myself  an inventor of  scientific instruments, and so it is second natureto  me  to  think  in  terms  of  mechanical  and  mathematical  models.  Cybernetic  models  haveproved  especially  useful  in  my  work  of  demonstrating  how  Gaian  homeostasis,  such  asmaintaining  the  Earth’s  temperature,  might  work.  Yet  I  quite  agree  with  Elisabet  that  anymodel  we  make  of  nature  is  at  heart  metaphorical  in  that  it  begins  with  some  image  orformula  familiar  to  us  humans  and  used  to  represent  the  complexities  of  nature  in  simple,understandable, and useful ways. No metaphor should be mistaken for reality, and perhaps avariety  of  metaphors  is  insurance  against  the  temptation  to  do  so.  I  am  increasinglyimpressed  by  scientists  and  philosophers  who  find  non-mechanical  metaphors  for  naturalsystems useful in interpreting Gaia theory. Elisabet’s analysis of  science reflects a trend that may well make science in the near futureas  unrecognizable  as  today’s  science  would  be  to  the  ancients.  She  does  well  to  remind  usthat  science is  a human activity  that  evolves, a living system in which conservatism shouldbe balanced by healthy controversy. After all, as she so well describes, all Gaian systems are
forever busy working out their cooperation through conflicting interests, their unities throughdiversity. The optimistic view this book  radiates, that  despite our  errors and immaturities we can stillbecome  a  healthy  species  within  a  healthy  planet,  is  much  needed  in  this  age  of  doomsdaypredictions.   Though   time   is   growing   short   in   our   continued   destruction   of   forests,atmospheres,  and  other  critical  Gaian  systems,  nothing  would  make  me  happier  personallythan to see Gaia theory useful in bringing about a better world for Gaia and her people. -James E. Lovelock
A Note from the Author This book is a work of philosophy in the original sense of a search for wisdom, for practicalguidance in human affairs through understanding the natural order of the cosmos to whichwe belong. It bears little resemblance to what we have come to call philosophy since thateffort was separated from natural science and became more an intellectual exercise inunderstanding than a practical guide for living. To find meaning and guidance in nature, I integrated my personal experience of it with thosescientific  accounts  that  seemed  to  best  fit  it.  From  this  synthesis,  meaning  and  lessons  forhumanity  emerged  freely.  I  wrote  the  original  version  in  the  peaceful,  natural  setting  of  atiny  old  village  on  a  small  pine-forested  Greek  island,  where  I  could  consider  the  researchand  debates  of  scientists,  historians,  and  philosophers,  then  test  them  against  the  naturalworld I was trying to understand. Putting  into  simple  words  the  specialized  technical  language  of  scientists  and  winding  myway  through  labyrinths  of  philosophic  prose,  I  gradually  simplified  the  story  of  the  originsand  nature  of  our  planet  within  the  larger  cosmos,  and  of  our  human  origins,  nature,  andhistory within the larger being of this planet. The Gaia hypothesis, now Gaia theory, of  James Lovelock and Lynn Margulis -- the theorythat  our  planet  and  its  creatures  constitute  a  single  self-regulating  system  that  is  in  fact  agreat living being -- is the conception of  physical reality in which my philosophy is rooted.Quite  simply,  it  makes  more  sense  on  all  levels  --  intuitive,  experiential,  scientific,philosophical,  spiritual  and  even  aesthetic  and  ethical  --  than  any  other  conception  I  know.And  I  have  come  to  believe,  in  the  course  of  this  work,  that  this  conception  containsprofound and pressing implications for all humanity. To  ensure  that  my  vision  of  evolution  and  history  would  stay  simple  and  in  clear  focus,  Ikept telling its essence and more than a few of  its particulars in something of  the style of  anancient storyteller during many social evenings among my Greek village friends. I also wrotethe  story  for  children  before  I  set  about  an  adult  version.  To  my  surprise,  these  deliberateexercises  in  simplicity  proved  more  difficult  than  writing  for  professional  audiences,  for  instripping our intellectual language to the essence of what is being said, we must be very surethat essence is really there, really coherent. Science has been a process of  differentiating ourknowledge  into  an  incredible  wealth  of  precise  details,  but  these  details  become  ever  moredisconnected  from  one  another  and  cry  out  for  integration  into  coherent  wholes.  I  have  nodoubt I will be accused of  oversimplification, and perhaps rightly so, as one pays for scopein lack of detail and precision. 
Friends  and  colleagues  have  asked  me  now  and  then  why  I  insist  on  dealing  with  allevolution,  even  all  the  cosmos,  to  discuss  human  matters;  why  I  don’t  narrow  my  scope  toworkable proportions. My answer is that context is what gives meaning, and a serious searchof  context is an ever-expanding process leading inevitably to the grandest context of  all: thewhole  cosmos.  As  the  nested  contexts  for  the  human  story  --  especially  the  context  ofevolution -- became clearer to me, they revealed a simple but elegant biological vision of justwhy our human condition has become so critical and what we might do to improve it. Other  people  ask  why  I’m  so  eager  to  save  humanity  when  it  is  proving  such  a  social  andecological  disaster.  To  this  I  can  only  answer  that,  as  far  as  I  can  see,  every  healthy  livingbeing  or  system  in  nature  has  evolved  survival  oriented  behavior,  and  I  do  not  excludemyself  from  this  natural  health  scheme.  Of  course  my  purpose  is  to  show  how  we  arestraying from this course, so that we may correct the deviations. I can no more proclaim the worldview arising from my work "reality" than can any particularphilosopher  working  at  creating  a  meaningful  worldview  in  any  particular  place  and  time,drawing  on  the  scientific  and historical knowledge of  that  place and time. Philosophy is  anintensely  personal  search  that  one  hopes  will  have  relevance  to  others,  will  be validated bytheir experience, will offer them some insight and guidance, or will at least stimulate them intheir disagreement to search further on their own. Yet  a  work  of  philosophy  also  reflects  the  broader  context  and  search  of  a  culture  at  aparticular  stage,  and  the  biological  evolutionary  viewpoint  of  this  book  reflects  a  broadlyemerging  pattern  of  search  for  our  origins  and  direction  in  nature  --  a  reawakening  of  thatsearch begun by  the original pre-Socratic philosophers, indeed that  goes further back to theroots of religion -- the search for re-ligio, for "reconnection" with our origins in the nature orcosmos that gave rise to us and within which we continue our co-creation. Paradoxically, our self-imposed separation from nature by way of  an ‘objective’ mechanicalworldview  during  the  past  few  millennia  has  led  to  the  scientific  knowledge  that  makes  itpossible  to  understand  and  reintegrate  ourselves  into  nature’s  self-organization  patterns.  Ithas also brought us to a stage of  technology that permits us to share our discoveries and ourunderstanding  planet-wide  in  no  time  at  all,  to  work  together  as  a  body  of  humanity  withhope of transcending our present crisis in a far healthier and happier future for ourselves andall the rest of Earthlife. Although  the  original  version  of  this  book  was  done  in  relative  isolation  and  withoutfunding, I am indebted and profoundly grateful to many teachers and friends, from the forestcreatures with whom I spent my earliest years to Jim Lovelock and Lynn Margulis, who havenot only informed and inspired me in this work, but who gave me invaluable encouragement,confidence, and opportunities in seeing the work through. As this edition goes to press, scientists have recognized that we are well into the sixth greatextinction of species -- the first caused by a single species, and proceeding more rapidly eventhan  the  last  one,  which  eliminated  the  great  dinosaurs  sixty  million  years  ago  becauseEarth’s  climate  changed  dramatically  under  the  impact  of  a  huge  meteor  in  the  Caribbeanbasin. 


of  the  seamless  and  sacred  fabric  of  life.  They  have  always  known  this  is  a  participatoryuniverse,  which  Western  scientists  only  now  acknowledge.  We  simply  cannot  observe  itwithout changing it. Indigenous people understand science and spirituality as aspects of  thesame  reality  --  an  intelligent,  conscious  continuum  with  physical  and  non-physical  aspects.They   are   aware   that   all   parts   and   aspects   of   nature   are   in   constant   non-physicalcommunication.  In  Western  science,  physicists  only  now  discover  the  deep  connectednessand dialogue of everything through concepts of non-locality and zero-point energy. One  crisp  cool  day  in  a  cornfield  on  the  barren  Hopi  reservation  in  Arizona,  I  watchedMartin Gashweseoma -- now almost the only traditional Hopi elder still alive -- kneeling inthe  dry  earth  beneath  a  brilliant  blue  sky,  picking  dried  ears  of  blue  corn  from  the  stubbyplants rustling in a cold late fall wind. Martin continues to live in the sacred way, with onlythe  digging  stick  given  by  the  Great  Spirit,  Maasau,  along  with  instructions  for  living  inpeace  and  simplicity.  He  stood  up  to  greet  me  and  began  speaking  of  the  eviction  of  thefaithful  Hopi  from  Old  Oraibi  in  1906  with  only  what  they  could  carry,  of  his  uncleYukiuma who led his people like Gandhi on this exodus, even going to the White House toplead their cause, of  the sacred stone tablets his uncle later entrusted to him, of the way theywere taken away, of the Day of Purification the white man, Bahanna, is bringing on, with allits suffering as the world becomes desert.... What he said was familiar, as I had been working with the Hopi and other Indians for yearsby this time, but it took on new significance as it burned into my heart on that crisp, clear fallday, the azure sky blazing behind him as we talked. Three men who had brought me to thefield stood behind me and never interrupted; Martin did not take his eyes from mine duringour  long  interchange.  It  was  an  experience  of  total  undivided  attention  I,  as  a  woman,  hadnever experienced from men. The intense energy flowing between Martin and myself createda  dense  whirlpool  tangible  even  to  me,  a  person  normally  insensitive  to  such  things.  Awhirlpool, as I say in this book, is a living entity, and Martin wove such an entity. Anguish flowed through me at his despair. He spoke of  his and other elders’ failure to reachthe  White  Brother  --  our  dominant  culture  --  with  the Hopi  Prophecy, and of  how even theHopi were abandoning their traditions, their cornfields. The Hopi prophecy, discussed at thebeginning of Chapter 19, says the world as we know it will end if the White Brother does notheed the Sacred Way of the Red Brother and share his mission to develop technology in thatspirit. His truth -- the need for cooperation between the ways of  indigenous and industrial peoplesto build a sustainable world -- is vital to our survival. I found this same truth over and overagain  in  many  teachings  I  have  gained  from  indigenous peoples in many places. I exploredthis truth in many contexts, from presidential commission dialogues on a sustainable humanfuture  in  Washington  D.C.  to  traditional  villages  in  the  Peruvian  Andes,  where  I  spent  awhole year studying the cosmology and science of  ancient Andean cultures, and now in thecorporate  world  of   multinationals,  the  most  powerful  organizations  humanity  has  yetdevised. This corporate world, which, along with science and technology, is often blamed for currentcrises,  is  suddenly  in  crisis  itself  because  of  a  dramatic  new  development  on  the  humanscene: the Internet. From my perspective as an evolution biologist, this World Wide Web of
information exchange is a kind of  fractal biology repeat pattern of  the first version, built bybacteria billions of  years ago, as we see in Chapter 4. And just like its ancient counterpart --still in existence among bacteria worldwide today -- it is a self-organizing living system. Chapter 20 describes the inherent organizational design and operating principles of  this newWeb as those of  living systems, and that is why it has the power to force corporations withorganizational designs and operating principles based on command and control mechanics tochange their ways -- to become more like living systems themselves. As corporations, whichplay  such  a  powerful  determining  role  in  our  species’  behavior  as  a  whole,  understand  andabide  by  the  sustainable  survival  principles  of  living  systems,  their  goals  will  come  intoharmony  with  our  personal  and  community  goals.  We  can  then  mature  like  other  speciesfrom competition to cooperation and build a human society in which the goals of  individualand community, of  local and  global  economy, of  economy and ecology are met. This willshift  us  out  of  crises  and  into  the  happier,  healthier  world of  which we all  dream. Let  it beso! Elisabet Sahtouris, September, 1999 
1 A Twice-Told Tale Everyone   knows   that   humanity   is   in   crisis,   politically,   economically,   spiritually,ecologically,  any  way  you  look  at  it.  Many  see humanity as close to suicide by  way of  ourown technology; many others see humans as deserving God’s or nature’s wrath in retributionfor our sins. However we see it, we are deeply afraid that we may not survive much longer.Yet  our  urge  to  survival  is  the  strongest  urge  we  have,  and  we  do  not  cease  our  search  forsolutions in the midst of crisis. The  proposal  made  in  this  book  is  that  we  see  ourselves  in  the  context  of  our  planet’sbiological  evolution,  as  a  still  new,  experimental  species  with  developmental  stages  thatparallel the stages of  our individual development. From this perspective, humanity is now inadolescent  crisis  and,  just  because  of  that,  stands  on  the  brink  of  maturity  in  a  position  toachieve  true  humanity  in  the  full  meaning  of  that  word.  Like  an  adolescent  in  trouble,  wehave tended to let our focus on the crisis itself or on our frantic search for particular political,economic,  scientific,  or  spiritual  solutions  depress  us  and  blind  us  to  the  larger  picture,  toavenues of  real assistance. If  we humbly seek help instead from the nature that spawned us,we will find biological clues to solving all our biggest problems at once. We will see how tomake the healthy transition into maturity. Some of  these biological clues are with us daily, all our lives, in our own bodies; others canbe  found  in  various  ages  and  stages  of  the  larger  living  entity  of  which  we  are  part  --  ourplanet Earth. Once we see these clues, we will wonder how we could have failed to find themfor so long. The reason we have missed them is that we have not understood ourselves as living beingswithin a larger being, in the same sense that our cells are part of each of us. Our  intellectual  heritage  for  thousands  of  years,  most  strongly  developed  in  the  past  fewhundred  years  of  science,  has  been  to  see  ourselves  as  separate  from  the  rest  of  nature,  toconvince ourselves we see it objectively -- at a distance from ourselves -- and to perceive, orat least model it, as a vast mechanism. This  objective  mechanical  worldview  was  founded  in  ancient  Greece  when  philosophersdivided  into  two  schools  of  thought  about  the  world.  One  school  held  that  all  nature,including  humans,  was  alive  and  self-creative,  ever  making  order  from  disorder.  The  otherheld  that  the  ‘real’  world  could  be  known  only  through  pure  reason,  not  through  directexperience,  and  was  God’s  geometric  creation,  permanently  mechanical  and  perfect  behind
our illusion of its disorder. This mechanical/religious worldview superseded the older one of living nature to become thefoundation of the whole Western worldview up to the present. Philosophers  such  as  Pythagoras,  Parmenides,  and  Plato  were  thus  the  founding  fathers  ofour  mechanical  worldview,  though  Galileo,  Descartes,  and  other  men  of  the  Renaissancetranslated  it  into  the  scientific  and  technological  enterprise  that  has  dominated  humanexperience ever since. What  if  things  had  gone  the  other  way?  What  if  Thales,  Anaximander,  and  Heraclitus,  theorganic philosophers who saw all the cosmos as alive, had won the day back in that ancientGreek debate? What if  Galileo, as he experimented with both telescope and microscope, had used the latterto seek evidence for Anaximander’s theory of biological evolution here on Earth, rather thanlooking  to  the  skies  for  confirmation  of  Aristarchus’s  celestial  mechanics?  In  other  words,what  if  modern  science  and  our  view  of  human  society  had  evolved  from  organic  biologyrather than from mechanical physics? We  will  never  know  how  the  course  of  human  events  would  have  differed  had  they  takenthis path, had physics developed in the shadow of biology rather than the other way around. Yet  it  seems  we  were  destined  to  find  the  biological  path  eventually,  as  the  mechanicalworldview we have lived with so long is now giving way to an organic view -- in all fairness,an organic view made possible by the very technology born of our mechanical view. The same technology that permits us to reach out into space has permitted us to begin seeingthe real nature of  our own planet to discover that it is alive and that it is the only live planetcircling our Sun. ·    ·    · The implications of  this discovery are enormous, and we have hardly even begun to pursuethem.  We  were  awed  by  astronauts’  reports  that  the  Earth  looked  from  space  like  a  livingbeing, and were ourselves struck by its apparently live beauty when the visual images werebefore  our  eyes.  But  it  has  taken  time  to  accumulate  scientific  evidence  that  the  Earth  is  alive  planet  rather  than  a  planet  with  life  upon  it,  and  many  scientists  continue  to  resist  thenew  conception  because  of  its  profound  implications  for  change  in  all  branches  of  science,not to mention all society. The  difference  between  a  planet  with  life  on  it  and  a  living  planet  is  hard  at  first  tounderstand.  Take  for  example  the  word,  the  concept,  the  practice  of  ecology,  which  hasbecome familiar  to us all  within just the few short  decades that  we have been aware of  ourpollution and destruction of the environment on which our own lives depend. 
Our  ecological  understanding  and  practice  has  been  a  big,  important  step  in  understandingour   relationship   to   our   environment   and   to   other   species.   Yet,   even   in  our   seriousenvironmental  concern, we still fall short  of  recognizing ourselves as part of  a much largerliving  entity.  It  is  one  thing  to  be  careful  with  our  environment  so  it  will  last  and  remainbenign;  it  is  quite  another  to  know  deeply  that  our  environment, like  ourselves, is  part of  aliving planet. The  earliest  microbes  into  which  the  materials  of  the  Earth’s  crust  transformed  themselvescreated  their  own  environments,  and  these  environments  in  turn  shaped  the  fate  of  laterspecies, much as cells create their  surround and are created by  it in our  own embryologicaldevelopment. As for physiology, we already know that the Earth regulates its temperature as well as any ofits warm-blooded creatures, such that it stays within bounds that are healthy for life despitethe  Sun’s  steadily  increasing  heat.  And  just  as  our  bodies  continually  renew  and  adjust  thebalance  of  chemicals  in  our  skin  and  blood,  our  bones  and  other  tissues,  so  does  the  Earthcontinually  renew  and  adjust  the  balance  of  chemicals  in  its  atmosphere,  seas,  and  soils.How these physiological systems work is now partly known, partly still to be discovered, asis also still the case with our bodies’ physiological systems. Certainly  it  is  ever  more  obvious  that  we  are  not  studying  the  mechanical  nature  ofSpaceship Earth but the self-creative, self-maintaining physiology of a live planet. Many  still  take  the  live  Earth  concept,  named  Gaia  after  the  Earth  goddess  of  early  Greekmyth, more as a poetic or spiritual metaphor than as a scientific reality. However, the nameGaia was never intended to suggest that the Earth is a female being, the reincarnation of  theGreat Goddess or Mother Nature herself, nor to start a new religion (though it would hardlyhurt  us  to  worship  our  planet  as  the  greater  Being  whose  existence  we  have  intuited  fromtime  immemorial).  It  was  intended  simply  to  designate  the  concept  of  a  live  Earth,  incontrast to an Earth with life upon it. Actually,  Gaia,  or  the  Roman  form,  Gea,  was  an  earlier  name  for  our  planet  than  Earth.  Itwas lost in the wandering of  words from ancient Greek through other languages to English.In Greek, our planet has always been called Gaia in its alternate spelling Ge, which we see inEnglish  words  taken  directly  from  Greek,  such  as  geology,  the  formation  of  the  Earth;geometry, the measurement of the Earth; and geography, the mapping of the Earth. In accordwith  our  own  practice  of  calling  planets  by  the  names  of  Greek  deities  in  their  Romanversions, we really should call the Earth Gea. Greek, like English, has always used the sameword for  Earth-as-world and Earth-as-ground -- the ancient Ge that  became the modern Gi,pronounced Yee. The English word Earth came from an ancient Greek root meaning workingthe  ground,  or  earth-ergaze  --  which  evolved  into  the  name  of  the  Nordic  Earth  goddess,Erda and then into the German Erde and the English Earth. Thus even the word Earth impliesa female deity. With  that  digression  intended  to  make  the  name  Gaia  more  acceptable  to  those  who  stillconsider the name and image somehow inappropriate for a scientific concept, let us look alsoat the myth itself -- the creation myth of Gaia’s dance. 
The  story  of  Gaia’s  dance  begins  with  an  image  of  swirling  mist  in  the  black  nothingnesscalled Chaos by the ancient Greeks -- an image reminding us of  modern photos of  galaxiesswirling in space. In the myth it is  the dancing goddess Gaia, swathed in white veils as shewhirls through the darkness. As she becomes visible and her dance grows ever more lively,her  body  forms  itself  into  mountains  and  valleys;  then  sweat  pours  from  her  to  pool  intoseas, and finally her flying arms stir up a windy sky she calls Ouranos -- still the Greek wordfor sky -- which she wraps around herself as protector and mate. Though she later banishes Ouranos -- Uranus, in Latin -- to her depths for claiming credit forcreation, their fertile union as Earth and Heaven brings forth forests and creatures includingthe giant Titans in human form, who in turn give rise to the gods and goddesses and finallyto mortal humans. From  the  start,  says  the  myth  --  true  to  human  psychology  --  people  were  curious  to  knowhow  all  this had happened and what the future would  bring. To satisfy their  curiosity,  Gaialet her knowledge and wisdom leak from cracks in the Earth at places such as Delphi whereher priestesses interpreted it for people. Our curiosity is still with us thousands of  years after this myth served as explanation of  theworld’s  creation.  And  in  a  sense,  Gaia’s  knowledge  and  wisdom  are  still  leaking  from  herbody -- not just at Delphi, but everywhere we care to look in a scientific study of  our livingplanet. The  new  scientific  story  of  Gaian  creation  has  other  parallels  to the ancient myth. We nowrecognize  the  Earth  as  a  single  self-creating  being  that  came  alive  in  its  whirling  dancethrough  space,  its  crust  transforming  itself  into  mountains  and  valleys,  the  hot  moisturepouring  from  its  body  to  form  seas.  As  its  crust  became  ever  more  lively  with  bacteria,  itcreated  its  own  atmosphere,  and  the  advent  of  sexual  partnership  finally  did  produce  thelarger life forms -- the trees and animals and people. The tale of Gaia’s dance is thus being retold as we piece together the scientific details of ourplanet’s  dance  of  life.  And  in  its  context,  the  evolution  of  our  own  species  takes  on  newmeaning  in  relation  to  the  whole.  Once  we  truly  grasp  the  scientific  reality  of  our  livingplanet and its physiology, our entire worldview and practice are bound to change profoundly,revealing  the  way  to  solving  what  now  appear  to  be  our  greatest  and  most  insolubleproblems. From  a  Gaian  point  of  view,  we  humans  are  an  experiment  --  a  young  trial  species  still  atodds  with  ourselves  and  other  species,  still  not  having  learned  to  balance  our  own  dancewithin  that  of   our  whole  planet.  Unlike  most  other  species,  we  are  not  biologicallyprogrammed to know what to do; rather, we are an experiment in free choice. This  leaves  us  with  enormous  potential,  powerful  egotism,  and  tremendous  anxiety  --  asyndrome that is recognizably adolescent. Human  history  may  seem  very  long  to  us  as  we  study  all  that  has  happened  in  it,  but  weknow  only  a  few  thousand  years  of  it  and  have  existed  as  humans  for  only  a  few  millionyears, while Earth has been self-creating and evolving for billions of years. We have scarcely
had  time  to  come  out  of  species  childhood,  yet  our  social  evolution  has  changed  us  so  fastthat we have leaped into our adolescence. Humans are not the first creatures to make problems for themselves and for the whole Gaiansystem,  as  we  will  see. We are, however -- unless  whales and dolphins beat  us to it in pastages  --  the  first  Gaian  creatures  who  can  understand  such  problems,  think  about  them,  andsolve them by free choice. In fact, the argument of this book is that our maturity as a speciesdepends on our accepting the responsibility for our natural heritage of behavioral freedom byworking consciously and cooperatively toward our own health along with that of our planet. Our  ability  to  be  objective,  to  see  ourselves  as  the  I or eye of  our  cosmos,  as  beingsindependent of  nature, has inflated our egos -- ego being the Greek word for I. We came toseparate the I from the it and to believe that ‘it’ -- the world apart from us, out there -- wasours to do  with as we pleased. We told ourselves we were either God’s favored children orthe smartest  and most powerful naturally-evolved creatures on  Earth. This egotistic attitudehas been very much a factor in bringing us to adolescent crisis. And  so  an  attitude  of  greater  humility  and  willingness  to  accept  some  guidance  from  ourparent planet will be an important factor in reaching our species maturity. The  tremendous  problems  confronting  us  now  --  the  inequality  of  hunger  on  one  side  andoverconsumption  on  the  other,  the  possibly  irreversible  damage  to  the  natural  world  wedepend on, just as our cells depend on the wholeness of  our bodies for their life -- are all ofour own making. These problems have become so enormous that many of us believe we willnot be able to solve them in time. Yet just at this time in our troubled world we stand on thebrink of  maturity, in a position to recognize that we are neither perfect nor omnipotent, butthat we can learn a great deal from a parent planet that is also not perfect or omnipotent buthas the experience of  billions of  years of  overcoming an endless array of  difficulties, smalland great. When  we  look  anew  at  evolution,  we  see  not  only  that  other  species  have  been  astroublesome  as  ours,  but  that  many  a  fiercely  competitive  situation  resolved  itself  in  acooperative scheme. The kind of  cells our  bodies are made of, for example, began with thesame kind of  exploitation among bacteria that characterizes our historic human imperialism,as we will see. In fact, those ancient bacteria invented technologies of energy production, transportation andcommunications,   including   a   WorldWideWeb   still   in   existence   today,   during   theircompetitive  phase  and  then  used  those  very  technologies  to  bind  themselves  into  thecooperative  ventures  that  made  our  own  existence  possible.  In  the  same  way,  we  are  nowusing essentially the same technologies, in our own invented versions, to unite ourselves intoa single body of humanity that may make yet another new step in Earth’s evolution possible.If  we look to the lessons of  evolution, we will gain hope that the newly forming worldwidebody  of  humanity  may  also  learn  to  adopt  cooperation  in  favor  of  competition.  Thenecessary   systems   have   already   been   invented   and   developed;   we   lack   only   theunderstanding,  motive,  and  will  to  use  them  consciously in achieving a cooperative speciesmaturity. 
It may come as a surprise that nature has something to teach us about cooperative economicsand  politics.  Sociobiologists,  who  have  told  us  much  in  recent  decades  about  humanity’sanimal heritage, have tended to paint us a bleak picture. Calling on our evolutionary heritageas  evidence  that  we  will  never  cure  ourselves  of  territorial  lust  and  aggression  toward  oneanother,  they  continue  to  predict  there  will  be  no  end  to  economic  greed  and  politicalwarfare.  But  it  is  the  aim  of  this  book  to  show  that  these  sociobiologists  have  presented  amisleading  picture  --  as  misleading  as  earlier  scientists’  one-sided  view  of  all  naturalevolution as "red in tooth and claw," the hard and competitive struggle among individuals onwhich we have modeled our modern societies. The  new  view  of  our  Gaian  Earth  in  evolution  shows,  on  the  contrary,  an  intricate  web  ofcooperative  mutual  dependency,  the  evolution  of  one  scheme after  another  that  harmonizesconflicting interests. The  patterns  of  evolution  show  us  the  creative  maintenance  of  life  in  all  its  complexity.Indeed  nature  is  more  suggestive  of  a  mother  juggling  resources  to  ensure  each  familymember’s  welfare  as  she  works  out  differences  of  interest  to  make  the  whole  family  acooperative  venture,  than  of  a  rational  engineer  designing  perfect  machinery  that  obeysunchangeable laws. For scientists who shudder at such anthropomorphism -- defined as reading human attributesinto nature -- let  us not forget that mechanomorphism -- reading mechanical attributes intonature  --  is  really  no  better  than  second-hand  anthropomorphism,  since  mechanisms  arehuman  products.  Is  it  not  more  likely  that  nature  in  essence  resembles  one  of  its  owncreatures than that it resembles in essence the nonliving product of one of its creatures? The  leading  philosophers  of  our  day  recognize  that  the  very  foundations  of  our  knowledgeare  quaking  --  that  our  understanding  of  nature  as  machinery  can  no  longer  be  upheld.  Butthose  who  cling  to the old understanding seriously fear that  all  human life will break  downwithout a firm foundation for our knowledge of  nature in mathematical reference points andlaws of  physics. They fail to see what every child can see -- that hummingbirds and flowerswork, that nature does very well in ignorance of human conceptions of how it must work. Machinery is in fact the very antithesis of life. One must always hope a machine, between itstimes of use, will not change, for only if it does not change will it continue to be of use. Leftto  its  own  devices,  so  to  speak,  it  will  eventually  be  destroyed  by  its  environment.  Livingorganisms,  on  the  other  hand,  cannot  stay  the  same  without  changing  constantly,  and  theyuse  their  environment  to  their  advantage.  To  be  sure,  our  machinery  is  getting  better  andbetter at imitating life; if  this were not so, a mechanical science could not have advanced inunderstanding.  But  mechanical  models  of  life  continue  to  miss  its  essential  self-creativity.Fortunately, our survival struggle is leading to intuitive grasps of  nature’s principles that areshifting  our  technologies  into  serving  cooperative  life  purposes,  especially  clearly  in  thephenomenon of the global Internet. ·    ·    · 

No  other  creatures  take  more  than  they  need,  and  this  must  be  our  first  lesson.  Our  secondlesson  is  to  learn  and  emulate  nature’s  fine-tuned  recycling  economics,  largely  powered  byfree  solar  energy.  This  does  not  mean  going  back  to  log  cabins  or  tipis,  but  to  eliminatewaste and junk as we creatively develop diverse human lifestyles of  elegant and sustainablesimplicity. The purpose of this book is to help pave the way to a happier and healthier future through anunderstanding  of  our  relationship  to  the  Gaian  Earth  system  that  spawned  us  and  of  whichwe  are  part  --  a  great  being  that,  however  it  may  annoy  us,  is  not  ours  to  dominate  andcontrol.  We  can  damage it, but we cannot  run it; we had better try to find out what it is  allabout and what we are doing, and may do, to survive happily within it. The  aggressive  and  destructive  motives  of  domination,  conquest,  control,  and  profit  havebeen presented to us as unchangeable human nature by historians as well as by sociologists.But  mounting  evidence  from  archaeology  strongly  suggests  that  human  societies  were,  forthe  greater  part  of  civilized  history,  based  more  on  cooperation  and  reverence  for  life  andnature  than  on  competition  and  obsession  with  death  and  technology.  It  seems  our  humanchildhood, which lasted far longer than has our recent adolescence, was guided by religiousimages  of  a  near  and  nurturing  Mother  Goddess  before  a  cruel  and  distant  Father  Godreplaced  her  in  influence.  As  we  come  out  of  adolescence  we  often  recognize  the  value  ofwhat  we  were  taught  in  childhood,  and  this  new  historical  view  of  ourselves  supports  thegeneral thesis of this book. Like Gaian creation itself, human understanding or knowledge ever evolves. Parts  of  the  story  you  are  about  to  read  will  already  have  changed  by  the  time  you  read  it.Others  will  change  in  the  years  to  come  as  new  things  about  Earth-Gaia  and  about  humanhistory are discovered. Any of  us is free to help find new pieces of  the story, bring those weknow up to date, and then reinterpret the evidence as a whole, for in the last analysis, everyinterpretation has its personal color and flavor. The  next  chapter  is  concerned  with  cosmic  beginnings  as  a  living  context  for  our  livingplanet; succeeding chapters, up to half  of  this book, tell of  Gaian evolution over billions ofyears  before  we  humans  become  part  of  it.  Those  interested  in  the  story  of  human  societymay  be  tempted  to  skip  this part of  the story,  but the scientific account of  evolution in thisbook  is  not  separable  from  our  human  social  history.  The  details  of  our  biological  heritagefrom ancient bacteria on are given because therein lie the clues to a better human future. It isonly within this context that we can appreciate our newness and our differences from the restof nature, to see at the same time how we can benefit from its vast experience to fit ourselvesin more harmoniously. It is on this that everything now depends; species suicide is our only alternative, and there isreally  no  reason  to  make  a  dramatic  adolescent  exit  instead  of  growing  up,  taking  on  adultresponsibility,  and  reaping  the  pleasures  of  productive  maturity.  Let  us  then  follow  theevolution  of  Gaian  creation  and  of  our  own  history  as  social  and  technological  creatureswithin this great dance of  life. Let’s see what meaning and guidance all this may give in ourpresent  crisis,  to  speed  us  on  our  way  into  full  maturity,  to  a  happier  future  in  which  wepromote our own health and that of our planet within the greater cosmic dance. 
2 Cosmic Beginnings The  Greek  myth  of  Gaian  creation  began  with  an  image  of  the  goddess  whirling  out  ofdarkness,  wrapped  in  flowing  white  veils.  In  ancient  India  the  very  beginning  of  theuniverse, or cosmos, was imagined as swirls in a sea of milk. We will probably never know how ancient peoples understood that  the first forms to createthemselves were whirling white spirals. However they knew, we in our own day can actuallysee  just  what  those  first  swirling  white  forms  out  in  space  really  were.  We  call  themprotogalaxies,  or  first  galaxies.  And  we  have  learned  that  whole  protogalaxies  do  dance  aswhirling  white  forms  in  space  long  before  planets  evolve  within  them,  and  longer  beforecreatures can evolve as parts of planets. The  material  universe,  as  most  scientists  describe  it  today,  began  with  a  huge  explosion  ofenergy they call the Big Bang. Some say this explosion was more like a great wave of energyrising out of  an even greater sea of  energy; others talk about continuous creation as well asan  initial  event;  some  of  those  tell  us  matter  is  continually  created  from  an  underlyingintelligent  source,  such  as  consciousness.  Whatever  happened  to  start  our  universe,  ourcurrent  scientific  story  is  that  it  began  as  very  hot,  explosively  fast-moving  energy that  hasbeen spreading and cooling ever since, creating spacetime as it does so. The  ancient  Greek  word  chaos  first  denoted  nothingness  --  the  great  void before there wasanything  material  in  the  universe.  (They  also  spoke  of  a  fullness  of  potential  named  theplenum.)  Later,  chaos  came  to  mean  anything  so  mixed  up  or  messed  up  that  it  has  nopattern, no  order, no  meaning, at least  none that  we humans can detect. (The word randomcarries  the  same  meaning  of  lack  of  order  or  pattern.)  With  chaos  theory,  we  began  to  seechaos as having hidden pattern -- pattern we are unable to detect. All these ways of using theword   chaos   have   been   used   to   describe   the   beginning   of   the   universe.   There   wasnothingness, as no-thing had been formed, yet the dance of energy that would create order orpattern had begun. The word cosmos was coined as the opposite of chaos, to mean order as opposed to disorder,form  and  pattern  instead  of  formlessness  and  lack  of  pattern,  things  instead  of  no-things,  aworld instead of  no world. The first Greek philosophers understood creation as a process ofturning disorderly or  non-orderly chaos into an orderly cosmos,  and we have no better wayof  describing it today. For as the chaotic hot energy cooled and spread, it turned itself  into agreat dance of spiraling cosmic patterns 
Our best explanation of  how this happened begins with the idea of  imbalance, as it also didin many ancient philosophies. In the early chaos, as the explosive energy spread and cooled,there  must  have  been  pockets  of  more  or  less  energy,  or,  as  energy  formed  itself  intoparticles,  pockets  of  more  or  fewer  particles,  or  different  numbers  of  different  kinds  ofparticles.  Any  such  imbalances  would  have  set  up  currents  of  motion  among  the  heavierslower-moving particles in the overall force of out-thrusting universal energy. Particles, or subatomic particles, are the tiniest whirling packets of  pure energy from whichall matter -- all the stuff of the universe -- is made. The whirling energy of particles created anew  force,  or  forces,  among  particles,  so  that  when  early  cosmic  particles  passed  closeenough to each other to attract each other, some of  them held together as simple atoms. Wecan  imagine  this  as  rather  like  people  dancing,  attracting  each  other  when  close  enough  towhirl each other about. Other particles were pushed apart, while most particles kept zoomingalong alone among the first slower atoms of floating gas. The  physical  force  that  still works at the greatest distance among the clumps of  matter thatformed  in  our  universe  is  the  one  we  call  gravitation;  two  others  --  the  strong  and  weaknuclear forces -- have their effect inside atoms and stars. The fourth and last to develop wasthe electrical force, which works to combine atoms into molecules, but that is getting aheadof  our  story.  Some  new  theories  describe  gravitation  as  a  basic  property  of  the  zero-pointenergy  field,  rather  than  as  a  force.  It  is  wise  to  note  that  our  theories  are  still  evolvingrapidly and that this story may still change dramatically. Natural,  or  physical,  influences,  then,  on  great  and  small  levels,  pulled  and  pushed  theuniverse  into  patterns  great  and  small.  As  the  number  of  atoms,  and  the  explosive  younguniverse  itself,  grew  larger,  imbalances  here  and  there  drifted  and  swirled  the  atoms  intogreat  gas  clouds.  These  clouds  formed  more  swirls  within themselves, some of  the thickestbecoming protogalaxies sparking with light. Light  is  made  of  energy  packets  we  call  photons.  New  photons  can  be  created  like  tinysparks  when  other  fast-flying  particles  bump  into  one  another  very  hard.  Photons  make  theprotogalaxies  visible,  and  it  now  seems  they  are  created  continually  everywhere  in  theuniverse, even inside us. If  an ancient storyteller could have looked through a modern telescope to see a protogalaxyforming, he might well have said, "Ah, you see, there is the white-veiled Gaia whirling aboutin her dance." A modern scientist, on  the other hand, sees such protogalaxies as the naturalresult of imbalances and forces in the great cosmic energy field -- a swirling of disorderly orchaotic matter into orderly or cosmic patterns; a sea of  energy whose forceful currents formnatural whirlpools large and small. This is especially important to recognize: that the largestpatterns -- the great  swirling clouds within which protogalaxies took shape -- were formingalmost as soon as the tiniest particles and atoms began whirling into being. Our universe, orcosmos, has always been a dance of interactions among the large and small moving patterns,each  contributing  to  the  other’s  formation.  It  was  not  built  from  the  top  down  or from  thebottom up, but evolved as a dance between great and small. But  can  we  really  see  protogalaxies  forming  billions  of  years  ago  while  looking  throughtelescopes now? Is it possible to look back into time, and so very far back at that? 
We  can.  With  modern  telescopes  we  can  see  back  to  nearly  the  beginning  of  the  universe!Magical  as  it  seems,  the  explanation  for  this  strange  power  we  have  is  quite  simple.Everything we see comes to our eyes as light photons that have bounced off  or come out ofwhatever we are looking at. Light bounces off  a cat or a cloud, for instance, and comes outof a candle flame or a star. But what exactly is light? We’ve  already  talked  about  photons  as  energy  particles  created  when  other  particles  bumpinto  one  another.  Stars  and  flames  are  made  of  atoms  and  particles  moving  so  fast  thatunusual numbers of photons are created in them. Photons travel through space in waves of  different lengths and strengths, some of  which wesee as different colors and brightnesses when they get to our eyes. Though light is extremelyfast by human standards -- at 186,000 miles per second -- it still takes some time to get froman object that created it, or from one it has bounced off, to our eyes. The time it takes light totravel holds the secret of looking back in time. It takes about seven minutes for light to get from the Sun to our eyes. Every time we look atthe  Sun,  we  are  seeing  the  light  pattern  that  left  it  seven  minutes  ago.  That  means  we  areseeing the Sun the way it was seven minutes ago and not as it is the moment we are lookingat it. The Sun is the star nearest to us. Other stars are so far away that their light takes yearsto get to our eyes -- thousands of  years, even millions of  years, depending on how far awaythe star is. The distance of  stars, in fact, is measured in light-years -- the number of  years ittakes for their light to reach us. Whenever you look up at the night sky, even without a telescope, you are looking back intotime.  You  see  each  star  as  it  was  when  the  light  reaching  your  eyes  left  it.  By  looking  atmany  stars,  you  are  looking  at  many  times  past.  How  far  past  depends,  of  course,  on  thedistance of  each star. The farther away the star is, the longer ago it sent out the informationabout what it looks like -- that is, the light pattern of the star that has finally found your eyes.Our  own  galaxy,  the  Milky  Way,  is  shaped  like  a  giant  swirling  pinwheel  within  anenormous but less visible spherical torus. It takes light a hundred thousand years to cross it.If  there are any creatures on another planet -- say, three thousand light years from us, in ourown  galaxy  --  who  are  looking  at  us  right  now,  what  do  they  see?  If  their  telescopes  arepowerful  enough,  they  may  be  seeing  a  storyteller  speaking  of  Gaia’s  dance  in  an  ancientGreek village! ·    ·    · Powerful telescopes can pick up light that is too weak from its long travels for our eyes aloneto  see  --  even  light  from  stars  and  galaxies  so  old  that  they  were  among  the  first  stars  andgalaxies,  or  protogalaxies,  in  the  universe,  so  old  they  are  just  beginning  cosmic  creation.Let’s watch one of them in its evolving dance. Inside the spiraling  veils of  hydrogen gas, which is  made of  the first and simplest atoms inthe universe, smaller rolling waves create a ring of  denser atoms, of  more intense energy, at
the center. Around it, great  loose balls of  gas form, something like the way dust balls formunder a bed. In the center of  such balls, the lively atoms and particles are pulled ever closertogether by physical forces until it gets very hot from all the crowding. As these gas balls gethotter and heavier, they become stars. Wherever we look back into ancient skies, we see galaxies taking shape and growing throughdifferent  stages.  Inside  the  first  generation  of  stars  the  incredible  heat  and  pressure  beginscausing  what  we  now  know  as  nuclear  reactions  --  the  transformation  of  one  kind  of  atominto  another.  The  first  such  reaction  squeezes  hydrogen  atoms  together  to  form  heliumatoms, which is what our Sun is doing all the time. This process creates heat and light, someof  which  escapes  from  the  stars  in  spreading  waves  of  photons.  The  burning  gases  on  theoutside of  stars pull away in waves, like the skin a snake sheds, because of  the gravitationalpull  of  matter,  such  as  other  stars,  around  them.  Stars  must  constantly  keep  their  balancebetween tremendous forces pulling them apart and other forces squeezing them together. Eventually,  the  first-generation  stars  collapse  from  growing  so  heavy  they  can  no  longerkeep  their  balance  between  the  internal  and  external  pulling.  Their  atoms  mass  ever  moretightly  together.  Eventually  the  star  implodes  and  then  explodes,  scattering  stardust  likeseeds back into the galactic gas cloud. The mother cloud becomes ever thicker with the gasand dust of such explosions and gives birth to a new generation of stars as the old ones die. The  next  generation  of  stars  forges  its  atoms  into  yet  bigger  and  heavier  kinds  until  all  thedifferent  kinds  of  atoms  --  all  the  different  elements  of  the  universe  --  have  been  formedfrom  the  original  hydrogen  atoms.  Meanwhile,  the  central  ring  of  gas  clouds  in  a  galaxygrows  larger  and  more  complicated,  becoming  a  kind  of  skeleton  that  holds  the  galaxytogether. At last many of the atoms from exploding stars are too heavy to form new stars andbegin  to  form  themselves  into  planets  circling  around  stars  that  are  made  of  the  lightestelements. This is why our Sun, although it is not a first-generation star, is made like one. Theheavier elements of its parent star are in its planets. So  protogalaxies  evolve  into  galaxies  --  whirling,  weaving,  squeezing,  exploding,  pulsingtheir insides into ever richer patterns and parts. Molecules formed of  groups of  atoms, eventhe  kinds  of   molecules  from  which  the  familiar  living  systems  of   the  Earth  formedthemselves, are created in complex galactic processes, as we shall see later. For now, let usremember that the stars we see in our night skies are only a few of  those in our own galaxy,and, as we see them with our eyes, they don’t begin to hint of our galaxy’s complex patternsand processes. Far beyond those stars lie billions of  other galaxies, each made of  billions ofstars  and  planets  wheeling  in  their  clouds  of  gas  and  dust,  creating  who  knows  how  muchlife. Astronomers,  whose  name  comes  from  the  Greek  word  for  star,  astron,  now  know  thedifferent shapes of  individual galaxies and can see them clustered into larger patterns. Thereare even clusters of  clusters, called superclusters, even some greater pattern that extends allthrough the universe, parts of it appearing in the images we have been able to make of them,like  huge  curved  strings  and  the  holes  in  Swiss  cheese.  These  still  crude  images,  we  mayhope, will one day resolve themselves into an understanding of the greatest patterns of all. Though  we  don’t  know  what  these  patterns  are  as  yet,  it  appears  increasingly  obvious  that
they  form  a  cosmic  unity  of  process  and  pattern  rather  than  a  chaotic  spray  of  unrelatedparts.  A  single  notion  that  would  account  for  such  pattern  is  the  concept  of  mutualconsistency,  which  is  at  the  heart  of  ‘bootstrap  philosophy,’  a  mathematical  physicsconception  popularized  by  Fritjof  Capra. This is  the concept that  the universe is  a dynamicweb of events in which no part or event is fundamental to the others since each follows fromall  the  others,  the  relations  among  them  determining  the  entire  cosmic  pattern  or  web  ofevents. In this conception, all possible patterns of  cosmic matter-energy will form, but onlythose working out their consistency with surrounding patterns will last. Mutual means shared; consistency means agreement or harmony. Thus we can sense mutualconsistency  as  the  shared  harmony  worked  out  among  cosmic  patterns.  The  notion  can  bemade  more  familiar  by  considering  the  shared  social  harmony  worked  out  by  groups  ofpeople when each individual adjusts his or her behavior to that of the others in a harmoniousway. Anyone who cannot do this will tend to be excluded from the group, unless the deviantcan force the others to make their behavior consistent with his or hers, in which case a new(if  tenuous)  mutual  consistency  would  have  been  worked  out.  At  present  our  species is  notbehaving  in  a  way  that  is  mutually  consistent  with  the  other  species  and  features  of  ourplanet, and the consequences may preclude our survival. Increasingly,  then,  we  are  discovering  with  modern  instruments  and  measurements  whatancient  peoples  told  in  myth  --  that  all  of  the  universe  is  one  great  pattern,  a  single  danceevolving into ever richer complexity over billions of years. Until  recently,  scientists  had  a  rather  different  idea  of   how  nature  forms  itself   --  amechanical  idea  of  wholes  built  from  parts  as  machinery  is  built,  though  coming  togetherautomatically without any designer or builder. We shall learn more of this way of looking atthings later, when we look at human history. For now what matters is to understand this newway of seeing that all evolution -- of the great cosmos and of our own planet within it -- is anendless dance of  wholes that separate themselves into parts and parts that join into mutuallyconsistent  new wholes. We can see it as a repeating, sequentially spiraling pattern: unity ->individuation  ->  competition  ->  conflict  ->  negotiation  -> resolution  -> cooperation -> newlevels of unity, and so on. ·    ·    · We have already seen how the swirling gas clouds that evolved into galactic clusters beganforming  as  soon  as  particles  joined  together  to  form  the  first  simple  hydrogen  atoms.  Theearly  universe  thus  evolved  by  forming  more  and  more  parts  within  itself,  many  of  thembecoming  new  wholes  in  their  own  right  if  they  proved  consistent  with  other  wholessurrounding  them.  As  stars  form  within  a  protogalaxy,  it  becomes  a  galaxy  --  a  great  starsystem  that  in  turn  forms  within  itself  relatively  independent  single or  double star systems,some with planets such as our solar system. Later we will see how a planet’s crust can formthe  packets  of  life  we  call  microbes,  or  bacteria,  and how these in turn can join together inbuilding larger living cells, which in their turn evolve into larger creatures. The universe of  all these parts within parts, or wholes within wholes, reminds us of  nesting
boxes  or  of  the  Chinese  or  Russian  dolls  of  various  sizes  that  fit  inside  one  another.  Thephilosopher  scientist  Arthur  Koestler  suggested  we  call  each  whole  thing  within  nature  aholon -- a whole made of  its own parts, yet itself  part of  a larger whole. A universe of  suchholons within holons is, then a holarchy -- in Greek, a source of wholes -- one original wholethat  formed ever more complicated smaller wholes within itself,  some becoming holarchiesthemselves. We will use this image and the terms holon and holarchy throughout this book toshow the embeddedness of natural entities. Our  own  solar  system,  with  its  Sun-star  nucleus  surrounded  by  planets,  Moons,  asteroids,comets, and space dust,  is a holon within the larger holon of  our galaxy. It was born of  thescattered  gases  and  stardust  of  an  older  star  that  became  a  supernova  exploding  about  fivebillion years ago, maybe even more than one of  them. The Earth is still so radioactive fromthis  explosion  that  its  core  is  kept  hot  by  continuing  nuclear  reactions,  and  many  atoms  allover its surface -- in rocks and trees and even in our own bodies -- are still exploding. In our bodies it has been estimated that three million potassium atoms explode every minute.These explosions are much too tiny for us to see, feel, or perceive in any other way. They arenot  arranged  to  blow  up  neighboring  atoms  as  well  as  themselves,  as  in  our  powerfulman-made nuclear chain reactions. Still, they are evidence that stardust is not just fairy-talemagic; it is what we are really made of -- we and everything else that is part of our world. Between five and four and a half  billion years ago, some of  the gas and dust from that greatstar explosion gathered into an Earth-ball made of twelve different kinds of atoms, or twelveelements. As it condensed, it grew heavier and spun around faster. The heat of  pressure andnuclear  reactions  inside  it  melted  the  packed  matter  into  a  fiercely  burning  liquid.  But  theoutside of  this fiery ball, touching cold space, cooled off  as a thin crusty skin, a bit the wayhomemade pudding forms a skin as it cools, or the way fat hardens on top of  cooling gravy.The Earth’s skin was made of rock -- a crust of rock around a hot, molten mantle of magma,with its heaviest elements at its solidifying core. While it was still very thin, this crust melted again and again, each time letting the heaviestmetal  elements  sink  back  towards  the  core  while  lighter  elements  formed  a  foam  of  rockaround  those  fiery  insides.  Today’s  Earth  has  a  thicker  crust,  broken  up  into  great  tectonicplates that  ride  on  the  denser  mantle  surrounding  the  solid  core.  We  can  still  see  the  hotliquefied elements of  the mantle pouring out through volcanoes puncturing the crust. And inEarthquakes we can feel the motion of  the great  tectonic plates as they slide about creatingnew geological formations. In the myth of  Gaia’s dance, as her body forms mountains and valleys, the seas are formedfrom her warm moisture. Just so, it seems, the seas eventually pooled on the young Earth. At first, when the Earth’s crust cracked here and there, the liquid magma insides oozed out aslava. Lava, as the pressure that keeps it together is released, separates into heavy atoms thatcool  into  more  crusty  rock,  into  water  that  hisses  up  as  steam,  and  into  other  atoms  lightenough  to  float  over  or  off  the  surface  of  the  planet  as  gases.  We  now  believe  the  watersteaming  off  the  hot  crust  stayed  high  above  an  early  atmosphere  of  poisonous  (from  ourpoint of  view) gases for what may have been a long time, but eventually formed clouds thatcondensed  into  rain.  The  rain  poured  down  so  hard  and  for  so  long  that  the  seas  began
pooling  on  top  of  the  heavier  rock.  As  more  and  more  lava  oozed  through  cracks  in  theEarth’s  crust,  the  crust  itself  grew  thicker  and  lumpier;  as  new  clouds  gathered  and  fell  incycles, the seas grew ever bigger and deeper. As  the  Earth’s  crust  grew  thicker,  new  streams  of  lava  broke  through  it  with  greater  force.Spitting  volcanoes  shot  their  fiery  insides  high  into  the  air,  forming  mountains  as  the  lavacooled and hot ashes settled down. More mountains were formed when Earthquakes crackedthe crust and slid parts of it over one another, and when the crust heaved and bulged withoutbreaking. Rocks sliding over one another were ground into sand and dust. Huge dust  clouds were created when meteors of  all  sizes -- some of  them as large as smallplanets -- struck the Earth, smashing into the crust, pitting it, breaking it up,  mixing it withthe space rocks themselves. The gases floating around the planet, those just heavy enough to be held by its gravity, werenothing  like  the  air  we  breathe  now.  There  was  no  oxygen,  but  only  a  mixture  of  gaseswhich,  had  the  Earth  not  come  alive,  would  have eventually settled into something like  theatmosphere  on  Venus  and  Mars  today  --  an  atmosphere  without  oxygen  around  a  lifelessplanet. What, then, did the Earth have that Venus and Mars did not? James Lovelock, author of  theGaia hypothesis called one of its special features the ‘Goldilocks effect:’ Venus was too hot,Mars  was  too  cold,  but  the  Earth  was  just  the  right  temperature  for  life.  Another  was  itswater, enough of it in liquid form, in this just-right temperature, to carry supplies from placeto  place  as  blood  is  carried  through  a  body.  The  constant  transport  of  supplies  must  bepossible for life to evolve. Everything  of  Earth’s  surface  --  oceans  and  rivers,  mountains  and  fertile  fields,  forests  andflowers,  creatures  that  float  or  fly  or  crawl  or  climb,  everything,  including  ourselves,  isactually  made  from  the  same  original  but  recycled  supplies,  except  for  the  small  input  ofmeteors. Our world has created itself as new arrangements of the same atoms that started outinside a star, then formed the molten metal, crusty rock, and gases of  a newborn planet -- aplanet that covered itself  in seas as we have seen and is now ready to go on with its dance oflife.  Let’s  follow  this  great  Gaian  recycling  system  to  see  just  how  stardust  continues  totransform itself into a living planet -- into all the amazing complexity of our beautiful world.

! Ecological modernization

!! https://en.wikipedia.org/wiki/Ecological_modernization

From Wikipedia, the free encyclopedia

Part of a series on
Green politics
Sunflower symbol
Core topics
Four pillars
Perspectives
Organizations
Related topics

    Anti-environmentalism Climate change mitigation Conservation movement Eco-terrorism Ecocentrism Ecological economics Environmentalism Environmental issues Environmental justice Ecological modernization Environmental movement Green state Green theory Localism

    vte

Ecological modernization is a school of thought in the social sciences that argues that the economy benefits from moves towards environmentalism.[citation needed] It has gained increasing attention among scholars and policymakers in the last several decades internationally. It is an analytical approach as well as a policy strategy and environmental discourse (Hajer, 1995).
Contents

    1 Origins and key elements
    2 Additional elements
    3 Criticisms
    4 See also
    5 References

Origins and key elements

Ecological modernization emerged in the early 1980s within a group of scholars at Free University and the Social Science Research Centre in Berlin, among them Joseph Huber, Martin Jänicke [de] and Udo E. Simonis [de]. Various authors pursued similar ideas at the time, e.g. Arthur H. Rosenfeld, Amory Lovins, Donald Huisingh, René Kemp, or Ernst Ulrich von Weizsäcker. Further substantial contributions were made by Arthur P.J. Mol, Gert Spaargaren and David A Sonnenfeld (Mol and Sonnenfeld, 2000; Mol, 2001).

One basic assumption of ecological modernization relates to environmental readaptation of economic growth and industrial development. On the basis of enlightened self-interest, economy and ecology can be favourably combined: Environmental productivity, i.e. productive use of natural resources and environmental media (air, water, soil, ecosystems), can be a source of future growth and development in the same way as labour productivity and capital productivity. This includes increases in energy and resource efficiency as well as product and process innovations such as environmental management and sustainable supply chain management, clean technologies, benign substitution of hazardous substances, and product design for environment. Radical innovations in these fields can not only reduce quantities of resource turnover and emissions, but also change the quality or structure of the industrial metabolism. In the co-evolution of humans and nature, and in order to upgrade the environment's carrying capacity, ecological modernization gives humans an active role to play, which may entail conflicts with nature conservation.

There are different understandings of the scope of ecological modernization - whether it is just about techno-industrial progress and related aspects of policy and economy, and to what extent it also includes cultural aspects (ecological modernization of mind, value orientations, attitudes, behaviour and lifestyles). Similarly, there is some pluralism as to whether ecological modernization would need to rely mainly on government, or markets and entrepreneurship, or civil society, or some sort of multi-level governance combining the three. Some scholars explicitly refer to general modernization theory as well as non-Marxist world-system theory, others don't.

Ultimately, however, there is a common understanding that ecological modernization will have to result in innovative structural change. So research is now still more focused on environmental innovations, or eco-innovations, and the interplay of various societal factors (scientific, economic, institutional, legal, political, cultural) which foster or hamper such innovations (Klemmer et al., 1999; Huber, 2004; Weber and Hemmelskamp, 2005; Olsthoorn and Wieczorek, 2006).

Ecological modernization shares a number of features with neighbouring, overlapping approaches. Among the most important are

    the concept of sustainable development
    the approach of industrial metabolism (Ayres and Simonis, 1994)
    the concept of industrial ecology (Socolow, 1994)

Additional elements

A special topic of ecological modernization research during recent years was sustainable household, i.e. environment-oriented reshaping of lifestyles, consumption patterns, and demand-pull control of supply chains (Vergragt, 2000; OECD 2002). Some scholars of ecological modernization share an interest in industrial symbiosis, i.e. inter-site recycling that helps to reduce the consumption of resources via increasing efficiency (i.e. pollution prevention, waste reduction), typically by taking externalities from one economic production process and using them as raw material inputs for another (Christoff, 1996). Ecological modernization also relies on product life-cycle assessment and the analysis of materials and energy flows. In this context, ecological modernization promotes 'cradle to cradle' manufacturing (Braungart and McDonough, 2002), contrasted against the usual 'cradle to grave' forms of manufacturing - where waste is not re-integrated back into the production process. Another special interest in the ecological modernization literature has been the role of social movements and the emergence of civil society as a key agent of change (Fisher and Freudenburg, 2001).

As a strategy of change, some forms of ecological modernization may be favored by business interests because they seemingly meet the triple bottom line of economics, society, and environment, which, it is held, underpin sustainability, yet do not challenge free market principles. This contrasts with many environmental movement perspectives, which regard free trade and its notion of business self-regulation as part of the problem, or even an origin of environmental degradation. Under ecological modernization, the state is seen in a variety of roles and capacities: as the enabler for markets that help produce the technological advances via competition; as the regulatory (see regulation) medium through which corporations are forced to 'take back' their various wastes and re-integrate them in some manner into the production of new goods and services (e.g. the way that car corporations in Germany are required to accept back cars they manufactured once those vehicles have reached the end of their product lifespan); and in some cases as an institution that is incapable of addressing critical local, national, and global environmental problems. In the latter case, ecological modernization shares with Ulrich Beck (1999, 37-40) and others notions of the necessity of emergence of new forms of environmental governance, sometimes referred to as subpolitics or political modernization, where the environmental movement, community groups, businesses, and other stakeholders increasingly take on direct and leadership roles in stimulating environmental transformation. Political modernization of this sort requires certain supporting norms and institutions such as a free, independent, or at least critical press, basic human rights of expression, organization, and assembly, etc. New media such as the Internet greatly facilitate this.
Criticisms

Critics argue that ecological modernization will fail to protect the environment and does nothing to alter the impulses within the capitalist economic mode of production (see capitalism) that inevitably lead to environmental degradation (Foster, 2002). As such, it is just a form of 'green-washing'. Critics question whether technological advances alone can achieve resource conservation and better environmental protection, particularly if left to business self-regulation practices (York and Rosa, 2003). For instance, many technological improvements are currently feasible but not widely utilized. The most environmentally friendly product or manufacturing process (which is often also the most economically efficient) is not always the one automatically chosen by self-regulating corporations (e.g. hydrogen or biofuel vs. peak oil). In addition, some critics have argued that ecological modernization does not redress gross injustices that are produced within the capitalist system, such as environmental racism - where people of color and low income earners bear a disproportionate burden of environmental harm such as pollution, and lack access to environmental benefits such as parks, and social justice issues such as eliminating unemployment (Bullard, 1993; Gleeson and Low, 1999; Harvey, 1996) - environmental racism is also referred to as issues of the asymmetric distribution of environmental resources and services (Everett & Neu, 2000). Moreover, the theory seems to have limited global efficacy, applying primarily to its countries of origin - Germany and the Netherlands, and having little to say about the developing world (Fisher and Freudenburg, 2001). Perhaps the harshest criticism though, is that ecological modernization is predicated upon the notion of 'sustainable growth', and in reality this is not possible because growth entails the consumption of natural and human capital at great costs to ecosystems and societies.

Ecological modernization, its effectiveness and applicability, strengths and limitations, remains a dynamic and contentious area of environmental social science research and policy discourse in the early 21st century.
See also

    Bright green environmentalism
    Eco-efficiency
    Eco-innovation
    Ecological design
    Ecological civilization
    Ecomodernism
    Environmental economics
    Environmental governance
    Environmental policy
    Environmental politics
    Environmental racism in Europe
    Environmental sociology
    Environmental technology
    Industrial ecology
    Reflexive modernization
    Restoration ecology
    Sustainable development

References
	
This article includes a list of references, related reading or external links, but its sources remain unclear because it lacks inline citations. Please help to improve this article by introducing more precise citations. (April 2009) (Learn how and when to remove this template message)

    Ayres, R. U. and Simonis, U. E., 1994, Industrial Metabolism. Restructuring for Sustainable Development, Tokyo, UN University Press.
    Beck, U., 1999, World Risk Society, Cambridge, UK, Polity Press, ISBN 0-7456-2221-6.
    Braungart, M., and McDonough, W., 2002, Cradle to Cradle. Remaking the way we make things, New York, N.Y., North Point Press.
    Christoff, Peter (1996). "Ecological modernisation, ecological modernities". Environmental Politics. 5 (3): 476–500. doi:10.1080/09644019608414283. ISSN 0964-4016.
    Bullard, R., (ed.) 1993, Confronting Environmental Racism: Voices from the Grassroots, Boston, South End Press.
    Dickens, P. 2004, Society & Nature: Changing Our Environment, Changing Ourselves, Cambridge, UK, Polity, ISBN 0-7456-2796-X.
    Everett, J., and Neu, D., 2000, "Ecological Modernization and the Limits of Environmental Accounting?", Accounting Forum, 24(1), pp. 5–29.
    Fisher, D.R., and Freudenburg, W.R., 2001, "Ecological modernization and its critics: Assessing the past and looking toward the future", Society and Natural Resources, 14, pp. 701–709.
    Foster, J.B., 2002, Ecology Against Capitalism, New York, Monthly Review Press.
    Gleeson, B. and Low, N. (eds.) 1999, Global Ethics and Environment, London, Routledge.
    Hajer, M.A., 1995, The Politics of Environmental Discourse: Ecological Modernization and the Policy Process, Oxford, UK, Oxford University Press, ISBN 0-19-827969-8.
    Harvey, D., 1996, Justice, Nature and the Geography of Difference, Malden, Ma., Blackwell, p. 377-402.
    Huber, J., 2004, New Technologies and Environmental Innovation, Cheltenham, UK, Edward Elgar.
    Klemmer, P., et al., 1999, Environmental Innovations. Incentives and Barriers, Berlin, Analytica.
    Mol, A.P.J., 2001, Globalization and Environmental Reform: The Ecological Modernization of the Global Economy, Cambridge, Ma., MIT Press, ISBN 0-262-13395-4.
    Mol, A.P.J., and Sonnenfeld, D.A., (eds.) 2000, Ecological Modernisation around the World: Perspectives and Critical Debates, London and Portland, OR, Frank Cass/ Routledge, ISBN 978-0-7146-8113-9.
    Mol, A.P.J., Sonnenfeld, D.A., and Spaargaren, G., (eds.) 2009, The Ecological Modernisation Reader: Environmental Reform in Theory and Practice, London and New York, Routledge, ISBN 978-0-415-45370-7 hardback, ISBN 978-0-415-45371-4 paperback.
    OECD (ed.), Towards Sustainable Household Consumption? Trends and Policies in OECD Countries, Paris, OECD Publ., 2002.
    Olsthoorn, X., and Wieczorek, A., (eds.) 2006, Understanding Industrial Transformation. Views from Different Disciplines, Dordrecht: Springer.
    Redclift, M. R., and Woodgate, G. (eds.) 1997, The International Handbook of Environmental Sociology, Cheltenham, UK, Edward Elgar, ISBN 1-85898-405-X.
    Redclift, M. R., and Woodgate, G., (eds.) 2005, New Developments in Environmental Sociology, Cheltenham, Edward Elgar, ISBN 1-84376-115-7.
    Socolow, R. et al., (eds.) 1994, Industrial Ecology and Global Change, Cambridge University Press.
    Spaargaren, G.; Mol, A.P.J.; Buttel, F.H., eds. (2000). Environment and Global Modernity. London: Sage Publications. ISBN 978-0-7619-6767-5.
    Vergragt, Ph., Strategies Towards the Sustainable Household, SusHouse Project Final Report, Delft University of Technology, NL, 2000.
    York, Richard; Rosa, Eugene A. (2003-09-01). "Key Challenges to Ecological Modernization Theory: Institutional Efficacy, Case Study Evidence, Units of Analysis, and the Pace of Eco-Efficiency". Organization & Environment. 16 (3): 273–288. doi:10.1177/1086026603256299. S2CID 888207.
    Young, Stephen C. (2000). The emergence of ecological modernisation : integrating the environment and the economy. London New York: Routledge. ISBN 978-0-415-14173-4.

Links to related articles
Categories:

    Environmental sociologyEnvironmental social science conceptsSociological terminologySociological theoriesEnvironmental policyIndustrial ecologyGlobal ethicsModernity

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Nederlands
    Slovenčina
    Suomi
    Svenska
    Українська
    中文

Edit links

    This page was last edited on 10 April 2021, at 19:05 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki



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4fJohkUHCRUyCrrooUZDHaooU6Eu9aimBp8/eufn7379nK/f+zO7q/P3fr85/Zvvf3X/A//kUxdLBfhhAAAAGHRFWHRleGlmOlBpeGVsWERpbWVuc2lvbgA2NTA+CqKtAAAAGHRFWHRleGlmOlBpeGVsWURpbWVuc2lvbgA2NTCjBUPbAAAAIHRFWHRpbGx1c3RyYXRvcjpTdGFydHVwUHJvZmlsZQBQcmludE1sg2oAAAAVdEVYdHBob3Rvc2hvcDpDb2xvck1vZGUAM1YCs0AAAAAldEVYdHJkZjpBbHQACiAgICAgICAgICAgICAgIAogICAgICAgICAgICAFtszDAAAARXRFWHRzb2Z0d2FyZQBJbWFnZU1hZ2ljayA2LjYuOS03IDIwMTItMDktMjEgUTggaHR0cDovL3d3dy5pbWFnZW1hZ2ljay5vcmeBtCkEAAAANnRFWHRzdFJlZjpkb2N1bWVudElEAHV1aWQ6MDM2NzQxQ0JERjMxREYxMTgxMDZGQUE4REMyREJBREMj/eGtAAAAOXRFWHRzdFJlZjppbnN0YW5jZUlEAHhtcC5paWQ6RUZEMEIxRUE1QTQ2REYxMTk3M0ZGQ0QzMEUwMjFGMUVdhYsxAAAAPnRFWHRzdFJlZjpvcmlnaW5hbERvY3VtZW50SUQAdXVpZDowMzY3NDFDQkRGMzFERjExODEwNkZBQThEQzJEQkFEQ+A5BeIAAAAYdEVYdFRodW1iOjpEb2N1bWVudDo6UGFnZXMAMaf/uy8AAAAYdEVYdFRodW1iOjpJbWFnZTo6aGVpZ2h0ADY1MEj0SiAAAAAXdEVYdFRodW1iOjpJbWFnZTo6V2lkdGgANjUwlFgZrQAAABl0RVh0VGh1bWI6Ok1pbWV0eXBlAGltYWdlL3BuZz+yVk4AAAAXdEVYdFRodW1iOjpNVGltZQAxMzUxODU0NjE4HpNgdwAAABJ0RVh0VGh1bWI6OlNpemUANDUxS0JCqR83WgAAADN0RVh0VGh1bWI6OlVSSQBmaWxlOi8vL3RtcC9sb2NhbGNvcHlfNmQyNjA2YzdjZDJmLTEucG5ntbzL/AAAABJ0RVh0dGlmZjpDb21wcmVzc2lvbgA13jRpagAAABR0RVh0dGlmZjpJbWFnZUxlbmd0aAA2NTCy30ScAAAAE3RFWHR0aWZmOkltYWdlV2lkdGgANjUwFQ65NgAAAGx6VFh0dGlmZjpOYXRpdmVEaWdlc3QAAHjaBcGxEQMxDAPBhi4QAUEUx9F73v235F3loDTKRRl0hHqjbnQ38SIudIWu0Ry8CtfFNURDLLwO6oW6UAuv4Ar2tj5+n3H085n5HsWPa6c1et69XH/4gBrg009loQAAACB0RVh0dGlmZjpQaG90b21ldHJpY0ludGVycHJldGF0aW9uADIjwjCQAAAAGnRFWHR0aWZmOlBsYW5hckNvbmZpZ3VyYXRpb24AMZdX2kgAAAAWdEVYdHRpZmY6U2FtcGxlc1BlclBpeGVsADOxa9Z3AAAAHnRFWHR0aWZmOlhSZXNvbHV0aW9uADMwMDAwMDAvMTAwMDA7gqO4AAAAHnRFWHR0aWZmOllSZXNvbHV0aW9uADMwMDAwMDAvMTAwMDCeCTO2AAAAHXRFWHRUaW1lc3RhbXAAMjAxMDowNDoxMyAxMDo0NDoxMa7MaLYAAAAodEVYdHhtcDpDcmVhdGVEYXRlADIwMTAtMDMtMTVUMTY6MTQ6MDkrMDI6MDAn98kvAAAAG3RFWHR4bXA6Q3JlYXRvclRvb2wASWxsdXN0cmF0b3LtX5wEAAAAKnRFWHR4bXA6TWV0YWRhdGFEYXRlADIwMTAtMDQtMTNUMTA6NDQ6MTEtMDc6MDB5cmpOAAAAKHRFWHR4bXA6TW9kaWZ5RGF0ZQAyMDEwLTA0LTEzVDEwOjQ0OjExLTA3OjAwRdY58AAAADZ0RVh0eG1wTU06RG9jdW1lbnRJRAB1dWlkOjAzNjc0MUNCREYzMURGMTE4MTA2RkFBOERDMkRCQURD82SiYQAAADl0RVh0eG1wTU06SW5zdGFuY2VJRAB4bXAuaWlkOjNDNkEyMTJCMjQ0N0RGMTE4NTFDQjQ3QzI5RTQzRDg4Wiw18wAAAD50RVh0eG1wTU06T3JpZ2luYWxEb2N1bWVudElEAHV1aWQ6MDM2NzQxQ0JERjMxREYxMTgxMDZGQUE4REMyREJBREMLTwCsAAAAAElFTkSuQmCC
! Electronic nose

!! https://en.wikipedia.org/wiki/Electronic_nose


From Wikipedia, the free encyclopedia

An electronic nose was tuned to the perceptual axis of odorant pleasantness, i.e., an axis ranging from very pleasant (e.g., rose) to very unpleasant (e.g., skunk). This allowed the eNose to then smell novel odorants it never encountered before, yet still generate odor pleasantness estimates in high agreement with human assessments regardless of the subject's cultural background. This suggests an innate component of odorant pleasantness that is tightly linked to molecular structure[1]

An electronic nose is an electronic sensing device intended to detect odors or flavors. The expression "electronic sensing" refers to the capability of reproducing human senses using sensor arrays and pattern recognition systems.

Since 1982,[2] research has been conducted to develop technologies, commonly referred to as electronic noses, that could detect and recognize odors and flavors. The stages of the recognition process are similar to human olfaction and are performed for identification, comparison, quantification and other applications, including data storage and retrieval. Some such devices are used for industrial purposes.
Contents

    1 Other techniques to analyze odors
    2 History
    3 Working principle
    4 Performing an analysis
    5 Applications
        5.1 In quality control laboratories
        5.2 In process and production departments
        5.3 In product development phases
        5.4 Possible and future applications in the fields of health and security
        5.5 Possible and future applications in the field of crime prevention and security
        5.6 In environmental monitoring
    6 Examples of instruments
    7 See also
    8 References
    9 External links

Other techniques to analyze odors

In all industries, odor assessment is usually performed by human sensory analysis, by chemosensors, or by gas chromatography. The latter technique gives information about volatile organic compounds but the correlation between analytical results and mean odor perception is not direct due to potential interactions between several odorous components.

In the Wasp Hound odor detector, the mechanical element is a video camera and the biological element is five parasitic wasps who have been conditioned to swarm in response to the presence of a specific chemical.[3]
History

Scientist Alexander Graham Bell popularized the notion that it was difficult to measure a smell,[4] and in 1914 said the following:

    Did you ever measure a smell? Can you tell whether one smell is just twice strong as another? Can you measure the difference between two kinds of smell and another? It is very obvious that we have very many different kinds of smells, all the way from the odour of violets and roses up to asafetida. But until you can measure their likeness and differences, you can have no science of odour. If you are ambitious to find a new science, measure a smell.
    — Alexander Graham Bell, 1914[5]

In the decades since Bell made this observation, no such science of odor materialised, and it was not until the 1950s and beyond that any real progress was made.[4] A common problem for odor-detecting is that it does not involve measuring energy, but physical particles.[6]
Working principle

The electronic nose was developed in order to mimic human olfaction that functions as a non-separative mechanism: i.e. an odor / flavor is perceived as a global fingerprint.[7] Essentially the instrument consists of head space sampling, a chemical sensor array, and pattern recognition modules, to generate signal pattern that are used for characterizing odors.[8]

Electronic noses include three major parts: a sample delivery system, a detection system, a computing system.[8]

The sample delivery system enables the generation of the headspace (volatile compounds) of a sample, which is the fraction analyzed. The system then injects this headspace into the detection system of the electronic nose. The sample delivery system is essential to guarantee constant operating conditions.[8]

The detection system, which consists of a sensor set, is the "reactive" part of the instrument. When in contact with volatile compounds, the sensors react, which means they experience a change of electrical properties.[8]

In most electronic noses, each sensor is sensitive to all volatile molecules but each in their specific way. However, in bio-electronic noses, receptor proteins which respond to specific odor molecules are used. Most electronic noses use chemical sensor arrays that react to volatile compounds on contact: the adsorption of volatile compounds on the sensor surface causes a physical change of the sensor. A specific response is recorded by the electronic interface transforming the signal into a digital value. Recorded data are then computed based on statistical models.[9]

Bio-electronic noses use olfactory receptors - proteins cloned from biological organisms, e.g. humans, that bind to specific odor molecules. One group has developed a bio-electronic nose that mimics the signaling systems used by the human nose to perceive odors at a very high sensitivity: femtomolar concentrations.[10]

The more commonly used sensors for electronic noses include

    metal–oxide–semiconductor (MOSFET) devices - a transistor used for amplifying or switching electronic signals. This works on the principle that molecules entering the sensor area will be charged either positively or negatively, which should have a direct effect on the electric field inside the MOSFET. Thus, introducing each additional charged particle will directly affect the transistor in a unique way, producing a change in the MOSFET signal that can then be interpreted by pattern recognition computer systems. So essentially each detectable molecule will have its own unique signal for a computer system to interpret.
    conducting polymers - organic polymers that conduct electricity.[11]
    polymer composites - similar in use to conducting polymers but formulated of non-conducting polymers with the addition of conducting material such as carbon black.
    quartz crystal microbalance (QCM) - a way of measuring mass per unit area by measuring the change in frequency of a quartz crystal resonator. This can be stored in a database and used for future reference.
    surface acoustic wave (SAW) - a class of microelectromechanical systems (MEMS) which rely on the modulation of surface acoustic waves to sense a physical phenomenon.[12]
    Mass spectrometers can be miniaturised to form general purpose gas analysis device.[13]

Some devices combine multiple sensor types in a single device, for example polymer coated QCMs. The independent information leads to vastly more sensitive and efficient devices.[14] Studies of airflow around canine noses, and tests on lifesize models have indicated that a cyclic 'sniffing action' similar to that of a real dog is beneficial in terms of improved range and speed of response[15]

In recent years, other types of electronic noses have been developed that utilize mass spectrometry or ultra-fast gas chromatography as a detection system.[9]

The computing system works to combine the responses of all of the sensors, which represents the input for the data treatment. This part of the instrument performs global fingerprint analysis and provides results and representations that can be easily interpreted. Moreover, the electronic nose results can be correlated to those obtained from other techniques (sensory panel, GC, GC/MS). Many of the data interpretation systems are used for the analysis of results. These systems include artificial neural network (ANN),[16] fuzzy logic, pattern recognition modules, etc.[17] Artificial intelligence, included artificial neural network (ANN), is a key technique for the environmental odour management.[18]
Performing an analysis

As a first step, an electronic nose needs to be trained with qualified samples so as to build a database of reference. Then the instrument can recognize new samples by comparing a volatile compound's fingerprint to those contained in its database. Thus they can perform qualitative or quantitative analysis. This however may also provide a problem as many odors are made up of multiple different molecules, which may be wrongly interpreted by the device as it will register them as different compounds, resulting in incorrect or inaccurate results depending on the primary function of a nose.[19] The example of e-nose dataset is also available.[20] This dataset can be used as a reference for e-nose signal processing, notably for meat quality studies. The two main objectives of this dataset are multiclass beef classification and microbial population prediction by regression.
Applications
Electronic nose developed in Analytical Chemistry Department (Chemical Faculty of Gdańsk University of Technology) allows for rapid classification of food or environmental samples

Electronic nose instruments are used by research and development laboratories, quality control laboratories and process & production departments for various purposes:
In quality control laboratories

    Conformity of raw materials, intermediate and final products
    Batch to batch consistency
    Detection of contamination, spoilage, adulteration
    Origin or vendor selection
    Monitoring of storage conditions
    Meat quality monitoring.[21]

In process and production departments

    Managing raw material variability
    Comparison with a reference product
    Measurement and comparison of the effects of manufacturing process on products
    Following-up cleaning in place process efficiency
    Scale-up monitoring
    Cleaning in place monitoring.

In product development phases

    Sensory profiling and comparison of various formulations or recipes
    Benchmarking of competitive products
    Evaluation of the impact of a change of process or ingredient on sensory features.

Possible and future applications in the fields of health and security

    The detection of dangerous and harmful bacteria, such as software that has been specifically developed to recognise the smell of the MRSA (Methicillin-resistant Staphylococcus aureus).[22] It is also able to recognise methicillinsusceptible S. aureus (MSSA) among many other substances. It has been theorised that if carefully placed in hospital ventilation systems, it could detect and therefore prevent contamination of other patients or equipment by many highly contagious pathogens.
    The detection of lung cancer or other medical conditions by detecting the VOC's (volatile organic compounds) that indicate the medical condition.[23][24][25]
    The detection of viral and bacterial infections in COPD Exacerbations.[26]
    The quality control of food products as it could be conveniently placed in food packaging to clearly indicate when food has started to rot or used in the field to detect bacterial or insect contamination.[27]
    Nasal implants could warn of the presence of natural gas, for those who had anosmia or a weak sense of smell.
    The Brain Mapping Foundation used the electronic nose to detect brain cancer cells.[28][29][30][31][32][33]

Possible and future applications in the field of crime prevention and security

    The ability of the electronic nose to detect odorless smells makes it ideal for use in the police force, such as the ability to detect bomb odors despite other airborne odors capable of confusing police dogs. However this is unlikely in the near term as the cost of the electronic nose is quite high.
    It may also be used as a drug detection method in airports. Through careful placement of several or more electronic noses and effective computer systems, one could triangulate the location of drugs to within a few metres of their location in less than a few seconds.
    Demonstration systems that detect the vapours given off by explosives exist, but are currently some way behind a well trained sniffer dog.

In environmental monitoring

    For identification of volatile organic compounds in air, water and soil samples.[34]
    For environmental protection.[35]

Various application notes describe analysis in areas such as flavor and fragrance, food and beverage, packaging, pharmaceutical, cosmetic and perfumes, and chemical companies. More recently they can also address public concerns in terms of olfactive nuisance monitoring with networks of on-field devices.[36][37] Since emission rates on a site can be extremely variable for some sources, the electronic nose can provide a tool to track fluctuations and trends and assess the situation in real time.[38] It improves understanding of critical sources, leading to pro-active odor management. Real time modeling will present the current situation, allowing the operator to understand which periods and conditions are putting the facility at risk. Also, existing commercial systems can be programmed to have active alerts based on set points (odor concentration modeled at receptors/alert points or odor concentration at a nose/source) to initiate appropriate actions.
Examples of instruments

The Heracles electronic nose[39] from Alpha MOS is based on dual fast gas chromatography with FID, coupled to AI using multivariate statistics to compute data.

The FlavourSpec[40] from GAS Dortmund is based on GC-IMS.

The GDA range of handheld devices[41] from Airsense Analytics combines different detectors (IMS, PID, EC, MOS) to address applications in security, first response, explosives and fumigation.

The Smell Inspector by Smart Nanotubes Technologies is in pre-order stage of production, with deliveries estimated at December 2021.[42] NeOse is a smartphone compatible smell detector targeted for businesses.[43] The Kanomax OMX-series devices are handheld odor meters capable of detecting gases.[44] Meanwhile, the Karlsruhe Institute of Technology is developing the Smelldect electronic nose which aims to be both smartphone compatible and affordable.[45] Aroma Bit is a Japanese startup that develops chips that detect odors.[46][47]

BreathBase Solution

Breathomix B.V.[48] is a Dutch medtech startup focusing on healthcare. Their BreathBase Solution comprises an eNose, a platform that transfers high-quality breath measurements to the generation and validation of diagnostic models, and a clinically validated breath database that serves as a reference for new patients. Their solution is able to discriminate between COPD patients that develop lung cancer within a year and those who don't. These results show that eNose assessment may detect early stages of lung cancer and may therefore be of value in the screening of patients with COPD.[49]

They also used their solution to phenotype asthma and COPD patients. Phenotyping a combined sample of asthma and COPD patients using the eNose provided validated clusters that were not determined by diagnosis, but rather by clinical/inflammatory characteristics. The eNose identified systemic neutrophilia and/or eosinophilia in a dose-dependent manner.[50]
Cyranose 320 with labelling

Cyranose

The Cyranose 320 is a handheld "electronic nose" developed by Cyrano Sciences of Pasadena, California in 2000.[51] Cyrano Sciences was founded in 1997, 9 years after the concept of an "electronic nose" based on using multiple semi-selective sensors combined with electronic computation was first proposed by Gardner and Bartlett.[52] The Cyranose 320 is based on sensor research performed by Professor Nathan Lewis of the California Institute of Technology.[53] Applications researched using the Cyranose 320 include the detection of COPD,[54] and other medical conditions[55][56] as well as industrial applications generally related to quality control or contamination detection.[57] The Cyranose 320 is still being manufactured in the USA by Sensigent LLC, the successor company to Cyrano Sciences.
See also

    Chemical field-effect transistor
    Chemiresistor
    Electronic skin
    Electronic tongue
    Fluctuation-enhanced sensing
    Machine olfaction
    Olfactometer

References

Haddad, Rafi; Medhanie, Abebe; Roth, Yehudah; Harel, David; Sobel, Noam (15 April 2010). "Predicting Odor Pleasantness with an Electronic Nose". PLOS Computational Biology. 6 (4): e1000740. Bibcode:2010PLSCB...6E0740H. doi:10.1371/journal.pcbi.1000740. PMC 2855315. PMID 20418961.
Persaud, Krishna; Dodd, George (1982). "Analysis of discrimination mechanisms in the mammalian olfactory system using a model nose". Nature. 299 (5881): 352–5. Bibcode:1982Natur.299..352P. doi:10.1038/299352a0. PMID 7110356. S2CID 4350740.
"Wasp Hound". Science Central. Archived from the original on 16 July 2011. Retrieved 23 February 2011.
Graham Bell (September 2003). "Measuring Odours and Odorants" (PDF). ChemoSense. Archived from the original (PDF) on 2012-03-31. Retrieved 2011-08-22.
Wise, P. M.; Olsson, MJ; Cain, WS (2000). "Quantification of Odor Quality". Chemical Senses. 25 (4): 429–43. doi:10.1093/chemse/25.4.429. PMID 10944507.
Wagstaff, Jeremy (2016-06-23). "Nose job: smells are smart sensors' last frontier". Reuters. Retrieved 2020-12-13.
Mendez, Maria Luz Rodriguez (2016-02-19). Electronic Noses and Tongues in Food Science. Academic Press. ISBN 978-0-12-800402-9.
Gardner, J.; Yinon, Jehuda (2004-08-17). Electronic Noses and Sensors for the Detection of Explosives. Springer Science & Business Media. ISBN 978-1-4020-2318-7.
"Sensory expert and Analytical Instruments". alpha-mos.com. Archived from the original on 2008-10-23.
Jin, Hye Jun; Lee, Sang Hun; Kim, Tae Hyun; Park, Juhun; Song, Hyun Seok; Park, Tai Hyun; Hong, Seunghun (2012). "Nanovesicle-based bioelectronic nose platform mimicking human olfactory signal transduction". Biosensors and Bioelectronics. 35 (1): 335–41. doi:10.1016/j.bios.2012.03.012. PMID 22475887.
Summary of electronic nose technologies - Andrew Horsfield[verification needed]
Röck, Frank; Barsan, Nicolae; Weimar, Udo (2008). "Electronic Nose: Current Status and Future Trends". Chemical Reviews. 108 (2): 705–25. doi:10.1021/cr068121q. PMID 18205411.
https://www.imperial.ac.uk/media/imperial-college/faculty-of-engineering/electrical-and-electronic-engineering/public/optical-and-semiconductor-devices/pubs/07050904.pdf
Paul Wali, R.; Wilkinson, Paul R.; Eaimkhong, Sarayoot Paul; Hernando-Garcia, Jorge; Sánchez-Rojas, Jose Luis; Ababneh, Abdallah; Gimzewski, James K. (2010-06-03). "Fourier transform mechanical spectroscopy of micro-fabricated electromechanical resonators: A novel, information-rich pulse method for sensor applications" (PDF). Sensors and Actuators B: Chemical. 147 (2). pp. 508–516. doi:10.1016/j.snb.2010.03.086. ISSN 0925-4005. Archived from the original on 2012-07-14. Retrieved 2021-02-14.
Staymates, Matthew E.; MacCrehan, William A.; Staymates, Jessica L.; Kunz, Roderick R.; Mendum, Thomas; Ong, Ta-Hsuan; Geurtsen, Geoffrey; Gillen, Greg J.; Craven, Brent A. (1 December 2016). "Biomimetic Sniffing Improves the Detection Performance of a 3D Printed Nose of a Dog and a Commercial Trace Vapor Detector". Scientific Reports. 6 (1): 36876. Bibcode:2016NatSR...636876S. doi:10.1038/srep36876. PMC 5131614. PMID 27906156.
Skarysz, Angelika; Alkhalifah, Yaser; Darnley, Kareen; Eddleston, Michael; Hu, Yang; McLaren, Duncan B.; Nailon, William H.; Salman, Dahlia; Sykora, Martin; Thomas, C L Paul; Soltoggio, Andrea (2018). "Convolutional neural networks for automated targeted analysis of raw gas chromatography-mass spectrometry data". 2018 International Joint Conference on Neural Networks (IJCNN). pp. 1–8. doi:10.1109/IJCNN.2018.8489539. ISBN 978-1-5090-6014-6. S2CID 52989098.
"What the nose knows". The Economist. 9 March 2006. Archived from the original on 31 May 2011.
Zarra, Tiziano; Galang, Mark Gino; Ballesteros, Florencio; Belgiorno, Vincenzo; Naddeo, Vincenzo (December 2019). "Environmental odour management by artificial neural network – A review". Environment International. 133 (Pt B): 105189. doi:10.1016/j.envint.2019.105189. PMID 31675561.
Summary of electronic nose technologies[verification needed]
Wijaya, D.R.; Sarno, Riyanarto; Zulaika, Enny (2018). "Electronic nose dataset for beef quality monitoring in uncontrolled ambient conditions". Data in Brief. 21: 2414–2420. doi:10.1016/j.dib.2018.11.091. PMC 6282642. PMID 30547068.
Wijaya, D.R.; Sarno, Riyanarto; Zulaika, Enny (2017). "Development of mobile electronic nose for beef quality monitoring". Procedia Computer Science. 124: 728–735. doi:10.1016/j.procs.2017.12.211.
Dutta, Ritaban; Dutta, Ritabrata (2006). "Intelligent Bayes Classifier (IBC) for ENT infection classification in hospital environment". BioMedical Engineering OnLine. 5: 65. doi:10.1186/1475-925X-5-65. PMC 1764885. PMID 17176476.
Dragonieri, Silvano; Van Der Schee, Marc P.; Massaro, Tommaso; Schiavulli, Nunzia; Brinkman, Paul; Pinca, Armando; Carratú, Pierluigi; Spanevello, Antonio; Resta, Onofrio (2012). "An electronic nose distinguishes exhaled breath of patients with Malignant Pleural Mesothelioma from controls". Lung Cancer. 75 (3): 326–31. doi:10.1016/j.lungcan.2011.08.009. PMID 21924516.
Timms, Chris; Thomas, Paul S; Yates, Deborah H (2012). "Detection of gastro-oesophageal reflux disease (GORD) in patients with obstructive lung disease using exhaled breath profiling". Journal of Breath Research. 6 (1): 016003. Bibcode:2012JBR.....6a6003T. doi:10.1088/1752-7155/6/1/016003. PMID 22233591.
Bikov, Andras; Hernadi, Marton; Korosi, Beata Zita; Kunos, Laszlo; Zsamboki, Gabriella; Sutto, Zoltan; Tarnoki, Adam Domonkos; Tarnoki, David Laszlo; Losonczy, Gyorgy; Horvath, Ildiko (December 2014). "Expiratory flow rate, breath hold and anatomic dead space influence electronic nose ability to detect lung cancer". BMC Pulmonary Medicine. 14 (1): 202. doi:10.1186/1471-2466-14-202. PMC 4289562. PMID 25510554. S2CID 5908556.
van Geffen, Wouter H; Bruins, Marcel; Kerstjens, Huib A M (16 June 2016). "Diagnosing viral and bacterial respiratory infections in acute COPD exacerbations by an electronic nose: a pilot study". Journal of Breath Research. 10 (3): 036001. Bibcode:2016JBR....10c6001V. doi:10.1088/1752-7155/10/3/036001. PMID 27310311.
Degenhardt, David C.; Greene, Jeremy K.; Khalilian, Ahmad (2012). "Temporal Dynamics and Electronic Nose Detection of Stink Bug-Induced Volatile Emissions from Cotton Bolls". Psyche. 2012: 1–9. doi:10.1155/2012/236762.
"NASA's Electronic Nose May Provide Neurosurgeons With A New Weapon Against Brain Cancer". sciencedaily.com. Archived from the original on 10 August 2017. Retrieved 30 April 2018.
Babak Kateb, M. A. Ryan, M. L. Homer, L. M. Lara, Yufang Yin, Kerin Higa, Mike Y.Chen; Sniffing Out Cancer Using the JPL Electronic Nose: A Novel Approach to Detection and Differentiation of Brain Cancer, NeuroImage 47(2009), T5-9
"NASA's e-nose to fight brain cancer: Study". NDTV.com. 4 May 2009. Archived from the original on 18 December 2011.
"NASA's ENose sniffs for cancer". theregister.co.uk. Archived from the original on 2017-08-10.
Ross Miller. "NASA's new e-nose can detect scent of cancerous brain cells". Engadget. AOL. Archived from the original on 2017-08-10.
Michael Cooney (30 April 2009). "NASA's electronic nose can sniff out cancer, space stench". Network World. Archived from the original on 3 July 2013.
Edward J. Staples (1 November 2006). "A Sensitive Electronic Nose". Environmental protection. Archived from the original on 2011-10-08. Retrieved 2011-08-22.
Pogfay, Tawee; Watthanawisuth, Natthapol; Pimpao, W.; Wisitsoraat, A.; Mongpraneet, S.; Lomas, T.; Sangworasil, M.; Tuantranont, Adisorn (19–21 May 2010). Development of Wireless Electronic Nose for Environment Quality Classification. 2010 International Conference on Electrical Engineering/Electronics Computer Telecommunications and Information Technology. pp. 540–3.
"Sensory expert and Analytical Instruments". alpha-mos.com. Archived from the original on 2009-05-18.
"Pima County Marks Years of Odor Management Innovation". Odotech. Archived from the original on 2010-09-18.
Odour impact assessment handbook. Naddeo, V.,, Belgiorno, V.,, Zarra, T. Chichester, West Sussex, United Kingdom. 2012-11-26. ISBN 9781118481288. OCLC 818466563.
"Heracles electronic nose". Heracles electronic nose. Retrieved 2021-03-31.
"FlavourSpec". Gas Dortmund. Retrieved 2021-03-31.
"Airsense analytics". Airsense analytics. Retrieved 2021-03-31.
"Smart Nanotubes". SMELL Inspector. Retrieved 2021-03-31.
Robertson, Adi (2017-01-03). "The NeOse smell recorder could help your fridge detect spoiled food". The Verge. Retrieved 2020-12-13.
"Handheld Odor Meters". Kanomax USA. Retrieved 2020-12-13.
"Smelldect: affordable, small e-nose that learns different scents | Robot Reporters". Robot Reporters - Artificial Intelligence News, Stories & Videos. 2019-03-27. Retrieved 2020-12-13.
Katayama, Akiko. "How Aroma Bit Can Help You Visualize Smell". Forbes. Retrieved 2021-01-24.
Moreton, Natalie (2019-08-23). "Smell Sensor Aroma Bit SDK-1Q, Aroma Coder 35Q Desktop Smell Sensor". Printed Electronics World. Retrieved 2021-01-24.
"Breathomix | Exhaled breath analysis for disease". Retrieved Aug 14, 2020.
de Vries, Rianne; Dagelet, J. W. F.; De Jongh, Frans H. C.; In 'T Veen, Johannes H. H. C.; Haarman, Eric G.; Baas, Paul; Van Den Heuvel, Michel M.; Maitland-Van Der Zee, Anke-Hilse; Sterk, Peter J. (15 September 2018). "Early detection of lung cancer in patients with COPD by eNose technology". Lung Cancer: PA1760. doi:10.1183/13993003.congress-2018.PA1760.
Vries, Rianne de; Dagelet, Yennece W. F.; Spoor, Pien; Snoey, Erik; Jak, Patrick M. C.; Brinkman, Paul; Dijkers, Erica; Bootsma, Simon K.; Elskamp, Fred; Jongh, Frans H. C. de; Haarman, Eric G.; Veen, Johannes C. C. M. in ‘t; Zee, Anke-Hilse Maitland-van der; Sterk, Peter J. (1 January 2018). "Clinical and inflammatory phenotyping by breathomics in chronic airway diseases irrespective of the diagnostic label". European Respiratory Journal. 51 (1). doi:10.1183/13993003.01817-2017. PMID 29326334.
"Cyrano Sciences Unveils Portable Electronic Nose". foodingredientsonline.com. 2000. Archived from the original on 2015-04-14.
Wilson, Alphus D.; Baietto, Manuela (2009). "Applications and Advances in Electronic-Nose Technologies". Sensors. 9 (7): 5099–5148. doi:10.3390/s90705099. PMC 3274163. PMID 22346690.
Unmesh Kher (March 12, 2000). "Electronic Noses Sniff Out a Market or Two". Time magazine. Archived from the original on February 10, 2001.
Fens, Niki; Zwinderman, Aeilko H.; van der Schee, Marc P.; de Nijs, Selma B.; Dijkers, Erica; Roldaan, Albert C.; Cheung, David; Bel, Elisabeth H.; Sterk, Peter J. (December 2009). "Exhaled Breath Profiling Enables Discrimination of Chronic Obstructive Pulmonary Disease and Asthma". American Journal of Respiratory and Critical Care Medicine. 180 (11): 1076–1082. doi:10.1164/rccm.200906-0939OC. PMID 19713445.
"Sensigent". sensigent.com. Archived from the original on 2015-07-08. Retrieved 2013-07-23.
Bikov A, Lazar Z, Horvath I. Established methodological issues in electronic nose research: how far are we from using these instruments in clinical settings of breath analysis? JOURNAL OF BREATH RESEARCH 9:(3) Paper 034001. 18 p. (2015)

    "Cyrano "Nose" the Smell of Success". spinoff.nasa.gov. 2001. Archived from the original on 2013-10-26.

External links

    Dutta, Ritaban; Dutta, Ritabrata (December 2006). "Intelligent Bayes Classifier (IBC) for ENT infection classification in hospital environment". BioMedical Engineering OnLine. 5 (1): 65. doi:10.1186/1475-925X-5-65. PMC 1764885. PMID 17176476.
    NASA researchers are developing an exquisitely sensitive artificial nose for space exploration
    BBC News on Electronic Nose based bacterial detection

    vte

Emerging technologies
Fields	
Electronics	

    Electronic nose E-textiles Flexible electronics Molecular electronics Nanoelectromechanical systems Memristor Spintronics Thermal copper pillar bump Twistronics

Topics	

    Collingridge dilemma Differential technological development Disruptive innovation Ephemeralization Ethics
        Bioethics Cyberethics Neuroethics Robot ethics Exploratory engineering Fictional technology Proactionary principle Technological change
        Technological unemployment Technological convergence Technological evolution Technological paradigm Technology forecasting
        Accelerating change Horizon scanning Moore's law Technological singularity Technology scouting Technology readiness level Technology roadmap Transhumanism

    Category Category List-Class article List

Categories:

    Laboratory equipmentOlfactionEmerging technologies

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    Bahasa Indonesia
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 8 April 2021, at 09:47 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Elisabet Sahtouris

!! http://www.ratical.org/LifeWeb/Erthdnce/erthdnce.pdf  GET THIS BOOK FREE .PDF
!! 
!! https://www.ratical.org/LifeWeb/


!! https://dalailamafilm.com/cast-elisabet-sahtouris/elisabet-sahtouris-biography-evolutionary-biologist-futurist.html
!! 
!! 
!! https://www.youtube.com/watch?v=ZavH-iBCk5Y Elisabet Sahtouris (Evolutionary Biologist) meets Dalai Lama

https://www.ratical.org/LifeWeb/Erthdnce/erthdnce.html
!!! 
!!! https://www.kosmosjournal.org/article/ecosophy-natures-guide-to-a-better-world/


!! 
!! https://en.wikipedia.org/wiki/Elisabet_Sahtouris

From Wikipedia, the free encyclopedia

	
This biography of a living person needs additional citations for verification. Please help by adding reliable sources. Contentious material about living persons that is unsourced or poorly sourced must be removed immediately, especially if potentially libelous or harmful.
Find sources: "Elisabet Sahtouris" – news · newspapers · books · scholar · JSTOR (August 2013) (Learn how and when to remove this template message)

Elisabet Sahtouris is an evolution biologist, futurist, speaker, author and sustainability consultant to businesses, government agencies and other organizations. She is a US and Greek citizen who has lived in the US, Canada, Greece, Peru and Spain while lecturing, doing workshops and media appearances on all continents. She has a PhD from Dalhousie University in Canada. She consults with corporations and government organizations in Australia, Brazil, Europe, Asia, Africa and the United States.

Sahtouris co-convened two symposia on the foundations of science in Hokkaido and Kuala Lumpur. She is currently Professor in Residence at Chaminade University in Honolulu, Hawaii, teaching in the School of Business & Communication MBA Program and helping redesign it for entrepreneurship in local living economies. She is a member of the Evolutionary Leaders and a founding member of Rising Women; Rising World. She promotes a vision she believes will result in the sustainable health and well-being of humanity within the larger living systems of Earth and the cosmos.

She has appeared in films including Occupy Love, I Am, Femme, Love Thy Nature and Money & Life. Her books include EarthDance: Living Systems in Evolution, A Walk Through Time: from Stardust to Us, Biology Revisioned (with Willis Harman). and new ebook Gaia’s Dance: The Story of Earth & Us.
Works

Papers

Ecosophy article at: http://www.kosmosjournal.org/article/ecosophy-natures-guide-to-a-better-world/

    After Darwin[1]
    Skills for the Age of Sustainability[2]
    Living Systems in Evolution[3]

Books

    Earthdance - Living Systems in Evolution[4]
    Biology Revisioned, with Willis Harman, North Atlantic Publishers 1998. ISBN 1-55643-267-4
    A Walk Through Time: From Stardust to Us[5]
    Gaia's Dance: The Story of Earth & Us

References

"LifeWeb: After Darwin - reuniting spirituality with science to form a new world view, 8/30/03". Retrieved 25 February 2015.
"Skills for the Age of Sustainability: An Unprecedented Time of Opportunity". Retrieved 25 February 2015.
"LifeWeb: Living Systems in Evolution". Retrieved 25 February 2015.
"LifeWeb:Book - EARTHDANCE: Living Systems in Evolution". Retrieved 25 February 2015.

    "eNotAlone: relationship advice and articles". Archived from the original on 25 October 2003. Retrieved 25 February 2015.

External links

    Official website
    Articles & interviews
    LifeWeb - articles and books
    Elisabet Sahtouris MP3 audio - Nature's Secrets of Success from The Great Rethinking: Bath
    Video of Elisabet Sahtouris with the Dalai Lama during filming of the documentary "Dalai Lama Renaissance"
    Elisabet Sahtouris MP3 audio - from Shift in Action, sponsored by Institute of Noetic Sciences

Authority control Edit this at Wikidata	

    BNF: cb134950699 (data) ISNI: 0000 0000 5815 8960 LCCN: n89644449 NDL: 01117545 SUDOC: 121817172 VIAF: 34612505 WorldCat Identities: lccn-n89644449

Categories:

    Evolutionary biologistsUniversity of Massachusetts Amherst facultyMassachusetts Institute of Technology facultyAmerican people of Greek descentLiving people21st-century American biologists

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Eesti
    Ελληνικά

Edit links

    This page was last edited on 4 April 2020, at 19:14 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki



! https://web.archive.org/web/20071116111642/http://www.shiftinaction.com/discover/luminaries/elisabet_sahtouris


Luminary: Elisabet Sahtouris
Elisabet Sahtouris
Dr. Elisabet Sahtouris is an evolution biologist, futurist, author, and consultant to organizations. In her unique approach, called "Living Systems Design," she applies the principles of biology and evolution to organizational development so that organizations may become more functional, healthy "living systems," with increased resilience, stability, and cooperation. She is one of a select group of scientists rethinking the classic, mechanistic view of the universe. Her particular goal is to create sustainable health and well-being for humanity within the larger living systems of Earth.

She teaches in the Bainbridge Graduate Institute's MBA program on sustainable business and is a fellow of the World Business Academy. Dr. Sahtouris has been a UN consultant on indigenous peoples, is a co-founder of the Worldwide Indigenous Science Network and has authored a scientific model of a living cosmos (see www.via-visioninaction.org under Articles). She lived extensively in Greece and the Peruvian Andes, discovering solutions to our big social and economic problems in Earth's ecosystems and indigenous sciences. Her venues have included The World Bank, EPA, Boeing, Siemens, Hewlett-Packard, Tokyo Dome Stadium, Australian National Govt, Sao Paulo's leading business schools, State of the World Forums (NY & San Francisco) and World Parliament of Religion, South Africa. Her books include EarthDance: Living Systems in Evolution, A Walk Through Time: from Stardust to Us and Biology Revisioned (with Willis Harman). Her websites are www.sahtouris.com and www.ratical.org/lifeweb. 



To my planet and its people

    Dancing is surely the most basic and relevant of all forms of expression. Nothing else can so effectively give outward form to an inner experience. Poetry and music exist in time. Painting and architecture are a part of space But only the dance lives at once in both space and time In it the creator and the thing created, the artist and the expression, are one. Each participant is completely in the other. There could be no better metaphor for an understanding of the...cosmos.

    We begin to realize that our universe is in a sense brought into being by the participation of those involved in it. It is a dance, for participation is its organizing principle. This is the important new concept of quantum mechanics. It takes the place in our understanding of the old notion of observation, of watching without getting involved. Quantum theory says it can't be done. That spectators can sit in their rigid row as long as they like, but there will never be a performance unless at least one of them takes part And conversely, that it needs only one participant, because that one is the essence of all people and the quintessence of the cosmos.

    -Lyall Watson, Gifts of Unknown Things

https://www.ratical.org/LifeWeb/Erthdnce/erthdnce.html

 EARTHDANCE:
Living Systems in Evolution
Elisabet Sahtouris
copyright © 1999 by Elisabet Sahtouris

 

A Note From The Author A Twice-Told Tale

 

    Everyone knows that humanity is in crisis, politically, economically, spiritually, ecologically, any way you look at it. Many see humanity as close to suicide by way of our own technology; many others see humans as deserving God's or nature's wrath in retribution for our sins. However we see it, we are deeply afraid that we may not survive much longer. Yet our urge to survival is the strongest urge we have, and we do not cease our search for solutions in the midst of crisis.

    The proposal made in this book is that we see ourselves in the context of our planet's biological evolution, as a still new, experimental species with developmental stages that parallel the stages of our individual development. From this perspective, humanity is now in adolescent crisis and, just because of that, stands on the brink of maturity in a position to achieve true humanity in the full meaning of that word. Like an adolescent in trouble, we have tended to let our focus on the crisis itself or on our frantic search for particular political, economic, scientific, or spiritual solutions depress us and blind us to the larger picture, to avenues of real assistance. If we humbly seek help instead from the nature that spawned us, we will find biological clues to solving all our biggest problems at once. We will see how to make the healthy transition into maturity.

    Some of these biological clues are with us daily, all our lives, in our own bodies; others can be found in various ages and stages of the larger living entity of which we are part -- our planet Earth. Once we see these clues, we will wonder how we could have failed to find them for so long.

    The reason we have missed them is that we have not understood ourselves as living beings within a larger being, in the same sense that our cells are part of each of us.

    Our intellectual heritage for thousands of years, most strongly developed in the past few hundred years of science, has been to see ourselves as separate from the rest of nature, to convince ourselves we see it objectively -- at a distance from ourselves -- and to perceive, or at least model it, as a vast mechanism.

    This objective mechanical worldview was founded in ancient Greece when philosophers divided into two schools of thought about the world. One school held that all nature, including humans, was alive and self-creative, ever making order from disorder. The other held that the `real' world could be known only through pure reason, not through direct experience, and was God's geometric creation, permanently mechanical and perfect behind our illusion of its disorder.

    This mechanical/religious worldview superseded the older one of living nature to become the foundation of the whole Western worldview up to the present.

    Philosophers such as Pythagoras, Parmenides, and Plato were thus the founding fathers of our mechanical worldview, though Galileo, Descartes, and other men of the Renaissance translated it into the scientific and technological enterprise that has dominated human experience ever since.

    What if things had gone the other way? What if Thales, Anaximander, and Heraclitus, the organic philosophers who saw all the cosmos as alive, had won the day back in that ancient Greek debate?

    What if Galileo, as he experimented with both telescope and microscope, had used the latter to seek evidence for Anaximander's theory of biological evolution here on Earth, rather than looking to the skies for confirmation of Aristarchus's celestial mechanics? In other words, what if modern science and our view of human society had evolved from organic biology rather than from mechanical physics?

    We will never know how the course of human events would have differed had they taken this path, had physics developed in the shadow of biology rather than the other way around.

    Yet it seems we were destined to find the biological path eventually, as the mechanical worldview we have lived with so long is now giving way to an organic view -- in all fairness, an organic view made possible by the very technology born of our mechanical view.

    The same technology that permits us to reach out into space has permitted us to begin seeing the real nature of our own planet to discover that it is alive and that it is the only live planet circling our Sun.

    ·    ·    ·

    The implications of this discovery are enormous, and we have hardly even begun to pursue them. We were awed by astronauts' reports that the Earth looked from space like a living being, and were ourselves struck by its apparently live beauty when the visual images were before our eyes. But it has taken time to accumulate scientific evidence that the Earth is a live planet rather than a planet with life upon it, and many scientists continue to resist the new conception because of its profound implications for change in all branches of science, not to mention all society.

    The difference between a planet with life on it and a living planet is hard at first to understand. Take for example the word, the concept, the practice of ecology, which has become familiar to us all within just the few short decades that we have been aware of our pollution and destruction of the environment on which our own lives depend.

    Our ecological understanding and practice has been a big, important step in understanding our relationship to our environment and to other species. Yet, even in our serious environmental concern, we still fall short of recognizing ourselves as part of a much larger living entity. It is one thing to be careful with our environment so it will last and remain benign; it is quite another to know deeply that our environment, like ourselves, is part of a living planet.

    The earliest microbes into which the materials of the Earth's crust transformed themselves created their own environments, and these environments in turn shaped the fate of later species, much as cells create their surround and are created by it in our own embryological development.

    As for physiology, we already know that the Earth regulates its temperature as well as any of its warm-blooded creatures, such that it stays within bounds that are healthy for life despite the Sun's steadily increasing heat. And just as our bodies continually renew and adjust the balance of chemicals in our skin and blood, our bones and other tissues, so does the Earth continually renew and adjust the balance of chemicals in its atmosphere, seas, and soils. How these physiological systems work is now partly known, partly still to be discovered, as is also still the case with our bodies' physiological systems.

    Certainly it is ever more obvious that we are not studying the mechanical nature of Spaceship Earth but the self-creative, self-maintaining physiology of a live planet.

    Many still take the live Earth concept, named Gaia after the Earth goddess of early Greek myth, more as a poetic or spiritual metaphor than as a scientific reality. However, the name Gaia was never intended to suggest that the Earth is a female being, the reincarnation of the Great Goddess or Mother Nature herself, nor to start a new religion (though it would hardly hurt us to worship our planet as the greater Being whose existence we have intuited from time immemorial). It was intended simply to designate the concept of a live Earth, in contrast to an Earth with life upon it.

    Actually, Gaia, or the Roman form, Gea, was an earlier name for our planet than Earth. It was lost in the wandering of words from ancient Greek through other languages to English. In Greek, our planet has always been called Gaia in its alternate spelling Ge, which we see in English words taken directly from Greek, such as geology, the formation of the Earth; geometry, the measurement of the Earth; and geography, the mapping of the Earth. In accord with our own practice of calling planets by the names of Greek deities in their Roman versions, we really should call the Earth Gea. Greek, like English, has always used the same word for Earth-as-world and Earth-as-ground -- the ancient Ge that became the modern Gi, pronounced Yee. The English word Earth came from an ancient Greek root meaning working the ground, or earth-ergaze -- which evolved into the name of the Nordic Earth goddess, Erda and then into the German Erde and the English Earth. Thus even the word Earth implies a female deity.

    With that digression intended to make the name Gaia more acceptable to those who still consider the name and image somehow inappropriate for a scientific concept, let us look also at the myth itself -- the creation myth of Gaia's dance.

    The story of Gaia's dance begins with an image of swirling mist in the black nothingness called Chaos by the ancient Greeks -- an image reminding us of modern photos of galaxies swirling in space. In the myth it is the dancing goddess Gaia, swathed in white veils as she whirls through the darkness. As she becomes visible and her dance grows ever more lively, her body forms itself into mountains and valleys; then sweat pours from her to pool into seas, and finally her flying arms stir up a windy sky she calls Ouranos -- still the Greek word for sky -- which she wraps around herself as protector and mate.

    Though she later banishes Ouranos -- Uranus, in Latin -- to her depths for claiming credit for creation, their fertile union as Earth and Heaven brings forth forests and creatures including the giant Titans in human form, who in turn give rise to the gods and goddesses and finally to mortal humans.

    From the start, says the myth -- true to human psychology -- people were curious to know how all this had happened and what the future would bring. To satisfy their curiosity, Gaia let her knowledge and wisdom leak from cracks in the Earth at places such as Delphi where her priestesses interpreted it for people.

    Our curiosity is still with us thousands of years after this myth served as explanation of the world's creation. And in a sense, Gaia's knowledge and wisdom are still leaking from her body -- not just at Delphi, but everywhere we care to look in a scientific study of our living planet.

    The new scientific story of Gaian creation has other parallels to the ancient myth. We now recognize the Earth as a single self-creating being that came alive in its whirling dance through space, its crust transforming itself into mountains and valleys, the hot moisture pouring from its body to form seas. As its crust became ever more lively with bacteria, it created its own atmosphere, and the advent of sexual partnership finally did produce the larger life forms -- the trees and animals and people.

    The tale of Gaia's dance is thus being retold as we piece together the scientific details of our planet's dance of life. And in its context, the evolution of our own species takes on new meaning in relation to the whole. Once we truly grasp the scientific reality of our living planet and its physiology, our entire worldview and practice are bound to change profoundly, revealing the way to solving what now appear to be our greatest and most insoluble problems.

    From a Gaian point of view, we humans are an experiment -- a young trial species still at odds with ourselves and other species, still not having learned to balance our own dance within that of our whole planet. Unlike most other species, we are not biologically programmed to know what to do; rather, we are an experiment in free choice.

    This leaves us with enormous potential, powerful egotism, and tremendous anxiety -- a syndrome that is recognizably adolescent.

    Human history may seem very long to us as we study all that has happened in it, but we know only a few thousand years of it and have existed as humans for only a few million years, while Earth has been self-creating and evolving for billions of years. We have scarcely had time to come out of species childhood, yet our social evolution has changed us so fast that we have leaped into our adolescence.

    Humans are not the first creatures to make problems for themselves and for the whole Gaian system, as we will see. We are, however -- unless whales and dolphins beat us to it in past ages -- the first Gaian creatures who can understand such problems, think about them, and solve them by free choice. In fact, the argument of this book is that our maturity as a species depends on our accepting the responsibility for our natural heritage of behavioral freedom by working consciously and cooperatively toward our own health along with that of our planet.

    Our ability to be objective, to see ourselves as the I or eye of our cosmos, as beings independent of nature, has inflated our egos -- ego being the Greek word for I. We came to separate the I from the it and to believe that `it' -- the world apart from us, out there -- was ours to do with as we pleased. We told ourselves we were either God's favored children or the smartest and most powerful naturally-evolved creatures on Earth. This egotistic attitude has been very much a factor in bringing us to adolescent crisis.

    And so an attitude of greater humility and willingness to accept some guidance from our parent planet will be an important factor in reaching our species maturity.

    The tremendous problems confronting us now -- the inequality of hunger on one side and overconsumption on the other, the possibly irreversible damage to the natural world we depend on, just as our cells depend on the wholeness of our bodies for their life -- are all of our own making. These problems have become so enormous that many of us believe we will not be able to solve them in time. Yet just at this time in our troubled world we stand on the brink of maturity, in a position to recognize that we are neither perfect nor omnipotent, but that we can learn a great deal from a parent planet that is also not perfect or omnipotent but has the experience of billions of years of overcoming an endless array of difficulties, small and great.

    When we look anew at evolution, we see not only that other species have been as troublesome as ours, but that many a fiercely competitive situation resolved itself in a cooperative scheme. The kind of cells our bodies are made of, for example, began with the same kind of exploitation among bacteria that characterizes our historic human imperialism, as we will see.

    In fact, those ancient bacteria invented technologies of energy production, transportation and communications, including a WorldWideWeb still in existence today, during their competitive phase and then used those very technologies to bind themselves into the cooperative ventures that made our own existence possible. In the same way, we are now using essentially the same technologies, in our own invented versions, to unite ourselves into a single body of humanity that may make yet another new step in Earth's evolution possible. If we look to the lessons of evolution, we will gain hope that the newly forming worldwide body of humanity may also learn to adopt cooperation in favor of competition. The necessary systems have already been invented and developed; we lack only the understanding, motive, and will to use them consciously in achieving a cooperative species maturity.

    It may come as a surprise that nature has something to teach us about cooperative economics and politics. Sociobiologists, who have told us much in recent decades about humanity's animal heritage, have tended to paint us a bleak picture. Calling on our evolutionary heritage as evidence that we will never cure ourselves of territorial lust and aggression toward one another, they continue to predict there will be no end to economic greed and political warfare. But it is the aim of this book to show that these sociobiologists have presented a misleading picture -- as misleading as earlier scientists' one-sided view of all natural evolution as "red in tooth and claw," the hard and competitive struggle among individuals on which we have modeled our modern societies.

    The new view of our Gaian Earth in evolution shows, on the contrary, an intricate web of cooperative mutual dependency, the evolution of one scheme after another that harmonizes conflicting interests.

    The patterns of evolution show us the creative maintenance of life in all its complexity. Indeed nature is more suggestive of a mother juggling resources to ensure each family member's welfare as she works out differences of interest to make the whole family a cooperative venture, than of a rational engineer designing perfect machinery that obeys unchangeable laws.

    For scientists who shudder at such anthropomorphism -- defined as reading human attributes into nature -- let us not forget that mechanomorphism -- reading mechanical attributes into nature -- is really no better than second-hand anthropomorphism, since mechanisms are human products. Is it not more likely that nature in essence resembles one of its own creatures than that it resembles in essence the nonliving product of one of its creatures?

    The leading philosophers of our day recognize that the very foundations of our knowledge are quaking -- that our understanding of nature as machinery can no longer be upheld. But those who cling to the old understanding seriously fear that all human life will break down without a firm foundation for our knowledge of nature in mathematical reference points and laws of physics. They fail to see what every child can see -- that hummingbirds and flowers work, that nature does very well in ignorance of human conceptions of how it must work.

    Machinery is in fact the very antithesis of life. One must always hope a machine, between its times of use, will not change, for only if it does not change will it continue to be of use. Left to its own devices, so to speak, it will eventually be destroyed by its environment. Living organisms, on the other hand, cannot stay the same without changing constantly, and they use their environment to their advantage. To be sure, our machinery is getting better and better at imitating life; if this were not so, a mechanical science could not have advanced in understanding. But mechanical models of life continue to miss its essential self-creativity. Fortunately, our survival struggle is leading to intuitive grasps of nature's principles that are shifting our technologies into serving cooperative life purposes, especially clearly in the phenomenon of the global Internet.

    ·    ·    ·

    We are learning that there is more than one way to organize functional systems, to produce order and balance; that the imperfect and flexible principles of nature lead to greater stability and resilience in natural systems than we have produced in ours -- both technological and social -- by following the mechanical laws we assumed were natural.

    We designed our societies as though they were machinery; we made a Cold War on one another over who had the perfect social design. Our greatest recent conflict was over whether individuals should sacrifice their individual interest to the welfare of the whole or whether individual interest should reign supreme in the hope that the interests of the whole would thus take care of themselves

    No being in nature, outside our own species, is ever confronted with such a choice, and if we consult nature, the reason is obvious. The choice makes no sense, for neither alternative can work. No being in nature can ever be completely independent, although independence calls to every living being, whether it is a cell, a creature, a society, a species, or a whole ecosystem.

    Every being is part of some larger being, and as such its self-interest must be tempered by the interests of the larger being to which it belongs. Thus mutual consistency works itself out everywhere in nature, as we will see again and again in this book.

    For clues on organizing a workable economics and politics, we need not even look beyond our own bodies, with their cooperative diversity of cells and organs as a splendid example to us in working out our social future.

    Diversity is crucial to nature, yet we humans seem desperately eager to eliminate it, in nature and in one another. This is one of the greatest mistakes we are making. We reduce complex ecosystems to one-crop monocultures, and we do everything in our power to persuade or force others to adopt our languages, our customs, our social structures, instead of respecting their diversity and recognizing its validity. Both practices impoverish and weaken us within the Gaian system.

    We are right to worry about our survival, for we foolishly jeopardize it.

    We are wrong to devote our attention to saving or managing nature. Gaia will save herself with or without us and hardly needs advice or help in managing her affairs. To look out for ourselves, we would be wise to interfere as little as possible in her ways, and to learn as much as possible of them.

    Our technology has ravaged nature and continues to do so, but the ravages of technology are rooted in our youthful species' greed, our single bottom-line quest for profits motive. There is no intrinsic reason that we humans cannot develop a benign technology once we agree that our desire to maximize profits is completely at odds with nature's dynamic balance -- that greed prevents health and welfare for all. As Janine Benyus has pointed out, we assigned one group of people called biologists to study how other species make their living, and a completely separate group of people called economists to determine how our species makes its living.

    No other creatures take more than they need, and this must be our first lesson. Our second lesson is to learn and emulate nature's fine-tuned recycling economics, largely powered by free solar energy. This does not mean going back to log cabins or tipis, but to eliminate waste and junk as we creatively develop diverse human lifestyles of elegant and sustainable simplicity.

    The purpose of this book is to help pave the way to a happier and healthier future through an understanding of our relationship to the Gaian Earth system that spawned us and of which we are part -- a great being that, however it may annoy us, is not ours to dominate and control. We can damage it, but we cannot run it; we had better try to find out what it is all about and what we are doing, and may do, to survive happily within it.

    The aggressive and destructive motives of domination, conquest, control, and profit have been presented to us as unchangeable human nature by historians as well as by sociologists. But mounting evidence from archaeology strongly suggests that human societies were, for the greater part of civilized history, based more on cooperation and reverence for life and nature than on competition and obsession with death and technology. It seems our human childhood, which lasted far longer than has our recent adolescence, was guided by religious images of a near and nurturing Mother Goddess before a cruel and distant Father God replaced her in influence. As we come out of adolescence we often recognize the value of what we were taught in childhood, and this new historical view of ourselves supports the general thesis of this book.

    Like Gaian creation itself, human understanding or knowledge ever evolves.

    Parts of the story you are about to read will already have changed by the time you read it. Others will change in the years to come as new things about Earth-Gaia and about human history are discovered. Any of us is free to help find new pieces of the story, bring those we know up to date, and then reinterpret the evidence as a whole, for in the last analysis, every interpretation has its personal color and flavor.

    The next chapter is concerned with cosmic beginnings as a living context for our living planet; succeeding chapters, up to half of this book, tell of Gaian evolution over billions of years before we humans become part of it. Those interested in the story of human society may be tempted to skip this part of the story, but the scientific account of evolution in this book is not separable from our human social history. The details of our biological heritage from ancient bacteria on are given because therein lie the clues to a better human future. It is only within this context that we can appreciate our newness and our differences from the rest of nature, to see at the same time how we can benefit from its vast experience to fit ourselves in more harmoniously.

    It is on this that everything now depends; species suicide is our only alternative, and there is really no reason to make a dramatic adolescent exit instead of growing up, taking on adult responsibility, and reaping the pleasures of productive maturity. Let us then follow the evolution of Gaian creation and of our own history as social and technological creatures within this great dance of life. Let's see what meaning and guidance all this may give in our present crisis, to speed us on our way into full maturity, to a happier future in which we promote our own health and that of our planet within the greater cosmic dance. 




! Emerging technologies

!! https://en.wikipedia.org/wiki/Emerging_technologies

From Wikipedia, the free encyclopedia

For specific emerging technologies, see the List of emerging technologies
History of technology
By technological eras
By historical regions
By type of technology
Technology timelines
Article indices

    vte

Emerging technologies are technologies whose development, practical applications, or both are still largely unrealized, such that they are figuratively emerging into prominence from a background of nonexistence or obscurity. These technologies are generally new but also include older technologies that are still relatively undeveloped in potential, such as gene therapy (which dates to circa 1990 but even today still has large undeveloped potential). Emerging technologies are often perceived as capable of changing the status quo.

Emerging technologies are characterized by radical novelty (in application even if not in origins), relatively fast growth, coherence, prominent impact, and uncertainty and ambiguity. In other words, an emerging technology can be defined as "a radically novel and relatively fast growing technology characterised by a certain degree of coherence persisting over time and with the potential to exert a considerable impact on the socio-economic domain(s) which is observed in terms of the composition of actors, institutions and patterns of interactions among those, along with the associated knowledge production processes. Its most prominent impact, however, lies in the future and so in the emergence phase is still somewhat uncertain and ambiguous."[1]

Emerging technologies include a variety of technologies such as educational technology, information technology, nanotechnology, biotechnology, cognitive science, robotics, and artificial intelligence.[note 1]

New technological fields may result from the technological convergence of different systems evolving towards similar goals. Convergence brings previously separate technologies such as voice (and telephony features), data (and productivity applications) and video together so that they share resources and interact with each other, creating new efficiencies.

Emerging technologies are those technical innovations which represent progressive developments within a field for competitive advantage;[2] converging technologies represent previously distinct fields which are in some way moving towards stronger inter-connection and similar goals. However, the opinion on the degree of the impact, status and economic viability of several emerging and converging technologies varies.
Contents

    1 History of emerging technologies
    2 Emerging technology debates
    3 Examples of emerging technologies
        3.1 Gene therapy
        3.2 Cancer vaccines
        3.3 In vitro meat
        3.4 Nanotechnology
        3.5 Robotics
        3.6 Stem-cell therapy
        3.7 Distributed ledger technology
        3.8 Medical field advancements
    4 Development of emerging technologies
        4.1 Research and development
        4.2 DARPA
        4.3 Technology competitions and awards
    5 Role of science fiction
    6 See also
    7 Notes
    8 References
    9 Further reading

History of emerging technologies
Main article: History of technology

In the history of technology, emerging technologies[3][4] are contemporary advances and innovation in various fields of technology.

Over centuries innovative methods and new technologies are developed and opened up. Some of these technologies are due to theoretical research, and others from commercial research and development.

Technological growth includes incremental developments and disruptive technologies. An example of the former was the gradual roll-out of DVD (digital video disc) as a development intended to follow on from the previous optical technology compact disc. By contrast, disruptive technologies are those where a new method replaces the previous technology and makes it redundant, for example, the replacement of horse-drawn carriages by automobiles and other vehicles.
Emerging technology debates
See also: Technology and society

Many writers, including computer scientist Bill Joy,[5] have identified clusters of technologies that they consider critical to humanity's future. Joy warns that the technology could be used by elites for good or evil. They could use it as "good shepherds" for the rest of humanity or decide everyone else is superfluous and push for mass extinction of those made unnecessary by technology.[6]

Advocates of the benefits of technological change typically see emerging and converging technologies as offering hope for the betterment of the human condition. Cyberphilosophers Alexander Bard and Jan Söderqvist argue in The Futurica Trilogy that while Man himself is basically constant throughout human history (genes change very slowly), all relevant change is rather a direct or indirect result of technological innovation (memes change very fast) since new ideas always emanate from technology use and not the other way around.[7] Man should consequently be regarded as history's main constant and technology as its main variable. However, critics of the risks of technological change, and even some advocates such as transhumanist philosopher Nick Bostrom, warn that some of these technologies could pose dangers, perhaps even contribute to the extinction of humanity itself; i.e., some of them could involve existential risks.[8][9]

Much ethical debate centers on issues of distributive justice in allocating access to beneficial forms of technology. Some thinkers, including environmental ethicist Bill McKibben, oppose the continuing development of advanced technology partly out of fear that its benefits will be distributed unequally in ways that could worsen the plight of the poor.[10] By contrast, inventor Ray Kurzweil is among techno-utopians who believe that emerging and converging technologies could and will eliminate poverty and abolish suffering.[11]

Some analysts such as Martin Ford, author of The Lights in the Tunnel: Automation, Accelerating Technology and the Economy of the Future,[12] argue that as information technology advances, robots and other forms of automation will ultimately result in significant unemployment as machines and software begin to match and exceed the capability of workers to perform most routine jobs.

As robotics and artificial intelligence develop further, even many skilled jobs may be threatened. Technologies such as machine learning[13] may ultimately allow computers to do many knowledge-based jobs that require significant education. This may result in substantial unemployment at all skill levels, stagnant or falling wages for most workers, and increased concentration of income and wealth as the owners of capital capture an ever-larger fraction of the economy. This in turn could lead to depressed consumer spending and economic growth as the bulk of the population lacks sufficient discretionary income to purchase the products and services produced by the economy.[14]
See also: Technological innovation system, Technological utopianism, and Techno-progressivism
See also: Current research in evolutionary biology, Bioconservatism, Bioethics, and Biopolitics

Emerging technologies

    NASA Fuel cell stack
    Direct-methanol cell.

    Solid-state air batteries
    Li-Air composition

    3D IC components.
    Master and the slave boards.[15]

    The Semantic Web Stack
    Semantic layer architecture

    RFID Transcievers.
    Activates passive RFID chip.

    DARPA Power armatura
    Electromechanical exoskeleton

    Agri-robot farming.
    Cultivation 'bots and husbandry.

    Atmo-vortex engines.[16]
    Vortex generators

    Electromagnetic weapons.
    Hydrogen rf plasma discharger

Examples of emerging technologies
Main article: List of emerging technologies
Artificial Neural Network with Chip
Artificial intelligence
Main articles: Artificial intelligence and Outline of artificial intelligence

Main article: chatbots


Artificial intelligence (AI) is the sub intelligence exhibited by machines or software, and the branch of computer science that develops machines and software with animal-like intelligence. Major AI researchers and textbooks define the field as "the study and design of intelligent agents," where an intelligent agent is a system that perceives its environment and takes actions that maximize its chances of success. John McCarthy, who coined the term in 1956, defines it as "the study of making intelligent machines".

The central functions (or goals) of AI research include reasoning, knowledge, planning, learning, natural language processing (communication), perception and the ability to move and manipulate objects. General intelligence (or "strong AI") is still among the field's long-term goals. Currently, popular approaches include deep learning, statistical methods, computational intelligence and traditional symbolic AI. There is an enormous number of tools used in AI, including versions of search and mathematical optimization, logic, methods based on probability and economics, and many others.

Chatbots is a version of a artificial intelligence. Al based chatbots transform customers experience for good and rapidly gain their popularity by interacting with users using natural dialogue. Chatbots not only allow immediate conversation on websites, social media, or instant messaging apps at any place, but they also provide customized language mimicking human speech to improve user experience and cultivate customer loyalty.[17] Online users are now increasingly getting exposed to chatbots. However chatbot have yet to fully explore its potential. Using an online experiment (N = 242), we investigate the extent to which communicating with a stand-alone chatbot influences affective and behavioral responses compared to interactive Web sites. Several underlying mechanisms are studied, showing that enjoyment is the key mechanism explaining the positive effect of chatbots (vs. Web sites) on recommendation adherence and attitudes. Contrary to expectations, perceived anthropomorphism seems not to be particularly relevant in this comparison.[18]
3D Printer
Main article: 3D printing

Main article: 3D printing


3D printing, also known as additive manufacturing, has been posited by Jeremy Rifkin and others as part of the third industrial revolution.[19]

Combined with Internet technology, 3D printing would allow for digital blueprints of virtually any material product to be sent instantly to another person to be produced on the spot, making purchasing a product online almost instantaneous.

3D printing is also use for hospitals facilitates, it is use for Orthopedic Surgery and Traumatology is the specialty that can most benefit from the advantages of these tools. The purpose of this study is to present the results of the integration of 3D printing technology in a Department of Orthopedic Surgery and Traumatology and to identify the productive model of the point-of-care manufacturing as a paradigm of personalized medicine. [20] Pre-operative planning is their primary use. Working and 3D printing hours, as well as the amount of 3D printing material used, vary according to the type of product or material delivered to perform the process. The most commonly used 3D printing material for manufacturing is polylactic acid, although biocompatible resin has been used to produce surgical guides.[21]

Although this technology is still too crude to produce most products, it is rapidly developing and created a controversy in 2013 around the issue of 3D printed guns.[22]
Gene therapy
Main article: Gene therapy
See also: Genetic engineering timeline

Gene therapy was first successfully demonstrated in late 1990/early 1991 for adenosine deaminase deficiency, though the treatment was somatic – that is, did not affect the patient's germ line and thus was not heritable. This led the way to treatments for other genetic diseases and increased interest in germ line gene therapy – therapy affecting the gametes and descendants of patients.

Between September 1990 and January 2014, there were around 2,000 gene therapy trials conducted or approved.[23]
Cancer vaccines
Main article: Cancer vaccine

A cancer vaccine is a vaccine that treats existing cancer or prevents the development of cancer in certain high-risk individuals. Vaccines that treat existing cancer are known as therapeutic cancer vaccines. There are currently no vaccines able to prevent cancer in general.

On April 14, 2009, The Dendreon Corporation announced that their Phase III clinical trial of Provenge, a cancer vaccine designed to treat prostate cancer, had demonstrated an increase in survival. It received U.S. Food and Drug Administration (FDA) approval for use in the treatment of advanced prostate cancer patients on April 29, 2010.[24] The approval of Provenge has stimulated interest in this type of therapy.[25]
In vitro meat
Main article: In vitro meat

In vitro meat, also called cultured meat, clean meat, cruelty-free meat, shmeat, and test-tube meat, is an animal-flesh product that has never been part of a living animal with exception of the fetal calf serum taken from a slaughtered cow. In the 21st century, several research projects have worked on in vitro meat in the laboratory.[26] The first in vitro beefburger, created by a Dutch team, was eaten at a demonstration for the press in London in August 2013.[27] There remain difficulties to be overcome before in vitro meat becomes commercially available.[28] Cultured meat is prohibitively expensive, but it is expected that the cost could be reduced to compete with that of conventionally obtained meat as technology improves.[29][30] In vitro meat is also an ethical issue. Some argue that it is less objectionable than traditionally obtained meat because it doesn't involve killing and reduces the risk of animal cruelty, while others disagree with eating meat that has not developed naturally.[citation needed]
Nanotechnology
Main articles: Nanotechnology and Outline of nanotechnology

Nanotechnology (sometimes shortened to nanotech) is the manipulation of matter on an atomic, molecular, and supramolecular scale. The earliest widespread description of nanotechnology[31][32] referred to the particular technological goal of precisely manipulating atoms and molecules for fabrication of macroscale products, also now referred to as molecular nanotechnology. A more generalized description of nanotechnology was subsequently established by the National Nanotechnology Initiative, which defines nanotechnology as the manipulation of matter with at least one dimension sized from 1 to 100 nanometers. This definition reflects the fact that quantum mechanical effects are important at this quantum-realm scale, and so the definition shifted from a particular technological goal to a research category inclusive of all types of research and technologies that deal with the special properties of matter that occur below the given size threshold.
Robotics
Main articles: Robotics and Outline of robotics

Robotics is the branch of technology that deals with the design, construction, operation, and application of robots,[33] as well as computer systems for their control, sensory feedback, and information processing. These technologies deal with automated machines that can take the place of humans in dangerous environments or manufacturing processes, or resemble humans in appearance, behavior, and/or cognition. A good example of a robot that resembles humans is Sophia, a social humanoid robot developed by Hong Kong-based company Hanson Robotics which was activated on April 19, 2015. Many of today's robots are inspired by nature contributing to the field of bio-inspired robotics.
Self-replicating 3D printer
Stem-cell therapy
Main article: Stem-cell therapy

Stem cell therapy is an intervention strategy that introduces new adult stem cells into damaged tissue in order to treat disease or injury. Many medical researchers believe that stem cell treatments have the potential to change the face of human disease and alleviate suffering.[34] The ability of stem cells to self-renew and give rise to subsequent generations with variable degrees of differentiation capacities[35] offers significant potential for generation of tissues that can potentially replace diseased and damaged areas in the body, with minimal risk of rejection and side effects.

Chimeric antigen receptor (CAR)-modified T cells have raised among other immunotherapies for cancer treatment, being implemented against B-cell malignancies. Despite the promising outcomes of this innovative technology, CAR-T cells are not exempt from limitations that must yet to be overcome in order to provide reliable and more efficient treatments against other types of cancer. [36]
Distributed ledger technology
Main articles: Blockchain and Smart contracts

Distributed ledger or blockchain technology provides a transparent and immutable list of transactions. A wide range of uses has been proposed for where an open, decentralised database is required, ranging from supply chains to cryptocurrencies.

Smart contracts are self-executing transactions which occur when pre-defined conditions are met. The aim is to provide security that is superior to traditional contract law, and to reduce transaction costs and delays. The original idea was conceived by Nick Szabo in 1994,[37] but remained unrealised until the development of blockchains.[38][39]
Medical field advancements

With technology being faster with delivering data with cloud computing, the medical field is taking advantage of this by creating digital health records. Since doctors recently created digital health records, this can greatly improve the efficiency, the hospital can have with patients. Hospitals will improve public health by being able to share valuable information about an illness, make the workflow more smooth by doctors being able to pull up records on a patient with ease, and even lower healthcare costs by not using as much paper (Banova[40]). With the advancement of cloud computing, information can be delivered faster for doctors to help the medical field grow.[citation needed]

Risk management

Main article: Risk management [41]

Risk management is a well-known method to face new technological challenges and stands as a win–win combination of both protective and proactive approaches, fostering the collaboration of operators, researchers, regulators, and industries for the exploitation of new markets. A considerable amount of papers in this field has been devoted to risk analysis (Washington et al. [34]), ground risk assessment by estimating the fatality rate (Dalamagkidis et al. [ 8]), or the generation of ground risk maps (Primatesta et al. [30]). Against this framework, which is further explored below in Sect. 2, the paper aims to present a tool for managing data protection risks raised by autonomous or remotely piloted operations..[42]

New Water Technology

Main article: Water technology[43]

Water quality monitoring at the dialysis units (DU) is essential to ensure an appropriate dialysis fluid quality and guarantee an optimal and safe dialysis treatment to patients. This paper aims to evaluate the effectiveness, economic and organizational impact of automation, digitalization and remote water quality monitoring, through a New Water Technology (NWT) at a hospital DU to produce dialysis water, compared to a Conventional Water Technology (CWT). Methods: A before-and-after study was carried out at the Hospital Clínic Barcelona. Data on CWT was collected during 1-year (control) and 7-month for the NWT (case). Data on water quality, resource use and unit cost were retrospective and prospectively collected. [44]

Digital Technologies

The rapid evolution of digital technology in all walks of the life is an important indicator that a different future is waiting for us. Technology has become a mainstay of daily life and is being increasingly used in education, research as well clinical activities with new innovations aiding healthcare and increase our knowledge, productivity and efficiency. There is no doubt that the healthcare sector, including dental sciences will be influenced by these rapid changes with many standard procedures likely to change. This is supported by the fact that some medical and dental specialties such as radiology have already made the digital leap. Digital pathology is an emerging area which has started to transform education and workflow in pathology. In this review, we will discuss how these novel and 'disruptive' technologies are likely to change education, training and diagnostic work flow in oral and maxillofacial pathology. [45]


Development of emerging technologies

As innovation drives economic growth, and large economic rewards come from new inventions, a great deal of resources (funding and effort) go into the development of emerging technologies. Some of the sources of these resources are described below...
Research and development

Research and development is directed towards the advancement of technology in general, and therefore includes development of emerging technologies. See also List of countries by research and development spending.

Applied research is a form of systematic inquiry involving the practical application of science. It accesses and uses some part of the research communities' (the academia's) accumulated theories, knowledge, methods, and techniques, for a specific, often state-, business-, or client-driven purpose.

Science policy is the area of public policy which is concerned with the policies that affect the conduct of the science and research enterprise, including the funding of science, often in pursuance of other national policy goals such as technological innovation to promote commercial product development, weapons development, health care and environmental monitoring.
DARPA

The Defense Advanced Research Projects Agency (DARPA) is an agency of the U.S. Department of Defense responsible for the development of emerging technologies for use by the military.

DARPA was created in 1958 as the Advanced Research Projects Agency (ARPA) by President Dwight D. Eisenhower. Its purpose was to formulate and execute research and development projects to expand the frontiers of technology and science, with the aim to reach beyond immediate military requirements.

Projects funded by DARPA have provided significant technologies that influenced many non-military fields, such as the Internet and Global Positioning System technology.
Technology competitions and awards

There are awards that provide incentive to push the limits of technology (generally synonymous with emerging technologies). Note that while some of these awards reward achievement after-the-fact via analysis of the merits of technological breakthroughs, others provide incentive via competitions for awards offered for goals yet to be achieved.

The Orteig Prize was a $25,000 award offered in 1919 by French hotelier Raymond Orteig for the first nonstop flight between New York City and Paris. In 1927, underdog Charles Lindbergh won the prize in a modified single-engine Ryan aircraft called the Spirit of St. Louis. In total, nine teams spent $400,000 in pursuit of the Orteig Prize.

The XPRIZE series of awards, public competitions designed and managed by the non-profit organization called the X Prize Foundation, are intended to encourage technological development that could benefit mankind. The most high-profile XPRIZE to date was the $10,000,000 Ansari XPRIZE relating to spacecraft development, which was awarded in 2004 for the development of SpaceShipOne.

The Turing Award is an annual prize given by the Association for Computing Machinery (ACM) to "an individual selected for contributions of a technical nature made to the computing community." It is stipulated that the contributions should be of lasting and major technical importance to the computer field. The Turing Award is generally recognized as the highest distinction in computer science, and in 2014 grew to $1,000,000.

The Millennium Technology Prize is awarded once every two years by Technology Academy Finland, an independent fund established by Finnish industry and the Finnish state in partnership. The first recipient was Tim Berners-Lee, inventor of the World Wide Web.

In 2003, David Gobel seed-funded the Methuselah Mouse Prize (Mprize) to encourage the development of new life extension therapies in mice, which are genetically similar to humans. So far, three Mouse Prizes have been awarded: one for breaking longevity records to Dr. Andrzej Bartke of Southern Illinois University; one for late-onset rejuvenation strategies to Dr. Stephen Spindler of the University of California; and one to Dr. Z. Dave Sharp for his work with the pharmaceutical rapamycin.
Role of science fiction

Science fiction has often affected innovation and new technology - for example many rocketry pioneers were inspired by science fiction[46] - and the documentary How William Shatner Changed the World gives a number of examples of imagined technologies being actualized.
See also

    Technology portal

    List of emerging technologies
    Foresight
    Futures studies
    Institute for Ethics and Emerging Technologies
    Institute on Biotechnology and the Human Future
    Technological change
        Accelerating change
            Moore's law
        Innovation
        Technological revolution
    Transhumanism
        Technological singularity
    Upcoming software

Notes

    Other examples of developments described as "emerging technologies" can be found here – O'Reilly Emerging Technology Conference 2008.

References

Citations

Rotolo, D., Hicks, D., Martin, B. R. (2015) What is an emerging technology? Research Policy 44(10): 1827–1843. Available here
International Congress Innovation and Technology XXI: Strategies and Policies Towards the XXI Century, & Soares, O. D. D. (1997). Innovation and technology: Strategies and policies. Dordrecht: Kluwer Academic.
Emerging Technologies: From Hindsight to Foresight. Edited by Edna F. Einsiedel. UBC Press.
Emerging technologies: where is the federal government on the high tech curve? : hearing before the Subcommittee on Government Management, Information, and Technology of the Committee on Government Reform, House of Representatives, One Hundred Sixth Congress, second session, April 24, 2000
See: Wired Magazine, "Why the future doesn't need us",
Joy, Bill (2000). "Why the future doesn't need us". Wired. Retrieved 2005-11-14.
Bard, Alexander; Söderqvist, Jan (8 May 2012). The Futurica Trilogy. Stockholm Text. ISBN 978-9187173240.
Bostrom, Nick (2002). "Existential risks: analyzing human extinction scenarios". Retrieved 2006-02-21.
Warwick, K: “March of the Machines”, University of Illinois Press, 2004
McKibben, Bill (2003). Enough: Staying Human in an Engineered Age. Times Books. ISBN 978-0-8050-7096-5.
Kurzweil, Raymond (2005). The Singularity Is Near: When Humans Transcend Biology. Viking Adult. ISBN 978-0-670-03384-3.
Ford, Martin R. (2009), The Lights in the Tunnel: Automation, Accelerating Technology and the Economy of the Future, Acculant Publishing, ISBN 978-1448659814. (e-book available free online.)
econfuture (14 April 2011). "Machine Learning: A job killer?". Retrieved 28 May 2017.
Saenz, Aaron (15 December 2009). "Martin Ford Asks: Will Automation Lead to Economic Collapse?". Retrieved 28 May 2017.
Circuit boards began development in 1960s. An example, among others, includes Stacked Printed Circuit Board by Victor F. Dahlgren et al. U.S. Patent 3,409,732. See also: System in Package (SiP) or Chip Stack MCM
This conceptual drawing measures in diameter 200+ m (660 ft.+).
Cheng, Yang; Jiang, Hua (2020-10-01). "How Do AI-driven Chatbots Impact User Experience? Examining Gratifications, Perceived Privacy Risk, Satisfaction, Loyalty, and Continued Use". Journal of Broadcasting & Electronic Media. 64 (4): 592–614. doi:10.1080/08838151.2020.1834296. ISSN 0883-8151.
Ischen, Carolin; Araujo, Theo; Noort, Guda van; Voorveld, Hilde; Smit, Edith (2020-10-01). ""I Am Here to Assist You Today": The Role of Entity, Interactivity and Experiential Perceptions in Chatbot Persuasion". Journal of Broadcasting & Electronic Media. 64 (4): 615–639. doi:10.1080/08838151.2020.1834297. ISSN 0883-8151.
"Home – Office of Jeremy Rifkin". Office of Jeremy Rifkin. Retrieved 28 May 2017.
Calvo-Haro, Jose Antonio; Pascau, Javier; Mediavilla-Santos, Lydia; Sanz-Ruiz, Pablo; Sánchez-Pérez, Coral; Vaquero-Martín, Javier; Perez-Mañanes, Rubén (2021-04-16). "Conceptual evolution of 3D printing in orthopedic surgery and traumatology: from "do it yourself" to "point of care manufacturing"". BMC Musculoskeletal Disorders. 22 (1): 360. doi:10.1186/s12891-021-04224-6. ISSN 1471-2474. PMC 8051827. PMID 33863319.
Calvo-Haro, Jose Antonio; Pascau, Javier; Mediavilla-Santos, Lydia; Sanz-Ruiz, Pablo; Sánchez-Pérez, Coral; Vaquero-Martín, Javier; Perez-Mañanes, Rubén (2021-04-16). "Conceptual evolution of 3D printing in orthopedic surgery and traumatology: from "do it yourself" to "point of care manufacturing"". BMC Musculoskeletal Disorders. 22 (1): 360. doi:10.1186/s12891-021-04224-6. ISSN 1471-2474. PMC 8051827. PMID 33863319.
Estes, Adam Clark. "3D-Printed Guns Are Only Getting Better, and Scarier". Retrieved 28 May 2017.
"Gene Therapy Clinical Trials Worldwide". www.wiley.com. Retrieved 28 May 2017.
"Approval Letter – Provenge". Food and Drug Administration. 2010-04-29.
"What Comes After Dendreon's Provenge?". 18 Oct 2010.
Siegelbaum, D.J. (2008-04-23). "In Search of a Test-Tube Hamburger". Time. Retrieved 2009-04-30.
"World's first lab-grown burger is eaten in London". BBC News. 5 August 2013. Retrieved 28 May 2017.
Fountain, Henry (12 May 2013). "Engineering the $325,000 In Vitro Burger". The New York Times. Retrieved 28 May 2017.
Temple, James (2009-02-23). "The Future of Food: The No-kill Carnivore". Portfolio.com. Retrieved 2009-08-07.
Preliminary Economics Study of Cultured Meat Archived October 3, 2015, at the Wayback Machine, eXmoor Pharma Concepts, 2008
Drexler, K. Eric (1986). Engines of Creation: The Coming Era of Nanotechnology. Doubleday. ISBN 978-0-385-19973-5.
Drexler, K. Eric (1992). Nanosystems: Molecular Machinery, Manufacturing, and Computation. New York: John Wiley & Sons. ISBN 978-0-471-57547-4.
"robotics". Oxford Dictionaries. Retrieved 4 February 2011.
Lindvall, O.; Kokaia, Z. (2006). "Stem cells for the treatment of neurological disorders". Nature. 441 (7097): 1094–1096. Bibcode:2006Natur.441.1094L. doi:10.1038/nature04960. PMID 16810245. S2CID 4425363.
Weissman IL (January 2000). "Stem cells: units of development, units of regeneration, and units in evolution". Cell. 100 (1): 157–68. doi:10.1016/S0092-8674(00)81692-X. PMID 10647940. S2CID 12414450. as cited in Gurtner GC; Callaghan MJ; Longaker MT (2007). "Progress and potential for regenerative medicine". Annu. Rev. Med. 58: 299–312. doi:10.1146/annurev.med.58.082405.095329. PMID 17076602.
Ureña-Bailén, Guillermo; Lamsfus-Calle, Andrés; Daniel-Moreno, Alberto; Raju, Janani; Schlegel, Patrick; Seitz, Christian; Atar, Daniel; Antony, Justin S.; Handgretinger, Rupert; Mezger, Markus (2020-05-20). "CRISPR/Cas9 technology: towards a new generation of improved CAR-T cells for anticancer therapies". Briefings in Functional Genomics. 19 (3): 191–200. doi:10.1093/bfgp/elz039. ISSN 2041-2657. PMID 31844895.
"Nick Szabo -- Smart Contracts: Building Blocks for Digital Markets". www.fon.hum.uva.nl. Retrieved 2018-03-08.
How blockchain technology could change our lives - European Parliamentary Research Service
Vincenzo, Morabito (2017). Business Innovation Through Blockchain: The B3 Perspective. pp. 101–124.
"The Impact of Technology on Healthcare". AIMS EDUCATION. 2018-04-24. Retrieved 2019-05-08.
Bassi, Eleonora; Bloise, Nicoletta; Dirutigliano, Jacopo; Fici, Gian Piero; Pagallo, Ugo; Primatesta, Stefano; Quagliotti, Fulvia (2019-12-01). "The Design of GDPR-Abiding Drones Through Flight Operation Maps: A Win–Win Approach to Data Protection, Aerospace Engineering, and Risk Management". Minds and Machines. 29 (4): 579–601. doi:10.1007/s11023-019-09511-9. ISSN 1572-8641.
Bassi, Eleonora; Bloise, Nicoletta; Dirutigliano, Jacopo; Fici, Gian Piero; Pagallo, Ugo; Primatesta, Stefano; Quagliotti, Fulvia (2019-12-01). "The Design of GDPR-Abiding Drones Through Flight Operation Maps: A Win–Win Approach to Data Protection, Aerospace Engineering, and Risk Management". Minds and Machines. 29 (4): 579–601. doi:10.1007/s11023-019-09511-9. ISSN 1572-8641.
García-Lorenzo, Borja; Fernández-Barceló, Carla; Maduell, Francisco; Sampietro-Colom, Laura (2021-02-25). "Health Technology Assessment of a new water quality monitoring technology: Impact of automation, digitalization and remoteness in dialysis units". PLOS ONE. 16 (2): e0247450. doi:10.1371/journal.pone.0247450. ISSN 1932-6203. PMC 7906308. PMID 33630930.
García-Lorenzo, Borja; Fernández-Barceló, Carla; Maduell, Francisco; Sampietro-Colom, Laura (2021-02-25). "Health Technology Assessment of a new water quality monitoring technology: Impact of automation, digitalization and remoteness in dialysis units". PLOS ONE. 16 (2): e0247450. doi:10.1371/journal.pone.0247450. ISSN 1932-6203. PMC 7906308. PMID 33630930.
"Journal of Experimental & Clinical Medicine | ScienceDirect.com by Elsevier". www.sciencedirect.com. Retrieved 2021-05-16.

    Benson, Michael (20 July 2019). "Science Fiction Sent Man to the Moon". Retrieved 11 August 2019.

Further reading

General

    Giersch, H. (1982). Emerging technologies: Consequences for economic growth, structural change, and employment : symposium 1981. Tübingen: Mohr.
    Jones-Garmil, K. (1997). The wired museum: Emerging technology and changing paradigms. Washington, DC: American Association of Museums.
    Kaldis, Byron (2010). "Converging Technologies". Sage Encyclopedia of Nanotechnology and Society, Thousand Oaks: CA, Sage
    Rotolo D.; Hicks D.; Martin B. R. (2015). "What is an emerging technology?". Research Policy. 44 (10): 1827–1843. arXiv:1503.00673. doi:10.1016/j.respol.2015.06.006. S2CID 15234961.

Law and policy

    Branscomb, L. M. (1993). Empowering technology: Implementing a U.S. strategy. Cambridge, Mass: MIT Press.
    Raysman, R., & Raysman, R. (2002). Emerging technologies and the law: Forms and analysis. Commercial law intellectual property series. New York, N.Y.: Law Journal Press.

Information and learning

    Hung, D., & Khine, M. S. (2006). Engaged learning with emerging technologies. Dordrecht: Springer.
    Kendall, K. E. (1999). Emerging information technologies: Improving decisions, cooperation, and infrastructure. Thousand Oaks, Calif: Sage Publications.

Other

    Cavin, R. K., & Liu, W. (1996). Emerging technologies: Designing low power digital systems. [New York]: Institute of Electrical and Electronics Engineers.

    vte

Emerging technologies
Categories:

    Emerging technologiesBioethicsFutures studiesTechnology forecastingTranshumanismTechnology development

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    বাংলা
    Español
    فارسی
    Français
    Italiano
    Português
    Tiếng Việt
    中文

Edit links

    This page was last edited on 17 May 2021, at 03:47 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


! Engineering ethics
!! 
!! https://en.wikipedia.org/wiki/Engineering_ethics

From Wikipedia, the free encyclopedia


Engineering ethics is the field of system of moral principles that apply to the practice of engineering. The field examines and sets the obligations by engineers to society, to their clients, and to the profession. As a scholarly discipline, it is closely related to subjects such as the philosophy of science, the philosophy of engineering, and the ethics of technology.
Contents

    1 Background and origins
        1.1 Up to the 19th century and growing concerns
        1.2 Turn of the 20th century and turning point
        1.3 Recent developments
    2 General principles
        2.1 Obligation to society
        2.2 Whistleblowing
        2.3 Conduct
    3 Case studies and key individuals
    4 Notes
    5 References
    6 Further reading
    7 External links
        7.1 Australia
        7.2 Canada
        7.3 Germany
        7.4 Ireland
        7.5 Sri Lanka
        7.6 Turkey
        7.7 United Kingdom
        7.8 United States
        7.9 International

Background and origins
Up to the 19th century and growing concerns
The first Tay Bridge collapsed in 1879. At least sixty were killed.

As engineering rose as a distinct profession during the 19th century, engineers saw themselves as either independent professional practitioners or technical employees of large enterprises. There was considerable tension between the two sides as large industrial employers fought to maintain control of their employees.[1]

In the United States growing professionalism gave rise to the development of four founding engineering societies: The American Society of Civil Engineers (ASCE) (1851), the American Institute of Electrical Engineers (AIEE) (1884),[2] the American Society of Mechanical Engineers (ASME) (1880), and the American Institute of Mining Engineers (AIME) (1871).[3] ASCE and AIEE were more closely identified with the engineer as learned professional, where ASME, to an extent, and AIME almost entirely, identified with the view that the engineer is a technical employee.[4]

Even so, at that time ethics was viewed as a personal rather than a broad professional concern.[5][6]:6
Turn of the 20th century and turning point
The Boston molasses disaster provided a strong impetus for the establishment of professional licensing and codes of ethics in the United States.

When the 19th century drew to a close and the 20th century began, there had been series of significant structural failures, including some spectacular bridge failures, notably the Ashtabula River Railroad Disaster (1876), Tay Bridge Disaster (1879), and the Quebec Bridge collapse (1907). These had a profound effect on engineers and forced the profession to confront shortcomings in technical and construction practice, as well as ethical standards.[7]

One response was the development of formal codes of ethics by three of the four founding engineering societies. AIEE adopted theirs in 1912. ASCE and ASME did so in 1914.[8] AIME did not adopt a code of ethics in its history.[4]

Concerns for professional practice and protecting the public highlighted by these bridge failures, as well as the Boston molasses disaster (1919), provided impetus for another movement that had been underway for some time: to require formal credentials (Professional Engineering licensure in the US) as a requirement to practice. This involves meeting some combination of educational, experience, and testing requirements.[9]

In 1950, the Association of German Engineers developed an oath for all its members titled 'The Confession of the Engineers', directly hinting at the role of engineers in the atrocities committed during World War II.[10][11][12]

Over the following decades most American states and Canadian provinces either required engineers to be licensed, or passed special legislation reserving title rights to organization of professional engineers.[13] The Canadian model is to require all persons working in fields of engineering that posed a risk to life, health, property, the public welfare and the environment to be licensed, and all provinces required licensing by the 1950s.

The US model has generally been only to require the practicing engineers offering engineering services that impact the public welfare, safety, safeguarding of life, health, or property to be licensed, while engineers working in private industry without a direct offering of engineering services to the public or other businesses, education, and government need not be licensed.[14] This has perpetuated the split between professional engineers and those in private industry.[15] Professional societies have adopted generally uniform codes of ethics.
Recent developments
William LeMessurier's response to design deficiencies uncovered after construction of the Citigroup Center is often cited as an example of ethical conduct.

Efforts to promote ethical practice continue. In addition to the professional societies and chartering organizations efforts with their members, the Canadian Iron Ring and American Order of the Engineer trace their roots to the 1907 Quebec Bridge collapse. Both require members to swear an oath to uphold ethical practice and wear a symbolic ring as a reminder.

In the United States, the National Society of Professional Engineers released in 1946 its Canons of Ethics for Engineers and Rules of Professional Conduct, which evolved to the current Code of Ethics, adopted in 1964. These requests ultimately led to the creation of the Board of Ethical Review in 1954. Ethics cases rarely have easy answers, but the BER's nearly 500 advisory opinions have helped bring clarity to the ethical issues engineers face daily.[16]

Currently, bribery and political corruption is being addressed very directly by several professional societies and business groups around the world.[17][18] However, new issues have arisen, such as offshoring, sustainable development, and environmental protection, that the profession is having to consider and address.
General principles

    Engineers, in the fulfillment of their professional duties, shall hold paramount the safety, health, and welfare of the public
    — National Society of Professional Engineers, [19]

    A practitioner shall regard the practitioner's duty to public welfare as paramount."
    — Professional Engineers Ontario, [20]





Codes of engineering ethics identify a specific precedence with respect to the engineer's consideration for the public, clients, employers, and the profession.

Many engineering professional societies have prepared codes of ethics. Some date to the early decades of the twentieth century.[13] These have been incorporated to a greater or lesser degree into the regulatory laws of several jurisdictions. While these statements of general principles served as a guide, engineers still require sound judgment to interpret how the code would apply to specific circumstances.

The general principles of the codes of ethics are largely similar across the various engineering societies and chartering authorities of the world,[21] which further extend the code and publish specific guidance.[22] The following is an example from the American Society of Civil Engineers:[23]

    Engineers shall hold paramount the safety, health and welfare of the public and shall strive to comply with the principles of sustainable development in the performance of their professional duties.[23]
    Engineers shall perform services only in areas of their competence.[23]
    Engineers shall issue public statements only in an objective and truthful manner.[23]
    Engineers shall act in professional matters for each employer or client as faithful agents or trustees, and shall avoid conflicts of interest.[23]
    Engineers shall build their professional reputation on the merit of their services and shall not compete unfairly with others.
    Engineers shall act in such a manner as to uphold and enhance the honor, integrity, and dignity of the engineering profession and shall act with zero-tolerance for bribery, fraud, and corruption.[23]
    Engineers shall continue their professional development throughout their careers, and shall provide opportunities for the professional development of those engineers under their supervision.[23]
    Engineers shall, in all matters related to their profession, treat all persons fairly and encourage equitable participation without regard to gender or gender identity, race, national origin, ethnicity, religion, age, sexual orientation, disability, political affiliation, or family, marital, or economic status.[24]

Obligation to society

The paramount value recognized by engineers is the safety and welfare of the public. As demonstrated by the following selected excerpts, this is the case for professional engineering organizations in nearly every jurisdiction and engineering discipline:

    Institute of Electrical and Electronics Engineers: "We, the members of the IEEE, … do hereby commit ourselves to the highest ethical and professional conduct and agree: 1. to accept responsibility in making decisions consistent with the safety, health and welfare of the public, and to disclose promptly factors that might endanger the public or the environment;"[25]
    Institution of Civil Engineers: "Members of the ICE should always be aware of their overriding responsibility to the public good. A member’s obligations to the client can never override this, and members of the ICE should not enter undertakings which compromise this responsibility. The ‘public good’ encompasses care and respect for the environment, and for humanity's cultural, historical and archaeological heritage, as well as the primary responsibility members have to protect the health and well-being of present and future generations."[26]
    Professional Engineers Ontario: "A practitioner shall, regard the practitioner's duty to public welfare as paramount."[20]
    National Society of Professional Engineers: "Engineers, in the fulfillment of their professional duties, shall: Hold paramount the safety, health, and welfare of the public."[19]
    American Society of Mechanical Engineers: "Engineers shall hold paramount the safety, health and welfare of the public in the performance of their professional duties."[27]
    Institute of Industrial Engineers: "Engineers uphold and advance the integrity, honor and dignity of the engineering profession by: 2. Being honest and impartial, and serving with fidelity the public, their employers and clients."[28]
    American Institute of Chemical Engineers: "To achieve these goals, members shall hold paramount the safety, health and welfare of the public and protect the environment in performance of their professional duties."[29]
    American Nuclear Society: "ANS members uphold and advance the integrity and honor of their professions by using their knowledge and skill for the enhancement of human welfare and the environment; being honest and impartial; serving with fidelity the public, their employers, and their clients; and striving to continuously improve the competence and prestige of their various professions."[30]
    Society of Fire Protection Engineers: "In the practice of their profession, fire protection engineers must maintain and constantly improve their competence and perform under a standard of professional behavior which requires adherence to the highest principles of ethical conduct with balanced regard for the interests of the public, clients, employers, colleagues, and the profession."[31]

Responsibility of engineers

The engineers recognize that the greatest merit is the work and exercise their profession committed to serving society, attending to the welfare and progress of the majority. By transforming nature for the benefit of mankind, engineers must increase their awareness of the world as the abode of humanity, their interest in the universe as a guarantee of overcoming their spirit, and knowledge of reality to make the world fairer and happier. The engineer should reject any paper that is intended to harm the general interest, thus avoiding a situation that might be hazardous or threatening to the environment, life, health, or other rights of human beings. It is an inescapable duty of the engineer to uphold the prestige of the profession, to ensure its proper discharge, and to maintain a professional demeanor rooted in ability, honesty, fortitude, temperance, magnanimity, modesty, honesty, and justice; with the consciousness of individual well-being subordinate to the social good. The engineers and their employers must ensure the continuous improvement of their knowledge, particularly of their profession, disseminate their knowledge, share their experience, provide opportunities for education and training of workers, provide recognition, moral and material support to the schools where they studied, thus returning the benefits and opportunities they and their employers have received. It is the responsibility of the engineers to carry out their work efficiently and to support the law. In particular, they must ensure compliance with the standards of worker protection as provided by the law. As professionals, the engineers are expected to commit themselves to high standards of conduct (NSPE). [1] 11/27/11
Whistleblowing
The Space Shuttle Challenger disaster is used as a case study of whistleblowing and organizational behavior including groupthink.
Main article: Whistleblower

A basic ethical dilemma is that an engineer has the duty to report to the appropriate authority a possible risk to others from a client or employer failing to follow the engineer's directions. According to first principles, this duty overrides the duty to a client and/or employer.[32] An engineer may be disciplined, or have their license revoked, even if the failure to report such a danger does not result in the loss of life or health.[33]

In many cases, this duty can be discharged by advising the client of the consequences in a forthright matter, and ensuring the client takes the engineer's advice. In very rare cases, where even a governmental authority may not take appropriate action, the engineer can only discharge the duty by making the situation public.[34] As a result, whistleblowing by professional engineers is not an unusual event, and courts have often sided with engineers in such cases, overruling duties to employers and confidentiality considerations that otherwise would have prevented the engineer from speaking out.[35]
Conduct

There are several other ethical issues that engineers may face. Some have to do with technical practice, but many others have to do with broader considerations of business conduct. These include:[22]

    Relationships with clients, consultants, competitors, and contractors
    Ensuring legal compliance by clients, client's contractors, and others
    Conflict of interest
    Bribery and kickbacks, which also may include:
        Gifts, meals, services, and entertainment
    Treatment of confidential or proprietary information
    Consideration of the employer's assets
    Outside employment/activities (Moonlighting)

Some engineering societies are addressing environmental protection as a stand-alone question of ethics.[23]

The field of business ethics often overlaps and informs ethical decision making for engineers.
Case studies and key individuals

Petroski notes that most engineering failures are much more involved than simple technical mis-calculations and involve the failure of the design process or management culture.[36] However, not all engineering failures involve ethical issues. The infamous collapse of the first Tacoma Narrows Bridge, and the losses of the Mars Polar Lander and Mars Climate Orbiter were technical and design process failures.

These episodes of engineering failure include ethical as well as technical issues.

    General Motors ignition switch recalls (2014)
    Space Shuttle Columbia disaster (2003)
    Space Shuttle Challenger disaster (1986)
    Therac-25 accidents (1985 to 1987)
    Chernobyl disaster (1986)
    Bhopal disaster (1984)
    Kansas City Hyatt Regency walkway collapse (1981)
    Love Canal (1980), Lois Gibbs
    Three Mile Island accident (1979)
    Citigroup Center (1978),
    Ford Pinto safety problems (1970s)
    Minamata disease (1908–1973)
    Aberfan disaster (1966)
    Chevrolet Corvair safety problems (1960s), Ralph Nader, and Unsafe at Any Speed
    Boston molasses disaster (1919)
    Quebec Bridge collapse (1907), Theodore Cooper
    Johnstown Flood (1889), South Fork Fishing and Hunting Club
    Tay Bridge Disaster (1879), Thomas Bouch, William Henry Barlow, and William Yolland
    Ashtabula River Railroad Disaster (1876), Amasa Stone
    Deepwater Horizon oil spill (2010)

Notes

Layton (1986). pp. 6-9
The AIEE merged with the Institute of Radio Engineers (IRE) (1912) in 1963 to form the IEEE.
AIME is now the umbrella organization of four technical societies: the Society for Mining, Metallurgy, and Exploration (SME) (1957), The Minerals, Metals & Materials Society (TMS) (1957), the Society of Petroleum Engineers (SPE) (1957), and the Association For Iron and Steel Technology (AIST) (1974). Neither AIME, nor its subsidiary societies have adopted a formal code of ethics.
Layton (1986) p. 35.
ASCE (2000). p. 10.
Flavell, Eric. "The ASCE Code of Ethics: PRINCIPLES, STUDY, AND APPLICATION". ASCE. Archived from the original on 2013-12-03. Retrieved Nov 27, 2013.
ASME member H.F.J. Porter had proposed as early as 1892 that the engineering societies adopt uniform membership, education, and licensing requirements as well as a code of ethics. (Layton (1986). pp. 45-46)
Layton (1986). pp. 70 & 114.
Layton (1986). pp. 124-125.
Dietz, Burkhard, ed. (1996). Technische Intelligenz und "Kulturfaktor Technik". p. 29. ISBN 9783893254477.
Lorenz, Werner; Meyer, Torsen (2004). Technik und Verantwortung im Nationalsozialismus. p. 55. ISBN 9783830964070.
https://www.vdi.de/fileadmin/media/content/hg/16.pdf
Layton (1986)
https://engineers.texas.gov/downloads/lawrules.pdf
Layton (1986). pp. 6-7
"Board of Ethical Review". National Society of Professional Engineers. 2013. Retrieved Nov 29, 2013.
Transparency International and Social Accountability International (2009). Business Principles for Countering Bribery. Retrieved 2013-11-29.
"Report Details Guidelines to Reduce Corruption in Engineering and Construction Industry" (Press release). ASCE. 2005-06-17. Archived from the original on 2007-09-30. Retrieved 2006-10-20.
"NSPE Code of Ethics for Engineers". National Society of Professional Engineers. 2013. Retrieved Nov 29, 2013.
PEO. Professional Engineers Ontario Code of Ethics. Section 77.2.i of the Ontario Regulation 941. Retrieved: 2006-10-19.
ICE (2004).
ASCE (2000).
ASCE [1914] (2006).
"Code of Ethics | ASCE". www.asce.org. Retrieved 2018-12-14.
IEEE (2006). Code of Ethics Canon 1.. Retrieved: 2006-10-19.
ICE (2004). p. 38.
"Code of Ethics of Engineers". ASME. 2013. Archived from the original on 2013-12-06. Retrieved Nov 29, 2013.
IIE. "Ethics". [1] Retrieved: 2011-6-01.
AIChE (2003). Code of Ethics Retrieved: 2006-10-21.
ANS (2003). Code of Ethics Retrieved: 2011-08-19.
"Code of Ethics - SFPE". www.sfpe.org. Retrieved 2017-05-18.
Weil, "Whistleblowing: What Have We Learned Since the Challenger?"
See NSPE, Board of Ethical Review, Cases 82-5 Archived 2012-08-08 at the Wayback Machine and 88-6 .
NSPE (2006-06-30). "Final Report of the NSPE Task Force on Overruling Engineering Judgment to the NSPE Board of Directors" (PDF). Retrieved 2020-08-28.
See the case of Shawn Carpenter.

    Petroski (1985)

References

    American Society of Civil Engineers (2010) [1914]. Code of Ethics. Reston, Virginia, USA: ASCE Press. Archived from the original on 2011-02-14. Retrieved 2011-12-07.
    American Society of Civil Engineers (2000). Ethics Guidelines for Professional Conduct for Civil Engineers (PDF). Reston, Virginia, USA: ASCE Press. Archived from the original (PDF) on 2014-10-21. Retrieved 2013-11-30.
    Institution of Civil Engineers (2004). Royal Charter, By-laws, Regulations and Rules. Archived from the original on 2013-12-03. Retrieved 2006-10-20.
    Layton, Edwin (1986). The Revolt of the Engineers: Social Responsibility and the American Engineering Profession. Baltimore, Maryland, USA: The Johns Hopkins University Press. ISBN 0-8018-3287-X.
    Petroski, Henry (1985). To Engineer is Human: the Role of Failure in Successful Design. St Martins Press. ISBN 0-312-80680-9.
    National Society of Professional Engineers (2007) [1964]. Code of Ethics (PDF). Alexandria, Virginia, USA: NSPE. Archived from the original (PDF) on 2008-12-02. Retrieved 2006-10-20.

Further reading

    Alford, C.F. (2002). Whistleblowers: Broken Lives and Organizational Power, Cornell University Press. ISBN 978-0801487804, 192 pp.
    Fleddermann, C.B. (2011). Engineering Ethics, Prentice Hall, 4th edition. ISBN 978-0132145213, 192pp.
    Glazer, M.P. (1991).Whistleblower, New York, NY: Basic Books. ISBN 978-0465091744, 306pp.
    Harris, C.E., M.S. Pritchard, and M.J. Rabins (2008).Engineering Ethics: Concept and Cases, Wadsworth Publishing, 4th edition. ISBN 978-0495502791, 332 pp.
    Peterson, Martin (2020). Ethics for Engineers, Oxford University Press. ISBN 9780190609191, 256 pp.
    Huesemann, Michael H., and Joyce A. Huesemann (2011). Technofix: Why Technology Won’t Save Us or the Environment, Chapter 14, “Critical Science and Social Responsibility”, New Society Publishers, Gabriola Island, British Columbia, Canada, ISBN 0865717044, 464 pp.
    Martin, M.W., and R. Schinzinger (2004). Ethics in Engineering, McGraw-Hill, 4th edition. ISBN 978-0072831153, 432 pp.
    Van de Poel, I., and L. Royakkers (2011). Ethics, Technology, and Engineering: An Introduction, Wiley-Blackwell. ISBN 978-1-444-33095-3, 376 pp.

External links
	Wikibooks has more on the topic of: Engineering ethics
	Wikiquote has quotations related to: Engineering ethics
Australia

    Association of Professional Engineers, Scientists and Managers, Australia

    Ethical Decision Making

    Engineers Australia

    Code of Ethics

Canada

    Association of Professional Engineers and Geoscientists of British Columbia (APEGBC)

    Act, Bylaws and Code of Ethics

    Association of Professional Engineers, and Geoscientists of Alberta (APEGA)

    EGGP Code of Ethics

    Association of Professional Engineers and Geoscientists of Manitoba (APEGM)

    Code of Ethics

    Professional Engineers Ontario (PEO)

    Code of Ethics (See link on front page.)

    L'Ordre des ingénieurs du Québec (OIQ)

    Code of Ethics of Engineers

    Iron Ring

    The Ritual of the Calling of an Engineer

    University of Western Ontario

    Software Ethics - A Guide to the Ethical and Legal Use of Software for Members of the University Community of the University of Western Ontario

Germany

    Verein Deutscher Ingenieure

    Ethical principles of engineering profession

Ireland

    Engineers Ireland

    Code of Ethics

Sri Lanka

    Institution of Engineers, Sri Lanka

    Code of Ethics

Turkey

    Union of Chambers of Turkish Engineers and Architects

    Professional Behavior Principles

United Kingdom

    Association for Consultancy and Engineering (ACE)

    Anti-Corruption Action Statement

    Institution of Civil Engineers (ICE)

    Royal Charter, By-laws, Regulations and Rules

    Institution of Engineering and Technology (IET)

    Professional ethics and the IET

    Engineering Council (EC)

    Statement of Ethical Principles

United States

    National Academy of Engineering

    Online Ethics Center of the National Academy of Engineering

    List of links to various professional and scientific societies' codes of ethics

    Onlineethics.org

    National Institute for Engineering Ethics (NIEE)
    National Society of Professional Engineers (NSPE)

    Code of Ethics
    Board of Ethical Review and BER Cases
    Ethics Resources and References

    American Institute of Chemical Engineers (AIChE)

    Code of Ethics

    American Society of Civil Engineers (ASCE)

    Code of Ethics
    Standards of Professional Conduct for Civil Engineers

    American Society of Mechanical Engineers (ASME), Code of Ethics
    Institute of Electrical and Electronics Engineers (IEEE)

    Code of Ethics

    The Order of the Engineer

    The Obligation of an Engineer

    Society of Manufacturing Engineers (SME)

    Code of Ethics

International

    Global Infrastructure Anti-Corruption Centre
    Transparency International

    vte

Engineering

    vte

Ethics
Categories:

    Ethics of science and technologyPhilosophy of engineeringProfessional ethicsEngineering studies

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikiquote

Languages

    العربية
    Español
    فارسی
    Français
    한국어
    Русский
    தமிழ்
    Türkçe
    中文

Edit links

    This page was last edited on 30 April 2021, at 11:20 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki




! Environmental technology

!! https://en.wikipedia.org/wiki/Environmental_technology

From Wikipedia, the free encyclopedia

Sustainable urban design and innovation: Photovoltaic ombrière SUDI is an autonomous and mobile station that replenishes energy for electric vehicles using solar energy.

Environmental technology (envirotech), green technology (greentech) or clean technology (cleantech) is the application of one or more of environmental science, green chemistry, environmental monitoring and electronic devices to monitor, model and conserve the natural environment and resources, and to curb the negative impacts of human involvement. The term is also used to describe sustainable energy generation technologies such as photovoltaics, wind turbines, bioreactors, etc. Sustainable development is the core of environmental technologies. The term environmental technologies is also used to describe a class of electronic devices that can promote sustainable management of resources.
Contents

    1 Examples
        1.1 Renewable energy
        1.2 Water purification
        1.3 Air purification
        1.4 Sewage treatment
        1.5 Environmental remediation
        1.6 Solid waste management
        1.7 eGain forecasting
        1.8 Energy conservation
    2 Alternative and clean power
    3 Education
    4 See also
    5 References
    6 Further reading
    7 External links

Examples

    Biofiltration
    Bioreactor
    Bioremediation
    Desalination
    Doubly fed electric machine
    Energy conservation
    Energy saving modules
    Electric vehicles
    Wave energy
    Green computing
    Hydroelectricity
    Wind power
    Wind turbine
    Hydrogen fuel cell
    Ocean thermal energy conversion
    Solar power
    Photovoltaic
    Thermal depolymerization
    Composting toilet
    Pyrolysis

Main article: Recycling
Renewable energy
A view across a reverse osmosis desalination plant in Nepal.

Renewable energy is the energy that can be replenished easily. For years we have been using sources such as wood, sun, water, etc. for means for producing energy. Energy that can be produced by natural objects like the sun, wind, etc. is considered to be renewable. Technologies that have been in usage include wind power, hydropower, solar energy, geothermal energy, and biomass/bioenergy.
Water purification

Water purification: The whole idea/concept of having dirt/germ/pollution free water flowing throughout the environment. Many other phenomena lead from this concept of purification of water. Water pollution is the main enemy of this concept, and various campaigns and activists have been organized around the world to help purify water.[1]
Air purification

Air purification: Basic and common green plants can be grown indoors to keep the air fresh because all plants remove CO2 and convert it into oxygen. The best examples are: Dypsis lutescens, Sansevieria trifasciata, and Epipremnum aureum.[2] Besides using the plants themselves, some species of bacteria can also be added to the leaves of these plants to help remove toxic gases, such as toluene[3][4]
Sewage treatment

Sewage treatment is conceptually similar to water purification. Sewage treatments are very important as they purify water per levels of pollution. The most polluted water is not used for anything, and the least polluted water is supplied to places where water is used affluently. It may lead to various other concepts of environmental protection, sustainability, etc.[5]
Environmental remediation

Environmental remediation is the removal of pollutants or contaminants for the general protection of the environment. This is accomplished by various chemical, biological, and bulk methods.[6]
Solid waste management
Net Zero Court zero emissions office building prototype in St. Louis, Missouri

Solid waste management is the purification, consumption, reuse, disposal and treatment of solid waste that is undertaken by the government or the ruling bodies of a city/town.[7]
eGain forecasting

Egain forecasting is a method using forecasting technology to predict the future weather's impact on a building.[8] By adjusting the heat based on the weather forecast, the system eliminates redundant use of heat, thus reducing the energy consumption and the emission of greenhouse gases.[9]
Energy conservation

Energy conservation is the utilization of devices that require smaller amounts of energy in order to reduce the consumption of electricity. Reducing the use of electricity causes less fossil fuels to be burned to provide that electricity.
Alternative and clean power
The Tesla Roadster (2008) was the first all-electric sports car for sale and in serial production. It can completely recharge from the electrical grid in 4 to 48 hours depending on the outlet used.

Principles:

    Green syndicalism
    Sustainability
    Sustainable design
    Sustainable engineering

Concerns over pollution and greenhouse gases have spurred the search for sustainable alternatives to our current fuel use. For example, biogas from anaerobic digestion of plant waste can be stored to produce heat or electricity. The global reduction of greenhouse gases requires the adoption of energy conservation as well as sustainable generation. That environmental harm reduction involves global changes such as:

    reducing air pollution and methane from biomass
    virtually eliminating fossil fuels for vehicles, heat, and electricity, left in the ground.
    widespread use of public transport, battery and fuel cell vehicles
    more wind/solar/water generated electricity
    reducing peak demands with carbon taxes and time of use pricing.

Since fuel used by industry and transportation account for the majority of world demand, by investing in conservation and efficiency (using less fuel), pollution and greenhouse gases from these two sectors can be reduced around the globe. Advanced energy efficient electric motor (and electric generator) technology that are cost effective to encourage their application, such as variable speed generators and efficient energy use, can reduce the amount of carbon dioxide (CO2) and sulfur dioxide (SO2) that would otherwise be introduced to the atmosphere, if electricity were generated using fossil fuels. Greasestock is an event held yearly in Yorktown Heights, New York which is one of the largest showcases of environmental technology in the United States.[10][11][12][13][14] Some scholars have expressed concern that the implementation of new environmental technologies in highly-developed national economies may cause economic and social disruption in less-developed economies.[15]
Education

Courses aimed at developing graduates with some specific skills in environmental systems or environmental technology are becoming more common and fall into three broads classes:

    Environmental Engineering or Environmental Systems courses oriented towards a civil engineering approach in which structures and the landscape are constructed to blend with or protect the environment;
    Environmental chemistry, sustainable chemistry or environmental chemical engineering courses oriented towards understanding the effects (good and bad) of chemicals in the environment. Such awards can focus on mining processes, pollutants and commonly also cover biochemical processes;
    Environmental technology courses oriented towards producing electronic, electrical or electrotechnology graduates capable of developing devices and artefacts able to monitor, measure, model and control environmental impact, including monitoring and managing energy generation from renewable sources, and developing novel energy generation technologies.

See also

    iconEnvironment portal Earth sciences portal iconEcology portal

    Appropriate technology
    Eco-innovation
    Ecological modernization
    Ecotechnology
    Environmentally friendly
    Green development
    Groasis Waterboxx
    Information and communication technologies for environmental sustainability
    Pulser Pump
    Sustainable design
    Sustainable energy
    Sustainable engineering
    Sustainable living
    Sustainable technologies
    Technology for sustainable development
    The All-Earth Ecobot Challenge

References

Recycling”. Retrieved June 15th, 2009. http://earth911.com/recycling/. “Recycle.gif”. Retrieved June 15th, 2009. "Archived copy". Archived from the original on 2012-11-23. Retrieved 2009-06-24. “What is Water Purification”. Retrieved June 16th, 2009, [1] “Sewage Treatment”. Retrieved June 17th, 2009 "Archived copy". Archived from the original on 2009-03-26. Retrieved 2009-06-24. “Environmental Remedies and water Resource
Kamal Meattle on how to grow fresh air TED (conference)
EOS magazine, February 2017; Azalea's with extra bacteria can help to degrade toluene
Bacteria on Hedera helix able to help degrade exhaust gases from Diesel engines running on Diesel
“Sewage Treatment”. Retrieved June 17th, 2009 "Archived copy". Archived from the original on 2009-03-26. Retrieved 2009-06-24. “Environmental remedies and water Resource"
Livescience. Retrieved June 27, 2009.10 top emerging environmental technologies. http://www.reference.md/files/D052/mD052918.html
Retrieved June 16th, 2009. “Urban Waste Management”. Retrieved June 16th, 2009. http://documents1.worldbank.org/curated/en/237191468330923040/pdf/918610v20WP0FM0BE0CATALOGED0BY0WED0.pdf
Taesler, R. (1990/91) Climate and Building Energy Management. Energy and Buildings, Vol. 15-16, pp 599 - 608.
United States Patent 6098893 Comfort control system incorporating weather forecast data and a method for operating such a system (Inventor Stefan Berglund)
Norman, Jim. "Where There’s Never an Oil Shortage". The New York Times. May 13, 2007.
Tillman, Adriane. "Greasestock Festival returns, bigger and better Archived 2008-05-18 at the Wayback Machine". May 14, 2008.
"Greasestock 2008 Archived 2008-05-29 at the Wayback Machine". Greasestock . Retrieved May 20, 2008.
Max, Josh. "Gas-guzzlers become veggie delights at Greasestock in Yorktown Heights". Daily News. May 13, 2008.
"Greasestock 2008: Alternative Fuel, Fun and French Fries Archived 2008-05-29 at the Wayback Machine". Natural Awakenings. May 2008.

    Eric Bonds and Liam Downey, "“Green” Technology and Ecologically Unequal Exchange: The Environmental and Social Consequences of Ecological Modernization in the World-System" in: Journal of World-Systems Research, Volume 18, Issue 2 (http://jwsr.pitt.edu/ojs/index.php/jwsr/article/view/482)

Further reading

    OECD Studies on Environmental Innovation Invention and Transfer of Environmental Technologies. OECD. September 2011. ISBN 978-92-64-11561-3.

External links
	Wikiversity has learning resources about Appropriate technology Designs

    vte

Environmental technology

    Appropriate technology Clean technology Environmental design Environmental impact assessment Sustainable development Sustainable technology

	
Windmills D1-D4 - Thornton Bank.jpg
Pollution	

    Air pollution (control dispersion modeling) Industrial ecology Solid waste treatment Waste management Water (agricultural wastewater treatment industrial wastewater treatment sewage treatment waste-water treatment technologies water purification)

Renewable energy	

    Efficient energy use Energy development Energy recovery Fuel (alternative fuel biofuel carbon-neutral fuel hydrogen technologies) List of energy storage projects Renewable energy (commercialization) Sustainable energy Transportation (electric vehicle hybrid vehicle)

Conservation	

    Birth control Building (green natural sustainable architecture New Urbanism New Classical) Nature conservation Conservation biology Ecoforestry Environmental movement Environmental remediation Green computing Land rehabilitation Permaculture Recycling

    vte

Environmental science

    vte

Sustainability
Authority control Edit this at Wikidata	

    GND: 4061650-2 LCCN: sh94001791 MA: 2777963174

Categories:

    Environmental technologySustainable technologies

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Português
    Русский
    اردو
    中文

Edit links

    This page was last edited on 20 January 2021, at 09:26 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Ethics of nanotechnologies

!! https://en.wikipedia.org/wiki/Ethics_of_nanotechnologies

From Wikipedia, the free encyclopedia
  (Redirected from Nanoethics)


Ethics of nanotechnology is the study of the ethical issues emerging from advances in nanotechnology and its impacts.

According to[1] ethical concerns about nanotechnologies should include the possibility of their military applications, the dangers posed by self-replicant nanomachines, and their use for surveillance monitoring and tracking. Risks to environment to public health are treated in a report from the Dutch National Institute for Public Health and the Environment[2] as well as is a report of the European Environment Agency.[3] Academic works on ethics of nanotechnology can be found in the journal Nanoethics.
Contents

    1 Guidelines
    2 Concerns
    3 Further reading
    4 See also
    5 References

Guidelines

According to the Markkula Center for Applied Ethics[1] possible guidelines for an Ethics of nanotechnology could include:

    Nanomachines should only be specialized, not for general purpose
    Nanomachines should not be self replicating
    Nanomachines should not be made to use an abundant natural compound as fuel
    Nanomachines should be tagged so that they can be tracked

Concerns

Ethical concern about nanotechnology include the opposition to their use to fabricate Lethal autonomous weapon, and the fear that they may self replicate ad infinitum in a so-called gray goo scenario, first imagined by K. Eric Drexler.[4] For the EEA [3] the challenge posed by nano-materials are due to their properties of being novel, biopersistent, readily dispersed, and bioaccumulative; by analogy, thousands cases of mesothelioma were caused by the inhalation of asbestos dust. See nanotoxicology. Nanotechnology belongs to the class of emerging technology known as GRIN: geno-, robo-, info- nano-technologies. Another common acronym is NBIC (Nanotechnology, Biotechnology, Information Technology, and Cognitive Science). These technologies are hoped[5] - or feared,[6] depending on the viewpoint, to be leading to improving human bodies and functionalities, see transhumanism.
Further reading

    European Environment Agency, 2013, Late lessons from early warning II Chapter 22 - Nanotechnology - early lessons from early warnings.[3] See also Steffen et al., 2008.[7]
    Jaco Westra (editor), 2014, Assessing health and environmental risks of nanoparticles. An overview, RIVM Rapport.[2]
    Rene von Schomberg (2011), Introduction: Towards Responsible Research and Innovation in the Information and Communication Technologies and Security Technologies Fields.[8]
    R. Feynman, Cargo Cult Science, Commencement Speech at Caltech 1974.[9] (also available in the book: Surely You're Joking, Mr. Feynman![10]).
    European Commission, 2009, Commission recommendation on A code of conduct for responsible nanosciences and nanotechnologies research & Council conclusions on Responsible nanosciences and nanotechnologies research.[11]
    C. Marris, Final Report of the PABE research project, 2001.[12]
    E.A.J. Bleeker, S. Evertz, R.E. Geertsma, W.J.G.M. Peijnenburg, J. Westra, S.W.P. Wijnhoven, Assessing health & environmental risks of nanoparticles Current state of affairs in policy, science and areas of application, RIVM Report.[2]
    Roger Strand, 2011, Nano Ethics, In: Nanotechnology in the Agri‐Food Sector: Implications for the Future.[13]
    R. Feynman, There's Plenty of Room at the Bottom lecture given at the annual American Physical Society meeting at Caltech on December 29, 1959.[14]
    Job Timmermans; Zhao Yinghuan; and Jeroen van den Hoven, 2011. Ethics and nanopharmacy: Value sensitive design of new drugs. Nanoethics 5(3): 269-283.[15]
    Steven Umbrello and Seth D. Baum, 2018. Evaluating future nanotechnology: The net societal impacts of atomically precise manufacturing. Futures 100(June): 63-73.[16]
    K. Eric Drexler, 2013. Radical abundance: How a revolution in nanotechnology will change civilization. Public Affairs: New York.[17]

See also

    Nanotechnology
    Impact of nanotechnology
    Molecular Manufacturing
    Atomically Precise Manufacturing
    Nanotoxicity
    Nanomaterials
    Nanoparticles

References

Andrew Chen, 2002, The Ethics of Nanotechnology, Markkula Center for Applied Ethics, May 3, 2002
E.A.J. Bleeker, S. Evertz, R.E. Geertsma, W.J.G.M. Peijnenburg, J. Westra, S.W.P. Wijnhoven, Assessing health & environmental risks of nanoparticles. Current state of affairs in policy, science and areas of application, RIVM Report 2014-0157.
Chapter 22, Nanotechnology: early lessons from early warnings, in Late lessons from early warnings: science, precaution, innovation, EEA report 1, 2013.
Drexler, K. Eric. (1986). Engines of creation (1st ed.). Garden City, N.Y.: Anchor Press/Doubleday. ISBN 0-385-19972-4. OCLC 12752328.
Roco, M.C., and Bainbridge, W.S. (eds) (2002) Converging technologies for improving human performance, NSF-DOC Report, Kluwer, 2003.
G. Tintino, "From Darwinian to technological evolution: Forgetting the human lottery", Cuad. Bioética, vol. XXV, no. 387–395, 2014.
Steffen Foss Hansen, Andrew Maynard, Anders Baun and Joel A. Tickner, 2008, Late lessons from early warnings for nanotechnology, Nature Nanotechnology, Vol. 3, 444-447.
Rene von Schomberg (2011), Introduction: Towards Responsible Research and Innovation in the Information and Communication Technologies and Security Technologies Fields.
Cargo Cult Science, Commencement Speech at Caltech 1974.
R. Feynman, 1997, Surely You're Joking, Mr. Feynman!, W. W. Norton & Company.
Commission recommendation on A code of conduct for responsible nanosciences and nanotechnologies research & Council conclusions on Responsible nanosciences and nanotechnologies research, ISBN 978-92-79-11605-6, Luxembourg.
Final Report of the PABE research project funded by the Commission of European Communities, 2001.
Chapter 16, Nano Ethics, In: Nanotechnology in the Agri‐Food Sector: Implications for the Future, Editors:Lynn J. Frewer, Willem Norde, Arnout Fischer, Frans Kampers, Wiley.
There's Plenty of Room at the Bottom, a lecture given by physicist Richard Feynman at the annual American Physical Society meeting at Caltech on December 29, 1959.
Timmermans, Job; Zhao, Yinghuan; van den Hoven, Jeroen (2011-12-01). "Ethics and Nanopharmacy: Value Sensitive Design of New Drugs". NanoEthics. 5 (3): 269–283. doi:10.1007/s11569-011-0135-x. ISSN 1871-4765. PMC 3250608. PMID 22247745.
Umbrello, Steven; Baum, Seth D. (2018-06-01). "Evaluating future nanotechnology: The net societal impacts of atomically precise manufacturing". Futures. 100: 63–73. doi:10.1016/j.futures.2018.04.007. hdl:2318/1685533. ISSN 0016-3287.

    Radical Abundance. 2017-06-27.

Categories:

    Emerging technologies

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

Add links

    This page was last edited on 11 May 2021, at 12:14 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


! https://www.eublockchainforum.eu/
! 
! http://eublockchain.mobilize.io/ Get involved !
!!! 
!!! If you’d like to share your views on blockchain and discuss with others, join the @EUBlockchain Community on eublockchain.mobilize.io and have your say.


!! The European Union Blockchain Observatory and Forum

 aims to accelerate blockchain innovation and the development of the blockchain ecosystem within the EU, and so help cement Europe’s position as a global leader in this transformative new technology.

!! https://www.eublockchainforum.eu/initiative-map

Contribute to the map


We are building a comprehensive, crowdsourced map of blockchain in Europe. If you have a blockchain company, project, initiative, event or other blockchain activity, you can submit your information and be included.


    Home

!!! Our mission
!!! 
!!! Monitor blockchain initiatives in Europe
!!! Produce a comprehensive source of blockchain knowledge
!!! Create an attractive and transparent forum for sharing information and opinion
!!! Make recommendations on the role the EU could play in blockchain

https://www.eublockchainforum.eu/reports


About
The European Union Blockchain Observatory and Forum aims to accelerate blockchain innovation and the development of the blockchain ecosystem within the EU, and so help cement Europe’s position as a global leader in this transformative new technology.

    Home

Our mission

    Monitor blockchain initiatives in Europe
    Produce a comprehensive source of blockchain knowledge
    Create an attractive and transparent forum for sharing information and opinion
    Make recommendations on the role the EU could play in blockchain

Our activities
The insights gained during the life of the Observatory and Forum will be shared through various public-facing activities.
Who is involved?

Created as a European Parliament pilot project, the EU Blockchain Observatory and Forum is being run under the aegis of the European Commission’s Directorate General for Communications Networks, Content and Technology (DG CONNECT). The Consortium leading the second edition of the Observatory, consists of INTRASOFT International (general contractor) the University of Nicosia, the Institute of Information Technology/ CERTH, White Research, Bitfury, OpenForum Europe and PLANET S.A..

! 
! https://www.eublockchainforum.eu/news/may-2021-newsletter

    Home
    Announcements

17 May 2021
Official Newsletter of the European Union Blockchain Observatory & Forum

We are pleased to present you with our monthly update on the activities of the European Union Blockchain Observatory & Forum. This edition of the #EUBlockchain newsletter includes a brief roundup of upcoming workshops and publications.
Updates

Image
team meeting
Workshops
Previous events

Our workshop on "Energy Efficiency of Blockchain Technology" took place on the 21st of April. With more  than 150 participants, the workshop brought together representatives from the industry, academia, research and policy to discuss the importance of energy  efficiency in blockchain applications. Check out  the recording of the event session on our YouTube channel, as well as the event presentations in our website.
Upcoming Events

Our next workshop will be focused on Decentralised Networks Governance and will be organised on the 9th of June 2021.

The workshop will:

    Provide a general  overview of Decentralised Network Governance: what is it, how it works, in what forms
    Discuss policy and regulatory  considerations on how decentralised networks and organisations work
    Discuss the realities of decentralised network governance including benefits and limitations, regulatory challenges, the need for DAOs as well as future prospects, etc., involving key players from the private and public decentralised space.

Register here to join and contribute to the discussion!

Image
publications image
Upcoming EUBOF publications

    May 2021 Trends report will be published at the end of May, providing the latest news and updates on market, technology and regulatory developments.
    The thematic report focusing on Energy Efficiency of Blockchain technology will be out before the end of May. Stay tuned for updates!
    The extended thematic report on Central Bannk Digital Currency and the Digital Euro is expected to be published in June 2021. Follow our website and find out more.

Other publications

Are you interested in finding out about the blockchain market characteristics? Read the Chaise project report "Study on Blockchain labour market characteristics" that has just been published!

Image
people gathering

 
Funding opportunity for blockchain startups

BlockStart is a 6-month acceleration programme funded by the European Commission, aiming to promote blockchain adoption in retail, fintech and ICT. 

The last call for blockchain startups, will remain open until the 26th of May, 5pm CET (application form).

Bright Pixel VC investor, CIVITTA innovation consultant and F6S startups community are supporting 60 tech startups and 60 SME adopters with mentoring, networking and €795,000 funding. 

Each selected startup will benefit from: 

    Up to €20k equity-free grant

    Mentoring from BlockStart & external experts

    Pilot implementations in potential clients

    Promotion at BlockStart & external events

    Matchmaking with investors & communities

More information on Open Call #3 (the last one) is included in this FAQ and Q&A webinar.
Map of blockchain education and training initiatives

We are proud to present our new website functionality, offering a mapping of existing blockchain training and educational initiatives in Europe and the world!

We invite all organisations offering such training or educational programmes to provide information on their initiatives by completing a simple online form. All entries will be reviewed by our team in terms of relevance and completeness of information and will then be made available  on the map.

Users will be able to trace down relevant information on training and education offering based on specific criteria, including country, language, type of courses offered, type of certification, etc.

Visit our website and find out more!
Blockchain initiatives and projects in a map!

Are you aware of any blockchain related initiatives or projects in your country? Are you the owner of any initiatives or project related to blockchain?

Provide the relevant information by simply filling in this form and put your project in the map!

Initiatives include: startups, non for profit organisations, academic research, open source projects, consortium, government or corporate initiatives, foundations and other.

Find out more by visiting our website.
Forum

Inputs from the community have a major role in shaping these publications. Conversations are happening every day between the members of the eublockchain.mobilize.io community.

Register today! Become part of the conversation. Stay in the loop. Make connections and share knowledge, tips and ideas.

 















! Frugal innovation
!! 
!! https://en.wikipedia.org/wiki/Frugal_innovation

From Wikipedia, the free encyclopedia

Frugal innovation or frugal engineering is the process of reducing the complexity and cost of a good and its production. Usually this refers to removing nonessential features from a durable good, such as a car or phone, in order to sell it in developing countries. Designing products for such countries may also call for an increase in durability[1] and, when selling the products, reliance on unconventional distribution channels.[2] When trying to sell to so-called "overlooked consumers", firms hope volume will offset razor-thin profit margins.[2] Globalization[3] and rising incomes in developing countries may also drive frugal innovation.[4] Such services and products need not be of inferior quality but must be provided cheaply.[5] While frugal innovation has been associated with good-enough performance, in some sectors such as in healthcare, frugal innovation must offer maximum performance without compromising on quality.[6]

In May 2012 The Financial Times newspaper called the concept "increasingly fashionable".[7]

Several US universities have programs that develop frugal solutions. Such efforts include the Frugal Innovation Lab at Santa Clara University and a two quarter project course at Stanford University, the Entrepreneurial Design for Extreme Affordability program.[8]
Contents

    1 Variety of terms
    2 History
    3 Notable innovations
    4 In the media
    5 See also
    6 References

Variety of terms

Many terms are used to refer to the concept. "Frugal engineering" was coined by Carlos Ghosn, then joint chief of Renault and Nissan, who stated, "frugal engineering is achieving more with fewer resources."[9]

In India, the words "Gandhian"[10] or "jugaad", Hindi for a stop-gap solution,[11] are sometimes used instead of "frugal". Other terms with allied meanings include "inclusive innovation", "catalytic innovation", "reverse innovation", and "bottom of the pyramid (BOP) innovation", etc.[12]

At times this no frills approach can be a kind of disruptive innovation.[13]
History

Spotlighted in a 2010 article in The Economist,[14] the roots of this concept may lie in the appropriate technology movement of the 1950s,[12] although profits may have been first wrung from underserved consumers in the 1980s when multinational companies like Unilever began selling single-use-sized toiletries in developing countries.[2] Frugal innovation today is not solely the domain of large, multinational corporations: small, local firms have themselves chalked up a number of homegrown solutions.[15] While General Electric may win plaudits for its US$800 EKG machines, cheap cell phones made by local, no-name companies,[11][15] and prosthetic legs fashioned from irrigation piping,[16] are also examples of frugal innovation.

The concept has gained popularity in the South Asian region,[3] particularly in India.[1][17] The US Department of Commerce has singled out this nation for its innovative achievements, saying in 2012, "there are many Indian firms that have learned to conduct R&D in highly resource-constrained environments and who have found ways to use locally appropriate technology..."[18]
Notable innovations
An Indian woman using her Nokia 1100

Frugal innovation is not limited to durable goods such as the GE US$800 EKG machine, Reliance Jio's JioPhone or the US$100 One Laptop Per Child but also includes services such as 1-cent-per-minute phone calls, mobile banking, off-grid electricity, and microfinance.[3]

ChotuKool fridge

A tiny refrigerator sold by Indian company Godrej, the ChotuKool may have more in common with computer cooling systems than other refrigerators; it eschews the traditional compressor for a computer fan.[2] (It may exploit the thermoelectric effect.)

Foldscope

Designed to cost no more than a dollar, the Foldscope is a tough origami microscope assembled from a sheet of paper and a lens.[19] The Stanford engineer responsible more recently developed a string-and-cardboard contraption that can function similarly to $1,000 centrifuges.[20]

Jaipur leg

A low cost prosthetic developed in India, the Jaipur leg costs about $150 to manufacture and includes improvisations such as incorporating irrigation piping into the design to lower costs.[16]

Mobile banking

Mobile banking solutions in Africa, like Safaricom's M-Pesa, allow people access to basic banking services from their mobile phones.[21] Money transfers done through mobiles are also much cheaper than using a traditional method.[22] While basic banking can be done on a mobile alone, deposits and withdrawals of cash necessitate a trip to a local agent.[23]

Nokia 1100

Designed for developing countries, the Nokia 1100 was basic, durable, and–besides a flashlight–had few features other than voice and text.[24] Selling more than 200 million units only four years after its 2003 introduction[24] made it one of the best selling phones of all time.[25]

Sorghum beer

In Africa, several companies including SABMiller and Diageo, following in the footsteps of local home brewers,[26] have made beer more affordable by using sorghum or cassava in place of malting barley and reducing packaging costs by using kegs instead of bottles.[27]

Solar light bulb

In some Philippine slums, solar skylights made from one-liter soda bottles filled with water and bleach can provide light equivalent to that produced by a 55 watt bulb and may reduce electricity bills by US$10 per month.[28]

Tata Nano

Designed to appeal to the many Indians who drive motorcycles, the Tata Nano was developed by Indian conglomerate Tata Group and is the cheapest car in the world.[29]

Fold-Illuminator

A paper-based device designed to support biochemistry and biotechnology applications. The Fold-Illuminator incorporates a USB powered heating element to incubate chemical reactions. It also incorporates LED lights and an acrylic filter to support fluorescence visualization. The device is modular such that only the fluorescent illuminator can be utilized for a cost of ~$5 USD, with an additional ~$4 USD heating element add-on. This low-cost device provides the utility equivalent to laboratory equipment that cost >$10,000, with the added benefits of portability. Portions of the device can be recycled or composted while the electronic components can be reused. [30]
In the media

In 2014, Navi Radjou delivered a talk at TED Global on frugal innovation.[31]

In 2015, Navi Radjou and Jaideep Prabhu coauthored the book Frugal Innovation: How to Do More With Less, published worldwide by The Economist. The book explains the principles, perspectives and techniques behind frugal innovation, aiming to help managers to profit from the great changes ahead.

In 2016, Jaideep Prabhu collaborated with Ignitho Technologies[32] to bring frugal innovation methodology to enterprises adopting digital solutions.[33][34]
See also

    C. K. Prahalad
    Open innovation
    Reverse innovation
    Small is beautiful

References

Fontanella-Khan, James (May 19, 2011). "Supply chain: 'Frugal engineering' heads push into manufacturing". Financial Times. The Financial Times Ltd. Retrieved June 21, 2012.
Bellman, Eric (Oct 20, 2009). "Indian Firms Shift Focus to the Poor". The Wall Street Journal. pp. A.1.
Bhatti,Y. Khilji, S. & Basu, R. 2013. Frugal Innovation. In Globalization, Change and Learning in South Asia. Edited by Khilji, Shaista & Rowley, Chris. UK: Chandos Publishing. [1]
Shibulal, SD (May 13, 2011). "Emerging economies: outside-in and inside-out". livemint.com. HT Media. Retrieved June 24, 2012.
Bhatti, Yasser (March 19, 2012). "About Frugal Innovation Research". Frugal Innovation Portal. Said Business School, University of Oxford. Retrieved Nov 19, 2012.
Bhatti, Y., Basu, R. R., Barron, D., & Ventresca, M. J. (2018). Frugal Innovation: Models, Means, Methods. Cambridge University Press.
Crabtree, James. "More with less." FT.com. May 19, 2012.
For Santa Clara University's lab, see "About Frugal Innovation". Santa Clara University. Retrieved June 20, 2012. For Stanford University's course, see "Hasso Plattner Institute of Design at Stanford: Entrepreneurial Design for Extreme Affordability". Stanford University Institute of Design. Stanford University. 2010. Archived from the original on July 13, 2012. Retrieved June 20, 2012.
Nirmalya Kumar, Phanish Puranam (2011). India Inside. Harvard Business Press. p. 114. ISBN 9781422142400.
Platt, John (February 2010). "Introducing Gandhian Engineering". The Institute. IEEE. Retrieved June 20, 2012.
"Asian innovation". The Economist. The Economist Newspaper Limited. Mar 24, 2012. Retrieved June 20, 2012.
Bhatti, Yasser Ahmad and Ventresca, Marc. 2012. The Emerging Market for Frugal Innovation: Fad, Fashion, or Fit? (January 15, 2012) Available at SSRN: http://ssrn.com/abstract=2005983
Kelland, Kate (Jun 20, 2012). "Analysis: Healthcare sees emerging future in frugal innovation". reuters.com. Thompson Reuters. Retrieved June 20, 2012.
"First break all the rules: The charms of frugal innovation". The Economist. The Economist Newspaper Ltd. Apr 15, 2010. Retrieved July 6, 2012.
Woodward, David. "Plain and simple". Director Magazine. Director Publications. Archived from the original on February 3, 2014. Retrieved July 6, 2012.
Magnier, Mark (February 8, 2012). "India group's prosthetic device a boon for thousands of amputees". Los Angeles Times. Retrieved June 24, 2012.
Tiwari, Rajnish and Herstatt, Cornelius (2012): "Assessing India's lead market potential for cost-effective innovations", Journal of Indian Business Research, Vol. 4 Iss: 2, pp.97 - 115
"U.S. Commerce Secretary John Bryson Visits Jaipur Foot". US Department of Commerce. March 28, 2012. Retrieved June 24, 2012.
Roberts, Sandy (March 16, 2014). "Origami Microscope for Just 50 Cents". makezine.com. Maker Media, Inc. Retrieved 25 May 2014.
Yi, Hannah (March 19, 2017). "A 20-cent lifesaving tool that's made with only paper, string, and PVC pipe". Quartz. Atlantic Media. Retrieved 30 March 2017.
Lahiri, Tripti (June 6, 2012). "Q&A: Why the West Needs 'Jugaad' Creativity". WSJ's Indiarealtime blog. Dow Jones & Company Inc. Retrieved June 23, 2012.
"The power of mobile money". The Economist. The Economist Newspaper Limited. Sep 24, 2009. Retrieved June 23, 2012.
For transferring money with only a mobile, see "Send (Transfer) Money". Safaricom. Retrieved June 23, 2012.

    For paying bills with only a mobile, see "Pay Bill". Safaricom. Retrieved June 23, 2012.
    For necessity of visiting an agent when depositing money, see "Deposit Cash to Your Account". Safaricom. Retrieved June 23, 2012.
    For necessity of visiting an agent when withdrawing money, see "Withdraw Cash". Safaricom. Retrieved June 23, 2012. 

Virki, Tarmo (May 3, 2007). "Nokia's cheap phone tops electronics chart". reuters.com. Thompson Reuters. Retrieved June 20, 2012.
Herrman, John (Oct 19, 2010). "The Most Popular Phone in the World". gizmodo.com. Gawker Media. Retrieved June 23, 2012.
"Beer in Africa: From lumps to lager; The race to slake a continent's thirst". The Economist. Mar 24, 2012. Retrieved August 12, 2012.
"SABMiller strives to make beer affordable in Africa". reuters.com. Thompson Reuters. Mar 13, 2012. Retrieved August 12, 2012.
Orendain, Simone (December 28, 2011). "In Philippine Slums, Capturing Light In A Bottle". NPR. Retrieved June 20, 2012.
Meredith, Robyn (Apr 19, 2007). "The Next People Car". Forbes. Yahoo! - ABC News Network. Retrieved June 6, 2012.
Logan R. Burrington, Emran Baryal, Katherine Hui, Emmett Lambert, Sarah T. Harding, Javin P. Oza (June 21, 2021). "The Fold-Illuminator: A low-cost, portable, and disposable incubator-illuminator device". Synthetic and Systems Biotechnology.
"Navi Radjou: Creative problem solving in the face of extreme limits". TED.com. Retrieved 17 January 2015.
Karun, Shenoy (22 June 2020). "Ignitho Technologies banks on frugal innovation for disruption". timesofindia.indiatimes.com.
Kumar, Krishna (28 November 2016). "Ignitho Technologies to expand activities in frugal innovation space". economictimes.indiatimes.com.

    "US-based product engineering firm Ignitho Technologies offers enterprises its platform for digital business". www.thehindubusinessline.com. 22 June 2020.

    vte

Engineering approaches
School	

    Empathic design Frugal innovation Kansei engineering Keep It Simple Stupid Minimalism Use-centered design User-centered design

Concepts	

    Ornament and Crime Overengineering Planned obsolescence Sustainability Theory of constraints Usability Value engineering

Categories:

    Engineering disciplinesPoverty

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Azərbaycanca
    Deutsch
    Français
    Português
    Suomi

Edit links

    This page was last edited on 24 April 2021, at 18:24 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki





! Geographical indications and traditional specialities in the European Union

!! https://en.wikipedia.org/wiki/Geographical_indications_and_traditional_specialities_in_the_European_Union#Protected_designation_of_origin_(PDO)

From Wikipedia, the free encyclopedia
  (Redirected from Protected Designation of Origin)
Jump to navigation
Jump to search

Three European Union schemes of geographical indications and traditional specialties, known as protected designation of origin (PDO), protected geographical indication (PGI), and traditional specialities guaranteed (TSG), promote and protect names of quality agricultural products and foodstuffs.[1] Products registered under one of the three schemes may be marked with the logo for that scheme to help identify those products. The schemes are based on the legal framework provided by the EU Regulation No 1151/2012 of the European Parliament and of the Council of 21 November 2012 on quality schemes for agricultural products and foodstuffs.[2] This regulation (enforced within the EU and being gradually expanded internationally via bilateral agreements between the EU and non-EU countries) ensures that only products genuinely originating in that region are allowed to be identified as such in commerce. The legislation first came into force in 1992. The purpose of the law is to protect the reputation of the regional foods, promote rural and agricultural activity, help producers obtain a premium price for their authentic products, and eliminate the unfair competition and misleading of consumers by non-genuine products,[3] which may be of inferior quality or of different flavour. Critics argue that many of the names, sought for protection by the EU, have become commonplace in trade and should not be protected.[4]

These laws protect the names of wines, cheeses, hams, sausages, seafood, olives, olive oils, beers, balsamic vinegar, regional breads, fruits, raw meats and vegetables.

Foods such as Gorgonzola, Parmigiano-Reggiano, feta, the Waterford blaas,[5] Herve cheese, Melton Mowbray pork pies, Piave cheese, Asiago cheese, Camembert, Herefordshire cider, cognac, armagnac and champagne can only be labelled as such if they come from the designated region. To qualify as Roquefort, for example, cheese must be made from milk of a certain breed of sheep, and matured in the natural caves near the town of Roquefort-sur-Soulzon in the Aveyron region of France, where it is colonised by the fungus Penicillium roqueforti that grows in these caves.[6]

This system is similar to appellation systems used throughout Europe, such as the appellation d'origine contrôlée (AOC) used in France, the denominazione di origine controllata (DOC) used in Italy, the denominação de origem controlada (DOC) used in Portugal, the denumire de origine controlată (DOC) system used in Romania and the denominación de origen (DO) system used in Spain. In many cases, the EU PDO/PGI system works parallel with the system used in the specified country, and in some cases is subordinated to the appellation system that was already instituted, particularly with wine, for example, and in France (in particular) with cheese, for example Maroilles (as most others) has both PDO (Appellation d'origine protégée (AOP) in French) and AOC classifications, but generally only the AOC classification will be shown.
Contents

    1 Protection and enforcement
    2 Objectives of the protection
    3 General regime
    4 Description of the regimes
        4.1 Protected designation of origin (PDO)
        4.2 Protected geographical indication (PGI)
        4.3 Traditional specialities guaranteed (TSG)
    5 Relationship to trademark law
    6 Special regimes
        6.1 Wines
        6.2 Spirits
        6.3 Aromatised drinks
    7 Within the European Union
    8 Outside the European Union
        8.1 Australia
        8.2 China
        8.3 Colombia
        8.4 Canada
        8.5 Georgia
        8.6 Mexico
        8.7 Switzerland
        8.8 United Kingdom
        8.9 United States
    9 List of products with PDO/PGI/TSG classifications
    10 Criticisms of Protected Geographical Status framework
        10.1 Issues of governance
        10.2 Other Criticisms
    11 See also
    12 References
    13 External links

Protection and enforcement

In countries where Protected Geographical Status laws are enforced, only products which meet the various geographical and quality criteria may use the protected indication. It is also prohibited to combine the indication with words such as "style", "type", "imitation", or "method" in connection with the protected indications, or to do anything which might imply that the product meets the specifications, such as using distinctive packaging associated with the protected product.[citation needed]

Protected indications are treated as intellectual property rights by the Customs Regulation 1383/2003 (Regulation concerning customs action against goods suspected of infringing certain intellectual property rights and the measures to be taken against goods found to have infringed such rights),[1] and infringing goods may be seized by customs on import. Within the European Union, enforcement measures vary: infringement may be treated as counterfeit, misleading advertising, passing off or even as a question of public health. Outside Europe, the protection of PGS products usually require bilateral agreements between the EU and the importing countries, while protected indications may not always supersede other intellectual property rights such as trademarks.[citation needed]

On 15 November 2011, the European Court of Auditors presented its report Do the design and management of the Geographical Indications Scheme allow it to be effective?[7] to the European Parliament.[citation needed]
Objectives of the protection
	
This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (February 2021) (Learn how and when to remove this template message)

The preambles to the regulations cite consumer demand for quality foodstuffs, and identify a number of goals for the protection regimes:

    the promotion of products with specific characteristics, particularly those coming from less-favoured or rural areas;
    the improvement of the income of farmers, in return for a "genuine effort to improve quality";
    the retention of population in rural areas;
    the provision of clear and succinct information to consumers regarding product origin.

The provision of a recompense for efforts to improve quality and the need for consumer protection are often cited as justifications for trade mark protection in other domains, and geographical indications operate in a similar manner to trademarks.
General regime

The general regime governs the use of protected designations of origin (PDO) and protected geographical indications (PGI) for food and certain other agricultural products. There are separate regimes for spirits and for aromatised drinks (geographical designations) as well as for wines (geographical indications, often referred to as appellations). The origin of the product is only one of the criteria for use of the protected terms: the product must also meet various quality criteria. The label "Traditional Specialities Guaranteed" (TSG) is a similar protected term which does not impose any restrictions on the geographical origin of the product.[citation needed]

The protection of geographical indications was extended to foodstuffs and other agricultural products in 1992.[2] Given the widely different national provisions, this "general regime" gives much more power to the European Commission (compared to the special regimes) to ensure a harmonised protection across the European Union. It is currently governed by the Regulation on the protection of geographical indications and designations of origin for agricultural products and foodstuffs (No 510/2006).[3]

To qualify for a PDO, the product must have qualities and characteristics which are essentially due to its region of production: it must also be produced, processed and prepared exclusively within that region. The requirement for a PGI are slightly less strict; a good reputation of a product from a given region is sufficient (rather than objectively different characteristics) if any of the steps of production, processing and preparation may take place within the region. Otherwise the protection afforded by the two terms is equivalent.[citation needed]

An application for a PDO or a PGI is first made to the authorities of the relevant Member State. It is judged by the Member State against the criteria in the Regulation and, if found to be acceptable, forwarded to the European Commission for final approval. Applications are published at both the national and Community stages of examination, and third parties can object to proposed PDOs or PGIs which they feel would harm their business. A recurrent objection is that the proposed denomination is a generic term for the product in question: generic names cannot be registered but, once registered, the denominations are protected from genericisation. Hence Cheddar cheese was deemed to be a generic name, but the PDO "West Country farmhouse Cheddar cheese" was allowed.[8] Feta was deemed not to have become generic, and was registered as a PDO to the disappointment of cheesemakers outside of Greece.[citation needed]
Description of the regimes
	
This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (February 2021) (Learn how and when to remove this template message)
Protected designation of origin (PDO)

The Protected designation of origin is the name of an area, a specific place or, in exceptional cases, the name of a country, used as a designation for an agricultural product or a foodstuff,

    which comes from such an area, place or country,
    whose quality or properties are significantly or exclusively determined by the geographical environment, including natural and human factors,
    whose production, processing and preparation takes place within the determined geographical area.

In other words, to receive the PDO status, the entire product must be traditionally and entirely manufactured (prepared, processed and produced) within the specific region and thus acquire unique properties.
Protected geographical indication (PGI)

The protected geographical indication is the name of an area, a specific place or, in exceptional cases, the name of a country, used as a description of an agricultural product or a foodstuff,

    which comes from such an area, place or country,
    which has a specific quality, goodwill or other characteristic property, attributable to its geographical origin,
    at least one of the stages of production, processing or preparation takes place in the area.[9]

In other words, to receive the PGI status, the entire product must be traditionally and at least partially manufactured (prepared, processed or produced) within the specific region and thus acquire unique properties.
Traditional specialities guaranteed (TSG)

The TSG quality scheme aims to provide a protection regime for traditional food products of specific character. Differing from PDO and PGI, this quality scheme does not certify that the protected food product has a link to specific geographical area.

To qualify for a TSG a food must be of "specific character" and either its raw materials, production method or processing must be "traditional". Under Art. 3 of Regulation 1151/12 "specific character" is defined as "the characteristic production attributes which distinguish a product clearly from other similar products of the same category". Under Art. 3 of Regulation 1151/12 "traditional" is defined as "proven usage on the domestic market for a period that allows transmission between generations; this period is to be at least 30 years". For a food name to be registrable under the TSG scheme it must (a) have been traditionally used to refer to the specific product; or (b) identify the traditional character or specific character of the product.

A TSG creates an exclusive right over the registered product name. Accordingly, the registered product name can be used by only those producers who conform to the registered production method and product specifications.

"The legal function of the TSG is to certify that a particular agricultural product objectively possesses specific characteristics which differentiate it from all others in its category, and that its raw materials, composition or method of production have been consistent for a minimum of 30 years. Thus, TSG food denominations are registered trade signs with a distinctive function."[10]
Relationship to trademark law

In principle, a similar protection to a geographical indication could be obtained through a collective trademark. Indications which serve exclusively to identify the place of origin of goods are not registrable as trademarks under Art. 6quinquies.B.2 of the Paris Convention for the Protection of Industrial Property (Paris Convention), which has effect in European Union law by Art. 7 of the Regulation on the Community trade mark (No 40/94)[4] and by Art. 3 of the Directive to approximate the laws of the Member States relating to trademarks (89/104/EEC);[5] however, marks which also serve to identify the quality of a product originating in a certain region may be registered so long as they have not become generic in the trade concerned.[citation needed]

Trademarks which have been registered before the registration of a PDO or a PGI may continue to be used, but the registration of an equivalent trademark after the approval of a PDO or PGI is impossible (Art. 13, Regulation (EC) No 510/2006). The existence of a trademark (registered or unregistered) may be a reason to refuse the registration of a PDO or a PGI [Art. 7(3)(c), Regulation (EC) No 510/2006]. Hence the Polish geographical designation "Herbal vodka from the North Podlasie Lowland aromatised with an extract of bison grass" (Polish: Wódka ziołowa z Niziny Północnopodlaskiej aromatyzowana ekstraktem z trawy żubrowej), so phrased as to avoid infringing the trademark "Żubrówka."[citation needed]
Special regimes
	
This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (February 2021) (Learn how and when to remove this template message)

The protection of geographical indications for wines and other alcoholic drinks was historically the first to be developed at both national and Community level. It is also the only protection which is recognised by the Agreement on Trade-Related Aspects of Intellectual Property Rights (TRIPS), administered by the World Trade Organization, although the European Union is pushing for other geographical indications to be included in the Doha Round of world trade negotiations.
Wines

European Union rules governing the production of wine ("the product obtained exclusively from the total or partial alcoholic fermentation of fresh grapes, whether or not crushed, or of grape must") are considerably longer than Community trade mark law: the main text, the Regulation on the common organisation of the market in wine (No 1493/1999),[6] runs to over 46,000 words. To be considered as a "quality wine", the wine must come from a specified region and be associated with a "geographical indication" or appellation: indeed, the technical term used in the Regulation is quality wine psr, with the "psr" standing for "produced in a specified region". Wines which do not meet this requirement may only be marketed as table wine.

There has been little harmonisation of national provisions within the European Union. Member States delimit the specified areas of production and determine the rules and appellations which apply: the European Commission restricts itself to publishing the information provided by the Member States. Appellations are usually the geographical name of the area in which the wine is produced, although there are some historical exceptions: muscadet and blanquette in France, cava and manzanilla in Spain and vinho verde in Portugal. The appellations are not necessarily unique: Cava may refer either to a quality sparkling wine psr produced in Spain or to a Greek table wine which has been aged (as a transliteration of "Κάβα").
Spirits

The Regulation laying down general rules on the definition, description, presentation, labelling and protection of spirit drinks (110/2008)[11][12] provides for a double system of protection of spirit descriptions. Spirits are divided into 46 categories, which each have rules for fabrication and minimum strength. Within these categories, certain names are reserved for drinks from particular countries, for example ouzo, which is aniseed-flavoured spirit drink which must have been produced exclusively in Greece or Cyprus, or grappa, which is a grape marc spirit produced in Italy, or pálinka, which is a purely fruit based spirit produced in Hungary (or parts of Austria for apricot spirits only). The Regulation also defines a number of geographical designations, which are reserved for drinks which "acquired their character and definitive qualities" in the area denominated. The exact delimitation of the areas and any other regulations are left to the Member States concerned. By way of derogation, the designations Königsberger Bärenfang and Ostpreußischer Bärenfang are permitted for certain German drinks even though they refer to Königsberg (Kaliningrad) and East Prussia which are no longer part of Germany.
Aromatised drinks
Vermouth

The Regulation laying down general rules on the definition, description and presentation of aromatised wines, aromatised wine-based drinks and aromatised wine-product cocktails (No 251/2014)[13] institutes a system of protected denominations for aromatised drinks which is very similar to that for spirits. The association of general names with specific countries is weaker: a drink labelled simply "Sangria" must have been produced in Spain or Portugal, for example, but it is permissible to label a drink "Sangria produced in the United Kingdom: aromatised wine-based drink" if the drink meets the other requirements to be described as sangria. Similarly, the denomination "Clarea" on its own is reserved for drinks produced in Spain. As of January 2020, the protected geographical designations are:[14]

    Vermouth di Torino (vermouth original: 1757) (Italy)
    Nürnberger Glühwein (Germany)
    Thüringer Glühwein
    Vermouth de Chambéry (France)
    Samoborski bermet

Within the European Union

Article 13 of this legislation states that registered designations are protected against:

    ... any usurpation or imitation, even if the true origin of the product is indicated or if the appellation is used in translated form or accompanied by terms such as "kind", "type"...

This legislation expanded the 1951 Stresa Convention, which was the first international agreement on cheese names. Seven countries participated: Austria, Denmark, France, Italy, Norway, Sweden, and Switzerland.
Stilton – an example of an origin protected product.

Selected products include Prosciutto Toscano (PDO) from Italy, bryndza podhalańska (PDO) and oscypek (PDO) from Poland, Marchfeldspargel (PGI) from Austria, Lübecker Marzipan (PGI) from Germany, Scotch Beef and Lamb (PGI) from Scotland, bryndza (PGI) and Oštiepok (PGI) from Slovakia, Kaszëbskô malëna (Kashubian garden strawberry) (PGI) from Poland.[citation needed]
A PDO apple.

In certain cases, the name of widely popular products became generic, and therefore could not be protected afterwards. Cheddar cheese, for instance, originating in the English village of Cheddar, is produced in many countries, including the US, Canada, Australia and New Zealand. Hence the "Cheddar" name is not protected, but the more specific name "West Country Farmhouse Cheddar" is. Other products are protected in Europe but not elsewhere: Buffalo Mozzarella for instance is protected in Europe, but the name is used without restrictions by US dairy companies.[15]

The geographical limitations are strict: Newcastle Brown Ale was restricted to being brewed in the city of Newcastle upon Tyne in England. However, having obtained this protection for their product, the brewery decided in 2004 that it would move across the river Tyne to Gateshead. As Gateshead is a separate town—albeit only the width of the river apart—it does not fall within the required geographical restriction. The brewery then applied to the European Union authorities to have the geographical restriction revoked. If the restriction had not been revoked, the brewery would have been forced either to move back to Newcastle, or stop calling its beer "Newcastle" brown ale.[16] Ultimately, the brewery's application to revoke the geographic restriction was approved.[17] Similarly, Stilton cheese can only be produced in the three English counties of Derbyshire, Leicestershire, and Nottinghamshire. Stilton village is in the traditional county of Huntingdonshire, now a district of Cambridgeshire, so Stilton cheese cannot be produced in Stilton (although it is unclear whether the cheese was ever produced there. Quenby Hall in Leicestershire claims to be the first producer).[citation needed]

New Season Comber Potatoes or Comber Earlies were awarded PGI status in 2012. Only immature potatoes grown in the restricted geographical area surrounding the town of Comber in Northern Ireland harvested between the start of May and the end of July can be marketed as Comber Earlies.[18]
Outside the European Union

There is no unconditional protection for these names on products both made and sold outside the EU. However, there are a number of bilateral agreements with the EU for some level of enforcement. Agreements of this type exist between the EU and Australia (wine, 1994) (but not cheese), Canada (wine and spirits, 2003), Chile (wine and spirits, 2002), Colombia (2007, coffee) Mexico (1997, spirit drinks), and South Africa (2002, wine and spirits).[3]
Australia

Following an agreement during the 1990s by the Australian Wine and Brandy Corporation and the Australian and EU governments, the others' GIs and the nations' traditional terms of winemaking were meant to have been protected by 1997. However, this has been proceeding slowly, and while some GIs have been protected in Australia, others are still available for use (primarily for products that have always been called that). It seems unlikely it will have any effect on colloquial speech in the short term.[citation needed]
China
Ambox current red Americas.svg
	
This section needs to be updated. The reason given is: Landmark agreement will protect 100 European Geographical Indications in China. Please update this article to reflect recent events or newly available information. (July 2020)

China recognizes Geographical Indication Products. One such product is Yongfeng chili sauce (Chinese: 永丰辣酱), also called Yongfeng hot sauce.[19][20][21]
Colombia

Colombian coffee was protected by the PDO in August 2007.[22]
Canada

In Canada, a 2003 agreement made with the EU provides for protection of the names of wine and spirits.[23]

Under the Comprehensive Economic and Trade Agreement (CETA) between Canada and the EU, Canada agrees "to protect 143 geographical indications for high-quality European products, such as Italian balsamic vinegar from Modena, Dutch Gouda cheese or Roquefort cheese and many others."[24]
Georgia
Further information: Protected Geographical Indications for Georgian products
Mexico

The General Declaratory for the Protection of the Papantla vanilla and Charanda, sugar cane sprit from state of Michoacan, was published by the Instituto Mexicano de la Propiedad Industrial. Likewise, the Official Mexican Standards specify that tequila must be produced from agave of the Tequilana Weber blue variety, grown in a number of municipalities whose soil, weather and geographical conditions match the ones required for the plant's optimal growth. Only a liquor that fulfills all the requirements specified by the Official Mexican Standard can be called "tequila"; failure to comply will result in legal action by the federal government.[citation needed]
Switzerland
Further information: Geographical indications and traditional specialities in Switzerland

The appellation d'origine protégée (AOP, protected designation of origin) certifies that "everything, from the raw material to the processing and the final product, comes from one clearly defined region of origin".[25]

The indication géographique protégée (IGP, protected geographical indication) certifies that food products were "either manufactured, processed or prepared at their place of origin".[25]

The appellation d'origine contrôlé (AOC, controlled designation of origin) certifies wines.[citation needed]
United Kingdom

After Brexit and after the end of the transition period, the UK will have its own GI scheme independently of the EU one.[26]
United States

In the United States there are groups that have some degree of protection for their regional designation. For example, Vidalia onions must be produced within a certain region around Vidalia, Georgia, as defined by the Georgia Department of Agriculture, and "100% Florida orange juice" is certified as being such by the Florida Department of Citrus. Some of these marks are protected in the United States under certification mark law, such as the Idaho Potato Commission's "Idaho" and "Grown in Idaho" registered trademarks for potatoes. Tennessee whiskey is straight Bourbon Whiskey produced in the state of Tennessee.[27][28] This definition is legally established under the North American Free Trade Agreement (NAFTA), which states that Tennessee whiskey is "a straight Bourbon Whiskey authorised to be produced only in the State of Tennessee."[28] There also are cases in which a geographical name has been trademarked for a particular product that might not even be manufactured there, such as Philadelphia cream cheese (which originated in New York and was named after the Pennsylvania city for marketing reasons). However, because the several states are limited in sovereignty under the United States Constitution, these types of laws are extremely limited in terms of enforcement, except to the extent that they are backed by various U.S. federal laws.[citation needed]
List of products with PDO/PGI/TSG classifications
See also: Category: Products with protected designation of origin

A database of agricultural products with a European Union Protected Designation of Origin (PDO), Protected Geographical Indication (PGI), or Traditional Specialities Guaranteed (TSG), is at the European Agriculture site.[29]

Note that the database contains both approved designations (status "Registered") and designations not yet approved (status "Applied" or "Published").
Criticisms of Protected Geographical Status framework

Somewhat paradoxically the PGS framework can be posited as both a protectionist move against global agro-economic policy, and a market-based neoliberal tool of agricultural governance. This makes it an equally important battle-ground for both the anti-globalization movement, and the free-trade proponents of Australia and the United States, and a number of criticisms of each have been put forward:
Issues of governance

    Conceding the market as the locus of regulation.[30] Common Agricultural Policy (CAP) reforms have slowly introduced a raft of market-based instruments (MBIs) to regulate the agro-food sector (the PGS framework is one of them). The market is seen as the ideal ‘arms-length’ mechanism with which to foster growth, re-balance imperfections in the connected industries and add previously uncalculated value to European produce. But their social and ecological protections are perpetually unequal, falling short of providing any instance of a Polanyian 'double-movement'.[31] That is, generating a societal reaction to the 'dehumanizing' effects of the self-regulating market.
    Creating markets where none previously existed.[30] By creating so-called ‘ethical food markets',[32] food producers have been able to command a greater price for their goods. The PDO/PGI regimes foster the creation of ethical food markets, predicated on 'local' produce. For example, traditional Grimsby smoked fish producers have seen PGI accreditation 'help keep the margins up', in difficult economic circumstances.[33] In these instances, the 'local' is valorised as inherently 'good' or at least better than produce from an unrestricted, globalised food market.[34][35]
    Providing barriers to entry. The drawing of boundaries around certain food and drink produce prevents other actors entering particular markets. On this point the PGS framework can potentially deny (or make extremely difficult) entry into the agro-food sector. For example, there are stringent geographical, productive, facilitative, planning, temporal and skilled constraints to entry into the Stilton cheese market in the UK.[36] The successful application to protect the Cornish pasty[37] is another recent example; with Ginsters of Cornwall central to the bid (itself owned by the ‘extra-local’, Leicestershire-based Samworth Brothers – also makers of fellow PGS protected Melton Mowbray Pork Pies).[38][39]
    Narrowing competition in existing markets. Where markets already exist, there is the propensity for the narrowing of competition, if certain PGS applications are accepted. The state – instead of absolving all responsibility (often thought of as occurring in a neoliberal economy) – is tied with the task of carefully controlling the market. Product price fixing, supermarket consolidation, labour control, and profit-channelling are all potential issues. Within the UK, the Competition Commission is charged with investigating regulatory powers vis-à-vis markets and company mergers, to prevent (or at least temper) such problems.[citation needed]
    Geographically fixing capital. Due to the nature of the PGS framework, capital is concentrated in particular areas. As rights are not directly transferable, PGI/PDO certification is granted to those with landed property rights. Monopolised (and thus higher) land rents can often result; to the detriment of those who rely on such lands.[citation needed]
    Devolving power to consumers. Some proponents[40] have suggested that ethical food markets – and the PGS framework directly – has furthered a 'cash till' form of political democracy, whereby consumer spending power can masquerade as a legitimate governance structure and mechanism (i.e. democratically voted, representative, and therefore accountable). This is part of a broader shift from forms of 'government' to 'governance' seen in a neoliberalizing world, where a raft of non-state actors, arguably, make informed decisions about where and what to purchase.

Other Criticisms

The U.S. and Australia have disagreed with the EU's characterization of Geographical Indications. They disagree with the idea that Geographical Indications "eliminate the unfair competition and misleading of consumers," but rather that many of these names have become generic, and do not reflect a reputation of a distinctive product originating in a certain region.[41] They also believe that the EU is monopolizing markets and not allowing for fair competition. As the EU continues to enter trade agreements with third-party countries, often they will force these countries to agree to their list of Geographical Indications as a condition of the trade agreement, eliminating competition by the U.S. or Australia that may already be operating in the country.[42]
See also

    Appellation
    Country of origin
    European Union Common Agricultural Policy
    Generic trademark
    Geographical indication
    List of geographical designations for spirit drinks in the European Union
    List of European cheeses with protected geographical status
    List of Italian products with protected designation of origin
    List of Portugal food and drink products with protected status
    List of Republic of Ireland food and drink products with protected status
    List of United Kingdom food and drink products with protected status
    Protectionism
    Quality Wines Produced in Specified Regions (QWPSR)
    Terroir

References

"Geographical indications and traditional specialities". europa.eu.
"EUR-Lex - 32012R1151 - EN - EUR-Lex".
O'Connor and Company (April 2005). "Geographical Indications and the challenges for ACP countries". Agritrade. Archived from the original on 2 May 2007.
Johnson, Renée. "Geographical Indications (GIs) in U.S. Food and Agricultural Trade" (PDF). Congressional Research Service. Retrieved 6 November 2019.
"Blaa makes its presence felt in Europe". fcba.ie.
"European Commission PDO database". Retrieved 1 June 2010.
Union, Publications Office of the European (8 November 2011). "Do the design and management of the geographical indications scheme allow it to be effective?. Special Report No 11, 2011". op.europa.eu. Retrieved 6 November 2019.
"Denomination information – West Country farmhouse Cheddar cheese". DOOR. European Commission. Retrieved 9 January 2010.
"Geographical indications and traditional specialities". European Commission.
Tosato, Andrea (2013). "The Protection of Traditional Foods in the EU: Traditional Specialities Guaranteed". European Law Journal. 19 (4): 545–576. doi:10.1111/eulj.12040. S2CID 154449313.
"EUR-Lex - 32008R0110 - EN - EUR-Lex".
The 2008 Regulation is being replaced by Regulation (EU) 2019/787.
"EUR-Lex - 32014R0251 - EN - EUR-Lex".
"Register ofgeographical designations of Aromatized drinks based on wine products" (PDF).
"Mozzarella di Bufala". american.edu.
"National application No: 02621 – Newcastle Brown Ale". EU Protected Food Names Schemes. DEFRA. 21 December 2006. Retrieved 10 March 2007.
"Commission Regulation (EC) No 952/2007 of 9 August 2007 cancelling a registration of a name in the Register of protected designations of origin and protected geographical indications (Newcastle Brown Ale (PGI))". Official Journal. European Commission. 9 August 2007. Retrieved 9 November 2007.
Cassidy, Martin (25 January 2012). "Comber spuds get European protected status". Retrieved 5 September 2016.
"Yongfeng hot sauce (China Protected Geographical Indication Products)". Government of China. Retrieved 20 April 2019.
"[National Geographical Indication Products] Yongfeng Chili Sauce". HunanGov. Retrieved 20 April 2019.
Qiao, Ziyu. "In Pics: Chili Sauce Made in Yongfeng Town, C China's Hunan". All-China Women's Federation. Retrieved 20 April 2019.
"European Union gives to 'Café de Colombia' the protected denomination of origin" (in Spanish). Terra.es. 13 August 2007. Retrieved 22 April 2008.
"European Commission - PRESS RELEASES - Press release - Fischler hails signature of wine and spirits accord as "great achievement for EC-Canada trade relations"". europa.eu.
"Proposal for a COUNCIL DECISION on the conclusion of the Comprehensive Economic and Trade Agreement between Canada of the one part, and the European Union and its Member States, of the other part". eur-lex.europa.eu. EUROPEAN COMMISSION. 7 May 2016. Retrieved 13 August 2016.
"Schweizerische Vereinigung der AOP-IGP - Home". www.aop-igp.ch.
"Protecting food and drink names from 1 January 2021". GOV.UK.
"EU Steps Up Global Battle Over Parma Ham, Roquefort Cheese". Associated Press in the New York Times. 28 August 2003. Retrieved 4 March 2014. "Under a liquor trade agreement in the early 1990s, the United States agreed not to use labels such as Scotch whisky or Cognac, while the EU said Bourbon or Tennessee whiskey should remain exclusive American products."
"NAFTA - Chapter 3 - Annex 307.3 to Annex 315". oas.org.
"EU agricultural product quality policy". europa.eu.
Guthman, Julie (31 May 2007). "The Polanyian Way? Voluntary Food Labels as Neoliberal Governance". Antipode. 39 (3): 456–478 (23). doi:10.1111/j.1467-8330.2007.00535.x.
MacIver, Karl Polanyi ; foreword by Robert M. (1957). The great transformation (1st Beacon paperback ed.). Boston: Beacon Press. p. 304. ISBN 978-0-8070-5679-0.
Lang, Tim (1 January 2010). "From 'value-for-money' to 'values-for-money'? Ethical food and policy in Europe". Environment and Planning A. 42 (8): 1814–1832. doi:10.1068/a4258. S2CID 144132777. Retrieved 3 April 2011.
Grimsby, this is. "Dish of the decade enjoys steady start". Grimsby Telegraph. Retrieved 6 April 2011.
Guthman, Julie (1 January 2003). "Fast food/organic food: Reflexive tastes and the making of 'yuppie chow'". Social & Cultural Geography. 4 (1): 45–58. doi:10.1080/1464936032000049306. S2CID 18808708.
Goodman, Michael K; Maye, Damian; Holloway, Lewis (1 January 2010). "Ethical foodscapes?: premises, promises, and possibilities". Environment and Planning A. 42 (8): 1782–1796. doi:10.1068/a43290. S2CID 143711956. Retrieved 3 April 2011.
Commission, Competition. "Long Clawson Dairy Limited/Millway merger inquiry" (PDF). Stilton Cheese merger. Competition Commission. Retrieved 3 April 2011.
BBC (23 February 2011). "Who, What, Why: What exactly is a Cornish pasty?". BBC. Retrieved 3 April 2011.
Brothers Limited, Samworth. "Our Company: Ginsters". Samworth Brothers Limited. Retrieved 3 April 2011.
Brothers Limited, Samworth. "Our Company: Dickinson & Morris". Samworth Brothers Limited. Retrieved 3 April 2011.
Seyfang, Gill (31 March 2005). "Shopping for Sustainability: Can Sustainable Consumption Promote Ecological Citizenship?". Environmental Politics. 14 (2): 290–306. doi:10.1080/09644010500055209. S2CID 154574254.
"Geographical Indications (GIs) in U.S. Agricultural Trade" (PDF). Congressional Research Service. 21 July 2016. Retrieved 6 November 2019.

    "Reign of Terroir: How to Resist Europe's Efforts to Control Common Food Names as Geographical Indications". Cato Institute. 16 February 2016. Retrieved 6 November 2019.

External links
	Wikimedia Commons has media related to Geographical indications and traditional specialities in the European Union.

    EU Food Quality website with access to PDO/PGI/TSG listings, europa.eu
    European Court of Auditors, special report 11/2011, eca.europa.eu
    Defra – EU Protected Food Names Scheme. defra.gov.uk
    Australian Wine and Brandy Corporation, awbc.com.au
    Typical Italian products map, italianwinesandfood.com
    Monopolising Names? The Protection of Geographical Indications in the European Community, ethesis.helsinki.fi
    [7] Protection for the Totonac Vanilla.
    PDO/PDI Italian products divided by region (updated Mar. 2013) www.italianside.com

    vte

Country of origin
By country	

    Australia Canada China India Indonesia Russia Switzerland Taiwan USA Vietnam EU (Croatia France Germany Ireland Italy Spain)

For the EU	

    Made in EU EUR.1 movement certificate

Laws	

    Indian Arts and Crafts Act of 1990 Geographical indications and traditional specialities in the European Union Rules of origin

Products with protected designation of origin

    Foodlogo2.svgFood portalFlag of Europe.svgEuropean Union portal

Categories:

    AppellationsFood product brandsEuropean Union lawsProducts with protected designation of originTrademark lawCountry of origin

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Español
    Bahasa Indonesia
    Italiano
    Bahasa Melayu
    日本語
    Polski
    Русский
    Svenska
    中文

Edit links

    This page was last edited on 16 April 2021, at 01:56 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

Stroll's best kept secrets are the many ways you can extend and refine it!

!!!The Goodies page

*I have a page of goodies I and others have specifically made for Stroll. Find it [[here|https://giffmex.org/stroll/goodies.html]].

!!!The ~TiddlyWiki toolmap

*The [ext[TiddlyWiki toolmap|https://dynalist.io/d/zUP-nIWu2FFoXH-oM7L7d9DM]] is a list of hudreds of plugins you can use with Stroll. Keep in mind that plugins that tamper with the layout could break the Stroll layout.
\define lingo-base() $:/language/ControlPanel/Basics/
Welcome to ''Stroll'' and the ~TiddlyWiki community!

If you didn't come here from the Stroll website, please [[go there first|https://giffmex.org/stroll/stroll.html]] for the tutorial.

Before you start storing important information in Stroll, it is vital to make sure that you can reliably save changes. See https://tiddlywiki.com/#GettingStarted for details

!! Set up this ~TiddlyWiki

<div class="tc-control-panel">

|<$link to="$:/SiteTitle"><<lingo Title/Prompt>></$link> |<$edit-text tiddler="$:/SiteTitle" default="" tag="input"/> |
|<$link to="$:/SiteSubtitle"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler="$:/SiteSubtitle" default="" tag="input"/> |
|<$link to="$:/DefaultTiddlers"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag="textarea" tiddler="$:/DefaultTiddlers"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |
</div>

See the [[control panel|$:/ControlPanel]] for more options.

<<toc-selective-expandable 'Glossary of Terms' sort[title]>>

! Green development
!! 
!! https://en.wikipedia.org/wiki/Green_development

From Wikipedia, the free encyclopedia


Green development is a real estate development concept that considers social and environmental impacts of development. It is defined by three sub-categories: environmental responsiveness, resource efficiency, and community and cultural sensitivity. Environmental responsiveness respects the intrinsic value of nature, and minimizes damage to an ecosystem. Resource efficiency refers to the use of fewer resources to conserve energy and the environment. Community and cultural sensitivity recognizes the unique cultural values that each community hosts and considers them in real estate development, unlike more discernable signs of sustainability, like solar energy, (solar panels are more visibly "green" than the use of local materials). Green development manifests itself in various forms, however it is generally based on solution multipliers: features of a project that provide additional benefits, which ultimately reduce the projects' environmental impacts.[1]:3–8
Contents

    1 History
    2 Legislation
    3 In practice
        3.1 Broad development patterns
        3.2 Intelligent building
    4 Case studies
        4.1 The Holly Street Village Apartments
        4.2 Inn of the Anasazi
        4.3 Taipei 101
        4.4 Boulder, Colorado
    5 Controversy
    6 See also
    7 References
    8 External links

History

Green development emerged as a result of the environmental movement in the 1970s.[2] In the real estate industry, use of the term commenced in 1987 with a report from the World Commission on Environment and Development, entitled "Our Common Future". The report includes 16 principles of environmental management, designed to foster green development. It also discusses the traditional model of macroeconomic growth, and its disregard for environmental consequences.[3] Following this initial movement, the real estate industry experienced a back-and-forth relationship with "green" methodologies; environmental issues often came second behind purely economic factors.[4] Incessant environmental concern and legislation affecting the real estate sector began to emerge, i.e. Green development.[2] However, a common concern of green development is that it may increase project costs and completion times. Hence there has been an ongoing argument of whether green strategies can be sustainable as well as economically stimulating.[5]:137 National environmental attention has since worked its way down to real estate developers, and become an increasing priority.[6] Developers today must work within the parameters of legislation that now considers the environmental implications of development.[5]:134
Legislation

In response to increasing public concern regarding environmental issues, governments have enacted legislation that regulates various aspects of the real estate industry, as well as other sectors of the economy. In the United States such legislation includes the National Environmental Policy Act (NEPA), the Clean Air Act, the Clean Water Act, the Coastal Zone Management Act, and the Comprehensive Environmental Response, Compensation, and Liability Act (CERCLA; also known as "Superfund."). NEPA, enacted in 1970, changed how federal agencies made decisions because it required them to propose environmental analysis before starting a project. The Clean Air Act (1970) requires the United States Environmental Protection Agency (EPA) to set national standards for clean air and pollution control regulations. The Clean Water Act (1972) was designed to minimize pollution in natural bodies of water, and also to ensure water quality that protects drinking water sources and supports recreational activities such as fishing or swimming. The Coastal Zone Management Act (1972) manages the nation's coastal resources such as Great Lakes and estuaries. CERCLA is commonly referred to as "Superfund" because it comprises two trust funds that provide help to improve areas that have been polluted by hazardous waste. The Superfund Amendments and Reauthorization Act of 1986 allows the government to lien a property that is being cleaned up. Additionally, the California Environmental Quality Act (CEQA) is California's most comprehensive piece of legislation regarding the environment. This act applies to all decisions made by cities and counties in California, and includes the mandate of an Environmental Impact Report (EIR), to both public and private projects. Subsequently, any new real estate development is subject to a detailed environmental analysis before starting a project.[5]:133–135

California's Senate Bill (SB) 375 (2008) is another piece of legislation that promotes green development. It aims to achieve California's climate goals via more efficient land use and development patterns. More specifically, SB 375 seeks to reduce greenhouse gas (GHG) emissions through close coordination between land-use and transportation. One way this is achieved is through demand-side measures. This strategy would decrease driving demand, and therefore reduce vehicle miles traveled (VMT), and ultimately reduce GHG emissions. For example, a demand-side policy component may include placing public transit stops near development, in order to maximize walkability.[7]

Additionally, California state law requires minimum energy conservation levels for all new and/or existing development projects. The seller of a home is required to include information regarding energy conservation retrofitting and thermal insulation in the sales contract.[5]:133
In practice
Broad development patterns

Senate Bill 375 demonstrates an urban planning strategy called growth management. It is defined by a close coordination between land-use controls and capital investment and heavily motivated by environmental issues. It is defined by "the regulation of the amount, timing, location, and character of development."[8] As the name may suggest, growth management may not imply limiting any growth. "Growth control" carries the connotation of managing or limiting growth, and "no growth" would indicate stopping growth all together. Moreover, Growth Management requires the cooperation of all three of these connotations.[8]

Urban Growth Boundaries (UBG's), are popular growth management strategies. They are designed to encourage growth within a given boundary and discourage it outside the boundary. The goal of the UGB is to promote dense development, in order to decrease urban sprawl. This growth management technique ultimately seeks to revitalize central cities, and create vibrant, walk-able spaces for community development.[8]

These clustered development patterns are solution multipliers. Reducing demand for infrastructure can save money and resources. These multipliers can increase walkability, which fosters social interaction and community togetherness.[1]:5
Intelligent building

In the US, commercial and residential buildings are the highest consumers of electricity and HVAC systems comprise a large portion of this usage. In fact, the US Department of Energy projects that 70% of the electricity used in the US is from buildings. Intelligent building methods such as occupancy detection systems, wireless sensor networks, and HVAC control systems aim to more efficient energy usage. A team of researchers at the University of San Diego, project that their smart building automation systems will save 10–15% in building energy.[9]
Case studies
The Holly Street Village Apartments

The city of Pasadena, California has recently adopted a general plan based on seven guiding principles: community needs and quality of life, preservation of Pasadena's historic character, economic vitality, a healthy family community, lack of need for automobiles, promoted as a cultural, scientific, corporate, entertainment and educational center for the region, and community participation.[10]

This project included environmental concern and social considerations in the process of construction. The Holly Street Village Apartments in Pasadena address several of the principles outlined in Pasadena's general plan. It incorporates mixed-use development with ground-floor retail center including a deli, a convenience store and an art gallery. Also, the Holly Street Village Apartments is located near a light rail station. The goal of these strategies is to reduce the demand for automobiles, and making it easier for people to use public transportation.[1]:80
Inn of the Anasazi

Zimmer Associates International, a real estate development firm, completed the Inn of the Anasazi in Santa Fe, New Mexico in 1991. Robert Zimmer (co-founder) and his partners, Steve Conger and Michael Fuller, set a goal to construct a building that would, "showcase energy- and resource-saving technologies, strengthen local community, offer first class elegance, and financially reward its participants."[1]:3 The interior design of the hotel pays respect to the ancient Anasazi Indians, including locally crafted furniture, hand-made rugs, and Native American, Hispanic and cowboy wall art. The use of adobe on the exterior of the hotel includes the historic pueblo style. Also, Zimmer and his partners repurposed a steel-framed building that had previously been used in the 1960s as a juvenile detention center, instead of starting the project from the beginning. Other "green" characteristics of this Santa Fe hotel are skylights, energy-efficient lighting, and water-saving fixtures. Also, the Inn of the Anasazi stimulates the regional economy by purchasing locally grown organic food from Hispanic farmers. Lastly the Inn encourage that the staff participate in local nonprofit organizations and events that sponsor diverse local cultures. The Inn of the Anasazi integrates "social and environmental goals with financial considerations…"[1]:4
Taipei 101

Taipei 101, stylized as TAIPEI 101, is a 1,667 feet (508 m) tall skyscraper located in Taipei, Taiwan which has received LEED (Leadership in Energy and Environmental Design) certification from the U.S. Green Building Council as the highest score in history. In this project, "TAIPEI" is an acronym for "technology," "art," "innovation," "people," "environment," and "identity.[11] Dr. Hubert Keiber, CEO of Siemens Building Automation in Taipei, stresses energy efficiency on the grounds that energy is the single largest expense for commercial buildings. Since 2011, the Taipei 101 has become the world's most environmentally responsible skyscraper, reducing water use, energy use, and carbon emissions all by 10%.[12]
Boulder, Colorado

Growth management/limitation (discussed previously) manifests itself in Boulder, Colorado. The city of Boulder very tightly restricts housing development by limiting housing permits to 400 per year, which is 1 percent of the city's total housing stock. Additionally, the city has purchased land outside of the city limits, designated for permanent, green open space. This 400-unit cap seriously hinders population growth in the city.

This shortage of housing has several repercussions. First, it increases housing prices. Also, because Boulder restricts housing development more than it does commercial development, the number of available workers in Boulder grows faster than the housing stock. This results in many workers who commute from beyond the city limits.[8]
Controversy

A common critique of green development is that it negatively affects the way real estate developers do business, as it can increase cost and create delay.[5]:137 For example, becoming LEED-certified can contribute to additional costs. This includes additional building design and construction fees, interior design and construction fees, building operations and maintenance fees, neighborhood development fees, home and campus fees, and volume program fees.[13]

Additionally, green development has been critiqued on a residential level. High-performance homes have proven to save energy in the long run, but they rapidly increase up-front capital costs, via tankless water heaters, radiant barriers and reflective insulation systems, and high efficiency air conditioning systems.[14] Also, developers are often unable to develop on certain portions of land due to conservation easements. These easements are purchased by governments or non-governmental organizations, in order to "preserve land in its natural, scenic, agricultural, historical, forested, or open-space condition."[5]:132
See also

    Bicycle City
    Bioneers
    Conservation development
    Green building
    Green-collar worker
    Low impact development
    Passive solar building design
    Sustainable development
    Traffic calming

References

Rocky Mountain Institute (1998). Green Development: Integrating Ecology and Real Estate. New York: John Wiley & Sons. ISBN 9780471188780.
Kline, Benjamin (2011). First Along the River: A Brief History of the U.S. Environmental Movement. Rowman & Littlefield Publishers Inc.
Report of the World Commission on Environment and Development: Our Common Future. WCED. 1987.
Harris, Jonathan; Goodwin, Neva (March 2003). "Reconciling Growth and the Environment". Global Development and Environment Institute, Tufts University.
Zotter Jr., Frank (2016). Legal Aspects of Real Estate (5th ed.). Laguna Hills, CA: Ashley Crown Systems Inc. p. 137.
"CBRE Surpasses 300 Leed-Certified Buildings". Los Angeles, CA: CBRE Group, Inc. Retrieved 7 November 2016.
Barbour, Elisa; Deakin, Elizabeth (2013). Smart Growth Planning for Climate Protection: Evaluating California's Senate Bill 375.
Levy, John (2011). "Growth Management, Smart Growth, and Sustainable Development". Contemporary Urban Planning. Routledge.
Agarwal, Yuvraj; Balaji, Bharathan; Gupta, Rajesh; Lyles, Jacob; Wei, Michael; Weng, Thomas. "Occupancy-Driven Energy Management for Smart Building Automation" (PDF). BuildSys. Retrieved 11 November 2016.
"City of Pasadena Comprehensive General Plan" (PDF). Retrieved 7 November 2016.
"TAIPEI 101 Receives LEED v4 Certification from U.S. Green Building Council as All-Time Top Scorer". Taipei 101. Taipei Financial Center Corp. Retrieved 7 November 2016.
Keiber, Hubert. "Taipei 101: Responsibility in Counteracting Global Warming". Taipei: Siemens AG.
"LEED Certification Fees". Washington, DC: US Green Building Council.

    Widder, SH; Kora, AR; Baechler, MC; Fonorow, KD; Jenkins, DW; Stoer, DJ (2013). "Transitioning to High-Performance Homes: Successes and Lessons Learned From Seven Builders". US Department of Energy.

External links

    Sustainability Toolkit: Environmental Models

Categories:

    Land useNew UrbanismSustainable buildingUrban designUrban planningSustainable urban planning

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    한국어

Edit links

    This page was last edited on 12 April 2021, at 02:10 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki







!Get help


*Here is a [[Stroll layout cheat sheet]].<br><br>

*https://tiddlywiki.com/#Working%20with%20TiddlyWiki will help you learn more about ~TiddlyWiki<br><br>

*[[This link|https://tiddlywiki.com/#Formatting%20in%20WikiText]] will show you basic wikitext formatting.<br><br>


*The ~TiddlyWiki [[Google group|https://groups.google.com/forum/#!forum/tiddlywiki]] has many knowledgeable people who can help you with problems. Add the word Stroll and I should see it the same day or next day, unless I am traveling. <br><br> //''Note:'' I will try to help you if you run into a problem. But I will probably not take up your suggestions to change Stroll more to your liking. <span class="red">Please do NOT ask us to help you with questions about ~TiddlyMap.</span> There are too many incompatibilities between ~TiddlyMap and Stroll.  ~TiddlyWiki is infinitely customizable, and there are also numerous plugins you can add, found at the [[TiddlyWiki toolmap|https://dynalist.io/d/zUP-nIWu2FFoXH-oM7L7d9DM]].//<br>

!Acknowledgements

Stroll was made with the help of many people:

*[[Anne-Laure Le Cunff|https://twitter.com/anthilemoon]]'s enthusiasm for (and promotion of) ~TiddlyBlink was a big inspiration behind the changes in Stroll
*[[Saq Imtiaz|https://twitter.com/saqimtiaz]] custom-made his Stories plugin for Stroll, and made many recommendations for Stroll. 
*Stroll also uses plugins from [[danielo515|http://contextplugin.tiddlyspot.com/]], [[flibbles|https://flibbles.github.io/tw5-relink/]], and [[snowgoon88|http://snowgoon88.github.io/TW5-extendedit/#About%20the%20Edit-CompText%20plugin]].
*Many people at the [[TiddlyWiki Google group|https://groups.google.com/forum/#!forum/tiddlywiki]] made great recommendations regarding the form and functionality of Stroll.
*And of course, [[Jeremy Ruston|https://twitter.com/Jermolene]] is the creator of ~TiddlyWiki, the platform Stroll is built on.

Thank you to all of you!
Stroll is a free gift to you. The time I was able to put into creating it was made possible by my employer, //Resonate Global Mission.// 

If you find Stroll helpful, ''please consider a donation toward our support with Resonate''. [[(Link)|https://www.resonateglobalmission.org/support/our-missionaries/david-and-blanca-gifford]]

(We aren't allowed to promote any projects outside our Resonate budget, but family and friends have asked that I make my Kindle wish list available. If a donation to a Christian mission organization is not your thing, you could show your support of Stroll by getting me a book. [[here|https://www.amazon.com/hz/wishlist/ls/1OTJM9IE7SPVS/ref=nav_wishlist_lists_1?_encoding=UTF8&type=wishlist]].)

If you want to more about us, see our own website, https://giffmex.org.

Blessings,

//''Dave Gifford''//
! Hempcrete

!! https://en.wikipedia.org/wiki/Hempcrete

From Wikipedia, the free encyclopedia

Construction block made from hempcrete

Hempcrete or hemplime is biocomposite material, a mixture of hemp hurds (shives) and lime,[1] sand, or pozzolans, which is used as a material for construction and insulation.[2] It is marketed under names like Hempcrete, Canobiote, Canosmose, Isochanvre and IsoHemp.[3] Hempcrete is easier to work with than traditional lime mixes and acts as an insulator and moisture regulator. It lacks the brittleness of concrete and consequently does not need expansion joints.[3] The result is a lightweight insulating material ideal for most climates as it combines insulation and thermal mass.
Contents

    1 Mixture materials
    2 Applications and specifications
        2.1 Benefits and constraints
    3 Life cycle impacts
    4 See also
    5 References
    6 Further reading
    7 External links

Mixture materials

Hempcrete is developed from a mixture of hemp shives, and a lime based binder.[4] The lime-based binder typically consists of either hydrated lime or natural hydraulic lime.[4] Hydrated lime is made from pure limestone and set through the absorption of CO2 during the carbonation process.[4] When dealing with time constraints, hydraulic binders are used in combination with regular hydrated lime because the set time for hempcrete will be less than that of regular limes (about two weeks to a month to gain adequate strength).[4] Occasionally, a small fraction of cement and/or pozzolanic binder is added to speed up the setting time as well.[5] The overall process creates a mixture that will develop into a solid, but light and durable product.[5]

The typical production process of hempcrete is contained in a few steps.[5] At the manufacturing location, hemp is stored in a storage room, and the lime is stored in silos. The hemp and lime are added to water and thus mixed.[5] This process produces about 0.6 m3 of hempcrete mixture.[5] The mixture then travels through a conveyor belt where a machine shapes it into blocks.[5] The blocks are then taken to an area to cure.[5] Once cured, the blocks are separated into 2 m3 batches and loaded on pallets.[5] They are wrapped up with polyethylene packaging film and polypropylene straps to be transported to a construction site.[5]
Applications and specifications

Hempcrete has been used in France since the early 1990s, and more recently in Canada, to construct non-weight bearing insulating infill walls, as hempcrete does not have the requisite strength for constructing foundation and is instead supported by the frame.[6] Hempcrete was also used to renovate old buildings made of stone or lime.[7] France continues to be an avid user of hempcrete, and it grows in popularity there annually.[8] Canada has followed France's direction in the organic building technologies sector, and hempcrete has become a growing innovation in Ontario and Quebec.[9] There are two primary construction techniques used right now for implementing hempcrete. The first technique consists of using forms to cast or spray hempcrete directly in place on the construction site.[4] The second technique consists of stacking prefabricated blocks that are delivered to the project site similar to masonry construction.[4] Once hempcrete technology is implemented between timber framing, drywall or plaster is added for aesthetics and increased durability.[4]

The typical compressive strength is around 1 MPa,[10] around 5% that of residential grade concrete. It is a low density material and resistant to cracking under movement, thus making it suitable for use in earthquake-prone areas.[11] Hempcrete walls must be used together with a frame of another material that supports the vertical load in building construction, as hempcrete's density is 15% that of traditional concrete.[12] Studies in the UK indicate that the performance gain between 230 mm (9 in) and 300 mm (12 in) walls is insignificant.[clarification needed] Hempcrete walls are fireproof, transmit humidity, resist mould, and have excellent acoustic performance.[13] Limecrete, Ltd. (UK) reports a fire resistance rating of 1 hour per British/EU standards.[14]

In the United States, a permit is needed for the use of hemp in building.[15]

Hempcrete's R-value (its resistance to heat transfer) can range from 0.67/cm (1.7/in) to 1.2/cm (3.0/in) , making it an efficient insulating material (the higher the R-value, the better the insulation).[16][17][18] The porosity of hempcrete falls within the range of 71.1% to 84.3% by volume.[19] The average specific heat capacity of the hempcrete ranges from 1000 J/kg K to 1700 J/kg K.[19] The dry thermal conductivity of hempcrete ranges from 0.05 W/mK to 0.138 W/mK.[19] The low thermal diffusivity (1.48 x 10−7 m2/s) and effusivity (286 J/m2Ks-1/2) of hempcrete influence longer times for temperature change and create a warm sensation on the touch.[19] Low thermal diffusivity directly relates to increased thermal comfort within the building.[20]
Benefits and constraints

Hempcrete provides high vapor permeability because of the mixture's ability to easily absorb or release water vapor from the air.[5] In frame structures, hempcrete mixtures can be used as filling materials in infill walls. Increasing the density of the mixture allows the production of roof or floor insulation hempcrete materials.[5] Decreasing the density allows the production of indoor and outdoor plasters.[5] Hempcrete block walls can be laid without any covering or can be covered with finishing plasters.[5] This latter uses the same hempcrete mixture but in different proportions.

The fact that the mixture contains a plant-based compound introduces the caution against water and rising damp levels.[5] Hempcrete walls need to be built with a joint between the wall and the ground in order to avoid capillary rising as well as water runoff at the wall base.[5] Moreover, hempcrete block can only be installed above the ground level.[5] External walls need to avoid rotting of shives by implementing protection by the rain gale with sand and lime plaster.[5] The exterior of a hempcrete based assembly needs these protections, but the interior side of an assembly can stay exposed.[5]
Life cycle impacts

Just like any crop, hemp absorbs CO2 from the atmosphere while growing, so hempcrete is considered a carbon negative material.[5] Accordingly, this CO2 will be stored in the hempcrete block after fabrication and for the duration of the block's life allowing positive environmental benefits.[5] The specific amount of carbonates in the blocks actually increases with the age of the block.[5] The amount of CO2 capture within the net life cycle CO2 emissions of hempcrete is estimated to be between -1.6 to -79 kg CO2e/m2.[4] There is a correlation that increasing the mass of the binder which increases the mixture density will increase the total estimated carbon uptake via carbonation.[4]

The main cause of environmental impacts for hempcrete comes from the production of the binder. Reports have estimated that 18.5% - 38.4% of initial emissions from binder production can be recovered through the carbonation process.[4] The binder is produced by the calcination of lime which takes in kilns at very high temperatures.[5] The transport phase poses embodied energy impacts since it involves the consumption of diesel.[5] The diesel consumption also occurs due to the functioning of machineries used for hemp shives production.[5] Abiotic depletion is caused from the consumption of lead and cadmium in the electricity generation process, which is largest in the manufacturing of the hempcrete block inside the company.[5]
See also

    Fiber-reinforced concrete

References

Allin, Steve. Building with Hemp, Seed Press, 2005, ISBN 978-0-9551109-0-0. (p. 146, 1st Edition).
"NNFCC Renewable Building Materials Factsheet: An Introduction". National Non-Food Crops Centre. February 21, 2008. Retrieved 2011-02-16.
Priesnitz, Rolf B. (March–April 2006). "Hemp For Houses". Natural Life Magazine.
Arehart, Jay (April 29, 2020). "On the Theoretical Carbon Storage and Carbon Sequestration Potential of Hempcrete". Journal of Cleaner Production.
Arrigoni, Alessandro (April 2017). "Life Cycle Assessment of Natural Building Materials: The Role of Carbonation, Mixture Components and Transport in the Environmental Impacts of Hempcrete Blocks". Journal of Cleaner Production.
"6 Advantages of Building With Hempcrete". Green Building Canada. 2017-06-29. Retrieved 2019-08-10.
Jeremy Hodges and Kevin Orland (2019-08-30). "Builders Are Swapping Cement for Weed to Reduce Pollution".
Rhydwen, Ranyl (2018-05-18). "Building with Hemp and Lime".
"Canadian hempcrete: the development of the hemp construction industry". Innovation News Network. 2020-06-12. Retrieved 2020-12-17.
"Tradical Hemcrete 2008 Information Pack". American Lime Technology. Retrieved 2010-05-15.
"Hempcrete properties". www.minoeco.com.
Flahiff, Daniel (August 24, 2009). "Hemcrete®: Carbon Negative Hemp Walls". Inhabitat.
"Hempcrete". Carbon Smart Materials Palette, a project of Architecture 2030. Retrieved 2019-08-10.
Abbott, Tom (2014-04-26). "Hempcrete Factsheet". The Limecrete Company, Ltd.
Popescu, Adam (2018). "There's No Place Like Home, Especially if It's Made of Hemp". The New York Times. Retrieved 4 May 2018.
Magwood, Chris (January 7, 2016). "Building with Hempcrete or Hemp-Lime".
Stanwix, William (2014). The Hempcrete Book: Designing and Building with Hemp-Lime. Green Books.
Kenter, Peter (2015). "Championing Hemp: Ontario Builder Promoting Use of Hempcrete".
Dhakal, Ujwal (October 22, 2016). "Hygrothermal performance of hempcrete for Ontario (Canada) buildings". Journal of Cleaner Production.

    Bevan, Rachel (2008). Hemp Lime Construction: A Guide to Building with Hemp Lime Composites. IHS BRE Press.

Further reading

    Magwood, Chris (2016). Essential Hempcrete Construction: The Complete Step-by-Step Guide. Gabriola Island, BC, Canada: New Society Publishers. ISBN 9781550926132. OCLC 947134507.

External links
	Wikimedia Commons has media related to Hemp concrete.

    Hemcrete application data from Limetechnology

    vte

Cannabis

    Outline of cannabis Recreational and medical applications Industrial applications

General	

    Autoflowering cannabis Cannabis
        indica ruderalis sativa Difference between C. indica and C. sativa Consumption Cultivation Etymology (cannabis, dagga, ganja, ma, marijuana) Glossary Cannabis strains Synthetic cannabis

Usage	
General	

    Medical cannabis
        Cannabis product testing History In the US
            Medical cannabis card

    Religious and spiritual use
        Chalice Drug testing Marijuana Anonymous

Hemp	

    Hanfparade List of hemp diseases List of hemp products
        hempcrete jewelry milk oil paper
            rolling paper List of hemp varieties Hemp for Victory Hemp Industries Association The Emperor Wears No Clothes

Variants	

    Cannabis edible
        Bhang Cannabis tea Cannabis smoking Vaporizing

    Cannabis concentrate
        Essential oil Charas Hash oil Hashish Kief Tincture

    Phytocannabinoids
        Cannabidiol (CBD) Tetrahydrocannabinol (THC)

Effects	

    Amotivational syndrome Cannabis in pregnancy Cannabis use disorder (CUD) Cannabinoid hyperemesis syndrome (CHS) Entourage effect Endocannabinoid system Impaired driving Time perception Long-term effects Occupational health concerns Medical cannabis research

Culture	

    420 Books Budtender Cannabis Culture Cannabis Social Club Columns Competitions Cookbooks Etiquette Films (Stoner film) High Times Music Religion Head shop KBUD-AM (defunct) Operation Overgrow Stoner TV

Pro-cannabis
organizations	

    ACT ALCP AMMA ASA CBN CCRMG CLEAR CRC DFCR DPA FAAAT FCA GMM LEAP MAPS MPP NCIA NORML SAFER SCC SSDP VMCA

Use demographics	

    Adult lifetime use by country Annual use by country

Politics	
General	

    Bootleggers and Baptists Cannabis rights Cannabis activists Capital punishment for cannabis trafficking Effects of legalized cannabis Global Marijuana March Legality of cannabis Legal history in the United States Marihuana Tax Act of 1937 Timeline of cannabis law

Major legal
reforms	

    Canada: 2018 Cannabis Act UK: Return to class B Uruguay: Law No. 19172 US:
        Decriminalization of non-medical use Rescheduling per the Controlled Substances Act Hemp Farming Act of 2018

Politicians
and parties	

    Cannabis political parties List of British politicians who have acknowledged cannabis use List of American politicians who have acknowledged cannabis use

Legal cases	

    Ker v. California (1963) Leary v. United States (1969) Gonzales v. Raich (2005) Kyllo v. United States (2001) ADPF 187 (2011)

Related	

    Impact of the COVID-19 pandemic on the cannabis industry

    Cannabis leaf.svg Cannabis portal Category Category

Categories:

    Appropriate technologyBuilding materialsConcreteHemp productsMasonry

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Deutsch
    Français
    Italiano
    עברית
    Magyar
    Nederlands
    日本語
    Polski
    Русский

Edit links

    This page was last edited on 2 April 2021, at 12:56 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki





<br>Try it out on <span class="blue">[[Muffin!]]</span>
Homo economicus
https://en.wikipedia.org/wiki/Homo_economicus#History_of_the_term

The term homo economicus, or economic man, is the portrayal of humans as agents who are consistently rational and narrowly self-interested, and who pursue their subjectively-defined ends optimally. It is a word play on Homo sapiens, used in some economic theories and in pedagogy.[1]

In game theory, homo economicus is often modelled through the assumption of perfect rationality. It assumes that agents always act in a way that maximize utility as a consumer and profit as a producer,[2] and are capable of arbitrarily complex deductions towards that end. They will always be capable of thinking through all possible outcomes and choosing that course of action which will result in the best possible result.

The rationality implied in homo economicus does not restrict what sort of preferences are admissible. Only naïve applications of the homo economicus model assume that agents know what is best for their long-term physical and mental health. For example, an agent's utility function could be linked to the perceived utility of other agents (such as one's husband or children), making homo economicus compatible with other models such as homo reciprocans, which emphasizes human cooperation.

As a theory on human conduct, it contrasts to the concepts of behavioral economics, which examines cognitive biases and other irrationalities, and to bounded rationality, which assumes that practical elements such as cognitive and time limitations restrict the rationality of agents.

Model
Homo economicus is a term used for an approximation or model of Homo sapiens that acts to obtain the highest possible well-being for him or herself given available information about opportunities and other constraints, both natural and institutional, on his ability to achieve his predetermined goals. This approach has been formalized in certain social sciences models, particularly in economics.

Homo economicus is seen as "rational" in the sense that well-being as defined by the utility function is optimized given perceived opportunities. That is, the individual seeks to attain very specific and predetermined goals to the greatest extent with the least possible cost. Note that this kind of "rationality" does not say that the individual's actual goals are "rational" in some larger ethical, social, or human sense, only that he tries to attain them at minimal cost. Only naïve applications of the homo economicus model assume that this hypothetical individual knows what is best for his long-term physical and mental health and can be relied upon to always make the right decision for himself. See rational choice theory and rational expectations for further discussion; the article on rationality widens the discussion.

As in social science, these assumptions are at best approximations. The term is often used derogatorily in academic literature, perhaps most commonly by sociologists, many of whom tend to prefer structural explanations to ones based on rational action by individuals.

The use of the Latin form homo economicus is certainly long established; Persky[3] traces it back to Pareto (1906)[6] but notes that it may be older. The English term economic man can be found even earlier, in John Kells Ingram's A History of Political Economy (1888).[7] The Oxford English Dictionary (O.E.D.) cites the use of homo oeconomicus by C. S. Devas in his 1883 work The Groundwork of Economics in reference to Mill's writings, as one of a number of phrases that imitate the scientific name for the human species:

Mill has only examined the homo oeconomicus, or dollar-hunting animal.[8]

According to the OED, the human genus name homo is

Used with L. or mock-L. adjs. in names imitating Homo sapiens, etc., and intended to personify some aspect of human life or behaviour (indicated by the adj.). Homo faber ("feIb@(r)) [H. Bergson L'Evolution Créatrice (1907) ii. 151], a term used to designate man as a maker of tools.) Variants are often comic: Homo insipiens; Homo turisticus.[9]

Note that such forms should logically keep the capital for the "genus" name—i.e., Homo economicus rather than homo economicus. Actual usage is inconsistent.

Amartya Sen has argued there are grave pitfalls in assuming that rationality is limited to selfish rationality. Economics should build into its assumptions the notion that people can give credible commitments to a course of conduct. He demonstrates the absurdity with the narrowness of the assumptions by some economists with the following example of two strangers meeting on a street.[10]

"Where is the railway station?" he asks me. "There," I say, pointing at the post office, "and would you please post this letter for me on the way?" "Yes," he says, determined to open the envelope and check whether it contains something valuable.







! Human Development Index

!! https://en.wikipedia.org/wiki/Human_Development_Index

From Wikipedia, the free encyclopedia

"HDI" redirects here. For other uses, see HDI (disambiguation).
For the complete ranking of countries, see List of countries by Human Development Index.
World map representing Human Development Index categories (based on 2019 data, published in 2020).
  0.800–1.000 (very high)
  0.700–0.799 (high)
  0.550–0.699 (medium)
	
  0.350–0.549 (low)
  Data unavailable
World map of countries by Human Development Index categories in increments of 0.050 (based on 2019 data, published in 2020).
  ≥ 0.900
  0.850–0.899
  0.800–0.849
  0.750–0.799
  0.700–0.749
	
  0.650–0.699
  0.600–0.649
  0.550–0.599
  0.500–0.549
  0.450–0.499
	
  0.400–0.449
  ≤ 0.399
  Data unavailable

The Human Development Index (HDI) is a statistic composite index of life expectancy, education (mean years of schooling completed and expected years of schooling upon entering the education system), and per capita income indicators, which are used to rank countries into four tiers of human development. A country scores a higher HDI when the lifespan is higher, the education level is higher, and the gross national income GNI (PPP) per capita is higher. It was developed by Pakistani economist Mahbub ul Haq and was further used to measure a country's development by the United Nations Development Programme (UNDP)'s Human Development Report Office.[1][2][3]

The 2010 Human Development Report introduced an Inequality-adjusted Human Development Index (IHDI). While the simple HDI remains useful, it stated that "the IHDI is the actual level of human development (accounting for inequality), while the HDI can be viewed as an index of 'potential' human development (or the maximum level of HDI) that could be achieved if there were no inequality."[4]

The index is based on the human development approach, developed by Mahbub ul Haq, often framed in terms of whether people are able to "be" and "do" desirable things in life. Examples include – being: well fed, sheltered, healthy; doing: work, education, voting, participating in community life. The freedom of choice is central – someone choosing to be hungry (as during a religious fast) is quite different from someone who is hungry because they cannot afford to buy food, or because the country is in a famine.[5]

The index does not take into account several factors, such as the net wealth per capita or the relative quality of goods in a country. This situation tends to lower the ranking for some of the most advanced countries, such as the G7 members and others.[6]
Contents

    1 Origins
    2 Dimensions and calculation
        2.1 New method (2010 HDI onwards)
        2.2 Old method (HDI before 2010)
    3 2019 Human Development Index (2020 report)
        3.1 Inequality-adjusted HDI (2020 report)
    4 Past top countries
        4.1 In each original HDI
    5 Geographical coverage
    6 Country/region specific HDI lists
    7 Criticism
        7.1 Sources of data error
    8 See also
        8.1 Indices
        8.2 Other
    9 Notes
    10 References
    11 External links

Origins
Mahbub ul Haq

The origins of the HDI are found in the annual Human Development Reports produced by the Human Development Report Office of the United Nations Development Programme (UNDP). These were devised and launched by Pakistani economist Mahbub ul Haq in 1990, and had the explicit purpose "to shift the focus of development economics from national income accounting to people-centered policies". Haq believed that a simple composite measure of human development was needed to convince the public, academics, and politicians that they can and should evaluate development not only by economic advances but also improvements in human well-being.
The underlying principles behind the Human Development Index.[5]
Dimensions and calculation
New method (2010 HDI onwards)

Published on 4 November 2010 (and updated on 10 June 2011), the 2010 Human Development Report calculated the HDI combining three dimensions:[7][8]

    A long and healthy life: Life expectancy at birth
    Education index: Mean years of schooling and Expected years of schooling
    A decent standard of living: GNI per capita (PPP international dollars)

In its 2010 Human Development Report, the UNDP began using a new method of calculating the HDI. The following three indices are used:

1. Life Expectancy Index (LEI) = LE − 20 85 − 20 {\displaystyle ={\frac {{\textrm {LE}}-20}{85-20}}} ={\frac {{\textrm {LE}}-20}{85-20}}

        LEI is 1 when Life expectancy at birth is 85 and 0 when Life expectancy at birth is 20.

2. Education Index (EI) = MYSI + EYSI 2 {\displaystyle ={\frac {{\textrm {MYSI}}+{\textrm {EYSI}}}{2}}} ={\frac {{\textrm {MYSI}}+{\textrm {EYSI}}}{2}}[9]

    2.1 Mean Years of Schooling Index (MYSI) = MYS 15 {\displaystyle ={\frac {\textrm {MYS}}{15}}} ={\frac {\textrm {MYS}}{15}}[10]

        Fifteen is the projected maximum of this indicator for 2025.

    2.2 Expected Years of Schooling Index (EYSI) = EYS 18 {\displaystyle ={\frac {\textrm {EYS}}{18}}} ={\frac {\textrm {EYS}}{18}}[11]

        Eighteen is equivalent to achieving a master's degree in most countries.

3. Income Index (II) = ln ⁡ ( GNIpc ) − ln ⁡ ( 100 ) ln ⁡ ( 75 , 000 ) − ln ⁡ ( 100 ) {\displaystyle ={\frac {\ln({\textrm {GNIpc}})-\ln(100)}{\ln(75,000)-\ln(100)}}} ={\frac {\ln({\textrm {GNIpc}})-\ln(100)}{\ln(75,000)-\ln(100)}}

        II is 1 when GNI per capita is $75,000 and 0 when GNI per capita is $100.

Finally, the HDI is the geometric mean of the previous three normalized indices:

HDI = LEI ⋅ EI ⋅ II 3 . {\displaystyle {\textrm {HDI}}={\sqrt[{3}]{{\textrm {LEI}}\cdot {\textrm {EI}}\cdot {\textrm {II}}}}.} {\textrm {HDI}}={\sqrt[{3}]{{\textrm {LEI}}\cdot {\textrm {EI}}\cdot {\textrm {II}}}}.

LE: Life expectancy at birth
MYS: Mean years of schooling (i.e. years that a person aged 25 or older has spent in formal education)
EYS: Expected years of schooling (i.e. total expected years of schooling for children under 18 years of age)
GNIpc: Gross national income at purchasing power parity per capita
Old method (HDI before 2010)

The HDI combined three dimensions last used in its 2009 report:

    Life expectancy at birth, as an index of population health and longevity to HDI
    Knowledge and education, as measured by the adult literacy rate (with two-thirds weighting) and the combined primary, secondary, and tertiary gross enrollment ratio (with one-third weighting).
    Standard of living, as indicated by the natural logarithm of gross domestic product per capita at purchasing power parity.

HDI trends between 1975 and 2004
  OECD
  Europe (not in the OECD), and CIS
  Latin America and the Caribbean
  East Asia
	
  Arab League
  South Asia
  Sub-Saharan Africa

This methodology was used by the UNDP until their 2011 report.

The formula defining the HDI is promulgated by the United Nations Development Programme (UNDP).[12] In general, to transform a raw variable, say x {\displaystyle x} x, into a unit-free index between 0 and 1 (which allows different indices to be added together), the following formula is used:

    x  index = x − a b − a {\displaystyle x{\text{ index}}={\frac {x-a}{b-a}}} {\displaystyle x{\text{ index}}={\frac {x-a}{b-a}}}

where a {\displaystyle a} a and b {\displaystyle b} b are the lowest and highest values the variable x {\displaystyle x} x can attain, respectively.

The Human Development Index (HDI) then represents the uniformly weighted sum with 1⁄3 contributed by each of the following factor indices:

    Life Expectancy Index = L E − 25 85 − 25 {\displaystyle {\frac {LE-25}{85-25}}} {\frac {LE-25}{85-25}}
    Education Index = 2 3 × A L I + 1 3 × G E I {\displaystyle {\frac {2}{3}}\times ALI+{\frac {1}{3}}\times GEI} {\frac {2}{3}}\times ALI+{\frac {1}{3}}\times GEI
        Adult Literacy Index (ALI) = A L R − 0 100 − 0 {\displaystyle {\frac {ALR-0}{100-0}}} {\frac {ALR-0}{100-0}}
        Gross Enrollment Index (GEI) = C G E R − 0 100 − 0 {\displaystyle {\frac {CGER-0}{100-0}}} {\frac {CGER-0}{100-0}}
    GDP = log ⁡ ( G D P p c ) − log ⁡ ( 100 ) log ⁡ ( 40000 ) − log ⁡ ( 100 ) {\displaystyle {\frac {\log \left(GDPpc\right)-\log \left(100\right)}{\log \left(40000\right)-\log \left(100\right)}}} {\frac {\log \left(GDPpc\right)-\log \left(100\right)}{\log \left(40000\right)-\log \left(100\right)}}

2019 Human Development Index (2020 report)
Main article: List of countries by Human Development Index

The Human Development Report 2020 by the United Nations Development Programme was released on 15 December 2020, and calculates HDI values based on data collected in 2019.[13] The list comprises countries and territories with very high human development:

    Increase = increase.
    Steady = steady.
    Decrease = decrease.

Rank 	Country or Territory 	HDI
2019 data (2020 report)​[14] 	Change over 5 years (2014)​[15] 	2019 data (2020 report)​[14] 	Average annual HDI growth (2010-2019)​[15]
1 	Steady 	 Norway 	0.957 	Increase 0.20%
2 	Increase (7) 	 Ireland 	0.955 	Increase 0.65%
2 	Steady 	  Switzerland 	0.955 	Increase 0.16%
4 	Increase (7) 	 Hong Kong 	0.949 	Increase 0.54%
4 	Increase (4) 	 Iceland 	0.949 	Increase 0.62%
6 	Decrease (3) 	 Germany 	0.947 	Increase 0.24%
7 	Decrease (3) 	 Sweden 	0.945 	Increase 0.41%
8 	Decrease (2) 	 Australia 	0.944 	Increase 0.17%
8 	Decrease (1) 	 Netherlands 	0.944 	Increase 0.32%
10 	Decrease (6) 	 Denmark 	0.940 	Increase 0.28%
11 	Decrease (2) 	 Finland 	0.938 	Increase 0.26%
11 	Steady 	 Singapore 	0.938 	Increase 0.35%
13 	Steady 	 United Kingdom 	0.932 	Increase 0.24%
14 	Increase (1) 	 Belgium 	0.931 	Increase 0.25%
14 	Increase (3) 	 New Zealand 	0.931 	Increase 0.30%
16 	Decrease (1) 	 Canada 	0.929 	Increase 0.34%
17 	Decrease (3) 	 United States 	0.926 	Increase 0.12%
18 	Steady 	 Austria 	0.922 	Increase 0.22%
19 	Increase (1) 	 Israel 	0.919 	Increase 0.29%
19 	Increase (2) 	 Japan 	0.919 	Increase 0.39%
19 	Steady 	 Liechtenstein 	0.919 	Increase 0.18%
22 	Increase (2) 	 Slovenia 	0.917 	Increase 0.35%
23 	Decrease (1) 	 South Korea 	0.916 	Increase 0.33%
23 	Steady 	 Luxembourg 	0.916 	Increase 0.22%
		 European Union 	0.911 	
25 	Increase (1) 	 Spain 	0.904 	Increase 0.40%
26 	Decrease (1) 	 France 	0.901 	Increase 0.28%
27 	Decrease (1) 	 Czech Republic 	0.900 	Increase 0.38%
28 	Increase (2) 	 Malta 	0.895 	Increase 0.54%
29 	Increase (2) 	 Estonia 	0.892 	Increase 0.51%
29 	Decrease (1) 	 Italy 	0.892 	Increase 0.16%
31 	Increase (6) 	 United Arab Emirates 	0.890 	Increase 0.91%
32 	Decrease (3) 	 Greece 	0.888 	Increase 0.29%
33 	Steady 	 Cyprus 	0.887 	Increase 0.40%
34 	Steady 	 Lithuania 	0.882 	Increase 0.66%
35 	Steady 	 Poland 	0.880 	Increase 0.52%
36 	Decrease (4) 	 Andorra 	0.868 	Increase 0.40%
37 	Increase (3) 	 Latvia 	0.866 	Increase 0.55%
38 	Decrease (1) 	 Portugal 	0.864 	Increase 0.46%
39 	Decrease (2) 	 Slovakia 	0.860 	Increase 0.38%
40 	Increase (1) 	 Hungary 	0.854 	Increase 0.30%
40 	Decrease (4) 	 Saudi Arabia 	0.854 	Increase 0.60%
42 	Increase (6) 	 Bahrain 	0.852 	Increase 0.70%
43 	Steady 	 Chile 	0.851 	Increase 0.65%
43 	Increase (2) 	 Croatia 	0.851 	Increase 0.48%
45 	Steady 	 Qatar 	0.848 	Increase 0.19%
46 	Decrease (2) 	 Argentina 	0.845 	Increase 0.21%
47 	Decrease (6) 	 Brunei 	0.838 	Increase 0.15%
48 	Increase (2) 	 Montenegro 	0.829 	Increase 0.37%
49 	Increase (2) 	 Romania 	0.828 	Increase 0.31%
50 	Decrease (3) 	 Palau 	0.826 	Increase 0.55%
51 	Increase (7) 	 Kazakhstan 	0.825 	Increase 0.86%
52 	Increase (1) 	 Russian Federation 	0.824 	Increase 0.60%
53 	Decrease (4) 	 Belarus 	0.823 	Increase 0.39%
54 	Increase (5) 	 Turkey 	0.820 	Increase 1.16%
55 	Increase (1) 	 Uruguay 	0.817 	Increase 0.49%
56 	Decrease (2) 	 Bulgaria 	0.816 	Increase 0.39%
57 	Increase (5) 	 Panama 	0.815 	Increase 0.58%
58 	Decrease (3) 	 Bahamas 	0.814 	Increase 0.12%
58 	Decrease (6) 	 Barbados 	0.814 	Increase 0.23%
60 	Decrease (3) 	 Oman 	0.813 	Increase 0.43%
61 	Increase (7) 	 Georgia 	0.812 	Increase 0.87%
62 	Decrease (3) 	 Costa Rica 	0.810 	Increase 0.64%
62 	Increase (1) 	 Malaysia 	0.810 	Increase 0.54%
64 	Decrease (5) 	 Kuwait 	0.806 	Increase 0.25%
64 	Increase (3) 	 Serbia 	0.806 	Increase 0.57%
66 	Decrease (2) 	 Mauritius 	0.804 	Increase 0.76%
Inequality-adjusted HDI (2020 report)
Main article: List of countries by inequality-adjusted HDI

The Inequality-adjusted Human Development Index (IHDI)[16] "equals the HDI when there is no inequality across people but is less than the HDI as inequality rises. In this sense, the IHDI is the actual level of human development (accounting for this inequality), while the HDI can be viewed as an index of 'potential' human development (or the maximum level of HDI) that could be achieved if there was no inequality. The 'loss' in potential human development due to inequality is given by the difference between the HDI and the IHDI and can be expressed as a percentage." The list comprises countries and territories with very high and high human development:
Rank 	Country 	2019 estimates (2020 report)[17][18][19]
IHDI 	HDI 	Overall loss (%) 	Growth since 2010
1 	 Norway 	0.899 	0.957 	6.1 	Increase 0.021
2 	 Iceland 	0.894 	0.949 	5.8 	Increase 0.055
3 	  Switzerland 	0.889 	0.955 	6.9 	Increase 0.015
4 	 Finland 	0.888 	0.938 	5.3 	Increase 0.040
5 	 Ireland 	0.885 	0.955 	7.3 	Increase 0.066
6 	 Denmark 	0.883 	0.940 	6.1 	Increase 0.025
7 	 Sweden 	0.882 	0.945 	6.7 	Increase 0.033
8 	 Netherlands 	0.878 	0.944 	7.0 	Increase 0.036
9 	 Slovenia 	0.875 	0.917 	4.6 	Increase 0.047
10 	 Germany 	0.869 	0.947 	8.2 	Increase 0.016
11 	 Australia 	0.867 	0.944 	8.2 	Increase 0.011
12 	 Czech Republic 	0.860 	0.900 	4.4 	Increase 0.042
13 	 Belgium 	0.859 	0.931 	7.7 	Increase 0.026
14 	 New Zealand 	0.859 	0.931 	7.7 	NA
15 	 Austria 	0.857 	0.922 	7.0 	Increase 0.021
16 	 United Kingdom 	0.856 	0.932 	8.2 	Increase 0.032
17 	 Canada 	0.848 	0.929 	8.7 	Increase 0.025
18 	 Japan 	0.843 	0.919 	8.3 	Increase 0.053[a]
19 	 Estonia 	0.829 	0.882 	7.1 	Increase 0.051
20 	 Luxembourg 	0.826 	0.916 	9.8 	Increase 0.009
21 	 Hong Kong 	0.824 	0.949 	13.2 	NA
22 	 Malta 	0.823 	0.895 	8.0 	Increase 0.033[b]
23 	 France 	0.820 	0.901 	9.0 	Increase 0.022
24 	 South Korea 	0.815 	0.916 	11.0 	Increase 0.074
25 	 Israel 	0.814 	0.919 	11.4 	Increase 0.031
26 	 Singapore 	0.813 	0.938 	13.3 	NA
26 	 Poland 	0.813 	0.880 	7.6 	Increase 0.063
28 	 United States 	0.808 	0.926 	12.7 	Decrease 0.004
29 	 Slovakia 	0.807 	0.860 	6.2 	Increase 0.032
30 	 Cyprus 	0.805 	0.887 	9.2 	Increase 0.048
31 	 Hungary 	0.791 	0.854 	7.4 	Increase 0.032
31 	 Lithuania 	0.791 	0.882 	10.3 	Increase 0.055
31 	 Greece 	0.791 	0.888 	10.9 	Increase 0.014
34 	 Italy 	0.783 	0.892 	12.2 	Increase 0.010
34 	 Latvia 	0.783 	0.866 	9.6 	Increase 0.050
34 	 Croatia 	0.783 	0.851 	8.0 	Increase 0.092
34 	 Spain 	0.783 	0.904 	13.4 	Decrease 0.004
38 	 Belarus 	0.771 	0.823 	6.3 	Increase 0.050
39 	 Kazakhstan 	0.766 	0.825 	7.2 	Increase 0.105
40 	 Portugal 	0.761 	0.850 	12.7 	Increase 0.031
41 	 Montenegro 	0.749 	0.829 	9.7 	Increase 0.026
42 	 Russia 	0.740 	0.824 	10.2 	Increase 0.049
43 	 Romania 	0.730 	0.828 	11.8 	Increase 0.022
44 	 Argentina 	0.729 	0.845 	13.7 	Increase 0.063
45 	 Ukraine 	0.728 	0.779 	6.4 	Increase 0.035
46 	 Bulgaria 	0.721 	0.816 	11.6 	Increase 0.022
47 	 Georgia 	0.716 	0.812 	11.8 	Increase 0.093
48 	 Uruguay 	0.712 	0.817 	12.7 	Increase 0.055
49 	 Chile 	0.709 	0.851 	16.7 	Increase 0.058
50 	 Albania 	0.708 	0.795 	10.9 	Increase 0.058
51 	 Oman 	0.706 	0.813 	13.2 	NA
52 	 Serbia 	0.705 	0.806 	12.5 	Increase 0.021
Past top countries

The list below displays the top-ranked country from each year of the Human Development Index. Norway has been ranked the highest sixteen times, Canada eight times, and Japan and Iceland twice.
In each original HDI

The year represents the time period from which the statistics for the index were derived. In parentheses is the year when the report was published.

    2019 (2020):  Norway
    2018 (2019):  Norway
    2017 (2018):  Norway
    2015 (2016):  Norway
    2014 (2015):  Norway
    2013 (2014):  Norway
    2012 (2013):  Norway
    2011 (2011):  Norway
    2010 (2010):  Norway
    2007 (2009):  Norway
    2006 (2008):  Iceland
    2005 (2007):  Iceland
    2004 (2006):  Norway
    2003 (2005):  Norway
    2002 (2004):  Norway
    2001 (2003):  Norway
    2000 (2002):  Norway
    1999 (2001):  Norway
    1998 (2000):  Canada
    1997 (1999):  Canada
    1995 (1998):  Canada
    1994 (1997):  Canada
    1993 (1996):  Canada
    1992 (1995):  Canada
    ???? (1994):  Canada
    ???? (1993):  Japan
    1990 (1992):  Canada
    1990 (1991):  Japan

Geographical coverage

The HDI has extended its geographical coverage: David Hastings, of the United Nations Economic and Social Commission for Asia and the Pacific, published a report geographically extending the HDI to 230+ economies, whereas the UNDP HDI for 2009 enumerates 182 economies and coverage for the 2010 HDI dropped to 169 countries.[20][21]
Country/region specific HDI lists

    African countries
    Argentine provinces
    Australian states
    Bolivian departments
    Brazilian states
    Canadian provinces and territories
    Chilean regions
    Chinese administrative divisions
    Colombian Departaments
    Ethiopian regions
    European countries
    German states
    Indian states
        Tamil Nadu districts
    Indonesian provinces
    Iranian provinces
    Iraqi governorates
    Italian regions
    Japanese prefectures
    Latin American countries
    Mexican states
    New Zealand regions
    Nigerian States
    Pakistani administrative units
    Philippine provinces
    Palestinian regions
    Polish voivodeships
    Russian federal subjects
    South African provinces
    Spanish communities
    Swiss regions
    UK countries and regions of England
    U.S. states (American Human Development Report (AHDR))
    Venezuelan states

Criticism
HDI vs. ecological footprint

The Human Development Index has been criticized on a number of grounds, including alleged lack of consideration of technological development or contributions to the human civilization, focusing exclusively on national performance and ranking, lack of attention to development from a global perspective, measurement error of the underlying statistics, and on the UNDP's changes in formula which can lead to severe misclassification in the categorisation of "low", "medium", "high" or "very high" human development countries.[22]
Sources of data error

Economists Hendrik Wolff, Howard Chong and Maximilian Auffhammer discuss the HDI from the perspective of data error in the underlying health, education and income statistics used to construct the HDI. They identified three sources of data error which are due to (i) data updating, (ii) formula revisions and (iii) thresholds to classify a country's development status and conclude that 11%, 21% and 34% of all countries can be interpreted as currently misclassified in the development bins due to the three sources of data error, respectively. The authors suggest that the United Nations should discontinue the practice of classifying countries into development bins because: the cut-off values seem arbitrary, can provide incentives for strategic behavior in reporting official statistics, and have the potential to misguide politicians, investors, charity donors and the public who use the HDI at large.[22]

In 2010, the UNDP reacted to the criticism and updated the thresholds to classify nations as low, medium, and high human development countries. In a comment to The Economist in early January 2011, the Human Development Report Office responded[23] to a 6 January 2011 article in the magazine[24] which discusses the Wolff et al. paper. The Human Development Report Office states that they undertook a systematic revision of the methods used for the calculation of the HDI, and that the new methodology directly addresses the critique by Wolff et al. in that it generates a system for continuously updating the human-development categories whenever formula or data revisions take place.

In 2013, Salvatore Monni and Alessandro Spaventa emphasized that in the debate of GDP versus HDI, it is often forgotten that these are both external indicators that prioritize different benchmarks upon which the quantification of societal welfare can be predicated. The larger question is whether it is possible to shift the focus of policy from a battle between competing paradigms to a mechanism for eliciting information on well-being directly from the population.[25]
See also
Indices

    Bhutan GNH Index
    Broad measures of economic progress
    Corruption Perceptions Index
    Democracy Index
    Fragile States Index
    Gender Inequality Index
    Gender-related Development Index
    Genuine Progress Indicator (GPI)
    Global Peace Index (GPI)
    Green gross domestic product (Green GDP)
    Green national product
    Gross domestic product
    Gross National Well-being (GNW)
    Happy Planet Index (HPI)
    Human Poverty Index
    Inequality-adjusted Human Development Index (IHDI)
    Legatum Prosperity Index
    List of countries by Human Development Index
    Living planet index
    Multidimensional Poverty Index
    OECD Better Life Index (BLI)
    Planetary pressures–adjusted Human Development Index (PHDI)
    Rule of Law Index
    Social Progress Index
    Where-to-be-born Index
    World Happiness Report

Other

    Developing country
    Economic development
    Ethics of care
    Happiness economics
    Human Development and Capability Association
    Humanistic economics
    International development
    List of countries by percentage of population living in poverty
    List of countries by share of income of the richest one percent
    Right to an adequate standard of living
    Subjective life satisfaction
    Sustainable Development Goals (SDGs)

Notes

Since 2013

    Since 2012

References

A. Stanton, Elizabeth (February 2007). "The Human Development Index: A History". PERI Working Papers: 14–15. Archived from the original on 28 February 2019. Retrieved 28 February 2019.
"Human Development Index". Economic Times. Archived from the original on 1 December 2017. Retrieved 29 November 2017.
"The Human Development concept". UNDP. 2010. Archived from the original on 15 April 2012. Retrieved 29 July 2011.
Human Development Index, "Composite indices — HDI and beyond", Retrieved 16 January 2021.
"What is Human Development". UNDP. 2017. Archived from the original on 27 October 2017. Retrieved 27 October 2017. "... human development approach, developed by the economist Mahbub Ul Haq ...'"
The Courier. Commission of the European Communities. 1994.
"Human Development Report 2010". UNDP. 4 November 2010. Archived from the original on 22 December 2015. Retrieved 15 December 2015.
"Technical notes" (PDF). UNDP. 2013. Archived (PDF) from the original on 16 June 2015. Retrieved 15 December 2015.
"New method of calculation of Human Development Index (HDI)". India Study Channel. 1 June 2011. Archived from the original on 10 November 2017. Retrieved 19 November 2017.
Mean years of schooling (of adults) (years) is a calculation of the average number of years of education received by people ages 25 and older in their lifetime based on education attainment levels of the population converted into years of schooling based on theoretical duration of each level of education attended. Source: Barro, R. J.; Lee, J.-W. (2010). "A New Data Set of Educational Attainment in the World, 1950–2010". NBER Working Paper No. 15902. doi:10.3386/w15902. Archived from the original on 7 August 2011. Retrieved 29 July 2011.
(ESYI is a calculation of the number of years a child is expected to attend school, or university, including the years spent on repetition. It is the sum of the age-specific enrollment ratios for primary, secondary, post-secondary non-tertiary and tertiary education and is calculated assuming the prevailing patterns of age-specific enrollment rates were to stay the same throughout the child's life. Expected years of schooling is capped at 18 years. (Source: UNESCO Institute for Statistics (2010). Correspondence on education indicators. March. Montreal.)
"Definition, Calculator, etc. at UNDP site". Archived from the original on 20 December 2007. Retrieved 26 May 2020.
Human Development Report 2020 The Next Frontier: Human Development and the Anthropocene (PDF). United Nations Development Programme. 15 December 2020. pp. 343–350. ISBN 978-92-1-126442-5. Retrieved 17 December 2020.
Human Development Report 2020 The Next Frontier: Human Development and the Anthropocene (PDF). United Nations Development Programme. 15 December 2020. pp. 343–346. ISBN 978-92-1-126442-5. Retrieved 15 December 2020.
Human Development Report 2020 The Next Frontier: Human Development and the Anthropocene (PDF). United Nations Development Programme. 15 December 2020. pp. 343–346. ISBN 978-92-1-126442-5. Retrieved 15 December 2020.
Human Development Reports. Composite indices — HDI and beyond. United Nations Development Programme. Retrieved: December 22, 2020.
Human Development Report 2020 The Next Frontier: Human Development and the Anthropocene (PDF). United Nations Development Programme. 15 December 2020. pp. 351–355. ISBN 978-92-1-126442-5. Retrieved 17 December 2020.
"Inequality-adjusted HDI (IHDI)". hdr.undp.org. UNDP. Retrieved 15 December 2020.
"Human Development Report 2020 – "Human Development Indices and Indicators"". HDRO (Human Development Report Office).
Hastings, David A. (2009). "Filling Gaps in the Human Development Index". United Nations Economic and Social Commission for Asia and the Pacific, Working Paper WP/09/02. Archived from the original on 30 April 2011. Retrieved 1 December 2009.
Hastings, David A. (2011). "A "Classic" Human Development Index with 232 Countries". HumanSecurityIndex.org. Archived from the original on 3 May 2011. Retrieved 9 March 2011. Information Note linked to data
Wolff, Hendrik; Chong, Howard; Auffhammer, Maximilian (2011). "Classification, Detection and Consequences of Data Error: Evidence from the Human Development Index". Economic Journal. 121 (553): 843–870. doi:10.1111/j.1468-0297.2010.02408.x. hdl:1813/71597. S2CID 18069132.
"UNDP Human Development Report Office's comments". The Economist. January 2011. Archived from the original on 11 February 2011. Retrieved 12 January 2011.
"The Economist (pages 60–61 in the issue of Jan 8, 2011)". 6 January 2011. Archived from the original on 13 January 2011. Retrieved 12 January 2011.

    Monni, Salvatore; Spaventa, Alessandro (2013). "Beyond Gdp and HDI: Shifting the focus from Paradigms to Politics". Development. 56 (2): 227–231. doi:10.1057/dev.2013.30. S2CID 84722678.

External links
	Wikimedia Commons has media related to Human Development Index.

    Human Development Index
    Human Development Tools and Rankings

    vte

Economic classification of countries

    vte

Lists of countries by population statistics

    vte

Lists of countries by quality of life rankings

    vte

Deprivation and poverty indicators
Authority control Edit this at Wikidata	

    GND: 4819478-5 MA: 2779735493

Categories:

    Human Development IndexDevelopment economicsEnvironmental economicsInternational rankingsScience and technology in IndiaScience and technology in PakistanAmerican inventionsBritish inventionsIndian inventionsPakistani inventions1990 establishments

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Alemannisch
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    اردو
    中文

Edit links

    This page was last edited on 16 May 2021, at 09:17 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki





!! http://www.kosmosjournal.org/article/ecosophy-natures-guide-to-a-better-world/


! https://interactioninstitute.org/the-butterfly-story/

!! 
!! Interaction Institute for Social Change



https://en.wikipedia.org/wiki/Imaginal_disc

    About
    People
    Services
    Results
    Trainings
    Blog
    Donate

The Butterfly Story
October 17, 2012
by Curtis Ogden
Leave a comment
butterfly story

|Image from NASA Goddard Space Flight Center|http://www.flickr.com/photos/gsfc/3903384725|

At the closing of last week’s Vermont Farm to Plate Network Gathering, my colleague and friend, Beth Tener of New Directions Collaborative, shared the following beautiful story and metaphor from the evolutionary biologist Elisabet Sahtouris.  In it is the invitation that we both feel net work offers – to not simply engage in new superficial ways of working, but to let it take hold of us in shaping a new “genome” for human awareness of and interaction with living systems . . .

A caterpillar can eat up to three hundred times its own weight in a day, devastating many plants in the process, continuing to eat until it’s so bloated that it hangs itself up and goes to sleep, its skin hardening into a chrysalis. Then, within the chrysalis, within the body of the dormant caterpillar, a new and very different kind of creature, the butterfly, starts to form. This confused biologists for a long time. How could a different genome plan exist within the caterpillar to form a different creature? They knew that metamorphosis occurs in a number of insect species, but it was not known until quite recently that nature did a lot of mixing and matching of very different genome/protein configurations in early evolutionary times. Cells with the butterfly genome were held as disclike aggregates of stem cells that biologists call ‘imaginal cells’, hidden away inside  the caterpillar’ all its life, remaining undeveloped until the crisis of overeating, fatigue and breakdown allows them to develop, gradually replacing the caterpillar with a butterfly!

! Such metamorphosis makes a good metaphor for the great changes globalisation, in the sense of world transformation, is bringing about., as Norie Huddle first used it in her beautiful book Butterfly. Our bloated old system is rapidly becoming defunct while the vision of a new and very different society, long  held by many ‘imaginal cell’  humans who dreamt of a better world, is now  emerging like a butterfly, representing our solutions to the crises of predation, overconsumption and breakdown in a new way of living lightly on Earth, and of seeing  our human society not in the metaphors and models of mechanism as well-oiled social machinery, but in those of evolving, self-organizing and intelligent living organism.

If you want a butterfly world, don’t step on the caterpillar, but join forces with other imaginal cells to build a better future for all!
You might also like...

    Reclaim the Impossible
    Today I’ll once again have to turn to Kevin Kelly, our contemporary sage of the technium.  His recent blog post “Why the Impossible Happens More Often” is a must read and it is extensively quoted below. ...
    Reinventing Our Collective Selves
    “Re-examine all that you have been told . . . dismiss that which insults your soul.” – Walt Whitman Developmental theory is the source of some good healthy discussion within the Interaction Institute for Social Change....
    Letting Go for Life, Liveliness and Possibility, Part 2: Steps and Supports
    “For a seed to achieve its greatest expression, it must come completely undone. The shell cracks, its insides come out, and everything changes. To someone who doesn’t understand growth, it would look like complete destruction.” –Cynthia...
    Competition for Co-Evolution
    I’ve been sitting with a story I just heard relayed by Dr. Elisabet Sahtouris, systems and evolutionary biologist. (If you are interested in a great and uplifting podcast, check out the full interview, entitled “From Caterpillars...

No Comments

    Gibran says:	
    October 18, 2012 at 12:02 pm	

    Inspired. Great resonance here. I can feel the vibrations of the imaginal cells within my own being. Thanks!
    Reply	
    Cynthia Silva Parker says:	
    October 19, 2012 at 7:49 am	

    Reminds me of the quote “The future is already here. It’s just not evenly distributed yet.”
    Reply	

! Imaginal disc

!! https://en.wikipedia.org/wiki/Imaginal_disc

From Wikipedia, the free encyclopedia

Imaginal discImaginal Disc.png
Destination of the imaginal disc in the leg of an insect.

An imaginal disc is one of the parts of a holometabolous insect larva that will become a portion of the outside of the adult insect during the pupal transformation.[1] Contained within the body of the larva, there are pairs of discs that will form, for instance, the wings or legs or antennae or other structures in the adult. The role of the imaginal disc in insect development was first elucidated by Jan Swammerdam.[2]

During the pupal stage, many larval structures are broken down, and adult structures, including the discs, undergo rapid development. Each disc everts and elongates, with the central portion of the disc becoming the distal part of whichever appendage it is forming: the wing, leg, antenna, etc. During the larval stage, the cells in the growing disc appear undifferentiated, but their developmental fate in the adult is already determined.[3]

The experiment that demonstrates this developmental commitment is to take an imaginal disc from a third instar larva, about to undergo pupation, and subdivide it and culture it in the body of a younger larva. Discs can be continuously cultured this way for many larval generations. When such a cultured disc is eventually implanted in the body of a larva that is allowed to pupate, the disc will develop into the structure it was originally determined to become. That is, an antenna disc can be cultured this way and will, almost always, become an antenna (out of place, of course) when final development is triggered by pupation.[4]

The study of imaginal discs in the fruit fly Drosophila melanogaster led to the discovery of homeotic mutations such as antennapedia, where the developmental fate of a disc could sometimes change. It is of interest to entomologists that the kinds of developmental switches that occur are very specific (leg to antenna, for instance). Study of this phenomenon led to the discovery of the homeobox genes, and started a revolution in the understanding of development in multi-celled animals.[5]
Contents

    1 Imaginal cells
    2 See also
    3 References
    4 External links

Imaginal cells
Dissected Drosophila imaginal discs.
Three imaginal discs that will form legs, taken from Drosophila melanogaster 3rd instar larva. The discs are stained with a hedgehog -protein specific staining, showing the protein's localization.

Imaginal cells are tissue-specific progenitors allocated in embryogenesis that remain quiescent during embryonic and larval life. During Drosophila metamorphosis, most larval cells die. Pupal and adult tissues form from imaginal cells. Clonal analysis and fate mapping of single, identified cells show that tracheal system remodeling at metamorphosis involves a classical imaginal cell population and a population of differentiated, functional larval tracheal cells that reenter the cell cycle and regain developmental potency. In late larvae, both populations are activated and proliferate, spread over and replace old branches, and diversify into various stalk and coiled tracheolar cells under control of fibroblast growth factor signaling. Thus, Drosophila pupal/adult tissue progenitors can arise both by early allocation of multipotent cells and late return of differentiated cells to a multipotent state, even within a single tissue.[6]
See also

    Imago

References

Beira, Jorge V.; Paro, Renato (7 May 2016). "The legacy of Drosophila imaginal discs, introduction". Chromosoma. 125 (4): 573–92. doi:10.1007/s00412-016-0595-4. PMC 5023726. PMID 27153833.
"Forty-Eighth Annual Report of the entomological society of Ontario". archive.org. Ontario Department of Agriculture. 1917. Retrieved 7 August 2017.
Beira, Jorge V.; Paro, Renato (7 May 2016). "The legacy of Drosophila imaginal discs, The development of imaginal discs and their embryonic origin". Chromosoma. 125 (4): 573–92. doi:10.1007/s00412-016-0595-4. PMC 5023726. PMID 27153833.
Sivasubramanian, P. (14 July 1977). "Evagination of imaginal discs in the fleshfly Sarcophaga crassipalpis: Hormonal control in vivo". Wilhelm Roux's Archives of Developmental Biology. 183 (2): 101–106. doi:10.1007/BF00848780. PMID 28304898.
Lappence, Terry RJ; Grier, David G.; Thompson, Alexander; Halliday, Henry L. (2006). "HOX GENES: Seductive Science, Mysterious Mechanisms, Introduction". Ulster Med J. 75 (1): 23–31. PMC 1891803. PMID 16457401.

    Weaver M, Krasnow MA (September 2008). "Dual origin of tissue-specific progenitor cells in Drosophila tracheal remodeling". Science. 321 (5895): 1496–9. doi:10.1126/science.1158712. PMC 3999966. PMID 18669822.

External links

    Web site for the book Imaginal Discs: The Genetic and Cellular Logic of Pattern Formation by Lewis I. Held, Jr.

Categories:

    Insect anatomyLarvae

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Deutsch
    Español
    Français
    日本語
    Русский
    Suomi

Edit links

    This page was last edited on 9 October 2019, at 22:56 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


! https://www.inao.gouv.fr/eng/ main

! Institut national de l'origine et de la qualité
! 
! https://www.inao.gouv.fr/Institut-national-de-l-origine-et-de-la-qualite
! 
! https://www.inao.gouv.fr/eng/The-National-Institute-of-origin-and-quality-Institut-national-de-l-origine-et-de-la-qualite-INAO ENGLISH




    Go to menu
    Go to search
    Go to content

    EN FR 

Logo de l'INAO

    The institute
        Missions
            Instruction on application for claims for recognition as official signs
            Protection of signs and names
            Supervision of controls of the official signs
            Demarcation of production areas and protection of soils
            International Cooperation
            Information on official signs system
        Organisation
        Governance
        Financement
        Historique
        L'INAO sur le territoire
    The signs of quality and origin
        PDO - AOC
        Protected Geographical Indications
        Traditional Speciality Guaranteed
        Agriculture Biologique
        Label Rouge (Red Label)
    Professional area and tools
        Entrer dans une démarche sous SIQO
        Produire sous SIQO : droits et obligations
        Les procédures d'instruction pas à pas
            AOP/AOC - IGP - IG
            Label rouge
            STG
        Les organismes de défense et de gestion
        Suivi des démarches
            Procédures nationales d'opposition en cours
            Projets d'aires géographiques ou parcellaires
            Procédures europénnes d'opposition
            Avis des instances
        Contrôles des SIQO
            Dispositions de contrôle communes
            Les laboratoires d'analyse
            Les organismes de contrôle
        Accompagnement et outils
            Demandes d’autorisations de plantation : les démarches à suivre
            Demandes de dérogation en Agriculture Biologique
            Boîte à outils
            Guides pratiques
        Search a product
    Training
        Formations sur mesure
        Inscriptions
    Official texts
        Procédures nationales d'opposition en cours
        Décisions de la direction
        Dispositions de contrôle communes
        Textes JO
        Textes consolidés
        Directives
        Orientations du Conseil des Agréments et Contrôles
        Circulaires
        Search a product
    Publications
        Outils de communication
        Données et cartes
            Informations économiques
            Informations géographiques
        Rapports d'activité

    Print
    Save
    Facebook
    Twitter
    Recommend page

    Home The National Institute of origin and quality - Institut national de l'origine et de la qualité (INAO) 

L'institut

    Missions
        Instruction on application for claims for recognition as official signs
        Protection of signs and names
        Supervision of controls of the official signs
        Demarcation of production areas and protection of soils
        International Cooperation
        Information on official signs system
    Organisation
    Governance
    Financement
    Historique
    L'INAO sur le territoire

The National Institute of origin and quality - Institut national de l'origine et de la qualité (INAO)

With its expertise forged over nearly 80 years, INAO ensures the recognition and protection of official signs identifying the quality and origin of agricultural, food and forestry.

The Institut national de l'origine et de la qualité (INAO) is a public administrative institution with legal personality, under the Ministry of agriculture, food and forestry.

INAO is responsible for the implementation of French policy on official signs of identification of the origin and quality of agricultural and food products:  appellation d'origine contrôlée (AOC), protected designation of origin (PDO), protected geographical indication (PGI), traditional specialty guaranteed (TSG), label rouge (LR) and organic farming (agriculture biologique (AB).

The French policy of quality of agricultural and food products implemented by the INAO is based on close collaboration between professionals grouped in defence and management organisations (organismes de défense et de gestion (ODG), the accredited inspection bodies, State services and the Institute.

All French regions are affected by these signs. In 2013, a farm out of four is listed in these steps.

Thus, INAO covers more than 1,000 products, among which are over 350 wines AOC / PDO, over 70 wines - PGI, 52 drinks in AOC or IG, nearly one hundred AOC /PDO food and more than a hundred PGI food products. It also follows more than 410 products specifications Label Rouge. By 30 June 2013, there were 25,000 farmers involved in organic farming.

     Go to top Suivre l'INAO sur Facebook  

Information

    Site map
    Press area
    Legal notice
    Contactez-nous

Sections

    Home
    The institute
    The signs of quality and origin
    Professional area and tools
    Training
    Official texts
    Publications

Links

    Press area





    Aller directement au menu

    Aller directement à la recherche
    Aller directement au contenu principal

    FR EN 

Logo de l'INAO

    L'institut
        Missions
            Instruction des demandes de reconnaissance sous signes officiels
            Protection des signes et des dénominations
            Supervision des contrôles des signes officiels
            Délimitation des zones de production et protection des terroirs
            Coopération internationale
            Information sur le dispositif des signes officiels
        Organisation
        Fonctionnement
        Financement
        Historique
        L'INAO sur le territoire
    Les signes de qualité et d'origine
        Appellation d'origine protégée/contrôlée (AOP/AOC)
        Indication géographique protégée (IGP)
        Spécialité traditionnelle garantie (STG)
        Agriculture Biologique
        Label Rouge
    Espace pro et outils
        Entrer dans une démarche sous SIQO
        Produire sous SIQO : droits et obligations
        Les procédures d'instruction pas à pas
            AOP/AOC - IGP - IG
            Label rouge
            STG
        Les organismes de défense et de gestion
        Suivi des démarches
            Procédures nationales d'opposition en cours
            Projets d'aires géographiques ou parcellaires
            Procédures europénnes d'opposition
            Avis des instances
        Contrôles des SIQO
            Dispositions de contrôle communes
            Les laboratoires d'analyse
            Les organismes de contrôle
        Accompagnement et outils
            Demandes d’autorisations de plantation : les démarches à suivre
            Demandes de dérogation en Agriculture Biologique
            Boîte à outils
            Guides pratiques
        Rechercher un produit
    Formations
        Formations sur mesure
        Inscriptions
    Textes officiels
        Procédures nationales d'opposition en cours
        Décisions de la direction
        Dispositions de contrôle communes
        Textes JO
        Textes consolidés
        Directives
        Orientations du Conseil des Agréments et Contrôles
        Circulaires
        Rechercher un produit
    Publications
        Outils de communication
        Données et cartes
            Informations économiques
            Informations géographiques
        Rapports d'activité

    Imprimer
    Enregistrer
    Facebook
    Twitter
    Partager la page par e-mail

    Accueil L'Institut national de l'origine et de la qualité 

L'institut

    Missions
        Instruction des demandes de reconnaissance sous signes officiels
        Protection des signes et des dénominations
        Supervision des contrôles des signes officiels
        Délimitation des zones de production et protection des terroirs
        Coopération internationale
        Information sur le dispositif des signes officiels
    Organisation
    Fonctionnement
    Financement
    Historique
    L'INAO sur le territoire

Institut national de l'origine et de la qualité

Fort de son expertise forgée depuis plus de 80 ans, l'INAO assure la reconnaissance et la protection des signes officiels d'identification de la qualité et de l'origine (SIQO) des produits agricoles, agroalimentaires et forestiers.

L'Institut national de l'origine et de la qualité (INAO) est un établissement public administratif, doté de la personnalité civile, sous tutelle du ministère de l'Agriculture et de l'Alimentation.

L'INAO est chargé de la mise en œuvre de la politique française relative aux signes officiels d'identification de la qualité et de l'origine des produits agricoles et agroalimentaires : Appellation d’origine contrôlée (AOC), Appellation d'origine protégée (AOP), Indication géographique protégée (IGP), Spécialité traditionnelle garantie (STG), Label rouge (LR) et agriculture biologique (AB).

La politique française de qualité des produits agricoles et agroalimentaires mise en œuvre par l’INAO repose sur une étroite collaboration entre les professionnels regroupés au sein d’organismes de défense et de gestion (ODG), les organismes de contrôles agréés, les services de l’État et l’Institut.

Toutes les régions françaises sont concernées par ces signes. Selon la dernière enquête sur la structure des exploitations, environ 10 % des exploitations agricoles (hors viticoles et biologiques) en France disposent d’au moins une production sous IGP, Label rouge ou AOC/AOP.

En 2018, l’INAO encadrait plus de 1 100 produits, parmi lesquels on dénombre 363 vins  AOP/AOC, 74 vins IGP, 51 boissons spiritueuses, 100 AOP agroalimentaires et 142 produits agroalimentaires sous IGP. Il suit également plus de 400 cahiers des charges Label Rouge. Pour le secteur de l'agriculture biologique, on comptait en 2018 en France  près de 62 000 opérateurs (producteurs, transformateurs, distributeurs et importateurs) engagés.

     Haut de page Suivre l'INAO sur Facebook  

Informations utiles

    Plan du site
    Espace presse
    Mentions légales
    Contactez-nous

Rubriques

    Accueil
    L'institut
    Les signes de qualité et d'origine
    Espace pro et outils
    Formations
    Textes officiels
    Publications

Liens utiles

    Espace presse

/9j/4AAQSkZJRgABAQEASABIAAD/4QDARXhpZgAATU0AKgAAAAgABgEaAAUAAAABAAAAVgEbAAUAAAABAAAAXgEoAAMAAAABAAIAAAExAAIAAAARAAAAZgEyAAIAAAAUAAAAeIdpAAQAAAABAAAAjAAAAAAAAABIAAAAAQAAAEgAAAABcGFpbnQubmV0IDQuMi4xMgAAMjAxNTowNTowOSAyMzo1Mjo1OAAAA6ABAAMAAAAB//8AAKACAAQAAAABAAAEEKADAAQAAAABAAAA5gAAAAAAAP/hBldodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+DQogIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+DQogICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE1LTA1LTA5VDIzOjQ5OjI0KzAyOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxNS0wNS0wOVQyMzo1Mjo1OCswMjowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxNS0wNS0wOVQyMzo1Mjo1OCswMjowMCIgZGM6Zm9ybWF0PSJpbWFnZS9qcGVnIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUxOUUzRUMxOTVGNkU0MTE5NTlDRTgyOTIwQkM4MDk5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUwOUUzRUMxOTVGNkU0MTE5NTlDRTgyOTIwQkM4MDk5IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NTA5RTNFQzE5NUY2RTQxMTk1OUNFODI5MjBCQzgwOTkiPg0KICAgICAgPHhtcE1NOkhpc3Rvcnk+DQogICAgICAgIDxyZGY6U2VxPg0KICAgICAgICAgIDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjUwOUUzRUMxOTVGNkU0MTE5NTlDRTgyOTIwQkM4MDk5IiBzdEV2dDp3aGVuPSIyMDE1LTA1LTA5VDIzOjQ5OjI0KzAyOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgLz4NCiAgICAgICAgICA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGltYWdlL3BuZyB0byBpbWFnZS9qcGVnIiAvPg0KICAgICAgICAgIDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo1MTlFM0VDMTk1RjZFNDExOTU5Q0U4MjkyMEJDODA5OSIgc3RFdnQ6d2hlbj0iMjAxNS0wNS0wOVQyMzo1Mjo1OCswMjowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iIC8+DQogICAgICAgIDwvcmRmOlNlcT4NCiAgICAgIDwveG1wTU06SGlzdG9yeT4NCiAgICA8L3JkZjpEZXNjcmlwdGlvbj4NCiAgPC9yZGY6UkRGPg0KPC94OnhtcG1ldGE+DQo8P3hwYWNrZXQgZW5kPSJyIj8+/9sAQwABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB/9sAQwEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB/8AAEQgA5gQQAwEhAAIRAQMRAf/EAB4AAQABBAMBAQAAAAAAAAAAAAAIBQYHCQMECgIB/8QAbBAAAAUDAgMDBwQMBwoJCQQLAQMEBQYAAgcIERQVIRITMQkWJEFhoeEiIyVRFzIzNFNicYGRotHwJjVEVLGy4jhCQ1JXZJfB1fEKGCc2RVVyc4Q3RmNldHa0tbcZd4KHSFh4g5KTlLPS1/P/xAAeAQEAAAcBAQEAAAAAAAAAAAAAAwQFBgcICQIBCv/EAGgRAAECBQICBQYHCgYOBgQPAAQBBQACAwYRFCEHMRITFUFRCCRhcYGhFiI0VJHh8CMlMjNDRGJkscEJNUJ0tNEXNjdFUlNXdXaElKS18VVllZbE1RgmcrYnRkdzgoWGkpOipbLU1uX/2gAMAwEAAhEDEQA/APfxSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIUpCFKQhSkIU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


! Industrial ecology
!! 
!! https://en.wikipedia.org/wiki/Industrial_ecology

From Wikipedia, the free encyclopedia


Industrial ecology (IE) is the study of material and energy flows through industrial systems. The global industrial economy can be modelled as a network of industrial processes that extract resources from the Earth and transform those resources into commodities which can be bought and sold to meet the needs of humanity. Industrial ecology seeks to quantify the material flows and document the industrial processes that make modern society function. Industrial ecologists are often concerned with the impacts that industrial activities have on the environment, with use of the planet's supply of natural resources, and with problems of waste disposal. Industrial ecology is a young but growing multidisciplinary field of research which combines aspects of engineering, economics, sociology, toxicology and the natural sciences.

Industrial ecology has been defined as a "systems-based, multidisciplinary discourse that seeks to understand emergent behaviour of complex integrated human/natural systems".[1] The field approaches issues of sustainability by examining problems from multiple perspectives, usually involving aspects of sociology, the environment, economy and technology. The name comes from the idea that the analogy of natural systems should be used as an aid in understanding how to design sustainable industrial systems.[2]
Contents

    1 Overview
    2 History
    3 Principles
    4 Examples
    5 Tools
    6 Future directions
    7 Other examples
    8 See also
    9 References
    10 Further reading
    11 External links

Overview
Example of Industrial Symbiosis. Waste steam from a waste incinerator (right) is piped to an ethanol plant (left) where it is used as in input to their production process.

Industrial ecology is concerned with the shifting of industrial process from linear (open loop) systems, in which resource and capital investments move through the system to become waste, to a closed loop system where wastes can become inputs for new processes.

Much of the research focuses on the following areas:[3]

    material and energy flow studies ("industrial metabolism")
    dematerialization and decarbonization
    technological change and the environment
    life-cycle planning, design and assessment
    design for the environment ("eco-design")
    extended producer responsibility ("product stewardship")
    eco-industrial parks ("industrial symbiosis")
    product-oriented environmental policy
    eco-efficiency

Industrial ecology seeks to understand the way in which industrial systems (for example a factory, an ecoregion, or national or global economy) interact with the biosphere. Natural ecosystems provide a metaphor for understanding how different parts of industrial systems interact with one another, in an "ecosystem" based on resources and infrastructural capital rather than on natural capital. It seeks to exploit the idea that natural systems do not have waste in them to inspire sustainable design.

Along with more general energy conservation and material conservation goals, and redefining commodity markets and product stewardship relations strictly as a service economy, industrial ecology is one of the four objectives of Natural Capitalism. This strategy discourages forms of amoral purchasing arising from ignorance of what goes on at a distance and implies a political economy that values natural capital highly and relies on more instructional capital to design and maintain each unique industrial ecology.
History
View of Kalundborg Eco-industrial Park
Main article: History of industrial ecology

Industrial ecology was popularized in 1989 in a Scientific American article by Robert Frosch and Nicholas E. Gallopoulos.[citation needed] Frosch and Gallopoulos' vision was "why would not our industrial system behave like an ecosystem, where the wastes of a species may be resource to another species? Why would not the outputs of an industry be the inputs of another, thus reducing use of raw materials, pollution, and saving on waste treatment?"[2] A notable example resides in a Danish industrial park in the city of Kalundborg. Here several linkages of byproducts and waste heat can be found between numerous entities such as a large power plant, an oil refinery, a pharmaceutical plant, a plasterboard factory, an enzyme manufacturer, a waste company and the city itself.[4] Another example is the Rantasalmi EIP in Rantasalmi, Finland. While this country has had previous organically formed EIP's, the park at Rantasalmi is Finland's first planned EIP.

The scientific field Industrial Ecology has grown quickly in recent years. The Journal of Industrial Ecology (since 1997), the International Society for Industrial Ecology (since 2001), and the journal Progress in Industrial Ecology (since 2004) give Industrial Ecology a strong and dynamic position in the international scientific community. Industrial Ecology principles are also emerging in various policy realms such as the concept of the Circular Economy that is being promoted in China. Although the definition of the Circular Economy has yet to be formalized, generally the focus is on strategies such as creating a circular flow of materials, and cascading energy flows. An example of this would be using waste heat from one process to run another process that requires a lower temperature. The hope is that strategy such as this will create a more efficient economy with fewer pollutants and other unwanted by-products.[5]
Principles

One of the central principles of Industrial Ecology is the view that societal and technological systems are bounded within the biosphere, and do not exist outside it. Ecology is used as a metaphor due to the observation that natural systems reuse materials and have a largely closed loop cycling of nutrients. Industrial Ecology approaches problems with the hypothesis that by using similar principles as natural systems, industrial systems can be improved to reduce their impact on the natural environment as well. The table shows the general metaphor.
Biosphere 	Technosphere

    Environment
    Organism
    Natural Product
    Natural Selection
    Ecosystem
    Ecological Niche
    Anabolism / Catabolism
    Mutation and Selection
    Succession
    Adaptation
    Food Web

	

    Market
    Company
    Industrial Product
    Competition
    Eco-Industrial Park
    Market Niche
    Manufacturing / Waste Management
    Design for Environment
    Economic Growth
    Innovation
    Product Life Cycle

IE examines societal issues and their relationship with both technical systems and the environment. Through this holistic view , IE recognizes that solving problems must involve understanding the connections that exist between these systems, various aspects cannot be viewed in isolation. Often changes in one part of the overall system can propagate and cause changes in another part. Thus, you can only understand a problem if you look at its parts in relation to the whole. Based on this framework, IE looks at environmental issues with a systems thinking approach. A good IE example with these societal impacts can be found at the Blue Lagoon in Iceland. The Lagoon uses super-heated water from a local geothermal power plant to fill mineral-rich basins that have become recreational healing centers. In this sense the industrial process of energy production uses its wastewater to provide a crucial resource for the dependent recreational industry.

Take a city for instance. A city can be divided into commercial areas, residential areas, offices, services, infrastructures, and so forth. These are all sub-systems of the 'big city' system. Problems can emerge in one sub-system, but the solution has to be global. Let's say the price of housing is rising dramatically because there is too high a demand for housing. One solution would be to build new houses, but this will lead to more people living in the city, leading to the need for more infrastructure like roads, schools, more supermarkets, etc. This system is a simplified interpretation of reality whose behaviors can be 'predicted'.

In many cases, the systems IE deals with are complex systems. Complexity makes it difficult to understand the behavior of the system and may lead to rebound effects. Due to unforeseen behavioral change of users or consumers, a measure taken to improve environmental performance does not lead to any improvement or may even worsen the situation.

Moreover, life cycle thinking is also a very important principle in industrial ecology. It implies that all environmental impacts caused by a product, system, or project during its life cycle are taken into account. In this context life cycle includes

    Raw material extraction
    Material processing
    Manufacture
    Use
    Maintenance
    Disposal

The transport necessary between these stages is also taken into account as well as, if relevant, extra stages such as reuse, remanufacture, and recycle. Adopting a life cycle approach is essential to avoid shifting environmental impacts from one life cycle stage to another. This is commonly referred to as problem shifting. For instance, during the re-design of a product, one can choose to reduce its weight, thereby decreasing use of resources. It is possible that the lighter materials used in the new product will be more difficult to dispose of. The environmental impacts of the product gained during the extraction phase are shifted to the disposal phase. Overall environmental improvements are thus null.

A final important principle of IE is its integrated approach or multidisciplinarity. IE takes into account three different disciplines: social sciences (including economics), technical sciences and environmental sciences. The challenge is to merge them into a single approach.
Examples

The Kalundborg industrial park is located in Denmark. This industrial park is special because companies reuse each other's waste (which then becomes by-products). For example, the Energy E2 Asnæs Power Station produces gypsum as a by-product of the electricity generation process; this gypsum becomes a resource for the BPB Gyproc A/S which produces plasterboards.[4] This is one example of a system inspired by the biosphere-technosphere metaphor: in ecosystems, the waste from one organism is used as inputs to other organisms; in industrial systems, waste from a company is used as a resource by others.

Apart from the direct benefit of incorporating waste into the loop, the use of an eco-industrial park can be a means of making renewable energy generating plants, like Solar PV, more economical and environmentally friendly. In essence, this assists the growth of the renewable energy industry and the environmental benefits that come with replacing fossil-fuels.[6]

Additional examples of industrial ecology include:

    Substituting the fly ash byproduct of coal burning practices for cement in concrete production[7]
    Using second generation biofuels. An example of this is converting grease or cooking oil to biodiesels to fuel vehicles.[8]
    South Africa's National Cleaner Production Center (NCPC) was created in order to make the region's industries more efficient in terms of materials. Results of the use of sustainable methods will include lowered energy costs and improved waste management. The program assesses existing companies to implement change.[9]

Tools
People 	Planet 	Profit 	Modeling

    Stakeholder analysis
    Strength Weakness Opportunities Threats Analysis (SWOT Analysis)
    Ecolabelling
    ISO 14000
    Environmental management system (EMS)
    Integrated chain management (ICM)
    Technology assessment

	

    Environmental impact assessment (EIA)
    Input-output analysis (IOA)
    Life-cycle assessment (LCA)
    Material flow analysis (MFA)
    Substance flow analysis (SFA)
    MET Matrix

	

    Cost benefit analysis (CBA)
    Full cost accounting (FCA)
    Life cycle costing (LCC)

	

    Stock and flow analysis
    Agent based modeling

Future directions

The ecosystem metaphor popularized by Frosch and Gallopoulos[2] has been a valuable creative tool for helping researchers look for novel solutions to difficult problems. Recently, it has been pointed out that this metaphor is based largely on a model of classical ecology, and that advancements in understanding ecology based on complexity science have been made by researchers such as C. S. Holling, James J. Kay,[10] and further advanced in terms of contemporary ecology by others.[11][12][13][14] For industrial ecology, this may mean a shift from a more mechanistic view of systems, to one where sustainability is viewed as an emergent property of a complex system.[15][16] To explore this further, several researchers are working with agent based modeling techniques .[17][18]

Exergy analysis is performed in the field of industrial ecology to use energy more efficiently.[19] The term exergy was coined by Zoran Rant in 1956, but the concept was developed by J. Willard Gibbs. In recent decades, utilization of exergy has spread outside physics and engineering to the fields of industrial ecology, ecological economics, systems ecology, and energetics.
Other examples

Another great example of industrial ecology both in practice and in potential is the Burnside Cleaner Production Centre in Burnside, Nova Scotia. They play a role in facilitating the 'greening' of over 1200 businesses that are located in Burnside, Eastern Canada's largest industrial park. The creation of waste exchange is a big part of what they work towards, which will promote strong industrial ecology relationships.[20]
See also

    iconBusiness and economics portal iconEcology portal

    Anthropogenic metabolism
    Biomimicry
    Circular economy
    Cleaner production
    Conservation (ethic)
    Dematerialization (economics)
    Ecodesign
    Eco-efficiency
    Eco-industrial park
    Ecological economics
    Ecological modernization
    Energy accounting
    Environmental economics
    Environmental design
    Environmental racism
    Evolutionary economics
    Extended producer responsibility
    Helix of sustainability
    Industrial metabolism
    Industrial symbiosis
    Low-carbon economy
    Life cycle assessment
    Material flow accounting
    Material flow analysis
    Modular construction systems
    Organigraph
    Product stewardship
    Reconciliation ecology
    Social metabolism
    Sustainable design
    Urban metabolism

References

Allenby, Brad (2006). "The ontologies of industrial ecology" (PDF). Progress in Industrial Ecology. 3 (1/2): 28–40. doi:10.1504/PIE.2006.010039.[permanent dead link]
Frosch, R.A.; Gallopoulos, N.E. (1989). "Strategies for Manufacturing". Scientific American. 261 (3): 144–152. Bibcode:1989SciAm.261c.144F. doi:10.1038/scientificamerican0989-144.
"International Society for Industrial Ecology | History". Archived from the original on 10 July 2009. Retrieved 8 January 2009.
"The Kalundborg Centre for Industrial Symbiosis". Retrieved 2007. Check date values in: |access-date= (help)
Yuan, Z.; Bi, J.; Moriguichi, Y. (2008). "The Circular Economy: A New Development Strategy in China". Journal of Industrial Ecology. 10 (1–2): 4–8. doi:10.1162/108819806775545321.
Pearce, J. M. (2008). "Industrial Symbiosis for Very Large Scale Photovoltaic Manufacturing". Renewable Energy. 33 (5): 1101–1108. CiteSeerX 10.1.1.394.8892. doi:10.1016/j.renene.2007.07.002.
Thomas, Michael. "Optimizing the Use of Fly Ash in Concrete." Portland Cement Association
"Used and Waste Oil and Grease for Biodiesel – eXtension". extension.org. Retrieved 7 April 2018.
"NCPC – Cleaner and Reduced Energy".
Kay, J.J. (2002). Kibert, C.; Sendzimir, J.; Guy, B. (eds.). "On Complexity Theory, Exergy and Industrial Ecology: Some Implications for Construction Ecology" (PDF). Construction Ecology: Nature as the Basis for Green Buildings: 72–107. Archived from the original (PDF) on 6 January 2006.
Levine, S. H. (2003). "Comparing Products and Production in Ecological and Industrial Systems". Journal of Industrial Ecology. 7 (2): 33–42. doi:10.1162/108819803322564334.
Nielsen, Søren Nors (2007). "What has modern ecosystem theory to offer to cleaner production, industrial ecology and society? The views of an ecologist". Journal of Cleaner Production. 15 (17): 1639–1653. doi:10.1016/j.jclepro.2006.08.008.
Ashton, W. S. (2009). "The Structure, Function, and Evolution of a Regional Industrial Ecosystem". Journal of Industrial Ecology. 13 (2): 228. doi:10.1111/j.1530-9290.2009.00111.x.
Jensen, P. D. (2011). "Reinterpreting Industrial Ecology". Journal of Industrial Ecology. 15 (5): 680–692. doi:10.1111/j.1530-9290.2011.00377.x.
Ehrenfeld, John (2004). "Can Industrial Ecology be the Science of Sustainability?". Journal of Industrial Ecology. 8 (1–2): 1–3. doi:10.1162/1088198041269364.
Ehrenfeld, John (2007). "Would Industrial Ecology Exist without Sustainability in the Background?". Journal of Industrial Ecology. 11 (1): 73–84. doi:10.1162/jiec.2007.1177.
Axtell, R.L.; Andrews, C.J.; Small, M.J. (2002). "Agent-Based Modeling and Industrial Ecology". Journal of Industrial Ecology. 5 (4): 10–13. doi:10.1162/10881980160084006.
Kraines, S.; Wallace, D. (2006). "Applying Agent-based Simulation in Industrial Ecology". Journal of Industrial Ecology. 10 (1–2): 15–18. doi:10.1162/108819806775545376.
Wall, Göran. "Exergy - a useful concept".

    "Industrial Ecology: From Theory to Practice". newcity.ca. Archived from the original on 22 February 2006. Retrieved 7 April 2018.

Further reading

    The industrial green game: implications for environmental design and management, Deanna J Richards (Ed), National Academy Press, Washington DC, USA, 1997, ISBN 0-309-05294-7
    'Handbook of Input-Output Economics in Industrial Ecology', Sangwon Suh (Ed), Springer, 2009, ISBN 978-1-4020-6154-7
    Boons, Frank (2012). "Freedom Versus Coercion in Industrial Ecology: Mind the Gap!". Econ Journal Watch. 9 (2): 100–111.
    Desrochers, Pierre (2012). "Freedom Versus Coercion in Industrial Ecology: A Reply to Boons". Econ Journal Watch. 9 (2): 78–99.

External links

Articles and books

    Industrial Ecology: An Introduction
    Industrial Ecology
    Industrial Symbiosis Timeline
    Journal of Industrial Ecology (Yale University on behalf of the School of Forestry and Environmental Studies).
    Industrial Ecology research & articles from The Program for the Human Environment, The Rockefeller University

Education

    Industrial Ecology open online course (IEooc)
    Erasmus Mundus Master's Programme in Industrial Ecology
    Industrial ecology programme at the NTNU: Industrial Ecology Programme at NTNU, Trondheim – Norway
    Industrial Ecology Master's Programme at Leiden University & TU Delft (Joint Degree), Leiden/Delft – The Netherlands
    Center for Industrial Ecology at Yale University’s School of Forestry & Environmental Studies, New Haven – CT, USA

Research material

    Inventory of free and open software tools for industrial ecology research

Network

    International Society for Industrial Ecology – ISIE

    vte

Industrial ecology

    vte

Pollution

    vte

Recycling

    vte

Sustainability

    vte

Systems science

    Aegopodium podagraria1 ies.jpgEnvironment portal

Categories:

    Industrial ecologyIndustrial engineeringSystems ecologyEnvironmental economics

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Español
    فارسی
    Français
    Bahasa Indonesia
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 7 April 2021, at 08:10 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Industrial Revolution

!! https://en.wikipedia.org/wiki/Industrial_Revolution

From Wikipedia, the free encyclopedia

A Roberts loom in a weaving shed in 1835. Textiles were the leading industry of the Industrial Revolution, and mechanized factories, powered by a central water wheel or steam engine, were the new workplace.
History of technology
By technological eras
By historical regions
By type of technology
Technology timelines
Article indices

    vte

Part of a series on
Capitalism
Concepts
Economic systems
Economic theories
Origins
Development
People
Related topics
Ideologies

    Capitalismlogo.svg Capitalism portal
    Emblem-money.svg Business portal
    Socrates.png Philosophy portal
    A coloured voting box.svg Politics portal
    Bills and coins.svg Money portal

    vte

The Industrial Revolution was the transition to new manufacturing processes in Europe and the United States, in the period from about 1760 to sometime between 1820 and 1840. This transition included going from hand production methods to machines, new chemical manufacturing and iron production processes, the increasing use of steam power and water power, the development of machine tools and the rise of the mechanized factory system. The Industrial Revolution also led to an unprecedented rise in the rate of population growth.

Textiles were the dominant industry of the Industrial Revolution in terms of employment, value of output and capital invested. The textile industry was also the first to use modern production methods.[1]:40

The Industrial Revolution began in Great Britain, and many of the technological innovations were of British origin.[2][3] By the mid-18th century Britain was the world's leading commercial nation,[4] controlling a global trading empire with colonies in North America and the Caribbean, and with major military and political hegemony on the Indian subcontinent, particularly with the proto-industrialised Mughal Bengal, through the activities of the East India Company.[5][6][7][8] The development of trade and the rise of business were among the major causes of the Industrial Revolution.[1]:15

The Industrial Revolution marks a major turning point in history; almost every aspect of daily life was influenced in some way. In particular, average income and population began to exhibit unprecedented sustained growth. Some economists have said the most important effect of the Industrial Revolution was that the standard of living for the general population in the western world began to increase consistently for the first time in history, although others have said that it did not begin to meaningfully improve until the late 19th and 20th centuries.[9][10][11]

GDP per capita was broadly stable before the Industrial Revolution and the emergence of the modern capitalist economy,[12] while the Industrial Revolution began an era of per-capita economic growth in capitalist economies.[13] Economic historians are in agreement that the onset of the Industrial Revolution is the most important event in the history of humanity since the domestication of animals and plants.[14]

The precise start and end of the Industrial Revolution is still debated among historians, as is the pace of economic and social changes.[15][16][17][18] Eric Hobsbawm held that the Industrial Revolution began in Britain in the 1780s and was not fully felt until the 1830s or 1840s,[15] while T. S. Ashton held that it occurred roughly between 1760 and 1830.[16] Rapid industrialization first began in Britain, starting with mechanized spinning in the 1780s,[19] with high rates of growth in steam power and iron production occurring after 1800. Mechanized textile production spread from Great Britain to continental Europe and the United States in the early 19th century, with important centres of textiles, iron and coal emerging in Belgium and the United States and later textiles in France.[1]

An economic recession occurred from the late 1830s to the early 1840s when the adoption of the Industrial Revolution's early innovations, such as mechanized spinning and weaving, slowed and their markets matured. Innovations developed late in the period, such as the increasing adoption of locomotives, steamboats and steamships, hot blast iron smelting and new technologies, such as the electrical telegraph, widely introduced in the 1840s and 1850s, were not powerful enough to drive high rates of growth. Rapid economic growth began to occur after 1870, springing from a new group of innovations in what has been called the Second Industrial Revolution. These innovations included new steel making processes, mass-production, assembly lines, electrical grid systems, the large-scale manufacture of machine tools and the use of increasingly advanced machinery in steam-powered factories.[1][20][21][22]
Contents

    1 Etymology
    2 Requirements
    3 Important technological developments
        3.1 Textile manufacture
        3.2 Iron industry
        3.3 Steam power
        3.4 Machine tools
        3.5 Chemicals
        3.6 Cement
        3.7 Gas lighting
        3.8 Glass making
        3.9 Paper machine
        3.10 Agriculture
        3.11 Mining
        3.12 Transportation
        3.13 Other developments
    4 Social effects
        4.1 Factory system
        4.2 Standards of living
        4.3 Literacy and industrialization
        4.4 Clothing and consumer goods
        4.5 Population increase
        4.6 Urbanization
        4.7 Effect on women and family life
        4.8 Labour conditions
        4.9 Effect on environment
        4.10 Nations and nationalism
    5 Industrialisation beyond Great Britain
        5.1 Continental Europe
        5.2 Japan
        5.3 United States
    6 Second Industrial Revolution
    7 Causes
        7.1 Causes in Europe
        7.2 Causes in Britain
        7.3 Transfer of knowledge
    8 Criticisms
        8.1 Individualism humanism and Industrial Slavery
        8.2 Primitivism
        8.3 Pollution and Ecological collapse
        8.4 Opposition from Romanticism
    9 See also
        9.1 General
    10 Footnotes
    11 References
        11.1 Further reading
        11.2 Historiography
    12 External links

Etymology

The earliest recorded use of the term "Industrial Revolution" appears to have been in a letter from 6 July 1799 written by French envoy Louis-Guillaume Otto, announcing that France had entered the race to industrialise.[23] In his 1976 book Keywords: A Vocabulary of Culture and Society, Raymond Williams states in the entry for "Industry": "The idea of a new social order based on major industrial change was clear in Southey and Owen, between 1811 and 1818, and was implicit as early as Blake in the early 1790s and Wordsworth at the turn of the [19th] century." The term Industrial Revolution applied to technological change was becoming more common by the late 1830s, as in Jérôme-Adolphe Blanqui's description in 1837 of la révolution industrielle.[24]

Friedrich Engels in The Condition of the Working Class in England in 1844 spoke of "an industrial revolution, a revolution which at the same time changed the whole of civil society". However, although Engels wrote his book in the 1840s, it was not translated into English until the late 1800s, and his expression did not enter everyday language until then. Credit for popularising the term may be given to Arnold Toynbee, whose 1881 lectures gave a detailed account of the term.[25]

Economic historians and authors such as Mendels, Pomeranz and Kridte argue that the proto-industrialization in parts of Europe, Islamic world, Mughal India, and China created the social and economic conditions that led to the Industrial Revolution, thus causing the Great Divergence.[26][27][28]

Some historians, such as John Clapham and Nicholas Crafts, have argued that the economic and social changes occurred gradually, and that the term revolution is a misnomer. This is still a subject of debate among some historians.[29]
Requirements

Six factors facilitated industrialization: high levels of agricultural productivity to provide excess manpower and food; a pool of managerial and entrepreneurial skills; available ports, rivers, canals and roads to cheaply move raw materials and outputs; natural resources such as coal, iron and waterfalls; political stability and a legal system that supported business; and financial capital available to invest. Once industrialization began in Great Britain, new factors can be added: the eagerness British entrepreneurs to export industrial expertise and the willingness to import the process. Britain met the criteria and industrialized starting in the 18th century. Britain exported the process to western Europe (especially Belgium, France and the German states) in the early 19th century. The United States copied the British model in the early 19th century and Japan copied the Western European models in the late 19th century.[30][31]
Important technological developments

The commencement of the Industrial Revolution is closely linked to a small number of innovations,[32] beginning in the second half of the 18th century. By the 1830s the following gains had been made in important technologies:

    Textiles – mechanised cotton spinning powered by steam or water increased the output of a worker by a factor of around 500. The power loom increased the output of a worker by a factor of over 40.[33] The cotton gin increased productivity of removing seed from cotton by a factor of 50.[21] Large gains in productivity also occurred in spinning and weaving of wool and linen, but they were not as great as in cotton.[1]
    Steam power – the efficiency of steam engines increased so that they used between one-fifth and one-tenth as much fuel. The adaptation of stationary steam engines to rotary motion made them suitable for industrial uses.[1]:82 The high pressure engine had a high power to weight ratio, making it suitable for transportation.[22] Steam power underwent a rapid expansion after 1800.
    Iron making – the substitution of coke for charcoal greatly lowered the fuel cost of pig iron and wrought iron production.[1]:89–93 Using coke also allowed larger blast furnaces,[34][35] resulting in economies of scale. The steam engine began being used to pump water and to power blast air in the mid 1750s, enabling a large increase in iron production by overcoming the limitation of water power.[36] The cast iron blowing cylinder was first used in 1760. It was later improved by making it double acting, which allowed higher blast furnace temperatures. The puddling process produced a structural grade iron at a lower cost than the finery forge.[37] The rolling mill was fifteen times faster than hammering wrought iron. Hot blast (1828) greatly increased fuel efficiency in iron production in the following decades.
    Invention of machine tools – The first machine tools were invented. These included the screw cutting lathe, cylinder boring machine and the milling machine. Machine tools made the economical manufacture of precision metal parts possible, although it took several decades to develop effective techniques.[38]

Textile manufacture
Main article: Textile manufacture during the Industrial Revolution
British textile industry statistics
Handloom weaving in 1747, from William Hogarth's Industry and Idleness

In 1750 Britain imported 2.5 million pounds of raw cotton, most of which was spun and woven by cottage industry in Lancashire. The work was done by hand in workers' homes or occasionally in shops of master weavers. In 1787 raw cotton consumption was 22 million pounds, most of which was cleaned, carded and spun on machines.[1]:41–42 The British textile industry used 52 million pounds of cotton in 1800, which increased to 588 million pounds in 1850.[39]

The share of value added by the cotton textile industry in Britain was 2.6% in 1760, 17% in 1801 and 22.4% in 1831. Value added by the British woollen industry was 14.1% in 1801. Cotton factories in Britain numbered approximately 900 in 1797. In 1760 approximately one-third of cotton cloth manufactured in Britain was exported, rising to two-thirds by 1800. In 1781 cotton spun amounted to 5.1 million pounds, which increased to 56 million pounds by 1800. In 1800 less than 0.1% of world cotton cloth was produced on machinery invented in Britain. In 1788 there were 50,000 spindles in Britain, rising to 7 million over the next 30 years.[40]

Wages in Lancashire, a core region for cottage industry and later factory spinning and weaving, were about six times those in India in 1770, when overall productivity in Britain was about three times higher than in India.[40]
Cotton

Parts of India, China, Central America, South America and the Middle-East have a long history of hand manufacturing cotton textiles, which became a major industry sometime after 1000 AD. In tropical and subtropical regions where it was grown, most was grown by small farmers alongside their food crops and was spun and woven in households, largely for domestic consumption. In the 15th century China began to require households to pay part of their taxes in cotton cloth. By the 17th century almost all Chinese wore cotton clothing. Almost everywhere cotton cloth could be used as a medium of exchange. In India a significant amount of cotton textiles were manufactured for distant markets, often produced by professional weavers. Some merchants also owned small weaving workshops. India produced a variety of cotton cloth, some of exceptionally fine quality.[40]

Cotton was a difficult raw material for Europe to obtain before it was grown on colonial plantations in the Americas.[40] The early Spanish explorers found Native Americans growing unknown species of excellent quality cotton: sea island cotton (Gossypium barbadense) and upland green seeded cotton Gossypium hirsutum. Sea island cotton grew in tropical areas and on barrier islands of Georgia and South Carolina, but did poorly inland. Sea island cotton began being exported from Barbados in the 1650s. Upland green seeded cotton grew well on inland areas of the southern U.S., but was not economical because of the difficulty of removing seed, a problem solved by the cotton gin.[21]:157 A strain of cotton seed brought from Mexico to Natchez, Mississippi in 1806 became the parent genetic material for over 90% of world cotton production today; it produced bolls that were three to four times faster to pick.[40]
Trade and textiles
European colonial empires at the start of the Industrial Revolution, imposed upon modern political boundaries.

The Age of Discovery was followed by a period of colonialism beginning around the 16th century. Following the discovery of a trade route to India around southern Africa by the Portuguese, the Dutch established the Verenigde Oostindische Compagnie (abbr. VOC) or Dutch East India Company, the world's first transnational corporation and the first multinational enterprise to issue shares of stock to the public.[a][41] The British later founded the East India Company, along with smaller companies of different nationalities which established trading posts and employed agents to engage in trade throughout the Indian Ocean region and between the Indian Ocean region and North Atlantic Europe.[40]

One of the largest segments of this trade was in cotton textiles, which were purchased in India and sold in Southeast Asia, including the Indonesian archipelago, where spices were purchased for sale to Southeast Asia and Europe. By the mid-1760s cloth was over three-quarters of the East India Company's exports. Indian textiles were in demand in North Atlantic region of Europe where previously only wool and linen were available; however, the amount of cotton goods consumed in Western Europe was minor until the early 19th century.[40]
Pre-mechanized European textile production
A weaver in Nürnberg, c. 1524

By 1600 Flemish refugees began weaving cotton cloth in English towns where cottage spinning and weaving of wool and linen was well established; however, they were left alone by the guilds who did not consider cotton a threat. Earlier European attempts at cotton spinning and weaving were in 12th-century Italy and 15th-century southern Germany, but these industries eventually ended when the supply of cotton was cut off. The Moors in Spain grew, spun and wove cotton beginning around the 10th century.[40]

British cloth could not compete with Indian cloth because India's labour cost was approximately one-fifth to one-sixth that of Britain's.[19] In 1700 and 1721 the British government passed Calico Acts in order to protect the domestic woollen and linen industries from the increasing amounts of cotton fabric imported from India.[1][42]

The demand for heavier fabric was met by a domestic industry based around Lancashire that produced fustian, a cloth with flax warp and cotton weft. Flax was used for the warp because wheel-spun cotton did not have sufficient strength, but the resulting blend was not as soft as 100% cotton and was more difficult to sew.[42]

On the eve of the Industrial Revolution, spinning and weaving were done in households, for domestic consumption and as a cottage industry under the putting-out system. Occasionally the work was done in the workshop of a master weaver. Under the putting-out system, home-based workers produced under contract to merchant sellers, who often supplied the raw materials. In the off season the women, typically farmers' wives, did the spinning and the men did the weaving. Using the spinning wheel, it took anywhere from four to eight spinners to supply one hand loom weaver.[1][42][43]:823
Invention of textile machinery

The flying shuttle, patented in 1733 by John Kay, with a number of subsequent improvements including an important one in 1747, doubled the output of a weaver, worsening the imbalance between spinning and weaving. It became widely used around Lancashire after 1760 when John's son, Robert, invented the drop box, which facilitated changing thread colors.[43]:821–22

Lewis Paul patented the roller spinning frame and the flyer-and-bobbin system for drawing wool to a more even thickness. The technology was developed with the help of John Wyatt of Birmingham. Paul and Wyatt opened a mill in Birmingham which used their new rolling machine powered by a donkey. In 1743 a factory opened in Northampton with 50 spindles on each of five of Paul and Wyatt's machines. This operated until about 1764. A similar mill was built by Daniel Bourn in Leominster, but this burnt down. Both Lewis Paul and Daniel Bourn patented carding machines in 1748. Based on two sets of rollers that travelled at different speeds, it was later used in the first cotton spinning mill. Lewis's invention was later developed and improved by Richard Arkwright in his water frame and Samuel Crompton in his spinning mule.
A model of the spinning jenny in a museum in Wuppertal. Invented by James Hargreaves in 1764, the spinning jenny was one of the innovations that started the revolution.

In 1764 in the village of Stanhill, Lancashire, James Hargreaves invented the spinning jenny, which he patented in 1770. It was the first practical spinning frame with multiple spindles.[44] The jenny worked in a similar manner to the spinning wheel, by first clamping down on the fibres, then by drawing them out, followed by twisting.[45] It was a simple, wooden framed machine that only cost about £6 for a 40-spindle model in 1792,[46] and was used mainly by home spinners. The jenny produced a lightly twisted yarn only suitable for weft, not warp.[43]:825–27

The spinning frame or water frame was developed by Richard Arkwright who, along with two partners, patented it in 1769. The design was partly based on a spinning machine built for Thomas High by clockmaker John Kay, who was hired by Arkwright.[43]:827–30 For each spindle the water frame used a series of four pairs of rollers, each operating at a successively higher rotating speed, to draw out the fibre, which was then twisted by the spindle. The roller spacing was slightly longer than the fibre length.

Too close a spacing caused the fibres to break while too distant a spacing caused uneven thread. The top rollers were leather-covered and loading on the rollers was applied by a weight. The weights kept the twist from backing up before the rollers. The bottom rollers were wood and metal, with fluting along the length. The water frame was able to produce a hard, medium count thread suitable for warp, finally allowing 100% cotton cloth to be made in Britain. A horse powered the first factory to use the spinning frame. Arkwright and his partners used water power at a factory in Cromford, Derbyshire in 1771, giving the invention its name.
The only surviving example of a spinning mule built by the inventor Samuel Crompton. The mule produced high-quality thread with minimal labour. Bolton Museum, Greater Manchester

Samuel Crompton's Spinning Mule was introduced in 1779. Mule implies a hybrid because it was a combination of the spinning jenny and the water frame, in which the spindles were placed on a carriage, which went through an operational sequence during which the rollers stopped while the carriage moved away from the drawing roller to finish drawing out the fibres as the spindles started rotating.[43]:832 Crompton's mule was able to produce finer thread than hand spinning and at a lower cost. Mule spun thread was of suitable strength to be used as warp, and finally allowed Britain to produce highly competitive yarn in large quantities.[43]:832
The interior of Marshall's Temple Works in Leeds, West Yorkshire

Realising that the expiration of the Arkwright patent would greatly increase the supply of spun cotton and led to a shortage of weavers, Edmund Cartwright developed a vertical power loom which he patented in 1785. In 1776 he patented a two-man operated loom which was more conventional.[43]:834 Cartwright built two factories; the first burned down and the second was sabotaged by his workers. Cartwright's loom design had several flaws, the most serious being thread breakage. Samuel Horrocks patented a fairly successful loom in 1813. Horock's loom was improved by Richard Roberts in 1822 and these were produced in large numbers by Roberts, Hill & Co.[47]

The demand for cotton presented an opportunity to planters in the Southern United States, who thought upland cotton would be a profitable crop if a better way could be found to remove the seed. Eli Whitney responded to the challenge by inventing the inexpensive cotton gin. A man using a cotton gin could remove seed from as much upland cotton in one day as would previously, working at the rate of one pound of cotton per day, have taken a woman two months to process.[21][48]

These advances were capitalised on by entrepreneurs, of whom the best known is Richard Arkwright. He is credited with a list of inventions, but these were actually developed by such people as Thomas Highs and John Kay; Arkwright nurtured the inventors, patented the ideas, financed the initiatives, and protected the machines. He created the cotton mill which brought the production processes together in a factory, and he developed the use of power—first horse power and then water power—which made cotton manufacture a mechanised industry. Other inventors increased the efficiency of the individual steps of spinning (carding, twisting and spinning, and rolling) so that the supply of yarn increased greatly. Before long steam power was applied to drive textile machinery. Manchester acquired the nickname Cottonopolis during the early 19th century owing to its sprawl of textile factories.[49]

Although mechanization dramatically decreased the cost of cotton cloth, by the mid-19th century machine-woven cloth still could not equal the quality of hand-woven Indian cloth, in part due to the fineness of thread made possible by the type of cotton used in India, which allowed high thread counts. However, the high productivity of British textile manufacturing allowed coarser grades of British cloth to undersell hand-spun and woven fabric in low-wage India, eventually destroying the industry.[40]
Wool

The earliest European attempts at mechanized spinning were with wool; however, wool spinning proved more difficult to mechanize than cotton. Productivity improvement in wool spinning during the Industrial Revolution was significant but was far less than that of cotton.[1][8]
Silk
Lombe's Mill site today, rebuilt as Derby Silk Mill

Arguably the first highly mechanised factory was John Lombe's water-powered silk mill at Derby, operational by 1721. Lombe learned silk thread manufacturing by taking a job in Italy and acting as an industrial spy; however, because the Italian silk industry guarded its secrets closely, the state of the industry at that time is unknown. Although Lombe's factory was technically successful, the supply of raw silk from Italy was cut off to eliminate competition. In order to promote manufacturing the Crown paid for models of Lombe's machinery which were exhibited in the Tower of London.[50][51]
Iron industry
The reverberatory furnace could produce cast iron using mined coal. The burning coal remained separate from the iron and so did not contaminate the iron with impurities like sulfur and silica. This opened the way to increased iron production.
The Iron Bridge, Shropshire, England, the world's first bridge constructed of iron opened in 1781.[52]
UK iron production statistics

Bar iron was the commodity form of iron used as the raw material for making hardware goods such as nails, wire, hinges, horse shoes, wagon tires, chains, etc., as well as structural shapes. A small amount of bar iron was converted into steel. Cast iron was used for pots, stoves and other items where its brittleness was tolerable. Most cast iron was refined and converted to bar iron, with substantial losses. Bar iron was also made by the bloomery process, which was the predominant iron smelting process until the late 18th century.

In the UK in 1720, there were 20,500 tons of cast iron produced with charcoal and 400 tons with coke. In 1750 charcoal iron production was 24,500 and coke iron was 2,500 tons. In 1788 the production of charcoal cast iron was 14,000 tons while coke iron production was 54,000 tons. In 1806 charcoal cast iron production was 7,800 tons and coke cast iron was 250,000 tons.[36]:125

In 1750 the UK imported 31,200 tons of bar iron and either refined from cast iron or directly produced 18,800 tons of bar iron using charcoal and 100 tons using coke. In 1796 the UK was making 125,000 tons of bar iron with coke and 6,400 tons with charcoal; imports were 38,000 tons and exports were 24,600 tons. In 1806 the UK did not import bar iron but exported 31,500 tons.[36]:125
Iron process innovations

A major change in the iron industries during the Industrial Revolution was the replacement of wood and other bio-fuels with coal. For a given amount of heat, mining coal required much less labour than cutting wood and converting it to charcoal,[53] and coal was much more abundant than wood, supplies of which were becoming scarce before the enormous increase in iron production that took place in the late 18th century.[1][36]:122

By 1750 coke had generally replaced charcoal in the smelting of copper and lead, and was in widespread use in glass production. In the smelting and refining of iron, coal and coke produced inferior iron to that made with charcoal because of the coal's sulfur content. Low sulfur coals were known, but they still contained harmful amounts. Conversion of coal to coke only slightly reduces the sulfur content.[36]:122–25 A minority of coals are coking.

Another factor limiting the iron industry before the Industrial Revolution was the scarcity of water power to power blast bellows. This limitation was overcome by the steam engine.[36]

Use of coal in iron smelting started somewhat before the Industrial Revolution, based on innovations by Sir Clement Clerke and others from 1678, using coal reverberatory furnaces known as cupolas. These were operated by the flames playing on the ore and charcoal or coke mixture, reducing the oxide to metal. This has the advantage that impurities (such as sulphur ash) in the coal do not migrate into the metal. This technology was applied to lead from 1678 and to copper from 1687. It was also applied to iron foundry work in the 1690s, but in this case the reverberatory furnace was known as an air furnace. (The foundry cupola is a different, and later, innovation.)[citation needed]

By 1709 Abraham Darby made progress using coke to fuel his blast furnaces at Coalbrookdale.[54] However, the coke pig iron he made was not suitable for making wrought iron and was used mostly for the production of cast iron goods, such as pots and kettles. He had the advantage over his rivals in that his pots, cast by his patented process, were thinner and cheaper than theirs.

Coke pig iron was hardly used to produce wrought iron until 1755–56, when Darby's son Abraham Darby II built furnaces at Horsehay and Ketley where low sulfur coal was available (and not far from Coalbrookdale). These new furnaces were equipped with water-powered bellows, the water being pumped by Newcomen steam engines. The Newcomen engines were not attached directly to the blowing cylinders because the engines alone could not produce a steady air blast. Abraham Darby III installed similar steam-pumped, water-powered blowing cylinders at the Dale Company when he took control in 1768. The Dale Company used several Newcomen engines to drain its mines and made parts for engines which it sold throughout the country.[36]:123–25

Steam engines made the use of higher-pressure and volume blast practical; however, the leather used in bellows was expensive to replace. In 1757, iron master John Wilkinson patented a hydraulic powered blowing engine for blast furnaces.[55] The blowing cylinder for blast furnaces was introduced in 1760 and the first blowing cylinder made of cast iron is believed to be the one used at Carrington in 1768 that was designed by John Smeaton.[36]:124, 135

Cast iron cylinders for use with a piston were difficult to manufacture; the cylinders had to be free of holes and had to be machined smooth and straight to remove any warping. James Watt had great difficulty trying to have a cylinder made for his first steam engine. In 1774 John Wilkinson, who built a cast iron blowing cylinder for his iron works, invented a precision boring machine for boring cylinders. After Wilkinson bored the first successful cylinder for a Boulton and Watt steam engine in 1776, he was given an exclusive contract for providing cylinders.[21][56] After Watt developed a rotary steam engine in 1782, they were widely applied to blowing, hammering, rolling and slitting.[36]:124

The solutions to the sulfur problem were the addition of sufficient limestone to the furnace to force sulfur into the slag and the use of low sulfur coal. Use of lime or limestone required higher furnace temperatures to form a free-flowing slag. The increased furnace temperature made possible by improved blowing also increased the capacity of blast furnaces and allowed for increased furnace height.[36]:123–25 In addition to lower cost and greater availability, coke had other important advantages over charcoal in that it was harder and made the column of materials (iron ore, fuel, slag) flowing down the blast furnace more porous and did not crush in the much taller furnaces of the late 19th century.[57][58]

As cast iron became cheaper and widely available, it began being a structural material for bridges and buildings. A famous early example was the Iron Bridge built in 1778 with cast iron produced by Abraham Darby III.[52] However, most cast iron was converted to wrought iron.

Europe relied on the bloomery for most of its wrought iron until the large scale production of cast iron. Conversion of cast iron was done in a finery forge, as it long had been. An improved refining process known as potting and stamping was developed, but this was superseded by Henry Cort's puddling process. Cort developed two significant iron manufacturing processes: rolling in 1783 and puddling in 1784.[1]:91 Puddling produced a structural grade iron at a relatively low cost.
Horizontal (lower) and vertical (upper) cross-sections of a single puddling furnace. A. Fireplace grate; B. Firebricks; C. Cross binders; D. Fireplace; E. Work door; F. Hearth; G. Cast iron retaining plates; H. Bridge wall

Puddling was a means of decarburizing molten pig iron by slow oxidation in a reverberatory furnace by manually stirring it with a long rod. The decarburized iron, having a higher melting point than cast iron, was raked into globs by the puddler. When the glob was large enough, the puddler would remove it. Puddling was backbreaking and extremely hot work. Few puddlers lived to be 40.[59] Because puddling was done in a reverberatory furnace, coal or coke could be used as fuel.

The puddling process continued to be used until the late 19th century when iron was being displaced by steel. Because puddling required human skill in sensing the iron globs, it was never successfully mechanised. Rolling was an important part of the puddling process because the grooved rollers expelled most of the molten slag and consolidated the mass of hot wrought iron. Rolling was 15 times faster at this than a trip hammer. A different use of rolling, which was done at lower temperatures than that for expelling slag, was in the production of iron sheets, and later structural shapes such as beams, angles and rails.

The puddling process was improved in 1818 by Baldwyn Rogers, who replaced some of the sand lining on the reverberatory furnace bottom with iron oxide.[60] In 1838 John Hall patented the use of roasted tap cinder (iron silicate) for the furnace bottom, greatly reducing the loss of iron through increased slag caused by a sand lined bottom. The tap cinder also tied up some phosphorus, but this was not understood at the time.[36]:166 Hall's process also used iron scale or rust, which reacted with carbon in the molten iron. Hall's process, called wet puddling, reduced losses of iron with the slag from almost 50% to around 8%.[1]:93

Puddling became widely used after 1800. Up to that time British iron manufacturers had used considerable amounts of iron imported from Sweden and Russia to supplement domestic supplies. Because of the increased British production, imports began to decline in 1785 and by the 1790s Britain eliminated imports and became a net exporter of bar iron.[citation needed]

Hot blast, patented by James Beaumont Neilson in 1828, was the most important development of the 19th century for saving energy in making pig iron. By using preheated combustion air, the amount of fuel to make a unit of pig iron was reduced at first by between one-third using coke or two-thirds using coal;[61] however, the efficiency gains continued as the technology improved.[62] Hot blast also raised the operating temperature of furnaces, increasing their capacity. Using less coal or coke meant introducing fewer impurities into the pig iron. This meant that lower quality coal or anthracite could be used in areas where coking coal was unavailable or too expensive;[63] however, by the end of the 19th century transportation costs fell considerably.

Shortly before the Industrial Revolution an improvement was made in the production of steel, which was an expensive commodity and used only where iron would not do, such as for cutting edge tools and for springs. Benjamin Huntsman developed his crucible steel technique in the 1740s. The raw material for this was blister steel, made by the cementation process.[citation needed]

The supply of cheaper iron and steel aided a number of industries, such as those making nails, hinges, wire and other hardware items. The development of machine tools allowed better working of iron, causing it to be increasingly used in the rapidly growing machinery and engine industries.[64]
Steam power
Main article: Steam power during the Industrial Revolution
A Watt steam engine. James Watt transformed the steam engine from a reciprocating motion that was used for pumping to a rotating motion suited to industrial applications. Watt and others significantly improved the efficiency of the steam engine.

The development of the stationary steam engine was an important element of the Industrial Revolution; however, during the early period of the Industrial Revolution, most industrial power was supplied by water and wind. In Britain by 1800 an estimated 10,000 horsepower was being supplied by steam. By 1815 steam power had grown to 210,000 hp.[65]

The first commercially successful industrial use of steam power was due to Thomas Savery in 1698. He constructed and patented in London a low-lift combined vacuum and pressure water pump, that generated about one horsepower (hp) and was used in numerous water works and in a few mines (hence its "brand name", The Miner's Friend). Savery's pump was economical in small horsepower ranges, but was prone to boiler explosions in larger sizes. Savery pumps continued to be produced until the late 18th century.[citation needed]

The first successful piston steam engine was introduced by Thomas Newcomen before 1712. A number of Newcomen engines were installed in Britain for draining hitherto unworkable deep mines, with the engine on the surface; these were large machines, requiring a significant amount of capital to build, and produced upwards of 5 hp (3.7 kW). They were also used to power municipal water supply pumps. They were extremely inefficient by modern standards, but when located where coal was cheap at pit heads, opened up a great expansion in coal mining by allowing mines to go deeper.[66]

Despite their disadvantages, Newcomen engines were reliable and easy to maintain and continued to be used in the coalfields until the early decades of the 19th century. By 1729, when Newcomen died, his engines had spread (first) to Hungary in 1722, Germany, Austria, and Sweden. A total of 110 are known to have been built by 1733 when the joint patent expired, of which 14 were abroad. In the 1770s the engineer John Smeaton built some very large examples and introduced a number of improvements. A total of 1,454 engines had been built by 1800.[66]
Newcomen's steam-powered atmospheric engine was the first practical piston steam engine. Subsequent steam engines were to power the Industrial Revolution.

A fundamental change in working principles was brought about by Scotsman James Watt. With financial support from his business partner Englishman Matthew Boulton, he had succeeded by 1778 in perfecting his steam engine, which incorporated a series of radical improvements, notably the closing off of the upper part of the cylinder, thereby making the low-pressure steam drive the top of the piston instead of the atmosphere, use of a steam jacket and the celebrated separate steam condenser chamber. The separate condenser did away with the cooling water that had been injected directly into the cylinder, which cooled the cylinder and wasted steam. Likewise, the steam jacket kept steam from condensing in the cylinder, also improving efficiency. These improvements increased engine efficiency so that Boulton and Watt's engines used only 20–25% as much coal per horsepower-hour as Newcomen's. Boulton and Watt opened the Soho Foundry for the manufacture of such engines in 1795.[citation needed]

By 1783 the Watt steam engine had been fully developed into a double-acting rotative type, which meant that it could be used to directly drive the rotary machinery of a factory or mill. Both of Watt's basic engine types were commercially very successful, and by 1800, the firm Boulton & Watt had constructed 496 engines, with 164 driving reciprocating pumps, 24 serving blast furnaces, and 308 powering mill machinery; most of the engines generated from 5 to 10 hp (3.7 to 7.5 kW).

Until about 1800 the most common pattern of steam engine was the beam engine, built as an integral part of a stone or brick engine-house, but soon various patterns of self-contained rotative engines (readily removable, but not on wheels) were developed, such as the table engine. Around the start of the 19th century, at which time the Boulton and Watt patent expired, the Cornish engineer Richard Trevithick and the American Oliver Evans began to construct higher-pressure non-condensing steam engines, exhausting against the atmosphere. High pressure yielded an engine and boiler compact enough to be used on mobile road and rail locomotives and steam boats.[citation needed]

The development of machine tools, such as the engine lathe, planing, milling and shaping machines powered by these engines, enabled all the metal parts of the engines to be easily and accurately cut and in turn made it possible to build larger and more powerful engines.[citation needed]

Small industrial power requirements continued to be provided by animal and human muscle until widespread electrification in the early 20th century. These included crank-powered, treadle-powered and horse-powered workshop and light industrial machinery.[67]
Machine tools
Main article: Machine tool
See also: Interchangeable parts
Maudslay's famous early screw-cutting lathes of circa 1797 and 1800
The Middletown milling machine of c. 1818, associated with Robert Johnson and Simeon North

Pre-industrial machinery was built by various craftsmen—millwrights built water and windmills, carpenters made wooden framing, and smiths and turners made metal parts. Wooden components had the disadvantage of changing dimensions with temperature and humidity, and the various joints tended to rack (work loose) over time. As the Industrial Revolution progressed, machines with metal parts and frames became more common. Other important uses of metal parts were in firearms and threaded fasteners, such as machine screws, bolts and nuts. There was also the need for precision in making parts. Precision would allow better working machinery, interchangeability of parts and standardization of threaded fasteners.

The demand for metal parts led to the development of several machine tools. They have their origins in the tools developed in the 18th century by makers of clocks and watches and scientific instrument makers to enable them to batch-produce small mechanisms.

Before the advent of machine tools, metal was worked manually using the basic hand tools of hammers, files, scrapers, saws and chisels. Consequently, the use of metal machine parts was kept to a minimum. Hand methods of production were very laborious and costly and precision was difficult to achieve.[38][21]

The first large precision machine tool was the cylinder boring machine invented by John Wilkinson in 1774. It was used for boring the large-diameter cylinders on early steam engines. Wilkinson's boring machine differed from earlier cantilevered machines used for boring cannon in that the cutting tool was mounted on a beam that ran through the cylinder being bored and was supported outside on both ends.[21]

The planing machine, the milling machine and the shaping machine were developed in the early decades of the 19th century. Although the milling machine was invented at this time, it was not developed as a serious workshop tool until somewhat later in the 19th century.[38][21]

Henry Maudslay, who trained a school of machine tool makers early in the 19th century, was a mechanic with superior ability who had been employed at the Royal Arsenal, Woolwich. He worked as an apprentice in the Royal Gun Foundry of Jan Verbruggen. In 1774 Jan Verbruggen had installed a horizontal boring machine in Woolwich which was the first industrial size lathe in the UK. Maudslay was hired away by Joseph Bramah for the production of high-security metal locks that required precision craftsmanship. Bramah patented a lathe that had similarities to the slide rest lathe.[21][43]:392–95

Maudslay perfected the slide rest lathe, which could cut machine screws of different thread pitches by using changeable gears between the spindle and the lead screw. Before its invention screws could not be cut to any precision using various earlier lathe designs, some of which copied from a template.[21][43]:392–95 The slide rest lathe was called one of history's most important inventions. Although it was not entirely Maudslay's idea, he was the first person to build a functional lathe using a combination of known innovations of the lead screw, slide rest and change gears.[21]:31, 36

Maudslay left Bramah's employment and set up his own shop. He was engaged to build the machinery for making ships' pulley blocks for the Royal Navy in the Portsmouth Block Mills. These machines were all-metal and were the first machines for mass production and making components with a degree of interchangeability. The lessons Maudslay learned about the need for stability and precision he adapted to the development of machine tools, and in his workshops he trained a generation of men to build on his work, such as Richard Roberts, Joseph Clement and Joseph Whitworth.[21]

James Fox of Derby had a healthy export trade in machine tools for the first third of the century, as did Matthew Murray of Leeds. Roberts was a maker of high-quality machine tools and a pioneer of the use of jigs and gauges for precision workshop measurement.

The effect of machine tools during the Industrial Revolution was not that great because other than firearms, threaded fasteners and a few other industries there were few mass-produced metal parts. The techniques to make mass-produced metal parts made with sufficient precision to be interchangeable is largely attributed to a program of the U.S. Department of War which perfected interchangeable parts for firearms in the early 19th century.[38]

In the half century following the invention of the fundamental machine tools the machine industry became the largest industrial sector of the U.S. economy, by value added.[68]
Chemicals

The large-scale production of chemicals was an important development during the Industrial Revolution. The first of these was the production of sulphuric acid by the lead chamber process invented by the Englishman John Roebuck (James Watt's first partner) in 1746. He was able to greatly increase the scale of the manufacture by replacing the relatively expensive glass vessels formerly used with larger, less expensive chambers made of riveted sheets of lead. Instead of making a small amount each time, he was able to make around 100 pounds (50 kg) in each of the chambers, at least a tenfold increase.

The production of an alkali on a large scale became an important goal as well, and Nicolas Leblanc succeeded in 1791 in introducing a method for the production of sodium carbonate. The Leblanc process was a reaction of sulfuric acid with sodium chloride to give sodium sulfate and hydrochloric acid. The sodium sulfate was heated with limestone (calcium carbonate) and coal to give a mixture of sodium carbonate and calcium sulfide. Adding water separated the soluble sodium carbonate from the calcium sulfide. The process produced a large amount of pollution (the hydrochloric acid was initially vented to the air, and calcium sulfide was a useless waste product). Nonetheless, this synthetic soda ash proved economical compared to that from burning specific plants (barilla) or from kelp, which were the previously dominant sources of soda ash,[69] and also to potash (potassium carbonate) produced from hardwood ashes.

These two chemicals were very important because they enabled the introduction of a host of other inventions, replacing many small-scale operations with more cost-effective and controllable processes. Sodium carbonate had many uses in the glass, textile, soap, and paper industries. Early uses for sulfuric acid included pickling (removing rust from) iron and steel, and for bleaching cloth.

The development of bleaching powder (calcium hypochlorite) by Scottish chemist Charles Tennant in about 1800, based on the discoveries of French chemist Claude Louis Berthollet, revolutionised the bleaching processes in the textile industry by dramatically reducing the time required (from months to days) for the traditional process then in use, which required repeated exposure to the sun in bleach fields after soaking the textiles with alkali or sour milk. Tennant's factory at St Rollox, North Glasgow, became the largest chemical plant in the world.

After 1860 the focus on chemical innovation was in dyestuffs, and Germany took world leadership, building a strong chemical industry.[70] Aspiring chemists flocked to German universities in the 1860–1914 era to learn the latest techniques. British scientists by contrast, lacked research universities and did not train advanced students; instead, the practice was to hire German-trained chemists.[71]
Cement
The Thames Tunnel (opened 1843).
Cement was used in the world's first underwater tunnel.

In 1824 Joseph Aspdin, a British bricklayer turned builder, patented a chemical process for making portland cement which was an important advance in the building trades. This process involves sintering a mixture of clay and limestone to about 1,400 °C (2,552 °F), then grinding it into a fine powder which is then mixed with water, sand and gravel to produce concrete. Portland cement was used by the famous English engineer Marc Isambard Brunel several years later when constructing the Thames Tunnel.[72] Cement was used on a large scale in the construction of the London sewerage system a generation later.
Gas lighting
Main article: Gas lighting

Another major industry of the later Industrial Revolution was gas lighting. Though others made a similar innovation elsewhere, the large-scale introduction of this was the work of William Murdoch, an employee of Boulton & Watt, the Birmingham steam engine pioneers. The process consisted of the large-scale gasification of coal in furnaces, the purification of the gas (removal of sulphur, ammonia, and heavy hydrocarbons), and its storage and distribution. The first gas lighting utilities were established in London between 1812 and 1820. They soon became one of the major consumers of coal in the UK. Gas lighting affected social and industrial organisation because it allowed factories and stores to remain open longer than with tallow candles or oil. Its introduction allowed nightlife to flourish in cities and towns as interiors and streets could be lighted on a larger scale than before.[73]
Glass making
Main article: Glass production
The Crystal Palace housed the Great Exhibition of 1851

Glass was made in ancient Greece and Rome.[74] A new method of producing glass, known as the cylinder process, was developed in Europe during the early 19th century. In 1832 this process was used by the Chance Brothers to create sheet glass. They became the leading producers of window and plate glass. This advancement allowed for larger panes of glass to be created without interruption, thus freeing up the space planning in interiors as well as the fenestration of buildings. The Crystal Palace is the supreme example of the use of sheet glass in a new and innovative structure.[75]
Paper machine
Main article: Paper machine

A machine for making a continuous sheet of paper on a loop of wire fabric was patented in 1798 by Nicholas Louis Robert who worked for Saint-Léger Didot family in France. The paper machine is known as a Fourdrinier after the financiers, brothers Sealy and Henry Fourdrinier, who were stationers in London. Although greatly improved and with many variations, the Fourdriner machine is the predominant means of paper production today.

The method of continuous production demonstrated by the paper machine influenced the development of continuous rolling of iron and later steel and other continuous production processes.[76]
Agriculture
Main article: British Agricultural Revolution

The British Agricultural Revolution is considered one of the causes of the Industrial Revolution because improved agricultural productivity freed up workers to work in other sectors of the economy.[77] However, per-capita food supply in Europe was stagnant or declining and did not improve in some parts of Europe until the late 18th century.[78]

Industrial technologies that affected farming included the seed drill, the Dutch plough, which contained iron parts, and the threshing machine.

The English lawyer Jethro Tull invented an improved seed drill in 1701. It was a mechanical seeder which distributed seeds evenly across a plot of land and planted them at the correct depth. This was important because the yield of seeds harvested to seeds planted at that time was around four or five. Tull's seed drill was very expensive and not very reliable and therefore did not have much of an effect. Good quality seed drills were not produced until the mid 18th century.[79]

Joseph Foljambe's Rotherham plough of 1730 was the first commercially successful iron plough.[80][81][82][83] The threshing machine, invented by the Scottish engineer Andrew Meikle in 1784, displaced hand threshing with a flail, a laborious job that took about one-quarter of agricultural labour.[84]:286 It took several decades to diffuse[85] and was the final straw for many farm labourers, who faced near starvation, leading to the 1830 agricultural rebellion of the Swing Riots.

Machine tools and metalworking techniques developed during the Industrial Revolution eventually resulted in precision manufacturing techniques in the late 19th century for mass-producing agricultural equipment, such as reapers, binders and combine harvesters.[38]
Mining

Coal mining in Britain, particularly in South Wales, started early. Before the steam engine, pits were often shallow bell pits following a seam of coal along the surface, which were abandoned as the coal was extracted. In other cases, if the geology was favourable, the coal was mined by means of an adit or drift mine driven into the side of a hill. Shaft mining was done in some areas, but the limiting factor was the problem of removing water. It could be done by hauling buckets of water up the shaft or to a sough (a tunnel driven into a hill to drain a mine). In either case, the water had to be discharged into a stream or ditch at a level where it could flow away by gravity.[86]

The introduction of the steam pump by Thomas Savery in 1698 and the Newcomen steam engine in 1712 greatly facilitated the removal of water and enabled shafts to be made deeper, enabling more coal to be extracted. These were developments that had begun before the Industrial Revolution, but the adoption of John Smeaton's improvements to the Newcomen engine followed by James Watt's more efficient steam engines from the 1770s reduced the fuel costs of engines, making mines more profitable. The Cornish engine, developed in the 1810s, was much more efficient than the Watt steam engine.[86]

Coal mining was very dangerous owing to the presence of firedamp in many coal seams. Some degree of safety was provided by the safety lamp which was invented in 1816 by Sir Humphry Davy and independently by George Stephenson. However, the lamps proved a false dawn because they became unsafe very quickly and provided a weak light. Firedamp explosions continued, often setting off coal dust explosions, so casualties grew during the entire 19th century. Conditions of work were very poor, with a high casualty rate from rock falls.
Transportation
Main article: Transport during the British Industrial Revolution
See also: Productivity improving technologies (economic history) § Infrastructures

At the beginning of the Industrial Revolution, inland transport was by navigable rivers and roads, with coastal vessels employed to move heavy goods by sea. Wagonways were used for conveying coal to rivers for further shipment, but canals had not yet been widely constructed. Animals supplied all of the motive power on land, with sails providing the motive power on the sea. The first horse railways were introduced toward the end of the 18th century, with steam locomotives being introduced in the early decades of the 19th century. Improving sailing technologies boosted average sailing speed 50% between 1750 and 1830.[87]

The Industrial Revolution improved Britain's transport infrastructure with a turnpike road network, a canal and waterway network, and a railway network. Raw materials and finished products could be moved more quickly and cheaply than before. Improved transportation also allowed new ideas to spread quickly.
Canals and improved waterways
Main article: History of the British canal system
The Bridgewater Canal, famous because of its commercial success, crossing the Manchester Ship Canal, one of the last canals to be built.

Before and during the Industrial Revolution navigation on several British rivers was improved by removing obstructions, straightening curves, widening and deepening and building navigation locks. Britain had over 1,000 miles of navigable rivers and streams by 1750.[1]:46

Canals and waterways allowed bulk materials to be economically transported long distances inland. This was because a horse could pull a barge with a load dozens of times larger than the load that could be drawn in a cart.[43][88]

In the UK, canals began to be built in the late 18th century to link the major manufacturing centres across the country. Known for its huge commercial success, the Bridgewater Canal in North West England, which opened in 1761 and was mostly funded by The 3rd Duke of Bridgewater. From Worsley to the rapidly growing town of Manchester its construction cost £168,000 (£22,589,130 as of 2013),[89][90] but its advantages over land and river transport meant that within a year of its opening in 1761, the price of coal in Manchester fell by about half.[91] This success helped inspire a period of intense canal building, known as Canal Mania.[92] New canals were hastily built in the aim of replicating the commercial success of the Bridgewater Canal, the most notable being the Leeds and Liverpool Canal and the Thames and Severn Canal which opened in 1774 and 1789 respectively.

By the 1820s a national network was in existence. Canal construction served as a model for the organisation and methods later used to construct the railways. They were eventually largely superseded as profitable commercial enterprises by the spread of the railways from the 1840s on. The last major canal to be built in the United Kingdom was the Manchester Ship Canal, which upon opening in 1894 was the largest ship canal in the world,[93] and opened Manchester as a port. However it never achieved the commercial success its sponsors had hoped for and signalled canals as a dying mode of transport in an age dominated by railways, which were quicker and often cheaper.

Britain's canal network, together with its surviving mill buildings, is one of the most enduring features of the early Industrial Revolution to be seen in Britain.[citation needed]
Roads
Construction of the first macadam road in the United States (1823). In the foreground, workers are breaking stones "so as not to exceed 6 ounces in weight or to pass a two-inch ring".[94]

France was known for having an excellent system of roads at the time of the Industrial Revolution; however, most of the roads on the European Continent and in the U.K. were in bad condition and dangerously rutted.[88][95]

Much of the original British road system was poorly maintained by thousands of local parishes, but from the 1720s (and occasionally earlier) turnpike trusts were set up to charge tolls and maintain some roads. Increasing numbers of main roads were turnpiked from the 1750s to the extent that almost every main road in England and Wales was the responsibility of a turnpike trust. New engineered roads were built by John Metcalf, Thomas Telford and most notably John McAdam, with the first 'macadamised' stretch of road being Marsh Road at Ashton Gate, Bristol in 1816.[96] The first macadamised road in the U.S. was the "Boonsborough Turnpike Road" between Hagerstown and Boonsboro, Maryland in 1823.[94]

The major turnpikes radiated from London and were the means by which the Royal Mail was able to reach the rest of the country. Heavy goods transport on these roads was by means of slow, broad wheeled, carts hauled by teams of horses. Lighter goods were conveyed by smaller carts or by teams of pack horse. Stagecoaches carried the rich, and the less wealthy could pay to ride on carriers carts.

Productivity of road transport increased greatly during the Industrial Revolution and the cost of travel fell dramatically. Between 1690 and 1840 productivity almost tripled for long-distance carrying and increased four-fold in stage coaching.[97]
Railways
Main article: History of rail transport in Great Britain
Painting depicting the opening of the Liverpool and Manchester Railway in 1830, the first inter-city railway in the world and which spawned Railway Mania due to its success.

Reducing friction was one of the major reasons for the success of railroads compared to wagons. This was demonstrated on an iron plate covered wooden tramway in 1805 at Croydon, England.

    "A good horse on an ordinary turnpike road can draw two thousand pounds, or one ton. A party of gentlemen were invited to witness the experiment, that the superiority of the new road might be established by ocular demonstration. Twelve wagons were loaded with stones, till each wagon weighed three tons, and the wagons were fastened together. A horse was then attached, which drew the wagons with ease, six miles in two hours, having stopped four times, in order to show he had the power of starting, as well as drawing his great load."[98]

Railways were made practical by the widespread introduction of inexpensive puddled iron after 1800, the rolling mill for making rails, and the development of the high-pressure steam engine also around 1800.

Wagonways for moving coal in the mining areas had started in the 17th century and were often associated with canal or river systems for the further movement of coal. These were all horse drawn or relied on gravity, with a stationary steam engine to haul the wagons back to the top of the incline. The first applications of the steam locomotive were on wagon or plate ways (as they were then often called from the cast-iron plates used). Horse-drawn public railways did not begin until the early years of the 19th century when improvements to pig and wrought iron production were lowering costs.

Steam locomotives began being built after the introduction of high-pressure steam engines after the expiration of the Boulton and Watt patent in 1800. High-pressure engines exhausted used steam to the atmosphere, doing away with the condenser and cooling water. They were also much lighter weight and smaller in size for a given horsepower than the stationary condensing engines. A few of these early locomotives were used in mines. Steam-hauled public railways began with the Stockton and Darlington Railway in 1825.[99]

The rapid introduction of railways followed the 1829 Rainhill Trials, which demonstrated Robert Stephenson's successful locomotive design and the 1828 development of hot blast, which dramatically reduced the fuel consumption of making iron and increased the capacity of the blast furnace.

On 15 September 1830, the Liverpool and Manchester Railway, the first inter-city railway in the world, was opened, and was attended by Prime Minister, the Duke of Wellington.[100] The railway was engineered by Joseph Locke and George Stephenson, linked the rapidly expanding industrial town of Manchester with the port town of Liverpool. The opening was marred by problems, due to the primitive nature of the technology being employed, however problems were gradually ironed out and the railway became highly successful, transporting passengers and freight. The success of the inter-city railway, particularly in the transport of freight and commodities, led to Railway Mania.

Construction of major railways connecting the larger cities and towns began in the 1830s but only gained momentum at the very end of the first Industrial Revolution. After many of the workers had completed the railways, they did not return to their rural lifestyles but instead remained in the cities, providing additional workers for the factories.
Other developments

Other developments included more efficient water wheels, based on experiments conducted by the British engineer John Smeaton,[101] the beginnings of a machine industry[21][102] and the rediscovery of concrete (based on hydraulic lime mortar) by John Smeaton, which had been lost for 1,300 years.[103]
Social effects
Main article: Life in Great Britain during the Industrial Revolution
Factory system
Main article: Factory system

Prior to the Industrial Revolution, most of the workforce was employed in agriculture, either as self-employed farmers as landowners or tenants, or as landless agricultural labourers. It was common for families in various parts of the world to spin yarn, weave cloth and make their own clothing. Households also spun and wove for market production. At the beginning of the Industrial Revolution India, China and regions of Iraq and elsewhere in Asia and the Middle East produced most of the world's cotton cloth while Europeans produced wool and linen goods.

In Britain by the 16th century the putting-out system, by which farmers and townspeople produced goods for market in their homes, often described as cottage industry, was being practiced. Typical putting out system goods included spinning and weaving. Merchant capitalists typically provided the raw materials, paid workers by the piece, and were responsible for the sale of the goods. Embezzlement of supplies by workers and poor quality were common problems. The logistical effort in procuring and distributing raw materials and picking up finished goods were also limitations of the putting out system.[104]

Some early spinning and weaving machinery, such as a 40 spindle jenny for about six pounds in 1792, was affordable for cottagers.[105] Later machinery such as spinning frames, spinning mules and power looms were expensive (especially if water powered), giving rise to capitalist ownership of factories.

The majority of textile factory workers during the Industrial Revolution were unmarried women and children, including many orphans. They typically worked for 12 to 14 hours per day with only Sundays off. It was common for women take factory jobs seasonally during slack periods of farm work. Lack of adequate transportation, long hours and poor pay made it difficult to recruit and maintain workers.[40] Many workers, such as displaced farmers and agricultural workers, who had nothing but their labour to sell, became factory workers out of necessity. (See: British Agricultural Revolution, Threshing machine)

The change in the social relationship of the factory worker compared to farmers and cottagers was viewed unfavourably by Karl Marx; however, he recognized the increase in productivity made possible by technology.[106]
Standards of living

Some economists, such as Robert E. Lucas, Jr., say that the real effect of the Industrial Revolution was that "for the first time in history, the living standards of the masses of ordinary people have begun to undergo sustained growth ... Nothing remotely like this economic behaviour is mentioned by the classical economists, even as a theoretical possibility."[9] Others, however, argue that while growth of the economy's overall productive powers was unprecedented during the Industrial Revolution, living standards for the majority of the population did not grow meaningfully until the late 19th and 20th centuries, and that in many ways workers' living standards declined under early capitalism: for instance, studies have shown that real wages in Britain only increased 15% between the 1780s and 1850s, and that life expectancy in Britain did not begin to dramatically increase until the 1870s.[10][11] Similarly, the average height of the population declined during the Industrial Revolution, implying that their nutritional status was also decreasing. Real wages were not keeping up with the price of food.[107][108]

During the Industrial Revolution, the life expectancy of children increased dramatically. The percentage of the children born in London who died before the age of five decreased from 74.5% in 1730–1749 to 31.8% in 1810–1829.[109]

The effects on living conditions of the industrial revolution have been very controversial, and were hotly debated by economic and social historians from the 1950s to the 1980s.[110] A series of 1950s essays by Henry Phelps Brown and Sheila V. Hopkins later set the academic consensus that the bulk of the population, that was at the bottom of the social ladder, suffered severe reductions in their living standards.[110] During 1813–1913, there was a significant increase in worker wages.[111][112]
Food and nutrition
Main article: British Agricultural Revolution

Chronic hunger and malnutrition were the norm for the majority of the population of the world including Britain and France, until the late 19th century. Until about 1750, in large part due to malnutrition, life expectancy in France was about 35 years and about 40 years in Britain. The United States population of the time was adequately fed, much taller on average and had life expectancy of 45–50 years although U.S. life expectancy declined by a few years by the mid 19th century. Food consumption per capita also declined during an episode known as the Antebellum Puzzle.[113]

Food supply in Great Britain was adversely affected by the Corn Laws (1815–1846). The Corn Laws, which imposed tariffs on imported grain, were enacted to keep prices high in order to benefit domestic producers. The Corn Laws were repealed in the early years of the Great Irish Famine.

The initial technologies of the Industrial Revolution, such as mechanized textiles, iron and coal, did little, if anything, to lower food prices.[78] In Britain and the Netherlands, food supply increased before the Industrial Revolution due to better agricultural practices; however, population grew too, as noted by Thomas Malthus.[1][84][114][115] This condition is called the Malthusian trap, and it finally started to be overcome by transportation improvements, such as canals, improved roads and steamships.[116] Railroads and steamships were introduced near the end of the Industrial Revolution.[84]
Housing

The rapid population growth in the 19th century included the new industrial and manufacturing cities, as well as service centers such as Edinburgh and London.[117] The critical factor was financing, which was handled by building societies that dealt directly with large contracting firms.[118][119] Private renting from housing landlords was the dominant tenure. P. Kemp says this was usually of advantage to tenants.[120] People moved in so rapidly there was not enough capital to build adequate housing for everyone, so low-income newcomers squeezed into increasingly overcrowded slums. Clean water, sanitation, and public health facilities were inadequate; the death rate was high, especially infant mortality, and tuberculosis among young adults. Cholera from polluted water and typhoid were endemic. Unlike rural areas, there were no famines such as the one that devastated Ireland in the 1840s.[121][122][123]

A large exposé literature grew up condemning the unhealthy conditions. By far the most famous publication was by one of the founders of the Socialist movement, The Condition of the Working Class in England in 1844 Friedrich Engels described backstreet sections of Manchester and other mill towns, where people lived in crude shanties and shacks, some not completely enclosed, some with dirt floors. These shanty towns had narrow walkways between irregularly shaped lots and dwellings. There were no sanitary facilities. Population density was extremely high.[124] However, not everyone lived in such poor conditions. The Industrial Revolution also created a middle class of businessmen, clerks, foremen and engineers who lived in much better conditions.

Conditions improved over the course of the 19th century due to new public health acts regulating things such as sewage, hygiene and home construction. In the introduction of his 1892 edition, Engels notes that most of the conditions he wrote about in 1844 had been greatly improved. For example, the Public Health Act 1875 led to the more sanitary byelaw terraced house.
Sanitation

In The Condition of the Working Class in England in 1844 Friedrich Engels described how untreated sewage created awful odours and turned the rivers green in industrial cities.

In 1854 John Snow traced a cholera outbreak in Soho in London to faecal contamination of a public water well by a home cesspit. Snow's findings that cholera could be spread by contaminated water took some years to be accepted, but his work led to fundamental changes in the design of public water and waste systems.
Water supply

Pre-industrial water supply relied on gravity systems and pumping of water was done by water wheels. Pipes were typically made of wood. Steam powered pumps and iron pipes allowed the widespread piping of water to horse watering troughs and households.[95]
Literacy and industrialization
Further information: Literacy

Modern industrialization began in England and Scotland in the 18th century, where there were relatively high levels of literacy among farmers, especially in Scotland. This permitted the recruitment of literate craftsman, skilled workers, foremen and managers who supervised the emerging textile factories and coal mines. Much of a labor was unskilled, and especially in textile mills children as young as eight proved useful in handling chores and adding to the family income. Indeed, children were taken out of school to work alongside their parents in the factories. However, by the mid-nineteenth century, unskilled labor forces were common in Western Europe, and British industry moved upscale, needing many more engineers and skilled workers who could handle technical instructions and handle complex situations. Literacy was essential to be hired.[125][126] A senior government official told Parliament in 1870:

    Upon the speedy provision of elementary education depends are industrial prosperity. It is of no use trying to give technical teaching to our citizens without elementary education; uneducated labourers—and many of our labourers are utterly uneducated—are, for the most part, unskilled labourers, and if we leave our work–folk any longer unskilled, notwithstanding their strong sinews and determined energy, they will become overmatched in the competition of the world.[127]

The invention of the paper machine and the application of steam power to the industrial processes of printing supported a massive expansion of newspaper and pamphlet publishing, which contributed to rising literacy and demands for mass political participation.[128]
Clothing and consumer goods
Wedgwood tea and coffee service

Consumers benefited from falling prices for clothing and household articles such as cast iron cooking utensils, and in the following decades, stoves for cooking and space heating. Coffee, tea, sugar, tobacco and chocolate became affordable to many in Europe. Watches and household clocks became popular consumer items.[citation needed]

Meeting the demands of the consumer revolution and growth in wealth of the middle classes in Britain, potter and entrepreneur Josiah Wedgwood, founder of Wedgwood fine china and porcelain, created goods such as tableware, which was starting to become a common feature on dining tables.[129]

A growing consumer culture also saw people start to spend more money on entertainment. Increased literacy rates, industrialisation, and the invention of railway, created a new market for cheap popular literature for the masses and the ability for it to be circulated on a large scale. Penny dreadfuls were created in the 1830s to meet this demand.[130] The Guardian described penny dreadfuls as "Britain's first taste of mass-produced popular culture for the young", and "the Victorian equivalent of video games".[131] More than one million boys' periodicals were sold per week.[131]

In 1861, Welsh entrepreneur Pryce Pryce-Jones formed the first mail order business, an idea which would change the nature of retail. Selling Welsh flannel, he created mail order catalogues, with customers able to order by mail for the first time—this following the Uniform Penny Post in 1840 and the invention of the postage stamp (Penny Black) where there was a charge of one penny for carriage and delivery between any two places in the United Kingdom irrespective of distance—and the goods were delivered throughout the UK via the newly created railway system.[132] As the railway network expanded overseas, so did his business.[132]
Population increase

The Industrial Revolution was the first period in history during which there was a simultaneous increase in both population and per capita income.[133]

According to Robert Hughes in The Fatal Shore, the population of England and Wales, which had remained steady at six million from 1700 to 1740, rose dramatically after 1740. The population of England had more than doubled from 8.3 million in 1801 to 16.8 million in 1850 and, by 1901, had nearly doubled again to 30.5 million.[134] Improved conditions led to the population of Britain increasing from 10 million to 40 million in the 1800s.[135][136] Europe's population increased from about 100 million in 1700 to 400 million by 1900.[137]
Urbanization
The Black Country in England, west of Birmingham

The growth of modern industry since the late 18th century led to massive urbanisation and the rise of new great cities, first in Europe and then in other regions, as new opportunities brought huge numbers of migrants from rural communities into urban areas. In 1800, only 3% of the world's population lived in cities,[138] compared to nearly 50% today (the beginning of the 21st century).[139] Manchester had a population of 10,000 in 1717, but by 1911 it had burgeoned to 2.3 million.[140]
Effect on women and family life

Women's historians have debated the effect of the Industrial Revolution and capitalism generally on the status of women.[141][142] Taking a pessimistic side, Alice Clark argued that when capitalism arrived in 17th-century England, it lowered the status of women as they lost much of their economic importance. Clark argues that in 16th-century England, women were engaged in many aspects of industry and agriculture. The home was a central unit of production and women played a vital role in running farms, and in some trades and landed estates. Their useful economic roles gave them a sort of equality with their husbands. However, Clark argues, as capitalism expanded in the 17th century, there was more and more division of labour with the husband taking paid labour jobs outside the home, and the wife reduced to unpaid household work. Middle- and upper-class women were confined to an idle domestic existence, supervising servants; lower-class women were forced to take poorly paid jobs. Capitalism, therefore, had a negative effect on powerful women.[143]

In a more positive interpretation, Ivy Pinchbeck argues that capitalism created the conditions for women's emancipation.[144] Tilly and Scott have emphasised the continuity in the status of women, finding three stages in English history. In the pre-industrial era, production was mostly for home use and women produce much of the needs of the households. The second stage was the "family wage economy" of early industrialisation; the entire family depended on the collective wages of its members, including husband, wife and older children. The third or modern stage is the "family consumer economy," in which the family is the site of consumption, and women are employed in large numbers in retail and clerical jobs to support rising standards of consumption.[145]

Ideas of thrift and hard work characterized middle-class families as the Industrial Revolution swept Europe. These values were displayed in Samuel Smiles' book Self-Help, in which he states that the misery of the poorer classes was "voluntary and self-imposed – the results of idleness, thriftlessness, intemperance, and misconduct."[146]
Labour conditions
Social structure and working conditions

In terms of social structure, the Industrial Revolution witnessed the triumph of a middle class of industrialists and businessmen over a landed class of nobility and gentry. Ordinary working people found increased opportunities for employment in the new mills and factories, but these were often under strict working conditions with long hours of labour dominated by a pace set by machines. As late as the year 1900, most industrial workers in the United States still worked a 10-hour day (12 hours in the steel industry), yet earned from 20% to 40% less than the minimum deemed necessary for a decent life;[147] however, most workers in textiles, which was by far the leading industry in terms of employment, were women and children.[40] For workers of the labouring classes, industrial life "was a stony desert, which they had to make habitable by their own efforts."[148] Also, harsh working conditions were prevalent long before the Industrial Revolution took place. Pre-industrial society was very static and often cruel – child labour, dirty living conditions, and long working hours were just as prevalent before the Industrial Revolution.[149]
Factories and urbanisation
Main article: Factory system
Manchester, England ("Cottonopolis"), pictured in 1840, showing the mass of factory chimneys

Industrialisation led to the creation of the factory. The factory system contributed to the growth of urban areas, as large numbers of workers migrated into the cities in search of work in the factories. Nowhere was this better illustrated than the mills and associated industries of Manchester, nicknamed "Cottonopolis", and the world's first industrial city.[150] Manchester experienced a six-times increase in its population between 1771 and 1831. Bradford grew by 50% every ten years between 1811 and 1851 and by 1851 only 50% of the population of Bradford was actually born there.[151]

In addition, between 1815 and 1939, 20 percent of Europe's population left home, pushed by poverty, a rapidly growing population, and the displacement of peasant farming and artisan manufacturing. They were pulled abroad by the enormous demand for labour overseas, the ready availability of land, and cheap transportation. Still, many did not find a satisfactory life in their new homes, leading 7 million of them to return to Europe.[152] This mass migration had large demographic effects: in 1800, less than one percent of the world population consisted of overseas Europeans and their descendants; by 1930, they represented 11 percent.[153] The Americas felt the brunt of this huge emigration, largely concentrated in the United States.

For much of the 19th century, production was done in small mills, which were typically water-powered and built to serve local needs. Later, each factory would have its own steam engine and a chimney to give an efficient draft through its boiler.

In other industries, the transition to factory production was not so divisive. Some industrialists themselves tried to improve factory and living conditions for their workers. One of the earliest such reformers was Robert Owen, known for his pioneering efforts in improving conditions for workers at the New Lanark mills, and often regarded as one of the key thinkers of the early socialist movement.

By 1746 an integrated brass mill was working at Warmley near Bristol. Raw material went in at one end, was smelted into brass and was turned into pans, pins, wire, and other goods. Housing was provided for workers on site. Josiah Wedgwood and Matthew Boulton (whose Soho Manufactory was completed in 1766) were other prominent early industrialists, who employed the factory system.
Child labour
See also: Child labour § The Industrial Revolution
A young "drawer" pulling a coal tub along a mine gallery.[154] In Britain, laws passed in 1842 and 1844 improved mine working conditions.

The Industrial Revolution led to a population increase but the chances of surviving childhood did not improve throughout the Industrial Revolution, although infant mortality rates were reduced markedly.[109][155] There was still limited opportunity for education and children were expected to work. Employers could pay a child less than an adult even though their productivity was comparable; there was no need for strength to operate an industrial machine, and since the industrial system was completely new, there were no experienced adult labourers. This made child labour the labour of choice for manufacturing in the early phases of the Industrial Revolution between the 18th and 19th centuries. In England and Scotland in 1788, two-thirds of the workers in 143 water-powered cotton mills were described as children.[156]

Child labour existed before the Industrial Revolution but with the increase in population and education it became more visible. Many children were forced to work in relatively bad conditions for much lower pay than their elders,[157] 10–20% of an adult male's wage.[citation needed]

Reports were written detailing some of the abuses, particularly in the coal mines[158] and textile factories,[159] and these helped to popularise the children's plight. The public outcry, especially among the upper and middle classes, helped stir change in the young workers' welfare.

Politicians and the government tried to limit child labour by law but factory owners resisted; some felt that they were aiding the poor by giving their children money to buy food to avoid starvation, and others simply welcomed the cheap labour. In 1833 and 1844, the first general laws against child labour, the Factory Acts, were passed in Britain: Children younger than nine were not allowed to work, children were not permitted to work at night, and the work day of youth under the age of 18 was limited to twelve hours. Factory inspectors supervised the execution of the law, however, their scarcity made enforcement difficult.[citation needed] About ten years later, the employment of children and women in mining was forbidden. Although laws such as these decreased the number of child labourers, child labour remained significantly present in Europe and the United States until the 20th century.[160]
Organisation of labour
See also: Trade union § History

The Industrial Revolution concentrated labour into mills, factories and mines, thus facilitating the organisation of combinations or trade unions to help advance the interests of working people. The power of a union could demand better terms by withdrawing all labour and causing a consequent cessation of production. Employers had to decide between giving in to the union demands at a cost to themselves or suffering the cost of the lost production. Skilled workers were hard to replace, and these were the first groups to successfully advance their conditions through this kind of bargaining.

The main method the unions used to effect change was strike action. Many strikes were painful events for both sides, the unions and the management. In Britain, the Combination Act 1799 forbade workers to form any kind of trade union until its repeal in 1824. Even after this, unions were still severely restricted. One British newspaper in 1834 described unions as "the most dangerous institutions that were ever permitted to take root, under shelter of law, in any country..."[161]

In 1832, the Reform Act extended the vote in Britain but did not grant universal suffrage. That year six men from Tolpuddle in Dorset founded the Friendly Society of Agricultural Labourers to protest against the gradual lowering of wages in the 1830s. They refused to work for less than ten shillings a week, although by this time wages had been reduced to seven shillings a week and were due to be further reduced to six. In 1834 James Frampton, a local landowner, wrote to the Prime Minister, Lord Melbourne, to complain about the union, invoking an obscure law from 1797 prohibiting people from swearing oaths to each other, which the members of the Friendly Society had done. James Brine, James Hammett, George Loveless, George's brother James Loveless, George's brother in-law Thomas Standfield, and Thomas's son John Standfield were arrested, found guilty, and transported to Australia. They became known as the Tolpuddle Martyrs. In the 1830s and 1840s, the Chartist movement was the first large-scale organised working class political movement which campaigned for political equality and social justice. Its Charter of reforms received over three million signatures but was rejected by Parliament without consideration.

Working people also formed friendly societies and co-operative societies as mutual support groups against times of economic hardship. Enlightened industrialists, such as Robert Owen also supported these organisations to improve the conditions of the working class.

Unions slowly overcame the legal restrictions on the right to strike. In 1842, a general strike involving cotton workers and colliers was organised through the Chartist movement which stopped production across Great Britain.[162]

Eventually, effective political organisation for working people was achieved through the trades unions who, after the extensions of the franchise in 1867 and 1885, began to support socialist political parties that later merged to become the British Labour Party.
Luddites
Main article: Luddite
Refer to caption
Luddites smashing a power loom in 1812

The rapid industrialisation of the English economy cost many craft workers their jobs. The movement started first with lace and hosiery workers near Nottingham and spread to other areas of the textile industry owing to early industrialisation. Many weavers also found themselves suddenly unemployed since they could no longer compete with machines which only required relatively limited (and unskilled) labour to produce more cloth than a single weaver. Many such unemployed workers, weavers, and others, turned their animosity towards the machines that had taken their jobs and began destroying factories and machinery. These attackers became known as Luddites, supposedly followers of Ned Ludd, a folklore figure.[163] The first attacks of the Luddite movement began in 1811. The Luddites rapidly gained popularity, and the British government took drastic measures, using the militia or army to protect industry. Those rioters who were caught were tried and hanged, or transported for life.[164]

Unrest continued in other sectors as they industrialised, such as with agricultural labourers in the 1830s when large parts of southern Britain were affected by the Captain Swing disturbances. Threshing machines were a particular target, and hayrick burning was a popular activity. However, the riots led to the first formation of trade unions, and further pressure for reform.
Shift in production's center of gravity

The traditional centers of hand textile production such as India, parts of the Middle East and later China could not withstand the competition from machine-made textiles, which over a period of decades destroyed the hand made textile industries and left millions of people without work, many of whom starved.[40]

The Industrial Revolution also generated an enormous and unprecedented economic division in the world, as measured by the share of manufacturing output.
Share of total world manufacturing output (percentage)[165] 	1750 	1800 	1860 	1880 	1900
Europe 	23.2 	28.1 	53.2 	61.3 	62.0
United States 	0.1 	0.8 	7.2 	14.7 	23.6
Japan 	3.8 	3.5 	2.6 	2.4 	2.4
Rest of the world 	73.0 	67.7 	36.6 	20.9 	11.0
Effect on cotton production and expansion of slavery

Cheap cotton textiles increased the demand for raw cotton; previously, it had primarily been consumed in subtropical regions where it was grown, with little raw cotton available for export. Consequently, prices of raw cotton rose. Some cotton had been grown in the West Indies, particularly in Hispaniola, but Haitian cotton production was halted by the Haitian Revolution in 1791. The invention of the cotton gin in 1792 allowed Georgia green seeded cotton to be profitable, leading to the widespread growth of cotton plantations in the United States and Brazil. In 1791 world cotton production was estimated to be 490,000,000 pounds with U.S. production accounting to 2,000,000 pounds. By 1800, U.S. production was 35,000,000 pounds, of which 17,790,000 were exported. In 1945 the U.S. produced seven-eights of the 1,169,600,000 pounds of world production.[21]:150

The Americas, particularly the U.S., had labour shortages and high priced labour, which made slavery attractive. America's cotton plantations were highly efficient and profitable, and able to keep up with demand.[166] The U.S. Civil War created a "cotton famine" that led to increased production in other areas of the world, including new colonies in Africa.
Effect on environment
Levels of air pollution rose during the Industrial Revolution, sparking the first modern environmental laws to be passed in the mid-19th century.

The origins of the environmental movement lay in the response to increasing levels of smoke pollution in the atmosphere during the Industrial Revolution. The emergence of great factories and the concomitant immense growth in coal consumption gave rise to an unprecedented level of air pollution in industrial centers; after 1900 the large volume of industrial chemical discharges added to the growing load of untreated human waste.[167] The first large-scale, modern environmental laws came in the form of Britain's Alkali Acts, passed in 1863, to regulate the deleterious air pollution (gaseous hydrochloric acid) given off by the Leblanc process, used to produce soda ash. An Alkali inspector and four sub-inspectors were appointed to curb this pollution. The responsibilities of the inspectorate were gradually expanded, culminating in the Alkali Order 1958 which placed all major heavy industries that emitted smoke, grit, dust and fumes under supervision.

The manufactured gas industry began in British cities in 1812–1820. The technique used produced highly toxic effluent that was dumped into sewers and rivers. The gas companies were repeatedly sued in nuisance lawsuits. They usually lost and modified the worst practices. The City of London repeatedly indicted gas companies in the 1820s for polluting the Thames and poisoning its fish. Finally, Parliament wrote company charters to regulate toxicity.[168] The industry reached the US around 1850 causing pollution and lawsuits.[169]

In industrial cities local experts and reformers, especially after 1890, took the lead in identifying environmental degradation and pollution, and initiating grass-roots movements to demand and achieve reforms.[170] Typically the highest priority went to water and air pollution. The Coal Smoke Abatement Society was formed in Britain in 1898 making it one of the oldest environmental NGOs. It was founded by artist Sir William Blake Richmond, frustrated with the pall cast by coal smoke. Although there were earlier pieces of legislation, the Public Health Act 1875 required all furnaces and fireplaces to consume their own smoke. It also provided for sanctions against factories that emitted large amounts of black smoke. The provisions of this law were extended in 1926 with the Smoke Abatement Act to include other emissions, such as soot, ash, and gritty particles and to empower local authorities to impose their own regulations.[171]
Nations and nationalism

In his 1983 book Nations and Nationalism, philosopher Ernest Gellner argues that the industrial revolution and economic modernization spurred the creation of nations.[172]
Industrialisation beyond Great Britain
Continental Europe

The Industrial Revolution in Continental Europe came later than in Great Britain. It started in Belgium and France, then spread to the German states by the middle of the 19th century. In many industries, this involved the application of technology developed in Britain in new places. Typically the technology was purchased from Britain or British engineers and entrepreneurs moved abroad in search of new opportunities. By 1809, part of the Ruhr Valley in Westphalia was called 'Miniature England' because of its similarities to the industrial areas of Britain. Most European governments provided state funding to the new industries. In some cases (such as iron), the different availability of resources locally meant that only some aspects of the British technology were adopted.[173][174]
Belgium

Belgium was the second country in which the Industrial Revolution took place and the first in continental Europe: Wallonia (French-speaking southern Belgium) took the lead. Starting in the middle of the 1820s, and especially after Belgium became an independent nation in 1830, numerous works comprising coke blast furnaces as well as puddling and rolling mills were built in the coal mining areas around Liège and Charleroi. The leader was a transplanted Englishman John Cockerill. His factories at Seraing integrated all stages of production, from engineering to the supply of raw materials, as early as 1825.[175][176]

Wallonia exemplified the radical evolution of industrial expansion. Thanks to coal (the French word "houille" was coined in Wallonia),[177] the region geared up to become the 2nd industrial power in the world after Britain. But it is also pointed out by many researchers, with its Sillon industriel, 'Especially in the Haine, Sambre and Meuse valleys, between the Borinage and Liège...there was a huge industrial development based on coal-mining and iron-making...'.[178] Philippe Raxhon wrote about the period after 1830: "It was not propaganda but a reality the Walloon regions were becoming the second industrial power all over the world after Britain."[179] "The sole industrial centre outside the collieries and blast furnaces of Walloon was the old cloth-making town of Ghent."[180] Professor Michel De Coster stated: "The historians and the economists say that Belgium was the second industrial power of the world, in proportion to its population and its territory [...] But this rank is the one of Wallonia where the coal-mines, the blast furnaces, the iron and zinc factories, the wool industry, the glass industry, the weapons industry... were concentrated."[181] Many of the 19th century coal mines in Wallonia are now protected as World Heritage sites[182]

Wallonia was also the birthplace of a strong Socialist party and strong trade-unions in a particular sociological landscape. At the left, the Sillon industriel, which runs from Mons in the west, to Verviers in the east (except part of North Flanders, in another period of the industrial revolution, after 1920). Even if Belgium is the second industrial country after Britain, the effect of the industrial revolution there was very different. In 'Breaking stereotypes', Muriel Neven and Isabelle Devious say:

    The industrial revolution changed a mainly rural society into an urban one, but with a strong contrast between northern and southern Belgium. During the Middle Ages and the Early Modern Period, Flanders was characterised by the presence of large urban centres [...] at the beginning of the nineteenth century this region (Flanders), with an urbanisation degree of more than 30 per cent, remained one of the most urbanised in the world. By comparison, this proportion reached only 17 per cent in Wallonia, barely 10 per cent in most West European countries, 16 per cent in France and 25 per cent in Britain. Nineteenth century industrialisation did not affect the traditional urban infrastructure, except in Ghent....Also, in Wallonia the traditional urban network was largely unaffected by the industrialisation process, even though the proportion of city-dwellers rose from 17 to 45 per cent between 1831 and 1910. Especially in the Haine, Sambre and Meuse valleys, between the Borinage and Liège, where there was a huge industrial development based on coal-mining and iron-making, urbanisation was fast. During these eighty years the number of municipalities with more than 5,000 inhabitants increased from only 21 to more than one hundred, concentrating nearly half of the Walloon population in this region. Nevertheless, industrialisation remained quite traditional in the sense that it did not lead to the growth of modern and large urban centres, but to a conurbation of industrial villages and towns developed around a coal-mine or a factory. Communication routes between these small centres only became populated later and created a much less dense urban morphology than, for instance, the area around Liège where the old town was there to direct migratory flows.[183]

France
Main article: Economic history of France

The industrial revolution in France followed a particular course as it did not correspond to the main model followed by other countries. Notably, most French historians argue France did not go through a clear take-off.[184] Instead, France's economic growth and industrialisation process was slow and steady through the 18th and 19th centuries. However, some stages were identified by Maurice Lévy-Leboyer:

    French Revolution and Napoleonic wars (1789–1815),
    industrialisation, along with Britain (1815–1860),
    economic slowdown (1860–1905),
    renewal of the growth after 1905.

Germany
Main article: Economic history of Germany

Based on its leadership in chemical research in the universities and industrial laboratories, Germany, which was unified in 1871, became dominant in the world's chemical industry in the late 19th century. At first the production of dyes based on aniline was critical.[185]

Germany's political disunity—with three dozen states—and a pervasive conservatism made it difficult to build railways in the 1830s. However, by the 1840s, trunk lines linked the major cities; each German state was responsible for the lines within its own borders. Lacking a technological base at first, the Germans imported their engineering and hardware from Britain, but quickly learned the skills needed to operate and expand the railways. In many cities, the new railway shops were the centres of technological awareness and training, so that by 1850, Germany was self-sufficient in meeting the demands of railroad construction, and the railways were a major impetus for the growth of the new steel industry. Observers found that even as late as 1890, their engineering was inferior to Britain's. However, German unification in 1870 stimulated consolidation, nationalisation into state-owned companies, and further rapid growth. Unlike the situation in France, the goal was support of industrialisation, and so heavy lines crisscrossed the Ruhr and other industrial districts, and provided good connections to the major ports of Hamburg and Bremen. By 1880, Germany had 9,400 locomotives pulling 43,000 passengers and 30,000 tons of freight, and pulled ahead of France.[186]
Austria-Hungary
Main article: Economy of Austria-Hungary

The Habsburg realms which became Austria-Hungary in 1867 included 23 million inhabitants in 1800, growing to 36 million by 1870, second only to Russia in population. The population was overwhelmingly rural. Nationally the per capita rate of industrial growth averaged about 3% between 1818 and 1870. However, there were strong regional differences. The railway system was built in the 1850-1873 period. Before they arrived transportation was very slow and expensive. In the Alpine and Bohemian regions, proto-industrialization at begun by 1750, and became the center of the first phases of the industrial revolution after 1800. The textile industry was the main factor, utilizing mechanization, steam engines, and the factory system. Much of machinery was purchased from the British. In the Bohemian regions, machine spinning started later and only became a major factor by 1840. Bohemia's resources were successfully exploited, growing 10% a year. The iron industry had developed in the Alpine regions after 1750, with smaller centers in Bohemia and Moravia. Hungary—the eastern half of the Dual Monarchy, was heavily rural with little industry before 1870.[187]

Technological change accelerated industrialization and urbanization. The GNP per capita grew roughly 1.76% per year from 1870 to 1913. That level of growth compared very favorably to that of other European nations such as Britain (1%), France (1.06%), and Germany (1.51%).[188] However, in a comparison with Germany and Britain: the Austro-Hungarian economy as a whole still lagged considerably, as sustained modernization had begun much later.[189]
Sweden
Main article: Economic history of Sweden

During the period 1790–1815 Sweden experienced two parallel economic movements: an agricultural revolution with larger agricultural estates, new crops and farming tools and a commercialisation of farming, and a protoindustrialisation, with small industries being established in the countryside and with workers switching between agricultural work in summer and industrial production in winter. This led to economic growth benefiting large sections of the population and leading up to a consumption revolution starting in the 1820s. Between 1815 and 1850, the protoindustries developed into more specialised and larger industries. This period witnessed increasing regional specialisation with mining in Bergslagen, textile mills in Sjuhäradsbygden and forestry in Norrland. Several important institutional changes took place in this period, such as free and mandatory schooling introduced in 1842 (as the first country in the world), the abolition of the national monopoly on trade in handicrafts in 1846, and a stock company law in 1848.[190]

From 1850 to 1890, Sweden experienced its "first" Industrial Revolution with a veritable explosion in export, dominated by crops, wood and steel. Sweden abolished most tariffs and other barriers to free trade in the 1850s and joined the gold standard in 1873. Large infrastructural investments were made during this period, mainly in the expanding rail road network, which was financed in part by the government and in part by private enterprises.[191] From 1890 to 1930, new industries developed with their focus on the domestic market: mechanical engineering, power utilities, papermaking and textile.
Japan
Main articles: Meiji Restoration and Economic history of Japan

The industrial revolution began about 1870 as Meiji period leaders decided to catch up with the West. The government built railroads, improved roads, and inaugurated a land reform programme to prepare the country for further development. It inaugurated a new Western-based education system for all young people, sent thousands of students to the United States and Europe, and hired more than 3,000 Westerners to teach modern science, mathematics, technology, and foreign languages in Japan (Foreign government advisors in Meiji Japan).

In 1871, a group of Japanese politicians known as the Iwakura Mission toured Europe and the United States to learn western ways. The result was a deliberate state-led industrialisation policy to enable Japan to quickly catch up. The Bank of Japan, founded in 1882,[192] used taxes to fund model steel and textile factories. Education was expanded and Japanese students were sent to study in the west.

Modern industry first appeared in textiles, including cotton and especially silk, which was based in home workshops in rural areas.[193]
United States
Main articles: American system of manufacturing, Interchangeable parts, Economic history of the United States, Technological and industrial history of the United States, and Industrial Revolution in the United States
See also: History of Lowell, Massachusetts
Slater's Mill in Pawtucket, Rhode Island.

During the late 18th and early 19th centuries when the UK and parts of Western Europe began to industrialise, the US was primarily an agricultural and natural resource producing and processing economy.[194] The building of roads and canals, the introduction of steamboats and the building of railroads were important for handling agricultural and natural resource products in the large and sparsely populated country of the period.[195][196]

Important American technological contributions during the period of the Industrial Revolution were the cotton gin and the development of a system for making interchangeable parts, the latter aided by the development of the milling machine in the US. The development of machine tools and the system of interchangeable parts were the basis for the rise of the US as the world's leading industrial nation in the late 19th century.

Oliver Evans invented an automated flour mill in the mid-1780s that used control mechanisms and conveyors so that no labour was needed from the time grain was loaded into the elevator buckets until flour was discharged into a wagon. This is considered to be the first modern materials handling system an important advance in the progress toward mass production.[38]

The United States originally used horse-powered machinery for small scale applications such as grain milling, but eventually switched to water power after textile factories began being built in the 1790s. As a result, industrialisation was concentrated in New England and the Northeastern United States, which has fast-moving rivers. The newer water-powered production lines proved more economical than horse-drawn production. In the late 19th century steam-powered manufacturing overtook water-powered manufacturing, allowing the industry to spread to the Midwest.

Thomas Somers and the Cabot Brothers founded the Beverly Cotton Manufactory in 1787, the first cotton mill in America, the largest cotton mill of its era,[197] and a significant milestone in the research and development of cotton mills in the future. This mill was designed to use horse power, but the operators quickly learned that the horse-drawn platform was economically unstable, and had economic losses for years. Despite the losses, the Manufactory served as a playground of innovation, both in turning a large amount of cotton, but also developing the water-powered milling structure used in Slater's Mill.[198]

In 1793, Samuel Slater (1768–1835) founded the Slater Mill at Pawtucket, Rhode Island. He had learned of the new textile technologies as a boy apprentice in Derbyshire, England, and defied laws against the emigration of skilled workers by leaving for New York in 1789, hoping to make money with his knowledge. After founding Slater's Mill, he went on to own 13 textile mills.[199] Daniel Day established a wool carding mill in the Blackstone Valley at Uxbridge, Massachusetts in 1809, the third woollen mill established in the US (The first was in Hartford, Connecticut, and the second at Watertown, Massachusetts.) The John H. Chafee Blackstone River Valley National Heritage Corridor retraces the history of "America's Hardest-Working River', the Blackstone. The Blackstone River and its tributaries, which cover more than 45 miles (72 km) from Worcester, Massachusetts to Providence, Rhode Island, was the birthplace of America's Industrial Revolution. At its peak over 1,100 mills operated in this valley, including Slater's mill, and with it the earliest beginnings of America's Industrial and Technological Development.

Merchant Francis Cabot Lowell from Newburyport, Massachusetts memorised the design of textile machines on his tour of British factories in 1810. Realising that the War of 1812 had ruined his import business but that a demand for domestic finished cloth was emerging in America, on his return to the United States, he set up the Boston Manufacturing Company. Lowell and his partners built America's second cotton-to-cloth textile mill at Waltham, Massachusetts, second to the Beverly Cotton Manufactory. After his death in 1817, his associates built America's first planned factory town, which they named after him. This enterprise was capitalised in a public stock offering, one of the first uses of it in the United States. Lowell, Massachusetts, using 5.6 miles (9.0 km) of canals and 10,000 horsepower delivered by the Merrimack River, is considered by some as a major contributor to the success of the American Industrial Revolution. The short-lived utopia-like Waltham-Lowell system was formed, as a direct response to the poor working conditions in Britain. However, by 1850, especially following the Great Famine of Ireland, the system had been replaced by poor immigrant labour.

A major U.S. contribution to industrialisation was the development of techniques to make interchangeable parts from metal. Precision metal machining techniques were developed by the U.S. Department of War to make interchangeable parts for small firearms. The development work took place at the Federal Arsenals at Springfield Armory and Harpers Ferry Armory. Techniques for precision machining using machine tools included using fixtures to hold the parts in proper position, jigs to guide the cutting tools and precision blocks and gauges to measure the accuracy. The milling machine, a fundamental machine tool, is believed to have been invented by Eli Whitney, who was a government contractor who built firearms as part of this program. Another important invention was the Blanchard lathe, invented by Thomas Blanchard. The Blanchard lathe, or pattern tracing lathe, was actually a shaper that could produce copies of wooden gun stocks. The use of machinery and the techniques for producing standardised and interchangeable parts became known as the American system of manufacturing.[38]

Precision manufacturing techniques made it possible to build machines that mechanised the shoe industry.[200] and the watch industry. The industrialisation of the watch industry started 1854 also in Waltham, Massachusetts, at the Waltham Watch Company, with the development of machine tools, gauges and assembling methods adapted to the micro precision required for watches.
Second Industrial Revolution
Main article: Second Industrial Revolution
Sächsische Maschinenfabrik in Chemnitz, Germany, 1868

Steel is often cited as the first of several new areas for industrial mass-production, which are said to characterise a "Second Industrial Revolution", beginning around 1850, although a method for mass manufacture of steel was not invented until the 1860s, when Sir Henry Bessemer invented a new furnace which could convert molten pig iron into steel in large quantities. However, it only became widely available in the 1870s after the process was modified to produce more uniform quality.[43][201] Bessemer steel was being displaced by the open hearth furnace near the end of the 19th century.
Sir Henry Bessemer's Bessemer converter, the most important technique for making steel from the 1850s to the 1950s. Located in Sheffield (Steel City)

This Second Industrial Revolution gradually grew to include chemicals, mainly the chemical industries, petroleum (refining and distribution), and, in the 20th century, the automotive industry, and was marked by a transition of technological leadership from Britain to the United States and Germany.

The increasing availability of economical petroleum products also reduced the importance of coal and further widened the potential for industrialisation.

A new revolution began with electricity and electrification in the electrical industries. The introduction of hydroelectric power generation in the Alps enabled the rapid industrialisation of coal-deprived northern Italy, beginning in the 1890s.

By the 1890s, industrialisation in these areas had created the first giant industrial corporations with burgeoning global interests, as companies like U.S. Steel, General Electric, Standard Oil and Bayer AG joined the railroad and ship companies on the world's stock markets.
Causes
Regional GDP per capita changed very little for most of human history before the Industrial Revolution.

The causes of the Industrial Revolution were complicated and remain a topic for debate. Geographic factors include Britain's vast mineral resources. In addition to metal ores, Britain had the highest quality coal reserves known at the time, as well as abundant water power, highly productive agriculture, and numerous seaports and navigable waterways.[58]

Some historians believe the Industrial Revolution was an outgrowth of social and institutional changes brought by the end of feudalism in Britain after the English Civil War in the 17th century, although feudalism began to break down after the Black Death of the mid 14th century, followed by other epidemics, until the population reached a low in the 14th century. This created labour shortages and led to falling food prices and a peak in real wages around 1500, after which population growth began reducing wages. Inflation caused by coinage debasement after 1540 followed by precious metals supply increasing from the Americas caused land rents (often long-term leases that transferred to heirs on death) to fall in real terms.[202]

The Enclosure movement and the British Agricultural Revolution made food production more efficient and less labour-intensive, forcing the farmers who could no longer be self-sufficient in agriculture into cottage industry, for example weaving, and in the longer term into the cities and the newly developed factories.[203] The colonial expansion of the 17th century with the accompanying development of international trade, creation of financial markets and accumulation of capital are also cited as factors, as is the scientific revolution of the 17th century.[204] A change in marrying patterns to getting married later made people able to accumulate more human capital during their youth, thereby encouraging economic development.[205]

Until the 1980s, it was universally believed by academic historians that technological innovation was the heart of the Industrial Revolution and the key enabling technology was the invention and improvement of the steam engine.[206] However, recent research into the Marketing Era has challenged the traditional, supply-oriented interpretation of the Industrial Revolution.[207]

Lewis Mumford has proposed that the Industrial Revolution had its origins in the Early Middle Ages, much earlier than most estimates.[208] He explains that the model for standardised mass production was the printing press and that "the archetypal model for the industrial era was the clock". He also cites the monastic emphasis on order and time-keeping, as well as the fact that medieval cities had at their centre a church with bell ringing at regular intervals as being necessary precursors to a greater synchronisation necessary for later, more physical, manifestations such as the steam engine.

The presence of a large domestic market should also be considered an important driver of the Industrial Revolution, particularly explaining why it occurred in Britain. In other nations, such as France, markets were split up by local regions, which often imposed tolls and tariffs on goods traded among them.[209] Internal tariffs were abolished by Henry VIII of England, they survived in Russia until 1753, 1789 in France and 1839 in Spain.

Governments' grant of limited monopolies to inventors under a developing patent system (the Statute of Monopolies in 1623) is considered an influential factor. The effects of patents, both good and ill, on the development of industrialisation are clearly illustrated in the history of the steam engine, the key enabling technology. In return for publicly revealing the workings of an invention the patent system rewarded inventors such as James Watt by allowing them to monopolise the production of the first steam engines, thereby rewarding inventors and increasing the pace of technological development. However, monopolies bring with them their own inefficiencies which may counterbalance, or even overbalance, the beneficial effects of publicising ingenuity and rewarding inventors.[210] Watt's monopoly prevented other inventors, such as Richard Trevithick, William Murdoch, or Jonathan Hornblower, whom Boulton and Watt sued, from introducing improved steam engines, thereby retarding the spread of steam power.[211][212]
Causes in Europe
Main article: Great Divergence
Interior of the London Coal Exchange, c. 1808.
European 17th-century colonial expansion, international trade, and creation of financial markets produced a new legal and financial environment, one which supported and enabled 18th-century industrial growth.

One question of active interest to historians is why the Industrial Revolution occurred in Europe and not in other parts of the world in the 18th century, particularly China, India, and the Middle East (which pioneered in shipbuilding, textile production, water mills, and much more in the period between 750 and 1100[213]), or at other times like in Classical Antiquity[214] or the Middle Ages.[215] A recent account argued that Europeans have been characterized for thousands of years by a freedom-loving culture originating from the aristocratic societies of early Indo-European invaders.[216] Many historians, however, have challenged this explanation as being not only Eurocentric, but also ignoring historical context. In fact, before the Industrial Revolution, "there existed something of a global economic parity between the most advanced regions in the world economy."[217] These historians have suggested a number of other factors, including education, technological changes[218] (see Scientific Revolution in Europe), "modern" government, "modern" work attitudes, ecology, and culture.[219]

China was the world's most technologically advanced country for many centuries; however, China stagnated economically and technologically and was surpassed by Western Europe before the Age of Discovery, by which time China banned imports and denied entry to foreigners. China was also a totalitarian society. China also heavily taxed transported goods.[220][221] Modern estimates of per capita income in Western Europe in the late 18th century are of roughly 1,500 dollars in purchasing power parity (and Britain had a per capita income of nearly 2,000 dollars[222]) whereas China, by comparison, had only 450 dollars. India was essentially feudal, politically fragmented and not as economically advanced as Western Europe.[223]

Historians such as David Landes and sociologists Max Weber and Rodney Stark credit the different belief systems in Asia and Europe with dictating where the revolution occurred.[224][225] The religion and beliefs of Europe were largely products of Judaeo-Christianity and Greek thought. Conversely, Chinese society was founded on men like Confucius, Mencius, Han Feizi (Legalism), Lao Tzu (Taoism), and Buddha (Buddhism), resulting in very different worldviews.[226] Other factors include the considerable distance of China's coal deposits, though large, from its cities as well as the then unnavigable Yellow River that connects these deposits to the sea.[227]

Regarding India, the Marxist historian Rajani Palme Dutt said: "The capital to finance the Industrial Revolution in India instead went into financing the Industrial Revolution in Britain."[228] In contrast to China, India was split up into many competing kingdoms after the decline of the Mughal Empire, with the major ones in its aftermath including the Marathas, Sikhs, Bengal Subah, and Kingdom of Mysore. In addition, the economy was highly dependent on two sectors—agriculture of subsistence and cotton, and there appears to have been little technical innovation. It is believed that the vast amounts of wealth were largely stored away in palace treasuries by monarchs prior to the British take over.[citation needed]

Economic historian Joel Mokyr argued that political fragmentation (the presence of a large number of European states) made it possible for heterodox ideas to thrive, as entrepreneurs, innovators, ideologues and heretics could easily flee to a neighboring state in the event that the one state would try to suppress their ideas and activities. This is what set Europe apart from the technologically advanced, large unitary empires such as China and India[contradictory] by providing "an insurance against economic and technological stagnation".[229] China had both a printing press and movable type, and India had similar levels of scientific and technological achievement as Europe in 1700, yet the Industrial Revolution would occur in Europe, not China or India. In Europe, political fragmentation was coupled with an "integrated market for ideas" where Europe's intellectuals used the lingua franca of Latin, had a shared intellectual basis in Europe's classical heritage and the pan-European institution of the Republic of Letters.[230]

In addition, Europe's monarchs desperately needed revenue, pushing them into alliances with their merchant classes. Small groups of merchants were granted monopolies and tax-collecting responsibilities in exchange for payments to the state. Located in a region "at the hub of the largest and most varied network of exchange in history,"[231] Europe advanced as the leader of the Industrial Revolution. In the Americas, Europeans found a windfall of silver, timber, fish, and maize, leading historian Peter Stearns to conclude that "Europe's Industrial Revolution stemmed in great part from Europe's ability to draw disproportionately on world resources."[232]

Modern capitalism originated in the Italian city-states around the end of the first millennium. The city-states were prosperous cities that were independent from feudal lords. They were largely republics whose governments were typically composed of merchants, manufacturers, members of guilds, bankers and financiers. The Italian city-states built a network of branch banks in leading western European cities and introduced double entry bookkeeping. Italian commerce was supported by schools that taught numeracy in financial calculations through abacus schools.[225]
Causes in Britain
As the Industrial Revolution developed British manufactured output surged ahead of other economies.

Great Britain provided the legal and cultural foundations that enabled entrepreneurs to pioneer the Industrial Revolution.[233] Key factors fostering this environment were:

    The period of peace and stability which followed the unification of England and Scotland[1]
    There were no internal trade barriers, including between England and Scotland, or feudal tolls and tariffs, making Britain the "largest coherent market in Europe"[1]:46
    The rule of law (enforcing property rights and respecting the sanctity of contracts)[1]
    A straightforward legal system that allowed the formation of joint-stock companies (corporations)[1]
    Free market (capitalism)[1]
    Geographical and natural resource advantages of Great Britain were the fact that it had extensive coastlines and many navigable rivers in an age where water was the easiest means of transportation and Britain had the highest quality coal in Europe. Britain also had a large number of sites for water power.[1]

"An unprecedented explosion of new ideas, and new technological inventions, transformed our use of energy, creating an increasingly industrial and urbanised country. Roads, railways and canals were built. Great cities appeared. Scores of factories and mills sprang up. Our landscape would never be the same again. It was a revolution that transformed not only the country, but the world itself."

– British historian Jeremy Black on the BBC's Why the Industrial Revolution Happened Here.[129]

There were two main values that really drove the Industrial Revolution in Britain. These values were self-interest and an entrepreneurial spirit. Because of these interests, many industrial advances were made that resulted in a huge increase in personal wealth and a consumer revolution.[129] These advancements also greatly benefitted the British society as a whole. Countries around the world started to recognise the changes and advancements in Britain and use them as an example to begin their own Industrial Revolutions.[234]

The debate about the start of the Industrial Revolution also concerns the massive lead that Great Britain had over other countries. Some have stressed the importance of natural or financial resources that Britain received from its many overseas colonies or that profits from the British slave trade between Africa and the Caribbean helped fuel industrial investment. However, it has been pointed out that slave trade and West Indian plantations provided only 5% of the British national income during the years of the Industrial Revolution.[235] Even though slavery accounted for so little, Caribbean-based demand accounted for 12% of Britain's industrial output.[236]
William Bell Scott Iron and Coal, 1855–60

Instead, the greater liberalisation of trade from a large merchant base may have allowed Britain to produce and use emerging scientific and technological developments more effectively than countries with stronger monarchies, particularly China and Russia. Britain emerged from the Napoleonic Wars as the only European nation not ravaged by financial plunder and economic collapse, and having the only merchant fleet of any useful size (European merchant fleets were destroyed during the war by the Royal Navy[237]). Britain's extensive exporting cottage industries also ensured markets were already available for many early forms of manufactured goods. The conflict resulted in most British warfare being conducted overseas, reducing the devastating effects of territorial conquest that affected much of Europe. This was further aided by Britain's geographical position—an island separated from the rest of mainland Europe.
William and Mary Presenting the Cap of Liberty to Europe, 1716, Sir James Thornhill. Enthroned in heaven with the Virtues behind them are the royals William III and Mary II who had taken the throne after the Glorious Revolution and signed the English Bill of Rights of 1689. William tramples on arbitrary power and hands the red cap of liberty to Europe where, unlike Britain, absolute monarchy stayed the normal form of power execution. Below William is the French king Louis XIV.[238]

Another theory is that Britain was able to succeed in the Industrial Revolution due to the availability of key resources it possessed. It had a dense population for its small geographical size. Enclosure of common land and the related agricultural revolution made a supply of this labour readily available. There was also a local coincidence of natural resources in the North of England, the English Midlands, South Wales and the Scottish Lowlands. Local supplies of coal, iron, lead, copper, tin, limestone and water power resulted in excellent conditions for the development and expansion of industry. Also, the damp, mild weather conditions of the North West of England provided ideal conditions for the spinning of cotton, providing a natural starting point for the birth of the textiles industry.

The stable political situation in Britain from around 1688 following the Glorious Revolution, and British society's greater receptiveness to change (compared with other European countries) can also be said to be factors favouring the Industrial Revolution. Peasant resistance to industrialisation was largely eliminated by the Enclosure movement, and the landed upper classes developed commercial interests that made them pioneers in removing obstacles to the growth of capitalism.[239] (This point is also made in Hilaire Belloc's The Servile State.)

The French philosopher Voltaire wrote about capitalism and religious tolerance in his book on English society, Letters on the English (1733), noting why England at that time was more prosperous in comparison to the country's less religiously tolerant European neighbours. "Take a view of the Royal Exchange in London, a place more venerable than many courts of justice, where the representatives of all nations meet for the benefit of mankind. There the Jew, the Mahometan [Muslim], and the Christian transact together, as though they all professed the same religion, and give the name of infidel to none but bankrupts. There the Presbyterian confides in the Anabaptist, and the Churchman depends on the Quaker's word. If one religion only were allowed in England, the Government would very possibly become arbitrary; if there were but two, the people would cut one another's throats; but as there are such a multitude, they all live happy and in peace."[240]

Britain's population grew 280% 1550–1820, while the rest of Western Europe grew 50–80%. Seventy percent of European urbanisation happened in Britain 1750–1800. By 1800, only the Netherlands was more urbanised than Britain. This was only possible because coal, coke, imported cotton, brick and slate had replaced wood, charcoal, flax, peat and thatch. The latter compete with land grown to feed people while mined materials do not. Yet more land would be freed when chemical fertilisers replaced manure and horse's work was mechanised. A workhorse needs 3 to 5 acres (1.21 to 2.02 ha) for fodder while even early steam engines produced four times more mechanical energy.

In 1700, 5/6 of coal mined worldwide was in Britain, while the Netherlands had none; so despite having Europe's best transport, most urbanised, well paid, literate people and lowest taxes, it failed to industrialise. In the 18th century, it was the only European country whose cities and population shrank. Without coal, Britain would have run out of suitable river sites for mills by the 1830s.[241] Based on science and experimentation from the continent, the steam engine was developed specifically for pumping water out of mines, many of which in Britain had been mined to below the water table. Although extremely inefficient they were economical because they used unsaleable coal.[242] Iron rails were developed to transport coal, which was a major economic sector in Britain.

Economic historian Robert Allen has argued that high wages, cheap capital and very cheap energy in Britain made it the ideal place for the industrial revolution to occur.[243] These factors made it vastly more profitable to invest in research and development, and to put technology to use in Britain than other societies.[243] However, two 2018 studies in The Economic History Review showed that wages were not particularly high in the British spinning sector or the construction sector, casting doubt on Allen's explanation.[244][245]
Transfer of knowledge
	
This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (September 2019) (Learn how and when to remove this template message)
A Philosopher Lecturing on the Orrery (c. 1766). Informal philosophical societies spread scientific advances

Knowledge of innovation was spread by several means. Workers who were trained in the technique might move to another employer or might be poached. A common method was for someone to make a study tour, gathering information where he could. During the whole of the Industrial Revolution and for the century before, all European countries and America engaged in study-touring; some nations, like Sweden and France, even trained civil servants or technicians to undertake it as a matter of state policy. In other countries, notably Britain and America, this practice was carried out by individual manufacturers eager to improve their own methods. Study tours were common then, as now, as was the keeping of travel diaries. Records made by industrialists and technicians of the period are an incomparable source of information about their methods.

Another means for the spread of innovation was by the network of informal philosophical societies, like the Lunar Society of Birmingham, in which members met to discuss 'natural philosophy' (i.e. science) and often its application to manufacturing. The Lunar Society flourished from 1765 to 1809, and it has been said of them, "They were, if you like, the revolutionary committee of that most far reaching of all the eighteenth century revolutions, the Industrial Revolution".[246] Other such societies published volumes of proceedings and transactions. For example, the London-based Royal Society of Arts published an illustrated volume of new inventions, as well as papers about them in its annual Transactions.

There were publications describing technology. Encyclopaedias such as Harris's Lexicon Technicum (1704) and Abraham Rees's Cyclopaedia (1802–1819) contain much of value. Cyclopaedia contains an enormous amount of information about the science and technology of the first half of the Industrial Revolution, very well illustrated by fine engravings. Foreign printed sources such as the Descriptions des Arts et Métiers and Diderot's Encyclopédie explained foreign methods with fine engraved plates.

Periodical publications about manufacturing and technology began to appear in the last decade of the 18th century, and many regularly included notice of the latest patents. Foreign periodicals, such as the Annales des Mines, published accounts of travels made by French engineers who observed British methods on study tours.
Protestant work ethic
Main article: Protestant work ethic

Another theory is that the British advance was due to the presence of an entrepreneurial class which believed in progress, technology and hard work.[247] The existence of this class is often linked to the Protestant work ethic (see Max Weber) and the particular status of the Baptists and the dissenting Protestant sects, such as the Quakers and Presbyterians that had flourished with the English Civil War. Reinforcement of confidence in the rule of law, which followed establishment of the prototype of constitutional monarchy in Britain in the Glorious Revolution of 1688, and the emergence of a stable financial market there based on the management of the national debt by the Bank of England, contributed to the capacity for, and interest in, private financial investment in industrial ventures.[248]

Dissenters found themselves barred or discouraged from almost all public offices, as well as education at England's only two universities at the time (although dissenters were still free to study at Scotland's four universities). When the restoration of the monarchy took place and membership in the official Anglican Church became mandatory due to the Test Act, they thereupon became active in banking, manufacturing and education. The Unitarians, in particular, were very involved in education, by running Dissenting Academies, where, in contrast to the universities of Oxford and Cambridge and schools such as Eton and Harrow, much attention was given to mathematics and the sciences – areas of scholarship vital to the development of manufacturing technologies.

Historians sometimes consider this social factor to be extremely important, along with the nature of the national economies involved. While members of these sects were excluded from certain circles of the government, they were considered fellow Protestants, to a limited extent, by many in the middle class, such as traditional financiers or other businessmen. Given this relative tolerance and the supply of capital, the natural outlet for the more enterprising members of these sects would be to seek new opportunities in the technologies created in the wake of the scientific revolution of the 17th century.
Criticisms

The Industrial revolution has been criticised for complete ecological collapse, causing mental illness, pollution and unnatural systems of organizing for humanity. Since the start of the industrial revolution people have criticised it by stating the Industrial Revolution turned humanity and nature into slaves and destroying the world.[249][250] It has also been criticised by valuing profits and corporate growth over life and wellbeing, multiple movements have arose philosophically against the Industrial revolution and include groups such as the Amish and Primitivism.[251]
Individualism humanism and Industrial Slavery
Main articles: Humanism and Individualism

Humanists, and individualists criticise the Industrial revolution for turning humans into Industrial slaves, that humans lack autonomy in a modern industrialised world. Critics of the Industrial revolution state that humanity is perpetually controlled by technology and commanded by technology such as the computer mandated work, and that any individual freedom is destroyed by industrialisation.
Primitivism
Main articles: Pre-industrial society, Anarcho-primitivism, and Primitivism
A primitive lifetyle living outside the Industrial Revoultion

Primitivism argues that the Industrial Revolution have created an un-natural frame of society and the world in which humans need to adapt to an un-natural urban landscape in which humans are perpetual cogs without personal autonomy.

Certain primitivists argue for a return to pre-industrial society while other argue that technology such as modern medicine, and agriculture are all positive for humanity assuming they controlled and serve humanity and have no effect on the natural environment.
Pollution and Ecological collapse
Main article: Ecological collapse
A dog forced to eat trash due to pollution, the Industrial revolution has forced animals into harsh environments most are unable to survive in, leading to starvation and eventual extinction

The Industrial revolution has been criticised for leading to immense ecological and habitat destruction, certain studies state that over 95% of species have gone extinct since humanity became the dominant species on earth. It has also led to immense decrease in the biodiversity of life on earth. The Industrial revolution has been stated as is inherently unsustainable and will lead to eventual collapse of society, mass hunger, starvation, and resource scarcity.[252]
The Anthropocene

The Anthropocene is a proposed epoch or mass extinction coming from humanity (Anthro is Greek root for humanity). Since the start of the Industrial revolution humanity has permanently changed the earth, such as immense decrease in biodiversity, and mass extinction caused by the Industrial revolution. The effects include permanent changes to the earth's atmosphere and soil, forests, the mass destruction of the Industrial revolution has led to catastrophic impacts on the earth. Most organisms are unable to adapt leading to mass extinction with the remaining undergoing evolutionary rescue, as a result of the Industrial revolution.

Permanent changes in the distribution of organisms from human influence will become identifiable in the geologic record. Researchers have documented the movement of many species into regions formerly too cold for them, often at rates faster than initially expected.[253] This has occurred in part as a result of changing climate, but also in response to farming and fishing, and to the accidental introduction of non-native species to new areas through global travel.[254] The ecosystem of the entire Black Sea may have changed during the last 2000 years as a result of nutrient and silica input from eroding deforested lands along the Danube River.[255]
Opposition from Romanticism
Main article: Romanticism

During the Industrial Revolution, an intellectual and artistic hostility towards the new industrialisation developed, associated with the Romantic movement. Romanticism revered the traditionalism of rural life and recoiled against the upheavals caused by industrialization, urbanization and the wretchedness of the working classes.[256] Its major exponents in English included the artist and poet William Blake and poets William Wordsworth, Samuel Taylor Coleridge, John Keats, Lord Byron and Percy Bysshe Shelley. The movement stressed the importance of "nature" in art and language, in contrast to "monstrous" machines and factories; the "Dark satanic mills" of Blake's poem "And did those feet in ancient time". Mary Shelley's novel Frankenstein reflected concerns that scientific progress might be two-edged. French Romanticism likewise was highly critical of industry.[257]
See also
General

    Automation
    Capitalist mode of production
    Carboniferous period
    Chinese industrialization
    Deindustrialization
    Digital Revolution
    Division of labour
    Dual revolution
    Economic history of the United Kingdom
    Fourth Industrial Revolution
    History of capitalism
    Hydraulics
    Industrial Age
    Industrial society
    Information revolution
    Laissez-faire
    Law of the handicap of a head start – Dialectics of progress
    Machine Age
    Petroleum Revolution
    The Protestant Ethic and the Spirit of Capitalism
    Science and invention in Birmingham
    Steam
    Textile manufacture during the British Industrial Revolution, a good description of the early industrial revolution

Footnotes

    A transnational corporation differs from a traditional multinational corporation in that it does not identify itself with one national home. While traditional multinational corporations are national companies with foreign subsidiaries, transnational corporations spread out their operations in many countries sustaining high levels of local responsiveness. An example of a transnational corporation is the Royal Dutch Shell corporation whose headquarters may be in The Hague (Netherlands) but its registered office and main executive body is headquartered in London, United Kingdom. Another example of a transnational corporation is Nestlé who employ senior executives from many countries and try to make decisions from a global perspective rather than from one centralized headquarters. While the VOC established its main administrative center, as the second headquarters, in Batavia (Dutch East Indies, 1610–1800), the company's global headquarters was in Amsterdam (Dutch Republic). Also, the company had important operations elsewhere.

References

Landes, David S. (1969). The Unbound Prometheus. Press Syndicate of the University of Cambridge. ISBN 978-0-521-09418-4.
Horn, Jeff; Rosenband, Leonard; Smith, Merritt (2010). Reconceptualizing the Industrial Revolution. Cambridge MA, London: MIT Press. ISBN 978-0-262-51562-7.
E. Anthony Wrigley, "Reconsidering the Industrial Revolution: England and Wales." Journal of Interdisciplinary History 49.01 (2018): 9–42.
Reisman, George (1998). Capitalism: A complete understanding of the nature and value of human economic life. Jameson Books. p. 127. ISBN 978-0-915463-73-2.
Tong, Junie T. (2016). Finance and Society in 21st Century China: Chinese Culture Versus Western Markets. CRC Press. p. 151. ISBN 978-1-317-13522-7.
Esposito, John L., ed. (2004). The Islamic World: Past and Present. Volume 1: Abba - Hist. Oxford University Press. p. 174. ISBN 978-0-19-516520-3.
Ray, Indrajit (2011). Bengal Industries and the British Industrial Revolution (1757-1857). Routledge. pp. 7–10. ISBN 978-1-136-82552-1.
Landes, David (1999). The Wealth and Poverty of Nations. W.W. Norton & Company. ISBN 978-0-393-31888-3.
Lucas, Robert E., Jr. (2002). Lectures on Economic Growth. Cambridge: Harvard University Press. pp. 109–10. ISBN 978-0-674-01601-9.
Feinstein, Charles (September 1998). "Pessimism Perpetuated: Real Wages and the Standard of Living in Britain during and after the Industrial Revolution". Journal of Economic History. 58 (3): 625–58. doi:10.1017/s0022050700021100.
Szreter & Mooney; Mooney (February 1998). "Urbanization, Mortality, and the Standard of Living Debate: New Estimates of the Expectation of Life at Birth in Nineteenth-Century British Cities". The Economic History Review. 51 (1): 104. doi:10.1111/1468-0289.00084. hdl:10.1111/1468-0289.00084.
Robert Lucas, Jr. (2003). "The Industrial Revolution". Federal Reserve Bank of Minneapolis. Archived from the original on 27 November 2007. Retrieved 14 November 2007. "it is fairly clear that up to 1800 or maybe 1750, no society had experienced sustained growth in per capita income. (Eighteenth century population growth also averaged one-third of 1 percent, the same as production growth.) That is, up to about two centuries ago, per capita incomes in all societies were stagnated at around $400 to $800 per year."
Lucas, Robert (2003). "The Industrial Revolution Past and Future". Archived from the original on 27 November 2007. "[consider] annual growth rates of 2.4 percent for the first 60 years of the 20th century, of 1 percent for the entire 19th century, of one-third of 1 percent for the 18th century"
McCloskey, Deidre (2004). "Review of The Cambridge Economic History of Modern Britain (edited by Roderick Floud and Paul Johnson), Times Higher Education Supplement, 15 January 2004".
Eric Hobsbawm, The Age of Revolution: Europe 1789–1848, Weidenfeld & Nicolson Ltd., p. 27 ISBN 0-349-10484-0
Joseph E Inikori. Africans and the Industrial Revolution in England, Cambridge University Press. ISBN 0-521-01079-9 Read it
Berg, Maxine; Hudson, Pat (1992). "Rehabilitating the Industrial Revolution" (PDF). The Economic History Review. 45 (1): 24–50. doi:10.2307/2598327. JSTOR 2598327.
Rehabilitating the Industrial Revolution Archived 9 November 2006 at the Wayback Machine by Julie Lorenzen, Central Michigan University. Retrieved November 2006.
Gupta, Bishnupriya. "Cotton Textiles and the Great Divergence: Lancashire, India and Shifting Competitive Advantage, 1600–1850" (PDF). International Institute of Social History. Department of Economics, University of Warwick. Retrieved 5 December 2016.
Taylor, George Rogers (1951). The Transportation Revolution, 1815–1860. ISBN 978-0-87332-101-3.
Roe, Joseph Wickham (1916), English and American Tool Builders, New Haven, Connecticut: Yale University Press, LCCN 16011753. Reprinted by McGraw-Hill, New York and London, 1926 (LCCN 27-24075); and by Lindsay Publications, Inc., Bradley, Illinois, (ISBN 978-0-917914-73-7).
Hunter 1985 harvnb error: multiple targets (2×): CITEREFHunter1985 (help)
Crouzet, François (1996). "France". In Teich, Mikuláš; Porter, Roy (eds.). The industrial revolution in national context: Europe and the USA. Cambridge University Press. p. 45. ISBN 978-0-521-40940-7. LCCN 95025377.
BLANQUI Jérôme-Adolphe, Histoire de l'économie politique en Europe depuis les anciens jusqu'à nos jours, 1837, ISBN 978-0-543-94762-8
Hudson, Pat (1992). The Industrial Revolution. London: Edward Arnold. p. 11. ISBN 978-0-7131-6531-9.
Ogilvie, Sheilagh (2008). "Protoindustrialization". In Durlauf, Steven; Blume, Lawrence (eds.). The New Palgrave Dictionary of Economics. 6. Palgrave Macmillan. pp. 711–714. ISBN 978-0-230-22642-5.
Elvin 1973, pp. 7, 113–199.
Broadberry, Stephen N.; Guan, Hanhui; Li, David D. (1 April 2017). "China, Europe and the Great Divergence: A Study in Historical National Accounting, 980–1850". CEPR Discussion Paper. SSRN 2957511.
Nicholas Crafts, "The first industrial revolution: Resolving the slow growth/rapid industrialization paradox." Journal of the European Economic Association 3.2-3 (2005): 525-534.
Christine Rider, ed. Encyclopedia of the Age of the Industrial Revolution 1700–1920, (2007) pp xiii to xxxv.
Phyllis Deane "The Industrial Revolution in Great Britain" in Carlo M. Cipolla ed., The Fontana Economic History of Europe: The Emergence of industrial societies Vol 4 part 2 (1973) pp 161–174.
Bond, Eric; Gingerich, Sheena; Archer-Antonsen, Oliver; Purcell, Liam; Macklem, Elizabeth (17 February 2003). "The Industrial Revolution – Innovations". Industrialrevolution.sea.ca. Retrieved 30 January 2011.
Ayres 1989, p. 17
Landes, David S. (1969). The Unbound Prometheus. Press Syndicate of the University of Cambridge. p. 218. ISBN 978-0-521-09418-4.
Rosen, William (2012). The Most Powerful Idea in the World: A Story of Steam, Industry and Invention. University of Chicago Press. p. 149. ISBN 978-0-226-72634-2.
Tylecote, R. F. (1992). A History of Metallurgy, Second Edition. London: Maney Publishing, for the Institute of Materials. ISBN 978-0-901462-88-6.
Landes, David S. (1969). The Unbound Prometheus. Press Syndicate of the University of Cambridge. p. 91. ISBN 978-0-521-09418-4.
Hounshell, David A. (1984), From the American System to Mass Production, 1800–1932: The Development of Manufacturing Technology in the United States, Baltimore, Maryland: Johns Hopkins University Press, ISBN 978-0-8018-2975-8, LCCN 83016269, OCLC 1104810110
Hopkins, Eric (2000). Industrialization and Society. London: Routledge. p. 2.
Beckert, Sven (2014). Empire of Cotton: A Global History. US: Vintage Books Division Penguin Random House. ISBN 978-0-375-71396-5.
"Archived copy". Archived from the original on 7 February 2015. Retrieved 5 July 2015. VOC at the National Library of the Netherlands (in Dutch)
Ayres, Robert (1989). "Technological Transformations and Long Waves" (PDF): 16–17. Archived from the original (PDF) on 1 March 2012. Retrieved 20 December 2012.
McNeil 1990
R. Ray Gehani (1998). "Management of Technology and Operations". p. 63. John Wiley and Sons, 1998
Ayres 1989, p. 1
Landes, David S. (1969). The Unbound Prometheus. Press Syndicate of the University of Cambridge. p. 63. ISBN 978-0-521-09418-4.
Ayres 1989, p. 18
Lakwete, Angela (2005). Inventing the Cotton Gin: Machine and Myth in Antebellum America. Johns Hopkins University Press. ISBN 978-0-8018-8272-2.
G.E. Mingay (1986). "The Transformation of Britain, 1830–1939". p. 25. Routledge, 1986
Hills, Richard L. "Cotchett, Thomas". Oxford Dictionary of National Biography (online ed.). Oxford University Press. doi:10.1093/ref:odnb/75296. (Subscription or UK public library membership required.)
Fairclough, K. R. "Sorocold, George". Oxford Dictionary of National Biography (online ed.). Oxford University Press. doi:10.1093/ref:odnb/47971. (Subscription or UK public library membership required.)
"Ironbridge Gorge". UNESCO World Heritage Centre. UNESCO. Retrieved 20 December 2017.
Gordon, Robert B (1996). American Iron 1607–1900. Baltimore and London: Johns Hopkins University Press. p. 156. ISBN 978-0-8018-6816-0.
Adams, Ryan (27 July 2012). "Danny Boyle's intro on Olympics programme". Awards Daily. Retrieved 20 December 2017.
Temple, Robert; Needham, Joseph (1986). The Genius of China: 3000 years of science, discovery and invention. New York: Simon and Schuster. pp. 65. Based on the works of Joseph Needham
Author Simon Winchester dates the start of the Industrial Revolution to 4 May 1776, the day that John Wilkinson presented James Watt with his precision-made cylinder. (19 August 2018) Fareed Zakaria . CNN.com
Rosenberg, Nathan (1982). Inside the Black Box: Technology and Economics. Cambridge; New York: Cambridge University Press. p. 85. ISBN 978-0-521-27367-1.
Landes, David. S. (1969). The Unbound Prometheus: Technological Change and Industrial Development in Western Europe from 1750 to the Present. Cambridge; New York: Press Syndicate of the University of Cambridge. ISBN 978-0-521-09418-4.
Landes 1969, p. 218 harvnb error: multiple targets (9×): CITEREFLandes1969 (help)
Journal of the Iron and Steel Institute. 1879. p. 20.
Landes, David S. (1969). The Unbound Prometheus. Press Syndicate of the University of Cambridge. p. 92. ISBN 978-0-521-09418-4.
Ayres 1989, p. 21
Rosenberg, Nathan (1982). Inside the Black Box: Technology and Economics. Cambridge; New York: Cambridge University Press. p. 90. ISBN 978-0-521-27367-1.
"Iron Making | Boundless World History". courses.lumenlearning.com. Retrieved 9 January 2020.
Landes, David S. (1969). The Unbound Prometheus. Press Syndicate of the University of Cambridge. p. 104. ISBN 978-0-521-09418-4.
L. T. C. Rolt and J. S. Allen, The Steam Engine of Thomas Newcomen (Landmark Publishing, Ashbourne 1997). p. 145.
Hunter & Bryant 1991
Economics 323–2: Economic History of the United States Since 1865 http://faculty.wcas.northwestern.edu/~jmokyr/Graphs-and-Tables.PDF
Clow, Archibald; Clow, Nan L. (June 1952). Chemical Revolution. Ayer Co. pp. 65–90. ISBN 978-0-8369-1909-7.
Lion Hirth, State, Cartels and Growth: The German Chemical Industry (2007) p. 20
Johann P. Murmann, Knowledge and competitive advantage: the co-evolution of firms, technology, and national institutions (2003) pp. 53–54
Properties of Concrete Published lecture notes from University of Memphis Department of Civil Engineering. Retrieved 17 October 2007.
Charles Hunt, A history of the introduction of gas lighting (W. King, 1907) online.
Patrick Degryse, Glass making in the Greco-Roman world: results of the ARCHGLASS project (Leuven University Press, 2014).
Hentie Louw, "Window-glass making in Britain c. 1660-c. 1860 and its architectural impact." Construction History (1991): 47-68 online.
Misa, Thomas J. (1995). A Nation of Steel: The Making of Modern America 1965–1925. Baltimore and London: Johns Hopkins University Press. p. 243. ISBN 978-0-8018-6502-2.
Overton, Mark (1996). Agricultural Revolution in England: The transformation if the agrarian economy 1500–1850. Cambridge University Press. ISBN 978-0-521-56859-3.
Pomeranz, Kenneth (2000), The Great Divergence: China, Europe, and the Making of the Modern World Economy, Princeton University Press, ISBN 978-0-691-09010-8
Temple 1986, p. 26 harvnb error: multiple targets (2×): CITEREFTemple1986 (help)
Overton 1996, p. 122 harvnb error: multiple targets (2×): CITEREFOverton1996 (help)
"The Rotherham Plow". Rotherham: The Unofficial Website. Archived from the original on 14 August 2014.
Temple 1986, pp. 18, 20 harvnb error: multiple targets (2×): CITEREFTemple1986 (help)
"The Rotherham Plow". Rotherham.co.uk. Archived from the original on 24 September 2015.
Clark 2007
Atack, Jeremy; Passell, Peter (1994). A New Economic View of American History. New York: W.W. Norton and Co. p. 282. ISBN 978-0-393-96315-1.
John U. Nef, Rise of the British coal industry (2v 1932).
Coren, Michael J. (31 January 2018). "The speed of Europe's 18th-century sailing ships is revamping history's view of the Industrial Revolution". Quartz. Retrieved 31 January 2018.
Grübler, Arnulf (1990). The Rise and Fall of Infrastructures: Dynamics of Evolution and Technological Change in Transport (PDF). Heidelberg and New York: Physica-Verlag.
UK Retail Price Index inflation figures are based on data from Clark, Gregory (2017). "The Annual RPI and Average Earnings for Britain, 1209 to Present (New Series)". MeasuringWorth. Retrieved 2 February 2020.
Timbs 1860, p. 363
The Times newspaper: Bridgewater Collieries, London, 1 December 1913, retrieved 19 July 2008
Kindleberger 1993, pp. 192–93
"1 January 1894: Opening of the Manchester ship canal". The Guardian. 1 January 1894. Retrieved 28 July 2012. "Six years in the making, the world's largest navigation canal gives the city direct access to the sea"
"1823 – First American Macadam Road" (Painting – Carl Rakeman) US Department of Transportation – Federal Highway Administration (Accessed 10 October 2008)
Hunter, Louis C. (1985). A History of Industrial Power in the United States, 1730–1930, Vol. 2: Steam Power. Charlottesville: University Press of Virginia. p. 18."There exist everywhere roads suitable for hauling".Robert Fulton on roads in France
Richard Brown (1991). "Society and Economy in Modern Britain 1700–1850" p. 136. Routledge, 1991
Gerhold, Dorian (August 1996). "Productivity Change in Road Transport before and after Turnpiking, 1690-1840". The Economic History Review. 49 (3): 511. JSTOR 2597761 – via JSTOR.
Fling, Harry M. (1868). Railroads of the United States, Their History and Statistics. Philadelphia: John. E. Potter and Co. pp. 12, 13.
Jack Simmons, and Gordon Biddle, eds. The Oxford Companion to British Railway History: From 1603 to the 1990s (2nd ed. 1999).
Herbert L. Sussman (2009). "Victorian Technology: Invention, Innovation, and the Rise of the Machine". p. 2. ABC-CLIO, 2009
Rosen, William (2012). The Most Powerful Idea in the World: A Story of Steam, Industry and Invention. University of Chicago Press. p. 127. ISBN 978-0-226-72634-2.
Musson; Robinson (1969). Science and Technology in the Industrial Revolution. University of Toronto Press. p. 477.
Encyclopædia Britannica (2008) "Building construction: the reintroduction of modern concrete"
Landes 1969, pp. 57–59 harvnb error: multiple targets (9×): CITEREFLandes1969 (help)
Landes 1969, p. 59 harvnb error: multiple targets (9×): CITEREFLandes1969 (help)
Hunt, E.K.; Lautzenheiser, Mark (2014). History of Economic Thought: A Critical Perspective. PHI Learning. ISBN 978-0-7656-2599-1.
Küchenhoff, Helmut (2012). "The Diminution of Physical Stature of the British Male Population in the 18th-Century". Cliometrica. 6 (1): 45–62. doi:10.1007/s11698-011-0070-7. S2CID 154692462. Retrieved 20 November 2018.
Snowdon, Brian (April–June 2005). "Measures of Progress and Other Tall Stories: From Income to Anthropometrics". World Economics. 6 (2): 87–136. Retrieved 20 November 2018.
Mabel C. Buer, Health, Wealth and Population in the Early Days of the Industrial Revolution, London: George Routledge & Sons, 1926, p. 30 ISBN 0-415-38218-1
Woodward, D. (1981) Wage rates and living standards in pre-industrial England Past & Present 1981 91(1):28–46
Crafts, N; Mills, Terence C. (1994). "Trends in Real Wages in Britain, 1750–1913" (PDF). Explorations in Economic History. 31 (2): 176. doi:10.1006/exeh.1994.1007.
R.M. Hartwell, The Rising Standard of Living in England, 1800–1850, Economic History Review, 1963, p. 398 ISBN 0-631-18071-0
Fogel, Robert W. (2004). The Escape from Hunger and Premature Death, 1700–2100. London: Cambridge University Press. ISBN 978-0-521-80878-1.
Malthus, Thomas (1798). An Essay on the Principle of Population (PDF). London. Retrieved 12 February 2016.
Temple, Robert; Needham, Joseph (1986). The Genius of China: 3000 years of science, discovery and invention. New York: Simon and Schuster<Based on the works of Joseph Needham>
Wells, David A. (1891). Recent Economic Changes and Their Effect on Production and Distribution of Wealth and Well-Being of Society. New York: D. Appleton and Co. ISBN 978-0-543-72474-8. "RECENT ECONOMIC CHANGES AND THEIR EFFECT ON DISTRIBUTION OF WEALTH AND WELL BEING OF SOCIETY WELLS."
Gregory Clark, "Shelter from the storm: housing and the industrial revolution, 1550–1909." Journal of Economic History 62#2 (2002): 489–511.
Dyos, H. J. (1968). "The Speculative Builders and Developers of Victorian London". Victorian Studies. 11: 641–690. JSTOR 3825462.
Christopher Powell, The British building industry since 1800: An economic history (Taylor & Francis, 1996).
P. Kemp, "Housing landlordism in late nineteenth-century Britain." Environment and Planning A 14.11 (1982): 1437–47.
Dyos, H. J. (1967). "The Slums of Victorian London". Victorian Studies. 11 (1): 5–40. JSTOR 3825891.
Anthony S. Wohl, The eternal slum: housing and social policy in Victorian London (1977).
Martin J. Daunton, House and home in the Victorian city: working-class housing, 1850–1914 (1983).
Enid Gauldie, Cruel habitations: a history of working-class housing 1780–1918 (Allen & Unwin, 1974)
Theodore S. Hamerow, The birth of a new Europe: State and society in the nineteenth century (University of North Carolina Press, 1989) pp 148–174.
Robert Allan Houston, "The Development of Literacy: Northern England, 1640-1750." Economic History Review (1982) 35#2: 199-216 online.
Hamerow, p 159.
Henry Milner, Civic literacy: How informed citizens make democracy work (University Press of New England, 2002).
"Why the Industrial Revolution Happened Here". BBC. 11 January 2017.
Turner, E. S. (1975). Boys Will be Boys. Harmondsworth: Penguin. p. 20. ISBN 978-0-14-004116-3.
"Penny dreadfuls: the Victorian equivalent of video games". The Guardian. Retrieved 12 March 2019.
"Pryce-Jones: Pioneer of the Mail Order Industry". BBC. Retrieved 12 March 2019.
Hudson, Pat (1992). The Industrial Revolution. New York: Routledge, Chapman and Hall, Inc. p. 3. ISBN 978-0-7131-6531-9.
"The UK population: past, present and future – Chapter 1" (PDF). Statistics.gov.uk
"A portrait of Britain in 2031". The Independent. 24 October 2007.
BBC – History – Victorian Medicine – From Fluke to Theory. Published: 1 February 2002.
"Modernization – Population Change". Encyclopædia Britannica.
"Human Population: Urbanization". Population Reference Bureau. Archived 26 October 2009 at the Wayback Machine
"Human Population: Population Growth: Question and Answer". Population Reference Bureau. Archived 8 October 2009 at the Wayback Machine
Manchester (England, United Kingdom). Encyclopædia Britannica.
Eleanor Amico, ed. Reader's guide to women's studies (1998) pp. 102–04, 306–08.
Thomas, Janet (1988). "Women and Capitalism: Oppression or Emancipation? A Review Article". Comparative Studies in Society and History. 30 (3): 534–549. doi:10.1017/S001041750001536X. JSTOR 178999.
Alice Clark, Working life of women in the seventeenth century (1919).
Ivy Pinchbeck, Women Workers in the Industrial Revolution (1930).
Louise Tilly and Joan Wallach Scott, Women, work, and family (1987).
Smiles, Samuel (1875). Thrift. London: John Murray. pp. 30–40.
"United States History – The Struggles of Labor". Library of Congress Country Studies.
Hobsbawm, Eric J. (1969). Industry and Empire: From 1750 to the Present Day. 3. Harmondsworth, England: Penguin. p. 65. ISBN 978-1-56584-561-9.
R.M. Hartwell, The Industrial Revolution and Economic Growth, Methuen and Co., 1971, pp. 339–41 ISBN 0-416-19500-8
"Manchester – the first industrial city". Entry on Sciencemuseum website. Archived from the original on 9 March 2012. Retrieved 17 March 2012.
"Life in Industrial Towns". History Learning Site.
Hoeder, Dirk (2002). Cultures in Contact. Durham, NC: Duke University Press. pp. 331–32.
Guarneri, Carl (2007). America in the World. Boston: McGraw-Hill. p. 180.
Dunn, James (1905). From Coal Mine Upwards: or Seventy Years of an Eventful Life. ISBN 978-1-4344-6870-3.
Bar, Michael; Leukhina, Oksana (2007). "Demographic Transition and Industrial Revolution: A Macroeconomic Investigation" (PDF). Archived from the original (PDF) on 27 November 2007. Retrieved 5 November 2007. "The decrease [in mortality] beginning in the second half of the 18th century was due mainly to declining adult mortality. Sustained decline of the mortality rates for the age groups 5–10, 10–15, and 15–25 began in the mid-19th century, while that for the age group 0–5 began three decades later". Although the survival rates for infants and children were static over this period, the birth rate & overall life expectancy increased. Thus the population grew, but the average Briton was about as old in 1850 as in 1750 (see figures 5 & 6, p. 28). Population size statistics from mortality.org put the mean age at about 26.
"Child Labour and the Division of Labour in the Early English Cotton Mills". Douglas A. Galbi. Centre for History and Economics, King's College, Cambridge CB2 1ST.
The Life of the Industrial Worker in Nineteenth-Century England, Laura Del Col, West Virginia University.
"Testimony Gathered by Ashley's Mines Commission". 2008. Retrieved 22 March 2008.
"The Life of the Industrial Worker in Nineteenth-Century England". 2008. Retrieved 22 March 2008.
"Photographs of Lewis Hine: Documentation of Child Labor". The U.S. National Archives and Records Administration.
Evatt, Herbert (2009). The Tolpuddle Martyrs. Sydney: Sydney University Press. p. 49. ISBN 978-0-586-03832-1.
"General Strike 1842". Archived from the original on 9 June 2007. Retrieved 9 June 2007. From chartists.net. Retrieved 13 November 2006.
Byrne, Richard (August 2013). "A Nod to Ned Ludd". The Baffler. 23 (23): 120–128. doi:10.1162/BFLR_a_00183. Retrieved 2 August 2020.
"Luddites in Marsden: Trials at York". Archived from the original on 26 March 2012. Retrieved 2 August 2020.
Kennedy, Paul (1987). The Rise and Fall of the Great Powers. New York: Random House. p. 149.
Beckert, Sven (2014). Empire of Cotton: A Global History. US: Vintage Books Division Penguin Random House. ISBN 978-0-375-71396-5.
Fleming, James R.; Knorr, Bethany R. "History of the Clean Air Act". American Meteorological Society. Retrieved 14 February 2006.
Leslie Tomory, "The Environmental History of the Early British Gas Industry, 1812–1830." Environmental history 17#1 (2012): 29–54.
Joel A. Tarr, "Toxic Legacy: The Environmental Impact of the Manufactured Gas Industry in the United States." Technology and culture 55#1 (2014): 107–47. online
Harold L. Platt, Shock cities: the environmental transformation and reform of Manchester and Chicago (2005) excerpt.
Brian William Clapp, An environmental history of Britain since the industrial revolution (Routledge, 2014).
Gellner, Ernest (2008). Nations and Nationalism. Cornell University Press. ISBN 9780801475009.
Alan S. Milward and S. B. Saul, The Economic Development of Continental Europe 1780-1870 (Harvard UP, 1973).
Alan Milward and Samuel Berrick Saul, The Development of the Economies of Continental Europe 1850–1914 (Harvard UP, 1977).
Chris Evans, Göran Rydén, The Industrial Revolution in Iron; The impact of British Coal Technology in Nineteenth-Century Europe Published by Ashgate Publishing, Ltd., Farnham 2005, pp. 37–38 ISBN 0-7546-3390-X.
Milward and Saul, Economic Development of Continental Europe 1780-1870 pp 292–96, 437–453.
a word from Walloon origin
Muriel Neven and Isabelle Devos, 'Breaking stereotypes', in M. Neven and I. Devos (editors), 'Recent work in Belgian Historical Demography', in Revue belge d'histoire contemporaine, XXXI, 2001, 3–4, pp. 347–59 FLWI.ugent.be Archived 29 October 2008 at the Wayback Machine
Philippe Raxhon, Le siècle des forges ou la Wallonie dans le creuset belge (1794–1914), in B. Demoulin and JL Kupper (editors), Histoire de la Wallonie, Privat, Toulouse, 2004, pp. 233–76 [246] ISBN 2-7089-4779-6
"European Route of Industrial Heritage". En.erih.net. Archived from the original on 31 July 2013. Retrieved 19 August 2013.
Michel De Coster, Les enjeux des conflits linguistiques, L'Harmattan, Paris, 2007, ISBN 978-2-296-03394-8, pp. 122–23
"Major Mining Sites of Wallonia". UNESCO WOrld Heritage List. UNESCO. Retrieved 18 March 2021.
Muriel Neven and Isabelle Devos, Breaking stereotypes, art. cit., pp. 315–16
Jean Marczewski, " Y a-t-il eu un "take-off" en France ? ", 1961, dans les Cahiers de l'ISEA
Haber 1958
Allan Mitchell, Great Train Race: Railways and the Franco-German Rivalry, 1815–1914 (2000)
Martin Moll, "Austria-Hungary" in Christine Rider, ed., Encyclopedia of the Age of the Industrial Revolution 1700–1920 (2007) pp 24-27.
David Good, The Economic Rise of the Habsburg Empire
Millward and Saul, The Development of the Economies of Continental Europe 1850-1914 pp 271–331.
Lennart SchÖn, "Proto-industrialisation and factories: Textiles in Sweden in the mid-nineteenth century." Scandinavian Economic History Review 30.1 (1982): 57-71 online.
Bengtsson, Erik; Missiaia, Anna; Olsson, Mats; Svensson, Patrick (2018). "Wealth inequality in Sweden, 1750–1900†". The Economic History Review. 71 (3): 772–794. doi:10.1111/ehr.12576. ISSN 1468-0289. S2CID 154088734.
"History". Bank of Japan. Retrieved 5 May 2015.
G.C. Allen, Short Economic History of Modern Japan (1972)
Atack, Jeremy; Passell, Peter (1994). A New Economic View of American History. New York: W.W. Norton and Co. p. 469. ISBN 978-0-393-96315-1.
Chandler Jr., Alfred D. (1993). The Visible Hand: The Management Revolution in American Business. Belknap Press of Harvard University Press. ISBN 978-0-674-94052-9.
Taylor, George Rogers (1969). The Transportation Revolution, 1815–1860. ISBN 978-0-87332-101-3.
Bagnall, William R. The Textile Industries of the United States: Including Sketches and Notices of Cotton, Woolen, Silk, and Linen Manufacturers in the Colonial Period. Vol. I. The Riverside Press, 1893.
"Made in Beverly – A History of Beverly Industry", by Daniel J. Hoisington. A publication of the Beverly Historic District Commission. 1989.
Encyclopædia Britannica (1998): Samuel Slater
Thomson, Ross (1989). The Path to Mechanized Shoe Production in the United States. Chapel Hill and London: The University of North Carolina Press. ISBN 978-0-8078-1867-1.
Morison, Elting E. (1966). Men, Machines and Modern Times. Cambridge, MA and London: The M.I.T Press.
Overton, Mar (1996). Agricultural Revolution in England: The transformation if the agrarian economy 1500–1850. Cambridge University Press. ISBN 978-0-521-56859-3.
Kreis, Steven (11 October 2006). "The Origins of the Industrial Revolution in England". Historyguide.org. Retrieved 30 January 2011.
"Scientific Revolution". Microsoft Encarta Online Encyclopedia 2009. Archived 28 October 2009 at the Wayback Machine 31 October 2009.
Baten, Jörg (2016). A History of the Global Economy. From 1500 to the Present. Cambridge University Press. pp. 13–16. ISBN 978-1-107-50718-0.
Hudson, Pat. The Industrial Revolution, Oxford University Press US. ISBN 0-7131-6531-6
Fullerton, Ronald A. (January 1988). "How Modern Is Modern Marketing? Marketing's Evolution and the Myth of the "Production Era"". The Journal of Marketing. 52 (1): 108–25. doi:10.2307/1251689. JSTOR 1251689.
"Technics & Civilization". Lewis Mumford. Retrieved 8 January 2009.
Deane, Phyllis. The First Industrial Revolution, Cambridge University Press. ISBN 0-521-29609-9 Read it
Eric Schiff, Industrialisation without national patents: the Netherlands, 1869–1912; Switzerland, 1850–1907, Princeton University Press, 1971.
Michele Boldrin and David K. Levine, Against Intellectual Monopoly, "Chapter 1, final online version January 2, 2008" (PDF). (55 KB), p. 15. Cambridge University Press, 2008. ISBN 978-0-521-87928-6
Mott-Smith, Morton (1964) [Unabridged and revised version of the book first published by D. Appleton-Century Company in 1934 under the former title: The Story of Energy]. The Concept of Energy Simply Explained. New York: Dover Publications, Inc. pp. 13–14. ISBN 978-0-486-21071-1.
Mokyr, Joel (1990). The Lever of Riches: Technological Creativity and Economic Progress. New York: Oxford University Press. pp. 40–44. ISBN 978-0-19-507477-2.
Why No Industrial Revolution in Ancient Greece? Archived 27 September 2011 at the Wayback Machine J. Bradford DeLong, Professor of Economics, University of California at Berkeley, 20 September 2002. Retrieved January 2007.
The Origins of the Industrial Revolution in England |The History Guide, Steven Kreis, 11 October 2006 – Accessed January 2007
Duchesne, Ricardo (2011). The Uniqueness of Western Civilization. Leiden: Brill. ISBN 978-90-04-23276-1.
Vries, Pier (2001). "Are Coal and Colonies Really Crucial?". Journal of World History. 2: 411.
Jackson J. Spielvogel (2009). Western Civilization: Since 1500. p. 607.
Bond, Eric; Gingerich, Sheena; Archer-Antonsen, Oliver; Purcell, Liam; Macklem, Elizabeth (17 February 2003). "The Industrial Revolution – Causes". Industrialrevolution.sea.ca. Retrieved 30 January 2011.
Temple, Robert (1986). The Genius of China: 3000 years of science, discovery and invention. New York: Simon and Schuster.Based on the works of Joseph Needham>
Merson, John (1990). The Genius That Was China: East and West in the Making of the Modern World. Woodstock, NY: The Overlook Press. ISBN 978-0-87951-397-9.A companion to the PBS Series "The Genius That Was China
"Cobb-Douglas in pre-modern Europe1 – Simulating early modern growth" (PDF). (254 KB) Jan Luiten van Zanden, International Institute of Social History/University of Utrecht. May 2005. Retrieved January 2007.
Landes, David (1999). The Wealth and Poverty of Nations. W.W. Norton & Company. ISBN 978-0-393-31888-3.
Landes, David S. (1969). The Unbound Prometheus. Press Syndicate of the University of Cambridge. pp. 20–32. ISBN 978-0-521-09418-4.
Stark, Rodney (2005). The Victory of Reason: How Christianity Led to Freedom, Capitalism and Western Success. New York: Random House Trade Paperbacks. ISBN 978-0-8129-7233-7.
Merson 1990, pp. 34–35
How Earth Made Us: Fire by Professor Iain Stewart
South Asian History Archived 27 January 2007 at the Wayback Machine – Pages from the history of the Indian subcontinent: British rule and the legacy of colonisation. Rajni-Palme Dutt India Today (Indian Edition published 1947). Retrieved January 2007.
Jones, Eric (1981). The European Miracle: Environments, Economies and Geopolitics in the History of Europe and Asia. Cambridge: Cambridge University Press. p. 119.
Mokyr, Joel (6 January 2018). Mokyr, J.: A Culture of Growth: The Origins of the Modern Economy. (eBook and Hardcover). press.princeton.edu. ISBN 9780691180960. Retrieved 9 March 2017.
Christian, David (2004). Maps of Time. Berkeley: University of California Press. pp. 390.
Stearns, Peter (1998). The Industrial Revolution in World History. Boulder, Colorado: Westview Press. p. 36.
Julian Hoppit, "The Nation, the State, and the First Industrial Revolution," Journal of British Studies (April 2011) 50#2 pp. 307–31
Kiely, Ray (November 2011). "Industrialization and Development: A Comparative Analysis". UGL Press Limited: 25–26.
Digital History; Steven Mintz. "Was slavery the engine of economic growth? Digital History". Digitalhistory.uh.edu. Archived from the original on 19 February 2014. Retrieved 30 January 2011.
Hudson, Pat (1992). The Industrial Revolution. p. 198. ISBN 978-0-7131-6531-9. Retrieved 30 January 2011.
The Royal Navy itself may have contributed to Britain's industrial growth. Among the first complex industrial manufacturing processes to arise in Britain were those that produced material for British warships. For instance, the average warship of the period used roughly 1000 pulley fittings. With a fleet as large as the Royal Navy, and with these fittings needing to be replaced every 4 to 5 years, this created a great demand which encouraged industrial expansion. The industrial manufacture of rope can also be seen as a similar factor.
Old Naval College Archived 26 June 2007 at the Wayback Machine
Barrington Moore, Jr., Social Origins of Dictatorship and Democracy: Lord and Peasant in the Making of the Modern World, pp. 29–30, Boston, Beacon Press, 1966.
Voltaire, François Marie Arouet de. (1909–1914) [1734]. "Letter VI – On the Presbyterians. Letters on the English". www.bartleby.com. The Harvard Classics. Retrieved 22 July 2017.
E.A. Wrigley, Continuity chance and change.
Hunter, Louis C. (1985). A History of Industrial Power in the United States, 1730–1930, Vol. 2: Steam Power. Charlottesville: University Press of Virginia.
Crafts, Nicholas (1 April 2011). "Explaining the first Industrial Revolution: two views" (PDF). European Review of Economic History. 15 (1): 153–68. doi:10.1017/S1361491610000201. ISSN 1361-4916.
Humphries, Jane; Schneider, Benjamin (23 May 2018). "Spinning the industrial revolution" (PDF). The Economic History Review. 72: 126–155. doi:10.1111/ehr.12693. ISSN 0013-0117. S2CID 152650710.
Stephenson, Judy Z. (13 May 2017). "'Real' wages? Contractors, workers, and pay in London building trades, 1650–1800". The Economic History Review. 71 (1): 106–32. doi:10.1111/ehr.12491. ISSN 0013-0117. S2CID 157908061.
"The Lunar Society". Archived from the original on 7 February 2008. Retrieved 7 February 2008. at Moreabout, the website of the Birmingham Jewellery Quarter guide, Bob Miles.
Foster, Charles (2004). Capital and Innovation: How Britain Became the First Industrial Nation. Northwich: Arley Hall Press. ISBN 978-0-9518382-4-2. Argues that capital accumulation and wealth concentration in an entrepreneurial culture following the commercial revolution made the industrial revolution possible, for example.
Robert Green, ed., The Weber Thesis Controversy (D.C. Heath, 1973)
Jelinski, L. W.; Graedel, T. E.; Laudise, R. A.; McCall, D. W.; Patel, C. K. (1 February 1992). "Industrial ecology: concepts and approaches". Proceedings of the National Academy of Sciences. 89 (3): 793–797. doi:10.1073/pnas.89.3.793. PMC 48326. PMID 11607253.
Albert, Michael J. (29 April 2020). "The Dangers of Decoupling: Earth System Crisis and the 'Fourth Industrial Revolution'". Global Policy. 11 (2): 245–254. doi:10.1111/1758-5899.12791 – via Wiley Online Library.
Thompson, E. P. (1967). "Time, Work-Discipline, and Industrial Capitalism". Past & Present. 38 (38): 56–97. doi:10.1093/past/38.1.56. JSTOR 649749 – via JSTOR.
Mawle, Angela (1 July 2010). "Climate change, human health, and unsustainable development". Journal of Public Health Policy. 31 (2): 272–277. doi:10.1057/jphp.2010.12. PMID 20535108.
Harvey, Fiona; Correspondent, Environment (18 August 2011). "Climate change driving species out of habitats much faster than expected". The Guardian. Retrieved 8 November 2015.
Cite error: The named reference Science2016 was invoked but never defined (see the help page).
Nuwer, Rachel (14 September 2012). "From Ancient Deforestation, a Delta Is Born". The New York Times. Retrieved 14 June 2018.
Michael Löwy and Robert Sayre, eds., Romanticism against the Tide of Modernity (Duke University Press, 2001).

    AJ George, The development of French romanticism: the impact of the industrial revolution on literature (1955)

Further reading

    Ashton, Thomas S. (1948). "The Industrial Revolution (1760–1830)". Oxford University Press. Archived from the original on 12 March 2017.
    Artzrouni, Marc (1990). "Mathematical Investigations of the Escape from the Malthusian Trap". Mathematical Population Studies. 2 (4): 269–87. doi:10.1080/08898489009525313. PMID 12283330.
    Berlanstein, Lenard R., ed. (1992). The Industrial Revolution and work in nineteenth-century Europe. London and New York: Routledge.
    Bernstein, Peter L. (1998). Against the Gods: The Remarkable Story of Risk (Reprint ed.). New York: John Wiley & Sons. pp. 135–193. ISBN 978-0471295631.
    Chambliss, William J. (editor), Problems of Industrial Society, Reading, Massachusetts: Addison-Wesley Publishing Co, 1973. ISBN 978-0-201-00958-3
    Chernow, Ron (2004). Alexander Hamilton. New York: Penguin Books. ISBN 978-0143034759. online
    Cipolla, Carlo M. The Fontana Economic History of Europe, vol. 3: The Industrial Revolution (1973)
    Cipolla, Carlo M. The Fontana Economic History of Europe: The Emergence of industrial societies vol 4 part 1 (1973) covers France, Germany, Britain, Habsburg Empire (Austria), Italy, and Low Countries. online
    Cipolla, Carlo M. The Fontana Economic History of Europe: The Emergence of industrial societies (1973) vol 4 part 2 covers topics online
    Clapham, J.H. (1930) An Economic History of Modern Britain: The Early Railway Age, 1820–1850 (2nd ed. 1930) online
    Clapham, J.H. The Economic Development of France and Germany: 1815–1914 (1921) online, a famous classic, filled with details.
    Clark, Gregory (2007). A Farewell to Alms: A Brief Economic History of the World. Princeton University Press. ISBN 978-0-691-12135-2.
    Crafts, Nicholas. "The first industrial revolution: Resolving the slow growth/rapid industrialization paradox." Journal of the European Economic Association 3.2-3 (2005): 525–534. online
    Craig, John (1953). The Mint: A History of the London Mint from A.D. 287 to 1948. Cambridge, England: Cambridge University Press. pp. 239–316. ASIN B0000CIHG7.
    Daunton, M.J. (1995). "Progress and Poverty: An Economic and Social History of Britain, 1700–1850". Oxford University Press.
    Davies, Glyn (1997) [1994]. A History of Money: From Ancient Times to the Present Day (Reprint ed.). Cardiff: University of Wales Press. pp. 283–353, 464–485. ISBN 978-0708313510.
    Dunham, Arthur Louis (1955). "The Industrial Revolution in France, 1815–1848". New York: Exposition Press.
    Gatrell, Peter (2004). "Farm to factory: a reinterpretation of the Soviet industrial revolution". The Economic History Review. 57 (4): 794. doi:10.1111/j.1468-0289.2004.00295_21.x.
    Green, Constance Mclaughlin. (1939) Holyoke Massachusetts A Case History Of The Industrial Revolution In America online
    Griffin, Emma (2010). Short History of the British Industrial Revolution. Palgrave.
    Greenspan, Alan; Wooldridge, Adrian (2018). Capitalism in America: A History. New York: Penguin Press. pp. 29–59. ISBN 978-0735222441.
    Haber, Ludwig Fritz (1958). The Chemical Industry During the Nineteenth Century: A Study of the Economic Aspect of Applied Chemistry in Europe and North America.
    Haber, Ludwig Fritz (1971). The Chemical Industry: 1900–1930: International Growth and Technological Change.
    Hunter, Louis C.; Bryant, Lynwood (1991). A History of Industrial Power in the United States, 1730–1930, Vol. 3: The Transmission of Power. Cambridge, Massachusetts: MIT Press. ISBN 978-0-262-08198-6.
    Jacob, Margaret C. (1997). "Scientific Culture and the Making of the Industrial West". Oxford: Oxford University Press.
    Kindleberger, Charles Poor (1993). A Financial History of Western Europe. Oxford University Press US. ISBN 978-0-19-507738-4.
    Kisch, Herbert (1989). "From Domestic Manufacture to Industrial Revolution The Case of the Rhineland Textile Districts". Oxford University Press.
    Kornblith, Gary. The Industrial Revolution in America (1997)
    Kynaston, David (2017). Till Time's Last Sand: A History of the Bank of England, 1694–2013. New York: Bloomsbury. pp. 50–142. ISBN 978-1408868560.
    Landes, David S. (1969). The Unbound Prometheus: Technological Change and Industrial Development in Western Europe from 1750 to the Present. Cambridge; New York: Press Syndicate of the University of Cambridge. ISBN 978-0-521-09418-4.
    Maddison, Angus (2003). "The World Economy: Historical Statistics". Paris: Organisation for Economic Co-operation and Development (OECD).
    Mantoux, Paul (1961) [1928]. "The Industrial Revolution in the Eighteenth Century" (First English translation 1928 ed.). Missing or empty |url= (help)
    Martin, Frederick (1876). The History of Lloyd's and of Marine Insurance in Great Britain. London: Macmillan and Company. pp. 161–374. ISBN 978-0341781240.
    McGraw, Thomas K. (2012). The Founders of Finance: How Hamilton, Gallatin, and Other Immigrants Forged a New Economy. Cambridge, MA: Harvard University Press. ISBN 978-0674066922.
    McNeil, Ian, ed. (1990). An Encyclopedia of the History of Technology. London: Routledge. ISBN 978-0-415-14792-7.
    Milward, Alan S. and S.B. Saul. The Development of the Economies of Continental Europe: 1850–1914 (1977)
    Milward, Alan S. and S.B. Saul. The Economic Development of Continental Europe 1780–1870 (1973)
    Mokyr, Joel (1999). "The British Industrial Revolution: An Economic Perspective". Missing or empty |url= (help)
    Olson, James S. Encyclopedia of the Industrial Revolution in America (2001)
    Pollard, Sidney (1981). "Peaceful Conquest: The Industrialization of Europe, 1760–1970". Oxford University Press.
    Rappleye, Charles (2010). Robert Morris: Financier of the American Revolution. New York: Simon & Schuster. ISBN 978-1416570912.
    Rider, Christine, ed. Encyclopedia of the Age of the Industrial Revolution, 1700–1920 (2 vol. 2007)
    Roe, Joseph Wickham (1916). English and American Tool Builders. New Haven, Connecticut: Yale University Press. LCCN 16011753.. Reprinted by McGraw-Hill, New York and London, 1926 (LCCN 27-24075); and by Lindsay Publications, Inc., Bradley, Illinois, (ISBN 978-0-917914-73-7).
    Smelser, Neil J. (1959). "Social Change in the Industrial Revolution: An Application of Theory to the British Cotton Industry". University of Chicago Press.
    Staley, David J. ed. Encyclopedia of the History of Invention and Technology (3 vol 2011), 2000pp
    Stearns, Peter N. (1998). "The Industrial Revolution in World History". Westview Press.
    Smil, Vaclav (1994). "Energy in World History". Westview Press.
    Snooks, G.D. (2000). "Was the Industrial Revolution Necessary?". London: Routledge.
    Szostak, Rick (1991). "The Role of Transportation in the Industrial Revolution: A Comparison of England and France". Montreal: McGill-Queen's University Press.
    Timbs, John (1860). Stories of Inventors and Discoverers in Science and the Useful Arts: A Book for Old and Young. Harper & Brothers.
    Toynbee, Arnold (1884). Lectures on the Industrial Revolution of the Eighteenth Century in England. ISBN 978-1-4191-2952-0. Archived from the original on 3 March 2016. Retrieved 12 February 2016.
    Uglow, Jenny (2002). "The Lunar Men: The Friends who made the Future 1730–1810". London: Faber and Faber.
    Usher, Abbott Payson (1920). "An Introduction to the Industrial History of England". University of Michigan Press.
    Whitney, David R. (1878). The Suffolk Bank. Cambridge, MA: Riverside Press. pp. 1–34.

Historiography

    Cannadine, David. "The Present and the Past in the English Industrial Revolution 1880-1980". Past & Present, no. 103, (1984), pp. 131–172. online
    Hawke, Gary. "Reinterpretations of the Industrial Revolution" in Patrick O'Brien and Roland Quinault, eds. The Industrial Revolution and British Society (1993) pp. 54–78
    McCloskey, Deirdre (2004). "Review of The Cambridge Economic History of Britain (edited by Roderick Floud and Paul Johnson)". Times Higher Education Supplement. 15 (January). Retrieved 12 February 2016.
    More, Charles (2000). "Understanding the Industrial Revolution". London: Routledge.
    Wrigley, E. Anthony. "Reconsidering the Industrial Revolution: England and Wales." Journal of Interdisciplinary History 49.01 (2018): 9–42.

External links
	Wikimedia Commons has media related to Industrial revolution.
	Wikiquote has quotations related to: Industrial Revolution
	Wikiversity quiz on this Industrial Revolution article

    Industrial Revolution at Curlie
    Internet Modern History Sourcebook: Industrial Revolution
    BBC History Home Page: Industrial Revolution
    National Museum of Science and Industry website: machines and personalities
    Factory Workers in the Industrial Revolution
        The Industrial Revolution – Articles, Video, Pictures, and Facts
    "The Day the World Took Off" Six-part video series from the University of Cambridge tracing the question "Why did the Industrial Revolution begin when and where it did."

    vte

Industrial and technological revolution

    vte

History of technology

    vte

Economy of the United Kingdom

    vte

Capitalism

    vte

History of Europe

    vte

Recessions in the United States and Commonwealth of Nations countries

    vte

Financial bubbles

    vte

Financial crises

    vte

Western world and culture
Authority control Edit this at Wikidata	

    GND: 4072790-7 HDS: 013825 LCCN: sh85065935 MA: 517468935 NARA: The NARA id meet.google.com/fwu-rnzh-ksi?authuser=0 is not valid. NDL: 00570120

    Emblem-money.svgBusiness and economics portal

Categories:

    Industrial RevolutionIndustrial historyHistory of technology18th century in technology19th century in technologyEarly Modern BritainLate modern EuropeModern history of the United KingdomRevolutions by typeTheories of history

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    View source
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons
    Wikiquote

Languages

    Alemannisch
    Català
    Dansk
    Deutsch
    Français
    Italiano
    Kiswahili
    Latina
    Português

Edit links

    This page was last edited on 11 May 2021, at 22:44 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


! Information Age
!! 
!! https://en.wikipedia.org/wiki/Information_Age

From Wikipedia, the free encyclopedia

For the album by dead prez, see Information Age (album).
"Digital Age" and "Internet Age" redirect here. For the four-piece American band, see The Digital Age. For the documentary TV series, see The Internet Age.
Computers sharing information are hallmarks of the Information Age
History of technology
By technological eras
By historical regions
By type of technology
Technology timelines
Article indices

    vte

The Information Age (also known as the Computer Age, Digital Age, or New Media Age) is a historical period that began in the mid-20th century, characterized by a rapid epochal shift from the traditional industry established by the Industrial Revolution to an economy primarily based upon information technology.[1][2][3][4] The onset of the Information Age can be associated with the development of transistor technology.[4]

According to the United Nations Public Administration Network, the Information Age was formed by capitalizing on computer microminiaturization advances,[5] which would lead to modernized information and to communication processes upon broader usage within society becoming the driving force of social evolution.[2]
Contents

    1 Overview of early developments
        1.1 Library expansion and Moore's law
        1.2 Information storage and Kryder's law
        1.3 Information transmission
        1.4 Computation
    2 Different stage conceptualizations
    3 Economics
        3.1 Jobs and income distribution
        3.2 Automation, productivity, and job gain
        3.3 Information-intensive industry
    4 Innovations
        4.1 Transistors
        4.2 Computers
        4.3 Data
        4.4 Optics
    5 See also
    6 References
    7 Further reading
    8 External links

Overview of early developments
Library expansion and Moore's law

Library expansion was calculated in 1945 by Fremont Rider to double in capacity every 16 years where sufficient space made available.[6] He advocated replacing bulky, decaying printed works with miniaturized microform analog photographs, which could be duplicated on-demand for library patrons and other institutions.

Rider did not foresee, however, the digital technology that would follow decades later to replace analog microform with digital imaging, storage, and transmission media, whereby vast increases in the rapidity of information growth would be made possible through automated, potentially-lossless digital technologies. Accordingly, Moore's law, formulated around 1965, would calculate that the number of transistors in a dense integrated circuit doubles approximately every two years.[7][8]

By the early 1980s, along with improvements in computing power, the proliferation of the smaller and less expensive personal computers allowed for immediate access to information and the ability to share and store such for increasing numbers of workers. Connectivity between computers within organizations enabled employees at different levels to access greater amounts of information.
Information storage and Kryder's law
Main articles: Data storage and Computer data storage


Hilbert & López (2011). The World’s Technological Capacity to Store, Communicate, and Compute Information. Science, 332(6025), 60–65. https://science.sciencemag.org/content/sci/332/6025/60.full.pdf

The world's technological capacity to store information grew from 2.6 (optimally compressed) exabytes (EB) in 1986 to 15.8 EB in 1993; over 54.5 EB in 2000; and to 295 (optimally compressed) EB in 2007.[9][10] This is the informational equivalent to less than one 730-megabyte (MB) CD-ROM per person in 1986 (539 MB per person); roughly four CD-ROM per person in 1993; twelve CD-ROM per person in the year 2000; and almost sixty-one CD-ROM per person in 2007.[11] It is estimated that the world's capacity to store information has reached 5 zettabytes in 2014,[12] the informational equivalent of 4,500 stacks of printed books from the earth to the sun.

The amount of digital data stored appears to be growing approx. exponentially, reminiscent of Moore's law. As such, Kryder's law prescribes that the amount of storage space available appears to be growing approximately exponentially.[13][14][15][8]
Information transmission

The world's technological capacity to receive information through one-way broadcast networks was 432 exabytes of (optimally compressed) information in 1986; 715 (optimally compressed) exabytes in 1993; 1.2 (optimally compressed) zettabytes in 2000; and 1.9 zettabytes in 2007, the information equivalent of 174 newspapers per person per day.[11]

The world's effective capacity to exchange information through two-way telecommunication networks was 281 petabytes of (optimally compressed) information in 1986; 471 petabytes in 1993; 2.2 (optimally compressed) exabytes in 2000; and 65 (optimally compressed) exabytes in 2007, the information equivalent of 6 newspapers per person per day.[11] In the 1990s, the spread of the Internet caused a sudden leap in access to and ability to share information in businesses and homes globally. Technology was developing so quickly that a computer costing $3000 in 1997 would cost $2000 two years later and $1000 the following year.
Computation

The world's technological capacity to compute information with humanly guided general-purpose computers grew from 3.0 × 108 MIPS in 1986, to 4.4 × 109 MIPS in 1993; to 2.9 × 1011 MIPS in 2000; to 6.4 × 1012 MIPS in 2007.[11] An article featured in the journal Trends in Ecology and Evolution in 2016 reported that:[12]

    [Digital technology] has vastly exceeded the cognitive capacity of any single human being and has done so a decade earlier than predicted. In terms of capacity, there are two measures of importance: the number of operations a system can perform and the amount of information that can be stored. The number of synaptic operations per second in a human brain has been estimated to lie between 10^15 and 10^17. While this number is impressive, even in 2007 humanity's general-purpose computers were capable of performing well over 10^18 instructions per second. Estimates suggest that the storage capacity of an individual human brain is about 10^12 bytes. On a per capita basis, this is matched by current digital storage (5x10^21 bytes per 7.2x10^9 people).

Different stage conceptualizations
Three stages of the Information Age

There are different conceptualizations of the Information Age. Some focus on the evolution of information over the ages, distinguishing between the Primary Information Age and the Secondary Information Age. Information in the Primary Information age was handled by newspapers, radio and television. The Secondary Information Age was developed by the Internet, satellite televisions and mobile phones. The Tertiary Information Age was emerged by media of the Primary Information Age interconnected with media of the Secondary Information Age as presently experienced.[16]
LongWavesThreeParadigms.jpg

Others classify it in terms of the well-established Schumpeterian long waves or Kondratiev waves. Here authors distinguish three different long-term metaparadigms, each with different long waves. The first focused on the transformation of material, including stone, bronze, and iron. The second, often referred to as industrial revolution, was dedicated to the transformation of energy, including water, steam, electric, and combustion power. Finally, the most recent metaparadigm aims at transforming information. It started out with the proliferation of communication and stored data and has now entered the age of algorithms, which aims at creating automated processes to convert the existing information into actionable knowledge.[17]
Economics

Eventually, Information and communication technology (ICT)—i.e. computers, computerized machinery, fiber optics, communication satellites, the Internet, and other ICT tools—became a significant part of the world economy, as the development of microcomputers greatly changed many businesses and industries.[18][19] Nicholas Negroponte captured the essence of these changes in his 1995 book, Being Digital, in which he discusses the similarities and differences between products made of atoms and products made of bits.[20] In essence, a copy of a product made of bits can be made cheaply and quickly, then expediently shipped across the country or the world at very low cost.
Jobs and income distribution

The Information Age has affected the workforce in several ways, such as compelling workers to compete in a global job market. One of the most evident concerns is the replacement of human labor by computers that can do their jobs faster and more effectively, thus creating a situation in which individuals who perform tasks that can easily be automated are forced to find employment where their labor is not as disposable.[21] This especially creates issue for those in industrial cities, where solutions typically involve lowering working time, which is often highly resisted. Thus, individuals who lose their jobs may be pressed to move up into joining "mind workers" (e.g. engineers, doctors, lawyers, teachers, professors, scientists, executives, journalists, consultants), who are able to compete successfully in the world market and receive (relatively) high wages.[22]

Along with automation, jobs traditionally associated with the middle class (e.g. assembly line, data processing, management, and supervision) have also begun to disappear as result of outsourcing.[23] Unable to compete with those in developing countries, production and service workers in post-industrial (i.e. developed) societies either lose their jobs through outsourcing, accept wage cuts, or settle for low-skill, low-wage service jobs.[23] In the past, the economic fate of individuals would be tied to that of their nation's. For example, workers in the United States were once well paid in comparison to those in other countries. With the advent of the Information Age and improvements in communication, this is no longer the case, as workers must now compete in a global job market, whereby wages are less dependent on the success or failure of individual economies.[23]

In effectuating a globalized workforce, the internet has just as well allowed for increased opportunity in developing countries, making it possible for workers in such places to provide in-person services, therefore competing directly with their counterparts in other nations. This competitive advantage translates into increased opportunities and higher wages.[24]
Automation, productivity, and job gain

The Information Age has affected the workforce in that automation and computerization have resulted in higher productivity coupled with net job loss in manufacturing. In the United States, for example, from January 1972 to August 2010, the number of people employed in manufacturing jobs fell from 17,500,000 to 11,500,000 while manufacturing value rose 270%.[25]

Although it initially appeared that job loss in the industrial sector might be partially offset by the rapid growth of jobs in information technology, the recession of March 2001 foreshadowed a sharp drop in the number of jobs in the sector. This pattern of decrease in jobs would continue until 2003,[26] and data has shown that, overall, technology creates more jobs than it destroys even in the short run.[27]
Information-intensive industry
Main article: Information industry

Industry has become more information-intensive while less labor- and capital-intensive. This has left important implications for the workforce, as workers have become increasingly productive as the value of their labor decreases. For the system of capitalism itself, the value of labor decreases, the value of capital increases.

In the classical model, investments in human and financial capital are important predictors of the performance of a new venture.[28] However, as demonstrated by Mark Zuckerberg and Facebook, it now seems possible for a group of relatively inexperienced people with limited capital to succeed on a large scale.[29]
Innovations
A visualization of the various routes through a portion of the Internet.

The Information Age was enabled by technology developed in the Digital Revolution, which was itself enabled by building on the developments of the Technological Revolution.
Transistors
Main articles: Transistor, History of the transistor, and MOSFET
Further information: Semiconductor device

The onset of the Information Age can be associated with the development of transistor technology.[4] The concept of a field-effect transistor was first theorized by Julius Edgar Lilienfeld in 1925.[30] The first practical transistor was the point-contact transistor, invented by the engineers Walter Houser Brattain and John Bardeen while working for William Shockley at Bell Labs in 1947. This was a breakthrough that laid the foundations for modern technology.[4] Shockley's research team also invented the bipolar junction transistor in 1952.[31][30] The most widely used type of transistor is the metal–oxide–semiconductor field-effect transistor (MOSFET), invented by Mohamed M. Atalla and Dawon Kahng at Bell Labs in 1960.[32] The complementary MOS (CMOS) fabrication process was developed by Frank Wanlass and Chih-Tang Sah in 1963.[33]
Computers
Main articles: Computer and History of computers
Further information: Integrated circuit, Invention of the integrated circuit, Microprocessor, and Moore's law

Before the advent of electronics, mechanical computers, like the Analytical Engine in 1837, were designed to provide routine mathematical calculation and simple decision-making capabilities. Military needs during World War II drove development of the first electronic computers, based on vacuum tubes, including the Z3, the Atanasoff–Berry Computer, Colossus computer, and ENIAC.

The invention of the transistor enabled the era of mainframe computers (1950s–1970s), typified by the IBM 360. These large, room-sized computers provided data calculation and manipulation that was much faster than humanly possible, but were expensive to buy and maintain, so were initially limited to a few scientific institutions, large corporations, and government agencies.

The germanium integrated circuit (IC) was invented by Jack Kilby at Texas Instruments in 1958.[34] The silicon integrated circuit was then invented in 1959 by Robert Noyce at Fairchild Semiconductor, using the planar process developed by Jean Hoerni, who was in turn building on Mohamed Atalla's silicon surface passivation method developed at Bell Labs in 1957.[35][36] Following the invention of the MOS transistor by Mohamed Atalla and Dawon Kahng at Bell Labs in 1959,[32] the MOS integrated circuit was developed by Fred Heiman and Steven Hofstein at RCA in 1962.[37] The silicon-gate MOS IC was later developed by Federico Faggin at Fairchild Semiconductor in 1968.[38] With the advent of the MOS transistor and the MOS IC, transistor technology rapidly improved, and the ratio of computing power to size increased dramatically, giving direct access to computers to ever smaller groups of people.

The first commercial single-chip microprocessor launched in 1971, the Intel 4004, which was developed by Federico Faggin using his silicon-gate MOS IC technology, along with Marcian Hoff, Masatoshi Shima and Stan Mazor.[39][40]

Along with electronic arcade machines and home video game consoles in the 1970s, the development of personal computers like the Commodore PET and Apple II (both in 1977) gave individuals access to the computer. But data sharing between individual computers was either non-existent or largely manual, at first using punched cards and magnetic tape, and later floppy disks.
Data
Further information: History of telecommunications, Computer memory, Computer data storage, Data compression, Internet access, and Social media

The first developments for storing data were initially based on photographs, starting with microphotography in 1851 and then microform in the 1920s, with the ability to store documents on film, making them much more compact. Early information theory and Hamming codes were developed about 1950, but awaited technical innovations in data transmission and storage to be put to full use.

Magnetic-core memory was developed from the research of Frederick W. Viehe in 1947 and An Wang at Harvard University in 1949.[41][42] With the advent of the MOS transistor, MOS semiconductor memory was developed by John Schmidt at Fairchild Semiconductor in 1964.[43][44] In 1967, Dawon Kahng and Simon Sze at Bell Labs described in 1967 how the floating gate of an MOS semiconductor device could be used for the cell of a reprogrammable ROM.[45] Following the invention of flash memory by Fujio Masuoka at Toshiba in 1980,[46][47] Toshiba commercialized NAND flash memory in 1987.[48][49]

While cables transmitting digital data connected computer terminals and peripherals to mainframes were common, and special message-sharing systems leading to email were first developed in the 1960s, independent computer-to-computer networking began with ARPANET in 1969. This expanded to become the Internet (coined in 1974), and then the World Wide Web in 1991.

MOSFET scaling, the rapid miniaturization of MOSFETs at a rate predicted by Moore's law,[50] led to computers becoming smaller and more powerful, to the point where they could be carried. During the 1980s–1990s, laptops were developed as a form of portable computer, and personal digital assistants (PDAs) could be used while standing or walking. Pagers, widely used by the 1980s, were largely replaced by mobile phones beginning in the late 1990s, providing mobile networking features to some computers. Now commonplace, this technology is extended to digital cameras and other wearable devices. Starting in the late 1990s, tablets and then smartphones combined and extended these abilities of computing, mobility, and information sharing.

Internet video was popularized by YouTube, an online video platform founded by Chad Hurley, Jawed Karim and Steve Chen in 2005, which enabled the video streaming of MPEG-4 AVC (H.264) user-generated content from anywhere on the World Wide Web.[51]

Electronic paper, which has origins in the 1970s, allows digital information to appear as paper documents.
Optics
Further information: Optical communication, Image sensor, and Optical fiber

Optical communication has played an important role in communication networks.[52] Optical communication provided the hardware basis for Internet technology, laying the foundations for the Digital Revolution and Information Age.[53]

In 1953, Bram van Heel demonstrated image transmission through bundles of optical fibers with a transparent cladding. The same year, Harold Hopkins and Narinder Singh Kapany at Imperial College succeeded in making image-transmitting bundles with over 10,000 optical fibers, and subsequently achieved image transmission through a 75 cm long bundle which combined several thousand fibers.[54]

Metal–oxide–semiconductor (MOS) image sensors, which first began appearing in the late 1960s, led to the transition from analog to digital imaging, and from analog to digital cameras, during the 1980s–1990s. The most common image sensors are the charge-coupled device (CCD) sensor and the CMOS (complementary MOS) active-pixel sensor (CMOS sensor).[55][56]
See also

    Attention economy
    Attention inequality
    Big data
    Cognitive-cultural economy
    Computer crime
    Cyberterrorism
    Cyberwarfare
    Datamation – first print magazine dedicated solely to covering information technology[57]
    Digital dark age
    Digital detox
    Digital divide
    Digital transformation
    Digital world
    Imagination age – hypothesized successor of the information age: a period in which creativity and imagination become the primary creators of economic value
    Indigo Era
    Information explosion
    Information revolution
    Information society
    Internet governance
    Netocracy
    Social Age
    Technological determinism
    Zettabyte Era
    The Hacker Ethic and the Spirit of the Information Age
    Information and communication technologies for environmental sustainability

References

Zimmerman, Kathy Ann (September 7, 2017). "History of Computers: A Brief Timeline". livescience.com.
"The History of Computers". thought.co.
"The 4 industrial revolutions". sentryo.net. February 23, 2017.
Manuel, Castells (1996). The information age : economy, society and culture. Oxford: Blackwell. ISBN 978-0631215943. OCLC 43092627.
Kluver, Randy. "Globalization, Informatization, and Intercultural Communication". un.org. Retrieved 18 April 2013.
Rider, Fredmont (1944). The Scholar and the Future of the Research Library. New York City: Hadham Press.
"Moore's Law to roll on for another decade". Retrieved 2011-11-27. "Moore also affirmed he never said transistor count would double every 18 months, as is commonly said. Initially, he said transistors on a chip would double every year. He then recalibrated it to every two years in 1975. David House, an Intel executive at the time, noted that the changes would cause computer performance to double every 18 months."
Roser, Max, and Hannah Ritchie. 2013. "Technological Progress." Our World in Data. Retrieved on 9 June 2020.
Hilbert, M.; Lopez, P. (2011-02-10). "The World's Technological Capacity to Store, Communicate, and Compute Information". Science. 332 (6025): 60–65. doi:10.1126/science.1200970. ISSN 0036-8075. PMID 21310967. S2CID 206531385.
Hilbert, Martin R. (2011). Supporting online material for the world's technological capacity to store, communicate, and compute infrormation. Science/AAAS. OCLC 755633889.
Hilbert, Martin; López, Priscila (2011). "The World's Technological Capacity to Store, Communicate, and Compute Information". Science. 332 (6025): 60–65. Bibcode:2011Sci...332...60H. doi:10.1126/science.1200970. ISSN 0036-8075. PMID 21310967. S2CID 206531385.
Gillings, Michael R.; Hilbert, Martin; Kemp, Darrell J. (2016). "Information in the Biosphere: Biological and Digital Worlds". Trends in Ecology & Evolution. 31 (3): 180–189. doi:10.1016/j.tree.2015.12.013. PMID 26777788.
Gantz, John, and David Reinsel. 2012. "The Digital Universe in 2020: Big Data, Bigger Digital Shadows, and Biggest Growth in the Far East." IDC iView. S2CID 112313325. View multimedia content.
Rizzatti, Lauro. 14 September 2016. "Digital Data Storage is Undergoing Mind-Boggling Growth." EE Times. Archived from the original on 16 September 2016.
"The historical growth of data: Why we need a faster transfer solution for large data sets." Signiant. 2020. Retrieved 9 June 2020.
Iranga, Suroshana (2016). Social Media Culture. Colombo: S. Godage and Brothers. ISBN 978-9553067432.
Hilbert, M. (2020). Digital technology and social change: The digital transformation of society from a historical perspective. Dialogues in Clinical Neuroscience, 22(2), 189–194. https://doi.org/10.31887/DCNS.2020.22.2/mhilbert
"Information Age Education Newsletter". Information Age Education. August 2008. Retrieved 4 December 2019.
Moursund, David. "Information Age". IAE-Pedia. Retrieved 4 December 2019.
"Negroponte's articles". Archives.obs-us.com. 1996-12-30. Retrieved 2012-06-11.
Porter, Michael. "How Information Gives You Competitive Advantage". Harvard Business Review. Retrieved 9 September 2015.
Geiger, Christophe (2011), "Copyright and Digital Libraries", E-Publishing and Digital Libraries, IGI Global, pp. 257–272, doi:10.4018/978-1-60960-031-0.ch013, ISBN 978-1-60960-031-0
McGowan, Robert. 1991. "The Work of Nations by Robert Reich" (book review). Human Resource Management 30(4):535–38. doi:10.1002/hrm.3930300407. ISSN 1099-050X.
Bhagwati, Jagdish N. (2005). In defense of Globalization. New York: Oxford University Press.
Smith, Fran. 5 Oct 2010. "Job Losses and Productivity Gains." Competitive Enterprise Institute.
Cooke, Sandra D. 2003. "Information Technology Workers in the Digital Economy." In Digital Economy. Economics and Statistics Administration, Department of Commerce.
Yongsung, Chang, and Jay H. Hong (2013). "Does Technology Create Jobs?". SERI Quarterly. 6 (3): 44–53. Archived from the original on 2014-04-29. Retrieved 29 April 2014.
Cooper, Arnold C.; Gimeno-Gascon, F. Javier; Woo, Carolyn Y. (1994). "Initial human and financial capital as predictors of new venture performance". Journal of Business Venturing. 9 (5): 371–395. doi:10.1016/0883-9026(94)90013-2.
Carr, David (2010-10-03). "Film Version of Zuckerberg Divides the Generations". The New York Times. ISSN 0362-4331. Retrieved 2016-12-20.
Lee, Thomas H. (2003). "A Review of MOS Device Physics" (PDF). The Design of CMOS Radio-Frequency Integrated Circuits. Cambridge University Press. ISBN 9781139643771.
"Who Invented the Transistor?". Computer History Museum. 4 December 2013. Retrieved 20 July 2019.
"1960 - Metal Oxide Semiconductor (MOS) Transistor Demonstrated". The Silicon Engine. Computer History Museum.
"1963: Complementary MOS Circuit Configuration is Invented".
Kilby, Jack (2000), Nobel lecture (PDF), Stockholm: Nobel Foundation, retrieved 15 May 2008
Lojek, Bo (2007). History of Semiconductor Engineering. Springer Science & Business Media. p. 120. ISBN 9783540342588.
Bassett, Ross Knox (2007). To the Digital Age: Research Labs, Start-up Companies, and the Rise of MOS Technology. Johns Hopkins University Press. p. 46. ISBN 9780801886393.
"Tortoise of Transistors Wins the Race - CHM Revolution". Computer History Museum. Retrieved 22 July 2019.
"1968: Silicon Gate Technology Developed for ICs". Computer History Museum. Retrieved 22 July 2019.
"1971: Microprocessor Integrates CPU Function onto a Single Chip". Computer History Museum. Retrieved 22 July 2019.
Colinge, Jean-Pierre; Greer, James C.; Greer, Jim (2016). Nanowire Transistors: Physics of Devices and Materials in One Dimension. Cambridge University Press. p. 2. ISBN 9781107052406.
"1953: Whirlwind computer debuts core memory". Computer History Museum. Retrieved 31 July 2019.
"1956: First commercial hard disk drive shipped". Computer History Museum. Retrieved 31 July 2019.
"1970: MOS Dynamic RAM Competes with Magnetic Core Memory on Price". Computer History Museum. Retrieved 29 July 2019.
Solid State Design - Vol. 6. Horizon House. 1965.
"1971: Reusable semiconductor ROM introduced". Computer History Museum. Retrieved 19 June 2019.
Fulford, Benjamin (24 June 2002). "Unsung hero". Forbes. Archived from the original on 3 March 2008. Retrieved 18 March 2008.
US 4531203 Fujio Masuoka
"1987: Toshiba Launches NAND Flash". eWeek. April 11, 2012. Retrieved 20 June 2019.
"1971: Reusable semiconductor ROM introduced". Computer History Museum. Retrieved 19 June 2019.
Sahay, Shubham; Kumar, Mamidala Jagadesh (2019). Junctionless Field-Effect Transistors: Design, Modeling, and Simulation. John Wiley & Sons. ISBN 9781119523536.
Matthew, Crick (2016). Power, Surveillance, and Culture in YouTube™'s Digital Sphere. IGI Global. pp. 36–7. ISBN 9781466698567.
S. Millman (1983), A History of Engineering and Science in the Bell System, page 10 Archived 2017-10-26 at the Wayback Machine, AT&T Bell Laboratories
The Third Industrial Revolution Occurred in Sendai, Soh-VEHE International Patent Office, Japan Patent Attorneys Association
Hecht, Jeff (2004). City of Light: The Story of Fiber Optics (revised ed.). Oxford University. pp. 55–70. ISBN 9780195162554.
Williams, J. B. (2017). The Electronics Revolution: Inventing the Future. Springer. pp. 245–8. ISBN 9783319490885.
Fossum, Eric R. (12 July 1993). Blouke, Morley M. (ed.). "Active pixel sensors: are CCDs dinosaurs?". SPIE Proceedings Vol. 1900: Charge-Coupled Devices and Solid State Optical Sensors III. International Society for Optics and Photonics. 1900: 2–14. Bibcode:1993SPIE.1900....2F. CiteSeerX 10.1.1.408.6558. doi:10.1117/12.148585. S2CID 10556755.

    "Newspapers News and News Archive Resources: Computer and Technology Sources". Temple University. Retrieved 9 September 2015.

Further reading

    Oliver Stengel et al. (2017). Digitalzeitalter - Digitalgesellschaft, Springer ISBN 978-3658117580
    Mendelson, Edward (June 2016). In the Depths of the Digital Age, The New York Review of Books
    Bollacker, Kurt D. (2010) Avoiding a Digital Dark Age, American Scientist, March–April 2010, Volume 98, Number 2, p. 106ff
    Castells, Manuel. (1996–98). The Information Age: Economy, Society and Culture, 3 vols. Oxford: Blackwell.
    Gelbstein, E. (2006) Crossing the Executive Digital Divide. ISBN 99932-53-17-0

External links
	Wikibooks has a book on the topic of: The Information Age
	Wikiquote has quotations related to: Information Age
	Wikimedia Commons has media related to Information Age.

    Articles on the impact of the Information Age on business – at Information Age magazine
    Beyond the Information Age by Dave Ulmer
    Information Age Anthology Vol I by Alberts and Papp (CCRP, 1997) (PDF)
    Information Age Anthology Vol II by Alberts and Papp (CCRP, 2000) (PDF)
    Information Age Anthology Vol III by Alberts and Papp (CCRP, 2001) (PDF)
    Understanding Information Age Warfare by Alberts et al. (CCRP, 2001) (PDF)
    Information Age Transformation by Alberts (CCRP, 2002) (PDF)
    The Unintended Consequences of Information Age Technologies by Alberts (CCRP, 1996) (PDF)
    History & Discussion of the Information Age
    Science Museum - Information Age

    Crystal Clear app linneighborhood.svgInternet portalTelecom-icon.svgTechnology portal

    vte

Computer science

    vte

Western world and culture
Categories:

    Information AgeDigital mediaContemporary historyHistorical erasPostmodernismCultural trends

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons
    Wikiquote

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    اردو
    中文

Edit links

    This page was last edited on 19 April 2021, at 14:00 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


Learning and innovation skills: critical thinking and problem solving, communications and collaboration, creativity and innovation Digital literacy skills: information literacy, media literacy, Information and communication technologies (ICT) literacy Career and life skills: flexibility and adaptability, initiative and self-direction, social and cross-cultural interaction, productivity and accountability






! Jet Age

!! https://en.wikipedia.org/wiki/Jet_Age

From Wikipedia, the free encyclopedia

For other uses, see Jet Age (disambiguation).
	
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Jet Age" – news · newspapers · books · scholar · JSTOR (September 2014) (Learn how and when to remove this template message)
The de Havilland Comet was the first commercial jet airliner and began service on 9 January 1951.
History of technology
By technological eras
By historical regions
By type of technology
Technology timelines
Article indices

    vte

The Jet Age is a period in the history of aviation defined by the advent of aircraft powered by turbine engines, and by the social change this brought about.

Jet airliners were able to fly much higher, faster, and farther than older piston‑powered propliners, making transcontinental and intercontinental travel considerably faster and easier: for example, aircraft leaving North America and crossing the Atlantic Ocean (and later, the Pacific Ocean) could now fly to their destinations non-stop, making much of the world accessible within a single day's travel for the first time. Since large jetliners could also carry more passengers than piston-powered airliners, air fares also declined (relative to inflation), so people from a greater range of socioeconomic classes could afford to travel outside their own countries.

Besides the pure jet, the turbine driven propeller engines offered improvements of the piston engine delivering a smoother ride and better fuel efficiency. One exception to jet-powered domination by large airliners was the contra-rotating propellers turboprop design that powered the Tu-114 (first flight 1957). This airliner was able to match or even exceed the speed, capacity and range of contemporary jets; however, the use of such powerplants in large airframes was totally restricted to the military after 1976.

The introduction of the Concorde supersonic transport (SST) airliner to regular service in 1976 was expected to bring similar social changes, but the aircraft never found commercial success. After two and a half decades of service, a fatal crash near Paris in July 2000 and other factors eventually caused Concorde flights to be discontinued in 2003. This was the only loss of an SST in civilian service. Only one other SST design was used in a civilian capacity, the Soviet era Tu-144, but it was soon withdrawn due to high maintenance and other issues. McDonnell Douglas, Lockheed and Boeing were three U.S. manufacturers that had originally planned to develop various SST designs since the 1960s, but these projects were eventually abandoned for various developmental, cost, and other practical reasons.
Contents

    1 Origins
    2 Civil aviation
    3 Military aviation
    4 See also
    5 References

Origins

The term "Jet Age" was coined in the late 1940s.[1] At the time, the only jet-powered aircraft in production were military types, most of which were fighters. The expression reflects the recognition that the jet engine had effected, or would soon, a profound change in aeronautics and aviation.

One view is that the jet age began with the invention of the jet engine in the 1930s and 1940s.[2] In the history of military aviation it began in 1944 with the introduction into service of the Arado Ar 234 reconnaissance bomber and the Messerschmitt Me 262 fighter during World War II.[3][4] In commercial aviation the jet age was introduced to Britain in 1952 with the first scheduled flight of the de Havilland Comet airliner and to America later in the decade with the first American-built jet airliners.[5][6]
Civil aviation

The British de Havilland Comet was the first jet airliner to fly (1949), the first in service (1952), and the first to offer a regular transatlantic service (1958). One hundred and fourteen of all versions were built. However, the first jet airliner to provide a sustained and dependable service was the Soviet Tupolev Tu-104 (201 built) which was the only jet airliner in operation worldwide between 1956 and 1958 (the Comet having been withdrawn in 1954 due to structural failure issues). The Comet and Tu-104 were later outstripped in production by the American Boeing 707 (which entered service in 1958) and Douglas DC-8, which joined it in the skies over the next few years. Other types of the period included the French Sud Aviation Caravelle.

When the Boeing 707 began service on the New York to London route in 1958, this became the first year that more trans-Atlantic passengers traveled by air than by ship. Also in 1958, Frank Sinatra sang the popular song Come Fly with Me and was a major hit for him. In 1965, Paramount Pictures released the movie Boeing Boeing about two bachelors who lived in Paris who shared a bachelor pad where they dated stewardesses who are assigned to international routes on non-intersecting flight schedules so that only one is in the country at any given time.

As the number of passengers soared, it became impractical to increase the number of aircraft flying from the major hub airports. International airports like that of Orly Airport in Paris, France would construct terminals around bag-check and customs processing efficiency in response to rising passenger numbers.[7] Instead, designers created even larger widebody airliners and the engine manufacturers responded with larger, more powerful and also more fuel-efficient engines. The first "jumbo jet" was the Boeing 747, and it both increased airport passenger capacity and reduced the cost of air travel, further accelerating the social changes brought about by the Jet Age.
Military aviation

Military aviation had entered the jet age somewhat earlier, during the closing stages of World War II. In the early postwar years, the increasing use of jet aircraft had little significant impact, serving mainly to continue the slow but steady improvements in performance seen in the past. Supersonic flight brought about a step change in aircraft performance. The Bell X-1, first to break the sound barrier in level flight, was an experimental rocket-powered type, and production jets which followed it into service could fly little faster. The first jet aircraft designed from the outset for supersonic flight was the British Fairey Delta 2. On March 10, 1956 it became the first aircraft to fly faster than 1,000 miles per hour, heralding an era of "fast jets" typically limited to a speed of Mach 2.2 by the engineering materials available. As jets became faster, their armament changed from guns to missiles. Avionics systems became more complex with radar, fire-control and other systems. Aircraft became larger and more expensive, and so were required to do more to make them economical. All this profoundly affected the nature of military strategy during the Cold War.
See also

    Environmental impact of aviation
    Jet set

References

"The Story goes on" (PDF). Retrieved January 25, 2020.
"History of flight | aviation". Encyclopedia Britannica. Retrieved 2020-01-26.
"military aircraft | Types, History, & Development". Encyclopedia Britannica. Retrieved 2020-01-26.
Green, W.; "Warplanes of the Third Reich", Macdonald and Jane's (1970).
"Sixty years of the jet age". Flight Global. Archived from the original on February 1, 2014.
"The Jet Age, 1958 – today," America by air, Smithsonian national Air and Space Museum.[1]

    Schwartz, Vanessa R. (2014-12-01). "Dimanche à Orly: The Jet-Age Airport and the Spectacle of Technology between Sky and Earth". French Politics, Culture & Society. 32 (3): 24–44. doi:10.3167/fpcs.2014.320302. ISSN 1537-6370.

    vte

History of aviation

    vte

History of technology
Categories:

    History of aviationHistorical eras20th century

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Ελληνικά
    Español
    Français
    한국어
    Svenska

Edit links

    This page was last edited on 13 May 2021, at 22:06 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki




! Kary Mullis

!! https://en.wikipedia.org/wiki/Kary_Mullis


! Autobiography: "Dancing Naked In The Mind Field" https://www.pdfdrive.com/dancing-naked-in-the-mind-field-d193451784.html



From Wikipedia, the free encyclopedia

! Kary Banks Mullis (December 28, 1944 – August 7, 2019) was an American biochemist. In recognition of his invention of the polymerase chain reaction (PCR) technique,  https://en.wikipedia.org/wiki/Polymerase_chain_reaction  he shared the 1993 Nobel Prize in Chemistry with Michael Smith[4] and was awarded the Japan Prize in the same year. His invention became a central technique in biochemistry and molecular biology, described by The New York Times as "highly original and significant, virtually dividing biology into the two epochs of before PCR and after PCR."[5]


Contents

Kary Mullis
Kary Mullis.jpg
Mullis in 2006
Born	Kary Banks Mullis

December 28, 1944
Lenoir, North Carolina, U.S.
Died	August 7, 2019 (aged 74)
Newport Beach, California, U.S.[1][2]
Nationality	American
Alma mater	Georgia Institute of Technology (BS, 1966)
University of California, Berkeley (PhD, 1973)
Known for	Invention of polymerase chain reaction
Awards	William Allan Award (1990)
Robert Koch Prize (1992)
Nobel Prize in Chemistry (1993)
Japan Prize (1993)[3]
Scientific career
Fields	Molecular biology
Thesis	Schizokinen: structure and synthetic work (1973)
Doctoral advisor	J. B. Neilands



Kary Banks Mullis (December 28, 1944 – August 7, 2019) was an American biochemist. In recognition of his invention of the polymerase chain reaction (PCR) technique, he shared the 1993 Nobel Prize in Chemistry with Michael Smith[4] and was awarded the Japan Prize in the same year. His invention became a central technique in biochemistry and molecular biology, described by The New York Times as "highly original and significant, virtually dividing biology into the two epochs of before PCR and after PCR."[5]
Contents



    1 Early life
    2 Career
        2.1 PCR and other inventions
        2.2 Accreditation of the PCR technique
    3 Views on HIV/AIDS
    4 Use of hallucinogens
    5 Personal life
    6 Publications and books
    7 Awards and honors
    8 See also
    9 References
    10 Further reading
    11 External links
        11.1 Interviews

Early life

Mullis was born in Lenoir, North Carolina, near the Blue Ridge Mountains,[6] on December 28, 1944. His family had a background in farming in this rural area. As a child, Mullis said, he was interested in observing organisms in the countryside.[7] He grew up in Columbia, South Carolina,[7] where he attended Dreher High School,[8] graduating in the class of 1962. His interest in chemistry started when he learned how to chemically synthesize and build solid fuel propulsion rockets as a high school student during the 1950s.[9]

He earned a B.S. in chemistry[6] from the Georgia Institute of Technology in Atlanta in 1966, during which time he married his first wife and started a business.[10] He earned his Ph.D. in 1973 in biochemistry at the University of California, Berkeley, in J. B. Neilands' laboratory, which focused on synthesis and structure of bacterial iron transporter molecules.[11] Although he published a sole-author paper in Nature in the field of astrophysics in 1968, he struggled to pass his oral exams (with a colleague recalling that "he didn’t know general biochemistry"), and his dissertation was only accepted after several friends pitched in to "cut all the whacko stuff out of it" while his advisor lobbied the committee to reconsider its initial decision.[12][13]

Following his graduation, Mullis completed postdoctoral fellowships in pediatric cardiology at the University of Kansas Medical Center (1973-1977) and pharmaceutical chemistry at the University of California, San Francisco (1977-1979).[14]
Career

After receiving his doctorate, Mullis briefly left science to write fiction before accepting the University of Kansas fellowship.[10] During his postdoctoral work, he managed a bakery for two years.[5] Mullis returned to science at the encouragement of Berkeley friend and colleague Thomas White, who secured Mullis' UCSF position and later helped Mullis land a position with the biotechnology company Cetus Corporation of Emeryville, California.[7][5] Despite little experience in molecular biology, Mullis worked as a DNA chemist at Cetus for seven years, ultimately serving as head of the DNA synthesis lab under White, then the firm's director of molecular and biological research; it was there, in 1983, that Mullis invented the Polymerase chain reaction (PCR).[15]

Mullis acquired a reputation for erratic behavior at Cetus, once threatening to bring a gun to work; he also engaged in "frequent lovers' quarrels" with his then-girlfriend (a fellow chemist at the company) and "nearly came to blows with another scientist" at a staff party.[16] According to White, "It definitely put me in a tough spot. His behavior was so outrageous that the other scientists thought that the only reason I didn't fire him outright was that he was a friend of mine."[17]

After resigning from Cetus in 1986, Mullis served as director of molecular biology for Xytronyx, Inc. in San Diego for two years. While inventing a UV-sensitive ink at Xytronyx, he became skeptical of the existence of the ozone hole.

Thereafter, Mullis worked intermittently as a consultant for multiple corporations and institutions on nucleic acid chemistry and as an expert witness specializing in DNA profiling.[14][5] While writing a National Institutes of Health grant progress report on the development of a human immunodeficiency virus (HIV) test for Specialty Labs, he became skeptical that HIV was the cause of acquired immunodeficiency syndrome (AIDS).[18] In 1992, Mullis founded a business to sell pieces of jewelry containing the amplified DNA of deceased famous people such as Elvis Presley and Marilyn Monroe.[19][20] That year, he also founded Atomic Tags in La Jolla, California. The venture sought to develop technology using atomic-force microscopy and bar-coded antibodies tagged with heavy metals to create highly multiplexed, parallel immunoassays.

Mullis was a member of the USA Science and Engineering Festival's Advisory Board.[21] In 2014, he was named a distinguished researcher at the Children's Hospital Oakland Research Institute in Oakland, California.[22]
PCR and other inventions
Main articles: Taq Polymerase and History of polymerase chain reaction

In 1983, Mullis was working for Cetus Corporation as a chemist.[10] While driving in the vicinity of his country home in Mendocino County with his girlfriend, who also was a chemist at Cetus, he had the idea to use a pair of primers to bracket the desired DNA sequence and to copy it using DNA polymerase; a technique that would allow rapid amplification of a small stretch of DNA and become a standard procedure in molecular biology laboratories.[10] Longtime professional benefactor and supervisor Thomas White reassigned Mullis from his usual projects to concentrate on PCR full-time after the technique was met with skepticism by their colleagues.[10][23] Mullis succeeded in demonstrating PCR on December 16, 1983, but the staff remained circumspect as he continued to produce ambiguous results amid alleged methodological problems, including a perceived lack of "appropriate controls and repetition."[10][24] In his Nobel Prize lecture, he remarked that the December 16 breakthrough did not make up for his girlfriend breaking up with him: "I was sagging as I walked out to my little silver Honda Civic. Neither [assistant] Fred, empty Beck's bottles, nor the sweet smell of the dawn of the age of PCR could replace Jenny. I was lonesome."[10]

Other Cetus scientists who were regarded as "top-notch experimentalists",[25] including Randall Saiki, Henry Erlich, and Norman Arnheim, were placed on parallel PCR projects to work on determining if PCR could amplify a specific human gene (betaglobin) from genomic DNA. Saiki generated the needed data and Erlich authored the first paper to include utilization of the technique,[5] while Mullis was still working on the paper that would describe PCR itself.[10] Mullis' 1985 paper with Saiki and Erlich, "Enzymatic Amplification of β-globin Genomic Sequences and Restriction Site Analysis for Diagnosis of Sickle Cell Anemia" — the polymerase chain reaction invention (PCR) — was honored by a Citation for Chemical Breakthrough Award from the Division of History of Chemistry of the American Chemical Society in 2017.[26][27]

A drawback of the technique was that the DNA polymerase in the reaction was destroyed by the high heat used at the start of each replication cycle and had to be replaced. In 1986, Saiki started to use Thermophilus aquaticus (Taq) DNA polymerase to amplify segments of DNA. The Taq polymerase was heat resistant and only needed to be added to the reaction once, making the technique dramatically more affordable and subject to automation. This modification of Mullis' invention revolutionized biochemistry, molecular biology, genetics, medicine, and forensics. According to University of California, Berkeley biologist David Bilder, "PCR revolutionized everything. It really superpowered molecular biology—which then transformed other fields, even distant ones like ecology and evolution. … It’s impossible to overstate PCR’s impact. The ability to generate as much DNA of a specific sequence as you want, starting from a few simple chemicals and some temperature changes—it’s just magical."[28] Although he received a $10,000 bonus from Cetus for the invention, the company's later sale of the patent to Roche Molecular Systems for $300 million would lead Mullis to condemn White and members of the parallel team as "vultures."[10][29]

Mullis also invented a UV-sensitive plastic that changes color in response to light.

He founded Altermune LLC in 2011 to pursue new ideas on the immune system.[30] Mullis described the company's novel technology in a presentation:

    It is a method using specific synthetic chemical linkers to divert an immune response from its nominal target to something completely different which you would right now like to be temporarily immune to. Let's say you just got exposed to a new strain of the flu. You're already immune to alpha-1,3-galactosyl-galactose bonds. All humans are. Why not divert a fraction of those antibodies to the influenza strain you just picked up? A chemical linker synthesized with an alpha-1,3-gal-gal bond on one end and a DNA aptamer devised to bind specifically to the strain of influenza you have on the other end will link anti-alpha-Gal antibodies to the influenza virus and presto!--you have fooled your immune system into attacking the new virus.[6][31]

In a TED Talk, Mullis describes how the US Government paid $500,000 for Mullis to use this new technology against Anthrax, which worked. The treatment was 100% effective, compared to the previous Anthrax treatment which was 40% effective. [31]

Another proof-of-principle of this technology, re-targeting pre-existing antibodies to the surface of a pathogenic strep bacteria using an alpha-gal modified aptamer ("alphamer"), was published in 2015 in collaboration with scientists at the University of California, San Diego.[32][33] Mullis was inspired to fight this particular strep bacteria because it had killed his friend.[31]
Accreditation of the PCR technique

A concept similar to that of PCR had been described before Mullis' work. Nobel laureate H. Gobind Khorana and Kjell Kleppe, a Norwegian scientist, authored a paper 17 years earlier describing a process they termed "repair replication" in the Journal of Molecular Biology.[34] Using repair replication, Kleppe duplicated and then quadrupled a small synthetic molecule with the help of two primers and DNA polymerase. The method developed by Mullis used repeated thermal cycling, which allowed the rapid and exponential amplification of large quantities of any desired DNA sequence from an extremely complex template. Later a heat-stable DNA polymerase was incorporated into the process.

His co-workers at Cetus, who were embittered by his abrupt departure from the company,[10] contested that Mullis was solely responsible for the idea of using Taq polymerase in PCR. However, other scientists have written that the "full potential [of PCR] was not realized" until Mullis' work in 1983,[35] and that Mullis' colleagues failed to see the potential of the technique when he presented it to them.[19] As a result, some controversy surrounds the balance of credit that should be given to Mullis versus the team at Cetus.[5] In practice, credit has accrued to both the inventor and the company (although not its individual workers) in the form of a Nobel Prize and a $10,000 Cetus bonus for Mullis and $300 million for Cetus when the company sold the patent to Roche Molecular Systems. After DuPont lost out to Roche on that sale, the company unsuccessfully disputed Mullis' patent on the alleged grounds that PCR had been previously described in 1971.[10] Mullis and Erlich took Cetus' side in the case, and Khorana refused to testify for DuPont; the jury upheld Mullis' patent in 1991.[10] However, in February 1999, the patent of Hoffman-La Roche (United States Patent No. 4,889,818) was found by the courts to be unenforceable, after Dr. Thomas Kunkel testified in the case Hoffman-La Roche v. Promega Corporation[36] on behalf of the defendants (Promega Corporation) that "prior art" (i.e. articles on the subject of Taq polymerase published by other groups prior to the work of Gelfand and Stoffel, and their patent application regarding the purification of Taq polymerase) existed, in the form of two articles, published by Alice Chien et al. in 1976,[37] and A. S. Kaledin et al. in 1980.[38]

The anthropologist Paul Rabinow wrote a book on the history of the PCR method in 1996 (titled Making PCR) in which he discussed whether Mullis "invented" PCR or "merely" came up with the concept of it. Rabinow, a Foucault scholar interested in issues of the production of knowledge, used the topic to argue against the idea that scientific discovery is the product of individual work, writing, "Committees and science journalists like the idea of associating a unique idea with a unique person, the lone genius. PCR is thought by some to be an example of teamwork, but by others as the genius of one who was smart enough to put things together which were present to all, but overlooked. For Mullis, the light bulb went off, but for others it did not. This is consistent with the idea, that the prepared (educated) mind who is careful to observe and not overlook, is what separates the genius scientist from his many also smart scientists. The proof is in the fact that the person who has the light bulb go off never forgets the "Ah!" experience, while the others never had this photochemical reaction go off in their brains."[39]
Views on HIV/AIDS

Mullis was quoted saying "the never-ending quest for more grants and staying with established dogmas" has hurt science.[10] He believed that "science is being practiced by people who are dependent on being paid for what they are going to find out," not for what they actually produce.[10]

Mullis wrote that he began to question the AIDS consensus while writing a NIH grant progress report and being unable to find a peer-reviewed reference that HIV was the cause of AIDS.[18][40] He published an alternative theory of AIDS in 1994,[41] and questioned the scientific validity of the link between HIV and AIDS, leading some to label him an "AIDS denialist."[42][43] Mullis has been criticized for his association with HIV skeptic Peter Duesberg,[44] claiming that AIDS is an arbitrary diagnosis used when HIV antibodies are found in a patient's blood.[45] In 2006, Mullis wrote the foreword to the book What If Everything You Thought You Knew About AIDS Was Wrong? by Christine Maggiore,[40] an HIV-positive AIDS denialist whose 3-year-old daughter died of AIDS-related pneumonia in 2005, and herself died of an AIDS-related illness in 2008.[46] According to journalist Coby McDonald, Mullis' HIV skepticism influenced Thabo Mbeki's denialist policymaking throughout his tenure as president of South Africa from 1999 to 2008, contributing to as many as 330,000 unnecessary deaths.[47] An article in the Skeptical Inquirer described Mullis as an "AIDS denialist with scientific credentials [who] has never done any scientific research on HIV or AIDS."[48] However, he consulted for Specialty Labs, in Santa Monica, developing a nucleic acid based HIV test. Seth Kalichman, AIDS researcher and author of Denying AIDS, "[admits] that it seems odd to include a Nobel laureate among the who's who of AIDS pseudoscientists".[49] In 2010, Mullis gave a talk at Google at which he was asked about his controversial views on AIDS and HIV. Mullis said "I'm come to the conclusion... that the thing that causes AIDS is not a species of the retroviridae, it's the whole genus. The people who get sick have a whole lot of different versions...that's my feeling."[50]
Use of hallucinogens

Mullis practiced clandestine chemistry throughout his graduate studies, specializing in the synthesis of LSD; according to White, "I knew he was a good chemist because he'd been synthesizing hallucinogenic drugs at Berkeley."[51] He detailed his experiences synthesizing and testing various psychedelic amphetamines and a difficult trip on DET in his autobiography.[18] In a Q&A interview published in the September 1994 issue of California Monthly, Mullis said, "Back in the 1960s and early 1970s I took plenty of LSD. A lot of people were doing that in Berkeley back then. And I found it to be a mind-opening experience. It was certainly much more important than any courses I ever took."[52][verification needed] During a symposium held for centenarian Albert Hofmann, Hofmann said Mullis had told him that LSD had "helped him develop the polymerase chain reaction that helps amplify specific DNA sequences".[53]
Personal life

Known for his quick wit and colorful stories, Mullis enjoyed surfing and playing the guitar.[54] He married four times,[10] and had a total of three children by two of his wives. At the time of his death, he had two grandchildren and was survived by his fourth wife, Nancy Cosgrove Mullis. Mullis died of pneumonia[1] on August 7, 2019 at age 74 in Newport Beach, California.[2]
Publications and books

    Mullis, Kary (1968). "Cosmological Significance of Time Reversal". Nature. 218 (5142): 663–664. Bibcode:1968Natur.218..663M. doi:10.1038/218663b0. S2CID 4151884.
    Mullis, K.F.; Faloona, F.; Scharf, S.; Saiki, R.; Horn, G.; Erlich, H. (1986). "Specific enzymatic amplification of DNA in vitro: The polymerase chain reaction". Cold Spring Harbor Symposia on Quantitative Biology. 51: 263–273. doi:10.1101/sqb.1986.051.01.032. PMID 3472723.
    K. Mullis, 1990, The unusual origin of the polymerase chain reaction. Scientific American, April 56–65.
    The Polymerase Chain Reaction, 1994, co-edited Francious Ferre and Richard A. Gibbs (Basel: Birkhauser) ISBN 0817637508 ISBN 978-0817637507.
    Mullis, Kary B. (1995). "A hypothetical disease of the immune system that may bear some relation to the Acquired Immune Deficiency Syndrome". Genetica. 95 (1–3): 195–197. doi:10.1007/BF01435010. PMID 7744261. S2CID 28158163.
    Mullis' 1998 humorous autobiography Dancing Naked in the Mind Field (ISBN 978-0679774006), gives his account of the commercial development of PCR, as well as providing insights into his opinions and experiences. In the book, Mullis chronicles his romantic relationships, use of LSD, synthesis and self-testing of novel psychoactive substances, belief in astrology and an encounter with an extraterrestrial in the form of a fluorescent raccoon.

Awards and honors

    1990 – William Allan Memorial Award of the American Society of Human Genetics,[55] Preis Biochemische Analytik of the German Society of Clinical Chemistry and Boehringer Mannheim[56]
    1991 – National Biotechnology Award,[57] Gairdner Award,[57] R&D Scientist of the Year,[57] John Scott Award of the City Trusts of Philadelphia[58]
    1992 – California Scientist of the Year Award[57]
    1992 – Robert Koch Prize[59]
    1993 – Nobel Prize in Chemistry, Japan Prize,[3] Thomas A. Edison Award[57]
    1994 – Honorary degree of Doctor of Science from the University of South Carolina[22]
    1994 – Golden Plate Award of the American Academy of Achievement[60]
    1998 – Inducted into the National Inventors Hall of Fame,[61] Ronald H. Brown American Innovator Award[62]
    2004 – Honorary degree in Pharmaceutical Biotechnology from the University of Bologna, Italy[63]
    2010 – Honorary degree of Doctor honoris causa in the field of biological sciences from Masaryk University, Czech Republic[64]

See also
Unbalanced scales.svg
	
The neutrality of this section is disputed. Relevant discussion may be found on the talk page. Please do not remove this message until conditions to do so are met. (September 2019) (Learn how and when to remove this template message)

    House of Numbers
    Luc Montagnier – Nobel prize-winning HIV researcher
    Nobel Prize controversies

References

"Nobel Winner Kary Banks Mullis, Who Revolutionized DNA Research, Dies in O.C." MyNewsLA.com. August 8, 2019. Retrieved August 11, 2019.
Dclark, Debbie (August 9, 2019). "Nobel Prize-winning chemist who grew up in SC capital dies at 74". The Post and Courier. postandcourier.com. Retrieved August 9, 2019.
Laureates of the Japan Prize. japanprize.jp
Shampo, M. A.; Kyle, R. A. (2002). "Kary B. Mullis – Nobel Laureate for procedure to replicate DNA". Mayo Clinic Proceedings. 77 (7): 606. doi:10.4065/77.7.606. PMID 12108595.
Wade, Nicholas (September 15, 1998), "Scientist at Work/Kary Mullis; After the 'Eureka', a Nobelist Drops Out", The New York Times
"Autobiography". Nobel prize. March 21, 1998. Retrieved July 27, 2010.
Shmaefsky, Brian Robert (October 30, 2006). Biotechnology 101. Greenwood Press. p. 184. ISBN 978-0-313-33528-0. Retrieved July 27, 2010. "kary mullis."
Kary Mullis (December 8, 1993). "Nobel Lecture – The Polymerase Chain Reaction". nobelprize.org.
Kary Mullis: Play! Experiment! Discover! | TED Talk. TED.com. Retrieved on May 9, 2016.
Yoffe, Emily (July 1994), Is Kary Mullis God? Nobel Prize winner's new life, 122, Esquire, pp. 68–75
Mullis, Kary Banks (1973). "Schizokinen: Structure and Synthetic Work". ProQuest. Retrieved July 6, 2017.
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
MULLIS, KARY (1968). "Cosmological Significance of Time Reversal". Nature. 218 (5142): 663–664. Bibcode:1968Natur.218..663M. doi:10.1038/218663b0. ISSN 0028-0836. S2CID 4151884.
http://www.karymullis.com/pdf/karymullis-cv.pdf
"The Economist". March 13, 2004. Retrieved July 27, 2010.
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
Mullis, K (1998). Dancing Naked in the Mind Field. Vintage Books. pp. 115–18, 143–53. ISBN 978-0-679-44255-4.
Gross, Michael (January 24, 2001). Life on the Edge: Amazing Creatures Thriving in Extreme Environments by Michael Gross. ISBN 978-0-7382-0445-1. Retrieved July 27, 2010.
Andrews, Lori; Nelkin, Dorothy (1998). "The Hastings Center Report". Questia: 30. Retrieved July 27, 2010.
"Advisors". USA science festival. Archived from the original on April 21, 2010. Retrieved July 27, 2010.
Dr. Kary Banks Mullis. Karymullis.com. Retrieved on May 9, 2016.
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
"Citations for Chemical Breakthrough Awards 2017 Awardees". Division of the History of Chemistry. Retrieved March 12, 2018.
Saiki, R.; Scharf, S; Faloona, F; Mullis, K.; Horn, G.; Erlich, H.; Arnheim, N (December 20, 1985). "Enzymatic amplification of beta-globin genomic sequences and restriction site analysis for diagnosis of sickle cell anemia". Science. 230 (4732): 1350–1354. Bibcode:1985Sci...230.1350S. doi:10.1126/science.2999980. PMID 2999980.
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
Loxbridge and Dr Kary Mullis Announce the Formation of Altermune Technologies with $7m Seed Investment. Archived
"Kary Mullis' next-gen cure for killer infections | Video on". Ted.com. February 2009. Retrieved July 27, 2010.
Buschman, Heather (May 6, 2015). "Molecular Homing Beacon Redirects Human Antibodies to Fight Pathogenic Bacteria" (Press release). University of California, San Diego. Retrieved July 6, 2017.
Kristian, SA; Hwang, JH; Hall, B; Leire, E; Iacomini, J; Old, R; Galili, U; Roberts, C; Mullis, KB; Westby, M; Nizet, V (2015). "Retargeting pre-existing human antibodies to a bacterial pathogen with an alpha-Gal conjugated aptamer". J. Mol. Med. 93 (6): 619–31. doi:10.1007/s00109-015-1280-4. PMC 4469262. PMID 25940316.
Kleppe, K.; Ohtsuka, E.; Kleppe, R.; Molineux, I.; Khorana, H. G. (1971). "Studies on polynucleotides *1, *2XCVI. Repair replication of short synthetic DNA's as catalyzed by DNA polymerases". Journal of Molecular Biology. 56 (2): 341–361. doi:10.1016/0022-2836(71)90469-4. PMID 4927950.
Khudyakov, Yury E.; Fields, Howard A. (2003). Artificial DNA: Methods and Applications by Yury E. Khudyakov, Howard A. Fields. ISBN 978-0-8493-1426-1. Retrieved July 27, 2010.
United States District Court, N.D. California. (July 26, 2001). "Hoffmann-La Roche, Inc. v. Promega Corporation, (N.D.Cal. 2001)". Casemine. Retrieved April 8, 2018.
Chien, A.; Edgar, D.B.; Trela, J.M. (1976). "Deoxyribonucleic acid polymerase from the extreme thermophile Thermus aquaticus". J. Bacteriol. 127 (3): 1550–1557. doi:10.1128/jb.127.3.1550-1557.1976. PMC 232952. PMID 8432.
Kaledin, A.S.; Sliusarenko, A.G.; Gorodetskii, S.I. (1980). "Isolation and properties of DNA polymerase from extreme thermophylic bacteria Thermus aquaticus YT-1". Biokhimiia. 45 (4): 644–651. PMID 7378495.
Richard Bilsker. "Ethnography of a Nobel Prize". Hyle.org. Retrieved July 27, 2010.
Maggiore C (2006). What If Everything You Thought You Knew About AIDS Was Wrong?. American Foundation For AIDS Alternative. ISBN 978-0-9674153-2-1.
Mullis, Kary B. (1995). "A hypothetical disease of the immune system that may bear some relation to the Acquired Immune Deficiency Syndrome". Genetica. 95 (1–3): 195–197. doi:10.1007/bf01435010. ISSN 0016-6707. PMID 7744261. S2CID 28158163.
Kalichman, Seth (November 3, 2009). "How to spot an AIDS denialist". New Humanist. Retrieved August 14, 2019.
Basu, Paroma (June 1, 2005). "AIDS denialists back on the upswing". Nature. 11 (6): 581. doi:10.1038/nm0605-581b. PMID 15937451. S2CID 29361429.
Horvath, Hacsi (September 15, 1999). "AIDS heresies: From maverick science to conspiracy theories". CNN. Retrieved February 26, 2014.
"Washington Informer". High beam. May 31, 2000. Archived from the original on November 4, 2012. Retrieved July 27, 2010.
Gorman, Anna; Zavis, Alexandra (December 30, 2008). "Christine Maggiore, vocal skeptic of AIDS research, dies at 52". Los Angeles Times. Retrieved December 30, 2008.
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
Nattrass, N (2007). "AIDS Denialism vs. Science". Skeptical Inquirer. 31 (5).
Kalichman, Seth (2009). Denying AIDS: Conspiracy Theories, Pseudoscience, and Human Tragedy. New York: Copernicus Books (Springer Science+Business Media). pp. 177–178. ISBN 978-0-387-79475-4.
"Fireside Chat w/ Dr. Kary Mullis - Nobel Laureate, Chemistry; Video on". Ted.com. September 2010. Retrieved December 19, 2020.
https://alumni.berkeley.edu/california-magazine/winter-2019/intolerable-genius-berkeleys-most-controversial-nobel-laureate
Schoch, Russell (September 1994). "Q&A – A Conversation with Kerry Mullis". California Monthly. Berkeley, California: California Alumni Association. 105 (1): 20. Archived from the original on September 1, 2006. Retrieved March 11, 2008.
Harrison, Ann (January 16, 2006). "LSD: The Geek's Wonder Drug?". Wired. Wired. Retrieved March 11, 2008. "Like Herbert, many scientists and engineers also report heightened states of creativity while using LSD. During a press conference on Friday, Hofmann revealed that he was told by Nobel-prize-winning chemist Kary Mullis that LSD had helped him develop the polymerase chain reaction that helps amplify specific DNA sequences."
Golden, Frederic (December 13, 2000). "Time Magazine, December 13, 2000". Time.com. Retrieved July 27, 2010.
"Past Recipients, William Allan Award". American Society of Human Genetics. Archived from the original on August 4, 2019. Retrieved August 14, 2019.
"Award Winners 1970 – 2017". German Society for Clinical Chemistry and Laboratory Medicine. Retrieved August 14, 2019.
Newton, David E. (2007). Forensic Chemistry. New York: Facts On File, Inc. ISBN 978-1438109763. Retrieved August 14, 2019.
"John Scott Award Winners". U Penn. October 28, 2005. Archived from the original on July 1, 2010. Retrieved July 27, 2010.
"Robert Koch Award". Robert-Koch-Stiftung. Retrieved August 14, 2019.
"Golden Plate Awardees of the American Academy of Achievement". www.achievement.org. American Academy of Achievement.
"Inventor Profile", Hall of Fame, Invent.org, December 28, 1944, archived from the original on July 6, 2010, retrieved July 27, 2010
Nobel Prize Winner Among Rondal H. Brown Award Recipients, USA: PTO, October 13, 1998, retrieved July 27, 2010
"Laurea ad honorem a Kary Mullis" (in Italian). University of Bologna. Retrieved August 14, 2019.

    "Kary Banks Mullis". Masaryk University. Retrieved August 14, 2019.

Further reading

    Paul Rabinow, Making PCR: a story of biotechnology (University of Chicago Press, 1996). ISBN 0-226-70147-6
    Anthony Liversidge, "Kary Mullis, the great gene machine" at the Wayback Machine (archived January 21, 2001), Omni magazine (April 1992).
    Kary Mullis, Dancing Naked in the Mind Field. Vintage Books (1998). ISBN 0-679-44255-3.

External links
	Wikimedia Commons has media related to Kary Mullis.
	Wikiquote has quotations related to: Kary Mullis

    Kary Mullis (personal webpage).
    Patent portfolio, Directory inventor, archived from the original on January 10, 2013.
    Kary B. Mullis on Nobelprize.org Edit this at Wikidata

Interviews

    Interview, Nobel Prize committee, 2005.
    Klipfel, Sarah (1998), Interview, archived from the original on July 6, 2005 regarding his views on HIV/AIDS.

    vte

Laureates of the Nobel Prize in Chemistry

    vte

1993 Nobel Prize laureates
Authority control Edit this at Wikidata	

    BNF: cb12478557v (data) GND: 113927681 ISNI: 0000 0001 1672 2794 LCCN: n94051134 NDL: 00799193 NKC: xx0224456 NTA: 130290718 SUDOC: 03398431X VIAF: 73953601 WorldCat Identities: lccn-n94051134

Categories:

    1944 births2019 deathsAmerican biochemistsAmerican Nobel laureatesNobel laureates in ChemistryHIV/AIDS denialistsUniversity of California, Berkeley alumniGeorgia Tech alumniWriters from Columbia, South CarolinaPeople from Lenoir, North CarolinaBiotechnologistsPsychedelic drug advocatesScientists from North CarolinaDeaths from pneumonia

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons
    Wikiquote

Languages

    العربية
    Deutsch
    Español
    Français
    Italiano
    Português
    Русский
    اردو
    中文

Edit links

    This page was last edited on 13 May 2021, at 00:00 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Listen to this article https://en.wikipedia.org/wiki/File:Klaus_Schwab.ogg
! Klaus Schwab
!! 
!! https://en.wikipedia.org/wiki/Klaus_Schwab

From Wikipedia, the free encyclopedia

Klaus Schwab
Klaus Schwab WEF 2008 (cropped).jpg
Schwab in 2008
Born	30 March 1938 (age 83)
Ravensburg, Germany
Education	

    ETH Zürich (PhD)
    University of Fribourg (PhD)
    Harvard University (MPA)

Occupation	Founder and executive chairman of the World Economic Forum
Notable work
	COVID-19: The Great Reset (2020)
Spouse(s)	Hilde Schwab
​
(m. 1971)​
Children	2
Klaus Schwab
at Wikipedia's sister projects

    Media from Wikimedia Commons
    Texts from Wikisource
    Documentation from MediaWiki

Klaus Martin Schwab (German pronunciation: [klaʊs ˈmaʁtiːn ʃvaːp]; born 30 March 1938) is a German engineer and economist best known as the founder and executive chairman of the World Economic Forum.[1] His wife and first collaborator,[2][3] Hilde, co-founded the Schwab Foundation for Social Entrepreneurship with him.
Contents

    1 Early life
    2 Career
    3 WEF and other foundations
    4 Criticism
    5 Other activities and awards
    6 References
    7 External links

Early life

Schwab obtained his "Abitur" or high school diploma from the Humanistisches Gymnasium in Ravensburg, Germany.[citation needed] In 1961, he graduated as a mechanical engineer from ETH Zurich (the Swiss Federal Institute of Technology),[4] then gained a doctorate in Engineering from ETH Zurich,[5] a doctorate in Economics from the University of Fribourg,[6] and a Master of Public Administration degree from the John F. Kennedy School of Government at Harvard University.[7]
Career

Schwab was professor of business policy at the University of Geneva from 1972 to 2003, and since then, has been an Honorary Professor there.[8] Since 1979, he has published the Global Competitiveness Report, an annual report assessing the potential for increasing productivity and economic growth of countries around the world, written by a team of economists.[9] The report is based on a methodology developed by Schwab, measuring competitiveness not only in terms of productivity but also based on sustainability criteria.[10]

He has authored and co-authored several books, including The Fourth Industrial Revolution (2016),[11] Shaping the Fourth Industrial Revolution (2018, with Nicholas Davis),[12] COVID-19: The Great Reset (2020, with Thierry Malleret),[13] and Stakeholder Capitalism (to appear in 2021, with Peter Vanham).[14]
WEF and other foundations

Schwab has had a life-long gift for building successful nonprofit foundations. In 1971, Schwab founded the European Management Forum,[15] which in 1987 became the World Economic Forum, as a not-for-profit foundation committed to improving the state of the world. He founded the WEF in 1971, the same year in which he published Moderne Unternehmensführung im Maschinenbau[16] (Modern Enterprise Management in Mechanical Engineering). In that book, he argued that the management of a modern enterprise must serve not only shareholders but all stakeholders (die Interessenten), to achieve long-term growth and prosperity. Schwab has championed the multistakeholder concept since the WEF’s inception. In 2015, the WEF was formally recognised by the Swiss Government as an "international body".[17] Under Schwab's management, the WEF has been keen to promote its image as a driver for reconciliation efforts in different parts of the world, acting as a catalyst of numerous collaborations and international initiatives.

In 1998, Schwab and his wife founded the Schwab Foundation for Social Entrepreneurship, another NGO based in Geneva, Switzerland.

In 2004, Schwab created a new foundation using the US$1 million prize money from the Dan David Prize he received that year from Israel. The Forum of Young Global Leaders aims to create a dynamic global community of exceptional people (under 40) with the vision, courage and influence to drive positive change in the world.[18]

In 2011, he founded the Global Shapers Community, a global network of local communities, or "hubs", of young people aged 20 to 30 who are exceptional in their potential, achievements and drive to make a contribute to their communities. As of 9 June 2020, there are 421 Hubs with 9,731 Shapers.[19]
Criticism

In March 2021, the Magyar Nemzet as republished by the Visegrad Post issued a scathing critique of the Schwabian Great Reset into a "new transhumanist world order" under "transnational governance". The Schwabians "want to replace democracy with complex governance, prioritize technocracy over elections and MPs, and emphasize 'expertise' that the general public doesn’t understand instead of transparency." Schwab "predicts that today’s external devices like laptops and virtual reality headsets, will eventually 'most likely be able to be implanted in our bodies and minds'." The critique writer termed all of this "Davos-era neocommunism".[20]
Other activities and awards

Schwab has been the recipient of seventeen honorary doctorates,[21] including ones from the London School of Economics,[22] the National University of Singapore,[23] the Korea Advanced Institute of Science and Technology,[24] and over a dozen other universities, including Kaunas, Haifa, and Bangkok.[25][26][27] He is also an honorary professor of the University of Geneva, the Ben-Gurion University of Israel[28] and the China Foreign Affairs University.[29]

    In 1993-1995, he was a member of the UN High-Level Advisory Board on Sustainable Development.[30]

    In 1996-1998, he was Vice-Chairman of the UN Committee for Development Planning.[31]

    In 1997, he received the Knight of the Légion d'Honneur of France.[citation needed]

    In 2001, he received the Candlelight Award from then U.N. Secretary-General Kofi Annan (New York, 2001).[32]

    In 2006, he was knighted by Queen Elizabeth (Knight Commander of the Order of St Michael and St George).[citation needed]

    In 2012, he received the Knight Commanders Cross of Germany.[citation needed]

    In 2013, he received The Grand Cordon of the Order of the Rising Sun of Japan.[33]

    In October 2017, he became the 45th Honorary Doctor of Kaunas University of Technology for "spreading the knowledge on economy and innovative ideas, for fostering social entrepreneurship and support for young businesses, and for his contribution into developing the concept of the Fourth Industrial Revolution".[34][35]

    In 2018, he received the China Reform Friendship Medal for "promoting China's international economic exchanges and cooperation".[36]

    Schwab is a member of the Peres Centre for Peace.[37]

    Schwab is a member of the board of the Lucerne Festival.[38]

During the earlier years of his career, he was on a number of company boards, such as The Swatch Group, The Daily Mail Group, and Vontobel Holding. He is a former member of the steering committee of the Bilderberg Group.[39] He is honour member at FC Bayern Munich.
References

"Klaus Schwab, Founder and Executive Chairman | World Economic Forum-Klaus Schwab, Founder and Executive Chairman". Weforum.org. Retrieved 25 January 2012.
"Schwab Foundation for Social Entrepreneurship - Our Story". Schwabfound.org. Retrieved 9 June 2020.
Nast, Condé. "Getting to Know Klaus Schwab, the Man Behind Davos". Vanity Fair. Retrieved 11 June 2019.
"ETHistory - Klaus Schwab". www.ethistory.ethz.ch. Retrieved 18 April 2021.
"Der längerfristige Exportkredit als betriebswirtschaftliches Problem des Maschinenbaues". ethz.ch. Retrieved 26 November 2020.
"Quelques diplômés de la Faculté". unifr.ch. Retrieved 26 November 2020.
"Improving the State of the World: a Conversation with Klaus Schwab". harvard.edu. Retrieved 26 November 2020.
"Faculty Université de Genève". Retrieved 5 June 2020.
"Global Competitiveness | World Economic Forum-Global Competitiveness". Weforum.org. Retrieved 25 January 2012.
"Global Competitiveness | World Economic Forum-Global Competitiveness". Weforum.org. Retrieved 25 January 2012.
Schwab, Klaus (2016). The Fourth Industrial Revolution. Crown Business. ISBN 978-1-5247-5886-8.
Schwab, Klaus (2018). Shaping the Fourth Industrial Revolution. Portfolio Penguin. ISBN 978-0-2413-6637-0.
Schwab, Klaus (2020). COVID-19: The Great Reset. Forum Publishing. ISBN 978-2-9406-3112-4.
Schwab, Klaus (2021). Stakeholder Capitalism. Wiley. ISBN 978-1-119-75613-2.
"History". World Economic Forum. Retrieved 21 September 2019.
Schwab, Klaus (1971). Moderne Unternehmensführung im Maschinenbau (PDF).
"Agreement signed with the WEF". The portal of the Swiss government. Retrieved 5 June 2020.
"Forum of Young Global Leaders – Home". younggloballeaders.org. Retrieved 21 January 2020.
"Global Shapers – Home". globalshapers.org. Retrieved 9 June 2020.
"Davos-era neocommunism". Visegrád Post. 1 March 2021.
"Professor Klaus Schwab Factsheet" (PDF). weforum.org. Retrieved 26 November 2020.
"Honorary Graduates" (PDF). lse.ac.uk. Retrieved 26 November 2020.
"NUS confers highest honour on World Economic Forum Founder and Executive Chairman Prof Klaus Schwab and social service champion Gerard Ee". nus.edu.sg. Retrieved 26 November 2020.
"Klaus Schwab to Receive Doctorate from KAIST University". kaist.ac.kr. Retrieved 26 November 2020.
"Honorary Doctor of KTU Klaus Schwab". ktu.edu. Retrieved 26 November 2020.
"Professor Klaus M. Schwab (Switzerland)". haifa.ac.il. Retrieved 26 November 2020.
"WEF founder conferred distinction in BKK". nationthailand.com. Retrieved 26 November 2020.
"University Units - Honorary Awards". Web.bgu.ac.il. 31 May 2011. Archived from the original on 19 February 2012. Retrieved 25 January 2012.
"China Foreign Affaire University". Cfau.edu.cn. Archived from the original on 13 January 2012. Retrieved 25 January 2012.
http://daccessdds.un.org/doc/UNDOC/GEN/N95/047/20/PDF/N9504720.pdf?OpenElement[permanent dead link]
"Committee for Development Planning (A/AC.54)". Un.org. 26 February 2002. Retrieved 25 January 2012.
"SECRETARY-GENERAL PAYS TRIBUTE TO FOUNDER/PRESIDENT OF WORLD ECONOMIC FORUM". UN.org. Retrieved 26 November 2020.
"Japan honours Professor Klaus Schwab with Order of the Rising Sun". World Economic Forum. Retrieved 26 November 2020.
"Professor Klaus Schwab, the Founder of WEF to Become the 45th Honorary Doctor of KTU". Archived from the original on 22 December 2020.
"Prof K. Schwab, founder of WEF to become the 45th Honorary Doctor of KTU". The Lithuania Tribune. 5 October 2017. Archived from the original on 22 December 2020.
"10 foreigners given medals for roles in reform, opening-up". www.chinadaily.com.cn. Archived from the original on 22 December 2020.
[1] Archived 31 March 2009 at the Wayback Machine
"Lucerne Festival > Articles > Stiftungsrat". Lucernefestival.ch. Archived from the original on 6 January 2012. Retrieved 25 January 2012.

    "Former Steering Committee Members". bilderbergmeetings.org. Bilderberg Group. Archived from the original on 2 February 2014. Retrieved 8 February 2014.

External links
Listen to this article (15 minutes)
Menu
0:00
Spoken Wikipedia icon
This audio file was created from a revision of this article dated 25 January 2016, and does not reflect subsequent edits.
(Audio help · More spoken articles)

    Klaus Schwab on Twitter Edit this at Wikidata
    Appearances on C-SPAN

    Emblem-money.svgBusiness and economics portalFlag of Switzerland.svgSwitzerland portalP vip.svgBiography portal

Authority control Edit this at Wikidata	

    BIBSYS: 1021505 BNF: cb14519807k (data) GND: 1012385361 ISNI: 0000 0001 2033 0224 LCCN: n94083693 NDL: 001246269 NKC: jn20020222007 NLK: KAC201609783 NLP: A38570610 NTA: 155486934 PLWABN: 9810704636405606 SUDOC: 081450990 VIAF: 115153457 WorldCat Identities: lccn-n94083693

Categories:

    1938 birthsETH Zurich alumniGrand Cordons of the Order of the Rising SunHonorary Knights Commander of the Order of the British EmpireJohn F. Kennedy School of Government alumniKnights Commander of the Order of Merit of the Federal Republic of GermanyLiving peopleMembers of the Steering Committee of the Bilderberg GroupPeople from RavensburgPeople from the Free People's State of WürttembergSwiss businesspeopleSwiss economistsSwiss male writersSwiss philanthropistsUniversity of Fribourg alumniUniversity of Fribourg faculty

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    View source
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    اردو
    中文

Edit links

    This page was last edited on 5 May 2021, at 05:41 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki








Linking, specifically bi-directional linking, is the heart of Stroll. Links create connections between your notes, and help you navigate quickly from one note to the next. Links are wrapped in double square brackets:

`[[This is what a link looks like]]`

!Autocompletion

Stroll has an autocomplete feature, so when you type `[[` and start typing a link name, it will display some of the tiddlers that have those characters.

<span class="bluebox">

''Activity:''

Open [[Autocompletion]] and follow the instructions in that tiddler to learn about autocompletion. Don't worry, you will be given directions to get back to the tutorial.

</span>

When you are done playing with the Autocompletion tiddler, you are ready for the next part of the tutorial.
Stroll has a references section below each tiddler, which lists any tiddlers that backlink to that tiddler. That way you can move back and forth quickly between tiddlers.

The references can be viewed in four different ways, or hidden completely. You can change them in the reference tab (<<icon {{$:/core/images/preview-open}}"">>) in the sidebar. 

*''Full text'' - displays each reference as a link and as the contents of that tiddler 'transcluded' into this tiddler.
*''Full text under sliders'' - displays each reference as a link and with a button to reveal and hide the contents of each tiddler separately.
*''Hidden'' - hides the references section from all tiddlers when you need to do that.
*''Highlights in context'' - displays each reference as a link and as highlighted search results, so you can see the context of the references without having to scroll through the entire tiddler.
*''Simple links'' - displays each reference as a simple link.

<span class="bluebox">

''Activity:''

In the sidebar, open the tab with the big pink eyeball (<<icon {{$:/core/images/preview-open}} "">>), if you haven't already. There you will find a link to a tiddler called `Muffin!`. Open Muffin! and click on the checkboxes there to see how they change the appearance of the links at the bottom of that tiddler. You will be given instructions to get back to the tutorial.

</span>

When you are done playing with my dog, head to the next part of the tutorial.
!Automatic renaming of links when changing tiddler titles

One more thing about linking: if you change the name of a tiddler, all the links to that tiddler will automatically be renamed. That will save you a lot of headaches later on.

<span class="bluebox">

''Activity:''

#Open the tiddler [[Dave Gifford]] and follow the instructions there. You will be led back to the tutorial from there.

</span>



! List of emerging technologies
!! 
!! https://en.wikipedia.org/wiki/List_of_emerging_technologies

From Wikipedia, the free encyclopedia

	
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
This article may require cleanup to meet Wikipedia's quality standards. The specific problem is: too many uncited entries, WP:CRYSTAL issues (April 2018)
This article's factual accuracy is disputed. (December 2016)

Emerging technologies are those technical innovations that represent progressive innovations within a field for competitive advantage.[1]

Emerging technologies typically go through the following sequential stages:

    Hypothetical
    Research and development / experimental / trial projects
    Working demonstrators
    Commercialization / diffusion

Contents

    1 Agriculture
    2 Aerospace
    3 Construction
        3.1 Architecture
    4 Materials and textile science
    5 Optoelectronics
    6 Electronics
    7 Energy
    8 Entertainment
    9 IT and communications
    10 Medical
        10.1 Neuroscience
    11 Military
    12 Space
    13 Robotics
    14 Transport
    15 See also
    16 References
    17 Further reading

Agriculture
Emerging technology 	Status 	Potential applications 	Related articles
Agricultural robotics[2] 	Research and development, trial projects 		Agricultural drone
Closed ecological systems[3][4][5] 	Research and development, working demonstrators (e.g. Biosphere 2) 	Agriculture, scientific research, space colonization 	Greenhouse, Biosphere 2, Eden Project, Bioshelter, Seawater greenhouse, Perpetual harvest greenhouse system
Cultured meat 	Research and development[6][7] 	Humane, resource-efficient, healthier and cheaper meat[7] 	New Harvest
Vertical farming 	Research, development, experiments, and diffusion[8][9][10] 	Crop and meat production 	
Aerospace
Emerging technology 	Status 	Potential applications 	Related articles
Neural-sensing headset (trans-cranial neural sensing and characterization).[11] 	Research and development 	Assisting pilots 	Brain–computer interface, neuroprosthetics
Ion propulsion 	In use[12] 	Spacecraft propulsion 	
Plasma propulsion 	Research and development 	Spacecraft propulsion 	
Automatic Visual Inspection of Aircraft 	Research and development, prototypes 	Aircraft maintenance, repair and operations 	Airbus, Donecle, HAL, A*STAR 	
Pulse detonation engine 	Most instantiations are still in research and development. At least one prototype has been flown as of 2008.[13] 	Propulsion 	HowStuffWorks
Construction
Emerging technology 	Status 	Potential applications 	Related articles
Claytronics 	Hypothetical, experiment 		
Four-dimensional printing 	Research and development 		
Molecular assembler 	Hypothetical, experiment 		Replicator (Star Trek), Von Neumann universal constructor
Utility fog 	Hypothetical, experiment 		
Architecture
Emerging technology 	Status 	Potential applications 	Related articles
Arcology 	Research, development, commercialization 		
Domed city 	In progress in Dubai Mall of the World project that is being scaled down[citation needed] 	Weather-controlled city, colonization of other bodies 	
Materials and textile science
Emerging technology 	Status 	Potential applications 	Related articles
Aerogel 	Hypothetical, experiments, diffusion, early uses[14] 	Improved insulation, insulative glass if it can be made clear, sleeves for oil pipelines, aerospace, high-heat & extreme cold applications 	
Amorphous metal 	Experiments, Specialty use 	Armor, however it is widely used (in thin ribbons) in the production of transformer cores. 	Amorphous metal transformer
Bioplastic 	Some products developed 	Recyclable packaging and single-use items 	
Conductive polymers 	Research, experiments, prototypes 	Lighter and cheaper wires, antistatic materials, organic solar cells 	Jacquard weaving
Cryogenic treatment 	Research, experiments, prototypes 	Oil and gas blowout preventers (BOP), jet engines, power turbines, locomotives, electric vehicles, gears and bearings 	
Dynamic Armor 	Prototypes 	Better protection for ships from shaped charge weapons 	
Fullerene 	Experiments, diffusion 	Programmable matter 	
Graphene 	Hypothetical, experiments, diffusion, early uses[15][16] 	Components with higher strength to weight ratios, transistors that operate at higher frequency, lower cost of display screens in mobile devices, storing hydrogen for fuel cell powered cars, sensors to diagnose diseases, more efficient batteries[17] 	
Lab-on-a-chip 	Some commercialization 		
High-temperature superconductivity 	Cryogenic receiver front-end (CRFE) RF and microwave filter systems for mobile phone base stations; prototypes in dry ice; Hypothetical and experiments for higher temperatures[18] 	No loss conductors, frictionless bearings, magnetic levitation, lossless high-capacity accumulators, electric cars, heat-free integral circuits and processors 	
Magnetic nanoparticles 	In development 		
Magnetorheological fluid 	developed and researched 	Magnetorheological damper heavy motor damping, operator seat/cab damping in construction vehicles, seismic dampers positioned in building absorbing detrimental shock waves and oscillations within the structure making them earthquake-proof, enhance body armour fluid bullet resistant, Humvees, and various other all-terrain vehicles employ dynamic MR shock absorbers/dampers. Magnetorheological finishing was used in the construction of the Hubble Space Telescope's corrective lens, shock absorbers of a vehicle's suspension are filled with magnetorheological fluid. 	Electrorheological fluid
Microfluidics 			
High-temperature superfluidity 	Superfluid gyroscopes already exist but work at very low temperatures 	High-precision measure of gravity, navigation and maneuver devices, possible devices to emit gravitomagnetic field, frictionless mechanical devices 	
Metamaterials 	Hypothetical, experiments, diffusion[19] 	Microscopes, cameras, metamaterial cloaking, cloaking devices 	
Metal foam 	Research, commercialization 	Space colonies, floating cities 	
Multi-function structures[20] 	Hypothetical, experiments, some prototypes, few commercial 	Wide range, e.g., self health monitoring, self healing material, morphing 	
Nanomaterials: carbon nanotubes 	Hypothetical, experiments, diffusion, early uses[21][22] 	Stronger, lighter materials, space elevator 	Potential applications of carbon nanotubes, carbon fiber
Programmable matter 	Hypothetical, experiments[23][24] 	Wide range, e.g., claytronics, synthetic biology 	
Quantum dots 	Research, experiments, prototypes,[25] commercialized 	Quantum dot laser, quantum dot display, future use as programmable matter in display technologies (TV, projection), optical data communications (high-speed data transmission), medicine (laser scalpel) 	
Silicene 	Hypothetical, research 		
Superalloy 	Research, diffusion 	Aircraft jet engines 	
Synthetic diamond 	Research, commercialization 	Electronics 	
Time crystals 	Research experiments[26] 	Quantum computers with stable qubits 	
Translucent concrete 	Commercialization 	Construction of skyscrapers, towers, and sculptures like Europe Gate 	
Hypereutectic alloy 	Research, commercialization 	Metals 	Hypereutectic piston
Super-plastic alloy 	Research, commercialization 	Metals 	Superplasticity
Optoelectronics
Emerging technology 	Status 	Potential applications 	Related articles
Drone display 	In use 	Artistic uses, advertising 	Swarm robotics
Flexible display 	Research, In use 	Displays over curved surfaces, Electronic scrolls, Wearable technology 	Electronic Paper
3D displays, Volumetric display 	Research, Working prototypes, commercialization[27] 	Television, computer interfaces, cinemas, 3-dimensional imagery 	Autostereoscopic display, stereoscopic display, volumetric display, Holographic display, Light Field display, Nintendo 3DS, Swept-volume display
Laser video displays 	first commercial Laser TV in 2008, Mitsubishi LaserVue TV 	Displays with very wide colour gamut 	Laser TV, Comparison of display technology
Holography (holographic display, computer-generated holography) 	Diffusion[28][29][30] 		
Optical transistor 	Some prototypes 		
Screenless display (Virtual retinal display, Bionic contact lens, Augmented reality, virtual reality) 	Hypothetical, experiments 	Augmented reality could allow the user to reference the blue prints like in a construction yard, in a 3D manner; Delivers the user constant up to date information on the stock market, the user's corporation, and meeting statuses, visual disabilities 	Head-mounted display, Head-up display, adaptive optics, EyeTap, Google Glass, Microsoft HoloLens, AR cloud[31]
Electronics
Emerging technology 	Status 	Potential applications 	Related articles
Biometrics 	Diffusion 		
Digital scent technology 	Diffusion 		Smell-O-Vision, iSmell
Electronic nose 	Research, commercialization[32][33] 	Detecting spoiled food, chemical weapons and cancer 	
E-textiles 	Research, diffusion[34] 		
Flexible electronics 	Commercialization, research, development, some prototypes 	Flexible and folding electronic devices (such as smartphones), Flexible solar cells which are lightweight, can be rolled up for launch, and are easily deployable 	Nokia Morph, Flexible organic light-emitting diode
Memristor 	Working prototype[35][36] 	Smaller, faster, lower power consuming storage, analogue electronics, programmable logic,[37] signal processing,[38] neural networks,[39] control systems,[40] reconfigurable computing,[41] brain-computer interfaces[42] and RFID,[43] pattern recognition[44] 	
Molecular electronics 	Research and development 		
Nanoelectromechanical systems 	Research and development 		
Solid-state transformer 	In development, some prototypes 		
Spintronics 	Working prototypes[45] 	Data storage, computing devices 	MRAM
Thermal copper pillar bump 	Working prototypes in discrete devices 	Electric circuit cooling; micro-fluidic actuators; small-device thermoelectric power generation 	Ultra high definition holographic disc, Metal–insulator transition
Three-dimensional integrated circuit 	In development, commercialised 	Memory and data processing 	
Twistronics 	In development 		
Energy
Emerging technology 	Status 	Potential applications 	Related articles
Airborne wind turbine 	Research[46][47][48] 	Producing electricity 	KiteGen
Americium battery 	Estimated of working battery in 5–10 years from 2019.[49] 		
Artificial photosynthesis 	Research, experiments[50] growing interest in a macroscience global project[51] 	Improve natural photosynthesis, so roads buildings and vehicles convert sunlight and water into hydrogen and carbon dioxide into carbohydrates 	Sustainocene, Renewable energy, Nanotechnology
Concentrated solar power 	Growing markets in California, Spain, Northern Africa[52] 	Producing electricity 	DESERTEC, BrightSource Energy, Solar Millennium
Cryogenic treatment 	Subsea and deep water oil and gas exploration; wind and fossil fuel electric power generation, nuclear power 	Oil and gas blowout preventers (BOP), jet engines, power turbines, locomotives, electric vehicles, gears and bearings 	
Electric double-layer capacitor 	Diffusion, continued development[53] 	Regenerative braking; energy storage: generally faster charging, longer lasting, more flexible, greener 	
Energy harvesting 	Experiments 	Constant energy source for mobile, wearable and ubiquitous devices 	Humavox
Flywheel energy storage 	Some commercial examples 		
Fusion power 	Research, experiments 	Producing electricity, heat, fusion torch recycling with waste heat 	ITER, NIF, Wendelstein 7-X, Magnetic confinement fusion, Dense plasma focus, Muon-catalyzed fusion
Generation IV nuclear reactor 	Research, experiments 	Producing electricity, heat, transmutation of nuclear waste stockpiles from traditional reactors 	
Gravity battery 	Small-scale examples 		
Grid energy storage 	Increasing use 		
Home fuel cell 	Research, commercialisation[54][55][56] 	Off-the-grid, producing electricity in using an environmentally friendly fuel as a backup during long term power failures. 	Autonomous building, Bloom Energy Server
Hypercapacitor 	Research[57] 		
Lithium-air battery 	Research, experiments[58] 	Laptops, mobile phones, long-range electric cars; storing energy for electric grid 	
Lithium iron phosphate battery 	Commercialization 		
Lithium–sulfur battery 	Research and development 		
Magnesium battery 	Early commercialization 		
Magnonics 	Research 	Data storage 	
Molten salt reactor 	Research, experiments 	Producing electricity, heat 	
Nanowire battery 	Experiments, prototypes[59][60] 	Laptops, mobile phones, long-range electric cars; storing energy for electric grid 	
Nantenna 	Research[61][62][63] 	Producing electricity 	
Ocean thermal energy conversion 	Prototype 		
Solid-state battery 	Niche uses 	Hybrid cars 	
Smart grid 	Research, diffusion[64][65][66] 		Smart meter, SuperSmart Grid
Space-based solar power 	Hypothetical 		
Thorium nuclear fuel cycle 	Research started in the 1960s, still ongoing 	Producing electricity, heat 	
Vortex engine 		Power generation 	
Wireless energy transfer 	Prototypes, diffusion, short range consumer products[67][68] 	Wirelessly powered equipment: laptop, cell phones, electric cars, etc. 	WiTricity, resonant inductive coupling
Zero-energy building 	Expansion 	All homes 	Passive house
Entertainment
Emerging technology 	Status 	Potential applications 	Related articles
Computer-generated imagery 	Developing 	Films, photos 	Deepfake, StyleGAN, DeepDream
Immersive virtual reality 	Hypothetical, limited commercialization 	An artificial environment where the user feels just as immersed as they usually feel in conscious reality. 	Virtusphere, 3rd Space Vest, haptic suit, immersive technology, simulated reality, holodeck (fictional)
Ultra-high-definition television 	Commercialized 		
IT and communications
Emerging technology 	Status 	Potential applications 	Related articles
5G cellular communications 	Diffusion 	Mobile phones, Tablets 	
6G cellular communications[69] 	Conceptual 	Mobile phones 	
Ambient intelligence 	Hypothetical 		
Artificial brain 	Research[70] 	Treatment of neurological disease, artificial intelligence 	Blue Brain Project, Human Brain Project
Artificial general intelligence 	Hypothetical, experiments;[71][72][73] 	Creating intelligent devices and robots; AI can counsel (or even take charge) in scientific projects, government, army, corporate governance, film and books creation, inventions etc. 	Progress in artificial intelligence, technological singularity, applications of artificial intelligence
Atomtronics 	Hypothetical 		
Augmented reality 	Diffusion 		Google Glass, Windows Mixed Reality, Microsoft HoloLens, Mixed reality, Smartglasses, Pokémon Go
Blockchain or distributed ledger technology[74] 	Diffusion 	Eliminating or lowering transaction costs; distributed, open and transparent record keeping; non-hierarchical networked systems; cryptography[75] 	Bitcoin, Digital currency, Cryptocurrency, e-democracy
Carbon nanotube field-effect transistor 	Research and development 	Extending Moore's law 	
Civic technology 	Research and development, projects 	Smart cities, more responsive government 	Civic technology, Smart city, e-democracy, open data, intelligent environment
Cryptocurrency 	Diffusion 	Money supply, World reserve currency 	Bitcoin, Digital currency
DNA digital data storage 	Experiments 	Mass data storage 	
Exascale computing 	Projects 		
Gesture recognition 	Diffusion 		
Internet of Things 	Diffusion 		
Emerging memory technologies 	In development 		T-RAM, memristor, Z-RAM, TTRAM, CBRAM, SONOS, RRAM, Racetrack memory, NRAM, Phase-change memory, FJG RAM, Millipede memory, Skyrmion, Programmable metallization cell, 3D XPoint, Ferroelectric RAM, Magnetoresistive random-access memory, nvSRAM
Emerging magnetic data storage technologies 	In development (HAMR, BPM); diffusion (SMR) 	Greatly improved storage density compared to current HDDs, can be combined 	SMR, HAMR, BPM, MAMR, TDMR, CPP/GMR, PMR, Hard disk drive
Fourth-generation optical discs (3D optical data storage, Holographic data storage) 	Research, prototyping[76] 	Storing and archiving data previously erased for economic reasons 	Blu-ray Disc, Optical storage
General-purpose computing on graphics processing units 	Diffusion of non standardized methods 	Order of magnitude faster processing of parallelizable algorithms 	
Exocortex 	Diffusion of primitive amplifications; working prototypes of more; Hypothetical, experiments on more substantial amplification 		
Li-Fi 	Demos, requires standardization 		
Machine translation 	Diffusion[77][78] 	Easier and cheaper cross-cultural communication 	
Machine vision 	Research, prototyping, commercialization[70] 	Biometrics, controlling processes (e.g., in driverless car, automated guided vehicle), detecting events (e.g., in visual surveillance), interaction (e.g., in human-computer interaction), robot vision 	Computer vision, pattern recognition, digital image processing
Mobile collaboration and e-learning 	Development, commercialization[79] 	Extends the capabilities of video conferencing for use on hand-held mobile devices in real-time over secure networks. For use in diverse industries such as manufacturing, energy, healthcare.[80] Telework 	
Multimodal contactless biometric face/iris systems 	Deployed at various airports and federal security checkpoints[81] 	Unimodal facial recognition scanners 	
Nanoradio 	Research & Development, diffusion 		
Navigation Doppler lidar 	Under development[82] 		
Neuromorphic engineering 	Research & development 		
Optical computing 	Hypothetical, experiments; some components of integrated circuits have been developed[83] 	Smaller, faster, lower power consuming computing 	
Quantum computing 	Hypothetical, experiments,[84] commercialization[85] 	Much faster computing, for some kinds of problems, chemical modeling, new materials with programmed properties, Hypothetical of high-temperature superconductivity and superfluidity 	
Quantum cryptography 	Commercialization[86] 	Secure communications 	
Quantum radar 	Prototypes 		
Radio-frequency identification 	Diffusion of high cost[87][88][89] 	Smartstores – RFID based self checkout (keeping track of all incoming and outgoing products), food packaging, smart shelves, smart carts. See: potential uses 	
Semantic Web or answer machine 	Research, limited use 	Making the web machine-readable by annotating data on the web based on its meaning 	Corporate Semantic Web, Semantic Web Services, Semantic Web Stack, Web 3.0
Smart speaker 	Commercialization 	Home automation, communication with people and machines 	Amazon Echo, Google Home, HomePod
Software-defined radio 	Development, commercialization 	Cognitive radio, Mesh networks, Software defined antenna 	GNU Radio, List of software-defined radios, Universal Software Radio Peripheral
Speech recognition 	Research, development, commercialization 		
Subvocal recognition 	Research, development, commercialization 		
Virtual Reality 	Diffusion 	Entertainment, education 	Oculus Rift, HTC Vive, PlayStation VR
X-ray communication 	Demonstrations [90] 		
Hybrid forensics[91] 	Research, commercialization 	digital forensics, electronic discovery, malware detection, IT compliance 	
Medical
Emerging technology 	Status 	Potential applications 	Related articles
Artificial uterus 	Hypothetical, research 	space travel, extracorporeal pregnancy, Reprogenetics, same-sex procreation 	
Body implants, prosthesis 	Trials, from animal (e.g., brain implants) to human clinical (e.g., insulin pump implant), to commercial production (e.g. pacemaker, joint replacement, cochlear implant) 	Brain implant, retinal implant 	Prosthetics, prosthetics in fiction, cyborg
Cryonics 	Hypothetical, research, commercialization (e.g. Alcor, Cryonics Institute) 	Life extension 	
De-extinction 	Research, development, trials 	Animal husbandry, pets, zoos 	Recreating the woolly mammoth species
Human DNA vaccination 	Clinical trials 		
Enzybiotics 	Successful first trials 		
Genetic engineering of organisms and viruses 	Research, development, commercialization[92][93] 	Creating and modifying species (mainly improving their physical and mental capabilities), bio-machines, eliminating genetic disorders (gene therapy), new materials production,[94] healthier and cheaper food, creating drugs and vaccines, research in natural sciences, bioremediation,[95] detecting arsenic,[96] CO2 reducing superplant,[97] 	Biopunk, Genetically modified food, superhuman, human enhancement, transhumanism, gene doping, designer baby, genetic pollution
Hibernation or suspended animation 	Research, development, animal trials[98] 	Organ transplantation, space travel, prolonged surgery, emergency care 	
Life extension, Strategies for Engineered Negligible Senescence 	Research, experiments, animal testing[99][100] 	Increased life spans 	Immortality, biological immortality
Nanomedicine 	Research, experiments, limited use[101][102] 		
Nanosensors 	Research and development 		
Omni Processor 	Research and development; some prototypes 		
Oncolytic virus 	Human trials (Talimogene laherparepvec, reolysin, JX-594), commercialisation (H101) 	Cancer therapy, imaging 	Oncolytic virus
Personalized medicine, full genome sequencing 	Research, experiments[103] 	Personalized medical procedures, genome sequencing during drug trials 	Personal genomics
Phage therapy 	First trial uses 		
Plantibody 	clinical trials 		
Regenerative medicine 	Some laboratory trials[104] 	Life extension 	
Robotic surgery 	Research, diffusion[105][106][107] 		
Senolytic 	Under investigation 		
Stem cell treatments 	Research, experiments, phase I human trial spinal cord injury treatment (GERON), cultured cornea transplants[108][109] 	Treatment for a wide range of diseases and injuries 	Stem cell, stem cell treatments, Skin cell gun,
Synthetic biology, synthetic genomics 	Research, development, first synthetic bacteria created May 2010[110][111] 	Creating infinitely scalable production processes based on programmable species of bacteria and other life forms 	BioBrick, iGEM, synthetic genomics
Tissue engineering 	Research, diffusion[112][113][114][115] 	Organ printing, Tooth regeneration 	
Tricorder 	Research and development 	Diagnosing medical conditions 	Medical tricorder
Virotherapy 	Research, human trials 	Gene therapy, cancer therapy 	Virotherapy, Oncolytic Virus
Vitrification or cryoprotectant 	Hypothetical, some experiments[116] 	Organ transplantation, cryonics 	
Neuroscience
Emerging technology 	Status 	Potential applications 	Related articles
Brain-computer interface 	Research and commercialization 	Faster communication and learning and "more real" entertainment (generation of feelings and information in brain on-demand). Control emotions in the mentally ill[117] 	Experience machine, Neuralink, Stent-electrode recording array
Brain-reading, Neuroinformatics 	Research[118][119] 		
Electroencephalography 	Research, diffusion[120] 	Controlling electronic devices via brain waves 	BrainGate
Head transplant 	Success in animal experiments, including 2-headed result; human surgery as early as 2019 	Treat debilitating disease or horrible disfigurement 	Brain transplant, hand transplantation, organ transplantation
Neuroprosthetics 		Visual prosthesis, brain implant, exocortex, retinal implant, neurograin[121] 	
Sonogenetics[122] 	Research; experimentation 		
Military
Emerging technology 	Status 	Potential applications 	Related articles
Caseless ammunition 	Field tests and some niche markets 	Warfare 	Lightweight Small Arms Technologies
Cloaking device 	Successful experiments cloaking small objects under some conditions[123] 	Cloaking microscope tips at optical frequencies 	Metamaterial cloaking
Directed energy weapon 	Research, development, some prototypes[124] 	Warfare 	Laser Weapon System
Electrolaser 	Research and development 		
Electromagnetic weapons 	Research and development[125][126] 	Warfare 	Coilgun, Railgun
Electrothermal-chemical technology 	Research and development 	Tank, artillery, and close-in weapon systems 	
Force field 	Hypothetical, experiments[127] 	Military and law enforcement, space travel 	Plasma window
Green bullet 	Development 	Environment-friendly ammunition 	
Hypersonic cruise missile 	In development 	Glide vehicles and cruise missiles that can go 5 times the speed of sound or more. 	Avangard, Kinzhal, Zircon, BrahMos-II, Prompt Global Strike, DARPA Falcon Project, DF-ZF, Boeing X-51 Waverider
Laser weapon 	Research and development, trials 	Tracking and destruction of rockets, bombs, drones etc.[128] 	Advanced Tactical Laser, High Energy Liquid Laser Area Defense System
MAHEM 	Research, In development 	An alternative formed penetrator that could replace self-forging explosives with molten metal to penetrate enemy armor. 	Explosively pumped flux compression generator
Particle-beam weapon 	Hypothetical 		Strategic Defense Initiative
Plasma weapon 	Hypothetical 		
Precision-guided firearm 	Research and development 	Warfare 	EXACTO, Smart bullet
Pure fusion weapon 	Hypothetical 		
Sonic weapon 	Research, Development, Commercialization 	A weapon that can be used to either disorient, incapacitate, or kill an adversary through sound, infrasound, or ultrasound. 	Long Range Acoustic Device
Stealth technology 	Research and development 	Electronic countermeasures 	Plasma stealth, Stealth aircraft, Radar-absorbent material
Telescoped ammunition 	Research and development 	A type of ammunition that envelopes a bullet with powder charge and encases it in a cartridge. 	
Lightweight Small Arms Technologies Program 	Research and development 	Warfare 	lethal autonomous weapon
Space
Emerging technology 	Status 	Potential applications 	Related articles
Artificial gravity 	Research and development 	Space Travel 	Spin gravity
Asteroid mining 	Hypothetical, NASA has announced plans to capture and redirect an asteroid.[129] 	Commerce, resource supply 	
Hypertelescope 	Hypothetical 	Astronomy 	
Starshot 	Research 	Uncrewed interstellar probes[130] 	
Stasis Chamber 	Experimental, Research and development[131] 	Interplanetary space travel, interstellar space travel, medical 	
Solar gravitational lens 	Hypothetical 	Deep space observation 	FOCAL
Inflatable space habitat 	Developed, prototypes built and tested 	Space habitats 	Bigelow Aerospace
Miniaturized satellite 	Development, early commercialization, diffusion 	Inexpensive satellites, constellations for low data rate communications, using formations to gather data from multiple points, in-orbit inspection of larger satellites. 	
Reusable rocket technology for orbital rockets 	Several companies, including Blue Origin and SpaceX, are developing the technologies. 	Expendable launch vehicles may become cost prohibitive except for national government or military missions. 	New Glenn, SpaceX Starship
Robotics
Emerging technology 	Status 	Potential applications 	Related articles
Android, gynoid 	Research, development, prototypes, diffusion, commercializing[132] 	Disabled, infant and older people care, housekeeping, sex-worker, flight-attendant, model, hostess, waiter, security guard 	
Gastrobot 	Some prototypes 		
Molecular nanotechnology, nanorobotics 	Hypothetical, experiments[133] 	Machines (desktop, industrial) that can make anything given the materials (e.g. Rotimatic), cheap planetary terraforming 	
Powered exoskeleton 	Research, development, prototypes, diffusion, commercializing[134] 	Heavy lifting, paralysis, muscle related diseases, warfare, construction, firefighting, care for the elderly and disabled. 	LOPES (exoskeleton), ReWalk, Human Universal Load Carrier, fictional armor Iron Man's armor, Future Force Warrior
Self-reconfiguring modular robot 	Hypothetical, experiments, early prototypes 	As a universal physical machine, SRCMR may change the way we make many physical structures and machines 	Robot, swarm robotics, autonomous research robot
Swarm robotics 	Hypothetical, experiments[135] 	Autonomous construction, space construction 	Swarm intelligence, autonomous robotics, nanorobotics, particle swarm optimization, multi-agent systems, behavior-based robotics
Unmanned vehicle 	Research and development, diffusion, commercial 	Transport of goods (e.g. food), mass surveillance, eavesdropping, oceanography, commercial aerial livestock monitoring, wildfire mapping, pipeline security, home security, road patrol and anti-piracy, patrol the nation's borders, scout property, and hunt down fugitives, oil, gas and mineral exploration and production, geophysical surveys, geomagnetic surveys, scientific research in areas too dangerous for pilots like a hurricane tornado hunter, firefighting,[136] military operations and peacekeeping operations, search and rescue, explosives and bomb disposal, gatekeeper and checkpoint operations, urban street presence, police raids in urban settings. 	Unmanned aerial vehicle, AeroVironment, AeroVironment Global Observer, AeroVironment Nano Hummingbird, Unmanned combat air vehicle, Unmanned ground vehicle, Unmanned space vehicle, Unmanned surface vehicle, Unmanned underwater vehicle, Autonomous underwater vehicle
Transport
Emerging technology 	Status 	Potential applications 	Related articles
Airless tire 	Research, development, early prototypes[137][138] 	Safer tires 	Tweel
Alternative fuel vehicle 	Commercialization, diffusion 	Reducing air pollution, decreasing oil consumption thereby ensuring a high focus in renewable energy 	Electric vehicle, Hydrogen vehicle, Compressed air vehicle
Autonomous Rail Rapid Transit 	Commercialization, diffusion 	Reducing air pollution, decreasing oil consumption 	Electric vehicle
Beam-powered propulsion 	Hypothetical 		Laser propulsion
Electro hydrodynamic propulsion 	Research, development, prototypes[139][140] 	Better flying transportation, efficient propulsion in air 	Electrohydrodynamics
Flexible wings (X-53 Active Aeroelastic Wing, Adaptive Compliant Wing), fluidic flight controls 	Experiments, prototypes[141][142][143][144][145] 	Controlling aircraft, ships 	Aircraft flight control system, BAE Systems Demon, fluidics
Flying car 	Early commercialization, prototypes[146][147] 	More effective transportation 	Terrafugia Transition, Moller M400 Skycar, Urban Aeronautics X-Hawk, AeroMobil
Fusion rocket 	Research, development[148] 	Fast interplanetary travel, with limited Interstellar applications 	
Hoverbike 	Working prototypes, early commercialization 	Package delivery, search and rescue 	
Hovertrain, Ground effect train 	Research, development[149][150] 	Trains with higher speed 	Aérotrain, Duke Hospital PRT, Hovercraft
High Altitude Platforms 	Experimentation 	Communications 	
Jet pack or backpack helicopter 	Early commercialization, prototypes[151] 	More effective transportation 	
Maglev train, Vactrain 	Research, early commercialization[152][153][154] 	Trains with higher speed 	Transrapid, Shanghai Maglev Train, Linimo
Magnetic levitation 	Research, development, Commercialization (Maglev Train) 	High temperature superconductivity, cryogenics, low temperature refrigerators, superconducting magnet design and construction, fiber reinforced plastics for vehicles and structural concretes, communication and high power solid-state controls, vehicle design (aerodynamics and noise mitigation), precision manufacturing, construction and fabrication of concrete structures,[155] maglev car, maglev based spacecraft launch 	Vactrain, Levicar
Mass driver 	Prototypes 		
Nuclear photonic rocket 	Hypothetical 	Interplanetary travel 	
Personal rapid transit 	Early commercialization, diffusion[156][157] 	More effective transportation 	Morgantown PRT, ULTra
Photon rocket 	Hypothetical 	Local interstellar travel 	
Photonic laser thruster 	Prototypes 		
Physical Internet 	Research[158] 		
Scooter-sharing system 	Commercialization 	Increased density[159] 	Bird (company)
Vactrain 	Research, development 	Faster way to get somewhere 	ET3 Global Alliance, Hyperloop
Propellant depot 	Research, development 	enabling deep-space missions with more massive payloads, satellite life extension, ultimately lowering the cost per kg launched to space 	
Pulse detonation engine 	Testbed demos 	Fast interplanetary travel, with some possible interstellar travel applications 	
Reusable launch system 	Research, early commercialization 	Surface-to-orbit transport 	Falcon 9, Falcon Heavy, Starship, New Glenn
Self-driving car 	Research, development, early commercialization 	Reducing concerns of tiredness while driving and also looking outside in the car. Helpful in countries where employment of personal drivers is expensive. 	Waymo
Space elevator 	Research, development[160] 		Non-rocket spacelaunch, Orbital ring, Sky hook, Space fountain
Spaceplane 	Research, development[161][162][163] 	Hypersonic transport 	A2, Skylon
Supersonic transport 	Commercialization, diffusion 	Airliner with higher speed 	Concorde, Tupolev Tu-144
Vehicular communication systems 	Research and development, some diffusion 	Vehicle safety obstacle inform others warnings on entering intersections, traffic management, accommodating ambulances, fire trucks, and police cars to a specific situation such as hot pursuits and bad weather, driver assistance systems, automated highways. 	Artificial Passenger, Dedicated short-range communications, Intelligent transportation system
See also

    Technology and applied sciences portal

General:

    Anthropogenics
    Diffusion of innovations
    Disruptive innovation
    Ecological modernization
    Environmental technology
    Frugal innovation
    Green development
    Industrial ecology
    List of inventions
    List of inventors
    Sustainable development
    Technology readiness level

	

Ethics:

    Bioethics
    Casuistry
    Computer ethics
    Engineering ethics
    Nanoethics
    Neuroethics

References

International Congress Innovation and Technology XXI: Strategies and Policies Towards the XXI Century, & Soares, O. D. D. (1997). Innovation and technology: Strategies and policies. Dordrecht: Kluwer Academic.
A review of automation and robotics for the bio-industry. Journal of Biomechatronics Engineering Vol. 1, No. 1, (2008) 37–54
NASA – Investigation of a Closed Ecological System. Archived 13 November 2013 at the Wayback Machine nasa.gov
Ben Armentrout, and Heidi Kappes. Studies in Closed Ecological Systems: Biosphere in a Bottle
Frieda B. Taub Annual Review of Ecology and Systematics Vol. 5, (1974), pp. 139–160
"Is in vitro meat the future?". The Times. 9 May 2008. Archived from the original on 10 January 2014. Retrieved 7 December 2012.
"Artificial meat: Hamburger junction". The Economist. 25 February 2012. Archived from the original on 2 March 2012. Retrieved 3 March 2012.
"Vertical farming – Does it really stack up?". Te Economist. 9 December 2010. Archived from the original on 15 November 2011. Retrieved 18 November 2011.
"Vertical Farming – Can Urban Agriculture Feed a Hungry World?". Spiegel. 22 July 2011. Archived from the original on 15 November 2011. Retrieved 18 November 2011.
"Vertical Harvest of Jackson Hole Will Grow Organic Produce Even in Winter". Inhabitat. 6 June 2012. Archived from the original on 22 September 2013. Retrieved 29 August 2013.
C. Epstein – [1] Archived 5 December 2015 at the Wayback Machine published by AIN online 3 December 2015 [Retrieved 4 December 2015]
"Starlink". SpaceX. Archived from the original on 23 July 2020.
Norris, G., "Pulse Power: Pulse Detonation Engine-powered Flight Demonstration Marks Milestone in Mojave," Aviation Week & Space Technology, Vol. 168, No. 7, 2008, pp. 60.
"Sto AG, Cabot Create Aerogel Insulation". Construction Digital. 15 November 2011. Archived from the original on 31 December 2011. Retrieved 18 November 2011.
"Is graphene a miracle material?". BBC Click. 21 May 2011. Archived from the original on 4 October 2020. Retrieved 18 November 2011.
"Could graphene be the new silicon?". The Guardian. 13 November 2011. Archived from the original on 2 September 2013. Retrieved 18 November 2011.
"Applications of Graphene under Development". understandingnano.com. Archived from the original on 21 September 2014. Retrieved 16 June 2011.
"The 'new age' of super materials". BBC News. 5 March 2007. Archived from the original on 4 October 2020. Retrieved 27 April 2011.
"Strides in Materials, but No Invisibility Cloak". The New York Times. 8 November 2010. Archived from the original on 1 July 2017. Retrieved 21 April 2011.
NAE Website: Frontiers of Engineering Archived 28 July 2014 at the Wayback Machine. Nae.edu. Retrieved 22 February 2011.
"Carbon nanotubes used to make batteries from fabrics". BBC News. 21 January 2010. Archived from the original on 4 October 2020. Retrieved 27 April 2011.
"Researchers One Step Closer to Building Synthetic Brain". Daily Tech. 25 April 2011. Archived from the original on 29 April 2011. Retrieved 27 April 2011.
"Pentagon Developing Shape-Shifting 'Transformers' for Battlefield". Fox News. 10 June 2009. Archived from the original on 5 February 2011. Retrieved 26 April 2011.
"Intel: Programmable matter takes shape". ZD Net. 22 August 2008. Archived from the original on 10 February 2013. Retrieved 2 January 2012.
"'Quantum dots' to boost performance of mobile cameras". BBC News. 22 March 2010. Archived from the original on 4 October 2020. Retrieved 16 April 2011.
Richerme, Phil (18 January 2017). "Viewpoint: How to Create a Time Crystal". Physics. 10. doi:10.1103/Physics.10.5. Archived from the original on 31 May 2019. Retrieved 2 February 2017.
"3D display technology is no headache, claim researchers". The Engineer. 5 April 2011. Archived from the original on 14 March 2012. Retrieved 17 April 2011.
"Scientist: Holographic television to become reality". CNN. 7 October 2008. Archived from the original on 16 January 2011. Retrieved 29 April 2011.
"Holographic video takes step forward with updated display". The Independent. 5 November 2010. Archived from the original on 9 November 2010. Retrieved 29 April 2011.
"Phone calls in 3-D soon". New Straits Times. 9 January 2011. Archived from the original on 16 July 2018. Retrieved 29 April 2011.
"Augmented Reality Is The Operating System Of The Future. AR Cloud Is How We Get There". Forbes. 21 February 2019. Archived from the original on 27 June 2019. Retrieved 27 June 2019.
"Tuberculosis breakthrough as scientists get funds for 'electronic nose'". The Guardian. 7 November 2011. Archived from the original on 1 October 2013. Retrieved 4 December 2011.
"Now, a mobile phone that can smell". The Times of India. 7 November 2011. Archived from the original on 22 May 2013. Retrieved 4 December 2011.
"Electronic Cotton". IEEE Spectrum. January 2012. Archived from the original on 23 April 2019. Retrieved 4 March 2012.
"Remapping Computer Circuitry to Avert Impending Bottlenecks". The New York Times. 28 February 2011. Archived from the original on 24 December 2012. Retrieved 27 April 2011.
"Memristor revolution backed by HP". BBC News. 2 September 2010. Archived from the original on 18 May 2011. Retrieved 27 April 2011.
U.S. Patent 7,203,789
U.S. Patent 7,302,513
U.S. Patent 7,359,888
U.S. Patent 7,609,086
U.S. Patent 7,902,857
U.S. Patent 7,902,867
U.S. Patent 8,113,437
Corinto, Fernando; Ascoli, Alon; Gilli, Marco (2012). Memristor Models for Pattern Recognition Systems. Springer. pp. 245–267. doi:10.1007/978-94-007-4491-2_13. ISBN 978-94-007-4490-5.
"Scientists developing spintronic computer chips". The Times of India. 14 April 2011. Archived from the original on 7 November 2011. Retrieved 17 April 2011.
"Getting wind farms off the ground". The Economist. 7 June 2007. Archived from the original on 5 December 2011. Retrieved 7 December 2011.
"Wind turbines take to the skies". BBC News. 3 June 2010. Archived from the original on 4 December 2011. Retrieved 7 December 2011.
"Airborne Wind Turbines". The New York Times. 9 December 2007. Archived from the original on 21 May 2012. Retrieved 7 December 2011.
"Americium Power Source". thefutureofthings.com. 1 January 2019. Archived from the original on 10 August 2019. Retrieved 14 June 2019.
"Solar 'Artificial Leaf' Is Unveiled by Researchers". Reuters. 29 March 2011. Archived from the original on 20 April 2011. Retrieved 21 April 2011.
Faunce TA, Lubitz W, Rutherford AW, MacFarlane D, Moore, GF, Yang P, Nocera DG, Moore TA, Gregory DH, Fukuzumi S, Yoon KB, Armstrong FA, Wasielewski MR, Styring S. Energy and Environment Case for a Global Project on Artificial Photosynthesis. Energy and Environmental Science (2013) DOI: 10.1039/c3ee00063j http://pubs.rsc.org/en/content/articlelanding/2013/ee/c3ee00063j Archived 16 August 2013 at the Wayback Machine (accessed 2 June 2013)
"California approves Tessera solar plant". Reuters. 28 October 2010. Archived from the original on 25 July 2012. Retrieved 4 May 2011.
"Ultracapacitors Gain Traction as Battery Alternative". Reuters. 30 March 2011. Archived from the original on 4 May 2011. Retrieved 4 May 2011.
"MIT develops way to bank solar energy at home". Reuters. 31 July 2008. Archived from the original on 26 July 2012. Retrieved 24 December 2011.
"All eyes on Bloom Box fuel cell launch". The Guardian. 22 February 2010. Archived from the original on 9 September 2013. Retrieved 24 December 2011.
"Japan aims its home fuel cells at Europe". BBC News. 12 March 2010. Archived from the original on 4 October 2020. Retrieved 24 December 2011.
"Engineering Development of Cryogenic Hypercapacitors for Energy Storage". sbir.gov. 1 January 1997. Archived from the original on 24 September 2019. Retrieved 24 September 2019.
Kraytsberg A, Ein-Eli Y (2011). "Review on Li-air batteries – Opportunities, limitations and perspective". Journal of Power Sources,196:p.886-893.
"Scientists say paper battery could be in the works". Reuters. 7 December 2009. Archived from the original on 6 July 2011. Retrieved 4 May 2011.
"Microfiber fabric makes its own electricity?". Reuters. 14 February 2008. Archived from the original on 25 July 2012. Retrieved 4 May 2011.
"A new device to tap more solar energy invented". The Hindu. 18 May 2011. Archived from the original on 17 August 2011. Retrieved 24 December 2011.
"Heat scavenging – Stealing the heat". The Economist. 4 March 2010. Archived from the original on 2 January 2012. Retrieved 24 December 2011.
"New Rays". Businessworld. 21 May 2011. Retrieved 24 December 2011.[permanent dead link]
"Electricity to power 'smart grid'". BBC News. 18 May 2009. Archived from the original on 24 May 2009. Retrieved 4 March 2012.
"Smart Grid Costs Are Massive, but Benefits Will Be Larger, Industry Study Says". The New York Times. 25 May 2011. Archived from the original on 23 March 2012. Retrieved 4 March 2012.
"Pushing the low carbon boundaries: South Korea's smart grid initiative". The Guardian. 5 September 2011. Archived from the original on 31 December 2013. Retrieved 4 March 2012.
"Wireless energy promise powers up". BBC News. 7 June 2007. Archived from the original on 17 September 2007. Retrieved 4 May 2011.
"FCC approves first wireless 'power-at-a-distance' charging system". Engadget. 27 December 2017. Archived from the original on 27 December 2017. Retrieved 27 December 2017.
"Do More › New & Next 6G: What It Is & When to Expect It". Lifeewire. 2019. Archived from the original on 25 September 2019. Retrieved 24 September 2019.
"The big plan to build a brain". The Telegraph. 21 June 2011. Archived from the original on 15 July 2011. Retrieved 18 November 2011.
"IBM's Watson supercomputer crowned Jeopardy king". BBC News. 17 February 2011. Archived from the original on 18 February 2011. Retrieved 17 April 2011.
"MIT scientists take a step closer to artificial intelligence". Computer Weekly. 18 November 2011. Archived from the original on 20 November 2011. Retrieved 18 November 2011.
"How innovative is Apple's new voice assistant, Siri?". New Scientist. 3 November 2011. Archived from the original on 3 March 2012. Retrieved 4 March 2012.
World Economic Forum’s Meta-Council on Emerging Technologies (2016). "Top 10 Emerging Technologies of 2016" (PDF). World Economic Forum. Archived (PDF) from the original on 30 November 2016. Retrieved 21 September 2016.
UK Government Chief Scientific Officer (December 2015). "Distributed Ledger Technology: beyond block chain" (PDF). gov.uk. UK Government. Archived (PDF) from the original on 16 March 2018. Retrieved 21 September 2016.
"G.E.'s breakthrough can put 100 DVDs on a disc". Tehran Times. 28 April 2009. Archived from the original on 18 September 2015. Retrieved 29 April 2011.
"eyeSight CEO Gideon Shmuel: The Company Making Minority Report A Reality (Finally)". The Huffington Post. 30 July 2012. Archived from the original on 1 August 2012. Retrieved 31 July 2012.
"Get Sampark, go multilingual". The Hindu. 3 April 2011. Archived from the original on 3 April 2011. Retrieved 29 April 2011.
"Mobile Video Collaboration System Securely Connects Field Staff and Experts". Electronic Component News. 28 March 2011. Archived from the original on 1 October 2011.
"New hand-held device targets work on shop floor: veteran high-tech team launches new venture". Winnipeg Free Press. 11 July 2005. Archived from the original on 7 May 2016. Retrieved 4 October 2020.
"Shannon Airport deploys face recognition". Planet Biometrics. 28 September 2018. Archived from the original on 28 September 2018. Retrieved 28 September 2018.
"Navigation Doppler Lidar sensor for precision altitude and vector velocity measurements flight test results" (PDF). ntrs.nasa.gov. 1 January 2011. Archived (PDF) from the original on 24 September 2019. Retrieved 24 September 2019.
"US scientists build first 'antilaser'". ABC. 18 February 2011. Archived from the original on 26 April 2011. Retrieved 21 April 2011.
"Quantum computing device hints at powerful future". BBC News. 22 March 2011. Archived from the original on 8 April 2011. Retrieved 17 April 2011.
"First Ever Commercial Quantum Computer Now Available for $10 Million". ExtremeTech. 20 May 2011. Archived from the original on 3 February 2012. Retrieved 22 May 2011.
"Does quantum mechanics offer the best way to protect our most valuable data?". The Independent. 31 March 2011. Archived from the original on 2 April 2011. Retrieved 17 April 2011.
"Will NFC make the mobile wallet work?". BBC News. 7 October 2011. Archived from the original on 6 December 2011. Retrieved 8 December 2011.
"Internet of things: Should you worry if your jeans go smart?". BBC News. 23 September 2011. Archived from the original on 6 December 2011. Retrieved 8 December 2011.
"RFID tagging: Chips with everything". The Telegraph. 20 May 2009. Archived from the original on 29 February 2012. Retrieved 8 December 2011.
"NASA Set to Demonstrate X-ray Communications in Space". nasa.gov. 19 February 2019. Archived from the original on 17 June 2019. Retrieved 17 June 2019.
Adams, R., Mann, G., & Hobbs, V. (2017). ISEEK, a tool for high speed, concurrent, distributed forensic data acquisition. Paper presented in Valli, C. (Ed.). The Proceedings of 15th Australian Digital Forensics Conference 5–6 December 2017, Edith Cowan University, Perth, Australia DOI 10.4225/75/5a838d3b1d27f [2] Archived 25 March 2018 at the Wayback Machine
"A giant leap into the unknown: GM salmon that grows and grows". The Independent. 22 September 2010. Archived from the original on 13 September 2011. Retrieved 5 May 2011.
"Gene therapy is cure for 'boy in the bubble' syndrome". The Telegraph. 24 August 2011. Archived from the original on 29 August 2011. Retrieved 18 November 2011.
"USU Synthetic Spider Silk Lab awarded $1.9 million in DOE Energy Efficient Transportation Technology Funds". CacheValleyDaily.com. Archived from the original on 4 October 2020. Retrieved 12 October 2014.
Shivani Sharma. "Application of Genetic Engineering in Bioremediation: Deinococcus Radiodurans". biotecharticles.com. Archived from the original on 25 October 2014. Retrieved 25 October 2014.
Katharine Sanderson. "New Portable Kit Detects Arsenic In Wells". acs.org. Archived from the original on 4 October 2013. Retrieved 25 October 2014.
EditorDavid. "Anti-GMO Activists Slow Scientists Breeding a CO2-Reducing Superplant". science.slashdot.org. Archived from the original on 14 July 2019. Retrieved 14 July 2019.
"Patients to be frozen into state of suspended animation for surgery". The Telegraph. 26 September 2010. Archived from the original on 5 February 2011. Retrieved 21 April 2011.
"Doubt on Anti-Aging Molecule as Drug Trial Stops". The New York Times. 10 January 2011. Archived from the original on 26 October 2011. Retrieved 1 May 2011.
"Signs of ageing halted in the lab". BBC News. 2 November 2011. Archived from the original on 17 December 2011. Retrieved 16 December 2011.
"Aiming for clinical excellence". The Guardian. 26 November 2011. Archived from the original on 31 December 2013. Retrieved 16 December 2011.
"Nanotechnoglogy world: Nanomedicine offers new cures". The Guardian. 6 September 2011. Archived from the original on 31 December 2013. Retrieved 16 December 2011.
"Genetic test could be used to 'personalise' drugs, say scientists". The Independent. 1 March 2010. Archived from the original on 4 March 2010. Retrieved 16 April 2011.
"Scientists Grow Viable Urethras From Boys' Cells". Fox News. 8 March 2011. Archived from the original on 11 March 2011. Retrieved 27 April 2011.
"Doctors grapple with the value of robotic surgery". Houston Chronicle. 16 September 2011. Retrieved 24 December 2011.
"Robotic surgery making inroads in many medical procedures". The Jakarta Post. 8 March 2011. Archived from the original on 20 December 2011. Retrieved 24 December 2011.
"Doctors Perform First Fully Robotic Surgery". PC World. 21 October 2010. Archived from the original on 24 November 2010. Retrieved 24 December 2011.
"Scientists make eye's retina from stem cells". BBC News. 6 April 2011. Archived from the original on 25 April 2011. Retrieved 27 April 2011.
"Medical marvels". The Guardian. 30 January 2009. Archived from the original on 22 October 2014. Retrieved 16 December 2011.
"'Artificial life' breakthrough announced by scientists". BBC News. 20 May 2010. Archived from the original on 11 May 2011. Retrieved 29 April 2011.
"Scientist Craig Venter creates life for first time in laboratory sparking debate about 'playing god'". The Telegraph. 20 May 2010. Archived from the original on 25 December 2011. Retrieved 29 April 2011.
"Artificial blood vessels created on a 3D printer". BBC News. 16 September 2011. Archived from the original on 29 December 2011. Retrieved 26 December 2011.
"Penis tissue replaced in the lab". BBC News. 10 November 2009. Archived from the original on 3 March 2012. Retrieved 26 December 2011.
"U.S. scientists create artificial lungs, of sorts". Reuters. 24 June 2010. Archived from the original on 27 July 2012. Retrieved 26 December 2011.
"Silkworms could aid a breakthrough in tissue engineering". BBC News. 15 December 2011. Archived from the original on 15 December 2011. Retrieved 26 December 2011.
"Research updates: CMU prof wins grants for very cool technology". Pittsburgh Post-Gazette. 11 August 2010. Archived from the original on 4 October 2020. Retrieved 18 November 2011.
"DARPA Program Seeks to Use Brain Implants to Control Mental Illness – MIT Technology Review". MIT Technology Review.
"Mind-reading research: the major breakthroughs". The Telegraph. 22 September 2011. Archived from the original on 3 December 2011. Retrieved 18 November 2011.
"'Mind-reading device' recreates what we see in our heads". The Telegraph. 22 September 2011. Archived from the original on 11 November 2011. Retrieved 18 November 2011.
"'Mind Control' Possible in 5 Years: IBM". NBC Bay Area. 21 December 2011. Archived from the original on 31 December 2013. Retrieved 21 December 2011.
"Brown to receive up to $19M to engineer next-generation brain-computer interface". Brown.edu. Archived from the original on 10 July 2019. Retrieved 9 July 2019.
"The new field of sonogenetics uses sound waves to control the behavior of brain cells". medicalxpress.com. 12 August 2019. Archived from the original on 25 September 2019. Retrieved 25 September 2019.
Rachel Kaufman (28 January 2011). "New Invisibility Cloak Closer to Working "Magic"". National Geographic News. Archived from the original on 3 February 2011. Retrieved 4 February 2011.
"Laser gun tested on US Navy ship in Pacific Ocean". BBC News. 11 April 2011. Archived from the original on 16 April 2011. Retrieved 18 April 2011.
"Electromagnetic weapons – Frying tonight". The Economist. 15 October 2011. Archived from the original on 19 November 2011. Retrieved 19 November 2011.
"Navy Sets World Record With Incredible, Sci-Fi Weapon". Fox News. 10 December 2010. Archived from the original on 27 November 2011. Retrieved 19 November 2011.
"Star Trek-style force-field armour being developed by military scientists". The Telegraph. 20 March 2010. Archived from the original on 28 January 2011. Retrieved 16 April 2011.
"Navy tests new vehicle-mounted laser weapon". 29 September 2014. Archived from the original on 11 October 2014.
"New Imagery of Asteroid Mission". NASA. 13 August 2013. Archived from the original on 12 November 2013. Retrieved 12 November 2013.
"Breakthrough Initiatives". breakthroughinitiatives.org. Archived from the original on 22 May 2019. Retrieved 29 August 2020.
"Spaceworks may have a real-world stasis chamber for space travel by 2018". Digital Trends. 29 January 2017. Archived from the original on 2 February 2017. Retrieved 1 February 2017.
"SoftBank robot to reach US in less than a year". TechnologyTell. Archived from the original on 14 October 2014. Retrieved 9 October 2014.
"Tiny motors may be big in surgery". BBC News. 20 January 2009. Archived from the original on 4 October 2020. Retrieved 21 April 2011.
Christopher Mims (2009). "Exoskeletons Give New Life to Legs". Scientific American. Archived from the original on 4 October 2020. Retrieved 21 April 2009.
"Riders on a swarm". The Economist. 12 August 2010. Archived from the original on 25 March 2011. Retrieved 21 April 2011.
Sharon Gaudin (2 April 2014). "U.S. Navy to test humanoid robotic firefighters". Computerworld. Archived from the original on 20 October 2014. Retrieved 20 October 2014.
"Airless Tire Promises Grace Under Pressure for Soldiers". Scientific American. 11 August 2008. Archived from the original on 29 April 2011. Retrieved 6 December 2011.
"New tire models to go without air or oil". The Daily Yomiuri. 6 December 2011. Archived from the original on 5 December 2011. Retrieved 6 December 2011.
Masuyama, K.; Barrett, S. R. H. (2013). "On the performance of electrohydrodynamic propulsion". Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences. 469 (2154): 20120623. Bibcode:2013RSPSA.46920623M. doi:10.1098/rspa.2012.0623.
"Electrohydrodynamic effect offers promise for efficient propulsion in air". Archived from the original on 18 September 2015.
Scott, William B. (27 November 2006), "Morphing Wings", Aviation Week & Space Technology, archived from the original on 26 April 2011, retrieved 26 April 2011
"FlexSys Inc.: Aerospace". Archived from the original on 16 June 2011. Retrieved 26 April 2011.
Kota, Sridhar; Osborn, Russell; Ervin, Gregory; Maric, Dragan; Flick, Peter; Paul, Donald. "Mission Adaptive Compliant Wing – Design, Fabrication and Flight Test" (PDF). Ann Arbor, MI; Dayton, OH, U.S.A.: FlexSys Inc., Air Force Research Laboratory. Archived from the original (PDF) on 22 March 2012. Retrieved 26 April 2011.
"Showcase UAV Demonstrates Flapless Flight". BAE Systems. 2010. Archived from the original on 7 July 2011. Retrieved 22 December 2010.
"Demon UAV jets into history by flying without flaps". Metro.co.uk. London: Associated Newspapers Limited. 28 September 2010. Archived from the original on 23 August 2011. Retrieved 29 September 2010.
"Terrafugia Transition flying car to go into production after US approval". The Australian. 1 July 2010. Retrieved 6 December 2011.
"Stuck in traffic? Turn your car into a plane in 30 secs". The Times of India. 2 July 2010. Archived from the original on 27 October 2012. Retrieved 6 December 2011.
"Rocket powered by nuclear fusion could send humans to Mars". 4 April 2013. Archived from the original on 2 November 2014.
"Flying train unveiled by Japanese scientists". CNN. 13 May 2011. Archived from the original on 9 January 2012. Retrieved 7 December 2011.
"Robot plane-train uses ground-effect principle to levitate". Wired. 12 May 2011. Archived from the original on 21 November 2011. Retrieved 7 December 2011.
"Flying into the future: New Zealand company to make personal jet packs". The Telegraph. 24 February 2010. Archived from the original on 29 November 2011. Retrieved 6 December 2011.
"China scientists claim 1,200 km/h train". CNN. 1 February 2011. Archived from the original on 26 November 2011. Retrieved 7 December 2011.
"Laboratory working on train to run at 1,000 km/h". Shanghai Daily. 3 August 2010. Archived from the original on 17 January 2012. Retrieved 7 December 2011.
"How vactrains work". The Seattle Times. 16 August 2010. Archived from the original on 22 September 2010. Retrieved 7 December 2011.
"The Potential for Maglev Applications". about.com.
"Pod Cars Start to Gain Traction in Some Cities". The New York Times. 20 September 2010. Archived from the original on 12 May 2013. Retrieved 7 December 2011.
"Are driverless pods the future?". BBC News. 18 December 2007. Archived from the original on 17 February 2009. Retrieved 7 December 2011.
Physical Internet would increase profits, reduce carbon emissions, study finds Archived 27 January 2013 at the Wayback Machine. Phys.org. Retrieved on 21 July 2013.
"The Disgraceful Dockless Drama: What Dockless Bikes/Scooters Are Exposing". Have A Go. 18 April 2018. Archived from the original on 29 May 2018. Retrieved 4 June 2018.
"Robot passes test in space elevator contest". The Washington Post. 5 November 2009. Archived from the original on 2 April 2015. Retrieved 19 November 2011.
"Plans to develop space-plane are go". The Australian. 20 October 2008. Retrieved 7 December 2011.
"UK Skylon spaceplane passes key review". BBC News. 24 May 2011. Archived from the original on 20 January 2012. Retrieved 7 December 2011.

    "Air Force says it's extending mission of mysterious X-37B". Los Angeles Times. 29 November 2011. Archived from the original on 9 December 2011. Retrieved 7 December 2011.

Further reading

    Ten Breakthrough Technologies in 2015, MIT Technology Review
    Ten Breakthrough Technologies in 2016, MIT Technology Review
    Ten Breakthrough Technologies in 2018, MIT Technology Review
    Ten Breakthrough Technologies in 2019, MIT Technology Review
    Ten Breakthrough Technologies in 2020, MIT Technology Review 

    Top 3 Technology Trends For Leaders in 2020

Categories:

    Emerging technologiesTechnology developmentTechnology forecastingTechnology in society

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Español
    हिन्दी
    Монгол
    Português
    தமிழ்
    Українська
    Tiếng Việt
    中文

Edit links

    This page was last edited on 17 May 2021, at 12:05 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


! Machine Age

!! https://en.wikipedia.org/wiki/Machine_Age

From Wikipedia, the free encyclopedia

History of technology
By technological eras
By historical regions
By type of technology
Technology timelines
Article indices

    vte

Metalworking machinery
A freight locomotive
Bonneville Dam (1933–1937)

The Machine Age[1][2][3] is an era that includes the early-to-mid 20th century, sometimes also including the late 19th century. An approximate dating would be about 1880 to 1945. Considered to be at its peak in the time between the first and second world wars, the Machine Age overlaps with the late part of the Second Industrial Revolution (which ended around 1914 at the start of World War I) and continues beyond it until 1945 at the end of World War II. The 1940s saw the beginning of the Atomic Age, where modern physics saw new applications such as the atomic bomb,[4] the first computers,[5] and the transistor.[6] The Digital Revolution ended the intellectual model of the machine age founded in the mechanical and heralding a new more complex model of high technology. The digital era has been called the Second Machine Age, with its increased focus on machines that do mental tasks.
Contents

    1 Universal chronology
    2 Developments
    3 Social influence
    4 Environmental influence
    5 International relations
    6 Arts and architecture
    7 See also
    8 References

Universal chronology
Developments
The Yamato and other battleships in World War II were the heaviest artillery-carrying ships ever launched. They proved inferior to aircraft carriers and missile-carrying warships.
Some locomotives built in the mid-20th century were the heaviest ever.
	
This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (November 2012) (Learn how and when to remove this template message)

Artifacts of the Machine Age include:

    Reciprocating steam engine replaced by gas turbines, internal combustion engines and electric motors
    Electrification based on large hydroelectric and thermal electric power production plants and distribution systems
    Mass production of high-volume goods on moving assembly lines, particularly of the automobile[7]
    Gigantic production machinery, especially for producing and working metal, such as steel rolling mills, bridge component fabrication, and automobile body presses
    Powerful earthmoving equipment
    Steel framed buildings of great height (the skyscraper[8])
    Radio and phonograph technology
    High speed printing presses, enabling the production of low cost newspapers and mass market magazines
    Low cost appliances for the mass market that employ fractional horsepower electric motors, such as the vacuum cleaner and the washing machine
    Fast and comfortable long distance travel by railroad, automobile, and aircraft
    Development and employment of modern war machines such as tanks, aircraft, submarines and the modern battleship
    Streamline designs in automobiles and trains, influenced by aircraft design

Social influence

    The rise of mass market advertising and consumerism
    Nationwide branding and distribution of goods, replacing local arts and crafts
    Nationwide cultural leveling due to exposure to films and network broadcasting
    Mass-produced government propaganda through print, audio, and motion pictures
    Replacement of skilled crafts with low skilled labor
    Growth of strong corporations through their abilities to exploit economies of scale in materials and equipment acquisition, manufacturing, and distribution
    Corporate exploitation of labor leading to the creation of strong trade unions as a countervailing force
    Aristocracy with weighted suffrage or male-only suffrage replaced by democracy with universal suffrage, parallel to one-party states
    First-wave feminism
    Increased economic planning, including five-year plans, public works and occasional war economy, including nationwide conscription and rationing

Environmental influence

    Exploitation of natural resources with little concern for the ecological consequences; a continuation of 19th century practices but at a larger scale.
    Release of synthetic dyes, artificial flavorings, and toxic materials into the consumption stream without testing for adverse health effects.
    Rise of petroleum as a strategic resource

International relations

    Conflicts between nations regarding access to energy sources (particularly oil) and material resources (particularly iron and various metals with which it is alloyed) required to ensure national self-sufficiency. Such conflicts were contributory to two devastating world wars.
    Climax of New Imperialism and beginning of decolonization

Arts and architecture
Nude Descending a Staircase, No. 2 (1912) by Marcel Duchamp displays Cubist and Futurist characteristics

The Machine Age is considered to have influenced:

    Dystopian films including Charlie Chaplin's Modern Times and Fritz Lang's Metropolis
    Streamline Moderne appliance design and architecture
    Bauhaus style
    Steampunk – Science fiction genre inspired by 19th-century industrial steam-powered machinery
    Dieselpunk – Retrofuturistic science fiction subgenre inspired by early-to-mid 20th-century diesel-based technology
    Modern art
        Cubism
        Art Deco decorative style
        Futurism
        Music

See also

    Second Industrial Revolution

References

Mentality and freedom By William Armstrong Fairburn. Page 219.
The Playground, Volume 15 By Playground and Recreation Association of America
Public libraries, Volume 6
"1944: Princeton builds the A-bomb".
"Archived copy". Archived from the original on 2011-05-19. Retrieved 2011-06-03.
"The First Transistor Invented in 1947".
"Industrialization of American Society". Engr.sjsu.edu (College of Engineering, San José State University). Archived from the original on 2010-09-19. Retrieved 2013-08-14.

    "The Plan Comes Together - Encyclopedia of Chicago". Encyclopedia.chicagohistory.org. Retrieved 2013-08-14.

Categories:

    Historical erasHistory of technologySecond Industrial Revolution19th century in technology20th century in technology

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Bân-lâm-gú
    Català
    Español
    فارسی
    한국어
    Bahasa Indonesia

Edit links

    This page was last edited on 8 May 2021, at 11:18 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki





! Market failure
!! 
!! https://en.wikipedia.org/wiki/Market_failure

From Wikipedia, the free encyclopedia

While factories and refineries provide jobs and wages, they are also an example of a market failure, as they impose negative externalities on the surrounding region via their airborne pollutants.

In neoclassical economics, market failure is a situation in which the allocation of goods and services by a free market is not Pareto efficient, often leading to a net loss of economic value.[1] Market failures can be viewed as scenarios where individuals' pursuit of pure self-interest leads to results that are not efficient– that can be improved upon from the societal point of view.[2][3] The first known use of the term by economists was in 1958,[4] but the concept has been traced back to the Victorian philosopher Henry Sidgwick.[5] Market failures are often associated with public goods,[6] time-inconsistent preferences,[7] information asymmetries,[8] non-competitive markets, principal–agent problems, or externalities.[9]

The existence of a market failure is often the reason that self-regulatory organizations, governments or supra-national institutions intervene in a particular market.[10][11] Economists, especially microeconomists, are often concerned with the causes of market failure and possible means of correction.[12] Such analysis plays an important role in many types of public policy decisions and studies.

However, government policy interventions, such as taxes, subsidies, wage and price controls, and regulations, may also lead to an inefficient allocation of resources, sometimes called government failure.[13] Given the tension between the economic costs caused by market failure and costs caused by "government failure", policymakers attempting to maximize economic value are sometimes (but not always) faced with a choice between two inefficient outcomes, i.e. inefficient market outcomes with or without government interventions.

Most mainstream economists believe that there are circumstances (like building codes or endangered species) in which it is possible for government or other organizations to improve the inefficient market outcome. Several heterodox schools of thought disagree with this as a matter of ideology.[14]

An ecological market failure exists when human activity in a market economy is exhausting critical non-renewable resources, disrupting fragile ecosystems, or overloading biospheric waste absorption capacities. In none of these cases does the criterion of Pareto efficiency obtain.[15]
Contents

    1 Categories
        1.1 Nature of the market
        1.2 Nature of the goods
            1.2.1 Non-excludability
            1.2.2 Externalities
        1.3 Nature of the exchange
            1.3.1 Bounded rationality
            1.3.2 Coase theorem
        1.4 Business cycles
    2 Interpretations and policy examples
    3 Objections
        3.1 Public choice
        3.2 Austrian
        3.3 Marxian
        3.4 Ecological
        3.5 Chang's criticism
        3.6 Lipsey and Lancaster criticism
        3.7 Zerbe and McCurdy
    4 See also
    5 References
    6 External links

Categories

Different economists have different views about what events are the sources of market failure. Mainstream economic analysis widely accepts that a market failure (relative to Pareto efficiency) can occur for three main reasons: if the market is "monopolised" or a small group of businesses hold significant market power, if production of the good or service results in an externality (external costs or benefits), or if the good or service is a "public good".[16]
Nature of the market
Main articles: Market structure and market power

Agents in a market can gain market power, allowing them to block other mutually beneficial gains from trade from occurring. This can lead to inefficiency due to imperfect competition, which can take many different forms, such as monopolies,[17] monopsonies, or monopolistic competition, if the agent does not implement perfect price discrimination.

It is then a further question about what circumstances allow a monopoly to arise. In some cases, monopolies can maintain themselves where there are "barriers to entry" that prevent other companies from effectively entering and competing in an industry or market. Or there could exist significant first-mover advantages in the market that make it difficult for other firms to compete. Moreover, monopoly can be a result of geographical conditions created by huge distances or isolated locations. This leads to a situation where there are only few communities scattered across a vast territory with only one supplier. Australia is an example that meets this description.[18] A natural monopoly is a firm whose per-unit cost decreases as it increases output; in this situation it is most efficient (from a cost perspective) to have only a single producer of a good. Natural monopolies display so-called increasing returns to scale. It means that at all possible outputs marginal cost needs to be below average cost if average cost is declining. One of the reasons is the existence of fixed costs, which must be paid without considering the amount of output, what results in a state where costs are evenly divided over more units leading to the reduction of cost per unit.[19]
Nature of the goods
Non-excludability

Some markets can fail due to the nature of the goods being exchanged. For instance, some goods can display the attributes of public goods[17] or common goods,[20] wherein sellers are unable to exclude non-buyers from using a product, as in the development of inventions that may spread freely once revealed, such as developing a new method of harvesting. This can cause underinvestment because developers cannot capture enough of the benefits from success to make the development effort worthwhile. This can also lead to resource depletion in the case of common-pool resources, whereby the use of the resource is rival but non-excludable, there is no incentive for users to conserve the resource. An example of this is a lake with a natural supply of fish: if people catch the fish faster than the fish can reproduce, then the fish population will dwindle until there are no fish left for future generations.
Externalities

A good or service could also have significant externalities,[9][17] where gains or losses associated with the product, production or consumption of a product, differ from the private cost. These externalities can be innate to the methods of production or other conditions important to the market.[3]

Traffic congestion is an example of market failure that incorporates both non-excludability and externality. Public roads are common resources that are available for the entire population's use (non-excludable), and act as a complement to cars (the more roads there are, the more useful cars become). Because there is very low cost but high benefit to individual drivers in using the roads, the roads become congested, decreasing their usefulness to society. Furthermore, driving can impose hidden costs on society through pollution (externality). Solutions for this include public transportation, congestion pricing, tolls, and other ways of making the driver include the social cost in the decision to drive.[3]

Perhaps the best example of the inefficiency associated with common/public goods and externalities is the environmental harm caused by pollution and overexploitation of natural resources.[3]
Nature of the exchange

Some markets can fail due to the nature of their exchange. Markets may have significant transaction costs, agency problems, or informational asymmetry.[3][17] Such incomplete markets may result in economic inefficiency, but also have a possibility of improving efficiency through market, legal, and regulatory remedies. From contract theory, decisions in transactions where one party has more or better information than the other is considered "asymmetry". This creates an imbalance of power in transactions which can sometimes cause the transactions to go awry. Examples of this problem are adverse selection[21] and moral hazard. Most commonly, information asymmetries are studied in the context of principal–agent problems. George Akerlof, Michael Spence, and Joseph E. Stiglitz developed the idea and shared the 2001 Nobel Prize in Economics.[22]
Bounded rationality
Main article: Bounded rationality

In Models of Man, Herbert A. Simon points out that most people are only partly rational, and are emotional/irrational in the remaining part of their actions. In another work, he states "boundedly rational agents experience limits in formulating and solving complex problems and in processing (receiving, storing, retrieving, transmitting) information" (Williamson, p. 553, citing Simon). Simon describes a number of dimensions along which "classical" models of rationality can be made somewhat more realistic, while sticking within the vein of fairly rigorous formalization. These include:

    limiting what sorts of utility functions there might be.
    recognizing the costs of gathering and processing information.
    the possibility of having a "vector" or "multi-valued" utility function.

Simon suggests that economic agents employ the use of heuristics to make decisions rather than a strict rigid rule of optimization. They do this because of the complexity of the situation, and their inability to process and compute the expected utility of every alternative action. Deliberation costs might be high and there are often other, concurrent economic activities also requiring decisions.
Coase theorem

The Coase theorem, developed by Ronald Coase and labeled as such by George Stigler, states that private transactions are efficient as long as property rights exist, only a small number of parties are involved, and transactions costs are low. Additionally, this efficiency will take place regardless of who owns the property rights. This theory comes from a section of Coase's Nobel prize-winning work The Problem of Social Cost. While the assumptions of low transactions costs and a small number of parties involved may not always be applicable in real-world markets, Coase's work changed the long-held belief that the owner of property rights was a major determining factor in whether or not a market would fail.[23] The Coase theorem points out when one would expect the market to function properly even when there are externalities.

    A market is an institution in which individuals or firms exchange not just commodities, but the rights to use them in particular ways for particular amounts of time. [...] Markets are institutions which organize the exchange of control of commodities, where the nature of the control is defined by the property rights attached to the commodities.[11]

As a result, agents' control over the uses of their commodities can be imperfect, because the system of rights which defines that control is incomplete. Typically, this falls into two generalized rights – excludability and transferability. Excludability deals with the ability of agents to control who uses their commodity, and for how long – and the related costs associated with doing so. Transferability reflects the right of agents to transfer the rights of use from one agent to another, for instance by selling or leasing a commodity, and the costs associated with doing so. If a given system of rights does not fully guarantee these at minimal (or no) cost, then the resulting distribution can be inefficient.[11] Considerations such as these form an important part of the work of institutional economics.[24] Nonetheless, views still differ on whether something displaying these attributes is meaningful without the information provided by the market price system.[25]
Business cycles

Macroeconomic business cycles are a part of the market. They are characterized by constant downswings and upswings which influence economic activity. Therefore, this situation requires some kind of government intervention.[18]
Interpretations and policy examples

The above causes represent the mainstream view of what market failures mean and of their importance in the economy. This analysis follows the lead of the neoclassical school, and relies on the notion of Pareto efficiency,[26] which can be in the "public interest", as well as in interests of stakeholders with equity.[12] This form of analysis has also been adopted by the Keynesian or new Keynesian schools in modern macroeconomics, applying it to Walrasian models of general equilibrium in order to deal with failures to attain full employment, or the non-adjustment of prices and wages.

Policies to prevent market failure are already commonly implemented in the economy. For example, to prevent information asymmetry, members of the New York Stock Exchange agree to abide by its rules in order to promote a fair and orderly market in the trading of listed securities. The members of the NYSE presumably believe that each member is individually better off if every member adheres to its rules – even if they have to forego money-making opportunities that would violate those rules.

A simple example of policies to address market power is government antitrust policies. As an additional example of externalities, municipal governments enforce building codes and license tradesmen to mitigate the incentive to use cheaper (but more dangerous) construction practices, ensuring that the total cost of new construction includes the (otherwise external) cost of preventing future tragedies. The voters who elect municipal officials presumably feel that they are individually better off if everyone complies with the local codes, even if those codes may increase the cost of construction in their communities.

CITES is an international treaty to protect the world's common interest in preserving endangered species – a classic "public good" – against the private interests of poachers, developers and other market participants who might otherwise reap monetary benefits without bearing the known and unknown costs that extinction could create. Even without knowing the true cost of extinction, the signatory countries believe that the societal costs far outweigh the possible private gains that they have agreed to forego.

Some remedies for market failure can resemble other market failures. For example, the issue of systematic underinvestment in research is addressed by the patent system that creates artificial monopolies for successful inventions.
Objections
See also: Government failure
Public choice

Economists such as Milton Friedman from the Chicago school and others from the Public Choice school, argue[citation needed] that market failure does not necessarily imply that the government should attempt to solve market failures, because the costs of government failure might be worse than those of the market failure it attempts to fix. This failure of government is seen as the result of the inherent problems of democracy and other forms of government perceived by this school and also of the power of special-interest groups (rent seekers) both in the private sector and in the government bureaucracy. Conditions that many would regard as negative are often seen as an effect of subversion of the free market by coercive government intervention. Beyond philosophical objections, a further issue is the practical difficulty that any single decision maker may face in trying to understand (and perhaps predict) the numerous interactions that occur between producers and consumers in any market.
Austrian

Some advocates of laissez-faire capitalism, including many economists of the Austrian School, argue that there is no such phenomenon as "market failure". Israel Kirzner states that, "Efficiency for a social system means the efficiency with which it permits its individual members to achieve their individual goals."[27] Inefficiency only arises when means are chosen by individuals that are inconsistent with their desired goals.[28] This definition of efficiency differs from that of Pareto efficiency, and forms the basis of the theoretical argument against the existence of market failures. However, providing that the conditions of the first welfare theorem are met, these two definitions agree, and give identical results. Austrians argue that the market tends to eliminate its inefficiencies through the process of entrepreneurship driven by the profit motive; something the government has great difficulty detecting, or correcting.[29]
Marxian

Objections also exist on more fundamental bases, such as Marxian analysis. Colloquial uses of the term "market failure" reflect the notion of a market "failing" to provide some desired attribute different from efficiency – for instance, high levels of inequality can be considered a "market failure", yet are not Pareto inefficient, and so would not be considered a market failure by mainstream economics.[3] In addition, many Marxian economists would argue that the system of private property rights is a fundamental problem in itself, and that resources should be allocated in another way entirely. This is different from concepts of "market failure" which focuses on specific situations – typically seen as "abnormal" – where markets have inefficient outcomes. Marxists, in contrast, would say that markets have inefficient and democratically unwanted outcomes – viewing market failure as an inherent feature of any capitalist economy – and typically omit it from discussion, preferring to ration finite goods not exclusively through a price mechanism, but based upon need as determined by society expressed through the community.
Ecological
Part of a series on
Ecological economics
Diagram of natural resource flows-en.svg
Humanity's economic system viewed as a
subsystem of the global environment
Concepts

    Carrying capacity Ecological market failure Ecological model of competition Ecosystem services Embodied energy Energy accounting Entropy pessimism Index of Sustainable Economic Welfare Natural capital Spaceship Earth Steady-state economy Sustainability, 'weak' vs 'strong' Uneconomic growth

People
Works
Related topics

    vte

See also: Ecological economics § Not 'externalities', but cost shifting; Nicholas Georgescu-Roegen § Criticising neoclassical economics (weak versus strong sustainability); Tragedy of the commons; and Uneconomic growth

In ecological economics, the concept of externalities is considered a misnomer, since market agents are viewed as making their incomes and profits by systematically 'shifting' the social and ecological costs of their activities onto other agents, including future generations. Hence, externalities is a modus operandi of the market, not a failure: The market cannot exist without constantly 'failing'.

The fair and even allocation of non-renewable resources over time is a market failure issue of concern to ecological economics. This issue is also known as 'intergenerational fairness'. It is argued that the market mechanism fails when it comes to allocating the Earth's finite mineral stock fairly and evenly among present and future generations, as future generations are not, and cannot be, present on today's market.[30]:375 [31]:142f In effect, today's market prices do not, and cannot, reflect the preferences of the yet unborn.[32]:156–160 This is an instance of a market failure passed unrecognized by most mainstream economists, as the concept of Pareto efficiency is entirely static (timeless).[33]:181f Imposing government restrictions on the general level of activity in the economy may be the only way of bringing about a more fair and even intergenerational allocation of the mineral stock. Hence, Nicholas Georgescu-Roegen and Herman Daly, the two leading theorists in the field, have both called for the imposition of such restrictions: Georgescu-Roegen has proposed a minimal bioeconomic program, and Daly has proposed a comprehensive steady-state economy.[30]:374–79 [33] However, Georgescu-Roegen, Daly, and other economists in the field agree that on a finite Earth, geologic limits will inevitably strain most fairness in the longer run, regardless of any present government restrictions: Any rate of extraction and use of the finite stock of non-renewable mineral resources will diminish the remaining stock left over for future generations to use.[30]:366–69 [34]:369–71 [35]:165–67 [36]:270 [37]:37

Another ecological market failure is presented by the overutilisation of an otherwise renewable resource at a point in time, or within a short period of time. Such overutilisation usually occurs when the resource in question has poorly defined (or non-existing) property rights attached to it while too many market agents engage in activity simultaneously for the resource to be able to sustain it all. Examples range from over-fishing of fisheries and over-grazing of pastures to over-crowding of recreational areas in congested cities. This type of ecological market failure is generally known as the 'tragedy of the commons'. In this type of market failure, the principle of Pareto efficiency is violated the utmost, as all agents in the market are left worse off, while nobody are benefitting. It has been argued that the best way to remedy a 'tragedy of the commons'-type of ecological market failure is to establish enforceable property rights politically – only, this may be easier said than done.[15]:172f

The issue of anthropogenic global warming presents an overwhelming example of a 'tragedy of the commons'-type of ecological market failure: The Earth's atmosphere may be regarded as a 'global common' exhibiting poorly defined (non-existing) property rights, and the waste absorption capacity of the atmosphere with regard to carbon dioxide is presently being heavily overloaded by a large volume of emissions from the world economy.[38]:347f Historically, the fossil fuel dependence of the Industrial Revolution has unintentionally thrown mankind out of ecological equilibrium with the rest of the Earth's biosphere (including the atmosphere), and the market has failed to correct the situation ever since. Quite the opposite: The unrestricted market has been exacerbating this global state of ecological dis-equilibrium, and is expected to continue doing so well into the foreseeable future.[39]:95–101 This particular market failure may be remedied to some extent at the political level by the establishment of an international (or regional) cap and trade property rights system, where carbon dioxide emission permits are bought and sold among market agents.[15]:433–35

The term 'uneconomic growth' describes a pervasive ecological market failure: The ecological costs of further economic growth in a so-called 'full-world economy' like the present world economy may exceed the immediate social benefits derived from this growth.[15]:16–21
Chang's criticism

Chang[who?] states that "it is (implicitly) assumed the state knows everything and can do everything.”[18] Thus, this implies several assumptions about government in relation to market failures. There are three main statements. First of all, government representatives are able to evaluate the scope of market failures and to what extent it differs from efficient outcome. Secondly, having acquired the aforementioned knowledge they have capacity to re-establish market efficiency. Lastly, there has arisen an idea according to which decisions of policy-makers are not influenced by self-interest, but they are driven by altruism.[citation needed]
Lipsey and Lancaster criticism

They came up with the theory of the so-called the “second best.” They refuse Chang's theory and state that is it not possible to restore Pareto optimality even if policy makers possess the sufficient knowledge, intervene efficiently and altruism serves as stimulus for their decisions. On the other hand, the “second best” theory holds that when market failure occurs in one branch of the economy, it should be feasible to increase social welfare in another branch of the economy by violating Pareto efficiency instead of restoring Pareto efficiency by government intervention.[40]
Zerbe and McCurdy

Zerbe and McCurdy connected criticism of market failure paradigm to transaction costs. Market failure paradigm is defined as follows:

"A fundamental problem with the concept of market failure, as economists occasionally recognize, is that it describes a situation that exists everywhere.”

Transaction costs are part of each market exchange, although the price of transaction costs is not usually determined. They occur everywhere and are unpriced. Consequently, market failures and externalities can arise in the economy every time transaction costs arise. There is no place for government intervention. Instead, government should focus on the elimination of both transaction costs and costs of provision.[41]
See also

    Contract failure
    Distortion (economics)
    Government failure
    Highest and best use
    Public economics
    Social cost
    Tyranny of small decisions

References

NSW Government (2017). "A guide to categorising market failures for government policy development and evaluation" (PDF). New South Wales Department of Industry.
John O. Ledyard (2008). "market failure," The New Palgrave Dictionary of Economics, 2nd Ed. Abstract.
Paul Krugman and Robin Wells (2006). Economics, New York, Worth Publishers.
Francis M. Bator (1958). "The Anatomy of Market Failure," Quarterly Journal of Economics, 72(3) pp. 351–79 (press +).
Steven G. Medema (2007). "The Hesitant Hand: Mill, Sidgwick, and the Evolution of the Theory of Market Failure," History of Political Economy, 39(3), p p. 331–58. 2004 Online Working Paper.
Joseph E. Stiglitz (1989). "Markets, Market Failures, and Development," American Economic Review, 79(2), pp. 197–203.
•Ignacio Palacios-Huerta (2003) "Time-inconsistent preferences in Adam Smith and David Hume," History of Political Economy, 35(2), pp. 241–68 [1]
• Charles Wilson (2008). "adverse selection," The New Palgrave Dictionary of Economics 2nd Edition. Abstract.
   • Joseph E. Stiglitz (1998). "The Private Uses of Public Interests: Incentives and Institutions," Journal of Economic Perspectives, 12(2), pp. 3–22.
J.J. Laffont (2008). "externalities," The New Palgrave Dictionary of Economics, 2nd Ed. Abstract.
Kenneth J. Arrow (1969). "The Organization of Economic Activity: Issues Pertinent to the Choice of Market versus Non-market Allocations," in Analysis and Evaluation of Public Expenditures: The PPP System, Washington, D.C., Joint Economic Committee of Congress. PDF reprint as pp. 1–16 (press +).
Gravelle, Hugh; Ray Rees (2004). Microeconomics. Essex, England: Prentice Hall, Financial Times. pp. 314–46.
Mankiw, Gregory; Ronald Kneebone; Kenneth McKenzie; Nicholas Row (2002). Principles of Microeconomics: Second Canadian Edition. United States: Thomson-Nelson. pp. 157–58.
Weimer, David; Aidan R. Vining (2004). Policy Analysis: Concepts and Practice. Prentice Hall.
Mankiw, N. Gregory (2009). Brief Principles of Macroeconomics. South-Western Cengage Learning. pp. 10–12.
Daly, Herman E.; Farley, Joshua (2011). Ecological Economics. Principles and Applications (PDF contains full textbook) (2nd ed.). Washington: Island Press. ISBN 9781597266819.
Krugman, Paul; Robin Wells; Anthony Myatt (2006). Microeconomics: Canadian Edition. Worth Publishers. pp. 160–62.
DeMartino, George (2000). Global Economy, Global Justice. Routledge. p. 70. ISBN 0-415-22401-2.
Brian., Dollery (2001). The political economy of local government. Wallis, Joe (Joe L.). Northampton, MA: Edward Elgar Pub. ISBN 1840644516. OCLC 46462759.
"Natural monopolies exist when one firm dominates an industry". www.economicsonline.co.uk. Retrieved 2018-04-24.
Hussain, Waheed (2018), "The Common Good", in Zalta, Edward N. (ed.), The Stanford Encyclopedia of Philosophy (Spring 2018 ed.), Metaphysics Research Lab, Stanford University, retrieved 2020-10-31
Finkelstein, Amy; Poterba, James (2004). "Adverse Selection in Insurance Markets: Policyholder Evidence from the U.K. Annuity Market". The University of Chicago Press. 112 (1): 183–208. doi:10.1086/379936. JSTOR 10.1086/379936. S2CID 14608232 – via JSTOR.
Huffman, Max (December 2010). "Neo-Behavioralism?": 9. SSRN 1730365.
Michael Parkin (2008). "Microeconomics," 9th Ed. p. 379. University of Western Ontario.
Bowles, Samuel (2004). Microeconomics: Behavior, Institutions, and Evolution. United States: Russel Sage Foundation.
Machan, R. Tibor, Some Skeptical Reflections on Research and Development, Hoover Press
MacKenzie, D.W. (2002-08-26). "The Market Failure Myth". Ludwig von Mises Institute. Retrieved 2008-11-25.
Israel Kirzner (1963). Market Theory and the Price System. Princeton. N.J.: D. Van Nostrand Company. p. 35.
Roy E. Cordato (1980). "The Austrian Theory of Efficiency and the Role of Government" (PDF). The Journal of Libertarian Studies. 4 (4): 393–403 [396].
Roy E. Cordato (1980). "The Austrian Theory of Efficiency and the Role of Government" (PDF). The Journal of Libertarian Studies. 4 (4): 393–403.
Georgescu-Roegen, Nicholas (1975). "Energy and Economic Myths" (PDF). Southern Economic Journal. Tennessee: Southern Economic Association. 41 (3): 347–81. doi:10.2307/1056148. JSTOR 1056148.
Perez-Carmona, Alexander (2013). "Growth: A Discussion of the Margins of Economic and Ecological Thought". In Meuleman, Louis (ed.). Transgovernance. Advancing Sustainability Governance. Heidelberg: Springer. pp. 83–161. doi:10.1007/978-3-642-28009-2_3. ISBN 9783642280085 – via SlideShare.
Martínez-Alier, Juan (1987). Ecological Economics: Energy, Environment and Society. Oxford: Basil Blackwell. ISBN 0631171460.
Daly, Herman E. (1992). Steady-state economics (2nd ed.). London: Earthscan Publications.
Daly, Herman E., ed. (1980). Economics, Ecology, Ethics. Essays Towards a Steady-State Economy (PDF contains only the introductory chapter of the book) (2nd ed.). San Francisco: W.H. Freeman and Company. ISBN 0716711788.
Boulding, Kenneth E. (1981). Evolutionary Economics. Beverly Hills: Sage Publications. ISBN 0803916485.
Bonaiuti, Mauro (2008). "Searching for a Shared Imaginary – A Systemic Approach to Degrowth and Politics" (PDF contains all conference proceedings). In Flipo, Fabrice; Schneider, François (eds.). Proceedings of the First International Conference on Economic De-Growth for Ecological Sustainability and Social Equity. Paris.
Valero Capilla, Antonio; Valero Delgado, Alicia (2014). Thanatia: The Destiny of the Earth's Mineral Resources. A Thermodynamic Cradle-to-Cradle Assessment (PDF contains only the introductory chapter of the book). Singapore: World Scientific Publishing. Bibcode:2014tdem.book.....C. doi:10.1142/7323. ISBN 9789814273930.
McConnell, Campbell R.; et al. (2009). Economics. Principles, Problems and Policies (PDF) (18th ed.). New York: McGraw-Hill. ISBN 9780073375694. Archived from the original (PDF contains full textbook) on 2016-10-06. Retrieved 2016-04-15.
Schmitz, John E.J. (2007). The Second Law of Life: Energy, Technology, and the Future of Earth As We Know It (Link to the author's science blog, based on his textbook). Norwich: William Andrew Publishing. ISBN 978-0815515371.
Lipsey, Richard (2007). "Reflections on the General Theory of Second Best at its Golden Jubilee". International Tax and Public Finance. 14 (4): 349–364. doi:10.1007/s10797-007-9036-x. S2CID 154486855.

    McCurdy, Howard E.; Zerbe Jr., Richard O. (1999). "The Failure of Market Failure". Journal of Policy Analysis and Management. 18 (4): 558–578. doi:10.1002/(SICI)1520-6688(199923)18:4<558::AID-PAM2>3.0.CO;2-U.

External links

    Market Failures – in Price Theory, an intermediate text by David D. Friedman

    vte

Microeconomics

    vte

Capitalism
Authority control Edit this at Wikidata	

    GND: 4130502-4 MA: 178411942

Categories:

    Market failure

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikiquote

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    Русский
    中文

Edit links

    This page was last edited on 29 April 2021, at 02:45 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki








! ''"death pledge"''

! Mortgage loan
! 

https://en.wikipedia.org/wiki/Mortgage_loan

!! 
!! The word mortgage is derived from a Law French term used in Britain in the Middle Ages meaning "death pledge" and refers to the pledge ending (dying)

From Wikipedia, the free encyclopedia

"Mortgage" redirects here. For mortgages in general and their legal structure, see Mortgage law. For mortgage loans secured on ships, see Ship mortgage. For other uses, see Mortgage (disambiguation).
	
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Mortgage loan" – news · newspapers · books · scholar · JSTOR (April 2020) (Learn how and when to remove this template message)
Finance
Philippine-stock-market-board.jpg
Markets
Instruments
Corporate
Personal
Public
Banking
Regulation · Financial law
Economic history

    vte

A mortgage loan or simply mortgage (/ˈmɔːrɡɪdʒ/) is a loan used either by purchasers of real property to raise funds to buy real estate, or alternatively by existing property owners to raise funds for any purpose while putting a lien on the property being mortgaged. The loan is "secured" on the borrower's property through a process known as mortgage origination. This means that a legal mechanism is put into place which allows the lender to take possession and sell the secured property ("foreclosure" or "repossession") to pay off the loan in the event the borrower defaults on the loan or otherwise fails to abide by its terms. The word mortgage is derived from a Law French term used in Britain in the Middle Ages meaning "death pledge" and refers to the pledge ending (dying) when either the obligation is fulfilled or the property is taken through foreclosure.[1] A mortgage can also be described as "a borrower giving consideration in the form of a collateral for a benefit (loan)".

Mortgage borrowers can be individuals mortgaging their home or they can be businesses mortgaging commercial property (for example, their own business premises, residential property let to tenants, or an investment portfolio). The lender will typically be a financial institution, such as a bank, credit union or building society, depending on the country concerned, and the loan arrangements can be made either directly or indirectly through intermediaries. Features of mortgage loans such as the size of the loan, maturity of the loan, interest rate, method of paying off the loan, and other characteristics can vary considerably. The lender's rights over the secured property take priority over the borrower's other creditors, which means that if the borrower becomes bankrupt or insolvent, the other creditors will only be repaid the debts owed to them from a sale of the secured property if the mortgage lender is repaid in full first.

In many jurisdictions, it is normal for home purchases to be funded by a mortgage loan. Few individuals have enough savings or liquid funds to enable them to purchase property outright. In countries where the demand for home ownership is highest, strong domestic markets for mortgages have developed. Mortgages can either be funded through the banking sector (that is, through short-term deposits) or through the capital markets through a process called "securitization", which converts pools of mortgages into fungible bonds that can be sold to investors in small denominations.
Mortgage Loan. Total Payment (3 Fixed Interest Rates & 2 Loan Term) = Loan Principal + Expenses (Taxes & fees) + Total interest to be paid.
The final cost will be exactly the same:
* when the interest rate is 2.5% and the term is 30 years than when the interest rate is 5% and the term is 15 years
* when the interest rate is 5% and the term is 30 years than when the interest rate is 10% and the term is 15 years
Contents

    1 Mortgage loan basics
        1.1 Basic concepts and legal regulation
        1.2 Mortgage underwriting
        1.3 Mortgage loan types
            1.3.1 Loan to value and down payments
            1.3.2 Value: appraised, estimated, and actual
            1.3.3 Payment and debt ratios
            1.3.4 Standard or conforming mortgages
            1.3.5 Foreign currency mortgage
    2 Repaying the mortgage
        2.1 Principal and interest
        2.2 Interest only
        2.3 Interest-only lifetime mortgage
        2.4 Reverse mortgages
        2.5 Interest and partial principal
        2.6 Variations
        2.7 Foreclosure and non-recourse lending
    3 National differences
        3.1 United States
        3.2 Canada
        3.3 United Kingdom
        3.4 Continental Europe
            3.4.1 Recent trends
        3.5 Malaysia
        3.6 Islamic countries
    4 Mortgage insurance
    5 See also
        5.1 General, or related to more than one nation
        5.2 Related to the United Kingdom
        5.3 Related to the United States
        5.4 Other nations
        5.5 Legal details
    6 References
    7 External links

Mortgage loan basics
Basic concepts and legal regulation

According to Anglo-American property law, a mortgage occurs when an owner (usually of a fee simple interest in realty) pledges his or her interest (right to the property) as security or collateral for a loan. Therefore, a mortgage is an encumbrance (limitation) on the right to the property just as an easement would be, but because most mortgages occur as a condition for new loan money, the word mortgage has become the generic term for a loan secured by such real property. As with other types of loans, mortgages have an interest rate and are scheduled to amortize over a set period of time, typically 30 years. All types of real property can be, and usually are, secured with a mortgage and bear an interest rate that is supposed to reflect the lender's risk.

Mortgage lending is the primary mechanism used in many countries to finance private ownership of residential and commercial property (see commercial mortgages). Although the terminology and precise forms will differ from country to country, the basic components tend to be similar:

    Property: the physical residence being financed. The exact form of ownership will vary from country to country and may restrict the types of lending that are possible.
    Mortgage: the security interest of the lender in the property, which may entail restrictions on the use or disposal of the property. Restrictions may include requirements to purchase home insurance and mortgage insurance, or pay off outstanding debt before selling the property.
    Borrower: the person borrowing who either has or is creating an ownership interest in the property.
    Lender: any lender, but usually a bank or other financial institution. (In some countries, particularly the United States, Lenders may also be investors who own an interest in the mortgage through a mortgage-backed security. In such a situation, the initial lender is known as the mortgage originator, which then packages and sells the loan to investors. The payments from the borrower are thereafter collected by a loan servicer.[2])
    Principal: the original size of the loan, which may or may not include certain other costs; as any principal is repaid, the principal will go down in size.
    Interest: a financial charge for use of the lender's money.
    Foreclosure or repossession: the possibility that the lender has to foreclose, repossess or seize the property under certain circumstances is essential to a mortgage loan; without this aspect, the loan is arguably no different from any other type of loan.
    Completion: legal completion of the mortgage deed, and hence the start of the mortgage.
    Redemption: final repayment of the amount outstanding, which may be a "natural redemption" at the end of the scheduled term or a lump sum redemption, typically when the borrower decides to sell the property. A closed mortgage account is said to be "redeemed".

Many other specific characteristics are common to many markets, but the above are the essential features. Governments usually regulate many aspects of mortgage lending, either directly (through legal requirements, for example) or indirectly (through regulation of the participants or the financial markets, such as the banking industry), and often through state intervention (direct lending by the government, direct lending by state-owned banks, or sponsorship of various entities). Other aspects that define a specific mortgage market may be regional, historical, or driven by specific characteristics of the legal or financial system.

Mortgage loans are generally structured as long-term loans, the periodic payments for which are similar to an annuity and calculated according to the time value of money formulae. The most basic arrangement would require a fixed monthly payment over a period of ten to thirty years, depending on local conditions. Over this period the principal component of the loan (the original loan) would be slowly paid down through amortization. In practice, many variants are possible and common worldwide and within each country.

Lenders provide funds against property to earn interest income, and generally borrow these funds themselves (for example, by taking deposits or issuing bonds). The price at which the lenders borrow money, therefore, affects the cost of borrowing. Lenders may also, in many countries, sell the mortgage loan to other parties who are interested in receiving the stream of cash payments from the borrower, often in the form of a security (by means of a securitization).

Mortgage lending will also take into account the (perceived) riskiness of the mortgage loan, that is, the likelihood that the funds will be repaid (usually considered a function of the creditworthiness of the borrower); that if they are not repaid, the lender will be able to foreclose on the real estate assets; and the financial, interest rate risk and time delays that may be involved in certain circumstances.
Mortgage underwriting
Main article: Mortgage underwriting

During the mortgage loan approval process, a mortgage loan underwriter verifies the financial information that the applicant has provided as to income, employment, credit history and the value of the home being purchased via an appraisal.[3] An appraisal may be ordered. The underwriting process may take a few days to a few weeks. Sometimes the underwriting process takes so long that the provided financial statements need to be resubmitted so they are current.[4] It is advisable to maintain the same employment and not to use or open new credit during the underwriting process. Any changes made in the applicant's credit, employment, or financial information could result in the loan being denied.
Mortgage loan types

There are many types of mortgages used worldwide, but several factors broadly define the characteristics of the mortgage. All of these may be subject to local regulation and legal requirements.

    Interest: Interest may be fixed for the life of the loan or variable, and change at certain pre-defined periods; the interest rate can also, of course, be higher or lower.
    Term: Mortgage loans generally have a maximum term, that is, the number of years after which an amortizing loan will be repaid. Some mortgage loans may have no amortization, or require full repayment of any remaining balance at a certain date, or even negative amortization.
    Payment amount and frequency: The amount paid per period and the frequency of payments; in some cases, the amount paid per period may change or the borrower may have the option to increase or decrease the amount paid.
    Prepayment: Some types of mortgages may limit or restrict prepayment of all or a portion of the loan, or require payment of a penalty to the lender for prepayment.

The two basic types of amortized loans are the fixed rate mortgage (FRM) and adjustable-rate mortgage (ARM) (also known as a floating rate or variable rate mortgage). In some countries, such as the United States, fixed rate mortgages are the norm, but floating rate mortgages are relatively common. Combinations of fixed and floating rate mortgages are also common, whereby a mortgage loan will have a fixed rate for some period, for example the first five years, and vary after the end of that period.

    In a fixed-rate mortgage, the interest rate, remains fixed for the life (or term) of the loan. In the case of an annuity repayment scheme, the periodic payment remains the same amount throughout the loan. In the case of linear payback, the periodic payment will gradually decrease.
    In an adjustable-rate mortgage, the interest rate is generally fixed for a period of time, after which it will periodically (for example, annually or monthly) adjust up or down to some market index. Adjustable rates transfer part of the interest rate risk from the lender to the borrower and thus are widely used where fixed rate funding is difficult to obtain or prohibitively expensive. Since the risk is transferred to the borrower, the initial interest rate may be, for example, 0.5% to 2% lower than the average 30-year fixed rate; the size of the price differential will be related to debt market conditions, including the yield curve.

The charge to the borrower depends upon the credit risk in addition to the interest rate risk. The mortgage origination and underwriting process involves checking credit scores, debt-to-income, downpayments, assets, and assessing property value. Jumbo mortgages and subprime lending are not supported by government guarantees and face higher interest rates. Other innovations described below can affect the rates as well.
Main article: Mortgage underwriting
Loan to value and down payments
Main article: Loan-to-value ratio

Upon making a mortgage loan for the purchase of a property, lenders usually require that the borrower make a down payment; that is, contribute a portion of the cost of the property. This down payment may be expressed as a portion of the value of the property (see below for a definition of this term). The loan to value ratio (or LTV) is the size of the loan against the value of the property. Therefore, a mortgage loan in which the purchaser has made a down payment of 20% has a loan to value ratio of 80%. For loans made against properties that the borrower already owns, the loan to value ratio will be imputed against the estimated value of the property.

The loan to value ratio is considered an important indicator of the riskiness of a mortgage loan: the higher the LTV, the higher the risk that the value of the property (in case of foreclosure) will be insufficient to cover the remaining principal of the loan.
Value: appraised, estimated, and actual

Since the value of the property is an important factor in understanding the risk of the loan, determining the value is a key factor in mortgage lending. The value may be determined in various ways, but the most common are:

    Actual or transaction value: this is usually taken to be the purchase price of the property. If the property is not being purchased at the time of borrowing, this information may not be available.
    Appraised or surveyed value: in most jurisdictions, some form of appraisal of the value by a licensed professional is common. There is often a requirement for the lender to obtain an official appraisal.
    Estimated value: lenders or other parties may use their own internal estimates, particularly in jurisdictions where no official appraisal procedure exists, but also in some other circumstances.

Payment and debt ratios

In most countries, a number of more or less standard measures of creditworthiness may be used. Common measures include payment to income (mortgage payments as a percentage of gross or net income); debt to income (all debt payments, including mortgage payments, as a percentage of income); and various net worth measures. In many countries, credit scores are used in lieu of or to supplement these measures. There will also be requirements for documentation of the creditworthiness, such as income tax returns, pay stubs, etc. the specifics will vary from location to location. Income tax incentives usually can be applied in forms of tax refunds or tax deduction schemes. The first implies that income tax paid by individual taxpayers will be refunded to the extent of interest on mortgage loans taken to acquire residential property. Income tax deduction implies lowering tax liability to the extent of interest rate paid for the mortgage loan.

Some lenders may also require a potential borrower have one or more months of "reserve assets" available. In other words, the borrower may be required to show the availability of enough assets to pay for the housing costs (including mortgage, taxes, etc.) for a period of time in the event of the job loss or other loss of income.

Many countries have lower requirements for certain borrowers, or "no-doc" / "low-doc" lending standards that may be acceptable under certain circumstances.
Standard or conforming mortgages

Many countries have a notion of standard or conforming mortgages that define a perceived acceptable level of risk, which may be formal or informal, and may be reinforced by laws, government intervention, or market practice. For example, a standard mortgage may be considered to be one with no more than 70–80% LTV and no more than one-third of gross income going to mortgage debt.

A standard or conforming mortgage is a key concept as it often defines whether or not the mortgage can be easily sold or securitized, or, if non-standard, may affect the price at which it may be sold. In the United States, a conforming mortgage is one which meets the established rules and procedures of the two major government-sponsored entities in the housing finance market (including some legal requirements). In contrast, lenders who decide to make nonconforming loans are exercising a higher risk tolerance and do so knowing that they face more challenge in reselling the loan. Many countries have similar concepts or agencies that define what are "standard" mortgages. Regulated lenders (such as banks) may be subject to limits or higher-risk weightings for non-standard mortgages. For example, banks and mortgage brokerages in Canada face restrictions on lending more than 80% of the property value; beyond this level, mortgage insurance is generally required.[5]
Foreign currency mortgage

In some countries with currencies that tend to depreciate, foreign currency mortgages are common, enabling lenders to lend in a stable foreign currency, whilst the borrower takes on the currency risk that the currency will depreciate and they will therefore need to convert higher amounts of the domestic currency to repay the loan.
Repaying the mortgage
Mortgage Loan. Total Payment = Loan Principal + Expenses (Taxes & fees) + Total interests. Fixed Interest Rates & Loan Term

In addition to the two standard means of setting the cost of a mortgage loan (fixed at a set interest rate for the term, or variable relative to market interest rates), there are variations in how that cost is paid, and how the loan itself is repaid. Repayment depends on locality, tax laws and prevailing culture. There are also various mortgage repayment structures to suit different types of borrower.
Principal and interest

The most common way to repay a secured mortgage loan is to make regular payments toward the principal and interest over a set term.[citation needed] This is commonly referred to as (self) amortization in the U.S. and as a repayment mortgage in the UK. A mortgage is a form of annuity (from the perspective of the lender), and the calculation of the periodic payments is based on the time value of money formulas. Certain details may be specific to different locations: interest may be calculated on the basis of a 360-day year, for example; interest may be compounded daily, yearly, or semi-annually; prepayment penalties may apply; and other factors. There may be legal restrictions on certain matters, and consumer protection laws may specify or prohibit certain practices.

Depending on the size of the loan and the prevailing practice in the country the term may be short (10 years) or long (50 years plus). In the UK and U.S., 25 to 30 years is the usual maximum term (although shorter periods, such as 15-year mortgage loans, are common). Mortgage payments, which are typically made monthly, contain a repayment of the principal and an interest element. The amount going toward the principal in each payment varies throughout the term of the mortgage. In the early years the repayments are mostly interest. Towards the end of the mortgage, payments are mostly for principal. In this way, the payment amount determined at outset is calculated to ensure the loan is repaid at a specified date in the future. This gives borrowers assurance that by maintaining repayment the loan will be cleared at a specified date if the interest rate does not change. Some lenders and 3rd parties offer a bi-weekly mortgage payment program designed to accelerate the payoff of the loan. Similarly, a mortgage can be ended before its scheduled end by paying some or all of the remainder prematurely, called curtailment.[6]

An amortization schedule is typically worked out taking the principal left at the end of each month, multiplying by the monthly rate and then subtracting the monthly payment. This is typically generated by an amortization calculator using the following formula:

    A = P ⋅ r ( 1 + r ) n ( 1 + r ) n − 1 {\displaystyle A=P\cdot {\frac {r(1+r)^{n}}{(1+r)^{n}-1}}} A=P\cdot {\frac {r(1+r)^{n}}{(1+r)^{n}-1}}

where:

    A {\displaystyle A} A is the periodic amortization payment
    P {\displaystyle P} P is the principal amount borrowed
    r {\displaystyle r} r is the rate of interest expressed as a fraction; for a monthly payment, take the (Annual Rate)/12
    n {\displaystyle n} n is the number of payments; for monthly payments over 30 years, 12 months x 30 years = 360 payments.

Interest only

The main alternative to a principal and interest mortgage is an interest-only mortgage, where the principal is not repaid throughout the term. This type of mortgage is common in the UK, especially when associated with a regular investment plan. With this arrangement regular contributions are made to a separate investment plan designed to build up a lump sum to repay the mortgage at maturity. This type of arrangement is called an investment-backed mortgage or is often related to the type of plan used: endowment mortgage if an endowment policy is used, similarly a personal equity plan (PEP) mortgage, Individual Savings Account (ISA) mortgage or pension mortgage. Historically, investment-backed mortgages offered various tax advantages over repayment mortgages, although this is no longer the case in the UK. Investment-backed mortgages are seen as higher risk as they are dependent on the investment making sufficient return to clear the debt.

Until recently[when?] it was not uncommon for interest only mortgages to be arranged without a repayment vehicle, with the borrower gambling that the property market will rise sufficiently for the loan to be repaid by trading down at retirement (or when rent on the property and inflation combine to surpass the interest rate)[citation needed].
Interest-only lifetime mortgage

Recent Financial Services Authority guidelines to UK lenders regarding interest-only mortgages has tightened the criteria on new lending on an interest-only basis. The problem for many people has been the fact that no repayment vehicle had been implemented, or the vehicle itself (e.g. endowment/ISA policy) performed poorly and therefore insufficient funds were available to repay balance at the end of the term.

Moving forward, the FSA under the Mortgage Market Review (MMR) have stated there must be strict criteria on the repayment vehicle being used. As such the likes of Nationwide and other lenders have pulled out of the interest-only market.

A resurgence in the equity release market has been the introduction of interest-only lifetime mortgages. Where an interest-only mortgage has a fixed term, an interest-only lifetime mortgage will continue for the rest of the mortgagors life. These schemes have proved of interest to people who do like the roll-up effect (compounding) of interest on traditional equity release schemes. They have also proved beneficial to people who had an interest-only mortgage with no repayment vehicle and now need to settle the loan. These people can now effectively remortgage onto an interest-only lifetime mortgage to maintain continuity.

Interest-only lifetime mortgage schemes are currently offered by two lenders – Stonehaven and more2life. They work by having the options of paying the interest on a monthly basis. By paying off the interest means the balance will remain level for the rest of their life. This market is set to increase as more retirees require finance in retirement.
Reverse mortgages

For older borrowers (typically in retirement), it may be possible to arrange a mortgage where neither the principal nor interest is repaid. The interest is rolled up with the principal, increasing the debt each year.

These arrangements are variously called reverse mortgages, lifetime mortgages or equity release mortgages (referring to home equity), depending on the country. The loans are typically not repaid until the borrowers are deceased, hence the age restriction.

Through the Federal Housing Administration, the U.S. government insures reverse mortgages via a program called the HECM (Home Equity Conversion Mortgage). Unlike standard mortgages (where the entire loan amount is typically disbursed at the time of loan closing) the HECM program allows the homeowner to receive funds in a variety of ways: as a one time lump sum payment; as a monthly tenure payment which continues until the borrower dies or moves out of the house permanently; as a monthly payment over a defined period of time; or as a credit line.[7]

For further details, see equity release.
Interest and partial principal

In the U.S. a partial amortization or balloon loan is one where the amount of monthly payments due are calculated (amortized) over a certain term, but the outstanding balance on the principal is due at some point short of that term. In the UK, a partial repayment mortgage is quite common, especially where the original mortgage was investment-backed.
Variations

Graduated payment mortgage loans have increasing costs over time and are geared to young borrowers who expect wage increases over time. Balloon payment mortgages have only partial amortization, meaning that amount of monthly payments due are calculated (amortized) over a certain term, but the outstanding principal balance is due at some point short of that term, and at the end of the term a balloon payment is due. When interest rates are high relative to the rate on an existing seller's loan, the buyer can consider assuming the seller's mortgage.[8] A wraparound mortgage is a form of seller financing that can make it easier for a seller to sell a property. A biweekly mortgage has payments made every two weeks instead of monthly.

Budget loans include taxes and insurance in the mortgage payment;[9] package loans add the costs of furnishings and other personal property to the mortgage. Buydown mortgages allow the seller or lender to pay something similar to points to reduce interest rate and encourage buyers.[10] Homeowners can also take out equity loans in which they receive cash for a mortgage debt on their house. Shared appreciation mortgages are a form of equity release. In the US, foreign nationals due to their unique situation face Foreign National mortgage conditions.

Flexible mortgages allow for more freedom by the borrower to skip payments or prepay. Offset mortgages allow deposits to be counted against the mortgage loan. In the UK there is also the endowment mortgage where the borrowers pay interest while the principal is paid with a life insurance policy.

Commercial mortgages typically have different interest rates, risks, and contracts than personal loans. Participation mortgages allow multiple investors to share in a loan. Builders may take out blanket loans which cover several properties at once. Bridge loans may be used as temporary financing pending a longer-term loan. Hard money loans provide financing in exchange for the mortgaging of real estate collateral.
Foreclosure and non-recourse lending
Main article: Foreclosure

In most jurisdictions, a lender may foreclose the mortgaged property if certain conditions occur – principally, non-payment of the mortgage loan. Subject to local legal requirements, the property may then be sold. Any amounts received from the sale (net of costs) are applied to the original debt. In some jurisdictions, mortgage loans are non-recourse loans: if the funds recouped from sale of the mortgaged property are insufficient to cover the outstanding debt, the lender may not have recourse to the borrower after foreclosure. In other jurisdictions, the borrower remains responsible for any remaining debt.

In virtually all jurisdictions, specific procedures for foreclosure and sale of the mortgaged property apply, and may be tightly regulated by the relevant government. There are strict or judicial foreclosures and non-judicial foreclosures, also known as power of sale foreclosures. In some jurisdictions, foreclosure and sale can occur quite rapidly, while in others, foreclosure may take many months or even years. In many countries, the ability of lenders to foreclose is extremely limited, and mortgage market development has been notably slower.
National differences

A study issued by the UN Economic Commission for Europe compared German, US, and Danish mortgage systems. The German Bausparkassen have reported nominal interest rates of approximately 6 per cent per annum in the last 40 years (as of 2004). German Bausparkassen (savings and loans associations) are not identical with banks that give mortgages. In addition, they charge administration and service fees (about 1.5 per cent of the loan amount). However, in the United States, the average interest rates for fixed-rate mortgages in the housing market started in the tens and twenties in the 1980s and have (as of 2004) reached about 6 per cent per annum. However, gross borrowing costs are substantially higher than the nominal interest rate and amounted for the last 30 years to 10.46 per cent. In Denmark, similar to the United States mortgage market, interest rates have fallen to 6 per cent per annum. A risk and administration fee amounts to 0.5 per cent of the outstanding debt. In addition, an acquisition fee is charged which amounts to one per cent of the principal.[11]
United States
Main articles: Mortgage industry of the United States and Mortgage underwriting in the United States

The mortgage industry of the United States is a major financial sector. The federal government created several programs, or government sponsored entities, to foster mortgage lending, construction and encourage home ownership. These programs include the Government National Mortgage Association (known as Ginnie Mae), the Federal National Mortgage Association (known as Fannie Mae) and the Federal Home Loan Mortgage Corporation (known as Freddie Mac).

The US mortgage sector has been the center of major financial crises over the last century. Unsound lending practices resulted in the National Mortgage Crisis of the 1930s, the savings and loan crisis of the 1980s and 1990s and the subprime mortgage crisis of 2007 which led to the 2010 foreclosure crisis.

In the United States, the mortgage loan involves two separate documents: the mortgage note (a promissory note) and the security interest evidenced by the "mortgage" document; generally, the two are assigned together, but if they are split traditionally the holder of the note and not the mortgage has the right to foreclose.[12] For example, Fannie Mae promulgates a standard form contract Multistate Fixed-Rate Note 3200[13] and also separate security instrument mortgage forms which vary by state.[14]
Canada

In Canada, the Canada Mortgage and Housing Corporation (CMHC) is the country's national housing agency, providing mortgage loan insurance, mortgage-backed securities, housing policy and programs, and housing research to Canadians.[15] It was created by the federal government in 1946 to address the country's post-war housing shortage, and to help Canadians achieve their homeownership goals.

The most common mortgage in Canada is the five-year fixed-rate closed mortgage, as opposed to the U.S. where the most common type is the 30-year fixed-rate open mortgage.[16] Throughout the financial crisis and the ensuing recession, Canada's mortgage market continued to function well, partly due to the residential mortgage market's policy framework, which includes an effective regulatory and supervisory regime that applies to most lenders. Since the crisis, however, the low interest rate environment that has arisen has contributed to a significant increase in mortgage debt in the country.[17]

In April 2014, the Office of the Superintendent of Financial Institutions (OSFI) released guidelines for mortgage insurance providers aimed at tightening standards around underwriting and risk management. In a statement, the OSFI has stated that the guideline will “provide clarity about best practices in respect of residential mortgage insurance underwriting, which contribute to a stable financial system.” This comes after several years of federal government scrutiny over the CMHC, with former Finance Minister Jim Flaherty musing publicly as far back as 2012 about privatizing the Crown corporation.[18]

In an attempt to cool down the real estate prices in Canada, Ottawa introduced a mortgage stress test effective 17 October 2016.[19] Under the stress test, every home buyer who wants to get a mortgage from any federally regulated lender should undergo a test in which the borrower's affordability is judged based on a rate that is not lower than a stress rate set by the Bank of Canada. For high-ratio mortgage (loan to value of more than 80%), which is insured by Canada Mortgage and Housing Corporation, the rate is the maximum of the stress test rate and the current target rate. However, for uninsured mortgage, the rate is the maximum of the stress test rate and the target interest rate plus 2%. [20] This stress test has lowered the maximum mortgage approved amount for all borrowers in Canada.

The stress-test rate consistently increased until its peak of 5.34% in May 2018 and it was not changed until July 2019 in which for the first time in three years it decreased to 5.19%.[21] This decision may reflect the push-back from the real-estate industry[22] as well as the introduction of the first-time home buyer incentive program (FTHBI) by the Canadian government in the 2019 Canadian federal budget. Because of all the criticisms from real estate industry, Canada finance minister Bill Morneau ordered to review and consider changes to the mortgage stress test in December 2019.[23]
United Kingdom
Main article: Mortgage industry of the United Kingdom

The mortgage industry of the United Kingdom has traditionally been dominated by building societies, but from the 1970s the share of the new mortgage loans market held by building societies has declined substantially. Between 1977 and 1987, the share fell from 96% to 66% while that of banks and other institutions rose from 3% to 36%. There are currently over 200 significant separate financial organizations supplying mortgage loans to house buyers in Britain. The major lenders include building societies, banks, specialized mortgage corporations, insurance companies, and pension funds.

In the UK variable-rate mortgages are more common than in the United States.[24][25] This is in part because mortgage loan financing relies less on fixed income securitized assets (such as mortgage-backed securities) than in the United States, Denmark, and Germany, and more on retail savings deposits like Australia and Spain.[24][25] Thus, lenders prefer variable-rate mortgages to fixed rate ones and whole-of-term fixed rate mortgages are generally not available. Nevertheless, in recent years fixing the rate of the mortgage for short periods has become popular and the initial two, three, five and, occasionally, ten years of a mortgage can be fixed.[26] From 2007 to the beginning of 2013 between 50% and 83% of new mortgages had initial periods fixed in this way.[27]

Home ownership rates are comparable to the United States, but overall default rates are lower.[24] Prepayment penalties during a fixed rate period are common, whilst the United States has discouraged their use.[24] Like other European countries and the rest of the world, but unlike most of the United States, mortgages loans are usually not nonrecourse debt, meaning debtors are liable for any loan deficiencies after foreclosure.[24][28]

The customer-facing aspects of the residential mortgage sector are regulated by the Financial Conduct Authority (FCA), and lenders' financial probity is overseen by a separate regulator, the Prudential Regulation Authority (PRA) which is part of the Bank of England. The FCA and PRA were established in 2013 with the aim of responding to criticism of regulatory failings highlighted by the financial crisis of 2007–2008 and its aftermath.[29][30][31]
Continental Europe

In most of Western Europe (except Denmark, the Netherlands and Germany), variable-rate mortgages are more common, unlike the fixed-rate mortgage common in the United States.[24][25] Much of Europe has home ownership rates comparable to the United States, but overall default rates are lower in Europe than in the United States.[24] Mortgage loan financing relies less on securitizing mortgages and more on formal government guarantees backed by covered bonds (such as the Pfandbriefe) and deposits, except Denmark and Germany where asset-backed securities are also common.[24][25] Prepayment penalties are still common, whilst the United States has discouraged their use.[24] Unlike much of the United States, mortgage loans are usually not nonrecourse debt.[24]

Within the European Union, covered bonds market volume (covered bonds outstanding) amounted to about EUR 2 trillion at year-end 2007 with Germany, Denmark, Spain, and France each having outstandings above 200,000 EUR million.[32] Pfandbrief-like securities have been introduced in more than 25 European countries—and in recent years also in the U.S. and other countries outside Europe—each with their own unique law and regulations.[33]
Recent trends
Mortgage rates historical trends 1986 to 2010

On July 28, 2008, US Treasury Secretary Henry Paulson announced that, along with four large U.S. banks, the Treasury would attempt to kick start a market for these securities in the United States, primarily to provide an alternative form of mortgage-backed securities.[34] Similarly, in the UK "the Government is inviting views on options for a UK framework to deliver more affordable long-term fixed-rate mortgages, including the lessons to be learned from international markets and institutions".[35]

George Soros's October 10, 2008 The Wall Street Journal editorial promoted the Danish mortgage market model.[36]
Malaysia

Mortgages in Malaysia can be categorised into 2 different groups: conventional home loan and Islamic home loan. Under the conventional home loan, banks normally charge a fixed interest rate, a variable interest rate, or both. These interest rates are tied to a base rate (individual bank's benchmark rate).

For Islamic home financing, it follows the Sharia Law and comes in 2 common types: Bai’ Bithaman Ajil (BBA) or Musharakah Mutanaqisah (MM). Bai' Bithaman Ajil is when the bank buys the property at current market price and sells it back to you at a much higher price. Musharakah Mutanaqisah is when the bank buys the property together with you. You will then slowly buy the bank's portion of the property through rental (whereby a portion of the rental goes to paying for the purchase of a part of the bank's share in the property until the property comes to your complete ownership).
Islamic countries
Main article: Islamic economics

Islamic Sharia law prohibits the payment or receipt of interest, meaning that Muslims cannot use conventional mortgages. However, real estate is far too expensive for most people to buy outright using cash: Islamic mortgages solve this problem by having the property change hands twice. In one variation, the bank will buy the house outright and then act as a landlord. The homebuyer, in addition to paying rent, will pay a contribution towards the purchase of the property. When the last payment is made, the property changes hands.[clarification needed]

Typically, this may lead to a higher final price for the buyers. This is because in some countries (such as the United Kingdom and India) there is a stamp duty which is a tax charged by the government on a change of ownership. Because ownership changes twice in an Islamic mortgage, a stamp tax may be charged twice. Many other jurisdictions have similar transaction taxes on change of ownership which may be levied. In the United Kingdom, the dual application of stamp duty in such transactions was removed in the Finance Act 2003 in order to facilitate Islamic mortgages.[37]

An alternative scheme involves the bank reselling the property according to an installment plan, at a price higher than the original price.

Both of these methods compensate the lender as if they were charging interest, but the loans are structured in a way that in name they are not, and the lender shares the financial risks involved in the transaction with the homebuyer.[citation needed]
Mortgage insurance
Main article: Mortgage insurance

Mortgage insurance is an insurance policy designed to protect the mortgagee (lender) from any default by the mortgagor (borrower). It is used commonly in loans with a loan-to-value ratio over 80%, and employed in the event of foreclosure and repossession.

This policy is typically paid for by the borrower as a component to final nominal (note) rate, or in one lump sum up front, or as a separate and itemized component of monthly mortgage payment. In the last case, mortgage insurance can be dropped when the lender informs the borrower, or its subsequent assigns, that the property has appreciated, the loan has been paid down, or any combination of both to relegate the loan-to-value under 80%.

In the event of repossession, banks, investors, etc. must resort to selling the property to recoup their original investment (the money lent) and are able to dispose of hard assets (such as real estate) more quickly by reductions in price. Therefore, the mortgage insurance acts as a hedge should the repossessing authority recover less than full and fair market value for any hard asset.
See also
General, or related to more than one nation

    Commercial mortgage
    No Income No Asset (NINA)
    Nonrecourse debt
    Refinancing
    Second Mortgage

Related to the United Kingdom

    Buy to let
    Mortgage cashback
    Remortgage
    UK mortgage terminology

Related to the United States

    Commercial lender (US) – a term for a lender collateralizing non-residential properties.
    eMortgages
    FHA loan – Relating to the U.S. Federal Housing Administration
    Fixed rate mortgage calculations (USA)
    Location Efficient Mortgage – a type of mortgage for urban areas
    Mortgage assumption
    pre-approval – U.S. mortgage terminology
    pre-qualification – U.S. mortgage terminology
    Predatory mortgage lending
    VA loan – Relating to the U.S. Department of Veterans Affairs.

Other nations

    Danish mortgage market
    Hypothec - equivalent in civil law countries
    Mortgage Investment Corporation

Legal details

    Deed – legal aspects
    Mechanics lien – a legal concept
    Perfection – applicable legal filing requirements

References

Coke, Edward. Commentaries on the Laws of England. "[I]f he doth not pay, then the Land which is put in pledge upon condition for the payment of the money, is taken from him for ever, and so dead to him upon condition, &c. And if he doth pay the money, then the pledge is dead as to the Tenant"
FTC. Mortgage Servicing: Making Sure Your Payments Count.
"How Long Does Mortgage Underwriting Take?". homeguides.sfgate.com. SFGate. Retrieved 9 December 2016.
"The Underwriter: Unseen Approver of Your Mortgage"http://www.realtor.com/advice/the-underwriter-unseen-approver-of-your-mortgage/
"Who Needs Mortgage Loan Insurance?". Canadian Mortgage and Housing Corporation. Retrieved 2009-01-30.
Bodine, Alicia (April 5, 2019). "Definition of Mortgage Curtailment". budgeting.thenest.com. Certified Ramsey Solutions Master Financial Coach (Updated).
"How do HECM Reverse Mortgages Work?". www.mtgprofessor.com.
Are Mortgage Assumptions a Good Deal?. Mortgage Professor.
Cortesi GR. (2003). Mastering Real Estate Principals. p. 371
Homes: Slow-market savings – the 'buy-down'. CNN Money.
http://www.unece.org/hlm/prgm/hmm/hsg_finance/publications/housing.finance.system.pdf , p. 46
Renuart E. (2012). Property Title Trouble in Non-Judicial Foreclosure States: The Ibanez Time Bomb?. Albany Law School
Single-family notes. Fannie Mae.
Security Instruments. Fannie Mae.
"About CMHC - CMHC". CMHC.
"Comparing Canada and U.S. Housing Finance Systems - CMHC". CMHC.
Crawford, Allan. "The Residential Mortgage Market in Canada: A Primer" (PDF). bankofcanada.ca.
"New mortgage guidelines push CMHC to embrace insurance basics". 14 April 2014.
"New mortgage stress test rules kick in today". CBC News. Retrieved 18 March 2019.
"Mortgage Qualifier Tool". Government of Canada.
Evans, Pete (July 19, 2019). "Mortgage stress test rules get more lenient for first time". CBC News. Retrieved October 30, 2019.
Zochodne, Geoff (June 11, 2019). "Regulator defends mortgage stress test in face of push-back from industry". Financial Post. Retrieved October 30, 2019.
"Finance minister Bill Morneau to review and consider changes to mortgage stress test". Financial Post.
Congressional Budget Office (2010). Fannie Mae, Freddie Mac, and the Federal Role in the Secondary Mortgage Market. p. 49.
International Monetary Fund (2004). World Economic Outlook: September 2004: The Global Demographic Transition. pp. 81–83. ISBN 978-1-58906-406-5.
"Best fixed rate mortgages: two, three, five and 10 years". The Telegraph. 26 February 2014. Retrieved 10 May 2014.
"Demand for fixed mortgages hits all-time high". The Telegraph. 17 May 2013. Retrieved 10 May 2014.
United Nations (2009). Forest Products Annual Market Review 2008-2009. United Nations Publications. p. 42. ISBN 978-92-1-117007-8.
Vina, Gonzalo. "U.K. Scraps FSA in Biggest Bank Regulation Overhaul Since 1997". Businessweek. Bloomberg L.P. Retrieved 10 May 2014.
"Regulatory Reform Background". FSA web site. FSA. Retrieved 10 May 2014.
"Financial Services Bill receives Royal Assent". HM Treasury. 19 December 2012. Retrieved 10 May 2014.
"Covered Bond Outstanding 2007".
"UNECE Homepage" (PDF). www.unece.org.
owner, name of the document. "FDIC: Press Releases - PR-60-2008 7/15/2008". www.fdic.gov.
"Housing Finance Review: analysis and proposals. HM Treasury, March 2008" (PDF).
Soros, George (10 October 2008). "Denmark Offers a Model Mortgage Market" – via www.wsj.com.

    "SDLTM28400 - Stamp Duty Land Tax Manual - HMRC internal manual - GOV.UK". www.hmrc.gov.uk.

External links

    Mortgages at Curlie
    Mortgages: For Home Buyers and Homeowners at USA.gov
    Australian Securities & Investments Commission (ASIC) Home Loans

    vte

Mortgage loan

    vte

Consumer debt

    vte

Real estate
Authority control Edit this at Wikidata	

    LCCN: sh85087390 NARA: 10644756 NDL: 00575151

Categories:

    MortgageLoans

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    View source
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Bahasa Indonesia
    Português
    Русский
    中文

Edit links

    This page was last edited on 27 November 2020, at 23:24 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

[[Muffin!]] [img width="30%" [https://giffmex.org/images/muffin1.JPG]]
[[Muffin!]] [img width=30% [https://giffmex.org/images/muffin2.jpg]]
Clicking the various checkboxes in the {{$:/core/images/preview-open}} tab in the sidebar will change the appearance of the items in the references section (the list of backlinks) at the bottom of this tiddler. 

When you are done playing with my dog, return to [[Welcome to Stroll]] to continue the tutorial.
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
```
<div class="tc-table-of-contents">
<<toc-selective-expandable 'Contents' sort[title]>>
</div>
```

```
&
<div class="tc-control-panel">
<$macrocall $name="tabs" tabsList="[all[shadows+tiddlers]tag[$:/tags/ControlPanel]!has[draft.of]]" default="$:/core/ui/ControlPanel/Info" explicitState="$:/state/tab-1749438307"/>
</div>
```

from Francis Meetze's YouTube channel TiddlyWiki Tutorial

add code to the tags field like this:
$:/tags/SideBar

In the "Add a new field:" field add the following
 Field Name:  list-before
 Field Value: $:/core/ui/SideBar/Open

In Contents I then added the code in the text field as follows:

<<toc-selective-expandable 'Contents' sort[title]>>
NORML
National Organization for the Reform of Marijuana Laws [img [norml.png]]

https://en.wikipedia.org/wiki/National_Organization_for_the_Reform_of_Marijuana_Laws

From Wikipedia, the free encyclopedia
  (Redirected from NORML)

National Organization for the Reform of Marijuana Laws, NORMLNORML Logo
Founded	1970
Founder	Keith Stroup, Esq.
Focus	Legalization or decriminalization of marijuana in the United States
Location	

    Washington, D.C.

Area served
	United States
Key people
	Erik Altieri, Executive Director

Rick Steves, Board Chairman Justin Strekal, Political Director
Keith Stroup, Norm Kent, Paul Armentano
Website	Norml.org

The National Organization for the Reform of Marijuana Laws (NORML /ˈnɔːrməl/ (About this soundlisten)) is a non-profit organization based in Washington, D.C., that advocates for the reform of marijuana laws in the United States regarding both medical and non-medical use. According to their website, NORML supports "the removal of all penalties for the private possession and responsible use of marijuana by adults, including cultivation for personal use, and casual nonprofit transfers of small amounts" and advocates for "the creation of a legal and regulatory framework for marijuana's production and retail sale to adults".[1] NORML also has a sister organization, NORML Foundation, that focuses on educational efforts and providing legal assistance and support to people affected negatively by current marijuana laws.[2] Organizations that operate under the NORML banner in other countries include NORML New Zealand, NORML Ireland, NORML Canada, NORML UK, NORML South Africa, and NORML France.
Contents

    1 History
    2 NORML Foundation
    3 Media and activism
    4 State and local chapters
    5 International branches
    6 See also
    7 References
    8 Further reading
    9 External links

History

NORML was founded in 1970 by Keith Stroup funded by $5,000 from the Playboy Foundation. Since then, the organization has played a central role in the cannabis decriminalization movement. At the start of the 1970s, the premier decriminalization organizations were Legalize Marijuana, better known as LeMar, and Amorphia, the two of which merged in 1971.[3] The next year, Amorphia led the unsuccessful campaign for California's marijuana legalization initiative, Proposition 19.[4] In 1974, Amorphia merged with NORML.[3]

By the middle of the 1970s, Playboy owner Hugh Hefner's financial support through the Playboy Foundation set NORML apart from its predecessors, making it the premier decriminalization advocacy group. At one point, Hefner was donating $100,000 a year to NORML.[4]
NORML Executive Director Erik Altieri is joined by U.S. Representatives Don Young and Tulsi Gabbard at a press conference outside the U.S. Capitol (2019)

The organization has a large grassroots network with 135 chapters and over 550 lawyers. NORML holds annual conferences and Continuing Legal Education (CLE)-accredited seminars. Its board of directors has, at times, included political figures as Philip Hart, Jacob K. Javits, and Ross Mirkarimi.[5]

In 1989, Donald Fiedler succeeded Jon Gettman as the executive director of NORML. In August 1992, Richard Cowan became executive director of NORML. Keith Stroup became executive director once again in 1995 after Cowan stepped down. In 2016, Erik Altieri was selected by the NORML Board of Directors to become the organization's 7th Executive Director. In 2021, travel writer Rick Steves became the chairman of the Board of Directors.[6]
NORML Foundation

The NORML Foundation, the organization's tax-exempt unit, conducts educational and research activities. Examples of the NORML Foundation's advocacy work is a detailed 2006 report, Emerging Clinical Applications For Cannabis.[7] A comprehensive report with county-by-county marijuana arrest data, Crimes of Indiscretion: Marijuana Arrest in America, was published in 2005.[8]

In October 1998, NORML Foundation published the NORML Report on U.S. Domestic Marijuana Production that was widely cited in the mainstream media. The report methodically estimated the value and number of cannabis plants grown in 1997, finding that Drug Enforcement Administration, state and local law enforcement agencies seized 32% of domestic cannabis plants planted that year. According to the report, "Marijuana remains the fourth largest cash crop in America despite law enforcement spending an estimated $10 billion annually to pursue efforts to outlaw the plant."[9] Recent studies show that marijuana is larger than all other cash crops combined.[10]

In 2002, the organization used ads containing New York City mayor Michael Bloomberg quotes on his past use of pot, saying "You bet I did. And I enjoyed it." The mayor said "I’m not thrilled they’re using my name. I suppose there’s that First Amendment that gets in the way of me stopping it," but maintained that the NYPD will continue to vigorously enforce the laws.[11]
Media and activism
Signs promoting NORML at the Twin Cities Pride Parade in Minneapolis, Minnesota, in 2013

In the 2006 United States midterm elections, NORML promoted several successful local initiatives that declared marijuana enforcement to be the lowest priority for local law enforcement, freeing up police resources to combat violent and serious crime.[12]

In early 2009, a petition to President Barack Obama was written asking that he appoint a "Drug Czar" who will treat drug abuse as a health issue rather than a criminal issue and will move away from a "War on Drugs" paradigm. NORML's goal for this petition was 100,000 signatures.

Also in early 2009, when the Kellogg Company dropped its contract with Olympic swimmer Michael Phelps after pictures of him using a bong surfaced in the media, head members of NORML began boycotting Kellogg products and urging all members and supporters of NORML to boycott Kellogg, until the company reversed the decision. NORML also suggested that supporters of the cause send emails or letters to Kellogg explaining the boycott and the reasons behind it, even providing a template for emails and letters. Although Kellogg's profits did not suffer in the first quarter of 2009,[13] consumer ratings polls at Vanno[14] have been cited as indicating that Kellogg's reputation has suffered. Specifically, a small poll of Kellogg's brand reputation at Vanno showed a drop from its previous rank of 9 to 83 after Kellogg decided not to renew its contract with Michael Phelps.[15][16]

On February 15, 2010, a 15-second Flash animation from NORML discussing the potential economic and financial benefit of legalized marijuana was deemed by CBS to be "too political" to display on billboards in New York City's Times Square. This drew criticism in the blogosphere and accusations of hypocrisy on Twitter, since CBS had recently aired an anti-abortion television spot during the 2010 Super Bowl.[17] CBS reversed its decision and the ad was debuted on the CBS Times Square Superscreen on April 20, 2010.[18]
State and local chapters

    Indiana NORML
    Minnesota NORML
    Massachusetts Cannabis Reform Coalition (MassCann/NORML)
    Oregon NORML
    Texas NORML
    Wisconsin NORML
    Ohio NORML
    Portland NORML

International branches

    NORML New Zealand
    NORML UK
    NORML France
    Otago NORML

See also

    Marijuana Policy Project
    Drug Policy Alliance
    Americans for Safe Access
    Law Enforcement Action Partnership
    Medical cannabis in the United States
    Decriminalization of non-medical cannabis in the United States

References

"Adult-Use". NORML. Retrieved January 2, 2021.
"About NORML". NORML. Retrieved January 2, 2021.
Joshua Clark Davis. (November 6, 2014). The Long Marijuana-Rights Movement. Archived September 11, 2016, at the Wayback Machine The Huffington Post. Retrieved August 3, 2016.
Joshua Clark Davis, The Business of Getting High: Head Shops, Countercultural Capitalism, and the Marijuana Legalization Movement, The Sixties: A Journal of Politics, Culture and Society, Summer 2015
Carlson, Peter (January 4, 2005). "Exhale, Stage Left". Washington Post. p. C01.
"NORML Elects Budget Travel Guru Rick Steves as New Board President". MERRY JANE. Retrieved February 12, 2021.
"Recent Research on Medical Marijuana". National Organization for the Reform of Marijuana Laws. February 3, 2007. Retrieved April 22, 2007.
"Crimes of Indiscretion". National Organization for the Reform of Marijuana Laws. March 7, 2005. Retrieved April 22, 2007.
"NORML Report on U.S. Domestic Marijuana Production". National Organization for the Reform of Marijuana Laws. March 7, 2005. Retrieved April 22, 2007.
Bailey, Eric (December 18, 2006). "Pot is called biggest cash crop". Los Angeles Times. Retrieved April 22, 2007.[dead link]
NYC Mayor Bloomberg's Pot Use is NORML: Drugwar.com Archived June 22, 2015, at the Wayback Machine
"NORML: Frequently Asked Questions". National Organization for the Reform of Marijuana Laws.
Scott Eden (April 30, 2009). "Kellogg Beats Targets Despite Weaker Sales". TheStreet. Archived from the original on June 6, 2011. Retrieved August 21, 2010.
"Kellogg - Reputation Scores". vanno.com. Archived from the original on May 1, 2009. Retrieved June 5, 2009.
"Dumping Phelps Over Bong Rip Damages Kellogg's Brand Reputation". The Business Insider. February 23, 2009. Retrieved April 20, 2009.
Graham, Nicholas (February 24, 2009). "Kellogg's Brand Damaged By Dumping Michael Phelps". The Huffington Post. Retrieved April 20, 2009.
"CBS rejects NORML legalization billboard, but accepts "Black Children are an Endangered Species" anti-abortion billboard". NORML. February 15, 2010. Retrieved August 21, 2010.

    "Foundation To Launch Second NYC Times Square Billboard Campaign New Ad Debuts On April 20 On The CBS Super Screen". NORML. Retrieved August 21, 2010.

Further reading

    Davis, Joshua Clark (2015). "The business of getting high: head shops, countercultural capitalism, and the marijuana legalization movement". The Sixties. 8 (1): 27–49. doi:10.1080/17541328.2015.1058480. hdl:11603/7422. S2CID 142795620.

External links
	Wikimedia Commons has media related to National Organization for the Reform of Marijuana Laws.

    Official website
    High in America -- The True Story Behind NORML and the Politics of Marijuana (by Patrick Anderson)

    vte

Cannabis

    vte

Drug policy interest groups (non-nicotine and non-alcohol)

    Cannabis leaf.svgCannabis portal

Authority control Edit this at Wikidata	

    LCCN: n80091120 VIAF: 140718669 WorldCat Identities: lccn-n80091120

Categories:

    National Organization for the Reform of Marijuana Laws1970 in cannabisCannabis law reform organizations based in the United StatesDrug policy organizations based in the United StatesOrganizations established in 1970

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Dansk
    Deutsch
    Español
    日本語
    Norsk bokmål
    Polski
    Русский
    Suomi

Edit links

    This page was last edited on 12 April 2021, at 03:50 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki




! Neolithic Revolution
!! 
!! https://en.wikipedia.org/wiki/Neolithic_Revolution

From Wikipedia, the free encyclopedia

This article is about the introduction of agriculture during the Stone Age. For later historical breakthroughs in agriculture, see Agricultural revolution (disambiguation).
Map of Southwest Asia showing the main archaeological sites of the Pre-Pottery Neolithic period, c. 7500 BCE.
Part of a series on
Human history
Human Era
↑ Prehistory   (Pleistocene epoch)
Holocene

    Timelines
    Neolithic – Contemporary
    (10,000 BCE – 2021 CE)

    Age of the human race Recorded history

    Earliest records Protohistory Proto-writing

Ancient

    Bronze age Iron age

    Axial antiquity Classical antiquity Late antiquity

    Africa North America South America

    Oceania East Asia South Asia

    Southeast Asia West Asia

    Europe

Postclassical

    Africa Americas

    Oceania East Asia

    South Asia

    Southeast Asia West Asia

    Europe

Modern

    Early modern Late modern

    Africa North America South America

    Oceania East Asia South Asia

    Southeast Asia West Asia

    Europe

See also

    Modernity Futurology

↓ Future   

    vte

The Neolithic Revolution, or the (First) Agricultural Revolution, was the wide-scale transition of many human cultures during the Neolithic period from a lifestyle of hunting and gathering to one of agriculture and settlement, making an increasingly large population possible.[1] These settled communities permitted humans to observe and experiment with plants, learning how they grew and developed.[2] This new knowledge led to the domestication of plants.[2][3]

Archaeological data indicates that the domestication of various types of plants and animals happened in separate locations worldwide, starting in the geological epoch of the Holocene 11,700 years ago.[4] It was the world's first historically verifiable revolution in agriculture. The Neolithic Revolution greatly narrowed the diversity of foods available, resulting in a downturn in the quality of human nutrition.[5]

The Neolithic Revolution involved far more than the adoption of a limited set of food-producing techniques. During the next millennia it transformed the small and mobile groups of hunter-gatherers that had hitherto dominated human pre-history into sedentary (non-nomadic) societies based in built-up villages and towns. These societies radically modified their natural environment by means of specialized food-crop cultivation, with activities such as irrigation and deforestation which allowed the production of surplus food. Other developments that are found very widely during this era are the domestication of animals, pottery, polished stone tools, and rectangular houses. In many regions, the adoption of agriculture by prehistoric societies caused episodes of rapid population growth, a phenomenon known as the Neolithic demographic transition.

These developments, sometimes called the Neolithic package, provided the basis for centralized administrations and political structures, hierarchical ideologies, depersonalized systems of knowledge (e.g. writing), densely populated settlements, specialization and division of labour, more trade, the development of non-portable art and architecture, and greater property ownership. The earliest known civilization developed in Sumer in southern Mesopotamia (c.  6,500 BP); its emergence also heralded the beginning of the Bronze Age.[6]

The relationship of the above-mentioned Neolithic characteristics to the onset of agriculture, their sequence of emergence, and empirical relation to each other at various Neolithic sites remains the subject of academic debate, and varies from place to place, rather than being the outcome of universal laws of social evolution.[7][8] The Levant saw the earliest developments of the Neolithic Revolution from around 10,000 BCE, followed by sites in the wider Fertile Crescent.
Contents

    1 Background
    2 Agricultural transition
    3 Early harvesting of cereals (23,000 BP)
    4 Domestication of plants
        4.1 Spread of crops: the case of barley
    5 Development and diffusion
        5.1 Beginnings in the Levant
        5.2 Europe
            5.2.1 Carbon 14 evidence
            5.2.2 Analysis of mitochondrial DNA
        5.3 South Asia
        5.4 In East Asia
        5.5 In Africa
        5.6 In the Americas
        5.7 In New Guinea
    6 Domestication of animals
        6.1 Domestication of animals in the Middle East
    7 Consequences
        7.1 Social change
        7.2 Subsequent revolutions
        7.3 Diet and health
        7.4 Technology
    8 Archaeogenetics
    9 Comparative chronology
    10 See also
    11 References
    12 Bibliography

Background

Hunter-gatherers had different subsistence requirements and lifestyles from agriculturalists. They resided in temporary shelters and were highly mobile, moving in small groups and had limited contact with outsiders. Their diet was well-balanced and depended on what the environment provided each season. Because the advent of agriculture made it possible to support larger groups, agriculturalists lived in more permanent dwellings in areas that were more densely populated than could be supported by the hunter-gatherer lifestyle. The development of trading networks and complex societies brought them into contact with outside groups.[9]

However, population increase did not necessarily correlate with improved health. Reliance on a single crop can adversely affect health even while making it possible to support larger numbers of people. Maize is deficient in certain essential amino acids (lysine and tryptophan) and is a poor source of iron. The phytic acid it contains may inhibit nutrient absorption. Other factors that likely affected the health of early agriculturalists and their domesticated livestock would have been increased numbers of parasites and disease-bearing pests associated with human waste and contaminated food and water supplies. Fertilizers and irrigation may have increased crop yields but also would have promoted proliferation of insects and bacteria in the local environment while grain storage attracted additional insects and rodents.[9]
Agricultural transition
See also: Ancient grains
Evolution of temperatures in the Post-Glacial period after the Last Glacial Maximum (LGM) according to Greenland ice cores. The birth of agriculture corresponds to the period of quickly rising temperature at the end of the cold spell of the Younger Dryas and the beginning of the long and warm period of the Holocene.[10]
Map of the world showing approximate centers of origin of agriculture and its spread in prehistory: the Fertile Crescent (11,000 BP), the Yangtze and Yellow River basins (9,000 BP) and the Papua New Guinea Highlands (9,000–6,000 BP), Central Mexico (5,000–4,000 BP), Northern South America (5,000–4,000 BP), sub-Saharan Africa (5,000–4,000 BP, exact location unknown), eastern North America (4,000–3,000 BP).[11]

The term 'neolithic revolution' was coined by V. Gordon Childe in his 1936 book Man Makes Himself.[12][13] Childe introduced it as the first in a series of agricultural revolutions in Middle Eastern history,[citation needed] calling it a "revolution" to denote its significance, the degree of change to communities adopting and refining agricultural practices.[citation needed]

The beginning of this process in different regions has been dated from 10,000 to 8,000 BCE in the Fertile Crescent,[14][15] and perhaps 8000 BCE in the Kuk Early Agricultural Site of Papua New Guinea in Melanesia.[16][17] Everywhere, this transition is associated with a change from a largely nomadic hunter-gatherer way of life to a more settled, agrarian one, with the domestication of various plant and animal species – depending on the species locally available, and probably influenced by local culture. Recent archaeological research suggests that in some regions, such as the Southeast Asian peninsula, the transition from hunter-gatherer to agriculturalist was not linear, but region-specific.[18]

There are several theories (not mutually exclusive) as to factors that drove populations to take up agriculture. The most prominent are:

    The Oasis Theory, originally proposed by Raphael Pumpelly in 1908, popularized by V. Gordon Childe in 1928 and summarised in Childe's book Man Makes Himself.[12] This theory maintains that as the climate got drier due to the Atlantic depressions shifting northward, communities contracted to oases where they were forced into close association with animals, which were then domesticated together with planting of seeds. However, today this theory has little support amongst archaeologists because subsequent climate data suggests that the region was getting wetter rather than drier.[19]
    The Hilly Flanks hypothesis, proposed by Robert Braidwood in 1948, suggests that agriculture began in the hilly flanks of the Taurus and Zagros mountains, where the climate was not drier as Childe had believed, and fertile land supported a variety of plants and animals amenable to domestication.[20]

Associations of wild cereals and other wild grasses in northern Israel

    The Feasting model by Brian Hayden[21] suggests that agriculture was driven by ostentatious displays of power, such as giving feasts, to exert dominance. This required assembling large quantities of food, which drove agricultural technology.
    The Demographic theories proposed by Carl Sauer[22] and adapted by Lewis Binford[23] and Kent Flannery posit an increasingly sedentary population that expanded up to the carrying capacity of the local environment and required more food than could be gathered. Various social and economic factors helped drive the need for food.
    The evolutionary/intentionality theory, developed by David Rindos[24] and others, views agriculture as an evolutionary adaptation of plants and humans. Starting with domestication by protection of wild plants, it led to specialization of location and then full-fledged domestication.
    Peter Richerson, Robert Boyd, and Robert Bettinger[25] make a case for the development of agriculture coinciding with an increasingly stable climate at the beginning of the Holocene. Ronald Wright's book and Massey Lecture Series A Short History of Progress[26] popularized this hypothesis.
    The postulated Younger Dryas impact event, claimed to be in part responsible for megafauna extinction and ending the last glacial period, could have provided circumstances that required the evolution of agricultural societies for humanity to survive.[27] The agrarian revolution itself is a reflection of typical overpopulation by certain species following initial events during extinction eras; this overpopulation itself ultimately propagates the extinction event.
    Leonid Grinin argues that whatever plants were cultivated, the independent invention of agriculture always took place in special natural environments (e.g., South-East Asia). It is supposed that the cultivation of cereals started somewhere in the Near East: in the hills of Israel or Egypt. So Grinin dates the beginning of the agricultural revolution within the interval 12,000 to 9,000 BP, though in some cases the first cultivated plants or domesticated animals' bones are even of a more ancient age of 14–15 thousand years ago.[28]
    Andrew Moore suggested that the Neolithic Revolution originated over long periods of development in the Levant, possibly beginning during the Epipaleolithic. In "A Reassessment of the Neolithic Revolution", Frank Hole further expanded the relationship between plant and animal domestication. He suggested the events could have occurred independently over different periods of time, in as yet unexplored locations. He noted that no transition site had been found documenting the shift from what he termed immediate and delayed return social systems. He noted that the full range of domesticated animals (goats, sheep, cattle and pigs) were not found until the sixth millennium at Tell Ramad. Hole concluded that "close attention should be paid in future investigations to the western margins of the Euphrates basin, perhaps as far south as the Arabian Peninsula, especially where wadis carrying Pleistocene rainfall runoff flowed."[29]

Early harvesting of cereals (23,000 BP)
Composite sickles for cereal harvesting at 23,000-Years-Old Ohalo II, Israel.

Use-wear analysis of five glossed flint blades found at Ohalo II, a 23,000-years-old fisher-hunter-gatherers’ camp on the shore of the Sea of Galilee, Northern Israel, provides the earliest evidence for the use of composite cereal harvesting tools.[30] The Ohalo site is at the junction of the Upper Paleolithic and the Early Epipaleolithic, and has been attributed to both periods.[31]

The wear traces indicate that tools were used for harvesting near-ripe semi-green wild cereals, shortly before grains are ripe and disperse naturally.[30] The studied tools were not used intensively, and they reflect two harvesting modes: flint knives held by hand and inserts hafted in a handle.[30] The finds shed new light on cereal harvesting techniques some 8,000 years before the Natufian and 12,000 years before the establishment of sedentary farming communities in the Near East.[30] Furthermore, the new finds accord well with evidence for the earliest ever cereal cultivation at the site and the use of stone-made grinding implements.[30]
Domestication of plants
Further information: History of agriculture

Once agriculture started gaining momentum, around 9000 BP, human activity resulted in the selective breeding of cereal grasses (beginning with emmer, einkorn and barley), and not simply of those that favoured greater caloric returns through larger seeds. Plants with traits such as small seeds or bitter taste were seen as undesirable. Plants that rapidly shed their seeds on maturity tended not to be gathered at harvest, therefore not stored and not seeded the following season; successive years of harvesting spontaneously selected for strains that retained their edible seeds longer.
An "Orange slice" sickle blade element with inverse, discontinuous retouch on each side, not denticulated. Found in large quantities at Qaraoun II and often with Heavy Neolithic tools in the flint workshops of the Beqaa Valley in Lebanon. Suggested by James Mellaart to be older than the Pottery Neolithic of Byblos (around 8,400 cal. BP).

Daniel Zohary identified several plant species as "pioneer crops" or Neolithic founder crops. He highlighted the importance of wheat, barley and rye, and suggested that domestication of flax, peas, chickpeas, bitter vetch and lentils came a little later. Based on analysis of the genes of domesticated plants, he preferred theories of a single, or at most a very small number of domestication events for each taxon that spread in an arc from the Levantine corridor around the Fertile Crescent and later into Europe.[32][33] Gordon Hillman and Stuart Davies carried out experiments with varieties of wild wheat to show that the process of domestication would have occurred over a relatively short period of between 20 and 200 years.[34] Some of the pioneering attempts failed at first and crops were abandoned, sometimes to be taken up again and successfully domesticated thousands of years later: rye, tried and abandoned in Neolithic Anatolia, made its way to Europe as weed seeds and was successfully domesticated in Europe, thousands of years after the earliest agriculture.[35] Wild lentils presented a different problem: most of the wild seeds do not germinate in the first year; the first evidence of lentil domestication, breaking dormancy in their first year, appears in the early Neolithic at Jerf el Ahmar (in modern Syria), and lentils quickly spread south to the Netiv HaGdud site in the Jordan Valley.[35] The process of domestication allowed the founder crops to adapt and eventually become larger, more easily harvested, more dependable[clarification needed] in storage and more useful to the human population.
Neolithic grindstone or quern for processing grain

Selectively propagated figs, wild barley and wild oats were cultivated at the early Neolithic site of Gilgal I, where in 2006[36] archaeologists found caches of seeds of each in quantities too large to be accounted for even by intensive gathering, at strata datable to c. 11,000 years ago. Some of the plants tried and then abandoned during the Neolithic period in the Ancient Near East, at sites like Gilgal, were later successfully domesticated in other parts of the world.

Once early farmers perfected their agricultural techniques like irrigation (traced as far back as the 6th millennium BCE in Khuzistan[37][38]), their crops yielded surpluses that needed storage. Most hunter-gatherers could not easily store food for long due to their migratory lifestyle, whereas those with a sedentary dwelling could store their surplus grain. Eventually granaries were developed that allowed villages to store their seeds longer. So with more food, the population expanded and communities developed specialized workers and more advanced tools.

The process was not as linear as was once thought, but a more complicated effort, which was undertaken by different human populations in different regions in many different ways.
Genetic analysis on the spread of barley from 9,000 to 2,000 BP[39]
Spread of crops: the case of barley
Main article: Barley

One of the world's most important crops, barley, was domesticated in the Near East around 11,000 years ago (c. 9,000 BCE).[39] Barley is a highly resilient crop, able to grow in varied and marginal environments, such as in regions of high altitude and latitude.[39] Archaeobotanical evidence shows that barley had spread throughout Eurasia by 2,000 BCE.[39] To further elucidate the routes by which barley cultivation was spread through Eurasia, genetic analysis was used to determine genetic diversity and population structure in extant barley taxa.[39] Genetic analysis shows that cultivated barley spread through Eurasia via several different routes, which were most likely separated in both time and space.[39]
Development and diffusion
Beginnings in the Levant
Main articles: Pre-Pottery Neolithic and Pottery Neolithic
The Neolithic is characterized by fixed human settlements and the invention of agriculture from c. 10,000 BP. Reconstitution of Pre-Pottery Neolithic B housing in Aşıklı Höyük, modern Turkey.

Agriculture appeared first in Southwest Asia about 2,000 years later, around 10,000–9,000 years ago. The region was the centre of domestication for three cereals (einkorn wheat, emmer wheat and barley), four legumes (lentil, pea, bitter vetch and chickpea), and flax. Domestication was a slow process that unfolded across multiple regions, and was preceded by centuries if not millennia of pre-domestication cultivation.[40]

Finds of large quantities of seeds and a grinding stone at the Epipalaeolithic site of Ohalo II, dating to around 19,400 BP, has shown some of the earliest evidence for advanced planning of plants for food consumption and suggests that humans at Ohalo II processed the grain before consumption.[41][42] Tell Aswad is the oldest site of agriculture, with domesticated emmer wheat dated to 10,800 BP.[43][44] Soon after came hulled, two-row barley – found domesticated earliest at Jericho in the Jordan valley and at Iraq ed-Dubb in Jordan.[45] Other sites in the Levantine corridor that show early evidence of agriculture include Wadi Faynan 16 and Netiv Hagdud.[14] Jacques Cauvin noted that the settlers of Aswad did not domesticate on site, but "arrived, perhaps from the neighbouring Anti-Lebanon, already equipped with the seed for planting".[46] In the Eastern Fertile Crescent, evidence of cultivation of wild plants has been found in Choga Gholan in Iran dated to 12,000 BP, suggesting there were multiple regions in the Fertile Crescent where domestication evolved roughly contemporaneously.[47] The Heavy Neolithic Qaraoun culture has been identified at around fifty sites in Lebanon around the source springs of the River Jordan, but never reliably dated.[48][49]
Europe
Main article: Neolithic Europe
Spread of farming from Southwest Asia to Europe, between 9600 and 4000 BCE

Archeologists trace the emergence of food-producing societies in the Levantine region of southwest Asia at the close of the last glacial period around 12,000 BCE, and developed into a number of regionally distinctive cultures by the eighth millennium BCE. Remains of food-producing societies in the Aegean have been carbon-dated to around 6500 BCE at Knossos, Franchthi Cave, and a number of mainland sites in Thessaly. Neolithic groups appear soon afterwards in the Balkans and south-central Europe. The Neolithic cultures of southeastern Europe (the Balkans and the Aegean) show some continuity with groups in southwest Asia and Anatolia (e.g., Çatalhöyük).

Current evidence suggests that Neolithic material culture was introduced to Europe via western Anatolia. All Neolithic sites in Europe contain ceramics, and contain the plants and animals domesticated in Southwest Asia: einkorn, emmer, barley, lentils, pigs, goats, sheep, and cattle. Genetic data suggest that no independent domestication of animals took place in Neolithic Europe, and that all domesticated animals were originally domesticated in Southwest Asia.[50] The only domesticate not from Southwest Asia was broomcorn millet, domesticated in East Asia.[51]The earliest evidence of cheese-making dates to 5500 BCE in Kujawy, Poland.[52]

The diffusion across Europe, from the Aegean to Britain, took about 2,500 years (6500–4000 BP). The Baltic region was penetrated a bit later, around 3500 BP, and there was also a delay in settling the Pannonian plain. In general, colonization shows a "saltatory" pattern, as the Neolithic advanced from one patch of fertile alluvial soil to another, bypassing mountainous areas. Analysis of radiocarbon dates show clearly that Mesolithic and Neolithic populations lived side by side for as much as a millennium in many parts of Europe, especially in the Iberian peninsula and along the Atlantic coast.[53]
Carbon 14 evidence
Ancient European Neolithic farmers were genetically closest to modern Near-Eastern/ Anatolian populations. Genetic matrilineal distances between European Neolithic Linear Pottery Culture populations (5,500–4,900 calibrated BP) and modern Western Eurasian populations.[54]

The spread of the Neolithic from the Near East Neolithic to Europe was first studied quantitatively in the 1970s, when a sufficient number of Carbon 14 age determinations for early Neolithic sites had become available.[55] Ammerman and Cavalli-Sforza discovered a linear relationship between the age of an Early Neolithic site and its distance from the conventional source in the Near East (Jericho), demonstrating that the Neolithic spread at an average speed of about 1 km/yr.[55] More recent studies confirm these results and yield the speed of 0.6–1.3 km/yr (at 95% confidence level).[55]
Analysis of mitochondrial DNA

Since the original human expansions out of Africa 200,000 years ago, different prehistoric and historic migration events have taken place in Europe.[56] Considering that the movement of the people implies a consequent movement of their genes, it is possible to estimate the impact of these migrations through the genetic analysis of human populations.[56] Agricultural and husbandry practices originated 10,000 years ago in a region of the Near East known as the Fertile Crescent.[56] According to the archaeological record this phenomenon, known as “Neolithic”, rapidly expanded from these territories into Europe.[56] However, whether this diffusion was accompanied or not by human migrations is greatly debated.[56] Mitochondrial DNA – a type of maternally inherited DNA located in the cell cytoplasm – was recovered from the remains of Pre-Pottery Neolithic B (PPNB) farmers in the Near East and then compared to available data from other Neolithic populations in Europe and also to modern populations from South Eastern Europe and the Near East.[56] The obtained results show that substantial human migrations were involved in the Neolithic spread and suggest that the first Neolithic farmers entered Europe following a maritime route through Cyprus and the Aegean Islands.[56]

    Map of the spread of Neolithic farming cultures from the Near-East to Europe, with dates.

    Modern distribution of the haplotypes of PPNB farmers

    Genetic distance between PPNB farmers and modern populations

South Asia
See also: South Asian Stone Age
Expansion to South Asia
Early Neolithic sites in the Near East and South Asia 10,000–3,800 BP
Neolithic dispersal from the Near East to South Asia suggested by the time of establishment of Neolithic sites as a function of distance from Gesher, Israel. The dispersal rate amounts to about 0.6 km per year[55]

The earliest Neolithic sites in South Asia are Bhirrana in Haryana dated to 7570–6200 BCE,[57] and Mehrgarh, dated to between 6500 and 5500 BP, in the Kachi plain of Baluchistan, Pakistan; the site has evidence of farming (wheat and barley) and herding (cattle, sheep and goats).

There is strong evidence for causal connections between the Near-Eastern Neolithic and that further east, up to the Indus Valley.[58] There are several lines of evidence that support the idea of connection between the Neolithic in the Near East and in the Indian subcontinent.[58] The prehistoric site of Mehrgarh in Baluchistan (modern Pakistan) is the earliest Neolithic site in the north-west Indian subcontinent, dated as early as 8500 BCE.[58] Neolithic domesticated crops in Mehrgarh include more than barley and a small amount of wheat. There is good evidence for the local domestication of barley and the zebu cattle at Mehrgarh, but the wheat varieties are suggested to be of Near-Eastern origin, as the modern distribution of wild varieties of wheat is limited to Northern Levant and Southern Turkey.[58] A detailed satellite map study of a few archaeological sites in the Baluchistan and Khybar Pakhtunkhwa regions also suggests similarities in early phases of farming with sites in Western Asia.[58] Pottery prepared by sequential slab construction, circular fire pits filled with burnt pebbles, and large granaries are common to both Mehrgarh and many Mesopotamian sites.[58] The postures of the skeletal remains in graves at Mehrgarh bear strong resemblance to those at Ali Kosh in the Zagros Mountains of southern Iran.[58] Despite their scarcity, the 14C and archaeological age determinations for early Neolithic sites in Southern Asia exhibit remarkable continuity across the vast region from the Near East to the Indian Subcontinent, consistent with a systematic eastward spread at a speed of about 0.65 km/yr.[58]
In East Asia
See also: Rice domestication, Neolithic China, and Domesticated plants and animals of Austronesia
Spatial distribution of rice, millet and mixed farming sites in Neolithic China (He et al., 2017)[59]

Agriculture in Neolithic China can be separated into two broad regions, Northern China and Southern China.[59][60]

The first agricultural center in northern China is believed to be the homelands of the early Sino-Tibetan-speakers, associated with the Houli, Peiligang, Cishan, and Xinglongwa cultures, clustered around the Yellow River basin.[59][60] It was the domestication center for foxtail millet (Setaria italica) and broomcorn millet (Panicum miliaceum) with evidence of domestication of these species approximately 8,000 years ago.[61] These species were subsequently widely cultivated in the Yellow River basin (7,500 years ago).[61] Soybean was also domesticated in northern China 4,500 years ago.[62] Orange and peach also originated in China. They were cultivated around 2500 BCE.[63][64]
Likely routes of early rice transfer, and possible language family homelands (c. 3,500 to 500 BCE). The approximate coastlines during the early Holocene are shown in lighter blue. (Bellwood, 2011)[60]

The second agricultural center in southern China are clustered around the Yangtze River basin. Rice was domesticated in this region, together with the development of paddy field cultivation, between 13,500 and 8,200 years ago.[59][65][66]

There are two possible centers of domestication for rice. The first, and most likely, is in the lower Yangtze River, believed to be the homelands of early Austronesian speakers and associated with the Kauhuqiao, Hemudu, Majiabang, and Songze cultures. It is characterized by typical pre-Austronesian features, including stilt houses, jade carving, and boat technologies. Their diet were also supplemented by acorns, water chestnuts, foxnuts, and pig domestication. The second is in the middle Yangtze River, believed to be the homelands of the early Hmong-Mien-speakers and associated with the Pengtoushan and Daxi cultures. Both of these regions were heavily populated and had regular trade contacts with each other, as well as with early Austroasiatic speakers to the west, and early Kra-Dai speakers to the south, facilitating the spread of rice cultivation throughout southern China.[66][59][60]
Chronological dispersal of Austronesian peoples across the Indo-Pacific (Bellwood in Chambers, 2008)

The millet and rice-farming cultures also first came into contact with each other at around 9,000 to 7,000 BP, resulting in a corridor between the millet and rice cultivation centers where both rice and millet were cultivated.[59] At around 5,500 to 4,000 BP, there was increasing migration into Taiwan from the early Austronesian Dapenkeng culture, bringing rice and millet cultivation technology with them. During this period, there is evidence of large settlements and intensive rice cultivation in Taiwan and the Penghu Islands, which may have resulted in overexploitation. Bellwood (2011) proposes that this may have been the impetus of the Austronesian expansion which started with the migration of the Austronesian-speakers from Taiwan to the Philippines at around 5,000 BP.[60]

Austronesians carried rice cultivation technology to Island Southeast Asia along with other domesticated species. The new tropical island environments also had new food plants that they exploited. They carried useful plants and animals during each colonization voyage, resulting in the rapid introduction of domesticated and semi-domesticated species throughout Oceania. They also came into contact with the early agricultural centers of Papuan-speaking populations of New Guinea as well as the Dravidian-speaking regions of South India and Sri Lanka by around 3,500 BP. They acquired further cultivated food plants like bananas and pepper from them, and in turn introduced Austronesian technologies like wetland cultivation and outrigger canoes.[60][67][68][69] During the 1st millennium CE, they also colonized Madagascar and the Comoros, bringing Southeast Asian food plants, including rice, to East Africa.[70][71]
In Africa
File:Nile-River1.ogvPlay media
Nile River Valley, Egypt

On the African continent, three areas have been identified as independently developing agriculture: the Ethiopian highlands, the Sahel and West Africa.[72] By contrast, Agriculture in the Nile River Valley is thought to have developed from the original Neolithic Revolution in the Fertile Crescent. Many grinding stones are found with the early Egyptian Sebilian and Mechian cultures and evidence has been found of a neolithic domesticated crop-based economy dating around 7,000 BP.[73][74] Unlike the Middle East, this evidence appears as a "false dawn" to agriculture, as the sites were later abandoned, and permanent farming then was delayed until 6,500 BP with the Tasian culture and Badarian culture and the arrival of crops and animals from the Near East.

Bananas and plantains, which were first domesticated in Southeast Asia, most likely Papua New Guinea, were re-domesticated in Africa possibly as early as 5,000 years ago. Asian yams and taro were also cultivated in Africa.[72]

The most famous crop domesticated in the Ethiopian highlands is coffee. In addition, khat, ensete, noog, teff and finger millet were also domesticated in the Ethiopian highlands. Crops domesticated in the Sahel region include sorghum and pearl millet. The kola nut was first domesticated in West Africa. Other crops domesticated in West Africa include African rice, yams and the oil palm.[72]

Agriculture spread to Central and Southern Africa in the Bantu expansion during the 1st millennium BCE to 1st millennium CE.
In the Americas
Further information: New World crops, Ancestral Puebloans, Oasisamerica, and Proto-Uto-Aztecan

Maize (corn), beans and squash were among the earliest crops domesticated in Mesoamerica, with maize beginning about 4000 BCE,[75] squash as early as 6000 BCE, and beans by no later than 4000 BCE. Potatoes and manioc were domesticated in South America. In what is now the eastern United States, Native Americans domesticated sunflower, sumpweed and goosefoot around 2500 BCE. Sedentary village life based on farming did not develop until the second millennium BCE, referred to as the formative period.[76]
In New Guinea
See also: Domesticated plants and animals of Austronesia

Evidence of drainage ditches at Kuk Swamp on the borders of the Western and Southern Highlands of Papua New Guinea indicates cultivation of taro and a variety of other crops, dating back to 11,000 BP. Two potentially significant economic species, taro (Colocasia esculenta) and yam (Dioscorea sp.), have been identified dating at least to 10,200 calibrated years before present (cal BP). Further evidence of bananas and sugarcane dates to 6,950 to 6,440 BCE. This was at the altitudinal limits of these crops, and it has been suggested that cultivation in more favourable ranges in the lowlands may have been even earlier. CSIRO has found evidence that taro was introduced into the Solomon Islands for human use, from 28,000 years ago, making taro cultivation the earliest crop in the world.[77][78] It seems to have resulted in the spread of the Trans–New Guinea languages from New Guinea east into the Solomon Islands and west into Timor and adjacent areas of Indonesia. This seems to confirm the theories of Carl Sauer who, in "Agricultural Origins and Dispersals", suggested as early as 1952 that this region was a centre of early agriculture.
Domestication of animals
Further information: Domestication of animals

When hunter-gathering began to be replaced by sedentary food production it became more efficient to keep animals close at hand. Therefore, it became necessary to bring animals permanently to their settlements, although in many cases there was a distinction between relatively sedentary farmers and nomadic herders.[79][original research?] The animals' size, temperament, diet, mating patterns, and life span were factors in the desire and success in domesticating animals. Animals that provided milk, such as cows and goats, offered a source of protein that was renewable and therefore quite valuable. The animal's ability as a worker (for example ploughing or towing), as well as a food source, also had to be taken into account. Besides being a direct source of food, certain animals could provide leather, wool, hides, and fertilizer. Some of the earliest domesticated animals included dogs (East Asia, about 15,000 years ago),[80] sheep, goats, cows, and pigs.
Domestication of animals in the Middle East
Dromedary caravan in Algeria

The Middle East served as the source for many animals that could be domesticated, such as sheep, goats and pigs. This area was also the first region to domesticate the dromedary. Henri Fleisch discovered and termed the Shepherd Neolithic flint industry from the Bekaa Valley in Lebanon and suggested that it could have been used by the earliest nomadic shepherds. He dated this industry to the Epipaleolithic or Pre-Pottery Neolithic as it is evidently not Paleolithic, Mesolithic or even Pottery Neolithic.[49][81] The presence of these animals gave the region a large advantage in cultural and economic development. As the climate in the Middle East changed and became drier, many of the farmers were forced to leave, taking their domesticated animals with them. It was this massive emigration from the Middle East that later helped distribute these animals to the rest of Afroeurasia. This emigration was mainly on an east–west axis of similar climates, as crops usually have a narrow optimal climatic range outside of which they cannot grow for reasons of light or rain changes. For instance, wheat does not normally grow in tropical climates, just like tropical crops such as bananas do not grow in colder climates. Some authors, like Jared Diamond, have postulated that this east–west axis is the main reason why plant and animal domestication spread so quickly from the Fertile Crescent to the rest of Eurasia and North Africa, while it did not reach through the north–south axis of Africa to reach the Mediterranean climates of South Africa, where temperate crops were successfully imported by ships in the last 500 years.[82] Similarly, the African Zebu of central Africa and the domesticated bovines of the fertile-crescent – separated by the dry sahara desert – were not introduced into each other's region.
Consequences
Social change
World population (estimated) did not rise for a few millennia after the Neolithic revolution.

Despite the significant technological advance, the Neolithic revolution did not lead immediately to a rapid growth of population. Its benefits appear to have been offset by various adverse effects, mostly diseases and warfare.[83]

The introduction of agriculture has not necessarily led to unequivocal progress. The nutritional standards of the growing Neolithic populations were inferior to that of hunter-gatherers. Several ethnological and archaeological studies conclude that the transition to cereal-based diets caused a reduction in life expectancy and stature, an increase in infant mortality and infectious diseases, the development of chronic, inflammatory or degenerative diseases (such as obesity, type 2 diabetes and cardiovascular diseases) and multiple nutritional deficiencies, including vitamin deficiencies, iron deficiency anemia and mineral disorders affecting bones (such as osteoporosis and rickets) and teeth.[84][85][86] Average height went down from 5'10" (178 cm) for men and 5'6" (168 cm) for women to 5'5" (165 cm) and 5'1" (155 cm), respectively, and it took until the twentieth century for average human height to come back to the pre-Neolithic Revolution levels.[87]

The traditional view is that agricultural food production supported a denser population, which in turn supported larger sedentary communities, the accumulation of goods and tools, and specialization in diverse forms of new labor. The development of larger societies led to the development of different means of decision making and to governmental organization. Food surpluses made possible the development of a social elite who were not otherwise engaged in agriculture, industry or commerce, but dominated their communities by other means and monopolized decision-making.[88] Jared Diamond (in The World Until Yesterday) identifies the availability of milk and cereal grains as permitting mothers to raise both an older (e.g. 3 or 4 year old) and a younger child concurrently. The result is that a population can increase more rapidly. Diamond, in agreement with feminist scholars such as V. Spike Peterson, points out that agriculture brought about deep social divisions and encouraged gender inequality.[89][90] This social reshuffle is traced by historical theorists, like Veronica Strang, through developments in theological depictions.[91] Strang supports her theory through a comparison of aquatic deities before and after the Neolithic Agricultural Revolution, most notably the Venus of Lespugue and the Greco-Roman deities such as Circe or Charybdis: the former venerated and respected, the latter dominated and conquered.  The theory, supplemented by the widely accepted assumption from Parsons that “society is always the object of religious veneration”,[92] argues that with the centralization of government and the dawn of the Anthropocene, roles within society became more restrictive and were rationalized through the conditioning effect of religion; a process that is crystallized in the progression from polytheism to monotheism.
Subsequent revolutions
Domesticated cow being milked in Ancient Egypt

Andrew Sherratt has argued that following upon the Neolithic Revolution was a second phase of discovery that he refers to as the secondary products revolution. Animals, it appears, were first domesticated purely as a source of meat.[93] The Secondary Products Revolution occurred when it was recognised that animals also provided a number of other useful products. These included:

    hides and skins (from undomesticated animals)
    manure for soil conditioning (from all domesticated animals)
    wool (from sheep, llamas, alpacas, and Angora goats)
    milk (from goats, cattle, yaks, sheep, horses, and camels)
    traction (from oxen, onagers, donkeys, horses, camels, and dogs)
    guarding and herding assistance (dogs)

Sherratt argued that this phase in agricultural development enabled humans to make use of the energy possibilities of their animals in new ways, and permitted permanent intensive subsistence farming and crop production, and the opening up of heavier soils for farming. It also made possible nomadic pastoralism in semi arid areas, along the margins of deserts, and eventually led to the domestication of both the dromedary and Bactrian camel.[93] Overgrazing of these areas, particularly by herds of goats, greatly extended the areal extent of deserts.

Living in one spot permitted the accrual of personal possessions and an attachment to certain areas of land. From such a position, it is argued[by whom?], prehistoric people were able to stockpile food to survive lean times and trade unwanted surpluses with others. Once trade and a secure food supply were established, populations could grow, and society could diversify into food producers and artisans, who could afford to develop their trade by virtue of the free time they enjoyed because of a surplus of food. The artisans, in turn, were able to develop technology such as metal weapons. Such relative complexity would have required some form of social organisation to work efficiently, so it is likely that populations that had such organisation, perhaps such as that provided by religion, were better prepared and more successful. In addition, the denser populations could form and support legions of professional soldiers. Also, during this time property ownership became increasingly important to all people. Ultimately, Childe argued that this growing social complexity, all rooted in the original decision to settle, led to a second Urban Revolution in which the first cities were built.[citation needed]
Diet and health

Compared to foragers, Neolithic farmers' diets were higher in carbohydrates but lower in fibre, micronutrients, and protein. This led to an increase in the frequency of carious teeth[94] and slower growth in childhood and increased body fat, and studies have consistently found that populations around the world became shorter after the transition to agriculture. This trend may have been exacerbated by the greater seasonality of farming diets and with it the increased risk of famine due to crop failure.[95]

Throughout the development of sedentary societies, disease spread more rapidly than it had during the time in which hunter-gatherer societies existed. Inadequate sanitary practices and the domestication of animals may explain the rise in deaths and sickness following the Neolithic Revolution, as diseases jumped from the animal to the human population. Some examples of infectious diseases spread from animals to humans are influenza, smallpox, and measles.[96] Ancient microbial genomics has shown that progenitors to human-adapted strains of Salmonella enterica infected up to 5,500 year old agro-pastoralists throughout Western Eurasia, providing molecular evidence for the hypothesis that the Neolithization process facilitated the emergence of human-disease.[97] In concordance with a process of natural selection, the humans who first domesticated the big mammals quickly built up immunities to the diseases as within each generation the individuals with better immunities had better chances of survival. In their approximately 10,000 years of shared proximity with animals, such as cows, Eurasians and Africans became more resistant to those diseases compared with the indigenous populations encountered outside Eurasia and Africa.[98] For instance, the population of most Caribbean and several Pacific Islands have been completely wiped out by diseases. 90% or more of many populations of the Americas were wiped out by European and African diseases before recorded contact with European explorers or colonists. Some cultures like the Inca Empire did have a large domestic mammal, the llama, but llama milk was not drunk, nor did llamas live in a closed space with humans, so the risk of contagion was limited. According to bioarchaeological research, the effects of agriculture on physical and dental health in Southeast Asian rice farming societies from 4000 to 1500 BP was not detrimental to the same extent as in other world regions.[99]

Jonathan C. K. Wells and Jay T. Stock have argued that the dietary changes and increased pathogen exposure associated with agriculture profoundly altered human biology and life history, creating conditions where natural selection favoured the allocation of resources towards reproduction over somatic effort.[95]
Technology

In his book Guns, Germs, and Steel, Jared Diamond argues that Europeans and East Asians benefited from an advantageous geographical location that afforded them a head start in the Neolithic Revolution. Both shared the temperate climate ideal for the first agricultural settings, both were near a number of easily domesticable plant and animal species, and both were safer from attacks of other people than civilizations in the middle part of the Eurasian continent. Being among the first to adopt agriculture and sedentary lifestyles, and neighboring other early agricultural societies with whom they could compete and trade, both Europeans and East Asians were also among the first to benefit from technologies such as firearms and steel swords.[100]
Archaeogenetics
Further information: Genetic history of the Middle East and Early European Farmers

The dispersal of Neolithic culture from the Middle East has recently been associated with the distribution of human genetic markers. In Europe, the spread of the Neolithic culture has been associated with distribution of the E1b1b lineages and Haplogroup J that are thought to have arrived in Europe from North Africa and the Near East respectively.[101][102] In Africa, the spread of farming, and notably the Bantu expansion, is associated with the dispersal of Y-chromosome haplogroup E1b1a from West Africa.[101] [unrelated Link]
Comparative chronology

    vte

Chronology of the Neolithic period

With the E-P75 Y DNA Haplogroup also known as E-1b2 found in Lebanon.Along with the Neolithic Shepherd Culture in Modern Lebanon.Is evidence of the bridge of Neolithic cultures between that of Africa and the Levant. By both culture and Genetics all branching from Descendants of E-M96 believed to Originate from East Africa.
See also

    Anthropocene
    Behavioral modernity
    Broad spectrum revolution
    Haplogroup G (Y-DNA)
    Haplogroup J2 (Y-DNA)
    Haplogroup K (mtDNA)
    Neolithic tomb
    Original affluent society
    Surplus product
    Göbekli Tepe

References

Jean-Pierre Bocquet-Appel (July 29, 2011). "When the World's Population Took Off: The Springboard of the Neolithic Demographic Transition". Science. 333 (6042): 560–561. Bibcode:2011Sci...333..560B. doi:10.1126/science.1208880. PMID 21798934. S2CID 29655920.
Pollard, Elizabeth; Rosenberg, Clifford; Tigor, Robert (2015). Worlds together, worlds apart. 1 (concise ed.). New York: W.W. Norton & Company. p. 23. ISBN 978-0-393-25093-0.
Compare:Lewin, Roger (2009-02-18) [1984]. "35: The origin of agriculture and the first villagers". Human Evolution: An Illustrated Introduction (5 ed.). Malden, Massachusetts: John Wiley & Sons (published 2009). p. 250. ISBN 978-1-4051-5614-1. Retrieved 2017-08-20. "[...] the Neolithic transition involved increasing sedentism and social complexity, which was usually followed by the gradual adoption of plant and animal domestication. In some cases, however, plant domestication preceded sedentism, particularly in the New World."
"International Stratigraphic Chart". International Commission on Stratigraphy. Archived from the original on 2013-02-12. Retrieved 2012-12-06.
Armelagos, George J. (2014). "Brain Evolution, the Determinates of Food Choice, and the Omnivore's Dilemma". Critical Reviews in Food Science and Nutrition. 54 (10): 1330–1341. doi:10.1080/10408398.2011.635817. ISSN 1040-8398. PMID 24564590. S2CID 25488602.
Violatti, Cristian (2 April 2018). "Neolithic Period". World History Encyclopedia.
"The Slow Birth of Agriculture" Archived 2011-01-01 at the Wayback Machine, Heather Pringle
"Wizard Chemi Shanidar". EMuseum. Minnesota State University. Archived from the original on June 18, 2008.
The Cambridge World History of Food. Cambridge University Press. p. 46.
Zalloua, Pierre A.; Matisoo-Smith, Elizabeth (6 January 2017). "Mapping Post-Glacial expansions: The Peopling of Southwest Asia". Scientific Reports. 7: 40338. Bibcode:2017NatSR...740338P. doi:10.1038/srep40338. ISSN 2045-2322. PMC 5216412. PMID 28059138.
Diamond, J.; Bellwood, P. (2003). "Farmers and Their Languages: The First Expansions". Science. 300 (5619): 597–603. Bibcode:2003Sci...300..597D. CiteSeerX 10.1.1.1013.4523. doi:10.1126/science.1078208. PMID 12714734. S2CID 13350469.
Childe, Vere Gordon (1936). Man Makes Himself. London: Watts & Company.
Brami, Maxime N. (2019-12-01). "The Invention of Prehistory and the Rediscovery of Europe: Exploring the Intellectual Roots of Gordon Childe's 'Neolithic Revolution' (1936)". Journal of World Prehistory. 32 (4): 311–351. doi:10.1007/s10963-019-09135-y. ISSN 1573-7802.
Graeme Barker (2009). The Agricultural Revolution in Prehistory: Why did Foragers become Farmers?. Oxford University Press. ISBN 978-0-19-955995-4.
Thissen, L. "Appendix I, The CANeW 14C databases, Anatolia 10,000–5000 cal. BC." in: F. Gérard and L. Thissen (eds.), The Neolithic of Central Anatolia. Internal developments and external relations during the 9th–6th millennia cal BC, Proc. Int. CANeW Round Table, Istanbul 23–24 November 2001, (2002)
Denham, Tim P.; Haberle, S. G.; Fullagar, R; Field, J; Therin, M; Porch, N; Winsborough, B (2003). "Origins of Agriculture at Kuk Swamp in the Highlands of New Guinea" (PDF). Science. 301 (5630): 189–193. doi:10.1126/science.1085255. PMID 12817084. S2CID 10644185.
"The Kuk Early Agricultural Site". UNESCO World Heritage Centre.
Kealhofer, Lisa (2003). "Looking into the gap: land use and the tropical forests of southern Thailand". Asian Perspectives. 42 (1): 72–95. doi:10.1353/asi.2003.0022. hdl:10125/17181. S2CID 162916204.
Scarre, Chris (2005). "The World Transformed: From Foragers and Farmers to States and Empires" in The Human Past: World Prehistory and the Development of Human Societies (Ed: Chris Scarre). London: Thames and Hudson. p. 188. ISBN 0-500-28531-4
Charles E. Redman (1978). Rise of Civilization: From Early Hunters to Urban Society in the Ancient Near East. San Francisco: Freeman.
Hayden, Brian (1992). "Models of Domestication". In Anne Birgitte Gebauer and T. Douglas Price (ed.). Transitions to Agriculture in Prehistory. Madison: Prehistory Press. pp. 11–18.
Sauer, Carl O. (1952). Agricultural origins and dispersals. Cambridge, MA: MIT Press.
Binford, Lewis R. (1968). "Post-Pleistocene Adaptations". In Sally R. Binford and Lewis R. Binford (ed.). New Perspectives in Archaeology. Chicago: Aldine Publishing Company. pp. 313–342.
Rindos, David (December 1987). The Origins of Agriculture: An Evolutionary Perspective. Academic Press. ISBN 978-0-12-589281-0.
Richerson, Peter J.; Boyd, Robert (2001). "Was Agriculture Impossible during the Pleistocene but Mandatory during the Holocene?". American Antiquity. 66 (3): 387–411. doi:10.2307/2694241. JSTOR 2694241. S2CID 163474968.
Wright, Ronald (2004). A Short History of Progress. Anansi. ISBN 978-0-88784-706-6.
Anderson, David G; Albert C. Goodyear; James Kennett; Allen West (2011). "Multiple lines of evidence for possible Human population decline/settlement reorganization during the early Younger Dryas". Quaternary International. 242 (2): 570–583. Bibcode:2011QuInt.242..570A. doi:10.1016/j.quaint.2011.04.020.
Grinin L.E. Production Revolutions and Periodization of History: A Comparative and Theoretic-mathematical Approach. / Social Evolution & History. Volume 6, Number 2 / September 2007 [1]
Hole, Frank., A Reassessment of the Neolithic Revolution, Paléorient, Volume 10, Issue 10-2, pp. 49–60, 1984.
CC-BY icon.svg Material was copied from this source, which is available under a Creative Commons Attribution 4.0 International License Nadel, Dani; Weiss, Ehud; Groman-Yaroslavski, Iris (23 November 2016). "Composite Sickles and Cereal Harvesting Methods at 23,000-Years-Old Ohalo II, Israel". PLOS ONE. 11 (11): e0167151. Bibcode:2016PLoSO..1167151G. doi:10.1371/journal.pone.0167151. ISSN 1932-6203. PMC 5120854. PMID 27880839.
Enzel, Yehouda; Bar-Yosef, Ofer (2017). Quaternary of the Levant. Cambridge University Press. p. 335. ISBN 978-1-107-09046-0.
Zohary, D., The mode of domestication of the founder crops of Southwest Asian agriculture. pp. 142–158 in D. R. Harris (ed.) The Origins and Spread of Agriculture and Pastoralism in Eurasia. UCL Press Ltd, London, 1996
Zohary, D., Monophyletic vs. polyphyletic origin of the crops on which agriculture was founded in the Near East. Genetic Resources and Crop Evolution 46 (2) pp. 133–142
Hillman, G. C. and M. S. Davies., Domestication rate in wild wheats and barley under primitive cultivation: preliminary results and archaeological implications of field measurements of selection coefficient, pp. 124–132 in P. Anderson-Gerfaud (ed.) Préhistoire de l'agriculture: nouvelles approches expérimentales et ethnographiques. Monographie du CRA 6, Éditions Centre Nationale Recherches Scientifiques: Paris, 1992
Weiss, Ehud; Kislev, Mordechai E.; Hartmann, Anat (2006). "Autonomous Cultivation Before Domestication". Science. 312 (5780): 1608–1610. doi:10.1126/science.1127235. PMID 16778044. S2CID 83125044.
"Tamed 11,400 Years Ago, Figs Were Likely First Domesticated Crop". ScienceDaily. 4 June 2006.
Flannery, Kent V. (1969). "Origins and ecological effects of early domestication in Iran and the Near East". In Ucko, Peter John; Dimbleby, G. W. (eds.). The Domestication and Exploitation of Plants and Animals. New Brunswick, New Jersey: Transaction Publishers (published 2007). p. 89. ISBN 978-0-202-36557-2. Retrieved 2019-01-12. "Our earliest evidence for this new technology comes [...] from the lowland steppe of Khuzistan. [...] Once irrigation appeared, the steppe greatly increased its carrying capacity and became, in fact, the dominant growth centre of the Zagros region between 5500 and 4000 B.C."
Lawton, H. W.; Wilke, P. J. (1979). "Ancient Agricultural Systems in Dry Regions of the Old World". In Hall, A. E.; Cannell, G. H.; Lawton, H.W. (eds.). Agriculture in Semi-Arid Environments. Ecological Studies. 34 (reprint ed.). Berlin: Springer Science & Business Media (published 2012). p. 13. ISBN 978-3-642-67328-3. Retrieved 2019-01-12. "Archeological investigations on the Deh Luran Plain of Iran have provided a model for the internal dynamics of the culture sequence of prehistoric Khuzistan [...]. Somewhere between 5500 and 5000 B.C. in the Sabz phase of the Deh Luran Plain, irrigation water was apparently diverted from stream channels in a fashion similar to that employed in early Mesopotamia."
CC-BY icon.svg Material was copied from this source, which is available under a Creative Commons Attribution 4.0 International License Jones, Martin K.; Kovaleva, Olga (18 July 2018). "Barley heads east: Genetic analyses reveal routes of spread through diverse Eurasian landscapes". PLOS ONE. 13 (7): e0196652. Bibcode:2018PLoSO..1396652L. doi:10.1371/journal.pone.0196652. ISSN 1932-6203. PMC 6051582. PMID 30020920.
Brown, T. A.; Jones, M. K.; Powell, W.; Allaby, R. G. (2009). "The complex origins of domesticated crops in the Fertile Crescent" (PDF). Trends in Ecology & Evolution. 24 (2): 103–109. doi:10.1016/j.tree.2008.09.008. PMID 19100651.
Mithen, Steven (2006). After the ice : a global human history, 20.000–5.000 BC (1. paperback ed.). Cambridge, MA: Harvard Univ. Press. p. 517. ISBN 978-0-674-01570-8.
Compiled largely with reference to: Weiss, E., Mordechai, E., Simchoni, O., Nadel, D., & Tschauner, H. (2008). Plant-food preparation area on an Upper Paleolithic brush hut floor at Ohalo II, Israel. Journal of Archaeological Science, 35 (8), 2400–2414.
Ozkan, H.; Brandolini, A.; Schäfer-Pregl, R.; Salamini, F. (October 2002). "AFLP analysis of a collection of tetraploid wheats indicates the origin of emmer and hard wheat domestication in southeast Turkey". Molecular Biology and Evolution. 19 (10): 1797–801. doi:10.1093/oxfordjournals.molbev.a004002. PMID 12270906.
van Zeist, W. Bakker-Heeres, J.A.H., Archaeobotanical Studies in the Levant 1. Neolithic Sites in the Damascus Basin: Aswad, Ghoraifé, Ramad., Palaeohistoria, 24, 165–256, 1982.
Hopf, Maria., "Jericho plant remains" in Kathleen M. Kenyon and T. A. Holland (eds.) Excavations at Jericho 5, pp. 576–621, British School of Archaeology at Jerusalem, London, 1983.
Jacques Cauvin (2000). The Birth of the Gods and the Origins of Agriculture, p. 53. Cambridge University Press. ISBN 978-0-521-65135-6. Retrieved 15 August 2012.
Riehl, Simone; Zeidi, Mohsen; Conard, Nicholas (2013-07-05). "Emergence of Agriculture in the Foothills of the Zagros Mountains of Iran". Science. 341 (6141): 65–7. Bibcode:2013Sci...341...65R. doi:10.1126/science.1236743. PMID 23828939. S2CID 45375155.
Peltenburg, E.J.; Wasse, Alexander; Council for British Research in the Levant (2004). Maya Haïdar Boustani, Flint workshops of the Southern Beqa' valley (Lebanon): preliminary results from Qar'oun* in Neolithic revolution: new perspectives on southwest Asia in light of recent discoveries on Cyprus. Oxbow Books. ISBN 978-1-84217-132-5.
L. Copeland; P. Wescombe (1966). Inventory of Stone-Age Sites in Lebanon: North, South and East-Central Lebanon. Imprimerie Catholique. p. 89.
Bellwood 2004, pp. 68–69.
Bellwood 2004, pp. 74, 118.
Subbaraman, Nidhi (December 12, 2012). "Art of cheese-making is 7,500 years old". Nature News. doi:10.1038/nature.2012.12020. S2CID 180646880.
Bellwood 2004, pp. 68–72.
Consortium, the Genographic; Cooper, Alan (9 November 2010). "Ancient DNA from European Early Neolithic Farmers Reveals Their Near Eastern Affinities". PLOS Biology. 8 (11): e1000536. doi:10.1371/journal.pbio.1000536. ISSN 1545-7885. PMC 2976717. PMID 21085689.
Original text published under Creative Commons license CC BY 4.0: Shukurov, Anvar; Sarson, Graeme R.; Gangal, Kavita (2014). "The Near-Eastern Roots of the Neolithic in South Asia". PLOS ONE. 9 (5): e95714. Bibcode:2014PLoSO...995714G. doi:10.1371/journal.pone.0095714. PMC 4012948. PMID 24806472. CC-BY icon.svg Material was copied from this source, which is available under a Creative Commons Attribution 4.0 International License
CC-BY icon.svg Material was copied from this source, which is available under a Creative Commons Attribution 4.0 International License Turbón, Daniel; Arroyo-Pardo, Eduardo (5 June 2014). "Ancient DNA Analysis of 8000 B.C. Near Eastern Farmers Supports an Early Neolithic Pioneer Maritime Colonization of Mainland Europe through Cyprus and the Aegean Islands". PLOS Genetics. 10 (6): e1004401. doi:10.1371/journal.pgen.1004401. ISSN 1553-7404. PMC 4046922. PMID 24901650.
Coningham, Robin; Young, Ruth (2015). The Archaeology of South Asia: From the Indus to Asoka, c. 6500 BCE–200 CE. Cambridge University Press Cambridge World Archeology. p. 111. ISBN 978-1-316-41898-7.
CC-BY icon.svg Material was copied from this source, which is available under a Creative Commons Attribution 4.0 International License Shukurov, Anvar; Sarson, Graeme R.; Gangal, Kavita (7 May 2014). "The Near-Eastern Roots of the Neolithic in South Asia". PLOS ONE. 9 (5): e95714. Bibcode:2014PLoSO...995714G. doi:10.1371/journal.pone.0095714. ISSN 1932-6203. PMC 4012948. PMID 24806472.
He, Keyang; Lu, Houyuan; Zhang, Jianping; Wang, Can; Huan, Xiujia (7 June 2017). "Prehistoric evolution of the dualistic structure mixed rice and millet farming in China". The Holocene. 27 (12): 1885–1898. Bibcode:2017Holoc..27.1885H. doi:10.1177/0959683617708455. S2CID 133660098.
Bellwood, Peter (9 December 2011). "The Checkered Prehistory of Rice Movement Southwards as a Domesticated Cereal – from the Yangzi to the Equator" (PDF). Rice. 4 (3–4): 93–103. doi:10.1007/s12284-011-9068-9. S2CID 44675525.
Fuller, D. Q. (2007). "Contrasting Patterns in Crop Domestication and Domestication Rates: Recent Archaeobotanical Insights from the Old World". Annals of Botany. 100 (5): 903–924. doi:10.1093/aob/mcm048. PMC 2759199. PMID 17495986.
Siddiqi, Mohammad Rafiq (2001). Tylenchida: Parasites of Plants and Insects. CABI.
Thacker, Christopher (1985). The history of gardens. Berkeley: University of California Press. p. 57. ISBN 978-0-520-05629-9.
Webber, Herbert John (1967–1989). Chapter I. History and Development of the Citrus Industry Archived 2016-05-23 at the Portuguese Web Archive in Origin of Citrus, Vol. 1. University of California
Molina, J.; Sikora, M.; Garud, N.; Flowers, J. M.; Rubinstein, S.; Reynolds, A.; Huang, P.; Jackson, S.; Schaal, B. A.; Bustamante, C. D.; Boyko, A. R.; Purugganan, M. D. (2011). "Molecular evidence for a single evolutionary origin of domesticated rice". Proceedings of the National Academy of Sciences. 108 (20): 8351–83516. Bibcode:2011PNAS..108.8351M. doi:10.1073/pnas.1104686108. PMC 3101000. PMID 21536870.
Zhang, Jianping; Lu, Houyuan; Gu, Wanfa; Wu, Naiqin; Zhou, Kunshu; Hu, Yayi; Xin, Yingjun; Wang, Can; Kashkush, Khalil (17 December 2012). "Early Mixed Farming of Millet and Rice 7800 Years Ago in the Middle Yellow River Region, China". PLOS ONE. 7 (12): e52146. Bibcode:2012PLoSO...752146Z. doi:10.1371/journal.pone.0052146. PMC 3524165. PMID 23284907.
Bayliss-Smith, Tim; Golson, Jack; Hughes, Philip (2017). "Phase 4: Major Disposal Channels, Slot-Like Ditches and Grid-Patterned Fields". In Golson, Jack; Denham, Tim; Hughes, Philip; Swadling, Pamela; Muke, John (eds.). Ten Thousand Years of Cultivation at Kuk Swamp in the Highlands of Papua New Guinea. terra australis. 46. ANU Press. pp. 239–268. ISBN 978-1-76046-116-4.
Mahdi, Waruno (1999). "The Dispersal of Austronesian boat forms in the Indian Ocean". In Blench, Roger; Spriggs, Matthew (eds.). Archaeology and Language III: Artefacts languages, and texts. One World Archaeology. 34. Routledge. pp. 144–179. ISBN 978-0-415-10054-0.
Blench, Roger (2010). "Evidence for the Austronesian Voyages in the Indian Ocean" (PDF). In Anderson, Atholl; Barrett, James H.; Boyle, Katherine V. (eds.). The Global Origins and Development of Seafaring. McDonald Institute for Archaeological Research. pp. 239–248. ISBN 978-1-902937-52-6.
Beaujard, Philippe (August 2011). "The first migrants to Madagascar and their introduction of plants: linguistic and ethnological evidence" (PDF). Azania: Archaeological Research in Africa. 46 (2): 169–189. doi:10.1080/0067270X.2011.580142. S2CID 55763047.
Walter, Annie; Lebot, Vincent (2007). Gardens of Oceania. IRD Éditions-CIRAD. ISBN 978-1-86320-470-5.
Diamond, Jared (1999). Guns, Germs, and Steel. New York: Norton Press. ISBN 978-0-393-31755-8.
The Cambridge History of Africa
Smith, Philip E.L., Stone Age Man on the Nile, Scientific American Vol. 235 No. 2, August 1976: "With the benefit of hindsight we can now see that many Late Paleolithic peoples in the Old World were poised on the brink of plant cultivation and animal husbandry as an alternative to the hunter-gatherer's way of life".
Johannessen, S.; Hastorf, C. A. (eds.). Corn and Culture in the Prehistoric New World. Westview Press.
Graeme Barker (2009). The Agricultural Revolution in Prehistory: Why Did Foragers Become Farmers?. Oxford University Press. p. 252. ISBN 978-0-19-955995-4. Retrieved 4 January 2012.
Denham, Tim et al. (received July 2005) "Early and mid Holocene tool-use and processing of taro (Colocasia esculenta), yam (Dioscorea sp.) and other plants at Kuk Swamp in the highlands of Papua New Guinea" (Journal of Archaeological Science, Volume 33, Issue 5, May 2006)
Loy, Thomas & Matthew Spriggs (1992), " Direct evidence for human use of plants 28,000 years ago: starch residues on stone artefacts from the northern Solomon Islands" (Antiquity Volume: 66, Number: 253, pp. 898–912)
"The Development of Agriculture". Genographic Project. Archived from the original on 2016-04-14. Retrieved 2017-07-21.
McGourty, Christine (2002-11-22). "Origin of dogs traced". BBC News. Retrieved 2006-11-29.
Fleisch, Henri., Notes de Préhistoire Libanaise : 1) Ard es Saoude. 2) La Bekaa Nord. 3) Un polissoir en plein air. BSPF, vol. 63.
Guns, Germs, and Steel: The Fates of Human Societies. Jared Diamond (1997).
James C. Scott,Against the Grain: a Deep History of the Earliest States, NJ: Yale UP, (2017), "The world's population in 10 000 BC, according to a careful estimate was roughly 4 million. A full five thousand years later it has risen only to 5 million...One likely explanation for this apparent human progress in subsistance techniques together with a long period of demographic stagnation is that epidemologically this was perhaps the most lethal period in human history".
Sands DC, Morris CE, Dratz EA, Pilgeram A (2009). "Elevating optimal human nutrition to a central goal of plant breeding and production of plant-based foods". Plant Sci (Review). 177 (5): 377–389. doi:10.1016/j.plantsci.2009.07.011. PMC 2866137. PMID 20467463.
O'Keefe JH, Cordain L (2004). "Cardiovascular disease resulting from a diet and lifestyle at odds with our Paleolithic genome: how to become a 21st-century hunter-gatherer". Mayo Clin Proc (Review). 79 (1): 101–108. doi:10.4065/79.1.101. PMID 14708953.
Shermer, Michael (2001). The Borderlands of Science. Oxford University Press. p. 250.
Hermanussen, Michael; Poustka, Fritz (July–September 2003). "Stature of early Europeans". Hormones (Athens). 2 (3): 175–178. doi:10.1159/000079404. PMID 17003019. S2CID 85210429.
Eagly, Alice H.; Wood, Wendy (June 1999). "The Origins of Sex Differences in Human Behavior: Evolved Dispositions Versus Social Roles". American Psychologist. 54 (6): 408–423. doi:10.1037/0003-066x.54.6.408.
Diamond, Jared (May 1987). "The Worst Mistake in the History of the Human Race". Discover Magazine: 64–66.
Peterson, V. Spike (2014-07-03). "Sex Matters". International Feminist Journal of Politics. 16 (3): 389–409. doi:10.1080/14616742.2014.913384. ISSN 1461-6742. S2CID 147633811.
Strang, Veronica (2014). ""Lording It over the Goddess: Water, Gender, and Human-Environmental Relations."". Journal of Feminist Studies in Religion. 30 (1): 85–109. doi:10.2979/jfemistudreli.30.1.85. JSTOR 10.2979/jfemistudreli.30.1.85. S2CID 143567275 – via JSTOR.
Parsons, Talcott (1944). ""The Theoretical Development of the Sociology of Religion: A Chapter in the History of Modern Social Science."". Journal of the History of Ideas. 5 (2): 176–190. doi:10.2307/2707383. JSTOR 2707383 – via JSTOR.
Sherratt 1981
Larsen, Clark Spencer (2006-06-01). "The agricultural revolution as environmental catastrophe: Implications for health and lifestyle in the Holocene". Quaternary International. Impact of rapid environmental changes on humans and ecosystems. 150 (1): 12–20. Bibcode:2006QuInt.150...12L. doi:10.1016/j.quaint.2006.01.004. ISSN 1040-6182.
Wells, Jonathan C. K.; Stock, Jay T. (2020). "Life History Transitions at the Origins of Agriculture: A Model for Understanding How Niche Construction Impacts Human Growth, Demography and Health". Frontiers in Endocrinology. 11: 325. doi:10.3389/fendo.2020.00325. ISSN 1664-2392. PMC 7253633. PMID 32508752.
Furuse, Y.; Suzuki, A.; Oshitani, H. (2010). "Origin of measles virus: Divergence from rinderpest virus between the 11th and 12th centuries". Virology Journal. 7: 52. doi:10.1186/1743-422X-7-52. PMC 2838858. PMID 20202190.
Key, Felix M.; Posth, Cosimo; Esquivel-Gomez, Luis R.; Hübler, Ron; Spyrou, Maria A.; Neumann, Gunnar U.; Furtwängler, Anja; Sabin, Susanna; Burri, Marta; Wissgott, Antje; Lankapalli, Aditya Kumar; Vågene, Åshild J.; Meyer, Matthias; Nagel, Sarah; Tukhbatova, Rezeda; Khokhlov, Aleksandr; Chizhevsky, Andrey; Hansen, Svend; Belinsky, Andrey B.; Kalmykov, Alexey; Kantorovich, Anatoly R.; Maslov, Vladimir E.; Stockhammer, Philipp W.; Vai, Stefania; Zavattaro, Monica; Riga, Alessandro; Caramelli, David; Skeates, Robin; Beckett, Jessica; Gradoli, Maria Giuseppina; Steuri, Noah; Hafner, Albert; Ramstein, Marianne; Siebke, Inga; Lösch, Sandra; Erdal, Yilmaz Selim; Alikhan, Nabil-Fareed; Zhou, Zhemin; Achtman, Mark; Bos, Kirsten; Reinhold, Sabine; Haak, Wolfgang; Kühnert, Denise; Herbig, Alexander; Krause, Johannes (March 2020). "Emergence of human-adapted Salmonella enterica is linked to the Neolithization process". Nature Ecology & Evolution. 4 (3): 324–333. doi:10.1038/s41559-020-1106-9. ISSN 2397-334X. PMC 7186082. PMID 32094538.
Guns, Germs, and Steel: The Fates of Human Societies. Jared Diamond, 1997
Halcrow, S. E.; Harris, N. J.; Tayles, N.; Ikehara‐Quebral, R.; Pietrusewsky, M. (2013). "From the mouths of babes: Dental caries in infants and children and the intensification of agriculture in mainland Southeast Asia". American Journal of Physical Anthropology. 150 (3): 409–420. doi:10.1002/ajpa.22215. PMID 23359102.
"BBC – History – Ancient History in depth: Overview: From Neolithic to Bronze Age, 8000–800 BC". Retrieved 2017-07-21.
Semino, O; et al. (2004). "Origin, Diffusion, and Differentiation of Y-Chromosome Haplogroups E and J: Inferences on the Neolithization of Europe and Later Migratory Events in the Mediterranean Area". American Journal of Human Genetics. 74 (5): 1023–1034. doi:10.1086/386295. PMC 1181965. PMID 15069642.

    Lancaster, Andrew (2009). "Y Haplogroups, Archaeological Cultures and Language Families: a Review of the Multidisciplinary Comparisons using the case of E-M35" (PDF). Journal of Genetic Genealogy. 5 (1).

Bibliography

    Bailey, Douglass. (2001). Balkan Prehistory: Exclusions, Incorporation and Identity. Routledge Publishers. ISBN 0-415-21598-6.
    Bailey, Douglass. (2005). Prehistoric Figurines: Representation and Corporeality in the Neolithic. Routledge Publishers. ISBN 0-415-33152-8.
    Balter, Michael (2005). The Goddess and the Bull: Catalhoyuk, An Archaeological Journey to the Dawn of Civilization. New York: Free Press. ISBN 0-7432-4360-9.
    Bellwood, Peter (2004). First Farmers: The Origins of Agricultural Societies. Blackwell. ISBN 0-631-20566-7.
    Bocquet-Appel, Jean-Pierre, editor and Ofer Bar-Yosef, editor, The Neolithic Demographic Transition and its Consequences, Springer (October 21, 2008), hardcover, 544 pages, ISBN 978-1-4020-8538-3, trade paperback and Kindle editions are also available.
    Cohen, Mark Nathan (1977)The Food Crisis in Prehistory: Overpopulation and the Origins of Agriculture. New Haven and London: Yale University Press. ISBN 0-300-02016-3.
    Diamond, Jared (1997). Guns, germs and steel. A short history of everybody for the last 13,000 years.
    Diamond, Jared (2002). "Evolution, Consequences and Future of Plant and Animal Domestication". Nature, Vol 418.
    Harlan, Jack R. (1992). Crops & Man: Views on Agricultural Origins ASA, CSA, Madison, WI. https://web.archive.org/web/20060819110723/http://www.hort.purdue.edu/newcrop/history/lecture03/r_3-1.html
    Wright, Gary A. (1971). "Origins of Food Production in Southwestern Asia: A Survey of Ideas" Current Anthropology, Vol. 12, No. 4/5 (Oct.–Dec., 1971), pp. 447–477
    Kuijt, Ian; Finlayson, Bill. (2009). "Evidence for food storage and predomestication granaries 11,000 years ago in the Jordan Valley". PNAS, Vol. 106, No. 27, pp. 10966–10970.

    vte

Agriculture

    vte

History of technology

    vte

Big History

    vte

Prehistoric Asia

    vte

Prehistoric technology
Authority control Edit this at Wikidata	

    GND: 4364636-0

Categories:

    Prehistoric agricultureHistory of technologyNeolithicAgricultural revolutionsTheories of historyHistorical eras

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Afrikaans
    العربية
    Deutsch
    Español
    Euskara
    Français
    Italiano
    Português
    中文

Edit links

    This page was last edited on 11 May 2021, at 13:30 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


! Neuroethics
!! 
!! https://en.wikipedia.org/wiki/Neuroethics

From Wikipedia, the free encyclopedia

This article is about the discipline. For the journal, see Neuroethics (journal).

Neuroethics refers to two related fields of study: what the philosopher Adina Roskies has called the ethics of neuroscience, and the neuroscience of ethics.[1][2] The ethics of neuroscience comprises the bulk of work in neuroethics. It concerns the ethical, legal and social impact of neuroscience, including the ways in which neurotechnology can be used to predict or alter human behavior and "the implications of our mechanistic understanding of brain function for society... integrating neuroscientific knowledge with ethical and social thought".[2]

Some neuroethics problems are not fundamentally different from those encountered in bioethics. Others are unique to neuroethics because the brain, as the organ of the mind, has implications for broader philosophical problems, such as the nature of free will, moral responsibility, self-deception, and personal identity.[3] Examples of neuroethics topics are given later in this article ("Key issues in neuroethics").

The origin of the term "neuroethics" has occupied some writers. Rees and Rose (as cited in "References" on page 9)[inconsistent] claim neuroethics is a neologism that emerged only at the beginning of the 21st century, largely through the oral and written communications of ethicists and philosophers. According to Racine (2010), the term was coined by the Harvard physician Anneliese A. Pontius in 1973 in a paper entitled "Neuro-ethics of 'walking' in the newborn" for the Perceptual and Motor Skills. The author reproposed the term in 1993 in her paper for Psychological Report, often wrongly mentioned as the first title containing the word "neuroethics". Before 1993, the American neurologist Ronald Cranford has used the term (see Cranford 1989). Illes (2003) records uses, from the scientific literature, from 1989 and 1991. Writer William Safire is widely credited with giving the word its current meaning in 2002, defining it as "the examination of what is right and wrong, good and bad about the treatment of, perfection of, or unwelcome invasion of and worrisome manipulation of the human brain".[4]
Contents

    1 Two categories of problems
    2 Historical background and implications of neuroscience ethics
    3 Important activity since 2002
    4 Sources of information
    5 Key issues
        5.1 Brain interventions
        5.2 Brain imaging
        5.3 Memory dampening
        5.4 Stem cell therapy
        5.5 Disorders of consciousness
        5.6 Pharmacological enhancement
        5.7 Politics of neuromarketing
        5.8 Neurological treatments
        5.9 Neuroscience and free will
    6 Academic journals
    7 See also
    8 Notes
    9 References
    10 External links

Two categories of problems

Neuroethics encompasses the myriad ways in which developments in basic and clinical neuroscience intersect with social and ethical issues. The field is so young that any attempt to define its scope and limits now will undoubtedly be proved wrong in the future, as neuroscience develops and its implications continue to be revealed. At present, however, we can discern two general categories of neuroethical issue: those emerging from what we can do and those emerging from what we know.

In the first category are the ethical problems raised by advances in functional neuroimaging, psychopharmacology, brain implants and brain-machine interfaces. In the second category are the ethical problems raised by our growing understanding of the neural bases of behavior, personality, consciousness, and states of spiritual transcendence.
Historical background and implications of neuroscience ethics

Primitive societies for the most part lacked a system of neuroethics to guide them in facing the problems of mental illness and violence as civilization advanced. Trepanation led through a tortuous course to "psychosurgery".[5][6] Basic neuroscience research and psychosurgery advanced in the first half of the 20th century in tandem, but neuroscience ethics was left behind science and technology.[7] Medical ethics in modern societies even in democratic governments, not to mention in authoritarian ones, has not kept pace with the advances of technology despite the announced social "progress"; and ethics continues to lag behind science in dealing with the problem of mental illness in association with human violence.[8][9] Unprovoked "pathological" aggression persists, reminding us daily that civilization is a step away from relapsing into barbarism. Neuroscience ethics (neuroethics) must keep up with advances in neuroscience research and remain separate from state-imposed mandates to face this challenge.[10]

A recent writer on the history of psychosurgery as it relates to neuroethics concludes: "The lessons of history sagaciously reveal wherever the government has sought to alter medical ethics and enforce bureaucratic bioethics, the results have frequently vilified medical care and research. In the 20th century in both the communist USSR and Nazi Germany, medicine regressed after these authoritarian systems corrupted the ethics of the medical profession and forced it to descend to unprecedented barbarism. The Soviet psychiatrists and Nazi doctor's dark descent into barbarism was a product of physicians willingly cooperating with the totalitarian state, purportedly in the name of the "collective good", at the expense of their individual patients." This must be kept in mind when establishing new guidelines in neuroscience research and bioethics.[10]
Important activity since 2002

There is no doubt that people were thinking and writing about the ethical implications of neuroscience for many years before the field adopted the label "neuroethics", and some of this work remains of great relevance and value. However, the early 21st century saw a tremendous surge in interest concerning the ethics of neuroscience, as evidenced by numerous meetings, publications and organizations dedicated to this topic.

In 2002, there were several meetings that drew together neuroscientists and ethicists to discuss neuroethics: the American Association for the Advancement of Science with the journal Neuron, the University of Pennsylvania, the Royal Society, Stanford University, and the Dana Foundation. This last meeting was the largest, and resulted in a book, Neuroethics: Mapping the Field, edited by Steven J. Marcus and published by Dana Press. That same year, the Economist ran a cover story entitled "Open Your Mind: The Ethics of Brain Science", Nature published the article "Emerging ethical issues in neuroscience".[11] Further articles appeared on neuroethics in Nature Neuroscience, Neuron, and Brain and Cognition.

Thereafter, the number of neuroethics meetings, symposia and publications continued to grow. The over 38 000 members of the Society for Neuroscience recognized the importance of neuroethics by inaugurating an annual "special lecture" on the topic, first given by Donald Kennedy, editor-in-chief of Science Magazine. Several overlapping networks of scientists and scholars began to coalesce around neuroethics-related projects and themes. For example, the American Society for Bioethics and Humanities established a Neuroethics Affinity Group, students at the London School of Economics established the Neuroscience and Society Network linking scholars from several different institutions, and a group of scientists and funders from around the world began discussing ways to support international collaboration in neuroethics through what came to be called the International Neuroethics Network. Stanford began publishing the monthly Stanford Neuroethics Newsletter, Penn developed the informational website neuroethics.upenn.edu, and the Neuroethics and Law Blog was launched.

Several relevant books were published during this time as well: Sandra Ackerman's Hard Science, Hard Choices: Facts, Ethics and Policies Guiding Brain Science Today (Dana Press), Michael Gazzaniga's The Ethical Brain (Dana Press), Judy Illes' edited volume, Neuroethics: Defining the Issues in Theory, Practice and Policy (both Oxford University Press), Dai Rees and Steven Rose's edited volume The New Brain Sciences: Perils and Prospects (Cambridge University Press) and Steven Rose's The Future of the Brain (Oxford University Press).

2006 marked the founding of the International Neuroethics Society (INS) (originally the Neuroethics Society), an international group of scholars, scientists, clinicians, and other professionals who share an interest in the social, legal, ethical and policy implications of advances in neuroscience. The mission of the International Neuroethics Society "is to promote the development and responsible application of neuroscience through interdisciplinary and international research, education, outreach and public engagement for the benefit of people of all nations, ethnicities, and cultures".[12] The first President of the INS was Steven Hyman (2006–2014), succeeded by Barbara Sahakian (2014–2016). Judy Illes is the current President, who like Hyman and Sahakian, was also a pioneer in the field of neuroethics and a founder member of the INS.

Over the next several years many centers for neurotics were established. A 2014 review of the field lists 31 centers and programs around the world;[13] some of the longest running include the Neuroethics Research Unit at the Institut de recherches cliniques de Montreal (IRCM), the National Core for Neuroethics at the University of British Columbia in 2007, the Center for Neurotechnology Studies of the Potomac Institute for Policy Studies, the Wellcome Centre for Neuroethics at the University of Oxford; and the Center for Neuroscience & Society at the University of Pennsylvania.

Since 2017, neuroethics working groups across multiple organizations have published a spate of reports and guiding principles. In 2017, the Global Neuroethics Summit Delegates prepared a set of ethical questions to guide research in brain science, published in Neuron.[14] In December 2018, The Neuroethics Working Group of the National Institutes of Health (NIH) Brain Research through Advancing Innovative Neurotechnologies (BRAIN) Initiative proposed incorporating Neuroethics Guiding Principles into the research advanced by the Initiative.[15] In December 2019, the Organisation for Economic Co-operation and Development (OECD) confirmed a set of neuroethics principles and recommendations; now this interdisciplinary group is developing a toolkit for implementation, moving from the theoretical to the practical.[16] In early 2020, the Institute of Electrical and Electronics Engineers (IEEE) developed a neuroethical framework to facilitate the development of guidelines for engineers working on new neurotechnologies.[17]
Sources of information

The books, articles and websites mentioned above are by no means a complete list of good neuroethics information sources. For example, readings and websites that focus on specific aspects of neuroethics, such as brain imaging or enhancement, are not included. Nor are more recent sources, such as Walter Glannon's book Bioethics and the Brain (Oxford University Press) and his reader, entitled Defining Right and Wrong in Brain Science (Dana Press). We should also here mention a book that was in many ways ahead of its time, Robert Blank's Brain Policy (published in 1999 by Georgetown University Press). The scholarly literature on neuroethics has grown so quickly that one cannot easily list all of the worthwhile articles, and several journals are now soliciting neuroethics submissions for publication, including the American Journal of Bioethics – Neuroscience, BioSocieties, the Journal of Cognitive Neuroscience, and Neuroethics. The web now has many sites, blogs and portals offering information about neuroethics. A list can be found at the end of this entry.
Key issues

Neuroethics encompasses a wide range of issues, which can only be sampled here.[18] Some have close ties to traditional biomedical ethics, in that different versions of these issues can arise in connection with organ systems other than the brain. For example, how should incidental findings be handled when a presumed healthy research subject is scanned for neuroscience research and the scan reveals an abnormality? How safe are the drugs used to enhance normal brain function? These are neuroethical issues with clear precedents in traditional bioethics. They are important issues, and luckily we can call upon society's experience with the relevant precedents to help determine the best courses of action in the present cases. In contrast, many neuroethical issues are at least partly novel, and this accounts for some of the intellectual fascination of neuroethics. These relatively newer issues force us to think about the relation between mind and brain and its ethical implications.
Brain interventions

The ethics of neurocognitive enhancement, that is the use of drugs and other brain interventions to make normal people "better than well", is an example of a neuroethical issue with both familiar and novel aspects. On the one hand, we can be informed by previous bioethical work on physical enhancements such as doping for strength in sports and the use of human growth hormone for normal boys of short stature. On the other hand, there are also some arguably novel ethical issues that arise in connection with brain enhancement, because these enhancements affect how people think and feel, thus raising the relatively new issues of "cognitive liberty". The growing role of psychopharmacology in everyday life raises a number of ethical issues, for example the influence of drug marketing on our conceptions of mental health and normalcy, and the increasingly malleable sense of personal identity that results from what Peter D. Kramer called "cosmetic psychopharmacology".

Nonpharmacologic methods of altering brain function are currently enjoying a period of rapid development, with a resurgence of psychosurgery for the treatment of medication refractory mental illnesses and promising new therapies for neurological and psychiatric illnesses based on deep brain stimulation as well as relatively noninvasive transcranial stimulation methods. Research on brain-machine interfaces is primarily in a preclinical phase but promises to enable thought-based control of computers and robots by paralyzed patients. As the tragic history of frontal lobotomy reminds us, permanent alteration of the brain cannot be undertaken lightly. Although nonpharmacologic brain interventions are exclusively aimed at therapeutic goals, the US military sponsors research in this general area (and more specifically in the use of transcranial direct current stimulation) that is presumably aimed at enhancing the capabilities of soldiers.[19]
Brain imaging

In addition to the important issues of safety and incidental findings, mentioned above, some arise from the unprecedented and rapidly developing ability to correlate brain activation with psychological states and traits. One of the most widely discussed new applications of imaging is based on correlations between brain activity and intentional deception. Intentional deception can be thought of in the context of a lie detector. This means that scientists use brain imaging to look at certain parts of the brain during moments when a person is being deceptive. A number of different research groups have identified fMRI correlates of intentional deception in laboratory tasks, and despite the skepticism of many experts, the technique has already been commercialized. A more feasible application of brain imaging is "neuromarketing", whereby people's conscious or unconscious reaction to certain products can purportedly be measured.

Researchers are also finding brain imaging correlates of myriad psychological traits, including personality, intelligence, mental health vulnerabilities, attitudes toward particular ethnic groups, and predilection for violent crime. Unconscious racial attitudes may be manifest in brain activation. These capabilities of brain imaging, actual and potential, raise a number of ethical issues. The most obvious concern involves privacy. For example, employers, marketers, and the government all have a strong interest in knowing the abilities, personality, truthfulness and other mental contents of certain people. This raises the question of whether, when, and how to ensure the privacy of our own minds.

Another ethical problem is that brain scans are often viewed as more accurate and objective than in fact they are. Many layers of signal processing, statistical analysis and interpretation separate imaged brain activity from the psychological traits and states inferred from it. There is a danger that the public (including judges and juries, employers, insurers, etc.) will ignore these complexities and treat brain images as a kind of indisputable truth.

A related misconception is called neuro-realism: In its simplest form, this line of thought says that something is real because it can be measured with electronic equipment. A person who claims to have pain, or low libido, or unpleasant emotions is "really" sick if these symptoms are supported by a brain scan, and healthy or normal if correlates cannot be found in a brain scan.[20][21] The case of phantom limbs demonstrate the inadequacy of this approach.
Memory dampening

While complete memory erasure is still an element of science-fiction, certain neurological drugs have been proven to dampen the strength and emotional association of a memory. Propranolol, an FDA-approved drug, has been suggested to effectively dull the painful effects of traumatic memories if taken within 6 hours after the event occurs.[22] This has begun the discussion of ethical implications, assuming the technology for memory erasure will only improve. Originally, propranolol was reserved for hypertension patients. However, doctors are permitted to use the drug for off-label purposes—leading to the question of whether they actually should. There are numerous reasons for skepticism; for one, it may prevent us from coming to terms with traumatic experiences, it may tamper with our identities and lead us to an artificial sense of happiness, demean the genuineness of human life, and/or encourage some to forget memories they are morally obligated to keep. Whether or not it is ethical to fully or partially erase the memory of a patient, it is certainly becoming a more relevant topic as this technology improves in our society.[23]
Stem cell therapy

Most of the issues concerning uses of stem cells in the brain are the same as any of the bioethical or purely ethical questions you will find regarding the use and research of stem cells. The field of stem cell research is a very new field which poses many ethical questions concerning the allocation of stem cells as well as their possible uses. Since most stem cell research is still in its preliminary phase most of the neuroethical issues surrounding stem cells are the same as stem cell ethics in general.

More specifically the way that stem cell research has been involved in neuroscience is through the treatment of neurodegenerative diseases and brain tumors. In these cases scientists are using neural stem cells to regenerate tissue and to be used as carriers for gene therapy. In general, neuroethics revolves around a cost benefit approach to find techniques and technologies that are most beneficial to patients. There has been progress in certain fields that have been shown to be beneficial when using stem cells to treat certain neurodegenerative diseases such as Parkinson's disease.[24]

A study done in 2011 showed that induced pluripotent stem cells (iPSCs) can be used to aid in Parkinson's research and treatment. The cells can be used to study the progression of Parkinson's as well as used in regenerative treatment. Animal studies have shown that the use of iPSCs can improve motor skills and dopamine release of test subjects with Parkinson's. This study shows a positive outcome in the use of stem cells for neurological purposes.[25]

In another study done in 2011 used stem cells to treat cerebral palsy. This study, however, was not as successful as the Parkinson's treatment. In this case stem cells were used to treat animal models who had been injured in a way that mimicked CP. This brings up a neuroethical issue of animal models used in science. Since most of their "diseases" are inflicted and do not occur naturally, they can not always be reliable examples of how a person with the actual disease would respond to treatment. The stem cells used did survive implantation, but did not show significant nerve regeneration. However, studies are ongoing in this area.[26]

As discussed, stem cells are used to treat degenerative diseases. One form of a degenerative disease that can occur in the brain as well as throughout the body is an autoimmune disease. Autoimmune diseases cause the body to "attack" its own cells and therefore destroys those cells as well as whatever functional purpose those cells have or contribute to. One form of an autoimmune disease that affects the central nervous system is multiple sclerosis. In this disease the body attacks the glial cells that form myelin coats around the axons on neurons. This causes the nervous system to essentially "short circuit" and pass information very slowly. Stem cells therapy has been used to try to cure some of the damage caused by the body in MS. Hematopoietic stem cell transplantation has been used to try and cure MS patients by essentially "reprogramming" their immune system. The main risk encountered with this form of treatment is the possibility of rejection of the stem cells. If the hematopoietic stem cells can be harvested from the individual, risk of rejection is much lower. But, there can be the risk of those cells being programmed to induce MS. However, if the tissue is donated from another individual there is high risk of rejection leading to possibly fatal toxicity in the recipient's body. Considering that there are fairly good treatments for MS, the use of stem cells in this case may have a higher cost than the benefits they produce. However, as research continues perhaps stem cells will truly become a viable treatment for MS as well as other autoimmune diseases.[27]

These are just some examples of neurological diseases in which stem cell treatment has been researched. In general, the future looks promising for stem cell application in the field of neurology. However, possible complications lie in the overall ethics of stem cell use, possible recipient rejection, as well as over-proliferation of the cells causing possible brain tumors. Ongoing research will further contribute in the decision of whether stem cells should be used in the brain and whether their benefits truly outweigh their costs.

The primary ethical dilemma that is brought up in stem cell research is concerning the source of embryonic stem cells (hESCs). As the name states, hESCs come from embryos. To be more specific, they come from the inner cell mass of a blastophere, which is the beginning stage of an embryo. However, that mass of cells could have the potential to give rise to human life, and there in lies the problem. Often, this argument leads back to a similar moral debate held around abortion. The question is: when does a mass of cells gain personhood and autonomy?[28] Some individuals believe that an embryo is in fact a person at the moment of conception and that using an embryo for anything other than creating a baby would essentially be killing a baby. On the other end of the spectrum, people argue that the small ball of cells at that point only has the potential to become a fetus, and that potentiality, even in natural conception, is far from guaranteed. According to a study done by developmental biologists, between 75–80% of embryos created through intercourse are naturally lost before they can become fetuses.[29] This debate is not one that has a right or wrong answer, nor can it be clearly settled. Much of the ethical dilemma surrounding hESCs relies on individual beliefs about life and the potential for scientific advancement versus creating new human life.
Disorders of consciousness

Patients in coma, vegetative, or minimally conscious state pose ethical challenges. The patients are unable to respond, therefore the assessment of their needs can only be approached by adopting a third person perspective. They are unable to communicate their pain levels, quality of life, or end of life preferences. Neuroscience and brain imaging have allowed us to explore the brain activity of these patients more thoroughly. Recent findings from studies using functional magnetic resonance imaging have changed the way we view vegetative patients. The images have shown that aspects emotional processing, language comprehension and even conscious awareness might be retained in patients whose behavior suggests a vegetative state. If this is the case, it is unethical to allow a third party to dictate the life and future of the patient.[30] For example, defining death is an issue that comes with patients with severe traumatic brain injuries. The decision to withdraw life-sustaining care from these patients can be based on uncertain assessments about the individual's conscious awareness. Case reports have shown that these patients in a persistent vegetative state can recover unexpectedly. This raises the ethical question about the premature termination of care by physicians. The hope is that one day, neuroimaging technologies can help us to define these different states of consciousness and enable us to communicate with patients in vegetative states in a way that was never before possible.[31][32] The clinical translation of these advanced technologies is of vital importance for the medical management of these challenging patients. In this situation, neuroscience has both revealed ethical issues and possible solutions.[33]
Pharmacological enhancement
Main article: Neuroenhancement

Cosmetic neuro-pharmacology, the use of drugs to improve cognition in normal healthy individuals, is highly controversial. Some case reports with the antidepressant Prozac indicated that patients seemed "better than well", and authors hypothesized that this effect might be observed in individuals not afflicted with psychiatric disorders. Following these case reports much controversy arose over the veracity and ethics of the cosmetic use of these antidepressants. Opponents of cosmetic pharmacology believe that such drug usage is unethical and that the concept of cosmetic pharmacology is a manifestation of naive consumerism. Proponents, such as philosopher Arthur Caplan, state that it is an individual's (rather than government's, or physician's) right to determine whether to use a drug for cosmetic purposes.[34] Anjan Chatterjee, a neurologist at the University of Pennsylvania, has argued that western medicine stands on the brink of a neuro-enhancement revolution in which people will be able to improve their memory and attention through pharmacological means. Jacob Appel, a Brown University bioethicist, has raised concerns about the possibility of employers mandating such enhancement for their workers.[35][36] The ethical concerns regarding pharmacological enhancement are not limited to Europe and North America, indeed, there is increasing attention given to cultural and regulatory contexts for this phenomenon, around the globe.[37]
Politics of neuromarketing
See also: Neuromarketing

The politics of neuromarketing is this idea of using advertisements to convince the mind of a voter to vote for a certain party. This has already been happening within the elections throughout the years. In the 2006 reelection of Governor Arnold Schwarzenegger, he was double digits off in the voting in comparison to his Democratic opponent. However, Schwarzenegger's theme in this campaign was whether or not the voters would want to continue Schwarzenegger's reforms or go back to the days of the recalled governor, Gray Davis. In normal marketing, voters would use "detail, numbers, facts and figures to prove we were better off under the new governor".[38] However, with neuromarketing, voters followed powerful advertisement visuals and used these visuals to convince themselves that Schwarzenegger was the better candidate. Now, with political neuromarketing, there exists a lot of controversy. The ethics behind political neuromarketing are debatable. Some argue that political neuromarketing will cause voters to make rash decisions while others argue that these messages are beneficial because they depict what the politicians can do. However, control over political decisions could make voters not see the reality of things. Voters may not look into the details of the reforms, personality, and morality each person brings to their political campaign and may be swayed by how powerful the advertisements seem to be. However, there are also people that may disagree with this idea. Darryl Howard, "a consultant to two Republican winners on November 2, says he crafted neuromarketing-based messages for TV, direct mail and speeches for Senate, Congressional and Gubernatorial clients in 2010". He says that these advertisements that were presented, show honesty and continues to say how he and other politicians decide which advertisements are the most effective.[39]
Neurological treatments

Neuroscience has led to a deeper understanding of the chemical imbalances present in a disordered brain. In turn, this has resulted in the creation of new treatments and medications to treat these disorders. When these new treatments are first being tested, the experiments prompt ethical questions. First, because the treatment is affecting the brain, the side effects can be unique and sometimes severe. A special kind of side effect that many subjects have claimed to experience in neurological treatment tests is changes in "personal identity". Although this is a difficult ethical dilemma because there are no clear and undisputed definitions of personality, self, and identity, neurological treatments can result in patients losing parts of "themselves" such as memories or moods. Yet another ethical dispute in neurological treatment research is the choice of patients. From a perspective of justice, priority should be given to those who are most seriously impaired and who will benefit most from the intervention. However, in a test group, scientists must select patients to secure a favorable risk-benefit ratio. Setting priority becomes more difficult when a patient's chance to benefit and the seriousness of their impairment do not go together. For example, many times an older patient will be excluded despite the seriousness of their disorder simply because they are not as strong or as likely to benefit from the treatment.[40] The main ethical issue at the heart of neurological treatment research on human subjects is promoting high-quality scientific research in the interest of future patients, while at the same time respecting and guarding the rights and interests of the research subjects. This is particularly difficult in the field of neurology because damage to the brain is often permanent and will change a patient's way of life forever.
Neuroscience and free will
See also: Neuroscience of free will

Neuroethics also encompasses the ethical issues raised by neuroscience as it affects our understanding of the world and of ourselves in the world. For example, if everything we do is physically caused by our brains, which are in turn a product of our genes and our life experiences, how can we be held responsible for our actions? A crime in the United States requires a "guilty act" and a "guilty mind". As neuropsychiatry evaluations have become more commonly used in the criminal justice system and neuroimaging technologies have given us a more direct way of viewing brain injuries, scholars have cautioned that this could lead to the inability to hold anyone criminally responsible for their actions. In this way, neuroimaging evidence could suggest that there is no free will and each action a person makes is simply the product of past actions and biological impulses that are out of our control.[41] The question of whether and how personal autonomy is compatible with neuroscience ethics and the responsibility of neuroscientists to society and the state is a central one for neuroethics.[33] However, there is some controversy over whether autonomy entails the concept of 'free will' or is a 'moral-political' principle separate from metaphysical quandaries.[42]

In late 2013 U.S. President Barack Obama made recommendations to the Presidential Commission for the Study of Bioethical Issues as part of his $100 million Brain Research through Advancing Innovative Neurotechnologies (BRAIN) Initiative. This Spring discussion resumed in a recent interview and article sponsored by Agence France-Presse (AFP): "It is absolutely critical... to integrate ethics from the get-go into neuroscience research," and not "for the first time after something has gone wrong", said Amy Gutmann, Bioethics Commission Chair."[43] But no consensus has been reached. Miguel Faria, a Professor of Neurosurgery and an Associate Editor in Chief of Surgical Neurology International, who was not involved in the Commission's work said, "any ethics approach must be based upon respect for the individual, as doctors pledge according to the Hippocratic Oath which includes vows to be humble, respect privacy and doing no harm; and pursuing a path based on population-based ethics is just as dangerous as having no medical ethics at all".[44] Why the danger of population-based bioethics?[43] Faria asserts, "it is centered on utilitarianism, monetary considerations, and the fiscal and political interests of the state, rather than committed to placing the interest of the individual patient or experimental subject above all other considerations".[45] For her part, Gutmann believes the next step is "to examine more deeply the ethical implications of neuroscience research and its effects on society".[43]
Academic journals

    Neuroethics

Main Editor: Neil Levy, CAPPE, Melbourne; University of Oxford

Neuroethics is an international peer-reviewed journal dedicated to academic articles on the ethical, legal, political, social and philosophical issues provoked by research in the contemporary sciences of the mind, especially, but not only, neuroscience, psychiatry and psychology. The journal publishes high-quality reflections on questions raised by the sciences of the mind, and on the ways in which the sciences of the mind illuminate longstanding debates in ethics.

    American Journal of Bioethics–Neuroscience

Main Editor: Paul Root Wolpe, Emory University

AJOB Neuroscience, the official journal of the International Neuroethics Society, is devoted to covering critical topics in the emerging field of neuroethics.[46] The journal is a new avenue in bioethics and strives to present a forum in which to: foster international discourse on topics in neuroethics, provide a platform for debating current issues in neuroethics, and enable the incubation of new emerging priorities in neuroethics. AJOB-Neuroscience launched in 2007 as a section of the American Journal of Bioethics and became an independent journal in 2010, publishing four issues a year.[47]
See also

    Bodily integrity
    Neurolaw
    Neurosecurity
    Moral psychology

Notes

Roskies A (2002). "Neuroethics for the New Millenium". Neuron. 35 (1): 21–23. doi:10.1016/s0896-6273(02)00763-8. PMID 12123605. S2CID 3601545.
"Neuroethics". Ethics Unwrapped. McCombs School of Business.
Farah Martha J., Neuroethics: An Introduction with Readings, 2010
Safire, W. Visions for a New Field of "Neuroethics" Neuroethics Mapping the Field Conference Proceedings. May 13–14, 2002. San Francisco, California
Walker AE, editor. A history of neurological surgery. New York: Hafner Publishing; 1967. pp. 1–50.
Faria, Miguel A (2013). "Violence, mental illness, and the brain - A brief history of psychosurgery: Part 1 - From trephination to lobotomy". Surg Neurol Int. 4: 49. doi:10.4103/2152-7806.110146. PMC 3640229. PMID 23646259. Retrieved 19 May 2014.
Robison, RA; Taghva A; Liu CY; Apuzzo ML (2012). "Surgery of the mind, mood and conscious state: an idea in evolution". World Neurosurg. 77 (5–6): 662–686. doi:10.1016/j.wneu.2012.03.005. PMID 22446082.
Faria, Miguel A (2013). "Violence, mental illness, and the brain - A brief history of psychosurgery: Part 2 - From the limbic system and cingulotomy to deep brain stimulation". Surg Neurol Int. 4: 75. doi:10.4103/2152-7806.112825. PMC 3683171. PMID 23776761.
Delgado, Jose (1986). Physical Control of the Mind: Toward a Psychocivilized Society. New York: Harper and Row.
Faria, Miguel A (2013). "Violence, mental illness, and the brain - A brief history of psychosurgery: Part 3 - From deep brain stimulation to amygdalotomy for violent behavior, seizures, and pathological aggression in humans". Surg Neurol Int. 4: 91. doi:10.4103/2152-7806.115162. PMC 3740620. PMID 23956934.
Farah Martha J (2002). "Emerging ethical issues in neuroscience". Nature Neuroscience. 5 (11): 1123–129. doi:10.1038/nn1102-1123. PMID 12404006. S2CID 2522866.
"Neurogaming: What's Neuroscience and Ethics Got To Do With It?". The Center for Ethics in Science and Technology. Archived from the original on 9 August 2014. Retrieved 28 September 2014.
Buniak, Liana; Darragh, Martina; Giordano, James (20 April 2014). "A four-part working bibliography of neuroethics: part 1: overview and reviews – defining and describing the field and its practices". Philosophy, Ethics, and Humanities in Medicine. 9 (1): 9. doi:10.1186/1747-5341-9-9. PMC 4047768. PMID 24885037.
Rommelfanger, Karen S.; Jeong, Sung-Jin; Ema, Arisa; Fukushi, Tamami; Kasai, Kiyoto; Ramos, Khara M.; Salles, Arleen; Singh, Ilina; Amadio, Jordan; Bi, Guo-Qiang; Boshears, Paul Frederick; Carter, Adrian; Devor, Anna; Doya, Kenji; Garden, Hermann; Illes, Judy; Johnson, L. Syd M.; Jorgenson, Lyric; Jun, Bang-Ook; Lee, Inyoung; Michie, Patricia; Miyakawa, Tsuyoshi; Nakazawa, Eisuke; Sakura, Osamu; Sarkissian, Hagop; Sullivan, Laura Specker; Uh, Stepheni; Winickoff, David; Wolpe, Paul Root; Wu, Kevin Chien-Chang; Yasamura, Akira; Zheng, Jialin C. (October 2018). "Neuroethics Questions to Guide Ethical Research in the International Brain Initiatives". Neuron. 100 (1): 19–36. doi:10.1016/j.neuron.2018.09.021. PMID 30308169. S2CID 207222852.
Greely, Henry T.; Grady, Christine; Ramos, Khara M.; Chiong, Winston; Eberwine, James; Farahany, Nita A.; Johnson, L. Syd M; Hyman, Bradley T.; Hyman, Steven E.; Rommelfanger, Karen S.; Serrano, Elba E. (12 December 2018). "Neuroethics Guiding Principles for the NIH BRAIN Initiative". The Journal of Neuroscience. 38 (50): 10586–10588. doi:10.1523/JNEUROSCI.2077-18.2018. PMC 6297371. PMID 30541767.
https://www.oecd.org/science/recommendation-on-responsible-innovation-in-neurotechnology.htm
https://standards.ieee.org/content/dam/ieee-standards/standards/web/documents/presentations/ieee-neurotech-for-bmi-standards-roadmap.pdf
Leefmann, Jon; Levallois, Clement; Hildt, Elisabeth (1 July 2016). "Neuroethics 1995–2012. A Bibliometric Analysis of the Guiding Themes of an Emerging Research Field". Frontiers in Human Neuroscience. 10: 336. doi:10.3389/fnhum.2016.00336. PMC 4929847. PMID 27445772.
Dubljevic, V. (1 August 2015). "Neurostimulation Devices for Cognitive Enhancement: Toward a Comprehensive Regulatory Framework". Neuroethics. 8 (2): 115–126. doi:10.1007/s12152-014-9225-0. S2CID 143995665.
Gordijn Bert; Giordano James J. (2010). Scientific and Philosophical Perspectives in Neuroethics. Cambridge, UK: Cambridge University Press. pp. 256–262. ISBN 978-0-521-70303-1.
Goldacre, Ben (30 October 2010). "Lost your libido? Let's try a little neuro-realism, madam: A study of women's libido raises questions about why brain imaging is used to make mental states 'real' for the public". The Guardian.
Elsey, James; Kindt, Merel (June 2018). "Can criminals use propranolol to erase crime-related memories? A response to McGorrery (2017)". Alternative Law Journal. 43 (2): 136–138. doi:10.1177/1037969X18765204. S2CID 149493738.
Farah, Martha (2010). Neuroethics: an introduction withreadings. Cambridge, Mass.: MIT Press. pp. 97–8. ISBN 9780262062695.
Vaccarino, Flora M.; Stevens, Hanna E.; Kocabas, Arif; Palejev, Dean; Szekely, Anna; Grigorenko, Elena L.; Weissman, Sherman (June 2011). "Induced pluripotent stem cells: A new tool to confront the challenge of neuropsychiatric disorders". Neuropharmacology. 60 (7–8): 1355–1363. doi:10.1016/j.neuropharm.2011.02.021. PMC 3087494. PMID 21371482.
Chen, L W; F Kuang; L C Wei; Y X Ding; K K L Yung; Y S Chan (Jun 2011). "Potential application of induced pluripotent stem cells in cell replacement therapy for Parkinson's disease". CNS & Neurological Disorders Drug Targets. 10 (4): 449–458. doi:10.2174/187152711795563994. PMID 21495962.
Bell, Emily; Isabelle Chouinard; Michael Shevell; Eric Racine (2011). "Responding to requests of families for unproven interventions in neurodevelopmental disorders: hyperbaric oxygen "treatment" and stem cell "therapy" in cerebral palsy". Developmental Disabilities Research Reviews. 17 (1): 19–26. doi:10.1002/ddrr.134. PMID 22447751.
Silani, Vincenzo; Lidia Cova (15 February 2008). "Stem cell transplantation in Multiple Sclerosis: Safety and Ethics". Journal of the Neurological Sciences. 265 (1–2): 116–121. doi:10.1016/j.jns.2007.06.010. PMID 17619025. S2CID 2247150.
Barker, Roger A; Inez de Beaufort (November 2013). "Scientific and ethical issues related to stem cell research and interventions in neurodegenerative disorders of the brain". Progress in Neurobiology. 110: 63–73. doi:10.1016/j.pneurobio.2013.04.003. PMID 23665410. S2CID 11837129.
Hyun, Insoo (4 January 2010). "The bioethics of stem cell research and therapy". The Journal of Clinical Investigation. 120 (1): 71–75. doi:10.1172/jci40435. PMC 2798696. PMID 20051638.
Bruno, Marie-Aurélie; Laureys, Steven; Demertzi, Athena (2013). "Coma and disorders of consciousness". Ethical and Legal Issues in Neurology. Handbook of Clinical Neurology. 118. pp. 205–213. doi:10.1016/B978-0-444-53501-6.00017-2. ISBN 978-0-444-53501-6. PMID 24182379.
Rodrigue, Catherine; Riopelle, Richard J.; Bernat, James L.; Racine, Eric (April 2013). "Perspectives and Experience of Healthcare Professionals on Diagnosis, Prognosis, and End-of-Life Decision Making in Patients with Disorders of Consciousness". Neuroethics. 6 (1): 25–36. doi:10.1007/s12152-011-9142-4. S2CID 144570968.
Fins, Joseph J. (2011). "Neuroethics, Neuroimaging, and Disorders of Consciousness: Promise or Peril?". Transactions of the American Clinical and Climatological Association. 122: 336–346. PMC 3116331. PMID 21686236.
Aggarwal, Neil Krishan; Ford, Elizabeth (November 2013). "The Neuroethics and Neurolaw of Brain Injury: Neuroethics and neurolaw of brain Injury". Behavioral Sciences & the Law. 31 (6): 789–802. doi:10.1002/bsl.2086. PMID 24123245.
Caplan, Arthur L. (September 2003). "Is Better Best?". Scientific American. 289 (3): 104–105. Bibcode:2003SciAm.289c.104C. doi:10.1038/scientificamerican0903-104. PMID 12951834.
Appel, J M (1 August 2008). "When the boss turns pusher: a proposal for employee protections in the age of cosmetic neurology". Journal of Medical Ethics. 34 (8): 616–618. doi:10.1136/jme.2007.022723. JSTOR 27720154. PMID 18667652. S2CID 959783.
Jason Kirby. Going to Work on Smart Drugs. Maclean's. October 1, 2008. "Macleans.ca - Canada's national current affairs and news magazine since 1905". Archived from the original on 2012-02-22. Retrieved 2008-12-17.
Jotterand, Fabrice; Dubljevic, Veljko, eds. (2016). "Cognitive Enhancement". doi:10.1093/acprof:oso/9780199396818.001.0001. ISBN 978-0-19-939681-8.
"The power of neuromarketing".
"Upper Playground - darryl-howard". news.upperplayground.com.
Mohamed, Ahmed D.; Barbara J. Sahakian (2012). "The ethics of elective psychopharmacology". The International Journal of Neuropsychopharmacology. 15 (4): 559–571. doi:10.1017/s146114571100037x. PMC 3325502. PMID 21396152.
Henry, Stuart; Plemmons, Dena (September 2012). "Neuroscience, Neuropolitics and Neuroethics: The Complex Case of Crime, Deception and fMRI". Science and Engineering Ethics. 18 (3): 573–591. doi:10.1007/s11948-012-9393-4. PMID 23054671. S2CID 673995.
Dubljević, Veljko (October 2013). "Autonomy in Neuroethics: Political and Not Metaphysical". AJOB Neuroscience. 4 (4): 44–51. doi:10.1080/21507740.2013.819390. S2CID 144100970.
Sheridan, Kerry. "U.S. Experts urge focus on ethics in brain research". Yahoo News. May 14, 2014, Agence France Presse. Retrieved 18 May 2014.
Faria, Miguel A; Sheridan, Kerry. "Medical Ethics of Hippocrates or Population-Based Bioethics — A Symposium". Hacienda Publishing. Retrieved 18 May 2014.
Faria, MA (2014). "The road being paved to neuroethics: A path leading to bioethics or to neuroscience medical ethics?". Surg Neurol Int. 5 (October 7, 2014): 146. doi:10.4103/2152-7806.142323. PMC 4199184. PMID 25324975.
Illes, Judy (2009). "Neurologisms". The American Journal of Bioethics. 9 (9): 1. doi:10.1080/15265160903192557. PMID 19998176. S2CID 219641790.

    Conrad, E. C.; De Vries, R. (2012). "Interpreting the short history of neuroethics". In Pickersgill, M.; Van Keulen, I. (eds.). Sociological Reflections on the Neurosciences. Bingley, U.K.: Emerald. ISBN 978-1780526324.

References

    Gazzaniga, M. S. (2005). The Ethical Brain. The Dana Press.
    Illes, J (October 2003). "Neuroethics in a new era of neuroimaging". American Journal of Neuroradiology. 24 (9): 1739–1741. PMID 14561594.
    Rees, D. & Rose, S. (2004). New brain sciences: perils and prospects. Cambridge University Press.
    Glannon, W. (2006).Bioethics and the Brain. Oxford University Press USA
    Racine E.; Bar-Ilan O; Illes J. (2005). "fMRI in the public eye". Nature Reviews Neuroscience. 6 (2): 159–64. doi:10.1038/nrn1609. PMC 1524852. PMID 15685221.
    Farah Martha J (2005). "Neuroethics: the practical and the philosophical". Trends in Cognitive Sciences. 9 (1): 34–40. CiteSeerX 10.1.1.728.9513. doi:10.1016/j.tics.2004.12.001. PMID 15639439. S2CID 8635694.
    Judy Illes (2002). "Brain and Cognition: Ethical Challenges in Advanced Neuroimaging". Brain and Cognition. 50 (3): 341–344. doi:10.1016/s0278-2626(02)00522-5. PMID 12480481. S2CID 16672004.
    Riis P (2003). "Neuroethics". European Journal of Neurology. 10: 218–223. doi:10.1046/j.1468-1331.10.s1.12.x. S2CID 221736074.
    "Open your mind". The Economist. 23 May 2002.
    Racine E. (2010). Pragmatic Neuroethics. MIT Press, Cambridge MA.
    Pontius A. A. (1973). "Neuro-ethics of 'walking' in the newborn". Percept mot Skills. 37 (1): 235–245. doi:10.2466/pms.1973.37.1.235. PMID 4728008. S2CID 42403122.
    Pontius A. A. (1993). "Neuroethics vs neurophysiologically and neuropsychologically uninformed influences in child-rearing, education, emerging hunter-gatherers, and artificial intelligence models of the brain". Psychol Rep. 72 (2): 451–458. doi:10.2466/pr0.1993.72.2.451. PMID 8488227. S2CID 33394084.
    Schermer, Maartje (2011). "Ethical issues in deep brain stimulation". Frontiers in Integrative Neuroscience. 5: 17. doi:10.3389/fnint.2011.00017. PMC 3096836. PMID 21625629.
    Schlindwein-Zanini, Rachel; Junior, Bruno Schlemper (1 May 2013). "Neuroética e neurociência". Contextos Clínicos. 6 (1): 58–61. doi:10.4013/ctc.2013.61.07.
    Bruno, Marie-Aurélie; Laureys, Steven; Demertzi, Athena (2013). "Coma and disorders of consciousness". Ethical and Legal Issues in Neurology. Handbook of Clinical Neurology. 118. pp. 205–213. doi:10.1016/B978-0-444-53501-6.00017-2. ISBN 978-0-444-53501-6. PMID 24182379.
    Cranford RE (1989). "The neurologist as ethics consultant and as a member of the institutional ethics committee". Neurol Clin. 7 (4): 697–713. doi:10.1016/S0733-8619(18)30384-0. PMID 2586395.
    Bongso, Ariff; Fong, Chui-Yee; Gauthaman, Kalamegam (15 December 2008). "Taking stem cells to the clinic: Major challenges". Journal of Cellular Biochemistry. 105 (6): 1352–1360. doi:10.1002/jcb.21957. PMID 18980213. S2CID 22774483.
    Vaccarino, Flora M.; Stevens, Hanna E.; Kocabas, Arif; Palejev, Dean; Szekely, Anna; Grigorenko, Elena L.; Weissman, Sherman (June 2011). "Induced pluripotent stem cells: A new tool to confront the challenge of neuropsychiatric disorders". Neuropharmacology. 60 (7–8): 1355–1363. doi:10.1016/j.neuropharm.2011.02.021. PMC 3087494. PMID 21371482.
    Bell, Emily; Wallace, Tessa; Chouinard, Isabelle; Shevell, Michael; Racine, Eric (2011). "Responding to requests of families for unproven interventions in neurodevelopmental disorders: Hyperbaric oxygen 'treatment' and stem cell 'therapy' in cerebral palsy". Developmental Disabilities Research Reviews. 17 (1): 19–26. doi:10.1002/ddrr.134. PMID 22447751.
    Chen LW, Kuang F, Wei LC, Ding YX, Yung KK, Chan YS (2011). "Potential application of induced pluripotent stem cells in cell replacement therapy for Parkinson's disease". CNS & Neurological Disorders Drug Targets. 10 (4): 449–458. doi:10.2174/187152711795563994. PMID 21495962.
    Silani Vincenzo; Cova Lidia (2008). "Stem cell transplantation in Multiple Sclerosis: Safety and Ethics". Journal of the Neurological Sciences. 265 (1–2): 116–121. doi:10.1016/j.jns.2007.06.010. PMID 17619025. S2CID 2247150.
    Aggarwal, Neil Krishan; Ford, Elizabeth (November 2013). "The Neuroethics and Neurolaw of Brain Injury: Neuroethics and neurolaw of brain Injury". Behavioral Sciences & the Law. 31 (6): 789–802. doi:10.1002/bsl.2086. PMID 24123245.
    Rodrigue, Catherine; Riopelle, Richard J.; Bernat, James L.; Racine, Eric (April 2013). "Perspectives and Experience of Healthcare Professionals on Diagnosis, Prognosis, and End-of-Life Decision Making in Patients with Disorders of Consciousness". Neuroethics. 6 (1): 25–36. doi:10.1007/s12152-011-9142-4. S2CID 144570968.
    Neuroscience, Neuropolitics and Neuroethics: The Complex Case of Crime, Deception and fMRI - Springer, n.d.
    Anderson, James A.; Eijkholt, Marleen; Illes, Judy (2013). "Neuroethical issues in clinical neuroscience research". Ethical and Legal Issues in Neurology. Handbook of Clinical Neurology. 118. pp. 335–343. doi:10.1016/b978-0-444-53501-6.00028-7. ISBN 978-0-444-53501-6. PMID 24182390.
    Fins, Joseph J. (2011). "Neuroethics, Neuroimaging, and Disorders of Consciousness: Promise or Peril?". Transactions of the American Clinical and Climatological Association. 122: 336–346. PMC 3116331. PMID 21686236.
    Daadi, Marcel M; Steinberg, Gary K (March 2009). "Manufacturing neurons from human embryonic stem cells: biological and regulatory aspects to develop a safe cellular product for stroke cell therapy". Regenerative Medicine. 4 (2): 251–263. doi:10.2217/17460751.4.2.251. PMC 4337782. PMID 19317644.
    Barker Roger A; de Beaufort Inez (2013). "Scientific and ethical issues related to stem cell research and interventions in neurodegenerative disorders of the brain". Progress in Neurobiology. 110: 63–73. doi:10.1016/j.pneurobio.2013.04.003. PMID 23665410. S2CID 11837129.
    Hyun Insoo (2010). "The bioethics of stem cell research and therapy". The Journal of Clinical Investigation. 120 (1): 71–75. doi:10.1172/jci40435. PMC 2798696. PMID 20051638.
    Leefmann, Jon; Levallois, Clement; Hildt, Elisabeth (1 July 2016). "Neuroethics 1995–2012. A Bibliometric Analysis of the Guiding Themes of an Emerging Research Field". Frontiers in Human Neuroscience. 10: 336. doi:10.3389/fnhum.2016.00336. PMC 4929847. PMID 27445772.
    Amaya, José Manuel Giménez; Sánchez-Migallón, Sergio (2010). "Anthropological and Ethical Dilemmas in the recent Development of Neuroscience". Imago Hominis. 17 (3): 179–186.

External links

    "NeuroPolitics", an entry on NeuroWiki
    Neuroethics Academic journal, editor: Neil Levy.
    Neuroethics.upenn.edu
    Public access journal articles on neuroethics from University of Pennsylvania
    The Center for Cognitive Neuroscience, University of Pennsylvania
    Neuroscience, Identity and Society Seminar Series UK Further links, research papers and news can be found on the background pages.
    Neuroethics & Law Blog
    BrainEthics Blog This blog is not active any more, but offers a good bibliography up to 2008.
    Center for Neuroscience & Society, University of Pennsylvania
    Capital Consortium for Neuroscience: Ethical, Legal and Social Issues
    Neuroscience: Ethical, Legal and Social Issues - Third Annual Conference
    Neuroethics Research Unit, website of the Neuroethics Research Unit in Montreal, Canada with further links and relevant publications
    National Core for Neuroethics at the University of British Columbia publications page
    The American Journal of Bioethics
    The American Society for Bioethics and Humanities
    Cognitive Neuroscience Society
    International Neuroethics Society
    Bioethics Resources from the NIH
    Virtual Mentor Ethics Journal of the American Medical Association Theme Issue: Ethical

Issues in Neuroscience

    Neuroscience for Kids: Neuroethics
    The President's Council on Bioethics
    Johns Hopkins Neuroethics
    The Neuroethics Blog

Programs

    Wellcome Centre for Neuroethics, University of Oxford
    Neuroethics Imaging Group, Stanford Center for Biomedical Ethics
    Neuroethics Research Unit
    National Core for Neuroethics at the University of British Columbia
    Neuroethics Studies Program at Georgetown University Medical Center
    Johns Hopkins PEBS Program
    Emory University Neuroethics Program

    vte

Ethics

    vte

Neuroscience

    vte

Emerging technologies
Categories:

    BioethicsEthics of science and technologyNeuroscience

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Català
    Čeština
    Deutsch
    Español
    Français
    Italiano
    日本語
    Polski
    Русский

Edit links

    This page was last edited on 10 January 2021, at 19:53 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki







Two buttons at the top create new tiddlers that link to the tiddler from which they were created.

*<<icon {{$:/core/images/new-button}} "">> in the tiddler viewtoolbar creates a simple tiddler that contains a link to the present tiddler.
*<<icon {{$:/core/images/new-journal-button}} "">> does the same, but the tiddler title is a date and time stamp.

<span class="bluebox">

''Activity:''

Click the buttons in any tiddler to see the tiddlers they create. Save changes. Use the searchbar to search for [[Welcome to Stroll]]. Use that link to return to the tutorial.

</span>
Night-Watchman State

Origin

As a term, night-watchman state (German: Nachtwächterstaat) was coined by German socialist Ferdinand Lassalle in an 1862 speech in Berlin. He criticized the bourgeois liberal limited government state, comparing it to a night-watchman whose sole duty was preventing theft. The phrase quickly caught on as a description of capitalist government, even as liberalism began to mean a more involved state, or a state with a larger sphere of responsibility.[11]

Ludwig von Mises later opined that Lassalle tried to make limited government look ridiculous, but that it was no more ridiculous than governments that concerned themselves with "the preparation of sauerkraut, with the manufacture of trouser buttons, or with the publication of newspapers".[12]

Proponents of the night-watchman state are minarchists, a portmanteau of minimum and -archy. Arche (/ˈɑːrki/; Ancient Greek: ἀρχή) is a Greek word which came to mean "first place, power", "method of government", "empire, realm", "authorities" (in plural: ἀρχαί), or "command".[13] The term minarchist was coined by Samuel Edward Konkin III in 1980.[14]









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






! https://www.origin-gi.com/




! https://www.origin-gi.com/about-us/background.html
! oriGIn presentation
! 
! The Organization for an International Geographical Indications Network - oriGIn -

! TAKE THIS SHORT COURSE https://learning.intracen.org/course/info.php?id=234
COURSE DESCRIPTION

This course explores the value and benefits of establishing Geographical Indications (GIs) for local products with unique characteristics. It presents the main elements involved in GI recognition and introduces participants to the different legal options available to protect GIs. Finally, it touches upon the resources and investments needed to establish a GI, and showcases the roadmap and actions necessary to complete the GI recognition process.

Participants who meet the course requirements will receive a Certificate of Completion issued in electronic format.

	
Course format
Online/Internet-based
	
Language
English ‎(en)‎
	
Time required
4 hours over 2 weeks
	
Next start date
31, May 2021
	
Course access
Open for enrollments
	
Course fee
Free of charge
!! 
!! is a non-for-profit Non-Governmental Organization (NGO) based in Geneva. Established in 2003, oriGIn is today a truly global alliance of Geographical Indications (GIs) from a large variety of sectors, representing some 500 associations of producers and other GI-related institutions  from 40 countries.  [img [origingi.png]]

oriGIn’s goals are to:

        Campaign for the effective legal protection and enforcement of GIs at the national, regional and international level, through campaigns aimed at decision-makers, the media and the public at large;
        Promote GIs as a sustainable development tool for producers and communities.
!!! 
!!! https://www.origin-gi.com/activities/cooperation-projects.html

https://www.origin-gi.com/partnerships/international-trade-center-itc.html


https://learning.intracen.org/course/info.php?id=234


Skip to main content
Home
 Home
Help
Contact Us

    Log in
    Create new account

Page path

    Home Courses Adding Value to the Origin of Products Through Geo... Summary

Adding Value to the Origin of Products Through Geographical Indications (GIs)
Adding Value to the Origin of Products Through Geographical Indications (GIs)
COURSE DESCRIPTION

This course explores the value and benefits of establishing Geographical Indications (GIs) for local products with unique characteristics. It presents the main elements involved in GI recognition and introduces participants to the different legal options available to protect GIs. Finally, it touches upon the resources and investments needed to establish a GI, and showcases the roadmap and actions necessary to complete the GI recognition process. 

NOTE: We recommend using the latest version of the Chrome or Safari browsers to ensure an optimal experience viewing the lectures.

After completing this course, participants will be able to:

    Understand the value and benefits for producers and consumers of establishing a GI for a product;
    Identify and evaluate the conditions and resources required to establish a GI; and
    Plan a roadmap towards establishing a GI.



COURSE CERTIFICATION

Participants who meet the course requirements will receive a Certificate of Completion issued in electronic format.
COURSE STRUCTURE
Lecture 1: Opportunities in Capturing the Value of Origin
Lecture 2: Conditions and Resources to Use GIs for Development
Lecture 3: Establishing a Roadmap for GI Recognition
Case Study Exercise
Sessions
	
Course format
Online/Internet-based
	
Language
English ‎(en)‎
	
Time required
4 hours over 2 weeks
	
Next start date
31, May 2021
	
Course access
Open for enrollments
	
Course fee
Free of charge
Tutor information
	
IDA PUZONE
oriGIn

Back to top

    About
    Partners
    Terms
    Copyright Info
    Participant reviews
    Glossary Of Terms

unctad link wto link
https://learning.intracen.org/course/info.php?id=234




Watch our video oriGIn – Unique and United

See the presentation oriGIn the Global Alliance of GIs  

Join oriGIn

Establish an oriGIn antenna in your country 

oriGIn Statutes

Internal Regulation




    English (UK)	Français (FR)	Español (España)	

   
Sign up to receive our updates

    Home
    About Us
    Activities
    Medias
    Partnerships
    Your GI Kit
    Contact us

Key-Concepts of GIs
Geographical Indications 
! 
! https://www.origin-gi.com/your-gi-kit/key-concepts-of-gis.html

Geographical Indications are distinctive signs that associate products of quality and reputation with their place or area of production and thereby help identify and distinguish such products on the market.

There are some well-known examples of geographical and traditional names, which are associated throughout the world with the products of a certain reputation and quality and high value commercial denominations. That is the case of Tequila licor (Mexico), Bordeaux wines (France), Manchego cheese (Spain), Habanos tobacco (Cuba), Antigua coffee (Guatemala), Long-Ging tea (China), Chuao cacao (Venezuela), Parma ham (Italy), Argan Oil (Morocco), Shea butter (Burkina Faso), Guinean pineapples, White Honey (Cameroon), Mananara Vanilla (Madagascar), but also Bukhara (carpets), Solingen Cutlery (Germany), Kilim carpets (Turkey), Thai silk, among others.
According to article 22.1 of TRIPS, GIs are “[…] indications which identify a good as originating in the territory of a Member, or a region or locality in that territory, where a given quality, reputation or other characteristic of the good is essentially attributable to its geographical origin” [1]. The GI definition provided by the TRIPS is quite broad, allowing names identifying agricultural and foodstuff products, handicrafts as well as wines and spirits to qualify for protection. The fundamental condition is that the quality, the reputation or other characteristics of the product at issue are linked to its geographical origin, by virtue of climate, know-how or another kind of knowledge deeply rooted in that area. “Colombian coffee” for instance is a GI as the name of the country refers to the origin and quality of the product. The mountains where coffee trees grow, the selection of the coffee variety and the harvest and transformation process are the elements conferring the products its unique characteristics[2].

 
Appellations of origin 

"Appellation of origin" refers to a sign that indicates that a product originates in a specific region, but is limited to those cases where the characteristic qualities of the product are due to the geographical environment, including natural and human factors, of that region, for example, “Roquefort”, “Gorgonzola”, etc.

A definition of AO is contained in the Lisbon Agreement for the Protection of Appellations of Origin and their International Registration, adopted in 1958 under the auspices of the World Intellectual Property Organisation (WIPO). According to Article 2 of the Agreement, an AO is “[…] the geographical name of a country, region, or locality, which serves to designate a product originating therein, the quality and characteristics of which are due exclusively or essentially to the geographic environment, including natural and human factors”[3]. Article 2.2 defines the “country of origin” as “the country whose name, or the country in which is situated the region or locality whose name, constitutes the appellation of origin that has given the product its reputation”.

Three elements should be noted in these definitions: First, the requirement that the appellation of origin should be the geographical denomination of a country, region or locality means that the appellation is to consist of a denomination that identifies a geographical entity in the country of origin. Secondly, the requirement that the appellation of origin must serve to designate a product originating in the country, region or locality concerned means that, in addition to identifying a place, the geographical denomination in question must be known as the designation of a product originating in that place (in other words the reputation). The third requirement concerns the quality or characteristics of the product to which the appellation of origin relates, which must be due exclusively or essentially to the geographical environment of the place where the product originates. The reference to the geographical environment means that there is to be a qualitative connection between the product and the place in which the product originates. The geographical environment is determined on the one hand by a set of natural factors (such as soil and climate), and on the other hand by a set of human factors – for instance, the traditional knowledge or know how used in the place where the product originates [4] .

 
Indication of source 

"Indication of source" refers to a sign that simply indicates that a product originates in a specific geographical region, for example, labels saying “Made in Germany”, “Product of the USA” or “Swiss Made”.
The term “Indication of source” is used in Articles 1.2 and 10 of the 1883 Paris Convention for the Protection of Industrial Property[5] and the 1891 Madrid Agreement for the Repression of False or Deceptive Indications of Source[6]. No specific definition is set out in either of these the two treaties. However, a clarification of the notion can be found in Article 1.1 of the Madrid Agreement:
“All goods bearing a false or deceptive indication by which one of the countries to which this Agreement applies, or a place situated therein, is directly or indirectly indicated as being the country or place of origin shall be seized on importation into any of the said countries.”

 
Quality, characteristics and reputation 

In defining the concepts of GI and AO, we encounter terms such as quality, characteristics and reputation. These concepts are defined in different ways according to countries’ history, culture and tradition. Nevertheless, in an attempt to highlight a few common elements to several traditions and cultures, the quality of a product can be defined in relation to its specificity from a nutritional, visual or symbolic point of view, or in relation to its mode of production. Likewise, those characteristics linked to the geographical origin of a product have to be typical, differentiating it from any other product. They can be physical, chemical, organoleptic, natural, resulting from the raw materials used to produce it, etc. The concept of reputation refers to a positive opinion on a certain product, developed among consumers over time, and which is linked to its geographical origin [7].

 
The geographical area 

In the process of setting-up a GI, an essential step is the delimitation of the geographical area. This has to be substantiated by relevant arguments, such as an existing link between the product and its geographical environment, or other economic, political or cultural considerations [8]. Those arguments have to explain the specificity and uniqueness of the product (climatic factors, physical or natural elements, and/or localised know-how). The identified characteristics have to be homogeneous within the area, in order to differentiate it from neighbouring zones and create a certain level of identity. The articulation among the areas of production, transformation and elaboration has to be established as well, in order to carve out a coherent geographic area.

The example of the GI "pruneau d'Agen" explains well the process of delimitation of a geographical area. The association of producers defined such an area based on adequate sunshine conditions and clay-calcareous soils favourable to the culture of the "Ente Prune" (variety used for the cultivation of "pruneau d'Agen")[9].

 
The concept of “terroir” 

The notion of “terroir” is rich of meanings and has been evolving over time. In addition, having been conceptualized in a well defined socio-cultural context, translating the French word “terroir” in other languages is not an easy task.

In an effort to establish a meaningful definition for several socio-cultural contexts, the concept of “terroir” is referred to as “a defined geographical area in which a human community builds, along its history, a collective production knowledge based on a system of interactions between a physical and biological environment and a set of human factors. In light of the socio-technical factors at stake, a good produced in this area benefits from an originality, a specificity and a reputation [10].
The definition proposed by the working group INRA/INAO [11] is also interesting: A Terroir is “a delimited geographical area defined from a human community which builds along its history a set of distinctive features, knowledge, and practices based on a system of interactions between the natural environment and human factors. Those interactions result in original and specific products and services that can be easily recognised. Those factors affect as well the people leaving in that area. The terroirs are living and evolving places that cannot be associated exclusively to elements related to tradition”[12] .

Interactions between the physical and biological environment and human factors produce over time, in certain geographical areas, a specific traditional knowledge, which can confer specificity and reputation to goods produced locally.

 
The code of conduct (or product specification) 

In some jurisdictions, creating a GI requires the elaboration of a code of conduct (or product specification), which contains key information concerning the product at issue. The European Union (EU) has developed an important experience in this field. According to "Regulation (EU) No 1151/2012 of the European Parliament and of the Council of 21 November 2012 on quality schemes for agricultural products and foodstuffs on the protection of Geographical Indications and Designations of Origin for agricultural products and foodstuffs, replacing the Council Regulation (EC) No 510/2006", a product specification should be composed of at least the following elements[13] :

 

    the name of the product
    the description of the product
    the definition of the geographical area
    evidence that the product originates in the defined geographical area
    a description of the method of obtaining the product
    details bearing out the link between the quality or characteristics of the product and the geographical environment, the link between a specific quality, the reputation or other characteristic of the product and the geographical origin
    the name and address of the authorities or bodies verifying compliance with the provisions of the specification and their specific tasks
    any specific labelling rule for the product in question

Each country should determine the basic criteria to establish a code of conduct, according to its own idea of GIs and the needs of local producers. However, it is clear that those elements justifying the link between the quality, the characteristics or reputation of a product and the geographical environment are crucial to identify a GI. 

 

[1] The full text of the TRIPS is available at: http://www.wto.org/english/docs_e/legal_e/legal_e.htm

[2] Samper, L.F. (2007) “Café de Colombia: protecting and promoting a well-known origin”, National Federation of Coffee Growers of Colombia, Beijing, Chine, Juin 2007. Silva, G. (2008) “Geographical Indications: The Case of Colombian Coffee”, CEO, National Federation of Coffee Growers of Colombia, mai 2008

[3] The full text of the Lisbon Agreement is available at http://www.wipo.int/treaties/en/registration/lisbon/. The English text says “quality and characteristics” but there was a mistake in the translation from the French text of the Agreement, which is the authentic one. The French text says “qualité ou les caractères”. The mistake in the translation has been confirmed by the WIPO Secretariat.

[4] See WIPO Secretariat, “Possible Improvements of the Procedures under the Lisbon Agreement”, p. 13, March 2009.

[5] The Paris Convention for the Protection of Industrial Property was agreed in 1883 and complemented by the Madrid Protocol of 1891. See on http://www.wipo.org, “Treaties”, “Intellectual Property Protection Treaties”, “Paris Convention”.

[6] The 1891 Madrid Agreement for the Repression of False or Deceptive Indications of Source on Goods. See on http://www.wipo.org, “Treaties”, “Intellectual Property Protection Treaties”, “Madrid Agreement”.


[7] Barjolle, D., Boisseaux, S., Dufour, M. (1998), « Le lien au terroir, bilan des travaux de recherche », Ecole polytechnique fédérale de Zurich, Institut d'économie rurale, Mai 1998, Suisse

[8] Ibidem

[9] See « Le fruit d'un terroir ».

[10] Vincent, E., Flutet, E., Nairaud, D. (2008) « aoc et aop : un système de reconnaissance des terroirs au service du développement durable », Géosciences, numéro 7/8, mars 2008, INAO

[11] Institut national de recherche agronomique (INRA)/ Institut national de l’origine et de la qualité (INAO)

[12] See http://terroirsetcultures.frmfrpaca-lr.eu/spip.php?article74

[13] See Regulation (EU) No 1151/2012 of the European Parliament and of the Council of 21 November 2012 on quality schemes for agricultural products and foodstuffs on the protection of Geographical Indications and Designations of Origin for agricultural products and foodstuffs, replacing the Council Regulation (EC) No 510/2006 of 20 March 2006, Art. 4



Your GI Kit

    Key GI Concepts
    Legal Info
    Development Info

Powered by Alcanix | ©oriGIn copyright 2019 | sitemap
About Us

    oriGIn Presentation
    Our Members
    Our Team
    What They Say About Us
    Join Us

Activities

    Policy and Advocacy
    Events
    All you need to Know about GIs
    Cooperation Projects

Your GI Kit

    Key GI Concepts
    Legal Info
    Development Info

Medias

    Press Releases
    oriGIn in the Press
    Social Media

Partnerships

    ASIPI
    EIPIN-IS
    GI Specialized Law Firms/Agencies
    ITC
    oriGIn/FAO cooperation on GIs and sustanability
    University of Alicante

! https://www.origin-gi.com/your-gi-kit/key-concepts-of-gis.html 




    English (UK)	Français (FR)	Español (España)	

   
Sign up to receive our updates

    Home
    About Us
    Activities
    Medias
    Partnerships
    Your GI Kit
    Contact us

Key-Concepts of GIs
Geographical Indications 

Geographical Indications are distinctive signs that associate products of quality and reputation with their place or area of production and thereby help identify and distinguish such products on the market.

There are some well-known examples of geographical and traditional names, which are associated throughout the world with the products of a certain reputation and quality and high value commercial denominations. That is the case of Tequila licor (Mexico), Bordeaux wines (France), Manchego cheese (Spain), Habanos tobacco (Cuba), Antigua coffee (Guatemala), Long-Ging tea (China), Chuao cacao (Venezuela), Parma ham (Italy), Argan Oil (Morocco), Shea butter (Burkina Faso), Guinean pineapples, White Honey (Cameroon), Mananara Vanilla (Madagascar), but also Bukhara (carpets), Solingen Cutlery (Germany), Kilim carpets (Turkey), Thai silk, among others.
According to article 22.1 of TRIPS, GIs are “[…] indications which identify a good as originating in the territory of a Member, or a region or locality in that territory, where a given quality, reputation or other characteristic of the good is essentially attributable to its geographical origin” [1]. The GI definition provided by the TRIPS is quite broad, allowing names identifying agricultural and foodstuff products, handicrafts as well as wines and spirits to qualify for protection. The fundamental condition is that the quality, the reputation or other characteristics of the product at issue are linked to its geographical origin, by virtue of climate, know-how or another kind of knowledge deeply rooted in that area. “Colombian coffee” for instance is a GI as the name of the country refers to the origin and quality of the product. The mountains where coffee trees grow, the selection of the coffee variety and the harvest and transformation process are the elements conferring the products its unique characteristics[2].

 
Appellations of origin 

"Appellation of origin" refers to a sign that indicates that a product originates in a specific region, but is limited to those cases where the characteristic qualities of the product are due to the geographical environment, including natural and human factors, of that region, for example, “Roquefort”, “Gorgonzola”, etc.

A definition of AO is contained in the Lisbon Agreement for the Protection of Appellations of Origin and their International Registration, adopted in 1958 under the auspices of the World Intellectual Property Organisation (WIPO). According to Article 2 of the Agreement, an AO is “[…] the geographical name of a country, region, or locality, which serves to designate a product originating therein, the quality and characteristics of which are due exclusively or essentially to the geographic environment, including natural and human factors”[3]. Article 2.2 defines the “country of origin” as “the country whose name, or the country in which is situated the region or locality whose name, constitutes the appellation of origin that has given the product its reputation”.

Three elements should be noted in these definitions: First, the requirement that the appellation of origin should be the geographical denomination of a country, region or locality means that the appellation is to consist of a denomination that identifies a geographical entity in the country of origin. Secondly, the requirement that the appellation of origin must serve to designate a product originating in the country, region or locality concerned means that, in addition to identifying a place, the geographical denomination in question must be known as the designation of a product originating in that place (in other words the reputation). The third requirement concerns the quality or characteristics of the product to which the appellation of origin relates, which must be due exclusively or essentially to the geographical environment of the place where the product originates. The reference to the geographical environment means that there is to be a qualitative connection between the product and the place in which the product originates. The geographical environment is determined on the one hand by a set of natural factors (such as soil and climate), and on the other hand by a set of human factors – for instance, the traditional knowledge or know how used in the place where the product originates [4] .

 
Indication of source 

"Indication of source" refers to a sign that simply indicates that a product originates in a specific geographical region, for example, labels saying “Made in Germany”, “Product of the USA” or “Swiss Made”.
The term “Indication of source” is used in Articles 1.2 and 10 of the 1883 Paris Convention for the Protection of Industrial Property[5] and the 1891 Madrid Agreement for the Repression of False or Deceptive Indications of Source[6]. No specific definition is set out in either of these the two treaties. However, a clarification of the notion can be found in Article 1.1 of the Madrid Agreement:
“All goods bearing a false or deceptive indication by which one of the countries to which this Agreement applies, or a place situated therein, is directly or indirectly indicated as being the country or place of origin shall be seized on importation into any of the said countries.”

 
Quality, characteristics and reputation 

In defining the concepts of GI and AO, we encounter terms such as quality, characteristics and reputation. These concepts are defined in different ways according to countries’ history, culture and tradition. Nevertheless, in an attempt to highlight a few common elements to several traditions and cultures, the quality of a product can be defined in relation to its specificity from a nutritional, visual or symbolic point of view, or in relation to its mode of production. Likewise, those characteristics linked to the geographical origin of a product have to be typical, differentiating it from any other product. They can be physical, chemical, organoleptic, natural, resulting from the raw materials used to produce it, etc. The concept of reputation refers to a positive opinion on a certain product, developed among consumers over time, and which is linked to its geographical origin [7].

 
The geographical area 

In the process of setting-up a GI, an essential step is the delimitation of the geographical area. This has to be substantiated by relevant arguments, such as an existing link between the product and its geographical environment, or other economic, political or cultural considerations [8]. Those arguments have to explain the specificity and uniqueness of the product (climatic factors, physical or natural elements, and/or localised know-how). The identified characteristics have to be homogeneous within the area, in order to differentiate it from neighbouring zones and create a certain level of identity. The articulation among the areas of production, transformation and elaboration has to be established as well, in order to carve out a coherent geographic area.

The example of the GI "pruneau d'Agen" explains well the process of delimitation of a geographical area. The association of producers defined such an area based on adequate sunshine conditions and clay-calcareous soils favourable to the culture of the "Ente Prune" (variety used for the cultivation of "pruneau d'Agen")[9].

 
The concept of “terroir” 

The notion of “terroir” is rich of meanings and has been evolving over time. In addition, having been conceptualized in a well defined socio-cultural context, translating the French word “terroir” in other languages is not an easy task.

In an effort to establish a meaningful definition for several socio-cultural contexts, the concept of “terroir” is referred to as “a defined geographical area in which a human community builds, along its history, a collective production knowledge based on a system of interactions between a physical and biological environment and a set of human factors. In light of the socio-technical factors at stake, a good produced in this area benefits from an originality, a specificity and a reputation [10].
The definition proposed by the working group INRA/INAO [11] is also interesting: A Terroir is “a delimited geographical area defined from a human community which builds along its history a set of distinctive features, knowledge, and practices based on a system of interactions between the natural environment and human factors. Those interactions result in original and specific products and services that can be easily recognised. Those factors affect as well the people leaving in that area. The terroirs are living and evolving places that cannot be associated exclusively to elements related to tradition”[12] .

Interactions between the physical and biological environment and human factors produce over time, in certain geographical areas, a specific traditional knowledge, which can confer specificity and reputation to goods produced locally.

 
The code of conduct (or product specification) 

In some jurisdictions, creating a GI requires the elaboration of a code of conduct (or product specification), which contains key information concerning the product at issue. The European Union (EU) has developed an important experience in this field. According to "Regulation (EU) No 1151/2012 of the European Parliament and of the Council of 21 November 2012 on quality schemes for agricultural products and foodstuffs on the protection of Geographical Indications and Designations of Origin for agricultural products and foodstuffs, replacing the Council Regulation (EC) No 510/2006", a product specification should be composed of at least the following elements[13] :

 

    the name of the product
    the description of the product
    the definition of the geographical area
    evidence that the product originates in the defined geographical area
    a description of the method of obtaining the product
    details bearing out the link between the quality or characteristics of the product and the geographical environment, the link between a specific quality, the reputation or other characteristic of the product and the geographical origin
    the name and address of the authorities or bodies verifying compliance with the provisions of the specification and their specific tasks
    any specific labelling rule for the product in question

Each country should determine the basic criteria to establish a code of conduct, according to its own idea of GIs and the needs of local producers. However, it is clear that those elements justifying the link between the quality, the characteristics or reputation of a product and the geographical environment are crucial to identify a GI. 

 

[1] The full text of the TRIPS is available at: http://www.wto.org/english/docs_e/legal_e/legal_e.htm

[2] Samper, L.F. (2007) “Café de Colombia: protecting and promoting a well-known origin”, National Federation of Coffee Growers of Colombia, Beijing, Chine, Juin 2007. Silva, G. (2008) “Geographical Indications: The Case of Colombian Coffee”, CEO, National Federation of Coffee Growers of Colombia, mai 2008

[3] The full text of the Lisbon Agreement is available at http://www.wipo.int/treaties/en/registration/lisbon/. The English text says “quality and characteristics” but there was a mistake in the translation from the French text of the Agreement, which is the authentic one. The French text says “qualité ou les caractères”. The mistake in the translation has been confirmed by the WIPO Secretariat.

[4] See WIPO Secretariat, “Possible Improvements of the Procedures under the Lisbon Agreement”, p. 13, March 2009.

[5] The Paris Convention for the Protection of Industrial Property was agreed in 1883 and complemented by the Madrid Protocol of 1891. See on http://www.wipo.org, “Treaties”, “Intellectual Property Protection Treaties”, “Paris Convention”.

[6] The 1891 Madrid Agreement for the Repression of False or Deceptive Indications of Source on Goods. See on http://www.wipo.org, “Treaties”, “Intellectual Property Protection Treaties”, “Madrid Agreement”.


[7] Barjolle, D., Boisseaux, S., Dufour, M. (1998), « Le lien au terroir, bilan des travaux de recherche », Ecole polytechnique fédérale de Zurich, Institut d'économie rurale, Mai 1998, Suisse

[8] Ibidem

[9] See « Le fruit d'un terroir ».

[10] Vincent, E., Flutet, E., Nairaud, D. (2008) « aoc et aop : un système de reconnaissance des terroirs au service du développement durable », Géosciences, numéro 7/8, mars 2008, INAO

[11] Institut national de recherche agronomique (INRA)/ Institut national de l’origine et de la qualité (INAO)

[12] See http://terroirsetcultures.frmfrpaca-lr.eu/spip.php?article74

[13] See Regulation (EU) No 1151/2012 of the European Parliament and of the Council of 21 November 2012 on quality schemes for agricultural products and foodstuffs on the protection of Geographical Indications and Designations of Origin for agricultural products and foodstuffs, replacing the Council Regulation (EC) No 510/2006 of 20 March 2006, Art. 4



Your GI Kit

    Key GI Concepts
    Legal Info
    Development Info

Powered by Alcanix | ©oriGIn copyright 2019 | sitemap
About Us

    oriGIn Presentation
    Our Members
    Our Team
    What They Say About Us
    Join Us

Activities

    Policy and Advocacy
    Events
    All you need to Know about GIs
    Cooperation Projects

Your GI Kit

    Key GI Concepts
    Legal Info
    Development Info

Medias

    Press Releases
    oriGIn in the Press
    Social Media

Partnerships

    ASIPI
    EIPIN-IS
    GI Specialized Law Firms/Agencies
    ITC
    oriGIn/FAO cooperation on GIs and sustanability
    University of Alicante
https://www.origin-gi.com/your-gi-kit/key-concepts-of-gis.html




	
Course format
Online/Internet-based
	
Language
English ‎(en)‎
	
Time required
4 hours over 2 weeks
	
Next start date
31, May 2021
	
Course access
Open for enrollments
	
Course fee
Free of charge
https://learning.intracen.org/course/info.php?id=234


! Overton window

!! https://en.wikipedia.org/wiki/Overton_window

From Wikipedia, the free encyclopedia

This article is about the political concept. For the 2010 novel, see The Overton Window.
An illustration of the Overton Window, along with Treviño's degrees of acceptance

The Overton window is the range of policies politically acceptable to the mainstream population at a given time.[1] It is also known as the window of discourse. The term is named after American policy analyst Joseph P. Overton, who stated that an idea's political viability depends mainly on whether it falls within this range, rather than on politicians' individual preferences.[2][3] According to Overton, the window frames the range of policies that a politician can recommend without appearing too extreme to gain or keep public office given the climate of public opinion at that time.

Colin Mortimer, the Director of the Center for New Liberalism at the Progressive Policy Institute, has claimed that in the 21st century, the "Overton window" concept has been altered from its original form by political extremists, who have misinterpreted it as a strategy rather than a theorem.[4][unreliable source?] In particular, the term "Overton window" has been re-appropriated by alt-right white supremacists, as a gauge for the viability of their propaganda.[5][6][7] Ironically, Joseph Lehman, the man who originally coined the term and refined its definition, later admitted that he intended for it to demonstrate the extent to which political think tanks can alter public policy.
Contents

    1 Summary
    2 See also
    3 References
    4 Further reading

Summary

Overton described a spectrum from "more free" to "less free" with regard to government intervention, oriented vertically on an axis, to avoid comparison with the left/right political spectrum.[8] As the spectrum moves or expands, an idea at a given location may become more or less politically acceptable. After Overton's death, his Mackinac Center for Public Policy colleague Joseph Lehman further developed the idea and named it after Overton.[9]

Political commentator Joshua Treviño has postulated that the six degrees of acceptance of public ideas are roughly:[10]

    Unthinkable
    Radical
    Acceptable
    Sensible
    Popular
    Policy

A new idea fills the window of what the public regards as unthinkable, causing the desired idea to shift into the window of what the public views as sensible, without its proponents necessarily having explained any benefits of the desired idea.[disputed – discuss]

The Overton Window is an approach to identifying the ideas that define the spectrum of acceptability of governmental policies. Politicians can only act within the acceptable range. Shifting the Overton Window involves proponents of policies outside the window persuading the public to expand the window. Proponents of current policies, or similar ones within the window, seek to convince people that policies outside it should be deemed unacceptable. According to Lehman, who coined the term, "The most common misconception is that lawmakers themselves are in the business of shifting the Overton window. That is absolutely false. Lawmakers are actually in the business of detecting where the window is, and then moving to be in accordance with it."[11]

According to Lehman, the concept is just a description of how ideas work, not advocacy of extreme policy proposals. In an interview with The New York Times, he said, "It just explains how ideas come in and out of fashion, the same way that gravity explains why something falls to the earth. I can use gravity to drop an anvil on your head, but that would be wrong. I could also use gravity to throw you a life preserver; that would be good."[12] The "door-in-the-face" technique of persuasion is similar.

In 1998, Noam Chomsky said:

    The smart way to keep people passive and obedient is to strictly limit the spectrum of acceptable opinion, but allow very lively debate within that spectrum—even encourage the more critical and dissident views. That gives people the sense that there's free thinking going on, while all the time the presuppositions of the system are being reinforced by the limits put on the range of the debate.[13]

See also

    Creeping normality
    Hallin's spheres
    Opinion corridor
    Moral relativism

References

Giridharadas, Anand (21 November 2019). "How America's Elites Lost Their Grip". Time. Retrieved 22 November 2019.
"Joseph P. Overton". Mackinac Center for Public Policy. Retrieved 30 August 2013.
"A Brief Explanation of the Overton Window". Mackinac Center for Public Policy. Retrieved 22 November 2019.
Mortimer, Colin. "The Myth of the Overton Window". Exponents. Exponents Magazine.
Nadler, Anthony (2019). News on the Right: Studying Conservative News Cultures. Oxford, England: Oxford University Press. p. 75. ISBN 9780190913540.
Reid, Shannon; Valasik, Matthew (2020). Alt Right Gangs: A Hazy Shade of White. University of California Press. p. 50. ISBN 9780520300446.
Mondon, Aurelien; Winter, Aaron (2020). Reactionary Democracy: How Racism and the Populist Far Right Became Mainstream. Verso Books. p. 127. ISBN 9781788734233.
Lehman, Joseph G. (23 November 2009). "Glenn Beck Highlights Mackinac Center's "Overton Window"". Mackinac Center for Public Policy. Retrieved 16 April 2017.
Robertson, Derek. "How an Obscure Conservative Theory Became the Trump Era's Go-to Nerd Phrase". Politico. Retrieved 10 September 2019.
thereisnospoon (10 May 2006). "Why the Right-Wing Gets It—and Why Dems Don't [updated]". Daily Kos. Retrieved 9 May 2018.
Robertson, Derek. "How an Obscure Conservative Theory Became the Trump Era's Go-to Nerd Phrase". Politico. Retrieved 10 September 2019.
Astor, Maggie. "How the Politically Unthinkable Can Become Mainstream". New York Times. Retrieved 10 September 2019.

    Chomsky, Noam (1998). The Common Good. Odonian Press.

Further reading

    Pilgrim, Mark (23 August 2006). "W3C and the Overton window". Dive into Mark. Archived from the original on 18 July 2011.
    Lehman, Joseph G. (8 April 2010). "An Introduction to the Overton Window of Political Possibility". Mackinac Center for Public Policy.
    Astor, Maggie (26 February 2019). "How the Politically Unthinkable Can Become Mainstream". The New York Times.

    vte

Biases
Cognitive biases
	

    Actor–observer Acquiescence Ambiguity Anchoring Attentional Attribution Authority Automation Belief Blind spot Choice-supportive Confirmation Compassion fade Congruence Courtesy Cultural Distinction Dunning–Kruger Egocentric Emotional Extrinsic incentives Fading affect Framing Correspondence Halo effect Hindsight Horn effect Hostile attribution Impact Implicit In-group Mere-exposure effect Negativity Normalcy Omission Optimism Out-group homogeneity Outcome Overton window Precision Present Pro-innovation Response Restraint Self-serving Social comparison Status quo Time-saving Trait ascription von Restorff effect Zero-risk In animals

Statistical biases	

    Estimator Forecast Healthy user Information
        Psychological Lead time Length time Non-response Observer Omitted-variable Participation Recall Sampling Selection Self-selection Social desirability Spectrum Survivorship Systematic error Systemic Verification Wet

Other biases	

    Academic Funding FUTON Inductive Infrastructure Inherent In education Media
        False balance Vietnam War Norway South Asia Sweden United States Arab–Israeli conflict Ukraine Net Political bias Publication Reporting White hat

Bias reduction	

    Cognitive bias mitigation Debiasing Heuristics in judgment and decision-making

Lists: General · Memory
Categories:

    Crowd psychologyPublic opinionPolicyPolitical conceptsPolitical realismPolitical spectrum

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    Italiano
    Lumbaart
    Português
    Русский
    中文

Edit links

    This page was last edited on 16 May 2021, at 10:00 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki




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
! Peacebuilding
!! 
!! https://en.wikipedia.org/wiki/Peacebuilding

From Wikipedia, the free encyclopedia

Human Peace Sign - Symbolically Represents an Holistic Approach to Peacebuilding.

Peacebuilding is an activity that aims to resolve injustice in nonviolent ways and to transform the cultural & structural conditions that generate deadly or destructive conflict. It revolves around developing constructive personal, group, and political relationships across ethnic, religious, class, national, and racial boundaries. This process includes violence prevention; conflict management, resolution, or transformation; and post-conflict reconciliation or trauma healing, i.e., before, during, and after any given case of violence.[1][2][3]

As such, peacebuilding is a multidisciplinary, cross-sector technique or method which becomes strategic when it works over the long run and at all levels of society to establish and sustain relationships among people locally and globally—thus engendering sustainable peace.[1] Strategic peacebuilding activities address the root causes or potential causes of violence, create a societal expectation for peaceful conflict resolution, and stabilize society politically and socioeconomically.

The methods included in peacebuilding vary depending on the situation and the agent of peacebuilding. Successful peacebuilding activities create an environment supportive of self-sustaining, durable peace; reconcile opponents; prevent conflict from restarting; integrate civil society; create rule of law mechanisms; and address underlying structural and societal issues. Researchers and practitioners also increasingly find that peacebuilding is most effective and durable when it relies upon local conceptions of peace and the underlying dynamics which foster or enable conflict.[4]
Contents

    1 Defining peacebuilding
    2 History of peacebuilding
    3 Categorizing approaches to peacebuilding
        3.1 Negative peace: direct violence
        3.2 Positive peace: structural violence
        3.3 Justpeace: cultural violence
    4 Institutionalising peacebuilding
    5 Components of peacebuilding
    6 Peacebuilding and cultural heritage
    7 Major organizations
        7.1 Intergovernmental organizations
        7.2 Governmental organizations
            7.2.1 France
            7.2.2 Germany
            7.2.3 Switzerland
            7.2.4 United Kingdom
            7.2.5 United States
        7.3 Nongovernmental organizations
        7.4 Research and academic institutes
    8 Role of women
    9 Early twenty-first century examples
    10 Results
    11 Criticisms
        11.1 Implementation
        11.2 Perpetuation of cultural hegemony
    12 See also
    13 Notes
    14 References

Defining peacebuilding

Of course, the exact definition of peacebuilding varies depending on the actor, with some definitions specifying what activities fall within the scope of peacebuilding or restricting peacebuilding to post-conflict interventions. Even if peacebuilding has remained a largely amorphous concept without clear guidelines or goals,[5] common to all definitions is the agreement that improving human security is the central task of peacebuilding. In this sense, peacebuilding includes a wide range of efforts by diverse actors in government and civil society at the community, national, and international levels to address the root causes of violence and ensure civilians have freedom from fear (negative peace), freedom from want (positive peace) and freedom from humiliation before, during, and after violent conflict.

Although many of peacebuilding's aims overlap with those of peacemaking, peacekeeping and conflict resolution, it is a distinct idea. Peacemaking involves stopping an ongoing conflict, whereas peacebuilding happens before a conflict starts or once it ends. Peacekeeping prevents the resumption of fighting following a conflict; it does not address the underlying causes of violence or work to create societal change, as peacebuilding does. Peacekeeping also differs from peacebuilding in that it only occurs after conflict ends, not before it begins. Conflict resolution does not include some components of peacebuilding, such as state building and socioeconomic development.

While some use the term to refer to only post-conflict or post-war contexts, most use the term more broadly to refer to any stage of conflict. Before conflict becomes violent, preventive peacebuilding efforts, such as diplomatic, economic development, social, educational, health, legal and security sector reform programs, address potential sources of instability and violence. This is also termed conflict prevention. Peacebuilding efforts aim to manage, mitigate, resolve and transform central aspects of the conflict through official diplomacy; as well as through civil society peace processes and informal dialogue, negotiation, and mediation. Peacebuilding addresses economic, social and political root causes of violence and fosters reconciliation to prevent the return of structural and direct violence. Peacebuilding efforts aim to change beliefs, attitudes and behaviors to transform the short and long term dynamics between individuals and groups toward a more stable, peaceful coexistence. Peacebuilding is an approach to an entire set of interrelated efforts that support peace.

In 2007, the UN Secretary-General's Policy Committee defined peacebuilding as follows: "Peacebuilding involves a range of measures targeted to reduce the risk of lapsing or relapsing into conflict by strengthening national capacities at all levels for conflict management, and to lay the foundations for sustainable peace and sustainable development. Peacebuilding strategies must be coherent and tailored to specific needs of the country concerned, based on national ownership, and should comprise a carefully prioritized, sequenced, and therefore relatively narrow set of activities aimed at achieving the above objectives."[6]
History of peacebuilding

As World War II ended in the mid-1940s, international initiatives such as the creation of the Bretton Woods institutions and The Marshall Plan consisted of long-term postconflict intervention programs in Europe with which the United States and its allies aimed to rebuild the continent following the destruction of World War II.[7] The focus of these initiatives revolved around a narrative of peacekeeping and peacemaking.

After several decades saturated in this narrative, in 1975 Norwegian sociologist Johan Galtung coined the term "peacebuilding" in his pioneering work "Three Approaches to Peace: Peacekeeping, Peacemaking, and Peacebuilding." In this article, he posited that "peace has a structure different from, perhaps over and above, peacekeeping and ad hoc peacemaking... The mechanisms that peace is based on should be built into the structure and be present as a reservoir for the system itself to draw up. ... More specifically, structures must be found that remove causes of wars and offer alternatives to war in situations where wars might occur."[8] Galtung's work emphasized a bottom-up approach that decentralized social and economic structures, amounting to a call for a societal shift from structures of coercion and violence to a culture of peace. He catalyzed a major shift in the post-WWII global narrative by emphasizing how political, economic, & social systems need to address the root causes of conflict and support local capacity for peace management and conflict resolution.[6]

Then, as the Cold War and the various phenomena of its fizzling came to a close (e.g. civil wars between Third World countries, Reagonomics, "Bringing the State Back In"), American sociologist John Paul Lederach further refined the concept of peacebuilding through several 1990s publications that focus on engaging grassroots, local, NGO, international and other actors to create a sustainable peace process, especially with respect to cases of intractable deadly conflict where he was actively mediating between warring parties.[9][10][11] From a political-institutional perspective, he does not advocate the same degree of structural change as Galtung.[12] However, Lederach's influence in the conceptual evolution of peacebuilding still reflects Galtung's original vision for "positive peace" by detailing, categorizing, & expanding upon the sociocultural processes through which we address both direct and structural elements of violent conflict.[13]

Peacebuilding has since expanded to include many different dimensions, such as disarmament, demobilization and reintegration and rebuilding governmental, economic and civil society institutions.[6] The concept was popularized in the international community through UN Secretary-General Boutros Boutros-Ghali's 1992 report An Agenda for Peace. The report defined post-conflict peacebuilding as an "action to identify and support structures which will tend to strengthen and solidify peace in order to avoid a relapse into conflict".[14] At the 2005 World Summit, the United Nations began creating a peacebuilding architecture based on Kofi Annan's proposals.[15] The proposal called for three organizations: the UN Peacebuilding Commission, which was founded in 2005; the UN Peacebuilding Fund, founded in 2006; and the UN Peacebuilding Support Office, which was created in 2005. These three organizations enable the Secretary-General to coordinate the UN's peacebuilding efforts.[16] National governments' interest in the topic has also increased due to fears that failed states serve as breeding grounds for conflict and extremism and thus threaten international security. Some states have begun to view peacebuilding as a way to demonstrate their relevance.[17] However, peacebuilding activities continue to account for small percentages of states' budgets.[18]
Categorizing approaches to peacebuilding

In a very broad sense, there are three primary approaches to peacebuilding, which each correspond to three primary types of peace: (1) negative peace vs. (2) positive peace (Galtung) vs. (3) justpeace (Lederach, sometimes spelled "just peace"). In turn, these three types of peace correspond respectively to three primary types of violence: (1) direct violence vs. (2) structural violence vs. (3) cultural violence.
Negative peace: direct violence

Negative peace refers to the absence of direct, or "hot" violence, which refers to acts that impose immediate harm on a given subject or group. In this sense, negative peacebuilding (aimed at negative peace) intentionally focuses on addressing the direct factors driving harmful conflict. When applying the term "peacebuilding" to this work, there is an explicit attempt by those designing and planning a peacebuilding effort to reduce direct violence.[19][20]
Positive peace: structural violence

Positive peace refers to the absence of both direct violence as well as structural violence. Structural violence refers to the ways that systems & institutions in society cause, reinforce, or perpetuate direct violence. In this sense, positive peacebuilding (aimed at positive peace) intentionally focuses on address the indirect factors driving or mitigating harmful conflict, with an emphasis on engaging institutions, policies, and political-economic conditions as they relate to exploitation and repression.[19][20]

While Galtung's original & subsequent literature on the concept of positive peace do include references to cultural violence, for encyclopedic purposes it is still useful to reserve its absence for a term that Lederach and others have since developed to remedy gaps in understanding that were not sufficiently addressed through scholarly discussion of positive peace until the mid-1990s: the term justpeace. In proposing this term, Lederach identified "three gaps in peacebuilding" this term could address: "the interdependence gap", "the justice gap", and the "process-structure gap".[13]
Justpeace: cultural violence

Justpeace (or "just peace") refers to the absence of all three types of violence enumerated above: direct, structural, & cultural. Cultural violence refers to aspects of culture that can be used to justify or legitimize direct or structural violence—the ways in which direct or structural violence look or feel "right" according to the moral fabric of society.[21] In this sense, just peacebuilding (aimed at justpeace) intentionally combines the methods of "positive peacebuilding" (as described above) with a special focus on building and transforming sustainable relationships among conflicting sectors & cultures in such a way that promotes more alignment between each culture's mores (standards of "right" behavior or conditions) and the extent to which those mores are built/equipped to prevent, resolve, and heal patterns of direct and structural violence.

When Lederach first proposed the term in the late 1990s, he wrote:

    Inspired by colleagues from the Justapaz Centre in Bogota, Colombia, I propose that by the year 2050 the word justpeace be accepted in everyday common language and appear as an entry in the Webster's Dictionary. It will read:

    Justpeace \ jest pés \ n, vi, (justpeace-building) 1: an adaptive process-structure of human relationships characterized by high justice and low violence 2: an infrastructure of organization or governance that responds to human conflict through nonviolent means as first and last resorts 3: a view of systems as responsive to the permanency and interdependence of relationships and change.[13]

Institutionalising peacebuilding

Following periods of protracted violence, peacebuilding often takes shape in the form of constitutional agreements, laying out a path for co-operation and tolerance between former warring factions. A common method that has been applied in a variety of states is consociationalism. Initially set forth by political scientist Arend Lijphart, consociationalism calls for a power-sharing form of democracy. Identified by four aspects: grand coalition, mutual veto, proportionality and segmental autonomy; it aims to generate peace across societies that have been torn apart by their internal divisions.[22] Ultimately, consociationalism aims to create a stable society that is able to outlast and overcome differences that may remerge. Examples of consociational agreements can be seen in Northern Ireland, Bosnia and Herzegovina and Lebanon.

In an effort to de-emphasise the importance of ethnicity, critics of consociationalism such as Brian Barry, Donald L. Horowitz, and to a certain extent, Roland Paris, have developed their own brands of constitutional peacebuilding that rely on the existence of a moderate society.

Centripetalism as advocated by Horowitz, encourages political parties of divided societies to adopt a moderate campaign platform. Through the alternative vote and a distributive requirement, centripetalism aims to create a society that votes across ethnic or religious lines, allowing civic issues to take precedence. [23]
Components of peacebuilding

The activities included in peacebuilding vary depending on the situation and the agent of peacebuilding. Successful peacebuilding activities create an environment supportive of self-sustaining, durable peace; reconcile opponents; prevent conflict from restarting; integrate civil society; create rule of law mechanisms; and address underlying structural and societal issues. To accomplish these goals, peacebuilding must address functional structures, emotional conditions and social psychology, social stability, rule of law and ethics, and cultural sensitivities.[24]

Preconflict peacebuilding interventions aim to prevent the start of violent conflict.[25] These strategies involve a variety of actors and sectors in order to transform the conflict.[26] Even though the definition of peacebuilding includes preconflict interventions, in practice most peacebuilding interventions are postconflict.[27] However, many peacebuilding scholars advocate an increased focus on preconflict peacebuilding in the future.[25][26]

There are many different approaches to categorization of forms of peacebuilding among the peacebuilding field's many scholars.

Barnett et al. divide postconflict peacebuilding into three dimensions: stabilizing the post-conflict zone, restoring state institutions, and dealing with social and economic issues. Activities within the first dimension reinforce state stability post-conflict and discourage former combatants from returning to war (disarmament, demobilization and reintegration, or DDR). Second dimension activities build state capacity to provide basic public goods and increase state legitimacy. Programs in the third dimension build a post-conflict society's ability to manage conflicts peacefully and promote socioeconomic development.[28]
1st Dimension 	2nd Dimension 	3rd Dimension

    Taking away weapons
    Re-integrating former combatants into civilian society

	

    Rebuilding basic facilities, transportation and communication networks, utilities
    Developing rule of law systems and public administration
    Building educational and health infrastructure
    Providing technical and capacity-building assistance for institutions
    Creating legitimate (democratic, accountable) state institutions

	

    Trauma counseling
    Transitional justice and restoration
    Community dialogue
    Building bridges between different communities
    Increasing human rights

	

    Gender empowerment
    Raising environmental awareness
    Promoting economic development
    Developing a civil society and private sector that can represent diverse interests and challenge the state peacefully

A mixture of locally and internationally focused components is key to building a long-term sustainable peace.[24][29] Mac Ginty says that while different "indigenous" communities utilize different conflict resolution techniques, most of them share the common characteristics described in the table below. Since indigenous peacebuilding practices arise from local communities, they are tailored to local context and culture in a way that generalized international peacebuilding approaches are not.[30]
Local, customary and traditional 	International

    Respected local figures
    Public dimension
    Storytelling and airing of grievances
    Emphasis on relationships
    Reliance on local resources

	

    Top-down: engages with national elites, not locals
    Exclusive: deals are made behind closed doors
    Technocratic/ahistorical basis: emphasis on 'striking a deal', 'moving on'
    Modeled on corporate culture: reaching a deal, meeting deadlines prioritzed over relations
    Relies on external personnel, ideas and material resources

The theorist I. William Zartman introduces the concept of a "ripe moment" for the commencement of peace negotiations in a conflict. Zartman's thesis outlines the necessary (but not sufficient) conditions that must be fulfilled before actors in a conflict will be willing to faithfully engage in peace negotiations.[31] Institutions or countries looking to build peace must therefore "seize" upon these moments to begin the process of peace negotiations.

    A mutually hurting stalemate (MHS):
        All sides in a conflict must be engaged in a stalemate, such that none of the actors can successfully escalate the conflict to achieve victory.
        The stalemate must also be "mutually hurting", such that the continuation of the conflict is n according to each sides' cost-benefit analyses.
    A way out:
        Peacebuilding and peace negotiating actors can provide the necessary security that enables peace negotiation to occur.

Approached in game-theoretical terms, Zartman argues that the presence of an MHS and a means of escaping the stalemate transform conflicts from a prisoner's dilemma to a chicken game.

Without these features, Zartman argues that belligerents will lack the necessary motivations to pursue peace. Therefore the sides in a conflict will either not engage in peace negotiation, or any peace will be short-lived.
Peacebuilding and cultural heritage
Karl von Habsburg, on a Blue Shield International fact-finding mission in Libya during the war in 2011 to protect cultural assets

In today's world, peacebuilding also means maintaining and protecting the economic and cultural foundations of a community and the population. The protection of culture and cultural assets is therefore becoming increasingly important nationally and internationally. United Nations, UNESCO and Blue Shield International deal with the protection of cultural heritage and therefore with peacebuilding. This also applies to the integration of United Nations peacekeeping.[32][33][34][35]

In international law, the UN and UNESCO try to establish and enforce rules. It is not a question of protecting a person's property, but of preserving the cultural heritage of humanity, especially in the event of war and armed conflict. According to Karl von Habsburg, founding president of Blue Shield International, the destruction of cultural assets is also part of psychological warfare. The target is the opponent's identity, which is why symbolic cultural assets become a main target. It is also intended to address the particularly sensitive cultural memory, the growing cultural diversity and the economic basis (such as tourism) of a state, a region or a municipality.[36][37][38]
Major organizations
Intergovernmental organizations

The United Nations participates in many aspects of peacebuilding, both through the peacebuilding architecture established in 2005–2006 and through other agencies.

    Peacebuilding architecture
        UN Peacebuilding Commission (PBC): intergovernmental advisory body[16] that brings together key actors, gathers resources, advises on strategies for post-conflict peacebuilding and highlights issues that might undermine peace.[39]
        UN Peacebuilding Fund (PBF): supports peacebuilding activities that directly promote post-conflict stabilization and strengthen state and institutional capacity. PBF funding is either given for a maximum of two years immediately following conflict to jumpstart peacebuilding and recovery needs or given for up to three years to create a more structured peacebuilding process.[40]
        UN Peacebuilding Support Office (PBSO): supports the Peacebuilding Commission with strategic advice and policy guidance, administers the Peacebuilding Fund and helps the Secretary-General coordinate UN agencies' peacebuilding efforts.[16]
    Other agencies
        UN Department of Political Affairs: postconflict peacebuilding
        UN Development Programme: conflict prevention, peacebuilding, postconflict recovery[41]

The World Bank and International Monetary Fund focus on the economic and financial aspects of peacebuilding. The World Bank assists in post-conflict reconstruction and recovery by helping rebuild society's socioeconomic framework. The International Monetary Fund deals with post-conflict recovery and peacebuilding by acting to restore assets and production levels.[41]

The EU's European Commission describes its peacebuilding activities as conflict prevention and management, and rehabilitation and reconstruction. Conflict prevention and management entails stopping the imminent outbreak of violence and encouraging a broad peace process. Rehabilitation and reconstruction deals with rebuilding the local economy and institutional capacity.[42] The European Commission Conflict Prevention and Peace building 2001–2010 was subjected to a major external evaluation conducted by Aide a la Decisions Economique (ADE) with the European Centre for Development Policy Management which was presented in 2011.[43] The European External Action Service created in 2010 also has a specific Division of Conflict Prevention, Peacebuilding and Mediation.
Governmental organizations
France
AFD logo

    French Ministry of Defence: operations include peacekeeping, political and constitutional processes, democratization, administrative state capacity, technical assistance for public finance and tax policy, and support for independent media
    French Ministry of Foreign and European Affairs: supports peace consolidation, including monitoring compliance with arms embargoes, deployment of peacekeeping troops, DDR, and deployment of police and gendarmerie in support of the rule of law
    French Development Agency: focuses on crisis prevention through humanitarian action and development

Germany

    German Federal Foreign Office: assists with conflict resolution and postconflict peacebuilding, including the establishment of stable state structures (rule of law, democracy, human rights, and security) and the creation of the potential for peace within civil society, the media, cultural affairs and education
    German Federal Ministry of Defence: deals with the destruction of a country's infrastructure resulting from intrastate conflict, security forces reform, demobilization of combatants, rebuilding the justice system and government structures and preparations for elections
    German Federal Ministry for Economic Cooperation and Development: addresses economic, social, ecological, and political conditions to help eliminate the structural causes of conflict and promote peaceful conflict management; issues addressed include poverty reduction, pro-poor sustainable economic growth, good governance and democracy

Switzerland

    Federal Department of Foreign Affairs (FDFA): following the bill passed by the Swiss Federal Parliament in 2004 which outlined various measures for civil peacebuilding and human rights strengthening, the Human Security Division (HSD) of the Federal Department of Foreign Affairs (FDFA) has been responsible for implementing measures which serve to promote human security around the world. It is the competence centre for peace, human rights and humanitarian policy, and for Switzerland's migration foreign policy.[44] To this end, the FDFA gets a line of credit to be renewed and approved by Parliament every four years (it was CHF 310 million for the 2012–2016 period.) Its main peacebuilding programmes focus on 1. the African Great Lakes region (Burundi and Democratic Republic of Congo), 2. Sudan, South Sudan and the Horn of Africa, 3. West Africa and Sahel, 4. Middle East, 5. Nepal, 6. South Eastern Europe and 7. Colombia.

United Kingdom

    UK Foreign and Commonwealth Office: performs a range of reconstruction activities required in the immediate aftermath of conflict
    UK Ministry of Defence: deals with long-term activities addressing the underlying causes of conflict and the needs of the people
    UK Department for International Development: works on conflict prevention (short-term activities to prevent the outbreak or recurrence of violent conflict) and peacebuilding (medium- and long-term actions to address the factors underlying violent conflict), including DDR programs; building the public institutions that provide security, transitional justice and reconciliation; and providing basic social services

United States
USAID logo

    United States Department of State: aids postconflict states in establishing the basis for a lasting peace, good governance and sustainable development
    United States Department of Defense: assists with reconstruction, including humanitarian assistance, public health, infrastructure, economic development, rule of law, civil administration and media; and stabilization, including security forces, communication skills, humanitarian capabilities and area expertise
    United States Agency for International Development: performs immediate interventions to build momentum in support of the peace process including supporting peace negotiations; building citizen security; promoting reconciliation; and expanding democratic political processes[45]
    United States Institute of Peace:

Nongovernmental organizations

    Catholic Relief Services: Baltimore-based Catholic humanitarian agency that provides emergency relief post-disaster or post-conflict and encourages long-term development through peacebuilding and other activities
    Conscience: Taxes for Peace not War: Organisation in London that promotes peacebuilding as an alternative to military security via a Peace Tax Bill and reform of the £1 billion UK Conflict, Stability and Security Fund.
    Conciliation Resources: London-based independent organisation working with people in conflict to prevent violence and build peace.
    Crisis Management Initiative: Helsinki-based organization that works to resolve conflict and build sustainable peace by bringing international peacebuilding experts and local leaders together
    Generations For Peace: An Amman-based global non-profit peace-building organization dedicated to sustainable conflict transformation at the grassroots with a focus on youth.
    IIDA Women's Development Organisation is a Somali non-profit, politically independent, non-governmental organisation, created by women in order to work for peacebuilding and women's rights defence in Somalia.
    Initiatives of Change: global organization dedicated to "building trust across the world's divides" (of culture, nationality, belief, and background), involved in peacebuilding and peace consolidation since 1946[46] and currently in the Great Lakes area of Africa,[47] Sierra Leone and other areas of conflict.
    Institute for Conflict Transformation and Peacebuilding (ICP): Swiss based NGO specialised in peacebuilding, non-violent conflict transformation, mediation and training delivery.
    International Alert: London-based charity that works with people affected by violent conflict to improve their prospects for peace and helps shape and strength peacebuilding policies and practices
    International Crisis Group: Brussels-based nonprofit that gives advice to governments and intergovernmental organizations on the prevention and resolution of deadly conflict
    Interpeace: Geneva-based nonprofit and strategic partner of the United Nations that works to build lasting peace by following five core principles that put people at the center of the peacebuilding process
    Jewish-Palestinian Living Room Dialogue Group: Since 1992 models and supports relationships among adversaries, while creating how-to documentary films. From 2003–2007, with Camp Tawonga brought hundreds of adults and youth from 50 towns in Palestine and Israel to successfully live and communicate together at the Palestinian-Jewish Family Peacemakers Camp—Oseh Shalom – Sanea al-Salam[48]
    Karuna Center for Peacebuilding: U.S.-based international nonprofit organization that leads training and programs in post-conflict peacebuilding for government, development institutions, civil society organizations, and local communities
    Nonviolent Peaceforce: Brussels-based nonprofit that promotes and implements unarmed civilian peacekeeping as a tool for reducing violence and protecting civilians in situations of violent conflict
    Peace Direct: London-based charity that provides financial and administrative assistance to grassroots peacebuilding efforts and increases international awareness of both specific projects and grassroots peacebuilding in general;
    Saferworld: UK-based independent international organisation working to prevent violent conflict and build safer lives;
    Search for Common Ground: international organization founded in 1982 and working in 35 countries that uses evidence-based approaches to transform the way communities deal with conflict towards cooperative solutions
    Seeds of Peace: New York City-based nonprofit that works to empower youth from areas of conflict by inviting them to an international camp in Maine for leadership training and relationship building
    Tuesday's Children: New York-based organization that brings together teens, ages 15–20, from the New York City area and around the world who share a "common bond"—the loss of a family member due to an act of terrorism. Launched in 2008, Project COMMON BOND has so far helped 308 teenagers from 15 different countries and territories turn their experiences losing a loved one to terrorism into positive actions that can help others exposed to similar tragedy. Participants share the vision of the program to "Let Our Past Change the Future."[49]
    UNOY Peacebuilders (United Network of Young Peacebuilders): The Hague-based network of young leaders and youth organizations that facilitates affiliated organizations' peacebuilding efforts through networking, sharing information, research and fundraising

Research and academic institutes
United States Institute of Peace Headquarters in Washington D.C.

    Center for Justice and Peacebuilding: academic program at Eastern Mennonite University; promotes peacebuilding, creation care, experiential learning, and cross-cultural engagement; teachings are based on Mennonite Christianity
    Center for Peacebuilding and Development: academic center at American University's School of International Service; promotes cross-cultural development of research and practices in peace education, civic engagement, nonviolent resistance, conflict resolution, religion and peace, and peacebuilding
    Irish Peace Institute: promotes peace and reconciliation in Ireland and works to apply lessons from Ireland's conflict resolution to other conflicts
    Joan B. Kroc Institute for International Peace Studies: degree-granting institute at the University of Notre Dame; promotes research, education and outreach on the causes of violent conflict and the conditions for sustainable peace
    United States Institute of Peace: non-partisan federal institution that works to prevent or end violent conflict around the world by sponsoring research and using it to inform actions
    University for Peace: international institution of higher education located in Costa Rica; aims to promote peace by engaging in teaching, research, training and dissemination of knowledge necessary for building peace
    swisspeace: a practice-oriented peace research institute that is associated with the University of Basel, Switzerland; analyzes the causes of violent conflicts and develops strategies for their peaceful transformation.

Role of women

Women have traditionally played a limited role in peacebuilding processes even though they often bear the responsibility for providing for their families' basic needs in the aftermath of violent conflict. They are especially likely to be unrepresented or underrepresented in negotiations, political decision-making, upper-level policymaking and senior judicial positions. Many societies' patriarchal cultures prevent them from recognizing the role women can play in peacebuilding.[50] However, many peacebuilding academics and the United Nations have recognized that women play a vital role in securing the three pillars of sustainable peace: economic recovery and reconciliation, social cohesion and development and political legitimacy, security and governance.[51][52]

In October 2000, United Nations Security Council Resolution 1325 (S/RES/1325) on women, peace, and security was adopted unanimously by the UN Security Council, after recalling resolutions 1261 (1999), 1265 (1999), 1296 (2000), and 1314 (2000). The resolution acknowledged the disproportionate and unique impact of armed conflict on women and girls. It calls for the adoption of a gender perspective to consider the special needs of women and girls during conflict, repatriation and resettlement, rehabilitation, reintegration, and post-conflict reconstruction.[53]

In 2010, at the request of the Security Council, the Secretary-General issued an updated report on women's participation in peacebuilding. The report outlines the challenges women continue to face in participating in recovery and peacebuilding process and the negative impact this exclustion has on them and societies more broadly. To respond to these challenges, it advocates a comprehensive 7-point action plan covering the seven commitment areas: mediation; post-conflict planning; financing; civilian capacity; post-conflict governance; rule of law; and economic recovery. The action plan aims to facilitate progress on the women, peace and security agenda. The monitoring and implementation of this action plan is now being led jointly by the Peacebuilding Support Office and UN Women.[54] In April 2011, the two organizations convened a workshop to ensure that women are included in future post-disaster and post-conflict planning documents. In the same year, the PBF selected seven gender-sensitive peacebuilding projects to receive $5 million in funding.[51]

Porter discusses the growing role of female leadership in countries prone to war and its impact on peacebuilding. When the book was written, seven countries prone to violent conflict had female heads of state. Ellen Johnson-Sirleaf of Liberia and Michelle Bachelet of Chile were the first female heads of state from their respective countries and President Johnson-Sirleaf was the first female head of state in Africa. Both women utilized their gender to harness "the power of maternal symbolism - the hope that a woman could best close wounds left on their societies by war and dictatorship."[55]
Early twenty-first century examples
  UN PBC and PBF projects as of 2012[56]
  UN PBF projects as of 2012[57]

The UN Peacebuilding Commission works in Burundi, Central African Republic, Guinea, Guinea-Bissau, Liberia and Sierra Leone[56] and the UN Peacebuilding Fund funds projects in Burundi, Central African Republic, Chad, Comoros, Côte d'Ivoire, the Democratic Republic of the Congo, Guinea, Guinea Bissau, Guatemala, Haiti, Kenya, Kyrgyzstan, Lebanon, Liberia, Nepal, Niger, Sierra Leone, Somalia, Sri Lanka, Sudan, South Sudan, Timor-Leste and Uganda.[57] Other UN organizations are working in Haiti (MINUSTAH),[58] Lebanon,[59] Afghanistan, Kosovo and Iraq.

The World Bank's International Development Association maintains the Trust Fund for East Timor in Timor-Leste. The TFET has assisted reconstruction, community empowerment and local governance in the country.[60]

After having carried out the War in Afghanistan and the War in Iraq, the United States followed its attacks on the two countries by investing $104 billion in reconstruction and relief efforts. The Iraq Relief and Reconstruction Fund alone received $21 billion during FY2003 and FY2004.[61] The money came from the United States Department of State, United States Agency for International Development and the United States Department of Defense and included funding for security, health, education, social welfare, governance, economic growth and humanitarian issues.[62]

Civil society organisations contribute to peacebuilding. This for example is the case in Kenya, according to the magazine D+C Development and Cooperation. After the election riots in Kenya in 2008, civil society organisations started programmes to avoid similar disasters in the future, for instance the Truth, Justice and Reconciliation Commission (TJRC) and peace meetings organised by the church and they supported the National Cohesion and Integration Commission.
Results

In 2010, the UNPBC conducted a review of its work with the first four countries on its agenda.[63] An independent review by the Pulitzer Center on Crisis Reporting also highlighted some of the PBC's early successes and challenges.[64]

One comprehensive study finds that UN peacebuilding missions significantly increase the likelihood of democratization.[65]
Criticisms

Jennifer Hazen contends there are two major debates relating to peacebuilding; the first centres on the role of the liberal democratic model in designing peacebuilding activities and measuring outcomes and the other one questions the role of third-party actors in peacebuliding.[5]

Regarding the debate about the role of the liberal democratic model in peacebuilding, one side contends that liberal democracy is a viable end goal for peacebuilding activities in itself but that the activities implemented to achieve it need to be revised; a rushed transition to democratic elections and market economy can undermine stability and elections held or economic legislation enacted are an inappropriate yardstick for success. Institutional change is necessary and transitions need to be incremental.

Another side contends that liberal democracy might be an insufficient or even inappropriate goal for peacebuilding efforts and that the focus must be on a social transformation to develop non-violent mechanisms of conflict resolution regardless of their form.[5]

With regards to the role of third-party actors, David Chandler contends that external support creates dependency and undermines local and domestic politics, thus undermining autonomy and the capacity for self-governance and leaving governments weak and dependent on foreign assistance once the third-party actors depart.[66] Since the logic of peacebuilding relies on building and strengthening institutions to alter societal beliefs and behaviour, success relies on the populations' endorsement of these institutions. Any third party attempt at institution building without genuine domestic support will result in hollow institutions - this can lead to a situation in which democratic institutions are established before domestic politics have developed in a liberal, democratic fashion, and an unstable polity.

Séverine Autesserre offers a different approach, which focuses on the role of everyday practices in peacebuilding.[67] She argue that the foreign peace builders' everyday practices, habits, and narratives strongly influence peacebuilding effectiveness. Autesserre stresses that international peacebuilders do not fully understand the conflicts they are trying to resolve because they rarely include local leaders in decision making, do not speak the local languages, and do not stay posted long enough to oversee effective change. This leaves decision makers out of touch with the key players in the peacebuilding process.

Jeremy Weinstein challenges the assumption that weak and failing states cannot rebuild themselves. He contends that through the process of autonomous recovery, international peacekeeping missions can be unnecessary for recovery because they assume that conflicts cannot be resolved by the country internally.[68] He describes autonomous recovery as a "process through which countries achieve a lasting peace, a systematic reduction in violence, and postwar political and economic development in the absence of international intervention".[68] Through peace and institutions generated by allowing war to run its natural course, autonomous recovery can be viewed as a success. He claims that war leads to peace by allowing the naturally stronger belligerent gain power, rather than a brokered peace deal that leaves two sides still capable of fighting. Secondly he claims that war provides a competition among providers of public goods until one can control a monopoly. He says that war can create an incentive to create institutions at all levels in order to consolidate power and extract resources from the citizens while also giving some power to the citizens depending upon how much the institutions rely on them for tax revenues.

Virginia Fortna of Columbia University, however, holds that peacekeeping interventions actually do substantively matter following the end of a civil war.[69] She claims that selection bias, where opponents point only to failed peacekeeping interventions and do not compare these missions to those situations where interventions do not occur, is partly to blame for criticisms. Fortna says that peacekeeping missions rarely go into easily resolvable situations while they are sent into tougher, more risky post war situations where missions are more likely to fail, and peace agreements are unlikely to be committed to. When all factors of a certain peacekeeping case study are properly considered, Fortna shows that peacekeeping missions do in fact help increase the chances of sustained peace after a civil war.
Implementation

Michael N. Barnett et al. criticize peacebuilding organizations for undertaking supply-driven rather than demand-driven peacebuilding; they provide the peacebuilding services in which their organization specializes, not necessarily those that the recipient most needs.[70] In addition, he argues that many of their actions are based on organizations precedent rather than empirical analysis of which interventions are and are not effective.[18] More recently, Ben Hillman has criticized international donor efforts to strengthen local governments in the wake of conflict. He argues that international donors typically do not have the knowledge, skills or resources to bring meaningful change to the way post-conflict societies are governed.[71][72]
Perpetuation of cultural hegemony

Many academics argue that peacebuilding is a manifestation of liberal internationalism and therefore imposes Western values and practices onto other cultures. Mac Ginty states that although peacebuilding does not project all aspects of Western culture on to the recipient states, it does transmit some of them, including concepts like neoliberalism that the West requires recipients of aid to follow more closely than most Western countries do.[73] Barnett also comments that the promotion of liberalization and democratization may undermine the peacebuilding process if security and stable institutions are not pursued concurrently.[74] Richmond has shown how 'liberal peacebuilding' represents a political encounter that may produce a post-liberal form of peace. Local and international actors, norms, institutions and interests engage with each other in various different contexts, according to their respective power relations and their different conceptions of legitimate authority structures.[75] Knowles and Matisek adapt to the inherent problem of peacebuilding by arguing for a better vision of security force assistance (SFA) - donor states/actors trying to build effective host-nation security forces in a weak state - where they shift the focus from military effectiveness (a typical western hegemonic approach) to one that empowers local informal security actors to take ownership of their security and to be a part of the strategic vision of the state. Such an approach attempts to bypass the inherent flaws of SFA imposing a Western security architecture on a state that does not have the institutions, resources, or civil-military relations to support this 'alien' form of security sector reform (SSR).[76]
See also

    Creative peacebuilding
    Education for justice
    Environmental peacebuilding
    Religion and peacebuilding
    Peace and conflict studies
    Peacebuilding in Jammu and Kashmir
    Nation-building
    State-building

Notes

"What is Strategic Peacebuilding?". Kroc Institute for International Peace Studies, University of Notre Dame. 2018. Retrieved 2018-12-25.
Rapoport, A. (1989). The origins of violence: Approaches to the study of conflict. New York, NY: Paragon House.
Rapoport, A. (1992). Peace: An idea whose time has come. Ann Arbor, MI: University of Michigan Press.
Coning, C (2013). "Understanding Peacebuilding as Essentially Local". Stability: International Journal of Security and Development. 2 (1): 6. doi:10.5334/sta.as.
454654, Jennifer M. (2007). "Can Peacekeepers Be Peacebuilders?". International Peacekeeping. 14 (3): 323–338. doi:10.1080/13533310701422901. S2CID 144697583.
Peacebuilding & The United Nations, United Nations Peacebuilding Support Office, United Nations. Retrieved 18 March 2012.
Sandole 92, 101
"Peace Building Initiative - History". www.peacebuildinginitiative.org. Retrieved 2018-12-25.
Paul., Lederach, John (1996). Enredos, pleitos y problemas: una guía práctica para ayudar a resolver conflictos. Santafé de Bogotá, Colombia: Ediciones CLARA-SEMILLA. ISBN 978-8489389069. OCLC 35626561.
Paul., Lederach, John (1995). Preparing for peace: conflict transformation across cultures. Syracuse, N.Y.: Syracuse University Press. ISBN 978-0815626565. OCLC 31815462.
Paul., Lederach, John (1997). Building peace: sustainable reconciliation in divided societies. Washington, D.C. ISBN 978-1878379733. OCLC 37606240.
Keating XXXIV
Lederach, John Paul. "Justpeace". homepage.univie.ac.at. Archived from the original on 2017-02-15. Retrieved 2018-12-25.
"An Agenda for Peace". UN Secretary-General. 31 Jan 1992. Retrieved 15 April 2012.
Barnett 36
"About PSBO". United Nations. Retrieved 18 March 2012.
Barnett 43
Barnett 53
"Negative versus Positive Peace - Irénées". www.irenees.net. Retrieved 2018-12-25.
Galtung, Johan (2011), "Peace, Positive and Negative", The Encyclopedia of Peace Psychology, American Cancer Society, doi:10.1002/9780470672532.wbepp189, ISBN 9780470672532
Galtung, Johan (August 1990). "Cultural Violence". Journal of Peace Research. 27 (3): 291–305. doi:10.1177/0022343390027003005. ISSN 0022-3433. S2CID 220989188.
Lijphart, Arend (2004). "Constitutional design for divided societies" (PDF). Journal of Democracy. 15 (2): 96–109 [97]. doi:10.1353/jod.2004.0029. S2CID 19665603. Archived from the original (PDF) on 2006-10-28. Retrieved 2020-01-22.
McCulloch, Allison (June 2013). "Does Moderation Pay? Centripetalism in Deeply Divided Societies". Ethnopolitics. 12 (2): 111–132. doi:10.1080/17449057.2012.658002. ISSN 1744-9057.
Paul H. Nitze School of Advanced International Studies (SAIS). "Approaches- Peacebuilding". Conflict Management Toolkit. Retrieved 18 March 2012.
Keating XXXVII
Sandole 13–14
Sandole 12
Barnett et al. 49–50
Mac Ginty 212
Mac Ginty, R (2012). "Against Stabilization". Stability: International Journal of Security and Development. 1 (1): 20–30. doi:10.5334/sta.ab.
Zartman, I. William (2001). "The Timing of Peace Initiatives: Hurting Stalemates and Ripe Moments" (PDF).
A historic resolution to protect cultural heritage, The UNESCO Courier
Action plan to preserve heritage sites during conflict - United Nations Peacekeeping, 12 April 2019.
"Austrian Armed Forces Mission in Lebanon" (in German).
UNESCO Director-General calls for stronger cooperation for heritage protection at the Blue Shield International General Assembly. UNESCO, 13 September 2017.
"Karl von Habsburg auf Mission im Libanon" (in German).
Corine Wegener, Marjan Otter: Cultural Property at War: Protecting Heritage during Armed Conflict. In: The Getty Conservation Institute, Newsletter 23.1, Spring 2008.
Eden Stiffman: Cultural Preservation in Disasters, War Zones. Presents Big Challenges. In: The Chronicle Of Philanthropy, 11 May 2015.
"Mandate of the Peacebuilding Commission". United Nations. Retrieved 18 March 2012.
"How we fund". United Nations. Retrieved 18 March 2012.
Barnett et al. 38
Barnett et al. 43
ADE, Thematic Evaluation of European Commission Support to Conflict Prevention and Peace-building, Evaluation for the Evaluation Unit of DEVCO, October 2011, http://ec.europa.eu/europeaid/how/evaluation/evaluation_reports/2011/1291_docs_en.htm<>
See the 2012 report of the Swiss Federal Department of Foreign Affairs (FDFA) [1]
Barnett et al. 38–40
Edward Luttwak "Franco-German Reconciliation: The overlooked role of the Moral Re-Armament movement", in Douglas Johnston and Cynthia Sampson (eds.), Religion, the Missing Dimension of Statecraft, Oxford University Press, 1994, pp37–63.
See the 2012 report of the Swiss Federal Department of Foreign Affairs (FDFA), page 20 [2]
Peacemaker Camp 2007, website
Gibson, Caitlin (1 August 2011). "Teens affected by terrorism unite to promote peace". The Washington Post.
Porter 190
"Policy Issues". United Nations. Retrieved 15 April 2012.
Porter 184
"Security Council, unanimously adopting resolution 1325 (2000), calls for broad participation of women in peace-building post-conflict reconstruction". United Nations. 31 October 2000. Archived from the original on 2006-09-29. Retrieved 2019-11-20.
"Women's Participation in Peacebuilding" (PDF). United Nations Security Council. Retrieved 2 April 2012.
Porter 185
"United Nations Peacebuilding Commission". United Nations. Retrieved 10 April 2012.
"Where we fund-United Nations Peacebuilding Fund". United Nations. Retrieved 10 April 2012.
Keating 120
Mac Ginty 180
Keating XLII-XLIII
Tarnoff 14
Tarnoff 2
"2010 Review". United Nations. Retrieved 10 April 2012.
Moore, Jina. "United Nations Peacebuilding Commission in Africa". 9 Dec 2011. Pulitzer Center on Crisis Reporting. Retrieved 2 April 2012.
Steinert, Janina Isabel; Grimm, Sonja (2015-11-01). "Too good to be true? United Nations peacebuilding and the democratization of war-torn states". Conflict Management and Peace Science. 32 (5): 513–535. doi:10.1177/0738894214559671. ISSN 0738-8942. S2CID 16428285.
David Chandler, Empire in Denial: The Politics of State-building, London: Pluto Press, 2006.
Autesserre, Severine (2014). Peaceland: Conflict Resolution and the Everyday Politics of International Intervention. Cambridge University Press.
Weinstein, Jeremy. "Autonomous Recovery and International Intervention in Comparative Perspective - Working Paper 57". Center For Global Development. Retrieved 2017-05-19.
Fortna, Virginia. "Does Peacekeeping Keep Peace? International Intervention and the Duration of Peace After Civil War" (PDF). International Studies Quarterly. Retrieved 2017-05-19.
Barnett 48
Hillman, Ben (2011). "The Policymaking Dimension of Post-Conflict Governance: the Experience of Aceh, Indonesia" (PDF). Conflict Security and Development. 11 (5): 133–153. doi:10.1080/14678802.2011.641769. S2CID 154508600.
Hillman, Ben (2012). "Public Administration Reform in Post-Conflict Societies: Lessons from Aceh, Indonesia" (PDF). Public Administration and Development. 33: 1–14. doi:10.1002/pad.1643.
Mac Ginty 38
Barnett 51
Oliver P Richmond, A Post-Liberal Peace, Routledge, 2011

    Emily Knowles and Jahara Matisek (2019). "Western Security Force Assistance in Weak States: Time for a Peacebuilding Approach". The RUSI Journal. 164 (3): 10–21. doi:10.1080/03071847.2019.1643258. S2CID 200064053.

References

    Andersson, Ruben; Weigand, Florian (2015). "Intervention at Risk: The Vicious Cycle of Distance and Danger in Mali and Afghanistan". Journal of Intervention and Statebuilding. 9 (4): 519–541. doi:10.1080/17502977.2015.1054655. S2CID 142711187.
    Autesserre, Severine (2014). Peaceland: Conflict Resolution and the Everyday Politics of International Intervention. UK: Cambridge University Press.
    Barnett, Michael; Kim, Hunjoon; O'Donnell, Madalene; Sitea, Laura (2007). "Peacebuilding: What Is in a Name?". Global Governance. 13: 35–58. doi:10.1163/19426720-01301004.
    Duffield, Mark R. (2010). "Risk-Management and the Fortified Aid Compound: Everyday Life in Post-Interventionary Society". Journal of Intervention and Statebuilding. 4 (4): 453–474. doi:10.1080/17502971003700993. S2CID 143968012.
    Keating, Tom; Knight, W., eds. (2004). Building Sustainable Peace. Canada: United Nations University Press and The University of Alberta Press. ISBN 978-92-808-1101-8.
    Kopelman, Shirli (February 2020). "Tit for tat and beyond: the legendary work of Anatol Rapoport". Negotiation and Conflict Management Research. 13 (1): 60–84. doi:10.1111/ncmr.12172.
    Mac Ginty, Roger (2011). International Peacebuilding and Local Resistance. United Kingdom: Palgrave Macmillan. ISBN 978-0-230-27376-4.
    Ndura-Ouédraogo and, Elavie; Amster, Randall, eds. (2009). Building Cultures of Peace: Transdisciplinary Voices of Hope and Action. Newcastle, UK: Cambridge Scholars Publishing. ISBN 9781443813297. OCLC 435734902.
    "Peace, Peacebuilding, Peacemaking" (PDF). Berghof Glossary on Conflict Transformation. Berlin, Germany: Berghof Foundation. 2012. pp. 59–64. ISBN 978-3-941514-09-6. Retrieved 6 March 2015.
    Porter, Elisabeth (2007). Peacebuilding: Women in International Perspective. Oxon, UK: Routledge. ISBN 978-0-415-39791-9.
    Richmond, Oliver (2011). A Post-Liberal Peace. UK: Routledge.
    Sandole, Dennis (2010). Peacebuilding. Cambridge, UK: Polity Press. ISBN 978-0-7456-4165-2.
    Schirch, Lisa (2006). Little Book of Strategic Peacebuilding. Little Books of Justice & Peacebuilding. Intercourse, PA: Good Books. ISBN 9781561484270. OCLC 56111659.
    Schirch, Lisa (2013). Conflict Assessment and Peacebuilding Planning: Toward a Participatory Approach to Human Security. Boulder, Colo.: Kumarian Press. ISBN 9781565495784. OCLC 805831468.
    Bojicic-Dzelilovic, Vesna (2017). "Owning the Peace in International Interventions: a Delusion or a Possibility?". hdl:10411/20875.
    Tarnoff, Curt; Marian L. Lawson (2011). Foreign Aid: An Introduction to U.S. Programs and Policy (Technical report). Congressional Research Service. R40213.
    Walters, Diana; Laven, Daniel; Davis, Peter (2017). Heritage & Peacebuilding. Suffolk, UK: Boydell Press. ISBN 9781783272167.

Categories:

    PeacebuildingHumanitarian aidInternational developmentGlobal citizenship

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Español
    فارسی
    Français
    Bahasa Indonesia
    Italiano
    Polski
    Português
    Русский

Edit links

    This page was last edited on 7 May 2021, at 11:35 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

Anarchism: The Feminist Connection

! Phenomenon-based learning

!! https://en.wikipedia.org/wiki/Phenomenon-based_learning

From Wikipedia, the free encyclopedia

Ambox current red Asia Australia.svg
	
Parts of this article (those related to Finland) need to be updated. Please update this article to reflect recent events or newly available information. (December 2017)

Phenomenon-based learning (PhBL or PhenoBL) is a multidisciplinary, constructivist form of learning or pedagogy where students study a topic or concept in a holistic approach instead of in a subject-based approach. PhBL includes both topical learning (also known as topic-based learning or instruction), where the phenomenon studied is a specific topic, event, or fact, and thematic learning (also known as theme-based learning or instruction), where the phenomenon studied is a concept or idea. PhBL emerged as a response to the idea that traditional, subject-based learning is outdated and removed from the real-world and does not offer the optimum approach to development of 21st century skills. It has been used in a wide variety of higher educational institutions and more recently in grade schools.[1]
Contents

    1 Features
        1.1 Inquiry-based
        1.2 Anchored in the real world
        1.3 Contextual
        1.4 Authenticity
        1.5 Constructivism
    2 Topical learning
    3 Thematic learning
    4 Finland
    5 References
    6 Further reading
    7 External links

Features

PhBL forges connections across content and subject areas within the limits of the particular focus.[2] It can be a used as part of teacher-centered passive learning although in practice it is used more in student-centered active learning environments, including inquiry-based learning, problem-based learning, or project-based learning. An example of topical learning might be studying a phenomenon or topic (such as a geographical feature, historical event, or notable person) instead of isolated subjects (such as geography, history, or literature). In the traditional subject-based approach of most Western learning environments, the learner would spend a set amount of time studying each subject; with topical learning, the trend is to spend a greater amount of time focused on the broader topic.[3] During this topical study, specific knowledge or information from the individual subjects would normally be introduced in a relevant context instead of in isolation or the abstract.[4]

Topical learning is most frequently applied as a learner-centered approach, where the student, not the teacher, selects the topic or phenomenon to be studied. This is thought to be more successful at engaging students and providing deeper learning as it will be more likely to align with their own interests and goals.[citation needed] This aspect has also been recognized as facilitating the integration of education as well as a method to enable students to obtain core knowledge and skills across a range of subjects, it has been considered effective in promoting enthusiasm and greater organization, communication, and evaluation.[5][4][3]

Similar to project-based learning, it also provides opportunities to explore a topic or concept in detail. With deeper knowledge students develop their own ideas, awareness, and emotions about the topic.[citation needed]

While not absolute, PhBL has several main features:
Inquiry-based

The PhBL approach supports learning in accordance with inquiry learning, problem-based learning, and project and portfolio learning in formal educational as well as in the workplace. It begins with studying and developing an understanding of the phenomenon through inquiry. A problem-based learning approach can then be used to discover answers and develop conclusions about the topic.
Anchored in the real world

The phenomenon-based approach is a form of anchored learning, although it is not necessarily linked to technology. The questions asked and items studied are anchored in real-world phenomena, and the skills that are developed and information learned can be applied across disciplines and beyond the learning environments in real-world situations.[1]
Contextual

PhBL provides a process where new information is applied to the phenomenon or problem. This context demonstrates to the learner immediate utility value of the concepts and information being studied. Application and use of this information during the learning situation is very important for retention. Information that is absorbed only through listening or reading, or in the abstract (such as formulas and theories) without clear and obvious application to the learning at hand, or to real-world application, often remain in short-term memory and are not internalized.[1]
Authenticity

PhBL can demonstrate the authenticity of learning, a key requirement for deeper learning. In a PhBL environment, cognitive processes correspond to those in the actual/real-world situations where the learned subject matter or skills are used. The intent is to bring genuine practices and processes into learning situations to allow participation in the "expert culture" of the area and practices being studied.[1]
Constructivism

PhBL is a constructivist form of learning, in which learners are seen as active knowledge builders and information is seen as being constructed as a result of problem-solving. Information and skills are constructed out of ‘little pieces’ into a whole relevant to the situation at the time. When phenomenon based learning occurs in a collaborative setting (the learners work in teams, for example), it supports the socio-constructivist and sociocultural learning theories, in which information is not seen only as an internal element of an individual; instead, information is seen as being formed in a social context. Central issues in the sociocultural learning theories include cultural artifacts (e.g. systems of symbols such as language, mathematical calculation rules and different kinds of thinking tools) – not every learner needs to reinvent the wheel, they can use the information and tools transmitted by cultures.[1]
Topical learning

Topical learning (TL) has been used for decades to study a specific topic such as a geographical feature, historical event, legal case, medical condition, or notable person, each of which may cover more than one academic subject such as geography, history, law, or medicine. TL forges connections across content areas within the limits of the particular topic.[2] As a cross-disciplinary application, it has been used as a means of assisting foreign language learners to use the topic as a means to learn the foreign language. There are several benefits of topic-based learning. When students focus on learning a topic, the specific subject, such as a foreign language, becomes an important tool or medium to understand the topic, thus providing a meaningful way for learners to use and learn the subject (or language).
Thematic learning
Main article: Thematic learning

Thematic learning is used to study a macro theme, such as a broad concept or large and integrated system (political system, ecosystem, growth, etc.). In the United States, it is used to study concepts identified in the Core Curriculum Content Standards. As with topical learning, it forges connections across content areas within the limits of the particular topic.[2] Proponents state that by studying the broad concepts that connect what would otherwise be isolated subject areas, learners can develop skills and insights for future learning and the workplace.[6]
Finland
Main article: Education in Finland

Commencing in the 2016–2017 academic year, Finland will begin implementing educational reform that will mandate that topical learning (phenomenon-based learning) be introduced alongside traditional subject-based instruction. As part of a new National Curriculum Framework, it will apply to all basic schools for students aged 7–16 years old. Finnish schools have used PhBL for several decades, but it was not previously mandatory.[4] It is anticipated that educators around the world will be studying this development as Finland's educational system is considered to be a model of success by many.[4][7][8][3][9] This shift coincides with other changes that are encouraging development of 21st century skills such as collaboration, communication, creativity, and critical thinking.[10]
References

Phenomenal Education. Retrieved 2017-06-03
Differentiated Instruction – Thematic vs. Topical Instruction, Richland School District webpage Archived 2017-12-13 at the Wayback Machine. Retrieved 2017-06-02
Nick Nedeljkovic: Phenomenon-Based Learning, October 24, 2016
Bashaer Al Kilani: What is Phenomenon-Based Learning?, Teach Middle East, April 21, 2016. Retrieved 2017-06-03
j. Mires Peter w. Howie r. m. Harde, Gary (1998). "A 'topical' approach to planned teaching and using a topic-based study guide". Medical Teacher. 20 (5): 438–441. doi:10.1080/01421599880535.
Thematic Instruction, Funderstanding. April 14, 2011. Retrieved 2017-06-03
Adam Taylor, 26 Amazing Facts About Finland's Unorthodox Education System, Business Insidere, Dec 14, 2011. Retrieved 2017-06-03
Andrew Freeman: Finland’s Education System: 10 Surprising Facts That Americans Shouldn’t Ignore, Takepart, August 14, 2012 Archived December 4, 2016, at the Wayback Machine. Retrieved 2017-06-02
No, Finland isn’t ditching traditional school subjects. Here’s what’s really happening. The Washington Post, March 26, 2015. Retrieved 2017-06-03

    Georgetown – Augmented Learning and Teaching The Skills of the 21st Century, The Center For Work Ethic Development. Retrieved 2017-06-03

Further reading

    Symeonidis, Vasileios; Schwarz, Johanna F. (December 2016). "Phenomenon-Based Teaching and Learning through the Pedagogical Lenses of Phenomenology: The Recent Curriculum Reform in Finland". 

External links

    Phenomenal Education
    How is Finland building schools of the future?, Enterprise Innovation
    Next Generation Science Standards – Using Phenomena in NGSS-Designed Lessons and Units
    FAO – Agroecology Knowledge Hub

Categories:

    PedagogyLearning methodsLearning programsLearning programs in Europe

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Deutsch
    فارسی
    Русский
    Suomi

Edit links

    This page was last edited on 12 March 2021, at 10:47 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki




! Polymerase chain reaction

!! https://en.wikipedia.org/wiki/Polymerase_chain_reaction

From Wikipedia, the free encyclopedia
  (Redirected from PCR)
Jump to navigation
Jump to search
"PCR" redirects here. For other uses, see PCR (disambiguation).
A strip of eight PCR tubes, each containing a 100 μL reaction mixture

Polymerase chain reaction (PCR) is a method widely used to rapidly make millions to billions of copies (complete copies or partial copies) of a specific DNA sample, allowing scientists to take a very small sample of DNA and amplify it (or a part of it) to a large enough amount to study in detail. 

! PCR was invented in 1983 by the American biochemist Kary Mullis at Cetus Corporation. https://en.wikipedia.org/wiki/Kary_Mullis



PRC is fundamental to many of the procedures used in genetic testing and research, including analysis of ancient samples of DNA and identification of infectious agents. Using PCR, copies of very small amounts of DNA sequences are exponentially amplified in a series of cycles of temperature changes. PCR is now a common and often indispensable technique used in medical laboratory research for a broad variety of applications including biomedical research and criminal forensics.[1][2]

The majority of PCR methods rely on thermal cycling. Thermal cycling exposes reactants to repeated cycles of heating and cooling to permit different temperature-dependent reactions – specifically, DNA melting and enzyme-driven DNA replication. PCR employs two main reagents – primers (which are short single strand DNA fragments known as oligonucleotides that are a complementary sequence to the target DNA region) and a DNA polymerase. In the first step of PCR, the two strands of the DNA double helix are physically separated at a high temperature in a process called nucleic acid denaturation. In the second step, the temperature is lowered and the primers bind to the complementary sequences of DNA. The two DNA strands then become templates for DNA polymerase to enzymatically assemble a new DNA strand from free nucleotides, the building blocks of DNA. As PCR progresses, the DNA generated is itself used as a template for replication, setting in motion a chain reaction in which the original DNA template is exponentially amplified.

Almost all PCR applications employ a heat-stable DNA polymerase, such as Taq polymerase, an enzyme originally isolated from the thermophilic bacterium Thermus aquaticus. If the polymerase used was heat-susceptible, it would denature under the high temperatures of the denaturation step. Before the use of Taq polymerase, DNA polymerase had to be manually added every cycle, which was a tedious and costly process.[3]

Applications of the technique include DNA cloning for sequencing, gene cloning and manipulation, gene mutagenesis; construction of DNA-based phylogenies, or functional analysis of genes; diagnosis and monitoring of genetic disorders; amplification of ancient DNA;[4] analysis of genetic fingerprints for DNA profiling (for example, in forensic science and parentage testing); and detection of pathogens in nucleic acid tests for the diagnosis of infectious diseases.
Placing a strip of eight PCR tubes into a thermal cycler
Contents

    1 Principles
        1.1 Procedure
        1.2 Stages
    2 Optimization
    3 Applications
        3.1 Selective DNA isolation
        3.2 Amplification and quantification of DNA
        3.3 Medical and diagnostic applications
        3.4 Infectious disease applications
        3.5 Forensic applications
        3.6 Research applications
    4 Advantages
    5 Limitations
    6 Variations
    7 History
        7.1 Patent disputes
    8 See also
    9 References
    10 External links

Principles
A thermal cycler for PCR
An older, three-temperature thermal cycler for PCR

PCR amplifies a specific region of a DNA strand (the DNA target). Most PCR methods amplify DNA fragments of between 0.1 and 10 kilo base pairs (kbp) in length, although some techniques allow for amplification of fragments up to 40 kbp.[5] The amount of amplified product is determined by the available substrates in the reaction, which becomes limiting as the reaction progresses.[6]

A basic PCR set-up requires several components and reagents,[7] including:

    a DNA template that contains the DNA target region to amplify
    a DNA polymerase; an enzyme that polymerizes new DNA strands; heat-resistant Taq polymerase is especially common,[8] as it is more likely to remain intact during the high-temperature DNA denaturation process
    two DNA primers that are complementary to the 3′ (three prime) ends of each of the sense and anti-sense strands of the DNA target (DNA polymerase can only bind to and elongate from a double-stranded region of DNA; without primers, there is no double-stranded initiation site at which the polymerase can bind);[9] specific primers that are complementary to the DNA target region are selected beforehand, and are often custom-made in a laboratory or purchased from commercial biochemical suppliers
    deoxynucleoside triphosphates, or dNTPs (sometimes called "deoxynucleotide triphosphates"; nucleotides containing triphosphate groups), the building blocks from which the DNA polymerase synthesizes a new DNA strand
    a buffer solution providing a suitable chemical environment for optimum activity and stability of the DNA polymerase
    bivalent cations, typically magnesium (Mg) or manganese (Mn) ions; Mg2+ is the most common, but Mn2+ can be used for PCR-mediated DNA mutagenesis, as a higher Mn2+ concentration increases the error rate during DNA synthesis;[10] and monovalent cations, typically potassium (K) ions[better source needed]

The reaction is commonly carried out in a volume of 10–200 μL in small reaction tubes (0.2–0.5 mL volumes) in a thermal cycler. The thermal cycler heats and cools the reaction tubes to achieve the temperatures required at each step of the reaction (see below). Many modern thermal cyclers make use of the Peltier effect, which permits both heating and cooling of the block holding the PCR tubes simply by reversing the electric current. Thin-walled reaction tubes permit favorable thermal conductivity to allow for rapid thermal equilibrium. Most thermal cyclers have heated lids to prevent condensation at the top of the reaction tube. Older thermal cyclers lacking a heated lid require a layer of oil on top of the reaction mixture or a ball of wax inside the tube.
Procedure

Typically, PCR consists of a series of 20–40 repeated temperature changes, called thermal cycles, with each cycle commonly consisting of two or three discrete temperature steps (see figure below). The cycling is often preceded by a single temperature step at a very high temperature (>90 °C (194 °F)), and followed by one hold at the end for final product extension or brief storage. The temperatures used and the length of time they are applied in each cycle depend on a variety of parameters, including the enzyme used for DNA synthesis, the concentration of bivalent ions and dNTPs in the reaction, and the melting temperature (Tm) of the primers.[11] The individual steps common to most PCR methods are as follows:

    Initialization: This step is only required for DNA polymerases that require heat activation by hot-start PCR.[12] It consists of heating the reaction chamber to a temperature of 94–96 °C (201–205 °F), or 98 °C (208 °F) if extremely thermostable polymerases are used, which is then held for 1–10 minutes.
    Denaturation: This step is the first regular cycling event and consists of heating the reaction chamber to 94–98 °C (201–208 °F) for 20–30 seconds. This causes DNA melting, or denaturation, of the double-stranded DNA template by breaking the hydrogen bonds between complementary bases, yielding two single-stranded DNA molecules.
    Annealing: In the next step, the reaction temperature is lowered to 50–65 °C (122–149 °F) for 20–40 seconds, allowing annealing of the primers to each of the single-stranded DNA templates. Two different primers are typically included in the reaction mixture: one for each of the two single-stranded complements containing the target region. The primers are single-stranded sequences themselves, but are much shorter than the length of the target region, complementing only very short sequences at the 3′ end of each strand.

    It is critical to determine a proper temperature for the annealing step because efficiency and specificity are strongly affected by the annealing temperature. This temperature must be low enough to allow for hybridization of the primer to the strand, but high enough for the hybridization to be specific, i.e., the primer should bind only to a perfectly complementary part of the strand, and nowhere else. If the temperature is too low, the primer may bind imperfectly. If it is too high, the primer may not bind at all. A typical annealing temperature is about 3–5 °C below the Tm of the primers used. Stable hydrogen bonds between complementary bases are formed only when the primer sequence very closely matches the template sequence. During this step, the polymerase binds to the primer-template hybrid and begins DNA formation.

    Extension/elongation: The temperature at this step depends on the DNA polymerase used; the optimum activity temperature for the thermostable DNA polymerase of Taq polymerase is approximately 75–80 °C (167–176 °F),[13][14] though a temperature of 72 °C (162 °F) is commonly used with this enzyme. In this step, the DNA polymerase synthesizes a new DNA strand complementary to the DNA template strand by adding free dNTPs from the reaction mixture that is complementary to the template in the 5′-to-3′ direction, condensing the 5′-phosphate group of the dNTPs with the 3′-hydroxy group at the end of the nascent (elongating) DNA strand. The precise time required for elongation depends both on the DNA polymerase used and on the length of the DNA target region to amplify. As a rule of thumb, at their optimal temperature, most DNA polymerases polymerize a thousand bases per minute. Under optimal conditions (i.e., if there are no limitations due to limiting substrates or reagents), at each extension/elongation step, the number of DNA target sequences is doubled. With each successive cycle, the original template strands plus all newly generated strands become template strands for the next round of elongation, leading to exponential (geometric) amplification of the specific DNA target region.

    The processes of denaturation, annealing and elongation constitute a single cycle. Multiple cycles are required to amplify the DNA target to millions of copies. The formula used to calculate the number of DNA copies formed after a given number of cycles is 2n, where n is the number of cycles. Thus, a reaction set for 30 cycles results in 230, or 1,073,741,824, copies of the original double-stranded DNA target region.

    Final elongation: This single step is optional, but is performed at a temperature of 70–74 °C (158–165 °F) (the temperature range required for optimal activity of most polymerases used in PCR) for 5–15 minutes after the last PCR cycle to ensure that any remaining single-stranded DNA is fully elongated.
    Final hold: The final step cools the reaction chamber to 4–15 °C (39–59 °F) for an indefinite time, and may be employed for short-term storage of the PCR products.

Schematic drawing of a complete PCR cycle
Ethidium bromide-stained PCR products after gel electrophoresis. Two sets of primers were used to amplify a target sequence from three different tissue samples. No amplification is present in sample #1; DNA bands in sample #2 and #3 indicate successful amplification of the target sequence. The gel also shows a positive control, and a DNA ladder containing DNA fragments of defined length for sizing the bands in the experimental PCRs.

To check whether the PCR successfully generated the anticipated DNA target region (also sometimes referred to as the amplimer or amplicon), agarose gel electrophoresis may be employed for size separation of the PCR products. The size of the PCR products is determined by comparison with a DNA ladder, a molecular weight marker which contains DNA fragments of known sizes, which runs on the gel alongside the PCR products.
Tucker PCR
Stages

As with other chemical reactions, the reaction rate and efficiency of PCR are affected by limiting factors. Thus, the entire PCR process can further be divided into three stages based on reaction progress:

    Exponential amplification: At every cycle, the amount of product is doubled (assuming 100% reaction efficiency). After 30 cycles, a single copy of DNA can be increased up to 1,000,000,000 (one billion) copies. In a sense, then, the replication of a discrete strand of DNA is being manipulated in a tube under controlled conditions.[15] The reaction is very sensitive: only minute quantities of DNA must be present.
    Leveling off stage: The reaction slows as the DNA polymerase loses activity and as consumption of reagents, such as dNTPs and primers, causes them to become more limited.
    Plateau: No more product accumulates due to exhaustion of reagents and enzyme.

Exponential Amplification.svg
Optimization
Main article: PCR optimization

In practice, PCR can fail for various reasons, in part due to its sensitivity to contamination causing amplification of spurious DNA products. Because of this, a number of techniques and procedures have been developed for optimizing PCR conditions.[16][17] Contamination with extraneous DNA is addressed with lab protocols and procedures that separate pre-PCR mixtures from potential DNA contaminants.[7] This usually involves spatial separation of PCR-setup areas from areas for analysis or purification of PCR products, use of disposable plasticware, and thoroughly cleaning the work surface between reaction setups. Primer-design techniques are important in improving PCR product yield and in avoiding the formation of spurious products, and the usage of alternate buffer components or polymerase enzymes can help with amplification of long or otherwise problematic regions of DNA. Addition of reagents, such as formamide, in buffer systems may increase the specificity and yield of PCR.[18] Computer simulations of theoretical PCR results (Electronic PCR) may be performed to assist in primer design.[19]
Applications
Selective DNA isolation

PCR allows isolation of DNA fragments from genomic DNA by selective amplification of a specific region of DNA. This use of PCR augments many ways, such as generating hybridization probes for Southern or northern hybridization and DNA cloning, which require larger amounts of DNA, representing a specific DNA region. PCR supplies these techniques with high amounts of pure DNA, enabling analysis of DNA samples even from very small amounts of starting material.

Other applications of PCR include DNA sequencing to determine unknown PCR-amplified sequences in which one of the amplification primers may be used in Sanger sequencing, isolation of a DNA sequence to expedite recombinant DNA technologies involving the insertion of a DNA sequence into a plasmid, phage, or cosmid (depending on size) or the genetic material of another organism. Bacterial colonies (such as E. coli) can be rapidly screened by PCR for correct DNA vector constructs.[20] PCR may also be used for genetic fingerprinting; a forensic technique used to identify a person or organism by comparing experimental DNAs through different PCR-based methods.
Electrophoresis of PCR-amplified DNA fragments:

    Father
    Child
    Mother


The child has inherited some, but not all of the fingerprints of each of its parents, giving it a new, unique fingerprint.

Some PCR fingerprint methods have high discriminative power and can be used to identify genetic relationships between individuals, such as parent-child or between siblings, and are used in paternity testing (Fig. 4). This technique may also be used to determine evolutionary relationships among organisms when certain molecular clocks are used (i.e. the 16S rRNA and recA genes of microorganisms).[21]
Amplification and quantification of DNA
See also: Use of DNA in forensic entomology

Because PCR amplifies the regions of DNA that it targets, PCR can be used to analyze extremely small amounts of sample. This is often critical for forensic analysis, when only a trace amount of DNA is available as evidence. PCR may also be used in the analysis of ancient DNA that is tens of thousands of years old. These PCR-based techniques have been successfully used on animals, such as a forty-thousand-year-old mammoth, and also on human DNA, in applications ranging from the analysis of Egyptian mummies to the identification of a Russian tsar and the body of English king Richard III.[22]

Quantitative PCR or Real Time PCR (qPCR,[23] not to be confused with RT-PCR) methods allow the estimation of the amount of a given sequence present in a sample—a technique often applied to quantitatively determine levels of gene expression. Quantitative PCR is an established tool for DNA quantification that measures the accumulation of DNA product after each round of PCR amplification.

qPCR allows the quantification and detection of a specific DNA sequence in real time since it measures concentration while the synthesis process is taking place. There are two methods for simultaneous detection and quantification. The first method consists of using fluorescent dyes that are retained nonspecifically in between the double strands. The second method involves probes that code for specific sequences and are fluorescently labeled. Detection of DNA using these methods can only be seen after the hybridization of probes with its complementary DNA takes place. An interesting technique combination is real-time PCR and reverse transcription. This sophisticated technique, called RT-qPCR, allows for the quantification of a small quantity of RNA. Through this combined technique, mRNA is converted to cDNA, which is further quantified using qPCR. This technique lowers the possibility of error at the end point of PCR,[24] increasing chances for detection of genes associated with genetic diseases such as cancer.[4] Laboratories use RT-qPCR for the purpose of sensitively measuring gene regulation. The mathematical foundations for the reliable quantification of the PCR[25] and RT-qPCR[26] facilitate the implementation of accurate fitting procedures of experimental data in research, medical, diagnostic and infectious disease applications.[27][28][29][30]
Medical and diagnostic applications

Prospective parents can be tested for being genetic carriers, or their children might be tested for actually being affected by a disease.[1] DNA samples for prenatal testing can be obtained by amniocentesis, chorionic villus sampling, or even by the analysis of rare fetal cells circulating in the mother's bloodstream. PCR analysis is also essential to preimplantation genetic diagnosis, where individual cells of a developing embryo are tested for mutations.

    PCR can also be used as part of a sensitive test for tissue typing, vital to organ transplantation. As of 2008, there is even a proposal to replace the traditional antibody-based tests for blood type with PCR-based tests.[31]
    Many forms of cancer involve alterations to oncogenes. By using PCR-based tests to study these mutations, therapy regimens can sometimes be individually customized to a patient. PCR permits early diagnosis of malignant diseases such as leukemia and lymphomas, which is currently the highest-developed in cancer research and is already being used routinely. PCR assays can be performed directly on genomic DNA samples to detect translocation-specific malignant cells at a sensitivity that is at least 10,000 fold higher than that of other methods.[32] PCR is very useful in the medical field since it allows for the isolation and amplification of tumor suppressors. Quantitative PCR for example, can be used to quantify and analyze single cells, as well as recognize DNA, mRNA and protein confirmations and combinations.[24]

Infectious disease applications

PCR allows for rapid and highly specific diagnosis of infectious diseases, including those caused by bacteria or viruses.[33] PCR also permits identification of non-cultivatable or slow-growing microorganisms such as mycobacteria, anaerobic bacteria, or viruses from tissue culture assays and animal models. The basis for PCR diagnostic applications in microbiology is the detection of infectious agents and the discrimination of non-pathogenic from pathogenic strains by virtue of specific genes.[33][34]

Characterization and detection of infectious disease organisms have been revolutionized by PCR in the following ways:

    The human immunodeficiency virus (or HIV), is a difficult target to find and eradicate. The earliest tests for infection relied on the presence of antibodies to the virus circulating in the bloodstream. However, antibodies don't appear until many weeks after infection, maternal antibodies mask the infection of a newborn, and therapeutic agents to fight the infection don't affect the antibodies. PCR tests have been developed that can detect as little as one viral genome among the DNA of over 50,000 host cells.[35] Infections can be detected earlier, donated blood can be screened directly for the virus, newborns can be immediately tested for infection, and the effects of antiviral treatments can be quantified.
    Some disease organisms, such as that for tuberculosis, are difficult to sample from patients and slow to be grown in the laboratory. PCR-based tests have allowed detection of small numbers of disease organisms (both live or dead), in convenient samples. Detailed genetic analysis can also be used to detect antibiotic resistance, allowing immediate and effective therapy. The effects of therapy can also be immediately evaluated.
    The spread of a disease organism through populations of domestic or wild animals can be monitored by PCR testing. In many cases, the appearance of new virulent sub-types can be detected and monitored. The sub-types of an organism that were responsible for earlier epidemics can also be determined by PCR analysis.
    Viral DNA can be detected by PCR. The primers used must be specific to the targeted sequences in the DNA of a virus, and PCR can be used for diagnostic analyses or DNA sequencing of the viral genome. The high sensitivity of PCR permits virus detection soon after infection and even before the onset of disease.[33] Such early detection may give physicians a significant lead time in treatment. The amount of virus ("viral load") in a patient can also be quantified by PCR-based DNA quantitation techniques (see below). A variant of PCR (RT-PCR) is used for detecting viral RNA rather than DNA: in this test the enzyme reverse transcriptase is used to generate a DNA sequence which matches the viral RNA; this DNA is then amplified as per the usual PCR method. RT-PCR is widely used to detect the SARS-CoV-2 viral genome.[36]
    Diseases such as pertussis (or whooping cough) are caused by the bacteria Bordetella pertussis. This bacteria is marked by a serious acute respiratory infection that affects various animals and humans and has led to the deaths of many young children. The pertussis toxin is a protein exotoxin that binds to cell receptors by two dimers and reacts with different cell types such as T lymphocytes which play a role in cell immunity.[37] PCR is an important testing tool that can detect sequences within the gene for the pertussis toxin. Because PCR has a high sensitivity for the toxin and a rapid turnaround time, it is very efficient for diagnosing pertussis when compared to culture.[38]

Forensic applications

The development of PCR-based genetic (or DNA) fingerprinting protocols has seen widespread application in forensics:

    In its most discriminating form, genetic fingerprinting can uniquely discriminate any one person from the entire population of the world. Minute samples of DNA can be isolated from a crime scene, and compared to that from suspects, or from a DNA database of earlier evidence or convicts. Simpler versions of these tests are often used to rapidly rule out suspects during a criminal investigation. Evidence from decades-old crimes can be tested, confirming or exonerating the people originally convicted.
    Forensic DNA typing has been an effective way of identifying or exonerating criminal suspects due to analysis of evidence discovered at a crime scene. The human genome has many repetitive regions that can be found within gene sequences or in non-coding regions of the genome. Specifically, up to 40% of human DNA is repetitive.[4] There are two distinct categories for these repetitive, non-coding regions in the genome. The first category is called variable number tandem repeats (VNTR), which are 10–100 base pairs long and the second category is called short tandem repeats (STR) and these consist of repeated 2–10 base pair sections. PCR is used to amplify several well-known VNTRs and STRs using primers that flank each of the repetitive regions. The sizes of the fragments obtained from any individual for each of the STRs will indicate which alleles are present. By analyzing several STRs for an individual, a set of alleles for each person will be found that statistically is likely to be unique.[4] Researchers have identified the complete sequence of the human genome. This sequence can be easily accessed through the NCBI website and is used in many real-life applications. For example, the FBI has compiled a set of DNA marker sites used for identification, and these are called the Combined DNA Index System (CODIS) DNA database.[4] Using this database enables statistical analysis to be used to determine the probability that a DNA sample will match. PCR is a very powerful and significant analytical tool to use for forensic DNA typing because researchers only need a very small amount of the target DNA to be used for analysis. For example, a single human hair with attached hair follicle has enough DNA to conduct the analysis. Similarly, a few sperm, skin samples from under the fingernails, or a small amount of blood can provide enough DNA for conclusive analysis.[4]
    Less discriminating forms of DNA fingerprinting can help in DNA paternity testing, where an individual is matched with their close relatives. DNA from unidentified human remains can be tested, and compared with that from possible parents, siblings, or children. Similar testing can be used to confirm the biological parents of an adopted (or kidnapped) child. The actual biological father of a newborn can also be confirmed (or ruled out).
    The PCR AMGX/AMGY design has been shown to not only[clarification needed] facilitate in amplifying DNA sequences from a very minuscule amount of genome. However it can also be used for real-time sex determination from forensic bone samples. This provides a powerful and effective way to determine gender in forensic cases and ancient specimens.[39]

Research applications

PCR has been applied to many areas of research in molecular genetics:

    PCR allows rapid production of short pieces of DNA, even when not more than the sequence of the two primers is known. This ability of PCR augments many methods, such as generating hybridization probes for Southern or northern blot hybridization. PCR supplies these techniques with large amounts of pure DNA, sometimes as a single strand, enabling analysis even from very small amounts of starting material.
    The task of DNA sequencing can also be assisted by PCR. Known segments of DNA can easily be produced from a patient with a genetic disease mutation. Modifications to the amplification technique can extract segments from a completely unknown genome, or can generate just a single strand of an area of interest.
    PCR has numerous applications to the more traditional process of DNA cloning. It can extract segments for insertion into a vector from a larger genome, which may be only available in small quantities. Using a single set of 'vector primers', it can also analyze or extract fragments that have already been inserted into vectors. Some alterations to the PCR protocol can generate mutations (general or site-directed) of an inserted fragment.
    Sequence-tagged sites is a process where PCR is used as an indicator that a particular segment of a genome is present in a particular clone. The Human Genome Project found this application vital to mapping the cosmid clones they were sequencing, and to coordinating the results from different laboratories.
    An application of PCR is the phylogenic analysis of DNA from ancient sources, such as that found in the recovered bones of Neanderthals, from frozen tissues of mammoths, or from the brain of Egyptian mummies.[15] In some cases the highly degraded DNA from these sources might be reassembled during the early stages of amplification.
    A common application of PCR is the study of patterns of gene expression. Tissues (or even individual cells) can be analyzed at different stages to see which genes have become active, or which have been switched off. This application can also use quantitative PCR to quantitate the actual levels of expression
    The ability of PCR to simultaneously amplify several loci from individual sperm[40] has greatly enhanced the more traditional task of genetic mapping by studying chromosomal crossovers after meiosis. Rare crossover events between very close loci have been directly observed by analyzing thousands of individual sperms. Similarly, unusual deletions, insertions, translocations, or inversions can be analyzed, all without having to wait (or pay) for the long and laborious processes of fertilization, embryogenesis, etc.
    Site-directed mutagenesis: PCR can be used to create mutant genes with mutations chosen by scientists at will. These mutations can be chosen in order to understand how proteins accomplish their functions, and to change or improve protein function.

Advantages

PCR has a number of advantages. It is fairly simple to understand and to use, and produces results rapidly. The technique is highly sensitive with the potential to produce millions to billions of copies of a specific product for sequencing, cloning, and analysis. qRT-PCR shares the same advantages as the PCR, with an added advantage of quantification of the synthesized product. Therefore, it has its uses to analyze alterations of gene expression levels in tumors, microbes, or other disease states.[24]

PCR is a very powerful and practical research tool. The sequencing of unknown etiologies of many diseases are being figured out by the PCR. The technique can help identify the sequence of previously unknown viruses related to those already known and thus give us a better understanding of the disease itself. If the procedure can be further simplified and sensitive non radiometric detection systems can be developed, the PCR will assume a prominent place in the clinical laboratory for years to come.[15]
Limitations

One major limitation of PCR is that prior information about the target sequence is necessary in order to generate the primers that will allow its selective amplification.[24] This means that, typically, PCR users must know the precise sequence(s) upstream of the target region on each of the two single-stranded templates in order to ensure that the DNA polymerase properly binds to the primer-template hybrids and subsequently generates the entire target region during DNA synthesis.

Like all enzymes, DNA polymerases are also prone to error, which in turn causes mutations in the PCR fragments that are generated.[41]

Another limitation of PCR is that even the smallest amount of contaminating DNA can be amplified, resulting in misleading or ambiguous results. To minimize the chance of contamination, investigators should reserve separate rooms for reagent preparation, the PCR, and analysis of product. Reagents should be dispensed into single-use aliquots. Pipettors with disposable plungers and extra-long pipette tips should be routinely used.[15]

Environmental samples that contain humic acids may inhibit PCR amplification and lead to inaccurate results.
Variations
Main article: Variants of PCR

    Allele-specific PCR: a diagnostic or cloning technique based on single-nucleotide variations (SNVs not to be confused with SNPs) (single-base differences in a patient). It requires prior knowledge of a DNA sequence, including differences between alleles, and uses primers whose 3' ends encompass the SNV (base pair buffer around SNV usually incorporated). PCR amplification under stringent conditions is much less efficient in the presence of a mismatch between template and primer, so successful amplification with an SNP-specific primer signals presence of the specific SNP in a sequence.[42] See SNP genotyping for more information.
    Assembly PCR or Polymerase Cycling Assembly (PCA): artificial synthesis of long DNA sequences by performing PCR on a pool of long oligonucleotides with short overlapping segments. The oligonucleotides alternate between sense and antisense directions, and the overlapping segments determine the order of the PCR fragments, thereby selectively producing the final long DNA product.[43]
    Asymmetric PCR: preferentially amplifies one DNA strand in a double-stranded DNA template. It is used in sequencing and hybridization probing where amplification of only one of the two complementary strands is required. PCR is carried out as usual, but with a great excess of the primer for the strand targeted for amplification. Because of the slow (arithmetic) amplification later in the reaction after the limiting primer has been used up, extra cycles of PCR are required.[44] A recent modification on this process, known as Linear-After-The-Exponential-PCR (LATE-PCR), uses a limiting primer with a higher melting temperature (Tm) than the excess primer to maintain reaction efficiency as the limiting primer concentration decreases mid-reaction.[45]
    Convective PCR: a pseudo-isothermal way of performing PCR. Instead of repeatedly heating and cooling the PCR mixture, the solution is subjected to a thermal gradient. The resulting thermal instability driven convective flow automatically shuffles the PCR reagents from the hot and cold regions repeatedly enabling PCR.[46] Parameters such as thermal boundary conditions and geometry of the PCR enclosure can be optimized to yield robust and rapid PCR by harnessing the emergence of chaotic flow fields.[47] Such convective flow PCR setup significantly reduces device power requirement and operation time.
    Dial-out PCR: a highly parallel method for retrieving accurate DNA molecules for gene synthesis. A complex library of DNA molecules is modified with unique flanking tags before massively parallel sequencing. Tag-directed primers then enable the retrieval of molecules with desired sequences by PCR.[48]
    Digital PCR (dPCR): used to measure the quantity of a target DNA sequence in a DNA sample. The DNA sample is highly diluted so that after running many PCRs in parallel, some of them do not receive a single molecule of the target DNA. The target DNA concentration is calculated using the proportion of negative outcomes. Hence the name 'digital PCR'.
    Helicase-dependent amplification: similar to traditional PCR, but uses a constant temperature rather than cycling through denaturation and annealing/extension cycles. DNA helicase, an enzyme that unwinds DNA, is used in place of thermal denaturation.[49]
    Hot start PCR: a technique that reduces non-specific amplification during the initial set up stages of the PCR. It may be performed manually by heating the reaction components to the denaturation temperature (e.g., 95 °C) before adding the polymerase.[50] Specialized enzyme systems have been developed that inhibit the polymerase's activity at ambient temperature, either by the binding of an antibody[12][51] or by the presence of covalently bound inhibitors that dissociate only after a high-temperature activation step. Hot-start/cold-finish PCR is achieved with new hybrid polymerases that are inactive at ambient temperature and are instantly activated at elongation temperature.
    In silico PCR (digital PCR, virtual PCR, electronic PCR, e-PCR) refers to computational tools used to calculate theoretical polymerase chain reaction results using a given set of primers (probes) to amplify DNA sequences from a sequenced genome or transcriptome. In silico PCR was proposed as an educational tool for molecular biology.[52]
    Intersequence-specific PCR (ISSR): a PCR method for DNA fingerprinting that amplifies regions between simple sequence repeats to produce a unique fingerprint of amplified fragment lengths.[53]
    Inverse PCR: is commonly used to identify the flanking sequences around genomic inserts. It involves a series of DNA digestions and self ligation, resulting in known sequences at either end of the unknown sequence.[54]
    Ligation-mediated PCR: uses small DNA linkers ligated to the DNA of interest and multiple primers annealing to the DNA linkers; it has been used for DNA sequencing, genome walking, and DNA footprinting.[55]
    Methylation-specific PCR (MSP): developed by Stephen Baylin and James G. Herman at the Johns Hopkins School of Medicine,[56] and is used to detect methylation of CpG islands in genomic DNA. DNA is first treated with sodium bisulfite, which converts unmethylated cytosine bases to uracil, which is recognized by PCR primers as thymine. Two PCRs are then carried out on the modified DNA, using primer sets identical except at any CpG islands within the primer sequences. At these points, one primer set recognizes DNA with cytosines to amplify methylated DNA, and one set recognizes DNA with uracil or thymine to amplify unmethylated DNA. MSP using qPCR can also be performed to obtain quantitative rather than qualitative information about methylation.
    Miniprimer PCR: uses a thermostable polymerase (S-Tbr) that can extend from short primers ("smalligos") as short as 9 or 10 nucleotides. This method permits PCR targeting to smaller primer binding regions, and is used to amplify conserved DNA sequences, such as the 16S (or eukaryotic 18S) rRNA gene.[57]
    Multiplex ligation-dependent probe amplification (MLPA): permits amplifying multiple targets with a single primer pair, thus avoiding the resolution limitations of multiplex PCR (see below).
    Multiplex-PCR: consists of multiple primer sets within a single PCR mixture to produce amplicons of varying sizes that are specific to different DNA sequences. By targeting multiple genes at once, additional information may be gained from a single test-run that otherwise would require several times the reagents and more time to perform. Annealing temperatures for each of the primer sets must be optimized to work correctly within a single reaction, and amplicon sizes. That is, their base pair length should be different enough to form distinct bands when visualized by gel electrophoresis.
    Nanoparticle-Assisted PCR (nanoPCR): some nanoparticles (NPs) can enhance the efficiency of PCR (thus being called nanoPCR), and some can even outperform the original PCR enhancers. It was reported that quantum dots (QDs) can improve PCR specificity and efficiency. Single-walled carbon nanotubes (SWCNTs) and multi-walled carbon nanotubes (MWCNTs) are efficient in enhancing the amplification of long PCR. Carbon nanopowder (CNP) can improve the efficiency of repeated PCR and long PCR, while zinc oxide, titanium dioxide and Ag NPs were found to increase the PCR yield. Previous data indicated that non-metallic NPs retained acceptable amplification fidelity. Given that many NPs are capable of enhancing PCR efficiency, it is clear that there is likely to be great potential for nanoPCR technology improvements and product development.[58][59]
    Nested PCR: increases the specificity of DNA amplification, by reducing background due to non-specific amplification of DNA. Two sets of primers are used in two successive PCRs. In the first reaction, one pair of primers is used to generate DNA products, which besides the intended target, may still consist of non-specifically amplified DNA fragments. The product(s) are then used in a second PCR with a set of primers whose binding sites are completely or partially different from and located 3' of each of the primers used in the first reaction. Nested PCR is often more successful in specifically amplifying long DNA fragments than conventional PCR, but it requires more detailed knowledge of the target sequences.
    Overlap-extension PCR or Splicing by overlap extension (SOEing) : a genetic engineering technique that is used to splice together two or more DNA fragments that contain complementary sequences. It is used to join DNA pieces containing genes, regulatory sequences, or mutations; the technique enables creation of specific and long DNA constructs. It can also introduce deletions, insertions or point mutations into a DNA sequence.[60][61]
    PAN-AC: uses isothermal conditions for amplification, and may be used in living cells.[62][63]
    quantitative PCR (qPCR): used to measure the quantity of a target sequence (commonly in real-time). It quantitatively measures starting amounts of DNA, cDNA, or RNA. quantitative PCR is commonly used to determine whether a DNA sequence is present in a sample and the number of its copies in the sample. Quantitative PCR has a very high degree of precision. Quantitative PCR methods use fluorescent dyes, such as Sybr Green, EvaGreen or fluorophore-containing DNA probes, such as TaqMan, to measure the amount of amplified product in real time. It is also sometimes abbreviated to RT-PCR (real-time PCR) but this abbreviation should be used only for reverse transcription PCR. qPCR is the appropriate contractions for quantitative PCR (real-time PCR).
    Reverse Complement PCR (RC-PCR): Allows the addition of functional domains or sequences of choice to be appended independently to either end of the generated amplicon in a single closed tube reaction. This method generates target specific primers within the reaction by the interaction of universal primers (which contain the desired sequences or domains to be appended) and RC probes.
    Reverse Transcription PCR (RT-PCR): for amplifying DNA from RNA. Reverse transcriptase reverse transcribes RNA into cDNA, which is then amplified by PCR. RT-PCR is widely used in expression profiling, to determine the expression of a gene or to identify the sequence of an RNA transcript, including transcription start and termination sites. If the genomic DNA sequence of a gene is known, RT-PCR can be used to map the location of exons and introns in the gene. The 5' end of a gene (corresponding to the transcription start site) is typically identified by RACE-PCR (Rapid Amplification of cDNA Ends).
    RNase H-dependent PCR (rhPCR): a modification of PCR that utilizes primers with a 3’ extension block that can be removed by a thermostable RNase HII enzyme. This system reduces primer-dimers and allows for multiplexed reactions to be performed with higher numbers of primers.[64]
    Single Specific Primer-PCR (SSP-PCR): allows the amplification of double-stranded DNA even when the sequence information is available at one end only. This method permits amplification of genes for which only a partial sequence information is available, and allows unidirectional genome walking from known into unknown regions of the chromosome.[65]
    Solid Phase PCR: encompasses multiple meanings, including Polony Amplification (where PCR colonies are derived in a gel matrix, for example), Bridge PCR[66] (primers are covalently linked to a solid-support surface), conventional Solid Phase PCR (where Asymmetric PCR is applied in the presence of solid support bearing primer with sequence matching one of the aqueous primers) and Enhanced Solid Phase PCR[67] (where conventional Solid Phase PCR can be improved by employing high Tm and nested solid support primer with optional application of a thermal 'step' to favour solid support priming).
    Suicide PCR: typically used in paleogenetics or other studies where avoiding false positives and ensuring the specificity of the amplified fragment is the highest priority. It was originally described in a study to verify the presence of the microbe Yersinia pestis in dental samples obtained from 14th Century graves of people supposedly killed by the plague during the medieval Black Death epidemic.[68] The method prescribes the use of any primer combination only once in a PCR (hence the term "suicide"), which should never have been used in any positive control PCR reaction, and the primers should always target a genomic region never amplified before in the lab using this or any other set of primers. This ensures that no contaminating DNA from previous PCR reactions is present in the lab, which could otherwise generate false positives.
    Thermal asymmetric interlaced PCR (TAIL-PCR): for isolation of an unknown sequence flanking a known sequence. Within the known sequence, TAIL-PCR uses a nested pair of primers with differing annealing temperatures; a degenerate primer is used to amplify in the other direction from the unknown sequence.[69]
    Touchdown PCR (Step-down PCR): a variant of PCR that aims to reduce nonspecific background by gradually lowering the annealing temperature as PCR cycling progresses. The annealing temperature at the initial cycles is usually a few degrees (3–5 °C) above the Tm of the primers used, while at the later cycles, it is a few degrees (3–5 °C) below the primer Tm. The higher temperatures give greater specificity for primer binding, and the lower temperatures permit more efficient amplification from the specific products formed during the initial cycles.[70]
    Universal Fast Walking: for genome walking and genetic fingerprinting using a more specific 'two-sided' PCR than conventional 'one-sided' approaches (using only one gene-specific primer and one general primer—which can lead to artefactual 'noise')[71] by virtue of a mechanism involving lariat structure formation. Streamlined derivatives of UFW are LaNe RAGE (lariat-dependent nested PCR for rapid amplification of genomic DNA ends),[72] 5'RACE LaNe[73] and 3'RACE LaNe.[74]

History
Diagrammatic representation of an example primer pair. The use of primers in an in vitro assay to allow DNA synthesis was a major innovation that allowed the development of PCR.
Main article: History of polymerase chain reaction

The heat-resistant enzymes that are a key component in polymerase chain reaction were discovered in the 1960s as a product of a microbial life form that lived in the superheated waters of Yellowstone’s Mushroom Spring.[75]

A 1971 paper in the Journal of Molecular Biology by Kjell Kleppe and co-workers in the laboratory of H. Gobind Khorana first described a method of using an enzymatic assay to replicate a short DNA template with primers in vitro.[76] However, this early manifestation of the basic PCR principle did not receive much attention at the time and the invention of the polymerase chain reaction in 1983 is generally credited to Kary Mullis.[77]
"Baby Blue", a 1986 prototype machine for doing PCR

When Mullis developed the PCR in 1983, he was working in Emeryville, California for Cetus Corporation, one of the first biotechnology companies, where he was responsible for synthesizing short chains of DNA. Mullis has written that he conceived the idea for PCR while cruising along the Pacific Coast Highway one night in his car.[78] He was playing in his mind with a new way of analyzing changes (mutations) in DNA when he realized that he had instead invented a method of amplifying any DNA region through repeated cycles of duplication driven by DNA polymerase. In Scientific American, Mullis summarized the procedure: "Beginning with a single molecule of the genetic material DNA, the PCR can generate 100 billion similar molecules in an afternoon. The reaction is easy to execute. It requires no more than a test tube, a few simple reagents, and a source of heat."[79] DNA fingerprinting was first used for paternity testing in 1988.[80]

Mullis and Professor Michael Smith, who had developed other essential ways of manipulating DNA,[81] were jointly awarded the Nobel Prize in Chemistry in 1993, seven years after Mullis and his colleagues at Cetus first put his proposal to practice.[82] Mullis's 1985 paper with R. K. Saiki and H. A. Erlich, "Enzymatic Amplification of β-globin Genomic Sequences and Restriction Site Analysis for Diagnosis of Sickle Cell Anemia"—the polymerase chain reaction invention (PCR) – was honored by a Citation for Chemical Breakthrough Award from the Division of History of Chemistry of the American Chemical Society in 2017.[83][1]

At the core of the PCR method is the use of a suitable DNA polymerase able to withstand the high temperatures of >90 °C (194 °F) required for separation of the two DNA strands in the DNA double helix after each replication cycle. The DNA polymerases initially employed for in vitro experiments presaging PCR were unable to withstand these high temperatures.[1] So the early procedures for DNA replication were very inefficient and time-consuming, and required large amounts of DNA polymerase and continuous handling throughout the process.

The discovery in 1976 of Taq polymerase—a DNA polymerase purified from the thermophilic bacterium, Thermus aquaticus, which naturally lives in hot (50 to 80 °C (122 to 176 °F)) environments[13] such as hot springs—paved the way for dramatic improvements of the PCR method. The DNA polymerase isolated from T. aquaticus is stable at high temperatures remaining active even after DNA denaturation,[14] thus obviating the need to add new DNA polymerase after each cycle.[2] This allowed an automated thermocycler-based process for DNA amplification.
Patent disputes

The PCR technique was patented by Kary Mullis and assigned to Cetus Corporation, where Mullis worked when he invented the technique in 1983. The Taq polymerase enzyme was also covered by patents. There have been several high-profile lawsuits related to the technique, including an unsuccessful lawsuit brought by DuPont. The Swiss pharmaceutical company Hoffmann-La Roche purchased the rights to the patents in 1992 and currently[when?] holds those that are still protected.

A related patent battle over the Taq polymerase enzyme is still ongoing in several jurisdictions around the world between Roche and Promega. The legal arguments have extended beyond the lives of the original PCR and Taq polymerase patents, which expired on March 28, 2005.[84]
See also

    iconBiology portal

    COVID-19 testing
    DNA spiking
    Loop-mediated isothermal amplification
    Selector-technique

References

Saiki RK, Scharf S, Faloona F, Mullis KB, Horn GT, Erlich HA, Arnheim N (December 1985). "Enzymatic amplification of beta-globin genomic sequences and restriction site analysis for diagnosis of sickle cell anemia". Science. 230 (4732): 1350–4. Bibcode:1985Sci...230.1350S. doi:10.1126/science.2999980. PMID 2999980.
Saiki RK, Gelfand DH, Stoffel S, Scharf SJ, Higuchi R, Horn GT, et al. (January 1988). "Primer-directed enzymatic amplification of DNA with a thermostable DNA polymerase". Science. 239 (4839): 487–91. Bibcode:1988Sci...239..487S. doi:10.1126/science.239.4839.487. PMID 2448875.
Enners, Edward; Porta, Angela R. (2012). "Determining Annealing Temperatures for Polymerase Chain Reaction". The American Biology Teacher. 74 (4): 256–260. doi:10.1525/abt.2012.74.4.9. S2CID 86708426.
Ninfa, Alexander; Ballou, David; Benore, Marilee (2009). Fundamental Laboratory Approaches for Biochemistry and Biotechnology. United States: Wiley. pp. 408–10. ISBN 978-0-47008766-4.
Cheng S, Fockler C, Barnes WM, Higuchi R (June 1994). "Effective amplification of long targets from cloned inserts and human genomic DNA". Proceedings of the National Academy of Sciences of the United States of America. 91 (12): 5695–9. Bibcode:1994PNAS...91.5695C. doi:10.1073/pnas.91.12.5695. PMC 44063. PMID 8202550.
Carr AC, Moore SD (2012). Lucia A (ed.). "Robust quantification of polymerase chain reactions using global fitting". PLOS ONE. 7 (5): e37640. Bibcode:2012PLoSO...737640C. doi:10.1371/journal.pone.0037640. PMC 3365123. PMID 22701526.
Joseph Sambrook & David W. Russel (2001). Molecular Cloning: A Laboratory Manual (3rd ed.). Cold Spring Harbor, N.Y.: Cold Spring Harbor Laboratory Press. ISBN 978-0-879-69576-7. Chapter 8: In vitro Amplification of DNA by the Polymerase Chain Reaction
"Polymerase Chain Reaction (PCR)". National Center for Biotechnology Information, U.S. National Library of Medicine.
"PCR". Genetic Science Learning Center, University of Utah.
Pavlov AR, Pavlova NV, Kozyavkin SA, Slesarev AI (May 2004). "Recent developments in the optimization of thermostable DNA polymerases for efficient applications". Trends in Biotechnology. 22 (5): 253–60. doi:10.1016/j.tibtech.2004.02.011. PMID 15109812.
Rychlik W, Spencer WJ, Rhoads RE (November 1990). "Optimization of the annealing temperature for DNA amplification in vitro". Nucleic Acids Research. 18 (21): 6409–12. doi:10.1093/nar/18.21.6409. PMC 332522. PMID 2243783.
Sharkey DJ, Scalice ER, Christy KG, Atwood SM, Daiss JL (May 1994). "Antibodies as thermolabile switches: high temperature triggering for the polymerase chain reaction". Bio/Technology. 12 (5): 506–9. doi:10.1038/nbt0594-506. PMID 7764710. S2CID 2885453.
Chien A, Edgar DB, Trela JM (September 1976). "Deoxyribonucleic acid polymerase from the extreme thermophile Thermus aquaticus". Journal of Bacteriology. 127 (3): 1550–7. doi:10.1128/jb.127.3.1550-1557.1976. PMC 232952. PMID 8432.
Lawyer FC, Stoffel S, Saiki RK, Chang SY, Landre PA, Abramson RD, Gelfand DH (May 1993). "High-level expression, purification, and enzymatic characterization of full-length Thermus aquaticus DNA polymerase and a truncated form deficient in 5' to 3' exonuclease activity". PCR Methods and Applications. 2 (4): 275–87. doi:10.1101/gr.2.4.275. PMID 8324500.
Schochetman G, Ou CY, Jones WK (December 1988). "Polymerase chain reaction". The Journal of Infectious Diseases. 158 (6): 1154–7. doi:10.1093/infdis/158.6.1154. JSTOR 30137034. PMID 2461996.
Borman, Jon; Schuster, David; Li, Wu-bo; Jessee, Joel; Rashtchian, Ayoub (2000). "PCR from problematic templates" (PDF). Focus. 22 (1): 10. Archived from the original (PDF) on 7 March 2017.
Bogetto, Prachi; Waidne, Lisa; Anderson, Holly (2000). "Helpful tips for PCR" (PDF). Focus. 22 (1): 12. Archived from the original (PDF) on 7 March 2017.
Sarkar G, Kapelner S, Sommer SS (December 1990). "Formamide can dramatically improve the specificity of PCR". Nucleic Acids Research. 18 (24): 7465. doi:10.1093/nar/18.24.7465. PMC 332902. PMID 2259646.
"Electronic PCR". NCBI – National Center for Biotechnology Information. Retrieved 13 March 2012.
Pavlov AR, Pavlova NV, Kozyavkin SA, Slesarev AI (2006). "Thermostable DNA Polymerases for a Wide Spectrum of Applications: Comparison of a Robust Hybrid TopoTaq to other enzymes". In Kieleczawa J (ed.). DNA Sequencing II: Optimizing Preparation and Cleanup. Jones & Bartlett. pp. 241–57. ISBN 978-0-7637-3383-4.
Pombert JF, Sistek V, Boissinot M, Frenette M (October 2009). "Evolutionary relationships among salivarius streptococci as inferred from multilocus phylogenies based on 16S rRNA-encoding, recA, secA, and secY gene sequences". BMC Microbiology. 9: 232. doi:10.1186/1471-2180-9-232. PMC 2777182. PMID 19878555.
"Chemical Synthesis, Sequencing, and Amplification of DNA (class notes on MBB/BIO 343)". Arizona State University. Archived from the original on 9 October 1997. Retrieved 29 October 2007.
Bustin SA, Benes V, Garson JA, Hellemans J, Huggett J, Kubista M, et al. (April 2009). "The MIQE guidelines: minimum information for publication of quantitative real-time PCR experiments" (PDF). Clinical Chemistry. 55 (4): 611–22. doi:10.1373/clinchem.2008.112797. PMID 19246619.
Garibyan L, Avashia N (March 2013). "Polymerase chain reaction". The Journal of Investigative Dermatology. 133 (3): 1–4. doi:10.1038/jid.2013.1. PMC 4102308. PMID 23399825.
Schnell, S.; Mendoza, C. (October 1997). "Theoretical Description of the Polymerase Chain Reaction". Journal of Theoretical Biology. 188 (3): 313–318. doi:10.1006/jtbi.1997.0473. PMID 9344735.
Schnell, S.; Mendoza, C. (21 February 1997). "Enzymological Considerations for the Theoretical Description of the Quantitative Competitive Polymerase Chain Reaction (QC-PCR)". Journal of Theoretical Biology. 184 (4): 433–440. doi:10.1006/jtbi.1996.0283. ISSN 0022-5193. PMID 9082073.
Becker, Sven; Böger, Peter; Oehlmann, Ralfh; Ernst, Anneliese (1 November 2000). "PCR Bias in Ecological Analysis: a Case Study for Quantitative Taq Nuclease Assays in Analyses of Microbial Communities". Applied and Environmental Microbiology. 66 (11): 4945–4953. doi:10.1128/AEM.66.11.4945-4953.2000. ISSN 1098-5336. PMC 92404. PMID 11055948.
Solomon, Anthony W.; Peeling, Rosanna W.; Foster, Allen; Mabey, David C. W. (1 October 2004). "Diagnosis and Assessment of Trachoma". Clinical Microbiology Reviews. 17 (4): 982–1011. doi:10.1128/CMR.17.4.982-1011.2004. ISSN 0893-8512. PMC 523557. PMID 15489358.
Ramzy, Reda M.R. (April 2002). "Recent advances in molecular diagnostic techniques for human lymphatic filariasis and their use in epidemiological research". Transactions of the Royal Society of Tropical Medicine and Hygiene. 96: S225–S229. doi:10.1016/S0035-9203(02)90080-5. PMID 12055843.
Sachse, Konrad (2003). Sachse, Konrad; Frey, Joachim (eds.). "Specificity and Performance of Diagnostic PCR Assays". PCR Detection of Microbial Pathogens. Methods in Molecular Biology. Totowa, New Jersey: Humana Press. 216: 3–29. doi:10.1385/1-59259-344-5:03. ISBN 978-1-59259-344-6. PMID 12512353.
Quill E (March 2008). "Medicine. Blood-matching goes genetic". Science. 319 (5869): 1478–9. doi:10.1126/science.319.5869.1478. PMID 18339916. S2CID 36945291.
Tomar, Rukam (2010). Molecular Markers and Plant Biotechnology. Pitman Pura, New Delhi: New India Publishing Agency. p. 188. ISBN 978-93-80235-25-7.
Cai HY, Caswell JL, Prescott JF (March 2014). "Nonculture molecular techniques for diagnosis of bacterial disease in animals: a diagnostic laboratory perspective". Veterinary Pathology. 51 (2): 341–50. doi:10.1177/0300985813511132. PMID 24569613.
Salis AD (2009). "Applications in Clinical Microbiology". Real-Time PCR: Current Technology and Applications. Caister Academic Press. ISBN 978-1-904455-39-4.
Kwok S, Mack DH, Mullis KB, Poiesz B, Ehrlich G, Blair D, et al. (May 1987). "Identification of human immunodeficiency virus sequences by using in vitro enzymatic amplification and oligomer cleavage detection". Journal of Virology. 61 (5): 1690–4. doi:10.1128/jvi.61.5.1690-1694.1987. PMC 254157. PMID 2437321.
"Coronavirus: il viaggio dei test". Istituto Superiore di Sanità.
Finger, Horst; von Koenig, Carl Heinz Wirsing (1996). Baron, Samuel (ed.). Medical Microbiology (4th ed.). Galveston, TX: University of Texas Medical Branch at Galveston. ISBN 978-0-96311721-2. PMID 21413270.
Yeh, Sylvia H.; Mink, ChrisAnna M. (2012). "Bordetella pertussis and Pertussis (Whooping Cough)". Netter's Infectious Diseases. Netter's Infectious Diseases. pp. 11–14. doi:10.1016/B978-1-4377-0126-5.00003-3. ISBN 978-1-43770126-5.
Alonso A, Martín P, Albarrán C, García P, García O, de Simón LF, et al. (January 2004). "Real-Time PCR Designs to Estimate Nuclear and Mitochondrial DNA Copy Number in Forensic and Ancient DNA Studies". Forensic Science International. 139 (2–3): 141–9. doi:10.1016/j.forsciint.2003.10.008. PMID 15040907.
Boehnke M, Arnheim N, Li H, Collins FS (July 1989). "Fine-structure genetic mapping of human chromosomes using the polymerase chain reaction on single sperm: experimental design considerations". American Journal of Human Genetics. 45 (1): 21–32. PMC 1683385. PMID 2568090.
Zhou YH, Zhang XP, Ebright RH (November 1991). "Random mutagenesis of gene-sized DNA molecules by use of PCR with Taq DNA polymerase". Nucleic Acids Research. 19 (21): 6052. doi:10.1093/nar/19.21.6052. PMC 329070. PMID 1658751.
Newton CR, Graham A, Heptinstall LE, Powell SJ, Summers C, Kalsheker N, et al. (April 1989). "Analysis of any point mutation in DNA. The amplification refractory mutation system (ARMS)". Nucleic Acids Research. 17 (7): 2503–16. doi:10.1093/nar/17.7.2503. PMC 317639. PMID 2785681.
Stemmer WP, Crameri A, Ha KD, Brennan TM, Heyneker HL (October 1995). "Single-step assembly of a gene and entire plasmid from large numbers of oligodeoxyribonucleotides". Gene. 164 (1): 49–53. doi:10.1016/0378-1119(95)00511-4. PMID 7590320.
Innis MA, Myambo KB, Gelfand DH, Brow MA (December 1988). "DNA sequencing with Thermus aquaticus DNA polymerase and direct sequencing of polymerase chain reaction-amplified DNA". Proceedings of the National Academy of Sciences of the United States of America. 85 (24): 9436–40. Bibcode:1988PNAS...85.9436I. doi:10.1073/pnas.85.24.9436. PMC 282767. PMID 3200828.
Pierce KE, Wangh LJ (2007). Linear-after-the-exponential polymerase chain reaction and allied technologies Real-time detection strategies for rapid, reliable diagnosis from single cells. Methods in Molecular Medicine. 132. pp. 65–85. doi:10.1007/978-1-59745-298-4_7. ISBN 978-1-58829-578-1. PMID 17876077.
Krishnan M, Ugaz VM, Burns MA (October 2002). "PCR in a Rayleigh-Bénard convection cell". Science. 298 (5594): 793. doi:10.1126/science.298.5594.793. PMID 12399582.
Priye A, Hassan YA, Ugaz VM (November 2013). "Microscale chaotic advection enables robust convective DNA replication". Analytical Chemistry. 85 (21): 10536–41. doi:10.1021/ac402611s. PMID 24083802.
Schwartz JJ, Lee C, Shendure J (September 2012). "Accurate gene synthesis with tag-directed retrieval of sequence-verified DNA molecules". Nature Methods. 9 (9): 913–5. doi:10.1038/nmeth.2137. PMC 3433648. PMID 22886093.
Vincent M, Xu Y, Kong H (August 2004). "Helicase-dependent isothermal DNA amplification". EMBO Reports. 5 (8): 795–800. doi:10.1038/sj.embor.7400200. PMC 1249482. PMID 15247927.
Chou Q, Russell M, Birch DE, Raymond J, Bloch W (April 1992). "Prevention of pre-PCR mis-priming and primer dimerization improves low-copy-number amplifications". Nucleic Acids Research. 20 (7): 1717–23. doi:10.1093/nar/20.7.1717. PMC 312262. PMID 1579465.
Kellogg DE, Rybalkin I, Chen S, Mukhamedova N, Vlasik T, Siebert PD, Chenchik A (June 1994). "TaqStart Antibody: "hot start" PCR facilitated by a neutralizing monoclonal antibody directed against Taq DNA polymerase". BioTechniques. 16 (6): 1134–7. PMID 8074881.
San Millán RM, Martínez-Ballesteros I, Rementeria A, Garaizar J, Bikandi J (December 2013). "Online exercise for the design and simulation of PCR and PCR-RFLP experiments". BMC Research Notes. 6: 513. doi:10.1186/1756-0500-6-513. PMC 4029544. PMID 24314313.
Zietkiewicz E, Rafalski A, Labuda D (March 1994). "Genome fingerprinting by simple sequence repeat (SSR)-anchored polymerase chain reaction amplification". Genomics. 20 (2): 176–83. doi:10.1006/geno.1994.1151. PMID 8020964.
Ochman H, Gerber AS, Hartl DL (November 1988). "Genetic applications of an inverse polymerase chain reaction". Genetics. 120 (3): 621–3. PMC 1203539. PMID 2852134.
Mueller PR, Wold B (November 1989). "In vivo footprinting of a muscle specific enhancer by ligation mediated PCR". Science. 246 (4931): 780–6. Bibcode:1989Sci...246..780M. doi:10.1126/science.2814500. PMID 2814500.
Herman JG, Graff JR, Myöhänen S, Nelkin BD, Baylin SB (September 1996). "Methylation-specific PCR: a novel PCR assay for methylation status of CpG islands". Proceedings of the National Academy of Sciences of the United States of America. 93 (18): 9821–6. Bibcode:1996PNAS...93.9821H. doi:10.1073/pnas.93.18.9821. PMC 38513. PMID 8790415.
Isenbarger TA, Finney M, Ríos-Velázquez C, Handelsman J, Ruvkun G (February 2008). "Miniprimer PCR, a new lens for viewing the microbial world". Applied and Environmental Microbiology. 74 (3): 840–9. doi:10.1128/AEM.01933-07. PMC 2227730. PMID 18083877.
Shen C, Yang W, Ji Q, Maki H, Dong A, Zhang Z (November 2009). "NanoPCR observation: different levels of DNA replication fidelity in nanoparticle-enhanced polymerase chain reactions". Nanotechnology. 20 (45): 455103. Bibcode:2009Nanot..20S5103S. doi:10.1088/0957-4484/20/45/455103. PMID 19822925. S2CID 3393115.
Shen, Cenchao (2013). "An Overview of Nanoparticle-Assisted Polymerase Chain Reaction Technology". An Overview of Nanoparticle‐Assisted Polymerase Chain Reaction Technology. US: Wiley-Blackwell Publishing Ltd. pp. 97–106. doi:10.1002/9781118451915.ch5. ISBN 9781118451915.
Horton RM, Hunt HD, Ho SN, Pullen JK, Pease LR (April 1989). "Engineering hybrid genes without the use of restriction enzymes: gene splicing by overlap extension". Gene. 77 (1): 61–8. doi:10.1016/0378-1119(89)90359-4. PMID 2744488.
Moller, Simon (2006). PCR: The Basics. US: Taylor & Francis Group. p. 144. ISBN 9780415355476.
David F, Turlotte E (November 1998). "[A method of isothermal gene amplification]" [An Isothermal Amplification Method]. Comptes Rendus de l'Académie des Sciences, Série III. 321 (11): 909–14. Bibcode:1998CRASG.321..909D. doi:10.1016/S0764-4469(99)80005-5. PMID 9879470.
Fabrice David (September–October 2002). "Utiliser les propriétés topologiques de l'ADN: une nouvelle arme contre les agents pathogènes" (PDF). Fusion. Archived from the original (PDF) on 28 November 2007.(in French)
Dobosy JR, Rose SD, Beltz KR, Rupp SM, Powers KM, Behlke MA, Walder JA (August 2011). "RNase H-dependent PCR (rhPCR): improved specificity and single nucleotide polymorphism detection using blocked cleavable primers". BMC Biotechnology. 11: 80. doi:10.1186/1472-6750-11-80. PMC 3224242. PMID 21831278.
Shyamala, V.; Ferro-Luzzi, Ames G. (1993). Single Specific Primer-Polymerase Chain Reaction (SSP-PCR) and Genome Walking. Methods in Molecular Biology. 15. pp. 339–48. doi:10.1385/0-89603-244-2:339. ISBN 978-0-89603-244-6. PMID 21400290.
Bing DH, Boles C, Rehman FN, Audeh M, Belmarsh M, Kelley B, Adams CP (1996). "Bridge amplification: a solid phase PCR system for the amplification and detection of allelic differences in single copy genes". Genetic Identity Conference Proceedings, Seventh International Symposium on Human Identification. Archived from the original on 7 May 2001.
Khan Z, Poetter K, Park DJ (April 2008). "Enhanced solid phase PCR: mechanisms to increase priming by solid support primers". Analytical Biochemistry. 375 (2): 391–3. doi:10.1016/j.ab.2008.01.021. PMID 18267099.
Raoult D, Aboudharam G, Crubézy E, Larrouy G, Ludes B, Drancourt M (November 2000). "Molecular identification by "suicide PCR" of Yersinia pestis as the agent of medieval black death". Proceedings of the National Academy of Sciences of the United States of America. 97 (23): 12800–3. Bibcode:2000PNAS...9712800R. doi:10.1073/pnas.220225197. PMC 18844. PMID 11058154.
Liu YG, Whittier RF (February 1995). "Thermal asymmetric interlaced PCR: automatable amplification and sequencing of insert end fragments from P1 and YAC clones for chromosome walking". Genomics. 25 (3): 674–81. doi:10.1016/0888-7543(95)80010-J. PMID 7759102.
Don RH, Cox PT, Wainwright BJ, Baker K, Mattick JS (July 1991). "'Touchdown' PCR to circumvent spurious priming during gene amplification". Nucleic Acids Research. 19 (14): 4008. doi:10.1093/nar/19.14.4008. PMC 328507. PMID 1861999.
Myrick KV, Gelbart WM (February 2002). "Universal Fast Walking for direct and versatile determination of flanking sequence". Gene. 284 (1–2): 125–31. doi:10.1016/S0378-1119(02)00384-0. PMID 11891053.
"Full Text - LaNe RAGE: a new tool for genomic DNA flanking sequence determination". www.ejbiotechnology.info.
Park DJ (January 2005). "A new 5' terminal murine GAPDH exon identified using 5'RACE LaNe". Molecular Biotechnology. 29 (1): 39–46. doi:10.1385/MB:29:1:39. PMID 15668518. S2CID 45702164.
Park DJ (April 2004). "3' RACE LaNe: a simple and rapid fully nested PCR method to determine 3'-terminal cDNA sequence". BioTechniques. 36 (4): 586–8, 590. doi:10.2144/04364BM04. PMID 15088375.
"Key ingredient in coronavirus tests comes from Yellowstone's lakes". Science. 31 March 2020. Retrieved 13 May 2020.
Kleppe K, Ohtsuka E, Kleppe R, Molineux I, Khorana HG (March 1971). "Studies on polynucleotides. XCVI. Repair replications of short synthetic DNA's as catalyzed by DNA polymerases". Journal of Molecular Biology. 56 (2): 341–61. doi:10.1016/0022-2836(71)90469-4. PMID 4927950.
Rabinow, Paul (1996). Making PCR: A Story of Biotechnology. Chicago: University of Chicago Press. ISBN 978-0-226-70146-2.
Mullis, Kary (1998). Dancing Naked in the Mind Field. New York: Pantheon Books. ISBN 978-0-679-44255-4.
Mullis KB (April 1990). "The unusual origin of the polymerase chain reaction". Scientific American. 262 (4): 56–61, 64–5. Bibcode:1990SciAm.262d..56M. doi:10.1038/scientificamerican0490-56. PMID 2315679.
Patidar M, Agrawal S, Parveen F, Khare P (2015). "Molecular insights of saliva in solving paternity dispute". Journal of Forensic Dental Sciences. 7 (1): 76–9. doi:10.4103/0975-1475.150325. PMC 4330625. PMID 25709326.
"The Nobel Prize in Chemistry 1993". NobelPrize.org.
"The Nobel Prize in Chemistry 1993". NobelPrize.org.
"Citations for Chemical Breakthrough Awards 2017 Awardees". Division of the History of Chemistry. Retrieved 12 March 2018.

    "Advice on How to Survive the Taq Wars". GEN Genetic Engineering News – Biobusiness Channel. 26 (9). 1 May 2006.

External links
Library resources about
Polymerase chain reaction

    Resources in your library
    Resources in other libraries

	Wikimedia Commons has media related to Polymerase chain reaction.

    How to design Primer in vitro
    PCR Animation maxanim.com
    Full Form of PCR
    OpenPCR Open-source PCR thermalcycler project
    US Patent for PCR
    OpenWetWare
    What is PCR plateau effect? YouTube tutorial video
    GeneWarrior Online PCR Primer design tool
    History of the Polymerase Chain Reaction from the Smithsonian Institution Archives
    Computer exercise. Design of PCR and PCR-RFLP experiments

    vte

Polymerase chain reaction techniques
Procedure	

    Initialization cycle
        Denaturation Annealing elongation Final elongation Final hold

Polymerase	

    Klenow T4 and T7 Taq Tth Pfu Vent Pwo Tli Tfu

Optimization
& variants	

    Quantitative polymerase chain reaction (qPCR) Reverse transcription polymerase chain reaction (RT-PCR) Inverse polymerase chain reaction (Inverse PCR) Nested polymerase chain reaction (Nested PCR) Touchdown polymerase chain reaction Hot start PCR Overlap extension polymerase chain reaction (OE-PCR) Multiplex polymerase chain reaction (Multiplex-PCR) Multiplex ligation-dependent probe amplification (MLPA) co-amplification at lower denaturation temperature-PCR (COLD-PCR)

History
& people	

    Kary Mullis Kjell Kleppe Alice Chien

    Issoria lathonia.jpgBiology portal

Authority control Edit this at Wikidata	

    GND: 4256726-9 LCCN: sh89002539 MA: 28134486, 49105822

Categories:

    Polymerase chain reactionMolecular biologyLaboratory techniquesDNA profiling techniquesAmplifiersHoffmann-La RocheBiotechnologyMolecular biology techniquesAmerican inventions

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Català
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    اردو
    中文

Edit links

    This page was last edited on 14 May 2021, at 20:30 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki














! Question answering
!! 
!! https://en.wikipedia.org/wiki/Question_answering
!! 
From Wikipedia, the free encyclopedia

For other uses, see Question and Answer.

Question answering (QA) is a computer science discipline within the fields of information retrieval and natural language processing (NLP), which is concerned with building systems that automatically answer questions posed by humans in a natural language.[1]
Contents

    1 Overview
    2 History
    3 Architecture
    4 Question answering methods
        4.1 Open domain question answering
        4.2 Mathematical question answering
    5 Progress
    6 References
    7 Further reading
    8 External links

Overview

A question answering implementation, usually a computer program, may construct its answers by querying a structured database of knowledge or information, usually a knowledge base. More commonly, question answering systems can pull answers from an unstructured collection of natural language documents.

Some examples of natural language document collections used for question answering systems include:

    a local collection of reference texts
    internal organization documents and web pages
    compiled newswire reports
    a set of Wikipedia pages
    a subset of World Wide Web pages

Question answering research attempts to deal with a wide range of question types including: fact, list, definition, How, Why, hypothetical, semantically constrained, and cross-lingual questions.

    Closed-domain question answering deals with questions under a specific domain (for example, medicine or automotive maintenance), and can exploit domain-specific knowledge frequently formalized in ontologies. Alternatively, closed-domain might refer to a situation where only a limited type of questions are accepted, such as questions asking for descriptive rather than procedural information. Question answering systems in the context of machine reading applications have also been constructed in the medical domain, for instance related to Alzheimer's disease.[2]
    Open-domain question answering deals with questions about nearly anything, and can only rely on general ontologies and world knowledge. On the other hand, these systems usually have much more data available from which to extract the answer.

History

Two early question answering systems were BASEBALL[3] and LUNAR.[4] BASEBALL answered questions about the US baseball league over a period of one year. LUNAR, in turn, answered questions about the geological analysis of rocks returned by the Apollo moon missions. Both question answering systems were very effective in their chosen domains. In fact, LUNAR was demonstrated at a lunar science convention in 1971 and it was able to answer 90% of the questions in its domain posed by people untrained on the system. Further restricted-domain question answering systems were developed in the following years. The common feature of all these systems is that they had a core database or knowledge system that was hand-written by experts of the chosen domain. The language abilities of BASEBALL and LUNAR used techniques similar to ELIZA and DOCTOR, the first chatterbot programs.

SHRDLU was a highly successful question-answering program developed by Terry Winograd in the late 1960s and early 1970s. It simulated the operation of a robot in a toy world (the "blocks world"), and it offered the possibility of asking the robot questions about the state of the world. Again, the strength of this system was the choice of a very specific domain and a very simple world with rules of physics that were easy to encode in a computer program.

In the 1970s, knowledge bases were developed that targeted narrower domains of knowledge. The question answering systems developed to interface with these expert systems produced more repeatable and valid responses to questions within an area of knowledge. These expert systems closely resembled modern question answering systems except in their internal architecture. Expert systems rely heavily on expert-constructed and organized knowledge bases, whereas many modern question answering systems rely on statistical processing of a large, unstructured, natural language text corpus.

The 1970s and 1980s saw the development of comprehensive theories in computational linguistics, which led to the development of ambitious projects in text comprehension and question answering. One example of such a system was the Unix Consultant (UC), developed by Robert Wilensky at U.C. Berkeley in the late 1980s. The system answered questions pertaining to the Unix operating system. It had a comprehensive hand-crafted knowledge base of its domain, and it aimed at phrasing the answer to accommodate various types of users. Another project was LILOG, a text-understanding system that operated on the domain of tourism information in a German city. The systems developed in the UC and LILOG projects never went past the stage of simple demonstrations, but they helped the development of theories on computational linguistics and reasoning.

Specialized natural language question answering systems have been developed, such as EAGLi for health and life scientists.
Architecture

As of 2001, question answering systems typically included a question classifier module that determines the type of question and the type of answer.[5]
Question answering methods

Question answering is very dependent on a good search corpus—for without documents containing the answer, there is little any question answering system can do. It thus makes sense that larger collection sizes generally lend well to better question answering performance, unless the question domain is orthogonal to the collection. The notion of data redundancy in massive collections, such as the web, means that nuggets of information are likely to be phrased in many different ways in differing contexts and documents,[6] leading to two benefits:

    By having the right information appear in many forms, the burden on the question answering system to perform complex NLP techniques to understand the text is lessened.
    Correct answers can be filtered from false positives by relying on the correct answer to appear more times in the documents than instances of incorrect ones.

Some question answering systems rely heavily on automated reasoning.[7][8]
Open domain question answering
	
This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (January 2016) (Learn how and when to remove this template message)

In information retrieval, an open domain question answering system aims at returning an answer in response to the user's question. The returned answer is in the form of short texts rather than a list of relevant documents.[9] The system uses a combination of techniques from computational linguistics, information retrieval and knowledge representation for finding answers.

The system takes a natural language question as an input rather than a set of keywords, for example, "When is the national day of China?" The sentence is then transformed into a query through its logical form. Having the input in the form of a natural language question makes the system more user-friendly, but harder to implement, as there are various question types and the system will have to identify the correct one in order to give a sensible answer. Assigning a question type to the question is a crucial task, the entire answer extraction process relies on finding the correct question type and hence the correct answer type.

Keyword extraction is the first step for identifying the input question type.[10] In some cases, there are clear words that indicate the question type directly, i.e., "Who", "Where" or "How many", these words tell the system that the answers should be of type "Person", "Location", or "Number", respectively. In the example above, the word "When" indicates that the answer should be of type "Date". POS (part-of-speech) tagging and syntactic parsing techniques can also be used to determine the answer type. In this case, the subject is "Chinese National Day", the predicate is "is" and the adverbial modifier is "when", therefore the answer type is "Date". Unfortunately, some interrogative words like "Which", "What" or "How" do not give clear answer types. Each of these words can represent more than one type. In situations like this, other words in the question need to be considered. First thing to do is to find the words that can indicate the meaning of the question. A lexical dictionary such as WordNet can then be used for understanding the context.

Once the question type has been identified, an information retrieval system is used to find a set of documents containing the correct keywords. A tagger and NP/Verb Group chunker can be used to verify whether the correct entities and relations are mentioned in the found documents. For questions such as "Who" or "Where", a named-entity recogniser is used to find relevant "Person" and "Location" names from the retrieved documents. Only the relevant paragraphs are selected for ranking.

A vector space model can be used as a strategy for classifying the candidate answers. Check if the answer is of the correct type as determined in the question type analysis stage. An inference technique can also be used to validate the candidate answers. A score is then given to each of these candidates according to the number of question words it contains and how close these words are to the candidate, the more and the closer the better. The answer is then translated into a compact and meaningful representation by parsing. In the previous example, the expected output answer is "1st Oct."
Mathematical question answering

An open source math-aware question answering system based on Ask Platypus and Wikidata was published in 2018.[11] The system takes an English or Hindi natural language question as input and returns a mathematical formula retrieved from Wikidata as succinct answer. The resulting formula is translated into a computable form, allowing the user to insert values for the variables. Names and values of variables and common constants are retrieved from Wikidata if available. It is claimed that the system outperforms a commercial computational mathematical knowledge engine on a test set.
Progress

Question answering systems have been extended in recent years to encompass additional domains of knowledge[12] For example, systems have been developed to automatically answer temporal and geospatial questions, questions of definition and terminology, biographical questions, multilingual questions, and questions about the content of audio, images,[13] and video.[14] Current question answering research topics include:

    interactivity—clarification of questions or answers[15]
    answer reuse or caching[citation needed]
    semantic parsing[16]
    answer presentation[17]
    knowledge representation and reasoning
    social media analysis with question answering systems
    sentiment analysis[18]
    utilization of thematic roles[19]
    semantic resolution: to bridge the gap between syntactically different questions and answer-bearing texts[20]
    utilization of linguistic resources,[21] such as WordNet, FrameNet, and the similar
    Image captioning for visual question answering[13]

In 2011, Watson, a question answering computer system developed by IBM, competed in two exhibition matches of Jeopardy! against Brad Rutter and Ken Jennings, winning by a significant margin.[22] Facebook Research has made their DrQA system[23] available under an open source license. This system has been used for open domain question answering using Wikipedia as knowledge source.[24]
References

Philipp Cimiano; Christina Unger; John McCrae (1 March 2014). Ontology-Based Interpretation of Natural Language. Morgan & Claypool Publishers. ISBN 978-1-60845-990-2.
Roser Morante, Martin Krallinger, Alfonso Valencia and Walter Daelemans. Machine Reading of Biomedical Texts about Alzheimer's Disease. CLEF 2012 Evaluation Labs and Workshop. September 17, 2012
GREEN JR, Bert F; et al. (1961). "Baseball: an automatic question-answerer" (PDF). Western Joint IRE-AIEE-ACM Computer Conference: 219–224.
Woods, William A; Kaplan, R. (1977). "Lunar rocks in natural English: Explorations in natural language question answering". Linguistic Structures Processing 5. 5: 521–569.
Hirschman, L. & Gaizauskas, R. (2001) Natural Language Question Answering. The View from Here. Natural Language Engineering (2001), 7:4:275-300 Cambridge University Press.
Lin, J. (2002). The Web as a Resource for Question Answering: Perspectives and Challenges. In Proceedings of the Third International Conference on Language Resources and Evaluation (LREC 2002).
Moldovan, Dan, et al. "Cogex: A logic prover for question answering." Proceedings of the 2003 Conference of the North American Chapter of the Association for Computational Linguistics on Human Language Technology-Volume 1. Association for Computational Linguistics, 2003.
Furbach, Ulrich, Ingo Glöckner, and Björn Pelzer. "An application of automated reasoning in natural language question answering." Ai Communications 23.2-3 (2010): 241-265.
Sun, Haitian; Dhingra, Bhuwan; Zaheer, Manzil; Mazaitis, Kathryn; Salakhutdinov, Ruslan; Cohen, William (2018). "Open Domain Question Answering Using Early Fusion of Knowledge Bases and Text". Association for Computational Linguistics. Brussels, Belgium: 4231–4242. arXiv:1809.00782.
Harabagiu, Sanda; Hickl, Andrew (2006). "Methods for using textual entailment in open-domain question answering". Association for Computational Linguistics. Proceedings of the 21st International Conference on Computational Linguistics and 44th Annual Meeting of the Association for Computational Linguistics: 905–912. doi:10.3115/1220175.1220289.
Moritz Schubotz; Philipp Scharpf; et al. (12 September 2018). "Introducing MathQA: a Math-Aware question answering system". Information Discovery and Delivery. Emerald Publishing Limited. 46 (4): 214–224. doi:10.1108/IDD-06-2018-0022.
Paşca, Marius (2005). "Book Review New Directions in Question Answering Mark T. Maybury (editor) (MITRE Corporation) Menlo Park, CA: AAAI Press and Cambridge, MA: The MIT Press, 2004, xi+336 pp; paperbound, ISBN 0-262-63304-3, $40.00, £25.95". Computational Linguistics. 31 (3): 413–417. doi:10.1162/089120105774321055. S2CID 12705839.
Anderson, Peter, et al. "Bottom-up and top-down attention for image captioning and visual question answering." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018.
Zhu, Linchao, et al. "Uncovering the temporal context for video question answering." International Journal of Computer Vision 124.3 (2017): 409-421.
Quarteroni, Silvia, and Suresh Manandhar. "Designing an interactive open-domain question answering system." Natural Language Engineering 15.1 (2009): 73-95.
Yih, Wen-tau, Xiaodong He, and Christopher Meek. "Semantic parsing for single-relation question answering." Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers). 2014.
Perera, R., Nand, P. and Naeem, A. 2017. Utilizing typed dependency subtree patterns for answer sentence generation in question answering systems.
"BitCrawl by Hobson Lane". Archived from the original on October 27, 2012. Retrieved 2012-05-29.
Perera, R. and Perera, U. 2012. Towards a thematic role based target identification model for question answering.
Bahadorreza Ofoghi; John Yearwood & Liping Ma (2008). The impact of semantic class identification and semantic role labeling on natural language answer extraction. The 30th European Conference on Information Retrieval (ECIR'08). Springer Berlin Heidelberg. pp. 430–437. doi:10.1007/978-3-540-78646-7_40.
Bahadorreza Ofoghi; John Yearwood & Liping Ma (2009). "The impact of frame semantic annotation levels, frame‐alignment techniques, and fusion methods on factoid answer processing". Journal of the American Society for Information Science and Technology. 60 (2): 247–263. doi:10.1002/asi.20989.
Markoff, John (2011-02-16). "On 'Jeopardy!' Watson Win is All but Trivial". The New York Times.
"DrQA".

    Chen, Danqi; Fisch, Adam; Weston, Jason; Bordes, Antoine (2017). "Reading Wikipedia to Answer Open-Domain Questions". arXiv:1704.00051 [cs.CL].

Further reading

    Dragomir R. Radev, John Prager, and Valerie Samn. Ranking suspected answers to natural language questions using predictive annotation. In Proceedings of the 6th Conference on Applied Natural Language Processing, Seattle, WA, May 2000.
    John Prager, Eric Brown, Anni Coden, and Dragomir Radev. Question-answering by predictive annotation. In Proceedings, 23rd Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, Athens, Greece, July 2000.
    Hutchins, W. John; Harold L. Somers (1992). An Introduction to Machine Translation. London: Academic Press. ISBN 978-0-12-362830-5.
    L. Fortnow, Steve Homer (2002/2003). A Short History of Computational Complexity. In D. van Dalen, J. Dawson, and A. Kanamori, editors, The History of Mathematical Logic. North-Holland, Amsterdam.

External links

    Question Answering Evaluation at NTCIR
    Question Answering Evaluation at TREC
    Question Answering Evaluation at CLEF
    Quiz Question Answers
    Online Question Answering System

    vte

Computable knowledge

    vte

Natural language processing
Categories:

    Artificial intelligence applicationsNatural language processingComputational linguisticsInformation retrieval genresTasks of natural language processingDeep learning

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Български
    Español
    Français
    한국어
    Italiano
    日本語
    Polski
    Русский
    中文

Edit links

    This page was last edited on 12 May 2021, at 17:33 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Rational Choice Theory

Rational choice theory
!! https://en.wikipedia.org/wiki/Rational_choice_theory

Rational choice theory refers to a set of guidelines that help understand economic and social behaviour. [1] The theory postulates that an individual will perform a cost-benefit analysis to determine whether an option is right for them. [2] It also suggests that an individual's self-driven rational actions will help better the overall economy. Rational choice theory looks at three concepts: rational actors, self interest and the invisible hand

Without explicitly dictating the goal or preferences of the individual, it may be impossible to empirically test or invalidate the rationality assumption. However, the predictions made by a specific version of the theory are testable. In recent years, the most prevalent version of rational choice theory, expected utility theory, has been challenged by the experimental results of behavioral economics. Economists are learning from other fields, such as psychology, and are enriching their theories of choice in order to get a more accurate view of human decision-making. For example, the behavioral economist and experimental psychologist Daniel Kahneman won the Nobel Memorial Prize in Economic Sciences in 2002 for his work in this field.

William Stanley Jevons Rational choice theory has proposed that there are two outcomes of two choices regarding human action. Firstly, the feasible region will be chosen within all the possible and related action. Second, after the preferred option has been chosen, the feasible region that has been selected was picked based on restriction of financial, legal, social, physical or emotional restrictions that the agent is facing. After that, a choice will be made based on the preference order. [8]

The concept of rationality used in rational choice theory is different from the colloquial and most philosophical use of the word. In this sense, "rational" behaviour can refer to "sensible", "predictable", or "in a thoughtful, clear-headed manner." Rational choice theory uses a much more narrow definition of rationality. At its most basic level, behavior is rational if it is goal-oriented, reflective (evaluative), and consistent (across time and different choice situations). This contrasts with behavior that is random, impulsive, conditioned, or adopted by (unevaluative) imitation.[citation needed]

Early neoclassical economists writing about rational choice, including William Stanley Jevons, assumed that agents make consumption choices so as to maximize their happiness, or utility. Contemporary theory bases rational choice on a set of choice axioms that need to be satisfied, and typically does not specify where the goal (preferences, desires) comes from. It mandates just a consistent ranking of the alternatives.[9]:501 Individuals choose the best action according to their personal preferences and the constraints facing them. E.g., there is nothing irrational in preferring fish to meat the first time, but there is something irrational in preferring fish to meat in one instant and preferring meat to fish in another, without anything else having changed.
''12-31-2020''

* Upgraded Stroll site and empty version of Stroll to TiddlyWiki version 5.1.23.
* Updated $:/plugins/wikilabs/link-to-tabs and $:/plugins/flibbles/relink to most recent versions.
* Updated [[$:/.giffmex/ui/EditTemplate]] because it was causing the delete and close buttons to stop working in edit mode after the upgrade to 5.1.23.
* Added the editor-autolist plugin by Saq Imtiaz, which makes numbered lists and bulleted lists easier to use. Hit enter to create a new line, tab to indent, shift+tab to unindent, and enter (twice) to escape list.  $:/plugins/sq/editor-autolist
* Added a new way to view references - as tabs!: [[$:/.giffmex/ViewTemplate/refstabs]] Try it out from the pink eyeball tab.
* Added [[Remove Stroll from your TW]] and edited [[Welcome to Stroll]] so it appears in the tabs.
* Still working on a fix for the non-functioning Close others and Fold others buttons in the more menu.


''8-8 -2020''

*Added update to the Stories plugin to fix the bug with the titles. If you have been keeping up with prior updates, you should be able to drag $:/plugins/sq/Stories and  $:/.giffmex/sidebar/advancedconfig to your file to fix it. If you encounter more problems, you may have an older version of Stroll, and you will need to drag the following tag pill to your file to update all Stroll tiddlers. {{$:/giffmex/stroll||$:/core/ui/TagTemplate}}

''8-3-2020''

*Added te new update to the Stories plugin. Now you can:
**Adjust the ratio between the two story columns (with a slider in the gear tab of the sidebar)
**Add a custom viewtemplate or edittemplate to your tiddlers (see [[$:/plugins/sq/Stories/changelog]], 1.01)
*To update, drag these links to your file: 
**[[$:/.giffmex/sidebar/advancedconfig]] (the slider added to the sidebar tab)
**[[$:/.giffmex/ViewTemplate/title]] (contained errors related to the sidebar tab)
**[[$:/core/ui/ViewTemplate/title]] (contained errors related to the sidebar tab)

''6-3-2020''

*Fixed an oversight which kept autocomplete from working. If your autocomplete doesn't work, drag [[this link|$:/config/EditorTypeMappings/text/vnd.tiddlywiki]] into your file. Updated the troubleshooting tab accordingly. Thanks to Fact Droid for catching this!

''5-27-2020''

*Added to the troubleshooting tab about ~TiddlyMap.

''5-21-2020''

*Now the only non-system tags will be yours. The others have been turned into system tags.
*Added the <<icon {{$:/core/images/chevron-down}}"">> button in editing view. Clicking this button reveals a dropdown which allows you to hide editing sections as desired, and expand the text area. This gives you more space and less clutter when writing and editing.
*Updated [[Advanced stuff]] [[Add Stroll to your TW]] accordingly.

''5-19-2020''

*Added instructions on updating Stroll
*Untagged 'stroll' from $:/DefaultTiddlers so that adding Stroll to an existing ~TiddlyWiki file will not overwrite the user's default tiddlers.

''5-16''

* Added a [[Troubleshooting]] section with hacks for Markdown, ~TiddlyMap, and iOS
* New to the [[Goodies file|https://giffmex.org/stroll/goodies.html]]: a new way to view references!

''5-14''

*Reverted the animation duration to the default 400. This was an unnecessary part of Stroll. Thanks to Faldrian for pointing this out, to keep Stroll lean and as much like a standard ~TiddlyWiki as possible.

''5-10:''

*Fixed description fields for the new-note-here buttons (thanks Gerrit Beine!)
*Put link to Muffin back in the pink eyeball tab (thanks Mark Krieg!).
*Added two new goodies to the [[Goodies file|https://giffmex.org/stroll/goodies.html]].

''5-9:''

*Changed Stylesheet tiddler to $:/.giffmex/.Stylesheet4Stroll, and removed the tc-sidebar-scrollable line, since it was conflicting with the Stories plugin and user tweaks. (It had been for the parallel tab in ~TiddlyBlink.)

*Added documentation for disabling autocomplete for iOS, etc, and additional explanation about importing the 'blinks' tag pill to one's own ~TiddlyWiki file.

*Added the present 'Updates to Stroll' tab.






To remove Stroll from to your own ~TiddlyWiki, 

# Open  $:/AdvancedSearch 
# Go to the 'Filter' tab
# Type or paste in `[tag[$:/giffmex/stroll]]`
# Hit the red garbage can button and click Delete these tiddlers. Save changes.






! Seawater greenhouse

!! https://en.wikipedia.org/wiki/Seawater_greenhouse

From Wikipedia, the free encyclopedia

	
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Seawater greenhouse" – news · newspapers · books · scholar · JSTOR (December 2011) (Learn how and when to remove this template message)

A seawater greenhouse is a greenhouse structure that enables the growth of crops and the production of fresh water in arid regions which constitute about one third of the earth's land area. This in response to the global water scarcity and peak water and the salt-infecting soil.[1] The system uses seawater and solar energy. It uses a similar structure to the pad-and-fan greenhouse, but with additional evaporators and condensers.[2] The seawater is pumped into the greenhouse to create a cool and humid environment, the optimal conditions for the cultivation of temperate crops.[3] The freshwater is produced in a condensed state created by the solar desalination principle, which removes salt and impurities.[4] Finally, the remaining humidified air is expelled from the greenhouse and used to improve growing conditions for outdoor plants.
Contents

    1 Projects
    2 Process
    3 Applicability
    4 Studies
    5 See also
    6 References
    7 External links

Projects

The Seawater Greenhouse Ltd

The seawater greenhouse concept was first researched and developed in 1991 by Charlie Paton's company Light Works Ltd, which is now known as the Seawater Greenhouse Ltd. Charlie Paton and Philip Davies worked on the first pilot project commenced in 1992, on the Canary Island of Tenerife. A prototype seawater greenhouse was assembled in the UK and constructed on the site in Tenerife covering an area of 360 m2.[5] The temperate crops successfully cultivated included tomatoes, spinach, dwarf peas, peppers, artichokes, French beans, and lettuce.

The second pilot design was installed in 2000 on the coast of Al-Aryam Island, Abu Dhabi, United Arab Emirates. The design is a light steel structure, similar to a multi-span polytunnel, which relies purely on solar energy. A pipe array is installed to improve the design of the greenhouse by decreasing the temperature and increasing the freshwater production.[6] The greenhouse has an area of 864 m2 and has a daily water production of 1 m3,which nearly meets the crop's irrigation demand.[7]

The third pilot seawater greenhouse, which is 864 m2, is near Muscat in Oman which produces 0.3 to 0.6 m3 of freshwater per day. This project was created as a collaboration between Sultan Qaboos University. It provides an opportunity to develop a sustainable horticultural sector on the Batinah coast. These projects have enabled the validation of a thermodynamic simulation model which, given appropriate meteorological data, accurately predicts and quantifies how the seawater greenhouse will perform in other parts of the world.[8]

The fourth project is the commercial installation in Port Augusta, Australia, installed in 2010. It is currently a 20 hectare seawater greenhouse owned and run by Sundrop Farms which has developed it further.[9][10]

The fifth design was constructed in 2017 in Berbera, Somalia.[11] The design was researched to be simplified and inexpensive with advanced greenhouse modeling techniques. This design includes a shading system which retains core evaporative cooling elements.[12]

Sahara Forest Project

The Sahara Forest Project (SFP) combines the seawater greenhouse technology and concentrated solar power and constructed pilot projects in Jordan and Qatar. The seawater greenhouse evaporates 50 m3 of seawater and harvests 5 m3 of fresh water per hectare per day.[13] The solar power production capacity through PV panels produces 39 KW on the 3 hectares area with 1350 m2 growing area.[14] The greenhouses are 15 degrees cooler than the outside temperatures which enables the production up to 130,000 kg vegetables produced per year and up to 20,000 liters of fresh water production per day.[15] Additionally, the project includes revegetation by soil reclamation of nitrogen-fixing and salt-removing desert plants by repurposed waste products from agriculture and saltwater evaporation.[16]
Process

A seawater greenhouse uses the surrounding environment to grow temperate crops and produce freshwater. The design for cooling the microclimate primarily consists of humidification and dehumidification (HD) desalination process or Multiple-effect humidification.[17] A simple seawater greenhouse consists of two evaporative coolers (evaporators), a condenser, fans, seawater and distilled water pipes and crops in between the two evaporators.[18] This is shown in schematic figures 1 and 2.
Figure 1: Schematic view of a Seawater Greenhouse in Algeria
	
Figure 2: Schematic view of a Seawater Greenhouse in Oman

The process recreates the natural hydrological cycle within a controlled environment of the greenhouse by evaporating water from saline water source and regains it as freshwater by condensation.[19] The first part of the system uses a seawater, an evaporator, and a condenser. The front wall of the greenhouse consists of a seawater-wetted evaporator which faces the prevailing wind. These are mostly constituted of corrugated cardboard shown in Figure 3. If the wind is not prevalent enough, fans blow the outside air through the evaporator into the greenhouse. The ambient warm air exchanges the heat with the seawater which cools it down and gets it humidified.[20][21] The cool and humid air creates an adequate growing environment for the crops. The remaining evaporatively-cooled seawater is collected and pumped to the condenser as a coolant.[22]
Figure 3: Seawater Greenhouse Carboard

In conventional greenhouses, it creates a warmer environment provided by the solar heat input to allow adequate growing temperature, whereas the seawater greenhouse does the opposite by creating a cooler environment. The roof traps infrared heat, while allowing visible light through to promote photosynthesis. The second part of the system has another evaporator. The seawater flows from the first evaporator which preheats it and thereafter flows through the solar thermal collector on the roof to heat it up sufficiently before it flows to the second evaporator.[23] The seawater, or coolant, flows through a circuit consisting of the evaporators, solar heating pipe, and condenser with an intake of seawater and an output of fresh water. The fresh water is produced by hot and relatively high humidity air which can produce sufficient distilled water for irrigation.[24] The volume of fresh water is determined by air temperature, relative humidity, solar radiation and the airflow rate. These conditions can be modeled with appropriate meteorological data, enabling the design and process to be optimized for any suitable location.
Applicability

The technique is applicable to sites in arid regions near the sea. The distance and elevation from the sea must be evaluated considering the energy required to pump water to the site. There are numerous suitable locations on the coasts; others are below sea level, such as the Dead Sea and the Qattara Depression, where hydro schemes have been proposed to exploit the hydraulic pressure to generate power, e.g., Red Sea–Dead Sea Canal.[25][26]
Studies

In 1996, Paton and Davies used the Simulink toolkit under MATLAB to model forced ventilation of the greenhouse in Tenerife, Cape Verde, Namibia, and Oman .[27] The greenhouse is assisted by the prevailing wind, evaporative cooling, transpiration, solar heating, heat transfer through the walls and roof, and condensation which is analyzed in the study .[28] They found that the amount of water required by the plants is reduced by 80% and 2.6-6.4 kWh electrical energy is needed for m3 of fresh water produced .[29]

In 2005, Paton and Davis Evaluated design options with thermal modeling using the United Arab Emirates model as a baseline.[30] They studied three options:perforated screen, C-shaped air path, and pipe array, to find a better seawater circuit to cool the environment and produce the most amount of freshwater. The study found that a pipe array gave the best results: an air temperature decrease of 1 °C, a mean radiant temperature decrease of 7.5 °C, and a freshwater production increase of 63%. This can be implemented to improve seawater greenhouses in hot arid regions such as the second pilot design in the United Arab Emirates.[31]

In 2018, Paton and Davis researched brine utilization for cooling and salt production in wind-driven seawater greenhouses to design and model it. The brine disposed by the seawater desalination may disturb the ecosystem as the same amount of brine is produced as freshwater.[32] By using the brine valoristation method of wind-driven air flow by cooling the greenhouse with seawater evaporation, salt can be produced as shown in Figure 4.[33] This brine is the by-product of the freshwater production, but can also be the ingredient to make salt, making it into a product that can be merchandised.
Figure 4: asic concept of seawater greenhouse for brine utilisation.

An additional finding of this research was the importance of the shade-net which is modelled by a thin film in the study shown in Figure 5.[34] It not only provides cooling, but also elongates the cooling plume by containing the cold air plume from the evaporative cooling pad.[35]
Figure 5: Geometric model of shade net for pressure drop determination showing (a) local co-ordinate system and (b) symmetry planes (dotted lines) used to simplify modelling.
See also

    Adaptation to global warming
    Agroforestry
    Concentrating solar power
    Desertec
    Ecological engineering methods
    Evaporation pond
    Evaporite
    Green Sahara
    IBTS Greenhouse
    Open pan salt making
    Peak water
    Saltern
    Solar desalination
    Solar humidification
    Water crisis

References

Abdulrahim M.Al-Ismaili & Hemanatha Jayasuriya (2016). "Seawater greenhouse in Oman: A sustainable technique for freshwater conservation and production". Desalination. Elsevier. 54: 653–664. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Abdulrahim M.Al-Ismaili & Hemanatha Jayasuriya (2016). "Seawater greenhouse in Oman: A sustainable technique for freshwater conservation and production". Desalination. Elsevier. 54: 653–664. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Abdulrahim M.Al-Ismaili & Hemanatha Jayasuriya (2016). "Seawater greenhouse in Oman: A sustainable technique for freshwater conservation and production". Desalination. Elsevier. 54: 653–664. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
M.H.El-Awady; H.H.El-Ghetany & M. AbdelLatif (2014). "Experimental Investigation of an Integrated Solar Green House for Water Desalination, Plantation and Wastewater Treatment in Remote Arid Egyptian Communities". Desalination. Elsevier. 50: 520–527. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Abdulrahim M.Al-Ismaili & Hemanatha Jayasuriya (2016). "Seawater greenhouse in Oman: A sustainable technique for freshwater conservation and production". Desalination. Elsevier. 54: 653–664. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
P. A. Davies & C. Paton (2005). "The Seawater Greenhouse in the United Arab Emirates: thermal modelling and evaluation of design options". Desalination. Elsevier. 173 (2): 103–111. doi:10.1016/j.desal.2004.06.211. Retrieved 2015-11-03.
Abdulrahim M.Al-Ismaili & Hemanatha Jayasuriya (2016). "Seawater greenhouse in Oman: A sustainable technique for freshwater conservation and production". Desalination. Elsevier. 54: 653–664. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
C. Paton & P. Davies (1996). "The Seawater Greenhouse for Arid Lands". ResearchGate. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
P. A. Davies & C. Paton (2005). "The Seawater Greenhouse in the United Arab Emirates: thermal modelling and evaluation of design options". Desalination. Elsevier. 173 (2): 103–111. doi:10.1016/j.desal.2004.06.211. Retrieved 2015-11-03.
T. Akinaga; S.C.Generalis; C.Paton; O.N.Igobo & P.A.Davies (2018). "Brine utilisation for cooling and salt production in wind-driven seawater greenhouses: Design and modelling". Desalination. Elsevier. 426: 135–154. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
"Low-cost, rugged and modular". Seawater Greenhouse Ltd. 2017. Retrieved 2020-12-16.
"Low-cost, rugged and modular". Seawater Greenhouse Ltd. 2017. Retrieved 2020-12-16.
Yeang, Ken & Pawlyn, Michael (2009). "The Seawater Greenhouse for Arid Lands". Architectural Design. 79: 122–123. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
"Enabling Restorative Growth" (PDF). Sahara Forest Project. Retrieved 16 December 2020.
"Enabling Restorative Growth" (PDF). Sahara Forest Project. Retrieved 16 December 2020.
"Enabling Restorative Growth" (PDF). Sahara Forest Project. Retrieved 16 December 2020.
Al-Ismaili & Abdulrahim M (2014). "Empirical Model for the Condenser of the Seawater Greenhouse". Chemical Engineering Communications. Taylor and Francis. 205: 1252–1260. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Taleb Zarei; Reza Behyad & Ehsan Abedini (2018). "Study on parameters effective on the performance of a humidification-dehumidification seawater greenhouse using support vector regression". Desalination. Elsevier. 435: 235–245. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Abdulrahim M.Al-Ismaili & Hemanatha Jayasuriya (2016). "Seawater greenhouse in Oman: A sustainable technique for freshwater conservation and production". Desalination. Elsevier. 54: 653–664. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Taleb Zarei; Reza Behyad & Ehsan Abedini (2018). "Study on parameters effective on the performance of a humidification-dehumidification seawater greenhouse using support vector regression". Desalination. Elsevier. 435: 235–245. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Abdulrahim M.Al-Ismaili & Hemanatha Jayasuriya (2016). "Seawater greenhouse in Oman: A sustainable technique for freshwater conservation and production". Desalination. Elsevier. 54: 653–664. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Abdulrahim M.Al-Ismaili & Hemanatha Jayasuriya (2016). "Seawater greenhouse in Oman: A sustainable technique for freshwater conservation and production". Desalination. Elsevier. 54: 653–664. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Taleb Zarei; Reza Behyad & Ehsan Abedini (2018). "Study on parameters effective on the performance of a humidification-dehumidification seawater greenhouse using support vector regression". Desalination. Elsevier. 435: 235–245. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
Taleb Zarei; Reza Behyad & Ehsan Abedini (2018). "Study on parameters effective on the performance of a humidification-dehumidification seawater greenhouse using support vector regression". Desalination. Elsevier. 435: 235–245. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
"Managing water for peace in the Middle East". archive.unu.edu.
"Pipe Headloss & Power calculator - calculate how much energy to pump seawater to the middle of the Sahara or Gobi Desert for desalination in the SeaWater Greenhouse - answer not a lot. - Claverton Group". claverton-energy.com.
C. Paton & P. Davies (1996). "The Seawater Greenhouse for Arid Lands". ResearchGate. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
C. Paton & P. Davies (1996). "The Seawater Greenhouse for Arid Lands". ResearchGate. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
C. Paton & P. Davies (1996). "The Seawater Greenhouse for Arid Lands". ResearchGate. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
P. A. Davies & C. Paton (2005). "The Seawater Greenhouse in the United Arab Emirates: thermal modelling and evaluation of design options". Desalination. Elsevier. 173 (2): 103–111. doi:10.1016/j.desal.2004.06.211. Retrieved 2015-11-03.
P. A. Davies & C. Paton (2005). "The Seawater Greenhouse in the United Arab Emirates: thermal modelling and evaluation of design options". Desalination. Elsevier. 173 (2): 103–111. doi:10.1016/j.desal.2004.06.211. Retrieved 2015-11-03.
T. Akinaga; S.C.Generalis; C.Paton; O.N.Igobo & P.A.Davies (2018). "Brine utilisation for cooling and salt production in wind-driven seawater greenhouses: Design and modelling". Desalination. Elsevier. 426: 135–154. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
T. Akinaga; S.C.Generalis; C.Paton; O.N.Igobo & P.A.Davies (2018). "Brine utilisation for cooling and salt production in wind-driven seawater greenhouses: Design and modelling". Desalination. Elsevier. 426: 135–154. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.
T. Akinaga; S.C.Generalis; C.Paton; O.N.Igobo & P.A.Davies (2018). "Brine utilisation for cooling and salt production in wind-driven seawater greenhouses: Design and modelling". Desalination. Elsevier. 426: 135–154. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.

    T. Akinaga; S.C.Generalis; C.Paton; O.N.Igobo & P.A.Davies (2018). "Brine utilisation for cooling and salt production in wind-driven seawater greenhouses: Design and modelling". Desalination. Elsevier. 426: 135–154. doi:10.1016/j.desal.2004.06.211. Retrieved 2020-12-17.

External links
	
This article's use of external links may not follow Wikipedia's policies or guidelines. Please improve this article by removing excessive or inappropriate external links, and converting useful links where appropriate into footnote references. (February 2019) (Learn how and when to remove this template message)

    "Engineers race to steal nature's secrets. Giant wind turbines based on a seed, and desalination plant that mimics a beetle", The Guardian (2006)
    "Seawater Greenhouse: A new approach to restorative agriculture"
    “Technologies for basic needs”
    "The Sahara Forest Project a new source of fresh water, food and energy"

Categories:

    GreenhousesWater desalinationWater technologyClimate change mitigationSustainable agriculture

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    বাংলা
    Deutsch
    Español
    Esperanto
    فارسی
    Français
    Italiano
    עברית

Edit links

    This page was last edited on 10 May 2021, at 16:48 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Second Industrial Revolution

!! https://en.wikipedia.org/wiki/Second_Industrial_Revolution

From Wikipedia, the free encyclopedia

History of technology
By technological eras
By historical regions
By type of technology
Technology timelines
Article indices

    vte

A German railway in 1895.
A telegraph used to emit in morse code.
The ocean liner SS Kaiser Wilhelm der Grosse, a steamboat. As the main means of trans-oceanic travel for more than a century, ocean liners were essential to the transport needs of national governments, commercial enterprises and the general public.

The Second Industrial Revolution, also known as the Technological Revolution,[1] was a phase of rapid standardization and industrialization from the late 19th century into the early 20th century. The First Industrial Revolution, which ended in the middle of the 19th century, was punctuated by a slowdown in important inventions before the Second Industrial Revolution in 1870. Though a number of its events can be traced to earlier innovations in manufacturing, such as the establishment of a machine tool industry, the development of methods for manufacturing interchangeable parts, and the invention of the Bessemer process to produce steel, the Second Industrial Revolution is generally dated between 1870 and 1914 (the beginning of World War I).[2]

Advancements in manufacturing and production technology enabled the widespread adoption of technological systems such as telegraph and railroad networks, gas and water supply, and sewage systems, which had earlier been concentrated to a few select cities. The enormous expansion of rail and telegraph lines after 1870 allowed unprecedented movement of people and ideas, which culminated in a new wave of globalization. In the same time period, new technological systems were introduced, most significantly electrical power and telephones. The Second Industrial Revolution continued into the 20th century with early factory electrification and the production line, and ended at the beginning of World War I.
Contents

    1 Overview
    2 Industry and technology
        2.1 Iron
        2.2 Steel
        2.3 Rail
        2.4 Electrification
        2.5 Machine tools
        2.6 Paper making
        2.7 Petroleum
        2.8 Chemical
        2.9 Maritime technology
        2.10 Rubber
        2.11 Bicycles
        2.12 Automobile
        2.13 Applied science
        2.14 Fertilizer
        2.15 Engines and turbines
        2.16 Telecommunications
        2.17 Modern business management
    3 Socio-economic impacts
    4 United Kingdom
    5 United States
        5.1 Employment distribution
    6 Germany
    7 Belgium
    8 Alternative uses
    9 See also
    10 Notes
    11 References
    12 External links

Overview

The Second Industrial Revolution was a period of rapid industrial development, primarily in the United Kingdom, Germany and the United States, but also in France, the Low Countries, Italy and Japan. It followed on from the First Industrial Revolution that began in Britain in the late 18th century that then spread throughout Western Europe. While the First Revolution was driven by limited use of steam engines, interchangeable parts and mass production, and was largely water-powered (especially in the United States), the Second was characterized by the build-out of railroads, large-scale iron and steel production, widespread use of machinery in manufacturing, greatly increased use of steam power, widespread use of the telegraph, use of petroleum and the beginning of electrification. It also was the period during which modern organizational methods for operating large scale businesses over vast areas came into use.[citation needed]

The concept was introduced by Patrick Geddes, Cities in Evolution (1910), and was being used by economists such as Erick Zimmerman (1951),[3] but David Landes' use of the term in a 1966 essay and in The Unbound Prometheus (1972) standardized scholarly definitions of the term, which was most intensely promoted by Alfred Chandler (1918–2007). However, some continue to express reservations about its use.[4]

Landes (2003) stresses the importance of new technologies, especially, the internal combustion engine, petroleum, new materials and substances, including alloys and chemicals, electricity and communication technologies (such as the telegraph, telephone and radio).[citation needed]

Vaclav Smil called the period 1867–1914 "The Age of Synergy" during which most of the great innovations were developed since the inventions and innovations were engineering and science-based.[5]
Industry and technology

A synergy between iron and steel, railroads and coal developed at the beginning of the Second Industrial Revolution. Railroads allowed cheap transportation of materials and products, which in turn led to cheap rails to build more roads. Railroads also benefited from cheap coal for their steam locomotives. This synergy led to the laying of 75,000 miles of track in the U.S. in the 1880s, the largest amount anywhere in world history.[6]
Iron

The hot blast technique, in which the hot flue gas from a blast furnace is used to preheat combustion air blown into a blast furnace, was invented and patented by James Beaumont Neilson in 1828 at Wilsontown Ironworks in Scotland. Hot blast was the single most important advance in fuel efficiency of the blast furnace as it greatly reduced the fuel consumption for making pig iron, and was one of the most important technologies developed during the Industrial Revolution.[7] Falling costs for producing wrought iron coincided with the emergence of the railway in the 1830s.

The early technique of hot blast used iron for the regenerative heating medium. Iron caused problems with expansion and contraction, which stressed the iron and caused failure. Edward Alfred Cowper developed the Cowper stove in 1857.[8] This stove used firebrick as a storage medium, solving the expansion and cracking problem. The Cowper stove was also capable of producing high heat, which resulted in very high throughput of blast furnaces. The Cowper stove is still used in today's blast furnaces.

With the greatly reduced cost of producing pig iron with coke using hot blast, demand grew dramatically and so did the size of blast furnaces.[9][10]
Steel
A diagram of the Bessemer converter. Air blown through holes in the converter bottom creates a violent reaction in the molten pig iron that oxidizes the excess carbon, converting the pig iron to pure iron or steel, depending on the residual carbon.

The Bessemer process, invented by Sir Henry Bessemer, allowed the mass-production of steel, increasing the scale and speed of production of this vital material, and decreasing the labor requirements. The key principle was the removal of excess carbon and other impurities from pig iron by oxidation with air blown through the molten iron. The oxidation also raises the temperature of the iron mass and keeps it molten.

The "acid" Bessemer process had a serious limitation in that it required relatively scarce hematite ore[11] which is low in phosphorus. Sidney Gilchrist Thomas developed a more sophisticated process to eliminate the phosphorus from iron. Collaborating with his cousin, Percy Gilchrist a chemist at the Blaenavon Ironworks, Wales, he patented his process in 1878;[12] Bolckow Vaughan & Co. in Yorkshire was the first company to use his patented process.[13] His process was especially valuable on the continent of Europe, where the proportion of phosphoric iron was much greater than in England, and both in Belgium and in Germany the name of the inventor became more widely known than in his own country. In America, although non-phosphoric iron largely predominated, an immense interest was taken in the invention.[13]
The Barrow Hematite Steel Company operated 18 Bessemer converters and owned the largest steelworks in the world at the turn of the 20th century.

The next great advance in steel making was the Siemens–Martin process. Sir Charles William Siemens developed his regenerative furnace in the 1850s, for which he claimed in 1857 to able to recover enough heat to save 70–80% of the fuel. The furnace operated at a high temperature by using regenerative preheating of fuel and air for combustion. Through this method, an open-hearth furnace can reach temperatures high enough to melt steel, but Siemens did not initially use it in that manner.

French engineer Pierre-Émile Martin was the first to take out a license for the Siemens furnace and apply it to the production of steel in 1865. The Siemens–Martin process complemented rather than replaced the Bessemer process. Its main advantages were that it did not expose the steel to excessive nitrogen (which would cause the steel to become brittle), it was easier to control, and that it permitted the melting and refining of large amounts of scrap steel, lowering steel production costs and recycling an otherwise troublesome waste material. It became the leading steel making process by the early 20th century.

The availability of cheap steel allowed building larger bridges, railroads, skyscrapers, and ships.[14] Other important steel products—also made using the open hearth process—were steel cable, steel rod and sheet steel which enabled large, high-pressure boilers and high-tensile strength steel for machinery which enabled much more powerful engines, gears and axles than were previously possible. With large amounts of steel it became possible to build much more powerful guns and carriages, tanks, armored fighting vehicles and naval ships.
Rail
A rail rolling mill in Donetsk, 1887.

The increase in steel production from the 1860s meant that railways could finally be made from steel at a competitive cost. Being a much more durable material, steel steadily replaced iron as the standard for railway rail, and due to its greater strength, longer lengths of rails could now be rolled. Wrought iron was soft and contained flaws caused by included dross. Iron rails could also not support heavy locomotives and was damaged by hammer blow. The first to make durable rails of steel rather than wrought iron was Robert Forester Mushet at the Darkhill Ironworks, Gloucestershire in 1857.

The first of Mushet's steel rails was sent to Derby Midland railway station. The rails were laid at part of the station approach where the iron rails had to be renewed at least every six months, and occasionally every three. Six years later, in 1863, the rail seemed as perfect as ever, although some 700 trains had passed over it daily.[15] This provided the basis for the accelerated construction of railways throughout the world in the late nineteenth century.

The first commercially available steel rails in the US were manufactured in 1867 at the Cambria Iron Works in Johnstown, Pennsylvania.[16]

Steel rails lasted over ten times longer than did iron,[17] and with the falling cost of steel, heavier weight rails were used. This allowed the use of more powerful locomotives, which could pull longer trains, and longer rail cars, all of which greatly increased the productivity of railroads.[18] Rail became the dominant form of transport infrastructure throughout the industrialized world,[19] producing a steady decrease in the cost of shipping seen for the rest of the century.[17]
Electrification
Main articles: Electrification and Electricity

The theoretical and practical basis for the harnessing of electric power was laid by the scientist and experimentalist Michael Faraday. Through his research on the magnetic field around a conductor carrying a direct current, Faraday established the basis for the concept of the electromagnetic field in physics.[20][21] His inventions of electromagnetic rotary devices were the foundation of the practical use of electricity in technology.
U.S. Patent#223898: Electric-Lamp. Issued January 27, 1880.

In 1881, Sir Joseph Swan, inventor of the first feasible incandescent light bulb, supplied about 1,200 Swan incandescent lamps to the Savoy Theatre in the City of Westminster, London, which was the first theatre, and the first public building in the world, to be lit entirely by electricity.[22][23] Swan's lightbulb had already been used in 1879 to light Mosley Street, in Newcastle upon Tyne, the first electrical street lighting installation in the world.[24][25] This set the stage for the electrification of industry and the home. The first large scale central distribution supply plant was opened at Holborn Viaduct in London in 1882[26] and later at Pearl Street Station in New York City.[27]
Three-phase rotating magnetic field of an AC motor. The three poles are each connected to a separate wire. Each wire carries current 120 degrees apart in phase. Arrows show the resulting magnetic force vectors. Three phase current is used in commerce and industry.

The first modern power station in the world was built by the English electrical engineer Sebastian de Ferranti at Deptford. Built on an unprecedented scale and pioneering the use of high voltage (10,000V) alternating current, it generated 800 kilowatts and supplied central London. On its completion in 1891 it supplied high-voltage AC power that was then "stepped down" with transformers for consumer use on each street. Electrification allowed the final major developments in manufacturing methods of the Second Industrial Revolution, namely the assembly line and mass production.[28]

Electrification was called "the most important engineering achievement of the 20th century" by the National Academy of Engineering.[29] Electric lighting in factories greatly improved working conditions, eliminating the heat and pollution caused by gas lighting, and reducing the fire hazard to the extent that the cost of electricity for lighting was often offset by the reduction in fire insurance premiums. Frank J. Sprague developed the first successful DC motor in 1886. By 1889 110 electric street railways were either using his equipment or in planning. The electric street railway became a major infrastructure before 1920. The AC motor (Induction motor) was developed in the 1890s and soon began to be used in the electrification of industry.[30] Household electrification did not become common until the 1920s, and then only in cities. Fluorescent lighting was commercially introduced at the 1939 World's Fair.

Electrification also allowed the inexpensive production of electro-chemicals, such as aluminium, chlorine, sodium hydroxide, and magnesium.[31]
Machine tools
Main article: Machine tool
A graphic representation of formulas for the pitches of threads of screw bolts.

The use of machine tools began with the onset of the First Industrial Revolution. The increase in mechanization required more metal parts, which were usually made of cast iron or wrought iron—and hand working lacked precision and was a slow and expensive process. One of the first machine tools was John Wilkinson's boring machine, that bored a precise hole in James Watt's first steam engine in 1774. Advances in the accuracy of machine tools can be traced to Henry Maudslay and refined by Joseph Whitworth. Standardization of screw threads began with Henry Maudslay around 1800, when the modern screw-cutting lathe made interchangeable V-thread machine screws a practical commodity.

In 1841, Joseph Whitworth created a design that, through its adoption by many British railroad companies, became the world's first national machine tool standard called British Standard Whitworth.[32] During the 1840s through 1860s, this standard was often used in the United States and Canada as well, in addition to myriad intra- and inter-company standards.

The importance of machine tools to mass production is shown by the fact that production of the Ford Model T used 32,000 machine tools, most of which were powered by electricity.[33] Henry Ford is quoted as saying that mass production would not have been possible without electricity because it allowed placement of machine tools and other equipment in the order of the work flow.[34]
Paper making
Main article: Paper machine

The first paper making machine was the Fourdrinier machine, built by Sealy and Henry Fourdrinier, stationers in London. In 1800, Matthias Koops, working in London, investigated the idea of using wood to make paper, and began his printing business a year later. However, his enterprise was unsuccessful due to the prohibitive cost at the time.[35][36][37]

It was in the 1840s, that Charles Fenerty in Nova Scotia and Friedrich Gottlob Keller in Saxony both invented a successful machine which extracted the fibres from wood (as with rags) and from it, made paper. This started a new era for paper making,[38] and, together with the invention of the fountain pen and the mass-produced pencil of the same period, and in conjunction with the advent of the steam driven rotary printing press, wood based paper caused a major transformation of the 19th century economy and society in industrialized countries. With the introduction of cheaper paper, schoolbooks, fiction, non-fiction, and newspapers became gradually available by 1900. Cheap wood based paper also allowed keeping personal diaries or writing letters and so, by 1850, the clerk, or writer, ceased to be a high-status job. By the 1880s chemical processes for paper manufacture were in use, becoming dominant by 1900.
Petroleum

The petroleum industry, both production and refining, began in 1848 with the first oil works in Scotland. The chemist James Young set up a tiny business refining the crude oil in 1848. Young found that by slow distillation he could obtain a number of useful liquids from it, one of which he named "paraffine oil" because at low temperatures it congealed into a substance resembling paraffin wax.[39] In 1850 Young built the first truly commercial oil-works and oil refinery in the world at Bathgate, using oil extracted from locally mined torbanite, shale, and bituminous coal to manufacture naphtha and lubricating oils; paraffin for fuel use and solid paraffin were not sold till 1856.

Cable tool drilling was developed in ancient China and was used for drilling brine wells. The salt domes also held natural gas, which some wells produced and which was used for evaporation of the brine. Chinese well drilling technology was introduced to Europe in 1828.[40]

Although there were many efforts in the mid-19th century to drill for oil Edwin Drake's 1859 well near Titusville, Pennsylvania, is considered the first "modern oil well".[41] Drake's well touched off a major boom in oil production in the United States.[42] Drake learned of cable tool drilling from Chinese laborers in the U. S.[43] The first primary product was kerosene for lamps and heaters.[31][44] Similar developments around Baku fed the European market.

Kerosene lighting was much more efficient and less expensive than vegetable oils, tallow and whale oil. Although town gas lighting was available in some cities, kerosene produced a brighter light until the invention of the gas mantle. Both were replaced by electricity for street lighting following the 1890s and for households during the 1920s. Gasoline was an unwanted byproduct of oil refining until automobiles were mass-produced after 1914, and gasoline shortages appeared during World War I. The invention of the Burton process for thermal cracking doubled the yield of gasoline, which helped alleviate the shortages.[44]
Chemical
The BASF-chemical factories in Ludwigshafen, Germany, 1881

Synthetic dye was discovered by English chemist William Henry Perkin in 1856. At the time, chemistry was still in a quite primitive state; it was still a difficult proposition to determine the arrangement of the elements in compounds and chemical industry was still in its infancy. Perkin's accidental discovery was that aniline could be partly transformed into a crude mixture which when extracted with alcohol produced a substance with an intense purple colour. He scaled up production of the new "mauveine", and commercialized it as the world's first synthetic dye.[45]

After the discovery of mauveine, many new aniline dyes appeared (some discovered by Perkin himself), and factories producing them were constructed across Europe. Towards the end of the century, Perkin and other British companies found their research and development efforts increasingly eclipsed by the German chemical industry which became world dominant by 1914.
Maritime technology
HMS Devastation, built in 1871, as it appeared in 1896
Propellers of the RMS Olympic, 1911

This era saw the birth of the modern ship as disparate technological advances came together.

The screw propeller was introduced in 1835 by Francis Pettit Smith who discovered a new way of building propellers by accident. Up to that time, propellers were literally screws, of considerable length. But during the testing of a boat propelled by one, the screw snapped off, leaving a fragment shaped much like a modern boat propeller. The boat moved faster with the broken propeller.[46] The superiority of screw against paddles was taken up by navies. Trials with Smith's SS Archimedes, the first steam driven screw, led to the famous tug-of-war competition in 1845 between the screw-driven HMS Rattler and the paddle steamer HMS Alecto; the former pulling the latter backward at 2.5 knots (4.6 km/h).

The first seagoing iron steamboat was built by Horseley Ironworks and named the Aaron Manby. It also used an innovative oscillating engine for power. The boat was built at Tipton using temporary bolts, disassembled for transportation to London, and reassembled on the Thames in 1822, this time using permanent rivets.

Other technological developments followed, including the invention of the surface condenser, which allowed boilers to run on purified water rather than salt water, eliminating the need to stop to clean them on long sea journeys. The Great Western[47] ,[48][49] built by engineer Isambard Kingdom Brunel, was the longest ship in the world at 236 ft (72 m) with a 250-foot (76 m) keel and was the first to prove that transatlantic steamship services were viable. The ship was constructed mainly from wood, but Brunel added bolts and iron diagonal reinforcements to maintain the keel's strength. In addition to its steam-powered paddle wheels, the ship carried four masts for sails.

Brunel followed this up with the Great Britain, launched in 1843 and considered the first modern ship built of metal rather than wood, powered by an engine rather than wind or oars, and driven by propeller rather than paddle wheel.[50] Brunel's vision and engineering innovations made the building of large-scale, propeller-driven, all-metal steamships a practical reality, but the prevailing economic and industrial conditions meant that it would be several decades before transoceanic steamship travel emerged as a viable industry.

Highly efficient multiple expansion steam engines began being used on ships, allowing them to carry less coal than freight.[51] The oscillating engine was first built by Aaron Manby and Joseph Maudslay in the 1820s as a type of direct-acting engine that was designed to achieve further reductions in engine size and weight. Oscillating engines had the piston rods connected directly to the crankshaft, dispensing with the need for connecting rods. In order to achieve this aim, the engine cylinders were not immobile as in most engines, but secured in the middle by trunnions which allowed the cylinders themselves to pivot back and forth as the crankshaft rotated, hence the term oscillating.

It was John Penn, engineer for the Royal Navy who perfected the oscillating engine. One of his earliest engines was the grasshopper beam engine. In 1844 he replaced the engines of the Admiralty yacht, HMS Black Eagle with oscillating engines of double the power, without increasing either the weight or space occupied, an achievement which broke the naval supply dominance of Boulton & Watt and Maudslay, Son & Field. Penn also introduced the trunk engine for driving screw propellers in vessels of war. HMS Encounter (1846) and HMS Arrogant (1848) were the first ships to be fitted with such engines and such was their efficacy that by the time of Penn's death in 1878, the engines had been fitted in 230 ships and were the first mass-produced, high-pressure and high-revolution marine engines.[52]

The revolution in naval design led to the first modern battleships in the 1870s, evolved from the ironclad design of the 1860s. The Devastation-class turret ships were built for the British Royal Navy as the first class of ocean-going capital ship that did not carry sails, and the first whose entire main armament was mounted on top of the hull rather than inside it.
Rubber

The vulcanization of rubber, by American Charles Goodyear and Englishman Thomas Hancock in the 1840s paved the way for a growing rubber industry, especially the manufacture of rubber tyres[53]

John Boyd Dunlop developed the first practical pneumatic tyre in 1887 in South Belfast. Willie Hume demonstrated the supremacy of Dunlop's newly invented pneumatic tyres in 1889, winning the tyre's first ever races in Ireland and then England.[54] [55] Dunlop's development of the pneumatic tyre arrived at a crucial time in the development of road transport and commercial production began in late 1890.
Bicycles

The modern bicycle was designed by the English engineer Harry John Lawson in 1876, although it was John Kemp Starley who produced the first commercially successful safety bicycle a few years later.[56] Its popularity soon grew, causing the bike boom of the 1890s.

Road networks improved greatly in the period, using the Macadam method pioneered by Scottish engineer John Loudon McAdam, and hard surfaced roads were built around the time of the bicycle craze of the 1890s. Modern tarmac was patented by British civil engineer Edgar Purnell Hooley in 1901.[57]
Automobile
Benz Patent-Motorwagen, first production automobile, first built in 1885
1910 Ford Model T

German inventor Karl Benz patented the world's first automobile in 1886. It featured wire wheels (unlike carriages' wooden ones)[58] with a four-stroke engine of his own design between the rear wheels, with a very advanced coil ignition [59] and evaporative cooling rather than a radiator.[59] Power was transmitted by means of two roller chains to the rear axle. It was the first automobile entirely designed as such to generate its own power, not simply a motorized-stage coach or horse carriage.

Benz began to sell the vehicle (advertising it as the Benz Patent Motorwagen) in the late summer of 1888, making it the first commercially available automobile in history.

Henry Ford built his first car in 1896 and worked as a pioneer in the industry, with others who would eventually form their own companies, until the founding of Ford Motor Company in 1903.[28] Ford and others at the company struggled with ways to scale up production in keeping with Henry Ford's vision of a car designed and manufactured on a scale so as to be affordable by the average worker.[28] The solution that Ford Motor developed was a completely redesigned factory with machine tools and special purpose machines that were systematically positioned in the work sequence. All unnecessary human motions were eliminated by placing all work and tools within easy reach, and where practical on conveyors, forming the assembly line, the complete process being called mass production. This was the first time in history when a large, complex product consisting of 5000 parts had been produced on a scale of hundreds of thousands per year.[28][33] The savings from mass production methods allowed the price of the Model T to decline from $780 in 1910 to $360 in 1916. In 1924 2 million T-Fords were produced and retailed $290 each.[60]
Applied science

Applied science opened many opportunities. By the middle of the 19th century there was a scientific understanding of chemistry and a fundamental understanding of thermodynamics and by the last quarter of the century both of these sciences were near their present-day basic form. Thermodynamic principles were used in the development of physical chemistry. Understanding chemistry greatly aided the development of basic inorganic chemical manufacturing and the aniline dye industries.

The science of metallurgy was advanced through the work of Henry Clifton Sorby and others. Sorby pioneered the study of iron and steel under microscope, which paved the way for a scientific understanding of metal and the mass-production of steel. In 1863 he used etching with acid to study the microscopic structure of metals and was the first to understand that a small but precise quantity of carbon gave steel its strength.[61] This paved the way for Henry Bessemer and Robert Forester Mushet to develop the method for mass-producing steel.

Other processes were developed for purifying various elements such as chromium, molybdenum, titanium, vanadium and nickel which could be used for making alloys with special properties, especially with steel. Vanadium steel, for example, is strong and fatigue resistant, and was used in half the automotive steel.[62] Alloy steels were used for ball bearings which were used in large scale bicycle production in the 1880s. Ball and roller bearings also began being used in machinery. Other important alloys are used in high temperatures, such as steam turbine blades, and stainless steels for corrosion resistance.

The work of Justus von Liebig and August Wilhelm von Hofmann laid the groundwork for modern industrial chemistry. Liebig is considered the "father of the fertilizer industry" for his discovery of nitrogen as an essential plant nutrient and went on to establish Liebig's Extract of Meat Company which produced the Oxo meat extract. Hofmann headed a school of practical chemistry in London, under the style of the Royal College of Chemistry, introduced modern conventions for molecular modeling and taught Perkin who discovered the first synthetic dye.

The science of thermodynamics was developed into its modern form by Sadi Carnot, William Rankine, Rudolf Clausius, William Thomson, James Clerk Maxwell, Ludwig Boltzmann and J. Willard Gibbs. These scientific principles were applied to a variety of industrial concerns, including improving the efficiency of boilers and steam turbines. The work of Michael Faraday and others was pivotal in laying the foundations of the modern scientific understanding of electricity.

Scottish scientist James Clerk Maxwell was particularly influential—his discoveries ushered in the era of modern physics.[63] His most prominent achievement was to formulate a set of equations that described electricity, magnetism, and optics as manifestations of the same phenomenon, namely the electromagnetic field.[64] The unification of light and electrical phenomena led to the prediction of the existence of radio waves and was the basis for the future development of radio technology by Hughes, Marconi and others.[65]

Maxwell himself developed the first durable colour photograph in 1861 and published the first scientific treatment of control theory.[66][67] Control theory is the basis for process control, which is widely used in automation, particularly for process industries, and for controlling ships and airplanes.[68] Control theory was developed to analyze the functioning of centrifugal governors on steam engines. These governors came into use in the late 18th century on wind and water mills to correctly position the gap between mill stones, and were adapted to steam engines by James Watt. Improved versions were used to stabilize automatic tracking mechanisms of telescopes and to control speed of ship propellers and rudders. However, those governors were sluggish and oscillated about the set point. James Clerk Maxwell wrote a paper mathematically analyzing the actions of governors, which marked the beginning of the formal development of control theory. The science was continually improved and evolved into an engineering discipline.
Fertilizer

Justus von Liebig was the first to understand the importance of ammonia as fertilizer, and promoted the importance of inorganic minerals to plant nutrition. In England, he attempted to implement his theories commercially through a fertilizer created by treating phosphate of lime in bone meal with sulfuric acid. Another pioneer was John Bennet Lawes who began to experiment on the effects of various manures on plants growing in pots in 1837, leading to a manure formed by treating phosphates with sulphuric acid; this was to be the first product of the nascent artificial manure industry.[69]

The discovery of coprolites in commercial quantities in East Anglia, led Fisons and Edward Packard to develop one of the first large-scale commercial fertilizer plants at Bramford, and Snape in the 1850s. By the 1870s superphosphates produced in those factories, were being shipped around the world from the port at Ipswich.[70][71]

The Birkeland–Eyde process was developed by Norwegian industrialist and scientist Kristian Birkeland along with his business partner Sam Eyde in 1903,[72] but was soon replaced by the much more efficient Haber process,[73] developed by the Nobel prize-winning chemists Carl Bosch of IG Farben and Fritz Haber in Germany.[74] The process utilized molecular nitrogen (N2) and methane (CH4) gas in an economically sustainable synthesis of ammonia (NH3). The ammonia produced in the Haber process is the main raw material for production of nitric acid.
Engines and turbines

The steam turbine was developed by Sir Charles Parsons in 1884. His first model was connected to a dynamo that generated 7.5 kW (10 hp) of electricity.[75] The invention of Parson's steam turbine made cheap and plentiful electricity possible and revolutionized marine transport and naval warfare.[76] By the time of Parson's death, his turbine had been adopted for all major world power stations.[77] Unlike earlier steam engines, the turbine produced rotary power rather than reciprocating power which required a crank and heavy flywheel. The large number of stages of the turbine allowed for high efficiency and reduced size by 90%. The turbine's first application was in shipping followed by electric generation in 1903.

The first widely used internal combustion engine was the Otto type of 1876. From the 1880s until electrification it was successful in small shops because small steam engines were inefficient and required too much operator attention.[5] The Otto engine soon began being used to power automobiles, and remains as today's common gasoline engine.

The diesel engine was independently designed by Rudolf Diesel and Herbert Akroyd Stuart in the 1890s using thermodynamic principles with the specific intention of being highly efficient. It took several years to perfect and become popular, but found application in shipping before powering locomotives. It remains the world's most efficient prime mover.[5]
Telecommunications
Major telegraph lines in 1891.

The first commercial telegraph system was installed by Sir William Fothergill Cooke and Charles Wheatstone in May 1837 between Euston railway station and Camden Town in London.[78]

The rapid expansion of telegraph networks took place throughout the century, with the first undersea cable being built by John Watkins Brett between France and England. The Atlantic Telegraph Company was formed in London in 1856 to undertake construction of a commercial telegraph cable across the Atlantic Ocean. This was successfully completed on 18 July 1866 by the ship SS Great Eastern, captained by Sir James Anderson after many mishaps along the away.[79] From the 1850s until 1911, British submarine cable systems dominated the world system. This was set out as a formal strategic goal, which became known as the All Red Line.[80]

The telephone was patented in 1876 by Alexander Graham Bell, and like the early telegraph, it was used mainly to speed business transactions.[81]

As mentioned above, one of the most important scientific advancements in all of history was the unification of light, electricity and magnetism through Maxwell's electromagnetic theory. A scientific understanding of electricity was necessary for the development of efficient electric generators, motors and transformers. David Edward Hughes and Heinrich Hertz both demonstrated and confirmed the phenomenon of electromagnetic waves that had been predicted by Maxwell.[5]

It was Italian inventor Guglielmo Marconi who successfully commercialized radio at the turn of the century.[82] He founded The Wireless Telegraph & Signal Company in Britain in 1897[83][84] and in the same year transmitted Morse code across Salisbury Plain, sent the first ever wireless communication over open sea[85] and made the first transatlantic transmission in 1901 from Poldhu, Cornwall to Signal Hill, Newfoundland. Marconi built high-powered stations on both sides of the Atlantic and began a commercial service to transmit nightly news summaries to subscribing ships in 1904.[86]

The key development of the vacuum tube by Sir John Ambrose Fleming in 1904 underpinned the development of modern electronics and radio broadcasting. Lee De Forest's subsequent invention of the triode allowed the amplification of electronic signals, which paved the way for radio broadcasting in the 1920s.
Modern business management

Railroads are credited with creating the modern business enterprise by scholars such as Alfred Chandler. Previously, the management of most businesses had consisted of individual owners or groups of partners, some of whom often had little daily hands-on operations involvement. Centralized expertise in the home office was not enough. A railroad required expertise available across the whole length of its trackage, to deal with daily crises, breakdowns and bad weather. A collision in Massachusetts in 1841 led to a call for safety reform. This led to the reorganization of railroads into different departments with clear lines of management authority. When the telegraph became available, companies built telegraph lines along the railroads to keep track of trains.[87]

Railroads involved complex operations and employed extremely large amounts of capital and ran a more complicated business compared to anything previous. Consequently, they needed better ways to track costs. For example, to calculate rates they needed to know the cost of a ton-mile of freight. They also needed to keep track of cars, which could go missing for months at a time. This led to what was called "railroad accounting", which was later adopted by steel and other industries, and eventually became modern accounting.[88]
Workers on the first moving assembly line put together magnetos and flywheels for 1913 Ford autos in Michigan.

Later in the Second Industrial Revolution, Frederick Winslow Taylor and others in America developed the concept of scientific management or Taylorism. Scientific management initially concentrated on reducing the steps taken in performing work (such as bricklaying or shoveling) by using analysis such as time-and-motion studies, but the concepts evolved into fields such as industrial engineering, manufacturing engineering, and business management that helped to completely restructure[citation needed] the operations of factories, and later entire segments of the economy.

Taylor's core principles included:[citation needed]

    replacing rule-of-thumb work methods with methods based on a scientific study of the tasks
    scientifically selecting, training, and developing each employee rather than passively leaving them to train themselves
    providing "detailed instruction and supervision of each worker in the performance of that worker's discrete task"
    dividing work nearly equally between managers and workers, such that the managers apply scientific-management principles to planning the work and the workers actually perform the tasks

Socio-economic impacts

The period from 1870 to 1890 saw the greatest increase in economic growth in such a short period as ever in previous history. Living standards improved significantly in the newly industrialized countries as the prices of goods fell dramatically due to the increases in productivity. This caused unemployment and great upheavals in commerce and industry, with many laborers being displaced by machines and many factories, ships and other forms of fixed capital becoming obsolete in a very short time span.[51]

    "The economic changes that have occurred during the last quarter of a century -or during the present generation of living men- have unquestionably been more important and more varied than during any period of the world's history".[51]

Crop failures no longer resulted in starvation in areas connected to large markets through transport infrastructure.[51]

Massive improvements in public health and sanitation resulted from public health initiatives, such as the construction of the London sewerage system in the 1860s and the passage of laws that regulated filtered water supplies—(the Metropolis Water Act introduced regulation of the water supply companies in London, including minimum standards of water quality for the first time in 1852). This greatly reduced the infection and death rates from many diseases.

By 1870 the work done by steam engines exceeded that done by animal and human power. Horses and mules remained important in agriculture until the development of the internal combustion tractor near the end of the Second Industrial Revolution.[89]

Improvements in steam efficiency, like triple-expansion steam engines, allowed ships to carry much more freight than coal, resulting in greatly increased volumes of international trade. Higher steam engine efficiency caused the number of steam engines to increase several fold, leading to an increase in coal usage, the phenomenon being called the Jevons paradox.[90]

By 1890 there was an international telegraph network allowing orders to be placed by merchants in England or the US to suppliers in India and China for goods to be transported in efficient new steamships. This, plus the opening of the Suez Canal, led to the decline of the great warehousing districts in London and elsewhere, and the elimination of many middlemen.[51]

The tremendous growth in productivity, transportation networks, industrial production and agricultural output lowered the prices of almost all goods. This led to many business failures and periods that were called depressions that occurred as the world economy actually grew.[51] See also: Long depression

The factory system centralized production in separate buildings funded and directed by specialists (as opposed to work at home). The division of labor made both unskilled and skilled labor more productive, and led to a rapid growth of population in industrial centers. The shift away from agriculture toward industry had occurred in Britain by the 1730s, when the percentage of the working population engaged in agriculture fell below 50%, a development that would only happen elsewhere (the Low Countries) in the 1830s and '40s. By 1890, the figure had fallen to under 10% and the vast majority of the British population was urbanized. This milestone was reached by the Low Countries and the US in the 1950s.[91]

Like the first industrial revolution, the second supported population growth and saw most governments protect their national economies with tariffs. Britain retained its belief in free trade throughout this period. The wide-ranging social impact of both revolutions included the remaking of the working class as new technologies appeared. The changes resulted in the creation of a larger, increasingly professional, middle class, the decline of child labor and the dramatic growth of a consumer-based, material culture.[92]

By 1900, the leaders in industrial production was Britain with 24% of the world total, followed by the US (19%), Germany (13%), Russia (9%) and France (7%). Europe together accounted for 62%.[93]

The great inventions and innovations of the Second Industrial Revolution are part of our modern life. They continued to be drivers of the economy until after WWII. Major innovations occurred in the post-war era, some of which are: computers, semiconductors, the fiber optic network and the Internet, cellular telephones, combustion turbines (jet engines) and the Green Revolution.[94] Although commercial aviation existed before WWII, it became a major industry after the war.
United Kingdom
Relative per capita levels of industrialization, 1750–1910.[95]

New products and services were introduced which greatly increased international trade. Improvements in steam engine design and the wide availability of cheap steel meant that slow, sailing ships were replaced with faster steamship, which could handle more trade with smaller crews. The chemical industries also moved to the forefront. Britain invested less in technological research than the U.S. and Germany, which caught up.

The development of more intricate and efficient machines along with mass production techniques (after 1910) greatly expanded output and lowered production costs. As a result, production often exceeded domestic demand. Among the new conditions, more markedly evident in Britain, the forerunner of Europe's industrial states, were the long-term effects of the severe Long Depression of 1873–1896, which had followed fifteen years of great economic instability. Businesses in practically every industry suffered from lengthy periods of low — and falling — profit rates and price deflation after 1873.
United States

The U.S had its highest economic growth rate in the last two decades of the Second Industrial Revolution;[96] however, population growth slowed while productivity growth peaked around the mid 20th century. The Gilded Age in America was based on heavy industry such as factories, railroads and coal mining. The iconic event was the opening of the First Transcontinental Railroad in 1869, providing six-day service between the East Coast and San Francisco.[97]

During the Gilded Age, American railroad mileage tripled between 1860 and 1880, and tripled again by 1920, opening new areas to commercial farming, creating a truly national marketplace and inspiring a boom in coal mining and steel production. The voracious appetite for capital of the great trunk railroads facilitated the consolidation of the nation's financial market in Wall Street. By 1900, the process of economic concentration had extended into most branches of industry—a few large corporations, some organized as "trusts" (e.g. Standard Oil), dominated in steel, oil, sugar, meatpacking, and the manufacture of agriculture machinery. Other major components of this infrastructure were the new methods for manufacturing steel, especially the Bessemer process. The first billion-dollar corporation was United States Steel, formed by financier J. P. Morgan in 1901, who purchased and consolidated steel firms built by Andrew Carnegie and others.[98]

Increased mechanization of industry and improvements to worker efficiency, increased the productivity of factories while undercutting the need for skilled labor. Mechanical innovations such as batch and continuous processing began to become much more prominent in factories. This mechanization made some factories an assemblage of unskilled laborers performing simple and repetitive tasks under the direction of skilled foremen and engineers. In some cases, the advancement of such mechanization substituted for low-skilled workers altogether. Both the number of unskilled and skilled workers increased, as their wage rates grew[99] Engineering colleges were established to feed the enormous demand for expertise. Together with rapid growth of small business, a new middle class was rapidly growing, especially in northern cities.[100]
Employment distribution

In the early 1900s there was a disparity between the levels of employment seen in the northern and southern United States. On average, states in the North had both a higher population, and a higher rate of employment than states in the South. The higher rate of employment is easily seen by considering the 1909 rates of employment compared to the populations of each state in the 1910 census. This difference was most notable in the states with the largest populations, such as New York and Pennsylvania. Each of these states had roughly 5 percent more of the total US workforce than would be expected given their populations. Conversely, the states in the South with the best actual rates of employment, North Carolina and Georgia, had roughly 2 percent less of the workforce than one would expect from their population. When the averages of all southern states and all northern states are taken, the trend holds with the North over-performing by about 2 percent, and the South under-performing by about 1 percent.[101]
Germany

The German Empire came to rival Britain as Europe's primary industrial nation during this period. Since Germany industrialized later, it was able to model its factories after those of Britain, thus making more efficient use of its capital and avoiding legacy methods in its leap to the envelope of technology. Germany invested more heavily than the British in research, especially in chemistry, motors and electricity. The German concern system (known as Konzerne), being significantly concentrated, was able to make more efficient use of capital. Germany was not weighted down with an expensive worldwide empire that needed defense. Following Germany's annexation of Alsace-Lorraine in 1871, it absorbed parts of what had been France's industrial base.[102]

By 1900 the German chemical industry dominated the world market for synthetic dyes. The three major firms BASF, Bayer and Hoechst produced several hundred different dyes, along with the five smaller firms. In 1913 these eight firms produced almost 90 percent of the world supply of dyestuffs, and sold about 80 percent of their production abroad. The three major firms had also integrated upstream into the production of essential raw materials and they began to expand into other areas of chemistry such as pharmaceuticals, photographic film, agricultural chemicals and electrochemical. Top-level decision-making was in the hands of professional salaried managers, leading Chandler to call the German dye companies "the world's first truly managerial industrial enterprises".[103] There were many spin offs from research—such as the pharmaceutical industry, which emerged from chemical research.[104]
Belgium

Belgium during the Belle Époque showed the value of the railways for speeding the Second Industrial Revolution. After 1830, when it broke away from the Netherlands and became a new nation, it decided to stimulate industry. It planned and funded a simple cruciform system that connected major cities, ports and mining areas, and linked to neighboring countries. Belgium thus became the railway center of the region. The system was soundly built along British lines, so that profits were low but the infrastructure necessary for rapid industrial growth was put in place.[105]
Alternative uses

There have been other times that have been called "second industrial revolution". Industrial revolutions may be renumbered by taking earlier developments, such as the rise of medieval technology in the 12th century, or of ancient Chinese technology during the Tang Dynasty, or of ancient Roman technology, as first. "Second industrial revolution" has been used in the popular press and by technologists or industrialists to refer to the changes following the spread of new technology after World War I.

Excitement and debate over the dangers and benefits of the Atomic Age were more intense and lasting than those over the Space age but both were predicted to lead to another industrial revolution. At the start of the 21st century[106] the term "second industrial revolution" has been used to describe the anticipated effects of hypothetical molecular nanotechnology systems upon society. In this more recent scenario, they would render the majority of today's modern manufacturing processes obsolete, transforming all facets of the modern economy. Subsequent industrial revolutions include the Digital revolution and Environmental revolution.
See also

    Digital Revolution, also known as the Third Industrial Revolution
    Fourth Industrial Revolution
    Productivity improving technologies (historical)
    British Agricultural Revolution
    Neolithic Revolution
    Scientific Revolution
    Industrial Revolution
    Information Revolution
    List of steel producers
    Transport Revolution
    Chemical Revolution
    Green Revolution
    Nanotechnology
    Kondratiev wave
    Capitalism in the nineteenth century
    Machine Age
    Suez Canal
    Economic history of the United Kingdom#19th century & 1900–1945
    Economic history of the United States#Late 19th century & Early 20th century
    Economic history of France#1789–1914 & 1914–1944
    Economic history of Germany#Industrial Revolution & Early 20th century
    Economic history of Italy#1861–1918
    Economic history of Japan#Meiji period & Early 20th century

Notes

Muntone, Stephanie. "Second Industrial Revolution". Education.com. The McGraw-Hill Companies. Archived from the original on 22 October 2013. Retrieved 14 October 2013.
The Second Industrial Revolution: 1870-1914
History of Electricity, Institute for Energy Research
James Hull, "The Second Industrial Revolution: The History of a Concept", Storia Della Storiografia, 1999, Issue 36, pp 81–90
Smil, Vaclav (2005). Creating the Twentieth Century: Technical Innovations of 1867–1914 and Their Lasting Impact. Oxford; New York: Oxford University Press. ISBN 0-19-516874-7.
Chandler 1993, pp. 171
Landes, David. S. (1969). The Unbound Prometheus: Technological Change and Industrial Development in Western Europe from 1750 to the Present. Cambridge, New York: Press Syndicate of the University of Cambridge. p. 92. ISBN 0-521-09418-6.
Landes & year-1969, pp. 256–7
Landes & year-1969, pp. 218
Misa, Thomas J. (1995). A Nation of Steel: The Making of Modern America 1965-1925. Baltimore and London: Johns Hopkins University Press. ISBN 978-0-8018-6502-2.
Landes & year-1969, pp. 228
Thomas, Sidney Gilchrist at Welsh Biography Online
Chisholm, Hugh, ed. (1911). "Thomas, Sidney Gilchrist" . Encyclopædia Britannica. 26 (11th ed.). Cambridge University Press. p. 867.
Alan Birch, Economic History of the British Iron and Steel Industry (2006)
Rolt, L.T.C (1974). Victorian Engineering. London: Pelican. p. 183.
Bianculli, Anthony J. (2003). Trains and Technology: Track and structures. Volume 3 of Trains and Technology: The American Railroad in the Nineteenth Century. Newark, DE: University of Delaware Press. p. 109. ISBN 978-0-87413-802-3.
Fogel, Robert W. (1964). Railroads and American Economic Growth: Essays in Econometric History. Baltimore: The Johns Hopkins Press. ISBN 0801811481.
Rosenberg, Nathan (1982). Inside the Black Box: Technology and Economics. Cambridge: Cambridge University Press. p. 60. ISBN 0-521-27367-6.
Grubler, Arnulf (1990). The Rise and Fall of Infrastructures (PDF). Archived from the original (PDF) on 2012-03-01.
Maxwell, James Clerk (1911). "Faraday, Michael" . In Chisholm, Hugh (ed.). Encyclopædia Britannica. 10 (11th ed.). Cambridge University Press. p. 173.
"Archives Biographies: Michael Faraday", The Institution of Engineering and Technology. Archived September 29, 2011, at the Wayback Machine
"The Savoy Theatre", The Times, October 3, 1881
Description of lightbulb experiment in The Times, December 29, 1881
"Sir Joseph Wilson Swan". home.frognet.net. Archived from the original on 10 May 2011. Retrieved 16 October 2010.
"Sir Joseph Swan, The Literary & Philosophical Society of Newcastle". rsc.org. 3 February 2009. Retrieved 16 October 2010.
"History of public supply in the UK". Archived from the original on 2010-12-01.
Hunter & Bryant 1991, p. 191.
Ford, Henry; Crowther, Samuel (1922). My Life and Work: An Autobiography of Henry Ford.
Constable, George; Somerville, Bob (2003). A Century of Innovation: Twenty Engineering Achievements That Transformed Our Lives. Washington, DC: Joseph Henry Press. ISBN 0-309-08908-5. (Viewable on line)
*Nye, David E. (1990). Electrifying America: Social Meanings of a New Technology. Cambridge, MA; London: The MIT Press. pp. 14, 15.
McNeil, Ian (1990). An Encyclopedia of the History of Technology. London: Routledge. ISBN 0-415-14792-1.
Roe 1916, pp. 9–10.
Hounshell, David A. (1984), From the American System to Mass Production, 1800–1932: The Development of Manufacturing Technology in the United States, Baltimore, Maryland: Johns Hopkins University Press, ISBN 978-0-8018-2975-8, LCCN 83016269, OCLC 1104810110
Ford, Henry; Crowther, Samuel (1930). Edison as I Know Him. New York: Cosmopolitan Book Company. p. 30.
Carruthers, George. Paper in the Making. Toronto: The Garden City Press Co-Operative, 1947.
Matthew, H.C.G. and Brian Harrison. "Koops. Matthias." Oxford Dictionary of National Biography: from the earliest times to the year 2000, Vol. 32. London: Oxford University Press, 2004: 80.
Burger, Peter. Charles Fenerty and his Paper Invention. Toronto: Peter Burger, 2007. ISBN 978-0-9783318-1-8. pp. 30–32.
Burger, Peter. Charles Fenerty and his Paper Invention. Toronto: Peter Burger, 2007. ISBN 978-0-9783318-1-8
Russell, Loris S. (2003). A Heritage of Light: Lamps and Lighting in the Early Canadian Home. University of Toronto Press. ISBN 0-8020-3765-8.
Temple, Robert; Joseph Needham (1986). The Genius of China: 3000 years of science, discovery and invention. New York: Simon and Schuster. pp. 52–4<Based on the works of Joseph Needham>
M. S. Vassiliou, Historical Dictionary of the Petroleum Industry, Scarecrow Press - 2009, page 13
Vassiliou, M. S. (2009). Historical Dictionary of the Petroleum Industry. Lanham, MD: Scarecrow Press (Rowman & Littlefield), 700pp
Temple 1986, pp. 54
Yergin, Daniel (1992). The Prize: The Epic Quest for Oil, Money & Power.
"Sir William Henry Perkin". MSU Gallery of Chemists' Photo-Portraits and Mini-Biographies. East Lansing, MI: Michigan State University, Department of Chemistry. 2003-05-16. Archived from the original on 2007-10-30.
"History and Design of Propellers: Part 1". the boatbuilding.community. 2004-02-07. Archived from the original on 2007-08-11. Retrieved 2007-09-03.
Buchanan (2006), pp. 57–59
Beckett (2006), pp. 171–173
Dumpleton and Miller (2002), pp. 34–46
Lienhard, John H (2003). The Engines of Our Ingenuity. Oxford University Press (US). ISBN 978-0-19-516731-3.
Wells, David A. (1890). Recent Economic Changes and Their Effect on Production and Distribution of Wealth and Well-Being of Society. New York: D. Appleton and Co. ISBN 0-543-72474-3.
Osbon, G. A., 1965, The Crimean War gunboats. Part. 1. The Mariner's Mirror, The Journal of the Society of Nautical Research. 51, 103–116 & Preston, A., & Major, 1965, J., Send a gunboat. Longmans, London.
1493: Uncovering the New World Columbus Created. Random House Digital, Inc. 2011. pp. 244–245. ISBN 9780307265722.
The Golden Book of Cycling - William Hume, 1938. Archive maintained by 'The Pedal Club'. Archived 2012-04-03 at the Wayback Machine
Dunlop, What sets Dunlop apart, History, 1889
"Icons of Invention: Rover safety bicycle, 1885". The Science Museum. Retrieved 2010-06-05.
Ralph Morton (2002), Construction UK: Introduction to the Industry, Oxford: Blackwell Science, p. 51, ISBN 0-632-05852-8, retrieved 22 June 2010.
G.N. Georgano Cars: Early and Vintage, 1886-1930. (London: Grange-Universal, 1985)
G.N. Georgano
Beaudreau, Bernard C. (1996). Mass Production, the Stock Market Crash and the Great Depression. New York, Lincoln, Shanghi: Authors Choice Press.
"Biography of Henry Clifton Sorby". Archived from the original on 5 February 2012. Retrieved 22 May 2012.
Steven Watts, The People's Tycoon: Henry Ford and the American Century (2006) p. 111
"Topology and Scottish mathematical physics". University of St Andrews. Retrieved 9 September 2013.
"James Clerk Maxwell". IEEE Global History Network. Retrieved 25 March 2013.
Maxwell, James Clerk (1865). "A dynamical theory of the electromagnetic field" (PDF). Philosophical Transactions of the Royal Society of London. 155: 459–512. Bibcode:1865RSPT..155..459C. doi:10.1098/rstl.1865.0008. S2CID 186207827.
Maxwell, James Clerk (1868). "On Governors". Proceedings of the Royal Society of London. 16: 270–283. doi:10.1098/rspl.1867.0055. JSTOR 112510.
Mayr, Otto (1971). "Maxwell and the Origins of Cybernetics". Isis. 62 (4): 424–444. doi:10.1086/350788.
Benett, Stuart (1986). A History of Control Engineering 1800–1930. Institution of Engineering and Technology. ISBN 978-0-86341-047-5.
Chisholm, Hugh, ed. (1911). "Lawes, Sir John Bennet" . Encyclopædia Britannica. 16 (11th ed.). Cambridge University Press. p. 300.
History of Fisons at Yara.com Archived 2006-05-20 at the Wayback Machine
"Oxford DNB".
Aaron John Ihde (1984). The development of modern chemistry. Courier Dover Publications. p. 678. ISBN 0486642356.
Trevor Illtyd Williams; Thomas Kingston Derry (1982). A short history of twentieth-century technology c. 1900-c. 1950. Oxford University Press. pp. 134–135. ISBN 0198581599.
Haber & Bosch Most influential persons of the 20th century, by Jürgen Schmidhuber
[1] Archived May 10, 2008, at the Wayback Machine
[2] Archived January 10, 2008, at the Wayback Machine
Parsons, Sir Charles A. "The Steam Turbine". Archived from the original on 2011-01-14.
The telegraphic age dawns Archived 2013-02-19 at the Wayback Machine BT Group Connected Earth Online Museum. Accessed December 2010, archived 10 Feb 2013
Wilson, Arthur (1994). The Living Rock: The Story of Metals Since Earliest Times and Their Impact on Civilization. p. 203. Woodhead Publishing. ISBN 978-1-85573-301-5.
Kennedy, P. M. (October 1971). "Imperial Cable Communications and Strategy, 1870-1914". The English Historical Review. 86 (341): 728–752. doi:10.1093/ehr/lxxxvi.cccxli.728. JSTOR 563928.
Richard John, Network Nation: Inventing American Telecommunications (2010)
Roy, Amit (8 December 2008). "Cambridge 'pioneer' honour for Bose". The Telegraph. Kolkota. Retrieved 10 June 2010.
Icons of invention: the makers of the modern world from Gutenberg to Gates. ABC-CLIO. 2009. ISBN 9780313347436. Retrieved 7 August 2011.
Ingenious Ireland: A County-by-County Exploration of the Mysteries and Marvels of the Ingenious Irish. Simon and Schuster. December 2003. ISBN 9780684020945. Retrieved 7 August 2011.
BBC Wales, Marconi's Waves
"The Clifden Station of the Marconi Wireless Telegraph System". Scientific American. 23 November 1907.
Compare: Chandler Jr., Alfred D. (1993). The Visible Hand: The Management Revolution in American Business. Belknap Press of Harvard University Press. p. 195. ISBN 978-0674940529. Retrieved 2017-06-29. "[...] the telegraph companies used the railroad for their rights-of-way, and the railroad used the services of the telegraph to coordinate the flow of trains and traffic. In fact, many of the first telegraph companies were subsidiaries of railroads, formed to carry out this essential operating service."
Compare: Chandler Jr., Alfred (1993). The Visible Hand. Harvard University Press. p. 115. ISBN 0674417682. Retrieved 2017-06-29. "[...] American railroad accounting overstated operating costs and understated capital consumption.[...] The basic innovations in financial and capital accounting appeared in the 1850s in response to specific needs and were perfected in the years after the Civil War. Innovations in a third type of accounting - cost accounting - came more slowly."
Ayres, Robert U.; Warr, Benjamin (2004). "Accounting for Growth: The Role of Physical Work" (PDF). Archived from the original (PDF) on 2018-07-24. Retrieved 2019-01-11.
Wells, David A. (1890). Recent Economic Changes and Their Effect on Production and Distribution of Wealth and Well-Being of Society. New York: D. Appleton and Co. ISBN 0-543-72474-3. "RECENT ECONOMIC CHANGES AND THEIR EFFECT ON DISTRIBUTION OF WEALTH AND WELL BEING OF SOCIETY WELLS."
David Grigg (1992). "Agriculture in the World Economy: an Historical Geography of Decline". Geography. 77 (3): 210–222. JSTOR 40572192.
Hull (1996)
Paul Kennedy, The Rise and Fall of the Great Powers (1987) p. 149, based on Paul Bairoch, "International Industrialization Levels from 1750 to 1980," Journal of European Economic History (1982) v. 11
Constable, George; Somerville, Bob (2003). A Century of Innovation: Twenty Engineering Achievements That Transformed Our Lives. Washington, DC: Joseph Henry Press. ISBN 0-309-08908-5.[permanent dead link]This link is to entire on line book.
Data from Paul Bairoch, "International Industrialization Levels from 1750 to 1980," Journal of European Economic History (1982) v. 11.
Vatter, Harold G.; Walker, John F.; Alperovitz, Gar (June 1995). "The onset and persistence of secular stagnation in the U.S. economy: 1910–1990, Journal of Economic Issues".
Stephen E. Ambrose, Nothing Like It In The World; The men who built the Transcontinental Railroad 1863–1869 (2000)
Edward C. Kirkland, Industry Comes of Age, Business, Labor, and Public Policy 1860–1897 (1961)
Daniel Hovey Calhoun, The American Civil Engineer: Origins and Conflicts (1960)
Walter Licht, Working for the Railroad: The Organization of Work in the Nineteenth Century (1983)
Steuart, William M. Abstract of the Census of Manufactures, 1914 .. Washington: Govt. Print. Off., 1917.
Broadberry and O'Rourke (2010)
Chandler (1990) p 474-5
Carsten Burhop, "Pharmaceutical Research in Wilhelmine Germany: the Case of E. Merck," Business History Review. Volume: 83. Issue: 3. 2009. pp 475+. in ProQuest
Patrick O’Brien, Railways and the Economic Development of Western Europe, 1830–1914 (1983)

    google.com

References

    Atkeson, Andrew and Patrick J. Kehoe. "Modeling the Transition to a New Economy: Lessons from Two Technological Revolutions," American Economic Review, March 2007, Vol. 97 Issue 1, pp 64–88 in EBSCO
    Appleby, Joyce Oldham. The Relentless Revolution: A History of Capitalism (2010) excerpt and text search
    Beaudreau, Bernard C. The Economic Consequences of Mr. Keynes: How the Second Industrial Revolution Passed Great Britain ( 2006)
    Bernal, J. D. (1970) [1953]. Science and Industry in the Nineteenth Century. Bloomington: Indiana University Press. ISBN 0-253-20128-4.
    Broadberry, Stephen, and Kevin H. O'Rourke. The Cambridge Economic History of Modern Europe (2 vol. 2010), covers 1700 to present
    Chandler, Jr., Alfred D. Scale and Scope: The Dynamics of Industrial Capitalism (1990).
    Chant, Colin, ed. Science, Technology and Everyday Life, 1870–1950 (1989) emphasis on Britain
    Hobsbawm, E. J. (1999). Industry and Empire: From 1750 to the Present Day. rev. and updated with Chris Wrigley (2nd ed.). New York: New Press. ISBN 1-56584-561-7.
    Hull, James O. "From Rostow to Chandler to You: How revolutionary was the second industrial revolution?" Journal of European Economic History',' Spring 1996, Vol. 25 Issue 1, pp. 191–208
    Kornblith, Gary. The Industrial Revolution in America (1997)
    Kranzberg, Melvin; Carroll W. Pursell Jr (1967). Technology in Western Civilization (2 vols. ed.). New York: Oxford University Press.
    Landes, David (2003). The Unbound Prometheus: Technical Change and Industrial Development in Western Europe from 1750 to the Present (2nd ed.). New York: Cambridge University Press. ISBN 0-521-53402-X.
    Licht, Walter. Industrializing America: The Nineteenth Century (1995)
    Mokyr, Joel The Second Industrial Revolution, 1870–1914 (1998)
    Mokyr, Joel. The Enlightened Economy: An Economic History of Britain 1700–1850 (2010)
    Rider, Christine, ed. Encyclopedia of the Age of the Industrial Revolution, 1700–1920 (2 vol. 2007)
    Roberts, Wayne. "Toronto Metal Workers and the Second Industrial Revolution, 1889–1914," Labour / Le Travail, Autumn 1980, Vol. 6, pp 49–72
    Smil, Vaclav. Creating the Twentieth Century: Technical Innovations of 1867–1914 and Their Lasting Impact

External links

    Media related to Industrial revolution at Wikimedia Commons

    vte

Industrial and technological revolution

    vte

History of technology

    vte

Economy of the United Kingdom

    vte

Recessions in the United States and Commonwealth of Nations countries

    vte

Financial bubbles

    vte

Financial crises
Categories:

    Second Industrial RevolutionIndustrial RevolutionIndustrial historyHistory of technology19th century in technology20th century in technologyElectric powerMass productionRevolutions by type

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Hrvatski
    Italiano
    Português
    中文

Edit links

    This page was last edited on 10 May 2021, at 07:16 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! Seigniorage
!! 
!! https://en.wikipedia.org/wiki/Seigniorage

From Wikipedia, the free encyclopedia


Seigniorage /ˈseɪnjərɪdʒ/, also spelled seignorage or seigneurage (from the Old French seigneuriage, "right of the lord (seigneur) to mint money"), is the difference between the value of money and the cost to produce and distribute it. The term can be applied in two ways:

    Seigniorage derived from specie (metal coins) is a tax added to the total cost of a coin (metal content and production costs) that a customer of the mint had to pay, and which was sent to the sovereign of the political region.[1]
    Seigniorage derived from notes is more indirect; it is the difference between interest earned on securities acquired in exchange for banknotes and the cost of producing and distributing the notes.[2]

"Monetary seigniorage" is where sovereign-issued securities are exchanged for newly-printed banknotes by a central bank, allowing the sovereign to "borrow" without needing to repay.[3] Monetary seigniorage is sovereign revenue obtained through routine debt monetization, including expansion of the money supply during GDP growth and meeting yearly inflation targets.[3]

Seigniorage can be a convenient source of revenue for a government. By providing the government with increased purchasing power at the expense of public purchasing power, it imposes what is metaphorically known as an inflation tax on the public.
Contents

    1 Examples
    2 Ordinary seigniorage
        2.1 Solvency constraints of central banks
    3 Seigniorage as a tax
    4 Contemporary use
    5 International circulation
    6 See also
    7 References
    8 External links

Examples

Seigniorage is the positive return, or carry, on issued notes and coins (money in circulation). Demurrage, the opposite, is the cost of holding currency.

An example of an exchange of gold for "paper" where no seigniorage occurs is when a person has one ounce of gold, trades it for a government-issued gold certificate (providing for redemption in one ounce of gold), keeps that certificate for a year, and redeems it in gold. That person began with and ends up with exactly one ounce of gold.

In another scenario, instead of issuing gold certificates a government converts gold into non-gold standard based currency at the market rate by printing paper notes. A person exchanges one ounce of gold for its value in currency, keeps the currency for one year, and exchanges it for an amount of gold at the new market value. If the value of the currency relative to gold has changed in the interim, the second exchange will yield more (or less) than one ounce of gold (assuming that the value, or purchasing power, of one ounce of gold remains constant through the year). If the value of the currency relative to gold has decreased, the person receives less than one ounce of gold and seigniorage occurred. If the value of the currency relative to gold has increased, the person receives more than one ounce of gold; seigniorage did not occur.
Ordinary seigniorage

Ordinarily, seigniorage is an interest-free loan (of gold, for example) to the issuer of the coin or banknote. When the currency is worn out the issuer buys it back at face value, balancing the revenue received when it was put into circulation without any additional amount for the interest value of what the issuer received.

Historically, seigniorage was the profit resulting from producing coins. Silver and gold were mixed with base metals to make durable coins. The British pound sterling was 92.5 percent silver; the base metal added (and the pure silver retained by the government mint) was, less costs, the profit – the seigniorage. Before 1933, United States gold coins were 90 percent gold and 10 percent copper. To make up for the lack of gold, the coins were over-weighted. A one-ounce Gold American Eagle will have as much of the alloy as needed to contain a total of one ounce of gold (which will be over one ounce). Seigniorage is earned by selling the coins above the melt value in exchange for guaranteeing the weight of the coin.

Under the rules governing the monetary operations of major central banks (including the Federal Reserve), seigniorage on banknotes is the interest payments received by central banks on the total amount of currency issued. This usually takes the form of interest payments on treasury bonds purchased by central banks, putting more dollars into circulation. If the currency is collected, or is otherwise taken permanently out of circulation, the currency is never returned to the central bank; the issuer of the currency keeps the seigniorage profit by not having to buy back worn-out currency at face value.
Solvency constraints of central banks

The solvency constraint of a standard central bank requires that the present discounted value of its net non-monetary liabilities (separate from monetary liabilities accrued through seigniorage attempts) be zero or negative in the long run. Its monetary liabilities are liabilities in name only, since they are irredeemable. The holder of base money cannot insist on the redemption of a given amount into anything other than the same amount of itself, unless the holder of the base money is another central bank reclaiming the value of its original interest-free loan.
Seigniorage as a tax

Economists regard seigniorage as a form of inflation tax, returning resources to the currency issuer. Issuing new currency, rather than collecting taxes paid with existing money, is considered a tax on holders of existing currency.[4] Inflation of the money supply causes a general rise in prices, due to the currency's reduced purchasing power.

This is a reason offered in support of free banking, a gold or silver standard, or (at a minimum) the reduction of political control of central banks, which could then ensure currency stability by controlling monetary expansion (limiting inflation). Hard-money advocates argue that central banks have failed to attain a stable currency. Orthodox economists counter that deflation is difficult to control once it sets in, and its effects are more damaging than modest, consistent inflation.

Banks (or governments) relying heavily on seigniorage and fractional reserve sources of revenue may find them counterproductive.[5] Rational expectations of inflation take into account a bank's seigniorage strategy, and inflationary expectations can maintain high inflation. Instead of accruing seigniorage from fiat money and credit, most governments opt to raise revenue primarily through formal taxation and other means
Contemporary use

The 50 State Quarters series of quarters (25-cent coins) began in 1999. The U.S. government thought that many people, collecting each new quarter as it rolled out of the United States Mint, would remove the coins from circulation.[6] Each complete set of quarters (the 50 states, the five inhabited U.S. territories, and the District of Columbia) is worth $14.00. Since it costs the mint about five cents to produce one quarter, the government made a profit when someone collected a coin.[7] The Treasury Department estimates that it earned about $6.3 billion in seigniorage from the quarters during the program.[8]

Some countries' national mints report the amount of seigniorage provided to their governments; the Royal Canadian Mint reported that in 2006 it generated $93 million in seigniorage for the government of Canada.[9] The U.S. government, the largest beneficiary of seigniorage, earned about $25 billion in 2000.[10] For coins only, the U.S. Treasury received 45 cents per dollar issued in seigniorage for the 2011 fiscal year.[11]

Occasionally, central banks have issued limited quantities of higher-value banknotes in unusual denominations for collecting; the denomination will usually coincide with an anniversary of national significance. The potential seigniorage from such printings has been limited, since the unusual denomination makes the notes more difficult to circulate and only a relatively-small number of people collect higher-value notes.

Over half of Zimbabwe's government revenue in 2008 was reportedly seigniorage.[12] The country has experienced hyperinflation, with an annualized rate of about 24,000 percent in July 2008 (prices doubling every 46 days).[13]
International circulation

The international circulation of banknotes is a profitable form of seigniorage. Although the cost of printing banknotes is minimal, the foreign entity must provide goods and services at the note's face value. The banknote is retained as a store of value, since the entity values it more than the local currency. Foreign circulation generally involves large-value banknotes, and can be used for private transactions (some of which are illegal).

American currency has been circulating globally for most of the 20th century, and the amount of currency in circulation increased several-fold during World War II. Large-scale printing of the United States one-hundred-dollar bill began when the Soviet Union dissolved in 1991; production quadrupled, with the first trillion-dollar printing of the bill. At the end of 2008, U.S. currency in public circulation amounted to $824 billion and 76 percent of the currency supply was in the form of $100 bills (twenty $100 bills per U.S. citizen).[14] The amount of U.S. currency circulating abroad is controversial. According to Porter and Judson,[15] 53 to 67 percent was overseas during the mid-1990s. Feige[16] estimates that about 40 percent is abroad. In a New York Federal Reserve publication, Goldberg[17] writes that "about 65 percent ($580 billion) of all banknotes are in circulation outside of the country". These figures are largely contradicted by Federal Reserve Board of Governors Flow of Funds statistics,[18][19] which indicate that $313 billion (36.7 percent) of U.S. currency was held abroad at the end of March 2009. Feige calculates that since 1964, "the cumulative seigniorage earnings accruing to the U.S. by virtue of the currency held by foreigners amounted to $167–$185 billion and over the past two decades seigniorage revenues from foreigners have averaged $6–$7 billion dollars per year".[This quote needs a citation]

The American $100 bill has competition from the €500 note, which facilitates the transport of larger amounts of money. One million dollars in $100 bills weighs 22 pounds (10kg), and is difficult to carry this much money without a briefcase and physical security. The same amount in €500 notes would weigh less than three pounds (1.4kg), which could be dispersed in clothing and luggage without attracting attention or alerting security devices. In illegal operations, transporting currency is logistically more difficult than transporting cocaine because of its size and weight, and the ease of transporting its banknotes makes the euro attractive to Latin American drug cartels.[20]

The Swiss 1,000-franc note, worth slightly more than $1,000, is probably the only other banknote in circulation outside its home country. However, it does not have a significant advantage over the €500 note to the non-Swiss; there are 20 times as many €500 notes in circulation, and they are more widely recognized. As a reserve currency, it makes up about 0.1% of the currency composition of official foreign-exchange reserves.[citation needed]

Governments vary in their issuance of large banknotes; in August 2009, the number of Fr. 1,000 notes in circulation was over three times the population of Switzerland. For comparison, the number of circulating £50 banknotes is slightly less than three times the population of the United Kingdom; the Fr. 1,000 franc note is worth about £600. The British government has been wary of large banknotes since the counterfeiting Operation Bernhard during World War II, which caused the Bank of England to withdraw all notes larger than £5 from circulation. The bank did not reintroduce other denominations until the early 1960s (£10), 1970 (£20) and March 20, 1981 (£50).
See also

    iconMoney portal

    Gold certificate
    Silver certificate
    Breakage
    Currency substitution
    Fractional reserve banking
    Full reserve banking
    Hyperinflation in Zimbabwe
    Money
    Monetarism
    Quantitative easing

References

"Quarterly Review" (PDF). Minneapolisfed.org. 1997. Retrieved 14 January 2019.
Bank of Canada (March 2012). "Backgrounders: Seigniorage" (PDF). Retrieved 2 January 2013.
Neumann, Manfred J.M. "Seigniorage in the United How Much Does the U.S. Government Make from Money Production?" (PDF). Federal Reserve Bank of St. Louis. Retrieved 17 June 2014.
Snowdon, Brian; Vane, Howard R. (11 April 2018). An Encyclopedia of Macroeconomics. Edward Elgar. ISBN 9781840643879. Retrieved 11 April 2018 – via Google Books.
Tara McIndoe-Calder, Hyperinflation in Zimbabwe: Money Demand, Seigniorage and Aid shocks, Central Bank of Ireland; University of Dublin - Institute for International Integration Studies, May 1, 2009
United States Mint 50 State Quarters® Design Use Policy, Usmint.gov, Retrieved December 5, 2013
"Frequently Asked Questions". The 50 State Quarters Program of the United States Mint. United States Mint. Archived from the original on 2007-07-13. Retrieved 2009-10-18.
"50 State Quarters Program Earned $6.3 Billion in Seigniorage - Coin Update". news.coinupdate.com. Retrieved 11 April 2018.
"Canadian Coins - Circulation, Collecting Coins & Coin Sets - the Royal Canadian Mint" (PDF). Mint.ca. Retrieved 11 April 2018.
"Archived copy". Archived from the original on 2009-11-04. Retrieved 2009-10-31.
United States Mint FY 2013 President’s Budget Submission United States Treasury
Gerson, Michael (2008-02-20). "Dying Silently In Zimbabwe". The Washington Post. Retrieved 2009-05-29.
"Archived copy". Archived from the original on 2014-06-17. Retrieved 2010-01-10.
Edgar L. Feige. ""New estimates of overseas U.S. currency holdings, the Underground economy and the "Tax Gap" Forthcoming in Crime, Law and Social Change". Ideas.repec.org.
Porter and Judson, 1996, R. D. Porter and R. A. Judson, The location of U.S. currency: How much is abroad? Federal Reserve Bulletin 82 (1996), pp. 883–903
E. L. Feige (1997). Revised estimates of the underground economy: Implications of U.S. currency held abroad, in O. Lippert and M. Walker (ed.) The Underground economy: Global evidence of its size and impact. pp. 151–208.
Goldberg, 2010, L. S. Goldberg, Is the International Role of the Dollar Changing? Federal Reserve Bank Of New York, Current Issues in Economics and Finance, 16(1) (2010) pp. 1–7.
"The Fed - Financial Accounts of the United States - Z.1 - Current Release". Federalreserve.gov. Retrieved 14 January 2019.
Edgar L. Feige. ""New estimates of overseas U.S. currency holdings, the Underground economy and the "Tax Gap"". Ideas.repec.org.

    "Latin American drug cartels find home in West Africa". CNN. September 21, 2009.

External links

    "A better way to account for fiat money at the Central Bank" By Thomas Colignatus, December 31, 2005
    Creating New Money: A Monetary Reform for the Information Age, by Joseph Huber and James Robertson
    Extensive discussion
    Information about Seigniorage
    Sovereignty & Seignorage
    "The temptation of dollar seigniorage", By Kosuke Takahashi of Asia Times Online, January 23, 2009.
    Dollar notes to be replaced by coins – The Royal Mint view By The Royal Mint, January 16, 2013

Authority control Edit this at Wikidata	

    BNF: cb177603817 (data) GND: 4390054-9 LCCN: sh2002007542 MA: 2778943661, 2780089521 SUDOC: 230342906

Categories:

    NumismaticsTaxManagement accounting

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    Italiano
    日本語
    Português
    Русский
    中文

Edit links

    This page was last edited on 3 May 2021, at 17:50 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

Learning and innovation skills: critical thinking and problem solving, communications and collaboration, creativity and innovation Digital literacy skills: information literacy, media literacy, Information and communication technologies (ICT) literacy Career and life skills: flexibility and adaptability, initiative and self-direction, social and cross-cultural interaction, productivity and accountability

! Semantic Web
!! 
!! https://en.wikipedia.org/wiki/Semantic_Web

From Wikipedia, the free encyclopedia
h
Semantics

    LinguisticLogical

    Analysis
    Computational
        Lexical (lexislexicology)
        StatisticalStructural
        Prototype theoryForce dynamics
    Unsolved linguistics problems
    Theory of descriptions

Computing
Types

    Action Algebraic Axiomatic Categorical Concurrency Denotational Game Operational Predicate transformational

Theory

    Abstract interpretation
    Abstract semantic graph
    Semantic matching

Analysis

    Latent Machine-learning

Applications

    Semantic file system
        Semantic WebSemantic wiki

    Language Linguistics

    vte

The Semantic Web is an extension of the World Wide Web through standards set by the World Wide Web Consortium (W3C).[1] The goal of the Semantic Web is to make Internet data machine-readable.

To enable the encoding of semantics with the data, technologies such as Resource Description Framework (RDF)[2] and Web Ontology Language (OWL)[3] are used. These technologies are used to formally represent metadata. For example, ontology can describe concepts, relationships between entities, and categories of things. These embedded semantics offer significant advantages such as reasoning over data and operating with heterogeneous data sources.[4]

These standards promote common data formats and exchange protocols on the Web, fundamentally the RDF. According to the W3C, "The Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries."[5] The Semantic Web is therefore regarded as an integrator across different content and information applications and systems.

The term was coined by Tim Berners-Lee for a web of data (or data web)[6] that can be processed by machines[7]—that is, one in which much of the meaning is machine-readable. While its critics have questioned its feasibility, proponents argue that applications in library and information science, industry, biology and human sciences research have already proven the validity of the original concept.[8]

Berners-Lee originally expressed his vision of the Semantic Web in 1999 as follows:

    I have a dream for the Web [in which computers] become capable of analyzing all the data on the Web – the content, links, and transactions between people and computers. A "Semantic Web", which makes this possible, has yet to emerge, but when it does, the day-to-day mechanisms of trade, bureaucracy and our daily lives will be handled by machines talking to machines. The "intelligent agents" people have touted for ages will finally materialize.[9]

The 2001 Scientific American article by Berners-Lee, Hendler, and Lassila described an expected evolution of the existing Web to a Semantic Web.[10] In 2006, Berners-Lee and colleagues stated that: "This simple idea…remains largely unrealized".[11] In 2013, more than four million Web domains (out of roughly 250 million total) contained Semantic Web markup.[12]
Contents

    1 Example
    2 Background
        2.1 Limitations of HTML
        2.2 Semantic Web solutions
        2.3 Web 3.0
    3 Challenges
    4 Standards
        4.1 Components
        4.2 Current state of standardization
    5 Applications
    6 Skeptical reactions
        6.1 Practical feasibility
        6.2 Censorship and privacy
        6.3 Doubling output formats
    7 Research activities on corporate applications
        7.1 Future of applications
    8 See also
    9 References
    10 Further reading
    11 External links

Example

In the following example, the text "Paul Schuster was born in Dresden" on a website will be annotated, connecting a person with their place of birth. The following HTML fragment shows how a small graph is being described, in RDFa-syntax using a schema.org vocabulary and a Wikidata ID:

<div vocab="https://schema.org/" typeof="Person">
  <span property="name">Paul Schuster</span> was born in
  <span property="birthPlace" typeof="Place" href="https://www.wikidata.org/entity/Q1731">
    <span property="name">Dresden</span>.
  </span>
</div>

Graph resulting from the RDFa example

The example defines the following five triples (shown in Turtle syntax). Each triple represents one edge in the resulting graph: the first element of the triple (the subject) is the name of the node where the edge starts, the second element (the predicate) the type of the edge, and the last and third element (the object) either the name of the node where the edge ends or a literal value (e.g. a text, a number, etc.).

_:a <https://www.w3.org/1999/02/22-rdf-syntax-ns#type> <https://schema.org/Person> .
_:a <https://schema.org/name> "Paul Schuster" .
_:a <https://schema.org/birthPlace> <https://www.wikidata.org/entity/Q1731> .
<https://www.wikidata.org/entity/Q1731> <https://schema.org/itemtype> <https://schema.org/Place> .
<https://www.wikidata.org/entity/Q1731> <https://schema.org/name> "Dresden" .

The triples result in the graph shown in the given figure.
Graph resulting from the RDFa example, enriched with further data from the Web

One of the advantages of using Uniform Resource Identifiers (URIs) is that they can be dereferenced using the HTTP protocol. According to the so-called Linked Open Data principles, such a dereferenced URI should result in a document that offers further data about the given URI. In this example, all URIs, both for edges and nodes (e.g. http://schema.org/Person, http://schema.org/birthPlace, http://www.wikidata.org/entity/Q1731) can be dereferenced and will result in further RDF graphs, describing the URI, e.g. that Dresden is a city in Germany, or that a person, in the sense of that URI, can be fictional.

The second graph shows the previous example, but now enriched with a few of the triples from the documents that result from dereferencing https://schema.org/Person (green edge) and https://www.wikidata.org/entity/Q1731 (blue edges).

Additionally to the edges given in the involved documents explicitly, edges can be automatically inferred: the triple

_:a <https://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/Person> .

from the original RDFa fragment and the triple

<https://schema.org/Person> <http://www.w3.org/2002/07/owl#equivalentClass> <http://xmlns.com/foaf/0.1/Person> .

from the document at https://schema.org/Person (green edge in the figure) allow to infer the following triple, given OWL semantics (red dashed line in the second Figure):

_:a <https://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .

Background
Further information: Semantic network § History

The concept of the semantic network model was formed in the early 1960s by researchers such as the cognitive scientist Allan M. Collins, linguist M. Ross Quillian and psychologist Elizabeth F. Loftus as a form to represent semantically structured knowledge. When applied in the context of the modern internet, it extends the network of hyperlinked human-readable web pages by inserting machine-readable metadata about pages and how they are related to each other. This enables automated agents to access the Web more intelligently and perform more tasks on behalf of users. The term "Semantic Web" was coined by Tim Berners-Lee,[7] the inventor of the World Wide Web and director of the World Wide Web Consortium ("W3C"), which oversees the development of proposed Semantic Web standards. He defines the Semantic Web as "a web of data that can be processed directly and indirectly by machines".

Many of the technologies proposed by the W3C already existed before they were positioned under the W3C umbrella. These are used in various contexts, particularly those dealing with information that encompasses a limited and defined domain, and where sharing data is a common necessity, such as scientific research or data exchange among businesses. In addition, other technologies with similar goals have emerged, such as microformats.
Limitations of HTML

Many files on a typical computer can also be loosely divided into human-readable documents and machine-readable data. Documents like mail messages, reports, and brochures are read by humans. Data, such as calendars, address books, playlists, and spreadsheets are presented using an application program that lets them be viewed, searched, and combined.

Currently, the World Wide Web is based mainly on documents written in Hypertext Markup Language (HTML), a markup convention that is used for coding a body of text interspersed with multimedia objects such as images and interactive forms. Metadata tags provide a method by which computers can categorize the content of web pages. In the examples below, the field names "keywords", "description" and "author" are assigned values such as "computing", and "cheap widgets for sale" and "John Doe".

<meta name="keywords" content="computing, computer studies, computer" />
<meta name="description" content="Cheap widgets for sale" />
<meta name="author" content="John Doe" />

Because of this metadata tagging and categorization, other computer systems that want to access and share this data can easily identify the relevant values.

With HTML and a tool to render it (perhaps web browser software, perhaps another user agent), one can create and present a page that lists items for sale. The HTML of this catalog page can make simple, document-level assertions such as "this document's title is 'Widget Superstore'", but there is no capability within the HTML itself to assert unambiguously that, for example, item number X586172 is an Acme Gizmo with a retail price of €199, or that it is a consumer product. Rather, HTML can only say that the span of text "X586172" is something that should be positioned near "Acme Gizmo" and "€199", etc. There is no way to say "this is a catalog" or even to establish that "Acme Gizmo" is a kind of title or that "€199" is a price. There is also no way to express that these pieces of information are bound together in describing a discrete item, distinct from other items perhaps listed on the page.

Semantic HTML refers to the traditional HTML practice of markup following intention, rather than specifying layout details directly. For example, the use of <em> denoting "emphasis" rather than <i>, which specifies italics. Layout details are left up to the browser, in combination with Cascading Style Sheets. But this practice falls short of specifying the semantics of objects such as items for sale or prices.

Microformats extend HTML syntax to create machine-readable semantic markup about objects including people, organisations, events and products.[13] Similar initiatives include RDFa, Microdata and Schema.org.
Semantic Web solutions

The Semantic Web takes the solution further. It involves publishing in languages specifically designed for data: Resource Description Framework (RDF), Web Ontology Language (OWL), and Extensible Markup Language (XML). HTML describes documents and the links between them. RDF, OWL, and XML, by contrast, can describe arbitrary things such as people, meetings, or airplane parts.

These technologies are combined in order to provide descriptions that supplement or replace the content of Web documents. Thus, content may manifest itself as descriptive data stored in Web-accessible databases,[14] or as markup within documents (particularly, in Extensible HTML (XHTML) interspersed with XML, or, more often, purely in XML, with layout or rendering cues stored separately). The machine-readable descriptions enable content managers to add meaning to the content, i.e., to describe the structure of the knowledge we have about that content. In this way, a machine can process knowledge itself, instead of text, using processes similar to human deductive reasoning and inference, thereby obtaining more meaningful results and helping computers to perform automated information gathering and research.

An example of a tag that would be used in a non-semantic web page:

<item>blog</item>

Encoding similar information in a semantic web page might look like this:

<item rdf:about="https://example.org/semantic-web/">Semantic Web</item>

Tim Berners-Lee calls the resulting network of Linked Data the Giant Global Graph, in contrast to the HTML-based World Wide Web. Berners-Lee posits that if the past was document sharing, the future is data sharing. His answer to the question of "how" provides three points of instruction. One, a URL should point to the data. Two, anyone accessing the URL should get data back. Three, relationships in the data should point to additional URLs with data.
Web 3.0

Tim Berners-Lee has described the Semantic Web as a component of Web 3.0.[15]

    People keep asking what Web 3.0 is. I think maybe when you've got an overlay of scalable vector graphics – everything rippling and folding and looking misty – on Web 2.0 and access to a semantic Web integrated across a huge space of data, you'll have access to an unbelievable data resource …
    — Tim Berners-Lee, 2006

"Semantic Web" is sometimes used as a synonym for "Web 3.0",[16] though the definition of each term varies. Web 3.0 has started to emerge as a movement away from the centralisation of services like search, social media and chat applications that are dependent on a single organisation to function.[17]

Guardian journalist John Harris reviewed the Web 3.0 concept favorably in early‑2019 and, in particular, work by Berners‑Lee on a project called Solid, based around personal data stores or "pods", over which individuals retain control.[18] Berners‑Lee has formed a startup, Inrupt, to advance the idea and attract volunteer developers.[19][20]
Challenges

Some of the challenges for the Semantic Web include vastness, vagueness, uncertainty, inconsistency, and deceit. Automated reasoning systems will have to deal with all of these issues in order to deliver on the promise of the Semantic Web.

    Vastness: The World Wide Web contains many billions of pages. The SNOMED CT medical terminology ontology alone contains 370,000 class names, and existing technology has not yet been able to eliminate all semantically duplicated terms. Any automated reasoning system will have to deal with truly huge inputs.
    Vagueness: These are imprecise concepts like "young" or "tall". This arises from the vagueness of user queries, of concepts represented by content providers, of matching query terms to provider terms and of trying to combine different knowledge bases with overlapping but subtly different concepts. Fuzzy logic is the most common technique for dealing with vagueness.
    Uncertainty: These are precise concepts with uncertain values. For example, a patient might present a set of symptoms that correspond to a number of different distinct diagnoses each with a different probability. Probabilistic reasoning techniques are generally employed to address uncertainty.
    Inconsistency: These are logical contradictions that will inevitably arise during the development of large ontologies, and when ontologies from separate sources are combined. Deductive reasoning fails catastrophically when faced with inconsistency, because "anything follows from a contradiction". Defeasible reasoning and paraconsistent reasoning are two techniques that can be employed to deal with inconsistency.
    Deceit: This is when the producer of the information is intentionally misleading the consumer of the information. Cryptography techniques are currently utilized to alleviate this threat. By providing a means to determine the information's integrity, including that which relates to the identity of the entity that produced or published the information, however credibility issues still have to be addressed in cases of potential deceit.

This list of challenges is illustrative rather than exhaustive, and it focuses on the challenges to the "unifying logic" and "proof" layers of the Semantic Web. The World Wide Web Consortium (W3C) Incubator Group for Uncertainty Reasoning for the World Wide Web[21] (URW3-XG) final report lumps these problems together under the single heading of "uncertainty".[22] Many of the techniques mentioned here will require extensions to the Web Ontology Language (OWL) for example to annotate conditional probabilities. This is an area of active research.[23]
Standards

Standardization for Semantic Web in the context of Web 3.0 is under the care of W3C.[24]
Components

The term "Semantic Web" is often used more specifically to refer to the formats and technologies that enable it.[5] The collection, structuring and recovery of linked data are enabled by technologies that provide a formal description of concepts, terms, and relationships within a given knowledge domain. These technologies are specified as W3C standards and include:

    Resource Description Framework (RDF), a general method for describing information
    RDF Schema (RDFS)
    Simple Knowledge Organization System (SKOS)
    SPARQL, an RDF query language
    Notation3 (N3), designed with human-readability in mind
    N-Triples, a format for storing and transmitting data
    Turtle (Terse RDF Triple Language)
    Web Ontology Language (OWL), a family of knowledge representation languages
    Rule Interchange Format (RIF), a framework of web rule language dialects supporting rule interchange on the Web

The Semantic Web Stack

The Semantic Web Stack illustrates the architecture of the Semantic Web. The functions and relationships of the components can be summarized as follows:[25]

    XML provides an elemental syntax for content structure within documents, yet associates no semantics with the meaning of the content contained within. XML is not at present a necessary component of Semantic Web technologies in most cases, as alternative syntaxes exists, such as Turtle. Turtle is a de facto standard, but has not been through a formal standardization process.
    XML Schema is a language for providing and restricting the structure and content of elements contained within XML documents.
    RDF is a simple language for expressing data models, which refer to objects ("web resources") and their relationships. An RDF-based model can be represented in a variety of syntaxes, e.g., RDF/XML, N3, Turtle, and RDFa. RDF is a fundamental standard of the Semantic Web.[26][27]
    RDF Schema extends RDF and is a vocabulary for describing properties and classes of RDF-based resources, with semantics for generalized-hierarchies of such properties and classes.
    OWL adds more vocabulary for describing properties and classes: among others, relations between classes (e.g. disjointness), cardinality (e.g. "exactly one"), equality, richer typing of properties, characteristics of properties (e.g. symmetry), and enumerated classes.
    SPARQL is a protocol and query language for semantic web data sources.
    RIF is the W3C Rule Interchange Format. It's an XML language for expressing Web rules that computers can execute. RIF provides multiple versions, called dialects. It includes a RIF Basic Logic Dialect (RIF-BLD) and RIF Production Rules Dialect (RIF PRD).

Current state of standardization

Well-established standards:

    RDF
    RDFS
    Rule Interchange Format (RIF)
    SPARQL
    Unicode
    Uniform Resource Identifier
    Web Ontology Language (OWL)
    XML

Not yet fully realized:

    Unifying Logic and Proof layers
    Semantic Web Rule Language (SWRL)

Applications

The intent is to enhance the usability and usefulness of the Web and its interconnected resources by creating semantic web services, such as:

    Servers that expose existing data systems using the RDF and SPARQL standards. Many converters to RDF exist from different applications.[28] Relational databases are an important source. The semantic web server attaches to the existing system without affecting its operation.
    Documents "marked up" with semantic information (an extension of the HTML <meta> tags used in today's Web pages to supply information for Web search engines using web crawlers). This could be machine-understandable information about the human-understandable content of the document (such as the creator, title, description, etc.) or it could be purely metadata representing a set of facts (such as resources and services elsewhere on the site). Note that anything that can be identified with a Uniform Resource Identifier (URI) can be described, so the semantic web can reason about animals, people, places, ideas, etc. There are four semantic annotation formats that can be used in HTML documents; Microformat, RDFa, Microdata and JSON-LD.[29] Semantic markup is often generated automatically, rather than manually.
    Common metadata vocabularies (ontologies) and maps between vocabularies that allow document creators to know how to mark up their documents so that agents can use the information in the supplied metadata (so that Author in the sense of 'the Author of the page' won't be confused with Author in the sense of a book that is the subject of a book review).
    Automated agents to perform tasks for users of the semantic web using this data.
    Web-based services (often with agents of their own) to supply information specifically to agents, for example, a Trust service that an agent could ask if some online store has a history of poor service or spamming.

Such services could be useful to public search engines, or could be used for knowledge management within an organization. Business applications include:

    Facilitating the integration of information from mixed sources
    Dissolving ambiguities in corporate terminology
    Improving information retrieval thereby reducing information overload and increasing the refinement and precision of the data retrieved[30][31][32][33]
    Identifying relevant information with respect to a given domain[34]
    Providing decision making support

In a corporation, there is a closed group of users and the management is able to enforce company guidelines like the adoption of specific ontologies and use of semantic annotation. Compared to the public Semantic Web there are lesser requirements on scalability and the information circulating within a company can be more trusted in general; privacy is less of an issue outside of handling of customer data.
Skeptical reactions
Practical feasibility

Critics question the basic feasibility of a complete or even partial fulfillment of the Semantic Web, pointing out both difficulties in setting it up and a lack of general-purpose usefulness that prevents the required effort from being invested. In a 2003 paper, Marshall and Shipman point out the cognitive overhead inherent in formalizing knowledge, compared to the authoring of traditional web hypertext:[35]

    While learning the basics of HTML is relatively straightforward, learning a knowledge representation language or tool requires the author to learn about the representation's methods of abstraction and their effect on reasoning. For example, understanding the class-instance relationship, or the superclass-subclass relationship, is more than understanding that one concept is a “type of” another concept. […] These abstractions are taught to computer scientists generally and knowledge engineers specifically but do not match the similar natural language meaning of being a "type of" something. Effective use of such a formal representation requires the author to become a skilled knowledge engineer in addition to any other skills required by the domain. […] Once one has learned a formal representation language, it is still often much more effort to express ideas in that representation than in a less formal representation […]. Indeed, this is a form of programming based on the declaration of semantic data and requires an understanding of how reasoning algorithms will interpret the authored structures.

According to Marshall and Shipman, the tacit and changing nature of much knowledge adds to the knowledge engineering problem, and limits the Semantic Web's applicability to specific domains. A further issue that they point out are domain- or organisation-specific ways to express knowledge, which must be solved through community agreement rather than only technical means.[35] As it turns out, specialized communities and organizations for intra-company projects have tended to adopt semantic web technologies greater than peripheral and less-specialized communities.[36] The practical constraints toward adoption have appeared less challenging where domain and scope is more limited than that of the general public and the World-Wide Web.[36]

Finally, Marshall and Shipman see pragmatic problems in the idea of (Knowledge Navigator-style) intelligent agents working in the largely manually curated Semantic Web:[35]

    In situations in which user needs are known and distributed information resources are well described, this approach can be highly effective; in situations that are not foreseen and that bring together an unanticipated array of information resources, the Google approach is more robust. Furthermore, the Semantic Web relies on inference chains that are more brittle; a missing element of the chain results in a failure to perform the desired action, while the human can supply missing pieces in a more Google-like approach. […] cost-benefit tradeoffs can work in favor of specially-created Semantic Web metadata directed at weaving together sensible well-structured domain-specific information resources; close attention to user/customer needs will drive these federations if they are to be successful.

Cory Doctorow's critique ("metacrap") is from the perspective of human behavior and personal preferences. For example, people may include spurious metadata into Web pages in an attempt to mislead Semantic Web engines that naively assume the metadata's veracity. This phenomenon was well known with metatags that fooled the Altavista ranking algorithm into elevating the ranking of certain Web pages: the Google indexing engine specifically looks for such attempts at manipulation. Peter Gärdenfors and Timo Honkela point out that logic-based semantic web technologies cover only a fraction of the relevant phenomena related to semantics.[37][38]
Censorship and privacy

Enthusiasm about the semantic web could be tempered by concerns regarding censorship and privacy. For instance, text-analyzing techniques can now be easily bypassed by using other words, metaphors for instance, or by using images in place of words. An advanced implementation of the semantic web would make it much easier for governments to control the viewing and creation of online information, as this information would be much easier for an automated content-blocking machine to understand. In addition, the issue has also been raised that, with the use of FOAF files and geolocation meta-data, there would be very little anonymity associated with the authorship of articles on things such as a personal blog. Some of these concerns were addressed in the "Policy Aware Web" project[39] and is an active research and development topic.
Doubling output formats

Another criticism of the semantic web is that it would be much more time-consuming to create and publish content because there would need to be two formats for one piece of data: one for human viewing and one for machines. However, many web applications in development are addressing this issue by creating a machine-readable format upon the publishing of data or the request of a machine for such data. The development of microformats has been one reaction to this kind of criticism. Another argument in defense of the feasibility of semantic web is the likely falling price of human intelligence tasks in digital labor markets, such as Amazon's Mechanical Turk.[citation needed]

Specifications such as eRDF and RDFa allow arbitrary RDF data to be embedded in HTML pages. The GRDDL (Gleaning Resource Descriptions from Dialects of Language) mechanism allows existing material (including microformats) to be automatically interpreted as RDF, so publishers only need to use a single format, such as HTML.
Research activities on corporate applications

The first research group explicitly focusing on the Corporate Semantic Web was the ACACIA team at INRIA-Sophia-Antipolis, founded in 2002. Results of their work include the RDF(S) based Corese[40] search engine, and the application of semantic web technology in the realm of distributed artificial intelligence for knowledge management (e.g. ontologies and multi-agent systems for corporate semantic Web) [41] and E-learning.[42]

Since 2008, the Corporate Semantic Web research group, located at the Free University of Berlin, focuses on building blocks: Corporate Semantic Search, Corporate Semantic Collaboration, and Corporate Ontology Engineering.[43]

Ontology engineering research includes the question of how to involve non-expert users in creating ontologies and semantically annotated content[44] and for extracting explicit knowledge from the interaction of users within enterprises.
Future of applications

Tim O'Reilly, who coined the term Web 2.0, proposed a long-term vision of the Semantic Web as a web of data, where sophisticated applications manipulate the data web.[45] The data web transforms the World Wide Web from a distributed file system into a distributed database system.[46]
See also

    AGRIS
    Business semantics management
    Computational semantics
    Calais (Reuters product)
    DBpedia
    Entity–attribute–value model
    EU Open Data Portal
    Hyperdata
    Internet of things
    Linked data
    List of emerging technologies
    Nextbio
    Ontology alignment
    Ontology learning
    RDF and OWL
    Semantic computing
    Semantic Geospatial Web
    Semantic heterogeneity
    Semantic integration
    Semantic matching
    Semantic MediaWiki
    Semantic Sensor Web
    Semantic social network
    Semantic technology
    Semantic Web
    Semantically-Interlinked Online Communities
    Smart-M3
    Social Semantic Web
    Web engineering
    Web resource
    Web science

References

"XML and Semantic Web W3C Standards Timeline" (PDF). 2012-02-04.
"World Wide Web Consortium (W3C), "RDF/XML Syntax Specification (Revised)", 10 Feb. 2004".
"World Wide Web Consortium (W3C), "OWL Web Ontology Language Overview", W3C Recommendation, 10 Feb. 2004".
Chung, Seung-Hwa (2018). "The MOUSE approach: Mapping Ontologies using UML for System Engineers". Computer Reviews Journal: 8–29. ISSN 2581-6640.
"W3C Semantic Web Activity". World Wide Web Consortium (W3C). November 7, 2011. Retrieved November 26, 2011.
"Q&A with Tim Berners-Lee, Special Report". businessweek.com. Retrieved 14 April 2018.
Berners-Lee, Tim; James Hendler; Ora Lassila (May 17, 2001). "The Semantic Web". Scientific American. Retrieved July 2, 2019.
Lee Feigenbaum (May 1, 2007). "The Semantic Web in Action". Scientific American. Retrieved February 24, 2010.
Berners-Lee, Tim; Fischetti, Mark (1999). Weaving the Web. HarperSanFrancisco. chapter 12. ISBN 978-0-06-251587-2.
Berners-Lee, Tim (May 17, 2001). "The Semantic Web" (PDF). Scientific American. S2CID 32015696. Archived from the original (PDF) on October 10, 2017. Retrieved March 13, 2008.
Nigel Shadbolt; Wendy Hall; Tim Berners-Lee (2006). "The Semantic Web Revisited" (PDF). IEEE Intelligent Systems. Retrieved April 13, 2007.
Ramanathan V. Guha (2013). "Light at the End of the Tunnel". International Semantic Web Conference 2013 Keynote. Retrieved March 8, 2015.
Allsopp, John (March 2007). Microformats: Empowering Your Markup for Web 2.0. Friends of ED. p. 368. ISBN 978-1-59059-814-6.
Artem Chebotko and Shiyong Lu, "Querying the Semantic Web: An Efficient Approach Using Relational Databases", LAP Lambert Academic Publishing, ISBN 978-3-8383-0264-5, 2009.
Shannon, Victoria (23 May 2006). "A 'more revolutionary' Web". International Herald Tribune. Retrieved 26 June 2006.
Sharma, Akhilesh. "Introducing The Concept Of Web 3.0". Tweak And Trick. Retrieved 10 January 2017.
Hodgson, Matthew (9 October 2016). "A decentralized web would give power back to the people online". TechCrunch. AOL Inc. Retrieved 1 December 2016.
Harris, John (7 January 2019). "Together we can thwart the big-tech data grab: here's how". The Guardian. London, United Kingdom. ISSN 0261-3077. Retrieved 7 January 2019.
Brooker, Katrina (29 September 2018). "Exclusive: Tim Berners-Lee tells us his radical new plan to upend the World Wide Web". Fast Company. USA. Retrieved 7 January 2019.
"Home | inrupt". Inrupt. Retrieved 7 January 2019.
"W3C Uncertainty Reasoning for the World Wide Web". www.w3.org. Retrieved 2021-05-14.
"Uncertainty Reasoning for the World Wide Web". W3.org. Retrieved 20 December 2018.
Lukasiewicz, Thomas; Umberto Straccia (2008). "Managing uncertainty and vagueness in description logics for the Semantic Web" (PDF). Web Semantics: Science, Services and Agents on the World Wide Web. 6 (4): 291–308. doi:10.1016/j.websem.2008.04.001.
"Semantic Web Standards". W3.org. Retrieved 14 April 2018.
"OWL Web Ontology Language Overview". World Wide Web Consortium (W3C). February 10, 2004. Retrieved November 26, 2011.
"Resource Description Framework (RDF)". World Wide Web Consortium.
Allemang, Dean; Hendler, James; Gandon, Fabien (August 3, 2020). Semantic Web for the Working Ontologist : Effective Modeling for Linked Data, RDFS, and OWL (Third ed.). [New York, NY, USA]: ACM Books; 3rd edition. ISBN 978-1450376143.
"ConverterToRdf - W3C Wiki". W3.org. Retrieved 20 December 2018.
Sikos, Leslie F. (2015). Mastering Structured Data on the Semantic Web: From HTML5 Microdata to Linked Open Data. Apress. p. 23. ISBN 978-1-4842-1049-9.
Omar Alonso and Hugo Zaragoza. 2008. Exploiting semantic annotations in information retrieval: ESAIR '08. SIGIR Forum 42, 1 (June 2008), 55–58. doi:10.1145/1394251.1394262
Jaap Kamps, Jussi Karlgren, and Ralf Schenkel. 2011. Report on the third workshop on exploiting semantic annotations in information retrieval (ESAIR). SIGIR Forum 45, 1 (May 2011), 33–41. doi:10.1145/1988852.1988858
Jaap Kamps, Jussi Karlgren, Peter Mika, and Vanessa Murdock. 2012. Fifth workshop on exploiting semantic annotations in information retrieval: ESAIR '12). In Proceedings of the 21st ACM international conference on information and knowledge management (CIKM '12). ACM, New York, NY, USA, 2772–2773. doi:10.1145/2396761.2398761
Omar Alonso, Jaap Kamps, and Jussi Karlgren. 2015. Report on the Seventh Workshop on Exploiting Semantic Annotations in Information Retrieval (ESAIR '14). SIGIR Forum 49, 1 (June 2015), 27–34. doi:10.1145/2795403.2795412
Kuriakose, John (September 2009). "Understanding and Adopting Semantic Web Technology". Cutter IT Journal. CUTTER INFORMATION CORP. 22 (9): 10–18.
Marshall, Catherine C.; Shipman, Frank M. (2003). Which semantic web? (PDF). Proc. ACM Conf. on Hypertext and Hypermedia. pp. 57–66.
Ivan Herman (2007). State of the Semantic Web (PDF). Semantic Days 2007. Retrieved July 26, 2007.
Gärdenfors, Peter (2004). How to make the Semantic Web more semantic. Formal Ontology in Information Systems: proceedings of the third international conference (FOIS-2004). IOS Press. pp. 17–34.
Honkela, Timo; Könönen, Ville; Lindh-Knuutila, Tiina; Paukkeri, Mari-Sanna (2008). "Simulating processes of concept formation and communication". Journal of Economic Methodology. 15 (3): 245–259. doi:10.1080/13501780802321350.
"Policy Aware Web Project". Policyawareweb.org. Retrieved 2013-06-14.
Corby, Olivier; Dieng-Kuntz, Rose; Zucker, Catherine Faron; Gandon, Fabien. "Searching the Semantic Web: Approximate Query Processing based on Ontologies". IEEE Intelligent Systems. 21: 20–27. doi:10.1109/MIS.2006.16. S2CID 11488848.
Gandon, Fabien (7 November 2002). "Distributed Artificial Intelligence And Knowledge Management: Ontologies And Multi-Agent Systems For A Corporate Semantic Web". Université Nice Sophia Antipolis.
Buffa, Michel; Dehors, Sylvain; Faron-Zucker, Catherine; Sander, Peter (2005). "Towards a Corporate Semantic Web Approach in Designing Learning Systems: Review of the Trial Solutioins Project" (PDF). International Workshop on Applications of Semantic Web Technologies for E-Learning. Amsterdam, Holland. pp. 73–76.
"Corporate Semantic Web - Home". Corporate-semantic-web.de. Retrieved 14 April 2018.
Hinze, Annika; Heese, Ralf; Luczak-Rösch, Markus; Paschke, Adrian (2012). "Semantic Enrichment by Non-Experts: Usability of Manual Annotation Tools" (PDF). ISWC'12 - Proceedings of the 11th international conference on The Semantic Web. Boston, USA. pp. 165–181.
Mathieson, S. A. (6 April 2006). "Spread the word, and join it up". The Guardian. Retrieved 14 April 2018.

    Spivack, Nova (18 September 2007). "The Semantic Web, Collective Intelligence and Hyperdata". novaspivack.typepad.com/nova_spivacks_weblog [This Blog has Moved to NovaSpivack.com]. Retrieved 14 April 2018.

Further reading

    Liyang Yu (December 14, 2014). A Developer's Guide to the Semantic Web,2nd ed. Springer. ISBN 978-3-662-43796-4.
    Aaron Swartz's A Programmable Web: An unfinished Work donated by Morgan & Claypool Publishers after Aaron Swartz's death in January 2013.
    Grigoris Antoniou, Frank van Harmelen (March 31, 2008). A Semantic Web Primer, 2nd Edition. The MIT Press. ISBN 978-0-262-01242-3.
    Allemang, Dean; Hendler, James; Gandon, Fabien (August 3, 2020). Semantic Web for the Working Ontologist : Effective Modeling for Linked Data, RDFS, and OWL (Third ed.). [New York, NY, USA]: ACM Books; 3rd edition. ISBN 978-1450376143.
    Pascal Hitzler; Markus Krötzsch; Sebastian Rudolph (August 25, 2009). Foundations of Semantic Web Technologies. CRCPress. ISBN 978-1-4200-9050-5.
    Thomas B. Passin (March 1, 2004). Explorer's Guide to the Semantic Web. Manning Publications. ISBN 978-1-932394-20-7.
    Jeffrey T. Pollock (March 23, 2009). Semantic Web For Dummies. For Dummies. ISBN 978-0-470-39679-7.
    Hitzler, Pascal (February 2021). "A Review of the Semantic Web Field". Communications of the ACM. 64 (2): 76–83.

External links
Semantic Web
at Wikipedia's sister projects

    Media from Wikimedia Commons
    Data from Wikidata

	Scholia has a topic profile for Semantic Web.

    Official website
    Breakthrough Analysis: A Data Space for Information Coexistence

    vte

Semantic Web

    vte

Emerging technologies

    vte

Digital humanities

    vte

Computable knowledge
Authority control Edit this at Wikidata	

    BNF: cb14521343b (data) GND: 4688372-1 LCCN: sh2002000569 MA: 2129575

Categories:

    Semantic WebEmerging technologiesInternet agesKnowledge engineeringWeb services

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons
    Wikibooks

Languages

    العربية
    Deutsch
    Español
    Français
    Italiano
    Português
    Русский
    اردو
    中文

Edit links

    This page was last edited on 14 May 2021, at 23:36 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

! HomeOwnersHub
! 
! 
! RE: Shipwright Disease
! 
!! https://www.homeownershub.com/woodworking/re-shipwright-disease-521051-.htm
        L
        Lew Hodgett
    posted 9 years ago

From another list.
Enjoy.
Lew
--------------------------------
"Kenneth " wrote:
I'm going thu a bit of this myself right now. Darn plumbing is a one
time use tubing and fittings.
GRRR.
Regards,
Ken
!! "Shipwrights Disease"
!! Goes something like this:
!! Sailor owns boat.
!! Boat has burned out light in galley.
!! Sailor decides to change bulb.
!! Sailor notices socket is corroded, decides to change socket.
!! Sailor notices wiring frayed while trying to change socket.
!! Sailor decides to change wiring.
!! Sailor notices galley ceiling slats are rotted while changing the
!! wire.
!! Sailor decides galley ceiling slats need changing.
!! Sailor notices .
!! this goes on and on and on and on and pretty soon, Sailor is
!! undertaking a
!! major renovation of his boat because of a burned out lightbulb.
--------------------------------------
"James" wrote:
Funny coincidence Ken, I've just suffered through back-to-back
> procedures
> myself on the plumbing, soon to get some electrical assistance.
>
! > Lately for me it's gone:
! >
! > Seat's cracked on the guest toilet.
! > Replace seat.
! > New seat makes old toilet look bad.
! > Replace toilet with modern lo-flush design.
! > New toilet beggars old sink.
! > Time to get the bowl type sink the boss has always wanted for this > bathroom,
! > which necessitates a new, custom built cabinet.
! > New toilet, cabinet and sink showcase how old the original floor > tiles are.
! > Hire contractor to replace floor tiles and paper walls.
! >
! > Eventual outcome?
! >
! > Now shopping for another house!
> "James"
Reply to
Lew Hodgett
Replies to Lew Hodgett 4
Rate this thread
Not Yet Rated

    Share To

        G
        GROVER
    posted 9 years ago

This tale seems like one Andy Rooney described when changing a light bulb led to fixing the hooks which held the ladder then the wall that held the hooks. Well you get the picture. When doing household repairs we need to focus even though its not always easy.
JoeG
Reply to
GROVER

        W
        WW
    posted 9 years ago

Reply to
WW

        Z
        Z3Driver
    posted 9 years ago

One of the keys to avoiding job-creep is to keep SWMBO at bay. We're about to embark on an upgrade to the master bath. Converting shower to steam room plus new shower door. I've already caved in on new lighting fixtures to match the brushed nickle of the new door, but I'm drawing the line on re-tiling the whole room. We'll see if that line is in ink or pencil.
Larry
Reply to
Z3Driver

        R
        Roy
    posted 9 years ago

...Big snip since we're bottom posting.....
Be careful. She might decide you drew your line in blood.
Reply to
Roy
Site Timeline Threads

    Turning Tools
    Does anyone have any experience with the Stone Mountain turning tools sold by...
    next in Woodworking

    OT: Democracy in Action
    Keep your eyes on the recalls in Wisconsin Tuesday. Wisconsin has always been a...
    previous in Woodworking

    Plywood trade
    One way to get some plywood Ed Pawlowski snipped-for-privacy@snet.xxx wrote in...
    last updated in Woodworking

    Craftsman routers
    I have a Craftsman router 320.17541 will plunge base 315.17530 fit this router
    last posted in Woodworking

    OT. Gas Pricing
    I just got back from a trip to Illinois. The lowest price I paid for the 10%...
    site's last updated in Home Repair

    Crimping etc
    Just been tweaking the wiring of my lad's new campervan, my no-name ratchet...
    site's newest in UK Do-It-Yourself

Related Threads

    legionnaires' disease
    I am well aware that potentially deadly legionnaires' disease can occur in ...

    No dig gardens
    R M. Watkin asked:My father was a medical doctor and he explained this to me...

    crabapple disease?
    Hi,I've been getting some sort of white fluffy stuff coming out of buds on...

    Disease problem
    The top leaves on my basil are developing wet black spots. It looks likewet...

    Shrub Disease
    I planted 4 shrubs (euonymus [albo-marginata], green inner leaves and pale...

    sycamore leaf disease
    I have a sycamore that develops the same problem each spring. The leavesare...

    Disease on Thuja
    I planted a row of Thuja plicata atrovirens, about 4 years ago, theplants I...

    Prunes tree disease
    I planted a very small prunes few month back, it grew 2 feet stronglyand...

    Concord Grape disease?
    I seem to have some disease (or lack of nutrients?) on my concord grapes. The...

    Help identifying disease
    That might be herbicide damage and not any disease.

    Ticks that carry Lyme disease are spreading fast
    Ticks that carry Lyme disease are spreading fast Think you live in a place...

    From another ng
    Not disagreeing with what you are saying above. but I'm wondering why...

    Plum tree disease
    Plum trees are prone to the plum pocket disease caused by the Taphrinacommunis...

    Disease resistant basil type?
    For the last two years every basil plant I have grown, either from seed or...

    OT: Lyme disease..... again
    Another tick, infected with Lyme again. Got the classic bulls eye rash, so went...

    Brown leaf spot disease ?
    I have a habenero plant. It's about 8 inches tall in a 5 gallon bucket....

    Brown leaf spot disease ?
    I have a habenero plant. It's about 8 inches tall in a 5 gallon bucket....

    O/T: From Another List
    Given that the target in Tripoli was the Azizyah Barracks, assessed to bethe...

    XML Sitemap Terms of Service Privacy Policy Contact 

HomeOwnersHub website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.
! Skills for the Age of Sustainability:
! An Unprecedented Time of Opportunity
! 
! https://www.ratical.org/LifeWeb/Articles/theBridge0502.html
! 
! by Elisabet Sahtouris, Ph.D.


Tachi Kiuchi's Tokyo newsletter, The Bridge
May 2002

        It is an honor for me to be asked to address young people at the beginning of your careers while also at the beginning of a new millennium. Your generation has been named the Millennials, and this is a very important time in your lives, when you will make crucial decisions. It is also, without doubt, an extremely important time in human history -- a time, in fact, when you will necessarily change history forever.

        If we are to talk about sustainability, we must, first of all, really understand that unsustainability means CANNOT AND WILL NOT SURVIVE AS IS. In other words, we have no choice but to change the way we live as a human species. You will either be a contributing part of our change for the better, or, if you choose to ignore or deny the fact of our present unsustainability, you will, by default, contribute to the rapid decline of our civilization and all humanity. Naturally, I hope you will all choose the first course.

        When you look at your society now, this may seem a difficult and hopeless time, with unemployment at a new high and unsustainability in the very air you breathe. But if you learn to look at the present from a broader evolutionary perspective, you will see the potential for a very different future. In fact, the present is really an unprecedented time of opportunity. Think of it as a stage between caterpillar and butterfly -- a time of metamorphosis when an old unsustainable system fights to preserve itself as a new system struggles to be born.

        Caterpillars chew their way through ecosystems leaving a path of destruction as they get fatter and fatter. When they finally fall asleep and a chrysalis forms around them, tiny new imaginal cells, as biologists call them, begin to take form within their bodies. The caterpillar's immune system fights these new cells as though they were foreign intruders, and only when they crop up in greater numbers and link themselves together are they strong enough to survive. Then the caterpillar's immune system fails and its body dissolves into a nutritive soup which the new cells recycle into their developing butterfly.

        The caterpillar is a necessary stage but becomes unsustainable once its job is done. There is no point in being angry with it and there is no need to worry about defeating it. The task is to focus on building the butterfly, the success of which depends on powerful positive and creative efforts in all aspects of society and alliances built among those engaged in them.

        If you look at unemployment figures with dismay, worrying about your future, you are not yet an imaginal cell. In my own life as a pioneering imaginal cell, I discovered early that the "business as usual" old system was not going to hire me or support my work. Why should it? My work is to replace it with a different way of doing things. All of my friends and colleagues now are imaginal cells. We have had to be very creative in making our living, generating our own resources and discovering new ones. I will not say it has been easy, but it has carried the enormous rewards of new adventure and pioneering a better future. I can say with assurance that it is easier now than it was half a century ago -- much easier, because there are so many of us now.

        If you use this butterfly metaphor in thinking of our transformation from unsustainability to sustainability, you will immediately see four sets of critical skills required to realize this great opportunity for co-creating a better world:

            the skills of thinking and seeing systemically or holistically

            the skills of creating a positive vision of the future

            the skills of finding like-minded people for cooperative efforts

            the skills of using available resources in new ways 

        You will have to be adventurous and creative to learn them, because you will not find them in the traditional university curriculum. I believe choices about institutionalized higher education should be made on the basis of specific needs for reaching specific goals. If you want to be an imaginal cell as a doctor or lawyer, for example, you will need to get those credentials. But this will not be an adequate education for sustainability, so know that your efforts to learn must go far beyond university education.

        Let's look at these skills one by one.

            Thinking and seeing systemically or holistically

            This set of skills is absolutely essential to making strategic decisions about how to contribute to sustainability with your life, or even how to generate positive visions of humanity's future.

            In the January issue of The Bridge, I cited scientific, religious and cultural worldviews, economics, governance, technology and youth as critical factors in human evolution to sustainable global community. Do you see what I mean by a holistic view? Sustainability is not just an "environmental" matter; it is a matter of changing the whole way we understand ourselves, the way we think about and behave towards ourselves and each other, the way we produce and distribute goods and services. It demands a holistic approach.

            Tachi Kiuchi and Bill Shireman, to write their important new book What We Learned in the Rainforest: Business Lessons from Nature, [1, 2] had to visit and study in detail the entire ecosystems of rainforests in different parts of the world, including their four billions of years of evolution, in order to understand their economics well enough to translate them for the human business world. Thus they not only needed the biological, ecological and systems thinking skills required to understand rainforests, but they also needed the skills to understand the business world -- how corporations function, how they fit into larger economic patterns, why and how they need to change -- and they needed the skills to relate and translate effectively between natural and human-created business systems. Because they had all these skills, they could reach their conclusion:

            Take any problem . . . in business, and one thing is certain: nature faced it, and probably overcame it, millions or billions of years ago. Because of this, there is no better business model than the rainforest.

            I would add to this, there is no better governmental model or educational model or even spiritual/ethical model than the rainforest or any other mature, healthy ecosystem in which every species is fully employed, all work cooperatively while recycling all of their resources, and all products and services are distributed in such a way that every species remains healthy. That is sustainability.

            At present, for example, we not only pollute and destroy our vital ecosystems, including the air we breathe and the water we drink, but we also let 25,000 children die of hunger and easily preventable disease every single day (that is, 175,000 a week; over 9 million every year) without even considering this important information! We do not bother to think of the many millions of people of all ages who are destitute refugees. Our media makes visible only selected incidents of attention-getting violence while the deeper and more destructive currents of violence go unheeded. This should make it clear not only that our cultures are ecologically unsustainable in the long run, but that they are truly dysfunctional on an ongoing basis.

            Imagine aliens on another planet observing humanity and asking themselves whether we are an intelligent species. What conclusion would they come to seeing how we behave towards each other and other species on which we depend for our own living?

            Many studies have shown that the amount of money required to give all humans clean water and educational opportunities is a tiny fraction of our military budgets. The UN has reported for years that there is enough food grown in the world now to feed all people an adequate diet. This means that genetic engineering of crops, for example, is totally unnecessary and not a solution to world hunger any more than was the much touted Green Revolution which promoted the sale of fertilization and pest/weed control chemicals while creating deserts in the name of making gardens, as the World Bank admitted over a decade ago.

            This should begin to make it clear that if we want to create sustainability and thrival, we must evolve our entire present human systems -- our patterns of beliefs, values and behavior as a species. We must look at the sustainability of the economic and governing systems that determine our impact on the planet and each other, as well as the scientific and spiritual concepts which form their context and rationale.

            Evolution, from my perspective as a holistic evolution biologist, only occurs as a response to pressure or full-blown crisis. Your good fortune is to be born into a time of crisis, a time calling for dramatic change from one phase of human evolution to the next -- a time in which we must shift out of a ten-thousand-year history of fierce competition in which some get rich as most get poor to a new phase in which humanity becomes a cooperative family within the larger family of all species.

            Fortunately, other species have made this shift from competition to cooperation (or from antagonistic conflict to healthy non-antagonistic patterns of conflict and conflict resolution) as I have shown in my book, EarthDance: Living Systems in Evolution. So we have precedents in nature from which to learn, to find clues for our own healthy evolution into a better future, to see that this is a time not merely to work on survival, but on thrival for all people and other species.

            Next month I will continue with the three other sets of skills. I hope you will be with me then.

            The skills of creating a positive vision of the future

            Though I am an evolution biologist, my holistic context is the whole universe. An important part of my work is devoted to ending the historical rift between scientific and spiritual conceptualizations of ourselves as humans within our universe. Along with many colleagues, I now see this as entirely possible, and ever more thrilling to work on, because it is resulting in an elegantly unified field theory within a meaningful conscious universe. Values are restored to science, evolution is seen to be an intelligent process, and hope for our enlightened and joyful sustainable future grows strong. Nothing has given me a sounder basis for believing in such a future or greater inspiration in working on it than this cosmovision.

            A cosmovision is bigger than a worldview, as worlds exist within the greater cosmos. The Greek word kosmos means not only cosmos, but order (pattern in the scheme of things) and also, people. When Greeks speak of cosmos, they automatically have an integrated vision of people within the design of the universe. This was reflected in early Greek drama where individual human actions affected the greater realms of their society, the society of their gods and both humans and gods were subject to universal laws or cosmic order.

            Many other ancient traditions also saw the cosmos in such layers of interaction, with the same patterns played out at different levels from human to divine, as exemplified by the ancient dictum, As above, so below. In our own terms today, we could call it seeing fractally, or understanding holarchy.

            Holarchy was philosopher/novelist Arthur Koestler's way of showing embeddedness in nature. Examples of holarchy are cells, organs, organisms, species, ecosystems, planets, etc. or individuals, families, communities, ecosystems, nations, world.

            Long ago, when I protested standardized intelligence tests as ways of labeling children, I searched for my own definition of intelligence. Greek drama and holarchy seemed to me important clues. The more layers of holarchy a person becomes aware of, understands their influence on and takes into account in their decisions and actions, the more intelligent they are.

            With this definition, creating an intelligent positive vision of the future requires that we take into account all holarchic levels and the interactions among them. Consider, for example, what a business in which you would like to be working in a sustainable future would look like holarchically. Imagine it in its holarchy: the business (infrastructure, management and employees) embedded within the community of its investors, suppliers and markets, those embedded in turn within its larger human communities, which exist within ecosystems, planet and cosmos.

            In your vision, how is this business accountable to all these levels? -- in other words, how does it balance its service among profits, people and planet (the triple bottom line)? What does it provide of real use to humanity and how does it avoid doing harm? How are its values consistent with the human values of its stakeholders? This example will help you develop not only your skill in creating positive visions of a sustainable future, but will help you see what steps need to be taken to achieving them.

            Another powerful model I use along with holarchy to understand biological evolution and envision our human evolutionary trajectory to a sustainable future is a cycle of evolution in which juvenile species are highly competitive and aggressive in seizing territory and resources while mature species have learned to cooperate with their competitors and evolve mutual support and recycling ecosystems.

            This is why studying mature ecosystems such as rainforests and prairies can help us create working models of our own future. Note that mature, healthy living systems show enormous diversity (there are no monocultures in nature), create full employment of all members, distributed leadership governance, equitable distribution of goods and services and 100% recycling.

            The skills of finding like-minded people for cooperative efforts

            One of my own skills in practicing a holistic approach to teaching living systems is to speak to very different audiences, adapting each lecture to what I have learned about the particular audience's worldview, their understanding of "How Things Are." Thus I move between corporate, academic, religious, scientific, ecological and governmental venues in many parts of the world, as well as speaking to many groups of people from diverse backgrounds and occupations brought together by their interests in creating a better world. From this I have gained considerable understanding of why we need to integrate all these different perspectives. It has also given me a diverse and mutually supportive base of friends and colleagues around the world.

            Paul Ray, a pollster whose surveys of American and European values led to his book The Cultural Creatives -- a wonderful resource for understanding the people hard at work creating a better future -- has a new book coming out soon called The New Political Compass. In it he reveals a dramatic shift in the US political spectrum of voters to a new category, neither left nor right, that he calls the New Progressives. At 36% to 45% of US adults "this emerging political stance is the largest segment of the polity, and they're basically unrepresented by politicians." Ray defines them as follows: "A new progressive . . . is far out in front on the issues, values planetary rather than nationalistic interests, ecological sustainability rather than sentimental environmentalism, feminism rather than heroic models, personal growth more than personal ambition, and condemns globalizing mega-corporations more than the religious right."

            This shows us very significant growth in understanding human needs holistically. If politicians with platforms reflecting the New Progressives' views on issues were only available for election, they could win easily, as demonstrated by US Congressman Dennis Kucinich in a landslide victory. I suspect the same pattern of values and priorities is developing in an equally significant portion of Japanese voters, waiting to be tapped by politicians who can represent them.

            My point is that the numbers of like-minded people who want a sustainable future and are willing to work on it are growing very rapidly. In the US and Europe they are found in peace movements, ecology organizations, Zen, Aikido, QiGong and Yoga training centers, Health Food stores and organic growers associations, New religions such as Unity and Religious Science, new politics and alternative lifestyle groups, and many less obvious places.

            As an example, I have just returned from a week of giving lectures to yoga teachers in training, gathered from all over the world at a Sivananda Ashram in the Bahamas. At the same time that they were hearing from western scientists, they were learning and practicing the ancient Vedic science of yoga, which means union.

            One physician there lectured on the difference between yoga and the physical culture of western science, pointing out that western science teaches us only the physical aspect of the body while yoga teaches the more complete body system including its energy and spirit aspects. This more complete system was also taught in other ancient sciences, including the Japanese Kototama. It leads to an entirely different conception and practice of the healing arts which emphasizes self-healing rather than the lucrative interventions of western medicine which actively discourage the often more effective as well as inexpensive self-healing. Every yoga teacher trained in these ashrams -- thousands per year -- opens a new yoga center and teaches their values and practices for a deeply spiritual and healthy sustainable future to many more people.

            There are as many ways to build our sustainable future as there are people to do it. My advice is to work on some aspect of it that lets your unique interests and talents combine, that you truly enjoy, letting your passion for it overcome all negativity and letting your enthusiasm attract others to work with you. Foster conversations and build alliances with people doing different but related work until your networks grow strong. The Internet is a fabulous place for locating like-minded pioneers in your own area and all over the world. Network, network, network!

            The skills of using available resources in new ways

            Our recent modern and post-modern technological ages, as well as our present information technology age, have been rooted in the assumption that ever more evolved technology will bring ever more benefits and therefore a better and happier future for all. But once we see holistically, we also see that technology alone cannot guarantee our well-being. It cannot even guarantee the sustainability of technological production itself. Rather, we must see in nature why our present technology is unsustainable and learn a better way from it.

            Human technology has always been inspired by nature. We have imitated spiders spinning and weaving, termites building multi-level mud dwellings, moles and badgers burrowing, cetaceans diving, clams making superglue, birds flying, bats echo locating, brains calculating, and so on in our technologies. A whole chapter of my book EarthDance: Living Systems in Evolution describes this.

            Now a whole new wave of nanotechnology is inspired by observing the natural nanoworld (see an animated illustration of a bacterial motor, for example, at http://www.arn.org/docs/mm/vidgraphics.htm). Over the past decade we discovered that 95% of bacteria live in complex cities with amazing infrastructures never before seen: skyscrapers, canals, bridges, etc. Scientific American magazine in January 2001 described some 30,000 recycling centers per individual nucleated cell in our bodies. Multiply that by 100 trillion cells and you will see how serious your own body is about recycling the proteins of which you are made to keep you healthy!

            The nanoworld has an evolutionary history billions of years longer than the macroworld we see with our naked eyes. Only now do we have the instruments to see how nature produces the most amazing materials we know. The big news, as revealed by Janine Benyus in Biomimicry is that while we forcibly "heat, beat and treat" hydrocarbons to manufacture our products with 96% waste in the process and much pollution, nature makes her fabulous materials, such as spider silks and mother of pearl, out of carbohydrates at ambient temperatures with no waste at all!

            Nature's manufacture is, then, far more sophisticated than our own, and it is high time we accorded it due respect and learned its ways. In the March issue of this newsletter, my column was entitled What's Wrong with Environmental Education. It's main point was that we must learn to see ourselves as a vital part of nature, rather than as a species apart from the rest that sees nature merely as a vast resource for its own use. Once we see ourselves within Nature's awesomely complex living systems, as a newcomer species with a great deal less maturity and sophistication than countless other species coming before us, we will make rapid progress in maturing to cooperative sustainability as a human species. Then, having solved basics in living, we will also be freer to explore and develop our uniquely reflective human minds. 

        This is why I recommend to you Millennials, who hold the future in your capable hands, that you begin your careers by opening yourselves with due humility to the teachings of nature's living systems. Learn the skills of thinking and seeing systemically and holistically and of using available resources in new ways; learn to create positive visions of the future and find like-minded people for cooperative efforts.

        Once these skills are in place, there will be no stopping you! Just start right now to think in evolutionary terms by asking yourselves what you would like to have your great-grandchildren tell proudly about your role in creating their sustainable present.




back to LifeWeb | rat haus | Index | Search | tree 




! Space Age

!! https://en.wikipedia.org/wiki/Space_Age

From Wikipedia, the free encyclopedia

The launch of the Sputnik 1 satellite marked the start of the Space Age.[1]
Menu
0:00
The signals of Sputnik 1 continued for 22 days.
The Space Shuttle lifts off on a crewed mission to space.

The Space Age is a period encompassing the activities related to the Space Race, space exploration, space technology, and the cultural developments influenced by these events. The Space Age is generally considered to have begun with Sputnik 1 in 1957,[1] continuing to the present day.
Contents

    1 Beginning
    2 Present period
    3 Chronology
    4 Earlier spaceflights
    5 Arts and architecture
    6 Music
    7 See also
    8 References
    9 External links
        9.1 Interactive media

Beginning

The Space Age began with the development of several technologies that converged with the October 4, 1957 launch of Sputnik 1 by the Soviet Union. This was the world's first artificial satellite, orbiting the Earth in 98.1 minutes and weighing 83 kg (183 lb). The launch of Sputnik 1 ushered in a new era of political, scientific and technological achievements that became known as the Space Age,[2] by the rapid development of new technology and a race for achievement, mostly between the United States and the Soviet Union.[2] Rapid advances were made in rocketry, materials science, and other areas. Much of the technology originally developed for space applications has been spun off and found additional uses. One such example is memory foam.

The Space Age reached its peak with the Apollo program that captured the imagination of much of the world's population. The landing of Apollo 11 was watched by over 500 million people around the world and is widely recognized as one of the defining moments of the 20th century. Since then, public attention has largely moved to other areas.[3]

In the United States, the Space Shuttle Challenger disaster in 1986 marked a significant decline in crewed Shuttle launches. Following the disaster, NASA grounded all Shuttles for safety concerns until 1988.[4] During the 1990s funding for space-related programs fell sharply as the remaining structures of the now-dissolved Soviet Union disintegrated and NASA no longer had any direct competition.

Since then, participation in space launches has increasingly widened to include more governments and commercial interests. Since the 1990s, the public perception of space exploration and space-related technologies has been that such endeavors are increasingly commonplace.[5]

NASA permanently grounded all U.S. Space Shuttles in 2011. NASA has since relied on Russia and SpaceX to take American astronauts to and from the International Space Station.[5][6]
Present period
SpaceX's Falcon Heavy reusable side boosters land in unison at Cape Canaveral Landing Zones 1 and 2 following test flight on 6 February 2018.

In the early 21st century, the Ansari X Prize competition was set up to help jump-start private spaceflight.[7] The winner, Space Ship One in 2004, became the first spaceship not funded by a government agency.[8]

Several countries now have space programs; from related technology ventures to full-fledged space programs with launch facilities.[9] There are many scientific and commercial satellites in use today, with thousands of satellites in orbit, and several countries have plans to send humans into space.[10][11] Some of the countries joining this new race are France, India, China, Israel and the United Kingdom, all of which have employed surveillance satellites. There are several other countries with less extensive space programs, including Brazil, Germany, Ukraine, and Spain.[12]

As for the United States space program, NASA is currently constructing a deep-space crew capsule named the Orion. NASA's goal with this new space capsule is to carry humans to Mars. The Orion spacecraft is due to be completed in the early 2020s. NASA is hoping that this mission will “usher in a new era of space exploration.”[12]

Another major factor affecting the current Space Age is the privatization of space flight.[13] There are two major companies, Boeing and SpaceX, that are taking a large part in research and innovation. Elon Musk, the owner of SpaceX, has stated the ultimate goal of putting a colony of 1 million people on Mars and in 2018, it launched its largest rocket, bringing this goal closer to reality.[14] Blue Origin, a private company funded by Amazon.com founder Jeff Bezos, is developing rockets for use in space tourism, commercial satellite launches, and eventual missions to the Moon and beyond.[15] Richard Branson's company Virgin Galactic is concentrating on launch vehicles for space tourism.[16]
Chronology
See also: Timeline of space exploration
Date 	First ... 	Mission 	Person(s) 	Country
June 20, 1944 	Artificial object in outer space, i.e. beyond the Kármán line 	V-2 rocket, test flight[17] 	– N/A 	Germany
October 24, 1946 	Pictures from space (105 km)[18][19][20] 	U.S.-launched V-2 rocket from White Sands Missile Range, New Mexico. 	– N/A 	United States
February 20, 1947 	Animals in space 	U.S.-launched V-2 rocket on 20 February 1947 from White Sands Missile Range, New Mexico.[21][22][23] 	- fruit flies 	United States
October 4, 1957 	Artificial satellite 	Sputnik 1[24] 	– N/A 	Soviet Union
November 3, 1957[25] 	Animal in orbit 	Sputnik 2[26] 	Laika the dog 	Soviet Union
January 2, 1959 	Lunar flyby, and first spacecraft to achieve a heliocentric orbit 	Luna 1[27] 	– N/A 	Soviet Union
September 12, 1959 	Impacted on the Lunar surface; thereby becoming the first human object to reach another celestial body 	Luna 2[28] 	– N/A 	Soviet Union
October 7, 1959 	Pictures of the far side of the Moon 	Luna 3[29] 	– N/A 	Soviet Union
April 12, 1961 	Human in space 	Vostok 1[30] 	Yuri Gagarin 	Soviet Union
May 5, 1961 	Manual orientation of crewed spacecraft and first human space mission that landed with pilot still in spacecraft, thus the first complete human spaceflight by FAI definitions[31][32] 	Freedom 7[33] 	Alan Shepard 	United States
December 14, 1962 	Successful flyby of another planet (Venus closest approach 34,773 kilometers) 	Mariner 2[34] 	– N/A 	United States
March 18, 1965 	Spacewalk 	Voskhod 2[35][36] 	Alexei Leonov 	Soviet Union
December 15, 1965 	Space rendezvous 	Gemini 6A[37] and Gemini 7[37] 	Schirra, Stafford, Borman, Lovell 	United States
February 3, 1966 	Soft landing on the Moon by a spacecraft 	Luna 9[38][39] 	– N/A 	Soviet Union
March 1, 1966 	First human-made object to impact another planet 	Venera 3[40][41] 	– N/A 	Soviet Union
March 16, 1966 	Orbital docking between two spacecraft 	Gemini 8[42] & Agena Target Vehicle[43] 	Neil Armstrong, David Scott 	United States
April 3, 1966 	Artificial satellite of another celestial body (other than the Sun) 	Luna 10[44] 	– N/A 	Soviet Union
October 18, 1967 	First spacecraft to perform transmit data from the atmosphere of another planet 	Venera 4[45] 	– N/A 	Soviet Union
December 21–27, 1968 	First humans to enter the gravitational influence of another celestial body (the Moon) and orbit it 	Apollo 8 	Borman, Lovell, Anders 	United States
July 20, 1969 	Humans land and walk on another celestial body (Moon) 	Apollo 11[46] 	Neil Armstrong, Buzz Aldrin 	United States
December 15, 1970 	First telemetry from the surface of another planet 	Venera 7[47] 	– N/A 	Soviet Union
April 19, 1971 	Operational space station 	Salyut 1[48][49] 	– N/A 	Soviet Union
June 7, 1971 	Resident crew 	Soyuz 11 (Salyut 1) 	Georgy Dobrovolsky, Vladislav Volkov, Viktor Patsayev 	Soviet Union
July 20, 1976 	Pictures from the surface of Mars 	Viking 1[50] 	– N/A 	United States
April 12, 1981 	Reusable orbital spaceship 	STS-1[51] 	Young, Crippen 	United States
February 19, 1986 	Long-duration space station 	Mir[52] 	– N/A 	Soviet Union
February 14, 1990 	Photograph of the whole Solar System[53] 	Voyager 1[54] 	– N/A 	United States
November 20, 1998 	Current space station 	International Space Station[55] 	– N/A 	Russia
August 25, 2012 	Artificial space probe in interstellar space 	Voyager 1[56] 	– N/A 	United States
November 12, 2014 	Artificial probe to make a planned and soft landing on a comet (67P/Churyumov–Gerasimenko)[57] 	Rosetta[58] 	– N/A 	European Space Agency
July 14, 2015 	Nation to have its space probes to explore all of the nine major planets recognized in 1981[59] 	New Horizons[60] 	– N/A 	United States
December 20, 2015 	Vertical landing of an orbital rocket booster on a ground pad.[61] 	Falcon 9 flight 20[62] 	– N/A 	United States
April 8, 2016 	Vertical landing of an orbital rocket booster on a floating platform at sea.[63] 	SpaceX CRS-8[64] 	– N/A 	United States
March 30, 2017 	Relaunch and second landing of a used orbital rocket booster.[65] 	SES-10[66] 	– N/A 	United States
January 3, 2019 	Soft landing on the lunar far side by a spacecraft. 	Chang'e 4[67][68] 	– N/A 	China
May 30, 2020 	First human orbital spaceflight launched by a private company. 	Crew Dragon Demo-2/Crew Demo-2/SpaceX Demo-2/Dragon Crew Demo-2[69] 	Bob Behnken, Doug Hurley 	United States
Earlier spaceflights

The Space Age might also be considered to have begun much earlier than October 4, 1957, because in June 1944, a German V-2 rocket became the first manmade object to enter space, albeit only briefly.[70] Some even consider March 1926 as the beginning of the Space Age, when American rocket pioneer Robert H. Goddard launched the world's first liquid fuel rocket, though his rocket did not reach outer space.[71]

Since the V-2 rocket flight was undertaken in secrecy, it was not public knowledge for many years afterward. Further, the German launches, as well as the subsequent sounding rocket tests performed in both the United States and the Soviet Union during the late 1940s and early 1950s, were not considered significant enough to start a new age because they did not reach orbit. Having a rocket powerful enough to reach orbit meant that a nation could place a payload anywhere on the planet, or to use another term, possessed an intercontinental ballistic missile. The fact that after such a development nowhere on Earth was safe from a nuclear warhead is why the orbital standard is commonly used to define when the space age began.[72]
Arts and architecture
Iconic rocket ship-shaped tail lights and fins on a 1959 Cadillac Coupe de Ville
Satellite-influenced signage at the Town Motel in Birmingham, Alabama
TWA Moonliner II replica atop the restored TWA Corporate Headquarters building in Kansas City, MO, 2007

The Space Age is considered to have influenced:

    Automotive design
    Googie architecture
    Amusement park attraction including TWA Moonliner and Mission: Space.
    Cold War playground equipment

Music

The Space Age also inspired musical genres:

    Space age pop
    Space music
    Space rock
    Space-themed music

See also

    Spaceflight portal Space portal Solar system portal

    Space exploration
    Space Race
    Spacecraft
    Human spaceflight
    SEDS
    Space probe
    Information Age
    Jet Age
    Atomic Age
    Googie architecture (space age design movement)
    Space tourism

References

McDougall, Walter A (Winter 2010), "Shooting the Moon", American Heritage.
Garber, Steve. "Sputnik and The Dawn of the Space Age". History. NASA. Archived from the original on 18 November 2004. Retrieved 6 May 2013.
"National Aeronautics and Space Administration". NASA. Archived from the original on 1996-12-31. Retrieved 2015-11-20.
Howell, Elizabeth. "Challenger: Shuttle Disaster That Changed NASA". Space.com. Archived from the original on 4 May 2018. Retrieved 17 March 2018.
NASA. Historical Studies in the Societal Impact of Spaceflight - NASA (PDF).
"The New American Space Age: A Progress Report on Human SpaceFlight" (PDF). Aerospace Industries Association. Aerospace Industries Association. Archived (PDF) from the original on 25 March 2018. Retrieved 16 March 2018.
"Ansari X Prize". Archived from the original on 23 September 2010. Retrieved 2010-09-15.
"SpaceShipOne: The First Private Spacecraft | The Most Amazing Flying Machines Ever". Space.com. Archived from the original on 2015-11-15. Retrieved 2015-11-27.
"Global Space Programs | Space Foundation". www.spacefoundation.org. Archived from the original on 2015-11-14. Retrieved 2015-11-27.
"Japan Wants Space Plane or Capsule by 2022". Space.com. Archived from the original on 2015-12-24. Retrieved 2015-11-27.
"India takes giant step to manned space mission". Telegraph.co.uk. Archived from the original on 2015-11-26. Retrieved 2015-11-27.
"The New Space Race – Who Will Take the Lead?". rcg.org. Retrieved 2018-05-08.
"Circumlunar mission". Space Adventures. Archived from the original on 12 February 2015. Retrieved 15 February 2015.
"A NASA Astronaut Stays In Orbit With SpaceX And Boeing". NPR.org. Retrieved 2018-05-08.
"Blue Origin: everything you need to know about the Amazon.com of space". TechRadar. Retrieved 2019-11-11.
"Sir Richard Branson plans orbital spaceships for Virgin Galactic, 2014 trips to space". foxnews.com.
"Long-range" in the context of the time. See NASA history article Archived 7 January 2009 at the Wayback Machine
"Chronology: Cowboys to V-2s to the Space Shuttle to lasers". www.wsmr.army.mil. Archived from the original on 13 October 2014. Retrieved 4 May 2018.
"Archived copy". Archived from the original on 2014-02-21. Retrieved 2013-01-17.
Reichhardt, Tony. "First Photo From Space". airspacemag.com. Retrieved 4 May 2018.
"Post War Space". postwar.com. Archived from the original on 2011-07-15.
"The Beginnings of Research in Space Biology at the Air Force Missile Development Center, 1946–1952". History of Research in Space Biology and Biodynamics. NASA. Archived from the original on 25 January 2008. Retrieved 31 January 2008.
"V-2 Firing Tables". White Sands Missile Range. Archived from the original on 25 January 2008. Retrieved 31 January 2008.
Terry 2013, p. 233.
McDowell, Jonathan. "Satellite Catalog". Jonathan's Space Page. Retrieved 29 October 2013.
Berger, Eric (3 November 2017). "The first creature in space was a dog. She died miserably 60 years ago". Ars Technica. Archived from the original on 1 December 2017. Retrieved 3 November 2017.
https://nssdc.gsfc.nasa.gov/nmc/spacecraft/display.action?id=1959-012A - 27 February 2020
Harvey, Brian (2007). Soviet and Russian Lunar Exploration. Springer. Bibcode:2007srle.book.....H. ISBN 978-0-387-73976-2.
Harvey, Brian (2011). Russian space probes: scientific discoveries and future missions. New York: Springer. ISBN 978-1-4419-8150-9.
Colin Burgess, Rex Hall (June 2, 2010). The first Soviet cosmonaut team: their lives, legacy, and historical impact. Praxis. p. 356. ISBN 978-0-387-84823-5.
"Geek Trivia: A leap of fakes". Archived from the original on 5 August 2017. Retrieved 18 August 2016.
"Manned Space Firsts". Archived from the original on 2013-10-30. Retrieved 2016-06-30.
Swenson Jr., Loyd S.; Grimwood, James M.; Alexander, Charles C. (1989). "11-1 Suborbital Flights into Space". In Woods, David; Gamble, Chris (eds.). This New Ocean: A History of Project Mercury (url). Published as NASA Special Publication-4201 in the NASA History Series. NASA. Retrieved August 15, 2017.
"Mariner 2". US National Space Science Data Center. Retrieved September 8, 2013.
Burgess, Colin; Hall, Rex (2009). The first Soviet cosmonaut team their lives, legacy, and historical impact (Online-Ausg. ed.). Berlin: Springer. p. 252. ISBN 978-0387848242.
Grayzeck, Dr. Edwin J. "Voskhod 2". nssdc.gsfc.nasa.gov. National Space Science Data Center. Retrieved 20 July 2014.
Hacker, Barton C.; Grimwood, James M. (September 1974). "Chapter 11 Pillars of Confidence". On the Shoulders of Titans: A History of Project Gemini. NASA History Series. SP-4203. NASA. p. 239. With Gemini IV, NASA changed to Roman numerals for Gemini mission designations.
"Chandrayaan-2 landing: 40% lunar missions in last 60 years failed, finds Nasa report".
Siddiqi, Asif A. (2018). Beyond Earth: A Chronicle of Deep Space Exploration, 1958–2016 (PDF). The NASA history series (second ed.). Washington, D.C.: NASA History Program Office. pp. 1–2. ISBN 9781626830424. LCCN 2017059404. SP2018-4041.
Wade, Mark. "Venera 3MV-3". Encyclopedia Astronautica. Retrieved 3 April 2018.
Krebs, Gunter. "Venera 3 (3MV-3 #1)". Gunter's Space Page. Retrieved 3 April 2018.
NASA (March 11, 1966). "Gemini 8 press kit" (PDF) (Press release). NASA. Archived from the original (PDF) on February 27, 2012. Retrieved February 27, 2015.
Agle, D. C. (September 1998). "Flying the Gusmobile". Air & Space.
Siddiqi, Asif A. (2018). Beyond Earth: A Chronicle of Deep Space Exploration, 1958–2016 (PDF). The NASA history series (second ed.). Washington, D.C.: NASA History Program Office. p. 1. ISBN 9781626830424. LCCN 2017059404. SP2018-4041.
Siddiqi, Asif A. (2018). Beyond Earth: A Chronicle of Deep Space Exploration, 1958–2016 (PDF). The NASA history series (second ed.). Washington, D.C.: NASA. ISBN 9781626830424. LCCN 2017059404. SP2018-4041.
Orloff, Richard W. (2000). Apollo by the Numbers: A Statistical Reference. NASA History Series. Washington, D.C.: NASA History Division, Office of Policy and Plans. ISBN 978-0-16-050631-4. LCCN 00061677. OCLC 829406439. SP-2000-4029. Retrieved June 12, 2013.
"Science: Onward from Venus". Time. 8 February 1971. Retrieved 2 January 2013.
Baker, Philip (2007). The Story of Manned Space Stations: An Introduction. Springer-Praxis Books in Astronomy and Space Sciences. Springer Science+Business Media. ISBN 978-0-387-30775-6.
Ivanovich, Grujica S. (2008). Salyut - The First Space Station: Triumph and Tragedy. Springer-Praxis Books in Astronomy and Space Sciences. Springer Science+Business Media. ISBN 978-0-387-73585-6.
Image – Viking 1 Approaches Mars
"STS-1 Press Kit" (PDF). NASA. 1981. p. 36. Archived from the original (PDF) on 5 March 2016. Retrieved 28 November 2012.
Jackman, Frank (29 October 2010). "ISS Passing Old Russian Mir In Crewed Time". Aviation Week.
See "Archived copy". Archived from the original on 2009-03-31. Retrieved 2009-07-21. under "Extended Mission"
https://voyager.jpl.nasa.gov/mission/status/
Gary Kitmacher (2006). Reference Guide to the International Space Station. Apogee Books Space Series. Canada: Apogee Books. pp. 71–80. ISBN 978-1-894959-34-6. ISSN 1496-6921.
https://voyager.jpl.nasa.gov/mission/status/
Chang, Kenneth (Nov 12, 2014). "European Space Agency's Spacecraft Lands on Comet's Surface". The New York Times. Archived from the original on 2014-11-12. Retrieved Nov 12, 2014.
Agle, D. C.; Brown, Dwayne; Bauer, Markus (30 June 2014). "Rosetta's Comet Target 'Releases' Plentiful Water". NASA. Retrieved 30 June 2014.
Talbert, Tricia (25 March 2015). "New Horizons: The First Mission to the Pluto System and the Kuiper Belt". nasa.gov. Archived from the original on 15 October 2017. Retrieved 4 May 2018.
Chang, Kenneth (July 18, 2015). "The Long, Strange Trip to Pluto, and How NASA Nearly Missed It". The New York Times. Retrieved July 19, 2015.
Chang, Kenneth (December 21, 2015). "SpaceX Successfully Lands Rocket after Launch of Satellites into Orbit". The New York Times. Retrieved December 22, 2015.
"2015 U.S. Space Launch Manifest". americaspace.com. AmericaSpace, LLC. 21 December 2015. Retrieved 21 December 2015.
Drake, Nadia (April 8, 2016). "SpaceX Rocket Makes Spectacular Landing on Drone Ship". National Geographic. Archived from the original on April 8, 2016. Retrieved April 8, 2016. "To space and back, in less than nine minutes? Hello, future."
Hartman, Daniel W. (July 2014). "Status of the ISS USOS" (PDF). NASA Advisory Council HEOMD Committee. Retrieved October 26, 2014.
Grush, Loren (March 30, 2017). "SpaceX makes aerospace history with successful landing of a used rocket". The Verge. Archived from the original on March 30, 2017. Retrieved March 30, 2017.
"Space Systems Mission and system requirements for Electric Propulsion" (PDF). Airbus Defence and Space. 25 November 2014. Archived from the original (PDF) on 31 August 2016. Retrieved 31 August 2016.
Lyons, Kate. "Chang'e 4 landing: China probe makes historic touchdown on far side of the moon". The Guardian. Archived from the original on 3 January 2019. Retrieved 3 January 2019.
"China successfully lands Chang'e-4 on far side of Moon". Archived from the original on 3 January 2019. Retrieved 3 January 2019.
"Crew Dragon SpX-DM2". Spacefacts. Retrieved 31 May 2020.
Schefter, James (1999), The Race: The Uncensored Story of How America Beat Russia to the Moon, New York, New York: Doubleday, pp. 3–49, ISBN 0-385-49253-7
"Goddard launches space age with historic first 85 years ago today". Retrieved 2016-04-29.

    Schefter, James (1999), The Race: The Uncensored Story of How America Beat Russia to the Moon, New York, New York: Doubleday, pp. 3–49, ISBN 0-385-49253-7

External links
	Wikimedia Commons has media related to Space Age.
	Look up space age in Wiktionary, the free dictionary.

    Space Chronology

Interactive media

    50th Anniversary of the Space Age & Sputnik, NASA, archived from the original on 2007-10-27.

    vte

Spaceflight
General	

    Astrodynamics History
        Timeline Space Race Asian Space Race Records Accidents and incidents Space launch Space policy
        Australia China European Union India Japan Russia Soviet Union United States Space law
        Outer Space Treaty Rescue Agreement Space Liability Convention Registration Convention Moon Treaty Space warfare
        Space force Militarisation of space Private spaceflight

	
Sputnik asm.jpg
Applications	

    Astronomy Earth observation
        Archaeology Imagery and mapping Reconnaissance Weather and environment monitoring Communications satellite
        Internet Radio Telephone Television Satellite navigation Commercial use of space Space launch market competition Space architecture Space exploration Space research Space technology Space weather

Human spaceflight	
General	

    Astronaut
        commercial Life-support system
        Animals in space Bioastronautics Space suit Extravehicular activity Weightlessness Space toilet Space tourism Space colonization Space diving

Programs	

    Vostok Mercury Voskhod Gemini Soyuz Apollo
        Skylab Apollo–Soyuz Space Shuttle Mir
        Shuttle–Mir International Space Station Shenzhou Tiangong Artemis

Health issues	

    Effect of spaceflight on the human body
        Space adaptation syndrome Health threat from cosmic rays Space psychology
        Psychological and sociological effects Space and survival Space medicine Space nursing

Spacecraft	

    Launch vehicle Rocket Space capsule
        Orbital module Reentry capsule Service module Spaceplane Robotic spacecraft
        Satellite Space probe Lander Rover Self-replicating spacecraft Space telescope Spacecraft propulsion
        Rocket engine Electric propulsion Solar sail Gravity assist

Destinations	

    Sub-orbital Orbital
        Geocentric Geosynchronous Interplanetary Interstellar Intergalactic

Space launch	

    Direct ascent Escape velocity Expendable and reusable launch systems Launch pad Non-rocket spacelaunch Spaceport

Ground segment	

    Flight controller Ground station Pass Mission control center

Space agencies	

    Argentina CoNAE Algeria ASA Australia ASA Brazil AEB Canada CSA China CNSA ESA logo simple.svg ESA France CNES Germany DLR India ISRO Indonesia LAPAN Iran ISA Israel ISA Italy ASI Mexico AEM Japan JAXA North Korea NADA South Korea KARI Pakistan SUPARCO Russia Roscosmos Sweden SNSA Ukraine SSAU United Kingdom UKSA United States NASA/USSF

     Category Category  Portal Portal  WikiProject WikiProject

Categories:

    SpaceflightHistorical eras20th century1957 introductions1957 in spaceflight

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    العربية
    Deutsch
    Español
    Français
    Bahasa Indonesia
    Italiano
    پنجابی
    Português
    Türkçe

Edit links

    This page was last edited on 2 May 2021, at 05:44 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki




! Stablecoin
!! 
!! https://en.wikipedia.org/wiki/Stablecoin

From Wikipedia, the free encyclopedia


Stablecoins are cryptocurrencies where the price is designed to be pegged to a cryptocurrency, fiat money, or to exchange-traded commodities (such as precious metals or industrial metals).[1]
Contents

    1 Backed stablecoins
        1.1 Commodity-backed
        1.2 Fiat-backed
        1.3 Cryptocurrency-backed
    2 Seigniorage-style (not backed)
    3 Criticisms
    4 Failed and abandoned stablecoin projects
    5 Social advantages
    6 References

Backed stablecoins

Advantages of asset backed cryptocurrencies are that coins are stabilized by assets that fluctuate outside of the cryptocurrency space, that is, the underlying asset is not correlated, reducing financial risk.[2] Bitcoin and altcoins are highly correlated, so that cryptocurrency holders cannot escape widespread price falls without exiting the market or taking refuge in asset backed stablecoins. Furthermore, such coins, assuming they are managed in good faith, and have a mechanism for redeeming the asset/s backing them, are unlikely to drop below the value of the underlying physical asset, due to arbitrage.

Backed stablecoins are subject to the same volatility and risk associated with the backing asset. If the backed stablecoin is backed in a decentralized manner, then they are relatively safe from predation, but if there is a central vault, they may be robbed, or suffer loss of confidence.[3]
Commodity-backed

The main characteristics of backed stablecoins are:

    Their value is fixed to one or more commodities and redeemable for such (more or less) on demand,
    There is a promise to pay, by unregulated individuals, agorist firms, or even regulated financial institutions,
    The amount of commodity used to back the stablecoin has to reflect the circulating supply of the stablecoin.

Holders of commodity-backed stablecoins can redeem their stablecoins at the conversion rate to take possession of real assets. The cost of maintaining the stability of the stablecoin is the cost of storing and protecting the commodity backing.

Examples: Digix Gold Tokens (DGX)[4] and others.
Fiat-backed

The value of stablecoins of this type is based on the value of the backing currency, which is held by a third-party regulated financial entity. In this setting, the trust in the custodian of the backing asset is crucial for the stability of price of the stablecoin. Fiat-backed stablecoins can be traded on exchanges and are redeemable from the issuer. The cost of maintaining the stability of the stablecoin is equivalent to the cost of maintaining the backing reserve and the cost of legal compliance, maintaining licenses, auditors and the business infrastructure required by the regulator.

Cryptocurrencies backed by fiat money are the most common and were the first type of stablecoins on the market. Their characteristics are:

    Their value is pegged to one or more currencies (most commonly the US dollar, also the Euro and the Swiss franc) in a fixed ratio,
    The tether is realized off-chain, through banks or other types of regulated financial institutions which serve as depositaries of the currency used to back the stablecoin,
    The amount of the currency used for backing of the stablecoin has to reflect the circulating supply of the stablecoin.

Examples: TrueUSD (TUSD),[5] USD Tether (USDT),[6] USD Coin, Diem.
Cryptocurrency-backed

Cryptocurrency-backed stablecoins are issued with cryptocurrencies as collateral, which is conceptually similar to fiat-backed stablecoins. However, the significant difference between the two designs is that while fiat collateralization typically happens off the blockchain, the cryptocurrency or crypto asset used to back this type of stablecoins is done on the blockchain, using smart contracts in a more decentralized fashion. In many cases, these work by allowing users to take out a loan against a smart-contract via locking up collateral, making it more worthwhile to pay off their debt should the stablecoin ever decrease in value. To prevent sudden crashes, a user who takes out a loan may be liquidated by the smart contract should their collateral decrease too close to the value of their withdrawal.

Significant features of crypto-backed stablecoins are:

    The value of the stablecoin is collateralized by another cryptocurrency or a cryptocurrency portfolio,
    The peg is executed on-chain via smart contracts,
    The supply of the stablecoins is regulated on-chain, using smart contracts,
    The price stability is achieved through introduction of supplementary instruments and incentives, not just the collateral.

The technical implementation of this type of stablecoins is more complex and varied than that of the fiat-collateralized kind which introduces a greater risks of exploits due to bugs in the smart contract code. With the tethering done on-chain, it is not subject to third-party regulation creating a decentralized solution. The potentially problematic aspect of this type of stablecoins is the change in value of the collateral and the reliance on supplementary instruments. The complexity and non-direct backing of the stablecoin may deter usage, as it may be difficult to comprehend how the price is actually ensured. Due to the nature of the highly volatile and convergent cryptocurrency market, a very large collateral must also be maintained to ensure the stability.

Live stablecoins projects of this type are Havven (the pair: nUSD – stablecoin and HAV – the collateral-backed nUSD),[7] DAI (pair: CDP – Collateralized Debt Position and MKR – governance token used to control the supply)[8] and others.
Seigniorage-style (not backed)

Seigniorage-style coins utilize algorithms to control the stablecoin’s money supply, similar to a central bank's approach to printing and destroying currency. Seigniorage-based stablecoins are a less popular form of stablecoin.[9]

Significant features of seigniorage-style stablecoins are:[9]

    Adjustments are made on-chain,
    No collateral is needed to mint coins,
    Value is controlled by supply and demand through algorithms, stabilizing price.

Basis was one example of a seigniorage-style coin.[9]
Criticisms

Tether, the largest stablecoin by market capitalization, has faced accusations of being unable to provide audits for their reserves while continually printing millions; many have attributed their unverifiable creation of new coins to Bitcoin's rise in price in 2017.[10]
Failed and abandoned stablecoin projects

Stablecoins can be prone to failure as well due to volatility and upkeep required in many cases.[citation needed] The stablecoin project Basis, which had received over $100 million in venture capital funding, shut down in December 2018, citing concerns about US regulation.[11]
Social advantages

The Bank of International Settlements lists the possible merits of the subject as enhancement of anti-money laundering efforts, operational resilience, customer data protection, financial inclusion, tax compliance, and cybersecurity.[12]
References

"Rise of Crypto Market's Quiet Giants Has Big Market Implications". Bloomberg.com. 19 March 2021.
"Stable Coin Backed by Circle, Coinbase Draws Most Early Demand". Bloomberg.com. 29 October 2018.
"Gold-Pegged Vs. USD-Pegged Cryptocurrencies". Investopedia. Retrieved 27 October 2018.
Eufemio, Anthony C.; Chng, Kai C.; Djie, Shaun (Jul 2018). "Digix's Whitepaper: The Gold Standard in Crypto-Assets" (PDF). Digix's Whitepaper: The Gold Standard in Crypto-Assets: 2.
"Why Facebook Chose Stablecoins as Its Path to Crypto". Bloomberg. January 27, 2019. Retrieved August 30, 2019.
Tether. "Tether: Fiat currencies on the Bitcoin blockchain" (PDF). Tether: Fiat Currencies on the Bitcoin Blockchain: 7. Retrieved 2018-10-23.
Brooks, Samuel; Jurisevic, Anton; Spain, Michael; Warwick, Kain (2018-06-11). "A decentralised payment network and stablecoin" (PDF). A Decentralised Payment Network and Stablecoin V0.8: 6–9.
"The Dai Stablecoin System". Retrieved 2018-10-23.
Memon, Bilal. "Guide to Stablecoin: Types of Stablecoins & Its Importance". Retrieved 22 Oct 2018.
"Without this bitcoin price would collapse". NewsComAu. Retrieved 2018-06-11.
"Cryptocurrency project Basis to shut down and return funding to investors". Reuters. 13 Dec 2018. Retrieved 30 Dec 2018.

    G7Working Group on Stablecoins. Committee on Payments and Market Infrastructure. (18 October 2019). "CPMI Papers: Investigating the impact of global stablecoins". Bank of International Settlements website Retrieved 23 January 2021.

    vte

Cryptocurrencies
Technology	

    Blockchain Distributed ledger technology law Cryptocurrency tumbler Cryptocurrency exchange Cryptocurrency wallet Cryptographic hash function Distributed ledger Fork Lightning Network MetaMask Smart contract

Consensus mechanisms	

    Proof of authority Proof of personhood Proof of space Proof of stake Proof of work

Proof of work currencies	
SHA-256-based	

    Bitcoin Bitcoin Cash Counterparty LBRY MazaCoin Namecoin Peercoin Titcoin

Ethash-based	

    Ethereum Ethereum Classic

Scrypt-based	

    Auroracoin Bitconnect Coinye Dogecoin Litecoin

Equihash-based	

    Bitcoin Gold Zcash

RandomX-based	

    Monero

X11-based	

    Dash Petro

Other	

    AmbaCoin Firo IOTA Primecoin Verge Vertcoin

Proof of stake currencies	

    Cardano EOS.IO Gridcoin Nxt Peercoin Polkadot Steem Tezos TRON

ERC-20 tokens	

    Augur Aventus Bancor Basic Attention Token Chainlink Kin KodakCoin Minds The DAO Uniswap

Stablecoins	

    Dai Diem Tether USD Coin

Other currencies	

    Ankr Filecoin GNU Taler Hashgraph Nano NEO Ripple Stellar WhopperCoin

Related topics	

    Airdrop BitLicense Blockchain game Complementary currency Crypto-anarchism Cryptocurrency bubble Decentralized Finance Digital currency Double-spending Hyperledger Initial coin offering Initial exchange offering Initiative Q List of cryptocurrencies Non-fungible token Token money Virtual currency

    Category Category Commons page Commons List-Class article List

Categories:

    Cryptocurrencies

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    View source
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Deutsch
    Español
    한국어
    Português
    Русский
    اردو
    中文

Edit links

    This page was last edited on 25 April 2021, at 02:19 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


This is a good article. Click here for more information.
Listen to this article
! Stoicism

!! https://en.wikipedia.org/wiki/Stoicism

From Wikipedia, the free encyclopedia


Zeno of Citium, the founder of Stoicism, in the Farnese collection, Naples – Photo by Paolo Monti, 1969.
Part of a series on
Stoicism
Epictetus, Seneca, and Marcus Aurelius
Background
Philosophy
Stoics
Stoic works
Similar positions
Contrary positions
Socrates.png Philosophy portal

    vte

Stoicism is a school of Hellenistic philosophy founded by Zeno of Citium in Athens in the early 3rd century BC. It is a philosophy of personal ethics informed by its system of logic and its views on the natural world. According to its teachings, as social beings, the path to eudaimonia (happiness, or blessedness) is found in accepting the moment as it presents itself, by not allowing oneself to be controlled by the desire for pleasure or by the fear of pain, by using one's mind to understand the world and to do one's part in nature's plan, and by working together and treating others fairly and justly.

The Stoics are especially known for teaching that "virtue is the only good" for human beings, and those external things—such as health, wealth, and pleasure—are not good or bad in themselves (adiaphora), but have value as "material for virtue to act upon". Alongside Aristotelian ethics, the Stoic tradition forms one of the major founding approaches to virtue ethics.[1] The Stoics also held that certain destructive emotions resulted from errors of judgment, and they believed people should aim to maintain a will (called prohairesis) that is "in accordance with nature". Because of this, the Stoics thought the best indication of an individual's philosophy was not what a person said but how a person behaved.[2] To live a good life, one had to understand the rules of the natural order since they thought everything was rooted in nature.

Many Stoics—such as Seneca and Epictetus—emphasized that because "virtue is sufficient for happiness", a sage would be emotionally resilient to misfortune. This belief is similar to the meaning of the phrase "stoic calm", though the phrase does not include the "radical ethical" Stoic views that only a sage can be considered truly free and that all moral corruptions are equally vicious.[3]

Stoicism flourished throughout the Roman and Greek world until the 3rd century AD, and among its adherents was Emperor Marcus Aurelius. It experienced a decline after Christianity became the state religion in the 4th century AD. Since then it has seen revivals, notably in the Renaissance (Neostoicism) and in the contemporary era (modern Stoicism).[4]
Contents

    1 Name
        1.1 Origins
        1.2 Modern usage
    2 Basic tenets
    3 History
    4 Logic
        4.1 Propositional logic
        4.2 Categories
        4.3 Epistemology
    5 Physics
    6 Ethics
        6.1 The doctrine of "things indifferent"
        6.2 Spiritual exercise
    7 Social philosophy
    8 Influence on Christianity
    9 Stoic philosophers
    10 See also
    11 References
    12 Further reading
        12.1 Primary sources
        12.2 Studies
    13 External links

Name
Origins

Stoicism was originally known as "Zenonism", after the founder Zeno of Citium. However, this name was soon dropped, likely because the Stoics did not consider their founders to be perfectly wise, and to avoid the risk of the philosophy becoming a cult of personality.[5]

The name "Stoicism" derives from the Stoa Poikile (Ancient Greek: ἡ ποικίλη στοά), or "painted porch", a colonnade decorated with mythic and historical battle scenes, on the north side of the Agora in Athens, where Zeno and his followers gathered to discuss their ideas.[6][7]

Sometimes Stoicism is therefore referred to as "The Stoa", or the philosophy of "The Porch".[5]
Modern usage

The word "stoic" commonly refers to someone who is indifferent to pain, pleasure, grief, or joy.[8] The modern usage as a "person who represses feelings or endures patiently" was first cited in 1579 as a noun and in 1596 as an adjective.[9] In contrast to the term "Epicurean", the Stanford Encyclopedia of Philosophy's entry on Stoicism notes, "the sense of the English adjective 'stoical' is not utterly misleading with regard to its philosophical origins."[10]
Basic tenets

    Philosophy does not promise to secure anything external for man, otherwise it would be admitting something that lies beyond its proper subject-matter. For as the material of the carpenter is wood, and that of statuary bronze, so the subject-matter of the art of living is each person's own life.
    — Epictetus, Discourses 1.15.2, Robin Hard revised translation

The Stoics provided a unified account of the world, constructed from ideals of logic, monistic physics and naturalistic ethics. Of these, they emphasized ethics as the main focus of human knowledge, though their logical theories were of more interest for later philosophers.

Stoicism teaches the development of self-control and fortitude as a means of overcoming destructive emotions; the philosophy holds that becoming a clear and unbiased thinker allows one to understand the universal reason (logos). Stoicism's primary aspect involves improving the individual's ethical and moral well-being: "Virtue consists in a will that is in agreement with Nature."[11] This principle also applies to the realm of interpersonal relationships; "to be free from anger, envy, and jealousy",[12] and to accept even slaves as "equals of other men, because all men alike are products of nature".[13]

The Stoic ethic espouses a deterministic perspective; in regard to those who lack Stoic virtue, Cleanthes once opined that the wicked man is "like a dog tied to a cart, and compelled to go wherever it goes".[11] A Stoic of virtue, by contrast, would amend his will to suit the world and remain, in the words of Epictetus, "sick and yet happy, in peril and yet happy, dying and yet happy, in exile and happy, in disgrace and happy",[12] thus positing a "completely autonomous" individual will, and at the same time a universe that is "a rigidly deterministic single whole". This viewpoint was later described as "Classical Pantheism" (and was adopted by Dutch philosopher Baruch Spinoza).[14]
History
Antisthenes, founder of the Cynic school of philosophy

Beginning around 301 BC, Zeno taught philosophy at the Stoa Poikile ("Painted Porch"), from which his philosophy got its name.[15] Unlike the other schools of philosophy, such as the Epicureans, Zeno chose to teach his philosophy in a public space, which was a colonnade overlooking the central gathering place of Athens, the Agora.

Zeno's ideas developed from those of the Cynics, whose founding father, Antisthenes, had been a disciple of Socrates. Zeno's most influential follower was Chrysippus, who was responsible for molding what is now called Stoicism. Later Roman Stoics focused on promoting a life in harmony within the universe, over which one has no direct control.
Bust of Seneca

Scholars usually divide the history of Stoicism into three phases:

    Early Stoa, from Zeno's founding to Antipater.
    Middle Stoa, including Panaetius and Posidonius.
    Late Stoa, including Musonius Rufus, Seneca, Epictetus, and Marcus Aurelius.

No complete works survive from the first two phases of Stoicism. Only Roman texts from the Late Stoa survive.[16]

Stoicism became the foremost popular philosophy among the educated elite in the Hellenistic world and the Roman Empire,[17] to the point where, in the words of Gilbert Murray "nearly all the successors of Alexander [...] professed themselves Stoics."[18]
Logic
Main article: Stoic logic
Propositional logic

Diodorus Cronus, who was one of Zeno's teachers, is considered the philosopher who first introduced and developed an approach to logic now known as propositional logic, which is based on statements or propositions, rather than terms, making it very different from Aristotle's term logic. Later, Chrysippus developed a system that became known as Stoic logic and included a deductive system, Stoic Syllogistic, which was considered a rival to Aristotle's Syllogistic (see Syllogism). New interest in Stoic logic came in the 20th century, when important developments in logic were based on propositional logic. Susanne Bobzien wrote, "The many close similarities between Chrysippus's philosophical logic and that of Gottlob Frege are especially striking."[19]

Bobzien also notes that "Chrysippus wrote over 300 books on logic, on virtually any topic logic today concerns itself with, including speech act theory, sentence analysis, singular and plural expressions, types of predicates, indexicals, existential propositions, sentential connectives, negations, disjunctions, conditionals, logical consequence, valid argument forms, theory of deduction, propositional logic, modal logic, tense logic, epistemic logic, logic of suppositions, logic of imperatives, ambiguity and logical paradoxes."[19]
Categories
Main article: Stoic categories

The Stoics held that all beings (ὄντα)—though not all things (τινά)—are material.[20] Besides the existing beings they admitted four incorporeals (asomata): time, place, void, and sayable.[21] They were held to be just 'subsisting' while such a status was denied to universals.[22] Thus, they accepted Anaxagoras's idea (as did Aristotle) that if an object is hot, it is because some part of a universal heat body had entered the object. But, unlike Aristotle, they extended the idea to cover all accidents. Thus if an object is red, it would be because some part of a universal red body had entered the object.

They held that there were four categories.

    substance (ὑποκείμενον)

        The primary matter, formless substance, (ousia) that things are made of

    quality (ποιόν)

        The way matter is organized to form an individual object; in Stoic physics, a physical ingredient (pneuma: air or breath), which informs the matter

    somehow disposed (πως ἔχον)

        Particular characteristics, not present within the object, such as size, shape, action, and posture

    Somehow disposed in relation to something (πρός τί πως ἔχον)

        Characteristics related to other phenomena, such as the position of an object within time and space relative to other objects

    Make for yourself a definition or description of the thing which is presented to you, so as to see distinctly what kind of a thing it is in its substance, in its nudity, in its complete entirety, and tell yourself its proper name, and the names of the things of which it has been compounded, and into which it will be resolved. For nothing is so productive of elevation of mind as to be able to examine methodically and truly every object that is presented to you in life, and always to look at things so as to see at the same time what kind of universe this is, and what kind of use everything performs in it, and what value everything has with reference to the whole.
    — Marcus Aurelius, Meditations, iii. 11

Stoics outlined what we have control over categories of our own action, thoughts and reaction. The opening paragraph of The Enchiridion states the categories as: "Things in our control are opinion, pursuit, desire, aversion, and, in a word, whatever are our own actions. Things not in our control are body, property, reputation, command, and, in a word, whatever are not our own actions." These suggest a space that is within our own control.
Epistemology

The Stoics propounded that knowledge can be attained through the use of reason. Truth can be distinguished from fallacy—even if, in practice, only an approximation can be made. According to the Stoics, the senses constantly receive sensations: pulsations that pass from objects through the senses to the mind, where they leave an impression in the imagination (phantasiai) (an impression arising from the mind was called a phantasma).[23]

The mind has the ability to judge (συγκατάθεσις, synkatathesis)—approve or reject—an impression, enabling it to distinguish a true representation of reality from one that is false. Some impressions can be assented to immediately, but others can achieve only varying degrees of hesitant approval, which can be labeled belief or opinion (doxa). It is only through reason that we gain clear comprehension and conviction (katalepsis). Certain and true knowledge (episteme), achievable by the Stoic sage, can be attained only by verifying the conviction with the expertise of one's peers and the collective judgment of humankind.
Physics
Main article: Stoic physics
See also: De Mundo

According to the Stoics, the Universe is a material reasoning substance (logos),[24] known as God or Nature, which was divided into two classes: the active and the passive. The passive substance is matter, which "lies sluggish, a substance ready for any use, but sure to remain unemployed if no one sets it in motion".[25] The active substance, which can be called Fate or Universal Reason (logos),[24] is an intelligent aether or primordial fire, which acts on the passive matter:

    The universe itself is God and the universal outpouring of its soul; it is this same world's guiding principle, operating in mind and reason, together with the common nature of things and the totality that embraces all existence; then the foreordained might and necessity of the future; then fire and the principle of aether; then those elements whose natural state is one of flux and transition, such as water, earth, and air; then the sun, the moon, the stars; and the universal existence in which all things are contained.
    — Chrysippus, in Cicero, De Natura Deorum, i. 39

Everything is subject to the laws of Fate, for the Universe acts according to its own nature, and the nature of the passive matter it governs. The souls of humans and animals are emanations from this primordial Fire, and are, likewise, subject to Fate:

    Constantly regard the universe as one living being, having one substance and one soul; and observe how all things have reference to one perception, the perception of this one living being; and how all things act with one movement; and how all things are the cooperating causes of all things that exist; observe too the continuous spinning of the thread and the structure of the web.
    — Marcus Aurelius, Meditations, iv. 40

Individual souls are perishable by nature, and can be "transmuted and diffused, assuming a fiery nature by being received into the seminal reason ("logos spermatikos") of the Universe".[26] Since right Reason is the foundation of both humanity and the universe, it follows that the goal of life is to live according to Reason, that is, to live a life according to Nature.

Stoic theology is a fatalistic and naturalistic pantheism: God is never fully transcendent but always immanent, and identified with Nature. Abrahamic religions personalize God as a world-creating entity, but Stoicism equates God with the totality of the universe; according to Stoic cosmology, which is very similar to the Hindu conception of existence, there is no absolute start to time, as it is considered infinite and cyclic. Similarly, the space and Universe have neither start nor end, rather they are cyclical. The current Universe is a phase in the present cycle, preceded by an infinite number of Universes, doomed to be destroyed ("ekpyrōsis", conflagration) and re-created again,[27] and to be followed by another infinite number of Universes. Stoicism considers all existence as cyclical, the cosmos as eternally self-creating and self-destroying (see also Eternal return).

Stoicism, just like Indian religions such as Hinduism, Buddhism, and Jainism, does not posit a beginning or end to the Universe.[28] According to the Stoics, the logos was the active reason[24] or anima mundi pervading and animating the entire Universe. It was conceived as material and is usually identified with God or Nature. The Stoics also referred to the seminal reason ("logos spermatikos"), or the law of generation in the Universe, which was the principle of the active reason working in inanimate matter. Humans, too, each possess a portion of the divine logos, which is the primordial Fire and reason that controls and sustains the Universe.[29]

The first philosophers to explicitly describe nominalist arguments were the Stoics, especially Chrysippus.[30][31]
Ethics

Ancient stoics are often misunderstood because the terms they used pertained to different concepts than today. The word "stoic" has since come to mean "unemotional" or indifferent to pain because Stoic ethics taught freedom from "passion" by following "reason". The Stoics did not seek to extinguish emotions; rather, they sought to transform them by a resolute "askēsis", that enables a person to develop clear judgment and inner calm.[32] Logic, reflection, and focus were the methods of such self-discipline, temperance is split into self-control, discipline, and modesty.

Borrowing from the Cynics, the foundation of Stoic ethics is that good lies in the state of the soul itself; in wisdom and self-control. Stoic ethics stressed the rule: "Follow where reason leads".[citation needed] One must therefore strive to be free of the passions, bearing in mind that the ancient meaning of pathos (plural pathe) translated here as passion was "anguish" or "suffering",[33] that is, "passively" reacting to external events, which is somewhat different from the modern use of the word. Terms used in Stocism related to pathos include propathos or instinctive reaction (e.g., turning pale and trembling when confronted by physical danger) and eupathos, which is the mark of the Stoic sage (sophos). The eupatheia are feelings that result from the correct judgment in the same way that passions result from incorrect judgment. The idea was to be free of suffering through apatheia (Greek: ἀπάθεια; literally, "without passion") or peace of mind,[34] where peace of mind was understood in the ancient sense—being objective or having "clear judgment" and the maintenance of equanimity in the face of life's highs and lows.

For the Stoics, reason meant using logic and understanding the processes of nature—the logos or universal reason, inherent in all things. According to reason and virtue, living according to reason and virtue is to live in harmony with the divine order of the universe, in recognition of the common reason and essential value of all people.

The four cardinal virtues (aretai) of Stoic philosophy is a classification derived from the teachings of Plato (Republic IV. 426–435):

    Wisdom (Greek: φρόνησις "phronesis" or σοφία "sophia", Latin: prudentia or sapientia)
    Courage (Greek: ανδρεία "andreia", Latin: fortitudo)
    Justice (Greek: δικαιοσύνη "dikaiosyne", Latin: iustitia)
    Temperance (Greek: σωφροσύνη "sophrosyne", Latin: temperantia)

Following Socrates, the Stoics held that unhappiness and evil are the results of human ignorance of the reason in nature. If someone is unkind, it is because they are unaware of their own universal reason, which leads to the conclusion of unkindness. The solution to evil and unhappiness then is the practice of Stoic philosophy: to examine one's own judgments and behavior and determine where they diverge from the universal reason of nature.

The Stoics accepted that suicide was permissible for the wise person in circumstances that might prevent them from living a virtuous life.[35] Plutarch held that accepting life under tyranny would have compromised Cato's self-consistency (constantia) as a Stoic and impaired his freedom to make the honorable moral choices.[36] Suicide could be justified if one fell victim to severe pain or disease,[35] but otherwise suicide would usually be seen as a rejection of one's social duty.[37]
The doctrine of "things indifferent"
Main article: Adiaphora
See also: Eudaimonia

In philosophical terms, things that are indifferent are outside the application of moral law—that is without tendency to either promote or obstruct moral ends. Actions neither required nor forbidden by the moral law, or that do not affect morality, are called morally indifferent. The doctrine of things indifferent (ἀδιάφορα, adiaphora) arose in the Stoic school as a corollary of its diametric opposition of virtue and vice (καθήκοντα kathekonta, "convenient actions", or actions in accordance with nature; and ἁμαρτήματα hamartemata, mistakes). As a result of this dichotomy, a large class of objects were left unassigned and thus regarded as indifferent.

Eventually three sub-classes of "things indifferent" developed: things to prefer because they assist life according to nature; things to avoid because they hinder it; and things indifferent in the narrower sense. The principle of adiaphora was also common to the Cynics. Philipp Melanchthon revived the doctrine of things indifferent during the Renaissance.
Spiritual exercise
Marcus Aurelius, the Stoic Roman emperor

Philosophy for a Stoic is not just a set of beliefs or ethical claims; it is a way of life involving constant practice and training (or "askēsis"). Stoic philosophical and spiritual practices included logic, Socratic dialogue and self-dialogue, contemplation of death, mortality salience, training attention to remain in the present moment (similar to mindfulness and some forms of Buddhist meditation), and daily reflection on everyday problems and possible solutions e.g. with journaling. Philosophy for a Stoic is an active process of constant practice and self-reminder.

In his Meditations, Marcus Aurelius defines several such practices. For example, in Book II.I:

    Say to yourself in the early morning: I shall meet today ungrateful, violent, treacherous, envious, uncharitable men. All of the ignorance of real good and ill ... I can neither be harmed by any of them, for no man will involve me in wrong, nor can I be angry with my kinsman or hate him; for we have come into the world to work together ...

Prior to Aurelius, Epictetus in his Discourses, distinguished between three types of act: judgment, desire, and inclination.[38] According to French philosopher Pierre Hadot, Epictetus identifies these three acts with logic, physics and ethics respectively.[39] Hadot writes that in the Meditations, "Each maxim develops either one of these very characteristic topoi [i.e., acts], or two of them or three of them."[40]

Seamus Mac Suibhne has described the practices of spiritual exercises as influencing those of reflective practice.[41] Many parallels between Stoic spiritual exercises and modern cognitive behavioral therapy have been identified.[42]

Stoics were also known for consolatory orations, which were part of the consolatio literary tradition. Three such consolations by Seneca have survived.

Stoics commonly employ ‘The View from Above’, reflecting on society and otherness in guided visualization, aiming to gain a "bigger picture", to see ourselves in context relevant to others, to see others in the context of the world, to see ourselves in the context of the world to help determine our role and the importance of happenings.

Marcus Aurelius, Meditations, in Book 7.48 it is stated;

    A fine reflection from Plato. One who would converse about human beings should look on all things earthly as though from some point far above, upon herds, armies, and agriculture, marriages and divorces, births and deaths, the clamour of law courts, deserted wastes, alien peoples of every kind, festivals, lamentations, and markets, this intermixture of everything and ordered combination of opposites.

Social philosophy

A distinctive feature of Stoicism is its cosmopolitanism; according to the Stoics, all people are manifestations of the one universal spirit and should live in brotherly love and readily help one another. In the Discourses, Epictetus comments on man's relationship with the world: "Each human being is primarily a citizen of his own commonwealth; but he is also a member of the great city of gods and men, whereof the city political is only a copy."[43] This sentiment echoes that of Diogenes of Sinope, who said, "I am not an Athenian or a Corinthian, but a citizen of the world."[44]

They held that external differences, such as rank and wealth, are of no importance in social relationships. Instead, they advocated the brotherhood of humanity and the natural equality of all human beings. Stoicism became the most influential school of the Greco-Roman world, and produced a number of remarkable writers and personalities, such as Cato the Younger and Epictetus.

In particular, they were noted for their urging of clemency toward slaves. Seneca exhorted, "Kindly remember that he whom you call your slave sprang from the same stock, is smiled upon by the same skies, and on equal terms with yourself breathes, lives, and dies."[45]
Influence on Christianity
See also: Neostoicism
Justus Lipsius, founder of Neostoicism

In St. Ambrose of Milan's Duties, "The voice is the voice of a Christian bishop, but the precepts are those of Zeno."[46][47] Regarding what he called "the Divine Spirit", Maxwell Staniforth wrote:

    Cleanthes, wishing to give more explicit meaning to Zeno's 'creative fire', had been the first to hit upon the term pneuma, or 'spirit', to describe it. Like fire, this intelligent 'spirit' was imagined as a tenuous substance akin to a current of air or breath, but essentially possessing the quality of warmth; it was immanent in the universe as God, and in man as the soul and life-giving principle. Clearly, it is not a long step from this to the 'Holy Spirit' of Christian theology, the 'Lord and Giver of life', visibly manifested as tongues of fire at Pentecost and ever since associated—in the Christian as in the Stoic mind—with the ideas of vital fire and beneficient warmth.[48]

Regarding the Trinity, Staniforth wrote:

    Again in the doctrine of the Trinity, the ecclesiastical conception of Father, Word, and Spirit finds its germ in the different Stoic names of the Divine Unity. Thus Seneca, writing of the supreme Power which shapes the universe, states, 'This Power we sometimes call the All-ruling God, sometimes the incorporeal Wisdom, sometimes the Holy Spirit, sometimes Destiny.' The Church had only to reject the last of these terms to arrive at its own acceptable definition of the Divine Nature; while the further assertion 'these three are One', which the modern mind finds paradoxical, was no more than commonplace to those familiar with Stoic notions.[48]

The apostle Paul met with Stoics during his stay in Athens, reported in Acts 17:16–18. In his letters, Paul reflected heavily from his knowledge of Stoic philosophy, using Stoic terms and metaphors to assist his new Gentile converts in their understanding of Christianity.[49] Stoic influence can also be seen in the works of St. Ambrose, Marcus Minucius Felix, and Tertullian.[50]

The Fathers of the Church regarded Stoicism as a "pagan philosophy";[51][52] nonetheless, early Christian writers employed some of the central philosophical concepts of Stoicism. Examples include the terms "logos", "virtue", "Spirit", and "conscience".[28] But the parallels go well beyond the sharing and borrowing of terminology. Both Stoicism and Christianity assert an inner freedom in the face of the external world, a belief in human kinship with Nature or God, a sense of the innate depravity—or "persistent evil"—of humankind,[28] and the futility and temporary nature of worldly possessions and attachments. Both encourage Ascesis with respect to the passions and inferior emotions, such as lust, and envy, so that the higher possibilities of one's humanity can be awakened and developed.

Stoic writings such as Meditations by Marcus Aurelius have been highly regarded by many Christians throughout the centuries. The Eastern Orthodox Church and Oriental Orthodox Church accept the Stoic ideal of dispassion to this day.

Middle and Roman Stoics taught that sex is just within marriage, for unitive and procreative purposes only.[53][54] This teaching is accepted by the Catholic Church to this day.[55]

Saint Ambrose of Milan was known for applying Stoic philosophy to his theology.
Stoic philosophers
Main article: List of Stoic philosophers

    Zeno of Citium (332–262 BC), founder of Stoicism and the Stoic Academy (Stoa) in Athens
    Aristo of Chios (fl. 260 BC), pupil of Zeno;
    Herillus of Carthage (fl. 3rd century BC)
    Cleanthes (of Assos) (330–232 BC), second head of Stoic Academy
    Chrysippus (280–204 BC), third head of the academy
    Diogenes of Babylon (230–150 BC)
    Antipater of Tarsus (210–129 BC)
    Panaetius of Rhodes (185–109 BC)
    Posidonius of Apameia (c. 135–51 BC)
    Diodotus (c. 120–59 BC), teacher of Cicero
    Cato the Younger (94–46 BC)
    Seneca (4 BC – 65 AD)
    Gaius Musonius Rufus (1st century AD)
    Rubellius Plautus (33–62 AD)
    Publius Clodius Thrasea Paetus (1st century AD)
    Lucius Annaeus Cornutus (1st century AD)
    Epictetus (55–135 AD)
    Hierocles (2nd century AD)
    Marcus Aurelius (121–180 AD)

See also

    4 Maccabees
    Ecclesiastes
    Dehellenization
    Deixis
    Glossary of Stoic terms
    Ekpyrosis, palingenesis, apocatastasis
    Ekpyrotic universe (cosmological theory)
    List of Stoic philosophers
    Megarian school
    Oikeiôsis
    Stoic passions
    Paradoxa Stoicorum
    Plank of Carneades
    Sage (philosophy)
    Stoicorum Veterum Fragmenta
    "Stoic Opposition"
    Tirukkural

References

Sharpe, Matthew. "Stoic Virtue Ethics." Handbook of Virtue Ethics, 2013, 28–41.
John Sellars. Stoicism, 2006, p. 32.
Stoicism, Stanford Encyclopedia of Philosophy.
Becker, Lawrence C. (2001). A New Stoicism. Princeton: Princeton University Press. ISBN 9781400822447.
Robertson, Donald (2018). Stoicism and the Art of Happiness. Great Britain: John Murray.
"Definition of STOIC".
Williamson, D. (1 April 2015). Kant's Theory of Emotion: Emotional Universalism. Palgrave Macmillan US. p. 17. ISBN 978-1-137-49810-6.
"Modern Stoicism | Build The Fire". Build The Fire. 9 February 2016. Retrieved 22 June 2016.
Harper, Douglas (November 2001). "Online Etymology Dictionary – Stoic". Retrieved 2 September 2006.
Baltzly, Dirk (13 December 2004). "Stanford Encyclopedia of Philosophy – Stoicism". Retrieved 2 September 2006.
Russell, Bertrand. A History of Western Philosophy, p. 254
Russell, Bertrand. A History of Western Philosophy, p. 264
Russell, Bertrand. A History of Western Philosophy, p. 253.
Charles Hartshorne and William Reese, "Philosophers Speak of God," Humanity Books, 1953 ch 4
Becker, Lawrence (2003). A History of Western Ethics. New York: Routledge. p. 27. ISBN 978-0-415-96825-6.
A.A.Long, Hellenistic Philosophy, p. 115.
Amos, H. (1982). These Were the Greeks. Chester Springs: Dufour Editions. ISBN 978-0-8023-1275-4. OCLC 9048254.
Gilbert Murray, The Stoic Philosophy (1915), p. 25. In Bertrand Russell, A History of Western Philosophy (1946).
Ancient Logic by Susanne Bobzien. Stanford Encyclopedia of Philosophy.
Jacques Brunschwig, Stoic Metaphysics in The Cambridge Companion to Stoics, ed. B. Inwood, Cambridge, 2006, p.206-32
Sextus Empiricus, Adversus Mathematicos 10.218. (chronos, topos, kenon, lekton)
Marcelo D. Boeri, The Stoics on Bodies and Incorporeals, The Review of Metaphysics, Vol. 54, No. 4 (Jun., 2001), pp. 723-752
Diogenes Laërtius (2000). Lives of eminent philosophers. Cambridge, MA: Harvard University Press. VII.49
Brenk, Frederick (January 2016). "Pagan Monotheism and Pagan Cult". "Theism" and Related Categories in the Study of Ancient Religions. SCS/AIA Annual Meeting. 75.4. Philadelphia: Society for Classical Studies (University of Pennsylvania). Archived from the original on 6 May 2017. Retrieved 14 October 2020. "Historical authors generally refer to “the divine” (to theion) or “the supernatural” (to daimonion) rather than simply “God.” [...] The Stoics, believed in a God identifiable with the logos or hegemonikon (reason or leading principle) of the universe and downgraded the traditional gods, who even disappear during the conflagration (ekpyrosis). Yet, the Stoics apparently did not practice a cult to this God. Middle and Later Platonists, who spoke of a supreme God, in philosophical discourse, generally speak of this God, not the gods, as responsible for the creation and providence of the universe. They, too, however, do not seem to have directly practiced a religious cult to their God."
Seneca, Epistles, lxv. 2.
Marcus Aurelius, Meditations, iv. 21.
Michael Lapidge, Stoic Cosmology, in: John M. Rist, The Stoics, Cambridge University Press, 1978, pp. 182–183.
Ferguson, Everett. Backgrounds of Early Christianity. 2003, p. 368.
Tripolitis, A., Religions of the Hellenistic-Roman Age, pp. 37–38. Wm. B. Eerdmans Publishing.
John Sellars, Stoicism, Routledge, 2014, pp. 84–85: "[Stoics] have often been presented as the first nominalists, rejecting the existence of universal concepts altogether. ... For Chrysippus there are no universal entities, whether they be conceived as substantial Platonic Forms or in some other manner.".
Chrysippus – Internet Encyclopedia of Philosophy
Graver, Margaret (2009). Stoicism and Emotion. Chicago: University of Chicago Press. ISBN 978-0-226-30558-5. OCLC 430497127.
"Passion". Merriam-Webster. Encyclopædia Britannica. Retrieved 29 January 2011.
Seddon, Keith (2005). Epictetus' Handbook and the Tablet of Cebes. New York: Routledge. p. 217. ISBN 978-0-415-32451-9. OCLC 469313282.
Don E. Marietta, (1998), Introduction to ancient philosophy, pp. 153–54. Sharpe
Zadorojnyi, Alexei V. (2007). "Cato's suicide in Plutarch AV Zadorojnyi". The Classical Quarterly. 57 (1): 216–230. doi:10.1017/S0009838807000195.
William Braxton Irvine, (2009), A guide to the good life: the ancient art of Stoic joy, p. 200. Oxford University Press
Davidson, A.I. (1995) Pierre Hadot and the Spiritual Phenomenon of Ancient Philosophy, in Philosophy as a Way of Life, Hadot, P. Oxford Blackwells, pp. 9–10
Hadot, P. (1992) La Citadelle intérieure. Introduction aux Pensées de Marc Aurèle. Paris, Fayard, pp. 106–15
Hadot, P. (1987) Exercices spirituels et philosophie antique. Paris, 2nd ed., p. 135.
Mac Suibhne, S. (2009). "'Wrestle to be the man philosophy wished to make you': Marcus Aurelius, reflective practitioner". Reflective Practice. 10 (4): 429–36. doi:10.1080/14623940903138266. S2CID 219711815.
Robertson, D (2010). The Philosophy of Cognitive-Behavioral Therapy: Stoicism as Rational and Cognitive Psychotherapy. London: Karnac. ISBN 978-1-85575-756-1.
Epictetus, Discourses, ii. 5. 26
Epictetus, Discourses, i. 9. 1
Seneca, Moral letters to Lucilius, Letter 47: On master and slave, 10, circa AD 65.
"On the Duties of the Clergy". www.newadvent.org. Retrieved 1 March 2017.
Aurelius, Marcus (1964). Meditations. London: Penguin Books. p. 26. ISBN 978-0-140-44140-6.
Marcus Aurelius (1964). Meditations. London: Penguin Books. p. 25. ISBN 978-0-140-44140-6.
Kee, Howard and Franklin W. Young, Understanding The New Testament, Englewood Cliffs, New Jersey, Prentice Hall, Inc. 1958, p. 208. ISBN 978-0139365911
Encyclopædia Britannica. Stoicism. §Stoic elements in Pauline and patristic thought
Agathias. Histories, 2.31.
David, Sedley. "Ancient philosophy". In E. Craig (ed.). Routledge Encyclopedia of Philosophy. Retrieved 18 October 2008.
Musonius Rufus. "Lecture XII "On Sexual Indulgence"." Musonius Rufus: The Roman Socrates (Lectures and Fragments), Introduction and Translation by Cora E. Lutz, From Volume X of the Yale Classical Studies, Yale University Press, 1947
The Making of Fornication: Eros, Ethics, and Political Reform in Greek Philosophy and Early Christianity. From University of California Press, 2003

    "CCC, 2366". Vatican.va.

Further reading
Primary sources

    A. A. Long and D. N. Sedley, The Hellenistic Philosophers Cambridge: Cambridge University Press, 1987.
    Inwood, Brad & Gerson Lloyd P. (eds.) The Stoics Reader: Selected Writings and Testimonia Indianapolis: Hackett 2008.
    Long, George Enchiridion by Epictetus, Prometheus Books, Reprint Edition, January 1955.
    Gill C. Epictetus, The Discourses, Everyman 1995.
    Irvine, William, A Guide to the Good Life: The Ancient Art of Stoic Joy (Oxford: Oxford University Press, 2008) ISBN 978-0-19-537461-2
    Hadas, Moses (ed.), Essential Works of Stoicism, Bantam Books 1961.
    Harvard University Press Epictetus Discourses Books 1 and 2, Loeb Classical Library Nr. 131, June 1925.
    Harvard University Press Epictetus Discourses Books 3 and 4, Loeb Classical Library Nr. 218, June 1928.
    Long, George, Discourses of Epictetus, Kessinger Publishing, January 2004.
    Lucius Annaeus Seneca the Younger (transl. Robin Campbell), Letters from a Stoic: Epistulae Morales Ad Lucilium (1969, reprint 2004) ISBN 0-14-044210-3
    Marcus Aurelius, Meditations, translated by Maxwell Staniforth; ISBN 0-14-044140-9, or translated by Gregory Hays; ISBN 0-679-64260-9. Also Available on wikisource translated by various translators
    Oates, Whitney Jennings, The Stoic and Epicurean Philosophers, The Complete Extant Writings of Epicurus, Epictetus, Lucretius and Marcus Aurelius, Random House, 9th printing 1940.

Studies

    Bakalis, Nikolaos, Handbook of Greek Philosophy: From Thales to the Stoics. Analysis and Fragments, Trafford Publishing, May 2005, ISBN 1-4120-4843-5
    Becker, Lawrence C., A New Stoicism (Princeton: Princeton Univ. Press, 1998) ISBN 0-691-01660-7
    Brennan, Tad, The Stoic Life (Oxford: Oxford University Press, 2005; paperback 2006)
    Brooke, Christopher. Philosophic Pride: Stoicism and Political Thought from Lipsius to Rousseau (Princeton UP, 2012) excerpts
    Hall, Ron, Secundum Naturam (According to Nature). Stoic Therapy, LLC, 2021.
    Inwood, Brad (ed.), The Cambridge Companion to The Stoics (Cambridge: Cambridge University Press, 2003)
    Lachs, John, Stoic Pragmatism (Indiana University Press, 2012) ISBN 0-253-22376-8
    Long, A. A., Stoic Studies (Cambridge University Press, 1996; repr. University of California Press, 2001) ISBN 0-520-22974-6
    Robertson, Donald, The Philosophy of Cognitive-Behavioral Therapy: Stoicism as Rational and Cognitive Psychotherapy (London: Karnac, 2010) ISBN 978-1-85575-756-1
    Robertson, Donald, How to Think Like a Roman Emperor: The Stoic Philosophy of Marcus Aurelius. 'New York: St. Martin's Press, 2019.
    Sellars, John, Stoicism (Berkeley: University of California Press, 2006) ISBN 1-84465-053-7
    Stephens, William O., Stoic Ethics: Epictetus and Happiness as Freedom (London: Continuum, 2007) ISBN 0-8264-9608-3
    Strange, Steven (ed.), Stoicism: Traditions and Transformations (Cambridge: Cambridge Univ. Press, 2004) ISBN 0-521-82709-4
    Zeller, Eduard; Reichel, Oswald J., The Stoics, Epicureans and Sceptics, Longmans, Green, and Co., 1892

External links
Library resources about
Stoicism

    Online books
    Resources in your library
    Resources in other libraries

	Wikiquote has quotations related to: Stoicism
Listen to this article (43 minutes)
Menu
0:00
Spoken Wikipedia icon
This audio file was created from a revision of this article dated 30 September 2019, and does not reflect subsequent edits.
(Audio help · More spoken articles)

    Baltzly, Dirk. "Stoicism". In Zalta, Edward N. (ed.). Stanford Encyclopedia of Philosophy.
    "Stoicism". Internet Encyclopedia of Philosophy.
    "Stoic Ethics". Internet Encyclopedia of Philosophy.
    "Stoic Philosophy of Mind". Internet Encyclopedia of Philosophy.
    Hicks, Robert Drew (1911). "Stoics" . Encyclopædia Britannica (11th ed.).
    The Stoic Therapy eLibrary
    The Stoic Library
    Stoic Logic: The Dialectic from Zeno to Chrysippus
    Annotated Bibliography on Ancient Stoic Dialectic
    "A bibliography on Stoicism by the Stoic Foundation". Archived from the original on 23 September 2012. Retrieved 14 September 2012.
    BBC Radio 4's In Our Time programme on Stoicism (requires Flash)
    An introduction to Stoic Philosophy
    The Stoic Registry (formerly New Stoa) :Online Stoic Community
    Stoicism Today Project
    The Four Stoic Virtues

    vte

Stoicism

    vte

Ancient Greek schools of philosophy

    vte

Philosophy

    vte

Philosophy of language

    vte

Philosophy of science
Authority control Edit this at Wikidata	

    BNE: XX527322 LCCN: sh85128242 MA: 2778672885 NDL: 00571775

Categories:

    StoicismAncient GreeceAncient RomeHistory of philosophyPhilosophy of lifeVirtueVirtue ethics

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons
    Wikiquote

Languages

    Alemannisch
    Deutsch
    Français
    हिन्दी
    Italiano
    Lumbaart
    Português
    Татарча/tatarça
    中文

Edit links

    This page was last edited on 15 May 2021, at 07:44 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


''Tiddler toolbar in view mode''

[img width="50%" [https://giffmex.org/stroll/strolltiddlertoolbar.png]]

|{{$:/_sq/Stories/icons/divert-right.svg}}<br>{{$:/_sq/Stories/icons/divert-left.svg}}|Divert tiddler to the opposite column|
|{{$:/core/images/fold-button}}<br>{{$:/core/images/unfold-button}}|Fold / unfold tiddler to hide all but the title and toolbar|
|{{$:/core/images/new-button}}|Create a new tiddler with a backlink to the current tiddler|
|{{$:/core/images/new-journal-button}}|Create a new journal tiddler with a backlink to the current tiddler|
|{{$:/core/images/down-arrow}}|A hidden menu with more options|
|{{$:/core/images/edit-button}}|Edit the current tiddler|
|{{$:/core/images/close-button}}|Close the current tiddler|

''Tiddler toolbar in edit mode''

[img width="50%" [https://giffmex.org/stroll/strolledittoolbar.png]]

|{{$:/_sq/Stories/icons/divert-right.svg}}<br>{{$:/_sq/Stories/icons/divert-left.svg}}|Divert tiddler to the opposite column|
|{{$:/core/images/delete-button}}|Delete the current tiddler|
|{{$:/core/images/cancel-button}}|Discard changes made while editing, and return to view mode|
|{{$:/core/images/done-button}}|Save changes made while editing, and return to view mode|

''Page controls''

[img width="50%" [https://giffmex.org/stroll/strollpagecontrols.png]]

|{{$:/core/images/home-button}}|Home button. Takes you to 'Wecome to Stroll' in tutorial version. Takes you to your default tiddlers in empty version|
|{{$:/core/images/new-button}}|Create a new tiddler|
|{{$:/core/images/new-journal-button}}|Create a new tiddler tagged 'journal' and with a date-timestamp in the title.|
|{{$:/core/images/options-button}}|Open the Control panel to configure numerous aspects of your ~TiddlyWiki file|
|{{$:/core/images/save-button}}|Save changes (when in a local file) / Download this file (when in an online file)|

''References tab (pink eyeball in the sidebar)''

[img width="50%" [https://giffmex.org/stroll/strollrefstab.png]]

|Full text|Each reference shown with a link and with the full text field transcluded|
|Full text under sliders|Each reference shown with a link and with the full text field transcluded under a slider button, to view each indvidually|
|Hidden|Reference section hidden from all tiddlers|
|Highlights in context|Each reference shown as highlighted search results in context, so you don't have to read the entire tiddler to find the references|
|Simple links|References shown as simple links in all tiddlers|

''More tab''

[img height="50%" [https://giffmex.org/stroll/strollmoretab.png]]

|All|List of tiddlers in alphabetical order|
|Recent|List of tiddlers ordered by most recently edited|
|Tags|List ofyour tags|
|Missing|List of tiddlers with missing links. Irrelevant in Stroll, because Stroll creates tiddlers for every link|
|Drafts|Tiddlers you left in edit mode and didn't close|
|Orphans|List of tiddlers not linked to or tagged to from other tiddlers|
|Types|Tiddlers given a special type in the type field (see bottom of edit mode)|
|System|The background tiddlers and plugins that make Stroll so great|
|Shadow|The background tiddlers that make ~TiddlyWiki work|
|Explorer|A table of contents of the system and shadow tiddlers|
|Plugins|The plugins|

''Control panel''

[img width="80%" [https://giffmex.org/stroll/strollcontrolpanel.png]]

*The gear button in the sidebar page controls opens the Control panel tiddler
*Go to the Appearance tab > Two Story Layout tab to configure the two column features:
**The first two items are to adjust the width of the columns and sidebar. This is helpful if your screen width is different from the average laptop.
**The third item is to have tiddlers move to the top or bottom of the opposite column when using the divert button
**Dropzones are areas where you can drag a tiddler to move it to the opposite column.
**Adjust the story view for the columns:
***Classic is default: tiddlers appear in a vertical column.
***Zoomin: only the top tiddler of each column is visible. You will need to use the 'Open' tab in the sidebar to navigate to hidden tiddlers in each column.

Stroll and Roam (https://roamresearch.com/) are not competitors. I use both, and recommend Roam highly. 

Each app has its strengths and drawbacks. Here is a general comparison:

''Advantages of Roam''

*Block level transclusion
*Outliner features (zoom in and out, expand and collapse points, etc)
*Graph overview
*Fast code blocks like /time, /date picker, etc
*Numerous hotkeys

''Advantages of Stroll''

*Free
*Local file, your data is yours, no privacy concerns or fear of losing your data if Roam gets hacked or closes its doors
*Text formatting, CSS options for tables, etc are superior
*Infinitely customizable UI
*Widgets, macros and other goodies built in
*An extensive list of plugins (see the [[TiddlyWiki toolmap|https://dynalist.io/d/zUP-nIWu2FFoXH-oM7L7d9DM]])
*Multiple options for viewing references


[[westernbrainline.gif]]



<<tabs "[tag[Table of Contents]]">> "Glossary of Terms" "$:/state/tab1" "tc=vertical">>
[img[PDOlogo.png]]


! Technology readiness level

!! https://en.wikipedia.org/wiki/Technology_readiness_level

From Wikipedia, the free encyclopedia

NASA technology readiness levels

Technology readiness levels (TRLs) are a method for estimating the maturity of technologies during the acquisition phase of a program, developed at NASA during the 1970s. The use of TRLs enables consistent, uniform discussions of technical maturity across different types of technology.[1] A technology's TRL is determined during a Technology Readiness Assessment (TRA) that examines program concepts, technology requirements, and demonstrated technology capabilities. TRLs are based on a scale from 1 to 9 with 9 being the most mature technology.[1] The US Department of Defense has used the scale for procurement since the early 2000s. By 2008 the scale was also in use at the European Space Agency (ESA).[2]

The European Commission advised EU-funded research and innovation projects to adopt the scale in 2010.[1] TRLs were consequently used in 2014 in the EU Horizon 2020 program. In 2013, the TRL scale was further canonized by the ISO 16290:2013 standard.[1] A comprehensive approach and discussion of TRLs has been published by the European Association of Research and Technology Organisations (EARTO).[3] Extensive criticism of the adoption of TRL scale by the European Union was published in The Innovation Journal, stating that the "concreteness and sophistication of the TRL scale gradually diminished as its usage spread outside its original context (space programs)".[1]
Contents

    1 History
        1.1 In the European Union
    2 Current TRL definitions
        2.1 Current NASA usage
        2.2 European Union
    3 Assessment tools
    4 Uses
    5 See also
    6 References
        6.1 Online
    7 External links

History

Technology readiness levels were originally conceived at NASA in 1974 and formally defined in 1989. The original definition included seven levels, but in the 1990s NASA adopted the current nine-level scale that subsequently gained widespread acceptance.[4]

Original NASA TRL Definitions (1989)[5]

    Level 1 – Basic Principles Observed and Reported
    Level 2 – Potential Application Validated
    Level 3 – Proof-of-Concept Demonstrated, Analytically and/or Experimentally
    Level 4 – Component and/or Breadboard Laboratory Validated
    Level 5 – Component and/or Breadboard Validated in Simulated or Realspace Environment
    Level 6 – System Adequacy Validated in Simulated Environment
    Level 7 – System Adequacy Validated in Space

The TRL methodology was originated by Stan Sadin at NASA Headquarters in 1974.[4] At that time, Ray Chase was the JPL Propulsion Division representative on the Jupiter Orbiter design team. At the suggestion of Stan Sadin, Mr Chase used this methodology to assess the technology readiness of the proposed JPL Jupiter Orbiter spacecraft design.[citation needed] Later Mr Chase spent a year at NASA Headquarters helping Mr Sadin institutionalize the TRL methodology. Mr Chase joined ANSER in 1978, where he used the TRL methodology to evaluate the technology readiness of proposed Air Force development programs. He published several articles during the 1980s and 90s on reusable launch vehicles utilizing the TRL methodology.[6] These documented an expanded version of the methodology that included design tools, test facilities, and manufacturing readiness on the Air Force Have Not program.[citation needed] The Have Not program manager, Greg Jenkins, and Ray Chase published the expanded version of the TRL methodology, which included design and manufacturing.[citation needed] Leon McKinney and Mr Chase used the expanded version to assess the technology readiness of the ANSER team's Highly Reusable Space Transportation ("HRST") concept.[7] ANSER also created an adapted version of the TRL methodology for proposed Homeland Security Agency programs.[8]

The United States Air Force adopted the use of technology readiness levels in the 1990s.[citation needed]

In 1995, John C. Mankins, NASA, wrote a paper that discussed NASA's use of TRL, extended the scale, and proposed expanded descriptions for each TRL.[1] In 1999, the United States General Accounting Office produced an influential report[9] that examined the differences in technology transition between the DOD and private industry. It concluded that the DOD takes greater risks and attempts to transition emerging technologies at lesser degrees of maturity than does private industry. The GAO concluded that use of immature technology increased overall program risk. The GAO recommended that the DOD make wider use of technology readiness levels as a means of assessing technology maturity prior to transition. In 2001, the Deputy Under Secretary of Defense for Science and Technology issued a memorandum that endorsed use of TRLs in new major programs. Guidance for assessing technology maturity was incorporated into the Defense Acquisition Guidebook.[10] Subsequently, the DOD developed detailed guidance for using TRLs in the 2003 DOD Technology Readiness Assessment Deskbook.

Because of their relevance to Habitation, 'Habitation Readiness Levels (HRL)' were formed by a group of NASA engineers (Jan Connolly, Kathy Daues, Robert Howard, and Larry Toups). They have been created to address habitability requirements and design aspects in correlation with already established and widely used standards by different agencies, including NASA TRLs.[11][12]
In the European Union

The European Space Agency[1] adopted the TRL scale in the mid-2000s. Its handbook[2] closely follows the NASA definition of TRLs. The universal usage of TRL in EU policy was proposed in the final report of the first High Level Expert Group on Key Enabling Technologies,[13] and it was indeed implemented in the subsequent EU framework program, called H2020, running from 2013 to 2020.[1] This means not only space and weapons programs, but everything from nanotechnology to informatics and communication technology.
Current TRL definitions
Current NASA usage

The current nine-point NASA scale is:[14]

    TRL 1 – Basic principles observed and reported
    TRL 2 – Technology concept and/or application formulated
    TRL 3 – Analytical and experimental critical function and/or characteristic proof-of concept
    TRL 4 – Component and/or breadboard validation in laboratory environment
    TRL 5 – Component and/or breadboard validation in relevant environment
    TRL 6 – System/subsystem model or prototype demonstration in a relevant environment (ground or space)
    TRL 7 – System prototype demonstration in a space environment
    TRL 8 – Actual system completed and "flight qualified" through test and demonstration (ground or space)
    TRL 9 – Actual system "flight proven" through successful mission operations

European Union

The TRLs in Europe are as follows:[15]

    TRL 1 – Basic principles observed
    TRL 2 – Technology concept formulated
    TRL 3 – Experimental proof of concept
    TRL 4 – Technology validated in lab
    TRL 5 – Technology validated in relevant environment (industrially relevant environment in the case of key enabling technologies)
    TRL 6 – Technology demonstrated in relevant environment (industrially relevant environment in the case of key enabling technologies)
    TRL 7 – System prototype demonstration in operational environment
    TRL 8 – System complete and qualified
    TRL 9 – Actual system proven in operational environment (competitive manufacturing in the case of key enabling technologies; or in space)


Assessment tools
DAU Decision Point / TPMM Transition Mechanisms

A Technology Readiness Level Calculator was developed by the United States Air Force.[16] This tool is a standard set of questions implemented in Microsoft Excel that produces a graphical display of the TRLs achieved. This tool is intended to provide a snapshot of technology maturity at a given point in time.[17]

The DAU Decision Point (DP) Tool originally named the Technology Program Management Model was developed by the United States Army.[18] and later adopted by the Defense Acquisition University (DAU) . The DP/TPMM is a TRL-gated high-fidelity activity model that provides a flexible management tool to assist Technology Managers in planning, managing, and assessing their technologies for successful technology transition. The model provides a core set of activities including systems engineering and program management tasks that are tailored to the technology development and management goals. This approach is comprehensive, yet it consolidates the complex activities that are relevant to the development and transition of a specific technology program into one integrated model.[19]
Uses

The primary purpose of using technology readiness levels is to help management in making decisions concerning the development and transitioning of technology. It should be viewed as one of several tools that are needed to manage the progress of research and development activity within an organization.[20]

Among the advantages of TRLs:[21]

    Provides a common understanding of technology status
    Risk management
    Used to make decisions concerning technology funding
    Used to make decisions concerning transition of technology

Some of the characteristics of TRLs that limit their utility:[21]

    Readiness does not necessarily fit with appropriateness or technology maturity
    A mature product may possess a greater or lesser degree of readiness for use in a particular system context than one of lower maturity
    Numerous factors must be considered, including the relevance of the products' operational environment to the system at hand, as well as the product-system architectural mismatch

Current TRL models tend to disregard negative and obsolescence factors. There have been suggestions made for incorporating such factors into assessments.[22]

For complex technologies that incorporate various development stages, a more detailed scheme called the Technology Readiness Pathway Matrix has been developed going from basic units to applications in society. This tool aims to show that a readiness level of a technology is based on a less linear process but on a more complex pathway through its application in society.[23]
See also

    List of emerging technologies
    Technology transfer
    Technology assessment
    Technology life cycle
    Manufacturing Readiness Level
    Capability Maturity Model Integration
    Open Innovation

References

Mihaly, Heder (September 2017). "From NASA to EU: the evolution of the TRL scale in Public Sector Innovation" (PDF). The Innovation Journal. 22: 1–23. Archived from the original (PDF) on October 11, 2017.
"Technology Readiness Levels Handbook for Space Applications" (PDF) (1 revision 6 ed.). ESA. September 2008. TEC-SHS/5551/MG/ap.
"The TRL Scale as a Research & Innovation Policy Tool, EARTO Recommendations" (PDF). European Association of Research & Technology Organisations. 30 April 2014.
Banke, Jim (20 August 2010). "Technology Readiness Levels Demystified". NASA.
Sadin, Stanley R.; Povinelli, Frederick P.; Rosen, Robert (October 1, 1988). The NASA technology push towards future space mission systems. International Astronautical Congress, 39th, Bangalore, India, Oct. 8-15, 1988.
Chase, R.L. (26 June 1991). Methodology for Assessing Technological and Manufacturing Readiness of NASP-Technology Enabled Vehicles. 27th Joint Propulsion Conference, June 24-26, 1991, Sacramento CA. doi:10.2514/6.1991-2389. AIAA 91-2389.
R. L. Chase; L. E. McKinney; H. D. Froning, Jr.; P. Czysz; et al. (January 1999). "A comparison of selected air-breathing propulsion choices for an aerospace plane". AIP Conference Proceedings. 458. American Institute of Physics. pp. 1133–8. doi:10.1063/1.57719.
"Department of Homeland Security Science and Technology Readiness Level Calculator (Ver. 1.1) - Final Report and User"s Manual" (PDF). Homeland Security Institute. September 30, 2009. Archived from the original (PDF) on August 26, 2010.
"Best Practices: Better Management of Technology Can Improve Weapon System Outcomes" (PDF). General Accounting Office. July 1999. GAO/NSIAD-99-162.
Defense Acquisition Guidebook Archived 2012-04-25 at the Wayback Machine
Häuplik-Meusburger and Bannova (2016). Space Architecture Education for Engineers and Architects. Springer. ISBN 978-3-319-19278-9.
Cohen, Marc (2012). Mockups 101: Code and Standard Research for Space Habitat Analogues. AIAA Space 2012 Conference Pasadena, California.
"High-Level Expert Group on Key Enabling Technologies – Final Report". June 2011. p. 31. Retrieved March 16, 2020.
"Technology Readiness Level Definitions" (PDF). nasa.gov. Retrieved 6 September 2019. This article incorporates text from this source, which is in the public domain.
"Technology readiness levels (TRL); Extract from Part 19 - Commission Decision C(2014)4995" (PDF). ec.europa.eu. 2014. Retrieved 11 November 2019. CC-BY icon.svg Material was copied from this source, which is available under a Creative Commons Attribution 4.0 International License.
Nolte, William L.; et al. (20 October 2003). "Technology Readiness Level Calculator, Air Force Research Laboratory, presented at the NDIA Systems Engineering Conference". Archived from the original on 13 May 2015.
"Technology Assessment Calculator".
Craver, Jeffrey T. (28 Dec 2020). "Decision Point / Technology Program Management Model, Defense Acquisition University (DAU)". Defense Acquisition University.
Jeff, Craver. "Decision Point / TPMM - Technology Program Management Model (only available to DOD components)".
Christophe Deutsch; Chiara Meneghini; Ozzy Mermut; Martin Lefort. "Measuring Technology Readiness to improve Innovation Management" (PDF). INO. Archived from the original (PDF) on 2012-06-02. Retrieved 2011-11-27.
Ben Dawson (31 October 2007). "The Impact of Technology Insertion on Organisations" (PDF). Human Factors Integration Design Technology Centre. Archived from the original (PDF) on 26 April 2012.
Ricardo Valerdi; Ron J. Kohl (March 2004). An Approach to Technology Risk Management (PDF). Engineering Systems Division Symposium MIT, Cambridge, MA, March 29-31, 2004. CiteSeerX 10.1.1.402.359.

    Vincent Jamier; Christophe Aucher (April 2018). "Demystifying Technology Readiness Levels for Complex Technologies". Leitat Projects Blog.

Online

    "Best Practices: Better Management of Technology Development Can Improve Weapon System Outcomes". U.S. Government Accountability Office. July 1999. NSIAD-99-162.
    "Joint Strike Fighter Acquisition: Mature Critical Technologies Needed to Reduce Risks". U.S. Government Accountability Office. October 2001. GAO-02-39.

External links

    Technology Readiness Levels (TRL) NASA
    Technology Readiness Levels Introduction NASA archive via WayBackMachine
    DNV Recommended_Practices (Look for DNV-RP-A203)
    UK MoD Acquisition Operating Framework guide to TRL (requires registration)

    vte

Emerging technologies
Topics	

    Collingridge dilemma Differential technological development Disruptive innovation Ephemeralization Ethics
        Bioethics Cyberethics Neuroethics Robot ethics Exploratory engineering Fictional technology Proactionary principle Technological change
        Technological unemployment Technological convergence Technological evolution Technological paradigm Technology forecasting
        Accelerating change Horizon scanning Moore's law Technological singularity Technology scouting Technology readiness level Technology roadmap Transhumanism

    Category Category List-Class article List

Categories:

    TechnologyTechnology transfer

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Français
    हिन्दी
    Bahasa Indonesia
    Italiano
    日本語
    中文

Edit links

    This page was last edited on 11 May 2021, at 08:54 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki


! Terroir

!! https://en.wikipedia.org/wiki/Terroir


!! The concept of “terroir” 
!! https://www.origin-gi.com/your-gi-kit/key-concepts-of-gis.html
The notion of “terroir” is rich of meanings and has been evolving over time. In addition, having been conceptualized in a well defined socio-cultural context, translating the French word “terroir” in other languages is not an easy task.

In an effort to establish a meaningful definition for several socio-cultural contexts, the concept of “terroir” is referred to as “a defined geographical area in which a human community builds, along its history, a collective production knowledge based on a system of interactions between a physical and biological environment and a set of human factors. In light of the socio-technical factors at stake, a good produced in this area benefits from an originality, a specificity and a reputation [10].
The definition proposed by the working group INRA/INAO [11] is also interesting: A Terroir is “a delimited geographical area defined from a human community which builds along its history a set of distinctive features, knowledge, and practices based on a system of interactions between the natural environment and human factors. Those interactions result in original and specific products and services that can be easily recognised. Those factors affect as well the people leaving in that area. The terroirs are living and evolving places that cannot be associated exclusively to elements related to tradition”[12] .

Interactions between the physical and biological environment and human factors produce over time, in certain geographical areas, a specific traditional knowledge, which can confer specificity and reputation to goods produced locally.

From Wikipedia, the free encyclopedia

The steep slope, soil quality, and influence of the nearby Mosel river distinguish the terroir of this German wine region.

Terroir (/tɛˈrwɑːr/, French: [tɛʁwaʁ]; from terre, "land") is a French term used to describe the environmental factors that affect a crop's phenotype, including unique environment contexts, farming practices and a crop's specific growth habitat. Collectively, these contextual characteristics are said to have a character; terroir also refers to this character.[1]

Some artisanal crops for which terroir is studied include wine, cider, coffee, tobacco, chocolate, chili peppers, hops, agave (for making tequila and mezcal), tomatoes, heritage wheat, maple syrup, tea, and cannabis.

Terroir is the basis of the French wine appellation d'origine contrôlée (AOC) system, which is a model for wine appellation and regulation in France and around the world. The AOC system presumes that the land from which the grapes are grown imparts a unique quality that is specific to that growing site (the plants' habitat). The extent of terroir's significance is debated in the wine industry.[2]
Contents

    1 Origins
    2 Elements
        2.1 Human controlled elements
    3 Influences of viticulture and winemaking
    4 In other drinks
    5 In artisan cheese
    6 Appellation systems
        6.1 Commercial interests
    7 Outside Europe
    8 In popular culture
    9 See also
    10 References
    11 Further reading

Origins

Over the centuries, French winemakers developed the concept of terroir by observing the differences in wines from different regions, vineyards, or even different sections of the same vineyard. The French began[when?] to crystallize the concept of terroir as a way of describing the unique aspects of a place that influence and shape the wine made from it.[3] Long before the French, the wine-making regions of the ancient world had already developed a concept of different regions having the potential to produce very different and distinct wines, even from the same grapes. The Ancient Greeks would stamp amphorae with the seal of the region they came from, and soon[when?] different regions established reputations based on the quality of their wines. For centuries, literate and disciplined members of the Benedictine and Cistercian orders cultivated grapes in much of Burgundy. With vast landholdings, the monks could conduct large-scale observation of the influences that various parcels of land had on the wine it produced.[4] Some legends have the monks going as far as tasting the soil. Over time the monks compiled their observations and began to establish the boundaries of different terroirs - many of which still exist today as the Grand Cru vineyards of Burgundy.[5]
Elements
While the concept of terroir is not specific to Burgundy, the examples of Burgundy wine from places like the Chablis premier cru Fourchaume are terroir-driven.

While wine experts disagree about the exact definition, particular consideration is given to the natural elements that are beyond the control of humans. Mark A. Matthews, a professor of viticulture and plant physiology at University of California, Davis, has described the common conception of terroir as a myth. While Matthews agrees local characteristics can have an effect on plant growth and the wines made from particular grapes, he points out that the term is imprecisely defined, and puts forward that the concept of terroir is accepted primarily based on traditional belief, and is not backed by rigorous data or research.[6]

Components often described as aspects of terroir include:[2]

    Climate
    Soil type
    Geomorphology
    Other organisms growing in, on, and around the vine plots

The interaction of climate and terroir is generally broken down from the macroclimate of a larger area (For example, the Côte de Nuits region of Burgundy), down to the mesoclimate of a smaller subsection of that region (such as the village of Vosne-Romanée) and even to the individual microclimate of a particular vineyard or row of grapevines (like the Grand Cru vineyard of La Grande Rue). The element of soil relates both to the composition and the intrinsic nature of the vineyard soils, such as fertility, drainage and ability to retain heat.[7] Geomorphology refers to natural landscape features like mountains, valleys and bodies of water, which affect how the climate interacts with the region, and includes the elements of aspect and elevation of the vineyard location.[2] Other organisms growing in, on, and around the vine plots refers to the region specific fauna, flora, and microflora present in the vineyards. The microbial populations in vineyards have been described as being a quantifiable aspect of the overall terroir.[8][9]
Human controlled elements

The definition of terroir can be expanded to include elements that are controlled or influenced by humans. This can include the decision of which grape variety to plant, though whether or not that grape variety will produce quality wine is an innate element of terroir that may be beyond human influence. Some grape varieties thrive better in certain areas than in others. The winemaking decision of using wild or ambient yeast in fermentation instead of cultured or laboratory produced yeast can be a reflection of terroir. The use of oak is a controversial element since some will advocate that its use is beneficial in bringing out the natural terroir characteristics while others will argue that its use can mask the influences of the terroir.[2] Vineyard management (e.g. growing grapes organically or biodynamically over a more conventional method of farming) can also be seen as a human controlled aspect of terroir.[10]
Influences of viticulture and winemaking

Many decisions during the growing and winemaking process can either lessen or increase the expression of terroir in the wine. These include decisions about pruning, irrigation and selecting time of harvest. At the winery, the use of oak, cultured or ambient yeast, length of maceration and time in contact with lees, temperature during fermentation, and processes like micro-oxygenation, chaptalization, clarification with fining agents, and reverse osmosis all have the potential to either reduce or emphasize some aspect derived from the terroir. Winemakers can work between the extremes of producing wine that is terroir-driven and focused on purely expressing the unique aspects of a region's terroir, or winemaking that is done without any consideration given to terroir. Furthermore, aspects of terroir such as climate and soil type may be considered when deciding such things as which grape variety to plant if the goal is to make good wine rather than terroir-driven wine.[2]

The importance of these influences depends on the culture of a particular wine region. In France, particularly Burgundy, there is the belief that the role of a winemaker is to bring out the expression of a wine's terroir. The French word for "winemaker," vigneron, is more aptly translated as "wine-grower" rather than "winemaker". The belief that the terroir is the dominant influence in the wine is the basis behind French wine labels emphasizing the region, vineyard, or AOC more prominently than the varietal of grape, and often more prominently than the producer.[11]
In other drinks

The concept of terroir exists in other drinks, notably in tea (Wuyi rock-essence tea being a notable example) and Cognac where the chalky soil, climate and distance from the ocean are all factors influencing the product. Producers of whiskey, bourbon, rum, and vodka use terroir elements in their production process, including wood flavors derived from barrel aging.[12]
In artisan cheese
Pasture in the Alps. Alp cheeses are characterised by the variety of herbs and flowers found at higher elevations.

The tenet of terroir has also been applied to the production of artisan cheese,[13] and French authorities have fought to balance traditional cheesemakers terroir cheeses concerns with those of major industrialists.[14]

The flavour of cheeses (and other dairy products) is impacted by the production location.[15] For instance, Alpine pastures are composed of a larger variety of grasses, herbs, and flowers, than those in the lowlands. At higher elevations, the flora also changes significantly throughout the grazing period (from spring to autumn), thus also impacting the taste of cheeses produced in different batches. In Switzerland, Alp cheese is typically indicated with a special logo, in addition to the Appellation d'origine protégée (AOP).[16]
Appellation systems

The influence of terroir means that wines from a particular region are unique, incapable of being reproduced outside that area, even if the grape variety and winemaking techniques are painstakingly duplicated. Winemakers in Burgundy do not believe that they are producing Pinot noir that happens to be grown in Burgundy, but that they are producing unique Burgundian wines that happen to be made from Pinot noir. Appellation systems, such as the French AOC systems, have developed around the concepts of "unique wines from a unique area". These systems have also developed into protected designation of origin across the European Union so that, for example, winemakers from outside a region like Tuscany can not produce a Sangiovese wine and call it a Chianti. While the wine may be made from the same clonal variety of Sangiovese, in the same soil composition as found in the Chianti region with winemakers using the Tuscan method of production, there is an assumption that the two wines will be different due to terroir.

The names of these European wine regions are protected so that wines from different regions and different terroir are not confused with wines from that those regions – i.e. A Spanish or Australian "chianti". In the United States there is some confusion over the use of semi-generic names like Champagne and Port but there has been more effort by the American wine industry to recognize the unique association of place names with the wines produced in those places, such as the 2005 Napa Declaration on Place agreement. While appellation systems and the protected designations of origin can be a way of protecting "unique terroir", the commercial importance of terroir has been a much debated topic in the wine industry.[2] In Spain in 2018, networks of vintners joined in a grassroots movement to produce wines with added terroir value with intention to enhance the Spanish rural wine culture.[17]
Commercial interests

The importance of terroir affects the price of the agricultural product as well as the products made from the product. Branding, variety, and farmer identification affects the price of a product. The Slow Food movement appreciates history of a variety of plant or animal, the story of the farmer who produced it, and ultimately the quality of the product. Chefs and bakers develop their own list of qualities they desire for their creations, and terroir affects these.

Wine critics question the value of a Pinot noir wine from a Burgundy Grand Cru vineyard relative to a wine produced from the "lesser terroir" of a Premier Cru vineyard, and whether it merits the higher price. These doubts also arise when the quality of winemaking and other human influences are taken into account, which may be of a higher standard with the "lesser" premier cru.

These critics also question the difference between New World and Old World wine and whether modern winemaking techniques – like significant oak influences, over-ripened fruit, cultured yeast, micro-oxygenation, and color pigment additives – obscure or even eliminate the influence of terroir in making different regions unique. Critics often point to the homogenizing effect on mass-produced wines made from popular varietals like Chardonnay, which may have their terroir characteristics hidden by invasive and intensive winemaking. A heavily oaked, over-ripe Chardonnay from California can taste very similar to the same style of wine from elsewhere. The marketability of wines from different regions and producers is affected by the importance accorded to terroir, both by the wine industry and consumer wine markets, with some producers downplaying terroir and its effect on their wines.[2]
Outside Europe

In the United States, the principles of terroir have been applied in a few limited instances, such as Vidalia onions, whose production area has been defined by the United States Department of Agriculture[18] an Indian River fruit, which can only carry that label if grown within an area defined by the United States Federal Trade Commission.[19]

In some East Asian countries, terms like terroir or marriage have been popularised by Japanese manga. A 2008–09 Korean drama, most of whose leading characters work with wine, is titled Terroir after the main setting, a wine restaurant in turn named for the concept.
In popular culture

The concept of terroir has been discussed in several films and television shows. Jonathan Nossiter's 2004 documentary, Mondovino, explores the globalization of the wine business, and features interviews with a number of small producers, mostly French, who talk about terroir. In the 2006 BBC series, Oz and James's Big Wine Adventure, one episode is almost entirely devoted to Oz Clarke teaching James May about terroir. At the end of the episode, May identifies three wines successfully, placing them in the correct order on the basis of the quality of terroir they come from.

Les Blank and Gina Leibrecht's 2007 documentary, All In This Tea, explores the importance of terroir and organic growing methods for the quality and future sustainability of the Chinese tea market. Terroir is also a frequent topic of discussion in the Japanese wine comic Les Gouttes de Dieu. The films French Kiss and A Good Year also make references to terroir. Terroir recognition is a plot turning point in the 1976 French comedy L'aile ou la cuisse (The Wing or the Thigh) with Louis de Funès. In 2014 Keith Carradine starred in John Charles Jopson's Edgar Allan Poe-inspired film Terroir.
See also

    Ecoregion
    Habitat
    Plant genetics
    Old World wine
    Red Fife wheat
    Shade-grown coffee

References

Tanzer, Stephen. "What is terroir?". Stephen Tanzer's Winophilia. Archived from the original on 24 July 2015. Retrieved 23 July 2015.
Robinson, J., ed. (2006). The Oxford Companion to Wine (3rd ed.). Oxford University Press. pp. 693–695. ISBN 0-19-860990-6.
McCarthy, Ed & Ewing-Mulligan, Mary (2001). French Wine for Dummies. New York: Wiley Publishing. p. 22. ISBN 0-7645-5354-2.
MacNeil, Karen (2015). "Burgundy". The Wine Bible (2nd, revised ed.). New York: Workman Publishing Company. p. 199. ISBN 9780761187158. Retrieved 29 June 2016. "[...] the period most crucial in the region's history was the thousand-year period from the eighth century to the French Revolution, when much of the land and most of its wines were under the powerful command of Benedictine and Cistercian monks. [...] Contemplative by nature, patient in temperament, systematic in approach, committed to grueling physical labor, well bestowed with land, and, most important, literate, the monks were uniquely prepared for their mission: to delineate and codify Burgundy's vineyards. Plot by plot, they cleared and cultivated the most difficult limestone slopes of the Côte d'Or, studiously comparing vineyards and the wines made from them, recording their impressions over centuries. Tantamount to a millennium-long research project, the work of these monks [...] in fact, for the first time, established terroir as the critical core of viticulture."
MacNeil, Karen (2001). The Wine Bible. Workman Publishing. p. 190. ISBN 1-56305-434-5.
Mark A Matthews (2016). Terroir and Other Myths of Winegrowing. University of California Press, ISBN 0520276957
Fraga, Helder; Malheiro, Aureliano C.; Moutinho-Pereira, José; Cardoso, Rita M.; Soares, Pedro M. M.; Cancela, Javier J.; Pinto, Joaquim G. & Santos, João A. (2014). "Integrated Analysis of Climate, Soil, Topography and Vegetative Growth in Iberian Viticultural Regions". PLOS ONE. 9 (9): e108078. Bibcode:2014PLoSO...9j8078F. doi:10.1371/journal.pone.0108078. PMC 4176712. PMID 25251495.
Bokulich, Nicholas A.; Thorngate, John H.; Richardson, Paul M. & Mills, David A. (2013). "PNAS Plus: Microbial biogeography of wine grapes is conditioned by cultivar, vintage, and climate". Proceedings of the National Academy of Sciences. 111 (1): E139–48. Bibcode:2014PNAS..111E.139B. doi:10.1073/pnas.1317377110. PMC 3890796. PMID 24277822.
Knight, Sarah & Goddard, Matthew R. (2014). "Quantifying separation and similarity in a Saccharomyces cerevisiae metapopulation". The ISME Journal. 9 (2): 361–70. doi:10.1038/ismej.2014.132. PMC 4303630. PMID 25062126.
van Leeuwen, Cornelius (2010). "Terroir: The effect of the physical environment on vine growth, grape ripening and wine sensory attributes". Managing Wine Quality. pp. 273–315. doi:10.1533/9781845699284.3.273. ISBN 9781845694845.
McCarthy & Ewing-Mulligan (2001), pp. 12–13.
Risen, Clay (21 August 2018). "Can Liquor Have a Local Taste? They're Banking on It". The New York Times. Retrieved 23 February 2019.
Erlanger, Steven (31 August 2013). "Vive le Terroir". The New York Times. Retrieved 18 October 2013.
Monaco, Emily (18 June 2018). "The end to a French cheese tradition?". BBC.
"The contribution of mountain pastures to the link to terroir in dairy and meat products" (PDF). Mountain pastures and livestock farming facing uncertainty: environmental,technical and socio economic challenges. 2016. "The secondary metabolites of the dicotyledonous plants found in mountain pastures like terpenoids or phenolic compounds are directly transferred to animal products"
The Oxford Companion to Cheese. Oxford University Press. 2016. p. 17.
Alonso González, Pablo & Parga Dans, Eva (2018). "The 'terroirist' social movement: The reawakening of wine culture in Spain". Journal of Rural Studies. 61: 184–196. doi:10.1016/j.jrurstud.2018.04.014.
"Vidalia Onions Grown in Georgia". 7 CFR Part 955 – via LII / Legal Information Institute.

    "History – Indian River Citrus League". ircitrusleague.org.

Further reading
Terroir
at Wikipedia's sister projects

    Definitions from Wiktionary
    Media from Wikimedia Commons
    News from Wikinews
    Quotations from Wikiquote
    Texts from Wikisource
    Textbooks from Wikibooks
    Resources from Wikiversity

    Fanet, Jacques (2004). Great Wine Terroirs. Berkeley: University of California Press. ISBN 0-520-23858-3.
    Nowak, Zachary (June 2012). "Against Terroir". Petites Propos Culinaires. 96: 92–108.
    Parker, Thomas (2015). Tasting French Terroir: The History of an Idea. Berkeley: University of California Press. ISBN 978-0520277519.
    Rice, Thomas J. & Cervellone, Tracy G. (2007). Paso Robles: An American Terroir. Paso Robles, California: Thomas J. Rice & Tracy G. Cervellone. ISBN 978-0-9799406-1-3.
    Sommers, Brian J. (2008). The Geography of Wine: How Landscapes, Cultures, Terroir, and the Weather Make a Good Drop. New York: Plume Publishing. ISBN 0-452-28890-8.
    Torres, Olivier (2006). The Wine Wars: The Mondavi Affair, Globalization and Terroir. New York: Palgrave Macmillan Publishing. ISBN 0-230-00210-2.
    Trubek, Amy B. (2008). The Taste of Place: A Cultural Journey Into Terroir. Berkeley: University of California Press. ISBN 978-0-520-25281-3.
    Wilson, James E. (1999). Terroir: The Role of Geology, Climate, and Culture in the Making of French Wines. Berkeley: University of California Press. ISBN 0-520-21936-8.


    vte

Viticulture
Wines and winemaking

    vte

Wine

    vte

Winemaking
Categories:

    Coffee productionTea productionViticultureWine terminology

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikiquote

Languages

    Deutsch
    Español
    Français
    한국어
    Italiano
    日本語
    Português
    Русский
    中文

Edit links

    This page was last edited on 15 May 2021, at 14:01 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki




 

[1] The full text of the TRIPS is available at: http://www.wto.org/english/docs_e/legal_e/legal_e.htm

[2] Samper, L.F. (2007) “Café de Colombia: protecting and promoting a well-known origin”, National Federation of Coffee Growers of Colombia, Beijing, Chine, Juin 2007. Silva, G. (2008) “Geographical Indications: The Case of Colombian Coffee”, CEO, National Federation of Coffee Growers of Colombia, mai 2008

[3] The full text of the Lisbon Agreement is available at http://www.wipo.int/treaties/en/registration/lisbon/. The English text says “quality and characteristics” but there was a mistake in the translation from the French text of the Agreement, which is the authentic one. The French text says “qualité ou les caractères”. The mistake in the translation has been confirmed by the WIPO Secretariat.

[4] See WIPO Secretariat, “Possible Improvements of the Procedures under the Lisbon Agreement”, p. 13, March 2009.

[5] The Paris Convention for the Protection of Industrial Property was agreed in 1883 and complemented by the Madrid Protocol of 1891. See on http://www.wipo.org, “Treaties”, “Intellectual Property Protection Treaties”, “Paris Convention”.

[6] The 1891 Madrid Agreement for the Repression of False or Deceptive Indications of Source on Goods. See on http://www.wipo.org, “Treaties”, “Intellectual Property Protection Treaties”, “Madrid Agreement”.


[7] Barjolle, D., Boisseaux, S., Dufour, M. (1998), « Le lien au terroir, bilan des travaux de recherche », Ecole polytechnique fédérale de Zurich, Institut d'économie rurale, Mai 1998, Suisse

[8] Ibidem

[9] See « Le fruit d'un terroir ».

[10] Vincent, E., Flutet, E., Nairaud, D. (2008) « aoc et aop : un système de reconnaissance des terroirs au service du développement durable », Géosciences, numéro 7/8, mars 2008, INAO

[11] Institut national de recherche agronomique (INRA)/ Institut national de l’origine et de la qualité (INAO)

[12] See http://terroirsetcultures.frmfrpaca-lr.eu/spip.php?article74

[13] See Regulation (EU) No 1151/2012 of the European Parliament and of the Council of 21 November 2012 on quality schemes for agricultural products and foodstuffs on the protection of Geographical Indications and Designations of Origin for agricultural products and foodstuffs, replacing the Council Regulation (EC) No 510/2006 of 20 March 2006, Art. 4



Your GI Kit

    Key GI Concepts
    Legal Info
    Development Info


Imagination age
& The Age of Imagination
Coming Soon to a Civilization Near You.
by Charlie Magee

! The Guide for the Perplexed
!! 
!! https://en.wikipedia.org/wiki/The_Guide_for_the_Perplexed

From Wikipedia, the free encyclopedia
  (Redirected from Guide for the perplexed)

! This article is about the 12th-century book by Maimonides. For the 1977 book by E.F. Schumacher, see A Guide for the Perplexed. For the 2001 novel by Gilad Atzmon, see A Guide to the Perplexed.

	
This article includes a list of general references, but it remains largely unverified because it lacks sufficient corresponding inline citations. Please help to improve this article by introducing more precise citations. (August 2010) (Learn how and when to remove this template message)
The Guide for the Perplexed More-Nevuchim-Yemenite-manuscipt.jpg
Yemenite manuscript of The Guide for the Perplexed, c. 1300
Author	Moses Maimonides
Original title	דלאל̈ת אלחאירין
Country	Ayyubid Empire
Language	Judeo-Arabic
Genre	Jewish philosophy
Publication date
	ca. 1190
Published in English
	1881
Media type	Manuscript
Dewey Decimal
	181.06
LC Class	BM545 .D3413
Original text
	דלאל̈ת אלחאירין at Hebrew Wikisource
Translation	The Guide for the Perplexed at Wikisource

The Guide for the Perplexed (Arabic: دلالة الحائرين‎, Dalālat al-ḥā’irīn, דלאל̈ת אלחאירין‎; Hebrew translation, Moreh Nevukhim Hebrew: מורה נבוכים‎) is a work of theology by Maimonides. It seeks to reconcile Aristotelianism with Rabbinical Jewish theology by finding rational explanations for many events in the text.

It was written in Classical Arabic using the Hebrew alphabet in the form of a three-part letter to his student, Rabbi Joseph ben Judah of Ceuta, the son of Rabbi Judah, and is the main source of Maimonides' philosophical views, as opposed to his opinions on Jewish law. A small minority believe the Guide for the Perplexed was written by an anonymous heretic and not Maimonides, most notably amongst these is the revered 18th-century scholar Jacob Emden.

Since many of the philosophical concepts, such as his view of theodicy and the relationship between philosophy and religion, are relevant beyond strictly Jewish theology, it has been the work most commonly associated with Maimonides in the non-Jewish world and it is known to have influenced several major non-Jewish philosophers.[1] Following its publication, "almost every philosophic work for the remainder of the Middle Ages cited, commented on, or criticized Maimonides' views."[2] Within Judaism, the Guide became widely popular, with many Jewish communities requesting copies of the manuscript, but also quite controversial, with some communities limiting its study or banning it altogether.
Contents

    1 Contents
        1.1 Book One
        1.2 Book Two
        1.3 Book Three
    2 Reception
    3 Analysis
    4 Translations
    5 Manuscripts
    6 See also
    7 References
    8 Further reading
    9 External links

Contents
Cover of a print version

The Guide for the Perplexed was originally written in about 1190 by Maimonides in Classical Arabic using the Hebrew alphabet. It was first translated in 1204 into Hebrew by a contemporary of Maimonides, Samuel ibn Tibbon.[3] The work is divided into three books. According to Maimonides, he wrote the Guide "to enlighten a religious man who has been trained to believe in the truth of our holy Law, who conscientiously fulfills his moral and religious duties, and at the same time has been successful in his philosophical studies."

    This work has also a second object in view: It seeks to explain certain obscure figures which occur in the Prophets, and are not distinctly characterized as being figures. Ignorant and superficial readers take them in a literal, not in a figurative sense. Even well informed persons are bewildered if they understand these passages in their literal signification, but they are entirely relieved of their perplexity when we explain the figure, or merely suggest that the terms are figurative. For this reason I have called this book Guide for the Perplexed.[4]

Also, he made a systematic exposition on Maaseh Bereishit and Merkabah mysticism, works of Jewish mysticism regarding the theology of creation from the Book of Genesis and the chariot passage from the Book of Ezekiel – these being the two main mystical texts in the Tanakh. This analysis occurs in the third book, and from this perspective, the issues raised in the first two books are there to provide background and a progression in the mystical and philosophical knowledge required to ponder the climax.
Book One
A page from a 14th-century manuscript of the Guide. The figure seated on the chair with Stars of David is thought to be Aristotle.

The book begins with Maimonides’ thesis against anthropomorphism. In the Bible, one can find many expressions that refer to God in human terms, for instance the “hand of God”. Maimonides was strongly against what he believed to be a heresy present in unlearned Jews who then assume God to be corporeal (or even possessing positive characteristics).

To explain his belief that this is not the case, Maimonides devoted more than 20 chapters in the beginning (and middle) of the first book to analyzing Hebrew terms. Each chapter was about a term used to refer to God (such as “mighty”) and, in each case, Maimonides presented a case that the word is a homonym, whereby its usage when referring to a physical entity is completely different from when referring to God. This was done by close textual analysis of the word in the Tanakh in order to present what Maimonides saw as the proof that according to the Tanakh, God is completely incorporeal:

    [The Rambam] set up the incorporeality of God as a dogma, and placed any person who denied this doctrine upon a level with an idolater; he devoted much of the first part of the Moreh Nevukhim to the interpretation of the Biblical anthropomorphisms, endeavoring to define the meaning of each and to identify it with some transcendental metaphysical expression. Some of them are explained by him as perfect homonyms, denoting two or more absolutely distinct things; others, as imperfect homonyms, employed in some instances figuratively and in others homonymously.”[5]

This leads to Maimonides’ notion that God cannot be described in any positive terms, but rather only in negative conceptions. The Jewish Encyclopedia notes his view that “As to His essence, the only way to describe it is negatively. For instance, He is not physical, nor bound by time, nor subject to change, etc. These assertions do not involve any incorrect notions or assume any deficiency, while if positive essential attributes are admitted it may be assumed that other things coexisted with Him from eternity.”[5]

Unrestrained anthropomorphism and perception of positive attributes is seen as a transgression as serious as idolatry, because both are fundamental errors in the metaphysics of God's role in the universe, and that is the most important aspect of the world.

The first book also contains an analysis of the reasons why philosophy and mysticism are taught late in the Jewish tradition, and only to a few. Maimonides cites many examples of what he sees as the incapability of the masses of understanding these concepts. Thus, approaching them with a mind that is not yet learned in Torah and other Jewish texts can lead to heresy and the transgressions considered the most serious by Maimonides.

The book ends (Chapters 73–76) with Maimonides’ protracted exposition and criticism of a number of principles and methods identified with the schools of Jewish Kalam and Islamic Kalam, including the argument for creation ex nihilo and the unity and incorporeality of God. While he accepts the conclusions of the Kalam school (because of their consistency with Judaism), he disagrees with their methods and points out many perceived flaws in their arguments: “Maimonides exposes the weakness of these propositions, which he regards as founded not on a basis of positive facts, but on mere fiction ... Maimonides criticizes especially the tenth proposition of the Mutakallimīn, according to which everything that is conceivable by imagination is admissible: e.g., that the terrestrial globe should become the all-encompassing sphere, or that this sphere should become the terrestrial globe.”[5]
Book Two

The book begins with the exposition of the physical structure of the universe, as seen by Maimonides. The world-view asserted in the work is essentially Aristotelian, with a spherical earth in the centre, surrounded by concentric Heavenly Spheres. While Aristotle's view with respect to the eternity of the universe is rejected, Maimonides extensively borrows his proofs of the existence of God and his concepts such as the Prime Mover: “But as Maimonides recognizes the authority of Aristotle in all matters concerning the sublunary world, he proceeds to show that the Biblical account of the creation of the nether world is in perfect accord with Aristotelian views. Explaining its language as allegorical and the terms employed as homonyms, he summarizes the first chapter of Genesis thus: God created the universe by producing on the first day the reshit (Intelligence) from which the spheres derived their existence and motion and thus became the source of the existence of the entire universe.”[5]

A novel point is that Maimonides connects natural forces[6] and heavenly spheres with the concept of an angel: these are seen as the same thing. The Spheres are essentially pure Intelligences who receive power from the Prime Mover. This energy overflows from each one to the next and finally reaches earth and the physical domain. This concept of intelligent spheres of existence also appears in Gnostic Christianity as Aeons, having been conceived at least eight hundred years before Maimonides. Maimonides’ immediate source was probably Avicenna, who may in turn have been influenced by the very similar scheme in Isma'ili Islam.

This leads into a discussion about the merits of the debate whether the universe is eternal or created. As in the first book, Aristotle's theory of the eternity of the universe is seen as the best, philosophically. However, this is because Maimonides considered the proofs that the universe was created to be inferior. He still points out supposed problems with the Aristotelian view and states that, while Aristotle's argument is the best, the possession of Divine Revelation from the Torah is the extra piece of information necessary to decide the matter. This is followed by a brief exposition of Creation as outlined in Genesis and theories about the possible end of the world.

The second major part of the book is the discussion of the concept of prophecy. Maimonides departs from the orthodox view in that he emphasizes the intellectual aspect of prophecy: According to this view, prophesy occurs when a vision is ascertained in the imagination, and then interpreted through the intellect of the prophet. In Maimonides view, many aspects of descriptions of prophesy are metaphor. All stories of God speaking with a prophet, with the exception of Moses, are metaphors for the interpretation of a vision. While a perfected "imaginative faculty" is required, and indicated through the behavior of the prophet, the intellect is also required. Maimonides insists that all prophesy, excepting that of Moses, occurs through natural law. Maimonides also states that the descriptions of nation-wide prophesy at Mt. Sinai in Exodus are metaphors for the apprehension of logical proofs. For example, he gives the following interpretation:

    [I]n the speech of Isaiah, … it very frequently occurs … that when he speaks of the fall of a dynasty or the destruction of a great religious community, he uses such expressions as: the stars have fallen, the heavens were rolled up, the sun was blackened, the earth was devastated and quaked, and many similar figurative expressions (II.29).[7]

Maimonides outlines 11 levels of prophecy, with that of Moses being beyond the highest, and thus most unimpeded. Subsequent lower levels reduce the immediacy between God and prophet, allowing prophecies through increasingly external and indirect factors such as angels and dreams. Finally, the language and nature of the prophetic books of the Bible are described.
Book Three

The beginning of the third book is described as the climax of the whole work. This is the exposition of the mystical passage of the Chariot found in Ezekiel. Traditionally, Jewish law viewed this passage as extremely sensitive, and in theory, did not allow it to be taught explicitly at all. The only way to learn it properly was if a student had enough knowledge and wisdom to be able to interpret their teacher's hints by themselves, in which case the teacher was allowed to teach them indirectly. In practice, however, the mass of detailed rabbinic writings on this subject often crosses the line from hint to detailed teachings.

After justifying this "crossing of the line" from hints to direct instruction, Maimonides explains the basic mystical concepts via the Biblical terms referring to Spheres, elements and Intelligences. In these chapters, however, there is still very little in terms of direct explanation.

This is followed by an analysis of the moral aspects of the universe. Maimonides deals with the problem of evil (for which people are considered to be responsible because of free will), trials and tests (especially those of Job and the story of the Binding of Isaac) as well as other aspects traditionally attached to God in theology, such as providence and omniscience: "Maimonides endeavors to show that evil has no positive existence, but is a privation of a certain capacity and does not proceed from God; when, therefore, evils are mentioned in Scripture as sent by God, the Scriptural expressions must be explained allegorically. Indeed, says Maimonides, all existing evils, with the exception of some which have their origin in the laws of production and destruction and which are rather an expression of God's mercy, since by them the species are perpetuated, are created by men themselves."[5]

Maimonides then explains his views on the reasons for the 613 mitzvot, the 613 laws contained within the five books of Moses. Maimonides divides these laws into 14 sections—the same as in his Mishneh Torah. However, he departs from traditional Rabbinic explanations in favour of a more physical/pragmatic approach.

Having culminated with the commandments, Maimonides concludes the work with the notion of the perfect and harmonious life, founded on the correct worship of God. The possession of a correct philosophy underlying Judaism (as outlined in the Guide) is seen as being an essential aspect in true wisdom.
Reception

While many Jewish communities revered Maimonides' work and viewed it as a triumph, others deemed many of its ideas heretical. The Guide was often banned, and in some occasions, even burned.[8]

In particular, the adversaries of Maimonides' Mishneh Torah declared war against the "Guide". His views concerning angels, prophecy, and miracles—and especially his assertion that he would have had no difficulty in reconciling the biblical account of the creation with the doctrine of the eternity of the universe, had the Aristotelian proofs for it been conclusive[9]—provoked the indignation of his coreligionists.

Likewise, some (most famously Rabbi Abraham ben David, known as the RaBad) objected to Maimonides' raising the notion of the incorporeality of God as a dogma, claiming that great and wise men of previous generations held a different view.[10] However, Rabbi Bahya ibn Paquda's Chovot ha-Levavot argues strongly against the anthropomorphistic conception of the Deity; and the favor with which the Rabad looked upon it is sufficient ground on which he can be acquitted of the charge of having held anthropomorphistic views.

In modern-day Jewish circles, controversies regarding Aristotelian thought are significantly less heated, and, over time, many of Maimonides' ideas have become authoritative. As such, the book is seen as a legitimate and canonical, if somewhat abstruse, religious masterpiece.

The Guide had great influence in Christian thought, both Thomas Aquinas and Duns Scotus making extensive use of it: the negative theology contained in it also influenced mystics such as Meister Eckhart. It was massively used in - and disseminated through Ramon Martini's Pugio Fidei.[11] It was also read and commented on in Islamic circles, and remains in print in Arab countries.[12]
Analysis

By Maimonides' own design, most readers of the Guide have come to the conclusion that his beliefs were orthodox, i.e. in line with the thinking of most rabbis of his day. He wrote that his Guide was addressed to only a select and educated readership, and that he is proposing ideas that are deliberately concealed from the masses. He writes in the introduction:..

    A sensible man should not demand of me, or hope that when we mention a subject, we shall make a complete exposition of it.

and

    My object in adopting this arrangement is that the truths should be at one time apparent and at another time concealed. Thus we shall not be in opposition to the Divine Will (from which it is wrong to deviate) which has withheld from the multitude the truths required for the knowledge of God, according to the words, 'The secret of the Lord is with them that fear Him (Psalm 25:14)'

Marvin Fox comments on this:

    It is one of the mysteries of our intellectual history that these explicit statements of Maimonides, together with his other extensive instructions on how to read his book, have been so widely ignored. No author could have been more open in informing his readers that they were confronting no ordinary book.[13]:7

Marvin Fox writes further:

    In his introduction to the Guide Maimonides speaks repeatedly of the "secret" doctrine that must be set forth in a way appropriate to its secret character. Rabbinic law, to which Maimonides as a loyal Jew is committed, prohibits any direct, public teaching of the secrets of the Torah. One is permitted to teach these only in private to selected students of proven competence... It would seem that there is no way to write such a book without violating rabbinic law....Yet at times it is urgent to teach a body of sound doctrine to those who require it....The problem is to find a method for writing such book in a way that does not violate Jewish law while conveying its message successfully to those who are properly qualified....[13]:5

According to Fox, Maimonides carefully assembled the Guide "so as to protect people without a sound scientific and philosophical education from doctrines that they cannot understand and that would only harm them, while making the truths available to students with the proper personal and intellectual preparation."

Aviezer Ravitzky writes:

    Those who upheld a radical interpretation of the secrets of the Guide, from Joseph Caspi and Moses Narboni in the 14th century to Leo Strauss and Shlomo Pines in the 20th, proposed and developed tools and methods for the decoding of the concealed intentions of the Guide. Can we already find the roots of this approach in the writings of Samuel ben Judah ibn Tibbon, a few years after the writing of the Guide?...Ibn Tibbon's comments reveal his general approach toward the nature of the contradictions in the Guide: The interpreter need not be troubled by contradiction when one assertion is consistent with the "philosophic view" whereas the other is completely satisfactory to "men of religion". Such contradictions are to be expected, and the worthy reader will know the reason for them and the direction they tend to...The correct reading of the Guide's chapters should be carried out in two complementary directions: on the one hand, one should distinguish each chapter from the rest, and on the other one should combine different chapters and construct out of them a single topic. Again, on the one hand, one should get to the bottom of the specific subject matter of each chapter, its specific "innovation", an innovation not necessarily limited to the explicit subject matter of the chapter. On the other hand, one should combine scattered chapters which allude to one single topic so as to reconstruct the full scope of the topic.

Translations

The original version of the Guide was written in Judaeo-Arabic. The first Hebrew translation (titled Moreh Nevukhim) was written in 1204 by a contemporary of Maimonides, Samuel ben Judah ibn Tibbon in southern France. This Hebrew edition has been used for many centuries. A new, modern edition of this translation was published in 2019 by Feldheim Publishers. Another translation, less diffused at the time but today considered superior by some, was that of Judah al-Harizi.

A first complete translation in Latin (Rabbi Mossei Aegyptii Dux seu Director dubitantium aut perplexorum) was printed in Paris by Agostino Giustiniani/Augustinus Justinianus in 1520.

A French translation accompanied the first critical edition, published by Salomon Munk in three volumes from 1856 (Le Guide des égarés: Traité de Théologie et de Philosophie par Moïse ben Maimoun dit Maïmonide. Publié Pour la première fois dans l'arabe original et accompagné d'une traduction française et notes des critiques littéraires et explicatives par S. Munk).

The first complete English translation was The Guide for the Perplexed, by Michael Friedländer, with Mr. Joseph Abrahams and Reverend H. Gollancz, dates from 1881. It was originally published in a three volume edition with footnotes. In 1904 it was republished in a less expensive one volume edition, without footnotes, with revisions. The second edition is still in use today, sold through Dover Publications. Despite the age of this publication it still has a good reputation, as Friedländer had solid command of Judeao-Arabic and remained particularly faithful to the literal text of Maimonides' work.[14]

Another translation to English was made by Chaim Rabin in 1952, also published in an abridged edition.[15]

The most popular English translation is the two volume set The Guide of the Perplexed, translated by Shlomo Pines, with an extensive introductory essay by Leo Strauss, published in 1963.[16]

A translation to Hebrew was written by Yosef Qafih and published by Mossad Harav Kook, Jerusalem, 1977. A new modern Hebrew translation has been written by Prof. Michael Schwartz, professor emeritus of Tel Aviv University's departments of Jewish philosophy and Arabic language and literature.[17] Mifal Mishneh Torah published another Hebrew edition between 2018 and 2021.[18][19]

Mór Klein [hu] (1842–1915), the rabbi of Nagybecskerek translated it to Hungarian and published it in multiple volumes between 1878 and 1890.[20]

Translations exist also in Yiddish, French, Polish, Spanish, German, Italian and Russian.
Manuscripts

The earliest complete Judeo-Arabic copy of Maimonides' Guide for the Perplexed, copied in Yemen in 1380, was found in the India Office Library and added to the collection of the British Library in 1992.[21] Another manuscript, copied in 1396 on vellum and written in Spanish cursive script, but discovered in Yemen by bibliophile, David Solomon Sassoon, was formerly housed at the Sassoon Library in Letchworth, England, but has since been acquired by the University of Toronto. The manuscript has an introduction written by Samuel ibn Tibbon, and is nearly complete, with the exception of a lacuna between two of its pages. Containing a total of 496 pages, written in two columns of 23 lines to a column, with 229 illuminations, the manuscript has been described by David Solomon Sassoon in his Descriptive Catalogue of the Hebrew and Samaritan Manuscripts in the Sassoon Library.[22] In the Bodleian Library at Oxford University, England, there are at least fifteen incomplete copies and fragments of the original Arabic text, all described by Adolf Neubauer in his Catalogue of Hebrew Manuscripts. Two Leyden manuscripts (cod. 18 and 211) have also the original Arabic texts, as do various manuscripts of the Bibliothèque Nationale in Paris (No. 760, very old; 761 and 758, copied by Rabbi Saadia ibn Danan). A copy of the original Arabic text was also stored at the Berlin Royal Library (now Berlin State Library), under the category Ms. Or. Qu., 579 (105 in Catalogue of Moritz Steinschneider); it is defective in the beginning and at the end.[23] Hebrew translations of the Arabic texts, made by Samuel ibn Tibbon and Yehuda Alharizi, albeit independently of each other, abound in university and state libraries.
See also

    Philosophy portal

    Baruch Spinoza
    Jewish philosophy
    Kabbalah
    Mario Javier Saban
    Nachmanides
    Yonah of Gerona

References

     This article incorporates text from a publication now in the public domain: Singer, Isidore; et al., eds. (1901–1906). "MOSES BEN MAIMON (RaMBaM; usually called MAIMONIDES)". The Jewish Encyclopedia. New York: Funk & Wagnalls.

For example, Joseph Telushkin noted that "Thomas Aquinas refers in his writings to "Rabbi Moses", and shows considerable familiarity with the Guide. "Maimonides". Retrieved 2007-10-10. at the Jewish Virtual Library; also Leibniz wrote a commentary on the Guide.
Encyclopaedia Judaica, "Moses Maimonides". Retrieved 2007-10-11. Second Edition, Volume 13, p. 388.
"The Guide to the Perplexed". World Digital Library. Retrieved 22 January 2013.
See Maimonides, Guide for the Perplexed, Introduction, page 2 of M. Friedländer's translation, 1919 ed.
Jacobs, Joseph; Broydé, Isaac. "Moses ben Maimon". Jewish Encyclopedia. Retrieved 2007-10-11.. See also, Maimonides, Guide for the Perplexed, Introduction, page 2 of M. Friedländer's translation, 1919 ed.
Guide for the Perplexed. pp. Part 2, Chapter 6.
Buck, Christopher (1990). The Anatomy of Figuration: Maimonides’ Exegesis of Natural Convulsions in Apocalyptic Texts (Guide II.29). University of Calgary.
See the entry "Maimonidean Controversy, under Maimonides, in volume 11 of the Encyclopaedia Judaica, Keter Publishing, and Dogma in Medieval Jewish Thought by Menachem Kellner.
Part 2, chapter 25
"Abraham ben David of Posquieres". Jewish Encyclopedia. Retrieved 2007-10-11.
Philippe Bobichon, "Citations et traductions du Guide des égarés dans le Pugio fidei de Ramon Martí (Barcelone, xiiie siècle)", Yod, 22 | 2019, pp. 183-242 online
e.g. Dalalat al-Ha'reen, ISBN 1617190497
Marvin Fox, Interpreting Maimonides: Studies in Methodology, Metaphysics, and Moral Philosophy
Online version
Frank, Daniel H.; Maimonides, Moses; Williams, Thomas; Guttmann, Julius; Rabin, Chaim (1996). Monologion; and, Proslogion: with the replies of Gaunilo and Anselm. Indianapolis: Hackett Pub. Co. ISBN 0-87220-324-7.
Shlomo Pines (1963). The Guide of the Perplexed, Vol. 1. Chicago: University of Chicago Press. ISBN 0-226-50230-9.
"Hebrew translation – מורה נבוכים" (in Hebrew). Retrieved 2021-05-10.
"תרגום חדש למורה נבוכים: לפרש את הרמב"ם לפי דרכו, לא להוציא אותו מדעתו" (in Hebrew). Retrieved 2021-05-10.
Maimonides (2018). Ben Shachar, Shimon (ed.). Moreh haNevukhim מורה הנבוכים (in Hebrew). 1. Translated by Gershoni, Hillel. Kedumim: Mifal Mishneh Torah. ISBN 978-965-7743-05-8.
Maimonides (1878–1890). A tévelygők útmutatója (in Hungarian). Translated by Klein, Mór. Nagybecskerek: press of Ferenc Pál Pleitz and Zsigmond Jokly.
Tahan, Ilana (2008). "The Hebrew Collection of the British Library: Past and Present". European Judaism: A Journal for the New Europe. 41 (2): 43–55. JSTOR 41443966.
David Solomon Sassoon, Ohel Dawid - Descriptive Catalogue of the Hebrew and Samaritan Manuscripts in the Sassoon Library, London, vol. 2, Oxford University Press:London 1932, pp. 996–998, Ms. No. 1047; ibid. vol. 1, Preface, p. XI. The same manuscript had been in the possession of an Italian Jew in the fifteenth century.

    The Guide for the Perplexed, by Moses Maimonides, M. Friedländer (ed.), 2nd edition, New York 1956, (Preface) p. xxviii ISBN 0-486-20351-4

Further reading

    Joseph A. Buijs, Ed. Maimonides: A Collection of Critical Essays, University of Notre Dame Press 0268013675
    Marvin Fox. Interpreting Maimonides. University of Chicago Press, 1990 0226259420
    Lenn E. Goodman Rambam: Readings in the Philosophy of Moses Maimonides, Gee Bee Tee, 1985 0670589640
    Alfred Ivry Providence, Divine Omniscience and Possibility: The Case of Maimonides in "Divine Omniscience and Omnipotence in Medieval Philosophy" Ed. T. Rudavsky, 1985, D. Reidel Publishing Company. ISBN 978-90-277-1750-4
    Hannah Kasher Biblical Miracles and the Universality of Natural Laws: Maimonides' Three Methods of Harmonization The Journal of Jewish Thought and Philosophy Vol.8, pp. 25–52, 1998. ISSN 1053-699X (print) ISSN 1477-285X (online)
    Menachem Kellner. Dogma in Medieval Jewish Thought, Oxford University Press, 1986. ISBN 978-0-19-710044-8
    Menachem Kellner Maimonides' Allegiances to Science and Judaism The Torah U-Madda Journal, Volume 7, 1997, Yeshiva University, pp. 88–104. ISSN 1050-4745
    Menachem Kellner Reading Rambam: Approaches to the Interpretation of Maimonides, Jewish History, Vol.5(2) Fall 1991. doi:10.1007/BF01668933
    Y. Tzvi Langermann, Rabbi Yosef Qafih's Modern Medieval Translation of the Guide in Maimonides' Guide of the Perplexed in Translation (2019), p. 257-278.
    Charles Manekin. On Maimonides, Thomson Wadsworth 978-0534583835
    Aviezer Ravitzky. Samuel Ibn Tibbon and the Esoteric Character of the Guide of the Perplexed. Association for Jewish Studies (AJS) Review, Vol.6, 1981:87-123.
    Leo Strauss, The Literary Character of the Guide for the Perplexed This essay has been printed in a number of volumes, including Buijs's volume (above) and as a chapter in Strauss's own "Persecution in the Art of Writing". ISBN 978-0-226-22788-7

External links
	Wikimedia Commons has media related to The Guide for the Perplexed.

    Original Judeo-Arabic full text
        Seforim Online (#217) Munk and Joel edition (public domain, free download in PDF).
        Writings of Maimonides; manuscripts and early print editions. Jewish National and University Library
    Original text transliterated to Arabic
        "دلالة الحائرين" Edited and Transliterated by Hussein Attai
    Hebrew full text
        Ibn Tibbon Translation (PDF) Part 1 - Part 2 - Part 3
        trans. Joseph Kafih
        trans. Michael Schwarz
        Writings of Maimonides; manuscripts and early print editions. Jewish National and University Library
        Moreh Nevuchim recorded lectures in Hebrew, (Podcast)
        Collection of Various Works by Maimonides in Hebrew from the 14th-century
    Latin full text
        Writings of Maimonides; manuscripts and early print editions. Jewish National and University Library
    English full text
        Friedlander translation at Wikisource
        Friedlander translation PDF
        Friedlander translation HTML
    Russian full text of Part One
        trans. Michael Shneider
    Discussion
        Summary of the Guide for the Perplexed
        Moreh Nevukhim Archives, Rabbi Gidon Rothstein
        Approaching the Guide: Penetrating Rambam’s Moreh Nevuchim, Rabbi Jonathan Blass
        Three series of video/audio shiurim on select sections of the Moreh Nevukhim, Rabbi Meir Triebitz- On Book I (Negative Theology), On Book II (Creation), On Book III (Divine Commandments)
        Yahoo Maimonides Discussion Group
        The Guide: An Explanatory Commentary on Each Chapter of Maimonides' Guide of The Perplexed by  Scott Michael Alexander (covers all of Book I, currently)

Authority control Edit this at Wikidata	

    BNF: cb12089325f (data) NKC: aun2016907638 NLI: 000095676 TDVİA: delaletul-hairin VIAF: 305991476 WorldCat Identities (via VIAF): 305991476

Categories:

    1190s booksBook burningsCensorship in JudaismJewish philosophical and ethical textsWorks by MaimonidesJudeo-Arabic literature

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons

Languages

    Alemannisch
    العربية
    Deutsch
    Español
    Français
    Italiano
    עברית
    Português
    Русский

Edit links

    This page was last edited on 10 May 2021, at 13:01 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki



Stroll is an adaptation of ~TiddlyWiki. Think of ~TiddlyWiki as a file drawer of notecards [the notecards are called tiddlers, a British term for a small fish]. 

*The left side of the layout is the stack of open tiddlers. It is called a story river.
*The right side of the layout is a sidebar that contains buttons, a search bar, and tabs with lists of the closed and hidden tiddlers.

<span class="bluebox">

''Activity 1: ''Close the sidebar by clicking the <<icon {{$:/core/images/chevron-right}} "">> icon in the top right corner. Click it again to re-open it.

</span>

add code to the tags field like this:
$:/tags/SideBar

In the "Add a new field:" field add the following
 Field Name:  list-before
 Field Value: $:/core/ui/SideBar/Open

In Contents I then added the code in the text field as follows:

<<toc-selective-expandable 'Contents' sort[title]>>
Welcome to TiddlyBlink! ~TiddlyBlink is an adaptation of TiddlyWiki with the goal of helping you see connections between your ideas, and move quickly from one idea to another. It was inspired by the bi-directional linking found in Roam (https://roamresearch.com/), but built with capabilities already available in ~TiddlyWiki (https://tiddlywiki.com). See my example file [ext[here|https://giffmex.org/gifts/tiddlyblinkexample.html]].<br><br>

''The basic idea:''

Below each tiddler (note card) is a list of links to any other tiddlers that link to the current tiddler's title in their text field. There are four options for viewing those links, as seen in {{$:/core/images/preview-open}} menu above or in the TiddlyBlink menu in the sidebar. So as you create tiddlers for sources, notes and topics, you can link them all to each other and navigate between them in the 'blink' of an eye!

<hr>

''Basic instructions''

<span class="indent1"><$list filter="[!is[system]tag[meta]tag[starthere]sort[title]]"><$link><$view field="title"/></$link><br></$list></span>

<hr>

''Advanced stuff''

<span class="indent1"><$list filter="[is[system]tag[meta]sort[title]]"><$link><$view field="caption"/></$link><br></$list></span>

!!Title
===
[[PDOlogo.png]]

{{PDOlogo.png}}

[img [https://upload.wikimedia.org/wikipedia/commons/c/cc/Protected-designation-origin-logo-de.png]]

This is the logo for Protected Designation Of Origin products.


*this is the first item
**Sub item
*Second
*Third

```

this is  a div:  <div></div>
that's nice

```
As I add "them".

test
! Time crystal
!! 
!! https://en.wikipedia.org/wiki/Time_crystal

From Wikipedia, the free encyclopedia

Condensed matter physics
QuantumPhaseTransition.svg
Phases · Phase transition · QCP
States of matter
Phase phenomena
Electronic phases
Electronic phenomena
Magnetic phases
Quasiparticles
Soft matter
Scientists

    vte

Time
Current time (update)
18:02, 18 May 2021 (UTC)
Major concepts
Fields of study
Philosophy

    ReligionMythology

    MeasurementStandards

    ScienceNaturalism

    Chronobiology Cosmogony Evolution Radiometric dating Ultimate fate of the universe Time in physics

Related topics

    vte

In condensed matter physics, a time crystal refers to a system or subsystem whose lowest-energy states evolve periodically. This name was proposed theoretically by Frank Wilczek in 2012 as a temporal analog to common crystals, which are periodic spatially.[1] Experimental realization of matter with stable periodic evolution was demonstrated in 2016-2017, but not in the way theorized in 2012.[2] In terms of practical use, time crystals may one day be used as quantum memories.[3]

The existence of crystals in nature is a manifestation of spontaneous symmetry breaking, which occurs when the lowest-energy state of a system is less symmetrical than the equations governing the system. In the crystal ground state, the continuous translational symmetry in space is broken and replaced by the lower discrete symmetry of the periodic crystal. As the laws of physics are symmetrical under continuous translations in time as well as space, the question arose in 2012 as to whether it is possible to break symmetry temporally and thus create a "time crystal" resistant to entropy.[1]

In 2015 a theorem[4] purported to rule out systems that would break both space and time translation simultaneously in equilibrium. Although questioned[5] this no-go theorem motivated generalizations of Wilczek's original proposal. Most notable of these are periodically driven nonequilibrium systems that have discrete time translation symmetry which may be spontaneously broken. If a discrete time translation symmetry is broken (which may be realized in periodically driven systems), then the system is referred to as a discrete time crystal. A discrete time crystal never reaches thermal equilibrium, as it is a type (or phase) of non-equilibrium matter. Breaking of time symmetry can only occur in non-equilibrium systems.[2]

Discrete time crystals have in fact been observed in physics laboratories as early as 2016 (published in 2017). One example of a time crystal which demonstrates non-equilibrium, broken time symmetry is a constantly rotating ring of charged ions in an otherwise lowest-energy state.[3]
Contents

    1 History
    2 Time translation symmetry
        2.1 Broken symmetry in normal crystals
        2.2 Broken symmetry in discrete time crystals
    3 Thermodynamics
    4 Experiments
    5 Related concepts
    6 References
        6.1 Academic articles
        6.2 Books
        6.3 Press
    7 External links

History
Nobel laureate Frank Wilczek at University of Paris-Saclay

The idea of a quantized time crystal was theorized in 2012 by Frank Wilczek[6][7] a Nobel laureate and professor at MIT. In 2013, Xiang Zhang, a nanoengineer at University of California, Berkeley, and his team proposed creating a time crystal in the form of a constantly rotating ring of charged ions.[8][9]

In response to Wilczek and Zhang, Patrick Bruno, a theorist at the European Synchrotron Radiation Facility in Grenoble, France, published several articles in 2013 claiming to show that space-time crystals were impossible. Also later Masaki Oshikawa from the University of Tokyo showed that time crystals would be impossible at their ground state; moreover, he implied that any matter cannot exist in non-equilibrium in its ground state.[10][11]

Subsequent work developed more precise definitions of time translation symmetry-breaking, which ultimately led to the Watanabe-Oshikawa "no-go" proof that quantum space-time crystals in equilibrium are not possible.[12][4] Note, however, that Khemani et al. pointed out that Watanabe and Oshikawa's excited state proof has a subtle error which renders it invalid. See Appendix A of Ref.[5] Moreover, Watanabe and Oshikawa strictly speaking showed that long-range order in both space and time is not possible in equilibrium, but breaking of time translation symmetry alone is still possible.[13]

Several realizations of time crystals, which avoid the equilibrium no-go arguments, were later proposed.[14] In 2014 Krzysztof Sacha at Jagiellonian University in Krakow predicted the behaviour of discrete time crystals in a periodically driven system of ultracold atoms.[15][16] Later works[17] suggested that periodically driven quantum spin systems could show similar behaviour.

In 2016 Norman Yao at Berkeley and colleagues proposed a different way to create discrete time crystals in spin systems.[18] His ideas were successfully and independently realized by two experimental teams: a group led by Harvard's Mikhail Lukin[19] and a group led by Christopher Monroe at University of Maryland.[20] Both experiments were published in the same issue of Nature in March 2017.

In 2019 dissipative time crystals, which are many body quantum systems that break continuous time translation symmetry by coupling to an external bath have also been proposed[21] and realized experimentally in a Bose-Einstein condensate in strongly dissipative optical cavity[22] by a group lead by Tilman Esslinger at ETH Zurich.

In 2019 physicists Valerii Kozin and Oleksandr Kyriienko proved that, in theory, a permanent quantum time crystal can exist as an isolated system if the system contains unusual long-range multiparticle interactions. The original "no-go" argument only holds in the presence of typical short-range fields that decay as quickly as r−α for some α>0. Kozin and Kyriienko instead analyzed a spin-1/2 many-body Hamiltonian with long-range multispin interactions, and showed it broke continuous time-translational symmetry. Certain spin correlations in the system oscillate in time, despite the system being closed and in a ground energy state. However, demonstrating such a system in practice might be prohibitively difficult,[23][24] and concerns about the physicality of the long-range nature of the model have been raised.[25]
Time translation symmetry
Main article: Time translation symmetry

Symmetries in nature lead directly to conservation laws, something which is precisely formulated by the Noether theorem.[26]

The basic idea of time-translation symmetry is that a translation in time has no effect on physical laws, i.e. that the laws of nature that apply today were the same in the past and will be the same in the future.[27] This symmetry implies the conservation of energy.[28]
Broken symmetry in normal crystals
Main articles: Crystal symmetry and spontaneous symmetry breaking
Normal process (N-process) and Umklapp process (U-process). While the N-process conserves total phonon momentum, the U-process changes phonon momentum.

Common crystals exhibit broken translation symmetry: they have repeated patterns in space and are not invariant under arbitrary translations or rotations. The laws of physics are unchanged by arbitrary translations and rotations. However, if we hold fixed the atoms of a crystal, the dynamics of an electron or other particle in the crystal depend on how it moves relative to the crystal, and particle momentum can change by interacting with the atoms of a crystal — for example in Umklapp processes.[29] Quasimomentum, however, is conserved in a perfect crystal.[30]

Time crystals show a broken symmetry analogous to a discrete space-translation symmetry breaking. For example,[citation needed] the molecules of a liquid freezing on the surface of a crystal can align with the molecules of the crystal, but with a pattern less symmetric than the crystal: it breaks the initial symmetry. This broken symmetry exhibits three important characteristics:[citation needed]

    the system has a lower symmetry than the underlying arrangement of the crystal,
    the system exhibits spatial and temporal long-range order (unlike a local and intermittent order in a liquid near the surface of a crystal),
    it is the result of interactions between the constituents of the system, which align themselves relative to each other.

Broken symmetry in discrete time crystals

Time crystals seem to break time-translation symmetry and have repeated patterns in time even if the laws of the system are invariant by translation of time. The time crystals that are experimentally realized show discrete time-translation symmetry breaking, not the continuous one: they are periodically driven systems oscillating at a fraction of the frequency of the driving force. The initial symmetry, which is the discrete time-translation symmetry ( t → t + n T {\displaystyle t\to t+nT} {\displaystyle t\to t+nT}) with n = 1 {\displaystyle n=1} n=1, is spontaneously broken to the lower discrete time-translation symmetry with n > 1 {\displaystyle n>1} n>1, where t {\displaystyle t} t is time, T {\displaystyle T} T the driving period, n {\displaystyle n} n an integer.[31]

Many systems can show behaviors of spontaneous time translation symmetry breaking but may not be discrete (or Floquet) time crytals: convection cells, oscillating chemical reactions, aerodynamic flutter, and subharmonic response to a periodic driving force such as the Faraday instability, NMR spin echos, parametric down-conversion, and period-doubled nonlinear dynamical systems.[31]

However, discrete (or Floquet) time crystals are unique in that they follow a strict definition of discrete time-translation symmetry breaking:[32]

    it is a broken symmetry – the system shows oscillations with a period longer than the driving force,
    the system is in crypto-equilibrium – these oscillations generate no entropy, and a time-dependant frame can be found in which the system is indistinguishable from an equilibrium when measured stroboscopically[32] (which is not the case of convection cells, oscillating chemical reactions and aerodynamic flutter),
    the system exhibits long-range order – the oscillations are in phase (synchronized) over arbitrarily long distances and time.

Moreover, the broken symmetry in time crystals is the result of many-body interactions: the order is the consequence of a collective process, just like in spatial crystals.[31] This is not the case for NMR spin echos.

These characteristics makes discrete time crystals analogous to spatial crystals as described above and may be considered a novel type or phase of nonequilibrium matter.[31]
Thermodynamics

Time crystals do not violate the laws of thermodynamics: energy in the overall system is conserved, such a crystal does not spontaneously convert thermal energy into mechanical work, and it cannot serve as a perpetual store of work. But it may change perpetually in a fixed pattern in time for as long as the system can be maintained. They possess "motion without energy"[33]—their apparent motion does not represent conventional kinetic energy.[34]

It has been proven that a time crystal cannot exist in thermal equilibrium.[4] Note, however, that Khemani et al. pointed out that this proof has a subtle error which renders it invalid. See Appendix A of Ref.[5] Recent experimental advances in probing discrete time crystals in their periodically driven nonequilibrium states have led to the beginning exploration of novel phases of nonequilibrium matter.[31]
Experiments

In October 2016, Christopher Monroe at the University of Maryland claimed to have created the world's first discrete time crystal. Using the ideas proposed by Yao et al.,[18] his team trapped a chain of 171Yb+ ions in a Paul trap, confined by radio-frequency electromagnetic fields. One of the two spin states was selected by a pair of laser beams. The lasers were pulsed, with the shape of the pulse controlled by an acousto-optic modulator, using the Tukey window to avoid too much energy at the wrong optical frequency. The hyperfine electron states in that setup, 2S1/2 |F = 0, mF = 0⟩ and |F = 1, mF = 0⟩, have very close energy levels, separated by 12.642831 GHz. Ten Doppler-cooled ions were placed in a line 0.025 mm long and coupled together.

The researchers observed a subharmonic oscillation of the drive. The experiment showed "rigidity" of the time crystal, where the oscillation frequency remained unchanged even when the time crystal was perturbed, and that it gained a frequency of its own and vibrated according to it (rather than only the frequency of the drive). However, once the perturbation or frequency of vibration grew too strong, the time crystal "melted" and lost this subharmonic oscillation, and it returned to the same state as before where it moved only with the induced frequency.[20]

Later in 2016, Mikhail Lukin at Harvard also reported the creation of a driven time crystal. His group used a diamond crystal doped with a high concentration of nitrogen-vacancy centers, which have strong dipole–dipole coupling and relatively long-lived spin coherence. This strongly interacting dipolar spin system was driven with microwave fields, and the ensemble spin state was determined with an optical (laser) field. It was observed that the spin polarization evolved at half the frequency of the microwave drive. The oscillations persisted for over 100 cycles. This subharmonic response to the drive frequency is seen as a signature of time-crystalline order.[19]

On August 17, 2020 Nature Materials published a letter from Aalto University saying that for the first time they were able to observe interactions and the flow of constituent particles between two time crystals in a Helium-3 superfluid cooled to within one ten thousandth of a degree from absolute zero (0.0001 K or -273.15 °C).[35]

A clever application of nuclear magnetic resonance techniques offered researchers at MIT a first measured observation of Floquet prethermalization — a quasi-steady state that persists for a very long time.[36]
Related concepts

    A similar idea called a choreographic crystal has been proposed.[37] By relaxing additional restrictions on the definition of time crystals, continuous time-translation symmetry breaking can be achieved in exceptional cases. For instance, if one allows the system to be open to an environment, but undriven, many-body systems with the appropriate algebraic structure can be time crystals.[21]
    A new engineering concept of time crystal is explored recently on catalytic reaction cycles.[38] By considering each individual chemical reaction inside a catalytic reaction cycle as a single event, all the events could be connected by time-consuming intermediate states to convert a catalytic cycle into a time crystal. There, by simple changing certain conditions of a reaction cycle, we can selectively promote one of the certain reaction products from a catalytic reaction cycle. This protocol is named as time crystal engineering.

    Stylised Lithium Atom.svgPhysics portalNuvola apps kalzium.svgScience portalNuvola apps edu mathematics blue-p.svgMathematics portal

References

Zakrzewski, Jakub (15 October 2012). "Viewpoint: Crystals of Time". physics.aps.org. APS Physics. Archived from the original on 2 February 2017.
Richerme, Phil (January 18, 2017). "How to Create a Time Crystal". physics.aps.org. American Physical Society. Retrieved 5 April 2021.
https://www.technologyreview.com/2016/10/04/157185/physicists-create-worlds-first-time-crystal/
Watanabe, Haruki; Oshikawa, Masaki (2015). "Absence of Quantum Time Crystals". Physical Review Letters. 114 (25): 251603. arXiv:1410.2143. Bibcode:2015PhRvL.114y1603W. doi:10.1103/PhysRevLett.114.251603. ISSN 0031-9007. PMID 26197119. S2CID 312538.
Khemani, Vedika; Moessner, Roderich; Sondhi, S. L. (23 October 2019). "A Brief History of Time Crystals". arXiv:1910.10745 [cond-mat.str-el].
Wilczek, Frank (2012). "Quantum Time Crystals". Physical Review Letters. 109 (16): 160401. arXiv:1202.2539. Bibcode:2012PhRvL.109p0401W. doi:10.1103/PhysRevLett.109.160401. ISSN 0031-9007. PMID 23215056. S2CID 1312256.
Shapere, Alfred; Wilczek, Frank (2012). "Classical Time Crystals". Physical Review Letters. 109 (16): 160402. arXiv:1202.2537. Bibcode:2012PhRvL.109p0402S. doi:10.1103/PhysRevLett.109.160402. ISSN 0031-9007. PMID 23215057. S2CID 4506464.
See Li et al. (2012a, 2012b).
Wolchover, Natalie (25 April 2013). "Perpetual Motion Test Could Amend Theory of Time". quantamagazine.org. Simons Foundation. Archived from the original on 2 February 2017.
See Bruno (2013a) and Bruno (2013b).
Thomas, Jessica (15 March 2013). "Notes from the Editors: The Aftermath of a Controversial Idea". physics.aps.org. APS Physics. Archived from the original on 2 February 2017.
See Nozières (2013), Yao et al. (2017), p. 1 and Volovik (2013).
Medenjak, Marko; Buča, Berislav; Jaksch, Dieter (2020-07-20). "Isolated Heisenberg magnet as a quantum time crystal". Physical Review B. 102 (4): 041117. arXiv:1905.08266. Bibcode:2020PhRvB.102d1117M. doi:10.1103/physrevb.102.041117. ISSN 2469-9950. S2CID 160009779.
See Wilczek (2013b) and Yoshii et al. (2015).
Sacha, Krzysztof (2015). "Modeling spontaneous breaking of time-translation symmetry". Physical Review A. 91 (3): 033617. arXiv:1410.3638. Bibcode:2015PhRvA..91c3617S. doi:10.1103/PhysRevA.91.033617. ISSN 1050-2947. S2CID 118627872.
Sacha, Krzysztof (2020). Time Crystals. Springer Series on Atomic, Optical, and Plasma Physics. 114. Springer. doi:10.1007/978-3-030-52523-1. ISBN 978-3-030-52522-4.
See Khemani et al. (2016) and Else et al. (2016).
Yao, N. Y.; Potter, A. C.; Potirniche, I.-D.; Vishwanath, A. (2017). "Discrete Time Crystals: Rigidity, Criticality, and Realizations". Physical Review Letters. 118 (3): 030401. arXiv:1608.02589. Bibcode:2017PhRvL.118c0401Y. doi:10.1103/PhysRevLett.118.030401. ISSN 0031-9007. PMID 28157355. S2CID 206284432.
Choi, Soonwon; Choi, Joonhee; Landig, Renate; Kucsko, Georg; Zhou, Hengyun; Isoya, Junichi; Jelezko, Fedor; Onoda, Shinobu; Sumiya, Hitoshi; Khemani, Vedika; von Keyserlingk, Curt; Yao, Norman Y.; Demler, Eugene; Lukin, Mikhail D. (2017). "Observation of discrete time-crystalline order in a disordered dipolar many-body system". Nature. 543 (7644): 221–225. arXiv:1610.08057. Bibcode:2017Natur.543..221C. doi:10.1038/nature21426. ISSN 0028-0836. PMC 5349499. PMID 28277511.
Zhang, J.; Hess, P. W.; Kyprianidis, A.; Becker, P.; Lee, A.; Smith, J.; Pagano, G.; Potirniche, I.-D.; Potter, A. C.; Vishwanath, A.; Yao, N. Y.; Monroe, C. (2017). "Observation of a discrete time crystal" (PDF). Nature. 543 (7644): 217–220. arXiv:1609.08684. Bibcode:2017Natur.543..217Z. doi:10.1038/nature21413. PMID 28277505. S2CID 4450646.
Buča, Berislav; Tindall, Joseph; Jaksch, Dieter (2019-04-15). "Non-stationary coherent quantum many-body dynamics through dissipation". Nature Communications. 10 (1): 1730. arXiv:1804.06744. Bibcode:2019NatCo..10.1730B. doi:10.1038/s41467-019-09757-y. ISSN 2041-1723. PMC 6465298. PMID 30988312.
Dogra, Nishant; Landini, Manuele; Kroeger, Katrin; Hruby, Lorenz; Donner, Tobias; Esslinger, Tilman (2019-12-20). "Dissipation-induced structural instability and chiral dynamics in a quantum gas". Science. 366 (6472): 1496–1499. arXiv:1901.05974. doi:10.1126/science.aaw4465. ISSN 0036-8075. S2CID 119283814.
Cho, Adrian (27 November 2019). "Back to the future: The original time crystal makes a comeback". Science. doi:10.1126/science.aba3793. Retrieved 19 March 2020.
Kozin, Valerii K.; Kyriienko, Oleksandr (2019-11-20). "Quantum Time Crystals from Hamiltonians with Long-Range Interactions". Physical Review Letters. 123 (21): 210602. arXiv:1907.07215. Bibcode:2019PhRvL.123u0602K. doi:10.1103/PhysRevLett.123.210602. ISSN 0031-9007. PMID 31809146. S2CID 197431242.
Khemani, Vedika; Moessner, Roderich; Sondhi, S. L. (2020). "Comment on "Quantum Time Crystals from Hamiltonians with Long-Range Interactions"". arXiv:2001.11037 [cond-mat.str-el].
Cao, Tian Yu (25 March 2004). Conceptual Foundations of Quantum Field Theory. Cambridge: Cambridge University Press. ISBN 978-0-521-60272-3. See p. 151.
Wilczek, Frank (16 July 2015). A Beautiful Question: Finding Nature's Deep Design. Penguin Books Limited. ISBN 978-1-84614-702-9. See Ch. 3.
Feng, Duan; Jin, Guojun (2005). Introduction to Condensed Matter Physics. singapore: World Scientific. ISBN 978-981-238-711-0. See p. 18.
Sólyom, Jenö (19 September 2007). Fundamentals of the Physics of Solids: Volume 1: Structure and Dynamics. Springer. ISBN 978-3-540-72600-5. See p. 193.
Sólyom, Jenö (19 September 2007). Fundamentals of the Physics of Solids: Volume 1: Structure and Dynamics. Springer. ISBN 978-3-540-72600-5. See p. 191.
Else, D. W.; Monroe, C.; Nayak, C.; Yao, N. Y. (March 2020). "Discrete Time Crystals". Annual Review of Condensed Matter Physics. 11: 467–499. doi:10.1146/annurev-conmatphys-031119-050658. S2CID 173188223.
Yao; Nayak (2018). "Time crystals in periodically driven systems". Physics Today. 71 (9): 40–47. arXiv:1811.06657. Bibcode:2018PhT....71i..40Y. doi:10.1063/PT.3.4020. ISSN 0031-9228. S2CID 119433979.
Crew, Bec. "Time Crystals Might Exist After All – And They Could Break Space-Time Symmetry". ScienceAlert. Retrieved 2017-09-21.
""Time Crystals" Could Be a Legitimate Form of Perpetual Motion". archive.is. 2017-02-02. Archived from the original on 2017-02-02. Retrieved 2017-09-21.
See Autti, S., Heikkinen, P.J., Mäkinen, J.T. et al. AC Josephson effect between two superfluid time crystals. Nat. Mater. (2020). https://doi.org/10.1038/s41563-020-0780-y
Santos, Lea (January 2021). "Floquet prethermalization: The quick drive to pseudo-equilibrium". Nature Physics. 17: 429–430. doi:10.1038/s41567-020-01117-8. S2CID 230508232. "See Peng, P., Yin, C., Huang, X. et al. Floquet prethermalization in dipolar spin chains. Nat. Phys. 17, 444–447 (2021). https://doi.org/10.1038/s41567-020-01120-z"
See Boyle et al. (2016).

    P. Sahoo et al. 2020,"Time Crystal Engineering in Catalytic Reaction Cycles". doi:10.1007/978-981-15-7253-1_4. Print ISBN 978-981-15-7252-4. Online ISBN 978-981-15-7253-1. Publisher Name: Springer, Singapore

Academic articles

    Boyle, Latham; Khoo, Jun Yong; Smith, Kendrick (2016). "Symmetric Satellite Swarms and Choreographic Crystals". Physical Review Letters. 116 (1): 015503. arXiv:1407.5876. Bibcode:2016PhRvL.116a5503B. doi:10.1103/PhysRevLett.116.015503. ISSN 0031-9007. PMID 26799028. S2CID 17918689.
    Bruno, Patrick (2013a). "Comment on "Quantum Time Crystals"". Physical Review Letters. 110 (11): 118901. arXiv:1210.4128. Bibcode:2013PhRvL.110k8901B. doi:10.1103/PhysRevLett.110.118901. ISSN 0031-9007. PMID 25166585. S2CID 41459498.
    Bruno, Patrick (2013b). "Comment on "Space-Time Crystals of Trapped Ions"". Physical Review Letters. 111 (2): 029301. arXiv:1211.4792. Bibcode:2013PhRvL.111b9301B. doi:10.1103/PhysRevLett.111.029301. ISSN 0031-9007. PMID 23889455. S2CID 1502258.
    Else, Dominic V.; Bauer, Bela; Nayak, Chetan (2016). "Floquet Time Crystals". Physical Review Letters. 117 (9): 090402. arXiv:1603.08001. Bibcode:2016PhRvL.117i0402E. doi:10.1103/PhysRevLett.117.090402. ISSN 0031-9007. PMID 27610834. S2CID 1652633.
    Grifoni, Milena; Hänggi, Peter (1998). "Driven quantum tunneling" (PDF). Physics Reports. 304 (5–6): 229–354. Bibcode:1998PhR...304..229G. CiteSeerX 10.1.1.65.9479. doi:10.1016/S0370-1573(98)00022-2. ISSN 0370-1573. S2CID 120738031. Archived from the original (PDF) on 2017-02-11.
    Guo, Lingzhen; Marthaler, Michael; Schön, Gerd (2013). "Phase Space Crystals: A New Way to Create a Quasienergy Band Structure". Physical Review Letters. 111 (20): 205303. arXiv:1305.1800. Bibcode:2013PhRvL.111t5303G. doi:10.1103/PhysRevLett.111.205303. ISSN 0031-9007. PMID 24289695. S2CID 9337383.
    Khemani, Vedika; Lazarides, Achilleas; Moessner, Roderich; Sondhi, S. L. (2016). "Phase Structure of Driven Quantum Systems". Physical Review Letters. 116 (25): 250401. arXiv:1508.03344. Bibcode:2016PhRvL.116y0401K. doi:10.1103/PhysRevLett.116.250401. ISSN 0031-9007. PMID 27391704. S2CID 883197.
    Li, Tongcang; Gong, Zhe-Xuan; Yin, Zhang-Qi; Quan, H. T.; Yin, Xiaobo; Zhang, Peng; Duan, L.-M.; Zhang, Xiang (2012a). "Space-Time Crystals of Trapped Ions". Physical Review Letters. 109 (16): 163001. arXiv:1206.4772. Bibcode:2012PhRvL.109p3001L. doi:10.1103/PhysRevLett.109.163001. ISSN 0031-9007. PMID 23215073. S2CID 8198228.
    Li, Tongcang; Gong, Zhe-Xuan; Yin, Zhang-Qi; Quan, H. T.; Yin, Xiaobo; Zhang, Peng; Duan, L.-M.; Zhang, Xiang (2012b). "Reply to Comment on "Space-Time Crystals of Trapped Ions"". arXiv:1212.6959. Bibcode:2012arXiv1212.6959L. 

    Lindner, Netanel H.; Refael, Gil; Galitski, Victor (2011). "Floquet topological insulator in semiconductor quantum wells". Nature Physics. 7 (6): 490–495. arXiv:1008.1792. Bibcode:2011NatPh...7..490L. doi:10.1038/nphys1926. ISSN 1745-2473. S2CID 26754031.
    Mendonça, J. T.; Dodonov, V. V. (2014). "Time Crystals in Ultracold Matter". Journal of Russian Laser Research. 35 (1): 93–100. doi:10.1007/s10946-014-9404-9. ISSN 1071-2836. S2CID 122631523.
    Nozières, Philippe (2013). "Time crystals: Can diamagnetic currents drive a charge density wave into rotation?". EPL. 103 (5): 57008. arXiv:1306.6229. Bibcode:2013EL....10357008N. doi:10.1209/0295-5075/103/57008. ISSN 0295-5075. S2CID 118662499.
    Robicheaux, F.; Niffenegger, K. (2015). "Quantum simulations of a freely rotating ring of ultracold and identical bosonic ions". Physical Review A. 91 (6): 063618. Bibcode:2015PhRvA.91063618R. doi:10.1103/PhysRevA.91.063618. ISSN 2469-9926.
    Shirley, Jon H. (1965). "Solution of the Schrödinger Equation with a Hamiltonian Periodic in Time". Physical Review. 138 (4B): B979–B987. Bibcode:1965PhRv..138..979S. doi:10.1103/PhysRev.138.B979. ISSN 0031-899X.
    Smith, J.; Lee, A.; Richerme, P.; Neyenhuis, B.; Hess, P. W.; Hauke, P.; Heyl, M.; Huse, D. A.; Monroe, C. (2016). "Many-body localization in a quantum simulator with programmable random disorder". Nature Physics. 12 (10): 907–911. arXiv:1508.07026. Bibcode:2016NatPh..12..907S. doi:10.1038/nphys3783. ISSN 1745-2473. S2CID 53408060.
    Volovik, G. E. (2013). "On the broken time translation symmetry in macroscopic systems: Precessing states and off-diagonal long-range order". JETP Letters. 98 (8): 491–495. arXiv:1309.1845. Bibcode:2013JETPL..98..491V. doi:10.1134/S0021364013210133. ISSN 0021-3640. S2CID 119100114.
    von Keyserlingk, C. W.; Khemani, Vedika; Sondhi, S. L. (2016). "Absolute stability and spatiotemporal long-range order in Floquet systems". Physical Review B. 94 (8): 085112. arXiv:1605.00639. Bibcode:2016PhRvB..94h5112V. doi:10.1103/PhysRevB.94.085112. ISSN 2469-9950. S2CID 118699328.
    Wang, Y. H.; Steinberg, H.; Jarillo-Herrero, P.; Gedik, N. (2013). "Observation of Floquet-Bloch States on the Surface of a Topological Insulator". Science. 342 (6157): 453–457. arXiv:1310.7563. Bibcode:2013Sci...342..453W. doi:10.1126/science.1239834. hdl:1721.1/88434. ISSN 0036-8075. PMID 24159040. S2CID 29121373.
    Wilczek, Frank (2013a). "Wilczek Reply" (PDF). Physical Review Letters. 110 (11): 118902. Bibcode:2013PhRvL.110k8902W. doi:10.1103/PhysRevLett.110.118902. ISSN 0031-9007. PMID 25166586.
    Wilczek, Frank (2013). "Superfluidity and Space-Time Translation Symmetry Breaking". Physical Review Letters. 111 (25): 250402. arXiv:1308.5949. Bibcode:2013PhRvL.111y0402W. doi:10.1103/PhysRevLett.111.250402. ISSN 0031-9007. PMID 24483732. S2CID 7537145.
    Yoshii, Ryosuke; Takada, Satoshi; Tsuchiya, Shunji; Marmorini, Giacomo; Hayakawa, Hisao; Nitta, Muneto (2015). "Fulde-Ferrell-Larkin-Ovchinnikov states in a superconducting ring with magnetic fields: Phase diagram and the first-order phase transitions". Physical Review B. 92 (22): 224512. arXiv:1404.3519. Bibcode:2015PhRvB..92v4512Y. doi:10.1103/PhysRevB.92.224512. ISSN 1098-0121. S2CID 118348062.
    Zel'Dovich, Y. B. (1967). "The quasienergy of a quantum-mechanical system subjected to a periodic action" (PDF). Soviet Physics JETP. 24 (5): 1006–1008. Bibcode:1967JETP...24.1006Z.

Books

    Sacha, Krzysztof (2020). Time Crystals. Springer Series on Atomic, Optical, and Plasma Physics. 114. Springer. doi:10.1007/978-3-030-52523-1. ISBN 978-3-030-52522-4.

Press

    Ball, Philip (8 January 2016). "Focus: New Crystal Type is Always in Motion". physics.aps.org. APS Physics. Archived from the original on 3 February 2017.
    Coleman, Piers (9 January 2013). "Quantum physics: Time crystals". Nature. 493 (7431): 166–167. Bibcode:2013Natur.493..166C. doi:10.1038/493166a. ISSN 0028-0836. PMID 23302852. S2CID 205075903.
    Cowen, Ron (27 February 2012). ""Time Crystals" Could Be a Legitimate Form of Perpetual Motion". scientificamerican.com. Scientific American. Archived from the original on 2 February 2017.
    Gibney, Elizabeth (2017). "The quest to crystallize time". Nature. 543 (7644): 164–166. Bibcode:2017Natur.543..164G. doi:10.1038/543164a. ISSN 0028-0836. PMID 28277535. S2CID 4460265.
    Grossman, Lisa (18 January 2012). "Death-defying time crystal could outlast the universe". newscientist.com. New Scientist. Archived from the original on 2 February 2017.
    Hackett, Jennifer (22 February 2016). "Curious Crystal Dances for Its Symmetry". scientificamerican.com. Scientific American. Archived from the original on 3 February 2017.
    Hewitt, John (3 May 2013). "Creating time crystals with a rotating ion ring". phys.org. Science X. Archived from the original on 4 July 2013.
    Johnston, Hamish (18 January 2016). "'Choreographic crystals' have all the right moves". physicsworld.com. Institute of Physics. Archived from the original on 3 February 2017.
    Joint Quantum Institute (22 March 2011). "Floquet Topological Insulators". jqi.umd.edu. Joint Quantum Institute.
    Ouellette, Jennifer (31 January 2017). "World's first time crystals cooked up using new recipe". newscientist.com. New Scientist. Archived from the original on 1 February 2017.
    Powell, Devin (2013). "Can matter cycle through shapes eternally?". Nature. doi:10.1038/nature.2013.13657. ISSN 1476-4687. S2CID 181223762. Archived from the original on 3 February 2017.
    University of California, Berkeley (26 January 2017). "Physicists unveil new form of matter—time crystals". phys.org. Science X. Archived from the original on 28 January 2017.
    Weiner, Sophie (28 January 2017). "Scientists Create A New Kind Of Matter: Time Crystals". popularmechanics.com. Popular mechanics. Archived from the original on 3 February 2017.
    Wood, Charlie (31 January 2017). "Time crystals realize new order of space-time". csmonitor.com. Christian Science Monitor. Archived from the original on 2 February 2017.
    Yirka, Bob (9 July 2012). "Physics team proposes a way to create an actual space-time crystal". phys.org. Science X. Archived from the original on 15 April 2013.
    Zyga, Lisa (20 February 2012). "Time crystals could behave almost like perpetual motion machines". phys.org. Science X. Archived from the original on 3 February 2017.
    Zyga, Lisa (22 August 2013). "Physicist proves impossibility of quantum time crystals". phys.org. Space X. Archived from the original on 3 February 2017.
    Zyga, Lisa (9 July 2015). "Physicists propose new definition of time crystals—then prove such things don't exist". phys.org. Science X. Archived from the original on 9 July 2015.
    Zyga, Lisa (9 September 2016). "Time crystals might exist after all (Update)". phys.org. Science X. Archived from the original on 11 September 2016.

External links

    Christopher Monroe at University of Maryland
    Frank Wilczek
    Lukin Group at Harvard University
    Norman Yao at the University of California at Berkeley
    Krzysztof Sacha at Jagiellonian University in Krakow

    vte

Condensed matter physics

    vte

Quantum information science

    vte

Statistical mechanics

    vte

Branches of physics
Categories:

    Branches of thermodynamicsCondensed matter physicsCrystallographyNon-equilibrium thermodynamicsPhysical paradoxesQuantum information theoryQuantum measurementQuantum mechanicsStatistical mechanics2012 in science

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    العربية
    Deutsch
    Español
    Français
    Italiano
    日本語
    Português
    Русский
    中文

Edit links

    This page was last edited on 16 May 2021, at 23:58 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

<$list filter="[!has[draft.of]tag[task]!tag[done]sort[created]]">

<$checkbox tag="done"> <$link to={{!!title}}>
<$view field="created"format="date"template="DDth mmm hh:mm"/> - <$view field="title"/>
<$view field="title"/>
</$link>
</$checkbox>

</$list>


! Translucent concrete
!! 
!! https://en.wikipedia.org/wiki/Translucent_concrete

From Wikipedia, the free encyclopedia


Translucent concrete (also: light-transmitting concrete) is a concrete based building material with light-transmissive properties due to embedded light optical elements — usually optical fibers. Light is conducted through the stone from one end to the other. Therefore, the fibers have to go through the whole object. This results in a certain light pattern on the other surface, depending on the fiber structure. Shadows cast onto one side appear as silhouettes through the material.[1]
Translucent concrete at Expo Bau 2011, München/Germany

Translucent concrete is used in fine architecture as a façade material and for cladding of interior walls. Light-transmitting concrete has also been applied to various design products.[2][3]

Several ways of producing translucent concrete exist. All are based on a fine grain concrete (ca. 95%) and only 5% light conducting elements that are added during casting process. After setting, the concrete is cut to plates or stones with standard machinery for cutting stone materials.[1][4]

Due to bends in the fibers and roughnesses on the cut surfaces of the fibers, light transmission is generally a bit less than half the incident light on the fibers, so given five percent fibers, about two percent.[5][6] As the human eye's response to light is non-linear, this can still give useful daylighting.

In theory, the fibers could carry light around corners and over a distance of tens of meters,[7] with the rate of loss with increasing length depending on the type of fiber and how it is bent.

Working with natural light it has to be ensured that enough light is available. Wall mounting systems need to be equipped with some form of lighting, designed to achieve uniform illumination on the full plate surface. Usually mounting systems similar to natural stone panels are used — e.g., LUCEM uses perforated mounting with visible screws, undercut anchors with agraffes or façade anchors.[4]
Contents

    1 History
    2 Variants
    3 See also
    4 References

History

Translucent concrete has been first mentioned in a 1935 Canadian patent.[8] But since the development of optical glass fibers and polymer based optical fibers the rate of inventions and developments in this field has drastically increased. There have also been inventions that apply this concept to more technical applications like fissure detection. In the early 1990s forms like translucent concrete products popular today with fine & layered patterns were developed.[9][10][11][12]

Today several companies produce translucent concrete with very different[citation needed] production systems. Some manufacturers are:

    Florak Bauunternehmung GmbH, Heinsberg/Germany
    LBM EFO, Berching/Germany
    LiTraCon Bt, Csongrád/Hungary
    LUCEM GmbH, Aachen/Germany
    Luccon Lichtbeton GmbH, Klaus/Austria
    LiCrete, by Gravelli/Czech Republic

Variants

Apart from fine fiber patterns due to the use of optical fibers or textiles some products with much coarser light pattern are available. The main advantage of these products is that on large scale objects the texture is still visible — while the texture of finer translucent concrete becomes indistinct at distance. Further pictograms and lettering can be realized with this technology.[4][13]

An approach that does not use waveguides involves using transparent aggregate and binders.[14] However, chemically this would not necessarily resemble concrete, and might resemble fiberglass. Unlike materials requiring alignment of optical fibers, however, it might be transported and poured using existing infrastructure.[15]
See also

    Bottle wall (larger-scale translucent elements)
    Glass brick (larger-scale translucent elements, minimal concrete grout)
    LiTraCon (brand of fiberoptic concrete)
    Daylighting

References

Roye, Andreas; Barlé, Marijan; Thomas, Gries (2009). Faser- und Textilbasierte Lichtleitung in Betonbauteilen. Aachen, Germany: Schaker Verlag. ISBN 978-3-8322-7297-5.
"Dr. med. aesthete - Aesthetic interior partitioning made from translucent concrete for a dental clinic in Genk". OpucsC - Concrete, Architecture & Design. ad-media. 4/2011 (4): 62–63. 2011.
http://www.lucem.de/index.php?id=375&L=1%2527%2520and%2520char%2528124%2529%252Buser%252Bchar%2528124%2529%253D0%2520and%2520%2527%2527%253D%2527
LUCEM Translucent Concrete - Planning Details (PDF), Stolberg,Germany: LUCEM GmbH, 2011
http://www.ijsrp.org/research-paper-1013/ijsrp-p2283.pdf
http://sinberbest.berkeley.edu/sites/default/files/Anilodic%2BDaylight%2BConcentrator%2Bof%2BStructural%2BTranslucent%2BConcrete%2BEnvelope_%2BBaofeng%2BHuang.pdf
https://www.tfod.in/art-design-articles/22/see-through-concrete-litracon
CA 353849, Bernard Long, "LIGHT TRANSMITTING CONCRETE STRUCTURE", published 1935-10-29
GB 1561142, David Kenneth & John Richardson, "DECORATIVE WALLS, FLOORS AND CEILINGS"
DE 3628083, "Bodenplatten aus Balken mit eingelegten Lichtwellenleiter-Sensoren", published 1988-03-03
DE 9310500U, Uwe Weidmann, "Lichtdurchlässiges Bauelement", published 1993-07-14
FR 2743135, FRANCOIS ORTH, "BORNES ET AUTRES EQUIPEMENTS PUBLICS OU PRIVES EN BETON OU CIMENT ECLAIRES PAR FIBRES OPTIQUES", published 1995-12-29
http://www.lucem.de/index.php?id=354&L=0%252525252C%2525252520onfocus%252525253DblurLink%2525252528this%2525252529%252525253B
None given (December 3, 2017). "Translucent Concrete: An Emerging Material". Illumin. The Engineering Writing Program at the University of Southern California Viterbi School of Engineering. Retrieved 2017-12-03.

    How to see through walls: Transparent concrete is encouraging architects to rethink how they design buildings. The Economist. Sept. 20, 2001.

    vte

Concrete
History	

    Ancient Roman architecture Roman architectural revolution Roman concrete Roman engineering Roman technology

Composition	

    Cement Portland cement Water Water–cement ratio Aggregate Reinforcement Fly ash Ground granulated blast-furnace slag Silica fume Metakaolin

Production	

    Plant Concrete mixer Volumetric mixer Reversing drum mixer Slump test Flow table test Curing Concrete cover Cover meter Rebar

Construction	

    Precast Cast-in-place Formwork Climbing formwork Slip forming Screed Power screed Finisher Power trowel Pump Float Sealer Tremie

Science	

    Properties Degradation Environmental impact Recycling Segregation in concrete Alkali–silica reaction

Types	

    Energetically modified cement Fiber-reinforced Filigree Foam Lunarcrete Mass concrete Nanoconcrete Pervious Polished Polymer concrete Prestressed Ready-mix Reinforced Roller-compacting Ronsdale (natural) cement Self-consolidating Self-leveling Translucent concrete

Applications	

    Slab (waffle, hollow-core, voided biaxial, slab on grade) Concrete masonry unit Step barrier Roads Columns Structures

Organizations	

    American Concrete Institute Institution of Structural Engineers Indian Concrete Institute Nanocem Portland Cement Association International Federation for Structural Concrete

Standards	

    Eurocode 2 EN 197-1 EN 206-1 EN 10080

    Category Category:Concrete

Categories:

    Concrete

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

Languages

    Deutsch
    Español
    فارسی
    Français
    עברית
    Lietuvių

Edit links

    This page was last edited on 15 July 2020, at 10:50 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki

!Autocomplete problems

*If you downloaded Stroll between 5-21-2020 and 6-3-2020, your autocomplete probably isn't working. I fixed the problem, and you can drag [[this link|$:/config/EditorTypeMappings/text/vnd.tiddlywiki]] into your file to fix it. I accidentally forgot to tag this tiddler as ~$:/giffmex/stroll and ~$:/giffmex/blinks when I retagged the Stroll tiddlers on 5-21. Sorry! But it is fixed now.
*For autocomplete with Markdown, see the section on Markdown below.

!iOS

''I use iOS and want to disable the link autocomplete!''

<span class="indent1">

Unfortunately the autocomplete plugin (called the edit-comptext plugin) does not work in iOS and other contexts where one can't use the down arrow key.

To disable it, delete the following tiddler:  [[$:/config/EditorTypeMappings/text/vnd.tiddlywiki]] . This will return it to its default setting.

</span>

!Markdown

''I have the markdown plugin, but autocompletion for linking doesn't work in my Markdown tiddlers!''

<span class="indent1">

The autocompletion of links with double brackets `[[link]]` is controlled by the comptext plugin. Users of Markdown have noticed that they can't use the autocomplete in their Markdown tiddlers. To make autocompletion compatible with formatting in Markdown tiddlers, create a tiddler with the title `$:/config/EditorTypeMappings/text/x-markdown` and put this in the text field: `comptext`

Then, to enable the `[[]]` format for a link, open the following shadow tiddler: $:/config/markdown/renderWikiTextPragma and replace the text with: `\rules only html image macrocallinline syslink transcludeinline wikilink filteredtranscludeblock macrocallblock transcludeblock prettylink`

</span>


!~TiddlyMap

We ''do not'' recommend using ~TiddlyMap. We have found too many incompatibilities. I will not help anyone else who comes to me with problems related to it. That said, here are solutions to two issues:

''I get an error when doubleclicking a node while in fullscreen mode in ~TiddlyMap!''

You will need to stop using fullscreen mode, which, for now, is incompatible for some reason with Stroll. But there is an easy workaround:

# Install the link-to-tabs plugin from https://wikilabs.github.io/editions/link-to-tabs/ and save and refresh.
# Click the link icon over the Map tab (visible on clicking that tab). This will open ~TiddlyMap as a tiddler, and doubleclicking a node will open the tidder //in the story river//. 

''I installed ~TiddlyMap and now the columns are all messed up in two column mode!''

<span class="indent1">

Here is a hack to help you switch back and forth between wide and narrow sidebars: In the tiddler  ''~$:/plugins/felixhayashi/tiddlymap/hook/editor'' of your file, on a new line right after the first line (`\define width() calc(100% - 15px)`), insert the following:

```
\define lingo-base() $:/language/ThemeTweaks/

<$select tiddler="$:/themes/tiddlywiki/vanilla/options/sidebarlayout"><option value="fixed-fluid"><<lingo Options/SidebarLayout/Fixed-Fluid>></option><option value="fluid-fixed"><<lingo Options/SidebarLayout/Fluid-Fixed>></option></$select>
```

Now your 'Map' tab will have a dropdown at the top to change the columns/sidebar relationship between 'fluid-fixed' and 'fixed-fluid'.

</span>
Sometimes you want to see notes side by side:

*To review one and write in another
*To compare and contrast two ideas
*To have a reference sheet or list of snippets open while you are writing

In Roam you would do this by adding a page to the sidebar. In Scroll you do it by opening two columns of tiddlers.

<span class="bluebox">

''Activities:''

#Hide the sidebar using the <<icon {{$:/core/images/chevron-right}} "">> icon at the top of the sidebar.

#Hold down the Shift button and click on these two links, [[Dave Gifford]]. It should appear in a separate column to the right.
#Do the same (shift-click) for the tiddler [[Muffin 1]].

</span>

Now you can view or edit tiddlers in either column, side-by-side!

Note: If you close tidders and only one tiddler is left, Stroll will revert back to one column.

!Diverting tiddlers between columns

<span class="bluebox">

''Activity:''

#Now click the <<icon {{$:/_sq/Stories/icons/divert-left.svg}} "">> and <<icon {{$:/_sq/Stories/icons/divert-right.svg}} "">> icons at the top of the tiddler to 'divert' the [[Muffin 1]] tiddler back and forth between the two columns.

</span>

!'Folding' (compressing) tiddlers

<span class="bluebox">

#Click the <<icon {{$:/core/images/fold-button}} "">> in any tiddler multiple times to compress or 'fold' the contents of the tiddler. Folding tiddlers makes it faster to scroll up and down the columns. Click the button again to 'unfold' the tiddler.

</span>

!Switching between one- and two-column mode

<span class="bluebox">

''Activity:''

#Open the sidebar back up. You will see a <<icon {{$:/_sq/Stories/icons/bars.svg}} "">> button in the sidebar. It is only visible when both columns are open. Click the button to return to one column mode. Click it again to open the two column mode again. 

</span>

!Adjusting the relative width (ratio) of the two columns

In the gear tab in the sidebar, you will find a slider to adjust the ratio of the two story columns. 

<span class="bluebox">

''Activity:''

#With tiddlers visible in both columns, slide the slider to see how it works.

</span>

! Tyranny of small decisions
!! https://en.wikipedia.org/wiki/Tyranny_of_small_decisions
!! Tyranny of small decisions

From Wikipedia, the free encyclopedia

The tyranny of small decisions is a phenomenon explored in an essay of the same name, published in 1966 by the American economist Alfred E. Kahn.[1] The article describes a situation in which a number of decisions, individually small and insignificant in size and time perspective, cumulatively result in a larger and significant outcome which is neither optimal nor desired. It is a situation where a series of small, individually rational decisions can negatively change the context of subsequent choices, even to the point where desired alternatives are irreversibly destroyed. Kahn described the problem as a common issue in market economics which can lead to market failure.[1] The concept has since been extended to areas other than economic ones, such as environmental degradation,[2] political elections[3] and health outcomes.[4]

A classic example of the tyranny of small decisions is the tragedy of the commons, described by Garrett Hardin in 1968[5] as a situation where a number of herders graze cows on a commons. The herders each act independently in what they perceive to be their own rational self-interest, ultimately depleting their shared limited resource, even though it is clear that it is not in any herder's long-term interest for this to happen.[6]

Ithaca railroad

Abutment of the Ithaca-Auburn Short Line bridge
The event that first suggested the tyranny of small decisions to Kahn was the withdrawal of passenger railway services in Ithaca, New York. The railway was the only reliable way to get in and out of Ithaca. It provided services regardless of conditions, in fair weather and foul, during peak seasons and off-peak seasons. The local airline and bus company skimmed the traffic when conditions were favourable, leaving the trains to fill in when conditions were difficult. The railway service was eventually withdrawn, because the collective individual decisions made by travellers did not provide the railway with the revenue it needed to cover its incremental costs. According to Kahn, this suggests a hypothetical economic test of whether the service should have been withdrawn.

Suppose each person in the cities served were to ask himself how much he would have been willing to pledge regularly over some time period, say annually, by purchase of prepaid tickets, to keep rail passenger service available to his community. As long as the amount that he would have declared (to himself) would have exceeded what he actually paid on the period–and my own introspective experiment shows that it would–then to that extent the disappearance of the passenger service was an incident of market failure.[7]

The failure to reflect the full value to passengers of keeping the railroad service available had its origins in the discrepancy between the time perception within which the travellers were operating, and the time perception within which the railroad was operating. The travellers were making many short term decisions, deciding each particular trip whether to go by the railroad, or whether to go instead by car, bus or the local airline. Based on the cumulative effects of these small decisions, the railroad was making one major long run decision, "virtually all-or-nothing and once-and-for-all"; whether to retain or abandon its passenger service. Taken one at a time, each small travel decision made individually by the travellers had a negligible impact on the survivability of the railroad. It would not have been rational for a traveller to consider the survival of the railroad imperilled by any one of his particular decisions.[7]

The fact remains that each selection of x over y constitutes also a vote for eliminating the possibility thereafter of choosing y. If enough people vote for x, each time necessarily on the assumption that y will continue to be available, y may in fact disappear. And its disappearance may constitute a genuine deprivation, which customers might willingly have paid something to avoid. The only choice the market offered travellers to influence the longer-run decision of the railroad was thus shorter in its time perspective, and the sum total of our individual purchases of railroad tickets necessary added up to a smaller amount, than our actual combined interest in the continued availability of rail service. We were victims of the "tyranny of small decisions".[7]

$:/plugins/ipfs
https://bluelightav.eth.link/#%24%3A%2Fplugins%2Fipfs
https://en.wikipedia.org/wiki/File:Anarchy-symbol.svg

Tiddlers have two sides to them: a viewing mode and an editing mode.

!Viewing mode

*The buttons at the top right of the tiddler are called the 'viewtoolbar'.
**<<icon {{$:/core/images/edit-button}} "">> takes you to editing mode
**<<icon {{$:/core/images/close-button}} "">> closes the tiddler. It is now hidden but you can search for it in the searchbar or the tabs.
**<<icon {{$:/core/images/down-arrow}} "">> opens a menu of other buttons.
**You will find out about the other buttons in another step.

!Editing mode

*In editing mode you can change the tiddler title, add tags, add text, and make other advanced changes.
*<<icon {{$:/core/images/chevron-down}} "">> opens a dropdown we will explain in the 'Advanced stuff' tab
*<<icon {{$:/core/images/delete-button}} "">> deletes the tiddler
*<<icon {{$:/core/images/cancel-button}} "">> cancels changes made to the tiddler and returns to viewing mode
*<<icon {{$:/core/images/done-button}} "">> saves changes and returns to viewing mode

<span class="bluebox">

''Activity:''

Click the <<icon {{$:/core/images/edit-button}} "">> icon in the top right corner of the Welcome to Stroll tiddler to go into editing mode and see what it looks like. Then click either the <<icon {{$:/core/images/cancel-button}} "">> button or the <<icon {{$:/core/images/done-button}} "">> button and return to viewing mode.

</span>



<<tabs "[[A stroll through Stroll]] [[The TiddlyWiki layout]] [[Using tiddlers]] [[Linking in Stroll, part 1]] [[Linking in Stroll, part 2]] [[Linking in Stroll, part 3]] [[New tiddler linked here]] [[Two columns]] [[Advanced stuff]] [[Troubleshooting]] [[Stroll vs Roam]] [[Recent updates to Stroll]] [[Download Stroll]] [[Updating Stroll]] [[Add Stroll to your TW]] [[Remove Stroll from your TW]] [[Get goodies]] [[Help / Acknowledgments]] [[Help us]]" "[[A stroll through Stroll]]" "$:/state/strollhometabs" "tc-vertical">>

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
! Why Human Rights?
[img[Muybridge_race_horse_animated.gif]]
```
  To save the planet save the trees
  Save us all the hot air please
  Save the paper stop the fight
 Adult interaction with Cannabis is a Human Right
```



! https://www.weforum.org/

! Listen to this article  https://en.wikipedia.org/wiki/File:World_Economic_Forum_1.ogg
! World Economic Forum
!! 
!! https://en.wikipedia.org/wiki/World_Economic_Forum

From Wikipedia, the free encyclopedia
Jump to navigation
Jump to search
"WEF" redirects here. For other uses, see WEF (disambiguation).
World Economic ForumWorld Economic Forum logo.svg
World Economic Forum headquarters (cropped).jpg
Headquarters in Cologny, Switzerland
Formation	January 1971; 50 years ago (as European Management Forum)
Founder	Klaus Schwab
Type	International NGO
Legal status	Foundation
Purpose	International Organization for Public-Private Cooperation
Headquarters	Cologny, Switzerland
Region served
	Worldwide
Official language
	English
Executive Chairman
	Klaus Schwab
Website	www.weforum.org Edit this at Wikidata
Formerly called
	European Management Forum

The World Economic Forum (WEF), based in Cologny, Geneva Canton, Switzerland, is an international NGO, founded on 24 January 1971. The WEF's mission is stated as "committed to improving the state of the world by engaging business, political, academic, and other leaders of society to shape global, regional, and industry agendas".[1]

The WEF hosts an annual meeting at the end of January in Davos, a mountain resort in Graubünden, in the eastern Alps region of Switzerland. The meeting brings together some 3,000 business leaders, international political leaders, economists, celebrities and journalists for up to five days to discuss global issues, across 500 sessions.

The organization also convenes some six to eight regional meetings each year in locations across Africa, East Asia, Latin America, and India and holds two further annual meetings in China and the United Arab Emirates. Beside meetings, the organization provides a platform for leaders from all stakeholder groups from around the world – business, government and civil society – to collaborate on multiple projects and initiatives.[2] It also produces a series of reports and engages its members in sector-specific initiatives.[3]

The World Economic Forum and its annual meeting in Davos are criticised regarding the public cost of security, the formation of a wealthy global elite without attachment to the broader societies, undemocratic decision processes, gender issues and a lack of financial transparency.
Contents

    1 History
    2 Organization
        2.1 Board of Trustees
        2.2 Membership
    3 Activities
        3.1 Annual meeting in Davos
            3.1.1 Individual participants
            3.1.2 Corporate participants
        3.2 Summer annual meeting
        3.3 Regional meetings
        3.4 Young Global Leaders
        3.5 Social entrepreneurs
        3.6 Research reports
        3.7 Initiatives
            3.7.1 Health
                3.7.1.1 2020 meeting
            3.7.2 Society
            3.7.3 Environment
                3.7.3.1 Coronavirus and green recovery
        3.8 Global Future Councils
        3.9 Global Shapers Community
        3.10 Future of Work
        3.11 The Great Reset
    4 Criticism
        4.1 Growing wealth gaps
        4.2 Public cost of security
        4.3 Private vs public meetings
        4.4 "Davos Man"
        4.5 Gender debate
        4.6 Undemocratic decision making
        4.7 Lack of financial transparency
    5 See also
    6 References
    7 Sources
    8 External links

History
Professor Klaus Schwab opens the inaugural European Management Forum in Davos in 1971.
F. W. de Klerk and Nelson Mandela shake hands at the annual meeting of the World Economic Forum held in Davos in January 1992
Naoto Kan, then Japanese prime minister gives a special message at the World Economic Forum Annual Meeting 2011
Klaus Schwab, founder and executive chairman, World Economic Forum
The economics expert Prime-Minister Meles Zenawi, being a panelist at World Economic Forum on 2012.

The WEF was founded in 1971 by Klaus Schwab, a business professor at the University of Geneva.[4] First named the European Management Forum, it changed its name to the World Economic Forum in 1987 and sought to broaden its vision to include providing a platform for resolving international conflicts.

In February 1971, Schwab invited 450 executives from Western European firms to the first European Management Symposium held in the Davos Congress Centre under the patronage of the European Commission and European industrial associations, where Schwab sought to introduce European firms to American management practices.[5] He then founded the WEF as a nonprofit organization based in Geneva and drew European business leaders to Davos for the annual meetings each January.[6]

The second European Management Forum, in 1972, was the first meeting at which one of the speakers at the forum was a head of government, President Pierre Werner of Luxembourg.[7]

Events in 1973, including the collapse of the Bretton Woods fixed-exchange rate mechanism and the Yom Kippur War, saw the annual meeting expand its focus from management to economic and social issues, and, for the first time, political leaders were invited to the annual meeting in January 1974.[8]

Political leaders soon began to use the annual meeting as venue for promoting their interests. The Davos Declaration was signed in 1988 by Greece and Turkey, helping them turn back from the brink of war. In 1992, South African President F. W. de Klerk met with Nelson Mandela and Chief Mangosuthu Buthelezi at the annual meeting, their first joint appearance outside South Africa. At the 1994 annual meeting, Israeli Foreign Minister Shimon Peres and PLO chairman Yasser Arafat reached a draft agreement on Gaza and Jericho.[9]

In October 2004, the World Economic Forum gained attention through the resignation of its CEO[10] and executive director José María Figueres over the undeclared receipt of more than US$900,000 in consultancy fees from the French telecommunications firm Alcatel.[11]

In January 2006, the WEF published an article in its Global Agenda magazine titled ”Boycott Israel”, which was distributed to all 2,340 participants of the Annual Meeting.[12] Following the publication, Klaus Schwab described the publication as "an unacceptable failure in the editorial process".[13]

In autumn 2015, the invitation was extended to include a North Korean delegation for the 2016 WEF, "in view of positive signs coming out of the country", the WEF organizers noted. North Korea has not been attending the WEF since 1998. The invitation was accepted.[14] However, WEF revoked the invitation on 13 January 2016, after the 6 January 2016 North Korean nuclear test, and the country's delegation was made to subject to "existing and possible forthcoming sanctions".[15][16] Despite protests by North Korea calling the decision by the WEF managing board a "sudden and irresponsible" move, the WEF committee maintained the exclusion because "under these circumstances there would be no opportunity for international dialogue".[17]

In 2017, the WEF in Davos attracted considerable attention when for the first time, a head of state from the People's Republic of China was present at the alpine resort. With the backdrop of Brexit, an incoming protectionist US administration and significant pressures on free trade zones and trade agreements, Paramount leader Xi Jinping defended the global economic scheme, and portrayed China as a responsible nation and a leader for environmental causes. He sharply rebuked the current populist movements that would introduce tariffs and hinder global commerce, warning that such protectionism could foster isolation and reduced economic opportunity.[18]

In 2018, Indian Prime Minister Narendra Modi gave the plenary speech, becoming the first head of state from India to deliver the inaugural keynote for the annual meet at Davos. Modi highlighted global warming (climate change), terrorism and protectionism as the three major global challenges, and expressed confidence that they can be tackled with collective effort.[19]

In 2019, Brazilian President Jair Bolsonaro gave the keynote address at the plenary session of the conference. On his first international trip to Davos, he emphasized liberal economic policies despite his populist agenda, and attempted to reassure the world that Brazil is a protector of the rain forest while utilizing its resources for food production and export. He stated that "his government will seek to better integrate Brazil into the world by mainstreaming international best practices, such as those adopted and promoted by the OECD".[20] Environmental concerns like extreme weather events, and the failure of climate change mitigation and adaptation were among the top-ranking global risks expressed by WEF attendees.[21]

In 2020, the Swiss police made the public aware that two "Russian spies", one of which was disguised as a plumber, had travelled to Davos with diplomatic passports prior to the Annual Meeting. The Russian Embassy in Bern denied having carried out "preparatory work" for spying on the World Economic Forum.[22][23]

The 2021 World Economic Forum is due to be held from 17 to 20 August in Singapore.[24][25][26]
Organization

Headquartered in Cologny, the WEF also has offices in New York, Beijing and Tokyo. In January 2015, it was designated an NGO with "other international body" status by the Swiss Federal Government under the Swiss Host-State Act.[27]

On October 10, 2016, the WEF announced the opening of its new Center for the Fourth Industrial Revolution in San Francisco. According to the WEF, the center will "serve as a platform for interaction, insight and impact on the scientific and technological changes that are changing the way we live, work and relate to one another".[28]

The World Economic Forum claims to be impartial and that it is not tied to any political, partisan, or national interests. Until 2012, it had observer status with the United Nations Economic and Social Council, when it was revoked; it is under the supervision of the Swiss Federal Council. The foundation's highest governance body is the foundation board.[29]

The Managing Board is chaired by the WEF's President, Børge Brende, and acts as the executive body of the World Economic Forum. Managing Board members are Emma Benameur, Børge Brende, Julien Gattoni, W. Lee Howell, Jeremy Jurgens, Anil Menon, Adrian Monck, Sarita Nayyar, Richard Samans, Olivier M. Schwab, Murat Sönmez, Dominic Kailash Nath Waughray, Saadia Zahidi, Alois Zwinggi.[30]
Recep Tayyip Erdoğan at the World Economic Forum in 2009.
Board of Trustees

The WEF is chaired by Founder and Executive Chairman Professor Klaus Schwab and is guided by a Board of Trustees that is made up of leaders from business, politics, academia and civil society. Members of the Board of Trustees include: Mukesh Ambani, Marc Benioff, Peter Brabeck-Letmathe, Mark Carney, Laurence D. Fink, Chrystia Freeland, Orit Gadiesh, Fabiola Gianotti, Al Gore, Herman Gref, José Ángel Gurría, André Hoffmann, Christine Lagarde, Jack Ma, Yo-Yo Ma, Peter Maurer, Luis Alberto Moreno, Muriel Pénicaud, H.M. Queen Rania Al Abdullah of the Hashemite Kingdom of Jordan, L. Rafael Reif, David M. Rubenstein, Mark Schneider, Klaus Schwab, Tharman Shanmugaratnam, Jim Hagemann Snabe, Feike Sijbesma, Heizo Takenaka, Zhu Min.[31]
Membership

The foundation is funded by its 1,000 member companies, typically global enterprises with more than five billion dollars in turnover (varying by industry and region). These enterprises rank among the top companies within their industry and/or country and play a leading role in shaping the future of their industry and/or region. Membership is stratified by the level of engagement with forum activities, with the level of membership fees increasing as participation in meetings, projects, and initiatives rises.[32] In 2011 an annual membership cost $52,000 for an individual member, $263,000 for "Industry Partner" and $527,000 for "Strategic Partner". An admission fee cost $19,000 per person.[33] In 2014, WEF raised annual fees by 20 percent, bringing the cost for "Strategic Partner" from CHF 500,000 ($523,000) to CHF 600,000 ($628,000).[34]
Activities
Annual meeting in Davos
A sports shop has turned into a temporary informal reception location "Caspian week", WEF 2018.

The flagship event of the World Economic Forum is the invitation-only annual meeting held at the end of January in Davos, Switzerland, bringing together chief executive officers from its 1,000 member companies, as well as selected politicians, representatives from academia, NGOs, religious leaders, and the media in an alpine environment. The winter discussions ostensibly focus around key issues of global concern (such as the globalization, capital markets, wealth management, international conflicts, environmental problems and their possible solutions).[3][35] The participants also take part in role playing events, such as the Investment Heat Map.[36] Informal winter meetings may have led to as many ideas and solutions as the official sessions.[37]

At the 2018 annual meeting, more than 3,000 participants from nearly 110 countries participated in over 400 sessions. Participation included more than 340 public figures, including more than 70 heads of state and government and 45 heads of international organizations; 230 media representatives and almost 40 cultural leaders were represented.[38]

As many as 500 journalists from online, print, radio, and television take part, with access to all sessions in the official program, some of which are also webcast.[39] Not all the journalists are given access to all areas, however. This is reserved for white badge holders. "Davos runs an almost caste-like system of badges", according to BBC journalist Anthony Reuben. "A white badge means you're one of the delegates – you might be the chief executive of a company or the leader of a country (although that would also get you a little holographic sticker to add to your badge), or a senior journalist. An orange badge means you're just a run-of-the-mill working journalist."[40] All plenary debates from the annual meeting also are available on YouTube[41] while photographs are available on Flickr.[42][43]
Overview of past annual meetings
Individual participants
Juan Manuel Santos, President of Colombia, at the 2010 World Economic Forum

Some 3,000 individual participants joined the 2020 annual meeting in Davos. Countries with the most attendees include the United States (674 participants), the United Kingdom (270), Switzerland (159), Germany (137) and India (133).[47] Among the attendees were heads of state or government, cabinet ministers, ambassadors, heads or senior officials of international organizations) attended the annual meeting, including: Sanna Marin (Prime Minister of Finland), Ursula von der Leyen (President of the European Commission), Christine Lagarde (ECB President), Greta Thunberg (climate activist), Ren Zhengfei (Huawei Technologies founder), Kristalina Georgieva (Managing director of the IMF), Deepika Padukone (Bollywood actress), George Soros (investor) and Donald Trump (President of the United States).[48]

An analysis by The Economist from 2014 found that the vast majority of participants are male and more than 50 years old. Business accounts for most of the participants' background (1,595 conference attendees) with the remaining seats shared between government (364), NGOs (246) and press (234). Academia, which had been the basis of the first annual conference in 1971, had been marginalised to the smallest participant group (183 attendees).[49]
Corporate participants

Next to individual participants, the World Economic Forum maintains a dense network of corporate partners that can apply for different partnership ranks within the forum.[50] For 2019, Bloomberg has identified a total of 436 listed corporates that participated in the Annual Meeting while measuring a stock underperformance by the Davos participants of c. -10% versus the S&P 500 during the same year. Drivers are among others an overrepresentation of financial companies and an underrepresentation of fast-growing health care and information technology businesses at the conference.[51] The Economist had found similar results in an earlier study, showing an underperformance of Davos participants against both the MSCI World Index and the S&P 500 between 2009 and 2014.[52]
Summer annual meeting
Wang Jianlin, Chairman of the Dalian Wanda Group, at the 2009 Annual Meeting of the New Champions in Dalian

In 2007, the foundation established the Annual Meeting of the New Champions (also called Summer Davos), held annually in China, alternating between Dalian and Tianjin, bringing together 1,500 participants from what the foundation calls Global Growth Companies, primarily from rapidly growing emerging countries such as China, India, Russia, Mexico, and Brazil, but also including quickly growing companies from developed countries. The meeting also engages with the next generation of global leaders from fast-growing regions and competitive cities, as well as technology pioneers from around the globe.[53][54] The Premier of China has delivered a plenary address at each annual meeting.
Regional meetings
Prithviraj Chavan, Chief Minister of Maharashtra, India; Sudha Pilay, Member-Secretary, Planning Commission, India; and Ben Verwaayen, chief executive officer, Alcatel-Lucent, France were the co-chairs of the India Economic Summit 2011 in Mumbai
Felipe Calderón, President of Mexico, speaking during Latin America Broadens Its Horizons, a session at the 2007 annual meeting of the World Economic Forum

Every year regional meetings take place, enabling close contact among corporate business leaders, local government leaders, and NGOs. Meetings are held in Africa, East Asia, Latin America, and the Middle East. The mix of hosting countries varies from year to year, but consistently China and India have hosted throughout the decade since 2000.[55]
Young Global Leaders

The group of Young Global Leaders[56] consists of 800 people chosen by the WEF organizers as being representative of contemporary leadership, "coming from all regions of the world and representing all stakeholders in society", according to the organization. After five years of participation they are considered alumni.
Social entrepreneurs

Since 2000, the WEF has been promoting models developed by those in close collaboration with the Schwab Foundation for Social Entrepreneurship,[57] highlighting social entrepreneurship as a key element to advance societies and address social problems.[58][59] Selected social entrepreneurs are invited to participate in the foundation's regional meetings and the annual meetings where they may meet chief executives and senior government officials. At the Annual Meeting 2003, for example, Jeroo Billimoria met with Roberto Blois, deputy secretary-general of the International Telecommunication Union, an encounter that produced a key partnership for her organization Child helpline international.[60]
Research reports
Two Academy Award winner, Pakistani journalist Sharmeen Obaid-Chinoy at WEF in 2013

The foundation also acts as a think tank, publishing a wide range of reports. In particular, "Strategic Insight Teams" focus on producing reports of relevance in the fields of competitiveness, global risks, and scenario thinking.
Filipino businessman Jaime Augusto Zobel de Ayala at WEF in 2009

The "Competitiveness Team"[61] produces a range of annual economic reports (first published in brackets): the Global Competitiveness Report (1979) measured competitiveness of countries and economies; The Global Information Technology Report (2001) assessed their competitiveness based on their IT readiness; the Global Gender Gap Report examined critical areas of inequality between men and women; the Global Risks Report (2006) assessed key global risks; the Global Travel and Tourism Report (2007) measured travel and tourism competitiveness; the Financial Development Report (2008)[62] aimed to provide a comprehensive means for countries to establish benchmarks for various aspects of their financial systems and establish priorities for improvement; and the Global Enabling Trade Report (2008) presented a cross-country analysis of the large number of measures facilitating trade among nations.[63]

The "Risk Response Network"[64] produces a yearly report assessing risks which are deemed to be within the scope of these teams, have cross-industry relevance, are uncertain, have the potential to cause upwards of US$10 billion in economic damage, have the potential to cause major human suffering, and which require a multi-stakeholder approach for mitigation.[65]

In 2020, the forum published a report named: "Nature Risk Rising". In this report the forum estimated that approximately half of the global GDP is dependent highly or moderately on nature and 1 dollar spent on nature restoration yields 9 dollars in profit.[66][67]
Initiatives
Health

The Global Health Initiative was launched by Kofi Annan at the annual meeting in 2002. The GHI's mission was to engage businesses in public-private partnerships to tackle HIV/AIDS, tuberculosis, malaria, and health systems.
Mohammad Khatami at Economic Forum in 2004

The Global Education Initiative (GEI), launched during the annual meeting in 2003, brought together international IT companies and governments in Jordan, Egypt, and India[68] that has resulted in new personal computer hardware being available in their classrooms and more local teachers trained in e-learning. The GEI model, which is scalable and sustainable, now is being used as an educational blueprint in other countries including Rwanda.

On 19 January 2017 the Coalition for Epidemic Preparedness Innovations (CEPI), a global initiative to fight epidemics, was launched at WEF in Davos. The internationally funded initiative aims at securing vaccine supplies for global emergencies and pandemics, and to research new vaccines for tropical diseases, that are now more menacing. The project is funded by private and governmental donors, with an initial investment of US$460m from the governments of Germany, Japan and Norway, plus the Bill & Melinda Gates Foundation and the Wellcome Trust.[69]
2020 meeting

Between January 21–24, at the early stages of the COVID-19 outbreak, CEPI met with leaders from Moderna to establish plans for a COVID-19 vaccine at the Davos gathering,[70] with a total global case number of 274 and total loss of life the virus at 16.[71]

The WHO declared a global health emergency 6 days later.[72]
Society

The Water Initiative brings together diverse stakeholders such as Alcan Inc., the Swiss Agency for Development and Cooperation, USAID India, UNDP India, Confederation of Indian Industry (CII), Government of Rajasthan, and the NEPAD Business Foundation to develop public-private partnerships on water management in South Africa and India.

In an effort to combat corruption, the Partnering Against Corruption Initiative (PACI) was launched by CEOs from the engineering and construction, energy and metals, and mining industries at the annual meeting in Davos during January 2004. PACI is a platform for peer exchange on practical experience and dilemma situations. Approximately 140 companies have joined the initiative.[73]
Environment
Further information: Business action on climate change

In the beginning of the 21st century, the forum began to increasingly deal with environmental issues.[74] In the Davos Manifesto 2020 it is said that a company among other:

"acts as a steward of the environmental and material universe for future generations. It consciously protects our biosphere and champions a circular, shared and regenerative economy."

"responsibly manages near-term, medium-term and long-term value creation in pursuit of sustainable shareholder returns that do not sacrifice the future for the present."

"is more than an economic unit generating wealth. It fulfils human and societal aspirations as part of the broader social system. Performance must be measured not only on the return to shareholders, but also on how it achieves its environmental, social and good governance objectives."[75]

The Environmental Initiative covers climate change and water issues. Under the Gleneagles Dialogue on Climate Change, the U.K. government asked the World Economic Forum at the G8 Summit in Gleneagles in 2005 to facilitate a dialogue with the business community to develop recommendations for reducing greenhouse gas emissions. This set of recommendations, endorsed by a global group of CEOs, was presented to leaders ahead of the G8 Summit in Toyako, Hokkaido, Japan held in July 2008.[76][77]

In 2016 WEF published an article in which it is said, that in some cases reducing consumption can increase well-being. In the article is mentioned that in Costa Rica the GDP is 4 times smaller than in many countries in Western Europe and North America, but people live longer and better. An American study shows that those whose income is higher than $75,000, do not necessarily have an increase in well-being. To better measure well-being, the New Economics Foundation's launched the Happy Planet Index.[78]

In January 2017, WEF launched the 'Platform for Accelerating the Circular Economy' (PACE), which is a global public private partnership seeking to scale circular economy innovations.[79][80] PACE is co-chaired by Frans van Houten (CEO of Philips), Naoko Ishii (CEO of the Global Environment Facility, and the head of United Nations Environment Programme (UNEP).[81] The Ellen MacArthur Foundation, the International Resource Panel, Circle Economy and Accenture serve as knowledge partners.

The Forum emphasized its 'Environment and Natural Resource Security Initiative' for the 2017 meeting to achieve inclusive economic growth and sustainable practices for global industries. With increasing limitations on world trade through national interests and trade barriers, the WEF has moved towards a more sensitive and socially-minded approach for global businesses with a focus on the reduction of carbon emissions in China and other large industrial nations.[82]

Also in 2017, WEF launched the Fourth Industrial Revolution (4IR) for the Earth Initiative, a collaboration among WEF, Stanford University and PwC, and funded through the Mava Foundation.[83] In 2018, WEF announced that one project within this initiative was to be the Earth BioGenome Project, the aim of which is to sequence the genomes of every organism on Earth.[84]

The World Economic Forum is working to eliminate plastic pollution, stating that by the year 2050 it will consume 15% of the global carbon budget and will pass by its weight fishes in the world's oceans. One of the methods is to achieve circular economy.[85][86]

The theme of the 2020 World Economic Forum annual meeting was 'Stakeholders for a Cohesive and Sustainable World'. Climate change and sustainability were central themes of discussion. Many argued that GDP is failed to represent correctly the wellbeing and that fossil fuel subsidies should be stopped. Many of the participants said that a better capitalism is needed. Al Gore summarized the ideas in the conference as: "The version of capitalism we have today in our world must be reformed".[87]

In this meeting the World Economic Forum:

    Launched the Trillion Tree Campaign an initiative aiming to "grow, restore and conserve 1 trillion trees over the next 10 years around the world - in a bid to restore biodiversity and help fight climate change". Donald Trump joined the initiative. The forum stated that: "Nature-based solutions – locking-up carbon in the world’s forests, grasslands and wetlands – can provide up to one-third of the emissions reductions required by 2030 to meet the Paris Agreement targets," adding that the rest should come from the heavy industry, finance and transportation sectors. One of the targets is to unify existing reforestation projects[88]
    Discussed the issue of climate change and called to expanding renewable energy, energy efficiency change the patterns of consumption and remove carbon from the atmosphere. The forum claimed that the climate crisis will become a climate apocalypse if the temperature will rise by 2 degrees. The forum called to fulfill the commitments in Paris Agreement. Jennifer Morgan, the executive director of Greenpeace, said that as to the beginning of the forum, fossil fuels still get three times more money than climate solutions.[89]

At the 2021 annual meeting UNFCCC launched the 'UN Race-to-Zero Emissions Breakthroughs'. The aim of the campaign is to transform 20 sectors of the economy in order to achieve zero greenhouse gas emissions. At least 20% of each sector should take specific measures, and 10 sectors should be transformed before COP 26 in Glasgow. According to the organizers, 20% is a tipping point, after which the whole sector begins to irreversibly change.[90][91]
Coronavirus and green recovery

In April 2020, the forum published an article that postulates that the COVID-19 pandemic is linked to the destruction of nature. The number of emerging diseases is rising and this rise is linked to deforestation and species loss. In the article, there are multiple examples of the degradation of ecological systems caused by humans. It is also says that half of the global GDP is moderately or largely dependent on nature. The article concludes that the recovery from the pandemic should be linked to nature recovery.[66]

The forum proposed a plan for a green recovery. The plan includes advancing circular economy. Among the mentioned methods, there is green building, sustainable transport, organic farming, urban open space, renewable energy and electric vehicles.[92]
Global Future Councils

The Network of Global Future Councils meets annually in the United Arab Emirates and virtually several times a year.[93] The second WEF annual meeting was held in Dubai in November 2017, when there were 35 distinct councils focused on a specific issue, industry or technology.[94] In 2017 members met with representatives and partners of WEF's new Center for the Fourth Industrial Revolution.[95] Ideas and proposals are taken forward for further discussion at the World Economic Forum Annual Meeting in Davos-Klosters in January.[94]
Global Shapers Community

The Global Shapers Community, an initiative of World Economic Forum, selects young leaders below 30 years old based on their achievement and potential to be change agents in the world.[96] Global Shapers develop and lead their city-based hubs to implement social justice projects that advance the mission of World Economic Forum.
Future of Work

In regards to the Future of Work, the 2020 WEF set the goal of providing better jobs, access to higher quality education and skills to 1 billion people by 2030.[97]
The Great Reset
Main article: The Great Reset

In May 2020, the WEF and the Prince of Wales's Sustainable Markets Initiative launched "The Great Reset" project, a five-point plan concerned with enhancing sustainable economic growth following the global recession caused by the COVID-19 pandemic lockdowns.[98] "The Great Reset" will be the theme of WEF's Annual Meeting in August 2021.[99]
Criticism
Unbalanced scales.svg
	
This section may lend undue weight to certain ideas, incidents, or controversies. Please help improve it by rewriting it in a balanced fashion that contextualizes different points of view. (November 2020) (Learn how and when to remove this template message)
Protest march against the WEF in Basel, 2006.

During the late 1990s the foundation, along with the G7, World Bank, World Trade Organization, and International Monetary Fund, came under heavy criticism by anti-globalization activists who claimed that capitalism and globalization were increasing poverty and destroying the environment. Ten thousand demonstrators disrupted a regional meeting of the World Economic Forum in Melbourne, obstructing the path of two hundred delegates to the meeting.[100] Small demonstrations are held in Davos on most but not all years, organised by the local Green Party (see Anti-WEF protests in Switzerland, January 2003) to protest against what have been called the meetings of "fat cats in the snow", a tongue-in-cheek term used by rock singer Bono.[101]

After 2014, the protest movement against the World Economic Forum largely died down, and Swiss police noted a significant decline in attending protesters, 20 at most during the meeting in 2016. While protesters are still more numerous in large Swiss cities, the protest movement itself has undergone significant change.[102] Around 150 Tibetans and Uighurs protested in Geneva and 400 Tibetans in Bern against the visit of the China's paramount leader Xi Jinping for the 2017 meeting, with subsequent confrontations and arrests.[103]
Growing wealth gaps

A number of NGOs have used the World Economic Forum to highlight growing inequalities and wealth gaps. Winnie Byanyima, the executive director of the anti-poverty confederation Oxfam International co-chaired the 2015 meeting, where she presented a critical report of global wealth distribution based on statistical research by the Credit Suisse Research Institute. In this study, the richest one percent of people in the world own forty-eight percent of the world's wealth.[104] At the 2019 meeting, she presented another report claiming that the gap between rich and poor has only increased. The report “Public Good or Private Wealth” stated that 2,200 billionaires worldwide saw their wealth grow by 12 percent while the poorest half saw its wealth fall by 11 percent. Oxfam calls for a global tax overhaul to increase and harmonise global tax rates for corporations and wealthy individuals.[105]
Public cost of security

In September 2018, the city of Davos approved by popular vote to increase the security budget for the yearly meeting to CHF 1.125 million. Later that month, the Swiss house of representatives (Nationalrat) also agreed to increase police and military expenditures to CHF 39 million while the Kanton of Graubünden contributes CHF 2.25 million, the same amount the WEF is paying for security costs.[106] The Aargauer Zeitung argued in January 2020 that the actual cost borne by the Kanton Graubünden stand at CHF 9 million per year.[107]
Private vs public meetings

Since the annual meeting in January 2003 in Davos, an Open Forum Davos,[108] which was co-organized by the Federation of Swiss Protestant Churches, is held concurrently with the Davos forum, opening up the debate about globalization to the general public. The Open Forum has been held in the local high school every year, featuring top politicians and business leaders. It is open to all members of the public free of charge.[109][110]
"Davos Man"

"Davos Man" is a neologism referring to the global elite whose members view themselves as completely "international". According to political scientist Samuel P. Huntington, who is credited with inventing the phrase "Davos Man",[111] they are people who "have little need for national loyalty, view national boundaries as obstacles that thankfully are vanishing, and see national governments as residues from the past whose only useful function is to facilitate the élite's global operations". In his 2004 article "Dead Souls: The Denationalization of the American Elite", Huntington argues that this international perspective is a minority elitist position not shared by the nationalist majority of the people.[112]

In 2019, the Manager Magazin journalist Henrik Müller argued that the "Davos Man" had already decayed into different groups and camps. He sees three central drivers for this development:[113]

    Ideologically: the liberal western model is no longer considered a universal role model that other countries strive for (with China's digital totalitarianism or the traditional absolutism in the Persian Gulf as counter-proposals, all of which are represented by government members in Davos).
    Socially: societies increasingly disintegrate into different groups, each of which evokes its own identity (e.g. embodied through the Brexit vote or congressional blockades in the USA).
    Economically: the measured economic reality largely contradicts the established ideas of how the economy should actually work (despite economic upswings, wages and prices e.g. barely rise).

Gender debate
Further information: Gender bias

Since 2011, the World Economic Forum has been addressing its very own gender quota, to introduce at least one woman for every five senior executives that attended. Female participation increased from 9% to 15% between 2001 and 2005. In 2016, 18% of the WEF attendees were female; this number increased to 21% in 2017, and 24% in 2020, five years of growth.[114][115] Several women have since shared their personal impressions of the Davos meetings in media articles, highlighting that issues were more profound than "a quota at Davos for female leaders or a session on diversity and inclusion".[116][117][118] The World Economic Forum has in this context filed legal complaints against at least three investigative articles by reporters Katie Gibbons and Billy Kenber that were published by the British newspaper The Times in March 2020.
Undemocratic decision making

According to the European Parliament's Think Tank, critics see the WEF as an instrument for political and business leaders to "take decisions without having to account to their electorate or shareholders".[119]
Lack of financial transparency
Further information: Financial transparency

In 2017, the former Frankfurter Allgemeine Zeitung journalist Jürgen Dunsch criticized that financial reports of the WEF were not very transparent since neither income nor expenditures were broken down. In addition, he outlined that the foundation capital was not quantified while the apparently not insignificant profits would be reinvested.[120] Recent annual reports published by the WEF include a more detailed breakdown of its financials and indicate revenues of SFr 349 million for the year 2019 with reserves of SFr 310 million and a foundation capital of SFr 34 million. There are no further details provided to what asset classes or individual names the WEF allocates its financial assets of SFr 261 million.[121]
See also

    World Youth Forum
    2009 Davos incident
    Asian Leadership Conference
    Boao Forum for Asia
    Davos process
    Eurofi
    European Business Summit
    International Transport Forum
    Istanbul World Political Forum
    St. Petersburg International Economic Forum
    World Knowledge Forum
    Horasis

References

"World Economic Forum: Our Mission".
"World Economic Forum: Our Platforms".
Pigman. pp. 41–42.
Pigman. pp. 6–22.
"Davos at 50: a timeline of highlights". World Economic Forum. Retrieved 9 February 2021.
Kellerman. p. 229.
"1972s - The Triumph of an Idea - Building an International Organization for Public-Private Cooperation". widgets.weforum.org. Retrieved 9 February 2021.
(registration required) "Interview: Klaus Schwab" Archived 4 June 2009 at the Wayback Machine.Financial Times. 22 January 2008. Retrieved 29 August 2008.
Lowe, Felix (14 January 2008). "WEF and Davos: A Brief History" Archived 3 April 2008 at the Wayback Machine. The Telegraph. Retrieved 25 January 2011.
"CEO resigns".
"WEF director resigns over undeclared fees".
"Scandal At Davos". Fast Company. 26 January 2006.
Nussbaum, Bruce (26 January 2006). "The Scandal at Davos". Bloomberg.
Atkinson, Claire (6 January 2016). "North Korea accepts invite to World Economic Forum". New York Post. Retrieved 13 February 2021.
Keaten Jamey, AP (13 January 2016). "World Economic Forum revokes invitation to North Korea to attend the annual meeting in Davos" Archived 11 October 2016 at the Wayback Machine. U.S. News & World Report. Retrieved 14 January 2016.
"World Economic Forum revokes invite to North Korea for Davos". AP NEWS. Retrieved 13 February 2021.
AFP (15 January 2016). N. Korean fury over 'sinister' WEF Davos forum exclusion Archived 7 October 2016 at the Wayback Machine. The China Post. Retrieved 15 January 2016.
P. S. Goodman (2017). "In Era of Trump, China’s President Champions Economic Globalization". The New York Times (News Analysis). Retrieved 17 January 2017.
Livemint (23 January 2018). "WEF Davos 2018 highlights: Narendra Modi warns of three global threats". livemint.com/. Retrieved 8 February 2018.
Speech by the President of the Republic, Jair Bolsonaro, at the Plenary Session of the World Economic Forum – Davos, Switzerland, January 22, 2019. Brasil. Ministry of Foreign Affairs. Retrieved 22 January 2019.
Taylor, Chloe (Jan 2019). Global tension is hampering our ability to fight climate change, Davos survey warns CNBC. Retrieved 22 January 2019.
"Swiss police 'exposed Russian spies in Davos'".
"Swiss police found 'Russian spies' in Davos last year".
Allassan, Fadel. "2021 World Economic Forum to be held in Singapore instead of Davos". Axios. Retrieved 11 December 2020.
"Special Annual Meeting 2021 to Take Place in Singapore in May".
"World Economic Forum in Singapore postponed from May to Aug 17-20".
"Press Release: World Economic Forum Gains Formal Status in Switzerland". 23 January 2015.
"New Forum Center to Advance Global Cooperation on Fourth Industrial Revolution". World Economic Forum. Retrieved 20 November 2016.
"The Leadership Team | World Economic Forum-The Leadership Team". Weforum.org. Retrieved 22 January 2012.
"World Economic Forum, Governance and Leadership". Retrieved 20 November 2011.
"World Economic Forum, Leadership and Governance". Retrieved 20 November 2019.
"Members | World Economic Forum-Members". Weforum.org. Retrieved 22 January 2012.
"The Truth About Davos: Here's Why People Happily Pay $71,000+ To Come – And Why They'll Keep Paying More Every Year". Business Insider. 26 January 2011.
"Sky-high Davos summit fees leave multinationals feeling deflated". The Financial Times. 10 October 2014.
"Q&A: World Economic Forum 2009" Archived 23 September 2016 at the Wayback Machine BBC News. Retrieved 25 January 2011.
Madslien, Jorn (26 January 2013). "Q&A: World Economic Forum 2009". BBC News. Archived from the original on 4 January 2016. Retrieved 2015-02-23. Madslien, Jorn BBC News – Davos Man eyes investment opportunities
Weber, Tim (26 January 2010). "A Beginners' Guide to Davos" Archived 23 September 2016 at the Wayback Machine BBC News. Retrieved 25 January 2011.
"Forum Closes with Call to Action: Globalize Compassion and Leave No One Behind". 26 January 2018. Retrieved 16 October 2018.
"Forum's homepage". Weforum.org. Retrieved 7 March 2010.[permanent dead link]
Reuben, Anthony (27 January 2013). "My first Davos - what I learned". BBC News. Archived from the original on 4 January 2016. Retrieved 2015-06-08. My first Davos – what I learned
"Kanaal van WorldEconomicForum". YouTube. 31 January 2010. Retrieved 7 March 2010.
"World Economic Forum's Photostream". Flickr. Retrieved 7 March 2010.
"48TH WORLD ECONOMIC FORUM ANNUAL MEETING". World Economic Forum. Retrieved 22 January 2018.
Howe, Dave (9 August 2009). "Creativity Can Save the World". HuffPost. Retrieved 17 June 2019.
founder Klaus Schwab's declaration that "the need for global cooperation has never been greater".
"Economic, Financial and Banking Awareness 10 November 2019". PendulumEdu. PendulumEdu. 10 November 2019.
"World Economic Forum - Who's Going to Davos?". Retrieved 28 June 2020.
"Here's who's going to Davos this year". Retrieved 28 June 2020.
"The data of Davos - Who's on the Magic Mountain?". Retrieved 28 June 2020.
"World Economic Forum: Our Members and Partners".
van der Walt, Eddie. "Davos's Global Elite Are Laggards in Stock-Market Performance".
"The data of Davos: Who's on the Magic Mountain?".
"World Economic Forum: The Inaugural Annual Meeting of the New Champions". China.org. Retrieved 29 August 2008.
"Summer Davos To Put Dalian on Business Map". China Daily (via People's Daily). 1 August 2007. Retrieved 25 January 2011.
"World Economic Forum – Events". Weforum.org. World Economic Forum. Archived from the original on 9 January 2009. Retrieved 7 March 2010.
"Forum of Young global Leaders". Weforum.org. World Economic Forum. Retrieved 5 April 2013.
"Schwab Foundation for Social Entrepreneurship – Home". Schwabfound.org. Retrieved 7 March 2010.
Fruchterman, Jim (31 January 2005). "Davos Diary: Meetings of Minds" Archived 23 September 2016 at the Wayback Machine BBC News. Retrieved 25 January 2011.
Moore. p. 209.
Bornstein. p. 272.
"Issues | World Economic Forum-Issues". Weforum.org. World Economic Forum. Archived from the original on 1 December 2010. Retrieved 29 November 2011.
"WEF – Financial Development Report". World Economic Forum. Archived from the original on 18 August 2013.
Pigman. pp. 43, 92–112.
"Global Risks | World Economic Forum-Global Risks". Weforum.org. World Economic Forum. Archived from the original on 1 December 2010. Retrieved 29 November 2011.
Global Risk Report 2009 Archived 25 February 2009 at the Wayback Machine World Economic Forum.
Quinney, Marie. "COVID-19 and nature are linked. So should be the recovery". World Economic Forum. Retrieved 19 April 2020.
WEF New Nature Economy Report 2020 (PDF). Word Economic Forum. January 2020. Retrieved 19 July 2020.
India Brand Equity Foundation. "India Adda World Economic Forum at Davos" Archived 21 February 2014 at the Wayback Machine 2012.
D. G. McNeil Jr (2017). Donors and Drug Makers Offer $500 Million to Control Global Epidemics. The New York Times. Retrieved 20 January 2017.
"What we know about the Wuhan coronavirus and urgent plans to develop a vaccine for it". World Economic Forum. Retrieved 9 September 2020.
"WHO Coronavirus Disease (COVID-19) Dashboard". covid19.who.int. Retrieved 9 September 2020.
"WHO declares coronavirus outbreak a global health emergency". STAT. 30 January 2020. Retrieved 9 September 2020.
Pigman. p. 115.
"Environment and Natural Resource Security". World Economic Forum. World Economic Forum. Retrieved 3 May 2020.
Schwab, Klaus. "Davos Manifesto 2020: The Universal Purpose of a Company in the Fourth Industrial Revolution". World Economic Forum. World Economic Forum. Retrieved 3 May 2020.
Black, Richard (20 June 2008). "Business Chiefs Urge Carbon Curbs" Archived 23 September 2016 at the Wayback Machine BBC News. Retrieved 25 January 2011.
Szabo, Michael (19 June 2008). "Business Chiefs Call for G8 Climate Leadership" Archived 31 January 2009 at the Wayback Machine Reuters. Retrieved 25 January 2011.
Belton, Teresa. "Why becoming a 'happily modest consumer' could help save the planet". World Economic Forum. Retrieved 24 May 2020.
"Circular Economy". World Economic Forum.
"TopLink". toplink.weforum.org.
"Platform for Accelerating the Circular Economy". Platform for Accelerating the Circular Economy.
Shaping the Future of Environment and Natural Resource Security The World Economic Forum Davos 2017. Retrieved 16 January 2017.
"New global initiative will help harness 4IR technologies tackle environmental issues". Waterbriefing. 21 September 2017. Retrieved 26 January 2018.
Casey, JP (25 January 2018). "Project to sequence all genomes on Earth to begin in Amazon rainforest". Drug Development Technology. Retrieved 26 January 2018.
Hughes, Kristin. "3 ways we are making an impact on plastic pollution". World Economic Forum. World Economic Forum. Retrieved 3 May 2020.
Rooney, Katharine. "The story of two brothers who travelled through a river of trash and inspired a nation". World Economic Forum. World Economic Forum. Retrieved 3 May 2020.
Worland, Justin (27 January 2020). "How Davos Became a Climate Change Conference". Times. Retrieved 31 January 2020.
Pomeroy, Robin. "One trillion trees - World Economic Forum launches plan to help nature and the climate". World Economic Forum. Retrieved 12 March 2020.
Pomeroy, Robin. "What you need to know about Davos 2020: How to save the planet". World Economic Forum. World Economic Forum. Retrieved 3 May 2020.
"Launch of UN Race-to-Zero Emissions Breakthroughs". United Nations Climate Change. United Nations. Retrieved 21 February 2021.
"Transforming our systems together" (PDF). Race-to-Zero-Breakthroughs. United Nations. Retrieved 21 February 2021.
Bleischwitz, Raimund. "COVID-19: 5 ways to create a green recovery". World Economic Forum. Retrieved 19 July 2020.
"Global Future Councils". World Economic Forum. Retrieved 11 June 2018.
"Dubai to host second WEF annual meeting of Global Future Councils". Al Arabiya English. 11 October 2017. Retrieved 11 June 2018.
"Home, Centre for the Fourth Industrial Revolution". Centre for the Fourth Industrial Revolution. World Economic Forum. Retrieved 11 June 2018.
"Global Shapers". Global Shapers. Retrieved 26 December 2020.
Jesuthasan, Ravin. "Reflections On The 2020 World Economic Forum Annual Meeting In Davos". Forbes. Retrieved 21 July 2020.
Inman, Phillip (3 June 2020). "Pandemic is chance to reset global economy, says Prince Charles". The Guardian. Retrieved 3 June 2020.
'The Great Reset: A Unique Twin Summit to Begin 2021', website WEF, 3 June 2020.
Barret, Bernard (15 November 2000). "Beating Up – A Report on Police Batons and the News Media at the World Economic Forum, Melbourne, September 2000" Archived 26 September 2011 at the Wayback Machine. [Australian Politics]. Retrieved 24 August 2011.
Noon, Chris (21 January 2006). "Bono Teams Up With Amex, Gap For Product Red" Archived 8 September 2008 at the Wayback Machine. Forbes. Retrieved 25 January 2011.
C. Thumshirn (2017). Warum das WEF keine Demonstranten mehr anlockt(in German). Neue Zürcher Zeitung. Retrieved 17 January 2017.
Tibetans and Uighurs protest in Geneva. SWI swissinfo.ch (Politics-Conflict). Retrieved 22 January 2017.
Vara, Vauhini (January 2015). Critics of Oxfam’s Poverty Statistics Are Missing the Point. The New Yorker. Retrieved 27 January 2019.
Taylor, Chloe (January 2019). Richest 26 people now own same wealth as poorest half of the world, Oxfam claims cnbc.com. Retrieved 27 January 2019.
Davos stimmt ab - Mehr Geld für das WEF(in German) SRF.ch. Retrieved 23 January 2019.
Fluri, Lucien. "Das reiche WEF wälzt Kosten für die Sicherheit auf Bund und Kantone ab – das stösst auf Kritik".
"Open Forum Davos, Schweizerischer Evangelischer Kirchenbund". Openforumdavos.ch. Archived from the original on 2 February 2010. Retrieved 7 March 2010.
Pigman. p. 130.
"Open Forum". YouTube. Retrieved 7 March 2010.
Timothy Garton Ash. Davos man's death wish Archived 21 August 2008 at the Wayback Machine, The Guardian, 3 February 2005
Samuel Huntington. "Dead Souls: The Denationalization of the American Elite" Archived 14 September 2016 at the Wayback Machine, The National Interest, Spring 2004
Müller, Henrik. ""Davos Man" and his successors".
A. Gibbs (2017). As world leaders descend upon Davos, the gender debate rumbles on CNBC News. Retrieved 17 January 2017.
A. Gibbs (2017). The percentage of women at Davos is greater than ever before Quartz. Retrieved 19 November 2019.
BuzzFeedNews, Retrieved 19 May 2020. What It's Like To Be A Woman At The Old Boys Economic Forum [1]
'Horizontal trade' looks to upswing at Davos meet, The Local, Retrieved 19 May 2020. [2]
Davos: Impressions of a First-Time Attendee, The Journal Blog, Retrieved 19 May 2020.[3]
"The World Economic Forum: Influential and controversial". European Parliament Think Tank. 19 January 2016. Retrieved 19 May 2020.
Busse, Caspar. "Weltwirtschaftsforum ist zu einer Geldmaschine geworden". Süddeutsche.de.

    http://www3.weforum.org/docs/WEF_Annual_Report_18-19.pdf

Sources

    Bornstein, David (2007). How to Change the World – Social Entrepreneurs and the Power of New Ideas. Oxford University Press (New York City). ISBN 978-0-19-533476-0. 358 pages.
    Kellerman, Barbara (1999). Reinventing Leadership – Making the Connection Between Politics and Business. State University of New York Press (Albany, New York). ISBN 978-0-7914-4071-1. 268 pages.
    Moore, Mike (2003). A World Without Walls – Freedom, Development, Free Trade and Global Governance. Cambridge University Press (Cambridge, England; New York City). ISBN 978-0-521-82701-0. 292 pages.
    Pigman, Geoffrey Allen (2007). The World Economic Forum – A Multi-Stakeholder Approach to Global Governance. Routledge (London, England; New York City). ISBN 978-0-415-70204-1. 175 pages.
    Rothkopf, David J. (2008). Superclass – The Global Power Elite and the World They Are Making. Farrar, Straus and Giroux (New York City). ISBN 978-0-374-27210-4. 376 pages.
    Schwab, Klaus M.; Kroos, Hein (1971). Moderne Unternehmensführung im Maschinenbau. Verein Dt. Maschinenbau-Anst. e.V.. Maschinenbau-Verl (Frankfurt om Main, Germany). OCLC 256314575.
    Wolf, Michael (1999). The Entertainment Economy – How Mega-Media Forces Are Transforming Our Lives. Random House (New York City). ISBN 978-0-8129-3042-9. 336 pages.
    "Behind the Scenes at Davos" broadcast 14 February 2010 on 60 Minutes
    ´How to Open the World Economic Forum´ – Matthias Lüfkens in Interview with 99FACES.tv
    "Everybody’s Business: Strengthening International Cooperation in a More Interdependent World" launched May 2010, Doha, Qatar

External links
	Wikimedia Commons has media related to World Economic Forum.
Listen to this article (20 minutes)
Menu
0:00
Spoken Wikipedia icon
This audio file was created from a revision of this article dated 29 January 2016, and does not reflect subsequent edits.
(Audio help · More spoken articles)

    Official website Edit this at Wikidata

Authority control Edit this at Wikidata	

    BNF: cb135577692 (data) GND: 46147-7 ISNI: 0000 0004 0508 3220 LCCN: n85140903 MA: 79085458 NKC: kn20040206003 SUDOC: 052489361 VIAF: 128426704 WorldCat Identities: lccn-n85140903

    Emblem-money.svgBusiness and economics portalFlag of Switzerland.svgSwitzerland portalA coloured voting box.svgPolitics portal

Categories:

    1971 in economics1971 establishments in SwitzerlandAdvocacy groupsDavosFoundations based in SwitzerlandOrganisations based in GenevaOrganizations established in 1971Global economic conferencesOrganizations with general consultative status to the United Nations Economic and Social CouncilLobbying organizations

Navigation menu

    Not logged in
    Talk
    Contributions
    Create account
    Log in

    Article
    Talk

    Read
    Edit
    View history

Search

    Main page
    Contents
    Current events
    Random article
    About Wikipedia
    Contact us
    Donate

Contribute

    Help
    Learn to edit
    Community portal
    Recent changes
    Upload file

Tools

    What links here
    Related changes
    Special pages
    Permanent link
    Page information
    Cite this page
    Wikidata item

Print/export

    Download as PDF
    Printable version

In other projects

    Wikimedia Commons
    Wikinews

Languages

    Alemannisch
    Deutsch
    Español
    Français
    हिन्दी
    Italiano
    Português
    Rumantsch
    中文

Edit links

    This page was last edited on 18 May 2021, at 04:27 (UTC).
    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

    Privacy policy
    About Wikipedia
    Disclaimers
    Contact Wikipedia
    Mobile view
    Developers
    Statistics
    Cookie statement

    Wikimedia Foundation
    Powered by MediaWiki